[COMMON] touchscreen: synaptics: Add synaptics touch screen code
authorJaehyoung Choi <jkkkkk.choi@samsung.com>
Fri, 15 Sep 2017 00:56:20 +0000 (09:56 +0900)
committerJaehyoung Choi <jkkkkk.choi@samsung.com>
Tue, 15 May 2018 05:58:01 +0000 (14:58 +0900)
Change-Id: I1b8d96fb7513ba7c089a05fdeeb986b2dbd757f9
Signed-off-by: Jaehyoung Choi <jkkkkk.choi@samsung.com>
24 files changed:
drivers/input/touchscreen/synaptics_dsx/Kconfig [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Makefile [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GBuild.h [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvBrane.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvCommon.h [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.h [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/GSystem.h [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/Multiverse/Makefile [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/rmi_db.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/rmi_dev.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/rmi_f54.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/rmi_fw_update.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/rmi_guest.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.c [new file with mode: 0644]
drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.h [new file with mode: 0644]
firmware/Makefile
firmware/tsp_synaptics/synaptics_b0_fac.fw.ihex [new file with mode: 0644]
firmware/tsp_synaptics/synaptics_b0_h.fw.ihex [new file with mode: 0644]
firmware/tsp_synaptics/synaptics_s5100_a2_k.fw.ihex [new file with mode: 0644]
firmware/tsp_synaptics/synaptics_s5100_a2_k_FHD.fw.ihex [new file with mode: 0644]
firmware/tsp_synaptics/synaptics_s5100_a2_k_WQHD.fw.ihex [new file with mode: 0644]
firmware/tsp_synaptics/synaptics_s5100_a3_k_FHD.fw.ihex [new file with mode: 0644]
include/linux/i2c/synaptics_rmi.h [new file with mode: 0644]

diff --git a/drivers/input/touchscreen/synaptics_dsx/Kconfig b/drivers/input/touchscreen/synaptics_dsx/Kconfig
new file mode 100644 (file)
index 0000000..695d5a9
--- /dev/null
@@ -0,0 +1,9 @@
+#
+# SYNAPTICS TOUCH driver configuration
+#
+
+config TOUCHSCREEN_SYNAPTICS_I2C_DSX
+       tristate "Synaptics DSX i2c touchscreen"
+       depends on I2C
+       help
+         This enables support for Synaptics DSX over I2C based touchscreens.
diff --git a/drivers/input/touchscreen/synaptics_dsx/Makefile b/drivers/input/touchscreen/synaptics_dsx/Makefile
new file mode 100644 (file)
index 0000000..c9ea560
--- /dev/null
@@ -0,0 +1 @@
+obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_DSX)    += synaptics_i2c_rmi.o rmi_dev.o rmi_fw_update.o rmi_f54.o
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GBuild.h b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GBuild.h
new file mode 100644 (file)
index 0000000..46f4bf4
--- /dev/null
@@ -0,0 +1,21 @@
+#pragma once
+
+///////////////////////////////////////////////////////////////////////////////////
+// GBuild.h
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+#define DG_PROJECT_BRANE
+#define DG_PROJECT_NAME _T("Brane")
+#define DG_PROJECT_BUILD_NUM 1
+#define DG_PRODUCT_K
+#define DG_SOC_SEC
+#define DG_CPU_ISA_ARMV7
+#define DG_CPU_LITTLE_ENDIAN
+#define DG_CPU_SIMD_NONE
+#define DG_TSP_IC_SYNAPTICS
+#define DG_KERNEL_LINUX
+#define DG_PLATFORM_LINUX_KERNEL
+#define DG_SPL_C_FIXED_POINT
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvBrane.c b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvBrane.c
new file mode 100644 (file)
index 0000000..094b73c
--- /dev/null
@@ -0,0 +1,728 @@
+///////////////////////////////////////////////////////////////////////////////////
+// GMvBrane.c
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+// ! include
+#include "GMvSystem.h"
+
+// ! struct
+#if 0//DG_MV_BRANE_BUFFER_MMAP_ENABLE
+struct bin_buffer // from fs/sysfs/bin.c
+{
+       struct mutex                    mutex;
+       void                            *buffer;
+       int                             mmapped;
+       const struct vm_operations_struct *vm_ops;
+       struct file                     *file;
+       struct hlist_node               list;
+};
+#endif
+
+struct CGMvBrane
+{
+       struct mutex m_sPublicMutex;
+
+       // Brane Thread
+       struct mutex m_sBtMutex;
+       struct task_struct *m_psBtTask;
+       sint32 m_s32BtRun;
+       struct semaphore m_sBtSema;
+
+       // Brane Buffer
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+       struct mutex m_sBbMutex;
+#if DG_MV_BRANE_SIGACTION_ENABLE
+       struct siginfo m_sBbSi;
+#endif
+       sint32 m_s32BbMvPid;
+       struct pid *m_psBbPid;
+       struct task_struct *m_psBbTask;
+       //struct bin_buffer *m_psBbBb;
+       struct SGMvBraneBufInfo *m_psBbi;
+       uint8 *m_pu8Bb;
+#if DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+       sint32 m_s32BbInterceptedSize;
+       uint8 *m_pu8BbIntercepted;
+#endif
+#else
+       uint8 m_pu8Bb[DG_KERNEL_PAGE_SIZE];
+#endif
+
+       // Multiverse Packet
+       EG_MV_PKT_ARG_BASIC m_ePktAck;
+       uint8 m_pu8PktRxBuf[DG_MV_PKT_MAX_SIZE];
+};
+
+// ! extern
+#if !defined( DG_SOC_SEC )
+extern struct class *sec_class;
+#endif
+
+// ! Prototype
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+static ssize_t SGMvBraneWrite( struct file*, struct kobject*, struct bin_attribute*, char*, loff_t, size_t );
+static ssize_t SGMvBraneMmap( struct file*, struct kobject*, struct bin_attribute*, struct vm_area_struct* );
+static void SGMvBraneMmapOpen( struct vm_area_struct* );
+#else
+static ssize_t SGMvBraneRead( struct device*, struct device_attribute*, char* );
+static ssize_t SGMvBraneWrite( struct device*, struct device_attribute*, const char*, size_t );
+#endif
+static sint32 SGMvBraneSendPacket( uint8*, sint32, sint32 );
+static sint32 SGMvBraneSendPacket2( EG_MV_PKT_ID, uint16, sint32 );
+
+// ! Global Variable
+static struct device *sg_psMvDev = NULL;
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+static struct bin_attribute dev_attr_Brane =
+{
+       .attr =
+       {
+               .name = "Brane",
+               .mode = 00600,
+       },
+       .size = PAGE_SIZE,
+       .write = SGMvBraneWrite,
+       .mmap = SGMvBraneMmap,
+};
+static struct vm_operations_struct sg_sVmOps =
+{
+       .open = SGMvBraneMmapOpen,
+};
+#else
+static DEVICE_ATTR( Brane, 00600, SGMvBraneRead, SGMvBraneWrite );
+#endif
+
+static struct CGMvBrane sg_cMb;
+
+// ! System Call
+#if !DG_MV_BRANE_BUFFER_MMAP_ENABLE
+static ssize_t SGMvBraneRead( struct device *psDev, struct device_attribute *psDevAttr, char *ps8Buf )
+{
+       sint32 s32Read;
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+       if( sg_cMb.m_s32BbPosR )
+       {
+               memcpy( ps8Buf, sg_cMb.m_pu8Bb, sg_cMb.m_s32BbPosR );
+               s32Read = sg_cMb.m_s32BbPosR;
+               sg_cMb.m_s32BbPosR = 0;
+       }
+       else
+               s32Read = 0;
+
+LG_UNLOCK_AND_RETURN:
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+       return s32Read;
+}
+#endif
+
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+static ssize_t SGMvBraneWrite( struct file *psFile, struct kobject *psKObj, struct bin_attribute *psBinAttr, char *ps8Buf, loff_t tOffset, size_t tCount )
+#else
+static ssize_t SGMvBraneWrite( struct device *psDev, struct device_attribute *psDevAttr, const char *ps8Buf, size_t tCount )
+#endif
+{
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+       struct SGMvPktHdr *psPktHdr;
+#endif
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+       psPktHdr = (struct SGMvPktHdr*)ps8Buf;
+       switch( psPktHdr->u8PktId )
+       {
+       case EG_MV_PKT_ID_BRANE:
+               {
+                       switch( psPktHdr->u16Arg )
+                       {
+                       case EG_MV_PKT_ARG_BRANE_OPEN:
+                               SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_RESET, 0 );
+
+                               mutex_lock( &sg_cMb.m_sBbMutex );
+                               sg_cMb.m_s32BbMvPid = *(sint32*)&ps8Buf[sizeof( struct SGMvPktHdr )];
+                               rcu_read_lock();
+#if 1
+                               sg_cMb.m_psBbPid = find_get_pid( sg_cMb.m_s32BbMvPid );
+                               sg_cMb.m_psBbTask = pid_task( sg_cMb.m_psBbPid, PIDTYPE_PID );
+#else
+                               sg_cMb.m_psBbTask = find_task_by_vpid( sg_cMb.m_s32BbMvPid );
+#endif
+                               rcu_read_unlock();
+#if DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+                               if( sg_cMb.m_pu8BbIntercepted )
+                                       kfree( sg_cMb.m_pu8BbIntercepted );
+                               sg_cMb.m_s32BbInterceptedSize = *(sint32*)&ps8Buf[sizeof( struct SGMvPktHdr ) + sizeof( sint32 )];
+                               sg_cMb.m_pu8BbIntercepted = kmalloc( sg_cMb.m_s32BbInterceptedSize, GFP_KERNEL );
+                               //DG_DBG_PRINT_INFOX( _T("INTERCEPT - %ld, 0x%08X"), sg_cMb.m_s32BbInterceptedSize, (unsigned int)sg_cMb.m_pu8BbIntercepted );
+#endif
+                               mutex_unlock( &sg_cMb.m_sBbMutex );
+                               break;
+
+                       case EG_MV_PKT_ARG_BRANE_CLOSE:
+                               SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_RESET, 0 );
+
+                               mutex_lock( &sg_cMb.m_sBbMutex );
+                               sg_cMb.m_s32BbMvPid = DG_NONE;
+                               sg_cMb.m_psBbPid = NULL;
+                               sg_cMb.m_psBbTask = NULL;
+                               //sg_cMb.m_psBbBb = NULL;
+                               sg_cMb.m_psBbi = NULL;
+                               sg_cMb.m_pu8Bb = NULL;
+                               mutex_unlock( &sg_cMb.m_sBbMutex );
+                               break;
+
+                       default:
+                               break;
+                       }
+               }
+               break;
+       default:
+               tCount = SGMvBraneSendPacket( (uint8*)ps8Buf, tCount, 0 );
+               break;
+       }
+#else
+       tCount = SGMvBraneSendPacket( (uint8*)ps8Buf, tCount, 0 );
+#endif
+
+//LG_UNLOCK_AND_RETURN:
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+       return tCount;
+}
+
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+static int SGMvBraneMmap( struct file *psFile, struct kobject *psKObj, struct bin_attribute *psBinAttr, struct vm_area_struct *psVma )
+{
+       int s32Rst;
+       uint32 u32PageOffset;
+       //struct bin_buffer *psBb;
+//DG_DBG_PRINT_INFO( "0" );
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+mutex_lock( &sg_cMb.m_sBbMutex ); // goto LG_UNLOCK_AND_RETURN;
+//down_read( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic!
+//down_wrtie( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic!
+
+       s32Rst = 0;
+
+#if DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+       DG_SAFE_IS_ZERO( sg_cMb.m_pu8BbIntercepted, DG_DBG_PRINT_ERROR( _T("m_pu8BbIntercepted == NULL") ); s32Rst = -EAGAIN; goto LG_UNLOCK_AND_RETURN );
+
+       //psBb = (struct bin_buffer*)psFile->private_data;
+       u32PageOffset = page_to_pfn( virt_to_page( sg_cMb.m_pu8BbIntercepted ) );
+       psVma->vm_ops = &sg_sVmOps;
+       psVma->vm_flags |= VM_RESERVED;
+       psVma->vm_pgoff = u32PageOffset;
+       psVma->vm_private_data = psFile->private_data;
+       if( remap_pfn_range( psVma, psVma->vm_start,  psVma->vm_pgoff, psVma->vm_end - psVma->vm_start, psVma->vm_page_prot ) )
+       {
+               DG_DBG_PRINT_ERROR( _T("Failed remap_pfn_range()") );
+               s32Rst = -EAGAIN;
+               goto LG_UNLOCK_AND_RETURN;
+       }
+
+       //sg_cMb.m_psBbBb = psBb;
+       sg_cMb.m_pu8Bb = sg_cMb.m_pu8BbIntercepted;
+       sg_cMb.m_psBbi = (struct SGMvBraneBufInfo*)&sg_cMb.m_pu8Bb[sg_cMb.m_s32BbInterceptedSize - sizeof( struct SGMvBraneBufInfo )];
+       memset( sg_cMb.m_psBbi, 0, sizeof( struct SGMvBraneBufInfo ) );
+       sg_cMb.m_psBbi->u16TotalSize = sg_cMb.m_s32BbInterceptedSize;
+#else
+       //psBb = (struct bin_buffer*)psFile->private_data;
+       u32PageOffset = page_to_pfn( virt_to_page( psBb->buffer ) );
+       psVma->vm_ops = &sg_sVmOps;
+       psVma->vm_flags |= VM_RESERVED;
+       psVma->vm_pgoff = u32PageOffset;
+       psVma->vm_private_data = psFile->private_data;
+       if( remap_pfn_range( psVma, psVma->vm_start,  psVma->vm_pgoff, psVma->vm_end - psVma->vm_start, psVma->vm_page_prot ) )
+       {
+               DG_DBG_PRINT_ERROR( _T("Failed remap_pfn_range()") );
+               s32Rst = -EAGAIN;
+               goto LG_UNLOCK_AND_RETURN;
+       }
+
+       //sg_cMb.m_psBbBb = psBb;
+       sg_cMb.m_pu8Bb = (uint8*)psBb->buffer;
+       sg_cMb.m_psBbi = (struct SGMvBraneBufInfo*)&sg_cMb.m_pu8Bb[DG_KERNEL_PAGE_SIZE - sizeof( struct SGMvBraneBufInfo )];
+       memset( sg_cMb.m_psBbi, 0, sizeof( struct SGMvBraneBufInfo ) );
+       sg_cMb.m_psBbi->u16TotalSize = DG_KERNEL_PAGE_SIZE;
+#endif
+
+LG_UNLOCK_AND_RETURN:
+//up_wrtie( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic!
+//up_read( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic!
+mutex_unlock( &sg_cMb.m_sBbMutex );
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+//DG_DBG_PRINT_INFO( "1" );
+       return s32Rst;
+}
+
+static void SGMvBraneMmapOpen( struct vm_area_struct *psVma )
+{
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+//LG_UNLOCK_AND_RETURN:
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+}
+#endif
+
+// Multiverse Packet
+static void SGMvBraneCheckAck( struct SGMvPktHdr *psPktHdr )
+{
+       sg_cMb.m_ePktAck = (EG_MV_PKT_ARG_BASIC)psPktHdr->u16Arg;
+}
+
+static void SGMvBraneMuxData( struct SGMvPktHdr *psPktHdr )
+{
+       uint8 *pu8Cur;
+       uint16 u16PktSize;
+       struct SGMvBraneBufInfo *psBbi;
+       sint32 s32HdrSize, s32PldSize, s32BufSize, s32WriteSize, s32WritableSizeLinear, s32WritableSize;
+
+mutex_lock( &sg_cMb.m_sBbMutex ); // goto LG_ERROR, LG_UNLOCK_AND_RETURN;
+       DG_SAFE_GET_POINTER( psBbi, sg_cMb.m_psBbi, goto LG_ERROR );
+       DG_SAFE_IS_ZERO( pid_task( sg_cMb.m_psBbPid, PIDTYPE_PID ), goto LG_ERROR );
+#if !DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+// !. Let LMK wait this operation
+//down_write( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic
+mutex_lock( &sg_cMb.m_psBbBb->file->f_path.dentry->d_inode->i_mapping->i_mmap_mutex ); // Lock 'unmap_mapping_range()' in 'unmap_bin_file()' in fs/sysfs/bin.c
+mutex_lock( &sg_cMb.m_psBbBb->mutex ); // goto LG_UNLOCK_AND_RETURN;
+#endif
+
+       //
+       s32HdrSize = sizeof( struct SGMvPktHdr ) + DG_MV_PKT_PARITY_SIZE_HEADER;
+#if defined( DG_MV_PKT_PARITY_RS_10_6 )
+       s32PldSize = psPktHdr->u16PldSize + GMvRsCalculateOverheadSize( psPktHdr->u16PldSize );
+#else
+       s32PldSize = psPktHdr->u16PldSize + DG_MV_PKT_PARITY_SIZE_HEADER;
+#endif
+       DG_SAFE_IS_GREATER( s32PldSize, sizeof( sg_cMb.m_pu8PktRxBuf ) - s32HdrSize, DG_DBG_PRINT_ERRORX( _T("s32PldSize(=%ld) is too big!"), s32PldSize ); goto LG_UNLOCK_AND_RETURN );
+       GMvGtReadI2cRegister( DG_MV_I2C_REG_PKT_PAYLOAD_RX, &sg_cMb.m_pu8PktRxBuf[s32HdrSize], s32PldSize );
+
+       //
+       u16PktSize = s32HdrSize + s32PldSize;
+       s32BufSize = psBbi->u16TotalSize - sizeof( struct SGMvBraneBufInfo );
+       s32WriteSize = 2 + u16PktSize;
+       if( psBbi->u16WPos < psBbi->u16RPos )
+       {
+               s32WritableSizeLinear = psBbi->u16RPos - psBbi->u16WPos;
+               s32WritableSize = s32WritableSizeLinear;
+       }
+       else
+       {
+               s32WritableSizeLinear = s32BufSize - psBbi->u16WPos;
+               s32WritableSize = s32WritableSizeLinear + psBbi->u16RPos;
+       }
+       DG_SAFE_IS_GREATER( s32WriteSize, s32WritableSize, DG_DBG_PRINT_ERRORX( _T("Overflow or Wrong I2C? - %ld, %ld"), s32WriteSize, s32WritableSize ); goto /*LG_UNLOCK_AND_RETURN*/LG_ERROR ); // let multiverse be faster?
+
+       //
+       pu8Cur = &sg_cMb.m_pu8Bb[psBbi->u16WPos];
+       if( s32WriteSize > s32WritableSizeLinear )
+       {
+               switch( s32WritableSizeLinear )
+               {
+               case 0: // psBbi->u16WPos == s32BufSize
+                       pu8Cur = sg_cMb.m_pu8Bb;
+                       *(uint16*)pu8Cur = u16PktSize;
+                       pu8Cur += 2;
+                       memcpy( pu8Cur, sg_cMb.m_pu8PktRxBuf, u16PktSize );
+                       psBbi->u16WPos = s32WriteSize;
+                       break;
+               case 1:
+                       *pu8Cur = (u16PktSize >> 8) & 0xFF; // MSB
+                       pu8Cur = sg_cMb.m_pu8Bb;
+                       *pu8Cur++ = u16PktSize & 0xFF; // LSB
+                       memcpy( pu8Cur, sg_cMb.m_pu8PktRxBuf, u16PktSize );
+                       psBbi->u16WPos = 1 + u16PktSize;
+                       break;
+               case 2:
+                       *(uint16*)pu8Cur = u16PktSize;
+                       pu8Cur = sg_cMb.m_pu8Bb;
+                       memcpy( pu8Cur, sg_cMb.m_pu8PktRxBuf, u16PktSize );
+                       psBbi->u16WPos = u16PktSize;
+                       break;
+               default:
+                       *(uint16*)pu8Cur = u16PktSize;
+                       pu8Cur += 2;
+                       s32WritableSizeLinear -= 2;
+                       memcpy( pu8Cur, sg_cMb.m_pu8PktRxBuf, s32WritableSizeLinear );
+                       pu8Cur = sg_cMb.m_pu8Bb;
+                       memcpy( pu8Cur, &sg_cMb.m_pu8PktRxBuf[s32WritableSizeLinear], u16PktSize - s32WritableSizeLinear );
+                       psBbi->u16WPos = u16PktSize - s32WritableSizeLinear;
+                       break;
+               }
+       }
+       else
+       {
+               *(uint16*)pu8Cur = u16PktSize;
+               pu8Cur += 2;
+               memcpy( pu8Cur, sg_cMb.m_pu8PktRxBuf, u16PktSize );
+               psBbi->u16WPos += s32WriteSize;
+       }
+
+       //
+       psBbi->u16RSize += s32WriteSize;
+
+LG_UNLOCK_AND_RETURN:
+#if !DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+mutex_unlock( &sg_cMb.m_psBbBb->mutex );
+mutex_unlock( &sg_cMb.m_psBbBb->file->f_path.dentry->d_inode->i_mapping->i_mmap_mutex );
+//up_write( &sg_cMb.m_psBbTask->mm->mmap_sem ); // Make Kernel Panic
+#endif
+mutex_unlock( &sg_cMb.m_sBbMutex );
+       return;
+
+LG_ERROR:
+       SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_RESET, 1 ); // Ä¿³Î¾²·¹µå´Â Ack¸¦ ±â´Ù¸®¸é ¾ÈµÊ!
+       sg_cMb.m_s32BbMvPid = DG_NONE;
+       sg_cMb.m_psBbPid = NULL;
+       sg_cMb.m_psBbTask = NULL;
+       //sg_cMb.m_psBbBb = NULL;
+       sg_cMb.m_psBbi = NULL;
+       sg_cMb.m_pu8Bb = NULL;
+       DG_DBG_PRINT_ERROR( _T("close or unmmap, becase of the Multiverse was dead by LMK?!") );
+mutex_unlock( &sg_cMb.m_sBbMutex );
+}
+
+static sint32 SGMvBraneSendPacket( uint8 *pu8Pkt, sint32 s32PktSize, sint32 s32NoneBlocking )
+{
+       sint32 i, s32HdrSize, s32RetryCount;
+
+       s32HdrSize = sizeof( struct SGMvPktHdr ) + DG_MV_PKT_PARITY_SIZE_HEADER;
+       DG_SAFE_IS_LESS( s32PktSize, s32HdrSize, /*DG_DBG_PRINT_ERROR( _T("s32PktSize < s32HdrSize") );*/ return -1 );
+
+       s32RetryCount = DG_MV_I2C_ACK_RETRY_COUNT;
+
+LG_RETRY:
+       DG_SAFE_IS_LESS_OR_SAME( s32RetryCount, 0, DG_DBG_PRINT_ERROR( _T("[!!!] Reset TSP IC! [!!!]") ); return -1 );
+       s32RetryCount--;
+
+       if( s32PktSize > s32HdrSize )
+               GMvGtWriteI2cRegister( DG_MV_I2C_REG_PKT_PAYLOAD_TX, &pu8Pkt[s32HdrSize], s32PktSize - s32HdrSize );
+       GMvGtWriteI2cRegister( DG_MV_I2C_REG_PKT_HEADER_TX, pu8Pkt, s32HdrSize );
+
+       sg_cMb.m_ePktAck = EG_MV_PKT_ARG_BASIC_WAIT;
+       DG_SAFE_IS_NOT_ZERO( s32NoneBlocking, return s32PktSize );
+
+       // Wait for ACK or NACK
+       for( i=0; i<DG_MV_I2C_ACK_WAIT_COUNT; i++ )
+       {
+#if 0
+               msleep( DG_MV_I2C_ACK_WAIT_MS );
+#else
+        usleep_range( DG_MV_I2C_ACK_WAIT_MCS, DG_MV_I2C_ACK_WAIT_MCS );
+#endif
+               if( sg_cMb.m_ePktAck == EG_MV_PKT_ARG_BASIC_ACK )
+                       return s32PktSize;
+               else if( sg_cMb.m_ePktAck == EG_MV_PKT_ARG_BASIC_NACK )
+               {
+                       DG_DBG_PRINT_ERROR( _T("NACK!") );
+                       goto LG_RETRY;
+               }
+       }
+       goto LG_RETRY;
+
+       return -1;
+}
+
+static sint32 SGMvBraneSendPacket2( EG_MV_PKT_ID ePktId, uint16 u16Arg, sint32 s32NoneBlocking )
+{
+       uint8 pu8PktBuf[sizeof( struct SGMvPktHdr ) + DG_MV_PKT_PARITY_SIZE_HEADER];
+
+#if 1
+       uint16 u16Ack;
+
+       switch( ePktId )
+       {
+       case EG_MV_PKT_ID_BASIC:
+               switch( u16Arg )
+               {
+               case EG_MV_PKT_ARG_BASIC_ACK:
+                       u16Ack = 1;
+                       GMvGtWriteI2cRegister( DG_MV_I2C_REG_ACK_LSB, &u16Ack, sizeof( u16Ack ) );
+                       //GMvGtWriteI2cRegister( DG_MV_I2C_REG_ACK_LSB, &u16Ack, sizeof( u16Ack ) ); // Make sure!
+                       return sizeof( u16Ack );
+               case EG_MV_PKT_ARG_BASIC_NACK:
+                       u16Ack = 2;
+                       GMvGtWriteI2cRegister( DG_MV_I2C_REG_ACK_LSB, &u16Ack, sizeof( u16Ack ) );
+                       //GMvGtWriteI2cRegister( DG_MV_I2C_REG_ACK_LSB, &u16Ack, sizeof( u16Ack ) ); // Make sure!
+                       return sizeof( u16Ack );
+               default:
+                       break;
+               }
+               break;
+       default:
+               break;
+       }
+#endif
+       return SGMvBraneSendPacket( pu8PktBuf, GMvPacketMakeHeader( pu8PktBuf, ePktId, u16Arg, 0 ), s32NoneBlocking );
+}
+
+// ! ISR of TSP IC
+void GMvBraneIsr( void )
+{
+       if( sg_cMb.m_s32BtRun )
+               up( &sg_cMb.m_sBtSema );
+       else
+               SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+}
+
+// ! Worker Thread
+static int SGMvBraneThreadProcedure( void *pvArg )
+{
+       sint32 s32HdrSize;
+       struct SGMvPktHdr *psPktHdr;
+//DG_DBG_PRINT_INFO( "0" );
+
+       s32HdrSize = sizeof( struct SGMvPktHdr ) + DG_MV_PKT_PARITY_SIZE_HEADER;
+
+       while( sg_cMb.m_s32BtRun && !kthread_should_stop() )
+       {
+               if( -EINTR == down_interruptible( &sg_cMb.m_sBtSema ) )
+                       continue;
+               DG_SAFE_IS_ZERO( sg_cMb.m_s32BtRun, break );
+
+               //
+               GMvGtReadI2cRegister( DG_MV_I2C_REG_PKT_HEADER_RX, sg_cMb.m_pu8PktRxBuf, s32HdrSize );
+               DG_SAFE_GET_POINTER( psPktHdr, GMvPacketCheckHeader( sg_cMb.m_pu8PktRxBuf, s32HdrSize ), SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_NACK, 1 ); continue );
+               switch( psPktHdr->u8PktId )
+               {
+               case EG_MV_PKT_ID_BASIC:
+                       switch( psPktHdr->u16Arg )
+                       {
+                       case EG_MV_PKT_ARG_BASIC_ACK:
+                       case EG_MV_PKT_ARG_BASIC_NACK:
+                               SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+                               SGMvBraneCheckAck( psPktHdr );
+                               break;
+                       case EG_MV_PKT_ARG_BASIC_INFO_TSP_SPEC:
+                               if( !sg_cMb.m_psBbi )
+                               {
+                                       DG_DBG_PRINT_ERROR( _T("sg_cMb.m_psBbi == NULL") );
+                                       SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+                               }
+                               else
+                               {
+                                       uint8 *pu8Payload = &sg_cMb.m_pu8PktRxBuf[s32HdrSize];
+
+                                       GMvGtReadI2cRegister( DG_MV_I2C_REG_PKT_PAYLOAD_RX, pu8Payload, psPktHdr->u16PldSize + DG_MV_PKT_PARITY_SIZE_HEADER );
+                                       SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+                                       if( *(uint16*)&pu8Payload[psPktHdr->u16PldSize] == GMvCrc16Encode( pu8Payload, psPktHdr->u16PldSize ) )
+#elif defined( DG_MV_PKT_PARITY_CRC32 )
+                                       if( *(uint32*)&pu8Payload[psPktHdr->u16PldSize] == GMvCrc32Encode( pu8Payload, psPktHdr->u16PldSize ) )
+#elif defined DG_MV_PKT_PARITY_RS_10_6
+                                       if( EG_RESULT_SUCCESS == GMvRsDecode( NULL, pu8Payload, psPktHdr->u16PldSize + DG_MV_PKT_PARITY_SIZE_HEADER ) )
+#else
+                                       if( 1 )
+#endif
+                                       {
+                                               if( sizeof( sg_cMb.m_psBbi->pu8StringInfo ) == psPktHdr->u16PldSize )
+                                                       memcpy( sg_cMb.m_psBbi->pu8StringInfo, pu8Payload, psPktHdr->u16PldSize );
+                                       }
+                               }
+                               break;
+                       default:
+                               SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+                               break;
+                       }
+                       break;
+
+               case EG_MV_PKT_ID_SERVICE_DATA:
+                       SGMvBraneMuxData( psPktHdr );
+                       SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+
+#if DG_MV_BRANE_SIGACTION_ENABLE
+                       mutex_lock( &sg_cMb.m_sBbMutex );
+                       if( sg_cMb.m_psBbTask )
+                       {
+                               //sg_cMb.m_sBbSi.si_int = 0;
+                               if( send_sig_info( DG_MV_BRANE_SIGACTION_ID, &sg_cMb.m_sBbSi, sg_cMb.m_psBbTask ) < 0 )
+                               {
+                                       sg_cMb.m_s32BbMvPid = DG_NONE;
+                                       sg_cMb.m_psBbPid = NULL;
+                                       sg_cMb.m_psBbTask = NULL;
+                                       //sg_cMb.m_psBbBb = NULL;
+                                       sg_cMb.m_psBbi = NULL;
+                                       sg_cMb.m_pu8Bb = NULL;
+                                       DG_DBG_PRINT_ERROR( _T("send_sig_info() failed!") );
+                               }
+                       }
+                       mutex_unlock( &sg_cMb.m_sBbMutex );
+#endif
+                       break;
+
+               default:
+                       SGMvBraneSendPacket2( EG_MV_PKT_ID_BASIC, EG_MV_PKT_ARG_BASIC_ACK, 1 );
+                       break;
+               }
+       }
+       sg_cMb.m_s32BtRun = 0;
+
+//DG_DBG_PRINT_INFO( "1" );
+       return 0;
+}
+
+static EG_RESULT SGMvBraneThreadStart( void )
+{
+//DG_DBG_PRINT_INFOX( "0 - %d", (int)sg_cMb.m_s32BtRun );
+mutex_lock( &sg_cMb.m_sBtMutex ); // goto LG_SUCCESS;
+
+       DG_SAFE_IS_NOT_ZERO( sg_cMb.m_s32BtRun, goto LG_SUCCESS );
+#if 0 // kthread_stop() makes Kernel Panic when thread was already finished.
+       DG_SAFE_IS_NOT_ZERO( sg_cMb.m_psBtTask, kthread_stop( sg_cMb.m_psBtTask ) );
+#endif
+
+       sema_init( &sg_cMb.m_sBtSema, 0 );
+       sg_cMb.m_s32BtRun = 1;
+       sg_cMb.m_psBtTask = kthread_run( SGMvBraneThreadProcedure, NULL, "SGMvBraneThreadProcedure" );
+       DG_SAFE_IS_NOT_ZERO( IS_ERR( sg_cMb.m_psBtTask ), DG_DBG_PRINT_ERROR( "Failed to create the thread" ); goto LG_ERROR );
+
+LG_SUCCESS:
+mutex_unlock( &sg_cMb.m_sBtMutex );
+//DG_DBG_PRINT_INFO( "1" );
+       return EG_RESULT_SUCCESS;
+
+LG_ERROR:
+       sg_cMb.m_psBtTask = NULL;
+       sg_cMb.m_s32BtRun = 0;
+
+mutex_unlock( &sg_cMb.m_sBtMutex );
+//DG_DBG_PRINT_INFO( "2" );
+       return EG_RESULT_ERROR;
+}
+
+static EG_RESULT SGMvBraneThreadStop( void )
+{
+//DG_DBG_PRINT_INFO( "0" );
+mutex_lock( &sg_cMb.m_sBtMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+       if( sg_cMb.m_psBtTask )
+       {
+               sg_cMb.m_s32BtRun = 0;
+               up( &sg_cMb.m_sBtSema );
+#if 0 // kthread_stop() makes Kernel Panic when thread was already finished.
+               kthread_stop( sg_cMb.m_psBtTask );
+#endif
+               sg_cMb.m_psBtTask = NULL;
+       }
+
+//LG_UNLOCK_AND_RETURN:
+//DG_DBG_PRINT_INFO( "1" );
+mutex_unlock( &sg_cMb.m_sBtMutex );
+       return EG_RESULT_SUCCESS;
+}
+
+// ! Kernel Module
+#if 0
+static int SGMvBraneModuleDeviceMatch( struct device *psDev, void *pvData )
+{
+       //DG_DBG_PRINT_INFOX( "%s", dev_name( psDev ) );
+       return !strcmp( dev_name( psDev ), (char*)pvData );
+}
+#endif
+
+static int SGMvBraneModuleInit( void )
+{
+#if 0
+       char *szParentName = "tsp";
+
+       sg_psMvDev = class_find_device( sec_class, NULL, szParentName, SGMvBraneModuleDeviceMatch );
+       if( !sg_psMvDev )
+       {
+               DG_DBG_PRINT_ERROR( "Failed to find a parent device!" );
+               sg_psMvDev = device_create( sec_class, NULL, 0, NULL, szParentName );
+               DG_SAFE_IS_ZERO( sg_psMvDev, DG_DBG_PRINT_ERROR( "Failed to create a parent device!" ); return 0 );
+       }
+#else
+#if defined( DG_SOC_SEC )
+       sg_psMvDev = sec_device_create( NULL, "Multiverse" );
+#else
+       sg_psMvDev = device_create( sec_class, NULL, 0, NULL, "Multiverse" );
+#endif
+       DG_SAFE_IS_ZERO( sg_psMvDev, DG_DBG_PRINT_ERROR( "sg_psMvDev == NULL" ); return 0 );
+#endif
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+       DG_SAFE_IS_NOT_ZERO( device_create_bin_file( sg_psMvDev, &dev_attr_Brane ), DG_DBG_PRINT_ERROR( "Failed to create a node of the Brane" ); return 0 );
+#else
+       DG_SAFE_IS_NOT_ZERO( device_create_file( sg_psMvDev, &dev_attr_Brane ), DG_DBG_PRINT_ERROR( "Failed to create a node of the Brane" ); return 0 );
+#endif
+       put_device( sg_psMvDev );
+
+       //system/core/include/private/android_filesystem_config.h
+       //sys_chown( DG_MV_BRANE_PATH, AID_SYSTEM, AID_SYSTEM );
+
+       //
+//DG_DBG_PRINT_INFO( "0" );
+       mutex_init( &sg_cMb.m_sPublicMutex );
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+       mutex_init( &sg_cMb.m_sBtMutex );
+       sg_cMb.m_psBtTask = NULL;
+       sg_cMb.m_s32BtRun = 0;
+       sema_init( &sg_cMb.m_sBtSema, 0 );
+
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+       mutex_init( &sg_cMb.m_sBbMutex );
+#if DG_MV_BRANE_SIGACTION_ENABLE
+       memset( &sg_cMb.m_sBbSi, 0, sizeof( sg_cMb.m_sBbSi ) );
+       sg_cMb.m_sBbSi.si_signo = DG_MV_BRANE_SIGACTION_ID;
+       sg_cMb.m_sBbSi.si_code = SI_QUEUE;
+#endif
+       sg_cMb.m_s32BbMvPid = DG_NONE;
+       sg_cMb.m_psBbPid = NULL;
+       sg_cMb.m_psBbTask = NULL;
+       //sg_cMb.m_psBbBb = NULL;
+       sg_cMb.m_psBbi = NULL;
+       sg_cMb.m_pu8Bb = NULL;
+#if DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+       sg_cMb.m_s32BbInterceptedSize = 0;
+       sg_cMb.m_pu8BbIntercepted = NULL;
+#endif
+#endif
+
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+       GMvCrc16Open();
+#endif
+       SGMvBraneThreadStart();
+
+//LG_UNLOCK_AND_RETURN:
+//DG_DBG_PRINT_INFO( "1" );
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+       return 0;
+}
+
+static void SGMvBraneModuleExit( void )
+{
+//DG_DBG_PRINT_INFO( "0" );
+mutex_lock( &sg_cMb.m_sPublicMutex ); // goto LG_UNLOCK_AND_RETURN;
+
+       SGMvBraneThreadStop();
+       if( sg_psMvDev )
+       {
+#if DG_MV_BRANE_BUFFER_MMAP_ENABLE
+               device_remove_bin_file( sg_psMvDev, &dev_attr_Brane );
+#else
+               device_remove_file( sg_psMvDev, &dev_attr_Brane );
+#endif
+               sg_psMvDev = NULL;
+       }
+#if DG_MV_BRANE_BUFFER_MMAP_INTERCEPT
+       if( sg_cMb.m_pu8BbIntercepted )
+       {
+               kfree( sg_cMb.m_pu8BbIntercepted );
+               sg_cMb.m_pu8BbIntercepted = NULL;
+       }
+#endif
+
+//LG_UNLOCK_AND_RETURN:
+//DG_DBG_PRINT_INFO( "1" );
+mutex_unlock( &sg_cMb.m_sPublicMutex );
+}
+
+//
+module_init( SGMvBraneModuleInit );
+module_exit( SGMvBraneModuleExit );
+MODULE_DESCRIPTION( "Brane" );
+MODULE_AUTHOR( "gaiama, byeongjae.kim@samsung.com" );
+MODULE_LICENSE( "GPL" );
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvCommon.h b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvCommon.h
new file mode 100644 (file)
index 0000000..8d9be2d
--- /dev/null
@@ -0,0 +1,191 @@
+#pragma once
+
+///////////////////////////////////////////////////////////////////////////////////
+// GMvCommon.h
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+// ! define
+#if defined( DG_PRODUCT_K )
+       #define DG_MV_PKT_PARITY_CRC16
+       #define DG_MV_STRING_INFO_SIZE 32
+#endif
+
+// Multiverse Packet
+#define DG_MV_PKT_SYNC_BYTE 0xFF
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+       #define DG_MV_PKT_PARITY_SIZE_HEADER 2
+#elif defined( DG_MV_PKT_PARITY_CRC32 )
+       #define DG_MV_PKT_PARITY_SIZE_HEADER 4
+#elif defined( DG_MV_PKT_PARITY_RS_10_6 )
+       #define DG_MV_PKT_PARITY_SIZE_HEADER 4
+#else
+       #define DG_MV_PKT_PARITY_SIZE_HEADER 0
+#endif
+#define DG_MV_PKT_MAX_SIZE DG_KERNEL_PAGE_SIZE
+
+// I2C
+#define DG_MV_I2C_REG_PKT_HEADER_RX 0x6000
+#define DG_MV_I2C_REG_PKT_HEADER_TX 0x6001
+#define DG_MV_I2C_REG_PKT_PAYLOAD_RX 0x6002
+#define DG_MV_I2C_REG_PKT_PAYLOAD_TX 0x6003
+#define DG_MV_I2C_REG_ACK_LSB 0x6004
+#define DG_MV_I2C_REG_ACK_MSB 0x6005
+#define DG_MV_I2C_REG_VERSION_LSB 0x6006
+#define DG_MV_I2C_REG_VERSION_MSB 0x6007
+#define DG_MV_I2C_ACK_RETRY_COUNT 5
+#define DG_MV_I2C_ACK_WAIT_MCS 1000
+#define DG_MV_I2C_ACK_WAIT_COUNT 250 // 250ms
+
+// Brane
+#define DG_MV_BRANE_PATH _T("/sys/class/sec/Multiverse/Brane")
+#define DG_MV_BRANE_BUFFER_MMAP_ENABLE 1
+#define DG_MV_BRANE_BUFFER_MMAP_INTERCEPT 1
+#define DG_MV_BRANE_SIGACTION_ENABLE 0
+#define DG_MV_BRANE_SIGACTION_ID 50 // 34~64(realtime signal), realtime signal can send 32bit payload in siginfo.si_int. Sure?
+
+// ! enum
+typedef enum// : sint32
+{
+       EG_MV_SERVICE_SC_F = 0,
+       EG_MV_SERVICE_SC_0,
+       EG_MV_SERVICE_SC_1,
+       EG_MV_SERVICE_MC_F,
+       EG_MV_SERVICE_MC_0,
+       EG_MV_SERVICE_MC_1,
+       EG_MV_SERVICE_SSC_F,
+       EG_MV_SERVICE_SSC_0,
+       EG_MV_SERVICE_SSC_1,
+       EG_MV_SERVICE_GRIP_TO_SNOOZE,
+       EG_MV_SERVICE_GRIP_FOR_QUICK_CAMERA,
+       EG_MV_SERVICE_GRIP_TO_CHANGE_SPEAKER,
+       EG_MV_SERVICE_GRIP_TO_LOCK_SCREEN_ROTATION,
+       EG_MV_SERVICE_PET_TO_CONTROL,
+       EG_MV_SERVICE_NUM
+} EG_MV_SERVICE;
+
+typedef enum// : sint32
+{
+       EG_MV_ID_NONE = -1,
+       EG_MV_ID_UNREGISTER_ALL,
+
+       EG_MV_ID_SC_F_REGISTER = 100,
+       EG_MV_ID_SC_F_UNREGISTER,
+       EG_MV_ID_SC_F_DATA,
+
+       EG_MV_ID_SC_0_REGISTER = 110,
+       EG_MV_ID_SC_0_UNREGISTER,
+       EG_MV_ID_SC_0_DATA,
+
+       EG_MV_ID_SC_1_REGISTER = 120,
+       EG_MV_ID_SC_1_UNREGISTER,
+       EG_MV_ID_SC_1_DATA,
+
+       EG_MV_ID_MC_F_REGISTER = 130,
+       EG_MV_ID_MC_F_UNREGISTER,
+       EG_MV_ID_MC_F_DATA,
+
+       EG_MV_ID_MC_0_REGISTER = 140,
+       EG_MV_ID_MC_0_UNREGISTER,
+       EG_MV_ID_MC_0_DATA,
+
+       EG_MV_ID_MC_1_REGISTER = 150,
+       EG_MV_ID_MC_1_UNREGISTER,
+       EG_MV_ID_MC_1_DATA,
+
+       EG_MV_ID_SSC_F_REGISTER = 160,
+       EG_MV_ID_SSC_F_UNREGISTER,
+       EG_MV_ID_SSC_F_DATA,
+
+       EG_MV_ID_SSC_0_REGISTER = 170,
+       EG_MV_ID_SSC_0_UNREGISTER,
+       EG_MV_ID_SSC_0_DATA,
+
+       EG_MV_ID_SSC_1_REGISTER = 180,
+       EG_MV_ID_SSC_1_UNREGISTER,
+       EG_MV_ID_SSC_1_DATA,
+
+       EG_MV_ID_GRIP_TO_SNOOZE_REGISTER = 190,
+       EG_MV_ID_GRIP_TO_SNOOZE_UNREGISTER,
+       EG_MV_ID_GRIP_TO_SNOOZE_DATA,
+
+       EG_MV_ID_GRIP_FOR_QUICK_CAMERA_REGISTER = 200,
+       EG_MV_ID_GRIP_FOR_QUICK_CAMERA_UNREGISTER,
+       EG_MV_ID_GRIP_FOR_QUICK_CAMERA_DATA,
+
+       EG_MV_ID_GRIP_TO_CHANGE_SPEAKER_REGISTER = 210,
+       EG_MV_ID_GRIP_TO_CHANGE_SPEAKER_UNREGISTER,
+       EG_MV_ID_GRIP_TO_CHANGE_SPEAKER_DATA,
+
+       EG_MV_ID_GRIP_TO_LOCK_SCREEN_ROTATION_REGISTER = 220,
+       EG_MV_ID_GRIP_TO_LOCK_SCREEN_ROTATION_UNREGISTER,
+       EG_MV_ID_GRIP_TO_LOCK_SCREEN_ROTATION_DATA,
+
+       EG_MV_ID_PET_TO_CONTROL_REGISTER = 230,
+       EG_MV_ID_PET_TO_CONTROL_UNREGISTER,
+       EG_MV_ID_PET_TO_CONTROL_DATA,
+} EG_MV_ID;
+
+typedef enum// : sint32
+{
+       EG_MV_DATA_TYPE_S8 = 0,
+       EG_MV_DATA_TYPE_U8,
+       EG_MV_DATA_TYPE_U8_NORM,
+       EG_MV_DATA_TYPE_S16,
+       EG_MV_DATA_TYPE_U16,
+       EG_MV_DATA_TYPE_U16_NORM,
+       EG_MV_DATA_TYPE_F32,
+       EG_MV_DATA_TYPE_NUM
+} EG_MV_DATA_TYPE;
+
+typedef enum// : uint8
+{
+       EG_MV_PKT_ID_BRANE = 0,
+       EG_MV_PKT_ID_BASIC,
+       EG_MV_PKT_ID_SERVICE_START,
+       EG_MV_PKT_ID_SERVICE_STOP,
+       EG_MV_PKT_ID_SERVICE_DATA,
+       EG_MV_PKT_ID_NUM
+} EG_MV_PKT_ID;
+
+typedef enum// : uint16
+{
+       EG_MV_PKT_ARG_BRANE_OPEN = 0,
+       EG_MV_PKT_ARG_BRANE_CLOSE
+} EG_MV_PKT_ARG_BRANE;
+
+typedef enum// : uint16
+{
+       EG_MV_PKT_ARG_BASIC_WAIT = 0,
+       EG_MV_PKT_ARG_BASIC_ACK,
+       EG_MV_PKT_ARG_BASIC_NACK,
+       EG_MV_PKT_ARG_BASIC_RESET,
+       EG_MV_PKT_ARG_BASIC_INFO_TSP_SPEC
+} EG_MV_PKT_ARG_BASIC;
+
+// ! struct
+#pragma pack( 1 )
+typedef struct SGMvPktHdr // uint8[6]
+{
+       uint8 u8SyncByte, u8PktId;
+       uint16 u16Arg;
+       uint16 u16PldSize;
+} TGMvPktHdr;
+
+typedef struct SGMvBraneBufInfo
+{
+       uint16 u16TotalSize, u16WPos, u16RPos, u16RSize;
+       uint8 pu8StringInfo[DG_MV_STRING_INFO_SIZE];
+} TGMvBraneBufInfo;
+
+typedef struct SGMvScImpulse
+{
+       unsigned u1Virtual : 1;
+       unsigned u1HalfPixel : 1;
+       unsigned u6X : 6; // ~63
+       unsigned u6Level : 6; // ~63
+       unsigned u2Reserved : 2;
+} TGMvScImpulse;
+#pragma pack()
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.c b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.c
new file mode 100644 (file)
index 0000000..feba405
--- /dev/null
@@ -0,0 +1,127 @@
+///////////////////////////////////////////////////////////////////////////////////
+// GMvSystem.c
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+#include "GMvSystem.h"
+
+//
+sint32 GMvPacketMakeHeader( uint8 *pu8Dst, EG_MV_PKT_ID ePktId, uint16 u16Arg, uint16 u16PldSize )
+{
+       struct SGMvPktHdr *psPktHdr;
+#if defined DG_MV_PKT_PARITY_RS_10_6
+       struct SGMvPktHdr sPktHdr;
+#endif
+
+#if defined( DG_MV_PKT_PARITY_CRC16 ) || defined( DG_MV_PKT_PARITY_CRC32 )
+       psPktHdr = (struct SGMvPktHdr*)pu8Dst;
+#elif defined DG_MV_PKT_PARITY_RS_10_6
+       psPktHdr = &sPktHdr;
+#else
+       psPktHdr = (struct SGMvPktHdr*)pu8Dst;
+#endif
+       psPktHdr->u8SyncByte = DG_MV_PKT_SYNC_BYTE;
+       psPktHdr->u8PktId = ePktId;
+       psPktHdr->u16Arg = u16Arg;
+       psPktHdr->u16PldSize = u16PldSize;
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+       *(uint16*)&pu8Dst[sizeof( struct SGMvPktHdr )] = GMvCrc16Encode( pu8Dst, sizeof( struct SGMvPktHdr ) );
+#elif defined( DG_MV_PKT_PARITY_CRC32 )
+       *(uint32*)&pu8Dst[sizeof( struct SGMvPktHdr )] = GMvCrc32Encode( pu8Dst, sizeof( struct SGMvPktHdr ) );
+#elif defined DG_MV_PKT_PARITY_RS_10_6
+       GMvRsEncode( pu8Dst, &sPktHdr, sizeof( sPktHdr ) );
+#endif
+
+       return sizeof( struct SGMvPktHdr ) + DG_MV_PKT_PARITY_SIZE_HEADER;
+}
+
+sint32 GMvPacketMakePayload( uint8 *pu8Dst, sint32 s32DstSize, uint8 *pu8Src, sint32 s32SrcSize )
+{
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+       memcpy( pu8Dst, pu8Src, s32SrcSize );
+       *(uint16*)&pu8Dst[s32SrcSize] = GMvCrc16Encode( pu8Src, s32SrcSize );
+#elif defined( DG_MV_PKT_PARITY_CRC32 )
+       memcpy( pu8Dst, pu8Src, s32SrcSize );
+       *(uint32*)&pu8Dst[s32SrcSize] = GMvCrc32Encode( pu8Src, s32SrcSize );
+#elif defined DG_MV_PKT_PARITY_RS_10_6
+       return GMvRsEncode( pu8Dst, pu8Src, s32SrcSize );
+#else
+       memcpy( pu8Dst, pu8Src, s32SrcSize );
+#endif
+
+       return s32SrcSize + DG_MV_PKT_PARITY_SIZE_HEADER;
+}
+
+struct SGMvPktHdr* GMvPacketCheckHeader( uint8 *pu8Pkt, sint32 s32HdrSize )
+{
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+       if( *(uint16*)&pu8Pkt[sizeof( struct SGMvPktHdr )] != GMvCrc16Encode( pu8Pkt, sizeof( struct SGMvPktHdr ) ) )
+#elif defined( DG_MV_PKT_PARITY_CRC32 )
+       if( *(uint32*)&pu8Pkt[sizeof( struct SGMvPktHdr )] != GMvCrc32Encode( pu8Pkt, sizeof( struct SGMvPktHdr ) ) )
+#elif defined DG_MV_PKT_PARITY_RS_10_6
+       if( EG_RESULT_SUCCESS != GMvRsDecode( NULL, pu8Pkt, s32HdrSize ) )
+#else
+       if( 0 )
+#endif
+       {
+               DG_DBG_PRINT_ERROR( _T("Packet Header is Corrupted!") );
+               return NULL;
+       }
+       DG_SAFE_IS_NOT_EQUAL( *pu8Pkt, DG_MV_PKT_SYNC_BYTE, DG_DBG_PRINT_ERROR( _T("*pu8Pkt != DG_MV_PKT_SYNC_BYTE") ); return NULL );
+
+       return (struct SGMvPktHdr*)pu8Pkt;
+}
+
+// CRC16
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+struct CGMvCrc16
+{
+       uint16 m_u16Polynomial, m_pu16Lut[256];
+};
+
+static struct CGMvCrc16 sg_cMvCrc16;
+
+static uint16 SGMvCrc16BitReflect( uint16 u16ReflectMask, sint32 s32BitNum )
+{
+       sint32 s32BitPos;
+       uint16 u16Reflected;
+
+       u16Reflected = 0;
+       for( s32BitPos=1; s32BitPos<=s32BitNum; s32BitPos++ )
+       {
+               if( u16ReflectMask & 1 )
+                       u16Reflected |= 1 << (s32BitNum - s32BitPos);
+               u16ReflectMask >>= 1;
+       }
+
+       return u16Reflected;
+}
+
+void GMvCrc16Open( void )
+{
+       uint32 i, j;
+
+       memset( &sg_cMvCrc16, 0, sizeof( struct CGMvCrc16 ) );
+       sg_cMvCrc16.m_u16Polynomial = 0x8005;
+       for( i=0; i<256; i++ )
+       {
+               sg_cMvCrc16.m_pu16Lut[i] = SGMvCrc16BitReflect( i, 8 ) << 8;
+               for( j=0; j<8; j++ )
+                       sg_cMvCrc16.m_pu16Lut[i] = (sg_cMvCrc16.m_pu16Lut[i] << 1) ^ ((sg_cMvCrc16.m_pu16Lut[i] & (1 << 15)) ? sg_cMvCrc16.m_u16Polynomial : 0);
+               sg_cMvCrc16.m_pu16Lut[i] = SGMvCrc16BitReflect( sg_cMvCrc16.m_pu16Lut[i], 16 );
+       }
+}
+
+uint16 GMvCrc16Encode( uint8 *pu8Data, sint32 s32Size )
+{
+       uint16 u16Crc16;
+
+       u16Crc16 = 0;
+       while( s32Size-- )
+               u16Crc16 = (u16Crc16 >> 8) ^ sg_cMvCrc16.m_pu16Lut[(u16Crc16 & 0xFF) ^ *pu8Data++];
+
+       return u16Crc16;
+}
+#endif
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.h b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GMvSystem.h
new file mode 100644 (file)
index 0000000..de7f237
--- /dev/null
@@ -0,0 +1,27 @@
+#pragma once
+
+///////////////////////////////////////////////////////////////////////////////////
+// GMvSystem.h
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+// ! include
+#include "GSystem.h"
+#include "GMvCommon.h"
+
+// ! extern
+void GMvGtReadI2cRegister( uint16, void*, sint32 );
+void GMvGtWriteI2cRegister( uint16, void*, sint32 );
+
+void GMvBraneIsr( void );
+
+sint32 GMvPacketMakeHeader( uint8*, EG_MV_PKT_ID, uint16, uint16 );
+sint32 GMvPacketMakePayload( uint8*, sint32, uint8*, sint32 );
+struct SGMvPktHdr* GMvPacketCheckHeader( uint8*, sint32 );
+
+#if defined( DG_MV_PKT_PARITY_CRC16 )
+void GMvCrc16Open( void );
+uint16 GMvCrc16Encode( uint8*, sint32 );
+#endif
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/GSystem.h b/drivers/input/touchscreen/synaptics_dsx/Multiverse/GSystem.h
new file mode 100644 (file)
index 0000000..f6af1fa
--- /dev/null
@@ -0,0 +1,1088 @@
+#pragma once
+
+///////////////////////////////////////////////////////////////////////////////////
+// GSystem.h
+//---------------------------------------------------------------------------------
+// Created by Byeongjae Gim
+// Email: gaiama78@gmail.com, byeongjae.kim@samsung.com
+///////////////////////////////////////////////////////////////////////////////////
+
+// ! Policy, Rule and Warning
+// - Never use the STL or anything like it.
+// - Use the UTF8 only.
+
+// ! Setting
+#include "GBuild.h"
+
+#if defined( DG_PLATFORM_WINDOWS_GENERIC )
+       #define DG_RIGHT_HANDED_SYSTEM 0 // Left-Handed
+#elif defined( DG_PLATFORM_ANDROID_GENERIC )
+       #define DG_RIGHT_HANDED_SYSTEM 0 // Left-Handed
+
+       #define DG_LOOPER_ID_USER 9990000
+       #define DG_LOOPER_ID_ACC DG_LOOPER_ID_USER
+       #define DG_LOOPER_ID_MAG (DG_LOOPER_ID_USER + 1)
+       #define DG_LOOPER_ID_GYRO (DG_LOOPER_ID_USER + 2)
+#else
+       #define DG_RIGHT_HANDED_SYSTEM 1
+#endif
+
+// Experimental
+#define DG_TEST_EGL_IMAGE 0
+
+// ! include
+#if defined( DG_PLATFORM_LINUX_KERNEL )
+       #include <linux/module.h>
+       #include <linux/kernel.h>
+       #include <linux/init.h>
+       #include <linux/fs.h>
+       #include <linux/slab.h>
+       #include <linux/firmware.h>
+       #include <linux/hrtimer.h>
+       #include <linux/device.h>
+       #include <linux/kthread.h>
+       #include <linux/delay.h>
+       #include <linux/syscalls.h>
+       #include <linux/string.h>
+       #if defined( DG_SOC_SEC )
+               #include <linux/sec_sysfs.h>
+       #endif
+
+       #include <asm/siginfo.h>
+
+       #ifndef VM_RESERVED // After 3.10
+               #define VM_RESERVED (VM_DONTEXPAND | VM_DONTDUMP)
+       #endif
+#else
+       #include <stdio.h>
+       #include <stdlib.h>
+       #include <errno.h>
+       #include <string.h>
+       #include <time.h>
+       #include <math.h>
+       #include <float.h>
+       #include <fcntl.h>
+       #include <sys/types.h>
+       #include <sys/stat.h>
+
+       #if defined( DG_PLATFORM_WINDOWS_GENERIC )
+               #include <io.h>
+               #include <direct.h>
+
+               //#define _CRT_SECURE_NO_WARNINGS
+               //#define _CRT_NONSTDC_NO_WARNINGS
+
+               #ifdef __cplusplus
+                       #ifndef _SECURE_ATL
+                               #define _SECURE_ATL 1
+                       #endif
+                       #ifndef VC_EXTRALEAN
+                               #define VC_EXTRALEAN            // Exclude rarely-used stuff from Windows headers
+                       #endif
+                       //#include "targetver.h"
+                       #define _ATL_CSTRING_EXPLICIT_CONSTRUCTORS      // some CString constructors will be explicit
+                       // turns off MFC's hiding of some common and often safely ignored warning messages
+                       #define _AFX_ALL_WARNINGS
+                       #include <afxwin.h>         // MFC core and standard components
+                       #include <afxext.h>         // MFC extensions
+                       #include <afxmt.h> // for CGMutex
+                       #include <afxtempl.h>
+               #else
+                       #include <windows.h>
+                       #include <winnt.h>
+               #endif
+       #elif defined( DG_PLATFORM_LINUX_GENERIC )
+               #include <unistd.h>
+               #include <signal.h>
+               #include <semaphore.h>
+               #include <pthread.h>
+
+               #include <linux/types.h>
+
+               #include <sys/times.h>
+               #include <sys/wait.h>
+               #include <sys/ioctl.h>
+               #include <sys/mman.h>
+
+               #if defined( DG_PLATFORM_ANDROID_GENERIC )
+                       #include <jni.h>
+                       #include <android/log.h>
+                       #include <android/bitmap.h>
+                       #include <android/looper.h>
+                       #include <sys/system_properties.h>
+                       #include <cutils/properties.h>
+               #endif
+
+               #if defined( DG_CPU_SIMD_NEON_INTRINSIC )
+                       #include <arm_neon.h>
+                       #include <stdint.h>
+               #endif
+       #endif
+#endif
+
+// ! typedef
+typedef signed char sint8;
+typedef signed short sint16;
+typedef signed long sint32;
+typedef signed long long sint64;
+typedef unsigned char uint8;
+typedef unsigned short uint16;
+typedef unsigned long uint32;
+typedef unsigned long long uint64;
+
+typedef float float32;
+typedef double float64;
+
+typedef sint32 fixed32;
+typedef sint64 fixed64;
+
+typedef void* GHANDLE;
+typedef sint32 GID;
+
+#ifndef _TCHAR_DEFINED
+       #ifdef _UNICODE
+               typedef sint16 TCHAR;
+       #else
+               typedef sint8 TCHAR;
+       #endif
+#endif
+
+#if defined( DG_PLATFORM_WINDOWS_GENERIC )
+#else
+       typedef sint16 WCHAR;
+#endif
+
+#if defined( DG_PLATFORM_LINUX_KERNEL )
+#else
+       typedef void (*GFUNC_CALLBACK)();
+       typedef sint32 (*GFUNC_CALLBACK2)( sint32 );
+       typedef void (*GFUNC_THREAD)( void* );
+#endif
+
+// ! define
+#ifndef TRUE
+       #define TRUE 1
+#endif
+#ifndef FALSE
+       #define FALSE 0
+#endif
+#ifndef NULL
+       #define NULL 0
+#endif
+#ifndef _T
+       #define _T( x ) x
+#endif
+
+#if defined( DG_KERNEL_LINUX )
+       #define DG_KERNEL_PAGE_SIZE PAGE_SIZE
+#elif defined( DG_KERNEL_WINDOWS_NT )
+       #define DG_KERNEL_PAGE_SIZE 4096
+#endif
+
+#if defined( DG_PLATFORM_WINDOWS_GENERIC )
+       #if defined( _DLL ) || defined( _WINDLL )
+               #define DG_API __declspec( dllexport )
+       #else
+               #define DG_API
+       #endif
+#else
+       #define DG_API
+#endif
+
+#define DG_NONE -1
+#define DG_INFINITE ((uint32)-1)
+
+#if defined( DG_PLATFORM_WINDOWS_GENERIC )
+       #define DG_IS_NONE_CONTEXT() FALSE // Investigate this!
+#elif defined( DG_PLATFORM_LINUX_GENERIC )
+       #define DG_IS_NONE_CONTEXT() FALSE // Investigate this!
+#elif defined( DG_PLATFORM_ITRON_GENERIC )
+       #define DG_IS_NONE_CONTEXT() sns_ctx()
+#else
+       #define DG_IS_NONE_CONTEXT() FALSE
+#endif
+
+//
+#define DG_SAFE_IS_SUCCESS( A, Action ) { if( EG_RESULT_SUCCESS == (A) ){ Action; } }
+#define DG_SAFE_IS_NOT_SUCCESS( A, Action ) { if( EG_RESULT_SUCCESS != (A) ){ Action; } }
+#define DG_SAFE_IS_NONE( A, Action ) { if( DG_NONE == (A) ){ Action; } }
+#define DG_SAFE_IS_NOT_NONE( A, Action ) { if( DG_NONE != (A) ){ Action; } }
+#define DG_SAFE_IS_ZERO( A, Action ) { if( (A) == 0 ){ Action; } }
+#define DG_SAFE_IS_ZERO2( A, B, Action ) { if( ((A) == 0) || ((B) == 0) ){ Action; } }
+#define DG_SAFE_IS_ZERO3( A, B, C, Action ) { if( ((A) == 0) || ((B) == 0) || ((C) == 0) ){ Action; } }
+#define DG_SAFE_IS_ZERO4( A, B, C, D, Action ) { if( ((A) == 0) || ((B) == 0) || ((C) == 0) || ((D) == 0) ){ Action; } }
+#define DG_SAFE_IS_NOT_ZERO( A, Action ) { if( (A) != 0 ){ Action; } }
+#define DG_SAFE_IS_EQUAL( A, B, Action ) { if( (A) == (B) ){ Action; } }
+#define DG_SAFE_IS_NOT_EQUAL( A, B, Action ) { if( (A) != (B) ){ Action; } }
+#define DG_SAFE_IS_GREATER( A, B, Action ) { if( (A) > (B) ){ Action; } }
+#define DG_SAFE_IS_GREATER_OR_SAME( A, B, Action ) { if( (A) >= (B) ){ Action; } }
+#define DG_SAFE_IS_LESS( A, B, Action ) { if( (A) < (B) ){ Action; } }
+#define DG_SAFE_IS_LESS_OR_SAME( A, B, Action ) { if( (A) <= (B) ){ Action; } }
+#define DG_SAFE_IS_IN_RANGE( A, Min, Max, Action ) { if( ((A) >= (Min)) && ((A) <= (Max)) ){ Action; } }
+#define DG_SAFE_IS_OUT_OF_RANGE( A, Min, Max, Action ) { if( ((A) < (Min)) || ((A) > (Max)) ){ Action; } }
+
+#define DG_SAFE_IF( A, Action ) { if( (A) ){ Action; } }
+#define DG_SAFE_GET_POINTER( P, Method, Action ) { P = Method; DG_SAFE_IS_ZERO( P, Action ); }
+
+//
+#if defined( DG_PLATFORM_LINUX_KERNEL )
+       #define DG_DBG_PRINT_ERROR( Format ) printk( KERN_ERR "%s(%d) - " Format, __FUNCTION__, __LINE__ );
+       #define DG_DBG_PRINT_ERRORX( Format, ... ) printk( KERN_ERR "%s(%d) - " Format, __FUNCTION__, __LINE__, __VA_ARGS__ );
+       #define DG_DBG_PRINT_INFO( Format ) printk( KERN_INFO "%s(%d) - " Format, __FUNCTION__, __LINE__ );
+       #define DG_DBG_PRINT_INFOX( Format, ... ) printk( KERN_INFO "%s(%d) - " Format, __FUNCTION__, __LINE__, __VA_ARGS__ );
+#else
+       #if defined( DG_PLATFORM_WINDOWS_GENERIC )
+               #define DG_DBG_MSG_ERROR ::MessageBox( AfxGetMainWnd()->GetSafeHwnd(), CGSystem::sm_ptcPrintfBuf, _T("GSystem"), MB_ICONINFORMATION | MB_OK )
+               //#define DG_DBG_MSG_ERROR ::OutputDebugString( CGSystem::sm_ptcPrintfBuf )
+               #define DG_DBG_MSG_INFO ::MessageBox( AfxGetMainWnd()->GetSafeHwnd(), CGSystem::sm_ptcPrintfBuf, _T("GSystem"), MB_ICONINFORMATION | MB_OK )
+       #elif defined( DG_PLATFORM_ANDROID_GENERIC )
+               #define DG_DBG_MSG_ERROR __android_log_print( ANDROID_LOG_ERROR, _T("GSystem"), _T("%s\n"), CGSystem::sm_ptcPrintfBuf )
+               #define DG_DBG_MSG_INFO __android_log_print( ANDROID_LOG_INFO, _T("GSystem"), _T("%s\n"), CGSystem::sm_ptcPrintfBuf )
+       #else
+       #endif
+       #define DG_DBG_PRINT_ERROR( Format ) { CGAtomicOperation cPrintfAo( &CGSystem::sm_cPrintfMutex ); CGUtf8Util::SFormat( CGSystem::sm_ptcPrintfBuf, (TCHAR*)_T("%s::%s(%d) - ") Format, _T(__FILE__), _T(__FUNCTION__), __LINE__ ); DG_DBG_MSG_ERROR; }
+       #define DG_DBG_PRINT_ERRORX( Format, ... ) { CGAtomicOperation cPrintfAo( &CGSystem::sm_cPrintfMutex ); CGUtf8Util::SFormat( CGSystem::sm_ptcPrintfBuf, (TCHAR*)_T("%s::%s(%d) - ") Format, _T(__FILE__), _T(__FUNCTION__), __LINE__, __VA_ARGS__ ); DG_DBG_MSG_ERROR; }
+       #define DG_DBG_PRINT_INFO( Format ) { CGAtomicOperation cPrintfAo( &CGSystem::sm_cPrintfMutex ); CGUtf8Util::SFormat( CGSystem::sm_ptcPrintfBuf, (TCHAR*)_T("%s(%d) - ") Format, _T(__FUNCTION__), __LINE__ ); DG_DBG_MSG_INFO; }
+       #define DG_DBG_PRINT_INFOX( Format, ... ) { CGAtomicOperation cPrintfAo( &CGSystem::sm_cPrintfMutex ); CGUtf8Util::SFormat( CGSystem::sm_ptcPrintfBuf, (TCHAR*)_T("%s(%d) - ") Format, _T(__FUNCTION__), __LINE__, __VA_ARGS__ ); DG_DBG_MSG_INFO; }
+#endif
+
+//
+#define DG_ALIGN4( Value ) (((Value) + 3) & ~3)
+
+//
+#define DG_MASK32_SET8( Arg0, Arg1, Arg2, Arg3 ) (((uint32)Arg0 << 24) | ((uint32)Arg1 << 16) | ((uint32)Arg2 << 8) | (uint32)Arg3)
+
+#define DG_MASK64_CLEAR16_0( Value ) (Value &= 0x0000FFFFFFFFFFFFLL)
+#define DG_MASK64_CLEAR16_1( Value ) (Value &= 0xFFFF0000FFFFFFFFLL)
+#define DG_MASK64_CLEAR16_2( Value ) (Value &= 0xFFFFFFFF0000FFFFLL)
+#define DG_MASK64_CLEAR16_3( Value ) (Value &= 0xFFFFFFFFFFFF0000LL)
+#define DG_MASK64_SET8( Arg0, Arg1, Arg2, Arg3, Arg4, Arg5, Arg6, Arg7 ) (((uint64)Arg0 << 56) | ((uint64)Arg1 << 48) | ((uint64)Arg2 << 40) | ((uint64)Arg3 << 32) | ((uint64)Arg4 << 24) | ((uint64)Arg5 << 16) | ((uint64)Arg6 << 8) | (uint64)Arg7)
+#define DG_MASK64_SET16( Arg0, Arg1, Arg2, Arg3 ) (((uint64)Arg0 << 48) | ((uint64)Arg1 << 32) | ((uint64)Arg2 << 16) | (uint64)Arg3)
+#define DG_MASK64_SET16_0( Value, Arg ) { DG_MASK64_CLEAR16_0( Value ); Value |= (uint64)Arg << 48; }
+#define DG_MASK64_SET16_1( Value, Arg ) { DG_MASK64_CLEAR16_1( Value ); Value |= (uint64)Arg << 32; }
+#define DG_MASK64_SET16_2( Value, Arg ) { DG_MASK64_CLEAR16_2( Value ); Value |= (uint64)Arg << 16; }
+#define DG_MASK64_SET16_3( Value, Arg ) { DG_MASK64_CLEAR16_3( Value ); Value |= (uint64)Arg; }
+#define DG_MASK64_GET16_0( Value ) ((Value >> 48) & 0xFFFF)
+#define DG_MASK64_GET16_1( Value ) ((Value >> 32) & 0xFFFF)
+#define DG_MASK64_GET16_2( Value ) ((Value >> 16) & 0xFFFF)
+#define DG_MASK64_GET16_3( Value ) (Value & 0xFFFF)
+
+//
+#define DG_PARAM_SIZE 64
+
+// ! enum
+typedef enum// : sint32
+{
+       EG_RESULT_ERROR = -1,
+       EG_RESULT_SUCCESS,
+
+       EG_RESULT_NOT_READY,
+       EG_RESULT_BUSY,
+       EG_RESULT_EMPTY,
+       EG_RESULT_FULL,
+       EG_RESULT_NO_EXIST,
+
+       EG_RESULT_NO_INPUT,
+       EG_RESULT_NO_OUTPUT,
+
+       EG_RESULT_EOT,
+       EG_RESULT_EOF
+} EG_RESULT;
+
+typedef enum// : sint32
+{
+       EG_STATE_NONE = -1,
+
+       EG_STATE_OPENING,
+       EG_STATE_CLOSING,
+       EG_STATE_CLOSED,
+       EG_STATE_FAILED,
+
+       EG_STATE_PAUSING,
+
+       EG_STATE_RUNNING,
+       EG_STATE_RUNNING_FAST_FORWARD,
+       EG_STATE_RUNNING_FAST_BACKWARD,
+       
+       EG_STATE_CHECKING,
+       EG_STATE_EDITING,
+#if 0//New Siso
+       EG_STATE_MOVE,
+       EG_STATE_ROTATE,
+       EG_STATE_SCALE,
+#endif
+
+       EG_STATE_NUM
+} EG_STATE;
+
+typedef enum// : sint32
+{
+       EG_DATA_TYPE_NONE = -1,
+       EG_DATA_TYPE_S8,
+       EG_DATA_TYPE_U8,
+       EG_DATA_TYPE_S16,
+       EG_DATA_TYPE_U16,
+       EG_DATA_TYPE_S32,
+       EG_DATA_TYPE_U32,
+       EG_DATA_TYPE_S64,
+       EG_DATA_TYPE_U64,
+       EG_DATA_TYPE_F32,
+       EG_DATA_TYPE_F64,
+       EG_DATA_TYPE_BITSTREAM,
+       EG_DATA_TYPE_NUM
+} EG_DATA_TYPE;
+
+typedef enum// : sint32
+{
+       EG_OBJ_TYPE_NONE = -1,
+
+       EG_OBJ_TYPE_MEMBLOCK,
+       EG_OBJ_TYPE_CLASS,//include struct
+       EG_OBJ_TYPE_CLASS_ARRAY,
+       EG_OBJ_TYPE_OBJECT,
+       EG_OBJ_TYPE_OBJECT_ARRAY,
+
+       EG_OBJ_TYPE_NUM
+} EG_OBJ_TYPE;
+
+// ! Deadlock 주의
+// - CGMmFxBuilder::Stop()과의 Deadlock을 특히 조심
+// - 'if( EG_RESULT_SUCCESS == m_pcBuilder->Pause() ){ m_pcBuilder->Notify( , , , , EG_NOTIFY_TYPE_NONE_BLOCK ); }' + 'Builder가 직접 Resume()'을 권장
+typedef enum// : sint32
+{
+       EG_NOTIFY_TYPE_BLOCK = 0,
+       EG_NOTIFY_TYPE_NONE_BLOCK,
+} EG_NOTIFY_TYPE;
+
+typedef enum// : sint32
+{
+       EG_NOTIFY_NONE = -1,
+
+       //
+       EG_NOTIFY_ERROR,
+
+       // UI
+       EG_NOTIFY_CLICK_DOWN,
+       EG_NOTIFY_CLICK_DOWN_MOVE,
+       EG_NOTIFY_CLICK_DOWN_LONG,
+       EG_NOTIFY_CLICK_DOWN_FLING,
+       EG_NOTIFY_CLICK_UP,
+       EG_NOTIFY_CLICK_UP_MOVE,
+       EG_NOTIFY_CLICK_DOUBLE,
+       EG_NOTIFY_CLICK_TWO_DOWN,
+       EG_NOTIFY_CLICK_TWO_DOWN_MOVE,
+       EG_NOTIFY_CLICK_TWO_UP,
+
+       // H/W
+       EG_NOTIFY_POWER,
+       EG_NOTIFY_GPS,
+       EG_NOTIFY_ACCELEROMETER,
+       EG_NOTIFY_MAGNETIC_FIELD,
+       EG_NOTIFY_GYROSCOPE,
+       EG_NOTIFY_ORIENTATION_EULER,
+       EG_NOTIFY_ORIENTATION_QUATERNION,
+
+       // Action
+       EG_NOTIFY_CREATE,
+       EG_NOTIFY_DELETE,
+       EG_NOTIFY_CLEAR,
+       EG_NOTIFY_UPDATE,
+       EG_NOTIFY_CHANGE,
+       EG_NOTIFY_CHECK,
+       EG_NOTIFY_EDIT,
+       EG_NOTIFY_START,
+       EG_NOTIFY_STOP,
+       EG_NOTIFY_END,
+       EG_NOTIFY_PAUSE,
+       EG_NOTIFY_PAUSE_WHEN_SYNC_UNIT,
+       EG_NOTIFY_RESUME,
+       EG_NOTIFY_FAST_FORWARD,
+       EG_NOTIFY_FAST_BACKWARD,
+       EG_NOTIFY_PRELOAD,
+       EG_NOTIFY_SNAPSHOT,
+       EG_NOTIFY_GOTO_NEXT,
+       EG_NOTIFY_GOTO_PREV,
+       EG_NOTIFY_GOAT_TIME_STAMP,
+
+       // Legacy
+       EG_NOTIFY_WARN_FREE_SPACE,
+       EG_NOTIFY_INSUFFICIENT_FREE_SPACE,
+       EG_NOTIFY_TOO_SLOW_STORAGE_MEDIA,
+       EG_NOTIFY_UNSUPPORTED_FORMAT,
+       EG_NOTIFY_MAX_RECORDING_TIME,
+       EG_NOTIFY_NEED_TO_DELAY,
+       EG_NOTIFY_BIAS_TRACKING_START,
+       EG_NOTIFY_BIAS_TRACKING_FINISH,
+       EG_NOTIFY_BIAS_TRACKING_IS_DONE,
+
+       // TBD
+       EG_NOTIFY_TBD_0,
+       EG_NOTIFY_TBD_1,
+       EG_NOTIFY_TBD_2,
+       EG_NOTIFY_TBD_3,
+       EG_NOTIFY_TBD_4,
+       EG_NOTIFY_TBD_5,
+       EG_NOTIFY_TBD_6,
+       EG_NOTIFY_TBD_7,
+       EG_NOTIFY_TBD_8,
+       EG_NOTIFY_TBD_9,
+
+       EG_NOTIFY_NUM
+} EG_NOTIFY;
+
+#ifdef __cplusplus
+typedef enum : uint64
+{
+       EG_EIGHTCC_ZERO = 0x0LL,
+       EG_EIGHTCC_NONE = 0x4E4F4E4500000000LL,
+       EG_EIGHTCC_UNKNOWN = 0x554E4B4E4F574E00LL,
+
+       // 
+       EG_EIGHTCC_SINT8 = 0x53494E5438000000LL,
+       EG_EIGHTCC_UINT8 = 0x55494E5438000000LL,
+       EG_EIGHTCC_SINT16 = 0x53494E5431360000LL,
+       EG_EIGHTCC_UINT16 = 0x55494E5431360000LL,
+       EG_EIGHTCC_SINT32 = 0x53494E5433320000LL,
+       EG_EIGHTCC_UINT32 = 0x55494E5433320000LL,
+       EG_EIGHTCC_SINT64 = 0x53494E5436340000LL,
+       EG_EIGHTCC_UINT64 = 0x55494E5436340000LL,
+       EG_EIGHTCC_FLOAT32 = 0x46374F4154333200LL,
+       EG_EIGHTCC_FLOAT64 = 0x46374F4154363400LL,
+       EG_EIGHTCC_GHANDLE = 0x4748414E444C4500LL,
+
+       // Text
+       EG_EIGHTCC_ASCII = 0x4153434949000000LL,
+       EG_EIGHTCC_UTF_8 = 0x5554462D38000000LL,
+       EG_EIGHTCC_C949 = 0x4339343900000000LL,
+       EG_EIGHTCC_EUC_KR = 0x4555432D4B520000LL,
+
+       // Picture
+       EG_EIGHTCC_RED8 = 0x5245443800000000LL,
+       EG_EIGHTCC_GREEN8 = 0x475245454E380000LL,
+       EG_EIGHTCC_BLUE8 = 0x424C554538000000LL,
+       EG_EIGHTCC_RGB24 = 0x5247423234000000LL,
+       EG_EIGHTCC_RGB24P = 0x5247423234500000LL,
+       EG_EIGHTCC_RGBA32 = 0x5247424133320000LL,
+       EG_EIGHTCC_RGBA32P = 0x5247424133325000LL,
+       EG_EIGHTCC_BGR24 = 0x4247523234000000LL,
+       EG_EIGHTCC_BGR24P = 0x4247523234500000LL,
+       EG_EIGHTCC_BGRA32 = 0x4247524133320000LL,
+       EG_EIGHTCC_BGRA32P = 0x4247524133325000LL,
+       EG_EIGHTCC_ARGB32 = 0x4152474233320000LL,
+       EG_EIGHTCC_ARGB32P = 0x4152474233325000LL,
+       EG_EIGHTCC_Y8 = 0x5938000000000000LL,
+       EG_EIGHTCC_U8 = 0x5538000000000000LL,
+       EG_EIGHTCC_V8 = 0x5638000000000000LL,
+       EG_EIGHTCC_CB8 = 0x4342380000000000LL,
+       EG_EIGHTCC_CR8 = 0x4352380000000000LL,
+       EG_EIGHTCC_YCC4208P = 0x5943433432303850LL,
+       EG_EIGHTCC_NV12 = 0x4E56313200000000LL,
+       EG_EIGHTCC_NV21 = 0x4E56323100000000LL,
+       EG_EIGHTCC_BMP = 0x424D500000000000LL,
+       EG_EIGHTCC_JPEG = 0x4A50454700000000LL,
+
+       // Audio
+       EG_EIGHTCC_LPCM8M = 0x3750434D384D0000LL,
+       EG_EIGHTCC_LPCM8S = 0x3750434D38530000LL,
+       EG_EIGHTCC_LPCM16M = 0x3750434D31364D00LL,
+       EG_EIGHTCC_LPCM16S = 0x3750434D31365300LL,
+       EG_EIGHTCC_ADPCM = 0x414450434D000000LL,
+       EG_EIGHTCC_ULAW = 0x554C415700000000LL,
+       EG_EIGHTCC_IMAADPCM = 0x494D41414450434DLL,
+       EG_EIGHTCC_MP2 = 0x4D50320000000000LL,
+       EG_EIGHTCC_MP3 = 0x4D50330000000000LL,
+       EG_EIGHTCC_AAC = 0x4141430000000000LL,
+       EG_EIGHTCC_AACLC = 0x4141434C43000000LL,
+
+       // Video
+       EG_EIGHTCC_M4V = 0x4D34560000000000LL,
+       EG_EIGHTCC_AVC = 0x4156430000000000LL,
+
+       // Container
+       EG_EIGHTCC_MP4 = 0x4D50340000000000LL,
+       EG_EIGHTCC_M4A = 0x4D34410000000000LL,
+
+       // Compression
+       EG_EIGHTCC_ZLIB = 0x5A4C494200000000LL,
+
+       // Device
+       EG_EIGHTCC_TSP_SENSOR = 0x5453502D53454E53LL,
+       EG_EIGHTCC_ATTITUDE_SENSOR = 0x415454492D53454ELL,
+       EG_EIGHTCC_CAMERA = 0x43414D4552410000LL,
+       EG_EIGHTCC_RENDERER = 0x52454E4445524552LL,
+       EG_EIGHTCC_SRENDERER = 0x5352454E44455245LL,
+       EG_EIGHTCC_ARENDERER = 0x4152454E44455245LL,
+       EG_EIGHTCC_VRENDERER = 0x5652454E44455245LL,
+       EG_EIGHTCC_COMPOSER = 0x434F4D504F534552LL,
+       EG_EIGHTCC_ACOMPOSER = 0x41434F4D504F5345LL,
+       EG_EIGHTCC_VCOMPOSER = 0x56434F4D504F5345LL,
+       EG_EIGHTCC_CONTAINER = 0x434F4E5441494E45LL,
+
+       // Semantics
+       EG_EIGHTCC_ID = 0x4944000000000000LL,
+       EG_EIGHTCC_SOURCE = 0x534F555243450000LL,
+       EG_EIGHTCC_DEST = 0x4445535400000000LL,
+       EG_EIGHTCC_THEME = 0x5448454D45000000LL,
+       EG_EIGHTCC_TRANSITION_THEME = 0x54522D5448454D45LL,
+       EG_EIGHTCC_PARAM = 0x504152414D000000LL,
+       EG_EIGHTCC_URL = 0x55524C0000000000LL,
+       EG_EIGHTCC_BGM = 0x42474D0000000000LL,
+       EG_EIGHTCC_PICTURE = 0x5049435455524500LL,
+       EG_EIGHTCC_AUDIO = 0x415544494F000000LL,
+       EG_EIGHTCC_VIDEO = 0x564944454F000000LL,
+       EG_EIGHTCC_STREAM = 0x53545245414D0000LL,
+       EG_EIGHTCC_TIME = 0x54494D4500000000LL,
+       EG_EIGHTCC_RECTANGLE = 0x52454354414E474CLL,
+       EG_EIGHTCC_SPHERE = 0x5350484552450000LL,
+       EG_EIGHTCC_DEPTH = 0x4445505448000000LL,
+       EG_EIGHTCC_ORIENTATION = 0x4F5249454E544154LL,
+       EG_EIGHTCC_DURATION_MS = 0x44555241542D4D53LL,//DURAT-MS
+       EG_EIGHTCC_SPEED_RATE = 0x5350452D52415445LL,//SPE-RATE
+       EG_EIGHTCC_MOTIONBLUR = 0x4D4F54494F4E424CLL,
+
+       // Transform
+       EG_EIGHTCC_TRANSFORM = 0x5452414E53464F52LL,
+       EG_EIGHTCC_TRANSFORM_TRS = 0x5452414E2D545253LL,//'TRAN-TRS',
+       EG_EIGHTCC_TRANSFORM_RTS = 0x5452414E2D525453LL,//'TRAN-RTS',
+       EG_EIGHTCC_TRANSFORM_STR = 0x5452414E2D535452LL,//'TRAN-STR',
+       EG_EIGHTCC_TRANSLATION = 0x5452414E534C4154LL,
+       EG_EIGHTCC_ROTATION = 0x524F544154494F4ELL,
+       EG_EIGHTCC_ROTATION_YXZ = 0x524F54412D59585ALL,//'ROTA-YXZ',
+       EG_EIGHTCC_ROTATION_XYZ = 0x524F54412D58595ALL,//'ROTA-XYZ',
+       EG_EIGHTCC_SCALE = 0x5343414C45000000LL,
+
+       //
+       EG_EIGHTCC_ARG0 = 0x4152473000000000LL,
+       EG_EIGHTCC_ARG1 = 0x4152473100000000LL,
+       EG_EIGHTCC_ARG2 = 0x4152473200000000LL,
+       EG_EIGHTCC_ARG3 = 0x4152473300000000LL,
+       EG_EIGHTCC_ARG4 = 0x4152473400000000LL,
+       EG_EIGHTCC_ARG5 = 0x4152473500000000LL,
+       EG_EIGHTCC_ARG6 = 0x4152473600000000LL,
+       EG_EIGHTCC_ARG7 = 0x4152473700000000LL,
+       EG_EIGHTCC_ARG8 = 0x4152473800000000LL,
+       EG_EIGHTCC_ARG9 = 0x4152473900000000LL,
+
+       // BJ
+       EG_EIGHTCC_BJML = 0x424A4D4C00000000LL,
+       EG_EIGHTCC_BJDOC = 0x424A444F43000000LL,
+       EG_EIGHTCC_BJD_AES = 0x424A444F2D414553LL,
+       EG_EIGHTCC_BJD_DES = 0x424A444F2D444553LL,
+       // BJT
+       EG_EIGHTCC_BJT_TEST = 0x424A542D54455354LL,
+#if 0
+       EG_EIGHTCC_BJT_24HOURS = 0x424A542DLL,
+       EG_EIGHTCC_BJT_ALBUM = 0x424A542DLL,
+       EG_EIGHTCC_BJT_COMIC_BOOK = 0x424A542DLL,
+       EG_EIGHTCC_BJT_DAILY_STORY = 0x424A542DLL,
+       EG_EIGHTCC_BJT_FISHEYE = 0x424A542DLL,
+       EG_EIGHTCC_BJT_FLIP_BOOK = 0x424A542DLL,
+       EG_EIGHTCC_BJT_FOCUS = 0x424A542DLL,
+       EG_EIGHTCC_BJT_FOCUS_CHANGE = 0x424A542DLL,
+       EG_EIGHTCC_BJT_FRAME_ART = 0x424A542DLL,
+       EG_EIGHTCC_BJT_MOON_WALK = 0x424A542DLL,
+       EG_EIGHTCC_BJT_PANORAMA_MOVIE = 0x424A542DLL,
+       EG_EIGHTCC_BJT_PANORAMA_MOVIE_2 = 0x424A542DLL,
+       EG_EIGHTCC_BJT_PHOTO_STORY = 0x424A542DLL,
+       EG_EIGHTCC_BJT_PLAYBACK = 0x424A542DLL,
+       EG_EIGHTCC_BJT_POLAROID = 0x424A542DLL,
+       EG_EIGHTCC_BJT_RGB = 0x424A542DLL,
+       EG_EIGHTCC_BJT_SLOW_MOTION = 0x424A542DLL,
+       EG_EIGHTCC_BJT_STEP = 0x424A542DLL,
+       EG_EIGHTCC_BJT_STOP_MOTION = 0x424A542DLL,
+       EG_EIGHTCC_BJT_SWITCH_MOVIE = 0x424A542DLL,
+       EG_EIGHTCC_BJT_VIEWPOINT = 0x424A542DLL,
+       EG_EIGHTCC_BJT_VIRTUAL_INSANITY = 0x424A542DLL,
+       EG_EIGHTCC_BJT_ZOOM = 0x424A542DLL,
+       EG_EIGHTCC_BJT_ZOOM_AND_FLASH = 0x424A542DLL,
+#endif
+       EG_EIGHTCC_BJT_TSP_SERVICE = 0x424A542D54535053LL,
+       EG_EIGHTCC_BJT_SPHERICAL_MOSAIC_CAPTURE = 0x424A542D534D4341LL,
+       EG_EIGHTCC_BJT_SPHERICAL_MOSAIC_VIEW = 0x424A542D534D5649LL,
+       EG_EIGHTCC_BJT_SPHERICAL_MOSAIC_VIEW2 = 0x424A542D534D5632LL,
+       EG_EIGHTCC_BJT_SPHERICAL_MOSAIC_VIEW3 = 0x424A542D534D5633LL,
+       EG_EIGHTCC_BJT_FTFR = 0x424A542D46544652LL,
+       EG_EIGHTCC_BJT_TBD_0 = 0x424A542D54424430LL,
+       EG_EIGHTCC_BJT_TBD_1 = 0x424A542D54424431LL,
+       EG_EIGHTCC_BJT_TBD_2 = 0x424A542D54424432LL,
+       EG_EIGHTCC_BJT_TBD_3 = 0x424A542D54424433LL,
+       EG_EIGHTCC_BJT_TBD_4 = 0x424A542D54424434LL,
+#if 0
+       // BJTT
+       EG_EIGHTCC_BJTT_BAR = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_COVER = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_CURL_PAGE = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_FLIP_OVER = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_OVERLAP = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_PAN = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_TILE = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_WINDMILL = 0x424A54542DLL,
+       EG_EIGHTCC_BJTT_WIPE = 0x424A54542DLL,
+#endif
+
+       //
+       EG_EIGHTCC_GRFV1 = 0x4752465631000000LL,
+} EG_EIGHTCC;
+#endif
+
+typedef enum// : sint32
+{
+       EG_TYPE_VOID = 0,
+       EG_TYPE_SINT8,
+       EG_TYPE_UINT8,
+       EG_TYPE_SINT16,
+       EG_TYPE_UINT16,
+       EG_TYPE_SINT32,
+       EG_TYPE_UINT32,
+       EG_TYPE_SINT64,
+       EG_TYPE_UINT64,
+       EG_TYPE_SINT128,
+       EG_TYPE_UINT128,
+       EG_TYPE_FLOAT32,
+       EG_TYPE_FLOAT64,
+       EG_TYPE_FLOAT128,
+       EG_TYPE_NUM
+} EG_TYPE;
+
+typedef enum// : sint32
+{
+       EG_ROUNDING_ROUND = 0,
+       EG_ROUNDING_CEIL,
+       EG_ROUNDING_FLOOR
+} EG_ROUNDING;
+
+typedef enum// : sint32
+{
+       EG_COORD_SYSTEM_ORTHOGONAL = 0,
+       EG_COORD_SYSTEM_SPHERICAL,
+       EG_COORD_SYSTEM_CYLINDRICAL,
+       EG_COORD_SYSTEM_NUM,
+} EG_COORD_SYSTEM;
+
+typedef enum// : sint32
+{
+       EG_ROTATION_0 = 0,
+       EG_ROTATION_90,
+       EG_ROTATION_180,
+       EG_ROTATION_270,
+       EG_ROTATION_NUM,
+} EG_ROTATION;
+
+typedef enum// : sint32
+{
+       EG_OCS_BASIS_X = 0,
+       EG_OCS_BASIS_Y,
+       EG_OCS_BASIS_Z,
+       EG_OCS_BASIS_NUM,
+} EG_OCS_BASIS; //Orthogonal Coordinates System
+
+typedef enum// : sint32
+{
+       EG_GYRO_BASIS_YAW = 0,//rotate y
+       EG_GYRO_BASIS_PITCH,//rotate x
+       EG_GYRO_BASIS_ROLL,//rotate z
+       EG_GYRO_BASIS_NUM,
+} EG_GYRO_BASIS; //Gyroscope System
+
+typedef enum// : sint32
+{
+       EG_TRANSFORM_ORDER_NONE = -1,
+       EG_TRANSFORM_ORDER_TRS_RYXZ,
+       EG_TRANSFORM_ORDER_TRS_RXYZ,
+       EG_TRANSFORM_ORDER_RTS_RYXZ,
+       EG_TRANSFORM_ORDER_RTS_RXYZ,
+       EG_TRANSFORM_ORDER_STR_RYXZ,
+       EG_TRANSFORM_ORDER_STR_RXYZ,
+       EG_TRANSFORM_ORDER_NUM
+} EG_TRANSFORM_ORDER;
+
+typedef enum// : sint32
+{
+       EG_DIRECTION_LEFT = 0,
+       EG_DIRECTION_LEFT_TOP,
+       EG_DIRECTION_TOP,
+       EG_DIRECTION_RIGHT_TOP,
+       EG_DIRECTION_RIGHT,
+       EG_DIRECTION_RIGHT_BOTTOM,
+       EG_DIRECTION_BOTTOM,
+       EG_DIRECTION_LEFT_BOTTOM,
+       EG_DIRECTION_NUM
+} EG_DIRECTION;
+
+typedef enum// : sint32
+{
+       EG_RELATIONSHIP_NONE = -1,
+       EG_RELATIONSHIP_LEFT,
+       EG_RELATIONSHIP_UP,
+       EG_RELATIONSHIP_RIGHT,
+       EG_RELATIONSHIP_DOWN,
+       EG_RELATIONSHIP_NUM
+} EG_RELATIONSHIP;
+
+typedef enum// : sint32
+{
+       EG_RELATIONSHIP2_NONE = -1,
+       EG_RELATIONSHIP2_LEFT,
+       EG_RELATIONSHIP2_UP,
+       EG_RELATIONSHIP2_RIGHT,
+       EG_RELATIONSHIP2_DOWN,
+       EG_RELATIONSHIP2_LEFT_UP,
+       EG_RELATIONSHIP2_LEFT_DOWN,
+       EG_RELATIONSHIP2_RIGHT_UP,
+       EG_RELATIONSHIP2_RIGHT_DOWN,
+       EG_RELATIONSHIP2_NUM
+} EG_RELATIONSHIP2;
+
+typedef enum// : sint32
+{
+       EG_RGB_CHANNEL_RED = 0,
+       EG_RGB_CHANNEL_GREEN,
+       EG_RGB_CHANNEL_BLUE,
+       EG_RGB_CHANNEL_NUM
+} EG_RGB_CHANNEL;
+
+typedef enum// : sint32
+{
+       EG_BGR_CHANNEL_BLUE = 0,
+       EG_BGR_CHANNEL_GREEN,
+       EG_BGR_CHANNEL_RED,
+       EG_BGR_CHANNEL_NUM
+} EG_BGR_CHANNEL;
+
+typedef enum// : sint32
+{
+       EG_ARGB_CHANNEL_ALPHA = 0,
+       EG_ARGB_CHANNEL_RED,
+       EG_ARGB_CHANNEL_GREEN,
+       EG_ARGB_CHANNEL_BLUE,
+       EG_ARGB_CHANNEL_NUM
+} EG_ARGB_CHANNEL;
+
+typedef enum// : sint32
+{
+       EG_ABGR_CHANNEL_ALPHA = 0,
+       EG_ABGR_CHANNEL_BLUE,
+       EG_ABGR_CHANNEL_GREEN,
+       EG_ABGR_CHANNEL_RED,
+       EG_ABGR_CHANNEL_NUM
+} EG_ABGR_CHANNEL;
+
+typedef enum// : sint32
+{
+       EG_BGRA_CHANNEL_BLUE = 0,
+       EG_BGRA_CHANNEL_GREEN,
+       EG_BGRA_CHANNEL_RED,
+       EG_BGRA_CHANNEL_ALPHA,
+       EG_BGRA_CHANNEL_NUM
+} EG_BGRA_CHANNEL;
+
+typedef enum// : sint32
+{
+       EG_YCC_COMPONENT_Y = 0,
+       EG_YCC_COMPONENT_CB,
+       EG_YCC_COMPONENT_CR,
+       EG_YCC_COMPONENT_NUM
+} EG_YCC_COMPONENT;
+
+typedef enum// : sint32
+{
+       EG_INTERPOLATION_NONE = -1,
+       EG_INTERPOLATION_NEAREST_NEIGHBOR,
+       EG_INTERPOLATION_LINEAR,
+       EG_INTERPOLATION_CUBIC,
+       EG_INTERPOLATION_SUPER_SAMPLING,
+       EG_INTERPOLATION_BEST,
+       EG_INTERPOLATION_NUM
+} EG_INTERPOLATION;
+
+typedef enum// : sint32
+{
+       EG_HAND_NONE = 0,
+       EG_HAND_LEFT,
+       EG_HAND_RIGHT,
+       EG_HAND_BOTH,
+       EG_HAND_NUM
+} EG_HAND;
+
+typedef enum// : sint32
+{
+       EG_HILL_NONE = 0,
+       EG_HILL_SYMMETRY,
+       EG_HILL_LEFT_TOP,
+       EG_HILL_RIGHT_TOP,
+       EG_HILL_NUM
+} EG_HILL;
+
+typedef enum// : sint32
+{
+       EG_OUTPUT_NONE = 0,
+       EG_OUTPUT_INPLACE,
+       EG_OUTPUT_OUTPLACE,
+} EG_OUTPUT;
+
+typedef enum// : sint32
+{
+       EG_POWER_NONE = 0,
+       EG_POWER_INTERNAL_BATTERY,
+       EG_POWER_EXTERNAL_USB = 10,
+       EG_POWER_EXTERNAL_AC,
+       EG_POWER_EXTERNAL_WIRELESS,
+} EG_POWER;
+
+// ! struct
+#pragma pack( 1 )
+#if defined( DG_PLATFORM_WINDOWS_GENERIC )
+#else
+// BMP
+typedef struct tagBITMAPINFOHEADER
+{
+       uint32 biSize;
+       sint32 biWidth;
+       sint32 biHeight;
+       uint16 biPlanes;
+       uint16 biBitCount;
+       uint32 biCompression;
+       uint32 biSizeImage;
+       sint32 biXPelsPerMeter;
+       sint32 biYPelsPerMeter;
+       uint32 biClrUsed;
+       uint32 biClrImportant;
+} BITMAPINFOHEADER;
+
+typedef struct tagBITMAPFILEHEADER
+{
+       uint16 bfType;
+       uint32 bfSize;
+       uint16 bfReserved1;
+       uint16 bfReserved2;
+       uint32 bfOffBits;
+} BITMAPFILEHEADER;
+#endif
+
+// WAV
+typedef struct
+{
+       uint32 u32ChunkId;
+       uint32 u32ChunkSize;
+} WAVECHUNKHEADER;
+
+typedef struct
+{
+       uint16 wFormatTag;
+       uint16 nChannels;
+       uint32 nSamplesPerSec;
+       uint32 nAvgBytesPerSec;
+       uint16 nBlockAlign;
+       uint16 wBitsPerSample;
+} WAVEFORMATHEADER;
+
+//
+#ifdef __cplusplus
+typedef struct SGParam
+{
+       EG_EIGHTCC eMajorType, eMinorType;
+       union
+       {
+               struct
+               {
+                       union{ sint8 s8Param1; uint8 u8Param1; sint16 s16Param1; uint16 u16Param1; sint32 s32Param1; uint32 u32Param1; sint64 s64Param1; uint64 u64Param1; float32 f32Param1; float64 f64Param1; GHANDLE hParam1; };
+                       union{ sint8 s8Param2; uint8 u8Param2; sint16 s16Param2; uint16 u16Param2; sint32 s32Param2; uint32 u32Param2; sint64 s64Param2; uint64 u64Param2; float32 f32Param2; float64 f64Param2; GHANDLE hParam2; };
+                       union{ sint8 s8Param3; uint8 u8Param3; sint16 s16Param3; uint16 u16Param3; sint32 s32Param3; uint32 u32Param3; sint64 s64Param3; uint64 u64Param3; float32 f32Param3; float64 f64Param3; GHANDLE hParam3; };
+                       union{ sint8 s8Param4; uint8 u8Param4; sint16 s16Param4; uint16 u16Param4; sint32 s32Param4; uint32 u32Param4; sint64 s64Param4; uint64 u64Param4; float32 f32Param4; float64 f64Param4; GHANDLE hParam4; };
+                       union{ sint8 s8Param5; uint8 u8Param5; sint16 s16Param5; uint16 u16Param5; sint32 s32Param5; uint32 u32Param5; sint64 s64Param5; uint64 u64Param5; float32 f32Param5; float64 f64Param5; GHANDLE hParam5; };
+                       union{ sint8 s8Param6; uint8 u8Param6; sint16 s16Param6; uint16 u16Param6; sint32 s32Param6; uint32 u32Param6; sint64 s64Param6; uint64 u64Param6; float32 f32Param6; float64 f64Param6; GHANDLE hParam6; };
+                       union{ sint8 s8Param7; uint8 u8Param7; sint16 s16Param7; uint16 u16Param7; sint32 s32Param7; uint32 u32Param7; sint64 s64Param7; uint64 u64Param7; float32 f32Param7; float64 f64Param7; GHANDLE hParam7; };
+                       union{ sint8 s8Param8; uint8 u8Param8; sint16 s16Param8; uint16 u16Param8; sint32 s32Param8; uint32 u32Param8; sint64 s64Param8; uint64 u64Param8; float32 f32Param8; float64 f64Param8; GHANDLE hParam8; };
+                       union{ sint8 s8Param9; uint8 u8Param9; sint16 s16Param9; uint16 u16Param9; sint32 s32Param9; uint32 u32Param9; sint64 s64Param9; uint64 u64Param9; float32 f32Param9; float64 f64Param9; GHANDLE hParam9; };
+                       union{ sint8 s8Param10; uint8 u8Param10; sint16 s16Param10; uint16 u16Param10; sint32 s32Param10; uint32 u32Param10; sint64 s64Param10; uint64 u64Param10; float32 f32Param10; float64 f64Param10; GHANDLE hParam10; };
+               };
+               uint8 pu8Param[DG_PARAM_SIZE];
+       };
+} TGParam;
+
+typedef struct SGPicture
+{
+       EG_EIGHTCC eFormat;
+       uint16 u16Width, u16Height;
+       uint16 u16PitchX, u16PitchY;
+       uint32 u32Reserved;
+       uint8 *pu8Bit;
+} TGPicture;
+
+typedef struct SGAudio
+{
+       EG_EIGHTCC eFormat;
+       uint16 u16ChannelNum;
+       uint16 u16SamplingRate;
+       uint32 u32DurationMs;
+       uint32 u32Reserved;
+       uint8 *pu8Bit;
+} TGAudio;
+
+typedef struct SGVideo
+{
+       EG_EIGHTCC eFormat;
+       uint16 u16Width, u16Height;
+       uint16 u16PitchX, u16PitchY;
+       uint16 u16FpHectoS;
+       uint32 u32DurationMs;
+       uint32 u32Reserved;
+       uint8 *pu8Bit;
+} TGVideo;
+#endif
+
+typedef struct SGPoint
+{
+       union{ sint8 s8X; sint16 s16X; sint32 s32X; sint64 s64X; float32 f32X; float64 f64X; };
+       union{ sint8 s8Y; sint16 s16Y; sint32 s32Y; sint64 s64Y; float32 f32Y; float64 f64Y; };
+       union{ sint8 s8Level; sint16 s16Level; sint32 s32Level; sint64 s64Level; float32 f32Level; float64 f64Level; };
+} TGPoint;
+
+typedef struct SGLine
+{
+       union{ sint8 s8X; sint16 s16X; sint32 s32X; sint64 s64X; float32 f32X; float64 f64X; };
+       union{ sint8 s8Y; sint16 s16Y; sint32 s32Y; sint64 s64Y; float32 f32Y; float64 f64Y; };
+       union{ sint8 s8Level; sint16 s16Level; sint32 s32Level; sint64 s64Level; float32 f32Level; float64 f64Level; };
+       union{ sint8 s8Grad; sint16 s16Grad; sint32 s32Grad; sint64 s64Grad; float32 f32Grad; float64 f64Grad; };
+       union{ sint8 s8Width; sint16 s16Width; sint32 s32Width; sint64 s64Width; float32 f32Width; float64 f64Width; };
+} TGLine;
+
+typedef struct SGRect
+{
+       union{ sint8 s8X; sint16 s16X; sint32 s32X; sint64 s64X; float32 f32X; float64 f64X; };
+       union{ sint8 s8Y; sint16 s16Y; sint32 s32Y; sint64 s64Y; float32 f32Y; float64 f64Y; };
+       union{ sint8 s8Width; sint16 s16Width; sint32 s32Width; sint64 s64Width; float32 f32Width; float64 f64Width; };
+       union{ sint8 s8Height; sint16 s16Height; sint32 s32Height; sint64 s64Height; float32 f32Height; float64 f64Height; };
+} TGRect;
+
+typedef struct SGPeak
+{
+       union{ sint8 s8X; sint16 s16X; sint32 s32X; sint64 s64X; float32 f32X; float64 f64X; };
+       union{ sint8 s8Y; sint16 s16Y; sint32 s32Y; sint64 s64Y; float32 f32Y; float64 f64Y; };
+       union{ sint8 s8Level; sint16 s16Level; sint32 s32Level; sint64 s64Level; float32 f32Level; float64 f64Level; };
+       union{ sint8 s8Width; sint16 s16Width; sint32 s32Width; sint64 s64Width; float32 f32Width; float64 f64Width; };
+       union{ sint8 s8Height; sint16 s16Height; sint32 s32Height; sint64 s64Height; float32 f32Height; float64 f64Height; };
+       union{ sint8 s8Area; sint16 s16Area; sint32 s32Area; sint64 s64Area; float32 f32Area; float64 f64Area; };
+
+       union{ sint8 s8GradLeft; sint16 s16GradLeft; sint32 s32GradLeft; sint64 s64GradLeft; float32 f32GradLeft; float64 f64GradLeft; };
+       union{ sint8 s8GradRight; sint16 s16GradRight; sint32 s32GradRight; sint64 s64GradRight; float32 f32GradRight; float64 f64GradRight; };
+       union{ sint8 s8GradTop; sint16 s16GradTop; sint32 s32GradTop; sint64 s64GradTop; float32 f32GradTop; float64 f64GradTop; };
+       union{ sint8 s8GradBottom; sint16 s16GradBottom; sint32 s32GradBottom; sint64 s64GradBottom; float32 f32GradBottom; float64 f64GradBottom; };
+       union{ sint8 s8GradLeftTop; sint16 s16GradLeftTop; sint32 s32GradLeftTop; sint64 s64GradLeftTop; float32 f32GradLeftTop; float64 f64GradLeftTop; };
+       union{ sint8 s8GradRightTop; sint16 s16GradRightTop; sint32 s32GradRightTop; sint64 s64GradRightTop; float32 f32GradRightTop; float64 f64GradRightTop; };
+       union{ sint8 s8GradRightBottom; sint16 s16GradRightBottom; sint32 s32GradRightBottom; sint64 s64GradRightBottom; float32 f32GradRightBottom; float64 f64GradRightBottom; };
+       union{ sint8 s8GradLeftBottom; sint16 s16GradLeftBottom; sint32 s32GradLeftBottom; sint64 s64GradLeftBottom; float32 f32GradLeftBottom; float64 f64GradLeftBottom; };
+       union{ sint8 s8GradLeft2; sint16 s16GradLeft2; sint32 s32GradLeft2; sint64 s64GradLeft2; float32 f32GradLeft2; float64 f64GradLeft2; };
+       union{ sint8 s8GradRight2; sint16 s16GradRight2; sint32 s32GradRight2; sint64 s64GradRight2; float32 f32GradRight2; float64 f64GradRight2; };
+       union{ sint8 s8GradTop2; sint16 s16GradTop2; sint32 s32GradTop2; sint64 s64GradTop2; float32 f32GradTop2; float64 f64GradTop2; };
+       union{ sint8 s8GradBottom2; sint16 s16GradBottom2; sint32 s32GradBottom2; sint64 s64GradBottom2; float32 f32GradBottom2; float64 f64GradBottom2; };
+       union{ sint8 s8GradLeftTop2; sint16 s16GradLeftTop2; sint32 s32GradLeftTop2; sint64 s64GradLeftTop2; float32 f32GradLeftTop2; float64 f64GradLeftTop2; };
+       union{ sint8 s8GradRightTop2; sint16 s16GradRightTop2; sint32 s32GradRightTop2; sint64 s64GradRightTop2; float32 f32GradRightTop2; float64 f64GradRightTop2; };
+       union{ sint8 s8GradRightBottom2; sint16 s16GradRightBottom2; sint32 s32GradRightBottom2; sint64 s64GradRightBottom2; float32 f32GradRightBottom2; float64 f64GradRightBottom2; };
+       union{ sint8 s8GradLeftBottom2; sint16 s16GradLeftBottom2; sint32 s32GradLeftBottom2; sint64 s64GradLeftBottom2; float32 f32GradLeftBottom2; float64 f64GradLeftBottom2; };
+       
+       union{ sint8 s8RadiusLeft; sint16 s16RadiusLeft; sint32 s32RadiusLeft; sint64 s64RadiusLeft; float32 f32RadiusLeft; float64 f64RadiusLeft; };
+       union{ sint8 s8RadiusRight; sint16 s16RadiusRight; sint32 s32RadiusRight; sint64 s64RadiusRight; float32 f32RadiusRight; float64 f64RadiusRight; };
+
+       EG_HILL eHillType;
+       
+       union{ sint8 s8Id; sint16 s16Id; sint32 s32Id; sint64 s64Id; };
+       union{ uint32 u32TimeStamp; uint64 u64TimeStamp; };
+       union{ sint32 s32Age; sint64 s64Age; };
+       sint32 s32Moving;
+} TGPeak;
+#pragma pack()
+
+// ! API
+#ifdef __cplusplus
+#include "GOal/GMutex.h"
+
+class DG_API CGAtomicOperation
+{
+public:
+       CGAtomicOperation( CGMutex* );
+       virtual ~CGAtomicOperation();
+
+protected:
+       CGMutex *m_pcMutex;
+};
+
+class DG_API CGObject : public CGMutex
+{
+       friend class CGAtomicOperation;
+
+public:
+       CGObject( CGObject* );
+       // ! destructor의 시작에, CGAtomicOperation cAo( this ); 기입!
+       // ! destructor에서, 절대, virtual 멤버를 접근하지 말 것!
+       virtual ~CGObject();
+
+       // 1. Close()를 implement한 경우, 반드시, 자체 destructor에서 CG자체::Close()를 호출 할 것!
+       // 2. 다른 context가, 본 class 계통의 virtual을 참조 하고, Close()로 관계를 정리하는 경우
+       // - 1번을 따르지 말 것!
+       // - 반드시, destructor 진입 전에, Close()를 불러서, 관계를 미리 정리 할 것!
+       // 3. 특별한 상황이 아니면, 마지막에 Close()를 명시적으로 부르는 것이 원칙!
+       virtual EG_RESULT Close() = 0;
+
+protected:
+       CGObject *m_pcParent;
+
+public:
+       CGObject* GetParent();
+};
+
+// GGraphics
+#include "GGraphics/GRasterGraphics/GRasterGraphics.h"
+#include "GGraphics/GVectorGraphics/GOgl/GOgl.h"
+
+// GMath
+#include "GMath/GMath.h"
+
+// GOal
+#include "GOal/GStream.h"
+#include "GOal/GThread.h"
+#include "GOal/GTime.h"
+#include "GOal/GTimer.h"
+
+// GSound
+#include "GSound/GSound.h"
+
+// GUtil
+#include "GUtil/GBit.h"
+#include "GUtil/GCodec.h"
+#include "GUtil/GDump.h"
+#include "GUtil/GJava.h"
+#include "GUtil/GLinkedList.h"
+#include "GUtil/GLog.h"
+#include "GUtil/GMemBlock.h"
+#include "GUtil/GObjManager.h"
+#include "GUtil/GResourceFormat.h"
+#include "GUtil/GStringUtf8.h"
+
+// GSystem
+#include "GProcess.h"
+
+//
+class DG_API CGSystem
+{
+public:
+       static CGMutex sm_cPrintfMutex;
+       static TCHAR sm_ptcPrintfBuf[DG_KERNEL_PAGE_SIZE];
+
+       static CGProcess sm_cProcess;
+
+public:
+       static void SDbgPrint( const char*, uint32, const char*, void*, EG_TYPE, sint32, sint32 = 0 );
+
+       static void SDelay( uint32 );
+
+       static uint16 SH2N16( uint16 );
+       static uint32 SH2N32( uint32 );
+       static uint64 SH2N64( uint64 );
+
+       static EG_EIGHTCC SS2Ecc( TCHAR* );
+       static void SEcc2S( TCHAR*, EG_EIGHTCC );
+
+       static sint32 SMakeStorageId( CGStringUtf8* );
+};
+#endif
diff --git a/drivers/input/touchscreen/synaptics_dsx/Multiverse/Makefile b/drivers/input/touchscreen/synaptics_dsx/Multiverse/Makefile
new file mode 100644 (file)
index 0000000..30c27ef
--- /dev/null
@@ -0,0 +1 @@
+obj-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_DSX)    += GMvBrane.o GMvSystem.o
\ No newline at end of file
diff --git a/drivers/input/touchscreen/synaptics_dsx/rmi_db.c b/drivers/input/touchscreen/synaptics_dsx/rmi_db.c
new file mode 100644 (file)
index 0000000..e8d9c1c
--- /dev/null
@@ -0,0 +1,513 @@
+/* Synaptics Register Mapped Interface (RMI4) I2C Physical Layer Driver.
+ * Copyright (c) 2007-2012, Synaptics Incorporated
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <asm/siginfo.h>
+#include <mach/cpufreq.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/gpio.h>
+#include <linux/uaccess.h>
+#include <linux/signal.h>
+#include <linux/i2c/synaptics_rmi.h>
+#include "synaptics_i2c_rmi.h"
+
+#define REG_ADDR_LIMIT 0xFFFF
+
+static ssize_t rmidb_sysfs_data_show(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t rmidb_sysfs_data_store(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t rmidb_sysfs_pid_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_pid_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidb_sysfs_term_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidb_sysfs_address_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_address_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidb_sysfs_length_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_length_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidb_sysfs_query_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_control_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_data_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmidb_sysfs_command_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+struct rmidb_handle {
+       pid_t pid;
+       unsigned char intr_mask;
+       unsigned char intr_reg_num;
+       unsigned short query_base_addr;
+       unsigned short control_base_addr;
+       unsigned short data_base_addr;
+       unsigned short command_base_addr;
+       unsigned short address;
+       unsigned int length;
+       struct siginfo interrupt_signal;
+       struct siginfo terminate_signal;
+       struct task_struct *task;
+       struct synaptics_rmi4_data *rmi4_data;
+       struct synaptics_rmi4_exp_fn_ptr *fn_ptr;
+       struct kobject *sysfs_dir;
+};
+
+static struct bin_attribute attr_data = {
+       .attr = {
+               .name = "data",
+               .mode = (S_IRUGO | S_IWUSR | S_IWGRP),
+       },
+       .size = 0,
+       .read = rmidb_sysfs_data_show,
+       .write = rmidb_sysfs_data_store,
+};
+
+static struct device_attribute attrs[] = {
+       __ATTR(pid, S_IRUGO | S_IWUSR | S_IWGRP,
+                       rmidb_sysfs_pid_show,
+                       rmidb_sysfs_pid_store),
+       __ATTR(term, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       rmidb_sysfs_term_store),
+       __ATTR(address, S_IRUGO | S_IWUSR | S_IWGRP,
+                       rmidb_sysfs_address_show,
+                       rmidb_sysfs_address_store),
+       __ATTR(length, S_IRUGO | S_IWUSR | S_IWGRP,
+                       rmidb_sysfs_length_show,
+                       rmidb_sysfs_length_store),
+       __ATTR(query_base_addr, S_IRUGO,
+                       rmidb_sysfs_query_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(control_base_addr, S_IRUGO,
+                       rmidb_sysfs_control_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(data_base_addr, S_IRUGO,
+                       rmidb_sysfs_data_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(command_base_addr, S_IRUGO,
+                       rmidb_sysfs_command_base_addr_show,
+                       synaptics_rmi4_store_error),
+};
+
+static struct rmidb_handle *rmidb;
+
+static ssize_t rmidb_sysfs_data_show(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       int retval;
+       unsigned int data_length = rmidb->length;
+
+       if (data_length > (REG_ADDR_LIMIT - rmidb->address))
+               data_length = REG_ADDR_LIMIT - rmidb->address;
+
+       if (count < data_length) {
+               tsp_debug_err(true, &rmidb->rmi4_data->i2c_client->dev,
+                               "%s: Not enough space (%d bytes) in buffer\n",
+                               __func__, count);
+               return -EINVAL;
+       }
+
+       if (data_length) {
+               retval = rmidb->fn_ptr->read(rmidb->rmi4_data,
+                               rmidb->address,
+                               (unsigned char *)buf,
+                               data_length);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmidb->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read data\n",
+                                       __func__);
+                       return retval;
+               }
+       } else {
+               return -EINVAL;
+       }
+
+       return data_length;
+}
+
+static ssize_t rmidb_sysfs_data_store(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       int retval;
+       unsigned int data_length = rmidb->length;
+
+       if (data_length > (REG_ADDR_LIMIT - rmidb->address))
+               data_length = REG_ADDR_LIMIT - rmidb->address;
+
+       if (data_length) {
+               retval = rmidb->fn_ptr->write(rmidb->rmi4_data,
+                               rmidb->address,
+                               (unsigned char *)buf,
+                               data_length);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmidb->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write data\n",
+                                       __func__);
+                       return retval;
+               }
+       } else {
+               return -EINVAL;
+       }
+
+       return count;
+}
+
+static ssize_t rmidb_sysfs_pid_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", rmidb->pid);
+}
+
+static ssize_t rmidb_sysfs_pid_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       rmidb->pid = input;
+
+       if (rmidb->pid) {
+               rmidb->task = pid_task(find_vpid(rmidb->pid), PIDTYPE_PID);
+               if (!rmidb->task) {
+                       tsp_debug_err(true, &rmidb->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to locate debug app PID\n",
+                                       __func__);
+                       return -EINVAL;
+               }
+       }
+
+       return count;
+}
+
+static ssize_t rmidb_sysfs_term_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input != 1)
+               return -EINVAL;
+
+       if (rmidb->pid)
+               send_sig_info(SIGTERM, &rmidb->terminate_signal, rmidb->task);
+
+       return count;
+}
+
+static ssize_t rmidb_sysfs_address_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n", rmidb->address);
+}
+
+static ssize_t rmidb_sysfs_address_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input > REG_ADDR_LIMIT)
+               return -EINVAL;
+
+       rmidb->address = (unsigned short)input;
+
+       return count;
+}
+
+static ssize_t rmidb_sysfs_length_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", rmidb->length);
+}
+
+static ssize_t rmidb_sysfs_length_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input > REG_ADDR_LIMIT)
+               return -EINVAL;
+
+       rmidb->length = input;
+
+       return count;
+}
+
+static ssize_t rmidb_sysfs_query_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n", rmidb->query_base_addr);
+}
+
+static ssize_t rmidb_sysfs_control_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n", rmidb->control_base_addr);
+}
+
+static ssize_t rmidb_sysfs_data_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n", rmidb->data_base_addr);
+}
+
+static ssize_t rmidb_sysfs_command_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n", rmidb->command_base_addr);
+}
+
+static int rmidb_scan_pdt(void)
+{
+       int retval;
+       unsigned short ii;
+       unsigned char page;
+       unsigned char intr_count = 0;
+       unsigned char intr_offset;
+       bool fdb_found = false;
+       struct synaptics_rmi4_fn_desc rmi_fd;
+
+       for (page = 0; page < PAGES_TO_SERVICE; page++) {
+               for (ii = PDT_START; ii > PDT_END; ii -= PDT_ENTRY_SIZE) {
+                       ii |= (page << 8);
+
+                       retval = rmidb->fn_ptr->read(rmidb->rmi4_data,
+                                       ii,
+                                       (unsigned char *)&rmi_fd,
+                                       sizeof(rmi_fd));
+                       if (retval < 0)
+                               return retval;
+
+                       if (!rmi_fd.fn_number)
+                               break;
+
+                       if (rmi_fd.fn_number == SYNAPTICS_RMI4_FDB) {
+                               fdb_found = true;
+                               goto fdb_found;
+                       }
+
+                       intr_count += (rmi_fd.intr_src_count & MASK_3BIT);
+               }
+       }
+
+       if (!fdb_found) {
+               tsp_debug_err(true, &rmidb->rmi4_data->i2c_client->dev,
+                               "%s: Failed to find FDB\n",
+                               __func__);
+               return 0;
+       }
+
+fdb_found:
+       rmidb->query_base_addr = rmi_fd.query_base_addr | (page << 8);
+       rmidb->control_base_addr = rmi_fd.ctrl_base_addr | (page << 8);
+       rmidb->data_base_addr = rmi_fd.data_base_addr | (page << 8);
+       rmidb->command_base_addr = rmi_fd.cmd_base_addr | (page << 8);
+
+       rmidb->intr_reg_num = (intr_count + 7) / 8;
+       if (rmidb->intr_reg_num != 0)
+               rmidb->intr_reg_num -= 1;
+
+       rmidb->intr_mask = 0;
+       intr_offset = intr_count % 8;
+       for (ii = intr_offset;
+                       ii < ((rmi_fd.intr_src_count & MASK_3BIT) +
+                               intr_offset);
+                       ii++) {
+               rmidb->intr_mask |= 1 << ii;
+       }
+
+       return 0;
+}
+
+static void rmidb_attn(struct synaptics_rmi4_data *rmi4_data,
+               unsigned char intr_mask)
+{
+       if (!rmidb)
+               return;
+
+       if (rmidb->pid && (rmidb->intr_mask & intr_mask))
+               send_sig_info(SIGIO, &rmidb->interrupt_signal, rmidb->task);
+
+       return;
+}
+
+static int rmidb_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char attr_count;
+       int attr_count_num;
+
+       rmidb = kzalloc(sizeof(*rmidb), GFP_KERNEL);
+       if (!rmidb) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for rmidb\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_rmidb;
+       }
+
+       rmidb->fn_ptr =  kzalloc(sizeof(*(rmidb->fn_ptr)), GFP_KERNEL);
+       if (!rmidb->fn_ptr) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fn_ptr\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_fn_ptr;
+       }
+
+       memset(&rmidb->interrupt_signal, 0, sizeof(rmidb->interrupt_signal));
+       rmidb->interrupt_signal.si_signo = SIGIO;
+       rmidb->interrupt_signal.si_code = SI_USER;
+
+       memset(&rmidb->terminate_signal, 0, sizeof(rmidb->terminate_signal));
+       rmidb->terminate_signal.si_signo = SIGTERM;
+       rmidb->terminate_signal.si_code = SI_USER;
+
+       rmidb->fn_ptr->read = rmi4_data->i2c_read;
+       rmidb->fn_ptr->write = rmi4_data->i2c_write;
+       rmidb->fn_ptr->enable = rmi4_data->irq_enable;
+       rmidb->rmi4_data = rmi4_data;
+
+       retval = rmidb_scan_pdt();
+       if (retval < 0) {
+               retval = 0;
+               goto err_scan_pdt;
+       }
+
+       rmidb->sysfs_dir = kobject_create_and_add("rmidb",
+                       &rmi4_data->input_dev->dev.kobj);
+       if (!rmidb->sysfs_dir) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs directory\n",
+                               __func__);
+               retval = -ENODEV;
+               goto err_sysfs_dir;
+       }
+
+       retval = sysfs_create_bin_file(rmidb->sysfs_dir,
+                       &attr_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs bin file\n",
+                               __func__);
+               goto err_sysfs_bin;
+       }
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               retval = sysfs_create_file(rmidb->sysfs_dir,
+                               &attrs[attr_count].attr);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->input_dev->dev,
+                                       "%s: Failed to create sysfs attributes\n",
+                                       __func__);
+                       retval = -ENODEV;
+                       goto err_sysfs_attrs;
+               }
+       }
+
+       return 0;
+
+err_sysfs_attrs:
+       attr_count_num = (int)attr_count;
+       for (attr_count_num--; attr_count_num >= 0; attr_count_num--)
+               sysfs_remove_file(rmidb->sysfs_dir, &attrs[attr_count].attr);
+
+       sysfs_remove_bin_file(rmidb->sysfs_dir, &attr_data);
+
+err_sysfs_bin:
+       kobject_put(rmidb->sysfs_dir);
+
+err_sysfs_dir:
+err_scan_pdt:
+       kfree(rmidb->fn_ptr);
+
+err_fn_ptr:
+       kfree(rmidb);
+       rmidb = NULL;
+
+err_rmidb:
+       return retval;
+}
+
+static void rmidb_remove(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char attr_count;
+
+       if (!rmidb)
+               goto exit;
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++)
+               sysfs_remove_file(rmidb->sysfs_dir, &attrs[attr_count].attr);
+
+       sysfs_remove_bin_file(rmidb->sysfs_dir, &attr_data);
+
+       kobject_put(rmidb->sysfs_dir);
+
+       kfree(rmidb->fn_ptr);
+       kfree(rmidb);
+       rmidb = NULL;
+
+exit:
+       return;
+}
+
+int rmidb_module_register(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = synaptics_rmi4_new_function(RMI_DB,
+                       rmi4_data,
+                       rmidb_init,
+                       NULL,
+                       rmidb_remove,
+                       rmidb_attn);
+
+       return retval;
+}
diff --git a/drivers/input/touchscreen/synaptics_dsx/rmi_dev.c b/drivers/input/touchscreen/synaptics_dsx/rmi_dev.c
new file mode 100644 (file)
index 0000000..c152687
--- /dev/null
@@ -0,0 +1,760 @@
+/*
+ * Synaptics DSX touchscreen driver
+ *
+ * Copyright (C) 2012 Synaptics Incorporated
+ *
+ * Copyright (C) 2012 Alexandra Chin <alexandra.chin@tw.synaptics.com>
+ * Copyright (C) 2012 Scott Lin <scott.lin@tw.synaptics.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/gpio.h>
+#include <linux/uaccess.h>
+#include <linux/cdev.h>
+#include "synaptics_i2c_rmi.h"
+
+#define CHAR_DEVICE_NAME "rmi"
+#define DEVICE_CLASS_NAME "rmidev"
+#define SYSFS_FOLDER_NAME "rmidev"
+#define DEV_NUMBER 1
+#define REG_ADDR_LIMIT 0xFFFF
+
+static ssize_t rmidev_sysfs_data_show(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t rmidev_sysfs_data_store(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t rmidev_sysfs_open_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidev_sysfs_release_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t rmidev_sysfs_attn_state_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+struct rmidev_handle {
+       dev_t dev_no;
+       struct device dev;
+       struct synaptics_rmi4_data *rmi4_data;
+       struct synaptics_rmi4_exp_fn_ptr *fn_ptr;
+       struct kobject *sysfs_dir;
+       void *data;
+       bool irq_enabled;
+};
+
+struct rmidev_data {
+       int ref_count;
+       struct cdev main_dev;
+       struct class *device_class;
+       struct mutex file_mutex;
+       struct rmidev_handle *rmi_dev;
+};
+
+static struct bin_attribute attr_data = {
+       .attr = {
+               .name = "data",
+               .mode = (S_IRUGO | S_IWUSR | S_IWGRP),
+       },
+       .size = 0,
+       .read = rmidev_sysfs_data_show,
+       .write = rmidev_sysfs_data_store,
+};
+
+static struct device_attribute attrs[] = {
+       __ATTR(open, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       rmidev_sysfs_open_store),
+       __ATTR(release, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       rmidev_sysfs_release_store),
+       __ATTR(attn_state, S_IRUGO,
+                       rmidev_sysfs_attn_state_show,
+                       synaptics_rmi4_store_error),
+};
+
+static int rmidev_major_num;
+
+static struct class *rmidev_device_class;
+
+static struct rmidev_handle *rmidev;
+
+static irqreturn_t rmidev_sysfs_irq(int irq, void *data)
+{
+       struct synaptics_rmi4_data *rmi4_data = data;
+
+       sysfs_notify(&rmi4_data->input_dev->dev.kobj,
+                       SYSFS_FOLDER_NAME, "attn_state");
+
+       return IRQ_HANDLED;
+}
+
+static int rmidev_sysfs_irq_enable(struct synaptics_rmi4_data *rmi4_data,
+               bool enable)
+{
+       int retval = 0;
+       unsigned char intr_status[MAX_INTR_REGISTERS];
+       unsigned long irq_flags = IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING;
+
+       if (enable) {
+               if (rmidev->irq_enabled)
+                       return retval;
+
+               /* Clear interrupts first */
+               retval = rmidev->fn_ptr->read(rmi4_data,
+                               rmi4_data->f01_data_base_addr + 1,
+                               intr_status,
+                               rmi4_data->num_of_intr_regs);
+               if (retval < 0)
+                       return retval;
+
+               retval = request_threaded_irq(rmi4_data->irq, NULL,
+                               rmidev_sysfs_irq, irq_flags,
+                               "synaptics_dsx_rmidev", rmi4_data);
+               if (retval < 0) {
+                       dev_err(&rmi4_data->i2c_client->dev,
+                                       "%s: Failed to create irq thread\n",
+                                       __func__);
+                       return retval;
+               }
+
+               rmidev->irq_enabled = true;
+       } else {
+               if (rmidev->irq_enabled) {
+                       disable_irq(rmi4_data->irq);
+                       free_irq(rmi4_data->irq, rmi4_data);
+                       rmidev->irq_enabled = false;
+               }
+       }
+
+       return retval;
+}
+
+static ssize_t rmidev_sysfs_data_show(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       int retval;
+       unsigned int length = (unsigned int)count;
+       unsigned short address = (unsigned short)pos;
+
+       if (length > (REG_ADDR_LIMIT - address)) {
+               dev_err(&rmidev->rmi4_data->i2c_client->dev,
+                               "%s: Out of register map limit\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       if (length) {
+               retval = rmidev->fn_ptr->read(rmidev->rmi4_data,
+                               address,
+                               (unsigned char *)buf,
+                               length);
+               if (retval < 0) {
+                       dev_err(&rmidev->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read data\n",
+                                       __func__);
+                       return retval;
+               }
+       } else {
+               return -EINVAL;
+       }
+
+       return length;
+}
+
+static ssize_t rmidev_sysfs_data_store(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       int retval;
+       unsigned int length = (unsigned int)count;
+       unsigned short address = (unsigned short)pos;
+
+       if (length > (REG_ADDR_LIMIT - address)) {
+               dev_err(&rmidev->rmi4_data->i2c_client->dev,
+                               "%s: Out of register map limit\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       if (length) {
+               retval = rmidev->fn_ptr->write(rmidev->rmi4_data,
+                               address,
+                               (unsigned char *)buf,
+                               length);
+               if (retval < 0) {
+                       dev_err(&rmidev->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write data\n",
+                                       __func__);
+                       return retval;
+               }
+       } else {
+               return -EINVAL;
+       }
+
+       return length;
+}
+
+static ssize_t rmidev_sysfs_open_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = rmidev->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input != 1)
+               return -EINVAL;
+
+       rmidev->fn_ptr->enable(rmi4_data, false);
+       rmidev_sysfs_irq_enable(rmi4_data, true);
+
+       dev_dbg(&rmidev->rmi4_data->i2c_client->dev,
+                       "%s: Attention interrupt disabled\n",
+                       __func__);
+
+       return count;
+}
+
+static ssize_t rmidev_sysfs_release_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = rmidev->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input != 1)
+               return -EINVAL;
+
+       rmidev_sysfs_irq_enable(rmi4_data, false);
+       rmidev->fn_ptr->enable(rmi4_data, true);
+
+       dev_dbg(&rmidev->rmi4_data->i2c_client->dev,
+                       "%s: Attention interrupt enabled\n",
+                       __func__);
+
+       return count;
+}
+
+static ssize_t rmidev_sysfs_attn_state_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       int attn_state;
+
+       attn_state = gpio_get_value(rmidev->rmi4_data->board->gpio);
+
+       return snprintf(buf, PAGE_SIZE, "%u\n", attn_state);
+}
+
+/*
+ * rmidev_llseek - used to set up register address
+ *
+ * @filp: file structure for seek
+ * @off: offset
+ *   if whence == SEEK_SET,
+ *     high 16 bits: page address
+ *     low 16 bits: register address
+ *   if whence == SEEK_CUR,
+ *     offset from current position
+ *   if whence == SEEK_END,
+ *     offset from end position (0xFFFF)
+ * @whence: SEEK_SET, SEEK_CUR, or SEEK_END
+ */
+static loff_t rmidev_llseek(struct file *filp, loff_t off, int whence)
+{
+       loff_t newpos;
+       struct rmidev_data *dev_data = filp->private_data;
+
+       if (IS_ERR(dev_data)) {
+               pr_err("%s: Pointer of char device data is invalid", __func__);
+               return -EBADF;
+       }
+
+       mutex_lock(&(dev_data->file_mutex));
+
+       switch (whence) {
+       case SEEK_SET:
+               newpos = off;
+               break;
+       case SEEK_CUR:
+               newpos = filp->f_pos + off;
+               break;
+       case SEEK_END:
+               newpos = REG_ADDR_LIMIT + off;
+               break;
+       default:
+               newpos = -EINVAL;
+               goto clean_up;
+       }
+
+       if (newpos < 0 || newpos > REG_ADDR_LIMIT) {
+               dev_err(&rmidev->rmi4_data->i2c_client->dev,
+                               "%s: New position 0x%04x is invalid\n",
+                               __func__, (unsigned int)newpos);
+               newpos = -EINVAL;
+               goto clean_up;
+       }
+
+       filp->f_pos = newpos;
+
+clean_up:
+       mutex_unlock(&(dev_data->file_mutex));
+
+       return newpos;
+}
+
+/*
+ * rmidev_read: - use to read data from rmi device
+ *
+ * @filp: file structure for read
+ * @buf: user space buffer pointer
+ * @count: number of bytes to read
+ * @f_pos: offset (starting register address)
+ */
+static ssize_t rmidev_read(struct file *filp, char __user *buf,
+               size_t count, loff_t *f_pos)
+{
+       ssize_t retval;
+       unsigned char tmpbuf[count + 1];
+       struct rmidev_data *dev_data = filp->private_data;
+
+       if (IS_ERR(dev_data)) {
+               pr_err("%s: Pointer of char device data is invalid", __func__);
+               return -EBADF;
+       }
+
+       if (count == 0)
+               return 0;
+
+       if (count > (REG_ADDR_LIMIT - *f_pos))
+               count = REG_ADDR_LIMIT - *f_pos;
+
+       mutex_lock(&(dev_data->file_mutex));
+
+       retval = rmidev->fn_ptr->read(rmidev->rmi4_data,
+                       *f_pos,
+                       tmpbuf,
+                       count);
+       if (retval < 0)
+               goto clean_up;
+
+       if (copy_to_user(buf, tmpbuf, count))
+               retval = -EFAULT;
+       else
+               *f_pos += retval;
+
+clean_up:
+       mutex_unlock(&(dev_data->file_mutex));
+
+       return retval;
+}
+
+/*
+ * rmidev_write: - used to write data to rmi device
+ *
+ * @filep: file structure for write
+ * @buf: user space buffer pointer
+ * @count: number of bytes to write
+ * @f_pos: offset (starting register address)
+ */
+static ssize_t rmidev_write(struct file *filp, const char __user *buf,
+               size_t count, loff_t *f_pos)
+{
+       ssize_t retval;
+       unsigned char tmpbuf[count + 1];
+       struct rmidev_data *dev_data = filp->private_data;
+
+       if (IS_ERR(dev_data)) {
+               pr_err("%s: Pointer of char device data is invalid", __func__);
+               return -EBADF;
+       }
+
+       if (count == 0)
+               return 0;
+
+       if (count > (REG_ADDR_LIMIT - *f_pos))
+               count = REG_ADDR_LIMIT - *f_pos;
+
+       if (copy_from_user(tmpbuf, buf, count))
+               return -EFAULT;
+
+       mutex_lock(&(dev_data->file_mutex));
+
+       retval = rmidev->fn_ptr->write(rmidev->rmi4_data,
+                       *f_pos,
+                       tmpbuf,
+                       count);
+       if (retval >= 0)
+               *f_pos += retval;
+
+       mutex_unlock(&(dev_data->file_mutex));
+
+       return retval;
+}
+
+/*
+ * rmidev_open: enable access to rmi device
+ * @inp: inode struture
+ * @filp: file structure
+ */
+static int rmidev_open(struct inode *inp, struct file *filp)
+{
+       int retval = 0;
+       struct rmidev_data *dev_data =
+               container_of(inp->i_cdev, struct rmidev_data, main_dev);
+
+       if (!dev_data)
+               return -EACCES;
+
+       filp->private_data = dev_data;
+
+       mutex_lock(&(dev_data->file_mutex));
+
+       rmidev->fn_ptr->enable(rmidev->rmi4_data, false);
+       dev_dbg(&rmidev->rmi4_data->i2c_client->dev,
+                       "%s: Attention interrupt disabled\n",
+                       __func__);
+
+       if (dev_data->ref_count < 1)
+               dev_data->ref_count++;
+       else
+               retval = -EACCES;
+
+       mutex_unlock(&(dev_data->file_mutex));
+
+       return retval;
+}
+
+/*
+ * rmidev_release: - release access to rmi device
+ * @inp: inode structure
+ * @filp: file structure
+ */
+static int rmidev_release(struct inode *inp, struct file *filp)
+{
+       struct rmidev_data *dev_data =
+               container_of(inp->i_cdev, struct rmidev_data, main_dev);
+
+       if (!dev_data)
+               return -EACCES;
+
+       mutex_lock(&(dev_data->file_mutex));
+
+       dev_data->ref_count--;
+       if (dev_data->ref_count < 0)
+               dev_data->ref_count = 0;
+
+       rmidev->fn_ptr->enable(rmidev->rmi4_data, true);
+       dev_dbg(&rmidev->rmi4_data->i2c_client->dev,
+                       "%s: Attention interrupt enabled\n",
+                       __func__);
+
+       mutex_unlock(&(dev_data->file_mutex));
+
+       return 0;
+}
+
+static const struct file_operations rmidev_fops = {
+       .owner = THIS_MODULE,
+       .llseek = rmidev_llseek,
+       .read = rmidev_read,
+       .write = rmidev_write,
+       .open = rmidev_open,
+       .release = rmidev_release,
+};
+
+static void rmidev_device_cleanup(struct rmidev_data *dev_data)
+{
+       dev_t devno;
+
+       if (dev_data) {
+               devno = dev_data->main_dev.dev;
+
+               if (dev_data->device_class)
+                       device_destroy(dev_data->device_class, devno);
+
+               cdev_del(&dev_data->main_dev);
+
+               unregister_chrdev_region(devno, 1);
+
+               dev_dbg(&rmidev->rmi4_data->i2c_client->dev,
+                               "%s: rmidev device removed\n",
+                               __func__);
+       }
+
+       return;
+}
+
+static char *rmi_char_devnode(struct device *dev, umode_t *mode)
+{
+       if (!mode)
+               return NULL;
+
+       *mode = (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH);
+
+       return kasprintf(GFP_KERNEL, "rmi/%s", dev_name(dev));
+}
+
+static int rmidev_create_device_class(void)
+{
+       rmidev_device_class = class_create(THIS_MODULE, DEVICE_CLASS_NAME);
+
+       if (IS_ERR(rmidev_device_class)) {
+               pr_err("%s: Failed to create /dev/%s\n",
+                               __func__, CHAR_DEVICE_NAME);
+               return -ENODEV;
+       }
+
+       rmidev_device_class->devnode = rmi_char_devnode;
+
+       return 0;
+}
+
+static int rmidev_init_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       dev_t dev_no;
+       unsigned char attr_count;
+       struct rmidev_data *dev_data;
+       struct device *device_ptr;
+
+       rmidev = kzalloc(sizeof(*rmidev), GFP_KERNEL);
+       if (!rmidev) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for rmidev\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_rmidev;
+       }
+
+       rmidev->fn_ptr =  kzalloc(sizeof(*(rmidev->fn_ptr)), GFP_KERNEL);
+       if (!rmidev) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fn_ptr\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_fn_ptr;
+       }
+
+       rmidev->fn_ptr->read = rmi4_data->i2c_read;
+       rmidev->fn_ptr->write = rmi4_data->i2c_write;
+       rmidev->fn_ptr->enable = rmi4_data->irq_enable;
+       rmidev->rmi4_data = rmi4_data;
+
+       retval = rmidev_create_device_class();
+       if (retval < 0) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to create device class\n",
+                               __func__);
+               goto err_device_class;
+       }
+
+       if (rmidev_major_num) {
+               dev_no = MKDEV(rmidev_major_num, DEV_NUMBER);
+               retval = register_chrdev_region(dev_no, 1, CHAR_DEVICE_NAME);
+       } else {
+               retval = alloc_chrdev_region(&dev_no, 0, 1, CHAR_DEVICE_NAME);
+               if (retval < 0) {
+                       dev_err(&rmi4_data->i2c_client->dev,
+                                       "%s: Failed to allocate char device region\n",
+                                       __func__);
+                       goto err_device_region;
+               }
+
+               rmidev_major_num = MAJOR(dev_no);
+               dev_dbg(&rmi4_data->i2c_client->dev,
+                               "%s: Major number of rmidev = %d\n",
+                               __func__, rmidev_major_num);
+       }
+
+       dev_data = kzalloc(sizeof(*dev_data), GFP_KERNEL);
+       if (!dev_data) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for dev_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_dev_data;
+       }
+
+       mutex_init(&dev_data->file_mutex);
+       dev_data->rmi_dev = rmidev;
+       rmidev->data = dev_data;
+
+       cdev_init(&dev_data->main_dev, &rmidev_fops);
+
+       retval = cdev_add(&dev_data->main_dev, dev_no, 1);
+       if (retval < 0) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to add rmi char device\n",
+                               __func__);
+               goto err_char_device;
+       }
+
+       dev_set_name(&rmidev->dev, "rmidev%d", MINOR(dev_no));
+       dev_data->device_class = rmidev_device_class;
+
+       device_ptr = device_create(dev_data->device_class, NULL, dev_no,
+                       NULL, CHAR_DEVICE_NAME"%d", MINOR(dev_no));
+       if (IS_ERR(device_ptr)) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to create rmi char device\n",
+                               __func__);
+               retval = -ENODEV;
+               goto err_char_device;
+       }
+
+       retval = gpio_export(rmi4_data->board->gpio, false);
+       if (retval < 0) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to export attention gpio\n",
+                               __func__);
+       } else {
+               retval = gpio_export_link(&(rmi4_data->input_dev->dev),
+                               "attn", rmi4_data->board->gpio);
+               if (retval < 0) {
+                       dev_err(&rmi4_data->input_dev->dev,
+                                       "%s Failed to create gpio symlink\n",
+                                       __func__);
+               } else {
+                       dev_dbg(&rmi4_data->input_dev->dev,
+                                       "%s: Exported attention gpio %d\n",
+                                       __func__, rmi4_data->board->gpio);
+               }
+       }
+
+       rmidev->sysfs_dir = kobject_create_and_add(SYSFS_FOLDER_NAME,
+                       &rmi4_data->input_dev->dev.kobj);
+       if (!rmidev->sysfs_dir) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs directory\n",
+                               __func__);
+               retval = -ENODEV;
+               goto err_sysfs_dir;
+       }
+
+       retval = sysfs_create_bin_file(rmidev->sysfs_dir,
+                       &attr_data);
+       if (retval < 0) {
+               dev_err(&rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs bin file\n",
+                               __func__);
+               goto err_sysfs_bin;
+       }
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               retval = sysfs_create_file(rmidev->sysfs_dir,
+                               &attrs[attr_count].attr);
+               if (retval < 0) {
+                       dev_err(&rmi4_data->input_dev->dev,
+                                       "%s: Failed to create sysfs attributes\n",
+                                       __func__);
+                       retval = -ENODEV;
+                       goto err_sysfs_attrs;
+               }
+       }
+
+       return 0;
+
+err_sysfs_attrs:
+       if (attr_count > 0) {
+               for (; attr_count > 0; attr_count--)
+                       sysfs_remove_file(rmidev->sysfs_dir, &attrs[attr_count - 1].attr);
+       }
+       sysfs_remove_bin_file(rmidev->sysfs_dir, &attr_data);
+
+err_sysfs_bin:
+       kobject_put(rmidev->sysfs_dir);
+
+err_sysfs_dir:
+err_char_device:
+       rmidev_device_cleanup(dev_data);
+       mutex_destroy(&dev_data->file_mutex);
+       kfree(dev_data);
+
+err_dev_data:
+       unregister_chrdev_region(dev_no, 1);
+
+err_device_region:
+       class_destroy(rmidev_device_class);
+
+err_device_class:
+       kfree(rmidev->fn_ptr);
+
+err_fn_ptr:
+       kfree(rmidev);
+       rmidev = NULL;
+
+err_rmidev:
+       return retval;
+}
+
+static void rmidev_remove_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char attr_count;
+       struct rmidev_data *dev_data;
+
+       if (!rmidev)
+               goto exit;
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++)
+               sysfs_remove_file(rmidev->sysfs_dir, &attrs[attr_count].attr);
+
+       sysfs_remove_bin_file(rmidev->sysfs_dir, &attr_data);
+
+       kobject_put(rmidev->sysfs_dir);
+
+       dev_data = rmidev->data;
+       if (dev_data) {
+               rmidev_device_cleanup(dev_data);
+               mutex_destroy(&dev_data->file_mutex);
+               kfree(dev_data);
+       }
+
+       unregister_chrdev_region(rmidev->dev_no, 1);
+
+       class_destroy(rmidev_device_class);
+
+       kfree(rmidev->fn_ptr);
+       kfree(rmidev);
+       rmidev = NULL;
+
+exit:
+       return;
+}
+
+int rmidev_module_register(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = synaptics_rmi4_new_function(RMI_DEV,
+                       rmi4_data,
+                       rmidev_init_device,
+                       NULL,
+                       rmidev_remove_device,
+                       NULL);
+
+       return retval;
+}
diff --git a/drivers/input/touchscreen/synaptics_dsx/rmi_f54.c b/drivers/input/touchscreen/synaptics_dsx/rmi_f54.c
new file mode 100644 (file)
index 0000000..30f49d9
--- /dev/null
@@ -0,0 +1,6325 @@
+/*
+ * Synaptics DSX touchscreen driver
+ *
+ * Copyright (C) 2012 Synaptics Incorporated
+ *
+ * Copyright (C) 2012 Alexandra Chin <alexandra.chin@tw.synaptics.com>
+ * Copyright (C) 2012 Scott Lin <scott.lin@tw.synaptics.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/ctype.h>
+#include <linux/hrtimer.h>
+#include <linux/firmware.h>
+#include <linux/gpio.h>
+
+#include "synaptics_i2c_rmi.h"
+
+
+#define FACTORY_MODE
+#define USE_ACTIVE_REPORT_RATE
+
+#define CMD_GET_REPORT 1
+
+#define TSP_RAWCAP_MAX 6000
+#define TSP_RAWCAP_MIN 300
+#define TSP_DELTA_MAX  10
+#define TSP_DELTA_MIN  -10
+
+#define WATCHDOG_HRTIMER
+#define WATCHDOG_TIMEOUT_S 2
+#define FORCE_TIMEOUT_100MS 10
+#define STATUS_WORK_INTERVAL 20 /* ms */
+
+/*
+#define RAW_HEX
+#define HUMAN_READABLE
+ */
+
+#define STATUS_IDLE 0
+#define STATUS_BUSY 1
+#define STATUS_ERROR 2
+
+#define DATA_REPORT_INDEX_OFFSET 1
+#define DATA_REPORT_DATA_OFFSET 3
+
+#define SENSOR_RX_MAPPING_OFFSET 1
+#define SENSOR_TX_MAPPING_OFFSET 2
+
+#define COMMAND_GET_REPORT 1
+#define COMMAND_FORCE_CAL 2
+#define COMMAND_FORCE_UPDATE 4
+
+#define CONTROL_42_SIZE 2
+#define CONTROL_43_54_SIZE 13
+#define CONTROL_55_56_SIZE 2
+#define CONTROL_58_SIZE 1
+#define CONTROL_59_SIZE 2
+#define CONTROL_60_62_SIZE 3
+#define CONTROL_63_SIZE 1
+#define CONTROL_64_67_SIZE 4
+#define CONTROL_68_73_SIZE 8
+#define CONTROL_74_SIZE 2
+#define CONTROL_76_SIZE 1
+#define CONTROL_77_78_SIZE 2
+#define CONTROL_79_83_SIZE 5
+#define CONTROL_84_85_SIZE 2
+#define CONTROL_86_SIZE 1
+#define CONTROL_87_SIZE 1
+#define CONTROL_89_SIZE 1
+#define CONTROL_90_SIZE 1
+#define CONTROL_91_SIZE 1
+#define CONTROL_92_SIZE 1
+#define CONTROL_93_SIZE 1
+
+#define HIGH_RESISTANCE_DATA_SIZE 6
+#define FULL_RAW_CAP_MIN_MAX_DATA_SIZE 4
+#define TREX_DATA_SIZE 7
+
+#define NO_AUTO_CAL_MASK 0x01
+
+#define concat(a, b) a##b
+#define tostring(x) (#x)
+
+#define GROUP(_attrs) {\
+       .attrs = _attrs,\
+}
+
+#define attrify(propname) (&dev_attr_##propname.attr)
+
+#define show_prototype(propname)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_show)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               char *buf);\
+\
+struct device_attribute dev_attr_##propname =\
+               __ATTR(propname, S_IRUGO,\
+               concat(synaptics_rmi4_f54, _##propname##_show),\
+               synaptics_rmi4_store_error);
+
+#define store_prototype(propname)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_store)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               const char *buf, size_t count);\
+\
+struct device_attribute dev_attr_##propname =\
+               __ATTR(propname, S_IWUSR | S_IWGRP,\
+               synaptics_rmi4_show_error,\
+               concat(synaptics_rmi4_f54, _##propname##_store));
+
+#define show_store_prototype(propname)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_show)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               char *buf);\
+\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_store)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               const char *buf, size_t count);\
+\
+struct device_attribute dev_attr_##propname =\
+               __ATTR(propname, (S_IRUGO | S_IWUSR | S_IWGRP),\
+               concat(synaptics_rmi4_f54, _##propname##_show),\
+               concat(synaptics_rmi4_f54, _##propname##_store));
+
+#define simple_show_func(rtype, propname, fmt)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_show)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               char *buf)\
+{\
+       return snprintf(buf, PAGE_SIZE, fmt, f54->rtype.propname);\
+} \
+
+#define simple_show_func_unsigned(rtype, propname)\
+simple_show_func(rtype, propname, "%u\n")
+
+#define show_func(rtype, rgrp, propname, fmt)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_show)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               char *buf)\
+{\
+       int retval;\
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;\
+\
+       mutex_lock(&f54->rtype##_mutex);\
+\
+       retval = f54->fn_ptr->read(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       f54->rtype.rgrp->data,\
+                       sizeof(f54->rtype.rgrp->data));\
+       mutex_unlock(&f54->rtype##_mutex);\
+       if (retval < 0) {\
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to read " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+               return retval;\
+       } \
+\
+       return snprintf(buf, PAGE_SIZE, fmt,\
+                       f54->rtype.rgrp->propname);\
+} \
+
+#define show_store_func(rtype, rgrp, propname, fmt)\
+show_func(rtype, rgrp, propname, fmt)\
+\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_store)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               const char *buf, size_t count)\
+{\
+       int retval;\
+       unsigned long setting;\
+       unsigned long o_setting;\
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;\
+\
+       retval = kstrtoul(buf, 10, &setting);\
+       if (retval)\
+               return retval;\
+\
+       mutex_lock(&f54->rtype##_mutex);\
+       retval = f54->fn_ptr->read(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       f54->rtype.rgrp->data,\
+                       sizeof(f54->rtype.rgrp->data));\
+       if (retval < 0) {\
+               mutex_unlock(&f54->rtype##_mutex);\
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to read " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+               return retval;\
+       } \
+\
+       if (f54->rtype.rgrp->propname == setting) {\
+               mutex_unlock(&f54->rtype##_mutex);\
+               return count;\
+       } \
+\
+       o_setting = f54->rtype.rgrp->propname;\
+       f54->rtype.rgrp->propname = setting;\
+\
+       retval = f54->fn_ptr->write(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       f54->rtype.rgrp->data,\
+                       sizeof(f54->rtype.rgrp->data));\
+       if (retval < 0) {\
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to write " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+               f54->rtype.rgrp->propname = o_setting;\
+               mutex_unlock(&f54->rtype##_mutex);\
+               return retval;\
+       } \
+\
+       mutex_unlock(&f54->rtype##_mutex);\
+       return count;\
+} \
+
+#define show_store_func_unsigned(rtype, rgrp, propname)\
+show_store_func(rtype, rgrp, propname, "%u\n")
+
+#define show_replicated_func(rtype, rgrp, propname, fmt)\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_show)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               char *buf)\
+{\
+       int retval;\
+       int size = 0;\
+       unsigned char ii;\
+       unsigned char length;\
+       unsigned char *temp;\
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;\
+\
+       mutex_lock(&f54->rtype##_mutex);\
+\
+       length = f54->rtype.rgrp->length;\
+\
+       retval = f54->fn_ptr->read(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       (unsigned char *)f54->rtype.rgrp->data,\
+                       length);\
+       mutex_unlock(&f54->rtype##_mutex);\
+       if (retval < 0) {\
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to read " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+       } \
+\
+       temp = buf;\
+\
+       for (ii = 0; ii < length; ii++) {\
+               retval = snprintf(temp, PAGE_SIZE - size, fmt " ",\
+                               f54->rtype.rgrp->data[ii].propname);\
+               if (retval < 0) {\
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                                       "%s: Faild to write output\n",\
+                                       __func__);\
+                       return retval;\
+               } \
+               size += retval;\
+               temp += retval;\
+       } \
+\
+       retval = snprintf(temp, PAGE_SIZE - size, "\n");\
+       if (retval < 0) {\
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                               "%s: Faild to write null terminator\n",\
+                               __func__);\
+               return retval;\
+       } \
+\
+       return size + retval;\
+} \
+
+#define show_replicated_func_unsigned(rtype, rgrp, propname)\
+show_replicated_func(rtype, rgrp, propname, "%u")
+
+#define show_store_replicated_func(rtype, rgrp, propname, fmt)\
+show_replicated_func(rtype, rgrp, propname, fmt)\
+\
+static ssize_t concat(synaptics_rmi4_f54, _##propname##_store)(\
+               struct device *dev,\
+               struct device_attribute *attr,\
+               const char *buf, size_t count)\
+{\
+       int retval;\
+       unsigned int setting;\
+       unsigned char ii;\
+       unsigned char length;\
+       const unsigned char *temp;\
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;\
+\
+       mutex_lock(&f54->rtype##_mutex);\
+\
+       length = f54->rtype.rgrp->length;\
+\
+       retval = f54->fn_ptr->read(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       (unsigned char *)f54->rtype.rgrp->data,\
+                       length);\
+       if (retval < 0) {\
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to read " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+       } \
+\
+       temp = buf;\
+\
+       for (ii = 0; ii < length; ii++) {\
+               if (sscanf(temp, fmt, &setting) == 1) {\
+                       f54->rtype.rgrp->data[ii].propname = setting;\
+               } else {\
+                       retval = f54->fn_ptr->read(rmi4_data,\
+                                       f54->rtype.rgrp->address,\
+                                       (unsigned char *)f54->rtype.rgrp->data,\
+                                       length);\
+                       mutex_unlock(&f54->rtype##_mutex);\
+                       return -EINVAL;\
+               } \
+\
+               while (*temp != 0) {\
+                       temp++;\
+                       if (isspace(*(temp - 1)) && !isspace(*temp))\
+                               break;\
+               } \
+       } \
+\
+       retval = f54->fn_ptr->write(rmi4_data,\
+                       f54->rtype.rgrp->address,\
+                       (unsigned char *)f54->rtype.rgrp->data,\
+                       length);\
+       mutex_unlock(&f54->rtype##_mutex);\
+       if (retval < 0) {\
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,\
+                               "%s: Failed to write " #rtype\
+                               " " #rgrp "\n",\
+                               __func__);\
+               return retval;\
+       } \
+\
+       return count;\
+} \
+
+#define show_store_replicated_func_unsigned(rtype, rgrp, propname)\
+show_store_replicated_func(rtype, rgrp, propname, "%u")
+
+enum f54_report_types {
+       F54_8BIT_IMAGE = 1,
+       F54_16BIT_IMAGE = 2,
+       F54_RAW_16BIT_IMAGE = 3,
+       F54_HIGH_RESISTANCE = 4,
+       F54_TX_TO_TX_SHORT = 5,
+       F54_RX_TO_RX1 = 7,
+       F54_TRUE_BASELINE = 9,
+       F54_FULL_RAW_CAP_MIN_MAX = 13,
+       F54_RX_OPENS1 = 14,
+       F54_TX_OPEN = 15,
+       F54_TX_TO_GROUND = 16,
+       F54_RX_TO_RX2 = 17,
+       F54_RX_OPENS2 = 18,
+       F54_FULL_RAW_CAP = 19,
+       F54_FULL_RAW_CAP_RX_COUPLING_COMP = 20,
+       F54_SENSOR_SPEED = 22,
+       F54_ADC_RANGE = 23,
+       F54_TREX_OPENS = 24,
+       F54_TREX_TO_GND = 25,
+       F54_TREX_SHORTS = 26,
+       F54_ABS_CAP = 38,
+       F54_ABS_DELTA = 40,
+       F54_ABS_ADC = 42,
+       INVALID_REPORT_TYPE = -1,
+};
+
+struct f54_query {
+       union {
+               struct {
+                       /* query 0 */
+                       unsigned char num_of_rx_electrodes;
+
+                       /* query 1 */
+                       unsigned char num_of_tx_electrodes;
+
+                       /* query 2 */
+                       unsigned char f54_query2_b0__1:2;
+                       unsigned char has_baseline:1;
+                       unsigned char has_image8:1;
+                       unsigned char f54_query2_b4__5:2;
+                       unsigned char has_image16:1;
+                       unsigned char f54_query2_b7:1;
+
+                       /* queries 3.0 and 3.1 */
+                       unsigned short clock_rate;
+
+                       /* query 4 */
+                       unsigned char touch_controller_family;
+
+                       /* query 5 */
+                       unsigned char has_pixel_touch_threshold_adjustment:1;
+                       unsigned char f54_query5_b1__7:7;
+
+                       /* query 6 */
+                       unsigned char has_sensor_assignment:1;
+                       unsigned char has_interference_metric:1;
+                       unsigned char has_sense_frequency_control:1;
+                       unsigned char has_firmware_noise_mitigation:1;
+                       unsigned char has_ctrl11:1;
+                       unsigned char has_two_byte_report_rate:1;
+                       unsigned char has_one_byte_report_rate:1;
+                       unsigned char has_relaxation_control:1;
+
+                       /* query 7 */
+                       unsigned char curve_compensation_mode:2;
+                       unsigned char f54_query7_b2__7:6;
+
+                       /* query 8 */
+                       unsigned char f54_query8_b0:1;
+                       unsigned char has_iir_filter:1;
+                       unsigned char has_cmn_removal:1;
+                       unsigned char has_cmn_maximum:1;
+                       unsigned char has_touch_hysteresis:1;
+                       unsigned char has_edge_compensation:1;
+                       unsigned char has_per_frequency_noise_control:1;
+                       unsigned char has_enhanced_stretch:1;
+
+                       /* query 9 */
+                       unsigned char has_force_fast_relaxation:1;
+                       unsigned char has_multi_metric_state_machine:1;
+                       unsigned char has_signal_clarity:1;
+                       unsigned char has_variance_metric:1;
+                       unsigned char has_0d_relaxation_control:1;
+                       unsigned char has_0d_acquisition_control:1;
+                       unsigned char has_status:1;
+                       unsigned char has_slew_metric:1;
+
+                       /* query 10 */
+                       unsigned char has_h_blank:1;
+                       unsigned char has_v_blank:1;
+                       unsigned char has_long_h_blank:1;
+                       unsigned char has_startup_fast_relaxation:1;
+                       unsigned char has_esd_control:1;
+                       unsigned char has_noise_mitigation2:1;
+                       unsigned char has_noise_state:1;
+                       unsigned char has_energy_ratio_relaxation:1;
+
+                       /* query 11 */
+                       unsigned char has_excessive_noise_reporting:1;
+                       unsigned char has_slew_option:1;
+                       unsigned char has_two_overhead_bursts:1;
+                       unsigned char has_query13:1;
+                       unsigned char has_one_overhead_burst:1;
+                       unsigned char f54_query11_b5:1;
+                       unsigned char has_ctrl88:1;
+                       unsigned char has_query15:1;
+
+                       /* query 12 */
+                       unsigned char number_of_sensing_frequencies:4;
+                       unsigned char f54_query12_b4__7:4;
+               } __packed;
+               unsigned char data[14];
+       };
+};
+
+struct f54_query_13 {
+       union {
+               struct {
+                       /* query 13 */
+                       unsigned char has_ctrl86:1;
+                       unsigned char has_ctrl87:1;
+                       unsigned char has_ctrl87_sub0:1;
+                       unsigned char has_ctrl87_sub1:1;
+                       unsigned char has_ctrl87_sub2:1;
+                       unsigned char has_cidim:1;
+                       unsigned char has_noise_mitigation_enhancement:1;
+                       unsigned char has_rail_im:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f54_query_15 {
+       union {
+               struct {
+                       unsigned char has_ctrl90:1;
+                       unsigned char has_transmit_strength:1;
+                       unsigned char has_ctrl87_sub3:1;
+                       unsigned char has_query16:1;
+                       unsigned char has_query20:1;
+                       unsigned char has_query21:1;
+                       unsigned char has_query22:1;
+                       unsigned char has_query25:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f54_query_16 {
+       union {
+               struct {
+                       unsigned char has_query17:1;
+                       unsigned char has_data17:1;
+                       unsigned char has_ctrl92:1;
+                       unsigned char has_ctrl93:1;
+                       unsigned char has_ctrl94_query18:1;
+                       unsigned char has_ctrl95_query19:1;
+                       unsigned char has_ctrl99:1;
+                       unsigned char has_ctrl100:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f54_query_21 {
+       union {
+               struct {
+                       unsigned char has_abs_rx:1;
+                       unsigned char has_abs_tx:1;
+                       unsigned char has_ctrl91:1;
+                       unsigned char has_ctrl96:1;
+                       unsigned char has_ctrl97:1;
+                       unsigned char has_ctrl98:1;
+                       unsigned char has_data19:1;
+                       unsigned char has_query24_data18:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f54_control_0 {
+       union {
+               struct {
+                       unsigned char no_relax:1;
+                       unsigned char no_scan:1;
+                       unsigned char force_fast_relaxation:1;
+                       unsigned char startup_fast_relaxation:1;
+                       unsigned char gesture_cancels_sfr:1;
+                       unsigned char enable_energy_ratio_relaxation:1;
+                       unsigned char excessive_noise_attn_enable:1;
+                       unsigned char f54_control0_b7:1;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_1 {
+       union {
+               struct {
+                       unsigned char bursts_per_cluster:4;
+                       unsigned char f54_ctrl1_b4__7:4;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_2 {
+       union {
+               struct {
+                       unsigned short saturation_cap;
+               } __packed;
+               struct {
+                       unsigned char data[2];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_3 {
+       union {
+               struct {
+                       unsigned char pixel_touch_threshold;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_4__6 {
+       union {
+               struct {
+                       /* control 4 */
+                       unsigned char rx_feedback_cap:2;
+                       unsigned char bias_current:2;
+                       unsigned char f54_ctrl4_b4__7:4;
+
+                       /* control 5 */
+                       unsigned char low_ref_cap:2;
+                       unsigned char low_ref_feedback_cap:2;
+                       unsigned char low_ref_polarity:1;
+                       unsigned char f54_ctrl5_b5__7:3;
+
+                       /* control 6 */
+                       unsigned char high_ref_cap:2;
+                       unsigned char high_ref_feedback_cap:2;
+                       unsigned char high_ref_polarity:1;
+                       unsigned char f54_ctrl6_b5__7:3;
+               } __packed;
+               struct {
+                       unsigned char data[3];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_7 {
+       union {
+               struct {
+                       unsigned char cbc_cap:3;
+                       unsigned char cbc_polarity:1;
+                       unsigned char cbc_tx_carrier_selection:1;
+                       unsigned char f54_ctrl7_b5__7:3;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_8__9 {
+       union {
+               struct {
+                       /* control 8 */
+                       unsigned short integration_duration:10;
+                       unsigned short f54_ctrl8_b10__15:6;
+
+                       /* control 9 */
+                       unsigned char reset_duration;
+               } __packed;
+               struct {
+                       unsigned char data[3];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_10 {
+       union {
+               struct {
+                       unsigned char noise_sensing_bursts_per_image:4;
+                       unsigned char f54_ctrl10_b4__7:4;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_11 {
+       union {
+               struct {
+                       unsigned short f54_ctrl11;
+               } __packed;
+               struct {
+                       unsigned char data[2];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_12__13 {
+       union {
+               struct {
+                       /* control 12 */
+                       unsigned char slow_relaxation_rate;
+
+                       /* control 13 */
+                       unsigned char fast_relaxation_rate;
+               } __packed;
+               struct {
+                       unsigned char data[2];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_14 {
+       union {
+               struct {
+                       unsigned char rxs_on_xaxis:1;
+                       unsigned char curve_comp_on_txs:1;
+                       unsigned char f54_ctrl14_b2__7:6;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_15n {
+       unsigned char sensor_rx_assignment;
+};
+
+struct f54_control_15 {
+       struct f54_control_15n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_16n {
+       unsigned char sensor_tx_assignment;
+};
+
+struct f54_control_16 {
+       struct f54_control_16n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_17n {
+       unsigned char burst_count_b8__10:3;
+       unsigned char disable:1;
+       unsigned char f54_ctrl17_b4:1;
+       unsigned char filter_bandwidth:3;
+};
+
+struct f54_control_17 {
+       struct f54_control_17n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_18n {
+       unsigned char burst_count_b0__7;
+};
+
+struct f54_control_18 {
+       struct f54_control_18n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_19n {
+       unsigned char stretch_duration;
+};
+
+struct f54_control_19 {
+       struct f54_control_19n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_20 {
+       union {
+               struct {
+                       unsigned char disable_noise_mitigation:1;
+                       unsigned char f54_ctrl20_b1__7:7;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_21 {
+       union {
+               struct {
+                       unsigned short freq_shift_noise_threshold;
+               } __packed;
+               struct {
+                       unsigned char data[2];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_22__26 {
+       union {
+               struct {
+                       /* control 22 */
+                       unsigned char f54_ctrl22;
+
+                       /* control 23 */
+                       unsigned short medium_noise_threshold;
+
+                       /* control 24 */
+                       unsigned short high_noise_threshold;
+
+                       /* control 25 */
+                       unsigned char noise_density;
+
+                       /* control 26 */
+                       unsigned char frame_count;
+               } __packed;
+               struct {
+                       unsigned char data[7];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_27 {
+       union {
+               struct {
+                       unsigned char iir_filter_coef;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_28 {
+       union {
+               struct {
+                       unsigned short quiet_threshold;
+               } __packed;
+               struct {
+                       unsigned char data[2];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_29 {
+       union {
+               struct {
+                       /* control 29 */
+                       unsigned char f54_ctrl29_b0__6:7;
+                       unsigned char cmn_filter_disable:1;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_30 {
+       union {
+               struct {
+                       unsigned char cmn_filter_max;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_31 {
+       union {
+               struct {
+                       unsigned char touch_hysteresis;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_32__35 {
+       union {
+               struct {
+                       /* control 32 */
+                       unsigned short rx_low_edge_comp;
+
+                       /* control 33 */
+                       unsigned short rx_high_edge_comp;
+
+                       /* control 34 */
+                       unsigned short tx_low_edge_comp;
+
+                       /* control 35 */
+                       unsigned short tx_high_edge_comp;
+               } __packed;
+               struct {
+                       unsigned char data[8];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_36n {
+       unsigned char axis1_comp;
+};
+
+struct f54_control_36 {
+       struct f54_control_36n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_37n {
+       unsigned char axis2_comp;
+};
+
+struct f54_control_37 {
+       struct f54_control_37n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_38n {
+       unsigned char noise_control_1;
+};
+
+struct f54_control_38 {
+       struct f54_control_38n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_39n {
+       unsigned char noise_control_2;
+};
+
+struct f54_control_39 {
+       struct f54_control_39n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_40n {
+       unsigned char noise_control_3;
+};
+
+struct f54_control_40 {
+       struct f54_control_40n *data;
+       unsigned short address;
+       unsigned char length;
+};
+
+struct f54_control_41 {
+       union {
+               struct {
+                       unsigned char no_signal_clarity:1;
+                       unsigned char f54_ctrl41_b1__7:7;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_57 {
+       union {
+               struct {
+                       unsigned char cbc_cap_0d:3;
+                       unsigned char cbc_polarity_0d:1;
+                       unsigned char cbc_tx_carrier_selection_0d:1;
+                       unsigned char f54_ctrl57_b5__7:3;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_88 {
+       union {
+               struct {
+                       unsigned char tx_low_reference_polarity:1;
+                       unsigned char tx_high_reference_polarity:1;
+                       unsigned char abs_low_reference_polarity:1;
+                       unsigned char abs_polarity:1;
+                       unsigned char cbc_polarity:1;
+                       unsigned char cbc_tx_carrier_selection:1;
+                       unsigned char charge_pump_enable:1;
+                       unsigned char cbc_abs_auto_servo:1;
+               } __packed;
+               struct {
+                       unsigned char data[1];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control_94 {
+       union {
+               struct {
+                       unsigned char abs_rx_bursts_per_cluster;
+                       unsigned char abs_tx_bursts_per_cluster;
+                       unsigned char trans_cap_bursts_per_cluster;
+                       unsigned char noise_bursts_per_cluster;
+               } __packed;
+               struct {
+                       unsigned char data[4];
+                       unsigned short address;
+               } __packed;
+       };
+};
+
+struct f54_control {
+       struct f54_control_0 *reg_0;
+       struct f54_control_1 *reg_1;
+       struct f54_control_2 *reg_2;
+       struct f54_control_3 *reg_3;
+       struct f54_control_4__6 *reg_4__6;
+       struct f54_control_7 *reg_7;
+       struct f54_control_8__9 *reg_8__9;
+       struct f54_control_10 *reg_10;
+       struct f54_control_11 *reg_11;
+       struct f54_control_12__13 *reg_12__13;
+       struct f54_control_14 *reg_14;
+       struct f54_control_15 *reg_15;
+       struct f54_control_16 *reg_16;
+       struct f54_control_17 *reg_17;
+       struct f54_control_18 *reg_18;
+       struct f54_control_19 *reg_19;
+       struct f54_control_20 *reg_20;
+       struct f54_control_21 *reg_21;
+       struct f54_control_22__26 *reg_22__26;
+       struct f54_control_27 *reg_27;
+       struct f54_control_28 *reg_28;
+       struct f54_control_29 *reg_29;
+       struct f54_control_30 *reg_30;
+       struct f54_control_31 *reg_31;
+       struct f54_control_32__35 *reg_32__35;
+       struct f54_control_36 *reg_36;
+       struct f54_control_37 *reg_37;
+       struct f54_control_38 *reg_38;
+       struct f54_control_39 *reg_39;
+       struct f54_control_40 *reg_40;
+       struct f54_control_41 *reg_41;
+       struct f54_control_57 *reg_57;
+       struct f54_control_88 *reg_88;
+       struct f54_control_94 *reg_94;
+};
+
+#ifdef FACTORY_MODE
+#include <linux/uaccess.h>
+
+#define CMD_STR_LEN 32
+#define CMD_PARAM_NUM 8
+#define CMD_RESULT_STR_LEN 768
+#define RPT_DATA_STRNCAT_LENGTH 9
+
+#define DEBUG_RESULT_STR_LEN   1024
+#define MAX_VAL_OFFSET_AND_LENGTH      10
+#define DEBUG_STR_LEN  (CMD_STR_LEN * 2)
+
+#define DEBUG_PRNT_SCREEN(_dest, _temp, _length, fmt, ...)     \
+({     \
+       snprintf(_temp, _length, fmt, ## __VA_ARGS__);  \
+       strcat(_dest, _temp);   \
+})
+
+#define FT_CMD(name, func) .cmd_name = name, .cmd_func = func
+
+enum CMD_STATUS {
+       CMD_STATUS_WAITING = 0,
+       CMD_STATUS_RUNNING,
+       CMD_STATUS_OK,
+       CMD_STATUS_FAIL,
+       CMD_STATUS_NOT_APPLICABLE,
+};
+
+struct ft_cmd {
+       const char *cmd_name;
+       void (*cmd_func)(void);
+       struct list_head list;
+};
+
+struct factory_data {
+       struct device *fac_dev_ts;
+       short *rawcap_data;
+       short *delta_data;
+       int *abscap_data;
+       int *absdelta_data;
+       char *trx_short;
+       bool cmd_is_running;
+       unsigned char cmd_state;
+       char cmd[CMD_STR_LEN];
+       int cmd_param[CMD_PARAM_NUM];
+       char cmd_buff[CMD_RESULT_STR_LEN];
+       char cmd_result[CMD_RESULT_STR_LEN];
+       struct mutex cmd_lock;
+       struct list_head cmd_list_head;
+};
+
+static int synaptics_rmi4_f54_get_report_type(int type);
+
+static ssize_t cmd_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count);
+
+static ssize_t cmd_status_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t cmd_result_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t cmd_list_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t debug_address_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t debug_register_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t debug_register_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count);
+
+#ifdef USE_GUEST_THREAD
+static ssize_t guest_pkt_dbg_level_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t guest_pkt_dbg_level_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count);
+#endif
+
+static DEVICE_ATTR(cmd, S_IWUSR | S_IWGRP, NULL, cmd_store);
+static DEVICE_ATTR(cmd_status, S_IRUGO, cmd_status_show, NULL);
+static DEVICE_ATTR(cmd_result, S_IRUGO, cmd_result_show, NULL);
+static DEVICE_ATTR(cmd_list, S_IRUGO, cmd_list_show, NULL);
+static DEVICE_ATTR(debug_address, S_IRUGO, debug_address_show, NULL);
+static DEVICE_ATTR(debug_register, S_IRUGO | S_IWUSR, debug_register_show, debug_register_store);
+#ifdef USE_GUEST_THREAD
+static DEVICE_ATTR(guest_pkt_dbg_level, S_IRUGO | S_IWUSR, guest_pkt_dbg_level_show, guest_pkt_dbg_level_store);
+#endif
+
+static struct attribute *cmd_attributes[] = {
+       &dev_attr_cmd.attr,
+       &dev_attr_cmd_status.attr,
+       &dev_attr_cmd_result.attr,
+       &dev_attr_cmd_list.attr,
+       &dev_attr_debug_address.attr,
+       &dev_attr_debug_register.attr,
+#ifdef USE_GUEST_THREAD
+       &dev_attr_guest_pkt_dbg_level.attr,
+#endif
+       NULL,
+};
+
+static struct attribute_group cmd_attr_group = {
+       .attrs = cmd_attributes,
+};
+
+/*
+ * Factory CMD for Synaptics IC.
+ *
+ * fw_update : 0 (Update with internal firmware).
+ *                             1 (Update with external firmware).
+ *                             2 (Update with Internal factory firmware).
+ * get_fw_ver_bin : Display firmware version in binary.
+ * get_fw_ver_ic : Display firmware version in IC.
+ * get_config_ver : Display configuration version.
+ * get_threshold : Display threshold of mutual.
+ * module_off/on_master/slave : Control ot touch IC's power.
+ * get_chip_vendor : Display vendor name.
+ * get_chip_name : Display chip name.
+ * get_x/y_num : Return RX/TX line of IC.
+ * get_rawcap : Return the rawcap(mutual) about selected.
+ * run_rawcap_read : Get the rawcap(mutual value about entire screen.
+ * get_delta : Return the delta(mutual jitter) about selected.
+ * run_delta_read : Get the delta value about entire screen.
+ * run_abscap_read : Get the abscap(self) value about entire screen.
+ * run_absdelta_read : Get the absdelta(self jitter) value about entire screen.
+ * run_trx_short_test : Test for open/short state each node.
+ *             (each node return the valu ->  0: ok 1: not ok).
+ * hover_enable : To control the hover functionality dinamically.
+ *             ( 0: disalbe, 1: enable)
+ * hover_no_sleep_enable : To keep the no sleep state before enter the hover test.
+ *             This command was requested by Display team /HW.
+ * hover_set_edge_rx : To change grip edge exclustion RX value during hover factory test.
+ * glove_mode : Set glove mode on/off
+ * clear_cover_mode : Set the touch sensitivity mode. we are supporting various mode
+               in sensitivity such as (glove, flip cover, clear cover mode) and they are controled
+               by this sysfs.
+ * get_glove_sensitivity : Display glove's sensitivity.
+ * fast_glove_mode : Set the fast glove mode such as incomming screen.
+ * secure_mode : Set the secure mode.
+ * boost_level : Control touch booster level.
+ * handgrip_enable : Enable reporting the grip infomation based on hover shape.
+ * set_tsp_test_result : Write the result of tsp test in config area.
+ * get_tsp_test_result : Read the result of tsp test in config area.
+ */
+
+static void fw_update(void);
+static void get_fw_ver_bin(void);
+static void get_fw_ver_ic(void);
+static void get_config_ver(void);
+static void get_threshold(void);
+static void module_off_master(void);
+static void module_on_master(void);
+static void get_chip_vendor(void);
+static void get_chip_name(void);
+static void get_x_num(void);
+static void get_y_num(void);
+static void get_rawcap(void);
+static void run_rawcap_read(void);
+static void get_delta(void);
+static void run_delta_read(void);
+static void run_abscap_read(void);
+static void run_absdelta_read(void);
+static void run_trx_short_test(void);
+#ifdef PROXIMITY_MODE
+static void hover_enable(void);
+static void hover_no_sleep_enable(void);
+static void hover_set_edge_rx(void);
+#endif
+static void set_jitter_level(void);
+#ifdef GLOVE_MODE
+static void glove_mode(void);
+static void clear_cover_mode(void);
+static void fast_glove_mode(void);
+#endif
+#ifdef TSP_BOOSTER
+static void boost_level(void);
+#endif
+#ifdef SIDE_TOUCH
+static void sidekey_enable(void);
+static void set_sidekey_only_enable(void);
+static void get_sidekey_threshold(void);
+static void run_sidekey_delta_read(void);
+static void run_sidekey_abscap_read(void);
+static void set_deepsleep_mode(void);
+static void lozemode_enable(void);
+#endif
+static void set_tsp_test_result(void);
+static void get_tsp_test_result(void);
+#ifdef USE_ACTIVE_REPORT_RATE
+static void report_rate(void);
+#endif
+#ifdef USE_STYLUS
+static void stylus_enable(void);
+#endif
+
+static void not_support_cmd(void);
+
+struct ft_cmd ft_cmds[] = {
+       {FT_CMD("fw_update", fw_update),},
+       {FT_CMD("get_fw_ver_bin", get_fw_ver_bin),},
+       {FT_CMD("get_fw_ver_ic", get_fw_ver_ic),},
+       {FT_CMD("get_config_ver", get_config_ver),},
+       {FT_CMD("get_threshold", get_threshold),},
+       {FT_CMD("module_off_master", module_off_master),},
+       {FT_CMD("module_on_master", module_on_master),},
+       {FT_CMD("module_off_slave", not_support_cmd),},
+       {FT_CMD("module_on_slave", not_support_cmd),},
+       {FT_CMD("get_chip_vendor", get_chip_vendor),},
+       {FT_CMD("get_chip_name", get_chip_name),},
+       {FT_CMD("get_x_num", get_x_num),},
+       {FT_CMD("get_y_num", get_y_num),},
+       {FT_CMD("get_rawcap", get_rawcap),},
+       {FT_CMD("run_rawcap_read", run_rawcap_read),},
+       {FT_CMD("get_delta", get_delta),},
+       {FT_CMD("run_delta_read", run_delta_read),},
+       {FT_CMD("run_abscap_read", run_abscap_read),},
+       {FT_CMD("run_absdelta_read", run_absdelta_read),},
+       {FT_CMD("run_trx_short_test", run_trx_short_test),},
+#ifdef PROXIMITY_MODE
+       {FT_CMD("hover_enable", hover_enable),},
+       {FT_CMD("hover_no_sleep_enable", hover_no_sleep_enable),},
+       {FT_CMD("hover_set_edge_rx", hover_set_edge_rx),},
+#endif
+       {FT_CMD("set_jitter_level", set_jitter_level),},
+       {FT_CMD("handgrip_enable", not_support_cmd),},
+#ifdef GLOVE_MODE
+       {FT_CMD("glove_mode", glove_mode),},
+       {FT_CMD("clear_cover_mode", clear_cover_mode),},
+       {FT_CMD("fast_glove_mode", fast_glove_mode),},
+       {FT_CMD("get_glove_sensitivity", not_support_cmd),},
+#endif
+#ifdef TSP_BOOSTER
+       {FT_CMD("boost_level", boost_level),},
+#endif
+#ifdef SIDE_TOUCH
+       {FT_CMD("sidekey_enable", sidekey_enable),},
+       {FT_CMD("set_sidekey_only_enable", set_sidekey_only_enable),},
+       {FT_CMD("get_sidekey_threshold", get_sidekey_threshold),},
+       {FT_CMD("run_sidekey_delta_read", run_sidekey_delta_read),},
+       {FT_CMD("run_sidekey_abscap_read", run_sidekey_abscap_read),},
+       {FT_CMD("set_deepsleep_mode", set_deepsleep_mode),},
+       {FT_CMD("lozemode_enable", lozemode_enable),},
+#endif
+       {FT_CMD("set_tsp_test_result", set_tsp_test_result),},
+       {FT_CMD("get_tsp_test_result", get_tsp_test_result),},
+#ifdef USE_ACTIVE_REPORT_RATE
+       {FT_CMD("report_rate", report_rate),},
+#endif
+#ifdef USE_STYLUS
+       {FT_CMD("stylus_enable", stylus_enable),},
+#endif
+       {FT_CMD("not_support_cmd", not_support_cmd),},
+};
+#endif
+
+struct synaptics_rmi4_f54_handle {
+       bool no_auto_cal;
+       unsigned char status;
+       unsigned char intr_mask;
+       unsigned char intr_reg_num;
+       unsigned char rx_assigned;
+       unsigned char tx_assigned;
+       unsigned char *report_data;
+       unsigned short query_base_addr;
+       unsigned short control_base_addr;
+       unsigned short data_base_addr;
+       unsigned short command_base_addr;
+       unsigned short fifoindex;
+       unsigned int report_size;
+       unsigned int data_buffer_size;
+       enum f54_report_types report_type;
+       struct mutex status_mutex;
+       struct mutex data_mutex;
+       struct mutex control_mutex;
+       struct f54_query query;
+       struct f54_query_13 query_13;
+       struct f54_query_15 query_15;
+       struct f54_query_16 query_16;
+       struct f54_query_21 query_21;
+       struct f54_control control;
+#ifdef FACTORY_MODE
+       struct factory_data *factory_data;
+#endif
+       struct kobject *attr_dir;
+       struct hrtimer watchdog;
+       struct work_struct timeout_work;
+       struct delayed_work status_work;
+       struct workqueue_struct *status_workqueue;
+       struct synaptics_rmi4_exp_fn_ptr *fn_ptr;
+       struct synaptics_rmi4_data *rmi4_data;
+};
+
+show_prototype(status)
+show_prototype(report_size)
+show_store_prototype(no_auto_cal)
+show_store_prototype(report_type)
+show_store_prototype(fifoindex)
+store_prototype(do_preparation)
+store_prototype(get_report)
+store_prototype(force_cal)
+show_prototype(num_of_mapped_rx)
+show_prototype(num_of_mapped_tx)
+show_prototype(num_of_rx_electrodes)
+show_prototype(num_of_tx_electrodes)
+show_prototype(has_image16)
+show_prototype(has_image8)
+show_prototype(has_baseline)
+show_prototype(clock_rate)
+show_prototype(touch_controller_family)
+show_prototype(has_pixel_touch_threshold_adjustment)
+show_prototype(has_sensor_assignment)
+show_prototype(has_interference_metric)
+show_prototype(has_sense_frequency_control)
+show_prototype(has_firmware_noise_mitigation)
+show_prototype(has_two_byte_report_rate)
+show_prototype(has_one_byte_report_rate)
+show_prototype(has_relaxation_control)
+show_prototype(curve_compensation_mode)
+show_prototype(has_iir_filter)
+show_prototype(has_cmn_removal)
+show_prototype(has_cmn_maximum)
+show_prototype(has_touch_hysteresis)
+show_prototype(has_edge_compensation)
+show_prototype(has_per_frequency_noise_control)
+show_prototype(has_signal_clarity)
+show_prototype(number_of_sensing_frequencies)
+
+show_store_prototype(no_relax)
+show_store_prototype(no_scan)
+show_store_prototype(bursts_per_cluster)
+show_store_prototype(saturation_cap)
+show_store_prototype(pixel_touch_threshold)
+show_store_prototype(rx_feedback_cap)
+show_store_prototype(low_ref_cap)
+show_store_prototype(low_ref_feedback_cap)
+show_store_prototype(low_ref_polarity)
+show_store_prototype(high_ref_cap)
+show_store_prototype(high_ref_feedback_cap)
+show_store_prototype(high_ref_polarity)
+show_store_prototype(cbc_cap)
+show_store_prototype(cbc_polarity)
+show_store_prototype(cbc_tx_carrier_selection)
+show_store_prototype(integration_duration)
+show_store_prototype(reset_duration)
+show_store_prototype(noise_sensing_bursts_per_image)
+show_store_prototype(slow_relaxation_rate)
+show_store_prototype(fast_relaxation_rate)
+show_store_prototype(rxs_on_xaxis)
+show_store_prototype(curve_comp_on_txs)
+show_prototype(sensor_rx_assignment)
+show_prototype(sensor_tx_assignment)
+show_prototype(burst_count)
+show_prototype(disable)
+show_prototype(filter_bandwidth)
+show_prototype(stretch_duration)
+show_store_prototype(disable_noise_mitigation)
+show_store_prototype(freq_shift_noise_threshold)
+show_store_prototype(medium_noise_threshold)
+show_store_prototype(high_noise_threshold)
+show_store_prototype(noise_density)
+show_store_prototype(frame_count)
+show_store_prototype(iir_filter_coef)
+show_store_prototype(quiet_threshold)
+show_store_prototype(cmn_filter_disable)
+show_store_prototype(cmn_filter_max)
+show_store_prototype(touch_hysteresis)
+show_store_prototype(rx_low_edge_comp)
+show_store_prototype(rx_high_edge_comp)
+show_store_prototype(tx_low_edge_comp)
+show_store_prototype(tx_high_edge_comp)
+show_store_prototype(axis1_comp)
+show_store_prototype(axis2_comp)
+show_prototype(noise_control_1)
+show_prototype(noise_control_2)
+show_prototype(noise_control_3)
+show_store_prototype(no_signal_clarity)
+show_store_prototype(cbc_cap_0d)
+show_store_prototype(cbc_polarity_0d)
+show_store_prototype(cbc_tx_carrier_selection_0d)
+
+static ssize_t synaptics_rmi4_f54_data_read(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static struct attribute *attrs[] = {
+       attrify(status),
+       attrify(report_size),
+       attrify(no_auto_cal),
+       attrify(report_type),
+       attrify(fifoindex),
+       attrify(do_preparation),
+       attrify(get_report),
+       attrify(force_cal),
+       attrify(num_of_mapped_rx),
+       attrify(num_of_mapped_tx),
+       attrify(num_of_rx_electrodes),
+       attrify(num_of_tx_electrodes),
+       attrify(has_image16),
+       attrify(has_image8),
+       attrify(has_baseline),
+       attrify(clock_rate),
+       attrify(touch_controller_family),
+       attrify(has_pixel_touch_threshold_adjustment),
+       attrify(has_sensor_assignment),
+       attrify(has_interference_metric),
+       attrify(has_sense_frequency_control),
+       attrify(has_firmware_noise_mitigation),
+       attrify(has_two_byte_report_rate),
+       attrify(has_one_byte_report_rate),
+       attrify(has_relaxation_control),
+       attrify(curve_compensation_mode),
+       attrify(has_iir_filter),
+       attrify(has_cmn_removal),
+       attrify(has_cmn_maximum),
+       attrify(has_touch_hysteresis),
+       attrify(has_edge_compensation),
+       attrify(has_per_frequency_noise_control),
+       attrify(has_signal_clarity),
+       attrify(number_of_sensing_frequencies),
+       NULL,
+};
+
+static struct attribute_group attr_group = GROUP(attrs);
+
+static struct attribute *attrs_reg_0[] = {
+       attrify(no_relax),
+       attrify(no_scan),
+       NULL,
+};
+
+static struct attribute *attrs_reg_1[] = {
+       attrify(bursts_per_cluster),
+       NULL,
+};
+
+static struct attribute *attrs_reg_2[] = {
+       attrify(saturation_cap),
+       NULL,
+};
+
+static struct attribute *attrs_reg_3[] = {
+       attrify(pixel_touch_threshold),
+       NULL,
+};
+
+static struct attribute *attrs_reg_4__6[] = {
+       attrify(rx_feedback_cap),
+       attrify(low_ref_cap),
+       attrify(low_ref_feedback_cap),
+       attrify(low_ref_polarity),
+       attrify(high_ref_cap),
+       attrify(high_ref_feedback_cap),
+       attrify(high_ref_polarity),
+       NULL,
+};
+
+static struct attribute *attrs_reg_7[] = {
+       attrify(cbc_cap),
+       attrify(cbc_polarity),
+       attrify(cbc_tx_carrier_selection),
+       NULL,
+};
+
+static struct attribute *attrs_reg_8__9[] = {
+       attrify(integration_duration),
+       attrify(reset_duration),
+       NULL,
+};
+
+static struct attribute *attrs_reg_10[] = {
+       attrify(noise_sensing_bursts_per_image),
+       NULL,
+};
+
+static struct attribute *attrs_reg_11[] = {
+       NULL,
+};
+
+static struct attribute *attrs_reg_12__13[] = {
+       attrify(slow_relaxation_rate),
+       attrify(fast_relaxation_rate),
+       NULL,
+};
+
+static struct attribute *attrs_reg_14__16[] = {
+       attrify(rxs_on_xaxis),
+       attrify(curve_comp_on_txs),
+       attrify(sensor_rx_assignment),
+       attrify(sensor_tx_assignment),
+       NULL,
+};
+
+static struct attribute *attrs_reg_17__19[] = {
+       attrify(burst_count),
+       attrify(disable),
+       attrify(filter_bandwidth),
+       attrify(stretch_duration),
+       NULL,
+};
+
+static struct attribute *attrs_reg_20[] = {
+       attrify(disable_noise_mitigation),
+       NULL,
+};
+
+static struct attribute *attrs_reg_21[] = {
+       attrify(freq_shift_noise_threshold),
+       NULL,
+};
+
+static struct attribute *attrs_reg_22__26[] = {
+       attrify(medium_noise_threshold),
+       attrify(high_noise_threshold),
+       attrify(noise_density),
+       attrify(frame_count),
+       NULL,
+};
+
+static struct attribute *attrs_reg_27[] = {
+       attrify(iir_filter_coef),
+       NULL,
+};
+
+static struct attribute *attrs_reg_28[] = {
+       attrify(quiet_threshold),
+       NULL,
+};
+
+static struct attribute *attrs_reg_29[] = {
+       attrify(cmn_filter_disable),
+       NULL,
+};
+
+static struct attribute *attrs_reg_30[] = {
+       attrify(cmn_filter_max),
+       NULL,
+};
+
+static struct attribute *attrs_reg_31[] = {
+       attrify(touch_hysteresis),
+       NULL,
+};
+
+static struct attribute *attrs_reg_32__35[] = {
+       attrify(rx_low_edge_comp),
+       attrify(rx_high_edge_comp),
+       attrify(tx_low_edge_comp),
+       attrify(tx_high_edge_comp),
+       NULL,
+};
+
+static struct attribute *attrs_reg_36[] = {
+       attrify(axis1_comp),
+       NULL,
+};
+
+static struct attribute *attrs_reg_37[] = {
+       attrify(axis2_comp),
+       NULL,
+};
+
+static struct attribute *attrs_reg_38__40[] = {
+       attrify(noise_control_1),
+       attrify(noise_control_2),
+       attrify(noise_control_3),
+       NULL,
+};
+
+static struct attribute *attrs_reg_41[] = {
+       attrify(no_signal_clarity),
+       NULL,
+};
+
+static struct attribute *attrs_reg_57[] = {
+       attrify(cbc_cap_0d),
+       attrify(cbc_polarity_0d),
+       attrify(cbc_tx_carrier_selection_0d),
+       NULL,
+};
+
+static struct attribute_group attrs_ctrl_regs[] = {
+       GROUP(attrs_reg_0),
+       GROUP(attrs_reg_1),
+       GROUP(attrs_reg_2),
+       GROUP(attrs_reg_3),
+       GROUP(attrs_reg_4__6),
+       GROUP(attrs_reg_7),
+       GROUP(attrs_reg_8__9),
+       GROUP(attrs_reg_10),
+       GROUP(attrs_reg_11),
+       GROUP(attrs_reg_12__13),
+       GROUP(attrs_reg_14__16),
+       GROUP(attrs_reg_17__19),
+       GROUP(attrs_reg_20),
+       GROUP(attrs_reg_21),
+       GROUP(attrs_reg_22__26),
+       GROUP(attrs_reg_27),
+       GROUP(attrs_reg_28),
+       GROUP(attrs_reg_29),
+       GROUP(attrs_reg_30),
+       GROUP(attrs_reg_31),
+       GROUP(attrs_reg_32__35),
+       GROUP(attrs_reg_36),
+       GROUP(attrs_reg_37),
+       GROUP(attrs_reg_38__40),
+       GROUP(attrs_reg_41),
+       GROUP(attrs_reg_57),
+};
+
+static bool attrs_ctrl_regs_exist[ARRAY_SIZE(attrs_ctrl_regs)];
+
+static struct bin_attribute dev_report_data = {
+       .attr = {
+               .name = "report_data",
+               .mode = S_IRUGO,
+       },
+       .size = 0,
+       .read = synaptics_rmi4_f54_data_read,
+};
+
+static struct synaptics_rmi4_f54_handle *f54;
+
+static bool is_report_type_valid(enum f54_report_types report_type)
+{
+       switch (report_type) {
+       case F54_8BIT_IMAGE:
+       case F54_16BIT_IMAGE:
+       case F54_RAW_16BIT_IMAGE:
+       case F54_HIGH_RESISTANCE:
+       case F54_TX_TO_TX_SHORT:
+       case F54_RX_TO_RX1:
+       case F54_TRUE_BASELINE:
+       case F54_FULL_RAW_CAP_MIN_MAX:
+       case F54_RX_OPENS1:
+       case F54_TX_OPEN:
+       case F54_TX_TO_GROUND:
+       case F54_RX_TO_RX2:
+       case F54_RX_OPENS2:
+       case F54_FULL_RAW_CAP:
+       case F54_FULL_RAW_CAP_RX_COUPLING_COMP:
+       case F54_SENSOR_SPEED:
+       case F54_ADC_RANGE:
+       case F54_TREX_OPENS:
+       case F54_TREX_TO_GND:
+       case F54_TREX_SHORTS:
+       case F54_ABS_CAP:
+       case F54_ABS_DELTA:
+       case F54_ABS_ADC:
+               return true;
+               break;
+       default:
+               f54->report_type = INVALID_REPORT_TYPE;
+               f54->report_size = 0;
+               return false;
+       }
+}
+
+static void set_report_size(void)
+{
+       int retval;
+       unsigned char rx = f54->rx_assigned;
+       unsigned char tx = f54->tx_assigned;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       switch (f54->report_type) {
+       case F54_8BIT_IMAGE:
+               f54->report_size = rx * tx;
+               break;
+       case F54_16BIT_IMAGE:
+       case F54_RAW_16BIT_IMAGE:
+       case F54_TRUE_BASELINE:
+       case F54_FULL_RAW_CAP:
+       case F54_FULL_RAW_CAP_RX_COUPLING_COMP:
+       case F54_SENSOR_SPEED:
+               f54->report_size = 2 * rx * tx;
+               break;
+       case F54_HIGH_RESISTANCE:
+               f54->report_size = HIGH_RESISTANCE_DATA_SIZE;
+               break;
+       case F54_TX_TO_TX_SHORT:
+       case F54_TX_OPEN:
+       case F54_TX_TO_GROUND:
+               f54->report_size = (tx + 7) / 8;
+               break;
+       case F54_RX_TO_RX1:
+       case F54_RX_OPENS1:
+               if (rx < tx)
+                       f54->report_size = 2 * rx * rx;
+               else
+                       f54->report_size = 2 * rx * tx;
+               break;
+       case F54_FULL_RAW_CAP_MIN_MAX:
+               f54->report_size = FULL_RAW_CAP_MIN_MAX_DATA_SIZE;
+               break;
+       case F54_RX_TO_RX2:
+       case F54_RX_OPENS2:
+               if (rx <= tx)
+                       f54->report_size = 0;
+               else
+                       f54->report_size = 2 * rx * (rx - tx);
+               break;
+       case F54_ADC_RANGE:
+               if (f54->query.has_signal_clarity) {
+                       mutex_lock(&f54->control_mutex);
+                       retval = f54->fn_ptr->read(rmi4_data,
+                                       f54->control.reg_41->address,
+                                       f54->control.reg_41->data,
+                                       sizeof(f54->control.reg_41->data));
+                       mutex_unlock(&f54->control_mutex);
+                       if (retval < 0) {
+                               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to read control reg_41\n",
+                                               __func__);
+                               f54->report_size = 0;
+                               break;
+                       }
+                       if (!f54->control.reg_41->no_signal_clarity) {
+                               if (tx % 4)
+                                       tx += 4 - (tx % 4);
+                       }
+               }
+               f54->report_size = 2 * rx * tx;
+               break;
+       case F54_TREX_OPENS:
+       case F54_TREX_TO_GND:
+       case F54_TREX_SHORTS:
+               f54->report_size = TREX_DATA_SIZE;
+               break;
+       case F54_ABS_CAP:
+       case F54_ABS_DELTA:
+#ifdef SIDE_TOUCH
+               f54->report_size = 4 * (rx + tx + NUM_OF_ACTIVE_SIDE_BUTTONS);
+#else
+               f54->report_size = 4 * (rx + tx);
+#endif
+               break;
+       case F54_ABS_ADC:
+               f54->report_size = 2 * (rx + tx);
+               break;
+       default:
+               f54->report_size = 0;
+       }
+
+       return;
+}
+
+static int set_interrupt(bool set)
+{
+       int retval;
+       unsigned char ii;
+       unsigned char zero = 0x00;
+       unsigned char *intr_mask;
+       unsigned short f01_ctrl_reg;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       intr_mask = rmi4_data->intr_mask;
+       f01_ctrl_reg = rmi4_data->f01_ctrl_base_addr + 1 + f54->intr_reg_num;
+
+       if (!set) {
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f01_ctrl_reg,
+                               &zero,
+                               sizeof(zero));
+               if (retval < 0)
+                       return retval;
+       }
+
+       for (ii = 0; ii < rmi4_data->num_of_intr_regs; ii++) {
+               if (intr_mask[ii] != 0x00) {
+                       f01_ctrl_reg = rmi4_data->f01_ctrl_base_addr + 1 + ii;
+                       if (set) {
+                               retval = f54->fn_ptr->write(rmi4_data,
+                                               f01_ctrl_reg,
+                                               &zero,
+                                               sizeof(zero));
+                               if (retval < 0)
+                                       return retval;
+                       } else {
+                               retval = f54->fn_ptr->write(rmi4_data,
+                                               f01_ctrl_reg,
+                                               &(intr_mask[ii]),
+                                               sizeof(intr_mask[ii]));
+                               if (retval < 0)
+                                       return retval;
+                       }
+               }
+       }
+
+       f01_ctrl_reg = rmi4_data->f01_ctrl_base_addr + 1 + f54->intr_reg_num;
+
+       if (set) {
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f01_ctrl_reg,
+                               &f54->intr_mask,
+                               1);
+               if (retval < 0)
+                       return retval;
+       }
+
+       return 0;
+}
+
+static int do_preparation(void)
+{
+       int retval;
+       unsigned char value;
+       unsigned char command;
+       unsigned char timeout_count;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       mutex_lock(&f54->control_mutex);
+
+       if (f54->query.touch_controller_family == 1) {
+               value = 0;
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f54->control.reg_7->address,
+                               &value,
+                               sizeof(f54->control.reg_7->data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to disable CBC\n",
+                                       __func__);
+                       mutex_unlock(&f54->control_mutex);
+                       return retval;
+               }
+       } else if (f54->query.has_ctrl88 == 1) {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->control.reg_88->address,
+                               f54->control.reg_88->data,
+                               sizeof(f54->control.reg_88->data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to disable CBC (read ctrl88)\n",
+                                       __func__);
+                       mutex_unlock(&f54->control_mutex);
+                       return retval;
+               }
+               f54->control.reg_88->cbc_polarity = 0;
+               f54->control.reg_88->cbc_tx_carrier_selection = 0;
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f54->control.reg_88->address,
+                               f54->control.reg_88->data,
+                               sizeof(f54->control.reg_88->data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to disable CBC (write ctrl88)\n",
+                                       __func__);
+                       mutex_unlock(&f54->control_mutex);
+                       return retval;
+               }
+       }
+       /* check this code to using S5000 and S5050 */
+       if (f54->query.has_0d_acquisition_control) {
+               value = 0;
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f54->control.reg_57->address,
+                               &value,
+                               sizeof(f54->control.reg_57->data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to disable 0D CBC\n",
+                                       __func__);
+                       mutex_unlock(&f54->control_mutex);
+                       return retval;
+               }
+       }
+
+       if (f54->query.has_signal_clarity) {
+               value = 1;
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f54->control.reg_41->address,
+                               &value,
+                               sizeof(f54->control.reg_41->data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to disable signal clarity\n",
+                                       __func__);
+                       mutex_unlock(&f54->control_mutex);
+                       return retval;
+               }
+       }
+
+       mutex_unlock(&f54->control_mutex);
+
+       command = (unsigned char)COMMAND_FORCE_UPDATE;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->command_base_addr,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write force update command\n",
+                               __func__);
+               return retval;
+       }
+
+       timeout_count = 0;
+       do {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->command_base_addr,
+                               &value,
+                               sizeof(value));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read command register\n",
+                                       __func__);
+                       return retval;
+               }
+
+               if (value == 0x00)
+                       break;
+
+               msleep(100);
+               timeout_count++;
+       } while (timeout_count < FORCE_TIMEOUT_100MS);
+
+       if (timeout_count == FORCE_TIMEOUT_100MS) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Timed out waiting for force update\n",
+                               __func__);
+               return -ETIMEDOUT;
+       }
+
+       command = (unsigned char)COMMAND_FORCE_CAL;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->command_base_addr,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write force cal command\n",
+                               __func__);
+               return retval;
+       }
+
+       timeout_count = 0;
+       do {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->command_base_addr,
+                               &value,
+                               sizeof(value));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read command register\n",
+                                       __func__);
+                       return retval;
+               }
+
+               if (value == 0x00)
+                       break;
+
+               msleep(100);
+               timeout_count++;
+       } while (timeout_count < FORCE_TIMEOUT_100MS);
+
+       if (timeout_count == FORCE_TIMEOUT_100MS) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Timed out waiting for force cal\n",
+                               __func__);
+               return -ETIMEDOUT;
+       }
+
+       return 0;
+}
+
+#ifdef WATCHDOG_HRTIMER
+static void timeout_set_status(struct work_struct *work)
+{
+       int retval;
+       unsigned char command;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       mutex_lock(&f54->status_mutex);
+       if (f54->status == STATUS_BUSY) {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->command_base_addr,
+                               &command,
+                               sizeof(command));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read command register\n",
+                                       __func__);
+                       f54->status = STATUS_ERROR;
+               } else if (command & COMMAND_GET_REPORT) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Report type not supported by FW\n",
+                                       __func__);
+                       f54->status = STATUS_ERROR;
+               } else {
+                       queue_delayed_work(f54->status_workqueue,
+                                       &f54->status_work,
+                                       0);
+                       mutex_unlock(&f54->status_mutex);
+                       return;
+               }
+               f54->report_type = INVALID_REPORT_TYPE;
+               f54->report_size = 0;
+       }
+       mutex_unlock(&f54->status_mutex);
+
+       /* read fail : need ic reset */
+       if (f54->status == STATUS_ERROR) {
+               if (rmi4_data->touch_stopped) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is stopped\n",
+                               __func__);
+                       f54->status = STATUS_IDLE;
+                       return;
+               }
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: reset device\n",
+                       __func__);
+
+               retval = rmi4_data->reset_device(rmi4_data);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to issue reset command, error = %d\n",
+                                       __func__, retval);
+               }
+
+               mutex_lock(&f54->status_mutex);
+               f54->status = STATUS_IDLE;
+               mutex_unlock(&f54->status_mutex);
+       }
+
+       return;
+}
+
+static enum hrtimer_restart get_report_timeout(struct hrtimer *timer)
+{
+       schedule_work(&(f54->timeout_work));
+
+       return HRTIMER_NORESTART;
+}
+#endif
+
+#ifdef RAW_HEX
+static void print_raw_hex_report(void)
+{
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned int ii;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Report data (raw hex)\n", __func__);
+
+       switch (f54->report_type) {
+       case F54_16BIT_IMAGE:
+       case F54_RAW_16BIT_IMAGE:
+       case F54_HIGH_RESISTANCE:
+       case F54_TRUE_BASELINE:
+       case F54_FULL_RAW_CAP_MIN_MAX:
+       case F54_FULL_RAW_CAP:
+       case F54_FULL_RAW_CAP_RX_COUPLING_COMP:
+       case F54_SENSOR_SPEED:
+       case F54_ADC_RANGE:
+       case F54_ABS_ADC:
+               for (ii = 0; ii < f54->report_size; ii += 2) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%03d: 0x%02x%02x\n",
+                                       ii / 2,
+                                       f54->report_data[ii + 1],
+                                       f54->report_data[ii]);
+               }
+               break;
+       case F54_ABS_CAP:
+       case F54_ABS_DELTA:
+               for (ii = 0; ii < f54->report_size; ii += 4) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%03d: 0x%02x%02x%02x%02x\n",
+                                       ii / 4,
+                                       f54->report_data[ii + 3],
+                                       f54->report_data[ii + 2],
+                                       f54->report_data[ii + 1],
+                                       f54->report_data[ii]);
+               }
+               break;
+       default:
+               for (ii = 0; ii < f54->report_size; ii++)
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%03d: 0x%02x\n", ii, f54->report_data[ii]);
+               break;
+       }
+
+       return;
+}
+#endif
+
+#ifdef HUMAN_READABLE
+static void print_image_report(void)
+{
+       unsigned int ii;
+       unsigned int jj;
+       short *report_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       switch (f54->report_type) {
+       case F54_16BIT_IMAGE:
+       case F54_RAW_16BIT_IMAGE:
+       case F54_TRUE_BASELINE:
+       case F54_FULL_RAW_CAP:
+       case F54_FULL_RAW_CAP_RX_COUPLING_COMP:
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Report data (image)\n", __func__);
+
+               report_data = (short *)f54->report_data;
+
+               for (ii = 0; ii < f54->tx_assigned; ii++) {
+                       for (jj = 0; jj < f54->rx_assigned; jj++) {
+                               if (*report_data < -64)
+                                       pr_cont(".");
+                               else if (*report_data < 0)
+                                       pr_cont("-");
+                               else if (*report_data > 64)
+                                       pr_cont("*");
+                               else if (*report_data > 0)
+                                       pr_cont("+");
+                               else
+                                       pr_cont("0");
+
+                               report_data++;
+                       }
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "");
+               }
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: End of report\n", __func__);
+               break;
+       default:
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Image not supported for report type %d\n",
+                               __func__, f54->report_type);
+       }
+
+       return;
+}
+#endif
+
+static void free_control_mem(void)
+{
+       struct f54_control control = f54->control;
+
+       kfree(control.reg_0);
+       kfree(control.reg_1);
+       kfree(control.reg_2);
+       kfree(control.reg_3);
+       kfree(control.reg_4__6);
+       kfree(control.reg_7);
+       kfree(control.reg_8__9);
+       kfree(control.reg_10);
+       kfree(control.reg_11);
+       kfree(control.reg_12__13);
+       kfree(control.reg_14);
+       if (control.reg_15)
+               kfree(control.reg_15->data);
+       kfree(control.reg_15);
+       if (control.reg_16)
+               kfree(control.reg_16->data);
+       kfree(control.reg_16);
+       if (control.reg_17)
+               kfree(control.reg_17->data);
+       kfree(control.reg_17);
+       if (control.reg_18)
+               kfree(control.reg_18->data);
+       kfree(control.reg_18);
+       if (control.reg_19)
+               kfree(control.reg_19->data);
+       kfree(control.reg_19);
+       kfree(control.reg_20);
+       kfree(control.reg_21);
+       kfree(control.reg_22__26);
+       kfree(control.reg_27);
+       kfree(control.reg_28);
+       kfree(control.reg_29);
+       kfree(control.reg_30);
+       kfree(control.reg_31);
+       kfree(control.reg_32__35);
+       if (control.reg_36)
+               kfree(control.reg_36->data);
+       kfree(control.reg_36);
+       if (control.reg_37)
+               kfree(control.reg_37->data);
+       kfree(control.reg_37);
+       if (control.reg_38)
+               kfree(control.reg_38->data);
+       kfree(control.reg_38);
+       if (control.reg_39)
+               kfree(control.reg_39->data);
+       kfree(control.reg_39);
+       if (control.reg_40)
+               kfree(control.reg_40->data);
+       kfree(control.reg_40);
+       kfree(control.reg_41);
+       kfree(control.reg_57);
+       kfree(control.reg_88);
+       kfree(control.reg_94);
+
+       return;
+}
+
+static void remove_sysfs(void)
+{
+       int reg_num;
+
+       sysfs_remove_bin_file(f54->attr_dir, &dev_report_data);
+
+       sysfs_remove_group(f54->attr_dir, &attr_group);
+
+       for (reg_num = 0; reg_num < ARRAY_SIZE(attrs_ctrl_regs); reg_num++)
+               sysfs_remove_group(f54->attr_dir, &attrs_ctrl_regs[reg_num]);
+
+       kobject_put(f54->attr_dir);
+
+       return;
+}
+
+#ifdef FACTORY_MODE
+static void set_default_result(struct factory_data *data)
+{
+       char delim = ':';
+
+       memset(data->cmd_buff, 0x00, sizeof(data->cmd_buff));
+       memset(data->cmd_result, 0x00, sizeof(data->cmd_result));
+       memcpy(data->cmd_result, data->cmd, strlen(data->cmd));
+       strncat(data->cmd_result, &delim, 1);
+
+       return;
+}
+
+static void set_cmd_result(struct factory_data *data, char *buf, int length)
+{
+       strncat(data->cmd_result, buf, length);
+
+       return;
+}
+
+static ssize_t cmd_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count)
+{
+       unsigned char param_cnt = 0;
+       char *start;
+       char *end;
+       char *pos;
+       char delim = ',';
+       char buffer[CMD_STR_LEN];
+       bool cmd_found = false;
+       int *param;
+       int length;
+       struct ft_cmd *ft_cmd_ptr;
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       if (data->cmd_is_running == true) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Still servicing previous command. Skip cmd :%s\n",
+                        __func__, buf);
+               return count;
+       }
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = true;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_RUNNING;
+
+       length = (int)count;
+       if (*(buf + length - 1) == '\n')
+               length--;
+
+       memset(data->cmd, 0x00, sizeof(data->cmd));
+       memcpy(data->cmd, buf, length);
+       memset(data->cmd_param, 0, sizeof(data->cmd_param));
+
+       memset(buffer, 0x00, sizeof(buffer));
+       pos = strchr(buf, (int)delim);
+       if (pos)
+               memcpy(buffer, buf, pos - buf);
+       else
+               memcpy(buffer, buf, length);
+
+       /* find command */
+       list_for_each_entry(ft_cmd_ptr, &data->cmd_list_head, list) {
+               if (!strcmp(buffer, ft_cmd_ptr->cmd_name)) {
+                       cmd_found = true;
+                       break;
+               }
+       }
+
+       /* set not_support_cmd */
+       if (!cmd_found) {
+               list_for_each_entry(ft_cmd_ptr,
+                       &data->cmd_list_head, list) {
+                       if (!strcmp("not_support_cmd", ft_cmd_ptr->cmd_name))
+                               break;
+               }
+       }
+
+       /* parsing parameters */
+       if (cmd_found && pos) {
+               pos++;
+               start = pos;
+               do {
+                       if ((*pos == delim) || (pos - buf == length)) {
+                               end = pos;
+                               memset(buffer, 0x00, sizeof(buffer));
+                               memcpy(buffer, start, end - start);
+                               *(buffer + strlen(buffer)) = '\0';
+                               param = data->cmd_param + param_cnt;
+                               if (kstrtoint(buffer, 10, param) < 0)
+                                       break;
+                               param_cnt++;
+                               start = pos + 1;
+                       }
+                       pos++;
+               } while (pos - buf <= length);
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Command = %s\n",
+                       __func__, buf);
+
+       ft_cmd_ptr->cmd_func();
+
+       return count;
+}
+
+static ssize_t cmd_status_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       char buffer[CMD_RESULT_STR_LEN];
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Command status = %d\n",
+           __func__, data->cmd_state);
+
+       switch (data->cmd_state) {
+       case CMD_STATUS_WAITING:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(WAITING));
+               break;
+       case CMD_STATUS_RUNNING:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(RUNNING));
+               break;
+       case CMD_STATUS_OK:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(OK));
+               break;
+       case CMD_STATUS_FAIL:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(FAIL));
+               break;
+       case CMD_STATUS_NOT_APPLICABLE:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(NOT_APPLICABLE));
+               break;
+       default:
+               snprintf(buffer, CMD_RESULT_STR_LEN, "%s", tostring(NOT_APPLICABLE));
+               break;
+       }
+
+       return snprintf(buf, PAGE_SIZE, "%s\n", buffer);
+}
+
+static ssize_t cmd_result_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Command result = %s\n",
+               __func__, data->cmd_result);
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+
+       return snprintf(buf, PAGE_SIZE, "%s\n", data->cmd_result);
+}
+
+static char debug_buffer[DEBUG_RESULT_STR_LEN];
+
+static ssize_t cmd_list_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       int ii = 0;
+       char buffer_name[CMD_STR_LEN] = {0,};
+
+       memset(debug_buffer, 0, DEBUG_RESULT_STR_LEN);
+
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_name, CMD_STR_LEN, "++factory command list++\n");
+       while (strncmp(ft_cmds[ii].cmd_name, "not_support_cmd", 16) != 0) {
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_name, CMD_STR_LEN, "%s\n", ft_cmds[ii].cmd_name);
+               ii++;
+       }
+
+       return snprintf(buf, PAGE_SIZE, "%s\n", debug_buffer);
+}
+
+static ssize_t debug_address_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       char buffer_temp[DEBUG_STR_LEN] = {0,};
+
+       memset(debug_buffer, 0, DEBUG_RESULT_STR_LEN);
+
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### F12 User control Registers ###\n");
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F12_2D_CTRL11(jitter)\t 0x%04x, 0x%02x\n",
+                       rmi4_data->f12.ctrl11_addr, 0xFF);
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F12_2D_CTRL15(threshold)\t 0x%04x, 0x%02x\n",
+                       rmi4_data->f12.ctrl15_addr, 0xFF);
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F12_2D_CTRL26(glove)\t 0x%04x, 0x%02x\n",
+                       rmi4_data->f12.ctrl26_addr, rmi4_data->f12.feature_enable);
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F12_2D_CTRL28(report)\t 0x%04x, 0x%02x\n",
+                       rmi4_data->f12.ctrl28_addr, rmi4_data->f12.report_enable);
+
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### F51 User control Registers ###\n");
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL00(proximity)\t 0x%04x, 0x%02x\n",
+                       f51->proximity_enables_addr, f51->proximity_enables);
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL01(general)\t 0x%04x, 0x%02x\n",
+                       f51->general_control_addr, f51->general_control);
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL02(general2)\t 0x%04x, 0x%02x\n",
+                       f51->general_control_2_addr, f51->general_control_2);
+#ifdef SIDE_TOUCH
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_DATA (Side button)\t 0x%04x, 0x%02x\n",
+                       f51->side_button_data_addr, 0xFF);
+#endif
+#ifdef USE_DETECTION_FLAG_2
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_DATA (Detection flag2)\t 0x%04x, 0x%02x\n",
+                       f51->detection_flag_2_addr, 0xFF);
+#endif
+#ifdef EDGE_SWIPE
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_DATA (Edge swipe)\t 0x%04x, 0x%02x\n",
+                       f51->edge_swipe_data_addr, 0xFF);
+#endif
+
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Manual defined offset ###\n");
+#ifdef PROXIMITY_MODE
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL24(Grip edge exclusion RX)\t 0x%04x\n",
+                       f51->grip_edge_exclusion_rx_addr);
+#endif
+#ifdef SIDE_TOUCH
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL78(Side button tap threshold)\t 0x%04x\n",
+                       f51->sidebutton_tapthreshold_addr);
+#endif
+#ifdef USE_STYLUS
+       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "#F51_CUSTOM_CTRL87(ForceFingeronEdge)\t 0x%04x\n",
+                       f51->forcefinger_onedge_addr);
+#endif
+
+       return snprintf(buf, PAGE_SIZE, "%s\n", debug_buffer);
+}
+
+static ssize_t debug_register_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%s\n", debug_buffer);
+}
+
+static ssize_t debug_register_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count)
+{
+
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned int mode, page, addr, offset, param;
+       unsigned char i;
+       unsigned short register_addr;
+       unsigned char *register_val;
+
+       char buffer_temp[DEBUG_STR_LEN] = {0,};
+
+       int retval = 0;
+
+       memset(debug_buffer, 0, DEBUG_RESULT_STR_LEN);
+
+       if (sscanf(buf, "%x%x%x%x%x", &mode, &page, &addr, &offset, &param) != 5) {
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### keep below format !!!! ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### mode page_num address offset data ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### (EX: 1 4 15 1 10 > debug_address) ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### Write 0x10 value at 0x415[1] address ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### if packet register, offset mean [register/offset] ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### (EX: 0 4 15 0 a > debug_address) ###\n");
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### Read 10byte from 0x415 address ###\n");
+               goto out;
+       }
+
+       if (rmi4_data->touch_stopped) {
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### ERROR : Sensor stopped\n");
+               goto out;
+       }
+
+       register_addr = (page << 8) | addr;
+
+       if (mode) {
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Write [0x%02x]value at [0x%04x/0x%02x]address.\n",
+                       param, register_addr, offset);
+
+               if (offset) {
+                       if (offset > MAX_VAL_OFFSET_AND_LENGTH) {
+                               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### offset is too large. [ < %d]\n", MAX_VAL_OFFSET_AND_LENGTH);
+                               goto out;
+                       }
+                       register_val = kzalloc(offset + 1, GFP_KERNEL);
+
+                       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_READ, register_addr, offset, register_val);
+                       if (retval < 0) {
+                               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Failed to read\n");
+                               goto free_mem;
+                       }
+                       register_val[offset] = param;
+
+                       for (i = 0; i < offset; i++)
+                               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### offset[%d] --> 0x%02x ###\n", i, register_val[i]);
+
+                       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_WRITE, register_addr, offset, register_val);
+                       if (retval < 0) {
+                               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Failed to write\n");
+                               goto free_mem;
+                       }
+               } else {
+                       register_val = kzalloc(1, GFP_KERNEL);
+
+                       *register_val = param;
+
+                       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### 0x%04x --> 0x%02x ###\n", register_addr, *register_val);
+
+                       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_WRITE, register_addr, 1, register_val);
+                       if (retval < 0) {
+                               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Failed to write\n");
+                               goto free_mem;
+                       }
+               }
+       } else {
+               DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Read [%u]byte from [0x%04x]address.\n",
+                       param, register_addr);
+
+               if (param > MAX_VAL_OFFSET_AND_LENGTH) {
+                       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### length is too large. [ < %d]\n", MAX_VAL_OFFSET_AND_LENGTH);
+                       goto out;
+               }
+
+               register_val = kzalloc(param, GFP_KERNEL);
+
+               retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_READ, register_addr, param, register_val);
+               if (retval < 0) {
+                       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "\n### Failed to read\n");
+                       goto free_mem;
+               }
+
+               for (i = 0; i < param; i++)
+                       DEBUG_PRNT_SCREEN(debug_buffer, buffer_temp, DEBUG_STR_LEN, "### offset[%d] --> 0x%02x ###\n", i, register_val[i]);
+       }
+
+free_mem:
+       kfree(register_val);
+
+out:
+       return count;
+}
+
+#ifdef USE_GUEST_THREAD
+static ssize_t guest_pkt_dbg_level_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       return sprintf(buf, "%d\n", rmi4_data->guest_pkt_dbg_level);
+}
+
+static ssize_t guest_pkt_dbg_level_store(struct device *dev, struct device_attribute *attr,
+               const char *buf, size_t count)
+{
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned long val;
+
+       if (kstrtoul(buf, 0, &val) < 0)
+               return -EINVAL;
+
+       rmi4_data->guest_pkt_dbg_level = (unsigned char)val;
+
+       return count;
+}
+#endif
+
+/* TODO: Below functions are added to check that firmware update is needed or not.
+ * During development period, we need to support test firmware and various H/W
+ * type such as A0/A1/B0.... So Below conditions are very compex, maybe we need to
+ * simplify this function..
+ *
+ * synaptics_get_firmware_name         : get firmware name according to board enviroment.
+ * synaptics_check_pr_number           : to check that configuration block is correct or not.
+ * synaptics_skip_firmware_update      : check condition(according to requiremnt by CS).
+ */
+
+/* Define for board specific firmware name....*/
+#define FW_IMAGE_NAME_NONE     NULL
+
+/* Defines firmware name for K project
+ *
+ * A1: A1 panel                                                -> 140108 : removed
+ *             [0x07 is final version.]
+ * A2: A2 panel(Old b/l) 5.2 inch
+ *             [0x11 is final version.]
+ * A2 FHD/WQHD: A2 panel(New b/l) 5.2 inch
+ *             [WQHD is started from 0x12 ~ , FHD is started from 0x21 ~ ]
+ * A3 FHD/WQHD: 5.1 inch A2 panel
+ */
+
+/* TODO : Remove A1_K, A2_K firmware when is not used anymore. */
+#define FW_IMAGE_NAME_S5100_A2_K       "tsp_synaptics/synaptics_s5100_a2_k.fw"
+#define FW_IMAGE_NAME_S5100_A2_K_FHD   "tsp_synaptics/synaptics_s5100_a2_k_FHD.fw"
+#define FW_IMAGE_NAME_S5100_A2_K_WQHD  FW_IMAGE_NAME_NONE/*"tsp_synaptics/synaptics_s5100_a2_k_WQHD.fw"*/
+#define FW_IMAGE_NAME_S5100_A3_K_FHD   "tsp_synaptics/synaptics_s5100_a3_k_FHD.fw"
+#define FW_IMAGE_NAME_S5100_A3_K_WQHD  FW_IMAGE_NAME_NONE
+#define FW_IMAGE_NAME_S5100_A3_KQ_WQHD "tsp_synaptics/synaptics_s5100_a3_kq_WQHD.fw"
+
+static void synaptics_get_firmware_name(struct synaptics_rmi4_data *rmi4_data)
+{
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       if (pdata->firmware_name) {
+               rmi4_data->firmware_name = pdata->firmware_name;
+               goto out;
+       }
+
+       /*
+        * Get the firmware name.. for your board.
+        * I recommend to get the firmware name from platform data(board or dt data)
+        * instead of using below code.
+        * If firmware is FW_IMAGE_NAME_NONE, firmware update will be skipped..
+        */
+       rmi4_data->firmware_name = FW_IMAGE_NAME_NONE;
+
+       /* For K project */
+       if (strncmp(pdata->project_name, "K", 1) == 0) {
+               if (rmi4_data->product_id == SYNAPTICS_PRODUCT_ID_S5100) {
+                       switch (rmi4_data->ic_revision_of_ic) {
+                       case SYNAPTICS_IC_REVISION_A2:
+                               if (rmi4_data->bootloader_id[SYNAPTICS_BL_MAJOR_REV_OFFSET] >= BL_MAJOR_VER_OF_GUEST_THREAD
+                                       && rmi4_data->bootloader_id[SYNAPTICS_BL_MINOR_REV_OFFSET] >= BL_MINOR_VER_OF_GUEST_THREAD) {
+                                       if (strncmp(pdata->project_name, "KQ", 2) == 0)
+                                               rmi4_data->firmware_name = FW_IMAGE_NAME_S5100_A2_K_WQHD;
+                                       else
+                                               rmi4_data->firmware_name = FW_IMAGE_NAME_S5100_A2_K_FHD;
+                               } else {
+                                       rmi4_data->firmware_name = FW_IMAGE_NAME_S5100_A2_K;
+                               }
+                               break;
+                       case SYNAPTICS_IC_REVISION_A3:
+                               if (strncmp(pdata->project_name, "KQ", 2) == 0)
+                                       rmi4_data->firmware_name = FW_IMAGE_NAME_S5100_A3_KQ_WQHD;
+                               else
+                                       rmi4_data->firmware_name = FW_IMAGE_NAME_S5100_A3_K_FHD;
+                               break;
+                       default:
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to get firmware name for %s project's ic revision[0x%02X]\n",
+                                       __func__, pdata->project_name, rmi4_data->ic_revision_of_ic);
+                               break;
+                       }
+               }
+       }
+
+out:
+       return;
+}
+
+#ifdef CHECK_PR_NUMBER
+static bool synaptics_check_pr_number(struct synaptics_rmi4_data *rmi4_data,
+               const struct firmware *fw_entry)
+{
+       unsigned int fw_pr_number = 0;
+       int     image_ver = (int)fw_entry->data[FIRMWARE_IMG_HEADER_MAJOR_VERSION_OFFSET];
+
+       /* Check base fw version. base fw version is PR number. ex)PR1566790_...img */
+       if (image_ver >= NEW_IMG_MAJOR_VERSION) {
+                       fw_pr_number = ((int)(fw_entry->data[PR_NUMBER_0TH_BYTE_BIN_OFFSET + 3] & 0xFF) << 24) |
+                                                       ((int)(fw_entry->data[PR_NUMBER_0TH_BYTE_BIN_OFFSET + 2] & 0xFF) << 16) |
+                                                       ((int)(fw_entry->data[PR_NUMBER_0TH_BYTE_BIN_OFFSET + 1] & 0xFF) << 8) |
+                                                       (int)(fw_entry->data[PR_NUMBER_0TH_BYTE_BIN_OFFSET] & 0xFF);
+       } else {
+               if ((int)fw_entry->data[OLD_IMG_CHECK_PR_BIT_BIN_OFFSET]) {
+                       fw_pr_number = ((int)(fw_entry->data[OLD_IMG_PR_NUMBER_0TH_BYTE_BIN_OFFSET + 3] & 0xFF) << 24) |
+                                                       ((int)(fw_entry->data[OLD_IMG_PR_NUMBER_0TH_BYTE_BIN_OFFSET + 2] & 0xFF) << 16) |
+                                                       ((int)(fw_entry->data[OLD_IMG_PR_NUMBER_0TH_BYTE_BIN_OFFSET + 1] & 0xFF) << 8) |
+                                                       (int)(fw_entry->data[OLD_IMG_PR_NUMBER_0TH_BYTE_BIN_OFFSET] & 0xFF);
+               } else {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Firmware do not have PR number\n", __func__);
+                       goto out;
+               }
+       }
+
+       if (fw_pr_number != rmi4_data->rmi4_mod_info.pr_number) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: pr_number mismatched[IC/BIN] : %d / %d, excute update!!\n",
+                               __func__, rmi4_data->rmi4_mod_info.pr_number, fw_pr_number);
+               return false;
+       }
+
+out:
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: pr_number[IC/BIN] : %d / %d\n",
+                       __func__, rmi4_data->rmi4_mod_info.pr_number, fw_pr_number);
+
+       return true;
+}
+#endif
+
+static bool synaptics_skip_firmware_update(struct synaptics_rmi4_data *rmi4_data,
+               const struct firmware *fw_entry)
+{
+       int image_ver = (int)fw_entry->data[FIRMWARE_IMG_HEADER_MAJOR_VERSION_OFFSET];
+
+       if (image_ver >= NEW_IMG_MAJOR_VERSION) {
+               rmi4_data->ic_revision_of_bin = (int)fw_entry->data[IC_REVISION_BIN_OFFSET];
+               rmi4_data->fw_version_of_bin = (int)fw_entry->data[FW_VERSION_BIN_OFFSET];
+       } else {
+               rmi4_data->ic_revision_of_bin = (int)fw_entry->data[OLD_IMG_IC_REVISION_BIN_OFFSET];
+               rmi4_data->fw_version_of_bin = (int)fw_entry->data[OLD_IMG_FW_VERSION_BIN_OFFSET];
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: FW size. revision, version [%ld, 0x%02X/0x%02X(BIN/IC), 0x%02X/0x%02X(BIN/IC)]\n",
+               __func__, fw_entry->size,
+               rmi4_data->ic_revision_of_bin, rmi4_data->ic_revision_of_ic,
+               rmi4_data->fw_version_of_bin, rmi4_data->fw_version_of_ic);
+
+       if (rmi4_data->flash_prog_mode) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Force firmware update : Flash prog bit is setted fw\n",
+                       __func__);
+               goto out;
+       }
+
+       if (rmi4_data->ic_revision_of_bin != rmi4_data->ic_revision_of_ic) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Skip update because revision is mismatched.\n",
+                       __func__);
+               return true;
+       }
+
+       if (rmi4_data->fw_version_of_bin < rmi4_data->fw_version_of_ic) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Do not need to update\n",
+                       __func__);
+               return true;
+       }
+
+       if (rmi4_data->fw_version_of_bin == rmi4_data->fw_version_of_ic) {
+#ifdef CHECK_PR_NUMBER
+               if (!synaptics_check_pr_number(rmi4_data, fw_entry))
+                       goto out;
+#endif
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Do not need to update\n",
+                       __func__);
+               return true;
+       }
+
+out:
+       return false;
+}
+
+int synaptics_rmi4_fw_update_on_probe(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       const struct firmware *fw_entry = NULL;
+       unsigned char *fw_data = NULL;
+
+       synaptics_get_firmware_name(rmi4_data);
+
+       if (rmi4_data->firmware_name == NULL) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: firmware name is NULL!, Skip update firmware.\n",
+                               __func__);
+               return 0;
+       } else {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Load firmware : %s\n",
+                                       __func__, rmi4_data->firmware_name);
+       }
+
+#ifdef SKIP_UPDATE_FW_ON_PROBE
+       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Intentionally skip update firmware.\n",
+                       __func__);
+       goto done;
+#endif
+
+       retval = request_firmware(&fw_entry, rmi4_data->firmware_name, &rmi4_data->i2c_client->dev);
+       if (retval) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Firmware image %s not available\n",
+                               __func__, rmi4_data->firmware_name);
+               goto done;
+       }
+
+       if (synaptics_skip_firmware_update(rmi4_data, fw_entry))
+               goto done;
+
+       fw_data = (unsigned char *) fw_entry->data;
+
+       retval = synaptics_fw_updater(fw_data);
+       if (retval)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed update firmware\n",
+                               __func__);
+done:
+       if (fw_entry)
+               release_firmware(fw_entry);
+
+       return retval;
+}
+EXPORT_SYMBOL(synaptics_rmi4_fw_update_on_probe);
+
+static int synaptics_load_fw_from_kernel(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       int image_ver = 0;
+       const struct firmware *fw_entry = NULL;
+       unsigned char *fw_data = NULL;
+
+       synaptics_get_firmware_name(rmi4_data);
+
+       if (rmi4_data->firmware_name == NULL) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: firmware name is NULL!, Skip update firmware.\n",
+                               __func__);
+               return 0;
+       } else {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Load firmware : %s\n",
+                                       __func__, rmi4_data->firmware_name);
+       }
+
+       retval = request_firmware(&fw_entry, rmi4_data->firmware_name,
+                               &rmi4_data->i2c_client->dev);
+
+       if (retval) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Firmware image %s not available\n",
+                               __func__, rmi4_data->firmware_name);
+               goto done;
+       }
+
+       image_ver = (int)fw_entry->data[FIRMWARE_IMG_HEADER_MAJOR_VERSION_OFFSET];
+
+       if (image_ver >= NEW_IMG_MAJOR_VERSION) {
+               rmi4_data->ic_revision_of_bin = (int)fw_entry->data[IC_REVISION_BIN_OFFSET];
+               rmi4_data->fw_version_of_bin = (int)fw_entry->data[FW_VERSION_BIN_OFFSET];
+       } else {
+               rmi4_data->ic_revision_of_bin = (int)fw_entry->data[OLD_IMG_IC_REVISION_BIN_OFFSET];
+               rmi4_data->fw_version_of_bin = (int)fw_entry->data[OLD_IMG_FW_VERSION_BIN_OFFSET];
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: FW size. revision, version [%ld, 0x%02X/0x%02X(BIN/IC), 0x%02X/0x%02X(BIN/IC)]\n",
+               __func__, fw_entry->size,
+               rmi4_data->ic_revision_of_bin, rmi4_data->ic_revision_of_ic,
+               rmi4_data->fw_version_of_bin, rmi4_data->fw_version_of_ic);
+
+       fw_data = (unsigned char *) fw_entry->data;
+
+       retval = synaptics_fw_updater(fw_data);
+       if (retval)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed update firmware\n",
+                               __func__);
+done:
+       if (fw_entry)
+               release_firmware(fw_entry);
+
+       return retval;
+}
+
+static int synaptics_load_fw_from_ums(struct synaptics_rmi4_data *rmi4_data)
+{
+       struct file *fp;
+       mm_segment_t old_fs;
+       int fw_size, nread;
+       int error = 0;
+
+       old_fs = get_fs();
+       set_fs(KERNEL_DS);
+
+       fp = filp_open(SYNAPTICS_DEFAULT_UMS_FW, O_RDONLY, S_IRUSR);
+       if (IS_ERR(fp)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed to open %s.\n",
+                               __func__, SYNAPTICS_DEFAULT_UMS_FW);
+               error = -ENOENT;
+               goto open_err;
+       }
+
+       fw_size = fp->f_path.dentry->d_inode->i_size;
+
+       if (0 < fw_size) {
+               unsigned char *fw_data;
+               fw_data = kzalloc(fw_size, GFP_KERNEL);
+               nread = vfs_read(fp, (char __user *)fw_data,
+                       fw_size, &fp->f_pos);
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: start, file path %s, size %u Bytes\n", __func__,
+                      SYNAPTICS_DEFAULT_UMS_FW, fw_size);
+
+               if (nread != fw_size) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed to read firmware file, nread %u Bytes\n",
+                              __func__, nread);
+                       error = -EIO;
+               } else {
+                       /* UMS case */
+                       error = synaptics_fw_updater(fw_data);
+               }
+
+               if (error < 0)
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed update firmware\n",
+                               __func__);
+
+               kfree(fw_data);
+       }
+
+       filp_close(fp, current->files);
+
+ open_err:
+       set_fs(old_fs);
+       return error;
+}
+
+static int synaptics_rmi4_fw_update_on_hidden_menu(struct synaptics_rmi4_data *rmi4_data,
+               int update_type)
+{
+       int retval = 0;
+
+       /* Factory cmd for firmware update
+        * argument represent what is source of firmware like below.
+        *
+        * 0, 2 : Getting firmware which is for user.
+        * 1 : Getting firmware from sd card.
+        */
+       switch (update_type) {
+       case 2:
+       case 0:
+               retval = synaptics_load_fw_from_kernel(rmi4_data);
+               break;
+       case 1:
+               retval = synaptics_load_fw_from_ums(rmi4_data);
+               break;
+       default:
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Not support command[%d]\n",
+                       __func__, update_type);
+               break;
+       }
+
+       return retval;
+}
+
+static void fw_update(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       int retval = 0;
+
+       set_default_result(data);
+
+       retval = synaptics_rmi4_fw_update_on_hidden_menu(rmi4_data,
+               data->cmd_param[0]);
+       msleep(1000);
+
+       if (retval < 0) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+               data->cmd_state = CMD_STATUS_FAIL;
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed [%d]\n",
+                       __func__, retval);
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(OK));
+       data->cmd_state = CMD_STATUS_OK;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: success [%d]\n",
+               __func__, retval);
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_fw_ver_bin(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       set_default_result(data);
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "SY%02X%02X%02X",
+                       rmi4_data->ic_revision_of_bin,
+                       rmi4_data->panel_revision,
+                       rmi4_data->fw_version_of_bin);
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_fw_ver_ic(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       set_default_result(data);
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "SY%02X%02X%02X",
+                       rmi4_data->ic_revision_of_ic,
+                       rmi4_data->panel_revision,
+                       rmi4_data->fw_version_of_ic);
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_config_ver(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       set_default_result(data);
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s_SY_%02d%02d",
+               pdata->model_name ?: pdata->project_name ?:SYNAPTICS_DEVICE_NAME, (rmi4_data->fw_release_date_of_ic >> 8) & 0x0F,
+           rmi4_data->fw_release_date_of_ic & 0x00FF);
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_threshold(void)
+{
+       unsigned char saturationcap_lsb;
+       unsigned char saturationcap_msb;
+       unsigned char amplitudethreshold;
+       unsigned int saturationcap;
+       unsigned int threshold_integer;
+       unsigned int threshold_fraction;
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       f54->fn_ptr->read(rmi4_data,
+          rmi4_data->f12.ctrl15_addr,
+          &amplitudethreshold,
+          sizeof(amplitudethreshold));
+       f54->fn_ptr->read(rmi4_data,
+          f54->control.reg_2->address,
+          &saturationcap_lsb,
+          sizeof(saturationcap_lsb));
+       f54->fn_ptr->read(rmi4_data,
+          f54->control.reg_2->address + 1,
+          &saturationcap_msb,
+          sizeof(saturationcap_msb));
+
+       saturationcap = (saturationcap_lsb & 0xFF) | ((saturationcap_msb & 0xFF) << 8);
+       threshold_integer = (amplitudethreshold * saturationcap)/256;
+       threshold_fraction = ((amplitudethreshold * saturationcap * 1000)/256)%1000;
+
+       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: FingerAmp : %d, Satruration cap : %d\n",
+                               __func__, amplitudethreshold, saturationcap);
+
+       set_default_result(data);
+       sprintf(data->cmd_buff, "%u.%u",
+               threshold_integer, threshold_fraction);
+       data->cmd_state = CMD_STATUS_OK;
+
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void module_off_master(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       set_default_result(data);
+
+       mutex_lock(&rmi4_data->input_dev->mutex);
+
+       rmi4_data->stop_device(rmi4_data);
+
+       mutex_unlock(&rmi4_data->input_dev->mutex);
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(OK));
+       data->cmd_state = CMD_STATUS_OK;
+
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void module_on_master(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval;
+
+       set_default_result(data);
+
+       mutex_lock(&rmi4_data->input_dev->mutex);
+
+       retval = rmi4_data->start_device(rmi4_data);
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to start device\n", __func__);
+
+       mutex_unlock(&rmi4_data->input_dev->mutex);
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(OK));
+       data->cmd_state = CMD_STATUS_OK;
+
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_chip_vendor(void)
+{
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(SYNAPTICS));
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_chip_name(void)
+{
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+
+       switch (f54->rmi4_data->product_id) {
+       case SYNAPTICS_PRODUCT_ID_S5000:
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(S5000));
+               break;
+       case SYNAPTICS_PRODUCT_ID_S5050:
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(S5050));
+               break;
+       case SYNAPTICS_PRODUCT_ID_S5100:
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(S5100));
+               break;
+       case SYNAPTICS_PRODUCT_ID_S5700:
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(S5700));
+               break;
+       default:
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+       }
+
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_x_num(void)
+{
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%d", f54->tx_assigned);
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_y_num(void)
+{
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%d", f54->rx_assigned);
+       data->cmd_state = CMD_STATUS_OK;
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static int check_rx_tx_num(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       int node;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: param[0] = %d, param[1] = %d\n",
+                       __func__, data->cmd_param[0], data->cmd_param[1]);
+
+       if (data->cmd_param[0] < 0 ||
+                       data->cmd_param[0] >= f54->tx_assigned ||
+                       data->cmd_param[1] < 0 ||
+                       data->cmd_param[1] >= f54->rx_assigned) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: parameter error: %u,%u\n",
+                       __func__, data->cmd_param[0], data->cmd_param[1]);
+               node = -1;
+       } else {
+               node = data->cmd_param[0] * f54->rx_assigned +
+                                               data->cmd_param[1];
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: node = %d\n",
+                               __func__, node);
+       }
+       return node;
+}
+
+static void get_rawcap(void)
+{
+       int node;
+       short report_data;
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+
+       node = check_rx_tx_num();
+       if (node < 0) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       report_data = f54->factory_data->rawcap_data[node];
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%d", report_data);
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_rawcap_read(void)
+{
+       int retval;
+       int kk = 0;
+       unsigned char ii;
+       unsigned char jj;
+       unsigned char num_of_tx;
+       unsigned char num_of_rx;
+       short *report_data;
+       short max_value;
+       short min_value;
+       short cur_value;
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned char command = 0x01;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       retval = do_preparation();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to do preparation\n",
+                               __func__);
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error preparation");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_FULL_RAW_CAP_RX_COUPLING_COMP)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto sw_reset;
+       }
+
+       report_data = f54->factory_data->rawcap_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+       max_value = min_value = report_data[0];
+
+       for (ii = 0; ii < num_of_tx; ii++) {
+               for (jj = 0; jj < num_of_rx; jj++) {
+                       cur_value = *report_data;
+                       max_value = max(max_value, cur_value);
+                       min_value = min(min_value, cur_value);
+                       report_data++;
+
+                       if (cur_value > TSP_RAWCAP_MAX || cur_value < TSP_RAWCAP_MIN)
+                               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                                       "tx = %02d, rx = %02d, data[%d] = %d\n",
+                                       ii, jj, kk, cur_value);
+                       kk++;
+               }
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%d,%d", min_value, max_value);
+       data->cmd_state = CMD_STATUS_OK;
+
+sw_reset:
+       /* soft reset */
+       retval = f54->fn_ptr->write(rmi4_data,
+               rmi4_data->f01_cmd_base_addr,
+               &command,
+               sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+       }
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_delta(void)
+{
+       int node;
+       short report_data;
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+
+       node = check_rx_tx_num();
+       if (node < 0) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       report_data = f54->factory_data->delta_data[node];
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%d", report_data);
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_delta_read(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       short *report_data;
+       short cur_value;
+       unsigned char ii;
+       unsigned char jj;
+       unsigned char num_of_tx;
+       unsigned char num_of_rx;
+       int kk = 0;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_16BIT_IMAGE)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       report_data = f54->factory_data->delta_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+
+       for (ii = 0; ii < num_of_tx; ii++) {
+               for (jj = 0; jj < num_of_rx; jj++) {
+                       cur_value = *report_data;
+                       report_data++;
+                       if (cur_value > TSP_DELTA_MAX || cur_value < TSP_DELTA_MIN)
+                               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "tx = %02d, rx = %02d, data[%d] = %d\n",
+                                       ii, jj, kk, cur_value);
+                       kk++;
+               }
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_abscap_read(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       unsigned int *report_data;
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+       unsigned char ii;
+       unsigned short num_of_tx;
+       unsigned short num_of_rx;
+       int retval;
+       unsigned char command = 0x01;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_ABS_CAP)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto sw_reset;
+       }
+
+       report_data = f54->factory_data->abscap_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+
+       for (ii = 0; ii < num_of_rx + num_of_tx; ii++) {
+               if (rmi4_data->product_id < SYNAPTICS_PRODUCT_ID_S5100)
+                       *report_data &= 0x0FFFF;
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: %s [%d] = %d\n",
+                               __func__, ii >= num_of_rx ? "Tx" : "Rx",
+                               ii < num_of_rx ? ii : ii - num_of_rx,
+                               *report_data);
+               snprintf(temp, CMD_STR_LEN, "%d,", *report_data);
+               strncat(temp2, temp, RPT_DATA_STRNCAT_LENGTH);
+               report_data++;
+       }
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+sw_reset:
+       /* soft reset */
+       retval = f54->fn_ptr->write(rmi4_data,
+               rmi4_data->f01_cmd_base_addr,
+               &command,
+               sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+       }
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_absdelta_read(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       int *report_data;
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+       unsigned char ii;
+       unsigned short num_of_tx;
+       unsigned short num_of_rx;
+       unsigned char proximity_enables = FINGER_HOVER_EN;
+
+       int retval;
+       unsigned char command = 0x01;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       /* Enable hover before read abs delta */
+       retval = f54->fn_ptr->write(rmi4_data, f51->proximity_enables_addr,
+                       &proximity_enables,     sizeof(proximity_enables));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write proximity_enables\n",
+                       __func__);
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+       /* at least 5 frame time are needed after enable hover
+        * to get creadible abs delta data( 16.6 * 5 = 88 msec )
+        */
+       msleep(150);
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_ABS_DELTA)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto sw_reset;
+       }
+
+       report_data = f54->factory_data->absdelta_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+
+       for (ii = 0; ii < num_of_rx + num_of_tx; ii++) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: %s [%d] = %d\n",
+                               __func__, ii >= num_of_rx ? "Tx" : "Rx",
+                               ii < num_of_rx ? ii : ii - num_of_rx,
+                               *report_data);
+               snprintf(temp, CMD_STR_LEN, "%d,", *report_data);
+               strncat(temp2, temp, RPT_DATA_STRNCAT_LENGTH);
+               report_data++;
+       }
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+sw_reset:
+       /* soft reset */
+       retval = f54->fn_ptr->write(rmi4_data,
+               rmi4_data->f01_cmd_base_addr,
+               &command,
+               sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+       }
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+/* trx_short_test register mapping
+ * 0 : not used ( using 5.2 inch)
+ * 1 ~ 28 : Rx
+ * 29 ~ 31 : Side Button 0, 1, 2
+ * 32 ~ 33 : Guard
+ * 34 : Charge Substraction
+ * 35 ~ 50 : Tx
+ * 51 ~ 53 : Side Button 3, 4, 5
+ */
+static void run_trx_short_test(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       char *report_data;
+       unsigned char ii, jj;
+       int retval = 0;
+       unsigned char command = 0x01;
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       disable_irq(rmi4_data->i2c_client->irq);
+       if (!synaptics_rmi4_f54_get_report_type(F54_TREX_SHORTS)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto sw_reset;
+       }
+
+       report_data = f54->factory_data->trx_short;
+       memcpy(report_data, f54->report_data, f54->report_size);
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       for (ii = 0; ii < f54->report_size; ii++) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [%d]: [%x][%x][%x][%x][%x][%x][%x][%x]\n",
+                       __func__, ii, *report_data & 0x1, (*report_data & 0x2) >> 1,
+                       (*report_data & 0x4) >> 2, (*report_data & 0x8) >> 3,
+                       (*report_data & 0x10) >> 4, (*report_data & 0x20) >> 5,
+                       (*report_data & 0x40) >> 6, (*report_data & 0x80) >> 7);
+
+               for (jj = 0; jj < 8; jj++) {
+                       snprintf(temp, CMD_STR_LEN, "%d,", (*report_data >> jj) & 0x01);
+                       strncat(temp2, temp, RPT_DATA_STRNCAT_LENGTH);
+               }
+               report_data++;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+sw_reset:
+       enable_irq(rmi4_data->i2c_client->irq);
+
+       /* soft reset */
+       retval = f54->fn_ptr->write(rmi4_data,
+                       rmi4_data->f01_cmd_base_addr,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+       }
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+#ifdef PROXIMITY_MODE
+static void hover_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0, enables = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       enables = data->cmd_param[0];
+       retval = synaptics_rmi4_proximity_enables(rmi4_data, enables);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, retval = %d\n",
+                       __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+
+static void hover_no_sleep_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned char no_sleep = 0;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+       retval = f54->fn_ptr->read(rmi4_data,
+                               rmi4_data->f01_ctrl_base_addr, &no_sleep, sizeof(no_sleep));
+       if (retval <= 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: fail to read no_sleep[ret:%d]\n",
+                               __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0])
+               no_sleep |= NO_SLEEP_ON;
+       else
+               no_sleep &= ~(NO_SLEEP_ON);
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr, &no_sleep, sizeof(no_sleep));
+       if (retval <= 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: fail to read no_sleep[ret:%d]\n",
+                               __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void hover_set_edge_rx(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned char edge_exculsion_rx = 0x10;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0])
+               edge_exculsion_rx = 0x0;
+       else
+               edge_exculsion_rx = 0x10;
+
+       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_WRITE,
+                               rmi4_data->f51->grip_edge_exclusion_rx_addr, sizeof(edge_exculsion_rx), &edge_exculsion_rx);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write grip edge exclustion rx with [0x%02X].\n",
+                               __func__, edge_exculsion_rx);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+#endif
+
+static void set_jitter_level(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0, level = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 255) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, the range of jitter level is 0~255\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       level = data->cmd_param[0];
+
+       retval = synaptics_rmi4_f12_ctrl11_set(rmi4_data, level);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, retval = %d\n",
+                       __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+
+#ifdef GLOVE_MODE
+static void glove_mode(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (rmi4_data->f12.feature_enable & CLOSED_COVER_EN) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+               data->cmd_state = CMD_STATUS_OK;
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s Skip glove mode set (cover bit enabled)\n",
+                               __func__);
+               goto out;
+       }
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0])
+               rmi4_data->f12.feature_enable |= GLOVE_DETECTION_EN;
+       else
+               rmi4_data->f12.feature_enable &= ~(GLOVE_DETECTION_EN);
+
+       retval = synaptics_rmi4_glove_mode_enables(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, retval = %d\n",
+                       __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+
+static void fast_glove_mode(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0]) {
+               rmi4_data->f12.feature_enable |= FAST_GLOVE_DECTION_EN | GLOVE_DETECTION_EN;
+               rmi4_data->fast_glove_state = true;
+       } else {
+               rmi4_data->f12.feature_enable &= ~(FAST_GLOVE_DECTION_EN);
+               rmi4_data->fast_glove_state = false;
+       }
+
+       retval = synaptics_rmi4_glove_mode_enables(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, retval = %d\n",
+                       __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+
+static void clear_cover_mode(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 3) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       rmi4_data->f12.feature_enable = data->cmd_param[0];
+
+       if (data->cmd_param[0] && rmi4_data->fast_glove_state)
+               rmi4_data->f12.feature_enable |= FAST_GLOVE_DECTION_EN;
+
+       retval = synaptics_rmi4_glove_mode_enables(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s failed, retval = %d\n",
+                       __func__, retval);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+       /* Sync user setting value when wakeup with flip cover opened */
+       if (rmi4_data->f12.feature_enable == CLOSED_COVER_EN
+               || rmi4_data->f12.feature_enable == (CLOSED_COVER_EN | FAST_GLOVE_DECTION_EN)) {
+
+               rmi4_data->f12.feature_enable &= ~(CLOSED_COVER_EN);
+               if (rmi4_data->fast_glove_state)
+                       rmi4_data->f12.feature_enable |= GLOVE_DETECTION_EN;
+       }
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+#endif
+
+#ifdef TSP_BOOSTER
+static void boost_level(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] >= BOOSTER_LEVEL_MAX) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       change_booster_level_for_tsp(data->cmd_param[0]);
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s %d\n",
+                                       __func__, data->cmd_param[0]);
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+#endif
+
+#ifdef SIDE_TOUCH
+static void sidekey_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0;
+       unsigned char general_control_2;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       retval = f54->fn_ptr->read(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &general_control_2, sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read general control 2.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0])
+               general_control_2 |= SIDE_BUTTONS_EN;
+       else
+               general_control_2 &= ~(SIDE_BUTTONS_EN);
+
+       retval = f54->fn_ptr->write(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &general_control_2,     sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write general control 2 register with [0x%02X].\n",
+                               __func__, general_control_2);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       rmi4_data->f51->general_control_2 = general_control_2;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: General Control2 [0x%02X]\n",
+                       __func__, rmi4_data->f51->general_control_2);
+
+       if (!data->cmd_param[0])
+               synpatics_rmi4_release_all_event(rmi4_data, RELEASE_TYPE_SIDEKEY);
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+
+static void set_sidekey_only_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval = 0;
+       unsigned char device_control = 0;
+       bool sidekey_only_enable;
+
+       set_default_result(data);
+
+       mutex_lock(&rmi4_data->rmi4_device_mutex);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 1) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       sidekey_only_enable = data->cmd_param[0] ? true : false;
+
+       /* Control device_control value */
+       retval = f54->fn_ptr->read(rmi4_data,
+                               rmi4_data->f01_ctrl_base_addr, &device_control, sizeof(device_control));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read Device Control register.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (sidekey_only_enable)
+               device_control &= ~(SENSOR_SLEEP);
+       else
+               device_control |= SENSOR_SLEEP;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr, &device_control, sizeof(device_control));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write Device Control register [0x%02X].\n",
+                               __func__, device_control);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (sidekey_only_enable)
+               rmi4_data->sensor_sleep = false;
+       else
+               rmi4_data->sensor_sleep = true;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s : [F01_CTRL] 0x%02X, [F51_CTRL] 0x%02X/0x%02X/0x%02X]\n",
+               __func__, device_control, rmi4_data->f51->proximity_enables, rmi4_data->f51->general_control, rmi4_data->f51->general_control_2);
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       mutex_unlock(&rmi4_data->rmi4_device_mutex);
+
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_sidekey_threshold(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       unsigned char sidekey_threshold[NUM_OF_ACTIVE_SIDE_BUTTONS];
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+       int retval = 0, ii = 0;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is stopped\n",
+                       __func__);
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "TSP turned off");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_READ,
+                               rmi4_data->f51->sidebutton_tapthreshold_addr,
+                               NUM_OF_ACTIVE_SIDE_BUTTONS, sidekey_threshold);
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write general control 2 register with [0x%02X].\n",
+                               __func__, rmi4_data->f51->general_control_2);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       while (ii < NUM_OF_ACTIVE_SIDE_BUTTONS) {
+               snprintf(temp, CMD_STR_LEN, "%u ", sidekey_threshold[ii]);
+               strcat(temp2, temp);
+               ii++;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_sidekey_delta_read(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       int *report_data;
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+       unsigned char ii;
+       unsigned short num_of_tx;
+       unsigned short num_of_rx;
+       unsigned char sidekey_production_test;
+       int retval;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       /* Set sidekey production test */
+       retval = f54->fn_ptr->read(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &sidekey_production_test, sizeof(sidekey_production_test));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read general control 2.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       sidekey_production_test |= SIDE_BUTTONS_PRODUCTION_TEST;
+
+       retval = f54->fn_ptr->write(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &sidekey_production_test,
+                       sizeof(sidekey_production_test));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write general control 2 register with [0x%02X].\n",
+                               __func__, sidekey_production_test);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       msleep(100);
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_ABS_DELTA)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       report_data = f54->factory_data->absdelta_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+
+       for (ii = 0; ii < (num_of_rx + num_of_tx + NUM_OF_ACTIVE_SIDE_BUTTONS); ii++) {
+               if (rmi4_data->product_id < SYNAPTICS_PRODUCT_ID_S5100)
+                       *report_data &= 0x0FFFF;
+
+               if (ii < (num_of_rx + num_of_tx)) {
+                       report_data++;
+                       continue;
+               }
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: %s [%d] = %d\n", __func__, "SIDE",
+                                ii - (num_of_rx + num_of_tx), *report_data);
+               snprintf(temp, CMD_STR_LEN, "%d,", *report_data);
+               strncat(temp2, temp, RPT_DATA_STRNCAT_LENGTH);
+               report_data++;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void run_sidekey_abscap_read(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       unsigned int *report_data;
+       char temp[CMD_STR_LEN];
+       char temp2[CMD_RESULT_STR_LEN];
+       unsigned char ii;
+       unsigned short num_of_tx;
+       unsigned short num_of_rx;
+       unsigned char command = 0x01;
+       unsigned char sidekey_production_test;
+       int retval;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       /* Set sidekey production test */
+       retval = f54->fn_ptr->read(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &sidekey_production_test, sizeof(sidekey_production_test));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read general control 2.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       sidekey_production_test |= SIDE_BUTTONS_PRODUCTION_TEST;
+
+       retval = f54->fn_ptr->write(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &sidekey_production_test,
+                       sizeof(sidekey_production_test));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write general control 2 register with [0x%02X].\n",
+                               __func__, sidekey_production_test);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       msleep(100);
+
+       if (!synaptics_rmi4_f54_get_report_type(F54_ABS_CAP)) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "Error get report type");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto sw_reset;
+       }
+
+       report_data = f54->factory_data->abscap_data;
+       memcpy(report_data, f54->report_data, f54->report_size);
+       memset(temp, 0, CMD_STR_LEN);
+       memset(temp2, 0, CMD_RESULT_STR_LEN);
+
+       num_of_tx = f54->tx_assigned;
+       num_of_rx = f54->rx_assigned;
+
+       for (ii = 0; ii < num_of_rx + num_of_tx + NUM_OF_ACTIVE_SIDE_BUTTONS; ii++) {
+               if (rmi4_data->product_id < SYNAPTICS_PRODUCT_ID_S5100)
+                       *report_data &= 0x0FFFF;
+
+               if (ii < (num_of_rx + num_of_tx)) {
+                       report_data++;
+                       continue;
+               }
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: %s [%d] = %d\n", __func__, "SIDE",
+                                ii - (num_of_rx + num_of_tx), *report_data);
+               snprintf(temp, CMD_STR_LEN, "%d,", *report_data);
+               strncat(temp2, temp, RPT_DATA_STRNCAT_LENGTH);
+               report_data++;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", temp2);
+       data->cmd_state = CMD_STATUS_OK;
+
+sw_reset:
+       /* soft reset */
+       retval = f54->fn_ptr->write(rmi4_data,
+                               rmi4_data->f01_cmd_base_addr,
+                               &command,
+                               sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+       }
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void set_deepsleep_mode(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       rmi4_data->use_deepsleep = data->cmd_param[0] ? true : false;
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void lozemode_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned char general_control_2 = 0;
+       int retval;
+
+       set_default_result(data);
+
+       retval = f54->fn_ptr->read(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &general_control_2, sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read general control 2.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (data->cmd_param[0])
+               general_control_2 |= ENTER_SLEEP_MODE;
+       else
+               general_control_2 &= ~ENTER_SLEEP_MODE;
+
+       retval = f54->fn_ptr->write(rmi4_data, rmi4_data->f51->general_control_2_addr,
+                       &general_control_2,     sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write general control 2 register with [0x%02X].\n",
+                               __func__, general_control_2);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NA");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       rmi4_data->f51->general_control_2 = general_control_2;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: General Control2 [0x%02X]\n",
+                       __func__, rmi4_data->f51->general_control_2);
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+#endif
+
+static void set_tsp_test_result(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       int retval = 0;
+       unsigned char device_status = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < TSP_FACTEST_RESULT_NONE
+                || data->cmd_param[0] > TSP_FACTEST_RESULT_PASS) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               return;
+       }
+
+       if (rmi4_data->touch_stopped || rmi4_data->sensor_sleep) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is %s\n",
+                       __func__, rmi4_data->touch_stopped ? "stopped" : "Sleep state");
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "TSP is %s",
+                       rmi4_data->touch_stopped ? "off" : "sleep");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       retval = rmi4_data->i2c_read(rmi4_data,
+                       rmi4_data->f01_data_base_addr,
+                       &device_status,
+                       sizeof(device_status));
+       if (device_status != 0) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NR));
+               data->cmd_state = CMD_STATUS_FAIL;
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: IC not ready[%d]\n",
+                               __func__, device_status);
+               goto out;
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: check status register[%d]\n",
+                       __func__, device_status);
+
+       retval = synaptics_rmi4_set_tsp_test_result_in_config(data->cmd_param[0]);
+       msleep(200);
+
+       if (retval < 0) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+               data->cmd_state = CMD_STATUS_FAIL;
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed [%d]\n",
+                               __func__, retval);
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(OK));
+       data->cmd_state = CMD_STATUS_OK;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: success to save test result\n",
+                       __func__);
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+static void get_tsp_test_result(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int result = 0;
+
+       set_default_result(data);
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is stopped\n",
+                       __func__);
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "TSP turned off");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       result = synaptics_rmi4_read_tsp_test_result(rmi4_data);
+
+       if (result < TSP_FACTEST_RESULT_NONE || result > TSP_FACTEST_RESULT_PASS) {
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NG));
+               data->cmd_state = CMD_STATUS_FAIL;
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: failed [%d]\n",
+                               __func__, result);
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s",
+               result == TSP_FACTEST_RESULT_PASS ? tostring(PASS) :
+               result == TSP_FACTEST_RESULT_FAIL ? tostring(FAIL) :
+               tostring(NONE));
+       data->cmd_state = CMD_STATUS_OK;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: success [%s][%d]",       __func__,
+               result == TSP_FACTEST_RESULT_PASS ? "PASS" :
+               result == TSP_FACTEST_RESULT_FAIL ? "FAIL" :
+               "NONE", result);
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+
+#ifdef USE_ACTIVE_REPORT_RATE
+static void report_rate(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       int retval;
+       unsigned char command = COMMAND_FORCE_UPDATE;
+       unsigned char rpt_rate = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < SYNAPTICS_RPT_RATE_START
+                || data->cmd_param[0] >= SYNAPTICS_RPT_RATE_END) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: [ERROR] Touch is stopped\n",
+                       __func__);
+               snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", "TSP turned off");
+               data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+               goto out;
+       }
+
+       retval = f54->fn_ptr->read(rmi4_data, f54->control.reg_94->address,
+                       f54->control.reg_94->data, sizeof(f54->control.reg_94->data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read control_94 register.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       switch (data->cmd_param[0]) {
+       case SYNAPTICS_RPT_RATE_90HZ:
+               rpt_rate = SYNAPTICS_RPT_RATE_90HZ_VAL;
+               break;
+       case SYNAPTICS_RPT_RATE_60HZ:
+               rpt_rate = SYNAPTICS_RPT_RATE_60HZ_VAL;
+               break;
+       case SYNAPTICS_RPT_RATE_30HZ:
+               rpt_rate = SYNAPTICS_RPT_RATE_30HZ_VAL;
+               break;
+       }
+
+       if (f54->control.reg_94->noise_bursts_per_cluster == rpt_rate) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+               data->cmd_state = CMD_STATUS_OK;
+               goto out;
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+               "%s: Set report rate %sHz [0x%02X->0x%02X]\n", __func__,
+               data->cmd_param[0] == SYNAPTICS_RPT_RATE_90HZ ? "90" :
+               data->cmd_param[0] == SYNAPTICS_RPT_RATE_60HZ ? "60" : "30",
+               f54->control.reg_94->noise_bursts_per_cluster, rpt_rate);
+
+       f54->control.reg_94->noise_bursts_per_cluster = rpt_rate;
+
+       retval = f54->fn_ptr->write(rmi4_data, f54->control.reg_94->address,
+                       f54->control.reg_94->data, sizeof(f54->control.reg_94->data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write control_94 register.\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->command_base_addr,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write force update command\n",
+                               __func__);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+
+       data->cmd_state = CMD_STATUS_WAITING;
+}
+#endif
+
+#ifdef USE_STYLUS
+static void stylus_enable(void)
+{
+       struct factory_data *data = f54->factory_data;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+       unsigned char value;
+       int retval = 0;
+
+       set_default_result(data);
+
+       if (data->cmd_param[0] < 0 || data->cmd_param[0] > 2) {
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       if (rmi4_data->use_stylus != (data->cmd_param[0] ? true : false)) {
+               rmi4_data->use_stylus = data->cmd_param[0] ? true : false;
+               synpatics_rmi4_release_all_event(rmi4_data, RELEASE_TYPE_FINGER);
+       }
+
+       value = data->cmd_param[0] ? 0x01 : 0x00;
+
+       retval = synaptics_rmi4_access_register(rmi4_data, SYNAPTICS_ACCESS_WRITE,
+                               rmi4_data->f51->forcefinger_onedge_addr, sizeof(value), &value);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write force finger on edge with [0x%02X].\n",
+                               __func__, value);
+               snprintf(data->cmd_buff, sizeof(data->cmd_buff), "NG");
+               data->cmd_state = CMD_STATUS_FAIL;
+               goto out;
+       }
+
+       snprintf(data->cmd_buff, sizeof(data->cmd_buff), "OK");
+       data->cmd_state = CMD_STATUS_OK;
+
+out:
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+}
+#endif
+
+static void not_support_cmd(void)
+{
+       struct factory_data *data = f54->factory_data;
+
+       set_default_result(data);
+       snprintf(data->cmd_buff, CMD_RESULT_STR_LEN, "%s", tostring(NA));
+       set_cmd_result(data, data->cmd_buff, strlen(data->cmd_buff));
+       data->cmd_state = CMD_STATUS_NOT_APPLICABLE;
+
+       /* Some cmds are supported in specific IC and they are clear the cmd_is running flag
+        * itself(without show_cmd_result_) in their function such as hover_enable, glove_mode.
+        * So we need to clear cmd_is runnint flag if that command is replaced with
+        * not_support_cmd */
+       mutex_lock(&data->cmd_lock);
+       data->cmd_is_running = false;
+       mutex_unlock(&data->cmd_lock);
+}
+#endif
+
+static ssize_t synaptics_rmi4_f54_status_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->status);
+}
+
+static ssize_t synaptics_rmi4_f54_report_size_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->report_size);
+}
+
+static ssize_t synaptics_rmi4_f54_no_auto_cal_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->no_auto_cal);
+}
+
+static ssize_t synaptics_rmi4_f54_no_auto_cal_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned char data;
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       if (setting > 1)
+               return -EINVAL;
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->control_base_addr,
+                       &data,
+                       sizeof(data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read control register\n",
+                               __func__);
+               return retval;
+       }
+
+       if ((data & NO_AUTO_CAL_MASK) == setting)
+               return count;
+
+       data = (data & ~NO_AUTO_CAL_MASK) | (data & NO_AUTO_CAL_MASK);
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->control_base_addr,
+                       &data,
+                       sizeof(data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write control register\n",
+                               __func__);
+               return retval;
+       }
+
+       f54->no_auto_cal = (setting == 1);
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f54_report_type_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->report_type);
+}
+
+static ssize_t synaptics_rmi4_f54_report_type_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned char data;
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       if (!is_report_type_valid((enum f54_report_types)setting)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Report type not supported by driver\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       mutex_lock(&f54->status_mutex);
+
+       if (f54->status != STATUS_BUSY) {
+               f54->report_type = (enum f54_report_types)setting;
+               data = (unsigned char)setting;
+               retval = f54->fn_ptr->write(rmi4_data,
+                               f54->data_base_addr,
+                               &data,
+                               sizeof(data));
+               mutex_unlock(&f54->status_mutex);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write data register\n",
+                                       __func__);
+                       return retval;
+               }
+               return count;
+       } else {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Previous get report still ongoing\n",
+                               __func__);
+               mutex_unlock(&f54->status_mutex);
+               return -EINVAL;
+       }
+}
+
+static ssize_t synaptics_rmi4_f54_fifoindex_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       int retval;
+       unsigned char data[2];
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->data_base_addr + DATA_REPORT_INDEX_OFFSET,
+                       data,
+                       sizeof(data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read data registers\n",
+                               __func__);
+               return retval;
+       }
+
+       batohs(&f54->fifoindex, data);
+
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->fifoindex);
+}
+static ssize_t synaptics_rmi4_f54_fifoindex_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned char data[2];
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       f54->fifoindex = setting;
+
+       hstoba(data, (unsigned short)setting);
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->data_base_addr + DATA_REPORT_INDEX_OFFSET,
+                       data,
+                       sizeof(data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write data registers\n",
+                               __func__);
+               return retval;
+       }
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f54_do_preparation_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       if (setting != 1)
+               return -EINVAL;
+
+       mutex_lock(&f54->status_mutex);
+
+       if (f54->status != STATUS_IDLE) {
+               if (f54->status != STATUS_BUSY) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Invalid status (%d)\n",
+                                       __func__, f54->status);
+               } else {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Previous get report still ongoing\n",
+                                       __func__);
+               }
+               mutex_unlock(&f54->status_mutex);
+               return -EBUSY;
+       }
+
+       mutex_unlock(&f54->status_mutex);
+
+       retval = do_preparation();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to do preparation\n",
+                               __func__);
+               return retval;
+       }
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f54_get_report_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned char command;
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       if (setting != 1)
+               return -EINVAL;
+
+       command = (unsigned char)COMMAND_GET_REPORT;
+
+       if (!is_report_type_valid(f54->report_type)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Invalid report type\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       mutex_lock(&f54->status_mutex);
+
+       if (f54->status != STATUS_IDLE) {
+               if (f54->status != STATUS_BUSY) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Invalid status (%d)\n",
+                                       __func__, f54->status);
+               } else {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Previous get report still ongoing\n",
+                                       __func__);
+               }
+               mutex_unlock(&f54->status_mutex);
+               return -EBUSY;
+       }
+
+       set_interrupt(true);
+
+       f54->status = STATUS_BUSY;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->command_base_addr,
+                       &command,
+                       sizeof(command));
+       mutex_unlock(&f54->status_mutex);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write get report command\n",
+                               __func__);
+               return retval;
+       }
+
+#ifdef WATCHDOG_HRTIMER
+       hrtimer_start(&f54->watchdog,
+                       ktime_set(WATCHDOG_TIMEOUT_S, 0),
+                       HRTIMER_MODE_REL);
+#endif
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f54_force_cal_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned char command;
+       unsigned long setting;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &setting);
+       if (retval)
+               return retval;
+
+       if (setting != 1)
+               return count;
+
+       command = (unsigned char)COMMAND_FORCE_CAL;
+
+       if (f54->status == STATUS_BUSY)
+               return -EBUSY;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->command_base_addr,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write force cal command\n",
+                               __func__);
+               return retval;
+       }
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f54_num_of_mapped_rx_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->rx_assigned);
+}
+
+static ssize_t synaptics_rmi4_f54_num_of_mapped_tx_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", f54->tx_assigned);
+}
+
+simple_show_func_unsigned(query, num_of_rx_electrodes)
+simple_show_func_unsigned(query, num_of_tx_electrodes)
+simple_show_func_unsigned(query, has_image16)
+simple_show_func_unsigned(query, has_image8)
+simple_show_func_unsigned(query, has_baseline)
+simple_show_func_unsigned(query, clock_rate)
+simple_show_func_unsigned(query, touch_controller_family)
+simple_show_func_unsigned(query, has_pixel_touch_threshold_adjustment)
+simple_show_func_unsigned(query, has_sensor_assignment)
+simple_show_func_unsigned(query, has_interference_metric)
+simple_show_func_unsigned(query, has_sense_frequency_control)
+simple_show_func_unsigned(query, has_firmware_noise_mitigation)
+simple_show_func_unsigned(query, has_two_byte_report_rate)
+simple_show_func_unsigned(query, has_one_byte_report_rate)
+simple_show_func_unsigned(query, has_relaxation_control)
+simple_show_func_unsigned(query, curve_compensation_mode)
+simple_show_func_unsigned(query, has_iir_filter)
+simple_show_func_unsigned(query, has_cmn_removal)
+simple_show_func_unsigned(query, has_cmn_maximum)
+simple_show_func_unsigned(query, has_touch_hysteresis)
+simple_show_func_unsigned(query, has_edge_compensation)
+simple_show_func_unsigned(query, has_per_frequency_noise_control)
+simple_show_func_unsigned(query, has_signal_clarity)
+simple_show_func_unsigned(query, number_of_sensing_frequencies)
+
+show_store_func_unsigned(control, reg_0, no_relax)
+show_store_func_unsigned(control, reg_0, no_scan)
+show_store_func_unsigned(control, reg_1, bursts_per_cluster)
+show_store_func_unsigned(control, reg_2, saturation_cap)
+show_store_func_unsigned(control, reg_3, pixel_touch_threshold)
+show_store_func_unsigned(control, reg_4__6, rx_feedback_cap)
+show_store_func_unsigned(control, reg_4__6, low_ref_cap)
+show_store_func_unsigned(control, reg_4__6, low_ref_feedback_cap)
+show_store_func_unsigned(control, reg_4__6, low_ref_polarity)
+show_store_func_unsigned(control, reg_4__6, high_ref_cap)
+show_store_func_unsigned(control, reg_4__6, high_ref_feedback_cap)
+show_store_func_unsigned(control, reg_4__6, high_ref_polarity)
+show_store_func_unsigned(control, reg_7, cbc_cap)
+show_store_func_unsigned(control, reg_7, cbc_polarity)
+show_store_func_unsigned(control, reg_7, cbc_tx_carrier_selection)
+show_store_func_unsigned(control, reg_8__9, integration_duration)
+show_store_func_unsigned(control, reg_8__9, reset_duration)
+show_store_func_unsigned(control, reg_10, noise_sensing_bursts_per_image)
+show_store_func_unsigned(control, reg_12__13, slow_relaxation_rate)
+show_store_func_unsigned(control, reg_12__13, fast_relaxation_rate)
+show_store_func_unsigned(control, reg_14, rxs_on_xaxis)
+show_store_func_unsigned(control, reg_14, curve_comp_on_txs)
+show_store_func_unsigned(control, reg_20, disable_noise_mitigation)
+show_store_func_unsigned(control, reg_21, freq_shift_noise_threshold)
+show_store_func_unsigned(control, reg_22__26, medium_noise_threshold)
+show_store_func_unsigned(control, reg_22__26, high_noise_threshold)
+show_store_func_unsigned(control, reg_22__26, noise_density)
+show_store_func_unsigned(control, reg_22__26, frame_count)
+show_store_func_unsigned(control, reg_27, iir_filter_coef)
+show_store_func_unsigned(control, reg_28, quiet_threshold)
+show_store_func_unsigned(control, reg_29, cmn_filter_disable)
+show_store_func_unsigned(control, reg_30, cmn_filter_max)
+show_store_func_unsigned(control, reg_31, touch_hysteresis)
+show_store_func_unsigned(control, reg_32__35, rx_low_edge_comp)
+show_store_func_unsigned(control, reg_32__35, rx_high_edge_comp)
+show_store_func_unsigned(control, reg_32__35, tx_low_edge_comp)
+show_store_func_unsigned(control, reg_32__35, tx_high_edge_comp)
+show_store_func_unsigned(control, reg_41, no_signal_clarity)
+show_store_func_unsigned(control, reg_57, cbc_cap_0d)
+show_store_func_unsigned(control, reg_57, cbc_polarity_0d)
+show_store_func_unsigned(control, reg_57, cbc_tx_carrier_selection_0d)
+
+show_replicated_func_unsigned(control, reg_15, sensor_rx_assignment)
+show_replicated_func_unsigned(control, reg_16, sensor_tx_assignment)
+show_replicated_func_unsigned(control, reg_17, disable)
+show_replicated_func_unsigned(control, reg_17, filter_bandwidth)
+show_replicated_func_unsigned(control, reg_19, stretch_duration)
+show_replicated_func_unsigned(control, reg_38, noise_control_1)
+show_replicated_func_unsigned(control, reg_39, noise_control_2)
+show_replicated_func_unsigned(control, reg_40, noise_control_3)
+
+show_store_replicated_func_unsigned(control, reg_36, axis1_comp)
+show_store_replicated_func_unsigned(control, reg_37, axis2_comp)
+
+static ssize_t synaptics_rmi4_f54_burst_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       int retval;
+       int size = 0;
+       unsigned char ii;
+       unsigned char *temp;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       mutex_lock(&f54->control_mutex);
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->control.reg_17->address,
+                       (unsigned char *)f54->control.reg_17->data,
+                       f54->control.reg_17->length);
+       if (retval < 0) {
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read control reg_17\n",
+                               __func__);
+       }
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->control.reg_18->address,
+                       (unsigned char *)f54->control.reg_18->data,
+                       f54->control.reg_18->length);
+       if (retval < 0) {
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read control reg_18\n",
+                               __func__);
+       }
+
+       mutex_unlock(&f54->control_mutex);
+
+       temp = buf;
+
+       for (ii = 0; ii < f54->control.reg_17->length; ii++) {
+               retval = snprintf(temp, PAGE_SIZE - size, "%u ", (1 << 8) *
+                       f54->control.reg_17->data[ii].burst_count_b8__10 +
+                       f54->control.reg_18->data[ii].burst_count_b0__7);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Faild to write output\n",
+                                       __func__);
+                       return retval;
+               }
+               size += retval;
+               temp += retval;
+       }
+
+       retval = snprintf(temp, PAGE_SIZE - size, "\n");
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Faild to write null terminator\n",
+                               __func__);
+               return retval;
+       }
+
+       return size + retval;
+}
+
+static ssize_t synaptics_rmi4_f54_data_read(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       mutex_lock(&f54->data_mutex);
+
+       if (count < f54->report_size) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Report type %d data size (%d) too large\n",
+                               __func__, f54->report_type, f54->report_size);
+               mutex_unlock(&f54->data_mutex);
+               return -EINVAL;
+       }
+
+       if (f54->report_data) {
+               memcpy(buf, f54->report_data, f54->report_size);
+               mutex_unlock(&f54->data_mutex);
+               return f54->report_size;
+       } else {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Report type %d data not available\n",
+                               __func__, f54->report_type);
+               mutex_unlock(&f54->data_mutex);
+               return -EINVAL;
+       }
+}
+
+static int synaptics_rmi4_f54_set_sysfs(void)
+{
+       int retval;
+       int reg_num;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       f54->attr_dir = kobject_create_and_add("f54",
+                       &rmi4_data->input_dev->dev.kobj);
+       if (!f54->attr_dir) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to create sysfs directory\n",
+                       __func__);
+               goto exit_1;
+       }
+
+       retval = sysfs_create_bin_file(f54->attr_dir, &dev_report_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs bin file\n",
+                               __func__);
+               goto exit_2;
+       }
+
+       retval = sysfs_create_group(f54->attr_dir, &attr_group);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs attributes\n",
+                               __func__);
+               goto exit_3;
+       }
+
+       for (reg_num = 0; reg_num < ARRAY_SIZE(attrs_ctrl_regs); reg_num++) {
+               if (attrs_ctrl_regs_exist[reg_num]) {
+                       retval = sysfs_create_group(f54->attr_dir,
+                                       &attrs_ctrl_regs[reg_num]);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to create sysfs attributes\n",
+                                               __func__);
+                               goto exit_4;
+                       }
+               }
+       }
+
+       return 0;
+
+exit_4:
+       sysfs_remove_group(f54->attr_dir, &attr_group);
+
+       for (reg_num--; reg_num >= 0; reg_num--)
+               sysfs_remove_group(f54->attr_dir, &attrs_ctrl_regs[reg_num]);
+
+exit_3:
+       sysfs_remove_bin_file(f54->attr_dir, &dev_report_data);
+
+exit_2:
+       kobject_put(f54->attr_dir);
+
+exit_1:
+       return -ENODEV;
+}
+
+static int synaptics_rmi4_f54_set_ctrl(void)
+{
+       unsigned char length;
+       unsigned char reg_num = 0;
+       unsigned char num_of_sensing_freqs;
+       unsigned short reg_addr = f54->control_base_addr;
+       struct f54_control *control = &f54->control;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       num_of_sensing_freqs = f54->query.number_of_sensing_frequencies;
+
+       /* control 0 */
+       attrs_ctrl_regs_exist[reg_num] = true;
+       control->reg_0 = kzalloc(sizeof(*(control->reg_0)),
+                       GFP_KERNEL);
+       if (!control->reg_0)
+               goto exit_no_mem;
+       control->reg_0->address = reg_addr;
+       reg_addr += sizeof(control->reg_0->data);
+       reg_num++;
+
+       /* control 1 */
+       if ((f54->query.touch_controller_family == 0) ||
+                       (f54->query.touch_controller_family == 1)) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_1 = kzalloc(sizeof(*(control->reg_1)),
+                               GFP_KERNEL);
+               if (!control->reg_1)
+                       goto exit_no_mem;
+               control->reg_1->address = reg_addr;
+               reg_addr += sizeof(control->reg_1->data);
+       }
+       reg_num++;
+
+       /* control 2 */
+       attrs_ctrl_regs_exist[reg_num] = true;
+       control->reg_2 = kzalloc(sizeof(*(control->reg_2)),
+                       GFP_KERNEL);
+       if (!control->reg_2)
+               goto exit_no_mem;
+       control->reg_2->address = reg_addr;
+       reg_addr += sizeof(control->reg_2->data);
+       reg_num++;
+
+       /* control 3 */
+       if (f54->query.has_pixel_touch_threshold_adjustment == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_3 = kzalloc(sizeof(*(control->reg_3)),
+                               GFP_KERNEL);
+               if (!control->reg_3)
+                       goto exit_no_mem;
+               control->reg_3->address = reg_addr;
+               reg_addr += sizeof(control->reg_3->data);
+       }
+       reg_num++;
+
+       /* controls 4 5 6 */
+       if ((f54->query.touch_controller_family == 0) ||
+                       (f54->query.touch_controller_family == 1)) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_4__6 = kzalloc(sizeof(*(control->reg_4__6)),
+                               GFP_KERNEL);
+               if (!control->reg_4__6)
+                       goto exit_no_mem;
+               control->reg_4__6->address = reg_addr;
+               reg_addr += sizeof(control->reg_4__6->data);
+       }
+       reg_num++;
+
+       /* control 7 */
+       if (f54->query.touch_controller_family == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_7 = kzalloc(sizeof(*(control->reg_7)),
+                               GFP_KERNEL);
+               if (!control->reg_7)
+                       goto exit_no_mem;
+               control->reg_7->address = reg_addr;
+               reg_addr += sizeof(control->reg_7->data);
+       }
+       reg_num++;
+
+       /* controls 8 9 */
+       if ((f54->query.touch_controller_family == 0) ||
+                       (f54->query.touch_controller_family == 1)) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_8__9 = kzalloc(sizeof(*(control->reg_8__9)),
+                               GFP_KERNEL);
+               if (!control->reg_8__9)
+                       goto exit_no_mem;
+               control->reg_8__9->address = reg_addr;
+               reg_addr += sizeof(control->reg_8__9->data);
+       }
+       reg_num++;
+
+       /* control 10 */
+       if (f54->query.has_interference_metric == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_10 = kzalloc(sizeof(*(control->reg_10)),
+                               GFP_KERNEL);
+               if (!control->reg_10)
+                       goto exit_no_mem;
+               control->reg_10->address = reg_addr;
+               reg_addr += sizeof(control->reg_10->data);
+       }
+       reg_num++;
+
+       /* control 11 */
+       if (f54->query.has_ctrl11 == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_11 = kzalloc(sizeof(*(control->reg_11)),
+                               GFP_KERNEL);
+               if (!control->reg_11)
+                       goto exit_no_mem;
+               control->reg_11->address = reg_addr;
+               reg_addr += sizeof(control->reg_11->data);
+       }
+       reg_num++;
+
+       /* controls 12 13 */
+       if (f54->query.has_relaxation_control == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_12__13 = kzalloc(sizeof(*(control->reg_12__13)),
+                               GFP_KERNEL);
+               if (!control->reg_12__13)
+                       goto exit_no_mem;
+               control->reg_12__13->address = reg_addr;
+               reg_addr += sizeof(control->reg_12__13->data);
+       }
+       reg_num++;
+
+       /* controls 14 15 16 */
+       if (f54->query.has_sensor_assignment == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+
+               control->reg_14 = kzalloc(sizeof(*(control->reg_14)),
+                               GFP_KERNEL);
+               if (!control->reg_14)
+                       goto exit_no_mem;
+               control->reg_14->address = reg_addr;
+               reg_addr += sizeof(control->reg_14->data);
+
+               control->reg_15 = kzalloc(sizeof(*(control->reg_15)),
+                               GFP_KERNEL);
+               if (!control->reg_15)
+                       goto exit_no_mem;
+               control->reg_15->length = f54->query.num_of_rx_electrodes;
+               control->reg_15->data = kzalloc(control->reg_15->length *
+                               sizeof(*(control->reg_15->data)), GFP_KERNEL);
+               if (!control->reg_15->data)
+                       goto exit_no_mem;
+               control->reg_15->address = reg_addr;
+               reg_addr += control->reg_15->length;
+
+               control->reg_16 = kzalloc(sizeof(*(control->reg_16)),
+                               GFP_KERNEL);
+               if (!control->reg_16)
+                       goto exit_no_mem;
+               control->reg_16->length = f54->query.num_of_tx_electrodes;
+               control->reg_16->data = kzalloc(control->reg_16->length *
+                               sizeof(*(control->reg_16->data)), GFP_KERNEL);
+               if (!control->reg_16->data)
+                       goto exit_no_mem;
+               control->reg_16->address = reg_addr;
+               reg_addr += control->reg_16->length;
+       }
+       reg_num++;
+
+       /* controls 17 18 19 */
+       if (f54->query.has_sense_frequency_control == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+
+               length = num_of_sensing_freqs;
+
+               control->reg_17 = kzalloc(sizeof(*(control->reg_17)),
+                               GFP_KERNEL);
+               if (!control->reg_17)
+                       goto exit_no_mem;
+               control->reg_17->length = length;
+               control->reg_17->data = kzalloc(length *
+                               sizeof(*(control->reg_17->data)), GFP_KERNEL);
+               if (!control->reg_17->data)
+                       goto exit_no_mem;
+               control->reg_17->address = reg_addr;
+               reg_addr += length;
+
+               control->reg_18 = kzalloc(sizeof(*(control->reg_18)),
+                               GFP_KERNEL);
+               if (!control->reg_18)
+                       goto exit_no_mem;
+               control->reg_18->length = length;
+               control->reg_18->data = kzalloc(length *
+                               sizeof(*(control->reg_18->data)), GFP_KERNEL);
+               if (!control->reg_18->data)
+                       goto exit_no_mem;
+               control->reg_18->address = reg_addr;
+               reg_addr += length;
+
+               control->reg_19 = kzalloc(sizeof(*(control->reg_19)),
+                               GFP_KERNEL);
+               if (!control->reg_19)
+                       goto exit_no_mem;
+               control->reg_19->length = length;
+               control->reg_19->data = kzalloc(length *
+                               sizeof(*(control->reg_19->data)), GFP_KERNEL);
+               if (!control->reg_19->data)
+                       goto exit_no_mem;
+               control->reg_19->address = reg_addr;
+               reg_addr += length;
+       }
+       reg_num++;
+
+       /* control 20 */
+       attrs_ctrl_regs_exist[reg_num] = true;
+       control->reg_20 = kzalloc(sizeof(*(control->reg_20)),
+                       GFP_KERNEL);
+       if (!control->reg_20)
+               goto exit_no_mem;
+       control->reg_20->address = reg_addr;
+       reg_addr += sizeof(control->reg_20->data);
+       reg_num++;
+
+       /* control 21 */
+       if (f54->query.has_sense_frequency_control == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_21 = kzalloc(sizeof(*(control->reg_21)),
+                               GFP_KERNEL);
+               if (!control->reg_21)
+                       goto exit_no_mem;
+               control->reg_21->address = reg_addr;
+               reg_addr += sizeof(control->reg_21->data);
+       }
+       reg_num++;
+
+       /* controls 22 23 24 25 26 */
+       if (f54->query.has_firmware_noise_mitigation == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_22__26 = kzalloc(sizeof(*(control->reg_22__26)),
+                               GFP_KERNEL);
+               if (!control->reg_22__26)
+                       goto exit_no_mem;
+               control->reg_22__26->address = reg_addr;
+               reg_addr += sizeof(control->reg_22__26->data);
+       }
+       reg_num++;
+
+       /* control 27 */
+       if (f54->query.has_iir_filter == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_27 = kzalloc(sizeof(*(control->reg_27)),
+                               GFP_KERNEL);
+               if (!control->reg_27)
+                       goto exit_no_mem;
+               control->reg_27->address = reg_addr;
+               reg_addr += sizeof(control->reg_27->data);
+       }
+       reg_num++;
+
+       /* control 28 */
+       if (f54->query.has_firmware_noise_mitigation == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_28 = kzalloc(sizeof(*(control->reg_28)),
+                               GFP_KERNEL);
+               if (!control->reg_28)
+                       goto exit_no_mem;
+               control->reg_28->address = reg_addr;
+               reg_addr += sizeof(control->reg_28->data);
+       }
+       reg_num++;
+
+       /* control 29 */
+       if (f54->query.has_cmn_removal == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_29 = kzalloc(sizeof(*(control->reg_29)),
+                               GFP_KERNEL);
+               if (!control->reg_29)
+                       goto exit_no_mem;
+               control->reg_29->address = reg_addr;
+               reg_addr += sizeof(control->reg_29->data);
+       }
+       reg_num++;
+
+       /* control 30 */
+       if (f54->query.has_cmn_maximum == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_30 = kzalloc(sizeof(*(control->reg_30)),
+                               GFP_KERNEL);
+               if (!control->reg_30)
+                       goto exit_no_mem;
+               control->reg_30->address = reg_addr;
+               reg_addr += sizeof(control->reg_30->data);
+       }
+       reg_num++;
+
+       /* control 31 */
+       if (f54->query.has_touch_hysteresis == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_31 = kzalloc(sizeof(*(control->reg_31)),
+                               GFP_KERNEL);
+               if (!control->reg_31)
+                       goto exit_no_mem;
+               control->reg_31->address = reg_addr;
+               reg_addr += sizeof(control->reg_31->data);
+       }
+       reg_num++;
+
+       /* controls 32 33 34 35 */
+       if (f54->query.has_edge_compensation == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_32__35 = kzalloc(sizeof(*(control->reg_32__35)),
+                               GFP_KERNEL);
+               if (!control->reg_32__35)
+                       goto exit_no_mem;
+               control->reg_32__35->address = reg_addr;
+               reg_addr += sizeof(control->reg_32__35->data);
+       }
+       reg_num++;
+
+       /* control 36 */
+       if ((f54->query.curve_compensation_mode == 1) ||
+                       (f54->query.curve_compensation_mode == 2)) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+
+               if (f54->query.curve_compensation_mode == 1) {
+                       length = max(f54->query.num_of_rx_electrodes,
+                                       f54->query.num_of_tx_electrodes);
+               } else if (f54->query.curve_compensation_mode == 2) {
+                       length = f54->query.num_of_rx_electrodes;
+               }
+
+               control->reg_36 = kzalloc(sizeof(*(control->reg_36)),
+                               GFP_KERNEL);
+               if (!control->reg_36)
+                       goto exit_no_mem;
+               control->reg_36->length = length;
+               control->reg_36->data = kzalloc(length *
+                               sizeof(*(control->reg_36->data)), GFP_KERNEL);
+               if (!control->reg_36->data)
+                       goto exit_no_mem;
+               control->reg_36->address = reg_addr;
+               reg_addr += length;
+       }
+       reg_num++;
+
+       /* control 37 */
+       if (f54->query.curve_compensation_mode == 2) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+
+               control->reg_37 = kzalloc(sizeof(*(control->reg_37)),
+                               GFP_KERNEL);
+               if (!control->reg_37)
+                       goto exit_no_mem;
+               control->reg_37->length = f54->query.num_of_tx_electrodes;
+               control->reg_37->data = kzalloc(control->reg_37->length *
+                               sizeof(*(control->reg_37->data)), GFP_KERNEL);
+               if (!control->reg_37->data)
+                       goto exit_no_mem;
+
+               control->reg_37->address = reg_addr;
+               reg_addr += control->reg_37->length;
+       }
+       reg_num++;
+
+       /* controls 38 39 40 */
+       if (f54->query.has_per_frequency_noise_control == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+
+               control->reg_38 = kzalloc(sizeof(*(control->reg_38)),
+                               GFP_KERNEL);
+               if (!control->reg_38)
+                       goto exit_no_mem;
+               control->reg_38->length = num_of_sensing_freqs;
+               control->reg_38->data = kzalloc(control->reg_38->length *
+                               sizeof(*(control->reg_38->data)), GFP_KERNEL);
+               if (!control->reg_38->data)
+                       goto exit_no_mem;
+               control->reg_38->address = reg_addr;
+               reg_addr += control->reg_38->length;
+
+               control->reg_39 = kzalloc(sizeof(*(control->reg_39)),
+                               GFP_KERNEL);
+               if (!control->reg_39)
+                       goto exit_no_mem;
+               control->reg_39->length = num_of_sensing_freqs;
+               control->reg_39->data = kzalloc(control->reg_39->length *
+                               sizeof(*(control->reg_39->data)), GFP_KERNEL);
+               if (!control->reg_39->data)
+                       goto exit_no_mem;
+               control->reg_39->address = reg_addr;
+               reg_addr += control->reg_39->length;
+
+               control->reg_40 = kzalloc(sizeof(*(control->reg_40)),
+                               GFP_KERNEL);
+               if (!control->reg_40)
+                       goto exit_no_mem;
+               control->reg_40->length = num_of_sensing_freqs;
+               control->reg_40->data = kzalloc(control->reg_40->length *
+                               sizeof(*(control->reg_40->data)), GFP_KERNEL);
+               if (!control->reg_40->data)
+                       goto exit_no_mem;
+               control->reg_40->address = reg_addr;
+               reg_addr += control->reg_40->length;
+       }
+       reg_num++;
+
+       /* control 41 */
+       if (f54->query.has_signal_clarity == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_41 = kzalloc(sizeof(*(control->reg_41)),
+                               GFP_KERNEL);
+               if (!control->reg_41)
+                       goto exit_no_mem;
+               control->reg_41->address = reg_addr;
+               reg_addr += sizeof(control->reg_41->data);
+       }
+       reg_num++;
+
+       /* control 42 */
+       if (f54->query.has_variance_metric == 1)
+               reg_addr += CONTROL_42_SIZE;
+
+       /* controls 43 44 45 46 47 48 49 50 51 52 53 54 */
+       if (f54->query.has_multi_metric_state_machine == 1)
+               reg_addr += CONTROL_43_54_SIZE;
+
+       /* controls 55 56 */
+       if (f54->query.has_0d_relaxation_control == 1)
+               reg_addr += CONTROL_55_56_SIZE;
+
+       /* control 57 */
+       if (f54->query.has_0d_acquisition_control == 1) {
+               attrs_ctrl_regs_exist[reg_num] = true;
+               control->reg_57 = kzalloc(sizeof(*(control->reg_57)),
+                               GFP_KERNEL);
+               if (!control->reg_57)
+                       goto exit_no_mem;
+               control->reg_57->address = reg_addr;
+               reg_addr += sizeof(control->reg_57->data);
+       }
+       reg_num++;
+
+       /* control 58 */
+       if (f54->query.has_0d_acquisition_control == 1)
+               reg_addr += CONTROL_58_SIZE;
+
+       /* control 59 */
+       if (f54->query.has_h_blank == 1)
+               reg_addr += CONTROL_59_SIZE;
+
+       /* controls 60 61 62 */
+       if ((f54->query.has_h_blank == 1) ||
+                       (f54->query.has_v_blank == 1) ||
+                       (f54->query.has_long_h_blank == 1))
+               reg_addr += CONTROL_60_62_SIZE;
+
+       /* control 63 */
+       if ((f54->query.has_h_blank == 1) ||
+                       (f54->query.has_v_blank == 1) ||
+                       (f54->query.has_long_h_blank == 1) ||
+                       (f54->query.has_slew_metric == 1) ||
+                       (f54->query.has_slew_option == 1) ||
+                       (f54->query.has_noise_mitigation2 == 1))
+               reg_addr += CONTROL_63_SIZE;
+
+       /* controls 64 65 66 67 */
+       if (f54->query.has_h_blank == 1)
+               reg_addr += CONTROL_64_67_SIZE * 7;
+       else if ((f54->query.has_v_blank == 1) ||
+                       (f54->query.has_long_h_blank == 1))
+               reg_addr += CONTROL_64_67_SIZE;
+
+       /* controls 68 69 70 71 72 73 */
+       if ((f54->query.has_h_blank == 1) ||
+                       (f54->query.has_v_blank == 1) ||
+                       (f54->query.has_long_h_blank == 1))
+               reg_addr += CONTROL_68_73_SIZE;
+
+       /* control 74 */
+       if (f54->query.has_slew_metric == 1)
+               reg_addr += CONTROL_74_SIZE;
+
+       /* control 75 */
+       if (f54->query.has_enhanced_stretch == 1)
+               reg_addr += num_of_sensing_freqs;
+
+       /* control 76 */
+       if (f54->query.has_startup_fast_relaxation == 1)
+               reg_addr += CONTROL_76_SIZE;
+
+       /* controls 77 78 */
+       if (f54->query.has_esd_control == 1)
+               reg_addr += CONTROL_77_78_SIZE;
+
+       /* controls 79 80 81 82 83 */
+       if (f54->query.has_noise_mitigation2 == 1)
+               reg_addr += CONTROL_79_83_SIZE;
+
+       /* controls 84 85 */
+       if (f54->query.has_energy_ratio_relaxation == 1)
+               reg_addr += CONTROL_84_85_SIZE;
+
+       /* control 86 */
+       if ((f54->query.has_query13 == 1) && (f54->query_13.has_ctrl86 == 1))
+               reg_addr += CONTROL_86_SIZE;
+
+       /* control 87 */
+       if ((f54->query.has_query13 == 1) && (f54->query_13.has_ctrl87 == 1))
+               reg_addr += CONTROL_87_SIZE;
+
+       /* control 88 */
+       if (f54->query.has_ctrl88 == 1) {
+               control->reg_88 = kzalloc(sizeof(*(control->reg_88)),
+                               GFP_KERNEL);
+               if (!control->reg_88)
+                       goto exit_no_mem;
+               control->reg_88->address = reg_addr;
+               reg_addr += sizeof(control->reg_88->data);
+       }
+
+       /* control 89 */
+       if ((f54->query.has_query13 == 1) &&
+                       ((f54->query_13.has_cidim == 1) ||
+                       (f54->query_13.has_noise_mitigation_enhancement == 1) ||
+                       (f54->query_13.has_rail_im)))
+               reg_addr += CONTROL_89_SIZE;
+
+       /* control 90 */
+       if ((f54->query.has_query15) && (f54->query_15.has_ctrl90))
+               reg_addr += CONTROL_90_SIZE;
+
+       /* control 91 */
+       if (f54->query_21.has_ctrl91)
+               reg_addr += CONTROL_91_SIZE;
+
+       /* control 92 */
+       if (f54->query_16.has_ctrl92)
+               reg_addr += CONTROL_92_SIZE;
+
+       /* control 93 */
+       if (f54->query_16.has_ctrl93)
+               reg_addr += CONTROL_93_SIZE;
+
+       /* control 94 */
+       if (f54->query_16.has_ctrl94_query18) {
+               control->reg_94 = kzalloc(sizeof(*(control->reg_94)),
+                               GFP_KERNEL);
+               if (!control->reg_94)
+                       goto exit_no_mem;
+               control->reg_94->address = reg_addr;
+       }
+
+       return 0;
+
+exit_no_mem:
+       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to alloc mem for control registers\n",
+                       __func__);
+       return -ENOMEM;
+}
+
+static int synaptics_rmi4_f54_set_query(void)
+{
+       int retval;
+       unsigned char offset;
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->query_base_addr,
+                       f54->query.data,
+                       sizeof(f54->query.data));
+       if (retval < 0)
+               return retval;
+
+       offset = sizeof(f54->query.data);
+
+       /* query 12 */
+       if (f54->query.has_sense_frequency_control == 0)
+               offset -= 1;
+
+       /* query 13 */
+       if (f54->query.has_query13) {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->query_base_addr + offset,
+                               f54->query_13.data,
+                               sizeof(f54->query_13.data));
+               if (retval < 0)
+                       return retval;
+               offset += 1;
+       }
+
+       /* query 14 */
+       if ((f54->query.has_query13) && (f54->query_13.has_ctrl87))
+               offset += 1;
+
+       /* query 15 */
+       if (f54->query.has_query15) {
+               retval = f54->fn_ptr->read(rmi4_data,
+                               f54->query_base_addr + offset,
+                               f54->query_15.data,
+                               sizeof(f54->query_15.data));
+               if (retval < 0)
+                       return retval;
+               offset += 1;
+       }
+
+       /* query 16 */
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->query_base_addr + offset,
+                       f54->query_16.data,
+                       sizeof(f54->query_16.data));
+       if (retval < 0)
+               return retval;
+       offset += 1;
+
+       /* query 17 */
+       if (f54->query_16.has_query17)
+               offset += 1;
+
+       /* query 18 */
+       if (f54->query_16.has_ctrl94_query18)
+               offset += 1;
+
+       /* query 19 */
+       if (f54->query_16.has_ctrl95_query19)
+               offset += 1;
+
+       /* query 20 */
+       if ((f54->query.has_query15) && (f54->query_15.has_query20))
+               offset += 1;
+
+       /* query 21 */
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->query_base_addr + offset,
+                       f54->query_21.data,
+                       sizeof(f54->query_21.data));
+       if (retval < 0)
+               return retval;
+
+       return 0;
+}
+
+static int synaptics_rmi4_f54_reinit(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned short ii;
+       unsigned char page;
+       unsigned char intr_count = 0;
+       unsigned char intr_offset;
+       struct synaptics_rmi4_fn_desc rmi_fd;
+
+       for (page = 0; page < PAGES_TO_SERVICE; page++) {
+               for (ii = PDT_START; ii > PDT_END; ii -= PDT_ENTRY_SIZE) {
+                       ii |= (page << 8);
+
+                       retval = f54->fn_ptr->read(rmi4_data,
+                                       ii,
+                                       (unsigned char *)&rmi_fd,
+                                       sizeof(rmi_fd));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read page description table\n",
+                                               __func__);
+                               goto err_out;
+                       }
+
+                       if (rmi_fd.fn_number == SYNAPTICS_RMI4_F54)
+                               goto f54_found;
+
+                       if (!rmi_fd.fn_number)
+                               break;
+
+                       intr_count += (rmi_fd.intr_src_count & MASK_3BIT);
+               }
+       }
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: Can not find F54 in descripttion table\n", __func__);
+       goto pdt_done;
+
+f54_found:
+       f54->query_base_addr = rmi_fd.query_base_addr | (page << 8);
+       f54->control_base_addr = rmi_fd.ctrl_base_addr | (page << 8);
+       f54->data_base_addr = rmi_fd.data_base_addr | (page << 8);
+       f54->command_base_addr = rmi_fd.cmd_base_addr | (page << 8);
+
+       f54->intr_reg_num = (intr_count + 7) / 8;
+       if (f54->intr_reg_num != 0)
+               f54->intr_reg_num -= 1;
+
+       f54->intr_mask = 0;
+       intr_offset = intr_count % 8;
+       for (ii = intr_offset;
+                       ii < ((rmi_fd.intr_src_count & MASK_3BIT) +
+                       intr_offset);
+                       ii++) {
+               f54->intr_mask |= 1 << ii;
+       }
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+               "%s: F54 found : NUM_INT_REG[%02X] INT_MASK[%02x] BASE_ADDRS[%04x,%04x,%04x,%04x]\n",
+               __func__, f54->intr_reg_num, f54->intr_mask,
+               f54->query_base_addr, f54->control_base_addr, f54->data_base_addr, f54->command_base_addr);
+
+       retval = synaptics_rmi4_f54_set_query();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read query registers\n",
+                               __func__);
+               goto err_out;
+       }
+
+/* FIX it from board data...
+       f54->rx_assigned = f54->query.num_of_rx_electrodes;
+       f54->tx_assigned = f54->query.num_of_tx_electrodes;
+*/
+       free_control_mem();
+       retval = synaptics_rmi4_f54_set_ctrl();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to set up control registers\n",
+                               __func__);
+               goto err_set_ctrl;
+       }
+
+       return 0;
+
+err_set_ctrl:
+       free_control_mem();
+
+err_out:
+pdt_done:
+       return retval;
+}
+
+#ifdef FACTORY_MODE
+static int synaptics_rmi4_f54_get_report_type(int type)
+{
+       int retval;
+       char buf[3];
+       unsigned int patience = 250;
+
+       memset(buf, 0x00, sizeof(buf));
+       snprintf(buf, 3, "%u\n", type);
+       retval = synaptics_rmi4_f54_report_type_store(NULL, NULL, buf, 2);
+       if (retval != 2)
+               return 0;
+
+       memset(buf, 0x00, sizeof(buf));
+       snprintf(buf, 3, "%u\n", CMD_GET_REPORT);
+       retval = synaptics_rmi4_f54_get_report_store(NULL, NULL, buf, 2);
+       if (retval != 2)
+               return 0;
+
+       do {
+               msleep(20);
+               if (f54->status == STATUS_IDLE)
+                       break;
+       } while (--patience > 0);
+
+       if ((f54->report_size == 0) || (f54->status != STATUS_IDLE))
+               return 0;
+       else
+               return 1;
+}
+#endif
+
+static void synaptics_rmi4_f54_status_work(struct work_struct *work)
+{
+       int retval;
+       unsigned char report_index[2];
+       struct synaptics_rmi4_data *rmi4_data = f54->rmi4_data;
+
+       if (f54->status != STATUS_BUSY)
+               return;
+
+       set_report_size();
+       if (f54->report_size == 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Report data size = 0\n",
+                               __func__);
+               retval = -EINVAL;
+               goto error_exit;
+       }
+
+       if (f54->data_buffer_size < f54->report_size) {
+               mutex_lock(&f54->data_mutex);
+               if (f54->data_buffer_size)
+                       kfree(f54->report_data);
+               f54->report_data = kzalloc(f54->report_size, GFP_KERNEL);
+               if (!f54->report_data) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to alloc mem for data buffer\n",
+                                       __func__);
+                       f54->data_buffer_size = 0;
+                       mutex_unlock(&f54->data_mutex);
+                       retval = -ENOMEM;
+                       goto error_exit;
+               }
+               f54->data_buffer_size = f54->report_size;
+               mutex_unlock(&f54->data_mutex);
+       }
+
+       report_index[0] = 0;
+       report_index[1] = 0;
+
+       retval = f54->fn_ptr->write(rmi4_data,
+                       f54->data_base_addr + DATA_REPORT_INDEX_OFFSET,
+                       report_index,
+                       sizeof(report_index));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write report data index\n",
+                               __func__);
+               retval = -EINVAL;
+               goto error_exit;
+       }
+
+       retval = f54->fn_ptr->read(rmi4_data,
+                       f54->data_base_addr + DATA_REPORT_DATA_OFFSET,
+                       f54->report_data,
+                       f54->report_size);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read report data\n",
+                               __func__);
+               retval = -EINVAL;
+               goto error_exit;
+       }
+
+       retval = STATUS_IDLE;
+
+#ifdef RAW_HEX
+       print_raw_hex_report();
+#endif
+
+#ifdef HUMAN_READABLE
+       print_image_report();
+#endif
+
+error_exit:
+       mutex_lock(&f54->status_mutex);
+       set_interrupt(false);
+       f54->status = retval;
+       mutex_unlock(&f54->status_mutex);
+
+       return;
+}
+
+static void synaptics_rmi4_f54_attn(struct synaptics_rmi4_data *rmi4_data,
+               unsigned char intr_mask)
+{
+       if (!f54)
+               return;
+
+       if (f54->intr_mask & intr_mask) {
+               queue_delayed_work(f54->status_workqueue,
+                               &f54->status_work,
+                               msecs_to_jiffies(STATUS_WORK_INTERVAL));
+       }
+
+       return;
+}
+
+#ifdef FACTORY_MODE
+static void synaptics_rmi4_remove_factory_mode(struct synaptics_rmi4_data *rmi4_data)
+{
+       if (!f54)
+               return;
+
+       sysfs_remove_group(f54->attr_dir, &cmd_attr_group);
+       kfree(f54->factory_data->trx_short);
+       kfree(f54->factory_data->abscap_data);
+       kfree(f54->factory_data->absdelta_data);
+       kfree(f54->factory_data->rawcap_data);
+       kfree(f54->factory_data->delta_data);
+       kfree(f54->factory_data);
+}
+
+static int synaptics_rmi4_init_factory_mode(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char rx;
+       unsigned char tx;
+       int retval = 0, ii;
+       struct factory_data *factory_data;
+
+       if (!f54) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: F54 data is null\n", __func__);
+               return -ENOMEM;
+       }
+
+       rx = f54->rx_assigned;
+       tx = f54->tx_assigned;
+
+       factory_data = kzalloc(sizeof(*factory_data), GFP_KERNEL);
+       if (!factory_data) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for factory_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_factory_data;
+       }
+
+       factory_data->rawcap_data = kzalloc(2 * rx * tx, GFP_KERNEL);
+       if (!factory_data->rawcap_data) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for rawcap_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_rawcap_data;
+       }
+
+       factory_data->delta_data = kzalloc(2 * rx * tx, GFP_KERNEL);
+       if (!factory_data->delta_data) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for delta_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_delta_data;
+       }
+
+       factory_data->abscap_data = kzalloc(4 * rx * tx, GFP_KERNEL);
+       if (!factory_data->abscap_data) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for abscap_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_abscap_data;
+       }
+       factory_data->absdelta_data = kzalloc(4 * rx * tx, GFP_KERNEL);
+       if (!factory_data->abscap_data) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for abscap_data\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_absdelta_data;
+       }
+
+       factory_data->trx_short = kzalloc(TREX_DATA_SIZE, GFP_KERNEL);
+       if (!factory_data->trx_short) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for trx_short\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_trx_short;
+       }
+
+       INIT_LIST_HEAD(&factory_data->cmd_list_head);
+       for (ii = 0; ii < ARRAY_SIZE(ft_cmds); ii++)
+               list_add_tail(&ft_cmds[ii].list, &factory_data->cmd_list_head);
+
+       mutex_init(&factory_data->cmd_lock);
+       factory_data->cmd_is_running = false;
+
+       f54->factory_data = factory_data;
+
+       return 0;
+
+exit_trx_short:
+       kfree(factory_data->absdelta_data);
+exit_absdelta_data:
+       kfree(factory_data->abscap_data);
+exit_abscap_data:
+       kfree(factory_data->delta_data);
+exit_delta_data:
+       kfree(factory_data->rawcap_data);
+exit_rawcap_data:
+       kfree(factory_data);
+       factory_data = NULL;
+exit_factory_data:
+
+       return retval;
+}
+#endif
+
+static int synaptics_rmi4_f54_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       f54 = kzalloc(sizeof(*f54), GFP_KERNEL);
+       if (!f54) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for f54\n",
+                               __func__);
+               retval = -ENOMEM;
+               return retval;
+       }
+
+       f54->fn_ptr = kzalloc(sizeof(*(f54->fn_ptr)), GFP_KERNEL);
+       if (!f54->fn_ptr) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fn_ptr\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_mem;
+       }
+
+       f54->rmi4_data = rmi4_data;
+       f54->fn_ptr->read = rmi4_data->i2c_read;
+       f54->fn_ptr->write = rmi4_data->i2c_write;
+       f54->fn_ptr->enable = rmi4_data->irq_enable;
+
+       f54->rx_assigned = rmi4_data->num_of_rx;
+       f54->tx_assigned = rmi4_data->num_of_tx;
+
+       retval = synaptics_rmi4_f54_reinit(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to reinit f54.\n",
+                               __func__);
+               goto err_reinit;
+       }
+
+       mutex_init(&f54->status_mutex);
+       mutex_init(&f54->data_mutex);
+       mutex_init(&f54->control_mutex);
+
+       retval = synaptics_rmi4_f54_set_sysfs();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs entries\n",
+                               __func__);
+               goto err_set_sysfs;
+       }
+
+       f54->status_workqueue =
+                       create_singlethread_workqueue("f54_status_workqueue");
+       INIT_DELAYED_WORK(&f54->status_work,
+                       synaptics_rmi4_f54_status_work);
+
+#ifdef WATCHDOG_HRTIMER
+       /* Watchdog timer to catch unanswered get report commands */
+       hrtimer_init(&f54->watchdog, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
+       f54->watchdog.function = get_report_timeout;
+
+       /* Work function to do actual cleaning up */
+       INIT_WORK(&f54->timeout_work, timeout_set_status);
+#endif
+
+       f54->status = STATUS_IDLE;
+
+#ifdef FACTORY_MODE
+       synaptics_rmi4_init_factory_mode(rmi4_data);
+#endif
+
+       return 0;
+
+err_set_sysfs:
+       remove_sysfs();
+
+err_reinit:
+       free_control_mem();
+
+err_mem:
+       kfree(f54->fn_ptr);
+       kfree(f54);
+       f54 = NULL;
+
+       return retval;
+}
+
+static void synaptics_rmi4_f54_remove(struct synaptics_rmi4_data *rmi4_data)
+{
+       if (!f54)
+               goto exit;
+
+#ifdef WATCHDOG_HRTIMER
+       hrtimer_cancel(&f54->watchdog);
+#endif
+
+       cancel_delayed_work_sync(&f54->status_work);
+       flush_workqueue(f54->status_workqueue);
+       destroy_workqueue(f54->status_workqueue);
+
+#ifdef FACTORY_MODE
+       synaptics_rmi4_remove_factory_mode(rmi4_data);
+#endif
+       remove_sysfs();
+       free_control_mem();
+
+       if (f54->data_buffer_size)
+               kfree(f54->report_data);
+
+       kfree(f54->fn_ptr);
+       kfree(f54);
+       f54 = NULL;
+
+exit:
+       return;
+}
+
+int rmi4_f54_module_register(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = synaptics_rmi4_new_function(RMI_F54,
+                       rmi4_data,
+                       synaptics_rmi4_f54_init,
+                       synaptics_rmi4_f54_reinit,
+                       synaptics_rmi4_f54_remove,
+                       synaptics_rmi4_f54_attn);
+
+       return retval;
+}
diff --git a/drivers/input/touchscreen/synaptics_dsx/rmi_fw_update.c b/drivers/input/touchscreen/synaptics_dsx/rmi_fw_update.c
new file mode 100644 (file)
index 0000000..62192b9
--- /dev/null
@@ -0,0 +1,2364 @@
+/*
+ * Synaptics DSX touchscreen driver
+ *
+ * Copyright (C) 2012 Synaptics Incorporated
+ *
+ * Copyright (C) 2012 Alexandra Chin <alexandra.chin@tw.synaptics.com>
+ * Copyright (C) 2012 Scott Lin <scott.lin@tw.synaptics.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/firmware.h>
+#include "synaptics_i2c_rmi.h"
+
+#define DO_STARTUP_FW_UPDATE
+#define STARTUP_FW_UPDATE_DELAY_MS 1000 /* ms */
+#define FORCE_UPDATE false
+#define DO_LOCKDOWN false
+
+#define MAX_IMAGE_NAME_LEN 256
+#define MAX_FIRMWARE_ID_LEN 10
+
+#define F01_DEVICE_STATUS      0X0004
+
+#define BOOTLOADER_ID_OFFSET 0
+#define BLOCK_NUMBER_OFFSET 0
+
+#define V5_PROPERTIES_OFFSET 2
+#define V5_BLOCK_SIZE_OFFSET 3
+#define V5_BLOCK_COUNT_OFFSET 5
+#define V5_BLOCK_DATA_OFFSET 2
+
+#define V6_PROPERTIES_OFFSET 1
+#define V6_BLOCK_SIZE_OFFSET 2
+#define V6_BLOCK_COUNT_OFFSET 3
+#define V6_BLOCK_DATA_OFFSET 1
+#define V6_FLASH_COMMAND_OFFSET 2
+#define V6_FLASH_STATUS_OFFSET 3
+
+#define IMG_VERSION_OFFSET 0x07
+#define IMG_X10_TOP_CONTAINER_OFFSET 0x0C
+#define IMG_X0_X6_FW_OFFSET 0x100
+
+#define UI_CONFIG_AREA 0x00
+#define PERM_CONFIG_AREA 0x01
+#define BL_CONFIG_AREA 0x02
+#define DISP_CONFIG_AREA 0x03
+
+#define SLEEP_MODE_NORMAL (0x00)
+#define SLEEP_MODE_SENSOR_SLEEP (0x01)
+#define SLEEP_MODE_RESERVED0 (0x02)
+#define SLEEP_MODE_RESERVED1 (0x03)
+
+#define ENABLE_WAIT_MS (1 * 1000)
+#define WRITE_WAIT_MS (3 * 1000)
+#define ERASE_WAIT_MS (5 * 1000)
+
+#define MIN_SLEEP_TIME_US 50
+#define MAX_SLEEP_TIME_US 100
+#define STATUS_POLLING_PERIOD_US 3000
+
+#define POLLING_MODE_DEFAULT 0
+
+static ssize_t fwu_sysfs_show_image(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t fwu_sysfs_store_image(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count);
+
+static ssize_t fwu_sysfs_do_reflash_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t fwu_sysfs_write_config_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t fwu_sysfs_read_config_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t fwu_sysfs_config_area_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+/*
+static ssize_t fwu_sysfs_image_name_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+*/
+static ssize_t fwu_sysfs_image_size_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t fwu_sysfs_block_size_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_firmware_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_configuration_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_perm_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_bl_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_disp_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_guest_code_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t fwu_sysfs_write_guest_code_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static void fwu_img_parse_format(void);
+static int fwu_do_write_guest_code(void);
+
+enum bl_version {
+       V5 = 5,
+       V6 = 6,
+};
+
+enum flash_area {
+       NONE,
+       UI_FIRMWARE,
+       CONFIG_AREA,
+};
+
+enum update_mode {
+       UPDATE_MODE_NORMAL = 1,
+       UPDATE_MODE_FORCE = 2,
+       UPDATE_MODE_LOCKDOWN = 8,
+};
+
+enum flash_command {
+       CMD_IDLE = 0x0,
+       CMD_WRITE_FW_BLOCK = 0x2,
+       CMD_ERASE_ALL = 0x3,
+       CMD_WRITE_LOCKDOWN_BLOCK = 0x4,
+       CMD_READ_CONFIG_BLOCK = 0x5,
+       CMD_WRITE_CONFIG_BLOCK = 0x6,
+       CMD_ERASE_CONFIG = 0x7,
+       CMD_READ_SENSOR_ID = 0x8,
+       CMD_ERASE_BL_CONFIG = 0x9,
+       CMD_ERASE_DISP_CONFIG = 0xA,
+       CMD_ERASE_GUEST_CODE = 0xB,
+       CMD_WRITE_GUEST_CODE = 0xC,
+       CMD_ENABLE_FLASH_PROG = 0xF
+};
+
+struct img_x0x6_header {
+       /* 0x00 - 0x0f */
+       unsigned char checksum[4];
+       unsigned char reserved_04;
+       unsigned char reserved_05;
+       unsigned char options_firmware_id:1;
+       unsigned char options_contain_bootloader:1;
+       unsigned char options_reserved:6;
+       unsigned char bootloader_version;
+       unsigned char firmware_size[4];
+       unsigned char config_size[4];
+       /* 0x10 - 0x1f */
+       unsigned char product_id[SYNAPTICS_RMI4_PRODUCT_ID_SIZE];
+       unsigned char package_id[2];
+       unsigned char package_id_revision[2];
+       unsigned char product_info[SYNAPTICS_RMI4_PRODUCT_INFO_SIZE];
+       /* 0x20 - 0x2f */
+       unsigned char reserved_20_2f[16];
+       /* 0x30 - 0x3f */
+       unsigned char ds_firmware_info[16];
+       /* 0x40 - 0x4f */
+       unsigned char ds_info[10];
+       unsigned char reserved_4a_4f[6];
+       /* 0x50 - 0x53 */
+       unsigned char firmware_id[4];
+};
+
+enum img_x10_container_id {
+       ID_TOP_LEVEL_CONTAINER = 0,
+       ID_UI_CONTAINER,
+       ID_UI_CONFIGURATION,
+       ID_BOOTLOADER_CONTAINER,
+       ID_BOOTLOADER_IMAGE_CONTAINER,
+       ID_BOOTLOADER_CONFIGURATION_CONTAINER,
+       ID_BOOTLOADER_LOCKDOWN_INFORMATION_CONTAINER,
+       ID_PERMANENT_CONFIGURATION_CONTAINER,
+       ID_GUEST_CODE_CONTAINER,
+       ID_BOOTLOADER_PROTOCOL_DESCRIPTOR_CONTAINER,
+       ID_UI_PROTOCOL_DESCRIPTOR_CONTAINER,
+       ID_RMI_SELF_DISCOVERY_CONTAINER,
+       ID_RMI_PAGE_CONTENT_CONTAINER,
+       ID_GENERAL_INFORMATION_CONTAINER,
+       RESERVERD
+};
+
+struct block_data {
+       unsigned char *data;
+       int size;
+};
+
+struct img_file_content {
+       unsigned char *fw_image;
+       unsigned int image_size;
+       unsigned char *image_name;
+       unsigned char imageFileVersion;
+       struct block_data uiFirmware;
+       struct block_data uiConfig;
+       struct block_data guestCode;
+       struct block_data lockdown;
+       struct block_data permanent;
+       struct block_data bootloaderInfo;
+       unsigned char blMajorVersion;
+       unsigned char blMinorVersion;
+       unsigned char *configId;        /* len 0x4 */
+       unsigned char *firmwareId;      /* len 0x4 */
+       unsigned char *packageId;               /* len 0x4 */
+       unsigned char *dsFirmwareInfo;  /* len 0x10 */
+};
+
+struct img_x10_descriptor {
+       unsigned char contentChecksum[4];
+       unsigned char containerID[2];
+       unsigned char minorVersion;
+       unsigned char majorVersion;
+       unsigned char reserverd[4];
+       unsigned char containerOptionFlags[4];
+       unsigned char contentOptionLength[4];
+       unsigned char contentOptionAddress[4];
+       unsigned char contentLength[4];
+       unsigned char contentAddress[4];
+};
+
+struct img_x10_bl_container {
+       unsigned char majorVersion;
+       unsigned char minorVersion;
+       unsigned char reserved[2];
+       unsigned char *subContainer;
+};
+
+struct pdt_properties {
+       union {
+               struct {
+                       unsigned char reserved_1:6;
+                       unsigned char has_bsr:1;
+                       unsigned char reserved_2:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f01_device_status {
+       union {
+               struct {
+                       unsigned char status_code:4;
+                       unsigned char reserved:2;
+                       unsigned char flash_prog:1;
+                       unsigned char unconfigured:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f01_device_control {
+       union {
+               struct {
+                       unsigned char sleep_mode:2;
+                       unsigned char nosleep:1;
+                       unsigned char reserved:2;
+                       unsigned char charger_connected:1;
+                       unsigned char report_rate:1;
+                       unsigned char configured:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f34_properties_query {
+       union {
+               struct {
+                       unsigned char reg_map:1;
+                       unsigned char unlocked:1;
+                       unsigned char has_config_id:1;
+                       unsigned char has_perm_config:1;
+                       unsigned char has_bl_config:1;
+                       unsigned char has_disp_config:1;
+                       unsigned char has_ctrl1:1;
+                       unsigned char has_flash_query4:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct f34_query_04 {
+       union {
+               struct {
+                       unsigned char has_guest_code:1;
+                       unsigned char reserved:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct synaptics_rmi4_fwu_handle {
+       enum bl_version bl_version;
+       bool initialized;
+       bool program_enabled;
+       bool has_perm_config;
+       bool has_bl_config;
+       bool has_disp_config;
+       bool has_guest_code;
+       bool force_update;
+       bool in_flash_prog_mode;
+       bool do_lockdown;
+       bool can_guest_bootloader;
+       unsigned int data_pos;
+       unsigned char *ext_data_source;
+       unsigned char *read_config_buf;
+       unsigned char intr_mask;
+       unsigned char command;
+       unsigned char bootloader_id[4];
+       unsigned char flash_status;
+       unsigned char productinfo1;
+       unsigned char productinfo2;
+       unsigned char properties_off;
+       unsigned char blk_size_off;
+       unsigned char blk_count_off;
+       unsigned char blk_data_off;
+       unsigned char properties2_off;
+       unsigned char guest_blk_count_off;
+       unsigned char flash_cmd_off;
+       unsigned char flash_status_off;
+       unsigned short block_size;
+       unsigned short fw_block_count;
+       unsigned short config_block_count;
+       unsigned short perm_config_block_count;
+       unsigned short bl_config_block_count;
+       unsigned short disp_config_block_count;
+       unsigned short guest_code_block_count;
+       unsigned short config_size;
+       unsigned short config_area;
+       char product_id[SYNAPTICS_RMI4_PRODUCT_ID_SIZE + 1];
+
+       struct f34_properties_query flash_properties;
+       struct workqueue_struct *fwu_workqueue;
+       struct delayed_work fwu_work;
+       struct synaptics_rmi4_fn_desc f01_fd;
+       struct synaptics_rmi4_fn_desc f34_fd;
+       struct synaptics_rmi4_exp_fn_ptr *fn_ptr;
+       struct synaptics_rmi4_data *rmi4_data;
+       struct img_file_content img;
+
+       bool polling_mode;
+};
+
+static struct bin_attribute dev_attr_data = {
+       .attr = {
+               .name = "data",
+               .mode = (S_IRUGO | S_IWUSR | S_IWGRP),
+       },
+       .size = 0,
+       .read = fwu_sysfs_show_image,
+       .write = fwu_sysfs_store_image,
+};
+
+static struct device_attribute attrs[] = {
+       __ATTR(doreflash, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_do_reflash_store),
+       __ATTR(writeconfig, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_write_config_store),
+       __ATTR(readconfig, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_read_config_store),
+       __ATTR(configarea, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_config_area_store),
+       __ATTR(imagesize, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_image_size_store),
+       __ATTR(blocksize, S_IRUGO,
+                       fwu_sysfs_block_size_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(fwblockcount, S_IRUGO,
+                       fwu_sysfs_firmware_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(configblockcount, S_IRUGO,
+                       fwu_sysfs_configuration_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(permconfigblockcount, S_IRUGO,
+                       fwu_sysfs_perm_config_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(blconfigblockcount, S_IRUGO,
+                       fwu_sysfs_bl_config_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(dispconfigblockcount, S_IRUGO,
+                       fwu_sysfs_disp_config_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(guestcodeblockcount, S_IRUGO,
+                       fwu_sysfs_guest_code_block_count_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(writeguestcode, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       fwu_sysfs_write_guest_code_store),
+};
+
+static struct synaptics_rmi4_fwu_handle *fwu;
+
+static unsigned int extract_uint_le(const unsigned char *ptr)
+{
+       return (unsigned int)ptr[0] +
+               (unsigned int)ptr[1] * 0x100 +
+               (unsigned int)ptr[2] * 0x10000 +
+               (unsigned int)ptr[3] * 0x1000000;
+}
+
+#ifdef FW_UPDATE_GO_NOGO
+static unsigned int extract_uint_be(const unsigned char *ptr)
+{
+       return (unsigned int)ptr[3] +
+                       (unsigned int)ptr[2] * 0x100 +
+                       (unsigned int)ptr[1] * 0x10000 +
+                       (unsigned int)ptr[0] * 0x1000000;
+}
+#endif
+
+static unsigned short extract_ushort_le(const unsigned char *ptr)
+{
+       return (unsigned int)ptr[0] + (unsigned int)ptr[1] * 0x100;
+}
+
+static int fwu_read_f01_device_status(struct f01_device_status *status)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f01_fd.data_base_addr,
+                       status->data,
+                       sizeof(status->data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read F01 device status\n",
+                               __func__);
+               return retval;
+       }
+
+       return 0;
+}
+
+static int fwu_read_f34_queries(void)
+{
+       int retval;
+       unsigned char count;
+       unsigned char buf[10];
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.query_base_addr + BOOTLOADER_ID_OFFSET,
+                       fwu->bootloader_id,
+                       sizeof(fwu->bootloader_id));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read bootloader ID\n",
+                               __func__);
+               return retval;
+       }
+
+       if (fwu->bootloader_id[1] == '5') {
+               fwu->bl_version = V5;
+       } else if (fwu->bootloader_id[1] == '6') {
+               fwu->bl_version = V6;
+       } else {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Unrecognized bootloader version\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: F34 Query : ID: %s\n", __func__, fwu->bootloader_id);
+
+       if (fwu->bl_version == V5) {
+               fwu->properties_off = V5_PROPERTIES_OFFSET;
+               fwu->blk_size_off = V5_BLOCK_SIZE_OFFSET;
+               fwu->blk_count_off = V5_BLOCK_COUNT_OFFSET;
+               fwu->blk_data_off = V5_BLOCK_DATA_OFFSET;
+       } else if (fwu->bl_version == V6) {
+               fwu->properties_off = V6_PROPERTIES_OFFSET;
+               fwu->blk_size_off = V6_BLOCK_SIZE_OFFSET;
+               fwu->blk_count_off = V6_BLOCK_COUNT_OFFSET;
+               fwu->blk_data_off = V6_BLOCK_DATA_OFFSET;
+               fwu->properties2_off = fwu->blk_count_off + 1;
+               fwu->guest_blk_count_off = fwu->properties2_off + 1;
+       }
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.query_base_addr + fwu->properties_off,
+                       fwu->flash_properties.data,
+                       sizeof(fwu->flash_properties.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read flash properties\n",
+                               __func__);
+               return retval;
+       }
+
+       count = 4;
+
+       if (fwu->flash_properties.has_perm_config) {
+               fwu->has_perm_config = 1;
+               count += 2;
+       }
+
+       if (fwu->flash_properties.has_bl_config) {
+               fwu->has_bl_config = 1;
+               count += 2;
+       }
+
+       if (fwu->flash_properties.has_disp_config) {
+               fwu->has_disp_config = 1;
+               count += 2;
+       }
+
+       if (fwu->flash_properties.has_flash_query4) {
+               struct f34_query_04 query4;
+
+               retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.query_base_addr + fwu->properties2_off,
+                       query4.data,
+                       sizeof(query4.data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read block size info\n",
+                                       __func__);
+                       return retval;
+               }
+
+               if (query4.has_guest_code) {
+                       retval = fwu->fn_ptr->read(rmi4_data,
+                               fwu->f34_fd.query_base_addr + fwu->guest_blk_count_off,
+                               buf,
+                               2);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to read block size info\n",
+                                               __func__);
+                               return retval;
+                       }
+                       batohs(&fwu->guest_code_block_count, buf);
+                       fwu->has_guest_code = 1;
+               } else {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                                       "%s: query data do not supply quest image.\n",
+                                       __func__);
+
+               }
+       }
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.query_base_addr + fwu->blk_size_off,
+                       buf,
+                       2);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read block size info\n",
+                               __func__);
+               return retval;
+       }
+
+       batohs(&fwu->block_size, &(buf[0]));
+
+       if (fwu->bl_version == V5) {
+               fwu->flash_cmd_off = fwu->blk_data_off + fwu->block_size;
+               fwu->flash_status_off = fwu->flash_cmd_off;
+       } else if (fwu->bl_version == V6) {
+               fwu->flash_cmd_off = V6_FLASH_COMMAND_OFFSET;
+               fwu->flash_status_off = V6_FLASH_STATUS_OFFSET;
+       }
+
+       retval = fwu->fn_ptr->read(fwu->rmi4_data,
+                       fwu->f34_fd.query_base_addr + fwu->blk_count_off,
+                       buf,
+                       count);
+       if (retval < 0) {
+               tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                               "%s: Failed to read block count info\n",
+                               __func__);
+               return retval;
+       }
+
+       batohs(&fwu->fw_block_count, &(buf[0]));
+       batohs(&fwu->config_block_count, &(buf[2]));
+
+       count = 4;
+
+       if (fwu->has_perm_config) {
+               batohs(&fwu->perm_config_block_count, &(buf[count]));
+               count += 2;
+       }
+
+       if (fwu->has_bl_config) {
+               batohs(&fwu->bl_config_block_count, &(buf[count]));
+               count += 2;
+       }
+
+       if (fwu->has_disp_config)
+               batohs(&fwu->disp_config_block_count, &(buf[count]));
+
+       return 0;
+}
+
+static int fwu_read_f34_flash_status(void)
+{
+       int retval;
+       unsigned char status;
+       unsigned char command;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.data_base_addr + fwu->flash_status_off,
+                       &status,
+                       sizeof(status));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read flash status\n",
+                               __func__);
+               return retval;
+       }
+
+       fwu->program_enabled = status >> 7;
+
+       if (fwu->bl_version == V5)
+               fwu->flash_status = (status >> 4) & MASK_3BIT;
+       else if (fwu->bl_version == V6)
+               fwu->flash_status = status & MASK_3BIT;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.data_base_addr + fwu->flash_cmd_off,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read flash command\n",
+                               __func__);
+               return retval;
+       }
+
+       fwu->command = command & MASK_4BIT;
+
+       return 0;
+}
+
+static int fwu_write_f34_command(unsigned char cmd)
+{
+       int retval;
+       unsigned char command = cmd & MASK_4BIT;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       fwu->command = cmd;
+
+       retval = fwu->fn_ptr->write(rmi4_data,
+                       fwu->f34_fd.data_base_addr + fwu->flash_cmd_off,
+                       &command,
+                       sizeof(command));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write command 0x%02x\n",
+                               __func__, command);
+               return retval;
+       }
+
+       return 0;
+}
+
+static int fwu_wait_for_idle(int timeout_ms)
+{
+       int count = 0;
+       int timeout_count = ((timeout_ms * 1000) / MAX_SLEEP_TIME_US) + 1;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       do {
+               if (fwu->polling_mode || count == timeout_count)
+                       fwu_read_f34_flash_status();
+               if ((fwu->command == 0x00) && (fwu->flash_status == 0x00)) {
+                       if (count == timeout_count)
+                               fwu->polling_mode = true;
+                       return 0;
+               }
+               usleep_range(MIN_SLEEP_TIME_US, MAX_SLEEP_TIME_US);
+               count++;
+
+       } while (count <= timeout_count);
+
+       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Timed out waiting for idle status\n",
+                       __func__);
+
+       return -ETIMEDOUT;
+}
+
+#ifdef FW_UPDATE_GO_NOGO
+static enum flash_area fwu_go_nogo(void)
+{
+       int retval;
+       enum flash_area flash_area = NONE;
+       unsigned char index = 0;
+       unsigned char config_id[4];
+       unsigned int device_config_id;
+       unsigned int image_config_id;
+       unsigned int device_fw_id;
+       unsigned long image_fw_id;
+       char *strptr;
+       char *firmware_id;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (fwu->force_update) {
+               flash_area = UI_FIRMWARE;
+               goto exit;
+       }
+
+       /* Update both UI and config if device is in bootloader mode */
+       if (fwu->in_flash_prog_mode) {
+               flash_area = UI_FIRMWARE;
+               goto exit;
+       }
+
+       /* Get device firmware ID */
+       device_fw_id = rmi4_data->rmi4_mod_info.build_id[0] +
+                       rmi4_data->rmi4_mod_info.build_id[1] * 0x100 +
+                       rmi4_data->rmi4_mod_info.build_id[2] * 0x10000;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Device firmware ID = %d\n",
+                       __func__, device_fw_id);
+
+       /* Get image firmware ID */
+       if (fwu->img.firmwareId != NULL) {
+               image_fw_id = extract_uint_le(fwu->img.firmwareId);
+       } else {
+               strptr = strstr(fwu->img.image_name, "PR");
+               if (!strptr) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: No valid PR number (PRxxxxxxx) "
+                                       "found in image file name (%s)\n",
+                                       __func__, fwu->img.image_name);
+                       flash_area = NONE;
+                       goto exit;
+               }
+
+               strptr += 2;
+               firmware_id = kzalloc(MAX_FIRMWARE_ID_LEN, GFP_KERNEL);
+               while (strptr[index] >= '0' && strptr[index] <= '9') {
+                       firmware_id[index] = strptr[index];
+                       index++;
+               }
+
+               retval = kstrtoul(firmware_id, 10, &image_fw_id);
+               kfree(firmware_id);
+               if (retval) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to obtain image firmware ID\n",
+                                       __func__);
+                       flash_area = NONE;
+                       goto exit;
+               }
+       }
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Image firmware ID = %d\n",
+                       __func__, (unsigned int)image_fw_id);
+
+       if (image_fw_id > device_fw_id) {
+               flash_area = UI_FIRMWARE;
+               goto exit;
+       } else if (image_fw_id < device_fw_id) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Image firmware ID older than device firmware ID\n",
+                               __func__);
+               flash_area = NONE;
+               goto exit;
+       }
+
+       /* Get device config ID */
+       retval = fwu->fn_ptr->read(rmi4_data,
+                               fwu->f34_fd.ctrl_base_addr,
+                               config_id,
+                               sizeof(config_id));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read device config ID\n",
+                               __func__);
+               flash_area = NONE;
+               goto exit;
+       }
+       device_config_id = extract_uint_be(config_id);
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Device config ID = 0x%02x 0x%02x 0x%02x 0x%02x\n",
+                       __func__,
+                       config_id[0],
+                       config_id[1],
+                       config_id[2],
+                       config_id[3]);
+
+       /* Get image config ID */
+       image_config_id = extract_uint_be(fwu->img.configId);
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Image config ID = 0x%02x 0x%02x 0x%02x 0x%02x\n",
+                       __func__,
+                       fwu->img.configId[0],
+                       fwu->img.configId[1],
+                       fwu->img.configId[2],
+                       fwu->img.configId[3]);
+
+       if (image_config_id > device_config_id) {
+               flash_area = CONFIG_AREA;
+               goto exit;
+       }
+
+exit:
+       if (flash_area == NONE) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: No need to do reflash\n",
+                               __func__);
+       } else {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Updating %s\n",
+                               __func__,
+                               flash_area == UI_FIRMWARE ?
+                               "UI firmware" :
+                               "config only");
+       }
+       return flash_area;
+}
+#endif
+
+static int fwu_scan_pdt(void)
+{
+       int retval;
+       unsigned char ii;
+       unsigned char intr_count = 0;
+       unsigned char intr_off;
+       unsigned char intr_src;
+       unsigned short addr;
+       bool f01found = false;
+       bool f34found = false;
+       struct synaptics_rmi4_fn_desc rmi_fd;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       for (addr = PDT_START; addr > PDT_END; addr -= PDT_ENTRY_SIZE) {
+               retval = fwu->fn_ptr->read(rmi4_data,
+                               addr,
+                               (unsigned char *)&rmi_fd,
+                               sizeof(rmi_fd));
+               if (retval < 0)
+                       return retval;
+
+               if (rmi_fd.fn_number) {
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                                       "%s: Found F%02x\n",
+                                       __func__, rmi_fd.fn_number);
+                       switch (rmi_fd.fn_number) {
+                       case SYNAPTICS_RMI4_F01:
+                               f01found = true;
+                               fwu->f01_fd.query_base_addr =
+                                       rmi_fd.query_base_addr;
+                               fwu->f01_fd.ctrl_base_addr =
+                                       rmi_fd.ctrl_base_addr;
+                               fwu->f01_fd.data_base_addr =
+                                       rmi_fd.data_base_addr;
+                               fwu->f01_fd.cmd_base_addr =
+                                       rmi_fd.cmd_base_addr;
+                               break;
+                       case SYNAPTICS_RMI4_F34:
+                               f34found = true;
+                               fwu->f34_fd.query_base_addr =
+                                       rmi_fd.query_base_addr;
+                               fwu->f34_fd.ctrl_base_addr =
+                                       rmi_fd.ctrl_base_addr;
+                               fwu->f34_fd.data_base_addr =
+                                       rmi_fd.data_base_addr;
+                               fwu->intr_mask = 0;
+                               intr_src = rmi_fd.intr_src_count;
+                               intr_off = intr_count % 8;
+                               for (ii = intr_off;     ii < ((intr_src & MASK_3BIT) + intr_off); ii++)
+                                       fwu->intr_mask |= 1 << ii;
+                               break;
+                       }
+               } else {
+                       break;
+               }
+
+               intr_count += (rmi_fd.intr_src_count & MASK_3BIT);
+       }
+
+       if (!f01found || !f34found) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to find both F01 and F34\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       return 0;
+}
+
+static int fwu_write_blocks(unsigned char *block_ptr, unsigned int block_size,
+               enum flash_command command)
+{
+       int retval;
+       unsigned char block_offset[] = {0, 0};
+       unsigned short block_num;
+       unsigned short block_cnt = block_size / fwu->block_size;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (block_ptr == NULL) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Cannot find block data (%x)\n",
+                               __func__, command);
+               return -EINVAL;
+       }
+
+       if (command == CMD_WRITE_CONFIG_BLOCK)
+               block_offset[1] |= (fwu->config_area << 5);
+
+       retval = fwu->fn_ptr->write(rmi4_data,
+                       fwu->f34_fd.data_base_addr + BLOCK_NUMBER_OFFSET,
+                       block_offset,
+                       sizeof(block_offset));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write to block number registers\n",
+                               __func__);
+               return retval;
+       }
+
+       for (block_num = 0; block_num < block_cnt; block_num++) {
+               retval = fwu->fn_ptr->write(rmi4_data,
+                               fwu->f34_fd.data_base_addr + fwu->blk_data_off,
+                               block_ptr,
+                               fwu->block_size);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write block data (block %d)\n",
+                                       __func__, block_num);
+                       return retval;
+               }
+
+               retval = fwu_write_f34_command(command);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write command for block %d\n",
+                                       __func__, block_num);
+                       return retval;
+               }
+
+               retval = fwu_wait_for_idle(WRITE_WAIT_MS);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to wait for idle status (block %d)\n",
+                                       __func__, block_num);
+                       return retval;
+               }
+
+               block_ptr += fwu->block_size;
+       }
+
+       return 0;
+}
+
+static int fwu_write_firmware_block(void)
+{
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev,
+                       "%s: size : %d, cmd : %d\n", __func__, fwu->img.uiFirmware.size, CMD_WRITE_FW_BLOCK);
+
+       return fwu_write_blocks(fwu->img.uiFirmware.data,
+               fwu->img.uiFirmware.size, CMD_WRITE_FW_BLOCK);
+}
+
+static int fwu_write_config_block(void)
+{
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev,
+                       "%s: size : %d, cmd : %d\n", __func__, fwu->img.uiConfig.size, CMD_WRITE_CONFIG_BLOCK);
+
+       return fwu_write_blocks(fwu->img.uiConfig.data,
+               fwu->img.uiConfig.size, CMD_WRITE_CONFIG_BLOCK);
+}
+
+/*
+static int fwu_write_lockdown_block(void)
+{
+       return fwu_write_blocks(fwu->img.lockdown.data,
+               fwu->img.lockdown.size, CMD_WRITE_LOCKDOWN_BLOCK);
+}
+*/
+static int fwu_write_guest_code_block(void)
+{
+       return fwu_write_blocks(fwu->img.guestCode.data,
+               fwu->img.guestCode.size, CMD_WRITE_GUEST_CODE);
+}
+
+static int fwu_write_bootloader_id(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu->fn_ptr->write(rmi4_data,
+                       fwu->f34_fd.data_base_addr + fwu->blk_data_off,
+                       fwu->bootloader_id,
+                       sizeof(fwu->bootloader_id));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write bootloader ID\n",
+                               __func__);
+               return retval;
+       }
+
+       return 0;
+}
+
+static int fwu_enter_flash_prog(void)
+{
+       int retval;
+       struct f01_device_status f01_device_status;
+       struct f01_device_control f01_device_control;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+       retval = fwu_read_f34_flash_status();
+       if (retval < 0)
+               return retval;
+
+       if (fwu->program_enabled)
+               return 0;
+
+       retval = fwu_write_bootloader_id();
+       if (retval < 0)
+               return retval;
+
+       retval = fwu_write_f34_command(CMD_ENABLE_FLASH_PROG);
+       if (retval < 0)
+               return retval;
+
+       retval = fwu_wait_for_idle(ENABLE_WAIT_MS);
+       if (retval < 0)
+               return retval;
+
+       if (!fwu->program_enabled) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Program enabled bit not set\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       retval = fwu_scan_pdt();
+       if (retval < 0)
+               return retval;
+
+       retval = fwu_read_f01_device_status(&f01_device_status);
+       if (retval < 0)
+               return retval;
+
+       if (!f01_device_status.flash_prog) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Not in flash prog mode\n",
+                               __func__);
+               return -EINVAL;
+       }
+
+       retval = fwu_read_f34_queries();
+       if (retval < 0)
+               return retval;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f01_fd.ctrl_base_addr,
+                       f01_device_control.data,
+                       sizeof(f01_device_control.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read F01 device control\n",
+                               __func__);
+               return retval;
+       }
+
+       f01_device_control.nosleep = true;
+       f01_device_control.sleep_mode = SLEEP_MODE_NORMAL;
+
+       retval = fwu->fn_ptr->write(rmi4_data,
+                       fwu->f01_fd.ctrl_base_addr,
+                       f01_device_control.data,
+                       sizeof(f01_device_control.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write F01 device control\n",
+                               __func__);
+               return retval;
+       }
+
+       return retval;
+}
+
+static int fwu_do_reflash(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Entered flash prog mode\n",
+                       __func__);
+
+       retval = fwu_write_bootloader_id();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Bootloader ID written\n",
+                       __func__);
+
+       retval = fwu_write_f34_command(CMD_ERASE_ALL);
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Erase all command written\n",
+                       __func__);
+       usleep_range(MAX_SLEEP_TIME_US, MAX_SLEEP_TIME_US + MIN_SLEEP_TIME_US);
+
+       retval = fwu_wait_for_idle(ERASE_WAIT_MS);
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Idle status detected\n",
+                       __func__);
+
+       if (fwu->img.uiFirmware.data) {
+               retval = fwu_write_firmware_block();
+               if (retval < 0)
+                       return retval;
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Firmware programmed\n",
+                       __func__);
+       }
+
+       if (fwu->img.uiConfig.data) {
+               retval = fwu_write_config_block();
+               if (retval < 0)
+                       return retval;
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Configuration programmed\n",
+                       __func__);
+       }
+
+       if (fwu->img.guestCode.data) {
+               retval = fwu_do_write_guest_code();
+               if (retval < 0)
+                       return retval;
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: guest-thread programmed\n",
+                               __func__);
+       } else {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: is not guestcode data in fw img\n",
+                               __func__);
+
+       }
+       return retval;
+}
+
+static int fwu_do_write_config(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Entered flash prog mode\n",
+                       __func__);
+
+       if (fwu->config_area == PERM_CONFIG_AREA) {
+               fwu->config_block_count = fwu->perm_config_block_count;
+               goto write_config;
+       }
+
+       retval = fwu_write_bootloader_id();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Bootloader ID written, AREA : %d\n",
+                       __func__, fwu->config_area);
+
+       switch (fwu->config_area) {
+       case UI_CONFIG_AREA:
+               retval = fwu_write_f34_command(CMD_ERASE_CONFIG);
+               break;
+       case BL_CONFIG_AREA:
+               retval = fwu_write_f34_command(CMD_ERASE_BL_CONFIG);
+               fwu->config_block_count = fwu->bl_config_block_count;
+               break;
+       case DISP_CONFIG_AREA:
+               retval = fwu_write_f34_command(CMD_ERASE_DISP_CONFIG);
+               fwu->config_block_count = fwu->disp_config_block_count;
+               break;
+       }
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Erase command written\n",
+                       __func__);
+
+       retval = fwu_wait_for_idle(ERASE_WAIT_MS);
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Idle status detected\n",
+                       __func__);
+
+write_config:
+       retval = fwu_write_config_block();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Config written\n",
+               __func__);
+
+       return retval;
+}
+
+static int fwu_start_reflash(void)
+{
+       int retval = 0, retry = 3;
+#ifdef FW_UPDATE_GO_NOGO
+       enum flash_area flash_area;
+#endif
+       struct f01_device_status f01_device_status;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+
+       if (rmi4_data->sensor_sleep || rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Sensor sleeping or stopped\n",
+                               __func__);
+               return -ENODEV;
+       }
+
+       rmi4_data->stay_awake = true;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: start\n", __func__);
+
+       if (!fwu->ext_data_source) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Firmware data is NULL\n", __func__);
+               return -ENODEV;
+       }
+
+       fwu->img.fw_image = fwu->ext_data_source;
+       fwu_img_parse_format();
+
+       if (fwu->bl_version != fwu->img.blMajorVersion) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Bootloader version mismatch\n",
+                               __func__);
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       while (retry--) {
+               mutex_lock(&(rmi4_data->rmi4_reflash_mutex));
+               rmi4_data->doing_reflash = true;
+
+#ifdef FW_UPDATE_GO_NOGO
+               flash_area = fwu_go_nogo();
+
+               switch (flash_area) {
+               case UI_FIRMWARE:
+                       retval = fwu_do_reflash();
+                       break;
+               case CONFIG_AREA:
+                       retval = fwu_do_write_config();
+                       break;
+               case NONE:
+               default:
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: case is NONE or default\n",
+                                       __func__);
+                       goto exit;
+               }
+#else
+               retval = fwu_do_reflash();
+#endif
+               if (retval < 0)
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to do reflash\n", __func__);
+exit:
+               rmi4_data->reset_device(rmi4_data);
+               rmi4_data->doing_reflash = false;
+               mutex_unlock(&(rmi4_data->rmi4_reflash_mutex));
+
+               retval = fwu_read_f01_device_status(&f01_device_status);
+               if (retval < 0)
+                       goto exit;
+               else
+                       break;
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: End of reflash process\n",
+                __func__);
+
+       rmi4_data->stay_awake = false;
+
+       return retval;
+}
+
+static int fwu_do_write_guest_code(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (!fwu->has_guest_code) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Firmware does not support Guest Code.\n",
+                       __func__);
+               retval = -EINVAL;
+       }
+       if (fwu->guest_code_block_count !=
+               (fwu->img.guestCode.size/fwu->block_size)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Size of Guest Code not match (dev: %x, img: %x).\n",
+                       __func__, fwu->guest_code_block_count,
+                       fwu->img.guestCode.size/fwu->block_size);
+               retval = -EINVAL;
+       }
+
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Entered flash prog mode\n",
+                       __func__);
+
+       retval = fwu_write_bootloader_id();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Bootloader ID written\n",
+                       __func__);
+
+       retval = fwu_write_f34_command(CMD_ERASE_GUEST_CODE);
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Erase command written\n",
+                       __func__);
+
+       retval = fwu_wait_for_idle(ERASE_WAIT_MS);
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Idle status detected\n",
+                       __func__);
+
+       retval = fwu_write_guest_code_block();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: guest code written\n",
+                       __func__);
+
+       return retval;
+}
+
+static int fwu_start_write_config(void)
+{
+       int retval;
+       unsigned short block_count;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       switch (fwu->config_area) {
+       case UI_CONFIG_AREA:
+               block_count = fwu->config_block_count;
+               break;
+       case PERM_CONFIG_AREA:
+               if (!fwu->has_perm_config)
+                       return -EINVAL;
+               block_count = fwu->perm_config_block_count;
+               break;
+       case BL_CONFIG_AREA:
+               if (!fwu->has_bl_config)
+                       return -EINVAL;
+               block_count = fwu->bl_config_block_count;
+               break;
+       case DISP_CONFIG_AREA:
+               if (!fwu->has_disp_config)
+                       return -EINVAL;
+               block_count = fwu->disp_config_block_count;
+               break;
+       default:
+               return -EINVAL;
+       }
+
+       if (fwu->ext_data_source)
+               fwu->img.uiConfig.data = fwu->ext_data_source;
+       else
+               return -EINVAL;
+
+       fwu->config_size = fwu->block_size * block_count;
+
+       /* Jump to the config area if given a packrat image */
+       if ((fwu->config_area == UI_CONFIG_AREA) &&
+                       (fwu->config_size != fwu->img.image_size)) {
+               fwu_img_parse_format();
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Start of write config process\n",
+               __func__);
+
+       rmi4_data->doing_reflash = true;
+       retval = fwu_do_write_config();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write config\n",
+                               __func__);
+       }
+
+       rmi4_data->reset_device(rmi4_data);
+       rmi4_data->doing_reflash = false;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: End of write config process\n",
+               __func__);
+
+       return retval;
+}
+
+#define CHECKSUM_SIZE  4
+static void synaptics_rmi_calculate_checksum(unsigned short *data,
+                               unsigned short len, unsigned long *result)
+{
+       unsigned long temp;
+       unsigned long sum1 = 0xffff;
+       unsigned long sum2 = 0xffff;
+
+       *result = 0xffffffff;
+
+       while (len--) {
+               temp = *data;
+               sum1 += temp;
+               sum2 += sum1;
+               sum1 = (sum1 & 0xffff) + (sum1 >> 16);
+               sum2 = (sum2 & 0xffff) + (sum2 >> 16);
+               data++;
+       }
+
+       *result = sum2 << 16 | sum1;
+
+       return;
+}
+
+static void synaptics_rmi_rewrite_checksum(unsigned char *dest,
+                               unsigned long src)
+{
+       dest[0] = (unsigned char)(src & 0xff);
+       dest[1] = (unsigned char)((src >> 8) & 0xff);
+       dest[2] = (unsigned char)((src >> 16) & 0xff);
+       dest[3] = (unsigned char)((src >> 24) & 0xff);
+
+       return;
+}
+
+int synaptics_rmi4_set_tsp_test_result_in_config(int value)
+
+{
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+       int retval;
+       unsigned char buf[10] = {0, };
+       unsigned long checksum;
+
+       /* read config from IC */
+       memset(buf, 0, sizeof(buf));
+       snprintf(buf, 2, "%u\n", 1);
+       fwu_sysfs_read_config_store(&rmi4_data->i2c_client->dev, NULL, buf, 1);
+
+       /* set test result value
+        * MSB 4bit of Customr derined config ID 0 used for factory test in TSP.
+        * PASS : 2, FAIL : 1, NONE: 0.
+        */
+       fwu->read_config_buf[0] &= 0x0F;
+       fwu->read_config_buf[0] |= value << 4;
+
+       /* check CRC checksum value and re-write checksum in config */
+       synaptics_rmi_calculate_checksum((unsigned short *)fwu->read_config_buf,
+                       (fwu->config_size - CHECKSUM_SIZE) / 2, &checksum);
+
+       synaptics_rmi_rewrite_checksum(&fwu->read_config_buf[fwu->config_size - CHECKSUM_SIZE],
+                       checksum);
+
+       rmi4_data->doing_reflash = true;
+
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               goto err_config_write;
+
+
+       retval = fwu_write_bootloader_id();
+       if (retval < 0)
+               goto err_config_write;
+
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev,
+                       "%s: Bootloader ID written\n",
+                       __func__);
+
+       retval = fwu_write_f34_command(CMD_ERASE_CONFIG);
+       if (retval < 0)
+               goto err_config_write;
+
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev,
+                       "%s: Erase command written\n",
+                       __func__);
+
+       retval = fwu_wait_for_idle(ERASE_WAIT_MS);
+       if (retval < 0)
+               goto err_config_write;
+
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev,
+                       "%s: Idle status detected\n",
+                       __func__);
+
+       fwu_write_blocks(fwu->read_config_buf,
+                       fwu->config_size, CMD_WRITE_CONFIG_BLOCK);
+
+       tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev, "%s: Config written\n",
+                       __func__);
+
+err_config_write:
+       fwu->rmi4_data->reset_device(fwu->rmi4_data);
+       fwu->rmi4_data->doing_reflash = false;
+
+       return retval;
+}
+
+static int fwu_start_write_guest_code(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (!fwu->ext_data_source)
+               return -EINVAL;
+
+       fwu_img_parse_format();
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Start of update guest code process\n", __func__);
+
+       retval = fwu_do_write_guest_code();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write config\n",
+                               __func__);
+       }
+
+       rmi4_data->reset_device(rmi4_data);
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: End of write guest code process\n", __func__);
+
+       return retval;
+}
+
+int fwu_do_read_config(void)
+{
+       int retval;
+       unsigned char block_offset[] = {0, 0};
+       unsigned short block_num;
+       unsigned short block_count;
+       unsigned short index = 0;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               goto exit;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Entered flash prog mode\n",
+                       __func__);
+
+       switch (fwu->config_area) {
+       case UI_CONFIG_AREA:
+               block_count = fwu->config_block_count;
+               break;
+       case PERM_CONFIG_AREA:
+               if (!fwu->has_perm_config) {
+                       retval = -EINVAL;
+                       goto exit;
+               }
+               block_count = fwu->perm_config_block_count;
+               break;
+       case BL_CONFIG_AREA:
+               if (!fwu->has_bl_config) {
+                       retval = -EINVAL;
+                       goto exit;
+               }
+               block_count = fwu->bl_config_block_count;
+               break;
+       case DISP_CONFIG_AREA:
+               if (!fwu->has_disp_config) {
+                       retval = -EINVAL;
+                       goto exit;
+               }
+               block_count = fwu->disp_config_block_count;
+               break;
+       default:
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       fwu->config_size = fwu->block_size * block_count;
+
+       kfree(fwu->read_config_buf);
+       fwu->read_config_buf = kzalloc(fwu->config_size, GFP_KERNEL);
+       if (!fwu->read_config_buf) {
+               tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for config size data\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       block_offset[1] |= (fwu->config_area << 5);
+
+       retval = fwu->fn_ptr->write(fwu->rmi4_data,
+                       fwu->f34_fd.data_base_addr + BLOCK_NUMBER_OFFSET,
+                       block_offset,
+                       sizeof(block_offset));
+       if (retval < 0) {
+               tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                               "%s: Failed to write to block number registers\n",
+                               __func__);
+               goto exit;
+       }
+
+       for (block_num = 0; block_num < block_count; block_num++) {
+               retval = fwu_write_f34_command(CMD_READ_CONFIG_BLOCK);
+               if (retval < 0) {
+                       tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to write read config command\n",
+                                       __func__);
+                       goto exit;
+               }
+
+               retval = fwu_wait_for_idle(WRITE_WAIT_MS);
+               if (retval < 0) {
+                       tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to wait for idle status\n",
+                                       __func__);
+                       goto exit;
+               }
+
+               retval = fwu->fn_ptr->read(fwu->rmi4_data,
+                               fwu->f34_fd.data_base_addr + fwu->blk_data_off,
+                               &fwu->read_config_buf[index],
+                               fwu->block_size);
+               if (retval < 0) {
+                       tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read block data (block %d)\n",
+                                       __func__, block_num);
+                       goto exit;
+               }
+
+               index += fwu->block_size;
+       }
+
+exit:
+       fwu->rmi4_data->reset_device(fwu->rmi4_data);
+
+       return retval;
+}
+
+/*
+static int fwu_do_lockdown(void)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = fwu_enter_flash_prog();
+       if (retval < 0)
+               return retval;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       fwu->f34_fd.query_base_addr + fwu->properties_off,
+                       fwu->flash_properties.data,
+                       sizeof(fwu->flash_properties.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read flash properties\n",
+                               __func__);
+               return retval;
+       }
+
+       if (fwu->flash_properties.unlocked == 0) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Device already locked down\n",
+                               __func__);
+               return retval;
+       }
+
+       retval = fwu_write_lockdown_block();
+       if (retval < 0)
+               return retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Lockdown programmed\n", __func__);
+
+       return retval;
+}
+*/
+
+int synaptics_fw_updater(unsigned char *fw_data)
+{
+#ifdef USE_REWRITE_TEST_RESULT
+       int before_test_result = 0, after_test_result = 0;
+#endif
+       int retval;
+
+       if (!fwu)
+               return -ENODEV;
+
+       if (!fwu->initialized)
+               return -ENODEV;
+
+       if (!fw_data) {
+               tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                               "%s: Firmware data is NULL\n", __func__);
+               return -ENODEV;
+       }
+
+       fwu->ext_data_source = fw_data;
+       fwu->config_area = UI_CONFIG_AREA;
+
+#ifdef USE_REWRITE_TEST_RESULT
+       before_test_result = synaptics_rmi4_read_tsp_test_result(rmi4_data);
+#endif
+
+       retval = fwu_start_reflash();
+       if (retval < 0)
+               goto out_fw_update;
+
+#ifdef USE_REWRITE_TEST_RESULT
+       /* TODO: I do not recommend below codes. because to set the test result
+        * is not verified completed. and below code is not efficent when firmware update is
+        * broken by unintended enviroment such as power off.
+        */
+       if (!before_test_result)
+               goto out_fw_update;
+
+       after_test_result = synaptics_rmi4_read_tsp_test_result(rmi4_data);
+
+       if (before_test_result != after_test_result) {
+               tsp_debug_info(true, &fwu->rmi4_data->i2c_client->dev, "%s: Re-write test result after firmware update before[%x]/after[%x]\n",
+                               __func__, before_test_result, after_test_result);
+
+               retval = synaptics_rmi4_set_tsp_test_result_in_config(before_test_result);
+               if (retval < 0)
+                       tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev, "%s: Failed to write tsp_test_result in config\n",
+                                       __func__);
+       }
+#endif
+out_fw_update:
+       return retval;
+}
+EXPORT_SYMBOL(synaptics_fw_updater);
+
+static ssize_t fwu_sysfs_show_image(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (count < fwu->config_size) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Not enough space (%ld bytes) in buffer\n",
+                               __func__, count);
+               return -EINVAL;
+       }
+
+       memcpy(buf, fwu->read_config_buf, fwu->config_size);
+
+       return fwu->config_size;
+}
+
+static ssize_t fwu_sysfs_store_image(struct file *data_file,
+               struct kobject *kobj, struct bin_attribute *attributes,
+               char *buf, loff_t pos, size_t count)
+{
+       memcpy((void *)(&fwu->ext_data_source[fwu->data_pos]),
+                       (const void *)buf,
+                       count);
+
+       fwu->data_pos += count;
+       fwu->img.fw_image = fwu->ext_data_source;
+       return count;
+}
+
+static ssize_t fwu_sysfs_do_reflash_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       if (input & UPDATE_MODE_LOCKDOWN) {
+               fwu->do_lockdown = true;
+               input &= ~UPDATE_MODE_LOCKDOWN;
+       }
+
+       if ((input != UPDATE_MODE_NORMAL) && (input != UPDATE_MODE_FORCE)) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       if (input == UPDATE_MODE_FORCE)
+               fwu->force_update = true;
+
+       retval = synaptics_fw_updater(fwu->ext_data_source);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to do reflash\n",
+                               __func__);
+               goto exit;
+       }
+
+       retval = count;
+
+exit:
+       kfree(fwu->ext_data_source);
+       fwu->ext_data_source = NULL;
+       fwu->force_update = FORCE_UPDATE;
+       fwu->do_lockdown = DO_LOCKDOWN;
+       return retval;
+}
+
+static ssize_t fwu_sysfs_write_config_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       if (input != 1) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       retval = fwu_start_write_config();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write config\n",
+                               __func__);
+               goto exit;
+       }
+
+       retval = count;
+
+exit:
+       kfree(fwu->ext_data_source);
+       fwu->ext_data_source = NULL;
+       return retval;
+}
+
+static ssize_t fwu_sysfs_read_config_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       if (input != 1)
+               return -EINVAL;
+
+       retval = fwu_do_read_config();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read config\n",
+                               __func__);
+               return retval;
+       }
+
+       return count;
+}
+
+static ssize_t fwu_sysfs_config_area_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned long config_area;
+
+       retval = kstrtoul(buf, 10, &config_area);
+       if (retval)
+               return retval;
+
+       fwu->config_area = config_area;
+
+       return count;
+}
+
+/*
+static ssize_t fwu_sysfs_image_name_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       memcpy(fwu->img.image_name, buf, count);
+
+       return count;
+}
+*/
+
+static ssize_t fwu_sysfs_image_size_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned long size;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       retval = kstrtoul(buf, 10, &size);
+       if (retval)
+               return retval;
+
+       fwu->img.image_size = size;
+       fwu->data_pos = 0;
+
+       kfree(fwu->ext_data_source);
+       fwu->ext_data_source = kzalloc(fwu->img.image_size, GFP_KERNEL);
+       if (!fwu->ext_data_source) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for image data\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       return count;
+}
+
+static ssize_t fwu_sysfs_block_size_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->block_size);
+}
+
+static ssize_t fwu_sysfs_firmware_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->fw_block_count);
+}
+
+static ssize_t fwu_sysfs_configuration_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->config_block_count);
+}
+
+static ssize_t fwu_sysfs_perm_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->perm_config_block_count);
+}
+
+static ssize_t fwu_sysfs_bl_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->bl_config_block_count);
+}
+
+static ssize_t fwu_sysfs_disp_config_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->disp_config_block_count);
+}
+
+static ssize_t fwu_sysfs_guest_code_block_count_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "%u\n", fwu->guest_code_block_count);
+}
+
+static ssize_t fwu_sysfs_write_guest_code_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = fwu->rmi4_data;
+
+       if (sscanf(buf, "%u", &input) != 1) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       if (input != 1) {
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       retval = fwu_start_write_guest_code();
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to write guest code\n",
+                               __func__);
+               goto exit;
+       }
+
+       retval = count;
+
+exit:
+       kfree(fwu->ext_data_source);
+       fwu->ext_data_source = NULL;
+       return retval;
+}
+
+static void synaptics_rmi4_fwu_attn(struct synaptics_rmi4_data *rmi4_data,
+               unsigned char intr_mask)
+{
+       if (!fwu)
+               return;
+
+       if (fwu->intr_mask & intr_mask)
+               fwu_read_f34_flash_status();
+
+       return;
+}
+
+static void fwu_img_scan_x10_container(unsigned int listLength, unsigned char *startAddr)
+{
+       unsigned int i;
+       unsigned int length;
+       unsigned int contentAddr, addr;
+       unsigned short containerId;
+       struct block_data block;
+       struct img_x10_descriptor *containerDescriptor;
+       struct img_x10_bl_container *blContainer;
+
+       for (i = 0; i < listLength; i += 4) {
+               contentAddr = extract_uint_le(startAddr + i);
+               containerDescriptor =
+                       (struct img_x10_descriptor *)(fwu->img.fw_image + contentAddr);
+               containerId = extract_ushort_le(containerDescriptor->containerID);
+               addr = extract_uint_le(containerDescriptor->contentAddress);
+               length = extract_uint_le(containerDescriptor->contentLength);
+               block.data = fwu->img.fw_image + addr;
+               block.size = length;
+               switch (containerId) {
+               case ID_UI_CONTAINER:
+                       fwu->img.uiFirmware = block;
+                       break;
+               case ID_UI_CONFIGURATION:
+                       fwu->img.uiConfig = block;
+                       fwu->img.configId = fwu->img.uiConfig.data;
+                       break;
+               case ID_BOOTLOADER_LOCKDOWN_INFORMATION_CONTAINER:
+                       fwu->img.lockdown = block;
+                       break;
+               case ID_GUEST_CODE_CONTAINER:
+                       fwu->img.guestCode = block;
+                       break;
+               case ID_BOOTLOADER_CONTAINER:
+                       blContainer =
+                       (struct img_x10_bl_container *)(fwu->img.fw_image + addr);
+                       fwu->img.blMajorVersion = blContainer->majorVersion;
+                       fwu->img.blMinorVersion = blContainer->minorVersion;
+                       fwu->img.bootloaderInfo = block;
+                       break;
+               case ID_PERMANENT_CONFIGURATION_CONTAINER:
+                       fwu->img.permanent = block;
+                       break;
+               case ID_GENERAL_INFORMATION_CONTAINER:
+                       fwu->img.packageId = fwu->img.fw_image + addr + 0;
+                       fwu->img.firmwareId = fwu->img.fw_image + addr + 4;
+                       fwu->img.dsFirmwareInfo = fwu->img.fw_image + addr + 8;
+                       break;
+               default:
+                       break;
+               }
+       }
+}
+
+static void fwu_img_parse_x10_topcontainer(void)
+{
+       struct img_x10_descriptor *descriptor;
+       unsigned int topAddr;
+       unsigned int listLength, blLength;
+       unsigned char *startAddr;
+
+       topAddr = extract_uint_le(fwu->img.fw_image +
+                               IMG_X10_TOP_CONTAINER_OFFSET);
+       descriptor = (struct img_x10_descriptor *)
+                       (fwu->img.fw_image + topAddr);
+       listLength = extract_uint_le(descriptor->contentLength);
+       startAddr = fwu->img.fw_image +
+                       extract_uint_le(descriptor->contentAddress);
+       fwu_img_scan_x10_container(listLength, startAddr);
+       /* scan sub bootloader container (lockdown container) */
+       if (fwu->img.bootloaderInfo.data != NULL) {
+               blLength = fwu->img.bootloaderInfo.size - 4;
+               if (blLength)
+                       fwu_img_scan_x10_container(blLength,
+                                       fwu->img.bootloaderInfo.data);
+       }
+}
+
+static void fwu_img_parse_x10(void)
+{
+       fwu_img_parse_x10_topcontainer();
+}
+
+static void fwu_img_parse_x0_x6(void)
+{
+       struct img_x0x6_header *header = (struct img_x0x6_header *)fwu->img.fw_image;
+       if (header->bootloader_version > 6)
+               return;
+       fwu->img.blMajorVersion = header->bootloader_version;
+       fwu->img.uiFirmware.size = extract_uint_le(header->firmware_size);
+       fwu->img.uiFirmware.data = fwu->img.fw_image + IMG_X0_X6_FW_OFFSET;
+       fwu->img.uiConfig.size = extract_uint_le(header->config_size);
+       fwu->img.uiConfig.data = fwu->img.uiFirmware.data + fwu->img.uiFirmware.size;
+       fwu->img.configId = fwu->img.uiConfig.data;
+       switch (fwu->img.imageFileVersion) {
+       case 0x2:
+               fwu->img.lockdown.size = 0x30;
+               break;
+       case 0x3:
+       case 0x4:
+               fwu->img.lockdown.size = 0x40;
+               break;
+       case 0x5:
+       case 0x6:
+               fwu->img.lockdown.size = 0x50;
+               if (header->options_firmware_id) {
+                       fwu->img.firmwareId = header->firmware_id;
+                       fwu->img.packageId = header->package_id;
+                       fwu->img.dsFirmwareInfo = header->ds_firmware_info;
+               }
+               break;
+       default:
+               break;
+       }
+       fwu->img.lockdown.data = fwu->img.fw_image +
+               IMG_X0_X6_FW_OFFSET - fwu->img.lockdown.size;
+}
+
+static void fwu_img_parse_format(void)
+{
+       fwu->polling_mode = POLLING_MODE_DEFAULT;
+       fwu->img.firmwareId = NULL;
+       fwu->img.packageId = NULL;
+       fwu->img.dsFirmwareInfo = NULL;
+       fwu->img.uiFirmware.data = NULL;
+       fwu->img.uiConfig.data = NULL;
+       fwu->img.lockdown.data = NULL;
+       fwu->img.guestCode.data = NULL;
+       fwu->img.uiConfig.size = 0;
+       fwu->img.uiFirmware.size = 0;
+       fwu->img.lockdown.size = 0;
+       fwu->img.guestCode.size =        0;
+
+       fwu->img.imageFileVersion = fwu->img.fw_image[IMG_VERSION_OFFSET];
+
+       switch (fwu->img.imageFileVersion) {
+       case 0x10:
+               fwu_img_parse_x10();
+               break;
+       case 0x5:
+       case 0x6:
+               fwu_img_parse_x0_x6();
+               break;
+       default:
+               tsp_debug_err(true, &fwu->rmi4_data->i2c_client->dev,
+                               "%s: Unsupported image file format $%X\n",
+                               __func__, fwu->img.imageFileVersion);
+               break;
+       }
+}
+
+static int synaptics_rmi4_fwu_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char attr_count;
+       int attr_count_num;
+       struct pdt_properties pdt_props;
+
+       fwu = kzalloc(sizeof(*fwu), GFP_KERNEL);
+       if (!fwu) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fwu\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit;
+       }
+
+       fwu->fn_ptr = kzalloc(sizeof(*(fwu->fn_ptr)), GFP_KERNEL);
+       if (!fwu->fn_ptr) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fn_ptr\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_free_fwu;
+       }
+
+       memset(&fwu->img, 0, sizeof(fwu->img));
+
+       fwu->img.image_name = kzalloc(MAX_IMAGE_NAME_LEN, GFP_KERNEL);
+       if (!fwu->img.image_name) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for image name\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto exit_free_fn_ptr;
+       }
+
+       fwu->rmi4_data = rmi4_data;
+       fwu->fn_ptr->read = rmi4_data->i2c_read;
+       fwu->fn_ptr->write = rmi4_data->i2c_write;
+       fwu->fn_ptr->enable = rmi4_data->irq_enable;
+
+       retval = fwu->fn_ptr->read(rmi4_data,
+                       PDT_PROPS,
+                       pdt_props.data,
+                       sizeof(pdt_props.data));
+       if (retval < 0) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read PDT properties, assuming 0x00\n",
+                               __func__);
+       } else if (pdt_props.has_bsr) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Reflash for LTS not currently supported\n",
+                               __func__);
+               retval = -ENODEV;
+               goto exit_free_mem;
+       }
+
+       retval = fwu_scan_pdt();
+       if (retval < 0)
+               goto exit_free_mem;
+
+       fwu->productinfo1 = rmi4_data->rmi4_mod_info.product_info[0];
+       fwu->productinfo2 = rmi4_data->rmi4_mod_info.product_info[1];
+       memcpy(fwu->product_id, rmi4_data->rmi4_mod_info.product_id_string,
+                       SYNAPTICS_RMI4_PRODUCT_ID_SIZE);
+       fwu->product_id[SYNAPTICS_RMI4_PRODUCT_ID_SIZE] = 0;
+
+       retval = fwu_read_f34_queries();
+       if (retval < 0)
+               goto exit_free_mem;
+
+       fwu->force_update = FORCE_UPDATE;
+       fwu->do_lockdown = DO_LOCKDOWN;
+       fwu->initialized = true;
+
+       retval = sysfs_create_bin_file(&rmi4_data->input_dev->dev.kobj,
+                       &dev_attr_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs bin file\n",
+                               __func__);
+               goto exit_free_mem;
+       }
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               retval = sysfs_create_file(&rmi4_data->input_dev->dev.kobj,
+                               &attrs[attr_count].attr);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to create sysfs attributes\n",
+                                       __func__);
+                       retval = -ENODEV;
+                       goto exit_remove_attrs;
+               }
+       }
+
+       return 0;
+
+exit_remove_attrs:
+       attr_count_num = (int)attr_count;
+       for (attr_count_num--; attr_count_num >= 0; attr_count_num--) {
+               sysfs_remove_file(&rmi4_data->input_dev->dev.kobj,
+                               &attrs[attr_count].attr);
+       }
+
+       sysfs_remove_bin_file(&rmi4_data->input_dev->dev.kobj, &dev_attr_data);
+
+exit_free_mem:
+       kfree(fwu->img.image_name);
+
+exit_free_fn_ptr:
+       kfree(fwu->fn_ptr);
+
+exit_free_fwu:
+       kfree(fwu);
+       fwu = NULL;
+
+exit:
+       return retval;
+}
+
+static void synaptics_rmi4_fwu_remove(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char attr_count;
+
+       if (!fwu)
+               goto exit;
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               sysfs_remove_file(&rmi4_data->input_dev->dev.kobj,
+                               &attrs[attr_count].attr);
+       }
+
+       sysfs_remove_bin_file(&rmi4_data->input_dev->dev.kobj, &dev_attr_data);
+
+       kfree(fwu->read_config_buf);
+       kfree(fwu->img.image_name);
+       kfree(fwu);
+       fwu = NULL;
+
+exit:
+       return;
+}
+
+int rmi4_fw_update_module_register(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = synaptics_rmi4_new_function(RMI_FW_UPDATER,
+                       rmi4_data,
+                       synaptics_rmi4_fwu_init,
+                       NULL,
+                       synaptics_rmi4_fwu_remove,
+                       synaptics_rmi4_fwu_attn);
+
+       return retval;
+}
diff --git a/drivers/input/touchscreen/synaptics_dsx/rmi_guest.c b/drivers/input/touchscreen/synaptics_dsx/rmi_guest.c
new file mode 100644 (file)
index 0000000..31a3f31
--- /dev/null
@@ -0,0 +1,503 @@
+/* Synaptics Register Mapped Interface (RMI4) I2C Physical Layer Driver.
+ * Copyright (c) 2007-2012, Synaptics Incorporated
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <asm/siginfo.h>
+#include <mach/cpufreq.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/gpio.h>
+#include <linux/uaccess.h>
+#include <linux/signal.h>
+#include "synaptics_i2c_rmi.h"
+
+#include "Multiverse/GMvSystem.h"
+
+#define GEUST_PAGES_TO_SERVICE (0x60)
+#define HARDCODE_PDT
+
+static ssize_t rmi_guest_sysfs_query_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmi_guest_sysfs_control_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmi_guest_sysfs_data_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t rmi_guest_sysfs_command_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+struct rmi_guest_handle {
+       unsigned char intr_mask;
+       unsigned char intr_reg_num;
+       unsigned short query_base_addr;
+       unsigned short control_base_addr;
+       unsigned short data_base_addr;
+       unsigned short command_base_addr;
+       struct synaptics_rmi4_data *rmi4_data;
+       struct synaptics_rmi4_exp_fn_ptr *fn_ptr;
+       struct kobject *sysfs_dir;
+};
+
+static struct device_attribute attrs[] = {
+       __ATTR(query_base_addr, S_IRUGO,
+                       rmi_guest_sysfs_query_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(control_base_addr, S_IRUGO,
+                       rmi_guest_sysfs_control_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(data_base_addr, S_IRUGO,
+                       rmi_guest_sysfs_data_base_addr_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(command_base_addr, S_IRUGO,
+                       rmi_guest_sysfs_command_base_addr_show,
+                       synaptics_rmi4_store_error),
+};
+
+static struct rmi_guest_handle *rmiguest;
+
+static ssize_t rmi_guest_sysfs_query_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n",
+                       rmiguest->query_base_addr);
+}
+
+static ssize_t rmi_guest_sysfs_control_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n",
+                       rmiguest->control_base_addr);
+}
+
+static ssize_t rmi_guest_sysfs_data_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n",
+                       rmiguest->data_base_addr);
+}
+
+static ssize_t rmi_guest_sysfs_command_base_addr_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       return snprintf(buf, PAGE_SIZE, "0x%04x\n",
+                       rmiguest->command_base_addr);
+}
+
+static int rmi_guest_scan_pdt(void)
+{
+       int retval;
+       unsigned short ii;
+       unsigned short addr;
+       unsigned char page;
+       unsigned char intr_count = 0;
+       unsigned char intr_offset;
+       bool fguest_found = false;
+       struct synaptics_rmi4_fn_desc rmi_fd;
+       struct synaptics_rmi4_data *rmi4_data = rmiguest->rmi4_data;
+
+       for (page = 0; page <= GEUST_PAGES_TO_SERVICE; page++) {
+               for (ii = PDT_START; ii > PDT_END; ii -= PDT_ENTRY_SIZE) {
+                       ii |= (page << 8);
+
+                       retval = rmiguest->fn_ptr->read(rmiguest->rmi4_data,
+                                       ii,
+                                       (unsigned char *)&rmi_fd,
+                                       sizeof(rmi_fd));
+                       if (retval < 0)
+                               return retval;
+
+                       ii &= ~(MASK_8BIT << 8);
+
+                       if (!rmi_fd.fn_number)
+                               break;
+
+                       if (rmi_fd.fn_number == SYNAPTICS_RMI4_F60) {
+                               fguest_found = true;
+                               goto fguest_found;
+                       }
+
+                       intr_count += (rmi_fd.intr_src_count & MASK_3BIT);
+               }
+       }
+
+#ifndef HARDCODE_PDT
+       if (!fguest_found) {
+               tsp_debug_err(true, &rmiguest->rmi4_data->i2c_client->dev,
+                               "%s: Failed to find F60\n",
+                               __func__);
+               return -EINVAL;
+       }
+#endif
+
+fguest_found:
+       rmiguest->query_base_addr = rmi_fd.query_base_addr | (page << 8);
+       rmiguest->control_base_addr = rmi_fd.ctrl_base_addr | (page << 8);
+       rmiguest->data_base_addr = rmi_fd.data_base_addr | (page << 8);
+       rmiguest->command_base_addr = rmi_fd.cmd_base_addr | (page << 8);
+
+#ifdef HARDCODE_PDT
+       rmiguest->query_base_addr = 0x0000;
+       rmiguest->control_base_addr = 0x0000;
+       rmiguest->data_base_addr = 0x6000;
+       rmiguest->command_base_addr = 0x0000;
+       rmi_fd.intr_src_count = 1;
+#endif
+
+       rmiguest->intr_reg_num = (intr_count + 7) / 8;
+       if (rmiguest->intr_reg_num != 0)
+               rmiguest->intr_reg_num -= 1;
+
+       rmiguest->intr_mask = 0;
+       intr_offset = intr_count % 8;
+       for (ii = intr_offset;
+                       ii < ((rmi_fd.intr_src_count & MASK_3BIT) +
+                       intr_offset);
+                       ii++) {
+               rmiguest->intr_mask |= 1 << ii;
+       }
+
+       rmi4_data->intr_mask[0] |= rmiguest->intr_mask;
+
+       addr = rmi4_data->f01_ctrl_base_addr + 1;
+
+       retval = rmiguest->fn_ptr->write(rmi4_data,
+                       addr,
+                       &(rmi4_data->intr_mask[0]),
+                       sizeof(rmi4_data->intr_mask[0]));
+       if (retval < 0)
+               return retval;
+
+       return 0;
+}
+
+static void rmi_guest_attn(struct synaptics_rmi4_data *rmi4_data,
+               unsigned char intr_mask)
+{
+       if (!rmiguest)
+               return;
+
+       if (rmiguest->intr_mask & intr_mask) {
+#ifdef USE_GUEST_THREAD
+               GMvBraneIsr();
+#endif
+       }
+
+       return;
+}
+
+static int rmi_guest_reinit(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = rmi_guest_scan_pdt();
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to find guest functionality\n",
+                               __func__);
+
+       return 0;
+}
+
+static int rmi_guest_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char attr_count;
+
+       rmiguest = kzalloc(sizeof(*rmiguest), GFP_KERNEL);
+       if (!rmiguest) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for rmiguest\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_rmi_guest;
+       }
+
+       rmiguest->fn_ptr = kzalloc(sizeof(*(rmiguest->fn_ptr)), GFP_KERNEL);
+       if (!rmiguest->fn_ptr) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for fn_ptr\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_fn_ptr;
+       }
+
+       rmiguest->fn_ptr->read = rmi4_data->i2c_read;
+       rmiguest->fn_ptr->write = rmi4_data->i2c_write;
+       rmiguest->fn_ptr->enable = rmi4_data->irq_enable;
+       rmiguest->rmi4_data = rmi4_data;
+
+       retval = rmi_guest_scan_pdt();
+       if (retval < 0) {
+               retval = 0;
+               goto err_scan_pdt;
+       }
+
+       rmiguest->sysfs_dir = kobject_create_and_add("guest",
+                       &rmi4_data->input_dev->dev.kobj);
+       if (!rmiguest->sysfs_dir) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to create sysfs directory\n",
+                               __func__);
+               retval = -ENODEV;
+               goto err_sysfs_dir;
+       }
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               retval = sysfs_create_file(rmiguest->sysfs_dir,
+                               &attrs[attr_count].attr);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->input_dev->dev,
+                                       "%s: Failed to create sysfs attributes\n",
+                                       __func__);
+                       retval = -ENODEV;
+                       goto err_sysfs_attrs;
+               }
+       }
+
+       return 0;
+
+err_sysfs_attrs:
+       for (attr_count--; attr_count >= 0; attr_count--)
+               sysfs_remove_file(rmiguest->sysfs_dir, &attrs[attr_count].attr);
+
+       kobject_put(rmiguest->sysfs_dir);
+
+err_sysfs_dir:
+err_scan_pdt:
+       kfree(rmiguest->fn_ptr);
+
+err_fn_ptr:
+       kfree(rmiguest);
+       rmiguest = NULL;
+
+err_rmi_guest:
+       return retval;
+}
+
+static void rmi_guest_remove(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char attr_count;
+
+       if (!rmiguest)
+               goto exit;
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++)
+               sysfs_remove_file(rmiguest->sysfs_dir, &attrs[attr_count].attr);
+
+       kobject_put(rmiguest->sysfs_dir);
+
+       kfree(rmiguest->fn_ptr);
+       kfree(rmiguest);
+       rmiguest = NULL;
+
+exit:
+       return;
+}
+
+int rmi_guest_module_register(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+
+       retval = synaptics_rmi4_new_function(RMI_GUEST,
+                       rmi4_data,
+                       rmi_guest_init,
+                       rmi_guest_reinit,
+                       rmi_guest_remove,
+                       rmi_guest_attn);
+
+       return retval;
+}
+
+#ifdef USE_GUEST_THREAD
+
+#define DEB_NONE_LEVEL         0
+#define DBG_STRING_LEVEL       1
+#define DBG_DATA_LEVEL         2
+
+#define MV_DBG_RESULT_STR_LEN  160
+#define MV_DEBUG_STR_LEN       8
+
+#define MV_DEBUG_PRNT_SCREEN(_dest, _temp, _length, fmt, ...)  \
+({     \
+       snprintf(_temp, _length, fmt, ## __VA_ARGS__);  \
+       strcat(_dest, _temp);   \
+})
+
+enum MV_ADD_VAL {
+       MV_ADDR_HEADER_RX,
+       MV_ADDR_HEADER_TX,
+       MV_ADDR_PAYLOAD_RX,
+       MV_ADDR_PAYLOAD_TX,
+       MV_ADDR_ACK_LSB,
+       MV_ADDR_ACK_MSB,
+       MV_ADDR_VER_LSB,
+       MV_ADDR_VER_MSB,
+};
+
+enum MV_PKT_ID_TYPE {
+       MV_PKT_ID_TYPE_BRANE,
+       MV_PKT_ID_TYPE_BASIC,
+       MV_PKT_ID_TYPE_START_SVC,
+       MV_PKT_ID_TYPE_STOP_SVC,
+       MV_PKT_ID_TYPE_DATA_SVC,
+       MV_PKT_ID_TYPE_MAX,
+};
+
+enum MV_PKT_HEADER {
+       MV_HEADER_PKT_SYNC,
+       MV_HEADER_PKT_ID,
+       MV_HEADER_PKT_ARG,
+       MV_HEADER_PKT_MAX,
+/*...*/
+};
+
+enum MV_PKT_ACK {
+       MV_ACK_PKT_ID,
+       MV_ACK_PKT_ARG,
+       MV_ACK_PKT_MAX,
+};
+
+static char * MV_ADDR_STR[8] = {
+       "HDR_RX ",
+       "HDR_TX ",
+       "PLD_RX ",
+       "PLD_TX ",
+       "ACK_LSB",
+       "ACK_MSB",
+       "VER_LSB",
+       "VER_MSB"
+};
+
+static char * MV_PKT_ID_STR[5] = {
+       "BRANE",
+       "BASIC",
+       "START",
+       "STOP",
+       "DATA",
+};
+
+static char * MV_BASIC_PKT_ARG_STR[5] = {
+       "WAIT. ",
+       "ACK. ",
+       "NACK. ",
+       "RESET. ",
+       "SPEC. ",
+};
+
+static void debug_multiverse_pkt(u8 mode, uint16 u16Addr, void *pvData, sint32 s32Size)
+{
+       char buffer[MV_DBG_RESULT_STR_LEN] = {0,};
+       char buffer_temp[MV_DEBUG_STR_LEN] = {0,};
+       int i;
+       unsigned char addr_id = u16Addr & 0xF;
+       unsigned char id_type = MV_PKT_ID_TYPE_MAX;
+
+       if (rmiguest->rmi4_data->guest_pkt_dbg_level >= DBG_DATA_LEVEL) {
+               for (i = 0; i < s32Size; i++) {
+                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, "0x%02X ", ((unsigned char *)pvData)[i]);
+               }
+               goto out;
+       }
+
+       switch (addr_id) {
+       case MV_ADDR_HEADER_RX:
+       case MV_ADDR_HEADER_TX:
+               for (i = 0; i < MV_HEADER_PKT_MAX; i++) {
+                       switch (i) {
+                       case MV_HEADER_PKT_ID:
+                               id_type = ((unsigned char *)pvData)[MV_HEADER_PKT_ID];
+                               MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " %s", MV_PKT_ID_STR[id_type]);
+                               break;
+                       case MV_HEADER_PKT_ARG:
+                               if (id_type == MV_PKT_ID_TYPE_BASIC)
+                                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " %s", MV_BASIC_PKT_ARG_STR[((unsigned char *)pvData)[MV_HEADER_PKT_ARG]]);
+                               else
+                                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " [0x%02X]", ((unsigned char *)pvData)[MV_HEADER_PKT_ARG]);
+                               break;
+                       default:
+                               break;
+                       }
+               }
+               break;
+       case MV_ADDR_ACK_LSB:
+               for (i = 0; i < MV_ACK_PKT_MAX; i++) {
+                       switch (i) {
+                       case MV_ACK_PKT_ID:
+                               id_type = ((unsigned char *)pvData)[MV_HEADER_PKT_ID];
+                               MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " %s", MV_PKT_ID_STR[((unsigned char *)pvData)[MV_ACK_PKT_ID]]);
+                               break;
+                       case MV_ACK_PKT_ARG:
+                               if (id_type == MV_PKT_ID_TYPE_BASIC)
+                                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " %s", MV_BASIC_PKT_ARG_STR[((unsigned char *)pvData)[MV_ACK_PKT_ARG]]);
+                               else
+                                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, " [0x%02X]", ((unsigned char *)pvData)[MV_ACK_PKT_ARG]);
+                               break;
+                       default:
+                               break;
+                       }
+               }
+               break;
+       default:
+               for (i = 0; i < s32Size; i++) {
+                       MV_DEBUG_PRNT_SCREEN(buffer, buffer_temp, MV_DEBUG_STR_LEN, "0x%02X ", ((unsigned char *)pvData)[i]);
+               }
+               break;
+       }
+
+out:
+       tsp_debug_err(true, &rmiguest->rmi4_data->i2c_client->dev,
+                       "[PKT:(%s)]: 0x%04X [%s][%ld]: %s\n", mode ? "W" : "R",
+                       u16Addr, MV_ADDR_STR[u16Addr & 0xF], s32Size, buffer);
+}
+#endif
+
+void GMvGtReadI2cRegister(uint16 u16Addr, void *pvData, sint32 s32Size)
+{
+       if( rmiguest )
+       {
+               if( rmiguest->fn_ptr && rmiguest->rmi4_data )
+               {
+                       if( rmiguest->fn_ptr->read ) {
+                               rmiguest->fn_ptr->read( rmiguest->rmi4_data, u16Addr, pvData, s32Size );
+#ifdef USE_GUEST_THREAD
+                               if (rmiguest->rmi4_data->guest_pkt_dbg_level)
+                                       debug_multiverse_pkt(0 ,u16Addr, pvData, s32Size);
+#endif
+                       }
+               }
+       }
+}
+
+void GMvGtWriteI2cRegister(uint16 u16Addr, void *pvData, sint32 s32Size)
+{
+       if( rmiguest )
+       {
+               if( rmiguest->fn_ptr && rmiguest->rmi4_data )
+               {
+                       if( rmiguest->fn_ptr->write ) {
+                               rmiguest->fn_ptr->write( rmiguest->rmi4_data, u16Addr, pvData, s32Size );
+#ifdef USE_GUEST_THREAD
+                               if (rmiguest->rmi4_data->guest_pkt_dbg_level)
+                                       debug_multiverse_pkt(1 ,u16Addr, pvData, s32Size);
+#endif
+                       }
+               }
+       }
+}
diff --git a/drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.c b/drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.c
new file mode 100644 (file)
index 0000000..13811ab
--- /dev/null
@@ -0,0 +1,4787 @@
+/*
+ * Synaptics DSX touchscreen driver
+ *
+ * Copyright (C) 2012 Synaptics Incorporated
+ *
+ * Copyright (C) 2012 Alexandra Chin <alexandra.chin@tw.synaptics.com>
+ * Copyright (C) 2012 Scott Lin <scott.lin@tw.synaptics.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <asm/unaligned.h>
+#include <linux/slab.h>
+#include <linux/i2c.h>
+#include <linux/interrupt.h>
+#include <linux/delay.h>
+#include <linux/input.h>
+#include <linux/input/mt.h>
+#include <linux/gpio.h>
+#include <linux/regulator/consumer.h>
+#include <linux/of.h>
+#include <linux/of_gpio.h>
+#include <linux/workqueue.h>
+#ifdef CONFIG_HAS_EARLYSUSPEND
+#include <linux/earlysuspend.h>
+#endif
+
+#include "synaptics_i2c_rmi.h"
+
+static int synaptics_rmi4_i2c_read(struct synaptics_rmi4_data *rmi4_data,
+               unsigned short addr, unsigned char *data,
+               unsigned short length);
+
+static void synaptics_rmi4_remove_exp_fn(struct synaptics_rmi4_data *rmi4_data);
+static int synaptics_rmi4_irq_enable(struct synaptics_rmi4_data *rmi4_data,
+               bool enable);
+static int synaptics_rmi4_i2c_write(struct synaptics_rmi4_data *rmi4_data,
+               unsigned short addr, unsigned char *data,
+               unsigned short length);
+
+static int synaptics_rmi4_reinit_device(struct synaptics_rmi4_data *rmi4_data);
+static int synaptics_rmi4_reset_device(struct synaptics_rmi4_data *rmi4_data);
+static int synaptics_rmi4_stop_device(struct synaptics_rmi4_data *rmi4_data);
+static int synaptics_rmi4_start_device(struct synaptics_rmi4_data *rmi4_data);
+#ifdef USE_SENSOR_SLEEP
+static void synaptics_rmi4_sensor_sleep(struct synaptics_rmi4_data *rmi4_data);
+static void synaptics_rmi4_sensor_wake(struct synaptics_rmi4_data *rmi4_data);
+#endif
+
+#ifdef CONFIG_PM
+#ifdef CONFIG_HAS_EARLYSUSPEND
+static ssize_t synaptics_rmi4_full_pm_cycle_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_full_pm_cycle_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static void synaptics_rmi4_early_suspend(struct early_suspend *h);
+
+static void synaptics_rmi4_late_resume(struct early_suspend *h);
+
+#else
+
+static int synaptics_rmi4_suspend(struct device *dev);
+
+static int synaptics_rmi4_resume(struct device *dev);
+#endif
+#endif /*CONFIG_PM*/
+
+#ifdef PROXIMITY_MODE
+static void synaptics_rmi4_f51_finger_timer(unsigned long data);
+
+static ssize_t synaptics_rmi4_f51_enables_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_f51_enables_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+#endif
+
+static int synaptics_rmi4_input_open(struct input_dev *dev);
+static void synaptics_rmi4_input_close(struct input_dev *dev);
+
+static ssize_t synaptics_rmi4_f01_reset_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static ssize_t synaptics_rmi4_f01_productinfo_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_f01_buildid_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_f01_flashprog_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_0dbutton_show(struct device *dev,
+               struct device_attribute *attr, char *buf);
+
+static ssize_t synaptics_rmi4_0dbutton_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count);
+
+static struct device_attribute attrs[] = {
+#ifdef CONFIG_HAS_EARLYSUSPEND
+       __ATTR(full_pm_cycle, (S_IRUGO | S_IWUSR | S_IWGRP),
+                       synaptics_rmi4_full_pm_cycle_show,
+                       synaptics_rmi4_full_pm_cycle_store),
+#endif
+#ifdef PROXIMITY_MODE
+       __ATTR(proximity_enables, (S_IRUGO | S_IWUSR | S_IWGRP),
+                       synaptics_rmi4_f51_enables_show,
+                       synaptics_rmi4_f51_enables_store),
+#endif
+       __ATTR(reset, S_IWUSR | S_IWGRP,
+                       synaptics_rmi4_show_error,
+                       synaptics_rmi4_f01_reset_store),
+       __ATTR(productinfo, S_IRUGO,
+                       synaptics_rmi4_f01_productinfo_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(buildid, S_IRUGO,
+                       synaptics_rmi4_f01_buildid_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(flashprog, S_IRUGO,
+                       synaptics_rmi4_f01_flashprog_show,
+                       synaptics_rmi4_store_error),
+       __ATTR(0dbutton, (S_IRUGO | S_IWUSR | S_IWGRP),
+                       synaptics_rmi4_0dbutton_show,
+                       synaptics_rmi4_0dbutton_store),
+};
+
+#ifdef CONFIG_USE_VSYNC_SKIP
+void decon_extra_vsync_wait_set(int);
+#endif /* CONFIG_USE_VSYNC_SKIP */
+
+#ifdef CONFIG_USE_VSYNC_SKIP
+void decon_extra_vsync_wait_set(int);
+#endif /* CONFIG_USE_VSYNC_SKIP */
+
+#ifdef CONFIG_HAS_EARLYSUSPEND
+static ssize_t synaptics_rmi4_full_pm_cycle_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       return snprintf(buf, PAGE_SIZE, "%u\n",
+                       rmi4_data->full_pm_cycle);
+}
+
+static ssize_t synaptics_rmi4_full_pm_cycle_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       rmi4_data->full_pm_cycle = input > 0 ? 1 : 0;
+
+       return count;
+}
+#endif
+
+#ifdef PROXIMITY_MODE
+static ssize_t synaptics_rmi4_f51_enables_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       if (!f51)
+               return -ENODEV;
+
+       return snprintf(buf, PAGE_SIZE, "0x%02x\n",
+                       f51->proximity_enables);
+}
+
+static ssize_t synaptics_rmi4_f51_enables_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       if (!f51)
+               return -ENODEV;
+
+       if (sscanf(buf, "%x", &input) != 1)
+               return -EINVAL;
+
+       f51->proximity_enables = (unsigned char)input;
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       f51->proximity_enables_addr,
+                       &f51->proximity_enables,
+                       sizeof(f51->proximity_enables));
+       if (retval < 0) {
+               tsp_debug_err(true, dev, "%s: Failed to write proximity enables, error = %d\n",
+                               __func__, retval);
+               return retval;
+       }
+
+       return count;
+}
+#endif
+
+static ssize_t synaptics_rmi4_f01_reset_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int reset;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       if (sscanf(buf, "%u", &reset) != 1)
+               return -EINVAL;
+
+       if (reset != 1)
+               return -EINVAL;
+
+       retval = synaptics_rmi4_reset_device(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, dev,
+                               "%s: Failed to issue reset command, error = %d\n",
+                               __func__, retval);
+               return retval;
+       }
+
+       return count;
+}
+
+static ssize_t synaptics_rmi4_f01_productinfo_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       return snprintf(buf, PAGE_SIZE, "0x%02x 0x%02x\n",
+                       (rmi4_data->rmi4_mod_info.product_info[0]),
+                       (rmi4_data->rmi4_mod_info.product_info[1]));
+}
+
+static ssize_t synaptics_rmi4_f01_buildid_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       unsigned int build_id;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       build_id = (unsigned int)rmi->build_id[0] +
+               (unsigned int)rmi->build_id[1] * 0x100 +
+               (unsigned int)rmi->build_id[2] * 0x10000;
+
+       return snprintf(buf, PAGE_SIZE, "%u\n",
+                       build_id);
+}
+
+static ssize_t synaptics_rmi4_f01_flashprog_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       int retval;
+       struct synaptics_rmi4_f01_device_status device_status;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_data_base_addr,
+                       device_status.data,
+                       sizeof(device_status.data));
+       if (retval < 0) {
+               tsp_debug_err(true, dev,
+                               "%s: Failed to read device status, error = %d\n",
+                               __func__, retval);
+               return retval;
+       }
+
+       return snprintf(buf, PAGE_SIZE, "%u\n",
+                       device_status.flash_prog);
+}
+
+static ssize_t synaptics_rmi4_0dbutton_show(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       return snprintf(buf, PAGE_SIZE, "%u\n",
+                       rmi4_data->button_0d_enabled);
+}
+
+static ssize_t synaptics_rmi4_0dbutton_store(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       int retval;
+       unsigned int input;
+       unsigned char ii;
+       unsigned char intr_enable;
+       struct synaptics_rmi4_fn *fhandler;
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       if (sscanf(buf, "%u", &input) != 1)
+               return -EINVAL;
+
+       input = input > 0 ? 1 : 0;
+
+       if (rmi4_data->button_0d_enabled == input)
+               return count;
+
+       if (list_empty(&rmi->support_fn_list))
+               return -ENODEV;
+
+       list_for_each_entry(fhandler, &rmi->support_fn_list, link) {
+               if (fhandler->fn_number == SYNAPTICS_RMI4_F1A) {
+                       ii = fhandler->intr_reg_num;
+
+                       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                                       rmi4_data->f01_ctrl_base_addr + 1 + ii,
+                                       &intr_enable,
+                                       sizeof(intr_enable));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               return retval;
+                       }
+
+                       if (input == 1)
+                               intr_enable |= fhandler->intr_mask;
+                       else
+                               intr_enable &= ~fhandler->intr_mask;
+
+                       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                                       rmi4_data->f01_ctrl_base_addr + 1 + ii,
+                                       &intr_enable,
+                                       sizeof(intr_enable));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               return retval;
+                       }
+               }
+       }
+
+       rmi4_data->button_0d_enabled = input;
+
+       return count;
+}
+
+/**
+ * synaptics_rmi4_set_page()
+ *
+ * Called by synaptics_rmi4_i2c_read() and synaptics_rmi4_i2c_write().
+ *
+ * This function writes to the page select register to switch to the
+ * assigned page.
+ */
+static int synaptics_rmi4_set_page(struct synaptics_rmi4_data *rmi4_data,
+               unsigned int address)
+{
+       int retval = 0;
+       unsigned char retry;
+       unsigned char buf[PAGE_SELECT_LEN];
+       unsigned char page;
+       struct i2c_client *i2c = rmi4_data->i2c_client;
+
+       page = ((address >> 8) & MASK_8BIT);
+       if (page != rmi4_data->current_page) {
+               buf[0] = MASK_8BIT;
+               buf[1] = page;
+               for (retry = 0; retry < SYN_I2C_RETRY_TIMES; retry++) {
+                       retval = i2c_master_send(i2c, buf, PAGE_SELECT_LEN);
+                       if (retval != PAGE_SELECT_LEN) {
+                               if ((rmi4_data->tsp_probe != true) && (retry >= 1)) {
+                                       tsp_debug_err(true, &i2c->dev, "%s: TSP needs to reboot\n", __func__);
+                                       retval = TSP_NEEDTO_REBOOT;
+                                       return retval;
+                               }
+                               tsp_debug_err(true, &i2c->dev, "%s: I2C retry = %d, i2c_master_send retval = %d\n",
+                                               __func__, retry + 1, retval);
+                               if (retval == 0)
+                                       retval = -EAGAIN;
+                               msleep(20);
+                       } else {
+                               rmi4_data->current_page = page;
+                               break;
+                       }
+               }
+       } else {
+               retval = PAGE_SELECT_LEN;
+       }
+
+       return retval;
+}
+
+/**
+ * synaptics_rmi4_i2c_read()
+ *
+ * Called by various functions in this driver, and also exported to
+ * other expansion Function modules such as rmi_dev.
+ *
+ * This function reads data of an arbitrary length from the sensor,
+ * starting from an assigned register address of the sensor, via I2C
+ * with a retry mechanism.
+ */
+static int synaptics_rmi4_i2c_read(struct synaptics_rmi4_data *rmi4_data,
+               unsigned short addr, unsigned char *data, unsigned short length)
+{
+       int retval;
+       unsigned char retry;
+       unsigned char buf;
+       struct i2c_msg msg[] = {
+               {
+                       .addr = rmi4_data->i2c_client->addr,
+                       .flags = 0,
+                       .len = 1,
+                       .buf = &buf,
+               },
+               {
+                       .addr = rmi4_data->i2c_client->addr,
+                       .flags = I2C_M_RD,
+                       .len = length,
+                       .buf = data,
+               },
+       };
+
+       buf = addr & MASK_8BIT;
+
+       mutex_lock(&(rmi4_data->rmi4_io_ctrl_mutex));
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Sensor stopped\n",
+                               __func__);
+               retval = 0;
+               goto exit;
+       }
+
+       retval = synaptics_rmi4_set_page(rmi4_data, addr);
+       if (retval != PAGE_SELECT_LEN) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set page. error = %d\n",
+                               __func__, retval);
+               goto exit;
+       }
+
+       for (retry = 0; retry < SYN_I2C_RETRY_TIMES; retry++) {
+               if (i2c_transfer(rmi4_data->i2c_client->adapter, msg, 2) == 2) {
+                       retval = length;
+                       break;
+               }
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: I2C retry %d\n",
+                               __func__, retry + 1);
+               msleep(20);
+       }
+
+       if (retry == SYN_I2C_RETRY_TIMES) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: I2C read over retry limit\n",
+                               __func__);
+               retval = -EIO;
+       }
+
+exit:
+       mutex_unlock(&(rmi4_data->rmi4_io_ctrl_mutex));
+
+       return retval;
+}
+
+static void late_enable_irq(struct work_struct *work)
+{
+       struct delayed_work *delayed_work = to_delayed_work(work);
+       struct synaptics_rmi4_data *data = container_of(delayed_work,
+                       struct synaptics_rmi4_data, work_init_irq);
+       int retval;
+
+       dev_info(&data->i2c_client->dev, "%s: irq_enable called\n", __func__);
+       if (unlikely((data == NULL)))
+               return;
+
+       if (data->touch_stopped) {
+               dev_err(&data->i2c_client->dev, "Enable IRQ when S/W touch stopped\n");
+               retval = synaptics_rmi4_start_device(data);
+               if (retval < 0) {
+                       tsp_debug_err(true, &data->i2c_client->dev,
+                                       "%s: Failed to start device\n", __func__);
+                       return;
+               }
+       }
+
+       retval = synaptics_rmi4_irq_enable(data, true);
+       if (retval < 0) {
+               tsp_debug_err(true, &data->i2c_client->dev, "%s: Failed to enable attention interrupt\n",
+                               __func__);
+
+               synaptics_rmi4_remove_exp_fn(data);
+               return;
+       }
+
+}
+
+/**
+ * synaptics_rmi4_i2c_write()
+ *
+ * Called by various functions in this driver, and also exported to
+ * other expansion Function modules such as rmi_dev.
+ *
+ * This function writes data of an arbitrary length to the sensor,
+ * starting from an assigned register address of the sensor, via I2C with
+ * a retry mechanism.
+ */
+static int synaptics_rmi4_i2c_write(struct synaptics_rmi4_data *rmi4_data,
+               unsigned short addr, unsigned char *data, unsigned short length)
+{
+       int retval;
+       unsigned char retry;
+       unsigned char buf[length + 1];
+       struct i2c_msg msg[] = {
+               {
+                       .addr = rmi4_data->i2c_client->addr,
+                       .flags = 0,
+                       .len = length + 1,
+                       .buf = buf,
+               }
+       };
+
+       mutex_lock(&(rmi4_data->rmi4_io_ctrl_mutex));
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Sensor stopped\n",
+                               __func__);
+               retval = 0;
+               goto exit;
+       }
+
+       retval = synaptics_rmi4_set_page(rmi4_data, addr);
+       if (retval != PAGE_SELECT_LEN) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set page. error = %d\n",
+                               __func__, retval);
+               goto exit;
+       }
+       buf[0] = addr & MASK_8BIT;
+       memcpy(&buf[1], &data[0], length);
+
+       for (retry = 0; retry < SYN_I2C_RETRY_TIMES; retry++) {
+               if (i2c_transfer(rmi4_data->i2c_client->adapter, msg, 1) == 1) {
+                       retval = length;
+                       break;
+               }
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: I2C retry %d\n",
+                               __func__, retry + 1);
+               msleep(20);
+       }
+
+       if (retry == SYN_I2C_RETRY_TIMES) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: I2C write over retry limit\n",
+                               __func__);
+               retval = -EIO;
+       }
+
+exit:
+       mutex_unlock(&(rmi4_data->rmi4_io_ctrl_mutex));
+
+       return retval;
+}
+
+
+/* Below function acess the register manually. so please keep caution when use this.
+ * I do not recommend to use this function except special case....
+ * mode[0 / 1] 0: read, 1: write
+ */
+int synaptics_rmi4_access_register(struct synaptics_rmi4_data *rmi4_data,
+                               bool mode, unsigned short address, int length, unsigned char *value)
+{
+       int retval = 0, ii = 0;
+       unsigned char data[10] = {0, };
+       char temp[70] = {0, };
+       char t_temp[7] = {0, };
+
+       if (mode == SYNAPTICS_ACCESS_WRITE) {
+               retval = synaptics_rmi4_i2c_write(rmi4_data,
+                               address, value, length);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to write 0x%X ~ %d byte\n",
+                               __func__, address, length);
+                       goto out;
+               }
+
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               address, data, length);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read 0x%04X\n",
+                                       __func__, address);
+                       goto out;
+               }
+               snprintf(temp, 1, ":");
+               while (ii < length) {
+                       snprintf(t_temp, 7, "0x%X, ", data[ii]);
+                       strcat(temp, t_temp);
+                       ii++;
+               }
+       } else {
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               address, data, length);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read 0x%04X\n",
+                               __func__, address);
+                       goto out;
+               }
+               memcpy(value, data, length);
+
+               snprintf(temp, 1, ":");
+               while (ii < length) {
+                       snprintf(t_temp, 7, "0x%X, ", data[ii]);
+                       strcat(temp, t_temp);
+                       ii++;
+               }
+       }
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [%c]0x%04X, length:%d, data: %s\n",
+               __func__, mode ? 'W' : 'R', address, length, temp);
+
+out:
+       return retval;
+}
+
+static void synaptics_rmi4_release_all_finger(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char ii;
+
+       if (!rmi4_data->tsp_probe || !rmi4_data->f51) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: it is not probed or f51 is null.\n",
+                               __func__);
+               return;
+       }
+
+       for (ii = 0; ii < rmi4_data->num_of_fingers; ii++) {
+               input_mt_slot(rmi4_data->input_dev, ii);
+               if (rmi4_data->finger[ii].state) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "[%d][RA] 0x%02x M[%d], Ver[%02X%02X, 0x%02X, 0x%02X/0x%02X/0x%02X]\n",
+                               ii, rmi4_data->finger[ii].state, rmi4_data->finger[ii].mcount,
+                               rmi4_data->ic_revision_of_ic, rmi4_data->fw_version_of_ic, rmi4_data->f12.feature_enable,
+#ifdef PROXIMITY_MODE
+                               rmi4_data->f51->proximity_enables, rmi4_data->f51->general_control, rmi4_data->f51->general_control_2);
+#else
+                               0, 0, 0);
+#endif
+#ifdef EDGE_SWIPE
+                       input_report_abs(rmi4_data->input_dev,
+                                               ABS_MT_PALM, 0);
+#endif
+               }
+               input_mt_report_slot_state(rmi4_data->input_dev, MT_TOOL_FINGER, 0);
+
+               rmi4_data->finger[ii].state = 0;
+               rmi4_data->finger[ii].mcount = 0;
+#ifdef USE_STYLUS
+               rmi4_data->finger[ii].stylus = false;
+#endif
+       }
+
+       input_report_key(rmi4_data->input_dev,
+                       BTN_TOUCH, 0);
+       input_report_key(rmi4_data->input_dev,
+                       BTN_TOOL_FINGER, 0);
+#ifdef GLOVE_MODE
+       input_report_switch(rmi4_data->input_dev,
+                       SW_GLOVE, false);
+       rmi4_data->touchkey_glove_mode_status = false;
+#endif
+#ifdef TSP_BOOSTER
+       INPUT_BOOSTER_SEND_EVENT(KEY_BOOSTER_TOUCH, BOOSTER_MODE_FORCE_OFF);
+#endif
+       input_sync(rmi4_data->input_dev);
+
+       rmi4_data->fingers_on_2d = false;
+#ifdef PROXIMITY_MODE
+       rmi4_data->f51_finger = false;
+#endif
+#ifdef EDGE_SWIPE
+       if (rmi4_data->f51->edge_swipe_data.palm)
+               rmi4_data->f51->edge_swipe_data.palm = 0;
+#endif
+
+#ifdef USE_CUSTOM_REZERO
+       cancel_delayed_work(&rmi4_data->rezero_work);
+#endif
+}
+
+#ifdef SIDE_TOUCH
+static void synaptics_rmi4_release_sidekey(struct synaptics_rmi4_data *rmi4_data)
+{
+       unsigned char ii;
+
+       for (ii = 0; ii < MAX_SIDE_BUTTONS; ii++) {
+               if (rmi4_data->sidekey_data & (1 << ii)) {
+                       input_report_key(rmi4_data->input_dev, KEY_SIDE_TOUCH_0 + ii, 0);
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "SIDE_KEY[%d][RA]\n", ii);
+               }
+       }
+       rmi4_data->sidekey_data = 0;
+
+       input_sync(rmi4_data->input_dev);
+}
+#endif
+
+void synpatics_rmi4_release_all_event(struct synaptics_rmi4_data *rmi4_data, unsigned char type)
+{
+       if (type & RELEASE_TYPE_FINGER)
+               synaptics_rmi4_release_all_finger(rmi4_data);
+#ifdef SIDE_TOUCH
+       if (type & RELEASE_TYPE_SIDEKEY)
+               synaptics_rmi4_release_sidekey(rmi4_data);
+#endif
+}
+
+/**
+ * synaptics_rmi4_f11_abs_report()
+ *
+ * Called by synaptics_rmi4_report_touch() when valid Function $11
+ * finger data has been detected.
+ *
+ * This function reads the Function $11 data registers, determines the
+ * status of each finger supported by the Function, processes any
+ * necessary coordinate manipulation, reports the finger data to
+ * the input subsystem, and returns the number of fingers detected.
+ */
+static int synaptics_rmi4_f11_abs_report(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       unsigned char touch_count = 0; /* number of touch points */
+       unsigned char reg_index;
+       unsigned char finger;
+       unsigned char fingers_supported;
+       unsigned char num_of_finger_status_regs;
+       unsigned char finger_shift;
+       unsigned char finger_status;
+       unsigned char data_reg_blk_size;
+       unsigned char finger_status_reg[3];
+       unsigned char data[F11_STD_DATA_LEN];
+       unsigned short data_addr;
+       unsigned short data_offset;
+       int x;
+       int y;
+       int wx;
+       int wy;
+
+       /*
+        * The number of finger status registers is determined by the
+        * maximum number of fingers supported - 2 bits per finger. So
+        * the number of finger status registers to read is:
+        * register_count = ceil(max_num_of_fingers / 4)
+        */
+       fingers_supported = fhandler->num_of_data_points;
+       num_of_finger_status_regs = (fingers_supported + 3) / 4;
+       data_addr = fhandler->full_addr.data_base;
+       data_reg_blk_size = fhandler->size_of_data_register_block;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       data_addr,
+                       finger_status_reg,
+                       num_of_finger_status_regs);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return 0;
+       }
+
+       for (finger = 0; finger < fingers_supported; finger++) {
+               reg_index = finger / 4;
+               finger_shift = (finger % 4) * 2;
+               finger_status = (finger_status_reg[reg_index] >> finger_shift)
+                       & MASK_2BIT;
+
+               /*
+                * Each 2-bit finger status field represents the following:
+                * 00 = finger not present
+                * 01 = finger present and data accurate
+                * 10 = finger present but data may be inaccurate
+                * 11 = reserved
+                */
+               input_mt_slot(rmi4_data->input_dev, finger);
+               input_mt_report_slot_state(rmi4_data->input_dev,
+                               MT_TOOL_FINGER, finger_status ? true : false);
+
+               if (finger_status) {
+                       data_offset = data_addr +
+                               num_of_finger_status_regs +
+                               (finger * data_reg_blk_size);
+                       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                                       data_offset,
+                                       data,
+                                       data_reg_blk_size);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               return 0;
+                       }
+
+                       x = (data[0] << 4) | (data[2] & MASK_4BIT);
+                       y = (data[1] << 4) | ((data[2] >> 4) & MASK_4BIT);
+                       wx = (data[3] & MASK_4BIT);
+                       wy = (data[3] >> 4) & MASK_4BIT;
+
+                       if (rmi4_data->board->x_flip)
+                               x = rmi4_data->sensor_max_x - x;
+                       if (rmi4_data->board->y_flip)
+                               y = rmi4_data->sensor_max_y - y;
+
+                       input_report_key(rmi4_data->input_dev,
+                                       BTN_TOUCH, 1);
+                       input_report_key(rmi4_data->input_dev,
+                                       BTN_TOOL_FINGER, 1);
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_POSITION_X, x);
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_POSITION_Y, y);
+#ifdef REPORT_2D_W
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_TOUCH_MAJOR, max(wx, wy));
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_TOUCH_MINOR, min(wx, wy));
+#endif
+
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                                       "%s: Finger %d:\n"
+                                       "status = 0x%02x\n"
+                                       "x = %d\n"
+                                       "y = %d\n"
+                                       "wx = %d\n"
+                                       "wy = %d\n",
+                                       __func__, finger,
+                                       finger_status,
+                                       x, y, wx, wy);
+
+                       touch_count++;
+               }
+       }
+       input_sync(rmi4_data->input_dev);
+
+       return touch_count;
+}
+
+/**
+ * synaptics_rmi4_f12_abs_report()
+ *
+ * Called by synaptics_rmi4_report_touch() when valid Function $12
+ * finger data has been detected.
+ *
+ * This function reads the Function $12 data registers, determines the
+ * status of each finger supported by the Function, processes any
+ * necessary coordinate manipulation, reports the finger data to
+ * the input subsystem, and returns the number of fingers detected.
+ */
+static int synaptics_rmi4_f12_abs_report(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       unsigned char touch_count = 0;
+       unsigned char finger;
+       unsigned char fingers_to_process;
+       unsigned char finger_status;
+       unsigned char size_of_2d_data;
+       unsigned short data_addr;
+       int x;
+       int y;
+       int wx;
+       int wy;
+       struct synaptics_rmi4_f12_extra_data *extra_data;
+       struct synaptics_rmi4_f12_finger_data *data;
+       struct synaptics_rmi4_f12_finger_data *finger_data;
+       bool new_finger_pressed = false;
+       static unsigned char fingers_already_present;
+#ifdef EDGE_SWIPE
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+#endif
+       unsigned char tool_type = MT_TOOL_FINGER;
+
+       fingers_to_process = fhandler->num_of_data_points;
+       data_addr = fhandler->full_addr.data_base;
+       extra_data = (struct synaptics_rmi4_f12_extra_data *)fhandler->extra;
+       size_of_2d_data = sizeof(struct synaptics_rmi4_f12_finger_data);
+
+       /* Determine the total number of fingers to process */
+       if (extra_data->data15_size) {
+               unsigned short object_attention = 0;
+
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               data_addr + extra_data->data15_offset,
+                               extra_data->data15_data,
+                               extra_data->data15_size);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                               __func__, __LINE__, retval);
+                       return 0;
+               }
+
+               /* Object_attention : [000000xx xxxxxxxxx] : "x" represent that finger is on or not
+                * Get the highest finger number to read finger data efficently.
+                */
+               object_attention = extra_data->data15_data[0];
+               if (extra_data->data15_size > 1)
+                       object_attention |= (extra_data->data15_data[1] & MASK_3BIT) << 8;
+
+               for (; fingers_to_process > 0; fingers_to_process--) {
+                       if (object_attention & (1 << (fingers_to_process - 1)))
+                               break;
+               }
+
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "fingers[%d, %d] object_attention[0x%02x]\n",
+                       fingers_to_process, fingers_already_present, object_attention);
+       }
+
+       fingers_to_process = max(fingers_to_process, fingers_already_present);
+
+       if (!fingers_to_process) {
+               synaptics_rmi4_release_all_finger(rmi4_data);
+               return 0;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       data_addr + extra_data->data1_offset,
+                       (unsigned char *)fhandler->data,
+                       fingers_to_process * size_of_2d_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return 0;
+       }
+       data = (struct synaptics_rmi4_f12_finger_data *)fhandler->data;
+
+       for (finger = 0; finger < fingers_to_process; finger++) {
+               finger_data = data + finger;
+               finger_status = (finger_data->object_type_and_status & MASK_3BIT);
+               x = (finger_data->x_msb << 8) | (finger_data->x_lsb);
+               y = (finger_data->y_msb << 8) | (finger_data->y_lsb);
+               if ((x == INVALID_X) && (y == INVALID_Y))
+                       finger_status = OBJECT_NOT_PRESENT;
+
+#ifdef USE_STYLUS
+               tool_type = MT_TOOL_FINGER;
+               rmi4_data->finger[finger].stylus = false;
+
+               if (finger_status == OBJECT_PASSIVE_STYLUS && rmi4_data->use_stylus) {
+                       tool_type = MT_TOOL_PEN;
+                       rmi4_data->finger[finger].stylus = true;
+               }
+#endif
+               input_mt_slot(rmi4_data->input_dev, finger);
+               input_mt_report_slot_state(rmi4_data->input_dev, tool_type, finger_status ? true : false);
+
+               if (finger_status != OBJECT_NOT_PRESENT) {
+                       fingers_already_present = finger + 1;
+#ifdef GLOVE_MODE
+                       if ((finger_status == OBJECT_GLOVE || finger_status == OBJECT_PASSIVE_STYLUS)
+                                       && !rmi4_data->touchkey_glove_mode_status) {
+                               rmi4_data->touchkey_glove_mode_status = true;
+                               input_report_switch(rmi4_data->input_dev, SW_GLOVE, true);
+                       }
+                       if ((finger_status != OBJECT_GLOVE && finger_status != OBJECT_PASSIVE_STYLUS)
+                                       && rmi4_data->touchkey_glove_mode_status) {
+                               rmi4_data->touchkey_glove_mode_status = false;
+                               input_report_switch(rmi4_data->input_dev, SW_GLOVE, false);
+                       }
+#endif
+#ifdef REPORT_2D_W
+                       wx = finger_data->wx;
+                       wy = finger_data->wy;
+#endif
+#ifdef EDGE_SWIPE
+                       if (f51) {
+#if !defined(CONFIG_SEC_FACTORY)
+                               if (f51->proximity_controls & HAS_EDGE_SWIPE) {
+                                       if (finger_status == OBJECT_PALM) {
+                                               wx = f51->edge_swipe_data.wx;
+                                               wy = f51->edge_swipe_data.wy;
+                                       }
+                                       input_report_abs(rmi4_data->input_dev,
+                                                       ABS_MT_SUMSIZE, f51->edge_swipe_data.sumsize);
+                                       input_report_abs(rmi4_data->input_dev,
+                                                       ABS_MT_PALM, f51->edge_swipe_data.palm);
+                               }
+#endif
+                       }
+#endif
+                       if (rmi4_data->board->x_flip)
+                               x = rmi4_data->sensor_max_x - x;
+                       if (rmi4_data->board->y_flip)
+                               y = rmi4_data->sensor_max_y - y;
+
+                       input_report_key(rmi4_data->input_dev,
+                                       BTN_TOUCH, 1);
+                       input_report_key(rmi4_data->input_dev,
+                                       BTN_TOOL_FINGER, 1);
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_POSITION_X, x);
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_POSITION_Y, y);
+#ifdef REPORT_2D_W
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_TOUCH_MAJOR, max(wx, wy));
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_TOUCH_MINOR, min(wx, wy));
+#ifdef REPORT_ORIENTATION
+                       input_report_abs(rmi4_data->input_dev,
+                                       ABS_MT_ORIENTATION, (wx > wy) ? 1 : 0);
+#endif
+#endif
+                       if (rmi4_data->finger[finger].state) {
+                               rmi4_data->finger[finger].mcount++;
+                               if (rmi4_data->finger[finger].state != finger_status)
+                                       tsp_debug_dbg(true, &rmi4_data->i2c_client->dev, "[%d][C] 0x%02x T[%d/%u] M[%d]"
+#if !defined(CONFIG_SAMSUNG_PRODUCT_SHIP)
+                                       ", x = %d, y = %d, wx = %d, wy = %d\n", finger, finger_status, tool_type,
+                                       rmi4_data->use_stylus, rmi4_data->finger[finger].mcount, x, y, wx, wy);
+#else
+                                       "\n", finger, finger_status, tool_type, rmi4_data->use_stylus,
+                                       rmi4_data->finger[finger].mcount);
+#endif
+                       } else {
+                               new_finger_pressed = true;
+                               tsp_debug_dbg(true, &rmi4_data->i2c_client->dev, "[%d][P] 0x%02x T[%d/%u]"
+#if !defined(CONFIG_SAMSUNG_PRODUCT_SHIP)
+                                       ", x = %d, y = %d, wx = %d, wy = %d\n", finger, finger_status, tool_type,
+                                       rmi4_data->use_stylus, x, y, wx, wy);
+#else
+                                       "\n", finger, finger_status, tool_type, rmi4_data->use_stylus);
+#endif
+                       }
+                       touch_count++;
+
+               } else {
+                       if (rmi4_data->finger[finger].state) {
+                               tsp_debug_dbg(true, &rmi4_data->i2c_client->dev,
+                                       "[%d][R] 0x%02x M[%d], Ver[%02X%02X, 0x%02X, 0x%02X/0x%02X/0x%02X]\n",
+                                       finger, finger_status, rmi4_data->finger[finger].mcount,
+                                       rmi4_data->ic_revision_of_ic, rmi4_data->fw_version_of_ic, rmi4_data->f12.feature_enable,
+#ifdef PROXIMITY_MODE
+                                       rmi4_data->f51->proximity_enables, rmi4_data->f51->general_control, rmi4_data->f51->general_control_2);
+#else
+                                       0, 0, 0);
+#endif
+
+                               rmi4_data->finger[finger].mcount = 0;
+                       }
+               }
+
+               rmi4_data->finger[finger].state = finger_status;
+       }
+
+       /* Clear BTN_TOUCH when All touch are released  */
+       if (touch_count == 0) {
+               input_report_key(rmi4_data->input_dev, BTN_TOUCH, 0);
+               fingers_already_present = 0;
+       }
+
+#ifdef CONFIG_USE_VSYNC_SKIP
+       decon_extra_vsync_wait_set(ERANGE);
+#endif /* CONFIG_USE_VSYNC_SKIP */
+
+#ifdef CONFIG_USE_VSYNC_SKIP
+       decon_extra_vsync_wait_set(ERANGE);
+#endif /* CONFIG_USE_VSYNC_SKIP */
+
+       input_sync(rmi4_data->input_dev);
+
+#ifdef TSP_BOOSTER
+       if (new_finger_pressed)
+               INPUT_BOOSTER_SEND_EVENT(KEY_BOOSTER_TOUCH, BOOSTER_MODE_ON);
+       if (!touch_count)
+               INPUT_BOOSTER_SEND_EVENT(KEY_BOOSTER_TOUCH, BOOSTER_MODE_OFF);
+#endif
+       return touch_count;
+}
+
+static void synaptics_rmi4_f1a_report(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       unsigned char touch_count = 0;
+       unsigned char button;
+       unsigned char index;
+       unsigned char shift;
+       unsigned char status;
+       unsigned char *data;
+       unsigned short data_addr = fhandler->full_addr.data_base;
+       struct synaptics_rmi4_f1a_handle *f1a = fhandler->data;
+       static unsigned char do_once = 1;
+       static bool current_status[MAX_NUMBER_OF_BUTTONS];
+#ifdef NO_0D_WHILE_2D
+       static bool before_2d_status[MAX_NUMBER_OF_BUTTONS];
+       static bool while_2d_status[MAX_NUMBER_OF_BUTTONS];
+#endif
+
+       if (do_once) {
+               memset(current_status, 0, sizeof(current_status));
+#ifdef NO_0D_WHILE_2D
+               memset(before_2d_status, 0, sizeof(before_2d_status));
+               memset(while_2d_status, 0, sizeof(while_2d_status));
+#endif
+               do_once = 0;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       data_addr,
+                       f1a->button_data_buffer,
+                       f1a->button_bitmask_size);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read button data registers\n",
+                               __func__);
+               return;
+       }
+
+       data = f1a->button_data_buffer;
+
+       for (button = 0; button < f1a->valid_button_count; button++) {
+               index = button / 8;
+               shift = button % 8;
+               status = ((data[index] >> shift) & MASK_1BIT);
+
+               if (current_status[button] == status)
+                       continue;
+               else
+                       current_status[button] = status;
+
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Button %d (code %d) ->%d\n",
+                               __func__, button,
+                               f1a->button_map[button],
+                               status);
+#ifdef NO_0D_WHILE_2D
+               if (rmi4_data->fingers_on_2d == false) {
+                       if (status == 1) {
+                               before_2d_status[button] = 1;
+                       } else {
+                               if (while_2d_status[button] == 1) {
+                                       while_2d_status[button] = 0;
+                                       continue;
+                               } else {
+                                       before_2d_status[button] = 0;
+                               }
+                       }
+                       touch_count++;
+                       input_report_key(rmi4_data->input_dev,
+                                       f1a->button_map[button],
+                                       status);
+               } else {
+                       if (before_2d_status[button] == 1) {
+                               before_2d_status[button] = 0;
+                               touch_count++;
+                               input_report_key(rmi4_data->input_dev,
+                                               f1a->button_map[button],
+                                               status);
+                       } else {
+                               if (status == 1)
+                                       while_2d_status[button] = 1;
+                               else
+                                       while_2d_status[button] = 0;
+                       }
+               }
+#else
+               touch_count++;
+               input_report_key(rmi4_data->input_dev,
+                               f1a->button_map[button],
+                               status);
+#endif
+       }
+
+       if (touch_count)
+               input_sync(rmi4_data->input_dev);
+
+       return;
+}
+
+#ifdef PROXIMITY_MODE
+#ifdef EDGE_SWIPE
+static int synaptics_rmi4_f51_edge_swipe(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval = 0;
+       struct synaptics_rmi4_f51_data *data;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       if (!(f51->general_control & EDGE_SWIPE_EN)) {
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s : Edge swipe report is disabled. General control[0x%02x]\n",
+                       __func__, f51->general_control);
+               goto out;
+       }
+
+       data = (struct synaptics_rmi4_f51_data *)fhandler->data;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       f51->edge_swipe_data_addr,
+                       data->edge_swipe_data,
+                       sizeof(data->edge_swipe_data));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               goto out;
+       }
+
+       f51->edge_swipe_data.sumsize = data->edge_swipe_mm;
+       f51->edge_swipe_data.wx = data->edge_swipe_wx;
+       f51->edge_swipe_data.wy = data->edge_swipe_wy;
+       f51->edge_swipe_data.palm = data->edge_swipe_z;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+               "%s: edge_data : x[%d], y[%d], z[%d] ,wx[%d], wy[%d], area[%d]\n", __func__,
+               data->edge_swipe_x_msb << 8 | data->edge_swipe_x_lsb,
+               data->edge_swipe_y_msb << 8 | data->edge_swipe_y_lsb,
+               data->edge_swipe_z, data->edge_swipe_wx, data->edge_swipe_wy,
+               data->edge_swipe_mm);
+
+out:
+       return retval;
+}
+#endif
+
+#ifdef SIDE_TOUCH
+#define SIDE_TOUCH_TRAILING    (0)
+#define SIDE_TOUCH_LEADING     (1)
+#define SIDE_TOUCH_UNCLASSIFIED        (-1)
+
+static int synaptics_rmi4_f51_side_btns(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       unsigned char touch_count = 0;
+       unsigned char button;
+       int retval = 0;
+       int status = SIDE_TOUCH_UNCLASSIFIED;
+
+       struct synaptics_rmi4_f51_data *data;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       if (!(f51->general_control_2 & SIDE_BUTTONS_EN))
+               goto out;
+
+       data = (struct synaptics_rmi4_f51_data *)fhandler->data;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       f51->side_button_data_addr,
+                       data->side_button_data,
+                       sizeof(data->side_button_data));
+       if (retval < 0)
+               goto out;
+
+       if (!data->side_button_data[0] && !data->side_button_data[1])
+               goto out;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: data : 0x%02X, 0x%02X\n",
+                       __func__, data->side_button_data[0], data->side_button_data[1]);
+
+       for (button = 0; button < MAX_SIDE_BUTTONS; button++) {
+               status = SIDE_TOUCH_UNCLASSIFIED;
+
+               if (data->side_button_leading & (1 << button)) {
+                       status = SIDE_TOUCH_LEADING;
+                       rmi4_data->sidekey_data |= (1 << button);
+               }
+               if (data->side_button_trailing & (1 << button)) {
+                       status = SIDE_TOUCH_TRAILING;
+                       rmi4_data->sidekey_data &= ~(1 << button);
+               }
+
+               if (status != SIDE_TOUCH_UNCLASSIFIED) {
+                       touch_count++;
+
+                       input_report_key(rmi4_data->input_dev,
+                                               KEY_SIDE_TOUCH_0 + button, status);
+
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "SIDE_KEY[%d][%c] [0x%02x]\n",
+                               button, status ? 'P' : 'R', rmi4_data->sidekey_data);
+               }
+       }
+
+       if (touch_count)
+               input_sync(rmi4_data->input_dev);
+
+out:
+       return retval;
+}
+#endif
+
+static int synaptics_rmi4_f51_lookup_detection_flag_2(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       unsigned char detection_flag_2 = HAS_HAND_EDGE_SWIPE_DATA | SIDE_BUTTON_DETECTED;
+       int retval = 0;
+
+#ifdef USE_DETECTION_FLAG_2
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f51->detection_flag_2_addr,
+                       &detection_flag_2,
+                       sizeof(detection_flag_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to read detection flag 2 registers\n", __func__);
+               goto out;
+       }
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+               "%s: [0x%02X]\n",  __func__, detection_flag_2);
+#endif
+#ifdef EDGE_SWIPE
+       if (detection_flag_2 & HAS_HAND_EDGE_SWIPE_DATA) {
+               retval = synaptics_rmi4_f51_edge_swipe(rmi4_data, fhandler);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read edge swipe data\n",
+                                       __func__);
+                       goto out;
+               }
+       } else {
+               if (rmi4_data->f51->edge_swipe_data.palm)
+                       rmi4_data->f51->edge_swipe_data.palm = 0;
+
+               /* Read always dataes of width x/y and square data */
+               if (rmi4_data->f51->general_control & EDGE_SWIPE_EN
+                               && rmi4_data->fingers_on_2d) {
+                       unsigned char edge_swipe_data[3] = {0,};
+
+                       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                                       rmi4_data->f51->edge_swipe_data_addr + EDGE_SWIPE_WITDH_X_OFFSET,
+                                       edge_swipe_data, sizeof(edge_swipe_data));
+
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read edge swipe area. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               goto out;
+                       }
+                       rmi4_data->f51->edge_swipe_data.wx = edge_swipe_data[0];
+                       rmi4_data->f51->edge_swipe_data.wy = edge_swipe_data[1];
+                       rmi4_data->f51->edge_swipe_data.sumsize = edge_swipe_data[2];
+               } else {
+                       memset(&rmi4_data->f51->edge_swipe_data, 0, sizeof(struct synaptics_rmi4_edge_swipe));
+               }
+       }
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+               "%s: edge_swipe_detected : sumsize[%d], palm[%d], wx[%d] ,wy[%d]\n",
+                __func__, rmi4_data->f51->edge_swipe_data.sumsize,
+               rmi4_data->f51->edge_swipe_data.palm, rmi4_data->f51->edge_swipe_data.wx,
+               rmi4_data->f51->edge_swipe_data.wy);
+#endif
+#ifdef SIDE_TOUCH
+       if (detection_flag_2 & SIDE_BUTTON_DETECTED) {
+               retval = synaptics_rmi4_f51_side_btns(rmi4_data, fhandler);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read side button data\n",
+                                       __func__);
+                       goto out;
+               }
+       }
+#endif
+
+out:
+       return retval;
+}
+
+static int synaptics_rmi4_f51_lookup_detection_flag(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       unsigned short data_base_addr;
+       struct synaptics_rmi4_f51_data *data;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       int x, y, z;
+       int retval = 0;
+
+       data_base_addr = fhandler->full_addr.data_base;
+       data = (struct synaptics_rmi4_f51_data *)fhandler->data;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       data_base_addr,
+                       data->proximity_data,
+                       sizeof(data->proximity_data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read proximity data registers\n",
+                               __func__);
+               goto out;
+       }
+
+       if (data->proximity_data[0] == 0x00) {
+#ifdef DEBUG_HOVER
+               if (f51->finger_is_hover) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "Hover[OUT]\n");
+                       f51->finger_is_hover = false;
+               }
+#endif
+               goto out;
+       }
+
+       if (data->finger_hover_det && (data->hover_finger_z > 0)) {
+               x = (data->hover_finger_x_4__11 << 4) |
+                       (data->hover_finger_xy_0__3 & 0x0f);
+               y = (data->hover_finger_y_4__11 << 4) |
+                       (data->hover_finger_xy_0__3 >> 4);
+               z = HOVER_Z_MAX - data->hover_finger_z;
+
+               input_mt_slot(rmi4_data->input_dev, 0);
+               input_mt_report_slot_state(rmi4_data->input_dev,
+                               MT_TOOL_FINGER, 1);
+
+               input_report_key(rmi4_data->input_dev,
+                               BTN_TOUCH, 0);
+               input_report_key(rmi4_data->input_dev,
+                               BTN_TOOL_FINGER, 1);
+               input_report_abs(rmi4_data->input_dev,
+                               ABS_MT_POSITION_X, x);
+               input_report_abs(rmi4_data->input_dev,
+                               ABS_MT_POSITION_Y, y);
+               input_report_abs(rmi4_data->input_dev,
+                               ABS_MT_DISTANCE, z);
+
+               input_sync(rmi4_data->input_dev);
+
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Hover finger:\n"
+                               "x = %d\n"
+                               "y = %d\n"
+                               "z = %d\n",
+                               __func__, x, y, z);
+
+#ifdef DEBUG_HOVER
+               if (!f51->finger_is_hover) {
+                       f51->finger_is_hover = true;
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "Hover[IN]"
+#if !defined(CONFIG_SAMSUNG_PRODUCT_SHIP)
+                               " x = %d, y = %d, z = %d\n", x, y, z);
+#else
+                               "\n");
+#endif
+               }
+#endif
+               rmi4_data->f51_finger = true;
+               rmi4_data->fingers_on_2d = false;
+               synaptics_rmi4_f51_finger_timer((unsigned long)rmi4_data);
+       }
+
+       if (data->air_swipe_det)
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Air swipe detect\n", __func__);
+
+       if (data->large_obj_det)
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Large object detect\n", __func__);
+
+       if (data->hover_pinch_det)
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                               "%s: Hover pinch direction\n",
+                               __func__);
+
+out:
+       return retval;
+}
+
+static void synaptics_rmi4_f51_report(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       retval = synaptics_rmi4_f51_lookup_detection_flag(rmi4_data, fhandler);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to treat proximity data\n",
+                               __func__);
+               return;
+       }
+
+       if (f51->proximity_controls & HAS_EDGE_SWIPE
+                       || f51->proximity_controls_2 & HAS_SIDE_BUTTONS) {
+               retval = synaptics_rmi4_f51_lookup_detection_flag_2(rmi4_data, fhandler);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to treat proximity data\n",
+                                       __func__);
+                       return;
+               }
+       }
+
+       return;
+}
+#endif
+
+/**
+ * synaptics_rmi4_report_touch()
+ *
+ * Called by synaptics_rmi4_sensor_report().
+ *
+ * This function calls the appropriate finger data reporting function
+ * based on the function handler it receives and returns the number of
+ * fingers detected.
+ */
+static void synaptics_rmi4_report_touch(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       unsigned char touch_count_2d;
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Function %02x reporting\n",
+                       __func__, fhandler->fn_number);
+
+       switch (fhandler->fn_number) {
+       case SYNAPTICS_RMI4_F11:
+               touch_count_2d = synaptics_rmi4_f11_abs_report(rmi4_data,
+                               fhandler);
+               if (touch_count_2d)
+                       rmi4_data->fingers_on_2d = true;
+               else
+                       rmi4_data->fingers_on_2d = false;
+               break;
+       case SYNAPTICS_RMI4_F12:
+               touch_count_2d = synaptics_rmi4_f12_abs_report(rmi4_data,
+                               fhandler);
+               if (touch_count_2d)
+                       rmi4_data->fingers_on_2d = true;
+               else
+                       rmi4_data->fingers_on_2d = false;
+               break;
+       case SYNAPTICS_RMI4_F1A:
+               synaptics_rmi4_f1a_report(rmi4_data, fhandler);
+               break;
+#ifdef PROXIMITY_MODE
+       case SYNAPTICS_RMI4_F51:
+               synaptics_rmi4_f51_report(rmi4_data, fhandler);
+               break;
+#endif
+       default:
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Undefined RMI function number[0X%02X]\n",
+                               __func__, fhandler->fn_number);
+               break;
+       }
+
+       return;
+}
+
+/**
+ * synaptics_rmi4_sensor_report()
+ *
+ * Called by synaptics_rmi4_irq().
+ *
+ * This function determines the interrupt source(s) from the sensor
+ * and calls synaptics_rmi4_report_touch() with the appropriate
+ * function handler for each function with valid data inputs.
+ */
+static int synaptics_rmi4_sensor_report(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char data[MAX_INTR_REGISTERS + 1];
+       unsigned char *intr = &data[1];
+       struct synaptics_rmi4_f01_device_status status;
+       struct synaptics_rmi4_fn *fhandler;
+       struct synaptics_rmi4_exp_fn *exp_fhandler;
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       /*
+        * Get interrupt status information from F01 Data1 register to
+        * determine the source(s) that are flagging the interrupt.
+        */
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_data_base_addr,
+                       data,
+                       rmi4_data->num_of_intr_regs + 1);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read interrupt status\n",
+                               __func__);
+               return retval;
+       }
+
+       status.data[0] = data[0];
+       if (status.unconfigured) {
+               if (rmi4_data->doing_reflash) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "Spontaneous reset detected during reflash.\n");
+                       return 0;
+               }
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "Spontaneous reset detected\n");
+               retval = synaptics_rmi4_reinit_device(rmi4_data);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to reinit device\n",
+                                       __func__);
+               }
+               return 0;
+       }
+
+       /*
+        * Traverse the function handler list and service the source(s)
+        * of the interrupt accordingly.
+        */
+       if (!list_empty(&rmi->support_fn_list)) {
+               list_for_each_entry(fhandler, &rmi->support_fn_list, link) {
+                       if (fhandler->num_of_data_sources) {
+                               if (fhandler->intr_mask &
+                                               intr[fhandler->intr_reg_num]) {
+                                       synaptics_rmi4_report_touch(rmi4_data,
+                                                       fhandler);
+                               }
+                       }
+               }
+       }
+
+       if (!list_empty(&rmi->exp_fn_list)) {
+               list_for_each_entry(exp_fhandler, &rmi->exp_fn_list, link) {
+                       if (exp_fhandler->initialized &&
+                                       (exp_fhandler->func_attn != NULL))
+                               exp_fhandler->func_attn(rmi4_data, intr[0]);
+               }
+       }
+
+       return 0;
+}
+
+/**
+ * synaptics_rmi4_irq()
+ *
+ * Called by the kernel when an interrupt occurs (when the sensor
+ * asserts the attention irq).
+ *
+ * This function is the ISR thread and handles the acquisition
+ * and the reporting of finger data when the presence of fingers
+ * is detected.
+ */
+static irqreturn_t synaptics_rmi4_irq(int irq, void *data)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data = data;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       do {
+               retval = synaptics_rmi4_sensor_report(rmi4_data);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read",
+                               __func__);
+                       goto out;
+               }
+
+               if (rmi4_data->touch_stopped)
+                       goto out;
+
+       } while (!gpio_get_value(pdata->gpio));
+
+out:
+       return IRQ_HANDLED;
+}
+
+/**
+ * synaptics_rmi4_irq_enable()
+ *
+ * Called by synaptics_rmi4_probe() and the power management functions
+ * in this driver and also exported to other expansion Function modules
+ * such as rmi_dev.
+ *
+ * This function handles the enabling and disabling of the attention
+ * irq including the setting up of the ISR thread.
+ */
+static int synaptics_rmi4_irq_enable(struct synaptics_rmi4_data *rmi4_data,
+               bool enable)
+{
+       int retval = 0;
+       unsigned char intr_status[MAX_INTR_REGISTERS];
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       if (enable) {
+               if (rmi4_data->irq_enabled)
+                       return retval;
+
+               /* Clear interrupts first */
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               rmi4_data->f01_data_base_addr + 1,
+                               intr_status,
+                               rmi4_data->num_of_intr_regs);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                               __func__, __LINE__, retval);
+                       return retval;
+               }
+
+               retval = request_threaded_irq(rmi4_data->irq, NULL,
+                               synaptics_rmi4_irq, pdata->irq_type,
+                               DRIVER_NAME, rmi4_data);
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to create irq thread\n",
+                                       __func__);
+                       return retval;
+               }
+
+               rmi4_data->irq_enabled = true;
+       } else {
+               if (rmi4_data->irq_enabled) {
+                       disable_irq(rmi4_data->irq);
+                       free_irq(rmi4_data->irq, rmi4_data);
+                       rmi4_data->irq_enabled = false;
+               }
+       }
+
+       return retval;
+}
+
+/**
+ * synaptics_rmi4_f11_init()
+ *
+ * Called by synaptics_rmi4_query_device().
+ *
+ * This funtion parses information from the Function 11 registers
+ * and determines the number of fingers supported, x and y data ranges,
+ * offset to the associated interrupt status register, interrupt bit
+ * mask, and gathers finger data acquisition capabilities from the query
+ * registers.
+ */
+static int synaptics_rmi4_f11_init(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler,
+               struct synaptics_rmi4_fn_desc *fd,
+               unsigned int intr_count)
+{
+       int retval;
+       unsigned char ii;
+       unsigned char intr_offset;
+       unsigned char abs_data_size;
+       unsigned char abs_data_blk_size;
+       unsigned char query[F11_STD_QUERY_LEN];
+       unsigned char control[F11_STD_CTRL_LEN];
+
+       fhandler->fn_number = fd->fn_number;
+       fhandler->num_of_data_sources = fd->intr_src_count;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base,
+                       query,
+                       sizeof(query));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Maximum number of fingers supported */
+       if ((query[1] & MASK_3BIT) <= 4)
+               fhandler->num_of_data_points = (query[1] & MASK_3BIT) + 1;
+       else if ((query[1] & MASK_3BIT) == 5)
+               fhandler->num_of_data_points = 10;
+
+       rmi4_data->num_of_fingers = fhandler->num_of_data_points;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.ctrl_base,
+                       control,
+                       sizeof(control));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Maximum x and y */
+       rmi4_data->sensor_max_x = ((control[6] & MASK_8BIT) << 0) |
+               ((control[7] & MASK_4BIT) << 8);
+       rmi4_data->sensor_max_y = ((control[8] & MASK_8BIT) << 0) |
+               ((control[9] & MASK_4BIT) << 8);
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                       "%s: Function %02x max x = %d max y = %d\n",
+                       __func__, fhandler->fn_number,
+                       rmi4_data->sensor_max_x,
+                       rmi4_data->sensor_max_y);
+       if (rmi4_data->sensor_max_x <= 0 || rmi4_data->sensor_max_y <= 0) {
+               rmi4_data->sensor_max_x = rmi4_data->board->sensor_max_x;
+               rmi4_data->sensor_max_y = rmi4_data->board->sensor_max_y;
+
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                               "%s: Function %02x read failed, run dtsi coords. max x = %d max y = %d\n",
+                               __func__, fhandler->fn_number,
+                               rmi4_data->sensor_max_x,
+                               rmi4_data->sensor_max_y);
+       }
+
+       rmi4_data->max_touch_width = MAX_F11_TOUCH_WIDTH;
+
+       fhandler->intr_reg_num = (intr_count + 7) / 8;
+       if (fhandler->intr_reg_num != 0)
+               fhandler->intr_reg_num -= 1;
+
+       /* Set an enable bit for each data source */
+       intr_offset = intr_count % 8;
+       fhandler->intr_mask = 0;
+       for (ii = intr_offset; ii < ((fd->intr_src_count & MASK_3BIT) + intr_offset); ii++)
+               fhandler->intr_mask |= 1 << ii;
+
+       abs_data_size = query[5] & MASK_2BIT;
+       abs_data_blk_size = 3 + (2 * (abs_data_size == 0 ? 1 : 0));
+       fhandler->size_of_data_register_block = abs_data_blk_size;
+       fhandler->data = NULL;
+       fhandler->extra = NULL;
+
+       return retval;
+}
+
+int synaptics_rmi4_f12_ctrl11_set(struct synaptics_rmi4_data *rmi4_data,
+               unsigned char data)
+{
+       struct synaptics_rmi4_f12_ctrl_11 ctrl_11;
+
+       int retval;
+
+       if (rmi4_data->touch_stopped)
+               return 0;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f12.ctrl11_addr,
+                       ctrl_11.data,
+                       sizeof(ctrl_11.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       ctrl_11.data[2] = data; /* set a value of jitter filter */
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f12.ctrl11_addr,
+                       ctrl_11.data,
+                       sizeof(ctrl_11.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+       return 0;
+}
+
+static int synaptics_rmi4_f12_set_feature(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+
+       if (!rmi4_data->f12.glove_mode_feature)
+               goto out;
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                               rmi4_data->f12.ctrl26_addr,
+                               &rmi4_data->f12.feature_enable,
+                               sizeof(rmi4_data->f12.feature_enable));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: write fail[%d]\n",
+                       __func__, retval);
+               goto out;
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [0x%02X], Set %s\n",
+                __func__, rmi4_data->f12.feature_enable,
+               (rmi4_data->f12.feature_enable == (CLEAR_COVER_MODE_EN | FAST_GLOVE_DECTION_EN)) ? "Clear cover & Fast glove mode" :
+               (rmi4_data->f12.feature_enable == (FLIP_COVER_MODE_EN | FAST_GLOVE_DECTION_EN)) ? "Flip cover & Fast glove mode" :
+               (rmi4_data->f12.feature_enable == (GLOVE_DETECTION_EN | FAST_GLOVE_DECTION_EN)) ? "Fast glove mode" :
+               (rmi4_data->f12.feature_enable == CLEAR_COVER_MODE_EN) ? "Clear cover" :
+               (rmi4_data->f12.feature_enable == FLIP_COVER_MODE_EN) ? "Flip cover" :
+               (rmi4_data->f12.feature_enable == GLOVE_DETECTION_EN) ? "Glove mode" : "All disabled");
+
+out:
+       return retval;
+}
+
+static int synaptics_rmi4_f12_set_report(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f12.ctrl28_addr,
+                       &rmi4_data->f12.report_enable,
+                       sizeof(rmi4_data->f12.report_enable));
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: write fail[%d]\n",
+               __func__, retval);
+
+       return retval;
+}
+
+#ifdef GLOVE_MODE
+int synaptics_rmi4_glove_mode_enables(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+
+       if (!rmi4_data->f12.glove_mode_feature) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Ver[%02X%02X%02X] FW does not support glove mode %02X\n",
+                       __func__, rmi4_data->panel_revision, rmi4_data->ic_revision_of_ic,
+                       rmi4_data->fw_version_of_ic, rmi4_data->f12.glove_mode_feature);
+               goto out;
+       }
+
+       if (rmi4_data->touch_stopped)
+               goto out;
+
+       retval = synaptics_rmi4_f12_set_feature(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                       __func__, __LINE__, retval);
+       }
+
+out:
+       return retval;
+}
+#endif
+
+static int synaptics_rmi4_f12_set_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+
+       retval = synaptics_rmi4_f12_set_feature(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, Failed to set featrue. [%d]\n",
+                       __func__, retval);
+               goto out;
+       }
+
+       retval = synaptics_rmi4_f12_set_report(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set report. [%d]\n",
+                       __func__, retval);
+               goto out;
+       }
+
+out:
+       return retval;
+}
+
+/**
+ * synaptics_rmi4_f12_init()
+ *
+ * Called by synaptics_rmi4_query_device().
+ *
+ * This funtion parses information from the Function 12 registers and
+ * determines the number of fingers supported, offset to the data1
+ * register, x and y data ranges, offset to the associated interrupt
+ * status register, interrupt bit mask, and allocates memory resources
+ * for finger data acquisition.
+ */
+static int synaptics_rmi4_f12_init(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler,
+               struct synaptics_rmi4_fn_desc *fd,
+               unsigned int intr_count)
+{
+       int retval;
+       unsigned char ii;
+       unsigned char intr_offset;
+       unsigned char size_of_2d_data;
+       unsigned char size_of_query8;
+       unsigned char ctrl_8_offset;
+       unsigned char ctrl_9_offset;
+       unsigned char ctrl_11_offset;
+       unsigned char ctrl_15_offset;
+       unsigned char ctrl_23_offset;
+       unsigned char ctrl_26_offset;
+       unsigned char ctrl_28_offset;
+       struct synaptics_rmi4_f12_extra_data *extra_data;
+       struct synaptics_rmi4_f12_query_5 query_5;
+       struct synaptics_rmi4_f12_query_8 query_8;
+       struct synaptics_rmi4_f12_query_10 query_10;
+       struct synaptics_rmi4_f12_ctrl_8 ctrl_8;
+       struct synaptics_rmi4_f12_ctrl_9 ctrl_9;
+       struct synaptics_rmi4_f12_ctrl_23 ctrl_23;
+
+       fhandler->fn_number = fd->fn_number;
+       fhandler->num_of_data_sources = fd->intr_src_count;
+       fhandler->extra = kzalloc(sizeof(*extra_data), GFP_KERNEL);
+       extra_data = (struct synaptics_rmi4_f12_extra_data *)fhandler->extra;
+       size_of_2d_data = sizeof(struct synaptics_rmi4_f12_finger_data);
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base + 5,
+                       query_5.data,
+                       sizeof(query_5.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       ctrl_8_offset = query_5.ctrl0_is_present +
+               query_5.ctrl1_is_present +
+               query_5.ctrl2_is_present +
+               query_5.ctrl3_is_present +
+               query_5.ctrl4_is_present +
+               query_5.ctrl5_is_present +
+               query_5.ctrl6_is_present +
+               query_5.ctrl7_is_present;
+
+       ctrl_9_offset = ctrl_8_offset +
+               query_5.ctrl8_is_present;
+
+       ctrl_11_offset = ctrl_9_offset +
+               query_5.ctrl9_is_present +
+               query_5.ctrl10_is_present;
+
+       ctrl_15_offset = ctrl_11_offset +
+               query_5.ctrl11_is_present +
+               query_5.ctrl12_is_present +
+               query_5.ctrl13_is_present +
+               query_5.ctrl14_is_present;
+
+       ctrl_23_offset = ctrl_15_offset +
+               query_5.ctrl15_is_present +
+               query_5.ctrl16_is_present +
+               query_5.ctrl17_is_present +
+               query_5.ctrl18_is_present +
+               query_5.ctrl19_is_present +
+               query_5.ctrl20_is_present +
+               query_5.ctrl21_is_present +
+               query_5.ctrl22_is_present;
+
+       ctrl_26_offset = ctrl_23_offset +
+               query_5.ctrl23_is_present +
+               query_5.ctrl24_is_present +
+               query_5.ctrl25_is_present;
+
+       ctrl_28_offset = ctrl_26_offset +
+               query_5.ctrl26_is_present +
+               query_5.ctrl27_is_present;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.ctrl_base + ctrl_23_offset,
+                       ctrl_23.data,
+                       sizeof(ctrl_23.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Maximum number of fingers supported */
+       fhandler->num_of_data_points = min(ctrl_23.max_reported_objects,
+                       (unsigned char)F12_FINGERS_TO_SUPPORT);
+
+       rmi4_data->num_of_fingers = fhandler->num_of_data_points;
+       /* for protection num of finger is going to zero value */
+       if (!rmi4_data->num_of_fingers)
+               rmi4_data->num_of_fingers = MAX_NUMBER_OF_FINGERS;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base + 7,
+                       &size_of_query8,
+                       sizeof(size_of_query8));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base + 8,
+                       query_8.data,
+                       size_of_query8);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Determine the presence of the Data0 register */
+       extra_data->data1_offset = query_8.data0_is_present;
+
+       if ((size_of_query8 >= 3) && (query_8.data15_is_present)) {
+               extra_data->data15_offset = query_8.data0_is_present +
+                       query_8.data1_is_present +
+                       query_8.data2_is_present +
+                       query_8.data3_is_present +
+                       query_8.data4_is_present +
+                       query_8.data5_is_present +
+                       query_8.data6_is_present +
+                       query_8.data7_is_present +
+                       query_8.data8_is_present +
+                       query_8.data9_is_present +
+                       query_8.data10_is_present +
+                       query_8.data11_is_present +
+                       query_8.data12_is_present +
+                       query_8.data13_is_present +
+                       query_8.data14_is_present;
+               extra_data->data15_size = (rmi4_data->num_of_fingers + 7) / 8;
+       } else {
+               extra_data->data15_size = 0;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base + 10,
+                       query_10.data,
+                       sizeof(query_10.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s:%4d read fail[%d]\n",
+                               __func__, __LINE__, retval);
+               return retval;
+       }
+/*
+ * Set f12 control register address.
+ * control register address : cntrol base register address + offset
+ */
+       rmi4_data->f12.ctrl11_addr = fhandler->full_addr.ctrl_base + ctrl_11_offset;
+       rmi4_data->f12.ctrl15_addr = fhandler->full_addr.ctrl_base + ctrl_15_offset;
+       rmi4_data->f12.ctrl26_addr = fhandler->full_addr.ctrl_base + ctrl_26_offset;
+       rmi4_data->f12.ctrl28_addr = fhandler->full_addr.ctrl_base + ctrl_28_offset;
+       rmi4_data->f12.glove_mode_feature = query_10.glove_mode_feature;
+       rmi4_data->f12.report_enable = RPT_DEFAULT;
+#ifdef REPORT_2D_Z
+       rmi4_data->f12.report_enable |= RPT_Z;
+#endif
+#ifdef REPORT_2D_W
+       rmi4_data->f12.report_enable |= (RPT_WX | RPT_WY);
+#endif
+       retval = synaptics_rmi4_f12_set_init(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to int F12. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.ctrl_base + ctrl_8_offset,
+                       ctrl_8.data,
+                       sizeof(ctrl_8.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Maximum x and y */
+       rmi4_data->sensor_max_x =
+               ((unsigned short)ctrl_8.max_x_coord_lsb << 0) |
+               ((unsigned short)ctrl_8.max_x_coord_msb << 8);
+       rmi4_data->sensor_max_y =
+               ((unsigned short)ctrl_8.max_y_coord_lsb << 0) |
+               ((unsigned short)ctrl_8.max_y_coord_msb << 8);
+       if (rmi4_data->sensor_max_x <= 0 || rmi4_data->sensor_max_y <= 0) {
+               rmi4_data->sensor_max_x = rmi4_data->board->sensor_max_x;
+               rmi4_data->sensor_max_y = rmi4_data->board->sensor_max_y;
+       }
+
+       rmi4_data->num_of_rx = ctrl_8.num_of_rx;
+       rmi4_data->num_of_tx = ctrl_8.num_of_tx;
+       rmi4_data->max_touch_width = max(rmi4_data->num_of_rx,
+                       rmi4_data->num_of_tx);
+       rmi4_data->num_of_node = ctrl_8.num_of_rx * ctrl_8.num_of_tx;
+
+       if (rmi4_data->num_of_rx <= 0 || rmi4_data->num_of_tx <= 0) {
+               rmi4_data->num_of_rx = rmi4_data->board->num_of_rx;
+               rmi4_data->num_of_tx = rmi4_data->board->num_of_tx;
+               rmi4_data->max_touch_width = max(rmi4_data->num_of_rx,
+                               rmi4_data->num_of_tx);
+               rmi4_data->num_of_node = rmi4_data->num_of_rx * rmi4_data->num_of_tx;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.ctrl_base + ctrl_9_offset,
+                       ctrl_9.data,
+                       sizeof(ctrl_9.data));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: %02x max_x,y(%d,%d) num_Rx,Tx(%d,%d), num_finger(%d),  node:%d, threshold:%d, gloved sensitivity:%x\n",
+                       __func__, fhandler->fn_number,
+                       rmi4_data->sensor_max_x, rmi4_data->sensor_max_y,
+                       rmi4_data->num_of_rx, rmi4_data->num_of_tx,
+                       rmi4_data->num_of_fingers,
+                       rmi4_data->num_of_node, ctrl_9.touch_threshold,
+                       ctrl_9.gloved_finger);
+
+       fhandler->intr_reg_num = (intr_count + 7) / 8;
+       if (fhandler->intr_reg_num != 0)
+               fhandler->intr_reg_num -= 1;
+
+       /* Set an enable bit for each data source */
+       intr_offset = intr_count % 8;
+       fhandler->intr_mask = 0;
+       for (ii = intr_offset; ii < ((fd->intr_src_count & MASK_3BIT) + intr_offset); ii++)
+               fhandler->intr_mask |= 1 << ii;
+
+       /* Allocate memory for finger data storage space */
+       fhandler->data_size = rmi4_data->num_of_fingers * size_of_2d_data;
+       fhandler->data = kzalloc(fhandler->data_size, GFP_KERNEL);
+
+       return retval;
+}
+
+static int synaptics_rmi4_f1a_alloc_mem(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       struct synaptics_rmi4_f1a_handle *f1a;
+
+       f1a = kzalloc(sizeof(*f1a), GFP_KERNEL);
+       if (!f1a) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for function handle\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       fhandler->data = (void *)f1a;
+       fhandler->extra = NULL;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base,
+                       f1a->button_query.data,
+                       sizeof(f1a->button_query.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read query registers\n",
+                               __func__);
+               return retval;
+       }
+
+       f1a->max_count = f1a->button_query.max_button_count + 1;
+
+       f1a->button_control.txrx_map = kzalloc(f1a->max_count * 2, GFP_KERNEL);
+       if (!f1a->button_control.txrx_map) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for tx rx mapping\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       f1a->button_bitmask_size = (f1a->max_count + 7) / 8;
+
+       f1a->button_data_buffer = kcalloc(f1a->button_bitmask_size,
+                       sizeof(*(f1a->button_data_buffer)), GFP_KERNEL);
+       if (!f1a->button_data_buffer) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for data buffer\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       f1a->button_map = kcalloc(f1a->max_count,
+                       sizeof(*(f1a->button_map)), GFP_KERNEL);
+       if (!f1a->button_map) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to alloc mem for button map\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       return 0;
+}
+
+static int synaptics_rmi4_f1a_button_map(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       unsigned char ii;
+       unsigned char mapping_offset = 0;
+       struct synaptics_rmi4_f1a_handle *f1a = fhandler->data;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       mapping_offset = f1a->button_query.has_general_control +
+               f1a->button_query.has_interrupt_enable +
+               f1a->button_query.has_multibutton_select;
+
+       if (f1a->button_query.has_tx_rx_map) {
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               fhandler->full_addr.ctrl_base + mapping_offset,
+                               f1a->button_control.txrx_map,
+                               sizeof(f1a->button_control.txrx_map));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to read tx rx mapping\n",
+                                       __func__);
+                       return retval;
+               }
+
+               rmi4_data->button_txrx_mapping = f1a->button_control.txrx_map;
+       }
+
+       if (!pdata->f1a_button_map) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: f1a_button_map is NULL in board file\n",
+                               __func__);
+               return -ENODEV;
+       } else if (!pdata->f1a_button_map->map) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Button map is missing in board file\n",
+                               __func__);
+               return -ENODEV;
+       } else {
+               if (pdata->f1a_button_map->nbuttons != f1a->max_count) {
+                       f1a->valid_button_count = min(f1a->max_count,
+                                       pdata->f1a_button_map->nbuttons);
+               } else {
+                       f1a->valid_button_count = f1a->max_count;
+               }
+
+               for (ii = 0; ii < f1a->valid_button_count; ii++)
+                       f1a->button_map[ii] = pdata->f1a_button_map->map[ii];
+       }
+
+       return 0;
+}
+
+static void synaptics_rmi4_f1a_kfree(struct synaptics_rmi4_fn *fhandler)
+{
+       struct synaptics_rmi4_f1a_handle *f1a = fhandler->data;
+
+       if (f1a) {
+               kfree(f1a->button_control.txrx_map);
+               kfree(f1a->button_data_buffer);
+               kfree(f1a->button_map);
+               kfree(f1a);
+               fhandler->data = NULL;
+       }
+
+       return;
+}
+
+static int synaptics_rmi4_f1a_init(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler,
+               struct synaptics_rmi4_fn_desc *fd,
+               unsigned int intr_count)
+{
+       int retval;
+       unsigned char ii;
+       unsigned short intr_offset;
+
+       fhandler->fn_number = fd->fn_number;
+       fhandler->num_of_data_sources = fd->intr_src_count;
+
+       fhandler->intr_reg_num = (intr_count + 7) / 8;
+       if (fhandler->intr_reg_num != 0)
+               fhandler->intr_reg_num -= 1;
+
+       /* Set an enable bit for each data source */
+       intr_offset = intr_count % 8;
+       fhandler->intr_mask = 0;
+       for (ii = intr_offset; ii < ((fd->intr_src_count & MASK_3BIT) + intr_offset); ii++)
+               fhandler->intr_mask |= 1 << ii;
+
+       retval = synaptics_rmi4_f1a_alloc_mem(rmi4_data, fhandler);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Fail to alloc mem. error = %d\n",
+                       __func__, retval);
+               goto error_exit;
+       }
+       retval = synaptics_rmi4_f1a_button_map(rmi4_data, fhandler);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to make button map. error = %d\n",
+                       __func__, __LINE__, retval);
+               goto error_exit;
+       }
+       rmi4_data->button_0d_enabled = 1;
+
+       return 0;
+
+error_exit:
+       synaptics_rmi4_f1a_kfree(fhandler);
+
+       return retval;
+}
+
+int synaptics_rmi4_read_tsp_test_result(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char data;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f34_ctrl_base_addr,
+                       &data,
+                       sizeof(data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: read fail[%d]\n",
+                               __func__, retval);
+               return retval;
+       }
+
+       return data >> 4;
+}
+EXPORT_SYMBOL(synaptics_rmi4_read_tsp_test_result);
+
+static int synaptics_rmi4_f34_read_version(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+       int retval;
+       struct synaptics_rmi4_f34_ctrl_3 ctrl_3;
+
+       /* Read bootloader version */
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base,
+                       rmi4_data->bootloader_id,
+                       sizeof(rmi4_data->bootloader_id));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       rmi4_data->f34_ctrl_base_addr = fhandler->full_addr.ctrl_base;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.ctrl_base,
+                       ctrl_3.data,
+                       sizeof(ctrl_3.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* Ctrl_3.fw_release_month is composed
+        * MSB 4bit are used for factory test in TSP. and LSB 4bit represent month of fw release
+        */
+       rmi4_data->fw_release_date_of_ic =
+               ((ctrl_3.fw_release_month << 8) | ctrl_3.fw_release_date);
+       rmi4_data->ic_revision_of_ic = ctrl_3.fw_release_revision;
+       rmi4_data->fw_version_of_ic = ctrl_3.fw_release_version;
+
+       return retval;
+}
+
+static int synaptics_rmi4_f34_init(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler,
+               struct synaptics_rmi4_fn_desc *fd,
+               unsigned int intr_count)
+{
+       int retval;
+
+       fhandler->fn_number = fd->fn_number;
+       fhandler->num_of_data_sources = fd->intr_src_count;
+
+       retval = synaptics_rmi4_f34_read_version(rmi4_data, fhandler);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read version. error = %d\n",
+                       __func__, retval);
+               return retval;
+       }
+
+       fhandler->data = NULL;
+
+       return retval;
+}
+
+#ifdef PROXIMITY_MODE
+#ifdef USE_CUSTOM_REZERO
+static int synaptics_rmi4_f51_set_custom_rezero(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char custom_rezero;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       f51->general_control_addr,
+                       &custom_rezero, sizeof(custom_rezero));
+
+       custom_rezero |= HOST_REZERO_COMMAND;
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       f51->general_control_addr,
+                       &custom_rezero, sizeof(custom_rezero));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: fail to write custom rezero\n",
+                       __func__);
+               return retval;
+       }
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+       return 0;
+}
+
+static void synaptics_rmi4_rezero_work(struct work_struct *work)
+{
+       int retval;
+       struct synaptics_rmi4_data *rmi4_data =
+                       container_of(work, struct synaptics_rmi4_data,
+                       rezero_work.work);
+
+       /* Do not check hover enable status, because rezero bit does not effect
+        * to doze(mutual only) mdoe.
+        */
+       retval = synaptics_rmi4_f51_set_custom_rezero(rmi4_data);
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to rezero device\n", __func__);
+}
+#endif
+
+int synaptics_proximity_no_sleep_set(struct synaptics_rmi4_data *rmi4_data, bool enables)
+{
+       int retval;
+       unsigned char no_sleep = 0;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+
+       if (!f51)
+               return -ENODEV;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &no_sleep,
+                       sizeof(no_sleep));
+
+       if (retval <= 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: fail to read no_sleep[ret:%d]\n",
+                               __func__, retval);
+
+       if (enables)
+               no_sleep |= NO_SLEEP_ON;
+       else
+               no_sleep &= ~(NO_SLEEP_ON);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &no_sleep,
+                       sizeof(no_sleep));
+       if (retval <= 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: fail to set no_sleep[%X][ret:%d]\n",
+                               __func__, no_sleep, retval);
+
+       return retval;
+}
+EXPORT_SYMBOL(synaptics_proximity_no_sleep_set);
+
+static int synaptics_rmi4_f51_set_proximity_enables(struct synaptics_rmi4_data *rmi4_data)
+{
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       int retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [0x%02X], Hover is %s\n", __func__,
+               f51->proximity_enables, (f51->proximity_enables & FINGER_HOVER_EN) ? "enabled" : "disabled");
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       f51->proximity_enables_addr,
+                       &f51->proximity_enables,
+                       sizeof(f51->proximity_enables));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+#ifdef USE_CUSTOM_REZERO
+       cancel_delayed_work(&rmi4_data->rezero_work);
+       if (f51->proximity_enables & FINGER_HOVER_EN)
+               schedule_delayed_work(&rmi4_data->rezero_work,
+                                               msecs_to_jiffies(SYNAPTICS_REZERO_TIME*3)); /* 300msec*/
+#endif
+
+       return 0;
+}
+
+#ifdef SIDE_TOUCH
+static int synaptics_rmi4_set_sidekey_only_mode(struct synaptics_rmi4_data *rmi4_data, bool mode)
+{
+       unsigned char general_control_2;
+       int retval = 0;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f51->general_control_2_addr,
+                       &general_control_2, sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to read general_control_2\n", __func__);
+               goto out;
+       }
+
+       if (mode)
+               general_control_2 |= SIDE_TOUCH_ONLY_ACTIVE;
+       else
+               general_control_2 &= ~(SIDE_TOUCH_ONLY_ACTIVE);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f51->general_control_2_addr,
+                       &general_control_2,     sizeof(general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to clear side touch only active bit\n",     __func__);
+               goto out;
+       }
+
+       rmi4_data->f51->general_control_2 = general_control_2;
+out:
+       return retval;
+}
+
+static int synaptics_rmi4_f51_set_general_control_2(struct synaptics_rmi4_data *rmi4_data)
+{
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       int retval;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [0x%02X]\n",
+               __func__, f51->general_control_2);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       f51->general_control_2_addr,
+                       &f51->general_control_2,
+                       sizeof(f51->general_control_2));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       return 0;
+}
+#endif
+
+static int synaptics_rmi4_f51_set_init(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       /* Read the Hsync's status */
+       synaptics_rmi4_i2c_read(rmi4_data, f51->general_control_addr,
+                       &f51->general_control, sizeof(f51->general_control));
+
+       /* Write the Host ID bit to decide notification type in charger
+        * HOST ID              : 1 -> I2C(RMI) , 0 -> INT(GPIO)
+        */
+       if (pdata->charger_noti_type)
+               f51->general_control |= HOST_ID;
+       else
+               f51->general_control &= ~HOST_ID;
+
+       /* Read default general_control_2 register */
+       synaptics_rmi4_i2c_read(rmi4_data, f51->general_control_2_addr,
+                       &f51->general_control_2, sizeof(f51->general_control_2));
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: General control[0x%02X],2[0x%02X] Hsync is %s\n",
+                       __func__, f51->general_control, f51->general_control_2,
+                       (f51->general_control & HSYNC_STATUS) ? "GD" : "NG");
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       f51->general_control_addr,
+                       &f51->general_control,
+                       sizeof(f51->general_control));
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                       __func__, __LINE__, retval);
+
+       retval = synaptics_rmi4_f51_set_proximity_enables(rmi4_data);
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set proximity enables\n", __func__);
+
+#ifdef SIDE_TOUCH
+       synaptics_rmi4_set_sidekey_only_mode(rmi4_data, false);
+       retval = synaptics_rmi4_f51_set_general_control_2(rmi4_data);
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set general control 2\n", __func__);
+#endif
+       return retval;
+}
+
+static int synaptics_rmi4_f51_init(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler,
+               struct synaptics_rmi4_fn_desc *fd,
+               unsigned int intr_count)
+{
+       int retval;
+       unsigned char ii;
+       unsigned short intr_offset;
+       struct synaptics_rmi4_f51_data *data;
+       struct synaptics_rmi4_f51_query query;
+       struct synaptics_rmi4_f51_handle *f51;
+       unsigned char data_addr_offset;
+
+       fhandler->fn_number = fd->fn_number;
+       fhandler->num_of_data_sources = fd->intr_src_count;
+
+       fhandler->intr_reg_num = (intr_count + 7) / 8;
+       if (fhandler->intr_reg_num != 0)
+               fhandler->intr_reg_num -= 1;
+
+       /* Set an enable bit for each data source */
+       intr_offset = intr_count % 8;
+       fhandler->intr_mask = 0;
+       for (ii = intr_offset;
+                       ii < ((fd->intr_src_count & MASK_3BIT) + intr_offset);
+                       ii++)
+               fhandler->intr_mask |= 1 << ii;
+
+       fhandler->data_size = sizeof(*data);
+       data = kzalloc(fhandler->data_size, GFP_KERNEL);
+       fhandler->data = (void *)data;
+       fhandler->extra = NULL;
+
+       rmi4_data->f51 = kzalloc(sizeof(*rmi4_data->f51), GFP_KERNEL);
+       f51 = rmi4_data->f51;
+
+       f51->proximity_enables = AIR_SWIPE_EN | SLEEP_PROXIMITY;
+       f51->general_control = NO_PROXIMITY_ON_TOUCH | EDGE_SWIPE_EN;
+       f51->proximity_enables_addr = fhandler->full_addr.ctrl_base +
+               F51_PROXIMITY_ENABLES_OFFSET;
+       f51->general_control_addr = fhandler->full_addr.ctrl_base +
+               F51_GENERAL_CONTROL_OFFSET;
+       f51->general_control_2_addr = fhandler->full_addr.ctrl_base +
+               F51_GENERAL_CONTROL_2_OFFSET;
+#ifdef PROXIMITY_MODE
+       f51->grip_edge_exclusion_rx_addr = fhandler->full_addr.ctrl_base +
+               MANUAL_DEFINED_OFFSET_GRIP_EDGE_EXCLUSION_RX;
+#endif
+#ifdef SIDE_TOUCH
+       f51->sidebutton_tapthreshold_addr = fhandler->full_addr.ctrl_base +
+               MANUAL_DEFINED_OFFSET_SIDEKEY_THRESHOLD;
+#endif
+#ifdef USE_STYLUS
+       f51->forcefinger_onedge_addr = fhandler->full_addr.ctrl_base +
+               MANUAL_DEFINED_OFFSET_FORCEFINGER_ON_EDGE;
+#endif
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       fhandler->full_addr.query_base,
+                       query.data,
+                       sizeof(query.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+       /* query proximity controls to get which functions
+        * are supported by firmware and save start address
+        * of each feature's data.
+        */
+       f51->proximity_controls = query.proximity_controls;
+       f51->proximity_controls_2 = query.proximity_controls_2;
+
+       data_addr_offset = F51_DATA_RESERVED_SIZE;
+       if (query.proximity_controls & HAS_FINGER_HOVER)
+               data_addr_offset += F51_DATA_1_SIZE;
+       if (query.proximity_controls & HAS_HOVER_PINCH)
+               data_addr_offset += F51_DATA_2_SIZE;
+       if (query.proximity_controls & (HAS_AIR_SWIPE | HAS_LARGE_OBJ))
+               data_addr_offset += F51_DATA_3_SIZE;
+       f51->side_button_data_addr = fhandler->full_addr.data_base + data_addr_offset;
+
+       if (query.proximity_controls_2 & HAS_SIDE_BUTTONS)
+               data_addr_offset += F51_DATA_4_SIZE;
+       if (query.proximity_controls_2 & HAS_CAMERA_GRIP_DETECTION
+       /* TODO : Below code (for A2(old b/l) revision) will be removed When A2(old B/L) panel dosen't be used.
+        * It was added to forcingly set edge swipe for A2 panel.
+        * We disscussed about that do not use manually offset with Synaptics.
+        * and next firmware support query bits to caculate offsets.
+        */
+                       || rmi4_data->ic_revision_of_ic == SYNAPTICS_IC_REVISION_A2)
+               data_addr_offset += F51_DATA_5_SIZE;
+
+       f51->detection_flag_2_addr = fhandler->full_addr.data_base + data_addr_offset;
+
+       if (query.proximity_controls & HAS_EDGE_SWIPE
+                       || query.proximity_controls_2 & HAS_SIDE_BUTTONS)
+               data_addr_offset += F51_DATA_6_SIZE;
+
+       f51->edge_swipe_data_addr = fhandler->full_addr.data_base + data_addr_offset;
+
+       retval = synaptics_rmi4_f51_set_init(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to set proximity set init\n",
+                       __func__);
+               return retval;
+       }
+
+       return 0;
+}
+
+int synaptics_rmi4_proximity_enables(struct synaptics_rmi4_data *rmi4_data,
+       unsigned char enables)
+{
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+       int retval;
+
+       if (!f51)
+               return -ENODEV;
+
+       if (enables) {
+               f51->proximity_enables |= FINGER_HOVER_EN;
+               f51->proximity_enables &= ~(SLEEP_PROXIMITY);
+       } else {
+               f51->proximity_enables |= SLEEP_PROXIMITY;
+               f51->proximity_enables &= ~(FINGER_HOVER_EN);
+       }
+
+       if (rmi4_data->touch_stopped)
+               return 0;
+
+       retval = synaptics_rmi4_f51_set_proximity_enables(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+       return 0;
+}
+EXPORT_SYMBOL(synaptics_rmi4_proximity_enables);
+#endif
+
+static int synaptics_rmi4_check_status(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       int timeout = CHECK_STATUS_TIMEOUT_MS;
+       unsigned char intr_status;
+       struct synaptics_rmi4_f01_device_status status;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_data_base_addr,
+                       status.data,
+                       sizeof(status.data));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s:%4d read fail[%d]\n",
+                               __func__, __LINE__, retval);
+               return retval;
+       }
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Device status[0x%02x] status.code[%d]\n",
+                       __func__, status.data[0], status.status_code);
+
+       while (status.status_code == STATUS_CRC_IN_PROGRESS) {
+               if (timeout > 0)
+                       msleep(20);
+               else
+                       return -1;
+
+               retval = synaptics_rmi4_i2c_read(rmi4_data,
+                               rmi4_data->f01_data_base_addr,
+                               status.data,
+                               sizeof(status.data));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                               __func__, __LINE__, retval);
+                       return retval;
+               }
+               timeout -= 20;
+       }
+
+       if (status.flash_prog == 1) {
+               rmi4_data->flash_prog_mode = true;
+               tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: In flash prog mode, status = 0x%02x\n",
+                               __func__, status.status_code);
+       } else {
+               rmi4_data->flash_prog_mode = false;
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_data_base_addr + 1,
+                       &intr_status,
+                       sizeof(intr_status));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to read interrupt status\n",
+                               __func__);
+               return retval;
+       }
+
+       return 0;
+}
+
+static void synaptics_rmi4_set_configured(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char device_ctrl;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &(rmi4_data->i2c_client->dev),
+                               "%s: Failed to set configured\n",
+                               __func__);
+               return;
+       }
+
+       device_ctrl |= CONFIGURED;
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &(rmi4_data->i2c_client->dev),
+                               "%s: Failed to set configured\n",
+                               __func__);
+       }
+
+       return;
+}
+
+static int synaptics_rmi4_alloc_fh(struct synaptics_rmi4_fn **fhandler,
+               struct synaptics_rmi4_fn_desc *rmi_fd, int page_number)
+{
+       *fhandler = kzalloc(sizeof(**fhandler), GFP_KERNEL);
+       if (!(*fhandler))
+               return -ENOMEM;
+
+       (*fhandler)->full_addr.data_base =
+               (rmi_fd->data_base_addr |
+                (page_number << 8));
+       (*fhandler)->full_addr.ctrl_base =
+               (rmi_fd->ctrl_base_addr |
+                (page_number << 8));
+       (*fhandler)->full_addr.cmd_base =
+               (rmi_fd->cmd_base_addr |
+                (page_number << 8));
+       (*fhandler)->full_addr.query_base =
+               (rmi_fd->query_base_addr |
+                (page_number << 8));
+
+       return 0;
+}
+
+static void synaptics_rmi4_free_fh(struct synaptics_rmi4_data *rmi4_data,
+               struct synaptics_rmi4_fn *fhandler)
+{
+#ifdef PROXIMITY_MODE
+       struct synaptics_rmi4_f51_handle *f51 = rmi4_data->f51;
+#endif
+
+       if (fhandler->fn_number == SYNAPTICS_RMI4_F1A) {
+               synaptics_rmi4_f1a_kfree(fhandler);
+       } else {
+#ifdef PROXIMITY_MODE
+               if (fhandler->fn_number == SYNAPTICS_RMI4_F51) {
+                       kfree(f51);
+                       f51 = NULL;
+               }
+#endif
+               kfree(fhandler->data);
+       }
+       kfree(fhandler);
+}
+
+static void    synaptics_init_product_info(struct synaptics_rmi4_data *rmi4_data)
+{
+
+       /* Get production info. */
+       if (strncmp(rmi4_data->rmi4_mod_info.product_id_string, "S5000", 5) == 0) {
+               rmi4_data->product_id = SYNAPTICS_PRODUCT_ID_S5000;
+       } else if (strncmp(rmi4_data->rmi4_mod_info.product_id_string, "s5050", 5) == 0) {
+               rmi4_data->product_id = SYNAPTICS_PRODUCT_ID_S5050;
+       } else if (strncmp(rmi4_data->rmi4_mod_info.product_id_string, "s5100", 5) == 0) {
+               rmi4_data->product_id = SYNAPTICS_PRODUCT_ID_S5100;
+       } else {
+               rmi4_data->product_id = SYNAPTICS_PRODUCT_ID_NONE;
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, Undefined product id: %s\n",
+                       __func__, rmi4_data->rmi4_mod_info.product_id_string);
+       }
+
+       /* Get ic revision info */
+       if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "A0", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "a0", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_A0;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "A1", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "a1", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_A1;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "A2", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "a2", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_A2;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "A3", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "a3", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_A3;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "AF", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "af", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_AF;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "B0", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "b0", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_B0;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "B1", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "b1", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_B1;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "B2", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "b2", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_B2;
+       } else if ((strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "BF", 2) == 0) ||
+               (strncmp(rmi4_data->rmi4_mod_info.product_id_string + 6, "bf", 2) == 0)) {
+               rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_BF;
+       } else {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, Undefined IC revision: %s\n",
+                       __func__, rmi4_data->rmi4_mod_info.product_id_string);
+
+               /* TODO : Below Codes are temporary added for supporting specific boards which didn't lockdown
+                * Before deliveried to us.
+                * We do not distinguish panel because there is no production infomation for panel. ex) S5100 A2 F
+                * So we decide to regard those boards(attatched A2 new B/L) as a A2 panel with below condition.
+                *
+                * Below code might be removed when A3 panels are distributed.
+                */
+               if (rmi4_data->bootloader_id[SYNAPTICS_BL_MAJOR_REV_OFFSET] == BL_MAJOR_VER_OF_GUEST_THREAD
+                       && rmi4_data->bootloader_id[SYNAPTICS_BL_MINOR_REV_OFFSET] == BL_MINOR_VER_OF_GUEST_THREAD
+                       && (strncmp(rmi4_data->rmi4_mod_info.product_id_string, "s5100K", 6) == 0)) {
+
+                       rmi4_data->ic_revision_of_ic = SYNAPTICS_IC_REVISION_A2;
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, There are no production info so we regard that as A2 panel %s\n",
+                               __func__, rmi4_data->rmi4_mod_info.product_id_string);
+               }
+       }
+}
+
+/**
+ * synaptics_rmi4_query_device()
+ *
+ * Called by synaptics_rmi4_probe().
+ *
+ * This funtion scans the page description table, records the offsets
+ * to the register types of Function $01, sets up the function handlers
+ * for Function $11 and Function $12, determines the number of interrupt
+ * sources from the sensor, adds valid Functions with data inputs to the
+ * Function linked list, parses information from the query registers of
+ * Function $01, and enables the interrupt sources from the valid Functions
+ * with data inputs.
+ */
+static int synaptics_rmi4_query_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char ii = 0;
+       unsigned char page_number;
+       unsigned char intr_count = 0;
+       unsigned char f01_query[F01_STD_QUERY_LEN];
+       unsigned char f01_pr_number[4];
+       unsigned short pdt_entry_addr;
+       unsigned short intr_addr;
+       struct synaptics_rmi4_fn_desc rmi_fd;
+       struct synaptics_rmi4_fn *fhandler;
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       INIT_LIST_HEAD(&rmi->support_fn_list);
+
+       /* Scan the page description tables of the pages to service */
+       for (page_number = 0; page_number < PAGES_TO_SERVICE; page_number++) {
+               for (pdt_entry_addr = PDT_START; pdt_entry_addr > PDT_END;
+                               pdt_entry_addr -= PDT_ENTRY_SIZE) {
+                       pdt_entry_addr |= (page_number << 8);
+
+                       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                                       pdt_entry_addr,
+                                       (unsigned char *)&rmi_fd,
+                                       sizeof(rmi_fd));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               return retval;
+                       }
+                       fhandler = NULL;
+
+                       if (rmi_fd.fn_number == 0) {
+                               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev,
+                                               "%s: Reached end of PDT\n",
+                                               __func__);
+                               break;
+                       }
+
+                       /* Display function description infomation */
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: F%02x found (page %d): INT_SRC[VER:%02X, NUM:%02x] BASE_ADDRS[%02X,%02X,%02X,%02x]\n",
+                               __func__, rmi_fd.fn_number, page_number,
+                               (rmi_fd.intr_src_count & 0xF0) >> 4, rmi_fd.intr_src_count & MASK_3BIT,
+                               rmi_fd.data_base_addr, rmi_fd.ctrl_base_addr,
+                               rmi_fd.cmd_base_addr, rmi_fd.query_base_addr);
+
+                       switch (rmi_fd.fn_number) {
+                       case SYNAPTICS_RMI4_F01:
+                               rmi4_data->f01_query_base_addr =
+                                       rmi_fd.query_base_addr;
+                               rmi4_data->f01_ctrl_base_addr =
+                                       rmi_fd.ctrl_base_addr;
+                               rmi4_data->f01_data_base_addr =
+                                       rmi_fd.data_base_addr;
+                               rmi4_data->f01_cmd_base_addr =
+                                       rmi_fd.cmd_base_addr;
+
+                               retval = synaptics_rmi4_check_status(rmi4_data);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to check status\n",
+                                                       __func__);
+                                       return retval;
+                               }
+                               if (rmi4_data->flash_prog_mode)
+                                       goto flash_prog_mode;
+                               break;
+                       case SYNAPTICS_RMI4_F11:
+                               if (rmi_fd.intr_src_count == 0)
+                                       break;
+
+                               retval = synaptics_rmi4_alloc_fh(&fhandler,
+                                               &rmi_fd, page_number);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to alloc for F%d\n",
+                                                       __func__,
+                                                       rmi_fd.fn_number);
+                                       return retval;
+                               }
+                               retval = synaptics_rmi4_f11_init(rmi4_data,
+                                               fhandler, &rmi_fd, intr_count);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to init for F%d\n",
+                                               __func__, rmi_fd.fn_number);
+                                       synaptics_rmi4_free_fh(rmi4_data, fhandler);
+                                       return retval;
+                               }
+                               break;
+                       case SYNAPTICS_RMI4_F12:
+                               if (rmi_fd.intr_src_count == 0)
+                                       break;
+                               retval = synaptics_rmi4_alloc_fh(&fhandler,
+                                               &rmi_fd, page_number);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to alloc for F%d\n",
+                                                       __func__,
+                                                       rmi_fd.fn_number);
+                                       return retval;
+                               }
+                               retval = synaptics_rmi4_f12_init(rmi4_data,
+                                               fhandler, &rmi_fd, intr_count);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to init for F%d\n",
+                                               __func__, rmi_fd.fn_number);
+                                       synaptics_rmi4_free_fh(rmi4_data, fhandler);
+                                       return retval;
+                               }
+                               break;
+                       case SYNAPTICS_RMI4_F1A:
+                               if (rmi_fd.intr_src_count == 0)
+                                       break;
+                               retval = synaptics_rmi4_alloc_fh(&fhandler,
+                                               &rmi_fd, page_number);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to alloc for F%d\n",
+                                                       __func__,
+                                                       rmi_fd.fn_number);
+                                       return retval;
+                               }
+                               retval = synaptics_rmi4_f1a_init(rmi4_data,
+                                               fhandler, &rmi_fd, intr_count);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to init for F%d\n",
+                                               __func__, rmi_fd.fn_number);
+                                       synaptics_rmi4_free_fh(rmi4_data, fhandler);
+                                       return retval;
+                               }
+                               break;
+                       case SYNAPTICS_RMI4_F34:
+                               if (rmi_fd.intr_src_count == 0)
+                                       break;
+
+                               retval = synaptics_rmi4_alloc_fh(&fhandler,
+                                               &rmi_fd, page_number);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to alloc for F%d\n",
+                                                       __func__,
+                                                       rmi_fd.fn_number);
+                                       return retval;
+                               }
+
+                               retval = synaptics_rmi4_f34_init(rmi4_data,
+                                               fhandler, &rmi_fd, intr_count);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to init for F%d\n",
+                                               __func__, rmi_fd.fn_number);
+                                       synaptics_rmi4_free_fh(rmi4_data, fhandler);
+                                       return retval;
+                               }
+                               break;
+
+#ifdef PROXIMITY_MODE
+                       case SYNAPTICS_RMI4_F51:
+                               if (rmi_fd.intr_src_count == 0)
+                                       break;
+                               retval = synaptics_rmi4_alloc_fh(&fhandler,
+                                               &rmi_fd, page_number);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                                       "%s: Failed to alloc for F%d\n",
+                                                       __func__,
+                                                       rmi_fd.fn_number);
+                                       return retval;
+                               }
+                               retval = synaptics_rmi4_f51_init(rmi4_data,
+                                               fhandler, &rmi_fd, intr_count);
+                               if (retval < 0) {
+                                       tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to init for F%d\n",
+                                               __func__, rmi_fd.fn_number);
+                                       synaptics_rmi4_free_fh(rmi4_data, fhandler);
+                                       return retval;
+                               }
+                               break;
+#endif
+                       }
+
+                       /* Accumulate the interrupt count */
+                       intr_count += (rmi_fd.intr_src_count & MASK_3BIT);
+
+                       if (fhandler && rmi_fd.intr_src_count) {
+                               list_add_tail(&fhandler->link,
+                                               &rmi->support_fn_list);
+                       }
+               }
+       }
+
+flash_prog_mode:
+       rmi4_data->num_of_intr_regs = (intr_count + 7) / 8;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                       "%s: Number of interrupt registers = %d sum of intr_count = %d\n",
+                       __func__, rmi4_data->num_of_intr_regs, intr_count);
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_query_base_addr,
+                       f01_query,
+                       sizeof(f01_query));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       /* RMI Version 4.0 currently supported */
+       rmi->version_major = 4;
+       rmi->version_minor = 0;
+
+       rmi->manufacturer_id = f01_query[0];
+       rmi->product_props = f01_query[1];
+       rmi->product_info[0] = f01_query[2] & MASK_7BIT;
+       rmi->product_info[1] = f01_query[3] & MASK_7BIT;
+       rmi->date_code[0] = f01_query[4] & MASK_5BIT;
+       rmi->date_code[1] = f01_query[5] & MASK_4BIT;
+       rmi->date_code[2] = f01_query[6] & MASK_5BIT;
+       rmi->tester_id = ((f01_query[7] & MASK_7BIT) << 8) |
+               (f01_query[8] & MASK_7BIT);
+       rmi->serial_number = ((f01_query[9] & MASK_7BIT) << 8) |
+               (f01_query[10] & MASK_7BIT);
+       memcpy(rmi->product_id_string, &f01_query[11], 10);
+       synaptics_init_product_info(rmi4_data);
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_query_base_addr + 18,
+                       f01_pr_number,
+                       sizeof(f01_pr_number));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s:%4d read fail[%d]\n",
+                                       __func__, __LINE__, retval);
+               return retval;
+       }
+       memcpy(&rmi->pr_number, f01_pr_number, 3);
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Product ID [%s. %d]\n",
+               __func__, rmi4_data->rmi4_mod_info.product_id_string, rmi4_data->product_id);
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Result, date, revision, version, pr_num, b/l [%d, %02d/%02d, 0x%02X, 0x%02X, PR%d, %c%c[%c.%c]]\n",
+               __func__, rmi4_data->fw_release_date_of_ic >> 12,
+               (rmi4_data->fw_release_date_of_ic >> 8) & 0x0F,
+               rmi4_data->fw_release_date_of_ic & 0x00FF,
+               rmi4_data->ic_revision_of_ic, rmi4_data->fw_version_of_ic,
+               rmi4_data->rmi4_mod_info.pr_number,
+               rmi4_data->bootloader_id[SYNAPTICS_BL_ID_0_OFFSET],     rmi4_data->bootloader_id[SYNAPTICS_BL_ID_1_OFFSET],
+               rmi4_data->bootloader_id[SYNAPTICS_BL_MAJOR_REV_OFFSET], rmi4_data->bootloader_id[SYNAPTICS_BL_MINOR_REV_OFFSET]);
+
+       if (rmi->manufacturer_id != 1) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Non-Synaptics device found, manufacturer ID = %d\n",
+                               __func__, rmi->manufacturer_id);
+       }
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_query_base_addr + F01_BUID_ID_OFFSET,
+                       rmi->build_id,
+                       sizeof(rmi->build_id));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to read. error = %d\n",
+                       __func__, __LINE__, retval);
+               return retval;
+       }
+
+       memset(rmi4_data->intr_mask, 0x00, sizeof(rmi4_data->intr_mask));
+
+       /*
+        * Map out the interrupt bit masks for the interrupt sources
+        * from the registered function handlers.
+        */
+       if (!list_empty(&rmi->support_fn_list)) {
+               list_for_each_entry(fhandler, &rmi->support_fn_list, link) {
+                       if (fhandler->num_of_data_sources) {
+                               rmi4_data->intr_mask[fhandler->intr_reg_num] |=
+                                       fhandler->intr_mask;
+                       }
+
+                       /* To display each fhandler data */
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: F%02x : NUM_SOURCE[VER:%02X, NUM:%02X] NUM_INT_REG[%02X] INT_MASK[%02X]\n",
+                               __func__, fhandler->fn_number,
+                               (fhandler->num_of_data_sources & 0xF0) >> 4, fhandler->num_of_data_sources & MASK_3BIT,
+                               fhandler->intr_reg_num, fhandler->intr_mask);
+               }
+       }
+
+       /* Enable the interrupt sources */
+       for (ii = 0; ii < rmi4_data->num_of_intr_regs; ii++) {
+               if (rmi4_data->intr_mask[ii] != 0x00) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: Interrupt enable[%d] = 0x%02x\n",
+                                       __func__, ii, rmi4_data->intr_mask[ii]);
+                       intr_addr = rmi4_data->f01_ctrl_base_addr + 1 + ii;
+                       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                                       intr_addr,
+                                       &(rmi4_data->intr_mask[ii]),
+                                       sizeof(rmi4_data->intr_mask[ii]));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               return retval;
+                       }
+               }
+       }
+
+       synaptics_rmi4_set_configured(rmi4_data);
+
+       return 0;
+}
+
+static void synaptics_rmi4_release_support_fn(struct synaptics_rmi4_data *rmi4_data)
+{
+       struct synaptics_rmi4_fn *fhandler, *n;
+       struct synaptics_rmi4_device_info *rmi;
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       if (list_empty(&rmi->support_fn_list)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: support_fn_list is empty\n",
+                               __func__);
+               return;
+       }
+
+       list_for_each_entry_safe(fhandler, n, &rmi->support_fn_list, link) {
+               tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: fn_number = %x\n",
+                               __func__, fhandler->fn_number);
+
+               synaptics_rmi4_free_fh(rmi4_data, fhandler);
+       }
+}
+
+#ifdef SIDE_TOUCH
+static void synaptics_rmi4_set_side_btns(struct synaptics_rmi4_data *rmi4_data)
+{
+       int button;
+
+       for (button = 0; button < MAX_SIDE_BUTTONS; button++)
+               set_bit(KEY_SIDE_TOUCH_0 + button, rmi4_data->input_dev->keybit);
+
+       return;
+}
+#endif
+
+static int synaptics_rmi4_set_input_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char ii;
+       struct synaptics_rmi4_f1a_handle *f1a;
+       struct synaptics_rmi4_fn *fhandler;
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       rmi4_data->input_dev = input_allocate_device();
+       if (rmi4_data->input_dev == NULL) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to allocate input device\n",
+                               __func__);
+               retval = -ENOMEM;
+               goto err_input_device;
+       }
+
+       rmi4_data->input_dev->name = "sec_touchscreen";
+       rmi4_data->input_dev->id.bustype = BUS_I2C;
+       rmi4_data->input_dev->dev.parent = &rmi4_data->i2c_client->dev;
+       rmi4_data->input_dev->open = synaptics_rmi4_input_open;
+       rmi4_data->input_dev->close = synaptics_rmi4_input_close;
+
+       input_set_drvdata(rmi4_data->input_dev, rmi4_data);
+#ifdef GLOVE_MODE
+       input_set_capability(rmi4_data->input_dev, EV_SW, SW_GLOVE);
+#endif
+       set_bit(EV_SYN, rmi4_data->input_dev->evbit);
+       set_bit(EV_KEY, rmi4_data->input_dev->evbit);
+       set_bit(EV_ABS, rmi4_data->input_dev->evbit);
+       set_bit(BTN_TOUCH, rmi4_data->input_dev->keybit);
+       set_bit(BTN_TOOL_FINGER, rmi4_data->input_dev->keybit);
+#ifdef TSP_BOOSTER
+       set_bit(KEY_BOOSTER_TOUCH, rmi4_data->input_dev->keybit);
+#endif
+
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_POSITION_X, 0,
+                       rmi4_data->sensor_max_x, 0, 0);
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_POSITION_Y, 0,
+                       rmi4_data->sensor_max_y, 0, 0);
+#ifdef REPORT_2D_W
+#ifdef EDGE_SWIPE
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_TOUCH_MAJOR, 0,
+                       EDGE_SWIPE_WIDTH_MAX, 0, 0);
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_TOUCH_MINOR, 0,
+                       EDGE_SWIPE_WIDTH_MAX, 0, 0);
+#else
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_TOUCH_MAJOR, 0,
+                       rmi4_data->max_touch_width, 0, 0);
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_TOUCH_MINOR, 0,
+                       rmi4_data->max_touch_width, 0, 0);
+#endif
+#ifdef REPORT_ORIENTATION
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_ORIENTATION, 0, 1, 0, 0);
+#endif
+#endif
+#ifdef USE_STYLUS
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_TOOL_TYPE, 0, MT_TOOL_MAX, 0, 0);
+#endif
+#ifdef PROXIMITY_MODE
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_DISTANCE, 0,
+                       HOVER_Z_MAX, 0, 0);
+#ifdef EDGE_SWIPE
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_SUMSIZE, 0,
+                       EDGE_SWIPE_SUMSIZE_MAX, 0, 0);
+       input_set_abs_params(rmi4_data->input_dev,
+                       ABS_MT_PALM, 0,
+                       EDGE_SWIPE_PALM_MAX, 0, 0);
+#endif
+       setup_timer(&rmi4_data->f51_finger_timer,
+                       synaptics_rmi4_f51_finger_timer,
+                       (unsigned long)rmi4_data);
+#endif
+
+       retval = input_mt_init_slots(rmi4_data->input_dev,
+                       rmi4_data->num_of_fingers, INPUT_MT_DIRECT);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to input_mt_init_slots - num_of_fingers:%d, retval:%d\n",
+                               __func__, rmi4_data->num_of_fingers, retval);
+       }
+
+       f1a = NULL;
+       if (!list_empty(&rmi->support_fn_list)) {
+               list_for_each_entry(fhandler, &rmi->support_fn_list, link) {
+                       if (fhandler->fn_number == SYNAPTICS_RMI4_F1A)
+                               f1a = fhandler->data;
+               }
+       }
+
+       if (f1a) {
+               for (ii = 0; ii < f1a->valid_button_count; ii++) {
+                       set_bit(f1a->button_map[ii],
+                                       rmi4_data->input_dev->keybit);
+                       input_set_capability(rmi4_data->input_dev,
+                                       EV_KEY, f1a->button_map[ii]);
+               }
+       }
+
+#ifdef SIDE_TOUCH
+       synaptics_rmi4_set_side_btns(rmi4_data);
+#endif
+
+       retval = input_register_device(rmi4_data->input_dev);
+       if (retval) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to register input device\n",
+                               __func__);
+               goto err_register_input;
+       }
+
+       return 0;
+
+err_register_input:
+       input_free_device(rmi4_data->input_dev);
+
+err_input_device:
+       return retval;
+}
+
+static int synaptics_rmi4_reinit_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+       unsigned char ii = 0;
+       unsigned short intr_addr;
+       struct synaptics_rmi4_fn *fhandler;
+       struct synaptics_rmi4_device_info *rmi;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+
+       mutex_lock(&(rmi4_data->rmi4_reset_mutex));
+
+       if (list_empty(&rmi->support_fn_list)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Support function list is empty!!\n",
+                               __func__);
+               retval = -EINVAL;
+               goto exit;
+       }
+
+       list_for_each_entry(fhandler, &rmi->support_fn_list, link) {
+               if (fhandler->fn_number == SYNAPTICS_RMI4_F12) {
+                       retval = synaptics_rmi4_f12_set_init(rmi4_data);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to initialize F12 = %d\n",
+                                       __func__, retval);
+                               goto exit;
+                       }
+               }
+#ifdef CONFIG_SEC_FACTORY
+               /* Read firmware version from IC when every power up IC.
+                * During Factory process touch panel can be changed manually.
+                */
+               if (fhandler->fn_number == SYNAPTICS_RMI4_F34) {
+                       retval = synaptics_rmi4_f34_read_version(rmi4_data, fhandler);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to read version error = %d\n",
+                                       __func__, retval);
+                               goto exit;
+                       }
+               }
+#endif
+#ifdef PROXIMITY_MODE
+               if (fhandler->fn_number == SYNAPTICS_RMI4_F51) {
+                       retval = synaptics_rmi4_f51_set_init(rmi4_data);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to initialize F51 = %d\n",
+                                       __func__, retval);
+                               goto exit;
+                       }
+               }
+#endif
+       }
+
+       for (ii = 0; ii < rmi4_data->num_of_intr_regs; ii++) {
+               if (rmi4_data->intr_mask[ii] != 0x00) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Interrupt enable mask register[%d] = 0x%02x\n",
+                                       __func__, ii, rmi4_data->intr_mask[ii]);
+                       intr_addr = rmi4_data->f01_ctrl_base_addr + 1 + ii;
+                       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                                       intr_addr,
+                                       &(rmi4_data->intr_mask[ii]),
+                                       sizeof(rmi4_data->intr_mask[ii]));
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s, %4d: Failed to write. error = %d\n",
+                                       __func__, __LINE__, retval);
+                               goto exit;
+                       }
+               }
+       }
+
+       synaptics_rmi4_set_configured(rmi4_data);
+
+exit:
+       mutex_unlock(&(rmi4_data->rmi4_reset_mutex));
+       return retval;
+}
+
+static int synaptics_rmi4_reset_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char command = 0x01;
+       struct synaptics_rmi4_device_info *rmi = &(rmi4_data->rmi4_mod_info);
+       struct synaptics_rmi4_exp_fn *exp_fhandler = NULL;
+
+       mutex_lock(&(rmi4_data->rmi4_reset_mutex));
+
+       disable_irq(rmi4_data->i2c_client->irq);
+
+       synpatics_rmi4_release_all_event(rmi4_data, RELEASE_TYPE_ALL);
+
+       if (!rmi4_data->stay_awake) {
+               retval = synaptics_rmi4_i2c_write(rmi4_data,
+                               rmi4_data->f01_cmd_base_addr,
+                               &command,
+                               sizeof(command));
+               if (retval < 0) {
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to issue reset command, error = %d\n",
+                                       __func__, retval);
+                       goto out;
+               }
+
+               msleep(SYNAPTICS_HW_RESET_TIME);
+       } else {
+               rmi4_data->board->power(rmi4_data, false);
+               msleep(30);
+               rmi4_data->board->power(rmi4_data, true);
+               rmi4_data->current_page = MASK_8BIT;
+
+               msleep(SYNAPTICS_HW_RESET_TIME);
+
+               if (!list_empty(&rmi->exp_fn_list)) {
+                       list_for_each_entry(exp_fhandler, &rmi->exp_fn_list, link) {
+                               if (exp_fhandler->initialized && (exp_fhandler->func_reinit != NULL)) {
+                                       exp_fhandler->func_reinit(rmi4_data);
+                                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: %d exp fun re_init\n",
+                                               __func__, exp_fhandler->fn_type);
+                               }
+                       }
+               }
+       }
+
+       synaptics_rmi4_release_support_fn(rmi4_data);
+       retval = synaptics_rmi4_query_device(rmi4_data);
+
+       if (retval < 0)
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to query device\n",
+                               __func__);
+
+out:
+       enable_irq(rmi4_data->i2c_client->irq);
+       mutex_unlock(&(rmi4_data->rmi4_reset_mutex));
+
+       return 0;
+}
+
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+static void synaptics_charger_conn(struct synaptics_rmi4_data *rmi4_data,
+               int ta_status)
+{
+       int retval;
+       unsigned char charger_connected;
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &charger_connected,
+                       sizeof(charger_connected));
+       if (retval < 0) {
+               tsp_debug_err(true, &(rmi4_data->input_dev->dev),
+                               "%s: Failed to set configured\n",
+                               __func__);
+               return;
+       }
+
+       if (ta_status == 0x01 || ta_status == 0x03)
+               charger_connected |= CHARGER_CONNECTED;
+       else
+               charger_connected &= ~(CHARGER_CONNECTED);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &charger_connected,
+                       sizeof(charger_connected));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &(rmi4_data->input_dev->dev),
+                               "%s: Failed to set configured\n",
+                               __func__);
+       }
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+               "%s: device_control : 0x%x, ta_status : %x\n",
+               __func__, charger_connected, ta_status);
+}
+
+static void synaptics_ta_cb(struct synaptics_rmi_callbacks *cb, int ta_status)
+{
+       struct synaptics_rmi4_data *rmi4_data =
+                       container_of(cb, struct synaptics_rmi4_data, callbacks);
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev,
+               "%s: ta_status : %x\n", __func__, ta_status);
+
+       rmi4_data->ta_status = ta_status;
+
+       /* if do not completed driver loading, ta_cb will not run. */
+       if (!rmi4_data->init_done.done) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: until driver loading done.\n",
+                       __func__);
+               return;
+       }
+       if (rmi4_data->touch_stopped || rmi4_data->doing_reflash) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: device is in suspend state or reflash.\n",
+                       __func__);
+               return;
+       }
+
+       if (pdata->charger_noti_type)
+               synaptics_charger_conn(rmi4_data, ta_status);
+}
+#endif
+
+#ifdef PROXIMITY_MODE
+static void synaptics_rmi4_f51_finger_timer(unsigned long data)
+{
+       struct synaptics_rmi4_data *rmi4_data =
+               (struct synaptics_rmi4_data *)data;
+
+       if (rmi4_data->f51_finger) {
+               rmi4_data->f51_finger = false;
+               mod_timer(&rmi4_data->f51_finger_timer,
+                               jiffies + msecs_to_jiffies(F51_FINGER_TIMEOUT));
+               return;
+       }
+
+       if (!rmi4_data->fingers_on_2d) {
+               input_mt_slot(rmi4_data->input_dev, 0);
+               input_mt_report_slot_state(rmi4_data->input_dev,
+                               MT_TOOL_FINGER, 0);
+               input_report_key(rmi4_data->input_dev,
+                               BTN_TOUCH, 0);
+               input_report_key(rmi4_data->input_dev,
+                               BTN_TOOL_FINGER, 0);
+               input_sync(rmi4_data->input_dev);
+#ifdef DEBUG_HOVER
+               if (rmi4_data->f51->finger_is_hover) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "Hover[OUT][Timer]\n");
+                       rmi4_data->f51->finger_is_hover = false;
+               }
+#endif
+       }
+
+       return;
+}
+#endif
+
+static void synaptics_rmi4_remove_exp_fn(struct synaptics_rmi4_data *rmi4_data)
+{
+       struct synaptics_rmi4_exp_fn *exp_fhandler, *n;
+       struct synaptics_rmi4_device_info *rmi = &(rmi4_data->rmi4_mod_info);
+
+       if (list_empty(&rmi->exp_fn_list)) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: exp_fn_list empty\n",
+                               __func__);
+               return;
+       }
+
+       list_for_each_entry_safe(exp_fhandler, n, &rmi->exp_fn_list, link) {
+               if (exp_fhandler->initialized &&
+                               (exp_fhandler->func_remove != NULL)) {
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: [%d]\n",
+                               __func__, exp_fhandler->fn_type);
+                       exp_fhandler->func_remove(rmi4_data);
+               }
+               list_del(&exp_fhandler->link);
+               kfree(exp_fhandler);
+       }
+}
+
+static int synaptics_rmi4_init_exp_fn(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       struct synaptics_rmi4_exp_fn *exp_fhandler;
+       struct synaptics_rmi4_device_info *rmi = &(rmi4_data->rmi4_mod_info);
+
+       INIT_LIST_HEAD(&rmi->exp_fn_list);
+
+       retval = rmidev_module_register(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to register rmidev module\n",
+                               __func__);
+               goto error_exit;
+       }
+
+       retval = rmi4_f54_module_register(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to register f54 module\n",
+                               __func__);
+               goto error_exit;
+       }
+
+       retval = rmi4_fw_update_module_register(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to register fw update module\n",
+                               __func__);
+               goto error_exit;
+       }
+
+#ifdef USE_GUEST_THREAD
+       retval = rmi_guest_module_register(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to register guest module\n",
+                               __func__);
+               goto error_exit;
+       }
+#endif
+
+       if (list_empty(&rmi->exp_fn_list))
+               return -ENODEV;
+
+       list_for_each_entry(exp_fhandler, &rmi->exp_fn_list, link) {
+               if (exp_fhandler->initialized) {
+                       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s: [%d] is already initialzied.\n",
+                                       __func__, exp_fhandler->fn_type);
+                       continue;
+               }
+               if (exp_fhandler->func_init != NULL) {
+                       retval = exp_fhandler->func_init(rmi4_data);
+                       if (retval < 0) {
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to init exp [%d] fn\n",
+                                               __func__, exp_fhandler->fn_type);
+                               goto error_exit;
+                       } else {
+                               exp_fhandler->initialized = true;
+                       }
+
+                       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s: run [%d]'s init function\n",
+                                               __func__, exp_fhandler->fn_type);
+               }
+       }
+       return 0;
+
+error_exit:
+       synaptics_rmi4_remove_exp_fn(rmi4_data);
+
+       return retval;
+}
+
+/**
+ * synaptics_rmi4_new_function()
+ *
+ * Called by other expansion Function modules in their module init and
+ * module exit functions.
+ *
+ * This function is used by other expansion Function modules such as
+ * rmi_dev to register themselves with the driver by providing their
+ * initialization and removal callback function pointers so that they
+ * can be inserted or removed dynamically at module init and exit times,
+ * respectively.
+ */
+int synaptics_rmi4_new_function(enum exp_fn fn_type,
+               struct synaptics_rmi4_data *rmi4_data,
+               int (*func_init)(struct synaptics_rmi4_data *rmi4_data),
+               int (*func_reinit)(struct synaptics_rmi4_data *rmi4_data),
+               void (*func_remove)(struct synaptics_rmi4_data *rmi4_data),
+               void (*func_attn)(struct synaptics_rmi4_data *rmi4_data, unsigned char intr_mask))
+{
+       struct synaptics_rmi4_exp_fn *exp_fhandler;
+       struct synaptics_rmi4_device_info *rmi = &(rmi4_data->rmi4_mod_info);
+
+       exp_fhandler = kzalloc(sizeof(*exp_fhandler), GFP_KERNEL);
+
+       if (!exp_fhandler) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to alloc mem for expansion function\\n",
+                                               __func__);
+               return -ENOMEM;
+       }
+       exp_fhandler->fn_type = fn_type;
+       exp_fhandler->func_init = func_init;
+       exp_fhandler->func_reinit = func_reinit;
+       exp_fhandler->func_attn = func_attn;
+       exp_fhandler->func_remove = func_remove;
+       list_add_tail(&exp_fhandler->link, &rmi->exp_fn_list);
+
+       return 0;
+}
+
+#ifdef CONFIG_OF
+static int synaptics_power_ctrl(void *data, bool on)
+{
+       struct synaptics_rmi4_data *rmi4_data = (struct synaptics_rmi4_data *)data;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+       struct device *dev = &rmi4_data->i2c_client->dev;
+       /* struct regulator *regulator_avdd; */
+       struct pinctrl *pinctrl_irq;
+       static bool enabled;
+       int retval = 0;
+
+       if (enabled == on)
+               return retval;
+
+       /*
+       regulator_avdd = regulator_get(NULL, pdata->regulator_avdd);
+       if (IS_ERR(regulator_avdd)) {
+               tsp_debug_err(true, dev, "%s: Failed to get %s regulator.\n",
+                        __func__, pdata->regulator_avdd);
+               return PTR_ERR(regulator_avdd);
+       }
+       */
+       tsp_debug_info(true, dev, "%s: %s\n", __func__, on ? "on" : "off");
+
+       if (on) {
+               retval = regulator_enable(pdata->regul_dvdd);
+               if (retval) {
+                       tsp_debug_err(true, dev, "%s: Failed to enable vdd: %d\n", __func__, retval);
+                       return retval;
+               }
+               /*
+               retval = regulator_enable(regulator_avdd);
+               if (retval) {
+                       tsp_debug_err(true, dev, "%s: Failed to enable avdd: %d\n", __func__, retval);
+                       return retval;
+               }
+               */
+               if (IS_ERR(pinctrl_irq))
+                       tsp_debug_err(true, dev, "%s: Failed to configure tsp_attn pin\n", __func__);
+
+               pinctrl_irq = devm_pinctrl_get_select(dev, "on_state");
+               if (IS_ERR(pinctrl_irq))
+                       tsp_debug_err(true, dev, "%s: Failed to configure tsp_attn pin\n", __func__);
+
+       } else {
+               regulator_disable(pdata->regul_dvdd);
+               /*
+               if (regulator_is_enabled(regulator_avdd))
+                       regulator_disable(regulator_avdd);
+               */
+               pinctrl_irq = devm_pinctrl_get_select(dev, "off_state");
+               if (IS_ERR(pinctrl_irq))
+                       tsp_debug_err(true, dev, "%s: Failed to configure tsp_attn pin\n", __func__);
+       }
+
+       enabled = on;
+       /* regulator_put(regulator_avdd); */
+
+       return retval;
+}
+
+static int synaptics_parse_dt(struct i2c_client *client)
+{
+       struct device *dev = &client->dev;
+       struct synaptics_rmi4_platform_data *pdata = dev->platform_data;
+       struct device_node *np = dev->of_node;
+       u32 coords[2], lines[2];
+       int retval = 0;
+
+       pdata->gpio = of_get_named_gpio(np, "synaptics,irq_gpio", 0);
+       if (gpio_is_valid(pdata->gpio)) {
+               retval = gpio_request_one(pdata->gpio, GPIOF_DIR_IN, "synaptics,tsp_int");
+               if (retval) {
+                       tsp_debug_err(true, dev, "Unable to request tsp_int [%d]\n", pdata->gpio);
+                       return -EINVAL;
+               }
+       } else {
+               tsp_debug_err(true, dev, "Failed to get irq gpio\n");
+               return -EINVAL;
+       }
+       client->irq = gpio_to_irq(pdata->gpio);
+
+       if (of_property_read_u32(np, "synaptics,irq_type", &pdata->irq_type)) {
+               tsp_debug_err(true, dev, "Failed to get irq_type property\n");
+               return -EINVAL;
+       }
+
+       if (of_property_read_u32_array(np, "synaptics,max_coords", coords, 2)) {
+               tsp_debug_err(true, dev, "Failed to get max_coords property\n");
+               return -EINVAL;
+       }
+       pdata->sensor_max_x = coords[0];
+       pdata->sensor_max_y = coords[1];
+
+       if (of_property_read_u32_array(np, "synaptics,num_lines", lines, 2)) {
+               tsp_debug_err(true, dev, "Failed to get num_liness property\n");
+               return -EINVAL;
+       }
+       pdata->num_of_rx = lines[0];
+       pdata->num_of_tx = lines[1];
+       pdata->max_touch_width = max(pdata->num_of_rx, pdata->num_of_tx);
+
+       if (of_property_read_string(np, "synaptics,regulator_dvdd", &pdata->regulator_dvdd)) {
+               tsp_debug_err(true, dev, "Failed to get regulator_dvdd name property\n");
+               return -EINVAL;
+       }
+       /*
+       if (of_property_read_string(np, "synaptics,regulator_avdd", &pdata->regulator_avdd)) {
+               tsp_debug_err(true, dev, "Failed to get regulator_avdd name property\n");
+               return -EINVAL;
+       }
+       */
+       pdata->power = synaptics_power_ctrl;
+
+       pdata->regul_dvdd = regulator_get(dev, pdata->regulator_dvdd);
+       if (IS_ERR(pdata->regul_dvdd)) {
+               tsp_debug_err(true, dev, "%s: Failed to get %s regulator.\n",
+                        __func__, pdata->regulator_dvdd);
+               return PTR_ERR(pdata->regul_dvdd);
+       }
+
+       /* Optional parmeters(those values are not mandatory)
+        * do not return error value even if fail to get the value
+        */
+       of_property_read_string(np, "synaptics,firmware_name", &pdata->firmware_name);
+
+       if (of_property_read_string_index(np, "synaptics,project_name", 0, &pdata->project_name))
+               tsp_debug_err(true, dev, "Failed to get project_name property\n");
+       if (of_property_read_string_index(np, "synaptics,project_name", 1, &pdata->model_name))
+               tsp_debug_err(true, dev, "Failed to get model_name property\n");
+
+       tsp_debug_dbg(false, dev, "irq :%d, irq_type: 0x%04x, sensor_max[x,y]: [%d,%d], num_of[rx,tx]: [%d,%d], max_width: %d, project/model_name: %s/%s\n",
+                       pdata->gpio, pdata->irq_type, pdata->sensor_max_x, pdata->sensor_max_y,
+                       pdata->num_of_rx, pdata->num_of_tx, pdata->max_touch_width,
+                       pdata->project_name, pdata->model_name);
+
+       return retval;
+}
+#endif
+
+static int synaptics_rmi4_setup_drv_data(struct i2c_client *client)
+{
+       int retval = 0;
+       struct synaptics_rmi4_platform_data *pdata;
+       struct synaptics_rmi4_data *rmi4_data;
+
+       /* parse dt */
+       if (client->dev.of_node) {
+               pdata = devm_kzalloc(&client->dev,
+                       sizeof(struct synaptics_rmi4_platform_data), GFP_KERNEL);
+
+               if (!pdata) {
+                       tsp_debug_err(true, &client->dev, "Failed to allocate platform data\n");
+                       return -ENOMEM;
+               }
+
+               client->dev.platform_data = pdata;
+               retval = synaptics_parse_dt(client);
+               if (retval) {
+                       tsp_debug_err(true, &client->dev, "Failed to parse dt\n");
+                       return retval;
+               }
+       } else {
+               pdata = client->dev.platform_data;
+       }
+
+       if (!pdata) {
+               tsp_debug_err(true, &client->dev, "No platform data found\n");
+                       return -EINVAL;
+       }
+       if (!pdata->power) {
+               tsp_debug_err(true, &client->dev, "No power contorl found\n");
+                       return -EINVAL;
+       }
+
+       rmi4_data = kzalloc(sizeof(struct synaptics_rmi4_data), GFP_KERNEL);
+       if (!rmi4_data) {
+               tsp_debug_err(true, &client->dev,
+                               "%s: Failed to alloc mem for rmi4_data\n",
+                               __func__);
+               return -ENOMEM;
+       }
+
+       rmi4_data->i2c_client = client;
+       rmi4_data->current_page = MASK_8BIT;
+       rmi4_data->board = pdata;
+       rmi4_data->touch_stopped = false;
+       rmi4_data->sensor_sleep = false;
+       rmi4_data->irq_enabled = false;
+       rmi4_data->tsp_probe = false;
+       rmi4_data->rebootcount = 0;
+       rmi4_data->panel_revision = rmi4_data->board->panel_revision;
+       rmi4_data->i2c_read = synaptics_rmi4_i2c_read;
+       rmi4_data->i2c_write = synaptics_rmi4_i2c_write;
+       rmi4_data->irq_enable = synaptics_rmi4_irq_enable;
+       rmi4_data->reset_device = synaptics_rmi4_reset_device;
+       rmi4_data->stop_device = synaptics_rmi4_stop_device;
+       rmi4_data->start_device = synaptics_rmi4_start_device;
+#ifdef USE_SENSOR_SLEEP
+       rmi4_data->sleep_device = synaptics_rmi4_sensor_sleep;
+       rmi4_data->wake_device = synaptics_rmi4_sensor_wake;
+#endif
+       rmi4_data->irq = rmi4_data->i2c_client->irq;
+
+       /* To prevent input device is set up with defective values */
+       rmi4_data->sensor_max_x = rmi4_data->board->sensor_max_x;
+       rmi4_data->sensor_max_y = rmi4_data->board->sensor_max_y;
+       rmi4_data->num_of_rx = rmi4_data->board->num_of_rx;
+       rmi4_data->num_of_tx = rmi4_data->board->num_of_tx;
+       rmi4_data->max_touch_width = max(rmi4_data->num_of_rx,
+                       rmi4_data->num_of_tx);
+       rmi4_data->num_of_fingers = MAX_NUMBER_OF_FINGERS;
+
+       mutex_init(&(rmi4_data->rmi4_io_ctrl_mutex));
+       mutex_init(&(rmi4_data->rmi4_reset_mutex));
+       mutex_init(&(rmi4_data->rmi4_reflash_mutex));
+       mutex_init(&(rmi4_data->rmi4_device_mutex));
+       init_completion(&rmi4_data->init_done);
+
+#ifdef USE_CUSTOM_REZERO
+       INIT_DELAYED_WORK(&rmi4_data->rezero_work, synaptics_rmi4_rezero_work);
+#endif
+
+       i2c_set_clientdata(client, rmi4_data);
+
+       if (pdata->get_ddi_type) {
+               rmi4_data->ddi_type = pdata->get_ddi_type();
+               tsp_debug_info(true, &client->dev, "%s: DDI Type is %s[%d]\n",
+                       __func__, rmi4_data->ddi_type ? "MAGNA" : "SDC", rmi4_data->ddi_type);
+       }
+
+       return retval;
+}
+
+/**
+ * synaptics_rmi4_probe()
+ *
+ * Called by the kernel when an association with an I2C device of the
+ * same name is made (after doing i2c_add_driver).
+ *
+ * This funtion allocates and initializes the resources for the driver
+ * as an input driver, turns on the power to the sensor, queries the
+ * sensor for its supported Functions and characteristics, registers
+ * the driver to the input subsystem, sets up the interrupt, handles
+ * the registration of the early_suspend and late_resume functions,
+ * and creates a work queue for detection of other expansion Function
+ * modules.
+ */
+static int synaptics_rmi4_probe(struct i2c_client *client,
+               const struct i2c_device_id *dev_id)
+{
+       int retval;
+       unsigned char attr_count;
+       struct synaptics_rmi4_data *rmi4_data = NULL;
+
+       /* Build up driver data */
+       retval = synaptics_rmi4_setup_drv_data(client);
+       if (retval < 0) {
+               tsp_debug_err(true, &client->dev, "%s: Failed to set up driver data\n", __func__);
+               goto err_setup_drv_data;
+       }
+
+       rmi4_data = (struct synaptics_rmi4_data *)i2c_get_clientdata(client);
+       if (!rmi4_data) {
+               tsp_debug_err(true, &client->dev, "%s: Failed to get driver data\n", __func__);
+               goto err_get_drv_data;
+       }
+
+       INIT_DELAYED_WORK(&rmi4_data->work_init_irq, late_enable_irq);
+
+err_tsp_reboot:
+       rmi4_data->board->power(rmi4_data, true);
+       msleep(SYNAPTICS_POWER_MARGIN_TIME);
+
+       if (rmi4_data->rebootcount)
+               synaptics_rmi4_release_support_fn(rmi4_data);
+
+       /* Query device infomations */
+       retval = synaptics_rmi4_query_device(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to query device\n", __func__);
+
+               /* Protection code */
+               if ((retval == TSP_NEEDTO_REBOOT) && (rmi4_data->rebootcount < MAX_TSP_REBOOT)) {
+                       rmi4_data->board->power(rmi4_data, false);
+                       msleep(SYNAPTICS_POWER_MARGIN_TIME);
+                       msleep(SYNAPTICS_POWER_MARGIN_TIME);
+                       rmi4_data->rebootcount++;
+                       synaptics_rmi4_release_support_fn(rmi4_data);
+
+                       tsp_debug_err(true, &client->dev, "%s: reboot sequence by i2c fail\n", __func__);
+                       goto err_tsp_reboot;
+               } else {
+                       goto err_query_device;
+               }
+       }
+
+       /* Set up input device */
+       retval = synaptics_rmi4_set_input_device(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &client->dev, "%s: Failed to set up input device\n",
+                               __func__);
+                       goto err_set_input_device;
+       }
+
+       /* Set up expanded function list */
+       retval = synaptics_rmi4_init_exp_fn(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &client->dev, "%s: Failed to initialize expandered functions\n",
+                               __func__);
+               goto err_init_exp_fn;
+       }
+
+       pr_info("%s schdule delayed work for irq at probe\n",__func__);
+       schedule_delayed_work(&rmi4_data->work_init_irq, 4500);
+#if 0
+       /* Enable attn pin */
+       retval = synaptics_rmi4_irq_enable(rmi4_data, true);
+       if (retval < 0) {
+               tsp_debug_err(true, &client->dev, "%s: Failed to enable attention interrupt\n",
+                               __func__);
+               goto err_enable_irq;
+       }
+#endif
+
+       /* Creat sysfs files */
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               retval = sysfs_create_file(&rmi4_data->input_dev->dev.kobj,
+                               &attrs[attr_count].attr);
+               if (retval < 0) {
+                       tsp_debug_err(true, &client->dev, "%s: Failed to create sysfs attributes\n",
+                                       __func__);
+                       goto err_sysfs;
+               }
+       }
+
+       /* Update firmware on probe */
+       /*
+       retval = synaptics_rmi4_fw_update_on_probe(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s: Failed to firmware update\n",
+                                       __func__);
+               goto err_fw_update;
+       }
+       */
+#ifdef CONFIG_HAS_EARLYSUSPEND
+       rmi4_data->early_suspend.level = EARLY_SUSPEND_LEVEL_BLANK_SCREEN - 1;
+       rmi4_data->early_suspend.suspend = synaptics_rmi4_early_suspend;
+       rmi4_data->early_suspend.resume = synaptics_rmi4_late_resume;
+       register_early_suspend(&rmi4_data->early_suspend);
+#endif
+
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+       rmi4_data->register_cb = synaptics_tsp_register_callback;
+
+       rmi4_data->callbacks.inform_charger = synaptics_ta_cb;
+       if (rmi4_data->register_cb) {
+               tsp_debug_err(true, &client->dev, "Register TA Callback\n");
+               rmi4_data->register_cb(&rmi4_data->callbacks);
+       }
+#endif
+       /* for blocking to be excuted open function until probing */
+       rmi4_data->tsp_probe = true;
+
+       /* it will be started by input reader */
+       synaptics_rmi4_stop_device(rmi4_data);
+
+       complete_all(&rmi4_data->init_done);
+
+       dev_info(&rmi4_data->i2c_client->dev, "%s: done\n", __func__);
+       return retval;
+
+/* err_fw_update: */
+err_sysfs:
+       if (attr_count > 0) {
+               for (; attr_count > 0; attr_count--) {
+                       sysfs_remove_file(&rmi4_data->input_dev->dev.kobj,
+                                       &attrs[attr_count - 1].attr);
+               }
+       }
+       synaptics_rmi4_irq_enable(rmi4_data, false);
+
+err_init_exp_fn:
+       input_unregister_device(rmi4_data->input_dev);
+       input_free_device(rmi4_data->input_dev);
+       rmi4_data->input_dev = NULL;
+
+err_set_input_device:
+err_query_device:
+       synaptics_rmi4_release_support_fn(rmi4_data);
+       rmi4_data->board->power(rmi4_data, false);
+       complete_all(&rmi4_data->init_done);
+
+err_get_drv_data:
+err_setup_drv_data:
+       kfree(rmi4_data);
+
+       return retval;
+}
+
+#ifdef USE_SHUTDOWN_CB
+static void synaptics_rmi4_shutdown(struct i2c_client *client)
+{
+       struct synaptics_rmi4_data *rmi4_data = i2c_get_clientdata(client);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+       synaptics_rmi4_stop_device(rmi4_data);
+}
+#endif
+
+/**
+ * synaptics_rmi4_remove()
+ *
+ * Called by the kernel when the association with an I2C device of the
+ * same name is broken (when the driver is unloaded).
+ *
+ * This funtion terminates the work queue, stops sensor data acquisition,
+ * frees the interrupt, unregisters the driver from the input subsystem,
+ * turns off the power to the sensor, and frees other allocated resources.
+ */
+static int synaptics_rmi4_remove(struct i2c_client *client)
+{
+       unsigned char attr_count;
+       struct synaptics_rmi4_data *rmi4_data = i2c_get_clientdata(client);
+       struct synaptics_rmi4_device_info *rmi;
+       struct device *dev = &client->dev;
+       struct synaptics_rmi4_platform_data *pdata = dev->platform_data;
+
+       rmi = &(rmi4_data->rmi4_mod_info);
+#ifdef CONFIG_HAS_EARLYSUSPEND
+       unregister_early_suspend(&rmi4_data->early_suspend);
+#endif
+       synaptics_rmi4_irq_enable(rmi4_data, false);
+
+       for (attr_count = 0; attr_count < ARRAY_SIZE(attrs); attr_count++) {
+               sysfs_remove_file(&rmi4_data->input_dev->dev.kobj,
+                               &attrs[attr_count].attr);
+       }
+
+       input_unregister_device(rmi4_data->input_dev);
+
+       synaptics_rmi4_remove_exp_fn(rmi4_data);
+
+       rmi4_data->board->power(rmi4_data, false);
+       rmi4_data->touch_stopped = true;
+
+       regulator_put(pdata->regul_dvdd);
+
+       synaptics_rmi4_release_support_fn(rmi4_data);
+
+       input_free_device(rmi4_data->input_dev);
+
+       kfree(rmi4_data);
+
+       return 0;
+}
+
+#ifdef USE_SENSOR_SLEEP
+/**
+ * synaptics_rmi4_sensor_sleep()
+ *
+ * Called by synaptics_rmi4_early_suspend() and synaptics_rmi4_suspend().
+ *
+ * This function stops finger data acquisition and puts the sensor to sleep.
+ */
+static void synaptics_rmi4_sensor_sleep(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char device_ctrl;
+       struct pinctrl *pinctrl_sleep;
+
+       mutex_lock(&rmi4_data->rmi4_device_mutex);
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s, from %s\n",
+                       __func__, rmi4_data->sensor_sleep ? "Sleep" : "Wake");
+
+#ifdef SIDE_TOUCH
+       retval = synaptics_rmi4_set_sidekey_only_mode(rmi4_data, true);
+       if (retval < 0)
+               goto out;
+#endif
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to enter sleep mode\n",
+                               __func__);
+               rmi4_data->sensor_sleep = false;
+               goto out;
+       }
+
+       device_ctrl = (device_ctrl & ~MASK_3BIT);
+       device_ctrl = (device_ctrl | SENSOR_SLEEP);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to enter sleep mode\n",
+                               __func__);
+               rmi4_data->sensor_sleep = false;
+               goto out;
+       }
+
+       rmi4_data->sensor_sleep = true;
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s : [F01_CTRL] 0x%02X, [F51_CTRL] 0x%02X/0x%02X/0x%02X]\n",
+               __func__, device_ctrl, rmi4_data->f51->proximity_enables, rmi4_data->f51->general_control, rmi4_data->f51->general_control_2);
+
+       msleep(SYNAPTICS_DEEPSLEEP_TIME);
+       synpatics_rmi4_release_all_event(rmi4_data, RELEASE_TYPE_ALL);
+
+       pinctrl_sleep = devm_pinctrl_get_select(&rmi4_data->i2c_client->dev, "sleep_state");
+       if (IS_ERR(pinctrl_sleep))
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "%s: Failed to configure sleep state.\n", __func__);
+
+out:
+       mutex_unlock(&rmi4_data->rmi4_device_mutex);
+
+       return;
+}
+
+/**
+ * synaptics_rmi4_sensor_wake()
+ *
+ * Called by synaptics_rmi4_resume() and synaptics_rmi4_late_resume().
+ *
+ * This function wakes the sensor from sleep.
+ */
+static void synaptics_rmi4_sensor_wake(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval;
+       unsigned char device_ctrl;
+
+       mutex_lock(&rmi4_data->rmi4_device_mutex);
+
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s, from %s\n",
+                       __func__, rmi4_data->sensor_sleep ? "sleep" : "wake");
+
+#ifdef SIDE_TOUCH
+       retval = synaptics_rmi4_set_sidekey_only_mode(rmi4_data, false);
+       if (retval < 0)
+               goto out;
+#endif
+
+       retval = synaptics_rmi4_i2c_read(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to wake from sleep mode\n",
+                               __func__);
+               rmi4_data->sensor_sleep = true;
+               goto out;
+       }
+
+       device_ctrl = (device_ctrl & ~MASK_3BIT);
+       device_ctrl = (device_ctrl | NORMAL_OPERATION);
+
+       retval = synaptics_rmi4_i2c_write(rmi4_data,
+                       rmi4_data->f01_ctrl_base_addr,
+                       &device_ctrl,
+                       sizeof(device_ctrl));
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to wake from sleep mode\n",
+                               __func__);
+               rmi4_data->sensor_sleep = true;
+               goto out;
+       }
+
+       rmi4_data->sensor_sleep = false;
+       tsp_debug_info(true, &rmi4_data->i2c_client->dev, "%s : [F01_CTRL] 0x%02X, [F51_CTRL] 0x%02X/0x%02X/0x%02X]\n",
+               __func__, device_ctrl, rmi4_data->f51->proximity_enables, rmi4_data->f51->general_control, rmi4_data->f51->general_control_2);
+out:
+       mutex_unlock(&rmi4_data->rmi4_device_mutex);
+
+       return;
+}
+#endif
+
+static int synaptics_rmi4_stop_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       mutex_lock(&rmi4_data->rmi4_device_mutex);
+
+       if (rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s already power off\n",
+                       __func__);
+               goto out;
+       }
+
+       disable_irq(rmi4_data->i2c_client->irq);
+//     cancel_delayed_work(&rmi4_data->work_init_irq);
+
+       synpatics_rmi4_release_all_event(rmi4_data, RELEASE_TYPE_ALL);
+
+       rmi4_data->touch_stopped = true;
+       pdata->power(rmi4_data, false);
+
+       if (pdata->enable_sync)
+               pdata->enable_sync(false);
+
+       tsp_debug_dbg(true, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+out:
+       mutex_unlock(&rmi4_data->rmi4_device_mutex);
+       return 0;
+}
+
+static int synaptics_rmi4_start_device(struct synaptics_rmi4_data *rmi4_data)
+{
+       int retval = 0;
+       const struct synaptics_rmi4_platform_data *pdata = rmi4_data->board;
+
+       mutex_lock(&rmi4_data->rmi4_device_mutex);
+
+       if (!rmi4_data->touch_stopped) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev, "%s already power on\n",
+                       __func__);
+               goto out;
+       }
+
+       pdata->power(rmi4_data, true);
+       rmi4_data->current_page = MASK_8BIT;
+       rmi4_data->touch_stopped = false;
+
+       if (pdata->enable_sync)
+               pdata->enable_sync(true);
+
+       /* When resume, it seems to be more margin */
+       msleep(SYNAPTICS_POWER_MARGIN_TIME * 2);
+
+       retval = synaptics_rmi4_reinit_device(rmi4_data);
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                               "%s: Failed to reinit device\n",
+                               __func__);
+       }
+       enable_irq(rmi4_data->i2c_client->irq);
+//     dev_info(&rmi4_data->i2c_client->dev, "%s: late_irq_enable queue\n", __func__);
+//     schedule_delayed_work(&rmi4_data->work_init_irq, 1500);
+
+       tsp_debug_dbg(true, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+out:
+       mutex_unlock(&rmi4_data->rmi4_device_mutex);
+       return retval;
+}
+
+static int synaptics_rmi4_input_open(struct input_dev *dev)
+{
+       struct synaptics_rmi4_data *rmi4_data = input_get_drvdata(dev);
+       int retval;
+
+       retval = wait_for_completion_interruptible_timeout(&rmi4_data->init_done,
+                       msecs_to_jiffies(90 * MSEC_PER_SEC));
+
+       if (retval < 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "error while waiting for device to init (%d)\n", retval);
+               retval = -ENXIO;
+               goto err_open;
+       }
+       if (retval == 0) {
+               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                       "timedout while waiting for device to init\n");
+               retval = -ENXIO;
+               goto err_open;
+       }
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+#ifdef USE_SENSOR_SLEEP
+       if (rmi4_data->use_deepsleep) {
+               synaptics_rmi4_sensor_wake(rmi4_data);
+       } else
+#endif
+       {
+               retval = synaptics_rmi4_start_device(rmi4_data);
+               if (retval < 0)
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to start device\n", __func__);
+       }
+
+       return 0;
+
+err_open:
+       return retval;
+}
+
+static void synaptics_rmi4_input_close(struct input_dev *dev)
+{
+       struct synaptics_rmi4_data *rmi4_data = input_get_drvdata(dev);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+#ifdef USE_SENSOR_SLEEP
+       if (rmi4_data->use_deepsleep)
+               synaptics_rmi4_sensor_sleep(rmi4_data);
+       else
+#endif
+               synaptics_rmi4_stop_device(rmi4_data);
+}
+
+#ifdef CONFIG_PM
+#ifdef CONFIG_HAS_EARLYSUSPEND
+#define synaptics_rmi4_suspend NULL
+#define synaptics_rmi4_resume NULL
+
+/**
+ * synaptics_rmi4_early_suspend()
+ *
+ * Called by the kernel during the early suspend phase when the system
+ * enters suspend.
+ *
+ * This function calls synaptics_rmi4_sensor_sleep() to stop finger
+ * data acquisition and put the sensor to sleep.
+ */
+static void synaptics_rmi4_early_suspend(struct early_suspend *h)
+{
+       struct synaptics_rmi4_data *rmi4_data =
+                       container_of(h, struct synaptics_rmi4_data,
+                       early_suspend);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+#ifdef USE_SENSOR_SLEEP
+       if (rmi4_data->use_deepsleep)
+               synaptics_rmi4_sensor_sleep(rmi4_data);
+       else
+#endif
+               synaptics_rmi4_stop_device(rmi4_data);
+
+       return;
+}
+
+/**
+ * synaptics_rmi4_late_resume()
+ *
+ * Called by the kernel during the late resume phase when the system
+ * wakes up from suspend.
+ *
+ * This function goes through the sensor wake process if the system wakes
+ * up from early suspend (without going into suspend).
+ */
+static void synaptics_rmi4_late_resume(struct early_suspend *h)
+{
+       int retval = 0;
+       struct synaptics_rmi4_data *rmi4_data =
+               container_of(h, struct synaptics_rmi4_data,
+                               early_suspend);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+#ifdef USE_SENSOR_SLEEP
+       if (rmi4_data->use_deepsleep) {
+               synaptics_rmi4_sensor_wake(rmi4_data);
+       } else
+#endif
+       {
+               retval = synaptics_rmi4_start_device(rmi4_data);
+               if (retval < 0)
+                       tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                       "%s: Failed to start device\n", __func__);
+       }
+
+       return;
+}
+#else
+
+/**
+ * synaptics_rmi4_suspend()
+ *
+ * Called by the kernel during the suspend phase when the system
+ * enters suspend.
+ *
+ * This function stops finger data acquisition and puts the sensor to
+ * sleep (if not already done so during the early suspend phase),
+ * disables the interrupt, and turns off the power to the sensor.
+ */
+static int synaptics_rmi4_suspend(struct device *dev)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+       mutex_lock(&rmi4_data->input_dev->mutex);
+
+       if (rmi4_data->input_dev->users) {
+#ifdef USE_SENSOR_SLEEP
+               if (rmi4_data->use_deepsleep)
+                       synaptics_rmi4_sensor_sleep(rmi4_data);
+               else
+#endif
+                       synaptics_rmi4_stop_device(rmi4_data);
+       }
+       mutex_unlock(&rmi4_data->input_dev->mutex);
+
+       return 0;
+}
+
+/**
+ * synaptics_rmi4_resume()
+ *
+ * Called by the kernel during the resume phase when the system
+ * wakes up from suspend.
+ *
+ * This function turns on the power to the sensor, wakes the sensor
+ * from sleep, enables the interrupt, and starts finger data
+ * acquisition.
+ */
+static int synaptics_rmi4_resume(struct device *dev)
+{
+       struct synaptics_rmi4_data *rmi4_data = dev_get_drvdata(dev);
+
+       tsp_debug_dbg(false, &rmi4_data->i2c_client->dev, "%s\n", __func__);
+
+       mutex_lock(&rmi4_data->input_dev->mutex);
+
+       if (rmi4_data->input_dev->users) {
+#ifdef USE_SENSOR_SLEEP
+               if (rmi4_data->use_deepsleep) {
+                       synaptics_rmi4_sensor_wake(rmi4_data);
+               } else
+#endif
+               {
+                       if (synaptics_rmi4_start_device(rmi4_data) < 0)
+                               tsp_debug_err(true, &rmi4_data->i2c_client->dev,
+                                               "%s: Failed to start device\n", __func__);
+               }
+       }
+
+       mutex_unlock(&rmi4_data->input_dev->mutex);
+
+       return 0;
+}
+#endif
+
+static const struct dev_pm_ops synaptics_rmi4_dev_pm_ops = {
+       .suspend = synaptics_rmi4_suspend,
+       .resume  = synaptics_rmi4_resume,
+};
+#endif
+
+static const struct i2c_device_id synaptics_rmi4_id_table[] = {
+       {DRIVER_NAME, 0},
+       {},
+};
+MODULE_DEVICE_TABLE(i2c, synaptics_rmi4_id_table);
+
+
+#ifdef CONFIG_OF
+static struct of_device_id synaptics_rmi4_dt_ids[] = {
+       { .compatible = "synaptics,rmi4" },
+       { }
+};
+#endif
+
+static struct i2c_driver synaptics_rmi4_driver = {
+       .driver = {
+               .name = DRIVER_NAME,
+               .owner = THIS_MODULE,
+#ifdef CONFIG_PM
+               .pm = &synaptics_rmi4_dev_pm_ops,
+#endif
+#ifdef CONFIG_OF
+               .of_match_table = of_match_ptr(synaptics_rmi4_dt_ids),
+#endif
+       },
+       .probe = synaptics_rmi4_probe,
+       .remove = synaptics_rmi4_remove,
+#ifdef USE_SHUTDOWN_CB
+       .shutdown = synaptics_rmi4_shutdown,
+#endif
+       .id_table = synaptics_rmi4_id_table,
+};
+
+/**
+ * synaptics_rmi4_init()
+ *
+ * Called by the kernel during do_initcalls (if built-in)
+ * or when the driver is loaded (if a module).
+ *
+ * This function registers the driver to the I2C subsystem.
+ *
+ */
+static int __init synaptics_rmi4_init(void)
+{
+       return i2c_add_driver(&synaptics_rmi4_driver);
+}
+
+/**
+ * synaptics_rmi4_exit()
+ *
+ * Called by the kernel when the driver is unloaded.
+ *
+ * This funtion unregisters the driver from the I2C subsystem.
+ *
+ */
+static void __exit synaptics_rmi4_exit(void)
+{
+       i2c_del_driver(&synaptics_rmi4_driver);
+}
+
+module_init(synaptics_rmi4_init);
+module_exit(synaptics_rmi4_exit);
+
+MODULE_AUTHOR("Synaptics, Inc.");
+MODULE_DESCRIPTION("Synaptics RMI4 I2C Touch Driver");
+MODULE_LICENSE("GPL v2");
+MODULE_VERSION(SYNAPTICS_RMI4_DRIVER_VERSION);
diff --git a/drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.h b/drivers/input/touchscreen/synaptics_dsx/synaptics_i2c_rmi.h
new file mode 100644 (file)
index 0000000..c151d52
--- /dev/null
@@ -0,0 +1,1105 @@
+/*
+ * Synaptics DSX touchscreen driver
+ *
+ * Copyright (C) 2012 Synaptics Incorporated
+ *
+ * Copyright (C) 2012 Alexandra Chin <alexandra.chin@tw.synaptics.com>
+ * Copyright (C) 2012 Scott Lin <scott.lin@tw.synaptics.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ */
+#ifndef _SYNAPTICS_RMI4_H_
+#define _SYNAPTICS_RMI4_H_
+
+#define SYNAPTICS_RMI4_DRIVER_VERSION "DS5 1.0"
+#include <linux/device.h>
+#include <linux/i2c/synaptics_rmi.h>
+
+#ifdef CONFIG_HAS_EARLYSUSPEND
+#include <linux/earlysuspend.h>
+#endif
+#ifdef CONFIG_SEC_DEBUG_TSP_LOG
+#include <linux/sec_debug.h>
+#endif
+#ifdef CONFIG_INPUT_BOOSTER
+#include <linux/input/input_booster.h>
+#endif
+
+/**************************************/
+/* Define related with driver feature */
+#define PROXIMITY_MODE
+#undef EDGE_SWIPE
+#define USE_CUSTOM_REZERO
+#define DEBUG_HOVER
+#define USE_SHUTDOWN_CB
+#ifdef CONFIG_INPUT_BOOSTER
+#define TSP_BOOSTER
+#endif
+#if defined(CONFIG_GLOVE_TOUCH)
+#define GLOVE_MODE
+#endif
+/* #define SIDE_TOUCH */
+#define CHECK_PR_NUMBER
+#define REPORT_2D_W
+
+/* #define USE_GUEST_THREAD */
+#define USE_DETECTION_FLAG_2
+#define USE_STYLUS
+/* #define SKIP_UPDATE_FW_ON_PROBE */
+/* #define REPORT_2D_Z */
+/* #define REPORT_ORIENTATION */
+/* #define USE_SENSOR_SLEEP */
+#define USE_ACTIVE_REPORT_RATE
+/**************************************/
+/**************************************/
+
+#ifdef CONFIG_SEC_DEBUG_TSP_LOG
+#define tsp_debug_dbg(mode, dev, fmt, ...)     \
+({                                                             \
+       if (mode) {                                     \
+               dev_dbg(dev, fmt, ## __VA_ARGS__);      \
+               sec_debug_tsp_log(fmt, ## __VA_ARGS__);         \
+       }                               \
+       else                                    \
+               dev_dbg(dev, fmt, ## __VA_ARGS__);      \
+})
+
+#define tsp_debug_info(mode, dev, fmt, ...)    \
+({                                                             \
+       if (mode) {                                                     \
+               dev_info(dev, fmt, ## __VA_ARGS__);             \
+               sec_debug_tsp_log(fmt, ## __VA_ARGS__);         \
+       }                               \
+       else                                    \
+               dev_info(dev, fmt, ## __VA_ARGS__);     \
+})
+
+#define tsp_debug_err(mode, dev, fmt, ...)     \
+({                                                             \
+       if (mode) {                                     \
+               dev_err(dev, fmt, ## __VA_ARGS__);      \
+               sec_debug_tsp_log(fmt, ## __VA_ARGS__); \
+       }                               \
+       else                                    \
+               dev_err(dev, fmt, ## __VA_ARGS__); \
+})
+#else
+#define tsp_debug_dbg(mode, dev, fmt, ...)     dev_dbg(dev, fmt, ## __VA_ARGS__)
+#define tsp_debug_info(mode, dev, fmt, ...)    dev_info(dev, fmt, ## __VA_ARGS__)
+#define tsp_debug_err(mode, dev, fmt, ...)     dev_err(dev, fmt, ## __VA_ARGS__)
+#endif
+
+#define SYNAPTICS_DEVICE_NAME  "SYNAPTICS"
+#define DRIVER_NAME "synaptics_rmi4_i2c"
+
+#define SYNAPTICS_HW_RESET_TIME        100
+#define SYNAPTICS_REZERO_TIME 100
+#define SYNAPTICS_POWER_MARGIN_TIME    150
+#define SYNAPTICS_DEEPSLEEP_TIME       20
+
+#define TSP_FACTEST_RESULT_PASS                2
+#define TSP_FACTEST_RESULT_FAIL                1
+#define TSP_FACTEST_RESULT_NONE                0
+
+#define SYNAPTICS_MAX_FW_PATH  64
+
+#define SYNAPTICS_DEFAULT_UMS_FW "/sdcard/synaptics.fw"
+
+/* Define for Firmware file image format */
+#define FIRMWARE_IMG_HEADER_MAJOR_VERSION_OFFSET       (0x07)
+#define NEW_IMG_MAJOR_VERSION  (0x10)
+
+/* Previous firmware image format */
+#define OLD_IMG_CHECK_PR_BIT_BIN_OFFSET        (0x06)
+#define OLD_IMG_DATE_OF_FIRMWARE_BIN_OFFSET    (0x016D00)
+#define OLD_IMG_IC_REVISION_BIN_OFFSET (0x016D02)
+#define OLD_IMG_FW_VERSION_BIN_OFFSET  (0x016D03)
+#define OLD_IMG_PR_NUMBER_0TH_BYTE_BIN_OFFSET  (0x50)
+
+/* New firmware image format(PR number is loaded defaultly) */
+#define DATE_OF_FIRMWARE_BIN_OFFSET    (0x00B0)
+#define IC_REVISION_BIN_OFFSET (0x00B2)
+#define FW_VERSION_BIN_OFFSET  (0x00B3)
+#define PR_NUMBER_0TH_BYTE_BIN_OFFSET  (0x74)
+
+#define PDT_PROPS (0X00EF)
+#define PDT_START (0x00E9)
+#define PDT_END (0x000A)
+#define PDT_ENTRY_SIZE (0x0006)
+#define PAGES_TO_SERVICE (10)
+#define PAGE_SELECT_LEN (2)
+
+#define SYNAPTICS_RMI4_F01 (0x01)
+#define SYNAPTICS_RMI4_F11 (0x11)
+#define SYNAPTICS_RMI4_F12 (0x12)
+#define SYNAPTICS_RMI4_F1A (0x1a)
+#define SYNAPTICS_RMI4_F34 (0x34)
+#define SYNAPTICS_RMI4_F51 (0x51)
+#define SYNAPTICS_RMI4_F54 (0x54)
+#define SYNAPTICS_RMI4_F55 (0x55)
+#define SYNAPTICS_RMI4_F60 (0x60)
+#define SYNAPTICS_RMI4_FDB (0xdb)
+
+#define SYNAPTICS_RMI4_PRODUCT_INFO_SIZE 2
+#define SYNAPTICS_RMI4_DATE_CODE_SIZE 3
+#define SYNAPTICS_RMI4_PRODUCT_ID_SIZE 10
+#define SYNAPTICS_RMI4_BUILD_ID_SIZE 3
+#define SYNAPTICS_RMI4_PRODUCT_ID_LENGTH 10
+#define SYNAPTICS_RMI4_PACKAGE_ID_SIZE 4
+
+#define MAX_NUMBER_OF_BUTTONS 4
+#define MAX_INTR_REGISTERS 4
+#define F12_FINGERS_TO_SUPPORT 10
+#define MAX_NUMBER_OF_FINGERS (F12_FINGERS_TO_SUPPORT)
+
+#define MASK_16BIT 0xFFFF
+#define MASK_8BIT 0xFF
+#define MASK_7BIT 0x7F
+#define MASK_6BIT 0x3F
+#define MASK_5BIT 0x1F
+#define MASK_4BIT 0x0F
+#define MASK_3BIT 0x07
+#define MASK_2BIT 0x03
+#define MASK_1BIT 0x01
+
+#define INVALID_X      65535
+#define INVALID_Y      65535
+
+/* Define for Object type and status(F12_2D_data(N)/0).
+ * Each 3-bit finger status field represents the following:
+ * 000 = finger not present
+ * 001 = finger present and data accurate
+ * 010 = stylus pen (passive pen)
+ * 011 = palm touch
+ * 100 = not used
+ * 101 = hover
+ * 110 = glove touch
+ */
+#define OBJECT_NOT_PRESENT             (0x00)
+#define OBJECT_FINGER                  (0x01)
+#define OBJECT_PASSIVE_STYLUS  (0x02)
+#define OBJECT_PALM                            (0x03)
+#define OBJECT_UNCLASSIFIED            (0x04)
+#define OBJECT_HOVER                   (0x05)
+#define OBJECT_GLOVE                   (0x06)
+
+/* Define for Data report enable Mask(F12_2D_CTRL28) */
+#define RPT_TYPE (1 << 0)
+#define RPT_X_LSB (1 << 1)
+#define RPT_X_MSB (1 << 2)
+#define RPT_Y_LSB (1 << 3)
+#define RPT_Y_MSB (1 << 4)
+#define RPT_Z (1 << 5)
+#define RPT_WX (1 << 6)
+#define RPT_WY (1 << 7)
+#define RPT_DEFAULT (RPT_TYPE | RPT_X_LSB | RPT_X_MSB | RPT_Y_LSB | RPT_Y_MSB)
+
+/* Define for Feature enable(F12_2D_CTRL26)
+ * bit[0] : represent enable or disable glove mode(high sensitivity mode)
+ * bit[1] : represent enable or disable cover mode.
+ *             (cover is on lcd, change sensitivity to prevent unintended touch)
+ * bit[2] : represent enable or disable fast glove mode.
+ *             (change glove mode entering condition to be faster)
+ */
+#define GLOVE_DETECTION_EN (1 << 0)
+#define CLOSED_COVER_EN (1 << 1)
+#define FAST_GLOVE_DECTION_EN (1 << 2)
+
+#define CLEAR_COVER_MODE_EN    (CLOSED_COVER_EN | GLOVE_DETECTION_EN)
+#define FLIP_COVER_MODE_EN     (CLOSED_COVER_EN)
+
+#ifdef PROXIMITY_MODE
+#define F51_FINGER_TIMEOUT 50 /* ms */
+#define HOVER_Z_MAX (255)
+
+#define F51_PROXIMITY_ENABLES_OFFSET (0)
+/* Define for proximity enables(F51_CUSTOM_CTRL00) */
+#define FINGER_HOVER_EN (1 << 0)
+#define AIR_SWIPE_EN (1 << 1)
+#define LARGE_OBJ_EN (1 << 2)
+#define HOVER_PINCH_EN (1 << 3)
+#define LARGE_OBJ_WAKEUP_GESTURE_EN (1 << 4)
+/* Reserved 5 */
+#define ENABLE_HANDGRIP_RECOG (1 << 6)
+#define SLEEP_PROXIMITY (1 << 7)
+
+#define F51_GENERAL_CONTROL_OFFSET (1)
+/* Define for General Control(F51_CUSTOM_CTRL01) */
+#define JIG_TEST_EN    (1 << 0)
+#define JIG_COMMAND_EN (1 << 1)
+#define NO_PROXIMITY_ON_TOUCH (1 << 2)
+#define CONTINUOUS_LOAD_REPORT (1 << 3)
+#define HOST_REZERO_COMMAND (1 << 4)
+#define EDGE_SWIPE_EN (1 << 5)
+#define HSYNC_STATUS (1 << 6)
+#define HOST_ID (1 << 7)
+
+#define F51_GENERAL_CONTROL_2_OFFSET (2)
+/* Define for General Control(F51_CUSTOM_CTRL02) */
+#define FACE_DETECTION_EN      (1 << 0)
+#define SIDE_BUTTONS_EN        (1 << 1)
+#define SIDE_BUTTONS_PRODUCTION_TEST   (1 << 2)
+#define SIDE_TOUCH_ONLY_ACTIVE (1 << 3)
+#define SIDE_CHANNEL_DISABLE   (1 << 4)
+#define ENTER_SLEEP_MODE               (1 << 5)
+/* Reserved 2 ~ 7 */
+
+/* Define for proximity Controls(F51_CUSTOM_QUERY04) */
+#define HAS_FINGER_HOVER (1 << 0)
+#define HAS_AIR_SWIPE (1 << 1)
+#define HAS_LARGE_OBJ (1 << 2)
+#define HAS_HOVER_PINCH (1 << 3)
+#define HAS_EDGE_SWIPE (1 << 4)
+#define HAS_SINGLE_FINGER (1 << 5)
+#define HAS_GRIP_SUPPRESSION (1 << 6)
+#define HAS_PALM_REJECTION (1 << 7)
+
+/* Define for proximity Controls 2(F51_CUSTOM_QUERY05) */
+#define HAS_PROFILE_HANDEDNESS (1 << 0)
+#define HAS_LOWG (1 << 1)
+#define HAS_FACE_DETECTION (1 << 2)
+#define HAS_SIDE_BUTTONS (1 << 3)
+#define HAS_CAMERA_GRIP_DETECTION (1 << 4)
+/* Reserved 5 ~ 7 */
+
+/* Define for Detection flag 2(F51_CUSTOM_DATA06) */
+#define HAS_HAND_EDGE_SWIPE_DATA (1 << 0)
+#define SIDE_BUTTON_DETECTED (1 << 1)
+/* Reserved 2 ~ 7 */
+
+#define F51_DATA_RESERVED_SIZE (1)
+#define F51_DATA_1_SIZE (4)    /* FINGER_HOVER */
+#define F51_DATA_2_SIZE (1)    /* HOVER_PINCH */
+#define F51_DATA_3_SIZE (1)    /* AIR_SWIPE | LARGE_OBJ */
+#define F51_DATA_4_SIZE (2)    /* SIDE_BUTTON */
+#define F51_DATA_5_SIZE        (1)     /* CAMERA_GRIP_DETECTION */
+#define F51_DATA_6_SIZE (2)    /* DETECTION_FLAG2 */
+
+#ifdef EDGE_SWIPE
+#define EDGE_SWIPE_WIDTH_MAX   255
+#define EDGE_SWIPE_SUMSIZE_MAX 255
+#define EDGE_SWIPE_PALM_MAX            1
+
+#define EDGE_SWIPE_WITDH_X_OFFSET      5
+#define EDGE_SWIPE_AREA_OFFSET 7
+#endif
+
+#ifdef SIDE_TOUCH
+#define MAX_SIDE_BUTTONS       8
+#define NUM_OF_ACTIVE_SIDE_BUTTONS     6
+#endif
+#endif
+
+#define SYN_I2C_RETRY_TIMES 3
+#define MAX_F11_TOUCH_WIDTH 15
+
+#define CHECK_STATUS_TIMEOUT_MS 200
+#define F01_STD_QUERY_LEN 21
+#define F01_BUID_ID_OFFSET 18
+#define F11_STD_QUERY_LEN 9
+#define F11_STD_CTRL_LEN 10
+#define F11_STD_DATA_LEN 12
+#define STATUS_NO_ERROR 0x00
+#define STATUS_RESET_OCCURRED 0x01
+#define STATUS_INVALID_CONFIG 0x02
+#define STATUS_DEVICE_FAILURE 0x03
+#define STATUS_CONFIG_CRC_FAILURE 0x04
+#define STATUS_FIRMWARE_CRC_FAILURE 0x05
+#define STATUS_CRC_IN_PROGRESS 0x06
+
+/* Define for Device Control(F01_RMI_CTRL00) */
+#define NORMAL_OPERATION (0 << 0)
+#define SENSOR_SLEEP (1 << 0)
+#define NO_SLEEP_ON (1 << 2)
+/* Reserved 3 ~ 4 */
+#define CHARGER_CONNECTED (1 << 5)
+#define REPORT_RATE (1 << 6)
+#define CONFIGURED (1 << 7)
+
+#define TSP_NEEDTO_REBOOT      (-ECONNREFUSED)
+#define MAX_TSP_REBOOT         3
+
+#define SYNAPTICS_BL_ID_0_OFFSET       0
+#define SYNAPTICS_BL_ID_1_OFFSET       1
+#define SYNAPTICS_BL_MINOR_REV_OFFSET  2
+#define SYNAPTICS_BL_MAJOR_REV_OFFSET  3
+
+#define SYNAPTICS_BOOTLOADER_ID_SIZE   4
+
+/* Below version is represent that it support guest thread functionality. */
+#define BL_MAJOR_VER_OF_GUEST_THREAD   0x36    /* '6' */
+#define BL_MINOR_VER_OF_GUEST_THREAD   0x34    /* '4' */
+
+#define SYNAPTICS_ACCESS_READ  false
+#define SYNAPTICS_ACCESS_WRITE true
+
+/* Below offsets are defined manually.
+ * So please keep in your mind when use this. it can be changed based on
+ * firmware version you can check it debug_address sysfs node
+ * (sys/class/sec/tsp/cmd).
+ * If it is possible to replace that getting address from IC,
+ * I recommend the latter than former.
+ */
+#ifdef PROXIMITY_MODE
+#define MANUAL_DEFINED_OFFSET_GRIP_EDGE_EXCLUSION_RX   (32)
+#endif
+#ifdef SIDE_TOUCH
+#define MANUAL_DEFINED_OFFSET_SIDEKEY_THRESHOLD        (47)
+#endif
+#ifdef USE_STYLUS
+#define MANUAL_DEFINED_OFFSET_FORCEFINGER_ON_EDGE      (61)
+#endif
+/* Enum for each product id */
+enum synaptics_product_ids {
+       SYNAPTICS_PRODUCT_ID_NONE = 0,
+       SYNAPTICS_PRODUCT_ID_S5000,
+       SYNAPTICS_PRODUCT_ID_S5050,
+       SYNAPTICS_PRODUCT_ID_S5100,
+       SYNAPTICS_PRODUCT_ID_S5700,
+       SYNAPTICS_PRODUCT_ID_MAX
+};
+
+/* Define for Revision of IC */
+#define SYNAPTICS_IC_REVISION_A0       0xA0
+#define SYNAPTICS_IC_REVISION_A1       0xA1
+#define SYNAPTICS_IC_REVISION_A2       0xA2
+#define SYNAPTICS_IC_REVISION_A3       0xA3
+#define SYNAPTICS_IC_REVISION_B0       0xB0
+#define SYNAPTICS_IC_REVISION_B1       0xB1
+#define SYNAPTICS_IC_REVISION_B2       0xB2
+#define SYNAPTICS_IC_REVISION_AF       0xAF
+#define SYNAPTICS_IC_REVISION_BF       0xBF
+
+/* Release event type for manual release.. */
+#define RELEASE_TYPE_FINGER    (1 << 0)
+#define RELEASE_TYPE_SIDEKEY   (1 << 1)
+
+#define RELEASE_TYPE_ALL (RELEASE_TYPE_FINGER | RELEASE_TYPE_SIDEKEY)
+
+#ifdef USE_ACTIVE_REPORT_RATE
+#define        SYNAPTICS_RPT_RATE_30HZ_VAL     (0x50)
+#define        SYNAPTICS_RPT_RATE_60HZ_VAL     (0x16)
+#define        SYNAPTICS_RPT_RATE_90HZ_VAL     (0x04)
+
+enum synaptics_report_rate {
+       SYNAPTICS_RPT_RATE_START = 0,
+       SYNAPTICS_RPT_RATE_90HZ = SYNAPTICS_RPT_RATE_START,
+       SYNAPTICS_RPT_RATE_60HZ,
+       SYNAPTICS_RPT_RATE_30HZ,
+       SYNAPTICS_RPT_RATE_END
+};
+#endif
+
+struct synaptics_rmi4_f01_device_status {
+       union {
+               struct {
+                       unsigned char status_code:4;
+                       unsigned char reserved:2;
+                       unsigned char flash_prog:1;
+                       unsigned char unconfigured:1;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct synaptics_rmi4_f12_query_5 {
+       union {
+               struct {
+                       unsigned char size_of_query6;
+                       struct {
+                               unsigned char ctrl0_is_present:1;
+                               unsigned char ctrl1_is_present:1;
+                               unsigned char ctrl2_is_present:1;
+                               unsigned char ctrl3_is_present:1;
+                               unsigned char ctrl4_is_present:1;
+                               unsigned char ctrl5_is_present:1;
+                               unsigned char ctrl6_is_present:1;
+                               unsigned char ctrl7_is_present:1;
+                       } __packed;
+                       struct {
+                               unsigned char ctrl8_is_present:1;
+                               unsigned char ctrl9_is_present:1;
+                               unsigned char ctrl10_is_present:1;
+                               unsigned char ctrl11_is_present:1;
+                               unsigned char ctrl12_is_present:1;
+                               unsigned char ctrl13_is_present:1;
+                               unsigned char ctrl14_is_present:1;
+                               unsigned char ctrl15_is_present:1;
+                       } __packed;
+                       struct {
+                               unsigned char ctrl16_is_present:1;
+                               unsigned char ctrl17_is_present:1;
+                               unsigned char ctrl18_is_present:1;
+                               unsigned char ctrl19_is_present:1;
+                               unsigned char ctrl20_is_present:1;
+                               unsigned char ctrl21_is_present:1;
+                               unsigned char ctrl22_is_present:1;
+                               unsigned char ctrl23_is_present:1;
+                       } __packed;
+                       struct {
+                               unsigned char ctrl24_is_present:1;
+                               unsigned char ctrl25_is_present:1;
+                               unsigned char ctrl26_is_present:1;
+                               unsigned char ctrl27_is_present:1;
+                               unsigned char ctrl28_is_present:1;
+                               unsigned char ctrl29_is_present:1;
+                               unsigned char ctrl30_is_present:1;
+                               unsigned char ctrl31_is_present:1;
+                       } __packed;
+               };
+               unsigned char data[5];
+       };
+};
+
+struct synaptics_rmi4_f12_query_8 {
+       union {
+               struct {
+                       unsigned char size_of_query9;
+                       struct {
+                               unsigned char data0_is_present:1;
+                               unsigned char data1_is_present:1;
+                               unsigned char data2_is_present:1;
+                               unsigned char data3_is_present:1;
+                               unsigned char data4_is_present:1;
+                               unsigned char data5_is_present:1;
+                               unsigned char data6_is_present:1;
+                               unsigned char data7_is_present:1;
+                       } __packed;
+                       struct {
+                               unsigned char data8_is_present:1;
+                               unsigned char data9_is_present:1;
+                               unsigned char data10_is_present:1;
+                               unsigned char data11_is_present:1;
+                               unsigned char data12_is_present:1;
+                               unsigned char data13_is_present:1;
+                               unsigned char data14_is_present:1;
+                               unsigned char data15_is_present:1;
+                       } __packed;
+               };
+               unsigned char data[3];
+       };
+};
+
+struct synaptics_rmi4_f12_query_10 {
+       union {
+               struct {
+                       unsigned char f12_query10_b0__4:5;
+                       unsigned char glove_mode_feature:1;
+                       unsigned char f12_query10_b6__7:2;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct synaptics_rmi4_f12_ctrl_8 {
+       union {
+               struct {
+                       unsigned char max_x_coord_lsb;
+                       unsigned char max_x_coord_msb;
+                       unsigned char max_y_coord_lsb;
+                       unsigned char max_y_coord_msb;
+                       unsigned char rx_pitch_lsb;
+                       unsigned char rx_pitch_msb;
+                       unsigned char tx_pitch_lsb;
+                       unsigned char tx_pitch_msb;
+                       unsigned char low_rx_clip;
+                       unsigned char high_rx_clip;
+                       unsigned char low_tx_clip;
+                       unsigned char high_tx_clip;
+                       unsigned char num_of_rx;
+                       unsigned char num_of_tx;
+               };
+               unsigned char data[14];
+       };
+};
+
+struct synaptics_rmi4_f12_ctrl_9 {
+       union {
+               struct {
+                       unsigned char touch_threshold;
+                       unsigned char lift_hysteresis;
+                       unsigned char small_z_scale_factor_lsb;
+                       unsigned char small_z_scale_factor_msb;
+                       unsigned char large_z_scale_factor_lsb;
+                       unsigned char large_z_scale_factor_msb;
+                       unsigned char small_large_boundary;
+                       unsigned char wx_scale;
+                       unsigned char wx_offset;
+                       unsigned char wy_scale;
+                       unsigned char wy_offset;
+                       unsigned char x_size_lsb;
+                       unsigned char x_size_msb;
+                       unsigned char y_size_lsb;
+                       unsigned char y_size_msb;
+                       unsigned char gloved_finger;
+               };
+               unsigned char data[16];
+       };
+};
+
+struct synaptics_rmi4_f12_ctrl_11 {
+       union {
+               struct {
+                       unsigned char small_corner;
+                       unsigned char large_corner;
+                       unsigned char jitter_filter_strength;
+                       unsigned char x_minimum_z;
+                       unsigned char y_minimum_z;
+                       unsigned char x_maximum_z;
+                       unsigned char y_maximum_z;
+                       unsigned char x_amplitude;
+                       unsigned char y_amplitude;
+                       unsigned char gloved_finger_jitter_filter_strength;
+               };
+               unsigned char data[10];
+       };
+};
+
+struct synaptics_rmi4_f12_ctrl_23 {
+       union {
+               struct {
+                       unsigned char obj_type_enable;
+                       unsigned char max_reported_objects;
+               };
+               unsigned char data[2];
+       };
+};
+
+struct synaptics_rmi4_f12_ctrl_26 {
+       union {
+               struct {
+                       unsigned char feature_enable;
+               };
+               unsigned char data[1];
+       };
+};
+
+struct synaptics_rmi4_f12_finger_data {
+       unsigned char object_type_and_status;
+       unsigned char x_lsb;
+       unsigned char x_msb;
+       unsigned char y_lsb;
+       unsigned char y_msb;
+#ifdef REPORT_2D_Z
+       unsigned char z;
+#endif
+#ifdef REPORT_2D_W
+       unsigned char wx;
+       unsigned char wy;
+#endif
+};
+
+struct synaptics_rmi4_f1a_query {
+       union {
+               struct {
+                       unsigned char max_button_count:3;
+                       unsigned char reserved:5;
+                       unsigned char has_general_control:1;
+                       unsigned char has_interrupt_enable:1;
+                       unsigned char has_multibutton_select:1;
+                       unsigned char has_tx_rx_map:1;
+                       unsigned char has_perbutton_threshold:1;
+                       unsigned char has_release_threshold:1;
+                       unsigned char has_strongestbtn_hysteresis:1;
+                       unsigned char has_filter_strength:1;
+               } __packed;
+               unsigned char data[2];
+       };
+};
+
+struct synaptics_rmi4_f1a_control_0 {
+       union {
+               struct {
+                       unsigned char multibutton_report:2;
+                       unsigned char filter_mode:2;
+                       unsigned char reserved:4;
+               } __packed;
+               unsigned char data[1];
+       };
+};
+
+struct synaptics_rmi4_f1a_control {
+       struct synaptics_rmi4_f1a_control_0 general_control;
+       unsigned char button_int_enable;
+       unsigned char multi_button;
+       unsigned char *txrx_map;
+       unsigned char *button_threshold;
+       unsigned char button_release_threshold;
+       unsigned char strongest_button_hysteresis;
+       unsigned char filter_strength;
+};
+
+struct synaptics_rmi4_f1a_handle {
+       int button_bitmask_size;
+       unsigned char max_count;
+       unsigned char valid_button_count;
+       unsigned char *button_data_buffer;
+       unsigned char *button_map;
+       struct synaptics_rmi4_f1a_query button_query;
+       struct synaptics_rmi4_f1a_control button_control;
+};
+
+struct synaptics_rmi4_f34_ctrl_3 {
+       union {
+               struct {
+                       unsigned char fw_release_month;
+                       unsigned char fw_release_date;
+                       unsigned char fw_release_revision;
+                       unsigned char fw_release_version;
+               };
+               unsigned char data[4];
+       };
+};
+
+#ifdef PROXIMITY_MODE
+struct synaptics_rmi4_f51_query {
+       union {
+               struct {
+                       unsigned char query_register_count;
+                       unsigned char data_register_count;
+                       unsigned char control_register_count;
+                       unsigned char command_register_count;
+                       unsigned char proximity_controls;
+                       unsigned char proximity_controls_2;
+               };
+               unsigned char data[6];
+       };
+};
+
+struct synaptics_rmi4_f51_data {
+       union {
+               struct {
+                       unsigned char finger_hover_det:1;
+                       unsigned char air_swipe_det:1;
+                       unsigned char large_obj_det:1;
+                       unsigned char hover_pinch_det:1;
+                       unsigned char lowg_detected:1;
+                       unsigned char profile_handedness_status:2;
+                       unsigned char face_detect:1;
+
+                       unsigned char hover_finger_x_4__11;
+                       unsigned char hover_finger_y_4__11;
+                       unsigned char hover_finger_xy_0__3;
+                       unsigned char hover_finger_z;
+               } __packed;
+               unsigned char proximity_data[5];
+       };
+
+#ifdef EDGE_SWIPE
+       union {
+               struct {
+                       unsigned char edge_swipe_x_lsb;
+                       unsigned char edge_swipe_x_msb;
+                       unsigned char edge_swipe_y_lsb;
+                       unsigned char edge_swipe_y_msb;
+                       unsigned char edge_swipe_z;
+                       unsigned char edge_swipe_wx;
+                       unsigned char edge_swipe_wy;
+                       unsigned char edge_swipe_mm;
+                       signed char edge_swipe_dg;
+               } __packed;
+               unsigned char edge_swipe_data[9];
+       };
+#endif
+#ifdef SIDE_TOUCH
+       union {
+               struct {
+                       unsigned char side_button_leading;
+                       unsigned char side_button_trailing;
+               } __packed;
+               unsigned char side_button_data[2];
+       };
+#endif
+};
+
+#ifdef EDGE_SWIPE
+struct synaptics_rmi4_edge_swipe {
+       int sumsize;
+       int palm;
+       int wx;
+       int wy;
+};
+#endif
+
+struct synaptics_rmi4_f51_handle {
+/* CTRL */
+       unsigned char proximity_enables;                /* F51_CUSTOM_CTRL00 */
+       unsigned short proximity_enables_addr;
+       unsigned char general_control;                  /* F51_CUSTOM_CTRL01 */
+       unsigned short general_control_addr;
+       unsigned char general_control_2;                /* F51_CUSTOM_CTRL02 */
+       unsigned short general_control_2_addr;
+#ifdef PROXIMITY_MODE
+       unsigned short grip_edge_exclusion_rx_addr;
+#endif
+#ifdef SIDE_TOUCH
+       unsigned short sidebutton_tapthreshold_addr;
+#endif
+#ifdef USE_STYLUS
+       unsigned short forcefinger_onedge_addr;
+#endif
+/* QUERY */
+       unsigned char proximity_controls;               /* F51_CUSTOM_QUERY04 */
+       unsigned char proximity_controls_2;             /* F51_CUSTOM_QUERY05 */
+/* DATA */
+       unsigned short detection_flag_2_addr;   /* F51_CUSTOM_DATA06 */
+       unsigned short edge_swipe_data_addr;    /* F51_CUSTOM_DATA07 */
+#ifdef EDGE_SWIPE
+       struct synaptics_rmi4_edge_swipe edge_swipe_data;
+#endif
+       unsigned short side_button_data_addr;   /* F51_CUSTOM_DATA04 */
+       bool finger_is_hover;   /* To print hover log */
+};
+#endif
+
+/*
+ * struct synaptics_rmi4_fn_desc - function descriptor fields in PDT
+ * @query_base_addr: base address for query registers
+ * @cmd_base_addr: base address for command registers
+ * @ctrl_base_addr: base address for control registers
+ * @data_base_addr: base address for data registers
+ * @intr_src_count: number of interrupt sources
+ * @fn_number: function number
+ */
+struct synaptics_rmi4_fn_desc {
+       unsigned char query_base_addr;
+       unsigned char cmd_base_addr;
+       unsigned char ctrl_base_addr;
+       unsigned char data_base_addr;
+       unsigned char intr_src_count;
+       unsigned char fn_number;
+};
+
+/*
+ * synaptics_rmi4_fn_full_addr - full 16-bit base addresses
+ * @query_base: 16-bit base address for query registers
+ * @cmd_base: 16-bit base address for data registers
+ * @ctrl_base: 16-bit base address for command registers
+ * @data_base: 16-bit base address for control registers
+ */
+struct synaptics_rmi4_fn_full_addr {
+       unsigned short query_base;
+       unsigned short cmd_base;
+       unsigned short ctrl_base;
+       unsigned short data_base;
+};
+
+struct synaptics_rmi4_f12_extra_data {
+       unsigned char data1_offset;
+       unsigned char data15_offset;
+       unsigned char data15_size;
+       unsigned char data15_data[(F12_FINGERS_TO_SUPPORT + 7) / 8];
+};
+
+/*
+ * struct synaptics_rmi4_fn - function handler data structure
+ * @fn_number: function number
+ * @num_of_data_sources: number of data sources
+ * @num_of_data_points: maximum number of fingers supported
+ * @size_of_data_register_block: data register block size
+ * @data1_offset: offset to data1 register from data base address
+ * @intr_reg_num: index to associated interrupt register
+ * @intr_mask: interrupt mask
+ * @full_addr: full 16-bit base addresses of function registers
+ * @link: linked list for function handlers
+ * @data_size: size of private data
+ * @data: pointer to private data
+ */
+struct synaptics_rmi4_fn {
+       unsigned char fn_number;
+       unsigned char num_of_data_sources;
+       unsigned char num_of_data_points;
+       unsigned char size_of_data_register_block;
+       unsigned char intr_reg_num;
+       unsigned char intr_mask;
+       struct synaptics_rmi4_fn_full_addr full_addr;
+       struct list_head link;
+       int data_size;
+       void *data;
+       void *extra;
+};
+
+/*
+ * struct synaptics_rmi4_device_info - device information
+ * @version_major: rmi protocol major version number
+ * @version_minor: rmi protocol minor version number
+ * @manufacturer_id: manufacturer id
+ * @product_props: product properties information
+ * @product_info: product info array
+ * @date_code: device manufacture date
+ * @tester_id: tester id array
+ * @serial_number: device serial number
+ * @product_id_string: device product id
+ * @support_fn_list: linked list for function handlers
+ * @exp_fn_list: linked list for expanded function handlers
+ */
+struct synaptics_rmi4_device_info {
+       unsigned int version_major;
+       unsigned int version_minor;
+       unsigned char manufacturer_id;
+       unsigned char product_props;
+       unsigned char product_info[SYNAPTICS_RMI4_PRODUCT_INFO_SIZE];
+       unsigned char date_code[SYNAPTICS_RMI4_DATE_CODE_SIZE];
+       unsigned short tester_id;
+       unsigned short serial_number;
+       unsigned char product_id_string[SYNAPTICS_RMI4_PRODUCT_ID_SIZE + 1];
+       unsigned char build_id[SYNAPTICS_RMI4_BUILD_ID_SIZE];
+       unsigned int package_id;
+       unsigned int package_rev;
+       unsigned int pr_number;
+       struct list_head support_fn_list;
+       struct list_head exp_fn_list;
+};
+
+/**
+ * struct synaptics_finger - Represents fingers.
+ * @ state: finger status.
+ * @ mcount: moving counter for debug.
+ * @ stylus: represent stylus..
+ */
+struct synaptics_finger {
+       unsigned char state;
+       unsigned short mcount;
+#ifdef USE_STYLUS
+       bool stylus;
+#endif
+};
+
+struct synaptics_rmi4_f12_handle {
+/* CTRL */
+       unsigned short ctrl11_addr;             /* F12_2D_CTRL11 : for jitter level*/
+       unsigned short ctrl15_addr;             /* F12_2D_CTRL15 : for finger amplitude threshold */
+
+       unsigned short ctrl26_addr;             /* F12_2D_CTRL26 : for glove mode */
+       unsigned char feature_enable;   /* F12_2D_CTRL26 */
+       unsigned short ctrl28_addr;             /* F12_2D_CTRL28 : for report data */
+       unsigned char report_enable;    /* F12_2D_CTRL28 */
+/* QUERY */
+       unsigned char glove_mode_feature;       /* F12_2D_QUERY_10 */
+};
+
+/*
+ * struct synaptics_rmi4_data - rmi4 device instance data
+ * @i2c_client: pointer to associated i2c client
+ * @input_dev: pointer to associated input device
+ * @board: constant pointer to platform data
+ * @rmi4_mod_info: device information
+ * @regulator: pointer to associated regulator
+ * @rmi4_io_ctrl_mutex: mutex for i2c i/o control
+ * @early_suspend: instance to support early suspend power management
+ * @current_page: current page in sensor to acess
+ * @button_0d_enabled: flag for 0d button support
+ * @full_pm_cycle: flag for full power management cycle in early suspend stage
+ * @num_of_intr_regs: number of interrupt registers
+ * @f01_query_base_addr: query base address for f01
+ * @f01_cmd_base_addr: command base address for f01
+ * @f01_ctrl_base_addr: control base address for f01
+ * @f01_data_base_addr: data base address for f01
+ * @irq: attention interrupt
+ * @sensor_max_x: sensor maximum x value
+ * @sensor_max_y: sensor maximum y value
+ * @irq_enabled: flag for indicating interrupt enable status
+ * @touch_stopped: flag to stop interrupt thread processing
+ * @fingers_on_2d: flag to indicate presence of fingers in 2d area
+ * @sensor_sleep: flag to indicate sleep state of sensor
+ * @wait: wait queue for touch data polling in interrupt thread
+ * @i2c_read: pointer to i2c read function
+ * @i2c_write: pointer to i2c write function
+ * @irq_enable: pointer to irq enable function
+ */
+struct synaptics_rmi4_data {
+       struct i2c_client *i2c_client;
+       struct input_dev *input_dev;
+       const struct synaptics_rmi4_platform_data *board;
+       struct synaptics_rmi4_device_info rmi4_mod_info;
+       struct mutex rmi4_reset_mutex;
+       struct mutex rmi4_io_ctrl_mutex;
+       struct mutex rmi4_reflash_mutex;
+       struct timer_list f51_finger_timer;
+       struct delayed_work             work_init_irq;
+#ifdef CONFIG_HAS_EARLYSUSPEND
+       struct early_suspend early_suspend;
+#endif
+       const char *firmware_name;
+
+       struct completion init_done;
+       struct synaptics_finger finger[MAX_NUMBER_OF_FINGERS];
+
+       unsigned char current_page;
+       unsigned char button_0d_enabled;
+       unsigned char full_pm_cycle;
+       unsigned char num_of_rx;
+       unsigned char num_of_tx;
+       unsigned int num_of_node;
+       unsigned char num_of_fingers;
+       unsigned char max_touch_width;
+       unsigned char intr_mask[MAX_INTR_REGISTERS];
+       unsigned short num_of_intr_regs;
+       unsigned char *button_txrx_mapping;
+       unsigned short f01_query_base_addr;
+       unsigned short f01_cmd_base_addr;
+       unsigned short f01_ctrl_base_addr;
+       unsigned short f01_data_base_addr;
+       unsigned short f34_ctrl_base_addr;
+       int irq;
+       int sensor_max_x;
+       int sensor_max_y;
+       bool flash_prog_mode;
+       bool irq_enabled;
+       bool touch_stopped;
+       bool fingers_on_2d;
+       bool f51_finger;
+       bool sensor_sleep;
+       bool stay_awake;
+       bool staying_awake;
+       bool tsp_probe;
+
+       enum synaptics_product_ids product_id;                  /* product id of ic */
+       int ic_revision_of_ic;          /* revision of reading from IC */
+       int fw_version_of_ic;           /* firmware version of IC */
+       int ic_revision_of_bin;         /* revision of reading from binary */
+       int fw_version_of_bin;          /* firmware version of binary */
+       int fw_release_date_of_ic;      /* Config release data from IC */
+       int panel_revision;                     /* Octa panel revision */
+       unsigned char bootloader_id[SYNAPTICS_BOOTLOADER_ID_SIZE];      /* Bootloader ID */
+       bool doing_reflash;
+       int rebootcount;
+
+#ifdef GLOVE_MODE
+       bool fast_glove_state;
+       bool touchkey_glove_mode_status;
+#endif
+       unsigned char ddi_type;
+
+       struct synaptics_rmi4_f12_handle f12;
+#ifdef PROXIMITY_MODE
+       struct synaptics_rmi4_f51_handle *f51;
+#endif
+       struct delayed_work rezero_work;
+
+       struct mutex rmi4_device_mutex;
+#ifdef SIDE_TOUCH
+       unsigned char sidekey_data;
+#endif
+       bool use_stylus;
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+       int ta_status;
+       void (*register_cb)(struct synaptics_rmi_callbacks *);
+       struct synaptics_rmi_callbacks callbacks;
+#endif
+       bool use_deepsleep;
+#ifdef USE_GUEST_THREAD
+       unsigned char guest_pkt_dbg_level;
+#endif
+       int (*i2c_read)(struct synaptics_rmi4_data *pdata, unsigned short addr,
+                       unsigned char *data, unsigned short length);
+       int (*i2c_write)(struct synaptics_rmi4_data *pdata, unsigned short addr,
+                       unsigned char *data, unsigned short length);
+       int (*irq_enable)(struct synaptics_rmi4_data *rmi4_data, bool enable);
+       int (*reset_device)(struct synaptics_rmi4_data *rmi4_data);
+       int (*stop_device)(struct synaptics_rmi4_data *rmi4_data);
+       int (*start_device)(struct synaptics_rmi4_data *rmi4_data);
+       void (*sleep_device)(struct synaptics_rmi4_data *rmi4_data);
+       void (*wake_device)(struct synaptics_rmi4_data *rmi4_data);
+};
+
+enum exp_fn {
+       RMI_DEV = 0,
+       RMI_F54,
+       RMI_FW_UPDATER,
+       RMI_DB,
+       RMI_GUEST,
+       RMI_LAST,
+};
+
+struct synaptics_rmi4_exp_fn {
+       enum exp_fn fn_type;
+       bool initialized;
+       int (*func_init)(struct synaptics_rmi4_data *rmi4_data);
+       int (*func_reinit)(struct synaptics_rmi4_data *rmi4_data);
+       void (*func_remove)(struct synaptics_rmi4_data *rmi4_data);
+       void (*func_attn)(struct synaptics_rmi4_data *rmi4_data,
+                       unsigned char intr_mask);
+       struct list_head link;
+};
+
+struct synaptics_rmi4_exp_fn_ptr {
+       int (*read)(struct synaptics_rmi4_data *rmi4_data, unsigned short addr,
+                       unsigned char *data, unsigned short length);
+       int (*write)(struct synaptics_rmi4_data *rmi4_data, unsigned short addr,
+                       unsigned char *data, unsigned short length);
+       int (*enable)(struct synaptics_rmi4_data *rmi4_data, bool enable);
+};
+
+int synaptics_rmi4_new_function(enum exp_fn fn_type,
+               struct synaptics_rmi4_data *rmi4_data,
+               int (*func_init)(struct synaptics_rmi4_data *rmi4_data),
+               int (*func_reinit)(struct synaptics_rmi4_data *rmi4_data),
+               void (*func_remove)(struct synaptics_rmi4_data *rmi4_data),
+               void (*func_attn)(struct synaptics_rmi4_data *rmi4_data,
+                               unsigned char intr_mask));
+
+int rmidev_module_register(struct synaptics_rmi4_data *rmi4_data);
+int rmi4_f54_module_register(struct synaptics_rmi4_data *rmi4_data);
+int synaptics_rmi4_f54_set_control(struct synaptics_rmi4_data *rmi4_data);
+int rmi4_fw_update_module_register(struct synaptics_rmi4_data *rmi4_data);
+int rmidb_module_register(struct synaptics_rmi4_data *rmi4_data);
+int rmi_guest_module_register(struct synaptics_rmi4_data *rmi4_data);
+
+int synaptics_fw_updater(unsigned char *fw_data);
+extern int synaptics_rmi4_fw_update_on_probe(struct synaptics_rmi4_data *rmi4_data);
+int synaptics_rmi4_f12_ctrl11_set(struct synaptics_rmi4_data *rmi4_data, unsigned char data);
+int synaptics_rmi4_set_tsp_test_result_in_config(int value);
+int synaptics_rmi4_read_tsp_test_result(struct synaptics_rmi4_data *rmi4_data);
+int synaptics_rmi4_access_register(struct synaptics_rmi4_data *rmi4_data,
+                               bool mode, unsigned short address, int length, unsigned char *value);
+void synpatics_rmi4_release_all_event(struct synaptics_rmi4_data *rmi4_data, unsigned char type);
+int fwu_do_read_config(void);
+#ifdef PROXIMITY_MODE
+int synaptics_rmi4_proximity_enables(struct synaptics_rmi4_data *rmi4_data, unsigned char enables);
+#endif
+#ifdef GLOVE_MODE
+int synaptics_rmi4_glove_mode_enables(struct synaptics_rmi4_data *rmi4_data);
+#endif
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+extern void synaptics_tsp_register_callback(struct synaptics_rmi_callbacks *cb);
+#endif
+
+extern struct class *sec_class;
+
+static inline ssize_t synaptics_rmi4_show_error(struct device *dev,
+               struct device_attribute *attr, char *buf)
+{
+       dev_warn(dev, "%s Attempted to read from write-only attribute %s\n",
+                       __func__, attr->attr.name);
+       return -EPERM;
+}
+
+static inline ssize_t synaptics_rmi4_store_error(struct device *dev,
+               struct device_attribute *attr, const char *buf, size_t count)
+{
+       dev_warn(dev, "%s Attempted to write to read-only attribute %s\n",
+                       __func__, attr->attr.name);
+       return -EPERM;
+}
+
+static inline void batohs(unsigned short *dest, unsigned char *src)
+{
+       *dest = src[1] * 0x100 + src[0];
+}
+
+static inline void hstoba(unsigned char *dest, unsigned short src)
+{
+       dest[0] = src % 0x100;
+       dest[1] = src / 0x100;
+}
+#endif
index b387f9ebf52b76da84f646cf58ba5abaded081da..2dc66006a23234801a5bd1f8f4dd86b4855807ce 100644 (file)
@@ -14,6 +14,7 @@ fw-external-y := $(subst $(quote),,$(CONFIG_EXTRA_FIRMWARE))
 
 fw-external-$(CONFIG_EXYNOS9610_ACPM) += exynos9610_acpm_fvp.fw
 fw-external-$(CONFIG_EXYNOS9610_ACPM) += exynos9610_acpm_tmu.fw
+fw-external-$(CONFIG_TOUCHSCREEN_SYNAPTICS_I2C_DSX) += tsp_synaptics/synaptics_b0_h.fw
 
 quiet_cmd_ihex  = IHEX    $@
       cmd_ihex  = $(OBJCOPY) -Iihex -Obinary $< $@
diff --git a/firmware/tsp_synaptics/synaptics_b0_fac.fw.ihex b/firmware/tsp_synaptics/synaptics_b0_fac.fw.ihex
new file mode 100644 (file)
index 0000000..c9463bd
--- /dev/null
@@ -0,0 +1,3937 @@
+:10000000EC02E59D0000000600EE0000000200008A
+:100010005335303030420000000000000000000086
+:1000200000000000000000000000000000000000D0
+:100030004453352052312E302E3000000000000095
+:1000400000000000000000000000000000000000B0
+:1000500000000000000000000000000000000000A0
+:100060000000000000000000000000000000000090
+:100070000000000000000000000000000000000080
+:100080000000000000000000000000000000000070
+:10009000493243000500FF000C0D20000000000065
+:1000A000493243000500FF000C0D20000000000055
+:1000B000995BC5109101B1DEDB8CDA83CA18FF337E
+:1000C00043F5E04A742634893ADFD10918EC5632F8
+:1000D000C78B51A04FCEC9A42BFA103558A31DF3DE
+:1000E000DFF4C560070817A397265F0D938035449A
+:1000F000ACDEDA17FD458BF10E63FA0EB629AA8144
+:10010000466270E18723C17C73188478C122DBFBCF
+:10011000CE46143E9C4C57C3ABB6C3A5E1536419FD
+:100120009766AACF59007470B3F9BE82105DC603FA
+:1001300045958FC1DA79267F9CC3114726A973F7AD
+:10014000661BB53C8AA929632A109F6BF8354FCCF2
+:10015000A518D7F21E1779CE52CB35EF77383EEC83
+:100160007464A4C6819E2024E91E0726606AE66F97
+:1001700070FF95745F48398EB524F80C1287B7B4B8
+:10018000AE74EE3DDDCC84B860D58362E4144B657B
+:10019000C053ABDD3931AD66AD9940A82B3E14D5C7
+:1001A000DF626E5416AC1D109678606CE04156BA52
+:1001B000DF8D6301C0376A4E68F9380DDF2549F7D6
+:1001C000AA078A08F3181142D22785465702EB6E18
+:1001D000A5C4D79979998F65765D75D3D7D7FDFB7F
+:1001E0006FDC958042C2754548A748B53BC4AD3E1B
+:1001F000C13F5E1F0211E098D7ED36E06334FE1771
+:10020000D26D56605E328964656B52DCA2F1015298
+:100210000CA4E657A31FCE4C6735B2CA70601433E6
+:100220002B6D1988C267D67D74B89A81DA542C3F39
+:10023000491ED90B00D17B5EDE74B1B17E29F1C1BC
+:10024000728FB8F354530ACA68DE310937696E7A7F
+:10025000016B4F2D6A0EB775AD335DF3CCBFDAB1CC
+:100260009FC365EDE3B1C88933A010A42E2A77FFA0
+:10027000941CDFC7C46DBC3168C5D507FC1325A726
+:1002800059788952BA53E27CB1FD52977DC40682F7
+:1002900007299A27888E6956712197069BB7E94CE2
+:1002A000BC43110C106717D4B3E026CABC2193D508
+:1002B000691165E7D7F351B98F092A9B21B55DCA4A
+:1002C0008F37050FD741C227608E05483CEBC046EB
+:1002D0005C20277D9FC42CDB31D3037C089EA59036
+:1002E0007C892D8FB26EE2CF18D13B306AAADB42F7
+:1002F00016A19A55F3B9C30B60CC7AEAF7E4BE15A0
+:10030000FF010CE10DF9265FB36DC5CDBB6EDB1FA0
+:1003100094BE9A1463CECB6A00FB34E6E624B6E1C1
+:1003200014EAC05A5C6D1A6D7A30E1F76AC288EC43
+:10033000D0ECA644C1C6B2612710D6415E065C422D
+:100340003848CD56E7E153B8687EA2AA8D3EA2DBBD
+:10035000060FB745D8E7B2092C190F176D8D684104
+:1003600062C106CE4562FE34DDD61B820C32B42C4F
+:100370002B40712C607821CDC14E643E91CCF92088
+:100380009AE6778AEBB1A763325720CB861699F5A8
+:1003900030222A723AE86D118ABD7DA135428D93D3
+:1003A0009F9EFECC988D1AC007C006F83F1BAC8FED
+:1003B0009F22C5972B1F6E4CD95F76BA3676DC3BF1
+:1003C000AAF331EE8C1512796A9C9CABA374A1B18F
+:1003D00092151D32C4BDA03D3AAEC7C00E2D62D3EA
+:1003E00049195E178500AC1822148603D933EE999B
+:1003F0008E6FD156F1CC00CF4970B3A342B87EB80E
+:10040000C4D76C02D907A46328C1903196FDCC45AE
+:10041000FC1FE9E66637288E9DC2AF3579B26F21A1
+:10042000495C232EC3609FDF509F6BB4378FF07FF2
+:1004300018BD648BC18181425323297FC3348A0E46
+:1004400079E25A0C3C0AEF0B2CAB7A35097F5F8EB0
+:10045000E80C28881E83E868C2AD63D2480246765D
+:100460004C833DB15A4C4993C5AEFAB4A61663A26B
+:100470007CC8EF2D23BE2C7FD7F013152C0E71886E
+:10048000BC147D328866FCCCFF203501CA49F7E3F5
+:10049000E27AF6C7A99D82FB6FA905F6A8189D030D
+:1004A0009F7CB54047FA793C96C19B6A064C1B3845
+:1004B00007313A857B8EE68A1C4B507430369B663A
+:1004C00066DEE37BCB04723EEE3F579096A8C2B047
+:1004D000986DEC7E0E99B139A4CB8FD204E0B4BAFA
+:1004E0009699761951A138189C625579A29A640A96
+:1004F000B888D8CE145AE0E92110E62B5EE4A1BEFC
+:1005000056EC22F8572BAF2801FE4447EF8A941F80
+:100510009EBE835B92EFC63A877EF23514264591E4
+:10052000CA44931A2BE7B6EA7FCE1FE2CBD32289C7
+:100530002D2A6F50FD036291853DF20F4E3C62EB18
+:10054000ABDA3871871475125811BBFAED75958ABC
+:10055000FBA6441E4E7D5B45D2A8FB0BB3A3F3D98B
+:1005600088AB023A1B175E41AAB0AA2CB56FC3F341
+:100570008D2A32601A6A46183F09849E936B2E10AA
+:1005800012D92887F00B1B028413B8F85442F36B7E
+:10059000DFDA7771D00387B24ABC99E5CD4DBE1E34
+:1005A0001158857DBC5C22E560107DE22DB41FA84A
+:1005B000E47BBC932353791EBFF65622AFFEBD39B0
+:1005C000F649CFB7704D73F1CD0933325F1A200E63
+:1005D0005BD3B9C0EBEA0F9CC182D597CBF67E2FD7
+:1005E000BDA4705D865BEF6F96B588F511E5FBC61F
+:1005F000164028E9769790CD3A107AC817125BB06A
+:10060000976304EA9EC8682E911BD84AA96F1F8A77
+:100610003EB0F19CD85B36278705EE2D986EBFBBA8
+:100620007D4EE1BB64D951696BB8D53C9FD2E2CD18
+:100630001D0194271EDD296B706FB9691B5A3507A0
+:1006400078105A96E933A23A68CD29067EC77A2BEC
+:100650003972E2FDDE701DEB6F96809755C3CC1E9C
+:10066000B9206AA5995D8A2FDD4088D924081AF33C
+:100670004D5A354FBF4CAFEBF20D2C6940D280463E
+:1006800005460B2400946CE22458D915ED67EFEA77
+:10069000249DE0ED86AE1294DB0E331A46D29117FC
+:1006A000BAA1A4347AAD474F3DD73FFDDF0F628733
+:1006B00009FB3C73780079819E17CDC0256E38C93F
+:1006C0009D97E95EC701475EA6AEDCFA83242B86C0
+:1006D0004381EAC68911AE539BD21790BDBA3BF94C
+:1006E00041A122C4DE5C8EAC87A15E9445D1AF13DC
+:1006F000A3427291277D0F9E8308E5DC68F1BA72F0
+:100700001F74F6AB26E74E14A1781D1C496BAD0B88
+:10071000CE2740579FB8A534574D679A10A463451C
+:1007200054AFB23FA7E2590C58BD8856D3A1ADBD16
+:10073000DAC1270503951286FDC700EAA02052669C
+:10074000510FA0AD59FFCA1C345FF3B28AF2C3D86F
+:10075000C1C73DD24B05D70820D24D00A3AA8F4E6A
+:100760004A00B6DEA80531F32C176F4D6E70F63DCA
+:10077000E7FCFC9F471ABD62EEDBAB670DE7E9B112
+:100780004D516CF37CD8D2281B71811E0BA124E53E
+:10079000D9D4215F2AD2DD94F3657DE3379468389C
+:1007A000F0FD22975591EA1C93B644F040529936D9
+:1007B00014255347409CCF04D97DD8EA1636A5EDC1
+:1007C00065892ECA0E92AF8B04D3A393EEE00DC1C0
+:1007D000C53103C5BBC5E13875AEE21711457A2AAC
+:1007E0007AC888A52B44BC892BCAF37B4FAA9720D3
+:1007F00040C219E5C95127F80230128612F20346A9
+:10080000F7971FA18FA4EF46C9BDD7B358E596EB64
+:10081000AFFF10E15E29A3246046BFB403AE00DD44
+:100820006AE7CA79D662FACE0EC11FB98E9E874496
+:10083000AEB69BB9BD19B58B672868FEF4B62CD748
+:100840006442E2EFA56A8346EFC1C6F761D33AA0DE
+:10085000324EC1EABEF57FFC439766E3DFCDA23797
+:10086000232CFBF2D4BDA361744522796D1C428B0D
+:100870007AC9FEE3879449780381E52AF032CEDF16
+:10088000DDBC1E1AC14DD17C0AADD7D2DCE5459E38
+:100890001202A008E7F1D9E4CD441456C3BDE5AC7B
+:1008A0006753C8E93EE148B98A6804B201D91869BA
+:1008B0002565DA28D8E5AD362E6A7705AB99EC3197
+:1008C000C3CB0430CD6B0EA432E67E17DA7226D28B
+:1008D00033E915471DF1888AFE0203747ED98FE340
+:1008E000F599620A31FA133F2F64493F9D15BDD037
+:1008F0004C0B196690385830C9A05E4255B4B7E920
+:1009000004357EB52CB8BCEB5A52E596CFA28EB713
+:100910004E44A2CC01A3F8179C36DD026429F938B5
+:10092000697FA2E85CB3852AAD7837B18B42BADE25
+:10093000010801CF0C9A19A7B4928D9EE615AFA2BB
+:10094000322991EC4299050F24D5C6BC3898302B3A
+:100950002F02833D6A7855EF8797A1A0A246947035
+:10096000C72F468DB5F798E11BFBDFBDAC03D8431D
+:100970003080BEB153FF4C068AB96A64A8187C5314
+:10098000A4D7ADEB5BBDA290A69734CCE0D614B44F
+:10099000A376F0C38385BF728DDDF6064AC95B245A
+:1009A00078DD200E7B1D7FFAE048C21225338F8D43
+:1009B000FB455FF40B287215EFF4629966B7C9978F
+:1009C000C49E72AB0B9F3AAB5817553CBB44C764EF
+:1009D0001FB76A5D51916FE025130C01DE3241F8BB
+:1009E00019BC28146CB9EC8B2B67A9BC435C44A5DB
+:1009F0001A14A7A7ED9EDBC43EF37D0EA6E542F0D8
+:100A000053FC9DABF0A5B52DA1CF88BD9621D2603A
+:100A10004C2CE33DA39D33B57EFA7E89B99581EFD9
+:100A20008FFA19E3BB3039BE933AE23E4181C4F0FC
+:100A3000C2A5EBEF8E7394699D2B4F2ABD8C424764
+:100A4000CE3997F8ABC6FDF56B47725BF767BE0E04
+:100A5000ED7995CDC30158694AB5D69B5AB070B1AE
+:100A6000F6DC65AB00E471569B8AF6B452EED2C94F
+:100A7000200FA4884D8ECDE238864C16B2FC5992D8
+:100A80009D8EF93F57967B52B375AFA377CF45D86C
+:100A9000EFDAC21C389EC3D0122487AA178FD787DB
+:100AA000E3AE682C60BED8066615E4D96115721DE8
+:100AB000FC07CE5C196B0F9275CC7BB69B3DB9568B
+:100AC000CC2447C33A6A13A729CC83A3DA3A8435E6
+:100AD0005742CDFD76D7B44EBEC8A5491EA2AE8200
+:100AE0007FCF4AFD205F55823B6B58650FD20C9833
+:100AF0006FE80F45BC6475058E1004662B30F292CA
+:100B0000709B25E567140D076A0662A9C59235AE8C
+:100B1000B5A468B6465079A778787B93B5A449E622
+:100B20007DACFEFAEF2D7B102AB51FD875395E3AE1
+:100B30006C9BD1B2F996D266A7A65FDEAD099FAFD6
+:100B400098ED9CD5C05FAD8E27A97BEF88193AA799
+:100B5000D97C992A9E8C5B94D15D0C044F5C8552A4
+:100B6000C597EFB7F4CCC75B1705FE5AE22E9DDDA3
+:100B7000A6751D00D024D7094B2E248CBFC4127D2E
+:100B80005E09273A82EE24E5A07F49F0B3C36CBF2B
+:100B9000948962B87F1EA3837B95CC3688780D69D3
+:100BA000B3DACDD2504F04882C7D650A9E80D63FA3
+:100BB000038848FED108767BEF2BEC09AF8E4B52B1
+:100BC00064C8B92640EF392FDA53A843C1B756F1AC
+:100BD000BBA6E359AEBF1D8E0D3A2D431543E8DA8F
+:100BE0000DC6DAF94145164457C58E424ABD610A21
+:100BF0007FBFA51B78FC4F030A3D4E7E330CA9B77F
+:100C0000464093F8BC47822816747E7E3973F5B649
+:100C100092F94778A0E0DCD20C9B0D02313F9F3D5A
+:100C20002514821B00777145412A5524C3DF19B171
+:100C30005A4FB06DCD4EA6FB42684D775CD8E39419
+:100C400083A88992B968A846314F8DB750D5F9313C
+:100C500075CA62EFD6E8BEB303BE963334C6E7B9B1
+:100C600065FC69FB0DDCB5E48FB82F1E045B812B9E
+:100C70008C467F90E55CB48A42CAB8265B180D2F7B
+:100C8000CD6146C507CF6216B7EF42E6A71C74F1E7
+:100C9000CD968CA1AD78E433B0D2084346961B3F85
+:100CA0001FEE900A5BF554ACD06A22F42D5C72A161
+:100CB0006DD2756367280246864D5F6DD9FA05B916
+:100CC000DC20ADBDD84ADACD3DB8D0321E29033084
+:100CD0000CBD0AEDE13312435B3AD2EC73CF4237DD
+:100CE000216ABFD933F4B6F838B5BB0648D0C2582C
+:100CF0001172A4C213A7553D4F95E870EF2A20AD9D
+:100D000002605CFF021381B3238912413BFB7DAC7F
+:100D100032881B39304D50D380B6A63A21FACA1614
+:100D200061C43A75D34FB784850939DD94E1912DBB
+:100D30002A91DD8E8F79C547A5F894F7CDA7775115
+:100D4000852493E1916B8BCC64704766460B158AC2
+:100D5000352501DC22FCC9D486DA8E727C4AC52E88
+:100D60001AB6BE68A48BF6C3F84516B5487BB065C5
+:100D700044B489E4798A4E6E9CD171852427CA18BF
+:100D80007B2D2F27CF58ED7C07C4919DE6C8A9F68F
+:100D9000B793A286E392F1F9FC247B215B48F0F043
+:100DA000B90E38008EF0BD74B00837CF3D1B909E51
+:100DB000CABED157EF5E3098FD5BEB3DBC17698F23
+:100DC000A2744279D3A8AA16C2DE9CFC29FA38D9AB
+:100DD0000308793EE66F9AC7F8294BC78D9F567C6A
+:100DE000E5F53AA0C0CAC4771BAC84EB85A08B5C48
+:100DF00093151D90864489AB5B59546B029132A6C2
+:100E00004DA053C9271FD5D6D06133088C83F35B1F
+:100E100082E936C00CA17772DBB6D4A2AA136E1E8B
+:100E20009164C6F4C08C36D99B0F75A9E35C3295EA
+:100E30001182C11A130FF68F1EF59421F2D9D8B280
+:100E4000E838EE6DCB643A9D677C12C69CA0768D27
+:100E5000C41D30C40409C35C405594CD42FFFA411F
+:100E6000186DBAE1AFD479FFC63AF8613B7E745D84
+:100E7000B2095717298583D4CF478C0AFBF7B70FE0
+:100E8000D5AB5BBD0A9D8A65FAFE662A82EF1F9C80
+:100E900033A463BB26911EC6D2FEBED201BB9058BE
+:100EA0005A9C053B2031C00F3A504CF68AD86D6EE3
+:100EB000DC6BB8A1EE64550370345F6BC3AF7EBAD0
+:100EC000ABFC0B5EE2019FF42CFD8A7F086A56663C
+:100ED00067B4AA78A41B16F9F60F28DAD64BF15D91
+:100EE000D9144753C3820CD4BF6001708CCF05BFA7
+:100EF0003F32E879B4970BF1D4906E608896949560
+:100F0000159153219239FEC4877952EE3B763CE825
+:100F1000AB2AB711B85C53189858DE17391C98B033
+:100F2000AA5B8D7E057D276939FD9E7EE3465E7452
+:100F30000FDFE3B8665061AA31AF66306ABF7CED5F
+:100F4000359AC90F3CA54E33EF2668FE83D98B5DD9
+:100F500048B95856E730B8341F5710A1B599A7C6FD
+:100F600043A71F5EA3A91BCDEB5F4B5CDF45EF9F43
+:100F7000DA9D425C8DE0F178ED601FF6ED5F8976D9
+:100F80003D834686580E879CDA48EF9F945777C674
+:100F9000A29230EFB7058472F1CE5A683FD1D2DC0D
+:100FA0003C98D6029F87D305B1B9CF58F94459CAA6
+:100FB000EED31648A56E8FE7C425F7B34163B22977
+:100FC000C10299F3ECD15AE0973CEA9E63E2E776DE
+:100FD0008CE55836F044746DB89064A4AD958BFFE1
+:100FE000549767886AB86175D8BD87182A9EBEA7CE
+:100FF00016DB2B018E296141E8453768F7BCBE62DC
+:10100000890B3590EC199651F3A9DED73FEE58A421
+:10101000B9E6A39BF80F32BBC6E29C5DD626BD2D78
+:10102000F3775F668200B4C77CFF008D9AD55E3E81
+:1010300075F6945D1D087F420EBC1022A69CD18DD2
+:10104000B4E97B602D2046DE3643B9A39A741D5C5B
+:10105000AC15E067BFED96A3DDCE4FCC570A415CDF
+:10106000FA6EB5B2FA9C4801766C0A753344CF87A4
+:1010700045AAADE4A807E23E690916C6B66237E4A0
+:10108000E6DC209DAACF13CC193EE732DE75181797
+:10109000E6E2DFBAD1CC1C1DF4353A78859DE21822
+:1010A00065173E5F35E9A6ACC9CAF591780781CFCF
+:1010B0006AD60612D300C4F8F0869E74077D8E5956
+:1010C000DF2AD74B0B45AC717BBE919440232AC4D9
+:1010D0009FA8935589C43C536F55F3E7BDE1EA5E81
+:1010E00016ADBB8043C62D44ACA545FA1D282CDAAD
+:1010F0003D85C62BABF075D73E8374FEA565401CBD
+:101100009F71C1AC9E8BD31AE551F90EB7DB5EA679
+:1011100027D95FA629AECF730322E5EB9C0A2D8168
+:10112000D91027735FDEABD6DB8C177F8043360781
+:101130001B814FB48BD7B13B1F161028E1F07CBB4D
+:101140008D044B4C57CB4766DEC03F198D7394F826
+:101150001C408ECD17C9D9C85D4BDD92D0923FC6D9
+:1011600064E20B424DDD7995D3607CDF13522FFB97
+:1011700073F9715D4BD2797DE34A6D2F5FCC84D2D8
+:1011800018272A28BABE84AF74562D8D513A0067AD
+:10119000D812A53F7FB8ABF4149D09CD39A4C4C1C2
+:1011A000E347905422D375DFF786FF0AF83082D9DF
+:1011B000BC307988FE03DA95EF059F5BADD213F65C
+:1011C00000D1360A1A6651BAE43A34CBA1983F43AB
+:1011D000B048B94D1051DE804C751B2BA971F04DF4
+:1011E0005A97CE64B51FA20335DCF9D5E18D369050
+:1011F000E7B426B0F9B009F68532CDE2844D6150EE
+:10120000719609AC9FF4300995D5FBA6B630EDFC7C
+:1012100083FF8DCC0513E7C1559D493320AB79ED94
+:101220006B6E518EE3C13796EE6E8EA3FF17F856A4
+:10123000AF16B6A121FA49D3765643CC7C210FD400
+:10124000DE59CC346106A3400322CD765DFCEC016F
+:101250004E3FF87B481690203F419AE1A9685BEC2D
+:10126000B43DCFAB6AAA4C046F103209511F94BA37
+:1012700042B9213D0A4E5FB15FD237584CEE83FC34
+:1012800094D9BF642BBFACB287CC863ABE3134EC64
+:1012900058E9790B8DA4665262C67D9DB77D5F8A41
+:1012A000D96B6493CDA90E77C6BC7D0895BEC58564
+:1012B0002C139DF39D401DC7EAE805FF0A053DE29A
+:1012C0006AD9D28BE9B6F099295505F33086AE324A
+:1012D000F0616C3B49A359D5B4D3931D9936E9CA43
+:1012E0000B5549460567F0B747D33BE8FBBC14EB09
+:1012F0007CA38F7DC14490260B3E3B173ED1766286
+:101300005036A2183256C36CA6C22F1A662795A46F
+:101310006028E3CC26B0015B8FFE6E1B5900E9AF5D
+:101320004B46A8C8D25366792F99F4A9ABEE223C5C
+:10133000F2D97DB260D53FEB2E268508CEF7DC18BA
+:10134000A08EDD86DB56193B27DEDAEFDFDD5B00A2
+:10135000D723580F0C790C76B1C24FA22C90A01E47
+:1013600061583A0DDBB3168EB50065BE4D4A4B1B76
+:10137000F8286E3369ADB0D44791370701910DF766
+:10138000C9525663537DCBB8777CDE216DB28EC8CF
+:10139000A8D2651F916E62338578B97B170F66EE10
+:1013A000014257EA7660CF08CA541A2F4E6575334A
+:1013B0008AE311D37638F5F87D9A14DE59AB2AF119
+:1013C00092D0B531F901D2C331E522E687DE66BDA0
+:1013D0006571465E2C8FF9CA7D433EC3EEF9CC7D24
+:1013E0001A563F636D58A626DECA476965524216F3
+:1013F000ED3B72E6FD48D8E0D70C355BE4797A8B9B
+:101400004ED8082ED4D31B0CE9670FD1E40B1A6910
+:101410000CDD9635BEF462CCDEDCF6EF79D5D4DA9D
+:101420007A7E58D08E6F6D283F0F698179E2E16234
+:1014300080B24E16E22855CCCB129394015B43C583
+:10144000205159914A7A3FF52325DE2B32CABEA599
+:10145000F24DF3ABC686979A61E4269C5307A65CCF
+:1014600022E4334941FAB4507A411F462A0BE84935
+:101470005CFC8AC7373723DD68750866235BBC7060
+:10148000CF5912D76C80B9C6F93BE27BC39115B92D
+:101490004CDFC32E7B7BE865EE2BD08CF3115A9D7D
+:1014A000FBB5C417BB87E155795B414D4B1C77FBFE
+:1014B0008D7BC6C319CFF738519A857FD715C79949
+:1014C0006003BFF08C1B2E0A25A0EE4FC9B4A1B457
+:1014D000DFCA6D232AACEA37E8DC776E8EE237711B
+:1014E000608E1BAE0BA5B9B5D3E44DFA778B1BEE1E
+:1014F00070EB01906052F5B222F8F4E99EA7AA0CB5
+:10150000D2235C4A2D1A5A6D6EAF227E1E010C0D3D
+:10151000A049298D620F9D5E111346C13CF6A9C2F8
+:10152000F24F0137689FED8C826D1A676A5A5A2014
+:101530008A93526D226BD94F9C7452EC8309E8A3B5
+:10154000372A8DC68F9801EF6B44DB86BF690C0389
+:101550000600F537DCE43F78076EADB5993DD4451C
+:101560000C714F3C1509614813634BC7EB754EC4B2
+:10157000F1A492D0137C3DB1C9B916FF459B26DB7F
+:1015800021D15D427C50CDE087F41B0AD7893C28ED
+:101590002DFC37CA0EB0107A7C6309A0BB32F40D63
+:1015A000D588B7F015B798956C1673DC74C80BE640
+:1015B000B9F0961EAA3C604033A23A3812F17E631D
+:1015C0000FBD2B71E7E6B9D46AEF818AEC00963A39
+:1015D000776DD9EECF2B9F7A39D24A5E1209E4B4E7
+:1015E00078FBBF935D9132F493E93E3C78566304F7
+:1015F0002968F3E34CDFE17BD1B3F2B47ABD25EC8B
+:10160000E22FA4597B9F94E29FA7B617D41897871F
+:101610003797624656E7E7FE110FAF7B33DED0798E
+:10162000D0DC6AC888DCBBE1D60E1A921B2EDF6ABA
+:10163000A818EF0C60EC5ED5FADDFD1A92EA38418D
+:10164000186AE9B1DF4E5793CA36C3B06B518B4667
+:101650009F7085004C595FAF3C06D5194A891050E0
+:10166000BCB5D8BA3E2F26DB9CDCAC130969959D2E
+:10167000CF3FB899A5722F9F7BE608227FD3EB6BF3
+:10168000A5DDD294485D6791CC48D1AFB4261D1A30
+:1016900032DAA0BD66918CEB1CAD9B931DE09AF7EE
+:1016A000D468D8F016FA5031E0985AC313AC15A894
+:1016B0000A7ECEE1FDF292E711DD36BD486F503B68
+:1016C0002F8BAF40047B33CCEEF50927AEA52687E0
+:1016D000EBA06A6C75F676EB94DE0BD5ECFD8372AD
+:1016E000CF26F726237A545F502F70525B9EE42B4F
+:1016F000CED53C7DB05F85DE37ED93D4F3AC542D71
+:10170000EFB6C0044DB28744B36C1D03343DAE1731
+:101710005D5BC68E3BD4C88FE7C83F65CC8C82BF6B
+:10172000AF5A2CA2BA8191B9E7273C6FAEF403C837
+:10173000928E3D7812E5D3BFA7E41EE7EB1FCCC91C
+:10174000BB31772E63F7B45BC985BB42DAB99C1E07
+:1017500021E2F1A7BC9A5E5234AA3FF1FA197B62EA
+:10176000E4B3555DDCF63C8B5DF5842CBA4360D167
+:10177000639010B9B95641C2B3AB434E33ADC3D336
+:101780001848125A5AC2A91EEF30B2612F5906B634
+:1017900064CBCF6CEEF9D49494470C31A6485D73BA
+:1017A000DDB3F3BCD379D9DE02863DA6A6C0811590
+:1017B000DBC5BC5DB0E38B010272E45332A9A4DC4B
+:1017C000BA2B09B11CB21F498B0D71874A6DEDAC64
+:1017D0007A3521F5B1F5AC47E2C598DD2B8F65DF91
+:1017E000E4CBEB820F18DC88A930411FFA0D02DA36
+:1017F000AF5DBD3038360A2A410826216274B4D064
+:10180000A7219E806AF9B2E27411639A813BF8AB1A
+:1018100036487D06D91BB7E5EE45882D5BF4B7E861
+:10182000A098876F3A2CBBA559A188DFAD741E6ABA
+:1018300019AD3A5ED265C4409B04710C02653D78D7
+:10184000FC45FB312ED7AC0F0E2893179F494CDD7A
+:101850007606C3016D7D5168BAB4AD6EF2A44967D6
+:101860001B7118BB2B012E2015FF39DAF98813FFE5
+:10187000BC1D6B79CF7A3AA6735C59D4AF78C35844
+:10188000D9CCD1094A5486B4F3F130D792D53380FC
+:10189000F83981E3D4C208808C60FB90DB88A30810
+:1018A000F005363A606CD400D5007A577B1B81EB8B
+:1018B00086113DA6F745FFF5926F170C87FCE0F403
+:1018C0004324F1EDD2AF6FBE4F3C46D249FE1231F8
+:1018D0009B9377B8466F4EA52354C324525D55574A
+:1018E00024875D8361947D0CEB249D7FD629B074A1
+:1018F0000B9B632008CC1B00ABEA6D9569923D1AE7
+:1019000049B1CB6F0B6817F4FAA3F9C76626DC2739
+:10191000DF241F2DA0760767F5CC128930069D576E
+:101920008EFDF2CDDDA81D3E036EDE065357A66880
+:10193000BB6D98919E5C708BB1BFEAB2014C1106F1
+:101940007C70132E3A0BBDC95FEB16495928ADD9EF
+:10195000D98BDD35FB8DF5C0462945534F231F4FED
+:101960006A601D5E8BAFDA5129A372AB380C2D2B48
+:10197000295179C2935C5FF9F8A812CEFCD2AE84EB
+:10198000E07AF3FC8922B1819145765C7324C28CA4
+:101990005B2B6E1BA56B33802624557CDBC7B1D136
+:1019A000E7B8D0E34350DE21685B04CAC010ED5DA8
+:1019B000D733AB7B8F3624BE9278D4E81FC6F35161
+:1019C0005C226FA64EECACB78C5BA68C58F47C42C4
+:1019D00001A4B4747AF5694231285EC038BABC3EBD
+:1019E0002A9ED0B849D424083922C826A21CB5871B
+:1019F000B756489B2EBB3E7B67EB5E8D24A9E0BEAD
+:101A00004846231461FFA7170FA68AEF19A23108D1
+:101A1000A17893903FC32A4B1CF3212335DE246623
+:101A2000DC618B72DDCA5F631C9E8DB5EF88F6C7E3
+:101A3000085A531DBDDF462958F1BF8D0983EA03BB
+:101A400006CDEEBBE91F496AFE9582A310333AE842
+:101A5000CD01605D869A27974CA5912AAC8FC9F17C
+:101A600053B896249F4CEF83B328786FDF990343D4
+:101A70001471DB9F62263890A05898512FACBB1C84
+:101A8000E5F9D4C0576DF263FC0D56A8C8CFAF027C
+:101A900005F1A330E5701016CE1F1ADFE9A1E1971A
+:101AA0001CFC7188C86CD532CFE7965B2AADE06D1F
+:101AB000234D08CB735673F9E12B4B49416E464DCC
+:101AC000B16584AE234A5EC6A2CA68B343C221DEB2
+:101AD00045F2595B3FED9F28C76BF02E1E74BA3458
+:101AE0004BC64E963B4DEEF3964ED95E9CBDCAEE6C
+:101AF000C06884BA67E129087E633FFA9207DDE097
+:101B0000F96AB9D1B0FEA31FCBC4CF9BD6AC7D8DF3
+:101B1000EC5EBFED83DD99AE729D1315F7B479CA03
+:101B2000B4ECCEBF32327B5685E0845C47C49D8BDB
+:101B30004FC4ACC1A728DF914AC0EAFD93038A6174
+:101B40009543D17835FF15485DE43A62CA340740C1
+:101B50002B930517E3DAB234D1E6B82F70293ACFC8
+:101B60006083C1C47EF0D4114BF0E5827EC151C6C2
+:101B700066CE60CBA49BEC60C7E19C01EE2333975B
+:101B800012A823DD7A871CAEE5B94152321E835C70
+:101B9000AEC8B08C838571A8F0C6B008291CF6DFEA
+:101BA00071C4AC2F2DDEB2942F68310AA9CEF6ECA9
+:101BB000EAFEEFEEFFC6ED42809B17DEEB979584C1
+:101BC000734429FD3D04E736C8CA0E4ACA5A90AD8F
+:101BD0004D72945BEC437247810BB14462217A866B
+:101BE00086981627A57EE03F50725E903D3A61FBD5
+:101BF000F7CE64F0A88094EB0DD6EF14CE42C497D4
+:101C0000D469C4238BEC7F38EA90CA070919FA7C9F
+:101C1000FC7E31A1411E22F964FB3A4084B76B1966
+:101C2000581626B8ABC6EEAB7706D810B3967CF53F
+:101C3000DFA1E36B89B613DC63AB83F33F98054EFA
+:101C40004B85EBFCFE65CFE67C2206C1A1BB599B10
+:101C50009C9D1F1FF6BCD6982AE1369478801B0005
+:101C60009FACA2A8C9BA229193D7A2D78E694BB3D1
+:101C7000D3274C35BCAFD1489D89EC1B82CECF1504
+:101C8000DED460F5E6DF9D4B7BE6274F4D71188F64
+:101C90002BBE4CCE1164E705EBDF1099F66AB9A2B2
+:101CA000D306753EAE8A6CBE184C997E1676DB352F
+:101CB000F95E5A64D8C15171FA2D5FC5760AEA6B94
+:101CC000A8C7B4DAFBD7D3DA15C9736009BFCD5200
+:101CD00047181D831C10B38F01747369412BDD9E5F
+:101CE0005A09731468A1AB93862204080D6E747CA4
+:101CF000DDE8B4CD47FEA2C841192B8CACB51182EA
+:101D00008D640EDD929347C8AB4DE591CFE14E4215
+:101D10004D341D489EEE336D2ABACCC6EE0358AB47
+:101D200090F17A51EBD778DA8EABC4A9C73D7436FF
+:101D3000BD7190A7F4EF944271B6C72C0D9869EA73
+:101D40001C7AB78ABE558A816F15C40F85B3DA40F5
+:101D5000A90BB074F0A6C50DF16EAE6DEEBB1F55AC
+:101D600009F9BE4F96007ED473AA0F27F338635E3D
+:101D7000C18717FFAA31A553A59552F2C56E3558F4
+:101D800017A896ACE71E8FE1727B7EB21D28656CAA
+:101D90005602F2EE585A972DB09891149F7EBE1FAE
+:101DA0000F42D618E95D7B4A86D30BCE388277D4B2
+:101DB0001488D95CBA0C28BDE052835DC5BA91F590
+:101DC000293C6BFAC1DB64D7F4C0542FE4976F59F8
+:101DD0004F3F26B9DE388765D0B4F8D64BE5C069E9
+:101DE0008767668AD2C78092663CD3FC0D1874FA66
+:101DF00083628BC68EBAECF23E159C25792D9A0330
+:101E0000D743A01988B61787FFED00716F2E6B8C32
+:101E1000B00CD3DD84A72B750D970F23842EA570EE
+:101E2000C3220BFDBE04DAFE27A0B023AA3C19444E
+:101E3000239FD90273923A776F405AAFD2E08A0358
+:101E4000E19B47723B40B9CF89A8FE8581D8B43C5D
+:101E500010A6CCC199552A867BC626C0E35C07E153
+:101E6000B7C370E418EDED1ED438561E6E295355D5
+:101E70008ED96E20E570B6153C87458E351D5BB159
+:101E80005FAE9CF5D8093BBEB368290C0F98DDFD09
+:101E900019A4991C3C590F9055053366AB6F113846
+:101EA000D10326C9DB90185C52F59BAD82A0BFEA36
+:101EB00098E5BE90EBF127D600148DB5E4CDFCDD9E
+:101EC0003326CE1F4A8488FC97DA8B3BACC9F64D8B
+:101ED000C013D77490E1867D0728107F41B47FAF8F
+:101EE000AE830059278E80FE1C63C027ED1D1FD3D3
+:101EF0007866409CAD64127492D100E0B0EACCFAEE
+:101F000002267190AC9325DB2AE345A0F017D0CCD4
+:101F10000948EB67AA11C03C9B39B562C8F6A9D73E
+:101F200032F10E3085FF0D71251057CEB9E6CBB5D5
+:101F3000A00B4F9088BA6237874A3368C0DC81A40F
+:101F40002F598FC16DEC38EA58229FAF09215FF3FA
+:101F500070B3144B26D40DCBF675B7D7A50193E813
+:101F6000263FCACB6BB9785C776FB969D761FF52EE
+:101F7000021FC2C125BE1896319462F37BD73FC7BA
+:101F80008D5B828281119A983815B42290527F4DD0
+:101F90008CC8A90944A4065DE5BEDC498C49E3D59B
+:101FA000D433507CE1213A805FFD8BB028968CE3DE
+:101FB00069DD336925775A52A140E962D72741028A
+:101FC000957E3AE5A207A8487F7D8E1E42B3983BD6
+:101FD00017E0449B7B090F4031BAEDF45C98B7B62B
+:101FE000F03B08EB0FF8D99F974B53A17BC30F969B
+:101FF0005869699B59160BA62E2DA89ED47E28BF22
+:1020000099F1E7B20081CB39FFA6B722BE53B90BD5
+:1020100033A40C9948DE9EFE55C3A8EB22D3707200
+:102020008F241286EF905F3A82EF8D49EF0929C025
+:10203000457A5B82DE38A4EBC390C54338F3B30620
+:102040005812A082F2D47FB7FA0C089240B07453B1
+:102050008DD3D856D32FE5E5D207EA021FB234E478
+:10206000613F0201AB4875C5EE2D6A7878406A057C
+:10207000BB662E19C5BDCDA4E06207CFF82A4EF885
+:102080001B4A94F1CBA5D0E8CD64B6E18F92DEF285
+:102090007864651416491F0AE9734B39FDD170EA5B
+:1020A00066BE5EFB3C52310C1693E29CB2DCDA97C2
+:1020B00059A96A3E68961FAB50F14C9DC8D580C5A2
+:1020C0000E238706DF5BB27ADDEE7FE1E2D872ECA9
+:1020D0003ADAA56C6DD9323E25257C301C92EE6231
+:1020E000D7E4ACBEEDA6DF512DC971EC94E3E268F4
+:1020F00043EC1134E41559750152A2D313349846B8
+:10210000D4C77C30B67EA8287074091B68357AA7BE
+:1021100026393081CDEB51F8639A2742629DD4B8BD
+:102120003F268A9EB051D40D749D99CD5907B4A114
+:10213000DFDF3CF10B5DB893E0E074ED7F3394CDCD
+:1021400079A9B5356EBCEDEC8348A0194A50CFC9CA
+:1021500040AC9E5AE06B97E86CA9D6263B15759A61
+:102160007D467582B85B33E917F8F3560AC65CC240
+:102170008FDA06E05418016F41601843869E734958
+:102180000DF2C208F76FE511C1D3236D52D72302B8
+:1021900080A3BE6BC039C6FE83312535D9ADD0B31F
+:1021A000B031B7819C89CCBA7238929928C45AB59B
+:1021B0002A8D1827D91EA585A59F5F9AE189B4CAE3
+:1021C00016266704F57AF17AA0996C7E1DF83139EC
+:1021D00041AA50D06E97BBDE2F3E499B7D62F26FC5
+:1021E000B7D42D3B5D4E6B6807A1A47E15CEC6BC4F
+:1021F000F25A0E99D1C9C623ABBBAA336854710CED
+:10220000991EDCB86EBD093C44906FB35642FF6A1C
+:10221000A07001147AA1A914CCEB7B1441E6539869
+:10222000EA08D10073AC59788D30BAB4ADA2565FCC
+:10223000CED808A10597C0B0B7553C6F6D2399BDA6
+:1022400074B07A951CE064009E8F9D6489B6F54455
+:10225000AD8BC756B564521681866ED2153E308A54
+:10226000156B38505929CF798C23E0EF313F381363
+:102270002135BE7A9F5ACAF40890C82D0E594EFFD8
+:1022800096FAC914B84149D264F0148B18BB36874A
+:1022900063704AB704FA6EADEAFF833A6AD1D99007
+:1022A000488FCF860CFD7B5C1C62E7908B246856C0
+:1022B0002A46BC85DFA2FF752AAE718C60D1D3E0BF
+:1022C000E55F13DED8DC4AC791486043FCF894A56B
+:1022D000A153C482050051BF112497723AC49012D1
+:1022E00070392083C9FA517519439833EB9E3E3DEE
+:1022F000F4D6C403C1FC3DE4271C08BBE66340825E
+:10230000AE56735FEC303148F40829A66F4FBFA971
+:102310003DB86BE60915870500894C6638D28414F0
+:1023200087DB7491556C49EDF36F08E180734B22A4
+:1023300031E17B42B25A0A3065F7ACFABC186E57ED
+:10234000630049B2B737C7F8AA58D4EE3B79EAC45C
+:10235000458DF6900DE0F214BEE98745FC12455814
+:102360007A56D127AD9A9881F36C7952EF74678EC3
+:10237000A606ECFB89990012A65B7F482010AAB242
+:10238000BEBF03DE2BD11B983562F41D8BD72D1EEB
+:102390004730AB57F311E18D8A16EE6A17835CDF85
+:1023A000833C6AD12B4006056ADC48C75540CEBF46
+:1023B0003AFF6E83493568E4B6DEE806C7B44C5F81
+:1023C0007DE417A321D7A6110EF479A077375C25F9
+:1023D0007575B2C00A2F8DF7DA500D1677154D18A6
+:1023E000776A2562118B851AAD5CC0CDA5AD473CDF
+:1023F00046C9463E022BFDEEBA67175E3321F23224
+:10240000F5914287B24FDA1774A5707A50400833BD
+:10241000EADC9ACE1DED3E4A70FE6D63BC8FBF951F
+:10242000DBC467052978AEC3A8B269DD021C646A03
+:1024300012656C5A535F553820EE8967B0F1C2A01F
+:102440006C12146A182F4D9BC718E8CACFC52AA171
+:10245000B42C4A91D7205549BBEF3C44EF79E19A1F
+:10246000BC3BEF671FF046D88E02E78344A8577441
+:102470007E8A4074D0EE90CB1B8EFF9290CE9094CB
+:1024800027C98E9F3BDD850A57359F7C77396EB310
+:102490008C51C863F5CB000AEB4595EF3201DC099E
+:1024A0001916E9D09AE9E382F669BAD581B5260F03
+:1024B0002FEA8D7A62387131B7F4AA1FB5587E5C65
+:1024C00092D1BE1953886757595DABC96AE984C375
+:1024D000B41AA6B7DA49EF502783E0261DB9DDA369
+:1024E0000081470D603668E4614AF43DB94677E7FC
+:1024F000E55998E02F75C62C38B017E6B00BFB6E87
+:102500005821907D92D1BDC07F8CBE7328483C6815
+:10251000790E9B3E0FE0C5A00DA8C7382C9A66E146
+:10252000A10799B2F6DC5AE324DC2B4810F4CD75F0
+:10253000F8126EA60A2CD403C948DAA9AA39C586AE
+:102540007E89462203E0FD166FF0502AF9EB2151F7
+:10255000A0203CB75DC25D43FA23D2E28A1A9D9E59
+:102560001592917F14052625F79350A344528F06A8
+:10257000F96AFF428468FF05EEFCC2BA07DEC47048
+:10258000EDC8274DB41E4C6FE2A8D74EA48AF4AE16
+:1025900064CC7D2B6F0A9207F0BDF514191CA5823F
+:1025A00030D0522522F110CFA7D3A1029FBB28F82B
+:1025B0000E0C74F39B2EEAEC4176770F3BFDE18A1B
+:1025C0006FC7CD7A8163714980588718398198B96E
+:1025D000AFC9ABAD8EF6F72607A368E1FBDACDC82D
+:1025E000A6814E3EEB4AF83EE9AB5A320DD36E213E
+:1025F000EF397EC265F8BC1FB99941AC791D272619
+:10260000CF63F4A6CA2A82261564F0247E3B1F4CB1
+:10261000B2677B8D8DE893B4DCE37071F6710909C4
+:1026200052BFDF96E18BCE7259400419071C20255A
+:1026300004D622FA7DB4AFBF1E056FE4E524160B65
+:1026400009853B169F766B37B9BB8E278582B554BB
+:10265000C6ED89090950DC5F1468721CB196506A96
+:10266000F6AA623D534224EEC4A4DD83CD6BCB6F4A
+:1026700071AA2EED1B976C956CC797E51D4901C794
+:1026800020F3D6495DE03D8979FD533DBA8ECB4CB0
+:10269000661D9765FE5288FC2E3AF50FC2670F172C
+:1026A00051B8B4AFBB4E2E39CABD205FE7DA23DA8A
+:1026B000CE94244E933F6D93CF549D493DF249BB38
+:1026C00074122FBB9C9363C0946680C52BB47FE1CA
+:1026D000CB5CF22BBD739AA7F351A4D80AF8DF6D37
+:1026E0003B764BD4BA54776E5CEB4DF8D8D80AAA37
+:1026F000E8B6FA8BD529EC9C4F1EFBECF200BC9A95
+:1027000019B1C9CA3E7EFEB8F2F774E525F40E870A
+:1027100034EAB0E996CB95504778CCFDA2D413BAF1
+:102720001526EB6D80D17FB2F6C498147EB9E18B8B
+:102730000C08C9BC5F1048CCDC7F123DCD41310B89
+:10274000FA2F5FD08D9DC6F3E9D60349BC0F48161A
+:102750001189F48C08AF3EEE76DC9B82F768AB05FE
+:102760006473B9FDB1837081F07846D14D06B783AB
+:1027700018670EDBBF836F354A8404321C0BE556A5
+:10278000317E3EA36FFA4DACA70B774C9ABB8AB64D
+:10279000E5AE07DB6AF715CD1FAF72AAE4940C090A
+:1027A000352E1175C762521ED6CBAE27D52E1BFA19
+:1027B000BE790504B86B13736B7BB2E98AFFA76817
+:1027C000EA39C44057934F1C23B33C3E9BED84E051
+:1027D0003482F3914FADBD96051BF9ADF216556BE2
+:1027E0001352F14B27004AD802DFED355E7B621FA2
+:1027F000DE25BC3AE569C0980DDB374FDC8262E02C
+:10280000AAA84C0C9E22F457104576A32CEB0AFD87
+:102810006BB1D59759E82DBA12F7021DB039FA40BD
+:102820005D36583A2FA53AC21C401ACF41E4DFCF9B
+:1028300096B7EA69F31756FD951D22DD85EA0AE190
+:10284000F530251FB8097231C0C354F34FF774F641
+:10285000D4C327EBC48A7B001621FDB85B38F9E0AE
+:10286000FEE53891856348DA10243C4296B2FA02BC
+:10287000C653C20C5AD2CFFF083C4211A1C837162A
+:102880000B4F5D41D970A70D8C50C7E41EE4F8A230
+:102890009B880C1993ACEEF398196643F06080F6B0
+:1028A000910150F300A978EBCC2D84B39B40152502
+:1028B000AA368761A6C31696736D391E77C6E11CCA
+:1028C0006A1514CD72EC3368990B66B53390AF3F3F
+:1028D000D8932B3B00265EC8C518835F7C895B724A
+:1028E000FFBBA3CDA4DD3797114FF653EF39BA13D1
+:1028F0006B97B45C176D229D74706D6A0493A53B51
+:10290000E28678312B0296207F5009E6789882A3E0
+:1029100010202C827825C7D29D37A1D5DD59F6FD30
+:102920009A6BE95BECA9A9B2F9959960736D35349E
+:10293000B2C2CE7D269DBD45A75B646A658C413ED3
+:102940002C0EBAA3DC4BECE2ECF12BD266DE843722
+:1029500011ECABD00159B49B5B27D346B515BC1322
+:102960002C027E6602E5E2DC0F9C09944B4566BCB6
+:10297000CAD799E3F579FE2926D5E8F8DF4E58073E
+:10298000D713740F9B510BF9B1C9850B91247BA709
+:102990006121CC235BEB795A51D06EF4F350216363
+:1029A000560E8E059319D4EABE05D80C1C7D41CB7A
+:1029B00023D3511E2F527B4FEC9A680E0A429EE0A1
+:1029C00022269CAD2A9A4B06558FF822975B4732F8
+:1029D000AF4C387A86BC475D31D206F519D744DF53
+:1029E000BF74CDA24344B5B4F49D386825E473E1C7
+:1029F0000863E78196A482F92AE81A8C63BEE8543A
+:102A00006A8388A5D2E3F556584649BFF44CAA44D8
+:102A1000B4E56294B19183F1FE0E99E3E1927FCE29
+:102A2000A71FEF2B0A95FBE9C2B3E0DE71E329CEC5
+:102A3000BBCC53DB33B6EA3DBE9835F4735A88BD40
+:102A40007588415E9862C090489D354B867A030137
+:102A50004BEB4E0F597E59C92E9447A537D881E2CA
+:102A6000CC71DEA706F614B50BEDB54B97DD08D09B
+:102A7000567F1C19A1F2087074170618C1D9AB3E15
+:102A80003CFB669352EAF617C5C7B9832DFA933813
+:102A9000716C6B0DB967460F378D25F5CD2637C59F
+:102AA000D7B1EFFD9AC49CCA62BE3A639F97C29B9E
+:102AB00066D149BE072F0C24C5D3B0E9E06CBA0A31
+:102AC00061B2F7E246CF78986E0E619E8D1F843C0E
+:102AD000E4475A13A7BDBC6D1EDF99F0C1555123C1
+:102AE00033E853DCBA957694251343C8B5A78CF325
+:102AF0000E5E0ADC64D4F633BED811356C8643080A
+:102B0000EB14F67129750F9592AC997B75F4AC5A5C
+:102B100055BAEC5524114613E22A438B53FD7E45EA
+:102B20001EBB716807EDC8B3BDDE41262A037127BD
+:102B3000B6BD4A5B98AE513FEAF50A4D21EF29FF39
+:102B40005F9236F43B645F53EAC580852A9D1B394A
+:102B50006274348FEB5FF8401608EF067E66EB0E6A
+:102B600084AB78797A477A262767919ED279126466
+:102B7000C674EA8B5B4A8748AECBED7086D9B6E760
+:102B80003837DA911B6866FD03677614B7CB5A2D88
+:102B9000DC79FC1FEE90BC9092EA95AF8BE2971D1A
+:102BA0003ACF385F40E7A4E50347565F27058EE339
+:102BB0006E66EDD418419946DA7C023B09589001C3
+:102BC000C70113BFD57F1B8748EB329F94AF85B2F7
+:102BD0005F5A5388765D74B8E5754C642C9D7967AF
+:102BE000D816CAFD25301AD3DB6F7AC916DC1D2929
+:102BF0002A65482290F6073B73A2F95EA102EB2DED
+:102C0000E5E0D8BFC8BADE21D1DB9AA0B536D7B788
+:102C10001709EF8B6FB86883A762CFA49462189DE1
+:102C20005D6ABD726925A670D2587D9940FAC9B80F
+:102C30004CE0B842C5BD9801AC9F67FCC52D7D3DF9
+:102C400055E279668AD7AF65254825922CECD6CA1D
+:102C5000D4F898204EB6406AF0639B961457F396CA
+:102C6000FF415BE3A7CA6DC3638DD6285AEBF03EE4
+:102C70003A17BF84CD873E3F64BDD51A7DE38DB33F
+:102C8000D19C28247F6F8B9D077675C1EC9DD41F46
+:102C90006E726B8D60D1085B02A6C0445626B526C5
+:102CA000C649F7441824AAE8153E14B3785D4A3B98
+:102CB000D2103623BDDB9B7D11AF422C1E0381AEAB
+:102CC000CC5CCF83C52FDA535B282CB4751B3B9F9C
+:102CD000E97A9143F6F9B0CA404F0133E2F5671043
+:102CE0003DFE2A920D35D27DA1172C1DCA5E2523EB
+:102CF000E459D19D0A9261FB27FF122AE0229950E4
+:102D0000181F8842ED16D1A86EB7EBA245E29804D1
+:102D100097781B80A4CC34EE474BE9BDB131ECC2AF
+:102D20000F83CE2181985E0986858773C67734022A
+:102D30005BB8CE7F298E2F6A60309AF5D844EF9E1B
+:102D400030579AC39B64BE80A0CC6C36412DB844EA
+:102D5000BDBCEE132122BE0E0F68B2F2291A02A4E6
+:102D6000B6AB318675703B8B8485DB2C6AB8DF2A65
+:102D7000904696235CC4F4A7A0D9463C43DA0DA83C
+:102D80005C7E94D3C4DAD988D0AFF846C62DD2B5CC
+:102D9000992178A8F5D3AA780D063DAFA06517064E
+:102DA000E5FEE03079F8F5D7650D28C89477688797
+:102DB0009FCDC292E1F6F47CCC16B244E4C12174FA
+:102DC000F3B42D90C774D54D623AAAAAEC5A416467
+:102DD0006E356AA5A1CE74EAF365C87D76DD9E8363
+:102DE000FBC69B50BFFF0DFEEA5C739CD90846D61C
+:102DF000732737794E8045520A801122070A8ECBFD
+:102E000084E467546C8D5063CE19324FD8FA15D3D1
+:102E10001A202E4687A8AA21A5D91385A34EAC73E4
+:102E20005EFE89037C402D06D7D4E5663E0C78090A
+:102E30002592AF66BC625E9AC108CA5AD22FC9A158
+:102E4000B0E600C1977F0881C8242FDCBB62CEA406
+:102E5000E54686BA18EC4BA872A23B8FF2235911B3
+:102E6000597A2C820B01DF6CC8ED6F568EDBCC4D8E
+:102E700056766B06061175DAF918BD0CEE6E03ABCB
+:102E8000261FB37C5A3DDC6955A57439316A826BC3
+:102E900039531BCE830D2FEBCE41D09B428820357A
+:102EA000BC739DFA41DE1AEF91AD57E9D5BCA9C6B6
+:102EB0002D5B0AD4DF54E819CE5EA35E4501FB56B4
+:102EC000E598003565D3A9F7CFC4ABB5F8EEE306B6
+:102ED0001D4640846871C2AD46CD0D047560407BCF
+:102EE00026E59F73BAB4454C793E7E97A1787B2B3B
+:102EF000F9454366D56A3D36D94CBA4C87CAD3B733
+:102F00001903C270A6A55FF29C679E38D5369189D9
+:102F10004453022E5943FCF6E7CAFA5011C3E93A6A
+:102F200062C50C0456DABC460B7F9BD86F3216B0D4
+:102F30009F76C0CA6245D1E3F27DBC5F2ACBE53CF7
+:102F4000F7F7EA27E93EB0F7739106B0C8997AF32C
+:102F5000667418E9EDA038A3ED6F39DCF7D21D32A5
+:102F60009711D434878C364B03C6F7585FA763DCC0
+:102F700040A9FDECEB2F4691751C5E998E620B2CDF
+:102F8000371E574917240D9F754B3770D617F361BD
+:102F90008035C19F05930E4B3BC8A22290624489A5
+:102FA000807C2BBB26D3A4D597A5B70C86FCE4FD6B
+:102FB000DDCDBCA67E320CC246A08B414DD40D5156
+:102FC00058ED1DE64620C794EA0AEAB190E384AAC8
+:102FD0008802BBBEF78BEC0565A98AD6B1F898428A
+:102FE00040357689023411E7E59E3328E9660D8A7B
+:102FF0008D87DED54DFE95400DBC1F85A516ED7A5B
+:10300000345DB552FD072BC96DE6C9CF607AD1C2D8
+:1030100012B2EFB0B29933C38B6B02BCDB3889C5F7
+:10302000878476BA0F4F71A65718411600BBE0632C
+:10303000A552F04C304657133812BFEACDF4636501
+:10304000A3AD07E2B5696A971D2B8D21C6CF2DCFA1
+:10305000BD41B022D0B6A929B7B8A70532AD797362
+:1030600043A3E92BFED7409A23E49CE4E7FA83D1FB
+:103070004D58D7834E6545876C35EF2EAE24092A0F
+:10308000FD79FE12B74DC4F8F711171E4C71269B3F
+:103090003A3AB730BBF355E97EA89A603CD33D2A53
+:1030A0007280D66B9C840FE20C28BDC6FEF8BAF97C
+:1030B000765EAEF9A142519FF03AA46A3FF39705BC
+:1030C000E767B3E6247B0B0C1AD3E5DCAC2014BA1B
+:1030D000B322E9ECC6708D52089D14C809BF18C907
+:1030E000AAA5F0970DD3EA4A049C95EE253C92548C
+:1030F000B0A9EC09DF7FC343E2E74C13299D849517
+:10310000C5583BDEEFE1FF13EAE5EA2B0632E2CFDA
+:1031100007FAFA84D45311CD7681AF22797CFB98DB
+:1031200075FA4986505D3911E96C956301128E82FA
+:10313000FE43EF413506B91FD7DA67F055D8D830CE
+:103140004EB8B47E70A506F400CB6599CF8E4BA81F
+:10315000A651DEB4B6CDB220F52E19AB4EC64699B7
+:10316000CB976BF78C5718DE48B427377C9EAA8F15
+:10317000BEBAEF96DE9AA85E8524EDF92E5AD34D9D
+:10318000B254BBBE2A9300A11CECA3D96947F473C7
+:10319000FFF1E10F94F56A89F55B90C4CE85FDE5FA
+:1031A0000B6ECC39036D9518B06BDA1DF577EEC553
+:1031B0001DC23A12BB0F7960E1B40B69CA71B3CB7F
+:1031C000584A2B01A1829C9E4C87000C45352EBC91
+:1031D0002526C746B06C01780DCB546ABC290E2950
+:1031E0004AEB3F88963B5049C7B75364E5A76CD874
+:1031F000225EDFE60F3A6661263FE59C5AF7B06132
+:10320000BA55578CBDC5A683A9306CF2E45703E4C8
+:10321000892E5D6F780423B006B4BE8E0C8C414EAF
+:1032200074B3999AECC891C9435B4AC17FC02EDF41
+:10323000A98FAB37AC5A58126ED9FAD14554AC5A53
+:103240008F52F70DE52254D33BD0CFDC5590E28E60
+:103250007D2E4C34A65A1C27B6E807666FF141C98B
+:10326000C56F4D6E6F07B994D1062B4A4C5C19DAC5
+:10327000B7612036BAA631D1D4865CBC9FA3701D3D
+:10328000548F7F7132E879F8C36824D2899F5592B0
+:1032900071A33A24D1F006680CDD13E016599CA402
+:1032A000EC5BDA5839AA4935B3FC018640F05D82FF
+:1032B0000E63E14014467922F0431697E37B95961E
+:1032C0003AD54AD597599CDC04B31472D170555D38
+:1032D000669BF19339FEC993AD7ECF45A521FF26AC
+:1032E000E7DB55D47E7BB8A6397E9917604BD8DED4
+:1032F0000408FA3542C62E2B7ACDBA46486D19D647
+:103300000F1C09C4EF6B55D77DBC38ED89896078F7
+:10331000E5E1A74FCD75BA56F633E0731D9766D336
+:1033200013113A64C0939FC8E94EFA5FB99E26977D
+:103330004C2BF6A4B2BB65A335274E6F8874CC84A2
+:103340009FA58D09F024B140ABE0EA7D7A3878681A
+:10335000DF97AED48A00508AE09837FE42A6E8B8DC
+:10336000A8BCCBCF2F205860E02E91B0B8788C6FDE
+:10337000EFAB09A75B0D693D6D2266D7DFF26216E0
+:103380002525D069F0BA4C1C2DE23D42CD3323D126
+:1033900099AFC81ACB19AC6D4FA4D6E28CECC21D04
+:1033A000D6198B5E3C9470F9AAB975A42BAE263A57
+:1033B0004504B64893E7E086F0946199B5C2EDA95B
+:1033C0002C084601C1FB7A22ACD308E271D84769C8
+:1033D000BE06C1B2CB3744AB67981AA2AAF5B3E1D7
+:1033E00012DD78FC9FF8BB47716C7FECBC7DBA7E28
+:1033F0001A08ED4F19595441B051831158E4852DE5
+:10340000826BCDB7BAA3EBBA8D489056C9EF3A7D1F
+:10341000ED4D8A986BBD809959A35C6E0B7BF2EFE2
+:10342000B0DE7546C9224A9986788204F083680521
+:10343000CD050140CF2788E6D65EEF3FE5EF39B1F5
+:10344000EF0F7D164DD791FAAB902ACBC36C048851
+:103450000800FF714F285F4ABD6756FB59BB887F44
+:10346000D97A83A26575B4F445B937ECA90413CFB2
+:103470006D68F872AE8FCFB5719BCE3CA9611F15F8
+:1034800035ECF112FDC92F197EB62626B47F3FB365
+:10349000C01B0125ECEED25C8FD4D32199B0EB8F09
+:1034A000C8E4DDEA60AAFB77D17A07D47A25F6D2A0
+:1034B000171E56CC2AF596259A8EC8444320695F7C
+:1034C0000F75F33B9678AECA8F1CA8EF4B4D9F0C3F
+:1034D00048407F256D606B801657FAE571886895C6
+:1034E000F4213B35A972B41D86EA02837CDC1FE817
+:1034F000E7BD63CD29178B163AA3446F7244F4EDF0
+:10350000CF35D1A0B01106F7628BC16782EF04A05E
+:103510001D8044EAF3B10A1420BD0188AAC4691AC7
+:10352000F7ADB48269D820C5A4364BEBB8E8C69095
+:10353000F5E0ED9A1C06FF326CEAEADCC826863616
+:10354000B979109B7A6F424BF2955EF64AA9C12C6D
+:1035500015FA4C202C8E4AD42D10C57CC452164925
+:103560002B6199B126BAF6BEDC6A1ECC2A5ACD6808
+:10357000CE5185D3ADE7F51724ED9096AE0A7EF3D4
+:10358000F9DE8E7AF038927F106E0218C9518C28BD
+:1035900026146964E24897A9A61E44BF68094972C7
+:1035A00023EF9227A9F5532DA4615210954E0FE2F7
+:1035B000AF798B397D50BEE03F14482A3CB9C866CC
+:1035C0005A2D957F028FC3F4FC7EE1488E280C6A49
+:1035D000CA4B1AB465F4FFAA1FC44826C8E123D613
+:1035E000F000ACC5ED91932987B79397E6823A6EC8
+:1035F0007B7AA17616CF02B0BC6E1F1AE1FCC640E2
+:10360000E98905679061197C2ABDE3835AEF44007C
+:10361000D091F19DD126FFB694F0D7DFC5C0B9CCCB
+:10362000BDA310FDCF415A81CAE070338738958D14
+:10363000FA31689130B4B00F10DE761023AEE8A3F3
+:103640005E118ED76440FEA9A73DDCDCCD973AE839
+:103650007F09555F930F75C822FE97A32DF9AD0919
+:10366000FC9508314A89C6188CEA6741A3357E3E2D
+:10367000A462AC1EC15EE638ECDF95F71EA0543D97
+:10368000E6F29FB67575BD48E379B166CCB531A455
+:10369000BF4C2B04625AC89CCFAB2157FD1DFCE0E8
+:1036A00029120FD770A2ECB66391F04F74012F3935
+:1036B00092ABBFA924AB6B5179322B0D2AAACA78E1
+:1036C000575463D30B7108F3B9906561582534855D
+:1036D0003A6E7AB6852EAA6305271D7F31C73D6BEA
+:1036E000ED4EDB1610571B11A2593CD28D69CE2D21
+:1036F000539DDDE23BDDAF8363B8DF76C74316B78A
+:10370000434310F1AB6701AFFF53E77D546CDB5AC5
+:1037100089C79D2CFBFDCD5DE9BCBEA07D498E20F7
+:103720009733401471D489BA51472D780CAC2520B9
+:103730007A0BC085864692F3FD0AB65E558A7CAF49
+:103740003DF26FFBFA9D1DBB733016C00A9900F560
+:103750007EFC517E15618431E66AE50FE73BB7795F
+:1037600086B80241A89B9615A7266D45CB66F0B694
+:10377000C1A9264F5826C28AEA4FC570D48AEC3CAC
+:1037800046C8B3B052C63E2D4357F7E0B1E3FD7EC5
+:10379000544C0CEFEDD5465B3A2D0155F69F0E3F8C
+:1037A00044BAB0650021A91623AA21E3A8263A0A43
+:1037B000B9112AE3ED0A03FA0732FEECCB94D8D311
+:1037C0005DAB5C6E8BBD34D9FA145880AF4A68A0EB
+:1037D000A54E9FB116F8107519E65D953BA7DCDD87
+:1037E00079ECDD6911ADCCB7A7E969DFD28B5383E2
+:1037F000E051FA953AD77B80B0BE71E00A0DBF92D6
+:1038000017E3BD538BB157CD8A172334F6D7FBC3CB
+:103810009C16AF7E992274302EC04530245CC4D2F1
+:103820000CD388EE418B239F0FFBC16C3EB7BA3E91
+:103830009BFB98106590D031A688A1BC1E2D53F833
+:103840004A35ECB22219B9B27B236D3A577DB07C70
+:103850005A5BA1DBB8904CE94EDE9CE0CD6DD92DD2
+:103860001034D07F70D131FF5E54B6070807D3E122
+:10387000363CEFF64C03A9EA639F2C6FA4C714945F
+:103880004939FC14EE45381A5CDB4A2A7F66C88C3D
+:10389000FB27B95E33C7DD3F43154EA8965A4D64EA
+:1038A000429446C2648CB76EF27A59C653092672A6
+:1038B0009107B748D73CC697BFD4EB4D1A2C9C94C0
+:1038C0005018434DEF4982C328AD7173C43890B18D
+:1038D00023BB13585954AA0DA12575C040F62AAC34
+:1038E00026A511B352960B56A8D7F421E9763D765A
+:1038F000D768AEBECC31ABD249D21FF270985AD342
+:10390000C52F03D1DF91EBEAB11BD99F1B2EB3B2B8
+:10391000E878EEEAC4DC54C202ABDA44B963F807D3
+:10392000997612783C3B11C63854CB3EFF908844C0
+:103930004B4B29261E8BBB775279850F928B76983D
+:103940005B15A223D32EC58286292B8612C8FB883D
+:10395000CA40D768C259CB876935D2DAFE8A8474E7
+:1039600021F03AD2A1F810EBC984D44A630FCE7388
+:10397000B89ADF637D59471C9B5BAE9CA6F57045EA
+:1039800053466D16F2361843908A2060255900057B
+:10399000092853A6BFA071FEF51E9C1ED3316C1CD6
+:1039A000384B85CF3F78CE0F19F9ACF67C385EAE38
+:1039B000BF2FACF0E3953EE1B921CF769651B3F23B
+:1039C0008A095C50BA15B9CCE631E92148BCA47A21
+:1039D0003C37328AD6C8AE0FAEB8600A4E266C04A9
+:1039E000993999498412E563787A364DAD0CB887D8
+:1039F000FB00EB0C235FF1E79FF02F91757340A361
+:103A00009F4416D9B2E567A45F7B7CAB645A06205D
+:103A10006B19ED14EFEA5D75BFD4A3CC5A7E3AF56D
+:103A2000C371F6978FA10CD87544FF7CFCC5DA18DA
+:103A300037E63703D1AA998A92CEF02ED4A63AE976
+:103A40001727ACAA537154C98A29D3C2DA7ADDD2B6
+:103A5000807EF3532AF9B98C2B01C24DD35FC87C09
+:103A600027231F15260327A83186418AC0577D5179
+:103A7000DC077B0F43000C311D0F90683C576389B6
+:103A8000BB058EDDB68C5118630A0E520291204898
+:103A90005A89AA82C37AF4CD29336D0F37F73CA136
+:103AA000E607210D76F86939CD9D31590139125556
+:103AB00045C683CEDAC64CB2CDE1361666BA647C12
+:103AC00024FC669679416C9BD2D7DB6FCF127030A5
+:103AD00027CBFE4FEDB64EC8AFFD8994AF9C034E89
+:103AE000AA7520741B4C93B88A102CE881251E8679
+:103AF000013BD0DB1497071A6609A35C18F9C2B022
+:103B000066360167C14631CB0A44F20D3DAD9F0DCB
+:103B1000FC7D5CA87695A799D158D080C5A7DA62BC
+:103B2000C7BE8576398B524B43659FFDA934ACDD0A
+:103B3000A811DBCA98049A93A20100176C5961E09E
+:103B40008D7BAAB3D866AC63937773C266239B92CE
+:103B50002A9315A04C41C777C02189EF872C5BA120
+:103B60007EAC1CE95BA49A1B7FFD8664450FCB638A
+:103B7000E81A2E1D6745472BF327CEDEFAD3480DF2
+:103B8000EB7A57DF9F1294CBA48121B6708E0E730F
+:103B9000656ECE0CF5CE5867B44B18C27AC1960646
+:103BA0005EAB05CE205AAD0AF3631BD51EED93998B
+:103BB000AD5BE0C49EE1C3C68DE63F90623242ED4C
+:103BC000E47FAC63EF9CC2189FA19ED572C4950E92
+:103BD000CEE66777BFF2E6A9D7D6DAF67AC4A3EACB
+:103BE0005025EF3A8E306980F0222F3F30A4F4FD4B
+:103BF0004BA6AAB232D39250AE9B6FDC03FC72ECA0
+:103C0000B1BEE3EC8A3DD4D6150725EF2A5E082A1B
+:103C1000AEC4281AE5C7AD40B156648AE146A96A28
+:103C2000B75DCB4EFDCFDBBEF828E94414298F6B7E
+:103C3000B076DE6F16E7FDE2F90A188E321C28B066
+:103C400021A32276E75E94068F07B0C93B3F783008
+:103C50009F0802A820A1AB33FB03B900A3C494635F
+:103C6000EDDE1E4FEF9E4694168F4544A7B5BEF776
+:103C7000CE66439103BF8D6481C74A957F300B5B4D
+:103C8000431D655AFCEF59C278A736EF10263970EC
+:103C90006FFBB5A7B2D3D5B51D6A41DBC29E1E0628
+:103CA0000D5FDEE83CA556C2AF30E1DDAE75F72B07
+:103CB000AF6B7725D6A93400E0BEF3DB7DACDC9991
+:103CC000F43C498DE83939ADBB019CD4694E7BA5E4
+:103CD000CDB0E93FBDA6DC93251ACCBBA94FAE43BE
+:103CE000D16F55D5FF1DF24EB55E5A1861DB843D8C
+:103CF000496E0B31718022C8363F39DB60815F4EDF
+:103D0000F15C25949500F1C7287E602171706306EF
+:103D1000876429A003837254830FEA2A116297C92A
+:103D2000A273945589E9EC00BEBBA2423FBE588FF6
+:103D300029F670412FCF1BA7D45D740AE4830715C1
+:103D40005642E3FEF39212DFBAA844F43F20BE9D30
+:103D5000D044BC49C4780A6D65409EE5D18A1E34C2
+:103D600048F1B35110E2C051A68557EC536C9B6DDE
+:103D7000DDAB70782E9D8C33A0D8B2371AA79E2069
+:103D800094D0EDDA30860FCF67B08022A094E01D8A
+:103D90005DFE7B8EB66EA2AB0AD5B96DF22E601EAB
+:103DA000C87C120E126FAD6ED52529F9CE0880970A
+:103DB0005E301AB21D39AF53D8B996EA0024A0E09C
+:103DC000BAE678CDA9E004E865F5B1D90FF166EB64
+:103DD000EC393692808E0EFB5A4C51B05D0B4792F7
+:103DE000DD8CDAE84DACF0F5BF27949A16DD3A1F6A
+:103DF000D271202C3767C8525ACCBDDDE97EE484ED
+:103E0000A3E65CB91F1699C83A28E6F4D7AF40DAA2
+:103E1000CCC98C65C3B7DCB444ABB8581E73A0C41E
+:103E20009F93911C61053E3CB1F32D5AF4EF02774C
+:103E30003E074202CB90BFECF4A645A12FBBFA6827
+:103E40004B69EC06B73B5CF8E317B803028C533FB1
+:103E50008CC6D5AD666A327764340B4DF81666436E
+:103E6000A5D3798CA1970CA64131A64AB2173B671E
+:103E70002F9A5278EEBE3FD8969A2572A8C3A5E82D
+:103E80004FABBE35F60C554FCEB7E9D7F408E6294F
+:103E9000171B51C19415DA3A51E78E8B0FDBA194B1
+:103EA00037266DB4FB84F0E4C18060D61E0811ABE8
+:103EB000B5FC0961CC8067D877C456C4242BAAEB23
+:103EC0005F52B03DE932C1570A3C46884E85756E57
+:103ED000FC77B47F61E784D19CC7CDC0CC6D96C818
+:103EE0009A4CFEF3EBCF03F7CA8A0B04B73B7BF97E
+:103EF0004D010C1C4C4990D99287DFF25EB9895A6A
+:103F000035A10DD3C1E8A374259E907B4FAAEC2662
+:103F1000DAE9AA9EBE2D5DB6207D936FCE15B384DF
+:103F2000B26019D75738DF9D57DEDA6A65C86BC2B1
+:103F3000AF562376A8F62B063054D2AE2B36017C32
+:103F4000AFDFB16D827E83D0BB3979A60465C5260B
+:103F50009053A2CD7053556C814B33A3940718B086
+:103F60004A820ACBD3F4149887D96E4C3DEAD7EC39
+:103F70004B8C56E131F1406AAA5E889001116B507A
+:103F8000F99BB84EADD043BF4956E06148AB3127ED
+:103F9000187CA38CF1F6F527AF0DE76B29A35C79AC
+:103FA000CE7B8DB97861FE584C1E33507FFED61FF4
+:103FB0006E5AE77956C46CA121C38BB77A71A52ECE
+:103FC000D1D2364A6A6E8CF2AF75208A898995877C
+:103FD0007690169273B89BC372E8D4AA45AF6AA9CB
+:103FE000F40F38FDA9BA6727E5CE0C6D0BCE2A6613
+:103FF0008D5E7AE2DAD6ACC860F881E44CB3CA1DB3
+:104000002666879EC2304A6E13F600CDFC382751D3
+:1040100077789EABBA5B976011F8C57FCBCCC6347E
+:10402000F0A6F9AA1D0174FB8BEDBB218DB90ECA58
+:10403000852E74833149F04DE6809D9BE22A7D29CF
+:10404000DE84EFA323D85A722C9B301A30C456A5B5
+:10405000050D8619C5A5E27394B1CFC0CFA8F45061
+:10406000B5CBC4B19E32858D1759A62AFA4AAB1E2C
+:104070002270D2019EBBE89C7624DB2AF729DBE97B
+:10408000CD30D51F020183511DC2DCE95F4700D945
+:104090008A4D0BBF91B0082C3A66618CBCD5411E8D
+:1040A000D4E9DF9B0EF21C293465582DD42AC61F93
+:1040B0003DEBE3349E6595FAA065096999733594E3
+:1040C0001DF6D4732776E8A0735C31DD69D59B08B3
+:1040D0004198A059969E1BE7B0F553FB3B05C86776
+:1040E0003E9C5EE17CA5BDF992A96BAECA4885DC19
+:1040F0008335E5316F0209B4B83F4BD382ADBDBD06
+:104100007D4A4C1614739F8F3B3C0CA8835E22148F
+:1041100097EFFD8AB3679503755F1A50B97475F709
+:10412000453EA3F1062E8AA3DEAA59C1DA6092CADF
+:10413000E00F4275EB6BE124E5AF6BF6352104A18E
+:10414000EAB530048B6B9DAD23EA160F08B2B212AC
+:104150002E8A4D71F46D7275E4B3D4A62AFF523ED7
+:10416000ECEC0E1DC8B64D8297C500D9F88991F8C0
+:10417000322A224F86FB2ADC7F07D909D2150AE8AA
+:104180000F43C1CD63F6D1D13DB849F3F7FF40EFFE
+:10419000128F54E624B90FD7D6D75DE07BF3FEBE6D
+:1041A00058D3A0591FCC97BBFF88F06F5ACFAA4FA6
+:1041B0009B4204C418A73F108CCA6AE82DB245E39D
+:1041C0003BC09D158325868133CD225BD1F33DEC29
+:1041D000D43762243ACF61043A54BE121EB7D303D7
+:1041E0003B12E1B85C6AEA6440F907F087644DFC71
+:1041F000E00728927E06F452ED1DA3FEB9BC6ED2F4
+:10420000C26FD248C30050178DAC5BACA87534F5B3
+:10421000D55ABB34F3E100185949C4675383E662A9
+:10422000E701724745005521E06247126159C81401
+:10423000551E63A7A3B3101B89AFD6216574480F21
+:1042400037928B5A505048D6B93F381769941F049B
+:10425000EF1BE2D80D2F303B463D13EC97633A49F4
+:10426000EC6A12CC0D31EE93AA4003AD2076ED6DD1
+:1042700005CD67508A6913CD05253AB1FC086FFC5E
+:10428000BE7D4F18702C7564551CC868C9D944B7D9
+:10429000AE683FE38D123A2BDB3BECE0BAF6EB96CF
+:1042A000BB4D37BCC689109BAB34987DA1EAE45462
+:1042B000384AE6B0CA8C81E987F6F8CF4B533234DE
+:1042C0003CDD1C85E08EF0F4A17A5F1C274C7ABFA0
+:1042D00084D5F874FB9D59A10AF405AB35368DD40D
+:1042E000AB3037A0F04ECA69079D54CD3CF02B2768
+:1042F0006618D45ED00355E6DDE255E0376C2C3508
+:10430000BE36B883B9948121CFA870A146DF3E3A6A
+:104310006572D17302C2275E354EFD2EB415BCE91D
+:10432000BE9851EA03F8ABAF99F02A7CD98026F306
+:10433000D5153FF1348CAB24864AAFAFDAA66CEAD0
+:104340002B14E7F9E0AA2DF6600D5327E75A71E820
+:104350008205948458724ACC0EAC335B927931B1A9
+:10436000C1423833C15041BD430C6FC9003E826326
+:10437000AECF1506E63088B4BA4A8B2B3462264598
+:104380008E163FF06691CC3C209EB93A7FD7946759
+:10439000C725D895630878121AAACE201A86E2DBC0
+:1043A000FDEBF6E1F37DE9AAB39432BAFBC1984E76
+:1043B000DD035948E5475B7A3B9064278CF127621F
+:1043C00015C3C8FBB38ACF17A6A6ADF676934343B1
+:1043D0000AB408EB92B9BA0FD60D326FD874D0E890
+:1043E000342EF58E818B7ACFB5E739C4B4781DD5DC
+:1043F00078E3C6EA6B16CD3B1A37238DD848446C58
+:104400001BC64D83EDD44A2FEC80C911F4E8F807A0
+:104410007CCDED32ED808412ADF4ED9050EA50ACDD
+:1044200057C49625DBA1753090654B7F9A513219A0
+:10443000DD88E09E854226CAE76B7C0ADDA6A44F94
+:104440005A59AB8A6E050D84DA6612CC5C85E75644
+:10445000A29881A8A797DFD7830E01564B681A52FE
+:104460008FD04A1A35151556B39B08D7DC38BD973F
+:10447000C69F477340C2CAEA1556503141EFBE2E5F
+:10448000BC79A4DB3F30DE719EE4479A3D8E688C98
+:1044900091FEEB598DF610A2BE493B5641BE03BCBE
+:1044A00042BB0C3F301ECEAA83ADCDC99AFB48B9A2
+:1044B000782165C5F28484843F78EAF97082911688
+:1044C00088EF23FB083E958EAEADB6B9AEEFDD8723
+:1044D000357B61E9E18E7B793F264567E6E5681D1E
+:1044E00085F9DA6714563D963F3E2265F0AFEE0A35
+:1044F000A749D7BB90825DC1A692BF00FCE6AC770E
+:104500000874915424E800F3725D75879071B5C406
+:10451000245568589A9BD6CADE51150DB8E3050A92
+:1045200021ED0E0008D6D926DC636853EF07A808F2
+:10453000B9641B98C5E5B886380C6F8775A012CA98
+:10454000B03ED0B16E0A7D794802256965B0882DEC
+:104550007206A870AC82F8248E847D2F4E97DDBB46
+:10456000F47FF55161C3DF4BBF24D3591727277A56
+:10457000749809C0A49B48A334E8883601AE60DF74
+:10458000382260FBADA2813D7BC9D38D24D135E0BB
+:10459000999E95D783F3C4FD08FE7D643CF2E99CA7
+:1045A00048D2613BECD0DE252CC291315829E07A0B
+:1045B00069E68EEB1922EE5CFE3E6DFE92D53A2E38
+:1045C000A4E05CB523A0BE842F9026E2A435393543
+:1045D00025214AA59752EE79A840732BF8C5AA5712
+:1045E000610A4B0EC9040BC5F8D19A0345C276C1C6
+:1045F0008FE99B8BB3E273BD2B8D0EE3AB7AEF7328
+:104600003BD82F26012D1769B2AFBD8B9983EB03E1
+:10461000FD09BE615B13D6CEF80EBD13C0F946048A
+:104620001A86A57B8BCD97EFC7543B5A455349ADAE
+:10463000966A711F4B5E5A390076B130893E8956B1
+:10464000B71413EC962D582B836BB215C07965AB5C
+:104650000B38188851E1763A4484C9395E70F066A7
+:104660001BC3ED5B8CE5F54E4BF52C0C98A098C860
+:104670008BD7F768C1E7A7D14BA5636D476895DB7A
+:1046800004A8C054D58B87CE645943F990A1DE8726
+:1046900012E2A3317FBDC48B17912DB07C986B8043
+:1046A000C7EB3367B011DC9B631061D401223EDE9F
+:1046B00048F62590E9F490394DE18E411212F81632
+:1046C000D85AA706DF2B7B8B44D100E647C2BA0D30
+:1046D0009B65491B187E266D9DA6C3F8137C373B4E
+:1046E0004CBF270FA08AB2150FB46F44930D3656F6
+:1046F000A048F9EF4D68D28E8780B1C6191146AA3D
+:104700009AF49FEF45C83B768048F958643E235D94
+:104710006D2CFC7700703CD69908E5FCB3A8DC0151
+:1047200046ECF8A25E7489A5CD9BDE2854F2C61B28
+:1047300056283F1244AFFEFB2282C4BB5D58418C19
+:10474000E8F47721A38876B40F8646E62A2B0D8DF0
+:10475000CD9B37B229B06977926502197DD87690E2
+:1047600095D4D2081B9C46C6CF633621B54C500465
+:1047700061A2D92736FC83B9673C98F4DE6C2B77AD
+:10478000C2B1C1E297E540BC2E54CF453307EA9150
+:104790008677304C235F31951F13C31A2961435F1D
+:1047A000AE2913B7DCE8FFDB20CA14EC12CC5F1A89
+:1047B00046D21B5ED899780F321DCFCD3382428707
+:1047C000C1CD73C75C34748567D1313A6C20E0B9D0
+:1047D000693EF1EAFC160B175D220F62DB2C387F75
+:1047E000AD170981EC1AC51E27177441904F0AE7CF
+:1047F000AB587480680E995B8468EB96D51054A30F
+:104800004C6F50E10A555AF00A31AC1D8718C5DDCE
+:10481000F80146EB4AF2581E5958A1881CC2A3A6BB
+:10482000BC1E7C4D93ACE5D18422007E851CCDD589
+:1048300085DE76759EF2BAF05F4541A34E2A1D1BB8
+:10484000F0E4DEC1D1CF99FDB94DE1113FD104575C
+:10485000E3380054B8B7B44764BDA99042D0E563CB
+:10486000D7804F189262EFC705313B22EEAC633F11
+:10487000229D3AAF7E48CBC6FCC310D804864C16A6
+:104880001F5B728FEBB3256FDCBF7378CB2B214A94
+:104890006A9E3FD21C1BA4B2BB7178A27267B2920F
+:1048A0003C18F7A06CA7262E57B97FEF79AF9782F7
+:1048B0007A40CA177176CD71E82DF61B105761C288
+:1048C000EF08C83B165F60290A9044C1ABF4284A40
+:1048D00053231BF851BC1211E1F2A4289F6E878864
+:1048E000F6FD3562F80176B4255F11E886367B76F1
+:1048F0000D1317FBDF8EB11549F39EA3F29C5F3EAB
+:10490000A48BF152125534805565C0A45D4AEC8ADF
+:104910008F4406E84745BA64BE7D51D104AFFB2FF2
+:10492000F6C58D389B7EECBEB10ECC78E53BA5BBC1
+:1049300005C9F8E4235C47573731BC1432C486D527
+:104940007E2DC2F25B94C5459C81EF82BF680B94BB
+:10495000035F0A7BC52F560B8D624F1D81B4774EC6
+:104960002B6D7D5BDCA95FE8C390830F23B25701F9
+:10497000698314F149338C5D121A41A3315BD297DC
+:10498000D8F09A9E0A9BA878A35D5DE8811C0A7EF8
+:10499000489427B781AFAFE1B8619D8E2CCAB9C0EA
+:1049A000B69BC9FF3C0F82367D97280757512E1CB6
+:1049B0006E89C3E130CC84BB2EFC817BD0F7394BB0
+:1049C0005A39D2E3F48BA40CE16A0E6527BBD148B7
+:1049D000C0F57332A3A6725D0412C30CB510D0C328
+:1049E000A241CBDFABA82E71810D1ABC2592233CCE
+:1049F000A412A5A780949E62CB55FCCC248B6C1886
+:104A000006AF9CA4D2D4862E1ED17A674253CEEC38
+:104A10000AA78AEBD319A698B8EB6F02DC14380109
+:104A20002F29EA306199556B257A9FE92B08B364E9
+:104A3000E170A208714ABBDBF15AA946B3DFFC362C
+:104A4000EAF1D46A507D0E8B31ACE5ED2ACD41867A
+:104A5000721DC3FEB860489BE196CF69ECCD2282FF
+:104A60000585A60D357BE66E1118C3211BDB610E93
+:104A70008A80C6AB27C808245F74DA818684D3771E
+:104A8000A11F27BA975E66852C25EAEF6E87B29D37
+:104A9000069A8CC3DB8960587142BDD3297E0EA96A
+:104AA000B1DB6F37652BCDEDF49BB437760D8B34CE
+:104AB00010DB7C37FBD4DCDB8832D19027EEA7E01B
+:104AC000E85FCDAC7A17A7B498FA2FA44AD308466A
+:104AD00045EE5B4A395ECFFAE5E010ECA4734990ED
+:104AE000832BF229D680C0E3248EA5F71B044C3813
+:104AF00059F6CF90669D9A6354345F1BEFD0281609
+:104B00005B5BEF56C44758D62CA2891D50F8585B02
+:104B1000A5B63C32FFDF33C62BB2A48FF51CC449C7
+:104B2000F8855D79A48A2F6B1E7337B587ECBCD7E7
+:104B3000D1671184F1573824536123CC6E57082F65
+:104B40004FFD01A0FAFFC9E24F182F550593DBB5C1
+:104B500070B434615A98CCE3DAA0CA96C013CDB3CE
+:104B60000BDC47675400C1206ADE977517E9DF83C5
+:104B700049AE299C7D0966D8AA78CA2CBA2404B506
+:104B8000277F4CD50F188A0096771ADF09205BBA69
+:104B900033990C7FC7CCAC18C773F4AAD916BC9450
+:104BA000AB59B2B847312D74C25FAFF4F491A00491
+:104BB000E24C82EAE2192F941E56E779A65D5E1A4E
+:104BC000BEE2D012B1C47A07BD8B18B6E5D8E62193
+:104BD000889001113A91D0D897A021E3A8992B6A27
+:104BE0004CE6A9039379F240B98CA0B7E8C03F73B3
+:104BF0005877155A3464E69C70B2555AFC59B4760D
+:104C00000322E7CA7835B5DCF6490AF951C3E60D47
+:104C10005D5888F7FD801A277FD354928D9F1E21FF
+:104C20002130ED07BB1386860BF0F6AA4B370DB883
+:104C3000B49EB8DFBBFA75D104D8303E52B9EA044D
+:104C40009C1A7CB5B240441B88D87841FA8F1DB9B4
+:104C500007A43D35FEF3753A21000951495E4148EC
+:104C60003490DEE02F5F53E3A5D8E0FF11944FF2BC
+:104C7000D9D3E206CF6EE0C78482C7BDD4B406C9DB
+:104C8000F4B252FFAB1B72637BACC2484E98C5FCBA
+:104C9000A6B23906A7BB00BB8461210C0460D41006
+:104CA00058A6D62E128C1F79606A26309454220E94
+:104CB0005B7CA5AE0C6B84611159FACB027A271B81
+:104CC0001374713BA3A071B7498CB2575A6EFDAFF4
+:104CD0000C405EAF73E8481161C53006730BC541E7
+:104CE000941E41A62C31A646564606EC99C8D5A07E
+:104CF0003C141E5D3D33A676613BD9408EA79B0CCC
+:104D0000E676D484A6D9DAF12D22715F89384798E6
+:104D10006698658F0A90EBD1B95F835C6EA2DA8FDB
+:104D20002D44612495B5BB5FB54529A515942E6B1F
+:104D3000922044EE3676749C95DA4D615D63A31E35
+:104D400049164BFF441F6BB2D3ACE3D18AA6D1F610
+:104D5000EB10B9B964A651CC0C0E49595526CB5F5E
+:104D6000743A5815426276EDC87073E88049E3D70B
+:104D70009AA0F235D0C3286F412E750BE0ABF64EEA
+:104D80002210C625F34C5FAC306FACB1F9738903C8
+:104D9000ADB4BD67144E08F5B3E1B4D5A493627801
+:104DA00016625BB1D5D4D5F0E56ED82FEED60D06E0
+:104DB000635E5BCE1506176159784B3CBC07456AAC
+:104DC0009774BDC4138924AF9126F64B590499E515
+:104DD00033363FFF25B369EDA6759AC5816EEFC2E4
+:104DE000654F8A8A79F5BFAC8A5ED42A44D6598544
+:104DF000425A2EC09ED948BB465F662F0AFD9A4F85
+:104E0000EC49EC3B38402BD7EA90C6A9CD3192193A
+:104E1000EFDF45C87F11396131E8342675376E966A
+:104E2000CD7058008953EDA15349063B1D1BD0722C
+:104E3000D20C7FE4EDF213DF6451B631AFC7BEFE92
+:104E40004B638FBCBA6749A36E92D2CCF3FED930C4
+:104E50001601F4A7FD6DDDF5D76A23846A32F0B53B
+:104E6000B43978761113B76C1F2357E0703CB20445
+:104E70005BF7FB88670AB57D65FC981DC173C09D13
+:104E800038B00E3BF39BDA39EF9F035FDCB5952911
+:104E9000668D3047BBC7F4AAD8F45581F7DE7F7E14
+:104EA000663ADB842F05F0F7B136B2AFF7F4C620CF
+:104EB000D52E1EA0E23E5986E1EE8155644DF1D219
+:104EC000A19429C724539C58782ACFF2A255AAA7A7
+:104ED000DA364BF0E7C0753076D8E87C59C62351F6
+:104EE000207363C4B9735CD8939432D3FE86397946
+:104EF000FECA9704129A8C547A666D8FB2BECD8228
+:104F0000D4BBAD548D39D87F0D7D2993B4D2318C6B
+:104F10009C28F25183E0D2F825316DF0E789EA7DD3
+:104F200091BBAD37B334CF9957C3C328A47CC150CC
+:104F3000F690396FD531BCFAADF6B11CAF9D1B565A
+:104F40003817D7AFA82A022E1F1E67AE4FB8837836
+:104F5000E4BC15EAA5F6A54BDEF61D77EBE74B930F
+:104F6000BC2F5C6F061497F9D7107A65F157990238
+:104F700079F0E86AC354180380FA2F61BF71DA5BD5
+:104F80007FF5DFCEC2A401374F881AB94DD8B97466
+:104F90005F8DA5E2B84C518F29E10F6F627E69BD2C
+:104FA0007314E4D86101D70E9E12B6109B039218B9
+:104FB00066CE570616581D931FE6E3752D52AFD9DE
+:104FC000D5542E264F6265C541D91C46807170713B
+:104FD000575766EF12F00D330AFD8819A745530B9A
+:104FE000F7D3C9AF03BAEEAF69F9E21B93FB86F2C0
+:104FF0006A21792B52F0130F46EE6C7F317846AF61
+:1050000073FB01FF529EE0E5CD13D63FAEA4D3FF64
+:10501000235204E4B189B73F6ED660240B675AC4AB
+:10502000DDE1555A0B0D361800DC34058F158C0860
+:10503000C160363E3CE0E16053DF8D139A8004CEC0
+:105040005BD6035FBE7D521D673674C8CBB559A7CA
+:10505000A57C06D698731589012F13840074793FB7
+:105060006D0884ED3702B3ED17526DB45E1B2D5100
+:105070002973262644EB70F630A019D75A0FA8BF23
+:10508000DD86F1AD157530073D6245A95D24B37429
+:10509000A9A00BC96A011433C0CAE729BBF7AA6AE1
+:1050A000D376B38F7D22125BB01ED31EEE6E056CDD
+:1050B00020DA3B699FA99771B3FA437D8BBD3C64AD
+:1050C000AFEB5AB1C53291D6CAE20AE19B0044A6C1
+:1050D00061FADA733A79FC44BA002478D078BD8F4B
+:1050E000CE161C696CF41634E927466159419DFEC1
+:1050F000D77624DC72957F0F73679118B6EE2EDC9D
+:10510000D477C1F8C6367E274304C32153D68B9586
+:1051100076A4C3FBF357A1FC25B45BC56E97D326D9
+:10512000B0360D139EC061C0C96F5E47ADF88321D4
+:10513000BE2D808891725B15FF7349563398E11636
+:10514000AF5CC2DB1D518B66C19D4AB34C17825FB9
+:10515000496A85A7673923F9228139680E4C1950AD
+:10516000C0EEA22392B3D9E82031CCE48AF0738A4E
+:1051700029645A63C6A03DD9AA37E2715624F7E1E3
+:105180007D16CF2F41CC92BBDCD20DA61956AFEFC6
+:10519000B378EBFA67E0C5737DCD1C1BD1CFBCC8DB
+:1051A000B0470CF82D2C2B2B46C59AA292F450B781
+:1051B0006982E129EAC372EFE4727F1CCB2115CB2F
+:1051C000AFE051778BDD6FF60F407883C7703E3DBF
+:1051D0004D96685DE8C88F8DC46A2F0EDD42A487A6
+:1051E0004EC95AC55419052613F846757A628C378C
+:1051F000AB44AF2979FBBE94867A65AC5BA758BBFC
+:10520000EA64CD0EDC6673373D9680054D88E7C6AF
+:10521000DFB77A663D5C69D069A32AB2A4794EFAF9
+:10522000032653F310B3078D3A1C37FE6D9FAE363D
+:10523000EA52CB40AB40C6C515C2744DBF0E0D1B24
+:105240007AB701C3F83C454839E229057951242150
+:10525000CF6E620A1B0E7850510C95C02955BDA027
+:10526000E6559CA9A02647D66AB66956F4648F9A7B
+:10527000935A82CD7BB5389719599BFD393A83668D
+:1052800066658E458D307124AEEA880441878DE3D2
+:105290001B19A1350B13DA4F24EF0B745D2B77F537
+:1052A00099E73A619311C587A696DAD808ECCBC680
+:1052B00035E807CA11FB4072A1F8E6F7D370E9DEC2
+:1052C00035571689FA03FF39EBCD7898C023CDD135
+:1052D000D2A01DC1F2C95D641D41FC12BDC36408AA
+:1052E000CE3F0286B05C186E318F7B38AA58DB0D3A
+:1052F00042B14DCB41E3F5C5F835361C34E4F32D0E
+:105300003BED64265B33C9966ADA1C1DF0F7472A29
+:1053100073D7CF74AB4D74C734425D0AFB39B449BF
+:105320007EAC78BC16E9ABAE4FB8E0E7F53F345938
+:10533000872EB085B158D0A63F9206054FFE88F261
+:10534000717F78CA4E3BE46FDA8C3DF739E5B98658
+:105350005F05E16665FC685C16710014AC7C303D4D
+:10536000A029CC873517A5E6B4BD4DC60FC278B6C7
+:105370007989D1EA61F46CFA62704BAAC24AD3838C
+:105380009626A3147B59028014AFB2DA900CC3DACC
+:105390002057C0CB958218A19CED860CAB29E5E780
+:1053A00024B40EB0F3E6B83D1C49BC8A91B2D8FCD7
+:1053B0000EA05C64B612F103C99B1568AE6C6D79E2
+:1053C00051FF61179427C020E4B04E2E4CAFCFE7B9
+:1053D000D53E30AA34C056FD5CEEDC9280E71AED73
+:1053E0003CB7A6C98F338402AB70740068D0488183
+:1053F0007B40CF4A11183EA934D024BB8BE756A27C
+:10540000442D51208B5EC5A0F9D0644D8CF15CA475
+:105410000819EC89DF6B8F33A3F4759E5FD24826A1
+:105420007FEC4E76A0879D1E33F8B66ED676DDDD16
+:10543000F8918DF8809890A6516B187467149EEAC5
+:10544000AF7D8E02E90C180E6C35D54CD7CEC964F1
+:10545000CC159AD4CD61AA5451F24CFD24484F1D6D
+:10546000BC3D44EA733E8E6C52FE6F89495B303A14
+:10547000A02F91310BD0338F6524D50B6298980CF7
+:10548000A6E3DE631EBEB435B3A85B928728DD8336
+:10549000C45DAEDD20B4ABF338828CBA8FBBE92695
+:1054A00037CA707A0E1D080D961DDDEDA981818920
+:1054B0008260FFA83B29E4F8207586D6644943FC46
+:1054C000D2F220852FE258B074B48FDFA6A2FFADD0
+:1054D000E65A8E42F29BA0BB7B0F9471DD75CBD94F
+:1054E00073B229108BE10ACFD1543C8970C1EDEC25
+:1054F0007CFA279EDF92B7483BF895BC921C525E1F
+:1055000054110AE943189C2CC45F7FE6ADDE0A966D
+:105510009CBA25A967171DE3A17EFDD85B7BA280FD
+:10552000095B276AA56BC4634401CCD6F7A681E565
+:105530004E2B7AE26640E9F1FC248DFCB6A2DA2912
+:1055400082D3C4D69473BF662B590EB73FA336D10E
+:105550006E3CFAE369CDD83DECA63E5A8E60AB11A5
+:105560005B4CA3016291F9DEE7634A72B982BFA482
+:10557000FD54999C92FDF46D8BE00CD5D497D42EFC
+:10558000BEC66C36BC62B54A823A360C58524B29BC
+:105590007E8BC8EF703A67B868CC2C0081B6632C5C
+:1055A000C5221C26C5B6E253EF6102377A0325FBFC
+:1055B00017C47893CED23D74009542C244B40B64B4
+:1055C000ADB0AE826B83179E89E18C2B1E42F4F640
+:1055D000097FC49EDEC94BE750AEB966C4AA8D20D0
+:1055E00047ED1124DEDD272A19C4E6669BC7B159B1
+:1055F0000CAD546A1E4560AA6774D1110AD372C1FA
+:105600004C791E46C29D41FDF7F588D0E7ED277520
+:10561000EEF527CB358C41FFB2C9294B846491DE6E
+:10562000D5FD655457842514EFB6CFBF97B5A42098
+:1056300098CB16072A70930E4C5C168C6B5C4EA4AC
+:1056400017A0A5B088D4D366A221F326A648953525
+:1056500058EEBE06FFAA7FB91E2C0201619B43458E
+:105660009B3A49EB85DCCACEBA3E351CF6A39FA90E
+:10567000388FED4C96FD8D35531089E743BC34636C
+:1056800008B176D0163D8E1B9D34273A212798A16C
+:10569000F4D515B009B028107701DC888AE9F39AAF
+:1056A000727C4D228825BBFFBC9FCE97E4610AEB3C
+:1056B000650C12C1C1BD4B4907C585BAC29C3F5D8F
+:1056C00036948158E6368504D1D956123D5E18A12C
+:1056D000FC432393EE0B9FB019438A4BA3B1012CDB
+:1056E000DE1EC82406F72FBDC42B3C5018F9B0733A
+:1056F000D52D267B5295079D10726A34ECE7B611C2
+:10570000B10625EAE9233E5DD76AD5B93A72138915
+:105710004C504C708F239D7DF6D0595372EB0DB5D4
+:10572000AE253C356708C8E921CAD182E53F9CDA3D
+:10573000B17CB59950D35EB6B76EFB4A14F2526F86
+:105740004FD759C7A3AF77C598C0D9A41AE823701B
+:105750007273A2DB7A0E72B4CB7C3FF6A3DA18F434
+:10576000C640E374C104F344BAF635C5D44DB6055A
+:10577000EEAF48F00F963D4AC45EAD749E6885BAA0
+:10578000D038ABAE4E943DE641F2912957938FD974
+:105790004CD92BEEB08EE51D35E4CE7D1BE9E0FD46
+:1057A000B2602DA1DE777B6215B2611179E41B3402
+:1057B000FBB58EBE4506986021DDA0BD6E7C260B34
+:1057C00014CB228E7AC722D06EAB85323FFA405777
+:1057D000ADB1A8A37068DAC457675E7F0FAC2685A9
+:1057E0000635DACF531DEC5B1FC1C3D8B82B86D565
+:1057F000A9254FB02A3BB604BA6AD292C181F0C340
+:1058000049E01FEEE18E0026A8D4E86680BA7A153A
+:105810009CD36AD6968D4F6CF0236798B8C37EEA06
+:10582000888765340E6DA885694F4657B9FD5DD7E9
+:105830004F006483F734C57BBB63A0E8695A777473
+:1058400070874057514335774550482FBA53D6EBB0
+:10585000F57FCFF7F0A8D940E531A020C4FD137A39
+:10586000E491253A44225959996C8653F8CB6B74CC
+:1058700030AFB40C1B55FD46A636B56C159CF63AF8
+:10588000C627AB0AE3FC7CC88840555B3717BF3896
+:10589000F904437717592D9E129FAA8B6E980AA67A
+:1058A0004D7455492D4CE3DD68E1F6110D10FB5D9B
+:1058B000B9687902A3BCBD47CC5429474A2F4BD7BE
+:1058C000F9403408982E8FFFE7A99F5913348B0EA7
+:1058D0004EE944C7AC62BBAAEA48C1FDCE0122B37F
+:1058E00094E5F37ADF6BDE43CFFE3CAC9038C929F8
+:1058F000F4A97421AC4697934BB0E335688B0F90B5
+:10590000D05DB0C0BB85BDAF303A2C9CB24F7D7E20
+:10591000D3DD9B151E11C5AEADE60CDA4D69E30370
+:10592000E9638CD2460EE8AA44F21069F2F2536998
+:1059300067CBC0201053D721D3294AA1CF8537B3D5
+:10594000468B4C13F60DB859061E88DA67895E0738
+:1059500074E5902F40733414B350C0C17053B781B5
+:10596000C3BA0079B3B869265920F481953BEB6638
+:105970002BB987B04EF423376D61E58509560A5B74
+:1059800006FAEF21303294F4FC279768E6916FE530
+:10599000F01D7F59CC6274D497FB146C1D4AD5E975
+:1059A00017FA31B3A76C70E3111267FAF5D2061833
+:1059B0000E95CC894737DFC45570C5790AA7A81E54
+:1059C000ED3242864FAA8AB6ADD1F4CB9B8EA63E6D
+:1059D0004EBB8ED2EAFA0DE5A06E430AB722679D50
+:1059E0003C32F22FA5D03C8392F025BE4A3D8ED7A3
+:1059F0000186AC8CAE295D9B30B918FE7918F6B5DE
+:105A0000AB366005966AF31D7D0DE80E0BABD2BE7A
+:105A1000D459D2A523095C44B27BE5855EBEAE892C
+:105A2000FF4857116E8AB7B654A5126DF073DCF7B4
+:105A3000AA743ABCF2A6D74E920A4584D3ECC8D2D7
+:105A4000EB4307BF0039D8DC62E614EF043769EB9B
+:105A5000B8508D1ABF69FE52DEBE0FE70BDBBA4AA3
+:105A60005C3065118A67218A9B28189F8A806C6840
+:105A70001D00A4448ABEF12E3EF4DF535121FFFDE8
+:105A80006E1C53C9505716EB0D1AE90DF8E2E78466
+:105A90001CB1BA58C2390D1BD7E15CA23A55FE5D64
+:105AA0004C10DE8831C05A17118741754D2CB9B2A0
+:105AB0009EAB5128814F37C34E0A57A792EB24A9BA
+:105AC000665F4A8AD53F3D1E3A66187339784E3D67
+:105AD0001794862027BB33D4106C679A20338AD260
+:105AE000D82EC7FCF4A8030453510519C191A2DDB7
+:105AF000027CCE40AE96112455C3EF1D2C96F514B2
+:105B0000BFD524244EBB6B4A67F1C8BE4397370408
+:105B1000AE9983D1016C21D87B94F7D880F1073CF2
+:105B2000198E3F380F10912F265206418BEFE32834
+:105B30008E396605E961F973BC5C0648E1AC4BC27D
+:105B40002CDBFC7B473BDC080FFAC0DB0CA5AD98D7
+:105B50005B5A22ACEAC4FA99917D12BF2826200331
+:105B6000F9ED6DB38907C7E04EA200BCBCAD8491CE
+:105B7000C03B4A86507F764F5C1DE95EF249EB9848
+:105B800058362A33B134B9E6B620572393DFAEC86E
+:105B9000EEF6F435B05A5946B34993C62A76694EA3
+:105BA0004B3A3EED0ED7194E583F4D349CD58546A5
+:105BB000117A1944A0E6A0F008AC5E9B25BDCF6722
+:105BC00012ACBD694CF7EDC62356208A90BB96C532
+:105BD000C95848940DE5A020EBF0E958649B17C71D
+:105BE000379F3393A1E7EE1D0226FFAA24FD54A19F
+:105BF000EA08B456761462C962326FDB949F32F5BC
+:105C00008CE7D8363D37C15B15CB0276C18A12CB03
+:105C1000E3A4E38F622EE8CCB3C0C5B126F6C21C64
+:105C20007295993AA9E138CDE5D1F7A52DF21F8CEF
+:105C3000C9297C725EDAE323B1EAD62CB97C786795
+:105C4000D7C2A269096625CB5946CFBC285D35E885
+:105C50005A8BA21EE7A866B38B89623807D950A475
+:105C600065FA3FA86DF718AE5943C1C0770DA78DEF
+:105C700010E9830BA02512196CF285A00B38AAEC51
+:105C800061988123A8D4FAF230E93003A9F839F0F9
+:105C90008E2C7A9A14FEAA1CFECDF35853D6187493
+:105CA00040206A9E66DB26576371DD2B6F6A716741
+:105CB0006EF173B89BCB662B5293DA79F75AB1AD7C
+:105CC000826489C2DFC40246E901D6EB3A369DED13
+:105CD000F16A30DA6FF96E469031433135B40650CF
+:105CE0006912BD75EFD8A67A6BEC98F8DA9336BADC
+:105CF0008150DB06F8CA5194868A60DA1DBE3DD316
+:105D0000EEBF2BEE2AF1C702CFBB75B932DFEAD85E
+:105D1000F099700C0A7525E54F997754D38ABFF333
+:105D2000D0674A2DF4C3B6AE6C9C4FB9CEFA9E60D4
+:105D30001E70D49CA6DE1264DE7E4ABD69C7E7EB06
+:105D4000543C8C327389C2659B6C608AA0EA3FFE2A
+:105D5000CA73EE30BF87EE0BD0B651D7B729A33C3C
+:105D600044720C303220499AC510EFB455B7E4E8BC
+:105D700012C07722043EE2732DEC7271EAF7BFE2A3
+:105D80009C413F1387306C83708CE60A030B29908B
+:105D90003868382DEB2A96ABF97AC17291D0B70CDE
+:105DA0005C9E192443AF6A59DF42B1B9568A92F416
+:105DB00022D86EB2ACBD1D72D7B32A807F0D6AA502
+:105DC000F4C076C79F27C50DAE7337FEB227A1F684
+:105DD0009047C0FBDE4165880066354CB83748B057
+:105DE000FF68E46BF2AA75987E369C1C96B569979D
+:105DF000802DBA9F19D04D2381E2CA3CCE7BEAC8E0
+:105E00003C2CDD815FF83FE5562DC1EBF105818B20
+:105E10005CBCB0501A01B2D69355D24DE02F4D382C
+:105E2000E62D8B67DBD21E91D6AEB0ECC569C6B845
+:105E30001672746D366C9CD8A8E84D8DCCDD23E1CC
+:105E400027CEBB092EB297D439C934E346C4BE77F6
+:105E5000B053C35A2B187538AA4D78585505C71238
+:105E6000330BDF875690A22E97172E068BFBBD595A
+:105E70002D925E5BCC0D3E445F3A6BA649A8A8020A
+:105E8000A93831D8368397CEDC8DA8746C07731C83
+:105E9000BC74A425FF4F8CDC108D8FA12CB0CC32AC
+:105EA0007F09BFA4F55B382DFE8B6E277F491D91BE
+:105EB0005AB8AEF085DFFD29A6435881243FA2F0F1
+:105EC00067A9B9D92D7412F9926659EEB6AC525140
+:105ED00096EA18F92170B775D666D6D2F63C6701F6
+:105EE0001F75178B4FE5BE200C6BA2E82B418D72FE
+:105EF00015D620B1B90813D500715696EBD6D848FF
+:105F0000496FD1F7C14105B409794C0885E6AF68FE
+:105F100038C8DF3A3FB948C87E81D7A80124D631B6
+:105F20006549EF5D75C3422C8B15796E9863D2FB82
+:105F3000820DB720CC50C9E69DC99E3A5536F91658
+:105F4000E7FBBF4397F75B0210FBF6003E963EB6B9
+:105F5000AC72BED853240A536B1433900862E668BF
+:105F600027AB32EAFCC392B4A2ECF1F1EBAD24F121
+:105F7000F6F23F24493FF930C0358393135C1BFE92
+:105F80009D3C031BA2974FBA617F7C8F566AC44425
+:105F9000ACEE3CE954C39DDB37A956C128EB4C4716
+:105FA000B4A611558920A2C85EAA2E5DC47A38C74E
+:105FB0002EB39520E2CFA18D8855B27B928269D015
+:105FC000D4A6766183D1715F964F8C4B7FEC150A16
+:105FD000872879CFFC93B9F010875E26D3565E925E
+:105FE00059CFA533F14CF79B9634E043AEA17EBF69
+:105FF000E45D51FAE3512551BBEDEE580AB8B02AE1
+:106000001761AAE45CC1DA6DDCCCED4FBD77E1012C
+:10601000C3C57A3DB89E96B19C607BC7F46E06C836
+:10602000063C0BB16982ECE98B0B77EE2C28728F62
+:10603000F7904B775F2362B7DE391B836DA0586002
+:1060400093DD6DC3AF34EAFBB81CC4656853D4D686
+:10605000821EE8D0FBE3BBF1F4C02E9A709EE0559F
+:10606000E16E86B15440FC83A6FE0F77E6875E8B17
+:106070008C44239DE96A5EBAB2E60AF2DCC04D0A9E
+:10608000E4985F6746FD1879B2D8BEF78CB25A68BB
+:106090002B6E8E2F9E89DF15D997C8E8B66FD03C3E
+:1060A000BE65F061BAF339E63EA15BA62CD51C852E
+:1060B00031F971E758DB31956EB87E648D8D62578A
+:1060C000AD9BA867D79F209188C33AEB358F2945B0
+:1060D0008A6A586524A2961E985A56D85302C859FF
+:1060E000B5037091F778DE0C02DC0291D96767C6C0
+:1060F0004F1FDEB88608FC6B73B17B29F2DC0757B3
+:10610000217B512224234047655AD71A05A85F9561
+:10611000D2F87FF3B437926AAD02481C38F5295C97
+:1061200014BD6447ACC0DC3573FD4518724C6D4935
+:1061300014A35DB2850910BEBD967BB37C5965057D
+:10614000EC656C69F7B5B09FB1C9F9C25740DD4243
+:10615000952579BA6A4880110F3917E26E3B103ED7
+:1061600060909D2F52A4CE63F2E127737DF6B6E3D3
+:106170009481B23CF9E17CFC7FCAA577E99F29377D
+:1061800031D01FB6DA8EA60468420C3FFD43677714
+:106190005981F2610221EF62DC591131E337BAAA69
+:1061A000B2A4D1B40AB24716680C8AD215776DF63C
+:1061B0006D6015F5812FFCA450073409678C1A62B5
+:1061C000736D51E6517028D9DA9F4CCA16F4F9EF75
+:1061D00071EE89B2044E7DF77CB7017FF4B3F645CA
+:1061E00047C0E902B865F6C1A93BFB7E59C9F1F584
+:1061F000A43F1C761C3242F4768216CF63D2B2D909
+:106200009B74461746BDE6B077C726C0A459B76B46
+:10621000CBE3CC00E16D443A94A7A72D8202ACFEFB
+:106220006B7494E59436871C58FE4358FD2954C777
+:10623000DC8D8B51D7BB27055CFAE79EA0915C12E1
+:10624000DDFF27D43602C778256CCD70C2BEE78D3E
+:106250004762014DF7185501DC28BFB57A0FEECF24
+:1062600080B6E747E154D174994193E0052228B5FF
+:10627000C77E9AEE37DC70964AE4DF79524E1A1DDB
+:10628000A100E73A66A7D8BEA49C6477F618D5C3E8
+:10629000FF8ED07D10450BF5D7D6AF0C6EF8087287
+:1062A0009ED903A9EA40686C50F381631E7ED53005
+:1062B000D3F4F164EA172EB9131E59309661FE2407
+:1062C0005FA3194AB87603B3C8FE332A9E8D0AAE7F
+:1062D000D6A6915BD56AB3ED68160A8103CE05E6B2
+:1062E000D2848634F797CD63FFAD9B8CA3FC4EB967
+:1062F000AF6323B19C0EF6C867811DAF32C69B4ABF
+:106300009FE244D43EC0990C086EF3670D515E6E57
+:10631000D8C19CA6B1B849A6122EC38A9F828BBA57
+:106320000BAC32A2DE6028B0171EAA21904C92E678
+:10633000AB80EA20018D35E05B26B4CDA3C8DD0C2F
+:10634000665674B7D48E24DAFDAD8BB078E1BA020C
+:10635000E21BACFD7AD92989F0C9F7B5B4BA700D42
+:106360005284FFCCF0B6F4B1D1D14F6A0CAD0370BA
+:10637000E07D131F6E1F670CF8AC8BF9237FB458B8
+:10638000A68D0086E5D1EF40FE9AFF3E93F5177982
+:10639000E4D9F2BCF59E08D7C7B50C434F3A3A454D
+:1063A000FE22993C107991FAAD3A9B0F8752FFDC9F
+:1063B0007FEC00F0E9CC165A90D878AF08806A5D7F
+:1063C00001226A652D4BC302DCE8ED6F31FD3E3FD3
+:1063D000186EF4DC9FBA2BC4CE39F54383F7B1575E
+:1063E00021D0ECDDF96FE1DAFA205F3430B7ACF59B
+:1063F00041C4EDDE98F3999205A9E6FF5C419FB296
+:106400003E0F78D10F35C11CA1AA1ECAB86BD3525A
+:1064100066FC179A0AF2E417DA2965515BAA2C1A6E
+:1064200027128280760950336D9E42A31E57720256
+:1064300036E7E2319A6759826DEE64944F587327BC
+:106440007BB6D7D460AA5C3C272DE1F3698A9280A1
+:10645000390634FAAD2941C8CD0172376AC12D44DD
+:1064600036A557501564E6088B459C6E1E750A4D7F
+:10647000ECCD35CB4CEEEEF5FBC7CEF76E4B867F01
+:106480007335771AF7788591B624E8FAE68CEC7ABA
+:10649000309A72321F546A094D182A6B74C13F91A9
+:1064A0000710E7CD68EB4A8BE47E455B2F8F89733D
+:1064B0000C239E44B4128C5D187D939892E18BDE80
+:1064C0008DBF2E5E419DC65589B9EC793BB7FC2D39
+:1064D000830C4406F87073B7785863AF68473BE4A1
+:1064E0001B7E34AB03C92EF33A998592EFC6C913CC
+:1064F0004CF4BD3B65F68D66FE6C3DB44C89F3886B
+:10650000A4271F06B340D40841DEBC4E1EF2064C41
+:10651000957042648A35CE3060426555B577CA467B
+:1065200033978C19FD6E7EA0FE683C77C08522E90A
+:1065300036137806E817E5E183C073C83A83F91A81
+:10654000651B5598D4E2860481D508811CFB6BD16C
+:1065500091A4F0C1E6957DE1261BC8B36CA7F18F2D
+:10656000AEBC92DD53DD193DC6AFDC1D2F62182A8B
+:1065700096B4A8B1D4327C26E8C26790A98C6AB8D8
+:106580006E80C7F6CD2489B2A51C7BF8B3F92A70BA
+:106590004B12DC7F811E362EA012CBAD8BD14CD29C
+:1065A000654A9B4955320CA13B0EE097C5D560F07A
+:1065B00089B9A00751AE32C3E8D45646A4B2737469
+:1065C000001CA7AF87AFD4857DA24CD520740503EE
+:1065D000A0EF9D938C2713B990CC53D44DA802FE05
+:1065E0004B052464B29C914C17FDB25294D0B63442
+:1065F000FEE811AFCDC21163E1C18EAC110373C9C6
+:106600002DF01569F760916F9D4D1E36BB326FD12D
+:10661000A545EEED091A07805E406E62E2E77281E1
+:10662000E6286418DBCF2A9CD3ECEED23596A2EE96
+:1066300058E44503141ADC4898A294D68C7097103D
+:10664000AC7954314F5C0147DFACBB4DD1F0FFC991
+:10665000F41CFB23947FDB48DCEAFD13706130916E
+:106660004AE95FA399819502BFDEF0D3147209DC79
+:10667000F62F4196376C905349AB2604CCE023604B
+:1066800047C4E6E80431B89A1C32E4FE9D79E50B74
+:106690004F9BF93B7410AE6F61C924A94933AF38E1
+:1066A00013858BBE2789C186D884441DD47041A62A
+:1066B000891A4F3CECDB59543D3D822C49014FDE99
+:1066C000956432804E142057467549F847A1082D2D
+:1066D00009C379F5214AEF71EC777C45E8134EBF89
+:1066E00038C4DBCF29FEEBE34F7E3934664571BBFE
+:1066F00082F087D8663F403F87A7735E89CB097BCE
+:10670000BB0B35AC12D90A89E383A38F0259568F8C
+:10671000550A49ADFFD6AA6B6D753B080F3A56EE88
+:106720008583FE11C9B4D6FB07467010444BAF7C7D
+:10673000F187EE7CB3B4311170ADAD35BD2C61196C
+:10674000F3F4CC6024B8E36935D621C05267E85A27
+:1067500096ED038788FEB4DE200FC9F5A9A535673D
+:106760005E534EFA06E37E5C00E10D06DE2AB9F0C8
+:10677000AD6F99CCEDA6D9E11C162210843F10B262
+:10678000366DD89D66E811BE1FA2EF2EFFC9CE1D43
+:106790003EE2E6DA02A95FB3F633BE53C58BA22D03
+:1067A000BC1B6BBB5D504E38235FBFC3FC9A329558
+:1067B000294F4362C997267FA0AB81A94A79EAD8BD
+:1067C0009B3BF3B827C528B5995D249C0CD7DE0CFC
+:1067D00057FF722AA45AF59B0823A143959C09519F
+:1067E000864ACC550E56D491311E6088C7245D412F
+:1067F0002D1EEC114F21CB1FD3ABFCB3D385BA9B1D
+:106800006E1FC78FF5A234BA4E206144B0AF1BB5DE
+:10681000ECD5C497A352D2C4B0068ABD506B1B47B7
+:10682000C4CA3E3EAF2609F6820CC24AAE8627FE97
+:106830008FF05064DE2FFF0EC7C6C43B416F7A3E17
+:106840005A37808F24BB60DAA7751FE1C09469BEF8
+:106850004ACCD95EB0A3EE1016FFB8908873ED2D28
+:1068600048E28A87C6F48C9425087FEF6D8C202837
+:1068700036EE51A2B0AA66D237588F06ADAAAAE565
+:10688000F060B0D1C60A28C93605E05FD4BF7CE508
+:106890004E99B096A60774761F3F199D2B59E2DDDD
+:1068A0000416159E3BB43A3821D5A065A3C70A70DB
+:1068B000A0B7A7267C83C058B93E3416578212BFB2
+:1068C0001D04CE2FB187037742DA616439DE5B4A5B
+:1068D00006FCB0281AE6D9D1B7CA9EC9B27EDC41FF
+:1068E000283355149B769EC9F630F463A944D4DC52
+:1068F00033ECDE75E36416D0CE9F6B83922E5394F7
+:10690000BE326055C3F94B419DC7FD61DAC7AD0D7D
+:10691000F0AC05018FD5DB92518ACB1F8FF3A564B4
+:10692000BD79CEA86FD804AF5E693B6BB06BB896EB
+:1069300029925D455DE56EA687FCE62602A38DF3F0
+:1069400049C0F7D91F540393D8A93DE1F379B2EEBA
+:10695000FBEEA059DBF794742A03532947D573C67D
+:10696000AF98CCD7922F08BED532D4ADFEE88EFAC0
+:1069700072C171BD7ECEE2E592BF5020ABC3F7CFAE
+:10698000EF6E7986A7F92A933AEB04FAD064B086C1
+:106990007FF2B5812B6BD1865DC8CE5055011ADFD1
+:1069A000976A028FF760E2FAD3206885FBB3069EF0
+:1069B0004E1126B0F150BB43DEAD891C352D982811
+:1069C0001BD106B4123DFCB9CD53006DB00F85E666
+:1069D0008073F97E3DB578629B5DD84CE420995A6E
+:1069E000E736FA7F3A04D8839436774A4BBF570686
+:1069F00072A0A934D0E84AC0C4B636F910427A6011
+:106A00000B09020D40DE3DDE22D70EA402116FB24B
+:106A1000F5F1CE85984DE83F5A6CCAB82B819BA101
+:106A20006D0E3AF1D323AF63D180349199D050B336
+:106A30004F215349697408F058DA9AE88644D8D44B
+:106A4000FD50D73C39B73646620C1D0DA3E7B6079B
+:106A5000811874ED4536841B3E6A54A9A1E68ADD8F
+:106A6000395B23020B790F1C915CC230023936C2AC
+:106A700034BF4887E4DB80A7184EDD922F881B06C1
+:106A80006D8BD8D5088DD7188D42504466E145D31B
+:106A9000F2E47B4C4B0BDFF5008D75396E487FB708
+:106AA00075AB29A56C5956BCF8DE35953364534057
+:106AB000E8FACB05D4D4CC4AA89D2DADF020BB91EB
+:106AC000B565E6A0D549FA18BECEA26F02FEBDB9E3
+:106AD00091237F7B01B7213EB13BF3A9B4BCEC7598
+:106AE000EB4A1DFC8CFA65EE5D15BE6DC313C84301
+:106AF0000592D7D8BECA15729FAD3EB91CC6F364C5
+:106B00008BE3CD9496EA0A639797161272D1350CEF
+:106B100090E781BDDCE8B3426521519338A7BDEF12
+:106B2000976F5E1362304D71EAAFD2A6B4944AC437
+:106B300097639986CFC038C700E8A9FA0E22D275AC
+:106B400011DD8D8B4AC15BCB83A69A7575E6A17565
+:106B5000C79A48D6E5E1FD310F4D22F1C031A89723
+:106B60007E5633E2AEE382E8D408C6B063442377AE
+:106B70001C09211D222E365B485A33FC522B830000
+:106B800017B9086970BCB65FFC8AC5320738F9408E
+:106B9000CA76DA483EDA3798D77CD4FF16262432F4
+:106BA000EAECC38CA11916714BEC07A10128EA3756
+:106BB000FDA6E21077A779C581644DA2ABB14B4B1E
+:106BC000721BE0A547AE5F87D03671520D3EFF992C
+:106BD00040B1EE3A897ADE63C8B5F857D53EEA454A
+:106BE0003D250FE11C148766E332E1ED78E3977BE6
+:106BF000DD90B80144254E0BEB909CFD53EC3266C2
+:106C0000B35123862E068A8EB2C8AA07E426E995D8
+:106C1000EFF0BDFF15E8B2A0C43ACBD091FC1481CF
+:106C2000628533BB3429853C612101F7EB88FAC4C6
+:106C30001DABD7586105F867F8F2C29020D7024E15
+:106C40005D77093448D2CBFD6A07F7E661D2D6E614
+:106C5000CADF32A6245ACBF63B2F25CB02E7AAB0D7
+:106C6000A0F7D0C690D80AC403F4D2163D9641CB03
+:106C7000F4F9C142585C46D11104EF64E9EE071003
+:106C8000DFED554A753B046EF774DBCB09A5AE35D5
+:106C9000DA6C408ECFAE8B43ADAD9315CEEAF438AF
+:106CA00085B0E0D91DC42675FDF01DB3D98EF1BDA8
+:106CB00028E73A26A53B58EBE36550C911B85D6556
+:106CC000EA9760914DB7D32DAB986C9AB003727F61
+:106CD0003DBA37D09A05626435940BA3C7C3CE4A38
+:106CE00049581CF986E3F6C10F51AC662623E9C169
+:106CF0002D406B07D2D239DB648279553F75CD3791
+:106D0000AA70C81B78D09F746B9172863AC1AB8110
+:106D1000C5DB2BCBE2492B48AC8A704083667E8F63
+:106D200046E748918D3A326B6B70E7D7CA0099D627
+:106D3000525703F08AA59A47A3D15E31C3C972099D
+:106D4000F90964BEC69D7C4FC5E439F770430B1644
+:106D5000782B1D07CF1E9BB67A80234D93D6EB9BD5
+:106D60004188A4108DC5A5276F1873D8015EA27D38
+:106D70005CFF586466653A8113E03EBE99E97D5533
+:106D8000A5313925C19005EA05C3B556C7A399C2F7
+:106D9000830CF4194EF88C5BBDB8EBBCCC87830434
+:106DA000E47D804A281DDE428E3A1A0CBFDE9FE148
+:106DB0005DB1A8BBF4FAEF9B128EB4D1AAC30A5AF4
+:106DC00022AAA312E3E5145CED52577B210E2B9D02
+:106DD000AAA36FE3CC9A2796D4305B502686C29143
+:106DE0007130ED3D27AA4E18343AFB1DAEA71DE8C1
+:106DF000DF58F89301A6846AA9F4CA1C10B2CA42EB
+:106E0000D64652FB00AB80A322B01FADCE1C8D3006
+:106E100059437320659042EE8A5BD43957CD1C13D9
+:106E2000BAB9F5CC40E461C86CB2EBC35E2AA58266
+:106E30002F8C1122A23E5400AF7ED380EC12E8F8D2
+:106E4000EBDB9A58F2A11FBA5B176813C6269707A7
+:106E50008611626B719FEB5FFE76612F820BDF8381
+:106E60006C2B36ABC1C70C8D6B5EC444F7129656C3
+:106E70000B8E9DB280E948CC6B7FA4A34ADE21949F
+:106E8000156F7678CF1829E1B9EBEA875ABE1A6CEC
+:106E9000F6B7D029AB461837440E793E54A39DE18E
+:106EA000DD8FB0408BB99D7A73E55B3C6D7B8FA223
+:106EB0007B2E032F2DD83D7F91F7EE1AA1717853C9
+:106EC0005E0CA75998D7B42C7CDD8D31912817E939
+:106ED00031DD62594E571DD0D2855636581D10E20D
+:106EE0003A1B941D4D48DE98BE2B66ADE88096E3B4
+:106EF0009C2F8E7D354C22E3B61AAC6649EC37AF39
+:106F0000D3CE4CB30E1319F3867303A0D72D08F319
+:106F100054ED563359E747665F216C43FA5E78B00B
+:106F200040BCF679A0CA7E74D31B8F189F20F62828
+:106F3000E17CDE78AA47A6E2D402F0DF4A7C080AA8
+:106F4000FD0BA9C974E7D096E91AAC7206AD2228E8
+:106F5000B030311E644D563A8F38D9D30DBF376EDD
+:106F6000B1FDB651ACFC00A9C83D0BF229DD7DB2E4
+:106F70002C01FDB01B554955F9C05E2FFD46A7EE0B
+:106F80002C00385CF22E48A9C4181F12BF2E545B87
+:106F90006D4B70188791F7A431A39AE4B1AE8CDDE4
+:106FA000FE509E77870047893EA99488469F3E926F
+:106FB00022211869A2CD061C5C5748A6BDBE84B428
+:106FC0004A490AC60FDC5500B1ACA944D1038C89EB
+:106FD000D1B8312B9F90F32066D5FA19EA38D398AF
+:106FE000FBE1FF5864D4927E92E7E31E23918D0665
+:106FF0009EA2B5176F3E6944E58BF48521BBA88836
+:1070000014C7F6AEE2EE84F2E03A8735F325FEC609
+:107010002466D5BC63767768283B89FBCDB0D6B9AA
+:107020000E484718A6428A5D27220C23FF5A3136A4
+:10703000D7E99032068F7DE459967E81418495FF91
+:10704000AEB54260E26D224E2E92E6DFC48FDA7456
+:10705000BB8CC21FB7C5CEB8F6AC8D40C86EA59428
+:10706000ECA1AB418601F067B73BFD9329F802B96B
+:107070002A97F739B46FCBCFE316172271CB792F4C
+:107080008A06E1162C37AD40A70993CF719056942C
+:10709000AFF6C88D9E7EB28F5222E78FE387F15FF5
+:1070A000161F319D069F1E1429910813F067CCC945
+:1070B000F1E41A019DBF6DDB603514030481E0BE6D
+:1070C000C933D52E0F2B2FE8618A2D09429910BAAA
+:1070D00077096B637F64B85714B86BA4FF9E4D812A
+:1070E000EBDA467681087FC299A02143541529D74F
+:1070F000692E1C850382DC401F1DDEAA1714F89B35
+:107100003427430CC7FDC76F1221D645FADF891C0F
+:10711000A6F532A21D33EC9ECE14005BAFD8D9CEBB
+:107120002179CE9A9089C09D14727D5DD8412292BA
+:10713000678481EAA00D11B97EC8C9E2DE10E74478
+:107140003F601DA0743036A86E3457417D5B4D11F1
+:10715000CF112CBD112FE49AE90CECAAB978FD8F60
+:1071600020C7B8DF245CF7A4043CAAB7F7871CE863
+:10717000ED71C2C41AC9269C1E18D84185751D2000
+:10718000AAE931E7D1E0A88A5D370FE36F4D41AE40
+:107190001E530E6867A63C817B6EBFBD060BAC8696
+:1071A0008A176930706488FB65873D5E172F58FA2F
+:1071B0005D78A390CEBCB6893BEB3426108C4BA1F6
+:1071C0008E7C0470795A5FD0F75A341660C853FA2F
+:1071D0009877CF8B094EE10F06B4968D698080DEDB
+:1071E0002CC6E3AEB14D074176A523DE446FBAD37A
+:1071F00017ACFC58D70750D044B5820F06D94EFBC8
+:1072000068A25BFCEBE37E15EBA6FD7D379D65A8D0
+:107210002EEE009C4A5214E26E5116F976499453B0
+:1072200039F8A8C2C218C7BF3185DAB9D3A73D3231
+:10723000126CBFA813FA88A8083DBB6E14775AA930
+:10724000832BB03E1DF19935E3C6F0E0586F6543DE
+:1072500079211AA70F9E9BA1C973C015FB6ED3821B
+:10726000ADB69B2A7A2286860B0EF69D71CD6006FE
+:107270000C3B0BDD4872E6FA25B3E9A5644D8D128F
+:107280009D4ADB1035698525D829FB3CC90A63EC8A
+:10729000BB8283B15754B4F16C3EE2493AAB018CE6
+:1072A000E1974C1E27905C81DA1788B3204F15DEDA
+:1072B000E4DADDC3D40D90F239ADC52EBF24CB7F07
+:1072C0004C15FB0ECEA69F1FF41B9902C88771D4E4
+:1072D000A026EC63958E59AF7C41C65F927111B1C7
+:1072E00037728D4A43331F0BC6B16AF55232691AA1
+:1072F000F1CFCFCA0B5392DEA02AB06B257ED613F6
+:10730000C13D54506409D224A13FE6FED356928574
+:10731000704A2608C8FBBA7502E29D189F47659619
+:10732000EAF6E8E7F287C6798F6F7551D0E1B1DCF4
+:10733000E20F078F91C690B9989AD9A3D52184BA44
+:10734000DCD557D68D232153DB60919151C7D2A74D
+:10735000FD992E8703235E487A4388FB562FF8C099
+:107360003B00E758F8F6DE75A52A492D582BC48F47
+:10737000C1C9774D17A8159FA9CC7BD78F3F88E946
+:1073800059B2B04F5AE4FAC69998228B9F38479564
+:107390009014879F5B04294617B4C3A5724842EB3B
+:1073A000FC471CC28F2A21FAEDAE82D353B6A892B5
+:1073B000762BC5A50AD12BC0C54197C40B9CB5E45B
+:1073C00008C5FD2736A087183C90F67446CDC11934
+:1073D0000D5C6E014B7FFF829D3C777082B08FB653
+:1073E000C5F7A32344FE46FE0DEC44F2FEA8AD1102
+:1073F00027ABFBC3CC8F2226FAE8F5D87991EE3D76
+:10740000C782D793BE9DF3029A9DEB04B7EEA90302
+:10741000384EF8ECCFCEFC0A999E7DBD03727FA555
+:10742000EE27820C99AA51FB44198A5134D5E427DE
+:10743000E593C4FC7F4CF4D824970435D696B45E0B
+:1074400004AEB44038A23225F9234821DD3B9A0826
+:107450002F9A037C7D7D594F78A486007C5CA358CD
+:107460005527711209590EA657908B0EC3527F14DF
+:10747000885D4FA8CEC17D6B6A3BAC80D983354E09
+:1074800086D991EF1129BA9C85093AC79F333E2CC2
+:107490001689649DEDD54B9A449B7771E6B05F5198
+:1074A0004E2DC4A2C8DA523AE29C92F9A96BAD9271
+:1074B0003F8A6E4ADDAE72AC7DCBC9F1484EA9A7BA
+:1074C0003A135E3AAF157CCB279EE20B1975DCE3CD
+:1074D0008BBBB809309EF878D821F1F67097934E9F
+:1074E000E0D86A83388602FE5720C64E1F82B7CD89
+:1074F000192E0942B6FE9A2D15E84BB3EB899ED1A1
+:10750000A9B70692200E801CE0383F230412E4B194
+:107510000C483848BE82233EFD2D866BDD098AB6B5
+:10752000F7C54E7F5CBEFA9EFC4F44AFEECD847A29
+:10753000B93344C44678B2127AF312F0310DC272F4
+:10754000E9515D1DC3BD8A6F46845862FC520DAB84
+:107550004766143E620D9CA2E572EC2DEBBD9E8C3D
+:10756000D1273DDE8A5183D18F7E9599B64F86BA59
+:10757000695F9E00C7F3AA2F0B4B3B6FC9D13FEA4F
+:10758000EC1CAACF6BD5FAB63AECFD7C99CA6646DC
+:10759000C2341FFCD42EE38948A50C609AB1727BDB
+:1075A0000400C53FA6A82748FB9CF73C69940BAA9A
+:1075B00042CF4C17877AD70C9587DD02B2D5CA50D7
+:1075C0003631EA783403F0C09AD92F9DEE224A6F03
+:1075D000083C3BF0629A2618D397EDE943726E0798
+:1075E0009E0D5F5009AFCADD8C9196AA34F4DB8EF4
+:1075F00049EBED101BA08B09D2A995FF443C1888DC
+:107600001F0BF97697D8B9206D52317E7F8F070E08
+:10761000A8CC9623C3ECCE526B0EC667BC123FDBE0
+:10762000456B9B6137BE44739B0695832DEDA33953
+:107630005978A9E5D9D04D2C96B019946C0A6C896B
+:107640001E2754184B9F5DC1A69DFE11F11E61813E
+:10765000477E628693ACC7D8FE5C652D5AEEF49FD8
+:10766000EA92539729AE09C791214D58E0BA5F3489
+:1076700084D9795664D32F929F6CF5A9765CFB3739
+:10768000B463EA696329C0836DF66722A0CE11EA6C
+:10769000B16AE3D95BBAB3C732BD8917CB7E7447F1
+:1076A00060A63D4F67DA01516551CD97A72D82F550
+:1076B000419263F58025647BACF615E28883F7D7A9
+:1076C000DA849AF1687761214BEEC80391B6D60748
+:1076D0004923E10994CB7FA86DA8B0024DAEAD77E8
+:1076E0008A70E753FFDF26CEE6BF1D4ACC1CCC6E66
+:1076F00028CF0A895726F2D402F26259B07A5D1077
+:10770000322418DED06470B3EF3BFB493F7460F362
+:107710000B49B97B845F9A2BDC09960DF61EF2DBD0
+:10772000E87148E5930E473F24EAE2160A7C20FA06
+:107730002B1C2BD12CE11D22817AD058246E5A6744
+:107740006F6A2C6DDB2E6F6022B5A90AE26758DEE6
+:107750000C51B1B11F65296F84930CDA30D54C728E
+:10776000F08E168C29D83C8B30B60A2A3D749D3E8B
+:1077700039C45F3497634B2F30EDE5CEC27E99025A
+:1077800000A813E40D42753DD42A67E621E97FAADB
+:10779000A222104D1C6564F0D9186FC66C7FC3958A
+:1077A0002BBC41D8045C368ECEA678988333235800
+:1077B00089EDCCD4E205CCFE8F16041AD0890E14C4
+:1077C000780DE830E1416AC8E56A0D8949FC05A1F8
+:1077D000F66726F02C6A15EF8E842F8A2E38EF7507
+:1077E0008CADBDBCB46E2976825D5A1743483F31DB
+:1077F000B2C57067D3E2187CFC578916E58F2E4717
+:107800005EB73DF1565B43D5EE5C96A5C91DD1161A
+:1078100038D9BA1EB188AF0C5CD5B6ED8E50493D53
+:10782000BC7AFAFBD16C2D12F2258E16D52AE732DE
+:1078300061C1F7B1242B7283A827A4E646AE0DBA26
+:107840006BDB8E31D06702D285963C281873A05727
+:10785000C17D4641F07F0B2E169A07A66C0F1D289E
+:107860008894A5A73A95BD1D1BCD134101DBCF9987
+:107870004B7ACEA461EA82517341C0B33AD39DF7EB
+:1078800065E1B91BD65F35D91A7C46F0D70FB080B9
+:107890001C54F669D03B497368345EDA6C7AC5DCF7
+:1078A00049185615C3FA12A1DA25BCC7358A42AB6E
+:1078B0000AF9FC1AA8FE33C5BF2D6318E3CC77CEB6
+:1078C000CC52B922B74C0F42EB757E60A2085DB076
+:1078D000D0F0935BD96A6B4E3EF40D5693B1C372F0
+:1078E0002F35E0642B3C84AC98F9CAA23332612D69
+:1078F0004EAEDEFE4399B8338A3752B00D5A670256
+:107900000845018E4236254E38DB8029FFC8B5FF79
+:1079100077CB4B383C779324F96A205C99E9CF54B4
+:10792000DD076C0B07ED95FAE3BB48E47E34DCBB66
+:1079300089F9979D3829A7B30BC6A0C4E875261608
+:10794000ED792314465E184759215500E207A41D1E
+:107950008BE16FFCE14CF89A5882B246DBFAE9CA37
+:107960004D0FC43F69969D8780842E2A242A561C79
+:107970002E268F44991ED5F6EEFBE89BA23762DADD
+:10798000849C9286D32FC981DC99F54DC3053604BA
+:10799000AB8C5CF3AB5EDCE23E05193AC455D3E92F
+:1079A0003F525E949A0BF1E9646B3B926D090B8038
+:1079B0005FC3B7E11D3F767D066A796A8FEA676724
+:1079C0009AD9B5C8981FEEE5B6AE301118DF41B3AD
+:1079D000951B6A9DD998E5D942B76198C9DEF5DF54
+:1079E000734D28903C5FDDE3846A8841F2EAC66DFE
+:1079F0008F5C2C81C74B5AFA84A4ECF9D13CE9E99D
+:107A00006714EEE973867E65CFF15EB20E3EC176F5
+:107A1000ADA9AA7D539C0A53565EB72E99595D5E57
+:107A2000FA6B64904D4E246FF214E94D0B6168605F
+:107A3000E013F58AD498A7DBAF6896EC51A4BFE4B5
+:107A40004707296CF902B9AD2334ACA19A6B4D37C5
+:107A50007B56659FB5BF5C2E9020C627BA28DDAA4D
+:107A60003C97777E75F76E6CD946668BE33FA3E44F
+:107A70007B1EEE82FFC636C166A22A60201C871CD0
+:107A8000142294FDDDF7CFEBC7467C6E4042B44D27
+:107A900048D22A0E0A0523859A1A263C086D46CE3E
+:107AA0003343BAD15962F46576A724087526873B1B
+:107AB0002E63BD858491D41E5971487111045A5E9C
+:107AC000851769B030DBC53B8D46C6730B802475C6
+:107AD00045455107F068E415149B12A0848BB17AD8
+:107AE0007D5B58C5B72C4D25681E43E46F62A45FCB
+:107AF0007C88A217009E371652ECDC218DF3FD83A3
+:107B00000B22332D055DF105CE8D6F422475CD51CD
+:107B1000DF8CB3AC2842FD60EA90AE2369043A6E74
+:107B200050306E529EBE7750A48BEF2269FD6C9B45
+:107B3000F2007DF84CCB85CDFE582403B5C5F35635
+:107B4000B595C83B3C54A33BDDFE03D5E83E4F1B37
+:107B5000BF5B1F2A32142FF1AAC5D5C628C1B62192
+:107B6000AA98B5C6CEE4AE9B2FD404D242A2B24EA0
+:107B70004384FB3E465B544A35D2075A3DD379B520
+:107B800056DD14EBBD8B0B78FC5D2AECC6699CDFDF
+:107B90004A4C0728DCE18AF29A8DEB2DE214668AC2
+:107BA00039D587AA72B7AD73BEC1A20AF0D63A2CF6
+:107BB000EBF5BC710DD105874C19463D0E29842F7C
+:107BC0004F5B0D01123DEAE726AD4FA7120E20B321
+:107BD000A24CD84A5D8FC3328CBF283A7D870CF502
+:107BE0005AD24A123632933D2C24135010992DFF4D
+:107BF000A7157778712254B9375CB0D9B227D5B6BA
+:107C000073D561AEB5C3876FCC465994B9C4949807
+:107C1000623A239EB363DD65DAFD83F07C2F041B9B
+:107C200026BB913E5054CC66081611100B3B929126
+:107C3000CE3C6B48A8FFBBF010F3DADA8229262588
+:107C4000BB5A7D0110EE402A43B011EF82F6DAC72D
+:107C50004C41704D774966A6FE052E53147A385D67
+:107C600061F067FA36BA2849B54092730D2BE75C8C
+:107C7000FF538332D278976747307018FAE4C28A8C
+:107C8000E2C825B7B46B9B2392D3EDF24F46430D68
+:107C9000532C0EABB5713F568AE67893F0FA9701F4
+:107CA0007A31000BF66D1CE796FAF03AF410624157
+:107CB000CDCC43FB4BFE47E0BA3FDB4020A3595BF2
+:107CC00002DEF69650F0E0602CDA6E07609F735B80
+:107CD00024EFD81EF312F330105D9F4F2D0475B5BD
+:107CE0006D4F02BBB3EAAFF9ACE1A1EEA817A6A4B1
+:107CF0004EBB866088BBD6D208A4BE4488B9D26980
+:107D000032C1BE695F90EC6485C718459A7390488C
+:107D1000579403344D74079FED2A874D76C86CD174
+:107D2000E68A4BF0723B1FA3404576CB6EEE3517CB
+:107D3000C5AF66D5E60015A4C00860FF85D4403DF8
+:107D400027EC127373154BD08F538096A2BF34EB80
+:107D50003924305C638E7E208C9BB4D88D78AA4EFB
+:107D6000F15CC78A1989A5FC5D629303A4D8C61289
+:107D7000E05F36F0F2C572F52C0753CB9573D64C05
+:107D80007E1537C4E3E59BAA6A64016992434D36C8
+:107D9000EE869CBE07DDD9632205EADCE36924A1F7
+:107DA000D87D741DB8506B25EA5C97BCB408A30459
+:107DB0004B5A6CB79F4766946184252CD83985DA75
+:107DC0002F7876F8DF71668ED3D93F07177538792B
+:107DD00096C1872DD451EC4AF00C30B6349D56D163
+:107DE0005CB9155748DC3870A9AFC926E905671892
+:107DF000D563A5DB06E2B741CA959C63BA49930FE8
+:107E0000C141CD5E91BB32421D6BE3AA76479AC257
+:107E1000271869C6FFA110398C84130C2B230790F7
+:107E20003ECE96F0060A65B1B5BE8516E66824CA50
+:107E3000301221FC481BE21415A1C13DF2ED52C4E1
+:107E40008F3FD4D13122872DFABD60F85DF57DEEEC
+:107E5000D82D7E43FDABAC2DBA3F71CC651ECFD67D
+:107E600079BA9088AEDEA6DE6E5BA17C8F729A67CF
+:107E7000D855DB5DAC55B05B17713BC94379F3D086
+:107E8000D1748BC4B4A5DF2B9834868219320BEDE4
+:107E90004F18BD0C805F09A7B17B9EF4C740C25745
+:107EA000F7FA5C63DC7EB53841908756FA2502E626
+:107EB000F2610906893C6E4602BF83EE08177259CB
+:107EC000FFDDD6F00DDFA5661B63E48DB0E83F2F24
+:107ED000EC0A145278BF87A7A400345E7F11389152
+:107EE00088B1F291B5A175D64F008889150988FF30
+:107EF000F7426BC8568C3BFC93D20B386F1AF58552
+:107F0000969D2DD9797D97A9DC607F32B89E701A35
+:107F1000D28B63AFC48904AF568D275DDD1D4C1035
+:107F2000BC5253F8E3CD4783ED06CBD2EB2472224B
+:107F3000D64623D0E8F2412B69C21B1B9B956C5798
+:107F4000778A4E689346326697C29DF1C658571A93
+:107F5000599FCD440042AB328BBBA39958FF8AF2A4
+:107F600039ECD6CA696D450B3FF5A289FB1FC1EB01
+:107F7000D9ACD5C480ACFE64C12F5ED000866693B8
+:107F80000D71224E15702C72A6F1983FE4B3AFC468
+:107F90000E3178924869220CDF74EB235C50C9845F
+:107FA000571B114C8176A750CCA097C7C7FA67D54D
+:107FB00040CEF1ED325B1737616A7D79E0FA10AFA0
+:107FC000828AE707F557AAD3F7B8A71A33B6828D86
+:107FD000C8943A3B18BFCEBE7CD84CCA21F548EEB7
+:107FE000998480095CE2DED9D48DD1FC9D4550187E
+:107FF000AD90B34E18772F6940FA4059E77D40D4D1
+:10800000BE77C9FE84B4E63DEDEF05A5ECFE154153
+:10801000EAEC30896E6131D0644009F25A5F076C36
+:10802000C6681278345007947528F02D5A1F9FAAFD
+:1080300001D2C3D1C8F79450744A676FF413EEF8B5
+:108040001FF2C3EB029E0C1241907E24D1C5BEB339
+:108050008D84028B73C9DAB9B581CB60F89B780E39
+:1080600027804BD95E7ABB5FFD5AD53CB684773109
+:108070002A1ED3442F469B72BE3509E42ADE9ABEDF
+:108080001925FB7361B5A3BC018AEDBF278A27526E
+:10809000B27A3ED45928008AE2244590C49AC3108B
+:1080A000280C8235490DAF610E9A8B7536DCEF7B5B
+:1080B00097C49755E5A6766D309B87E099D5FD2E40
+:1080C000D41C780A272C464B590F3D35842CA2D15D
+:1080D0007ACC9308762C4F7AB25ADBD253C6B8DFEB
+:1080E000E260C90CD3227F80E1A6306C5800776132
+:1080F0007FD567299F6250D1A3C81A3B1C8196E4A3
+:10810000F78E2728BD65789A43E6670887A3CE09CE
+:1081100074938DC9B39BD68244EDDE33CA5AC9AB82
+:10812000DB9C9D84A1BA8967487E9AE346A3866555
+:108130005D9B4D888171A1C8230CEB17C47C369ED2
+:1081400009C9D1F6E67656B6B76FBF92BB1DEA40B5
+:108150006DC35FDCA33E1218BB9D26B0199BB4B261
+:10816000E10BA3A31B47FB94F4E4373243D180E82F
+:108170003C698821D57E8B0E3CD96C174647256318
+:10818000639DC47176BEE950E2EA6CF854854261A1
+:108190003A7C3229FF0976A2D5255C48EF70B86495
+:1081A0001A0422749D650F82185E64C149B4B00D33
+:1081B00092A96995E60C003E5C109A20E0F87D12C9
+:1081C0002267E7DC6AF9244CF76B3803DB068C4244
+:1081D000EC02A4F3256F18E419FD5AE252036E9ED7
+:1081E0007560F63E0A91D966E09DE2D6A4B3FE2101
+:1081F0000D5DA009ED79E3ED078D551733CFC692DC
+:10820000EAEA4F93E394F4225C65118CC24D0DA60B
+:10821000B47699797307CB491F5898C2C050C0B043
+:10822000E09B18A59EDC56E926C3DCE1A537F38167
+:108230000BB062D2147DF015B09642116EF3B29E6F
+:108240006298A4C0AE0583DDC6EE94DC20CFADC23B
+:10825000CCF093279FD48F5D835D025966F56E55F0
+:10826000421092545F1E9E3993BBC49B3D7F429146
+:108270000FF1AD2DD104F840C5C7C3E669D5290A71
+:1082800077AFC9D1ED1BCF8E17374E5C67DAD4DFDD
+:1082900087FA61420F35EBCBFF483247FA721C3C3C
+:1082A0004132EFFC2211B840C035A69048DAF9CA35
+:1082B00089B17474D40DA5FA8B549B8DEDAD70BC4F
+:1082C00010D23B9A53828CE1F72037F444DD5BBC3B
+:1082D000FB001ECD66D0C7649849FAFEFFFF99E007
+:1082E00084D4A36F96709E21868FD00883449C51BE
+:1082F000B444D8E6B6EC115E480430C73629D292B1
+:108300005C1738E9681BD5430C7019B0CC53C49B7B
+:1083100095FE2E3FCA364143CEDCF6D3A566BBB3ED
+:10832000414B53700E0013CCD01F73150E276820DD
+:1083300098CC49F42E9B179162104FA2F3AD0265C1
+:1083400065FE059C1FBD62308D91763593BCE86259
+:108350007260C48AFEC141F4244850596F4B8B317E
+:1083600064FFA93306F8E58A003D62785B9CCEFE87
+:10837000D7F1EFCF5AE674346694841DABB2FBEFAD
+:10838000EF983C16B0FF70D5228D7C0661E5E74B77
+:10839000F0C53B82BAF82C1157A9635B8F77A9FD12
+:1083A000C81F5D24BE77FB7296CFD7B96F48EF3FE9
+:1083B00055FF261A1167BDEA53510ECE30E3270A46
+:1083C000A86330EA15692E64613826AA97350A74C5
+:1083D000EA2D7B93DE802101D09B394F14FD0C09DF
+:1083E00043138472093A4E38EBEA9C03885AEA48F0
+:1083F000B3D5F58C8752FFD25A7D77F3888E7DE610
+:10840000D95F88C3C15AB32FFF3CDFE22E1E4E2B2B
+:10841000080A730B338097FEECAA8EB50767C37208
+:10842000545D9CCF8312F525A89484C88939A68809
+:1084300056455BE8EB5C12F1A10EF2F91CBD2EACC7
+:108440008B8A15FE341C7D1C05BBCDC196965D72D2
+:1084500056A3DCF31AFEF8F27C9E81F9FC39E28225
+:1084600096E2E603656818A2A3133BB33D9ADBF8D6
+:1084700057FD68EF86CA2F701C501BC2DF4B5F325E
+:10848000748050680055B0916DA255C19A1CFB09CB
+:108490004058618948C837ED638928B27C35C4FFEC
+:1084A000E8E61BDBB26FA07BECFE5E019D8AA1A714
+:1084B00017637051A17298A1696312DEA9E97D5416
+:1084C000E12F678FDC107EDF07CA9B1D37ED005060
+:1084D0000C3D32766DC0CCF34346644FCFCBB6042F
+:1084E000EF067C1273D3D500D9E1A71C678F00B2C9
+:1084F00001DC2064286862AE13A9E890F7E6139FB8
+:10850000113777689BD6D0A45E7B3DB72A24DB1851
+:10851000DAB6A890EEA60EA07D5B44B90237DC98CF
+:10852000DB57EF7B4A12AADD3DBDE4E8E9FA1115FD
+:1085300021A43EE3163C2998413D2E53389CBA7A3B
+:1085400006DE208C70B1104CD9A0EE59C3F7B5D21D
+:10855000F2540B4039217E21E0ED45B180117DDCE4
+:1085600008056E4A4C3479ADB0BF12163504F4A13B
+:10857000BC17EA7A911CA1168A00AB3CA6D0110662
+:108580003A4D4DBBE020A96406F2DC6D510591F532
+:1085900041C7E5E56B59CC60ED171220A9D2A99728
+:1085A000C6CC92ABEDFBCD0EEC21AF639E376AA03B
+:1085B000F6B073892936556145D4AF99C4D7823F47
+:1085C00040E01B772D992C62019A5A5FB8A24A416C
+:1085D000DC9D6A4516EB6F93AF2EEC1AD254A3B60E
+:1085E0001B6C8320246038952D549BD6A7E9FBFC97
+:1085F000DC26C3F45DB447DC4DD851531F8299A6E5
+:1086000025D3F802488B0793CEA19EA8C28078CAD2
+:10861000A5B2AE612666481A3A0B3B870227725D07
+:108620008D6A926097E457A79F19FC35534D8CAE25
+:1086300052B8C35E50D83AD63FBD041681FA954D64
+:10864000AB435C280414A2B435164236DD35B91AA2
+:1086500038427197902C2529A35AFFAA11CACF60DE
+:10866000C4EBCFB5C3CFDFB9B894FE6A19B2E5CA7F
+:10867000685835A12878C05822988DA6448DCBF92A
+:1086800084F5B58F2006D332E2A32A118941B810B0
+:10869000CCB5A909CCD32698F6FC70DE8BCFD6A832
+:1086A0003F1EB4CDA87916DA049068B7EA6F9AFE37
+:1086B000B50A024B4A90A2C57B49EA54B93C08A5C9
+:1086C000E265CC0EFFA01FBAA49A03E1D04A83B2A0
+:1086D00089A7ADB655A3616D8C098FC0F23504C66C
+:1086E000F32A68C7FCEE115BB1EE300220A4432CE4
+:1086F000E00CBE0A4D2A7172315AB85946FFD5486E
+:10870000B87F007884111663271241A23D8CD424CF
+:108710001E2085756977FBB2CD52D79316B47006CB
+:108720005C3B4C45E09B227D8A4CA12B3DA2278CD3
+:1087300094B4A0E1565228B15A895F1AA1B2B27519
+:10874000FF984FE701D793C4F20EF0433372033022
+:10875000D7AD69CF57502E8B1C84F117EA01BCF6B8
+:10876000493DE56A50FD0EF375F35DBD129FEFF3D1
+:10877000DF7D5DBD3EAB0FE800FAE0657C7C7B0AE7
+:10878000D23194430F1542E1B04DA69CEFDBCEA150
+:10879000F866BB90B0AAF0D6FDB64712C905BCE496
+:1087A0005A4CC9AA61466F018C5F0595F6525C135D
+:1087B000407F18EE092BA87EC9BC9E261114F72114
+:1087C0007FB0452386BD2AF8554D37306F99147117
+:1087D0005AAA08F52AF3C6EEF5F7DF2451EE25D79D
+:1087E0007B75B1B6BF67894D076617B5A046DFF345
+:1087F000557B9EA9711AB1CC991355DD350C27D73D
+:10880000D6C0327D3A440997A76CB3830D186D101A
+:1088100058C478E37F7C3EDBD6A583169A6DC89456
+:10882000EB01FBAAE70A256F46C8D8889B681E396A
+:10883000076BFD3981CB5C69EB72BEC1A88116EA7A
+:108840009F1E35CF197ADA1DAB82F319AB6C7BB959
+:1088500091425623E2DA0EE50A2BF0DFD2314AD5F7
+:10886000162E72930770FCC119EB7D1ADF31E7E415
+:1088700077D2ECD760D76CD0E333DF15F0C1429DDF
+:1088800004B465EEF46D2987D5276CB9AE8054F732
+:108890007EF738AF57E2AFC17C26BDC283800ECED3
+:1088A000BBB705319E3D2B09123600AF17F0A10B67
+:1088B000141B5BA8C45B6385A622D3501308A3A036
+:1088C000F73E69A598185349BA7FC5ECA323565EB5
+:1088D0005D8F01538FF4EF726F56CE80FBF9F10C70
+:1088E000CAF42B21514E909FD6EDEF4729B3553551
+:1088F00016C3FF14C6F1BBF8FCFCA5EAADBE968911
+:10890000D7BCB8499058CBF2BB8437204DA008F6AD
+:108910002DBC6A7DFD8C2217E130B9293EC554FF7C
+:108920005EE55BB87EDF25389E150A00D47ABAA0D2
+:10893000CD1260AD8F92AFCC4D4FB012A271836A51
+:1089400063780BE799CE10572A14756A233FFB4CC6
+:10895000AD1BA89525E56F0A7275F2683662675FF0
+:10896000C037D57619A78043CC3BF7AA83F3DDF453
+:1089700058B59CFECEBC5040C2B116D707CDA5322B
+:108980000EE6922449450A01A305E7DA326F6FE14A
+:10899000E27E39C6C8471C35F6E0ABBB0C014B6A1A
+:1089A0005E64B2F54E5F849C5C7BA9DAE4BEFF7422
+:1089B0001B6EF6916692559999820D73B0FC12E187
+:1089C0000E371DC4F5BD2DB45B2BD5BC082A40ADB8
+:1089D000B6FF9A0C1A63AA48D1B5090802B4650B10
+:1089E000D1652D15DDDBBD33AE026711FACB8E9557
+:1089F000F1A53540F20CDDF8DE58DEBAAEB69612BF
+:108A0000125D17DD267ABC121FF49A6F8C312C4C44
+:108A100063E275BDE91C0C20063F3F8D3CAEF0487B
+:108A2000D6EC4528629EB584F832BF6AFE4A654F8F
+:108A3000C2143D5BE0C9425BD6E55F9C1B926D1A98
+:108A40001B0C68597A54841E0EEB9A80B3F12CEA01
+:108A5000E168E47E506409E0BED2C1A810B5F80C0C
+:108A6000A8767EE34B44DA1ACFC2FE886ADE417AEA
+:108A700011DB71C0C1A67CF62928683210B676B227
+:108A80002A6AA9B84EBBBB39ED440A46A3DF530C92
+:108A9000EE12D424A11C013B814C64B82B0A89D06E
+:108AA00083F360188CD87EB1C52C064F6888EC9D86
+:108AB0001D663CA6B5B0584207695E8591A2B774A1
+:108AC000C381B43BFB6B0372B941EF1FEDB795CD8A
+:108AD000046B0E8E1E76217886B4D8F55C217B61FE
+:108AE000F2594DE8CD3A874D08CA70571FD6FA099A
+:108AF000CBD5207151A6B43F29733FA96FB11F197F
+:108B00008FAF3B734EEE31974A31985043C55019A1
+:108B1000394FFA2D28B2871E412AF3B2E6149BACD6
+:108B20004D955DDF92F8BE8F2BBA5260EB9FEE54ED
+:108B3000A515010CD5102640A4CEAE9C9FE40CB325
+:108B40004A181F7CB037092D8B1383BCE3AB3A87DF
+:108B500027B79DFF80AF4127795FC91AB68B218661
+:108B60002C8B27DE26D18E1BE84FC6139B2CFEE2F2
+:108B7000A53A88DE868DEFEAD57CE61A7D9D79667A
+:108B80000FFAF94FCB6C7193D7EAF2B40411A84DE8
+:108B900015D7972C9C4940FB6FDE7652AAFE0D2715
+:108BA00008C5053E86BE0525142F79B97E8D8EA594
+:108BB00041052C40019FEAA8F95B71C65F9F774B86
+:108BC000166C7862C59B30633270DB5B5203439C4A
+:108BD00008481927F8D4E7190F2AD850E5345AA8BD
+:108BE000AE7585FAA8796A94663FF6F98E95D583B5
+:108BF0002F9639EF892BE1541B31D7DCBC5842D476
+:108C0000BDBA3058D85AEFF25705EA1F041E8E51EC
+:108C1000EFAE7AD8A5CA0AD0630892D2955AD37F0C
+:108C2000C5101AE022C05F46139005ACDEAB6F6E34
+:108C3000ED3A2F6B5077DACC3F8C3EB5BBDE22BAD3
+:108C4000E4CC4BE93DC72B9BDFF51805026A99057B
+:108C5000ABA8C6982D9A1028FA396E10A81AAF5EE4
+:108C6000CF866B42A3A6D50073CC622E9BD6376607
+:108C700047DE6937357A32F11CC283DD9E0E03CBA5
+:108C800045ECF11F15513EE8F0E25DD8C401261E07
+:108C90003F82905E2E24C6696706A61F5B31E84EB0
+:108CA00096B969E6CD664527E1F264751CE3DCF709
+:108CB000AE7DDAE1CC770CF4DFB0F6C260B0D7C796
+:108CC000A8A359396266F53BF8FB84C1CB1C0FF5AC
+:108CD0009DD8B8D9D0CD7BCE3E604AECEA7ED19209
+:108CE000D167D2DDD13DAF4253358F6650DEE2779A
+:108CF000535A35EE675EAE73EA3E0AA7CE63DDE1F6
+:108D0000EDBA54D4E0EB86791A2B600D65CED93DCF
+:108D10006C62F65410FC8CF40A9BC426DDAE00860F
+:108D20001B3950EAE81D08D0793578CA565CB15134
+:108D3000D4137D0B80E222D33CA45E0679F7B168A0
+:108D4000594627A56696ADB7D6B414BE043B93BD6D
+:108D5000412F5B4F51B4FEFA75C67720F92864DEC7
+:108D6000E1E0B76EB0C188347DCB6E4ADA56804EF2
+:108D700027F6E56320E4F19491FD96F03C243E7BD8
+:108D800002FB822C964CE54430E9CFED09B9E0A610
+:108D90006FC9569579663A8219D3ED1C1507568529
+:108DA00005A7C6B6BD91BDDB898A8C68F58C60A924
+:108DB00078CAFD73AFD778A5AA06143D22E530B76F
+:108DC000F29ECC6E90EFF083CE557608D8F989D418
+:108DD0009287A8731A16092CCCBC99B5E96C10D2ED
+:108DE000E08471CE01F347AEA88FFF1EBD2DF45075
+:108DF000D9C4605704606510C60DC0159A89A58056
+:108E000091CF82FC2E53572B41B8B3EA9EEB6DAF46
+:108E1000E077A628CF88EC9C1C2E5BF73D09DF8D00
+:108E20009F1210C8D4686E2E578D785885004785DC
+:108E3000EF46720B88B04B7D15F44C5DA28D1E91F0
+:108E4000FE5FB869E0D9CB7A12BACD11D94C13A71D
+:108E5000F6DDA1264217A8EBFD389E0B81DB6D18CD
+:108E60003D91F9EEA8579F6C3EEF26ACC37DAB3623
+:108E70005848DBDF19A24AA2D62DBA521AFF17446E
+:108E8000F2AFE2DC2DA7F809EB05505AAAC924225B
+:108E900013AE03E3D4AB134BA3867014EA89D78FC8
+:108EA000520A3FA73EF81225438875EDA784BA1CE5
+:108EB000C164E2F128463205DEDF98ABE07A0C9E11
+:108EC0005A21500D92993227F715F8AD7884DA6758
+:108ED000FA6A536DF1912541EF9A6F1A50D0A0EACA
+:108EE000E131E0634977468C93425449275F2A2752
+:108EF0007F6439276329608FEA64C00B1AA6C0F328
+:108F00007047EC59B68968FDD1E433546919798A00
+:108F1000494580E1A9E3444E81E1B8314856798F53
+:108F2000BE864345477A89FDBB520EF1AD08E1B3D9
+:108F30002186C8CAEF20321D9B04834D0A732CCBB7
+:108F4000EBE4680ED3913D6162BA7D00D4C906534B
+:108F5000B4851F122187AE3FA85FFB323E78A42361
+:108F6000F155373DFF7EE20481B0473E6208A3AB76
+:108F70006985616505A6EE8DAB9AB17DA149D3C126
+:108F8000CC26F21F5010FC0CCDC6E1F77C7617A65C
+:108F9000563B5513D8DB3F562E98C2222BD1C3F334
+:108FA000B2953B0968E280ABB8A5A4DDD5DA87525B
+:108FB000E4A211E347B49B9E1F84B315D8BFD5D359
+:108FC000AF4995C7FA70167D83B2C83DAEFEA5576E
+:108FD0006C6BFB77BCF39168E93A097163BA1818B6
+:108FE00052DD6B440B08C1A3FE61D522E8D0B9BFA6
+:108FF000A2EA9888AC5EED6BBBA666FA84838325F3
+:10900000297E28B10CC18EC317C117568ABC6E3B8E
+:10901000C59584BD8403B311F430D4581395C7EEBD
+:1090200019F8F48747E7D25C7DDD3F7481B6FA62B8
+:109030008795CFA1305C85EA70E2AFFD273D59B638
+:10904000873E1A697A5BD991BFF88B51BCE221EF58
+:109050000A197084855C3A2C67272576768F93FDF4
+:1090600056E4453E42398D2793124CF9B677EF64AA
+:10907000BD26F79FAB8A139F956E388D92337B394F
+:10908000960E47BD5485538317743AAA5C4DB912A6
+:10909000E401D1430682A1B7D80EB045FB5FF77754
+:1090A000EB9F1EBDBA92BEEF65C89811C34DCF238A
+:1090B00007A217C16855D4851F340A4CEBCD6455FF
+:1090C000010320708BD0DED0F240F00DE9C89F3153
+:1090D0003E261BDE2E8D643D532F0AD2F2FDF4A5F1
+:1090E000529E60CC57D6A6242184D40CB085193169
+:1090F000A647C2067322B8C0D547276668A7C33BF8
+:10910000589B8EEC0D0177A14D3BB0A1B8BA6AAE69
+:10911000CFACD3586433C802ED1E3E65FB84F29990
+:10912000C1C0308F8FC08FD16A1221F155A578E769
+:1091300091C86DE0C7D3A6174520CD33F78E5EAA40
+:1091400053CFA4A76E3A69DDFAAD843DC668A35239
+:10915000892F7F71D2FB3220AEC8B8438F8A42DE9E
+:10916000039E1772E42EE3DD878CECA6F3937D1546
+:10917000A7D4B42B0A1F8104C4CA19D8B7EBD39C57
+:109180002A5E405DDAA04A0515278F108EE0486DF3
+:10919000B169F08D3B55D80B37AAF95B87F913AD50
+:1091A000F90D92C248F02262B43B3AEA094DAFA0F1
+:1091B0007C7ABA9BA2B5272DE020458093FC07342A
+:1091C000D0AF54E314EB2F3F5758C1BF0AE8050254
+:1091D00006A6FD54DDEE1D2F1299BB4D4EBD405B22
+:1091E00072232EDFA7FCDB9FDE8DDECBA61E73482D
+:1091F00052938784B83E6B0087EF188EEF19413188
+:109200002C77D248D77707B7B914CE630960114DD0
+:109210001CBED84F04A63212D9A757132978205D57
+:10922000B787478F614822FFF12FF0F37D7CD5B8D7
+:109230003295953F74B107E85DC70B0CFE766C83E1
+:10924000044EB94A34FC17D74217FF1F00C91A92BF
+:10925000B86AB97251C1DA65EAF9E372FA67B237EE
+:1092600027A02CD31B5790846D1B5949C62F74B36C
+:10927000004DBF278908D4F7B30EE5BE12E80B7086
+:10928000FD0A548B7C050C232EC56D52B1959F0DA4
+:109290000D96650CAEA3CC378A9404AEA2C19F0A8A
+:1092A000C90E39DCC057D79B3EB5259F1BA0A3F242
+:1092B000193813C30B3445D612DB92BE9725A80E7E
+:1092C000B695FEA41A79DF95E0FF57D70EF4AEE607
+:1092D00013D09D63D6A90A3A8E36811DF69E070CDF
+:1092E000272545D82768C5F53E1B94C9C51A815C5A
+:1092F0001F847BE71F3AFD2352AB2C9C4BCADD0039
+:10930000CE3DF52EBD81BC5758F05D14861A63071B
+:109310002BFBA629F694C3B60884D0E76D7560715F
+:109320001162F4450F9654313E52948809B154B3FA
+:10933000157FF8EE6770D7440A8ADEC30A599E8506
+:109340009F0073E11B57219E3FD477E5A6E9946BFC
+:1093500067BFED248150236B068C49FA45732F11AA
+:10936000EC9F5E8FC2CCDEFFB9A1D053EAF00B6652
+:10937000574E9F887D0B5FB0973D7DC2353E59EBC0
+:10938000ABED9322D14873643E94BFE02EF76702A1
+:10939000FAF93347EA6B6A9036A2CA9AC50381FC90
+:1093A000E3BB4093567EA82547EEFBFBA540025049
+:1093B00092C26B1FAAB16DC7CB86FDC0EDB7E5E0C9
+:1093C0002C50A1124451828509466A3C139A2AE91D
+:1093D00054447E75B7D292AFDB57DFADFD8955A2FD
+:1093E0007AD9E628F4F4B15F44758CB767F279EA6C
+:1093F000A15A5529A8B41562F7B4FD84A3DD5FF224
+:1094000027D11F8F08FB92B95102476489865161A9
+:10941000024104821A624A1F292275919DE832A2F4
+:10942000A9AD400BC0BC94C52C9954C7519529EDEA
+:10943000D7BE6EE3A097F56CDB8F982AF9B4ECC722
+:10944000C9AAC501415247FD16032062DA59F43B0F
+:10945000CCA74E11578DE3189B8E50289429E047D6
+:1094600097D47A3A1317848EA7D6974A917901FF39
+:109470001136F60439BD81B6C14DD59B5CAFDE51C6
+:10948000B67013C8D6F568154408292FA3AC87BD5C
+:10949000CD70AD0B5FFB0C36371BCB724C77BBB678
+:1094A000CDC39EF5E4AF44C6EAD6077A731BBA4231
+:1094B0009E0CEA282D519CFC1432B5257A57E6AC57
+:1094C0005DE2F458DB421C54C8C156F6BF81E20D80
+:1094D000DFB17AF108DAD8C0635F56CEE73E5EFEB0
+:1094E0002AE271B35DD00E7F3D5F8920AC73AC265C
+:1094F000C570807F74D7041B0E8517D299883BA74F
+:109500004DFEBA59B4AE730DA2A149210B336F4D74
+:1095100055AABE3ACFFE85810DF67F24C52E774928
+:1095200068B3DD1F21E6B09ABD97A6416546E7DF27
+:10953000F3ED7263E835CB08BFE120AD7E10D13189
+:10954000010F436B56F397B895D0A76BB8D583C678
+:1095500048504C38AB898D640CD31B5654BA1C2B25
+:10956000A263AA904E62872914B81671D94D62F889
+:10957000B60EC5DFBC6C3ECF4420275B61E27D297F
+:10958000C8B75936AFA1E0DAE4943DB5A7D7B584A2
+:109590005FA4A8711F05341BA6D7F95B6CD91256BE
+:1095A0008D4A822192B383F53933665BC6D38ADC58
+:1095B000F58148390CBC3F52E3FA273A2CDD981765
+:1095C000F39082DC9C504D7306D21167EBA1A7A2E9
+:1095D000119227709AF1CEC8CD07DACA6416E1E37A
+:1095E0009EA9FA6E02723AAD1571CC2B4BE6473943
+:1095F000FFF317B7290FE0F63EEF94E0536EC63F36
+:10960000770DFEB5FAE2B29525E82851CB18C8913E
+:1096100079C12CE9C3DC8383FD720AAA3C062C388D
+:10962000157C17085B250776A7E0AA18AFAD02B92D
+:10963000684540DFE6CB722720E4C218EEC38A9863
+:109640009935DAAE54E80A33F5AFB3A28E3BB34492
+:10965000644EB7B03648042236F0B2B8FC3FADD104
+:109660004955D7ECBD2E1CF7F3E3D6D5AA2971DFF7
+:109670009A27C00A2C79AB031B842E85B43B6E64F9
+:10968000713BCA863D820329FAE1AA216BCB7DF8A2
+:10969000B1D03793F4B27125DB6EC064FD1AE437A4
+:1096A000D705B57B16768380833C25104A15565620
+:1096B000808173E482F130F41E52FFA384F1CA3B2F
+:1096C000CE4DC6B9B72E56585C3B7F752E0A106A30
+:1096D000FB3E667E5B126C392D762AE8DE45A8BC1F
+:1096E00036AE564DF17DC3A9729B67A6FE30B53DDF
+:1096F000DA9698BF084DE1007A0C40365DC40D043F
+:10970000BA43481E81E70F01FC0878A5F761C16ED6
+:10971000E8E54C59F338300C45E0B95C7DF66BEC6C
+:1097200032E292FCC15089734D1B823F44A084BF3A
+:109730003310222E88A893EFACBE82D57BD78FC979
+:1097400024C0CAF49A193CD94CF3FC37A26B82F4BA
+:10975000D2806482A387F9FE833D615079223284EE
+:10976000ABA40E9189F1DF06BEC2D27AC78A8A2FD6
+:1097700088DC7ED83C7C9EE970D253215FE447664A
+:10978000AF1504ABEA0D14DED4236D11FE5ADA06D0
+:1097900091040C1E7816767337A260AC61EC92F4DB
+:1097A00016F9DF3AA428731E42AA1D75E07B0689CC
+:1097B000A0E0B6BA64C3FE82E4BD39023505702B61
+:1097C00024C2FF3DE536E303C0763A9757D1DFD098
+:1097D000CE66D52A6953A2D4523E1E84C8C231F443
+:1097E000873FEF30A6612D106353F5A3E301E50831
+:1097F000BDAD201C6FA8EA0EBF3F8F1386742DC429
+:10980000038B5F3041AA1CC5A910E14E8F1865D4A7
+:10981000506C2D0E0F3178529CC2915206F32DF8E8
+:10982000B57F3A4798AF17586B08A56D55F36DBED5
+:109830006C823D5BEFB36D1E3BFA2505F62E5F573C
+:10984000B08AECC8AA5CBB973C03C368A489ABA7E9
+:10985000D8160A844C5207207CDA70C7C97177C3C6
+:10986000A9A7D78AC2C8280C2A10D873EA318A78E7
+:10987000630DD79631ADDDA12B4829F8D6DE80E601
+:109880005E438CB5886B04E8E79AC6BBD08FFD8B2E
+:109890007B43C47A2BEC545ECC4D5F750C052A6279
+:1098A000C89D1D18E7A6C0A0736A4F9C270FEE4BFA
+:1098B000EE4833673A45821D3D61BC85605BE258E6
+:1098C00096DFF6D5DEBC531D913B9144C6DEB799B9
+:1098D000C23A54109A3CA249A84449899A22743445
+:1098E00057BC8B458A024C5F96C92A5AA42D879F84
+:1098F000A327A572A5F5CF790B1779CFD42A735179
+:1099000095C917005A14355B788973D8160C77AA55
+:109910009107439E5EBC687A944B8CD7FAB62008B8
+:10992000C6744671594D70BE86861775D6CAD15A0F
+:10993000ED0C30DF25E87FB1E173D2E407315D0043
+:10994000322E61A3BEA79B0D2A754EEAF7B6BBEF78
+:10995000CC877F5EF26B1BE5B037B1DCD0A5C0A32E
+:10996000F53F76478FA6E8AF1F6F64BBA57AFE036D
+:10997000ED0B164B95188294D39EAC3E2072570A7D
+:10998000F46C2402EE1FD9E59F8CD5337692EDAAB4
+:109990006AE30CEA09EEF69834D6EB3FBCAA4D0D0B
+:1099A0008FD675D67E9559164DBC80BEC4C0C16E8B
+:1099B00047F074C842A2908412AEAD2CE802F0C306
+:1099C0001F993DB1B83FDCFAFC31C9FA6DDB1C953B
+:1099D000B72E999616B2FE53DEFFEE4842D5B80D6B
+:1099E00044252380AF3E64E2F9B43AAA72BAFA3F42
+:1099F000CE7E6CBA1D5D9D548BEF1A36387AB8E670
+:109A0000CEF15682274BCCBEFC88E1944F662AA645
+:109A10004C9E875B229270E8A98AE63889A0820E64
+:109A2000F91133F67629CBC6640C01B303EDC343B9
+:109A3000F0593101FB166BBA3342DCA2EA6E4117D2
+:109A400094FDCF424FA44AB62F9EBB94F019EA1D55
+:109A500084EFAFDF44B5EEA13FE4139CB2AC3EE32C
+:109A6000849079CBD526AD594571022E998208088C
+:109A70001A4DF328DBEE918E155826755509972C53
+:109A8000DD40FFABD0C634E5619FD9914F300C0C5F
+:109A900093B444AB27D8D25F68BC6FDF3897977117
+:109AA000F91C0402434D84CEA2278D181E90123655
+:109AB0004A17D1AED8AC4C02A71229889FA12BD24D
+:109AC0001A1955B24C4C1C38C0C5E0AB3AB6D40C90
+:109AD000ABA79B87FBA311B9CF62177B0A81A019A3
+:109AE000FAF5506BFA71F632A13FDB524A694B9B93
+:109AF000C3310CF022217A1A0325E5E8FDBA15B628
+:109B0000F04527E011E5CDCE37FBB07F045289E266
+:109B1000B6673A1CFAE1BF189DEED544182A84EFC7
+:109B2000E15FD6951D28E47CD54C0BA6E3FB37E41A
+:109B30000808BDC2049ECA4062290A2E3A6A7A7693
+:109B400060F5FD721AF7FBA6AE7AFA186106BEC47C
+:109B50001AD90FD2FE328710BBCD5C3277411E9FDF
+:109B60005EDD761AE72AA8B61842A6E1796AE6C24F
+:109B7000BEA6171A96CED45CEE2C3287A6D073A15F
+:109B8000043B2AE43315710426A21BB3B70DBD268E
+:109B9000E6BFD278F374F864F4A6A11D9B39CECE4B
+:109BA000E67693057ED094106063B5C14B45DF53D4
+:109BB00094BE47B2426F765041FE603051D2A1C789
+:109BC0004B7F3C46499AA27B3675317DB94561A2EF
+:109BD0000F176EBB38D06AEC173FA168F3458FFBB7
+:109BE0006154473C3F5083D0CD5EB14D7606218D08
+:109BF000701C726FADADEC614B9455CA9C3E28E66B
+:109C0000E784931A00EACFCB3046BFD5C072164323
+:109C1000127F863D1AE50F3C85971DE1560BC1A4C6
+:109C2000FA2ADDB90298B1942370FCC6B81E0898D0
+:109C3000BA9CFD36CDD17BB775FC1BAB1A4E2D20DF
+:109C400097D3004E417BA4745760758B8A1BF547F0
+:109C5000493DE2649927A31474A342F3BB176AD168
+:109C6000734929FD81C5ED695C19F548E936AC3CBD
+:109C7000864C5CED14820C014D340F45A44FCC8F03
+:109C8000B33829AB2919865C29FA2C32BA48459B8E
+:109C900082365301E6F3F3B68D0B3FD2DAAB2035B3
+:109CA00073DFA9FB69B8FD6FA2A32C7CBB687A1A8D
+:109CB000E0E3EB6F22FBFBB5A942EEFC89252FBA4E
+:109CC0004AFA9C700594783998F786D311C020C958
+:109CD0007C2AA8DC2B3DAC96802306D9F526AC6205
+:109CE00073693EE9B1DAE47E56EC869EC5666AED9C
+:109CF000F53EB6D0C3C6A1E87B0BC7E1A5CECA220C
+:109D0000FE177FE84B75B36D9066AB2CE10AA2DFBE
+:109D100040DF654E4A4BA1C3EE363E22272546E181
+:109D2000373A4CA6C08E1076F29A430EB9036A5C9D
+:109D30004AFFB54526B9B0636D7AD4F3670F0409BD
+:109D4000D86BFAA7CC93D3F88081F64266192B1111
+:109D5000F5FA4CF54889D2678A109C15F7D220E4B1
+:109D6000E84EE17768457601C908FE7D8DEDA5CE08
+:109D70006692766A83E3DBC3A622875C392B652F64
+:109D8000DFF408F9B2364C61BFCFC7C96D7D571EED
+:109D900048F5DAC6943F09721378C5A2272935D948
+:109DA0006CF3D8D2A7B176B70D361CE1D51F04FAF3
+:109DB000BA2BB55698B5DFECF3347933C836018E3B
+:109DC000872426777553D161E5EB6C488C4919B02F
+:109DD000C1AF26689DC1F876E20AD906E4A9FC0560
+:109DE000CA7687F8E1503883E5B131EDCF57C9C164
+:109DF00076A703D188A0EB389C16592311D6FF0F04
+:109E00005E2E6E451964335A8F5F270A6F72F8779A
+:109E100060DC8AA9F98A03D44C27AFFC2FEFCE9FD0
+:109E2000624E9D3734EBA9DF1B605EC3B0729A6F40
+:109E3000FF977E0369D9528719FA249AD857593364
+:109E400069DD81899F8789D4A973538AF84240517B
+:109E5000788DDE5D036A4B600E5ECDB76A4CA3DC85
+:109E600069A8A6C1F5C434A16B9F771555A29AC500
+:109E7000BB7D2BD88741C578DE6439883F00E6E298
+:109E80003045F0D5EFFCAC9A0EF810B180F84F36A3
+:109E9000F140FB8989A16D9CE245F0C719C620619C
+:109EA0006CFB1ABB2304C1201583219FBE17F04C05
+:109EB0000E172EFA847ECA11F7D013EC296CF06EBF
+:109EC000104647389DA89D4A8A47E843BB850C80C9
+:109ED00021980CF2A1982B453BBCD166AEB85389B2
+:109EE000C9A12C34588CCE6E777EFD478DA8BF4417
+:109EF0002CC9632B4A5D33552BE0370A8FD8461F98
+:109F00003CA14B55B9264D7D8CF1AA0C9C7ED022EC
+:109F100097D99D0B2C62C7A7093178E86CB1477EB1
+:109F20006346B35737BD7590382C1C2FA0AA93A950
+:109F30009D90B68FF7562074F7F385FE45AF1E3F10
+:109F40006311A5A6B18B2925773FCA6EDAB02FF32E
+:109F5000F0D2241C671FE26B7C102936E5D2317DDC
+:109F600044B31272C502EE61582A5EBCAE66575CFD
+:109F700033681379D3F4363AC413ADB7FB25021B0B
+:109F80009D67CA62B1E87C0A9EDA91ED461E22C046
+:109F900048D9E7F3EAB0DFEA204C690C9D9794A119
+:109FA000065F1B5A5ED1BFA1BB86FAE0E34E86B9BD
+:109FB000FA4769A481A4FF5DCFBD5561A4AF18FC29
+:109FC0002F0BB68A4EB3E0C0D239486DC9BEF20439
+:109FD0004045CA787A73390B8A7301E412E4F711A9
+:109FE00071E5721795AEE45FBF20A423DE613847A8
+:109FF000D0226CE7AD041DA0457CF045883F997BDD
+:10A00000A04C2B8C29E7E895DA96DA3B59BBCA1F9E
+:10A010001D0A72F631C54AFC45C66A777C6F9858AE
+:10A02000C8908B44DDA6B3F1698310E4F800D03901
+:10A03000DCF46E1DD01AB8FC4D058D0DF14FE06AB1
+:10A040005CB38C54F87E43D5717D878BDE16F8C0E7
+:10A050000DEBDEAEE60853183CFE3BF091DA9CDBDC
+:10A060004047F603FEFAA73922EA88C19FC3237A44
+:10A0700011BD3E36CA2E10FEB27F9D607309C982A3
+:10A080003626202456B9F6555E0FDC1A981993D659
+:10A09000C073947F7D2A16F0B2AEC48209147F0685
+:10A0A0003409CFB57370BEDBEB7EE6436902BA7E3E
+:10A0B000F3A6F6DD28AA3AFB1DA53B4F25870E1512
+:10A0C00096B7C1695C13616D6A1B0709D4FD164D13
+:10A0D000361DD78C8A741942795F2B70548483445F
+:10A0E0003B326770E718E6A56BE6C13CC6EFA4CF2C
+:10A0F000911B7F7AE7075163D7F6272EBAF5F12E29
+:10A10000CBF9E357749186099DF3D9E297811FA794
+:10A1100006433227A53733D71D7C5271B56B0FE24A
+:10A12000BD4DBA59747737C90B179BB7219F968FCE
+:10A13000C7BC7D7E8DA9E714103357FD9577BB957D
+:10A14000603E784CD346EB61761E4D7892084D3DCB
+:10A1500085EE1919FDD22CFDBDBF2759FE79C4C566
+:10A16000590AC89B9B88FE5109D00361CA973339AD
+:10A17000F672035F66F91139630290BD499CA274BF
+:10A18000FE4F0612A606092DA8494CD0826AD72E8A
+:10A19000640043CE11A519856FF70A0CFB7E8AE295
+:10A1A00087E25FAFBDD10D1997C5F7D0E31D0483DA
+:10A1B000A9D913E42545DBA19DB15C04B3FE1413BA
+:10A1C00080EAA764F2317FCED89182DC86783D7A2E
+:10A1D000C6472BFF08C5E881234DE4317879A69660
+:10A1E0004E3FA3271D3DAB56E7CD1F645F99D4A911
+:10A1F00091CB3BAD61652515B9D3C0A8782893D91B
+:10A20000B525A24197ADDE9B6FB330B5E436AB36D2
+:10A210003807BE2E1391E820D9A1F26841D765E72F
+:10A22000F62484FF6C6DD0F98F91DCCDB32EA6118E
+:10A230000110E56411A137A9DC460AFD7FBE8B271A
+:10A240007C18F949D9915D66E552E1DC5D83D21550
+:10A2500011FE1A3321CB85A707992E8A209496FAEE
+:10A260008E46F2242C2B1950BC2BCD37C4DD4981EE
+:10A270006315CA9C54916F93C3043C1D4988427373
+:10A280009E6183D577F6505D92D23DE9EC69A27369
+:10A29000A5FC346B4CDC1ED5A43A12AD3992D42700
+:10A2A0006107127E22984E1BF2565BCC8DA11A1CC0
+:10A2B0006E9307A486E2B3ACAD3E578958795B42F2
+:10A2C0002327B4845832C25E8451527E23B5CCD544
+:10A2D0007AAAEDFAF6CEE514E8B28B074D85F2F7CF
+:10A2E000452CA7BF82892B1513B45C40E9A4FD95CA
+:10A2F00050F2183B4FEBEEF5BD9A392C8C99568AEB
+:10A30000BEB8AC8C12F58056D3B14E84FF927C77E8
+:10A310006E5954710B719426C811C7547ED538F903
+:10A3200054FCDB8EA988F69A103B3291571D7BAF07
+:10A33000127F065BF4333B0896A1B30C564A3ED716
+:10A3400096748CF242E316F26082D68B6E57D5E299
+:10A35000F2C0CA348288FB795E450B37FBD88DE9A1
+:10A3600054A612EB006B77B579B8609EE8297705A3
+:10A37000AB6FDA0D9E6B3908753E1A9D2C629DE31A
+:10A38000B01BF2373AFF5A9B8E113CEA8522280710
+:10A390000F2DF79AB68F5914CC7AA025B086AFBA94
+:10A3A00098CFA33ADE14FFFFC4C673F91CFB781DD7
+:10A3B000C64B96C8BEB94BBF03FD850ACFE379856E
+:10A3C000196D67E399E3DBA24511400EDBD42F75CD
+:10A3D000E66B9EF7270EE6F7BF72A2F3C9EFEBF923
+:10A3E0006EF286A7CECCFE903D92E395DC5A8CAC03
+:10A3F000DF690FF849F732FF5B6A4FB2DA38D9B933
+:10A4000043B0D273B866ED7F20F9E20664FE8EFA9F
+:10A41000C1989E56324ED13775E8060FC5D528DF54
+:10A420005A92E9B2D8FF78A2DC064E1FD28F154DA2
+:10A4300000B0586AD58F22B39C8A5F42BC885D2ADF
+:10A4400013BB23D600C2E97329B06E3C727A246331
+:10A45000693C282AADAA7DE0902E31F49B284E223B
+:10A46000ADBABFC5F699BD924825E012443B46F50A
+:10A47000B610F61CB476EEE0A010567E7E0E9C98C8
+:10A48000CF1833EB8A4CEC3857ED9D2DDF5BD81895
+:10A490004963DAFF36967A9BF0AFCD065A8067A7FC
+:10A4A0006E42A4BB0BFF74288AE665ED80CC603E4B
+:10A4B000EDEA8CBB09A36A88400FCC97361581CA98
+:10A4C000A4A1E53F2A864646243A2B8248AA4D3865
+:10A4D000E5EE5BC6204C25426463F2B112ACB0A538
+:10A4E00023B52D828E3360E5FC1599F0E5342A1EE4
+:10A4F0007CB3088E416B0462BE534E9D79FC823161
+:10A50000B745C60ACE4957CDAC503A7739CCD5FCC1
+:10A510001F15124207FCF77CAC9191314ED0113AD5
+:10A5200033CA866CBC8069783A59408DEB69CB633D
+:10A530003D8278F111E842383215F159CEEBF21D27
+:10A54000AEE80788461B4978A39036EB47CBDBCEB5
+:10A550002178CB9BD1D676C1DE5E7D34DB3EE972BD
+:10A56000D8B77A07249717CA59619FD42455D9C2FE
+:10A570004AE81858CCDDC2D153BC98033EE3EB82C5
+:10A58000B1AF0C04C0F55A274FCEAC44A8F88E8664
+:10A59000D02455377813AD71EAAC969BCDAE967B3F
+:10A5A00053D50A79922208015C521924B3AE2D3793
+:10A5B000E484EC40F18E1F4DC8AC0EFF5209EE93BF
+:10A5C000609F6EFBC93CA5A9467B28813F2CFFFFFD
+:10A5D0002CDDE54A993A6996DE5F283A51610A0412
+:10A5E0001E56C25F24894503D87E1D5C8D7177A1FC
+:10A5F00068460F385645320AD07867E14AA268515A
+:10A60000B3C4C124B64BEBCA1C401C428070D00BB3
+:10A610004906F7E1D3A8BD7E2684FD9BB327FB2B1B
+:10A620006117E57776BD3E555373CD65C0F58D292D
+:10A630006899015027598DE524ECD0A1514038E4A8
+:10A640007BC0D682748520A5F0647BEF9A2CFC7DBC
+:10A650007DA9C43A6F593EB64A127F04ADEDDEE5DE
+:10A660006E05FE0737CD62928A0C55B6D367E4E5D6
+:10A67000F166549B8DF503F16800F48F1F1010AE46
+:10A68000B237F67777C21AA2F126941CECF654572B
+:10A690005FEC10E85E82E4738578DE2B052ED1AE88
+:10A6A000ADE4EDA4D0EDC873B6DC8CB3968C161374
+:10A6B0004CF19C831C581344A72EBEF6DED37F19A1
+:10A6C000EFB7E548A1780B30A7FEDAAC8971DA75EF
+:10A6D0008F0BBF2EA9EE50D784743DA6EC51891282
+:10A6E0002C7ADCE04CF86E2824EC79604D0D89FB67
+:10A6F00099FAEB63D020BF358ECB524C12B322486F
+:10A70000200B77913941CE0693793646C313A4E7DF
+:10A710001E28587993FA931E506FF32BDC65094776
+:10A72000F1AC808E2CD3B576DEA6EC3B94700FD4C2
+:10A7300093E9F636D110351E2DA984E9C9DC5FA84E
+:10A7400038FFB4E27C97F748A2D986304132CD0A6F
+:10A75000590C33E22D2F857DADF30D14AB06988295
+:10A7600022EA673A09D72F9212BE6F027257D0437E
+:10A77000186D752190E580A0C171D4385A6DDEF74F
+:10A78000A01418949FE8E3FBC7D0BBEE3C808F3E3B
+:10A79000A8093B33CD4AA13B989605C81C13F10D7F
+:10A7A0004F5A37FB1D522EEE9D6C732FBB0C975AE0
+:10A7B00080F9BAB4BE9B2E8A6DDE272876D713ACFB
+:10A7C00093E44D8886222D9EB12D9C88670CE5E987
+:10A7D000546775716F285577752662BE922FA3E76F
+:10A7E00098243509C0C63DABCF309F10B8B061D2B8
+:10A7F000B499EFBD836101D2F33561D7AF2518EA73
+:10A80000967F431AE19396DF35FE1306079D8F8FDF
+:10A810006F725F50078D61D31FD4D6FB8C4CCADD9D
+:10A820000F16FD47723EC1FF5488DA19353506E927
+:10A83000DA5F6873B0B4F5E2A4775558FECC438470
+:10A8400078410E8225259B4E1D50892CB6082D1768
+:10A850008025B36E1D078EDEFE75B6009B7D876971
+:10A860001AE0C7C1F2002E1977A16412DAE128328A
+:10A870003F3443511BDA565516CF03187A6BE30B5E
+:10A880001F8D57A8B7AFC31A485A6DA2C1E5DED2D3
+:10A890007A3572973D6CCF42BAA0590FEB3ED22465
+:10A8A0001695394C5107B80CDD2D8FAD03DC3E8475
+:10A8B0009A422972AC8D7E39004452340E393AEAFC
+:10A8C000A0986DDFF17C2FA750FCF5F1045BD1FB64
+:10A8D000429A38254ADC3FA8CAC95F11281591D58C
+:10A8E000A61D9EA7FB0F3A4707A6BDEB04C1D7687C
+:10A8F00040EE39A1A9CC4A6B39A04A33B39C18C4A5
+:10A9000056BD956932B75091FF7A713FE8670501EE
+:10A910000D9FA770FA4E6E76F891EA0AC9B3BEDDB4
+:10A920004BB9EB10324D3646A41C8BBD2481FE354D
+:10A9300037EC214E84DA4D34FC169920E4D28F7620
+:10A940008821D45851F4353C65F1D092A7D89E7136
+:10A9500059F00327913424AA179E431BF0E4516A4F
+:10A96000FD529BB23C538FA712EC7CCFD2A3B77F92
+:10A97000A89F8E1D8D5E93F8DD2D53760B0F7E7D87
+:10A98000178659B8124F2D7475FE5B883D94B477C5
+:10A9900010FC920080332675C156F62C2EE401C0BF
+:10A9A000CE52D79922F70F468464C6736B04D1BD8B
+:10A9B0002FAF06B5ED1501B12427B5360B71F6ACF6
+:10A9C00071D003F07456419EDB6E25822A6FE8DF5A
+:10A9D000AA311E093D860BFC4B89A1A20C2AF4A6C4
+:10A9E000C8EF2686F46F89CD3FBE722869177E387E
+:10A9F0004581E19B1B661DC7F6D4E89A82C6A48BED
+:10AA00003E8802EB724A08DECD8356536B30EDAFC1
+:10AA1000FDBB4391D4FBFF22DFFA023EA2027DA0E0
+:10AA20002F5170D90A353151B05ACA7FFC61B644F2
+:10AA30009F34E2C3FE221CB3302161B7530779FC77
+:10AA4000E0377F3A35FCEEE658C5BCEDA140F13762
+:10AA500064E45A2C9DDBA4D43E07C74DD3A3014028
+:10AA6000F56D9A6C29515AB8CA7D7E6A29DCAD16FB
+:10AA70006A2DAD53202B13D53A9F67099705D50A48
+:10AA80002B39C273CD1E5D18E515496A530016E1D6
+:10AA900094ED43AA3F970259F8017627DEF37E83AF
+:10AAA00007B4A7C93907E969D98FFABDDB0F438B12
+:10AAB0009A881FA1A5E7D0F12A32F237A25C11854E
+:10AAC000F2123E372CE2CA58A7A56B249C69574660
+:10AAD00069B144F6DC5ED6A9B30ACB5FD5E9F15A79
+:10AAE000FEB6E51474A7719BDDFD66FA0499131494
+:10AAF0004E37C6DC3E0648774313FAB646CBFA9685
+:10AB0000500E0863080D70A0E503DAB82C0945263D
+:10AB100031C1F356D67BCDB7E765A91EFAAE5CBF4F
+:10AB2000135B95EDDD1E842EC277C5375A51AA04FA
+:10AB30004CC757205FE8975ECC8978889E8DA9F135
+:10AB40006C4C10A50D1B74CF12290C509E2C4A4D35
+:10AB50001494900D1AD0FC4404BE340E0C880FEFF0
+:10AB60002EAC80DEB3ABE856D73FDB65CD51323B30
+:10AB700015715D19EA637F4D8285C327A6DBAE445C
+:10AB8000D6E86E5DD4554D27609E4FEA6F977A27C1
+:10AB900081521890F96B7110EE46BAE38CA3668B64
+:10ABA000DD5F740F625E15A2FD025DC162C3725962
+:10ABB000B4C9A38AF55D1F9BECA39CCC4D054DFF4A
+:10ABC000FA38CCCA4B6A6E9A4495C78991FEF32A2B
+:10ABD000EFC46020BF671B3A8341F89F2582892D0F
+:10ABE0006917BD5BCBAFBF7C8D71500BF55C2E91AF
+:10ABF000BCCE87887EB0A8044E467CF90F1ED22EAC
+:10AC0000E07DAE054645FA0787A515E44D4CAC340A
+:10AC10004B5A3144072743F2A2EC2AECCE93436708
+:10AC20002FD416EFEDA049B5418791D8584D9562C4
+:10AC3000995BE0EBA8FDE699F2C64E18E08D48035B
+:10AC4000170E0E508F0EF52348341B6785ABB312D9
+:10AC500086527E6E8ABB9BB8A07F1CA6C12AC5C641
+:10AC6000DB891510E4B9B260C989CE33AE93865C36
+:10AC7000F98051BE734212D75A95A9C0A81082E03C
+:10AC80003E1B8F5F1FEB0250BF93E8D32A254CEF8A
+:10AC9000D4939ACF4A396FED008EE945BB27E6F68B
+:10ACA0004B44A72B5BDDABA095D3729258E1EA0F22
+:10ACB0007E64AE0FB8802B8370CE3F53BBC8DC7070
+:10ACC000D54C71D419569E56ACD973F121DB3FAFE8
+:10ACD000BA8F519E04F3336BB4C77958491050A210
+:10ACE00072FD18AB50B9E729B97EEE4D361B001244
+:10ACF0008D31254A5CC0729829151BD412F340F699
+:10AD0000C5587EBBFA36672FDD0D70D3B0A47181B4
+:10AD10000967BC71F77B0073AAE59AC372CCB3755F
+:10AD20000CB06C5F9ADE46175598171931B6188A21
+:10AD3000688C438329E87CB13364EE4D4D68B79845
+:10AD40007200E13C8656FCB1A75F5A4011711ABCF3
+:10AD5000476B7B1935B2CC46DC9187DCD1F2C3D688
+:10AD6000FE8582AA90E0C168ACC692158DE014FA07
+:10AD7000C64CB9420FBA1BDC500336AFC36C47E078
+:10AD80003082BAF30AEBD5571623E4B460098DC0BC
+:10AD900087730E79184093A5B8B633124F9DA83427
+:10ADA0000C1C39FF2C00679B60A1760C6A5A67FF68
+:10ADB00066F5369A3B8E8C9A75485E9EC413FF0CDE
+:10ADC0008A01F08E12B319AC9FC57F62D43EC9EAE6
+:10ADD0004B2A687B7102371D55DA50EA585C2F21E7
+:10ADE000CBB1ADBF2281981B5422FD41736DB4F8E5
+:10ADF000467521DF41C24D3CEFA62AA681D491358C
+:10AE0000B4C1B901211C435C99CEA08FE7F7A81506
+:10AE100034A79E57097D3E6768967E426E2FA13B00
+:10AE20003C001EA3D71724B0B833F3AA8CD5E94150
+:10AE30008CAB9E7E987C56D8E7ACD3CBCB29BB2E6F
+:10AE40009B2BEB14CBE2C80CFA98C1015D858C8179
+:10AE50007CE610E90D939DA971231F0B40967BDBC7
+:10AE60006F3AD88B93DB9F9077FA21169EDFE34BE6
+:10AE700067805A1E606D302D1E3947F18C5902C310
+:10AE8000A67C0307E5FD9B58EEE048BF58C2ECDF07
+:10AE900088EA5977CD76EDB4FE5A9FB677E8630D10
+:10AEA000E843D67F187E9870F25DD9A1103181D227
+:10AEB0004418FC7C1231DE5EA591F961AED75AD8F8
+:10AEC00095DB03ED4B2FC69BC0F30E4543765276C0
+:10AED00093C71AC8A1054B3E95000ACC268E346F45
+:10AEE000D5ABD85703E9D44CC7FEE82C7212F276E2
+:10AEF000E91EB3B07E2D7ED47D548AACD8B1C55D39
+:10AF000003CDC7F851D786F9CD0250293888217D65
+:10AF100090618943B7D5E7136F3FB7060F9ECD5BAE
+:10AF2000B8318E5697DBE5A6A1657C6787B343E809
+:10AF3000F2C933E73D78C1F79CA2DC9CDB124CE1FF
+:10AF40004F5CFA0B3A00C114293F6FE523693EBFFD
+:10AF5000AD05985AF05B4ACD56DBD696FF9B81A88B
+:10AF60003896F8B2A0E06DA1BDF50CB33AA72D9AC2
+:10AF7000D65CDE2B520AAA50E5A9EBC9E3606A53FE
+:10AF80003688E0541832864BB2FDAD6B14EDEC4FB1
+:10AF90005DFAF75798984BD0CC365BCDCDC7FE867F
+:10AFA00085784205E63EAC16948694E0500A0E5130
+:10AFB000DC64AAEC8ED6953FA49BD13293DACF3FC6
+:10AFC0001B15FAD6A46834069F5AC574702D6649BD
+:10AFD000EE8A379A04464C9E29F7EFCD7748271121
+:10AFE000FA1050C6ED584444A49D2BCB9C6A187BA4
+:10AFF000DA18F3566FEE3B5D7195F14E6912C03C65
+:10B0000047033499276FF0561CB69A5CF22B3DF338
+:10B010006D5245892F7232DCC5D2BC62490BFF8F5D
+:10B02000AD6B072B9F9BD8D63539405C379B68B8F2
+:10B0300069512447120A587DDA10438917EE5CF9EA
+:10B040000A0896B3EE52C2D83B65A412DDE41C1484
+:10B050004DDCB7CEA0A14A65D32A832FD8C010F00B
+:10B06000B0F88DCB0AD40DEC5513375A4E73867C4D
+:10B07000DDC54A7ED8C3B7EB20069606DCE6D89538
+:10B08000553798367F6E9A0766CDD25FBAE0EEE00C
+:10B09000151C8379897386620C582FFCA2C3FDCFDF
+:10B0A000A80F12BDCAE9E3CA7C04137BA35D74BC7C
+:10B0B000EDE609671C2F8790B4FF65D848E97A9BB5
+:10B0C000D083CE2F59A8F2F635CDE509C69F47EAC1
+:10B0D000C5B4483EED1A7F6966EB2659F98C0FAC72
+:10B0E0006083CF36A72A2D866DB62F0367EAEF5E01
+:10B0F00012F8409937FF0F1FD045BB6B81D1E2F3A7
+:10B10000CAF265ED480F320A4566C867B43D4E3F46
+:10B1100056A554C3C21DDCBD8DF86D7E2EB2F67BE4
+:10B120008380F5EB789EB6890DB47CE47B1D8E4E52
+:10B1300042DF85B40C5A01D2414C72A4AAD71E0436
+:10B1400051B3428EC8F5FAEEF7D3E820B8DA973E4D
+:10B150003C8D0384680B9D02868CE24A64D589E1AC
+:10B160006083F36BE9F4C9549C50EFE501D20C49BC
+:10B1700029E688AFFE941D6D4DAE833AD7EDB71525
+:10B18000C58D0FAF90224374E465E2E9EFD05BDF39
+:10B19000A5601849EA88221210094A547B177FAD2E
+:10B1A000CDCBAFEBCDF8D450653E82A86CD7A4C709
+:10B1B0004FC60D87C86C47D61423EB1FE9E906B5C7
+:10B1C0009A32EFB4204468D9E4B6799121601778B7
+:10B1D000901F6A9DCF1CEF4E0BC428D9743D1B9D58
+:10B1E0001E4432580CB598D4B1BF411F1FB4F4B3FC
+:10B1F00084ACF14C4EAC2415495402E0B4A920971C
+:10B200007D03051E606AF9781E119C52814D06C0AF
+:10B21000CFD37E403171C17FEAAEBC9FA01A2A70A5
+:10B22000C7ECB445C9CDA5B2011E58F40B004DBD05
+:10B23000C4D01588323F3360F7160B4E483378A0E0
+:10B240002160BF4D26B740BDDF0002235CEB85D1F6
+:10B250005C1589A047EE1032503EE23941F43ED3EE
+:10B2600053DF6CCCE5B4E2199D9FBD42B04D97E52C
+:10B27000A318AA3BA047D8EF9BC77B5FD721C999EA
+:10B280003C45D3F0BC6A6A74128FE8BBC4B7EBB517
+:10B29000BEB58897A78F42E4B76E0FDCDE13C832C5
+:10B2A00056598F5A170102B1D37D40D46BAF351A6E
+:10B2B00042883AD23FF5D586C4A2FB07781017869C
+:10B2C0009D4003ECB509424A06AF9F7AE79C06FA17
+:10B2D0000AC6297D0E0D1558651B5BADB1BE39241C
+:10B2E00031B094CE0E80F9EB83F8471D8E0DE283CA
+:10B2F000FDEA6C3F22284AE4001D5843198E9A59F2
+:10B30000E4A162A6313158554608647EAC573B83B0
+:10B31000A7519ACDD490D145159EA5D81C4922FF9E
+:10B32000D5199B62F6DEE4254F53A1B1B557BAFD9E
+:10B3300085ABCFFAF7FCE2A0C8C5E1A91753B886E0
+:10B340006F269DF6FC737BC19FBE337A711F6A9591
+:10B35000C7C97DFC588BEE9F8F6EF17B62680ABB7C
+:10B3600071CA3FE3C5D43B209B00929580B751142E
+:10B370006A070CDD9EB154DB7CAAA72B47DDA1E94F
+:10B38000E6764E510BF68677467962D5210CC37E60
+:10B39000753E1EBB21389A338A6195232C6F021D9E
+:10B3A0008706D49379E2F8A8E3A8B000D5C68C9FAD
+:10B3B0002D60194D6133305645815887C614E919FF
+:10B3C0007895AC132EA7331A8568827A3E90EFAB3E
+:10B3D000E3AB8AE1FC118B4639283DBDA6A575F685
+:10B3E000507322A8DEA399CA1D59508095629E5CB5
+:10B3F000DAC3A583AF2D889C9FF27CAC2F4A467C94
+:10B40000076A8DE44D45EBC0FDD4037E5A3357DC0B
+:10B4100096365E6B9114909A8AFF3CBCF4FD3FC156
+:10B420005DEA37817D3C16622411103DCB27CA327C
+:10B430005A2A64503D7F92BBF15343E442FC968903
+:10B440001814345A99CCECC4A962728BDA2F9BBAC7
+:10B4500022B0E5A331287EB5D6A7A0C898ABC349D2
+:10B46000F7820E485F5FA651EDDDB5530C951B23A7
+:10B470003E5440908A8F4F5B722513E3B3B0F3C103
+:10B480006D9AE431AFAB541FCBDC04ABD930842CC4
+:10B490003F927FCC364130261A4D671647E5702023
+:10B4A00002038247746922D8753F6E888237A926C5
+:10B4B000760533D2931CA6FB57DFA95139AD713AFB
+:10B4C000CD854B5DF0F678B5BFF71AF8EA09DC5E7A
+:10B4D000D5115AC56EA8428066AF1262056758F64C
+:10B4E000EF5C8E38C5DB2A65F836BEE42C2FEF41C1
+:10B4F00004B1C705F592C1A07192DB89905BE43776
+:10B50000CBCAE455041EC7FF733852DF4DA3C4DE17
+:10B5100059E42901F52AB021F03AF39396B1C68D8A
+:10B52000EF3F5A1FAE1A0DDABA58C11C878EE4D805
+:10B53000FB99AA86D528523743239D7DF8A241C5A1
+:10B5400040BD4FB8CBD49614B8BAC0013CBF6FD938
+:10B5500054C254046569EB1B7CB44BDEB038816A7D
+:10B56000D3726AD0EDF51630963A7C29C2A1EC9DD3
+:10B57000CA4573CB4E984344AE8CF84D6CDFD63B36
+:10B5800092A50BB79D5FEF06E1BC16D99527D45263
+:10B590000725159D714D49EE9202A605133DB899F8
+:10B5A000E417C8DB63A297171EE55D9EFA6CF9D518
+:10B5B00000AB6BB02E2844EB94928B4E863EBBE7DB
+:10B5C00072C86969E36B5213CDCD13D934FFEAFA1F
+:10B5D000C119C125FA8D31474C557B7D1B02CCA387
+:10B5E000736FBB0F351BA5BEBE7935C35F5CBEFD57
+:10B5F0006A8239F5E2DD8CB844FF3673C3E7DCD7E5
+:10B60000364CEFB4275295B8BD035F66524F34F8FD
+:10B6100076B3D6CB4B023E9FE9E51593F8F9C70800
+:10B62000248E318DEDC1158A84AAE18F06EBEEC21E
+:10B63000D5C2F33F4279EB4772CFDCA3AA3094A87E
+:10B64000F99DFE3E68A378BBE1F68E2A2669906DCF
+:10B6500022619E2D9FE81839392FB857D2C9B217E9
+:10B66000B1C7586FC29E2D1DA255B0E690DC0ACC22
+:10B670001808EEA41409EAF2AAD2167AC424D1A7B3
+:10B68000BD2F882237B136026F7D1FBCCA7573E9A2
+:10B6900036E2AEDA6F97ECB1407BDED787ECEA3A60
+:10B6A00029E355B1134DB756EB7EABDBC011D8FC87
+:10B6B0007E181C1F4450113612638E7FECD6F0DAD0
+:10B6C0005992ABF8F44F777EAE2740C24294895E20
+:10B6D000E5AC5C4CA1580C0B1EDD57D99D179F4261
+:10B6E000DC60B01F847850AA2B5F1A07EFDB01895A
+:10B6F000DE205F1EE42EC9E28F9D568721931AEC4F
+:10B7000031F6FDEE9C42640713468683A417A62EED
+:10B7100013DCD3F40A09768D183248C1162EF0B620
+:10B72000125C2E5F30DB757891E6B6B679A2838B1A
+:10B73000A388F3382D4A05098DEDE57FC8FDA404E3
+:10B740008067A0A502D37E76BB676390E429134F80
+:10B75000365DDD837ECDBA900723F0DF22ADDD0DAF
+:10B760004C00A8AFB7FC268B162A7123B21EEAAF95
+:10B77000838FFA6C3FE52D6E71E107E1038D6A0F4F
+:10B78000FDAD403EA70EFE9FE5A7BD8A22AFF62F76
+:10B79000D869DADA4909DCA67127BDBF1EC554791C
+:10B7A0006BB67A9BBF3231C754F6280D4224DD5860
+:10B7B00076872DF43E9D243805BC0889BFA728B3A1
+:10B7C0008056E0D80D61EE7E1A3F219A679607DC1D
+:10B7D00016817C15EEF614860B0888C8F82E0863CF
+:10B7E0002C7FA900C8EF5C150A6DF650259E1FA39B
+:10B7F000EAA2616FD41A28CCCD0C62C67973845E3C
+:10B80000147A706B72BD068346459DB003EE41A06D
+:10B810005BB5E46F315FC035AE28DCFBE31F2E86DD
+:10B82000A57F918215B513347177D96F332063ECFE
+:10B830000635D0680AC95B41437915B90598E98C8A
+:10B840009036307B4E79493B984B3EB6419BEDB0EC
+:10B85000DE947025F35C55EF498CC648B5A7E30527
+:10B86000010C5DD0A54A823EA1C180D688462D52EA
+:10B870002A43608F5A91A555FD2F71B5204A30415A
+:10B880009BAA4DF2469082F8C794C91B7D187D97FC
+:10B89000CD6DFEFEDCA707B8B0BCF9E8E93A095C5B
+:10B8A000E3678B3F5B08D910B3E723B1724C67564F
+:10B8B00075151098C5F58CB9F85496630AC85F8D54
+:10B8C000D1A6E97F2ED59F323C05FA4C8919BA24BE
+:10B8D0002E6DE119F877014D19E5F9C896CB84C1B1
+:10B8E0003ACF24181DCA87379C83BABC947317D7E4
+:10B8F0001310FAD691C4AF1113C15AB89751EB1077
+:10B90000D24F7E4DE3CA68B0D7D3F19189EDB84BE1
+:10B91000D3672921A8DFBED5164488712357E6B81E
+:10B92000EDFA14A563E1D1AFB1C420008D6078FEBB
+:10B93000EE654CA874768C93D988D03F0437AE0D51
+:10B940008A2138E3F3AF1221E9EB59CC7E0D8195C2
+:10B95000332A173A00906D1FAD6057DC0269E76B20
+:10B96000EAA5CA78C0EB8C30D3E947DA16B9326160
+:10B970000AF7F317901D29D532860D780C5584A34C
+:10B9800050A22E22DF6D332CB7027AADC7DF6FFBDA
+:10B99000B2D955C7A2DB0102155138436BD71D90B0
+:10B9A000EB38B1AD6915626595B106B6C9E969F0C4
+:10B9B0007EC2B8E4863855A95B25E6D84185F16496
+:10B9C00036FEF1C67A31AA25CB23734419905B9FCA
+:10B9D000F02E85F66509D14D9D81E9F0C5EAF9267D
+:10B9E000FE692077EF425103C076CEE21404477A15
+:10B9F000516DF832097A3FF5301E1324A0FCAC18C3
+:10BA00002A792A1101D3087178CA557BEA0C2C8750
+:10BA1000D01DD4966F22A7863C1B4674B60E559B4C
+:10BA20007B79170A6FFAF798011F510B080E4089AE
+:10BA300025A7A8161ACCF81EE2C721C417B7BB3732
+:10BA40000ADC6B973B720FD5500322D0FD563307AB
+:10BA50006A1C80EB7FC942C561121617D97075CE7A
+:10BA600070E5AC4F6C8BD033B00674C827A6654028
+:10BA70003FB9A6847FD36D11E9FC0F910ECA59EB33
+:10BA800094930F1FAC5DC83F05CA6B67477188353B
+:10BA900087208842F4A2CFDBAE526CE8172B7F9050
+:10BAA000B409E08C8337AF60B13078537EBBF6A326
+:10BAB000B28397FA1DE70C0C8157E22219AC179953
+:10BAC000452D226F62C9FE481899A68566E44B9DF4
+:10BAD000509B3554ADF1D042F00E9374A3C143474F
+:10BAE000E071ECFB79CE7B0BAE1F45DE7FE59A2C37
+:10BAF000BF22ED77FC9A21B21460AA68056E692F07
+:10BB000099AF4AC638C4782094022B657B8C1A4FB3
+:10BB100057D70DA1C8937B5942741AAF9F791D4D19
+:10BB2000E1F433FA773A0292E23FD0BD0E87B29049
+:10BB3000CABB9B9C32DFB49B017461F19C96E2FB13
+:10BB400036342CE046016741DAF929C26C313C6D8C
+:10BB5000256CE5F596EE63719CFCE5475B1164FB93
+:10BB60007B53D2C31F8193A855ADFC9A4033D86B49
+:10BB7000B42E1432B21F2DF90669AE8805046F4544
+:10BB8000E7977B43882B39751AEBB1E7CE8F1222EA
+:10BB90003F012AF1F7F2263EB18AA0C7EFB4203167
+:10BBA000DDE08B47FD3A6C7ED6EF5DF56DE2843FBC
+:10BBB000D1823C43436A8A7FA7491DE7E2822AF487
+:10BBC0007801194D79C16CCD5B9F6B045BDF5674B6
+:10BBD000339F67E939BBA9C32811A3F8BEBF1196EB
+:10BBE0009266E3491D7A150B5173F479AED90F6E45
+:10BBF0003B205FD0B96687D4332A60182E5A61EC97
+:10BC00006F9F0C8BA93511AD17F7CA1FD905E53EFB
+:10BC1000A5D56794E0C7521F9E642F40BB72A199BF
+:10BC2000505D8BD6CF79D498AB651EA4457E8085B8
+:10BC3000E65A4016863C5C3563932879B6CD2AA631
+:10BC4000430B04D3E065E38FFC6CE8CDC20ADC3B18
+:10BC5000226B67423D11D8A4873137E09C9BC9060F
+:10BC6000CCC9B658F2CA56B40EBE76ACD36DCE531C
+:10BC7000391634014C47D83F111E7B7983A63B1BF4
+:10BC80009D7ACBB02C5D07C8951686CF7870E546B7
+:10BC9000654FA3A14FEF429957E2CFC9B617CE9B8C
+:10BCA0005B655ACE0546CFC142EC83DC3ED1BCEE8B
+:10BCB000A5E7E360656315BA6FC4682A135E3A921C
+:10BCC000348E0BEA9A298690112A1CA79EDD0792D2
+:10BCD00059D57903117704448426B6B9A784A39E65
+:10BCE000B6977F068D694E6898C553763C33A2C6D9
+:10BCF000AEE13BEF6346DDFFD3B411F107B8C5B940
+:10BD0000E2AEB5A33EC6289922653EC7FC973F9395
+:10BD100031F25A352E0D77C377ED537874D00CB7C6
+:10BD20007F4AAFA55C4F7E0FA13DE693A18820E836
+:10BD30005E6C1FACC3F3E488BC03C13050F2D57411
+:10BD40008702825E0B3FFE6F35212122CFF5D1089D
+:10BD5000CE7F83361B530D7FAAEAD3E0B78E63599B
+:10BD600050206E129267F7D11E72F8F665158D5B42
+:10BD7000EAEB44D1A4E22420ED078A34C1E720078E
+:10BD80006D21CFDCE133CEB43C98568973C9E440D1
+:10BD9000CF5878937190FCC6280D935FE75214B189
+:10BDA0006626CBAE3784486C4685DE71E8DE306AA5
+:10BDB0007DF0743F6088CFA7ACFAEA7F2F319211F3
+:10BDC00044D5987B95E0CE99AF837E1497306D74FF
+:10BDD000310449C9C35CDDFF64C55C972FCBEC8D92
+:10BDE000382018A86A16F4D6296CC091F725E9AD59
+:10BDF0000DC80967C2B289A1D8249E4B2F3DAF97C9
+:10BE00003528B08FC7ABFC9141A67C7558DCE3AEFA
+:10BE1000ACCBEF09CFA3D08C91C6A235FB0CB25F9F
+:10BE200080B9BC04F35DAE49C36DFB070094248860
+:10BE30003902E99D66205AA0FFECB7C91855D1DA3E
+:10BE4000DC96E652164A29721012CC09E94234DC1B
+:10BE50007E5D96F28513D1A3147ABE67E50FBD22ED
+:10BE6000A0C73361F35D3710F7958D827D0F88EDA4
+:10BE7000EF36594C840DFB115A3F237F8B8E5F3A6E
+:10BE8000BD342DBE704ECC06C5970625B78EBED8E4
+:10BE900008B974E4F82C897D554C376AA18761F2A2
+:10BEA000E28C7798618C060D8D0B606CA480F54553
+:10BEB000B34D68A0199D5809DCFD66D3CBED83E333
+:10BEC000D8F1114718D67F8729FA8E0FDC6FD02959
+:10BED0007237E2FFAC107B3059F784A89175457832
+:10BEE00093E9920B3C4377802B6145499F28E66E8E
+:10BEF0009F1FF5657D73F6E4947B76085AC947EA7F
+:10BF0000D726B1E2A0B4C1C9D6083DF12701AB1FC5
+:10BF1000798268D5CB2B0DAB0AE6C35DA1F954B786
+:10BF2000D8B97A8DF4CB6B3B8350977A18B5A51BA3
+:10BF30000CF0278A53F2A67645135CD5B0B37ACDC0
+:10BF4000B93911D8184A99B495746A02DAD993327A
+:10BF50007E39A7F3B2B929C8FD93A4EAEEB7885396
+:10BF60006C5A20DFAFF92A2C787F1B0C11B1ED8AB7
+:10BF7000BB0C27CAFED6D8BE1E1514D5F147B92D65
+:10BF8000F4002A5830F2EB2F57F54B408DA975A2DB
+:10BF9000856A327EA7EF602DA9369161E9719E977F
+:10BFA000D4454AB8161A9D55735DE4CD096666BF3F
+:10BFB000390DADA20815ABDD30D2F048DB2F3A2F9A
+:10BFC0000966646F85957D454A61352BF77029D5E3
+:10BFD0009E99A2F7EC46F0D8F3282F02E057862A64
+:10BFE000C862E1BA4E63A3216C3E41704CB0BC4FB5
+:10BFF00095F01F7D196FE69446BE859C9235765765
+:10C00000D6DD6CE7A36ACBFE698EF63B369FDF6F09
+:10C010000D8CB9C82CE534EB45D6FC2BEEA4563F6D
+:10C02000866144DAE3ED0EABFF520D8C9568F87F24
+:10C030007993EBA89F4D9E2D9A516940B5F443BD6D
+:10C0400098A72651D48AB4798182E9843D6EA6CA24
+:10C05000E26398B41BE9ADE4BD3A8BCA530059C002
+:10C06000076DFE3C525D74D3BB9EE514FD86C8216E
+:10C070007DBC1278B839F8262AC9DFA2E3990429D1
+:10C08000A8C5F6D0ED77F68102525AB1381787F17C
+:10C090009D5333B4BF65EC8E68A96B9610973471CD
+:10C0A000DB497B99C7D31F3799CE153A4257575072
+:10C0B00034C5167433B2FC2EC27E8F4240095874C8
+:10C0C000DF0EF86BB81EF01B38984821BAE372C334
+:10C0D000C4C394AAF1D3178EB1AD374C3F1C6D2663
+:10C0E0003B07D5FC68F1D42EE1C55D235B46EB062A
+:10C0F0006652B902B546F3AF19BF995702BAAA47BB
+:10C1000003DCF29B3BD82D50043D87657E11C8BBF4
+:10C11000DEDFC68AA3AFA72916A7BF04DFC54FF588
+:10C12000905E9CD486F56525DE052B6A5E1D8DB478
+:10C13000B713EAE952FD7711ADB3BF55E580309CE6
+:10C14000407B7746AFBE206DED6E752A977BFF0A68
+:10C1500094C6ABC9C9F25B28C4D69EB2A3927457E9
+:10C160009ADD1DA6D324DC07F40DA4BC364138BEED
+:10C17000C97950E9BB0A00C28FFC2584D533D8BEEB
+:10C180009B883CB30853DC8E3FADE1D4ACE26599AB
+:10C190003D311768D9C9729B50482054F010200DCA
+:10C1A000F3770D4A118255448355CE2C718E8EF54E
+:10C1B0005131F9E041872AEEC4EDD3C685567BF5AF
+:10C1C0000253B249492FB1F9402CE87CF34D2ED7E8
+:10C1D0006DC4A8F3104C502566301DBA62A7333EDB
+:10C1E000BF39683C17E908D82489AD3996ABBE9FA2
+:10C1F000C8F637029089918811EF275C234527FF05
+:10C20000CCAAD7131E96ED77E067CE24EF24FCBFAF
+:10C21000AF47B3E9BF60D3D7F6DCFA78EAC56CAABA
+:10C2200056A71890D1890AE83C446EA22DCC1687F7
+:10C23000894984796AE9E2AFCF7AE3048A1FBCD4E2
+:10C240007862F64BBFADDD12D0B7F072A304AAA599
+:10C2500037344FBC212F2ADC33146672CDEC46DF15
+:10C2600087FB508ABF066752F8F6A8324AC0B57DF0
+:10C270002EFC324DC85640C6182CDCBDD911DFD873
+:10C28000F0691678006D4FBE7C9305AA3B3A4C438B
+:10C29000F2FCD9CD5E697ABC220290687328697479
+:10C2A000F13146C76F27EA7EB34FC65C3A49E136A3
+:10C2B000CCA9261CE616482F5EE557D22C8861557E
+:10C2C000AF538CF51396BF0A6443B6F34C7F0E1E32
+:10C2D000D6D7803CFD42621C11F786EDC92848C8BC
+:10C2E000E4B569255848DF8C0D8AC5F9A2BEAB0BB1
+:10C2F000976933F22B5111A6F66D812ED560168603
+:10C3000097FB1F039F4BB242B97712B192130CD522
+:10C31000B7A18EA15CC202496D81012A7673F446F1
+:10C32000AA0ED6EFE5F6268122DE4BFEA35040D6BC
+:10C330006DC113B951F290B91C29A9DF43E3E16043
+:10C340004277DEBCF8BC65A1FBB95312C2FD90EA8E
+:10C35000AA28892DE2A82221E9E578E9C451642BB5
+:10C360001137B69B486A0BCF9401E132CBB693D418
+:10C37000685A95C0C0EAB331627EC731F6CAB3E7E6
+:10C3800094C41127C9C91CF62D580CC394D0A0A67B
+:10C390002FE9A71914AD23504796651F663467042B
+:10C3A00043793BB30A318162738F9DA736B17DD04B
+:10C3B000A69657C02D21D9F21C1ABF31EBA6F23533
+:10C3C000E28D1281049E01E586DD593FE126047766
+:10C3D00036E00EB079C326AF4160776BE351E46776
+:10C3E00070865068CE14B09E2C4A87517F43FF8AD6
+:10C3F0008CB7249F08A8D3029B3CAF59AB9CD3C6F3
+:10C40000DE22ABC1BB040A29E75A10207BA14648B3
+:10C41000F620FA1EA1E831F5D4FE0435FCAED32C8B
+:10C42000EC2EDC937763078E80AC40D79AA8829875
+:10C4300053C55E39F00DC30C1529D90DD363954C46
+:10C4400054D4C874FE46506B6CF1F938E86436C5B4
+:10C450004CF11E00C2493EE6535192A0CB4BC2FFA5
+:10C46000BDE8EEAF3A55D97E72D965C0FCB0808484
+:10C47000DB58BAE111F457253582638232BB8DA5B2
+:10C480008389C0AFA4DD030649296D7DD867147C7C
+:10C49000E44D63FEB061269CD26477590BB6479693
+:10C4A000CD0562D0EA6637553A9C613393CDFC5492
+:10C4B00011F5ED11E4692EE378C97C322289B606C4
+:10C4C0003C79CADC3561E4C763E8313FBB9EF3D6F3
+:10C4D00096D1F8C05F8D5C2C576744ADE0622B2E7F
+:10C4E000ED13F63F9CE7BAED55DA7BA6461952B03C
+:10C4F000F6F76409B0C26A8D6043B915D56A2A5847
+:10C50000B6EF296AF3995378ECDE5EA7002D434914
+:10C51000FED7474F4EF22A6A7F145B93E490F37282
+:10C520008324673E4C17E28C90D723509FC57AE74F
+:10C53000F40B588085D7C1A1AFFEDDE5EA137291F7
+:10C54000F17A85468E70E792F1F001F84DFAB05617
+:10C550009E905C0C4F1FED487A4EEF93465DFD01B7
+:10C56000171AA0A3FB576D192FDDDD79A834DA98CF
+:10C570008AF76AEF05FE20D71BB0AB343607A64416
+:10C580008DF568DB18EA62DE3A4ACB97BCD1C26609
+:10C5900066791929FF722B7C4E8E1F7147E980DD69
+:10C5A000C78894883D96B8E912DB969CA230195E44
+:10C5B000491A485A9DFC4AAAB11F2CA03892160F5E
+:10C5C000E619BA2793214D492218364F879248E33E
+:10C5D0002F52F8BFE10FB3784543A826E3A2B95D17
+:10C5E00062A5211D2BAC661BFE028D2C5B7931B040
+:10C5F0000305D253B02B8B44F0341C1D5C3FDAF59D
+:10C60000E7776C8AB49E7FC5E0598A98599C995FF8
+:10C61000C4CF6CFEF76D345EE5E1FE7DA9A001D8C4
+:10C620004E9EF74C31C17AC8CE168E052EFDC052F3
+:10C63000D9376E80E327DDEF5CFAEAE1F2A2567D9E
+:10C640001F99E71C71283DB7D3E00B63042DB0910F
+:10C650006E9D378E740FE8733F5921D547C61C066F
+:10C660005FC8611D36A6D689E942832319805D36ED
+:10C6700090994DC2CCC4AD2BD60F80B87130CAF59D
+:10C6800035F21172478E07C65589644389BB00266F
+:10C69000265E14C6E3849DD90D3972DA4036C3CBC9
+:10C6A00010EB5A90E1FF0E9DF5FB14ABB6C7420CA0
+:10C6B0003D29898060CBC50E9472CE5D95677C66FE
+:10C6C000472D06A77A42BD55CEE3FBF054A8542768
+:10C6D00086A0A75971EFF1DDB66DD91D97EE889050
+:10C6E00060B8CEB65C28F57453098F490B6CE62A06
+:10C6F00067D914519105FF310FC7018FD955278193
+:10C70000D51D8B7BE20F0B7246F76150A648D03FD8
+:10C71000124CFDC529789E8FCBB4E711C150E37848
+:10C7200009FD8CB744ADA6B9D1EA89BC9B33B1C130
+:10C730004AB3A6DE30D139B089533489C1943B88DD
+:10C7400019FB0D34646E9FF731EEC20581EE29B8F6
+:10C75000352498BCCE4F9B98FA9DAB7CA12C1D4EE6
+:10C7600095A90B7CBD56451AD0607C7449E6CF3044
+:10C770000907AABCC94686210C7CAC8A1162251027
+:10C78000BD92FE0BBF5B360962E791BE938719AC81
+:10C79000803679D33C7B6D4BFF1EE72324722E67D6
+:10C7A0003CF6F3A8A6B1A5924F345015C09271790A
+:10C7B00018598E71031798EE2227791AD93E0EEB7D
+:10C7C0008185D452C14E70C7203B7F305BC51ECEE1
+:10C7D000AA3FFAFDE72F7AACB817D257D0E85E8CA3
+:10C7E0004C78751628ACDC6DBE556B22519DC27419
+:10C7F00047FB34C0F63FB6047E4A1EA3D0DBF5EEFD
+:10C8000021CE57F3396AB34DFA2698085C9126BCBD
+:10C81000CE9FC908EE10C1F2B491042083E857C23C
+:10C82000E7CB6BDB717BFF90C43BE0C653BA44148B
+:10C830007AC27BE52DCA9176A8DA977AE293A5347D
+:10C8400001D986B4B8D7736FCE9947AE816E47567B
+:10C85000EB3324DDAFE1A5848314EA601C7F5E52D4
+:10C860008606E7FFC06D0C4C3111762DD54DC708FB
+:10C870002D604088296B5D77C4DBE6C604B55EEBAE
+:10C88000FCB46B0F8FF5D82A4FD37C36C6AFB2AA53
+:10C89000AC90B4CF728C144429D41F64D7609BB47D
+:10C8A0004379AB46E1115779AD8A6BC9D22D2D97EB
+:10C8B000BC9764657FABC02D2F88D475E4041675D2
+:10C8C000CC81BAE762C15BFEE15C127274AABBAABA
+:10C8D0009753FD57CA210D4843E89201C4A345A3CD
+:10C8E00039E8B1A29F490820C5476ACD662121A534
+:10C8F000F5926673504DB46CF5FC7A62701F46C8B1
+:10C9000040350B01BBDFC99740BD2BE42A3FBB4339
+:10C91000A24890160D5175E3B1910581A7F0E6602C
+:10C920006FB8B7A30E0AC77E00F98BF0C187D8B2E3
+:10C9300056D5F45CF8CF84F39323584C488F123DBE
+:10C9400047EDD66EC014318270179AF7CFD90577AC
+:10C9500005B1D36592FCD71A541F8A02084539766F
+:10C96000E6D7B14A08855F60063AEB9E542DC108B0
+:10C97000D64265503784672732427E256CFBAB4731
+:10C98000E2E5CD089B4B311C3B0DE4E079C0438EC2
+:10C99000A2636542B8BDDC5E74C0B425CB2A5C548A
+:10C9A000317E60ED1E32EDADCDCCC57A7DE7B28A29
+:10C9B000189EA6D7AC4AA995DBDF5ADF37B9740EAB
+:10C9C000ED49D497D1B0685478A848DD0F586C630E
+:10C9D000D36888E2906E5E79E9145E9F4F0CA7AC35
+:10C9E0005E3BEBF0B1504EF86341A3938C06B0D49C
+:10C9F0002E6D2E0FD8DEEE1B30DCB8FF5E5DCAF860
+:10CA0000826031CD17719FAB02ADFDA0FE0B4CA52E
+:10CA1000E921F4DB0538E6B0075B1F75A2A6C12F3C
+:10CA2000A3881E9A93198BF6D4C05895235560CDD0
+:10CA3000AD9C8DB31772D46763F17BF950AA4A425B
+:10CA4000A4579B37117B86DB259E97E2DC5B9E65B6
+:10CA5000408126B1345DF912B32B93243994E2A3BB
+:10CA60000A8D0532005B68A13C1C83CCDD2789BAA6
+:10CA70009D9E32C8CA425FCAEC8494A242257BAF15
+:10CA8000FA6DEC70AA039EF412B6F44909C1FBF7E3
+:10CA9000BDFA812DBD77F0C0A2DB163D31A9D032A1
+:10CAA000DA80AE3BB37FEFAFBA585EE10C7E1C7309
+:10CAB000E5594BFAB1CD38623C69473DAC3D25851F
+:10CAC000F4802EC6DAA948873B1AE3EAE95DB28909
+:10CAD00097BF110EE38025013B19555A7750F5D8C1
+:10CAE000E326C40D1D1DE3811E42EF1508BAFDCDDE
+:10CAF000603F99D4C87980E7DB9905FC5A141D552D
+:10CB0000F9B3D7CE2E7D9861A8DDFC7068E83A3E77
+:10CB10005497CBFC523D2B05383F9DCFD164748B8D
+:10CB2000241083BF326CEDD42125085B316EC52CF7
+:10CB3000E18EE944B5AC2B24B694AC50C28601C258
+:10CB40005D580EF5DFF3EFF017A8D958C048000C78
+:10CB5000656F0CD6C1C805685CAACC7E8DE73259DA
+:10CB6000C3756BE53F7895BAD5A7A95321F2514C0F
+:10CB7000B013A11B9B98CBDAFBA359E00501000A77
+:10CB80002735DAB6D0FB62FF912710F2281524CBA7
+:10CB900017B862F28A364752E55ABF03D40C6122B5
+:10CBA0004465DEC20152A63556967165E9EAF51A6A
+:10CBB000252B186C578BD79E0E64857D816CE2A265
+:10CBC000E5501731B7F90E3877C0D2982B2C9EBCA0
+:10CBD000052713BD92B1E5D197B1C0A335226E9858
+:10CBE0001280020126399D0173B81B739C307011AD
+:10CBF000EF7D0B1AF1DA8C7FF00BCBF21CA6526E94
+:10CC00004420DC89149EFB79CB74661AE0FB04E6B1
+:10CC1000B618D235D5B409BFAC6140337CCA1D41CA
+:10CC2000F2B9B24D9B360045657ABD90145864B395
+:10CC3000879AC94A9D6350E87D12B90A04380CD618
+:10CC4000A29E60FC7D443A47805AF9B2452009F320
+:10CC50002B15A249EE0912C84B7BBEEB0EA1729FA9
+:10CC6000A4F302435745CBC94741C2CE6D9C79CE50
+:10CC700014A2C3677C6FC4B9E7EAAEEF934569516C
+:10CC800058C424DBE6785482C9694B170078DB303E
+:10CC90006A4F5ABE9EC4C1048B3E3B09380D8B0CB3
+:10CCA00055C38772A7958318E0FDE60A2378130B16
+:10CCB0000627753603AA343A52048C89C0A8200F7F
+:10CCC000D5F0CFD6AB09F774FC51620DA2A93CD0C8
+:10CCD000C4988D6034C95696EA33AA5C513FA37557
+:10CCE00057A27025DF70435A58BD2974D4703F7C19
+:10CCF000BB58FFC9A2A85B578789354CA132AD0349
+:10CD0000CC7D40FF8F35A9D7090E32AA1B80308D0C
+:10CD10000A6D18A6EBDD756CB747BDA4F5207CA0A5
+:10CD200011685F47C7C10D407B3666F13442CEC102
+:10CD3000327321020362A3C3CABC22521A6DD626E3
+:10CD40000BABE2F3143F766FE1C35F2A2FE5834616
+:10CD5000A23B708F4E19E11068E9A1F698BDF66C00
+:10CD6000C69B673BAD901B9EF648DC0D1CFBFA1F73
+:10CD700027A78AF240DB05AAABBF9F615FBF548C37
+:10CD800048AF8B7972C55863BB44D813644252FED6
+:10CD900092764C9C3F84D7FA6CD4F812AE5396A589
+:10CDA000A41A98A6BA18818C0DFFD73C054A194AD7
+:10CDB0006E384C760EB86F2D61A06E89D64240C990
+:10CDC000D9A0D7F8150A630C130B4AD165343C4B34
+:10CDD000D197A2D3668DB84CC01D53D7581E8E591B
+:10CDE000DFCD19472725E0C5F7B1D3052543CBE6AD
+:10CDF0001D424311220308CBE4C58B30AC567D4461
+:10CE00004C0495FB3ACB94A754C29A9E693C90700F
+:10CE1000C9D16D26535F11673026A88FCECC3E1541
+:10CE20007A0AD1B1B7B85F55D2F23F706FB459E208
+:10CE3000DE595BC36B4DC2DE4B18E330A97C163064
+:10CE4000A425ABAF5315CFFEEF4E01A7A451298FF8
+:10CE5000B153D39D7CB3FB2F3EBF6EAD8C7F88A0BA
+:10CE60006169725ECD5AA326B363AD271E0E0DD441
+:10CE70004CF129E07F1B7DFD2E3A0EBF9C77A3B2BB
+:10CE8000237C57671D8E0E132B5D87EA1EB776B382
+:10CE90004190112B5EB3DF56E852CFDAE91B76F0F2
+:10CEA000101A7D2595F275D92E3B441F0D1C852146
+:10CEB000A61ED05D7E091498704E66B2D59D88126C
+:10CEC0006B79A848ACE84ABBAF728CF5B9E8E7804B
+:10CED00076E8262FD15AB51285B6591792BB72D271
+:10CEE000EC9FD1915B4FCA1486D20E41C45CFC4BBF
+:10CEF00050FAF3A0FBF374D5F11BE3A845890C8F1E
+:10CF000079F0BF30EFE3ABA4F5DB0BB55604EE9C34
+:10CF1000BFBEB95ED0E27DD230BFA943EA91B2E292
+:10CF20007B0DBF5663FEADB501724C94E8EC302E1C
+:10CF3000FDC5C81A2EA590F912DB517B506903FE7E
+:10CF4000801BBB1CA6957E10EAB6E6A68B3D0E5C48
+:10CF5000FB8C21583AA936915269F91C3DA0BD902D
+:10CF6000DB8883E17EF6432FEC55FCC5F6D901142E
+:10CF7000ACFFF6CF9A356F51F3FBE5A84BCE6E1D93
+:10CF8000185D846D06EB0CD357513F6C7E29405DD4
+:10CF90005C2AF39E8051C92989BA6BAA90D0309E31
+:10CFA0002A078586C7C998E8D2574FE830893502E5
+:10CFB000C1C838DE00B240367C4E69BDD9F0228946
+:10CFC000C4A64B03F4B85825973C85CED80CEDAFDA
+:10CFD000363E1904880B38B9663D8C41D9D0903063
+:10CFE0006C02902381555E4E0833292879D558ACC0
+:10CFF0000A9AB0735F3BDFD222163F1362D96E38B4
+:10D00000CB5BF6EB3D49369B071C495E6AF6B34A9B
+:10D01000768B9DA702DD5097FE73B13768ADE9BEF0
+:10D02000DC21957326F788DCFBD1610131E0350501
+:10D03000E060D5250C9B239D3979D7A1E30620C458
+:10D0400067749169A278C891CC1D5EF50B04E35812
+:10D05000ADA3E77060695B9BED156BD3B9C9D7DDF4
+:10D060004659809DA37CA3917DAFF12F43C4956A5F
+:10D07000A79777002F49EACCDFC907D1B0AAEEC441
+:10D080004BD7CA06A097D2DCAEF7F91FE4D4A4AD03
+:10D09000D9F61278E3F56015C1197291955A049486
+:10D0A000A1D290EB6DB29C3D7044525FD6503B7460
+:10D0B000DEF246E459534D00B3D872D4E1780F4103
+:10D0C00036B2C895C549ABE60E2F9C63F26A79F07B
+:10D0D00013612275A5B392FA46746694277739BB1B
+:10D0E000F5E4285AC23CF7F787173FC3DAEF680127
+:10D0F0008FA32ED5A34425AE3807C34AC36277AFAA
+:10D1000088E80F14C5F8545B00125C565FAB5B6790
+:10D110007130911EC7839A517F09D5421B65F7CBA9
+:10D1200088DBEF844BF637BE50C8A9E4C3D4B7BF41
+:10D13000B58E2C30FA7269841EDFF4D7CDABC8D31C
+:10D140001C41C78F3AF0ECC52091A05C2123A17B44
+:10D15000ACFAE4BA184521162D40778C9DBB77A414
+:10D1600062515CD2BB6ED0A09BA26D0D774CF75E76
+:10D1700076307687B0F8E6843F8CE2BA6F66A60117
+:10D18000A9172198C7DDA14B1A2E004D9C576F9B04
+:10D190007D0510D14FD2A45F8EAAE09F4E3147C0CB
+:10D1A000BA5887BC7A859F9592DA2E99FEFC6F9AC1
+:10D1B000F59D65DE7C58E711763D853E2DB7B10AB9
+:10D1C000C891DE9A7B0207CF84A760A2FDE5CCE37D
+:10D1D0006896CBCC315BCD22D6BF97D229030DC246
+:10D1E000A6D7C7B65A60AC4316902A8A8DC8917CE0
+:10D1F0005CEB92C001511A0EBEC0DAFAF58A5AE110
+:10D20000A4F79BA4297CE49616A03D56F50316DBF3
+:10D210003F40CD4F9A0CB4DB8D5FCEF0ECA468702C
+:10D220006599DA1327BEC0B9FD987FDCC8DC1712F8
+:10D23000D1966C37B63ABDD65F0B6A44A1CD95D076
+:10D24000DA967F80DD1E4EECF23ADBADFFA4DCB94E
+:10D2500092E780611D4F75656022DE08B862F6288E
+:10D26000BC51778347CC227D68F6116CEF4B10A937
+:10D2700027E6DAAE234C5D9B2C0AFD3DA37EABC2B4
+:10D28000C3072AA60FCF1B13E4DEC2F9C7651FFC34
+:10D29000FF37B894B2EDCD32D59BB19EA62E1AEBD6
+:10D2A000F910C22F4D72DE016B851A00350DEBE0CF
+:10D2B00088E6E0B01F5FECACB068BB87B0E171D925
+:10D2C00093976D663E4D2A79ADC3B13B29D1AB7EB4
+:10D2D0007B17A8417EFDD1E853E85258B3755F250E
+:10D2E000F34EC2EB6DA1DE1A545AB1C7A519224DF7
+:10D2F000D8A5319FBACD2F2218D913867EB26CBB28
+:10D3000099E46D90BD9332243340E4986817DBA014
+:10D31000E94A0ED549216726635148E6D2F876A935
+:10D320004912EBEC7FD9801A2D5E9D2D5E4042DACA
+:10D33000CB2070C48B1E78D691CCD0BA28DC62F298
+:10D340006A0BAF33539139064E15446C2DCC5B9B61
+:10D3500029584DEE1E2146B7D3CEEFEF48A5A2D5F2
+:10D36000D9C4C8744BDC22951F15D0FC64AD19DEFE
+:10D37000CA1762099F51B09A8B6600200A68B6B03E
+:10D3800026301837026255392978341CA8256A4698
+:10D3900032F0F69AEA791035B4027A0F1017A23AF1
+:10D3A000EF630443E1686ED39327A0275413AF4182
+:10D3B00029DC5CAFCCD218857C129D5E85EFE6F649
+:10D3C00002EC488A88D4436BE91570554FD8374A28
+:10D3D00037B687A56956DB263958934C1D56C59735
+:10D3E000FFA86A2077DB41E070C82730F6AAE9B2CF
+:10D3F000B8039313F6B56873C22453AB3025C370DA
+:10D4000027B3E579E6C8114DA7BDB0A0D3C92DBD9E
+:10D4100050862470D9D4DF50402CDAFF07B811DAD7
+:10D42000986BB87FC12C8D32688F3D79287A48720D
+:10D4300023D15DD06750F94BE886A75926617AD988
+:10D44000C43A9694B9A312722A10470D97E467FD67
+:10D450006860B191B3D0E8A43DEF8220C7ED17BB5F
+:10D46000189D475F3AF8ECEF7931830F5A25CE6A61
+:10D4700035668BB43E3D101EED309DF23C261CB847
+:10D4800057D2DB30E31F6AB4483D2CC2A28944C89E
+:10D4900083089799FB3B33AA6A8A872402F3FC5BD3
+:10D4A0001986D00495880DD2590C8EC6FC3EECEE40
+:10D4B000203FF7E139DC03ECFBA13C8B9AAA6C6DB1
+:10D4C00000B4228C89A19F162FA87A8106B4D8D3E4
+:10D4D000F2FBC2A553D2C15FBA187098B995A00EDD
+:10D4E0002D3C906CDA9E7F985B10DCAF92DD37D3D9
+:10D4F0008EA53E4642525B914D18EFA448EC63EC7A
+:10D500005B91562EA631B85CC0EEF60F0EB3E970F3
+:10D5100066D266883C0FE94B570216717E247AF278
+:10D5200035A01F4BE693462DD8E6AF94EFD54A5968
+:10D530009ACE6C14B85811A2C06EFB3C715F89F290
+:10D5400079EE5E0C1E4F650615F1B9BA477B6D701A
+:10D55000FFC5F78F443F290C4E13F7BFE59B63EBE4
+:10D56000DBA82C45316BA33FEAC88E48B1D9DE0F4A
+:10D57000186D3EA5296DFB4F9011AE3261648CBFD2
+:10D580003FBDC864E290B234456F6379FB1DA02FA4
+:10D5900062F5946C11E08F8F421FAD26D19F01750B
+:10D5A0007133D9DC27ED90353EF6E40496C0E3BE36
+:10D5B000C7A513B367D4729D0C8437578DC19534BA
+:10D5C0006F0BBFEF2A1DAE53154A69F9AFBE057444
+:10D5D0009ACCE93B4407B3D3C0A041F8B15BB38B0D
+:10D5E000E7876A9654A63C604CB59D3DB310ED614B
+:10D5F000175D712DBCFE6F80BCF3308E86F129A5BE
+:10D60000FDEA8458299493BC6D1787E6F15B2E40A0
+:10D610004FE233A13C94651B197FF43032D4F6E518
+:10D620009B9C38B42132E28B8EDA5ACFCF7A4341B9
+:10D630001078B33D966E7E594B8268C5C28BAB9C09
+:10D6400074E66C0AE72A0C864F7DE48880150D3B52
+:10D65000C33C6EFD6E79B1F2C80FAB6F4C258813D9
+:10D66000CEA8A223D194ABF3F4B00A8DE059324D89
+:10D670006175196D8A743B131B09D11B1568EEE99E
+:10D68000E511B92AAEF729041C4F917B5C918165A5
+:10D69000BF96A8D0FED8B013877DF807D9DFFEA3C8
+:10D6A000FB805A1763F58F56AB180009C066818658
+:10D6B000BD4C0C8A542B93E514C8F13FAAAD12F16E
+:10D6C0001178BAAECBBED5E2383FBA336750D96CC9
+:10D6D00085A6AAA71C03208C6A3FBEF23E734E4C5F
+:10D6E00022734D3DD85F502BB74D1590020B8938F2
+:10D6F000BF8EF1D8DF9F7D4CE69636225CA4E10A0E
+:10D7000095F467A75BE3D4443CA58C5CA1AFC7D07C
+:10D7100017D95804B04AEE551DDA5C47770DA5A11C
+:10D7200041BA6E7A6A25ECEA909052231377BF7063
+:10D7300086031F60F16D7988CB7B89E61D85BE135A
+:10D74000084C2B9C0DD8B71B31C99C52E18E92F529
+:10D75000E59A11EB482E4343404435D2F88317D95C
+:10D7600074CD6A927D9AC4A08586208675004B4B45
+:10D77000030A6386BC81CBDBE426CB9D913E357CDE
+:10D78000EB1C461E77B6BDD42859D86CB4ACE6DB8A
+:10D79000F200A7C5CBF99D829C5684E91A7E91A818
+:10D7A00040C11327445D742C5324F284A31FBADABA
+:10D7B000D8F990972019BA1452AE22D97C950F9AB5
+:10D7C00022DED72BF7F97032C6FA1DBBE5B1ED05A5
+:10D7D00086628DC25F2943DB4ED941B876C1459937
+:10D7E0004E3E74F822E2731A2D20DCBEC154DB4891
+:10D7F00082CAD91D30403337953C26F8DD3E88611A
+:10D800003DAA8A2F003785BCA8F4B5AD1901F52CC7
+:10D81000ED59F7A522EFFBF03D23A7DD0EEA44E327
+:10D82000044E6B9602285C2D0A186086BC1EE4E24A
+:10D83000FEC93C71F9CEFC1E7C3C0B8673F77A0F57
+:10D840002C56D35441ED1BF217AC2D20C7E882476C
+:10D8500093637D95AC64F1BC66E1D26BC6DBE2E21A
+:10D86000C616CFC2E0F6C78BBB98B7CE722AE16866
+:10D87000B5A5B5085EA20133D6E624096F5A5465F2
+:10D88000196A13D34B81C93E61C65BB216C48807BF
+:10D89000221D181B67A73369BA4EAA29D90FD8CB06
+:10D8A00065955CD83A3F14EC48AF039DADB1B07FAD
+:10D8B0007CBC1C5A4BF394F19570E589425F3FD4D0
+:10D8C000FC90F0D7042591740EBDB719FAE907A7AB
+:10D8D0008FAAEE66068F85DC9A9DEC8E6A92906B1D
+:10D8E000FBDFD784480A1C06499DF4EE698CCB9473
+:10D8F000319A392A7E450F5D570183CA2FF7E1CB54
+:10D90000477C7337A23DF895DDF0FBD8300F1E0041
+:10D910009AB2F1F27A703B886402FC494B4E401E89
+:10D92000B5FD38C8B3808840B9CBF8C9CBD9DD9FE5
+:10D93000CF729D1A9562927FC18C1C03E2097D6FA4
+:10D940009836C3F64E084CFD64645E523C4BE45579
+:10D950003078F592149F95F3543D823CC507568E5E
+:10D960000094E99640DAF0A58884FFF28C483701EC
+:10D9700099839E916AB84E79A00163B4DBF4B04DEF
+:10D9800013B0381877990D4EBDF8F746D96B3D5353
+:10D99000415FE733DB957ACC0C6E7E324658E21756
+:10D9A000EC22703F917918F0EC95385E16077CAD4B
+:10D9B0009A2D048FE163E65F4476B24EA669C849AA
+:10D9C000B6E6F20498E3212FA4A77E200234ED915D
+:10D9D000335BADABB3FB5F698C36195B2AEF9FDF1E
+:10D9E000CB5AED49A67FB27E3B1ABECE00EE26642E
+:10D9F000782084E56ED3242545E2F4CB4120D0DAAB
+:10DA0000EB28F7D5282A25BD6F88F649689C0CA914
+:10DA1000CEDB1FFA5A2360E31E2201148C2482807D
+:10DA20004D6C15AFBA178A6EA75C1346E528E1AEB8
+:10DA30002B60F8B0BD0EA0ADEB592B7C677B268325
+:10DA4000730180E182DECDE22EB6C835367EBEFAA5
+:10DA5000FC96E70D1ED1EF23A31012F3B9933E52AB
+:10DA6000346B9C118FF888908A1DFB44EEB4F9B199
+:10DA70007F9534CDF520E12DB106E376D73D96C7ED
+:10DA8000AAA799C2DA1391303F46CACD4AEB6F5F1D
+:10DA900022E854F7B5426D88F9F9119013CE8F7AC8
+:10DAA000B7BA50D45A7E10F4DC87BD21B09E6F7196
+:10DAB000F5BB4EB8E95BA021D494FD8840D6E8853B
+:10DAC00015F9A98C3E09A9B1BEBA833DCCBFED2C96
+:10DAD000338767752526F3950351C43F6B5964E975
+:10DAE0009367E1B78C3BE77075CE584A0B05A0FAF7
+:10DAF0001D7E095CD51459677EB23D7BC99F6D3F81
+:10DB00006AB9E57E28ABC2AA5FC2B38802DBDA44F9
+:10DB1000B5C32DEB6F844DB20DA3EFA89D7F31B53A
+:10DB200074125BDC5A9F4C81A0BC5A0A333A1746E8
+:10DB3000B587C3F4924CFAE2C45BBFF23AB653081D
+:10DB4000E559F1F087FA1C6C4996477E5B39432C06
+:10DB5000471CCA83559D6BB6FC25046D57B90ADF77
+:10DB60001C173555ABA034C54F6125B6443AAC8D72
+:10DB7000DB56F38F9F90591DB0FE0B3F77E4A1F465
+:10DB8000059E7A4B51A4935D88C0A08E88F4B9BCE1
+:10DB90007A36A7D0F1D2E689D00A5F1DC49D9A6F6C
+:10DBA000D913CE26CB889F0C3E181C5F4777CCE359
+:10DBB000A77584677E7034FEE74503D153BCEB7CC8
+:10DBC00013F9F72DD5C24F33DB260EA322ECD1ABD0
+:10DBD00040067393DB91FEF1B5A08BB929885D8671
+:10DBE00066CADA4D4875B0FF43B2E105751BE325FF
+:10DBF00049064B1F81425B2E31E2D2383E5EA6A31E
+:10DC000041C9FF92D3DB175A2C5B519281A40304C4
+:10DC1000F205DB02A525FED3924CC861422A8B0D8A
+:10DC20005E60B0E39EFA73C0E094FC35884E69F9FB
+:10DC3000FC01B1B2480ED4B82296156E3D58683F2B
+:10DC400001948A074F92EA20D62260B6EAC97C1F67
+:10DC5000D0EDA9D587B08F76901E17829D3413C260
+:10DC6000CF8DE74E1D304F43B7DCE4B9C2D5F8B3D2
+:10DC7000355324D045634ACE318DF59FBDABF53F7A
+:10DC8000066763663FA16A67C9C6B92F48DC14C43A
+:10DC9000EEDA6621B974738B5AD83822043444C33F
+:10DCA00059F9A0484AD7D7F84D4A60AECF9A98089C
+:10DCB00094929CD334F4134355DA2576431E7EABFD
+:10DCC0006F92BBE67AE0643275EDC5FC2A00C1B5FF
+:10DCD0000C5598D667EB47BB504151C55013675D53
+:10DCE000770216F14CF29BB25CD9F74A7228D7A49E
+:10DCF0002435EA9858EC1C5811B29ED90AE010B6A7
+:10DD00000650B90955B1F73DEF0426C473D2414618
+:10DD1000F8D0A97917489428912EF4CB6D161E30AF
+:10DD200048B77C3739AEC6AE96DA3FC76C8DA5D002
+:10DD3000B6C633D1E34EBF137BF1E7FABEEC66699A
+:10DD40002A921FA92E6EE45356794B67CBF4018BB0
+:10DD5000FDD16CE500B86A7B44268371985465A4B4
+:10DD6000B3500B35C04EA2AA184686317ADFC106E1
+:10DD7000D2F8A04B4F62BB7454233F4D1DF7D6FC25
+:10DD8000A31F8658169602D2ABF069B4CB50C727B2
+:10DD90007F08FD833361905B8E510F859228F18B54
+:10DDA000A7A45A28C4C97BDD979758FD6AFDA5F939
+:10DDB000DA37D09067278CADFD12C1F1CD68475797
+:10DDC0009C567C7F6B9A3AFA7077E2DBFF491D6ABA
+:10DDD00043958008174562834417673F94C4A9336D
+:10DDE000F260AC0144C45415985980E0F8BC4CE290
+:10DDF000E11B690F09D4DBFF40D730007A6093D272
+:10DE0000CF396011742A3DBC595CBAA1BE207CADEB
+:10DE100065D2E3A6AD36C5E8F90779C18A3AE2587A
+:10DE2000204DCA82CAEEA95660D7592FED08C37596
+:10DE30000B9E0C7348ED2F3359FBE0BD7D84625976
+:10DE40008501A3A428B1CCB740625C275839AE6DD8
+:10DE50004DB2A643C2178E34E1C8DA5FB8853740A9
+:10DE600066FB8D2D6063B365BBB588C49386D41BF8
+:10DE7000F220C5A37D722397CE495A49FC62A9E0DE
+:10DE800037886029CFF391E18CE181ECB6023BCC7D
+:10DE900050338BA6CFD3229AC74F93455C6F1D0F8B
+:10DEA0002320B5946967F6FAD9470ABBF7F474AF33
+:10DEB000C4CCCDEB3ECD46A49631CC9550297FE124
+:10DEC0002AD79E43F42093416DDD2BC43A4E9B929A
+:10DED0001CA6BDB6F83058FA483C4AFDADC0379A8A
+:10DEE0002FDF4B9A09D20730FA5112DC869940D0C5
+:10DEF0006A22113590FE16E0C0930D1BFD71E3F20E
+:10DF0000D11DFB25CE2E5692778001E89E3F0AA6B2
+:10DF1000637AEE475FB9DD1C0F04F0D11FA28A4F70
+:10DF2000A52E297007EEBA02FA5A1D1EC3BE18A804
+:10DF30004165096ACD9A5AA17A42F0D1C3BCFA1A56
+:10DF4000F318D909C279EFE68217A51657B2600710
+:10DF5000A2F8FA49DBD36F0AF3E1C6129AB5080FAB
+:10DF600065E6BD31C968DCC69C0202FF9407321920
+:10DF70003C12BC64547E5A95F0C44B619D9FA62D03
+:10DF80008E211AA2C90EC2ACB21C69C777BFF0A419
+:10DF9000F29132FA54807B2EF1C6AE77E60B5B5ECF
+:10DFA0004978C679743DCCF01204D0BD54904BC86A
+:10DFB00072707E433F42EE1927A4AA37924D5866ED
+:10DFC000B5372B88C308161CBE639C287ACAF42C6C
+:10DFD00049F638611AE28CD18FD0D66C3BADA9EFEF
+:10DFE0006137E4DB08929D1F891101607C1A37EECE
+:10DFF000555F0594437A435560B81782688834F3B7
+:10E00000A4A5F6D12331C5F90F4B3E660AAF6FCAFE
+:10E01000B94026EFBA67CBE453339F676F83712013
+:10E02000DFE49BB9B7E42D5BBAD584717BF623801E
+:10E03000608498B6F8CBC584F01695BC9D44373102
+:10E0400087934E3F021931107963F942E56874F005
+:10E05000D41C2E6C542A7BEF05F184BE298DAA6B4B
+:10E06000235359170885972188AE1D6D52682029C2
+:10E07000BE2C2535F51EB34B31A80D3A4969D95E42
+:10E08000ACF56FE2B92D388BE4578E6818C6CAE933
+:10E090009A3D28F551AB1F4ECBC2C7DD431C38D586
+:10E0A000ED440F2E64BEECA2F86980117C6E5F8C8B
+:10E0B000EDD36E81AD8DE334326546CAEC4E7FB947
+:10E0C0000F369E8F47E0875A8246AC5E24DC8A2A50
+:10E0D00033957D8F4E4093192023BE474818BC8648
+:10E0E000C4B6339E2E9E6ED409FBBFE6AE11E23D50
+:10E0F000F31A0D655607E922284B18E6629EBB7895
+:10E10000BEFC060317AB76F05FCA9A9AF2C83031AC
+:10E11000422B705ADDA2162734E5E71057BD22C9FD
+:10E12000B335059B63EA29C7EB1E035C55BAB5E915
+:10E1300041B792430C72BD37927D80BFE136E10E4C
+:10E140008DACE6DB70270DD67168BF371DF907D996
+:10E150001662C937FDCC5EB587E898F374B7C94835
+:10E160001D134B5C92B2ACAD28118CDE151F3472BE
+:10E170008243CE16186C905B3D2E1611998D351189
+:10E18000C84A854997EA1816D544FAD1EAAF6724F8
+:10E19000409A79CFA76E8FE1F58322431DFA9F6DD8
+:10E1A00082E17D4A21592B8ECA286F8D7C7628C04A
+:10E1B000BBBAA22E3771686482018A6115CEC88904
+:10E1C000C2875FBAB415080B39E79A124D1F910444
+:10E1D0006E0ABC49E8143445F2C5EBBB1DFBE009EF
+:10E1E00034ED85F74DE7B0934FED8D5D8755D10F39
+:10E1F000A042F3A1A67EA65C1C4B571A3583A8113A
+:10E2000000EFF7AB584013B987F44DAAFFF7E4923B
+:10E21000A153AF1B83464C797DD6E3A3DA58685DE2
+:10E22000523A235FF5C2D4AA0D2C45D28B901E8B97
+:10E2300042155F8A476ABA7F5B040BAA59BBD7981D
+:10E2400087CCDCEE29A35AECA4D43E783495AA48B6
+:10E250002378218606FB0C510AC602FF8020AC44BD
+:10E26000EDDCB0B6978D60D21F105678F3AF1A93DD
+:10E27000E1EB754ACD4E5518568D788DDF78B48E0A
+:10E28000A28504E0E99F0B89EB56DC5624F695C97C
+:10E29000E4B5702076196985B5C39DB13CC47F692A
+:10E2A00019BA44E2CAADD4F063ADB28F90CA3A193C
+:10E2B000A59CEA3BCE8949EE6FE5E46F8A19667545
+:10E2C000AB703F6C3D9170FFB5F25537A407D6C4D3
+:10E2D000A97DCFE932CFF136D890A1279553D7FF4A
+:10E2E000D6465FAD50C7ACD698433C5FADA4A4E81A
+:10E2F0006199D8C20B6E37699C29BBCF41AB022E06
+:10E30000C3BF8D86E799972D0C6618C5C2EA38CC35
+:10E310008456C0D34695A3DCCDA802BC8A34C42A57
+:10E3200048EC8ACD928B219262520C4C912DDEFEEC
+:10E330009CDA9253BE4C894D1897701EA244EB7B19
+:10E340003F79618BA50DC5344B3CBB089ECCA0FC2E
+:10E35000738BC370E327B4C3FFDF58D28240BB2C5A
+:10E36000038C36FB68ECF91D30AB2C822F9A2D16EE
+:10E370008195DC909A8E1EC4AB571D4B883D1D7154
+:10E38000C6B6A1BDBCFAA087B1793571C14D445262
+:10E3900074A2C5F277DBF525C98A5D9DBD57D3E62A
+:10E3A000F1CDAF77A2CFCEF26D10FB15A35DD59E58
+:10E3B0004EDE353A64691AD169FB0056B4D68C4DED
+:10E3C000BF19DBBA9AC18EE94AF5D4DB9A9658E9AF
+:10E3D0005C293640C488C2E6E212D0F33C17171D10
+:10E3E0008B15A22B30B00A1724C7954505CAD6BD98
+:10E3F0008726031B1127211B5A94E6ED4D78A79E13
+:10E40000ABDF58C8DCBF144AA4CD2302980D75AB0E
+:10E410005687859B5E3BCBD7C6ED8BB5C7B9CC0D78
+:10E42000481B5BAC5956CF3F38A53CAEB08345196D
+:10E43000179D1411AD8114E0F91B7D5465427C4297
+:10E44000FEB12BD1C31087D9A6AABD9FCF02F2F986
+:10E45000E87F4CD5B8ECFA25D49F1068AD80FDD686
+:10E460009068A1D21365FE22D0C401FA458A6AF6EB
+:10E470007C2CD854B14BA7CC875B67D4F04176ACE9
+:10E48000C44FEB7A61FC39F2BCEC0FA18FBC39F2BE
+:10E490008FD28F1500BC5EF21C91135A43AD2BFB3B
+:10E4A000ED83F6F49675BB6B4D7167B80D69E5D1D8
+:10E4B000FFFFFE3D3A9288CF2AA128EBEC1E9B0C71
+:10E4C000315F3A409B99EC773A138ECD3E25A26995
+:10E4D0004E74280EF57FEC877F78B56F05C70B0368
+:10E4E000BDDE620C82A0FCF3A1D026947F6D6A860B
+:10E4F0004A778A83717B6BFA873C05A73FDBF3057C
+:10E500006225BAA15E66683015AB440337A3108359
+:10E51000101464A28A73223918AEED4647C2B29233
+:10E5200029B44843EBE82600404C1EDE4578FC4207
+:10E530002D6AAF8E2B188FB4164EF01003C03356D1
+:10E54000B5E30DDFBD3B0A954212E15E4C24208904
+:10E55000772D49E3303350356AAE9982EA27F420AB
+:10E560001B723B6B7793A11A84C7CE4C06D034D66E
+:10E57000A965C39278A9A4B3FA25686B3FCB2F9EF7
+:10E5800091C193910827C2769385BB7041B5AA616A
+:10E59000A92349097CB4E06BE1489CAD13BF559BAE
+:10E5A00043AA7E463191F41B11FA7E8F8E085EE4F9
+:10E5B000B2DE496A3BEB9DC456D9B1097340488F1E
+:10E5C00044FE2A48FB1E70B02EE723C1C9CC05C10A
+:10E5D00093EB382CDBE3CB62507911A827ABFDA776
+:10E5E00056917825FAB23C4EED56A0424B93A57257
+:10E5F000F60A13B484DA45E1F7B3E934767331AE41
+:10E60000D127A180F9959545F28882A70D25F9912A
+:10E610004ED0D053237A12EFF5DAA81F95DE0FAB58
+:10E62000AEB0FBD0DE8F7B056C72FB592B7AE19A82
+:10E6300049E9BE0551ADF164D941AAF5A0A80DD2B2
+:10E64000DCB53C99869A3B3AFD646FC1B9237A1DCB
+:10E65000531649918A81AE26CF38E494B8B6899E84
+:10E660005F0FF56A37A5357DE92C6349F7CBD4F503
+:10E67000DCEBE2D3B51EE40C9CC9866DED087C2E64
+:10E680004EED56CD821EAAA34845C08E780BC60A11
+:10E6900046EB4DF9BE91457F56DEC9E649559039A6
+:10E6A00052B13FF60A76C1ABF47BA9C82BDAC53B61
+:10E6B000240480A21216FBDEB068022AD212BE2306
+:10E6C000A13313152D9906BCFC7DE04F55AF206298
+:10E6D000C06E643A41F517EB757F87F9BFE739D211
+:10E6E0008F8AB304852A0A5ADF1602247B04D28A51
+:10E6F000F129F570DFFADF0CCAFC85ED54BB40CD83
+:10E700003FCD61F943F05FF75424590B6FB8363EA3
+:10E71000761F0CB073AC45F22762EFB811AB3E1A0E
+:10E72000F8819FBB53DE3F67F0BAD4CDDCE3B71866
+:10E730001C8FCBE421C62FBE8F2B5D843627B69667
+:10E74000670CD247B1E12E4051371DBBD99E3080B6
+:10E7500079CB12271A7F86500C12E5ECE6DBF854D1
+:10E760004752FB19768CD8035953FA6A0A0E6DF496
+:10E7700097A69764752ADA5AA33E11A9EC764A96B1
+:10E780006DAA46E07E41EDBAD6FBF89B30970E0CA1
+:10E790002865ABD3BDDB081440CC5F6CD6A2660AFB
+:10E7A000521E752FABD560D7BFA864E25609BF09CA
+:10E7B000F46253233091EBA3D51786EE24F7F6616C
+:10E7C0001FC397F34101DBE6792006A081586C5006
+:10E7D0004B5693E3EF4875983AF66E50EEA1723FB0
+:10E7E00002140C9FBB18B065F1442B502D578B5E63
+:10E7F000118FC0AD5A745E7052B4B43C8338F3A824
+:10E80000EF936ECE818612A8B5C0F040C6759BB45A
+:10E81000945BE52172A398A06E8737ECD11DEE10B2
+:10E82000EC051C2D1B3BBA853A1BA4554E0C1CA2B3
+:10E83000CA90A7A53261715E0D29A23499FA0C68BD
+:10E84000047AE447DA26518EA2C1638F920DBDA4EB
+:10E85000263179D4D6A0D7EC087AA9C4E5074FAE03
+:10E86000AEA30CDF3711D0DD613F57FED0A3499234
+:10E87000E818E39058929F3109E2D55002F003EF77
+:10E880002FB18793410DB38D6C8DFC627458FC6F72
+:10E890007F999DFEDB77C2713DF964E70598898910
+:10E8A000D167570DEA886EE57113807F1691B538F0
+:10E8B0007C7A583D2F5E7E834E517F29A3F0B2C3F0
+:10E8C0002B4AD2BFBF0A83E69C7F660E900766BFC5
+:10E8D00044EB6E0ACD7E5A60EB585F5220AE691D44
+:10E8E00053F34AF3826F3748F6D6AAC66F54331DE6
+:10E8F00025417684173DFD0E4BC8EF7BB26875BF8E
+:10E9000008E36113E4E07F8DCC61CBAC84EED7E407
+:10E9100038A0A4F60881E9F30DD3FB8175AD4C094D
+:10E9200008BF9B79967D439C09FD52AB0F814081C6
+:10E93000A901211244F6D4DF4F6A93B828989DC6E6
+:10E940001606A00E54B9500EAD8B4C2704AA94C4E1
+:10E95000AA5916C5A96171A3EC3750D8F119E0DAAC
+:10E96000827D21FE2E0CF049A2EF46FEC542DF79E2
+:10E9700034C829903736267490CF52137D22326ED8
+:10E980004E2A0B7AB0C02F1FCF94DC1C3E5180B8AA
+:10E990001884EC96A60EE0D371BD9A81ED8E6B8A39
+:10E9A0004BA0720064E1AEAD81B5910910A1C5160E
+:10E9B0000831DF33F2896B3C1A1BA1DB71F7DD3ABA
+:10E9C00017FFB1E54AD175FEA080672D59F3229952
+:10E9D0006E5430EA5C0245C8D825810C6DC4C55F11
+:10E9E000C0D40EA48BCD132F399557B17BA5ADABF9
+:10E9F00026C96E2168B09EEDB2B0F27F10FA6F5159
+:10EA0000818AB243A87C3498CE22D91B3E8EED5B1E
+:10EA1000F3588604AA54F959C0B4FD7DB559FD1BBD
+:10EA2000DA5B964EBA7D7393EFC1A5EB9312237018
+:10EA3000CE65CC4A3DCCAE97F2933AD0B42BC0C74A
+:10EA4000AB5D31D5ECD4FA071495109BE62780DD39
+:10EA50003DE7A905FB2969BA5786758B0FC070D7AA
+:10EA6000C7BA031CDB4F5D8CE028A8A09C51D50CD5
+:10EA7000F863197031555BE3DDDB98CF47AD831A3E
+:10EA80004A9EEA2426A8D40346BF6A2BEC8AD94FB3
+:10EA90001A73DD4DE99F459508261125EF753A0D4E
+:10EAA000A5F91965C2033B2845A4F313EB50185C84
+:10EAB0006A298CA3FAB7AA6067AD0A886ABCE7BC6A
+:10EAC000BCE30959F75E31A3EE545FA1F0D95E189B
+:10EAD000D22643519F93331F34BF02891E33D2E2A3
+:10EAE0003B626AB495E87310F80AA3F9D041CC6E82
+:10EAF000752E2B58B299E7DAD4BDD2521D46B5B166
+:10EB0000E86F4FABFF7F18B34DDDA93CE6E7841EED
+:10EB10006F72F3DCA1F62139689693D53A905A6565
+:10EB2000D322B1F4EBFF2B729446C4BD05DFD08B2A
+:10EB3000937A0AD86FBD19FF3776E8309C80191A8E
+:10EB4000824417BC03235AF44BA14A106DE22E698C
+:10EB5000E24B1B20389431C176C02F3C9808004608
+:10EB600087323D77C1B2E4C1AF41C76978AFF930B0
+:10EB70003B35C7AA467605DE4D9EA12DD22CDD9DE4
+:10EB8000D9262EF1788624BE52202F6BAF2ADC487E
+:10EB90004F7EFF09B1E7B13230524EC553FF64A535
+:10EBA0004AFDB88B6348986E3D057DA449123B022F
+:10EBB0000FB681AFF26F1029182CFA2C11584D7B2B
+:10EBC000C0AE467A4AFBC1C62CA56C712AD4D67752
+:10EBD000EF072AD6AED6F9E43695C2321D70E704A7
+:10EBE0000ED7C8EC80D712B371CDBAF2B6198CB279
+:10EBF0001AAB8CDEB624E1B71CFB784F2A9186A2B3
+:10EC0000776F7104E31E5AC2A629D90018663DFF2A
+:10EC10009913162F385ABC9E0A08EB520B65E6F979
+:10EC200068550B749E54418DC99832176C424352FB
+:10EC3000AE76474B655E5D6FEBF029EFE55F453DD6
+:10EC4000BFB06388834A9F0622373DD9A5129D53E2
+:10EC500047F763C5F4FB62C6E4665F120D3C564697
+:10EC6000D60C450880C0CD25C0C23B8A14D2A36B08
+:10EC700005C38B50B533BC7657B5F86328926DBE8B
+:10EC8000F29A846DB3B4DDB8BE82C4DD708AC5BBB0
+:10EC90004602D3842844B9AEDF9CC45F8A632457FC
+:10ECA000685D385A1A3417DAA4387AB4BB5C37BEB8
+:10ECB0003CF2B1E9E7DC36FE02FA257A2A424558F1
+:10ECC000E0975770C456DAE5B905056C4B1D25363B
+:10ECD000895D5F53A44AB28BF10A862EF7A001A288
+:10ECE000A889DDAD5114B247B40DABC178BD228304
+:10ECF000E3E60AE0B0D77BB6507996F3F94F41933B
+:10ED0000CE502FBB5ABA273ED731D991190DA091B9
+:10ED1000961C1832548E811FDBFC666330DFFD3396
+:10ED200090432026487B266FFE673317835A719FD6
+:10ED3000A45C13C86FDBAA2063421C23A4AD55B6A4
+:10ED40006902F785C62A0038EDD28BBF0B4DC6F796
+:10ED50000EFFADCF77BF13AFAA0F4764B852E0E6FE
+:10ED600011D68E3706896B18CC05B2F0F4ED6EB46F
+:10ED70007D2024D99DB6F20BCE4798DFAF674F2D8B
+:10ED8000CB6EAD4C0175CFE9755748FA21056CD9AA
+:10ED90002AB8B12EDF365E40E62B64EEB51E7FA5A5
+:10EDA000D0626B49FFD88CCDBCE609510C6291AFA3
+:10EDB000BF7B4BE02C2920F23D172DAA572855EE9A
+:10EDC000A2E9D71B67314D81B69DB20512DA154C09
+:10EDD000C54F7783D2A72838C054208B27FC6553B2
+:10EDE00047EF4BAE3CF75C0833255EF3841A66FFB1
+:10EDF00087CFA5A228C4B6006F52BE5D55771E19F5
+:10EE00001BA789307848F495ED92C864875EA27498
+:10EE100033701A0454E8E412C37B500E3EA4016E12
+:10EE200073DE909E1DA91F2A1AA89BF64FAA8A83FB
+:10EE300083C6AE8CACBB048A00A7BACEBF3B4632B9
+:10EE40002AE6EE5EF7F416CE5B7D8660D27B710D0E
+:10EE5000B9261845E19241773E6A357654A367C4D6
+:10EE60005AD9E2438226347937BDEF3CC8397962FA
+:10EE7000A6316DA6C80343A04184079C41BDB7A13C
+:10EE80004D4F26ED0DAA489BB9E31245EE242A49C1
+:10EE90003E52F5A39ED5FF0115FFC4195B8E3603C4
+:10EEA000C94860542346A32FCA1CF45EC867B5390D
+:10EEB00046CA919B793E554E90962253310761C2C6
+:10EEC00017932DD0728FF0756348913195AF96707E
+:10EED0003FB116367B2188A6EC96B2C3B9779BCC9E
+:10EEE000FF3AAA561F55E25D0AE60779F5FA9261E4
+:10EEF0000261FAE38424F8A94CA6DA456DFAADA2C2
+:10EF0000021ABF3C003F011E2837047F07503F7F95
+:10EF10003E000000001C101E05F5281E05283000CC
+:10EF20003000F0D2F0D2A60A1080080A0101732E38
+:10EF30000140332800000000070A01DF00017800CB
+:10EF400080041101181B0004041B00100A0000B00B
+:10EF500004FFFFBF96307500C080004040010600EE
+:10EF6000002C010500DC05040C01040548003E00EE
+:10EF70000000000000000548003E00000200000004
+:10EF8000000548003E000006000000000548003E65
+:10EF9000000008000000000548003E00000A0000D4
+:10EFA00000000548003E00000C00000000000000CA
+:10EFB0000000000000000000000000000000000051
+:10EFC000000000001E1D1C1B1A191817161514131B
+:10EFD000110F0E0D0C0B0A090807060504030201A8
+:10EFE000333231302F2E2D2C2B2A29282726252469
+:10EFF0000024801666263300002D0030080000CC67
+:10F000001C801666263300002D0030080000CC1C42
+:10F01000041A0014002003000C2003000C0210004E
+:10F0200000000000000000000000000000000000E0
+:10F0300000000000000000000000000000000000D0
+:10F0400000000000000000000000000000000000C0
+:10F0500000000000000000000000000000000000B0
+:10F0600000000000000000000000000000000000A0
+:10F070000000000000000000000000000000000090
+:10F080000000000000000000000000000000000080
+:10F090000000000000000000000000000000000070
+:10F0A0000000000000000000000000000000000060
+:10F0B0000000000000000000000000000000000050
+:10F0C0000000000000000000000000000000000040
+:10F0D0000000000000000000000000000000000030
+:10F0E0000000000000000000000000000000000020
+:10F0F0000000000000000000000000009845032808
+:10F1000001010001010000000000000000000000FB
+:10F1100000000000000000000000000000000000EF
+:10F1200000000000000000000000000000000000DF
+:10F1300000000000000000000000000000000000CF
+:10F1400000000000000000000000000000000000BF
+:10F1500000000000000000000000000000000000AF
+:10F16000000000000000000000000000000000009F
+:10F17000000000000000000000000000000000008F
+:10F18000000000000000000000000000000000007F
+:10F19000000000000000000000000000000000006F
+:10F1A000000000000000000000000000000000005F
+:10F1B000000000000000000000000000000000004F
+:10F1C000000000000000000000000000000000003F
+:10F1D000000000000000000000000000000000002F
+:10F1E000000000000000000000000000000000001F
+:10F1F000000000000000000000000000000000000F
+:10F20000000000000000000000000000003F011EA0
+:10F2100028371E0A017300000700FF00561D10E08A
+:10F2200001E00000000000000000005335303030E5
+:10F23000420000000009030F00030000000100006D
+:10F2400000000000000000000000000000000000BE
+:10F2500000000000000000000000000000000000AE
+:10F26000000000000000000000000000000000009E
+:10F27000000000000000000000000000000000008E
+:10F28000000000000000000000000000000000007E
+:10F29000000000000000000000000000000000006E
+:10F2A000000000000000000000000000000000005E
+:10F2B000000000000000000000000000000000004E
+:10F2C000000000000000000000000000000000003E
+:10F2D000000000000000000000000000003D0011E0
+:10F2E000060112201B0C0401011C0008002134003F
+:10F2F000000000000000000000000000000000000E
+:10F300000000000000000000000000000001780084
+:10F3100080071101181B0004041B00100A0000B034
+:10F3200004FFFFBF96307500C08000404001DC0440
+:10F3300005001C104410270101BA001C05C088609C
+:10F34000483B080F580000000000000000000000CB
+:10F3500000000000000000000000000000000000AD
+:10F36000000000000000000000000000000000009D
+:10F37000000000000000000000000000000000008D
+:10F38000000000000000000000000000000000007D
+:10F39000000000000000000000000000000000006D
+:10F3A000000000000000000000000000000000005D
+:10F3B000000000000000000000000000000000004D
+:10F3C000000000000000000000000000000000003D
+:10F3D000000000000000000000000000000000002D
+:10F3E00000000000000000000032310C0001540059
+:10F3F000000000000000000000000000000000000D
+:10F40000001E33001C10010000000000000000007E
+:10F4100000000000000000000000000000000000EC
+:10F4200000000000000000000000000000000000DC
+:10F4300000000000000000000000000000000000CC
+:10F4400000000000000000000000000000000000BC
+:10F4500000000000000000000000000000000000AC
+:10F46000000000000000000000000000000000009C
+:10F47000000000000000000000000000000000008C
+:10F48000000000000000000000000000000000007C
+:10F49000000000000000000000000000000000006C
+:10F4A000000000000000000000000000000000005C
+:10F4B000000000000000000000000000000000004C
+:10F4C000000000000000000000000000000000003C
+:10F4D000000000000000000000000000000000002C
+:10F4E00000000000000000000004030000015500BF
+:10F4F000000000000000000000000000000000000C
+:10F500000000000000000000000000000124801640
+:10F5100066263300002D0030080000CC1C801666E3
+:10F52000263300002D0030080000CC1C041A001403
+:10F53000002003000C2003000C021000050C30001A
+:10F54000410000000000000000000000000000007A
+:10F5500000000000000000000000000000000000AB
+:10F56000000000000000000000000000000000009B
+:10F57000000000000000000000000000000000008B
+:10F58000000000000000000000000000000000007B
+:10F59000000000000000000000000000000000006B
+:10F5A000000000000000000000000000000000005B
+:10F5B000000000000000000000000000000000004B
+:10F5C000000000000000000000000000000000003B
+:10F5D000000000000000000000000000000000002B
+:10F5E0000000000000000000003C000C0041510041
+:10F5F000000000000000000000000000000000000B
+:00000001FF
diff --git a/firmware/tsp_synaptics/synaptics_b0_h.fw.ihex b/firmware/tsp_synaptics/synaptics_b0_h.fw.ihex
new file mode 100644 (file)
index 0000000..b3d7e54
--- /dev/null
@@ -0,0 +1,3937 @@
+:10000000C40D740E0000000600EE000000020000A7
+:100010005335303030420000000000000000000086
+:1000200000000000000000000000000000000000D0
+:100030004453352052312E302E3000000000000095
+:1000400000000000000000000000000000000000B0
+:1000500000000000000000000000000000000000A0
+:100060000000000000000000000000000000000090
+:100070000000000000000000000000000000000080
+:100080000000000000000000000000000000000070
+:10009000493243000500FF000C0D20000000000065
+:1000A000493243000500FF000C0D20000000000055
+:1000B0004FF4BBAA0CEBCA447DBDC1452027C090BC
+:1000C00043F5E04A742634893ADFD10918EC5632F8
+:1000D000C78B51A04FCEC9A42BFA103558A31DF3DE
+:1000E000DFF4C560070817A397265F0D938035449A
+:1000F0001C45094EE5C41857A64CBFFD5A18824C42
+:10010000D624292AC37E3C7D1A0FC456AB5EF1CAA1
+:10011000CE46143E9C4C57C3ABB6C3A5E1536419FD
+:10012000EB40D380BB5EB81AEBADBA47BF354F7B0F
+:10013000CD6BEAE620AD0A1BD52315ECBE77F32A7A
+:10014000661BB53C8AA929632A109F6BF8354FCCF2
+:10015000D8A7DEAA766FF481B7210E1621241CF5EC
+:100160007464A4C6819E2024E91E0726606AE66F97
+:1001700070FF95745F48398EB524F80C1287B7B4B8
+:10018000AE74EE3DDDCC84B860D58362E4144B657B
+:10019000C053ABDD3931AD66AD9940A82B3E14D5C7
+:1001A000DF626E5416AC1D109678606CE04156BA52
+:1001B000DF8D6301C0376A4E68F9380DDF2549F7D6
+:1001C000AA078A08F3181142D22785465702EB6E18
+:1001D000A5C4D79979998F65765D75D3D7D7FDFB7F
+:1001E0006FDC958042C2754548A748B53BC4AD3E1B
+:1001F000C13F5E1F0211E098D7ED36E06334FE1771
+:10020000D26D56605E328964656B52DCA2F1015298
+:100210000CA4E657A31FCE4C6735B2CA70601433E6
+:100220002B6D1988C267D67D74B89A81DA542C3F39
+:10023000491ED90B00D17B5EDE74B1B17E29F1C1BC
+:10024000F4DFFFC32E2E4B03A4A73D0B638D79185B
+:10025000016B4F2D6A0EB775AD335DF3CCBFDAB1CC
+:10026000FE25699BA29D0AC7B6787B1CD59E89D8BE
+:100270006B50CE1085C1922FB10C2BEC9B92252F89
+:10028000BE9C94A5FE7A1CAAC1B13FDBB421E35603
+:10029000DA3A2933D0BD9FD2B7541A18E1F07B3433
+:1002A00046A0E1890048AE15EE3A48431E556DFE62
+:1002B000691165E7D7F351B98F092A9B21B55DCA4A
+:1002C0008F37050FD741C227608E05483CEBC046EB
+:1002D0005C20277D9FC42CDB31D3037C089EA59036
+:1002E0007C892D8FB26EE2CF18D13B306AAADB42F7
+:1002F00016A19A55F3B9C30B60CC7AEAF7E4BE15A0
+:10030000FF010CE10DF9265FB36DC5CDBB6EDB1FA0
+:1003100094BE9A1463CECB6A00FB34E6E624B6E1C1
+:1003200014EAC05A5C6D1A6D7A30E1F76AC288EC43
+:10033000D0ECA644C1C6B2612710D6415E065C422D
+:100340003848CD56E7E153B8687EA2AA8D3EA2DBBD
+:10035000060FB745D8E7B2092C190F176D8D684104
+:1003600062C106CE4562FE34DDD61B820C32B42C4F
+:100370002B40712C607821CDC14E643E91CCF92088
+:100380009AE6778AEBB1A763325720CB861699F5A8
+:1003900030222A723AE86D118ABD7DA135428D93D3
+:1003A0009F9EFECC988D1AC007C006F83F1BAC8FED
+:1003B0009F22C5972B1F6E4CD95F76BA3676DC3BF1
+:1003C000AAF331EE8C1512796A9C9CABA374A1B18F
+:1003D00092151D32C4BDA03D3AAEC7C00E2D62D3EA
+:1003E00049195E178500AC1822148603D933EE999B
+:1003F0008E6FD156F1CC00CF4970B3A342B87EB80E
+:100400000D92C97E00956D7001179B501196A3BC8B
+:100410008D51F1DB8C540573D1FFD3A46A4631E5CD
+:100420006522CC66BFE83C99AC5E304DB392F1CE0C
+:100430002A5CB8726EDCCC7BBA70384CCA7222AFC0
+:10044000FC69EEE84BA67B136568CE573318EFB016
+:10045000A2996032FEB3F6B6EC8C12D61301239546
+:1004600058A806672570C4726DFCC382C66D630F01
+:100470002E902B8B5F994AE09443E2C3DDEE3EFB66
+:100480007151B89EEF340368B0584ADC69990CA4E6
+:1004900028A852B9641CB55ECA7AFBCECEF17B1E89
+:1004A00016A6AD19F9957E88FCFC11E09E7D1AEF29
+:1004B000D05E3607F3F60559BC1258420EFD96A8D9
+:1004C00095211C89DA30C15875E804BB3E018A9831
+:1004D00032495397C84A7998FE0B1C26F7E99D5676
+:1004E000313B1FD4B7D6048C916B42FCC31CF27015
+:1004F000AD317969977FF056106004310846FF0BE3
+:10050000EAAA89B29FFA678B77C57210E80358CFC1
+:10051000240CBAAA7518BB7B1CA68BF9FB77802824
+:10052000BC4E0DE0EDF9A5165266BE89506B9FDEFC
+:100530007A5AB71CBCE69DD7B9B6E50593AD32082B
+:10054000E870379767A1662AE5653EB30355929A2E
+:1005500064F397AD7D59078B010DB0FC4F80D1340A
+:10056000797BD7F09A8751EF61CC02C738BCA37E64
+:100570007C2E836E123ADB827519A8CE78C5E717F8
+:100580002329093C5665851E2900621AEC0170F486
+:10059000D11BB291F24730BB0E236EEA115A65A807
+:1005A000A1C9BCC2F7692AF17BF5364871AB2F5C53
+:1005B0007AFAD2AC9121D9A24E5F86459979F81684
+:1005C0006A6DE3D5D9218AEB1CD420B6FA85C7A081
+:1005D000C3B24E0828C880CC97B19E3457A8D732F2
+:1005E00093F890CA53A29A2B18674B1B1727802E9B
+:1005F00013AB6B30EA1CE62DC677B0B5D9CF515698
+:100600009F5EB9F9F45BFCAD97FFBCBE217806AEE6
+:10061000DAF5D2CB3479B23668EAEB463952FFA428
+:1006200032FDD3EAC1FAB8B30310D2A8634373A072
+:100630008D1BE86B0838DD732635CCD2F0E2D06D27
+:10064000009231184FB833D8713D336F945D01A8D3
+:10065000D2A722F34132E8A77A7EE3BB04C951EC6A
+:1006600093B106C0108988D24CDA82E8F5324FA2E5
+:10067000ED9BFDAEC50B546039A3401CEE460F8FB9
+:1006800060D19031B3FE6309EA815DEE7E7C7C959A
+:10069000E83C75668496C0A46778D7289889469206
+:1006A000B443D7FDA4F6B387BAE64BB8E8452FE2CA
+:1006B000BF40F239B8AE472416FF63FA096EB36F34
+:1006C0008027964421B1B3478594E2E2D276534F16
+:1006D0008C39EFE2E0D168B8F4B3948C120B383661
+:1006E0005C9361C0A408A0EB6BA6392C4EF70A2ED0
+:1006F0001AD291FAEDD99E6587645669AFDF30F85A
+:10070000B923560B23B4E163E1AFA5F9E438110036
+:1007100066A7C5510BEA29C9529A5F4C3832392075
+:10072000007F02AC29660A43B209DA6FF094E9B996
+:10073000BA9BCE1DD844EAEB7830DBDB48B99E2E5D
+:100740007E2C225FA3BD3987C01364218FEF93C332
+:1007500074CA9E0699B9DD940F59F11FBEE1A60A2D
+:1007600059228FCBCA51E442E12986E445DCA03905
+:100770006B66A71EE960AAC01C602660448485B928
+:10078000EE5BD31D46DE81FEC78ED34C517094AF15
+:1007900057AA6F7796661D4A3FA91809DAD7C12371
+:1007A0002E03EA70EDF10DAEC01998C80FE8B46CD5
+:1007B000A2F65D3A9D68FC34231B82C9E8A92D1D71
+:1007C000C7D165572A435C1B7DF48DB67EE32FA409
+:1007D0009E4418872D5116BBED201CFBA3A1B2032C
+:1007E0005FAB70672AD4F26C1C5BC12DD16C6107C2
+:1007F0000DDE8A63F882C5560463DF4039BF518736
+:10080000F675A573B2395ED7A5E283E33084506CE8
+:10081000E0491901FF46552EA59B3D037FAAA9F08B
+:100820008AAD273F85DBCB5E6023BE3B289B9DECDA
+:10083000BC768224C5664317EDE36E07CCAECACD05
+:10084000665A6332C6EDB5FA07F25131EDCB302767
+:10085000299EC453CA0CC5F3D0CFB9B7577F01B690
+:10086000FF4E76B971B3E8B1C3F91E5A4FC2542A8C
+:10087000F9AFA9437DD068D35048F4591167FF06FA
+:10088000C1B3D64B4DBB179CDEAC7B7D3BE54E51D7
+:1008900095FD39BD236927F83D12C1D2B5BA5C93E5
+:1008A0004CEB881FD1355702BAF60CBCB67B695D9C
+:1008B000B86F2D774181134D7369B2B9BE12131A07
+:1008C000D7694241466062026F32CD5D63B8EDADDB
+:1008D000D819DEBD30476C4C131DA5E69C051ACC1B
+:1008E000B742FD83D1A7F7EE133CED5E731DF59B78
+:1008F0007A21F6CFCAE789FC994A4BC380218F8CB5
+:10090000353AC2208FEB5D6A09C7F4681909AB223A
+:100910002A4ED75BBAC334EDAC6F5D4D5824006AE4
+:100920004AB6B41CCEE7930CEAE54C6104A0937C74
+:100930005496713B8628015DDA109D6A489B81AE12
+:100940009ACD06DA70278F871D767F93F5A2074D23
+:10095000CF1DA586A7E82A21041CF9BFB344C26AAB
+:10096000DB6898C1BF76EB3D695518B1BD0969993F
+:10097000133C6D6EDCF4101916AB4D5952F760073D
+:10098000F67BEF77CFF0F1D269A2320CD0E6737329
+:10099000469295D6027C769CA43848CC7CD452FCF6
+:1009A0007E4D02A7400A6159DA3D69BACD175E371C
+:1009B000AB3E37F965759C90244CA3C2129A5B9AA2
+:1009C00096F8EB391A7CAB6411C9571A0806B9E8D6
+:1009D00062DC3B5CB00650B7A8B470C970C4F9B70C
+:1009E00093F3675CCCD2CC84C30EAC066E083DE5B5
+:1009F000B6B747A5E6DDFAE0FB72FDF465E4BB2F70
+:100A0000EAF2AD91E8E0194EC978BC5C4BC1E09FB9
+:100A1000E0DA5C4C0AED089E56481D1F89F1BA9B2E
+:100A200067657A73BCB8798FC8F719CA3CD56C87EB
+:100A300028DC5B364D01465DB49B7A1D24520321B0
+:100A4000C4C5ECD34B0652A0E297031CA7A5A12D69
+:100A50008BE9B8A173293A4312EBDE5544F8F2ADA5
+:100A6000D0CA29C87243E03F1F47CBE39BCB9A23F0
+:100A700045236B17F72953D96A9893E2D5197CAEB1
+:100A8000DF10ADBB2B98FCFAF675B984A39987D912
+:100A9000D133C272C750096A1FE8B22976D1C71391
+:100AA00079B0330B6DDB8DB8FEA7EDA3F359B8B960
+:100AB000FD050363FC745F831688D56225AAA2D85E
+:100AC000A8001FDFFF70221AA3961E0FE12B9D3393
+:100AD000983A3487F50A432EFD0DA4D6681482E5B2
+:100AE000D53E338B1798DC990084992E0773BC731D
+:100AF0009DFEE6AE46619B2022E28407AFC9100747
+:100B0000AB0B743E8BC697272C1BD579892B24A75A
+:100B10008420BFFAAA4E50FBB81AD0F0AAA283EDE7
+:100B20009E6B33C8B023E22E1486CCC0825E99EC53
+:100B3000BAA812A496301DC7B652689757C696F643
+:100B40004F40EDCBE5A2FC6B815FBC2A755827D4E2
+:100B50003CE2BC7BBA931A7F2D937145DA872D5501
+:100B6000BFCC90C22EB01A38EAB7293E5E3B870050
+:100B7000CA59DDBA8447D5DBEDD040FF07CEC84166
+:100B8000A7D768EE304BC72491C743926723C75C51
+:100B90000E54EC993AC27143D305BB2D04D3EC0437
+:100BA000DA22A0E40D652729FC652099C7319BC98D
+:100BB000C04AC7A27EFC9B10EBDA2461C79FD869AC
+:100BC000071A14BF4DFA11B55ECF63504B9BCD325F
+:100BD0003C585D496750416EFD586ED5C1F78D8612
+:100BE0006CE8B5B4963B74A133A3E5E106748CC000
+:100BF000DF10CB821DF5CB2E27DFB0F591F5EE8F00
+:100C0000CF5103658DAC2BCD87ECB00C639AF25DB0
+:100C1000CF74FCB8CE9B1645840FDA03ABFAE4B16F
+:100C200056011836A5109E4AB331823D5942ED1245
+:100C3000503E0FAC8EFBF43AB436FADECB219BA8C3
+:100C400075E435032F80078978CC6D68F40C946EB9
+:100C5000AC937ED7F952A3BE007C41E5008E8C9305
+:100C60006A7241A9DE35B9E92A43E8884C63D2DDCE
+:100C7000B90145750A580AE9E9EFE558861EB952E7
+:100C8000F3B890B158E3A29F515303EFC34BA14671
+:100C9000002B9F5CAB915634287F41CDF9A5FF1FF7
+:100CA000C007C17A09E75601C15D15F617F4BB31DB
+:100CB0009F6C52AC8BF3A0C5CAE6720C5CF60CDDDF
+:100CC000469CEBBFBCC7A5ADE4C711E2A5B6432F58
+:100CD000EB40C19B14CE3B3E1DB57BCD34C3BB095D
+:100CE000C6AB79DBD6092ECE3BE959675DD88EA518
+:100CF000B25FDF0522348E703E11577D8D84CC4269
+:100D000040A557B533C8270BF01AFB49480383C3E6
+:100D100072A202E3837A49958428A5B2985DABB1AB
+:100D20009B5FF57FE31AC0D50F594E38E8014AC2E0
+:100D30002CC28BB171A322FC7210ABEE6045BA934A
+:100D4000ABAE5ED610227EC96D0A0EA0F88D33437D
+:100D500036B67C72A3209729E8478B3854EE892752
+:100D600004A78AE3BBBF372ED1C3F600F0F19C95F0
+:100D700085E28A57BBE17031F5E7D7179077DA95AE
+:100D8000EE2899E74306BF1F53E3E2E3B2BAE7FD5B
+:100D900060EAAE29AABDF957966A3BE4F1DDDDE4CD
+:100DA00002B5A916101123BEC69A3FF1687F45C946
+:100DB00055E660054D4BFAAC77C52C73538E1A3B44
+:100DC000B2D82EDC4C72A90FA5E80DCD85D1E30475
+:100DD000AC5AD6993724A9C8DDCED19F6977F1BF27
+:100DE0006362D2FC99293377BFC1B7BE30D2E153D9
+:100DF000E9F96CAF3B07D89515AC0890A6C3C19034
+:100E00007F41A7BC4396DADC28140E79F13ED7DE89
+:100E1000227A8DBB863E8D07DF7FCB98D2BC29FB23
+:100E2000B379E0363CFF4A20DCAA5C03742B3AA37A
+:100E30008B87B9F497165ABD36FD93159FD2AA8EAB
+:100E4000EE299B86F0517BFC2EAB226D58BB94188B
+:100E500000554ADDF0E3524989B2C73117C50B3757
+:100E6000A105358390576C0BEDFF6F5EED4F90370A
+:100E7000C669A2E7DB9ADA7712704028619D00808C
+:100E800027F80C84DDC97D96A16F379C93700BDD2C
+:100E9000330CDBC164BFCD37963A4A09319E33CA61
+:100EA000A9AF287B85A7D2D17E3494A41BE8A07873
+:100EB000107B3C4E2F8C784B649D88855D3F5ECCCB
+:100EC000EB62A994428BF0B77818CF5AE7E0FCF9AF
+:100ED0001519EC6CFAE136DD98D238B4685D63958B
+:100EE000338EBC83EA979E19043E1DB46561752F4D
+:100EF00022007C252F08A0C52D7612C3E117D86CDF
+:100F0000E9CB5AB3DD330F5A4E58171AF19CB7FA92
+:100F1000C4E2EDAED5AF6F5A8FA4C3B9160FB6A910
+:100F200060825AA5E89949E1C44BDB6A67A9AC42E3
+:100F3000B4BF290DEBB96D1B6837FE3CD6600921A3
+:100F40006553D495D24847FAC1AAAE4C04591CF057
+:100F5000BB6CE9626E95C681F288455174E559EC27
+:100F600078FD82929266F2D75AF0932FA14D714D7F
+:100F70005AA3E1E04CD8F16EC179152CD76CFD99DC
+:100F80003B09324878EC017CF645ED760801C35206
+:100F90002282AA6EED7697F69825436C6A0F545616
+:100FA0008C2F1640563E2E693F406659F3B15DAF17
+:100FB0000491D4EAB01CA4FFE1740661C689EA7CFE
+:100FC000721C7685B740FD9E337D4631608C92520F
+:100FD000B4CB605B39C38A39AF4D920112ED27C89B
+:100FE0003BAD0A4CD0CC17B502DF52ACB97F2C8395
+:100FF00050327B186238DD63CA7B8C20CA1DF6C76D
+:10100000E95DE63959E5B7FF20A4B8E3D3C96D0619
+:10101000C3D1D65B64F87179A0A10AAF4B925ABDD7
+:101020001A6C8E0773780621924E394150F17BA6D7
+:101030001DB3FA5136E25588D524DD9B7A83287D8D
+:101040002639DF3BFDE83FDC918590B277BE3EDD7F
+:10105000D31976C522FC4D9697C8B45251A14A7A4D
+:10106000E647F3976B341FE3D61C25CA796DB0753C
+:10107000D91DA457BB0E457A35A92DAFBFE77C9685
+:1010800047413420C1CAF095BB71D60EE9095323FC
+:101090001A49D4093041C33111E2CE616130B01335
+:1010A00074F8BF749DCF6D3359BCA62CAA21F7F1FB
+:1010B0004CF6FE148BC13030372129125B3A80E4A4
+:1010C000C2450266EAD6EA0FABAA79CB4F4D355B33
+:1010D00055B56A8E446F1AB18D0B9E30996CC0F174
+:1010E000F927C0591A3CC92F1EC5D8C3C1C22EA0AA
+:1010F000ABE1E9C99B354B1D67D644539233294672
+:1011000000EECF774C2536F0F6C0CF34F3AB3B5A28
+:1011100013B31D97B23AB567FD9794F12F70D306BC
+:101120001A361061AFDEE2F47C8A031FB176BC4C44
+:10113000CE0B587F3F1FC721B335759DB39E105707
+:101140006F99049901A68C2A6C2654933095509778
+:101150007B53DE6376FDCB0B8CD0BDC0F38CB4A685
+:101160007D7C2A6669BE601C06C2EA08F7730948DE
+:101170007F60ECF9FE5FC4D29E05D86D1F3080679A
+:101180000D6A4220FA59037B4581A9F2F7D12CA2BE
+:10119000DF208B50A8C8552928164201DCBD0E550A
+:1011A00022BBC94A9DA8E230E1F1B10D5F12F923DB
+:1011B00027267E5F5F59F90BDB352533685DC8391B
+:1011C0008A33DA6D8EBC5A815AA5AC79117D1D5BCC
+:1011D0005FA0E1D190154C00DA9BCCE1E2EDDFA9F4
+:1011E00046003D89D447407A2BE2C5C03139DF7DC6
+:1011F00006B464E3C0CA31A032E1E1E548C467AF98
+:10120000C7B7D5A86A072F2AFFE030B054A535210B
+:10121000C8307FE7362BFEF9AD1420E5AD78614488
+:1012200070C4774A0027B49A664443B622E25B430F
+:101230006C7D973AD137C1461A43BEF05D3BA0FAA8
+:10124000C9103B5B4943BAE934ABC0881EECEE13CE
+:10125000ED76C228306C3ABA1AA1CB5F810044CA3D
+:10126000170C0FDFF57481F755CD1DDF45069BD9AF
+:1012700013FD101452DF9DEB3C61680A67D997C4D7
+:101280007428496FEFA924DEAB270BD10E5EC7008F
+:101290007153C9DCA51718DB325AC23A28F942F952
+:1012A0009ED6E5C428D320029F1DA7A26BEACA8A56
+:1012B00007C9A7050031782984B654DE8147501D3F
+:1012C00085404A74865CE2CC654CB451ADE2309BFB
+:1012D000351220D9AF15AC761AE4658A56FC1BE9A5
+:1012E0006C8B86EE3B75B400A28C1727C2B51986AD
+:1012F0005ACE941C2A7F9E1109C8EC958D8EC9D8B0
+:1013000078C0FDD382CB498A4E402C2E5955B8A9BE
+:10131000D28DD0CDE741A85609495FBBEF5908925D
+:101320009854EECDB4E555F17E94CF8D2E72198B85
+:10133000D9536458CE2A8959729DFE059DB2A5B530
+:10134000C02C0EF2496470F02DD59A22567C80E8AC
+:10135000D364E8490550F87F43E62C32CA635B84C6
+:101360007B9AC20A8348426895CD225B2FB3AA615B
+:1013700023A42C4F8D287F65A42F889094B925B085
+:10138000ED262A6F0C0CB553EEBD12EC9FED2675C1
+:10139000290A7F195477AFC511945B2C437CC60290
+:1013A0008F9543043DB8F52F205C69136B634E3174
+:1013B000612BE635383ED9CBE154ACFFFA1A9D0DCE
+:1013C0007BD600910C450204DE86CE88EAD86D7388
+:1013D000050E6ADD85536A39D1B74952378BE279F8
+:1013E000A53C334F6D7F46301BA2B86E33D6BEA9E5
+:1013F000721B0C8F009CDE913D3CC3BE43E260FB40
+:10140000DCB09051DCD541F64636BF9D18CE5E412A
+:1014100012A55A617309410ED0C5A4E4B88B663B8E
+:1014200062C40EEBCD343D9A35ADD75F2786A3EE6F
+:10143000B9AF4910BF1633C470181FCEF4DDB2D453
+:1014400008A7E3D83A1AEF1024FCCF136E3E7501BB
+:101450002AD0D6B94725CD00FAB1B1129AC290254B
+:1014600001E2BDC04A296E7D663FFAC4A99F07A567
+:10147000AB939E35BC861AA59B7C7D040C2FA420C3
+:1014800073C244C5C279F7A99E2FBBDC6E5589157E
+:10149000B9913BACEBBD6FE715DFC7C02351BBD1A2
+:1014A000E963DFFB4C04F8E4DF6628FA4A082DF50F
+:1014B000302A8E5CDC1FB239A93F660FAD17EB29CD
+:1014C000C9E5C31D87AE7BA2F06C396F44AE4BF902
+:1014D000376082547F71897E292F992FD66CB21480
+:1014E0004D1D1DCCCB2E50CB63CE5F694F68C3D84A
+:1014F000448D28CDD55607EA06347248AC26FA2921
+:101500002BAEF5A545D5A18F2A74C0E3C460A73CD6
+:10151000A4962CD495FEEF0C57595C97EADC3967FA
+:10152000035FA430872D2FEF7C49B5EA94E45E9EDB
+:1015300002ECB8A8C7CF6E173C1E202D9013A1B4A3
+:10154000C6B083990B5499ED427867926752AEEC1E
+:1015500032FE97E46A8CC44C7DFE86B09803D3D4E7
+:101560005F9457149B792D612C67368A2F22823D18
+:1015700029447E9AA9AEDBCA816323BD80BED344D1
+:10158000E5653B9FE1EA833E6A8992AC590DEDC463
+:101590002E32B37D47687C359B1A9401697D6D724C
+:1015A000E7CAC878959504B3E6C43E3DD1B4C9AB4B
+:1015B000AFB8BE3DA502CF1FAD73F04EB162B08192
+:1015C0003899F2DCEFBC74B3515385302A36866209
+:1015D000A78AED0864D30E4B42099C86A602A3425B
+:1015E00015D84D9D0E5A11403BC85A8EC7161E6124
+:1015F000C3B9F59CB8D63A7C2ED8698F8806D394A7
+:101600001BEFCD25B3681590263F3B3DA71B0C2D46
+:10161000F7C9DCFFBC50BE6F1B1526F1428408865B
+:10162000FEDC0003381AFCB157A479A0FE0938EAA1
+:101630006ED60C9923AF4719C90530E0ABE9236A90
+:101640002D17A5811911553A9EB8B07BBA8CD123BC
+:10165000860853DFFB6BCCB2690D3DDE9A7F774184
+:10166000FD2EFAF6CB310DFB059F1CB4C265261486
+:10167000883EE379A3A506DF553C98F72662FF82F2
+:101680004B2C9B47D5C81A58DD093903E96ABCD8E9
+:101690007FF69FD01B493ABA7DEE59898B83268805
+:1016A0007BECFF7ED6582FE79F10B52857C5FC026C
+:1016B000A5EB129BFCDC691FC66AD1AC9AA531353B
+:1016C000B4A845375752BBF41E7E25C2C42698AE37
+:1016D000A8786C853C54EC6407119F0DFE8D8458EE
+:1016E00097B7CFECC261E3EBF4B342FC1ECCC62F3C
+:1016F000B5C07C9ED30796E1C3B80A65A4ACF11BC4
+:10170000073B0BDDB16CC85BBAD04F7F37E7501396
+:1017100049CB150534F1DD72E4642E676D1FB82CDA
+:1017200074FBE7337A9C286CD9E14C87B74D68B1DC
+:10173000E1358B7214C8075CA0845ADE6FAB588900
+:10174000267318BE7BA67E41F73ADFB3D252A6BA03
+:10175000F7B66FD7ADCC4C5777627D6479465A5354
+:1017600023851C4FF8FA9D3B876F3DF760897B4EC0
+:10177000C60DB086600C03832FC9C46B76D3125498
+:101780001A26C9D6BA0A6394966E029C61B905847A
+:10179000B57B0AF9945F0F48E2DDFBB98B8B47F309
+:1017A000408F3D3AE08E72561174598ACFDC3F0863
+:1017B000F03AE5D05CF2E7C3186F0F1BA3D40BF827
+:1017C000EDE759E0DD5046ED584613D9C59CDA32B5
+:1017D000D009AC9DA603EDF831DD74E0C328EBEB36
+:1017E00069FE3A947A63724A8049AB2E3908FE4604
+:1017F0005B47BA477E5929FD45BE22FEAFC49B39DF
+:10180000F6847FD1E5C546CF5E1CF06181FFAA3426
+:10181000E1FC9439B13FC37BB1C1B1CCD664D9905E
+:1018200094BE9C71611994BC2D89601F0EEB589475
+:101830004A61D55F603248C9847423C87B89514F9F
+:101840006BAE786E1F63AFDF339FA7B3FAC33FD48D
+:10185000460F7374CB3EAC313C958F7898A5281613
+:10186000B2971CEBDBDCD3154924642C5639A8EE67
+:10187000C6E1F0EF19A92B6753DB48D70507495696
+:101880007F1A5039E135AAC01B90892A766896954F
+:10189000A0B267781968901559320B3B344367152D
+:1018A0000D65623CA2B9F29CCFD80644F2DB7AE720
+:1018B0008097B9EBA2C202ECD273192677EA3C41B9
+:1018C0001061B172189DA36EF36C32E0D5F7EDABE9
+:1018D000D3404FBBA0557873BF470A2764877C5C11
+:1018E00020EE66DB06D85F14BF1A5F865B9C20CAB9
+:1018F0008EB3E12523C878E2DB5D43D0D480437208
+:10190000D86EE557CC3E145B320A39570DD176E3D9
+:10191000E90DDC4228F1B18F731007F8F7B4C04429
+:1019200070630924BD8BCBE3AB86C856D45C75E6E7
+:10193000E2711F7D1FD7C35F4E7623BEB7F13824F7
+:10194000253AE42E913D7A016CF37EB9888EF3A29C
+:10195000CF11BE3721ED3F14532EA1C2AE97E3D96C
+:10196000CC0E0C4FF9724898463E41BB65960AE48E
+:1019700018EE83E781B990E6FA2F2ED2668C3DE708
+:10198000B839356F01C903FD537AFA4A785153E3E8
+:10199000323A67D137F9AE644383A93E8815DF76C2
+:1019A0008FA05FE3B005FDFC8EFA334AF0D57810C6
+:1019B000EC3F963142A965FE0AFBC28B4378257D38
+:1019C00047BFB4DBA60EAA1A9FCBFA733D5DE903AD
+:1019D000D78930A813ECA63BEF877E44030E9D41C8
+:1019E000423310AED05D175615440BD096BB3885E8
+:1019F0001B27DAA920BE7BBF4B0A3AB5433F0F290C
+:101A000093C722ACBDC87CA7829188C9A43C84300E
+:101A1000064B4161720074AA621E99C55D89328BC2
+:101A2000A2FA41302FEA5B5ABEE9101ED97F4FA9B6
+:101A300077938E62FB5E4215AC1D6E8DEBE6DC8CFF
+:101A4000102D23AA623F7C7FDAFA743802E4E2594F
+:101A5000A5A9BD6A648D830AD9A1907242336FA98A
+:101A6000912EF06BD0D0DA0F29FB95A91145FE32EB
+:101A7000D174237B1EFAE2F5743EB5C689B8B8DA94
+:101A800013F182E6F60E354AF335A77AC4A4151988
+:101A900093A1257AB056A5371A33CC9550200E72F3
+:101AA000BC0358C5961BD43CC5D8BAAD551E8DC1D4
+:101AB0009D738164AEA74657F2E8A63C7E06EB0A0A
+:101AC000ED57620A1F357E83B18E53ABC69A2C88C0
+:101AD00003C6E80CB90AD3BD2C9EB5C0F4B75D109F
+:101AE000A8C209F216192F92FF690DA8D92A69E731
+:101AF00011DEE201B2C9F90C7D6E573FB2137914C1
+:101B00006B85A6A50A23C45B04AFB5F20855CE04C5
+:101B100020757C7DBE2646468ED4920CD4CD3C7D6D
+:101B200097CC583DFB544B72BF5C073F4441148C2B
+:101B300005191DE3AAC5214E73A8FEFB64DEF94F0B
+:101B4000F09A8A3FBF9A6B56BA08B5010D73736657
+:101B50000ADBD3F4454C9B8D1372D041F8E59B987A
+:101B6000ADA2EEFBD9662A11CFD590D38BF2AF2E62
+:101B7000B95602F3D10D08D14EFAE30D8C3BD96D65
+:101B800099761FB4A16C661E0AEE7B803821C41EB4
+:101B9000EB4F08B986A734A54A7535D9A6826DF7EB
+:101BA000208A5F4474B8F1B41847765750E607B5F9
+:101BB000BBFB04894D8A86A09DB6499020C827307A
+:101BC0002F015EA467AD625651A9608153E6980F5C
+:101BD000058826B0C1FBD18016CB88EC5FBE62B50C
+:101BE00004AD245DB93D16F4E9B791770AB9571FE2
+:101BF0005C07EFA2AC16DE189168257062E5948F41
+:101C000067E290D9701C6A417B5D8E35BF88220FD8
+:101C1000FBF6E2D9110F7E263FA45B73665EB71315
+:101C2000E1EB62C20AA5097C127A8C559CD36E3412
+:101C3000E4CF799916EE2113F17ECACE45859E60D8
+:101C4000613090896C70D6183F7CA7EBB7AEEF532C
+:101C500045CB7A95CB765620E27B552D09FF102493
+:101C6000C0A145287DBAB8FAB20B93032343A74617
+:101C7000284477E011B2631FAB07E7A26731FB127C
+:101C8000D501B28663004E00AE9456018A2078D406
+:101C90001E1A3A9C8A5B52FF0D4A05FA9E141DC417
+:101CA0001587D50315CFA666F1C72E45ED5B829843
+:101CB0003D5B2AF64EA8C5EA41D8F71035BC3BE497
+:101CC000AD160203F0808D482B45367940506BE409
+:101CD0001D511F5E1032E91A084206479486806E35
+:101CE00059BC43B72AC31335AA38716B693179B42B
+:101CF00065602D59B5E8B77FA53167E1E9CAD10B19
+:101D0000D630A7315586204C779921A9D57CD75C50
+:101D100097ED2BA29EFA91CA6E06021D92DF2E78D5
+:101D2000633D01BEB01F07C3D1DFBEAB2219D3751F
+:101D30007178D061D2A0D8AA95B56366BC968C8F15
+:101D40000EAF831658C6FFAC4BCE0BA8EFFC7FB28C
+:101D50002BF1A7E0A2BB28C1D94691DC455BFB6310
+:101D6000F9B1AAF69FA508725165434CD817CB4E1E
+:101D70004BF4927FBCAA597F51894C2D8731DD5796
+:101D80000DA68E1E15BE2827624FE0888F54854F02
+:101D900001833D90DB2A9E6C2268E2DF671FEBEF38
+:101DA0003C717E72624E339E112FE78EE79325358C
+:101DB000D1763752DBAAD07EA113073B50D82EA490
+:101DC000E3485FF032FDF1DE1C7C4F1E2944933462
+:101DD0004BA2CFB9314A223C0746833DA2EBEEAC81
+:101DE000082D958284A410BE8C4C2E48F17FA8F358
+:101DF0002C1B2A5AD0F3D1E5F3E493A84F9156E176
+:101E00006AE86139946DF301BEF75CEB4EE7F15778
+:101E1000032069CE45F33B5942330BFD754233F342
+:101E20004E3D6449FCB40932882DF592EA62653171
+:101E3000D95D42908A51A341ADFE64FACB9A6163A9
+:101E4000FFAE30EBAD0C86C8CE2851B1F071BFE2C9
+:101E5000B5B7CC3722162DF5C3F2E5D3E618CE126E
+:101E60000260026025405F8ABC2472F63AF0F7E512
+:101E70000D178928C04A765B5B5170B2F46D781EED
+:101E800048C6657A183976BABEDB18B9BBE47F0C50
+:101E9000396E7FA80837EFFE059A945D86251D1BD5
+:101EA0003A71D0CE615ADE4F27EDADA7422F900D8B
+:101EB0003C2DF5E40FA3B6D7D01E89A7BF508FD510
+:101EC00011DF1A3F382251B141782A942E85B5C6C8
+:101ED0002B732A7CBB74815FBCBB99A71A06BBEB32
+:101EE000B17E0DB6136722C5EB8D370701C5F6220B
+:101EF000470AA8C1559F47C78727E7AF3D5586C406
+:101F0000623262053D432067ED46FF720A3DE4A65A
+:101F10009DE99D5DD57C24EE59DCCF105B21414DC0
+:101F2000BA9911964ADE8134F2280884959B9C5117
+:101F3000BA4B937EFED8808011F0690F8967ACBFE1
+:101F400004301D4F58252A80D0C74AA8507F2350FF
+:101F500015521F9BABF91DFF142EF8D9AD3DA96298
+:101F6000E892007A4E6031E590CC270E656DC33A59
+:101F700024C8AC13D44C23A68B2D7767C38DE616EB
+:101F8000F323C063AD76E6EFF25D3FF3E5FFB2AB5E
+:101F9000DB87A4B8A0B56F5E3CAB7FF91090996168
+:101FA0007DAC359CDF7377F8A0A18EDD38B7AA1B16
+:101FB00033A2B0A7A16B9E4679B20C2FF7E78C51E4
+:101FC000A81D168487542EC52D1D7774A770007127
+:101FD0004872981C373A0E6B913B712C77106E70DB
+:101FE0009EF654948964658C1A6FAB379DB84C8FFC
+:101FF000FC732D5D2F18E9E0FA63BEF49313A2BCC5
+:10200000538A843E225E97D488BC68F5D451971DCC
+:102010004C561AC2D5E48BCC6393DD87FD57CCDFD9
+:102020004BDFF30DCCC6EE7099AAF1EE8383154910
+:10203000576F347669159AC8954C7ADB0E712B9CD4
+:10204000207670AED4FDBE84FFAFA1192B11D4163B
+:102050009EEC900649E65881BFE539A422324A2316
+:10206000C40A57FBA85764412C6620B51AEAAD2470
+:10207000213C1D4D2318F657C5D2A19F9A343D1916
+:10208000060490A9871D8C956E7E2253F1A8DBC7AC
+:1020900020AE0385A3F9AD9F973DAD235D1B12B123
+:1020A000FD7FCE6DDC9C85A70B3B5B907C7F64BB8A
+:1020B000F0FCBB5EE2C32D1516C7460A3E9F17070C
+:1020C0008E62452C45E9553852357248F1368DCC33
+:1020D00019F28F9000F87784D85582FA0E3D1B6371
+:1020E0008FB911CA0C3FCB92DD2FFBFC56FD9F38F8
+:1020F000F1519E3B9C0B859A62CE991F40F42C4770
+:10210000EE70173E92CF3DE4F40FFFAB41DCC1BE51
+:10211000CAA318A493B9021ACEC6583E3FD7B4C971
+:1021200013A2A31E28AA03C1F34DC0B5C1DDAAE4C2
+:10213000D5FED7FD1D585EB71A3773FA10C7BE1704
+:10214000F002ADA55395DF21EEC3D4B3EDB676A270
+:10215000DE4AF67A8F5E5D7EA6C4ED8E41ED23E207
+:102160004C6676CCFA7DB13E53EC3E12EC83C42132
+:10217000BFFEB68624D239CC45B7A21ECAAB87D6DD
+:10218000E6206B2CE504A7E1AAAD97EC7D6DD85154
+:102190008F39CFAFE274665F4E1FBBD5993CAB4A17
+:1021A0002F1810A0A76431A12345A0158C566E45A9
+:1021B000C22AEC649E51081D295376A18B8F894A4F
+:1021C000C5C5FFDC3B11213008F3F435D14D2AE1C0
+:1021D000703B6FDE13FF3C61F7C8DF85FB197F485A
+:1021E000629BBEAD4217BE2A078BC310D32DB072BF
+:1021F00081594AA5FC5FD3FDB2A82EEA577C3F4F18
+:10220000E117B8B4C3AEAD864F7D42CE89761AAA27
+:102210008E1C57C6F86C39F9C689838CCCCE8831B0
+:10222000B1E47AED4558840F6AB09EE86976C868D3
+:102230001B53146115E1590DD774BF37901F489691
+:1022400087ED566547F1893D4563DC0CCE5AFD1E8E
+:1022500069C003E2CE2C0040AE14501C5EC8670576
+:1022600078C87DA39F90985EA7C34BE0C8921A3FA1
+:102270005E539BC32F674D00B70410FA6BF21978B9
+:10228000BD8C8B6090881386111701323334C28D58
+:10229000EDC26258845583031D206F23E47A38EF22
+:1022A0007F90BA371789A256F3AD455B7CB55721AD
+:1022B000CF29DF8C96267C1CAF32BED2CACCDD0083
+:1022C000810B45440AC2C2257CDBAF4F051458AAD6
+:1022D000FB705E087554CABC82979032D412524982
+:1022E00009CEA406876CA970DB24544E38025CC664
+:1022F0002DB187274FAB9BBC8D7D010DE331BFE531
+:10230000EC9E092F844B4C223B70201CCE65F4D8E8
+:10231000CC47B5E3CC39CEDC2BE60BEE015C9A99C9
+:1023200047056C640C4EF9E39ACE5228E1184A2313
+:102330003059A634D0FFE5B54B9F02C5E36E5D0E64
+:102340007F48AC27D2C14B542FAB8B29C940DD98B5
+:102350001AF3C83B09F815925EAEA46D636152682A
+:10236000A396DFFF963315F98DA61B1972C53E346F
+:102370001E52117B10C42EE29EA47C341B6AB66BE5
+:10238000F772410EEDFD1B5507DFE8701C96C05E2D
+:10239000817F5481430DB33FB8C358FC0436928704
+:1023A0005B0C3CF65422024DD6318057640E9BA440
+:1023B0008144EF5982DCD85FF669534F1C7E475F3A
+:1023C000FEF2EC5E8CD033BE8ECEA797D880005440
+:1023D000BEE2481E8EADAF9871A3B126482AED69C2
+:1023E0002195F1EED7E35D5297B1FA618A9D346A87
+:1023F00061A7171BF44682439699602148F0B7B352
+:102400008707954027EE32068EAE2D7FF9712BB6E9
+:10241000F6F1B8C6A2D83AC915142D9371A5644235
+:10242000432741B96C643E15594A7F435221AB0B97
+:10243000F40EBAFBB6899DE7A09ABD45A4184E7E5E
+:1024400066A6FCE99BDCAB92AF121CACB2FA63EC63
+:1024500010BF33B264DDB47442DC18B3E56EB80764
+:10246000ADBD1610CE1A91AFD2845AC42DB8647285
+:10247000255E50C4A6C4056D728E70501BEB59F2D8
+:1024800099A8EC3A45043B96136FD2C0C6DB906224
+:102490000E79AC808FDCD19FFABC81AEADA224ADA9
+:1024A0002751D96F5BD5ECB6B345CE5EBA484955D6
+:1024B0007FEC731C1D86E5C479D72E6AAB93B5CF2C
+:1024C0001C55516CC1F12BBDA7113CE60FE6AA5E6D
+:1024D000B66CBB31FB1C47A91356179BC6B78C06BD
+:1024E000F2E665C86EA4F19FD357DC5EFE19AF0A11
+:1024F0002DE56600E0DC6D9154EE2D5C5F65DAB190
+:10250000125180AF50A1B5FCA7016C7EEA087A3B5E
+:10251000942C3204FABD77B8C100EFF1C31E232218
+:1025200065022CAF9BC32EFFB5D15291EDA95E96EB
+:102530009745F8F97349F2700B57DD6BB37C96FB46
+:102540001720BD854D312D0AC50B14604DD4860A68
+:10255000D74D1EA8AD09EBC5CD85F882CCF2D8F7D2
+:1025600068F2E3027CB7A424018816E2437FA05EF0
+:1025700031B1EF4193A65EBFF789837F8474CB1698
+:102580000F96610642CC5818923741C2ACC4F2ECA7
+:1025900090AAF550BEF37BFA3A1C858D2B21FF994A
+:1025A0006E30BFF826DCAC83D744783F0A1A1E0091
+:1025B000DF434AA2A1AA6C6CE4543997D1208CD78E
+:1025C000DA0B3FEADEEC48473785EBA4B2074F3C15
+:1025D0005754F1FFBA6645DAEB70AD030E67847DA0
+:1025E00066ED4392ADABB9DA8D3A0BF53F13940229
+:1025F000025D7EC7CF4D72BE89839EB42A64501C93
+:10260000424B0D24192D66DD5C4D252ACF22D10DBC
+:1026100095A5A1D2CBF51FD72C6C86C598D6F17B9A
+:1026200000279E92B043FB323E2D57C778A0E0753D
+:10263000806FA95DA12C17D31317628532664B10EA
+:102640002EBAC7244E3505283C69C39AA12A716168
+:10265000D1DBE2C75B1100F47F9E218FF0B4ACF5B3
+:10266000EBB55F625BA82D3C50025C6ED57BAC6322
+:10267000CE4BECC98DFE42178B88D2053780A96DF1
+:10268000F08F7FA05EF3C463CA6E2841B8ABFCA78D
+:10269000ADF38BBA2C7705FD13F8CC4E739991C12D
+:1026A00060134242FF587DBE94C8F5E6C8B3C0200F
+:1026B000E7F034C45A660CAB5E9D4D8DDDD5FEAEA1
+:1026C000BA0C1B8EF66415BD553E43E40CB5BBC277
+:1026D000E5F2A0FF3D042557279F45E1C547E39359
+:1026E000C33F934E9247BA33678E52365B891F3D84
+:1026F0000B02B7B53F15ADA2A165D9189BB90AF970
+:102700002E2C6F3CFD7CEF14E8E761FEFFC13C829C
+:1027100023D79E41A69C9B7C77877477A4E5E3EF43
+:10272000090753E47DB8F228B0949981BE35BAC93F
+:1027300025E75C3AEB728DB9AFC69E896F0651BA38
+:10274000C8E339A948015ECF15DA53205F596318F1
+:10275000693ADE5874C108BE981E1F4F1DFA830BDC
+:10276000FE346DDA631A8EFF8F89042C6D33F1C14C
+:102770008EA987E184A856102CF2006CD97B919A1F
+:10278000BB4C50E79A0B7CDA2F9C1B107A5C5CF8F0
+:10279000277BCCFCE2EDF83EABF85988E983EC826C
+:1027A000E943374E20A43C378097E36F128D3424E1
+:1027B0003DF759A010185AC24CFE632215022D177E
+:1027C0009BE855EA292FC30D564F8733E694223BE9
+:1027D0001A1330C6E50C7A89226FC419FADED9B310
+:1027E0004BAD5E96F0AC3C07572D51F11F61F8726E
+:1027F000B48816E1478E06EFFB2966CA1BD6E9BFEF
+:1028000083E9CBDA5D1F0193CD5811F9C4BDC789A7
+:102810004B2B5D43275D0A9FD37082EB73FB0D7DCD
+:102820004103513725074000354F4BD02AF433FC84
+:10283000E10FA645C716E8BD51353B01B945461421
+:10284000F0A5AE8D674C97A524FCB90BF45ABCD902
+:10285000D922B1873ABF73003807B03614DDF0B41F
+:102860005C65A25D021A2526464CF05322412C27B6
+:102870004CC32E9B92D13B44B58F2CBAAE1D4EB1AA
+:10288000BE80C1AB6780E7CEE4F660504A1AC6EB63
+:102890005135DDE7FBC2EAF8791999E9C58285224D
+:1028A00021A8D640740C6212AA2479D0BEE9883FD0
+:1028B0004267CB076F1FD5B7BF1ACE21B1833680D1
+:1028C000192D340DBD4D6646B511DDD2FA80F014D8
+:1028D000269C8D4EBA458166F1C19B0ABF0ED4730A
+:1028E000D891F3595330375400ABF38C9CFFF2234B
+:1028F00045184355E50390AF00C1D38FD1630C87D2
+:1029000081D7EA394035519452D70A58A5D334AB10
+:1029100078BEBE792A5CEC4452E3249E3C02A806B1
+:102920002C94E14A3AA9B75CCC8641EC8312FFC5EE
+:102930006D85D17A3B2483A12DF50419BE75E57E02
+:102940009EB0CD26F7EF71113FF6BDCCEA46612B64
+:102950005A36EE4B6802EFA11F367EEC16E3582381
+:102960006FB5C689EC56978A34978B0B17EABCA3D0
+:1029700012CB3B57C2636104C3A7BD99A2923E38F4
+:102980004A74ACAC9017980B6203318DA2190659AA
+:1029900097F99B8B781B5CF82CAE5F68FC1E12E5E8
+:1029A000C2D94660B9067164FAB42E5D97F32592D8
+:1029B0009B67117C3EF18352E7D8DE2F5DF4DF7F09
+:1029C0008D1B9709EAC768B9BAC73AC0F771855B2A
+:1029D000E2D08B1180402B7F5AD2BB8EAAB076EF0B
+:1029E000A1B8E9A0A5F27847E94827A191ECEEE962
+:1029F000741784205DE86FC8B9CEB387A58468F7E3
+:102A0000070C271A18FE9DA60A403C1890A178DCF6
+:102A10007352A00BEE7AF2B84C54C8A7CEB2AACB30
+:102A20003C929930A0C2D095029FE28C2392E78C11
+:102A30008669517A3341645160DA1EBE2A2CD7A2CE
+:102A40004FC7116C28B8734FBBE29EECC45963ABFF
+:102A5000637B6832BDA8E9691F2ACBD474BDB82B4B
+:102A60003FF3FD49DC3B060FA12529B17CEDEDB01C
+:102A70000AB82AFDE1B759FF5BD715DB6AE8C07FCA
+:102A80001337A1FA74CE1423CB47D0DC9493DD1D09
+:102A90007381F10D53979E6EBF6F57627493E43D3F
+:102AA000EAC60EDF2F92BB678858BC425B8E2E08A9
+:102AB0000644A78DB762508634A7B1A8A0BC76089B
+:102AC000D1EE645EBBFBB82E42A1E97F4D9CB232D1
+:102AD0005E2981F690CA2FCBAF1B757436F899B575
+:102AE0002EBC2748A9B00F93493272ACC46F8A5CE0
+:102AF000E5DA031A430498C33264CED942E47F7105
+:102B00007C4F7FC074F1B6A239484E8E385B3E3C94
+:102B1000AAF27A9EE5B6715B82E12957F0CA1B07DB
+:102B200075525A0E363BEE120FD4096DC1C14B6A75
+:102B300034213B736E59DED9B0C0B6D0C1C3F0A703
+:102B40009BAA04DF27722819CFA88C94FB216E2E34
+:102B50001AEB73259A41666B835D2BD4FF6FECB93A
+:102B60002BC22854F0F3A57AF9118B9AF7786E37B7
+:102B70001753C9DCECE41481C194205352FA2D1789
+:102B80007DE1C4EA9EEAFD6A5D487DD41415754670
+:102B90006FD61847A50A9AD9CBF32B77C6E6D22C65
+:102BA000AA87F55A5D9069505E0EBDCB2288FB5F07
+:102BB0001046B82F33B51A200834DEB8EB2D7F004D
+:102BC000D0D6E6917522301E6728FBBB80ACED3A6B
+:102BD00055E86749F69615DDA9CF1D5EF69B8F4334
+:102BE00097CF6C58FF6A2DC058E4B06E6FC0C5D740
+:102BF000B857AF0384469EE9D68FD642DD38728639
+:102C0000C24708C4CCAA5CBC42BA8FF8B6A03959F6
+:102C1000981CD5A0888CF60029C0F5F655743F7E27
+:102C2000339B8A757634757282B20EB022B5015D1F
+:102C3000C397389D20147C02E3F3C619FD65D7A322
+:102C40001BF0BF0A15016B1985DA12C2A7BBDB1F87
+:102C5000FFA6F88575F0C75FD0DFF8BED9D0D2AB3C
+:102C6000224F75BEDC7F8C192B3A9F2BE6E680F055
+:102C70001106754A508F67DC74F6896B766039846B
+:102C80009A82F87A17F5B32D62AAF2782203A81C6B
+:102C900088AEDACCA72099A2F6ACD3CC96E4F3E0C8
+:102CA000785F6F1AC457EBBD19A85B170559825D91
+:102CB0007CF6A54BD3018A1FA675CA8DB220A462EB
+:102CC00015CFBAB954EB20363DD6641747A7FBDAC7
+:102CD00008C918F619374291385FD30CF6AC6AF27E
+:102CE0007F238E40EB2DDA93E8545494CDFC4C7640
+:102CF0005C1764E631F1A99BF1B5EEC103AB108618
+:102D000043148E15EFA92C47B1E302BEC3C47EBFA6
+:102D10001884577C263C225FF1D55E126A0B6ABF8D
+:102D200038FC9D850A5D8674BF8EB909DA72DAFEB9
+:102D300054DAABFA1373924CE678BA704A63AF195F
+:102D4000E7E951F18B0CF64D3B78AA21E547CDD050
+:102D5000924FD2E95AF98B402A07EF5A1F823EB3AD
+:102D60007F26688A05ACCAFEAD618EF3EBF6D30D03
+:102D70006669EC6DE11E90F2F69F6DD4E1533A283E
+:102D80009E55DC8D9D566C19EE2CCF7C732ADD3759
+:102D900078DF42997B4C74EFF6EBEDF43DFF5CF489
+:102DA000DB3B56F157312C2D4321257FE7E4A73635
+:102DB000485921F5014050223372DB5A40F465C274
+:102DC000BC8D5EB0C93030813EBB90BCB436BED83D
+:102DD000DFB1EADE2C950E29188C20881A39C6F648
+:102DE0006A4E8896504D70BBE5EF7C67779AC39D1D
+:102DF000F62BD7AB542DABD432BECD7C7F00E4751F
+:102E000089437412679CB09FEBAEB335A652D88944
+:102E1000E20C4680883A90A874A6820ABDAE0035BE
+:102E2000520B056D307335AE73196D440CE5707E31
+:102E3000AF45ADAA7697EF1B0655C78F378E7DED50
+:102E4000CC3D64A41BF2141EAD5C921FCF84970A84
+:102E500036FFD42472EB3B09C2D016DEF25902A928
+:102E6000B381D3C320C8131D0D81C849AF9BE98A24
+:102E7000E4BBD8D7EE8D6062E1DFACA4F54AE6D5BD
+:102E80001DB48C5B613ED6387E0A1840B76FBC7E9D
+:102E900094ABECE4722C732F017C37A60CAA787CDF
+:102EA000B2D391BFF0D664A28594797A8BC2A2CFB7
+:102EB00055130CAE5C08816DDE1C71B91A9D38ADDE
+:102EC00034C85FB3F659AD7122A5F4D5DBF9FB091F
+:102ED000080FFD191C4ACF52CD7EEA48EEE5EC55AD
+:102EE0001814131973F32B1A00260D360A81E49A6D
+:102EF000455A16E5D067C6320231ABB7BA6892457B
+:102F00006FC1B3FF5159A4491D930C91B7BA79CB46
+:102F1000159525852E63ECCAE2733A7174DFBD0006
+:102F20008B85E2C201BE2B175E6ADE83DFB7C90460
+:102F3000785D76A3E48EBD9CD8E4BC3E3BD8892561
+:102F40007C33E6B7417A4BA3D5587A92AEFD72A096
+:102F50007B4EF2DFAEA2E585C6A03DBBDC4859CB77
+:102F6000D2BCF9B2F3807FA051A2BACFD6AA80EE2C
+:102F7000CCF3F85722640D317DD27DF9E886BB632E
+:102F8000F608D773C273965EC367D3E8FE51E87E36
+:102F9000CE10E822B31D8EA767DB3C6EC47BA7BEB4
+:102FA000717F5DA1A14B499CA4BCB458C2049FF998
+:102FB0009BA73B629043BAC502AF8B1428ACDF4A93
+:102FC000CD9D4E5F1622C3CCDD4DF76FDAA4762E71
+:102FD00011E1E79FE34ABC461656362AE8DDD6D310
+:102FE000D394B969FE3353EF945FBDEDEED2607CAC
+:102FF000F4C67CFA65DEB3CA9CC696D8816FD6C388
+:103000000CE06B19EE3B5728B2F4FF124158A31C99
+:1030100021BC0A315533F4FB028EF4BE4E00B47469
+:1030200020B015467360A2EA0A76B7750205D7FE8E
+:1030300002291AAE4E2C240233707F3FF2AD748306
+:1030400060B6BB72611C120F2CC0FCA050B4C1AFA3
+:10305000D60461699F72D0FF2F4B6DF960A080711B
+:10306000FFC51214213E43147A2FEEF1CA75D3E73F
+:10307000A34D62AF1DDB33970B54671753B908217B
+:10308000BCE7808AEE012EF9CCDE3156D02A37AB70
+:10309000310D57B7B405C7C2570C845E4894CEA310
+:1030A0008A45A2C4213DB4A4DE3913DD97500471D2
+:1030B00013C2D141AD0A71CCECADEC621B23770495
+:1030C0003D17632D6F204F24735F3F61E55C206BDC
+:1030D000B1E63E3B85DEDF7A758407060CE1B7AAD0
+:1030E000339BF860A4B4B283E73A58869536F0363D
+:1030F000460FF2E84E3BD844C4E7B9FA8B04565069
+:10310000400A647ADC63A14DC27FEB8E4BA76A3024
+:10311000E1848E666ABE242DDDD35A351136F6FA67
+:1031200057E1A3C78840959DCD14B2460E028998F9
+:10313000232A3B1B265F6A5D8403F48F25A990D860
+:1031400036C44C555BE918883724F00EF54EA4932D
+:103150004BD03F3770B812716078C5246ED97EC4E9
+:10316000E4B4CBB3EE5747A996E56B90918163E049
+:103170006BB18EA42D39A9DB70B59BCE7CC08BD5ED
+:1031800070B774F306E8AAC076EB0E055DFFE91090
+:103190007E2218087C21D43B6BA2B798411A994231
+:1031A00002023D89781778488E274432E7141E962C
+:1031B000603CAB3CFBF7E02A543E8381BCB7F7BAD6
+:1031C00005E1EABA441BF20AB5BDF8879158B91D6A
+:1031D000DBAD6172650916904E11EA6E964617CD09
+:1031E000A0CF9CFBF8951ADE8F158DE94307844F1D
+:1031F00033D166E2130833F6A34BBD6BA37FCAF14C
+:103200007A58ADE0383A74ECF0CAEA9D9E3DDCA7EE
+:10321000355DB91ACE3C8269DCEC00DF53B82C4A2C
+:1032200099152F1E2DA6276850865C3B8D86F9A226
+:10323000552B0A1DEFB0847C13F5256E866B60CD8F
+:103240004A44691AC91A93B73EC9358A3C13D30C4C
+:10325000B928EC3CB5F2395EBEAFFD8CF1F09F6150
+:103260004920AAE3B68E72C0512E2687695E363C8D
+:10327000F8E7D68C781B9C7BF3AF8A15D507B07B1B
+:10328000209ED594838B13D09B712BEFB6DE4041EB
+:10329000673B45F4FA467D38AC14915EE01904E5CD
+:1032A00079A5E30740CD8023BA1C3F301F4C2E3157
+:1032B0008D252B132C7EDEED7DE151CC6A1A240086
+:1032C0001FE5CE81A5C9E7AF31C312E893043CF4F2
+:1032D000909A5D331AD891249597649464D0FC3306
+:1032E000E0712B2CDA4EAA9ED713B34FDAC4B36524
+:1032F000D4570B914C1430366B7F080FB2F5ABA846
+:10330000DF78809CDC3A80A98FF0C8CBAAE9AF3D7A
+:10331000F4748DD10FA2931D091FD14BC050E3DF70
+:10332000FC5F82F85720622CB2CF30FEF4BDD6DEAF
+:10333000165EF583A5B6673F8AB32FF7BB460E1C12
+:10334000544A7A3AE4BA6F3C2CC81945D3F7486618
+:1033500050E527F18D2C634AD72C89A3D3A454EBD5
+:1033600009E6EE0F8466E422A07D4988193C7126A7
+:103370006C84FB2075DCE10B2DB0C8E94E680110B0
+:103380001EAA84423B53643D39C26B16686FE2EE5D
+:103390008466B6B0B37B03D2D6DB735080DA0FC23B
+:1033A000B6183B9ECD077716BF4E832C43897A64AF
+:1033B000A29FE39DE5CFF048D09514D2EE78545FFC
+:1033C0005C47886E2A3224DBD25974FD34F0B4068F
+:1033D0007FB32F2E014C1988FDA114B723CAFFCF4C
+:1033E0000B67AFCC5852A8B9DA37FC79B6E25BA9C3
+:1033F00016F0B4445CDA508F1C8E3A8FEFAA32C9B3
+:10340000338DCB40A02A5B8CAF4374B7F927A83328
+:10341000DE485C1E11F6CCCB43833A61028560C066
+:103420004D5BD275D9FE973889D3C19F74399936CF
+:103430005175B372118C19A22DA98AE16F66675577
+:10344000FEB9208A604608622A31D345D1384B76CE
+:10345000FBC1E6A75C661EAEEF6F3E4C72CBBD743F
+:10346000CAE4D83312ADF1797C98E43EA8735D3D8F
+:10347000A6DD09965FA34CEBEE35F882159B4096CE
+:10348000D80E3985BAF44565283A601387B5A63851
+:1034900008B470C5CB472EBE33245AF9DC57D1BAD5
+:1034A0001AFF59560053410517F4BEA25B77A19548
+:1034B000AC5B4B9C319527E3B0A27059CD20F98DC0
+:1034C0008FADCF272FA30F6FCCD0F5387CE0DD3741
+:1034D0009D7573B4A3EED75C9122613997626A83BC
+:1034E00030F2ADEA0092C93A8BFD054406DF625125
+:1034F000003AAC28CA9A613824862845CF850E60E8
+:103500009C8ED02873BF2BD9838EDBA5593A362DDC
+:103510003731E5E647346E0C24DFCEBAE18D193041
+:103520002C3C5D2B24ABB8216C889A3940F8BE63E3
+:103530009C494A87FC9CC42D6C16A4AC5A774194D4
+:10354000D8D5FC2B397F09AE52C463A40EE0A8F590
+:10355000B0B0879E4343FD2F6669AA05000A031297
+:10356000651E0D5B00189C977E5A235D2B881110F9
+:10357000086C94432CBCF0BDBDA94689C955F8D64A
+:1035800028CB9A43F6C955F334E027CD32A7669E7F
+:10359000BC4513751AFAF62FEF557DAC3A687F02D9
+:1035A0004BE5F4B22757B8AC7714E2DBE31CD951F2
+:1035B000D21C1E7D19E3AC60657FD780064410766F
+:1035C000D349CC9FF1BA64CD396A6E820815834025
+:1035D000CE247C0F68D759FCBFD92AFFCE15069D93
+:1035E0000A958DBEFCB6B8ED90D424761ECDD826B3
+:1035F000D5EB841E47595DE2C3D0DF14EDA0ACA229
+:10360000A319CD3A06B28C7D730F06517069122E44
+:10361000D8412243408088B2ED8CE64C14EDB49240
+:10362000EA452EA4A64F6AFD552BF260FC5CAE0065
+:103630007FE7730A696A908FEC871966F6C697BAB6
+:103640008359741A5C76CAB0840106D17EE0868103
+:10365000FAA325B9ACF88801ED6B9B94EDC07F19F6
+:1036600077F8141B426C1AF47AB9B73D968ADC904D
+:10367000AC2745366BFEAB243D739DEED2D64FDCB6
+:103680002921B22F9CD1AAF40E693873F3DDB51548
+:1036900020CB9011357D40B5E81945C81C64ED1567
+:1036A00017891D02AE3208DA09E6C3165EECBFD7F1
+:1036B0007EE9BDEB1236E9ACF27E11428300823125
+:1036C000D0815D76626AF9C886828CCDDF94A605CA
+:1036D000FFDF29B37FCB5832E22C7D9043B3ED5707
+:1036E000FC0D15B190DDC6E82E57A5975AC1AEB8AE
+:1036F0002FCA1C84F498BEFCD0566099CBD65EA32A
+:1037000002DF8ED93541535E86AC496A1E17FD40F3
+:103710001E4B8445700A2EFB129B9C2D57D0E083D4
+:103720002AEF7785B21DB5FC942700D68047E18E3D
+:103730009ECA455822CD9056D04CEF9AC3CA8E16D9
+:1037400062A00C72F8AECBF8085EEAF207CE74D72E
+:10375000DC782B94EC6E47ECD50F70E616AEEA3DA4
+:1037600067C8E8214FBDE68852C6E90C46754F048C
+:1037700085E2CD1FAB4AB772AECDC9F4415CE9C456
+:1037800035C2DDAE5C3160727C1B1FB93438285104
+:1037900055DF821E42B3D6D55DA1F3CC41F15590E1
+:1037A0007EB17E4D933B7F1B6A5F76167E882A3EF4
+:1037B00068E06FAABBC514F861D46043195A055379
+:1037C000D53F443CFD687A175535501767C3325FC3
+:1037D000E56BD558C253A7C5DBC7804BAFE9C2051F
+:1037E0000D21A460C8A65D61A469EF01924403FDA8
+:1037F0002420B9F0E0E576A8C4681FE93D7F025FA8
+:103800001D4584FFE17F54F5B93F5BD78CB94790E4
+:10381000F720C9E577BB03D16DEF6FC3A7DE138136
+:103820001B47A736B03FB733E3EA83CADE72A089ED
+:1038300077D27967336B84A0436F37BEA085EF39A9
+:103840009D20879970FC87B87D1B49317725B1DDB4
+:1038500076E4FAFC63C3CA23069AD724C94960E414
+:10386000778ECF060B25A2744BC17686CE97563E37
+:10387000CB0D1A2C0EF4D1F0FF555E47507934EA87
+:103880005A12E75804792E6A36B58A0C1676AADAE7
+:10389000DD5494E6FAFE198A105999BBB47DF255AD
+:1038A000478E5B2C9B65570E04E1DD400C1B1EA769
+:1038B000AC76FFAFCECFDB7914D8323A9D5A1EA832
+:1038C000AB02A0B65CB7AA559F76BCA3D93DE13840
+:1038D0005B09530649A5643594FC733DB539C8614D
+:1038E0003121A4231BB9614412C941CC733575DC65
+:1038F000C701B4911F1712B2091DE9166E470CD407
+:10390000BD5A6B439835190DA20C4D985A291A9C33
+:103910001ABDB1F7FA7BC2C8708C3A88936E8631B3
+:103920003349F9C0622FD7FC86D65FCBB4BEAD94C5
+:103930003F77851F8DD7B8B2A8B6C1CCEEC69E75AD
+:10394000E92BB67089A31A2366205055F14A700FEF
+:10395000E365CBDA9417BD4AA8AD36B805B20CA121
+:10396000314EEC177800305D964605A1AB70908320
+:10397000979A82773549652F4AA72C901E9B176529
+:10398000D7D063EA5EFF2E4D4556F0E514B058B827
+:103990008D272191041A8DF0879428CEBF52815033
+:1039A00008B695D7E00C4D30854EC49596E7103F8C
+:1039B00074B5A72F636AB2FD2875556EB1F5D4565C
+:1039C000A2D1A680E79EA2C3963683DFE290E9D01B
+:1039D000362997E0B4DADE4D94CA3E7F889371D3DE
+:1039E0003FE1AB1CFBC439704EFD4B1A926EB9E837
+:1039F000C85A0A3074D9B1F01B9A8D05A8E41C513D
+:103A00007ED4C2B1236A3F878871A03C6A7EB978B0
+:103A1000CCDFF72D35B8B86D6B02A3A5BAD35780AC
+:103A20009844B0E8FFD7C49F4662C8BC2FE3F16852
+:103A3000A35E710838316A01519AFE671712BF34CC
+:103A4000DA4F65FDE8078DAB250F909535F4FB65E2
+:103A500064147AA13C37427ABBA2DC0CFDDF0687F6
+:103A60008AD26C8809D6C88CE82BC44DD00E79DD7B
+:103A7000BFB81E8EA4A893958A89B49673B3CC85DB
+:103A8000A51C1C71E63C91549FEDC73A67E7BF99AE
+:103A900016F6AF352488773A0CA06558FF3FFD969F
+:103AA000B746C1C08BBD673432525037F05309E975
+:103AB000EDBD4CA47A94D819E92CEE27647405590D
+:103AC00064D4A5531CE712EF27218E10C39E21D684
+:103AD0007F3310FD3E20DA9E7801D1D3EC33D77CC2
+:103AE00074F0169E830B16756D5F2E614117E25BB5
+:103AF0002645A3EDEEDC220C930ABB2C3A946F0909
+:103B0000BEB19C9DDD7EAA61C459BBDFA3622A873A
+:103B1000C03077AEBBEB77387B667E64B875A4D7D0
+:103B2000EAB575D23573C004F47A80ED8ED5522B88
+:103B3000BF64ACA52BB668BC5B0328DB18F7B811D3
+:103B4000294045FA50AD22DC783A2E48757FD64F91
+:103B5000C5EE7B9CD78E4794DBDE1FD32FAB82EE66
+:103B6000FA485C9AC816FECB9830F8A2F03B16E4EF
+:103B7000C130CAC157E03E3DC75410734953AACE65
+:103B800099AF43C5589A92A27A68492E7393725995
+:103B9000DE7EC9E5CE5B21699036E48AACF1E51E94
+:103BA00071705D01600FF2E8EF7411EFE742E91107
+:103BB000A22EEC8416C5898A2796FFABE3A1E58C7B
+:103BC0009AEF77334E82E6D6CFC41F3707E462669A
+:103BD0003F07A7A46BE3069C44BD97FACE1A8BC897
+:103BE00007F0027C84F37CBFB6ACA6E9C0AF197EB7
+:103BF000A68A3F35F8DC3EAD975BB9921F5692A17D
+:103C0000C61B8B4741ED278E6D8DF972AE159D67F2
+:103C100025F6B0003034CC41A15CCA3168A13EB277
+:103C2000EE6CF7E1B6AF2390195D320FB73A3F9FC4
+:103C30005C416154E4CF690873B36D8CFE4F93F619
+:103C4000609EF9F0DF5C613B476FD3A12DD96EF028
+:103C5000F0280A10BD362471DA9AB7FF200AA2C7ED
+:103C6000B4DA65EA89166E3FD0159A960209141ED9
+:103C700002168BC99F886BF8C167F4675AD85A47F8
+:103C8000C3BF1BF8F5054F07830032F793C7B7365C
+:103C9000693F9B8490C357175713CEDC62E42146DB
+:103CA000020DDF966E30CA3CC367FA51311908B471
+:103CB000E0DD45B2F8ACC227B566B256D9093D93EE
+:103CC0007839049BB218E067786021FA7F77E27D4B
+:103CD00056C42BB6E09EDD5C301CD0D39CBBA668DE
+:103CE0005F32C9B93B0D842A46A427277B569D9194
+:103CF000ECFDF6E75CC2FDB4A2C5258D501D5E311A
+:103D000025494C381D2BFC18B1A2A16CDB26B97BD0
+:103D1000664E4D958D973E444087350FF81C2CF22A
+:103D2000707774EBB98FBC9C44EFE0B20784221427
+:103D3000008AC69E551E68BA101D919EA56F382137
+:103D4000F09B85B5CB025A8E4A36B240100BCEE4BA
+:103D5000BCBBA8D8B7F06EB8642B4DE36A53C8A0BB
+:103D60003AEB4856A3722A464BC81CBFC702B84A52
+:103D70007763E3D2C07BB7DEA614A8AC4101B22BB7
+:103D80002B66B2D9E7C1AFD2DD6B99026DCB9E57DE
+:103D90003324BDBFAAC42CFF5DB8062DCE32036408
+:103DA000ABD57AE26E77ACB2C5931F232418F49694
+:103DB0007CCD6EF865860716DFF5F2E95D561EFAD2
+:103DC000545355F186B10FBC7D3CF77D60DCD67E47
+:103DD00011403F6F5123FE2F97C88A4DFA1BB20343
+:103DE00055DCAE5A9763B7FA28521FAEF7E767E380
+:103DF00083983F63316DDE0B12B106BB8E749D1448
+:103E00005AA872F79AFCF12A0086120475F6321845
+:103E1000D7186F96B036ED10F74B940F38A053B209
+:103E2000E754B7512DF172D1AD23869378FADAC4F5
+:103E30006C2FDC3E2BA2FFDFFB297465BE2F0B1E0F
+:103E4000555969CB9803E723F8E10DA8C5D1D741AF
+:103E500022DA84AB555A7B5AD4656AEE603557AC8A
+:103E6000FB26840FAA0698F83B041C6F448475F760
+:103E7000E82D114E7AA9F1C211EAB57D8A8DB154AF
+:103E80005F9260199A921B3449EEDABAEF01E2B5FB
+:103E900046B15CD64A4A32121D48ED0E0194133CDD
+:103EA0003128C7DD632CEF18537715FE49C29E8E6B
+:103EB000384F2D1044A8FC25B1AC10596242DBDC10
+:103EC000451B2A483858F91758FBC4FD5F14B4AB9A
+:103ED00071C78F0A09FDDC8B8CFA8A918A060697D6
+:103EE0006FE795BDD4D8C35D831ADF3AC7497253D3
+:103EF000B372CFFC7313557623FF5119C99864210F
+:103F00002696FF1FF104ACCB145166ECB21E545838
+:103F1000F3EECD6432003A75E5B95DC42CFBAA3EE0
+:103F2000EFAAACA51A7981EAC3C9B0606258DBA5D3
+:103F3000B926314A30AB0B72F1C090AEF82486AA94
+:103F400049B272CFBDF946566229C7A8AC41A6EF67
+:103F5000278B2650F6776AD738CC221D29DCAC6136
+:103F60000102FE5CA2C64053E89725989AB7BEF9B5
+:103F7000F51D8FC8AADBFFFC195512105BDF829D6F
+:103F80008238AA2E3BF19FC1387C1A2F3605394A58
+:103F90001A055A6ACF5270722765523B380D3F247A
+:103FA00017271F866E2A064A837589585B1AB066E2
+:103FB0009A765179BC916AB73066C67C6A432232E0
+:103FC000554893B00E67970C0800522B243AC9C38A
+:103FD00071DB42ACB529A4BE9F6D5D35D39A48C252
+:103FE000CD942D3B232ADBBB20013848CC70560CE6
+:103FF0004B9CF92744805E25878B6DCEC526109D8E
+:10400000E65837E9446743DCAC465F56D334E5B93C
+:10401000CEE76B174E40A7A1D5631D9611B1880B53
+:104020003B36C5BF759F1D2393EDF736062EB7F3BC
+:1040300096841D111685AD3870D55A88BEEB7F5415
+:10404000905B9376AE8E88C7DFB78F288CCE2C0915
+:104050007E1B9B6054EF4A0B571224D4A71723A64C
+:104060001BEB2C01BC748AE5C6E849308FE60039A9
+:10407000A2E687F94D608C05A55B10CF333004D7DD
+:1040800038E48373CFC9049D546D9A5FB09AC8F623
+:10409000F588CBB0888A15353C3B096B17290BE2B4
+:1040A0006C014BBDB2A1FA7DF8441C8C1106CC7B8F
+:1040B000F9A6B1971CB987134D1FE7D058D100E47A
+:1040C000E71CA4A9C1C0570A4C0FA67A3BB1DAFC81
+:1040D00045C9C8CE8C09A6F6EBC53DE704AFFBB6D3
+:1040E00052974A0831993F454ADFEE5133AE904B23
+:1040F000E4A78C4E99B0A46CC2CEA59A6FCF47D7D7
+:104100007FBD578010822AB9C4B80EA500CBFB56DC
+:10411000CB012D9B9D7712ED87FEDD1BAB99A9444A
+:10412000CBA3AE3D1A9C6255084574531DB463C5BC
+:104130001512C77B667BB333CC00748C49183DF1F4
+:10414000BD5F2F37C1D154BCB7A3BB7122932B4A9B
+:1041500041A0E26C7E2020E514F8CE682644ACE94C
+:1041600003026A8D28881041D234B545E6D1BF3AA2
+:104170005FB489AD6CF20CCD2C793455601A8D6327
+:1041800047A7B705C290005AE1AC01AEEC5820DF5A
+:10419000BB223D8A4EA7CC3F1C77B70063E8A575CC
+:1041A000871015A941A0AF4BDBABD2E39B12C9B678
+:1041B00024E3A149741EDFAE15B6D5CE3D527F79FA
+:1041C0002C023BE25015A68C8F2D9EAF0EF0D361D2
+:1041D00098544A0C50B6427E0B37418CDDC22647BC
+:1041E00083CF885F8C1EFBD21F279AC250D5B60C96
+:1041F0004D7B5E04973D217140EFEDE3B838EE86CC
+:10420000333CA0B22CFFCB29FB0AC02DD5F9B8B6A0
+:1042100081805CF45AD84B098D86A44F1ABA32AD0E
+:1042200011570405E296987872694B53F71BD9270A
+:104230000C3E72FC4F28F85D290C618A92812A9409
+:1042400050EC5C3A91DB34A93FFDF69554035A9546
+:1042500065E347EB2701AFBB9C859A53CD316C4397
+:104260002107807AB88B698CBA1469B0B443B2B6AE
+:1042700042C188B416247706A6562446E1F6126C8D
+:10428000BA59263600C2F3F797B29A2B7B0E7DAD52
+:10429000BF928AB66BDC3FA86F900F2551BCE8082F
+:1042A000C68C5ECA3D586CC859E997307DEDA17D3A
+:1042B000B62DC63E0D6A5C2B3DF2A6D7500745CC05
+:1042C000464980BD6086A20017F17E04793D2A89A7
+:1042D000034E13FD6430AE7836B15FCCAC19D18596
+:1042E000D696AA4EF385475D491980AF5D73DB60B2
+:1042F000532F2A5E7EBD8931EADDA4006009641473
+:104300002B43E1C866E60D8ABF9524E384C9FCAE61
+:10431000026D0AFE359984416AA883CE9F96A33127
+:104320003E78FD855A6C5A0AF562B4FDD563DC2AE5
+:10433000E8BE242CED34E328785182D3CFFA7EAB4B
+:104340008E78007DDB318882C6E998766DEB6A064F
+:10435000771BC204581F539CD2D1CDA0A6B65A29B0
+:10436000910FE37FF06F09E08B1E71EFA22D8B0B95
+:10437000770651E682CB00E580E71C2E5303BB4A4B
+:104380008764C81C2DECE1BE687A3A0424ABDF5385
+:104390001DEAC3BBBFFEF21F1F118F2D218AE396BA
+:1043A0004EC0EE177EBF9E98F05B6B0E91BE8D10D7
+:1043B0002FD43AA67114DFAE32C905FA71551381B4
+:1043C000C954F3613FC79C9B2120896EB5493D9636
+:1043D000CDF3CECD278158D0D61261909AB68B1BE3
+:1043E000FA564CB560C8F096E2FB25491F2E3D57A2
+:1043F0001173B12C011237478EFEE4929875112289
+:104400001DD0BC61EDAD94D27204BEB9C2E8AEB6A7
+:10441000720605DA8D6A15C791F108F0400DDACE03
+:104420002D5A8B03B737757BE8E50AC3B2F36AF4FC
+:104430000E6B474AB0A80B97C38C0D2560A53B5A5D
+:104440000BAC4CB04010D38FEA1E872FDFF6BCC0F8
+:104450009EFEA178C33C740FCED3931F709BD6E30E
+:104460005909E6EA2840FB45DF925B1F3C8CA079A6
+:104470001608A08BE281571ECBF56D9ACE1998DBFA
+:104480000DD95129911E0F24DA3AA0AFF669E8AD93
+:10449000892F76239385C9B3F35A0811583A3138D6
+:1044A0002E587CE75BC582049E89B4A18A713D5178
+:1044B000D8C57004D4345B2BF826DA1519B7E2E0BE
+:1044C000FDCF85B14F9C73C7E21E0E974EBD29D913
+:1044D000785C8195AE4A18821F96A7189A210CED38
+:1044E000490B3C01718983A9173454B7308CA3C69A
+:1044F000F22A2137484F5FE487675973958EB9EEEA
+:104500004A53C601E68114A5F376745CF8DB005FBC
+:10451000BABD1627461F0ED57D792099ED53886CBC
+:1045200062AD8929152ACC9710227FF3F2C43E9DF3
+:104530000F0E7CB73D3F15EA2F853A2A6BD8138AB8
+:10454000B2ADAFA3B6B104C1CD62C87CB7BDC05493
+:104550009149BB20735F446379E01C76489232B97D
+:104560003CBABB2CC55E53452289E057D4ADFFA6AB
+:10457000136962042266CB243A8B09E3BFB95B8ED0
+:104580002E2DA94147D09C7506CA8B49E5E7466F99
+:10459000DC75818A5312E0BE1FE19F52B28C6043EA
+:1045A000D2BCD9F5BFCB9B6DB3DC873563640D946A
+:1045B000CC50FA4AAC85FE3951AA3427FBB460E7E7
+:1045C000F7F819E5E9A6FD3D5E8A6AD03FC2D0AB97
+:1045D0007F7A8E7CFAF8B3F15CE285A95C699A9ED9
+:1045E0005795CEDC246BD35A7AEE4A59AAEAB8968C
+:1045F000A4EEFE16DA87A618A3D2941084A6208E05
+:104600006A2B31442C4DADFE34E328C929517A5F21
+:10461000B60B3E9156BF49B6DA502C0AA168C42D9C
+:104620000293BEF9179893BEAF4FDD0BCD7241696F
+:10463000D820ADA5BC77931E1894B3EB650AB0B52E
+:104640002710051D52ADD1919EFC24E937B4AF6E01
+:10465000803282D72C0C3C863901FFE55D9A26E03A
+:10466000078BA1B15CD218FAA6A20BBBD9914B6AF9
+:104670008A8ECE8755536D604A1B03059ACD765EB0
+:104680004EC3797D34F0216A0F4075DE15CF178453
+:1046900033EA22DD067AF93EE1C1095A7FF33DD5BE
+:1046A0008B051DF88EBE66CC8BA0A39A63FD1C9C67
+:1046B0002CFAF47CDED5E0BF8A73F3079EEA59B981
+:1046C00075046DD42282A6B762F2451D9E1601279D
+:1046D000F3DF890BB076871EE6A80B883231137D95
+:1046E00077F989AD2E47478B0C08E6C7140884B1CB
+:1046F000DD349FC15D1E2A2BD7F387138D95D076AD
+:10470000182D6D23F63B43EE116A424EEDC6716DD6
+:10471000E6D7BAD77F97591FFB1FBEE512F27DC6B9
+:10472000B6DFCFFB7391BC180F8D8BD2EE1D3C19F9
+:104730009AAC78F6BE7A7F1CE00DF0B89F6FC0315E
+:10474000628FA4C8297B75EB735501FD428503F385
+:104750005FE318297A786772AEF8612C8E770EE1E4
+:104760006DD63E046D279613D01972B2826EDE119B
+:10477000DBF5B4D245AEA20536A7557B3C2168FED9
+:104780000E17E5062039D1EE4F4AF5C78F70181B7A
+:10479000FC096C99E1BD718FD16199CDB66077202C
+:1047A000A9B04AB4A4A0D4B1C5CF9A380137E9ABB7
+:1047B0009BA473063A06784FD0B3C3FD443A925691
+:1047C0007AEE345FF3F9EDE951D0988646310FB4B3
+:1047D0005DDD70874CB8915CA031AAA39AD1386F87
+:1047E0009BA7ABC3CB5860145E6E627DA5D45ACC38
+:1047F000973CCDC163B4C8EBB9634BC49F586752B3
+:10480000BC2325A5CE217A48701C79CB53F97BEDCA
+:104810008D3B9BE0C869A071E26AE6D56DA6523077
+:10482000DFB3F73B2490EA5647519D98232DBCA255
+:10483000BF77FD6FFE96E6687BA6238238E8FD20F1
+:1048400057CF6C4CBECC8FC12A9FF749FA84738E28
+:10485000FD5EC453679339F09580081268FD1D9E74
+:10486000E437ECB77BF410C4C071803CB83E031B46
+:104870005C648B3728560C826168069B7666FB2C3D
+:10488000483D9AB9FB78D3E637E9FB602F7F995909
+:104890004A4C0115E5446F1CB2AA98B261A092C2BD
+:1048A000C1411FA68B73A0A1B29CBD86BA0EA416EF
+:1048B00014DB3B147021407AF9BA284BEECD17A9CE
+:1048C000870A48CE98E154FE172EDBE8AED8C148DF
+:1048D000C8F8A8D5E3C565C102A9741180191B1CCD
+:1048E000568FADDEAB218A1DFD8DD47EDB8D368AE1
+:1048F000126115A3E2743EC1D21B1B60C8E3246D94
+:1049000089D3772CEDC244F2DBFCFB32AE8850CB6E
+:10491000C92E40F2B7E071BDD11E13FA0BEF0A7B2E
+:104920005C462B436FAAB2ECA36806C95D7E1033C8
+:10493000A947F907BE6B5B3D324C8DA3386167D543
+:10494000A5FC6CF990CF1DD0F5600A5EB2C047D4CB
+:10495000DC31DE7C8D15B2DE9795493DC65956C9CE
+:10496000C6CD3B0B7A222685EFB78DBB112BC373C7
+:1049700087367BCE7E75F67FF9C9F8BF0FC402F586
+:104980008E862D01D92107CFB7FA1E8D9E41789DC5
+:10499000E35832BBC39B3472095259D6D3F7128500
+:1049A000E0102511A25EA8C9E29F7FFE48D6A27C36
+:1049B000A7123A54C340F50BC9F25EC019C9751B62
+:1049C000DC08638938EEF5A14CA049605B3E724873
+:1049D000E74BBE428FCFBA65EB05D221136AFEFCCE
+:1049E00022EA841B9732E5D2B575B4702E47CEFA11
+:1049F000860DDFA413AE19441F273128C04DF8DC03
+:104A0000F4883E7880D10C25D6DABEBA72834C6722
+:104A10003E0B5A2D024828D3449305D40221059B0E
+:104A20008EB0818866E8D716687194F7312F30BE52
+:104A3000E5A7E4017A68883DAE1B0AF38453BB699D
+:104A4000CAACB81B0AF50B6938F301215B76E1FFAC
+:104A500048FB2C752084C1B17AEA55C57E1E28100A
+:104A6000F696B6A55A0C3F6DC95F780DB88635D756
+:104A70003FEFC40DB6969BCAC106A659B0C6089EA4
+:104A8000F19C68257F1D346D27121ABA5504DE8605
+:104A90008888C582FD5557D51DAD5C840969B80469
+:104AA0008E35F0DA44F2038152440314118723B99E
+:104AB0003358F2814F7268FA9CBAE2EE13CC9762D7
+:104AC0003A042CCE3189CA8E1EBB8D7B85916346FC
+:104AD00067CB7A99794266C78166B398539C1D610A
+:104AE00009AEEFBC6FBC570510B6E197FDBADC0B01
+:104AF000C071A25BE38A4645D82D881CC78A7F8B8C
+:104B00007321C4D2B76F3FCE423AEC9BFE2CCA89C8
+:104B10007D99175085A2C598124DF715F892BD8B57
+:104B2000AF14A2D55F54D658DAB81511A30CD1230F
+:104B3000F0492E85441E617D694BC84D79136AD7B3
+:104B4000481DC2A67B0C474FFBFAA0884212D842F0
+:104B5000E972C0AC2A1AF38FA91F3A4B662E0DCB0F
+:104B6000151EA2E7DA0F545384C38F7873E59A8930
+:104B7000BB359253F4162ED85FE0EC6AAA435C581A
+:104B8000A93818FE7B9F5A76B238DB12D35C594C99
+:104B9000F78B34266C1558E7F79B13DC61C734BDDF
+:104BA0005377D0728FD2E038757C4D09A55A2C9A74
+:104BB00020D1A34E5B89CF5FF4FD8AD3B61321FECB
+:104BC00047EE160D9BE2D8C7D9B14BF250EE6718ED
+:104BD000999D7370A8E55A3FA0EFA5CBD6662571C5
+:104BE000C57BB4AE165D0178769CDA2306612A98FF
+:104BF000B36E2EC5201A7814F2297C25E994ECA80E
+:104C0000F39C71EE2681E5CF33CD7EBAD7C40B631A
+:104C1000977AFAB5381D5EB8DBA604E6E5522E0E8B
+:104C20002AA58778719A3C6E4F2FE3CD4882BB2D21
+:104C3000C5231CE651A89EC9E6942B6DBA4DDF3200
+:104C40009FBA681E83DE1D59096F8B062396AD2817
+:104C5000AC1D756AE6B17519393B4FB4E81813FA03
+:104C60006FCD072A82911EF8872FB7D43605DB1443
+:104C7000E28F977922D7E8F0A1EBBB7EE49637C2AA
+:104C800048E95C407514AB95B11D0017EF469AC614
+:104C9000C196590B54F8A3E91C75232017BBA5CD69
+:104CA0007E854C73D55DBC9F0648239549BCAAB848
+:104CB00067C1FF196703BD4B561CBD9E8B4DDA10B3
+:104CC0000E7590F28986B69D72DE1787E36342DE29
+:104CD000DC85F22B1682EB804587A83186CBD7F096
+:104CE0000D001F6D9097334A9FBDCE079159E7B0D5
+:104CF0004E6B8299F121EA1C01B9663ADAB56F5917
+:104D000007B9531A6ABB1C092BAA6F8DE1AAA47FAD
+:104D1000C7B82C6E86212343B6CD4F5B82CFDCBA59
+:104D20004F9FBE0C89BD18887DC8B67B6210E49584
+:104D30006D4E40941FDA2178DA637140474E28B8EF
+:104D4000B61ACCB9BEF6008C5076005E58CD70F025
+:104D500086236DEA6AD8249A3AB09ADA00B6D191DD
+:104D60000678A1E2083859AA3C1B9F9C35106E2B8F
+:104D7000647CDD1EA48C1EAA5420F880AA94325DA7
+:104D80002B891C80EC7945499A0E820203616323CA
+:104D9000B7E7777BFF1EFD5AC6C447CA4B043013E2
+:104DA00061FF17D058C0BAB190C06A703408530C74
+:104DB000C887CF4F449262CE9F3A790916692B8DEE
+:104DC0001EE1E07F8C9D4AE35131BAABDB624C12AD
+:104DD00053802454F72345EF0BBBD5122456F75CC0
+:104DE000509CB42B892B3BD6AD961E6549B95EBD50
+:104DF000A33D1BE46C3B1491F61265FF5C4C73F110
+:104E0000DAF72604C47D8DEEC4ACB6756D751298C4
+:104E1000C8C4B9352C047472D9AE9248647C81ED53
+:104E20009A5E14950B3A4621CE1296D92570E2BCB3
+:104E30007FE2577E5D13A55FA76DB59753DDF2A3A3
+:104E40000D574587EFEC2C8D8599E8DC200570CA5D
+:104E50008E597EA0774D01E9BF01891C4CE4F2CC4C
+:104E6000BB7EB6EE15739D080C9316DCF85E1194AC
+:104E70005118435DB81B85CEB5F6B17E882AC8327D
+:104E80001FEF0F50816072813C32863F982A79B0C3
+:104E9000F3CC652F3DD1D5FA6F8C575EB532430305
+:104EA00032716BC607BF2461FF5D43958549ED9262
+:104EB00005C4790A1C18CAD0C908472A7FC6D6502B
+:104EC000A074A58DD7C724E67A73149B507A5749EE
+:104ED0008A548AD661D684A742CFA2D7E5627AA047
+:104EE0004B4736683F3F2276511A4BABF73AC1AE7B
+:104EF0003FED9178C4B8A1DEBCA44834B4B4ED163B
+:104F000079456020BAAFFE9EF896CFBB747B86DAF7
+:104F1000AF396BD19058E753E9597EBBD4E633E5FE
+:104F2000242E765C7DDC2EB19BBB296B71AFE21E1B
+:104F30002383E63292AFA37BFB2218045C310C4A38
+:104F4000406376EEA8CC4448486EFE84F437FF9662
+:104F500014C9D34AD339214CC4EF00E09D6F9A7A2B
+:104F6000A2A4EC72B9B8EA2651563F37ADA2DD8D46
+:104F7000F6D6121E7C323B3BC85A730F917B395FC9
+:104F8000DA87B807B595F7E4604BC8430177CB5D86
+:104F900010878885596AE3A0EF5649FCF61BFF2865
+:104FA000610F4E3BD0C052EB48DBCB5035203A422C
+:104FB00064E278415A289B71035CE89AA30CB58C93
+:104FC0001F8BC708B8A62CE0F1457F5221FCF3F6F1
+:104FD0007FFD3DE0BE54A574108DF667FECFD12253
+:104FE0004452C1B8642132FC8412BFF6ECA74E567D
+:104FF00017FF20B77307CBEF67D98E23632EF376A5
+:10500000C3A9896107F3FEAA6F0C486A857A4FE746
+:10501000982A525718F8478A4EC61120F28DAE983A
+:10502000EC1028621CBB7B737CEBA39DD60CBBE40D
+:105030004713D505F25E02DD69A214298B2F6F9606
+:1050400075E3A49420EAA722743510970D4FF6A6B5
+:10505000596619760E3DB1FD9503FFD47452D9AD52
+:10506000D64EFB5B4758C84FBDD23C4185847C7B04
+:10507000A115E4AD459AD5C62F7EB7527663C0819F
+:10508000F0A4C3EA7181E99511CE582F809A2906C0
+:10509000E815A043CD1F81B31541F410AA91B76163
+:1050A0008B5DD1995D64518CEF0506F44C2EA4F90B
+:1050B00095D1F9EB2824BC8E4F81A140953E43AF9A
+:1050C00066F4756CB87E6403F51BBB86F604524328
+:1050D00035ECD642648954D3487A80F47AED4AFD9F
+:1050E0003549875168ACC58BCCB355B053EA590CE0
+:1050F000A69D8510B009E68120A1572B36376D9704
+:10510000F6EF67201C80E654404D8859C6336C7416
+:10511000F2370CAD1ECBFF2EE9A7237605FA863DAC
+:10512000D29CC8D54FC81534C96296EFB2616148A8
+:105130001B930082356590B4197651A0B1BB8DF7F1
+:10514000A6D68235DE153CD64C569471E5641E34E5
+:1051500013BDAF9854809675766F06FE4CFBD6C68D
+:105160006CC128391B2817CF9F59CCA7D30FFF0E2E
+:1051700096A88A689BA937781DA841F01CB32A918C
+:1051800045BD2E84500434BE9EB585AD4D90F800CB
+:105190009DC6E8F2C3D466BFB49E461372A1986E52
+:1051A000CBD08E6BD9E2CE586232DD11E26F5091D6
+:1051B000A752C0E2D4AAC1C2C605FFFA49127A9228
+:1051C000AD9B65F806D690FB5405C33B63F583BDE4
+:1051D000F58F30BFC78F44F9BCABA2CF6F957E5A15
+:1051E000F530E46FC95D9E2394BF2CBA12E520BA56
+:1051F00059485FE83390D3AAC7F76E3A37FB55E4B6
+:1052000043FBC3597B74C0A9B351C8756DAB8C7394
+:105210009A74424030379F60B364253810C6C59AEF
+:10522000BCB6B7F76FF83D3E98E1E056184442E04F
+:10523000EB2435D009FA1DF42016ABBC46C650FC51
+:105240001D599F550BC94F7693E7CC268C1EC4EC95
+:105250009DF85FB6D1B382264CD83A8D6E0E311BC5
+:10526000270B42E7E51AB3E0D605BD12F4AD76563A
+:10527000056CF50D8A90C4F89A20367E922FEAAA22
+:10528000E1B4264EBC4111575497504CC6D70B225F
+:105290004857ED7E18EB275FA8BD4E0B3A961816BF
+:1052A0007B9F0120B11558E2D06594BB14AFD5485F
+:1052B000A09704037DE954AC042130CEDFC5965C91
+:1052C000E484E1CFF8139A16FD218A402D9CE9C8A9
+:1052D000437558213502871E553063070DF104D5FB
+:1052E000A02E2ED00B907E785CDF5F1D69E04B0313
+:1052F000DADB818528F555AAEA293FAB59F6714DCD
+:10530000F7D5FE14F9C61639EF83075DBD93387DD6
+:10531000521A2C960B2B91D6F6C4BCE3F50021490A
+:10532000EBBEB1C52A797668461BF8ECC9033C91FF
+:10533000BAAE8B055E12F1F0CB2352783F8B9E768E
+:1053400075DD8587E848088F52E6F20AA1AAA372A4
+:105350002A300EDEBA78F3E3B9401304E9D1B293F0
+:10536000928429F8D9C17223DCD31C5B1A92FF38CE
+:10537000A490EBDC6DFFC24A4915FAA8A55FE6B917
+:10538000D8FF6AB137D63A75CC18783001CBF774AC
+:105390003CABEF1DA30C7C81DBE9EAF2464F4AD817
+:1053A000AF89618CD195C410C3FEF65E22FCDE98F5
+:1053B000DBA59DAB80ADA6330B82E571F3B2BE7465
+:1053C000CFBAF40E5F8C394920BC5B4684545FA78A
+:1053D0009618E14BF4CA44330177D6333CB0FA4A0D
+:1053E000CEA62C2BDA6282A258B01B5871DEB27D99
+:1053F000D8AB1CECB446C1B5110F9651FAFD4EE680
+:10540000DE402D5466E4B4546680D49576C3DBF94F
+:10541000B30A2F114C29AEAD88BF9710C072F27637
+:10542000108089118CABE57D47888E27D65085A9E1
+:10543000F93C3185AD385E06347D409537E81A6F0A
+:10544000683B2BC184679C5818B43495FF0E024A00
+:1054500031B8C70043942AD73687F191535085A7B6
+:105460003809D19441C65C2C3D3D43DBCD5F20D053
+:105470002DA4604CC45E61E8674D574371914FF5B0
+:105480004B671A9F7B794FCF59A87BCA452CACC577
+:1054900047429B9CF8ACA84524C0B58CF03A08560E
+:1054A00055F0325B974BB31994D99A76B36FBEE43B
+:1054B000C0F3FBE1A6459F5F6D0F1E3AF99F8D5E1D
+:1054C00099777949DF193B78FDDBB67C72B4C74523
+:1054D00082372FA0A9BC4A5538A37729544461CEFE
+:1054E000B47C6EEB250430CEB1F7D37B469C5A6476
+:1054F000F95B4A6F3654C1379C4167462039100F1B
+:10550000505C0B7F13E82F4AA1FF794ECB87882B85
+:105510008FC6C80D95E4A768CD94514ACABCD50D75
+:10552000AAE886A17B45D9C9461CEE761605660316
+:105530005E6698D3F3CA873352FADF91BE4D072CCB
+:1055400061E20061686C3A995F2196064FB5AADD69
+:10555000AFC6A3A133075433C8A860460ED2432B6D
+:105560003F0A216032F320A11F7F9EDB806D89906E
+:1055700081957A733D61EA99FED0FD6F90E46E6784
+:10558000255A5C57836075CCAA109D03EEC011BBF1
+:105590004C80FE20FD9C42E00ECF9600BEBDE2A7EF
+:1055A0004E26D72432B711571D4086E4FE45435995
+:1055B0005341A14B79D3986116BD0EC5B362116CEE
+:1055C000894DBC9067DEE3ECB5A8D2BFAA68696CD0
+:1055D0007D14CAEB563E8A1C70C2BFABB456B28370
+:1055E00029425A2C09C1B0733C2BF131E0896FBFBD
+:1055F0006EE811B06714CEE9939B0764757FE4D61B
+:10560000F7DAFC4E75AE18BC8ABFCB94973901828D
+:105610009957993DF03808C5D1F7D846001AE830B7
+:10562000BA42EE353EF4A42CEFFCEAEC7BDA2AF326
+:1056300063B635168FD87D17E7469300282E95ABB5
+:10564000E89115D94E19604C0503337725E74E7163
+:105650009476C3EBC5B99CD90972E247C634D51913
+:10566000ACA39CDEACC7854137BE9CBB3C14A6FDF9
+:105670005FFF1B7AC43E84B400665A052D61BF5C8F
+:10568000B6041E1891839F3416D444486A6EC1260E
+:10569000CE7BD9633E5D6BCEA2D826C5C98F5F7124
+:1056A0005BD31D08FC0A8D611CCDCA4B5685A382B5
+:1056B000880535B9B90F887F272F12D5E570F3F922
+:1056C000FECD569528C7DC9D4D4BB9D539CE87DA2E
+:1056D0001A840C5E2C0D0BA0D5D7BB6E5DD6A8B07E
+:1056E000D6B70397974BA3AF2A1CC509B7DD6B7DCF
+:1056F000B0F034677C8AD91C7D8FC515E6D2993706
+:10570000BD670B37A12C271071485F151EF91CC40B
+:105710005C9C1731A9A3B6BCEF77363DBAEBB71046
+:1057200005939D52799653186D335CDF00BFFA687C
+:1057300055220D3E024E5B97B9E4C214E0CF77814B
+:105740005C36953747AF317A00367A9C9208EDFA8D
+:10575000DCC08A65751FC104C4AAC5873F620463A3
+:105760007D83CA706939EFA4E747F5F17BE2B70F93
+:10577000FE44B79EB356667E1D993EFD56469F0673
+:10578000154A69BC2B2EF2D376E308EF9E784F6E54
+:105790009EDDD7EB1F5A56A1F4302252939A5D1129
+:1057A00032CBDF553332196B53FD500E03DDE75416
+:1057B000D0AAF0853B943D00E2F6645413CE5EC758
+:1057C000FE82384B5298F6D8F3EFCCC7F2576AF8FE
+:1057D000EE4E628912C28AC98B9D8C23E30AF7338D
+:1057E000F0A6AFB0EE2BC0589BF904388AB94886B2
+:1057F00028A4FA336FB608344C3E53D21FED3D2334
+:10580000497F9E651F04BFFB7295962C77DCE939B2
+:10581000710F92F1FA80188AAE5DD45A654C0D98DA
+:10582000860C27EB9EA957BCBBD1117A0E6A2EA31A
+:105830000AB50CF869A228BE7398A96DA8FD73017A
+:10584000CA00767B1DB19A346EC0039B2213A1A1BE
+:10585000A69B65068BB2ED2904819834E2A6AB695C
+:10586000E2DBD11A70CDFDEEF1F8F4787BB402E6FC
+:10587000799D2B7D5ABB94542006A839CB922EBA21
+:10588000AB5AE06E00E8A160574A2C46E1FA988BCB
+:105890007956CDC02C4BCC9DBB48A1472265E1DD9C
+:1058A00022411FDCAE9B71D233920B5E01C6ED0C20
+:1058B000BB18EA14D30BFF2420A2BB002948332BCA
+:1058C0000DB54392E5CABE49D60CFC40EE9A974A04
+:1058D0006AB6AACA0E461FE8BD6FD224F37C81B80F
+:1058E000615C2A52EAFA161ACADC732A6BEE3CD5BE
+:1058F0009F34EE382704E1754183FE1188361B7012
+:10590000A7D7B6BC3C29931B7A658A2640AD5125A2
+:10591000E6672CE26CDAA3E2DC2B21306E2757A17C
+:105920008853C16EA4308C5D31F851895C2E479844
+:10593000615B98F97C401ED65BD2390143FA7F6DDA
+:10594000C200483373799EB810C81E55714BBB53C3
+:10595000DF3AB3371484CFEB67E2767CC1791E3728
+:105960007CF77B20D4DA60FA81EDEFC59D36D5E374
+:10597000336935DFE05CDA319C480C5D86E8046809
+:10598000B8D764CF5E6C50DE7FDD02C453D0CC87C5
+:10599000A6589FE6581A083434089B86EF92521A8C
+:1059A000F3353E3145F6C52F205D19353ABAF1A0E1
+:1059B000227DC39D923D4591EF0C8A6E4515CDCD5C
+:1059C0007B0C122F6B7E6F97EC859745F1E19A1A4D
+:1059D000384890B0DDACE10699BDC65754844FBC41
+:1059E00094EAE22F626246E736555511074BED5EA9
+:1059F000CEA661A5032951D46AB84F04883FF4EEBE
+:105A0000CDD492FC22551FD0DCE6A352350600E22D
+:105A1000B26B95C43D0EBBA4BA521810806A7BF4D9
+:105A200066A33DBCD2DF9B10D2A8911484AFB8CE40
+:105A30006EAFCAA288B73ECBE12491F57D173DD366
+:105A400075A792112F2FD066D0E8BFCF4A3A995A46
+:105A50004A82D422CAE205610F0122DCF5A45D4826
+:105A6000AE52408F34F06D0A65B2098EFBBB2CEE4E
+:105A7000C04B2F0E46E26A8524D6B6C5AEA5300FC0
+:105A8000043156ED1A386037775EBD0097F4EF9E0B
+:105A900040D6784F88E576D1FA97AC39ED0629B72C
+:105AA000EEB6DB9D9929B0DD5F0A5315A20968CBDC
+:105AB000CE9231CC9EFCA0EDDD7C534B61ED5C9829
+:105AC00082FB8BDBA326FCC0F292A425BE0FAA8327
+:105AD00023A1F003DD79107E14993406CF93D73FCC
+:105AE000363266480C6C6150A50EF15DEABFDD1AD6
+:105AF000B62988EB99F7603A51D5BCEF6D5DFF6927
+:105B0000FFB33047C5CEC80474C1267C0B23BC8FBD
+:105B10009A55378376513A531E1DE7FE4FB1F50271
+:105B20004172B8D97E7BE43763284045294F3F62F4
+:105B300026BCFD828C0E4E30010080602CA8DF0355
+:105B4000E5232B8564F43B8B51E98AEB68EC743FC9
+:105B5000415BC3C1C036435F58015357D908D55E76
+:105B600015197AB186756A879819DCD25A455C3E58
+:105B7000997ACE585D66807263D006759EDFD41127
+:105B8000FCF20014D22778F5A77BD95907325826A2
+:105B9000E8767CA9B6BDE5042E9D0C0D53FB57CCD1
+:105BA0007E64A9226A5A590B0CEFC0F326956C2526
+:105BB0006CA564E585E329F62692EBA5A6BBE46B0C
+:105BC0004128414C28597690115B9157598C870197
+:105BD0002CEAB134DAAAFC3000E3EABA892D6CF879
+:105BE000E3E1DBB94AE03F21BBEDD158E752B89B76
+:105BF000FEE6DCF7CF80F40543306A0DF4E2109F37
+:105C000021D31D7FB490064C7B1C4BEE9DBC030042
+:105C100035B6DD9792525C0B990186C9275794C817
+:105C200028371F65606154D115BFFF204992C61DFA
+:105C30002773F87DDEAE64196121F39157FAC088AD
+:105C400059E0652C40503C19950E271D4FE5F5A4F1
+:105C5000BC52BDDABF9FA970DA7E812C04AF6AA363
+:105C60007E27C3849BBCEFC3E9F41997FADC26E8CE
+:105C7000552BA97B5A6C8C5060C2FED1574A9B7C35
+:105C8000ABE819A8F342C725399AAB5C3957882A83
+:105C900002170458D347DF5E730B5332B0EEC114C2
+:105CA000BB6CDB20A5ABAAAF49BAC4528C01E97228
+:105CB000480F765F651E796D0C7A7A3C1252139408
+:105CC000379DC34D76C38FD52E115C2261C633AC90
+:105CD000F20B1AFC3A1F7B484A90FFD3811705BC90
+:105CE00052EA7E4E97FE5F3CE1AF7548099E86CD35
+:105CF000A5DFF3BFD62E5CFD1018EE51296EFD51C5
+:105D0000A1F728537949E313FFCEC8F431C126E542
+:105D1000FC7379B821EB37B5B56EE1EEEB061F7E6B
+:105D20008000DE8699586F511CEE92476B47A6148F
+:105D30002A9B06015F042A7123D246296D4D17E381
+:105D4000C5F3B04BBBB3E7A0CB46BE0BA47EB58D6D
+:105D5000725A2072F823AB69BD246F1D7694B42566
+:105D60007C9530F6BE6A2249F93C8B34B123D3745A
+:105D7000AF9B06F9CC55ADD1A758198CDBDDE37389
+:105D8000A08B596186231FC5AB6E641213A5B3D8CF
+:105D900037C882AC9DE3D4DB95A17B914803F53FE6
+:105DA000E495E3B40E4C734F735BDADFED18D33038
+:105DB000B08ECA948CF779126E4200B6092AF2812D
+:105DC000F4501A034B575E6D3C28DA162F34CE1E62
+:105DD000F3F8A27CA3F5CC00B127501C4C8F0B8D9F
+:105DE0003402036996E18BEBEEBB3EF4C9AF4A98EF
+:105DF0003EB0FE05B3330EEAD48C966ECA263292BC
+:105E0000BDF7831EB274E00011363EE9C1F3805E37
+:105E10008FCB484A235185517F8DA3166253557409
+:105E2000038A8E0949562925C51CA19874180C505F
+:105E3000BF551C8C1E99CE99934C9B6BFB727DCAEF
+:105E4000B064F577CD20D392E73C5265079953E7CC
+:105E5000C3CE8057CACDCE0476729B911348C9CC6D
+:105E600013C19B53AAA0E3C1A8462992121A57A8AE
+:105E7000B9C2C530B3632DF9611488CF9F52552440
+:105E8000871416379818F52E0E17BB0734368BF289
+:105E9000DB0939F3D7D1DCF7E3263ECC84A37F427C
+:105EA0007818FDBC10B30DA927FFDB8664BB2E5FFD
+:105EB0005C93BD286BA07E5E3B481E6C9D52FB44EC
+:105EC000C0B5598CCAA5E23865A75BCC991D6EAFE9
+:105ED000A54F02B6EC5EA1C33A9C33734BEB612D28
+:105EE000529290EEB7D9B2F1AA8E0E2AA93942F693
+:105EF00092E8F365B713ADE1EFAF5BCBD9272B6B1E
+:105F0000114666DB32C14EA67F5306EDF70A879F26
+:105F1000C1B8F2CE4E8E37531B63CF05C455E8B8D7
+:105F2000F130BB67CBD2B79AFFA9EE4F06CCF3375F
+:105F30005405A239D0258EA4E8A05AB00CBEE025A5
+:105F40003E09D93F7031F6EDC6BCC4F1A938D84B33
+:105F5000E3846AF362A5A5100EF0A0C32E5BA4EB48
+:105F6000E948386A439F8D9B341FE4ECC6E89312DE
+:105F70002F6467E33DD3E0E54C251A7DBC3E88CA1B
+:105F800048C02A43A1CF95C63AB2F3F18D1A8A13BD
+:105F9000A094A19EDF88068132D5AAC855BF778A12
+:105FA00017E90501733E2E4ECADF9BB3E0F56F9FE4
+:105FB0006E3A1AB3689E00356D301D517CB31EA930
+:105FC00058CEFFB47A2DF3FBC3C583CC227BAF9DA3
+:105FD000A824527DF31BF0BBE69FF1888B6A6D8786
+:105FE0009D67D96F8C86590F95A9D3854374FB7D26
+:105FF00045B3C807DA1B152B3E6B664BA80A80F326
+:10600000A57323AABF6C4581DD292271630C8347E8
+:10601000702E0B88ACE019F095B33BEA5EB007EF49
+:10602000F2B5F3EA44D125C0BD013B8FDB6E18E029
+:10603000664B37FF2E4128D996CEE827F7F326FD89
+:10604000648CDDD66BE65745A87C5AB3E148380E20
+:106050000BCD2872FD498DED3EF41B6C4EC139EF1E
+:106060009FD4C44B14A65D1716594D6891E399C48B
+:106070003969F038DBB0B7603AFC9560FCCC086059
+:106080008D1567491FEFE7B97CA11266E3D81B574E
+:10609000819A55744DF5A409BBE207F02508E41474
+:1060A000A5B5A6E2CB7ED640F27970EF19B78AE6A5
+:1060B0000E0BA514C28A64985C841E0ADC8B03C490
+:1060C00015B8A940851B9A39F97C061E0A699C2CD3
+:1060D000CDE2E1C027AF0D4F3783AD828400E404E9
+:1060E00068F7FCD284CEC543D10C3662FD15956E9F
+:1060F0005D08746D039329B740D7E265483041CC01
+:106100006D70F3EBBA611D6F136EB7001588013423
+:10611000C0EE1A37BCFD1EB9D71C805674732441DB
+:1061200024EC5F048CAE54231AF7E274F5C46A3889
+:10613000890C9BEE57CC9CB14F98DA55C3606E70BA
+:10614000FAA51BBB8C007DA671A013958E21182388
+:10615000242FAE068A3B565B91A0970A4847C21D82
+:106160006A243D6B43F120F57222F30956D17C710C
+:10617000B9CA284023482259506C0216E9F1AC9361
+:106180001CFDA357C231B2A61CCF51A8F9E9FF1ECE
+:106190002EF4EAED2D9046C3AA1EF531D265556363
+:1061A0000AFA19CFD65CBF417916805CFF00069EC3
+:1061B000CA08A8786B2128F5E24DF94706C6492898
+:1061C0004D417775618B4E36B48639E0A91D493E45
+:1061D000653E2BAEDE6F9C266C6260335473235D8C
+:1061E000C0275145AED6C10B32A14AD848612A9288
+:1061F00071174C3438DB1A70AD1CFDE0B920E46631
+:106200006DB966DCD59BAF4CDE9CD9EEA0A385CDE5
+:10621000B6FF522E4F4EC96DD8AB3EBD825966BEF9
+:1062200084E4B8B0D536C9EA398F1DCF6B0ED7F8E4
+:10623000458173BE42436592DA3B793509A327E471
+:10624000F69F7AE89290F1D90DF18D5A0CDE05DCBB
+:10625000E07D0ADFA5FEF860A4FC499C5289117616
+:106260009AF61F838A659C97BC16654200FD0C4B0D
+:106270000017CED465442B83FFE50AF75C39C04B89
+:10628000CECE1FD9C9933D6FBCADEFF778949DB7C3
+:10629000811E9F13157C5255033D37ECAA6DA51F37
+:1062A00087D75E2EC5566A4A4522AA416B21DA2558
+:1062B0006B3A21D5061DD35390866E7A55865C497C
+:1062C000677FC89F708C703502E5878A31B890A3CC
+:1062D000FB6A9F51506CD60DB77FE92D80B691E2D5
+:1062E000A9E49473DF2CA027DD535619FEDE844504
+:1062F0009172E8DE0726B00BBEBCCC894A55C55169
+:10630000FD188E8D6D3FAFE7850D8EFA6EFC85EB27
+:106310006470E3788EF1C1D12B9E129508415D5CCB
+:10632000BA74E54546F4E88B5809595F43C94413EC
+:1063300078D25537B088441638CC83A1A60C5C744B
+:10634000ABCA19375E90150C594ACFD83E0821893F
+:10635000281C1A93417875C8FB234A773E5D8B2C25
+:1063600079510D83142F961A4C68C4F0E5B73AC8DA
+:106370003015EE415D2CE7205A6E7FD0D4CF0671E8
+:106380005606B63623AA79C5617D18B559FC47DE95
+:1063900048C89E4766BF44C7FBE1D5F6D2452ADD13
+:1063A0007F37750A4851316AD0E01120FAA30F51A6
+:1063B000CF419A3869A70647F211AA8A90EAB3A496
+:1063C00020771FD805FD50707A180BE7CB13B478EF
+:1063D0001C68C14EAC5920016FBF6CFFFD8F86CB8E
+:1063E000F9FFA747575ED465FEB74F9C7B7F910CA2
+:1063F000DA5554D1AC065E0D9640CB4D3F4641FA7E
+:1064000001F57FFD7BE2164CDF8FE0E2765BDC8AF4
+:10641000748F4BAF4DF51564050A0BF4F1397758BD
+:106420006EC5F87AB4CF398521C3A40234C3C0EC59
+:10643000C0FB1F7ABF5AE5A5FAA306B83F26F2EEC5
+:10644000128E8A7B32DB6FCB79B97B3B68A4DEBBD3
+:106450007F3E6500E65A0E0C276829FD3582997B40
+:106460005C3F2AC2B049CBE578413542D779A36C6D
+:10647000E9B2FE3BB0B43CD5737685A0B341C1030D
+:106480007259DCE2E5953B95A8EEA464AF7818C498
+:106490002B81C9E61A9F6A75688D85C1828436474B
+:1064A000C3DE4DBEDA1AC27B5D029D6802910617FB
+:1064B000B91E0BCFF901486CF0B3ED23F67B380F12
+:1064C000E086E30F20525278C5C076D117C12DFC6B
+:1064D0006D77EC9223887D6ADB4CD6703B9F8B9E58
+:1064E00013789E1067E63669E3AD4859CE3801C48B
+:1064F0003FF994181136328CA679C7D2D346767FED
+:10650000F24964C6C3C053D4E41991AC2BEEF839F8
+:10651000643637BB12C82B3FB477A86D54960A5225
+:10652000ACC619567E2ACFF9714AD54946AFF3FC5D
+:1065300088E28E10B7239DD92D97436FA98F3BE238
+:10654000F5E609AFA074546E59FF7DC9B617A3BF15
+:106550002D8EC974F3ED6581E6DA5A2A94F520612F
+:10656000A4547543A5862577F6046608B5820F8185
+:10657000CED9ED8496F079238AC9FB4700A51AFF8E
+:106580004F9F74114172B640140E3F1951053BB92B
+:106590008230EBBE18A5B12BA4EF854EA73A86E258
+:1065A000EFD2C12104853950BC3ED67D69586CB309
+:1065B0006B38B7792B9269A59F5C0BE2660983D88B
+:1065C000A233F9B94379FAF6F0DDBD84BD7762955F
+:1065D00064E550BC178A3C7A8B9D87158FED5F422E
+:1065E000207666705713023C2A29852CDAA2F46DB6
+:1065F00007EDA32488C0E7188C2A1CB2AB0B6752A6
+:10660000B28E73161615951B3BEFC036E684B13C6F
+:10661000E11DAD8EA43A955BD5927A9FA4B4198AF8
+:10662000E812F6F6D6C11002D84340DA2CC9B0679A
+:10663000C856A7BDBDB95CCA96B7A3F26D025C256A
+:1066400017DEEF4EF32F95FBEC8C111F1E4711E167
+:1066500064AF1A7D0130AF6C01CA0109DD4DED2731
+:106660006FEA925ECB180FDA4DF3A25FF88DB5C3D7
+:1066700062E348E7E86F502D8793474580DAFE953F
+:10668000316F2DD5BD68F7F1728B42F1E174CFC245
+:106690009A5698F5F78692A722D6C83B8ADE3BF633
+:1066A00097D38FAA4A96EF6935B031257FACF613A0
+:1066B0000249EC2C5ED1528EEEA34392956889CEAE
+:1066C0008C8D093BA1D0D57751F28ABEEF1E06F61C
+:1066D000FFFC5E3AA7B1EB6D916D4548E4AC66E016
+:1066E000A77486075F4F6A3D1427D9474900ABB4AA
+:1066F000754FD1D8F9E379B21C88020D19A8981604
+:10670000FA740378E1DEEDC6DB8A549C59F9764BC6
+:1067100091C0EBC8B31D97B9C052FB83AF922B83D6
+:10672000B8318105A0166C886D97EE7E62B84C5723
+:106730004CFF4AE669709A66CE2C12AAB00BCA4783
+:10674000BAB48C0BA8064C8771A00637441380A3FB
+:1067500008CA57D315FEB0263E7ED0898315E2982D
+:10676000E593EDCEB98F8DFDB661D80B93BDABC768
+:106770008503ADF3CBB236EF259F94CF731BA1A950
+:10678000B70D9C76E86C188DFD33BC287C01DFDAF0
+:10679000AF6FE94EF7DD569EF745CA96CEEB5FE444
+:1067A000B3C6D5D7F1DC74EFF1045C121F496780E2
+:1067B00087CD9308BB285315D5EB56A33D9A137D7F
+:1067C000530D00F6723E824C3155E8DE516E174A89
+:1067D000E48893480859D47B7FF8B36A875F83774E
+:1067E00053E2C658B2B905454F68D37F9970EF5B45
+:1067F000CD0686AA1D5580A7209C78F55E55100C05
+:106800002FB2D8D48CA9BFCD6C6574EEDCA35C1913
+:106810003B360F6772AF29A18B29EE8EA64EEA2078
+:106820007C9E9F8FE05FE24B8A3CDFB6078D099C20
+:10683000A47ECCAB85BE667F667B0C61B225C4E4CA
+:10684000EEE702B76F84328FA925FA539C6127AB1C
+:106850005F867670A3C30B3E82B97D97B0620679DE
+:106860009876D2FF2308279C073066B8328AAAB6EA
+:106870001D1BB704967F792C8326EE772774183773
+:10688000B36D76931D5E5B9ADA08880B4409395C18
+:106890007AFDC7F9E896B6F48A63114FFB61DF31E0
+:1068A0003BEBB19027B5B8CD018C396677F6569899
+:1068B000DEC6656126AE6351B08A435F5180D1D692
+:1068C000B00DCFC7BD0236C06A170AFC915CA87D27
+:1068D00061555961DD44C965983BCB251E1D5F6A32
+:1068E0007C68CA46657B16393D4CCD9CF77B63ECD2
+:1068F000589F9F592E771920CDAC80A4DF139ED3CB
+:106900003E74745E5A01AB6BA47CBD4465B49DD5E6
+:1069100097058204AAD3C1C238CE33DE01523C5C53
+:10692000E660A0CE7E3BBC24DB84961A8CD1FC7F33
+:1069300041226CF3535FB95D1D4FF4B132D7C74CA0
+:106940003E511DB6B5060E3FE12F27AF32135BDE79
+:10695000BB462AA52C2712A9EC38C9E1BD4FF33458
+:106960003A3DCCC828115634E3B4EC8BCF2788AF1E
+:10697000E79B38EBB483F5CA34508A4527FDD1AB89
+:10698000E8FF9151E2E2689036F3FC392E6D068003
+:1069900033A9D06E8435EC79116EA2CB94CC159DC1
+:1069A000440D77ED546E9245656FE1A6F16BA19BA6
+:1069B00089DDADC8E0052185A11B02B178BDD5D028
+:1069C0003276440B254D1B1D5EAFAF36EF3980A1EB
+:1069D0007B608D011C86044E3443E3FBDE8CB8D112
+:1069E00034E301D61F1CFD62FD0DBB3C000FAF64FC
+:1069F0002D908C5103E895C7ED52E09B95E64F4BE7
+:106A0000435B8B9F2EC07B5339BF3EF225A0FB5AC0
+:106A1000A587164EB2E8B3CAC18AE2772487C64E6C
+:106A20005675A747A0B44747DA907D0460BD09F3C7
+:106A300056F3FD42B43CD059054BE4918AC172AF84
+:106A40002237CAFB98AF6715EED8BA8AED4506FF24
+:106A5000A316D16581522F141F3933F65923DA5A00
+:106A6000E4F0806A894F207F33B3E399BCC6CCEA57
+:106A70004780659F13C3568D719D726DA33DEB2FAB
+:106A8000D0127D387A780A28263503CD8FFDDE9125
+:106A9000519603F8D3E056FAB28438DC8CDE8C6C65
+:106AA0002F07DA96924ABF8A9BABA670FF92D16BF2
+:106AB0001620EA4DC8581ADEC90DDD60400C881654
+:106AC000FE0E9A9015BBE7CDC164590A0448E854FC
+:106AD000609F18ACA813CB1039B1ECAA2DCC495744
+:106AE00085E03E12A61DE3A3C26CB0D16227CD5152
+:106AF0004F45EAADC2D9AD9593F82EADA0B685321B
+:106B0000F659D9BBEA7C22A852BC7D3E1A46EC322B
+:106B1000E26196D2C1E54A273DFA8FD6B8E66DB05C
+:106B200066368AE2581DB1F35B0B2610029005957C
+:106B3000F951047D1B6B36706149A9A74741DC20E0
+:106B4000E73C34C29DFB34DA969E9E85F480D309DF
+:106B50007428B9054BC457881EE17115B098397770
+:106B600039DDECE396FB4FFC1315EAA276F23DC843
+:106B7000799AC909BA993567299B3343995BE47BB4
+:106B8000B698B328896A2EB874F1600D658E2B22F1
+:106B900052458DE5A68665FB0CC9B7C6FA1B342A9B
+:106BA0001B29453F625066AC7AE243B7721D2BFB4E
+:106BB0003EBB99780999811EF45775A16CB6B856F9
+:106BC00094895BF0815764DF169BD52AE6AC1F9A47
+:106BD0003A8D81963983AADFCD6287274901BFC8E4
+:106BE000F10090BDCCC3BB78FECD2813B14ADCA622
+:106BF000562D58728027551695E7A95173825588EE
+:106C00007C5DD3CEAACF983A8B8374D7A2C13D1EA8
+:106C1000BF283EEC7EEB145FFF5594C6F0B0B81B66
+:106C200071DAA700EFB57ACDBE7A7674B79C4D9332
+:106C30002122B2736B0EDA836A93C3594A5AE75919
+:106C4000357E43B7013CDDD18072051CA28533E05F
+:106C5000E9AF19B2092E30DA3237E2B437A552C2A1
+:106C6000800AE47DAA89E4EB1553B3E9F7415C8D12
+:106C7000CC7B5931051995960CB5253A12BCF31405
+:106C800075B27BE3CA5A4B0DE1D1476C7C2FD6C35A
+:106C9000BD1F4BBD110801A7FEE8E20DA0D18D027A
+:106CA00012DBB8EAACE13006FDAE43A2B9A945DC7F
+:106CB000191C7945C7B2886AFAF33B4BF69770B254
+:106CC0001FF7A1D36F60F787D74E2F2C7745DBC90D
+:106CD0001ECC02232D562B599E69087AF816199757
+:106CE00086786111C53AD0307996FDE8C717BFFBA9
+:106CF0003DDEACC40D32F7EA5A16547EF1877A466F
+:106D00005B61433D16A6CF051C4E2A2D8A00D02F6D
+:106D1000DB375F180F0CCC55BEBA401C90504D9E0F
+:106D200098DD9923EF0D21775391D811CD3656E98F
+:106D3000EC9DE36A0D6B354366CE04319CC4DF2FB6
+:106D4000E76B7D493CA97D67719197569720D4B038
+:106D50005497F285FD6BEA7C3D5D68614BF3E13B46
+:106D600028A1903B84ADEA1AF39D13D325676C0BE1
+:106D700091B069152960410E76A3090A4CA207B3A8
+:106D800039AE0412F4D6EBD6DBE1370E5A41888DCA
+:106D9000A7B8D163D313CE018D2C1675547DDFBFF8
+:106DA000C04895D6092AA8219E3343EF4FCADE7406
+:106DB0003C85983E3DF7FA2C201C3F3D4A7B7E2ABD
+:106DC000F2CE9091A2760BB0AB28C2F3580BBEF96D
+:106DD000E26CE25199925BF5E6E93145723859BBB4
+:106DE000423BBFBAE56BD7236DA578591779DBE431
+:106DF000B78DA91C6D8C1C3EC87050E3FE38A5FAF7
+:106E00004D3611713FE2FBECF75B528884047DD272
+:106E1000E9001B7CEA669FFEC83B882648AF0466F3
+:106E20009C672946AA726B2E651460816B51AD91E7
+:106E300078F413B8E916A483829067F0C2EF149A2D
+:106E40008A3AEE6C753B954BCC91BE556653B85B58
+:106E5000CEDE30C42193EDB57EBF12FD2F269822E1
+:106E6000BA0EF7E699CAA5247F08094F5B69AFB54A
+:106E7000398289B2DD0188F14C821F35908EEE8116
+:106E80002DDC7E868058411ED13B8775CB55355B06
+:106E9000EC46233344AFE40983F57147453DE7D41D
+:106EA0000159BCE1B0BD63474E05D404DF504677BD
+:106EB0009CAF496F5AA8F6E8368B62A9E0443712B6
+:106EC0009CC648EBA970972B803730BBCDD7663670
+:106ED000F0222691968B43A99BF0B74D05748CB296
+:106EE00015AC470D1B24650FA655E0C52EF862971B
+:106EF00096EDA637D6ADA52B303F5681DB819403A6
+:106F000062287F61DD43BD06E6484A3C43E48B9638
+:106F1000229CC369C22D3D303A50841894FE91C022
+:106F2000663ECBE6EE37FB5DB3E31B0ED4BAD6DA92
+:106F30008621EE3C66F3C16A5404F70BB3AF6ECA08
+:106F4000EA6800D5A4047F9DE594FC2EC35E377DDE
+:106F500049D711F39D8A522163D3A1D11F66FDE465
+:106F6000BC7DE1E79A9B1B33FF7324D379B2E377AF
+:106F7000A9DA7D03F9CAA58AAF47F90214C0B5DDC5
+:106F8000E432327F6B8F014C0A52183BD27B0DC129
+:106F9000BB8B4B093E1D778F47FF86AB4788461852
+:106FA000066B925085DE11F9BBEC17A14521588E76
+:106FB000E2C1D99281003BDB09B507F8FA6BC3AF98
+:106FC000800CF1A6BE6A2D5505F63CDBF1B5A82371
+:106FD00040ED9ABEE3D928456F5065362DCCA27D91
+:106FE00022A84395F27789C81275112562BADB6928
+:106FF0005CEC638B9D3C633C1AF8FF41BE49A82EB4
+:10700000DD867B18DEC46B51AB35C08E8A36202FEF
+:1070100089214A433BA770B5289A15121946D6DD37
+:1070200017F346DF9C037A7CA37FF822BE19004247
+:107030006714491454172083D1FFBF38B8C2D390C6
+:10704000D6EEE054274723AE0ED6AE10C47463D0FC
+:10705000E135E0E298CBF2A3B083DD5C6F9A99272B
+:10706000DA0E1FF9401074407B487A10C5AC433CDF
+:107070006D3B9544288D1C0DE4FB7ABD47F4B2B3FB
+:10708000F683E944E7FC23F4C684F8B1912A61C889
+:1070900050D0F27C7B011DEAACC713335971F6FD69
+:1070A000B8B8C55ADFCE92027657CE275A68529D9D
+:1070B0004F281CF71DC10A23F71EAB7C56B736B705
+:1070C000A34E6D3E64887F21EB47033DEB996E5BD9
+:1070D000EBC392996BB5E5ABC1C5E5F51831E58019
+:1070E0000EC023D52271761973D7027BEAA36A24D6
+:1070F0009914723CC64BD8E838615AEE7F26F1C528
+:10710000D246A8423B1D8D1A42AD4F7F54AA435A26
+:10711000A79EA80AFFC0E7F06A9EBFC3A43E985985
+:1071200052107CE5B11B0D62C20AD5869C6B1D9185
+:10713000CB9509B3A49EA01A295DE5CEE7E1347B87
+:10714000D207FF5708B28EB237D9025A8B65C47086
+:107150008A9A964A185369AECDFD39F363739A3E05
+:107160007E1408F310B4C544A66438AD57E8E51E94
+:107170009919EC58CE976985816093EE13D59E7D61
+:10718000D7E2C22B04E859C51DD43F2F4A7F0865BA
+:10719000D010145061B592C100EB0C488AA2257B37
+:1071A00071C8995903C76C70B78B882873025C81CA
+:1071B000C3B31A6C754817B200365EE9C673AE8E5B
+:1071C0005146B816D2FF34FE47D4E2AE6D98D9D3FB
+:1071D0000166831A2C669C44DFFE78AEC614C40D8B
+:1071E0008FBDD8D1145030C90B873B0D31373EDDF0
+:1071F00008A6D60C82307BD9FEE455C2852F282FF5
+:107200006FCD0209CBE6F3ECBE6899882EA1876AA0
+:10721000504F28F8072263A4B750E7058AD2CBE77E
+:10722000E8756E2DC8033DA766A437C279FF0AFC36
+:10723000A0A76E2A94C9F769EA08B528BC85909D75
+:107240001CA1ADBA20BAEB7A868CAC03B42A8AAC06
+:10725000AD3B2158D41C2DA5287BDB18927FA5AC13
+:1072600033F6A215D90F65D7C8EF007E105EE83659
+:10727000E6A681EFBD9595045EAC055C9DD93371A2
+:1072800044161FB5FB0760EB6093E7640D954D2F27
+:10729000DDA00C826AD03613F75C30D30192F6E899
+:1072A000262B984FB360E5EDC5C66CBB26783FEB47
+:1072B000D11A7F8607A58F10BCDC2FED808CBF6BA9
+:1072C0004D39D63E012F1B138F3F36B927D3237775
+:1072D000E9725A06AFB6E6156140F116FC74FE6617
+:1072E00019CBA376A3478B09F96ED10C71EE0DD2A1
+:1072F000417F8E8E1AD39164360EB3B0B068C2A2AD
+:107300002B1F5EC6809639AE637115EDE3A8FDC1F3
+:1073100007575C9D86E679A46DACED5E82166F0121
+:107320002C4A8B67BC3E440F3E5DBCA60075ABEAA1
+:107330003341708BCE1BF35D9A09428FA18F403C85
+:10734000106A182C1CDCD1489AF032D1A9F9A3316B
+:10735000C87D6754EEE2FE0358930E781E553B2716
+:107360005A73C5A46E4E358DAEE3D688A4A49D3E57
+:107370008CC34240B06157BDD4DDFDDD6D24DB55CB
+:10738000E9D54AE35D9128F7BE04D7002B7448780D
+:10739000AB6E89C8FC048570D8C82AA86B294D1D1E
+:1073A0002008F845FA503F1848BE59306D8B973D7C
+:1073B0008CC84080612CE0A728248A53F7CB85AD88
+:1073C000F9C8A49AF0828D6ED46C51096056901D54
+:1073D000D3F9821A74972A223A8F734D4B4CFA2FA5
+:1073E00027ADDDC6F4C519F4F009A1484175CC6795
+:1073F000AA3788191CCA3BBBCFC0496B2B5943D253
+:10740000DD15E1E39567A4C597B8F6C8E6FAE7F19C
+:10741000670425EE3801EC771B02B0B3D82D4091FC
+:10742000C4AC295B3D91C1F9F3F70003EA4F1E1686
+:10743000BF8B0A25806C419C053616D52A8966BD0E
+:107440008BAAA1B3D80C923C913E177785E286B403
+:10745000EF7A4DE20CFD2DE272EB8964963938E744
+:10746000443FCD6218DC054D9968F096583CBF85C5
+:107470004151663274E74609A34DB1CF2068CD353E
+:1074800052778907E989BECF1F264DBCD333A09E12
+:1074900090158CDAC5F47CC335A87C584CCC6D4D66
+:1074A0009C9E702D8D4E6EAA50D36414218CEA2CB4
+:1074B00060A2EDB3B21A705245E5ED14CA7822739A
+:1074C000F184DF53DFB282B33D0023F1E6A8809F51
+:1074D0003DDE726AFFA2CFE49567A4D7B27E2D2C61
+:1074E000AA337485140F6B873BCEC9620611D13C59
+:1074F00070E8A4021BD92F34BC70808A9DCD627ABB
+:1075000095013F278463418C1DD969211D37359230
+:107510006453429C630E905B9F9106A7C5679DBD17
+:1075200048572091F624AD899CF4C43B37C5A3CCC1
+:10753000EA92D4051F69BBA7154287383EF3852B15
+:1075400085D8EBC8B37D46F5AA460914CCA111B87D
+:1075500055EB333B7310B81907ECFD2EAC611DA23F
+:107560001AF2E0CA31751D439FB487876D7F64842A
+:107570007965A0D3C2C0F79B485541D8774D477471
+:10758000B7A079ADE5587BA3462A258485871FEBF4
+:10759000D2A2A3686282CEDC9681A6CB959DCD78DF
+:1075A000B2131EBE556F057A1A6983D1384B78E342
+:1075B00062935AE3FA786679088B92BC84D02E2ABB
+:1075C000CFF50537A1D52224259D54A5B13D3BDA41
+:1075D00089EAC11BC4C53A9682F98D4C0ED40F8C32
+:1075E000E98467641AA40720CA2B2B03A4B89F86DA
+:1075F00081F70C4DBF649E72FD4B093129EF731664
+:10760000D4AE9CAE4143311BC7E4A2695C84EF62F7
+:1076100055F52EC62AFD9ACC28FD05229AF44B8EEC
+:10762000C449B68935BD077849E85712AA6DF748AD
+:10763000CF3C9CE8E3BA3F5F8E7D3E694D6BFC3CDE
+:10764000517CBE2E2CD3B409D72E026F62ACE21D42
+:10765000F287FFE241D2962123237C19C7B488D553
+:107660009F74EE3ABCDB9619F3DD63A0E470075A11
+:1076700094BCAEE56AD9666BC583696402B60D4EEB
+:107680003E0EC44F35014EB68DCBF646CC2AE4BE35
+:107690007A7FF1793BDEA527BD538099B8E36E1D53
+:1076A0002D6524C1DB74435BFE8D6D0C478F059FF8
+:1076B000FD922FE6073D00569F7F636DB38639E349
+:1076C0009FFF54D7007A9999D39B388D4FF4DFDA16
+:1076D0003ECBC1E1EDC99A1E04190B11A99850695E
+:1076E000E5DB379E31495806F5615DFCF580DD30FC
+:1076F0007C96BF5AD81BACF8FF9367C6E62086F885
+:10770000CDD0BD01BCE0EA33AB0E82D260C52724E8
+:10771000C222D2C9FD5D99DE61D60281001866DD04
+:107720001943A90722A28CDEE008F1CBB6B62046A9
+:10773000E7F22A2D9DC4993F25603B456F23E23F28
+:10774000A1A4A3FBFB2AC63E6C001637C435125E0B
+:10775000AF3D5EB528488FD29729A41F5831B73E58
+:10776000903214ECBE8376D474645DDF56ADAD9078
+:107770007ECE5544B26E82BB7D092F21CD0C7ACFCF
+:107780008E814111992025A99C224870A016076678
+:10779000657295C24034C335A1C6F4FB8F9900874A
+:1077A000006174ECE95448E1A37CD32B498CDF10D1
+:1077B00092D003A1A653E213705175979C87391597
+:1077C000CE890C0C255ECA613C3286FB6D0172E7E6
+:1077D0000BE7B408925F9E6E0849EFAE4B1B210881
+:1077E000A60A0687E71EFD86CB6B568C83A812BFC0
+:1077F000C555A6A1FCE9F54FA3BB748C3BA1C0976E
+:10780000CABA0AF144F47DD03467CA32D78135AAA6
+:10781000BDE670A0FAD1199DD3F859E4B38B9D94BD
+:107820009E2D649400291BD328B7D7F24C357BB426
+:107830008DACD580FFDC0A531C0B732F8B65289C05
+:1078400047F99B07EAB74FD20503FF0D0E00883CAE
+:1078500057A40B277F44CA5A37D5DF9F6406976524
+:107860006D47A21F1F864944791D0849661A96A0D4
+:10787000D088F938BEB3153D1079D30C0ABDED7927
+:107880004CF6123AB41F23FEB63EA5532D7625764C
+:107890008043BDD4ADFC7076B171B37FB0D525EA1D
+:1078A000FD1919EF6FCE6001D6087FD6F8DB6B2487
+:1078B0005F5F1CF757D9745F55E3AF9FBDA22320CC
+:1078C000DD98E9AF5466231A1D6556A333794C6FD2
+:1078D000EF7349412A9BEC4696228ED36090959592
+:1078E000489E62F839043B2764C15469BF12420CB8
+:1078F000BE9F54B9F7AA4140C052F2D24032CE32B4
+:10790000FF66D6811D934D748BB6E7D46D6052D15E
+:10791000104007376A843CD7FC96515DB20AB165C6
+:107920008D13AB7EC2092E59CED7371D872BF12779
+:107930007B525859E80E896F1CBA94C305C731377A
+:10794000B9F526C42EF246A8E56FD8B9E1F1550481
+:10795000FD34ECBA9845C228897454E31F397392F8
+:10796000511DDAC3EF64D89CE0B0E1175FD10BE999
+:10797000615DE14DC4A3037710D2F6B877DE5701FD
+:1079800018F3A029F09863662FC38D1D50AD32E225
+:1079900017ACDCEB025EF7713121EC91751CC02154
+:1079A0008C41ECE208ED4176B1F5EF5D84B1EA0A75
+:1079B00045853986DD34E186BEA44014CBB0FCF1A8
+:1079C000D57254F540EFEC711059EEA02C64F157CC
+:1079D00086F396474488251DCB5773DFEFBDB4FC73
+:1079E0007DEA2C2C0EB834398F5EAF4B4EF31A7BE8
+:1079F0008DAE2F39426BA963D90DF53B020C071BE5
+:107A0000CC5B56A5E971310490F6E9FB7049A54CB1
+:107A1000D1E8A655EAC31860DD60960FDD944FEFFC
+:107A20007B09E6F02003DE5F506C9ECB0F93484C41
+:107A30009DEBF43397C6DFD52454546460E7A5E882
+:107A40006C24A3BC743D2E7494F2DD1E2AE50F1243
+:107A5000EB0AABF6EE81C5C2310228F79B1DBDF0E3
+:107A60005DAB5FAB2BD6FE9BBFF4867E8FDCA0B6F2
+:107A7000319F51578AC73D4957D6996BE417452C1A
+:107A8000D21FFC0D4140EE341C0735F627E5499A1C
+:107A900099DC904F5A879D2DE8394E52AFA2269619
+:107AA000491890078E9260D5DC79174A2BAF119A4E
+:107AB0004B4A4AFAD8BBFFDA1FBADB83C1FC7B888A
+:107AC0000CC35AEBAC7C5CC15163C66F4422ECEE34
+:107AD000F5CBE671DA88E18574D988EA83C0D0599C
+:107AE000E4482BDA62564B26F0121A4DAD3E6A3A44
+:107AF000AFFBC268C147A8A20C6F70DE0DF690B94B
+:107B00000FA2B66DCD73A46AECADFA0AA220383686
+:107B1000601F9FCDA6260C0ABC4FDE3D67E94D498C
+:107B20002D86C0E25F3369E150134EE349FC58777C
+:107B300062D968DEE80A193BBD5424F25607A4E175
+:107B4000DB48A126AE6B9400223E9F362D446FD1B8
+:107B5000D9D8B2857DEBCAF400C536DB1EAE03F57D
+:107B6000CBDA52973C1C3C8931843A779379B2D373
+:107B7000110181644172157DE369BE384D33274D93
+:107B800006D3C1F3227D1B319C34FF3077921789D5
+:107B9000A8525A99E4A6B57AE17576E1022B0BE377
+:107BA000DB16C795ABA05BF665E30C6F185A97EE32
+:107BB000B0D2D9F478120C13E78DAF4368750BE59A
+:107BC00028C03C7337F1326EC2CD0EB1B632ABF67F
+:107BD00050CC8CB200726E2D1A0ABD2AE934B14D18
+:107BE00058C84F6130559079D69CA8F8BA4DC56FEA
+:107BF0003605AE2E5A8C292989E3495F9F22824D92
+:107C0000BE08CA3D86D47DF76B1B834D0D489F3758
+:107C10002AF1C84D66F59DD14A474462A4BEF96E6B
+:107C20000D526001826BB32350E0652D615C4F6B98
+:107C3000BFF0D6B7A9E5C4A14603C8A84A87EE0F8E
+:107C400000FCE94FBCC40E444F8666D3DE9981CF59
+:107C50000B4DECFE4014673CE230B15429AA162EBD
+:107C6000D829E789918FFF51C5757EF22C42DD2717
+:107C7000B837189263C6B54DA15E07499879BF46DB
+:107C80005196EB67EA20376BF07CC497062A895E31
+:107C9000CB1BDF80E1E023CF1892140E4DF4C7AA6E
+:107CA000A35AB398514B6CDC48C84E22E7DB38F935
+:107CB00082A537059017E25A46D6FE7DC58E8BCA3F
+:107CC000C8CF6E8E2FAB918DDD4AD0BE6F16CFE739
+:107CD000F06FE5CBFAF9F4628E904DC7E0C540DC59
+:107CE000B5FD1FF616BF50AC1E99A5EFD2111B347F
+:107CF0009B4B29E1618154728FCCBE285AC29E22CF
+:107D0000D7D7F9D5DA73030AA6BC78D59148BEA4B3
+:107D10000F40A85E3F5D7AA43D44846E766C2C13C0
+:107D2000793B466F5EF8E25C7C0AECE6A91BE01347
+:107D3000EF81E9050DA172EE14BD0A73894CBE8A6C
+:107D40001B2420DE1983EA612546EE5ADC3FD53735
+:107D5000A5C4C496A6A6EF31E70461666421882D08
+:107D60009789F5EF1606CC580B84E7A391A8B41EAB
+:107D7000F3ED17A9D654C2B335DEF7BDCC1DDEAC8A
+:107D800060AC42C851A69800A2180DE71EC4D83BAB
+:107D9000C2A2632738110BEA6A734DBFA8E485B409
+:107DA000B18693F30CAB612F71772A872C6DF503A5
+:107DB00030381064EB0A4315F0B453F49CFFFE977F
+:107DC0006C70330FE5D31861F330FD531004B4CD5C
+:107DD0005881FD2A1FCBEBF29C70E4B582D8011FBD
+:107DE00097D11FE491D7B9F0BF8AB52ECFACFEBFB3
+:107DF000262941846EEA46166B8EBBF91F146DE28C
+:107E00007E74CCA43FAF27DE4E57E56C2BC671B015
+:107E1000CB43E9AC7F0902CD9508683B4C0B56D2A9
+:107E20007C00DBCFB9596C9368D6537336EBAC93B7
+:107E3000E862AAFA32AF82353EAF807F8C85BBD82C
+:107E40003E5FAC32D66ABD77FEAEC7C01EDA913255
+:107E50001179E0D011A7262D231B760B20B4D384F3
+:107E60004887AF2360A7A3BD4F918BC575FAAF7B41
+:107E7000CB99E1E422A5DE4A53E823F3E1A69AE197
+:107E8000D3E2C8656729E50161BD4F87FAE96C094E
+:107E9000E3BFE1FE26AA9B6FCC09E0BD8E0260E83D
+:107EA0006E4105769829A1905EDC5D94453E7E6B1F
+:107EB000968544E283A70B1CBC0602BAF1F8BD30DC
+:107EC000DABFA170EAE569F4D66642535B63DE8FE0
+:107ED000D1AA4D2615BD71C00098826DD6B6CC24AE
+:107EE000D2338332BD509B6919D7137CA56000C182
+:107EF00042316D87CF9AAA57CFBD3C4F85170A19DB
+:107F0000498A93F69464DB33FE78923F827C235453
+:107F1000FAA455467358BEA559E49583F4DFA57EAF
+:107F2000356A6EFAD632220EE7C1549AB0E47BD29B
+:107F3000082D95472219AA250413CCBF7EB5ABDDC9
+:107F4000292004EBF3C2161E5A749DC8BD524C1C66
+:107F50006F6D247652B22A093B93E3306514DDFF3E
+:107F60003A80091C7066DB19C4F687610A76FB0249
+:107F7000C33A1257D53BEDFCA432D96A0F4AF5DF5C
+:107F800058308DB3CF308FC55682CA879976787AAC
+:107F900089CC1F57404FC5D493E1D8A88B125DA25E
+:107FA000AD3D95CC5937D8BA79582AC952B9BCA930
+:107FB0007B265C163AB7898F10C6F5A2CC2FC2C7B4
+:107FC0007576F0DF18DD9F8A6D17E9504674350C21
+:107FD00085CDD4898812B9B38EA665C8FFD9258E00
+:107FE00051053186EFF354D4DC19E0B690AF2A3551
+:107FF000DC512C24455D4EEBE8CEBB2250A500732E
+:108000008350CB7C89FEF9E5FCEC3F28AF30195456
+:108010001DFE79F58EC2F0198F6C4B2DD0808E3FEE
+:1080200057B3CFEA0A7AF8F5065BC0C6F74740EFC8
+:1080300019FD091FDC5CD7123EF936C13B3FD3C6A0
+:10804000EEA6BA981CE66D4C5B1A3388DB1C781BD5
+:108050009BC1FED7CB8C1F5E67F23EB4FF37281B57
+:108060007EE0FC5B882B2A6A26E8A9E72C50665E36
+:10807000C45C1240569BA3E3F982B8D99F4C655764
+:10808000F91A894E94AE9E02109440EC53F35F624D
+:10809000FDB035AB0DCE16B419D44B5C3215C4CA45
+:1080A000C6C77E1283B7C88E91C9C2C75CB8BC056B
+:1080B0007A3BE1BE713E126CA3F7B23E94A386CF29
+:1080C000300D3622C757F28FACEE9C580041161B7C
+:1080D00026B237F01EE02A19140E57B7816E1C31F4
+:1080E000D27E5F991C8E9CFCCE2124EFC97D35AFDA
+:1080F0008D23A98C43721311057BF4E3708181D623
+:10810000AC2E3DCBFC724F383AD542F2D619E4631F
+:10811000347D6F59F60F4A3EB3FA5FEE785E5E5AD1
+:1081200052FAE728AB2BFA7CE3F879B52F75501E8D
+:10813000CF9E60F72B32F3CAC8379B7DCC04114A1F
+:10814000715EA91EF579AA7741D75AA32B544D1217
+:10815000C706DBDFACAEF0F229C1F459ADE4D6704E
+:10816000E7D290566294D4087D23E1AA28B3572021
+:10817000305DCB727F48AD63C3433923DEFE19F710
+:10818000C8198391472EF12B2146CB15D8532E3198
+:108190004B9ED66FD7D95DC4418302463AD58DC177
+:1081A0007789905A6EBE9A700F41D4B6E24D5F0B3C
+:1081B000E8170A384325EB3D3C36690B4DAD1AC62E
+:1081C000069799094B063B889664210DDAFE859740
+:1081D000A4E5CEFAD669D5BEE01DF42BFF55E9C261
+:1081E000801E02C77E9414CA332BD88E1E74568B01
+:1081F000C78B0014F058B26BB8BCBA1584EAD1E052
+:10820000812E7B78CA29A844C9DDCB39171F03FC0E
+:108210001542641698443CBC5AB698BB99485671AE
+:10822000CE1089A23117D883942FCB99DB57ADB0EC
+:10823000943C6B7230FAEB8AAD015C385085CC13FC
+:10824000A4BC16213636434440AEF9F7FAC65F990E
+:1082500059731791297DF39562910A25816F936275
+:108260001B1FB9996BCECC5B1B0156A8610145362B
+:108270006243F04D138620A7A667B80874FA090C6C
+:108280008D30223A20A1ECCD27B688DA0D470D0EAD
+:1082900080BB8E1FD5D219F5EA56860A0A393229D3
+:1082A0001520F83562D9C2E1EB5308278C427B06D2
+:1082B000ABE820ABE0B9543EDEE943C284BD738B2A
+:1082C00034EC204A005FA454CC577CF05DE2A087D8
+:1082D0005D1B606C8F992E313D95158663FEBACA81
+:1082E0007405C6C491541FFE52E73ADA980AFBF7A8
+:1082F000DFE4163D3B8C849074772484DE5A6BD87F
+:10830000A67AEB7641AE3668DA73D78BDCA971E0DA
+:1083100065F68CB1442020DA56E9060FADE1C8B00D
+:1083200067CF90D4EBED5C82D0CB543B0E115BB3A6
+:1083300043C3F383EA079C77749100E81187F7F44D
+:108340005D2B9B7C81504FC15167F4E72B09733D36
+:1083500046D0F9268E5047C488EFA75C6EEFAEFC7E
+:10836000863A6BA25F3AB4D67DA82BCCBBF6C95235
+:1083700045C93462DAC5F782F6C17FDC2D8468AF67
+:1083800051FFC44DA68767C91062B87CBE6A1A48FF
+:10839000EB88424B5903F04879EE6421904B6176AB
+:1083A000B1BF0F6327F497FB936DF777A4776E87C0
+:1083B000119507D9AD9BA998ADC5E3428ADE550852
+:1083C00075B384F2AE3C8029929C0A1FFFEAE31742
+:1083D000CFA746B91266BFF791FF90E44BE1C9C63B
+:1083E0003505A2DE7ACAA8CD7236A571CDCE00744D
+:1083F000F94A849239626A9641C9C5FAD1BEF3E15D
+:1084000004C0CDD0B1AFEC2C5D25FD28713296595A
+:1084100025396130E557F4136D2DC08F99ED1B8020
+:10842000FFB313A722A0606A25C694A75B15384F37
+:10843000B2FA6C087439CC50FC067001EB24962318
+:10844000BAD081B8EDBA6163C124FC790890B470E8
+:1084500020F149269D71D4873303F1E4BB2D151912
+:108460003C9CAACAACD98A878A3C7E3457C5F5653C
+:10847000B8AA910D978CE695AA955A5CAA3E8CA352
+:10848000442CAE1716A3D71E788829F7A8551BFAD7
+:1084900005A7BDECFD14AC073CC1D9F52F311B0677
+:1084A0001E37D6D4BFD5C91727F422F3E76803EAED
+:1084B000BB8A24C6634C67F655D847AC67E429D617
+:1084C000B0E14235720EF83787099F7CADC25A7A07
+:1084D000C705B07495E66D0501BC4BD16D609CC1BC
+:1084E0007D2D0EC628CB2A25F1AB1E91B2E7827EE8
+:1084F0003AA9254757BF35F728EB2605F9BF9763FB
+:1085000091BAED9AF6E5FCF5C2C76544DEF4E2AF38
+:1085100099FF9B7F189C523EC1A40587FB4A0073BC
+:10852000F5B92DC4D1C745BB721BE76127EDD1F862
+:108530005D2A9C5003F8FDA423C2D2A198BC9FEDF4
+:108540003756DD895C164D50AB55EBA172B64537F9
+:10855000739E63286AB53A3BAE8C6725AF9159F894
+:108560003B8204C1428DCE9534E23D441A827A901A
+:108570006B568DA2BCFBCB3E4B2AA6B77CBCFA0D3A
+:10858000C431A732C44DC604FDDD5FF3A4831D4F83
+:10859000EAEF524D7F77EA77FD31554CEDEE0F282B
+:1085A000DBEE773AA1AE19DF038A62F575BFB9C178
+:1085B00074304E692FADF675D84A083A11ABEE16F5
+:1085C0002771EA7EC017D1581B4995644DB8BAC7C8
+:1085D000A68C2CECDF34280CEDBCC65B1D53664E1C
+:1085E000AECAF3E0E6DFD712F6DA94F43F0AF25CA3
+:1085F000CB523E5F792C3FB490DC855C8A517E0C77
+:10860000F5F5401AE26157DB6BB23F824CE7E7CAEF
+:10861000077B505E3497275E02F30AC80FD808B371
+:1086200016E60D972F2141321AD752A4A19889DE60
+:1086300041D56A8D37E6363116713DA1EFACB62AC9
+:108640006D34B31A7ADC10D76C34E010905DEE21F3
+:1086500066C43FF08449534B27600C2516D3DB9941
+:108660001A514114EE821DEADAE84CB3A2DB1599E7
+:10867000EC94ABDFCEC2E01406D2519D5E6E3C6836
+:108680009090FAFE72319B5083C473C470BDAF0AE0
+:10869000856DB25E19D1DDA71E2668138B7B4396CC
+:1086A000BEBC216FEAD55155EC3FE77596A3EBF2BE
+:1086B0009243F9142E4D05D89EB5DF7210FC7CF55F
+:1086C00016E10362E768FBF71990B83C3D2BD383B2
+:1086D000C9856D47F66BB87594396B1BBCA1F77BE8
+:1086E0001141039F10A1CFABF12A88CAF5FC1C05EC
+:1086F00002BD5CFC818A1DBC7FBCAEEF6D12006FB9
+:108700007760B828FBC58DD957D8669B32D4335EC5
+:108710003B9374C778F10123268965DC75EA809D57
+:10872000A402B11AE766EA29BB9ADC806E9BD2816B
+:108730002F6A41E82019A9464188BA41E152320026
+:1087400052412DB648C48B2A6C0E7E957FEBE426F1
+:10875000A402219836A1EC20C7E0A8A78E3F1DF601
+:1087600008885C6DC96F3EA57AA88EAF3C0B6ECFB2
+:1087700004292CD4A1796547AC5DA2A4FB020C218D
+:10878000ADACF0EA78A6F211E576873E184C739A04
+:10879000E1C03941E5953196414846BF4213875AB9
+:1087A00078869D745A0873F508197E076890CA8107
+:1087B000CE8A39EA52AF78565F24961CF0622D6C4F
+:1087C000F95374DA63993EE653FE1B9F7431CF145C
+:1087D000EA572DCC94876E815D7D92969AD1974908
+:1087E000BE23AEBB24B8BC20424C4E5C0A1AA7592B
+:1087F000E0611DFED71F11B0775101813588AE971A
+:108800006DBB6E2DFF109317D2FFB20178FF40278A
+:10881000C390F13E7CBB014956001ACE6871C9C2B3
+:1088200059C52A9631366F587E6259A3DAB55FF280
+:10883000C2CC75BD36EB665822A97A2CF4ED8C5D5E
+:10884000E63D60A08B10BD807765EE64BE7B271C83
+:10885000B2ADB50F306174000B6D00E0A8335D3927
+:1088600016262ECCB1296E020EFD180100F5DED1C0
+:10887000C75B819A13A0AC45208014460F3381EB6F
+:10888000CB5FA2A8A86A55C25E748C46C8779618BA
+:1088900003E0D0189F6C859BCDB782E2448345EFFF
+:1088A000C4825445A7A3A0FF54243514A4B8A0142F
+:1088B0004D0363C010D530E864179A45816B8FA7CC
+:1088C000D4FC9AD321AECC36A4915465AC1A475748
+:1088D000CB121C6EB0312B1310BE18ACE15F2A8690
+:1088E000BE115866F6785CF198D3D6EB0A3B2BE8BC
+:1088F000080F4B8482705603E326C0214B92D42C80
+:1089000011C5BEEA783B8D949DBD0F22792CEAE01B
+:108910007A0BB6FAA536648815F7BB57453CDCBA26
+:1089200028FB53636D51BBAD050C3333E05B7E40D8
+:10893000C2A3BD851EE5424ABEB94B42267375B53A
+:10894000FEE5D06DF9179E6FC62AB22BC3A0DC9B43
+:108950005510920EFD96C7D8BC4FD72E692FEC2A22
+:10896000AB4F80CCCD9C5A8A94432C4D2866822AEA
+:108970001EF2A69BBDFB7C2FCF80B32FF6D06239B1
+:10898000D82895EA0B0E4AED69C26049350A8DDF99
+:1089900057BF901285470C196BAC0798E6620074BC
+:1089A000C500C75E4CBB6EC9DED38B88C755413945
+:1089B000098D365A2979279292A489D008CCF71DBF
+:1089C0004638D01892C2C4264C6F73F91FD8ED7781
+:1089D0003E3403D91952159B7754432CB32E07E12B
+:1089E000D89CD8D8179FC2C92313C50B613336163C
+:1089F0008222D74AF4EDC40D15B38957F399981024
+:108A0000413C4FD9BF75FD53889F1A6998F4096B93
+:108A100015655CF02B842F93897613AF3D8CDE5F58
+:108A20000846257F7E7F8D149B0B48521F6541E4CD
+:108A300074E9D546FA26A8A73C720C82820C65928E
+:108A400056964215D2D4ECA2D4F9022A3E1D694BA7
+:108A5000E9E393CB5BCDD6E0CEE1E9E56C496D511E
+:108A6000285D7843262CA80C4816BDEAEC72E2A1DA
+:108A7000348A981D7B725FD4A6A770640CE3F3035D
+:108A800017A9173F4AD6C46A8F20D1C9DEA10A822E
+:108A9000D3A4A0AC78A8CDFA8495F4D8EE8DB20B0F
+:108AA0002E7340DD64C22D0FE56D257382A212FA8C
+:108AB000636009BBFA837F1DEFDB72837CFAB951D7
+:108AC000AF7DE53D841CF5FA0F3967E5EE14A62964
+:108AD0001A17F2F65F50524B57CDC148C1AF597BC0
+:108AE0000C89A7CA9882A885ECC5152647A7A4B407
+:108AF000D319331123CE2B084A812A27B24325BC30
+:108B000053D8251A5CFE50AFDBC3CB00B6C9849B9B
+:108B10004E0A350B911F4EFBA259A1A4883A0C8C2A
+:108B2000D42E39BE8BC335B009E8F87DB707C639F6
+:108B3000E5AFB756C27A81CCA6CF4E3855C361EAAD
+:108B4000E0B2288E7AAD6B6921ABC79EBF92F277F7
+:108B500047F685A80C92BC9B39FE43A3D8E349B9DC
+:108B6000749C637D2DA0F0E814871C61537202A7EA
+:108B7000D2CC0D4DE0F30229D22C1EC496FEBC2DA2
+:108B800086D791DDEEF689D8FC3E303B6257D69B06
+:108B9000EAB08B2287E6444C7C96064BF281D28A5F
+:108BA000E45FBD733CD8D77C427CE784283AEF0968
+:108BB00001D77252A1F91D5589B3B2AD8709ED678E
+:108BC000727FAE55A599C7D0E747CA8BB8DCFF477F
+:108BD0009DF64ED492602B0C5CA2DFF526CE284980
+:108BE00085473B1A69E189456C2A7094B72550483E
+:108BF000BC3DC787CB9DF16269B68DC88C13F099D7
+:108C00004D2A537E822B02A4377A18C4C808780FE5
+:108C10007D6B7B97F95619E3E626DE46F4D36EF5B5
+:108C2000E4E62AAA97E4C45C7B247B2DE312FFAE22
+:108C3000235CCB1603E5C6ACEAC04820D9AE6DB7BD
+:108C40005168F7B24590C2476CDA831D1FEB67F796
+:108C500080906AAA5FA10CD5B688183C8BE9A5075D
+:108C6000D7BAD2A3E9A9718B0B955D79BCC3CC713E
+:108C7000AC296080C26EABBFFD2EC1575B4AE5EFE9
+:108C8000D4077CC407CB1188BED33DA68F554FB304
+:108C9000398E989ACFA3E5CFEC880F71C41B494158
+:108CA0004AE40080D4A017A54AE99DFDF2EDF5E461
+:108CB0001BCCCBA42C0F69FD1C15EAB7355FAC0C9F
+:108CC000F2EE04EAA84BA44E9DAA57AD8BA707C4A9
+:108CD00080DCD74FA715DC2555218B38BD4A40F0E5
+:108CE0003E0F80630EBF455212EEBBC741BFF56910
+:108CF0008FD2E4A3B5B137B4252B5DC2DA96AAA60C
+:108D0000BCF5145DFAAA7250428BD2B801FC101E59
+:108D1000F6CA6D501CA3325A0E426DD5DA04B40E59
+:108D2000BD2427439578AA8FB96794B3AF4CD1047B
+:108D3000117DC45F4225F112369ACBE0DEF65E2C3F
+:108D400048E7D1057C8366E8FD00FDDFA9D229A3B1
+:108D500078723CB60932FF4FF3D334E016C5A591C3
+:108D60000A2DF519F4D7039B356393737E950BCFCA
+:108D700072BE5798799ECFA20D8B564E9871304F88
+:108D8000E2DC4513D148C619A0759F7BD587B09802
+:108D90007B4ADFF40EBC7660C43FF12334DE5D1EF7
+:108DA0006C8F6B20F9715A6F164F6008ECEE3C1413
+:108DB000455D0C8BEBAF2E60966313F797007374D1
+:108DC000607D7732BFDC9C52459D0B3EE83CACE9B0
+:108DD0004B12BB10A471E3530ED5C3712B5C2D89CC
+:108DE000F7BA0C384667661AE62E8388E169C070C8
+:108DF0006B858BA8C8BAE727671CC1764EF526E1BC
+:108E0000DA262565D8A305A7E7E446F62998433571
+:108E100054CA418EC077E69655E99DD9129F428D7E
+:108E200095C91A6645B5D033384AA8563877E16DEA
+:108E3000B3645A9A994E6FBA52456F2450F345392C
+:108E40008496B70E11A7CD8BCE171F9077275A5354
+:108E50006EB7115E7DFE5BEFD7ED2937DF414C4DDC
+:108E600034EC7AE9E27ECEB1D5B67D636259F3691E
+:108E7000B4D441EB0D696D441FD4CC12CF60A5AAC8
+:108E80000FAD6934873C2276B6267EFD5C5F8B226F
+:108E90000E3795BF778FB77866AB4791215142D196
+:108EA0009760E504EF424772493D86B11E925D1915
+:108EB000940F9A5AAFAA5D29450CCDFE002C02955D
+:108EC0003115D333CCA8CCADF69B4FB5CC46A375AA
+:108ED0001E9CE6A2D1A8AF4195023D52023371B764
+:108EE00062735CF89DBA4988E1DE17594E4A9E13B9
+:108EF0007041A40FC8488D1FF5F55C157A0FD8CFC7
+:108F0000BBBADAA7A07D153E5A2C3709D50D4A7792
+:108F1000AB314C67EA74386DCE1DAD3F47590AC07E
+:108F20005740C9C4F3B4D9F938AFCC327B8087D16C
+:108F3000CA280533F6F0CB322D690CD90AECF3F1CF
+:108F4000474322C3046E1E44E3FFD302FB18B4C898
+:108F5000A6ABFCADFDA1CB74C4AB73FE68FF7AA1D8
+:108F60005B08691013FCB3A57F69089766D1366E5C
+:108F70007ACEF48AF38DA18E7F1F35ACCC46CD32EC
+:108F80007BE2F67A0CA1F7AD9F43C153D814E9F206
+:108F9000EC8E4BA8F0CA5417741B7E8022143F2518
+:108FA0000BC6012C45A2B4EEC2A5D284CD3FE92068
+:108FB000B04593178CDD27241ABB7B59D6D7CA201E
+:108FC000F295B48446A90716E4791AC0B413650B68
+:108FD0009EBFF9B9AB969E962F313E433734BEFA09
+:108FE000000012AD3A524BC703F22D2C3F172CA4B0
+:108FF00070A9634D823816889021F52832E9E4087B
+:10900000BE324EFC9D6D4C10CBC84762A2B3E65EEB
+:1090100087F01010CFFA0A752BF04D795413F172C6
+:1090200035FD1E6D78976BE37F6A1362BD7BF4D8C4
+:1090300021277DFFBE801D1AF70EAC6CC19BB8D5F1
+:109040009A558761F282F0E3CDA253B8BAC50510F4
+:10905000B21E35D9CEB9D23793AC1AB3E4C89B440B
+:1090600070E39EB6F15BF399398540A82506376E0B
+:109070000F30DDD656B1D3C4B8A16A3F3417269558
+:1090800085F6DC66E8E90B751FEB0F69AB48CEA8E7
+:1090900013F3887FCC37EE43FBA9B298BDED86A7CA
+:1090A000B4E529547F0D2B45AA7159EEC4AD19784A
+:1090B000FE487F875A202783DE231B942C749B272E
+:1090C0001E78727FBFDA20BFD7AAE0AF591DA6ACC9
+:1090D000D9DC7C16ACF1BD3BD9EDDE4953F49AAC3A
+:1090E000406754F43DF9FFF6CE825C6D4F07219442
+:1090F000435AEBC2E7900B58CA51F85A9303035DE9
+:10910000E8B6D3E511D409DAB71B2603475CDC7A4D
+:10911000C1BE7983893C960C2A146CDDE8E465CEE7
+:1091200022704D1E59062B37A85BBE4F1C82670F5D
+:10913000B0C3495479692D21D3CC13CD4EFF91F999
+:1091400027D0CB4B826D539D8FF00D56171AF1E44B
+:10915000E26C28BD400D92E0341E0E5F5B9112DA86
+:10916000B7A7E412CADE62D0D7B6963BD1118EB84B
+:10917000AA702351CB9EC05FEC5E0EC44CB74D303D
+:109180004CF54E1964C3FF4CC96141508360A14640
+:109190003A10C9DC90A0B1BF94458DDFD2F9E886C2
+:1091A0001940598AA7931FEB2924B8CA1F1C691CB0
+:1091B000ADAB405A71EFBB936898E31E743548021B
+:1091C000451D27F785052A1CEC019E741CC1711AE8
+:1091D000DC6E5B6C46B62C2847278A5A96BABA17BB
+:1091E00016E750ADC5855E3901D72EB657C4F1E1FB
+:1091F0008493C623C3175B649691D13FB4A214D75E
+:109200005A71FF2AC27A5F8D80D261A98F6DCCC559
+:1092100080DC052ADBA87D0C909A57E634E02224F6
+:10922000CCBE07B8ED997A0806296ECD488D6ED769
+:109230007150D71B5CFE83714862EDEBCED1672283
+:10924000640480373A9CAC175389EC38490BA6CD9F
+:10925000AE226B1C1BE0AE704DC550AA00AA96331F
+:109260007084C37E5769CD4DB34C6322B6FF4F76F1
+:10927000E27B31481FB2159275CC32BEDACAC9BB47
+:10928000CB1C7582C9D77366449765A0302D7A07C9
+:109290007EFA47DED478D6158EACA64018AD71D7CD
+:1092A00065DA575ADA7A18D607882C1B2345C61375
+:1092B00058982087DA85EDE1935AB7B95400FF0139
+:1092C000092E10B3C93C57CC120403F8BF8F12DD2E
+:1092D000F5409B841DAA3FF52800C700B45FD092DB
+:1092E000E6FB8FDB673B9025803AC07FA122A62951
+:1092F000DFA1D85FD6F088A82E7CBFB5D29ECD74F2
+:109300002A1947FDA46DA1BA646046194A362D7129
+:10931000377F8E6857961E4B89817EFCEB483075EF
+:10932000333C6DC17B3EC98D441ACC9A75526AA4F8
+:10933000EF64036C7B8ABEC632FC11FD0293EE75AE
+:109340005D73E9B6F897DB0E3DAC09F219F3ADF1A8
+:109350003762462388D1541D9904B787EF0C94696E
+:1093600082ACAA73C331D1DCD0BFDEFB2D90B92211
+:10937000BDBE7500EE561AFE44BC02B7FCCBEE62D1
+:10938000911333FB22CBCB9A32BDB888DFDF8AED55
+:10939000A30E32E0CEDCF3C88FE888BC6C3B607F64
+:1093A0003462FCB33DA58E2CC4285FD7BBC6EDAE9E
+:1093B00099F3F4210F17E113498314068FCFF1F4C9
+:1093C0007662BBA04DF78A1288C09C8494018ADB28
+:1093D000B8F5E7C9B89336A2C00C1683748E508CCA
+:1093E00099BF8AD2EDB563507D537A715CB62A91EC
+:1093F000D93B3A26E1CBCF45738CCE3F0417D5023B
+:10940000209DF521B540BE824EA6936CC2319E8E42
+:1094100032E48FDD5AC1D1F6D9BC79C6C193ACF71D
+:109420005D5ECF0EBA1649A4B70D7C19231319A49B
+:10943000C6E4709B2270C63A7813667318995ED1A1
+:10944000923345DADA767B5085629B7DC7FE2FBE6C
+:1094500010B77DA890D734300B105FB45B0128F7AC
+:1094600033B5903B3FD832C9D489479468B8F7BC2C
+:109470006AC311D859C525C5AEEC0856063C207202
+:10948000329024FACA9A144D6257D94CD653E8F553
+:109490005934C4B23EE31720283210555C7E04C80C
+:1094A0002B60658598908FB174A0B99159E9ABDBB9
+:1094B000CD9919EE2FDB5A2C53619B07EBD20AC6CC
+:1094C000F3701DE31B7DBEE61C04A9937C509BB882
+:1094D000ACE3FD1580E2A08A4C634F1B943D2FD571
+:1094E000AE4A5D0033614255B29E5692C03BAC1805
+:1094F0005E3EB505ED0FAEFA3047619389BBB11101
+:109500006D685A9BEE79B53BF207875A51BBF069FB
+:1095100008A22AE2871A63CDB52E2B4A208BD0F4FD
+:109520007897ABDE8724B137A7663400DCAFA74459
+:10953000542E3683B8C06D580287718867E7C9AE6C
+:1095400066B9DAA80C8CC354D1BB4B29EA9DC30E73
+:10955000DE0A2C5BABA0031FD83EC41013425AA3F3
+:109560000EA7A16F3838E88DC1D870648EFA636495
+:109570000C1930AE73BECB008486367C6D45C8CEE8
+:10958000CBA2B7DC91C5E0C1FC986A2A6AB722E594
+:1095900080FB580CFE8C547D24736B0F7C7876D145
+:1095A0001952B1B0133854ECB39FE390B0C7495B84
+:1095B000547A6295ABF3D24D6F7838F9C93A99BEB7
+:1095C000025ACEA69BBF43945BB4CB2BA7B8A2F59F
+:1095D000CD30F716DE4F350354E0F5452A4200F64C
+:1095E0000730A12056D6C296040F77E70AB629EBBA
+:1095F000157BF982C9A20D9C0FD6FD8C07234EA4C2
+:10960000A8DC4780A88F0CAC6BC3A22397235BEE2A
+:1096100097C3437CC8E2BA0235852BDC3B45EFEEAD
+:10962000069C212223CCE3A142B91739EFE9C1D826
+:10963000F5CBB16C0CC3BA78CEC1899C0382C7B795
+:109640004FC5F1DC63CABA618AE294F5037C215C00
+:1096500073ADE2334B27359336E091BCAFF34F94B3
+:10966000BC69237001DB0ED09C4AF4BF2B9165FBD3
+:109670006B98EE43AE74DC40CB505BF5B65DEEA16B
+:10968000D8D7C7A0AD1152A8043212092DB4516E1B
+:10969000BF1D84A881C971B9EA9ABA7F942BF1B928
+:1096A000FE7EFA4CDCCBB7E89BA4BE1EFA9589730C
+:1096B0002C266CAD9E1BBC2A97E678296B57FC9A2A
+:1096C0009E6B449A58655F5E1D9F60813562F8F518
+:1096D0004EB04A3C62E38778A98C9874BF653E1B04
+:1096E0009259B3B2920051202FBAE9B6D16E032B32
+:1096F0004925543EE2169E5664BB6DBF4DE28BB3C6
+:1097000082F9CE6E84ED6F740337EA4E11BB828E00
+:109710003A35FB0D682378C3D4ACFCE122E90B2A6F
+:109720000EC485F92FDB4DC21AE680FA3DB2E08AFD
+:1097300018472566487A75CC008FAC7AE554519A63
+:1097400035645694B4921CC30B7558D13E5A0EC55D
+:1097500099CF93C91259C53A39CF20B90C75383B06
+:1097600043A70A03A19245C97849466B2C96D0239A
+:10977000ADB041E5E6BF8A0FBDA77CB3E83C333806
+:109780006FE2CF22081B3A53BADAEA430A9EA105D8
+:109790002F91D4DFFDC136A4817A94A66B70DB3B98
+:1097A000B1794F02A6AF2AD9EC9DAA097D8524F094
+:1097B000D036A56EE30724C12BA4242A21379AE7CB
+:1097C000117969CF68D516A4250DB2E09151A43F57
+:1097D000A093700825E981B2C0B19617BC9895494D
+:1097E0003DCDFE0551495D54E3F3E2C1E786D47FE8
+:1097F0008CC7FF02973E79B5709438268D9DDB2C7F
+:1098000040E2992169FDD43E4EE505DF79DC5C8CB0
+:10981000A7EB7AFFB8DABD54C52C8723DF152F7D5F
+:10982000C544E165E0E93D1FFFF0976884FEB7E2BB
+:10983000E62D7DD5F24267AF84D74FD855BE97EF5E
+:1098400045021CCA8F3E4EF94A9FBA4A5BB0D356B6
+:109850000EC50FCB125BA2A111B95EDC5C41DA250B
+:1098600001E5CB7F27CF6869AE802629B9DCA0F857
+:109870009D195818C8A9BEBBC6846AE462E103C535
+:1098800017D01065CC581E0E03310AABC1C86E3C10
+:10989000B3039C9DDE8B63BF0F6A33CE86C5DE5556
+:1098A000EDE8851138E33A210F30570889B21723C4
+:1098B000F44166409E68DA640A97784E43A8535E86
+:1098C000B5EE73D1255ED50EB7A8B6826C5DD8F221
+:1098D0007FE9E4F3C5AC8DEC6C899A023AC677084F
+:1098E0000A0D85C74BD1906BD4F9C90E69DD3ACB0F
+:1098F0003A87EAE65B1A97611E89E655F4828CDFA7
+:10990000077525D3CC3D8FED74B74574220664A648
+:10991000C7E3DE0F32890421D3187CA9EE5565DC3C
+:1099200000B9E134BD4A6FF4A64244C2FB662CE69E
+:109930006C7A6706708F19A406B21B8165DFB27C52
+:109940007ED7B3805F0FA4A8416B42D2E1518579E5
+:109950005C133C95301CE36D4AD3856290134090B4
+:109960000B5C19D982DC7759CA9611F2ED15856E18
+:10997000227D7D420858B2E87439ED17569328DFEE
+:10998000D4B03053B466BF6A62B3C53E1D2C005BD1
+:10999000FD3BB5ED4BA0BDCF39D3C0A36C568D3D7B
+:1099A0006A3B463F81A1A9225E8A30FEC4F5CA4FB8
+:1099B000A9C1348A76442196836A3321C722643947
+:1099C0002B29EFFE83569BCFDE0C6983BCEACC1BB0
+:1099D0002456D6B96F918CF8A6A5FEC152688F00A7
+:1099E0001CDFD76C1887F23EC74EDA3D71055C6804
+:1099F000BF1D7CDABD939959675ED42569994B8167
+:109A0000E87BD9F09F752C288A5E1AF4F72D4DE873
+:109A10004C5F6A95508A80D760FD2AB34107C7889A
+:109A20000A607EB22FA72B156A21B9D307D8968179
+:109A30006EFF75BA62CEAF37630837C0CB8A724605
+:109A400025574AAEE09792EDE6C5A3199A54EA7AF3
+:109A5000648354AB51C49D42DEBEACD20BDB09F72C
+:109A600028A32EF7FA7C2DB85F8C66FE24672A9116
+:109A700011E5E68477DA0B06F91F61A8844F7F08A9
+:109A8000CD6279C728A90FF0DB110732A1C9D6B979
+:109A9000506F7FEC891EF4D24C93D37FAFA404ECBB
+:109AA000D63A415CCD4BB2CB2AB2E218D58A73E2EA
+:109AB0008F1EEEF08D9D54F096F6D3D350E1882999
+:109AC00098CDE8D8EC4C693C608C7FF4E3377FF6A6
+:109AD0001CA93A00CBD91B6D85E51759F0DA668BC6
+:109AE000D049500C7896069EB061D86B98346E1BA6
+:109AF000421F1CAE170111CC7C5DE2689D02C7B508
+:109B000030A8A513AACE559D3DD2494B61721AE9E2
+:109B10003CF9A0EFD2301D611CF3BAAF3DC9763AD3
+:109B20001A6EB683A81B08A49436D458F0900D9CE6
+:109B3000271A51F9D3D2122F5F98FC79813B7F15F8
+:109B4000D6DA028DD97C86EE9E5A203405CADFAA69
+:109B500006BBC49C44CB4A864D2216A08C53B6C487
+:109B60002A234A7B005035B2728C42E977FBD62318
+:109B7000E3045FB4F0021989F6B28268E59D26B766
+:109B8000048CE1CC9C85363BD8EAA8D89BDBBEF997
+:109B900017775B0FBEFAC72EF4D00ADA1994472A5A
+:109BA0000B3BB2DE708C8C40FFA5E5176E50D48D58
+:109BB000D6CCD933E80908E2EA3081D46B8BDE9F3A
+:109BC000B04C43B1127719E4636441C42F1DAB4616
+:109BD0002F7DD628C4305376AD9CF055AACC9D88F5
+:109BE0009933F198F47718F6180CC0FC4B58A8FC80
+:109BF0009B46CFAA57A38C6C585E2458244A43B680
+:109C00007D09029476F5C53AE16F7871DA357EAA5E
+:109C1000098AD6AE260264C9965E8D1523BF79DE09
+:109C2000D3EABEB55616ACC37B70C65804B2B67242
+:109C300014FC264333929AFE2ADD568CEB3909EA4E
+:109C4000970CB3E1D9E0AE327F9FED15583739C399
+:109C50001979707FAD13F696EAC9C1E688F47F1CC6
+:109C60005CA71F654E990EE11DF4497B1A394456D5
+:109C70000E2212F7135994071DD9B82E4C4F8E9E01
+:109C8000CAE3388E22A6D71E03895F4EB3F153F57F
+:109C9000996FE600522F3069EB5A63EBDF74BC8892
+:109CA000488C1992D176D2EC29F586739A6391DCAF
+:109CB000CBC2B84D10C5AEA2B43562812F2B0ACCF1
+:109CC0006FF1B26629870FA99C415442EBB73282EB
+:109CD00040EC88838521DE83C119749A72D2AEA6C6
+:109CE000DD6BCCE1118FDCB77BF5B3B92A2B2B49A7
+:109CF000BEDD8697DCEF1155919536FBBE832E991C
+:109D00002D7B8ECD960E0A16209CFAFE6B87655130
+:109D1000218CCB99ACD18A2B358F12C323D679B441
+:109D200098703ECFA1374032ED12E87B297F337C1B
+:109D3000A6570747002263F853D1973AFC6AECC84C
+:109D40006D8CBC24579C90B5C23BD95C9FD1C3FF9E
+:109D50007FD0A7010C32A9AF9A67B967B68DD60C30
+:109D60001B8D297C2329F40F61E02A172F8B26DE17
+:109D70003F5A344353E815E37212CDF934FFC6F568
+:109D8000B8C2C8356CEF8A753C6EFEA3FB2C9741B8
+:109D90005145EB466EF225A7B860B5C7A201F1FAAE
+:109DA000BBAB90D98C7D34F7391BC0AB045D324F0F
+:109DB000D2BF8E2039DCFEF89C3B6D18D4373DD5E0
+:109DC0008719A287136592F9C8D79715E5663D10E4
+:109DD000D83C5184FD764BEF3D486CE2AB684A06B7
+:109DE000F32ED5B77C7FC71E69349E0C836A53FA65
+:109DF0001E9C630F0C459409C10378D3747D0FBC7E
+:109E00009AEB730F8F23C8F47EA4EA35BCE4DCAB75
+:109E100013ABE796FEB028788A945A201CA726092F
+:109E200007F3D1B339354F020A3AA86999213D1D8C
+:109E3000394617F1E2F67CBFE83FDFDF05EAC2F200
+:109E4000176595C57A9915E79B6A3909939CEC6566
+:109E500068A2401C847C0448847AB19E0BBAA57029
+:109E6000D10D9205AD15C2527D382C6DF6AAB0A069
+:109E70007FC5E636D2038EF2D4DDC2947B54995F5F
+:109E800006E04CAAD689095B71FD1056287E984AD7
+:109E9000F9ED263FE0F40F2A3D611517398059B5D9
+:109EA0000D4CF59AC4224FBA634F276FA90590282D
+:109EB000FEDF93FB66532FC6E459BD9313287D5AEA
+:109EC0006B7B177ED97505FC1077BE4F2FCBF677CD
+:109ED0005E5C1AB04C10AD86C2B5E57F038EBECC79
+:109EE000BEED09E8D83EEF1CECB309C373BB566066
+:109EF000E8E5BBCD5DA5383F013050FCC4AA8046E3
+:109F0000B032DE9E4BD2953C7F12FE24CD3BDAFC74
+:109F1000E36BAFD9E0DA67A5F913BF6340137E4F57
+:109F2000536C1619129A4CF744C1E54D59A8D6E264
+:109F300091086FC8775388E71103AF907CAFDA6957
+:109F400089A333A210E53DDC8200CBEF51396D3F90
+:109F5000CAD80455ADC7095D017833C9B69CFB4426
+:109F6000CFB1A9C917B509EA83A3DD9C00C8C1A375
+:109F7000F9F37D2FB07D67C7D569B63F22DCE3BF1B
+:109F800019079F054A82FEF6A3665CC2F20336F407
+:109F9000C05EFFBC0A139AA0EA82D4DAD143E195ED
+:109FA00090579CE3FC7493DC49B5D676086E078223
+:109FB0001645F1A8C1A5488CD097CF2F7C7F85A4EA
+:109FC000CB63A0B5A1FCBF1EF33D70F0AE59B9A4A0
+:109FD000ED6B37C77B9425919F13EC4C3499C0C728
+:109FE0008753C015FAAC36867AD13F5D6DA4ACAE0E
+:109FF000117F73D8FBB87ACCF43AEC1FCD4214240D
+:10A000002E333531E2DC7A0F39442E196C5079A7A2
+:10A0100085812B1E9FA3C41A0F0BBDD4AF8D1CF6D8
+:10A02000E425334B7A56A0220A753FBBC02D68C485
+:10A0300002ABE05AC9461898CBB37992C762350A89
+:10A0400030D8DE7401D6B3781D96E1EC0944C962BC
+:10A05000510AA8EA9170B1CF5C00767D5EAE7BA418
+:10A06000442D9E2715B9D03E73F1301000D35E5CAD
+:10A0700096F9AD2AA5EFAD9CA10E34FAD11ACD7791
+:10A08000454B7CE842F0619E89E3E11E226B9D7A9C
+:10A09000D698F208F60430B4BD89108397B17F03D7
+:10A0A000681A24A86DA30F92ECE71355D45220F33D
+:10A0B0008A6DB94C6ADD12B396B58E392EB18B7CA0
+:10A0C000C992559B20F31184A9F37A04C7EC746BF1
+:10A0D0007FB373144251AEA140567EDFD37F927F8F
+:10A0E0009912DD144E4E513E7998A20FD4845F8EA2
+:10A0F000F926D6D311B530B12E46517D3E948F0747
+:10A10000A1D2E8E907B630EE20D4CE5DB1649DFE61
+:10A1100093FF929C616F84CBE3554220315570F5DB
+:10A120001DBE31EC040FAC73498E6A4D7A34455D27
+:10A1300045C6B2B379EA48A05EEC02E1A00757F148
+:10A1400045B04AF005E62F63585E6D470735C9F5FF
+:10A1500091D7B6584146CEB1032FFFBFA0C22ED52E
+:10A160008D5B57B64C6A314188150A6955CC3B75F1
+:10A17000E7C17973F1643719785B7E7C103FCF9427
+:10A18000FABB39336A4006DD37441E7412EE196596
+:10A1900038435F71F57D3C45EAD3B2994376970821
+:10A1A000F687DD1108A6104DF88D3CF1B9031EA20B
+:10A1B000F7C4A3E09B132D0405293B2C540E64EF38
+:10A1C0009D13A3935D8ECCB6B7D6B5FDF1B86437B9
+:10A1D000867A2B6E4052315CE58352B8222D47754A
+:10A1E000DDCE69BDBA52D37AC01D20D33CBAEA5540
+:10A1F0006101776473D210E94354EF12D8FD1B4913
+:10A200004A4BF1FB38AC00AA4401DAC13B1A20A248
+:10A210002F1A7B73C915B543C83DDA8E5F1775F9E0
+:10A2200050157ACE260993B4ACC700B035D9B42600
+:10A23000A249D90FD83169FA2BE0871A9A8E66FFA6
+:10A2400033297411175DBF1334839EDD90659CA183
+:10A25000B3F7EA2E0E126110B68985C005DE69C714
+:10A260001DEE4AE2E7081C9DC7264F1E2D558BC8E0
+:10A27000E5081A3BC45486FA0B68A771903FD9E7EA
+:10A280006E1BEB8E03CC640B875B8513E67427FB98
+:10A29000766A53E2A638193728CD6394F6FAEEAD04
+:10A2A000139DB3D8C1AE2824EC35877ECA8EC6155F
+:10A2B000A98218242CC17813EC07F8BF5731B38555
+:10A2C0006E7A26D5BEDBA1D9E0E1F409EABF9B5A3C
+:10A2D0003267BF313805ABC3A8DCB091E4E199FB2C
+:10A2E0007AF9566887F5F7164F218C9F91608CDBC1
+:10A2F000CDC7AA1FA95F00E243DB5D724E63D23572
+:10A300003D6D716F568B5EDE655904028CE486F0FC
+:10A31000B6BA5C2D5A4D4751BFBE4B97BAEAD51914
+:10A32000BBB61EFDD8CEC5F206466F510EABCE6051
+:10A330007D3EA061738A3ED9C5A86F26BD9245E4D3
+:10A340008C54E4CD89A087505B154C6E1AE5838050
+:10A350000884F8432DC6F1EACAFC5C8337A714BA17
+:10A3600089EEA2295B19E2B250A9A1BC323CEF9C54
+:10A37000F01E18454D1F5EFB4B997FD5D3457523C5
+:10A380006E77F7DC239B43B2FDCE14326112834C0F
+:10A39000F3067178F22BDAF39B6F9D847BAB6B2C09
+:10A3A0002DEF1A9829054EB4E8AF1A7CEB5E38748D
+:10A3B00038618DA98631702B2475066B9F244C273C
+:10A3C000891B5BD1F0E1B56879F49C7C8BA0F5AB7F
+:10A3D000A41E199EE1EFEA8BD78D6D5E788EE8742E
+:10A3E000F069395EB0548F76695EDF58C09145C020
+:10A3F000137425356DA77DD5EDA5FA4271AB703488
+:10A4000029645A7F74DE48D0C97C369C9E94E7B894
+:10A41000F42D2D303D1E7E6BCBDD18341F73BBE950
+:10A420007477B377028F48D3C710497F9113D796BB
+:10A43000DA4405BEE644D05BA3FBB60FC31FDD2B99
+:10A4400048073EF9C7424C40D1A99AD9B49DD3C020
+:10A450003CA5FA31835912419D6891F4B2B7892421
+:10A46000AFA71B574EF9B5777B26E4CC9FA66FFAB2
+:10A470007A83BAB724E51AD53867595E6B63782EAC
+:10A4800005997A448A7258CC7A44D68E752A62C36A
+:10A490002BEE1C92583328C240A236E243F23D7A9A
+:10A4A000C09D35DA5C6EE01FE50951FE5CF7670B75
+:10A4B00072C9259FCE6EF9E2D9400AF785AFBA1965
+:10A4C000E8E2AA31CBC3E04340B8B26CACB224A5F9
+:10A4D0005F2C637F1C43402F1EB07035901F7F5E42
+:10A4E000D8A832540CC136531C01C1BD72FD9682EE
+:10A4F00011AB1665ADB3FA40B6AF6D20B269DA5351
+:10A500005FB12C5269A808693D0F406162E0C22327
+:10A51000F448073B71F532158F1596C15C0D532039
+:10A520006209ACC4B12108893D529AA1DE83FBF6D1
+:10A53000DCCF9B8EF31F48A194D5EE5B42AC1F90FD
+:10A540000E81378919CD73F4847E382B245474E03E
+:10A5500078BB3C0502EF848F0E650BA64BD194DED1
+:10A56000F3E48110800069D354118EE8E26E3E1C42
+:10A57000648B17E766CF9B26FF5891583B51EFD16C
+:10A58000305A0FDDE161D29B249DD93C18E74EEA99
+:10A590001EA50D16EA750CB73C25760ADF5AACFFEE
+:10A5A0009A26B0B34F2DEFF5C1600FCC304CCD3FA4
+:10A5B000BCF72ABF313CD3999B7B4C7BD6C9B28771
+:10A5C0000914EAA3FCB3CC20B0B2359AF602A37FFB
+:10A5D0009C2D463E0E2924C2ECFA1EC3D6A1937EC2
+:10A5E0008B787E5BCD78F93152C535F26B1363DB26
+:10A5F000AA20BAB69BE14DF1BA6C934F2629F230EE
+:10A60000E2C87062B18B1BC3BAEC824A8FE2B3B668
+:10A6100039FD06150E4BF6B8E825DBCA19F9B281EB
+:10A62000B0ABB6B6D269D035B9DF2EF19569AEBE02
+:10A6300045DEF5C982A0E5B09DC872B7AF8D6AA9A5
+:10A6400055FD19B5A4B16065B23185C42385758FF8
+:10A650008E98CCD0AA9DF6A825B67B14148D46649E
+:10A66000EE0B89AE19DC0D63E9F77A4BEB3397F605
+:10A67000591B0586030422D0DF23FB7EDACB16DAD2
+:10A680004C8B17D06B4E5E899262B8500D61E17BA6
+:10A690008F13CF913A7B76D813C0814579876D515E
+:10A6A000D599E839BE8B85B3D8F594B5A019C72ED6
+:10A6B000035A3A24C5578CE97D2CD801FE04779FB4
+:10A6C00078C8B1ADE8FEF9A4CCFF975BC7CBC8D280
+:10A6D000C8D68C25270BF9744C9EA19CAAFBC728D1
+:10A6E000D33AFBF12A2D0A2246C1A54991A64184FD
+:10A6F0002CD68638C134F71374DAC48C73129B914C
+:10A700006CFD3157AEB5AAEA9D9B7E88D63FD980B5
+:10A71000E88E84896FAC84F8516ACCF2DE70EEA6C4
+:10A720000D37AF8FDA040A2BC41C0620918353EB3C
+:10A730007826D344AAD0829D7EDAC15F74A8759032
+:10A74000E70D353F42E39B1122503D6D0A3D433AF0
+:10A75000F77F96D1A032D6A6DEA32511B25301060B
+:10A760007C2440EC511D7119CF892580C2C8C18A53
+:10A77000C9BB18D9A046E81D6F37FBACAEFD9E4B98
+:10A780000CAB4380966AC675AA2DE5AB6DD5B57F37
+:10A79000A8A94076AE1D9A27057F83F5B7FA6E13F8
+:10A7A000F91AAEB1AE01AAB2C0C3A8A1C414013156
+:10A7B00061ACCE78EF7E0A961511AAEE99141F436C
+:10A7C00004D99818A8005F505B307AA73071D47B09
+:10A7D00006CE1019010EE4708EA5A2E18D03154975
+:10A7E000CDDB07832018174F0D2EF70AD697A9F156
+:10A7F0007B824E8A8986A83F65BCFFEA91041019C6
+:10A800006E2F76D1E56C93D3BB88B19DB4A88A6BCB
+:10A810008146A3E6D4D773C8E3C4CA96A879AD3BF2
+:10A82000C7DB9175182B1F5B41156E97B7A5700A92
+:10A83000C014925EDF7FDD7AA0E14E42EB246A3FD6
+:10A840008513ED3FA4C4D56902694463D11CCF1AB6
+:10A85000C703448AB580E6A4DE03797BB62B932D2B
+:10A86000A3444A5A385F85A117F3AEC193F6713CF1
+:10A8700046EB02E121CA624716F5540542814D4775
+:10A880008106B8B7D290C60A8ADE01AB6624F40905
+:10A89000E641524A8919876AFE98F75E7F2730475A
+:10A8A000B4D64467AEDD5390D3888C776998C1786D
+:10A8B000856C580710612E7F6C5DEF9F54282B1C10
+:10A8C0001DD2181E692FA825C1514C6D29C544F809
+:10A8D0003DAE81AA503DA1659A6C4B8D79A885FF4C
+:10A8E000694EBFFED2C79B78F2FE09C2AE1CEA7168
+:10A8F000D1D242B3516CFB79ABAE3F093D8726CC38
+:10A9000073F96F50A796D6E549D0743DE1965AAFDA
+:10A910005D39960DE81C3783312CDC41B8C0EA2C38
+:10A920004839F5C039F39576ACDC0A3A0F3ED3507E
+:10A93000D75EEDF3427C9379C0866B137DE65A189F
+:10A94000D5158130BADD8FF721710B7818CBDAA4D9
+:10A95000BF969192BBB60B2E658D70462C58CDE3F9
+:10A960003235CF39333235D61DDC48790DF2F1104E
+:10A97000C9F7744C7B9C36053F12E820D610C66F91
+:10A980004BC0A9CC13BEC98F00D3D41BAC0A6E1523
+:10A99000ECE208D56C95B7C02EA584DAC6953808C8
+:10A9A00085D115211F8BFFA5ED82837A03445C5D61
+:10A9B0005259C2C1467742B67785DA4EBA25218907
+:10A9C000340A267F652A0E39A52FEC3149FCAA46A8
+:10A9D000FDE388A4191DAB2748E754DBDE6A1BE8BA
+:10A9E000E5C1E36D885AB4DDF4075B548DCC43FDBB
+:10A9F00095F73748AC09FBFAA3C66A7E6795A2C9EA
+:10AA000004D80DF8247CC70CEA8AD86E868D207E87
+:10AA1000A39277DF7F91A1ED772F2DC8A52F2BCEA5
+:10AA20006282241DCA2D2B45D2F2FED2AC2B38DE19
+:10AA3000A4EB609C51A8D00CC5DEFA6FB16818B1C8
+:10AA4000B95C32072FA3392F95D62AE7DECC66846E
+:10AA5000D0E71D8E6C57226031FC130C10CC903661
+:10AA6000E5858A75381544C20FA06F766736DEC15A
+:10AA7000A39D4FDE752218750EC25C7A7BD6F758FF
+:10AA8000C9F4ADA495B4D0C54BFB584D3223F87F23
+:10AA9000DDD46515082B402B4F27EB6FB9EC7FF108
+:10AAA000F9208D4775D1FF411F56A0604A27DB3E34
+:10AAB000AA7496B5E47A63EB0ED1BC153BE4DC9B3B
+:10AAC000F868F048B455400877064F0B076786438F
+:10AAD000C10C670747E212E9323D725CA422328D55
+:10AAE00091FD8B02927898EE33FA0C8F17BACB3C1B
+:10AAF0004D45613A81170D7695A478D86686E38E28
+:10AB0000500E0863080D70A0E503DAB82C0945263D
+:10AB100031C1F356D67BCDB7E765A91EFAAE5CBF4F
+:10AB2000135B95EDDD1E842EC277C5375A51AA04FA
+:10AB30004CC757205FE8975ECC8978889E8DA9F135
+:10AB40006C4C10A50D1B74CF12290C509E2C4A4D35
+:10AB50001494900D1AD0FC4404BE340E0C880FEFF0
+:10AB60002EAC80DEB3ABE856D73FDB65CD51323B30
+:10AB700015715D19EA637F4D8285C327A6DBAE445C
+:10AB8000D6E86E5DD4554D27609E4FEA6F977A27C1
+:10AB900081521890F96B7110EE46BAE38CA3668B64
+:10ABA000DD5F740F625E15A2FD025DC162C3725962
+:10ABB000B4C9A38AF55D1F9BECA39CCC4D054DFF4A
+:10ABC000FA38CCCA4B6A6E9A4495C78991FEF32A2B
+:10ABD000EFC46020BF671B3A8341F89F2582892D0F
+:10ABE0006917BD5BCBAFBF7C8D71500BF55C2E91AF
+:10ABF000BCCE87887EB0A8044E467CF90F1ED22EAC
+:10AC0000E07DAE054645FA0787A515E44D4CAC340A
+:10AC10004B5A3144072743F2A2EC2AECCE93436708
+:10AC20002FD416EFEDA049B5418791D8584D9562C4
+:10AC3000995BE0EBA8FDE699F2C64E18E08D48035B
+:10AC4000170E0E508F0EF52348341B6785ABB312D9
+:10AC500086527E6E8ABB9BB8A07F1CA6C12AC5C641
+:10AC6000DB891510E4B9B260C989CE33AE93865C36
+:10AC7000F98051BE734212D75A95A9C0A81082E03C
+:10AC80003E1B8F5F1FEB0250BF93E8D32A254CEF8A
+:10AC9000D4939ACF4A396FED008EE945BB27E6F68B
+:10ACA0004B44A72B5BDDABA095D3729258E1EA0F22
+:10ACB0007E64AE0FB8802B8370CE3F53BBC8DC7070
+:10ACC000D54C71D419569E56ACD973F121DB3FAFE8
+:10ACD000BA8F519E04F3336BB4C77958491050A210
+:10ACE00072FD18AB50B9E729B97EEE4D361B001244
+:10ACF0008D31254A5CC0729829151BD412F340F699
+:10AD0000C5587EBBFA36672FDD0D70D3B0A47181B4
+:10AD10000967BC71F77B0073AAE59AC372CCB3755F
+:10AD20000CB06C5F9ADE46175598171931B6188A21
+:10AD3000688C438329E87CB13364EE4D4D68B79845
+:10AD40007200E13C8656FCB1A75F5A4011711ABCF3
+:10AD5000476B7B1935B2CC46DC9187DCD1F2C3D688
+:10AD6000FE8582AA90E0C168ACC692158DE014FA07
+:10AD7000C64CB9420FBA1BDC500336AFC36C47E078
+:10AD80003082BAF30AEBD5571623E4B460098DC0BC
+:10AD900087730E79184093A5B8B633124F9DA83427
+:10ADA0000C1C39FF2C00679B60A1760C6A5A67FF68
+:10ADB00066F5369A3B8E8C9A75485E9EC413FF0CDE
+:10ADC0008A01F08E12B319AC9FC57F62D43EC9EAE6
+:10ADD0004B2A687B7102371D55DA50EA585C2F21E7
+:10ADE000CBB1ADBF2281981B5422FD41736DB4F8E5
+:10ADF000467521DF41C24D3CEFA62AA681D491358C
+:10AE0000B4C1B901211C435C99CEA08FE7F7A81506
+:10AE100034A79E57097D3E6768967E426E2FA13B00
+:10AE20003C001EA3D71724B0B833F3AA8CD5E94150
+:10AE30008CAB9E7E987C56D8E7ACD3CBCB29BB2E6F
+:10AE40009B2BEB14CBE2C80CFA98C1015D858C8179
+:10AE50007CE610E90D939DA971231F0B40967BDBC7
+:10AE60006F3AD88B93DB9F9077FA21169EDFE34BE6
+:10AE700067805A1E606D302D1E3947F18C5902C310
+:10AE8000A67C0307E5FD9B58EEE048BF58C2ECDF07
+:10AE900088EA5977CD76EDB4FE5A9FB677E8630D10
+:10AEA000E843D67F187E9870F25DD9A1103181D227
+:10AEB0004418FC7C1231DE5EA591F961AED75AD8F8
+:10AEC00095DB03ED4B2FC69BC0F30E4543765276C0
+:10AED00093C71AC8A1054B3E95000ACC268E346F45
+:10AEE000D5ABD85703E9D44CC7FEE82C7212F276E2
+:10AEF000E91EB3B07E2D7ED47D548AACD8B1C55D39
+:10AF000003CDC7F851D786F9CD0250293888217D65
+:10AF100090618943B7D5E7136F3FB7060F9ECD5BAE
+:10AF2000B8318E5697DBE5A6A1657C6787B343E809
+:10AF3000F2C933E73D78C1F79CA2DC9CDB124CE1FF
+:10AF40004F5CFA0B3A00C114293F6FE523693EBFFD
+:10AF5000AD05985AF05B4ACD56DBD696FF9B81A88B
+:10AF60003896F8B2A0E06DA1BDF50CB33AA72D9AC2
+:10AF7000D65CDE2B520AAA50E5A9EBC9E3606A53FE
+:10AF80003688E0541832864BB2FDAD6B14EDEC4FB1
+:10AF90005DFAF75798984BD0CC365BCDCDC7FE867F
+:10AFA00085784205E63EAC16948694E0500A0E5130
+:10AFB000DC64AAEC8ED6953FA49BD13293DACF3FC6
+:10AFC0001B15FAD6A46834069F5AC574702D6649BD
+:10AFD000EE8A379A04464C9E29F7EFCD7748271121
+:10AFE000FA1050C6ED584444A49D2BCB9C6A187BA4
+:10AFF000DA18F3566FEE3B5D7195F14E6912C03C65
+:10B0000047033499276FF0561CB69A5CF22B3DF338
+:10B010006D5245892F7232DCC5D2BC62490BFF8F5D
+:10B02000AD6B072B9F9BD8D63539405C379B68B8F2
+:10B0300069512447120A587DDA10438917EE5CF9EA
+:10B040000A0896B3EE52C2D83B65A412DDE41C1484
+:10B050004DDCB7CEA0A14A65D32A832FD8C010F00B
+:10B06000B0F88DCB0AD40DEC5513375A4E73867C4D
+:10B07000DDC54A7ED8C3B7EB20069606DCE6D89538
+:10B08000553798367F6E9A0766CDD25FBAE0EEE00C
+:10B09000151C8379897386620C582FFCA2C3FDCFDF
+:10B0A000A80F12BDCAE9E3CA7C04137BA35D74BC7C
+:10B0B000EDE609671C2F8790B4FF65D848E97A9BB5
+:10B0C000D083CE2F59A8F2F635CDE509C69F47EAC1
+:10B0D000C5B4483EED1A7F6966EB2659F98C0FAC72
+:10B0E0006083CF36A72A2D866DB62F0367EAEF5E01
+:10B0F00012F8409937FF0F1FD045BB6B81D1E2F3A7
+:10B10000CAF265ED480F320A4566C867B43D4E3F46
+:10B1100056A554C3C21DDCBD8DF86D7E2EB2F67BE4
+:10B120008380F5EB789EB6890DB47CE47B1D8E4E52
+:10B1300042DF85B40C5A01D2414C72A4AAD71E0436
+:10B1400051B3428EC8F5FAEEF7D3E820B8DA973E4D
+:10B150003C8D0384680B9D02868CE24A64D589E1AC
+:10B160006083F36BE9F4C9549C50EFE501D20C49BC
+:10B1700029E688AFFE941D6D4DAE833AD7EDB71525
+:10B18000C58D0FAF90224374E465E2E9EFD05BDF39
+:10B19000A5601849EA88221210094A547B177FAD2E
+:10B1A000CDCBAFEBCDF8D450653E82A86CD7A4C709
+:10B1B0004FC60D87C86C47D61423EB1FE9E906B5C7
+:10B1C0009A32EFB4204468D9E4B6799121601778B7
+:10B1D000901F6A9DCF1CEF4E0BC428D9743D1B9D58
+:10B1E0001E4432580CB598D4B1BF411F1FB4F4B3FC
+:10B1F00084ACF14C4EAC2415495402E0B4A920971C
+:10B20000084313E591F0DEC741B3B74B1AEDFFB227
+:10B21000EABDABC64CC7412A2E65BF0AEC52A59EBB
+:10B22000593F1EA923001B77E5FC248FA1C102A46E
+:10B230004A415337FC7A249CA885A7E88BE866FD31
+:10B2400004897CFEDCDCEDAE09DBE64B1A5A60F2C9
+:10B25000BE87ED45F9E0CD67C35DFD2AFBCF4940D0
+:10B26000FCB30A89BF3D87B07C5058EE144DD4B36F
+:10B27000546E861B506E15C8A59BCD28CF46C23391
+:10B280004577B0FC86AF2945B1E62424ACE39DECBC
+:10B29000B17624368B447B196EC0FF3C3F11BEBB98
+:10B2A00000E32A4F0A3D97D4CCC4FDBADD8AE14CB5
+:10B2B000CCC2ED4551AC9E7EA09F03E89DF3DE38E5
+:10B2C0008CE11D7C848E542A89093EFC00A5DB1E7E
+:10B2D000778F4F68B35657374CF3FFF52BD29E4C00
+:10B2E000443527D3355C824825C5A80B8F9C6B0954
+:10B2F00054E15F40FDC951CBD483F8B3C516642631
+:10B30000637536B062842700CF51B53859A57BF1FB
+:10B310001959014E1D5E6F764732801DA49F2DB9CD
+:10B32000C31A9B7AF8C274E37A8983BF95EF4C46BF
+:10B330003ACAD522B6B754732782CFAE5AC0840E0C
+:10B34000E00AE67DA3D546D09897434F28C4290C40
+:10B350003C6E8212786CEB4D30F0645D0BE41A2386
+:10B3600085F0FE293C6F2B55AF194C498B4114C712
+:10B37000A32D45B66E52320D7B085A04EF6DBF0BFC
+:10B380005AB8817AE08A5D65E68C947F3AB1A9A5C6
+:10B390001FCEB9238671F6635229DD7F4F5504987D
+:10B3A0000BBCDB78A17A3C1EFA30855FE1A3A26575
+:10B3B000F65E68E41AA6FBFBB6674E5E2027BB96D6
+:10B3C00084BB57C119025B0BD2611273F645DD20B5
+:10B3D0006132D972C9CF1D4FB6F979218788158C92
+:10B3E0002115ED00225ED37442B99806D539A88F95
+:10B3F000EC7D18BBD958E6FB22F46F5233862068E7
+:10B40000C223004DFE0B6E2A4C8964C270CAF0CD77
+:10B410006DDBB801E7DE84A1E9CC6881BBDE706535
+:10B420005FA7BDF3356EF88B1F3F94D0DA2C006B0D
+:10B43000098F7EC3441C6DB0249CADB2713ABD74BB
+:10B440003942F610012B26CC37DF3EF2D0CC1EADB0
+:10B4500023FFA5D32AEA1DCC33C6124A4A7BDDDA84
+:10B460008731B046280D5C3AE5E8E6C08BF0C9CCE0
+:10B470002B1CA3582CA1DCF0B95E1F9B2604453C75
+:10B4800099BA892DB4B9F66ABE9E73262FA369D6E0
+:10B49000BC793E6EE2D84C79EC2161912302465092
+:10B4A0003CF6C885AE9F0EB41058D54E56F10B72BF
+:10B4B0006A205194BCEB7B6AA4865C04F23FA7D857
+:10B4C000B28AA7CC1D8DE2B6EF8A891DD0E8CA5793
+:10B4D0000914BD77F98F08C07EF7A31AC7FBDC37C4
+:10B4E0001230FBC2BCFA8E20FAD2C904AAAB859BEB
+:10B4F00054BD4A524B6A131846D96967AE82E93780
+:10B50000D662CA48BE7F89D65BD990434D471A861A
+:10B51000E76930EAE38B355B710D0CB9F777381AC0
+:10B5200099EDF4B593FEA35B97229CAAF2F7A003D2
+:10B530005DB12CCD21889F47D5296717B0E011A3B5
+:10B5400088542954C7B978307D64CDB71A5BC25985
+:10B55000318C1A5B902F5F80E097F85B05954FFD6B
+:10B5600057DDF29232D5D8D0583E51D5FBD9C0E044
+:10B5700066D926C418930DFE8421F71BAEE290E62F
+:10B58000148A6D3AB3C67804B258F5897A67A23442
+:10B590004C1C4A5E62911DD1AF8D5A64715C3C8235
+:10B5A000848FAB19A8128FC88C46193C12FD6DFE12
+:10B5B000B0225A4903587B0CDB498708D0F7E8F1E1
+:10B5C0008A8D5200402938B77DBD12B97E5F7E5802
+:10B5D000A8B2A847AFE2158DBCEE2016CF9CA119EA
+:10B5E000BB85D29D5E1F0CD6314D68623712333356
+:10B5F0001E7379678F42F369755B99B802F123195D
+:10B600004E7B578C3E3CC1BA9F0FF1F838584AB573
+:10B61000527B8DA826CE9DAD0079896942F179D6FD
+:10B62000BB26741C2D7513EC4F2CDF4DE319EC5C1D
+:10B63000D2DB301A0FE22E11FF017BD5533FC61526
+:10B640008A764DB503AD8C7503204051A441DF1EB1
+:10B65000307F7F6EE562404225CFC34532460E1AE9
+:10B660007520B049728F55E0BBAEBB6A6878A6F50D
+:10B67000CA609B674E2FCAB604977E4FE1C5FA2673
+:10B6800068D9744CD6DA98B63E2EBD828E58AAF18F
+:10B6900019732DBB5FC247C2DD5E8F246264EBE588
+:10B6A000324CA3805403750A0F7F518425C5AE78B0
+:10B6B00008B0B1E5708828C324E6BA430E927ADD5B
+:10B6C0006081436AB236AE9C1E4F45E8C5B47AF03D
+:10B6D000A7C53CEFE9E5844860291A4D0CE0A89421
+:10B6E000F4794C40A88C47EA1E35571A9D2A99D503
+:10B6F00068CD454F2EFEADBC6EC0A77DCA77B59E06
+:10B700001208A05C9477321B1B790443C6040F44D3
+:10B71000A0E463BFE98BD865EAD336ADC974F355AD
+:10B72000BEF93EE57E11DF848B16C6DF55820571BA
+:10B7300063F6038A48E9D633361938F13C66DFFBF5
+:10B740002DA8E0B5947DB8A1502177F100C4D26452
+:10B75000FBF323FF8E9202BC583566AC44C890A020
+:10B760002943A8E2AC35386B2CACC7612EE7E98FD2
+:10B77000C36BD69A2F04F4EE13FC26A2CAA126515D
+:10B78000E28AA892D634F92D7E21C7A9F57B1D4304
+:10B79000F5E391758018B4A3360C65DE06A8D5A72D
+:10B7A0003497310B9C7682097C45EEDDD737698072
+:10B7B0008D3EA8291EE4C69E6C4C71F607A016F1BA
+:10B7C000D12B8C8A8423B3A32F4A327DC54C12E936
+:10B7D000409730AA5D936C5EF41B3078A33D7D47A3
+:10B7E000F712CE5321C52DF91AAD4F9F08E0C6FAC6
+:10B7F0005C0295A55EEA39BB82414E9A38FCDB9922
+:10B80000EA660B244858DF6327644D596568537F07
+:10B810000370B54430C819F064D33A3F11B06B8B54
+:10B82000DB8BFE005663DE37A4BA44059A74B12060
+:10B83000AA04F66C52EB73AAD240E5C3A23E0913E8
+:10B84000828B47887BCEEA2A8053B7E28FA0603193
+:10B850001DA4839D380099EAE27B00887BFCC3D35A
+:10B8600025ED98A00D23109BBE9F810C009BE6D870
+:10B870009B6C1BB1EED6E3659C40F4C14A93AA8A47
+:10B8800070959FE9170DDBBF0B692F89B6140EA2C7
+:10B890000F8080A35B461C2AA8629D05185A325C63
+:10B8A000136AA9433C49B059EBE82F058033704730
+:10B8B000B431A151E5FCD3A633752B9F2B3803E19E
+:10B8C00060645316CC6B91E63E8F4905145D24E00D
+:10B8D0004A5C4D576AC8BB1407FA04860A23E6FC83
+:10B8E000A736BF8ABA7E5F6C12639CDEDEDF5CA186
+:10B8F00090147CB9DCFEC6CF95AEFAD3D5A32392C3
+:10B90000FFFE052CB1A7D82697F98BC08F976F63E0
+:10B910004E39A6FEAAA0142C1CCB785DEB1E6E0639
+:10B920000D73F78ED71D88086291C7F88E567E3842
+:10B930004C3F302400D3B7FD982E98BB53DA9D744A
+:10B94000F3064A9EC6CBDF2A18BAFB98538A83298E
+:10B95000AB455203BF60D8BEBF036E7220C47333C1
+:10B96000A298A248FA1EEDC773937FE7DFEF5A371C
+:10B970006522D615D4A3A036543223B25F7F47BCCC
+:10B980006F2255168615C7C70C27F293396F6ED3F1
+:10B99000944CEFC7AC542A926F2A86241AFC65B0E7
+:10B9A0004CE7EF089A0486797508EDEC779996DAFA
+:10B9B000B1B9C228CFD8EDF226ED8FEF143496043A
+:10B9C00040EF0DEF2CFA85C63F916696BDD0D97138
+:10B9D0006B27E9F18E51068AAE60C7615351D0D60C
+:10B9E000260C4A3EE8EB503E989E99219E6DBA89FE
+:10B9F000457CA441CE4C7FB2810DB63C26065FCC7F
+:10BA0000AEAD264B8B42BA695D2FEEC8E6310E848F
+:10BA100050BF751DB3DE40365A83B25786B1C84B4E
+:10BA20000280CAB6194085C5A36F6AA500C374A376
+:10BA3000319A5EF55ECDEABC72A1367F293B51B0EA
+:10BA400099294AEB086E16619210C2E482CFF45134
+:10BA50009B26B06C820C5D1A2CD14760C2091E6611
+:10BA6000E20FB0604772953C843E71829E928605DB
+:10BA7000BEBBC8B31266D93FEFF6D21CA3EF2F7836
+:10BA80006DEB98A50A51477ED54F0060612D541487
+:10BA90003244B165937A90AAC3EEF7910A079540B4
+:10BAA000EA933552750CFE6439243CBA74C5A51767
+:10BAB000E7B80C8A468429B7E639113B48926E34C0
+:10BAC0000EAC2E8B4FA938E242FEAD0452AF99F472
+:10BAD000671E6362A726480730FEFA17C7A92D54D0
+:10BAE0003EB198A08ADC8C80AD7ACEBD1ADE38B526
+:10BAF00027AB0BA5E3B494F98F5CF83FE61208235B
+:10BB0000308CC731D80259EF7000033360DE67CE46
+:10BB100015AEBAF74F6527077B7EFA1D7FE60CAAA4
+:10BB20000B1F60CC3267C8CB58AF7B387920A4B0EC
+:10BB30001EFFF026DD27E1896D479C20B146F8A75E
+:10BB400060A1489BCD942E97047E67466B9A098B23
+:10BB5000A3E4197A4A0ADE92C794D56AADBB40AF16
+:10BB60008176A4CA7078A10223863CB3C3CFDA04DD
+:10BB7000F6EF93468B626726CCAEAACAFA3E1A3419
+:10BB8000796124742ECBDD89E31C9EC7AAABDB0E42
+:10BB9000446CC42984737FE3A1042A7B89A51EE138
+:10BBA000927955A52494B0F46F27C995DF4CFE6BAC
+:10BBB0004C1EC8E13287617715694F12B40DF03819
+:10BBC000CBD2434C32B15318F62888E4E33D4C2CD9
+:10BBD00035E8144B2FDDCF6B94E68D6F8C8FA7D596
+:10BBE0003B451B86DE672CD4BE12334BBAB666C407
+:10BBF0000CFF51522C1BF4E70EBA6D8162D97BE326
+:10BC00004901CD933103AE568530C50AD6C041CF28
+:10BC1000D50F16736971A9FA6CDF860E45DCAF701B
+:10BC20000B446DE5EC0A6BEDA76165DAA21E646B4F
+:10BC300088F7706BA0E65788CB71BF757A01D21C6C
+:10BC400015CB15D4D2404DC22132E34F2955903A3D
+:10BC500074C7A131726AD204F61C7164A191117D7E
+:10BC6000958F7FDC31E3A7290C212459906BF36871
+:10BC7000F9033C8D1BCFAF2152A2150A05336A533D
+:10BC8000CE5ABA193E79062EEB778E93787C5E7C7D
+:10BC90009A53DA027CF802CBFCDE48342B7A2F115F
+:10BCA000BA8C9281FAD1C7265AB6A2DBA058CC1220
+:10BCB000E1D65615554EF7B90AC44AA238D0C79AEC
+:10BCC0009FF62C5DF58550441BD6629948065E01AF
+:10BCD000EA17349382224A396CA0D1C08887B25BBC
+:10BCE00010FEB409C2EF11474EEE93EDBC2920902F
+:10BCF00060CE95BC532A0B3FC421C7352E70C9E5D1
+:10BD00002416196ECEEA936E7523BDEE0AC51C9CEF
+:10BD100009CB6E00A9BCC698E30C6BBF99ED137DEF
+:10BD2000FFDB80BC5559B2D25B931D0455808891CE
+:10BD30005EDD3D340444177F46562139F09DE7B15E
+:10BD4000F5B917E031C546FD60ED9C643B8C73EF9F
+:10BD5000468EE59CD39CF1DA12CFB8DEF45513B8C9
+:10BD60007480CAA316CF0695B846DBF2444ECA606B
+:10BD7000C27A1E6A60EF1571426237415B3986AE46
+:10BD800002803CF72BE59849002F580E6698150164
+:10BD90006B9908766F7F569AC440F651912E083EF3
+:10BDA000C6003C75AA64703D02B939CC26B7BD63A4
+:10BDB000D6AF1AA0F0F8F9F98D2638BEE89BFAD371
+:10BDC000E7DFAEA87FA6DCACD4FFE1B1ABBA74FA72
+:10BDD000C09E973D391908497F2ECDC7B933174901
+:10BDE0003FBFAF18ED1EAFC5B5FEBC315849A3CD5E
+:10BDF0005433637CAF2F11426C36BA854D27FFFB5D
+:10BE0000D4CBFF71026C1D3F827D7694AB35BBC0F5
+:10BE1000E365AF83E751FB5ABDFE36A7B2201FA9E9
+:10BE2000B3817117F711D1AFC73ED9F2C942A9D476
+:10BE3000E5E1D88B025598A2720A0F59FA2EBCFD83
+:10BE400067BF5A5D334098EAB03FF6CB9205257044
+:10BE5000D21323643315B60A02ECCDD9D286AC0EC8
+:10BE60003C6354EB9B40B12E525835AD058BB377F4
+:10BE7000FC7A0030933C2A5F00C7A38348A9CC0317
+:10BE80008688053279562A1CF6EFFE8C474E7CD404
+:10BE9000A3683E596ECB4BF98C37B64E95728A9695
+:10BEA0007AD100758D98E6827A1D48D9FE12BC229F
+:10BEB000FD9363C53EE73A5FE69F40809C9E01CEBE
+:10BEC00098562C6FBFE87F8A9C951E9A7A2146D49B
+:10BED0003E2D364A9086EC6D00E8021C79257F21C4
+:10BEE000A0F301A22F5D16BFD17615143054DC7B70
+:10BEF000433FBBD10CE3AB0B32E5874039AD8A1130
+:10BF000053882526564CC9C18A90B333C815E8E337
+:10BF1000342B4C8C6FA8883DCE0C90B43A0F7CD655
+:10BF20001C3037AEC1F607835601662C35547C139E
+:10BF3000232ADDE968D62FC27503511FA47AEA8A45
+:10BF400095D24E6E1382A3385E28783087C09BE866
+:10BF5000D9C3AF498AF6571F93AD799C30EBCADA43
+:10BF600060A6896F966099B35FA82394CFC7A0D5C8
+:10BF70000D313E8397F5A886A4E8E0E3F87BCC2A50
+:10BF80000881BC7B28D1926FDE4DF9E6B7A59014ED
+:10BF900010AB9F05641E6989AC1DE2485506FD8FF4
+:10BFA0005F04AC1B9AC81EF020847CDD67A938BFF3
+:10BFB0003CAAD5B549A4670A33A4A95A1D3581BA4C
+:10BFC000CB64A4AC3E462A73BA42263FA5E393EB6A
+:10BFD00037D11EEB0D29B74EC51E85262D7D692F45
+:10BFE000E444B6B0CF5AEF1E8EFEAE4793195FDC25
+:10BFF000854B02785857BDA5DB35D4AA1D55CEBD5B
+:10C0000085FE9A0CBADB8E1DBD1058819EFDEFA5F2
+:10C010003940FCF29A0EEA3721426F28EACD21021C
+:10C02000634B120C2885D1C328A190FE08751071AE
+:10C0300077738E5A55653DF7E1374F8D1761AA9397
+:10C04000A30AFEF8E05D8AD48B52067D7748FEF1A4
+:10C050006DEEFCA6E39E084C722ECAB3524A58AF4E
+:10C0600050AFE91DA08794B31430FEABE24FD5C5A5
+:10C070003E9A48BAF4F26B22A2F5624B6D2FD001C2
+:10C08000E3833FEA70BFC8867D5B6DC11AF3501928
+:10C09000412CB288C8CD63B50ACF6EBC14F05E23C4
+:10C0A000C3D279DD6293838022E6BAA4DB86AF82B5
+:10C0B0003CAD32447BF3BC12CAFE4F398B1682FD75
+:10C0C000846106D325D8FEE8F9A37175A7D511B60A
+:10C0D0003C229D6D7E93F88E0D8C4235089CF75F57
+:10C0E000DE434AD537D90D1369D310980656890C0B
+:10C0F000E3F8E9F9501374E7DE6D80E9F48F1B5C17
+:10C100009F02305F8D42837294EE2A4CCF37A89302
+:10C1100009608EC14A70CC2D19B837A351BC0DED02
+:10C12000E3CEDFC2D6958B350B4D35519D57CFFEF3
+:10C13000571309791345BF79938E577EE47174C103
+:10C14000A9C8725C8745DEFA8CDDCDC3C4E6BABFF0
+:10C150004982AA7E23C358B90CCBC0E3F1578B3E6A
+:10C16000BB774268AD17DA1C83FFFCF5ED9BA24557
+:10C17000424FB5E525F1B35683A80DB190C5A6E4AD
+:10C18000B990A0A87B5A5F9DF4A83BAA9E21981263
+:10C19000A45AAB249B7E9377DE14EC0BFE77F45607
+:10C1A00023C4434C8424C4457F5857374337C2E3E4
+:10C1B000DB148B86B01A126FF4ED93E841B3360DA1
+:10C1C000985953263AE8FF850FA091ADC588AB9FDB
+:10C1D000A638C1034A1BCFFC7EF19BC02B414854BB
+:10C1E000CF06790729F9C667CBEE4F6EE3128B0BAA
+:10C1F000148BC02F555A7483711E4B346BD5B4BF4A
+:10C200007A3869BEEDAFBF1306FFC176EDFD72B09F
+:10C21000B9AEFFC9E32131C48D0B57811D529CA6D5
+:10C2200023379A180557A098FB7F08A2991722D3A5
+:10C23000B25B80298B51603727929EEE5A60890B42
+:10C24000E9E54FFCD05A9C45474306B03E4796D59A
+:10C2500016CAD1C2EC7B1C0DB919A75FF35DBB7583
+:10C260005FBD5DC2A78C928AD294D5EB771C8C2AD5
+:10C270000DE842150435FC3D5BE06B051E942E82F3
+:10C28000E3AA99AE6EF3C4E391867BC81C6D4DE6BC
+:10C290007E2BED7E41E56DCBE20498C92568EE83E7
+:10C2A000866C4766EF9FCF23196C7DE6EDF7C9A931
+:10C2B0003D2C4B9ECAC0A64CD1E1FD9946186C247A
+:10C2C000076968FF9D9C094DB7F851387ED2F47C10
+:10C2D00036B710D285B879499136511D07B4E84573
+:10C2E0003669F6FE8A24C06F0EE2409036DC9B80F1
+:10C2F0007055B1A99001D493F4AC56965517ABF391
+:10C3000092D958C112977EEB66DF31090C7673E53E
+:10C31000ACFEC910BF7E92000EEADFA648147594E9
+:10C320003D09FC05DFDCAB5250EF4CBBDFDD6CF5AB
+:10C330006D021181AB12ECA80FCDB8DC62DBD04DE1
+:10C34000AC5B1BB6A4E984A058B9DC66EC5A03AF19
+:10C35000CAA345A94F326AEFC841B3DABF6AC91E02
+:10C36000A71797D012C0405A1F2FE65C20D2480D65
+:10C37000F9DF48385D38903C46CBD082A1A96B9458
+:10C38000CC627E283B5F97C0D56E453B10EC1ADD32
+:10C39000DB5C0BE728C51A480C12054403F5605E08
+:10C3A0009A473EBC5A66B5674BB958ABAC12671C8E
+:10C3B000364905219625ECD365338DAF83AFF469FB
+:10C3C0008A3646984C1679B49800FA2378D236F714
+:10C3D0001270FAA8AA608D692FE8C8D307744D0DB2
+:10C3E000F1658F5FB5EEE7F95B01593A96FAB279DC
+:10C3F00095391EFBC2178F2B25625F4E9F880D66F5
+:10C4000099233D6A5485A994E479856F0C58623468
+:10C4100021DF575DAA891F7BB376F52BF7743E1D8C
+:10C420003B08D58D3740C736D8D6364B7A59CFCE54
+:10C43000D818D97A7BCBE6F1FAD3855C752F5C45A9
+:10C44000C70FC727BA009C5950F2C133F681962412
+:10C4500005933D2BA1BD049BA6503B1C857AC85A71
+:10C46000F75A679E0EEB5C8A76A36EC9EB2C0A889E
+:10C47000ABC885BAC41189B4CE7FC84AD132DCCDED
+:10C48000F80E7B8AF9F5886F38D5794D4F4093E9DE
+:10C4900008DF1989BBA57661684F5C10A7E763794F
+:10C4A000336B1712F5E9BB0042DE49269003A77BE8
+:10C4B000D0AE04090E772C633B698D87CDCD3D57F7
+:10C4C000C1BB6E77EA2261FC503F63F95C2F062CFA
+:10C4D000DD4F9C43AEA92607D227955126D525F5D9
+:10C4E000608802C792EF36FAF515EEA7CD2E6B00E5
+:10C4F000FBF4A8E7CB70F51BBAE44CE1C77A1E0D3C
+:10C500005A11FB015F08EBD91AE67C320B0BF0BE27
+:10C51000ABD03C9E05BEFDE588ECBC997A04FC23BB
+:10C52000EDCF8ACA1E0DF17B4A3ECA067B06430741
+:10C53000E6F06157F725FA6867EABD885F0AC95ACD
+:10C540009AB0968C8D2A8475D056976536EC8955AD
+:10C550006405CE6E831E286D5511D934608672EC49
+:10C56000F7A338CAC8A364B06E08951578C4AAA109
+:10C57000F6F2826B8BDB4F2557C3737A77F25350F9
+:10C5800045591AC20C52767C193599D42F4964BE8C
+:10C59000F6169ECDA0C8350900D3A323E0BB094EF3
+:10C5A00079A1A488DB01F63EB39414078D66CD3CD7
+:10C5B0009E5A079D5D5EECC37CEE05B2C275019587
+:10C5C00026C97CD08D7219EFE52CAAA95B4552E7EC
+:10C5D000024F260311BA22FB321100DB8A28FD6BC1
+:10C5E000AFA32B065A860B8DB9AF6849560938EFB1
+:10C5F000A445B95164D97FEFD446FB1C89EE28EDE0
+:10C60000EF4E614C239EFBEC797237963C07238FEB
+:10C6100000F9B71ED45590CBB6D868BCBF192C4EC4
+:10C6200001AF9028BDCABF492940EC6B2FE6893B7A
+:10C630003AB80C352768E2664B4DD282D64F566227
+:10C64000A79F58B25E27BBFCF6FF5F205FB226951E
+:10C65000768F790EC6B465403D38878EB74345F670
+:10C660006B3D9F71F69353F5CE7151B76839DA413E
+:10C670000D9DBB2CEF8C341AA58E00EB806CD3FC87
+:10C68000A0FCF7CE67068A83070716DC820F7218B4
+:10C690007E7890F28ED808197872FD895E52532800
+:10C6A0006A6C7D3FE0D5FCFF295442795A15A1DF21
+:10C6B000F83999424FECC6069AAED089D3B8DD63FB
+:10C6C0009B8EB930595C714EFE8079E3069E3DA287
+:10C6D000D64AACF754E5CB43399B971408966A13B6
+:10C6E00087E4AF0414C1EA575508CAA60F2AB0BBA5
+:10C6F000D4122FA8E0E57F189978EBE7201059B302
+:10C70000B14E966DB21A8456C0BB0E000C758F32B6
+:10C71000783D10E0F6CF52E300C9C1E36432C3961E
+:10C72000DE6321CC3639B664D967995CD4E7E83A40
+:10C730003E582BF5076A41DB82C21EC1D140A4AF2F
+:10C740002085673F2FE0E68CC5EDF7C16525840A9B
+:10C7500025471F56A8DE743044C2F6C39863CF281D
+:10C7600044FB6C626C7389548D2D0861CF7B83947C
+:10C77000985B161CD336EC10BDF0AC3C6DA796331D
+:10C78000D71C072BD3FB5CB8641386F8D573D41D74
+:10C79000EF2736893D824F893E5846E5DEBB9F6ACA
+:10C7A0003A23C826ABD7EF7EC2CE87CE45F880515C
+:10C7B000B5CD503FD4E9F69CE39AA3E2034E33791A
+:10C7C000EA34045A770082EC8640719EBC625DE1D7
+:10C7D00042AC2BA69E963C89DE4A82DE533A1EB2BC
+:10C7E000DBBB8CDFC9508FD811B379E5A33C236044
+:10C7F000434C1768819FB3D9AF986459F51F6958A6
+:10C800000D7EAFBB37E6C26F46DE75F3021C9D039B
+:10C810003D9A5D127E0577D7A435022911914D40CE
+:10C82000EB54387EF9C5606A85C6AD823B3914E7A2
+:10C83000E717AE577DB9E33F5B8AD8B81023BA7BC0
+:10C84000CD35EC33FFDEE827676D5E6AA5AC34CEEC
+:10C85000F924AF100109956111BC3CA08BFDB86BA8
+:10C860007CAEFDEB8F8F0863349CD2171CB8DA9C2A
+:10C87000AF3355440340C119F4FF8C036225AF4622
+:10C88000DF6C4D4208D86134DA999BA2B693718669
+:10C890003437D3101E353C3069874D06C44BEF83C7
+:10C8A000E5C9A1DE8298C0593A0468EEB5F520E4E6
+:10C8B000E6BCC924216511AD0AC2752C026C49A1E0
+:10C8C000A281D695EFEF7E90006A191F67925E8A6B
+:10C8D00047774BDF2A1F895AA079B2E65E4706EFF9
+:10C8E00007451205A38B5FBE242C180BC520F678D4
+:10C8F000828A37358280E90AA642A18688CA9A22AE
+:10C9000065F2427F6F9E99F74898FAD91C8381FEA1
+:10C91000C19AF863323F587E204909A324FA56038E
+:10C92000D12D98AE32204571FE68174FD3169C5614
+:10C930009211775F9509A32EA449C01D24D4C35F2B
+:10C9400088EED05926AE164FF408ADB3555571F6A2
+:10C950004BAF57CB0E3423B0C76F0EE2D64B7B0CD8
+:10C96000A264D4098FCE55E1138C6E5872F02569FC
+:10C9700030E5669803678F856E9C451B79314608C4
+:10C980004DE19325CF5584E35304DE0DF1E3972F5A
+:10C990001402474B9D07A826807D2178966AABB686
+:10C9A000133162F7CA38F95C6629B8F2F895D400F9
+:10C9B00092F25F4C72E86FCF5D86DD7EC306233A4C
+:10C9C000AB6BE7403E7DBFDEDD9360DEFA67C5B44A
+:10C9D000C355C095967FD5AE529977CF90C50BB809
+:10C9E0008C33720E5011BA8DC630835B886B43AFA7
+:10C9F000BFF7143A44CC85E470D4DDC3187B1CC760
+:10CA0000B69C082FAFF334E3943B8E8B0C02E88185
+:10CA100071F176B6D5C78288EBAD6CB8A9D4719F99
+:10CA2000167588CE0A1C2E6E5B562669FABC2BA1A1
+:10CA3000EAFFEEE3BE802E0228036F06D8E8F23448
+:10CA400075F497EF8AE8191D47919D6E3C0159DDF9
+:10CA50003CF3747F57638ABF5BC31AC020A99280DE
+:10CA6000A2CF517DADD0B49D5C6E264F5498B24498
+:10CA7000273F7CE9455DC467AD2B4F5CB19FFA173A
+:10CA8000D11B9EB3ADFAFBE9D24EB14C5CB2CEF9EC
+:10CA9000B551A8F895809F602EEC779CC9A323F52B
+:10CAA0006998C8C18C00D65B0BE2DD1EBD555F03E3
+:10CAB0002CFEDE906ADEE54103DC8A117F49716558
+:10CAC000B869B61E14148E7CD79F0BF823681C9E81
+:10CAD0008AF5D9B79A55B7A000975673B5E8AC4117
+:10CAE0006D2DE72D2BA6F5C4B65FF86F63F9776F50
+:10CAF000B01798AF43E4852D9B9F3C914D53A3C342
+:10CB000043A3DA2D118358376FEF17A0F2864D54E7
+:10CB10006481819E4079D0690D260C343096D66DA3
+:10CB2000A1F036DFEE90E4E470D2B67376DA014C11
+:10CB30000A3D17FFF486450F1B3476FEFA67FB5556
+:10CB400071E3456DF91F5D83E17796BDA2D1A247E0
+:10CB50009116751F5623F08FF4E794E93424A3A5AA
+:10CB6000EA304520B46C99641A4FDA26D8813C60CB
+:10CB70005768AED4A649A8BA5E800EEF2F393C5054
+:10CB8000C89856B4BAB6316D3E2EF25F18F92B6DC7
+:10CB90002B1319C8F02BBCB6933A060DD2E2EDBBAD
+:10CBA0003F2C66230801C6C1BCB390ECA0B382E45D
+:10CBB000D2C025DB8E2BF4A5D24D68F3370B2DD9CF
+:10CBC000E7D26FE22245D6652E5606C0EFC8A7FC15
+:10CBD000F148F65A587FDB03E42877134A6BF28A50
+:10CBE000D3CE62ED3B6592EDD20F79B01940AA1F0A
+:10CBF0002499C16160EECCFED314DC45449B3A9B82
+:10CC00005CEAF3A0DA6AE61BED6C216524DF1F48BD
+:10CC10002071428E527DABC636785586324D841EC9
+:10CC20003EC55B70CB520A36E3512780D415BF75E1
+:10CC3000530FA6CC7C727CDF9AA091C95A0DC4B464
+:10CC40000FCD0E5DEE655B049833C01E4B41431C57
+:10CC50007239347E81861D5196D7164E3961D21AAB
+:10CC6000AE8B51CF6F5CEFE34A3C9846019FB96FA2
+:10CC70008E78914A4501A9CF830BDFFDB19BD1F896
+:10CC80000C3F966BD748ED1AF1A97237D2E3CC91DD
+:10CC9000FC487C88691DC4E3830EE1E7B08317C4B8
+:10CCA000D8E327073F8638081ADDF0F077E0E31A6B
+:10CCB00099D4C44D1AAA4D818D9E80F4349B1E8850
+:10CCC000148F705F5A2F57A58767F4F20AF1DCFDC5
+:10CCD0004C7E92C87677523E49E5D64D149C171883
+:10CCE000911D7C938C2B3DC2E3D3BA1A5C3FD511C6
+:10CCF00064722C29003E1A42547E419C3D3DF5E869
+:10CD00005B58B8F771EBE96867FC98D7F583AA9E82
+:10CD10009E595A634A99842EEAB17A93858A7D2571
+:10CD20009E159F7438D146E2DB051E7FC81B019714
+:10CD300064E64EF61E07587F8961AFE2AFB4B828AB
+:10CD40003120882287628DE93B7D3F94DB5BCE6595
+:10CD500063A56600530A6B1BE74838483CE487A587
+:10CD6000821C818712068F70A4BBAE499F9FA19F32
+:10CD7000743B19166215C89E941AEC40766BE01F3E
+:10CD8000DFBA95E0EF11B324D8FB46205B70FF3E7D
+:10CD900010A771F6572F84BE16E5FE36C4D661F093
+:10CDA000BC22406BC0D1560F9EA790D4B484EF81B3
+:10CDB000555A37959EEE4969DFBEBDF9500C01D733
+:10CDC000DBA90A15235914B30449E169AC012535DF
+:10CDD000775A2BA931C048E0E626D5F8CE9B42D839
+:10CDE00091BC79D759FF449D158A330FFD9DC4FF2F
+:10CDF000A062F1EE2D59E252C190CC539E5E0CD749
+:10CE00008451942AAD63B09A474585250AC2F559E5
+:10CE100024550AC7BA7CD69B95951E9827A491469F
+:10CE20001C09E123C83FBD19689136256B8DBB9065
+:10CE3000D4D74DD905BDE68DF06818CDEAC76897FF
+:10CE4000B8C88928C7C8690854D2E71275C08321B9
+:10CE50004C960C38147BDABFECA547D5E19BCAA4ED
+:10CE600093031F3301908D126F5E43944C771334FC
+:10CE700077EC2E8BC76D2BBA221A9044B44C8131BB
+:10CE8000BDE415FD47C1E840533535E22544A6E829
+:10CE9000EE07F028E273254B3621F0CB78767471DB
+:10CEA000ACB037E688E87DBF1F0BB55A78AC548C20
+:10CEB000F51F5BDDE9CE4F3B10CA34C8CA5A090ED4
+:10CEC000825474D022FDC0EFE8C09B01775F2FFC35
+:10CED000784990D9EDAE2A7DAF61DBCCD37F65B9BF
+:10CEE0003F05BD8EA9C84E3532183EC0BBED0D13AF
+:10CEF0009EE6F83545DD5BB4B38CDB1BE1DB933795
+:10CF000026FE3540E87382DFAA291A33F23B8507F3
+:10CF10003F0FFFE59EEA887DA04A3634290D8C221A
+:10CF2000EB74262766E657CB05F5726F613DBA1D97
+:10CF3000E1C56ECAAADE31C447A2964A8995829994
+:10CF400067C34C1832FC072F37BB11911C689BD369
+:10CF5000992C5E03DD84D7DCF8B35A5C506B88DE15
+:10CF6000EC1EDF5B2FBACBD48D30870393DA4D43B1
+:10CF70000D0322D779BBF3351C660629EE1388E82A
+:10CF8000CF236B177D367D858F8332705520399086
+:10CF90004B8F8C81A3299F0588D4410592894678BF
+:10CFA000308BE7BA64231C6E1F8CC6F8856FA315FF
+:10CFB000BE3BFEA0663D65C25475B53C012759CA0B
+:10CFC0000AECBF1F4BB8D536F857F2BA6D68CA5293
+:10CFD00008DED40D2CCDBD927BC4CDA209CBD920C7
+:10CFE0003E78D70B1A62FD8FBF3FC7652D5863256A
+:10CFF00099F7FC96A662C83518D5EACB3C5236BBE9
+:10D00000A39A67FEC4C3840F3E8E3DCA6D2F68CAC3
+:10D01000641287FEDAF5B339B77E2791BD7B360EF1
+:10D020001379ED2CA75F874935A25C9BD5F5B39C9E
+:10D030002CDA3BD7CEAA6DDAC05C01F64709099B12
+:10D040001B6E4F4EE9C1D39DFC415FC310D27A9352
+:10D05000BB7088683805983B6D5973E218C8FA0AA6
+:10D06000647245B0B2B935B5D3F5ADC13D500D735D
+:10D07000232522803C915060F0FFB2C048A27D9BE6
+:10D080009673C7277A7591BEDE7A5FA177247DF308
+:10D09000C787AAB69DD4EABE440161298C355440A5
+:10D0A00020512D1E6435BBA6D89E5DAF97376C010D
+:10D0B0003A3D43F7DE89B93130B442CFA1C3F23AE9
+:10D0C000AA778ABBA2F81FBAC025972C44B8E8AA51
+:10D0D00085B936C4D592FCD53775EF84EF104B5E19
+:10D0E0005F6C78D36E6BD57E6CD140E48CCFE3C49B
+:10D0F000A488884C4481BB2036792CA14D76E3F37B
+:10D10000149367CAFF962FA36F106D52E0F19A6ACD
+:10D110008ACEF431E3C43F28BEEF4BB70F32F85448
+:10D120001B5DF5A18515A325DB9A709EEA1DF522EE
+:10D130001493C559E8BD000ED445A8F65A8CC0FB1F
+:10D14000F388E77F8E005249F595308C20879DFA51
+:10D15000263B665CD9624C9820BB70F20839D8DF58
+:10D16000B42A439A2B300EFF7F8C98F5751E91EFF1
+:10D17000CA9627A1AA7767EB7380F87FF577BBDBA8
+:10D18000973401BA6B00B5A687685B454C63734062
+:10D19000BFED2EBE6F64C9D1E107B0EDC5D5054A1C
+:10D1A0000CCD995E07BD5C759B6EE5B7A642B59A3E
+:10D1B00032EB6AA3F6850BEB4EB3D134C83E3B404D
+:10D1C00037458F924E4D2CB1A6617D3EF87619D130
+:10D1D0009498D3618429BD0A8F89B1B29E0D84EFE2
+:10D1E000DEDA8BC675D387B09900C76A87714304AE
+:10D1F00036F047CC1784EDB70A7C320C3469D26F15
+:10D200001A46A3FF1D9DE5C7C9CDD8CC64AB3E9699
+:10D21000626C199A196DFAF69FB78955A5331ABF32
+:10D220001568B96D7B338BDF1059F84318600DC852
+:10D230001ED9372E2DACA29F69ACFBDA75F00766BC
+:10D24000A7573AE1619D0A38C6F5033BAE7C78FDED
+:10D25000FE83D558D4E3762018DC4A77EF158E7C10
+:10D26000D02F2C0EA4626ADC47DB583DE979EFBF72
+:10D270007C085BE5DBA6D9221B4B82FAE4FD672321
+:10D280001EEF9CBA710890110C3FAABA4E0C5A0CB2
+:10D2900087AE5B52D9E9298277DC8D25FE6AF36976
+:10D2A000174319171B1F879AFDB52B5871D1CA71E7
+:10D2B0005DD836541D2A80742C6563EA0C349AD0EC
+:10D2C000FD366303A52A49D18AC38DB107AD4E113E
+:10D2D000F471362E3ABC2D3AEF759FCBC8D20704B5
+:10D2E0007FC4D5C78138AD95F717A4688293A1A4F0
+:10D2F000E2D0924CFCDFD176505FB87D85CF960CA2
+:10D30000F3BF70B99922ACE028080F50B6FE85B380
+:10D31000C6686F2394E456FC047295F1C8D8F631C0
+:10D320001DC049DFB9613FD42D6238826875FD3177
+:10D330001DCAEB491EAA61EF7A94C03546122CB77C
+:10D340008887673A48BD10EC105466FA1B940F5555
+:10D3500030DA6AA8F4CD6A854DF6966DCB1F29C0E8
+:10D36000E00639B2595BEFD9B615B3BDCF2FF8E15E
+:10D370005027D3429EC934FCD983ABC2D781402EFB
+:10D380001F05A3EECA35BB55FC29DE1A48359B9A0A
+:10D390007460C6050857C4D19D877697779D52273C
+:10D3A000CAB911565B956FF0808AC458A9E9E0BFED
+:10D3B00075AC8354D024D3DEBB5F97EDB000B95A6F
+:10D3C000F295E18027F4D5F0F723F2A5F4A4F30158
+:10D3D00004313E1993B56414AD8FF76BDF6A8C2668
+:10D3E000871FF8BCBD98116D8697EAF83FF2654C2F
+:10D3F0006915E4AC22725E4A11B8F8674268848C01
+:10D40000C57CC6A7E30C1835A3254FD16CD05DD8D9
+:10D410001A081F1F3D87D34C2E73E77FF0CE562B83
+:10D4200031198051A9DAEBED0E15D8C9A3FD07B269
+:10D43000E2D3B5106DACE146FA791927EBDA2D99F4
+:10D440009B4E372DCB5E87D6A9409EBE40142DAC97
+:10D450004BC57336540D042FB8ECD99D7730FB5271
+:10D460000568145769BC61AD121AAB38BD9994A216
+:10D47000356C56F935557A9C97BB1C7EAA57AAF095
+:10D4800006FE429A19A844F30E84D19AE187C37C20
+:10D490006D1A772658893D626C8BCF2868B4AF82AD
+:10D4A000F977C61DA7E1B682CB2AC411177EE3C463
+:10D4B0004FB0127F094C1217FF6C4BB460D8D3E603
+:10D4C0003C035D225793FBF10626B16166AB5E6AB1
+:10D4D00091EEA0ECBD0B05A0A1E81604C54A587357
+:10D4E0009A61D7E0B3661EF9000984B0C5CB0D760A
+:10D4F0004CD9BF6B0EEB2018C18D99AF20BF627263
+:10D50000DBE7DE6DD55B5953799F77B15334461411
+:10D51000A229614D014E9D5FB63C5D2E7D70EF18D6
+:10D52000207BEE3339BE80AA657D9B1041A734264F
+:10D53000126F86443187B10B4DD52657DFD0652D4C
+:10D54000023B2C426DF2ECEB37EF1E9872CE3B4360
+:10D550008E92A1EFBCD2E2F1A7C50517F8D702EA77
+:10D5600095ADA51A2297BDB0E8B380CBA788AFAC24
+:10D57000D68E2F308394DD5B273390B39556B4C39A
+:10D580004E4FCFD75851A90ECB1D878546AF4A24A1
+:10D5900027B295846F2DFA36660A9FAA5613022F7A
+:10D5A000BB55E7A023C8F1F170D84CFF98B7173CE2
+:10D5B0003A7439CE2D2070843E3D8811457B745BD2
+:10D5C0006FD1114C008ED921E770537CB942F3E73B
+:10D5D0000A16ADA88ACE3D320DBED25135207C3719
+:10D5E0004BB931542A17A320BD612FF039DDB39A0E
+:10D5F00051949258C3210D7B18169F573115ADD306
+:10D60000CD1F4866CD5417C043C5B86FA96C8AC7F3
+:10D61000E09378F1331CB89AC5223814289E2DD493
+:10D620000CCE5B78E311DC46754AE4516CAA2C32CF
+:10D63000221BBB0776989836C6EF932C697B91071F
+:10D64000BC6A9F08AFCBFDD483E2F6ECABDEACF84E
+:10D650006BA0ACB94082B1066F01242DE7DEC7098B
+:10D66000801BE6CCE317801D182E31D832406F6442
+:10D670000C35E36AD99993165F50456F25D108415F
+:10D680003ED76310B9654C1FDB4FF8464C9DE90F40
+:10D6900068DF2D6E5C7C5116ADEF5DEDB0B06EA80D
+:10D6A000D1217F1F6FB067A272831A52F0EF2AB7A1
+:10D6B000881F7955C1C554D8B5F653159281990D77
+:10D6C0002374E75A127DE33760D928495E0ABEC544
+:10D6D0008E5ECC068B0788FC129E3082BEE878A94D
+:10D6E000CEA6FA890AE51E41121BEA311BEC22661E
+:10D6F000B8C6ABE8E2D864C422497EE3F580A24113
+:10D70000DBADED1A0FF3732094A43EF37469E83394
+:10D71000318462EC07CA80993BE81D66175C55C5E9
+:10D72000C994593AF44BCD9759F41B1A3CF651E081
+:10D7300063466A0A9608FD4C17693741C273ACFC10
+:10D74000D9B9A7BA748A68062838A049B8EA400F40
+:10D75000C8B59C46B988B03CAB318161B83FBD5279
+:10D76000BF30AEA7AD8F81A9032DCCFDEF074C10C4
+:10D7700058352B0B2EF5192380223EBBA4457D3551
+:10D78000FC0314D8DFE00A424FD625D3E600C202DC
+:10D7900041BA24C8366611084D9A9A35B2751EC82A
+:10D7A000B6FA6CC059428A15AB95A86E55352FE371
+:10D7B000DDAAEC5C4ABA71B8CFDA0C87DCB4C3E3FB
+:10D7C0005229513FACBF6135E1539FB2321AF50582
+:10D7D000C7173EF87E38D7E5BDC6BF76B1D29F8663
+:10D7E00002400E353E1E94A2A71FC39CB17520D3E4
+:10D7F0005291E199AF7DBDC826F5CCD41E65E99D57
+:10D80000D96C5912C4A02B225F0C264001A6BCDCA7
+:10D81000B82BACD0F6AE42A380B9C0A38EA8C08806
+:10D820003E59E058D470744EC8E498434823FF3200
+:10D8300015E1D87A503DAF248981379BE8F00B0B76
+:10D8400060D736AB594044A08B54638AC60BDCB713
+:10D85000F80E603EE232282EA049199318D92ABA50
+:10D86000CBACA641133F891C511310FCDC2D4D3568
+:10D870009E2B1B65CAB25AD742FDFCB90A2B3180D8
+:10D88000D0D4D139CF7F0694177B859008DF7B53A6
+:10D8900002EACDCFBF3D5E9AE2D224D1B13CDE4553
+:10D8A00010E8FA461B14BD2D52614CEE8173DF91D6
+:10D8B000D2E680B45585BF40D5C3DD1538349AEB28
+:10D8C00058ACC5867B11A7D217F7EC005AA6399C35
+:10D8D0000A4CC5AF420B8B40E89DBE859C5F403B28
+:10D8E000844F0AB3DCCF08923A2C0E80722736653B
+:10D8F0005631C590E2ECB5C09E78A7FC915AA68E31
+:10D90000238BAFC7CBD4AC877EE2490B7BC5D0D489
+:10D910005A4EEC870382F397D71F837A49B2299A2C
+:10D920000CD67267656E8E82AE5EF294F83A1491F0
+:10D93000593D656027D7F7822007265A321F3E756A
+:10D9400065269183FF8824EA55AB3D5003F8EB5ED2
+:10D9500044DE44A8A055C9BC4DF54F0B5EDA619773
+:10D9600026E0DFF6FB2F2DBEE1550DC85D6FC7CA5F
+:10D9700022E28E86B51C73E08529BE6B5D0792EAB4
+:10D980005CF6ABB21580DBD32035AC631BE5AE7122
+:10D9900019B8A72C7AC195B59AE935A1C599E58E34
+:10D9A000C016F05357D62B17E544685489F82EAFAC
+:10D9B0003B8DDC4E115309127C75F892FD010B1C56
+:10D9C0002752FEC3BDFDA62F78FEF1F7554FF8553F
+:10D9D00095DEBF3216B22CA4A602ED2FF4765F8E30
+:10D9E000716B605C7884B62FF79F76CB9F61DEAA5F
+:10D9F0004992C0D6D1BDB9A41D970DE053B70B0411
+:10DA0000DA7DC9D5D34EAE44B9BFFCED7B5A2F6841
+:10DA1000C4A70CE59D6323DBE32247EEC317F67929
+:10DA200049C553B06C1452EC305EED36423AA983CE
+:10DA3000FA1BC2457A3C53B62FFA840A80D07A6822
+:10DA4000C328D7445D7D7756381B58FCF34A6E07D0
+:10DA50000EF13874DCBB8833BB83F41943BC7DA959
+:10DA6000BFD09B34F27331B7DDFDD76D31374061E4
+:10DA700055450A3740F70978C5A4A0238196046F5D
+:10DA8000C0E345AC64DCB480261E01FA340080316A
+:10DA90002F235E8E0614034242D3B7E6A34520EF40
+:10DAA000D917E233672EBF90ADF3FC6A046AEE002B
+:10DAB000603A346A52E26B631A84CE039D23C71422
+:10DAC000652C39A03577C31822A85978B0A103591D
+:10DAD000796AFF17720A679E896595D01273CC4BDD
+:10DAE000CBFF748E683A8E11AE72F5B481E087EE8A
+:10DAF0005E13F262A89440B385AF2AF0894E336971
+:10DB0000AD6AE2047AD4A946E4C6D36C7D55E4B587
+:10DB10002D2E495CFA2A7DA15B49EC99967BD1298F
+:10DB20008BCEF798DAA06F635702BC3B2A5C2E16A7
+:10DB30003FF3E9A587555271DD60A98E83729CBEC3
+:10DB40007BBD8980C0FE805DB9CBE27D0AAAAB1D9A
+:10DB5000CD3EEB7E0789A98D7C12E64B191780BB61
+:10DB60001130FD4D4641308F43D3F3528AEA1A9E5D
+:10DB70003C3B2CC5D8ABB9052233CF58D7331F381F
+:10DB800062D2E023E048A28DAD888B19D575D9DF2C
+:10DB9000BFD9CF0CC3D3712534C2E69D419A84E32B
+:10DBA000027B1B8B3A9101047A8329B67BE2305BBE
+:10DBB000C1A62AA2A75B6324D6A4F5B9E8D3C7AE51
+:10DBC000A6AF7689D6FD8390DC4B79B9D28F4AAA6D
+:10DBD0007B9AF08DA961856715C0C773A73B84C781
+:10DBE00088D797C4DFC03E554DF64A9831F2AEA6AD
+:10DBF0005789888FCF812133056B2F05DA6DDD6260
+:10DC0000F971EB75D97ECD770E49A5660D9DF04B68
+:10DC1000FB234212CC0CCCB45548939A8E8A3D0417
+:10DC200010B53B97D2017036A27041606C8DB00682
+:10DC30006F07F536B67719569908C197933E8F420C
+:10DC4000718154937E83BC8AAB6F668033011580EB
+:10DC5000FADE0D0FE8CE35FFC00B99E81C09619A7A
+:10DC600047AC8E24015C1824D46F024FDE9E8A6676
+:10DC7000B4C73BC4EEC10FED169FDE38B1257C65FD
+:10DC8000EFD9E6DCF8E98DA12A6C813515A90CA441
+:10DC9000FF74C87BF868C1F80DA4405C2F0693326E
+:10DCA0005DBFC281431685AC8E4CD0895BDD05BA61
+:10DCB0009529C89B474DE8E1147993623DF4AC5D2A
+:10DCC000B5B608F38A0B38F019330883706EC43682
+:10DCD00043A4CCB6BD7131B1141104430608F4BF9E
+:10DCE000D70BF9AB3738371C355318FA2687D411C0
+:10DCF000815BD817E2C62BD9C02E60AC32BDFED8EE
+:10DD0000A35A9BA1531CC66CEFE04DE1F6D2A706C7
+:10DD1000AC7E127BC0E135E4EE7A9BA0F7DDE0F645
+:10DD20003AC0F9D889007FD942F1EC8B5D851B544C
+:10DD3000678CF37A653E52FA5A62C15DC444120E92
+:10DD4000B65C9EC5E34BBE1494FA8DB939E152A579
+:10DD5000CC96187F88582966CC32D785C83E2D4589
+:10DD600018531128C5763DC16F48278167D95D33A7
+:10DD7000BAFFD9269E4813F70D68925455B5D8C7F7
+:10DD80002381B01184DAB38423B76B004D7EB78052
+:10DD9000CBE8B56BAC39F5BDD67A8986494362E2EA
+:10DDA000EE2EA8701CC8A93B732D90CC41244E893F
+:10DDB000EC50D55C3D32F64CE2A8EDA49233550808
+:10DDC00086768F7E2EC02BDAD98309736F4B9D2305
+:10DDD0008DE4B1ADACF33EA2D9FE0190BE707E25BC
+:10DDE00029517993993CE8C1E8543665C2908AA2DA
+:10DDF0005022D6E447044EA4B92B2F2B2E4A11896A
+:10DE0000E7BF39CEF772450B5A6F3A0400C76CADC5
+:10DE1000D77A2D4376E8D403B91DE4B3AA860ECE93
+:10DE200088E1C96D4008A7E0D1F2714804869E429E
+:10DE30001CC166ADCF4E22313803B8E389E5A2128A
+:10DE4000E41369A135CA91E88E3B3E0FB3A4DCB759
+:10DE5000E3402D6761F53B20E8A96BD6771687393B
+:10DE6000C998CE5CCDD4A51FF13D3FE5BD367861A4
+:10DE70003D03E7B25F7FA9C248A7303A122C5FBDCD
+:10DE8000997A86462B2E0D2CE349C93822491D79F3
+:10DE90000315D5F7F7229DC973787BEBDD4CFFEDB9
+:10DEA000A08D2337DB409385292519489E2DC1F984
+:10DEB000B62A96A0B0718029950A465E61C627826F
+:10DEC000729C9656D70E64F09D20469C1A46CF6BE6
+:10DED000C18AF4C5F8DFBBF4FEF0C4C9553E2DF08D
+:10DEE0005888FDF98A7AC25ED87C557CA6D990FB09
+:10DEF0009C6C5439A6CD86F713B6E518293CCAC8E0
+:10DF0000159E1E317F21B5FB65C4F93D42E159B72D
+:10DF100055BCB2F731FA1FA16A3C6F52903F6905B8
+:10DF2000C4C9588469581512CEFD7D2F339C9723A0
+:10DF300081FE2E058C5CB9862EE6FAF33499515B8E
+:10DF4000E9727C558B52768435AECF74A918A94EF0
+:10DF50003F1C3696531F270AEC6956D24EC6454AD7
+:10DF600028C52155EBBCE3B092F7997E9EE9C951D3
+:10DF70007192E5615365D719EFA77C75B9CBD49A37
+:10DF800099BE2A171C636529219C0AFD6073A5941C
+:10DF9000197017EF86DB247CE65A1756DAF508630A
+:10DFA000E49166751F4771F3BBDEB775C7D9C533FA
+:10DFB0002AB57CF0E9525187BC28CDD2474F9591C4
+:10DFC0001B400942BCA2B0068FED89E5D0F6F1D620
+:10DFD000EE37C45571D9D8052A019AA6D972932370
+:10DFE000C06FE5373859C1A5BECEB2D53C098DC446
+:10DFF00028FA7D3FAA97AC88E6085EFEAADAD0C16F
+:10E000004CFB17ED511754184E0C18DA83834B73E1
+:10E01000DF77F0E976130288506475BDE90A8BD882
+:10E0200048E074B2A6109E775A834D6ADF7EF87E70
+:10E030001E65621FBBCD3C388A4C7850F12E8F286C
+:10E04000999BFE10C6526884A57E4F3F6D1627022D
+:10E050000664580DF93B6F0627395D238F04507D08
+:10E06000AB8AD38C583551AE1C643A7369354299EA
+:10E0700038E797EFF2C5B015CA54639EAEF1BB8284
+:10E08000FC9D544F0E6B3A9078BFAD16B490CDBB4B
+:10E09000172B500F61C3F5434C3E349C6D680B83C6
+:10E0A0001128E93B9F156DFAAB1F0D7F468539ECB2
+:10E0B000EB5DF400C1BA3C3338AB8A0DCD269291AA
+:10E0C00078B409518360EE79A3C2EE721E1367978C
+:10E0D000082D0D8FD41F174FB9C732686C1DFA9FDA
+:10E0E00038E8E17CEE4C0C30918C00ED5400F86582
+:10E0F0001DA4D2C7AC28E2B73B623DA755D25DAAAA
+:10E10000D436B58CB727D926E4413F4DEE030376CC
+:10E11000CC1506478941FBF979C490E16AA9CA9FE9
+:10E120005EDDAD0ACEDD22AC027193EB0B53BE1364
+:10E13000585B2D303A30413C434582E7DE95384408
+:10E14000D439DF5134827E8F8F3496104DF6E27CC5
+:10E15000F3BC55BF5004461D9E42DA9EC71472E3BD
+:10E16000D356B0C7ADD451E5F368405C9A13C24DA5
+:10E1700012372F21B0DBA34553249311DFC0C559BB
+:10E18000C9278DEA01077B369CEC318AFF311723C2
+:10E19000D12D8977D290247DC066CAB200387656D8
+:10E1A000F8538E4BB429274395F045F2E45AB3BD9A
+:10E1B00087D29B7517F74F6357F478FC8DC1012DFB
+:10E1C0008474104535F6CDC23C297089899C5EF275
+:10E1D0001060F1CCD6E7D11AEE73F4ABF52A916852
+:10E1E0004C8CCFBD858D42BA77258293DACF10C58E
+:10E1F0007846CA693F0083A6E8FA664A3B60D6A61D
+:10E20000945CED20721DCBA8D5B6ABE55139F76211
+:10E21000DC94E5C68C94DDAE5814DEFD04D9FC28F0
+:10E220004A258B82E92FAB0094AFE23449BAF81F3C
+:10E230009CA3F339CF28AFB230BBF79BFC143CF55D
+:10E240002F7322B9C25CCC191860CCC3D603D0742A
+:10E250001316A3FB07417A56191B8B9FDAC34C5147
+:10E26000E32A7D50EC2B89031DCE535EACF972D5A9
+:10E27000BA0443F636155C0B7A418CADA29A7163F1
+:10E28000891615F6E783DA7EC816CC435EA4B8BCBF
+:10E29000353EFAC3B2467024B9D99B65EDFA8A853A
+:10E2A0008BC7C6897B1E49E56ABE9149131F894900
+:10E2B0005BD280044F32E2EC3B64CBC73C97F4E680
+:10E2C000A25837D85015E3D879CA69AC1765A0FCB5
+:10E2D000A07A51B8FE7743658DFDFB3323831BCEB7
+:10E2E000E5F83EDEDDB06B2CD38D9B14E464A41501
+:10E2F000F9E8E030722469F52DAE0DC3463B3D14BC
+:10E30000B2C62DAAAB11198170ED72C3376F793384
+:10E310006783AD9BF6D0620CE190E8DA22C127AFAB
+:10E32000A1F93B16060221F1BF33448EC04BFE78A3
+:10E330006A4055FE39802FC7D51C25640818EB317B
+:10E340002332DBE7E8EA6D2DF52F6FC7328CD95405
+:10E35000FDB788594320607DF190EC61093DE511DE
+:10E36000919F0B43355A8D26DEF68779BEB7D87557
+:10E370001B2AB15529DD74CC6F90D9B4B546D90AA2
+:10E38000630D6DB950507B2B5A107C0811D6A356E3
+:10E39000C2C8D2F5872EE5BC736FBE20AE9B561265
+:10E3A000CAC02BED61E80384F4D146E0D65735BBF3
+:10E3B00016BE1467379EF0FD76F6D8A7D1E9D41BB8
+:10E3C000CA55532C8F2FE27740EB3E703CD0E1F3DF
+:10E3D00082718AACD8785006601D18F55008A7A93C
+:10E3E000FB397CC034D22800F247065108DA8F6628
+:10E3F000DB35FF9E9E7A4368AAB0F707BE3665BA42
+:10E40000E364FF20389C59E5FD5901A93B15831BA6
+:10E41000668F548C2117F074B57F2095FFB969D8A9
+:10E42000415FEE8445D497B8C15F325309B47E484A
+:10E43000496E35307877CD45B3891754CA61B12C10
+:10E440007D825AF7E3F76F054F7E230EFA7EE42AAA
+:10E45000FA067B88EF64706F7BB8690CCC9FD82775
+:10E460002F2E4CD70668B5AA95766690667A01FC81
+:10E4700005E58921A13C5C8494644F4C6ADCD92C6D
+:10E480004CA4BAF960E89ED4DD1BD513F2F54062C6
+:10E490002E0D246F112E68E4C0E66F67678BAEDA2D
+:10E4A0000A1FE7A62E7813830242BED59536DF9762
+:10E4B0003045D0D6CFE0630337500A3ABBBCEDA954
+:10E4C000234BD0FFD4D5E86A55FCA81B54DD7DE66C
+:10E4D000F6DC6C4844E8B25B3C4FF2CC6675B01A8F
+:10E4E000A5DD3B2A49A4D67FBEDBE690EB25A745F8
+:10E4F000C4270F6F0FB2D68EDECC2C4268D81F9582
+:10E50000662AFC52014EBA37904773F32FC274AE9D
+:10E51000D0CDBA481DF421B62D6ACF6F1AEFB72FB0
+:10E520006856F7E65FF0D35909C9B9DA8A33748BB4
+:10E530001C1B3E213E0B9E52454610CC20EEAF895F
+:10E5400065030352CF99E8255F9BE660F7EACAD9D5
+:10E55000C1BD53EF0BD788757AC343E133B590B48F
+:10E56000BF497F110AAA8C328465CF01DDDDC73C2B
+:10E570004B2E30D2145A75D0202D5DCBA22FA1BEC8
+:10E5800060057F548D4A19C9DF0E141CDE89617045
+:10E5900045CBB03F939DFB9E2E46B7B473A0DDBF25
+:10E5A0009F17B412743215E3D4523684DA0B812CDF
+:10E5B000F78B1D1B71D7984F1FD0BA923320A28EB4
+:10E5C000B4D799F25581F481361781E5D68B9C2D0D
+:10E5D00005F06D99F5C3587726B3BFCEA093564F7B
+:10E5E000FE0BD3921A9D0CFC0C1D84E8D10859C176
+:10E5F00070F01CCF3185B8F59CB70ECE4B11639CE3
+:10E60000CAE83787DA680EA96DAFFCAE854D73FF97
+:10E61000E703523FE6A0702CAD21A5AD829251E0F8
+:10E620008DC785D03E1679DC196BD490B5DDD1D776
+:10E630005D06EA6F90A900713654857D1EA100A089
+:10E640008ECE8CF3AFDD451F7405B73896C64D45A9
+:10E65000B31E30E30A7114D577829034ADB9666287
+:10E66000942D4766669A314587EF7070511446D8ED
+:10E670003438D1C170D1F9A923491EA3CD93FA61D1
+:10E68000DBF8C051E223638AB30FE2427D1FAC473F
+:10E690005DAEFE2317A34C55E68F940B4730479091
+:10E6A000A70892E32A348D33FC2F2BD1B75A578A0F
+:10E6B0008CC53135E1E884BEE8A9C527D32D9DC6B8
+:10E6C00009E00D27A30817404E4E1918BBCCD6C938
+:10E6D000861A96FADEBB2D24FD9A02B4222EA4B22D
+:10E6E0004947487BBFFD02ECD7F3ED098739800D20
+:10E6F000A1606F1331F2B9B4478CD59CEC27EF15AC
+:10E70000A91E6D77F97017E13FE67D07A1EDD04FA7
+:10E71000C1E07CE4766D8D0C537588722AFFEDA202
+:10E720007B8037C0D13EC661DE708912AFE69B1D8B
+:10E73000E62C3587BE39385A17FEC1BB6AF6F54A52
+:10E7400023A576118887C62B86CD90A99911C26C16
+:10E750000223BE89AFC4E9DBAAF7B0B978520167DA
+:10E760006A103B32B6B961F4019A024D53261BEC94
+:10E7700046E81698ECE1CB1356C1CCD0B4F1D2AB3D
+:10E7800073F37DEF0D435A2C53F2D1A040F916FAE2
+:10E79000789DD8A515C899AFFB30FDBC8AB56186B8
+:10E7A00040072E9929EDECA7495A6828795F9A37D6
+:10E7B00043D9EFA8A66986AB18D30CC1B4FF3F3389
+:10E7C000A0801C3424191B5D61967ECB805875ADEA
+:10E7D00012FD92147FC5ED682FE2973C548E43736F
+:10E7E000F27C9B8235943F07B75E39AB7671149803
+:10E7F000D54D491C73A5AB391DB4E21B73BC75CF55
+:10E8000026D524DBD3A3B765760B3DB2C02F79FDA7
+:10E81000295AA237B9FAAACCB2CD2AAC5A1F8BA773
+:10E820006DC164EB9A42EB80F0A102748E1E731EE0
+:10E83000F3228F4E82E5AC990754B5B8DE741963A4
+:10E840008633298A6AAAE1667271A74AA4D2662C25
+:10E85000D83F767C7B5D7C7FE9F8B8C21A6EB787BB
+:10E860001D1031F380F8DA052FF18438429351DB23
+:10E870001A59D327E1F004A4EFA4B40D298D9CEF1D
+:10E88000E85737A1583B4D171CAAD97E504688F24D
+:10E89000D732B35FAA3F80F2BAE368D619E63011E7
+:10E8A00000DF7E2374EE4D40895797862BABF58DA4
+:10E8B000745B760C1993A5AFDDD0DDEC61D40FF25B
+:10E8C000C707D4206DA939E27C3E1E24EC080B4317
+:10E8D0008A1890BAD5CFAD220EAB1927D82FA54BE9
+:10E8E0009A0193147D44D7D0865DA9C6FD1E26D912
+:10E8F00053C8B045B846DA0B3BB37E3DB42947F266
+:10E900006526BB0EE6B4FBC5AEF35292F5ACA2CDC4
+:10E91000C1F98412CBA8D2D92B7BAFD2AE1231A7CA
+:10E92000206E4C6E4CC95976C9CE5419BC01C8E052
+:10E93000A800751AEAD9887FA19B51D9E7DB84FA30
+:10E940008933624E426B5C793651A6593A78118010
+:10E950004AF7B640F5B6D9AA60F945530CA7AC7A88
+:10E9600021009FFAD75DEA97FABEBED306E7D650DC
+:10E97000A129FE60434BCFA0805DFAC9A60F39A63E
+:10E98000E16C48C3428A7660FC1E6AF29372F6AE6E
+:10E990009C06D451101B5293BC2306E01807101795
+:10E9A0005B17E963E8B9AD8DB64CA5F66A49106A04
+:10E9B000ABD4A095A79B86534E43A1368BD138008C
+:10E9C000148D60D39DEC5E53A1E122F3FE128E10F4
+:10E9D000B6A9E1D3CD289D2886294511CABAC71EFC
+:10E9E000A4C7A6676ABECCCB2C67F922C543F0D674
+:10E9F0005D22D7151A404D9CEB6ABAAD95491FBBF5
+:10EA0000AF3D5AEB71A7AFE4B8BC49BC70105E5B78
+:10EA1000EE722053F5E5018647E1AA2292EEF164F9
+:10EA2000CE15BA53F1344E454CA1ED2AA15ED12149
+:10EA30008FCD7F615AF20C0A28F0362FD5CCEFF239
+:10EA4000FA0E1F3AC2EF188441A4C639A03B191B25
+:10EA500006889A10F01D730FF49957BF6AF1B82316
+:10EA6000E4706B59621CF1E8446378DE6330EA4578
+:10EA700038FE9ECE7909351916DC778DD4B9DB5472
+:10EA80003DF97BDBA1B6B793F1C5D0F275F1ADC707
+:10EA90004A5B9B4DC32A7CA61FD0EB8E27AA73F737
+:10EAA000FFE3FF1958D843A2312F450D66A5CDD9F4
+:10EAB0007C6944C3C90989DFC2EF3376DC88F3A9D6
+:10EAC0000ADEC9361EC9D9FAED76A802859F97B429
+:10EAD00062598DD02AEDDB716F7392E69BB00D7198
+:10EAE000FA66B1D9B45826E812D5FA81BDFBCDCE6D
+:10EAF0008205B0E53B6E99AAC696F5BE92B70E3375
+:10EB0000C9C857C8C6E5DBCE15B174D0347C858141
+:10EB100060367F388A0BD5CE4654806968648C4352
+:10EB20002D6988381261B453702E83ECAC718074F7
+:10EB30003D4927844B99FBE14ACEAEB571FF78FB86
+:10EB4000196C9C996FB1BC42116C0B31A7B6EDB931
+:10EB5000A8636E4C14EB15DBAB31C6192FF8C42E2D
+:10EB60007B7F1F5732F7B3607EC57D0D4E26D407DD
+:10EB7000E3599B77F49F9E3ABF993CBDE46FB5BAC9
+:10EB8000CC7C23B646BA5CBF8CF16CBEDA12DF21B6
+:10EB9000666AB6C7ECC1A751D21A7A2F1BB4DCF84B
+:10EBA00030A258BA5359C9A2C93ACBD7C5E8F1C364
+:10EBB00020C9AE7E14FF132801F1305D3FC9806A81
+:10EBC000E3C7A8B9574F3F15B20692B99CAE3AC6F3
+:10EBD0000D8D97BB745DBACB756EE88B2DCDAB6296
+:10EBE000EA55453B913DB66EDE489DA2826E61813D
+:10EBF0001887308354B441D8661E10C3E03E2BB54D
+:10EC00000056B1F681235E9D7C4B11C37BBB1CDC9F
+:10EC100069A530AE99F2CF386F818773D3C01D6478
+:10EC2000DD467EDB03F15F32CD9A86440035114329
+:10EC30002873BA91610A7C5572F435A10448B1E693
+:10EC400014F3C1BECA2DA1FFBC5A06E4351E10390B
+:10EC50004A98F0DE8EF2F05B8A069D782724BE90FB
+:10EC6000AA247A906F0DCE98CD3C41B0535EA1AAF4
+:10EC70001C41829533449E9F3FB42F42F40EA1A3C2
+:10EC800050A7FF6524AA5201D088F95E4DAB66FCFF
+:10EC9000C7A16B3990F33D616AE3FD91931AC17787
+:10ECA0007A7E5D9D1460BD0796699451454D585F0D
+:10ECB0009A41D7D246B5016B1435C459661AD79517
+:10ECC0009F7A24ADA335E5AD72A3ACC3F6CA60B795
+:10ECD0006248D3FF31C4EC8507B2255E63FC6EFF4A
+:10ECE00070B10C0617E1E0EB84EF5288B2DE46FA11
+:10ECF0007D6A1CCBCC192A46BBB8885317EEFE5749
+:10ED0000DF6803A19010B6EC653033D68E1CF01985
+:10ED10002C4FC0835D2F6709417E89AEA8810045D5
+:10ED2000E0D5BF0F8F6DB86462B869AE15C2DA84E2
+:10ED3000738F9A7D1A1374EEC27154449A43C33A86
+:10ED4000E150356D0F4194FAFE49CC5E54EBA112AF
+:10ED5000A7540ABC26B3CC6F7F9B26BD62D65B4905
+:10ED6000329BF636D230E7771D352A9C707705B78F
+:10ED70005C50A7B719D0BDA12165F6143C90D67997
+:10ED8000587D595C24EC5A90DB32250276EA799E54
+:10ED9000303C70F88A2846210B48EB022B2A3CF1C4
+:10EDA000D7C0E8552CDDB5EF0F20C62866403114DA
+:10EDB000255E4E786026BB7120334B8AA70823FE60
+:10EDC00078FD02BEB45691B753893334F3E4AD28CD
+:10EDD0004C7D64C719A72480DDD78307026EF242F9
+:10EDE0004E7D7B1A884D830D88F814E2BD39CB70B7
+:10EDF000A11D5CC1380D05BA5F0E7DEEC4BF0310C6
+:10EE0000F444B1EC3350BE3BD7F8F833500122251F
+:10EE1000CFA5978B63AA17DD3762F72BE9E799BD7A
+:10EE200000235EFF9CE76B0BE7F18DEA9A8CFE777F
+:10EE30008C1117EB844729DA4B1474007352345B3E
+:10EE4000A09692824B6CF7DC1DDC7AEF253370853F
+:10EE50001368FFA0F139741C213E3483D2349CB274
+:10EE6000CC2C693EA2AC42F461BD270F35D8FC56CC
+:10EE7000F7949FB53619F6D3D1DFFE48CC139A929A
+:10EE8000DDC1C4265AA83F259344736C3ED7B06BAE
+:10EE9000BDDF9C3C304E31059BB8885E880ACF713F
+:10EEA000BC5782E77246555F19EB8FB3254A18B8F5
+:10EEB00069F1A5981CF8FCC195D7229560096602F6
+:10EEC000DAE9E7D3B1704D4670E8222D323C2732A3
+:10EED0001D95F44871DB3CDE1548A5CA097CCC0BB6
+:10EEE000808F2CCC265E4B56E24B6D824EA2827BED
+:10EEF000856778D33309561781EC789211DE0D3D82
+:10EF0000040FB001003F011E2837047F073C3F1566
+:10EF10003F0000000020121E053D0A1E052830009B
+:10EF20003000F0D2F0D20A1080080A0101804001BE
+:10EF300040403200000000070AFF0002820080000B
+:10EF4000120518220004041B00100A0000B004FF80
+:10EF5000FFBF96307500C080004040010600002CC5
+:10EF6000010500DC050204064B003E000000000025
+:10EF70000000064B003E00000000000000064B00B1
+:10EF80003E00000000000000064B003E00000000B4
+:10EF9000000000064B003E00000000000000064B91
+:10EFA000003E00000000000000064B003E00000094
+:10EFB00000000000064B003E0000000000000000C2
+:10EFC0001F1E1D1C1B1A19181716151413121110C9
+:10EFD0000F0E0D0C0B0A09080706050403020100B9
+:10EFE0003534333231302F2E2D2C2B2A2928272649
+:10EFF00025240000000000000000000000000000C8
+:10F000000000000000000000000000000000000000
+:10F0100000000000000000000000000000000000F0
+:10F0200000000000000000000000000000000000E0
+:10F0300000000000000000000000000000000000D0
+:10F0400000000000000000000000000000000000C0
+:10F0500000000000000000000000000000000000B0
+:10F0600000000000000000000000000000000000A0
+:10F070000000000000000000000000000000000090
+:10F080000000000000000000000000000000000080
+:10F090000000000000000000000000000000000070
+:10F0A0000000000000000000000000000000000060
+:10F0B0000000000000000000000000000000000050
+:10F0C0000000000000000000000000000000000040
+:10F0D0000000000000000000000000000000000030
+:10F0E0000000000000000000000000000000000020
+:10F0F00000000000000000000000000055450A2349
+:10F1000001010001010000000000000000000000FB
+:10F1100000000000000000000000000000000000EF
+:10F1200000000000000000000000000000000000DF
+:10F1300000000000000000000000000000000000CF
+:10F1400000000000000000000000000000000000BF
+:10F1500000000000000000000000000000000000AF
+:10F16000000000000000000000000000000000009F
+:10F17000000000000000000000000000000000008F
+:10F18000000000000000000000000000000000007F
+:10F19000000000000000000000000000000000006F
+:10F1A000000000000000000000000000000000005F
+:10F1B000000000000000000000000000000000004F
+:10F1C000000000000000000000000000000000003F
+:10F1D000000000000000000000000000000000002F
+:10F1E000000000000000000000000000000000001F
+:10F1F000000000000000000000000000000000000F
+:10F20000000000000000000000000000003F011EA0
+:10F2100028371E0A0180000007FF00561D10E0017C
+:10F22000E0000000000000000000533530303042A4
+:10F230000000000009030F000300000001000000AF
+:10F2400000000000000000000000000000000000BE
+:10F2500000000000000000000000000000000000AE
+:10F26000000000000000000000000000000000009E
+:10F27000000000000000000000000000000000008E
+:10F28000000000000000000000000000000000007E
+:10F29000000000000000000000000000000000006E
+:10F2A000000000000000000000000000000000005E
+:10F2B000000000000000000000000000000000004E
+:10F2C000000000000000000000000000000000003E
+:10F2D000000000000000000000000000003C0011E1
+:10F2E0000601121F1A0C0401011B00080021340042
+:10F2F000000000000000000000000000000000000E
+:10F3000000000000000000000000000000021801E2
+:10F310008003120518220004041B00100A0000B02C
+:10F3200004FFFFBF96307500C08000404001DC0242
+:10F33000060020124410270101BA001C05C0886095
+:10F34000483B080C580000000000000000000000CE
+:10F3500000000000000000000000000000000000AD
+:10F36000000000000000000000000000000000009D
+:10F37000000000000000000000000000000000008D
+:10F38000000000000000000000000000000000007D
+:10F39000000000000000000000000000000000006D
+:10F3A000000000000000000000000000000000005D
+:10F3B000000000000000000000000000000000004D
+:10F3C000000000000000000000000000000000003D
+:10F3D000000000000000000000000000000000002D
+:10F3E00000000000000000000032310C0001540059
+:10F3F000000000000000000000000000000000000D
+:10F4000000002400201201000000000000000000A5
+:10F4100000000000000000000000000000000000EC
+:10F4200000000000000000000000000000000000DC
+:10F4300000000000000000000000000000000000CC
+:10F4400000000000000000000000000000000000BC
+:10F4500000000000000000000000000000000000AC
+:10F46000000000000000000000000000000000009C
+:10F47000000000000000000000000000000000008C
+:10F48000000000000000000000000000000000007C
+:10F49000000000000000000000000000000000006C
+:10F4A000000000000000000000000000000000005C
+:10F4B000000000000000000000000000000000004C
+:10F4C000000000000000000000000000000000003C
+:10F4D000000000000000000000000000000000002C
+:10F4E00000000000000000000004030000015500BF
+:10F4F000000000000000000000000000000000000C
+:10F5000000000005030000000000000000000000F3
+:10F5100000000000000000000000000000000000EB
+:10F5200000000000000000000000000000000000DB
+:10F5300000000000000000000000000000000000CB
+:10F5400000000000000000000000000000000000BB
+:10F5500000000000000000000000000000000000AB
+:10F56000000000000000000000000000000000009B
+:10F57000000000000000000000000000000000008B
+:10F58000000000000000000000000000000000007B
+:10F59000000000000000000000000000000000006B
+:10F5A000000000000000000000000000000000005B
+:10F5B000000000000000000000000000000000004B
+:10F5C000000000000000000000000000000000003B
+:10F5D000000000000000000000000000000000002B
+:10F5E0000000000000000000000300000041510086
+:10F5F000000000000000000000000000000000000B
+:00000001FF
diff --git a/firmware/tsp_synaptics/synaptics_s5100_a2_k.fw.ihex b/firmware/tsp_synaptics/synaptics_s5100_a2_k.fw.ihex
new file mode 100644 (file)
index 0000000..be0b116
--- /dev/null
@@ -0,0 +1,5986 @@
+:100000008385866500000106006C01000004000085
+:1000100053353130304B00000000EC13010000007C
+:1000200000000000000000000000000000000000D0
+:100030004453352052302E322E3100000000000093
+:1000400000000000000000000000000000000000B0
+:10005000B80D1800000000000000000000000000C3
+:100060000000000000000000000000000000000090
+:100070000000000000000000000000000000000080
+:100080000000000000000000000000000000000070
+:10009000493243000500FF000C0D20000000000065
+:1000A000493243000500FF000C0D20000000000055
+:1000B0000E6408A1CD701E20F94B2CEF7E69F60E60
+:1000C0008095F414F9B59670B1346DD512F02AE626
+:1000D00014CE66CFB949FE39CEA4C1B9746F7EB1D2
+:1000E000C0A82417F0776FB301B1CFDA2E9F426A10
+:1000F0009882D0E721CC78B161D0CB0FB3EFE9F98A
+:100100000C6560C3ECEF397C97045BE1D27A61F94E
+:10011000DC937687C1CDA60ADFDB6AD4B897C837EF
+:10012000B04AE1D47391FE945AB523A4AF4EDA3CA1
+:10013000CEE06C5E8B4167DF45EDF1F489060B1371
+:10014000859ECDC1BB7C279E40BCDD4DDFEFF820F6
+:10015000CA79B8D339465766CDEA5E7552F918CFD9
+:1001600082A901B7069F6DD7F78803AC19AE3A365E
+:100170006235D1A24B83E7D3ADB59E207A21881298
+:100180006006684F2617FC8DBCC853342AB1B5FCF5
+:10019000B789D8C184824DFAE93D19484EFB8B29B5
+:1001A000677C0ABCEA7E55C5DB51CFA4754776FC57
+:1001B000BAE21008E85CED6C3C1B582559C694C1A6
+:1001C000D41E079EAA7F5C44C03C17B1E04CDB9173
+:1001D0003264501B2B050B0AA4FDED2ED1CF413606
+:1001E00043EC9199A56DFF45053BD387D124FC0FC6
+:1001F000343C9648AEEE8513BF3062F22733596E19
+:10020000999FC3A190F1B172ACA07B64B213E27C60
+:10021000E392D831E84649E7434B49A947A101FA9F
+:10022000094461674D2B5A53C7A4A8093CEA6F7E65
+:10023000A8980BF2BFBA8DB818AABBD45914808EF7
+:100240006CC3D7D770676257DB2C93A68BB2F29B37
+:10025000A663125FE6CCBA9BD55F643653327D0647
+:10026000011FE34F9F3B6C4721ADA86F7FCB2D282B
+:1002700097FC8A3024C62019641E18594D3B321E43
+:100280009458D2A6B2E5849938614629CF0DEBEE99
+:100290007C2B69A9A763D38863E64091C85D767D0E
+:1002A000990DD6C4EB0241AE3655314F8429D34562
+:1002B00093CFA29E25AECC0466A9EA4CA5ABEF2F46
+:1002C00061DF11DF3C252A1CAC55CF3EC25FB58EE5
+:1002D000785ABE890BDCCA311FDD2C8ED2B9B144ED
+:1002E000B399C4819F8A89D616DE8E00B65F07E077
+:1002F000A5F073901D17BC945861A2E15F70DC1BE0
+:10030000F397C19D614F2B1EC74B0667308F47CDBA
+:10031000E6FD1C99AE47599412B2F89CEB0665DCD9
+:1003200080054F0C97CBF4CD79DF72368F1A6B0DA9
+:10033000FCB5856C228CB8EDA204ABB52376C40B5A
+:10034000878146EB89E85D9B8D8A022B324D0F6CCD
+:100350001F59415FED3D0FA74E9F60BCA8DA7E5E3E
+:1003600065E11C414C29A93F6E98E5D695AB7AED25
+:10037000E6E0BB10052CF4F6D6FA365DDF4DA47F1F
+:10038000FD6848F6FB7214D52234CC8E221E6066BE
+:10039000F7F9DFACC7553703E13AEF6829DF50D6EC
+:1003A00032D625B95D2631AE0114828D3CEE13B6EE
+:1003B00087CE641E50E33F0469C61B89660BB07B81
+:1003C0002EFBE0CF5CA8071756A79AF668915B96BC
+:1003D0007C2231077606D49361266C3441AB33D34B
+:1003E00025E0829FEE3E2BD27C770544345D8C78ED
+:1003F0007394BE92845B57F7CCF8183406CB0C7E0E
+:10040000BABBDB53763694B7EF76B8B52B9640522D
+:10041000AD21E72A0E84215FDCCA0C940FF99AB44F
+:1004200010FD7A430BF2D8D3F8593F836D3B482235
+:100430003F5545179B6B4E44B0BA3A30D372AD303E
+:10044000346FF8D0679D9F81C9936F134BF00B18E1
+:10045000747D252448C96F21FC0197109FD9CF4A8C
+:100460005AA42F8353DEF2750170EE32A721EBB54B
+:1004700095DEEB18F98CBB8A0A67D3F1CD40C44AEC
+:100480009CAA0CE1755639F882052A3B8E405464CB
+:100490007A295F7D2E87BBFBA1DA2DD75541DE512E
+:1004A000F6E4DA76E0FC081F061442CFF5ED470BC0
+:1004B000ED482FF02E3565276A1BADD216C8BEF861
+:1004C00068A6E60F69DBAB63C4F777E1E903445E36
+:1004D0009305D67AE3C91D4E28047881ECE1D094C7
+:1004E000AB37434C03D78FE0DDA0B65EB17A907393
+:1004F000FC4164845D7A2BA8A3E5A20EBDA427FC71
+:100500000B418AE732E15CC7B84A40A150709DD1E7
+:10051000EBCE41D6DD1AA66942917C001359588171
+:10052000FDF07A435C356215254227417CE2BAA58D
+:10053000560DFEA136785F532B5AF7087C3632BD34
+:10054000131307EBC65018AAD45715849C194B6F88
+:100550006C4D3621225A3EE75C6A7D257A0E4C2886
+:100560006B5DB53A96926101C2B300C17B4F5F7B70
+:100570000FBA7DA3EE0178106EA4855799393237F2
+:10058000CEE7893EA60EEC0D19906ABAEF0E1C213B
+:100590003FC77D44E62EADFA431E947DF5F331400E
+:1005A000ACCAF5729FBCEB1FEDD7A53CFC9E9B35FA
+:1005B000C1E48E592691A052BE780DCFD0C9417F9B
+:1005C000D5882D894CA1CD43EEBB6E1CB9CEF282ED
+:1005D000BB300A77BBB2FAAE2571027DD51A9E6692
+:1005E000B586A6B0A9FF4472727E669519EB275BAB
+:1005F0005762BFAFE9A1B0EE2270F95DABFDD8AF95
+:10060000BADDE1A736159D419C35D38BA880C28AFF
+:1006100036B4206A4D89F5B71C2BD00AB08D93A64D
+:10062000A074B037D47E6CD12D7E01FC14CCB54CB7
+:10063000347C6DBAF9F33378063174E56D447ABED3
+:100640004FB16B442F20A0924F6EFC94FA4410D906
+:100650009DD82A9F395D931A419BC3006E5A4EE282
+:100660001A6CAE7A7A0EBA4C9B6D717C540AB73A0A
+:10067000954A4ADFBC4E26BDB6923EF561F0CA18D7
+:100680005C295C933F498D1525593DD2EFD89D7269
+:1006900081C84F403711D44EDC6689124541F503BD
+:1006A0009A548CCF2234578E600BB9F313B9D01CF7
+:1006B0005143574846F4D9F1D9E419B098FD35A310
+:1006C0007542892069C235638781283B8003A6CFA4
+:1006D00018C0B7BA319C3831DE293CA2D808D315EE
+:1006E0009D8F064B41ECE0FC81E364F3B036923A17
+:1006F0000389E4AB193E7CB64B4C41BB2BA476FB83
+:10070000AFFAAF97020B341AB980576BC646CF4485
+:10071000155650118F6DEE33FEA530FE931E5E54BC
+:10072000D696541F47EECE6B5399B22FE3D1F49B6C
+:100730007C80450D656C9452DB6EC9852E300AB8FD
+:100740002DA27F6EDA63BB7142C486DBBA05CD8E03
+:1007500025ECFC99DBD12DA79B59C6692E0591F993
+:1007600001E5FA574A1D5133E8E2372785413CA09D
+:1007700028FBBA85F56A492E75A6DF953373999BD8
+:10078000A5AF0B302757BB4ED53D93EB5617E5373A
+:10079000ED3AC89C03A13C745CBB3EAE0971FE748B
+:1007A000654D568911241B46D86397C18813896704
+:1007B0006483C05D861959CF9492C82625F8EC470A
+:1007C0001962F40CC9F21C536B39A35A90AAB929C7
+:1007D000D7D560F75B1072519FC759E52B527785CB
+:1007E000ED6810D1B156C35C6574EEB47D461AEA6B
+:1007F000C786A7F8441E877F086ED0BF52B128E491
+:100800000309FD682056262DD16AD82E7500207E5A
+:10081000A1246058C031BB278C65A7693965BC3CF1
+:100820001C115B0CB2672AFFED134008BA2E5382ED
+:1008300042313A7081EE71782C57CA4905E40FCAEB
+:100840000C4B1458D44844F3D3243C18859DB187ED
+:100850002C587955BD239EEC1220CF1B976022DDCA
+:1008600061765369AF035E0FFFC240243CD220D0B3
+:10087000CB6E72BC62989F097EB88D43150AF48DC9
+:100880000B54CA6DA2BA53300C9FD644ADD0053478
+:10089000AE17FD5C6EDA2E9C45C7F41B8E3FDDFC67
+:1008A000A3C12BC3C4838125822718FDFAD05541EB
+:1008B000AB9D14405A0061DBF79F52ECC16D6CF5A3
+:1008C0008B64E56D58101694E28425D438893BE298
+:1008D000090EEBD93DD3D09B27E7F6429B81BADEC8
+:1008E0006BFCD42493B44B1E8631893FB4AB0F1DEF
+:1008F0000BAA1D988D5A9D77803983E92786A26CB3
+:10090000A5CB559918E18189AEDB7B82E7EA82CEDF
+:100910002CD4C05F7F85087309F2388AB9505463BC
+:100920007738C75023C3DA23722475394C9B51C3DF
+:100930007EE80DE25315F53D19A941F655038327CD
+:10094000A144902BCCD2115EB8BB801BAE7E9D071C
+:100950000287526FCD94D4A142F0B75C67AF411FBC
+:10096000CF89928EC79925FE2CAA7DB5247B3D495F
+:10097000F21E19A75177B305B066D052A291C543B4
+:100980002BD66695C9919F124EAC3C4EBFD85C0ADF
+:100990005A36C5DA26829F5E0440C7D58BBDF2A9C0
+:1009A000FB0C841424959A90DF0B1299C769474277
+:1009B000CA3523F4BC83D4BF6FDC149D0C0B70D4F8
+:1009C0006F9A9DCBC0FC0BBD248695F8AB884C5F1D
+:1009D00080B879E8E383D577FA609731BE26B15BBA
+:1009E000A85F0D3715B5B3066A556FA1EAD79023F6
+:1009F0002FABB0804D52B7C3F37650C3456B6C3507
+:100A0000A643ADA11B98941BFDA0A2DCA80836410B
+:100A1000BDEA12EB9F701366AFC88EA6AD063022FA
+:100A20004574FD0054B22BE53A55D9338A070B3093
+:100A30004464507FCEB62483EC57F75DD885CC371D
+:100A400090E2BF533C10DAF252C91E706F479EB25B
+:100A5000E05487D3BBD33231465C9148033EF43334
+:100A6000987942A47F7C538D3EE112F569A41E6201
+:100A70004F9AA2657F3C51FADC2543709402B491F1
+:100A80000B669AAAF19157D8918A0267F564A6CEAF
+:100A90001570C0B68B513049D0D62ED95F619515EF
+:100AA0004E9BFA41C5A639266D523A097C654637F8
+:100AB000BC9A3496053B47BB31B4D11161A037983D
+:100AC000A45CC989A51DC6C971AE7695CF86716F24
+:100AD00070B24A890B1C3BA35AED863A7427DADAC6
+:100AE00003B2E1B377B3A97E4DD45E7D978643B35D
+:100AF0000A11F07F5FDE87CE205326C7E83C7FD8FF
+:100B0000580CDF185E2148A72220ACA146D5CCD6D0
+:100B10009AA3E08D0B15E8F77F924D47EE01E7EDC4
+:100B2000894A120E11756AA7958B723E7BCFB72C3E
+:100B300066A21D0F0A32347A3B56AE9FA9F9B12F37
+:100B4000A5115BB10C90E0BAE696C5197D3F4D1337
+:100B500072DA87A11F7D25C035D67EEE623AABCD15
+:100B6000583DCBF71D289A89450AD0CD994E92B4AD
+:100B70007AC52543A9D5CE8ED30065D922FADA5F8E
+:100B8000A659035CBF1614F5A609C58D8680EFC271
+:100B9000FF49273E13F4CC65BFF84B6175BEF37B6C
+:100BA0002599A661C40ECF3B8339947B7F08ABA403
+:100BB00033EF03CA63C49D1C7C4CFD879082AEF169
+:100BC0009C4D93A1968510B2C968F28F43E149CF3D
+:100BD000AAA70F3D320B1AF6A27A86F2B9FAB886A6
+:100BE0001DD4DDA1F4CD8CD86F24EC9FA503165E37
+:100BF0009AE1BBCD6D33BAC365FD5DFB1BFD6BF6A2
+:100C0000A7320972A9D65CA0198E8B3D722774D8C1
+:100C1000DB12405C930C680BE3B38218AFCE33D782
+:100C20007A71EDA21139D1053119C86A193A289C97
+:100C30007FFF449B9E0770983DE0AD413F5841EED9
+:100C4000CA83978AC00FBB1D47F7F1CA6298CC20B0
+:100C50000CE4505C7764223D39714FC87A1E85BE22
+:100C60001222CE068523150D3ADD1764E4B269C061
+:100C70006A1D9CF1CD8175F25F4508A4E6EC9A935C
+:100C8000AC533474C1F707B1AFC8863A99D69659B8
+:100C90007516D16CB8BA6755824D5EFD757D20C65C
+:100CA000EF886D36A2DB9567CF845F54C59F67C31D
+:100CB000FD95240DCD2B9789BC442F62336A3831C2
+:100CC0000EEC99B7A6FBC58D338B87060CA9D91DF1
+:100CD000D9D42C5F318DAB263B84E68C5253F21F66
+:100CE0002C5CCB00EC7AEE9CAEB03BD6A19AB5AAB8
+:100CF00038B4EA375FD338CB4DC10848453679530D
+:100D00009B5D0A139825E75008D0F3607440F5B84E
+:100D10007CE702B96790F931F83A72B7626DFD323B
+:100D2000E5645B2C77090D43522E5A9206DD26535B
+:100D3000D16E1E170169703347DA8C21D45F9A494E
+:100D4000683E41C1A6B07854B54506695BE4004AE7
+:100D500076C76E252508D6A7CD7EE7C5E9D5BEF9AD
+:100D6000322CF7F744E73D8044B52732128E496BA9
+:100D700084E42909DC95D8FFED46B66B6E5D2C1234
+:100D800015BE0AC14D36E87C9B2467DF96CFD5B4EB
+:100D900075229D263D16198415DA67E66F50C06CE2
+:100DA000F3A7E75626D0789DC46F2E4B8691A28E6E
+:100DB000FDA6F0DAD045BED17E69ADED5ED5174215
+:100DC00070AD76F00408CF024CF3A13008FBF75069
+:100DD000DE05F85C46A6D94285F7A14EA59EB297DE
+:100DE00071E0399DF2B0951B4B366DB06466B89AD0
+:100DF000C84913AE5EBBC2ABD4086D2C5639A2D322
+:100E0000B8B454DC710F2A0442EEDBD3F2668AA830
+:100E100071CD0A96AE49C8C900005FD92E8FF56B17
+:100E20009F6D186AEEDC32D6B364361781DE82B26B
+:100E3000695B91F4435A08167F4ABBA2A433D89F3A
+:100E4000279388D2943553BE264A11DDE7C25D3D13
+:100E5000263752BB741F00B6B0A5EB93474E212D29
+:100E6000242DF5180C60BF19A3A8373C5F5292AE31
+:100E7000461BC7AD1A7E5FB213F998C2BD50ADAF25
+:100E800092DAE9E69130774B7B05F403E9B2CAFDCB
+:100E9000FF3A62EECD964B59F0F7CD7ED98E854262
+:100EA000FD879DB977D0FDBFDEC8A2DB48DAC60852
+:100EB000DFB6E846DD4BA55EBFA88DD2AD0A0E7D3C
+:100EC00096FBC3CD4BCCF113D7FAFE6737DEFA1190
+:100ED000DB5A474ECF14D4DBA929B0665D09F37302
+:100EE000F0E48C57393CEB1BD9709BE3D42843AC1E
+:100EF000CCAF45A042B7ACBF19FF2BD8AF944A4244
+:100F0000B1820DB426ADAC1D704F839E8597F01253
+:100F1000816CFBF8F66D1129FE094EC84C48D611BC
+:100F200099D2B325DCAA00402B012DBFCAF8267E3A
+:100F3000680D2B4F12D09D805FB570EB7DEAB2310A
+:100F4000806D7E5D462754B096ED8D51667CD07CD9
+:100F5000CF51A8676E4D2B8F39204F38C26EE7FDF9
+:100F6000644E967D5343CE9423B1446CBC9032D0F2
+:100F7000770E4CBE9212B0A53633B2D00B0DAAE557
+:100F8000E1D7CE7F13E815118841F296CEA46EF515
+:100F9000990C50AA11810FE3A5FC857145D38645B4
+:100FA0007B6D4F73E20D1B7672A058372EF7AD782C
+:100FB000765D3B13702ABD5C8260FF1D85486C0D19
+:100FC0002952EEADCFE4064D9931B2D70E1547D96F
+:100FD0004128199E682F44DCF2F93696EE3D07CB86
+:100FE00033BA63E068E176B3F8FA8B5E5C2D94AFB8
+:100FF000CFFB78F4753E536F8ACC5EEAEC2EC93A8B
+:1010000078B1795E5FB2282C8494073FEFAB1E69FC
+:101010004CD2865B544F7EB33583F916B6403E5BA7
+:1010200070031E22FD7B25973B637593E68B538DE2
+:10103000FBA61C9EF5B3A1D687B5CCABF69DF1CB34
+:101040006FD9082044C4567D2ABEF6C65EE944899D
+:101050009FA4077C51BB3EA22027D5E520F9089D1F
+:10106000482BBD2AE2F693B20036BB726B54D072A5
+:1010700012EC379A3251E49E8EDBCE8236E9DE3EA8
+:10108000B3044086059ECBD539A479ED775B53AE8A
+:101090000FFBBC3B3FB56859DB1AE2BB6713EE1F81
+:1010A000CEFAECB91D0B47686E90C218016B82D561
+:1010B00057EA651624417DD610DA49997F42EBB193
+:1010C000CC36815CDF27A83F6B10FD634C900BA5ED
+:1010D000300E538F2C557E498C9F8C718876956786
+:1010E000EE02B196F08ABA5DF7D3D076D430E5310E
+:1010F00010E4DB9D717506AB2A09697530F5CA6C81
+:10110000A06C3CE3A2627C33B4C55E997FD0D8FC6E
+:10111000522181DA76D14B36E244F1E1A551FCBD92
+:10112000561A045BBEF4C18DA2483BB7E0483D8F20
+:101130007E28F040D357DB01F6B7D6D83A6299CF74
+:10114000189C12062E329B5BDE31E02856BF337CA2
+:1011500003D393D87BACF04E6197CA0A632FBA6A67
+:10116000998A94DDB28B432ADBA93D9D319ED71726
+:101170007C0EE239C4C59EE3E4ED8D4E4DCBBE67D7
+:101180007DF98712998426C16D7FD87780C669BCA6
+:10119000CDA8FBF3A4566832E2D5362A6F4874E630
+:1011A0002B21C52BF98A3D8559A7E1CF46FD400A81
+:1011B0009071A6020E5CEE9EDCF6B5784E35BD6FE2
+:1011C000D0EFC88A1EDBC03A84505FAA6CB2021B03
+:1011D000078828DDCB2A5DCCC193BC740CA579555A
+:1011E00011AA3867666AA0271EF0E070DB26554416
+:1011F00066D5C4D46849DE62BD0457E7DBB60CFD92
+:10120000FC7DBC014134BB3BBC0457074B6162E32E
+:10121000FE8CCAC7A4C94384FCD6225332BE3563B0
+:10122000594D5A35404A7A512F43E3C0EE245EAA05
+:10123000F4D07E3DEF0F9507E91065E6FC8BBBBE51
+:1012400019C4A7B72B68A2E78D7D44A73AD9832C90
+:10125000F8375587A044A5679C8102AB99BD67A864
+:101260002D1EC7F1D07B11D5E4DD02E6BC2A8E210C
+:10127000465CDE7D8A68494D6F909B15EEA66E43F5
+:10128000E9DE29AF375CB1870427C2DED1DD1B2040
+:101290005C47892F0EEF74EFFF5804294C28A3EF09
+:1012A000BBE310B7370F0A5FF3DBD82F0DDEBCA40A
+:1012B0002531D98D9B177787381E09D92F37CC5BFD
+:1012C0001247F187EB2F62C17D4E6065B26B3D2EF8
+:1012D000B7135A1E3A70AC91DCFB683BEDC856243C
+:1012E000492702122CE81C03A825D7B28B99798BC9
+:1012F000093C6750D5DD30B54DAB1B1ED36F4FCCCD
+:101300002CC5EE7087CEF59D57283CD578504F0DF3
+:10131000414A6B4080783579ED8DFA2A162B30C220
+:1013200070A391150B1D2E15CC4B26C523CC6DC477
+:10133000F0B8099AFD443C59AE4866E3D431E898C8
+:101340005F05597CA9965B55E6D671DE837213134F
+:1013500004122637F2A4D17C158D8BDA8DCACEB754
+:1013600075C86DD4CE90DF9A55DBF184E06B921492
+:1013700048DB2AD9D8D6DD2450C9315C0CD3A8CE9D
+:101380004C857A9BA28B4759C88D8F2710FFD4D4E8
+:10139000B6815CD9C50224995BF211C4D6E42A6AED
+:1013A00096F487D4226DA6267BFDFFC02CA337EFD1
+:1013B000C12C9EED5E6BD207F338FEBEC765751B70
+:1013C00091FA40ED06B0EE38932E4AB92BA0935F08
+:1013D0002D020CAB7BFBA0788272BB4474B2C27F3F
+:1013E000DEA94F8228DB39E4B64B16C28A175B2888
+:1013F000E0527791180623D3539194836276E2F3F7
+:10140000E792E982A5D07102239300F4B58173DAE3
+:10141000471B81A63FE63A1FA64D47CF07293FBB92
+:10142000C995F7EFE91AEF672E63CF52122F8A861C
+:10143000BCE6473029933809952E8D8D1EBE869ABD
+:10144000E7867B72B00D15BD80AB6655376D05FB29
+:101450007F0D9021F321059895E133B253C54B6B75
+:101460006C601B1FA1AF3FAEDC64AF8814B88BC2A9
+:10147000115D4ABBFE456F3FBADAE2031BAD2D7624
+:101480005ACE37C2618F1629357EEF3CF8F4F0173B
+:10149000CF7C19FEC9F997A10943F2482185AD2AED
+:1014A000A1E521175A2A16A05BA49629A2D11A02F7
+:1014B00040752873893D7DD0D2E76C666465A6B916
+:1014C0000DB9665471A046B9E89CD73399C2EF852F
+:1014D000F7FAAD3C0769F0B74CD650D88014833A80
+:1014E0006AB185F97EF47D5CCA8BF9E5B81F0835D1
+:1014F000527191D2BB9420813105CF703C26671C7C
+:101500008911677AD2EB9E24777568BE9C642A3273
+:10151000C91473865B61E30BF7C99258FAAA01FC00
+:10152000754A7947AB72C19EC5C3E2C3E1E08D1C29
+:1015300005246C0DC8FA0F9D7EC34A4888CA3BC279
+:1015400053374690B1D2AB6F36DC9B78671EE47799
+:101550001A8C9A987B3AF47C35F5CD9030C5B6005C
+:1015600053D6783804C8E2E3E35E2CF6D8F5530A84
+:10157000CE60F63F7D7E8B463ECB83CBA52F24F1FC
+:10158000A82938EA194696CFB6E567B6A5CAF3F793
+:10159000A3037A9EDE2FFF101F82F1B44BF32C9130
+:1015A000CDE27B3F60CCAE19E25B2D1BF72A2656BD
+:1015B000D1CF2803FC66F182E7DDCF65315819D41D
+:1015C000718ED1A33BC6DE5E29D5DD4DCD679B9BD9
+:1015D000F793F50F13E2C1FE5CFAD1E9776C8C3F0B
+:1015E000FF03D7E2DF34E5AFD18648CCC9BB9938D9
+:1015F000DAC00478CD4497F71EE0096A07775B9557
+:10160000D92028BC2D5ABB09EC859D58404DE1A13D
+:10161000DE9BC95F096D1D0C6634711D13CE992BBD
+:1016200050352AC68946D0AE54ACF8B1C652A03265
+:101630009217C12C7B2CE5A6905A072B6FAED700D2
+:10164000C1FEFEDEA074A8BC422CA7F716277C388A
+:10165000A615EA88B7B78962563D1DFCF4019DB214
+:1016600076BC6A4DA4BFE648847DE02B0103A74801
+:101670008F2E397A8BCC1CBBCAAFE0C7C5BE666A59
+:1016800077C79A3D43E907CEED2A35B722DCBACCBD
+:101690004803ADB43CAD6B494E46B520FF2220F85F
+:1016A0002D055BEF6DBC9B3B6A81E282DD5CE5D77B
+:1016B0005291A176AF072B7C3C72E61CC9F1805D8C
+:1016C0001FEF40268FDC208C9F44B80B42CA265067
+:1016D0007EB78408E83EB7CED427434A01A993AE2B
+:1016E00074F6628D0695C46E75B0378FB107C79ECC
+:1016F000B8725A5E0FC01886DEE62AB587B4FDA020
+:1017000016779C02FDBD12DA4D6481449076AD4996
+:10171000F110DA2E0A7C6F50FFE80CC4896BAD5EC5
+:101720005572E4F67662226A98E91221572B5EA57B
+:101730004E059FEB0A274A3D60976C9E6690444C8D
+:10174000795B668D7CD273D53C904AF9B9D58B47CD
+:10175000AC60E90DF17F3BA58FA3AD72189D9A6730
+:101760002E7B3A1826C9C63E083CBCBE4EE06599A1
+:101770005EB03F3924D02530A29BE73371AB2D43B7
+:10178000FA00D3E72A7657C773EE215BAF19B78DFE
+:101790002BAD217E4799F341A9BD57011F1085301C
+:1017A0002E7B975213BE47D6619116E53683F78399
+:1017B00078704C164DDF48B69E73BA7CE2CC44DE9E
+:1017C000796F822D400A98D672F746DDD42FBB4040
+:1017D00074A060125908E8B8EB5222B59732AF9660
+:1017E0004879D253EE01A384A7762C550EC67D29E5
+:1017F00020D1B37F3C98CBBB209A05CAB852CFA961
+:10180000B523AB9EDD92B8049290B7C402959B5964
+:10181000CFA97EDCD2FA0749FE6F5DC7C49B6A3E42
+:101820009C1EF93EA19CF1CA3BD4C2FA45572EA397
+:1018300060279B8AD7827D6C621950F87F7EF8857D
+:101840008D3E00DCA8C0A92C70D05A129F2A328B82
+:101850002CFFCC5B38477C055E69B8FBA15CB69772
+:10186000CA489CCB9EC3B7CD9A2E66E3F4B6E4FC7F
+:10187000AFDDDA47CA5A6A88F27868BD2EA155DD15
+:10188000B669AB31117F0C7481E8443A98034293F6
+:101890001248406139D77C09EC831994F237CA0D9C
+:1018A00001D7EBC67BF77F09FD37EFB5ACF11DDC47
+:1018B00042F493F894CECB086635255B5C7155F500
+:1018C000EC1A7F88E89147F0B853A2F10473E41250
+:1018D000E7FDE7B5239BA071D280B40C8AF7BF4423
+:1018E000B074372225C58A0B6DC2723E51DCC76EBB
+:1018F000E4795CF263B41700B2AE5E299320FC92E7
+:10190000B0ADE688E52EE53702B5B1C55641A03B3E
+:10191000D303D6A895900D47470BB1BB4BF869167A
+:10192000F2E6AD96CF30EE806D8798C56634F73C11
+:1019300022A4D6909FC0EAD76C8D2B76E254051C6A
+:10194000ED41EC2E880D9E28D9B316113A83C0BD07
+:1019500090DE5CBD34BAC82AD4B75C3AD6CD968541
+:10196000929B5A3F5154689BEC95B0BFF9C4DEB4CA
+:10197000552A24D6ED6CBE7AE48F0339D542FB2379
+:101980007100CC3DC3E073923593DD687C8792860D
+:101990007146DE5237E5E59296ED35CC513FC4FEF7
+:1019A0009D32EB427E47E320B97C45C8C9A0E3B82D
+:1019B00039CCA042E41164678985D7DC1338998259
+:1019C000D45B33BC8C7824AFB1A72DE7F207A1E438
+:1019D000581A3C8CE31487C8ED95B4821F67A26D3A
+:1019E000BC4224107D9398218ED30853E04FFA60B7
+:1019F000856EB4E830CE01B3FA9451A84B6E0972EB
+:101A00009189FA77FB6553E357F334ACE247AF07AC
+:101A1000CDA938377E5461900570AC2C87D440979F
+:101A200075148C9394D6FC1667D35920F5E99BC5A1
+:101A3000C79879BC9EBFC8D5D5C20E6A69418A10C5
+:101A400074FC9C6BD8E8B9CA8A76D6A6A92B2599CE
+:101A5000C7477C987016E831070A72A33F16E0C4A6
+:101A6000D26E9BD90509ECB4EA34D6EEB05F207C87
+:101A7000A90CC2C10ED48DB53769E935E9DCF8850A
+:101A8000F6E749039BDF0BF2B7E4520E08C929AB16
+:101A90001AFB9FD375FCF12C52E9086A2FDDAEE8E2
+:101AA000C32564AE04BB2F99671D96C8D8F2EA54CB
+:101AB00021533F00A28F41BEEF5DE9E9CC529C1A51
+:101AC0003FDED4A1A0CEF55A2639E5092BEA5869A4
+:101AD0005D2BBFD7399E1C7BC33E0549C4A5193970
+:101AE0008C59BD9197887B67562CD23DF916B8FB6F
+:101AF00034563E1632EBE27D06D19356DAE4474186
+:101B00003F58BBDF406B09E25131273D8E49BD1C78
+:101B100022B8FF43AEB579D1E4D8C7C73F1244E934
+:101B2000BBF6785D46B0969B3BF786D31CCE1BBFB9
+:101B300063BD8F2FD2400E66269683050BF5562780
+:101B40007CC7795DF841FBEB05425B50FD4349F9E9
+:101B5000CE9343F8DF9D8E6A6F0C53123222DF68FA
+:101B6000A59A5E84C3B2E65A16EBA18E8DEAD638EA
+:101B7000B4956AD240587DC8D2238EFF1DC6481B3B
+:101B8000AB9074BF1951DEB5734C7B6C22ACA2D5FF
+:101B90008D70ABF2EDB3378EF8D8AA0FEE2C51A9A9
+:101BA0003C92C66AB4A5BCF60815F6785F5E8EC096
+:101BB000A73E2F925577121318682F62F5F4AB7E6B
+:101BC00043ADA62DD1AFB83161371EA211CDF1C002
+:101BD000406C3A64E4C6E8A3840F75C778E6BF2C6E
+:101BE00081CF65D773056BF3F948C027FF133E66B5
+:101BF0005D0BCFF50CC20EB581DB2F2DA9C56B8C0B
+:101C000028CE38CC194ACBA0B1AFB6D4AD365228C5
+:101C1000C76D66556DB73A02E4621E63F2E1345057
+:101C2000AC6D0A59BB2521DE11D7F25FB877AC6CD9
+:101C30003D9AB0DDA623F4A864A91AC7AEFAE52D33
+:101C40008BBF2F3193760C4D8DFBCCE4D1CF6D093A
+:101C5000DB567B8EFAA1BB0383567328F975FD2AE8
+:101C60000DA4810DA832300A039D3E850942C1A50D
+:101C70003B3CB97FCF7CFAFE270127D1751AAC8394
+:101C8000D7B51DEFCC42D285A3092C4BC7FF84CC1E
+:101C90004A0DB872B8DBF16A5BFD5BA190C06DB113
+:101CA0005748B245C8743E597199E6DB76A286CE94
+:101CB0002ECC3B9112AD25BC338FCC0FA1ACFE686E
+:101CC0009708B4BBE818FCB42AA7AEC3AD2BEF0647
+:101CD000876F18D16A827B24C3F1D2D0819963FBCC
+:101CE000838D60615573986A6A0DE1C65583D9CCBE
+:101CF000465D632F267C2D808C79F7F6414F00B925
+:101D0000CA8679FCE863694032F4361AB006C12904
+:101D1000078164C434D8CF573BF56EC8409F6A949E
+:101D20007D023921BAB3B5E68CCBDCCA6334F6D771
+:101D300062CFE191DDA19967A2CDEFDC6A9091AF0E
+:101D400073BDBE2EAE1F4A6122858E01C7FA8D6813
+:101D5000FDF7689E50756FDA30E5CF5D2B45022E9A
+:101D6000E10B7D98500FC9577A7A5E3E85577E7495
+:101D70004243111E2A975DE19101DF42D6534A1278
+:101D8000684A2A73FFD8CE8365BDE1C29C215B926D
+:101D900098E467E7D5C0E9F732F50BD98B453A757A
+:101DA000B2B3FF6BE9705D8442CFEC0C5C2C8E2DDE
+:101DB000FC98371FE8AE8FDC7ED97082EE6DA2B63C
+:101DC00060183133BCBBE37419A7C888D7B8A674B0
+:101DD000A1D8B3B8816E9494F05DA16D81641BC8E5
+:101DE000463BB8F4C1F9CB91850B96D362B4581534
+:101DF000A6B3B2C018B109F193699CE4EA35F14683
+:101E0000D795F8072840C402DCDC6D5618BDDF7B8F
+:101E10006EB661570649322A22464B1C435F9A53DD
+:101E20008A940526F358D1116880312A9154E79994
+:101E30000846D6F5D2CF9836B681897EC3A6B50FAF
+:101E400027F0E192C07D70D078FD162267C404901F
+:101E50008CD02AEC4AA4307C1B80C0C764EE14B539
+:101E60004DBAC84F2784A5273B905BED81C41D8DDB
+:101E70006E144CC9AC457CD83BD73BE9C165AD8DF0
+:101E8000CFBA9EE7D61FD39189AA25F8DF181CC6C2
+:101E90002F4EA0AC5ED507586294CB0C70918B90FE
+:101EA0004CB03655F74EDF3C0E9FC3479666B15592
+:101EB000CEF1DF4EF22D1C27E33F99892BDA023E4B
+:101EC00079CB621B676827A476CBADD77F604003D0
+:101ED000C4A2827FF19A03E042156DA62E67B5F881
+:101EE000F4DF6B53459097CC6384375FD2FB8F4709
+:101EF000DCCC20A7F874F8D27ECCC9AA750CD143EB
+:101F0000BB114B19EA3CD0DD55B9FBFD63100AA1AA
+:101F10006E18610BD12588E0AE1F044B59D9CF3123
+:101F20002145DFC07F6B571B5081D8679ADFD7E30D
+:101F300095B2E120EBACA8CD1F9BA2AB570FDF7091
+:101F4000CFECF14D31FB5530EE5A9F760BD6F0A811
+:101F500086B44DAC423004B43061F85EBC22F2A5C8
+:101F6000D6D7913BC1563A552DC58C988A1D213440
+:101F7000D747F607F9A7DD4E106CD757843366B8FC
+:101F80003B3155C1F24D1744F4350AB3350D1CA150
+:101F9000558B5ADC922D5A77EF7267FB0CEDDF7D83
+:101FA0008F1F3034063D9C71BEF972E53A7F38567A
+:101FB0004D60350BFFD7D0865475468528F2A83280
+:101FC000BE9386F9ED6B20DBD174414007B2013539
+:101FD00022B4CC2A6CFA6BC8540CD1A1B6F8262FC7
+:101FE0008A7A7AC35EC12AB026E5906C4FB35FF758
+:101FF000E00FBE3F8A24A6E42A2420F04F2AA3F74C
+:102000007987E0BB37C74F962DC05CBE0A29FB9687
+:1020100045D83DF88EF319F25ED95687B1CFAFA4FB
+:102020002FFA731C479BA88C0473E26DEFECF23D12
+:10203000ECBF92C00337A04EC71C65859D6A8FA573
+:1020400093ACEF18A079026D5E3A56F4F8466C6EC8
+:1020500007EC0190359C34F793AAF41304F6D4AC42
+:10206000ABCECF43D9B47F119FEFA0AB2133C99A38
+:1020700029A7426FD74EA5BDFA0ABD0D165B89FD93
+:10208000AFC8DEDB67B40C764F1B7C308B295B70EE
+:10209000F22D68573C55A8C2470D604052FA749122
+:1020A0000241E1181EC3F60EAB4194827A33E4E696
+:1020B000E4651154124D2533B37C12B0A561D8717B
+:1020C0000148DD88B5A406F50E95730476D24B7EE3
+:1020D00002C68B563A62EE2A19988402E9333BCB4A
+:1020E0009735838100594957184B3A725E6C9E367A
+:1020F000B79ABD0D9188B34FF27B7E3752F878B610
+:10210000A33849E08B673616ACBF077290F674BFF0
+:10211000869C635B5402D39D3562ADB4CCBD096C23
+:1021200036E801112BB096BF25BBA7A9387F82984E
+:10213000D18AACBFE90F5ECAD4EB2121C1D2C16FF5
+:1021400048EA2D9DCC816B61541994F12108649A61
+:1021500092DF12B6AACCBC4EAD5DA53CC618EFBC52
+:1021600050F587259A938DAB54D1D8757BC417CE83
+:1021700076A6863934147F477158FD20E912D6328D
+:10218000B21FE44C3A59193DB72231ECC19AA091E3
+:10219000750E76CE9644B6C66DFF8D578909D3A6C7
+:1021A000392DDE856D380F5F2C4F8AC0BEA58ADDC4
+:1021B0007909AD2A902B29FFFC6437590EDC9F71F9
+:1021C0004C3E5C4D3993E33FB918C46A3F1F6FE73B
+:1021D00026D40210BB6BC89762247C26DE0BC30694
+:1021E000DC6606F94C2FB5011C18FF1F4BF1B0F44B
+:1021F000A1D83985867DE6F7961CB6CE222CB46729
+:1022000099A0ACC1BB64B16E2F7834BEDBF5541716
+:10221000A639CC538A6A96D8B2BD88620112E559B4
+:102220001AC7658AE7985721D0079EC6CD9F2AE333
+:102230006890985231DA38F11F00A35FF3F088B349
+:1022400060542199C3E4881D8E3B660BDCD9586528
+:1022500018E4FDDAD041D9BF497D1B2D9257D983AF
+:10226000F10296A8A74D7338AF9D541D84C4626CCB
+:102270006F628C72F8C9ABCB613B130B567EC1E821
+:10228000129AF896C9984927DA38F03521536560D3
+:102290004A0E48F741491345E01B46B01BDDCF56B7
+:1022A000EAF7E3E32F8685AC0B6404E5ABC2F1FFEC
+:1022B000A2051C45A376CAF690528C926E2867053B
+:1022C000E87A1F0296B816BFB5D1B4265C80119C7F
+:1022D00093A5CAD88F5C7A5EE90202C111231BDA8A
+:1022E00060A3854FF8FF43FA0E680827583F1F3E4A
+:1022F000EA411B196FE7C5895FC06F47C322E970C8
+:102300000DFAE1C240EE29366521E328A1C5249CDF
+:1023100090E8506B70F8D005A64425412F7E7B7D58
+:10232000DB4DF2B4A60AC0F43AB4DE32E671CDA9B0
+:10233000E9FE8160ABBCDD6DB0FAEB821B1F248D22
+:10234000F77C3F4B38168A82EBFA4C78A06D36D872
+:10235000173948A5D3D91530FDE26F2B491C6269A6
+:102360006FCD2D47F750E7DE80A5013982F6073E95
+:10237000F575D7FC012B5EB8AABEE3A98BABA615F9
+:1023800093C89F3D4C2AEA3C3FB0064D7E21DFE8D2
+:102390009E65927E9C72844D3583A15817E1FCE9BD
+:1023A000AE819AE72866DA59F348404DE8ACE56E0D
+:1023B000A349F9F7A7E05E610C82CD7323CD151711
+:1023C000F0A662E37603E887EBF9656A211D93DEE8
+:1023D000AD45EB7A90B7C3C0D868EDE1D5E63933A7
+:1023E0008C6B51C0C09C91A277C6FED218A129A5C2
+:1023F0006963F9C743E877BCFC46B9192E36DF4755
+:10240000458BB704976EF8A86FB4F5F9EC8C6F9A0A
+:10241000C0A733D6D46D55423B1400B9C4B5473874
+:102420002F38F35EC666DADA563434842B15A98366
+:10243000688B7E4BDCFAC370176213F5FB3F0A28EA
+:10244000F137888C81E21A5483A3D20878736CFD2B
+:10245000CEEC7FBFE21560756FE46FCCFD3D73A9D4
+:1024600062E0D16B38B7D0D4DED9BA5778EC2B8480
+:1024700089B1751E4EFF361A3DAE78E30FB369BAC7
+:10248000EB3F526D2A6EF518206BD065C5268B0880
+:102490002CBAE803976B868238E23A54A89E996278
+:1024A000128F332E3422AE0CEDC68CA04711BC1314
+:1024B00008E7B63DCF14F031DE92616E1080403DEA
+:1024C0003075F9724863BA549EBF563BD74A829C16
+:1024D000456599CB82BF54619064891BFEF4C9DFC6
+:1024E000C06EE3CEDD13229EEB65752EE43FED5A00
+:1024F0003DE10FFED86CFF36869745E737518EE7F2
+:10250000F5DEB6EDED32ED6932DD8D7C0D1EFEBDE2
+:10251000BCBE112DDBEDC34319F4358A8A3B88EF2D
+:1025200025E3DC52376FFBD16E6414A2B6407BB456
+:1025300064B33E3E99816BA2D78B846348E6E6BFC5
+:1025400034A3C7454EC7F20327AB1FBE5B7119F119
+:10255000EB0C431791F426F0F099788C516434CC4D
+:102560008C84D8CDADEEC678777D867211DBF59F71
+:1025700016EF414D7748C7F14E2C120A7697043B6F
+:102580000F7F536A57B1D8949A04B8782386A62F40
+:102590009B1CA9C56739B7BCA4E98B50E30D9D48C6
+:1025A000F8D222C3446906C4253C230397646B8395
+:1025B000918528DC5C6BD1DD803F36B568DC4AACA8
+:1025C000A75E5E4A109EDB07CD1D9AC994983D4BCD
+:1025D000EA40807C6846EACF20EB62B10C94A0868A
+:1025E000BC11EF4C4DC9303E2128A4BFA17093D936
+:1025F000AC5B40132F71C5F3EB52D5E80F1FABE76F
+:1026000061F2DAB4CFDA273FF7DE008859FA003DED
+:10261000BA42CA31F774308CFDB2C93C1B6E1A69DC
+:102620005507FC51031C14FEA4BEC5D41EE25EDF98
+:102630006C2F003511AE1E652F3E2725FA8E0D2515
+:10264000D7FF3C677AB1503887EAA85DF473B1CF01
+:102650005DAC227EBD5D60F7EB18A1D3DAD02535E5
+:10266000F74346437262675B4D77DB53762A707E91
+:10267000EEB438285261C15E53AD186EA98A38C6CF
+:1026800096037ABCEA3B0C278E75D9F3B6398015D0
+:10269000A0ED265C3D5F6D5DA905B7D669C90BF15C
+:1026A000807E67C0D9F0BD087D8B0A2F13BF7E08DE
+:1026B0004A2C30FD5B6C6A7DF0D069669C17DEC2E7
+:1026C0007D60EC2F03EF36549480C7CD14A74C27C0
+:1026D00022773FE2DD08771EB93FF3890222C42149
+:1026E0001D2E75C624B39CF5DF93D6D6F751B008DE
+:1026F0005AC390E82DF2C1F532303EE790F69B8C3C
+:10270000951FA02204BD38D284FE4438F483B4E27D
+:10271000C19F0BFCDBA3ED8DF3BAA8CB4B1AF601DE
+:102720008B228AD376DFBEAE67C9BED0435C82D827
+:102730004631115EDAA8BBB461D73ABD19B738A9E2
+:10274000BBF32F339E0B71AA2376D42E10CA27D148
+:1027500048E845E7134EB6FDAB840DFFC79D6344C3
+:102760002BBDCDF12CC2C6EFE8D6A04686F21DF6F1
+:10277000D25655EAE53AD23FBBD6440DA9ED2C9589
+:10278000C0312DBF3F337D6AA4C7BA036CFB007E06
+:10279000CA53520EE59EE5A1000505F97486256E23
+:1027A000EACF062F022B162D78FF9CFC7CC5BE7845
+:1027B00075714F98E794B2C714E805E48573FE8DF0
+:1027C00023E921B0717C58671519F6648AF442B880
+:1027D000B1C7A2972C171B941033F4AC0C2064776C
+:1027E0006D57EFB562B5CFAFCD07AC97EA623480D5
+:1027F000C08C34805ABFD6489E97746936749E7DCB
+:10280000B4B1CA9D0B5F436EDF6B5F778C6F5895D9
+:10281000AE02D58790B89D54A1F5D7D6CC1F42A063
+:10282000FA9F18F6CDF452B82DA276A2A3CE0D01D0
+:102830004E599C27D30613F6CA6D4A178289E1D1F7
+:10284000C06A0AF732A741053EAA4783F1E57A2319
+:10285000EBD2293A281A1DDE65B675C531456F4C95
+:10286000A4D906C9E41DF91F43D0BD89EC1FFC7033
+:10287000FE2B75DC018B6E9F0A62B0CDF2A7411F63
+:10288000299FE6F50D934B82F09CD6524339349341
+:10289000C0B9C05ECAB4596B26856E6C88F5E45524
+:1028A000CBD9C451E3A6CE04AE37C1AEB40BCC999C
+:1028B0004AE3F25BA06B04F45BAB61CB9131EA2697
+:1028C000951944FC86FA54C7208B959DD685E65E03
+:1028D000E46ABAB4CD813F38F12DE2A57A16EFFE55
+:1028E000445FFF4DE253B2EAB09D15424C02AD1178
+:1028F000C518314C6BF752375174F8B95AEBF30FD6
+:1029000034E1C453C4FE1B0388ACD839998C55AD4F
+:10291000C2C4AE7F6D076D59E1248FC07DE77F7320
+:10292000A6A560CCBE452A47E1207A4323C457AE12
+:102930005ECD36FC222C510C450D9A50E0C3DC458F
+:10294000C38C9A00A7E6AB6689F153D3CF786CAA03
+:10295000A70089A63D4F614A9AF19DCC3BF293FEB8
+:102960004DA91A7DBE184FB9C392DA9ACBCA6343F8
+:1029700021ECC130008EC8C3A48C1FD2B5E9FD7D07
+:10298000E3B84310F36B5610E99A204306AE3BFDC3
+:102990000C72B72852ADD139738C7D5DBE9AE8AE0A
+:1029A0004D32FCB241BD14BE30CD60008935E32309
+:1029B000D1BBB07C0B6D2A1B49C3D6AF3B70CE2771
+:1029C000FA5A4303D6E6BECC4E75852DE8D4DB56C5
+:1029D00085896D8ED0BA3F5745D6B57C67F5A7F986
+:1029E0000111A57FEE47B8968C107D9BA618789FA5
+:1029F000AB659AB0756F4CFC7453211FA1B2CCDE4D
+:102A0000ED57A077DE723F026FDEB101FEF9E2BE44
+:102A1000A25AC073E0E15DE1E39D2F3DB6B8391ADB
+:102A200019530265EBBABEB2BC6AF86DF4383BA527
+:102A30007CAAA21A35DF360828DB225D7D398D4B52
+:102A4000CEE95204A9F5E55118CBAAC56B34952AF5
+:102A50006DB60FDC3F572F34DDD02CEF4261C6F747
+:102A600074A3E2838F38BB850B1F474FA5BF3F7709
+:102A7000C28EE6E645E22339C2A5E402035C9B2050
+:102A8000464A212E1CB7BCF739BABE03C26268762B
+:102A9000E3E3807C4D2D2E063B0204A2AB3657DECD
+:102AA0006A5B2629059241653529394945055560F6
+:102AB00025BAFBFCA8E8549F9B26CC1FCC2ECE99B0
+:102AC0000FEC6CB952A68A9AEF951163AF9D43AB98
+:102AD0004A77C04738EFAEF2103A46C9BBD5505ED0
+:102AE00041826B89CF557B750B00AB96CB7B2B0D51
+:102AF0009369D21A4CA5F24536C039159415E6747F
+:102B0000807FA2F98CFBBD3D9218B84670528C5361
+:102B1000EAA3C6C66D5C0DF709D11FF09148651C8C
+:102B2000C76A33402EF42F32DABD95F8DCE0EB5B58
+:102B300035AB3511D37A73FF54D803E9D492CD4025
+:102B4000501FFAA908FE98492F6660CCB3D66DCD08
+:102B500093627F2DA809B196B2289012394F01C512
+:102B6000A67701CAB5565EAB2C8D12439127D5F3DB
+:102B7000BFD679B83A0D4B30ACC30D8FDDA7B26C20
+:102B8000082E8B700030B813C0DF5BC4521ABB83B1
+:102B9000E9D1B0CB739A9D1D60AF574F3FE0888C51
+:102BA0006B707BFEFFEBE27E9476180457A98623B8
+:102BB00095463B86D6ED11DCE7F78D58BF13B92853
+:102BC000EB1AFC3D05A55FAE000049AB4A6712A3B6
+:102BD00044E0A50A303E0587E86AB466E624E96663
+:102BE0005DBEB09DE178E6685F47019013A446A101
+:102BF0007C111D04E8CBC281EAB1CBD9845FB085DA
+:102C000057AAB599FEC5E6084CC9FD519D726250A0
+:102C100024672A0EA5D5C1F9AFFEEBDCDD2F548267
+:102C200063D508D9E918BDBCF31E662CB0C6C0C276
+:102C300086D2B165893781D7540E25887633C2A0F4
+:102C4000B6470CA3CD5C6CA657F997AD0860AACD2A
+:102C50002BA7BF033DEA169732A899D60EE730207E
+:102C6000A34ABCA399BB4D2299AC626B96B7284F7F
+:102C700039455CE5E5D4EEAF1A3E1DE1895F2D5183
+:102C80007BC11D88AC41750E658A22FD2A27ADF5F2
+:102C9000CEBD7F6FA9D0D5B454CEBF08A777786BCF
+:102CA0007F7D8914F7020201E75FF4C367205E2786
+:102CB000EB43390601C415D0F3A0F284EC1C83C5A4
+:102CC000ADA2A8D3008F08916412F0958D49374DBD
+:102CD0009369CE12521D73B59533D69B650F078944
+:102CE000FAC70650092EF3CBB8313CA097B75F92D4
+:102CF000C35A48184D6C9DF861FC1CBD64C17F0E21
+:102D00002337EBA6DFFE2E04A87099624EA69AFB2D
+:102D10001A994B6A3FD31AE11AF65E64CF0B0A3157
+:102D200096B9C609FF1296AC6FB705ABDD5E5AE6E1
+:102D3000538F52A6CD6A7052DD0743A9A5DD498C99
+:102D4000DF664F3675468ABF33B8AFE856B3387E74
+:102D50000AA7375C02240CC3D06D3FF3B08BA8A840
+:102D6000C7FA69CA3B4BEEE5CEBCE363900EE2CDF9
+:102D700025BFF36E8E6AC7734FD52C2862680DC9C4
+:102D80006FA3BF90958F4797E92940E945CC0D493E
+:102D9000003A6918085FEB149F08174718D6F66ABF
+:102DA0002534A3F28B7361CB2A9A8A26C1E2CC68C0
+:102DB0004E5533C0B3DB6A176ACA1FE5C3FDF46022
+:102DC0006A696CF55B7BC3C5E7F3CDC60996085A03
+:102DD0003B24CB5FE4164CCFA72DD110545E3C4D65
+:102DE000231E4108EB9C3F5C15037DA875C38E959F
+:102DF00019F1AC40414015E2F14B918FEC4AB9F723
+:102E0000815FBCA26DF9B7D64B7B5DC91260F845F6
+:102E100076773E80328114476F9738A6B8740927B9
+:102E20006A9DF1DFE1383A46B030E05A968CF82AD4
+:102E30002A021FE72494183C9DF2AE66E40D946DBF
+:102E4000A8A1A97010269B96B1B3BD53EF8333C9D7
+:102E500079F0E9995E92B35A00F9DE69A05D2BBC66
+:102E60000E12AEF70B37AE733022D109E0A44750F3
+:102E7000CCC65A681571C6C373D6729B47B0D93594
+:102E8000F48946B856BBFDEF3605E3A963DF40A0E1
+:102E90008EC6CCB27E4DB58E958FD89D706D9EEA54
+:102EA0009F65A649B663FF59EB165030355DFFAEFE
+:102EB000F0EFD20589EDC408B73BA36F43AEB84429
+:102EC0002AC2E554F01A694B1EE079D71FFFA0050E
+:102ED00034BEE91560170824BC42345F34B7381B90
+:102EE000C0031421DBDF637E064AA9B8B1C59BB9D4
+:102EF0001E78F01BFDDA5143E7E68CDB168273F394
+:102F0000CB2AAD0ACD497DAE7591211E0A0DA905CA
+:102F100068A4011EE5E39E91C23B1CF71C861E3986
+:102F2000D1DFAB07F8BEBB4AA7EC82E0AAFBDDF31A
+:102F3000B3BFC5BF2C4A0C982241EB9CEFA0F23CDA
+:102F4000B84F5FBC632EA4D4787DAF8DB66BFB7D8C
+:102F50003F4751CC3031A6872AC45490C0FE2592F9
+:102F6000F5A738EA799291B566C0602E6E91E57149
+:102F7000DC37ADD4117B04CFAD858A42C53B73DB12
+:102F8000F9C251907B2345685CCAFE856E2CA3D0A4
+:102F90000B497CB4836761819BBA395CEAF1C03923
+:102FA000D32F177C188F913E49C87560B2D976E44B
+:102FB000BE1511AC65F378F0E5E80D16AF625BA4C1
+:102FC00062B09171AE35AECD552E740C1575EBD542
+:102FD0002030E26EC7B35ABF0ABD71DBC545866EAD
+:102FE000BC1DD5718CEB10343A6390D864E79D69B1
+:102FF0000A8B1D873B30FBE8DE099597F83B3BBC0D
+:103000003F50C229CEE8F585CF8C7FD28D89EAF872
+:10301000F030DD303AB654788F66BC8839C05AE358
+:1030200017C4EA4229F93FC318143C18C484CE4D92
+:10303000AC64ADA635C552431817C7C7D9A57504EA
+:10304000122F1150B46D899B4B84C37A43018FFFBB
+:10305000037A7CEE908F9A93375F6FEBC187A5263A
+:1030600020F6AEF2A5A8A0EECEC5918D41B4F862CF
+:1030700052C9E675A923810E17A9669442BF0BD3E6
+:10308000D5B7AA441BEEA18BC325DA716258E2F0D2
+:10309000F9875691026018832A164F4B07CA3AF3F4
+:1030A0002BDF10FD011791BE10A4A8CA02D6C96972
+:1030B000DE654D0A35D9D1D1467306E70EF6F2C06A
+:1030C000B50D9A8CDB644D6CAC2C30AB73BC1F4CD3
+:1030D000FDB22AA16C115B8172FC90E4BB4A0641EF
+:1030E000E453B50801EB0093B7FABA71EE9DFE4BBD
+:1030F000593A2540BD18034979BD28701921552436
+:103100007F573514F0B034DFACC85C3B54E728FF80
+:10311000AEE3274C732C838E6E90F0DAD0D7E62482
+:103120005D9159A44F68D60BF3CE6EFF2CB0DDDE57
+:10313000CF3FC535170AD47E067065552BCAEB8E76
+:10314000F96A37A4DC6A66F8EC86F468CE357FA2AB
+:1031500075BD7770C020C1BDF70C7A20EFE406C0C2
+:10316000D59067B2A1A41926B75A6FE648817AF8BC
+:103170008C7664569966B65294C1F0F752BA0D3205
+:103180002498860A3D6850BEE54C1B38716505647D
+:10319000BB71E17C9A5FC8BF6E2229713744E80594
+:1031A0003CFAB33BF805A808B1675753526BAAF431
+:1031B000B6ADDF68C437C739B3ED891D2BBCB13755
+:1031C00027DA395AC4D39840267810134BC897E4AD
+:1031D0007C4D34E6EB73344054F54717246DA695C7
+:1031E000DFA246C84220D3FE86DA3046AC1C3D4AF8
+:1031F0002BB590E38791BD0B3F2913AB3198548ACF
+:103200007A511F4F51C5FE1011ADBF39DD89D6254A
+:10321000C55CAA5D9F8646A436AB4CFBC21B6840CA
+:1032200027CBC695EB402CA78433F6ADD2B75928EF
+:103230009419AE46E2EE69E3E489A23E1FA45DFF65
+:10324000CC59EB0FF0407D2BE3C4A78DA37287DA36
+:103250005EE0FF7975ABA118925C5560B0C4B33ADB
+:10326000FFCC15DFB089F50766E416117D74685F41
+:103270009D8A925848D359F0B5BAFB16FA2EF0D66B
+:10328000435AF75DEDACB122AEECDEB26C98E98D3D
+:103290006E4F61A01514D00AEB94E95B8F74F86A45
+:1032A000BA79C0666455372240E7EDC4C9BE76FDE1
+:1032B000ED2DC2B92E48A2F9F06E0E2A210BAA7C80
+:1032C000A89D17E4116B7B7C4BB023B0D8225CC067
+:1032D000E123DE0636655BB79ED47264EC9C00E6A3
+:1032E000FFCF6F8E188BD30906610A81EC262C293B
+:1032F000319EC18B10C11C6453FF6474F8BC24EA76
+:10330000D2687714C976728AA6A9891ACFCA2D1CE9
+:103310004640EE6F173EFC483F089FC3B182B8B6E7
+:10332000E33CD298110E42A0C0691334332EA9E3B6
+:10333000D4674A5882AB02B00F5BD175281A4F9BF5
+:103340001F6B893CE3FA57DAF523CAFAEEFA4F927B
+:1033500092302B68179EA686567DAB31703FCF17F3
+:10336000EB089CAA860BA6397895D643BF525D3BE5
+:10337000FD4B66A947BB1041E560A6F8AFC6FECB82
+:10338000FAC33C4F849B9E4323E4B56974C8BC7F59
+:10339000D6FDE8EF3CA36F032E0CBF3A0350F6D9DD
+:1033A0009297A3CD62071CDDAF33A81D5F344AC4DA
+:1033B00001091CD894C6198E3F05C8507D050BA87D
+:1033C000EB0D1CD3CBD82C4B2745CD113B46E79CAE
+:1033D000F337E6FED438AD5A7880C885DAA3CCE955
+:1033E000C49F1927151B95F125264B100ED3FF7589
+:1033F0008A2E68C38F8A6F5BB7C6AD49455ED9F028
+:103400004AAE5205A825721EEF9953B458D69F2490
+:1034100069AAFB05E2B177A3D9B8ADD2673F4C8961
+:10342000E0C2851FD3688DD442E50D54DEA1157C22
+:10343000698ACFA654DBCF3D300084D9B5B96F730C
+:10344000AC8354238032B41A2F361591F18F96B283
+:1034500006F0FD8352DC7DFA26A49E0772251646EF
+:10346000C48104B40F05F8F372FC689A39A76A4066
+:103470001D2522230228FB3FB499FA4016DBDB729C
+:10348000F4B6A45E89E3C8083103BD5C991A884488
+:10349000D4B11770D0B139098893C7F5ACA97A199E
+:1034A000F2D0146C17D498D69B5AC715D6B8CA3325
+:1034B0000864B0ECCBA3A747B7A57687B79547F4C8
+:1034C000EBB34A919920E587C849D176552987A45D
+:1034D000C66CDAA95B5DFE9006E86C4F34F325DB21
+:1034E00020AFA1AE71CC7A17C7B4D57B0207600FAD
+:1034F00003884B9A8F079F7D0355C15FF001F366E8
+:10350000103F58B87E6942CB90119CEEEFC5F7D5BD
+:10351000E07BBF28C09922D0F45848AE67538A6830
+:10352000766377D4A0E28F123CD3746A052B3EB544
+:103530003C6077CA6762E5BDC851203D23953324BE
+:1035400066F5A03140A1F4865480028CE6C35FE2A8
+:10355000DDFB3D55069C2F01A364F76A38048D10EE
+:10356000F2AAC38B35903024AF855371BC29D3CEDA
+:10357000F44F958D5040BACF119F4DA34572DFAEE9
+:1035800027308085754048E39224FDC7BCB19E6515
+:10359000A45397DC6FBE052C620469404554F300C8
+:1035A000BDB3C13F84C2E1B87439E278C16095CF40
+:1035B00043E7887A8B239FB2FD516A29F17505BFD5
+:1035C000ECC258807EC402BC118374499DA92A7143
+:1035D000FA5C6CA70381DC07C3FCB7271CECACB317
+:1035E000A0E9438BF02FF39EFAAE9E0D277B8F351B
+:1035F00003E59E081C375397BC387A8B8939298399
+:103600004646AEB9DA5A6EBE9C77B94A07A9DD3A8A
+:103610006DC986D9D22F336C89345BC12EF92FEE58
+:103620007E1C71313C0415FC07D053629AABB888FC
+:1036300088F1FE7033A6807995F20E547EFDF43346
+:103640004BB86005F37C71E2686875A16E23D4A95C
+:10365000925170486A73EC71B068E0D5AF9195688B
+:10366000E4CDE046E2F159986AC5A094A881C991D9
+:103670008B6E4EB312DFF7CDF9329933F50BB047AD
+:103680008DD4FDFAF2F6AE2910973E429ADED4FAB6
+:10369000FC0EE1E97BC5A0E9C4BAFDA004CEF7EFBA
+:1036A000F02AAABD57C2ABE10F03A583CD165F5127
+:1036B0001C44A414F3336E5B92898343A8FCBADDE7
+:1036C000324E58734DE9667CD6D62441AFCD55AE07
+:1036D000ACEC5B02D546CE4E3022D04AB7EDD0E9F5
+:1036E000F175E4D8436F32077751373FE5ABE6B465
+:1036F0009DD5B246AB8BE274EBE51910C0E74E5F87
+:10370000CFF186A91C169D71ABFB2BE716B585D6AC
+:1037100016BE33CE25C5BC7A1620C3E2A49C4ADF70
+:103720000613C41135B93806A5AE730612A9114A9D
+:1037300074BF6C7733E0821C32C9322C0E9FB28C7E
+:1037400001B12BE50E5F7442BE33D8C69E805E3E4B
+:10375000D0003363EE63F2D5C82C3BA1C08FC4E028
+:103760008F9EF14DCBA9169810B896BDB799804C95
+:10377000EAF10F1C5B6F097AA91CA3D8EB55A3EEE5
+:10378000AF6216BD1A8463DDB19A740784163D7466
+:10379000B260FF3EE1925DC4699FD56987FCFF621C
+:1037A0001C5AC00734A3BF9F35EA5C6338B051028E
+:1037B000D4FC18B0026BD90648DC9D29C4211397AC
+:1037C000FB070B3B54E71761901812B11EB2FCFCCB
+:1037D000BF4B5C9CBA0BE4693A35F3A7B2F89E354F
+:1037E000714856E91AAEE3AADD1CE3E85755232ECB
+:1037F0000C43AD26955B0657496953C15A3593AFC3
+:10380000E849CE95A71D67343DA7E5A55460FF9113
+:10381000A21D36FEB327FD4ACD01E2EF5745687C75
+:103820006619FFE5EA9D595422DCB9ABE68AB02E51
+:10383000E47C20037DCC375A3587D7C518ACBCABA8
+:10384000D4957D742C057410FF640BD4734704ACBD
+:103850008E228742B2E499A7850A4ADE1105F43F19
+:103860002D3AC0B55D7635C6B9FACFAB9177381C25
+:103870004C3CF306D47920A37037D8752AC923218C
+:103880001547326D7780D0C42A3A3389C7CA964328
+:1038900084F8CEBAB52E481A3697BC392F73DCD1CE
+:1038A000C003D1FFFD471EF08402BBF3D1EE3F8B76
+:1038B000338835917F115CBF08167081837D1D862A
+:1038C0004155E19B2137891D4105DBDFCB3757315E
+:1038D000B1BF9948132A57E61E7FFB15AA875CC320
+:1038E000E4625E864E63166D7751B8AA5AE0BC5EFC
+:1038F000127E4D2D96CD14CDF131FFBE95BFCCBAC1
+:10390000FCE9904BFF6A6721409C1FCE61BD2945B1
+:10391000B2AFDE1AA878707621CFCF0DB4AABB2A39
+:103920002533B71D68D2FB434B77F63AD4EB936F40
+:103930002C59ED894250148741B9E2EF413B039580
+:1039400031146057AF6E4B1E5B54CBFCE52C2FE659
+:103950007BB50E0E25B67835116F76DE5442ACC0BD
+:10396000AB76C0C9644664DF28D1B46C7199C64196
+:1039700014CB370EEC6349DBB712930BC06F9E106C
+:103980003131E96AF33BB86195A4EF93755F570F46
+:10399000200C41E1DEB06A99CBE9EA9029A54E3BC3
+:1039A000B158150E439C88BD768A346EC3BD8F30E6
+:1039B00068D36969668005475F1DAA552ABBA6E3DF
+:1039C00083F5ED6339C159F8E27D3D601E7F4409FE
+:1039D000FCE252DC26DD09A8D5C99B09EA6566F43C
+:1039E0008E98DE592BA3BC5F141575F03128A625DF
+:1039F000F14262F7665C8346521E58BBDE4E005CA5
+:103A00006A46EE55AEB5B8AFC06188DBC72F3D66DC
+:103A1000BE404557708966D7D24803CCF41396B898
+:103A20009B39CC96D70863020F280C014CA835F6B9
+:103A3000789DE87A520766D53EE1466DA82A7B8DCF
+:103A400067414AB8C1DB21724EEA1B538588E09179
+:103A50002080098CC758732C9B677713648C4B614B
+:103A60000D428EEC3D6D38B42B4836E55C6BADBC39
+:103A7000AB0AE54D2DA4A7EDB567D51AD9C1061D32
+:103A80001614178FDB19CEC4EDC07120D56118074D
+:103A90003F5EAA973DE8A72D7AE06B7C1C4B942DE6
+:103AA00025F0C1EFA08AEE9180FCB9ECFCF6CD497F
+:103AB000D23EF268E501137AAC7E91132188A7E328
+:103AC000968FA98787EAB6D9DF2D3D11E710C16926
+:103AD000EC262922985CEB2DA346999EB3E174D382
+:103AE000D887553B910A805490C70334683711D06A
+:103AF00005B81FBAE13FEE0DB8D43FEBF6760609E4
+:103B0000C29B3D39C33045D3E325FD1456EF39BD83
+:103B1000044A71748311B7A9F3270409F448C4B2A5
+:103B20002E865DDC7E55945D2AF74EFCD90C3780DD
+:103B3000CC1351FEA222031D1AF425E4EAB7DE627B
+:103B4000C4E0BD2D483DA8B2EBD155C379B1B2FD5B
+:103B5000287D167389B51272323A0E8495750BE87A
+:103B6000B87DA1C431828D12CBA0ED213127BA1CC2
+:103B7000EDAA3B60AE93E7F1087147623095EB1F09
+:103B8000B383AB56AEE97427C9290F6F532D0519BE
+:103B9000D19AF11AF6BF1A6852A2803A99A603B2D6
+:103BA00065158296D046649C0342AA74A5719B0F4A
+:103BB000CAAD432FFF501C522345B663CC65CA6083
+:103BC00037AB43CB8190D9DD6C3A30503F20AEDC2F
+:103BD000A2CE014B218A153408862945B00CDA554E
+:103BE0009127B8A29F97EF50A8A050DC23912F1CDB
+:103BF000D790066F0E07E487291B30CB45FA86174E
+:103C00003636CD7438A4451FC7D739CBC6A36DE966
+:103C1000E357B2060D2777B7D16F91869FFEB0F6B6
+:103C2000AD50EBB20FDC900BEC96034AF9104672E4
+:103C3000CBB1F9AD1039EDC7C0335C894475E19E55
+:103C4000ADC2757E16683E986AB34BB18D959AF3F6
+:103C50003F63CD9B74CF796EE6B6D0A38873E8122C
+:103C60005DF704C1BF1B5F85C8F9E7456209B91359
+:103C70000A37279E6279BAFF94EFCA7725D54E316D
+:103C8000A14F3CF0BE43C4806E892975EB132B6EA7
+:103C90002CEAAA8FD849AFD8521D728F0CF37B0F34
+:103CA0000B6921285858192C60B86A2EEBFC332B6D
+:103CB00002CDDAB552E6E41BF1E4AB3EBE2AC4B94C
+:103CC0001705AB7C084A23C044575B1612AE9ADA3C
+:103CD000F529D76BA1A7E33E6EF64F2B7812EEA322
+:103CE0004DB96F14B864814EC54EC441A0A861613E
+:103CF000D00D542EAAD6D1F76C4BFD2F85333E8EB6
+:103D0000E40A7E5AE8EE887DD553EF7CDDFE0EC1D5
+:103D100054F6F81557D03853E0895DDE630EAC8C4D
+:103D2000C9453FFA8EFC295B1031B160C6DE05BD86
+:103D30008F7CF8978D5597E819A0982D33EBE9649F
+:103D40000FBAE03DD84238C765953C144537233E4D
+:103D500043AED5E4030466AB3070805FD67AE929C0
+:103D6000DD0721528FCC5893B26CDE5A3BE0569956
+:103D70001D1511F332E73FA21A3ED53D19C9F620B1
+:103D80008D886A17B1A4BC1E66ECD881212B8BDF0D
+:103D90009F880517216800A3FD552AE0A7AA414086
+:103DA000197758875927D61FDCF460EB642023521B
+:103DB00057A37DD7EDE03F796122C560B854E2CCCE
+:103DC000C9E9E3A9D1F1C73B0DCD14A6CB23B25964
+:103DD000599D7179CB72CE4AEFF87EE5D7AB0F8F44
+:103DE000A794FAC050A8AAFF35EBF18F765E8DD06C
+:103DF0009BD2A116E3D47AEC18200F4CCFEF1F25ED
+:103E00000828F7E640272151CA4B9E438D0A4D43AF
+:103E1000231E8371BF199C3E958703A811C8D2BE8B
+:103E20009017A1A85FA3368F51F8774043799B275D
+:103E300056E2FD56EF5AA54E3D98968E48FDC1506C
+:103E4000B7D7E4C1E40EBCB0C801AC2D60E02C379C
+:103E500061CB2F394450FFD86AA6EA79C4C28DF9E4
+:103E6000D5DA93F23E6B907CB0E9D535DB2D45A2D7
+:103E70009325B7733D9CB74705B36DB5D7EDB9E84A
+:103E8000B34024D3F23999E0E4D89135160C469129
+:103E9000473727E0E839B55DF45DCB4E659CD80720
+:103EA0004367D6983FBE3FBA07A876AD342ED59F5C
+:103EB00016AE2DDC933820EDA32E4CDF0830FD59D3
+:103EC00066BF95048ECB90729F4CB6C69591A96241
+:103ED0005AF1AFF7EE3BA27A6D2F34371E58DD262C
+:103EE000BC4CCBFDFA08E2FF9F77F0CAC6154174BF
+:103EF0009B5E6816B3A253F6621C27DCDBB1A2EB13
+:103F0000CF92C6A1C37D0C3F58197728B3D4F99836
+:103F100011A591B0AAB0F7AA6420C10F0B2185C2E8
+:103F2000B52E40FB772BA614BE828C87CE74DB5453
+:103F3000C6F53FE180B088DA8B959CCA3D01813897
+:103F40002E54AB8CA13FBA73D46D1504F3113521F7
+:103F500011A3564E30FA1B7C80690322D70D846969
+:103F6000A728838E3A3EC103108367647EDC416FCD
+:103F7000CC1571B121207DF39FD385FC34D5EE6C37
+:103F800051EE025153CF63066156885A54CC392BF7
+:103F900053F27B4ECDA636B0F31803257F96AF556E
+:103FA000E50794D46A6A2D014CE1FE1CDA94A3A6BD
+:103FB00058FBC5531F5495DE07C5E5B61F408982DF
+:103FC00026C4800075DEF7168C1DD75E666F8147AC
+:103FD0001593DC97820AC2920795B73125D47FCD1D
+:103FE000AADDC2E6BFB4108064F943A6C51B22ABAC
+:103FF000FD0B0438918716F366BD04DD6E942278BC
+:104000007B509E11BCA00C2DF24E995EBC7314F235
+:1040100049B1FB33B94C3C5F2124FD10D9FB351766
+:104020003A74EB57A48BED317BB8CE18B1C5643828
+:1040300097B07CEE02D7FFD05488D85C2B5AE22D83
+:1040400006F3E5A85129379D74283DE66CECB7A529
+:10405000B10A81AB025354454D73DC80D3C3D38581
+:1040600007EA293B1BEB36699C76245E05A14F3D90
+:10407000EEBF6A635AAC41E1C3CE3180AA50F44628
+:10408000A0778582C9445C23FBA7EFEE6488959AEC
+:10409000D69CF77BB12690BA207782C63230508BFF
+:1040A000C68A7193FBACB61AB09966D783C64AB874
+:1040B000E30D62391A09071390904CF42F14E5DCD4
+:1040C000622A330BC2EB4877C5DBD5EF63D474604B
+:1040D000BB54BD053EF525BE06F8EC10F787A422BB
+:1040E000CD29FBFBE85AFE4C91C45BEE04CA9F62EB
+:1040F000496E91172DEA461C974454B5402B7CB469
+:10410000CB8E1F6D4194A094576D2C49D3159A47BF
+:10411000AEE49EF391A464D6F2C2DA80B8C66DC153
+:104120002BCC1B079EEDB9E71AACFC4F7ED078C0B4
+:10413000D4B285BF27FC535AB51BC631309C0F043F
+:10414000FDE3708586AAEAAE0F57A4A4E34E93C69A
+:1041500046EC74E7A2516DAE8E59F66393235BB6BD
+:10416000A68859EB7150B82EE054193231E8042A70
+:104170000C906E7AC6980061EC3C1E8CE51F47E3FC
+:104180001AFD0F8B9C5527D6C075F5432A8F3C86A8
+:10419000328394411B984E84D0F0EC9BF595368E7B
+:1041A000227DF0572F89C8852F88CBA0D2F910BE69
+:1041B000A6849946A259F3E9E4F358F546ECC7F30F
+:1041C0007D609658EF610C4AE7DE1FC91111481E49
+:1041D000F6D75677C880A357B217174C3A8E860C7D
+:1041E000C83F886F2F4F59ED7E23FF7E7BDBC6D003
+:1041F000E37BFD649BF52BDB1EE21DE1F74E5ACA03
+:104200006C5DA71FFA3BC82A8DCE6ACCDDF5BC8158
+:10421000844B2609575D81D8219D9155773AB5D7B2
+:10422000E185ED4F60DA6F23B1C8ABEB96D7808D97
+:10423000F5980F8EE13085F9361D8AD24C56A2EBE7
+:104240001786E14488DFAD138041875552BA7984DF
+:104250008C7D725F2601053FFB52587F1C7A530DFF
+:10426000B2A713AB88FA39D09FD89EDEA9ACA7506D
+:1042700056546470F59360DBE1B5072EE88A3AE79F
+:104280002950F7209814053D6388175D38282A586F
+:1042900053D216509FF61082962586CB6BA0983885
+:1042A000A155A60E4A73D0CF05B7CA2C267952A8BD
+:1042B000D765BB9C5F5FC68F1D3A5A923541FAADF8
+:1042C000B9A75560C64F3BE05C49920CCB01BE6478
+:1042D000CA32DEB230375B231E1C944044BACA5E39
+:1042E0006301C239FCFD4B69C7ECAA347A40D0F0B7
+:1042F000327384F6B112CB10FDE311629FBDE4D09E
+:1043000009923327D26FD70CF012856D5D2EAE6CFB
+:104310004A188FAC8B4803C8F1B485B31FC37830FB
+:10432000D92694FB6A050EB4F59187CA6694BCBC85
+:10433000B367E64BEE6073F6B79905D9CABF4D7403
+:10434000D1BF7131E212C1CA06BD94B17E0339EE0C
+:1043500070DF3DF5AEDC7A8A8744994FF55709F452
+:10436000765C3A90A4EDAEAB1E196B5E485F021C02
+:104370006920BCDD5C606291F934F8553128BAFCE3
+:10438000D0482328CC4921A49E670CFB1AB5AD3A2E
+:10439000F9A8C61E70A51CB1258DE3208B6692611D
+:1043A00088B89B6AED7F042E5B13EB56C5DBEEAE3F
+:1043B000AF55B3CC165636388D6B21F5C2DA99B5A8
+:1043C000F84C0E0CEEE954CBCBBAB386F9B99A6C23
+:1043D000956275A296E19C47E4482C83DE73EFF466
+:1043E000F23F21BA9A6757009F6FA95639EBC5F380
+:1043F000246B6767A92D8595B34F24EE0A24901787
+:104400002F71AB6D54D29DE76ABC2E25E277A927A8
+:104410002A2C00F6D97ABBE5A10F75AD355EE144D3
+:10442000334A34B461A1AC1F718902C9380455B153
+:10443000F494227F5D0D6DC5899E9C86B609FABFF6
+:1044400090CB78A6CB59F77F3ED2AFD75E8E7D5703
+:10445000A4F0A0B1F257FCD104DE4069C0DC608D4D
+:10446000FDDB3B7D483E6CBD0D6928D8BCEA700B76
+:1044700035598E4AF112B813AFE8925C127A59148A
+:10448000F04C20C49075B85CA129BC4D852E9AA62D
+:10449000062FD4665A2D216E28E41F517BB12D4280
+:1044A000141CF543000238CBB9B6486B21838398BE
+:1044B0007BA6EFC2FB9CBBDBF90E0977E0CE8199AE
+:1044C000286D86C6F8A4566C9B6C92F1CDF2949C34
+:1044D000BE441CAB90B57FE21C3FEA2A0F213C266C
+:1044E00031323ADF61B70B99DF0FB08F86C1A72851
+:1044F000B5540C21DC618574B6A2C33D5A769DDCAF
+:10450000919056C7E501888BA2DB877C9A8B2AA302
+:104510007C36D57838A849F55DC88EBAA95BCAE261
+:104520009C90F8384655B1D85825D69483038CCB47
+:1045300020515D3596F6C0BB2E166FA34A5B6D3ECB
+:10454000EDB327EEBD8BC463725005895106299ED9
+:1045500028215C39BEA1583D79E897E12E1012E57B
+:10456000F5575A3E4A9C25829C2A5EE34553C43740
+:10457000FA74BD9E6F7352367B5E04B00E748D6705
+:10458000B36EA6928AAF79A52FE7DAE5A9E4666B48
+:10459000AED95E1436B2E47F2A02C5A8C61792349B
+:1045A00012902771CCF2C1B16ACBDBE848C4430F4B
+:1045B000AA13BC2152FFB5104BBB58EC7394BB91AE
+:1045C000306718A5572AE4EC25941C001E7DA6062A
+:1045D000A97226F356D74274EA66A1BE2EEB6E236B
+:1045E0004A3BF2F171FEAB9353FD0F62C020665956
+:1045F000C5F7241691C3A8BC5EBDA52CA98A753742
+:10460000B404058598A22FDC0CE2B8DF676C329108
+:104610006B99D0A9A098088B252C91E727627CB6CE
+:1046200062A08FACD2AAD27864FD50E17ADC443427
+:104630002ACBEF5483E001E0BEE99CA0E873153279
+:10464000271E6D97AAB00EB1E4CE59862A23EA58E8
+:104650000090BDB77CD69383088213D26F7F36D289
+:10466000BDE7CDD74E890132E319B9572D5F31200F
+:10467000686A2EDFA7BDF2F5A2A5C55E2D5623A45C
+:104680008285C405D4BA500557B8CB8B7F09DAE3CD
+:104690007944003B9B3885557B560A27DF3BCA4D42
+:1046A0002FB64B0ADE0AE21D862CB854FE7BB336C9
+:1046B000E451015C2674634962C6C543D21C10866E
+:1046C000CEBA27E9DB497D9007D6AEC0974DA662EA
+:1046D0006FBA5CB739B310D91F320FEC767037451B
+:1046E000F86F5A0D1ED8B917E390CA05F43F7E1A29
+:1046F00031C648ED103080352873324FCC5F1E0B29
+:104700005C4743583C29E5CD50DB6FDA4ECC23574C
+:10471000BE33FD2D75655DCA3053CBC2FEC6FE6843
+:104720001C7BE6F4A326AA4970F48B81C3AD022951
+:10473000EA669D84B522AAA0B6CE52EEDE40D1D361
+:104740006D71B83542935DB253066675A024D9DF0A
+:10475000AE472A0E520CEDF31A2548ABD29853F10E
+:1047600063FDBDD4754092EADC88509894810CB00A
+:10477000A91A9A2F149A4DCB084B18205936A82401
+:1047800018081813D8A16D03F645FB13E30D860E28
+:1047900098B43AFC4090E92156604C53FEBC165D3B
+:1047A000824FBD356CD5153AD04FDCED3627B75862
+:1047B000F9F4B39C32C18AB6F7B1F10CA5E2942C9E
+:1047C000BEE397454693D6E771283D000362CDB01E
+:1047D000562255421181606295323DED6775D1894F
+:1047E0009D3F8B08DE3B442144200963EB8AB7B828
+:1047F0003A7BB7DFBC4A94A701A33442464F4286B6
+:10480000FC2CC8A7C5917643BA056C3C9221F37085
+:10481000EFB825808D7AE68CC272CAE2C2B4E10C90
+:104820009D6BCFD37ECDB6C09944F6A13A8CBD47DF
+:104830000C62DAD6A52EE77339631EC273C4D50C99
+:10484000421A05061EAB84774D39F9BB4806BE18DF
+:10485000DB42928762EFABA5715CE8B2A2ABD4D623
+:104860006B772C416EBDB7D68093B8529F1F122E26
+:104870006F6B59DE00B18747EAB7BCBDF25AD97EEB
+:104880000CB132C3BEDC920BAC7CFADC536CC05C66
+:10489000C6BFDF4530F789DAA69B24B1ED0C51A0E5
+:1048A000736514FC918CA3901E77D8363F3455ED78
+:1048B000046EE1B26573CED29707AE57E1DBE660D6
+:1048C00081F27CA8823FC5BDEEC43E33093B6CFE3D
+:1048D0004234EC259B395E56E654DB7C688CFD90B7
+:1048E000A4A0B1ED6FC7CEAB655F5FBFD79CBDCA5B
+:1048F000E53CB3715F8108EB21572715BFBEE47B10
+:104900009CB5523F77900D80C9B8F290E44F305C6F
+:1049100050FFE89BCEADFA80B8232BF39002AD7E1A
+:10492000F4AA34424F6DC6F387E5E4D3A3DF1FC476
+:104930009331DE627E0E26C1A1ECD77D20A8E81758
+:104940005A1696E8A88864A43BC9356A247F5A6E33
+:104950007F9273416A8C95BFFA1084B2C590FC7245
+:1049600036B2504A220B9FDBA8B21557CF02551F13
+:10497000763B25A451AED60C3604B90616096C3A1E
+:10498000A996E9F5EBDB34AD0794867C741A4A6589
+:1049900081A30FCB4881D2215C15C13955499BF9C0
+:1049A000E04485F39804CC7A4130BCF3587DFDB8DF
+:1049B00089E4A56636E5FDCB866312EB6E2DF59690
+:1049C000453FB1C220213839432C0FE81BFE36D7B2
+:1049D00001D512BD86B9BC8D9E0B2688A55962DE15
+:1049E0004DFA674292C82559BD764AA63C171C96D7
+:1049F000EF8961998A66ACB45482DD66FC3BD98547
+:104A0000264C8EA58632BDAC38B96A85397F1BC16C
+:104A100083027B1FB1F704962D29B531F55A4EBBA1
+:104A200045BF4865424E11C4E64EC9117392E280FB
+:104A30000EBC63A0EAF6EB9EA757ACBDA11FF343E3
+:104A4000FB57ADAE87D6B9E6D145D8D67F3E3F34C9
+:104A5000A1670B68B96A382E7A0F7E2A873FBED8C5
+:104A600084D0C8CE7D5E7856D6C4EA0E462FE1E2E9
+:104A70005A447E920C00C1A2E76D7E5724880672CC
+:104A80001273E308A8378031F48DA08E4A032743C0
+:104A9000EC63B0DBF7C50DF857C2EF8EEA9A7108E8
+:104AA0008D61176BD742E2AC1741C11D639F11C3E3
+:104AB000A3554DF397BDF3E1D4D05AAFC344541D71
+:104AC0001648ABB4A05B832EEC7D94C4ACA14DCC56
+:104AD0001DAA1A751122D7D680508CD51D0DA50A96
+:104AE00084ED914924AF9A6E33F572B6C68FC21128
+:104AF000A3B956A48BF3E68B653614D7DB8FB505C7
+:104B0000A274768DF48FF55D8B6F5912BCCA1E4F5F
+:104B1000BE4C89DC823CEA937E1518009831ADF1D9
+:104B20003E76F82CCAA7D105CC8BE2C28B56724ECA
+:104B3000425B908F83325C2F19EABB06E651E2D4C8
+:104B40005B1FA016D9ED87B8667835D634875C6BC5
+:104B5000F4CF8587EDF1FF779EBDE8BCF3DE100151
+:104B6000234D8D60732025A03F148CC5019208B79A
+:104B70000EE4270D2B0E4F191E7AD502BA0C33DA2C
+:104B800073583FB7C3BDF7618DE8568341D36AF8C8
+:104B90000047777F6E518873319402D71680BAFC34
+:104BA000384BBA7B9396819F116D039CAB95023B6A
+:104BB0001B0C7FD4839C166CA9ADFFC6F0AB1A7F8B
+:104BC000CE5006EFE7C5F4AB5C1F7479B5D382DD38
+:104BD00087523B309D76FD1FA799072C6E57699829
+:104BE000A2FF6592DDF413181D12A473A55C6DF489
+:104BF0006BF0FB19C4F083EA7210F3DBC88AD51797
+:104C0000CE06BABD6836D0C6E4DC4D368EBFAAB437
+:104C10005A2C1E38A5C88596698AAD847BCA168829
+:104C20000673E30674ACFAD4FA8CB71C86CF3E86C2
+:104C30000A1E128A3830DE7C19321B1C45A609B2C6
+:104C40008447F062EBFAAB459E1FF9AE3759037209
+:104C500073B8C5D511475AB2F6AF077BF4237DA3CD
+:104C600083E625B176D7559EDEEBECF4DF67E644AC
+:104C7000F7A93D57A7613FDB14C443471FEEE09EF1
+:104C8000DB3718CE403541A1EB1F2F6948D2C773DF
+:104C9000D87E39797766A494E0E8551DAB56CFD419
+:104CA0006F925B0BB7299C4466216CEA1E323EB8BA
+:104CB0001AB4E0548DE93470E0B911C06EC11342EA
+:104CC000397D5EF8F603DAED68292B87193F23B8A2
+:104CD0009F8BE078EC1601C8BBD164568AC3526B37
+:104CE00014EAF63DC8F1DE1F228B887656B4032104
+:104CF0001DBA82D53B4F097FEB70239609739955F6
+:104D000005AF18CD262462B2D043D24657E9CB81F5
+:104D100010A15A661332423F35CA1E3C78F2C88A47
+:104D2000B70A265C191850272BA972DAF769120600
+:104D300027C38039CD647994A7D174CADF1D65C7B4
+:104D40003BB0F92DA4B7FD1DC2C7A70A32C53B4829
+:104D5000A6397D0D21F452BCD2149B7F2ABE4D8F03
+:104D6000FD233D4CD0FD3B41EEFA6EA294CCA1E672
+:104D70005C939D8C0616B5C934C46998110B279EA7
+:104D80009C43E8DAA65D9F8D1BEEF30919A4920FF0
+:104D9000F547EAF0F3C870ADF446003921FFCBFFC8
+:104DA00030B93D2BDE3B3739C6F4CDA2919464DA9D
+:104DB000C8805E69AF093813395E72D08ADA12D1C1
+:104DC000C550B3B9FF5686A8ECEDA60EA41FF65841
+:104DD000CA34DC22FD4EDD366986CC16472502A397
+:104DE00002B192B8C5849B7A6DDABEE59A15C68D7C
+:104DF0007177118E937B1AA80FB9E61C44E8B00EA8
+:104E000072996F603B9B0B782264503D08D4631508
+:104E100011A1E683B4FCFF818574BA1F7844AE5FAC
+:104E20007DE407D0FEA4AA721A4BFC7A2F4FAA4742
+:104E3000B3FFB4AE02FE77E7EB8CEA9AAD813BE6B6
+:104E400022DFFD5FE6F949CB794966AB3030B74CDC
+:104E5000782DF42AEAE317C2589378A44BEFB3A74E
+:104E6000ED6ED5396633035E287FF1DA372A8A057D
+:104E7000430657D63EEE165532E88D25CDA4A4D074
+:104E80004E10C820DA877A83F14B9E8515885C8F97
+:104E9000DF8D16D43389FEC31ADFF3D907B220F9A8
+:104EA0004251D943BD27FDF6A6C4875A225816336E
+:104EB00089A0F6C87BF0356931C3AA6D73BA84DD69
+:104EC0005CF9EDDECA1232459819BBDD2D46950A14
+:104ED0009356E2A5C760F5E603CC7FB8A7822DEC18
+:104EE000C4CAF53FB852EEAEC453C44C971ACABBFD
+:104EF000F35B4907E72AE6CAE8EAE8947D05C99624
+:104F0000343B2F9287FD902BAA5AC19EAA2581F48B
+:104F100014547F1357066543EEF79D84FD3C5BE018
+:104F20005CD74F09D42E130D295A2BD733FBEC3CF9
+:104F3000AADDBE54AB9BC9868B62145230BEED9B7A
+:104F4000CA5A2DE939141FB00BFC3BAB199BACBFFF
+:104F50006907F8D7A6E08658432164F78ADA5F62CA
+:104F6000F4009BB63AAA64CEDD74A6FF218EB3632B
+:104F7000A0420AEE13E4448845AB31936065A8541F
+:104F8000E4500911066D0C5AF45DBABEAA561AE334
+:104F9000C35C4A9E512D5358ED13BCBB4EDF496094
+:104FA000BB3DD5FF58C7BE9992FDB99E09DBA4361B
+:104FB0002599EDB60BD023D495DF24A212947D2041
+:104FC0002C8CB4AEDBAE13E01ED292DA746BD4E359
+:104FD0008D1C9A38D409647CE03824DFDCF7532830
+:104FE0007F1079AD094229B90F054C880076F4335A
+:104FF000AFC02C892F83FED85EEE905E1935B57751
+:10500000F27AB628118FE1CE6B354FF4B218BC1C82
+:105010002927E4F2A0268E521A67EC4E7210EA3B62
+:1050200003E0C0F7652A70C170CADB62823B8A3632
+:105030002CB729D2FD0BFC72770A93DA7063AD3B73
+:1050400030E0AE34234616D155E6CA58E2DB832061
+:105050004F50720F516F239929B9E0C8EBB4E5277F
+:105060000AE97B3FED9910CFB10F181B179814B0C8
+:10507000A9DB913C808DD272D471E6796167138986
+:1050800026315F9F879828DE813BAEDDF0D5F76241
+:105090009D6636BF3C0C56329EF2FFFE089F0BC445
+:1050A000B244BD29188BB99FD3969F8F340C929030
+:1050B00031F1B21F6842811E47FFFEF1D41721294A
+:1050C00048A7C500A561D6E7470E1C3EFD9D4CDDF7
+:1050D00038E8C730826F3D77DF52FB492305E6E2AF
+:1050E0004F64B7D90870EA272BD67A8424D21902E4
+:1050F0008780CA02CD13ED81DEE48A30276D509B94
+:10510000EF09EF11BC6A38CCD00852AA8269522943
+:105110003ACCBE8BBDFF9D6DC3F3CE9E78C6C22533
+:10512000FF8C3C79FD25CDBB09D33591C404CE5D00
+:1051300052904FB36DE6BA76F90C18E8FA638CCE4C
+:105140007A90909814C6D1557D46434EAA7F991DFA
+:10515000718A2734D2EF13D179C08B640F12037494
+:10516000390F3C1670B2C8913D19FE9DDF5A7D166D
+:10517000B5F7375AAA51AF2CF9F2A42D638197BE27
+:105180002897B027CAB4C7FC2B7DAF91E17DB5D776
+:1051900030549ECE08C5E11AB9919C5C012B7FA1C9
+:1051A000EF66498AF00C8EFD3EDBA8E130C154B6B3
+:1051B0002DA6E7A59CFEF35EC36607AB6371DB23F8
+:1051C00088D69DC9F8EB585CC066E0B2ED1AD724CA
+:1051D000359BA241142840429BDD5E62F58D720A28
+:1051E00044CBBA6A2041EA914C577D2B7BCA9093FD
+:1051F000C21F86FF8D82C1B4150598631D046C081B
+:105200009CD7922540422A8724D918AB4E7A2B8905
+:10521000E60B150815CB5B7B2520EF75D8043451C0
+:1052200067E50C2FC68FFC9B7F3AC9F09419C170BB
+:105230004C5317961AA293CD6B671FA648E1022420
+:1052400045257FA25261F10F703C839D8E2A2E2846
+:10525000C758495E9960914C3768F55D12A963871C
+:105260007D78712AFFCDE5511742D52667C5D37FDA
+:105270005E2846F7A226D3AA5CB4F1BC93EAFD34BB
+:10528000A25907B2E1F6EC407AD6C38CF1971FE73A
+:10529000AD1B77C4CCE06D862E0E9B098E75941FD6
+:1052A000BD983FDB6A63A017DED97EAA17CDB7AEE3
+:1052B0004397BFDC75B28E6238A836D51A67C5AC85
+:1052C00018812596D81283463A68C05303BF37CB5E
+:1052D00098B2A36EA9C4F9F08AD8DC91CBF4EB2B79
+:1052E000FE758934E6F58574EB3446ECAA68AEB7F2
+:1052F0006E980000085C8EDA421D86925FCA159097
+:105300006E076D2B8F1F5E7DB39860ACED685427E0
+:10531000BE531DA7DDACE805FF7F524F475D983BAC
+:1053200027562B81290610FA8797DCAB65A06E25DE
+:10533000FA53DEF826D96A9245AB7033268A0A1AE8
+:10534000116F362151237F2FA87CDC27F539DA1421
+:10535000DE3579EC42AEC70ACDE5312166C20CC715
+:105360000F6138EC347F16C16A924ABBDE2E53E2DD
+:10537000B1DFD88110373DDF610DA5ECAFC002561B
+:1053800050B94E63672E05858724DA8C0F4DD706FA
+:105390006B067D525608C5BEFF13948C53938A7BCF
+:1053A000DF0E74FB82AB7993781717DF2B10374130
+:1053B0003E970362AFF4A62BB2339E49E60BC3C8F7
+:1053C000480724B8E593F88B2FD41A76788AD5222B
+:1053D000C2EFC98116AE0302312499FE3070B0B914
+:1053E0003BF63A1AE4094521D6FD3F9C2AA7FDBAAF
+:1053F000F01C74848B4EC4BD70B80599E64AC58A0A
+:105400003B0E1DDE674971998C1314A12B73698BB8
+:10541000E4C46446B46EB2E524C54C086028CFD31A
+:105420007FFE310231DEF963925AE322A03A274D22
+:105430002582AA2A94A4E541D4561E360B6F697AB8
+:1054400010BDFA0118290C568E130A70F47E9C5276
+:105450001292836DDECF75D25753FC525DFD450924
+:105460009D0F9DC3DBC6C46B45B8A3035C2195EFBC
+:105470006A88F2CB25000CC143D5E77354662E37FA
+:10548000E0CA0C608086239A7BAC146D9CD9AD7900
+:105490007B1C753639B391A92D8A6014B6662E52DD
+:1054A000AF0D78ED5B7607523E0DF17407B01AF53B
+:1054B000292CB4020C95BEF04E8BB879F115F8404A
+:1054C000A1FA2D42B876A8FDE23A682AFB420733DA
+:1054D000847800A53CE99E7A479D32C115FF96DF8E
+:1054E000D5A5CD73DF49A72DCB015B4CD85BD30687
+:1054F000CC07A39BB6F26C97307EAB31EEA0F70AD7
+:1055000021DC83E6CAF5C8276D90C9CEAC5FA5241F
+:105510009FB68CD9459A8005832F71319A6BF076AE
+:10552000A66BB5464DA0BBF0102E2A1D53CFFD75BE
+:10553000606F5E7761465018C51EC6F98BFDD48634
+:10554000EDDCCD0E1538932A510772810B5BFF6499
+:105550005AB8D73375BE4CE37C4784D3CE6E6758B8
+:10556000A5BF88CCC51F67A3375E6CD91B66AF1774
+:105570009541EAF20083C748F09E9EFA7DFC59DA15
+:105580004D05215B7B036A617113343A3A4F001C6D
+:105590000D717C56363B3209CCDAEB95A3277F247C
+:1055A000E084AC91F0C303E86E9753B237F34FF841
+:1055B000702DB0F7F886D564EDEBE5F6AA5CE1EC6A
+:1055C000B2BD6C7F09442623D825A665D924A1172E
+:1055D00046D5EF03001250D86AD36A36EE1E61BF7B
+:1055E0002D769225938B79D11674DD2BB89B65545B
+:1055F0007280F3F78BB836701061C52AC9590890CC
+:105600003F959D8EAA35E03CEEAD7537E87E8C9CCB
+:10561000AB876BAC9A7C316337B22B21CB5ECBB9B5
+:10562000974702CC53905922039EF4745ABD3A24F2
+:10563000931949E6EA2F0117A080505250D98A11D8
+:105640009A00F7165D8704A8C1F2EC281847629704
+:10565000C85EE4F6F69FF68DF41E5042AE5556B085
+:1056600001B6FA80D0281A7D7D488E8A2EEDE0554D
+:105670002559CF0BC19051FA1C5DF111E595FE56ED
+:10568000F8FE16F7787F9B43474D73133FE83C784D
+:10569000DC42E3CE3CE349103633E46C47F56FA4BB
+:1056A00070E34E8765A4AD22DC733B3262E7D7BE60
+:1056B00045085E8A24998EBD8674DB7081A036EA27
+:1056C0006C3A03AB0CBABDCD3C43BCBDA235C8CCD3
+:1056D000AE65B92A944B89CAC66333675044FCB39C
+:1056E0003936DA3D04B1C775E777EC225898197D51
+:1056F0005B10A1E943B9926A0153EB3E0A9F8B25E7
+:105700001952D30C97F6BF26C911BD4A586AB0EB9F
+:105710007F6F0B37C631B502F9E763BE304AF3E35A
+:1057200062FC27B14AB2458179EAC6FE1D38186786
+:10573000F54DC1925CFFC1D8BA842E2CDE20BD0D80
+:1057400056C658D3E9D22808253F7524B158F79C8E
+:105750005B830B08FD20DAA4F548DA68DF11CFC5BA
+:105760001E85378CA77F453BAEF229BEB59F6E22C2
+:1057700054A1ABF82128317B4134D5D99E9ABBF78F
+:10578000E0E8CC599FB26DE3AFED75ED98DF76564A
+:1057900000B2CD8348CF96A2AEAC05CA372EE59DA8
+:1057A0000F0B016FECE6B244EDFC3071BDD8221551
+:1057B000D00F4D55144AB58354E00592A421D8A1C9
+:1057C00046C1EDB7BBAE062BBD4ABE3F7DCF7E9135
+:1057D00009A82FBBEBE70CDC7D93F980AF7C972504
+:1057E0001BEA82836467C6C84971C3BA956B1451BA
+:1057F000C41E3530C03B589C8F216C7F671926F33F
+:10580000140AE6D959CA4F659894037D85F9077241
+:1058100054BB45622FEF345C86764DFB2F9217F414
+:10582000C7872F4B139404257C25740F6A90D0C52D
+:1058300070FB5D8B98D19CBF5ED1E8CEEA223F9988
+:105840007B3FF0043C58FFFD8E0AD25A3C11FC8B82
+:105850009C3AFF66897BDAE91BFD30C0CB4FF434FC
+:10586000ED6CF32DD3A07CF920589D6D84A2836646
+:105870006A51ED976912B72A9CA3AA424F089A125F
+:105880009D710A30C6210E6BC56F65A3148B80E233
+:105890006E7EAE754F6CC50F38AB10F7DA69EF103E
+:1058A0002A412CF6C3ED4576D9D1FC83F36936B095
+:1058B000EEFED58A7015E6FF748BFFD060C14C5A9E
+:1058C000427A65A59EB3E06821C4C3C11314E5EA1A
+:1058D000F4C1CB65F6C1830B10F94255953B4EA53B
+:1058E000C2AA2D4B5BB6846E3AFB11FA654792BD96
+:1058F00058C7DE2BB437364D0F25A1E30A025722D5
+:10590000634AE73E4E27139965F5B84879537846C0
+:10591000D85E1A47D261D7486EDE5A841DFA00E37A
+:105920009EA17867398D7D28FEA2790AEBB3F2DD5E
+:1059300077B970BA8ADBF4EBF93C97A92BDECCA4DB
+:105940009385DCF8E50CE889D227151DD4DF439C4C
+:10595000A98C0F7B3FD75E9D9388DF12D4E4937CA4
+:10596000A8075E8FF40B0FE1C6B9C4959DF12A1705
+:1059700080897FE5A0F8BB03D863C2B8FF89DB0646
+:10598000EB6C861CA2AA2054B2CAC22638A9904C3D
+:10599000A31005BB23626C564E5D8F0AFABF42CF3F
+:1059A0007B6927F6ABDC4B6F86E40F5A337F8F8021
+:1059B000AE54FF64FC27107C42DED70B7F79FC6E6F
+:1059C000F861A6FEBCEA3924EA209FCFCC69E4B98D
+:1059D000D7BDD370286AB694C16C64156032C30D0C
+:1059E0005CF78ECFB22EA7AC8FE412FB4FF3A381EE
+:1059F000957AB90DCED7B48A8C26C4531D471B980F
+:105A000042BB9BA4C08C4F630BB0B140394158F0EE
+:105A1000F4162CA87F6D4087B69F15AB84A55E1742
+:105A200060979C93519460D6B863D02B6BC9B7181C
+:105A30003133F90402B989D2D81622E084EF61DA51
+:105A4000CF85CE03F4BB03DB7D651C684519E93ABD
+:105A500026461C0D047859CEBC3D11BF22F84C9C43
+:105A6000B4E514CF9A56D1329CD822A75EDEC4DAB0
+:105A70009C947B1CB0EC194123C6B9DB407C9EA7EB
+:105A8000063E2B7CBB32073224F900645960618EDC
+:105A9000C01FC4318569750B22B201ECC3C14D82B0
+:105AA000C5E166543BA27BB4862DAFFF12E26D25A3
+:105AB0001088724E341835E476738BF6222C6733D7
+:105AC0003656DEDB0AC1C61AE1C8F344CBB9731EF1
+:105AD000DDA387E9D9C047EFAD030363912578F2D1
+:105AE00055727C13B791D140A7A5E71465E696FFE0
+:105AF00009AFFDCC3FCFCDA06CBF407711AA3407D2
+:105B0000CAD1D6AA8CDBCC6CFD22797534934E8831
+:105B100073C7EC7CD3B5B6D96D6CCB0A3A48C09F3D
+:105B2000F9ECD72D1D9B783E19EA26F9D9D8D999D9
+:105B3000A099761884F585942E368AFD2A58AF9C54
+:105B40002FFE841268469B876B3952269FC5FC4AFC
+:105B50004F64E63895F4646484EB406E2CD0862262
+:105B600007222891CB28B0FE835810391348F99F9B
+:105B7000917182EEC2EEEABFF8279D011A3E9F495D
+:105B80003F7FFA6E9F53A7EE6FEA80BE4C30895F6D
+:105B9000C490179531BEDE6868C74EEF14C7263F24
+:105BA000E69B16E2917879001F46D4A3DA11795F5B
+:105BB000F7A33F1B801F72B06755AAC07A6E2AF008
+:105BC00049178BBDF15CFF559502E8E59044366CB2
+:105BD00000F7669D400B3EEE7D390E26ECA3661E57
+:105BE00012B536AF3F84DB6EF2B0C09A1AC858C304
+:105BF000FC8D7D72605373332164850F2A098E5C9E
+:105C0000F4D00FEEC8ED75C5690D80CDB99CD87381
+:105C100060F935484A57D80355EAFF71EA701DD13B
+:105C20004068EF9ACD94133A62E55DCE66B82A8F4C
+:105C30003C6DAA7FE0942D4C430E337EDF52D9C0D9
+:105C4000FE76C4F9F59E051135FAC6C071B6459DBC
+:105C50005325137B75B6FA74C26F85DE47A01639DB
+:105C6000EAF8E65314D65AEE65955FE58AAC05ABC3
+:105C700086E021BBB18D10A31B94780290E7368596
+:105C80004A87CC2895C6E83CF58B3E4474B9DDF5CF
+:105C9000256BA99AA530ACDC596C4566CF197A7191
+:105CA000C5E5AFC973BC033A588480919CBF842476
+:105CB000D3BC3558026955C22C7D35BCED05CC0FDF
+:105CC0005AC98BDDCFC08CFCBC28A448FCFFA36B59
+:105CD000DD6FC5CACC7D774963C87531C05BCD9493
+:105CE00066118F59036551231BAC98CD0E5F177554
+:105CF000288DA3AADF62A8E2834702561DC5AD81A5
+:105D0000A8E0470ACCC0BF860F1A7B589FD3F50581
+:105D1000C9A11717AB4502FD931FF39B872BC8E85A
+:105D20002766668ADF1D48D4F23F6934A153C2E07A
+:105D3000FADF44A9F7A5BE9CD8212F6C97FFDE415E
+:105D40001B915084E6BD9269D541BA2D7EE05E82FA
+:105D500036DB6727E59D915B1B7FF621E93742B46F
+:105D60007E148D58E7386E92A8B4A938853D49FD58
+:105D7000E6E205348DB0DAF1E8988C6C70CBDAFB92
+:105D8000AC3543A3E174ECE2EFE17F5F57AB617F99
+:105D900008C25634D1D0C0D39BEDDCAD97A3864763
+:105DA0004DF88583BD6134836F0C57CDC55E3C755E
+:105DB000DEE044B524A7E968B2A0DD4228F055CB67
+:105DC0008B951039F22B3238E48329265FD578E39E
+:105DD000A67AA871BF2D7AB2F02C50A28BBB693C79
+:105DE000C32DCC2199A4E60AF15A64476A1DC63036
+:105DF000232B61477DF7680239E5CC6678EFD6D36F
+:105E00009EB2E1BEF7B5CBA91DF786F0637692FB93
+:105E100099AD82C8618921A2ABFCB011F5F7E9F513
+:105E20009284A0B20E1D343DC04C11C6CDA14E12BD
+:105E300066733B62AA205FDAFFA82CD27E89E190CC
+:105E400063CAB937437C7F43142F2C43DE5DAFB662
+:105E5000A93A4E07F3C74A063028567781364B4297
+:105E6000800490987657C2260D474107042A81C7BF
+:105E70003FC6EADC2EED10B593546F420F962A719F
+:105E80008401BAAF84E6CACE3F0593BE6E22326F5C
+:105E900091ACF8FEBEFB1D444846817430F26C297B
+:105EA0007CEF842944227D5583C962CA2891EE1271
+:105EB00092CA2700972DCBFC8061BA9CB196AD07A2
+:105EC000660E42A1AAEDEE0BBE67BCD4B3FB1FAEBB
+:105ED00085FE4FCC7ED506A93CAD0FCCD9A1CA5DBD
+:105EE00073457B55503486609987F0206409B2DD94
+:105EF000C70901D7C2944A251FC34F1B348967B312
+:105F00007FE3A6DD70A4CB676A78A1F34D2846F441
+:105F1000DABD5F39FD265FDAFD272264805688D11D
+:105F2000393BA18A2B9075E71F28F978A791BA8A87
+:105F3000BEC6A63FE534A67D19F7B8C485805017C4
+:105F40002905C444054DD2FC18990B9157BA69A292
+:105F5000CA000D99028461AE68E4A43ACFCB5B73AA
+:105F6000544680C117F69A193463F283B88BFDDF6B
+:105F70005AFD23E98F9C0E2ECC4D29A8920B51621D
+:105F8000B1C4DCAB5A01EAFF008E6D5600FF1D95CF
+:105F9000816C36A0B1200FDCC0386060BD76EB426A
+:105FA0006459B8815B863F8F3E2EE695ADD3DE48BF
+:105FB000831FF2F6C09087F044CF854C23E664DC63
+:105FC000D897A14662A1391B17E053781F3159DEDB
+:105FD000FE181ED1EEE19791F3C5EA6C56C35F80BF
+:105FE0002C7150187225C2FC411D6A675D1D870423
+:105FF00041DA4BFA567B87844BA1FBEEBB6367F318
+:10600000CF827671EACAAA8C369253E5E810644CC6
+:106010009D7AC034C97FD633AA47CBCAED8DB94823
+:10602000E30EBCDE46C0B7AC681054E53887009676
+:1060300012348192D02533F6FB644C28143DA4AD74
+:10604000BCCAAA0BA8ED05307ADBAA2E7B0BD73988
+:106050000932800D2CC5CC81502800CC54C027A11A
+:10606000B9EE38BDE2EDDD611113C3CC0691B19DEF
+:10607000AF3826BF65404DF92583DC737F2C3FC6C2
+:106080001984BC8D1CFF326E298CF1DCF0DD5D972C
+:1060900002BB1CF624BE59B7ACCC44972DF0389EF9
+:1060A0003226F805112B16E85AB99D66CB79A5352D
+:1060B0000B2C6F2F37B0708B7375DD310B98892DDA
+:1060C00000E6B887FA04F1FA0B667CC0FFB48C6472
+:1060D0001F654707D0C9CBD7B3C93CAD723F4C59F8
+:1060E000AF5E5E0558C99C4B92B6C2F78D62D69ED4
+:1060F000AAC9B8325F34F5B522796B1C1289E86AF7
+:10610000D37650409953410671D99EBF1B5F20142E
+:106110003C267D4A52CAD9E3BAAD67D1BD8B98A45B
+:10612000CB7168CC6E68866ED5D1479308B4D55ACA
+:106130008A01FCA58BD1C28003EE650125272F982B
+:10614000A48680AABB7CC98E0407460AD9C72466E8
+:1061500053153287870EFD8267155B04CE5DE0A57F
+:1061600038107DE48599E5712FA3531E397D1BD826
+:106170004D1F4329F1377A23A2D7BA311AA66BB93A
+:106180000727497C62235E810CCCACF792ECFE6160
+:106190008A887753F3ED44A2EF5D1E89F9E34E112F
+:1061A000C58D4D286366691541BFC1E1B28A792268
+:1061B000D6A6AF9972BB68E9097637225706147CD8
+:1061C0009A5C4BABAA50505A5F967A3AA09516C18A
+:1061D000804485998F029EFC64C7FC6EEF1DCCE164
+:1061E0002D51630F0636F358DC91880E2DB0500EFA
+:1061F0004DC44560CDD6B26C0CAC55527650413191
+:106200004186A79A0F2D00C109A714DB8FF01F57F5
+:10621000D87CF405AC034F1C4FE79B713D59952D7D
+:10622000F4EED3FF30D2D72B82C32129F9E3FEED60
+:106230002AE254A9B4C5E989DD297B0796809866CE
+:10624000DE706BC6C4EA20023703FEE0076404C7B1
+:1062500065E0BAE30FF02B596AA284EA68700F5D1B
+:10626000E801C69E37383C110B0FCF3165730389A7
+:106270006D9500441774C718E13E62522D31C66017
+:106280005D9FDB64AF683DDA3A9449EB829491728A
+:106290006FB1234D46387FA4558BD0A765170A6D83
+:1062A00052D247DEDF09A1166FA918E7808ABCC267
+:1062B000D36B958A7F4C6A5455F2BFE720234B4F2E
+:1062C0002C203DE469159B9DAA72248623ABF20D18
+:1062D00033C5D2EE149A13FF0B2CB81676C850159E
+:1062E00099BDA3E2054E06A5A79EFCA0CE4B625227
+:1062F0003F5ABD81B02355AEFD6EFC0B68BF84D6FE
+:106300002C63FEB24E66272DE9A0EC6B83108DAB9B
+:1063100067196F7C252D20A87CA42C9316F6C42E1B
+:106320003EB1446ACF88EFCF53635ACEFDC43230BA
+:106330002013DC04E80B5AD972A6A643AA20933294
+:10634000E85114BE50F9200ADF1007617C0909E505
+:10635000D9DA59B6C42A484D68C510B93A45531020
+:106360006E680203615B7911F8B078A11AD2EDACC6
+:10637000DE8CE66F509F4552C105BA21DB57E5FC24
+:106380009E9EB422DBD76C2FA9BA6559FE46D2086F
+:10639000F4D9F652B6CB14976C0D25D997358BB539
+:1063A0003B1E3592CF6F35F4E958972EDE7D48C3FA
+:1063B0006154053DED92BD1E1FB79A5BC7EF512199
+:1063C000FF901BB546F23D41A8E6AB8A8C2E3749BB
+:1063D000CD60A561F9867838BEA513472B83527529
+:1063E00029ABD589C85B7447A53CCAE8EADB839C26
+:1063F000E2495A133943FA3FDF1A244DD7E4410BDF
+:106400002E663E08356368C2FFD46AA98907BD6D50
+:10641000E464D448DA5C369E75DEA78D269C497EFE
+:106420005C770BADF23D288CFE6ABF42124D3D2DCC
+:106430002348D5B5C258C4EF019651099A7045CC8E
+:1064400025F4B98D3ABFA833CEBA3996147D9CACE9
+:106450006F2AAED57CFC3E8F4EFA9A9E598E627F93
+:10646000058BA9B21835AFED3E6A097AA7A20DA532
+:1064700025B0392480EA6E6844F25D7A487A66A9CC
+:106480002989CC01AFEEAFDE62FC3D64CC8E6FBDDE
+:1064900040797940F8E622C664F12B6F12160303A7
+:1064A000408173737C1673EF21F6501E0AB92B716D
+:1064B0000030D9183708EF21F0039A38123E52C342
+:1064C00069E526A30C58830FE7E34610B088EACFAE
+:1064D00061A74EBF747B06906513342A4FC15C24BC
+:1064E000A470207C1A09877935912ABEC2ADF76560
+:1064F00054F135C44F6A65C9482D274CC81DD8E4EE
+:1065000092C4DDF782593CDF342DFA1A0C4B3A6104
+:1065100034D3A65A4E9977F2CE511C0644278013E5
+:106520009470D90164191ABD7AD0B02CFC408F1F29
+:10653000825841BFEF58D79E1D3D518D7C7FBE953F
+:10654000204502AF3ECB8D3349FCDBDE96B58A1D7C
+:10655000BD7D2B7EA2FB36EFD67907AA2282098B5E
+:106560006986EE3E9D529ACE31860C49F3F74E3D38
+:106570002D9322604BB5C2E767394C160CCBBC118A
+:106580003EFFBB498D219380845BC4D66C40E746B7
+:106590000BF742C349F45FE2A61EB8A46D55AFE203
+:1065A000B7EDC348D2CB10FCEF216C55DD0C5CCCB1
+:1065B0003892564392913FBEC6C9F4629E84FA4611
+:1065C00064746744369CB745B80FD33677FEA7236B
+:1065D0000087AF42FD62A935C4AD25C22ED7E13E8A
+:1065E00009E54F715153ADC4B52BBD07B42973EE06
+:1065F000AFD7D8F1749FA511DE61CE89BD109F334E
+:10660000FFCCBEE9F7406B5FC9EFB610C4D1D41E12
+:106610004DE633FFFAAB91BCDE67247DE7935E97CE
+:106620000A0990F6B68281ABF3D6BC303DF0DF525A
+:10663000B187ADE1A4BD4E3DE8E5D6F52F88AA07A8
+:106640001BBBD3E800AF73B4C6AC2CB387CD4C3AB8
+:10665000F5F55F7CE5510D0A3BD66AE8FE01373659
+:106660000F8DB1A248A263A0718B1B22D7DBE7E696
+:106670009934F69A391033D870A7B780FF63A73CD6
+:106680008E661BDA79F3272A4271B4A3497D6A2604
+:1066900030F61BAE6FE3217B6DED113788E8DD6FBF
+:1066A0007A59ED4A215F21AC7FFE2DB37699040C17
+:1066B0002CA6BE01F12AA6B5A23E06B07753F289F8
+:1066C000AECD9361BCF9316038F341BE9296FE6164
+:1066D000C7975D6F820452231C1C4BB87A42628DAF
+:1066E00008627AEEA5763C295AC2FA91D9646FB352
+:1066F0006AE4824AE2A8424CCD49A0FD817A5B71EE
+:10670000FC5CF6BEE599954BFF2096123BFA23748C
+:10671000AC0D7419EF9A578428D8898E8237515A54
+:10672000B320F08DD81EE03108F304F1D553FB9669
+:1067300074D4E587C0C950531DE9838E3B5DBF8B80
+:10674000E2989E4271A87B8FF154236BD1AF29B799
+:10675000D23DC95678F9161163607EE6A5F5E1BE13
+:106760003A5A7823C6D053A20AFFF72442F59B1960
+:10677000132A344906CC0080950206466300DF6484
+:106780000E9F920CB8A1AEE837AEDC7E6C3984EE79
+:106790001F92887D2B0E183305ADB91BF622F9D157
+:1067A00090AE50AE2D10BE8318F37787426F24A6AB
+:1067B0000AED3FE51B3938E91C56316B1F9544EE55
+:1067C0001840DD2140FAEAA72A1DCA082E4B7AF3A9
+:1067D000D51DC3A5B8C82AA751AA504CC2F61BF7AD
+:1067E0007A07F651DDCD06FB6097C50CD0C1E625D2
+:1067F0008BED05B95345187D66B306A6C396F31E07
+:1068000082929738ABA3DEBB8ED8C153E47EC91DFC
+:1068100085DDF3A83EF1AD50A8352F6437B237556A
+:10682000F0F550C104CFEFF1D91464494B1DBA956E
+:10683000384FCFB67268D5DD8A1380557EAABFD097
+:1068400016A7D1848990F6A3208BE15612F057AA9F
+:106850002DEEF064FADA19A79B476EE1AC5AD6BB6D
+:106860003AD40B4C904ACD5D1DDEF1EB475C029DA6
+:1068700043EA307707D5599D33AC4FD46E3F7488C7
+:10688000E1808647AFE849C8BCD42C236C556C7DA9
+:1068900078FF288F3E69499D98C2DA6E6158C78794
+:1068A00046419E334AE29D591AAF6DC2EE145C8B8D
+:1068B0009F3FD37F582ED47EF6A9ACE145ED8AC127
+:1068C000355191D993353ABE0D560396C33E2436C1
+:1068D0000AE1513C98E9EA089330DE3DBC343D536F
+:1068E000A6AAEFDD6C7309CCBE9D729D72F46DACEF
+:1068F00080DCEF4E83A7CF623F4C8E35C600F92A6D
+:10690000D4E852D5E16BE615BFA427F322F4253C69
+:10691000D09D474EAD4E004BFF43F0A2F1AA5B3B2A
+:10692000C3E4A8EDDF1976D01666592045D0C08E95
+:10693000F89A2F1118CADD61E43DE9D2D287238885
+:10694000273752610E69A1E83EEE394E9E236069F9
+:10695000C5B157C89E34C07B0B62DF8A457D9F322C
+:10696000065AE588679D5DD01DAF78006E6305050A
+:1069700048DAFDD5548AAC834F30B507885AFC8A73
+:10698000C3A37D66649C9E71A74EB92653CCCF08E5
+:106990006956B2E77C28C80F2FA87921579306D5EE
+:1069A0002F72FDBC4A59C23D826C900B430AC4371A
+:1069B000AABA750BCF9752C5580439280D16FFE9AE
+:1069C0004791F49E618B80DCE05907C609F6C859EF
+:1069D00057E2B532C2D66B39ADFBF71A1F4B3B8578
+:1069E00016AB9A9DAD4EAA17421E1BB30E03890D1E
+:1069F000912D826A98553CB71D2FBD3E469CC70D10
+:106A0000B6FC890B5BCB43389C679A9EB921130C6B
+:106A1000C7F8FCB04DEE1C3EDB0E3D3B5BE87A2335
+:106A2000257DE67DAC862D1618162B74F18684DE46
+:106A300027425EA942B9EEADDCEA0B6344783C29FB
+:106A4000ECFDEF07CE232D007D218FA333C1635EC4
+:106A50009B3C4B2C6DC9D8A73E7A5885D7A45A3990
+:106A6000A262DD0CFFD215B342A1B63B2F8DAC2D37
+:106A7000FEAAB0EA10C17F326D076F3E716B83775B
+:106A80002C27996D7007768F8BC54E880038D8E318
+:106A90006EC29343BB6FF1245EAA9748FCAE9D374C
+:106AA0007F9CB332532312952ABD996989BD4471E5
+:106AB000A6FDFCBE92EBADD5E0683C87B0DBEEA94D
+:106AC0005D1C7358856D22ABA940D640714177E5B6
+:106AD000496671B308C2C69291A5792151548A4F73
+:106AE000B14BA198874A65B6EB045211E972207A3E
+:106AF000B64CA02105B67D07E09F095144F6111A56
+:106B0000ED2D9BD10BF1DDCAF1B3CD1AB6C67CBA1F
+:106B10006E38ABA703F1AE01E59991E4355F06DD70
+:106B2000E4B138F5EF8459B827FE45181FE0273344
+:106B300079D9B07BFFB886A01BFBB1F7F747FD659D
+:106B400082B61DD534F1B2AE41BAB28EB96767C212
+:106B5000F066CAA983F07EFB6876AED97EB122B812
+:106B6000F2B1617F0000B1109CC43903DC5EAF2933
+:106B7000BC39CD9F6D8D79A3205E6F64CE26F0F376
+:106B80006566B0D9AB79B8D481FB14FB0078AEC68A
+:106B90003F84EB227627D8B12158A2E984AB69FE65
+:106BA000641B4BB668190FACCE4A9C570EAB548C85
+:106BB0008E15E9CE0D708FF908BA087A34079C0952
+:106BC000CE00ABB5055157E26510809F5D65879B90
+:106BD0003E10F1D86A7733811379F9EDDD2D4DEE52
+:106BE00008B544DED7CF84BE8868FF36087744688E
+:106BF0006D5F18F55BB899FF009EC0D9F6065A2361
+:106C000043618FD4CA5D3F8B7DE6EB59D9C5645D86
+:106C10002F608BA5534DBC26E1C6A2FA3CE55D8BE7
+:106C200001FAEF882017555D805D79D70F7002D487
+:106C30001D062A9E618BD3ABD5B626A56907798B35
+:106C4000012454A6380021DD1CDDB9D9F9456BD0EB
+:106C5000BB3E3890F06C18954B9201DF3AE58BB053
+:106C6000FE38E8F27E57FF07234295C818AA3A4C2F
+:106C70003AF3B0A2C05E0103188BA7E0C7CF664A03
+:106C8000DC635F810E9261C0C977C98DBE9817C859
+:106C9000DACF27B013842365EE26CED41AF9A0FEEE
+:106CA000D73FA1EEE1F1DA2435A9F13C29BE500D20
+:106CB000EF10F0C96C1C8A67CFB264C335755A04F3
+:106CC000B040B8EBE1A220B6517E8A5C926E053DE1
+:106CD000794565BC272D89B7EEDF9C1C905D08C403
+:106CE000102329A4C34EC40BAC5C0541961830E0B8
+:106CF0009A76847AD8264F20D13488EFEA5F60AB49
+:106D00002571BC033E3A1859F570E71AF37A00D89A
+:106D10009B1CC752A7AFB456B3C80263B5FF11702E
+:106D200072FD3A218D941E8AAC803C60B8C4BBD001
+:106D30008906429D722E92DFE3CC57E5673AA7029F
+:106D4000908DA965AE3820F8991B5504896B6D3D6F
+:106D5000B1D73A3407EAFFDCB9E7611AABD6BA60BB
+:106D6000CA0FECABA9D0B3D4C5114FB46D3A01FC36
+:106D7000D6D1715DE7726CA43999BDAE728E234F86
+:106D8000D3166CA12A643F6148D8AFEFEA17E6BB7F
+:106D90000F058A5E51BC3BB9F94D16A5075E1395E8
+:106DA0009A7D2F9A50C41BD064B71E61903D206F0E
+:106DB000B228886D9AC8C33BAB3ED23E442D1931F0
+:106DC0009B20809DBEEAAA78D64A56BB7C50965F2F
+:106DD00056263A3BC46D6072F145F94952BBAF1F6C
+:106DE0002ADBD2AB83EB5262B162E8FF0D8DFE204D
+:106DF00018B21E69DE886D9BB34875B40068EDF269
+:106E00000C154635229008B4FF382191E70A987A8C
+:106E100061399A717994649EE4A2C0038DD92141AD
+:106E2000DD25A2FDBB27F1362A457FD0EDE286E1C4
+:106E30009B22AD7B50924DC5B35273F2A2663CAD1E
+:106E4000A7995357955EFE3195F57AB732231D5CAD
+:106E5000ACF66FD4C11BA9238EDBFF235032012770
+:106E600015AE7CB120CA1CB48E5D1834F891BC3DBF
+:106E7000C299DE1D928E35455A5BE887D840C51011
+:106E8000EBFB671357E4861316766E015C13AB3E7B
+:106E900022D6C278CB54B28BED12D6732FA1DFFF6E
+:106EA000F3A7DE1F2397B65A64A62448BC81269117
+:106EB000E33717EB106A0713F7AFAFF3FF21FC2A94
+:106EC000AE18AE759B1E3F6AC741C015BD13B61301
+:106ED0004648020AA7F11A058FF8DD81EAA194C895
+:106EE000C01F712EEDE43E7441B12E5F47DF017A81
+:106EF0007D7E64F27AC758200BD9AC9109A915C4DC
+:106F0000F5BF27435F2B4A2CBFE80940897C43F833
+:106F100007D5514FF7BEE47B2272427F4A698AA4AB
+:106F2000FA03EB09B3F4E9927026F87FBAB01F5266
+:106F3000FEE870398595DD4AFFEF6F821FEF5DB87F
+:106F4000744E9CBB39245650254460ED9F7171727C
+:106F50001604466ACC00DC671979FDF062143B6CBC
+:106F600031DD0CA7F9AE7B6413B41C6188A1C5B5F3
+:106F70004738A83AE7308BC6D148B7F3E1719FBDD7
+:106F80006C90A4A283A986F17106664D7869F49C81
+:106F9000E36B7F31E4652015DA1D95FE364A350C2A
+:106FA0008BEE5BE0C2A1D7F81125C16CA94E4379E5
+:106FB000B56F8B3708A1730DCC5A4850C3B6EBB3ED
+:106FC0003A14EF1043BF38B47341CA9E705998B257
+:106FD0001E08D01DF5F8CA5D1C6DD34A0F0661630B
+:106FE00083CEFD6E0F67E5636F0ACFD44A156BE65B
+:106FF000F2A0BE076E580D1B2D0A12C1AE96D7E641
+:107000007D9C5273394743A6A1CD24AAEFFEEE62C0
+:1070100040D2AE801957649294CD3D5DADEC2CD535
+:107020003DC096894A1EC9A9192B619D38BD6D4482
+:10703000AA1E41FA6DD093227A156ABDCC8C3EAE61
+:107040002B63CFDD8739743A6CD98CF6DA06740C71
+:10705000DE9828D90C1876F54175EFCC509CFC953C
+:1070600022819E49FD9B23B7924D8B3D5319CE6CD7
+:1070700078EF9CED989B7D67F1F2787412FDA75034
+:10708000D61D117499623912978245D8855E7307AF
+:1070900081B82DADEB98EEEFE88B2107E13C5E5314
+:1070A0001F91EE77D0F6400B4837A6CDC75BD88747
+:1070B000D975CEDB255947B7F1BC17C2FB7267BC47
+:1070C000DB512C1D8817D78087FE05B2369F99B9F2
+:1070D000315B1A93FD139DB5C4B7FD65DCB403DBCA
+:1070E0005F9C80ED7EC1090FEBC211BD64F02C07DF
+:1070F000DFFB6787ECF54AB6BC163C64CB2598707D
+:107100003227091D6D2ADD6E617774BDE041CE42E4
+:107110002507949524F328FF5EDB487B2BB4D45ECF
+:10712000F54B82BF1BE042510583F88177FB320F9C
+:10713000C7BF2A0A84E4AB19DFAF3B6B6C5A85EFFB
+:107140001E255969F169CBC8425355ACD070F8EA95
+:10715000342BDC3EC335A789C6DC8EDD6FE0879B10
+:10716000F9202CED7D171E0E2F4BE219A088BB14C1
+:10717000CD450F1A82782EE32E40F11817EF7FA924
+:10718000FAFAFE09D54016A787D613DECD555F3A29
+:10719000F2A8D639A329523846C4FA19EA8EAAE8C9
+:1071A000D68BDBF5D50D43CF6665121BC3E273ECBE
+:1071B0005492F8E45A080BB3BEE8F6D3C3502D75C9
+:1071C000D6D0A227E665FE08BDA7772696087424C8
+:1071D000E501E2F70F00C74F6D604DCE2C274E87BB
+:1071E0007414C4E4217BD09F384B85F3D3C3F1845E
+:1071F00000A2086BEB930A16AB2C914BEB42615249
+:10720000020825597FBAE112CFDED835AA66E8AA6E
+:107210006F55631022AF9482EF41D15401F5FA7794
+:10722000722313EC17F87C2BBCD6FCCB78256CC8EA
+:10723000502A577D682CF749B047EEFCF3A7BF757D
+:107240000127B67B794F53327294FE88244C98AF55
+:10725000E6C99DB3C56BDF29DA79E0A6C49AB5907B
+:1072600025FC54FDD80C0A720E03A8D049EEB64096
+:1072700051F2BAC7659F37846A48021677466C5D3B
+:10728000D7560767A8F1A6ABC1FDE8FE292B27D189
+:107290003633080AA63D37EB0D1B4408D0DDACC3DE
+:1072A00086617A79E935D0530D6FE01EBA80446665
+:1072B00072EA9B472C35DB0700122D1278F8BFAE1F
+:1072C000D4C25727BC456949F0EF5FB8983035F60E
+:1072D000FB7A09FC55A2E1CA1FF724D237B0957991
+:1072E000CE039E32F17C2EB1ECEB60FD78FED1BA7C
+:1072F0003E2ED6B2DAA908FB5EF816E8D20558464B
+:10730000DA3FE979FD08914B52593190B20AB191B7
+:10731000ECF73FBB3CB73A92807CB3F065A51A0608
+:10732000FBDC4155AE581B727104A24BF089F0632F
+:1073300011995D7A67F57DED87D2D395B7CE5EB5AD
+:10734000D9F6C5722585EF2DB1844C997CA054A443
+:10735000CE9995480418914D83ACE73F66520CC412
+:10736000DD49D446E85C950029693C581128A607F8
+:107370004978154F362207FDF840369BBE1509F4B3
+:107380005A5F9D541D20970E350AE068B71AC7BB97
+:107390008F48045E8859BFF394EEA3474C8289F965
+:1073A00010D61740606BCD76384E2C614AF4D8BDAC
+:1073B0009E97E5D9D020F144145F813C2AA45C302B
+:1073C000EBC69179645E3F3297D5355962A7A958CB
+:1073D0007E57BCD9C3A115D1951CC82ADC3862CB15
+:1073E0006B40CA6C5B962E77174B205A15474B396A
+:1073F0002B75586FAF76B15D68FE131A981EDAB020
+:107400006A197933BEA8EDBE9D4DE9093FE02B8294
+:10741000F32AF898CB6A719B58AB2421A3A0A2FA57
+:10742000801133DA615C9BE95B742E2D1713C20A5D
+:1074300076101804ED6B40F3967E804E799BC0CF9A
+:10744000C37F0D996EFDB59ED4CCEB1383A762B9B3
+:10745000417E99E1D4CB7F91E0FADE60F92F41A71C
+:107460000A64A8692FA05711CEE352C45E999B2CE1
+:1074700001C8E3A6AEDF96F3BC1C885C3643C1F4BA
+:10748000FFF0265D29595715E69CAF15E36654B603
+:107490008E89E57C3BB7890D4B69E9CA4EDAFBDF83
+:1074A00034525D5D0BF8683CE2AB34EFC8EB80947E
+:1074B000DFEF92C8FFF18C3D984589716C0DB8875C
+:1074C000A5FF195B6BF036DB78BB748177C4C92DDF
+:1074D0003AA5607B2E02A7B530030167FE9AE92129
+:1074E00065A75FD865958B0E42999947DAFCACCBBE
+:1074F000BE7E782BA7101E75D4C904E5905DE559B2
+:10750000E41D78EF1216D05B3F2BF604864560E44D
+:10751000315622C37B780DCC3B26033BC42F434E10
+:107520009F283438F0065E0E1DCF4593F431A769CD
+:10753000B7A53A8A97C23C12572A22B7F5DA8506D0
+:10754000B57820209456AC1F0F3BC03DF4B246CF17
+:107550000A5FD4515B525AB73E3107AA7C125BFADC
+:107560005811B708E6A8B97FD550A11CAEB9CAE931
+:1075700081681547A1B06E062DF6DE08D1F893D3C9
+:10758000026A5A9AFF6CC4CF1649301F8FF7DA256A
+:10759000D991FDEEFEF37EDFE1A0FFDD3BB2535457
+:1075A0000ADC749D78387247324485B1CD017E88FB
+:1075B000540A254B55AECCDDDB182E846364B153E1
+:1075C0004820A7342F52565F061B184C836E840345
+:1075D0002F03819137F416907C83D19D33A4477695
+:1075E0005043057F4F2F0B0461A948587F176A85C8
+:1075F00070D82E3898516FE60FA2B0E243363BE8C0
+:10760000E07876601A4DFCAFF54633D98FB8EBA21F
+:1076100015B5B2CB82497CFBBFE5223DD3F404D043
+:10762000184CC7376A6CC04B7BC6DD1D3A4CF7B5AA
+:1076300097864E204E355E3B2BE7A78596308E7D94
+:107640000D16B9CD6315F6D6B5B6DAF37DB730CEE3
+:10765000E6E225A13FF74C8C3B2DAC90851A7C4B84
+:107660009F3B6B41BFCB1515D7580717C8A3398966
+:107670000A154F9039931036E98CA810D60B56177F
+:107680007F59C1A579AC1FFA9EDC1CA5690B160EAB
+:107690005533088BECFABA6117559CB0BC68B3E25D
+:1076A000A432EBB57336A69B37AA8AC2B3A54F792D
+:1076B000C3642AC362F119E1FD1476F05D283D0A26
+:1076C000BB8565D0DCE1C2DC56123BFFB632CCFC98
+:1076D000B2B43C481CCAC59F204E33809229F9C4DD
+:1076E000B2220973DAC161E2F29A505EF832402B9D
+:1076F0001EE5CEAB1960E1DBF04D563723CCB9C3A4
+:107700009F37E92ED5E82F98AC0585672C8A6F80C6
+:1077100060792FE237B6882F813BEF8B95C562E900
+:10772000372091072F9D0F04D47401BE62F6658F38
+:107730001D445489C99E816CB8E78E5FCBC725155F
+:1077400090C4AE4070B268D5115A4BC6F8F684FAB0
+:1077500042AAC618DB4B792C73CDFE30047C36A2CE
+:10776000662CBA99F37E9745B2FBE5AAE053FB85F8
+:1077700028E52D4B5ED92253B51E75124F9770D058
+:1077800064B7BE63A0449A95217F8A4DA34EC5B4C9
+:10779000CF4469F6FAF1E5A5994699FA07ABBD5EC3
+:1077A000720230C75A6CF7FEE4D255C380A5049C20
+:1077B000EA2D228AAC1466920FE0AC7236B72285AD
+:1077C000E0628897BED6DD238983B64B66845AD3A0
+:1077D000BA1691FE5929E57958AC22DEF1ACDAEC03
+:1077E000C170BBAFD54B7A47BCD5D55FD502187DEC
+:1077F000F082E0378E074D5ED3BEDBBF273C2E57AD
+:107800008603CADAE33EA531073804BD74E7474C66
+:1078100056EFAC3F4CF091E02272D3978B17616525
+:1078200098CAA3034C448B0975B07F8628594FA191
+:107830009E2880177E9C9771DA3DCECD686DC1E59C
+:1078400069E608E62B4E75EB85585DFCE72E92261F
+:1078500013F01E7D5AF9BBEF6086014D9F2AEA5B4B
+:1078600029B1BFDAFBCED5154D9BBD4FB1F609E866
+:1078700004BBB95261F1FE0268F9CE042F1FF9F37F
+:10788000A139D8C2A37AC87B16F06BA7849E215079
+:10789000B2163C71FEA430F60DB981873DD2B4AB6F
+:1078A000329EF2B3C2B4ECF388D5CFE52661A3E2F1
+:1078B00007AE98B45C0CE59CD201FCE65446A4816A
+:1078C000431146963FBA73BE7646EFF2FCE544C0DC
+:1078D000DB6B2BE32F236EBB8526137383EFFD57E2
+:1078E00021B34447464B304EA5EB2DDA06F0407CE1
+:1078F00041CDBFB287F9E11F0EFA93228F37F9AA63
+:10790000A0433EBCE9A8287278A88A3FC3C1D71D0E
+:107910008933D40F054F6C5C64396FBC86B45B1D32
+:107920001027197552EFA36979892CF78C0182E829
+:107930004738FD494BBD5170A44B622B8FC018F0E6
+:10794000CE3C345606C134F70B3C291BAB21BF1A81
+:10795000F066887386E65DD8868C77C54E212E1E2C
+:1079600022AD43406F33D3D549ED579F69B2974D50
+:10797000B38B3C376735D146471DDE4B2D8B4731E6
+:10798000CFF5EF60772242D51A22384606EEF2EFA5
+:10799000868B85C8F0470F7C6C00D030C712F0B9D9
+:1079A000175D80DFECE3839E65698CCC34E5A1BD77
+:1079B000ECA454C2C33F21631C1219BD30B873D666
+:1079C0004C12AF1114EE798F10CAEF52FAB675F956
+:1079D000D0DB969789915846A7FE4DBC7106F117EA
+:1079E00015A6E35CD5D582DF86A7A5E56C3553FBEC
+:1079F000806BABDA58F3744FFEED65DE168F4F08DF
+:107A00004F5794B084FB374306E2B729CAD9B37EF7
+:107A1000B3691CA72BBDC3135690A192DC771E320D
+:107A2000FB70F01C0301552B597548F854471CA8EE
+:107A300071C5C8CC5AE2089AA98EA324123C4FB251
+:107A40008A3DFE2C3B9169132CA9D58DAF2A38B500
+:107A500048B9FDEF741C911ADED932B930D83A37E3
+:107A6000F52B65D5CF2850E4342889F7FA00D823C0
+:107A70003E28C04D87D4CA29729A07236866DD4222
+:107A800001359AD72658A7D1244307065277698E25
+:107A9000B060F15472EEF903C8BE92182EF41B12B6
+:107AA0001110F0E435273FAE1A7E0BB38679402BD8
+:107AB000C9EAAE451BF480E1ABA6FFB32EF5093D44
+:107AC000B075F8EBBF7E023AD69EC2AE3EC0ABB8F0
+:107AD0009258A685C63B098DF31B8C4B345EA1E5FD
+:107AE000EA3BCCDC4272F57F2209CE0548E86BAC5C
+:107AF0003AC40D545AD659D80DF1F9AC95EBBDE204
+:107B000067860E9C35B1A2C4C1A97830F1E98C20FA
+:107B100042D7E70BE4BC8CA2DCC66A0D0671B6EA5C
+:107B20002D6FCBC5592C16EAB62AC1D871D952DAB5
+:107B3000185E405A05C300EE0D482506A30B15B488
+:107B4000F738340AD8FD4D06084FAAE156385C379D
+:107B500072DC5B675025CCF6D8AFD6B3D8B61641E9
+:107B6000EF2D669767C26F822A95C0EDB25B27BA88
+:107B7000ED8CEAF29E7D1871EAEDE40A037B497010
+:107B8000BA9BD5877BCDF9B330384DFE76D79F07AA
+:107B90008CFF68BDB3793F955D2482D07111FA9551
+:107BA000E73D2D1EABC50DAAA9834E417ADFE9D969
+:107BB0002F0D1719EAB5AA26A002A77933FD31F7D0
+:107BC000D8E126EAAEA33B630E3BD6FE3C92A5BAB3
+:107BD000F9737FC8BAC9EC54091EC8A3CA3906474D
+:107BE0006236D72ED474D582A4D61BC873C557C7A6
+:107BF0005C01ECD52DD745376F0095D79472E4F230
+:107C0000F288120F41275A5203344EAEEDC0DD67A1
+:107C1000EC734600FECEE12BEE73A2DE379259E103
+:107C20000F6E09D186CB635C44B589548CDFB924CF
+:107C3000F1854433C74371601C958E12298DD4257C
+:107C400015164C78EA2A9FD761EC50074383643DB0
+:107C500054F286C55F4215ED3A7E4EF096C956182D
+:107C6000D52186A27FBA700B5FF15DB1DC29D437D4
+:107C70001742EF278FD51A9162D03A46DF693D1738
+:107C8000399742B4052C4C5E7E7FCEE463DB13153E
+:107C90003991D840952DAF1DB5A2ECB0A577E685FA
+:107CA0002D395CCE543AB70EE84CC3614E0F2B779A
+:107CB0000BFBFC303D1277021C7A98E11F61806556
+:107CC000C9F314AD8743F0381A9A8AD29746998D32
+:107CD000561BCE269866E34C251177651A58C44486
+:107CE000FBBB394BB878A5C3FAF6B977EA5C470F06
+:107CF000C77B0F805904B16BCF883EFDF6E54BB2D0
+:107D0000BB8DAB2C38031E336D12CF1E18FCE9BAA5
+:107D10003F761451C254482992E93AEF620023BDDC
+:107D2000034B3EFBA614CB086064FFDADF2CC08E49
+:107D300004A28CDF89BD691B83FBDE35137685A623
+:107D4000B41B9D6214736FD330F09B20E74BD58B2F
+:107D50004CD8D1F7EEEA93701A553FACCBB5799F6A
+:107D60002A8765C03AF58AD935885F8E6F6A54369E
+:107D700008BA5D6303EB173180ADBC3D0A28DC2AED
+:107D80009A0388BAD284DA1087E65052F5D3A72630
+:107D90009DBBAF5096B4A469C128E88285B48C1805
+:107DA000F9341342E218E3E3824F2F4C62E55E237D
+:107DB0008B400D9793DACC3471420D0E8276FEBA69
+:107DC0001ADD7B622E9FD7C3E882F47A19FBA8DB09
+:107DD0002E6D56217ACF8EDFCF285295C69A32D695
+:107DE000CD2523F1B034F7E004B0AE79A5CFD0FDB6
+:107DF000E0CEDDF92EF516BD5E215C46883501A387
+:107E00009C02025D4C3F593F984735C043B664BC65
+:107E10006DDC572158A1198720F391B935756F4F43
+:107E200030591C5D0D07012BE9E2B60071E6F24DF9
+:107E30005528DCE116C702572A5140935CEC561FC7
+:107E400064FFFED647B71E7C9FE4003C2E5AD10E3D
+:107E5000009135F54E9759ED1D937B6CB0DB2A10E0
+:107E600072A34D1487BD4733886BD41E4A916A694B
+:107E70008A5C5F88712949C950490863F8E70B4D4E
+:107E8000FA5DF4A556AA1A4CE1322A3F1E6855B095
+:107E900053244F7FF934081185CCE062ACD118E649
+:107EA00055E2775866846C74D879969A7692598F91
+:107EB000505F4781DD49FC711DB3F7B97BD63C7239
+:107EC000FF9B8B4C773408CD16FE6305DE51FE35E3
+:107ED000175D72E63DD78FC53BF5D5FAFAF0B711BD
+:107EE000C74ADF9EC8B45E814163D45D0814BBC538
+:107EF0001B318220588097C6F6C29F6E5B49994518
+:107F00009C115DED741B4BA1D4693EB570A42B226E
+:107F10002D3C7255957587FD209368A1D4A76FF805
+:107F2000827FEB7717476EC8EDFEAB23496B88AFB6
+:107F30004C6D3D1177CCF394D4F76CA14904E30B5D
+:107F4000E295BE7FD53A17B30F0332BFB9FBB196A6
+:107F500035F7F91FC0F4D8E9EF2B5E340AFECF5A8B
+:107F60004234F0C11336E47BFD80E9B3099E78E723
+:107F70004F6F071C4216AEFE7FF10DDA3CF74891B9
+:107F8000F0C18239B8B2DB479728DC82812D6D952C
+:107F9000903CE396B70E7B17A1F33709B1860D8E9F
+:107FA000C2E797B7D8EB204A75F2412B9095893BF1
+:107FB000FBA7CD29BDE772E300AFD8944CDA837AF2
+:107FC000CC2885CDD2080D54AF74772ADD524218E3
+:107FD0001FD9D0A6CF585B0F84F29E16CF3EE990F2
+:107FE000DC1381172D9FD9D19CA94848BEAAF62F32
+:107FF00098DA070BC99D9CD03A5B94EE64433442F7
+:1080000096D685199F5087A447FD6BC8B6E7C8254B
+:108010002975FAC8B00DB320AF185161DECDA29614
+:108020000ED2DAB6563CD0ACECA60118F6C081CE22
+:10803000501382867902A2E9F99872504AC26857B1
+:108040001869824168E69224C295870D785F16D040
+:10805000159B3E7F8F61438C724AF1E7E697DEAC59
+:10806000DB65841E2C84550C842C88B38FF51E830D
+:1080700004B2CD1FC8F0B757BA7631867EC7240E3A
+:10808000874E5DED61D9FB78A2418FB449440ED291
+:108090005C4B4B92603AE3EF8A2887F5F1121B2E76
+:1080A0003FE651BD302C4CFDDD3C22FB24097456CB
+:1080B00005A1CDD35C739926F61D5967EBB4F07119
+:1080C0003C7A29F39932A37945D7F181C2A8664C4D
+:1080D000BC87BB8AC308D27F8D696385178AEDFE92
+:1080E0006FD86BBF6822F47D527FC68B1038777FC4
+:1080F00006FC36322EA77ED67B94E3D8A28A54752E
+:10810000E1D51C3E318E25DA63824E1FD0A7DD8C6F
+:108110004A174770B5606DD339DD5591B6C70CC7A6
+:10812000CAB6DA59E5E47DA075FD196358B237AFD8
+:108130001479357CA5C176A2689B3803A29C0D8278
+:10814000320C5E798C7431ACB23B04B108904E377E
+:10815000B4D034E4871C69EB06713EF070FE36C380
+:10816000C61742275A31B7CC18F1B5D5C208809648
+:10817000EA6FFA0D49BA28FF4FA6E4D1F564990DCC
+:10818000F4633B26CE1B8934C47C61FE5C886C3F63
+:1081900003775BFE0424BA0A0C2015EDFEC8D857FD
+:1081A0004E81ECC29AFD80DF52B3C38E55EE9D30F6
+:1081B00078B1A683987A58ABE8C2217B4DE68858FF
+:1081C00074950A1A67617C697D1F7292F7057D16A6
+:1081D000F3655064BAC83F46995BA22C0F8C44717A
+:1081E000E5EE7057E87BCAE1D22ABD07FC15A8620C
+:1081F0006D21E4B92D2BD82BE87E8CB0C7272361E5
+:1082000022CD79DFEF477AAB0DFD8771B363AAF119
+:108210004B2C48B2BCE37A2A4D7F88DB436F6ACC93
+:1082200091D7819A0F9AEC71A96E128EF5E7890B9E
+:10823000DA95BFBE7CB32BAAC97EB2069C035D074C
+:108240008AEE05B457DEA694E8E208952F53EDBFF9
+:10825000162CF8C6E995DBF692F837D4146BD67471
+:10826000BA9C5DB2C37A06535AA9D41AFD8EA4747F
+:10827000592DDA675569FBCDAC6C07B2753D66596F
+:1082800068CAEB7F8D81C65358B5DD1A533D8FAB5D
+:10829000DB24F9BDD8176EB290F3D7FF668E8AC380
+:1082A00020947ECE8B6E0A418D537ED06CCECC480E
+:1082B0002D0748BBE2D6B8C4FEB8FEC8EDB8AD4E37
+:1082C0007614422A8DFFB7C06CEBA8A5CDB0E16152
+:1082D0009E62449EE24C0A58A9DAB5797DD8EA122A
+:1082E0007D906CEE2EAF67F239A27F83F3BE2F280C
+:1082F000532F565149B47DAC698AD49C2B398E0BCF
+:108300002A1F60B59A4C050ED4B9EB7FA6E9FEECA6
+:10831000E0B7827963CFF996B3A9F84A05CFB28C5A
+:10832000C878CFE6893485FD4E72E516925CBDF7BC
+:10833000767487D84F1BC9848BAC532A44CF601501
+:10834000B1191FE46712E0E858E5D85EB59897BF09
+:108350007C36482B979290BFBD5804EC851F047D56
+:108360007CC0ABF5E21A6A1B61BE0259D054622A86
+:1083700074D2555B5303C9CCF99BC85D687E98EDF8
+:10838000299C3F23B9FF4A297B7068CE8E8FF5A9BF
+:1083900016B46A7997869514D448176C1C2A40E065
+:1083A00091326FD59589E8C4D6558B12B68E0ACC1A
+:1083B00099FD1303C4F10ADB81BFC1E3AFFEF5846D
+:1083C000F0BD937B7F6584CC87CBC7AEB654377A3C
+:1083D00089F84EB4F36A4A0BFFFA77969551BB576A
+:1083E000D0B7F0A24115EA417FA12BEF5CDD788880
+:1083F000F97E0F95F3AE38CAE09DE73066AF8DD0B9
+:1084000078735C17A3BD880D10078761149417C19A
+:108410006FBE3684C5E4B1923F4B78C296DE74627B
+:108420008FAC4FDDBB536DEEF0FC5927FBE48F6042
+:108430007CE09AB5050934075DBD8EFC88BFAB674B
+:108440007E841575A083A4BC004FF427ED93827A37
+:108450005EACF257805236088925239665636C8995
+:108460004658E7A78801C4026C0BADDBBE4D0EB0C9
+:108470006855F08B841AFB87D0F35F368371575CA5
+:10848000C1A5E1041DA3CDD2A023CE21576D668BDB
+:10849000E395A9EBFF1A321563523EEDA98B68AE46
+:1084A00002855E5C92422DE24FB94F9315DC8848FD
+:1084B00066499D87CAD1069DBF18D5C428906ABC5D
+:1084C000F3A189C07B0665BF732DAE1B8EFE89406C
+:1084D000C49A7CB401CA9C023FD810B2BA892D3E1E
+:1084E0000D2AD6F63E393ED54F0E9B909D399DEC18
+:1084F000FADB27C75AA8421883477F8CA64AE9258A
+:10850000A5FDCB9DC782E69E18A00384149DC85587
+:10851000B8385FA97D6967559059C222F26C59DA63
+:10852000B6EDF72457FC9CAB98499637C9C1824BEE
+:1085300092B845D4A60F85A0565E602B64E9629B75
+:108540009A334F4B3AA634D21BA983904F23AD43A5
+:1085500069107A6118F783C8BCD61D1E4B56819BE3
+:108560008BA8FFF195D77C3E63A9D525F3A89CD1B4
+:1085700078E9CCA53EC020B737DFD650D555C9A97C
+:10858000BF706AA79790294FE8DB22D808EE768162
+:108590000F3BFF7C8DA96D7E8469F874D0D8155A85
+:1085A0004029C65DB9F14F56CEDD87E04AEA49332E
+:1085B000E3C7849E4FEE5B34F635869011BE15F608
+:1085C0002F52A6D12748B8FFA3BD7A6780A92A13E6
+:1085D00098F2E68767E63D6542B221F321DEFCF7BB
+:1085E000D44EF271B916BAC7422B8B2B0D4C6BE1EE
+:1085F00072E1E3806BA23F9C2912F1F5EA1E83979A
+:10860000C53A2941E010ABE48D5E2669E0B51BDE7A
+:10861000BA7ACAE052A9CCBD1BCB18A05330B04DDA
+:108620002983EC4D2BF42F341A2862CA01C5CD42A0
+:108630005A61231C2907243D9DB7EE3A0656874B05
+:108640004FC44DB25F7AEF055F41AB5880C9242516
+:1086500021F76DB15A1B637402E20EB43E6C2F3CDD
+:108660009C2307154CD1A2B60756A52CDE30817C81
+:10867000EAF5E09949D35EE6241CA2432B0B6AE598
+:108680009FD0AC8D205E82B63BFF50923C91A0699A
+:10869000599130D77C042B608FD5E96AF8CFD40B81
+:1086A00006A6C2995D08ADFC170FF9FA633494432E
+:1086B000199C3F1CCD979355DEE248D959F8006DBF
+:1086C0008F923BA310D8D41E7D19EC7B7420D780E9
+:1086D000D3EAB30608BAC42576BC4631F4301FC4C9
+:1086E00093EEA40529EED582DEEE18BA95EDEDB332
+:1086F0002772D65EBCD0F39A8700AD758407C3C4D9
+:10870000AC42DBD17A1BBD47E414B09AAF8BE8547E
+:10871000DBE97677659E0CDAA856BDA01BA025FB89
+:108720005DBDE2A606C1D1242B63FA56DE6E999A8E
+:108730000FD17022678720E6DD54AAB88A68B9D1C4
+:10874000C1C210E336008D98AED3C2ECD37A23E3D6
+:10875000CFD7556D358A42B11A13532FE2D5A723CF
+:1087600068048036C74D0F337F1B6A6B898A858505
+:10877000C2FE8C6F5F2560E67135FA47B78DF04D0C
+:10878000A22F8625B70CA27B9CA9BC5D3D6F0D6C0A
+:10879000724444D7451D246D5E448240A968A1CF30
+:1087A0007731919D6D0F4A6C60C03630C1C8160D8F
+:1087B0007A0BC275CC039DE31F2A196D8D341BAF54
+:1087C0009D54A411029FD4D98AA7D4BCD4436982F2
+:1087D0002955CE9C4C556C27DD8B6BB888210845FC
+:1087E000ACE141CEB952DEF88E477123E09E8FF89E
+:1087F00089A61D94551D74EF3055E79900ED3EADE7
+:10880000954E9BDF2561B25CAA221415CAC8CF8A97
+:108810007CA8AD0EF94AB4417D2C0E9A8FF1ED592A
+:10882000B7F7DC7A59C385350D58E4C4E7E8FBA8EF
+:108830001D6682C2E565D7A85BB4659104482B58D4
+:108840008786CFFEEA02096BF199EAAA7561D5A184
+:10885000C969E5C0E8554A34C924319891BC8DC82E
+:10886000AD74E735F1E107088DD5C5312A5728E504
+:108870000465318103286DD403506432D8737B853D
+:10888000880EA8A00D8460E2DF03DE3856B7A45935
+:108890005032759B395DEF12B0333D2E4860F8CAF7
+:1088A000B39139DC846ABD41CA2381D64D88AEB705
+:1088B00042D46E33E89E7231ED64F41555BC96DFF8
+:1088C0006BE69FA9C60935D2EAEDCDBBCDC2F873E0
+:1088D00029F0CA1A7797599A64F2A310B43EAF737D
+:1088E000C9BA7C775BBECA64B9B69F9CA1C7EE0DBE
+:1088F0004336D7629708D7B42C89453B2E1F04C056
+:108900008202786C4112AD9383494E5EB975ADB960
+:108910007A7D4BDB7A391A033357F316E6447E230C
+:10892000710E4AAC29E918FEA08FBF38A8938B536B
+:1089300003283D2418E7D4019BDFD15DC57DC88E97
+:10894000EC0D0AF70007CF4D67B3340D8329F7F418
+:10895000958A75A49B9278D7DB9604999182886852
+:10896000388FE1E39FD61F2B785A42ABEA63249BF2
+:10897000E04F9871CAB53117A8695B3BE451780C98
+:10898000752D4355DD72EB2CD53709ED14C4150553
+:10899000CEEA2730990B519C8B348BC777C4DD818D
+:1089A000DF2D96C47667D9C9F5B7234A753D68B0FF
+:1089B0000D2A44938E1A06AB5670BFF65556D9A2AF
+:1089C000667DA269104CBAAD43AB8BACF6CAC593B9
+:1089D000760DADA0A21E61B24FB15A53FA2BC84713
+:1089E0002F88C580069A7E57165772C18A948204D2
+:1089F00013C5096C145695733626438789CF9E1686
+:108A00000C399A76CCBC1AEDB3310851B181D90B2F
+:108A10007C56AB2AA0E8F85927F8DF469C1880DE80
+:108A200021EA13092468D0EAEBFF379E50079E68BD
+:108A300029A6F03CEE8EB6E3CA69A61D6953839C55
+:108A400087D507143206537DC7896D4F74C5ADF0C5
+:108A50001ACCB469EF9E8341C770309CFE066AD081
+:108A6000E707718F1D89707E51BEA9C7B023774E6D
+:108A7000347610636CF05A3450B63B50B3C20D706C
+:108A8000C0E7397559BBD143B02A5B0259F61B14B4
+:108A9000F2A806D2C47DD9347098052E076489B631
+:108AA00058EBEC492F8EEBFCA601AD6DD2E54F9B48
+:108AB00077D02968567686487930D77A9C658E5665
+:108AC00083D332D4FCE20E0A869D4625D3FC3EE2D7
+:108AD0006868ADAC7F6F23E46BA47C4DA17A9C2EBB
+:108AE0007DE4D960C77A53809A76C62C57ED6E0B19
+:108AF0007F47C322287FB26CD03F76B8F1B5DCFB4C
+:108B0000B875DAA8F1FD7C32DCA9554750B2C21025
+:108B1000EAE9F67394581B3A2C9A8B75B62B4BB135
+:108B20004342DFB6A2600114154A1985E6680AF9C6
+:108B300000D4615F05C340D2EC813540B069D58A6D
+:108B400025691EE4595D45E2E2778F045700CC1495
+:108B5000455AB12D6D739342A1CADDF8780F1D39C6
+:108B6000F6DD08C7BEE1F30AC8B1F8709C4924F7E6
+:108B70005EF2B1261FA5978BAD0683355AEE5D6870
+:108B800073C5AAEBCE7B762EEC35F356077AADF2A1
+:108B9000E9C6FEF152FFEC987C55D436A1F5968DCE
+:108BA000D60A83F7DD0017ACB46D1EB9E19C92B014
+:108BB000E518196800CF0F8828F186197DB31ECEFD
+:108BC000576901635B05F06641E29BAABC83E72D10
+:108BD0008C3D32EC2590D0261AC000CE0274701065
+:108BE0009BEB9288E10A21152AB112E604392DA3E4
+:108BF0003D4D16C9FEEBBCF25A68E77C1CB8D206A4
+:108C0000C6BBD895581991FDB3718A87798F9C0B93
+:108C100034C9186F68A3F0EC29A3EF3A7528D1A5E1
+:108C20005EF2FE047D252A103F1711776B882DB266
+:108C3000FF9FA21A1F7461D3C5F5FBBCAAEB8FB4CA
+:108C4000464ECC03BE125C9CCAE166B01F4147EFA2
+:108C5000C5988C6E697900775AD72F0F53D64BD5AC
+:108C6000B935A602F1CFAC9806B6CE7D910C841929
+:108C70004CD37016575EE7A61C237F7125394A7EB8
+:108C8000047B498389BEC443932B0A4A03ED5149AF
+:108C90009C6BCF695C9B2047B70ABCC6ED4E26ADE6
+:108CA0002E6118B33A80C053B94E3F383E18B4D73E
+:108CB0009A8048C4F1439EEE63D93B175B90E6036C
+:108CC000C0EB85F087890C4C2F485AC34E0544945D
+:108CD000CA48730D06346FA1000625A62292C9B6B4
+:108CE00060DD852FFD6C6429317EA97001D2EA8C8C
+:108CF0003D4E56663D03165FB98DEAA277D4BB8020
+:108D00000C706EB68F26D4EC49AF8FC24855F4571D
+:108D10009D12D508B5347C023A1F3E326DD8A99811
+:108D2000EABD320FC41280BDF6B130C6107447B62A
+:108D3000B00F6F50E29A03C7F312457AF6D9326743
+:108D400083822ADF5BA2206BFAEA70FA2DE707F331
+:108D5000531C3CDA421F9E56EF29DA175B8F844181
+:108D600037E08BFD3BF19514B043E9FCAD535FF167
+:108D70003E42C4D54106109319CEA6B98E89BEA92C
+:108D80008F184D948CEC861C10453D0A05E54F2547
+:108D90003D460043B8E075F6A4467BE9314384685C
+:108DA0004FBAAED8204712521861F7E2CBE76518E8
+:108DB000E7D2289FDD0CE1DAED0ABFD4F45E418EE4
+:108DC000EE6C214677D3489783B504D01D66DE87C5
+:108DD000CAD58B403C4AC86892F8822332A38ACC19
+:108DE0007727AD1D72D4C5F5BC5260B85341C00899
+:108DF000F3F8ED65DFD4E5CC074C8016AD313AF9D8
+:108E000012ADC802D4AC704E79A028CC985F0B3755
+:108E10008D468B910266C5729DC498F7991C448C4F
+:108E2000CCC6EB384B37427F6DD40BFEFD3FD18E65
+:108E3000C2CBF2A1BF8FD598A7B221F92F4F457CA5
+:108E400015A086C473551F047D72525C4B083C9C70
+:108E500022AB8CD70347C2651F33ABDA88D2297B9C
+:108E60000E196D4BFAB6C9856551527172C77855A6
+:108E70006CEB345F71F2C2E26DB378CB7CDADA5E10
+:108E8000344851F9C0241418CEE381CD3EF2B971B3
+:108E9000E94AA9EF31643882D2FDC04FDA71252C3E
+:108EA000089804C3B5292AD518FEF3CF08A32F9537
+:108EB000DDA4616933C15ABB86043CF50D1BA4884F
+:108EC00082B89C4D58EF764262154EE33264EAC890
+:108ED000B924C23A579C186099BDA4D3C3477222E3
+:108EE000289B4E9EFD4CB36E3999A951ACF7D8FB27
+:108EF000BDC750C768DA795C92F7F61E43FC8B2534
+:108F0000B3BCCB5B07D9450634444CE796954AF58C
+:108F1000DF2ECE97542A07690E8931B92298EB17B4
+:108F200087C7E7A2C9ABDC9FFDDAC605A4B6F46B20
+:108F300022C89C0BE5FAF0B696BD46C5DC9B6C6971
+:108F4000CF15FAAECBB32CF0F431D0EC822BA1D8F4
+:108F500032636E7053863F01E542F0DEF9E4AA52B7
+:108F6000264B824BD6989A2EE0551052C33739863D
+:108F7000BC448F8A89CCF526A66CD583F1CE97DDCB
+:108F8000DDB4E8DCF6222D89A22706CEC3E3816D8D
+:108F90006C18BE2710B472578CCDBB3C7D07177E72
+:108FA0007715EF9BF7615D11EA5768CF712CDC9262
+:108FB000735B9CDDEBD0C8055085C25ECD2DA673DA
+:108FC000E9049FA186BD300E8CE4A2FAABE914FC43
+:108FD000BCB6D3826FD8517EC225BDB43152E27681
+:108FE0002953CC3E1EB81C76765DF95C20AAE6CAF1
+:108FF0008075CF0DA7B18C2322E494D36116CE23C4
+:109000008B76020E2C822EA6F9DFDFC37C7CD06823
+:1090100025942178BF1015F045938FCF77A4E97D73
+:1090200062535DA8B7B1971173F226301410C4DFF4
+:109030008ECC4115EFA517100FC7EC4CC6EA36824F
+:1090400068BE13C78F65FEB37D15F853740EAAA8CA
+:1090500058BFDB134A367D67DAEE43CE9387A54BC4
+:10906000E76347B1A77F5A4D73F3ABF47AB60E7638
+:109070001D63C325D35277FA7E94FE133242A5C2F4
+:1090800021F687CB6696911E67BE48873D516D22BB
+:10909000BED5DEE384869FC79744AF1781072F793B
+:1090A00074FF221EF7A920329B9E1F732BBB1EF755
+:1090B000924EE7E1229F54D95852DAC7C44803269A
+:1090C000A3013E8ED11A4F542368318A6A38B6A75D
+:1090D00088AEA3993AB9C209E9A4ECAB0F3C99490F
+:1090E00023E72DBDC0C2DDA469159CFE773C07EDCA
+:1090F000EF9E698EB4011B475603A698120FE693A4
+:109100001D40042E600304112C3FBE117C4EB02F75
+:10911000D10EE79C3882B2C3F8437815E2C2E672FA
+:109120007C6947EBCD95096B0216B00A1BFA7AA150
+:10913000EBE422709FC41DD5AE6C90926842234729
+:10914000F7C786C1D295BF43FF6390ECC2C51964CF
+:10915000250C21AA6AC8B160C5518328960B8C31B1
+:10916000E29C4655197232B25C440586C514B4C9F6
+:10917000107920DD8C70C1859636CF536348BC03CF
+:10918000433A87E21680DF52F1BFAC341A641E0105
+:1091900028D033FCB0CB989566F446616E7676CADB
+:1091A000A1C92889900ABA39C625539013B0216CF9
+:1091B00023FE6964B298557ACAEABAFC4AD5AE76FB
+:1091C000042323788C7250EC0E8BC69A0F198E0EE6
+:1091D00022EE61816FD4275645568A84F09571AB93
+:1091E000764E9AC398231108B78510FC4A31F25D78
+:1091F0003FBE84A8C43C866BBC9CE09C3907355DAF
+:109200000BCA3849320785B9BC73C7D237098DFEFE
+:1092100045B6CD67596F58AD7FAE84E81275778338
+:1092200039714A6676DFC8605861D42672364CCCF4
+:10923000A7DA9FE523B1CF61ECE6ED5C907C127874
+:109240005C26079F0F13F39850A8303FE533F68B49
+:10925000D0256B4F3C9C8E61E00AB447108A7B9509
+:10926000F9C854C830200D7E2B692D0DE3740126FA
+:10927000113BAA3FA69A7A0724C926287A75EE09D7
+:10928000FFD3853350CA16C0FB9FD4053FD0CEBE56
+:1092900061AEDE9F8F097281B569F7E9584074EBC2
+:1092A00025782ED3D08C28E4E92E956C45E7BDB9FE
+:1092B000733A8501B18BC5FACDFC9F7F0AC2EA9D46
+:1092C0006F30ACC5C72840245F195AC9864D7F2628
+:1092D0008799A11DB6E8FCD64DFEAD55D7C968A249
+:1092E0007BC95B2C4C54D7479DAEFB5B95294079DD
+:1092F000B934219030182C484210A66395D07AE5F5
+:10930000CBDEF350ADF6F05F5D8B69679D04C0DF87
+:10931000A382512B36E84704364290F8B6BF4E8FF1
+:10932000807A44CFE3CEDF61843FC3164987579AE2
+:10933000CD0061CEBB5A27E1A08901434C294D578E
+:10934000A2DFF1515CBA884BD67F89216DD7D25903
+:109350005861F3BA32F3C1AC0CB9F239D40DBF661F
+:10936000B1903B6784121B835871BA305E50850FF1
+:1093700072B9A917B03F1D8DC251E5A1CC6BB020C9
+:10938000091590D354FB27D4D43F71D90DF4CFF0F5
+:1093900046CBEF48B9DAFAC43C1D7E408E41130338
+:1093A000D70AC74159186A65F7840E1EF244189F00
+:1093B000B4833AFA92ADDEC9AFA87965FA8E01F3AB
+:1093C000DE1A5FF898319DC74CD1355BB29AF8D35D
+:1093D000C2D54E2C444137E282C93E979823C85AE1
+:1093E000ADB06ADE6DD93E415AA9CC286AF42E1A76
+:1093F00032DC5A9A15E61AAD9446F1909541FA87F7
+:1094000090329866EF2F021EA29D7854BBAA7AD4A0
+:109410009676E2DC069AD4E10B1FD01E1D3080BB8D
+:109420002C3BF9DE7760D01E7F169BE87566DF6007
+:10943000B1921286CCEA0D9B7B483052E695F14EF4
+:1094400042C51FE26C3848D962F9B3590ECA1A7581
+:10945000B671B311EA18B0CB905C43727064A3DDAF
+:10946000D502A5BAB6595E20F25B9DBBC53A17C8B6
+:10947000C55E19A3BD73A3B1384323D80596E6E7AB
+:10948000A579C05B4B9ABAEE7D8CD6FEF11BAD8EF2
+:10949000738C22E60DE73DA134A7136765C92E1C26
+:1094A000E7ABDEA46D426011D325F8BEC05D3FCCB2
+:1094B0003E30C629582CC2881CB14BD7C98122190D
+:1094C0005CE7115C1AD5498296947CF1AFF3C84FE2
+:1094D0003AF85C42369A0554609305399487944B68
+:1094E000FA10D0AA9F7B2E133B256581F867BF5ADF
+:1094F000A991BD6C3CA5B9FEA2F0681B0100ACB8F7
+:109500002379848AAF57CEEAE1FC97F65D1E3BE3F0
+:109510005CF83C8DFE75D5D79DFEBC0C0E87D5CB77
+:10952000D6D30115F5B364B79DE6A02CE8ADEB0BDF
+:10953000FC044D832523B24CFF9613E12C5D76513C
+:1095400075E7CE0A14D5DDCB5EE9C649E1AF9ECD05
+:109550005E51ADF0444593F9D9B1B131F69909772F
+:10956000F6EAB97C5307C74D3D803006686D00B9F7
+:109570007302F491F5FCF57577F35DFF3B148700FA
+:109580006E9B9717742D012CC316E3392B29FDE927
+:10959000DC91D61050D81E169F1BC019EC7147CF16
+:1095A00062D57844F874AF2038A500802F1FE7A05B
+:1095B000FA78C2054CA3228F41006F58C0ED1C4FB2
+:1095C0003EB74A459B2F5254D030AA10BBB94BAE80
+:1095D000427196733F5ED0F431B5FE68D8B5054A46
+:1095E000F1D23E910DD69E807A3AFBE12FF3A39003
+:1095F000F5AAD64302F4FA370AD5F4BC5EF9CE4791
+:109600003388AAD03627E968791B3B7817205A920D
+:10961000FE54A44BC14C27D00FC3435797D91548CC
+:1096200043F085B7AD423F93ACC73A2F368C68AC58
+:109630006119EA5A76BCA78DADFB230DECAC8D8287
+:1096400082CF24FAE1792EEC1F568D6DCD45FB5764
+:1096500040607415A40C98B6114CF722E3183E0133
+:10966000E73EC55BEBA538DB7B3BF631A24CDE3F2A
+:109670003DAEC2361BCF647F8EABBAA5D75B92DC02
+:109680007E3DCF5166CBE79D4EFA17133A651B52CC
+:10969000CF33C9EA41533507745A222BE7B7D16A51
+:1096A00033885233D38B5AFBFCDE68E38F61E413BB
+:1096B00030C0265DE5316C162DBE82B929AED21FB1
+:1096C00074354030DFDF78C7B457F916447F9C4EBD
+:1096D0003C7667A9B1742F4A3614F83255FDAC17A1
+:1096E000F099E86A3CEAF0742833C85AA45116533A
+:1096F000E81C4B65DF892F61962DD8A58662A8CF1F
+:10970000C21C98E4BA021088B15174D2DB517A437A
+:10971000CB3A00952B85E5BE9DAB64E56A9B484D31
+:10972000398D572C9BF97E65D4BE035D7967F3793B
+:10973000400C36565EADF3F595511607347AC1E20A
+:10974000419C1DBE94E63423479D5C8F63657D4735
+:109750000D086CAEE5119FFBDADF3980EF5F8F6596
+:109760007322340BAC031F5A076AEB89406A6B38CB
+:109770007726FF92DDED780329113213AB8A9EB96B
+:10978000D52CEE180B7F686F1DE3E230A7420CD496
+:1097900084CD503E4130E8E68D4940D12592D557E1
+:1097A000DE3E8669266E37DEFA752355101DBD171D
+:1097B0007A8B82F0410AF1CB4A4CADD890CF17FD9D
+:1097C000F157058DFD44691865AFB912699BB483E3
+:1097D000F9350D3BBFD5A8B82147E6A1AAFFA9C41A
+:1097E000DFC5A78D3BE81E9297A6B05E4720C13E1D
+:1097F000F77650FC2C4D349C19F38957D7CC006C6C
+:10980000AA5D7BCCA12D68D6254C7529EB1DAD0238
+:1098100044D92B9E70460DB0F7E90706989104A233
+:10982000942B36E1FAFCA2769CBFD85F9E7785D751
+:10983000325AE8AEEEB2E081BAA6AE6D94B106043B
+:109840006E0D4CECCF7DF699C64CC9CB0127434E2B
+:1098500090810D42E7C1232A1A893E5ED4B959F797
+:109860004D512AD64416334184532B7C9F7D4E8B19
+:10987000AF5F5F77D86A9CED3E0549A6DAAA274A12
+:1098800064CC42059B0EBE8A765DB369C0B7912554
+:10989000DACD7D20FC52EADE726D89E26CCADC46CC
+:1098A000D372A599ED31C9C55685795A14DD38555D
+:1098B0009396E385908DABE5AAF46C58D35D1916A9
+:1098C000772C4D9D42343B7C054D33E72F7744D0B8
+:1098D0009291B89F6359C084C3A18FB272C3AD4443
+:1098E0005B4DE0782D9BF88A09CEF39B7AD25250DB
+:1098F00011E5C22058077F5E8C0D9A79D7D242BD00
+:109900007E5DCB717DB7F455B069B3A6269595D829
+:10991000E3E43AA9C542C8C930953A01BFA5AC8471
+:109920002150694478A410591F59F668C932B59579
+:10993000498AC2A41884AB3AED9E297FCAF11A2F36
+:10994000853D1DEC65D6C265DAD4BE7F7EB38AC183
+:109950006C13B47C2CA442B2014E6545EF155E2A0F
+:109960008FBB86735C90CACC647262625DF39B7D30
+:109970009CCF8B29E7EF7D3CF492C48BEB34DECA9D
+:109980003FB9A9C59C45C1C9A294179CB2BA970F0B
+:1099900085208F67C4E28E0283601F92F47B162BB2
+:1099A000FA65619C11EB8A51EF10B8C08121AE9C21
+:1099B00083FA61496AF919C9B5B7D782D455EB6EF4
+:1099C00063AEB2192D4B2CDDAE71AB88CC40C039E3
+:1099D0005D41BBF9A2C3A2B7E3C9CC9574059B67EF
+:1099E00061403F8AA5133FA0042D0BD8E81324F84B
+:1099F000E94B1824BC858ABE464BA6EA300F5C0BA7
+:109A00007091CF4DB31927F534C93239364F104B09
+:109A10002948C37F019FE225DCE8110CF12B4DF7AB
+:109A20006AFCD7C737AC38EE71461EF89EFF8C43F0
+:109A300077FDC0C2FEA521C8679566C86C3BBF7C98
+:109A4000656451344F925F274F102CC937AD96DCB7
+:109A5000870DC5A5B8532E8EC6E2B8C907D0A35747
+:109A600049A01D2DBAFF922282DC856B702D829158
+:109A70004485FA91941CA440B248B91AB50E4353D8
+:109A8000D13ABB1D628BC3F3BDB343B14186C65E01
+:109A900038E8102E3DD3F50CAED353E02D0988FAEB
+:109AA000E46AA7845DFC351538D07DEA56FF3C0C8E
+:109AB000262AF80C777769E96A826B8AA1CC24712F
+:109AC0005C29E34F3EF6BD090E91935AA07A0486B5
+:109AD0003916EF2C921747B56217C9FE7DEC58F77F
+:109AE000A70848CA253288A41FFADE729CD15EC935
+:109AF00066285FB4BA014F785B039C8C58C28AEF2A
+:109B00003754C0D0C0D2F2E35EA626660F373104C8
+:109B1000711FB016E447FE8C8FCC5365FF812D87F3
+:109B2000FDA69928EC028F694CD8E5CA4B6053CC4E
+:109B30001954C983F2AF2B91B059072DB02C6E3C4C
+:109B40005C3B5F4F53C9E7AD32A07CF178715E2872
+:109B50000808B6D32F18BE8A098FDA6C18BEBC313C
+:109B6000C6F4116DAAEE4FE4B1AF7E090D456BF25C
+:109B70008C760A5B48DF8DDB787359D543E1B70CEF
+:109B800032F81CEB5C988CC91A58658EFB8B5F3AD7
+:109B9000A954486DE3E4A39DDEEEFD88852573C8D6
+:109BA000707AEC5BBFC07D51C407CC2436FF1845EA
+:109BB00043577196E3312DF1A802E791D39ED91650
+:109BC000B9907C65FDDFA569EF6DA47B2FBB915A31
+:109BD0007CD5435763BA3CA094C280F077E01AF07A
+:109BE000E5C6C894217C632B447209D10930AC5678
+:109BF0003B30F838019E5380DF2A6CB34C708435BB
+:109C0000B40524E58516F19508201E06B1C5278CFC
+:109C10009F8755B49F78C110BD8544764D8B015404
+:109C2000B06383FD21B8F5FA33786916C03787D55C
+:109C30001AED406EDFD8A76B048455C3990373E90E
+:109C4000F5F4B62501A9814956AE8B66B84BEAF109
+:109C50006D735DD7E470D3F7744A9FFE94E21CD510
+:109C6000A5B2E6D70D88481208F3D914FE4981CF72
+:109C7000F233ACE9360AA87A566026F439175DAD9E
+:109C8000D216B7A46DBC050D8AB6F83471FADC188B
+:109C900056D8F1A485B42866B46B2F1F84D3C5CDE4
+:109CA000C6946811D85A1597DF482C3CEF17C3812A
+:109CB00002F66C752460DF2CB5B173559AA93D1579
+:109CC000D82379EF96BE1200A978521C576F235AF9
+:109CD000BF91BE7365FC6AA47A2698047880BE9111
+:109CE000280ED4A5C95479F94E61CB21DC3E84D924
+:109CF000213C2E898D228A174F68D55D4F4435A8A7
+:109D0000BEECE2421DF81A90E4B328FA4FB537CD05
+:109D1000C65CC9ED5C1683035DC5EFBA72A165250B
+:109D2000EC5087B32F7C53FA513CEDCF2812B593FA
+:109D3000758558E72A0928454371BA4003736D2297
+:109D4000B771548B82DA85904F149FEAFB904EA72F
+:109D5000F47F0DD98106AF73A75E555E0C75E8B32D
+:109D600086DED395A0BA22F574E20D4BA5B3ECB50F
+:109D70005B89569759599D8E52A61CC00EF5E21468
+:109D80004F59193FAE3CE3CAA3B31494A34F9C08A8
+:109D9000E42174A6BE6E9512660622D536B3F199FB
+:109DA000D8CF88C41834D85B59B2071E6A4C95CDF9
+:109DB00050CBF5A02E434BA3AABBF3E83A6CD1DA03
+:109DC000B5A414EA16F60AFBE2C3BC6315999A1B04
+:109DD00009FDBC8CB0F6CFC993ABEEBB03C9E74914
+:109DE000AB9126BCCEC4868E98B02C86A03CE6698A
+:109DF00093D3AA70C0A0F6A0E5CC6645FD5D6E6267
+:109E0000CBE26F9FEC565E2A3111412A4CB6CE153B
+:109E10002AAA8BBAC4F850BDE83565C1968F09CF20
+:109E2000069733153380234680420440B5637C1B7C
+:109E3000F2E8EA3D0DAA254E60DA3E798F75C474CA
+:109E4000B3D5EB17CCA63C78F19BC2D8CF32C0B3C8
+:109E5000400DB58165B562792C581B6C3C3A4B9C22
+:109E6000DE30EC71F8FABBA99ACE3AAD417DF30031
+:109E7000AEF710EA336D29EB0B97BC8BA8E5E6F142
+:109E8000A21E8A2018CF04FF451A670BF06CCD92F2
+:109E9000D09366498CB736360E75AEE7C31B049473
+:109EA000D4C7BA6020B5C129ABB760E3A541BD10E6
+:109EB000C38742DB6326DA0F211BC416F3F304AE1B
+:109EC00039C9F851D212E1F721976E306CB4636250
+:109ED000A1CA18E39D186E2FC0FD5684EBF46FE7FE
+:109EE0008986A0BC9B23F3E4C42A783A9E022F28DB
+:109EF000A0832146F504D05C53990340AF575BCE55
+:109F0000C6072DA1219F17F9573ABB644D199279C5
+:109F1000A620EFF6E4DFA766C1CFFA3617DF5A6650
+:109F2000105BDC830761CABB483B540414916BBCD3
+:109F30009E6042FD73E5F3F5FD75B54AEA3A2CB033
+:109F4000C55695E2D52B12E7F0AFF28B05ED3B69D4
+:109F5000214CBB29840B45CD2FBE985733F5010EFC
+:109F6000EBC0B5884115540FE375054A8C4F01CC01
+:109F700093CB54D645BFC341D3E6C76A8D11E3796D
+:109F8000B5F489682D7CAC6083DD0858AC404E7A0E
+:109F90003BC99F78DF8376CF3969D177062203B931
+:109FA000710B16E82D0CA0B889E50DC92DEAA1DCCE
+:109FB000CC4E1576A4EF923A3F5E76709CFD5F4AD8
+:109FC000DFA03D731AB6FBF1BE81E7149066C74E61
+:109FD0006BD8BC8DC89C74D8A73F7253DCEA3B0C8D
+:109FE00046AE41604E13E20C1F57EA82A5862465F7
+:109FF00034A0E8E2D773CA4B8DF440DE7F3B0CEB14
+:10A00000273EB9737EC040A2A5391C4512B472B474
+:10A01000CB5CF890B050A1CE79904697379234EA55
+:10A020008FA02ACA5E6F34324BE55CF0E666F124FD
+:10A03000BDF913750278C642D57722EDCB18E52617
+:10A04000A7FF05BD7892B3C6B181A0B14A480BB253
+:10A05000CDC19C05813D215BC392297E24F64D7BB9
+:10A060004C0459B9EB52BE207F4FEACCF4AD2CFE24
+:10A0700084A9E9E16824C46EDF5DBD6C2B68187BA0
+:10A08000D62FBD6593163D69B91E3FBBF1EBFE7E31
+:10A090002AA22764107FAAE509C1EC3A50D1B0DDAD
+:10A0A00008222371A994CDE36D27177A8C47D3FC3E
+:10A0B0004C06278D8FF5DC222AA1A1641962C1D636
+:10A0C0008CED450FC07418112653C8927A03C81737
+:10A0D000119CA0CC928685B58D87576FB58163148E
+:10A0E000C579EE486AF02CD00E5F825F276499979D
+:10A0F000A206C054E7B71E40A7A7D4F2277172C1C9
+:10A100003B1867A00F5549E7D3FDBE66687F74B75B
+:10A11000DF923800D00A9D81C742873A35C97A94C8
+:10A1200011709A1EEBEFE373C0157E2E8EC84BA5FF
+:10A130006805587F82D3102DC869D765A5F0B5BDD5
+:10A14000957ADE06D1383825BCF98AB94CD7513416
+:10A150001A90431DA84F2EE2DADADF590F4C144152
+:10A16000272F5EBABC540BD14781375C87F3D3608D
+:10A1700024133076C2D3259C4DDBECF433BC9AC754
+:10A1800094BBAC6C1CCC61E5C7E9F6267E7637FF44
+:10A19000ED184DA95F3100F7C19CF11BAAA5786F9E
+:10A1A00073FBBD00EA6809B28E3D990DCD86DD5086
+:10A1B00093A0AB1C549C0557572017F86A6775C3CA
+:10A1C0005B9C8A0326BACEF8A1F70C1828076F17F4
+:10A1D0003900DEB4EBDA9332ED3AA2A5B2B8CF473C
+:10A1E0006192511355CBB84F905D946CC4F5D44037
+:10A1F00051B1D5738D2E952CCC7A21C70FB4E25A6C
+:10A20000D5B2A44B7CE41FEECA42781B98DA7D0AD3
+:10A210003F1F7050D49FFA611B764B46FC1145805E
+:10A220005A398A36B1DC5731C979A8B37AF306BAFC
+:10A2300090CBB47CE4CC6CC096E3A31914717B265C
+:10A24000DE3D610EEE89E56BB0ED547FBD21A44784
+:10A25000B0B5D86FDD4D9160D4FDBDC0F38918BB9A
+:10A26000B651F801D179F4BEFD3301C4DF117D256B
+:10A270002F838487805FC141AA167B4D421BD7C8BC
+:10A28000A13BE0D8D5131A71765A39D963801C6383
+:10A2900083C0018431A8E2FD2B3D837788751B05BF
+:10A2A000D24C923C4891D41206347B5B1C886506E4
+:10A2B0002DE70FF3B346781A2B78164D148E9FAA0C
+:10A2C000CB1D5ADD6E8AF8541BCAE261509B1DF902
+:10A2D000F06A650BD8EEE55595696A80772E74F8BB
+:10A2E000BDB00929281B04F5370E0E8271CEB2E3EA
+:10A2F000B1E40D3A041F8484E409F6771609DCF909
+:10A300006D7CD5AF7766CB1CF02E1A931EE5C0D3BB
+:10A31000839DE64C88A576C79D2332B8046619BF95
+:10A32000DE0A146CF5FE3D7E346D955E6C984B0E26
+:10A330001F4BBE151CE84703421ABABA5F26E989CB
+:10A340008D70639ABF686A7382D3CC27425D7B9A13
+:10A3500004D0141EB1C39C75857BE1265286519DA5
+:10A36000F05A4F12CE11B028217F1C0E183EA75173
+:10A37000959A940EAD60E683A871F3CD410A2A1434
+:10A38000E9AFD227E93BB198209D16B9E51A4106FD
+:10A39000F237772A38E7E55C3110C8CC25572165BC
+:10A3A000F907B4EEBE7F799C2EA43368A1F3318403
+:10A3B000E792A0CBBD42E27E51540C7A66BB09ED18
+:10A3C0008BC4B3F751B5E6343A6E06AF33109C6DCB
+:10A3D0009EF5B180A9AD57418DF03ED4B1E6CCD405
+:10A3E000E4F8878675A91C02DCA24753348DC8990E
+:10A3F00044B7531009480174F1140D61040381C876
+:10A4000088A9B4EA87253EA82DA5D93A7D29431409
+:10A41000C512EE9E9AEB498B92C67B05F9453D4DE0
+:10A4200038D8545469329E14E4001A3DD58AEB2D75
+:10A43000420108F8974CC7C590C9CD954454B0BEA9
+:10A440003F87E5D735AFAF2CB5EB673C3B8B9B53D4
+:10A450003A21DF7A7225D8B62F3683D83435125C8C
+:10A46000E064E005CE6894BF2949BCE151C8F260C0
+:10A47000FBAF1D3F586EE1E1E9229CD91C2904463F
+:10A48000A5844654D427EBCD648E0FE7753042E4A3
+:10A490005097621806208C1A4E605D58468FA82D82
+:10A4A0003338B5DA03756101923425145A63FA938F
+:10A4B00073E733209EF39C965A9040E58C6F46D10B
+:10A4C000869B3E403F0ED7DC8A85C0C3CABB01EBEA
+:10A4D0008ADE69B44F03268E019A7D5E010A8024CC
+:10A4E000EA8795F6DE09332766DF742503CFEA1283
+:10A4F000D612E69CBDAA084865E3C5ED9686A2C0C3
+:10A500006D8DD0A1955E8E8BF27329C1E687467E54
+:10A510005F886EEA47C4EB59AA89B8C55812EC5E49
+:10A520001A002466FE84C5F3B7C72E06E343443AF7
+:10A5300033408F48EDF72788241B83078FE0D1C273
+:10A5400053FCBF981AA84AED0600D255347648A8A5
+:10A55000A3995873A2E2EDC2F5AE99BFC1F3E3AA85
+:10A5600057B06459778829AC6170DBE72B9809D81C
+:10A57000C3D7485E8C232AD910588B2559BA10BCF2
+:10A58000B8CB173C11016D466FF60F955E66A56C52
+:10A59000B8F0F17EC0ACB1A2E86628F21843D51A33
+:10A5A000CE5BA24D5F39753C79E921A713000F847A
+:10A5B00096F3F7F893E8BE7897AFE09F73C6CD089F
+:10A5C000E8B7113D377EE477A8663C8419EC9AED34
+:10A5D00025FE52C1F957980656DA2BFE696C22AF58
+:10A5E0005538FE8D567F5CC94BC185CE82BECF05E6
+:10A5F0001875497CEBC54A2BB4D6A31553BB74160A
+:10A6000077DED9781DBE7E4EAE3EB6780EC34BF5D2
+:10A6100070209C8AEF915F76AD4F4411FE44F15556
+:10A620005524330DE7102C9633443B61A605CC9599
+:10A630007B8919EBDF88AACE1F3E2CCF751175637D
+:10A640002611C3A0A8D3DF5FE2709B656ABC888D2A
+:10A65000B3C85F650E1AAA47A97165EF67803267B4
+:10A660000E18EFC74A26DB95DDF92C3BC421ACE977
+:10A67000081299D9BA709A624F1F27DD464B8C3F5A
+:10A68000912C8EEC7E2F333975EC72C20F77F56505
+:10A69000AB164979CB36E805868A490B3E48A74474
+:10A6A000E7209D9833683DD69F2E0CC007AEA0E4EE
+:10A6B000B6FF15752FC35E5F7EB9194FDD7F3B690D
+:10A6C000FF08170427A2FB53E8D104C21A45292624
+:10A6D000DC70B62CC687C658192DEFD0D015FEBD3C
+:10A6E000EE90872EC85B8FE501B911778354FAB7D6
+:10A6F00027C07AE11713BE4336A643CEE82F56870C
+:10A70000CC859856ECDAAE35E918E08FA927764D5E
+:10A71000B63EDFA902D63CFE758210A5B8FEB9DFB1
+:10A720006C6DBA9DEEBC72D3A327C9F3954384DB4D
+:10A730008D844832525AD37D28E19DE339CA321CB8
+:10A74000CD45FEEBBD17BB955CE743A18EBD5D908B
+:10A75000F8E8F8027FE65AF88E37D1A2A762BF8FD9
+:10A76000D9E8C1809942797E06D966A45D756241B7
+:10A77000F9CD09CEF550BBCF4D9DA61BC0DD659B25
+:10A78000BEF9F47AEB43E664BA36098013872BCC22
+:10A79000B753F4EF20E3A1CA27194D918FE6EC2CB3
+:10A7A000F4B3477EA31E4D91DD1E037E0482AF5499
+:10A7B000F8303A7BF4A621797E4C0E989E7057BAF9
+:10A7C000F75A36CF845C9603A9C105AF48903FE5A0
+:10A7D000DF6A27FA3AE7C85DEF565A342AD9FCD81F
+:10A7E000AFF42485BAC6178B5ACC218D78C898A2AD
+:10A7F00080FE253DB81AC90E01A99A30FE12C36D1C
+:10A800004249C6F8297CC05AB02EBBFB755A18695C
+:10A81000E35AF42EA509865821CFAFA36EBD72BDB1
+:10A820007583BAC6F1D8AACD062C0B2868281C322D
+:10A83000D55ADA8CCB267EAEE157158E112B479F69
+:10A84000C36E644F550B820A6ED10E847370EA8A10
+:10A850008441F2D466E22D5AFC73226B44980A7745
+:10A8600042FE199F5352B420D09ADA5240CED2AB56
+:10A87000D4C8E48E72DD1C4B6469C3F70A5DCAFF5D
+:10A8800015CD92826F47C140DCDACE65A0EC59AAA3
+:10A89000B8BCC68CAFC9B5A4E5935C8D5B2A044BEC
+:10A8A000D164132AC5F21189127CEAC6F0D59651FB
+:10A8B000F61A4F60AF5F43C1014FE6F3A98B926F69
+:10A8C000B58AC148C3623CB47E5FD344B0C7A443D9
+:10A8D000FE10029FC908D71337C2AC0F43F75C9B29
+:10A8E000D7E35C3009C609F6D4FD8D7B0B84BC2808
+:10A8F000119D40BA16D4DFBDD7CC03F99B4D9A0306
+:10A9000036308CFF9C7C377319A9EFB917631B177E
+:10A91000964C030555E3178073E862621A6D7D9BC0
+:10A92000A417763D04D7CC9C97BBB0AD18C3E9FA09
+:10A93000827549A502E55A6E5AA910A190C7B42D97
+:10A9400061BC976FEF506CC6A62A9FD9001140FBDF
+:10A95000AF251950375DEF387DA1C54D8C98CE30AD
+:10A96000176BB2C51F9593E8EE3F18B3DE7A5C59BA
+:10A97000E7EAB773C03E5EC155F24DAA8F27B9F022
+:10A9800041373CA93BF5D47CC6696EB8F3B5DF38D6
+:10A990000C4BCE8734D3C5A6FCA791C101CD63492A
+:10A9A000DD0C772A872C7A90C2BD139F5701B00E19
+:10A9B000F9B4B51A2833E7FD08ABCBFF4AB1AA09B1
+:10A9C000D0C9B8DA342D801F4AA2522348237665B5
+:10A9D0000E5D82DAB474D7AA025E148C97FDFD98DE
+:10A9E000FD25DBEFFDA8C943CF717AC3FB36735554
+:10A9F000E049F18785B4C42E332C68512E6C9BF747
+:10AA00001CDA23256FBAD45956D349587199A40139
+:10AA1000B59AAFD317426844C6F092D464C7EF69C1
+:10AA20008B634AD66A2021155B837BFFCBBF496BC2
+:10AA3000413AE54B5419A415AF5528652CA96E5E13
+:10AA4000F60F421ABF0F900B9C0DCD622571A161CC
+:10AA50008A09FD6176CA0E7F5311066AC2B0A8FE4C
+:10AA6000141BFA6A7A957F3AD1A35AF99D8FAB9459
+:10AA70007769D0E4ED706205A1D6CD12CF6FA3F354
+:10AA80008C47E2381BB945670FE22AFA6135A6B454
+:10AA9000E56EA3D2BFF7ACE5005DF7818AFEB5CEC7
+:10AAA0009DD96A025BD115E046E2B0289784DD5A51
+:10AAB000350332E446D34411454DF6726104317CCE
+:10AAC00063E222F3F073FD7A36709FFF0A996218F1
+:10AAD000275B21002C3835712F3205C44FB9773BE5
+:10AAE00023C3C9E725D9AD4FBF2AA04C5E4CADA901
+:10AAF000FD0CD148FB4028DE5889289999673E8C87
+:10AB0000BED4FB00FBBB24402862C839CB11D2DD88
+:10AB100066CFE0FDFA05746E105E3D47A7109CDA23
+:10AB200004234B6EDA3D8A4C1A066360821B8B72DB
+:10AB3000EE59CE42C595E755CC656653EF3F55F7C4
+:10AB4000D1D4EC8DDE436D11CEF28676A08D46A079
+:10AB50006430EA15769F46978AC85943D203E119B3
+:10AB6000BA10B0C8A0D93059A965E73F48FEDBA1AB
+:10AB7000315B65A6020D3486240664928E6C834F89
+:10AB8000785AEB76C29D36207D0BC4F13E62D61D0D
+:10AB90005CEEA04BB94D5634C5C98353D6A5DD7FB5
+:10ABA0005A35B2D9818BBF1F6B1A15F926048D5EF9
+:10ABB0002136FC168CB0407F3127722E832669CD5A
+:10ABC000B27D9BB9C9A525DAA8CE274837C21B3567
+:10ABD000647AC20108EFBEEBF9FAFCA57723E1B273
+:10ABE0008541D3D0608E5A1B1BAA8AE0CA3D051B43
+:10ABF00051C041A0E1DD27ACFCB68BD04F64CF77CC
+:10AC0000AAA3124CC39D188643EA9B33D1F0822C31
+:10AC10009B427617674BCDE01833557B1BD73147E6
+:10AC2000F2F95E64D29832F22ADF7392DAF9B2F363
+:10AC3000D85FE7861FCFC501A6482124EE2DCB0D96
+:10AC400053EFD98C6567EB005A5BC248F854CEF8D5
+:10AC50009CDAE45B2A363527BF4D4DF38E15085A32
+:10AC6000FDD7C9AFB0D57E7C08A872F7A75D4F129B
+:10AC7000914206A6F6FC6DD60737B4343AD98D2634
+:10AC80000046458DF05811ABA4BF197CDDAB89A6F9
+:10AC9000D4F57A3FA160BAE067D282F89FD3A915B4
+:10ACA000F7454D26D999DF6C5B1F1C204D8AFF7636
+:10ACB00044FBA7FBFAB12F0CAFCAEDB0B8EA97136B
+:10ACC000F1C72918DA86792BB3B50FC84FA394982A
+:10ACD0003C9491856D510AD4368D54A67C01960B17
+:10ACE00048E037010FC0609A7EA061BAFF5AE29F28
+:10ACF000971E8B9B617E9D9E5BB18E8DC545049B8F
+:10AD0000439910064A4D06A9DC8F30D433CCB28C5F
+:10AD10002D80ABCFDEB4FC5B89084B35323A9910FD
+:10AD20000EB6A5E485334FAB08227929E31ADFF785
+:10AD30006BDB417151EED9E8F894DB6249E5528151
+:10AD4000DCC950CCA995B657FD3E8F27E0A31C73F4
+:10AD5000F0B038AB302E43439048245260002BD1E2
+:10AD6000B209ED997CB70C16DD4C8BE1C347ED4C75
+:10AD7000E74F4B177D683F83EEC1FD20F84F00FE83
+:10AD8000DBA52694785F53E197977FA75EBA13AF50
+:10AD9000198638175CF2DBC7A57F6D6AE9CD2F9A5B
+:10ADA000B77695B52B3D0230E7881D4594311D0DD2
+:10ADB000F885A183660FAE634A933B23B10A6A0DFF
+:10ADC00097FB201A08B2DC6B1822D374672756123F
+:10ADD00011A57F670B6907B3EB8D80B6747FFCC448
+:10ADE00087C46C6BE16712D8B58378EBDCC68BC681
+:10ADF000F76F8E3741CB6B5C7448428E9D8B697EBA
+:10AE00001380C558B033EF164A00674FB05FE2FDBC
+:10AE1000BF112587472D743787CA9385640A6D5003
+:10AE2000F13A685ADCA21BC05CD9BD2E2509FDABE6
+:10AE3000C65C87FDF001C3B5A4F702740CA929A173
+:10AE40008AF58578D37F14133D3356281DA58CA62B
+:10AE5000A11D2B94979950B3CE8F951D32672C4826
+:10AE60009C441685F824F976B9192DB336EE3F8F38
+:10AE7000F94A79C0639D8646FAC662E6D0C433318A
+:10AE8000A73CAB47486CF34D90BAF3328A92D31F7C
+:10AE9000DCAD4417928ED682B9C7F097AF7F26A358
+:10AEA000DC7E81F1E97A5FD5BE0802C80B5EA8EFAF
+:10AEB000CE82ED2B351B59A013D83B0C9938A5A891
+:10AEC00089913DFE3730C213D3DB2B0CCE96EBB607
+:10AED000044F5FA75174EED2A09D3467D4040F2BAA
+:10AEE0007D16F8AF0E6778F1AE0D27E3CB5213EE67
+:10AEF000A15CB67F3E0176E3FBB6E575EA543D8C76
+:10AF0000847F0E6990068C921EC2DC1EC4B9A89381
+:10AF1000D9E036866BD183DABADE20BD75F4045CE5
+:10AF2000DD5FCBD6F0A4D0EFE7918A3B7C9905D8C2
+:10AF30006F82050AFC9914E37C3E29B8F48F43A57F
+:10AF4000FB4D7A64EDE13CBB1491A2CFE38C552715
+:10AF5000F18C435FE270722924B4C8A1F009C6E302
+:10AF6000746DE83DC83553EA9E72D63567C4B8D3D0
+:10AF700090CDAF599F483FC49CCA9B1A74466179D3
+:10AF8000558ADE1A0E10C044875808C6EA400704E6
+:10AF90002B23848925C0F5D59E0F6683AB6894BBAF
+:10AFA000F75D9B493B985FC91B6CFE821E80D4B342
+:10AFB000309B5727B9913E6C24E371E4E724A8F352
+:10AFC000C994B5C3867AEB7B2A7865E47C0BDD8C6B
+:10AFD0006B0ABEE0F6AF2C31F1B94F1D9315024F4D
+:10AFE00092E4F6C76F982D457FB2FF139BE87F264A
+:10AFF000A22F0B1D729690A60BB84032EF8398815A
+:10B000001B6F5E4E834E216167F74DD167BA5DA21B
+:10B01000EC777349E7FB893694F4748B600C958E5A
+:10B020000DD35023BECE43F1EB6912CBD6774056F9
+:10B03000FEE1E5A17705EE07065688CE070F23A0AF
+:10B04000379718F7A419CE09836D8F4A19D908C408
+:10B05000E07A19A81D262631949F67F9F6745B4A99
+:10B06000653AB716895668835B7D0821BD7DDA7C19
+:10B07000BAEAA2EA25D9D17F18997ACCD00C09B9BD
+:10B08000BC1B9C20987FB714BF527C7F3E6451A4A8
+:10B09000F69033645D2AF9E0B3C8292BC07C5BF5D8
+:10B0A000B5131FE97358C78EBC0DB1D6AF308321DD
+:10B0B000FC775EAA7190122399E1DF4FF28B7C5FDF
+:10B0C000D779321C012919DEF49891BB11744F35E0
+:10B0D0008ADFE1BA9D8F14DB5834788C0C0267123A
+:10B0E0002D91FEE4F54AA779D7A3994EB90B044FE9
+:10B0F000BCE985148D56FEC9F8E0414848C9D0E93D
+:10B1000029D13B755B9555956ED214843502EA5270
+:10B11000CD615879AB0D180F2055103BF98E86C0C4
+:10B12000477B434F3CB534D088469663D53566950A
+:10B13000F89E1C77E36603F2872568D42E482FE635
+:10B14000EBB82A4F3AEBBDD73488384B506EAB4B37
+:10B15000E85CBD59B4F02050C3EB74B89C57D90BD0
+:10B1600091A8E662C4959FD0BF81A7D3E162E7D2E0
+:10B1700028A3DF996C084822B21EFBD3264CC25A82
+:10B1800035AC2AB1B89E41C0B32A6B3005A837BA96
+:10B190009B80C5DC6C531D97E4AFFDC56E629DCCF2
+:10B1A000C47A9D89F50DD9CF3EC5BF827B6483F5F6
+:10B1B000C2FC7509D000C09F890E0C5EDCFF2AA876
+:10B1C00078A6E3DD7B8D2750707A7C661F8665ABA1
+:10B1D0007A19E7D0B16698F5DA079D54431EFE1040
+:10B1E000D735A2AE97ACF28479DF82941DADEC7BAB
+:10B1F0007BE89F1C3E072C57E1B49D47B1F59B0DA2
+:10B20000E8BBCEB460A6A71A11A5DA4E7269DE9229
+:10B2100074A6177C16808735DD009515A86E7366B9
+:10B2200034F8F38A1961AAFCF7D4C001AD72004F5B
+:10B2300027E5117085909A177E4BCA55E81FF2AE2C
+:10B24000713EB729FF0710DB72C2984A5ADD502CB5
+:10B2500022A2C202BAF747DF3C1F87664CF2CAE758
+:10B26000D15B6418D78F118F47E6CAE9607F3AB97E
+:10B270000AA4013307C00FED5F2A3B9152AA09A629
+:10B28000A4122B9AA8ADB96563B88C6C19F5F6D5E4
+:10B2900035D7564B223FCDDD68C1AC567FC42872EE
+:10B2A000FB9310235E2757185F8FDC2B0FDFB0193D
+:10B2B00043F738314E7A84B6460F10652E7223F369
+:10B2C000C64C1B2B80A573E8157A3550EF78121405
+:10B2D000E8C5D345FFEE4F065CEB00F38127B8FAD3
+:10B2E000CE39FECCF650824B3D5058605812544A2D
+:10B2F0008292658BCA6E3FB1A04C24BEE11325300B
+:10B30000439001421AC9C2EFBD278B1C39F827169A
+:10B310002CC47DA1F1240898F263ECAA9CF4E2E924
+:10B32000BA066976F211C8301341E0619D67F00AF0
+:10B330006EF4E0E8418807D8376D934065C2FE059A
+:10B340001E07194D6B09C3DE2D9D767E36B5AA5CAE
+:10B35000BC6EC7F473F46B862D2FB3D2CC58F79E16
+:10B360008C2514EAA4AA7281677932E2A215B27E12
+:10B3700071E1600D5889065FC817C128A5E07355B3
+:10B3800047C62A442A651779FAA5C31F73BB7A41B9
+:10B390000E61BAC2092715F214F3EAC7A197AC5798
+:10B3A0002B4F569D3FC1271C18F212D55EF8E5A71A
+:10B3B000E0A0671AD53D497541F2B3E3A0E72368E1
+:10B3C00078248247F1CA757E16BE75D3AFB499450D
+:10B3D000CDFF41A3B5F3E2D2742E77177437AB26B5
+:10B3E00046BF215BEF90DEAB5AD144D2F5A34FBDEF
+:10B3F00041F8432FF439D40CFA9DC975250B846CA0
+:10B40000644AB951A91928C0C8271A9F393B72BE8E
+:10B4100095068AB028968A5B3FAC4EFFB1B92A5A8E
+:10B4200076EDF37FA6B98C353C96FAC14386E1EB05
+:10B43000D096F23B3864D49B35F24E9BABE701616A
+:10B440009CE76A41A367D5BF316497D648696269B2
+:10B4500069FDAB92EBE9805D31CA6011C9E81F66F6
+:10B460009C89DB099300AC186E7ED558D135193212
+:10B47000591528AE527F5D28D621B8C869D47D9869
+:10B480009C8D7F89A09BD2E9AAD7020D4F3620B6AA
+:10B49000D87E46414DE495B6132C01B945E5FE33FF
+:10B4A000AC5840C60FD6ED8D118AC44EBD9C1B62B0
+:10B4B0002BCD4F5A5448F6EFF5FBE50CC890AA0285
+:10B4C0004BA9BFF979BB95C5C84AF5290D365F75FB
+:10B4D000492B8D1F3D1CDB9251D3199A850580F9AC
+:10B4E000D963AB0D662643BEE477032C4844FD4B7D
+:10B4F000055242AD026BAEB73BDC23994B89CA8340
+:10B500009EF527FBCB5464D38FBC6897E3AD9C3F7B
+:10B51000F71CDEDBB3E0954C8F2C3B6C82DB6B9E23
+:10B52000202192812B4DF68741051640D1B5E63397
+:10B53000FFB9896D1ADFC8D38B222E7939DD1E2819
+:10B540006BBFF8D9824BCA26A1C31F96C92AF49FA4
+:10B5500032AF04542108A552BBFCE73F398F40505D
+:10B56000F31224EC986DC57CFF2DE6457157A94870
+:10B570006B027E4321E0AC40C7C58880EF54A149EF
+:10B5800097DD1A9D736031002F6BE6E4B0E85C91A3
+:10B590009E69ECBB7BD4996A3CB8BC7C0222BC5F40
+:10B5A0003D296846CF9C6B88A4F8B25A4A8A97C94D
+:10B5B000263924EA645C1D0DD30EADF6524639459A
+:10B5C0003F5597904AA1C1BBC77BCD6E03966E19BC
+:10B5D000FFC8863C7AB37D4F3FA2659F5D80AD2456
+:10B5E0004BFAD28FA9DE8423E3E371367AD1B7E830
+:10B5F000DA650A2D58C961B7E64868242959167ECC
+:10B600007CAF73EC4245248BB690AF7D24687F7984
+:10B61000BF42982ED1E0ACE891A656906713F8E3AC
+:10B62000FD4AB813792D932310E53FB5C40328983C
+:10B63000DF630C3261BD1A266D0B75F66A519C975B
+:10B64000DCBA3D992F79930C826733BA692B32C4E7
+:10B65000BF3E03034CCAD5154F1DC892310844F4B0
+:10B660002BFB74124A323746489CBA1B8D2F1D9E05
+:10B67000BEE2812ECAA2B328B96DFCC04ADC156FA8
+:10B680003ADDF9BE92164554D010B79188CBD966F1
+:10B690001E4B0EA94999AC7644C712942BD48D0E3B
+:10B6A000DE422CDA488D59AD3AC444F2D2E34D2241
+:10B6B000B7A86E5B798C867487B3EA50C7657C53F4
+:10B6C000297178D6F0558E63012A0EAFFD2C8CD9E6
+:10B6D000F8223D66F2A1670E74241C8A53EDB086F1
+:10B6E000CA9B2D3025A261AC2053FC8B733ACDA2AE
+:10B6F0005D58FEB1067B5DCDE926552AA041BFA865
+:10B70000CAA4D9BAD6EB996979A04171E5B2708122
+:10B71000A3891EB9000D3A3F8998AA127CA5C1C021
+:10B72000AF86F3CFFBB69FA23A0AB33629D2FFFF0A
+:10B7300091163E2523CCABC132764B20B1DF90C0B1
+:10B74000AD476478540CF40998FD719B80142AC9A4
+:10B750004583701511DFD73BBA921D7FB177C7467D
+:10B7600022FD23BB845750824DE02A287323EDC667
+:10B7700004A612409C0E7AB398E1CE8D5587CD4435
+:10B78000FA4029A5C5CE4BDEA2F017BBBCAC09859B
+:10B790006786805344A46873E89B3C5D39F92B218C
+:10B7A0008A71E6F0F412A3986982628A3DC7AFF10C
+:10B7B0004B445DA20CFEC6B635280BC31E9FF53365
+:10B7C0009F4321B4642C213B586711A325CB998159
+:10B7D000F46277BB11F7EECE693A2EEDA212F9466C
+:10B7E000E7F6582560F102F1193882548876E7258A
+:10B7F0000EFFBA05E9766D98D510843C3BFFC499DD
+:10B8000065D37F3A4EDD463367BF787EDB60E73035
+:10B81000D8C9D360D6BBB08C6BE4BF9802FAEB7684
+:10B82000BF837602505DDB67A7EDF525F7AE102CE0
+:10B83000ABFB4C314340452682E1C640F77380069E
+:10B8400025AE042F1459D03EEF74607935DC9B2A65
+:10B8500068C3939B626B09DA2F95A9C490ADBD5B59
+:10B860006F88879471725B4C72F74A52B92218E75D
+:10B87000941A5E3AA80EEC7CDC91F7F95E15146A16
+:10B8800020FE9DE4576A1AC4F4DBFD4916EED8A6E3
+:10B890007907A57E99B02C2DBF622D9A86A5D580FB
+:10B8A0009970C95F3FB42E7DD7AD3229A468FC33AF
+:10B8B00000C47A527128C8101B816B58D7A6AD17E7
+:10B8C00059F88CF9FF0C315E6013FF3D94F34CD8AE
+:10B8D0001021A39683E8CEE7C951243FC03D24D16F
+:10B8E000E7380CDF8EC863849DC816745462674BBA
+:10B8F000120BA07551A09F787179AFDACDBA09DA31
+:10B90000D1A0C50E8EA6BBDE330FAABA078D2B744D
+:10B9100000ABA9F345F17E3EC27660906416420901
+:10B9200078D79D994B120E01BDCAF669A7C93AD2C4
+:10B93000DF606BF57AB20E358B3D71EBA2778151EA
+:10B940000A5CB537828E9E0B719EF59D0B2FE52DFF
+:10B950006A33E4A34BFF7EC4C598CAF5CCA57F2A01
+:10B9600012FC3FA09A64F9F3E11DA4BC9DE31746C5
+:10B97000F17FCEAC3EC0C89790884B91639D0D2C53
+:10B98000DE8AC61D171CD611CFFB6BCD251AA05B16
+:10B99000B49AD912048B8479F367435895F137F53B
+:10B9A000D561F954DA828EE9AA31A94B3399D7A728
+:10B9B000A5E77D1A8A20F72928AC2A3FAECC43E1BF
+:10B9C00053E530A901A33A4F812767BD243F5A6C44
+:10B9D0008558295B64926A52A257BE7454A3F644F8
+:10B9E000F8F940E7BFF20EFEDA91D15CA2608C0A52
+:10B9F0003AC686272509B78FAAB343472B8945F056
+:10BA0000AA558CBB59F22BD993299765F46BC97849
+:10BA100088A17C6D2DA11580D369428B426587E09A
+:10BA20006FB08709CBB16695A18AE72994CEE48BE4
+:10BA300025BC4DF65C0EDA56CCE6D2DB2E29EBB7F0
+:10BA40001B8A6A7A4431E51ECCB5C46B88A0F8BA6B
+:10BA5000ABC1B254F515DFB5F3E356A79063EE1F03
+:10BA6000400A8B8D01DDB1669D58AE8353AD05262E
+:10BA70009795D95630DDAEF72CD4CCC6593E104B35
+:10BA8000F0E6C486F46973BDDFE7F4D5C0887603B9
+:10BA9000B9400066D0FCA7A66C8D88556AAC982783
+:10BAA00082461CECC9AAAD71319ED7A9D0563B87FE
+:10BAB000DC130E8F749F0F95C897C13405BF461FC6
+:10BAC0009966CE4DCC49EDCCBC1D92AE862DBD976E
+:10BAD000CEFA5058E9A9AF51A44A8C297ECB7907F8
+:10BAE0006454582CA0FAACEAF46C0AEAF19E4507BB
+:10BAF00081B06CF3DC5B82431504B1E84E079C0314
+:10BB00006533F2FBB94E3B52D17E7C6715BE94285B
+:10BB100078BD4C55D05842E9B2C8E05C871A00792C
+:10BB2000E59B2CED56EA9176BC9570D4A255718EAA
+:10BB3000C5B485F246241BE396B0C0F741A4621F4A
+:10BB40006B191C5610B8756AFE6789E30CAE209617
+:10BB500002F569E746E1FD3A257A7B7CC77B7FFAEF
+:10BB6000E33F9060C8C187C5C86CB1F417D7CC5A01
+:10BB700006A8843B85D425278D33D0BD1D54257F51
+:10BB80002741F31F8DCBE0610F55249B3D7D2CA9F0
+:10BB9000D6AB757E76633064EF91FA530B6E3A8CB8
+:10BBA00039630055E7565C1C5983A3A1CFBEE6B2AA
+:10BBB0000C94FB6285EDBC70E7B9B12494D3671592
+:10BBC000F15828FA5A2CF48D8029D45FF0FAF175D7
+:10BBD000698A3DE6ADA28775D5F5F7B314EBBD8A4A
+:10BBE0008A6F75A04F23762C044B675FD88C283959
+:10BBF000CD680526732E4991C2708FC7D5E9A9EB90
+:10BC000097C1C093AF9955FB73B26A8A4187C24806
+:10BC10002CAEFF4AD91152563805887DB7B133D5BD
+:10BC20007F62EB43EE1125C371CEE6657F8B4ADF61
+:10BC300088F099D2A0C14911F2C219BD8178302093
+:10BC4000BAAEDCABCE2982B0B7F5EDAB9088956D7E
+:10BC500031A9D8A60E2F94F2C229FA9514EE11B488
+:10BC6000E7712C6F3D49C4CE833FAC028049DC12A2
+:10BC7000ED95F169DC9DBCD24EC9AC937718318A41
+:10BC80004DD9AE983BE34F548D8F0FB849F0387CB7
+:10BC9000BDAF464B58C2B1F3C597918CB576DF0363
+:10BCA000ECDCEDA87F474578B322BEEE33FBC49EA3
+:10BCB000C7D6E1556DEFBD9DEFB6637366B69AE2E8
+:10BCC000B2FC735B4BD959E0541E0534E89C878C59
+:10BCD000DEC8B29EA3CA0E021243826C84A4BFC403
+:10BCE00008B844CAE47B857A50068A39DC55598BFA
+:10BCF000E89F5E394598450B88DABD830675D738CD
+:10BD00005A325D1A3BBF276AA8B4E1CBC1B8C31A47
+:10BD10000EC52FBCABF61146568632F990EFBEBB6E
+:10BD20005B1D7A6CA0F607052FD18D9AB95528F0C6
+:10BD30004FF7ECF2F91CD3E7F781DFD8BC8B385C06
+:10BD40007BB95A621DBF171100A952D4FCF2D44D21
+:10BD5000A2AA0558C42F79B0CB09794DFC044ED660
+:10BD600026E1766E4CC65480E4499D3400B992D4E5
+:10BD700022ACE95C46F709A0226CEB15602D915CC2
+:10BD80006B9D1249E5DD4FC18011FEAC27F5BBE587
+:10BD9000E47E58D0BC58A623545CDE69551FCFD032
+:10BDA000466D8BE420BB5A37C3D065C50D19A9D4A5
+:10BDB000E30BAB353F76D3DA438403DE890998DDA4
+:10BDC000CEA1E9AA4E01BA0530E95E416A8E62054C
+:10BDD000EA21DC0146A3D685B3721F67B9A3088B9D
+:10BDE000F380381FDAD0C66B4DE5EE7386F78B38DB
+:10BDF000BC497785BDE35B8DDF6B9E42B60E5F79F4
+:10BE0000103ADDAB536854250956A29D94998409D4
+:10BE1000C1B4ABB3B603D858F6B5E66430BC63ED35
+:10BE2000D124926D9EF3D17F36EBE26C99E07616C9
+:10BE3000DD9389A405BD3E6949AAA8A4E4251CB8E0
+:10BE4000F0A301938436807A8BC5D50FF322586313
+:10BE5000A80C30CA10E36405C8DACA4F839431686D
+:10BE600058F6E9DE43408F7CB95246249F5ABB778F
+:10BE70006BC38772E010B55AC56A2D2012C90B0A30
+:10BE8000F343EAFF8F96E3D577D442CA5D126A3254
+:10BE900022259E77263535C3B562A717B8DE685BC5
+:10BEA000A6B94B97E6844E977A5D1BDBF65DD97396
+:10BEB0002CDDB75244056450F11AD591C3D3D9385B
+:10BEC000C864D7AA26B817426889A6161CFF7BDD6E
+:10BED0000F601AE18AAE9A04351131E209CC14AB35
+:10BEE000E16772D5EE7ED703F939A516D0D49B3120
+:10BEF000A137EE65B3439663254A8F633A75D193B4
+:10BF0000A621FD1F9B0B39D4D198739261A0B2F387
+:10BF10007C9981D17D213208DE62FB0E7B6592F92E
+:10BF20002F76A8ECC1566F60877955DACB93C9712B
+:10BF3000D0A9E4F85E177661C897FAD4010C3FF4F3
+:10BF400067A60EB09073F7723AF8982AAD25B25DE5
+:10BF50006124F8B010B7973A8E5F73EDAB865E81BF
+:10BF6000E4D8D52EF338133B20BC9866FCDEDA26E5
+:10BF7000E367CFA2C645029D713D6399C9913880A0
+:10BF80001C951CBEE2AA2E07D89CCF2C5656348195
+:10BF9000BCC8A1EDED9EFA2500E9220554FE35EB63
+:10BFA00020368F119AE1056361AD54385DF0982514
+:10BFB0000234784E0C0BE07BDFCB79F563EEB0C832
+:10BFC000CEC1C9C12BB592C30B12622597C2AC93E7
+:10BFD00060E68A5E304BBD5E1E52DAB6359AA973B2
+:10BFE0001E661155B70582FB5139C0078FAEC36A73
+:10BFF000F7352C3ECF03CA3DC8836A47758F1F743F
+:10C00000BA8B4F22456AC09484057499CB3C7FABB0
+:10C01000B72C5AAD679CD3B25801D8D9DAE61A5575
+:10C02000214A5F13036896570D444007AE108C8F6A
+:10C03000548069E09C0F5C788A8C7C91AF29B6D1E2
+:10C04000B76BE94C3AE3FC6EAB565F61EA31099C91
+:10C050007EF861AD050BABD8AED060F32F2B9B976C
+:10C06000B7DA6AA9286E59D9019F503D037BE9C808
+:10C07000FE4FEC21BD7A73443C9C14C357EC5D9990
+:10C08000C060BE3FDB34455575D54D141D225F277A
+:10C09000C4B31761A965713F457CFDEA6515D9FEFA
+:10C0A000FE7F40618DADF85C64182AD83ECD0D7AD4
+:10C0B000807107B21353B4F913BC0CCF1503032FCF
+:10C0C00022A295D180654409973B892EC5A04334AF
+:10C0D0001CC7063490EBDB82BF9FA3A9A38E6EDF43
+:10C0E00016402C1A780D3E47E1268C0B1C5D121869
+:10C0F000B6168CA1CE892AE5151545C68131A7143F
+:10C10000C6693B98AD7E59D3834A9CA2A6459E3E04
+:10C110002A301B5411BF749D6B3BC6CA3B70E9CBE0
+:10C120001DD4151E26D89BDF18C715135009E62FFE
+:10C1300038FFD691B11A1DFBD8452F9FBDCE53A60F
+:10C140006359091A35157C9069A3AAF97CD7B70001
+:10C15000602FC2AABC2C308F616206F4EB1C1E3229
+:10C16000F78531CFD8CE8DC17BA7A48F20D8D1BB86
+:10C17000F1F6EEA9BDE8F53AF8FF4EDB61AFB85D28
+:10C180004B2C49C4FBBB2C5C29392BFB01749BC68F
+:10C190003617FEF3F510278CCBDA90795CBCB047EC
+:10C1A000A4A169C5D607C1254112FECEEB57C977B8
+:10C1B000177ABAAD8ED63F541FFE3524C87C4D8EFB
+:10C1C000C0986B9FAA5839200E0BE841205B94263B
+:10C1D000A6CD72994D72E34EB05370FA9E5969B173
+:10C1E00008CC41BFDBD6143E5E80CF1D8453E7E20E
+:10C1F00054F9AB522ED455C7ECE77D3A4A9CD1AAEC
+:10C2000001B20AF1BBA5024005F40A47AE01FD1CCC
+:10C210008F754E630004A737E6BB1FE6A9B2D2654F
+:10C22000A17B62E78371E7449B8AF475CF6A5F86DE
+:10C230005048FD77C56FA7472811A685E7C0CB2DCD
+:10C240005CAC3C97D7FA01E673AD937E13F1717E37
+:10C25000176DA323752258B2410E2D12A8263A91CC
+:10C26000AFF243F3752629C1AAB4C4AED19A7200C5
+:10C27000A3B3987949FC3EA928905416803AFFE769
+:10C28000A2B6094604A534AF9CB010FB97E3BE39B3
+:10C290000EFDBC3EFD228D10DC4649F665D243837F
+:10C2A000B1CCECAF935CE80B3EACA3F0810B7B45CB
+:10C2B0003C452749D1DBDFDCBB07268E8E9A1DB2B9
+:10C2C000ABC3B2A347E0D23A2694AE5750E2A47172
+:10C2D000C736BA988D0B9EAF4EEF2B903272BB9B38
+:10C2E0001D5227B49A37AAFD19D1B7F997BA8C4EC7
+:10C2F000CDD942709A289B8EC626EB58B933087167
+:10C3000021C3BA55144D3BAEC467C8815BE95FEFEA
+:10C310009AEE132709708ACFBF4520BB4F4E75D8C0
+:10C320005769DF78DE0D07BCD982D6D43CA8C63366
+:10C330009C7D949FB4C450404C39CD106FD2700591
+:10C340003AB9A8778E19B88A08416730904030868C
+:10C35000C23C67FEA51824FEF247829EF62C8A2B6B
+:10C360001B03CC0857FA01657F5240FA1B8F39E056
+:10C370004C87A9E579EE4D6D405D7FB817FC856B64
+:10C3800062A119E9C7B1687C109CA5B474425445F8
+:10C39000E56E655A780157973757F77101A2CE07B6
+:10C3A000B8CC4385A3346E9340EE08BEE4FBAF6B7C
+:10C3B00073FE75F178326CC924708199D92185702A
+:10C3C000CD662A8EAC6BDC3A4689D649F0A96992D3
+:10C3D0006B436ADD3F5409043442479FDFB98F3114
+:10C3E000653EB98D12EB8C9BCCEF5D86BED81B7F72
+:10C3F00011D673473894C9D269E723D1BE83BBCC29
+:10C4000094C11419EAF5639172032D26599FFDCA50
+:10C4100047BDD747E429F57B951721556B7232E16B
+:10C42000756F2A60A21508E386C887B2ADB8D11E21
+:10C43000EE2088F3E7E9CEBA94BB2B6423A4BA4E6E
+:10C440005D2335B71BC9142924FF645B076E020303
+:10C45000046000E17E4C517D9EE6FF3C271DE9EE25
+:10C46000FD8D74B6DF098B23D9812D9F5615AFAB97
+:10C4700091931709123581008D342F544A1C93640F
+:10C480005DC747CBB9E1C0439CC2473FC9F3438E68
+:10C49000F82757136948FD32330045B257DE06E4EA
+:10C4A000565433C08534F40E28981C43D6CE9919BF
+:10C4B0004AE2F4E483849FA4BACA4D5C8E1455A961
+:10C4C000B8C52195DACEBE4B811F5A2E9E1DCA7A61
+:10C4D0003022522772E7F3E0C76E63E158E6A47C8E
+:10C4E0004FB5CA320AC32605D21F1C59F964A3B737
+:10C4F000C5A6AB5F1E7B9B541D900A70FA83B0B13A
+:10C5000059E9D43377CA37C559823651A207253441
+:10C51000B90568FA3A0FF761F7D11880815E7C207F
+:10C520005A7E4D8F7DE071B2ADD6A78924E18CF89B
+:10C5300043DA6B3027DC4DC655AC536CC14DF8590E
+:10C540000F588FD049E6125376AB05EFA00CFB369F
+:10C550005BA8ACB4E7EF8C40E69EEB4401371A3B96
+:10C560009E8D936B2E3347E7286A78CAB39967107C
+:10C57000ADE4637C5432671091F4E147BD6DDECBCE
+:10C580006BA796056739C0DD73A0AB6CE3A968079C
+:10C59000D358CD86FFE7B94D0FFEDD56C29F5763D6
+:10C5A000EF2F8E662B82465C77D7B419AF6B500E97
+:10C5B000F21402CB69D8D969E1D3DD0810FDBC0DB6
+:10C5C00065415255FBC65A98F3B599E3ACB8F1F4FE
+:10C5D0001530B62B4117E7373A2F59C1155EA631F2
+:10C5E00097B07B96119A9A8FFE99E6F0BA855558C6
+:10C5F0004E30B1F5A76F483B961FBA69DDED9DD56A
+:10C600005582B891578E153D27EAF92678A8E5E3BB
+:10C610003B83A8F1DA8233E7ECC2DAFF67A793D550
+:10C620005D7CE80C4E06A0DEDECC8857BE5088F25A
+:10C63000C9D13743BBEE5DBFAADC5693B3AFB0366A
+:10C64000A85FD6A3CAAE0E91E2A59948BEC20F69F3
+:10C6500038E060CFA3FB5F5C2BF27B7E4BDFCF35F6
+:10C66000FFB1F9D7B109F2CCA3F989CDE5481D692D
+:10C67000A91A20F72B74391DE82982D415102AA095
+:10C68000CC44E9824F00F97EB5FF82504F6A5A10C0
+:10C6900007BDFFAC2C1100AA06C181597C5894A19A
+:10C6A0002065FA9E7F36EC3C39FA4D193DA3BACB92
+:10C6B0000DBF80952FE7AAA79009A1176407C9A607
+:10C6C000B04A454D833DB9E7D120D01B1CF86649DF
+:10C6D000B68DBA5078688FBD3403E2257E5368CD9D
+:10C6E000D672D1598797BA007C8DBA110C4853067F
+:10C6F00098C44F135BAAF57C8FD9DB6FA1E801507A
+:10C700008BF8404AB1EA67502DBC1F9E1FB42F1909
+:10C710002FE1DED43684A15AA38DC66040FBBA3423
+:10C72000C3BEB62ECF65CA6B4BE4ACF063543AB8C7
+:10C730007A57B3B7271B80CCC42FEE28FB2E603569
+:10C74000E94D5CFC71E2CF04320AAB7D1C6F7C6D5D
+:10C7500050E01B79383FA6B843F30B538D0AB47EE3
+:10C76000F33F15F94DB3A315E23E4828E5652718B8
+:10C770007E3C9667D318654FFDE00D3FD10879F6F2
+:10C78000491C05FC110069C4513081D4D16B7B9DDB
+:10C790004ADEA73860D26074D51FBE6C13DC5C5EC5
+:10C7A00040406A0B73BEEA7A1B22F84EA8190E2489
+:10C7B000297F84913C1769BC51B89CC121CF4FD6C9
+:10C7C000722116CC52234A6784D2B9E081AE5DE66D
+:10C7D000EEC0D2B3A359CD0A98194185A71AE8DE55
+:10C7E000E651DA42C88CCBBF2A351CE84D7E8A0E52
+:10C7F0008988C47C1BE3E5290AA568E0A2A0532D23
+:10C8000088ACEF419ADEEB100FC0E933EBA7882B21
+:10C81000B13B8B088A15DAB1C7E338614580FC8DDE
+:10C82000243424CDF63CD33354FD82F3D7BF4EE8F5
+:10C8300009FBFC3F43002EF2E6930828A189531719
+:10C840004CCFAED71A19563575D08F930EEAF88BA8
+:10C85000AF2541CBA9CC4BEE6026B724DE916E0705
+:10C860002D04D1B055AD42D375C51C132FBC6065E6
+:10C8700041F3EE18FD8CF4F54662A1AFB6DA1BC0A9
+:10C88000528BD18E9877ACA4307DF3305549BB28BC
+:10C8900078290884DA141811A88B023AEF1989D381
+:10C8A0001F377D30F7B9FCA199E38FB4F3563BB63F
+:10C8B0003BB774152A502AF77A4176416DA8219822
+:10C8C000B172D1BDA17E438A44BD7EF21CE7908146
+:10C8D00047E858FB060AFA5CA7A5135BB42AD9AB54
+:10C8E000976F74495FD2515E06E40FA2190DF404EC
+:10C8F000A0373F0022B108D0681700868E30E79D30
+:10C9000068EB08389DBE162BEFF650FADEE9120AE6
+:10C91000DD84F5D0BD77BC0E8CEA558FE631E2762A
+:10C920007419F71CADF959220F7548596B4B0966FC
+:10C9300000C9158470F7C902CFB31330AA5C16760C
+:10C940001F204EF519B3323A6E817BF7C8292DDED0
+:10C95000B43D18F16614EDF87BD47875571994E25C
+:10C96000487A1326BE68FDA68B3485CDE9B1F7DC85
+:10C970002D96E90980E4FA196356CE499F03F0C762
+:10C98000C5B6E0DA98F8EB8E9CA3F7091F69979E6D
+:10C99000010AFC8F5095D6FCDBF2AE170B2C165912
+:10C9A000AE8F03B834F27CFFE5ADC2DBADABA8F0CF
+:10C9B00020E37942D8587CBF02E4C6FE2C1FDAC0BF
+:10C9C00040B3A0D99CC0F027B978871D737E752F1E
+:10C9D00055EF1150B8BCBF9D43506F1B40B21A2F8A
+:10C9E000B1E402033B87D2D0ABC6A332C9724AE896
+:10C9F000DBE8501E828C5CBD00094089F11E4F8728
+:10CA000058E99C7A5D0CD923079F6980926DF67373
+:10CA100042A9393399156868F4FB18D536936E77B7
+:10CA2000B29BF2F2ABD0A7FD1B77BEA001AD59E3DC
+:10CA3000953ABC4747E8F6E7DB19E1EB1A1D8DF69E
+:10CA4000617C1B422009C2E7EA92394DB521B70744
+:10CA50008C742377B235B9ADF75D3F82829F08DDD4
+:10CA6000F3266293740173C3FE6E11FBFFAB0F7F5D
+:10CA7000E1F72FB5F733378F04E511B2D601EC0398
+:10CA8000969CDF85C49D9B5B1E0CF65F7B8D2F14EF
+:10CA9000C61563F94912258A0162B3E5FBB7405D0B
+:10CAA000DB2FFBE665FD1E0DC6B356B8A4F67FD896
+:10CAB000324499164CC12A347F7BD380BC0F4C7B07
+:10CAC0006811109FA52502EB20D3C9C33DE94A0197
+:10CAD0004826A8DD9E486FAB181755061235E21799
+:10CAE0003A660A2201C9F58FA1EAE79A837E516F5F
+:10CAF000A67D393043BD66B43BE08420870B4A15E0
+:10CB0000F6345D1564EFB84E64A38728F88765CBCB
+:10CB100054FE01EE2056174A6BA030D489D2E5E8C6
+:10CB20009F9B926C498AAC682942F9B6721006CF75
+:10CB30007A88D2A058581D314688C4DD50BFA1AFB5
+:10CB4000D43DAD7F9474F85945E198799B447BAD11
+:10CB50004E01DF9F52C59C642CB401F8C10DB75A39
+:10CB6000F9E4220150D632990CF0A4711AFFE7289B
+:10CB7000A629CCF8883E79E2874F82795AFE4B8D00
+:10CB8000B696D7C73770C201C78474BA4AEC953BD2
+:10CB90003B33687AB33A22D90E364FF2DA6668BA76
+:10CBA000E8F6E8B2E0D1E19704CFB2208FFC0D07A0
+:10CBB000104C4E998E05DE776D1C1A079710C7BD75
+:10CBC000D6CEAE26FFCB02A6317BA5DC406252B7A3
+:10CBD000B68545710E8CA027F9AFB6E59A12A3175A
+:10CBE0009DECAF73879F98F04F3D5F8942A4011B76
+:10CBF000CA08882C05722853EAF4DC313B13EA1387
+:10CC000099C90F5F0BF5B83181036AB13584BDC690
+:10CC1000C1B47B52181BAB9BCA92F22488AF8F3FE2
+:10CC2000815E5870CBC627720A783D36154E336444
+:10CC3000888B9164995FBFAEF5CEC5EAD418FBA787
+:10CC400087DE6A50C7CD4007AC58D1EAED351AB53A
+:10CC50000A5F5ED5247B5A0A226A02A7E70ED8C96A
+:10CC600082410D85F7B5486FC15C6188FD739443BF
+:10CC7000072957AC1095117E79AFF2A0D8782EA372
+:10CC8000C713D371799F10B331B7EFF8C21E4B4071
+:10CC900045899B1610FFACA3222AC39D8923CB870D
+:10CCA0005E3C9FE94F95673EDE215EF87372E5AC0E
+:10CCB00039873ABCB3803789B98CEF06B12C29C3C8
+:10CCC000AF4EBDC630C5802670FBAAA754BACF5759
+:10CCD0008B66E9EC96EEAC1B893D52FE982164967A
+:10CCE00063746D8C730694734258CDEBD045615BD1
+:10CCF00066EAFE7A7A679C56E085D988A7492AEBCE
+:10CD0000591F7B01E5297FD79FDDD20ED3411FEA52
+:10CD1000CEBAF9E33E2D26853C0E1E0AAB315C10DF
+:10CD2000C03FEABCED9C58616FE5699549B1A5D655
+:10CD3000C1D5D25AF2145C72E08480C7CA845DFE09
+:10CD400069BB298A568A8A90634403F37C9229013D
+:10CD50001DA8BD17DA8F99FA017B6F1CB6F5D8F1C3
+:10CD600054DB4043B12EA83BE0AA2D078233143A8E
+:10CD7000ACDD65EE28EE97C721D81AA2C1E475286C
+:10CD800051349DA513384B3D0AE2D0C25F651A911C
+:10CD9000DF302995070F5CCC1D3909AC534BCDC250
+:10CDA0004EFBA64991637E7CFFC7EEEB4CD250A8A8
+:10CDB0001E6DD819112C674A139B51A38BF93B0B9D
+:10CDC000591390C9C964F0E34F1B7DBBE3842095E0
+:10CDD0008D2044A64323E773BCF85E1FEB7BC27B28
+:10CDE0006464A213D58D14B859E0299DB23FA316EF
+:10CDF00012F070EED14A9EED38232EDF8C73CC04F6
+:10CE000033F8CD8DE7C19186C0CF0A4BD9C83780A2
+:10CE10009ACB78341946E5465C7C37276D8ED94F1E
+:10CE20002B66FF5877648B2008230ED7E178A54F37
+:10CE3000A589372DD835F5CD8E4B4A7F8E560E3AC3
+:10CE40003C39CBA5E42D2057FEAECFD2A580EB0711
+:10CE5000713969D7CC2736FADCE2C3C1D38ECAC890
+:10CE6000E76EB7D40A9CE5FDFA83DCFCC0AFE4CEE4
+:10CE7000F302D5F7243EB40E94898E8B788AB3687A
+:10CE8000C69066B276741391D779EAD019188F4597
+:10CE9000ADAB1F25B186020086EA94FCD6D5D7ED4E
+:10CEA000617751D87A7FA62E7CB4DF4D795C3D1F27
+:10CEB000B7C77B0E4796A5630E3F4F97B7F2968E86
+:10CEC0006DA48516ACB486F61368EA4F4D2DBEC727
+:10CED00013F6D959B2C54E38E7FDAE924B96B6C49B
+:10CEE0009D47B0E2E3CB6084ABE3FD518E4B3B85C5
+:10CEF00053D026197F995523878DF713C348962D54
+:10CF0000BBC83A82989A26D42A76819C19BD6FBDF7
+:10CF1000769923060802F5800302699E3F5F64B894
+:10CF2000C99DA5BEA33A71C97AF5C9C079C4743345
+:10CF300059EB29AD6E062E2B659E912EA57577C6F1
+:10CF4000A1C9CC338DA087DF335C56E7489B961E82
+:10CF50003F3EAD098F68D703B0674923B9FDC020B4
+:10CF6000894477BCFE886904D003C410904898FDBA
+:10CF7000AF76C1F7110177F76FF1BE037BCE5F6229
+:10CF8000D5AB8E89E772B40C1A7AFB85189F96FD93
+:10CF9000A224AFE8D8B9BC95F613C21EB3AC28C121
+:10CFA000B56AAD3AF0CBF47F90F479C4EE083ACC90
+:10CFB000229F0188C935E490BEE618F8A891DDB338
+:10CFC000E2E79A618819322D4E0EEBD12D8BCAAC57
+:10CFD00028008FE87BE0DB1B67FAE178CDCFB6282D
+:10CFE000C8F7F625D092C753366E74B9D7E9E7DA99
+:10CFF0007B06648A33ADD1AB1FB0D7155AB98EB555
+:10D00000A51EEA21D96285642B7254C7315DD7F21F
+:10D01000B000460D4A66DC5FF83415AFE1209D1B79
+:10D020002ACC12C07F15D3464335AD0F699DDF670B
+:10D0300062DC0BF459D48D45864C99552C7AA7F6B1
+:10D040001FC31168FF692F4EE75927917049D063BC
+:10D05000F020D0C774BFBAACF161C89B2295F8D953
+:10D06000A238BBE7617B66DADAF0ABC80DEB84A3CC
+:10D070007AAC8883D475A0DF442EA649802C7376C1
+:10D0800065D9AC195CC9A5168A32D29E472A1122ED
+:10D090005943EABD381CF9520CF8938C9E6F452118
+:10D0A00076A4B10442EDFEC0DD80F809E7E9408DC9
+:10D0B000973BD12D5236E2FD45E35518B393B33C6F
+:10D0C000CEF41751568981253F66D14C3910BADC10
+:10D0D000DD3DF896264C303420D4768C5DC36D7CD3
+:10D0E000FB85D1BE97C93CE795E89D98F89F9F16B0
+:10D0F0005802B9BCD8205F6DF795029FCFCAA77CB4
+:10D10000A54B77254D9DE3341B1A28A77D122E4F82
+:10D11000FE9D0AEB38D010891A1A6FB97140AED94A
+:10D12000D353A10266D2EF846AAB88831F2D682394
+:10D13000B2DE6101339652D0AEC193A3759E11D079
+:10D14000E9F36696C536D744FAF8774752B4B6BFC6
+:10D15000E8FEE7D083B43B18F3168916FF10448D20
+:10D16000B6D67C4D8943AE6D525EFBACB0EF3FDC72
+:10D1700023EBB38D0DB65BC43853A53DC444FE8E7E
+:10D180003BB7BB3AAB27D32E4AD9484509CB805988
+:10D190002ADEDA0A4F1A658105BA35978B0F438468
+:10D1A000C1B830D3B8E2C4C66CA774968D02F4251A
+:10D1B000A660631DAFE74301D6DED261183CC5CF40
+:10D1C00081FE7FDC2E51A8F5A8050B9A4B748D4B80
+:10D1D000FB1E83FFCA0184DD954436C7691A20F21D
+:10D1E0004D821E82281530D9FB26CE8330175B6610
+:10D1F000DE6F914A7E3CD3C4909111D3CB3BE06467
+:10D200002DA43CDC932D49CE147EE892217DB1996A
+:10D210009E2ABB3E6F4DB0F78F598D943934FBD0A9
+:10D22000E64E982FC889BF135E8509401B39F4AFBD
+:10D23000043419B685E914E4364AF70BE55E72CF7B
+:10D2400015F73832CC1E58DA8BE1943FC697697CCB
+:10D2500029637B1775C39C041AC7F41115DDFCF90B
+:10D26000AFCC69EFD7C8D6A02E18650A0855594E1D
+:10D27000BBD6CC6566752DDB512220907FE27512FE
+:10D28000A4B317E278FD649B98CFCCECA1FB89B9DD
+:10D29000BF828271263BFCAB4544BF2A4F52AF8D03
+:10D2A0002CBC600C921AF1F3FF99125B2A2A0DF440
+:10D2B000CAF3F61BCD185D22349591077CE140BD81
+:10D2C0002517546B567DBCC96C4326B4988E2639FD
+:10D2D000F79680EC8690E8571822B002EB14D55EE2
+:10D2E0007C5899D432F043351B66274EF94BC16EFA
+:10D2F000137D784597808F6470486560A6E7FC09C8
+:10D3000073A0E01B6AF601D7CFCB047DFD9BEFC075
+:10D31000D6B4A34725A0068B8F23237CE365582F23
+:10D3200004635472718298FD0C3D6C350B0334A577
+:10D3300084D0D9DC2F704FDF7CB4C613F0936A28F9
+:10D34000F4B7325BD12BEBC80A81031546CB5DAC39
+:10D350003A6DEA10DB7F3A4A06A022F7B88BD46C0C
+:10D36000B918782A919BD77C030814F7ECCFE7967D
+:10D37000312F3F98231E93C604D87E16250C220910
+:10D380009A1AE84564D5CE1021014D6615A8FA70A9
+:10D39000BD760B21F36CE92374525115CFD50023D0
+:10D3A0002CE10334A0C3EA643324843C3FA10B4A3C
+:10D3B000E31CBA18B9C4F144EBDF33C755AE57527A
+:10D3C000FD5E2D89AB8F8442C53396478DC4807036
+:10D3D000D1BF17C11B2F07E68D59DEB7CC3D7CFEB0
+:10D3E00017AE3E1F09BDFC6B9D1540955D1EE2D832
+:10D3F000EA33A326BAC90773F52F9DA47A6C75DFAB
+:10D40000B1A5FEE6341677D2235DBE27A9BBC6338D
+:10D41000E33D601B970AB219F2A9D7C39FD595EDDA
+:10D4200087FA6EDBC13F878E1FE5CB9C5A5527FBE1
+:10D43000DAA2E2D7658E09E61DCE4D2E0D6DEB7595
+:10D4400081E3DEF1664791C1524C640B7AF7C05913
+:10D450003E6BE81785424797738C93A6810A8E70BE
+:10D460009ED2D85FBDEEE235C8E9976EC41D6E64EA
+:10D4700083EB52FD3DAA65311F3ACBA86578D88D64
+:10D48000071CE326C1546F5449CD94BB2920BE3CF0
+:10D490009A6561DF3712D27971386525C9F2900932
+:10D4A000C394E98A16F62FE7FC34729720F2D6A5CA
+:10D4B000C9D165DEF4F21D53E91CEBA601DF40196A
+:10D4C00085DEAE8D6F6CA95471D91329819EBAD0B7
+:10D4D00051D718594BDB99A4CF2651CD8B883C9757
+:10D4E000626AD5DE7447EBF5D937DC69B7FBF27CAD
+:10D4F000F98F4F27B07AA0BA1063E25D15B7CDF56A
+:10D5000079E74D21B9F4C3B383C62FC09C66CAA086
+:10D51000B13D0E61C19CA1DADA64BC76631B1C6963
+:10D5200094AD08009217103529475500724D37AC5D
+:10D530006FC5B5BFEF6AC59F9980D7E04DB9CC7272
+:10D5400038E44A69B6229EC1526DE089CA2506D4E4
+:10D550000448A415768A060AC7A17A01467871099B
+:10D560006DA54AD973D19D6B354D4338AA0FC408B8
+:10D5700004320F1F9E75C4A86430C69273411B7598
+:10D58000436B2D02E74E424CD73673EB6279247F12
+:10D590002E1C15505E73801611275CCEA7118920B2
+:10D5A0000712497A7E8E0AF7F0D6F8260BD09B9C9C
+:10D5B000873E4392B64C1B81063BA08C06B9640B98
+:10D5C000F438AA32082580420CCA234BFFA0382227
+:10D5D000DF4F5422FD997E1B605ED29FFE5865315D
+:10D5E00055A1AFA502B1F26B9FF63728E74224E2BE
+:10D5F000A668C11B262E3F8B1E92B4B4D386619DB4
+:10D60000DF5EC0D256B30C4B882D1E5C237F9BB5CA
+:10D6100075B606D640E27662D622F30B6B8D49D7FB
+:10D62000A59FF539EE358C4C6ABA7793FD9F8D7ABC
+:10D6300012391EF338B022AA3434386FD7D3DF3F03
+:10D640003CD456181E64AE4F7FA1C456999F4840E3
+:10D650007085DF859BD30AD0E01BEC94077E73EBCB
+:10D66000715AD61B0C7D6F26D78E3DC5D96CBB1D5C
+:10D670007D5A7D4D00D61CC9FBDE92CD0F74F55549
+:10D68000CA91EA361A1AD506E6BA1073C91D48A41B
+:10D69000F1F3D8855F0D3F020AE216ABD4279F4C09
+:10D6A0005D52F1E1AFA1639C8EE6ED8A3B1C11CB8C
+:10D6B000512807202EB265A776B414477A4BC13D96
+:10D6C0003ECD0CA9A066BF47EDB1358BFAC7B68138
+:10D6D0003C3EF1CD08CE819888C7202C8AE06B12A1
+:10D6E0009A1F1C13F092DD053AFB2185C5031EC16C
+:10D6F000C889173F1693FF7F22DEFD056824672542
+:10D7000076C693685BC743975855CE6281ACCFFE0F
+:10D710005188AF056545242293FF674CE650C47BD2
+:10D7200010074E857A840F79E5DAC6C62433466041
+:10D73000808181FA11B78FDCEDCA099058C21AB204
+:10D7400004ECBD0C9D9974D1D437554BF97E4EF243
+:10D7500064630407A2964808040C544911BA2ADAF3
+:10D76000B9F89D78D97B0C63C4BC4B82A86E209419
+:10D770000C6502260BBAC259D40015615DEE4BE967
+:10D78000ED4672C430BC5F21631B706943D5F8E07D
+:10D79000DA8FCFD5C24A5AD17FE256630970F6B10B
+:10D7A0003DF61DCC80EA260B3CD945419C8B573871
+:10D7B0003D3DE1986202537DB6D1A767D1739A1CB3
+:10D7C0001EBEACB036AF1F8DACB697A312F885E481
+:10D7D0004C7660820AA313DE94653B683B4EDEE91B
+:10D7E000A2C2883C794E8FDFFAA97DD0385C80C018
+:10D7F0006CF1827ACFAB54B7C84514899B09E8C94C
+:10D80000BBFF2A730A96579AE6D1BC58708E60EE19
+:10D81000DB8CB793647D9681F324E63544C912D935
+:10D82000DCBCA0BE87F21D28387A4123E3B1751510
+:10D83000AF2743ACFFD6DD6734E6E31C2302F2CA10
+:10D8400026C708D9236B79531642E150B51773C820
+:10D8500010F8F156A94576EEAC0810B5F67C29FB18
+:10D86000F5C8B6FF01010817965C768EE748856714
+:10D87000574E274A38CDABAA76A9246B3CDF62E02D
+:10D88000ECAC1355D0A0EB8B89C6B4D3FD716AED17
+:10D89000B79345A6245C34870EBFDFB86408743F95
+:10D8A0001F27B07AB8FAAECC3C5D50942F7D7AB584
+:10D8B0008B3C651A941E3804B7844C69772DD66367
+:10D8C000669C77A4DB339B9FD63791FB846EE74839
+:10D8D000F3359B6280D0B5880DCCD4A949E5822868
+:10D8E000E946E528E4E38475B8E941C0664B006B7E
+:10D8F000CF81A90E24458EC16C02FC9BEDEEE7FBA7
+:10D90000D287D73EEBF2AB2F647CAF76178F94199A
+:10D910000FBE50F9E059FE808E5010C0452CBE79E4
+:10D92000F4F59CEBF65E5C5C46DC1DE784F4FF7A64
+:10D9300032E8DD98976482798FCA9032578A5B25E6
+:10D94000C2C479B1045CC13D5ACAE9870707713086
+:10D95000E3434D1C1CFDA0C6C9288B02CB7C13954C
+:10D96000EAC7528A4C179648C170584E96B029B7EC
+:10D970001499E62BB4E339E867CBF25D3BE050F055
+:10D980000347A32B782E25E21643D92E7A53314B29
+:10D99000D6DB7CCE62164200771288A0EDEC3BF716
+:10D9A000E391BD12C6F39867D945A853216F776FED
+:10D9B000007E2A8E31D13447C51C92637B83512C63
+:10D9C000F7358AC1D1A118C0F830300ABA37AE771E
+:10D9D000B7944D028C7A27ECB00847E3F38BEB2D1C
+:10D9E000C5775EECF2ECF8927422F5D637BC72E2A1
+:10D9F000D1AB9FCA8CD955D284846EFB35821E244C
+:10DA000066C9DB1D1B96F6F4270DCE25814A25BD80
+:10DA1000D79E68D93A56CA676C3CD3418862D45CB9
+:10DA20000DB5DE596F9DEBB5107A1F0FC1EE9DF756
+:10DA3000FED375FF0F4E2E4C4F46274DA9DC6A8949
+:10DA4000EBF3AE973A173D9FC6B83B392221C42E5F
+:10DA500038E97D5780B516690600A79262C9D2DC05
+:10DA600023F2759DAF41DE6EDA56E2B72A67C3181E
+:10DA70002E53115C1EEEF53EB6CF37483C81DBD409
+:10DA800011FF676A3061933320D73F4391CBE7277B
+:10DA9000DA3C35FA41E7770BD1F1F8C33F5D545FCB
+:10DAA000BE12F3A40ABADDF2408610C68B320478A7
+:10DAB0007875FCB768DCE70B84105599FFA336191D
+:10DAC000207601D1A0821223AE7C32BC5971965BC4
+:10DAD000BD7AA4CA2956BAF71BEB53608983481252
+:10DAE000C89E6D39FAFA85CE6D863845E52F1EDB66
+:10DAF0007BD7B16C0F93BCAF834757E7D3EF497A1D
+:10DB0000ACD42FDA3B9BA51443B449D83F0C90EC1E
+:10DB1000A00F03BE4E2F64818CF9D04CD2623F44DB
+:10DB200089C881C0ED3C5CC60D5CCDD317404FD495
+:10DB3000E4544CDDA74111E1DC227AB9A43C6EB477
+:10DB40003E67421B644E17E2CF38D265F901BCCA6A
+:10DB5000EA0C88C9010CF829F0FFFA79E7EE4900D0
+:10DB6000556A1DD6929765A7C9BED974654F83774C
+:10DB7000137160F6901270A43044C421FBC63D6856
+:10DB80003C5FD9287D42A7A2F0DCDCA15A3A9DF681
+:10DB90005F6D6C05B300A4B9E5925AEDB74D6954B9
+:10DBA000847532B1106C99EB41896E589618DF4834
+:10DBB00019FCD618143E3D5095BFF8700F55C14F53
+:10DBC000285E8613CD94DBE3B1C244873FF829C5B4
+:10DBD000567E3777190A562F3B9D7DFAB8949514D7
+:10DBE000D3ED26E22173EAC9AAD9F1909FDE820E15
+:10DBF000702CEC4D50B695B3E7F9632CB648B7BE20
+:10DC000006F89A27805153F118937F74D59847C628
+:10DC100082A8D40AF85FAA72281687EC4753CD076A
+:10DC2000F2B346DC4183EB32AC2E625ABE3AFA3D87
+:10DC300062259AC6D95D1E600253B29A7C0054D701
+:10DC4000E63293DC00B87CA1C689E44C73BC57284B
+:10DC5000094715845A27EB8FCEAEA79A72D30B28AB
+:10DC6000471820603C9DBD45643CC3B8DB6EACC228
+:10DC7000C727DF9C489E4508F9B329C6B36C23111A
+:10DC8000E53871329BCA0A2E112ECE7D34805DD4C8
+:10DC90000E6481A720B2541B02256C946B68E4E2E9
+:10DCA000529BEFCC79C6D2F61F08E43951C5026702
+:10DCB000316C1BB0E5F996D672007012C71C5E6419
+:10DCC000A5A38BC4D67692AF8E18D1081855401FE5
+:10DCD000BBD7055C4FF967295B869C4E3577982248
+:10DCE000C0E78D94F07CCC8E02CAB853A55C36D2C6
+:10DCF000EE8D20ABF8D9343290FF740E4D089A5255
+:10DD0000C0E8DF1159CAC4DDF31659D09013B8C664
+:10DD10003CBECB03EA58B068DC7894E3CE746E5115
+:10DD20003A330635185631AB72712245C8029AFB58
+:10DD3000CBBB0D3E1D6D7074F55F4B62B79CEF8AD7
+:10DD40006C30034DF5E090F93B279E712E60047F07
+:10DD5000C3B2E7800501A2C78DC503D99F9E8FFD81
+:10DD6000D086E2122F01CE42B0373854D7A2746564
+:10DD7000707CF0DF1CE9DE07F8F4320EF09A4F6E8B
+:10DD80006331070AEB6A9125EC8EF99092C8749D75
+:10DD90005505B30AAC59BD2DA34A05E605BB422E75
+:10DDA0005993501413BB8A0997819449C967298CE8
+:10DDB000801CEC2E2A343014FBABCA35E6E11CD6AD
+:10DDC000589E36D5AFF5DC8620CE26F5A245E02755
+:10DDD000580B784EBBAD7376A48DF9DF03DE263C7D
+:10DDE000EF3CDB5D99EA193CBB8BC487715A43E772
+:10DDF000AB7E51220A92E85425BF8ECB026FBC7CC9
+:10DE00000C23692D610FA324AB21D6DAC569F70174
+:10DE1000DC006EB646A02751240A66C2F18A4AFC8D
+:10DE2000E51E545642AE534A7C9C3797802389E1C5
+:10DE300091264B57A527826CC825E94E0508076F28
+:10DE40009D6154AD5AFA692888E620503A3A2B4829
+:10DE50001AE7401440A7743FB06E19EAC8AEA37524
+:10DE6000DBEB97556C96178C704B9001C49BD5BE1D
+:10DE7000A950C9FCEE6391F611872CAD8B6761AF99
+:10DE8000C63E39A7583A081874A4CE40B08BAD0DE1
+:10DE900063C7FE49A82545F88B13A84E25A448D58D
+:10DEA000E39D12DADC5EE0AD3099FBD8D70C33C6C7
+:10DEB000C462D4174E04A342ACD7000E2075E0B064
+:10DEC0009424EF566A1A163C9392389AD3E815FDBB
+:10DED00055A32A519BD3D4D03C8E04E7B22FD371E3
+:10DEE000AF290B7EC6CF1A5793510E201D09C63B92
+:10DEF0001039ED7D31CE5DA446D04F3A8C9061E56E
+:10DF000022883C2BE16C6D844A4BA7747879E5300C
+:10DF1000A3A5E6AFC326630E137C509C45DF691BA7
+:10DF2000CBA2BAEB296C87118EB669BEF9D5FCCDB0
+:10DF3000372539DB19556CA86F07F640CE64EBD254
+:10DF40008BB1006B6D3B7C77A7DF47457163D215C2
+:10DF500091071D5A0D62F799C2676F0B1BCD695F60
+:10DF60001E9AB525E9462A9D3E4EE02A8DDD2747BB
+:10DF700060DDA9225A3E382F229E9200473A75DF73
+:10DF80006C21F27C5B622BEFBA261E92D71DA99002
+:10DF90004F901EE027D9D5A9032C2FE905A49F6235
+:10DFA000B13814781AFB77806D73DF5534685F9B46
+:10DFB00020FBB7BD762EC18651C40E466242D725DE
+:10DFC000E1355B01FF789145248E787885EB868F6B
+:10DFD000068E76D35A7BD53FE255C81A204458E6C0
+:10DFE0008301DE0B91EBAEC372E7212276FE337A1A
+:10DFF000FD960D154568F1D32952687138D2DB4D75
+:10E00000CB28A630D9F38BFB895D5C11C0C9BDD587
+:10E010005609508B0B5102D47D9837DD73A5E4E28D
+:10E02000225D7D61BC6AE5D3CD41A0D2B120A98833
+:10E030009EE79426DD47F756CEB53CC7217BCC1A28
+:10E04000922D10D850AC2A4D97E0A74175C0B0E191
+:10E05000DAB5BC77AE7483D59926B22E6C83A3BB98
+:10E06000B0CEC89280887F00E2C6EF911A45A3AE79
+:10E070002736D8088B3E3CA920B726682DF1228C84
+:10E0800070AA62420DE826FAF0727826D2AD854574
+:10E0900024EEE1EC13C2802A75A3C11FD7340673A6
+:10E0A000EC59E8F0E29041739C606B2016E2663C0C
+:10E0B000514B0F0BA5D5EE58BD334AA8F88FD78426
+:10E0C0007202DA8715E48BE6F052279AA127672BB4
+:10E0D000B456081A7848A711F3D49F8732C2E46E69
+:10E0E0004FED3E4C27DBBB632F669444A4B229C19D
+:10E0F000779E95AB988E253DE14F7316832C1AD7EA
+:10E100007A9E383D8187ADE07C9EE1DDD4E552E525
+:10E110003622ABFF2A71299366CF68AF02109406AE
+:10E1200008D30FACB0B03C26CAD49A168F8AEDC380
+:10E13000F45CBB5CD839C97352F707ABE74AE60811
+:10E1400026D22E9770F25D2AE0AB1DBB24B0CE2301
+:10E15000CBF8DF9E8B01EE8FCB820A8F056EE5C078
+:10E160007B9A1B16AF5DA9035A9B343774D6DA78B5
+:10E17000BB1CB459E5BCCE593570C779A2346B9736
+:10E1800084566EDBD413C283E2DA69B51887039D27
+:10E1900034B8F890AA6E6936E2C033FCC6AF49368F
+:10E1A000365058BD4EC490BAF497EBAF4651B6CD39
+:10E1B0008249BA54EBEDE01E0F4B8BEB5F32656D7D
+:10E1C0005B10FD7DC7207290D921013657492FD2AF
+:10E1D000D9E251D2342D0EEA96052A5983D491EA18
+:10E1E000D44BE504419EC80D76672C06F491A9BB7B
+:10E1F000F8BE678616AD23D43406B49D64D2C4F746
+:10E200003A7A79DBEA8E45529162304F7A5D2E7010
+:10E210004AEA6C546F33DEFB758FE832DB43C19DF5
+:10E220005A77A1686A8C771206D4032C677E481748
+:10E23000E454C6C1843647C24497596B3284035DA7
+:10E240001981F912B2719B6B678537DE6C6ADF90BA
+:10E250009231E8FC8D0DCABD000903487D9EEA7A23
+:10E26000CAAC223876B916B8CD9B77C0CCBB05595D
+:10E270004A36F99BB0242CD1232A1AFA9DA1CF74D7
+:10E28000337EEFDE69F2AFD5B266BEB1BB01238B40
+:10E29000B62546772F0A88B40CCDE74EF9E1A9EDF3
+:10E2A0007DD819AED489B8904DFC3CD45B8595439C
+:10E2B0006793EBF63E97C171309DB794180657826D
+:10E2C00046A1B94A44BA2C730EAAED62757B05E6E5
+:10E2D000411FB470ACC96E74F7D6BBAF7F0E3890D7
+:10E2E00020A7DD7EE69069C7B624A85E445960B9D0
+:10E2F000386320BC4C9A42D13304A6550052F2D860
+:10E300007A96DCE88D2D495E18E3E208F4C3F183C8
+:10E31000B805D7590D5CFE3AF1D971B254E727B46C
+:10E32000C26BDFAC656F6726AF4AA681C8F8F19B68
+:10E3300083F5999E6A7763CDA1FD3BE0D9A16A4937
+:10E34000E42593E0656AAE8A9CFE120130FE0FE47C
+:10E3500032BEDF525DE548E13EF51B8E1DFD39DD25
+:10E360001089D13DB6886103A2DCAA9E29DE54A79C
+:10E37000FA29E0CE12F1B894CFCFF42BD67821DB76
+:10E38000710178B7A141EF7C4852436E7196A91391
+:10E3900038622CF777759975777D724AFE40B47FA5
+:10E3A000EEA64D55E8627E57F9C3E0FDA78B7F349A
+:10E3B000A350904D80BB672EBE4F70F296B4BF5DE8
+:10E3C0001AC89C95D1839C650A28D67DA288A5E1B0
+:10E3D0004239FD4F944AC7C39FC931AB3782186C8D
+:10E3E000F2C992EED98733765AB4450E26C846FD57
+:10E3F00017224B72B9F10E64FA310AA51F64532536
+:10E4000094EECFC5622AC5CB7D937EF1CFC9DA8D5C
+:10E410008AAC7AF21E0CB6CA03D07333624E7EC346
+:10E42000147404235754BF49A4BA8157C65FFB1222
+:10E43000F3EAA28564B61DF5E8F6EF385E62AF9D9B
+:10E44000C7F0B768ADB8AC08916D781FD76A0E43B6
+:10E45000EBB0BC1F8A3EAE565C656D663599CA5DF1
+:10E46000D8AB31FD3158000E70147647E7BD6269B4
+:10E47000EDD1A9BE0FF266ECDE237F476C5055DB71
+:10E4800033D62532C5FE23FB3FDD8975B2A663CFA7
+:10E49000CFC7CD0819CCC0445B21E2E026B65CBEF4
+:10E4A000FCAE03F0ABDF226688F90EC20611FD3B1D
+:10E4B0008C6CB4501BBAAF2511E8CFB95E9378E8E5
+:10E4C0001FBCA920A877BC9571CE9329BFF2738495
+:10E4D0007325BB8AD792F327754CEEE10E8B9FF51F
+:10E4E00077A64F857EAB4531BA0556432D372CF7BD
+:10E4F000B285F53A3E05B8C694C526E834708C5509
+:10E5000086AC25630DA8891FDE167F18FCE12B81E0
+:10E51000564A30A3DE3B2F7CE6BAB557E551B7C665
+:10E520002DD6909E44C6B420FE2EDF75802DB1D925
+:10E53000A86A05177B0EB47BADC15C4B7686FE21C5
+:10E540006C1FAA758B84C11B679A5BB4FF42066A75
+:10E55000E2DAA6F7CACC342E80A02B793A78B33F02
+:10E56000B20E060820FF20D77438427959B13B6FAC
+:10E57000967B945EE8EC1845A2C37F339E94656257
+:10E580003AC4BCBA08C5AFFE4561F90D22A1AE1967
+:10E59000EBF7FBF2595BC57E3778FFD8018D74EF3E
+:10E5A00077EA60B38EE1F6BA8EC97068B863EE5050
+:10E5B000A5146A37C47F18DF6F1443A7B38406F22B
+:10E5C000DF19F7796DA52760FEF7B983F473C3BB34
+:10E5D000EB046480CFDA8984B517FDF99E25DC6EE3
+:10E5E0008CD4CFCA6125D5B3CE97062B6A71AE56AF
+:10E5F00035310238CFBFC883735A7E19F1B0EF02AC
+:10E60000446ACB3EE7923E4B23D3E1479F76EE76BA
+:10E610002705F30C8FE66206E6660C2C45AF05F97C
+:10E6200085042BEC87D0512A9617B77144B7782709
+:10E63000C5EB78884244CB6BC3579E20971A99014B
+:10E64000D51D3F6DB301F8C70912073D86D6C61424
+:10E6500056CA275C648E2BDF0A129DA3DEF0DE57BC
+:10E66000F2EB2966643852694A783F93638BD2187B
+:10E670008F52C07E03CF7562A21B0EFB5AA550A11C
+:10E6800009EBF2E086FFE3CC7777065F92172B0B5E
+:10E69000E76CB23FBA115F655527D06869C36D9EBC
+:10E6A0007B2B8B351762E2093C2EBE7F77A7B69491
+:10E6B000231F3783CA82663B961A3824B71ADE7541
+:10E6C00099CF3280F0251AD76FB0F5E8FA89B249B0
+:10E6D00024192595237202472496DE1F8C11763269
+:10E6E00028A7CE92711A6A66D7E7FBF3B5CF94607C
+:10E6F0002E1EEC9CDC1FF28ADC11170FEFBB430DC2
+:10E700002F5B0724E40DAB680FE3A47A8658080D4D
+:10E71000AD914B4592BB78CBEF9642C07F69E98FB4
+:10E72000FF3D4040FD0FCB5759411FBCB3A7C4D19B
+:10E73000E1650A21E4C3B037B6A9771083FEB6932A
+:10E7400001850B7F6E34271F1ACDD54B63BE44184D
+:10E750000C2935EB83688EFE0587F8F50EEF57DE42
+:10E76000AA569C4E3FE900A94091490129859493FE
+:10E7700028CF5EB7DF38B49C82D30F195C90633624
+:10E7800009C5DDD60F24A61438CD605AD12E176ED8
+:10E7900059E94A73F87666783A17F3CB6501932AFC
+:10E7A000D04C67B82CBD5876338BED9C3D20D15CA6
+:10E7B00007AB9B491C2595FA988BC1439F8B6AAD8B
+:10E7C0005AC5AC4EB016BC3C4D4277F71C28EC7EC7
+:10E7D000E71E54DF53C0FC36EF0B64130456702859
+:10E7E000405B28C75BA751004491F0141BC69DFBFA
+:10E7F0005E091F68A795A01DC9F3B5743A95838378
+:10E800006944F4A1DB471F1CFB34E3BABFBFEDC171
+:10E810003E1917333BE046A1D4BC580860BFDEEB7D
+:10E820004CA84EA35313DAFBEE3BCE3A80AFB5C5EE
+:10E830003DC17AE0F8FD393B93E93E2471E83FCDD4
+:10E84000F059FFD5AB835D3ED8344722F55A4C0BC7
+:10E85000906B1658AD278E0253B1DC90254ADB052C
+:10E8600052C339E3EE72BE27CC7C75F1578F310B62
+:10E87000F79660F82412EE7E90F17E7989AE8426B8
+:10E88000F8AF92EAA3BA38D29E00348F2CB332BECE
+:10E89000E435C405A99ADC750FA0C476DC0F3EA54B
+:10E8A000F6F459E49EC2CCBD7C47D9DA9405FD85C7
+:10E8B00052FAF9C5EFA0015124693DFBAB8BF72D4E
+:10E8C000E84FA494AEFC800525677C7F2670B00BD2
+:10E8D0007DB52B57081FFE3734308BDF47DBEB68E5
+:10E8E0008FD69D5313B72F9A12101C0830C723825E
+:10E8F00024A994702DD8044E58F19296A664113A2A
+:10E90000AB0AC9861D8AF80F1AC4E61924737691DA
+:10E910006BD759EF2BC12D8E317844E0A5A3A55EAE
+:10E9200009D638623F570AA8CB41C962685B8B1F82
+:10E930009F4A369F7D777821A4DB1870742239AA0C
+:10E9400091FCD8669B07AF0AD09ADACFBBAF2A05F5
+:10E95000C3277437D791336304904E7AE2B3452AC4
+:10E96000833E40DC187111B4DBD727C53FD2CB25DD
+:10E97000BAC8C0BB92A77433E0721ED504DF10384A
+:10E98000D65691E296EF630CEF009A215566D8C0F7
+:10E9900003A5E9E981F29ED6E8C26D21AAC96D18E6
+:10E9A000F822B31B174353ABA29A3282D93018A670
+:10E9B00006CF4EC97B6A4CA1A9DC7AC2CE721B6716
+:10E9C000AAA0FCF3150065740F19394742E353AE52
+:10E9D000A628133A4D41D43D6EA15C0869478C507E
+:10E9E000A3AF3E62BFD3E05E09A7533ED8C560BB6C
+:10E9F000584953342C3E191CE211989F08A2F0622A
+:10EA0000B83214DCC0E18A14047F1762639FBA0A2B
+:10EA10000FCD34ACCA39489EC3B72819C55E25D37B
+:10EA20006DFFD5C69A23A9311352C833E4AC64B53F
+:10EA30007F25F92BB03C8C38CDCDDF84A52789D339
+:10EA4000E7916445A6FA170E8FA0F586BC96AFCE67
+:10EA500016C17CB4C2D7CC4FF34857238B78A3722E
+:10EA60005A37F970F4BF861C39982C599B68D180AD
+:10EA700026C3EA53B8210A928222543A91D28C6377
+:10EA8000D0E3559570D9AF3D2D0004F756F8FD45FC
+:10EA9000FE06FCD859015D9B9462608478567F4CD9
+:10EAA00008989013E0116C43D98401C68C678DC41B
+:10EAB00009C1CDFD93CB1EB36D75638AED0ECDA953
+:10EAC0005141BD4FD29FD7313A63F08C8186117F7F
+:10EAD000A65423E08668D3D6590C880D13E9370F66
+:10EAE000693D23763430EDC108C9F0EB175FFF2D87
+:10EAF000A3D2AF739F305302AC4032F0C13790FFC6
+:10EB0000714A7FA7432966244F00DCE90C04E04BDF
+:10EB10002FFCE096CAEEC5BDA79E039053B97B18A3
+:10EB20003978B24DBA00EB49D9776D33ADA33B6765
+:10EB3000249CAF5B03EA96A3E1134E7B6581714F82
+:10EB40000235CF18AEA14C93832B714D0C16D7AF65
+:10EB50009C72C09BF79DD7B1E2A408B67A63B7C098
+:10EB600069FACCE7DB2487FA1CC4B510F7AB81F354
+:10EB70009040F371D55BD89AE28BAC3424F774984B
+:10EB8000A7032BD92FFEFD73ACF15109A44CD2B1D0
+:10EB90006F43DBDFC74CB9F42351A6DC51FC526C48
+:10EBA00015E03BC0FA45588E91159FF5A0D1AC6E8B
+:10EBB000C4BA671AFC91BD8C3ACE9D64A31538C1C6
+:10EBC000C9813021263F78BA09C4D33C0A23D7DA59
+:10EBD000145BA2E36C204E784FC5E1AD32853865F9
+:10EBE000B92145A814628C4BEB81253829C76C7F6D
+:10EBF000F2212A041FEA60C2312A07BFFED080003A
+:10EC0000C2D71B340948DB37F295EB1943677D1DEA
+:10EC1000C4681AE6E48A8FF06B2BD908D8560DAF7A
+:10EC2000C1EFBCED7BE2C5CF79DECCFE8410F6B639
+:10EC3000D5D2FD353128C47B02E08999E5D1A83DC4
+:10EC400052994F66DC9352C593145FC0054FD2C9E9
+:10EC500098C263FB8046F21E9D3F7C9B807DBB95E6
+:10EC6000055F858E1823A55C9C5CA4FF59D33AC42C
+:10EC700027B5EA281E533E2F51A56E48C891FEF0D5
+:10EC8000E89C9C1D868EED8952AE2259D638079895
+:10EC9000A49147A28646A13F62F9DD5277A56C7127
+:10ECA0004A6AC39ECF22E172F08BC720B568A4A741
+:10ECB00005B5315DCBD326D9D56D2056CBA9569C51
+:10ECC0004FA46610DC201C5637F4B72B31F463BB1D
+:10ECD00039F779014AABDC76B2CD9205338851F52C
+:10ECE00009E9156BC99952BECAC2211ADCC7B60D13
+:10ECF0004585E5EA3103EBAFD1D172538D987FE7BB
+:10ED00005C5FF1EDAFA1F9B6B02BF9A5DBB9F671F7
+:10ED100085C7334A971B080F28EBDE5B3D568134CD
+:10ED20001CCCA0056F92FBDB55B97B5522D07FF13F
+:10ED3000FDCC89516E82C6C9F5B7907E67D0EC656F
+:10ED4000C453D61AAC19E0604146DC7767C9C17E6E
+:10ED500089B945E3D00D314A28F58914ED87E47E61
+:10ED600021E38DA9119B340A99D1649C92C5C921D4
+:10ED70002D7EE448BCFCB909D09993978385304D2A
+:10ED800045E48ACDA504DA77F563515B89CE7ECF61
+:10ED9000B041DED8BDA76D5B437B9BF00A3B7BAEE9
+:10EDA00000AC77EDCE34B60C1DF5BDEA27DF5188F7
+:10EDB000B36AA44872CD2BB50DD30C6253333F55C3
+:10EDC000B0646FBADA2B8F96F14BF58695BB2103B1
+:10EDD0008ACF1C044971AF1D4F23BAC565B9B6412E
+:10EDE0003011C8FA7239137A0CC91ED796A635B9F4
+:10EDF000E6E9C3A92414875A4812C79D3E49C5FCB9
+:10EE0000A469BD5146D4BA8D1C3BB45F51851FC760
+:10EE10008B0BC04B60F0DD6657C3A16CF72030D27E
+:10EE2000DAD7EBE85907F2610E3642A30676CF4DEA
+:10EE300020E86F066D0235878D665E3FDA5E1D63E2
+:10EE40004DEAAA2EF0083FD6B82F108D73CB10587C
+:10EE5000AD43CEBEE7539E547A9ADFA3B65561D830
+:10EE600097D1D862B8FFDB3F7DB9E5FDEDE0D94829
+:10EE70007A0A9527D95DFCC84615FA927AD11DC148
+:10EE8000224853E606D4C768E485B9D168C5CC9E4C
+:10EE900020D283DFD307A17624AC20FCFB0FBC007B
+:10EEA0005F8F0E2234AC98CE3F577B49FD0F6CB17B
+:10EEB0007D2DA60FC7C8505BA47C5D46AB3618A35A
+:10EEC000FFC2ACB3BDF8D5CEC7C4DDCE894B929C92
+:10EED0000CDBC2A25EF8F8ACD8F413FA55501C59FA
+:10EEE00037727A44887CE8F995A0257908276BDA8F
+:10EEF000A26DDC0CFEB1B6931828728EF93B65AB9F
+:10EF00000CEFFD1B84BFC7129F239CA04102DD674D
+:10EF1000D05CF15A2D391763F3C56F0C2B681E4076
+:10EF2000703EAC0B70D1772704D095A5D03613FA7C
+:10EF30002CAD5338CDC23504A5D65380E83D2226EA
+:10EF40007392D9B8C1B78867AFAFC4C3E509AD1C28
+:10EF5000A559412342946296C2822A528D32753954
+:10EF600091E2E02AE7573A422F5DDD93B57F4747AC
+:10EF700064F96D149A7E7C7822099EB6957906967E
+:10EF800054D70A1A802EB58D99226966C67058F337
+:10EF900071C7A2015117D02D4C1A31AE259B483FA5
+:10EFA00053B9FDADF98EA2E4E5B05550265FD4DE2D
+:10EFB0005BEC2667BE28B5F6FB265BD4F8E210545E
+:10EFC000E8010048135100CD8FCD1166668F128580
+:10EFD0000F19A59B0992AC04CEC2C9E8B0ABC2FB25
+:10EFE0008F6784E1C6D1623DF73249659580D2D5FD
+:10EFF000A6E2ED9E69627F7A6766624FB23B36C6D3
+:10F00000E5D7114493CD33A989F42A7DBA9DFEB882
+:10F010005C1ACB5259E922543999CFDCA8BCEB06D3
+:10F020009D224771B6BC6CF83FB99902E439ADA393
+:10F03000A86669122D3FF7654096C444961A89B4B4
+:10F0400042B4C3AAD6B5AA1B05A3E2910ABBD6ADAA
+:10F050001697988F25A33962FFD65A53EFA43ED353
+:10F06000EF745A0378E22A2D102210CC45F28F0A51
+:10F0700004EF32185D7937885CEBA77E4EFA861A6A
+:10F08000E3414F0F2E378D20A00E1E4D5FCBD5953F
+:10F09000A626E7B993F211096CBFF659DB33C439E0
+:10F0A0001FA7DAD866C3EF400D637159B432EC88FC
+:10F0B0003C0674E6BBE293479C6B51736198ED3557
+:10F0C00019840045327EEEF5E1E57280802DB96F3E
+:10F0D0001777003D2E5F9DA7C2B7B0D35E3EB51A2D
+:10F0E000FFE929F9CD221739C2BEA18DE547CD3EF2
+:10F0F000208FDF98B780F9B530F8EA33306E204EB4
+:10F10000D326AA20E1DE4980AF98634CEF377FA277
+:10F11000217290D065243765798175A86753C0DA6C
+:10F1200038E3965CC78586E7863EF37ABE88DA5375
+:10F13000849B2FDE185BB382698B4C23B17664A469
+:10F140003700086AFEE2251B90EA0DD935545E7B34
+:10F150006D404800242E37D1A393CA04A850599B70
+:10F16000374BB654CAC32D918EBCD8270D91C8DB3E
+:10F1700094DC436CA03729FCAC86A84A686AD5E6C3
+:10F180008BCA1EAC288188B91ACC271914236EDAD1
+:10F1900032B1673E6521033547B0F99AA5FB87FF79
+:10F1A0009959A40FFE66AFF93A57965B4A0551D0BC
+:10F1B00004CFC463477F4FF2AC675A084027ACE7DF
+:10F1C0003EEC98BEFB2B97072EA0AA9A785343D407
+:10F1D000FBCEC171DDBD596658C4926E1261E0026A
+:10F1E0008B628A321259E4243EF0829EA96F49A3B1
+:10F1F000BE3825407F93C95B3ADB731D889767460D
+:10F20000D757D78B2DF2EA1178A9C90C1E6C8381D0
+:10F21000C6EEBFA1DE4B6F25AA1A33D598547E7077
+:10F220004C36152012E633EDD4224003793BE662DA
+:10F23000049B2AB12D00F74EB7A462F0BEC6208A07
+:10F24000BF0BB5B6CCAF78BB4602759B58031BF01D
+:10F250003536FAD378C736D27C7802C32E44DFD94C
+:10F26000CE8FB743F545F941584FF85D843BF2091D
+:10F27000300F5DEDA5C5F17FB81B96B82C768C33A9
+:10F28000D8BC67300BB6A0B49DCBD4F408850A78FF
+:10F29000A0581710A680E05D7C39394FC7F77F9FD3
+:10F2A0002F57EB9704E5642D24A32FF013DDFDFA0F
+:10F2B000DD29E1319CDC297218AF6F973BA05FA17B
+:10F2C0005E75A816CA1D070544496A366EED7E456F
+:10F2D00033C3CA327C49B42C50CA8996C42FA1B713
+:10F2E000D75943CEC5572724E11821C6F5180D2F4D
+:10F2F000C2D7091BF84EA695E6839C5C99E11034B1
+:10F30000C269A098AA37F4EFA677B6FDD916A5244E
+:10F310003B8F53A3F3F4A4ACA284E210880DEBADB1
+:10F320003905DF58964DBEF47EECA133CCB93AC016
+:10F3300078A0191D90D4376CA69E157C1A70F3DA4C
+:10F34000C686F42B7DD9A44353E9C9404A0658A484
+:10F35000D5034DC46A9F206658137C9338D674BD7C
+:10F36000307A0215A82362B613A729DA865C5733D0
+:10F3700048B0A9B60EBF626B5C125DF07245CAB3AD
+:10F38000FA9DE13CD6D237F3ECD0733E08AC64CEA4
+:10F390005E7423A5C1F026FDA1957AFBCE47CC4132
+:10F3A000E4D748DE60C442BC222C5502783D50F3BD
+:10F3B00009917AC1A748779CF6884813AD747DFD02
+:10F3C000B620ABE749B75D8E66F99F8F6CEF79B4D5
+:10F3D00006C254B81DFA834DC82E50DAE9F79114CD
+:10F3E00099C74D393E78F2D35755CCDD3C9D390253
+:10F3F0002CED3520173F3C8CB83655EA9938AB4593
+:10F40000580B1CCB7048D93502D0D90FE76E50B1DC
+:10F41000980169E025DFB990B97ADC7D795987D305
+:10F42000B0065D7E37C6674D0B1A19A6ACB50286CD
+:10F430008B9ACE77571BB5695127E2AF586C660C93
+:10F440006C5B65058944A279B90703008C7803E4F5
+:10F45000E62402627FFED71202C5C4C36DE4661EB5
+:10F46000F4B5296D61AF95CA2230EFF8C4CB55C70A
+:10F47000D7C416FFC3BA25EC0BBD665FCB1B64D0A7
+:10F480005E1E64C9FDE64DA8856812B6E9B91A8BFF
+:10F490006FD67F86E160AC3B649FEECE0CC8DE5732
+:10F4A000249242952A8E5C12404885CED0563E0961
+:10F4B000767373F5CF2D02830225292E10B2E64212
+:10F4C00046341843E33B4A3102D9314FBFFF51A9BB
+:10F4D00072A9292CF1E08474D544A1CE8F1B52402F
+:10F4E000FCC78A5D50AD349EEA1A182602BE351E4E
+:10F4F0002A7FBEAEF63BEE520CDFE56A70117E6FDE
+:10F5000018D0A1CA58FD0C13B9AEEF205F5B36319D
+:10F51000AF4ADBADF7AB905FB2E1FE215345087A0D
+:10F5200052C2E81700B3F2999ABE966F0D177497FE
+:10F53000F0B9CD23AEF0048C69833C6821DD242A28
+:10F540003CA24F3CCA5D94907A4E9925BF70150F2E
+:10F5500032B5818E0601B77032B9FA3B8B8ACFED96
+:10F5600094947ED35BDE988F362415EE2A681EE3D2
+:10F57000B4D760D2C030D9ACDD3034A03E6103A333
+:10F58000AF2E7C507F379DCC0619401824F2BA8FDD
+:10F590003A24A4912608F0F8CFB2BA202D9976DF4C
+:10F5A000D8761E30DD8E38C82C159788AD7350E4A0
+:10F5B000CDA0AF66A93D8A963DE45247D6BC5B59C3
+:10F5C000D5CB3B8CE03D0EAE5269B34CAB154B2016
+:10F5D000B45D0C02955262D10E8F08614BC4E34DAD
+:10F5E000A91727DD38FD410552F36E45C115DAE54F
+:10F5F0003C1577440435CDFFEE48EAF336EFE7C714
+:10F6000077E7788F8EC62E8800D681A3DF8D368966
+:10F6100067E08667F5592E580F7C8C9794896A5E4F
+:10F62000682B66D33C707ECB45B6C870A907F9D26B
+:10F630004FEF0FF53792E415442E1F8CC55A687CA6
+:10F64000EFA2E44467745653FA828C8830B288E99A
+:10F65000DE79B5FCCA55732F06B26B46E5E31F464B
+:10F66000731AB4240919EC12A810E78CBAC94DAC6E
+:10F67000E6749F31C79FB309396735D3E26781616B
+:10F6800065B2DBF500A545F212990D6E6021C6B199
+:10F690009FD3720D96ECA55B16C31B2E125C8CF0EB
+:10F6A000489272142204E5FF8EA399989C7D276BE3
+:10F6B000A8791F1F9BDECD18BCAD47694B43517322
+:10F6C0005B4D09D39B39DAD558D1B4E64676547BE5
+:10F6D000A3B8E655C0B32AE1135BEF951B9E432AFE
+:10F6E000B6B234E594C8019CF2096E924553D2F645
+:10F6F000C532556C397B70196C916F3E1329872781
+:10F700005D0E1E8DDF7E6D5A38AD9499B6B3166BC3
+:10F71000AFA6D1D5A2293D3B618B3A9E925C38A41D
+:10F720007BF5828C9BCE89811017227BC7FB2D1421
+:10F730000DA102B51B6E48AA03967366256468BCCA
+:10F740000BBCBD958E32A1DF18D5C2D073F55DAA72
+:10F750000CF9897D740D7A71C826AED466D093F306
+:10F7600083E061D1EEA773921937F94FC6BC1E260C
+:10F770002C40EE18C3088193F9BEC6D98088D837CB
+:10F7800083C9B2E6A7B24DA10DA064E9D89B31B8F8
+:10F790006793BEE8BE8D710BB3B932B576EE0D81BD
+:10F7A00054A112AF4F0E18C00C1637F467C7687E0D
+:10F7B000E77902E18BB116760291781E0E5D05F4B1
+:10F7C0003E9662663AD843DDB568F266F8C5D74B17
+:10F7D0000D15D2F25C3A04D9E5FF65168681E6592B
+:10F7E0003B4C964FDD5CA5DB96805FF01C2CCFFB7D
+:10F7F000A3F4A8FA4FD774D227F3A3623BBC3D28E9
+:10F8000063C32DCCDC9542A6A2730AD2A2213AB8DA
+:10F810005BDFDD8ACB07DE813472AA728C8F2615FE
+:10F820004EA826E2C19B698CAA422B8332ADAA77EF
+:10F83000CE44AD48D12BD9FA570FF597B24404CB3B
+:10F84000A3A018F1865F57C12B915AAB782C6ECCD0
+:10F85000B05F4EDEEE22AA6F15AFECBE9AB5D91896
+:10F860005AF476A6B02A8678B69FB86EC5AAFEC8A6
+:10F870004FB65B0033DA72E110D1635DB332614B96
+:10F880006A70E43EB37B54A06BD9389151E315D52F
+:10F8900014EE2478CA016A03621313AC5292185C06
+:10F8A0003ADD0EADC0A938E09B1CB4B981C254F258
+:10F8B00043F88DA84146CC9D4FE3CFEF7F23FAB6A6
+:10F8C00066CE09BA086A4655F6397A5DCF8A33F0B2
+:10F8D000263C1D89B7653377B632E94B544609C2D9
+:10F8E0004AF1465ADB6DA9F2D1920F21544C506572
+:10F8F0008A684E4FE23DFCA672EA003AF21D19A258
+:10F900006D5316840058E1E6D0AFE7363516B5459D
+:10F91000B6197BF0B1E3511FC9FE96299AE25F0D3B
+:10F9200094A21C3D55CAB9599AFFB80C159C585958
+:10F93000D2B72200CB9E9B0FF202355AD0882721E6
+:10F940008A1C296FC54C6CE0597E17AA1243A9E89E
+:10F9500038952636D7348D93C3928AA7CCFB0D6594
+:10F9600076AD362DCBDCCCF4707AE301908AFCE2E4
+:10F9700042505D665559BA40D2AAEF945BCF66FFFC
+:10F98000B9274A50554EDCE7052E659C9F428732C9
+:10F990004EC5CD7A921367B5AF8C170DBEBD79EF0A
+:10F9A00085A51A97CC6CA2DC2EC7197DDFC903840C
+:10F9B000D336178BA7DD6824DD3D317C7D8DD6F3F2
+:10F9C000F357E14BFB284FB852E3D1EEBB34F112B1
+:10F9D0000FDE6A77CE7100FE67E2B89664CE2E1A0B
+:10F9E0004B9BA8F1A77052286371856DD8C27B6CC0
+:10F9F000447C8A36F653361082179FDA9D7020E8D1
+:10FA0000489C1290DB3A242C3753D66E57895B788A
+:10FA10000B78E26D2D20C950128ADE2DA596484B39
+:10FA200058B6B43F405B3F3FFC3A9B5BAE4324B9C2
+:10FA30000C5CD217D4F83BEEAF91CE3C0C3E7B92DF
+:10FA40009CC5C8C365DAB04A207E8C92B66B75132C
+:10FA500058819AD84166277EC3B93D85E867BB5C6B
+:10FA60008BC829872177EABD6A1ED262E5884D11CD
+:10FA7000795385AAEF4BD201835D5709C92D8FE0D9
+:10FA8000C11488FDCEB9A4E0F92D30F0EABBA9314C
+:10FA9000A9FF5D63925C3F6CA9ECDEB287A3AC3337
+:10FAA000D827E0900DBA5F90170DB925C994E77576
+:10FAB000EEFD3627AE215CF48AE52A698CDB8BFDEE
+:10FAC0002221C80AECCB9A57C89988B279CE34BFA4
+:10FAD000C86B8BAD0715BE5526F3A7E8F3857616E0
+:10FAE000D29DE9F278FEC9007EC62876441B9B0FA2
+:10FAF0003B47204359C05755549813ABED1E75A68C
+:10FB0000028648E059F405DCC3012A58596AF1BE5F
+:10FB1000C48DBBC25AEA8BD55FF476C8ED9A0A0150
+:10FB2000CF7E632E046DD45F059B96067366099F96
+:10FB3000C05E6D6D14EF25F1271B63AB84C091513E
+:10FB4000F800B6151225BE9716D788E4D9A61A7301
+:10FB500068F37D77D0C1BE19BD62312F017D7E5F14
+:10FB6000455A4A324C02C9023F02BED613C4EFF3D3
+:10FB7000185E8D0E9F9B6486547830FF40512D8D0A
+:10FB80009988D2EF7F578B61F6BFA257108729DA89
+:10FB9000051AD62496BCD8CDF8A0BF7B644E17AD0D
+:10FBA000DD32A7DE6EC753600714F96B23C780EF01
+:10FBB000A89419C928B1D415F6D8D628EA50E4D8A3
+:10FBC0001648F9974053E0638D619587104DB26FE9
+:10FBD0005B286464DA38D9DC24B8522E1B0775F030
+:10FBE00032BF60A48A472A5248D3573E9C4A2FB45A
+:10FBF00068F51D50B94F53AA1B5AE7E20884FDE986
+:10FC0000B94F2F62263E9A68231EEB3D484F12687B
+:10FC1000A5A514D329777AC2ECAD8EE3F02C58C594
+:10FC2000C7596B795386A35C95F59722E834D5A024
+:10FC3000D4367037315C3EC57E58C85032502FF7ED
+:10FC4000AB87B5C4751318DADF92C2DEE300A158A2
+:10FC5000F38F5D725D7EF6301B4EA35AF618D6FE0A
+:10FC6000CBBBA6944E1834896B386B870AE091138E
+:10FC70002D7670CCCF035E1C517ABC63ADD4A58BBE
+:10FC8000BCC4256F5B0920D464C10E33EF1A2E71FA
+:10FC9000DBD278EB8B512E346B9909495059295B93
+:10FCA000B3E07CE80BD127E11035CD13DC9DDA07FA
+:10FCB0005F12F6B49942548077DAC4DDBFC9735F2E
+:10FCC000CC5C101D8D0DFFBF37FF2287707E0CA707
+:10FCD000813863D92C8D5EAB29E2A96134E1EDCC8A
+:10FCE000BA88FE5B61EDF4BA930B4628F5772FE3F3
+:10FCF0009E7739590DC4921E4CB381238D7CD787D2
+:10FD0000F936BA1448D3EC7353DD4216BF0F608A3C
+:10FD100064581AEE937F756BF51CA766429631C541
+:10FD2000D323CCCBF12E90C827E2D96D5BB8221833
+:10FD3000E992A11AF451CC73B04EDCD2092C358271
+:10FD400001E1BDD1EFAF9FD28A5A2331C8FE19DB42
+:10FD500075DBC367CCAC1A56CC9FA48CEBB29B5A14
+:10FD60009031CC9F1666ACDB11734F5E865923F041
+:10FD7000A52293A2E27D7D04335F812AB46A5F628B
+:10FD8000C9DE2591F61F939F8259D6261258D6EECA
+:10FD9000A7531ACE068079F0C275941BA204734053
+:10FDA00041687B1B8C7BD0C5605E66D7B533A66E81
+:10FDB000580202D2955B9AB683AC07F6BCC529B04F
+:10FDC0002DBFA6382014C8CA3C834C72C6B9BB8666
+:10FDD000F87EB927E16E618AFD0320DE44863EE8A5
+:10FDE000EA0A8E2879E1F17827F4DEDDF6F15F1B6F
+:10FDF000A1CAAEFC17F6A560813DE379DBC0755E54
+:10FE00009D42D38FD7346D806EC283B4926B3DEB2D
+:10FE10000BD0865203DB1F3024070DEE2473A7BEE0
+:10FE2000130BA39D7A0A4F1E8F300EB15D774CB332
+:10FE30002408FB25755884323AAE4CE1BD31E0BD53
+:10FE4000A8371ADBFAC5AC5819C5467F663554E0A9
+:10FE5000FA98F7B9FFEBA42AD6ECB8CB3E7E8572B0
+:10FE6000FD8F93F2B87DA46978253CCB62AE3589CD
+:10FE700064AFBF422E0B8659F53BA8AB3DB337A804
+:10FE80000AD9FC67C38FC2A936C03EBCBABE97561A
+:10FE9000DBCF0A25E491CE4A1AC7B8223E433E90F2
+:10FEA000A5AD794FB812A9B558664A69D4C2D4DD58
+:10FEB000440D5A3689F51C5897205EA9763752337F
+:10FEC000DCC1200378BF0D9C75A54030F015F6030A
+:10FED0007E6819E7F7C6A393C5BDCC923F56D4956B
+:10FEE000A799E4A332A13FA0FC3C83DB6FC9294062
+:10FEF0009D75AC5946F1124585A04C3E444C64D6E4
+:10FF0000DBCB581750BEDFBA7E52521053D0FDF0F3
+:10FF1000D66EBC16A51DF6437D2A87CAF2CE65E0D3
+:10FF20007E80827B0D4B7606E23C6B7A737CF6FE1C
+:10FF3000752B516DF8558FD39C760BED8CF8693885
+:10FF40001FA701CC4494318233D40BAE416C8D3C5D
+:10FF5000A4ACFF2F68F42C9C183446B546B591D25A
+:10FF60005D09D40FF07481E5B6AF5767862E560F42
+:10FF70009327119EF4697C064442118258E10F13C5
+:10FF80004CD318303E72D0817EAB3C7A20F4FA829A
+:10FF90003AEF4643DD6CF59A4C1BF1571349813912
+:10FFA000CBD33C40B1C3D88598C923AB7DF55BE981
+:10FFB000237B60AD6B4E1D37CD50247C46297447A2
+:10FFC000B25FC47DA57D2934BBE9CAC32E08C059E0
+:10FFD000ADB38FD600FF140C4DFA31DD9C5B623C53
+:10FFE0000FC4CFF905FDEEDD0F9A0F3A7555500F8E
+:10FFF000FA88D0C314565780B851772EA8FEB3E4C0
+:020000021000EC
+:100000005598005C2C2EF59E3BE2CE95E827DBA1AF
+:10001000196D089331B216C44D1021B8ECE6FA4BB5
+:100020008B0064E6C3046961759983FFC83FF61EBF
+:100030005D2901445E962E7477401C0E2CF134E944
+:10004000A0887A8E5829A7AD9E36555EB1FA757F85
+:10005000C27A830EE95159A082F7194325B7A782C6
+:10006000929E64930C82AD89B1A070FA7091DA44CB
+:10007000C8D6F905AEC1E119EACE105792DDB071CC
+:1000800047DDEE039DC4D04B52888243536D144527
+:10009000A886AE99D5BF68EEC904B2E04C9E4ECB9F
+:1000A000E328D3F443B0D8A3895C157B2AD67D30EE
+:1000B0009689E72CA28200329840007E7B8EF6461D
+:1000C00000B34CBA23A07288BCD1DF6745A0C01A28
+:1000D000E284F0A1F80A95BA33296022F9FEECA671
+:1000E000FF9C792B12D27E50A60AE9353D77BF1FBF
+:1000F000A280F41F3F5C7BB66D1137DC73947404EF
+:1001000069685064949567B8DB204687FBEE31FE42
+:100110006A332314370CF3C49C218C876CED664D35
+:10012000CB82C9449203AC94D726EAE68E0871408C
+:10013000AE13489E1C9F2ACD61947E6CB819F515AC
+:100140005E5FC7A0BC3B19B40C1423E596111730B1
+:100150006A1C94135D64743CA4A700834AF1D59E85
+:100160006124E0F815242EC0838D68DBD8C10BED27
+:10017000D1C5495B8E9F30B8FF869EAD50BA406BAB
+:10018000D937796D72BD2DC239C8AA4AEB82F3F214
+:100190005A1036A91C98E6F9325F4FDC88BA114133
+:1001A000D67AB74D173BDC7472857C309E4E16CDE7
+:1001B000B725C42A44FA601A4D6182C9BFB06A5E8D
+:1001C0000113D1F30256C6385D8253B3585F9230A3
+:1001D00076FF39400A9F4B14AC901158EA39BC099C
+:1001E0006DDF0F1956203FAC0B1222C42977A2767F
+:1001F0002FBA866883C269B62FA59AC7206109679E
+:10020000626DD82CAEA50FD6CBB67C7E9594DAACB9
+:100210009CD8E7F31E09CE17D0F92FF80E8F19CA14
+:10022000CC24055998952D843CF2009D66FEC4505F
+:10023000715A41EA0F6074EEF8DFCFCC4848EB14F6
+:1002400091A031B38CFF8C199092F57A63EA5B8AA6
+:10025000371EF9183C3863DEBD303D392084264412
+:10026000D6AD38BCA8A18BF694B7003E6827081617
+:10027000527AE2E039FC064353C1C599F95222870C
+:10028000D4B6E9ED4C96DB3A723F39D2A73105D9A5
+:10029000DD90FF5260A8AF02550FF6F886D60642F1
+:1002A000C88DA5DFCC158D01B13A534936B78E897B
+:1002B000AF20DE62426635BE384731908BA2278E72
+:1002C000F076770587A2F38876DE1E49A8D701B2BB
+:1002D000A937C69107EB3D6285335986D492363AE9
+:1002E000091831D9E558B63D538979232182A38471
+:1002F00041FC045BDA8D2AEC10FF4DA353769C750C
+:10030000D929DAAABF2005CAFE33994E2E461CAF62
+:10031000E569C835DB432AB00CA4C1008A0122EA92
+:1003200088D85A128913B7DC6F59D5AE84701493EC
+:1003300058ACA7E5C45CC3683A5CF8E0C1FBA473A1
+:1003400086C22BF8CE6D2CE83A36C344C40A4ACA9A
+:10035000BABF5B237563FB2A92EF1F5F58E16C62A3
+:100360006F46D691CB9CBDEE2840F98EEF45BEC3BB
+:1003700060BD1A85C8CE2EC27B2D0876C238CE9EAF
+:10038000FD2745F7A58D42C4E058567D72CA6471B9
+:100390000A9973761C12B9545EB147FC3A7DBEA629
+:1003A000FDCB02175E8176D226F1B14C73AB0CBF48
+:1003B000E1623EB8FA97BD34D259078F705EA37CD4
+:1003C0009E3359BF0E4F75D7FDCAD7B2662D4380F5
+:1003D0003A9FA9CB1D9AFA359D1D04C8DAED653DFB
+:1003E00099067B8752D3DE5BCAE899FD6D9A6C153E
+:1003F000815626F556FEEFD79B27E6A905C93F573C
+:100400009F9A95232A009B707503A99D89ABD0ED17
+:10041000A0A8AD91615E7AEF4E6BE34B3CDDBDC7AA
+:100420008D67213BC57470A8B0B984BFC7E966FA6F
+:1004300024AC48D6534CE67C7C76C12B01A6D26412
+:10044000F72DBB193A79BAC3E988F149480000E5AC
+:10045000B4984F477114C9C2F44C09597CE90BA0F8
+:10046000D54AFB650BD082A3E18EFC1AF14C4BE51B
+:10047000E93952BF117E86DBB3EFEC0E85BABC5D65
+:100480009A09EF29FD04DE301B6F7CCF547EE28198
+:10049000D4B2DE89C09FD3E1DDD4F3DC04055CBABD
+:1004A000AA7A4447A6EEAB2F337EEB895CDEDB6B8A
+:1004B000EEAF7210668C3DD5124C25FBCDDBD60D10
+:1004C000862326CA84EB498F70401B4B4B445B50FC
+:1004D00084E015F7E0D8FBCCE7AABE8D0B136BBB0D
+:1004E000412522FAA96BEFBC12C30952D4EF1708B9
+:1004F00064AD1FDE781549D7FD5BF70A8EF9D95830
+:100500003B2167E7C81956B9C674188A68C160F8F4
+:1005100028CF2824FA799B46AC8E58F09A20F95DB2
+:10052000694CB27BE19DE0B5F017BF313671A8543C
+:10053000BF46D9A395666984AE51BEB7236F4322E7
+:100540007EF187BFCE8F2A356AD72728BA28555122
+:100550004F25BA93BB3B2D67F6DF511B81890424DD
+:10056000F5A37845A92063E38BCD78A6884C2EDCD3
+:10057000CD6A6B4138334A6FB260FB3B2CC2DEC39D
+:100580004E93C53E2B2435E8B11F00FC05621C6F5D
+:10059000C9EB6CD14AA90D8474D79EBF3634C519F6
+:1005A000A539BDA55421EF3E0555E584F1B3A51D40
+:1005B000FF9757C38E700E9673C700C8CA14C379CD
+:1005C0002191F8C64318B10936363FCFE85F6584FC
+:1005D00063AF61A3BBD258FC165EFE9234AED2115B
+:1005E0009FE9F6AB9B2D3D3C27162F5FBCE407A986
+:1005F000800906CD7F5A49F89BAF754D97C5BCEB76
+:100600002A5F5F46C87084D96EE829A701AA4AAF5D
+:10061000ADD56E47A05194F11057C19481DD22E110
+:10062000FBD4F89D7002521AB0FF5D8A4BF1FD9623
+:10063000CFAF556375728CD985377741E30242F0AD
+:10064000EE7F1016CF8D6B70CD3D397FF704884853
+:100650002AAF0EB50F68CE3E7FFA36AF7A7844C324
+:10066000CC4DD7111C9A0E8305E9627952080E3CD5
+:1006700054AC3BB730B5A133DCC5903002B8E2735F
+:10068000E39842771F81059CA7B89365556EEBBC34
+:100690000D768F1E7368B0B29D0F28C39454D69305
+:1006A00019013683E0FC540E6D5CE19842B92A4989
+:1006B000A2394FA04AF24F99432A66BC9E61A30D0E
+:1006C000312F99BE64EE8F37DACC4B569EBFD47F64
+:1006D000D8B3ACCB24EC3B6820494EDE1CDB188041
+:1006E000FFEA4F9A351DA88767221E29B469308416
+:1006F000ED30B09405B2663596E56FF519B3076E27
+:10070000D428D5E550AB697F0064B0288D65B74D1E
+:100710008DAC6EE030327401413A77A31EA878CBDD
+:10072000307699226C4114EE5776D42F79ACC94EAD
+:100730005C4D3D5A902F11B1F840C21E0EC140577A
+:10074000C6C8906D2D654C46B909D8815A2FF06CFA
+:10075000FC0C798442431C203CD01BDD5DD254CD7F
+:100760004AA0B1F5E5050C65B2CDF6D91DC58FDA05
+:100770007C0D68BB8C87752FAC3F7F0DB8F7B7F148
+:10078000FF642ED0396FEE1EAA44C7C14C8E8584FB
+:10079000D6C9169D19295AA15466E32655D1ADBE76
+:1007A000AD473A69C1BB6B7705BD5E97487F6FD295
+:1007B000171C4803567FF15CC87F025B8B2C99366F
+:1007C000AC42D1BA202D9E65F82CB48A0F607F6EA2
+:1007D00047853D286C281621061DB701143286C7AF
+:1007E000EDB6D0EFDA993D2777B83B0922C4DE2B6E
+:1007F0008DADAF489606D9F36334ECA6BDD9B7B634
+:10080000CC0775166EF8DB0DB1CA23CE68ECF489FF
+:10081000FC2BA29C147C733A55C5F522DB71B648BB
+:10082000986E9DAB9DEDC0DA65B43F12E3B527200D
+:1008300072D7DB2CCC0403E76CA7C0278D21F664AC
+:10084000079E76C3464C30C9E1FFC11B00F82791D3
+:1008500037C9F444BF84687E8FF24B8B3C2607A7D0
+:100860004A176A1F07C4D8B0387E35CE8A75EE00A5
+:10087000CB3FCF01A6A409702759B0C5AA868EC662
+:100880005A706F5BF1F3B7E68A2489F6F77951095C
+:10089000C9835035986CEBDB3E139170D1F7701F14
+:1008A0003E6E37D81C13772E0B1ABB7ED14EB55730
+:1008B000AFA0A8E590021B5B296B72810C9887E3BF
+:1008C000596FD4E73E9FECB2916681B101DC72179B
+:1008D0000C440B252186F7B454FEE2EBE7E09410BC
+:1008E000302B8BC5253BFB7279582FEBB18AACD9E5
+:1008F0005616A624BA2A8525495EDC161E5634589B
+:10090000486B684B989737F06732CDE49846F1CD45
+:10091000AF4933FC63315AD6D3F387683ABF980A9C
+:100920006556DFF0B0BC0CF27EB620936EE6F69A08
+:1009300090BFB01844C0A5EC039493AE07D37CCB12
+:10094000208D78CFBD6D2D93C1ACDA52F0B1A440AB
+:1009500042D3B17EC56642B77D99BDCF4C3A30F6E1
+:10096000282D78A9DC84EBE73BD80E671882A7A86E
+:100970009DF6D6292883B8EEBE6C13B35191D8AB3F
+:100980005F16EB7D379C4AAD9999707B0BEC23A1E8
+:10099000DE5AF01BFBD725DD29E6175D715BA11F31
+:1009A00014294CB1240267F66A4F3961B84A923172
+:1009B000C980671671DCAB791F82373E45C7157E4B
+:1009C0009982D4A2ECA39BBCBA3508F9F707C2FD03
+:1009D000B174E3E6962B4E3897576DC13D2AB3CBE1
+:1009E0001032E3FD8CFBDD0BD8B23C31D758BD395A
+:1009F000E58BC8DAC7E06A2D2284FA6A965C6FB983
+:100A0000EEEE9CCD5F1D24F8AC079F8D72B746F4C7
+:100A10006848A3A18E002E38FF2E067026EC125BCC
+:100A2000FD5225B274B0ADEB41F74D1406A63FDD83
+:100A3000EDB458084DB187ABC4876A7012BF7376A6
+:100A40001D92F1E8D0A0CB5BD8B7C612B9711E17C2
+:100A5000202A2A04326993AD9CEE33C8DCF6740375
+:100A600071F1ADA3EFCC0EB295E3CA4D71CE224326
+:100A7000F84F1B476B7F77F032747533C78129C3FA
+:100A800029F12CC9AC4D014E4A28DDE406D97F7905
+:100A9000F2A12DB37DAC14C5D05B67D1A9106476EB
+:100AA00066892F5519624C708079C7C8066F7FD24E
+:100AB000D99A31780EC2229C32E6AF6015D1975D8B
+:100AC000DF165EAFB070B6D2D8711BAF6B02D6B373
+:100AD0004523BDB66E7D93CE66D819F25CAB05E9B1
+:100AE0003441723C6ADEC6E9557AF00CD855EC0BFD
+:100AF00005CD6D2DFDA47FF887E6CF7053989894AF
+:100B00002D10A47F7FD98D826DF7D448F57E78941F
+:100B100053DA6084FF892632DB7293B32B593DE7A9
+:100B2000DC264B1EE10EC40B4DDEA4240F10F47A1C
+:100B3000580498269B726A5DB9A03FDC35F13B539F
+:100B400045F9AD344F10C85D0163D199A5B4EB38B8
+:100B500067BE38A84BC974132CD935F01C0BF0FDB7
+:100B6000634D36944065BA88EF229ED6A9576A5ADB
+:100B7000D06C5533B6A01E458B71599A0BC7D12343
+:100B800095CCBA9A479069984C60D84D6850B09807
+:100B900092D677DAB191F8636CC931D7B0FFE04DE6
+:100BA0003D0BAF2A1145393CBE0A6E406666AC95D6
+:100BB0000D0140F1A014873FAFDB64C2A584836EB2
+:100BC000A9DEF916ACA91CCE230C1821FA009D0E43
+:100BD00063D51E7C895ED25A20940DD64C5837D8E6
+:100BE000BF4993A44CFE0600DA82A8AAE3471B265D
+:100BF000872DAC784A598D172E63C8FB745DA6C942
+:100C0000D50DFCEC3BB4BDFB3B13F56408C6B3D279
+:100C100072CBDD8DC93F6C4FFC465759CF22C324A0
+:100C2000D5A6E392528ED0E96D7568303D394312F6
+:100C30005EE660CE134ED845D0992FAFF38615C827
+:100C4000730073B138A09B4872054E0612F046132C
+:100C5000B8C8315187C849C476542C8ECA53B832AB
+:100C60002BB9B0F08692A9AD56BE073204EA34E73C
+:100C700041B3376A9E37A85DD0FD9E2ED39E2AEAE7
+:100C8000DDD9BA5BB3C432F09BA3BF6D366D6FBDC7
+:100C900050EAF239D10F0A4A68D17E44F6B455823F
+:100CA000C097B8ADEAE142605806ED2DF42E7D857F
+:100CB000F75316F9B590A8CE223512557E34944FCD
+:100CC0007B9B1BAA5095DF2FE202FECD4C2639EA12
+:100CD0008A82E84625E4D37CB55698D540422A2F2F
+:100CE000054912FD86EECC839E473663686825C4AD
+:100CF00003D66FC3202D765CDED96B6D630B03F2D8
+:100D000053046406E514825E611B84021925A7184A
+:100D1000752009B4BADB1C1DD65A468436B0F96872
+:100D20007A7B1B2C2E8A753235DA229A066B5F4647
+:100D30009BCDF98CE4702D9C332C7D24C4316091C3
+:100D4000E7B3C512A840BDD3E58E7858083BCD77F0
+:100D50003CAEE7CDF892AB084380A43993C11D6641
+:100D60004146EB6B5019D12BF0A04281CD9BB34E85
+:100D700089E5C53ABB6B593D36137EC1221B18B5B8
+:100D8000C96FB27BAE30CAFF49AED0DB95DD3E10F5
+:100D90002AC2CF2BF213D3AF0C78E7718B7EBE86BD
+:100DA000AF298E26F1D65EC1D7BC6082A6BC5D4558
+:100DB000CA20114B220E7C76C3495D695258D8DD9A
+:100DC000C9EEF8309C69747ACBE80176A18DEDE626
+:100DD0001C94CC728582DF814133ACDCDB756F0CF7
+:100DE000DC6C85B461E6D1B197FD2F30934B066181
+:100DF000BEADC46FD4B11FB173965F7529E5FBE733
+:100E00008EA4736A1D695FAE6522E922B81BFB7E62
+:100E10001F2AEE699B641965594189F00913874AB5
+:100E2000AE14F465730CFF34354B25546565A4444A
+:100E30009767C3D04E61E210B4DF07C70182632910
+:100E4000E7B620722460847F74D0E12562941D1D72
+:100E50000197F0644C413F8D85822FBD8BF6ABDC52
+:100E6000EB8230A2CF7DAC04D673DBA2005C36618E
+:100E7000D5878004BB4CFE0C8C2EF2AE48AAC182F2
+:100E8000050F738E9EF00875328A22637C90B01530
+:100E90000476EF26604633DD79EFA76079E5E45408
+:100EA00093A3063F32491FDA77FA1FBA3F16BEE511
+:100EB0004EC1D1A870DE0FF3D2153AE6A3C0A3BA93
+:100EC000E092102E34D4D396D951C2BCEDD623AEC5
+:100ED000691BA9882B410AD6EA07753086D6278672
+:100EE0008D71C18C9585D8CDCB4AC7B81CB4791506
+:100EF00006A1740E7A3E50144D48856DE82B2BBB2D
+:100F00005698C3559577364B89FC0A5928140BD04F
+:100F1000E96B6D77D452CBD3421DEB5874134DFD62
+:100F2000CBB597DB8AD2FE3D61694944A5B22EB1AB
+:100F30007E22A016657653189487AED35C21D4E444
+:100F4000B28636F4566FC286415EFA79A26FA478F3
+:100F50002D0168489EC49C0D889D5BF758E9A580CB
+:100F6000B1227DBFBF17F53D52A61999005808C0A0
+:100F7000CBC7DB21B078B9F773A01C24F9F97DE168
+:100F8000A175D9BAC0C1F8FD2901AB3EA372D8B88A
+:100F9000E87934D19099D7A25B138B9ADC3566FE41
+:100FA00078AF8EDD14CA85C9020478E30770244641
+:100FB000E7BEC3C97533DD045FDE74542B3C9AE988
+:100FC0003F50A5A5D272E99B4230F39059958750C6
+:100FD00061CA923D925EC332E60FCAE969FF289565
+:100FE000361B474D7778AD35FE1B59594C68B09A82
+:100FF000C125FE46AE54F16465AD014B43818E00C0
+:10100000C3C7E4038B451E0DB6B426CC78AD576537
+:1010100051491CA113FC3AF0D94C0B98477BC251A3
+:10102000C3B94D32B494BB4478AE261EB2462A6A88
+:101030009581173ECA65F85F67CBB853E847C96327
+:10104000CEF688A09F85F44DD20C1BBBB9887A7070
+:10105000E1A2EA0EAFFC26E8AE25FEC4A93FB50C1E
+:10106000950EE002A6AB377C1D0498EE829E821896
+:1010700093D20CDA84686BC89D3DEEBC4F66821437
+:101080000D173916E3184C71B3796FAB0E023E8819
+:1010900027C4D9723CDF85B3F5B9BC805F7971D2C2
+:1010A000259AA0E5462E860A7C660BB6F567810E6A
+:1010B000B43239C79F0E69F14FE7827C45DE72BEBC
+:1010C000DA43721DDB64A26D4C5D2407AA015AD677
+:1010D0006A53EE9CE4B99F4FAA00978B5E510E595C
+:1010E0001FED4008AE21FE1CBE34A566321B96687B
+:1010F000498A34CFB4D1E2B0E538245DEFD50CE6AF
+:1011000065219594F41C648A144DB2E89F5C9D9C03
+:10111000D362B770B0845D3C3D1A90CCC88EBDAA36
+:101120007B71FE3791EFB10A685D3C360C20432E8F
+:10113000F6D12BC8C6F859B010DCB39F45825E8B40
+:101140005CE8081E2D28000A6ADB410C11CFE4512F
+:10115000154931117F3843D266E974C12FA8626402
+:101160004F1F36CC6528DDC047418C40FC231CE274
+:10117000FBC5981FE738766B29A5617736C3CB1777
+:1011800055363261B6A305A5DD70C96669AD788CA8
+:10119000186FC8CBABC738A3383E84FEE043EF2DB1
+:1011A00074B9370AC5746715A44429DCB7E7CF6161
+:1011B000D41EB819E35D4357075F5B9A07FFC7B2B8
+:1011C0006ADF66BF4086E652C1B3FB027519CAC921
+:1011D00041E254CCAE1B58ABEFD3D39054407C7655
+:1011E000BCDA21CC576A43BDE3C3D7D26889191B47
+:1011F000AD60C011343A336C650DE9FBA8C847599E
+:10120000D7A5B7224D64EDA4EED870C39E7006E258
+:101210007BE13EB93CD7479F33696535A15D2B3CE7
+:10122000FF34B556ABE35668FF870D7EFDB3367EBF
+:101230006103388E75D58D7F85C5B316139F8302E4
+:101240008748ED6C58C5D25A3752D0297354A649F5
+:1012500057D216CABD1EED2AC7731D7E2BB4FA4A9B
+:1012600007308CA680D91014E43AB94E0B561B9562
+:10127000CF6190C2E751D496E0D0633ED42D83076E
+:1012800022B03C67665FCC198FA04619ED0D655CF6
+:101290001F9A2BA58DD57D474F9E844F65C7A79F6D
+:1012A000DC082DAAD7E65F8443744824252299B828
+:1012B0004485AC2431DCED971C4AC0C44904EA6B78
+:1012C000310F0F83374008DBCD171F7556539669D2
+:1012D000A97CEC6AB3183960E25E6DE4A2FE3D754C
+:1012E000D6BBBEB213D253BCCF1209C6353AAFBC7F
+:1012F0005002D90ED1A3DA5651CB807785312D9C7F
+:10130000F32C1F41460A9AF6D7E5781C22E772971C
+:1013100089792A4FE30DAC3000045A205C4FE9CAAA
+:10132000BC4EE3057F491F56716A5CC5BCAF3EC326
+:10133000CBA898E46E517CC4DE48EEE12A7EF484AA
+:10134000314BDBF9FDB337A052D92B33E73E205B9D
+:10135000C70C203664D193AFF9F8756662A96EF7B1
+:10136000283645E31D5746C361E85B67978BABF7AB
+:10137000653B9CE93B58A9FD15956B6B0397AAB299
+:101380008B8B31676CD7D2BBEE0AE28ED7E47885BF
+:101390004F3E173745F25A264BE7E83437AA01F695
+:1013A000B88BB2331D3CC4949C38E70808CB89F352
+:1013B00002F2EED5150E9A9393A3FD8F56B1F27AF1
+:1013C000DF45BBA0114C0E291A6737A9990A4D01B8
+:1013D000C25BB0C8455FCEE61A26E0D5189BD33570
+:1013E000861BE44940A5D6B0958C5DFA2D6853095B
+:1013F00009E3432A83AD4E357743852804EED0C3F5
+:101400002CB2778D84DB28409A158EED016FF4EDB8
+:101410003936FE973C893E72F386BCAAA33BA148AD
+:1014200049D672A901FB4AF79885F0783A9B01A545
+:1014300040E00E3FEAD4990F1E74DB87B79B1F93E1
+:10144000D54B995B62F302809A018272214DF104BF
+:10145000382C4484570E08D84087DC157C0F912522
+:101460006FB9CCD7512F8BFDCE8A5FC7A4B799A493
+:10147000B7C70627D28A49314CC6BAF5C6D093ED14
+:10148000B4CD28A02CE48FBC559326AFB636BDBF93
+:1014900037EAC805966013F9248524B26D95ADA787
+:1014A000B2B09842ED66823E9C4F5592CA36D66FD6
+:1014B0000F0C90319B5FCCCF261339BFE4186756D1
+:1014C0005E25530DA646D0FC9EE44CF3DA90645F93
+:1014D000154DAB034911C9FA976AA22C5BBCAE1635
+:1014E000E7CBE31551CF30CC93C36CB276A7D70CC2
+:1014F0005E52F7465F1972B2538BD0D238C9D810FA
+:10150000A36E17B8742B945D3B5EC0FBA23D2F61A8
+:10151000F68CB6D99283EB7CA1D202D711E0386F5A
+:10152000B5C2A7A0B6A50A6541AC5193D006CAD2F0
+:101530005919E6BB7774CB5B2E1EFA546BF8AA0AD6
+:10154000F31E6BDD237350E39DBCB15BD9FD3529E0
+:101550005652274231F58C69E3F13301AB30FCE59B
+:101560000E5610F02328A382481F8D9CD2818CFD3B
+:1015700043B4613E1E3DD0821C7D82A3776EEE1483
+:10158000C17B032363EFCFCB35787A3D247228BB30
+:101590008B720B957C2EA6B7AFDD6236F71FD78016
+:1015A0005E31C04DE189A098B23DEF7C4DB75E1928
+:1015B00091AA434A9C027AB67CF8C045481CF23492
+:1015C0004DF3982ADF27C393C2A32C32EF6B08AFE9
+:1015D000DBEB50C86E77C0342B6C0EF56DA1ADE916
+:1015E0008E5135B5301060FDB34B03E855441E9B5A
+:1015F00054A7BCB1E63DDAB5977F2F9EF35DE50DAC
+:101600008CFA2E48572A69DBA704AE61EDD90D5F2D
+:10161000C14E5DFBEEFBC00B1550DF4D73F19DFB22
+:10162000016488B3259E8EA69C8BFF03213943312C
+:10163000240633F8C751DD4664CD5B875A8D5A1BAB
+:10164000C61A90ED9B098188183573784676603408
+:10165000D535FC260B0044ED38EC8E7DB28AB8AA55
+:10166000A468B667ADDBC226A64CC6A44EAAE8E6BF
+:10167000244FE2B8A9287918FF79A5EC295AFC79FA
+:10168000BF1C2672E990BC2170E7F4ED4A741C522D
+:10169000DEBA1EFBB54CEB6C9BA6F5EC02B1048ADE
+:1016A000DB0BE7114C993BA5E07EB5FAD9B5D64ADC
+:1016B0007E804B504C2D587B8BBF13C17AFB038E21
+:1016C000DD939D07515B31F0CC4361AE7DC0591471
+:1016D0001848DC49CBD40AA2BACD534E48C3AD5901
+:1016E0007A66DFB2BBE842B81663531EB0960B3F72
+:1016F0002617243672A9D73528546B78DE9466F203
+:101700004F64A1722D415E5F21222AD1D4C64BB213
+:10171000CEC31ED44DEA7F43818BCEBDC8619903F1
+:1017200017DAE00273DA63CA1AD7ACC9BCE85AC543
+:101730007ECBDB450EF00373D74A67D3E9DB8C66BB
+:1017400080582904C58087F05FFDA11B1C50093F0C
+:101750004DF6A87EA1CC64BA4FD7E191CA82067932
+:10176000A2984AB3D6B28D885C8342D0016B6340A5
+:10177000F75FE42754014B85B4DCA69CF2E07F00C0
+:10178000FE6F2F82EC59CEA5D810664483FE38F246
+:10179000B00DD5FE4348B95CC92CB8D25A3DBD2224
+:1017A000DB8DA4B0FAB66795BF228ECEF3AC7C6514
+:1017B0003466E707280388B264212A4C00FBC4DEA4
+:1017C000557504E930EE379B53324D709AEAA5A067
+:1017D000EF937B13C9886EC3B9792F3285FB4463BD
+:1017E000873C6CD814E33E95C7495A4AF2B1F8E0F9
+:1017F000ED071DBDB8CC176F1B03884BEEB907C1B1
+:1018000085C7BD8B4B07900A6018E9AF75BCF3A87C
+:10181000DB0C5BEA17813ACC53430F5ABA3EA90E50
+:10182000D9663D7F33DF437F392CC50A169C931D53
+:10183000BA904D0B4D74B039413432A8D0991B5F2A
+:10184000AB1C4462CCDE371EF0CC5811FEC62348D8
+:1018500041BA4EA1AB237F109B29022A7A5900D2AC
+:10186000BF423B10304A169BDCA092C14B1ECB2BD3
+:10187000AECA53237175239F55D879C3159B22D5C2
+:1018800061F578CEDAA3324547B021F5A642FBCF09
+:1018900014B2FAAAAC4DD7CD44AE333343E7B5C149
+:1018A00020E77DDAF5D57E90B7EAD60F75A261FF05
+:1018B0007D9E182F5FD66D83EE86D0AE878495B956
+:1018C000657C02738E3E80A73F2F8EF0251426C5BF
+:1018D000AAEF3E609FA0843B53AED4BC7178893D93
+:1018E0002CA49CBDCD77C75CA5B2FF7D19A6507E08
+:1018F000BDE5527A65B669BB0015BBD82B78D579A2
+:10190000F1BD2EC0B599D6B99EED4B222DA1EAB2FC
+:101910001195569742829ADD0BB1B543681F9C3AE8
+:10192000952CBE4AEC45890A00737BB4A689309297
+:10193000E29A693FA272EDE1E8574035BD5F03E3EB
+:10194000E03D2946581D0D5B3DB866ACB7AD853A04
+:10195000A9E4E6D7832688B07B941D25B40315C976
+:10196000833B4E65E458C15E8839BB1A1A8B1B7ED7
+:1019700014B7C456205BD1B4807B945BF37D709D1B
+:10198000059CCEA13BF88E1BE9617548A4097787B9
+:1019900041746B2BA14B96DFAC48FD8BB37D346457
+:1019A00037733F62BEADF74902A6C9C43C35775BC9
+:1019B0008C8CB3EDF864D0B8687EB2B6A4CA4D0181
+:1019C0005091DCD432F20A536D50B014DFC1F69B53
+:1019D0002E9763F8C52578146673903508AA1F51B1
+:1019E000560B47D09CC7239B5D467DA4A059D5A527
+:1019F0006382FBC5CA0EC943586A783A1044288FDF
+:101A0000D7C884E4F45C2B8008743B4F68DE448BB9
+:101A100050214285FD3AABDF5CA6C65267CD3AF94C
+:101A2000F446D14FB6A028D3422755487F6FBC4C0F
+:101A3000734C2D2803D4361BD32A934F099478FD79
+:101A4000BDB0CB3BA108FD9C16D3FB89E73283E5F3
+:101A5000CE6109C0FF985D5527239A0EA8A86E7A1B
+:101A6000876F6583BFBAFAAB628011D9DE907FF3CE
+:101A7000C6A4B50396F85FC2313881AE45DA389B0B
+:101A8000C0BC3C2EF02EF3DD38282568F9DF767FC8
+:101A9000ED062AF3835A533CD0B20777BC8C367CD0
+:101AA00049A1AFCA324F3EE0DC8420DD05849ED0E0
+:101AB00012E8F69356920694B18DDA820BB1AFA874
+:101AC000B0FD87E3765730ED338E994F92044A8B01
+:101AD000C1F3E43CF00885E6334943BB9C7603AD93
+:101AE00065AC1605035A57B14F4EB1A6A96CE5DE99
+:101AF0009885EAFB1FD4A32FA2B6B947CE61FC0B91
+:101B0000F36E9C53B3CA5396D22A01C4DC95CCCB56
+:101B1000A94E9669DDDE357CE3918BD30C36BB8014
+:101B2000810286EC7D82D0944AAEA0160B06208AF4
+:101B3000602A441F1A2F517394EBA18D479EF8FE23
+:101B4000256704532247DC97BF6F92694BC9156D17
+:101B50006867329AADA3013E449241DF44E87F0EAC
+:101B6000E6BACF6D19E2969791A46A6FAC08DF8F41
+:101B700049A440D44D8CFC1CC20B1B7AF82FCDA37A
+:101B80006DF3A558F1E9F1C4B593D36BAC145216BB
+:101B90000A6EBDC9AEBE375BFF749AB836B5665BD8
+:101BA00088746FB0459C287DC977FA3B2FD046A03A
+:101BB0005770A290DEB4DB96F5CD877900B5286A20
+:101BC000609037E000C80DE18C5B8EC624A4F6E57A
+:101BD000149C5B9ED327E4EC9FF56AFFA95ED4FFBB
+:101BE0004FCEF5152F3BB6602B7CCC22268507B94E
+:101BF000004B9AB56B43951AFACCA8427B68FF95C7
+:101C00007CBF4F383A8D632487C8DF458A02933BF7
+:101C10002ED75073A78FA7152E02F2AEF29679E356
+:101C2000DEDD99FE736F8F4D1A16853CD7784F0F06
+:101C3000229562F673058C8A618524DCE9AA8A996B
+:101C4000FC7AD7D5321393779ABAA91D8B7116B245
+:101C5000FDE35B35BA34E51A981020783D027173C4
+:101C600042B53C3E1DD3CF6B784F8360E90BBE611C
+:101C700091B2DAA89C28127C3082A5046A2D45C551
+:101C8000AEB1BBF24F4A30C1284F3024FB4BB66E89
+:101C9000457F98E942A8399B46C7D710B4388D4E86
+:101CA000F92C8A534051874ACBC81EEFDE9AF57C47
+:101CB00082537EB184D55C6BFBB8A7BC415F18BE74
+:101CC00080ABC5DFF5E88AE82231DB9E89010D9DF6
+:101CD0002BF280380E1CD48D8581F94039432CA31A
+:101CE00062722F41E90A1DAE30F28B5251BF48C0DB
+:101CF000890EB211EB531791116C8B282C7998DF58
+:101D0000BE55816F9A07411D3985A0C1D77DD37B10
+:101D1000C034598ACD75A9AB5BFEE78D54EC358B89
+:101D2000436000A23C16E512DF903C59E4FCC4B8C5
+:101D3000655FD39AEFF50E8A4730525E599AB00D1F
+:101D400002B3108D62B5BEC5D5CBF29AF1C89D9293
+:101D5000FE752801326BA9407D4BFBB09470AE2D0F
+:101D6000B7BA8CE42ECFDCDD0C0E4ED01A67E61825
+:101D70009ECD45060AB9681EFD9CFFB4BAEF2BB88C
+:101D8000AC6661A5EB8D5B779D3A1FB10ED3F04039
+:101D90008BEE3E679AAB1EC6F61D09DAA65CA92437
+:101DA000EB9DBC2D7D778974E129060A5E5F845422
+:101DB000B08116123FFD765E761FC5A7A48E703ED9
+:101DC000601FB6F7530545F5CE95499281FD1C720B
+:101DD000A814057B4B24ACB0C822F18CBEF154D0C2
+:101DE000B44541FD61CD11A50A832B7890A21B6CEF
+:101DF000F3237390C4EE31998FD9E5FDB0A7F15D5F
+:101E00009DBEE2AF364D858A36ED2508FC089B4322
+:101E1000E79A99D51B174798D9F6A1E722AE27650F
+:101E2000B4996324D5B3DFFFFE217AAE8A95C71239
+:101E3000BB67E4AF725A5B1AC2E82A91EEEA5522F8
+:101E400094F4FF293B98A4D04359116771B6D3028B
+:101E5000D4B18101365F50E75ABA1D1DA282CF0E60
+:101E6000661BED1BA11E9CDD070AE3A3E548DBB062
+:101E7000FDAC8983B4D8D865B4A141717E12A96143
+:101E80000DDA6FC44F117016B4FA632272C4A562E2
+:101E9000995A7FA402B22798C5653EB5AB9B2CB872
+:101EA000C3835BA0F3FFCDFB6DA0EE705E10F07AF4
+:101EB00027A9F08CAC686C89B339083020FB4295B7
+:101EC000DCF51C46D25C6DAEF8541596BA7A78648F
+:101ED0006EFEE98B0EA4D224654A938718DCD18D5F
+:101EE000B66B9CB159ED4DE33D69E4EA069DE1F026
+:101EF000974FE62FDA645B096D771B904237716765
+:101F0000EF7769755E013E3E6CB1D73F4D3B683857
+:101F100047B06F7A7A79D44CFCD0FF45839565DD64
+:101F2000734D84CF8076745DB44341F147F37153B0
+:101F3000CA4C33772C2EF58A07E33686EB7FD5FD26
+:101F400073BE343B22BD1A2F20FFE87E39DDA6F197
+:101F5000274B27A969188D6A78DCB2BCCC37CBC572
+:101F6000B8637EAA93E1B524B3731C3E614BBC9267
+:101F7000261FA26BD50ADB5DF2E83F7D9C1EB0F404
+:101F8000835F04976CC8DA85863F4EBB02FE0A94D5
+:101F900048893B7DBE4DDA2B336252C5E00536F0F1
+:101FA00045B2032E8E7397F5200A9F2D0735449175
+:101FB0000C5ADD1783E2E5322EB16736E2F9AE80C6
+:101FC0006E362D99412833BFD4F3053A69DBE3D946
+:101FD000954C43DC07372FAB0DA954277FB1373A17
+:101FE00063F03DE0B4501DFB97CDE3B1C38F2C5C93
+:101FF000B4E205559A1198A3CFB1CDD7329BE8A88A
+:10200000D1718BD871E5BA174FF98A84308AEAED1D
+:10201000132D471D038ACBE8B3091884F5BD6B1354
+:102020003EEA8594AEB274AB874D684F568429372B
+:102030006424DAE1F6E9EEA148BEADD1863FA6BB45
+:1020400075C731406EF9418D287054CB93086EFDF1
+:102050007D76D35688D061A6907D08310EB9119552
+:10206000F61C60C2FB384F49946DECBF63A7560164
+:102070009CC99789ECBC7DDCC8BF37489C7B876DC9
+:10208000364786DE3D6E661BD46119313956AB0585
+:102090007DD2AC76922EDF635A4EE0FEB50C19C4A9
+:1020A000207399C3A015C0F7E3726D60C2A9237CA9
+:1020B0001B86AB527536B861BAA9125677A85DEF88
+:1020C000B2D481ABE65AFAFEDAC3D680167FE08D31
+:1020D000289C714D465DF9525275A628F2C90640FA
+:1020E000A64F26DAC02D3EF2D42453A3A5183427D8
+:1020F000970D6BF0A5CE0A3FB803F1E2F285941D6F
+:1021000066AB7C404CB1EB2E1A771D7384FDE12445
+:1021100061AFC0112E1B3FB050FECEC8FE76251811
+:10212000CE508B7E6F3E79334816ABA03D3F5EDECE
+:102130000786115F1298D9923CADAB486DA09516F9
+:102140001E449C7C2F52801BE0BD216F89FFBC7B0D
+:10215000F767D97A902D5E7D2ACCB3E2F00EF307B3
+:102160002EA8C10648F59F25C2AB62B68D0F126C32
+:102170004512F5C3E8A3763EA3498E0BB86DBAB6F7
+:1021800063CD77C82644BC1B586C7AF2CD9334A833
+:1021900003AC074E44CF93938810B5C380BAFA803E
+:1021A000F38783B7E9E2A2B45EC25426AC744BD481
+:1021B000477A6C04B7C692F2EA652603D54D77419B
+:1021C0002D805D3FE80B38E52AA2337C051731F4FA
+:1021D000637D70733333F0CA1E235DCE8AD66EC51D
+:1021E000050E76E925D8B109E19E9780E10CFD2A1C
+:1021F0001324928FC230092314D6F451F67B53A8CE
+:1022000035DD5296602FDE2912623FF0B761C9CEEC
+:10221000B156C80946EC13477A9B6E4173A9DCA5F9
+:10222000F7EDD0B956982AB62C879C40DE28382185
+:10223000DED2C0642D1EC6ADD5C9E5A7030CC9BD4D
+:102240001753FF51EBE5437630E838A661BF708D38
+:102250002AE6B4D93B5766035989EED04075BEFFD4
+:102260007A7039DFFE3C85127E27311DB658EF812A
+:10227000421B5F719ECA006EB962BC61F35D34BEE1
+:10228000883BB8BE5DC402DC36670E3143AB0C8EB2
+:102290003B27257EC57988413AACB63E5502FF7F83
+:1022A00043B8288486F2AF7A7CAEEC1F852AC792A9
+:1022B000325222C3423E49DA2A243CE42C9EDF6299
+:1022C00092FB79FB7A6A3D8FF866B5DC2EFE2B1700
+:1022D000CAE0E877B18EB805616E4E78F0A578ED6A
+:1022E000E8CBC81E5D223903495F50FAF37AE4BE99
+:1022F000901B23553B9F06DBA3D09C53036B2B19EC
+:10230000F26CDD3C8CA7E2B3280157F691FAA3F2F8
+:1023100041BA6F0716D59EF01CA3EF03B0C5B7BB3B
+:102320009E0789288B2B9E6CA78AE3563FC3E20F3A
+:10233000492DCA483F96E00FC2C2E158DC753A28E1
+:102340006285EDBB2795FA491192D847ED12A50396
+:10235000623EDEE78B0B70B5748754462ABD195078
+:1023600012379A21E2331AF481AB3978527B4BAAA7
+:10237000F78D1A98289D6FA67DAAC144651CD4CA02
+:102380005ACDC82398A310D3B2A3075181FB887BF1
+:102390005459C45BB9A4721CDD2775BBF67D149A31
+:1023A000F4CAD09CA3551D450B83E691F5EC860E2F
+:1023B0001F0C0E05DAA7DA4950BBA0DE35605BA81A
+:1023C0001D349A4171C0D2927FCD5FA428BE810E88
+:1023D00073827EE335A8C5C48A59AE27F2FD8D907D
+:1023E000BFB5E59103C885E370FF54A7D40BBD5B6F
+:1023F0009259B7CD82EDC973A3E381F577E64E61BB
+:10240000F8D3881BC13A0DBD6FFE2EF195D31C7F0A
+:102410009D85ACE96429A4CCE280DACF68B0D457BA
+:10242000950229305D23F0E7B0337589B2F60AD200
+:10243000175FAEDAEE72460A12BCBC9F1223976F8A
+:102440004D104283C9D839CD5C97639235D1445B36
+:10245000406AB866E97B9C3D0956FA7BCB178FDF53
+:10246000EF241F29FAB1B5001C18AEC0EBEFC4B6BB
+:10247000D594B49494E748215725BCF1BEA13E4EB3
+:1024800051BFB12C8285A0843176BF34E25CCBBBD6
+:102490003C2C5464EBB7C43050061DB5450A969CDD
+:1024A000380B3E3F0479A36C729AE1C3173E9CCA75
+:1024B00016FEBE4913803AD468BACBFF8E378DAB77
+:1024C000FE5C9364EC02716CF126B55A5D92EEAC41
+:1024D0008093879599AFE5858A268381651D8D60F8
+:1024E0005D0456553C11997CA0A7759FAF30FE49FD
+:1024F00073590942ABD445D4E8D63B82EA6194D201
+:1025000047126B6B571D94048904507582846AF5D9
+:10251000109FC5785A003981808EB635DB03F310E1
+:10252000B623339EFB0790FC847CE4BFC0DC497378
+:102530002F3CF1BC693B2F7F795CA44BF3733CEAE1
+:10254000F73F223E001D589AE9C34D82FB8D7BC2A6
+:1025500042B57F26F07E559EB70892CB8037430B5D
+:10256000A13CDB6DEBFA67BC38D2BA7C402AA049AB
+:10257000A21BD558E5DE74523686DD31A52EEA431E
+:102580003E9AB9BF10EE52EFC5ECCD4DB9DA0562F7
+:102590004CA12A85C97C7E7B134C911F90E5220FAC
+:1025A000F38D30B6AE00531AF8C8C245D9E1C2F275
+:1025B0009C69C27F775E21EF3AFBE22A1262D79ACA
+:1025C00007F0B9EEA01F01B47C372B79F512B05497
+:1025D000A75F5B72050BB9C1AFCEDBC5920EFA9E49
+:1025E000DE4E9BC6164368208907D47269FFC73642
+:1025F000BC991914F2135C71E469CB3089AA06F313
+:10260000C16E84E53D5252BC661E82D682533005AF
+:1026100000B4C27F8CA9569BCE947C4ED53ABE584E
+:10262000A666F079586492359A78B72C56F7972EAB
+:10263000E60C66B6A086B2CE146EC4C40BD4F944C0
+:102640003922F1EFCB668236C3762191E301F6871A
+:1026500043B609819C746306431EACF6DAE37353F8
+:10266000D248913CC2EA7BDE39FC72344C9FB4A55F
+:102670003696B3ECAA62EAE655356CF4E111350BF7
+:10268000C69EA32BF0AA6376261F721AE539A20311
+:10269000125824D6B82B1E50CB3C11F710580810F6
+:1026A000335D8470BE12383E6F7AEF04C0601F86BF
+:1026B00015D2E68E80E277C16788E5B8E0EA779FB9
+:1026C000BB8844B000822028689417C96AD4C94CDA
+:1026D0003B44F47EF338BCA984F6DAC2A8D1497D24
+:1026E00083238294FFE1A97FD030286B1D49A0F29B
+:1026F000CA8FA0EAEF3592790D2B8B4431D25D3031
+:102700000C6C8B332C142688957315E0D3927C3B8C
+:10271000C7972E0A4C83F8EB4797C9B246E2A171DE
+:10272000927B07D3234E797B0CA293E159A3827845
+:10273000051A84B4D9283AEB0F7F0D087EC670D4F1
+:10274000A0938FF0EE0AE55BA84E87589B3D4E7430
+:1027500040C2045C3C7553D115DD4B1C7D59AEC1A4
+:102760001AC505ADA85AEC167E5EBBE940EAEE9F9D
+:102770007C93FD117BF5E1E06A51FB94BE33253A71
+:1027800072FF4B6285C7853BF79A7CEBE38D386916
+:102790008250AF23AF81E41EA1A6C177DEB4FF90C3
+:1027A000CCFBBB82F43E2F62FC33C5633F1649A0CD
+:1027B000EC822CD74911D577268FD0521165C97A72
+:1027C0007A014B3A184F22F664D0E63EB812E9146B
+:1027D000DAC977A362451D99246752B76F33C45C89
+:1027E000DEB2264BA17BFA5C7EDB79AD1637282260
+:1027F000D94194B26D379DA9600516BB90061112A0
+:102800006E5E1C2A2D00BB9C960B8AB7178196A47E
+:10281000504E3E2FF0FEE6EB669A91B6E5290D6A22
+:10282000EF421501351DD5FFFABABC5F77A6414FBF
+:10283000558FEFAFB73491770C225CB3CCA6AC8E3A
+:102840000E773F305A233DCEE9BCF748CF6298EE71
+:102850009DB8BC29D4EEDE8245FFEC94862BF9A608
+:1028600008DA5DA9ED942709552FDD9A0401514B33
+:1028700006959A9A71B055DB6BAFC18A901304CA62
+:102880006DDB46A547FE93828B7D23CDD2B0303FD2
+:102890006DB466CCF905E9E3123DF85D316B0A0EC3
+:1028A00050C82EEC1F818CFE586403FB8A07F21B74
+:1028B0001A88897ABF6934C07989BCABF121439801
+:1028C0000C08CD85FE3F8A3BC628A9465E3074D3EE
+:1028D00026C4F9EDD55D9F49D9443B91272D0010C1
+:1028E00058FA8E74C23C32DCDB5C8DD2E12A2F5C5C
+:1028F0008E799A25EC076286188D25E228DAB88948
+:10290000BB8AED8957064119E18817C6EFD78A853A
+:102910002FF883FC89EDA9C00F3C3D477467A9B728
+:102920005DC6D15CEDA800753A3810F9CC92B84478
+:10293000FE9FB9CB0877E62532EA068F8292BB620A
+:102940007447BB327B4B4E0E3D091C844E6C1EB34C
+:10295000513B00C5A2A03E5AC65F6FB9A8720027BE
+:102960005CCAC40EC6632C637CECA8C04E1C482D08
+:10297000861413A8A868A8660368B144E2D06DBBAA
+:10298000544AE83926ABC4020512BB68C5C320A56A
+:10299000816EFB3B1089307EDD27A6EA21A24CB573
+:1029A000C24C31474874302E0D722D0785FCF4FB64
+:1029B000FC748F1EBB4C8C296E3C3B7430D440930E
+:1029C000DB88F5DFDAEECBA1C80FAF29E32327A61A
+:1029D000C5922538E67167DF660359B5EA0EF550F2
+:1029E000D2CCC6DA716BEC3BA6175549248E4798BA
+:1029F0000170C8476A028268F83682FE21E8B23D5B
+:102A000056F4950123657D13B5F6E07DB1920EC2B3
+:102A1000253E8C66D94FD38D7CEB13AD50B736F481
+:102A2000DE619D0292769C4A07C71B42DD40A5ED00
+:102A3000B2EE665234522ED4D09EEE7AA6F7D0F57E
+:102A4000222475F176B3067AEB8450A73EBA08814A
+:102A5000ABA7598BC1DB7828BAAD8AA8110A71716E
+:102A600065B46293BA171521F54F19578C3AA41122
+:102A7000BC453D6F89CB643E9902D3843D4909A191
+:102A8000EA2CBD762E1ADB17B1E8DFD623AD4878E5
+:102A90005A171C52D997EE62EA001696B510E31445
+:102AA000454BC849DB19CC1EB31C516B6A95D6E067
+:102AB000C8EB4AA9B56777435F726057CCA272A78B
+:102AC000CCD6CCBB2763F1EF6BBC518169ECF4240D
+:102AD000A5673CB1F6A67DDFCC2C8153B84A88545B
+:102AE000736513E38DFA1CB54EF7A928749F2771FF
+:102AF000A5586E8DA0C8391DFCA4FD2469E0CCB694
+:102B00006BA27F2B9734F964B6C1EEE4EF8E92731B
+:102B1000DBEB36EC7C6C04DCAD579EE28CA2F2F36E
+:102B200008B92D901DC6972C62B37461C7CB1E0BDC
+:102B300098AEF2A82B4DD2DA60C93423F909159763
+:102B40002ED2817E8C80B0993031492E2B83630543
+:102B5000729A65E70F74747F5B24C33E5F00DF16D3
+:102B600019A14CBEB88670536D05A6E71E15A04688
+:102B70009E51F491FB0975513B0B5B433B83847081
+:102B800069421E0FF2A40147147DD3439DD1D6970D
+:102B9000113319CD8087F1ADFA8FF07521A5AD4EB7
+:102BA000A60129988416CABCE9399CC15E403EE45E
+:102BB000FA744EEDDF25707CC432C44B1F8499DD5E
+:102BC000CBE371AA2660936C575436E4EBE44B6A6E
+:102BD000CBB93EECA0B5C337E91083BBD6C10B9986
+:102BE0004FF2C99AC29ED56D7DAB72A4B8188A2FD8
+:102BF000ADBECD37B50FB4B7F40E72722F00043CE2
+:102C00006CFBA84FBD192D4C2E40E2E29533F57EAA
+:102C1000D22BC96132B977F0B5F66ACA3BD4BADDB6
+:102C2000AD33DEE7B39F69621E74AC2AA7D80A23CE
+:102C3000D18DE9368C7832EABC9E133B8C19D1C316
+:102C40000B65B8CC8E33EE970C2380AAC0544E632C
+:102C5000357C1D9A1DD86171795DE33650022AC713
+:102C6000889BED8F856042DE27C294F11E4BC1BE6A
+:102C700025236CC19389A71830E1CBBFFFD5174F2F
+:102C800038F2CC92F107606D51EC6D2583B8F237C4
+:102C9000A9FA7DF85CC2300CDD0FC43586285D3B97
+:102CA00055B0FA7CBA1AE84E0124F7B67FC001F598
+:102CB000051C4DDD9FC93D198A0F79761205E4B2D6
+:102CC0005AB1EF562B83E49C5BFD863A080C7A11CF
+:102CD000570B1F0167D53073F24942291BAA3A35B9
+:102CE00076CED78F442506B24FA1E8032A65AC7F84
+:102CF000F0BBAAB4F2B1B9E0B039FB4F69976130CB
+:102D0000A2DB7B9A4321B951EDC8B6FEE75F9992E9
+:102D1000A7F10316D7EC1E1DB4234C1FFDEB233186
+:102D2000082CF74B0DE5B1EC9FA0EBFC16E2BE9E24
+:102D30006EE4D4C6F09D76669DF915C6D08C9605D6
+:102D400063994B8B4396F28DBE930F0BE338DE24D1
+:102D5000B61422A66C95936EE912CE6C77BF3FB481
+:102D6000F45B8DF378C26E69F4820D923610892877
+:102D70008ABCB98F7D82A6D875634E9CE2C45AE5A1
+:102D8000483B75B3025812A10012ABBB47285B66E3
+:102D90005B8806966E9EE3E9CAD9B7FBC7B124DA11
+:102DA0008E00F61E93A44792F3F4124012E33BE622
+:102DB00076B2A7C40A0EC047342481F9847B42FB53
+:102DC000F18C3AD1450E0FEE5A214ADDCC595F7C89
+:102DD00096157A2A26C8FB5507C3F422D798032AEA
+:102DE000576BCFA67B9F4422EDA27E346BC65FA9B2
+:102DF00030D5FD2ED39B50B5BB7EBE85BDAE25071D
+:102E0000AE83D017ED2986D44D465FEEE805182A2B
+:102E100007C6134033B4994732C14DA5E05E887EA2
+:102E2000BEFAF0902C8E9C8E2FF491CBCE4E0BB828
+:102E3000C133EBB88B0CB93029193DAB2F18DF0229
+:102E40008BFF9E8FF3DA9199729CEF6D8E578F45B1
+:102E50004C6C3B9C6E6DAA1E76BAE65B6564BA7DCF
+:102E6000F45EF8D713E12ECB3F43B10CBA22B95A26
+:102E70002098921AD9A328B7441F31C6199C931AD7
+:102E80009FDA7817B35E3D1D86C9952D43355FB037
+:102E9000A607C9CB8C9FDD4740303ED7BD0961896D
+:102EA0003D8C6E8346803041023D0F82E99DE82FC4
+:102EB000920521B1BAEF0CF1EB11D1FA59DAC96AD6
+:102EC000A44C43774AE68E87BAE2984EA8E30F31C6
+:102ED00099D5BEF1C0F542CE30F6CCE9F00101A1A2
+:102EE000A901EB229D7A21625F1C4978BC5170E1F7
+:102EF0003599602D5643C4DCB5BE1309EAF86984E0
+:102F000021A6022886D8F0E6CF63E2DA340E7E7777
+:102F1000CBD1BB016E765EBC5B2FE15F18B58CCB6D
+:102F2000014BCA294B7B75945EDE19D0BAE9163F76
+:102F3000245B25034B296B88CCE14A28457F50A3AD
+:102F4000A11276941409DA71CA0AD3C28667C2B490
+:102F50004153C5AFB666DFF7BDBBF7B5ACAEEEA368
+:102F6000D0DBAC72ADD77E9035E9677012B06FDD03
+:102F70008FDCF0A1839E204264C4A6ED37AC4D43A4
+:102F8000A1E6C2112FF7E41152C57B7AA4666D1D2C
+:102F90001391CD4C9197BBBDBED4C425FA969AA887
+:102FA00017896DFD35552E143D7A12D6773E766021
+:102FB000D1CA63D1F4BE398529984B0757E2EB7724
+:102FC0006127D06D9D4C1DF861AF4C311F05F14B51
+:102FD000B8B8FCB6E38E7903E95295AE03D8258ED6
+:102FE0003DB30F1979031586E63A62473EFBB1AA55
+:102FF000090DC6366F8C0F668AE3E70A6619397BBE
+:10300000421B504369EA8C856038B340B7F049569B
+:10301000B12B2D7506ECA83CAF8F6AFD477B4F1A8C
+:1030200036A88B84D1A102EAF1D96A017BAB3E922A
+:10303000F685A795B9D3CA65AA83D6EDAE07B2FCCB
+:1030400044651E577B96AF9C4FF1BBA8D2A9A7142D
+:10305000C845165D365B3860F338AD245373E4C859
+:103060004CA87A9BE2A0C735860527A944B9B7AE1C
+:10307000BB3E5ECF638EAF522E2998AC92958AD913
+:103080008E1CCE5420C8FD25339350993EB58562E1
+:103090006ACEA49C6CE284C8AF382AFBBA3871545B
+:1030A000BDFBA64DB02F5FE76614AC3D6C47A5AEE7
+:1030B000FDCA010BE7056DCBE59FBAF552886A475B
+:1030C0005B1E33CB5E5D88C912A7C3F3FB348292CB
+:1030D0007A182643D0C95E0481FED0AC29C1F0A382
+:1030E000C4C1CA1B0E97F81EB96D07320EFCD66B11
+:1030F000DD9A4E5216847D41500005E298B67DC699
+:10310000099C321AEE019E4AC9CD077FEB66EC0599
+:10311000BA1090833C0953A1ECEE06512B781C8A1F
+:103120009300979EC66C95C39A9487D44EDCC9666B
+:10313000CFAE14730FD45F77ED9E08662F9E664660
+:10314000E6855D3A5EC0D9E1B301F4A380156B5DFD
+:10315000AF2A1F6F6470F7608B672CD5DE55A5739F
+:10316000C97321B565340969973CFA92D3F803D93C
+:10317000900D77287EF0C84F3BE37D729EFC8484DF
+:1031800011D1D53C3A4B241188F6025B68FE4B6F97
+:103190006C478AE987DE0EDEBAE18014086CCC0E3B
+:1031A000113EDF20BB7C562BF69283E17BC7C3A682
+:1031B000847DD9F9934F50D838A1BEC7B0629B4ED9
+:1031C0002DDC20E574631A15A7E72F161E2A9D88AB
+:1031D000B2C6A89ED5B90B6A826839D4E143FD6EA8
+:1031E000EE585BF873D6BBE3DB9835DDA0C0CF4B60
+:1031F00095D154E3C9C3FF08CDC100ED76E3DCC32C
+:103200000E89360266F51FD2F2A7C5C98E739F4597
+:1032100017638E6BA629D8BFA07E1B32063246CF1D
+:1032200040AC17360A4773B468C34CDAED335AE63C
+:10323000F1BB753737A7F4CA70B6E82B45D4001731
+:103240007D9461768AE48C773D2FC95DA39E82E7E9
+:1032500059D8C7D99492802B97D1629A8E9C80536B
+:10326000FEBC77B8EF049099449F2A2760BE6C8F0C
+:1032700093B981A544F4A533FF4BADC5269ADEA9C9
+:10328000748F30370C6C91B76CCFC185D2E134FEAE
+:1032900034EE8367A20036FA2CC17583A8C350B8F8
+:1032A000E01D853EA4A3B3C630F58ADB6ACA409B05
+:1032B0008B63E97F7793CEBC3338A4402537BEC1FA
+:1032C000B4CA2B940EBFE6B1296AB83AFA3A55FB54
+:1032D000B75B029E35705EB60B96CD461D4A2980BF
+:1032E000A43E790E4FEB8776C196D330580FE0C4D9
+:1032F0006F8DB023B3F93CFDFD5FFA208ED3815969
+:1033000010FF86DD6BDFDE136A0390DA715A8618D0
+:10331000E491532DFF1E202524C40D9D2FC76FD08F
+:1033200059CF6C653307D4CEAFFF30DFC722218A77
+:1033300034E00ABD0F0E85A8C5E33511E16AB2334A
+:1033400052624022BEAABEC6E30A38F66AD0A07610
+:10335000D51339630C85679865783B054705D20D11
+:10336000C11E2F88CB94C9DF58611A0CBE8B5EF842
+:10337000930C5A5D312F1FE4B6F8DD11464E07C697
+:1033800014D11E5D5ED64C80510197510AB2A1093D
+:103390000663A1F6DB9623FD4020637E6C2EFCE3E2
+:1033A0006867254CCF3C5E701C6B5B96E62B9623C2
+:1033B000EA3FA274D25BF0FB65374D42D2815BFEDF
+:1033C000368749C17C40BC79E70B53C1AD6D6EAD0A
+:1033D000F9B6DEE5A0E5DE18441337E767F52B5AAA
+:1033E0001E7D523FD686BD1F2769D335A269743E24
+:1033F000279C302AE8B5DF8ADDE1C8394FB885E27D
+:1034000066DD824A5046A5DA74BA6E6B8D73DF3D75
+:103410003EF8BFB7E776B7225892F1D28A4F0A9AA0
+:10342000672EB1A206A81DC96A48BEDB45E09968AF
+:10343000F03F19E7D16F5F7EB7A051980F4319C8CD
+:10344000126578535A6BE7A43C4AD7E15413222AF9
+:103450006759E60899E7EE582BEAA2DAC2A0C363DF
+:1034600046D23B91B20A1749CBB6119A731224196E
+:103470003CB6BC93A39C7D4EAD392A24E525B539D5
+:103480003C51A338035F4FBF0BB8FC3F5FC5416998
+:10349000DBC7D887159F3305C08EEA0843169FDB2C
+:1034A000ECFF80A698FE009B8B3F979EF9358D1709
+:1034B000297873FF8DF1A28774DF0CCB5369234306
+:1034C000660D48514253203CA012C0354C15002CCB
+:1034D000C07B1D9BC9AF0DAF20663A8962B5C82677
+:1034E000F533A39B39ECD08D7D91255D4BE179B10E
+:1034F000306C44A569A048316C1D18ED9CBAE53DBF
+:10350000522B83ECB09750183B79A78F4D21F9A02F
+:10351000C172158FB9A81B2F10BE9671C2F6CD616E
+:103520005991D322AE583E1F90947B5A2C8C0DC1DA
+:10353000C4B9B285299CC7BCE6D26824951A1D512E
+:10354000B9F1B356C5E0D5C1AC02FA4C61B15C67C4
+:10355000611A3249058585DDF7986D1A672DE09768
+:103560004EB58DB1D480B228D3A837C60D7C34D1E6
+:103570002F9659F30D08D9277395ACF89DCE22CD1F
+:10358000D32ED5B28B16F8D73E318431ED3C46F7B9
+:10359000E5BAEDFF059B26D78FA116187F28671087
+:1035A000ACEEFCEF64ADC8866E1960ECF34061B917
+:1035B000283982593872F8263CFE6E6B868DB01D14
+:1035C0008B49968D6CA7125E4BE9317BC1E35B9C06
+:1035D0005156FB88557B917025FEAE19C804EAB59B
+:1035E000C61B6E143970051A81D842927D380CE6DC
+:1035F0007AEFD41598A1FCD2931876D5CFF0385134
+:103600000B16F7CCF2B415AA2A5C89BC88B5469093
+:1036100001B88C7297538595B7C0504CF6AA73DAEF
+:10362000070660070661311A8945922BBB1D1FFEF4
+:10363000C1D169280E555C016F348FBA0D8810070F
+:1036400047D934B3EEA0667DA0EC3905BCFCEBF5A0
+:10365000239F1EA85F3379D919F6945A108C76CB24
+:103660007ADDE4B055A3C3BB14B0C97ADC1644209C
+:1036700038C23E1E0E5099995C360C48C02531FA6E
+:10368000BBB313A36183C3F1A675A14FEABB7BDF74
+:10369000AA1E59C950FF88623918327C82233334FC
+:1036A000C3CED04BBD1606E22EA4FCF70F905A14E1
+:1036B0001CECE25FA362FD29CD2F506D4DB0984AFE
+:1036C00065A75AFCEC1FE388EEAA4C2D9AE2EC9910
+:1036D000789974F0E0DC9B3FF4E9A147D20FE13325
+:1036E000B446FB1DD00923DBA1A5E5FDAE882BA6C2
+:1036F00046BC1F519D040089467E8858DE59B78517
+:10370000012E336C15C1AE36F9EADA1DD9025CDA46
+:103710003D358EDDC3890ADC0A0BE9DB81A307FF97
+:10372000B7235DA1C66420229DFBD47485780482F2
+:1037300071E65512B9B6AD4BEC4DC69EF6C8C44EF7
+:10374000873ED93ACE8B40DEEFA050DCFA078DD60B
+:10375000E931AF1D113048A7547102EA3EDB34C293
+:10376000383C0C10DA00897F850291CB0532C8E61F
+:103770002928D28E0475AB05D2171BE58BC66C01C8
+:1037800015777B0BE6DE47C5A5A600F75170A6842A
+:10379000C7BDC64C60189A45E4F2ED27B2DBAE5CBB
+:1037A000A7F88CF777A3772C1EBA45B63F18D699A1
+:1037B000A32484DAFE9D0262B03F16775C18E3AE64
+:1037C000F4EB8ADEE9C996C0B22B2A86AD2EB87911
+:1037D000A1D51755E0C033DADA5BF8A5DF26CDAB0B
+:1037E0004BBD7F3A7DAF6A5284557E65577F249FDB
+:1037F00008F741D146B1EAD75EE9A9AA1CF5F587D9
+:10380000322ED8D47D33C43A25DEA6447A129D28C0
+:10381000D4A8D64956CBCD1E110480D82043353EBE
+:1038200045078471949DC60A18229D70FFA049180F
+:10383000BCCA800DA8D85765A58C2588A758D2FB8F
+:1038400000409EEF31E369FDE48A9CACB3C835D1FA
+:1038500009834E05CBB4D11F90F4E8B461CBA2CE5E
+:10386000BECFB54C89A668E377A6F6377D0EC2AA0F
+:10387000C3B5DF8C9A9988E9460F0307EFC5B5A455
+:10388000B927174A4E06876C4846E5788F56038954
+:10389000E81C462DE94D61477A83D87CB59196970F
+:1038A0002FC4B29F29C7076FF84C3B5BCC0057C2AF
+:1038B0004CDE35E09354DEED075C5D8B3F4E216BB3
+:1038C0004DE60F37EF2499E937923766A8E5175789
+:1038D00056A068327CBEF8C2F1E31B03248C44205E
+:1038E000B08AD2D43E97792221435A7708C95DD055
+:1038F000B24F88849D317551CAB4BD51CE752249ED
+:10390000081D64D28ED33E2A25FC551F3CDDD4FE13
+:10391000BC506D94DC28A63E91C9361A9E069A8E3C
+:10392000FDF1914EFC008E7A6CCD5148FF1E72B7AE
+:10393000D0B80D7A2DBC7075D88A88978F5F7E239A
+:103940006287694F81ED60F8CC19C0D9FF48B59303
+:10395000FC2823D2C929F2F2D499402C8D9B51F234
+:10396000B419BA445BD7EA84D1CFCC2E022BDE4CFB
+:1039700031A4B84C02039FAF13638063B20D42E3DE
+:1039800040C01845D266C8F1E3AE216D02426E23F5
+:103990002E6845E2AB0218389617F53FB248253E2F
+:1039A000953E3F0F849823A9CDC778D94495931E9F
+:1039B000316A6FB36674A7CA31054989A2E6672EDA
+:1039C00082A7FA65CFDDF6099C83F3459ACAF4D63F
+:1039D00035B2C93CACB38E10EB48BDD80CD8708062
+:1039E000E24F4F9E1D47087531E5C97223C837B8AD
+:1039F0009AD2205156832FCEF4F9080C14F88BDD9F
+:103A00002D945331C3114754814DD843E78437294E
+:103A1000463A2C00AA26B3CF0A4C52836F767DC853
+:103A200078444F5EE2F25D755445F2B8D7AFB97194
+:103A3000E4A134AB371D2F0996449D2979934C8F0F
+:103A40003A900AEB854605A9B8F9CF42F9E3FF732E
+:103A5000EA115CB5D33E053A9DEC6B5B8323038989
+:103A600079F0A9F6B0461014E032F50C6437363E12
+:103A7000D9F0F47A73C9AC4743E02F95962E0EE047
+:103A80002A5ACDB5183E414DC6C71DD5FA71433AE5
+:103A900065EA82EAE24059B2E13BBB96678119B51B
+:103AA000A384CF993277E9A4E86227459D2736257C
+:103AB0003B863E2105451BB8FE12126EF0E1818067
+:103AC000798F670BBA5CC6F86A58F8003267157BC5
+:103AD000CFC2A18D146197434EC4B03F8A9F4CC999
+:103AE0005A8BD873278146028B402DBFBC6F46EEA0
+:103AF0002270053C06F6D35325BDDD8F81104EC6DE
+:103B00008C722E397528458A09200AB8F1FF2E9F3C
+:103B10009593D3F3A6A845A8B5F3B09237DD8A6391
+:103B200047A20882C7B98ED9BA76A9260A4F730D63
+:103B300057CB13F52B13507D77BFD1C9BDD7FA5F93
+:103B4000C571983C391DB3F5FDEE55E996643B12FD
+:103B5000961100CCB9D65BF47A3E2FE3D46E079E63
+:103B600060D5595A5C4D941C302126C1A948DB8789
+:103B7000A50705F7854DE7BD0174DBAE41DC1CFFF1
+:103B80007CA6D4D66A27F45CDE14BACCB739EA0333
+:103B9000FF61BE8A1E41386D82BA0D07BE7500CD29
+:103BA0007E4E51952C27CF05EBC9D0D8EDD68EDAB5
+:103BB00013AF2ADF0F7974BACA44373FD9CE03D086
+:103BC0007F3945FAF032EF8F100C8DD3E9C0A897FA
+:103BD0005CD170075E9D3BD6EC47AD58BA50379B21
+:103BE0001D78F2D3D3ADE0E5BE896F637380B4AFC7
+:103BF000C8499869555F7C9459DA80C339A37BAF73
+:103C0000F69D1D000385D438FF13B8D880E4213316
+:103C100068FC76F441279A82EE255B0BB565F55F6B
+:103C200096BA83855C7F4AEEE39681BC3B4429AE1D
+:103C3000FCAD1C58CDEE10AEC083926AEBAED9211C
+:103C4000F3E6CB40DF397E4E46911EEF3BB6FFE7F1
+:103C5000D03729E267F7624E55FE4B3FFD4A773F6A
+:103C6000F60AB0E0F65A944210ABF3B0DF83168E3A
+:103C700054DD58D8E6B36F6EB6E0CE8D1D079E4476
+:103C80004A70D688E673C2EDED775C8073FCDA1D6E
+:103C9000EAD5880A486B27B7DA86EFDC0B7B45024A
+:103CA000182F8F9F8043CC92229B8D98956A4E034C
+:103CB000A3402C123B200AFBF9400E50B1852498FA
+:103CC0009CDFF1FD434DF5BA88EE3EF66911D54D06
+:103CD000B0DC6F3D16C457E88D10D147485904AE8B
+:103CE000D9D572AA7F44D9B2322E219BEB5BD27414
+:103CF0005D4790A1CF1212C42AFE9622815135DC75
+:103D000040C93988A99E7EA4BE7A73CB9E88944E02
+:103D1000654236E4FBE2ADAAB5E465972D54D1E9DE
+:103D20001A0FDEC296520C22D3753D587DFE4D2CE3
+:103D3000F71804116E86210E1DF3831BFA41E51658
+:103D40007F9DC4EB900315271B01C1E9D3FBBDB0D8
+:103D50001CCF9864801A303A3181B970051B86F601
+:103D600072DFD345790C4F4334B1274DA5A543D518
+:103D7000339FBCCCF77C5B673C2F00A1F8563D809D
+:103D80008DDD533F3B321BA0D0B9E8A7BE2AD0033C
+:103D9000C52C74EC621AA2CBFC072CC67C167802E8
+:103DA00008818E2686D1759724EECEB1189F2A31D0
+:103DB000DCBF88F904B1572AAEB3E3AEAA3B3E2379
+:103DC00021A9F69BE928C22AB5A55976779B023826
+:103DD0001F6057B828C95FA7E5E52FFB7349581343
+:103DE000EA2CFE585B975E5BEB3361DAF23F5015CD
+:103DF000ED7ABD836482B2EC268A8078EA06AEE072
+:103E00001BA09566051A37B5C00F8D0E7ED1926442
+:103E1000757681ABB4EC84592FD45AA68152A5870C
+:103E200077C30874FF7D26B5BCEB65B22426386BDA
+:103E3000FBF0E30A428E0FACED982C3FFD33BC59EA
+:103E400028FD00DD446DB8C64BB35AC9AA0C086101
+:103E5000D3C2C5899C92514253B4B082D5CBD5858B
+:103E6000CD32CAE131A8FED0BC3815FD22E5936EF3
+:103E70003774984D26A49B4DD0D1E7B06ACBE6C9E4
+:103E80006D11F657E9842B18EDC83FF36D3E7D8325
+:103E9000D5202C51828FF037CC8D6A6FD20F8D7860
+:103EA000EFE21A4921511ACA0A31B48111DA70F6C7
+:103EB0008F89A5C9A74A112E1576E95ECA6CFF73D2
+:103EC00003DAC7FBC00D21DEE80ED7CB1CB1B2E28E
+:103ED000112B46AA1841F4E21B21A766662D1B7818
+:103EE00090F14658AC6F023F4CEF40BDC7DF55BE66
+:103EF0009E666AF2408557FA2B35A74C300082A4A3
+:103F0000210EA1D7F2180D5AB607F2E9CDFE2849C5
+:103F1000277ED68FE548F1C62A133E08F82CA55B0C
+:103F200000408BC57CF2AD370E518B94470D87ED69
+:103F3000076ECD7C10A03747A9F228B648D2136E81
+:103F4000D47E8B2A8C612BD99EAB9F7D3340B58C60
+:103F5000C899F23C9E27A4D4E3968287DEB22667F6
+:103F60001E5B5789546F4811ECE9D434489C3713D1
+:103F70008C10E1DC150D27FDD935AFDF2CD57C0386
+:103F8000086227374F6F63004ADE72E335A760FF90
+:103F90002E5F23ADF62583D066813AF2ED0C61DC0D
+:103FA000F72BD3282385496A926A0BFB6CDF2FEC31
+:103FB000A9F3BE74BCF7E1B3A38A893FCCAF352C1B
+:103FC000ED347E8DFAB5F7E98F40BB60C0051C402B
+:103FD000AF600C8C64E511D7E843B84E3C33A7DCE6
+:103FE00042C3AD0B4AEB919DC95FDAF7AF0D287A5A
+:103FF00038A5D3151727F2E2014036F915027A8B5E
+:104000004D304F2558F7809F7CCEEAFE63CC8885E3
+:1040100038FA0E58DB410B8C7405180EC7FEC748E2
+:1040200022DE0AA2BF5E6D555728DFF4473A481AD0
+:10403000BED971F0A7DF6920A518551D403459D1AC
+:10404000733D3B4069AA9C6D41D736F0D7933A68DF
+:1040500021BBEFBEE19428314F69B703437B65274D
+:104060000FEDB9DF94DC7F7CD2CB9B2B2AE5FC1EC5
+:1040700079F316EA372450DA8F193B9B5F3EABABDE
+:10408000D913FE706635E1A228CAC8E03DF361E2AB
+:10409000F16E760264C29C21A23CE8BCAFE4979822
+:1040A00015ADB561E2EEEAB9553FF4EE9E5540AE6E
+:1040B0004B9D7FB98CA3822DA71B651F2FC2131C9C
+:1040C00090FE16FECB311BB2293B0902DD2EBFEF5D
+:1040D000A02252C1D54300A477B1CBF0F8EA462A1A
+:1040E000E634E89A7EF3AA4E61725CF491A34D78AF
+:1040F00000AEB5F329159DDEFD3803C3977BDB28A1
+:1041000069DB74CBA99AADD38C076D228859035310
+:10411000D4A49C711659644D11F3A41B00D085D70B
+:10412000DAA74683292A566238AF8A2A0E8DBF6BDA
+:10413000380A78AB686C8DB2E0C4BFCAC3F77BB4F1
+:10414000418C8F9A426E32489F0CEE069C67466BFC
+:10415000F624A3A0251D7EA146D79A0B378863EAD3
+:104160005F2D2B16862A3BB76AF2FA46571C614E22
+:10417000B0A2AA04B1DC0B03F3EDE23D61CCE19601
+:104180003DC63D518D76C5C4317F55FA28B0DA9DC4
+:104190007153F7B7C4F410E5FADD51A272BDD1ED49
+:1041A0007D63E543A0500FB7E547CA21313588D27A
+:1041B0009386A42C0B49E4BDB200315A97C558D55B
+:1041C0000A5225D90C2678D338CC39DD90A3F618BD
+:1041D000AA930107333DD2D98905C2C9A6408C43B1
+:1041E0005E2E7882F58AA689A709443BF182C9B27E
+:1041F0008E7A3CE392308E7B69CD9C3DE9C343C708
+:104200000A13EF8C8B82416ECFFDDDDE9147B51036
+:10421000D1CD19FF73AF87E704E5FF84E80AFE50AC
+:1042200004A46B3208B5748579ACDC2050587AADA3
+:10423000F056B77517F3DF169C66CAE47B29E6844F
+:10424000DDDAB2EF96B21B50F417F807832DFB6747
+:10425000DB79E3F942368F0171C7E343D59008A7B4
+:1042600046808E1AFF0D6BB80F198D3386989E10FD
+:1042700061725AC4A3E6B874022C7F2DB25CF44C70
+:10428000FE59E4CF2E582E83281994D9882ED59321
+:104290001DFC57412874F394D818170BBBADC9BB4C
+:1042A00010008C87C070BE74F280984C8E89138782
+:1042B000FC9675FCE64EB3DE6C23E904771BEE93A7
+:1042C000CA0A7C57492E5277D256767D3862B01F83
+:1042D000C9956DFA69FA7D7847D023AB72B2514B1C
+:1042E00006D5E5E9D37320F261FE23B5011A075321
+:1042F000268636B148A0D65A3121CCAF92A7800D80
+:10430000ED9614131ECA53D468CBA5027C1E461525
+:10431000025856D081FD1534B6B9A504EDAEEEB7FE
+:1043200042C4E9BFF6196238AE75B8D390C1FD90AA
+:10433000E9661CE2D7EFD25A2AB813E17174E99EFC
+:104340009C2C6DC108D2D5674DD54CE07692F48F88
+:10435000FF0553A821CD56DA88C1108E28FEC7CF9D
+:10436000EF3B64DF401342D2275BA0376348EF7E08
+:104370005E07319106D87ECFAAD2849E54DB1EE818
+:104380006A0EE97E3EA3248472820A9C9228D34955
+:10439000D9682283F6CA7789A3890986B44073064F
+:1043A00036EAA28F1BBC3D453BB6D0090D711D1BE3
+:1043B0007D8068461CFB2F87870DD0CA5D961CAC9C
+:1043C000E5F21297D73C1EE609CB0235E7DDC75A66
+:1043D000427D95EFFA3A809C8DD6A5834274DEBC6F
+:1043E00038509479B71DE6D8C7F569F047CBB93F87
+:1043F0001DFA927C3EB13ECE2F030669AA076316D2
+:1044000044390795C906EDF8F71767B233B521E5CA
+:10441000DDCC79203A824D3049CD5AA31BE8624F5A
+:10442000DCDD2E9DF1B4DC25DBD4D131440E3248E5
+:1044300017772B6FE251F1D0DC07566B63AE8830F3
+:104440009DAE89D8B4D728FEAE62AAD82E8A9283B0
+:104450005525953C24714B4582C256A53E2D5E776D
+:10446000A5DEFEE1038A12154F3D8D16A493662C3E
+:1044700009C51955B0175DE0AB56AD325CEA59C2BB
+:10448000FFD57AE6ACF952AAC8B9CFA951E20F1FFD
+:104490004433A15E473FC877D43B092B60475B8814
+:1044A00098CCB27D034A7EBE5D3AD5DBC39072776D
+:1044B0003A04E401ADCCD233F8E622B7585231C405
+:1044C0004F4E18B54083A749CE2946E5C8098063F9
+:1044D000A62660B1E4695315BE32DF2F9A7F2E0104
+:1044E0006C7AAFC93C64ABD6210840E7FE7545E560
+:1044F000EA6BA537C60B276D033FADC30328A1A404
+:1045000016EAC1BEC92B188D9D66746D67FD385CB7
+:104510007AE98FAA6F883AD75D5A3A3521ACC90734
+:10452000BA974B9B386DE54404E8A8E4B8BBDCAE11
+:10453000E5ABF718948E9708CDA8871F3DC4CBA78D
+:10454000009E98AA40918A9813C7143791EAA669E9
+:104550004FE0D6D262750258878089ED68B5A78C86
+:10456000ADD94B69460A2113D334AC470CF79E0FE3
+:1045700028085BC79068057E76901CF9DAC0ECD8F5
+:10458000141DA26E12BBFA36CDD885D0D95E7DAA95
+:10459000F2AD2D3533939CA846AA832204DD7C66B8
+:1045A000FAD1CD1E5D096579B7D0AE906E8A300024
+:1045B000A70041E39AA3EBD8FD0A18EB38371EAEEB
+:1045C0000146EF44434FD4B9E355253EA6A694B81F
+:1045D0004C6BFE539382D9466467CE882E8D57E08C
+:1045E000C24AC1D23B5D489C3816E640C2BA3F5F22
+:1045F000C8B2F5C1FB7031D87151DC7C8F174C61AA
+:104600001B5401E221B3AB5BE34018E4687709AEC9
+:10461000CD12C7DAB75B8D0985513CC22D69058D76
+:104620007E15959594B0E6B4011158F011F59DD71B
+:1046300069836875A25467506A1B8B6C7DE9888E0C
+:104640004EAEB75AAA91348A5B11B86D03BAD745FA
+:1046500055EFA600614C73503505E32DD60F881732
+:10466000264C67D4D59E1DD94254D836EEF1CBF0F6
+:10467000DBE763E6A297CD5E5CC51265798B252FDB
+:104680002E014E6683E248FE6CBCE9281A1EC7FD67
+:104690007CE8DE88592DDEBEDCD38E46B482B5714F
+:1046A000855A8D3AE6A196D95D3A3992BC4F911C54
+:1046B000DB86865552F6943F1D3252E579F00D01A6
+:1046C0001609F253D771D86A7CB2D4CF64128FAE78
+:1046D0007FF23C2D18B214A39EBBA02367A627929D
+:1046E000BB5F9E8A95624DD5531C4EDC31D8547EFB
+:1046F0008A8329221F1C28C610EBBFA09AFF6415CD
+:104700008B153C681996BF42971CCC7C119A5E1B96
+:1047100015DEE3C18D9BC3C95DE357D72B613E49CD
+:10472000D2BA07BB262492D7C7C8A0084F2C783C22
+:10473000C253CE7CCECAD26493B24102B73218A51E
+:10474000A2D25F596AA6DE551F592706E6CC01059D
+:10475000C8FF7044768E6533808C8ABA7A51B1F77F
+:10476000AFBFEA67BD3C098DC54D3FF2724C895B16
+:1047700038C835BA32322A01676276CF6FE4A05664
+:104780002DD3A143F08C823075A653AC9E4BC3AEA3
+:10479000FC102B752E2FA024E7EB14547E65FD0E24
+:1047A000EC2D6AA41B5F6709BC28BE2D6F407837CB
+:1047B000B8E53A00F5DD3B82150E4060BB87FE9CF4
+:1047C00035B4182FDAE28D45039059A4F94D2635FA
+:1047D0008F18DA766D30353F661845FEDE9135B4B8
+:1047E0006E8EDCA3539C945D4C0F237B9C546727F7
+:1047F0006A36F37A70ACFB4696988B5C85B7CB1122
+:10480000703A449AAD227C9D5E2EB0D46DD37E3A30
+:10481000B966E0209682580ACDE79FA9DCE1CE3543
+:1048200040EDFBCB128F57F88E3F198FB3A028773E
+:10483000A345AC152D1AD6ADFE8F246060ABC637EC
+:1048400002BBA98E35D572E395069E554A4C2B7155
+:104850007105B6906887CB11197452604915A8D3B9
+:10486000D3ECCC65116FCFE37D8622E1994AD8F372
+:10487000B5AC95169D6C1409101134323226330CE8
+:10488000BECA9E9207C4F940A5A5280B800837F040
+:1048900091145D67EA736FC70A9F98B75015AE957C
+:1048A00032DBDDD0E681B238F5C5826DB9CDB58495
+:1048B000A5CE2CF3700E6970E1065DBB026373AC8C
+:1048C000571A0B17389A0CD58A6B27D3C5B90191A3
+:1048D000D2B86C13CFDBD1CD1639988A86CF4F4A28
+:1048E000650B8182D85ED8B0456EE53CA619969AD4
+:1048F00045F660B132181F5108018DEF5F006271FB
+:10490000F5AC53E9CF4AB7C2494CDD20DF3976A177
+:10491000D7386C4128E0D3721F4FA121C57673E0D0
+:10492000F97376867602A370395CFE4CFD223D3821
+:104930003DA943C890C7CB1145A976F09D7C77343B
+:104940003FC1307D8B9489E22A09CB02DCE1ED2462
+:10495000614F8498F379B93DF285BF838A09BAC261
+:1049600054B1A4D12238E0434DBC668B393DF45894
+:1049700009BF6C19903EA804887231C2EF5AEA024E
+:104980007F68DB5BA1D9FF4C5558A40A6B563B05E9
+:1049900045A17639FBA80542BC4F9CD410F9416073
+:1049A0004B595F6DAA43191352BB15CF26F1C44270
+:1049B000ADE34269CE8CB167D223E768AC77E20EF3
+:1049C00079C460C94CC6F4544917F419755056F6A9
+:1049D000E077D2FE924C6C8C4EDA6D260E3B0FB116
+:1049E00039A720CA544856250A4C8E1BCFB7B003AE
+:1049F0003B979828FE2F839AFA09D69AEFCB739BA0
+:104A0000E834B019DBC2598E29BEE170088269A969
+:104A1000015E355C2F96960353520FC764C1ACBE3E
+:104A20001842198CC103BAFC40EF7F963D73E1DA5E
+:104A30008D99B8DB7F048DADAEE2D731104944C209
+:104A4000BB565DBE5E2A0B5731938FC67016AAB156
+:104A50002DF3DDD894FB16A33D898A22258202B569
+:104A6000F309161707AAA8A90A7F76E7124951EB9E
+:104A7000440F860EC7784AD42D886E4481A0C3DFC8
+:104A80008E99A90D733385E41C1BC99B9033ED905F
+:104A900021528BE44EC2522F345794F6776177E55A
+:104AA0003A4B26C970E19B37BB2135B374BB4664D2
+:104AB00088B72020BAB9992DA64DC9AB346FACA7E1
+:104AC000D1EB62CD347705036A55A8E6021493084A
+:104AD000E0DD96BED6E0A3E890C71C158FFDAE5A68
+:104AE000089E631D152CB899E96C4863176BF02577
+:104AF00038197BCE1EB7A66AD4B5401739B0E35932
+:104B00000B725B78328C49BCC6FF578711A7813581
+:104B1000B3561D1CD3826BF16ADCCE7B3090CABFCA
+:104B200047FAE825594C8B2201FB4B1E3EFD2E4ACD
+:104B3000C64EA5A9D589BBAF318919257B01C5977B
+:104B4000884B25DBD5E547350EC7AC3A6E2AB43025
+:104B50001D82DE3C185283071A13C82F04CD3B8DEB
+:104B60009C448B2F0017EC35FE3EEB106AEB8FD583
+:104B7000DE45E1298F40D6E3A34FB6E3CA2177B7DC
+:104B800007401E2C8B9222C300351333D010080E21
+:104B9000DD753135288272604C8973BC2ED8B043E4
+:104BA000DDB71A5FA40015319946FCC34C2CC77FB2
+:104BB0007E3B721CA0FDB14F7D0E5C1601C3EEE979
+:104BC0005F1440CA5A540C6A719FC4E1567E793A08
+:104BD0002DAF470996A89617A7FBE4AE4EF18D9A24
+:104BE00066B3734FD4F503A275091E74F5742737A5
+:104BF000A95505D82C716E9F523571E8DD9B1918A7
+:104C0000C468F0A21D7EC5EA522986ADE40AB2024C
+:104C1000B86633E36310CF6867E11AAE016EF7CB75
+:104C2000FEE1ED8AAE297BA2D1C5AE9809025B8078
+:104C3000F4154EEA50CAF5C8DDE364FB28CAC54B3B
+:104C40001AB5EF0D0F4B971F9BAA279B4F2F8ECFA7
+:104C5000301B3972B1A78355CED75F10F13B20547A
+:104C6000DE73B0297DE745B6A7185FD1C05289BA77
+:104C7000F55D83AB1A9AC109BC523C2CFCA08FCEC7
+:104C8000C7E4D466A1AD9CED92B054770E522218C1
+:104C90002A0BA42FED46AC434D24D4D9DFEF081CDA
+:104CA000128CC1AE0D6E4FDC959A6448F98FE24DBF
+:104CB000CE5B4030599CA3109AD7F4CC783745543A
+:104CC000BF134EAC2D27ACF13FDCD2D3ED3CC13A43
+:104CD0005814C2348DDA5B1CB4C90299718AC6B00B
+:104CE000E381EDBA5FF8B5797B07084A0D281519FD
+:104CF000C97F17BA4616B02D671DF91741C3C012F8
+:104D00004FF51665F7E97DA30B162F4323820B960B
+:104D100015633CC6B4B28D3E34E10E71ECD5D1EED4
+:104D2000FA006B4E5BF5D92579BF03EA0E1C611FB3
+:104D3000709BB0ACF6C5638A79E78C3F79F1D89A5D
+:104D4000A9753E3B92BEAA5611277686D585F5E217
+:104D5000D9A05BF015AF98A57A9E00CB31D44C7AE0
+:104D600044A2D534BD6AC8479C4EF0BF480C969A01
+:104D700058A223EA31D26F73EAB2AE2CF567DADEBD
+:104D80003D4E52CCAFA3B64435816D4A88D99B14B1
+:104D9000C53C6390B543AA3A00E727DD1222B16C07
+:104DA000B229F02267B6CF8A777BE549EC91FC40C7
+:104DB000F89C5DE43747DBEABEDD4B7AFFDFE017A6
+:104DC000B8F89B235B304A06DACFF9E183BADF1FDC
+:104DD0002AEFD72A6DFB4B0CB2DB535EC9B1B8F199
+:104DE0006E78C1C13605AA9A1918D46A3A66DF5A94
+:104DF000BB284854DBD872DD2C2B6F0189E344EFCC
+:104E0000D75F1D6A6C6B4CC5E5CEFE7AD1DF92D6BA
+:104E10008D0CC7F216B1A1438C67D462F6EF8ADE1F
+:104E200067D26DB4B1B033DF469B3F4AD511FE2047
+:104E30004ED4F6750FE557F23628671C2FC3A55FD1
+:104E400033ACF9A9173675B3519F0C6FCB8431047D
+:104E5000FE7B0B35523093D15BA3140AC76AD2FD97
+:104E600008C618FC4A1567990DD14FB979091A0778
+:104E7000380447D76240B48B1DDFA9F1BECB0FCEFB
+:104E800015D99DD454CA633F2160CB5D14D1686BA2
+:104E900015E1DBC6352635B3AD8792F91AE1B10CC1
+:104EA0009B9077553E0F2E67068B90C2B7945DAFEF
+:104EB000EDDC687F2B8B39FEA0D9751AEF74E94FB2
+:104EC000FBFEC0ACD1ACE34EE242E0ACF3D7D4255C
+:104ED000F38C383075ED37BCDB3087476815629945
+:104EE000662377B39E03615131378FF586601422B4
+:104EF000B866F0FE92245A50CD734FF72776E348F8
+:104F000042712D4432BC59BD514F5F7456FE5DDA7B
+:104F1000DE767F2579B32952069B783E05130DCBAB
+:104F20004D0A94A17844D2437A5BA6EE02C29D1F3B
+:104F30001117CE388DDFA0B89C4BE79537EA80F487
+:104F400060178B8181B5363CA34A7DBA66793155AD
+:104F5000042033C969E608D83712C38FF1002F1B2C
+:104F6000B73EF81827A52B614BBACEC34A11B051F2
+:104F7000478687741E7732931506DB73EBCF4F5647
+:104F8000813EA0CE72AEFEFDC8164DF8CD2DD317D2
+:104F9000A492C9AC691FA3852B7252BCB8C83E9AB3
+:104FA0005543A61558D7BA0488EAA722F788A9CB93
+:104FB000769A8C7BC66662C7F1E2F3BD983AEE54EE
+:104FC000D7A47B634EC25821FD3ACD5C56086303DB
+:104FD0007B8601218B839116E4D2FACD9F67FD95E4
+:104FE000DCF7AB824E00201B1E35B1294A92F7EA4E
+:104FF0003D9DF642614E777BBE1D7227894F7AFB3D
+:10500000210FA9F0F62D9DE4E2032700E66AB374B0
+:1050100011E4FD3FE1DF1019BA46FA8063CA59086E
+:105020002AA2B0EC01789A6C8F5AEE7A9F5313DE65
+:105030007F1111EAD655A558C92C59440767E14F8D
+:1050400060F2E65E1854F3BC9FEDD8B9538A7782BC
+:10505000D397D7DCD0B0E77A258DF9B77919DA067E
+:10506000365795457F88F28B6D121899EE85E13A97
+:1050700037BF6876296119DE1C06114AE19F8C68EA
+:105080006720C9DD667785082BDB8F9917D32293BC
+:10509000E1B6D70B582CA49231C56B1CECAEC88C72
+:1050A00068CE6719406F7F7BCA8FB3DD25B9613F3A
+:1050B00010B7EDE6E8D0A9B2DD65265BABFA3D702E
+:1050C0006A302D2ECD0E5449334E884604A99CFEDD
+:1050D000023F9A294BC10C2A478176970C155B2316
+:1050E00086AFDA4BBAA66D9A8744D49AF016B20B03
+:1050F0005BE287DB539C488CCE2544F77C120C8204
+:10510000F5B24336A4E6DD014002CF7149F80B71D8
+:105110004DDD831D5347CC769B86EAE518FBDD8485
+:105120004B4B26E279A1A69E9CC48127FE16CCA8F3
+:10513000CD244D2F37A72F32482C5D43C5FAD5001B
+:1051400018BA5A0A1ACFCC1F186187430BCA716963
+:105150008E7515F51275CC596B94F1441C36709E02
+:10516000B88238108E83A80358134AA7D46B95A130
+:10517000857D41EC835A3AC9CDD02D4568C9CEAD65
+:10518000A1D760F2A619F73A7445381A6D5CB1F4EC
+:105190003D6249DBFE3C8EF65FC9ABC554DFD1539F
+:1051A0002CEA86FD3649E557A1246E06B9CF10C812
+:1051B00043A969912690DC4B75BCE704C68B97B177
+:1051C00071B471CBECB2316A9F7F4F90000CC11D5E
+:1051D000F9C4CEA1C1303B28A5D474393E7A1198C8
+:1051E000FD294CD8A2DB00345CB99121E7994A72C1
+:1051F000A03A7F92670A247147FBB86D48F9309C4A
+:10520000835ECA1B613E7211FFEA93E472B2E07FD3
+:10521000A687BF21D4470E18849F3BA8D8808DBB9A
+:105220008333D60339D8029F05A79DEA9256274AB1
+:1052300082E017086B0D96AB23D845CCE152E4060B
+:10524000FB5E225517D32B5E68E0380C639A98F307
+:105250005FFD7598E77CB4B1AA24214B819189A3A5
+:1052600038A77FEB151855C8D9D1BE98A887C54770
+:1052700013AD0A540BB471FE38E7B885E773575481
+:1052800086B0C402B58B8CCBA16298D8C3757F540D
+:10529000B70267B51B4BF9A5E3F340F8A8370A99A5
+:1052A0007EB5EF7CD218857C45B405FE99DB859AE6
+:1052B0002197AEA461DA31F2E8B13C284252463F70
+:1052C0006F51ECAD941E55FF1062AE5F039F07ABAC
+:1052D0003BCC2666DF229C065BC118B438BD58E182
+:1052E00059B0AA80ACD38EABB5F5A34A15A0093648
+:1052F000E8F6DB39DCEEB67ECAF0AA9992DE838945
+:105300004CAA2CF3FB2BDB970532C8C99EAF471084
+:10531000C25930D7A7E41B0D40656844D52B8BA339
+:10532000AC0DADCC3FBFB0DFDF67D77CA07CA62A39
+:10533000B434F161A075B991E7FE8BF6061EDDB2BB
+:1053400042A7F51FC4B37B193D89F8425D6CBD616E
+:10535000DB1BFF0D9543201F131D92B578D11A0456
+:1053600097DDB7AB208A697F556CE3AAD158F2F07C
+:10537000094B14A79FD32EA256D26150F767E5EAD6
+:10538000DE52C9B01806EA8DFF729BD7B505AB9106
+:10539000252CC5B4D3651CC502B90E8C856A6BF289
+:1053A000D54D0ED225A4CE6379C886C7FF6DB8C28D
+:1053B0009437C63E220F807C5250C05B6242A709E0
+:1053C0009DEA2E7471CA1FCE8F8E447C85FEB6195D
+:1053D0002A3F63EE9B6FF6838C74153502288DD4BB
+:1053E0005051117E50FB99F7F526CFF549C0A85EC4
+:1053F000274D302AB2D26F81F85423E4D472B00220
+:10540000E0A9283E9ECE32A8900169DCD692C43530
+:105410008BC38A7129413664BD9C65BA51542FD023
+:105420007456DCB560C438D311C7CC032CBDA68735
+:10543000123FC95B188440B296308312CFF5B35047
+:1054400075C30FBF419943228133D5250D13B1DABE
+:10545000ED1844957B3C331897137949B742235D87
+:1054600040DE3CC381D8160D901ED9DBB7FB8249C4
+:105470004C62B14B8A6BBB40C4030E257FE5BCEF89
+:1054800074427ABE5AA25BD2365BF386780C4FF632
+:10549000ACA3EC648615917E61AE5402F6928485CD
+:1054A000B3C66458B32DFFA1823D57BEA2B8BAED72
+:1054B00014A70A41968C123072DA121A5E232EA7B4
+:1054C000F205CB78A8893EA58C1B00A24316462E78
+:1054D0008D59810CCCB91E6AB484638EABBF48175A
+:1054E00079655D7799E0573EE687F35F8BD8A6FC38
+:1054F000251021E9EB849F97DEB5982A3826C370E2
+:105500004AC7F63858F11940C5B4DDF1EF9F7872FB
+:10551000F9BD5B22AFD4BCD0D18C988FD9448F78A1
+:105520009EEFED58C5DF70CFF96EE3824A375262C5
+:10553000B7B0F7324616368F22F94DD6AB3E06404D
+:10554000EEC282270C7CF405CEEB6018732F9947CE
+:10555000B836D0C2062AC4F0377C559B5CCEF377B0
+:105560009D4EB02687CC80EF5E4F91409827AC8B44
+:105570003B5A209F5CF50D265D08D62EB3FEF51430
+:10558000265AC340CCC81E2FA6B3D6E6208AE4878D
+:105590003DCF84D765FDCA0E45A4CD4FE6D28159D3
+:1055A0000DB1D925791AE0B72ECE7B6A5BB3F160D5
+:1055B0001766A2121CD1024D0F7118E7A850E276AF
+:1055C0000BC6E2993CDC9D853F54C03EEA0F9E4EDF
+:1055D000D02B587DBAA3B52FE495B4B408F7F06D7D
+:1055E000B7050EA44A9C34AF5BE63CDF3B02C16DBD
+:1055F0001E6206950E316FCB45E0775B2D523B283E
+:10560000108071A7A9D9764735FB6675193CAEFFA6
+:10561000B3E97320AA682FFB1DD542CDDC240BA56E
+:10562000DA1BEF3F0EDF6D94153B701A25C53B3733
+:10563000EF907C5948FC0292BAAC90FE683422AFDD
+:1056400095D57F48F416103365CDBBA203BF334513
+:105650009632B243BA5277DC52745D6D654832ECD3
+:10566000642B3CFCFE7F60CECD6066414F38C32882
+:1056700076FFD73ACE2D5AA2A9E5B3C86F9956CB7B
+:10568000E39E16C69F089BEFC9D45DB37EE5C4F9BF
+:105690002C4667C7B4AB8DAFF74989FEC53EB0D580
+:1056A00061AE8E27A8090A9B39D62273A33B9218B4
+:1056B000BC31C6FF6DFF207D7586D70A51A5AF238B
+:1056C00077CD46AFC93B9B14B4961328726775A675
+:1056D000895100235E44A77851A9F2D0008058BCBC
+:1056E0009ECA74669366AAC28764B7EA17669D125B
+:1056F000E9F45E65E7A213F031EF9CBA10FCC97AB9
+:105700005B63B9A7E242FB08C38238626E71AB8C5F
+:10571000E774879BDA42D3D1F835890581B4394DD6
+:10572000C58CDA797BBE86E4850BBADBBF2EFF1B06
+:105730007B224015E26026363FBB2793D8AE61F846
+:10574000870C596716192FD5ABFBCB1BB62B5AC547
+:1057500020D6D32475A435AF9EE3AA6CA7EF2655B7
+:10576000DD92C6ECA39546B8BB0C8A3218680FD5FB
+:10577000BE055BA4BD3923C1EBFE1D93F918AF4CE8
+:10578000D3203781EB83374ADA7EC771CA8D4F8DBC
+:105790000201292DF7C0E029DBCC0A1C9BABF8A93C
+:1057A0000824FBF3E1136144A091F5B7251A744D69
+:1057B000E4FC68C64DBF316DE8D6FED61D1FCFCBC9
+:1057C0002DB34A3767CF8C57B7FBF0BF6E9C70F193
+:1057D000BFAF1FEEC48F675626F051E0F7A45F807D
+:1057E00012CB6E9B1C3BE807E7AB95D440C7E8E2C1
+:1057F000347E42C7EB81E405D17C2B325EAE992D1D
+:1058000001ABBC29B63904FBD090C6627FEE327082
+:105810002BB947420D4CB579BB921697BE60D85054
+:105820003151A23875BC8FF253ADA43F6BDB975456
+:10583000307EFDB3242E5C7AA18468DA9959D3773F
+:1058400028176025E8F805C9B40E330E3E0D65062D
+:1058500084B1962A06C5609702B3A509C2D8E4139D
+:10586000971FC1C543D95F4BE61AC5ACAA4888C08B
+:105870004C55B033E47A1A7749793566E3ABD12FCA
+:1058800070CB70DE9BB2B2EB70715C6ACAF4DDDD86
+:10589000E211F076DA38C5EF5FBB44466632FC9120
+:1058A000847B777E3F532A9E43BF90EB52C53AB626
+:1058B000D4EC3C6E3CF08EF67FEDFB62F12A99242D
+:1058C00068C31E20C954C493BA1880C827127F0C1D
+:1058D000210E8A5BD552FA41298C6081301048FE36
+:1058E000A23FA4669418E1A569F2345D311498BE14
+:1058F0009A1F6679E8357EEEFF05E90FB193645192
+:10590000CA8E65EA9D191511D4CC74333C34BC821F
+:10591000B594AB93012718E98D92B86426EF640C17
+:10592000A3564BCFEA8258B82C93197AAD91DC95E7
+:10593000EC8A5A194FA1FD5B8AE9E6762CE1AFC7E4
+:10594000F88C990C7E16384653F2C8AA882BC105EC
+:105950009ED682D5D776A7C252B328F6B5343C3549
+:105960008F54DAD22D8C15CBCBC66F7C68D0F570F6
+:105970007277B629AB4A5F8745002AC22E73919190
+:105980000E36A8DF266DA244CFA51DAA0692ECDD37
+:1059900045779690219624ADA899FEDE4B0B87E9BA
+:1059A0009669C9B07973C22BAA924CBF6C8AF7135F
+:1059B00033B52DAFD933030726E37F592AB22CCA5A
+:1059C000C6B11F60CAE7BE834D20F59C870F21AE8C
+:1059D000EC06B6A9870E2BE77157B9EDCB5E6FCDFC
+:1059E0003A7D7F773BF4381A2C850AB65E661CFF39
+:1059F0007EA62A6956C212490DEFA89A557DB62F88
+:105A0000591CBB79894C86DB9933039C305A42E69A
+:105A100030991FE4BB0F6A37ED25FBEC06F74123F5
+:105A20000F1E61231E2693756B77841C0C3C7CCF64
+:105A30001E170D17BC27AB731B4AFEAE693F94CFF0
+:105A4000A2F775516A3C774919923A1FA99540AA65
+:105A500029CB1E9FB58E6A2C1F626FAE5446024D35
+:105A6000735338E8D6C7250875EE593AB71F4A2E42
+:105A700030EA39ECF462495F400D6F60A4128C96F5
+:105A80006400E01238B78EECC72D620103D4742293
+:105A900054A4B2E4B00506BB8EEEE9AEA936F676A4
+:105AA0009F6BE101A482631D6A164CD7DDE44E12A0
+:105AB000864CF2CAC13DC9D88AB7957F2B3C9A64FF
+:105AC00090E864C6803D48AD6B0778949E40D666EA
+:105AD000097468EDDFC5CA18112391F6F64A23DA76
+:105AE0006A68C0FA09FF762B5AB161E388D9630A64
+:105AF000179042DE4BC6F2D96A06E581C7232F8C88
+:105B0000E476DE83999C009F112D307940F844B6ED
+:105B1000D8058E456150CD2B1198EEB19F7B45E69F
+:105B2000B09BBAAB32C6FF0746DAF04F96D44C12A0
+:105B30008BA30AF65E5834A46976DA42887297E13C
+:105B400086BA6855C3C9C7B2F960208A45E22EEF0C
+:105B5000900F4E60BB92775E9D96F4560AAB5E1A2C
+:105B600082AB1E9A47DDEA1005FEED703A0A3D83CE
+:105B7000CCD9709C8AB81455C69780BBC6B2F0D3F6
+:105B8000B95101A53C1CA975A14B3C0672C38B32CF
+:105B9000470827ADABAD5FC1F2B46C9E00DD431B7F
+:105BA0004E22224BFAEB6D176D58756E0945AF9E6C
+:105BB0003A9F05BA76C597F85CD72B0D498971A134
+:105BC00072B5E9D5C0CB864DC107A91ED8C05D51BD
+:105BD000C1B4B3CA41E5A610A31E81439A17DEA043
+:105BE0008A551666D9021A22FCA164802DB5096D6A
+:105BF000767D0F18ED492F8C21E54E0201768BEA58
+:105C0000DBBFF1B7DF7E3AC06CB7BB05CB4FAB0350
+:105C100087C9AEBDBB8217E5AE7D923214BC90A69B
+:105C200083BAD32F341D6209D4DBED0446295DBA53
+:105C30005A0A1780543ABD5A1F329002ED1B68CAA7
+:105C40002FDD06453901C3F6BCDB5340E4DED753F4
+:105C50007D984F1392CC37A63EB414DF3D4E530AC5
+:105C60007A0E2C2A66E89D52A557C1E295F4F64FAC
+:105C7000D1D2DE8ADC47D290D562AF3369CFC64736
+:105C8000D6880DF46B2B0C910909A09B58DEAC73E0
+:105C90007249383FB74EA21CD813F8A9B41CD13FA3
+:105CA0002F2B526206EA49D9E8E2C32BCF3F14F208
+:105CB000CC5C9FBA1F794D71D6CFE78D4E45081D3C
+:105CC0000DEEA98EBDD00AB7E5C71CAC88719FD672
+:105CD000B79083E62421340FACBD84D928AD32AC13
+:105CE000A3C3946705D3206BDF279F495ECB1ADBE4
+:105CF000CE9A31E7ADEB5AFD19955D571F507E4D99
+:105D0000B724A0E993280045AD1B62CA3EEA6A2881
+:105D1000CE152791E158AFEC9E4DDE91E1CC5712A4
+:105D2000A6FAD94BBE143081D8F96249F52533D093
+:105D3000BC9CFE0A1B01A1E1C7E586BF3E81CF6680
+:105D4000466B792CC3C52A585A74069AC47FE65903
+:105D5000BB98F7B6DBD2B88D587639124780E3F29C
+:105D60003DE5E9B1073FE630F624DBF657DB358A3F
+:105D700042752FB98A7700137117DC2C979A43E488
+:105D8000789B310BBABD9D5F264973F93F87FDFCB7
+:105D90002C815466B5C6427AFBE7A851B413A7E438
+:105DA0001AD061EECECF3CA242AA8C48A1E0A09EC0
+:105DB00024CF43D60362123CED1DDB4EF0D5A5B4D3
+:105DC0000BD9D7527091921CF21B862E6F86172C1E
+:105DD000512EA0AAE6C4CD1B411C4BBF750B56C06B
+:105DE000614870BEF50958732AF4A3E80B6521CE0B
+:105DF0001DCF7E02FAE29D66A246DD19BEE5E07E79
+:105E00000ACB4D89E5867011B26EC9EE3CCB052DEB
+:105E10009AE5587E7D2A67AF9E75EBA1FDCA33A730
+:105E20006F8A6EC9675896E5365A32164C0A5A611F
+:105E3000EE3B198CF90EB8D87BE2CF04C0D7E11E37
+:105E400085AEC3B3926181BE4294A81BA536E4CB54
+:105E5000457661BB54E2DAFAB13DCDE9B415B367DA
+:105E6000D7A595F854C12D9C37D968629B8A97AB0A
+:105E7000DA9597F08DA00E37D92EB93BE1F842ADF7
+:105E80003A31982E52DB7746537C92D8E3EFD872A2
+:105E900042D8A297BCFB7D6ABE9DE2E7631E68B153
+:105EA000BFC31BBA18A0F66868379D7CA0E93A8882
+:105EB0007AD355AD5A555F0F51F18AFE6EAC816FA2
+:105EC0000C81C634BF19FAB3278656CBBB68EB19D1
+:105ED0001553C685D5AADE9E3AEC3915EDBB1E904A
+:105EE000AD2DF699DDD223EBB6107E72531174CD31
+:105EF0007E7F6D9E5F49B30424DFA69B68EF159AF1
+:105F000069DD7263BC18B8F0ED33EDD8EAE64BB545
+:105F1000803D262EC8AF8A7F1701DB7B855D81D24D
+:105F2000A67EF9FE4E0EEAD293F31BAB75CB39D6A3
+:105F3000DB8F8589EABD493838351095ED3FDD188E
+:105F40005609DBA7707C113F984A50F7293635CCAB
+:105F5000E438C527560C211FAFDCCD62D8492FD4B9
+:105F6000FDD05295C9970AD9EF1A11A04E175508BE
+:105F70000580DB7D3E39ACD042DB719B7255E4B5C8
+:105F80001B7EA8707EEBFFF35DF735DD38035E24E2
+:105F9000D23E40671ACA1390B6F1E2D09424181F7B
+:105FA0009F9919756E652563A484ABFBBBECD0D8B3
+:105FB000EEFFED3455881EDD656901B7BCC882C0AF
+:105FC000949E86D534B75E43775DDF1A1EBDF29F7F
+:105FD00030233B7ECF9CAF7D59057CD5DBC012269C
+:105FE000392F612B25521EDD68663E95E8F564D198
+:105FF000631B168111C4A8F86EB05A050BB82DABFF
+:10600000A1D0F587F899FB017F68A8B1CC844EA395
+:106010004CEF71516847E94A14D02E5E7906209FF3
+:106020009185FB4D4700520303D76A9FB2C3007EA0
+:106030000B47A67F3C1A0A62D2249A5D556F82F7FD
+:106040000ACB1EB3D0A6F5961B4C27461ACC9B95BF
+:1060500019ED32A084A238DBE997477A8B8023CDF3
+:1060600039A715D7F31BC4C7095E88651C95482D51
+:10607000123CF883CC8B068BAFFD6B08E5D67B9D7D
+:10608000D296445D169D360169299E959C42957174
+:1060900043F20A16ACB2538CDA0A5D2B060CEE8181
+:1060A00081ACC00209465FC24FD83F34DEC9C1107F
+:1060B0006945F838C2A1DBB572EABFCC52A8D5DE7B
+:1060C000B6CD301C21662DC673BB518B02FC16BBAE
+:1060D000378B4BB686C75AAC1716978294DF9A85D2
+:1060E0001252DF4BA0CD8C89FEBD0883FE026CBC32
+:1060F000052D59A5F6F14510F67D63C38384710122
+:1061000044B6CFF608B3020F2C9CB37E55A2AF6500
+:10611000035484505E3F44643AE48C5B3DEC41E1BF
+:10612000F240CD75A1CF06F4C636B203A11132A458
+:10613000797728EF7DE608550B879E0B42313A753B
+:10614000FCC215B043820892E51F1BA95D34ED9097
+:10615000799A997C8780CC0D3F42968C25845CC1CE
+:10616000ADE42241A99892C85E910B1E5EA17956BA
+:10617000C545B90FA4087E8B384B16E3EC71E9AE28
+:10618000C1563851517561E4BCA2C1D7F68A02A844
+:106190000868CDE02F8D0747D82980DFC654A704B3
+:1061A0000D270386532CD6595070D6CE3402464163
+:1061B000E494FB1F45F35276EFD8F2980E27338311
+:1061C00081F5F5CE66C049D9540478716C13A200EC
+:1061D000A425EFA28BE49A7C64C4D73220BB9E1323
+:1061E00096CAD97D566D6962D5EAB898CA81C6AAA1
+:1061F00080C817270BB23608E6E8058FD30DEC11DF
+:1062000028C71477A254F613D35E28B3D31B4FA329
+:106210003A573AE15E4AA1644FDAACB94C394BCFF8
+:10622000F52482D1605E4628BF79E4178CDF990699
+:1062300084A8B8C66BF9AAF14C6FA79DD5FA45178B
+:10624000DCB278DAFD3F74CAC60589352F03911D8B
+:10625000845BF8DFB340D4C45F9AD73D628A20A242
+:1062600010933C779161525D3C592751FB5C305350
+:1062700066CC0F7ABE2FFCC9C93528CF8A35465067
+:1062800015ADE7888C87D67CD417C2E12BE2F18C60
+:10629000D3631339A8FBDFFD92DD545DB962F0EDE5
+:1062A000480476D028AF2ECFF4450F3682D7237816
+:1062B0006743A12A99BF90068B357216FB7D28CDC6
+:1062C000D0B0E23F9CAC3D457D01A946A3010555F8
+:1062D000A19BF70D1E3B2E57B9D149F08DD84F75B4
+:1062E000C5EC7B4D41898EFAC8A28E02EE5E05C1D7
+:1062F0009F78508A99D7C96A6783A7752364EEB5DA
+:10630000763FCC954CE861EE6F2DDA0DFBEDFF7218
+:10631000D169CA406C409E7ABD8DC3C509AA136A73
+:10632000ECF509CB3B85B337843AF0B94EE3AC8A40
+:106330002B0EE4E364B7A16B8C3C8D602F0597EACC
+:106340007D26D2E8FBEB6798057BEEBC413DE94238
+:106350005497883BA847A1F55DAF57C3B8FCE3DC71
+:1063600088DE0FE08BCE600D1792ABE778A2DB8A58
+:10637000052869E92152694F38417F401C5129376E
+:106380003E649EA0D94C240A3A359FFE6B6E23B022
+:10639000ACFDBF2C0EE515590330F296A538137DE0
+:1063A000B49BA91D8EDE05D7FAB5739B62238FDCE3
+:1063B0005992815C50E35A953B3347555CBE9BD361
+:1063C000FC07018B4E97588E1F7B2A972CF4B9FA45
+:1063D000241A12071E010F799A35D00AACB9E2CB04
+:1063E00088737C9A0E36D6F3BBC90BE8CFB5B9FCDF
+:1063F000D28DD3D8DAE86832EF3B2AD9AFDC001768
+:10640000C4ED4D3C61ED1CB6CA6149C2A3B6391C4E
+:106410006B590ACBD30C38030D124C74023D4CBEA1
+:10642000E6BFB8D6775EC7EDE77D5DAD0CD36CA94E
+:106430000CD4FF9BBA3D6DBDD93DD7BABEBD7CCC57
+:10644000C55B90E6F01A2B93773B0378400A3984BA
+:10645000871DE690CBFEDD7A9427D7FD604A7D3C10
+:10646000C6B418DCA9476827AB89398A8730DA4473
+:1064700058AB9DDC51A6ECD503719B063357BF7218
+:1064800099FD17E67DA9955331646878A0F5AA4D6A
+:10649000B9FD9D9BE25B97939DBAB0A430D7BCEB4E
+:1064A0008667E9AE4EB472A229837FA669D2370C03
+:1064B000879FDEF7CF08651BC19C0C862F736A2D62
+:1064C000AE05605470E10FE7D2D0C5B4E323657721
+:1064D000CBCE26C7B29D46A1B8AAE40E08A088AAD2
+:1064E00039D2AB7FF15E39C50181F03521D1E20FA0
+:1064F00074437F2447A398F5D34E5E6175E779A274
+:1065000093A0172B4AB324335B0C967B198CFFD1D5
+:10651000553C9C28D1BF0E922C16CFB53DF2246875
+:106520006B3AD6630908CD9C8D9C1FC4764A9F6E3A
+:10653000EF775D53B52016BD97253003B92DEDD00B
+:10654000DE0AF5C0F040EED7AEA6582BA14D608E06
+:10655000D269FD4A8221027FF06388E29DF3877948
+:106560008271F5F4C0E03E46C7C4235EDDFC622ABA
+:1065700038378997478569B0395F9C2F85ED9CE056
+:10658000F54042E27599E2B995E2E8007F9B9B767F
+:10659000B64223EF0D1035E85B6A1012A1746A84CD
+:1065A000CF8F6A16034F90C55B6DDCFA1E1AF9C3D4
+:1065B000F27CB4457FA61DC05BB60BE2BDAD91D5A4
+:1065C000FD791D5300723F7A95A3CC2D9D2E374542
+:1065D00073BDE84BAADC559A38EB3446796A87825A
+:1065E00024A5B207B60765FE27B7C0EB907C040C64
+:1065F00051D21A79D046AB36D0349DD9B99B97D8B1
+:10660000EDA7A66F2D94FEEBA499757126437EC36A
+:106610006E2DE28AB60FA9E295901B383D1AE6016D
+:10662000A26D0403E5011D7EBF0ACA68C722422C81
+:10663000A74D992EB57D093258641336A5E9020A93
+:106640005BFCBF283DA4E0FBF2FE479EA7D40243BB
+:10665000266F7B68639AAFDC9866835AC51994A04D
+:106660002943B8374D9896C1DF4BCD5C4392C48423
+:10667000E9CB9FA9169F151F61A92D3A5A271E46DF
+:10668000BC0E447946559C166D9AD8FC40034FD3F6
+:106690009CB5426C1029C5953AB97383E0DFC7CE2B
+:1066A00054366CB0380BBE34F66D3F6F32EF554642
+:1066B000D229B29F29D528C08B81DC4922612A15B5
+:1066C0007801A3E2077DBCD37B59AE3DA44532EDF2
+:1066D00052A886816940760E7CAC5AD17D4218FC66
+:1066E000B991262BECF1C0317D822B9E44B6B66663
+:1066F000427140D486C0FDBD2249923EDBA1DA2121
+:10670000976F533173650339C490AA13F94C7737E7
+:10671000707067E1EDD9417C4F629F9BA077FBEEE3
+:10672000C2F8F6A14A382E8D0E65BB755232436110
+:10673000E2867B858F1D0A1E52F5F1CD5E2A8BF70E
+:10674000E2D4B50E3279E20965E02F4DB635AFAD32
+:106750001389C37755E0ABFEDA5CC32BDA448CA80F
+:1067600071F4E809D4CF1A0B43DA14963E2C6381F6
+:1067700062B242038B83FC13AAE12EC1614F8BE40A
+:10678000390EE523C518B11EC8C6985D7B4DB5B05E
+:106790007BB87CBBD8F1F97A9CA49AC373211525E8
+:1067A000C9625178607F6245A0354E4C9162F36AB0
+:1067B0003E914E2AD918BEB94D76846E10DCF9A6EA
+:1067C00060BAF8267CEC388C8146B7BD86C1C8B467
+:1067D0009A780A62CC034D065C0300C3ACE730CC68
+:1067E000B0EA076B5720A400F50E7EBC41F791C4B8
+:1067F0005D261A09DFAA71ED318D77ABF99A80EC2D
+:10680000BF3CC976FE844183D651BB755401318F9C
+:106810006B7F95412E04B65A9D65FBDC35553E22B3
+:1068200021D6123B8B8F05698CB43C07FCC82D4BDD
+:10683000C30552F16937EE44CD5DFA60401BA922D1
+:106840000641DD0A42E7D7DD77E013AA51B48EC9CD
+:1068500014B95A7BEB0AD1DBA7BD47BF611C7F008F
+:1068600026E015BE819CAE3DED13435EBD7960DE32
+:10687000EA4F8B28ECA6D22D8DA15B59E8B4516567
+:10688000333BD9CEEEF8E70C9CC293FCD256F66EA1
+:10689000BD6EC04CF457BC2B7AC3BD5622DC18C366
+:1068A000BE2220B0514A33CAB7E22B0D1E22A9F7EF
+:1068B00096A4D23D94DD653C02D4B50CE50780E595
+:1068C0005D40DFDB880EF58B7B2C2CACA5B7D8A305
+:1068D00004D2A45789DDD978D283153BCEC84F8C1A
+:1068E0008FEFD462F76561609CC14A7592A82F2B27
+:1068F00044DFF8E93BA6DA0A0060647A19DF8D64A8
+:106900009DB7FC700BE8187456C667819827E05352
+:10691000CB7E6C5B9A5CB1E1A430E900AF38801C9F
+:10692000621116350A6826751835483600C18DCCB7
+:106930003B22A7110D8A53FDA01FD9CFC14DBED157
+:106940002F2EDEC955FB270742BA4D44C18461EBA7
+:10695000790F8001AAF78479B449BC27671607F339
+:10696000883F50CA32C92FDD24E9D924B216845A8F
+:106970002B57B04504C547998317008512D44C4264
+:10698000FAC027D6E656A04FB906320EC9F671DA1C
+:10699000439BE9D847438689D95A7DB7E783E35CAF
+:1069A0007F135C9E9FEE508F94414FC6A19161F082
+:1069B000A0C6AECF3153D389FEA09978F8C4A7CA38
+:1069C0003D8BAA028E250419623DDD31984E35DFDC
+:1069D00004098473C876FE9F1285BE55ECBC789E70
+:1069E000999BF8F3A3B584E39C44BDBFA6E3187854
+:1069F000C489F37BDFA12AC60C351C6D7FBC3D83A7
+:106A000086DDF27864BF2929CBC7D53C2C53937C13
+:106A1000B6FEEDDBBF138C7D40C4A0DE37C97E948B
+:106A200052CE53D191FB0FDDA8BECF6F177FE65832
+:106A3000D2512D247CB29B622D0AD092B747BD95CE
+:106A4000E2A531ED526991A2ECE274152F7F2E552B
+:106A50008A0BB6DFB5BACBB4714AF34CDE7404F4DA
+:106A6000D83A68A261DDB34C5BC10B814E2C8CDA45
+:106A7000B75C51C124DDE643CBE4C2A843FC394DE9
+:106A8000344F282483AC7DD1DE9D08DF919DDDEC61
+:106A90002AD7586D8DF515BFA1EFF11EFAB0BA2DAA
+:106AA000BD7A49C4BF9D2A2B4F6526B11D3C36B225
+:106AB0000D7E063A3B66D2813EB42E7AEB1F6DC541
+:106AC000DD1E1142BF7A194CD169ACC32C223C2E79
+:106AD0006A69FE62E68D858C0C06EFB41E9BCBCAFC
+:106AE000AA5B4C7B839F1DC0FB600D892827D82A99
+:106AF000F1B59BB944694FD9B448ABE9567604FF68
+:106B0000CD8437BB84150240DC2E597911555A8F3C
+:106B10009F130D097C3D85854BA0F8AC65B272A82A
+:106B2000562FFA48238BC4D311D59A934C5E26FF77
+:106B3000C1780A3D14EA09170449F1397574694BA3
+:106B40002611E0964EE4216D4740B968F6971D2D59
+:106B50008C36FE43086710D56B8BD819DE3614A02F
+:106B6000EE1D3897E3D162074E06B17FFA9EA9ED7C
+:106B70001CA999897556F53713A8742E6058871A81
+:106B80001B824F90234AF0F0BB05A14CFC497EBD0F
+:106B90004418B2C8E4A26865394010F3EF3D6BFDBC
+:106BA000A964F00803BBC9C3B2D7A9D7185EA3284C
+:106BB0004CA77CB8EAC2FE164A3BA6D44C53B91087
+:106BC000B9574FFDB216025EAD0031C981ACCF0E90
+:106BD000C486636E1CB420D77DC81E21ECCEC524AC
+:106BE000DF786FE6B553286D4C43544B6DEDD63BC3
+:106BF00027B54C7D1CD8FE3C25D1BBBA4DC0E4F571
+:106C000060D2F8C53794677AFC1C3E1052AD0984F7
+:106C100024D546C6F53BE307C3B49E9311FB0F781A
+:106C20000BEBCA05AF86E398465F476DC9421E6409
+:106C3000A2D9EFAC230FD1EDEFB539EEB74754E150
+:106C4000746E83B4677C7DAB8E0B0C9122F298043A
+:106C5000C0CB5FDE9EF98146729590C193E9A21286
+:106C6000345B5AEACC51A51F40BCCED2408A26C321
+:106C7000690EAEE7D1C3C130243529E4276E4F7ABF
+:106C8000600770437474488FEC3D3617958F15BFBD
+:106C900064506E7D801C7F1A8130E6A8B90CF043E9
+:106CA0007F531D36E347269F2A9C7AAAF1E26D990D
+:106CB0005C78863F1802E27C0414A053604754734A
+:106CC0003B91D989FBC23BECAF23068EE5121C0336
+:106CD0001161C43A2020E224508425B8F3A9ADD331
+:106CE000397729E982440E19E42A8D4DBFA4F3C0F7
+:106CF000526E52DF4FF1F2BD3FA1795905F93AF6D4
+:106D00000C0AA211003F0132059F05FF090041AAAC
+:106D10003F000000001D101E056015D7032D2F0138
+:106D20002C01F0D2F0D28396E5C40503040A46088C
+:106D30000A01013C404080800000C8C6595B808049
+:106D4000660040332801010000070A00FF00198097
+:106D500019C080C0FF00190019001900190013C0E4
+:106D600013FF80FFFFFFFFFFFFFFFFFFFF00780023
+:106D700080041B00601400002C01FFFFBF963075DB
+:106D800000CC800040FF79002C01030005050707B7
+:106D900005A00F0E100104053F00380000000000A0
+:106DA0000000053F003800000200000000053F0021
+:106DB0003800000400000000053F00380000060015
+:106DC000000000053F003800000800000000053FFB
+:106DD000003800000A000000000000000000000071
+:106DE000000000000000000000000000000000099A
+:106DF0000909090909090909090909090909090903
+:106E00000909090909090909090909090000000016
+:106E10000000000000000000000000000000000072
+:106E20000000000000000000000000000000000062
+:106E30000000000000000000000101010205010146
+:106E40000102052D00060001030303010303032DC6
+:106E50000605003F38000602112100000000000076
+:106E600000001D1E1FFF353433FF000000220C1CE4
+:106E700015181A1B111917131016140A0C0D120EDF
+:106E8000080F06090B03010207050400252423321D
+:106E900031302F2E2C2D2B2A292827260000FFFFEA
+:106EA000FFFF202100FF012400FF0439010020FF23
+:106EB00004390100203333CC1C0219100A3006308B
+:106EC0000303881F10031003099614142D0C0410DB
+:106ED00040803F0000969696969696040A4E0000D3
+:106EE00000000000000000000000000000000000A2
+:106EF0000000000000000000000000000000000092
+:106F00000000000000000000000000000000000081
+:106F10000000000000000000000000000000000071
+:106F20000000000000000000000000000000000061
+:106F30000000000000000000000000000000000051
+:106F40000000000000000000000000000000000041
+:106F50000000000000000000000000000000000031
+:106F60000000000000000000000000000000000021
+:106F70000000000000000000000000000000000011
+:106F80000000000000000000000000000000000001
+:106F900000000000000000000000000000000000F1
+:106FA00000000000000000000000000000000000E1
+:106FB00000000000000000000000000000000000D1
+:106FC00000000000000000000000000000000000C1
+:106FD00000000000000000000000000000000000B1
+:106FE00000000000000000000000000000000000A1
+:106FF0000000000000000000000000000000000091
+:107000000000000000000000000000000000000080
+:107010000000000000000000000000000000000070
+:107020000000000000000000000000000000000060
+:107030000000000000000000000000000000000050
+:107040000000000000000000000000000000000040
+:107050000000000000000000000000000000000030
+:107060000000000000000000000000000000000020
+:107070000000000000000000000000000000000010
+:107080000000000000000000000000000000000000
+:1070900000000000000000000000000000000000F0
+:1070A00000000000000000000000000000000000E0
+:1070B00000000000000000000000000000000000D0
+:1070C00000000000000000000000000000000000C0
+:1070D00000000000000000000000000000000000B0
+:1070E00000000000000000000000000000000000A0
+:1070F000000000000000000000000000FF0EF8CCBF
+:10710000010100010100000000000000000000007B
+:10711000000000000000000000000000000000006F
+:10712000000000000000000000000000000000005F
+:10713000000000000000000000000000000000004F
+:10714000000000000000000000000000000000003F
+:10715000000000000000000000000000000000002F
+:10716000000000000000000000000000000000001F
+:10717000000000000000000000000000000000000F
+:1071800000000000000000000000000000000000FF
+:1071900000000000000000000000000000000000EF
+:1071A00000000000000000000000000000000000DF
+:1071B00000000000000000000000000000000000CF
+:1071C00000000000000000000000000000000000BF
+:1071D00000000000000000000000000000000000AF
+:1071E000000000000000000000000000000000009F
+:1071F000000000000000000000000000000000008F
+:10720000000000000000000000000000003F01320C
+:10721000059F1E0401C65401000700FFFFFF005632
+:107220001D10C001E0000000000000000000533508
+:107230003130304B0000000001030F00030000005C
+:107240000500000000000000000000140000000025
+:10725000000000000000000000000000000000002E
+:10726000000000000000000000000000000000001E
+:10727000000000000000000000000000000000000E
+:1072800000000000000000000000000000000000FE
+:1072900000000000000000000000000000000000EE
+:1072A00000000000000000000000000000000000DE
+:1072B00000000000000000000000000000000000CE
+:1072C00000000000000000000000000000000000BE
+:1072D000000000000000000000000000004000115D
+:1072E000060112231E0C0401011F000800213400B6
+:1072F000000000000000000000000000000000008E
+:107300000000000000000000000000000000780005
+:1073100080041B00601400002C01FFFFBF96307535
+:1073200000CC800040FF790005A00E050900012D6A
+:1073300000012D21001D00001D1044502D0201BA36
+:10734000001C05C0C840F8FB080F58067F20848841
+:10735000E00300000000000000000000000000004A
+:10736000000000000000000000000000000000001D
+:10737000000000000000000000000000000000000D
+:1073800000000000000000000000000000000000FD
+:1073900000000000000000000000000000000000ED
+:1073A00000000000000000000000000000000000DD
+:1073B00000000000000000000000000000000000CD
+:1073C00000000000000000000000000000000000BD
+:1073D00000000000000000000000000000000000AD
+:1073E00000000000000000000038370D00015400CC
+:1073F000000000000000000000000000000000008D
+:107400000C1C2500001D108124000000000000005D
+:10741000000000000000000000000000000000006C
+:10742000000000000000000000000000000000005C
+:10743000000000000000000000000000000000004C
+:10744000000000000000000000000000000000003C
+:10745000000000000000000000000000000000002C
+:10746000000000000000000000000000000000001C
+:10747000000000000000000000000000000000000C
+:1074800000000000000000000000000000000000FC
+:1074900000000000000000000000000000000000EC
+:1074A00000000000000000000000000000000000DC
+:1074B00000000000000000000000000000000000CC
+:1074C00000000000000000000000000000000000BC
+:1074D00000000000000000000000000000000000AC
+:1074E000000000000000000000050400000155003D
+:1074F000000000000000000000000000000000008C
+:10750000000000000000000000000000000000007B
+:107510000000000000000000012400FF0439010009
+:1075200020FF04390100203333CC1C0219100A302B
+:1075300006300303881F10031003099614142D0C42
+:10754000041040803F0000969696969696040A4E48
+:107550000618380055080000000000000000000078
+:10756000000000000000000000000000000000001B
+:10757000000000000000000000000000000000000B
+:1075800000000000000000000000000000000000FB
+:1075900000000000000000000000000000000000EB
+:1075A00000000000000000000000000000000000DB
+:1075B00000000000000000000000000000000000CB
+:1075C00000000000000000000000000000000000BB
+:1075D00000000000000000000000000000000000AB
+:1075E0000000000000000000005000180061510081
+:1075F000000000000000000000000000000000008B
+:00000001FF
diff --git a/firmware/tsp_synaptics/synaptics_s5100_a2_k_FHD.fw.ihex b/firmware/tsp_synaptics/synaptics_s5100_a2_k_FHD.fw.ihex
new file mode 100644 (file)
index 0000000..e9e11b8
--- /dev/null
@@ -0,0 +1,6598 @@
+:100000000F9518F400000010000000001000000020
+:10001000B798483D0000000000000000000000000C
+:100020000000000000000000200000003000000080
+:100030005000000090000000B0040000807D01002E
+:10004000B07D0100E07D0100107E0100009C0100F8
+:10005000816F61980D0000000000000000000000AA
+:100060000000000000000000180000007000000008
+:10007000EC130000555418004453352052302E32F2
+:100080002E31000000000000000000000000000011
+:10009000ED64DAC90200000000000000000000006A
+:1000A000000000000000000000040000B00000009C
+:1000B0000110A22A007F01321E37047F070041AAE7
+:1000C0003F000000001D101E056015D7032D3000F5
+:1000D0003000F0D2F0D28396E5C405030C1420085A
+:1000E0000A010141404080800000C880535BFF80CE
+:1000F000330080552301010000070A00FF001F00A4
+:100100001F001F001F001FC01FFF3DFFFF00140046
+:1001100014001400140014FF14FF3DFFFF007800CA
+:1001200080041B00601400002C01FFFFBF96307597
+:1001300000CC800040FF79002C0103000105070777
+:1001400005A00F14140104053F0038000000000052
+:100150000000053F003800000200000000053F00DD
+:100160003800000400000000053F003800000600D1
+:10017000000000053F003800000800000000053FB7
+:10018000003800000A0000000009090909090909EE
+:1001900009090909090909090909090909090909CF
+:1001A0000909090909090000000000000000000019
+:1001B000000000000000000000000000000000003F
+:1001C000000000000000000000000000000000002F
+:1001D000000000050501050505050105052C0006C3
+:1001E0000004040303040403034906030126210059
+:1001F000060213211E020C080F320400000000004A
+:100200000000001D1E1FFF353433FF000001220CCB
+:100210001C15181A1B111917131016140A0C0D129D
+:100220000E080F06090B030102070504002524230D
+:100230003231302F2E2C2D2B2A292827260000FF83
+:10024000FFFFFF2021FFFF01240000043901001CF3
+:1002500000043901001C9939CC1C0519100A30081A
+:10026000300803881F10031003099614142D0C0482
+:100270001040803F00001414141414140A0A4E0A8B
+:100280000A490A0A00010000000000000000000006
+:10029000000000000000000000000000000000005E
+:1002A000000000000000000000000000000000004E
+:1002B000000000000000000000000000000000003E
+:1002C000000000000000000000000000000000002E
+:1002D000000000000000000000000000000000001E
+:1002E000000000000000000000000000000000000E
+:1002F00000000000000000000000000000000000FE
+:1003000000000000000000000000000000000000ED
+:1003100000000000000000000000000000000000DD
+:1003200000000000000000000000000000000000CD
+:1003300000000000000000000000000000000000BD
+:1003400000000000000000000000000000000000AD
+:10035000000000000000000000000000000000009D
+:10036000000000000000000000000000000000008D
+:10037000000000000000000000000000000000007D
+:10038000000000000000000000000000000000006D
+:10039000000000000000000000000000000000005D
+:1003A000000000000000000000000000000000004D
+:1003B000000000000000000000000000000000003D
+:1003C000000000000000000000000000000000002D
+:1003D000000000000000000000000000000000001D
+:1003E000000000000000000000000000000000000D
+:1003F00000000000000000000000000000000000FD
+:1004000000000000000000000000000000000000EC
+:1004100000000000000000000000000000000000DC
+:1004200000000000000000000000000000000000CC
+:1004300000000000000000000000000000000000BC
+:1004400000000000000000000000000000000000AC
+:10045000000000000000000000000000000000009C
+:10046000000000000000000000000000000000008C
+:10047000000000000000000000000000000000007C
+:10048000000000000000000000000000000000006C
+:10049000000000000000000000000000000000005C
+:1004A000000000000000000000000000F739FEF02E
+:1004B00014FA2526010000000000000000000000E2
+:1004C0000000000000000000005C0100D0040000FB
+:1004D00094353433077FE10A848923C75D03355B94
+:1004E0000025C4E2199F5538AFEC149BA5F0B34228
+:1004F00084A415256B60BEFF0AAC5127D81E389B1B
+:100500002B7160E52CF9EF78F0056C000761DDDDFB
+:10051000C1272E8B7E94398BDD5E2588AA84B2811B
+:10052000ED4D39D503F37A7C24CD152D9F9989564D
+:10053000244964B84D0AC5289CEE70C513A21CF965
+:10054000C224FEC3BD3EDBCF4A1076512A03A3511D
+:10055000360FF51C911064C16D1EE4CB36B57DB924
+:100560005F1648053B7775D72ADCC66693EA6DEFC0
+:100570005FA06B7E19CCC6660512803430E25F4DF9
+:10058000728FF72404492436F82BAB64DD4E00F655
+:100590001957D130A90CFCF0362167E21A24CD2777
+:1005A0008CF375844D3A31BAD42A0147C69D7C85B7
+:1005B000F93DCAC640F859FBC3F94735A76C9BC93A
+:1005C000FF099FF28C114F4E8E5B13DF9F42D38C3D
+:1005D000EE29E1692D42B7CD98813FE8A2205E4E19
+:1005E000FDD0C66133416EA7C6E530CD7B8085A8BE
+:1005F000966EE973A95BBF041082B4CCFA1196CF52
+:100600002132806447CFE9E7168E00CEE71D72D015
+:1006100013B05E2A2BD9C6105A5430337DF462CF02
+:10062000349B9DD5A85E73B0EFE0FE36671AF3AA3F
+:100630003E0549B7CE232615CB1ABB8C25EBB70751
+:10064000DDAB72D012A131194657FA1905624AEF93
+:10065000969726AEF629FF039CDEE2272E5D51E237
+:100660008D5981D32E39A8CDFA438A2E3D5B59642A
+:10067000B9EBBCF085C950C47C899E46D2789451B0
+:10068000736BE5CA79F67A4383A709C37E0BA1038E
+:10069000158A9A76929EE21D1430AEA761E2C52EAD
+:1006A0004AA9838C068AFE90D6604DEEDAE0D4A18A
+:1006B00074ECFB5D3BFFD13867FF9D0AED5CEF31C9
+:1006C000EC643B114D2207250177E907CE782B1703
+:1006D000B9A3F9C006D1E5F0C5FA2C2E309C7526D9
+:1006E0002D8A2096D060CBA13BDDCE2CCA3261FD95
+:1006F0009228CE59E148DFD21FA82182CEE7E563D8
+:10070000038F8CDB23BCEE82CE54495EA11AD9D470
+:10071000F9EFAB597E753B19B66E9DCEB134FB9A9D
+:1007200042F86D1E91E0525FC5949779F03A5C3AB9
+:10073000C7A6CD20E79BD50ABD7C93419BFE4CCD3F
+:10074000B6CE1958D29D50ECE5C5F2C1FB99495A75
+:10075000A73ADCAD5539AFE187A678ADADF4D30B40
+:100760006B42030E86EC45A6585B161BF5C6E6AE3B
+:10077000EA50757DE848978A7DA6375754E6BB0353
+:100780009BAC9BFD55840A0A44ADF83D9AE076C5C2
+:10079000B71839433941989ED76406FF0A0D96DE93
+:1007A000E4E8B7F18EF55B98B384546785CBF27EAD
+:1007B0007C7734298B9CD313EF57D4CFE209AAEE70
+:1007C000F8F3D16FE4B040553E84AC3B62005F2A41
+:1007D000FA4C25FA6E1C731F586C7451D638B770DA
+:1007E000B7906F14647321EF071C32403F18FC2749
+:1007F000E235779CAB8220E5B6C0BD3CB16FB88FC7
+:1008000015CB6055641BD9121EA028A3FE7F795A10
+:100810008882519258E99D9F16E8A7467F510D7135
+:10082000B72384B4A9D64529DB9FE3AFAF3860670F
+:100830007C0FF20FED53BB0C50368EBA67D9DA97A6
+:10084000E27C1161E1190E9178827B1EAD145CD8B7
+:1008500012DAB981158F5C5903DA3747A83AB247E3
+:10086000A0B9A86128BB56454844E33F3E325A39F7
+:10087000AFC623B0ED4B8882D5CE354DF0C69EAFC6
+:100880007A88AA45579906DB14B669AE7EE78F7A57
+:10089000175F6C6B0779F6116E34573145DDCEF278
+:1008A00078B3101C53DAC1C48C9D28B2DF9A23CFD1
+:1008B000F93671F4C3CE08FFB3E8DA50DAE1178EE7
+:1008C0004D3CE4C612B514111445CDC0B135251EFA
+:1008D0003E5C71AE1A86CC56BC751D390C2C55ED9C
+:1008E00014F34DDB2B18B3282CE2BB2D5CD03783DF
+:1008F0001890B67295AF083450777BDD8E467D1028
+:1009000012F284F76CB3453AC9212AD452FB513D07
+:10091000047CDA77300C312C2579A06B1A58888F3B
+:10092000CC6054405267E795765ACCD0B1FD39027D
+:10093000CDD3F2E86719795C2C4FEAB55914A211AE
+:10094000E4A51792F857750567FDCA10D3A0394B77
+:10095000EC3252AA7350D038C65344088892F0340F
+:100960007F21434EE2B779B50B11A35672EB5E754A
+:100970008182AE1D3A1C5028767C5D0BD8449AE9E2
+:100980009131AE72CA6F0D40B830D4DAB9B3258454
+:100990007F7E6219CE0B97E517BFFA268286EB5B46
+:1009A000D7AF8250AC911AD8A96ADC6E8FCBA2DB8C
+:1009B0007B7EEF1C6B76EE4E48A5CE4DAF520921E3
+:1009C0001FB9346DCF743E15424FF8CB76C87AE824
+:1009D00024AF1DB2B1B7C72C5694856477224F91CE
+:1009E000DA26649A046A54E7A87131C31A2A138379
+:1009F000F26C7258122854AF0635DE708EC7159A05
+:100A0000E35CBDACBC275FFD4E533621548228A960
+:100A10000E3AEA56443E99B71348469D278321D0A3
+:100A20008868F3F054F6BB4655C501D561348CF3A4
+:100A300089A15CE65C0845DF0F0CA4B87599CC92DF
+:100A4000988209E456BE3CCA8A10F0028C2A3544CA
+:100A500083DE12B0F291D3E9805C547FCECFAB76C7
+:100A6000D2D003CEA283C213A892243F177FC264C0
+:100A70001A3E9A3A9A1FD0265F4DE3E5FD92EA634B
+:100A80002839C4697FD83276183543E5BDAA7DFD83
+:100A9000949C5DACB377E5BFCDABEC82D6C3E825C3
+:100AA00097521FE10FEF310661013582DCBFB2566C
+:100AB000D07CC30D7949F05BB52E2EC342A4ED4D19
+:100AC0007A6747F9119F4B2189A1F78C6BC0832569
+:100AD0007EAC334883006CAFBD46FE96CBCD4EF264
+:100AE000A0BD586B6B6D63202CE41037ACC6BD25E0
+:100AF000F00F1D42434C3767D39166DB81EC597789
+:100B00008F8E2DF7055562DE430DB7C56E60102739
+:100B1000B8EB6969CA03C8CC6DD2EBEF7BDE6851D4
+:100B200021CDFE02CC396D3FA8D27B47A09F114B4F
+:100B30001DC14C1F98486F564396286978BC49F2EE
+:100B4000E38649631D93CF7278265CBC4698D068D3
+:100B500015C7765AF4BCDCAC06BF302A8DCBE8470B
+:100B60000B52B5CB18868E64D8DCDB312588751A1C
+:100B70003095876A12B75DEE08F28DA244C32C2728
+:100B8000C3624B488C21AFC1083B3389302D75C8F7
+:100B90009F4DB16D4DBDC0DC89C2E77B2A402AB7AD
+:100BA00063B9A7DB90EEBE77DFB77FA5D60C9CD8E4
+:100BB000CB43E577F75FE6C845C72CA9DF575DEE65
+:100BC0007D4E261F3BEB12EABFD66B16228ED577E1
+:100BD000EF96701D7C77207174CD6FE999ABE009B9
+:100BE0007840563C3BCCCAAC4BB064095032E8BBB1
+:100BF00074F8D998D77F79283077058D9050009D6B
+:100C00003F2563E4937F1AF588F2B007FD26E59748
+:100C10001B5D12C72887897AA785F7B40C61DF5757
+:100C2000C36E77295A5DD4AB313AEE84855EBC8FB2
+:100C300009195172D683F05FA00D7F62CCB743696A
+:100C40003CC28FA803EAB3553FCE156D2D2A7433ED
+:100C500055101EE69898F7CE14313C37228BD311ED
+:100C600003EF64E95C996E6437E446E37573E1B5BC
+:100C7000DB07F9A48C17F7BDB50E7EBF44D597925C
+:100C8000B7D8EFCFD7C4D331ACEC63F19393CA0795
+:100C90001FBF413DB4A355D9DA6B4D29754C585F40
+:100CA0009109DA79C8863215AED74D4646CA044452
+:100CB00036E5C7B7EEF64409172227559715DB9995
+:100CC0003CECDCCB4528FF037BA8BA1D19827930A8
+:100CD000958A83474C73BA1CD4FE6A21F01BF06ED0
+:100CE000721245279DBCF0A4F41482551579CE3EAE
+:100CF00052DF1246823BC2BD77F177A87FB2ED6921
+:100D00009DC336217ABB1AE8323889A5618935E955
+:100D100065F50AA0FC4EFFD4DE70B3C3263AC79631
+:100D200080A0F2CEDCB86849FC3BD554F94F40F2C4
+:100D30003DEC86F39572C003AEAAE2FC394B638F9B
+:100D40003C84718742EDE18FE1F2A850A1D441B219
+:100D500009D6EB326AD1075CF497D28738F6AA211C
+:100D6000DED28A3EBF5D803E1863599255117419D8
+:100D7000C6BB45007D59C29076178BC814EEE419A6
+:100D80007409C9FF137A447E3C827510727D43C397
+:100D9000A863C8BA93D9F3AA03E8CAB444B066C634
+:100DA00018F6A1A5EDA0B8D5D5901B9C340595E209
+:100DB000466D3A3BBB915179FA9872024498CEEB5A
+:100DC000DD6E30E4F7E921721412200236397E5FBD
+:100DD000B08402284A76D4B2E62005E26CC726A386
+:100DE00029475112A15F28CAF82B79B2DFF3D393B8
+:100DF000D9C822249D682F7B7334398BA85A03B23B
+:100E0000BE8B9AD14A4DCBA03295CA9A0A7495B23C
+:100E1000E25947F774460B5908B140245D32BB2EA6
+:100E2000DC4C63E3DD5C66078D2A4B97ED9A928775
+:100E300097CC1DEA12E76D97472B86FEFC0D45798E
+:100E4000FE3DCB1A727BFA48F17BA69E8B1618A248
+:100E500027EDA1F40E8DA65DEB8015BCDD08DC8EC0
+:100E600091B03206DEF69A5F948300C4DAAC4D94FA
+:100E700055859BF44A425DB538644050C678225887
+:100E8000BAD4394FBE61260612E7A77234D91FEED5
+:100E90008F455C83766AA07D17583946FFB43BDCEA
+:100EA00001E98096D1AF4DA890819B1D6AC4E28470
+:100EB000F8034A9C8E50201066EF3996E673241191
+:100EC00068AFF2339F3A018E249EFCB5245FAD2EAD
+:100ED0007E6389E73E52B6D5B03AA277AE13B8C565
+:100EE000C1330E26B77B8EFFF63A1BF02EEAA11611
+:100EF0001CCDCBA391FB9C41D15538DD955780305B
+:100F000019C23CC0855FF9BCFE2176C0EBC3A2E6E6
+:100F1000F4E0F8A6F412D13D4D6539AC6998FC6255
+:100F2000E3824374235F30AC5B6CF3A07377E6DC41
+:100F30001C0B41F64DD3AF858DF5A145478F6E480B
+:100F4000D954D145CB1ACF6617372A01A279EC1CA8
+:100F500005FB0BE5B4F24016468F09E86DAF765DF0
+:100F600089B73EC7DF4A8454F158329C36C36D4777
+:100F70002303D0769C001B78E1F1C0F2304D228330
+:100F800042EBA12B2F9F5516A3D6B20E474E0F7CD6
+:100F900040A77C669B365A81C9591C1E281E327692
+:100FA000E2C30D24E4896EE326AF7B59B464AF6CD1
+:100FB000635BCFD617E4E1A44F7AE3761B574B89E6
+:100FC0006EBDF41DD9FB5D3FBFC46EA1E44A01B5FF
+:100FD000129195F060DD0BFD5C4746E131C871620E
+:100FE00049FC055643BC8BECB004FA512470D29CEA
+:100FF000A030F42021589A7AA08A686AB3E39C4012
+:101000006DB6BC844E435766705DCF5945FA070DE7
+:10101000D887FC024F9775F4902DBF341578413E68
+:1010200085E77666C7422456962274A95F585D000C
+:101030000B41B2B8BD6AC0127699FCEA9834B63852
+:101040005A1DED84775B28C51120A32E034FBC43A6
+:101050003F7A9F4F0918BD03EB42CEFA58E05D2856
+:101060006023DE8ABC64B6458D68B374BE09BCA734
+:10107000F996F62CDEC8BDD89C6603FA980523D1F4
+:1010800073A1030EAFDFB18582EAC22BD2037A0AC5
+:10109000440A76D6D4F646ED22022102DE61C35B15
+:1010A000CA04C670B78D4FB8B001E039AD0F3FBB71
+:1010B000A1B2E2D2980B6CE53E838DFA94B98749D0
+:1010C000E8096E400A88A08A7891D98DF6A5404734
+:1010D0006B8409111FE7ACF340548940BEE77B974E
+:1010E0008CD22FD89DF9D1CD27DFB7D0CF08663B62
+:1010F000BDF3FB50454885C4EFD99EEAAD82D2D8F6
+:101100006ACD61BED088D9841770E2DB793ABEDC43
+:101110001D2E901F37AB649E597BB0AF812CD2FB44
+:10112000E175102FE4032C69A2E8881CE1FCED7244
+:10113000734448B732054D7FA0D30D63D7B6D98F1E
+:1011400054A3DCEA9A2BF8FB6EA6FD2C988D437C09
+:1011500079BE35FC8E473FF9BB647CEE6DD663D318
+:10116000CE851D1603877E3821D37D76B38223DC9E
+:101170006B59F0800FF1FB02372EAB4168067821E6
+:10118000A3357EDB8610FB54F6503EC57BBB318C0D
+:101190003B1A1298FA15EAC5E6F67A2C5CE5910B33
+:1011A000DBFF706B7ECB6FB38DE2168AE0005E6B67
+:1011B000C515182FE888F3E5B0A82CBF979C9D1E95
+:1011C000ABCA754B7DC029BDCF50A4990711394ECC
+:1011D000602A8956C6BF2E292AA9107822E870E015
+:1011E0007E8D2F33F6CD9E242B3E4EC906EA8A0A09
+:1011F0005BC389B7035BB34C11398AE06AFBEE81AC
+:101200004B825F981415FD9585698330A81F37A818
+:1012100067910C9D1BCDE2CD0FCE367C0626F0F5F6
+:10122000624BED9235C6FD784B42F640210716AF72
+:10123000FFE6301C710468D56587F7E9B6A6AE589D
+:10124000CCD8951853BB46C8D069368CF342245984
+:1012500015807E2D99D9CD5CFD25F90F091DD0A5EE
+:1012600054C696A6515110FD79E2B85A04E633BF30
+:10127000612BBDFB24ED8C242988202A37198D97FA
+:101280008E2B93B08BFEBF4115BDB13EEF6D91B972
+:1012900028D8BBBECF250561743B5EDED9BA2B0EC4
+:1012A000338571A92B4C7BD9325AC32C8DADEC47B9
+:1012B0006C4CD635BDFFDBE93ACE7E69F8DCB794DD
+:1012C000D5E5E814FED755F1CBFD848445DCEF83EA
+:1012D0005B9191D58BE069FD3615A2D68C4B9FE9C9
+:1012E000DA0474CB6C7F642241E4B1930E7FABA02F
+:1012F000B6385E509F920229C19C4BE971DBC6292A
+:10130000EAAEE58E45A6EB06F6CE22164C3B061E4F
+:1013100090B5ADE8FA26949C89454F39335CC19E5F
+:10132000F424AB17DD782C44FB7CD8326E644CC5BA
+:10133000ECD99A5FFA3210E3A679905DBC30A20234
+:10134000627E358DB285B9BA3E2AB3B9E995689CFB
+:10135000D1694FACE4DB67127FCB27E7EEA8AA7216
+:10136000CAE107C356562CE8B9B34EC228C48698C2
+:101370006BD6CDB901AD970676CB950662044034A5
+:1013800096DC80E129FF3C02C9FD99E93E8697F28F
+:1013900036F7750DB4ABA01201EB8C4C26994CB00E
+:1013A000E06F635D287BA42B7D01778EB871ADFC67
+:1013B000372E401A7C1DE89D58249A0187C8C00426
+:1013C0008340E9DF81072A3E2DAF1A44F809D4F59E
+:1013D000C3837CCCFB61D34202827608C694F82E8C
+:1013E00056664E7DB0F4887C525DD06998C98F10E6
+:1013F0008E41F2F6A8DEDF54EE724086E83194CFDB
+:10140000386EE6FB38FC0173D2C375D32F7797583B
+:101410005B387E59CB1E06243251EA77ECC8824DE8
+:101420008F5F27306FEEFC506406E9BFEC4720D099
+:10143000FD7A6A698E64FA3783DF6D7D8D4C537552
+:101440006C0EC59C15BD073A90D8AC3970B081A31D
+:101450001BDE7FF3027FC3F6F3DBC3E8E1B753CAB9
+:101460002D257B212441C1D43E63BA7545E3FA237F
+:10147000797F699B4D6D787CE2DD6DE728457F457E
+:101480003A48F80B130D7C51C6A344C2D03FB8EACA
+:1014900009E4D176790D4EB02997E51DE7142BD0DC
+:1014A0003F3019A7692D9626482EDE0383619D885B
+:1014B00032AFD68DDBC1EEF0EA82F88FA423DA9B3F
+:1014C000C8288A48A82250F6027D5F39308A831FD7
+:1014D000EEE6CB27A7B03433E71626B6C37E967266
+:1014E000208055FB3473DDAB1BD89A934E049FF0DC
+:1014F000D923C61A65663324ACE71CBC7D73F43A65
+:101500006C5F4C0FA5472F15AF80F0F35790507FBD
+:10151000FB56F5633290BB66C929A0DB92AF90D62B
+:101520000F106F7A0BA2B9DA137CA90FF89B6884AD
+:10153000D53208328DB5806B58C073EC0819C56977
+:101540001C8475F1A7151997DA0F9CE29672754FF6
+:1015500086A5C2F034C16C6DF98D25E583C9DCBA6E
+:101560000523EA1BA8848AAC2C8E5D51563BE5F11D
+:10157000B19F4CD72F98CAEF19DB98BECBA92E325A
+:10158000484F43DC2D3AE1D79228C58BF998F3B741
+:1015900070E9945F0494AF83C8FC1E6D03D9E32304
+:1015A0000BB5E7EE6DFCFFD16DB9A4F45FE99E5277
+:1015B000E1FECE2EBE38877E5DDCEF02C3FEA0C901
+:1015C0001F9EBA150A36ACD7E92C8F9376CA571BE3
+:1015D00031DB44BA1FE5B78D3B1EE1AA1AE3B1BE69
+:1015E00071E76E111212064797E3587CEBB2666002
+:1015F0003027697A142006D4DB518DB172760898B1
+:101600003511C8182DCA2552AC5BBE7E4C57D04848
+:1016100040F0CB745AA149BF423B853FCA8223F2B6
+:101620004C9D0821198547F5FDBF9358BCFC82E706
+:10163000C2985A5A0760F2BBFA53F70534CEE61D3A
+:101640009275165A8371A081E5D5F3ED04954CAEE1
+:101650008757327022F47C02EE4CF6E0BC93438054
+:1016600027E697DFBB44C9F706B24373D7CB24A460
+:10167000B49A114422A2269CFA05561ABD31F1E013
+:101680000B0B6A49675AD426B9C78A9356329A68AF
+:10169000F25B60BFA840A2361C4CF8193521CCD5AE
+:1016A000AE94721A8CB9A557F7DA2E5630A2312AA9
+:1016B000CD69A687D06CF1E76BBC0A2D4E6CB7A044
+:1016C000E64D9A39FF61473395CED58C72862B61F2
+:1016D000E8D68F0234BAB18754F3287E06F77149F1
+:1016E000B1AE454F7898F642D1AF6AF52A6825DC4D
+:1016F0005955B950DE5929FCEC3074A99A56F63C7C
+:10170000A5BDBDF56B77C231AB2119A5E0D45D7FD6
+:1017100035242F16A2B727DC902D9E03730C6E166E
+:10172000A54B77AFE8A0395557BD59514096EE4FBC
+:101730008FD61DD092B64F05082462EE73360C90FA
+:10174000369D2B5CD24C8ED514D03C64F93C4FA214
+:10175000C299C69FE11AF54DFE112785EBC168922B
+:10176000690A5F63FCF29A780CB75D097E122C035C
+:101770008C007738961E7EF76E7225DA27A446799C
+:10178000CC16DC6E871207C4400D033C6299D5610C
+:10179000AC4B639AA2AF5D21D03480926455B27A8B
+:1017A000542E1DE0F9026E51690A91106ECEC7FEEB
+:1017B0004F7F2778C404E0DE372F160DBDDD55CFEF
+:1017C000E1C8F0DD9CCF05C4E986A4F9622340FDA1
+:1017D00020214AD323895095812A8C72CBB0DEED2B
+:1017E00057D45441FF41BBBFB9A91EF24396884C60
+:1017F000CE07240A8781CB9D69469C13EC4FB778AE
+:101800007930F511578EF846CA8C108BD765A6E251
+:101810000044DE2A8F72845976D47DB7040899E695
+:1018200000330ACDBB3EDEC8F80138102ED1D57288
+:10183000C971A2E0737515A450836908B33C3AE6F8
+:101840004E52A394609723F50618BE65B223AB01F0
+:10185000ED2CC0138D3FEF3AA53D4E471E42D25F9F
+:10186000448C8449062A0F8F45DF0A20032547113F
+:10187000D0090C0E4DE149489AE957351B5DCF461A
+:10188000A03F24406222934DAD6339CFB1BD4C7F60
+:101890004B4EE144A9236D953A5276E2E4E9E8C55E
+:1018A00036418FB596F88FE3DCCE2A8FF11C06BF48
+:1018B0008CCE439EFC9964E6BC386010DD9729EC21
+:1018C0003B49AAE222CD6559CED0AB537BCE935291
+:1018D000B6C75CC96E492640FBFE2353DDAE52738A
+:1018E000B9B9860DC6D24C4F9EBC18F098B4D93108
+:1018F00016E8F66D665D29130B36FCF3078E05437B
+:10190000A3D0267312920B6B5FE207F17D15A34AF9
+:1019100007355808DBD02113839F94549A64D50867
+:101920003FBA0C7B8D1A34CB4CE5D2660E5EBF7F7E
+:10193000CBEE9A8F3EB1EBD313AFEF685737CFF8AA
+:10194000096184E2C46D76E6BACB80AAC8F81E9A13
+:101950006A1AB034812A784574DA24C3977659D349
+:101960009D25EA80B5D946A7F2A1D6444342B58663
+:1019700023A6471C3DA1AFD6EB668F9520A3357DEE
+:10198000AFA04E80EF5AD12CF9D252561712574CB5
+:10199000666FC71E5D37B07C847329D5900C569452
+:1019A00019CC89E02924AF8A63A6772AB208FB33D1
+:1019B00090FB8F97247671E9B3B753691A21A08AF7
+:1019C000DDE8E8C361773B9FD9D3A2CB64DBD66B5C
+:1019D00086F2B68ACA8213EE28A8B3039696875376
+:1019E000ACA3F6C6FD20A1D94138975B628104E221
+:1019F0001CBF3D2075155941115430EA2235301570
+:101A00000DE8A93AEE4EDC01290F7034E795805EAF
+:101A1000605FA17F023576A5BA1859AD3FB3F18555
+:101A2000FF0ED3E2322C3E1ACBDBC50D3C0CF24E3E
+:101A3000F9287904E2422073DA6A1AD3FD70A724E8
+:101A40005CE00F439D1A4034BDB0D5B467C93E4336
+:101A5000C1950367CB797077D8A143F2AE8B28C3C9
+:101A600092AEEE573CDC9B23737EA9F8827E5E45E6
+:101A70000095B03235CABB5DE1DB0E1478029A8660
+:101A8000A3A437B49490EB9DB27C720A9B61A80E1C
+:101A90000F70DD1A9F399601259E99E5B143BD313E
+:101AA00070AB57EA5DE2F8112C3A7474707663AE4D
+:101AB000FDE42EC6920BD01B88FF0D48667BA5B6B1
+:101AC0001DAB4D177D7388697C52C78F2149139FC9
+:101AD000AD6C1B136CF8C800612D9CF6CE35E1711E
+:101AE000BB1CAD356CA08777F7C58750C5EC52D8C5
+:101AF000D13915C020CC8D856DE9580ECCA300409E
+:101B00000604C984EF46C548827A56D312BD879E23
+:101B1000A992F457F1D0D1E1FD7329918721A1C594
+:101B20008DA3EBDCDFC15A7B34FF5B3987CBD14F10
+:101B30000540C149E66124BF279AC8C36723C8F39B
+:101B40000218DABDE13DFEF779F9EFC354A6A6BD50
+:101B5000538B73E8F53FC36DFC91749524E9965F50
+:101B6000F104456026BD1CB81CE691CDD1BF27AA63
+:101B7000C9813263EB389F2349C1A54FD80D4B244F
+:101B80006DD7BB300C4C59B956D1D5F8ED8FD71E57
+:101B9000EA14C4CD1CB7B579511C13994FD9025220
+:101BA0003BE0FBF48F900AAF6D078C690063E9128C
+:101BB0006E50C085CEEDAE8139892F30C434A50476
+:101BC00039DF7C5CED2624DEDF94D3DCB2086EE2E4
+:101BD0009BA61C6A540C2F0D82345875EE013C50A4
+:101BE000172971F0E8F0EF95AFEC857680E00E53A1
+:101BF000323558C30A4E252673ADF779FF1D378558
+:101C0000B3DE30EFC51503D51A4CE00C197EF9EDA3
+:101C1000ED34BF06446B80809C908841C293686914
+:101C2000D1F3FA94A022FA7D4B46D03932A21FD6C6
+:101C300057428043604F6C8F8E3FAD437D59030FF9
+:101C4000174D7B9C654109D36608DE4BD3DFB13766
+:101C5000558E7348FD1C334250B6052314BB13BE8A
+:101C60003934218263D93B5FFB292589CE53469CB9
+:101C70009BF8328B192B2914CDFF5646FBD3C94351
+:101C800053A5ECC0C1AE4174BC33CD6ABA75956B37
+:101C9000BA0E7E3E9519BA5289124FCC50417C46FD
+:101CA00011F28CC46641298F5CBE6D6D429E72ED4F
+:101CB000340E43B5A84B64F764604E574DC0AAADCF
+:101CC0002546A1E59D915131001455AD24ACA518D0
+:101CD000F754D173432D7F9B7F894F19263E6D07A3
+:101CE00063EC07A0F76E7CDBCF666F82EA17D96AD8
+:101CF000E04F65ECCFCF7D8155B1BDCCDC5A4C6057
+:101D00008BA2743F65840B3F7E449F99DC8FDD91ED
+:101D100015ED05F82CDC4079DC12B6F8C4203BA8A0
+:101D200056C8B9CE2C075A8FF415BBF0405FC66A6F
+:101D300017C079CE46FB0B31E5A32576A607D06EFA
+:101D40004CCF6F23B332FC05307A66C2FC0B287E81
+:101D5000C422F5618AE90500C53F0F479A43FE3367
+:101D6000DDA79A26D28DBDB86EE8496165840A2345
+:101D7000B60B74776F2A6038083C32FA9AC89D8F88
+:101D80009CA54AE92CDCF659B55AE0123239C2ABAF
+:101D900083EA5D4A7CFF123F8BB27A9D241A23E6C8
+:101DA000613C036EE3B9150346DC11016EA4872D77
+:101DB00063A9763E15E64246CCCDE56A5C20CAFCB6
+:101DC000FE37EC43FA13AE12F736A7CF6CDCC1E056
+:101DD00008FE5F2E969EE4A4D59FF35AC6A0539B9F
+:101DE00043A8C179FA868C64FDD041AD76718F0627
+:101DF0007B97B4667BFCAA83140C7E573A97EE005F
+:101E00004EDA7CD9AB36AAE6C648D72FC0AD566BA2
+:101E100017F53724FA5C458D46328DABD606DB6D5F
+:101E20002D00ADAC9B8A4AD896C8ACE859BC804519
+:101E300013B25C98059CCBA2087E16EF4C20B842EA
+:101E40009C938739D8C5C6718BDBD56FEB18DE4CF8
+:101E5000E06BBEFB78922E04605CE1A55BBB1116C3
+:101E60005C9231F35CE4936AB76C8DD145C83FDD79
+:101E7000FF69224473FF6B8D9125E1950513347240
+:101E8000C7B3BE0B0AC3977177AB3F222C2E162A1D
+:101E900061C853D5794152E9A3BA0AF46D10EBA990
+:101EA000214A16CFC015FA55D01A38A2EF90D09A11
+:101EB0008381C1FF27E795D494EC60496AEFA5BD03
+:101EC000357F43AFA8C546D21E6FF979EEF604B947
+:101ED000B8E0A04DA21708E7F2161396BB1ED33444
+:101EE00017D9C95E74EE3ACCC15BCB0F001AF92149
+:101EF0001F33D77A7E9F70678692D928648E5031BF
+:101F0000751CE6FE004E814B3E7DC0A416EE1236D7
+:101F1000C458D16327F536B32BCA0A509471D55BE8
+:101F2000CC5AE8873F0760C3A9CDF5FF6E48C617B6
+:101F3000C372FEB37CE508F1A304776468653FDBF8
+:101F400086832A6EB00AF6C6538EE2B08C1F4E11FD
+:101F5000F9DDB91CD99B5262EB3F98CDF11376C4E1
+:101F6000C733EE8F78641F4820B2538775BB5983FF
+:101F7000AAA8BB30DCE3F009697C66EC01AC5A45E9
+:101F8000E5D138135D41F860677985C4AD74188078
+:101F9000A522190027ADB4D087707B05E0090DE9B3
+:101FA000942CABEF9B70B351879547AEDDB57D8D1B
+:101FB00024FD75E4D763A616ED9F8DD0BB2F5DBAC7
+:101FC00078163673C77CE5E124C7674E683846EA61
+:101FD00073B930763F5E9A8989826F01AADD311725
+:101FE000909FD7A62D0AE67A5F7180BB2B861F2AA9
+:101FF0007412C75D58A83A598554F6A439CFF9DE52
+:10200000C21277440D32C64E50E7588B4BCE26068F
+:10201000DF5BF1197058E045217356F748F338C279
+:10202000B9C534F540950D16C95F4D9A45B659EDC1
+:102030005011612F50CB4F8BF23F85B7865D63E423
+:1020400017C563E16636017D20325C27E0591482B2
+:10205000E2191142181D9241A7503B4CD37BCD276A
+:1020600024A7D6461AF478E4B8B8635A37F040F299
+:10207000882258ABAC431E79AD0E65361B1E17F097
+:10208000B6202C342A59012D3A69FFDE8702BCD6CE
+:10209000A766B2974486FFE957F05F94034D8F31EE
+:1020A00008D2ACB3DA3037CCFE59B60513BB1A2CC4
+:1020B000118C67C9AFE4F067DD22AE84909B4D734D
+:1020C000EF2D95594F344B294CAAB0B1BBA1B25456
+:1020D0000E6B9A8F5B797F2B1737BD117F7597DE5B
+:1020E0003B6FBF31F1A242EC5889067AD13856E3F2
+:1020F00003C66B04D9951DCE16E50BE5D64FEB4410
+:10210000A400E1F7410B3F9548AD7CFD16470C61FB
+:102110003A2BC2908A58139CFD7B54FA82FE1C8B8A
+:102120001F918B0BDC22DBB795DE3CF9E6A697B45A
+:10213000FB31BF5E91F69F13B64B39AE64FA66ACC5
+:102140003DCF1FAFB09E7FAA05E9ECD4FBF9280470
+:10215000F6CD0301F4DF7769483551FB7993557764
+:10216000604912D5A61A00D656589CF32D92DA046F
+:1021700017BDB7CEF6AB64C4A164BF46ABA2C464BE
+:10218000E98507BA9433F4B21F447BE1E58E7DAC58
+:10219000E76C52EA3A937AF0991ADB3F87DA3A7F92
+:1021A00090C9006DECC9E47A7319E60C32CC6FE08B
+:1021B000DD3C55E91AAAA46929CECACDB3DE76E37F
+:1021C000981A75D7163A9541098BDDDA48B36EE156
+:1021D00018667AB4F1803C8425C9B232205C6BA3C6
+:1021E000CFACDDB12D0FFEFE67A39E215DD6C47F6F
+:1021F0009FB3B580D64401E080BC570A1E10B702D9
+:10220000BE72DF79A86E98B7C595E552B8554054AF
+:102210007C1225D7F4A96D25DE6894FF368D5860B1
+:102220008189399C02703B263B9626735E09966B2A
+:102230004F8D35D6CA4B1001676218DAF877172C24
+:102240007B72CEABAEEB4F8C57D0EDB8AB837754EF
+:102250007C9DCB5A5003C8671218F2BDD9F78FCABC
+:102260007AD4A9333CCF5EC5B4789A3B7F74828D13
+:10227000B34BB2E585B47435955FDC4A44AF0AB917
+:102280009C5E8D72EE196629C8DED1350817E88587
+:102290002CB6B9ABAE1AE09BEFEC6BF05D199E5D0E
+:1022A000852E8D32688AC393D6C5654B01B2296FDE
+:1022B000A0D116A77A44293E4C6744713E0C85CBC9
+:1022C0003CB0DFA1AC268775AD2FC721061C206D61
+:1022D00067744FE5B0625003AFD7699E81FE7DFC05
+:1022E0008F3AE7C020729649CB9214684DBDFBEA45
+:1022F000398210A19C37383D7C1EE75B2F4FFBC60F
+:10230000B9F5871F7B29500AC5DA79FAAE89AE275D
+:1023100089AB08972113BC05A69AD5B4C223A8F0AF
+:10232000FB218BF3466337CBE12BB3258FC4489A4F
+:10233000BFCBEC3D7DA186FD13D68FE9E55CDD6169
+:10234000C1820AD01FB2EE04E868A0FC6B600F8463
+:10235000A046078854834A042D8FB2BC343D2F8198
+:10236000A0F8B01E3C20E1DBBE9C97AF2A012FB144
+:102370001318F522A03AC560EF1F615BB71225FD67
+:10238000503A2A4FB6141F63FBDE4FA9C2C521196C
+:10239000D59EB6686A7E121926D8460594AF19876D
+:1023A00073AC284E115AA267FC1E8E2BD02F9A4573
+:1023B000A135B741CB064E700327DB519F2DF89F07
+:1023C000D8FF543789FECAB0D5637DA9D631CC3C3D
+:1023D000C2151B944CC25A80C93BA549EDA0B77BDE
+:1023E0007EC5F2FC8293310E78453EF08AA50D3809
+:1023F000A009B15AE3A0333450E45967A7A0919FD4
+:102400001E3F35786B0DE36DF034065D1D17DD134F
+:102410001210C31E71BC848F1F6B97273B7DEAA2ED
+:10242000A6F8559FB7A748ED8806D3C7FBD9164134
+:102430009233917C07F740614FD36BC38CF65D06F6
+:10244000D77D142F22474585EF6E60787A3FEA7872
+:10245000BB1BE79F325E6CCCB34F368C48D7A87E4F
+:10246000E39A8423A46B40C437099BFA1DADF16E37
+:10247000F283E5A040FF7DCF9B03B3D8DD564250E9
+:10248000FEFA8A2E347E2DEE30BFDCE00F01EFAA7B
+:10249000E95BBE7053CC0E6F69708AB1EB224B536F
+:1024A000F12C0DE78E1069F9DF18F3F9C46CA12A3D
+:1024B00071B184218106E2D69B608550A9DA58E388
+:1024C00067F0F6FF793EE241E36F8A85B4B92F6188
+:1024D00087044108AFC7835EC59EEEE16E8609A7FB
+:1024E000219910F94E8ACDD898523E74D0515C870C
+:1024F00063384248B7B2882A36F1C4EAE0E1C8043A
+:10250000C22DB7F337273D6B6199E47C7D20B16024
+:1025100027834D9E76B86ED2BF99D2F42C1D796474
+:1025200038829224C53AC5C8331A8A567E28BF5BC2
+:102530000ABA6DC28F9265D523883E4471D4795210
+:1025400081C5C51567B44D00EEDB888EE9CCCD3A68
+:10255000951529DC6252532FD7663BA5B974CDAED1
+:10256000E5F55C4A5941A6431AE430C77C4CEC734C
+:10257000DEA6F282D6D9DB3D507594C2CA65299594
+:10258000B744B3949846D91F5436E9ECF68420C179
+:102590009C68A11945B55C3B376428A608D11CB2DC
+:1025A000ACC1613520082C6AD1BF50C9DD76AE2D93
+:1025B000A9A2433CC5D326EE1A57023B3E2E9AAC45
+:1025C000DD482486159F572832D61055B0F71006DF
+:1025D0007E19019044F41D1B8EEA99DA19FF966664
+:1025E00030D2ED08A69A5BBD5752045828EB778D80
+:1025F0002B08807FDA4A8FA6E9DEDC03342E2247DF
+:102600009FEFEA14950E8D0F0032991D3B862254E0
+:1026100036AB2A0876B7D28CBF86C4B69ACAF10DFB
+:1026200030CD3D45765DCFAEF1652BCECFBDBEE35F
+:10263000058A597C73EA4F3044DD669C34F8E35ACE
+:10264000DC5C92A00CB43BFF5343E5D074A5D7F7F4
+:10265000DF2ECD4AD72F4033699889067A92E91D3B
+:102660009B80891D803E332B1FF3FC5FD69071CB7E
+:1026700084886639FDB2C96B2350ABE849E73BC992
+:1026800070CC64EDCCEFBEC79124266D70964A27BE
+:1026900080C1D334FB5E9A4A5FE0B465D22595F0E1
+:1026A000D890CA16C394A7AE646E7ADC3D47624CDC
+:1026B0004DA65029253A1B303180D01C2E780B3581
+:1026C00000D7604F31357D549C3E6B14FB48FE02B1
+:1026D000358C730676923426745D76A7D1CDCD48BD
+:1026E00092DEEAA58E7A818BBE3FFA0EC0EEE8B884
+:1026F000DABB74C5BFA9E4B0010E343782592AC3CE
+:10270000D68DFE70D4AB80207FC2E9AA62EA000DAC
+:10271000B21D3252E3B4521242F8C5A34072557E44
+:102720003BC37ADDC6210662884D3072A4E0CB033C
+:10273000E0AF92020A4978C3AE9DDCCFAF93615AF5
+:10274000C5342300DE173BA324EF967D5E106C3F5B
+:1027500019A374CB2DFECC6C1B16438E999E899ABF
+:102760005E85200010955F8F8EBCB894589E15E34F
+:1027700076239DE937E1576EDD66CCEAECA5999C9E
+:102780009C2277EA737B07F65C1C4754CB34487471
+:10279000A620127AED08BD79CF76FBC358F9BB6E3F
+:1027A000B1343DE3CF51503BC0BD5AD1FC56E1ABF3
+:1027B0008830B07CB118A6DD25FA16FC896CF7DDEF
+:1027C000FF21342B9B7429AD2CE6893D29AAA6EE66
+:1027D000E92983F4C8F8DD7C0A7779DBD40BF1DBD7
+:1027E000B1F3E78D323201AFEEF940F7FED5C467A1
+:1027F0005803FD805B775BF80FD33647D3E6FDD0F7
+:10280000B551DAD710372C8245C72A5ECD3D4DC869
+:10281000B7B08F63EDC02C4F8327314FCAE472D518
+:10282000D88E63538741275C07F9AD660273D5BC28
+:10283000B5417B3C85FD3E5145590FA9D7002A7A09
+:102840002BA6589BDC8D87B3D50F84D4883E6FF3BD
+:10285000649CAA6D7C48E48228FB26F39B6C1A00DA
+:102860006583A7EFA983E4FAFF5C6345341ECB7F41
+:1028700013E74DAAB44FB1F134B5FE5C6E18314A7E
+:10288000180BA3BCB3E5CEE7B8CEFF74E882322ABA
+:1028900071DD85745BC2CABE50E2CD3E147B319CB3
+:1028A000858C9B229018FA940977C24818D1A1D63A
+:1028B00088DD5F9A01759E76B25E7A3641B215BCAC
+:1028C000B4BB41220CEC9931566D0D103A67A563EB
+:1028D00021887E9B359F7CFFD94DBB730577541EA5
+:1028E000DABB107AA6443B81112A6AFEB5EBB8DF49
+:1028F0009D3770ACB9F5761EB491ED3A2F37AB9A8F
+:10290000EBC3824F370BE19FE46D0291E25D9CC8FF
+:1029100057759EFD77BAB95C37D018802F4C65ABE0
+:10292000AEDD02FBFCDAD4337DA4B41942B59AEED5
+:102930006D6E2F13A9BE5C8AA966DFFD58AA997730
+:10294000109253C10470E815A45D8AE86F535AC40D
+:10295000029290C6C71459DDF71C5617E580937C88
+:1029600045D5ACAF7687744558A8F526133EE63DAD
+:10297000560A920ADA61CD6AD578333EDA81334B52
+:10298000D562049559617CD4813FEF367BC8B2FB98
+:10299000E1F1C159C2F052E40C27FFB29554EA703C
+:1029A000DE0149B6594B8E5A7B9C5F00DAD2F6A7FE
+:1029B0000A6EE95E4867AE39751FF91AB7021A3B0D
+:1029C000F63767F33CF427256CA0EE72AEB6943D63
+:1029D00065885F54DB140511462E1190135F9F36F6
+:1029E0009D17309074D4238DBD6CB213314B090800
+:1029F000F83F54D00730D3C7A996B5F0EA716B7190
+:102A0000A770D3EC6B51D96B1C9730B684FAC623F0
+:102A1000119BEF125B67E43E737DA56916B094D0FD
+:102A20002253AC8B726F5643AB84FB781D574739EA
+:102A3000B838869073D6D8FFB12128785625690317
+:102A4000491CBAF746A437D7296D29116D1C19D92D
+:102A50003466CA0C7D589CB201D4E558A489E18E35
+:102A6000FECA272CA4CBF60B6613AB3FE7CC21B4F0
+:102A70000B63FE3A60F10E65AC479A17DF4B828319
+:102A8000CF824F83424E4A9E270320883FE718207B
+:102A900077804E0AF7C61317D73ADB89451F934351
+:102AA000EA812105C902283963B73A27397E6C804B
+:102AB000E142ABBDCA37E421B73D77CC4B4E69D874
+:102AC000916797E69BEEEFF19B7D4379DD5F545A6A
+:102AD000B1D5EACF921FC756D5FF80F0ABD61629E5
+:102AE000331DD8789C792C4F04FB5A0C0170835D00
+:102AF000B753B10DF1CA6A80141DDBA113F68EF92C
+:102B0000901816A68DA63D04ACABE98433F5F2A46B
+:102B1000BEB4A7CE3447D8E7A7DD18C8F6273719C3
+:102B200017C51D5BAA6585C84CA96C3E9AA107F91B
+:102B3000385D677659BF56FCE3C0A4AB0CD425962C
+:102B400071CCB6212BCD58B3B4BC0C578D5A0606A8
+:102B50006F447C152179E668B5F35C8CCF3B998D89
+:102B60009E0A3ABFBC280C5B93729B20371B2EA990
+:102B7000E7AF9ED20837368F1195D907EFA8C2D795
+:102B80004F7CB39328F85871671234EFEA7715CF6A
+:102B9000DFA45574C0A57150F73E1AC1EA72D83748
+:102BA000C5812986E84EB4EAB059F4E0173D8AB4ED
+:102BB00093A2B1B2DC949F621C7B39FF71DF35BAFE
+:102BC00093614BAF4F221DCF4F65599B2FC52D2EC3
+:102BD00040B4156D090C21E12E0AF9AF95A0FC2532
+:102BE0007D7F3D4DC233465DBB1AD26747E1BE13C0
+:102BF0002FE34ED52AABC92B4A7AAA32CF26D86406
+:102C00002EC92747F534C9A4E1128FD0F0606C9229
+:102C1000A75F8F2BE92458AB708A4DAA0380DC2173
+:102C200087BD0132A2DCC45E91A0664733B81E396D
+:102C30004E09EC5441DCB0B0D3BCA972FF7D48080A
+:102C400076BD1A47BA8862D9027F727C1284766296
+:102C5000BA68ECC52AA96C841B8237F91F7DFF97DF
+:102C60006A8AFB4D9452DE4258F8D539F54CA4F5EA
+:102C7000C08641ECC47A8377E9EF6A63D9DAE0363B
+:102C80006EE64F14018919EC559571CC4AC0EB7072
+:102C9000A07C0DC18434A679059EBC3AB30AD3A9A1
+:102CA000F1F23895FB4B2BC538567858452D3C5BD7
+:102CB000B60F3BBF90E82CD8C7E66FF95684212F9A
+:102CC0007140F7DCD6423AED640FE258A27AE82F61
+:102CD0004C97E4EFF8860FF1D09094A20F798576A7
+:102CE000F8F3C54AF30E46FF155A9F8B267EABD8E4
+:102CF000008C511CC6FF54E52996E7BE78F2CA84C1
+:102D000017A92C0D22EE56D4D8299493840B9E92A9
+:102D1000A8B6EC2035E9E063B82B7427F03F155FC7
+:102D20002D512D0C915FA03532E5C83C6AD45C2250
+:102D3000D918498161AC95B0A3707F483752E0D56E
+:102D4000F18244BFAE0827591571FCC0B1CE3E3B9D
+:102D500020D0662DF52D204400796313AE8F684294
+:102D600023E0EAEC66546B00E2EF30323A07526F30
+:102D700026DBA2C566F3852D3C201383DDB35E8878
+:102D80003C458AFA221F4CF0F071830A79549BF972
+:102D9000EEA8305C3F392BB7CC7B09E7774F425F19
+:102DA000856A832ED62BB2038556C154D555267914
+:102DB000B047BAF703FC0B756D8715657C1AA11E29
+:102DC00084A4FB82BD06B14FB0DD8E7E1487194806
+:102DD000334CE5CFBA69254482B7F8106A7133DE07
+:102DE00087EBFC2435ACCC7E14731146CC4251A247
+:102DF00097DA12CC18A14C5738168C3C7BF2E35D65
+:102E0000E63B237A5B7E68833A0BAAC17F2110568A
+:102E1000A5A3CF5AE7DA58C6DEFE0ADDA6BD972481
+:102E2000EB33BD4C2A91A449DD0A32714FD52B13E7
+:102E30007A66A90265E309A32A8B40B6C0CAFF518E
+:102E4000B138D77B969FD44AB8895F059620C80AC7
+:102E500063A41B8FECC2F14C8C22C22DAC0548FA46
+:102E60008D1377298DE60EB4CE514C7EA7B8353040
+:102E70008576ECA700C9E7E9F4CB793D72BADB5C53
+:102E800035C81449FF4A3189EF704F62FF9AF53B0C
+:102E9000379487DB16B4532713A4728CC4C0D6A40E
+:102EA0001154720DC3062E03588C6B22138C757C43
+:102EB00056935A70113A2BBBD97EBAD6E6EEE7EE9E
+:102EC00081B8B180427D84118FE3A8ECFF47F038D0
+:102ED000CA73303DD8CA3025A88421713F23D386D8
+:102EE0003FB3A171F171977060EF341152730E11FD
+:102EF00028489509880E9510817793502AFD0F1068
+:102F0000E4B99A1A56F44545B2F94E2AF1C8CC42B2
+:102F1000AA496893BB9073F8D201910FE3003A90ED
+:102F2000479B16F27775AC3523B0A0806BADC2E439
+:102F300040D0C914854C790C819CB898475DB28A01
+:102F400032608EA13DAE3AE7D208E692DA872F4E84
+:102F5000EED8FBA6EAB7AC9EEC730A91958F57D0DA
+:102F60001F47689E6DB0234F830A72B40C300D0763
+:102F700093315876441DEF4A42EAB9B6A9798B3CA1
+:102F800043CCD85129373D41FD077616C0EF256F58
+:102F9000D0E5002F7F45A83925F8DB3673F8B2BDA0
+:102FA000D06EC7D664DE668039E6EF03D15AD740CB
+:102FB0001CB0362A4A8A2C7BFF7EB9CBEC087B3FBB
+:102FC00034DC411BC4D06AB8044DA2B46C0BE95D7B
+:102FD000B3BB2FC6E927A17A892801590C7A54C2BC
+:102FE000CBF46F303D7CBA773853A1BD9F32DBBC48
+:102FF0004C19CD382ED55A125827319E8D47CAF11B
+:103000007F125B49DD81BD5EA46ECA262A6644BC80
+:1030100086EB93ACE73B61491D5ECA1F65D96CFC2A
+:10302000C521C1690435813F10C7CD7F088C2BCBEA
+:1030300061278A8F84C0DA05FF5EF2655CED8851F6
+:10304000ED3D90693E3A5C583D06082FF3E4C4B666
+:1030500023D624D1F98114BBEDD3D3A4D7D477F3ED
+:1030600031C2192AECFE48D3D2036D9EDE8F85252E
+:10307000DA1977A3B9E08E053DBE5E999D0C06D79F
+:10308000899C125DBEC398805D4B18B24549BCBD9A
+:1030900097D68F5E85D9C5578F336D43A2DC2497B1
+:1030A000C317536B042A3623AADF2D55564F083C0D
+:1030B0003603984CEFEEBFB08F65D9739AFEF12BB3
+:1030C000515C2B321A49823B7C0A7A199455EE8264
+:1030D000B694E85AFA0A0AE5243DF771A2B086FED2
+:1030E0007DFB0D3572FD975DFEADBF5EB2E43149EB
+:1030F000909883A068E5F514DD1F7C0B431B1E38F8
+:103100005666B028514F1EEE38B6987395BC536181
+:103110002DFA7940B32E3E6A0F9E57D7C9EEDA9E3C
+:1031200061558DE3A95462BBB0EC4CAC4B471DF329
+:10313000D2ECF4ACAD9AC6FB3180987E10D85048E2
+:10314000579426F5690DD6C77113108685F245632D
+:10315000B0F2513A546E814331232ABDB40BDD17CE
+:10316000AAC1A00C6C18A158D9DF5AC112C4E26DD3
+:1031700001EB605D9C0D9EA3747634A4C3CCA6A322
+:10318000BA3D0EB5FE69E1E825742B13C436B04B89
+:10319000E6B73FC36F02D978F5CD394FA88BB2108F
+:1031A0004C87C6D5306191DC05237486BAEE4A7F20
+:1031B00021185E7EAB39790A55A908065ADC3BEB2B
+:1031C0001FAEA71A5BF8792131E4DF5E47B17EEAD2
+:1031D000D0B3FE32D76F82920670582FC493D419A1
+:1031E000EC0836A278D0AD69A6AF4BE6A97BFFAB61
+:1031F00094DD08BF1AEEB7AE26D91CD27C484E1516
+:10320000766AA8A55785A99F7066CC7D526229DF92
+:1032100074D73A53BE8100D51FD9E46BFEC9BFE114
+:10322000647551D92EDC5377B518F005C6A90B5C2F
+:103230000CCB47BA3CF780F261ABFEA5A2C1C2231A
+:103240006D6677ECF5FAC5AF3085929CC48F195145
+:10325000B4F528BF3A64DB1E2C29EC5E6495D48952
+:103260000F74FF0AAF9562E217D8F2D53DEB6F01FC
+:10327000D8A4A89CE9B15C474EDEACC92398549011
+:10328000575726F7ECB9D433AA2FF8B9A2EF071194
+:103290003A0FB7D927E1CAA615EB4B70778132CA2E
+:1032A000D0ACC8377A8FADC5684EF440F84860ACF2
+:1032B000F4F0CD379E233937558CB7D6C937B9F8D6
+:1032C00039CAE87B8F7C3D0D4A1CEC9AC7E4154453
+:1032D000C377906B58FBC59E1B8C83ABB2611861A2
+:1032E000B81FF06BE2C2394B67D7235F8781260C8A
+:1032F0002A71FB4B418A4D2A8FE27AF5B051FCAB23
+:103300003DB03066BED1BEBBAB7F0CE9462CFA5F48
+:103310000607108933AB14BAB557DED8B68281D808
+:10332000D59AE0DEB056BAF93371A50BE47DC4320C
+:103330006C5318EDFEDBE4BD36415BD7A882CF317C
+:10334000B742FC49FCE37E0F9C115D841E72AC13F6
+:10335000B1C7B93A637789D174DA64B346E6985A4B
+:103360008E40A1E5DFB59E8928D73686D85D0D4A07
+:10337000290BA57CC75ED687267DC662850F4CE6E5
+:10338000282886954DD6FAFFF4B86B2E8893BA8517
+:10339000CA14B0FF114D57E102441FEF2D5D703785
+:1033A000F93624714B6EC7898EDFCD2040014574FC
+:1033B0000C440AC5027236A7C69142EB374984F223
+:1033C00063B326FFFFBCFF0AC87A004448D38D8947
+:1033D00052C5F310F638D3504C04125A71EC5A9778
+:1033E0000C88D6E03B8EC074604C03CFF40151B71B
+:1033F00033ED2ADB056B21B97182683256952300C3
+:103400007B600A05EFFA4E6BFBADD994E1E56D3EAA
+:1034100021542D58577596C29E6BCF40D8E78185B1
+:10342000C4E6576ECE2215DD599EE4F8DE2915CD8F
+:1034300058F94C4EAB4EC21049181B475A77491EDB
+:10344000D0D3FE07DDD38142C0A8E60D49573A4AE2
+:1034500080D9A9E414859F8B4FFC1502509930CA7E
+:103460004C0E60CA2F1A782E35AD9DD8D94114CB99
+:103470005F0C7FE232F6C581EABEB39CC4D24E72C5
+:103480004588C79C58B2B109E9FC5D00FA0423499C
+:10349000786243A349F6F7D3A456692DCF10B6A39B
+:1034A00058054567E6712088688CAE83E83C5B5F11
+:1034B0001C3532565C03044A2CEA972F60CE428BAF
+:1034C0003340AB3941C205BA6CD5D6D2181651205B
+:1034D000DAF61910EE2FCE283ABFA27687AAC14B92
+:1034E0000A28CAEF8B5333A294D223545D374BF290
+:1034F00028CDC45039AE6CC09D0E20B72909838AEF
+:1035000088840289585944599C04ED614E6F1F1AF2
+:10351000F19EE3BEB6B5B6C18411F98885D27C129E
+:103520004F392D6F6DDB5C2EFC3BA1F997B6A9D10D
+:103530007EAA5D00814B509261E6BCBD019CEC59B6
+:103540005359105AD16BF331E5EC95450ACD4CD562
+:10355000D260F69CE5317FF155DBD59908D2751A1A
+:10356000DC7130F602E8718BF9B29473EEDDED7721
+:1035700074733EF49262CB3B99978DEC3DBF5C68CF
+:103580001950645322EB182746BB4AEDEF2735F25A
+:1035900099418BA55FFE2933543ED8BFF4DE4FD549
+:1035A000EA3FD045DB9519A38D035F0EC304A48ABF
+:1035B000C00EF95BE1A265EDF27972370247493539
+:1035C0003994BF5B41FC3A1E15DAF4A6940122E857
+:1035D000C85B973F1E810640154808395A6DEAF1CD
+:1035E000D9DA422DE552A1E6FE1BD1CD2A1DD12903
+:1035F0007C7D866307F14990FEB479A0B47FCBC28D
+:1036000069FE0775B54D7EFF4138D7698931DF54B2
+:103610002FB143B6BE1245837319D54DCFC201CF2A
+:103620006B13DE1ACB7258A943C8E0BDFC3E913142
+:10363000E8F4685B88D35038D08F16FC77E95F17C1
+:10364000AA50B68051B9A546FF55F2F13D1EFEF0D5
+:10365000958EB733233562A03CC307495583BCC858
+:1036600070B11801AF4EECFEC3FBC3AFD4FF58CD11
+:103670003BA378BA50D897B296CC56A655C58C2C99
+:103680007DE67ADB3EA74170F109D8F2A27C138671
+:10369000A821C925E7400507E8BC16D73F043B1B16
+:1036A000A8A423E760B8FA6436CA0F4083689C4830
+:1036B000F6DADCE66FC792A376D56E37B654716042
+:1036C00021521D6CBB720588B5531894B407059C34
+:1036D0004032FD5ECA54BCF2EF8F8FF3BAFA7C130E
+:1036E00040E4C80CDB95A1B1C138694D607E31A7BB
+:1036F00031CEC64805BAAC92DA510B4B423262C7A2
+:103700002CD1E2B91D1850007E5D39ABC444DBCB2F
+:103710008A7B7E89056D30DA9F536678D72D86E9DE
+:103720009F310EA47FF33BDB0B02134E716E90DED4
+:10373000C9489B0180049E908BE7CB07B10EA56A18
+:103740005989B0BB3AE8BB337D7BB9B349DE008E03
+:10375000076F5A8BEF3022E21D215B0F4C3D5281E7
+:10376000C057011C946D62891893F9976F3FC90384
+:10377000594723A4C58FE37122D7E3E22F79105E66
+:103780009E3A1213FD15F1ACD8AA1C0F877BBB041F
+:1037900040151F4930BFE128994CC6F72DB232B60B
+:1037A0001E986EA630F3E5C9D84A895BB4F966D98C
+:1037B000DAE3289A83DFF90212645B27460E6C6015
+:1037C00057845390C339CE14DC50A8A037C008D614
+:1037D00053DF9F1771FE6D4D49DA9569E79FDDEA6A
+:1037E0002BAC1E8C3058C59D1669F646A4B629FD33
+:1037F00060BF837B869D10A02E8CF9A103C8A7C152
+:103800001C2EE03BE42A4C8D21ACA77501D166A7A4
+:10381000374AD75030B5DCFDC5CACECDA4A4F8ECEC
+:10382000F149B00D6F960B6376266714F912EC57C9
+:10383000A6AC84CD0D2F6E71447ED792DCC03E4F76
+:10384000A9E118F2598727E846560E08468D524AD4
+:103850004376A215BC8C52E1FB355A3BAC960FADBA
+:10386000996DF333EED55878B31E3BE9F2C2FAE511
+:10387000901B6C3D63778B8118CB22FFFCE9DA301B
+:103880007B1678F8179151B01C75E946F8BABA451D
+:10389000914E7995A321406CE8503689A926C0B095
+:1038A0009B5F0C25EB1D8C13A12975EB33673EE163
+:1038B0001022C1A98BA322B1DFE9E03C8CB32349DC
+:1038C000A2C358E7EA8C0E0316466A95B89E0AF71B
+:1038D000A22F3692500439172A92D25B0831A76E74
+:1038E000682115CE472E7500ECD8271442D6A26B5E
+:1038F000565BA720AA395C3D5B7D38CEB555732455
+:10390000EB02F4607A42FBE5787A02D82418963309
+:1039100075C220C8205A43974EF75635C2CD8CB198
+:1039200061110AF93B288B300E8A6ECF2B89B03992
+:10393000C0616CC54028698C8D059260B8E828E5A7
+:10394000479E1ED94CD0321C28EAB92ED84EDA2612
+:10395000E9EFE9AAA989EF4F04D49584B225178A23
+:10396000F6D1C24BAD7D24080CCB3713BF2DE43408
+:103970006F6DDD464778E18FE2396A9B55F819484B
+:1039800098B18C724F6D5358E386B11131A21DA9C5
+:10399000D070BCA0B5A1555D892260BA052BD14B72
+:1039A000130742E75D83ADE8DD1F77E868F2342650
+:1039B000FCC46321851234221FD520AB93A324BB02
+:1039C000B9E13FD3A63DC32D89DA95CE01FA3F6117
+:1039D0000131A323D72CFE2D114CAD1A0453FE5BED
+:1039E000668A25861B134E7350B2004A369FF90231
+:1039F000FF1A0C40AE708C1020D8F0D36B042086D8
+:103A0000B0791DD37C14540C16B27DEE7DAFFEC888
+:103A10008D4A5A07BD3D5437EC7041D05025C847F8
+:103A200094A822A2F960EA5E7CE85D79D0C324CD37
+:103A30004F1C3BA01472AF55E908D06AA4B8BB9CD8
+:103A4000BD1086FD2806932E4ED1A53AE0B533C5AC
+:103A5000C7D350CBB718A26CB7CE497CA7F38592D9
+:103A600070FD829A0953D1CEB702EA45FD585357EB
+:103A7000655314D12338E7DCAC6490ED2840610530
+:103A80000CAB9ECA808F81B0BB9E99E4F0364FF597
+:103A900055233649DCA3E127BB3BA3A1595806B700
+:103AA0005ACA3A5A165F5808ADA1F7AECFC3A7B1AC
+:103AB0005693227A1B3BECA047D5A0C1F78B72AB83
+:103AC00024EBE32E65869C72F36D0D5600430CC10A
+:103AD0009CBCA957C9D35E1A3B5B47C31AB9D2A68F
+:103AE0002AF9954CB2FA1A1FAAD6F862B6A5AEF812
+:103AF000FA255411C4B47B744FA8C310906AE7A68A
+:103B00002C6CF3E4C7BB1F7759BA47B577D4F9B625
+:103B1000852812A9AB4DC489ACA7D553D4FF1C147A
+:103B2000A49F471C83C2048B30A2D2223F5D8294A3
+:103B3000A8880397361D9A699AA631906781C24575
+:103B400058C8EFA61FEF95404279AD81163684C95B
+:103B500039F0EB401F8033FA89459BAC0917BF81D0
+:103B6000A09FCFEC67DCA71817D8B5674865EFE8CA
+:103B70009E539DB7FCC3A6A997144C4B3255B2F087
+:103B80005B63A1784259F5B667E2C2D5773909413E
+:103B9000887C4740C5100F1700B02D2B3AB64699C8
+:103BA000A9BF1A31A6EB218253FDF37751F76F9E1F
+:103BB0008CA895EAE79359AD8F2D65541D5380F677
+:103BC0008F29C07896BDF31F2B23E01C7180A8AB12
+:103BD00024007C013C34304D3110C60BF77C81DA77
+:103BE000E04F9E8C5721635228A566D03C90810FF0
+:103BF0006A1EBA5716976E2B7F39E46CA5B0320255
+:103C000099BD2A46E45C861D1AF643897142E50592
+:103C10003E5F3DFBC64838627CA080658090A61759
+:103C2000C14AF324C97F2E78D5FC8B8193B46F05EC
+:103C30000D53BF1EFDD5A02A34D32ABBD9FC6ACDB3
+:103C40003E3323883D5709BA2EC13157844211AB08
+:103C5000BEF2F6877638F43C966F7D24942A44A50C
+:103C6000E621CC9F6863E257014F5B2D6E589A673F
+:103C7000A9BFCC7D8FA76347174F2C50F19FC69CDF
+:103C80004AF4B5876AB38696CB3700EA1590491493
+:103C9000D74E76420DE395F55DAC7250C184287124
+:103CA00073BE1D930FD80A17637235996132448928
+:103CB0002A6AD885903D0E11055EDE9964C3265AA6
+:103CC0008A5D97374E0F48AB5ABBDA1323E7609AE9
+:103CD00023FBA744BEA3F055CE9623D37FA9768FAE
+:103CE000B1B7151910D525D504F96C2D5C8924239D
+:103CF00057A6EBC9783627F8A4D54BC35E5C61653F
+:103D0000E3E84BC8E28E6170FD214CFBDC766D87E9
+:103D10008753460D3112E082D7A0924AC7B3E3CB56
+:103D2000784777F9ACC34AFCAD4035D1693A150004
+:103D3000A26F08B5F2448B41B9F8D45E6A76F845B3
+:103D40004C98105F031872F720AD1D6211CE189CBD
+:103D5000639ECEE1AA445F394B228EE607AB50E664
+:103D60000E11D5AC0B584F905EE283FF86A078BC55
+:103D70007C55DF30A9EA98CFB3FBF8DC7DF8699E6B
+:103D800051DCEF3F9328FF3CD51BEF866817EAB262
+:103D9000370DC4A9429F210171B0CCD9CC27EDD7F2
+:103DA000AE7AE9BFF19C466CD51B4838A2D8E2B682
+:103DB00085B5E6D1736280F22D479B59F21325E257
+:103DC0000018C22D9643FC529D75F01742DAC38F3E
+:103DD000BAA6F53F9791040FF5BB750504BC926533
+:103DE000D1D746025295B0B10D71E6BFD490397269
+:103DF000099A60D8BAEED9768E3B16983A3F0CB83D
+:103E000035A676F2251B6DC692413CB909B70C0B5D
+:103E10003623C816286EB19163643DA1927F2C4F62
+:103E2000136EAFDAD0A70446D88116E6C8FDCA0CD7
+:103E30006DA8E61993D4C27254F874217ACB770333
+:103E4000DC01F31600CE8E1314CE6CED2738E77F1D
+:103E5000DA447FE1F5056C6800ECE7A1D72292A176
+:103E60007ADE8FACC7B02E8A722CB1E832E967A82F
+:103E7000A838B32EC0F33D8E70D85D6762D623910B
+:103E800067A2069F5118D33DFCAF7DA43584BAD8F4
+:103E90009E2DE098705E410400536E44ED1E29464D
+:103EA0001860D5C6DB1E9D6E70E2C9B79DE46FB584
+:103EB000CFBE5E036FC84399475D85BFA6B700A21A
+:103EC000E6044A692DC9D2CE449D80217256CA4A61
+:103ED000D856A1180E66C2446AD9920249D01B294D
+:103EE00039827BFB6DBAE9D2F9DF2B4E3FE920C85E
+:103EF00090C96151BE31DAF213C854BEE3A22F81DA
+:103F0000A045691A0687AF7E758EAD84429A48E453
+:103F1000E227117338B0077F7752C4C61314FC062A
+:103F20009C7220EC69D48A584079C67AA8F51EB8EC
+:103F30008DEC180CA95FEDE990AFF9D060CDFAE4F3
+:103F400016C4658EF6222954A00738DDA9A7DB1513
+:103F5000908FD36DF674A6B2F5A4136D30BD26957F
+:103F6000E5A4F1F73EE33A8E29AE024F066AB07C33
+:103F70006E64AF84F2BF75AB1079775330F32A22A9
+:103F80009D7F8C46ACB2B4DDD1449E2B4FD3D33849
+:103F9000F89A99CD1C7B830B06D9EFE233B097A337
+:103FA00013C3E6CAAF5D3B8CDDD2E049EDEF65D7C8
+:103FB000F4D69EC719AD5439ECBC72ED7B985938D4
+:103FC0005E6A8FE85819FA8B7BEFE54ABD54F151D0
+:103FD000FD8C1995A15C6679EE27E585096F28B4FB
+:103FE00024A272041977F2252EBDE960C5C21842D9
+:103FF000FBB3A42FFAC719EE47613E3F5B7966BB5E
+:10400000405987C4B8E57C0BDDBDE3589457F3F500
+:1040100067F181EEAA398115DAB058697433363602
+:104020008E1C43453737F46C8D6B4C4188FD082C52
+:10403000E8B46E252B50AA7BD080E8179976195DDD
+:1040400049EEFB82BF8C3EF82A3193A9AECCA2F098
+:104050001E3AB3A96AE8579BC8787E1D94AD5F34B9
+:1040600016EDD4674DD2AC89D3A4FF4D2E59052E41
+:1040700019FC5F0F5B29BD55F5464275E2FC1D1D1D
+:104080002EA1921B45A7C05C2147B4D51BBEC8FF1B
+:10409000004E04B35EA784695EB614477648A3D782
+:1040A000D8D744A5558DB7233AF638EC788951D541
+:1040B0001D0E9609CB91A41FEF8F66A04F6C69640B
+:1040C0001B5BF951C7784EE7868A3A13EBBEBEBD3B
+:1040D000C5054064FF9798ECC9FBABBED7202726E7
+:1040E000338162EC2F67731F983EAA6D39840AC929
+:1040F0002970BD25E315E184AB59B3212B15965AE0
+:104100002EC3A4F8CC35C3A7DAB58606977C4780C2
+:10411000CB577837873D33829C0733FA998B6935C3
+:104120002115302E3E0B9E78D7AF3EAE0BCFF891C7
+:1041300067A13FD52C2BA9CB8AFC2B0CA2CB708975
+:104140005959858AA6CB469081B74F52ECB77F2943
+:104150008780EB81C6981DE4972370398BA339853E
+:104160003983BDA6674F660A23ADA44CCF94FCDF0C
+:104170000CB1E63D78573F07604E2F489CD6ADDC2A
+:10418000C55838FE66901A5903F3829FFEA629CFC0
+:10419000A2EE2BC3AC8A0A85B838F62EE38E6410E3
+:1041A000E45E0F620EAC5DA5F84DB1CC2E31014638
+:1041B000287B13C3E770163A6B37A4B71C10523F25
+:1041C00077E1818D1B3FCDF16B95CD41BD70D5174A
+:1041D000B6E724C1F6C45284DC90EECD9D15E823E9
+:1041E00089CE3A00025AAC8287AA6F134013047D2D
+:1041F000CA588D92256FDDE264366DD4B21849F647
+:10420000FF1A99D87140B573CA81502C4A883D97DE
+:10421000D35478AE371898E35893EAEDB64CC4AA55
+:1042200064B6F1C76EDE14470B149093F5FC9FBE85
+:104230002A1320720EE9FC5E7D50CE3571DF57C81F
+:1042400012A9BCAE494E07DE05F962283413F820E6
+:10425000F2CF6BB9407DF111913AB67EEC0F46C1B9
+:104260004ACE047E4DD848F6FE1A5EF206EA07DB17
+:10427000953186396FDC474A8D18D2420B467EA7AE
+:10428000DB8F50AE382D5E60D59FD4150540948AE3
+:10429000B42E6C8D1306331228D9021CD9C1042008
+:1042A00051A1ED2FABF4A421FD02DD4663F7FC1A0A
+:1042B000B7A423BC13073F5EE8B6D1E91EA5EFC43F
+:1042C0000D72D9A623EE137B12C27B286D7C9ECB88
+:1042D00038C34F3FB9F7D817FFADFFCEB25C8BECB8
+:1042E000F538F4357FB91F98C026D0DB8D475D6C5B
+:1042F0009EDA5032C07A2ECA212327B2375DC6BB60
+:104300007149F2DE52F99318DFD90FF75CC1243BF3
+:1043100010D49B18B79B759F452479247A37540A8B
+:10432000B14F58489CAA56C96D350D5DC31DD34683
+:10433000E6EA1F4E42A409ADEF2C3295257614EF24
+:1043400052907F2CC6D1443594791525AD9030F923
+:10435000FCBD2BB6BFF0CC74E761F839FC498793FC
+:1043600050C98C16B5D996E616DD5BF90702CBE38A
+:104370005D2E9DC9704F620075B8DD2DC537F264A2
+:10438000FAE2BFF9CC5C45EE6BDEA537AAFEF86A0F
+:1043900076CF843580A7F305098B45816241692575
+:1043A0004FA6ED3C59BF97E28419D43BFC35E6E2B9
+:1043B00048C639B46F677C02A652A730CA31189636
+:1043C000E99B1580A611DB35858A327729B089BF34
+:1043D00027AB68DD7169B2078FD00FC07FD7293A4C
+:1043E00024536BDC7D6497AD258A1BF399A496E971
+:1043F000D75D325B65DC32FBB87FF6AF84AFA90FC7
+:10440000D1D37725C855CB3D7C3006B1F082474FDC
+:10441000EA96AFE25D32EB002500466B97642868B0
+:10442000E67DEA372B6EB0B9B5730D26F8EE505421
+:10443000B06AB15BD71CB7A91CE2EF7B2F92C1AD6C
+:10444000516138523153287E066AA5531DD7AAB54B
+:10445000A973B5BF7E36268594107FCBCA6389C306
+:1044600041F45791FE7F24D263335D01952CD866C9
+:10447000052FA088A4FD7059E67DCEF4CA1334E55B
+:10448000A0D5ACD900D1C35FBBE8840B7E354526EF
+:104490000ABBF3E397A7BC3F092E673B706943DC77
+:1044A000C9FD589EA7C65A59E707535D7817C3360A
+:1044B000FE23414610AEBEAF38DF182F05DD369320
+:1044C00042BC606DCA59369E5BE3D2F9DC0ED5E37F
+:1044D0006855701E1E4A17579FBC874FE814509EA0
+:1044E00034D436CA082A6FADD628DA15316EEDEE0F
+:1044F000B987171D55BD9F6CC2FDCB91F62D74BBBE
+:10450000E52BC8E83A93BD1B9A5B23CAED4C6819AA
+:10451000638B44FA50B50410CDF27C776E50895B02
+:104520000F5A06E8901955D58BA12AAD2DDE2466C9
+:1045300014E5D154ACE2E3A065AA43D2A37D78DBB5
+:10454000DB76CA790695AB55DC21120D0CBA8E5874
+:104550001DC5CCF006E3622203B35562F77803ADC4
+:10456000720C5D70F14920A8F0047706249E745304
+:10457000E6E479DF52324B2D7CD417174E87D69A5A
+:104580001547E2F2C91AF288DFD83F20B996B1DBAD
+:10459000A400BEB32545401B7C7271FC1666A0CDFD
+:1045A000239CAA9A206D8A820EB75B2B42BB010A1C
+:1045B00084257C5FD92F185314AF1D4795B6DE2A8A
+:1045C000E20747FF341D45B3A44522C089FDAB3F38
+:1045D000CE6F1C0887E573420A326829809AACF6D0
+:1045E0002E687DA73183DDF175276489102FD7BF31
+:1045F000D7105E52E11331895A1EF8866D6FB5737C
+:1046000089FF2C97DD9786BD2EAC91C0A559ADE3EF
+:10461000D0F3E5C4C6F068AAC696708385C569461E
+:1046200057BB25923CEF488F4281F3CE7D2388A271
+:104630009490C735EF60249715CFECEBCBD2C46EC6
+:10464000D690AB67CAFB63112E0EAB865979293C15
+:1046500060CAF010F61D874C867A9EE78F17CDA6AC
+:104660008FC219D73D17696C553534112BB55F7260
+:104670004A487A62E3FBD9E4CE5F58B0CA4A55167D
+:10468000AA79A09B67EBD8394CC8BD9C548EBF401B
+:10469000C8DCDBB3AF56FE389BDF43141A307DC451
+:1046A000401AA5EDF4774C1697E3ABD2599DB69E10
+:1046B000E0D678E5ABDC8DD8989DA094D0BCE975A8
+:1046C000B10B6D7DAC5534A33514C87768AD535F1D
+:1046D0000C165FE417CF89704DE49C59393580572B
+:1046E000FC34A60C98C1CE720672F2C97388B66803
+:1046F000570404912438DE513C15DBE64DEF33BC02
+:104700005AE38A5A087059B8B7A30FC8D83294D957
+:1047100037AFC7A5DB0FE9B22D9B898C315D423FD6
+:104720009CB77EF0FCF86D36F96F0135A8EE0700F6
+:10473000D179FF27D582C2E57BEA3A17E0399BD7CA
+:10474000ED80B892F0E8FCBFA7D3F681CDF616A4B1
+:1047500080A35B0A68C2865FFB17C260DDD5A8F143
+:10476000EDBF95346F79EF77DF21315BDFFA0653C8
+:10477000428AD03CB2869F3689A4191CDAE0E12D2A
+:1047800065A00F8C8F04BAEBB38CBCE0ACE1257252
+:10479000A89AC7476F1E07494E74E5F08F48C7BEF9
+:1047A0009CF60EE4984644535AE37C6A5341B0A900
+:1047B0009A3D6BC1AC7A082740866E440AF4FA72BF
+:1047C000284843050AF082047146A71C541B035372
+:1047D000BA707FB1006556B2392332BCCD08375E5E
+:1047E00092F453D037AAB27021570138A8873425E4
+:1047F000BCD5E97F0BEC700E43AD31F976AE3DA22E
+:10480000EDC05A5C5B598406E66E1C88E78142F471
+:104810001055E815BF3692AB37ABAAE0D8834604F3
+:1048200022A8599DF99E83D1EF2898A0FD3D53926F
+:10483000461DB11DE4B7257B9FC68737B63AF727DB
+:10484000A4810E774FED9A9BA30CFDBFD680C97D46
+:104850009AE2BFE4EE8E8C55286855F53C86F63317
+:1048600048B309CF8448DE8FE8B4B8B9451616BE00
+:104870006B98541AB9745BD2ED860BA3A713551627
+:1048800092927222C4B91499C5A6DC7F444CEC0400
+:104890008BCF3C995782CE624522A44369FB6CB210
+:1048A000382C070D55DAC4A9D0E66BC0B8A5AC11F9
+:1048B000BA5FA38E5E5D5ED8B263B9C97AB6931350
+:1048C00002CE0D7A34144CCD4E4CC53848513BB510
+:1048D000DFBBAC3A444263E95FC2AAC5EFDF24B84C
+:1048E000F97950575669A1F063ED81178BE4FB9578
+:1048F000DC5D2BF032583D38FBC3F00B21A90EAA2A
+:1049000042779AA460DD16CF2F7EB92847BE450AAC
+:1049100016D3529C57F6C83465CA071E515AE5741F
+:10492000A02E594B7E1FFBA77E3E6697883242E63B
+:10493000EAC7354A61CBD73466895F8B6F0B17F5B1
+:10494000B357F45388278A126E9AACC92C2D370BB3
+:104950003A4A1657D7207CFFC1A58306691104DAAD
+:1049600073EF37F7F71B9E8C756E56BE38042C0319
+:1049700092800D4DAFDDAD35FB786D33978091158D
+:10498000DD6E501DDAFA823B8D59B413A27C443897
+:10499000F978F3135F46694B8785B33B7CC660A209
+:1049A000FCEEDAC45643C6C2F70A232CB121216DAE
+:1049B000A16CEAFA2B57AF93B5A8731D5C6955BA81
+:1049C0000C1894FB2BB5EAD658C47336ECD49B7DF7
+:1049D000BF2864976F2F8220ABD710E05D810C6CED
+:1049E0008649ED79387D7DE3047A59AD95CFA2F8FB
+:1049F0004A64D930F84069F9D45ADA3230A8C5BED1
+:104A0000EEC3A0FCAE88D7799789C005FEC90AD548
+:104A100035FB2511E11082FD505D0C2E18C5C9FE35
+:104A2000049835279697C88B111A9F450AE8C793B3
+:104A3000E4BDA02BD1A6300AEB59278AA634C0E5E5
+:104A4000512683EC1B21872CAA246D5324F51627AD
+:104A5000CD6E93DC01D0EE8FE98BA10800995DBC8F
+:104A6000D1D7665D06A2A6C74669999265E8552822
+:104A700061811C713E21F1E5D8D28D6FEAA3528687
+:104A8000A9CE2BB5A34290273B69EF7731EAF6F424
+:104A9000D1E091ED7A56BE90AFBD3C6328E11A801B
+:104AA0006EB3C3E9046156265F67C37121722E2F6E
+:104AB000FF00EE8F0441CD2F96FFE6EDDD60283735
+:104AC00045FCF9AB4DF85328ECD9BBF25407D6C9D5
+:104AD00015A38DA9703672964AD6E210DFB89E38BB
+:104AE0007B101D8783AA2520D0D7DA3ED65191E4CA
+:104AF0007C733D5AD109FA62C09FBC22A53495242B
+:104B0000DF8B017D2D9ECB81607F14180C5409C56D
+:104B1000827FA1C4182498B09F498AC1691F22D4FA
+:104B2000437179ADCB269857195382680BA2D828C8
+:104B3000426FB8A078FF3ED554A4AFDFD26505928E
+:104B400017BAD509B695113323549CFA463CCC7C50
+:104B5000D1CF34F40DCEEA7D89DDD30C3125D9AD2A
+:104B6000754C3BC04C04791B2051EFEE5405B94401
+:104B7000396CFC35EBD5EE0AF97744970198BB1DEB
+:104B800020BEFA78AAA1C5E95FB04B69197783FD09
+:104B9000B058AABE29123848BFCD155635B3D67ABB
+:104BA0000B91BB11C5FEBDDCA7030AF7836F0CD6C2
+:104BB00000320EDAC77A3AFDDC56040EF3B159948E
+:104BC00071843DBE0C423F6E58798906FD7AE27EC3
+:104BD00021C2BC140EFF408083A6311FA97A6A044B
+:104BE00040DB8367BF46B93F531BAE4276C6A9057B
+:104BF000239BDA5BCA05056EC2B9A25CE8EBDCD286
+:104C000021551D994B45FE566AEDD318B24EF1E081
+:104C1000013E93AA5651CE17A8DD2BB7D8EE987A4D
+:104C2000C1BAC0CC52DBA279C7D8F59B8075DB0135
+:104C300062BFC3AB91E8667DC8BD56000F07C8FFD1
+:104C40005319914F219AA387956490959CE364EE44
+:104C5000FBEFE75DEE38E1ECEACB68B580296FC980
+:104C600017A4939B6211903F82254FA544E5EA4526
+:104C7000ED1E5AD66E116CE87D65C1BB1F50C21E79
+:104C8000F84282A28AAC22AC58A440B0850C40EA1B
+:104C900016229A8CF4DB5B772CDC0197A53CAE7C6A
+:104CA000484CD5F728859CA2239F97CD91ACCB0685
+:104CB000D8B0D516C00B46FC42A87BC428A938E45E
+:104CC00022495B2F8204282372351E7F583C8B2398
+:104CD000EE917FAF8C401F8C01C0ACF35EDA68A50B
+:104CE00063DFD3E1682BE7CA95134CDA3F580931EB
+:104CF0002ADBFDF9174153365CF9E641720DF9F9EB
+:104D000085833E590DE4E8277C5781FC0BD7989F9B
+:104D100035C0CBC22B3C1EA2BCAEC08FDF2303D359
+:104D20003E2AA8CA0503B2FE725AC37C8D441412EF
+:104D30005966300DBECD1BF2C737E58A31CA7E5B9E
+:104D4000415D7F980185F44F43C04EEE2EE167D35D
+:104D5000263C4A270E4B856A0B5D445594652F7E91
+:104D60001CDB35F0F79E58A47212661DB59A9AC0E6
+:104D7000234020406FD525B781128E802759705E61
+:104D8000524910B405962D3B97F77088990215BCCF
+:104D9000F781C937F8654183249DF27BD5A060A2D5
+:104DA00029BD3E21A13CF974BED48C8D939195AA66
+:104DB000683E1C97636D14DA1F448AA8FC1E1560B8
+:104DC0006D057EC0265E2B44C1A09E79A4C18ADDFC
+:104DD00035C1E5452E6AABA55515FB65595334041D
+:104DE000E1B459DC14DB772FF44C32F9D5FD36D71A
+:104DF0006DBD2532BC0FBDEEA23F30CD9D8B12FFA5
+:104E00000AE44DF23BD0E4003ED6729ADCB190B198
+:104E100075968A795A30894A93E492700758932399
+:104E2000449EEBB0B11F75485DEF6D2E9A13B635F9
+:104E3000F6E79D08CC5CA184CCB97D46C25335F71A
+:104E40001F5CF67AA3A2D92C1E2793F553DCBD8FE5
+:104E5000E958B646ACA45737D6DFADCBAE78AFD65F
+:104E6000DAA4BC78885FDBC2C367264667FA26E30C
+:104E7000E7145833C65F76C10C8078F8B046915776
+:104E8000493416196094A3303D910E5A6FC462DD07
+:104E9000FDFA078541D1FE47F3F589FE95FFE261F2
+:104EA00017C2FE03D45D2A498608565929773EC4A5
+:104EB000012167E426AF39954B8D3822BA8A364DE9
+:104EC000104269EFEB0AB7BF0A97BFAD7EE98613C0
+:104ED0000C82FDE487270B37F244AA59B925091A39
+:104EE000027CE9CF82889AD8170A2B9FAD3B6DD8F8
+:104EF000C3E68E59219C789A016493DD49F0585499
+:104F0000804469CB8FBF14E4A8B529E92AE61406CA
+:104F1000DF58E6B6D49E0543C6A4E2DFD3CBBEE09D
+:104F2000880A4391FA0B66CC6B1FD64E58863A0E10
+:104F30004018AC95E3081C83A37B5C6AE7AF4B1A6F
+:104F4000452EB568E9EF9ABB4B8F60368E645D33B2
+:104F50004DC329EC4212570102D42049ACED760230
+:104F6000426EEDCF768D5BF2F23287FA3CF1FDA412
+:104F7000AC661FC4254B244E27DF667CCC0567AA90
+:104F8000B7D3544C165A06DAF293B55C05A7BC4465
+:104F90000E62F6C2B9CBF279910F1F808C99E7CBE4
+:104FA00012FC9BA3C280204740A5323E286C82BDE4
+:104FB0004A50AE5B8F60015BD6991CDC61758C71C9
+:104FC00020993D10D62CDBF0D93E3B05EC62A3378F
+:104FD0007B9AAA7A8CC584AC288F5852472181CB02
+:104FE000D1B78AFB7790DF7EA0113C167E50D52387
+:104FF00006B3926BDD1C0899506E3103F0A6CDCB41
+:105000008F9AB598AC2400440D7F190F47D101FE4B
+:105010005AE2E43247C5B20E5361B4A19C05598AE5
+:10502000025BD6670F91296B58D40A8C156DAF318E
+:10503000B3EF311BAABC2833C7A100D7A3158C2D11
+:105040007FE8C6C386FA46D38AA6B81B46C913288A
+:1050500093267270FD8A457D110390FE656E8F6503
+:1050600071E8466A67560B92CCE9A247B7B72B5254
+:10507000E6E29CC25C286A2EEE2BEDFC7C1E4A8F79
+:1050800034C802D9C1BAF0FBD21E86045B427B84CD
+:10509000F9729C846382BDF7BD5E33DC8B5DA636FE
+:1050A00091DBCECF2300208F35C7A5E8A9BDC37201
+:1050B000EBDD88A794B2257D9BEFD899D9ABE3456A
+:1050C0005A767FCB8747A12C34DE9109B09BEE4CFA
+:1050D000F2F0B871ECF80F17F6395B8DF48E26D02C
+:1050E000BEA606CB557188039FD75C4B356C6640D6
+:1050F000E192FA99E535DBC89576B32ED186630146
+:10510000B9234E516204630A6167BA3D226A1D3CAD
+:10511000BB52843F184805D34A572E4B0052401AC1
+:105120009EAA0A40756EE369EEBDCE467D6CEC50DA
+:1051300054542DB4DFB32C571D06F5732B0EB05C01
+:105140005626D40D1768A37215D8FB368CEC3E0892
+:10515000D8F31A508A1DAF8DE96FD7E34CD4E7DC42
+:1051600054FA3FD39FCC17E86B82050B95C046F2EB
+:10517000D812A41220D7D3C73C7D319B29B2562523
+:10518000B57D8C718B3794BADEBE0F98F272B292F5
+:10519000F1C2E1576D74C6D58C9781C728F8186A9B
+:1051A000C5A969551BC26C31F4B027C4ACDD7C4B7A
+:1051B000D2EE4A66FE34EF6E2384999CF04F2702AC
+:1051C000A8EDA78AF617155974C4ED65966DD7FF3B
+:1051D00053D854AED006BC71DECA7640BA4C57DA0A
+:1051E0005820D7D6C9C84310892E7C8C26CA10E314
+:1051F0009909510454EB45BF9A53AAFD61827D0978
+:1052000071186506A207B80DC76234D77831B97036
+:10521000F80FBBE4E2DDC801ACFC027CE95CA6202F
+:105220005F5758FDC1A8E48FFC6F7960EFD3988B6E
+:10523000042BF89F6CBFFF19AAB6F02CE7422EB1E1
+:105240001D88D2D5A2999CED4733B80C583A624DCF
+:105250006BD0B43115CF51E8451B6537B93151C01A
+:1052600006B18EF1F63D873F9DC12BC7012B8DBF47
+:105270006C716F5D0D9B6CE7ACD5259AA52B0AF779
+:105280007B6DFFF7B0719BC83CAC2E2FFE740F8F67
+:1052900090183511868012C98C53CB08D9BA740680
+:1052A0005E6A56CE396EE6E9D126B0A7CFD8E3AC18
+:1052B000A2A14143C7F3A520DB3EF21592D4A0A8DA
+:1052C000FCC56578235F8CCC8E9F51D6E55961D1A2
+:1052D000DC86AB0BC104FD4B72C3EC9792FCFC4522
+:1052E000266814A6DA4DDC7F1E164855918C2341A2
+:1052F00028A017C9AEF8D780BAC564BF280372E5E5
+:1053000041D706B7C59111D4C9FC4BD0AB3340CAC5
+:10531000E3877136D5547DBF69B9A6F955B60161E9
+:10532000BB46EEE1080481044120E8CF4AA018B74B
+:1053300060B91824154A556F54E47E6A9B2AE2C569
+:10534000535D59FFAB18D7B97AC9CEACC1F7D32496
+:105350000025B9C00FFA0E1A75CE673C975BE1C9FC
+:105360000E793A3080306E6917FF2B13067804529D
+:105370003D0F54EEB31F50252646E0314D99420EA5
+:105380007374C8791A0FD45421A7F25F508F5097C5
+:105390008610F61BEF4BACF1064F7A123D092E4BEF
+:1053A000B4C675C12FB5BA0D98A7F8C98D1E86BAB7
+:1053B000534DA8AFDECD9A784491277B6E23F6F645
+:1053C0006443604D25186A80FD06ABE4DFFAE365AF
+:1053D0007F88734BDCE94E43EF4C9DCCBA2E0B1CFF
+:1053E000B6205192DF2E75436C089EC81F29E991A3
+:1053F000BEC1E597B17F11691DF37B8FD2FE0734E3
+:105400005E0645238C3B485FAB1D1342FA296A5662
+:10541000FD2F6ED4A5142C4285F633AB46F07A717D
+:10542000F53EF66025522A18D812E140075DD68273
+:1054300046D9C821E41B178C21C254082B91D8DD12
+:1054400084779C5A5F0A0C53AC2900320AEE9C40C8
+:1054500054B35F93EF76D9BC9484D4F7CE0076AA88
+:10546000D68AF02460ECE5D7893C59B403A66D9A3E
+:10547000A1EF3DB384D6405BBCCC4D3CC5BB9C97F3
+:10548000859DDD28DA745AF1DCD31A3D32DE90C6F0
+:10549000093F33E2282F51ECD35AD7581120572D0A
+:1054A000E9EDAA77AB0D9EECBAE60DA6EF9765B0D5
+:1054B000FB8FF7FD2314AB9072D69E53534A2119EC
+:1054C000539FD4C03AB4B6D4CE939D148A45B3CE7C
+:1054D00047A804491D811F9A2661CD21459D8180E1
+:1054E0000AF46099DC1BDE0F5B3537BA2B0A2FC636
+:1054F000C56192A7947AF3AE55F0BAC4C5F7DFA19F
+:10550000EBB633A2340746ADDCD59DD15D6235C61E
+:10551000ACE3B802FC0AEFFA5E19DFB6A585D32426
+:10552000235007BADC8E72F66ACFCEDDEA81511DB8
+:10553000F6F32F7619F5A96AFE2599F77D4D25D347
+:105540006E502C18AE589CA1981C6125B19B16C9B1
+:1055500064ACF00EA744E8A39C00E533A5FBEC2562
+:10556000183CA42D7A1B9B28DA4A7E7E3DC717047F
+:105570007F96FA15BB53B774B5202603D340ACA36E
+:10558000220DC279ECBF07915A4E996518C8114F88
+:10559000A536950BD5CAEF98D9D300F42EC45BA9D4
+:1055A000ADE51B1F0FCAA7D4C8BC5BCAF63B8FA6CC
+:1055B0008DB9FBF1F8BB1F59219C52183B50745D0B
+:1055C00040537FBD61029CAAB761BDC7057D66CA15
+:1055D0003752D08049F69EE409AC5BD7CA4B1B1406
+:1055E00025E46770292A1F776830B21F0F9DA06CD1
+:1055F000525DF755FFE82D009601A179F5ADA4584D
+:10560000325FE38EA3E314829A2685F9A76A0551D7
+:10561000B967B7214AD4ACB158BD7297D500D0064E
+:105620009C9CC0C1741E7E630F3B51D659406FAE27
+:105630004EF4E0B73FE4D035D23FC704071E28CE72
+:105640009C92A86F86BA9BA8B279BD1F72EB0EE43C
+:10565000FC6E2FF8D7F4B9BC24C7A5E2C112718C37
+:105660005850587B84BC987B44FA2ABD55B8EF6BE0
+:105670006E026ACB5055A0BF90A70CA17768DF29B6
+:1056800068C0115DA3497FC9CD2024681792E00846
+:10569000C7A42255494D91D67AA5055C87617DDF67
+:1056A000AE9345043BF053B7C49D17C0112549067E
+:1056B00044EB6D64DA8CBD944A5387F402CC2E948B
+:1056C000583D9C1E247DBA0BF5802F06BBC64DA607
+:1056D00044E2ADD37EEDC33FB7062F42DF2D56E047
+:1056E000FACECD9EFF854B0D023F2EAE0B1F272914
+:1056F00060A3759872ACBDD6702AF7305CB2CA9DB3
+:105700006215D7DBBAC5F9E87E9EC104079BAAB033
+:10571000AC66DE488488CD7AEE3E7AE39651CCDFE3
+:105720005CE2BBE5EEF6C99CD21C719DF0CE91E423
+:10573000910F2483FB5D0FBC5F11992E615576F4A8
+:10574000AA678E4DBAEF6C73CA613C5A8C68115EC1
+:10575000A56371FEBE64B2C1B292EF1D1B767A6F73
+:10576000B07FB955BD54094840657234B61910AEC2
+:1057700046CCF25832D8389B39239135372E59E42C
+:10578000E5E78D6ECFAA7CFE38750CBC5973479344
+:10579000E57BDF1176ACD813C5EB2C191B4AA07141
+:1057A0005BBC5CA1BE3ACC4A9B5EC39A264D6806A0
+:1057B00075658747E59D97F83C6AB389B5178052B0
+:1057C000FA631051969A988FA771F72C2E00D96022
+:1057D000E088E1A5A41ADB6A522865EB31997230A2
+:1057E000EC0767DE5C3193D516AC15F23CC1FF6760
+:1057F0008106948B0B849FF718F32615780CC789C4
+:1058000096DC7611AFF9A1ADC2BAD6735AB119E7D9
+:10581000E995CB9FE884807AA2EDB32B39523BF017
+:10582000F530DEF3154CD4029402E8880BC5F6F986
+:105830002B6D8AEC8F8D4D9315E8DE8621960DB782
+:1058400069D8E4EFA68DF593E9505C3CAEA246C35F
+:10585000BF484FCE5F6315E6077674A567C66353EE
+:10586000CF2EA524A8A2CDAFC2DF63A5DB4424922E
+:105870003DF6E1859D36808DA3CE6669F1196B18E2
+:10588000BE8873E5CB9E4077E66F89CC9553DDD912
+:10589000CF5A88594E150EF21E35C08B455685C01D
+:1058A00093B91020F952CB8CD7F7DC7950ED39C081
+:1058B000D5E098DCB2A1EA8D588F285E6DA88929C1
+:1058C000B55F012DAADE60F9A4434174FAB905570A
+:1058D000AB9EBAA15C175B0202ABC28E398AFFAEE7
+:1058E000C6E6F1FEA03B131570A5A75A4E75E21A45
+:1058F0000AACC9B03174650E5780530BCE8CF0CF13
+:105900003BC4E64EDC296E8187413D2AD04C059E82
+:1059100073E22621DA23039B5BC18E53A8D1508406
+:105920009D3D9FE11CF05DCE7D2A741840D687E432
+:105930006E006B66D36D36A808169E6745FFEAF2C7
+:1059400034D7839250D8F62C6D7B0874C8AD0C42C6
+:1059500020D8B816AAD1779668913C4133C9D4565D
+:105960002407CD0C88196ACC38F7A0A1B36185CD86
+:10597000312E58C87E70B9D8A77F344B7865AD55A5
+:10598000990D7F8B14A8FD8AFBA99BB2D02DAD0782
+:1059900041D1DE5033DD1555E9E999BCD08F3C701B
+:1059A000F5D6631864985C077A950D0BD29BCD3DB4
+:1059B000486B16ECF55C289BDA5C3B315BDD464FAF
+:1059C000706BABC3308B564203E8EA3C85E4D6DC0F
+:1059D00066168E6C2B274EEB1D4339813F124B50C0
+:1059E00091BEFCC9800D3B610D82D8E747B5865753
+:1059F00025A78A1DDDB265B0BAE320EABA3842BCF9
+:105A0000733A5CD5D27D7C0FE1474DED34EC0883D1
+:105A10009312F13A1D1D452E1E962F6DCCE511DE19
+:105A2000308C0BAAC579F486AFEF01FF66808684BF
+:105A30003F55C2AD506C717027CED7CD465CF8553E
+:105A4000F9ED82F750AB4B14E8033A015A77360D63
+:105A5000EE89F17AFBD2D840E9A6147771E22CBD29
+:105A600021386221DE0D4520A67010D81661D8A617
+:105A70004EDF1BE3096E79B01CF5D50A702A91A799
+:105A8000093D4F7D67EB6772446482ED72A6102A70
+:105A90000460CDC9DB6A65B0D9D1E8996BE663468D
+:105AA0008FD9D6DCAD6D0E1955D9A83D51AF699689
+:105AB0004C28102BE6C92F5798CFB3F21B936EE0FA
+:105AC0006038984DE6ABE89510B3BD1C1CFB292847
+:105AD00055FEC3E999C3D948F37E9DDF0EADEF278C
+:105AE0007EAFB539E344A3216983DE7D49306ED3AF
+:105AF000DEB0EDE29FEDECEEF8EFB60DF6766EE778
+:105B00007C76326D52CA9300F526C1C641DE20BEB6
+:105B1000D7F8362877AB89AF79874E8F8BE7E0C40B
+:105B20008EBE28A17A4CF2197B3740A67F65B7F06C
+:105B30001B7A686F82DBCD324601FBCB716FA05AB6
+:105B4000B076856137B4AD198A7189C5875B66FC0B
+:105B50002D51C9A2EA0A74268BECC51E6F1777C7B0
+:105B6000F1449F3FA2F60B8D219C84CBAEAABA4C88
+:105B7000C26CAF660C2F99EAB16F0A9D9680B22B6A
+:105B8000D7FDF5C2932243A723E1D90F02CAFB6BCD
+:105B9000795963F2A1778810384F85EDB45BB52849
+:105BA0004F2E221671FA10F3763377344CC0904999
+:105BB000255E5DB71A38826069E8BD2D05C9A3B2BC
+:105BC000050B033FE79407AF4C38657F46436C35C0
+:105BD000BC2F42793AFC7F6A81C05F7043089B4CBE
+:105BE00041DA28A2C5AD19960F6BF49D443EA8F684
+:105BF0001780D2D7657B608C74745CA79C0AA22B3B
+:105C0000742AB9935283244A99FC7F30911B68C847
+:105C1000E3DFF44EB103E63F0B637742E51906B0CC
+:105C2000AD52BE48D351D13312A370453F6AC7E786
+:105C3000CDBFBFAD26B67141B99C3AA2C4211709A8
+:105C40004EB827D45C8D009123F7716D4C2931C378
+:105C5000087F1480B5410B6AFFEF4FF9D5541D60E2
+:105C6000CBF2F430E909E0DF96DC9572F26DA669BB
+:105C7000764095280BCCF762FE93065FBD0EFEE7DB
+:105C80005470D7122655ADF3657ACDC845793A33AD
+:105C9000C5841A06575BEF7FF08EEA467F33DDCC72
+:105CA000CD6AA093D7F3546CD1A81FEB4FA50B4638
+:105CB000D14AFDD1662182D192A3AAD2A1078D3704
+:105CC0006FD4E536B09676D01EE0F9B688D5A73CFD
+:105CD000B18EBD532323AA6295440D0F873317124B
+:105CE00016AD388444A6FDC4BE857F875A7E86875C
+:105CF000033ACAF62582A3A384EB4619519A128669
+:105D00007DDBC6DA304A2C3539A5AEEDFA57A1D382
+:105D1000BD6358C14E7DBAB4C2FC0A7BBCA2643FCD
+:105D2000D8FD19C558CED0289D4F1837786DE2851B
+:105D3000C257F9B79DEC54948F289BAAA4AB2010AE
+:105D40000F5DE94DDCEEE42CEEC731B6A940DF4E25
+:105D5000B35662AAC973AA74F995156C99104EF0DE
+:105D6000E8B7DC1E713F9764857B885AF44662FE73
+:105D7000050DB50F92F1A28D9BFC0C2F175CA78728
+:105D8000BFFA5826227C517EBDDAD034A2946494A6
+:105D900060BB2EE0C2ACA6A3CF5FFE73C1569304D6
+:105DA0007DCE88932211CE76A260C3F70863DC4FC4
+:105DB0002A7D7724C02A1DB12B233A1E51691FBCAE
+:105DC000E9B1B23BB6E2A8FEF7461FED0786C27105
+:105DD0003271C8A5E3AEC842D03531B7131DE279A0
+:105DE000F051880F8ED8B00EB98AA7F67676F7856F
+:105DF0000F4B5B76A027A84DB7167BDEE0FA145E4A
+:105E000095CB63BFF6BEA3437ACB878E1ABD32070C
+:105E1000CC9E7FC513E088C557D5905AA02F92D449
+:105E200082B2A49044BC106D20EA7E5A62416AFDA1
+:105E3000510038A73C7A7F7B1920E94BB62AD284DF
+:105E40007464079868465907131FE7036B00B5EBA6
+:105E500006E4E574495BB0369E08B73D66E2C64885
+:105E6000E90BC68B86192ACC5B92E5F95EDC91A71B
+:105E7000C6D8D29F7317A1873940A7ED1BA556A39B
+:105E8000BD0B14134010DCF405E3A582E70D780385
+:105E900095A77ACFB02D17BB521741642FA8618FF9
+:105EA0009D350D895DE6735AA2F50259B033AF43B3
+:105EB000CD13D019A71FE7BD2FCF943F2D821F44CC
+:105EC00011B082667EDFB377CDE2C8CA01A355E088
+:105ED00067BA265831EE4B15D5B232226CDA221B46
+:105EE0008633E1612C0CFD94715267CCCEA27B40CD
+:105EF00056D62507C85C6A8DA78401029F0964A74E
+:105F0000DD136915017C7462E1923C4E5F193DF529
+:105F10004213C6F7A421354C392D1D5C06EBD13B4D
+:105F2000BC9EFF13EBFA3BC394F6C33DA6EE96FE70
+:105F3000BF4B4D409C4A30C3F7DB70F4C885D2E1BB
+:105F400063E1D8D6891CF3B6E22A1DD836C123F204
+:105F5000F7B083691B9A6728A1075EA0CDE9E642E6
+:105F600019D077C31BD17B690311EFCEE2CA6A0E49
+:105F700056C5D6C472723A8C336543FDF45746EC6D
+:105F80005388873834A3C4CA1EF417F9C5EA220B14
+:105F9000ADB48E6BC94E580FC8CF7E46B29D530D1F
+:105FA000267E0DEC102674F4656BAFBA16566BD3D3
+:105FB0004C7C1067599735E7611D449BEECD7DE51C
+:105FC0002E453A93F33C948461694A23FCB15EED1B
+:105FD000659C597D9821C494F9EBA6505954287AB0
+:105FE000A98BAC2C54FCAC7D635111848611467C8A
+:105FF000CF1BEA885E97CB1044324249F855EFF741
+:10600000072D48441CBB4D8B5B08FC553C044911D3
+:106010001A19FCF71F548265DDA52FAD088CFCCC46
+:10602000B0B92CB1CCCCD9E54C3369FC7ABC3DB9C4
+:10603000D5487F3372075AC6CE35220A90EEF09FBC
+:106040005A2BE73FA19A67BCF3EE2979B0B53DEF33
+:106050001FF4867E91A0C9303D13B22D9D2CDF8C9C
+:10606000C2807D72D2BE85F072E28F05CABF357CD8
+:106070002ACDD5F6490302C33075E83A33EB9C3399
+:10608000A32277ACEEC6030E3C641C5584099FE046
+:10609000A6DF7D47058009920B320A0C2D7C27383C
+:1060A000EB18EA6236DFC0B5C890FC9B9D2363F80D
+:1060B00017C73D498CAA0E90EE1C41BB527759ADD3
+:1060C0005D9BF06080DDBFA90FFEA6DA8026E16C43
+:1060D000517A260F85E0F58EE6DCC2A2B0F2507749
+:1060E0005003AD892396223955F70BE9D9675C0D2A
+:1060F00080E11BC8F501A672EB4D89A14F58B8E3AA
+:1061000052576716E1A53F16DF4D34FC2DF9D11D1E
+:10611000F65464DF9E58D30120BE1D78F9FA4C84F2
+:10612000B1AF238621B3063976D11438B673A144B2
+:10613000067EA4B2C368DC9CE384A5ED5E7B44A824
+:106140004C65588CE5DE171C48B3C926CBE9ACF189
+:106150002D0B407E42A69186D6D0E8847C3C8BCF26
+:10616000C3DAC5F5CD7ED4C723B6C5D2557E294145
+:10617000E06E0651987924EB8C833FEB0CCEA8900F
+:106180008CAC03C2045BE9E9E5F2E724D10906D44B
+:106190008B7D50D0C14260814DB0811B37B96027E3
+:1061A0008AD26566467C336BA04189F9268E5741B9
+:1061B0005BBB197C891C9AE520B51007BBECCC644D
+:1061C0008C50AA2B2A40E29E2CFC84CE8B43F815DF
+:1061D000F73D70B02CD6CE861F89B2F000C5FE8E7A
+:1061E0009AB09921CC982C3416D9E467DDE8412582
+:1061F0002A8A32EC560F3C5DEA3765C509C69D3BDD
+:106200007D6CC7E4620A57635A3BE3E70B98C17E93
+:10621000F3938A9FEBFA2919127A57BEAA987E4EF9
+:106220003E7DF8151394762D532454949D97424F38
+:10623000C528B1D573F63509A03EAE04A277FB7D23
+:10624000025D6A0EEB4E2598CA421FAB4539B0BAC3
+:10625000200DF612212C064D913F6D12B352FB36E4
+:10626000B96E447C642A7F3864CE400C351F1EB65C
+:1062700056591925F642F76ED713C58EF72AAF3F48
+:10628000A4412AC579B22893F21110D0C96314969B
+:10629000EB96E8F8F005B89F76DDF4716149448A21
+:1062A000ECB8EABB88FFB659051701ADB9A601D114
+:1062B000A61619E9102B724FCF7D592D09C7342628
+:1062C000CF56AE881060C3FF1652D5F1982FF8391B
+:1062D00013DB4FFF1B5ABB87BC0E5CCDAA7B62A0B1
+:1062E000DAECC1CFD6B61C13D2BCB83E835929AC68
+:1062F000CFE8B5991BB4C18C83C270D6EDE7C73E19
+:106300005F1C55F5B981D790859EDF8D8E0361B7EF
+:10631000C3CE3868A02B6D3F76AEEF836BD69A352F
+:10632000C31F63A12B32882BDE3AE12BD06A6DF5B7
+:1063300047E68A3CEE9122EAC05ACAC8AF5DCE4F0A
+:10634000BEE98A12C3B8FA81C2AA5B67E022E4758B
+:106350009CC56A84CC6C78801A9B003DEF9CE44E0F
+:10636000EF8FFB49717CC31F1F12B9751457AF3EE5
+:10637000C5DE683CAF9E023F107318B391B838E396
+:10638000A72EF9A2A2A7FBE8D40952B1DB5BE68EE7
+:10639000A74AFC4D1C322AD54964A64D0CDAFDAD46
+:1063A0007C36FEAB4FEAB7E05C7DBE6CB1EC6A5563
+:1063B000D87A90536684B98323AF79FD4EF7848CE5
+:1063C0002E3D2651F1D4FDD1E5F0969DD3F522D393
+:1063D000E1E1DEE926AF6BB2A50995E2BA3A404F9A
+:1063E0008D7C6095BCBEE2FF0717A0C7187EFBA995
+:1063F000ECDB02F378AAD3F64A6E9449A7B495DF92
+:10640000A162D3549835855AB73B6D8FF9D3FDDC23
+:10641000B2E9F1600311D6F861DDC6F84CF0688F7F
+:106420000D34C2EF6D3BA5EA8C76F834C3113BA660
+:106430009A53D45DAF3C1FC0BA08DF3DE40C6C5BDF
+:1064400095D56BFE78CDABD4DB6DC13C4227A18ADC
+:10645000BEA2AA2AD16FA9FF1FFBE3FD117AF9287A
+:106460008B9B285AA1DD388A0D66CBF9DC32D5F733
+:106470002E4319C2A2E009C7A2701A07969B0CC14D
+:10648000DAB776D22CF06B0FE971AD51BB63369F52
+:10649000D2E5CD49122C65450C9721E4A490B0E6D5
+:1064A000AF68DF52FF65210E98794DEAD044C08075
+:1064B0003CE51169DAE251107DF4CE32BB24132B96
+:1064C00016EECD74ED8C77A11B3ED46FFCA52E5932
+:1064D0008BFF309233DB8A7D0A5F7697489AB6ACA1
+:1064E000BE2E9D82A32EDE533384D63848627E5F53
+:1064F0002E9EEB0662738A256507C133904FE72114
+:10650000174B51DEEC5709453758C7AB516E304C2D
+:1065100017CDCFE1DEE974EBE725BD54254E9A9EF9
+:10652000F207D6FF9439D63CD75263E3523A2FE1B3
+:106530005CCF982989E9CD12A9B2DE1FF957E20F85
+:10654000C46FAD9942E71656AE594573FFC6F93888
+:10655000AB5023F3B2435E6180B66A8175988BDDE0
+:1065600031AD97A74B187836B2066C9FA8C4DF20D0
+:10657000816AEE3717E172F27F9DF1E2E2CE632F7E
+:10658000F107C1CB7AACEFB09D861A5FDC1675843B
+:10659000A6B7EB768853DD862B182BCF2148AD5557
+:1065A000CFAC4377644F69123784E7C23827F5F9D7
+:1065B000B1F4CB1B27FEA39EC2E75002218CF0361C
+:1065C000845486B160950D02AFB840C3A54FDD6914
+:1065D00014D991F3E856F8750D8431ADB2EF5DCE64
+:1065E000BFBF71BC69E875A3F158ED69E28E9F6584
+:1065F0004F0DD6DDAE2DE31401B668927070243BCA
+:10660000C3C8549F3BAE7E076A8114562C3CFB1EC8
+:10661000634F3348C3F3CF0D39B5406E93F8D10EB5
+:1066200079336BF17073A5D4B9ECA549435FB644D7
+:10663000E2E73B35D61D2643490A23A82BA58864EB
+:10664000A0B458801CFD2F959433A7E14CB026A927
+:1066500058C14CE0BE05B436785621841A3A0D0074
+:10666000FE0EDF4A49BA1C9539F676CEF43B567CCD
+:10667000714424F60FFC7B92643A8336372E4E37F2
+:10668000C57DFE55B700E61C323EAD1B9F1E6797C9
+:1066900084172BB865E720503D5C81E56BF8517598
+:1066A00007942F2FDAB973DB584AA9D8E93D9E2FFA
+:1066B00019D7F71ACB0226AC363292D10B4869941F
+:1066C000BF53BF4F1199C85B8C3452EF7C42C1233A
+:1066D00058F01344A9EFA9F0424C854664844B045A
+:1066E00068BEF3279E02A60155855DD8AFC2D81BB0
+:1066F0000514DAA96BEDECC2F490823209D5DEC044
+:10670000C9D5BE0E9922568A192593C3285F6060A9
+:106710004726F6DB616DBD8C5745F4AFDB6518820B
+:1067200095060493E63372A04F90E16D12C65107AF
+:10673000C61018751D86AFFEAA723907B4198602F5
+:106740003F1B028B1F8FB5EC8044B293419923DF2E
+:106750005195593528733C2AD4B9524D8FFFBFE368
+:10676000241C35414B4803045F7F3EC38E98992615
+:10677000C878B5E19956D0764859364DE7770B0D74
+:10678000AF1209DAABB1D5699A8661264D2CFDD9D5
+:10679000E7467BB4079057C0EC1F7749C20FD5146A
+:1067A000BDD5FF317B50BB439561D2C176A263E07A
+:1067B0007D6C51A465A90299FFFB0ED8132FF9F740
+:1067C0009191B79DECA15486BEE816BE64B7B5FCA6
+:1067D000E8D7BA40E495331C76F1476436FA4ADECE
+:1067E00066DFEB5436F7478742641DD7B8EEFF8665
+:1067F00037268AE685EA044702CB748D933E3797A5
+:1068000010997E6878DBC392DBF4601A45B61A0EE5
+:1068100085776D123C225293F37AF61CF7BEF9F895
+:106820002D31A9359FFD4B291736F21DB1CA5BB535
+:106830009D479A7DBFD46BCA6078CA3ABCFF2FF5DA
+:1068400064127959D474887DE9359BDCEC9BA38173
+:10685000C24141B1CD624979320A8CE5B3E66DB6E9
+:1068600027E9B9FBE4096FEE703E271AF4D757A663
+:10687000AF4CC82AF3FFDC80BC11ECB566822F1741
+:10688000C281DF2803FC1CDFCC9080BA02E64C3DBD
+:1068900016EF453AEA5E133857D7D3FF23F212FEBC
+:1068A000C5D432677CAF6166F28BC5290FB94C0D38
+:1068B0009194D3EAC7C28B8606E5D9984EF2EDB91A
+:1068C000C0CDC752E4584AF4C07A27310355087046
+:1068D0009B755AADDAC33C2AF528182E8B2A02661E
+:1068E000BECFF1FEFABAFE1C86F4227E37DA5EA431
+:1068F00003A06F166F6E7D298F7A745B41B30AAC6B
+:10690000AA215FBB56C4E6A60C8E66B79C4C102726
+:106910008D54C16DC2C136EF69807DAF00ABCDEC47
+:10692000A5345E186683E6C7816523E9BA59145F0A
+:10693000A29D513EC586D7C5644EA4321C6FBA7461
+:106940008E48218486038720D65A09DDE87734C62D
+:1069500038CF958FAF383B431A66CEF9C72F5EDE2E
+:10696000C44AECAB4D25FE57A37AA0449E86F68C14
+:1069700096AE23E087118F5471B068DF0BBBDE88C1
+:106980008A6D33E9A9E3394304AC72198C234F6D46
+:10699000FD1311C9D727C05640A1F5A1720E086595
+:1069A00013151A580F7A0918955CCE9A7C4019D1A4
+:1069B000D74DBA516445BCC81D2EF43C1F22833606
+:1069C000184EA2197E9E9B6283AEB3C1945CB3E85D
+:1069D000A59CB9696964DDE72139A985EF4A7E1D67
+:1069E0000802C7754173FA6CFB4074FEA2B7B5ACE0
+:1069F000029306B1FB2DC1130FA6970E803E6CECDF
+:106A00003C4DF35E44C16FAE5134A305A4715B7776
+:106A1000BCB504AC042349E604D44421A90277851B
+:106A2000117DBB4A718117B8026D890F4EF822BEE5
+:106A3000F00A33C126D026C4CF56AA40F07B4D6061
+:106A4000303F709272575F4FC69448096996CB23C6
+:106A5000027BB3E26FA41ACC1E0B596C1262937DB9
+:106A6000C0A66955347689BA124DC46A3E7E705C00
+:106A7000621F3ED2ECDFD44584ED70F864818392CE
+:106A800084B888E1C5D1F82F4E9AFDFEE10570DE8D
+:106A9000388E30D25C7E510923E25C25E149623DAB
+:106AA000A7C35150244DF048EA9A427193F0B5AC17
+:106AB000CBBACEEC64C009817206EED69F7D3568F4
+:106AC00005B8E9CF186B8BB0D871BEE0AC9E904092
+:106AD0007C799FC37DEEDC6958B3D0B010919EA93C
+:106AE000971443FB3C846ED900A1F338F6440E6E34
+:106AF000835124C82626BC24BD5090DDBF2CFE4DFA
+:106B0000C7A85E17DAD22734E48306F7655E337CC4
+:106B100039BB357F150C612B9F44950C7C3E9C281E
+:106B2000FBE04C6D3D857B7A2ED8544D36FE8F7040
+:106B30002DC46D6376ACD122274CCC2C892F77E500
+:106B400087F976C0E6CFAE886D373A543F3DC9FB32
+:106B500071A2846C2272CDEBAF45CCCA864A987282
+:106B60003E747515C05780F5F48C31E1EADB9ADC90
+:106B700082E42DC8E7DEF62AFDC70C19AF816D57F8
+:106B8000C66709131820080C6F0ECC0B5FB3BF1734
+:106B9000DEA6C311F7C0227B793BC8937DF0A5DA4E
+:106BA00048DBA4255723A7FD8F8F93B1687D501232
+:106BB000989708965BC32D02597848E18C667C4E05
+:106BC000385E46A77294F85E831AD1B0B302D18DB5
+:106BD00020DD5089D1C05622F47D5499AFF21C7645
+:106BE00049A9A4F6189462ACAB0E69FC02EEFD9FB5
+:106BF00027D5DAE59CD6C7475B9C51789786C3A812
+:106C000035353448510887D43A794EBE73E0423D59
+:106C10007561D3FE8D9FEBCB8C9E7AFF5D296982D7
+:106C2000CD2733064A4AFE1E3ECE215C50CE7583E8
+:106C30008740A8B20ACEC423CFC249ADD612CEF641
+:106C400086BB022C471E6630ECCAFA275D209E8266
+:106C5000E9A0A0494A49439D667C78E3338E057BD1
+:106C6000AF0772545F1EE0463170E519EBA25BD6A8
+:106C7000B104AD592A88A1B722FCD1C28FB7DB7607
+:106C80008DA7C63FDDEF00B9FFBE417AE2064C4A50
+:106C900060CBFB2BBD7196436113E346F49CE7A5E3
+:106CA000AFD98939ACFA5E2532CFC8D6F48A14D36D
+:106CB00051D179B360A8C9FFA7EADB75BCFBA53E3B
+:106CC0007A083F22FE7FE1C80EE70E098A4B4DCAC3
+:106CD0002C72394BD627307BCF659D86B79D24C754
+:106CE000C05AC1ED6E7034634B38B280D06F8C22C5
+:106CF0002E504D18EE6C2B8891B71FD944C8266FC3
+:106D0000B36DB096AB5F3BD3812353150A3A64C38E
+:106D100008052F2ABB212A750E32DFE7C4A9A0E39C
+:106D2000C913DB979000E85309FF5B091B377DD53A
+:106D300035ECDAC5046A7E9E4D47F774DB3FA667E3
+:106D400061B7BE38DB20AAD2A62AE1C49410EB4872
+:106D500039AF49791E34620717AEDD42E3D0B32B59
+:106D60007464B23F4F974E1AB787A24847E1A464B4
+:106D700048A983720CD92BA28910FAFE11C0B80B56
+:106D8000C76DD7087E53776A94FF222A1C4461CCD2
+:106D90005946BCC6E3BF41AD9245C56D33D20C71B7
+:106DA0003E5D9386D8A11E528599497FD947041329
+:106DB0002DE9A73099F085D31329C732D5B203E264
+:106DC0000D4DEFD779F515A9BCD1FBCDEB20B0293E
+:106DD00097BCA9D7C8B1D39C5017402CEDEE27A97A
+:106DE000D6C2C17E8E7221ED89967F68D9DDD86FBB
+:106DF0002D50A7C8943ED8AB95A66CA3EEA8BE981C
+:106E0000F2E28B4DFB6DCCE8C0380EE4D1D052B12C
+:106E1000B842D737DD15FE6BF698482EDFB5735CA8
+:106E2000A4FF48D6D8105B90145B2F08E7F5E5E97E
+:106E300046AD4A9F754AB51CCB565BB3B9A2510EFD
+:106E400071455074D5B922F303D24377C7DC242DA2
+:106E5000E5F18722619F100AFBC2386B5103559000
+:106E60008E2E9EC4570A565FD10D2F088C53706228
+:106E7000F057AE59217381D1C7C279D17C2074ED0E
+:106E80007D7A172324DA854292660A5E99CB056DD6
+:106E90009C9D1B1D93AD1E3158E0EC2D4AEC58C94A
+:106EA000F51E916C6A097EEE2BCD3932A8BE23F90E
+:106EB000124EEFD8069F7AE404B4D44D28293752F5
+:106EC00088DDEEC85CFE88512BFF19EC5C5F0A5C24
+:106ED0006FA69080BDED6227C15ACC739D3E5914B8
+:106EE000384D6CE5469ABDF80C9AB7977C93498764
+:106EF00062D9118E79BB9669CC9E7F4BAFF5411755
+:106F0000F02AD01F55E71CEF27218511A160A14071
+:106F10008C86055C0B80E70813DCD15BCD7793147E
+:106F20003EF6D46A79874FF02F6399C85BF6B19A21
+:106F300073243E3196CF5FB80A2FF1821ACDC92251
+:106F40002FE7A9AC510C115ED0D620408D0A9C666B
+:106F5000A0F46F0CFC9B4941379BFFCC31E632BD5E
+:106F600002B3498911AB8317435E41838484C1D93D
+:106F700028A571FDE1908322E1D37CE08ABAEE017D
+:106F8000E42F18974D95D4CB1BD51E12DB47BB2B96
+:106F900094756E32BF03F10FB99C32F411BCDF8FD0
+:106FA0006E646D4D04595A45395BBE0D6FB63C1485
+:106FB00094514EB7289A885EBF028DB1C0CFE92B9D
+:106FC000C34614D050C36F989283A02C5BD7F2C1F4
+:106FD0007F5F2A370E6888075ADE0A7E7CC4370F27
+:106FE0001B41A466D2229C90255D938C54D21FEF46
+:106FF000339038DA3DC3FC7F7D75DE973872F7F346
+:10700000769A532657263E2D310C46ADB261044088
+:10701000DDCD06E18D49C96111D69B2D6FAF48AD1D
+:10702000FCD73272E19980D970E8FF2B53F24516F4
+:1070300024D8FFC557831875BB496674E5A79F21FF
+:107040004FF637990CB7D07E919D2EFC22E4ABFA17
+:107050002EC08CBB24AD3F5A185A98572A237CAEB9
+:1070600086C82642A5EA6B6D5E5EED478CB6DA17E0
+:10707000B328E23FFEE4998AA9358E6AE24F1B10DD
+:107080002DC1BFD13856577636B529663C49581EB2
+:107090009352A8B1102CFDB30AD291BEA152E8CCF4
+:1070A0001F027362C81BF527D53466FF564914EBDF
+:1070B000A67AD62CC5481F367BE418B81FA136D94E
+:1070C00044C10900E91EB0D6867C93EE51BD3EAFA7
+:1070D0004CCD958C01F6487932FCCBCD1CB763863C
+:1070E000158CE77A9E705AFD5792DD6688555A8D49
+:1070F000E92A41B64ABEF2E925D6E4204BCD84ED1B
+:107100003029D4A4571BCA88F9E1B67F3DF4742016
+:107110000F020E4F3C82129CEAC95B5D898DCCD177
+:10712000496DD6DD6643C1C764527BBA0CC39B7DF3
+:107130007D1AD778B3386359747BA608FBA7628D94
+:10714000225643777B98A03B0118D79B46B688CA46
+:107150006AA3806684DB20C3EAF259CDBAF06E6B75
+:107160003ACE00E576B15CB2BB057B72FA667B1E57
+:10717000675C7CC4C19B4723CFCF100DF1599ECED5
+:10718000F97C4C864938C2135446FCD375C31006AB
+:10719000E9D36BF164DD03F10BC087FAC2F85B4DF4
+:1071A000B76B1E4436433D297BE33A00FEFA8FEE6F
+:1071B0004CF49053F8A728A135FD343AB2A14E38CB
+:1071C0004A0D2F5F984AD007462A22B6A7DDD22162
+:1071D0009027E0F95B0C3E067E240BD0A5F35D7989
+:1071E0003E2C0B95DC140EC0EFC42B34209C4A4D72
+:1071F0000A2BAA2C9869F28D57627BB9AA88885A03
+:10720000AD867297D08EECF0354ED7206EC6CDACE1
+:107210002970AC36C05B5F1A5FD654D0971C23F43C
+:10722000F174FB5EF0F5AF5205D2B2082E778A58A2
+:107230004186F90A993999CF78C83547FF121AAAB9
+:10724000FE4690DA339B68B09499F07ADD82E4DAF6
+:1072500087F4CE36BA2576BABE870125144C304065
+:10726000177BD81E701FB6A551D80DA4311A0A7EFF
+:1072700001891654CE5219C30B608AE378FA335C45
+:107280001F9DEC4C62DCB51BBF7E83B30C2375479E
+:1072900024574D7397B5A421C59096F0E236F9FDB9
+:1072A000066FAFA52D5F7730F4DD5CDE1D6DA07E2F
+:1072B0000C1613B6443CB147B2A8F4EA4C2F05A80B
+:1072C00057C3F79E1A33564023B7D831DCD8D320A2
+:1072D0003163386DAEF5EBFBE6D5F10A524C22B1C5
+:1072E0003EE6EB4F655445ECEC2F58C5226D2B3B29
+:1072F000B09F626A028630D235F65C4267FC5E5A05
+:107300007F02DE950748968039C022EB451FFADEE2
+:10731000B35839D6296B8D464F509E1707D5C2F505
+:107320001438B8756C4979CAD665B58965AD52E42B
+:107330001EF8011726508E9E3455382503BC1B5A63
+:107340006CF6F7137CC8E6743CBA74B1D1FF35DF34
+:107350009341BDC3D05FE80AFAFC3B68EBB1929160
+:10736000973D6B807938E68D1FA61CBA5062FED51A
+:10737000857D337BAE561A35226E5923528DB12F3F
+:10738000FEE8AD44D4B06687A5383624C31AFC5253
+:1073900037B8DE6B2565FAA6E84818573E6F46AE4B
+:1073A0003C80E8F6723702933D2E58A864B6470B2E
+:1073B000D5050FF0E87F5C5EFFD9F161A97FA19050
+:1073C000EFE06DA913B7148EAEAD766EF2AE16096E
+:1073D000E80FEA9D7C3F85BE450827451C8E8A46FE
+:1073E000943CE526567774BB34AD1DFEA854F89541
+:1073F000A7B66D8F2325F57C98A602775B63205096
+:10740000E596EBFEF1D2B1CCCACDA3EDFC93F2939D
+:10741000DD15EFB1E27A6CB4573316D8818950D7B5
+:107420007E294DD470DC071E28FCBBCE75478E36F6
+:107430001032CE477BC23D1C8F03CA256FB3DE35A9
+:107440003519AA89A1FFEB03F1FEBD4E94C7D4857F
+:107450000CF2C0F2BF7DB8D8EB6330244C44FBADD6
+:1074600079B8A191060DB457C2B0011580935B4065
+:107470001394C21A836304B10FB4B875DE7DD9D6F4
+:10748000F05FA02CD92A4A7DBE02B7AB165BAF10C5
+:1074900005D35ABC885EA526CA1F50F116CAA43D62
+:1074A0007A19B6763AADF66CB2D1250A7C94F15FC2
+:1074B0005550FB0F3580214407CE0CA0D159A0C2F6
+:1074C000C673BA12ACB59F4F1B5894E845EA7F0FBC
+:1074D0003E79EE8992F3154C8A0E8AE362605FACC6
+:1074E00031DBE7AB5455667CEA781DD9F03CB5F545
+:1074F0006EB2E5B11EB26EF028D3B1878C8A460811
+:107500005CE405F20D7CC25B9F17A9F84153754BF3
+:10751000E1BF774E6506E819282AC5A93B10B5F8E2
+:1075200050529E186CAD3932C0AD7294ED8999A25B
+:107530007C49463D12C33099808E9BA7EAFF14ED2B
+:1075400047907973DEAD0E665B9C9DDC95F36C1DF8
+:10755000AEF23A5A4F8EA657933EC264832BFE82F8
+:107560001A4B0395D5B84F61C98838BA3DFB476AB5
+:10757000173450CB15F9A37586A48BA26DB9069765
+:10758000951C92502A2C5806EC529E8F23C83D2001
+:107590003461203A6DE1920CCD20F310BD2BE7B899
+:1075A000F492DAB35FD0F039CD387808E91F6E670E
+:1075B000ECE461F4689AF19D7F65355D23B3376D26
+:1075C000BC626362EDB90F411A2A1D4C2290E04B58
+:1075D000E891E95ADD17CA8783820961C00C1EA2AF
+:1075E000CA5CAA6D2FF1895E578FB754E4E50C5F32
+:1075F000DB21335DC0746A64F561C110C30E057090
+:107600005C2E3DF01E568A6458A4645913ADE8CE32
+:1076100072461117F28CD11ABECF0BD6D17E44E13F
+:10762000DC78BF28D573DBEEC04166EEA1B925DB5F
+:10763000417113B13CE54F7C044D1F37976FD98BD7
+:107640005B0A65F8F0A763AA9D506A54D3073048D7
+:107650008CC62F2B8221FD8AFD07EC9F084EE89BEC
+:1076600012D1D756253781628A29A8B813863433B8
+:107670000BCD6DEE7AED85FA49B8982CCEAACFF3F2
+:10768000BF0DC9FC291ECFD8ADB97F96BEF40ED868
+:107690005EC56EDD7A162A713E63B2CD4ADB3CECE4
+:1076A0009D87E3936AD8098CC351CE701C87FE4432
+:1076B00082C3A7777277385AB4256AE901E9028B49
+:1076C00022BAA78AF53B02E72E239BB47AAE8B61E0
+:1076D000898BBF29E6210C5D965423A1293AFBF53D
+:1076E000110447E170A181EABDC9B349B962169E90
+:1076F0005734CADF3412855E0EAD23C5C7F4E7F1F7
+:107700008F5DECF489C8A44B1EE9FE0D7F10527703
+:107710003589FE201E61B515732CF9B98BEF1D79E3
+:107720007FB711F703A099D119444170A87403677A
+:107730005BA6C0992D5A4D5D4D825E433AFF01BD57
+:10774000DD4AB83932CC5D1284B0F43C672065F173
+:1077500006434FFCE1EC92B76C2F30A4E6EB875A5E
+:10776000F3BCBBBBA5620BE370F215DDBB61FBD7BD
+:10777000CF29EC5477CF98DC879E0396394B803520
+:107780002709BDE0346D5894234275835A4BDEC3FC
+:107790006D0E5D98AFFDBC1010C154760F28ADA2E0
+:1077A0002A84C9DBF0253586E7AE8FCFF9D089C7AB
+:1077B000EA65A0A263583F3D68BE44D1AC60FC2698
+:1077C000C8947C28C8665021039FB95BD3FA88D639
+:1077D0000D54811ABEC08E65B45A377F7287EEE7AA
+:1077E0005B6A28894B1B1B07801D313B39DE001B60
+:1077F000E52584A5F36305BC5BB45E78A2BFF163A5
+:10780000EF84A660F2D82F99AC1A3FAE7EDF18BD88
+:10781000A7EC98E3E4AA9443B48ECF6A1281D9FE10
+:107820003113719E0606B2AADBC07E27C0711C050B
+:10783000EBF6736ECFB1A1A473AA61B695E6A69ECE
+:107840001505CE3E265D2729DA81AE00357232E677
+:10785000B04D6CA4A4135D4BA11B5D9D9FB366ABA3
+:1078600081A51A76F47467B0C4F966161569A9C6BD
+:10787000B0C7AB9B31B5FF4A88108A9CB8A729DCFA
+:1078800037DF30BFB5CE9C41D4BEC590BEBAB980FB
+:107890004FE59F43EA8C8A567EA77E188D6E7FC582
+:1078A000108C46D9BC3DFE00019271C08355D9FCB5
+:1078B0007374BC9283AF802FDBA53C13C90D0EEE11
+:1078C000D1A355AA322D2CA7E901716BFD70DF20E1
+:1078D0003DB1FA33662BE54564347EB97D83BCB196
+:1078E0005704E8E414DD3B1771B897D23B0EF82734
+:1078F0007ABDBCBE8BA5185AAB7F23D780ED84AE72
+:10790000FB3BBF4904A8B4E9DDDBAD0A826AAD4E9A
+:10791000FB3540E7D27E8AD3D187A2620837B1B166
+:10792000E9E30DC21FE819DB895A58FDD04B377ABD
+:1079300059BBBD9D08A3216051517E494311B12B14
+:1079400050954B158C93A69F2268F40AEBC7A66E40
+:10795000143D45B4033A2DF403C62A0CE45104AD9A
+:107960005E44F404E66CE62A2C1239AEC60482D7D3
+:10797000F3E815B787423B0D0B245A50864C5B50F9
+:10798000A59E074E5D5845837BDB718156FD46E31E
+:10799000F0FC24C48D23B179FACCE1D80E7DE03C13
+:1079A00092D269C0F7359BF987FE3E754A4337E1AD
+:1079B000B2F04F55E99C200A7870CADE38FF3CDDF2
+:1079C000A4CD0CCF75CE77DFA5856A9BA934FD7554
+:1079D0005AF03C820012CBB2454E2919D45AFF5FAF
+:1079E00083FC5D2059A27A08FDBB75DE70C144BEE0
+:1079F000B551421262F3398E2BC7867381E3F6CB01
+:107A0000359A57AD7A7D167EBC94F2E01417C8FC07
+:107A10004C16D8CACFA7180F9A7FA443A7A6EA8905
+:107A20005E04934374A267035C25ADA3F5FD22CBEE
+:107A300084DF5360F4F829141AEE3FA0A890607414
+:107A4000DDB684BF5F34D14E6DF967F3C993C5F7D6
+:107A50002994A4FD1FA1883F3C77485ED17EFFC6D4
+:107A60009662B46C1EE78A3330727DDC098C23F891
+:107A70000412AAE4C6E338D08A2E17EF0E277CDA68
+:107A8000146A54487AF39AEC8ABC3A7BE29088CB29
+:107A90007E35B1B69E8D4446A4C2B87986C336B54C
+:107AA000E614B9204EECD25039E153A3AA20C4A366
+:107AB0009DBA896AB5D453B4D9EFB7B733A4AAC86D
+:107AC000290F9C8958765794943853279BF59D42EB
+:107AD000BC0346A6C580F8BECA6722F60811431C3F
+:107AE0008BE1FDE9A58326560041B101CDD7177E74
+:107AF0008E91D304FDE07354FA845AD19DE3094F6B
+:107B0000D4168303F158F3CED55E354741CDB97C09
+:107B10007ACC705CA9B2787070977DBDB4764266FD
+:107B20004262F8786F8B856A225939A4996270395C
+:107B30008F7BA31AAB41BB6D75BB6EB0387AC8FAA8
+:107B4000A5F0BAA240FE682ACA491C28357E8C00DE
+:107B5000B592EB1E93E4E7A29576F764B9BA0047B5
+:107B600046F7D82CC45B80326A3B5A2E54806AB7E1
+:107B7000EA79735430CFA8958C83A44DAE84BB981A
+:107B80006567919487D1D2F62E8ADF16AAEDCA6B6B
+:107B9000B685AC77D80D45620661B383F0C5006B3E
+:107BA000229FF46A430B4239561D6FE62991212B1F
+:107BB000750A146AE2E6DF7B36DE8E95F06D2706E5
+:107BC0005978716DA299852D6EF7F621676CF8F8DA
+:107BD000310947674BF3FEBAF3DB5240B0E4B37EA2
+:107BE00018A150AFBD2E84959DCD9611EB6E0E9BC6
+:107BF000790F9BA45CD0A11E494A3B575CC88FC338
+:107C0000965E0F4F9D1803ECFF5785ADA0D32881DA
+:107C1000395CE6DC6FD66AB32E56EFD46F03B444FA
+:107C20009872C95F09B98BDC5EB22C6266B5A62872
+:107C3000CED1E4749E5464CCC15C1668C056BF5269
+:107C40004DB031758FFAF1CD915BE7667E15F6D7B1
+:107C5000881D625BECD4E4DDF779C5092B2B5A5FF4
+:107C6000E475684FE090FCA1FF1EDD2269A1478307
+:107C7000434703D82F1804D6ED5246F34EA109FB13
+:107C800075B0D6CB4F3984369931558F5EC1392ABC
+:107C900016B0F55EBEDA81FA7D69A06C16A7A7035F
+:107CA0007856114CA456D186E2C174731E9F0F53AF
+:107CB000D8A60F402F836DC99E07C21552C08B18DE
+:107CC0002352BA889E03EFB4CC127F85A96FD5A842
+:107CD000F7403009093059599EAD1115B3088DDAB6
+:107CE000549E850BBA5A3830AEFC59C02E9DBFC584
+:107CF00009934A4EC7DFD9903B81C12899305A5326
+:107D0000D83CC35C1DFA6EF9D4B702914843873161
+:107D1000BE8FF8ABFEFDBC2CCD3B189C2DE6E4934A
+:107D20008B2A20A00245D3CE66CE5939A825C7CDCF
+:107D30000CF61A218405762E485A24F8E1F8E24C14
+:107D4000DA31BC4F7338F6F64970B4EBDE1522A079
+:107D5000CAE13F1AFF90F5469F94E8528EA643363B
+:107D6000F704983E7514C679C2BAFA3564CC66F346
+:107D70000AE08D583C8F1E77CDA9E38D46E3CE48AF
+:107D8000A84A2115115431D5A22D70576021F55400
+:107D900004EED60325DB7D280CF787A1B80E05DF9E
+:107DA0009291FCCDD1479367B8A6FAA000882167CD
+:107DB000A768E2D2801CF118C780BA05E2E9A421C5
+:107DC000CEF2EDECA07F760BFA016FC30D52D4DB3F
+:107DD0002ECDDF2DB35479D344EAEC97D679BEEBA0
+:107DE0005E35A7C73BE8FD611742B85F991AB03C02
+:107DF00014C12092CE630DAC2FAEFDDD6FBF74FABF
+:107E0000AEA8EBDB39D4E3B2C81B4360E7B08CB05B
+:107E1000E4C211A42FD702CB6DB8EB25A27A183B90
+:107E2000D3A583BE266954897D94477B02C4E7A00D
+:107E3000EBA7E0B7F55B9E4BC535A686B97C8D52A6
+:107E4000C3B29B72055FEDCBD59F34298C32B98DBF
+:107E50005622C7646D9F827890F975706BA8807206
+:107E6000D5C364A46BB7EB6F7E2CB2DA838C3E95DE
+:107E70003B60968A2242ED7C8D79E11275E8058A95
+:107E80008BBD15638FF8A28185D6EC2B65C95ED9B1
+:107E900003FFC0E046AC5F1F2159096789EA3756E6
+:107EA000C3690FD6A63DD6941E4CAA7ED43CD02BD7
+:107EB000B551482FEDA59B911A9F3861BD6352467D
+:107EC000D3DB7593663B620DE5D149B56F1AC1C529
+:107ED000D6F02AEFEA9A0B7CCA736E9FA143A742A1
+:107EE0004ED0703F1FE7DB3F6B3D19C68CC272F26C
+:107EF000B4AF6ABEED6142A7D6F1F324E81017C40F
+:107F000022B76790F33F584F3E9019E2AFEC70FDF7
+:107F10005C31A4485854F9ED9DFF00E750947E5819
+:107F2000F5DF154A101BA9BA2444D78383DB4DC95A
+:107F300023906966FB9B0985A4C7DD8EDC582697D4
+:107F400041978E9477EA0D7BDB38B22690B9010217
+:107F5000B9FB79F21A0B391A9EBCE48DC88BA03696
+:107F6000F638DCB9C053ED48F5F43D10440AEB8116
+:107F7000C1572DD923C48133DA53CE9AF969E09DD4
+:107F80008C366FC5752D4B404763420EB7ACAD853F
+:107F900001834453AAF2803CF40843D44039948CC2
+:107FA00092AAE9D02371544A3838B2F75E5C7EC792
+:107FB0003B369E4C45568FAD6436B4A22FC76C51EC
+:107FC000CC976DE209F27E87DAE7F8E93F88DAC1FB
+:107FD000B56DF9B79A566C8F7031698F474C9758C9
+:107FE0000899E71BC8EE6D967A14714B1337E04D74
+:107FF0000EAF209F87A0A658DF05A937043E47256E
+:108000000AF06E9E13D9F6DC787195C40EAB2C176E
+:10801000CE454B73955B9656B952AF58A5EF28CA1B
+:1080200066EE5E50D7575FEC9F9E17ABA2B44BF93C
+:10803000707FC031E39FB1AE80520794173DC254A8
+:1080400087190F971B936DD4C4CB4F85E39DD5CE75
+:10805000FE7955C56E0A54396DD7C93A5A9E9FDDCF
+:10806000D1B7A55B4B5F50AF9506BC6621CA85CEE4
+:1080700090E1001C983008C37FEC00EEF2D8F416B3
+:108080002CE64C76752D8E90521908D269A64C9527
+:108090004C0C47394DD04BD3041FEF5ACB623FEC09
+:1080A000FEB45BEFC3989B3E6768D455D80DC39F61
+:1080B0008700C9C2DBC18B5522E938E322F991BCA4
+:1080C00004F4285AA3E8CDC62213DDE0C2E2B5DAF3
+:1080D0004FB67EC7A9FDFCD0D573BD03A4B6E94455
+:1080E00005BCECBD9EDC348AA3D85AF0ACAE1F9A16
+:1080F0001A8E1914AE83CCABF1015EE9B9F08F355D
+:1081000082B46B67D5E26AD465728EB0CF84CC3D01
+:10811000D06918F0928FD156123DEB2BB72B59B284
+:10812000FC6442E1301838EFAA5B39A0ECCE306D28
+:1081300087E54C4C45B9413DEB22086C8A84D75EFB
+:108140003BC8E1223B1469CE3F4C5890B03CE8FB61
+:108150001373FFDF8AAB30B6704402CAEE895F3614
+:10816000E1D8FFCE8B1C16486AA8ACE1D965764FE2
+:10817000D1279B53A0CA603AD4207B120594A4ADAA
+:10818000DBE84AFB7F6EBF2D478AB15EDA50E89B81
+:10819000522879A7451CC3B813A8BF39A8C6C67012
+:1081A000FE47C6630386CD2725A5C455B4D0C7E4D2
+:1081B000EAC1FAC95B51438319455BD1AC2100A4E4
+:1081C000617A9DB37E46A15027D0DA4ABC9922D865
+:1081D000E44A8F4AFC57502FBAB1AC52D112110A5F
+:1081E000A6055B12C8F4F77986C6030D0E52842DDE
+:1081F000202304F9E26529B777855A5CF7D3D13596
+:10820000F89DA24B828C7AD58B511A35C017FF2E60
+:10821000707521DC7DB7658B5DCDB82AAD7EFA0027
+:10822000E8CFB5CECB0DD78B76EFB39CC6ADC44FA0
+:108230001940E91D0969B9C9C52C5CBA7A18475CAF
+:10824000B4943CCA5F4B02FB1F07B2E0576F88E84B
+:10825000DD9871878D603A85817F586099041D0192
+:1082600048154C709573692C4957871BB475D04AD3
+:108270009F85D64017D4C437C638F193D6DF106433
+:108280001D47D39B56B64F50A556EF20280859429C
+:1082900038B4BBF78221B2AA55435DEE4AE8F52F08
+:1082A0003671015A067853EBB0C016C00AEDA1F43E
+:1082B000CF69999338ED1FFF25ACFE3D3FF3822037
+:1082C000FFE628CDA131517AEBD1219F21E5A857B6
+:1082D000103BF9A803492116ED576BB6E95C1BD199
+:1082E0007029EB7D9E7FBC1D80C7DF78BD8CDBE3F2
+:1082F000B8C4F3A09C610EB0679A5B28CDA8974ADA
+:108300004625B0BFF7EAD6D0C86CA1A8E0703332DA
+:1083100057833126C55EA7A61C75918706A9A5823D
+:108320006C716147475B7B46611BC5B25948263E6D
+:10833000B3F91305D625D0A38AFD2D7523A8E540F2
+:10834000C9DFAD50D97AC424F64DA5D93902BC573E
+:10835000A46FCCAE8FC11F70993D1183BBECF0C6EA
+:108360009B9B41949C0D349B292F7F937CABC02B0E
+:108370001CBF9BCABCF9F3C163470A8EF30457AC18
+:108380007B649829E99812310D960A223731331A05
+:10839000B9CCC1697B89624C9B8D966FF236F40231
+:1083A000E4A00259916916EB62090D10875A4367E0
+:1083B000049E054C54B5658563A22A4842DAE0E77D
+:1083C000D3EFF94E3C73DA2A38C909400E5C19EF35
+:1083D00056EA79FF1B3987474B6A9880B948EFC541
+:1083E000D6C108FA69E606308CD1F684AE3EF5E2D5
+:1083F0003BD713080940290511FB843C983F91772E
+:1084000006A51AB5FDA23587B49194CD15532ACD92
+:10841000996F176B6566B3C78A0D8AA90DD582F36C
+:10842000C8E6040F49AC691D7F42037DFD4F0AA0D9
+:10843000C3C30ED91762A298E365A9B007E4F92B6C
+:1084400025AE34AF0652EF709D00E1E9D9F26257D4
+:10845000FEB404D1182520AEFA79C8BFE424E0EFB9
+:1084600081852B627ABBB0D0D8490607E1290D710E
+:1084700098CD361F6D58F57D47D115A46533D28C44
+:10848000C45D970DA55DB213047B86D55C5CD9EE07
+:10849000163869E51FAD1CE975B22ABBD6DECD0FD3
+:1084A0006C05AACABDA4BA740450137E76FCD8F138
+:1084B00088F7ABD33BF7D6B5C3CE2BFED2A99C171A
+:1084C0003103171D276EE96C01FDAEBECB88902AE3
+:1084D000C91C1271871B47617EBF7E3EA71BBE94DD
+:1084E000676E47D8D1ED2B5FED0B076AC68536A1C5
+:1084F000024ED3A04F1F48B3A5322022EE2F019D7C
+:108500007DC1DE3340C54A8DCD29A4CD1FC6955906
+:10851000E11C8CB58FF6F749874DD95F4F3E995ACC
+:10852000D53C1135392C71EC29F96ED4FBE3AA3313
+:10853000E98541261045276C1284608E6B8E8B0472
+:10854000C574EC2A6A2B2D4C4E85A81F815CB36440
+:10855000E57CC1181E87E4709691AA43CE8E7058B0
+:1085600050B80BC41280E17F4D306C5D7C8FCAC95E
+:108570006686300515E7E932AA9BA563A3E7A1D477
+:10858000225662B2BA7C9B1092E06EF9F7E164D693
+:10859000C55B96061BBEE8E90494B0F3B1EB90B05E
+:1085A000A69DE96BF4145704E880F6C60818774FC7
+:1085B000754B8E2A8D4AD5E783C47437A9BAFAE77A
+:1085C0008E5969E5C956FA408A452FFADBA42DF089
+:1085D0001A5EC9C332AF519CA2D9CF22FA610CA353
+:1085E0002FD7F176932DE9D55F618E5FB1FF655886
+:1085F000882D7A2A08F0EF947B8C9A8501E6CD00CD
+:10860000A9295213C41A183C700EF0B7FB85C8157F
+:10861000D210559DA7E503431E8DEBE524F2398466
+:108620005A3F6138F4FD69118C660726406A81F66D
+:108630001BB268B5F5B56B12ED82116DBC890EDA0F
+:108640002FB84A4CB6BBF1D2DF117FCC9EA8A2E670
+:108650007F8DA1B5F3BE5795269ED78181056EEF1C
+:10866000C8C386878C5DAD71380A21F4AC574E893A
+:10867000B2A075FA183E7EF370CBE17FCFEF4C0CC1
+:10868000A3247822B306D1ADB30B71636C0E3620F0
+:10869000A4551E3A2710F4C9354B3006755AFD63B0
+:1086A00076172AB1445A8C64F164FB9D74FD133B28
+:1086B000CD4C9C6E4F7482B1A75F1C372D79A0E41E
+:1086C000F8E125B694B238D670BC93B0C00498A136
+:1086D000C822F82834DA4BC7001E7057F9CCAD4ACF
+:1086E0002DB581D6D184353D93FED78B53D89C626E
+:1086F00098BA380D430710DF8ADCD76D0DA40D1032
+:108700000CC56EDE3DB33E02302F37516ACB60930D
+:1087100099B30DF66B56BACCFCA3FE000579ACAD4F
+:10872000F6D6AD1F6A4AE73EDBE18B6A3703A4A2A7
+:108730009105A84790A9818796440A6C4AD9022DD1
+:10874000DA59E0D1036B9A043E4F12C46EBBD529AF
+:10875000472D01EF144E56EA3474EB7FBDBF4BE654
+:10876000FCA597113D16A737AB3848F07A50C87969
+:10877000796B68572CB1D4719A7459328E924A3AF7
+:108780008CF06D320CE6EA144DB9B3A94C038B1C86
+:10879000B90B8EF98A143C4CC00BDAD95CFBDDDED8
+:1087A00053EB47E56A0B19AB03461BDB52D7A66FA9
+:1087B0009BBD36211A6B0DE8FA3FB4A487D09C0804
+:1087C0000907D0044310AD4954E7123BBAEB2EC55C
+:1087D0005DE8D2794C1E4E5F99FA2C9C5B6944BBD4
+:1087E0006933F096EA5B83F662F931B99FB4CAAE99
+:1087F000EB2F6A3C91DB2A4B943F22CF188C9F9E33
+:10880000CEFCB410939FEFD09DD0BB3971F1BF71F6
+:10881000A55F09CAD0017EAC3712E8C14338BAF36C
+:10882000A6F857C7ED89B3C9DBC4F47EDFEE37CDB8
+:10883000123C3D5325F797687E3E09AB033F6F33EB
+:10884000F045F4033F3A4D533AB2DB8AEC5A02E862
+:10885000617D483C71F850AE07073AA3801BE07C6D
+:10886000DD0038C1015EF30D7E8188FF57343D2B5A
+:10887000FA26ACC2314CDD774F0CABFE7476ABE11F
+:1088800090AC17755E5CFE70AE564401E906B911F6
+:10889000468F7A21C1AD7348EB0F11E267F3A4252F
+:1088A00048324D771AA356F25F3DE27B58104BA435
+:1088B0008CB81EF2F2BDD6B9F4686378B8ADF7B8DB
+:1088C0007432D6C855328DD8C02C525999740F06BF
+:1088D0009EBF8D2986A4A8FEDA7E8E59132913F334
+:1088E000E27FA866FD9F9A50A66800EFC97BA37D32
+:1088F000740CA8E5B349A2152AB4651B832635324A
+:10890000D8104CF5BA66887B80161CEA6F80E0466A
+:10891000D604B84868C5D5F059DEA41FD2AB9D3740
+:108920007C0A818B95426AC39C2EC3E4D127C8215F
+:10893000D61538ADE637D20B65267F624C1A4A60F1
+:108940005A6A7F3F46CEBBEDA6CCFB44991B0881FB
+:108950003190F4E9448FF14EC9C528500C05131C21
+:10896000A1DFCC3D1FEB8602E5D9E686EFA6CCC0A1
+:10897000F3A4DF861ABD6808F29B161041514C41E2
+:108980009B2A2747058CF3EEC6D47C06BEC50A7227
+:10899000ACA77DBF9E01EA0130B1093D2A2B2474AA
+:1089A00008E3A9D1118D1775B60BF5231129D5CE82
+:1089B000DC25D8834433A757398201BD5389E6713A
+:1089C000D3CFA05F634A88922F864590455D22876A
+:1089D000F8A9F6F0B849AB7DC386DBB9AF6781C3B0
+:1089E000020C281801F885B8637C8E981C196FED6D
+:1089F000FE388D38F2C78C25D38DA040167D522FBE
+:108A0000570643360F7F0AE7BC7352D883325FA202
+:108A1000226CDB87ACC4DE711E55390522CEC377CC
+:108A20007D609B740A32C89081F20A929604E1AC90
+:108A30005ECAC34802BF2EA3BEA49355C48DF814CA
+:108A4000CF41D8DAABF690C5AAACF1338AF46852BC
+:108A50003D21C02377808A57DFBED46615CDF7232A
+:108A600052EFD1C4B17460100D3C39A3E4C2AE28FA
+:108A700005BD7C02809B44D86F9719C53822292CEC
+:108A8000B7FE566D437B73E7623339B3F77A3E4ADC
+:108A9000DFA917BD52ABF00870B1A0493DD1441415
+:108AA0000134B700E43841B4BACA5CA7E6D7AC5980
+:108AB000F0B8182C741D7ECCF6C0CF2CCF8CE12BD7
+:108AC00067CCEC3DDE6E72E44BFDCCFC78F1CD66FC
+:108AD0000605B73ACB9C8B6438777BA19ADCCFB183
+:108AE0002FDE552891FF408081A0900B1E154EE08F
+:108AF000579F447784395A4F8DAD1CD05FB247E7FA
+:108B0000175E8E216A9CF0A7A6466F7319DAC3859B
+:108B10002CB9C5871A9F07721E018EE93BBBD3286B
+:108B20005074A820F36A9BD008CD71072393653554
+:108B3000B1855BA3BB9A6710379F7F5E0840465F95
+:108B400047A942278C5676C9CEA2B594B019A798EA
+:108B500024518A2BE47A6F9F9D8619ACD5E4735D0E
+:108B60000EF8A21ECDD79443F9E12F2E53B3241350
+:108B700071B3613FA7E0ADFC54E866022E6A23C4DE
+:108B80002507BA91FC788FC319BE8CB99F676DE930
+:108B9000F3ACAA684E06F1F753AF0C907925301F5D
+:108BA0002B43F3179AE1654228C5B8399DF5D78F55
+:108BB000B756A21DEA5A94EFA4BCA65B9AF8B90C6A
+:108BC000DA20DB9D84B4243E4ECB28DD2C9AE19440
+:108BD000FF43C4F2B900B8791C933D341BDA8173AA
+:108BE0004ACBA73360A134228F7CA6FBC84E7347C3
+:108BF000F3CEF598C7E2477B3D8DB84B74D6503F16
+:108C0000DF4560C0CB219DDF760A70EFD4CC4F41A9
+:108C10000AE855A79C2F631BAFB4E9E7EF53271A67
+:108C2000FC0746124BAF8273BF84C4BB7EB2F3898C
+:108C3000CA390119613BC106557292CD37877286D8
+:108C4000707ABF987DDBCEFF1A6009E1FDAC014967
+:108C50008FA7E730BBD9F6010948006302386207E5
+:108C60003697659E8065DB5A2EE7016BA952360A5E
+:108C700013EDCCBEF7323B117071C7CEE0A7FF8673
+:108C80007F0CDF29D8CA2DEDDCCF1A077C35A88CE4
+:108C9000F90793D4347C6DE12D54CF0CBDE7D45843
+:108CA000E86408F6A4ABE9C2CE23F9AC52F9CFE6EA
+:108CB000D23A7BFD010ACE092F4AC4CEFC59B53EFB
+:108CC00056130334F32AF0D3CAD5FFCBA62D1F7752
+:108CD000D54236499AB64383F012FE2C401172B643
+:108CE0006B65354883356F18100754EF6C6122941B
+:108CF00074D22235EADCE447FB474CB3D40534B3E5
+:108D00009271D30CB90897A27390097F9A16F53423
+:108D100043532A7F8D3709D911E960A9629098736E
+:108D2000C594BA4F085576B41F3D53286EE02C50B9
+:108D300028174A5C9BA23CD9DD0A4A58BB482195BA
+:108D4000E71DCF0C4CAB206F2FCBF6852528137C6D
+:108D5000225689CFA8DCB496909302A71763B88EE9
+:108D60005D0CDF0175DBF1B5DA4F809D60F2A87E06
+:108D7000A017D791E9673DA7ED949D6BA7CF39BFA9
+:108D80008B0A1D485DE663F8BFF40A40216BB59677
+:108D900071AD9564D6EECC0C3358073FEAB5214946
+:108DA00097D2EC864856416A5764A6A1D0C2ACC09F
+:108DB000560A955F92B192C1D6CFEDE460BB5CBA22
+:108DC0000EB6390D3F7538C6CE687E8659156B597B
+:108DD000CD226E6E2383C76CECB7E4E294402A2761
+:108DE0005BFA61794BA22C85C4EEF9B3890402B910
+:108DF000F7083F70A01F8271B9ED9A31887E59E85B
+:108E000035BB2FEF8E1484A5A3FE251164CF158EDC
+:108E10000B23269ED493F80261A8F52B75161B9F91
+:108E20009AFC3FBD4AC205A4DF6C86315D558DFCBE
+:108E3000188D20340489BFFB0C3BEC5F48D63F867D
+:108E4000529B85157AE51C973E5FD0D00DB4294A18
+:108E500021C2DEDAE84A0E1F1224FB7558FDB42643
+:108E6000557ACBBF3EC1BDCA5ED7843384F08A2D0C
+:108E70006509D537245784B511FF845F9BB8729B71
+:108E80008C9CC7F5790D270881468B26D23954442E
+:108E9000C8739526168EE110025B2631D715EC0DAE
+:108EA0006E1C8C51F150EE28261DA0B1B6813C9667
+:108EB0004E4AAC05D8EBD112651A49147C5E760B8C
+:108EC0009CBDA15E05083B10AD06D41F045E23DFE8
+:108ED000B5928E5F86AC174BE62FAF564D0F67519C
+:108EE000C4EA8D997C1F8F7572235CFF42B1BC660A
+:108EF000B14F916F9C3D7D9EBC9F4439F20982ED3C
+:108F000050644A5FB9CF68C8D7A16755783105402A
+:108F1000E8912F3B7E8212C9C9BC1E8DEE0DA7BF02
+:108F20007EFDB46955A5451F19EC95F4170913E0AA
+:108F30006C8988B5F7E7D70DBF624EED9C508DA3C5
+:108F40004102A36FF06479E1B1CA4581352CFB720F
+:108F5000959D1D8C40BBD850D916ED201A72950FE7
+:108F600092EBE395B8B35AE419F323276CF1137A23
+:108F70005D5D68A8D27DAC6B1DC014492A1DBEC7BB
+:108F80004F9BB5D0D1D57891944016FDDEF49F511A
+:108F9000711835FA8492849CBB06747CAF244F9D73
+:108FA000867F5FA6754229089399DCCC289DAD5D2C
+:108FB0004B18F750FA947B34E0790C9417A7804A49
+:108FC000CA3FD1DFE3E37D10505879B419F72A9DE9
+:108FD000B56196452D30F08680F0FBF922F04161B5
+:108FE000807C8EA3F9084C14C0F5CD0291FEC559C2
+:108FF000F2E54FFA1F886D9D07012B09013491E3BB
+:1090000093B64B03B3DFBB734AD3C851011A8F3BEE
+:10901000AE2E24C4596616CC840F4082EC25E37D25
+:109020006DB582DAAF639A35F2B34010C22D4A3182
+:109030009677CDB1F1DA447F690B0261636F8039B5
+:10904000044F2350CE09E7C4E3144605ECBBE59A70
+:10905000256B375CF4F1DFBFA997EC01BAF66D63BD
+:109060004CBF56D6811DEDD0BE43DB9F1F3FB6C817
+:10907000E4FC9ECE1E00CCC7FC6E3B820CC5D470B7
+:1090800087ED8D443C42E3BA3CF49B3AB5057E74CF
+:10909000D3EEB37449252627EF65D813E40B0749AF
+:1090A000AE2E9890DBEBA4E6DB325BBF1A65B4A56D
+:1090B0006E601F6C0B1740BCFA636E4905695BE379
+:1090C0003B73D756121C925DC5E59FE2FA966096F7
+:1090D000F666C14831C19DFB6C39B21460B219E625
+:1090E0007F52DD7D7BC90C17CC1FF426B5691D5658
+:1090F0005B720D0D717F7352E474AF7F19C010174E
+:109100009FA3DE590349644682457D93E6C53B55DE
+:109110004D31CE3EFE92D826A611F726495D4D036D
+:109120001A2926FA240E8BDA281B99EDE43D924A7F
+:109130006DADCACE79364239F42C50C29F127734C5
+:10914000CE0800FFCD861EF82EE1011EAC2C87163E
+:109150006BEF3F935029DF11B80038F98A6EAE7C6F
+:1091600083E22F292CA0428F4C6B696B2F47AFBA3B
+:10917000042385AE4F6B7464E28656F119FB6D24AF
+:10918000577CC0F93101F04898D238B98EA7CC4C41
+:1091900066CDF2DC9B02207A9DE3AFBD5B1E96CAD2
+:1091A000DADD442A076E3FC1A28788D3D1EB1A8546
+:1091B000F8E70F2E37A2FE89C5D08FEA8D60962B77
+:1091C0009769D0F9C28ED14155D22506172C66F485
+:1091D000F9117372162E7B5F4BBFCDAA62CB2D386F
+:1091E0006E90A472701E9447DAA2BA70C1DB18ACFC
+:1091F000CA88D64991CC344A0CC2D00D6ABB4F1FE5
+:10920000D8A06DDC6577C3273F171E290DC769DE1F
+:109210000568F72F7B3FBB76B0D6910A1396BE80C8
+:10922000227C01400E8ACC1541A46C475428882129
+:1092300032C044994C7532712042C63C91009C2D3D
+:109240000E5926142A6C9706F0FA121A2245CFB14D
+:1092500008EFA7E03DDD82E063DF92A5230AE1B1DC
+:1092600002304AD48D0A0E29332B5ACF1227751398
+:1092700022FAD8E4048822C8F6E1BB1BF30061FBA4
+:10928000E78C5670DB00ED5955B3C444A8D9387843
+:10929000E95FF57ECE78B71471448D324AFCF94609
+:1092A000BF8319E211006916FB1816AAB33D843D6D
+:1092B000F56CD97BDA93C7326DBA3257D11F11C81A
+:1092C000E00BA9FC43938A473FC3CD41B3CD2E5653
+:1092D000D729BA81BBF985275925DA9F2C4E629E82
+:1092E000A996031E5F520BF08428C9F564B1715C26
+:1092F000A9F4E0D1E69546499EFE00D73C8D47B5DE
+:1093000045F85CFB8081BF9D7A4DE364921B9A2FE8
+:10931000A98AECF6C1B940184E117888BDC9ADF4E0
+:109320002B9069A6545371050AB8F4586207562C5D
+:1093300010527341132A1DD9A4DB386F8EE07C8A4A
+:109340009DC4064E945706D2333EFB65EC1A0A4A7A
+:109350006ED3A11F6F8EB9F882D59586A8240D55BE
+:109360006751B1045CFDED26885F2B1407069A480F
+:109370001B7ADFC8A0956DC77F9AF569EC4DE1DFD8
+:10938000F3F406253EC759597BD2195198453FB190
+:1093900047807DB2C93C037C90AF119A9DEF86B99E
+:1093A0002163E805AFDA8B2F27B0338169A6C86245
+:1093B0003CF5BC8174853F27DA66537B16356A23FA
+:1093C0007EB1217FD50C75EF52C09582EA1C7E9646
+:1093D00067D31DF06AAC837E427C1ACD4455781861
+:1093E000098A126AD22B1E3DADE2CCE2153CB9B619
+:1093F00024C4D3A7AB29B1998877550BCF8742A254
+:10940000B1FC0BD4A610F1F7EB70C40FF26B89140A
+:1094100066AF1CF1A442CC27826CA8023942F70D3A
+:10942000AB900A56AE9D0CE8F1BF2E82DFBD115203
+:10943000CF1EA0300FDAAC2ADAA33D82DE7A4B1FB2
+:109440005CC926ED29055AB44218E5370E4CC59B78
+:10945000CEFEECE14E2EC16E6CF5BC2649AA12BAC6
+:109460001862042F1D159C0D84B4A753A42BDE6332
+:1094700020E67B3B6202DCD592E6D681E3F075887C
+:1094800044AED058B5DE69EDA24415C50B3209359E
+:109490002DAA898D6255ED287F1B81DC29435F5FF2
+:1094A000AFB69A1AFDA9532DBC53FFF221CC551F1C
+:1094B0005D17AAA718606424076F485149C3083C88
+:1094C000D3129425D8AF9BF67FF29CF346D7B1C94F
+:1094D000C0DBAAA50136DF0BA511D73A95F8354DAB
+:1094E000D21ED08A5058D389A7CD45B9EC688C23B9
+:1094F000AF3374ADDC06D089553947227F1157B799
+:10950000FA3C2C7CF043A2180658796E0D6C5F83F0
+:1095100098867DFC672E3B35C23BA57A4AFF26AB79
+:109520009E7128405746BFACD2D0B532B758958D02
+:109530004CD156B1032D6165785B7E31EA3A75579F
+:10954000E0FAF9C058441E18CD2EE274437C203155
+:10955000B93E66850A436F6EB087F3C1A744A3BBCB
+:10956000B43FE82FE0DD8E7A90047FC31864EA46AA
+:10957000B74E8891FEAAD620A821A16D827AFBEC75
+:10958000F368FEE34367BAA6126C23C6C28556C7CA
+:1095900087D4D8B54C1C05249B96725D43ED397178
+:1095A0004D11A4FB9DB028C78AAD5B290D10916EAB
+:1095B000906328D20B6EA383CA9A5ED30F2DBA7321
+:1095C000D84C5D6ED23ABC4C4CD20814A93321F46D
+:1095D000348155E154267942B3B8F0AEA8970238E9
+:1095E0002F1E472A3A214A7B8672CD93C8D7BC9357
+:1095F000BB770690917547EBA8BE6A0736E56861B0
+:109600001369FAB88A6145DD13D22C128EE2F93360
+:109610006F7B8098B9A97889A67DDE617AC4984964
+:109620009E80138E036E561207F7CEA245FD80076B
+:10963000BA9E3F818ED999FB63D6633CBEAC8A8FBC
+:10964000A18B11C84CEAD07DA20F63EB882B733439
+:10965000A64C112F7A59978C804BB132FF1586F9A1
+:1096600079AD760D27FA0F0C98D239ED0FAEC11FE8
+:10967000F5B6E98A9844DD04E95F006EDA04E56A2C
+:10968000C06B9462C65397150A4C74FA778208F33C
+:10969000D7DAB71921CCD0CD8932787CEBCE05FC56
+:1096A000CA313761A070822F0B5547554E89D7427A
+:1096B00070D127A656542E6991D1458D22C2B25140
+:1096C0004BFEE488D505500AECE16FD4EE303B6FD9
+:1096D0001F12E2509F2E782A695941F4AABB4FFA13
+:1096E00046DA2306FBC3FD6F843BEB11235123E4D1
+:1096F000A3407609683546EAE62A14635A6652E3BF
+:10970000C6252D2165BC63A07D85024E2A8FF331CD
+:10971000B975591F9148265F5403005E2C4F7A6C2F
+:10972000D74461B4D8488D6AB1B63C525BD3668BDE
+:10973000C0BCF49D913C049BC0350A69973C66858A
+:1097400033BFF94DD273707DDA045D60ECF64EC420
+:10975000D07173C8164E3A035C77EF218CA8EF7D69
+:1097600020C247457BB2BB924FAD2A702C87D59261
+:1097700033EE6FD208FD196A6B332ACE16BE3EA3B4
+:10978000E5488FAF79695B486A6C8BB42C744E35B1
+:10979000CBC8645AEA166B727A1D936716F581E698
+:1097A00065B6AF8C0448915EB439066FE88FDC80F3
+:1097B0000136F0A8E9E75B9D6D16EFEDC0E93C8846
+:1097C000BA4C0C1BE11028CA80F9E1B6BE8B6E853D
+:1097D000C6DF2016E70EBEF22AF0DFE169A7EF131D
+:1097E0008EF066C583CFE4BA9993BCC29E215327FD
+:1097F000A8C6205D52E9E674922D803228B1B1CB23
+:1098000010E3DD6962C9E6B694A23B7B34F2964868
+:109810000AD4F2B90A83C8050846BD18E9EB7E519F
+:1098200081130526D06155276165ABAB120A8A0BFF
+:10983000E0F7A9E151888A0A8022C8F617EC79F886
+:1098400077304BB54C579DC569DD1C66969722B1A4
+:10985000B71B56310CE12283B93BB6D4B41C815AF4
+:10986000D59F07BF336623E0F27F724B054DE2EBD5
+:10987000DA8DE868B91DAE5B9ACCE732FA4832A4BB
+:10988000243B8F0211C42EE679F60639FDFC3F29F0
+:1098900085CEA24C3A0C7E4B49B0C451770E4D7523
+:1098A000DAB48BB3A0FDAD797E53F7A18D190E5EAE
+:1098B000DB3708005867E2C1DD84F9C32339D7D804
+:1098C000F3E5F9CB4A4381987B9639990A59386276
+:1098D000905463BE8836B52534162EA4A8DA1F0727
+:1098E000113C1D1621CF387A64FAD6DA4A5399E131
+:1098F0000228508ABAF04E24807CF715F54BFB966F
+:1099000073A491EC41838768D62BF2BBA11B0D0792
+:1099100054D0B0ACA4D10A82277011E858DB9D2046
+:10992000A227F8956D18ABEB2C76F557E1966CA451
+:10993000F90C008C5A05BEFEF363BFF361AE6E52A4
+:109940004F291C1B9E439D4A0D0736F3780C325657
+:109950008D4DAAEFAD48F5F3AABB3F9CA8686306FE
+:1099600029218B52649ED4D3A44FC986F608A0EC5B
+:10997000725A37296E92062D30C445026D5B0A700B
+:1099800047B978517EF2D56633C5489860A4620B1A
+:10999000275796D5DF4D25A6DEA5D13C4744CAE81A
+:1099A000C3641B9FB5E3E34B47BB35A7D7D8DD0E98
+:1099B0003DDADD32F7AD5F6B18C7D0E593979AF9C2
+:1099C000965467BB6D3B779D70072FC5561CB02121
+:1099D00061A87872AEC24DA2EEB0212209A71D5631
+:1099E000A6A438CB8AA08586A26828803BB0E098E0
+:1099F0002C58693A2F6805341E61A69242C3F7FBC2
+:109A00003BBD482824AE59C786095321729AFFE30B
+:109A100029DD248474740FC2E48E0660BFF77F636F
+:109A2000D048E8436E70F341ED7D27CEEF8D2D8752
+:109A300067D5D738B45B588B18228BE7DBBFB8C12A
+:109A40004FC90ACA7F0594BE226427661F5367DD8B
+:109A500035239E54ECEF30D37568D1347C36BA860A
+:109A60002911DE34D4813394D0ED3DE629566E5071
+:109A7000179CE059DC702ED64BD43375C53F94FC4F
+:109A8000BD338516224AC89A242CADCF563090BEDD
+:109A9000794D2255FD810A6EECD3501F5ED7E2A1AD
+:109AA00072B07566455EF1E9855CD17DCD1D6E6253
+:109AB0006B2730D0C1DFCAF75AAAC6B86198F8F050
+:109AC000FF8AB17E4319CFB79518D287F31F03568B
+:109AD0007DBCD597C7CEA47297492F864262CD2709
+:109AE0007DC9005E3FDC74AE8CEB135E17675AD8FD
+:109AF0001D1FE26FD217FF5460DC519A4231A367F9
+:109B00006DF6610558A21F0A468263647146D8B596
+:109B1000F5E46D1ADEEDEBA5394E00A7A9824B6F77
+:109B20001E7C25B893C232FA9CCFD2493333722EB1
+:109B3000C723F4FB4C6C41E09ECA494C5F0653B40A
+:109B40003828CA56F0719F398874CB34F034B58701
+:109B5000FBB58148CBD96DDF1963893C62F6586348
+:109B60004D9B083DD6DAAA632F953B7B9A17C90B0C
+:109B70000C27CED608D782B28E815FF606191F6FEA
+:109B80009EFFC1A4752130735A2E68BB4FF9B9E509
+:109B9000667D5FB0B831E1A089501EA86242D5321F
+:109BA000BD9A19E530C690221641C2F360FA53AE51
+:109BB000694923BF6549D4C130105834F3F0B2C9A4
+:109BC0003C18B3E366C4C387B302A7F6BF520FF0D5
+:109BD000AE2966842EB3A155732A1E63D17F9DBF23
+:109BE000C7A102D9BA73DF8D13FAD402536C150AD8
+:109BF0006DF2689D2BE10112E0FD7D9619D3A81747
+:109C00004168B217869030E8D7770EEE14F8FCCB97
+:109C10006FFA5B8C5C3B551D701E5D815DC9D0F891
+:109C20009ADF4F12597109C65CDD74AAAB5F814699
+:109C300035E6AE932042E02E60F81840A758CA08D7
+:109C40009024C6D8E8B5C9ED1403E2051A032240F2
+:109C50005029177E5A2744175B9F11FB0CDD6B9F21
+:109C6000F651FD03D6154C3A910707CF48040DC8AD
+:109C700093AEFE6F81E174B10FF8F7A71F72A7C60C
+:109C80002B44F62B6112E8F7F97CD5C9A9D5EBB4C2
+:109C900004AA685BE364DF5FC4EFCC876D9945710C
+:109CA000B2CCBA41AC89AFC290ACD061A80835E360
+:109CB000E40C109AB8EB2EFCD10F8A1DD0E0EE6AAE
+:109CC00011B65BCDA9F0CE1B20DD35AF31F0003CE5
+:109CD00032B867EDBA7E2288EC279BB60740B05BAE
+:109CE0001D9C1A28EF8417933A039E5E4C82226DC6
+:109CF0008E0B5F9D9D5FE277EA12CF3C795D7969BB
+:109D0000052939C6CFF38A28C782F87BD28629EA8B
+:109D1000331D430115EC4EC1CE133B2014B9D4AA18
+:109D2000778036082FF19FE6E34223B0DDEAA543B2
+:109D3000DB0859C57B1ED47618ECD7E7770121D113
+:109D4000BF96EDDD31AFF33F4DE45CDB22DB620912
+:109D50002214E69D843CD8EDA3C8370B565B8FB226
+:109D60006FEA5D4C7EF81F9045274AC3A6BE7BACC8
+:109D70008D138DBE9901748F6498444D1EFBC2A64D
+:109D8000029EF1241016120D576E5531CB521063FE
+:109D9000488589CA013D8B5BCD6888F6844B2724B2
+:109DA000453CE5D30388CDC22EBE56812B8BE241C4
+:109DB000492C074EF48F4D673390C09E20FFE8D3A7
+:109DC0005B79765F7F7779F59E7DF5567C24B1903F
+:109DD000D262306FA898D0FFCE52EF8D334AAC9C40
+:109DE0009D529A94F7CBC7C056938FD674391442BC
+:109DF0009D37941E5B68049F0A98FFCEEC1679A0ED
+:109E0000164C52D584FFE9590931FE3F2F5AA3BCA5
+:109E1000729B9FB911E22A1404BE8CF9D6F13AAABA
+:109E200064564B187E614CA3B23CC431C09BC661E2
+:109E30002334331161BBE8AFA14A6B314F7F5283AA
+:109E40007D4F64B0417AA035611F3772ED9475B2D1
+:109E5000D1D60DB1E706B80A8D18ECB761B7212F3E
+:109E6000D047309CAF95925243C7AAA59F6EB2A22D
+:109E7000BE25EDBB378302A94F6DA3D9F99001A68A
+:109E8000AD17BE6600923249ED71E56127B63236F4
+:109E9000A4FA7A9F7696729EFA48AA0E9A86C9EB21
+:109EA000770F79FFD665F7BEF2F0757156682A70A4
+:109EB00024DD7A0C4DB937CE535057C06E761CE76F
+:109EC0002EC64C910F44F102803E20D03571042AF9
+:109ED00094E7E00E07F8F9E7AC0971582D498BAB10
+:109EE00086C244336697FFDBE3C64BF0AE836D79E1
+:109EF0006A00A880A1463B8FBA550E31B8C21D42F8
+:109F00007CEFDBF18FDC62037AB1192BBED4C799E9
+:109F1000898876253DEA4364CF298A2AE1DF49FF13
+:109F2000C8506D898DC430AFE46133E6CA40AAFFE2
+:109F3000D75D8A63DB11F310B2ACF4B0F6C5D99EDD
+:109F4000690C6DBBD12D66D2FA21A1ADE3BE1D37E0
+:109F50005B8C5D3F417E71A794CBB11C783EE8538A
+:109F60000BB07DFA58C5C3C23B1946CB0302690842
+:109F7000B732562FEAB43F9F2779C0D3F3AD7C3A6E
+:109F800079F7DB4B5016C0F16ADC7DC32162C94012
+:109F90009DC0F0B75FB01F2C7BBB45D97C0A4C52EB
+:109FA0004EAC998B4B8ADFF197373A459A9AF22358
+:109FB0004A19F548D75A7C85B1AC945C6BCE2E1902
+:109FC0002263A25B756F153A32A22E8F29D10A61E6
+:109FD00090D7E508827FA44A2998056A56B51C5592
+:109FE000534354BF2393087AD9ED7B56397A2FBC5B
+:109FF0004E733D1A006F7B0C60282E588C6FF5A4B1
+:10A000001BBA3C3C3CBE750D416B905E9D848DFC43
+:10A01000B877665DE3B2DF5E5CC3934606D077A493
+:10A020003BCE602D49F42667B9D32DB3C4B29C82D0
+:10A0300030498B7772CE7935213EA20CAACABF81F6
+:10A040002DD43075E52C82587D2375DC068631A031
+:10A05000805214A4B03E9C68B827F7A8B54D4CA90F
+:10A06000AEAD80D7874656515097C5491921F209A0
+:10A07000D85A29CF8629ACB9EDCC57D5D04E5FD66A
+:10A08000481C75FD2B61FF5DC542D12F9DB3F7C103
+:10A09000691B289F8A81C42B66E7CF9247E97B75AD
+:10A0A000E0688F46FE79E96546C2E1160C8C00F146
+:10A0B0001DC6E37ABA7141F510C24243BA145A5E22
+:10A0C000252A2F5DD732394485B464C77BBF6940E8
+:10A0D00095CCE3E8E4909738EF97FBEA8E35F4945B
+:10A0E0007A66716EE0E980F30CD6D2D6600F75A562
+:10A0F000E12389CCA4296DEBDCD8C6EB5E51A431F9
+:10A100006962B3C86C8179DD3345C03087218863CB
+:10A11000FC40245C91152B196BF996872BAAD57FEF
+:10A12000F3E1DA5AAFF9A3EB15068CFB46F645C20C
+:10A13000D9B36C60C43CDA3F347BAFF0F00FE093EE
+:10A14000EA9C9C476E1FF416D9C19D22430208FE6B
+:10A15000CF98CF0654C70C1E1960FA81545C19734E
+:10A160000BB94BF5827ABE77107A5AA41AABA40CBD
+:10A170009F5D8781B5083D3C8C1C1455B1D34F0DB4
+:10A1800085073E53B49E95B76545A12904B85F6D18
+:10A1900036323F9AFE32040533F7E28AEB418AD524
+:10A1A00049B803A6074CAF6C66A779F15AB0D5A69B
+:10A1B00017DAC02A3C6DC121C546F7866AB1E3B5FE
+:10A1C0009A453163E4A1CF0164D0E0150A687B1F92
+:10A1D000209F5A2A254952DFD4E3D758B6ACBB9307
+:10A1E0004CD12C207200002C26481B94EB3F8B791D
+:10A1F000701DD6240447A518C96B669C15F28B9E6A
+:10A20000B27419627677507F4B0942E06D043B7A55
+:10A210006AF553507A3A2D5439A0E73C9C5757E0E1
+:10A220007B24BE562898BB37B1B404A34FADB4AE5F
+:10A230006F0DC4EF8C2AD765BA9C85E63585091465
+:10A2400029300760F75F12256EBB357ED89BE66C20
+:10A250002E165ABA3A33820493725F1B9400E5902B
+:10A26000BBADD14449D6F55B18CCFC5DD46C623BE8
+:10A270009BCE0C767007BA87E1A806AEFBAF345EC2
+:10A28000137C960438F71DEF61EEAA46C49103EDE6
+:10A29000407F59CA1619DC53CDAC88D8AB7B8B27CD
+:10A2A000613548C82BE92DF11299606D61CFBA80F4
+:10A2B000707AA3D30E3BDEC165E588C549AF47740C
+:10A2C0009D076370AB50FC821A1E900BCE6EA619D0
+:10A2D00064E6A3840259E9D450131995BAE4A4782A
+:10A2E0004B261D9C07DB412D80E8916A4F3B91B7BF
+:10A2F00023C4D4847983F7110BE5890D7FEE56BD15
+:10A30000F166CDC5D7CDE023C085F2A79DABC25085
+:10A3100046E67779FF0DDA796F2C0314D66E831534
+:10A3200014ADDDE29551696C47BB24517438954EEC
+:10A33000E516757703CE7575E00AED5897F7DFBB24
+:10A340004B0DA232E65C8EA3BE5791A8D2056904DC
+:10A3500038FC487EF56E657E947C292D4932421D7D
+:10A360009BC27511EADFECB0C7006A17E2E77C4ECA
+:10A370000DBFC36D8297BBF593A5586A4673710AEA
+:10A38000AD86F55CBB5C73AC4ABC8FF25E60433952
+:10A3900073035AC016A1674E8C333E4BE82A4A3FDE
+:10A3A0008DCF820668471F55F80A3DE1CD4089A848
+:10A3B00083B1D14F0DF8A87F52809965697014164A
+:10A3C00000B6C7350DDE6848D03F7714BAC5EFFA3E
+:10A3D000D0567BBC7AA46A7AA517A1DA0385540209
+:10A3E000C614624074CA31F96355B4AECC54B52A70
+:10A3F00047F496CFB983F49A94F72986E2D70A1ED8
+:10A400003E045F809A4D39ADEDCCC9952FBD7BE3FD
+:10A41000A1CE07ACFE8AC6529D1189B20ABB7C6BE5
+:10A42000E515A36C95448093B0BF0D05209E30D7F1
+:10A43000741DF43039E19CBBE34B21B703990167EC
+:10A44000329A256321FCF15BED99FCF317B4A50763
+:10A450005F1665F6C69CD66A3AF4C6527425747EB9
+:10A4600065E31DFCE12C5D1E3CE7595A66F67EC98A
+:10A470009692994FCC1902881A6ED98A7A5B2B2B47
+:10A4800032561A3DDACA3AA0EBF8895911B4B7BE70
+:10A4900094D893DFA7069B8B9971CBAD31F54861BA
+:10A4A000F6F36233B76A5C21314BEB66DFCA5619AB
+:10A4B000F924F2677610F477A00630970477482ADB
+:10A4C000A23D9704FA40F64DC29F18A0756D3486E0
+:10A4D0003BD1106BFFF32CC2FAB6CFD3DBA98E4071
+:10A4E000E26A49C9EFAD987B667BAD9CDC60B6EF54
+:10A4F0002FB949D2AEDC44A1E502A3D9EAC0F030BD
+:10A50000AAE940BA4AA2F88A268727CB6BA7C44695
+:10A51000C1D24F8E8BA63C068A14871CA171E40A17
+:10A52000539FEA2AFC52E441F85662EA3AF0FA01F3
+:10A53000598A3DA08F8D3BD791BC3203B07220BDAC
+:10A5400088DA9FB5B3AC2D32208843D97E511322CF
+:10A55000B6EEEC53E17D4D63A345F7AA0EF92C103E
+:10A560004A0AC981261B35A058AFDE5356208D6B91
+:10A57000DE41AA0B4E46704177260D00353AC24E99
+:10A5800099BB50F298EB4FA5FC06A4CA47B945BD4C
+:10A59000AEFF569394537BD78B7896D815095C28D9
+:10A5A000DD1A763E490C175376416E6236D34A86E1
+:10A5B0006259430067B75EE25E3A3DFF78FFD852CA
+:10A5C000D1CDDEC5BBC4541687020DB56C1AF57F1C
+:10A5D0003098FC8C59F233EBCB2DBB00B438DC66E1
+:10A5E000D17AEBA3FB606A059F1C3FDD7674831173
+:10A5F00015B41507AD09A65CC4A847C03DBAF0164E
+:10A60000255CEC517778FBCF17A949620AAE8666C4
+:10A6100055932C0710D3BD660B69EAACD4C7792CCF
+:10A62000EEE66106FFF006296E91344D788443779B
+:10A63000FF12BCC317FBF4D5FA000F572AC6D6B6D3
+:10A640007C9A944D376AD70D99D28E2FDFDF6F5BDE
+:10A6500017B7C6D85C3E77EA63348816A4297253CC
+:10A66000180D8A0348601B8D9EDA7B958CF3855804
+:10A67000C780F4A0E8259F9B631F1397EDF24ED788
+:10A6800074F31CD60490851D235A628DF79A6F517E
+:10A6900033D207F116EDDFBFA5C27B3239664A4DD2
+:10A6A000F3D10B26367A2291252B3465340A971183
+:10A6B000649247A9AC113F11A67FB0B0140FE00A15
+:10A6C000CDFDEF6A4F43E59CE1948E80FD4AFA246C
+:10A6D000805B56AAA9C8B66ECD59E057E69323E829
+:10A6E000C19980508AF621B6D0AE7CB393C1E1F116
+:10A6F00029E3BB29FBA84CE5ACCD3E906962067806
+:10A700000E7077EEC50FCB05FEBF49EAAFC7F9E380
+:10A710008CF24F8B067BA43765D436B2877FA7D1E6
+:10A72000F1C6E88C98D8CBBF84C7CAE85ADADBAA4E
+:10A7300054BE7BA655F70E95E37FB3B22CA9DE6E0F
+:10A7400030D9CA206EE9E19A9BF29A669560B89575
+:10A750007AF7121294A3067911543DA2836AF97410
+:10A760005374F70DC991D5DDCFFCC746586F78FEFD
+:10A77000DC60C31E28490C47CB4E5281B8F752C645
+:10A780001E87C59FE065E45F7D9581F7FA1637BEA9
+:10A79000123669E45E70A37ACF364FBC5FB91948B0
+:10A7A000B30EC15C9E93BEFBFDD2259AE59F71134B
+:10A7B000339AE6605514E7C167982B3A4E67DB572A
+:10A7C0003E547F681981443563D5BD389E4CEED820
+:10A7D0003BA02B26584E59E66D37C43469FEF1670D
+:10A7E000DC784DB38F6DB9588CCEAC88AB036784E1
+:10A7F0007CBD9B41C1DA8D3062D82E689BE99CF10B
+:10A800004290F2BFB3265376E616BC788436D36600
+:10A810004E3397B32958C382772254D1A397989087
+:10A820007607A9CAEDDB751DBD05A04BA9C961FD61
+:10A83000C569BCA57687DF2B595CFC7A74A0EABF9A
+:10A84000F3A7E490A320F69BF7B6955587E065B093
+:10A850004C77EADA2D34FE421185B4F61CEAB314C3
+:10A86000A7530EA51FBCC948164546804034D641A3
+:10A870003BCB3A8A3509D81434E864F86A38880A38
+:10A88000D935833732C51117E9651BF88AC974DBDE
+:10A89000536C0CF9D2454A4F922074568E60C97998
+:10A8A000EA43A87DD237898882837F32FEA380570E
+:10A8B00012AF547697CADBAC104ECABBB3A5C94FD2
+:10A8C000C10657106CA32BFEC4F9F7E92D7708FCDD
+:10A8D000851F6A1C2BF055FA0368757D5C1443B123
+:10A8E000C64A6AE4597D337623AA1CF3ACEE08EE1F
+:10A8F000FD47506141525DC1DB8387D2D66F78F14D
+:10A900000F50783309A242F888B9D00979BFEED93F
+:10A910001B160716F076DD90AF0BE8F1E0DA58FA77
+:10A9200062793E9F1455099326A00E6F7E03175F30
+:10A9300010CD0581053C37C2E010305CF9B42AD354
+:10A94000D5EEA89BD48D8BB269904A8F1CBA927AAF
+:10A950002E9EFC3F33AD04A0ACE97A8C06D53B4E6D
+:10A9600067F15701E284D38CB302A8D30B36BECF74
+:10A97000E83D94BF7F9CB5ED5DFB798A1527E01A11
+:10A980003136D230EE278AC577E79E507085167C27
+:10A990003DDAD37B1585B0209085C4DA87CB237F41
+:10A9A0004593246E3496388D97DFD9FCF5E1E7D9CD
+:10A9B000FBBE2C97199587BB6C37646952B0F17B4D
+:10A9C000C72AF281868CCF93CD17B8D557926048AD
+:10A9D00000E36692AC1259A8F58A30E1800C1503A9
+:10A9E000EBF9AAA68393E67A293D96A467D5728CE3
+:10A9F000BA9CB73E7FFD0148FDDB06069F7F27BB63
+:10AA0000A57BCD17C64B14C0E511D70FB2A2778D29
+:10AA1000E3FAEAB9AF7B872CB09439CAEE607817B5
+:10AA200074F48CE1C8455A270C85EA81399399045E
+:10AA30001ED3DA68D0CF65AB10198ACF02E8F132A5
+:10AA40002700236740A77BB5452303E9321799DA2E
+:10AA5000E7E1B9A1F5270835BAFD1FD8EDC0D52922
+:10AA6000E786671191C199FE01176F80F2EA5621BE
+:10AA70008E690D76084CC398FCC33B225B05E50745
+:10AA8000E6B76652585972355E8E75F716D7755807
+:10AA9000A064F02D3758CD1E65C88099FA37E011B3
+:10AAA000D28E1CD0B4A5CCA4431FCA1855DCA80F65
+:10AAB000F89A55346A4BB35CF7AD57ACFFD10D969D
+:10AAC0005A2DE81AA9D0D3F639484F1A6CD7AA8A5A
+:10AAD000D685A74A84B1AA85105B149EE426FE1B86
+:10AAE00012DC820C1320A3D121DAD65178EA8AEA4B
+:10AAF000D0FF6AE2C493656319BC0F5058F79955AB
+:10AB0000EF8918A6F5BF4BB0DA8EADD8CA8B2E38B8
+:10AB10000188B813EA89C9203AD2E5CC22D790F34C
+:10AB2000E3673AE2C144ADE45BA4144738F3D2F8DA
+:10AB30001309CDBBCFCB66AC7A2ED547A57448326E
+:10AB4000EA6CD1264587CD61F399467AE8995A7423
+:10AB5000E00F6DDBABAA421CEAE3648AAB3570F30D
+:10AB600016E98612C6DD577C42422508CD844E0880
+:10AB70004AAF1DAB3EAE47E082B102A8948C587339
+:10AB8000D45C1DBC158B5B6C1247FB71F24E1E7EB4
+:10AB90001D6A62790AC6ABE989F6EABDDAE687B4CE
+:10ABA000A5B3E7A4DE35B41CA8482FA6557A6BB927
+:10ABB000B619B5D59855501E4A7A204340A741731F
+:10ABC0001EC378AA07ECB25C2CDE69B78B5FA3E3E7
+:10ABD000E12B98B132A93B64D8A2A95804333B09B0
+:10ABE00058AA9DD1DCE64619F210417913F3E160D1
+:10ABF00083E417816A782E94AA34F822AF87C6902E
+:10AC00005E9690E206C0915F371969A480A761291A
+:10AC10008399193D06F2FB0C0B645998A5872464AF
+:10AC2000053AA390C292247CAE6A291DA46C368F8B
+:10AC30008D4150C8082E92B91CB1873FC2DA6F47C8
+:10AC4000ECCC667608D5B463A090AAB991CA28E482
+:10AC5000C4C3EAAADA86AF4EA210F49B7E264D1B2F
+:10AC60008A360225CA919395FD5FB9CA251610F55B
+:10AC7000A4813CF01F42FA1D3A540B9EDD52FFBAEC
+:10AC8000663D6A3B4D26B66AF9CDD4F45AADDCB8C0
+:10AC9000B3B3FEE3DAD1C8E78450755AE59E0BFDE5
+:10ACA00036E928354F2D74E709011EDF9D98EB6AC0
+:10ACB000BD7B648F0442503F896308CAAD4B342A80
+:10ACC00057FFD530FC73278617CDFBAEF24C3BDE29
+:10ACD000B4333BB31C053FBB5201D596B40A93264F
+:10ACE000BCA00EA923C1FC49862DBDA981921B40A1
+:10ACF000D570417E630FF2C26370F84A4EB8F9CE48
+:10AD0000FD596182D4289F6AE9AF2FC0F4967EF086
+:10AD1000A4BFCCD22F6FD3067A25E0864CDB3E9FB2
+:10AD20009A6989D4DFF7EEB98F6E1C87E664999C27
+:10AD3000B0E82261B7A6F5A29B683524236793414A
+:10AD4000B1BC83E329ABC240746FC03C4750A6D569
+:10AD5000073A8A576D547EA98C7F3DACBC9C8F1BF3
+:10AD60002E78CDAAC819B210EB95A46887B69A714F
+:10AD7000D020F34B5798D63CC0FA8AB42B3AC8D6A9
+:10AD800038617F8BEA2DF041D3C714A6660A82286A
+:10AD9000D06147C36ACC8099BCD2643F3667F6570E
+:10ADA000362FF5352AF1AEBD43D40EDED60E8C4FCC
+:10ADB000E02BAF4EB6CDDD1ABAC24A1353F8487E27
+:10ADC0006EC9B7DD10ADE0E1A571C1AA3AA648D3BE
+:10ADD0008D8C6EB14894EF84288D72AEB89C6F5004
+:10ADE000729618D40E2233B15255E931CA169A78A8
+:10ADF000B0C1C4F96F88D21E2BFA1F3BF78484E1DF
+:10AE00006F6C754FF7E80B6F58D7F8C91B3B0AC139
+:10AE100050F47B75DCF54E0CB891E52C5AF6D6B49F
+:10AE2000501F68F9A8887D1A8894549FAEB6A57AF9
+:10AE30003817F2A4A0DC70F571A834FF39DA3BD0E2
+:10AE40009EECE61FAEEB5D65E11531DE00304E6F26
+:10AE500018666DC8E75F9DEB0465DD5F70680F6F76
+:10AE60006A2168C3086EB0286713BDA19F4B823961
+:10AE700041E872AB83B1F2E76AA20C795D3238AE79
+:10AE8000914DF4A2B7424DA12387601A8CC640A20F
+:10AE90009116EB8379F1D43BD3A7115D9807A124D8
+:10AEA000BD089E6309B2790FFFB799D75A6B040C9E
+:10AEB0006278015A897E397297A749FB4F0201C116
+:10AEC000E13083ED95D3BC481118DC5AC6FF0EE182
+:10AED00059E1AE8333D75F79BE5AF5283D28138DEB
+:10AEE000C5F6792992CA82D74EA14198CC5B4FD042
+:10AEF0006745937928216A8459CAE4A43755C9E47F
+:10AF00006113ED6879B74E0154E83B45931497BB44
+:10AF1000404FE97C4D11AB70EDA32BA3B1553DF033
+:10AF20003381448490A12436D2F4FFAD1B7FF374A7
+:10AF300088ECAEE4E67D6C8CF07E6AF1400BB95B88
+:10AF40009CF5E6EE218DE446EB467D75DB560FCF92
+:10AF50006805F1E9F651F94B2C4927E5D33A714ED2
+:10AF6000944BBF22C54B8C1B2D7B662F9A943B4D77
+:10AF70007355F6C4F64F27C42AF232CDDFBA3BC56B
+:10AF8000267FDF50C5120580BB8EE867E7EDD8222B
+:10AF900008EBB8293C2779F2827C9B573BC8CC2B25
+:10AFA000C6188C743F1BFAA5B61596FE8F6C2B093C
+:10AFB00016BD7C5F14A75684480B339D126D7CDB55
+:10AFC000C7B64FFE99A9722F8B670681ED413426D3
+:10AFD000CBB3B92C5C9ABD4130268E5BD747561E49
+:10AFE00054778BF6D56E3D33AD289F13CE25CD40DB
+:10AFF0008A8533FA6D7C028E64FB4F76DC8B275D8D
+:10B0000097A41C53A52D9230BD275EE0C6FE5D655A
+:10B0100035519F2B02FA5A9D7C982CAAEDABF9B6BC
+:10B020003EA9DD69872C6732A88C7522DD97A6B50D
+:10B03000A28539FECA780DAE1A891A7EA303E0B73D
+:10B0400050E2AA7ABAA7718478C05B3955F8805764
+:10B05000019AE2EF0967C0E4D154810B6633506F67
+:10B06000CC33060B6757509CF00146885BA30B1945
+:10B070008C533CEB6C629FF500D1B45A702EB0112A
+:10B08000F8E8BFD98215C97E6410FE9B279AE5D6E1
+:10B09000BC52E52716012757841FB3C3F7D5CBF160
+:10B0A00080C93DC22011A2DE4BF683BDCCCDB5F4E4
+:10B0B0000A903A092D0858D2C68632302D79F935D2
+:10B0C000688F05F983452BA3D90231A8B787E2C25F
+:10B0D0003178B2BD78316225ECD2271BA865918109
+:10B0E00022C4BA393235C89C7560440AAD39912200
+:10B0F000867D0388AABEC6212905675609A8F68F52
+:10B100002EBFA58C00F0FD90130A72933B363C2BAA
+:10B11000D2C67ECF7E8B2CFFD8B0BD253FD00C7A17
+:10B1200015A8C3CA55E6B79AC311E76ED10B77BA13
+:10B13000A5DA1648E3DBE1454C946CC1A30848004E
+:10B14000CB06777F1CE56676133074B4110751FC8B
+:10B15000B9D76B76B231E5FE29EA7145F2201F6E50
+:10B16000E79B20A6AB15C22AFA14A89DCDC557446B
+:10B170005CBA5C6DEA5A31713E35D8BD89D3166729
+:10B180000166AB3CB0486B650CA1C040E238F0E80A
+:10B19000275AC2F63393F60833AD98D1AE4FB8E8CC
+:10B1A000CDA0739D1B2A7A88C95679B43CCB413E09
+:10B1B00052D28290191149D6AA8EC3C378870ECD78
+:10B1C0008A001E23689ECBF7B7D2B8F505BE143DA2
+:10B1D00019579D5744B292A417AFA98DDCBD3A1000
+:10B1E000ECE7ECC6FE4F1745B18115340C2DBE922D
+:10B1F0000532BEB943B74C7DFB9045F60ACAEA3822
+:10B20000E9A4911B0646E3B2EA625BFB343D98DE9B
+:10B210009F58F54020A64192A57C41F338AE00D757
+:10B2200012907781094255B7413E3CFEDC66829917
+:10B230003E855FFBC8664EF1E5169DCE573151D273
+:10B2400096592D6F3BB84D38076DDC2B129A3D1B7C
+:10B25000F879FCD812ED7AF47089B8062DAAF89B1B
+:10B2600083E719A5A0C670C7F2AE9600589ADE59BA
+:10B27000BDD28FB5098532CEF4B6C233D3B8AD0690
+:10B280003E652CEAE2699E13D695294425CC3CBA4A
+:10B29000BD6702AD15E39A20EBDCBBFC1AF1FC0F95
+:10B2A000FA04EAD9474315D274F57EC8DDCD65C7E7
+:10B2B000645AF00207AF67663CD71BD5E04389FBB1
+:10B2C000C7542A9FAC3CDED2BE13EBCD02D1E1665F
+:10B2D000902BA62AF279764A3DBA0FD9D12B2A03B0
+:10B2E000492B7B9B5F140D5F5266D5F7247031D2DA
+:10B2F0007970091C96C730ED086ACBD16F9629BFCB
+:10B30000A72B776521BF33F11188F42B72C4C2C714
+:10B31000DDD7137D0AE3751DD25920DF1BD1096CDF
+:10B32000A9E8C50DF7AA82DC3998D240AB4A574C40
+:10B33000A99AEC90EE99B0DAF8ADE5255834110FE2
+:10B34000B49A613DE35A8AB4875B69AD04E95F133F
+:10B35000248C54DC423069B998C52DC03EA5CE641A
+:10B360008ED443C51623997B32C0E40040CCEE1442
+:10B3700062D7D84CCFB1E5F50D67BBA22042EA8D6C
+:10B380002F68A998D545BCBA2942AB04F9A75163E7
+:10B390002E770957E029E535769D29F8EB8789E076
+:10B3A0005990A4FD403ED4AA306FE2A3C5FDA86128
+:10B3B0001066F9EAE8382FFDC095A28420EFD593F6
+:10B3C000B525A0296706CA2E6389B496BC3EC73747
+:10B3D00099A45F4920DF3F8380FCCC573C0C26A911
+:10B3E000678F9167A8383E0ACA03E96B6BF9B339D6
+:10B3F00071870923AE6FD30398B9D5B1AA357913F4
+:10B400003A4609D108E8518D5A7E701FB953D7A129
+:10B41000EC6099A9066CB625DC3F682916C828E1BE
+:10B4200021D21631611ACBFAFC9381AEDDCFD3A0C5
+:10B43000E8647E098B9C4F16419FA9C4D84CE386D3
+:10B44000D3361125894AC346B882F099059FE9B2DF
+:10B45000BBBF63EAA68A863E2B5B02BA9B9D113E68
+:10B4600074AC535953C692D03D7E4AF14C2D25AC55
+:10B470006CD2B6A7CE56EA84177599871DC7F327F5
+:10B48000594E2C7786FCE8BDD618633459B53B5429
+:10B490000D58E3A1FFACEFE0A5746BEE08AF824C52
+:10B4A0002CB76105118F1E61C06A580DF021B3E5FC
+:10B4B000BB2ACF2CB9CBDE758D788B28548AC56515
+:10B4C0006E35B15B1EA7815EA31AB8687F750486CE
+:10B4D000F76DDE22E5EA76AD13F2B131D7B0B54FA4
+:10B4E000A759BC07F44C22D26FBCD2E4CA3D1A6BF8
+:10B4F00076D7A50E5928C25BF7DB4E863C7E18D363
+:10B500009A4E3E5CF4A461E4AEA78333542B926858
+:10B51000CC9E6227D1ACEE54194067A3D5C1B84187
+:10B5200000AD27B5E871A5987B7C0B55B20E66AFD0
+:10B53000B6C48EF3702DE0A9EA4E632CF4BBA7FDD0
+:10B54000905D048E3D54F68715EE61243F5B50F309
+:10B550001083AB884E5295AAB1C6E04E78076D466F
+:10B56000FA7648B788F2C216301568F2433483E49D
+:10B57000D04637B020107C47630D1C6AA5293DC812
+:10B580008BF73D959F18ADF6AD393236F7D174186B
+:10B59000B4A0FC137DF0B97ADC41FB86110D2E2E90
+:10B5A0008D8F86BC4C2D7CB9241561089B07D81E55
+:10B5B000E77A7A2955EDDED734A90AC1AD7BDEA33F
+:10B5C000FA6075BE8419453194B34442C4C95C82A3
+:10B5D000D845F059252210C992725ABE0F6031BD6C
+:10B5E000DAC8374151C22CE2CDF3EFB8B43B406E1C
+:10B5F000DEAD82789C338EF60CEAF4D1247414FC10
+:10B60000411D67D693BFF67226472C21C7E8751BEC
+:10B6100035A05FEBCC5D5F06D2E94C3A8F97E846E8
+:10B6200017060277F434821D500564F8815362D402
+:10B63000EA5CDF6693CB21A6F26BA8A00B424BA27B
+:10B64000E04A9A132D266B70DC09C23852310E1570
+:10B65000425D9BB7F6396A981F0D76F97484ADA3E5
+:10B660001A4588AA3B2413FB558D940277CE2649B0
+:10B6700044D9B2CC56DB49F5F31099716A7BE78166
+:10B68000899C7991353E6FD84457149D724F83152C
+:10B690005A5B2102C64806D6B7E975F57DAEDA5B7E
+:10B6A000D383C3DEDDD3D76F4D9B1BDE9F5C1F961C
+:10B6B00060846C698AE209125ED8441C878AFA4E5B
+:10B6C000899955D45951A293DA1ED4B3B1D95D8466
+:10B6D0003C5F8E267AAC277A0D05651D64F61A3A12
+:10B6E000B266360969D1610ACCD57B6BF002E73FBF
+:10B6F000C537E43C068362EB474C240DBF34AD0FE5
+:10B7000042F7D1E046A0680EAD831D22A97C223805
+:10B710007DAFB6D20CFBEB3C42A211A766301022E3
+:10B72000785D0E17CBD748A6CCF36A2621B1BF8B24
+:10B730009E15CD7B6E21621283B2BCBC4992BDA422
+:10B740002D3FF8EC0BC324D9172AF286D3081259DF
+:10B7500054B16FBD2D2EC01DA6F6A5AC3F072C25FC
+:10B76000CE95E7DCF14E827A94C9CAE0A6267F76B0
+:10B77000724FE763FB17EB93FA1191EB054E285BD1
+:10B78000B8FF790C074CCAACC98720308367C98AD7
+:10B790004C17FB1A41E5F2068E5EAE7AE1E0437B80
+:10B7A00078C7361BBBF52031633C3EB30B52776D37
+:10B7B0006612F706BD0C04F7A7DAAB2FCF647B89BE
+:10B7C0000A0E2F6F86AC8D81D576E4D6C9B25AA504
+:10B7D000399E014D5491B7B7FDD530377946E1DB3D
+:10B7E0004FEE2FDFD977DDCDD587BCCFE6DDD78013
+:10B7F000CA0763FF060ECBADD94CEC2B69D3A8C3A7
+:10B800004F9AE7BAB81A0480474D467EDFEDED80C7
+:10B8100040AD609D639D14EABA722499A8C98D2732
+:10B820001F2A25672FEA876D2AC4154C1349415AF0
+:10B8300080CE43D69FCF9926E8BFAEAF7328C6BD52
+:10B84000156428326870423C2ACC8A79DA79C2378A
+:10B85000ED7A7B55B8248972D9A50B5BE634FCC020
+:10B8600080D3C9E3C602FA6C838EDE0DBE92D04847
+:10B870000A3336614EB9F9EA9145F2B75D3E5BE2B3
+:10B880007F31A0D4E2CDC5DB30D98D21C40EBDDB24
+:10B890004179683316FF62AE87FA7DB1479A987A8C
+:10B8A00024511438440008239516C34823B7924105
+:10B8B00076632A219A56F9A8FA890D03DCD6D85561
+:10B8C0009C5EC7F888D08D6BD4F63CB4596880EA8A
+:10B8D00009CDBCABC89E17ADDBB817651E31686DCE
+:10B8E0000C058FFD6474B856D5ECEC1FECFDC43E1E
+:10B8F0009372E253398C79FE5F32F43FDF75CAFFF1
+:10B9000038ED1EF80667D1E4613C120C4824F3D5EB
+:10B910009DDA712D4F354C8829965532B9DECFAF5F
+:10B9200051389E1E5C65ADB7CC30238D9C93CAE91F
+:10B9300085EEDE3BF37A37B3AA18E2979B66DA26E8
+:10B940000B033E2FBD27BC3DF1F6096467364081ED
+:10B9500086D8B53E36780EA90EB3DDC3FFFBBD9485
+:10B960006AED736B6474B6F96E44CED7916BE8548C
+:10B97000C45680642474B63186C0A3BADECE2F5F6D
+:10B98000CD867ACD31F0894F1A65A0629A4D286F25
+:10B990001A02DCA52C8D36FF335235AF9519CAD764
+:10B9A000AC565328C18372FEC18F85CCE368A6C410
+:10B9B0004843375E8FEA8D1E7BD27191C7B777926D
+:10B9C0008CAC8D311B7FE9B27FA23B76F695877DEB
+:10B9D000589126B99CCE78664C20316CA42B9E924F
+:10B9E00006EDF9BBC206D3D1EE23F010C0E7F35E3B
+:10B9F000735200256194BD9A74C9C08CB1FF507513
+:10BA000081B927D35582B90297228B2797236CF0EF
+:10BA10009D5984D36BF0553B93B02891209E78902C
+:10BA20006D2167920B2B01176D34EC37478ECC3BA1
+:10BA3000374A5FD32BC6E13388990BF7BF9AFD07CE
+:10BA4000A158339C15B2A1DAEC7CF23F78B2A98AF6
+:10BA50007E86BCBACA2331B35F4F02875DF953AA11
+:10BA600060D770B02EAA2A10180E8131B1A081EBD8
+:10BA7000ECAAC6BE8E7EEE4B4842284BA33F59D45B
+:10BA80004E712EC8E99EBB62D5CE810EEB72254B5E
+:10BA9000C9433D80DB14004B0E86B585233BEA3C51
+:10BAA000BEAFEC55597056CF60DFEF9148FD7D1267
+:10BAB0000B87A9397DEE9CC21A6D0DA99B26EE005D
+:10BAC000727F0D82EF3FB395F24B19D38DBFC8B192
+:10BAD000CC537C0AE3F0BF961872F4674DEAD81491
+:10BAE00060C37D327CEBB9DBB9028295BEB7169E8E
+:10BAF00050F1B4D73246E0FEED01F3493C953C5895
+:10BB0000C0C4BB56A19AB1199CDD3D9D808E336F98
+:10BB1000F12DF2BD162638660F9CEB1E1D9B70EBB7
+:10BB20006C67653E191D78C1F9ACBE0A338A0A00FC
+:10BB3000431C8508CEF7D675585C966ABFF9118DFF
+:10BB40000EFA3C00EFD17011EF31376CD6CFD5CA69
+:10BB5000B4215CECC038962D6BCADA7275FA096FA5
+:10BB6000DBE7075FF04A1C5BAFB28FA9B98C8B9AF9
+:10BB7000DA9A2E147A1286D42C13ADF2A9ECB68977
+:10BB800005113D39B7623F84C82E34562B5D814E76
+:10BB90007DF69CCA93F51BB8F18700BEC2329FB5F3
+:10BBA0002680F2FA7F23E7BDCEF3704CEDDA264211
+:10BBB00095D12125F4C915399860E4C2F790FDD9D3
+:10BBC0009DB37E2353CBCD5214FD6437364E7B2A72
+:10BBD000E28D9D1C0716FC5062A1E88B3D630315A6
+:10BBE0005B11C479CBDA336B4C2F150F91B9892EC9
+:10BBF000DF7ABD7758FA93BDD256CAA6ADC335EEEB
+:10BC0000A1A3B87F7FDF1BE502D56063109D85A9E6
+:10BC10002B0C3A55BF8EC1C761D6EC2FE27EEC915A
+:10BC2000ADF9A0C7BE17CA55CA54A70211C84333FD
+:10BC30000F497AC03A7DDD73E1993034193EA58D04
+:10BC400079297C9DA6ED33E93CBD095F6E657D8851
+:10BC50006C953335162162B067610F6D4821039CE6
+:10BC6000DD389EFE1580E8C385410FE8DEA0BD8A61
+:10BC7000CE17385B22E80F6B979415C2B1792FB7B6
+:10BC80002260FC681AD3A890A2F57152E41B69B037
+:10BC9000F7C8DD80AE5C0E4CF2B219587B3B7148A0
+:10BCA000F07A5D7A92B5A9ECD592ED672459CD4929
+:10BCB00058A877F9C8E7C658F633C7B45A784A7F08
+:10BCC000587F93FAA9B6B09AF44FA272B83F1D35C7
+:10BCD00041D7EF6701934C121E0919B125AAD6303E
+:10BCE000170E78C4463E9BB9696140ADE3D5B08F6D
+:10BCF000753DA570725206B19750D5B3F0FF4E084E
+:10BD00005C893CD95BA872B1605D647CA29C516D7A
+:10BD10006F9E3E3FC5717D1BBE94F9F765DA4D38C5
+:10BD2000C0FD515A4876E16EE67D3F272B8AA1E09F
+:10BD3000D1568CABE0CC37EFFDCAF60FBCAEF8079E
+:10BD40006CBE9651B1AA62EA08C77D0D9F283BB52B
+:10BD5000DD3EE778775A4C69CA64271C6C20C8B965
+:10BD60005DCA26766B04AFAA8A21755341CE3D1B6E
+:10BD7000422FC62BB4746641A860F9B4FFD5F6D043
+:10BD800043921B188C708687BB66E808D0FF14D7D7
+:10BD900059279EBAAF0D3BB63844FEC69D69B154D3
+:10BDA000A04FDF36B1C33FB1E256A44D38BF68564D
+:10BDB00054F8911A7109D14D0661935CA100E756C0
+:10BDC000433CCFC9C7D1F2544705E45B2A721C310A
+:10BDD0002EA0D936C2EA3059376557626A26B0407C
+:10BDE0004B8B8E101C5CE56BB362041258F1749E91
+:10BDF000C0AF922221DB64F799E662FB590D05CEB4
+:10BE0000BF5740598BC5E60AF31BA5D62616A01AC4
+:10BE1000A0766FF5BE8AF645DEBF88A008DFD54361
+:10BE2000B6CCB433DE785B162D0ECBECD01C0D599E
+:10BE30008649C139CE249CBD059E8615F639C7C5F5
+:10BE4000892FC11B387CBDEF144B509A83767D3B04
+:10BE500052123D837909FA7270E233D106CEFEF0B8
+:10BE6000BAEBF9134EAC9711A011737F79A94F6605
+:10BE70004062F73CDB560F6A92394C92D47B626D7C
+:10BE8000A09D1A510184B8F941E8079B2E52147AFB
+:10BE90001C07B5FB4FA4AB5CD59157C202E99517BF
+:10BEA00049E17A31937A117E2807C673A0E51028FC
+:10BEB000FD399FA74EA2AEA40DAAF631D7FE888CFD
+:10BEC000DBF8F5571800D1083E7BDD1242DB1FE19D
+:10BED000DEC0B12B0475B2882925DEBFBA19303611
+:10BEE000983631EAC279555D9D77C99F06F0B564F1
+:10BEF000BA67A53FE1905BF7E1B4CB54F943AA8E52
+:10BF00001FB7C65B6C6B9B032D9065330C74CDE340
+:10BF1000BDC27DF19996FE445A795CD21DFA50A5B6
+:10BF2000EDC58D464944B316618E4337132AF3405D
+:10BF300001DB05B8B317F2F8549FF776DD32C53848
+:10BF4000B7861D6177374F3DA9DEDCD79DF2996D2D
+:10BF5000FDF22F8AEA0F3E7648BACCCFE90C0C9B53
+:10BF60004E752904D9677210BB85AC28FE0DDB83A2
+:10BF7000ED2EFE9AABE585FF407AFFC471217B6907
+:10BF8000BD288154A6C7072EA24EB02CC803FB784B
+:10BF9000F9DFEB29C79DCFFC3BA4A564328FAE52DD
+:10BFA000A730E1643CB1AE0850545C9ED9EB7910E7
+:10BFB00017EA427D25EDDF3E98BEE21C9AA4B653F7
+:10BFC000EB7EE06A116F6C26AA6FFEAF9A57337F43
+:10BFD00063D11E3E1A06663B1F7ADF6EEA61C70117
+:10BFE00086489365D3C946CACCF668461F59C881AE
+:10BFF00054B2804E5CF746CC9E7C89E3F9BC60FC71
+:10C00000B5E1CFAF2BE126EDE42A9FC8914C59133F
+:10C01000710F6BD08F2A992463F3EB4125A97043EC
+:10C02000704DB6EBD885C9DF14B9C99E8EDD765543
+:10C03000EFE331A5D9A5E55308C746E8AE85B54E6F
+:10C04000D89F0F9C1B5AF97C3AC367F438787D213E
+:10C0500066DFD74AF0C1E7273AF7A4D414675B59E3
+:10C06000954FB5C82FB7408323504F7E0F4B7F327B
+:10C07000A98C772655A55A33FC774E9B4BAEC6DF6D
+:10C0800017CC90EDEDCF10717DCB2CED2C0BA5CE08
+:10C090006390EF4BE1A2438837AF177C9E08EE3EDA
+:10C0A00058285F8C070222E43B8B60B8FEDB6A35C0
+:10C0B0003354B94C4256FD58FCE5FE6938818BBEBD
+:10C0C0006E62B7CB8E0B147A3DDFA9E790FBB334D9
+:10C0D000E150C87BB2E8C2D02651F5DA85DEC02D2A
+:10C0E00082D26D2B5B72ACC9BECE876491EDD0322B
+:10C0F000585CBAC277BF97C936819CEC528A14E764
+:10C1000076CA8B5F043A0A50BE8B39F8A5D6DD3F5C
+:10C110000764194ECF1D897065A31D36AA372FB14C
+:10C120005B1E12DA1E1EDBC7CCA56BDD16F430BD1C
+:10C1300048A59A274617D6BCE3BAA909B4AC4F6EF6
+:10C14000449568F8113B36FDD8B7FE8FB2D5D2477B
+:10C15000A7AAEED753966B4761340E3EEFF3C9BBE7
+:10C16000C2016A28A5D511D804B90985E7E76D3B56
+:10C170007717CEAEDF2851C204E18DFD5979604AB0
+:10C18000F75561CC9695A9E875D34615BD276E3A4B
+:10C1900008AEDCDF767F33854FFB120F8F924BE1C9
+:10C1A0007C211E2B27D84215CFBC107A35EDACE48C
+:10C1B000E1D95359E120E5E13B373246F078483B7D
+:10C1C00055ED77FB030714CB0259FC460B4E46791D
+:10C1D0000363C7AACAA03C5F77610B79E794D027B5
+:10C1E00025BF0328D046CA38E6229C7CEFB8C44C51
+:10C1F000ACCB7D5448B05E83ED6823B346058D53C8
+:10C20000618EB319720A6F36283A25DE1CDAB6231E
+:10C21000798DCE75F8441801E03072922B3BE0A680
+:10C220006C12C369A287B91EE60D31F7A9BA0F0ACD
+:10C23000A5A0C00EB5FE28D3F05C989FD1A91E2EF4
+:10C24000211A67AA6693DF279A97BE96A5198D696A
+:10C2500045B2017E4DF383947C3F570A8A3B2E41C1
+:10C26000766440DE51F156FC399C0A2E4C1EC019F2
+:10C2700091D5B194C800CBDB1458D49F172993599A
+:10C280009141064542748AED17D7617B4565CBB075
+:10C29000FC1359F0BA5AE6C2450E2F95A8D3D456CE
+:10C2A0003308298EB05CA9E4AAAC978A4B8C5BDA80
+:10C2B000DE134935D9CB016763F281B07E03A388D1
+:10C2C00099F99E6D5E5E8F5F1BF568B7F8F168EEB9
+:10C2D000E07F1447D86C7F7C9A179110D14B7F6E0A
+:10C2E0002BE2386C1F342038E722BB638EDCB8DECB
+:10C2F000234F7915EC9F8F6A8B9CE30298A4C86E3C
+:10C30000B0CAA3A892BBC0AD6B8D62A111EFC60AE3
+:10C31000EFE2017055974A0324532072B2E10AD527
+:10C32000F1DFF6924A88DA35A469042805238D46A0
+:10C33000CA8341E4864ACB3945DDB4C4A012BB723E
+:10C34000E121B854470F156FEC93F8869F4FA5B6BF
+:10C3500085E40F150C20C11481C3CFF7E74CA63933
+:10C36000D9F9A33069C71FE34ACEAD06B4E33B1A3F
+:10C37000423D6D6FF89F7716010C3642803A60534C
+:10C380004101EF3C8A786B18B3FFF3418AC8FA8504
+:10C3900060E078F3C7FAD6BB5253C03FBE5C707AF8
+:10C3A0005AF42DF45A66D5CC2153CF8304756BF81B
+:10C3B000C1363B1D353021B018A1F05F8002C6A602
+:10C3C00073AF2BDB87CB05A1D098B4122967BE10C1
+:10C3D0009BED40B797E2D093A0F8371D20B704D764
+:10C3E00034179C33F467463AF1C9B2160036654BF0
+:10C3F000F68FEB29000FFCD95001888691862FC655
+:10C40000F073785C6E277266CACC20DBEBBDD65326
+:10C41000065C71AF80364466E0C33BECF277AC2536
+:10C4200036C1246BF099DA0C483595A989F6DEA55A
+:10C43000A2A7DA8173EB1C8B2DDE122D5E8FF9D251
+:10C44000907F7492A389208E664A413F28F9D05D7F
+:10C450003807A3F9C85D53F068FA84936DF5C846B0
+:10C46000FBBCB12408AFEB0D661FC2AA9096E9F1A0
+:10C47000506E41C81FBD061E3387B3F19887117DEA
+:10C480004E72956F1ADBD7999881400DC78FFBEEDE
+:10C4900023E241CCA9A1D541B81C87D3A6D8BEB60A
+:10C4A00071BC21A1389AA1A725AE9763C01A2E8D21
+:10C4B000B24D2243CA8A42CA4577CCC382C2E58ABA
+:10C4C000AB183000E30AFCE7DEA643973DA9093F1D
+:10C4D0003E1AB20E046DCAECA14A682577299C5811
+:10C4E000E134A67034D7170C05A616F429B519093E
+:10C4F000474B7496645039287FFE08257EBD7C83A7
+:10C5000070DBD1F92C7687C0BCD1519E6BF8AE9C04
+:10C510003F9291BD6CF0BB6521A3C3288E2F993447
+:10C520003AEBF1D039A714329A5A0723D54DB9A85E
+:10C5300022D1F9EF1E16E78CFC43833A41EF2E48D7
+:10C540002E4A4E4529200777CA47AA53197C661BF5
+:10C55000086AD9D39EF4FED114438BDADAE28CD583
+:10C56000AFB75B9A7278A3872ED7EFAEC143B6758B
+:10C570005C1AD76A5459BDCCEB806C31E2B33BDB1B
+:10C580007EF4B13E38E563C28A5733FFF899F82C40
+:10C59000E5AD80290FADE2A0F3EA585F99CF0FBB5C
+:10C5A000C8DE9EC7FE6D7376AB0A50FD59129FD34D
+:10C5B000EACAFB3FA7EE112EBEA8C5E6D76EC08C17
+:10C5C000ABE4E9F8FBBC0E42D7A0350792201E6A07
+:10C5D00073466F7CF453517ADD5E64C756B94FD809
+:10C5E0005AA6BF67A8D87681FFC508EC51E9BF837A
+:10C5F00095AB766319FFC31ACE439BEE37CCA5B833
+:10C6000007B80F3FCF1995AA7F8BA0F34DCD625687
+:10C61000D58ED381C5C48F37DA1C65EEA21D3A7062
+:10C620007E8926A57AA0584BE5B102B5BD075A3ED2
+:10C6300050D8AAA72A1BDAC2DDC73D6A885977F00D
+:10C64000D10C1855C71FE17F1655EE8C487693FE26
+:10C650002559137AE8C50658EFB9BAD16B94BC6175
+:10C6600078E026F728D61A472231A8AD5E78231F36
+:10C6700058C8F0B83855EC47D81C74CFD90776FFA6
+:10C68000A95895AF1BAFD742685CAC5D378084F981
+:10C69000F07316C377B66C0D5027A182F415EEC166
+:10C6A0007B774187BDE24E35676DE1FA44F354492B
+:10C6B000DF9D78D4169A782FEA39C083536EBC2355
+:10C6C00040F757486F1316320641A798143B6F8FF7
+:10C6D000250706EF6F32E9620249D4C42C6055EA9F
+:10C6E0009AA56BB5A95AD5060C92963D7F654F3435
+:10C6F000DCF41F1A85727BE6092CA5431CBBA085C0
+:10C70000AD76B5F2E6DCF0BE339894FE2A21178EA2
+:10C7100092F34506C9E23A8A5B99DD3A24DB763B1F
+:10C720009716CA7F154474B3F52BEDAE4EE9B60BE0
+:10C7300036743E9A425C8FB42B1A01D42A2816759F
+:10C740000E40FD5C6CFA9B2630F53864787011D68B
+:10C750007979E61CE8BA1A8C562E990C667C9E39BB
+:10C760000C512A80B86400EF537EB2C5E3C863F76A
+:10C770008EC441872C8944FAAB93A964ABE30F5470
+:10C7800056CCDE45E6FA31D6D77CE98D281101E694
+:10C79000AD4123B741CBD0BD805A9F30278A8D351C
+:10C7A000146ED5AC7CCE9F94CE16475B16A789F34A
+:10C7B00043F98DFE356A191D9B403373BD52F6183F
+:10C7C000CDECE3D86303EDEAC3F5F94FB00AFFE21D
+:10C7D000E65757DDB4B357D7A50B79AF97F24DA401
+:10C7E000D18EEACDBC7ADD7E742672BA787D02C322
+:10C7F000686643FA015EDC0B4D67F4B4692C68B4DB
+:10C80000169EF3B8012CF873A84300770B9988B8EB
+:10C8100024F81B1415B05824A5322A4AA2B4234385
+:10C82000999A9BF9E22899428BD5C222C35FC273C1
+:10C83000E5515AD1674083CA8974E5294284E5F3FA
+:10C8400042E189E1C13D07A9AF1539AFF941F6636E
+:10C85000BFEF8DD395B5AA56487708026DCE9F37A6
+:10C86000B3E583F6F9CEC3F0401F0D732323F637EB
+:10C8700045FE8FFEE03939D85BB0DB2DFD41EA2A59
+:10C88000221A25B929C4E661ACDC960F9AB41A5075
+:10C89000500DB6B7F735A7C9FF9765FACC0AC09116
+:10C8A000A9EE0E897F27E35F75318AA6A4D01D8D7E
+:10C8B000C99444288F856835E81779EBEEDE0C358E
+:10C8C00097B598A5024D465035859F7665E2505242
+:10C8D00030211973B23F5B82057321926F07D22713
+:10C8E0007F1C8BB32878B7741646576CBC0CD732B4
+:10C8F000B44217658D55F353CE6EF4B625FAD8259C
+:10C900002C4629876958D16A34A8BA15C4B2A56ED5
+:10C91000F716F37D387892D5509C1BC03EE7170977
+:10C920006B889D4D03D239CBBC12C0EFC8BBB52874
+:10C93000E7929D536BAEC649B400C4F434AD870A88
+:10C9400065EE015E26B77521897F782CD91EF587A3
+:10C95000FD854365389980DCB721963BF9EE623559
+:10C96000B2DC3ABB432F9D842161A4272810DC60F0
+:10C9700065A9F8E15C8E9487C0B0E6B5A482425206
+:10C9800090460062774484D3269B4104131A0FB665
+:10C990004E178D6F8757E12B8F4FCB9120963982A1
+:10C9A0008543B9FE8F6B2761D90B49767080E9A961
+:10C9B000576338C8B6E3F3240D8FD22656D106C587
+:10C9C000EAF99F2E0B49B04EEF8D8C7B20526746C3
+:10C9D000952D9EA7C917CCC8AE3DD8E93BC907F431
+:10C9E0002023A4BB659872E736D10DD44AAC14520B
+:10C9F00003B2ABAE84ED4842ECF20EC81F22448C69
+:10CA00001AE3A11C59716ACF9116EC970980D0EEF8
+:10CA10000D8C680BB5A8785A3DFFDB0AB19D440028
+:10CA20005C38845D7BD95DF573FD9D1315C356F2AB
+:10CA3000F4DD5B3B87397A40AA3D864DCFC1DA6D84
+:10CA400021C5908941037475DDC6F2A0D62DD1BAF7
+:10CA5000147FA782335B34870E861272768E509CC9
+:10CA60002D8105D1EC390493CFBBDE5E70DE6EA361
+:10CA7000D9D0D57B6DDCC9C76875B6E63D9EB93E99
+:10CA80009791C6E8DBF6493F08A317C98C35EA67DA
+:10CA900087119F3B2E61EF152D8966A5F9E27DBBBD
+:10CAA000D6C0708B70CAE64B2FC1A5FBB772CBBD49
+:10CAB0001EC9AC1FBF24315B9C00F0112CCB332E60
+:10CAC000DA1A8BBFD88E1A40FB882ECB771D32DD49
+:10CAD000511EDD77DF7B434478C449BD75DD835645
+:10CAE000986D45F5B54A069E55A235C26EAAF98BDA
+:10CAF000B2CC1A5AF8635E5F04B1A0A2EB48C2F54B
+:10CB0000D11BC945F808537F5FDDF4A2FA76E7919F
+:10CB1000BB15365561AECCAC007B71726A0D621DDF
+:10CB2000E246BB4217592D18051A92A5DD2024B7FD
+:10CB3000958D65A3ACFD71FDC3DFB1672923C835B1
+:10CB400079414C57E33F9785215399B0E1D53C514A
+:10CB5000243B81EC4887D7623C4F3A609FD875549C
+:10CB60007121BBDE9908D1E64105BF226C0BD1488B
+:10CB70009BC47E3E1BC6581F9A50EFB9582868EDDB
+:10CB80006383936D10B65A2EA58ED9347C54CE9AF9
+:10CB90009640193C6470DDC8E8D141C02424783B3C
+:10CBA0009073AE7717330A6B7B001A1FC99D3D3C0B
+:10CBB000984A40C0BB3ADFFCE0FD88442D2315F3C2
+:10CBC0005E3D6A17806FAAF079420F6C414FE634E0
+:10CBD00085052EEABE5553A4ECB1A85569D310F5CE
+:10CBE000AD4C7DEC6B2FDE6BBE319F29F0E987DA0F
+:10CBF00057644DB972B41D4EE0AE6762B816C26399
+:10CC00006D2DFFA1F22DB2C4F9AFE8F29BFDB05833
+:10CC1000DEE62D6E4B77E594391CC57EAEEFD61F50
+:10CC2000DBED16BB26C855AD4A6CBE47427DFBE224
+:10CC300000FB9929090C91451DE6076FA72C05BB40
+:10CC40000DE2801209102562B8B39D2CD91F1FA9CF
+:10CC500004C449FA7BF50FA850FF87131D047442E2
+:10CC60005157C6852B7B99A5F24AE7FAFB47599A9B
+:10CC7000E2C2B82E7D6143A13769941C032968F88C
+:10CC80008718438AD27FC3CDF7B60A5216C8281830
+:10CC9000FB3D4D84D57D9CEEDCC46E2BEC1B4BDF45
+:10CCA000381A7AB6B873F3011DEA97595987480BB9
+:10CCB000E2AD45E2556D9E84E9FE52A7AD323AA140
+:10CCC000C6CD7CA902D2DF7A291C3516BE9EC57F4F
+:10CCD000384717387DF827D8C5BE517473B6DFFCC6
+:10CCE00076BB1C47711F73EEE99FDE9C593A0E67B5
+:10CCF000C77BC92C82C36718CD044021776B36CE21
+:10CD0000015A52142E5753B8A2E83BB9D872FDD637
+:10CD10000DEC7578B171B0CC23BB2C45DF7D04F6EA
+:10CD20003D2005C31FDE89878D81A07AA11B660483
+:10CD30004C84537E1F00EE91E806647A8EA98DAB79
+:10CD4000D0430591D80201174CDAD9AF71167A6039
+:10CD5000C7A4E3129AC0C92D379FDA7501A1A1E6D5
+:10CD6000E1AA1D123E9EC1EB3E7D71C5EB8D147094
+:10CD7000C38BB3AE6559F5BB6D149D17722C40E99A
+:10CD8000044E14268A76A03818464AAD5F90F48681
+:10CD900083D6620886CDE6F2D24C3B045D9262D225
+:10CDA0005B38D481C6022D5A7357AD48ABA23A2BDB
+:10CDB0008CC47C511EE05E84227DBCAC988A331EFC
+:10CDC00058E4D9D58E6304ACA2FF3D5F59A1F2634C
+:10CDD0002641351E6E57D423807F7D2717153FDEF1
+:10CDE0001451C696AE64F00ED2CD4D146FB50250FC
+:10CDF00043BFDB2600DFB7D936AF6DEFE4DB80B68B
+:10CE00006E5E380EA9BB2EFD220C18DFDA29D4A5E0
+:10CE1000B71883C1EEB731DBDF15C6CEC1447F340E
+:10CE200018652690B8009605BE1C3E74239CBCB4C1
+:10CE30001A45B6149C4DE77E66CDC46DC1D3A116CC
+:10CE4000562037EF16C27066528E0D596D1F12B400
+:10CE50004BCEE26D2EA688176A4D1FE3482BF612C3
+:10CE600028FC53AEE34B1C974C67111BDE54DD7757
+:10CE7000BCD1F1A582300913178FB12EB78785F188
+:10CE80003469F392C6414DE9C1AB3BF484BAB01C9E
+:10CE90002D2A49AA5A27949B8B82013A65B7C8B1BB
+:10CEA0003C66B436544171C4634B12C408CD01EDE5
+:10CEB000C8672655F9F040B09ECEB45619AEC3915E
+:10CEC000526A02222CD7AA750D850752E71527F35F
+:10CED0006341F1A6A56222895170A3216384FF08F2
+:10CEE000ABD5A900B2CDB3864D81E9B56D776F554D
+:10CEF0008BE9ED77C0CCEFFF463E1D74EEF6A087C0
+:10CF000033B72349E5178488B3F7192C264D4437E6
+:10CF10008DA33C208595F5ECF4233AA2D156985F79
+:10CF20001C5A7D7EF12BAF8C084CB3D7BE344566BE
+:10CF3000778414CA7F9FA99F8D41AECDBF5A8D3093
+:10CF40008868E393011EF4BC0DAE13FDA11EEBEF48
+:10CF500049041EC0B2E2746908730B11C30158473B
+:10CF600047D9FB8106F9F3122AA39CC743B66FB8D1
+:10CF7000A4FE6C8B88644F5D9FB534AA32C42D2EFD
+:10CF800060008A1FC6B93DAEB7501918CECA86C414
+:10CF9000419AD001A19154D45F99C512393D69C01D
+:10CFA00059E74AB7C78564897920961DEAD45CBCE5
+:10CFB000E29263FC8E283C6A312E8D86B766F63885
+:10CFC000A16143614B6D3691D7EAD98885F1ACDF19
+:10CFD000739E4069FA98B15F6FBF0FE938FBDBE0E1
+:10CFE00086D4E31945CB47B0A1156B14E59D2C33CE
+:10CFF000D3490BA8995FA6D77F6A938EF493F189E2
+:10D000005AE73B4C1763CD98D5319CD24C49AF5F62
+:10D01000D0BC1DA9891A9E616632467A8785A456BE
+:10D02000D4BA1D09116722CC6E36C319AF64DA5227
+:10D03000DA959E5D6DB3A1D1CA629FF2CF756B8404
+:10D04000F9DC8DF95799EDB130579A3B0F425EC923
+:10D05000C63F63046C04E7DD3193EB18E4428E8D28
+:10D0600029E9F77CFD502055CB813AFFA9B3FF0B8E
+:10D07000AAE68A49C1B150FD354F0DC03000DCE150
+:10D080001ACE218B37EFD931C88E6A4C01F4213A80
+:10D0900060911AEE22FECBF9B70BB2890A982CD018
+:10D0A000ADED12A9D1BC565ACBDFC0F88982116907
+:10D0B000D3C6BFF494828254273A0CD45337D01B82
+:10D0C00019D82C3F70841AD73C2DD0BDB453DBF94E
+:10D0D00042C88269E061CAF6F4EFE0032847353FB1
+:10D0E0006D985B38F1EBA4CFADC168F44B8EE72EA1
+:10D0F000AC3456FBEE46AE60C57FDE78F881F6B7FD
+:10D10000412120B429DC25585CB00352C02C77F0B3
+:10D11000DBEA132493E7B067120D059277659B3E17
+:10D12000827DFABEEEA7E64FC4D88CF987F0A27DC7
+:10D13000AEE90B01D53ADA2DDD2F99F8C6CE85334D
+:10D140000E8A93DACDA9C3DCDF5845A8CF4B6748D8
+:10D1500007684B30EBBD99EDDD150A2894837A50B2
+:10D160004240038112225B9942E89E102D3012EC5E
+:10D170007F94443CBBBA70DA714D85C9218B926FA4
+:10D18000E364D7D10381E97C90F93C3CA989EEC7DF
+:10D190008684DACF8DEB629096296CE81C485A4C55
+:10D1A0006CDB23A2AA6A1155E483CA64BFA747D4E3
+:10D1B000CA999E34CCB50B70BEB83081EAE6EABCA1
+:10D1C000C91DB1EAAA3CE91768BA5E728EDE3C015D
+:10D1D000138E8FBAEEC4A16B97D12A6DE639E6DBC8
+:10D1E00032B2E4808D4ED5C0F5E69051DC64DF0F9D
+:10D1F000D363F956630D6B6BB00C818A6511F151E5
+:10D200009D96F52DA700018939D9A85C96A8104DE7
+:10D21000A2804A84C1BF106A7FCF55854C5D76F0ED
+:10D22000B70841E72537CE071759A7992878088806
+:10D2300075B502DF8F2513222FA0EC66714FB87CE5
+:10D240000C13B62DB9AFBBBD17A1E02A115D04AC1C
+:10D25000D07991AC5C760D74F4583D485F20EEAE09
+:10D26000103B069E9C0F79F2D42F25E4037B3DCD25
+:10D270009C95FBD3E73B4309299221F22AA92A5422
+:10D280006883567A1F022024AD85F2B0844A9754F1
+:10D29000FF71B10B8AAC08E6B3166FB184AF2DE80D
+:10D2A0001B52881E8ACF583A93C7A9A5DC39E36B75
+:10D2B0005878C721F2435C63E3C1E9E3546BE98D1D
+:10D2C0006D061CFBB6D41C8572E29B2E3CB5D67253
+:10D2D000531C1DFEF0075157C551F866B1E825945F
+:10D2E000CB1F26288EF57284B4D98A4BDBF78ABF10
+:10D2F000E6B2C58CAA9AA30870DF838BE18F383B16
+:10D30000EBB075F414F6AC0116711E265C3FA20E4C
+:10D3100054035B218D4F37592F9166674C92B7B9F3
+:10D32000073B870BE74CEAFCF805815D365780A682
+:10D33000D5E613DBC111F0D04C2BD8CDF7A390C6A6
+:10D340004AEE8E02343B0E8E4F27CC30769356F247
+:10D35000EC5B9BE8B04AD6BD3A834CF90A61F5FB19
+:10D360003372A25F6BADB7F0708206A6BB8A9A5B80
+:10D3700094EEA654CCA1087AC569E5B66086029001
+:10D380006B398E67C5CBC06568B60AFDA1DDBE3DB1
+:10D3900017AD71DF5EF0D13D8E79835023EA3C53A7
+:10D3A0003946A0D7C4297735B04B2F8154EF056B90
+:10D3B000A96FBF2CEC62C70AB463D82041095DCFC6
+:10D3C0003D1C43AC7E1DC09D1244EF157551FB35CD
+:10D3D0007D42D6F555675750B0577B5CB765795C91
+:10D3E0008AE0F504711EC552A7C279F1C599425B66
+:10D3F0003D33AE68742374D016A8A595F0368CEF33
+:10D400002E5E5B21EC90C2C77BF26A3AB59E492939
+:10D41000AE339A298A9E3F13113E2597141F85AE7D
+:10D420006254AE2311AA753E035B5AC915E4586CC9
+:10D430001763240740F6360AF014FD11F0D7DC0D0F
+:10D44000E159369B5562516304AAC9E71DEC8DB3BF
+:10D45000A674BEE3172E42E883D0626A30A6498ED6
+:10D46000366E1CFE98710F050169085E32F81DC703
+:10D470009278080B984DD359CAE36CF3642345594D
+:10D48000B2B7C269482207438C339158B425654826
+:10D49000C96FB615C4376745CBAC678DE4B0AB6DCB
+:10D4A00087BE29A13D6197EF7103BB9F0373946B06
+:10D4B000445AED642E3695621D7C092B4DC1F04314
+:10D4C00080BA760D5572E006AC21D3BD88EDD596B5
+:10D4D000126663BBAD703AB125CF28ABCFF45DE0E7
+:10D4E000518AF830ECEC4CAA7FBB87E993FDE56EDE
+:10D4F000EBE84A73D0C08AEF9CA5C1004DC6AF4C83
+:10D5000097B4E9C0E0CD7A90C2053C904B8FBED174
+:10D51000EB482F80CDBBFCD505FDE1A0EFCC6A47E1
+:10D52000506B36F2718069F765617DF0838010B1D0
+:10D53000C305535ACCF0E31FFC86F54AC041381CA2
+:10D54000D9421D6B3A3F2FD1E043C58AA6E34FBFB6
+:10D5500039494B0F843E9687F5708A14F80517AF4A
+:10D56000DDF819D296922C777998F41A5D87C6085F
+:10D5700097C8AFB48D81BC04090B645103F3884C88
+:10D5800018F8C3CFD1515797C7DB899EE52DE0909E
+:10D59000FA7C7864DAAE6050C0F40411C764D085B8
+:10D5A0004598397E8353613A930A7F9A49443A3BBE
+:10D5B000B71A6B3C8C3C3E47965D54C66EA90BC1B6
+:10D5C000D9973935F0AD2FF80349CE905EE0053B91
+:10D5D0001056B2D5C8A7F3D439576031AD05399686
+:10D5E000338AF87FC0404BDD76CE93F8F9F41F3BC9
+:10D5F0008D9C635CE9D2A52FDC37C3F60B8754FD05
+:10D60000044C80A291A710EA318FEC3CE6A5328E43
+:10D6100008EA2D3092CDC8BAEBDBD9DE940FD344A3
+:10D6200016524F81652D49C7FCED1C657E69EA22C3
+:10D63000831956496DF572406FA609DF4ACECBECCF
+:10D64000BF59A9D252A3A6D0B14FA5819A93C16167
+:10D650003159789D77C59D6684F94305F58B00485F
+:10D66000B059659EF3565C0104C59F5E011E115AB8
+:10D6700053CC7FF79CA0FE60AE51ED5301B44FA296
+:10D680002E68946FF127C31F0173F872933EA95758
+:10D690007F96F9A5F30E587D91052BF10DB85E9696
+:10D6A0002C47A61112ED9BAEE27BF87E897058E202
+:10D6B000AE4714E8E14EBB4F2D2409825F9CFA521D
+:10D6C0006B7DEBA987A3803F7B4C90B35ACCFC6960
+:10D6D00061599B1C0CD24451D4D1EE09F0D3B5DA78
+:10D6E00039BD7E058BC118600C5E779444401F1FC6
+:10D6F0009C39622836D1844D3D63145DC84BE6B930
+:10D700001DBDD0C3E3B727FCF8A67C725FAE740DD5
+:10D710008B8A25A42AED1634A8EBE6F130A0CF7E43
+:10D72000B6FDB9C73518A7931569AC765BFE4427DB
+:10D730000D8E2E8F5F136357DD67DA19690A6E92BB
+:10D740009B6B5B77EC11D9BD8A9CEF05F62CB5433A
+:10D75000E389972F36BC28E28B2CE7B81F7A80F13B
+:10D760002337ADD407E6554415C25226EBD3C699EC
+:10D77000086373672E92CC3B8A1F3120E7EA0F279C
+:10D78000F3A8587428358D7AAC4C4F8EBF54A4EA58
+:10D79000387A90E17103249DAA54945DD8E688E319
+:10D7A0002D77645CABBE8A60D05239DD81378583CA
+:10D7B000565DE6364CED258E312E27FFE995722811
+:10D7C00033800ABC59834E54AA3FE795AA888AA29F
+:10D7D0004463B3A1CF8C15597E82DC21546AF4D7FF
+:10D7E0005D966705A17CB04AA21820CF4DD8574955
+:10D7F00016DBB9466607F5DFCE7ED9D97AB6C2EB1D
+:10D80000F3E6EE600A24BFCD5E5E8CCCC130B34936
+:10D8100028BABD303B8C0424A8A06704AA1571C4A3
+:10D8200086FA60C89F4E9A3D6B417BEFB194E4B29B
+:10D83000ED7FE80D6FA70F1EA144F3F5D6E15E81E1
+:10D840008556000C83ADA61109666E7EA1C346B74E
+:10D850002DDB3CBD0CBE8B5BA6C9D26E994069A086
+:10D86000CAEAD4C632340A23DE3BD6BC276039521A
+:10D87000FBF74E445A4F5FF6EF98A129FA4D00FE90
+:10D88000192B52E141E27F989A81EDE3DBA01ED98A
+:10D890005091CAF86845D5A03DE6ACC6CEA7AA1AF5
+:10D8A000977815DC4697617BE5BD835A802276DC4C
+:10D8B000722895D8CB60425CB09C61A1A8FB1BED9F
+:10D8C000AAE31C111C636264B416517F9064B3A771
+:10D8D000C610D4B44842310C3961C971F314C40E76
+:10D8E000FCB4CD970D64AE05019430F0DA1834EC39
+:10D8F0008BED39D0520B8C1179D230F1576E95B82F
+:10D900000907CC9B1E5A3616B11076D42E8676693E
+:10D91000DA5A91E7F3FF3BD72419FCB3F1BF01C7F3
+:10D920006D528FD8DD52A793F29016CD072CBEB161
+:10D930009E972E5AC7E86937C41C3DBBF65807505E
+:10D94000B4C32D42F085F48E8F5518D417F9A3D1A6
+:10D95000CFAF490E31A69BA2B2059F2EE1A5A6A28C
+:10D96000451FA48DACBD44F003AFFFBA3057B79448
+:10D970008F91DD93583B458C32F64296DFAFC2481B
+:10D98000E61F7A3DEA95904BCC0EC4F43362C3F7A0
+:10D9900015A15EEAA4C2972C8B262ED42BB0DFE50E
+:10D9A00087B704987555F84663CA2F306C6F251EEB
+:10D9B0009FD5FF0C7B88346A04824872C86EE332BC
+:10D9C00057B953DF1B9EA1DD24BBDC46D6D4B5730B
+:10D9D000D7478A32AE54D63D67F8E3BFA65265CC2E
+:10D9E000E7DC5BE7BCF5A3EAE3CCDC253EF5810E82
+:10D9F0003B62EF8D725710B05DF1F7BA9AD5A0D6A1
+:10DA0000399EA65CB4679DB4686C84792301F2C525
+:10DA1000E026C350EDE6F933101D4BF4834CE96763
+:10DA2000C653961AC9DBADCA70F2D1ACBE62C4D27D
+:10DA3000FF04C14B0F419D25491B140C25E53FA94F
+:10DA40005AF8009272D71AEF1951BC8160CED1C238
+:10DA5000071B2C1DB289E52A40CA80F5F0B9AD5EDE
+:10DA60000751200E25178B8DC668462BC00CC78C1E
+:10DA700046653B94FD292EB4825D9F94DCB0C010B6
+:10DA800093B1ABBCBE8E74024FB56ED31598CD2941
+:10DA9000654D765FD0875066B86500D8AE88A261C4
+:10DAA000EDF898F9D7F6E204ED4317562BCDF89B25
+:10DAB0007DA8B3708C74B7FB6BE6B546AFA46293D8
+:10DAC0004195755FE9163B628F077DA66AF886D29D
+:10DAD0009318A7F7D995F9D1CFF01881CB1F2C4314
+:10DAE000A0C3FCF209263EF2AB486EAACBBFDDBE56
+:10DAF00041A6E5DD766DD6DC6FE44C2DDCE76049B0
+:10DB0000175B666E90C82942255D9777B754241A33
+:10DB1000A7B9E0FE1227CF4B4EA49F653EF2D3ABD0
+:10DB20007959411B71A6CCEFDA79E78542B690C8E6
+:10DB30000B0BDAFDB51483EE1570D31F55E487ABDC
+:10DB4000A0281445DB2A722AF96A1D249F8924EC37
+:10DB5000704572AC9D6ADD389BD91393B4507EEA50
+:10DB60002DF736CEF5A76CFFED22E495DFAC01BFB3
+:10DB7000C2C42773FC00EF41E1E43E6DFAAA8219AA
+:10DB80007C9CBC0F392F3EE80E39C7F71B5496C555
+:10DB900080DB157307E96C5E715DE13CCC842F7B03
+:10DBA00066ECE5C538B111401438D04A48288EAD2E
+:10DBB0001EE1471A961981600A7F31827146BB7C4B
+:10DBC0005150A7FE2396F1DEB9B9D5012871A24ABA
+:10DBD0006293B0BCFF46BB34C578FEA25E80473975
+:10DBE000495E2073ECD58281C90628E21045306376
+:10DBF0007AF2C774776597973EFC3FE5667159F1F5
+:10DC0000DC61377CED275B6B9E14DFF899BE6C916D
+:10DC10008646649270A0F6AD11FF795E280C11441F
+:10DC2000751F46C5083C573F1209D866ED27053ACF
+:10DC30009049CC46D93002A2B3F12252ADF38B8980
+:10DC4000766C6739D4F5FBE1B1A22F35214BB0A931
+:10DC5000A54E08AE0B85960ADCBBFB7694C1F5CCCD
+:10DC60006A3176C95DFC7939C4DC48F9B6825BB6A5
+:10DC7000BA7CEA90075A51CA67852AA0B5206EB3CC
+:10DC8000D5ECC7B1FCB607FE4B75F2A45D0B118352
+:10DC900040FB833C24E546693B2CB5E9F42AD05C83
+:10DCA0004FBB911F1FA00D01556010DA3F8022EE7F
+:10DCB000A84F5812A317DAC4E6E9BAED5339F86C45
+:10DCC0008AE6C9586E442ADFE9E4654F9A8287E400
+:10DCD0000438CC06C89A3B6B9D398A1BF704940420
+:10DCE0003D719861EF875E7E74C5F6D012FA50E7F9
+:10DCF0000A864AB81C40522CE039850A69A41710DC
+:10DD00006D55E9254597061B58C16F9275E526802C
+:10DD100020EEA4A8A2A3DE4A4556659477C6C59016
+:10DD2000063DE1BACEC9538E2B19669B843DC6D100
+:10DD300038F5CCF1DC196DE3683AB7F0E5CA32CEBC
+:10DD4000FBC6B66FE449F1C13BF430F0A0FD31F7FA
+:10DD5000A2C602DC6508CD380E38956ACF5E8AC748
+:10DD600026C3FBF3EC0991BF7186815C09D629E0DB
+:10DD70004704FD4550C15D8BE78F6A72D4748AD623
+:10DD800094634E4CDF2FEC6153B31B7EBD205CFAD5
+:10DD90009F7AE2DFD04AFF32E8BD5FE2E3708D3860
+:10DDA000ED45CF531ADA18966BA5C7AE2D57FC4E2A
+:10DDB000879BD941B12FD3E9BC9C0DA94D26A8FB67
+:10DDC000E443B0BE3D38454CF8D5C86BF331A76A83
+:10DDD000A463AF3DF7C6B62541FF737F0C0322C095
+:10DDE00058AD43D28EE376B95066295E99DD7F4FF8
+:10DDF00034DE75382B9FF84BE28A8A974A563CB43A
+:10DE0000EAD447F37693B9B14A6D5A2D06908081D2
+:10DE1000CFB2582DCB552DAC23E42D6EEF283526EF
+:10DE200048DD798417C5391A7542637A1B7D3888B5
+:10DE30006692AE25F0EC73F32CF86C3C404E740601
+:10DE4000DD72EF4D9C63A6841B3FD440A68A15DF8C
+:10DE50005094CF9DB8769C97723D69C49D8D5E02AB
+:10DE600093A6CE339D3AB594ABF7A79D63118DBFB2
+:10DE700089332CD525E2DA4B825F1EB547E33B821E
+:10DE80000BDDC57D2D64550DB5E195E57970D505A2
+:10DE90008795A57CAEDD45CCBE64CA99CB6CFD43AD
+:10DEA000F4BFA81346FA6F93C7AD76BB063D3D4756
+:10DEB0002039EB622D4F1146652FDBA48420A2A6EA
+:10DEC000E61F9FEABA5790310A20A0A94752A1FC49
+:10DED00046744836E0283FFA18F8F46321EF499F6A
+:10DEE0003C0DE02820EC204527796E6CF2E5587750
+:10DEF0005D2D34B070D6C8337AC8F6FB00D94A67B6
+:10DF00001412AE95EB613132F5E5DE92E8AE13CF37
+:10DF1000230E26CB8FAF6AEBF5DC8D746C28DADE2E
+:10DF20004D076556E5387AFC3936CE7BE6D309C312
+:10DF3000E07F2C26DDEC5465A13CFA06FB17825BE2
+:10DF40004777EC0ED36A4531807C9A902407849DF4
+:10DF5000ED30DBEFEE3720528350ACD7558762B8F7
+:10DF60000547639B419B353E61C37174CBCE6EAE5A
+:10DF700054776A01D660BBA7D571B40CD345566EF1
+:10DF800094765905BC64CE5A304F4E7D430C252102
+:10DF900017B703F9545DA21A56A36926FE38312B30
+:10DFA000955F97419385B8C92742F2E5322D2572D6
+:10DFB00097B8943EEC71568E1543386B63362253F6
+:10DFC000D983A40015E0725CF75FD27F6744F8DB69
+:10DFD00028C5A44F71D1DA52D9949BE27CE69AFF0E
+:10DFE0001CD37C1F2A0C7047BC98F9CE2D05206FDE
+:10DFF0008FBDCDE9F184491C7C4FA22CDB4919E38C
+:10E00000E7A1FB16EFDC640EF2200500D6A6368EE3
+:10E010001FF043F1F964336C0D7350A0A75BDB363E
+:10E02000395E47958F1FA85BBE4E81A9496BA459E5
+:10E03000EAF1AF60A5694D7BC82284DABB75751221
+:10E040007ED597D744E13DFBBE3CF6F2FFD9ECFB11
+:10E050009DFAAC95A1E7F31A1796E74B5D6EEDAC10
+:10E06000C023C36889E3FD13971EBC1E2937E1A7AF
+:10E07000D99F5C1DD9DCD07FDC89013891B5F29F36
+:10E080003E6414FC3F446A5D3F00558DFD7EA40153
+:10E0900021F5D1416FE94289ADF11A4B1143C132EB
+:10E0A0008E230606EA7C42E77C22B615ED401DDF92
+:10E0B000688BDCAD37AAC4417BFB01D7EC42601210
+:10E0C0005DE7257EBBBB6A5736CDD9ABBF1E5C036F
+:10E0D0005BFA36D797966591133E087FABCA7FAB44
+:10E0E000B0ED3DE83326664BF3F5822B5E24F6084F
+:10E0F0006D583B99DF42E84FBFC09A69E388CF0D66
+:10E10000CA89A8244D970BF2C9DC6ED20D3D054497
+:10E110004EE14775DF5B59B443278C7D32878451CC
+:10E120001A22EF9B04A51181CFBF8E19881946FBD7
+:10E13000D56CA146BF1DCEC0A81E8BF64465DF2955
+:10E1400038D3667F38F453ADA520D1957A75AC07E6
+:10E15000959114D55EB3FD3D9DCAE9EEFDA1A428BD
+:10E16000A0818C28E60960AFC3487156AC53FA060B
+:10E17000E31251592F11C9097AB322752A9853DD38
+:10E1800006254ADF7F963F5E772A51C6ACCCB03079
+:10E190008801CAAAAD8EAD6D45AEC9A9661CB08E08
+:10E1A0008F5333F521D7DCE4BBAC14090C67BB9764
+:10E1B000485CB038CFA78DE1370BADC94111D78589
+:10E1C000EFF89D5DAE1C3275E25531D74C59BBFC62
+:10E1D000F814D418A5C48711A566676724CD98EEF6
+:10E1E000AA9D1FAB72EDA52A7C570445D1DDEC1525
+:10E1F0001DEB55E53BAE1DF4012C5D61594AF9FE5E
+:10E2000089DB90FE155A8741660F09EF3552130FCF
+:10E2100006BCEED4F9E8CD344A214AADD87F4D4052
+:10E220009E069D619C2445FFFF7570954187DEEF3A
+:10E230003522C332A1DD3B4AAC22DC4C3AC8FE5C3D
+:10E2400056524A942EDCAA88EFC50A322CE0C84FF9
+:10E25000EA84B04AD6E0C5DFF152AC8B42AADDE4D5
+:10E2600099D8D79E8CDF49012539F8C7FCE1D770D2
+:10E27000C96B0B04D5E481AD0573B0934FFD60C746
+:10E28000085D3685D8A2E1666F048A60FF183156B2
+:10E29000F62EAA0DB5A3ECE623FEAC7F58BF9D84F5
+:10E2A000B7E8CE72A2D88D91E7C352F32404FEA43E
+:10E2B0005010BEE0674148B696804CAF8A33E21CEE
+:10E2C00076879897478D258B4BA1C29D08A7592823
+:10E2D0008A547BD74B605BC462B24B1B60E040AC9E
+:10E2E00078CA77AF8C9D1AB90BC50D45646B24565F
+:10E2F0004E139633041968610AD18FF409663055BC
+:10E3000092100BD3DD8DA3151B3142905914505F31
+:10E31000A4F7E41EAE48C3894A60E8F6A321F1A63B
+:10E320009660DF28EA70C6ABBEDD1E8A33CAD1C153
+:10E33000333222A3D5C59C9428502F658976E7E512
+:10E340000E77C3EFCFE272ABF1FC41B22160F60D64
+:10E35000DDDC96724A36618657B85578EFB43418CA
+:10E360001EE38B68D502C265FEC972484A494B99C3
+:10E37000B534B3A462FE8300DF27FEDFF3177B977B
+:10E3800075E639084578C76848BC7750D78DE826C8
+:10E39000E078B46C456FA134B2BD12F06C0A89AF5D
+:10E3A0004E115CB532C0FB086C5F119E3D5F17A13A
+:10E3B0004BDBA9E4579096BCA46EDCA1F24AC127BE
+:10E3C000934626CFEE38AB7CA754190F0B5AFBC4EB
+:10E3D000ED58E34FB95EB3F975C9E69C6AEF06855F
+:10E3E0000C0CA961CC2436307BA97CF4E65F2E921C
+:10E3F0009D321BC7032242A0131E8ABF2F07C545AB
+:10E40000E15BCCB787586A98FA8EFC83016F0C46A3
+:10E410004E43A3262341741F28FB970402AF128D9D
+:10E42000AB4278B7E29E358A865F1962F0A7E9F2BF
+:10E430007F24DF263925FA735CE2E9F96D0E6A055F
+:10E44000C478EF5B67A7FFA9210CE04B33F770F8A6
+:10E450002388FA26E3B0119665541567043EF9EE59
+:10E460009A7F42BA6504933D33ECA68C9817D48DFD
+:10E47000A8ADEE9D05CBF5321674B4CAD75CE4D4D2
+:10E480001B8197CA6ED3944C30E2098FB50035AA30
+:10E49000C14CD83EA3EC4451A925CBE787C78EE7F2
+:10E4A000EFA987C80142A55D0984A0DC83C01A08D2
+:10E4B000CA40C584AC1236CC6B0EC4CFB6109E6475
+:10E4C000DF2C8FC623F047AB6DAC83824426B4D9D2
+:10E4D00097B600608550ABCA08C8926F6EFC3EB01C
+:10E4E00009CEC852B89473F87F60E94B001F94F5C9
+:10E4F000AD563C374A9D3D25F0DEEB45970993C963
+:10E500001AFB90355E78FA3980ECB211518C77CDD8
+:10E51000CB7DF922C11765640252F0FD27CF1AF6B0
+:10E520009B9E364C68A97433B93734BB26E2FA6D2A
+:10E53000651E20B7524429FA5E5BBC01738E0D6ADA
+:10E54000E4314860FD0D36C437C69B0C833CB6CF22
+:10E55000021BB026B891384B92309880A90410EE77
+:10E5600036095BE83AA56C7D4FA4C5ED3FE3B4F3F3
+:10E570002559DEAD0F8EF41A22FB06FB1E6DEF75DA
+:10E580001D97609C7D45CFB121DC1E33DE42F3AE8A
+:10E590005967B215449B85CE85A139B039A549F19B
+:10E5A00069AF6D239160CA81C4C1F6D35526AAFD17
+:10E5B00099BDD1E89A7DF628E29329F141B422650C
+:10E5C00049BD00DF4CC946D846C15C0B57B2917AB1
+:10E5D0006D2DA9211AA0A613539D7FEB48C3D68D9C
+:10E5E0002B510378962421C60440C3518DB2466155
+:10E5F000828E72677E45879A64EDA1DDE10055D970
+:10E60000D9A8354CFB928AE17FB5851C9A36048DDA
+:10E610007849871E3ACF37EF7158CD0AF69B46F0FE
+:10E6200078BD73EB3615F22D59D303695760C5AE2B
+:10E63000854DB7462C491FB0CB0A7F1FA69A0631DD
+:10E64000A49339D7F4C3BDAA10512EA2D6B65D1C2F
+:10E6500061A89A206951918649F8214ADC70DA8BC9
+:10E660002D63F05BA798CC693C346142B7773F2AB1
+:10E67000366BB8AF05CFA7B8CB340975696C224E9D
+:10E68000E531133956484CD154F9D95D885DFE8C7B
+:10E690007D988BF9018CEE53BF5EED80EA5C02E45D
+:10E6A000FFEF02531B0E944F3694E900DCCEDEDB05
+:10E6B0001C4D64C84683CBCDCACCC6D289B9C1E251
+:10E6C0001AAF8EA56315C2FCFB1FEF07652F10E67E
+:10E6D000550D1316F75057BF7D0D43143E5A30B2F7
+:10E6E00061CF9E05A3D041BE24ED4842D9E3E4B7F3
+:10E6F0008522BAD729D5DEE76459BC81615E49A479
+:10E700000EEEB32E588B8F8E4520457B0B30508DEF
+:10E710008C1CC414B4C3138C55B3E5E95F23F164B6
+:10E7200040493B296928A51A50A3FFD952E32EBEC0
+:10E73000255D11AE3D25E675A59649821F604248CC
+:10E74000BE7DDC8C177C15365F5B3EBBDE9A67F9BD
+:10E750005EABDB2DECBFEB9AB45A6C62E8BF335D65
+:10E760006A104E52BF8A756D3360F8CE5E4E00BAA5
+:10E77000F5B543707F14EB5A09EB68BFFD30F7B273
+:10E78000E19120668E74F4067E318AD8C37AABD0CC
+:10E79000C62B9A8B47A144D772D20877C3942CF228
+:10E7A000491913A83D58CE0F80795964AC311365CF
+:10E7B0003915AC71B5DF8F9563303E099B7F7EFCC8
+:10E7C0006F731D32C3F8913D69FF483893E5031913
+:10E7D0004E26E795DDA42951578ABCEE204C9F5860
+:10E7E0004D18EF0F4DCEE5885E196A454D8ED30169
+:10E7F0004CF89045A7E97E6936EF3A16797B4BB322
+:10E800006A34BDB324D47F581F6D31F9A02E7BAD7F
+:10E810008158047A412144DA739C4AB114289172D8
+:10E8200045D175E3B7CC1D2AC280285E22293576F2
+:10E83000C49D8153A19465BBE926744802ABAD62C7
+:10E8400017A398542E29D6D1495D06DFCB7CFACF89
+:10E850008D66A3825D406124A958A288A18B019096
+:10E8600032A4601FB58732F70AAD48AED53EEF42FD
+:10E8700036A010F5B1620DEF9794C3114AF12678D6
+:10E8800065BAE6CBBA39EFA16FB0701B060993AA3F
+:10E890005A57B025C46C9D6F180AACA3AF23AB9236
+:10E8A00033E42A802A2797A4EE45385C9F4F14C88A
+:10E8B000387DCEA6601579B0467EB1DC4B7C8532C2
+:10E8C00037E6A2E6D8AAF6FB7E9B3047243BE3D787
+:10E8D00028BAE173DAC4DC6848E6F626FD381A2B5C
+:10E8E00086CCE5B6B71558011A6EE413C0676DD42F
+:10E8F000D30FEABF0063873BE47AF6487CDE8515D8
+:10E90000EAE9B74C8571A7591ACEA11812DC61A4A7
+:10E910005D36B7E42CEABCBC4BBC7385D319A9D3D4
+:10E92000B8DEACD3C1540FB4E01050C2063F6FC183
+:10E930006FC4460B66B0A8DF8BCBAD38F0E396D141
+:10E94000F85C8928AADF1F120C48A174037EF586A3
+:10E95000486C890B6AC20D79D299A8DBFF02218825
+:10E960000683A0AC0392087CE5E1F29B3F871D6B18
+:10E9700069E039CB388CF94E524839F0A44C77D93C
+:10E98000B06980BA67B1622D4DE677291D06D12E98
+:10E990006EEC82EA04F0231EA6310BA7CA3051594F
+:10E9A00065CB196707A57D39285E77991CCBD802FE
+:10E9B000F02837EF17531B6AE37E35781EF0BD5EF3
+:10E9C000006F3583F458FE5BEA7CB64380842EC02A
+:10E9D000C5FF82F91831140A1633A5B929447A30D3
+:10E9E0009E1F1FCC02B69DB59768D64FE448068D92
+:10E9F0005574D003519E8F2CFEB06C26DE83766B4F
+:10EA00007C96E0F20D4D24F85F908CBDE423F92054
+:10EA1000BE390BF84987E2093154985F474AFCB583
+:10EA2000CA4F4FB646DCE85F82585429EDA9A79239
+:10EA300037BF61246B3BFBBE9C31C23149DD9A2E4E
+:10EA400082F4DA2D4D752C46DB0B91BFC5B73A7AAF
+:10EA500062552699EC9C7D6B25DF43975F956A6232
+:10EA6000A3C091A1C1E2F704E50827FAD47F99B6C3
+:10EA70006E48A39237AAF8F3A55161FE07894415A1
+:10EA800029878218D7BA8519EF7FC907D28154F236
+:10EA90000FE459D70361EB91D3465A430FE8B5FC15
+:10EAA000C6278207E04098FFA00C227F06FAEFED10
+:10EAB0001ED9179F4F8532A7B918CB2057C9CECC86
+:10EAC000E67B4F2C79AED7385B264518A9222ADA87
+:10EAD000094609E17729BC92725D8849809FE3BFAE
+:10EAE000115D99983D1C672CD2B1595DBC03EF8C28
+:10EAF000C0DF58E5B9FB11AF8DA62AC1AED71546C8
+:10EB00001F01EBBD05085FBEB90A583DC3D5FCFE29
+:10EB10004A776841DA50AE0A7ABDDB5074A92719EA
+:10EB20002601F51646140B4EFACB9A80B7730F5395
+:10EB30000CF87D117DC21B8D3864CE50902817E2F1
+:10EB4000AA9DE1189DE64AE47EAABCC0F339C01D27
+:10EB50001ED70B4F22A5CD9ED3BC21397C80490CFA
+:10EB60003611F359F8CF8942784EBB27C3138A1662
+:10EB7000D96554E23031DD25DE1A61F53B289A7EF5
+:10EB8000736578CEDB8248777B661EE7EAEAF5514B
+:10EB9000672800DA536B58B5C54049E2C945F99872
+:10EBA000CA81D1E801BB7732343A5EB317DC5495A1
+:10EBB0004671EDF1EC7ADF62EFEE6F8302503D5F5C
+:10EBC000034861909D8BDE9D7ADB1DAF16E3D3DC9D
+:10EBD000E4043D24B1B16315C635CEC8313D3E30A5
+:10EBE0003C7AD4ED5A77DE0BB1E9B858018BF27656
+:10EBF00095252DCED4A61C34D38C108FBC45D16462
+:10EC00001E1145B37E7469F6DD49C2FDC075F63448
+:10EC1000BB3AB29864445B60C0FBF3AE3733EA8121
+:10EC2000BFC771A48B06D33647E37F99808EC3EAB2
+:10EC3000FF9D1BD7E7D1795997B27CD7F270361672
+:10EC400060A554272AFEF7523E39CD794909C4EE12
+:10EC5000E3CFF08009416A88F4E12B38BA1BCD9DDF
+:10EC6000BF666CB376DA72688B6D00E6075C5AE2B9
+:10EC70006B6F77A853599B62CAFDA99B44C861F684
+:10EC8000664D07B137ADE16FF085D52A600A594E60
+:10EC90008AB5DD0D9811FA25191C57E6DF99610038
+:10ECA0006B2F93C01332E3BDD8249D76AA29E3ECE1
+:10ECB000A64C5D90BB5CE60353012CE75507D2EEF2
+:10ECC000C09D53B8FD01FFCB93B4E6709E0806F3D8
+:10ECD000957D4A5282D6C0B5B44E6692CDAED5630C
+:10ECE000BED538749064DB1C0B602291BCB0C8C5E3
+:10ECF000594B1757947DC194899370E0B85D6F7A32
+:10ED000062198ED97BF90040733E5E1D95E2A90120
+:10ED1000E3FD1DB5C883ED20517730D1FD17C5ED5A
+:10ED2000E61CD595896444D44B0B41C1D592B3FA06
+:10ED3000803205C1607D6BE2700F306748E78C80E0
+:10ED4000FB300CAD0562545FD1F3C49A2E12B0674C
+:10ED50002C149763A2C422CB1728F07661A7286EE3
+:10ED6000C1E2271D65CB9D27F3D36F60A9C830A9E9
+:10ED700037660898E21C9A211624890F91E95715E5
+:10ED80004CF3F036B6417FB85B564801E2A9B75E56
+:10ED9000AF9ABB68A118E6C69BD95081F60D88E0F2
+:10EDA000BF5CCEFF97A2119930A507F62D40737175
+:10EDB000B1219E2ACAD4220FCC1599624C1A6563E0
+:10EDC000E0F559C145B0BCC65A6CE8566A211F151A
+:10EDD0009301B0F40E3BE0A32F4567F64FAC4821FA
+:10EDE000E0C9742CA0BCC32F59FFFD38E2F0228F7C
+:10EDF000DD0F51059A11508EECB09309EA65209D04
+:10EE000070A38C2A5C401AE31D77C87BC7999C7657
+:10EE1000616C4ED49AEC939A89B2C6AB49FEF6CC9B
+:10EE2000FB06C760481CC17FAA5CA39F62AE32711B
+:10EE300035B12FAB9F4B79C54D8360215B44FE20DC
+:10EE400070AC011C2C86A8D78674B882AB1C43F129
+:10EE50003868FAC7043B77A18672466EDD550C0808
+:10EE60009A92BCB350B6B3BDB55FE7F41A979B63F3
+:10EE7000484EEF79388D2B7202C0FAE54FC9F94F31
+:10EE8000099CC9F4A34B496D1DBAF36FF5800CF8CA
+:10EE9000E9E3A6DF1FC1DE1ED39E7BFC8EF4B61C09
+:10EEA00000109FDBD4E8003FDDF2B810466D651717
+:10EEB000427CAE07D499A738F992D27C25221172F0
+:10EEC00081F9033E00271D9340E454B755FF1552C6
+:10EED0006B4B17060AC0D698BB224F3F760633A16C
+:10EEE000A891C68FBD2DD8BA8B09ADDC7276607F34
+:10EEF00012BF91116C500AC35FFFF87BEDF5775894
+:10EF0000BBA8099970AE77D835F20D51DC83E5B115
+:10EF10004B7233C0638C107AA3F7EC5786D5B64397
+:10EF2000E46AE53AF3B7745548BF83583E2EBBA256
+:10EF3000F899C635A053280720A2323BC578CE04E5
+:10EF40000AEAC901F1B1DA4FCBCF82B7DC8EBDEE50
+:10EF50003A1930C139D75A91E5AC16BAF2BC3156DC
+:10EF60001BA0D65C7148197EFB271C8DDB039EFD20
+:10EF70004A38E36D8A91BFE0CEB2D6E461A4CF6196
+:10EF80006BF6613729319323E72290345B9BFD2F89
+:10EF9000539F1E5AFB15D96055CCEB13ED4327BF89
+:10EFA000BDB2DA0AD606C50DFCEB5F13532DAA6974
+:10EFB000A8DE54E689FC3AC1AD776760A08DFA55AA
+:10EFC00049F0FEC1F54C6AEDAFEAAC54947F34468B
+:10EFD0009F3B5461AF0C0FB7D1D33243DCD09310B9
+:10EFE00060FC2C0A45A63656443C427708FB223A80
+:10EFF000ACA6538EF16EFD5D6870E61F3AA7F794DC
+:10F00000F3F2EAD5591384BFFAC9565A16CCF6D88A
+:10F010005174C8994651CB945133240E0E71E5FFBB
+:10F02000CDF1929B82D67846789F96BA097965137E
+:10F03000B061D28965E2A70568C9605A17CEF8B1F8
+:10F0400015B43421644A4C6A7DCFC7DEF4657F165F
+:10F050003F6B8252F9C7B33D90432C13DFDEC63FAE
+:10F060005AD4E5683E64CD3E19467D74D70C35917F
+:10F07000870EC940C69ED13FA7F8AFE3B5F9CB7B59
+:10F08000BB5284EF7249D396B677B885FA86B197AA
+:10F090004F1CA52DD950C6952AD07DD8767237EA57
+:10F0A0006A240244602134A18820EF825E56E46322
+:10F0B0003D88FE040029E5CBB311551003EB444B0A
+:10F0C000AF76365C598FB5DE62B7A5065A13FE06D9
+:10F0D0001CD3453694D580358C39C0FAAAA2A1320A
+:10F0E000A6D7B8B057E925943388F17DD06FDFE714
+:10F0F0002B05D21EF7FBB7373AD64131AD1F7A69DF
+:10F1000056E01B1815C77E4B3AD247F50CAE112AB4
+:10F110006893144C056F5C7254C6F911F6872AA2E5
+:10F120000ECB29090005B94452E4E5DB06E5591088
+:10F1300060CC01D4C401B6B7D0A49566ABD761DD6D
+:10F14000FC25FC54CF94233C8B929C646D90ED95F0
+:10F150007CC3188D0C0C0451CF9AF6B7BCD5E4864D
+:10F16000D8FFD19054B8C3D33B0259875C7256A4E0
+:10F1700005E68883E403CA84B04B945B5872BB07EE
+:10F18000E07909449333D455F20D30E9822F70F8B9
+:10F19000C5B402C4FE02B8F092A56E25645D218359
+:10F1A0001B1F1378E24B4172893B558EE72DB1C18D
+:10F1B000019E19A626A5AA3BB616D76C524F7543D9
+:10F1C00035BE6DEAE38B8680D2B809D3CC0EC6DD9E
+:10F1D0005EFC6006E958E84E897B9F6FFFB6C4FE6F
+:10F1E0009CB96258AC3448207C620473CD5B3EE12C
+:10F1F000A186046D2C4B0A54C76E4B953B959283A8
+:10F2000007AD8BC7ABA41BEFDA132A0B25C8F55546
+:10F210002E6EEB7368FD9A3A33872BDB1244AD6B8D
+:10F22000FCA5680C39CDBB7A57C081249FE2047BD2
+:10F2300030A96245264A1A80764D3E23D0503E7250
+:10F24000927C7B3496E5CD906685254FADEE72A21B
+:10F25000A0F7EFA4BC224B0FCE7FD76487B37C828C
+:10F26000306D3DA110793E57AB68EF85BBC3673A5F
+:10F2700048FBBC86F0A24587BD11D42FC00D1B05ED
+:10F280004879265A8FC65FFD53733C21E3CEEC5A72
+:10F290008B610736B1458782BF19B5291292672164
+:10F2A0007FB7B5DE54D221C60F719193E820ED20CF
+:10F2B0001851FFA7A75F748CCEAA263FFB16DDFE70
+:10F2C0008B2A14E5119D19DDEFE60B2413837EA82C
+:10F2D0009892BE9C22E14DBA59E60BDD25F7CCE1B0
+:10F2E0001FA91E80D9155231878592DBD41B0AE1F4
+:10F2F000700BDB15D33E5C6ECFAACABA4A53544F8B
+:10F30000EBAA7B99B32AA8115E2F71147DCB5F2FD6
+:10F310004B37B126391A958EBEA93641237554A7AD
+:10F320003D5BED47A012518F25BCB05FE1F30B6F41
+:10F3300016C402C43644A48DE6AC4316CFD4B04AFA
+:10F34000BE79340C1F030BAA193B43B7684604C4AB
+:10F350002197207E852B3A872CB3A015DAB907B008
+:10F36000FEDCE06A732BF5661EDA249D1E3C1AA8AB
+:10F370005D4EDA225758DC1A2A8157EF335468DA87
+:10F38000C3233AB654F00F1D671DCE15C8CE408F6B
+:10F390006FD6234CC33646FEC4C2FF6535BC75A389
+:10F3A000ACBF46B8218D18C22C9B577BDE7D421620
+:10F3B0004DA424E6AF266E786016D7CE68D15A30B9
+:10F3C0004819E78A745B2803BEF8A6C4B360B3BCCF
+:10F3D00094A0FA1C45639DDB6ACF287672ED1F5C12
+:10F3E000B82A388377E41CB0D8B2D543E09825F822
+:10F3F0007E45849ED6E1747E8749CAEB27B9ED1C11
+:10F40000C7491922EE1F7583D04F13350BED763D9A
+:10F4100043D6BBAA8D765E108A27F33509D3FE8BBF
+:10F420002E441DC5926E50C300E0C4355F04EB0648
+:10F4300083D6BF73DFE8760A00415DF0F19D76C2A6
+:10F44000A2CEB51E92C531CE2D06FF1325E66F78EC
+:10F450001D7BC1943EE4EADF9292066B328A398DBD
+:10F46000226E2424D47AAAEAD8C6140CDBE41A2B20
+:10F470008464966F99DB015081049E3BC83415D695
+:10F48000959FD0B8A2DDA93F10EBBE1671439C8FAB
+:10F490007FB3D368DDCE518BD1DDFB5776E7721C8D
+:10F4A0000DC61068733B2B8AAA28B3F87A8EC597CD
+:10F4B000E2CE3F0B3274BBCAC788384E0CB1EFBDE9
+:10F4C000AC36228554767F59FB40E674BFAC44A924
+:10F4D0002100E3F64BAF998C60504D33DDC3F9A3A7
+:10F4E00064542E51F82C8E1CC63C69F62E7342379C
+:10F4F000E8DD125AC77B94AE077926DE41AE23EFD2
+:10F500008D691B3CA6863F5F725F48961F47BC7A99
+:10F510001A978AE8D6FFA6B0D1CF2291E949C08DCB
+:10F52000DAA8E469AC4429DE7D5CF0ED480B951C5B
+:10F53000E90636A720485C50AF2A58C9A328D2CA8A
+:10F540004E50104F928B11A818D41E01F8811A1832
+:10F55000E81BCEE057F5ED398DF207090CB030D637
+:10F56000E230087A06F20147247805AEAF2D0B365B
+:10F570007DA9B12382C53DAA97A02523FF701FC492
+:10F5800018DE02BC9E425C4B18EBBFAEA78338FE70
+:10F59000EC3CEE599903B876607A0CE8B392FD140E
+:10F5A00011E3DEBC1037F6375DE2DA22FB0A4BC806
+:10F5B000FA078C387ECA1C644A8E2B349AF32CCD01
+:10F5C00059CB033163036E220B3DFB61F3DE057EF5
+:10F5D0006CD83F7B35AD89C3B37E61A3050497D159
+:10F5E000FA0D1FA518047303777789BF424986DF98
+:10F5F000258254415729D24B55955C2B938CD2FED2
+:10F60000CB00D539183EB61D0CE04F2E0A5CEDF448
+:10F610005B1DFAD1CA918C64951ED856167B4DF9A4
+:10F62000A9C4517F57EB98C45F69ED4A7E6B09D638
+:10F630005610F617A02C5D8A74CC6895F903294CF6
+:10F64000A3697F3550B9C53459691B29B7B38E02F8
+:10F6500058A12ABEDE94C0BE59F470D108071BB56C
+:10F6600044C9C62D5EA26D4FD59F9C1D4FCFDE4A6B
+:10F67000B68BAD58E3D8B203F35A2A250BA4112058
+:10F6800085F6538C848EDC3C6073F3B6A90E78A8A3
+:10F69000D26150F474FD9094578E3FCBFF4C4AFEDC
+:10F6A000EAC54BAB70DDF780CD6FEFD4AB1E1E6C9F
+:10F6B0007C0BCEE9E9DBBF85DAB3B59CB0C0B0788E
+:10F6C00088819E4823C3F397F8128568E01DF45F94
+:10F6D000A32D53F48F2004B8095AC9C930B1273774
+:10F6E0001D8C25897B6303D2191271F98210D8977A
+:10F6F0006260FD62A4CEFE4BE2929CE58F54606195
+:10F7000008350846F576B212C8E9EB027515B44B18
+:10F7100084EA9D0D049ED636719B07778463DD4F86
+:10F72000A53BDD271F4724954D4DA3A17F3F775370
+:10F7300029D5ED4F19F14154E3CB581CAAF5951189
+:10F740002FA9BE7155955F7BE085EC5B672B5F5FF2
+:10F7500012F6A630B0A0705DEB5C07662D651AE06E
+:10F76000B2E9950D6CA358E077E65FC5894302CBFB
+:10F77000605A6B85FDC8E46C4BC428851FA489A41E
+:10F78000148635F393E583DFFBCBBF0E6DA9034BE6
+:10F790009F4C56FEE4D90939A740A7B9EECF9A2A63
+:10F7A000E0EF4DE0A21CE986A939247BC5FF81A4C6
+:10F7B00060AB6F79853BD0D7EC30714BD4BFBB6465
+:10F7C000A27884B7487BD06F8A64D3E44FFBF4EF10
+:10F7D000A91349CEB4F8015C8D77FAEA2B15739022
+:10F7E0009AD4A0141E3B0E1B1B2F1804FB6E7591A0
+:10F7F00028D5447BC8EBEE2C2F669407D3D908EFAD
+:10F800005FCE2AD1869A874A34ECE2D7AD428B7418
+:10F810002C11C36531E5861BFD21B973179242F0A7
+:10F82000D72C6433A0B034DD4B194FC7DBFA8909FC
+:10F83000509957FED274746468082238E6ABC0FC55
+:10F8400018E1CB00BFDCA5699E9814715EA5719389
+:10F85000DCDEAEA56AE9CD95123F5C20A8000B8FD7
+:10F860004EA8F333C56F5F4D8394AE5C7DB6477C85
+:10F8700088CAB755F7B789E8E96D17DE434AD083E0
+:10F880007302E25F975807B0F1A98B8A811A8098BA
+:10F89000B15C75BA0B801C69976F581535984AFB97
+:10F8A00081C08CC097ECEDC75A3B35F96B6773EBA1
+:10F8B000F99F205F010FD07EEA2FD3506441DF060D
+:10F8C0005DFD0D9F98E3BB1480DBEF408BF497EC5C
+:10F8D000A80A5E9CF8AAF9CD0058409D51FD1C8AEB
+:10F8E0000C4150B72F72055AEC4D6A24DF2C3B1E99
+:10F8F000A226B733B2D72385DDD80A42F9D1FA89D7
+:10F90000AE7A6D2811BF30EE46D33D9A32BAFEEA88
+:10F910000EFF398C35D2AE2D97E21D85C566CC0021
+:10F920009B8CCB9440BFC6A25A9D6573D53C543383
+:10F930009AD8211937C5E26986CF67353F900FBE47
+:10F940004354B7905F0B5222FE4EC745D19CA84846
+:10F95000C130EF09D539CC40F9FFF505EB3B5262D8
+:10F9600064CF70FB83087F763E8A7EC3E27C84D7B7
+:10F97000E96992A2C263B8084AB80A3DF4711B2F24
+:10F98000B58DE7603E802086E1EEB079C5746428CD
+:10F99000F320A3291D8A6CA85627DAD86A0C7B7439
+:10F9A000088415992AC5883DA8A0850AE974C86B02
+:10F9B0007A032698BACDAD5C53AC760FF09779FEFA
+:10F9C0007F9C8E6DC69752833DD369ED81BE491CE5
+:10F9D00074B525FC46919A2D33FD3B1B619EB8D32F
+:10F9E00076DF4AC4BBA1E1E983FFA42AACE5F217A4
+:10F9F000FB09E5A1840358C591E01C86B5FAE4AA89
+:10FA0000D9D47D5021F57CF79C950FCAEDEB9DB2C2
+:10FA100028505ED9D4E595538BDD905BFEDB73C82F
+:10FA200064DA22CED2D50862EF94325338ED60C446
+:10FA3000EDFB7D2245C515EF5A5B590076AB0CEA0C
+:10FA4000A8A143F1950BED06EBF5CBA171F826705B
+:10FA50006D64F3B9506CCCA4E22702311283788D27
+:10FA600061E42BC5AB188FAFA8820C3F92A9EBBA0B
+:10FA7000BA1DB89A819C28095B95F4BDA72A620635
+:10FA8000EEEDEBC39FEEFB330E49DCCA7AEB82400E
+:10FA90009980A716B94FBC90E675D6F9608234E01C
+:10FAA00031A166C062444BC76A9CFD4B54F8F44FC9
+:10FAB000A232985CAC326197D6255B3190936E553B
+:10FAC00096BA6C29DE6B62D28D1726B961DA9DBCBD
+:10FAD000649A3DF5BF3ECE429620D6F3794AA9936B
+:10FAE00042E8A6EA2938FBFAA06FACA462CB2378DF
+:10FAF000BBA79C24367AC614C5C607AD906D58A71F
+:10FB00001BBFEE469B9E6959F94E813C0EA5FAC774
+:10FB1000EC672845ABB7C02950782C7826E31EC582
+:10FB20006D18B04DB12AB46F587661156C42E8D8A3
+:10FB3000D03F4DDB0E8B7F753B660007D8C386CF69
+:10FB4000970C93521C0F8ACB11E28A220B6D77031C
+:10FB50001C8B76A7FA18349A225EEB27AAFBA669BB
+:10FB6000A553EB4A064B78657EF361163AD9738A42
+:10FB700027A8E99F33F6BBF7C4048DDEE04C369826
+:10FB8000F330F565B06844559CA0CF36ADCDC3F3D6
+:10FB90006B144E70691070EBB03BF4402F609B47C4
+:10FBA000C59D7FC0D9CC8DDD377F04F32C957F4771
+:10FBB000303E3CBDCFA8A6FD3F7F4E44236D30C1F3
+:10FBC000FA61E83A44F3FDABDB9A306928B349FDAA
+:10FBD00026BB40DE6E2800374F5D5D96B6DE4AB22A
+:10FBE0003FD3CCEEFB4F031937991D14BB8C5156F4
+:10FBF0007543665BC70C3B459FFCB8D80FF1CF7AC5
+:10FC00001668F49CD1D2EC3DA70CC89EFEA56D8D64
+:10FC1000D2ADFBB49B9AE9F0A5CA15DED2EE36A4AC
+:10FC20006B9DAC90B4905D5C76D8C8BBCDD1E5D669
+:10FC30002CBC692CBBCA1D761E09A9D1FE6636AF45
+:10FC40006D848E8522A141A2F38726CCF5133E5602
+:10FC5000C89FC9D2F66548E89279C665A7728AE25C
+:10FC60003AEC6E2A7A54E9E34D2E117743FEFD45B6
+:10FC70001A61EB962250FD420A0AA94B8B62D1B35E
+:10FC8000AAA6780E4B2D967904B9B1B4DE4A7663F4
+:10FC9000A65F2D9AE4305D1ECA6AEB6E4A924F1A37
+:10FCA00081AE90BAD4918F41E564829E3055EC24A8
+:10FCB000E9EECE26CCF3598C033540CDAE2E5AFC5E
+:10FCC000FCE1CA7BB0ABE4BD9F55B34CA12391F0DE
+:10FCD000DDD9221E466BC97E7ADBFE23C42E285A4C
+:10FCE0003828DF8A189E8DB2EB08C281FC43CD7E96
+:10FCF00084DA59DAB9800322D6E7E28A24A058D6FA
+:10FD00008A7EE89070061D843B5D2E0C98A3DCCCA7
+:10FD1000FE7A80FFA4C539D405415414AAEA945848
+:10FD200055F95FD58D05CA804DB49F3E84BDD6126E
+:10FD300061FFDCAEE0DA61F804FB1275404182102D
+:10FD400023417592CF852650F9F2F779D88D6EF35D
+:10FD50002791651419C08A8FD7EE77EA1E42A069F1
+:10FD6000F596E68585CEAB8471F24758424059E559
+:10FD7000016C0D27FAA398B47F0D8555E0861129F3
+:10FD8000F2CFB582A5EEAD31F63FA10F524576F523
+:10FD90005AC43A3ADD2A8D70549F0018B7EFB0FB71
+:10FDA000B7E91C96DC56FF1A8DCEB4062BD0BE36B2
+:10FDB000A5BE666864E86491EB680B589F3A3A7F89
+:10FDC00094BF238274662C5F6951402BF086C1C1B9
+:10FDD000525FD5F753956D45D22EFF7442652118B9
+:10FDE0002EDA73C048699F8F6D6BE0EE2587123D58
+:10FDF00099F65242FFC6F4E6C3842F7E8F65B8346D
+:10FE00003B7757380B6DE896114A2A4FEC5DD3CEFD
+:10FE10000C227F181A1EE68C2270B4F46FA3D64908
+:10FE2000EF758B7DF81F66E7974CCB708E499599DF
+:10FE3000BAE485EFAFD6B77CBBE5252C8C7C0A678E
+:10FE4000901DE944E01C3D742E0984A0EEF708A241
+:10FE5000FAE74C0D32489BF096D74C9619EC702B74
+:10FE6000DD056839B65F3A741BFE83EF10A2F69D7C
+:10FE70007A6D409F88560B983DAD821357DBAC02DC
+:10FE8000B940C59957B887C5480255739F59440171
+:10FE9000554DD08BC59F6ACCAB85A26C29D2DBC0F7
+:10FEA0005072077FD36BD56FF3C75C1BE1F6C3A815
+:10FEB00033B6FD35103BAE25DB3998B2BB66D8377B
+:10FEC000AC31FBAEC1F70B6D4D7509ACA7532FFBE1
+:10FED0001C67B89065EE11FA24B19678966891C5C2
+:10FEE000A49F68256A8EAC1414CC2CCFC598789B3F
+:10FEF00059788E5CCF981D996F9A2B8BB73E8FA740
+:10FF0000CAAF77668A1CA1EB8944A472D756D65D26
+:10FF1000BAC69801F501FAC835A74F89B277E6E26B
+:10FF2000095EDCDF1170A201A325FAE26071E659D7
+:10FF3000F965B46D5DCD0A4031580D67AA67325B33
+:10FF40008E0F5A5C255C6C80FB8E441CDE1784F798
+:10FF50009DA7E5233D47C4F08057FF598134434FA7
+:10FF6000C9566ED70AE2A7F48F431E6F24A55EE53B
+:10FF7000BC25FC25D5740CA5BDAB95693EF9A0F652
+:10FF8000A17502042485D957815EC6622693D624C2
+:10FF9000A35770EB133EB1DA0C1275D12812E70E9D
+:10FFA000B2F18AA87BA681BF2CAFB042FD02E24D20
+:10FFB0004A3005E530B9AFC3A220824F9FAC46144A
+:10FFC0005883B46F6315A4FEC8C655C645F5970D92
+:10FFD000E95945ADDD312666AA9281B929A6028D7F
+:10FFE0005CA397A04CEA5423B782DF1AEEFE592196
+:10FFF000B46BCC107782BADE30AA21F455FBB5324F
+:020000021000EC
+:100000009F9D9C4E9951DB768DA3C9D42A879C89EC
+:100010000929AF54A2254A7D514E8C81D12450F537
+:10002000456FDB2409DD64D4BCA8E6CAFF37A740CE
+:100030000D42C2530D60860E73F9F8DDE918B4CE97
+:10004000ACBE352E14CB8442D83CA42B31660709B4
+:10005000C535FB9768F1251C146023F7A74E80D6A1
+:100060000950843D5F487FC94626EA2162731FE636
+:100070007B95839D1533C2F99DBF013B9E2BE820E4
+:100080005D66F53AE8E6367FA2C3E13FE0A9E3D832
+:100090009D16FE6D5A85C09F992DCE21D6D1821D09
+:1000A000FD1BC2EE5299FB869FE86580551B17A287
+:1000B0005016E299ACC4F36E68C9BCE1BC9379E117
+:1000C000A3A1E1B85F33E7163C7C5B6C838D279B73
+:1000D00010DC73C875FFC07A7F93F4D69EA00EFB28
+:1000E000594C446F3B830C1FC1FA71B915D438FCCD
+:1000F000360DE5E35AC038015ABE1DAE829C825DC2
+:100100008397B2C142863116AB0D149F3EB08C78F6
+:10011000102D1BA622D8A393960CECAAE2ABE4D236
+:100120009B9510AAAB91A6E8FDA1A4A9B46C4B6065
+:10013000A5289EDA19D1847C1A09EF1D5ABA95E0D8
+:10014000BBBE2CDFC6C0AE14B04B3ADA649333BAF0
+:10015000B9DD1A13549A2FC379B4600C3A9FEB306F
+:1001600099A9B889E63066094CA3EF399C78052532
+:100170006B1CD55C8DB5E9D54ACA844C8742E63AFA
+:100180004C64AC58C24B37BC56DDA88892B85B1C97
+:10019000CA0625A1ABA90B74279B1393D6D5A6EA53
+:1001A000D2779694FFC736BAE92DFD75696E77D080
+:1001B00084369A57005EF2632EE9AEDD4FD79D82FA
+:1001C000AB6B9C46CD804D4AE5E1DC6740DAC478F4
+:1001D00019F0E3B69906486F298306142E81E0DBF7
+:1001E000EBF521CEB46AA7A0F0251A28C5BBC28CB6
+:1001F00051CA7005FA9711991A6F74AB0A656E8728
+:10020000BDB0DF8AEDC55338601B7D6F3894049C08
+:10021000C719D2EA7F1E61F2ACDA19FE10166467C4
+:10022000A0D553CB2948EF482C504235EE6F6016CD
+:1002300061B5FB25EBB1ABB256B823163DAE864D8A
+:1002400097F4B6AB3EA14540BD77268E6626B679BB
+:100250001F26383A799B7A5023A64928333000C7A5
+:1002600005C6F43A6136101E84F860336DC1EE861F
+:10027000C4E5BAA1F9F7E05D4664D20BE009FBF7EB
+:100280008D939F0B9532A171DE1B8CC94B74EC389A
+:10029000F232F187A1DE5EDA9651CD83D4A4758D5A
+:1002A0002A40FE1AC05254C3F652F394BF3ADB12EE
+:1002B0002929AF393758BA6FBC089561ABD03231B4
+:1002C000D669ADD591B5ED64304D76458BBC4B7894
+:1002D000A7493D23AA0348377AFB98E8432E1BD54C
+:1002E00049A919B83DE703EDD11C8532DB79200D12
+:1002F00062C53C654E83C5EE25DB5364B95FC80615
+:100300007AEF9BB6F0574E713EFA1A0DE744BB7078
+:1003100005BF6F13C532E48CD5554778EB59AB78E0
+:10032000038EF39E77B73FC6CCCD194E5050AAF23C
+:100330000ED87CDBF8BBEC0CA9EA27D454907E03E2
+:10034000DC86D45460CCE041EB452C30098DA4050B
+:100350001C00DC789200962363003FD5226B9A87BD
+:10036000B5C494308A5EBA20DC065B0B63A06B7D5B
+:10037000026714649D2F089284E6F7F9137126AD85
+:100380000A6C6596B863ACD3BFAEF8884F89252652
+:10039000808CD64D4351DA6887DF778C16AFEB87B8
+:1003A000BDDBF9C408DA82BC4857FE595B4EABAAE4
+:1003B0003ED10742BADC75FDB32B844376479A31B0
+:1003C00053C74168F42462C1A0FFBA52BE919C5247
+:1003D000526E418DB1C1513DC3F484E36B1F147162
+:1003E000AD3BF70BA8318B94D2F6BCE28684908E9D
+:1003F000B907C344F6B9870489C268A2F7B586B3C2
+:100400008A62A156765B7FD333DBE332748BD6FFEF
+:10041000E18D66928317CFD55BB3BB83D8784E87C7
+:100420002649E1D290B6224276177DB1F21157CF1C
+:10043000904767A1DB158AF3C5C54D9AE0030C2CE4
+:100440000DB31E888B1BFC2847AC8F458148ADD36C
+:10045000FF987CB01CB97F010EC59F81B74B521924
+:10046000C41E9F1615E6E2A4D3E62C96872D3EEE19
+:1004700026B5CE42531AAE8B338D5644481F0D69B4
+:10048000A18F0036888123CD555F04F6ED7F47119B
+:10049000AE73BE4477C2FC31959766F54376E2545D
+:1004A000F6EBB66DA1768D64856884CC66ECAF58AA
+:1004B000E5EDA3902AD743BCFDC0B61E0764B0711A
+:1004C00000775C473470B21FE4AD90296F046D2B48
+:1004D0008D835D193AE1015EB712ECE63A7BD1B249
+:1004E000FE31ED473BB225F46830E9971CC66EF546
+:1004F0002C9AF8E94E0E38741DDC29E6B324785E98
+:10050000F1ABF2149CF7B6A17525BDCDB4B57F7FD4
+:100510008CDA918AAA668702A842AB575C2E8F7448
+:100520001E49A4228653528E3EA4D8F5F1428586F8
+:10053000F5EE9D5F0F959F1A1C0CA86FB8C59E67BE
+:100540009C4779BD119C45D8B8DD2746B35159D495
+:10055000CEAE5E644E4725D73D20EF8740838D6E3B
+:1005600048E55D3A3B239078F13F065914292D2345
+:10057000A7C6E378B60B73A58EE4DD0296D5C22636
+:10058000539415BCD06D6C290B21223EFA41277281
+:10059000360412BBFE3B0EB3B68E62BCD23C1A5779
+:1005A000A47EEBB09EC31EF611B9AB29C818CB8848
+:1005B000C0D6B9CD342CA47B9EEACD61856286502D
+:1005C00027545439621C33A87FEE2D55C7BA68579B
+:1005D0007AC9BA15EC6F5BFAA035181293F0D858A7
+:1005E000BE242164372E40E0BE7254251E6580541F
+:1005F000289243F5AAD1CB69E0DFF963E4FF40D844
+:10060000E40EED47C57B03794F705DC6CEB410E5AF
+:10061000F40B21CB06024A488F44953949277CCAFE
+:10062000D7D3818F7A316447E5C277DBF3FCA1969B
+:1006300032A5FF240DBE024B88A6E8F7DF15981BF4
+:10064000BE7609C1FA1C5549A8B18DD42BD6C72155
+:10065000E08EBF7B18FAB8E141664DD2696195B46E
+:100660001670E88C4A88B1ACB4769C89893190992F
+:10067000B8BC87B6BAD2A9DFB8AB2B8AE6CD00C426
+:10068000DDE9F72CFEAC8206670C4F44068A0CDBD2
+:10069000CD5A02FD433A44B471BF09A524F2C88C77
+:1006A0000EE86A10F86049E293D071AFE345C11CCF
+:1006B00007AD34FA866216A2B7F59732A2EB33ABD8
+:1006C00042C0E097EB7D81AFDBF87424643CDC65CD
+:1006D00057CA0CF612EEF2A18F0FF576E60F00F373
+:1006E000F3304656A540B9BF4EDF90BFAA517706FA
+:1006F000F1E6167A44C8D45C477835E3F8D0565C06
+:100700000CE721007DA271825846E1A29ABE820EBA
+:10071000746A9C5D125194D4B44513347BD91D2165
+:100720008EFF9BE934CC46E0A425F8D697D08E679F
+:10073000041BA7E8EB7BBB73DAAAEEAB73A680FAC7
+:100740009D1DE5243B2192BE61B6C9AE23249527A9
+:100750008490250D8F0828A20D8571B445871F97B9
+:100760005ED885E86FD417DC6B5E4FD5B809846816
+:100770009D366B9F945FBA4A4FCFF6E57C2E8C9CDA
+:1007800052928EBA07CFDBC13CC74542D42AD99AD0
+:1007900001E1F62A35392B1337120E964DA242B7D6
+:1007A000C0C4418D11417CD0F006A82E977A8408F0
+:1007B000D8BD7FCA5D2F455A8B85CCA0A253BA43C2
+:1007C000543E08984D87BD2A300660B3DCD97F7F40
+:1007D000E50A636B05BE909A37F4C68A2A7EB9DCB7
+:1007E000F3F2A3695E7BD642CF97C47EA344FAB0EE
+:1007F0006D8407B15148EC5CDD7573340AE5838282
+:10080000913E35DC9DB5FC3A59AC81A68A41D90EA2
+:10081000C5EB36E961938E516F97EBFF7BC95FB6ED
+:100820005F6821A95E6724E4BD80453DE0333D4615
+:10083000DC8091FCCC55EAB0C31F7E3BC3BF147F64
+:10084000ED8DF1592124579E427BD05B91A3013C51
+:10085000F75FF3271256EA44AC6853B4606DDD7954
+:10086000E3062B94511DC7F048751D425504CAE795
+:100870008B693284ADE785995409565C26608CE714
+:100880007C7FFCB7FD1DECAC0B24693E47B6C00174
+:1008900079908EDDBCAF2430DF468B3DBDBAAA9A7D
+:1008A000D37B1A2779F1A158222CE31BDBB889E30B
+:1008B000BC8849D750E902C71CD20C4874D3A19711
+:1008C000272B579F96F98D62D293BC9E172A1A2523
+:1008D00096DA042B7AACA3E935D5F65564AB4AFA1F
+:1008E000BC25C31BF7F7379D6BA01D41008FA5AE3C
+:1008F0005A46F8A1EDA2990A1A093C9CADFFCBA873
+:1009000077CE16B9ABC0D312983652339AFF705FC8
+:100910008FAA506928341871230640D75A1D9BD2DC
+:10092000111C93B02B91D571BAC3FC4FF02F2458F2
+:100930009DB70BF0A72C8E952506BBD4CA8452DF39
+:100940006E2C8710FCAF468FFE5432CC3E8D0CE5EA
+:10095000068505D136CB471798F1CFC2CDA7EAEF70
+:10096000B46FB4C525E84C5354FB1476F516116BDF
+:100970008105D6082658DDC6F2CD2A47671A0459E4
+:100980009C16473DCEE2EAD3D14DA21138F7B8EE1E
+:10099000E8109DFC1E24FA3CD9E76DDE36EC7BD1D5
+:1009A000E7AF8AF38B785E6CD6A283724F3EA62B9C
+:1009B0009A9453C6503142B30D4962454D97BBEAF4
+:1009C0005DA10DA3EE0B0D4BFF40AE8A4AD80C1F64
+:1009D00004A0C2B9F05F84592C40B8CDDA95C21E8C
+:1009E00059FA6FA0BF5089EE07E2B82803BA973FC3
+:1009F0002BD1C15CAC0209FA86A7D2F361737A9A53
+:100A0000957C17D7C54061E9369112F467BBBED01B
+:100A1000FCAE5BFED7BF8CFD419F5E006261D7AD2F
+:100A20000ECFB06BB29C620C61EF793029E5973440
+:100A30000698FEBE47491E491336D27AF86157C957
+:100A40007F46ABB617FE8D650E3F7C007185072192
+:100A50005AF56C8C725C3D30D684662CEE25D40140
+:100A6000D0619C0B3C1031A896702EEAEB27BF108A
+:100A7000E03127DE43DCCBD22CC63E78CA208D1C69
+:100A80007197F450CE842FACD224CE81F5369C6180
+:100A900030AB4D58114BDEA4D67AECBDF6E96A2591
+:100AA0001865BD2ACD2D4E389700A4AEB8B6260CD9
+:100AB000F2653A3B205A87FE54A4E4531B9AA3766E
+:100AC000F26EA28C59F963D5020C34E1FAB495C8E0
+:100AD000CF973C11A3138A8C98399C432D68CE2E56
+:100AE0006D9329663FDAFFD70ACE4014E38F3DBAF3
+:100AF0005C635994AE3D3D2719392F29F5B56A5EDF
+:100B00004BF95E9CC0009AD07B9E2F5D02DF753250
+:100B10001FC09500F1032A04759724F14CC568CDD8
+:100B20007E2D2B2495C37152BA98F413041B8E0F9B
+:100B30008C63D0B6C8C86E3F1EFC2058ED9B2CF8C5
+:100B400095A1C9C77FB8F5BC2122DEF625FE923BF0
+:100B500038E5E55FBF84E1757DEBC3C99FB7EB6402
+:100B6000BEA1EBEE1C5845463C8C3D9A3E768C86E9
+:100B7000528974AB9823C61C314AB5A9E0A7EE99F7
+:100B8000D5BA7B390A11E4FCDB01A2E72750A7FDA7
+:100B90003E1D220200E35C062CC4B9EEEBAE38ED3C
+:100BA0006EB49EE6FCFFD38D8C4E9C87AEB7FC776F
+:100BB0007D2500E2A2F1F1C42A445FF7B1DAE647ED
+:100BC00063A8D581079CE3CD249B8338D3A6A3C01B
+:100BD000A034BEF57F51FFDF0F4A8E70A492959F1F
+:100BE0000137C807E63A2DE4B9861041763FE02583
+:100BF000FCEDD1730946A05DB5ABEFBFCBCB6BD598
+:100C00005F8525408B05157BF3BE50164164752426
+:100C1000928AF805412824A35F6EB34808D6D7010D
+:100C2000B19046CA592113BDE2C60ECBD193DB5514
+:100C30000A33B1B1D1E441E7AD08F8B68F526E176F
+:100C4000A2600211E01DBE4C30DF83EC60748EB3F5
+:100C500044860D2202D8688B37C0B3501C099E0809
+:100C60001907124CA818307B064A6F07C7C5853D87
+:100C700056AE966D46D3BD916E4FB83106267C6850
+:100C8000CC7FFF4CAE7362D3AB9224AFFC81D5DD39
+:100C9000380471D70654C01FECC869E84200415AB5
+:100CA00038C68F1EE4D9DD80746EF4D10DC2158C68
+:100CB000AAA6539093467E743307458F8745CE5A34
+:100CC000B09A57E4C61C9772318990FBFC3A395BA5
+:100CD000027DD3A571A165960978BF0713631894A7
+:100CE0002E6D64103DB1726F341FA833C3BFA1D005
+:100CF000F3586CDE3F9A0DA4EC2EF938AEF96EF085
+:100D00008BC4A4B43048D0933B0BF258A7D5F2E281
+:100D100044842707B18048557AC377C2D98238986E
+:100D200019143CB616754967262114E1287D389AB6
+:100D3000EEABE436F880E22932A8AF5C668AAE906A
+:100D400079E506DC034DC1E0F595FDFC0B4CB236B0
+:100D5000D86C40B0DB53F11BAF5A6408289EE35BAC
+:100D600095480840BE15EA49D84E4A5C800CFA10F6
+:100D70003EE059645831F9354044FA0426D195A132
+:100D8000557C12AAC6130F86F4516D1B22B00B2698
+:100D9000491C6A7D27F2B047A1CAD3094B488DC7C9
+:100DA0000FCE7653844B86BAFA72B5B2295E8C3F69
+:100DB00059EDCCD39F0367996890B24767A0761628
+:100DC000843CA6C79DD06C7BE17F1D642E510FD65D
+:100DD000DE5E79E333B5711150F9AAC2E70DBCE3C9
+:100DE00078A62B194510BCCDCD9C4AD1A25C3C53B2
+:100DF00053F16003114891D99921787421B8A8E57D
+:100E00003201C301DACBAC29E7E41791585375FBE3
+:100E100021BF105D06B3627C720F4561AB2D336755
+:100E2000A73D0F7B76B1503DB992DA2E964CB4C8EF
+:100E3000D9A80D5B9C0A51DF7881BABEAAB62F02F1
+:100E400038D1A6B2628C31BFB21E9B602DC1FD4766
+:100E500053B04B3762D6765FD6DCC3FC78A14074C2
+:100E6000D92AF27EDF3138F9DA82B45FB5CC2C12A0
+:100E700074AAC5D93155FBFC3DD70A67345E3BA740
+:100E8000FD23973F3C3F0ED5DEBE60625C20288686
+:100E9000FEB67A04463D17CA12153E1D8EC97CB7B0
+:100EA000CE1A5C7DBC815B67E6AC49E86CE5F5D7A2
+:100EB0001E3F0A59F2955F4D8405464576A6980F68
+:100EC000C4D36774216730F9D164840E98438CDCF5
+:100ED0001FBBCE958368D242B9AD915ABE2C271C58
+:100EE000D1BDE0B8CE31A0ED82BB790C0238D4CFB1
+:100EF0004C385269DCF3CCC75C944A4E8F5144E6BF
+:100F0000F070D7E1249A77A70AC63D845AC3556B7F
+:100F10004885723AB24416A7759FE1FAB353B111EE
+:100F2000A8E7B59DDC27EB167B377D3998B6DB2E1D
+:100F300017A600D2CC40749E3197BC9B506FEEEA4E
+:100F4000D45AE68C8612DACA670EE4FE6B5DB4678B
+:100F500077D1127F61C5E9E8D5E4E9D5D7C39B4DC8
+:100F6000C6E61394D8E39AF937ED8D53B015508443
+:100F700040C34D23F5ED04DC866184DFF0D475B009
+:100F800038B6B6D8A3C943D9567FD8CFD82FD5C540
+:100F900067AE8A9EA51BDB2CCFE77D14FD1F82CE9A
+:100FA0001E882F8FFBD9F32EF6103A2EAE0B70A2AF
+:100FB000DD59096702621DEDEA5587A93F68AFFF59
+:100FC000ECD3EB6B2C9E1B76D2FE5716F5735A7C36
+:100FD000F913C6690819ED7898818E77891F948670
+:100FE000CDE5067D6AAFD0BC4B2447B37860D8808E
+:100FF0007B47AB8C4361DA551F2092B8CE62C9A8FB
+:10100000A5A4914C3809E1DBCD72B15D25B151D475
+:10101000E2623FB1050C23657E34B064CB816F3151
+:1010200077D4D7D775DF1EB7E0072007F3C28083D8
+:101030004E7D2C34EB36C769F006B636B01094DC22
+:10104000AFAE6D4BB9F082C9E0115987F6E8B65AD8
+:101050009938F5AF17BF587CAC0F4E5EAAB643DD8A
+:101060002F6E87C60A02677C67C9EFD9F9FC16366E
+:101070002D4C721C000EB25076153861D0C6781F08
+:10108000EDB62263B2B499F107DDBFD3447EC6A0AA
+:101090006000549D9E5217426D660E4A6B3778F879
+:1010A0009DF8B98E9BC1D25D17023EABA5A010A5DD
+:1010B000ECA40CCB54673D2B46609891F5589321D6
+:1010C000CF6A752CAAB54679A9DD92C5BD1BFE97DE
+:1010D000A9D1D8E0C5D49A842B93667399CA106FAE
+:1010E000F9888DFF18A4BABD2FCA602710395A227B
+:1010F0002D96DFC2E269BDB814B05C67C5A7E06693
+:101100003CC53E05D8940E42E36EF8204C24F43AD8
+:1011100063110B25C3D1E10AF7C9DB1736D44C8222
+:1011200079A011A2C66BC30DDE8904E6F57051EA01
+:10113000DF692C2BD0F279B671D06939D4F9A9FCCA
+:101140000DC3A21E7EE2699DD90ED49F9D58449680
+:10115000600DFE6CB259397C3CB7216071ECEA1726
+:101160001E4B5015B636EE4693F24D3451F9B8F990
+:10117000025ACC356E368B10A8E60AC20BB67AEE50
+:10118000C2115B2D5E226EB68A779BF191FFF163EF
+:101190003A3D1AE267F74693E176C88C88C1A78981
+:1011A000041EF6363ED574E9620F78A5CC8DF88220
+:1011B0005EF62B88999D2D136A719C7C053E397DC6
+:1011C000EBA0E25AE63715F9F491334C5876C6880D
+:1011D000E7BB67DBB16A10834501AB12E8D2A50912
+:1011E000208B5EC5FE95E96F93CE8D43D2D5E8E5A1
+:1011F0006FDB01D6B99B112185FBA0F0F2A9D76264
+:101200008F624D301F24FC320F1519899E057573AE
+:101210005289D5BEC1863FE6794BDBCFDF97936914
+:10122000B23A57EAF1AC1F068BEB44D16B376BBD7A
+:10123000A457FF6D6CEC4771C3F4DDA488F1F7513E
+:10124000E0A1B2EC53FE395ADEB457EDDB77EDD5B1
+:10125000A544A96F269BD1D4D71CA7716B6B2348DB
+:1012600015EC1CCE67C698B260CEB2D9FB069D289D
+:10127000B9018055489C24A2900C3C556367855861
+:10128000236956790B0FBB5BB6688ACB8E4109A9DF
+:1012900041FED4340A85D6094E7527EE11514634E5
+:1012A0004933A5062E765CB707074573BCF36AC2BF
+:1012B000EAED7401DB104A19BF8E0AF18322D8626D
+:1012C000D0EB22D6723F812E16C289A5D41F3E2AAA
+:1012D000E6447279591DEAD2814867F941E1182E36
+:1012E00035CFC8AAA2867C15503FD30D30907971B6
+:1012F000503F4C4A544A3810AA84491F7E3CEF2C78
+:10130000CB7E44B3ABFA094F0E61E3B79189908865
+:10131000E8EA1E5242C0609B4047A1A66CB4C35A83
+:10132000FA76041A2A932CF884BE9B5914418271D0
+:10133000F50B8B8FDD53D1378C1094F84AAAAC5F34
+:1013400089153F562453B0C32F4DB684A3E0B1494D
+:10135000C3954F862B99A8177132032861370B1458
+:1013600021D88343773D3605F65177B29FD146B5F4
+:10137000DB140DD1D57CAB4B54D6EB66673C4F8666
+:1013800048522A9096DD3896C9C437498AA69820D3
+:1013900027E1118B271F4ECCBA8152B6765CA2E7AB
+:1013A0002DFA5AB266E99B159583EB8F92DCD4C473
+:1013B00092F858D8765FF282FFB738FA655F271245
+:1013C00020A0C6D7D436DDD71CB37FF0C5CBC31E53
+:1013D000C0B23AB3BC164A02DB12C858715C01169F
+:1013E000AA4526EAB0919E2AEBD18FA05C1513D6B0
+:1013F0004E179563D5C21B4F65C14496350CF02539
+:1014000022D9988E601BFB10002140DC2EA7CCEC6B
+:101410005A80D29D9C8BB9E6B3223888781FC78743
+:101420001B26338248611E575D1FF305649E2D27DE
+:10143000CDFADB7E0CC6CD89E8ED89FE402B9961A3
+:101440009555B5D0DACE01B8862E24040B9C91B503
+:1014500073986847DB15F32596B2650E38F636F7B4
+:10146000A9DC9CC127EA68ED64CC9705F5D862A693
+:101470006984BF68A055BA20E5888500A963C78E36
+:101480001F211191E021445BC246DB2C70C0CF8C40
+:10149000C19186ED7EE4AEB5904BA3F8FCAEE34D72
+:1014A00086A5B533CB69845740CFF3977D2095ACA3
+:1014B000DB857C264581274A7B1CD014581EE8D842
+:1014C00014B391B7A03795E7E7E92EDE5A13D53963
+:1014D000F34DFF3E428FBA8ECCEA89201C7CD23C71
+:1014E000FA0F1D2E55E74E779B4ADB616DA47DA94F
+:1014F000FC876C4ECF23F96AA1373902A07BFBD958
+:101500001C66964A12E6725CD72384DF6FD10F15F2
+:101510002D8EA3B5F343BF9E3E26E667BD2F7E7B8F
+:101520000600D30618B0B8D65B2553E789F2ACD0D5
+:101530007FEF4F9E89DF9BCC23B5C9C1756172D205
+:101540004E7EC130B7C51CB37E19433E2EA5AE45B5
+:10155000C2F88456ECFFA888562DB674F6EA42F31A
+:1015600078AEB0160CC909AF45B8A9703F850A39E5
+:101570003DA057491DA649A6F059FDD0D5C2F41E7D
+:10158000FE43557892B00899C5EE37F8122665BC2F
+:10159000AFE00B359A7717EFFC86FF1887AEF4EBB8
+:1015A0002B512BFEBB49C54694175B19CF5EEDA9A5
+:1015B0007AFBA52359058D57BADDD091AB2BA8DF57
+:1015C0006ECD3480056B684905B4E92287B636369E
+:1015D000DE58A0CAA1EAAA513A206C5C7C5F1EC406
+:1015E000DF057F015577762ACC63DCE2A7EEDBAA24
+:1015F00033DD8BD8B0BA38FABACC0605E10264C341
+:101600000F01038C21868FCD149F4DE5260EE749EF
+:101610006088409FDB54E430DF5BBF57F0E74A74DB
+:101620002D4600CD851B844B11A2BA11F759508C61
+:101630002133F80736BA10E8929F46703256D79198
+:1016400028B860F196664D07009C0D4F49104AC0BE
+:10165000EA1AB19FA0C9FF2203C80B66127EA8C474
+:1016600088C3B9784C6A3A706881ADA028A286FF19
+:101670003E5E150AC22504FE4919C6E7D4E1B2014F
+:1016800053F897546453AC784E6DE6F264A498E135
+:10169000C430C49F40AE6847AEE54B4DA97C43F2D1
+:1016A000855046D682B058C3CFE0BC87FE2283EF78
+:1016B0006BE0EB075A42E57CEE5378BFCFF8210B85
+:1016C000857796F1B1EAF2310096528CDA44FAE568
+:1016D000517D004BA31F2FE28F2B02EC13704DA600
+:1016E000B8A1E0D2124170ACEB0658D69B18B8BC3A
+:1016F000A0C79EAB5F3FDE34BCF66EBACBBE5A5776
+:10170000F91BCE2DEE926E21D216C3230D08A9D15E
+:10171000EF9552A316376EECA11D6C29B3C898D370
+:1017200049CB49C2712A931771944393E1831A05F7
+:10173000345FF0FD193716E8E3947A8ABD92BE8DC6
+:10174000AB414AFFD183DDD6330DD046F320F2C53D
+:101750006DC960F65D849AB7830888BD707353D4F1
+:101760001E6DC0618ADBDE8BEDCC71F9149F107A9F
+:101770007D00477EB98135426230AA56EB1932B1FD
+:101780000A0F8C16B6EAEF7FC21B0C3A1587BB8F87
+:10179000229599FAAE8C70FD0458D321FF0A9F134D
+:1017A000716D8BA1B10270E4B20003EA27D7DC7D32
+:1017B00042AFE48805EB067F009068134F15D5868D
+:1017C0007947CDB8B0FDF9BEE569F2EE45A8E7323C
+:1017D00025701E168887BD796DC84CCFFAB9A3B99C
+:1017E0008D267F2AEA6620CBBCB09DB825FFB33E8C
+:1017F0004916314D00505CD37B5BB9F97F5E4C2FAD
+:1018000094C07DFF02628807FBC115A619B1040BC5
+:10181000F62AE574D9628C3CA0409FFBA14DD1EE25
+:10182000EF065A66318FFBCA1555D76045B776C0AB
+:10183000D5816CFBBB0839F25FDB25D183838874CB
+:10184000D8917CF3E29AD1FE926CBF7CC3B366B8A8
+:101850000660BF3D1417D4BB8EF2735441EECA81AB
+:10186000CFD423474541662948C3D9C16FA252F35B
+:1018700095C1D511010037F668EB178B08A2AB288C
+:1018800098C2D9B45EA96F8DADC44F5AB991BC4905
+:10189000FFCA212435AF74904EF339FA38A49AE385
+:1018A000AC5272A3F2D6C2B27C4588DC13672F51CA
+:1018B0004F638D391D2154E60784A27E68CB440C0A
+:1018C000CF265B4B309FE21E8867B0B6EA222574B4
+:1018D000772845D96AF17B2E690FBAE5F61A112BE4
+:1018E0009E8F90DE483C52BC733A140D18433B4225
+:1018F0006CA7A484BF18D3137AA8823032A36BA13B
+:10190000F6F04FFCFB36A6A845854806C80DB8DDA5
+:10191000B43BE55C3798B33FE801D1B16B26BA70B0
+:10192000A59EF0E1D67DD969A79144340862DE24F2
+:101930001AADBBDE50AA37CE7B4ACD2B1266F3AC74
+:101940006A7CADA928A69950352878B632327DED4B
+:1019500066245DDE01C8D443F2E3A32B1A8B5A9DA3
+:101960009D8A2FCA8CC8B860B74AB53D8CA54BD7A5
+:10197000CD7BA70A5B2A6CB119057491E41861B19B
+:1019800049DCA2402D00B1A73861769D48138CE94F
+:1019900098EC5A15BBDAE12737E23AC120A10DF3E2
+:1019A000535E2A389AAB7980FD8429319BF7CD4468
+:1019B000563E78733A743212565871765C50E31A78
+:1019C000FAA61D16E7E4CFB34514CBC879F92A8FE0
+:1019D000450E0D5844011DE05655466FE4D285D89A
+:1019E000197204760153E57AAE3F122BA4D0F57A32
+:1019F000A8214CF1713C855D747B0AB1DE769F12A3
+:101A0000B7615B66450A0DD20C411D0A0E4D896017
+:101A100057C84F9844D7C9A0E16D79E7DA1D41AFA7
+:101A200069290047027BA96B2C89EEA2174907069A
+:101A300042DFE0F2BC32FD080DBD37211F67741A8A
+:101A400085F499A8CBAE203EB58871F21C134623CD
+:101A50009EB8407BC03091401E7294BE68984AC9BF
+:101A60004918709E60B6B158A40507F0E3C2C5835B
+:101A70009410EB6929C41AD2E7B27062720A35BABF
+:101A8000E5CD6F999A4187C411BF057D5295118F9D
+:101A900032F13F617AD63E0A72905B763E386A54E4
+:101AA0001CCCE36C2C713DD4F7B4E1D8D2820C721B
+:101AB0001993F6F2AAA3D76C87C15EC77C8E063B4A
+:101AC000009EF0CAF4B2A5165F3F18FDCECF99ADC7
+:101AD00090A839C419A9EE4A7B8848390FA6114B42
+:101AE000EB736DE5DD9DE0D70DCE2C254FEC7491A9
+:101AF000F26A1835DFCC08DBD677B586890F88FE09
+:101B000035541413EF707F324058F47D954FD881CF
+:101B1000ED347136F43891B379566515868DC86FFA
+:101B2000865E3DFCE854C069EF9429660A03DABB7F
+:101B3000710B887BF12F055B6CBE68662BF9AF7962
+:101B40008F008141109FADA653F4CF380313797FE6
+:101B5000598FE2F5441C394970DD61F22EE4DF96BD
+:101B6000135FB66B9F3F1E5729692A5928CEF98605
+:101B70001751B989EB1153C9639C9BEC07CA89C300
+:101B8000C2B6E0BB5616DAA761DDB1688F79AE76D2
+:101B90008E44E1298FA0C387421404BD4DC6A61010
+:101BA00014EEFFDB12A7AF6CE5601FB688573AFA58
+:101BB0002992FBF63EB559358A32760859BD70E454
+:101BC000CA26541A805EF118B9A14BA71F68128467
+:101BD0008D7CA8D90DECAF3B69F3EE04022362D1F2
+:101BE00059FD70F1BEE03523C2D23C81CAF0F2FB50
+:101BF000FA45E8C1DA6DFBBFE42C81E1DAFB232270
+:101C00005C4129ABC75534948CFA5EB8D95FAB57A9
+:101C1000AA4FDFEC306A5428ECE0B501699FB61694
+:101C20001BC00B77C0FD705BBFFACE9BC6F8F7FEFA
+:101C300078D9FF26CD6E46363F208209D0F6436321
+:101C400096D968863317A8B02AC7D90C37FC73ED2C
+:101C50001F16703BEF766CBEC6D375D191CC611F59
+:101C6000533EFF1F6DF65AD7DF6FCDEC915899C9DF
+:101C70003A710BA74E2ECDFA5EBAC3926A221AD8D9
+:101C8000312159CB5C3FF624D68CA88A8BA11E4308
+:101C9000FF77ACACA7B728DCEF7A05C315612DB68A
+:101CA000B9C63C2030781117C532082670F243902F
+:101CB00098243A2559615FFDF8364D27418860D256
+:101CC0005A56CD520AE1938B1718436352A23C58DF
+:101CD0005245B6EC0BB9032DE67F9CA6B68F31B703
+:101CE0000FC75587BF136D84FC16E3436E87B2DEC2
+:101CF000CCA369CFDC9D5032462F58552973BD8B3C
+:101D00007208566019220B9D2C2692BCF32BC0A89A
+:101D1000881E5FE5F0B45A80C65CB038E4619AA8CA
+:101D2000C966697212FF45E376C0062F44AB90C5C1
+:101D300058CDCF2AE9EAD02D64C629F2D7AFD220F8
+:101D4000026A29C9C8FF9689EBDC5B02F9B6FA9EE4
+:101D500047603077D1CA4F63A2F2F13F5CCACE2C04
+:101D600061F5A40EAFC213B133298E3646986C11BB
+:101D7000D822D50EC0470CD538836FD5FEC55C6E12
+:101D8000C8FF1406491B18FD70BBB6C1943EA18262
+:101D90000A71D8F5E4E2F65BC21A611935D7BE893B
+:101DA00099BD3CF127914E678E545A3E52D24371F1
+:101DB0004973EA892FBCA8691B54BFB918C76D7C49
+:101DC000E8B343DE79D99350F0BE0A899A4A7DA9D7
+:101DD0000D5505E8738B2A6DBB62F33FBC65152278
+:101DE000028DE40C1B52C723F0FA8E20CC97F564C9
+:101DF000C5597CFB1DB41D598539FCA1BA98B7891A
+:101E0000E3065DCC51FBE41917AF7C10E6F2D43742
+:101E10006CF3EDCEBEE466FDA5ED508F204DC534CC
+:101E2000DB16BD02C9CED8CA6BA183877B8CC0628A
+:101E300024C2F9A89A3BFD3F60CB3AB5F36502AAEC
+:101E40001881155A5DDE23DF36431AD25985455B6A
+:101E5000BF77B54681731DF980F86C7582B2BF38C3
+:101E6000FC19E601237FC687AF441E1790D097C8A0
+:101E7000F6B248AEA395216F830859966DD148E814
+:101E800090B2DA7A4C87E1625042E1A317C95A80D6
+:101E9000A0B2F610D90C87A54E38075FE3998411DC
+:101EA0008AF269778CD53B79C1369FD8DA339206AE
+:101EB0004CA253120A031798D0B2A224FAE1CA0521
+:101EC000C20A54112D372C527A88A381496D0778A4
+:101ED0009EA61FFB2DAEBA4F3B95D6270FC7AAE291
+:101EE00037464BF5626B5766FA66F60B336DF1C3F6
+:101EF0008AD992E1D480D8E0C93AAC6C8327A3AAEE
+:101F0000815B2FDFE708A3EACEB216374107EAA1CB
+:101F1000DB788161A3755DF775E686C42BC1D1B00E
+:101F20006E11D5D4CC7C503D07EC998CD03161B486
+:101F3000784A0E2C34C2714F102BE2971F621BBBE4
+:101F40000040BB08467AFC87F2F458867F430619A6
+:101F500083C6E06AFE33054BB1AD6F12AB4A048C09
+:101F600006BAB6B1867B3E948586AC18FDCA81DD83
+:101F7000FE023A40AA85EE91D85E9961225B243533
+:101F8000174B53D1420E6F66AE0AE413ABF00CA3AD
+:101F90001A475038715360A5F48C1D8226715BC2BC
+:101FA000E38FC8A52A4FF7CD24A69C5116BD9A4BA6
+:101FB00058D9648ED9B0DBEFF05242D9EC01BA7235
+:101FC000796BFFB9E30CDFE45ACC4F3E6EFBEB3983
+:101FD000E897860280B8288765D5A036E980EA525E
+:101FE000D422F14B2444AD95CFB3ADC62796573ECE
+:101FF0006451D845D061CCE9266D995B28BC8E52DE
+:10200000F65D24C4083923DE0DF01F1BCD5BB5E758
+:102010003CBB0846F2432B0573A5611BD913B9A13C
+:102020004A423F3290CC2D40A87087638487861344
+:10203000FE1AA909F2DA3230E37B854D9CDD3EF0D1
+:102040004734CB8DCEAEB9957B330B12C4171937FD
+:1020500022275C045F4E08EFE182670885CFC175D7
+:10206000F31BFD7D229FF19E2C2251991FDED26130
+:102070002AB699C0F8285A9CB8D6422ABB77F4826F
+:10208000E4D2BBC05D04482BEF0F9639270064559E
+:10209000AFB4B10433766E7BA1254567A921E88AE8
+:1020A00072D483FBFF69B393DDFC100B931900A678
+:1020B000937ADCFF38FA112FEF6379D195CF24564C
+:1020C000B53E628F4BB5536C033F0B5E818B0A723A
+:1020D000836FE83825A1F96B4B5BB84859AFB4431F
+:1020E0000C3AFB8B1FFC8A7EED1E5112924B2C8FFB
+:1020F000FD418942C9A389B0B4190274DD88D0FDBD
+:1021000050C346221B3C4B559673E162FA41F0A442
+:10211000C4495BCA8EF04A5FF960C807EFD16B2DE6
+:10212000BB984EDA2E4CFFCA1495A0DFEF00D261A7
+:10213000356A375BCE34F5ECAA54DD575302D2A38F
+:10214000028029920D690E78334C12172AC7E3BB1F
+:10215000E80C5483AEE252AB443BBAF3EB4CB2878B
+:10216000860B66D4A2827F7D1107954CCDCDCB4FD7
+:10217000359C0EE99AFED30EEF2BC265FD4153400C
+:1021800096D27899FD0FC948D92C0C57478D165611
+:10219000D3BCF21EAABB3D0644C6FFFAAD671E6B58
+:1021A000C8780852BDBEF9066D730124B08D933B0B
+:1021B0005E31417A92A7FB8F5C4F7E24A5C7A0E7D2
+:1021C000D912CBD9A74003ADB64799AF8E04B65DFF
+:1021D0000A365AC9E5962662E6DC08FFB23340B1FA
+:1021E000047BA60023E9748A8CA857DF1A8CF36756
+:1021F00060F2D838D8007138750E977EFF852C9222
+:10220000CA7271E3520E712A3273E9902831D035C7
+:1022100094F42E3E1DF8CF7CB5F34D8D6250C01660
+:1022200007154B4DF707F4900B31417E76AE6F48A2
+:10223000CF9C828F4E84E604C8FC45D82753235494
+:102240009720A6B5313E153DFC9820B2416E4F4413
+:1022500055B0D0D851C10DE7B218D4D713577785F0
+:10226000D264C543368CA98738B17F2FD843F8EEA6
+:10227000D402F1765E0FAC5C94E26C085F19138AAD
+:10228000C2463E99008511C0BDA3BB5962B7DAFBB7
+:10229000146804CBF5AAB89C3374ADFB8275DECD0F
+:1022A0002A97ECBBF9C88360A8B29DB57D3F82BB7D
+:1022B000D6798DAE4D309AA02543D47307A0928471
+:1022C00016E3398E3AB1D5BE6617824FF3674D2EAD
+:1022D0009EA6A576BE342C7CB38E98EB1E6A65460E
+:1022E00014F1CF1FF1CB3F4DFD5C9167D3CA244160
+:1022F000E4D906F0F146C39CD555C3A82F2D4D6BEC
+:1023000057EAB68B170094B0DB04B120FF3C0AA259
+:10231000CE1E30C0CBD11D16287CD7606DB6932E53
+:10232000508E7949A529C2EA9A020BB3AC2970E014
+:10233000DD51AC7D103003F6F9765FE3E8D39742C8
+:10234000CD681C4DA1A017DF46F3DD9376D95C7BE9
+:102350001D3531AF8DEA4FF5DED5AE1E55878D2088
+:10236000621B537523B585D86635E6B50C228DA55D
+:102370009F1B7CC6F916263CD9C3F109C62AE10485
+:10238000B31457F2E66FE5C9D1BE4DBCFECC915CEB
+:1023900051A5C772869C6AC8980CC464894795E3A6
+:1023A0000AD57F04A198A0CA586553C8C19C45B3FB
+:1023B0000556F08EA115670F74A2057BC66DE40863
+:1023C0000B114C78A3F12566C31083843A8A3C151F
+:1023D00040DF50F04B3CDA77DD68BDC22AB3910E86
+:1023E000295930C2319E74168390B41392CC333283
+:1023F000E2631DDB82649C6B2E30CC8E8A63B54D0C
+:10240000F4B499E39CFB98B1157C38FDC815588B42
+:102410001C3D9F9254EE70D2FAABD38B3B08600FF9
+:10242000386003FAF1C8135FCFC4D9792DC6D91C1F
+:10243000CE2CA54DD745DBB91A7E97EDEF9F0798B7
+:1024400007CF6C52A4ED21E5A43F3ABE79A103A9C0
+:102450001F96FAA4D9EBE5017B3ECA3292446F9CE9
+:10246000529B8A6B18220209518580965B14AA0C34
+:1024700071439109776306E469779B6F8BA5A36E1F
+:102480003B3310DD2175B9520FE51C8E4D18816A62
+:10249000C1193DB0F8D4B1CBF1BA894563F818DC65
+:1024A0001F38A97AEB26FB644428C1E9D5AE37E78B
+:1024B0001822583C98692650ACFA0E972238001E14
+:1024C00036360D9557207BA7691CE21B889E9C4FD2
+:1024D0005C38902BBD5A842483AEBBAEB4E5CCD41B
+:1024E000895774213AE34A8CCA290B63869734B022
+:1024F00022E85177BEB9F68C5AEAE45062B385A15E
+:1025000072AF11B78CC7E00CDC29A429137DD893D6
+:1025100007BCC81B8402A54780E97398B56C4A5D67
+:10252000C50B8F628AFF1B9301CA0B8C1740FD34C9
+:102530006BBFD4B5231CCCE1607E85D240A889F85E
+:10254000E16DF5BDA7D66058B0F626DFB75041243F
+:102550004C934C3829B6215847548F21D38246EBEF
+:10256000EB9141EF9583A7AED7BC201ED72D3E142B
+:10257000636D9115671C66AF72096796617213BB34
+:10258000836F92A277457117F6D013702B9EC560AA
+:10259000FF3380542B500CB77365B22E03E35C2FCE
+:1025A000491658632AB90A8FC43AE819B7F2CDB66A
+:1025B000CB7E732648478A84F240392650373D93B4
+:1025C0002648B8628DE3E89E75AF25591F290F494B
+:1025D00035C8D12B8BABB3882BF73A1EAD624A615D
+:1025E00042AAAC5E0526BF1961A14E3C24209E9FE5
+:1025F000C0D4EE5AB9ECFE2F0B7A42E0551A86167B
+:102600007329819F7C5D417D11F524B6702B66B1E5
+:1026100072FC4E80F16755DCB23439C76877B2DBA3
+:1026200024253C5CE8D08918EF737746371F2ED8F5
+:10263000CBCB4F7BC67ED20425D947E8EA4AF45C6F
+:10264000B60B7E55A0D1334D13D468FD85D4C30994
+:1026500032D047188F6F8D5E35781B5F2959D9FCB2
+:102660006F6A9AA22FB7CB4C6782E5ACD5A3A414AE
+:10267000D814EFB20E25BA9382CC19DCDE39020EE3
+:1026800023BE291DCDC48F97F2857181A4856091E9
+:10269000BD457701C9BD50B0AEF7644C1DF1491678
+:1026A000A80725C68EB3729F662A6EAEA6CCC894C4
+:1026B0007D0051B1665662080BC3D60C4DCDFF901C
+:1026C000ADFD982DA61E8077D909E1863BFAEC3A3C
+:1026D000F6EF8B4E93C9DB2428AD215B2513BF8415
+:1026E000E29F04398C5C8D4C0999A76A104165DE24
+:1026F000DA39CDB6449F0437BB5804CAAE5BF31A2F
+:10270000845335D6338B526D6BF5C049538AAB3F3A
+:102710006E61CEEFFCAE93A35227A8FDDAC9462D19
+:102720008EB8819394C18A8BF6CA23CD384D076346
+:102730003B82C76F3F65BA4822EF3EAF37CEF99470
+:1027400047D2219AAC2703DF4BDE73C48E8282947A
+:102750007270662BFB0DC20241326B5E4867EBA5BF
+:102760009808FC362734411C924105708DF7E0E54E
+:10277000F1E917491A1709967ABD6E1E2D7E32F4BB
+:102780002DB3AC7D1CFBC1A716BAE6B03E200247B4
+:102790007298EA102BE998CF589D1561FF5F8179F7
+:1027A000D3EA09014EA0EFA429184F12DDC8611029
+:1027B000B1A6F4F9AB1E84314EFBA9FC5F4EDEF0EE
+:1027C000B70C194DA78E05B3D8FE57B1E75F4DA9D9
+:1027D0007EDEDE395FBDEDE9DC3EB9ED7ABCB58E5B
+:1027E0005A658AA399185E04A429418D3B70C900DB
+:1027F00002D3EB11365E85DCC02D15FC6B0FB808DB
+:102800000D83461D3B517C66663542F31CEC9E3FB2
+:102810001A9980ABF4590D445F2C66A410C26A5813
+:1028200044198FE9C87554F62F0AAA76CCD9B3E7B4
+:10283000F798BF99FBE4B9F732EBFB2EF619596113
+:10284000784BC9FFFEE0EF69DD52047E3D5BB9CAFB
+:102850003E23ECC1BEC50531202856D4578CFFB4A9
+:102860009B3425BD8F134831085A5CF70B383684EA
+:10287000A8FF27EE499C87D5FD2B287844CF5C8E96
+:10288000C493FB6B05F494CBB1050BF0030B74738D
+:10289000A2C6570F3D50DC6B6318C4817E6428C606
+:1028A00096E07C55A0E2B10E689890F582DEAFC844
+:1028B00072164FC99E3A20F8CB4771EF4F52E8E1AC
+:1028C00041DF58F3CA620D6B0DCC4D268C09441FB5
+:1028D000ADB1BFF01D9DB8E5858F1ACF174B91E8BC
+:1028E000F5DBB1E87229B65553502AA5C5D2BBF61F
+:1028F00075B5EBFCB39970327116A3219FB258F3F2
+:102900002E989834F7B7972510400B94B4B6EC3650
+:102910006408BA070A70100B7FEB074F7CAE5EE5C8
+:102920002F2A58FDF355A76EF88DC874E996173312
+:10293000ADE67289C5E03BD0D2C4E46101A904D7F9
+:102940009440F7449A4B57297FC0A57445F3A107DB
+:102950007BE85EA9FC8E38AD99B500DC0D829492BF
+:10296000C9996F4F5951E401D9DBE04C010EB171A7
+:102970004F1F00042A96D05D2995E09449360F54E4
+:10298000AA4E373397791EF8288ACC6AF33EE66957
+:102990006325DA5FAAF5D7CB193C857713B52627CF
+:1029A000B863DAA1808C635BDF1D199C3B7854EC23
+:1029B00003693455476F292715078005EB565D7A63
+:1029C00025281357B261FC3F4F94DF9A3D6384FF83
+:1029D000DE332B33DFD6C13DEA8757450582D88FDA
+:1029E000D49F23DDEFFD1E493653AEAD0852923120
+:1029F000AEB90805753CDE2E617809B093F8710018
+:102A00004EC9946EDED509F89A6CBFEEA6B8226561
+:102A1000972E94CC3936F26DD64C9E21DF14CA54D1
+:102A200087E0355B1A85F3226A821F53D7DD241FA6
+:102A300082AD99A4C1D8FA79E6AED30250667CA7DC
+:102A400047CD872E240F4ABC126FFFCA34FE116691
+:102A5000668CE03A7FA71C44E81F4DA6502AD0ACF4
+:102A60007E37FAA3916D1656C103B2EE5D5DB9B41F
+:102A70006426C79AF859557E83B30A23E98C5EF31E
+:102A800096880077D69E07ABB77E2004110EC769E3
+:102A90004F73214767B2E30457BF396B00E26746C3
+:102AA000A1452F6BE1EFDEFBC96EE8225E6B9F1242
+:102AB000851CBD9B19CF2DDB2F047232BD1001DBAD
+:102AC00055B4367A38B9BD7C9FFE92FF0F4352D879
+:102AD00086DD9DE00A68FE2AB73549D615A72F0185
+:102AE0009878CC481033E0C4156EC1005690AEC241
+:102AF000999138528FA7622BDB544D629DBC871C85
+:102B0000083395C79DE33DF471A4348CBC6580EF18
+:102B10008AF1760C082D299EC1CA79F9295116210E
+:102B20004A802A1A69A94BBBB004F315666D11AA35
+:102B3000EC5524761E1E79A810CA3F916558A29BB9
+:102B400047C922FC452C8404D1F8E20E4AAB98DA3E
+:102B50004B0A21C36D3DF16459E2BD3DEE4CB03FDF
+:102B600090FCD99A2C1054D10878C6F462C8959B71
+:102B70008CD91CA987EA1C507BF4B3F0208469D35C
+:102B8000D8700AC1E0D63AC686D0B7CC60BDA41EC4
+:102B9000F7C3FF2F973E7DCFB9237CFE4AEE137615
+:102BA00086AAAD9034C98EE0A443A11B3D4E9A671E
+:102BB000D3814993289264047833D54DDB37F6935B
+:102BC0001A35EF7307416414911E81B413D8C00104
+:102BD000D8551956C70AA91768DA782F6A8082DC97
+:102BE000D2EFB7F5D60EB22B428F862B872E967B6F
+:102BF000C9BCF6BE5C1DD1787C1B46CE4D34632C1F
+:102C0000F5FAD224C41C38BB6C18471CC869B095AF
+:102C1000EE85059CCEC34E075E999469761E6AA424
+:102C2000EAF9272252AE9AD3EF96A268D3A7932F40
+:102C3000C8C1E8500F7660352D57D971CCC3DC037D
+:102C4000B469AFBA6AED437F31140DB57F0CE0A3D0
+:102C5000DCC6DF788F5B8A1BC8A83E34DDA28D649A
+:102C6000A0255861324AA95F491E93690CCB098798
+:102C7000C1DD0E637E0363703503A62D1749D1892C
+:102C8000561C3F773FE072AFCFEB6CDFB98433C4A3
+:102C9000BF22F756D5C7E8163F7EB77D145EF6888B
+:102CA00003401C18CADCE83BAF556FEDA52212D5D6
+:102CB000C879E701E58A4978085291FEF6B52B926A
+:102CC000B4C1806DCE56BB6BC68C933687109AE824
+:102CD000941FBC319F1EAC882EBB7B1AF7AB986D3E
+:102CE000E5AF44A03A704BE4AE2FCB976CF2799EDF
+:102CF000E48D4C6176CBFD7FE3A31DF64820FF4AAF
+:102D0000305B04BAD9E658ED1DD87AA8F4F2A2CC0B
+:102D10001645D99498D6CF12A148CD8C2BEA190725
+:102D20003E15CAE87E8AFE9C24A0994FC80F9A4B94
+:102D300031BD890CC95CB33F2D5D361D3CBBC4F26F
+:102D4000B2A802820135C5BDB287D0769971BE3670
+:102D5000DBAA5B1F22113B6051073768192FDBB4D8
+:102D6000F7C03EC92BA6D95A32DE74AB3E33A93127
+:102D700010CC283B809CDB859CAC7D56160160B056
+:102D80006D5C451CC6778316ECEB636EFB2BDA7229
+:102D9000979A4F3FC873E631644AEED1A07DBB8459
+:102DA00028F53CA3290DC17E2B8ED4A6881B05399E
+:102DB0007A8B8F2B26958E7A3662C045E6B5B12E7A
+:102DC000DEF9F580A0B83C136E573D34746ED5C162
+:102DD00024BB36A9DCDCE12798FCEAB4B7A6D87995
+:102DE00044A91FD724F8C0F152079EEF7214674B15
+:102DF000C74E1651FE89FC64798456089DFD983FA4
+:102E00000B39677195193A5043F34F24BA4308744C
+:102E1000133E806046CCC66A95E5BED7D083E438C1
+:102E20000F527D3B6BE146184D615DCF03C39C2F74
+:102E3000E643432A23F4FB4BF8E98CC90AF2134C0E
+:102E4000F3E2FA31CADFB1576DCA6958F13C25CEB9
+:102E50002230A060ADF5153C8E9DAA33F9C3B4BFF6
+:102E6000F7816739F8995CA9C2342741F4C9758C98
+:102E70006F8928EB5EE02CD49478E8F09F45F13719
+:102E8000095F9CFBA3F72ABD6FAE9815F5DD58B11D
+:102E9000827B692EEB3E6DC113AC6B4CA566F54D84
+:102EA000B8C67FEB18F61DEB4D537DF67EEFFB6742
+:102EB000332CD10855C706640EEC3BC6515A262D5B
+:102EC0006C1C157683B5DC981D7331E4B43D4CA4BD
+:102ED00054A07825D11FC78A7A9E6DAD894974C5E3
+:102EE0001FC64D312F53674F9A54496483A77B6B9C
+:102EF0003FE07AF1AD6F244E07E831A2C0F45EA93D
+:102F000030B0E8165636986AA4FC4EA5E241133953
+:102F10000A57A1A85C33A58CF0409FAEFA6748B968
+:102F20001928E9CB3300B79DA1722CBD567B91388F
+:102F30006BE4546FFCFAEE0625A944CB3058BF0B66
+:102F4000EA2E7B749E2037A86B859A57B48A321B71
+:102F50009CD9BAEBD2971986895960570F9EA9E27E
+:102F6000B78878E36627A73C83B47541C9C80818B9
+:102F7000017077724A3FF7C5D8E6890F7A7ABC3E6E
+:102F8000FB15D89ACEB589AB5737A553D7F193A582
+:102F90008C607C8C71FB819CBB1F162B69680BC0FD
+:102FA000FF269AADE1D9E7F714382B7C1246E61CD0
+:102FB000ABECF2A86999282CD6569EC11E2E5E58FD
+:102FC00022951B05E501F83A9837501C48AE35DDCF
+:102FD00003C1E87CC6683BDB9EB4186B5C486ED3CB
+:102FE0000D91E8A3F3443C6E07090DF043D3E712BB
+:102FF000FC347DF7EA258DBE6036FC3DBEF86A677D
+:1030000052E970178F898742B3792F9E1A704379DE
+:1030100095A1683C5CA6F03B8619934DCDB5A044C4
+:10302000E2C9A127A6D09327536725D66CE13D8D31
+:10303000143917E1E4367117AF33E7F3798F88F568
+:10304000FC65C0C0B03D8445492F6C13C7B948D357
+:10305000BEB99D03CFA39F3896BCB57A7CF1C9CA8F
+:1030600069E6191952703DB4B33AC5DFC00D8CC77B
+:10307000A3E9355045E7F210B054713F503E11A816
+:103080008ECA54555F57120D9CAB0177A3F243FDD6
+:10309000FDE459F182A8D1A4A72E60F65B7E622ED2
+:1030A0002874BBE6C35E061744A4469D5A248AE7EB
+:1030B00024C142924131A4F021121411D5CF4B0703
+:1030C000FD77902EEE9D2BE61C90BEC05E7F9DB3DB
+:1030D000710B7EAA2E6DF2A48948F53289876A01A8
+:1030E00053A918C265FA5CDBC44B96F09E5C9367EB
+:1030F000FE5C3018863D6EB80BF678B8089AE87812
+:103100002393B9D58517D5B818B3ED3CC2875B8139
+:10311000CD6A076C8ABD4E8174FDB4A844F3221CAD
+:1031200093D84CC4BF8778EF7D5BD673B4901945B4
+:1031300024E4D6AFDE7D56C462EA7C7672B3F1A099
+:103140000F7D773CE7B2CE136BFAE3576975464AB9
+:10315000D9CDC22CB87ACCA3083A692C0143E963D3
+:103160006A4D7AB46FA716DFC4B2F0CD934C4A8C87
+:103170005544DA3D76156C250D4252426CE931EE2C
+:1031800042CE285DC176F927BB767D10CB671BDC6C
+:10319000B3294DB73A2BD73FBC1237C8A91CB0EDA5
+:1031A000914023CAEC801A15C125E1A1F59B3E8010
+:1031B000A1D4E8DE7047DC3F89DB55A24B3A9E6E16
+:1031C00063FFA088406E7A3685A743BAF32C636309
+:1031D00067613A23924D10B2D0BEA2020D6E0F78F5
+:1031E000B33978041C4248C2F815E584E19AC61A3E
+:1031F0006DCAF8D942982BA2AAFAA1F6DE6EB8BD24
+:1032000021E3E9D4F3B14B464CBD97D1A63E47E14B
+:1032100014F6007D0DECD17FC92ACADA17FF669B30
+:1032200063580569A4EBFB202B7C9AF69943AAD737
+:10323000DA0A18C303537401388B9C60CEF51C74F2
+:10324000E09600EC2F41AFE42E8A10120A284F6559
+:10325000C8DFE629E6CEB81800B4635B25A90C5A8E
+:103260002C43ACBC8BCD079ABE7CCB8F4D253DD477
+:10327000CCC53E6BA75A48B561B02346043694E5E9
+:103280004625F795359FA49FC443170E6FF584B26A
+:103290002138F361184276EBE3017A60F5C8B78410
+:1032A000E065F5FBE8AD68C8183A1762DF1404BBA7
+:1032B000DA2C3D33CBB9FA5854D848F4D3DB4B263B
+:1032C0008029962F8A4D405746BE29A6A76C1BF72A
+:1032D0006AB5AF7F46F909A069A0B4B2468E7FCD2A
+:1032E00010EDB3116FCFD30CEFE49805DC6622E646
+:1032F000A4268ED1CFA745727A2596124177F4AADB
+:1033000097E22290C38BB07D27B1FB7ADD6A71030F
+:10331000D47225973BFC1E37743195D17E69A1EBA1
+:1033200095DAA997CF5D54AC6E00442C0690C83650
+:10333000C5AE863A67BBEE33683540E0AB42A16E5E
+:10334000975C2E59FF9BCC4A67ECCCA23326E6D87B
+:103350008764DBF3B98F27A5F68F2F233E25EA94E8
+:103360006DD01C09BD9A85121201EA15B70D77CAF6
+:10337000804373DD183194783DE7A9A22A0377B41E
+:10338000A3CEC6D5094E8701303A988F188E2BA24E
+:10339000E8ED1B3288A8FB565DF55F9D542B5AE083
+:1033A00081EA0639AC83B37F012F248E35A2EC1954
+:1033B000929727557FE23365F831D711AA8FB1383C
+:1033C00030A5F5ABFD9A0E9ED51B5AAF89FB58C6AA
+:1033D000B7A3EE293C387EFD6854ECE6DA4344A8F6
+:1033E000431CC42712003A69329521A06D34EEFEC9
+:1033F0007F978E3155D9E0A14777557C18E73B344C
+:10340000DAC8185C275241983890E1187720AF0647
+:103410006E302F8EC500078B7402A5A1524A6A4BED
+:1034200076C021C5FD3D1D4B29C316D35A6B50ED07
+:10343000CE4FD613E17D1BBE2B1F4149F495FA1EDA
+:103440003456340B294A6C88B6353D5452A4FA8759
+:1034500076BDB9EEC4645B718AF563A681D37160F1
+:103460004170DC5898DCC40369C80441CE6216B7C9
+:10347000546BC4859A3677E1F4C8884942FD92B509
+:10348000E872C413593CFA2F408E5C0F148B400530
+:10349000C4BA2E6ECF9B892202421A79625B35F143
+:1034A0005796517CD30AA67051DBF5607C838CAFB4
+:1034B0003C7812D078C3209E78CDF71E0E49C2E921
+:1034C0001BC03B2B8C5E7017CFBE511C17079EE7AD
+:1034D0007E12842F02D9A002FC06A364D8DFDB4849
+:1034E0004CA19DCA0AF2383F0CA8C26174D65E8F07
+:1034F000026F749B1DF92544FC5CCCA0B358B7C87F
+:10350000D5C0028476B0826DCD856A847EA6DF4AFE
+:103510001EF82884F4276FC6BEB9170C99640CA74F
+:10352000733F01F292CC1AB21F253ADE73E44A04CB
+:1035300086BD7A836099445A51D511DC89C6A4911D
+:1035400028EB3F72F1DFA56F2DA956E32C8D6CE8B7
+:1035500011F90AD5F8E6D7385EBC82A80A45180FDB
+:103560004CABBB2369D6D5C67C9845427229DF4B4C
+:10357000F5CDB2F49090CBE3B77D8BC97C56A3DC3C
+:103580008E888AFB27588CF5DC27FAC3F908B244E9
+:10359000FD074C58257E205037FCA5282E06421FDB
+:1035A0003F9ED0CCC456EF692D60B6AC82199BF11A
+:1035B0007D4769223DDC0337247300CEEC657D2412
+:1035C00081872D2CDAD9AF334AA4DC716B09A2179D
+:1035D0008F35299BD6FE2BDF8FD440ECB97D2CA8EC
+:1035E000400293F8F336F61FD5541688EDCEB85C3A
+:1035F0001E242AE4119B629B1F66B962D9FF466FA5
+:103600009A8D0E7F2DD70FB440DDF5D372CF4819B8
+:10361000038EF0EE28185D44DDCB257D5DA951A910
+:10362000D719F0783D01097B69D725081B6574051A
+:10363000967338AA03146C5F9B7AC9633573B0C55F
+:103640009A650C29DFB75E2A827A0E578F9528EA91
+:103650007A0DFA8C210622CEEF9AA21B478AA6E9A0
+:103660006DC3E0B2275E73DF92DE11466E3886448A
+:10367000907E9B12B6A2FC58081FA60073FB911106
+:10368000474A4D4BF3C942D3223582B324F4A97B78
+:10369000A2E52C44D44EE5811F37A308D6F3963417
+:1036A000E15AC91552C3B2CF45B2D61DF45275F2D4
+:1036B0004FECAC931AE6E52ED683D40A04FAC0BCCC
+:1036C0009A86939C5634FD874B124B0166E4A34CBB
+:1036D00025B65B7128BED4861708AC76704A238164
+:1036E000624F4FA72ECBA66F4E5B9547F4253A6AE3
+:1036F0008BCB948B9620B5040D8365BC71E8EB47AA
+:103700000A166BBDDCB0754CFC701DE5BB7B299CBB
+:10371000B42C0E829E0497CB145E96B7A51B2A4B41
+:10372000445FEDB198DCF6A9EC291B1240D48A382D
+:1037300083CC3B6C434775E95666837E61E249C49E
+:10374000D1C97AA5C4BD6C5970FA0AC2EAAF63F850
+:10375000E72CBF7D0008A6683857DE2A447D7A0929
+:103760007F59947F6FC80116F418F089F1C7A3A39D
+:10377000657B99ED33F3D2E13183E2B47D274C4987
+:10378000A370246AE49F4E0F23AAC37FA471EBE3C6
+:1037900016C413F55B60A2CCCE96438A9F7E64DF8D
+:1037A00039E7D5F7F9998F9A8A6DD91E354145C108
+:1037B000264480D0CD84D2907A5B9AF7AAC0DA3CB6
+:1037C000D272D1611388484D0D56DD93F9E467003C
+:1037D00077710A82C75D00E17B68676FF4BDE78D92
+:1037E000FA8E8044ACF28692C841D261A4B1DC83E7
+:1037F000D2354DE147B87062A77CCA08628936AFFE
+:103800004D3298C55C0BCA83679D1EBB5CAF85A813
+:10381000BD1F181B566FBF42EC2BAA645676ECDD19
+:1038200092DBDE8134A2E116A1ABBBF5886F627D2D
+:10383000AAE8FEA69E0369E8093C223E3F01B46E59
+:10384000A7EA71E18BE45EE25703EFE134AB8DE66A
+:10385000FC0AE39113CB904D7AAD8249C04DF0093B
+:10386000906F5767F51FBB2363751822136319B94F
+:10387000B9FB9DF8F6D2793D60C52123C150C10D39
+:10388000CBDAE5124252A3357257D2C641307FDE01
+:10389000F119916783B4A15B533AA23723101E54E8
+:1038A0006744B5AC3BA624DDF25C94BDFAD7526FF9
+:1038B00071D356F536305043F37C96B94B991529A0
+:1038C0009ABCB49C2567B25DBAAD19C57CD211D93A
+:1038D00050F0A438C5928823774A67F807130DE2A1
+:1038E0004E0DE2548D691989480E81348C539B55D5
+:1038F000EFA92D86468434AE2693B80DB41DAF993A
+:1039000055ED3667E245DF5F906080E2CD7809F1E2
+:10391000A05683DD0D41BFC0803E03C415935C2CCF
+:10392000D15054B816DEA36293BD26E9536FAD2182
+:103930001732CC3CF88D876079AC7407EF34B2C491
+:103940001F0B0CD24EB253A09B3847E92AFD9911A8
+:1039500089DA4FCA828A393A869818A6AB15842A22
+:1039600048DE0FF64FFFCE930AFBA8EA12012E2E77
+:103970005DBFA7CF45AA8372CCA7F5F2C14A49180B
+:1039800067E57AA28BCB02A532F2F599FC2BDE9B80
+:1039900025BFE02B26CC48772627F47FA35BA1D157
+:1039A00076565891B74C01C879FDA86EA0F8BBF7C0
+:1039B00079AE4927282ACB9914A6596AE4582407D6
+:1039C00094F964C5A23E9070DCB94BBC4EC35768F5
+:1039D000D4A3AD2324EE2CDFAE80C708F7BAFD15C3
+:1039E00025F8907F1CD5B11FD6471077CD021E0B4E
+:1039F000484DFA1B9B17FD77D4FC4466C371169B98
+:103A000040AD0A55366302F1ED0479F3E8C4647FF2
+:103A1000770A6A4DC9FB2A0D5F98E441070C020042
+:103A2000040139D82E237E20C81A6AD28FB709A97B
+:103A300056E9E45E62A096385E267F0D80E18865D7
+:103A400011DFA67424BD200032C4343F0564D34C7A
+:103A50004BFFB25114F53DE6C7E8EC8C5B4FDA66DC
+:103A60000894660EA1985FECD2BDA4E692D285754B
+:103A700032BF650166019D84E4B5D197EF1B0865EF
+:103A80006BF366C44BB807E144116590949734F822
+:103A90001F2DB2D5D319DFD6A0B1A8C546E66B0B52
+:103AA00044EE292F5527C8972A7AC3095734A4FC16
+:103AB0000EEDD195EF795D521165A3FFAAE1A52D19
+:103AC0006F8AE5F989680685295874CBD45B38DE9E
+:103AD0002CD830FA626A51A6527CDB0B21C083DA03
+:103AE0008EF0EA7556164E5EDEAF91A8B5D1FC5B3E
+:103AF000CBF9964ED51020568CE4D65279EEA141E2
+:103B00006D63EDBFEF47F1B0AD78E5D94502BD5625
+:103B100022C2858DDD4AFDA1D51DC6D3DC96D9070D
+:103B2000F65850A681F6AC05F6F0DA543C6A3F2D03
+:103B3000899D4D232962CD91BE450756486AC69995
+:103B40003FF4A5B3608125BA87C6DCA3870F97DE53
+:103B5000E0B843D075579738CDDAB11694789555BB
+:103B60004C976B789164F3573D53A74EC39EFDD697
+:103B7000903E7589222EA88E37AFE0765BA0E4D800
+:103B80001F8AC66AA609DEFAB510CD4D099C5DC72D
+:103B9000FE29AE654C35F9B4FB5BA86F300EDCC373
+:103BA0007AEFCF954B82CC02B871EF05AC3CC9558A
+:103BB000D0F520E0E5438DA29DFD44E505CEB4138C
+:103BC000075E5D1AEDF5F12BFD60199D101CA66EC8
+:103BD000B816CB06A5E5C971A7529CE059D984F067
+:103BE000872CA04B0BE7A16CD7886DF7B8B9AB2831
+:103BF000D69849DDC59C81C76C5FA006BA9941067D
+:103C000080EF1457CE1E8F79CA6E316591E6FCC6DF
+:103C10009CC389362949B899D9E341A27B39A509C2
+:103C20004DE376FBBF38C2D167F40043F8BF1538C7
+:103C3000827656507BF02F6A111892CD6D8965718E
+:103C400048FFBAE1EE2EF18207AD5C03A633CD9DAD
+:103C500012639A5D1F9F14C3D6CE1FB067475C8066
+:103C60003353D23C8EF9AA46F8B9D7475CE73805FA
+:103C7000966304816C315114FEC8513A90E6719EEE
+:103C800008B76E6856B0C7EB4FDEDB6FA2A7196AA4
+:103C90008940D455E66769BBCEFB37DBE408C3B285
+:103CA00095D99253F791B6CE25695E0F34764DF7CC
+:103CB000F32D71B9D8655D1A2736A554348A0FAA39
+:103CC000AD437B26E02162AE53FAE085E61CEF555A
+:103CD00081A3BC09A01B4DBD55B5BDBF61895E3236
+:103CE0003E2808F431B4F57062325B5D91B9C71EAD
+:103CF000CF6605BD73A064CD955BB8BE589961E0F1
+:103D0000F5D3F7BFEC63FE5E63D05F33E716CE8C6E
+:103D10008444F7E6B79046B49724F4D950AED5382A
+:103D200076521098FD1FC793C8826F9E80E17CBABF
+:103D300014591E2675DE20D94DB36334F8D117E12E
+:103D4000462E5B12850C519182A6B2762A4F407B9B
+:103D5000831977DEC79C485ADC98A5BDA1E3142BD4
+:103D6000CB6AA818E685C1C6109E1EC96351BD71F5
+:103D700052338F78779D3FF8FE2C0E5655370C083E
+:103D80005C772DCC512836EBC1B55F636C3EA5B78F
+:103D9000A1C35507DA082B050608C811E925D0BFCD
+:103DA0008F848A2BB61B9BF509FF5A3E7593B3B9D6
+:103DB0009E699147F4F0B7A0C357C9BA02F77E34A1
+:103DC000CFA75E8B34BE436A017441B75BF5AB7D10
+:103DD00005A5562FAA56BD6B85FA8F2A191C971870
+:103DE000AFD4C8B293582EC9B42D5F582B95E83E76
+:103DF000AE133134E78F271FAC7239B7422DAFB8FD
+:103E000036163094932CC778571AA9AA142B095F39
+:103E1000CA3D9E8A159B6D584E4BC5BD917D531171
+:103E20000BAC941919851A1CBC15E0FB995AA2B861
+:103E300073ACEC0BCCFB4C457D352DB23BB552261B
+:103E4000832771EF8A996F59A357F8E65D369F452E
+:103E50000A1754584036741200F404B5EBD261547A
+:103E60002BD004955CC08F508CB3100EA8C0D4A288
+:103E7000F57971A7548BE0B067EE1A6C9CE270C0C4
+:103E8000D373ECCEC099D771E9AC39FCE1A2760AC4
+:103E90001AECE20CAF079C47EAB0BB0CD1E59D3DA4
+:103EA0002847A8798EC991BFF5A6B4295C10AD0347
+:103EB000C5BE169C8173678CEF3B6B21C360465C6B
+:103EC0006F177E2082005BE6778CAD276A363E98BE
+:103ED00013357EEFE40C8BBCEB1C81F72C8B18C7E1
+:103EE000431325AA0D2D39366530E095DD7F346EFC
+:103EF000B9889FBDD47857BCB10076DDF233692311
+:103F00009A689A57CBAE0A218781AFDBF002A1678E
+:103F10004570CC39A7727979E6DD07F4A95F0BD932
+:103F20001053A8B2E192D6780653E46C33CCFAD998
+:103F3000281F5D5CA6D5B34011E685D5E7C59A304C
+:103F40005ABA86BA7BF8993B001406A61F90D63F52
+:103F5000A583F7CEE12AEA343A427BD91496530579
+:103F600011885B7992652EA729388EF0261C8E7DEC
+:103F7000A907E2896EC33F8E60427A2FD72EC8729E
+:103F800073D97C640EDE51D0B7DA7E03EE6DDA1C95
+:103F90007435C3DC48B33B7E9A5DD5DDF3095366C7
+:103FA0007395E52992D41112AD724B1627FF890A39
+:103FB00016C37B63A01CCE3153CF4B5DDA6B5FA37E
+:103FC00078C742DC90930E4C3607D9930416C5157A
+:103FD00006DF8984C4C95E60F6E9AD03183D38F296
+:103FE00020D6F75896715AA7970E51A016A046E70B
+:103FF0004DFDB574A50B90D120627FA1FC5DFEC57F
+:104000005381666ED3D3395E18A071C8B1630001C5
+:10401000F27035F34D9C810F0D399312B2EB1E17E0
+:10402000194BD5E8D790402FBA5B07B4005D57F520
+:10403000FB7E8C441489E6D66716B7BE977C6D3B31
+:10404000238333714AF9899679C006C3005738F043
+:10405000D869CE2DD915EE25F0A9F8CAF0971D4FD5
+:104060008B399EA00E88458892C07D3BF4BD9BB6DF
+:104070004C71C0D00E629FA7192E7EB142AB158342
+:10408000CF03748310A637112AA4174D800A3AE093
+:10409000DCF74368C61CC458736D3789A72D7AB7FF
+:1040A000B4E3A2ABC1C9F2F468A3B6D94F95BC562C
+:1040B0004D700DAF15E2879F5667EB7EEA5FA4C790
+:1040C0005B7AA8F285EE3675B119DFA5AD07C0663B
+:1040D000B227845EAE5B871A16BC5BE60CEBB0724F
+:1040E0000A1EC427C0771A29B1364E0791BA6D0E41
+:1040F000EEEE2202BAD077B9480094705160B3FC5A
+:104100009D848A4071A4CA6E7E6EAB1FAE82B66675
+:10411000FF7EB4089359739688CB383484FABEDE98
+:1041200067C78F91E5F0D9936CDE002073995C7FAF
+:10413000D8E12C491358445C6B6B21E5E444CDAACB
+:1041400021E88A12749E1DAA3D0AF2702FF9398166
+:104150007CA4A7CE5525FB858C398526FD3639965E
+:104160009F4E0B7BDCBA73F2B14F822A11D5B1B1ED
+:104170008C52C9C35C12A9B9E88BCDC89A6B9CA5B7
+:10418000ACBF76B07BA9D275427DE6BAFDB154E0F2
+:1041900063EAF2EA46F71E0FA556A690D837AD4C53
+:1041A0009AFBD4B17D9842D663BBAE3538996C5535
+:1041B00043747834A8EB004819A08FDEF990F39689
+:1041C0004ACA3016451D5E38DA68A4A2080584B1D3
+:1041D000A873701CE87AF4D2FE5111874AA869AB23
+:1041E00099B2A31E7471F331547EF7091D7CED97CB
+:1041F00058EEFB7C386C03A1A8CF9F9989B70E16A7
+:1042000039CDCA9FD87E6238D43924A317CAA79063
+:10421000C1CDCB8B96BF23836F615116A72B6B0A41
+:1042200062C97DC3FC69DC43D3DEAF55A46D258E26
+:1042300083C279EA5EFF4D3EB63EE00304617E38FC
+:10424000BBDCF28416AA522FBF9FE31B33AF810E53
+:10425000DAFDD4024B33341778246CFB290DE9AF17
+:10426000084B91898E1912B77BE17D88AA4586DAC1
+:1042700090DA368050407E584649C8F5225C57A0F7
+:10428000807271B3DE6D5935F46C5D94FE69A5D111
+:1042900024C49E14ACC7A82CC6388837308C4993E8
+:1042A000E6BA693BFCC5CCF2B7834E8D5B9D8DE8C9
+:1042B0000659FD7A142B5328A25B4900FC5B709EC3
+:1042C00072750A9E792FBD44AD9D698D8118472274
+:1042D000F87007898714B70F15C9A70B7A885B1088
+:1042E000632DB0B73683C11AC2019C9E11DFD8E797
+:1042F000130A6D47683968164A00626D9A4D351E7B
+:1043000074246B5477E3150E69820808DEE3739B0F
+:10431000D6C183C3A2C2E2BC68E165196980070007
+:10432000643DA2134E082C31D0C6253E3C5D4CF8AE
+:10433000BF91F2527D36E7C9BD17E8AA0EEA471FC2
+:10434000075E50B3354C62C61822B149681E645CE2
+:1043500070057DA18BFD3F67F802A6DA5E9FD03D18
+:104360001D943E9E838E0DF97F949E60D77D596586
+:1043700012F7964957A14DEFF8B3FC653CCE705249
+:1043800000539993D2BE19D4E8EBA963282F32B118
+:10439000875F219464CFEABC1F14B9A202467274ED
+:1043A00033A1817361BD36A4606B3B6F9D4E19C50F
+:1043B0001A697733BB488C781DAC7A96EC439865C4
+:1043C0002902EF90823E66E12634BE969BC6B7DE98
+:1043D000496825D53B871C9DB3D406F91B32D3FA17
+:1043E000AC63BDF46B80FCEA53638A10EC11925508
+:1043F000E379FF7E71CCCCDEDCC2DBCD3BDC079306
+:104400008589CF74510420880444A0C4109CFCCB3F
+:10441000CDF16AA0618C23EE286548D89127877872
+:1044200079DE649451888C2D69ED047EEDA14BC832
+:10443000F775E7C4358D5795E04844214DA30FCC5F
+:104440005AFAE38F37C498AD513593C5C33A765EB7
+:1044500037744884CC1FDB27D479EECBEB49E4BE1C
+:104460008FAB2029833608BFF58689178BFE9EDD2A
+:1044700050ED0B56C7F2AABF87006A8E32671DB394
+:104480004D96ADDF90DE816590144F0B97F453DDB0
+:10449000C983CEF84E2ABEB6252D82C245B4237FED
+:1044A0009E8EB35B6479BD630479DC9DACBB0BA9C4
+:1044B000334F9F6B3678F7D0C84C3111BAA5EB411A
+:1044C000D478147CE7D36265B79B2C75AB53D102CB
+:1044D000ADF13586F2E85A730A420715104F6A3F6C
+:1044E00017F84CF51730B0E33DB8ED8FC9871704C6
+:1044F0009C6B4F325A89CF3D9A8EC4A29B635E7BE0
+:104500008A2238847F66948BF6E4FACD4B151B7CA7
+:10451000C8C7372BD50272D39ECFD2B6843AEE35B8
+:10452000CAE9D4DDD86961E8B68F61C1246D19BFCD
+:104530003FEF9D24067C047C1AB48460491901F77E
+:1045400063AD2D698C274456F8BA173E538373091F
+:10455000DC7081E038FA2BD148FC521333BFEF896D
+:10456000432FD2513E12BE85D9C92257D5A3C62F9B
+:10457000530FCACD48A4F267E7326AD9F46DA53C5F
+:10458000C8CE41CFF83A2881966C269B77E1D4A912
+:10459000DF2BB73DA866C0EF3F45F213D8B933CE45
+:1045A000C39B1B86DDBDEF2EF7FCFFED195AF529E5
+:1045B0006940B26274404DCEE5CC065F4057284753
+:1045C000DE003680C1707F8689DF597FB2D961E213
+:1045D000901485758E70CAB5FAA1F9C5C857D88AE6
+:1045E000ED547935B7002140FFEF5931421813825D
+:1045F0002E2FDFECBB18D7ABE59FAFB0D9F0AC1EC8
+:10460000DADBBC6C5C3D9FCF2D8620A84802F4C449
+:104610005419669892F151434F2586AD1C30A4D8A9
+:10462000AC00513D31AD790709DB96E5D8F3FC7755
+:10463000FEF6D5F85ECF3D12857E129E2471D49091
+:10464000FB9F7E7BD3EB2345719287EFB04D95AEF8
+:1046500047A2F2E784D10385FC516A9F223F82D5AD
+:104660006E3AA3695A86DA1AFF8DE5258356F7F567
+:104670004F9838B2CA9685AEF082A65A77CD2D3CB7
+:104680004BED00E3F3CC647B97CF87FA352F8CB9E1
+:104690003914B1A04683173CEA72F8A3110542858C
+:1046A00096DF4FFC37FF256BFC064521E09B3E74EF
+:1046B0009185D917CAA64F90194D44EF5232F1484F
+:1046C0006DDBB863C792C7E0ED06F7E38287C80ADF
+:1046D0008A2C6A803261752D07D59FC20D14213C4A
+:1046E000F187D9596D6E6C488F55603FB39FEBA031
+:1046F000E24BAFDB4F452502F6188E92AC5BB00D56
+:10470000862B9CAE6BD2F8288ED743C2D6F7E788AB
+:10471000E2462D9C1301F81EC7227A8CC398808C28
+:104720008AF2493EE2386B71AB17172ABC5087DA20
+:10473000E7DB5D1FA63EF204D05EB1CEAF1D60F098
+:10474000753C4D9E08A7234709F34B893B08B102EE
+:104750005B5E8A3DF53AF8EE697E03603A9020CEC2
+:1047600027C1797D1A03EC07D2A02D808077D59AD6
+:10477000BC7D0F439F111D2EDDC5DB59E9BBC8FB76
+:104780007EB98728A03EF545FFBEF19A0D48AA3AAA
+:10479000D2023C40588D5054A28FE86B8371B6868C
+:1047A0009D3D1899DADA0949300EA9721EFDFA61A9
+:1047B0009AE0EEF498B8045FA413E38514F6B39A74
+:1047C0000D545A8DA0651AAC08C1D621A0D8A142BB
+:1047D0003B881849728E150CAEE9A53F7FA4071DD2
+:1047E000B65A4E8F61C7F4E37F86948C334E43C72D
+:1047F000715683D90A0AF5875308452180BA1EFFEE
+:10480000306C808F77672E2EF5B1F210BD7B47722A
+:104810003F9F29612536778DE95C9BAA17D4133A0F
+:104820003D5671A1226B14FD1A976439BC7032BCDD
+:1048300097AA58EE29A5C21A1940E4D6A8C63F8304
+:10484000B4D312BDE9CBEEEE1ED67CFAA681EA63A4
+:104850008758F94BFE65D5E4A660CB0B80547A35BA
+:10486000D462F645ACF8E5A56CF27CC719FFBB2C09
+:1048700091DF661126394280B54D1806CDB484D635
+:104880007DAC9785F66A7E60F12C6714DDBE868F5D
+:104890007E11B3878E1CF43C1629EACD551B3FE6EA
+:1048A00031DFB52624A81538A9ED4D2E02961ED766
+:1048B0004289FC6CC357EA851EE361910E6A76B7A4
+:1048C0001A80B7FD1788144D45626CB9363EBC6E30
+:1048D0000D086D8196505BE49446E212BF09FB7FA0
+:1048E00067C543FADBA9FCAAD59261EBA797ABA3F6
+:1048F00094B1E8AD72FFC8C79F0F22191B3CF6B0F8
+:10490000F1FED721B8F61EF2CD019DACBA18189968
+:1049100052744DABD6D6E7E60BE14AC02EAE215B12
+:104920009C717C3C044DF73F45077D6C9C54E0F83E
+:104930000B86420D9D7235E117B84B67E0A6911AC0
+:10494000E907C57880BD7054F4F33FF0DE22758C22
+:10495000249E70CAE07219387E16B5C103D0C9BC56
+:10496000A5168E71EAFC458042405860E964756680
+:10497000DD405823E56E68D84005E7EDFE6339D584
+:10498000DC9294BA75A4B71E703C030BB4F4BA3829
+:10499000CC489D299E32190C8E29757F4975B969BD
+:1049A000EDDAA314BDFEA17FE328E1D6773577E1E8
+:1049B0005C47B4C4309F7CC2A818B0381E6BA10BF2
+:1049C000E8629D70CC69DE8BA1E8B1C6721C4F3ADB
+:1049D000D5A62A6960F7138E520AFFAF74B2D5F3D9
+:1049E00069E6AB3129864E20C970F839CA1FD6470F
+:1049F00032FC145D741991FCE7A7FADF6C06615E66
+:104A0000ABDB61D34B353294F0A9527D595CECD5C8
+:104A10006B26431592BC7AC5F2BDC07C8CCC8F103E
+:104A2000BB672ABF71517A6E603A059E23E74359EE
+:104A30004765B6FC5689C2A4201A8D2C6FB2BF5AA6
+:104A40006216305B0058B5D8693C94FAE3D2F0D2D4
+:104A50004FD8B03E66980FEAE32B8EAC4FE7A02705
+:104A6000721A33C98428089946617D4BF5D7F8D46A
+:104A7000F73A0FAB0CFE7150A386AEA63B54076805
+:104A8000EE7B4503C249EA2B07D93E7C676BE91CE4
+:104A900063EF6DF200ACCD12D1217144C653BC71ED
+:104AA00065914E6E3E95343A55AD8AAA0055AD8754
+:104AB00010840A848E6DC82A3A3F01691573F55C2B
+:104AC000D1A2960305429BBA1E1033A612F81D4BC5
+:104AD0001DE6810AC898FFEEF8F51C2CF12D022A7C
+:104AE0001B46865468E85511A3D08D638214DD1EE1
+:104AF000B3B57EB0AE9990029D3E82011DA3C2C5A2
+:104B00000C1807539C937253B633BD97E870246A10
+:104B100005B4387CB8CF2229DFEFE784616FCCF58C
+:104B2000C6783B153F200703EE45E5A8F55311ABCA
+:104B30000849EA752B30036FBECB398F08E63B0E70
+:104B4000F3BB76E082FB58F5A06583C8DACB5A9FA9
+:104B500048C4E10A562FF4757E1F9BB16100DDCF7A
+:104B6000BF5F58833F2569D1AFEB843A66F7C882AF
+:104B7000ABB5329FFF3C0705104CC101B3E7FC5AAF
+:104B8000020CDB114068DAE949A2C19AB3282AA6CF
+:104B9000B14B0970F2FC5962B2356815C20ACA0DF0
+:104BA000167A13CE42BCA647294FDA72AF8A25A2E5
+:104BB00053BDC4E1B2C52FCE039FEC7F1FD808269A
+:104BC00052CEAA4B743F538255AE0489BAD35CD0FF
+:104BD000F649691B3A77C0CCA9CFCF2543F5609A37
+:104BE000F0010C93A54306135E73121092B7F76C95
+:104BF000451C48D327CEF6A2980F1143C12130CED1
+:104C0000F450A50E6FE1A7F5A09491F2C47BBD4BC3
+:104C1000BA45FC33A30F6961FCE5294651BA81749A
+:104C200005BC16FD2694A7720A8684B3D7DA015C08
+:104C3000A165C5319D871DE6D5056A9B294351397C
+:104C400034CC0B5C8B8E71BDF5277C785B2E235F9B
+:104C500024731779C2B97DB4CC59D42A0335084ED0
+:104C6000AB6B334619A663BE36A84CA47E1DC62383
+:104C7000F8C92A122D1976A02B3BBC0EFC31479E99
+:104C8000C9D3E2BCEF2096EAFB6E8034E7C22BB2B8
+:104C900012D61DF6F3BAC204AA473A3AFBCBF42463
+:104CA00031AFAF4E110E3AAEF19A849DE6149630B4
+:104CB000E687E232056302516F78BF76C8AA5B9F30
+:104CC000BA664C2930560FD43C88975C5A2FB121D4
+:104CD000F68E96C1A3F997F13F3D7F2250400E9189
+:104CE000DA72D467D1929D53CDD6A52D4C0C1C9B66
+:104CF00005D71F4B1A6BE11DEDB4B82EB8E843BCC5
+:104D00000B89C94E15A2E2B843528937415101D6E9
+:104D100048523557E3EEBC3E547A26F53E3333CE47
+:104D2000F067891A30C0A97BA63EAFF4761FEB6707
+:104D30009E6C2287B08B128E83D84DB96AE1068EA5
+:104D4000EF50FBC4EA0BD6565F775AA70E84AC2A05
+:104D5000E8E4B5F4EF361FA7625DB2708160585881
+:104D6000C436DB2F88043FB668DD19B452878161F1
+:104D7000D0A0DE6CE3BD9FCC40F2383539B9616616
+:104D80000B2B58BB0E9BB9D986A5EA1F5EB518CC74
+:104D90000B58C7AD84541EBBE741691D71F35BFA24
+:104DA0006602BD4DFC393DC5A88C76B550404A41E0
+:104DB0006A25C79ED3B3412F5B641381EFB4DFC272
+:104DC000956FBC6CE75FB1DC78BC424FF83B31B10A
+:104DD0000BCA98D52A85603E812708156391E57630
+:104DE00050D994D8F432A13C9552227CE3792FC556
+:104DF0009681F7C54A304079AF4A49646454857456
+:104E0000C33FEE054E124F304C04D4EFBE3833DCB6
+:104E100059CCD29F5C195E8125CBEF0E7D4756C8D9
+:104E200033CDB703E395F0D40BB02955F926B60F6F
+:104E3000C5672C75CC18DFA3E5B671314B00A5D042
+:104E4000A5435DA269552D8B97DB1F15B526D78924
+:104E5000F19628469CFC241200BD88405AEDFDC600
+:104E6000293A38C29100BD485CF509E575B91B14B3
+:104E7000BBD25554867BB681FE5C6FC6DF33328B66
+:104E80007FBEDB45F44FDD06554C12C927314EE19C
+:104E90001034F88642B0CC46646A44139D1A1281DD
+:104EA00013D59759C8CA8E92B2ACC2024CE134DA1B
+:104EB0004B4C4CB9D9BF15F987899335FCF5AEFE3B
+:104EC000F1F1C1E09CE74642C68409CD91387706EE
+:104ED0003DCEE71104EFC4E8AB5791C105CA637634
+:104EE0004F7ABE4FAE3D7942F1E193871124182BE2
+:104EF00013FFB48C07C902B5A2FB4CB56D764367AE
+:104F0000F92E9D9910291C53ABBFE0B8B2E9E72CEC
+:104F100054009C2FFAE215E84631B0F9DEAD34C9F1
+:104F20002A16632738DC2EB4894CB131F89333B597
+:104F3000AA1B53EC3826EDF7E88DC9DAAA6B16E305
+:104F400081BD435E96B1062BABC8124FC33DDC8BCF
+:104F500015DC28EC0224738F81D0161707841341C7
+:104F6000AC017FD345D18B9CBFAD3F12F6095C806D
+:104F7000AF2B839C92CD5E95C9E7A1E3A919F7E514
+:104F8000F85EEEEDBC167BDE91605B6A71C167DD99
+:104F9000B4ADCED2B6AA0867A8330AFBF2CE052874
+:104FA0007040AFB400D293D493BF761221A709E822
+:104FB000F032DDBDF8812AD16F12907F93DCEA5781
+:104FC00010CCCC0516579618BF1E84857F7121041E
+:104FD00066E44C921D609F69730A891AE756D98965
+:104FE000E8042B7E1ABCA574EF9C68A4775C51E1A1
+:104FF0005CFFD5ACDEABA6D8C108FF20857505CC1B
+:10500000B9C07CE428EF95DB09E46C9F2238860266
+:10501000D43242687DDE491937D64A794876E77638
+:1050200066A09713C00AEC45DB2279BCB82F88B381
+:105030006A410CA3970F6B56F1FA6ACAD8CC0E637B
+:105040006BABACF4CA4761DD46BADC1FC02506EF86
+:105050003D33191B532427C7AFE20DDB49EAF61E87
+:1050600023CFDBB01FEEC9FE627F7A5AEFF93FA86B
+:10507000EB21A5D57AD85FBB617F58AF1972023C8E
+:10508000F08806FFDFD071D45DACC43B05F2948E8E
+:10509000B4F082A92CB3AC7F80BE79C7C8424FE27E
+:1050A000FA7426CC057A68F4338161CC54E87F7BAE
+:1050B00097DFDBA608988C1296F0BD05E75C205BB5
+:1050C000A7D8A2977D6D79D1C888B73A1BF69FFB08
+:1050D000537AD960D4ADB22C7EEA049D54CFD63A2F
+:1050E000D83E4AE6C4C3FE87F27F3932DF15AEBD33
+:1050F0009C811B557759B300A78E04177836C2667A
+:1051000069F33BB1B1125028B522715C358C9F25F3
+:10511000A2548DCC6747F925E2A7CC32A7E4AC4C6A
+:10512000BC7316FB4191B9D25675102185CE20541F
+:10513000A0358EF5051857CCEB290755F6BD440769
+:10514000277D78B2586D2E9AC65D12695E20D8A46C
+:1051500097E4F80B37BB59CB703856D29365547F20
+:10516000DD5CED91CBA8D0CFB047B78808A9F0EEB1
+:10517000285CE1090FB02EEFF3237A090FA5C4B91B
+:10518000556D5C661C4D03D4C290E31F74CA7FC684
+:10519000F33C748584D39DD510CF6E31A7BFA66F25
+:1051A000BF577671D61FD282DB2C79F5CA01A1D701
+:1051B0007C4F1B044134C1DBA5C4C1BA449EDF4C03
+:1051C000103FEA82AEC457CAAD3667042A5D66A3B3
+:1051D000FC01923FEDB7FA6DC4F938ACDF0C989141
+:1051E000B8AA6B94A795B308EA3D94A31FBA915C43
+:1051F00087B8E1ED3E447FB6C53C607BEDFFD21839
+:10520000FB18F5ABFD7BEED21822827173A54044EA
+:10521000DFAE2B6B5670478DA57F6E4820F984F268
+:1052200019C27635F5CE41A5C1CA894EB18C54C597
+:105230000CF315D83B79BD1931C10D47F323733AEF
+:10524000038E293FB8FFB7F75DE93AE5E4D9694332
+:10525000B26286536FE87C88D1385223FD3EF63324
+:10526000EB5F855AB08EA1A0F0967D190AB0131F8E
+:1052700014BF4801F3FB0C63B78F5C0F9A11D292F5
+:1052800053480969351FF2BCC66AB7BCF04A9DDABB
+:105290000B970CD66F89DED5BA69C5DBB2A1907DBC
+:1052A000C0F7C0F7142382D69E4510EB4A40DDD8E4
+:1052B000422A37BF59E167A0EAE6A1B9FF15DDB878
+:1052C00057D6FD9891B70232BC2D751D0166E67365
+:1052D000D2719A59078736D2E1F89C15C2C8CD0C15
+:1052E0005883A69AB8465786233367EC1EA36D0FE2
+:1052F000E9D84471DDF2441134E5CD77D19396407D
+:105300008C845BE15169EF8BFAB097DCFC1CA5EC57
+:1053100090EFF125DF08982EE60544A18CF91813CB
+:10532000E3DBA459793B6B341554A7EB99C3254CA7
+:105330000033B4B7BA3D56695AAD9FC7054838F631
+:10534000E19AC17E150DABBD47805B19D7D82B48BC
+:1053500010BCF3C0BBB38108EC58EBAD78D09DF81E
+:10536000E73B8DC8BB6F4107DB1F5B9A4448453F55
+:10537000F6090F3842BF9E2838A893D69922F7DD48
+:10538000E882E5FA598E445353EA837C07D5630BD0
+:105390000AFB8932E05C5255201B1D79E3A8D5FF3A
+:1053A00076AAB02F54CF4322F55B0424C92E494777
+:1053B00097D7C47C674A8B45D0334F932678981C87
+:1053C00063681DBEC0DD66FD18D0740F37AF2EF4C4
+:1053D000BBE607CBF0AB727AF76168DB44228A4CFC
+:1053E000D564F73AA92AAD3C9E48473999875BB8FE
+:1053F00084B16FF39AC07584B5A4E865FD2D769EDF
+:10540000D084675D571EA4009421AB8861D0F20D53
+:10541000AE3E57E6EC0F64D16F2B4A92272CCB8B14
+:10542000A3F18626506CB15602FBCA179FB4F72C25
+:105430003A9902F08500312977578801EA6F1FEB0E
+:105440004F767BBA2FB3CE81C1C983B1C0D33DB8EB
+:105450007F2F8EAB270552D41C70ACF0983C938FF5
+:1054600084FE9577787BE138D1466A4132BB55EAB4
+:10547000DB7C92D3669A30AFCDACC5ED834A85A56F
+:10548000832C15B837E6A5AA497E63DAF18452B4B5
+:105490002D2857372D6F4B5C907C18785E69898674
+:1054A0004AE0536F08A3CDB8BDCA43E1B3DB735DD7
+:1054B000079AE8B620AB81C96F82697273175629C3
+:1054C0005459CAC94C728AF08F60E1FF5D0C2A8A78
+:1054D000E90010FD5E5FD0AC90D3C49FA8512B6C47
+:1054E0007319AD5837CB75F65191DB3511A11BE817
+:1054F0006422F0A46A2DF3B3318A91B5AE91E41D14
+:1055000074CDC523CAD0EE1058D7EBE1EBD2048599
+:105510001895A001F9FD88A5271931047A32703A4F
+:1055200084A03979620C1AA573EB3C94DD16ADE9C1
+:10553000A1187BAFFEA1DF3A604B84DE8515FFEE3C
+:10554000EE8AB66AF79D1FB454C5EC783CD4F8A532
+:105550008B946155593A3D9B96BC404BFD531B3B88
+:105560009602D428E1D8350D5EBF7F53CD02A33318
+:1055700033A32C9FDB3510D2F4DDAEB40AE7E02C68
+:105580006C9F3A01A2D5FFE176EAC16735FC4F99DD
+:10559000A6DEB6DF2DE908810B19D7EAC64D58D231
+:1055A0007E1510128C78CF7FAFEB5DF7054CCB5595
+:1055B00020793C6C1606DBCE49E3C629A81B60D7D0
+:1055C000203F4C46DC7589D8FF8EBE9DC24F3A9075
+:1055D000E2F26263D3F5AC649B9AACD2DF56647F8F
+:1055E0006591AF25AB6A9740DCAE597DCF23A79C70
+:1055F000E33F4ABB6956A3C732AAC74C65F72E0CD6
+:1056000069E12298E22618B326E7ACE6C219F3E76F
+:1056100056ED4EE08B28A38E7228B1D8B18BBD1900
+:105620005085BA0B9B0ECE54386267FB49F6185270
+:10563000ED58C3A8A509A8119BFAFAF8DD3C55A8B6
+:1056400007B23264B3F3CDF51112725928A606B22F
+:1056500048D06C518EA07830A6DDBE50DDABFAF993
+:105660002B597ADE546D0A70D0FC4AAE4D4852B5C3
+:1056700027111E32693865DE9B76FC151B0D003E36
+:105680004240F0F459576E01D519F54ABFA2E0F631
+:10569000E5D23259FF569559601956AD697CA1A3E0
+:1056A00028E414AF25300074E4442EE0F3015B7865
+:1056B0002F57A36F4B394AFED44EC94DACDE0B19A0
+:1056C0007AB82130B541C947618425FE170CB7CDA2
+:1056D0004AFF32AFB8A52821D6C67A50FD5CDDA5B9
+:1056E00050A69FA9EE3FCCA5C940FE1AC232C229DE
+:1056F0007CFF593F50869E5B0AB79239C7EEA6E4FD
+:1057000013E1C52A9E196177C11F14387F9D65D9A1
+:1057100052FB87E25860DECE9756E4B787B69B927D
+:1057200083E55398E8E0859EA08E3506E166018109
+:10573000CC9B18B0CCEDD9410584A2523F6C515A94
+:10574000FCEC5FDF40F94B751DFC237A3AD648A488
+:1057500074294B8E8ED3E3397F00978AEA21BD915D
+:1057600032DAA3EC3B24277B136E4EA92C23F8B826
+:105770005CB600168379E383A7C35499D17BB6F452
+:1057800062849D5A3426C45313F8885E2AD8705A0E
+:105790000A2C156519421EA60900AA19CFF4F54D69
+:1057A000B310D29C63DF3B22CC6CBC123DE4E9F425
+:1057B00011681FF129F89C38A135EEC5DF025D158F
+:1057C000B16E717420881993865E8A1C5FC9148D2E
+:1057D0003E0318B83CF1350C13385913C446A16781
+:1057E000B609B986588A44990EB9D28B47A985FB68
+:1057F00025DBEB721E9D0A402C1DB6AB9B0DB10242
+:10580000209EBD86EFF9A7844E5F53A0F9DB373E9B
+:105810004B1D02BC212C033E10165FB4ACFD7C185E
+:1058200077044A27EBE4A0CF954F970FB9496F88CB
+:10583000C8766567F77E82CB33B47DFD8CBC25FFCF
+:10584000D69243479925066A07E8F0D5B3BB248969
+:10585000DF2DC8735A5C707A0D25F9D1A71CF94960
+:105860006496FF69527F5725A8D4EF8E8B6EBFE2F6
+:10587000928F5E620324E4814802A83D7352E9E1FD
+:10588000D224F6728907FD4F30F7E6E4F384521113
+:105890002B0655FEE739EEF50613E018CD60284FCC
+:1058A000DF712F329D5603FB8C435851B7122C6C7D
+:1058B0005A6FC912C134BE9D03564F31B9CB84C94A
+:1058C0000B9180B88677714C4622A606A54999BCF3
+:1058D000C0E0016A8EBF1BB1673F4E0707664B41B0
+:1058E000F8AE234050A92CE930694FA1FA1A733A57
+:1058F000B0BD94426A54FAD04D2D7C2867434D7850
+:105900006014B7BE89672E63DD05B697A29B4B0B6B
+:105910000E7DA34DBB0357FA66A83AE3362161D644
+:105920000CA196889D920D08BE671FE6D601E24243
+:1059300098FDED4DDDA8E79638CF4BFBC23F908632
+:105940006A0017103EDEAB9C53787A3C00616E36DD
+:10595000A4C85EF7D04F99156CBA4AB712FFAD3D97
+:10596000270F19C201021ADFE71BA3283F47897ED0
+:1059700031B48D7986393C2ED65E59627078A6F79F
+:10598000491D1AD88C7EAB31E76EA599F5EB0AA3B9
+:105990000E37FF1D2534C52312F3A26A161EA0A5DB
+:1059A000BDA7967792285CAD0E350B30F34CFC1FEB
+:1059B000C74D55EB417C9E037CA5D797D658426FC7
+:1059C000582A8442F654F33B70259008AFB1B86171
+:1059D000C36C1D67F8839A9D274D6114B3046273ED
+:1059E00030FC6CD4C66C94DFC0FA0CB16A9ADEC687
+:1059F0004102648C51964260BA3EA5AE702971FC9A
+:105A000019ABB3A1006F93EF1CCBA4B051076FE8A3
+:105A1000D9FD161E21D739A07AB92CE4D7C0396335
+:105A200021D84295B982D781ACE64E28DB2420B834
+:105A30000B6C760874A3A239C1CE326EE2B3371470
+:105A4000D5212D9970D8EFDF67E53A018B0D1CE960
+:105A5000370FB01512A8FF4887EB1F6E86985112BA
+:105A600036304F51D5A4CBB78C33C54A89F4D7D43F
+:105A7000433E5D00DCB533CF3828C5FC43197D4675
+:105A800079A8EAF470E299215CA91E216357722477
+:105A900093A976BF021EE4BA63CE9C63BB1B8F152D
+:105AA00059A35E31908C3C90F924A5B5902F93FFBB
+:105AB000306E87BCC6A280176BF50599F642E25E90
+:105AC0006B3A13404FDD18E0BB9B1BF957708728DA
+:105AD00025CCA6F4EC8279A31BFFDEFF82B57FA163
+:105AE000ADC2B16A64043B681DD8AE12500A6402AC
+:105AF000FB99878BE578893A5DE2D17C7A794BFD19
+:105B00002D0EA4AD1D3E2EDD0E80435B36BAEE3168
+:105B10008177393B33C7E5E21838C5EDF932F0B784
+:105B2000C658403F57A2BB4232E2CB8C1FD8707B95
+:105B3000AF83BF8666C67E09DF50B5E9D8B4038956
+:105B40004F3151ADF822A178D430DD1E093FF79CCA
+:105B5000E2AFE07A4415676F5FA6CA3652219B42D6
+:105B6000F95343D9485D64EEEB318E59E3E1E82304
+:105B7000CA8A9F31D621E2CE44FF63B43EE5BD38E8
+:105B8000AC8E6A096AFDBDA4F31677FACA8554D7AC
+:105B9000A2738258CB790D39C9B4813BDBFA945298
+:105BA000352C5B62BAF98B6C6F3F31CBB435049303
+:105BB000D261B8F4279EC2A721D1262B71D928CE55
+:105BC000E088A6EEE6FB099E3C8E2B168D7216F73A
+:105BD000815FA8DCEB128A28F26096F00D36B71EC2
+:105BE000064361692B378BB45CB23A1D66CDB81998
+:105BF0004979577052E6E74EC0DDE20E9B52D7332B
+:105C00009D9205184F3BE16D449ACE88456DD52B8A
+:105C100048E12848DA45501E7900FB63893C395732
+:105C2000C1B8E20FF69ECFC21D328C1F0FC0787F25
+:105C3000F91D05DF3529BA98DEBF626D52525AA1AF
+:105C40004AB32B689935640E61E4FC81F0BC88CDC1
+:105C5000D9DE06B50E59FD5D98B1028099DB1207B9
+:105C60005627D7BE218672B14A4862ACB9C8F87DC2
+:105C7000DF7137CDB01C026B2114C5016B71AEC052
+:105C800046AB2F9633F503F6F6F77BA520897E0900
+:105C90002153B17D867700C5D47001343C378D3FE8
+:105CA0005FF7F92178CBFDDE7FA877ECA51B69852E
+:105CB000C4F0099DED1DAC040322E4376E99B41ABB
+:105CC0000D8D15ABAB3EAA3DBEE0999D7A583D08BF
+:105CD000A7CA12B58805B34BFCBC645A7BA43B74BD
+:105CE000E37491FE2B9F76D2635EC7EB39BB77A737
+:105CF000922878ABB7908C65D473DA4337099EE964
+:105D0000D4EBD94B4B3698A01216E9129F261D13DF
+:105D1000B39121C3758332B4930E166B6FBCF7D861
+:105D20004807132C18E8F3D6E7D0FC0C005328A73B
+:105D3000FD60DBC990BBEDF1EC41F6B1BC77FC0630
+:105D40001D82A8FA6A49B63EFC6DAD58EAA90A7BE5
+:105D500055952421C4823FA8BF79ADABA2525B3BCD
+:105D600064D53622F0FC13093F6B5941989C5B8F38
+:105D700019830F99FF9F76178E835430EB9CB4ECF8
+:105D80000DBC4BAAB48BCF598C62D88FCC49ACAD2B
+:105D90008EEEB0CC4D5F6FE0F3F67EFB273CE97EE4
+:105DA00088F19AD31805020ADDE32CCD68CB29F2DD
+:105DB0003A2054AC4A384392365BC87EE6B99386A3
+:105DC0001AF79206486BB875B4DDD87AE083E73FDE
+:105DD0001E8218414788BEBB7CB547CD8EBEDB51C5
+:105DE000ADD4F05F5DF019C98FE7E312A14B8206D5
+:105DF000C55F6D07329BF318B530F09C27BD49C4D1
+:105E0000142DC88387220328FD229574D1B1506ACE
+:105E1000F0DB4F8F8953D26D340356E1AF5ECD6115
+:105E200029E273A69EE7E52E5A4D9EF11903FAB7B3
+:105E3000193CA92722FD823793FBF074A6B2670EA6
+:105E4000959017CA2DB594AA868F7A5D48CF013EEA
+:105E5000D19B644B79312C511CABBA6166CC07C71E
+:105E6000DF40A2272DEEC4A720F5AEA562FFBD42FC
+:105E70001F9BE2EF0D2C0B1C838B9FC0A0A0C1CAFF
+:105E8000810E45B43016490DCF45F207B4F4A5DEB6
+:105E90001C4041A820E4EA59E6D5803C2F1B5193D1
+:105EA0009D09211190F339CF557302350D1173F10E
+:105EB000B98FDB20F9DE377929D23C6ACE31946A7A
+:105EC000BA48D6F5FEC03D91D839CEE23AD0FD723F
+:105ED000554010AABBD2A8CC18F325272902A40646
+:105EE00021F424F840148AF37299BFF867555A6D6B
+:105EF000C9B29707BB65F72C170A6799E5D27EF1FF
+:105F000052CBC32E821558D94F67F21065AD950953
+:105F1000909AC54AC94C0568D588338C22176565A7
+:105F200059A32AD784E9C9D358F340579408786C09
+:105F300054D48117B2B1CA61FD0639772467EE895E
+:105F4000B3449FA2D2AAAA8EDB01CFC4D8CCCC5432
+:105F50003F59EC3C4618655ACAEF5716A858FBAA99
+:105F60007ECCDDF74F330C815A8874A8EA91F95240
+:105F70004EEC4C04DD3456FAF6C71A20ABA948C6DD
+:105F8000751E8BBBB1EDA6F42FA633413804D08922
+:105F9000B3256CF78827D15C8826CE937475F43AC4
+:105FA000883F1FEF4120092CB4A49FE8E24A7420E7
+:105FB000FD2E6118CAABA8C9B89A53769FCCC77991
+:105FC000121A12C34A9D0A4666B7B6CF562926F85A
+:105FD000D00F62243E8B26326E6B5C21A14C708602
+:105FE00074DF4B37CC1C37C5CDD0AF452BF7D686E9
+:105FF0007496D7712AD65ADBC74E81289D8EA66427
+:1060000096E7D428256BFD4B3AD1B1B01728809D77
+:10601000D74E55B93E909667ED2F7052B159B4BC2A
+:1060200041E563CBCE603C1E542D68CDDF066BE8A6
+:106030004E9B86220C954911A503BFB3B76BEEC3E7
+:10604000F955AB7F8F7911DD1E59E7E9CB67497BA5
+:10605000FF83F5354381C91D0955AD5AF6D9661040
+:1060600031387C6A9BD3D513677C9173DB52ACE6E5
+:1060700064FE4E568FBAE5F7DF13582C58CE332AFC
+:106080008C796B279A0343E6680D29B68115D06891
+:106090005320D81982D4316B4403C7F4F98876E4CD
+:1060A000D9FCDDD5910B7E5AF2384B982328640A2F
+:1060B000836FCB1CAA2510F7252C27A617F6C1B194
+:1060C000F88978104461C2311D1E81757A28C02874
+:1060D000F54CCFF2040000000000000000000000BA
+:1060E000000000000000000000180000F060010047
+:1060F0002FEE00000000EC0200002EEE0000000079
+:10610000000000000000000000000000000000008F
+:10611000785B03EE7EE1784B7CF50C9501997EF57A
+:10612000000000000000000000000000000000006F
+:10613000000000000000000000000000000000005F
+:10614000000000000000000000000000000000004F
+:1061500001903F1B3FE202EE3F1B3F3E3FBEFFB2BE
+:1061600024E3FFB230507CE00FA009E900944F987F
+:1061700082F50394FFB20122029076E200000290C1
+:1061800076E20394FFB201220094469880F5A5D0F0
+:1061900020942098FFB231E2FFB20148FFB20348D9
+:1061A000FFB203490190FFB230E2FAB206E0FCA26E
+:1061B0000098FAB206E200B070D000B93F97A1D0C3
+:1061C00000B03ED300B0A1D23F1B3FE000B04FD79C
+:1061D00020E7C31B3BBA00B059D77FE13FA6FAB214
+:1061E00000E2F9B4B9407F94FAB203E2B9507E6E8E
+:1061F0001FEE00B0D3D129910CB800B48AB180BA97
+:1062000002B1FDFE80B97AE6FAB200E0C09CFA1A4B
+:1062100022477AE37F6FFA1A22567F7FFA1A2246C4
+:10622000FA1A22577AE37F307D2D7C79F0EEEAEE80
+:1062300020F56DE3683EFEFE7BF520E7FAB20642EC
+:10624000FFB2305033943398FFB231E2774CFFB253
+:106250003048FFB230497B3E02B200920091C0BA92
+:106260000281FDFE775CFFB2313EFFB2303E20F589
+:106270006DE37E3EFF9260E261E268BA60087E10E4
+:1062800060E2610A6113F9FE68BA602A80BA612887
+:1062900060247BF56DE37E3EFF9260E261E268E0A0
+:1062A00060087E1060E2610A6113F9FE68E0602A0E
+:1062B00080E0612860247BF528E77E7007EE01B05E
+:1062C000398846E801B03F8843FF11EE01B04088AD
+:1062D0003FE801B080880BE801B0808839E817B04A
+:1062E0003F8802EF068C34E818B0538831FF7F31C5
+:1062F00029E22AE604912BE32AE429E17E30C0BAA0
+:10630000800203E9C1BA81021EF929E0608C01E82C
+:106310002084209104B2169600B2969691B2DA9635
+:1063200001B22B9600B2509669E200B2019669E67E
+:1063300000B00EB968E0FAB222E280E0FAB223E2DD
+:106340007DE3F8B362D12A2C2A2C292C2B2DD4E9F9
+:1063500028F528E701B0808803F801B0408829E9D2
+:1063600018B03F8826FF2CE37F31608C01E8208441
+:106370002BE2209104B2169600B2969691B2DA966C
+:1063800001B22B9600B2459669E200B010B980E0E8
+:106390005EAC3EA8FAB222E280E0EAAC85A8FAB28E
+:1063A00023E279CE7DE3FAB362D12BE001842C2D78
+:1063B000DCE928F536B801B06891C0BA0281FDFE6B
+:1063C000FAB2273EFAB222E068B0688800B05AE913
+:1063D000FAB223E0DCB0D38800B054E9FAB223303B
+:1063E000FAB2223D85E0FAB226E284E0458811E95E
+:1063F000FAB22743FAB2274581E07F2DFEE9FAB2CF
+:10640000274010B882E07F2DFEE9FCFEFAB2275546
+:106410002FEE508837E986F035F9018C33FF85E09F
+:10642000FFA08608018C2EFFFAB22743FAB227415B
+:1064300081E07F2DFEE9FAB2274083E07F2DFEE95F
+:1064400086E06DE287E102EEFAB2262C69E0FAB24C
+:1064500024E269E0FAB225E27EE17EE1FAB2274267
+:1064600080E07F2DFEE9FAB227527EE17EE1ECFE6C
+:10647000FAB2275181E07F2DFEE9FAB2275081E080
+:106480007F2DFEE9863E843EFAB2273EFAB2223ED6
+:10649000FAB2233E7BF5FFB2094D6C67FEEE93B076
+:1064A00063916C77FEEE6C67FEEE7AE06C77FEEE41
+:1064B0006C67FEEE7AE47D06C0BA7D0208EFFAB69C
+:1064C00080E074BC7F88EDF91090800AEAEEFA1A39
+:1064D000224626B0AA906C6702EE79CEFAEEFF82D1
+:1064E000FAE97BF5FA95C650C3520E90C7C60590DF
+:1064F000C7C2C34AC349C3400794C4267BF5FA9573
+:10650000C4497BF5FAB482E107A503E97BE782E1A0
+:1065100007A5048DFF9203E981E0844A844B7BF553
+:10652000FFA0FAB480E2844A82E007A403E97BE793
+:1065300082E007A4048CE9007BF503E401EE7BE72D
+:10654000FA95C2E0C4497F7AFAEE7F6804EEC44A45
+:10655000C26BC44CF4EEC448C1E060E28DC5FEA23B
+:106560007E02FA9503F9C44CC44AEAEEC44B0140DA
+:1065700060607BF50150C44AC2E060E207A403E911
+:106580007BE7C2E060E260E007A4048C02F9C44942
+:10659000D7EEFAB481E0844A844B00C67BF503E170
+:1065A000CF721EEECF7313EECF7403EEC8E06B26EE
+:1065B00010EEC9E0FA1A2222FAB5CF7503EEC8E050
+:1065C000A02602EEC9E0A022C8E06B267BF5C9E058
+:1065D0006B22C8E0FA1A2226C9E0FA1A20227BF5BB
+:1065E0007EE17EE17BF503E1CF721EEECF7303EE19
+:1065F000C9E06B2204EECF7409EEC8E06B26C8E058
+:10660000FA1A2226C9E0FA1A20227BF5C9E0FA1A02
+:106610002222FAB5CF7503EEC8E0A02602EEC9E04B
+:10662000A022C8E06B267BF57EE17EE17BF5FFB220
+:106630005AEEFFB258EE13627BF580C401FA802C4B
+:106640007BF560E700E061E2E1BB00B0A3D261E06E
+:1066500000E260F5003E00B224EE62E7115100E076
+:10666000378803E9114101EE00E000B0E8D463E2AD
+:1066700000B0A9D263E000B018D20088F5E962F555
+:1066800062E7123E135200B00AD27FF101EB62F5CD
+:1066900000E000B09DD400B0A9D2F5EE00B0FAD170
+:1066A00000B0B2D21E4000B048D400B025D2017074
+:1066B00003EE00B0B5D202EE00B0C8D200B007D2EF
+:1066C00000B0EFD51352F1EE011004060810C00916
+:1066D0000C12000AFBC3C3B46CF89C2A65CC675645
+:1066E000163DA7CAB7C97FF469F6FEFE7BF57FF4B5
+:1066F00069BA68E2FDFE7BF560E7FFB230E00DE2CB
+:10670000FFB231E00CE200B0A5D07EE17EE160F5A1
+:106710000CE0FFB231E20DE0FFB230E27EE17EE15B
+:106720007BF5122C1370123E7BF561E203BA60E236
+:10673000623E60F019F960E480BA7FF115F97FC418
+:10674000610201E962E67E7903EE81BA60E2F1EE70
+:106750007E377E360F8903E960E481BA7FE160E02D
+:106760007E08018060E2E5EE62E07BF563E73FB022
+:1067700008B909B0C891389000B0FFD23FB43FB01B
+:106780002090B770E08203E2099000B01DD300882A
+:1067900007F9001A0A813FB008B9189000B0FFD27B
+:1067A00063F560E70C9114B900B0A1D0103E0E3E25
+:1067B0000F3E46911FC31ECE1E48117005EE079571
+:1067C0001427C797142360F51FCE1F4E60F561E3B1
+:1067D0007FE115E01FA660E27F317F307F09623ED6
+:1067E000624260E0610204E803951427C3970EEE4D
+:1067F000C0BA60E2C1BA61E260240BF960E08002D5
+:1068000003E961E0810205F9144AC49714237F3E2D
+:106810007BF5028102B1622DEBE901907BF562E725
+:1068200061E215E01FA660E2610205E80395142706
+:10683000C397142362F5603160306009089016B97F
+:1068400000B0FFD215E0018015281FA6152A62F5B9
+:1068500060E261E3FA1A22E062E26BE063E2FABD11
+:10686000E1E064E260E07F2FE12260E1612361E129
+:10687000FA1A2027FA1A22226B2202B04191FF1B3A
+:106880007EFE63E060206B2662E06020FA1A22261A
+:1068900061E0FA1A202A64E06020FA1A21266CE0EE
+:1068A00060207BF561E762E363E600B004D363E157
+:1068B000C0BA008804F900B010D37F3E61F5632CA4
+:1068C000622DF5E900B010D3019061F561E762E255
+:1068D00063E364E600B004D363E480E1632C64E422
+:1068E00080BA642C7E0204F900B010D37F3E61F5BB
+:1068F000622DF2E900B010D3019061F565E761E225
+:1069000060E364E615E11FA714C03FA066E26103DF
+:1069100003902FF87E317E30600B60E067E22CE25E
+:10692000089160E400B0DAD3008807E915E0E0A43C
+:10693000208C03F9408C04901CE96735673468B0FB
+:1069400068900EE2DCB0D3900FE27E3E67E064E434
+:1069500000B0E4D0C097142315E0018015281FA6CD
+:10696000152A64E108902CE400B0EED3008802E917
+:10697000069066E266E07F3314283FA4142A65F58A
+:1069800060E71EC41EC17E2002F900B057D260F538
+:10699000C0931423103E0E3E0F3E7BF540907BF5D6
+:1069A0007FE17F347F0180BA7E607F377BF57F6037
+:1069B0007E377EE07BF560E71340134212E161E32E
+:1069C000FF827E0202E9FA92132200B019D361E03D
+:1069D00060F560E761E20591132712E17E347D09DD
+:1069E000C0E063E27F37126063E261E0FF8212027F
+:1069F00002E9FA92132200B019D363E060F560E275
+:106A000061E31340134212E17F0307F875347F01FD
+:106A100061E07E7080C67E6080C260E0FF827E02A0
+:106A200002E9FA921322FEB07CEE0D8803E901A17F
+:106A30001EC37BF51E8803E9FFA11F277BF57FF0AE
+:106A400004E915B90290FFB25AEE0FEF12F002E915
+:106A500010C707EE018802E910C303EE0F8801EFAB
+:106A6000103E16B91090FFB24AEE028801E914C731
+:106A70007BF560E700B09FD21ECF60F560E761E272
+:106A80000591132712E17E347D09C0BA12607F3769
+:106A900061F2FF82120202E9FA92132200B019D3C6
+:106AA00061E060F563E712E164E37FE1C3B0E0B960
+:106AB000409000B0C6D43D91640301F87F3E63F579
+:106AC00065E763E2048802E91FC065F5058807E908
+:106AD0001EE001A061E200B0C1D461E065F50D885F
+:106AE00003E91EC001A065F5428803E900B056D451
+:106AF00065F5438803E900B0DAD465F5F8820388C8
+:106B000004FFC0B400B058D465F563E1018903E91E
+:106B100016B9109004EE63F105E915B9029000B0C2
+:106B200071D465F563E0028803E914E03FA065F5E0
+:106B3000038803E9144F14C065F563E0D782068823
+:106B400005FFC3B0F7B900B058D465F563E02588F8
+:106B5000019075F963E02688E09071F963E0278879
+:106B600003E903E1CEC465F5288803E903E1CEC05B
+:106B700065F563E0D082098814FF03E1108164E2C7
+:106B8000117108EE63E1C98364E37E3408B0F8BA9A
+:106B90007FE103EE7F347F09C0E164E000B05FD4A1
+:106BA00065F563E0E18266E203882BFF64E263E05F
+:106BB0001F8804E9089000B063D47FE164E0018895
+:106BC00002E908910AEE63E0218815F9228805E9B7
+:106BD000089000B063D4001A0B8108B041B97EE080
+:106BE00000B058D47FE166E0018803E93FB4B77094
+:106BF00002997EE065F5029000B063D4001A098125
+:106C0000ECEE63E0238806E9139008B041B900B0C8
+:106C100058D465F5248809E9029000B063D4148043
+:106C200008B041B900B058D465F563E01D820C8806
+:106C300005FF08B03AB900B058D465F57F3E65F558
+:106C400067E702B0F391089000B02EB900B0FFD210
+:106C500000B02EB903E108B869E0682AFDFE00B073
+:106C60002EE060E216B90491089000B0FBD260E01B
+:106C700015E11FA77E08FFA000B02EE260C07E379E
+:106C80007E087F3300B02E2600B02E9104B900B0EC
+:106C9000AED767F564E760E261E310E036B056888E
+:106CA00005F905951427C597142364F560E0D3BC56
+:106CB0007E377E3400B031D160E461E100B0DAD3D8
+:106CC000008804E906951427C697142364F52DE778
+:106CD00015C17E367E341F6000000E3E0F3E14E06C
+:106CE0003FA000B263F960E3C097142314E03FA013
+:106CF000028808E900B0A8D50C9515B0C09004B979
+:106D000000B249EE068820E960F102E9C09519EE6B
+:106D10000CEF1491C29416B900B06FD3008800B282
+:106D200040F9C295149000B235EE028900B239E9FB
+:106D300040910A9416B900B06FD3008800B231F9BF
+:106D40000A95409000B226EE038805E9AE950C94B2
+:106D500000B0D2D502EE078804E90295C09400B2D3
+:106D600012EE058811E960F102E9C09508EE03EF23
+:106D7000C295149005EE028900B213E90A9540907D
+:106D800000B097D300B20DEE088807E916E017E1CE
+:106D900000B0B0D318E200B204EE0F8804E900940A
+:106DA00005987FF57EEE048865E9C097142315E009
+:106DB0001FA6048804EF03951427C39771EE3FB410
+:106DC000B76055EE00B0A8D50890151C3F1A408159
+:106DD00004B9089000B0FBD215E01FA6048841E971
+:106DE0003FB5269100B0D2D0008838E901B03C9080
+:106DF00064E2209109B0E0B900B0DAD300882BF941
+:106E000068B068900EE2DCB0D3900FE201913FB021
+:106E100046B964E000B0E4D0642C01913FB04EB9B3
+:106E200064E000B0E4D0642C01913FB056B964E056
+:106E300000B0E4D0642C01913FB05EB964E000B0D2
+:106E4000E4D03FB04691209009B0E0B900B0EED355
+:106E5000008807E903EE144AC49702EE1449C2976A
+:106E6000142315E0018015281FA6152A1AEE144ACE
+:106E7000C49716EE098803E902950A9404EE0B887C
+:106E800005E90695BA9400B0D2D50BEE0C8806E958
+:106E9000BA95C09016B900B006D403EE1449C29753
+:106EA00014231E4000B048D400B050D42DF50190FA
+:106EB000F995F9E2C152F93EFA1A213E03E1CCE01C
+:106EC000FA1A20E2FF1B33E070A4208C03E9CAE029
+:106ED000E7A207EEFF1B33E070A4408CCAE001E993
+:106EE0003FA26BE2CBE0FA1A22E27BF579CEFEEE0E
+:106EF00063E7117000B0FED6C0B401B0FE9100B0DF
+:106F0000C0D0008803F944911FC317EE0CB4ADB094
+:106F1000FE9100B0C0D0008803F945911FC30DEE6B
+:106F2000BAB405B0FE9100B0C0D0008803F9479113
+:106F30001FC303EE1FCE1F4E146E00B0FED60C947E
+:106F400082F50390FFB209E2001A029163F506B0E0
+:106F5000FE9084F507B0009086F5793E0390FFB26D
+:106F600009E2FFB20BE2FFB2083EFFB20A3E039411
+:106F7000FFB20122FFB203220682FFB211E2FC82BD
+:106F8000FFB213E2FFB214E2001A0A917BF511502E
+:106F90007F60114000B0DFD600B02FD700B0D6D24E
+:106FA000000063E764E20D9000B01DD300881CF977
+:106FB000762C001B7F97C0BA60227F6E644E7F6F75
+:106FC0000DEE7F6D602E64E074BC600A001B7F8F45
+:106FD00003ED001B7F9702EE606F603E64E0F8B047
+:106FE0000FA06032602464E264E063F524E325E2EC
+:106FF00005BC26E362E22636263461E160E00EBC81
+:1070000060E17E312628622921E27DE361E160E0D2
+:1070100003BC26E32635263462E225E024E10CBCDD
+:1070200025E17E322628622B21E126E37DE1620BF9
+:10703000261266E165E0612B602A64E163E02429A1
+:10704000252860086111262962287BF527E728E3B7
+:1070500029E681E061E260F6BEB01E9108B0BB9007
+:1070600023E322E27F2547F922E022BC2AE20390B3
+:107070002BE22BE17E0929092CE3FFB2FFE062E25B
+:10708000FFB2FEE063E22BE003A02A28780A280181
+:1070900023E122E066E365E281E180E064E363F2FC
+:1070A00062E100B07ED72CE4800C811581E380E2A0
+:1070B00061E360E22B2DDDE929E1C7E062E2C6E091
+:1070C00063E22AE42A01280181E180E064E363F2BB
+:1070D00062E100B07ED729E4800C811581E380E273
+:1070E00061E360E261B0C89186B04790220A231341
+:1070F00022E02324B9E927F509031F00030000005B
+:10710000000000000000000000000000000000007F
+:10711000000000000000000000000000000040002F
+:10712000000000000000000000000000000000005F
+:10713000000000000000000000000000000000004F
+:10714000000000000000000000000000000000003F
+:10715000000000000000000000000000000000002F
+:1071600055541800251E0C0401011F00080021348D
+:10717000000056363436555418009D1000C0154096
+:10718000001400400001C0000000000000000000EA
+:1071900000000000000000000000000000000000EF
+:1071A00000000000000000000000000000000000DF
+:1071B00000000000000000000000000000000000CF
+:1071C00000000000000000000000000000000000BF
+:1071D00000000000000000000000000000000000AF
+:1071E000000000000000000000000000000000009F
+:1071F000000000000000000000000000000000008F
+:10720000000000000000000000000000000000007E
+:10721000000000000000000000000000000000006E
+:10722000000000000000000000000000000000005E
+:10723000000000000000000000000000000000004E
+:10724000000000000000000000000000000000003E
+:10725000000000000000000000000000000000002E
+:10726000000000000000000000000000000000001E
+:10727000000000000000000000000000000000000E
+:1072800000000000000000000000000000000000FE
+:1072900000000000000000000000000000000000EE
+:1072A00000000000000000000000000000000000DE
+:1072B00000000000000000000000000000000000CE
+:1072C00000000000000000000000000000000000BE
+:1072D00000000000000000000000000000000000AE
+:1072E000000000000000000000000000000000009E
+:1072F000000000000000000000000000000000008E
+:10730000000000000000000000000000000000007D
+:10731000000000000000000000000000000000006D
+:10732000000000000000000000000000000000005D
+:10733000000000000000000000000000000000004D
+:10734000000000000000000000000000000000003D
+:10735000000000000000000000000000000000002D
+:10736000000000000000000000000000000000001D
+:10737000000000000000000000000000000000000D
+:1073800000000000000000000000000000000000FD
+:1073900000000000000000000000000000000000ED
+:1073A00000000000000000000000000000000000DD
+:1073B00000000000000000000000000000000000CD
+:1073C00000000000000000000000000000000000BD
+:1073D00000000000000000000000000000000000AD
+:1073E000000000000000000000000000000000009D
+:1073F000000000000000000000000000000000008D
+:10740000000000000000000000000000000000007C
+:10741000000000000000000000000000000000006C
+:10742000000000000000000000000000000000005C
+:10743000000000000000000000000000000000004C
+:10744000000000000000000000000000000000003C
+:10745000000000000000000000000000000000002C
+:10746000000000000000000000000000000000001C
+:10747000000000000000000000000000000000000C
+:107480002000DFFF000000000000400000000400BA
+:1074900073353130304B0000000000000000000068
+:1074A00000000000000000000000000000000000DC
+:1074B00000000000000000000000000000000000CC
+:1074C00000000000000000000000000000000000BC
+:1074D00000000000000000000000000000000000AC
+:1074E000000000000000000000000000000000009C
+:1074F000000000000000000000000000000000008C
+:10750000000000000000000000000000000000007B
+:10751000000000000000000000000000000000006B
+:10752000000000000000000000000000000000005B
+:10753000000000000000000000000000000000004B
+:10754000000000000000000000000000000000003B
+:10755000000000000000000000000000000000002B
+:10756000000000000000000000000000000000001B
+:10757000000000000000000000000000000000000B
+:1075800000000000000000000000000000000000FB
+:1075900000000000000000000000000000000000EB
+:1075A00000000000000000000000000000000000DB
+:1075B00000000000000000000000000000000000CB
+:1075C00000000000000000000000000000000000BB
+:1075D00000000000000000000000000000000000AB
+:1075E000000000000000000000000000000000009B
+:1075F000000000000000000000000000000000008B
+:10760000000000000000000000000000000000007A
+:10761000000000000000000000000000000000006A
+:10762000000000000000000000000000000000005A
+:10763000000000000000000000000000000000004A
+:10764000000000000000000000000000000000003A
+:10765000000000000000000000000000000000002A
+:10766000000000000000000000000000000000001A
+:10767000000000000000000000000000000000000A
+:1076800000000000000000000000000000000000FA
+:1076900000000000000000000000000000000000EA
+:1076A00000000000000000000000000000000000DA
+:1076B00000000000000000000000000000000000CA
+:1076C00000000000000000000000000000000000BA
+:1076D00000000000000000000000000000000000AA
+:1076E000000000000000000000000000000000009A
+:1076F000000000000000000000000000000000008A
+:107700000000000000000000000000000000000079
+:107710000000000000000000000000000000000069
+:107720000000000000000000000000000000000059
+:107730000000000000000000000000000000000049
+:107740000000000000000000000000000000000039
+:107750000000000000000000000000000000000029
+:107760000000000000000000000000000000000019
+:107770000000000000000000000000000000000009
+:1077800000000000000000000000000000000000F9
+:1077900000000000000000000000000000000000E9
+:1077A00000000000000000000000000000000000D9
+:1077B00000000000000000000000000000000000C9
+:1077C00000000000000000000000000000000000B9
+:1077D00000000000000000000000000000000000A9
+:1077E0000000000000000000000000000000000099
+:1077F0000000000000000000000000000000000089
+:107800000000000000000000000000000000000078
+:107810000000000000000000000000000000000068
+:107820000000000000000000000000000000000058
+:107830000000000000000000000000000000000048
+:107840000000000000000000000000000000000038
+:107850000000000000000000000000000000000028
+:107860000000000000000000000000000000000018
+:107870000000000000000000000000000000000008
+:1078800000000000000000000000000000000000F8
+:1078900000000000000000000000000000000000E8
+:1078A00000000000000000000000000000000000D8
+:1078B00000000000000000000000000000000000C8
+:1078C00000000000000000000000000000000000B8
+:1078D00000000000000000000000000000000000A8
+:1078E0000000000000000000000000000000000098
+:1078F000FFFFFFFF05000000000000000000000087
+:1079000000000000000000000004000010790100E9
+:107910000000000000000000000000000000000067
+:107920000000000000000000000000000000000057
+:107930000000000000000000000000000000000047
+:107940000000000000000000000000000000000037
+:107950000000000000000000000000000000000027
+:107960000000000000000000000000000000000017
+:107970000000000000000000000000000000000007
+:1079800000000000000000000000000000000000F7
+:1079900000000000000000000000000000000000E7
+:1079A00000000000000000000000000000000000D7
+:1079B00000000000000000000000000000000000C7
+:1079C00000000000000000000000000000000000B7
+:1079D00000000000000000000000000000000000A7
+:1079E0000000000000000000000000000000000097
+:1079F0000000000000000000000000000000000087
+:107A00000000000000000000000000000000000076
+:107A10000000000000000000000000000000000066
+:107A20000000000000000000000000000000000056
+:107A30000000000000000000000000000000000046
+:107A40000000000000000000000000000000000036
+:107A50000000000000000000000000000000000026
+:107A60000000000000000000000000000000000016
+:107A70000000000000000000000000000000000006
+:107A800000000000000000000000000000000000F6
+:107A900000000000000000000000000000000000E6
+:107AA00000000000000000000000000000000000D6
+:107AB00000000000000000000000000000000000C6
+:107AC00000000000000000000000000000000000B6
+:107AD00000000000000000000000000000000000A6
+:107AE0000000000000000000000000000000000096
+:107AF0000000000000000000000000000000000086
+:107B00000000000000000000000000000000000075
+:107B10000000000000000000000000000000000065
+:107B20000000000000000000000000000000000055
+:107B30000000000000000000000000000000000045
+:107B40000000000000000000000000000000000035
+:107B50000000000000000000000000000000000025
+:107B60000000000000000000000000000000000015
+:107B70000000000000000000000000000000000005
+:107B800000000000000000000000000000000000F5
+:107B900000000000000000000000000000000000E5
+:107BA00000000000000000000000000000000000D5
+:107BB00000000000000000000000000000000000C5
+:107BC00000000000000000000000000000000000B5
+:107BD00000000000000000000000000000000000A5
+:107BE0000000000000000000000000000000000095
+:107BF0000000000000000000000000000000000085
+:107C00000000000000000000000000000000000074
+:107C10000000000000000000000000000000000064
+:107C20000000000000000000000000000000000054
+:107C30000000000000000000000000000000000044
+:107C40000000000000000000000000000000000034
+:107C50000000000000000000000000000000000024
+:107C60000000000000000000000000000000000014
+:107C70000000000000000000000000000000000004
+:107C800000000000000000000000000000000000F4
+:107C900000000000000000000000000000000000E4
+:107CA00000000000000000000000000000000000D4
+:107CB00000000000000000000000000000000000C4
+:107CC00000000000000000000000000000000000B4
+:107CD00000000000000000000000000000000000A4
+:107CE0000000000000000000000000000000000094
+:107CF0000000000000000000000000000000000084
+:107D00000000000000000000000000000000000073
+:107D10000E598E84060000000000000000000000E4
+:107D2000000000000000000050000000307D010055
+:107D300044D2FEC9FEB605C8D2B9F97BDF89B07A54
+:107D4000CAEA587CFE8BD265FED6DC0590ADD0E940
+:107D50008BA278D748071A8C415B31005A3F4044C8
+:107D6000593EC6632691FC1FCCD62FA084F3A76B87
+:107D7000B9DBF82C01BE7ED44016DBA3FF810C4991
+:107D8000DA56FE22030000000000000000000000A0
+:107D9000000000000000000010000000A07D0100B5
+:107DA00006000000D0600100F0780100107D0100A5
+:107DB000BC40C7CD0900000000000000000000002A
+:107DC000000000000000000010000000D07D010055
+:107DD000493243000500FF000C0D200000000000A8
+:107DE000BC40C7CD0A0000000000000000000000F9
+:107DF000000000000000000010000000007E0100F4
+:107E0000493243000500FF000C0D20000000000077
+:107E10008DFA1BF5080000000000000000000000C3
+:107E20000000000000000000000C0000307E010097
+:107E300000B20AEE10917EF57F3E7BF57FF402F9E9
+:107E4000693FFEFE7BF561E27F3E612D11E860E255
+:107E500060377FE18029FFA160E090B2D52868C13A
+:107E600060E26037FFA07F2960E090B2D528EDEE98
+:107E70007BF562E710B000E681E3FF9180C780C226
+:107E800060E082E20390B0B00BDA10B000E1C3E230
+:107E900062F560E715B210E003A610B000E215B27B
+:107EA00010E04ABC10B001E215BEC494D022D04A02
+:107EB00015B090B9B0B002DA15BE10B000E0D0280D
+:107EC00003A6D02A10B001E07F337F31D0283CA434
+:107ED000D02A13BEEEF0FEF9EE3E60F563E710B077
+:107EE00000E210B001E360E010B002E213B0BFB9ED
+:107EF000B0B00BDA10B002E113B2FFE260E3603021
+:107F000010B001E110B000E011B0D5B9B0B021DA85
+:107F1000B0B031DA63F560E261E3623E0191001BCB
+:107F2000018E10EC60700AEE01B961E07E040088F9
+:107F300003F97D30FF82FBEE7DE062266034018133
+:107F40006103F0ED62E07BF57D3E7F3EF09397B2FA
+:107F5000AD2397B2AD4497B2AD4576327E3197B23C
+:107F6000AD293FB0C0A197B2AD2B018003B103880A
+:107F7000EDEF11B0D590171B2FE2089017B0EEB9B6
+:107F800080E283E211B0D99084E213B0BF9087E21F
+:107F900003B0A29086E289E211B0DD908AE217B0C8
+:107FA000F4B917BFC1B01090F922F944F948029012
+:107FB00086E213B0AE9087E217BFC1B09290FC2268
+:107FC000C0ACFC2613B0AF90171B3EE20290171B0B
+:107FD0003DE213B22FE217B0ED9018B000E2069028
+:107FE000171B3FE21796171B2CE215B2104B15B06A
+:107FF00090B9B0B002DA15B2105B10B0003E10B00C
+:1080000000E010B001E20891B0B073DA7F3310B035
+:1080100000E190B2D5E210B0D58110B002E3079133
+:1080200010B001E490B295E07F3090B2956F80B0CF
+:1080300005A810B002E480E2FF83F2EB10B001E487
+:1080400090B295E01091B0B073DA10B001E190B247
+:10805000D5E210B0002C10B00078D1EE13B2303E53
+:10806000111B19F000B243F910B0023E11B0D9B99A
+:108070000390B0B00BDA111B1C0200B225E9111BF2
+:1080800019C0028811B72DF904FF018806F900B262
+:1080900019EE03885DF900B215EE9AE0038804F941
+:1080A00004880BF900B20EEE13B0B1910EB8693E20
+:1080B000FEFE13B2303E00B205EE029013B0BFB91F
+:1080C00080E281E23C9082E2109083E21D9084E2A3
+:1080D000039085E2863E87E2883E109010B002E26F
+:1080E00071EE9AE1019013B2F1E29AE10D891FFF5E
+:1080F0007E000DEE10EE1BEE12EE14EE18EE15EEF5
+:1081000014EE15EE12EE11EE10EE0FEE0EEE0A90DA
+:1081100013B230260CEE059013B2302608EE13B2DF
+:10812000304505EE13B2304402EE13B230470C89ED
+:1081300049E9069010B0C9B980E23C9081E20F9005
+:1081400082E201B0F49083E213B0889084E23AEEC8
+:108150009AE113B2F13E9AE10D8934FF7E000DEEF3
+:1081600010EE30EE12EE14EE2DEE15EE14EE2AEEB9
+:1081700012EE11EE10EE0FEE0EEEF59213B230226B
+:1081800021EEFA9213B230221DEE13B230551AEEE0
+:1081900013B2305417EE13B237F014E913B238F0BB
+:1081A00011E913B23AF00EE913B23BF00BE913B246
+:1081B0003CF008E913B23DF005E913B23EF002E9E4
+:1081C00013B23057019101EE0291603E11B0D5B962
+:1081D0000190B0B021DA111B193EB0B031DA10B005
+:1081E00002F005F960E204910190B0B056DA15B2E0
+:1081F000113E13B230E015BED02803A6D02A15B028
+:1082000090B9B0B002DA15B210E003A67F701FEE8D
+:10821000FEA215BED02803A6D02A13B232F014F95C
+:1082200013B0BFB915B094911090B0B006DA13B086
+:10823000CFB915B0A4911D90B0B006DA001B2D97F0
+:1082400001910490B0B056DA15B210E003A67F7227
+:1082500008EEFBA215BED02803A6D02A15B210E066
+:1082600003A67F711FEEFDA215BED02803A6D02A5B
+:1082700013B231F014F913B0BFB915B0C191109019
+:10828000B0B006DA13B0CFB915B0D1911D90B0B02F
+:1082900006DA001B2D977E3E0490B0B056DA15B278
+:1082A00010E003A67F7308EEF7A215BED02803A640
+:1082B000D02A15B210E003A67F7419EEEFA215BE06
+:1082C000D02803A6D02A13B235F00EF913B0BFB9E7
+:1082D00015B0F49101B0D090B0B006DA011BD09780
+:1082E00004910490B0B056DA15B210E003A67F7581
+:1082F00019EEDFA215BED02803A6D02A13B234F09F
+:108300000EF913B0BFB915B0F49101B0D090B0B070
+:1083100006DA011BD09703910490B0B056DA15B27B
+:1083200010E003A67F7608EEBFA215BED02803A6F4
+:10833000D02A15B210E003A67F7774EE7FA215BE97
+:10834000D02803A6D02A13B238F00DF913B0BFB964
+:1083500015B0EE910690B0B006DA001B06970791B3
+:108360000490B0B056DA13B237F00CF913B0BFB9BD
+:1083700015B0EE910690B0B006DA069160E3049075
+:10838000B0B056DA13B23AF00DF913B0BFB915B068
+:10839000EE910690B0B006DA001B069709910490A2
+:1083A000B0B056DA13B23BF00DF913B0BFB915B047
+:1083B000EE910690B0B006DA001B06970A91049081
+:1083C000B0B056DA13B23CF00DF913B0BFB915B026
+:1083D000EE910690B0B006DA001B06970B91049060
+:1083E000B0B056DA13B23DF00DF913B0BFB915B005
+:1083F000EE910690B0B006DA001B06970C9104903F
+:10840000B0B056DA13B23EF00DF913B0BFB915B0E3
+:10841000EE910690B0B006DA001B06970D9104901D
+:10842000B0B056DA15B211F0FEB269E9FEB018EE3E
+:10843000000000000000000000000000000000003C
+:10844000000000000000000000000000000000002C
+:10845000000000000000000000000000000000001C
+:10846000000000000000000000000000000000000C
+:1084700000000000000000000000000000000000FC
+:1084800000000000000000000000000000000000EC
+:1084900000000000000000000000000000000000DC
+:1084A00000000000000000000000000000000000CC
+:1084B00000000000000000000000000000000000BC
+:1084C00000000000000000000000000000000000AC
+:1084D000000000000000000000000000000000009C
+:1084E000000000000000000000000000000000008C
+:1084F000000000000000000000000000000000007C
+:10850000000000000000000000000000000000006B
+:10851000000000000000000000000000000000005B
+:10852000000000000000000000000000000000004B
+:10853000000000000000000000000000000000003B
+:10854000000000000000000000000000000000002B
+:10855000000000000000000000000000000000001B
+:10856000000000000000000000000000000000000B
+:1085700000000000000000000000000000000000FB
+:1085800000000000000000000000000000000000EB
+:1085900000000000000000000000000000000000DB
+:1085A00000000000000000000000000000000000CB
+:1085B00000000000000000000000000000000000BB
+:1085C00000000000000000000000000000000000AB
+:1085D000000000000000000000000000000000009B
+:1085E000000000000000000000000000000000008B
+:1085F000000000000000000000000000000000007B
+:10860000000000000000000000000000000000006A
+:10861000000000000000000000000000000000005A
+:10862000000000000000000000000000000000004A
+:10863000000000000000000000000000000000003A
+:10864000000000000000000000000000000000002A
+:10865000000000000000000000000000000000001A
+:10866000000000000000000000000000000000000A
+:1086700000000000000000000000000000000000FA
+:1086800000000000000000000000000000000000EA
+:1086900000000000000000000000000000000000DA
+:1086A00000000000000000000000000000000000CA
+:1086B00000000000000000000000000000000000BA
+:1086C00000000000000000000000000000000000AA
+:1086D000000000000000000000000000000000009A
+:1086E000000000000000000000000000000000008A
+:1086F000000000000000000000000000000000007A
+:108700000000000000000000000000000000000069
+:108710000000000000000000000000000000000059
+:108720000000000000000000000000000000000049
+:108730000000000000000000000000000000000039
+:108740000000000000000000000000000000000029
+:108750000000000000000000000000000000000019
+:108760000000000000000000000000000000000009
+:1087700000000000000000000000000000000000F9
+:1087800000000000000000000000000000000000E9
+:1087900000000000000000000000000000000000D9
+:1087A00000000000000000000000000000000000C9
+:1087B00000000000000000000000000000000000B9
+:1087C00000000000000000000000000000000000A9
+:1087D0000000000000000000000000000000000099
+:1087E0000000000000000000000000000000000089
+:1087F0000000000000000000000000000000000079
+:108800000000000000000000000000000000000068
+:108810000000000000000000000000000000000058
+:108820000000000000000000000000000000000048
+:108830000000000000000000000000000000000038
+:108840000000000000000000000000000000000028
+:108850000000000000000000000000000000000018
+:108860000000000000000000000000000000000008
+:1088700000000000000000000000000000000000F8
+:1088800000000000000000000000000000000000E8
+:1088900000000000000000000000000000000000D8
+:1088A00000000000000000000000000000000000C8
+:1088B00000000000000000000000000000000000B8
+:1088C00000000000000000000000000000000000A8
+:1088D0000000000000000000000000000000000098
+:1088E0000000000000000000000000000000000088
+:1088F0000000000000000000000000000000000078
+:108900000000000000000000000000000000000067
+:108910000000000000000000000000000000000057
+:108920000000000000000000000000000000000047
+:108930000000000000000000000000000000000037
+:108940000000000000000000000000000000000027
+:108950000000000000000000000000000000000017
+:108960000000000000000000000000000000000007
+:1089700000000000000000000000000000000000F7
+:1089800000000000000000000000000000000000E7
+:1089900000000000000000000000000000000000D7
+:1089A00000000000000000000000000000000000C7
+:1089B00000000000000000000000000000000000B7
+:1089C00000000000000000000000000000000000A7
+:1089D0000000000000000000000000000000000097
+:1089E0000000000000000000000000000000000087
+:1089F0000000000000000000000000000000000077
+:108A00000000000000000000000000000000000066
+:108A10000000000000000000000000000000000056
+:108A20000000000000000000000000002DFC3202E9
+:108A30006E0CF67E0C00000000000000000000003C
+:108A4000000000000000000089030000508A0100BF
+:108A500000020010000100010001000100500002AE
+:108A600000010001000100010001000100010001FE
+:108A70000001000E00150005000A000400060003B6
+:108A800000010002000100010010001000010008B8
+:108A900000010002000800010002000100010001C5
+:108AA00000010001000100010001000100010001BE
+:108AB00000010001000100010001000100010001AE
+:108AC000000100010001000100010001000100019E
+:108AD0000010001000010040000100010001000131
+:108AE000000100010001000100010001000100017E
+:108AF0000000000000000000000000000000000076
+:108B00000000000000000000000000000000000065
+:108B10000000000000000000000000000000000055
+:108B20000000000000000000000000000000000045
+:108B30000000000000000000000000000000000035
+:108B40000000000000000000000000000000000025
+:108B50000000000000000000000000000000000015
+:108B60000000000000000000000000000000000005
+:108B700000000000000000000000000000000000F5
+:108B800000000000000000000000000000000000E5
+:108B900000000000000000000000000000000000D5
+:108BA00000000000000000000000000000000000C5
+:108BB00000000000000000000000000000000000B5
+:108BC00000000000000000000000000000000000A5
+:108BD0000000000000000000000000000000000095
+:108BE0000000000000000000000000000000000085
+:108BF0000000000000000000000000000000000075
+:108C00000000000000000000000000010001000161
+:108C1000000100010001000100010001000100014C
+:108C2000000100010001000100010001000100013C
+:108C30000000000000000000000000000000000034
+:108C40000000000000000000000000000000000123
+:108C50000000000000000000000000000000000014
+:108C60000000000000000000000000000000000004
+:108C700000000000000000000000000000000000F4
+:108C800000000000000000000000000000000000E4
+:108C900000000000000000000000000000000000D4
+:108CA00000000000000000000000000000000000C4
+:108CB00000000000000000000000000000007F0134
+:108CC000321E37047F070041AA3F000000001D103C
+:108CD0001E056015D7032D30003000F0D2F0D2838E
+:108CE00096E5C405030C1420080A010141404080A8
+:108CF000800000C880535BFF803300806632010132
+:108D00000000070A00FFFFFFFFFFFFFFFFFFFFFF5D
+:108D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63
+:108D2000FFFFFFFFFFFF0056363436555418009DF5
+:108D30001000C01540001400400001C00001E00018
+:108D4000000000000000000073353130304B00009F
+:108D5000000009031F0003000000000000000000E5
+:108D60000000000000000000000000000000000003
+:108D700000000000000000004000000000000000B3
+:108D800000000000000000000000000000000000E3
+:108D900000000000000000000000000000000000D3
+:108DA00000000000000000000000000000000000C3
+:108DB00000000000000000000005000000000000AE
+:108DC0000000000014440011060112251E0C0401CD
+:108DD000011F000800213400000000000000000016
+:108DE000157909AD0C000000000000000000000033
+:108DF00000000000000000002A030000008E0100B7
+:108E00000101000100010001000100010001000159
+:108E10000001000200010004000400010001000143
+:108E2000000100010001000100010001000100013A
+:108E3000000100010001000100010001000100012A
+:108E40000001000100010001000100010001000516
+:108E50000005000200040042001D002D000A00036E
+:108E600000010008000A000100070008000A0002D3
+:108E700000010001000100010001000100010001EA
+:108E800000010001000100010001000100010001DA
+:108E900000010001000100010001000100010001CA
+:108EA00000010001000100000000000000000000BF
+:108EB00000000000000000000000000000000000B2
+:108EC00000000000000000000000000000000000A2
+:108ED0000000000000000000000000000000000092
+:108EE0000000000000000000000000000000000082
+:108EF0000000000000000000000000000000000072
+:108F00000000000000000000000000000000000061
+:108F10000000000000000000000000000000000051
+:108F20000000000000000000000000000000000041
+:108F30000000000000000000000000000000000031
+:108F40000000000000000000000000000000000021
+:108F50000000000000000000000000000000000011
+:108F60000000000000000000000000000000000001
+:108F700000000000000000000000000000000000F1
+:108F800000000000000000000000000000000000E1
+:108F900000000000000000000000000000000000D1
+:108FA00000000000000000000000000000000000C1
+:108FB00000000000000000000000000000000000B1
+:108FC00000000000000000000000000000000000A1
+:108FD000000000010001000100010001000100018A
+:108FE0000000000000000000000000000000000081
+:108FF0000000000000000000000000000000000170
+:109000000000000000000000000000000000000060
+:10901000000000000000780080041B0060140000C5
+:109020002C01FFFFBF96307500CC800040FF790017
+:109030002C0103000105070705A00F141401040506
+:109040003F003800000000000000053F003800002D
+:109050000200000000053F0038000004000000008E
+:10906000053F003800000600000000053F00380002
+:10907000000800000000053F003800000A00000062
+:109080000009090909090909090909090909090959
+:109090000909090909090909090909090909000052
+:1090A00000000000000000000000000000000000C0
+:1090B00000000000000000000000000000000000B0
+:1090C000000000000000000000000005050105058B
+:1090D00005050105052C0006000404030304040330
+:1090E0000349060301262100060213211E020C0873
+:1090F0000F320400000000000000001D1E1FFF359D
+:109100003433FF00000122001D1044502D0201BA2B
+:10911000001C05C0C840F8FB060F42067F2084C82B
+:10912000E00339380D000154000000000000000089
+:10913000FC0D2DAE0C00000000000000000000003F
+:1091400000000000000000004602000050910100F5
+:109150000301001D0010000A0001000100010001D0
+:1091600000010000000000000000000000000000FE
+:1091700000000000000000000000000000000000EF
+:1091800000000000000000000000000000000000DF
+:1091900000000000000000000000000000000000CF
+:1091A00000000000000000000000000000000000BF
+:1091B00000000000000000000000000000000000AF
+:1091C000000000000000000000000000000000009F
+:1091D000000000000000000000000000000000008F
+:1091E000000000000000000000000000000000007F
+:1091F000000000000000000000000000000000006F
+:10920000000000000000000000000000000000005E
+:10921000000000000000000000000000000000004E
+:10922000000000000000000000000000000000003E
+:10923000000000000000000000000000000000002E
+:10924000000000000000000000000000000000001E
+:10925000000000000000000000000000000000000E
+:1092600000000000000000000000000000000000FE
+:1092700000000000000000000000000000000000EE
+:1092800000000000000000000000000000000000DE
+:1092900000000000000000000000000000000000CE
+:1092A00000000000000000000000000000000000BE
+:1092B00000000000000000000000000000000000AE
+:1092C000000000000000000000000000000000009E
+:1092D000000000000000000000000000000000008E
+:1092E000000000000000000000000000000000007E
+:1092F000000000000000000000000000000000006E
+:10930000000000000000000000000000000000005D
+:10931000000000000000000000000000000000004D
+:109320000000000100010001000100010001000136
+:10933000000000000000000000000000000000002D
+:10934000000000000000000000000000000000011C
+:10935000000C1C15181A1B111917131016140A0CDF
+:109360000D120E080F06090B030102070504002564
+:1093700024233231302F2E2C2D2B2A29282726006A
+:1093800000FFFFFFFF2021FFFF001D1081240504C7
+:109390000000015500000000000000000000000077
+:1093A000FBCBAA1F0C000000000000000000000022
+:1093B000000000000000000066020000C0930100F1
+:1093C0000401000100010001000100010001000191
+:1093D0000001000100010001000100010001000185
+:1093E0000001000100010001000100010001000175
+:1093F0000001000100010001000100010001000165
+:109400000001000100010001000100010001000154
+:109410000001000100010001000100010001000144
+:109420000001000100010001000100010001000134
+:109430000001000100010001000100010001000124
+:109440000001000100010001000100010001000114
+:109450000001000100010001000100010001000104
+:1094600000010001000100010001000100010001F4
+:1094700000010001000100010001000000000000E7
+:1094800000000000000000000000000000000000DC
+:1094900000000000000000000000000000000000CC
+:1094A00000000000000000000000000000000000BC
+:1094B00000000000000000000000000000000000AC
+:1094C000000000000000000000000000000000009C
+:1094D000000000000000000000000000000000008C
+:1094E000000000000000000000000000000000007C
+:1094F000000000000000000000000000000000006C
+:10950000000000000000000000000000000000005B
+:10951000000000000000000000000000000000004B
+:10952000000000000000000000000000000000003B
+:10953000000000000000000000000000000000002B
+:10954000000000000000000000000000000000001B
+:10955000000000000000000000000000000000000B
+:1095600000000000000000000000000000000000FB
+:1095700000000000000000000000000000000000EB
+:1095800000000000000000000000000000000000DB
+:1095900000000001000100010001000100010001C4
+:1095A00000000000000000000000000000000000BB
+:1095B00000000000000000000000000000000001AA
+:1095C000000000000000000000000000000000009B
+:1095D0000000000000000000000124000004390128
+:1095E000001C00043901001C9939CC1C0519100A13
+:1095F0003008300803881F10031003099614142D37
+:109600000C041040803F00001414141414140E04B1
+:109610004E0A0A490A0A000106183F00551A570067
+:109620001800615100000000000000000000000070
+:10963000C0F111E30C000000000000000000000079
+:109640000000000000000000F10200005096010040
+:1096500060010001000100010001000100010001A2
+:1096600000010001000100010001000100010001F2
+:1096700000010001000100010001000100010001E2
+:1096800000010001000100010001000100010001D2
+:1096900000010001000100010001000100010001C2
+:1096A00000010001000100010001000100010001B2
+:1096B00000010001000100010001000100010001A2
+:1096C0000001000100010001000100010001000192
+:1096D0000001000100010001000100010001000182
+:1096E0000001000100010001000100010001000172
+:1096F0000001000100010001000100010001000162
+:109700000001000100010001000100010001000151
+:109710000001000100010001000100010001000141
+:109720000001000100010001000100010001000131
+:109730000001000100010001000100010001000121
+:109740000001000100010001000100010001000111
+:109750000001000100010001000100010001000101
+:1097600000010001000100010001000100010001F1
+:1097700000010001000100010001000100010001E1
+:1097800000010001000100010001000100010001D1
+:1097900000010001000100010001000100010001C1
+:1097A00000010001000100010001000100010001B1
+:1097B00000010001000100010001000100010001A1
+:1097C0000001000100010001000100010001000191
+:1097D0000001000100010001000100010001000181
+:1097E0000001000100010001000100010001000171
+:1097F0000001000100010001000100010001000161
+:109800000001000100010001000100010001000150
+:109810000001000100010001000100010001000140
+:109820000000000100010001000100010001000131
+:109830000000000000000000000000000000000028
+:109840000000000000000000000000000000000117
+:109850000000000000000000000000000000000008
+:1098600000000000000000000000000000000000F8
+:1098700000000000000000000000000000000000E8
+:1098800000000000000000000000000000000000D8
+:1098900000000000000000000000000000000000C8
+:1098A00000000000000000000000000000000000B8
+:1098B00000000000000000000000000000000000A8
+:1098C0000000000000000000000000000000000098
+:1098D0000000000000000000000000000000000088
+:1098E0000000000000000000000000000000000078
+:1098F0000000000000000000000000000000000068
+:109900000000000000000000000000000000000057
+:109910000000000000000000000000000000000047
+:109920000000000000000000000000000000000037
+:1099300000000000000000000000000000016000C6
+:109940000000000000000000000000000000000017
+:109950006F64992A0C000000000000000000000065
+:1099600000000000000000008E020000709901005D
+:10997000800100010001000100010001000100015F
+:1099800000010001000100010001000100010001CF
+:1099900000010001000100010001000100010001BF
+:1099A00000010001000100010001000100010001AF
+:1099B000000100010001000100010001000100019F
+:1099C000000100010001000100010001000100018F
+:1099D000000100010001000100010001000100017F
+:1099E000000100010001000100010001000100016F
+:1099F000000100010001000100010001000100015F
+:109A0000000100010001000100010001000100014E
+:109A1000000100010001000100010001000100013E
+:109A2000000100010001000100010001000100012E
+:109A3000000100010001000100010001000100011E
+:109A4000000100010001000100010001000100010E
+:109A500000010001000100010001000100010001FE
+:109A600000010001000100010001000100010001EE
+:109A700000010001000100010001000100000000E0
+:109A800000000000000000000000000000000000D6
+:109A900000000000000000000000000000000000C6
+:109AA00000000000000000000000000000000000B6
+:109AB00000000000000000000000000000000000A6
+:109AC0000000000000000000000000000000000096
+:109AD0000000000000000000000000000000000086
+:109AE0000000000000000000000000000000000076
+:109AF0000000000000000000000000000000000066
+:109B00000000000000000000000000000000000055
+:109B10000000000000000000000000000000000045
+:109B20000000000000000000000000000000000035
+:109B30000000000000000000000000000000000025
+:109B4000000000010001000100010001000100010E
+:109B50000000000000000000000000000000000005
+:109B600000000000000000000000000000000000F5
+:109B700000000000000000000000000000000000E5
+:109B800000000000000000000000000000000000D5
+:109B900000000000000000000000000000000000C5
+:109BA00000000000000000000000000000000000B5
+:109BB00000000000000000000000000000000000A5
+:109BC0000000000000000000000000000000000095
+:109BD0000000000000000000000000000000000085
+:109BE0000000000000000000000000000000000075
+:109BF00000000000555418820000000081000000A1
+:109C0000696CDB8F0B00000000000000000000000A
+:109C1000000000000000000018000000209C01006F
+:109C2000308A0100E08D010030910100A093010015
+:109C30003096010050990100000000000000000073
+:00000001FF
diff --git a/firmware/tsp_synaptics/synaptics_s5100_a2_k_WQHD.fw.ihex b/firmware/tsp_synaptics/synaptics_s5100_a2_k_WQHD.fw.ihex
new file mode 100644 (file)
index 0000000..fd290bc
--- /dev/null
@@ -0,0 +1,6598 @@
+:10000000A8DC6DC40000001000000000100000001B
+:10001000B798483D0000000000000000000000000C
+:100020000000000000000000200000003000000080
+:100030005000000090000000B0040000807D01002E
+:10004000B07D0100E07D0100107E0100009C0100F8
+:10005000023469450D0000000000000000000000AF
+:100060000000000000000000180000007000000008
+:10007000EC130000D61818004453352052302E32AD
+:100080002E31000000000000000000000000000011
+:10009000722BE45602000000000000000000000087
+:1000A000000000000000000000040000B00000009C
+:1000B0000C0FA213007F0132059F05FF090041AA22
+:1000C0003F000000001D101E056015D7032D2F01F5
+:1000D0002C01F0D2F0D28396E5C40503040A460849
+:1000E0000A01013C404080800000C8C6595B805432
+:1000F000190040332801010000070A00FF001980A1
+:1001000019C080C0FF00190019001900190013C0A0
+:1001100013FF80FFFFFFFFFFFFFFFFFFFF007800DF
+:1001200080041B00601400002C01FFFFBF96307597
+:1001300000CC800040FF79002C0103000505070773
+:1001400005A00F0E100104053F003800000000005C
+:100150000000053F003800000200000000053F00DD
+:100160003800000400000000053F003800000600D1
+:10017000000000053F003800000800000000053FB7
+:10018000003800000A00000000000000000000002D
+:100190000000000000000000000000000000000956
+:1001A00009090909090909090909090909090909BF
+:1001B00009090909090909090909090900000000D3
+:1001C000000000000000000000000000000000002F
+:1001D000000000000000000000000000000000001F
+:1001E0000000000000000000000101010205010103
+:1001F0000102052D00060001030303010303032D83
+:100200000605003F3800060211211E020C0C0A41AF
+:100210000400000000000000001D1E1FFF353433E5
+:10022000FF000000220C1C15181A1B1119171310BF
+:1002300016140A0C0D120E080F06090B0301020713
+:100240000504002524233231302F2E2C2D2B2A2972
+:100250002827260000FFFFFFFF202100FF012400C8
+:10026000FF0439010020FF04390100203333CC1C86
+:100270000219100A3006300303881F100310030907
+:100280009614142D0C041040803F0000969696960C
+:100290009696040A4E0000000000000000000000D6
+:1002A000000000000000000000000000000000004E
+:1002B000000000000000000000000000000000003E
+:1002C000000000000000000000000000000000002E
+:1002D000000000000000000000000000000000001E
+:1002E000000000000000000000000000000000000E
+:1002F00000000000000000000000000000000000FE
+:1003000000000000000000000000000000000000ED
+:1003100000000000000000000000000000000000DD
+:1003200000000000000000000000000000000000CD
+:1003300000000000000000000000000000000000BD
+:1003400000000000000000000000000000000000AD
+:10035000000000000000000000000000000000009D
+:10036000000000000000000000000000000000008D
+:10037000000000000000000000000000000000007D
+:10038000000000000000000000000000000000006D
+:10039000000000000000000000000000000000005D
+:1003A000000000000000000000000000000000004D
+:1003B000000000000000000000000000000000003D
+:1003C000000000000000000000000000000000002D
+:1003D000000000000000000000000000000000001D
+:1003E000000000000000000000000000000000000D
+:1003F00000000000000000000000000000000000FD
+:1004000000000000000000000000000000000000EC
+:1004100000000000000000000000000000000000DC
+:1004200000000000000000000000000000000000CC
+:1004300000000000000000000000000000000000BC
+:1004400000000000000000000000000000000000AC
+:10045000000000000000000000000000000000009C
+:10046000000000000000000000000000000000008C
+:10047000000000000000000000000000000000007C
+:10048000000000000000000000000000000000006C
+:10049000000000000000000000000000000000005C
+:1004A0000000000000000000000000004A19DDF814
+:1004B000E0DE4945010000000000000000000000EF
+:1004C0000000000000000000005C0100D0040000FB
+:1004D000D8DBACFD7C40906581D7986C892EA4A1B7
+:1004E000A54E96717F71B07F699E75669B6BAF203C
+:1004F00084A415256B60BEFF0AAC5127D81E389B1B
+:10050000787F5B39E387395FC3C7126DB3C44C2270
+:1005100092AE9A46779654EA6554DBF473267CE1F2
+:10052000ED4D39D503F37A7C24CD152D9F9989564D
+:10053000EAA89E172D7353FEBE18587C6538C3CAAF
+:10054000C224FEC3BD3EDBCF4A1076512A03A3511D
+:10055000360FF51C911064C16D1EE4CB36B57DB924
+:100560005F1648053B7775D72ADCC66693EA6DEFC0
+:100570005FA06B7E19CCC6660512803430E25F4DF9
+:10058000728FF72404492436F82BAB64DD4E00F655
+:100590001957D130A90CFCF0362167E21A24CD2777
+:1005A0008CF375844D3A31BAD42A0147C69D7C85B7
+:1005B000F93DCAC640F859FBC3F94735A76C9BC93A
+:1005C000FF099FF28C114F4E8E5B13DF9F42D38C3D
+:1005D000EE29E1692D42B7CD98813FE8A2205E4E19
+:1005E000FDD0C66133416EA7C6E530CD7B8085A8BE
+:1005F000966EE973A95BBF041082B4CCFA1196CF52
+:100600002132806447CFE9E7168E00CEE71D72D015
+:1006100013B05E2A2BD9C6105A5430337DF462CF02
+:10062000349B9DD5A85E73B0EFE0FE36671AF3AA3F
+:100630003E0549B7CE232615CB1ABB8C25EBB70751
+:10064000DDAB72D012A131194657FA1905624AEF93
+:10065000969726AEF629FF039CDEE2272E5D51E237
+:100660008D5981D32E39A8CDFA438A2E3D5B59642A
+:10067000B9EBBCF085C950C47C899E46D2789451B0
+:10068000736BE5CA79F67A4383A709C37E0BA1038E
+:10069000158A9A76929EE21D1430AEA761E2C52EAD
+:1006A0004AA9838C068AFE90D6604DEEDAE0D4A18A
+:1006B00074ECFB5D3BFFD13867FF9D0AED5CEF31C9
+:1006C000EC643B114D2207250177E907CE782B1703
+:1006D000B9A3F9C006D1E5F0C5FA2C2E309C7526D9
+:1006E0002D8A2096D060CBA13BDDCE2CCA3261FD95
+:1006F0009228CE59E148DFD21FA82182CEE7E563D8
+:10070000038F8CDB23BCEE82CE54495EA11AD9D470
+:10071000F9EFAB597E753B19B66E9DCEB134FB9A9D
+:1007200042F86D1E91E0525FC5949779F03A5C3AB9
+:10073000C7A6CD20E79BD50ABD7C93419BFE4CCD3F
+:10074000B6CE1958D29D50ECE5C5F2C1FB99495A75
+:10075000A73ADCAD5539AFE187A678ADADF4D30B40
+:100760006B42030E86EC45A6585B161BF5C6E6AE3B
+:10077000EA50757DE848978A7DA6375754E6BB0353
+:100780009BAC9BFD55840A0A44ADF83D9AE076C5C2
+:10079000B71839433941989ED76406FF0A0D96DE93
+:1007A000E4E8B7F18EF55B98B384546785CBF27EAD
+:1007B0007C7734298B9CD313EF57D4CFE209AAEE70
+:1007C000F8F3D16FE4B040553E84AC3B62005F2A41
+:1007D000FA4C25FA6E1C731F586C7451D638B770DA
+:1007E00079DA9F0100DA8342E00CF3EE57CFF39DF4
+:1007F00085D57F5C64772ED7AB2A418EB1F84989C5
+:100800007BEFC8938472D74C084A998844A2326A15
+:100810007DEFE4B97268071D8F841B790A067AE2BE
+:1008200057A0ADDB85FF9AA985247282A1F75CCE23
+:10083000D3E26E4EE433415D1EF347F0FBDAFF7DF9
+:10084000C41E5F840C2B1828993A944353995A0F6D
+:1008500041BFF0CEC2B4C62B50DC532966B3C98F5A
+:100860007496900EB329A19ACE651141C51F702BC5
+:1008700014A7A5FB8771622C8503396562AE17B496
+:10088000C8CB2707B5E3A392242C61823380CC9296
+:10089000916EEEAF9D28F0C67DF9C5F5EA70F56161
+:1008A000799640E7F5E65B17ADD954EFB5A284B26F
+:1008B0003134375E14CE3BB718D11C04053AEFE350
+:1008C000C8377DB59D5AA3AE9DAB14F6382E04A350
+:1008D0006C6ABA303C2C401D87C8C567D829B169FD
+:1008E00044E2468CBA4A2B68FFEBDC1B4CD7D3AFF3
+:1008F0009C5B4587DA2ECB895A8D0C3159388C9DFB
+:1009000021510C634D49109CBC875888B34337CCA8
+:100910008D4B83CB62F310D5521CC3C272A137DD5D
+:10092000D156C1E6B6EE60E67A97631E38EE339C88
+:100930007466225D40DE2E6E606D7CDD9F26341F66
+:1009400051CF8DE77F94CBD9E0A0EAB4E4F2FC71FB
+:1009500024E4CE3B37A2DC6FE0EDE120EA383FE64D
+:100960004D1236BFDAF68CB821AC13742A1D900CE8
+:1009700021A466BB302685F2C04D04B3C834767816
+:100980003F9AB26BAC494F819877D8882C7C8A2DDE
+:10099000B59CD3F525AC6C2C0FD57846299A8D23C0
+:1009A000DDE4DEDFB4F2066704AD46DD191A94AA71
+:1009B000A0F32DA25EF81BBE5CFCF5C658AEEBABF7
+:1009C000E6A6F7E8F7E542CA29B821926DC4646B40
+:1009D000DE1AA2DB3F853F147499DD21E081633F7D
+:1009E000249BFCBC39DD9DBAF678F89C09B9808E51
+:1009F000AD5C2E3A1220DDB78160C3E5F0DEAF18A2
+:100A00002B7C76205AD259A12633558BE4422BF306
+:100A1000EF0B930A573FFED425F54435B8FF4878CD
+:100A20009798E13BEAAC8495F70B0BD824A578891D
+:100A3000FE4BE1EE155965C6A5B0DA4FD298F826FF
+:100A4000BAD55EE6366C3D53F18DB74DE660155B69
+:100A5000B5CE7CB067DA13E0ED7CCCB7057641C843
+:100A6000AB2AF572D585D333AD95D37ADE14968E45
+:100A70001E9E234FD1AA2196F1987BC7E46F25D4FF
+:100A8000C9E2DCEF1671A8F9AC353AF5BFE5EAD05A
+:100A9000A3C8648D5F2F4339272612BE75339B226E
+:100AA000AD902F7BB8EC63F471B34B20230321FC92
+:100AB000EEFAF41B59AB9269BE0A23396EAE6C0A8A
+:100AC0006D3A093C979364FFF02378E42EF86D7C2F
+:100AD00034FB0E0975167AFF49F4A0968E95F747F8
+:100AE00098B5298553C5DBF2CBD4276C3297D1D684
+:100AF000E7D6D6C431B8C4C5184C8C9DDDCA48E5CC
+:100B000066DD6D82AEBDFB23BC76ED10F34EE1AF2A
+:100B1000144D0731723C0FB3B95A2A90A96EAA80BE
+:100B200073CA927BF80335832A6877FA33F4FDB9E8
+:100B300060421A63BD99C5B1F212E33BBBBFBF7CF3
+:100B4000F3DAF6EBB03BC8EA1A0F4FFC6543B94045
+:100B5000B3927668965A7A227F4A2C58C58C3C9E6E
+:100B60003AD396DABAB5414085A924B0D0EACA2171
+:100B700092781074FCC66121FA44DC66BD9BF8FED5
+:100B8000E27362BB055330D6D63065F4E3D5CF1798
+:100B900086E81723457D5C2BA882BC709DC1A10E01
+:100BA000FCC5BC2E181437E139CF48E9A28FFA6092
+:100BB000FF45EAEEB256541203C241AC8EC972141C
+:100BC0001EA0F1275982D7B03D494B2630126F59EC
+:100BD0006B6FCC825C92D400E2FCF9ACA412762F4D
+:100BE0001CFAA9BC2273AEB04A2C1C34AE506CF86F
+:100BF00096F9915590758696EB6E322A9C2DF302EC
+:100C00009BAD11A265B303E89929FDC934229295E1
+:100C1000E18CB3EDC28042AAB25706935034BAC2F7
+:100C20002DC0FFBC6C30963DDF422764D45CC66D9E
+:100C3000490DCA7D9297495350BE0E137BA30CE514
+:100C40005694002E3BFD426333063BCF95C01BBE3E
+:100C50003FD6C9E75230FC6529B431D2D2F89B7037
+:100C60002371A6644C98A63DC123695AC4715E7B6A
+:100C70006EC50DB717B5BA69E839DE7EAB5FB05205
+:100C800067D68D92FF4B6D9C245FE6255A243CA6C7
+:100C9000E8F7769A0AB1F4CD67D99BB0481F3A5469
+:100CA00002655AF8CDA926C117F9BFA3DCEEF47C82
+:100CB000DF00CA5D94398B70EB6A2290D51EDB424F
+:100CC0006ED6C9EB758E01B7C3DA085812511706F4
+:100CD00030CD3BDF7A2A7ACC6C5709A908B1FBFAF0
+:100CE000D9C96B4ABF178235C2221B79EACA6C7D0B
+:100CF000760F3B321FE61AD84E29C53CFF1494AE3E
+:100D0000E215993FCA6513017E73760F5E1EDADD28
+:100D10007A30F80F286FE56F464729192F3E8FCBA1
+:100D2000D6E6AE27926E44408FAD26D2CB854335B2
+:100D3000E7F8A132F18370DAA836ADC142D082F46F
+:100D4000287CCE3E45905A28DFB5695DAB204578BA
+:100D500060D6592A65F0806FFDD5D5BD3E9A12D96F
+:100D600043147C3CE33D9102EF0A60282D2168A4E6
+:100D7000F3B1190B26A857861075A0CB7673E1AF97
+:100D8000E3F9DB1A0625B3A9F3322B294760F15F9B
+:100D9000CA0F815E60672224DF2C0FCBA2B08C8843
+:100DA000F6C9AF6B23C201CAC2C1BC81A9A556A1B5
+:100DB0003CF2EA4EA86618A83ABD09ACF219EF0E4B
+:100DC0006C4F936397203B0ECEA24C4E4DD05E12DB
+:100DD000DFB0A47583E2CA3467A2FF8AFD93505145
+:100DE0002AE15D29D1E931F0ADC983C54BABD723E9
+:100DF000A02CAE575FCA8AF6D0912248AC322F4958
+:100E0000CC9DEDD3C146839F029B7A922063FD5116
+:100E10004719E60554AB267FB609E6C608AAB2987C
+:100E20005F8D463EDC081A8923B9F4A23EDE75B414
+:100E3000DBE620F996301B4D4050E525A02BCB3E3C
+:100E4000642994E47F6ABFF4BF2764A783A827D2EC
+:100E5000E2ACB5B5F935677BDC496F7586A5F94419
+:100E6000DDCD287F2108365C4AE2108FF050F577FF
+:100E70008FD25AFDA420B3BEE3B6DB6454082190A0
+:100E800038F7902ECA89B59F089AD503616144DD71
+:100E90006A7807E2A18ADA107144B52C9BF4471AEC
+:100EA00056E34B8783161607346BCE66BD2D26B2EC
+:100EB00099D24A50B2B92BFC86D96B9863F8039D3E
+:100EC0007D9D0B0EE24D9C1124255934016EB1EB32
+:100ED000BFF2A631F8B8C73BDE1022675EFFBDB790
+:100EE0004EB52109DF27B5DC7D4AF83B915E2283B0
+:100EF000B481A3A8587C1F0A21583F441D3F26995E
+:100F0000D38FBA328FC1C2E9B53D2A46105D0D5E5E
+:100F10007946B3D80C91B731543EED55F02A51992A
+:100F2000573C1EE8997CDD865818E12FEAF6DDBFB4
+:100F3000AF7060325D7B2FAA7849CD43499FAB9655
+:100F400009A9171711893DAD2915B576C6ED6DCDE7
+:100F500035281F14496ECC789B7C5E4F56E519FEF0
+:100F6000B63D060399BA0F4253BF1522BBC192D8B2
+:100F70000303497055738585BFE8D95FA102CB543F
+:100F80006842F364A467D4624F10706CF6D939E2FA
+:100F9000CD2B08A4BB534590C139A5AC284ADA2C07
+:100FA000DAF1C48707B52D888AF66D820A60AB58DE
+:100FB00052E343A7526B23C0EFB29021C471DD55B9
+:100FC0000FC13C57369C4179AF0BEE3FF770126C66
+:100FD000374C81A5192173EA5632EDB81EE61A4F37
+:100FE00075A0281550A357D9A7114084B598069B22
+:100FF00083E5784B75B889E9A130AFAF1CC9C7B696
+:101000005EC54BAA0E4990EC9DCD5DD3B30C78AF75
+:10101000EF0DD8883E2D22175F58C0238B5349FB14
+:101020008845BF4A903D7098596526C3203B9F3242
+:10103000B42519E38D3B779D376F50538746456242
+:10104000A00138E0D0B9F4265CBCEED63677331474
+:101050008A24B473347DA8323D6C099C91DBBAB20A
+:101060002BAAAC078C8B0697B44E2F67DAA0040F1F
+:101070004A1E1F356302CEAD05470F12B60315F0A9
+:10108000212A30B958E5F18BC9C10800AF60F137AA
+:10109000B21BB16581D215548B93180F3D35EEE725
+:1010A0001698DC3A453586DEA19131AD9BAB6312D3
+:1010B000AE863EABAE10667E18431EC3F3416AB1E6
+:1010C000F3B697AEC28845F9D661E17FAE1DBD1C6F
+:1010D000A522494660918C54B3DCDAF29D3A1C0D8E
+:1010E0004CF52C8368A1B5AA5D84D984B9A24D2C96
+:1010F000D7C99513DAAC7CBB28CC2A158DFE63E2E8
+:1011000088F48340FDB8F734BDB4F3F2E0AC36BAEE
+:10111000D4DD44C9029CB7886CC1A7454DE7C11610
+:10112000ED820C1C0FE7CAB504121E044F79CF994B
+:10113000C280B68AFF3489BC87A6E0845C1F389BD6
+:10114000A6A79E62ABD7C1817F7BC7495DC9893F96
+:10115000D103E72B8FB346AEA770A42992B3259392
+:10116000CEAEA7474947A951E8601434C9602D8322
+:1011700099C53500655FE242195C0D4BEA50755325
+:10118000FF355299CB4535CB4CDAADDEA1CA518A39
+:10119000A5E64499EE3240B17B268A53A6D36ADB9A
+:1011A000489EFB6288A9D3A5933A5BA8FC385745B3
+:1011B000E44211A2839AC86DF79EA95270B3805E73
+:1011C000B3A107B661AD88EA0ED50F07B61F1F960B
+:1011D00091AE8F511BBC671FE1C7599865D5073E7B
+:1011E00011E709DE746D766A97A2FD65CC98BD287B
+:1011F00054AF783512BB8CE7E7026A5D8C9E5E4D7A
+:1012000053AAA68A4795BC8A82DBA71A04A52CA3F9
+:10121000380C01361F67FCF092DDEA1FBB676C5388
+:10122000A4CC6BBE0A31C022626E275A21D640A4DC
+:10123000B24D418C7BB6C545D451CA00B9E689048C
+:101240008D5BCD5C052DD1C39E0340574183B5B95D
+:1012500087EBB7A5BF0EDEEFD47F6B2B0A57553F48
+:10126000C8592937F4486E76247C9B05596B6FF773
+:10127000C1223F01330ED4D0635DE81F2CFF3AFA40
+:1012800005BCA752E97F78B15CD8F28D29B5896B8E
+:10129000FBF07735678824B2BDC4849B4CC3237BA5
+:1012A000CB053D356F597BE1EFD74E77D2A782F161
+:1012B0006C5AADD796979B478F57EFACCA89726B24
+:1012C0000847D0031C20761BE47C8602FD0F311BEF
+:1012D00018C3D5A581852F7B2E126ACA6317D450F7
+:1012E000FEAAC7E7CC00CE3B7EF718E03830D08EA0
+:1012F0002F3B9815122B94C06FE8C53688691CE8FF
+:1013000015A3F903611D0A9397178C4C8D82849C59
+:101310001CC7116571F22DDE6EF2654B0110A5B789
+:10132000BE32F67FEA03F9A2892756C18F4F0341E7
+:10133000F5A4E1DA51CE5B9B583345A9D4348876C5
+:10134000EF0CF9EC5B78C329F6B206CC8A26CE9472
+:1013500001F62E4717D20DC4BB228C67EB442DD566
+:101360007DDFA65C35F6E5463EBD35DB4065F329FD
+:10137000FEEBFEDC6E50B2904848E1F1D544E989BD
+:10138000FA6A1A970012A94F9F105D04A0AEE37F7E
+:101390003B5C4201CEE684A21A533A640ECC5F292C
+:1013A0006CDDD26824FBAD217404F744D9E1BF9C05
+:1013B0003A4CF62EC1D24B4F02670D40091B6D37D8
+:1013C0002818FBA44287612F36940D821440F28ABC
+:1013D0001E0688717FBD81D6417B27B49BD982C50B
+:1013E0003AD6F47FD785CF57BF7ADCBA6B71F882D3
+:1013F000DD8A3955503036D1472E300E84ADD98331
+:10140000FA6EEC5460313BA0DFB767ED350341ACB9
+:1014100090F6174F25958066F4BDCB77E8CEE75F51
+:10142000F36BD8CBFC91B3D4374BEF4DD7C55357A3
+:1014300059A0CD7709D029879A45EA5FE9C0855838
+:10144000B4A02900017172CA212149146FE99D2EAF
+:1014500068A5859BBF4291ECF4F0ADAD0BFD5F3309
+:10146000B4FC3DC38995D13341D814ACC9C028CB55
+:10147000B50CFDC9E09A2F223E10092518E78EC54C
+:101480004F370CC2838307A5F37A53A57746FB1722
+:10149000CA65D1405FBDA7225F8FD9E0B22EBFCB16
+:1014A000E2F4AF4F0A4566C76D4D2FA86BE12631B8
+:1014B0000519E5B378EE2802A1A93724E10F12122D
+:1014C00059A23A1E0C1C425B33836724836A79D489
+:1014D000E4CCEDC184AA3B4CA22CEF03130E53487D
+:1014E0006CB10366BDF855340E04A0BCEE9AC07A08
+:1014F000297E54237A58FF4E8DA5A415CEAA81E2E9
+:101500004B4C641DED9D7A002AF95D229E6D052BE2
+:10151000188807B95FDE60648576205684D8CB27AB
+:10152000E5A68720B6AA1F5990B8742F527B6FC8C2
+:101530004A1474C10B579DDC46A7327CD6343F1346
+:10154000FEF96B83723E81F1B4CD6288EA65E8D61C
+:10155000ED568A49E43AEEA07432A7F97CF7BE2131
+:10156000F0100D00E7503AED4413633BD4FE01D573
+:101570001D5C00F0E34CB2DD5F9FFF9D1EC0124B6F
+:1015800027486DB2DAE7C8855D9E1C68F7638782DD
+:101590009A8585117186D0499D6D027B72A53F9415
+:1015A000AA1ED755E2A4678F4E9A9072903278CDDA
+:1015B000FC65E4055F4021E0874ABCD34108AFDA0F
+:1015C00015CB4AE6E621794F87B642F31F06106F26
+:1015D000A885591B8F0B764420DACAE1080398AB23
+:1015E0007995DF3838634240086523176E93C3B896
+:1015F00009FB351DD69578C2E52EBFA7AD1DA5D335
+:10160000D80A9AC724952EF991DC4C6985D52E1BF2
+:10161000EF89C1C0F40F17666FA48D330A3AC0B9C1
+:101620004544D2B9027E12F18CCF214F635FC53E93
+:10163000A0DE0F08B8FFB92C59D14F012B99915951
+:1016400013D7C00B275438913B1948663F50564971
+:10165000CA3882DD6782351F826BF94D2CD08EF13E
+:101660006BBA04D816ABC598B8DD485F91B3F91DC5
+:101670003101BD07366C54493DA238B65C64739B9A
+:101680004458AE0106AF80216525DBFC0F4C2AA231
+:10169000340326EEF2FFAE9BE9EFAE88EAE743F5AE
+:1016A0003EFE83AF9EEF19A7FD1A74157A200666D9
+:1016B000BDE14C33E2197A4B222A83348DD09276E5
+:1016C0007E48F1F8D755FB494F7B10EB8B8A0EFD16
+:1016D0000D345021AEABE814C048627AC1377F3276
+:1016E00050AF918937D22CDC32C9A65ADA592CC3B3
+:1016F000C0A536B4B89CAFB68650E1AD6E7B313A2A
+:10170000F7F61E56B569005EB1687128D22155BF43
+:10171000E729E86A84B824FE45BC0FBA6B5F1E9FB8
+:101720008EB0763AEB16004A06D7F6321F6CE7E425
+:101730001A62E1B07CD78E2305DB264BB667109783
+:101740005DBE2AB9A74A71B4C58C85A792943B089F
+:1017500041E1BBAD612DA9745F94D99B6DB7F7B31F
+:1017600032220B9D2E59CD8F2ED4A83EE9F0D8D130
+:10177000CBEAFD4912CC602D8AB5AA97DD2CCA941C
+:1017800025E49FD55FCFEAD513673BE233E48EF0C3
+:10179000B1DAF3F1861FBD8B6E3F3A32A429D586AC
+:1017A00049084D7ED614AC31AF1552B44AF17E775C
+:1017B000C4D42A1D9A58818EEF61FBD5992EDC4C3A
+:1017C00061D14125C72B48F57A8763FC9E5D7AF18C
+:1017D0007E6EFB1B1C359669DC8789FA91C61B8AD5
+:1017E00061AF0DCD8C26EDB03FAA0EB011E92BEE06
+:1017F000A12B620199BB3C5EF5F5C98E958455B667
+:10180000D8F05DBA6FC093658B796AC60D48C497EE
+:101810002F39C40DAED25C9A789A565B5EF0FC63A9
+:10182000745E54D34882816F421573E42975706CDD
+:1018300037E3ABA7C55296BF2A3438C7AB6C111635
+:10184000B84569AFD2D6F081BE1D9DC8A85DCEEB6C
+:10185000812932F20ED3E4588CB952069D1859BC36
+:101860008858D76307D616B2FD2ED6561BE038AC83
+:10187000A4F614C1221BB8BE55384482431B282548
+:1018800099EC5E3CFADC41DE67303DCE24A48391C6
+:1018900015F3F7A992E6B35499DD84CFCB6DAD096A
+:1018A000FA2C6DF9CB50CBEB12142695996ACFF335
+:1018B000A2EC14E88894E25AB3BB2629E10A06D4C4
+:1018C0007E6E617F0DF593B892899FF47B00883F0F
+:1018D000E647DFF1D3BEA93B9B5E18B4CB06F0DA36
+:1018E000B3CDC840F2B898D99E5A1D0BC227C6EC9A
+:1018F0004D43BB7AAFF6094C5BA1D87AAAC6CFFD9F
+:10190000BB94D3B55972460C2EEB3B81767ECDA1AC
+:10191000D7CE195AC4D77F68E4F77C79EDF8DE1E7C
+:1019200063DE60059FA8EA0D7773EFFC6E1EE70B80
+:1019300049F8D1220F3F9C9AC419B190084D630415
+:10194000DFC5A1DA96F6A94974DC56D22148E14DEB
+:101950001728176B0BF8C70C424F45CCE2553FAE2A
+:1019600013B09AC78ACF19A8685987F99B8F92023A
+:101970009E3AE57AD72254412DF9DB8BB147398263
+:101980002505009E31832935BED1297DC343BF0281
+:101990003A1F3660D3199ED1E8993B20BB5A9C2C44
+:1019A00023F96AA350AFFE1E705A7EC3AD054048AE
+:1019B000114238D304FB953B154B6E3A629F81C3AD
+:1019C0002317A6687C533A8BD52FA77DC900183FF3
+:1019D000A893CC574BEDCAC202BAC74B48977C9329
+:1019E0008DA6D28BBD4FCFDD49008EF343615148A8
+:1019F000744B1DADFC31DA42372ACD797108126F74
+:101A00008C942AF406603FF01D02B6FA1534342295
+:101A1000D68F0E424C39A2D77599DFBED9A9BCFD2D
+:101A20006E44930E69039F22C3128B098FCBB75C60
+:101A30009EF0D96A402A5BAE9B573AB87EA754C83D
+:101A40007EE826139FB248C742F5AA832B79F1D9C5
+:101A500090E721C40AF885C14F0D074F80D6E531C4
+:101A6000460081B95E2AC71F6884245946476442EC
+:101A70006D647E19D8F5A28E13CB1BFAB637DA5FE8
+:101A8000DFDF5AD6812A71D494ADC27DB8A4E38633
+:101A9000F2FFDE1FC604AC7C1F3549B8DCFA6503D3
+:101AA000B8F4E4F708F1FE62F36F06E7AD30E2E365
+:101AB000627F840A833A16791F7B02E6D0427673EE
+:101AC000B8E4AF052F1AC20D0D406E93D10FF8CDBB
+:101AD00010136ADDDD4B701A9F843797A43D5F7247
+:101AE0004412C67B623EDD9789668AAA795546C450
+:101AF000435D2A26F3F739FC5774EBD972D1884934
+:101B000036043AA263750DD0F06B15A90530422654
+:101B100001D197E150BF04980AF353599DF385040E
+:101B2000CC64553A5CB83B2D095D1BB7689E9D9D02
+:101B30007CA7449D95EE5ADA6AFC092085E5212EA2
+:101B4000883AF2B257AB4625BFAD425018DB0C6F56
+:101B500063BEA122A0D016100E40EFCC1CCD7BFF9F
+:101B600040591F5717A66F8C50DFF36AC8632E5D6C
+:101B70009856FE62858A61BEA04FA701E86152D1E6
+:101B8000B6B97CFE4CDE919CD1827E084C874EE437
+:101B90002E366862BB1D74919C4FE325121410C44D
+:101BA000C276FD4E94DBB525A4E37130DA90574D33
+:101BB000C9B8CF2DA656ED9C5E4AF3AA01912C52CE
+:101BC0002414C52DED683F371D12205FB42A59BC7F
+:101BD000905A039510041B2792AA7BD62DD8069500
+:101BE0001108F22DF22DC6F3CCFAEC37358B05DA5D
+:101BF000601981A7BC105D0DDF6057D5FF6E6D3099
+:101C000091F0ECBEF1614EA3479A354B9F04F80A60
+:101C10000745088FECAAC146C3B9D612EF27CFF704
+:101C2000F750C04832E71B43FA2DE508E915C2B664
+:101C30006BF7991C710D4557A9BD8E1DDE4E6CC208
+:101C4000708BD39D6F120C29232524DE7C4DF46DFF
+:101C5000A548C9320CF3454D52398D84793EE127B0
+:101C60000BF7536CC46DA97CED5CECEC2F19E7DD30
+:101C700067601D6445B6525267FB7F421B42C93DF7
+:101C800095E964EACA1CD3C8848AE0E33949968995
+:101C9000352964CD508E7828C59EB36F8E9C43EF56
+:101CA0001B57401B83035B96531B4CFB32190FF9E8
+:101CB0000B4843005FFD0A25F5851F011E70C73ADA
+:101CC000EE0B27631A888C6BDAFB67AEC997F3F3C8
+:101CD0003C96592BF16B1E6BAACE855B4360A98F96
+:101CE0009789634905EB67438F85F7570218BA1D3B
+:101CF00010C075B5E0427C8C94B0315A49607A0BC3
+:101D0000DD97E77CC09707EB7ABC26083437561E70
+:101D100099382B6CA458C1611DD1F5C603D6D6A93C
+:101D2000B83B94F07279756FBD0B1C5EEF8690071F
+:101D3000D8DB1F3D965285F3848D4CFC8B9419B6ED
+:101D4000474E60FB7275580572D99139511AB5F436
+:101D5000B15A16EAC8A084D9DE1E38947E5E3001DE
+:101D60005526A40C5861374B0EA4821414BE7F660E
+:101D7000D10C0B28D72BCB424BF1105873348AE48B
+:101D8000020DBA507EF49F71EBE34722259D4FB6BA
+:101D9000FA61ABFB2BB98EB95AD378C7A2E655B717
+:101DA0007CB43A0A1B35A821AA6C05FCE91A3B222F
+:101DB000180D6106705E0EB26FF861ECEA442D54A6
+:101DC0007DA9C7A0E2FF99C1120F1B01F7C8CA7F06
+:101DD00000104BCEF6166ED4A4F90C0A6D4413779E
+:101DE000CC14705EF2D5CF47C90AB92D156E149C7C
+:101DF000395F1F924957504D90222960870BC76663
+:101E0000BDBA029456BD19117C92835EA9D97A8914
+:101E1000E39787960C809A03574A0A49B99F289EF0
+:101E2000F5536EA4F1CD43AB1C1CF870B43FC28CCB
+:101E3000FA60315A5D0234FA2BDE01F22867E44180
+:101E40000C809CE4077E72690CF633A56FF028467F
+:101E50004B4D4D95DDA948ED04560027959DFCB2EC
+:101E6000E861BB45DD22C93B2004544ADF256D965D
+:101E700077068815EFC47D1B7CDAA5BFD6A80FAB0B
+:101E800065A6FFEB4FCA03D836F052D40BC953EF07
+:101E9000DB38FEF3976A3076CB84C8CFCA18CAE520
+:101EA00058109D13CB52571CA0F0E93244D932C0D0
+:101EB000326CF6F88877192CA8FDACE82B98FA3725
+:101EC000B0B86AD1ABC943079A26F444A68B1376FF
+:101ED0002C707805051636979753A7C4F107A418F8
+:101EE0000039DFD5631EF52DE4C56E6A411A4F94A3
+:101EF00083B1F18D9B224CEA9FFAC2AC8E2341C183
+:101F00006483BAA4677774C678ADC5E68738EBC436
+:101F10005CB02415CA7EE0F90C516364BD595CF6CF
+:101F2000F01E50BA9DC09978B7855E8F37D287E68C
+:101F30008C173D9F3C72D036DC20DAF7DFA1B6214A
+:101F400068E285E416466836B942976AEE04BD5FDA
+:101F50002DD4E4652030DF0ABECD0375A825D5E475
+:101F6000E925540BFA73A0F82A333BDE9BDE4F9130
+:101F7000BD07839213D523F76056D8D81248BD4ABF
+:101F8000702D50B3040430A9CCA2A87BFF19DD94B6
+:101F900059B82DBE2C1CF9E681EC12414FF8A4C2B1
+:101FA00011174E3FBD1D67E40B0DF100C6771DBE36
+:101FB0006E49DE2877396E38F5EA7BDAF9346FE658
+:101FC0009A5CAAFD67E687D5DC6C0899C13BEA23D9
+:101FD000EDFFBACB84BCCCE0E3700F5C70A51FF3BF
+:101FE000A7C07DD39DE0CEFAF5A33C3BC90A769EFF
+:101FF000EE13147E39342C89DC7625E942481E4ED6
+:102000001A205839DCED438F77AC6BACCDBB67D76A
+:10201000C47789D46F769A1BEDDAF483A7FD215734
+:10202000F5D8B3FC5B2CE278A71A8D54F3BFD86DBA
+:102030009946870FD0F3231BB1193F23E861DE9047
+:102040004E4C7611948FF3F50C797E4B83D5454A2F
+:102050008FB0A2B5456753BFC41A0F51669F6E4536
+:1020600018A3EF8C521342E54649CE3A8963FE58D5
+:10207000C8F0D9936FB660488208C9128E2920D45F
+:10208000B8D0DC584C4CD433B13F454074C38122A6
+:102090009433D3C825A0B3E4CA4C66145E78316E7D
+:1020A000B0BCE7E6EAB8C757555CC09265EE277842
+:1020B000D1E4A9EC7AC07D3CBE3B32327776A235C2
+:1020C00056341865D14CECA5D7EFEA5B21510A894B
+:1020D0008871CE8DF24ED18B25FDCBF22ABA42A368
+:1020E0005B88B172739C9EBC70971628CEA5E4DD08
+:1020F0005716C983DAFF1B45C8E80E1F4C54FE0B68
+:10210000A7CA45ED360694A54B08DB4A5F5183F814
+:1021100086D426E0D4F309C0F9C8566A1668F18D52
+:10212000FC689FDFFF97B89B37F708C0CCFC9C9DED
+:1021300002AC44AACA18D03E1572C05FF5135738D6
+:10214000475FD3C0E2F5EA3CA7A6DFC0E846DF025E
+:102150004D5B522A2C14AAEB12B7A3DF0E027107B3
+:1021600000C629ECCBEA42221412B13C4B9164C464
+:10217000997094B59CA853E29CF65CE23B4AF7E662
+:102180007D42AC46BD6A94369DE72B394AB741E89B
+:1021900020CE30954666331E3BEE2F7F54FC4B1B02
+:1021A000747D987E2408A1E04FD77A29B63CA130EF
+:1021B00022EFA42AC37F13CFE979C2314B8A6DC4C1
+:1021C0009745C56FBED675F6663FBEB07423A6D0E0
+:1021D0003330B15EDDD9BEAD9A302D34BCE5EFFFB2
+:1021E0008918470BE7DA9886348CDEA2B5ED983073
+:1021F000646457D8F2C3588C0CA325F2ACC7C38EC5
+:102200007E61AD8AC09FEED96372BC4A2AEC4ED57E
+:1022100058C96327B09B5D6B37B3B92EA955338579
+:1022200094DAE6F1CB1DD6E37CEA21B75B30353496
+:10223000ADB499FD1CFB5A62567285A5B80F09B161
+:10224000269EF9AC6572504F0B5D233EB33E585746
+:10225000381D654F4864D35332B85B7C3AF127F898
+:10226000B615D0EAEC6DB5075659338BB967E975E9
+:102270007D4F11033C52A4787859268645E00FE73C
+:10228000C1C654410728F63C65F2E26C817D321BE1
+:1022900061C723112B339A4997B84D309081745CF4
+:1022A0006C90BF35B3FD4D850DACE7417DB37D3EF0
+:1022B000FC9A9F4F6087E9E5470A52AFC66B93428D
+:1022C000A71F83354CB895F0372A673176EC8E938B
+:1022D000A7182863FDBF2111C34C3361BDE874B456
+:1022E000A7EEE721C0D966470A5197386DFF846988
+:1022F000C434DA0DBBB5AF288A5803D1E656403254
+:10230000A4379436D8BD90266E20F3F4C64696D4F2
+:10231000D4702AB0DE74A19F4E68546EE4F3960424
+:102320008187913B2EA963677CB36B3716D5153631
+:10233000CF1B9B1EFBD352D95FB49047361E8245FC
+:102340000056BF435DED1D4F733F449899EEF64D27
+:102350009FEDFA0F18E6C980F9BD0A80245989F566
+:102360006E41A6DDCB4E16758BEA9BCE18C635099D
+:10237000D458DAC984B37D36AB08A4C12389BF140D
+:10238000CA2912E18E4B7402C405E338A490ACB2A2
+:10239000CB9F0F5271F70C254360B40D4FABBB5B65
+:1023A000C58A06E44B154480581BE2E3827C948482
+:1023B0000B177BBC4B340D9FDE543AC23B47C31313
+:1023C0004DB8B425C06B16DADE4FABADAB0B78273A
+:1023D000DB25F39658E5FECE92501137BB570EAB76
+:1023E000C42F3B0BC8A4F800F3BC9CDD8C61BEEC91
+:1023F000107AC8DDDD963033E3AF176FFA2C740E18
+:102400008FE83D287DF919D53E2BC49EED7809FC57
+:10241000F18FD656D627F6F600BFD61B57FF5306C8
+:10242000C012A1B4BABA5B1714E4B0151D1292D150
+:10243000EDDFA704C21A0D961EA49E1DFE368CEF7A
+:102440004F5332F1D04AE2189305265A6AA9DCE6C6
+:1024500088A3AE94ACD5415F1CF810857E4B6272A8
+:102460003E7BCD9A670972BFCAFF5C8CF9D6B4393E
+:102470007667BBBC0E51BBAD3E5A2E3D8A7412002E
+:10248000A700FC61A53282E162EA554B2155A28783
+:1024900025389F10EAD9286539899F93003BAB41C5
+:1024A000EFCE7362E7FD0C7640A5D791EB64B52EB5
+:1024B0007590580835492745696BEF9DD81C97B52D
+:1024C00009E9FB422E7B85209BC11B3E5A52ABBBC8
+:1024D000C19975BFA4944985163D7689F90B3BEEE9
+:1024E0004672AE36FA7A71D7949C2DC0794767163A
+:1024F0005D516781A3A2179DF95548AD880DFA205B
+:102500004CE1C0FE62E26FB7412809AF9D117854DB
+:10251000C244191580947621083DBB5B0E12D0543D
+:10252000DFCA7EC6A94945A9A8698361854BDCB38A
+:10253000496F35A5E5B3C59F247EFCACB34E191594
+:1025400065EE744A8BDC160DAC8B7C3D0F9E8BC800
+:10255000F4E617D31A4525EDB8817DF20BBBDD0EED
+:1025600027F8225B0060BD112DC9682BD304116FC1
+:10257000835DA7F364A1F6B5E7E85062E2719F2995
+:1025800016B64FEDF36BD41F9BEB766BB3B9D782C6
+:102590005531101E7CB7CA68F5BB4728C6A31BA1DE
+:1025A000C2AACA20E216B3E2D4D3FD05C434783EF1
+:1025B0003D4BB532342A42667C344CFDAA0EEDBF49
+:1025C0001760CB06A60A6B1E36CAE028504B82E97C
+:1025D0008AA204F04F7D182C2DC1662E6A6ED2FAA5
+:1025E0002A689FEE680FD8662C22A9F0D4C34FB892
+:1025F000009A841FDFF1CAA5EB02DCCCA25E701941
+:1026000039E9428AC4F29E5C6011531B7BA3061A0F
+:10261000E8B6312334B4B03467166B3E1F5AD1A3E9
+:1026200029D12F0CCE7423B728053AF951DB531763
+:10263000BA558E86138FA3BC94F49C918586B17A8B
+:10264000B328B123E07646A74BF1714A9597EA0586
+:10265000758F7A7B2F0FEC27692D94EDB80DB30899
+:10266000326B0C3BE6660676C8D523BBD816B5A6FA
+:102670008C6E1D39BBCD99914AE0E237675B95308E
+:10268000924BD1BF04DA63EA20EF3461EA6DDF27B1
+:102690006BD111FBA356FF9FFED9EED98AD67714D2
+:1026A000EAE634990717E66FA7F791C10C2F1C2CA7
+:1026B0007559C9DC2D822CC32357DBD6AA2CF04ECA
+:1026C0001E5B6B73893099323562A031B3AB64C63F
+:1026D0000B5E501C6AF7573A4809CFB38AEB7383F5
+:1026E000C3C7EA40696E8716E8521FB7DC10AE53C5
+:1026F00009F989B0322D513C026C4EECF30CEDC05F
+:102700006A927393B04DEFFAE562716A848690A283
+:1027100083DD874FCFAA99A696E5DFB7CFF8AC8FB8
+:10272000CB7B130E8D0CE3A95CB5794772641BC398
+:1027300012B5A1E52FCBF0DF40DF0729034179F87F
+:102740008B37727F461D558FE63AAD8336B82C4BDA
+:102750001F95E7BABF1D0F71D22E88B2C15BFC8EE8
+:10276000B7E5D4AA86A8D2A057DC2E6763659F2D53
+:10277000297DC9D7191EF1E90AD6F1ED1A2DE9CB49
+:10278000980E9128D407D68A05506F0AE29571E415
+:102790006A4C1BA48170A090BA67AC7C302B9CACB7
+:1027A00010E6B09B85537D14D8233EAF2C1E5A8E65
+:1027B00030C8F42B8DE81A0BC34CC2DF6D55320CB8
+:1027C000FE9E96909BA304650DF5590307FA3FED15
+:1027D0003E28799E5960738AA8EF5C0B3124E83B50
+:1027E000FCA7B7E3244F8674CE1B235282321F9A74
+:1027F0006E93501813EE985BA409196B2D50A33BF0
+:102800001DEBBBBB1D1CB339150C05035CE8188917
+:102810004297AB6916E30C2B17EACDDE1CABDFEB5E
+:10282000E9BCF4DE06DB0506D9CD48CA634C3C5B47
+:10283000A0B1A043EE3B9A38AD93FA2499D3EA5D58
+:1028400021FD46526B554F5914F14FC3EF999B929E
+:1028500048C82236054B2CDF21AFFFEBBE896C4701
+:1028600012E83AA2B37C92831D9975FC46EBA9CA83
+:1028700063E8F013FB19743B2A538BE0112E51C609
+:1028800071A7B133835ABE4B66DC3D6A5C8D24313F
+:10289000B6B582C23051291A00E446F6B7B224BD5B
+:1028A000D559E1E36AD6912BC7CA56842189DE2522
+:1028B00004F15A7D5312D08878F95D85828BC488E3
+:1028C000878BE5E3106F42734C690F3820E458B1F1
+:1028D000383B60F56F722975A59969991283075481
+:1028E000B6E3F6F2B0A6D293460870F98F37787D3A
+:1028F000A3E5A6413BCB62292DD54297BEA6E49421
+:1029000014C0161ECAFFCE1FEE7936ABAFD2FFBE83
+:10291000D12EB3106404B021B06089210DA148DC30
+:10292000D833952E3BF0CD91B74D2056B5AACD1892
+:10293000F567D5BAC2896A8D803EECDF18EAD237D6
+:10294000F7F73CB8938D351BE3344455B4AB65CCF5
+:10295000DDEB6730B1F3EBB13C9AE018A32339E229
+:102960009FCF304E8E768D25CA2A15CBEB77F5207A
+:10297000D80BF09DE4709C860547506D264C96223E
+:1029800075F1A034D01A646B1900EDDDA420148316
+:102990000C36BAD556E1D320D5E7B08B0E8A896ABA
+:1029A0005AE20A6F2923E067A46D7F16A69F6B4049
+:1029B000C353D3A3FFD37FCD32C03ECDFFC25E1F32
+:1029C000B1A03C763C2903C1F4B0FD2FF131587F12
+:1029D000C28D8008BD61864D6A5748BAD145A1595C
+:1029E00044C374EBB5AD94E3B8B4750235912B19BB
+:1029F000100484E20D84FDD8B6FB332A855EE43EE4
+:102A0000FEA4C143C38EED7773C4C9027A5A72C85B
+:102A1000A6DA727F52EFF1063401A655AA816E70D4
+:102A200045581D1A1FE941C55054E13018265788F2
+:102A30001B2E7B24D7B29E8B2DA98CB97FB15C3A1B
+:102A40002C225D5E7A31BEA1377A8049FEE7E356DB
+:102A5000F8161124C67F43F0E4008C6C35B9658804
+:102A6000BDCAFBDB26C57B5607B955C21B10F196C4
+:102A70001C74B8B221D428233AFF0FF25CC2B87399
+:102A8000FD4C48FCB7B0185149536B827E7D973995
+:102A9000A0761AC1A5D6738AFE370ACF95988DBE47
+:102AA00016AD527352B8443161846D9F93FEDD7749
+:102AB00056E319FD3AC8F10FD8ECC9E4A748DF4442
+:102AC000527C82CCD550BC03A8E700743E2706C8D0
+:102AD000A49CC91AED98844847438BDA27BAFE674D
+:102AE000535698EDD452732AE9622BC67CEF48D92D
+:102AF000FFA5B4FE94AB83573FB875F6E7425B90F1
+:102B000082F756A03E7CD1D026CB661D0F84EA9F6B
+:102B10004D4C04CBD487045FE5F0BA518C4AE26F88
+:102B20001E4CA3ED4D9A15957A7465FC94B9483402
+:102B300017D4967D2C4C0670853859463B8ABB07C6
+:102B40009DBADCFBFFFB65A35184EAFC0F48E16FF3
+:102B500072438A2C93E7DF122B62D44D6C7BFDD33A
+:102B6000FF49AC27C5518DC32891908DDC208B681F
+:102B700089EAE1A9C40BB5DE0107FD907431C94AA9
+:102B80003EB44DF62C5A7F2740E318EEB6CD9F5940
+:102B9000E83F7106282445696EFD2402D9C7144513
+:102BA000675DF76812101D841FB3D509499F621D28
+:102BB00093A79FC3B55E66662D769B2C0A4C24397D
+:102BC0005ECE98F7F16D0B23B29AC41F1483054CA7
+:102BD000763F8676347C46EBB03E145D52A5B5F95F
+:102BE0002796FBAB4D73CFFBC5E70F580AD3900276
+:102BF00090F71748D46961DB1291697108409332EC
+:102C00002048F118D48ED837FD046211553DA72015
+:102C1000BBE079513EAE35E64AC8657CB124699F78
+:102C2000EB802B330F567CC2FECE5DD94305A47DCD
+:102C3000BA976FC382E8B44A3D8ADE77D91B17D7AB
+:102C4000CE6F1BBA0E04557BAD7AA41F10122FD580
+:102C5000E1C00FC384161FD10EE75707CE03E1FC76
+:102C6000F6C8365A078AB99E2930951330393F0D78
+:102C700017F69E1A9C806ABD65CA7E0D9329ECC129
+:102C800067399F3BB94CA5CDCE3403C3BE05F04F89
+:102C9000717DE348BEAD0AE2F82CABF433F00C9C36
+:102CA0008F068E3434E5D19AD7F32273E5FA509724
+:102CB000938E29265D951D3A4C5A4238CF32F8E161
+:102CC00058734AFB720B56C9C15505B2591E3D7D5A
+:102CD000091FE8DC2BE0F3231DE403FFBAE616C46A
+:102CE000B034EC236E3E943C6D8FA7BD4903F3AA2C
+:102CF00006C7D7AA612E2779820E6D5CFA10C275BD
+:102D0000C35CB2D3A3057B1360A21222739C04346C
+:102D1000F06317449E281C65CB80756BD81869CD6D
+:102D200093D8E9B6BD98B9EB96F8A6208672EC6701
+:102D30009A0C51EBAACCB0AE0DBF6CE2EDAE64982C
+:102D40001FECE7724C2C4AB4007733EA67C0037B70
+:102D50009E4D8C7E7125D1C85DE1ED31B46A4ADBB0
+:102D6000AAC68E70E997CC3A712E2493B37FDA3ECF
+:102D70004F8489CFF4E4F5C8D8619DBA679369C5DB
+:102D8000A5ADA38D31900CBE68D86EEECD6245F135
+:102D900041B57BE75816979958059A9E381688CC06
+:102DA000F004069DF4B54A795836B83A5FB63D62EC
+:102DB00085F545106284A469120F53F1A78081DB69
+:102DC00049B31C4679B1E44666BEC31CB6A420DDF7
+:102DD000965EEE162DFFE6D19363BAEDBD9FBF88D8
+:102DE000A530D5BBB01322B88F71DA58F0B68B403E
+:102DF0001392F2AD834B467CAD7A370E8A278A5404
+:102E0000CB72F13C3F1923E8016FD51C582DBB4E06
+:102E100007D3B4E45FDB3971C8C07545C1982E345F
+:102E2000C520439312F976BAD318466EC33CFAB55F
+:102E3000522A14C7CEBB85D087BE736FD92871C400
+:102E4000872AC99C670ECA2F57ACB9815DDB236EF8
+:102E50001427AE69EC0944DACA99D6E483C3A8F70B
+:102E60003637D92B7C5855B52C16DD9CA7F6D9F9E9
+:102E7000F2F797F473219983B3CBBCA8AD2369C64D
+:102E8000AFA3DA5EAA132AB60052DFD2EA187AEEAE
+:102E900080BD3CE7683BEDD80159BF613ED05BA2E5
+:102EA0003B1A8470E0448E7D4D95810A312758434A
+:102EB0003093863EED0CE438EF12793390702A435C
+:102EC000EA0E6278CF04B6AA8B956A45BF4AED0236
+:102ED000E91D34710CD782CA216C0E564D0A771E3B
+:102EE0000D3F480FE72EED8CEDB3268FA49FD478CD
+:102EF000BE9E4A9FDFC6D68290B053DAB57DDD36DE
+:102F000016B237F10AE39E1BAB26C13E7647E52891
+:102F1000281A3106655E7A6876480C544DFB9B246E
+:102F20009F378897DDD7E8260A4531442AC179853D
+:102F3000CB6A64175CFB5F98D9446C2E12A8079B80
+:102F4000BC0A7DCC4F9AFCFD890F34B062B8399928
+:102F50005D51DE3421C76B34EB453CEC30C5C4B960
+:102F600061786DD61D298EFB1CED6A7A253F995E2E
+:102F7000329CB88C61EA53AC031B70CAD56F8E4A81
+:102F8000A75E3F2BCEBFF8394C546D517762DECE31
+:102F90001EB758B5FB394100A92D14544410FB2825
+:102FA000C7D6D54D5FA963676779D0032F95873C56
+:102FB0002FAAE9318B30696A2A26C8932815BDA546
+:102FC000F9EB73C701DD5720CB523DCCD99D584E4C
+:102FD0009E53F7D8AD22558E5EC6DEF56D4F554136
+:102FE0004F636BA73E6C8172D0A9368CAEEB1DA0EF
+:102FF000706DE5CA9A068AB1AA0D46DB1803AD4783
+:1030000013D07D350D467C8E3E92327C38DFDD4715
+:10301000F553A5AC7A33C71B9D108BF8D78FC1042D
+:103020005A096CC5147B0AF1FD7ABC27E801BCB6CD
+:10303000BE18DEFB53B649B5B86BFFF42140FDAFB7
+:103040009A87AE8F01C3305062144C242AD70536BC
+:103050005DEECA711EF4DD7EDAEC879695167DCEA4
+:10306000BD313C454387017DB494548ACABA7D92F0
+:103070007C69ED39075822058219B640301CB6DF4D
+:10308000D995C5B7C3EEFBC943A1442E7D9CEB2661
+:10309000D7F647F589F67499970EC9E7B578A1E296
+:1030A000EA6EA350485943D84274210FAA49A79801
+:1030B000899EF830F275273691A9E53F669B1CBCC6
+:1030C000BEE815933AFC0C46ECF61CE01D9019EA9C
+:1030D000B3B3234209C9B9D31496014B18905F0DBD
+:1030E0005EC2E1920437A9D030399E43EFC61BDBA4
+:1030F000E80016854A1E42BB8F419F7DFE0CB363DC
+:10310000FCF527C1BE1FD156873440F7CD1A58B8F9
+:10311000913B5F80648A6F748E1C7A1E7C93A988B1
+:103120003761C9A46B14E52FAC0777AC8FFA824ED8
+:10313000C6C810AF68595AD92F0DAF2092E7C416F0
+:10314000DD5613D6EE79D77D1030795F12AD6F9EC4
+:1031500089DEAA74CC3179D00F61003FF5AC9BF9C0
+:103160004FB3B9CB89D75C72D429A3501633B021A1
+:103170002D040F4B9C638E131BDE13796F9EF34F50
+:10318000AD81047AF0E720764C3A440169C1CA4027
+:103190000000568E9F2E9BFE38A06361E6E094BC33
+:1031A000E036975B214421977D1EC97CA1F76C779F
+:1031B000EA5D78DFE8F6189E5CA53C23C4AF75EAAB
+:1031C00017600DA3F2946267672485B27FA29F15F2
+:1031D0001426FA2744BB202C60806A292D29B702C7
+:1031E000C87B9B57B3B4D75478E0545FBB5A3D3586
+:1031F00061457F086960924153510D3D7B9BBCC581
+:10320000EA430E283B22871D776978F8A0BA732419
+:10321000E30EA9FA1DB3380B1490114AF327E3BD4E
+:10322000ED5D3E0F6957091FFF89A7845BDC35FB05
+:103230007A9A5DB26EF11D2821F2D09EECADD723B3
+:1032400060CEC705BE45FA764FB0CB96C9A8978623
+:10325000D3A0CDFEBFA517BD502F1ABB7E32735031
+:10326000C3F39C87E5BDBE8B27C7DCAE2E321DC9DC
+:10327000A3B7A90D1F5FA46C7A23118F1CD64EC172
+:1032800039AA44CD681617DDA736FF5C7B23EC9D79
+:1032900007034C73677BA33D8DF487B65EE7EC6E46
+:1032A000D24D046D32445E2DC9B8CFEBC04FFB9DAB
+:1032B000674305D4C0319F1906F0ADEC32449E45FA
+:1032C0001D07967DFC7070934664F9AD33FA37A004
+:1032D000D1DEEDD88F18A91479B96E19F925963D6C
+:1032E000B334C2C461C5CCFBFB8CE513AC6D48F1B3
+:1032F000AF7132BF654DE3BF56E170547F63B213C7
+:10330000653EEFD8DB11CD3A310E4A1ABF05CC40ED
+:10331000CE952D96C6803E16551172AE61C15C18D1
+:10332000C95B1C4680BB3327FB1BE42AC0AA497635
+:10333000451F00CE2FE9AB239C7981904E0066E8B3
+:10334000B04B57F90161257C7917313B1153E4F5F6
+:103350008DFC1C7AD8505C6C7F52EBC9C68EE0B1F4
+:10336000A1FF9F1C0CAD74ABC517EA6282CA37E29D
+:10337000E4054348C6A6A089799BF36AFFE3EB2CDA
+:103380001E0E7AFE1D5AFB629D22D3EFE38702BD1B
+:10339000D9264C3D7D1FE783BF52A902003B9AE22C
+:1033A000DFF5514ABA4441EED52517A73B60B4D4A6
+:1033B000DD7E984FEC1C5079B683CDFF4C5EF4EA6D
+:1033C000B01898C755ECFA2923C79A883CE994E3CA
+:1033D000DDEEF9ADCA1DBFEBC047323B92E105E11E
+:1033E000085FFE6A8786AB5E711CFF8F420709BFCC
+:1033F000EA110CAEE882C6DE5C1CB72FD52D65AF96
+:10340000A635AC6C0951D94D9E1E7BF657E725AA0F
+:10341000AC80CBC27588C8FC73E7C1881F7B72DDA6
+:10342000DEA6A3E0EEAA07AB11F670A911C0FA5E02
+:10343000335D6932829CE4DFD78117FF05866537EB
+:103440004B4DD4CD3745EEE91BF06C50864C5FE216
+:103450000120D96351E494A102C482F1689A317FBA
+:1034600069BF942F7C738CE1C6906DA2C1F2BFCC72
+:10347000054A9CDE414EA08E895D3104E146C221A1
+:10348000377E2E0A61EC9543534CFD72AC61AB3E26
+:103490005F462AF0D24A2C80816B8A6CC6CF1021FD
+:1034A000CB0DDD4E51C1A782C99206E3E340502007
+:1034B0004AA7DC2EB05CFD365CCF016C0183F02E98
+:1034C0000677AFA534F0E5188FA9E8903DC694A61D
+:1034D000A3C41209FD4503D9BDA1319BAEABBDF01C
+:1034E000ED6FCBAD5E6E3FC50075E1BD14D836768D
+:1034F0004797CD3FC1880D87F6AB31DE2FFBC98ED4
+:103500007FD80A6213E0F3AAD9AA14A12E57301764
+:103510003676BB2067C93CA73B82D825EC8EF47871
+:103520008FA1300A563ADCC4448204A395D2150414
+:10353000C8B5EA673A7AE7FA12982F916A43A6DA91
+:103540001DFAB7A37E6FEF247606EBF4CE153FAFDE
+:1035500042A53A484758942F737DE280BC8D13D61C
+:10356000113897F11F1C2B96302CFFE59540587FA2
+:10357000D4BA1FEA3A33D2EE52CEC0534D44F8F4D7
+:10358000DFE5C384BE178D63201540FFC7395E5D3C
+:10359000926352BC916D8AB846199BE3F5C78C1BA8
+:1035A000971B98692FC26289EF29F55EBD54D53A01
+:1035B00039D2DE5679CCFBE6700E6CDB47754233B0
+:1035C000D6FB92583415389BF731C593A600F09A74
+:1035D00014F53226C2CE4FFA9E2526459E4134D29E
+:1035E00033B25F5D0F191E33A989B5130614EAE6DD
+:1035F000B673E7720382D62A039C3CBB53D7CDE94E
+:10360000BCBA931F92EAE2260E802C8828496A7180
+:10361000F89CE4D9394B30FD87BABB99B7ABB1F808
+:10362000923BEB4DB779B8669CF571C83F2D9EE192
+:103630009A732CA15C0719D2DF9156454759863EF3
+:1036400022747F30A46A2731CF773EF456467CD06F
+:10365000611B6921A47767244185C854D0E707CB53
+:10366000F2B8E0832C8BE966D9280755E2FEE7F330
+:103670006E7AA18EE83150A5491D14EDC16338ACB6
+:103680000F60FE932577BB4FBBE0699CA13D0431E1
+:10369000745CFDD4DADCCC04674C32B9DF3E28A878
+:1036A0000EA10F28F2CC252B310B2911FAD4C19F82
+:1036B000EF6363E89FBB44DB92B8AD1E1A37A028C6
+:1036C000FB7EDDE80D060CDA03BE3B0CCD0D2E486B
+:1036D000E882AD968A029FAD195A07B656FA32783B
+:1036E00044589092AE3C3DC017C80AD889407B4BE5
+:1036F000471179CBAF815E411C64D1B4FFEE3F8DA1
+:10370000A5C61FF661EA072FF2AEF4EF3FA4617F72
+:103710003C214D4D1DEB44116452C78E050442D02F
+:1037200089F1356F53498AFE0D9D61C679689863AA
+:1037300036EF245C4488505F2E9D66A1ED45A23390
+:10374000594F34A54FE72D7D014134FCAB5FFD940B
+:1037500016B09FC9E3EF8F254EBE837CC70BC8947C
+:10376000EDD9F5DF1727DC0666D4AC81D98B6F4A1B
+:1037700055959741FA7DFB72C22D860228959EE7EA
+:10378000195A5DC7D8AD09A05481AB80C4EC96EA44
+:10379000AA48D776C92053BD2EF491F3644008A3FC
+:1037A0004B62CFB3A4A56A523FF1E007EDC9F47BA9
+:1037B0001A8CA4C9E45FC4F1B479CCE123E0FF1E04
+:1037C000AEEA3FE4838A807C7D712C8C9C14164584
+:1037D0001B2AF2F9A4711F55634EAA5A4DEDE85108
+:1037E000B786AB7A47BA1D79C806E42AC054790176
+:1037F000FFB07E98AC3AF1009B754727F1928BEAB7
+:10380000E75A22ECB1ECC999E9759EFD1D5A06CA2A
+:10381000D2B0CE35F32AE4FA074F66D9AA47072C6F
+:103820001ED0D8752AAD63C9BC08318BC9C978AA26
+:10383000D4DB842BE1614DF8D8B76A10BE096BF573
+:10384000438DF789D6E5453470120BDB6970858DA1
+:103850007E89737F67F007A64C36920373FBFF4B9C
+:10386000DF54B44ACDB4D298FDF7283F555CF75EDB
+:103870009C7C29CC849A4AFE336FDD1D98FB94FC16
+:10388000E18D2F07A9457AEBF645E1DA0784DF22BF
+:10389000C6813CD959690D4D65811317ECCAC38B9C
+:1038A000D879716378FB7157688EFE900375BC8878
+:1038B000436E813F533A4C49C29DC5D6580C355191
+:1038C0008BBC144746B0E66A504F10F209A73BD7AD
+:1038D000BBD141ECD9F1B86AD9267C7679690A1452
+:1038E000146EDADBF5E7F7D5B6C36BE4483CBA6291
+:1038F0000ACE719411EE23A1DE804C9AB1D94B7F90
+:103900009FED4F4353EE07EDF1A14D16DE146DC14F
+:10391000CEEB6E8AB102C09D4584855E43973CE242
+:103920008429716B40E0CBC6EA01F2A5B81DEDE534
+:103930009065646F65B086BED8D78A307BD5447CED
+:103940002A488F38211EE284BCE7C331D46D47CFAB
+:10395000850A343578BCC899FA4C2D2E33C617CB5E
+:10396000C53AD7B6BCD934B2125F37FDA1C61689A5
+:103970008085B4D597B8520FC0DDAB954115F8F6E8
+:10398000507CE93EDF636CB7FB03277F9046318BA9
+:1039900049BD4DD421C854BDC472506A74FF781D0E
+:1039A000AEF849C1CDF2A7D8443CD3E03554A1903C
+:1039B0002034655B642BC9523AB5EA52E9D2CE96FF
+:1039C0008FA511C6F82BF677F8D51B3B70660F73E1
+:1039D00066B76CCC026E810857D701ED300778F1DD
+:1039E000D654650E3A396091B6EE0FB22DC9B8675C
+:1039F000534DD53A58EF93E20154802FA0DEE5C62F
+:103A0000AA8838645FE85836FA3F4A1A01E3BC7D59
+:103A10006924B690E4C5B26AD5700D4892AC5F7661
+:103A20005FD43A0F3F35678F921801CF36373E7912
+:103A30003A632BEA1A76691A8DBEAD20616844118B
+:103A40000A04104EBD85064382CED2F3EC4DC18AE6
+:103A5000C2FEAE4E3EBF37CF2854F2EC9013920711
+:103A6000D17A46D25F6D73503DD2BB2D30430A539D
+:103A7000113A2EED55D3C875A63FB3D68491D8D947
+:103A800011DBFA31F2D0E9C89481B518595E4EAF16
+:103A9000B7BC8A81F1307A8CA76CE8F87F72473422
+:103AA000D92E05A763295BD9F7AAE7C79060DCD9AF
+:103AB0009794C604B250DAC677FF35FCD01E6C412D
+:103AC000A0F1DF05AC6C66C42C753659E9C25E3DC9
+:103AD0004CA5F04D53ABA49C351BBDE869914AFB46
+:103AE000C18631B7669B459BDACB37182745B7911E
+:103AF000FCA1B5AA6881123B84308F08639902EF5C
+:103B00006B369F575ED485F72E4D26141F3574EB08
+:103B1000EE9810ADB758BE72FCD0AE957AE3A528EA
+:103B20005FD55263E3E6269E566854D0DB5FDE1F06
+:103B3000AAF0AA61D663B1AB76A5B8FDA463627999
+:103B40004868DB28DA893E1855731A63435ED05102
+:103B50002B3DE78BA96B8E93EC57C7FE13300C17E8
+:103B60005B2EFDCE4D365E4F289DD15FB3A7F30F80
+:103B7000F1E6B83A68A2C5A423725785969FF33C34
+:103B80006E216282C98342F87757814859977BA09A
+:103B9000346378DF26E9718277CC337EBA332F55D0
+:103BA00099F956E6D017BF89E5CB628F184105D049
+:103BB000B587CEF977EEEEB131A2D279A71C972363
+:103BC0005664FECFE78B81808DE20F62E3477C175E
+:103BD0007B3A2A79E67A93279158F82C437B3FE287
+:103BE000267B0B4B6B2185B5F6F2896219700D8926
+:103BF000ED28DD1FC2CD88BA940F09C4E89084D99E
+:103C000058B3B13E73F50BB81CC150CE8E6C89FA17
+:103C10005CCE93FA5F787866DFA2B24909F0C36E92
+:103C2000F9A8C2792F02AC020D198AF9518861C92D
+:103C3000D000802391E3E98DBF1950C8C551248C71
+:103C400042426B82CA0879AEAF8F2B4FA46C6BC215
+:103C5000192C16D777BDCCA3B1C54A5BD3A3D2A884
+:103C60005F70AFD21E45F14A0F74A8FE9480D7084A
+:103C70002958C12215A49A5BDDAF12052D8BD0D532
+:103C8000B3D8898B2BCD16714AC9D86A64CD3762F7
+:103C9000D42E292102C1A481BACBEE904C792BA558
+:103CA00058B4E8E244F2E3BD98BAFC11D44D962131
+:103CB000B45E2784D49A223D4AB20D08F715A3FCBE
+:103CC0006A47974B0184F83A11829152167A79A685
+:103CD00085FC259FBF80CBAACCBB86610121D5D3B3
+:103CE0008BD7A2E08967D1F49817DC27933CA24CCC
+:103CF0002D4AC6E0E1E5887496D8FB0EF42F8B6B55
+:103D0000FABDC16FCE9E4AB46B72459F8FC1E50369
+:103D100067AEFC7158377E24928D2FBF8110B98B0E
+:103D20007AFFA1500244277236AD6FF21942654CFA
+:103D30000298B0E405A03F2EAD61AA49F1C3FCEDA5
+:103D4000D5E129DF1ABD350761E3ACEF7F16939803
+:103D50004264E53E58A9A2E1CC7D2471D8A4AD15FA
+:103D60005EA08606BC3D03B0B18A14F896905BF263
+:103D7000889EFD685AC7C6CE80E44E750253CEF0C9
+:103D80007B4B737B68B7B7FE56DDF036134FC39B92
+:103D90005EB7F3ECE5B972497341BCD2D01B034E58
+:103DA000A0CCB06F858E7C4067C364AD51EDBB067F
+:103DB000D27F274AB051A2D40CC682F0C6A973B6EE
+:103DC00093616733F55B344FF17431A294CAA477E1
+:103DD000CDFD8DD36ED79FCB4C621FF7C9DEC85B7C
+:103DE0004096088A44560E297F6CFD4A4B0967F1BC
+:103DF00075BA03394BC56B828B211FEDD2E307E007
+:103E000032DA8CDE01084CCBA593D5CFF46C9F57EA
+:103E1000FC779D84F4BE45AE65351FC15F236665A2
+:103E2000D0AEC3AED84A215C528B124CB0A1C72D84
+:103E3000EE7A814C9BF3E11B60CC20FC2BDA2CD476
+:103E4000D3A518B0B54709962A207443998D66F416
+:103E5000579472932F65D002A787C0E2F7FC497987
+:103E60003EBC90079D4BCC241690BFA1064713651E
+:103E700055EE8115F710CEBF7FC25006870F160B87
+:103E8000E35E614251041F6BB6C8EBE5952E30D35B
+:103E900037FA8217FC0C8B1CB6C5C7CBA8251DE7CB
+:103EA00004451E42C2CD320665D89B12385734B83D
+:103EB000E4E29658E0CC87C4A063091FB00A761CE0
+:103EC000F82957004F07D550CDC6A421310BB6E1D4
+:103ED000DA10CDCB54B8F1856A1E5DBAEB0D9C812A
+:103EE0005715A11051337D892C28A1683C0FA77E5E
+:103EF000FB76E1CE2270FEA9DD335235373D61DE1F
+:103F000081BD5FCE1A2A24AF697D8A5E979D0D76AA
+:103F1000C14B90D04AC71384559CD4BDC2B1386EF2
+:103F2000A5BB5905DB07DCF4C271C055F4A0B3563C
+:103F3000DE879A5DD5E0B52C89EC43BB69E2AAF631
+:103F4000F9046C531CBCD4D7F36A3D370B12B68806
+:103F50004707413090AB88CDA1C9AF194D41272EFD
+:103F60006A59B6B11919692B83EB6F6E818C2B6D71
+:103F7000545CCAA21B43690F72548C9CEF9A334B5A
+:103F80002A6B922648801E9E447CAD49F538C1ECD0
+:103F900018EF9091E33CEA39531C0F0281107F60C7
+:103FA000838DB143BC1ABEEDA51B0AE20309D68579
+:103FB000CCE4988994EDB354D1E192D12BDD27EA7A
+:103FC000BD767E083A5D3661F6410CA094D3B0A16F
+:103FD0002FD1D39CE31CC0A94710EDF8D4063D0EA9
+:103FE00038404C016ED117FB428B977BFA9291F1CE
+:103FF000FF8A73B5585ADA10E2CF8E6D8CFF897A3A
+:104000001055CB802F9D3083A3B2241A8946A3CAB2
+:10401000035602AB290E65CA73037937D03093710A
+:10402000F3D3DDA5AF2DC9A15630FE7BD81D1D5899
+:10403000CB037FAFAC2EA2466BAE05E27A4952E5C8
+:1040400025F4B17A40E81C6782425E9DE627940B16
+:10405000EE0643C38F19164C8857F83B46364E4040
+:104060003889A952AED8F3B85E3411B325838F20B6
+:10407000DF17341C998DB63CB2EC8CF73F47E9DD75
+:10408000A2C260CB801D732B049E32504DB94DD01F
+:10409000C04F02CB7FE1A776DDB63FBCCDF92EB98C
+:1040A00082127EAD07B5D29D73B8E14973840722B1
+:1040B000808699706EF4F71E4AE3F914382A9C98AA
+:1040C000C489EBF545FCFC7FC69A18C23ECC787DCE
+:1040D0003E702947EB1E0A526642B73A57530E9D6F
+:1040E0006F063CC00A795C5BC04234109DB9B4963F
+:1040F0007F5C89DA1308173FBC0484FE802C28D526
+:104100008A511E5C530DAC4333B083CBED23B7EF24
+:1041100061EDC889E897872C741D40AC6BF7330BB1
+:104120008D6219B26FBD33EA6109A0782269D49516
+:104130009969E3FD70B8F7628E974F8B0E72B118D4
+:104140008A3D586E9B30030799D8BACC3ECC3B864B
+:10415000649F70C85736F6B41CFFBE3E99ABF5B0ED
+:10416000F399449BF025D10C0C019F950E9E00AB5A
+:10417000C585CEFF3395C66C4A52D52BCDDAE737CD
+:104180002565D5645D659945C386AE316DD69C4085
+:104190007F2FEF7FAA2EC1814E0524977EDE781BEC
+:1041A000041A647BE2CFA64525A80F6D30B1132415
+:1041B0001CEACF6DB40B473A7A11957294C68619F2
+:1041C0004DD67D8BBBDC7B49EFF5F619682790D681
+:1041D0000AC47634CE968C4023FF4A548DF4E5F021
+:1041E0006756412911C86BA7113414877CF38E914F
+:1041F0009B462A2C8007913F428B31F7DDBC2893E8
+:10420000A7915FF0257D51182AC477FB507002F604
+:104210004A11433B067F61B8922A1278B477187C22
+:104220007EF7FFED87CD5EC9E5476F4BC839BA3CD5
+:1042300040C3B16BC353BA056ED175774D39932521
+:10424000D99FAD56902D0DEBF3601B903D27239E1B
+:104250002D66BF075A54C921B3F9E0161621C73B92
+:104260008BB1B5C8127741F53209AA2855C3531747
+:10427000EE85AAF1582330A07A101874604DC292CE
+:104280000950EC2310732F2064B41E965E2AD30DC0
+:10429000D2A3121E7E201926458387FB0177890D44
+:1042A000E9327A9315D367812271ED8660548537A0
+:1042B0002E28D6E0100C2861E6A83E84E508F0F729
+:1042C000A299E9CBB39949E568DE700B7C5CFCD31D
+:1042D00085537CFDFBF4A458199AF308456044D734
+:1042E000250BA7D98FD71B69860BC29538F869743F
+:1042F000FFEBEAA39D1CF03EB81A76F1F48D8F6AAD
+:1043000047AC907642D15B108F0A86E3AAD360381F
+:10431000720EAB78D72DCB0364411D1079080711BD
+:1043200099A351BFF5C8B4A57C17BF2026D26DD87C
+:104330007FB015FE0BDF66267EE28AA9B83D7E2699
+:10434000CD243F975DC9144235E1AA2ACD42FDB67E
+:10435000B888DEBD87D2ACD265F5594FD9B99E2950
+:104360005244ED375799BEAD4D41BDE0246D8021DB
+:104370001E0B479D165BFC3BF1438D2350342EAD45
+:10438000385C1D3E496FF787EA398C736198F5AF49
+:1043900080F81217E245465697C953265F550B170A
+:1043A00065286F12C2554D5FFD6C7688E9999FA90B
+:1043B000BF6E15128729ECBAE39FB3A842CC81984F
+:1043C00068BC3E18B1152AE76CE81FF89D98512E7D
+:1043D00068C2ED85DE5D6FE2BA4BC1AFE7DE548C9B
+:1043E000063D1B64734860DA9FFB5E89F27C3503EF
+:1043F000FDCB1EEDCC69ABEFBA0C5DB2F40A691BC4
+:10440000E03709856BF7216469D767600FB5798A52
+:10441000C0556454A8BE7135AC5F1A0EF06AC32B48
+:104420001187D711EB406A9C920F5EF8C93552E5AF
+:1044300053C7AEE8001ED0950E40AFEC389B0592F6
+:104440007788C02657EFB5AB2E6649F5EF99416DD9
+:1044500089A756AF4B77511416EE02740092C762CB
+:1044600063732E054448285744B53B838598E5C3BC
+:10447000FD7E8A110B85956B35F7B49267063C0F6C
+:10448000E7C08E92DE1481CC725320EA82FC835EF8
+:10449000C522E6FC68DAD70A2A6ED9F153107CD619
+:1044A0003B12DC4C2636CAB9F9286FCD60380F00B4
+:1044B000DD50554D73DD352047508586E1B92173B8
+:1044C0005ADAE5B6001261CF47B97809B4915AB803
+:1044D000F05D479B445C4A2D5D3A1BC78F7548438E
+:1044E0008E325A8F0DAC2B556FDFBF5EB14EB4C10B
+:1044F00082C91E0DB2D61350F72EBFD39E616148FC
+:10450000ECEC84DFB141A20578434CB2F6EF0BF836
+:104510009DA05D867F4949A07CB3F493B690CDD031
+:10452000B3379751EAC8D505195A57E1CECFEC44B5
+:1045300064C2AE798E899A75C99DA865C4A767ECD7
+:10454000A30503B754A5CEF5BF9A7C92B89BA5EB03
+:10455000E487FCCCA2ACE118C8A5C63DBCCC7CA1CC
+:1045600058EE4053418DA2FD5056146C7D5F4CD0E7
+:10457000CA386D6808A9F7A346729BEAA1CF978E47
+:1045800097D6E7C6AD003E3556C31296BB3030CC49
+:10459000BB2F194DA83DD713EFFEBB278B653F8E70
+:1045A000AE5B44E1DE0F1E251C981D2EA2AEB8495D
+:1045B000DD12D18A1537E70FF209E90AB04ECDBFF7
+:1045C000C42D7923A9E0E4D13542C920ADF0767D30
+:1045D00041660CBA721040BF7F916A15956F44FB1B
+:1045E0005BBFC7F9C00039419E6D6C8DF4C4BD89B5
+:1045F0002D162FF3C99613F5CF0F6BF2C080CF1D88
+:1046000057AAA2BF8C1701B4528FD4E0A46EDD2745
+:10461000F1A024C2FA40198DAE2536459FAAD54E89
+:104620004E15F89886D67750CD326AAF1FA02FD39B
+:10463000F21DEFB399A23DF22741516B2E2C19E7E1
+:10464000F2210D62579CC97B6992D77FE3376DF7E2
+:10465000FDB53B64C257FFF8014528EC1130B6E5C3
+:10466000394C61B47C272586E2422BBA26A67AFF14
+:10467000CB1039881C3C4A3267D7728848396E8B18
+:104680007A108BC66D6BB4115965EA961A276AB712
+:10469000127BFFDA79BE2AA299D4C95D71F74195E0
+:1046A000139EFACDDC8A7FFCD7A8304D1FBFA260D5
+:1046B000D03C25643B2A46FDB0CB5E3510D7C50201
+:1046C0008E563284ECABC03E2461599184D7574357
+:1046D0001E17CAF489C73E2F081BC770E70975BDAE
+:1046E0008B3A5616BC7E7D73FF23BE5550D0844F47
+:1046F000B8242EF262BBDB095263CFB81AF5A81CAE
+:104700007E119F997F0032BA4651B9BD32EAA46941
+:104710007EE1FE1CA9691185C5B14CA104EA8DAAF0
+:104720005C76341B01D5715C8D94BE377E677ECC80
+:10473000A70B8098756C8BEFA11C121C3DDB4DA95B
+:10474000B1E6B438701DBA95838298F84FCAF9A8BB
+:104750004A26D92E574DDC3C157F151D954A407AC7
+:1047600020DA001842F202B8D1B74BE5852E84EE6C
+:104770008F04947C75CADC8C7CF8D9A3CC2BEEB169
+:1047800045021C75901099A3E93C7990FE68D7FA10
+:104790008E870C7E0ADCFA0A8E2AEAED33FB85FD51
+:1047A000928543DE4665794A4F2C0D4A5BB6CA15A1
+:1047B000D3002876FD7F52AD6C9B7218EA5778D8EB
+:1047C000211B49E656C73FE56BCADD80818DA24EAD
+:1047D000B081E96D4383158ACD668100D7557A1C77
+:1047E0001EEB3F7F738ABE06EB505497C084B0F136
+:1047F0005D3DB7E5AD15365D1F1734BA4D54AD5369
+:10480000BB6241752061251A639D4450F7BE0BFEC3
+:104810004DA5D9854837D4C626010727FC3576082B
+:104820003BFE904CD6DB69597630396C0F4293448D
+:10483000BA9AF459DDCED6315CD8378856A5F82F10
+:104840003478904472F776B86AB6CD372D1B5990FC
+:104850008CEAD65A603C3F4461FB19B5131EB02464
+:10486000F43418A2E3CF7251EF5C533BA6AE53323F
+:10487000FFD5260E0281B79D8F0C260A6A1778474E
+:10488000C5B3B38E5682E4510BC1A37F3437F3C254
+:104890001C5523DD776E458CC974AAD8896CDADF84
+:1048A0000FE8C10228F8DCF6F83696467701238037
+:1048B00040A007FF80FC9D2AA70E7A7BF45C3A2279
+:1048C000575FF8BDB06A201BEE56E106205ADB2088
+:1048D0008A2E1F19FC7EB0AD72B42AE796140A2600
+:1048E0009D69DDCC7EF5DAD850963060FD0A9EB920
+:1048F0008578EEF8AEBB6EEF769063F7DA491DEE81
+:1049000003616618031CAAF394F6A437EB67C1375A
+:10491000B3D53270F1DCEFC167AE11EA6EC979F739
+:104920004F440D4FF811CD14DF044CABCEF21CF404
+:10493000B6178AFA2D67BD4F260E839F6F9F0AE92F
+:104940002145E77DE0266D6FC1EE4DE4E9694DE05C
+:10495000E1166CB2F2B3EC5F47FB4B366436FF7482
+:1049600085883CC215C598C00F490731DC50CB740F
+:10497000422F478F1A2BD927C70F80A02D2DBE3766
+:10498000D16C0A12A5A13630ED3F7D29C93DC36324
+:10499000CF4D309C465E7312B4B741F3C092CA78D3
+:1049A000B5ADB8C4E9289131A0CC6FA277534917AF
+:1049B000609B9C4D7EF44C6E314EEF81872F87A318
+:1049C0005ABCFF325C59A697DA4B3EB5CB7BB09010
+:1049D000B3DA5344D623183A58F8CFD9610B7F2D58
+:1049E0005358A13DC9581B01117896B401D602D97C
+:1049F000730EC796DF3F948138F93085AA03A2F081
+:104A000066E83F3709967937C1DDF9B2ABD0A666C3
+:104A1000A299C32CD4DA72392C025A3D059A572533
+:104A2000C721A10CB50BCA85C42FB8295F9011D33B
+:104A3000832005AD2271ED910DDC24A603A5E8735A
+:104A4000317760DBB7826C1295ED3265FBBD7DA3DB
+:104A50009D4064B292A9C2BA81B4070E2E082A2CD6
+:104A6000A8A0BC9F757FBE63F90D32D35CD77E18BA
+:104A7000BED9474815A508F775CD2FC99477DEC96B
+:104A8000658B66D3A543C3BC1FAC83FA9B4E5414FD
+:104A90004852F6411428555C8C9710E7BADD297806
+:104AA000E314EEDD9302706F056F77BD4CF5A93509
+:104AB0002D06EE216E86B35AB2941EB4FE4C3FAE64
+:104AC000824D74A4825781C1B4776387DA1D1FEECB
+:104AD0002711D5B969BECC10B41AD692F3DD73682C
+:104AE000BC5CF084F469056D5DE895402BAE017601
+:104AF0008F35BDE8CDC93067BBCB3B86D4EE93EC98
+:104B000087E0D51C83D9A9F662BB9CAC7ADA32590E
+:104B1000A82B0C8F1455C144174BE08D52C1E022D5
+:104B2000606AEEA6FBCFA02C500DC16D5ED71300BE
+:104B3000DA5A78914F29F922EFC98BCED35E075903
+:104B400002160B90B32C1D6D08F87EC7F71F4C633F
+:104B5000BC9E06AF9B69E793705927E79B0619A88F
+:104B600062D44FC3968BF8C05B6CD36DE087F95865
+:104B70006A14ACEB03A8B8797E2CFAF74658503784
+:104B80009E9E3FB63661F1DC60485813AF2180EB42
+:104B9000A2BA21FDEC7EAA0320D8325E5EB911B420
+:104BA0009C8FEDC163DD4150AC034CB3F68B41E10A
+:104BB0008D2FB84A420A0F6ECE2679095592984138
+:104BC0004368E19191C6AA36A67C1259F3296298EE
+:104BD000A8616DF08F6A1340A37AC2FA18F75D0DD1
+:104BE000CEC975700E443C5F33F7DE542424532C39
+:104BF000C7BC2477973FA236ABC6459EFBD36BEF6D
+:104C0000AA53F415DCA22637F179E978ECEE450FCA
+:104C1000BAF02FBF8DC003EED749D8527EF0A7D689
+:104C20009B5A39A4B0391B3355B9682B143A959E59
+:104C300056A22EA764B5A2BB2FA6224F2271A06C4C
+:104C40009169365FC864A6C57C6B516F686B9BED3C
+:104C50004D76535221FADD4FDA52C512CFBA808C0D
+:104C6000CDEA45144F576396FA02AFB511E7317E8E
+:104C7000E762F062230651B329DC5AE8C25A37C70B
+:104C80009AE87D6ED1F1E96551713D381A7ABDD44B
+:104C9000E9792F28DE377E2B98118B17775A5451DC
+:104CA000422519AA6B1199E0139F4F569FD38D4847
+:104CB00015F1CB4643D702C1B4696BBB643A758228
+:104CC0006B7AE484B931F4A2977B90403C75F2464C
+:104CD0007D2A39F9CC17DD8ECD771FD2BC08E414BC
+:104CE000CF2D84753E96411CC0E718118A04EB5005
+:104CF0004B35B08CB885CBFE4AA1F11ECC1B0DA361
+:104D0000A17B342E78764A189776499346B331ECD6
+:104D1000960414D562488A342A840BEFD56C568ADF
+:104D20009006BC8F0059FBF21678331EA1FF63BCBE
+:104D3000A613B0215AEC2AD4073DC8584E236BA8BD
+:104D400009EB63EDC8C0C5F5E2EDED47C76EDCBB0E
+:104D5000FDFDF62BA53164B48993932E91E0708804
+:104D60007B90C07E4D560861756C59F8EA6029D871
+:104D70001761934DFE8C6ED235AB0D6DC9EBF4DE31
+:104D80004FCC7D9564B95A66C22FF0737D6A6DC9A8
+:104D9000A839DD51257D61466BD94AEE3A5735E495
+:104DA00028DE4BC2B25D3262205907A805104B6D58
+:104DB00010A2FAB1540DC124499DAEB8FDE2264BB4
+:104DC000F4780D755A39FE3AFECB684AD4EC26DFEA
+:104DD000E5B82F9F15DEFA33084AA0298A50B56F2F
+:104DE000BDF0D07A1C272F5B37A4BEFF28BCD008AB
+:104DF0004F9B3725B997106DB010030E6A3406A784
+:104E00009AA3A85DBDA03C189327348BB4D4EBAD16
+:104E1000E9FF794287E1420BADEF03205B74A28387
+:104E2000FDB9685C334770E33DD6614B40EEC9E1A4
+:104E3000FC2B2564A2F476AE69B5CFA642A9B1B425
+:104E40002A21A563FC227B780167D0B16DA55D05A1
+:104E50006F06CA9DA79FA65C3F4A598927FEED7041
+:104E600000B73B51E12D41D59960B0478D43974C38
+:104E700067EA4EF13E803E5AE9E6FFBD04AFF2C755
+:104E8000B522E928BDED4F44EDF28B49C3595606D2
+:104E90000711F338E39949D66FF8E2E3B8A6AD906D
+:104EA00067BA293780E92319E1B02047B1DC9AF1CC
+:104EB000CDED488F235D96431CEB299BB1FAA933B6
+:104EC000DA71B305AECD4D235E1D21189C07188401
+:104ED00004890C80A3BC05EDA3ED591BF7486E1D9A
+:104EE0008A385EDF0AEB04CFC6FEB9B5CF347A004C
+:104EF00043BC06DEEB2AC0B7CBC9C4CA71B2FE04FC
+:104F00003E1BA63F72FA2432F2C723A43AAA9DA7F9
+:104F100070504FC64524136E0DC224165DD8C0B71D
+:104F200091887E25B53802CB61CBB8AB7022F829C9
+:104F3000DB56A897876D9EF9DC9F5C5072D3BD1637
+:104F40004D5EBD9ED6EE27F3091DB2FD59DC826A87
+:104F5000431005653DC60A2D2802283F5A756DB7D6
+:104F6000FC4972B249DFCE17AE32170891EDF263F9
+:104F700030342CF6F118F6AC2899C4605E190E0393
+:104F8000021DDF0AC953BF7DD0F1E357813CD381B5
+:104F90003C4056A94144286C62F41ADA0AE31ABC70
+:104FA000FD98B6F53160BC48881BDED05057CF0B5A
+:104FB000F9FFDC44A68D61FDDAF0CF982ED4487D50
+:104FC00094523CAD278C83D60F4E20625AE72A4775
+:104FD0005FCB1662606DBAE8B3AA74054FEC9C3DD6
+:104FE000203058A224A3C3C2EEF341235B4D4551A8
+:104FF0005D6EBE2BBDBDD56ECEAB3CA39B3D6C7232
+:105000002B8E29E9BCC984F6825783D3A6DEAA3346
+:10501000D0AF810685B8B6A059A464639A923B7A52
+:105020003C53937E0816F91E70453E3EADA1051B0C
+:10503000638BF1C46415EED9952E43E47D7E3DE388
+:1050400052012E363CF7ECE3850E8CB97F7B6FF373
+:105050008AA62C5B753F51220381B9EECE18ADE4D0
+:10506000D4887899F51F008E74FFD5BCC17AB178C9
+:105070004734B775E7FF9CB381443A8082FE817163
+:105080007A375082B70943586283DD554FB1340CEB
+:105090008AD5476BF0ADD81662EE825666AC6E9339
+:1050A0006EA9099875BB9057B237FD2BF918565267
+:1050B000CB99E40FC8EE69AAC6B0EB72776CDD3508
+:1050C0009ED748207DB43EE22AA8C62A1C63E11977
+:1050D0006842BE3E72D357054BB6F0A726E82FCAEA
+:1050E000227062BB1C477941606FE0A5A87FF6780B
+:1050F000F218767705EA67781A1523FD828C780A0C
+:1051000044648C853585E5720173326144C81F871C
+:1051100088ACE4B6EECB46D1C2E8B770140E6C652D
+:1051200085258AF6E7CE05EAF36FD3F01C9D6A6306
+:1051300046CC1505DBF270F1F74F8C0EF4F42E55CA
+:1051400010D3B99C3E04BD8AE147D86407EA151D17
+:1051500076B3D4FB85F3700006C673A0A794A09223
+:105160005623EB391F31E4F83D4E4889C0314B7965
+:10517000A196662155A25CDB234B650EE78B145D7F
+:10518000C88BDAF9341134DCAFE4D724716D8A703E
+:10519000A582B59EB14C597D77B433991EFA5B292F
+:1051A000642BD378153ED882DD481431493AECFEA1
+:1051B0000928F8754E61DA29F0EAA2B01D60892F3E
+:1051C000BCA49368C20C31323611505EF2A64CA0DA
+:1051D0003C637940833741B51D67B98F1F19E023C0
+:1051E00072DAEBC40C5106A4CB37A21D0456FA4D5B
+:1051F000859EB29A1030DD2D54EF6AB0BC679D8554
+:105200005DADD631377D7D7D7198FA2A1DAB6DB6C7
+:1052100021B9857A93C9727B95F563D842BF81091C
+:10522000BCFBB542E4F2066AF3ADAB6171EDF4D8B4
+:10523000E0AF95D3DC2B7162879D7E6D6483C533AF
+:10524000467F9381DD186A4C28771D31EA96E86421
+:10525000FC1C97BEE37A68BCAC43D5DE1599A7A1C8
+:1052600016A80B762D076F66FE01399B93A1F1649A
+:10527000D9E5AF6C81D852AED50D8275CB9D4EF17C
+:1052800024F3A68F86A77DB44D92979ACEA8FE03ED
+:1052900047F36960145AC524890A6B528C7B0FA5A9
+:1052A000933CE160918E5FAB16F7DB6C90F942079F
+:1052B0001FBD6115414D48007358B4DD99470CC2BC
+:1052C00026C2CA77E0DFD7657BB2401A6C83BC2761
+:1052D000DFD70FC7C3FA4EF1CAF59C5399502AC6BF
+:1052E000D3EB62587CA6051DF18F7A8D403C417747
+:1052F000840E9C007C2E1D51FC4E185B86F1A8C5C7
+:1053000066E9FA347A849016FE9A3B94C0E7C7A205
+:105310002ED0C493B0DE2213E581FC4CAF11782768
+:10532000517105B35802C81D657B71238FE04A9403
+:105330004A48B2D3C6B53ED433192C640AC8B8B5AE
+:105340000B3C936B5CF82948BAB28D0BAB98763462
+:10535000187FBBEAD2DC17E85F3DF664650F90A4C6
+:10536000DC8875AE8860A81ED827E67E5468C8DD44
+:10537000D0A79C108170D7A6039D1575C10642D297
+:1053800019FA6C6366090F7B3916245339368F403E
+:10539000418A631A0B73A58422BF1E5E82BD583CEE
+:1053A0008DB535A4C66347BA291D8AC4E4A542ADAC
+:1053B000B6A57C08ADC10BA0D28596CAEDA3B008F6
+:1053C000B68FAF44F7EB7512C96FC709583A7B79AE
+:1053D0000D5258E4BFF5F96967E06122CC2DF2D98E
+:1053E000F8579972EB93E57B17E18ED5252370D89A
+:1053F0004416615D62518E23FA9E5389FB00CB38BF
+:105400005D700DD65CC74F12868A95A16EAE69603D
+:1054100048CBC7C323A3EA44D89AF3EF1FF8B47864
+:10542000CAB4C523D9B19CE2F6E3DF7221BCDD3CEE
+:10543000C436C713CF20503075D44CD3C2A68E3497
+:1054400064D7DB630620F6CEF9D19C4F2C63F3DFE3
+:1054500035E996211F822322818FA7595FAE6B3DCC
+:1054600008152CC51FB00B6E5307A52E5471B2F64C
+:10547000C5DC16ECB33321300E5DA890731FBC1D44
+:105480004AC5CCA2A4CADC56CE18A04CCDB208F3B3
+:10549000E1101EDDB2BA7510D620DD8BDA78230359
+:1054A00056EB2B39F845305AA7B20230F25F17C1DC
+:1054B000A5504DFF0ABE247A3ED46A67E46799740A
+:1054C0002730D22FF91FA78B50530E8C9F95D7DB17
+:1054D000A76561A26E72A7D2092F84959DA2EDAF38
+:1054E0001061F94E737A4FF8D22AB4481876A2FBAD
+:1054F00065E46E209387C48BF82E5DF8DA5240E0A5
+:10550000BF62E079A20F93B8C16D97EA84534FC987
+:1055100005CF71A4C228C2219BBDB4C0B23ABADD86
+:1055200028F6762BDB82CF13083AC656494A4AEE54
+:10553000D99B6D6104372B1746633076D20903641B
+:10554000BCE53FE001808B2F0EFD61E374AE628FFE
+:10555000B77DFB4530868E354B7343CE1406A0D203
+:10556000F6B33742D77DE556E1CE11323A56E177B0
+:1055700036A8B6CE7F31BEBAED6EDDDC188F94C48E
+:10558000FECC468C038ED82E5E87D826257E63E619
+:105590004FFA6157B5B9BA8A0BD985C66A92B32E4C
+:1055A000BB5E198392542E7486A0DAA6B622DABEA8
+:1055B0002C067BC6827C140E08BAECF53BD77555D9
+:1055C0008707BC71A8AF69B0FF3D3ED67F6E60C350
+:1055D000DA64208673AEF53CCD78DB0A2C81AC21F1
+:1055E000C1EA43015F54DCD2DF0A2A43C506F55401
+:1055F000D3CDCDF589BE9A17E2131F8CBE71BFB112
+:10560000D79A604DBD7C30F323DDF17077A746B2A9
+:1056100052DB7122D97F9219907535253E7E803FED
+:1056200090EF79B2D6484949B9900E66E5952DDAE2
+:10563000F8BD8167BEF40CECE04D697DC6D5748879
+:1056400038FA80242970A26994F47CA3AA85A25B0D
+:10565000D6FC128AD8FEBDBFEDE66338443B7A978C
+:10566000A541F46DA8CD4C08E0DE9293F986E323C2
+:10567000EFFCD6E1E9973F008A43A998D1739221C4
+:10568000FAF618FBBBA5CAF148FEE58F2009E5D064
+:1056900083D196AB47D775C840D4BB87D1E531B22B
+:1056A000DAEB5C531EB4604A74F3FEA438BAE59A90
+:1056B000D8FB548456C82B539E5FA30C21BD2F17D3
+:1056C000F9B4D8971A887BAE0F791750B8D765967A
+:1056D000EA1437C283716FDE917895CD7247FF81EE
+:1056E0006B6781D0F6D7794423B35C6C953932F27D
+:1056F0008F9A9029E90FCEB79FF40B6DA225E8157C
+:105700003C86188AB64BA0B132F0489381FC3852DF
+:10571000CE019308C04CFE7EBFBAB98CD3640DC8CD
+:105720005193F68558FEAC9B3FFF3FE81347FDA61B
+:10573000BBC0244F9F3D42161D56708AD53AD22CCD
+:105740006957661F848B7B1DAA360C702578B6734B
+:10575000D96022A7634DD26BDFA87796EABA5C9531
+:10576000468B589441EB59FC2BA2D557F4F6B894CC
+:1057700079920B26E6EF09C31E7A288ED18B4E73E1
+:10578000A8AA9CB060DBC213ABE94E44C1ADC80807
+:10579000614802827CB8C154C67374A315CFB06649
+:1057A0001FC7C300002FFDADA28809FF1BA72BB7A1
+:1057B000ED64393FA3F863F4EDA8F466C89A7CC0A1
+:1057C0006E5733313B69AEA79F4C8BC92851355476
+:1057D000F007E62A7CD3EBD2F579B09C538633BB35
+:1057E000765848A9AFD70D56189795B7D3D18CE006
+:1057F000329E7F566CC63022D2E215797411CAE40B
+:105800008D3C022F4F7E2118EA75019047CFF3A9F6
+:105810004F8F075C16459B47ADC4460BA743725B91
+:105820009D68136A7BFF0E33F884A62F7DF3071162
+:10583000343BD2A61471AFEEF0CF38C9E3BF7BD4AE
+:105840009723668BA901E8B2BC794BC2AEEAF4D8C3
+:10585000F053BE5B043749FF05920CAC46990A1F12
+:10586000233F0F016F95D0EF6A7B80C3A73B7EC1BA
+:10587000CA5B32A9C21FD46DB4B3358DEADED3053D
+:10588000A990821A76D3D462929BEE5DE18348ACF4
+:1058900026E14D9D166394D2DDACE7273050844954
+:1058A00063C36E386DF7C0CD0B45C3A9043448609F
+:1058B000F65CE04C43C02A1A70A21E2B1D4796D0FE
+:1058C000FB51B23C531C64618B752508D4EEA4E7F0
+:1058D00071EA7FC6B1416B78B1524BF50FC0FD79CB
+:1058E000B2AF1C0138265E9964FC141ADD167E01E5
+:1058F000AE26D337505A79E673839D07D212E6C09D
+:105900008941940E6FD1A17B7665D6649308F766C2
+:10591000E51BC6EB0762A8D529C8922CA6F8702112
+:10592000AECE426B36A6F9C50AD4513A712AAD41C2
+:10593000125900D62B1C08ECAB6049888550593BA6
+:10594000E2D57A34C08ADDF16192895D2CB92059A3
+:1059500026CA7FF4B878293FD95F11602963A6B6BB
+:10596000D3D7889C3E59B66A7C98D94A66629965B5
+:10597000173C3C99660CF8B631FC726AFA0C50DCA4
+:105980005ACAEF990B631B2EB43017454150492278
+:105990004D9EC84A21C4FF502FBDE2066EA7CD7BA5
+:1059A000191BFBF9B5A83D9378C62CA871D3CC5D23
+:1059B000AA3FED457DCA5D23374C58019A815A3084
+:1059C000BA62F50D8C0962353E0447383BA6C23BEE
+:1059D000F41563A3DA19710D84D8906B3AAE0F5C9D
+:1059E000AB85F9D5EBDDA13D67044E739996ACE923
+:1059F0003C4EBB5241234CC7D50B3CC7CAC1094FD3
+:105A00001EDBC7B349421A7560DD6E849FBA29292F
+:105A10001B322E60FD3E6AAB9EB78CA981C01CD1A3
+:105A20005F045BB286A2DA557884F65AB6249FFBEF
+:105A3000FD5774C14A572076063E9C61AA47C4664A
+:105A4000ECE642CE152D8B587CB7D439BB07DEA6C9
+:105A50001FEF2A84777E73E67071F5D19C6EFADFB2
+:105A60002E0F08D5C2A1CD5FC281AA16F3596126B7
+:105A7000A358EC4018E188E5D6EE82B81A53727349
+:105A8000188F7A0CC6143B8216C1717E69AF131F42
+:105A9000E136676E2B8D7E48EBDFD88CD6E0C7F001
+:105AA000375EB5715922681F184E1ED60A0A019733
+:105AB0004F2EBF540C3BCA173DD7569EB003787784
+:105AC0001171F530BC7E57495E228F5D374E51EF24
+:105AD0006BDE1D01C4A983ECAFF170E00AB0C07B9E
+:105AE000DE4D1D2F07726F22314925EDD27A8F5876
+:105AF0000743C4ADB7FF932A279B748E461FAADDC8
+:105B00002CB20EB07D5D7C211F5F1B0800090BE9E4
+:105B1000B986914DBECD3A9E2CF189077C9817CD60
+:105B2000DAF5AE67D5FE6949F3AA9F6922C5BEA71B
+:105B3000E76E43DC2CE5BE69F452309257E17FF406
+:105B40009855F696D1BBE7DA42A9F812875481B28C
+:105B5000E3FAF4BC6D606CF20CDB1C5BD704CB0E7B
+:105B600011400F9C1A9BFB95242A5EA0486552ADFC
+:105B7000E508A8B1EDB19D5EF8BC18EB339E93AC7F
+:105B8000E867065DD2E6AE38685A7936946DF7A4B8
+:105B90009E105832F778E87D6C18EF555E0EF6AF20
+:105BA0006E044DC860F320A851371B2D3F0F2543CD
+:105BB0008EEA7A2B18A0B409D216D16426576755FD
+:105BC000919FE6FA60B81D9A2380FACBD33E94D415
+:105BD00075DC1D2E9E26F4A755FF9C1E6142F7A67C
+:105BE0009725DCD215A212858C95D522046BD42E74
+:105BF000309A76ED468AE78BA4C3AAD1C5D71AB2EC
+:105C0000DD8B90AF1DE60E6287AC57274C870902EB
+:105C1000C931C17B52FE1B6C17A89B0DA274B8340E
+:105C2000CC0E6CBFDEB6265E436099CCE76D199052
+:105C3000139F2EA45448100D00AA812DD17EEFB1E0
+:105C4000F1F0B49D7CA35A8F38915FC1DDBA88070B
+:105C5000FD878F25371B7E6AA151D2F76AACFE1CE7
+:105C6000019EDE8EDCAC2B96160285C541BFB9B015
+:105C7000D5849025B578E66D4AF3B8708A9FD56BC8
+:105C800008E044685F51F6AC4E112C8CA83DCE352F
+:105C9000762A429B9A0E82FC0D5FB58DB4B23EE12E
+:105CA000C74C66FB526BF455F196579867E6ACDF2C
+:105CB0000FA85C48A00F58484D03211A0F81ECD063
+:105CC00065D7557FFFFAB631CB418104BA4D884183
+:105CD00022ED2A6F1DD496C90936E6A4A3206BDDF8
+:105CE000C6F9713A015436E08070099D833821A0CD
+:105CF00058A1BB205694EB0F5262580D86FE0DC87A
+:105D0000EC3D0226D756BE181DA056153747084C45
+:105D1000665F644C6D18673B7A7A4A790E9D3A3318
+:105D20006C90D3B2B9F0BDD97DC7916211FB78F404
+:105D30005C57AC5B81472661DE0BCE470499898AAC
+:105D40004BB5BB98747EB686E63B7BD1BBC2DEAC5E
+:105D500060F2FE924669DD61D82A2CA79A84B6C605
+:105D6000FAE55DD6F9AF735F4F5FF083D84E9BD5F0
+:105D7000A9E63172B939CCC7CE1B84F813AB61A147
+:105D8000CE4D9A6A516ADD5EC9EB59C928A2E19EDF
+:105D9000185E16B91360A024DD48592C73A8573239
+:105DA0006D6320280F078B373B7BFBD53787656DED
+:105DB00058BE729C7C815ED56FE59C0874A9386BD7
+:105DC000003B2D7B6A4C74BD2915CC411FA3D51413
+:105DD000529AE23A7B906ADF238C3333AFA9B4EB5B
+:105DE000E6D73B8849431D0385B3434BB34AE95586
+:105DF0002A741A7B9B201A48601FF5EF1B1ED85788
+:105E00008E9FB70EAC5C0F7E9A1A537AC8DEEDB344
+:105E1000D4036C656F5ACB8F50D7C0BBD8687B5EFC
+:105E20009590F1FBBED696910540124D511D353926
+:105E300095FF31971443C61F64B00F15B82F9C5EB1
+:105E40008D53950CC99B152F4143530C9E007B3EEF
+:105E500040AA72A1023D589A364A6A1F30AA599048
+:105E6000CEDE492753C29110F3568E3DFF7077BFA7
+:105E7000BC343F30FAF2D717555C509937E80354D9
+:105E8000C784867D58135E293B588C84124764581A
+:105E9000DCBCF8AFA0C08ACFD31BD54A9892B166BC
+:105EA000899A672F329D48D014E220E2BAD549ED95
+:105EB00084772F8D6BF85D5D6E0425DDC3ED9C6EE0
+:105EC0000009B471C1B547317E13C054FA1277A1ED
+:105ED000CE9CACA14EAE6FCF312BA95FE497D0968C
+:105EE0000BBE2038C1B1D1A526903496CE2A8A7730
+:105EF0004C91EB508738501862193D2F5F6058DF86
+:105F0000A8FBB84854F6D71874C72153ED7EABD51B
+:105F1000BBD2C319866132BA770FF2B4FC63D609DB
+:105F2000B6FBFA9255380212FDA58FCA12726AF5B5
+:105F3000AD3588A54508C8189785957C3DCBBEA68C
+:105F40002CB79ABC1A06D4E76F3761EBAAC5DEE519
+:105F50002A32CE5677133E186C6031D9508E92CDCE
+:105F60005F70B6DC7C5DF9A111BFD1608B9EF699A4
+:105F70009D7570F7121E15864878A1F87A1BC60F1A
+:105F80002C35003CF103DB04981B103A5B4285730F
+:105F90007F5C46D02772F15067DE33314F7D6EABA8
+:105FA000E62AE01E089E9353FBC38610E733DBAD61
+:105FB00035F680C37E4E3350D2221FD1CFBE631838
+:105FC0001233211970AF6634FAFAE4CB981B88A417
+:105FD00043DD00F1E15B6FCA353CD9A077073AB3E6
+:105FE000958910B7F28CAFC26C820E5CC0483BF250
+:105FF00050593D669E2D705B293DF5640B986E529D
+:106000009C42BBE41AD1427C31B1DE9101A13F6CCC
+:10601000BF1FFFF64024ACFD3D8D1BEA3B0E1987E8
+:10602000C5E13A36209EC3562B148FF29327B86DE4
+:10603000F667964FBCAA9E14078714E8A15F41DA61
+:1060400053985D0FAFDCB1259A3FAF0DD7E3BCABE2
+:10605000A9A62B7C6155AE3F49E41E3BCECBBE16B4
+:10606000B2FC1F1915C1E7C57D8E8CF29D2E6FA95C
+:10607000646B027B77EA3ECF220DE6AFA159A5CE35
+:106080009449A682EC5FC365A0C8577CAD57E26B0C
+:10609000B72241603322B05CA38DC84A342C9E0ADB
+:1060A000B592BC40D73B69CA4838CE5260F8905888
+:1060B0003E3188BD469B3095349D6A91854409895F
+:1060C0007D60B813CFBFDD0B9FAC30F31E38C058D6
+:1060D0005EDCF01546C0C92933606404195CC31A3C
+:1060E000945E73240BB4B7F3B1049AF10879F9C044
+:1060F00081D00BAC760E339F966E838A7830404603
+:10610000FA965F0D21EDFA5FE7AB95E38525CFF2B7
+:10611000E776FB2FCADC4477156DCE7CA8B708B5AF
+:10612000020B55AE969122122AC8F7ED5139DBC009
+:10613000BD8902875342955FF0CBB89725252D4C3A
+:10614000D7988B37C9E91974B2DFADD609A2B2C1AD
+:10615000F4093838186652FA7B627EFB3ED7244336
+:1061600011D79DAA29D5A160CB4139A7F476928198
+:10617000B3CE7D8C0BC32D54595A36D88BF3312AAC
+:106180007CC70BAB8CD608FCD1918738CECE0E0ED7
+:10619000C289D3A975BE12586EB1EA04CAEE843F13
+:1061A00023FB0E0D3C1FCBFE0674B8E952559261DD
+:1061B00022C114ACDFB686026EB6E2E6CF317FD8DC
+:1061C0008772929B65F2FEFDE0250B466FB546B1E6
+:1061D0004038DAC4C986D612DC5A5B0AB33680FC72
+:1061E0007CDD0FB8262F467E63A1C1267559A918FC
+:1061F000DCC956B9489D8B8596D76BE6658231F927
+:10620000ACE2B142F7918586A4F75AE2366EAF97B9
+:10621000DBA3F0D5AC4E912A34DAF15731F0D3CF6D
+:10622000508160FC53C3501D6C5B95B5E72E231F56
+:106230004EC81C7E66B7CCC794463E8AD00A3DF352
+:106240001B836655B1FAA350568C8A43BBA723AB78
+:1062500035EE2BB5B1F4D10F94F55875DED2D57F5C
+:10626000A6EBFB32E35C70DA8DCEA64FE0107D2604
+:1062700010551CCADF0351387E1F3DDC27064CFE3B
+:106280009303B206F3EC0EF3886CAFFE08465A9EF9
+:10629000554FD271C06A5753159377BCB009DD775B
+:1062A0007E36CE46FCDBDE59735D5DBF03807C88A5
+:1062B00038631D23893950B66717CC798601047875
+:1062C00064BC78EA83B3C1C699DEB996BC7CFDE2B2
+:1062D00085A3DBFB8FC9CDD657CE41E0FDB4148139
+:1062E0004AE43EC6604BA0AE2E43811528DF7AC635
+:1062F000A529FF6D65292DAF30EBCE86AE7CFF84DE
+:106300003167C728344F90D791DB97A38C88061C40
+:10631000E290890DD49248BFECD4DBDB1AE737BB9F
+:10632000DEDF556B0696AF94E6A2766C06D6AA44DD
+:10633000189CFABBCF52EF353DE40FDFDBFDBC1CF0
+:106340008F1176F897E891DE9892B5BAABE71F6B9C
+:10635000E4E000AD876C96B830BD9787BB1482CC63
+:10636000DAEB3E241CD416F7D8ADE3E5FBC8C1B385
+:106370003F0E427D0E6D73A6031443A6D5640FD65F
+:106380009B55F05A8055F22F11C479E7D8C143AC20
+:106390006083EA2E83D0373BED909BA46484D8F0D1
+:1063A0004FF9CE4DA429A566085E390F78B05BF091
+:1063B000A48D5F3EE4DC82E14A017AD447BA8427A7
+:1063C000D1002294721C371CFE6D0022559C09518D
+:1063D000C116CA1F6C856B5CC678211F4597EDB14D
+:1063E000DFD7EC438A483997877DCBF3F624E6E183
+:1063F000FBA5A2428897474CAC94C4328666997D2F
+:106400002E41FBDE773C7A4F967010A66FD0F7E2F4
+:10641000D51E7585BAEDACB0598B421C0E21B61D48
+:106420004BD6EEA7E744946766F481190F4F998421
+:1064300015F1C693419D818A4CCD6A3E45922C460A
+:10644000CB4D552919F89EB0D667DBC7A96F615EA1
+:10645000A230DCE558B34871D4CF2F2F7FCD531D28
+:10646000B99AF359E79A6A5EE380C72BABF2835B74
+:10647000C6AB94DBAC1D2E2FE226E3C075D57EA003
+:10648000576CE0A35EFDD064E11F998F5E8FC01B47
+:106490007B1C9C6DFFF297D9D06E7E00B08D4D3580
+:1064A0007B6C8EDCEDE8F33F36EFB9807B011D7B22
+:1064B00032EB267759342B9F40457AC3034B455F17
+:1064C000C6BCC5FAB61A8011CB5FB390A7D474A22C
+:1064D0005307ECFB1A4AFE2827C79691F329C900F7
+:1064E00043BA7D98533D8CA67EF52EF741D54B7768
+:1064F000BFC0CCB6A4E51C33F9634DECFB73E1DF00
+:106500009493F90457B16795016F655D8C69DB2041
+:10651000FF2F9ABAAD773ED30E0245CFE51656B59A
+:10652000CB3E526A69D06B0EC98B91FF1A8DAECFEC
+:10653000A6BCE433C0100B7A11266C2234882BA041
+:1065400065150C8E16F36D454CC03B3A539F2CF8E5
+:10655000F6028D8110F8203CEB31E5F46C49ACE19A
+:1065600047686214836549647711BDF6450A2A8E2F
+:106570000F882586C6C13EB135777164A891DEA724
+:10658000C38FA0B2C6629A64B33774155489668902
+:10659000FCAAE3175FAED0602425C01D9C34A7F988
+:1065A000B35D42769E71E9FC050720458062A762D3
+:1065B000732FECE9BA47E4F72D8E3327E68390E694
+:1065C000776CE2C8E00ADF7B0A8CFBBF912D78452F
+:1065D00051A7EBC09E519B40BA17D5763B635A3406
+:1065E0006F466BC6A1E55793E6E49FB0E8AD256A18
+:1065F000828CDCFFABB85B474087DCBC0CEF7B0ECA
+:106600002F6220AC2DCF21FE719C530C3771F77196
+:106610003FD9032025629F4D17084D8B4FA6F7CA1F
+:1066200055E7294E61ACD826849E8635914489EF82
+:106630007EB00A333D0E35E9B4D45643C97926A855
+:106640001C90A1E8B847CF7EDE857B23857C6F7ADE
+:10665000ADDE11E6313F8F3E6AE7AB743D6D05CE8E
+:10666000DA3EC6563AAF1C0CB55E1D264EF5380311
+:1066700062FC52366348BAAC720414F9482F938412
+:106680009192B0A7744DD86B263B117FDA2D5853E9
+:10669000FAFE7EA2D2E4DA524965A0CCA53FA566F7
+:1066A00087433F2A92BC66DFC8B80940F48325724D
+:1066B000284C5D878071FBE7BED74A13797911B901
+:1066C0004869E8F82E837FB408936AB46E44FE806C
+:1066D000456515E0FF10F234F809967C4CCC258610
+:1066E00078EC369A699D8454CE19819F3D49339345
+:1066F0005607315B7960E90EB24043FF490C23F243
+:10670000C7E77B27108532FB9135AF21C31F40FEC1
+:10671000D4CB4E1328D4147B37008C972383DA25EF
+:10672000396898BCC271A4D4EF22D9C84DCA043DBF
+:10673000CBDE0F9F63E2E9442D2BE37A891D6F5B6B
+:106740000554B37C0FD1F1395B5DA6B8D98251E015
+:10675000540EF1358E31B9862BAEA1F68C63790FCC
+:1067600088115800DE150BD47FBDA48B3F2B8C37CE
+:106770001A74A9F245ED2C6C9E36C844D80928CB72
+:10678000365A264B91E3704FF8F5A5B505C16D3A21
+:10679000AF16F09DB8CE82A1C557DE3DF64A95975B
+:1067A000335910F0AE728E1711035E1D333666D862
+:1067B0006564FC8E8C68AF3FFAB9488485D35584F4
+:1067C000E49A3852C0B68B34294527D577A3CBE25B
+:1067D000F0B334769921E5D19C1C849E9B91F21FE5
+:1067E000BDF5EE14AE9B12FCAF4139E0B1F3AAA4A3
+:1067F000E96810B6677DA8698AE86F5341CC2D7BA4
+:10680000641AA507AF3A322482FEE5742E87652606
+:1068100076216CF2D6753FF2304CF0C0E3A7E83732
+:10682000B4EB92924783770104237AD49039184AC3
+:10683000952E2565F4D679BDEDA81E00343D9574DE
+:10684000F2FC0613EA0DE2E75FD17897D5C48D56C6
+:1068500070F369A935D8C8FBA1BC63273AFFA82CFF
+:10686000F66C0ADB3BC8A8F1EEAF1169A2F985947A
+:1068700021B817B8C5942D17052652402D2E7D112D
+:106880005DF54714E0ACD4CF2C11B29C0105566ED7
+:10689000AFD843318442186CA3CB65C18975659E1E
+:1068A000E816A7942D1DB3EE446DF14C24F3079C1C
+:1068B00036C28814FE0F58FAB20638523A7287E789
+:1068C000AA9783E8F845AC584880D35AAEC0152F34
+:1068D00012F4E8E983CD0C17CAD8055DDAB3F6B92E
+:1068E0005CA7092CF1DC92EA87D61746EB2542CF4C
+:1068F000C3112AACF1F895FD1BE5C8FCCC64FB651F
+:10690000C706DEEF09D21106F292A663EE7FB12F21
+:10691000450D8E53D3EFBC65182AE8EDE66BFDD626
+:106920004BEA4511BFAB23D1F016AAB10F44C7D231
+:106930004A7FDF2A8296E707A688412107BBDB96BC
+:1069400009005EE05D86B70B15186AB592214A838F
+:10695000C1BED30D8115B55FAD52E7A7D0842DFC24
+:106960005C9547EA7E485784F86BFA52063AC8CAE3
+:1069700044025739D6501345D3DC57777AE0F218E2
+:106980006C08B0E5216FF3F6633E4483357FDAF59A
+:10699000FE137D4B235732A21A6EF0D3C2BDAE3028
+:1069A000D7FA33A3C9ADF5F690B3A6F320315FAEA5
+:1069B0004AC155DD34092AE6C11AFB88C018102BDC
+:1069C0002ED887F90794D730632D45097FB1698E9A
+:1069D00053BDF1949705C20D2352482552EFF6C9D5
+:1069E000AFFDA8C4F21281EE4ED3164B37D0BA10C9
+:1069F0006F65DA01412175BC22D3132207B62E63DD
+:106A0000B2C00C5CBE6515547A8E868AC60C02FA3A
+:106A10007CC79EF057A9FDF71AB6676C0C37C5D92D
+:106A2000E031724F211F95CFE6451F16DEEAF4E8EC
+:106A30007BDA8BA58C294FE5D67526F9FEFFCEDAD9
+:106A4000A09543B253FED953C49777E6D9F06408B2
+:106A5000309C37E5496ABC722491362053BB93F4CD
+:106A60002BD508F93A58065962E9702424594DF19A
+:106A7000F49657406FC2DE95CE0495B97492835058
+:106A800077F4A881BF6D5FF3070400A8A7C1FA8659
+:106A90005AAA85B6FDB581FD84FF8135170083258F
+:106AA000E0D3FDA8579487876AA1D7A71ADF390ECC
+:106AB000C7A97290E21FFE4D1A471D3354A7D69AFC
+:106AC00071348A1181EC30D4D49E954CF3A756B022
+:106AD00057CC9D5926BAB3622E8A2ABC5788E676CF
+:106AE000D3DBFDBE2E8BBBD98F2AED455CD83C6A2B
+:106AF00073050BDF38F4D218455D2D78B4A80C83EC
+:106B00006751170312DE62331298646BAECACEC7A8
+:106B1000FFB28B7E42007EAD9DA7F671A9E352566F
+:106B2000234203397519C39DDC37AD46F8E5BA0C2D
+:106B30009A29C5DA1A28BFD5F49D6AD5B22C2E5DE4
+:106B40003F0C28A6E1D8532161735E683FB3DB9800
+:106B50006408BF9D97DBB84795EF387CCDDF6A713D
+:106B60006C62B9751664F8DEB397AFB0EC78FC9C34
+:106B70006A9F2A9631093C6241D9B60335D85A7FBB
+:106B80001943D4A3002FF107C656814659438ADB27
+:106B9000438126D18D2797394BEF1EA4305639F803
+:106BA00097EEEABD948DFB5C0C79B56E83A372F60B
+:106BB0004BA31D56A689B2BA30F29592D67B49A84E
+:106BC0001A56FA6207A4F55C138976B2F853D91104
+:106BD000E897313D0CD9E23FB68AF3F832FB85CD18
+:106BE00081FDE50F6A4BAD9054FD2EB37B68431ACF
+:106BF000072CC60F695B229A27B2C98FF1F8CA1A0F
+:106C000060C4D6843A878068471C5983C227242FE2
+:106C100073DB94E71A106799460F770AB5A32670BD
+:106C2000D02DA1A2631DE2F72919DDF7124D97546B
+:106C30003227852FC372C469BD0834FFD4E069656B
+:106C40008DCE6BC0BD6062F59670B9F51BD8122071
+:106C5000D67AE2907982173F2A1DB75F61660F05E9
+:106C600094CF7893C349D26EC369CF0B7EE3857D01
+:106C70009775534DBCF9F6C76B70E280439BC2FA1F
+:106C8000FDFC18C917413377BB84D3527E8009833A
+:106C90008FA96698B770C50237989804FF23A2D4CD
+:106CA000BD6798C213C6080331D0AD544E4300A44B
+:106CB000DD6CB1753DFE4D10BA6CDEF279113333E7
+:106CC000E09740FE2536105BF9E822CB72D049E30D
+:106CD000714215BD0CFADBBD86CC86337C3D720952
+:106CE0001AF55EB3C2BE4602B429C0FD4687EAC8A3
+:106CF0003A55339015A30AF7806866049A38E0FF86
+:106D000018D6511A6E324DDC1E6CF7EFAE86197430
+:106D100034AE6586B31C8C2152B4046EE7FAB00D14
+:106D2000ED2E37A43C340BB648CC90D05E774E5A4B
+:106D30007051F1A5116864E01AE4F1D3405855E0B0
+:106D400088D7FA76C2DF385312E1B187E5C8CEE5BD
+:106D500018F270EEB863870F3C59CE85416D592EFD
+:106D60001F351FB4256F28EFBF1CA2AEB96C085E9B
+:106D700083D655055252772561F776E5DCCF8D270E
+:106D8000BBCC54B4AE57379D85FB7A03299CB059D0
+:106D90003727F2D69A5B0260578CF2E2D0F4C51620
+:106DA0005BD0920782FB71D8FACDF3CD8217F1D276
+:106DB0005E74B014245CF5C2331B66D53F2E2C6B79
+:106DC0009CFCDAFD89EF29D4744D7E8DA28EBFAE76
+:106DD0003038CF2A4D3D0FEF9F661EB26765609435
+:106DE000AA29CA8EF104BA6D9F2451B2454481E6A6
+:106DF00089EC0D98F55341B0E6472923044C4DA585
+:106E00003AA2D774D47302335D078893EC956087F8
+:106E100006C37A81F92DB5BB9F7AA79C21DBD0569A
+:106E2000C36D7440031614D94928D328FF648B52CC
+:106E3000985CA410B282FBA77B139090EAE65F8176
+:106E40001C148187664ABB78CD42906F75FA54E670
+:106E5000C376EF10F5651FF8BEB71B1BF3BB27A960
+:106E600060079CA4DBF37CE45E31770182482669ED
+:106E7000DA622CD3085BB6285AD2D706B9833422FB
+:106E8000E46C54557C24FD5EE7C661205ADB2F96E6
+:106E90001CA69D89EC0ECA903DF2E61C2C7FC0BA60
+:106EA000C85389D68E8BF25BE475C55D2A91259116
+:106EB0003D1E47EDAB2B1720C01B0475969531285E
+:106EC000854F47A42069AD1986139712AADCD21208
+:106ED000C6925A86D9A1745FD6930B4FDD7EDF90A0
+:106EE0003EF440121FFB49367F9F306D324B4018F5
+:106EF000DA46E1CC8807967CEB7A9F66F5F40B992D
+:106F000028DF47136AF635D7CAEDE60B9D61AC144E
+:106F1000B6735E3C3B12031BE68E26ECE0E8A27FD4
+:106F2000692237B525D181623C91039914236AD532
+:106F3000B994D8FF32D979845FAB9ABE9B89B3B23A
+:106F40004340E6C034E234C22E00FB13AE91D56C50
+:106F5000CDCB569005CA1BADC4988EAE2F3D9BC0BD
+:106F600002CCE91B46FCED48F39EFCFA396D535008
+:106F7000365ADDD94DB61673638643D6D2A4196B43
+:106F8000AAC9FE5ACA9DF7C18C16887ED71A929E4E
+:106F90003F3B71DA4097CA72686EBED302C0609EF2
+:106FA000FAB3D8A57B85B2F6D72C1553D7367BB864
+:106FB000FA6619AECE97C268F98F2FEB545A4B0878
+:106FC0000F93B6A071261AE71E3BBF6220BDCDDF2E
+:106FD0008C5F1AC7AE1870696B613A22D39FA29E6C
+:106FE00042BE755705928D0281FEAF04E45F5B6E71
+:106FF0009063A10FB5179B9F3B9321E46FD7D205F8
+:1070000015D8F09457DC68A96A8221478F2DFE4F6E
+:10701000B233B75DA371196CD22123DB8511CD7D0D
+:107020007C668682549F3A9BCBB412A5D16E5109DF
+:1070300082AB83DDF543B7A2CDC3581530F052EFD4
+:107040000337AD7B94E6411FAED8AF4B3F4A3A9F22
+:10705000DD55B220E05D27AD9A49D41A026FEA945B
+:10706000C08CB17E9D15C2226A4A9D820F55F201E5
+:10707000BD9411C3FC8AB304BDFD4960C3BDA59C8A
+:10708000D628D48C3C82A774056AD86444F9D02BE6
+:10709000DF61F8573608ED41D75CAD57B06E059B00
+:1070A00065E2098C8E5A96D315AE0C2C38FEF2CAC6
+:1070B000E677BA826D4B78E4F515C344917FF215FB
+:1070C000738F8A5EC69725FDCDC996D673FCD8729C
+:1070D000A63A3EBFB5C03615CF896F8FA747B28B92
+:1070E000B4D6E186E625456FAC94E0E1D0BDED0F66
+:1070F000A3D343A6F475A7AA0E89CEC1D692198848
+:10710000C9D9BF0EFC8047076A5781A1D915F8433A
+:107110004D297CFE70D87FC12657E53CEB19F6035C
+:10712000C243ACDC393F0C8DAFE0AC623AFE8370F9
+:107130005FD650E79E5BD23B9CA1387F477F9B1474
+:10714000E72AB4F6B1B8608546F76A2F89ABBD93DC
+:10715000F379A478B063F972D0AA5C0B7462D3445B
+:107160008576C81C82C79D984FB4E5AD628A81AA16
+:10717000E0CE21348D2926C7657764CA43F3483EA3
+:1071800035753D469D948465F928852CCC671E890C
+:10719000F96517CC99EA54C12CFE025E3C87F4E1F4
+:1071A00026C925238E3145ACAAF62BBAD20BD3962D
+:1071B000AEB24086DC23F29986706EF091B9EAECAB
+:1071C0009EA67E46F82FD47BCDC1640FAA89AC0D54
+:1071D000C01F8E56A513CA481CB635A2F8E6D19E2C
+:1071E000B748DFA294DE59007DCF806CA07FBF85B9
+:1071F0006A437FE3E04DC70F96D8FE51F2433F99B3
+:107200004EDBEC145CA5AB7ED929E5FF79E5E1B353
+:10721000B3EDE1F00E7402AA98D7B310E7D2447030
+:1072200071BB43C3A9C9D5D125BB0D58FBBC404494
+:1072300032BF3E1803621374E95B2102FC43F39CE6
+:10724000F9F54E61B7A66027E2FB416B64F056404A
+:107250009C7B7FDC5A40954D83047EBB35CEEE98F7
+:10726000F7F6C4D9325C20C3E00D11C27ABD4A8C56
+:10727000E6216D234B9EA55A4F840B8BB1EB53C077
+:10728000A60A279DB4063D3DA11C26F3CB68A59A0E
+:10729000FECAC3DEB7BB03CD89E61DA833F376DE95
+:1072A000E09105EE92819AFCE205F3C12094297CDD
+:1072B00004EF5D38CDBDC4F73675871DD48734E93A
+:1072C000F19C5796E31FDCC01E580A74A94D58DD87
+:1072D000603EC4A6C3997C40029ACD2198FCF2DBA3
+:1072E000847E7FC616EBA3EB3B0B82546132DB2C12
+:1072F0006610238890736E16243931CD9DB7846053
+:10730000B2B9646B08B48AD6906461E4A628BFF170
+:1073100019637331DA7ED917ECD245FE0CAA8AA51F
+:1073200007F1A071AE96F803732A7C6A0FF15880BA
+:107330006E6885E3D77A22E8FE02A73B65FAA02DA6
+:10734000D2AD70430753BFC0A7AB0AD917BC7FF1BA
+:10735000417843B43DF33080B48BED4BDACF720407
+:10736000F08E7CF7B83D3949DBA8A468AEBD06D1E4
+:107370001318C3B223836D02C020DF5D630B602E40
+:10738000CDFC874CCA3A126CC6813E7952CECF1DD5
+:10739000C906FBF712C7CF18EA05705DF5634144D3
+:1073A000786C762C8600F555BF1195598639BDB29B
+:1073B000497530E7C5B6EF8D8ACA68206AB544D9E9
+:1073C0009E58C6F26CBB1E3A987C2C54DC278DCCA0
+:1073D000D3C32DC14B9D9D32FB8152C1D3A0E42864
+:1073E0007162AD6EA47DE14077B48DEC9201F154F1
+:1073F00026B699E218184F95DA0C759C102CE99571
+:107400002C34C2CD6CFE6B1A607905F8E5529628D3
+:10741000050978D2D6A9D040E01B4432B96FA3A5A4
+:107420003386D9ED1A3597345ACC1F94B84F0F7F55
+:10743000A38F28A8CDC2825E546EEFB292747DF9FC
+:10744000251306141B53509F609FF61421FE5458B9
+:10745000A0BA72CC17C8F4F43BF23B0A09035D04EE
+:107460001169F8E656079A08C8B1BD7E33DC3C3D89
+:10747000E93CCF167AE0C1ADDB3177B8A12AE51C33
+:10748000673B0E4AEB4E54F86081E5D990B5526FD8
+:10749000496087684C5060681C331C366BEDF3669E
+:1074A0005AF32938C690A214F7376ECA3666B54724
+:1074B000F65BB72ACA5F8EAC46BCE9B8D6FEAC52C2
+:1074C00094275DAE9FAAD8B1B9078B2AC50619D4F7
+:1074D000B25E1650102CC8373B15E900185F73C414
+:1074E000910D1ED90A853141606FA9DDE810BA857A
+:1074F000E461E98E3C6691C99208B255DA86C58B83
+:1075000093F7E9F0B61131002E15401732EF0C4217
+:1075100028C33AF1142D8C988A6C97E65A798F30EB
+:10752000B7CB98645C32E243E674AD41782B3DA65C
+:107530003D3220CC348721B33581B8DB79C6BB72AC
+:10754000CE6BA95A9ED0A95BE7448A19DE3F6E35FF
+:107550006B8B117F8839D4C9DABAFFC4A010885E5A
+:10756000AC6DE963FF028460AC630E32FF4B3E26D4
+:10757000D09E69FB57C31036A71A83F00AF6FA6B40
+:107580007821FF34D37DA95EFD9C87430F41EDA098
+:107590008695348B2B91CD352702A9F18F7AB9FCD2
+:1075A0001FB07A9CF30159EB27F78AE254CD740C93
+:1075B0000151832ADDEEEDF0C469E3AB851183BF91
+:1075C00036A45413BAF05314DD5624EF05A77E42B7
+:1075D0009D955B49A835E229783AB619ABFD5E7FE7
+:1075E000D60839D957B33ABBE939FB6A197797BC42
+:1075F0002584DC4F3AA31A6C9E10198D40836E09C6
+:10760000E0D13B90ECD74C9FDCE96CB960B46FD013
+:107610005599106914951644DDACD03F78A5C57C0A
+:10762000A7CDD23B9961B6AE77EDBA426BBB81551F
+:10763000CB97E5ACBB7E1AD40E5DCA49D254DBF2BF
+:10764000AD3954B91DCB0AD4DBA461B1B2D76A6F8E
+:10765000ACB6D606E2AC7F611166E52FAF738CF94C
+:10766000BD4BD51F5806E0A26C9443A4C9E609E1BE
+:10767000F9F279457E78FBEDD16B397930F44C0025
+:1076800094703E8771C4011A14607E10631F2CF23F
+:10769000525876DAA627DAD38953E176FB39BD67EB
+:1076A00029D6D6CC8C69F2762667135F2EE13C7A18
+:1076B000683C5BA6982D6EDF50BA58A1170548D6D6
+:1076C000239F66D719A7877ABB4EAC546BB9057A4E
+:1076D000504B93425DBB9005E3067938A98CE0C21C
+:1076E000FEE62EADCB0F260697AA8ED7A57CECCE54
+:1076F000619CEF2D1D182878CA0D23822A32658AD5
+:10770000F38672219D239A4D7AF090BB9DCC3E1654
+:107710009BB6ABCD97F312ECC1FEC5D553A6D4EB07
+:1077200063DF6FF16CEC5063C981F873443D3BBE7D
+:10773000BC48E4F44D3BB80C0C25674CEDFCC36031
+:107740009BE23DEBAB7C3D5509FF99036F120B703B
+:10775000043945C513B1EF6F0DA7EB71AF0C773549
+:10776000A611203C06989171A1B6E1FFA744E92C2F
+:107770003BDB5C13AD32B031D5A13BCB1420CB56F3
+:1077800030E11225696A5FDD6AA6BCC8E7A2D36C46
+:10779000F4C5AFB27A0B73FE9FFB78D818D372EBA7
+:1077A0008569785C0C064231D8F63710B1D3ABF856
+:1077B000C73504513AD2A0FEB3CAB3481F482F3D83
+:1077C000026CFE80CCCFB9CC549E1E775E384EBF83
+:1077D0009D4D0D4B774B5E215B8C294C5174B72925
+:1077E000B78F86744662DD0F0C6D31B2D614DA5A4B
+:1077F000ACA164A7C777B8BE56A16B5DA1F3204AC0
+:107800002DC3E0595CC7EB2B928E66F24A015DB145
+:10781000A794931C282AF9A85FEF115A6A77EC8382
+:107820007EDE01E6594814D24999DB35E26C87DDEA
+:10783000688079320CEF8B3133E09510239E6EE92E
+:107840003FC3A161D6849497DD4B43D8B2DF173193
+:107850005314E30EDF4F106CA5D0BD74A2F632E7CF
+:1078600041F9D259041C51AFDDB04C3B246E6AAAD9
+:10787000321337DB9847006FA1F611F4D1956022DF
+:107880003BD3A6FE443C8E8BDA2976E01510BD3042
+:107890009D07181C276A543E5DA2423C242C097E99
+:1078A0005FE5FBE5DD71C6FD1D45083C5893F7E03B
+:1078B000B7B40E9B29C702BDDFCCBF5772B51329E1
+:1078C000F6AAEC7DF8CF6501AD18C5A25D83A000D6
+:1078D000B81E9EC0DECF9183A6018EF34BBCE27E24
+:1078E000001F647DEDB50C0426903A604BF4E5A4CE
+:1078F000BA971D6244B40D1F3F9EBB892084184C6B
+:10790000B91D458B16A0B9B812183BDFB7C629B10F
+:107910008AE982D3EDAEC48FAA19EFE82BEC8E551D
+:1079200067FB407C4433EBDAFD08AC9E9766B3AF4F
+:10793000DD70325ABD9F8990CA987602F79D6B1E02
+:107940000AB7655749449ED710DB1913A18E481E0C
+:1079500028E12C66CB7EA7E3259136CC53B5169D46
+:107960003309BAEC98C2A1EF565CF4DCB808CDEA52
+:10797000DCBCEFCB6A9A1F8EFFBBDE696E5266E9F4
+:107980002B4270CDA4A1286096CC96B9C0A6343AFB
+:1079900071EAA2A61F717928100EB38A1E6AFD5AD9
+:1079A0002858456EAF03E803210496AB81D6BEABE1
+:1079B000EBA0CF4BEBE5B1790F4686C9654B67FE6F
+:1079C00095D7744CCE79FC4215921406C423C9CACB
+:1079D00068DDABE0E579D188DC6D7D02AF3F7A9858
+:1079E000DAF031F5101B601E7CA1947CA7698D8AAA
+:1079F00058F2456E695C013215A92B4F077C30E7C0
+:107A0000A4142BC7AFD377A35D7C879565500E8BED
+:107A1000AFB79E7AAC14CCFF910ED126A24A8C1F30
+:107A200049FDF1BEB4C3B8BCD00087318E958ACF72
+:107A3000947DB5BA8350FEB51482F61CE58A1456BF
+:107A4000B9CA12549661562DB3B7810B9D55F5E511
+:107A5000C5DA64F0CE640D3A6E6B69DE71D1BDC9D2
+:107A600078D1F02F8E7EADDC79A2D7B942B5231D37
+:107A70002074EDF0AEA79A07067AFC7930A392BA8B
+:107A80001C97A4B0315F08AFC708C963BE729B38AA
+:107A9000B2195FC349B2CCACDC1EB62012D58C2023
+:107AA000144595F7E95ED161A40D9C7CC666F7E6A6
+:107AB000B75388DF6D664142F2C1EDD230B3967F95
+:107AC000D542FD0475CE03FE3D7180FBE289095667
+:107AD00079F876F4916950EA6EF0AD7370C600F7EC
+:107AE0003BEC8438BF4234E05AE02550D2F2C26AFF
+:107AF0008676549251B1E8FA1E33EF9627EB2F4762
+:107B0000812E957DD0D666E56FE64BFDC8CBA75993
+:107B10004C506032C3AC9821971921EC0B29F47AB0
+:107B2000A9F2ADD35B0795E6BC90AF592A2331315A
+:107B3000C66ADC85CB68992C7B41D1B6FD6D553981
+:107B400072C1FF39D4C99E8CBAFCDEAAE6DC6F7F15
+:107B5000AD7B3083DB781555EFDF59EBDDD7C1B452
+:107B6000AD8BE79370240A25A150E03BFD332EBB7B
+:107B7000F3A757514977830595EAB9DB9916C605EE
+:107B8000670FCD44E9B5747CBDD4B8982D6374A358
+:107B900027F60044805B0688A7A357C86F4588AACC
+:107BA000D785B2695E0B012B531BB33EC693F745D5
+:107BB000BFDCE149911D01A648F914A61143B62F77
+:107BC000E84F79D1D81EA8817B1D09F947C77A876C
+:107BD0008D7C23773C1BC28BDB4DFAF6582F4282FB
+:107BE000BE2921F66367FAA4253CC47E399AF43C89
+:107BF0008B897A748D49112CB32A44FD1C44E5C24B
+:107C0000B9865844CA2192DA2786CCE83EC094A7A8
+:107C1000825A48ADC46C0F13E4FD5E422182599034
+:107C2000CF48CC7DCAF5E4A15FB3EC5F1CC8CC346F
+:107C300073DC0C7678C5C2FD1BDA852E6F955CA5CA
+:107C40006E6671636BFF8CE8E9D0686CE24F1718C1
+:107C5000BCAB77009C459C55867CD045568C27DE76
+:107C6000D2C95AA83A3D21360B43AA438397AC3F69
+:107C7000C7074BFF0713A84A9613021EC57FEFF6EE
+:107C80002042124F87CAA8DA4325E947178B8D4552
+:107C90000B3BE4F2B67F910656309B945BC5F02413
+:107CA0004FEF90A7C668BE71F74D472FA8793D9E4C
+:107CB000B4B45EC69FA3114ECE48B1AA8D5FCA72FE
+:107CC00014A7CBE4796B14D1D05569A0263A719FE3
+:107CD000102DB4908B8387DA76B4801600DD7D9109
+:107CE000DCB550F925478E9705B13D3BE396CE169E
+:107CF000297A857B44689FF5558E1CF1E983F5024E
+:107D0000BDDF316CC948B1E06EAB39E1CE8B4A18AA
+:107D10002201F902E97A3FB1A6F2B5EF0A10C0706C
+:107D20009875B290E83A6073DA98916A7219225A9B
+:107D300033FED7C28B24C226E2467B62958AB7DB2C
+:107D400062BE431AE72B391C308AAED0415AEAE2B0
+:107D5000BC6F1ACB5190DB310AE8FE78840C972374
+:107D60003673E7062F2CA5B1C12E8E1B7D51E4F58D
+:107D7000500223810F6E0C9B4700B4A07E86406AA0
+:107D8000FC5C43DB66A933C7D31669A46C5F03624E
+:107D9000375469339F97A04672F4B0F0B10DA76BCA
+:107DA000009C407C9A5FDD69BB40214621E3EDA346
+:107DB0002D49A71822516334A5008AEE03899178D2
+:107DC0007443932532A2B17AB763DD21D41E19EF33
+:107DD000F8EDF0ED8AD57657203B401F709784531D
+:107DE00085C252E16084BA0321882EB27F7F738AF4
+:107DF000F04885C6AF6CB80F8BFA11A107CB78B2EB
+:107E0000EFE76042FD06B066067C5B774D8170E46B
+:107E10002215565A6F8E7979DA180F6C95761C7781
+:107E20009F6C0264DB28E18F54C140A5A689C5D0B0
+:107E3000560A5C5AE99E5825BAD5134460E460A5F9
+:107E4000A04DA7C5AD1E708D71E89E34634468B027
+:107E5000887F334A1B0200F1C538DC979C282172C9
+:107E60005E0C0F458CA2CF7AE490D6BEFA89DE2252
+:107E70002CA7C31FAD9DF37A6576CEADCDED6344DF
+:107E8000B97A64072B7982D74CB749F133CBAF511C
+:107E90006557FC91B1CF00D11B1C538355925C4BAD
+:107EA000FFA8B66A3FC9366AC1F1A854AE24FF01E3
+:107EB000D7EDBE386836D89017438D1DBAF2556895
+:107EC000B75A06A91236199B3819666E93F1C24249
+:107ED000487937FBC4AE3602949C04575A0C386676
+:107EE000ED67ACC192AD3979B65F59CE305942CA0F
+:107EF000135D786B09637B633AA127038324EC3617
+:107F0000B8D021B10B4A16F8DE76A695E5949E7B93
+:107F10003394FEEA687AFF929CA0C8B6811C7BC3AA
+:107F20007668D4E07D911802C0A66A69F40A559378
+:107F30009C4B861CE47103C7DC26F26BD8DA0D512A
+:107F4000993CE1F0B0C303F817685195700D64BF18
+:107F5000F7F2F3976A616D52D2ED8BD783D1E00AC5
+:107F6000F844B5A038E0EB4658FF067EBD171B2647
+:107F70003AF31E8899071D6EBDA7B42A472AB31D80
+:107F80007DDBB19C8364B43ED38168AE3CC54F6E4B
+:107F9000D8782C2EDD66601374C5089FFE81CCA0B6
+:107FA00025E2DB217A691BF2B4D1455BB15C1BBDD4
+:107FB000267A6BC731C940665F8E45DA64E7FAD12D
+:107FC000D1C626580348C90A704060A63CBD1A3C79
+:107FD0009FE2406DB201C95837010AA040F9510231
+:107FE000E7EB9827657D6AE19A2F3075B357994280
+:107FF0003DFB78939B5CA6446A42A502C7E1BF9B08
+:10800000C0B8AF14D60B74FC962B1D0BC9A23C5103
+:1080100042F2340A19042B212C325603B0A83B76C5
+:10802000DEB696641C74E67DA305A7BC7EB37A0B0E
+:1080300021D31955B526F84B729D56C77AA581C72D
+:10804000D9C6FBBECB6911112DCD6A49990C582BAD
+:10805000D0A09732F391B38A95B6FD41966FF304A1
+:108060006DDD767B53BD3FC249685D66A28BE24DF4
+:108070007771F4204AD45DFFDE3EECDFA906EF8E77
+:1080800022B42D0A88F7327775776C3384E6C12DD8
+:10809000CCE3B049E2DFCAECB01616AEC6731C5F83
+:1080A000D9A219DCB4454A3D03B5C43BEB2F7FE7A9
+:1080B0006BC7787C4BB4C28D68D3D1095B0AD8FDFD
+:1080C000D8BA90F264B8817DCB96D4B117BD5D3635
+:1080D000A39EAD86D192BDDAC1EAADF6871C6D656F
+:1080E0001615DFFC3F8335562A77A5D87D34F3FD7E
+:1080F000288B9D93FCAA3B9F599DF5451FD896FD63
+:108100008B8F3498E30DF1D30AAAE48EE1B173C0EA
+:108110006EDC7A59EEAD12A0636B5937E46CD90C62
+:1081200046775D298CBB668C69D44491BD3E58036B
+:1081300057441689C1230B465823E7780F95398891
+:10814000BC4A8BE4BEF3961A9320A4086D8FB9AC99
+:10815000A54B108A904359604C229DB5A4F6360E6B
+:1081600083C7170E30EF0020997BB4FDD3F37771EE
+:108170007F96BF79F3CA8283A3CA97F4DF9C1E4817
+:10818000391C204BD8979BB4D8A10C596C31A5CC85
+:108190004255B4F22BDEDE6F0B5C6D24DE1B01203A
+:1081A000DC9264020976483A5E11BE233E19B4DEC1
+:1081B0005CE7F290227DE4226AABA356A0D9A0BB73
+:1081C0003D0ADEEAD53D91DC33F280B0BDA10CC39F
+:1081D00019921E76902AE043F786B53BBF04CB2860
+:1081E000D99C44C49FAE8379C66CAE56581B1DAF54
+:1081F0001BADA5E51DCE2A0AE084A49649F8E94CFA
+:10820000B48B6815974E2F6F8D637316CAFA24F5D9
+:1082100098911AF9F4434A9B268D9460AEBF4BA106
+:108220005764EF61F2D3F9DAB786D201C447D34578
+:108230005B2762AD48A18EC12300838D9A0310EFA6
+:10824000C523BE2DDE1D50A1B8C2E05CAAC0CCB3D0
+:10825000EDB1C1FB2311FE87110E52380741339354
+:108260006E903F9B0000C3A6A9F65541C61B23AEE6
+:1082700089E5D733E588EB31BAAF4084DB5C1797EB
+:10828000B7616B64ABA7F665521F08804B3D4B9FEF
+:10829000D1A42B0F1D13F6B79EC0D3A09BD106AC63
+:1082A000A1A41CB4B1C09415282CEC5DE6426E412B
+:1082B000769853D57566767B88BB1C9843A3B553D7
+:1082C0005AC5D702DE2FD308F8C7C4029FAC5806A0
+:1082D000980F70BFB0E69A7DADA12B203B568CC3A2
+:1082E000EDAAECC7D7A85980B7A178BA467C33CCA1
+:1082F0000E0D901A000E979A78CC89348C6FC2FBC1
+:108300000EBB7F3F04D630A0223E5BA4CDFEDDC76E
+:108310005DA7EE0D7A9371E99522DF3E0E8EC64081
+:1083200094306A72E30C5071198609E6DC8C492A94
+:108330001B99B9A5DD0F1E68FE6D3C1AC78B065E42
+:10834000D176BF3CABF23F0AFB3F13B91038C6A44D
+:10835000C7A16B4430099AB6F382E84D68B7B411EF
+:1083600004E85A98B4371BDE8368657685CA84981A
+:108370009362A7858BE7022974701E6F56E10EFD8C
+:10838000D3EA8F638F3945B4E4723C3AB2AFC75A2F
+:10839000D68874E8B821B087D820B8A36A984BBCB7
+:1083A000144D27AAD23FFFFA5D17E56CDBAE1A8A9F
+:1083B000B974CB885F5E78F0121D735FA43F90267E
+:1083C00008A9A771100F48A4F713D25888787C74B5
+:1083D000C6C0C4D36F98E7CBF822BACA8AD2A40E1B
+:1083E0006AF91835ABB15881CCA60BEC15BF9902D0
+:1083F000A8CCE95172203881D0331313ACBFC8C464
+:108400006EB5667CF9F5D98B93B3492545F3B15820
+:10841000F769A9600D318042A465C234052BF04A8A
+:10842000C2D2A33103EB458179BCFA8932D1AFD5F1
+:10843000F727B5EF16C77419CCC5949DA29D44A625
+:108440001CD6D48D0A1B60065B4A9A1666CCE826B9
+:1084500085F7452CAD7690D48744937A2A6F2DDA30
+:108460004BD4BA96833961FC94D38F4A3526594947
+:10847000A31C94BA42FDE414CB7C078464B4B91500
+:10848000D9F47AF3CD265852B3822DB821BAD6C189
+:10849000F8A1A9ED8814958A82A140F309E70A356D
+:1084A000DD7335ED2130C48084E0E0A70E423CF35B
+:1084B000186AEBF33023D03DA37A80E736E9CBC9C5
+:1084C00044791F0C84B1E27B9CB3511639EDC0E2B4
+:1084D0001DDC43777ACF37F85E758382656A74C690
+:1084E000F5E138A79D1B1E3106B1CB979496008A03
+:1084F0006319BDF3E02B3078D8290FA0D81D670B86
+:108500004D992A4B2B6A1A98D6835B0BE6269798CF
+:108510002CFED6A3367C9764D540CAF17E2B707EA4
+:108520000D2A246F5E88858283C10017EFCD46999E
+:108530006A2130AC2AD12709859C6937FA934146D4
+:10854000870510EC957EDC17A652B27D4799143D45
+:108550007636D4FE04E8FCE2B5796AC378E10E6CA5
+:108560008ED35CA7206240CBE9053102C879711E29
+:10857000B7DB56470509B9545C215A5A24273AD02B
+:1085800087B14109C6286869D55C9F3DE55AC98A0B
+:10859000BD4046FB4B6CFA8FE51BF562AA8AEADC0C
+:1085A00095349E3F8FDE72B537E638E32F08AD83F2
+:1085B0006F195F84E7AF421F01B1F82222C8DD1AAC
+:1085C000C5443F02C49750790E6F54F15F3BC179A7
+:1085D000372D85A7E1A15DAD4CE5588012FD94A62D
+:1085E000E4FFB69A76A63B0F5E9098A7F4EE421A87
+:1085F00036F3C3AED09F1A7A2D0A71C92ED0BAE4D1
+:1086000000120916BEED2DE4B244D531A2162E702B
+:108610006F13E23436CE8BC2966EB9059503112ED8
+:10862000C64501CABE60C55E2981CE0975C5B65969
+:10863000E33FB544E9A81253CC29009547D8B42CA0
+:1086400069C647BD8DBCDF3F68E68E17634522E4EF
+:10865000A143D8C08238D57F3E254E250D80B0A3DA
+:10866000E096E15D54493841D7F55173CD1728CBD9
+:10867000E553798BBC56BB0EC24C8DA58465E38354
+:108680000DBA688D085CCDAC0FA4EF4F8E4230F16F
+:1086900057BADF6CB3AE307372177560AE5D7D2371
+:1086A000EF6EE1716D9466669019F710213E22100D
+:1086B0003220A268D33FB62D7F0F97D06D8BB9EED5
+:1086C00098CEB3398657E92948DC611C0C2AB63AA2
+:1086D000B25002C959FFEF79FB59B5D6A962B16B07
+:1086E0008C47EE0C36812A999CB1FA67F66A35817F
+:1086F00032D11A1226E59C0F7B6046ED56ABF97C11
+:10870000EDEFE0F58CB00A8CCA5F6AC6838924B8A5
+:108710003E85A8C252845DB7B57FFA1BCAA7ECD4C8
+:10872000A1C1748E6573F24B52336D6BC7B81D1FB8
+:1087300009418F40D05220B4A6B01A9223696B54DD
+:10874000D2BDC124F969EAD2E05E6CD1236136E082
+:10875000B141C7999A277EFC73B0A51A27AC71372F
+:108760006249ECCBEF76A3949FA269163DB65433D1
+:10877000AAF426DDDD9A81D495B541AA1CBACEEFC4
+:1087800006FF569FC955702D371CD39F5C9C8CD01B
+:10879000D55C1257C6EF9153075A28742EF7A2A43E
+:1087A000EDFC46DA5B0215B68F1FCD6346374BDD15
+:1087B000FA4ECAC65459C97FDBD865FCACA63B74D7
+:1087C0004FBE7C64497A57657FF6ECD0718C83DDAF
+:1087D0003308F6A43BA519F658D8ADFA4AFA1C7925
+:1087E000E4A3CC8A27BD07D9CDDF6F198612663D79
+:1087F000474349C1E07137010E91CA90004578594D
+:1088000054C70B74A6C8506E2BE60C50F19D387CF3
+:108810003A7104D2E0279A5277C1C7FA79E3183443
+:10882000D066D8DFE044A40D885198A779A54A43C3
+:10883000A5E314FA2259C9493CFFB5CCEB3DAA7710
+:1088400036CEB4B2FDB833FC9940452D51BA55F53A
+:10885000F67C6F907D79EBB39074A5AEC998022633
+:10886000E09A9980A628B255B9C1FA03E2B9B67167
+:10887000DF0EED3D52188CA477A0F3AA22C8133E58
+:1088800031E3A06D623ACFDC4A2361989FDD8342D9
+:10889000377A487AD7CD5D63E293C1695E62D73D8E
+:1088A000325DBC2627413CC9140976DF8014C47CA4
+:1088B0006653EE52AD2890FCADBCB056CDE736A362
+:1088C000C92104D0810B4ADD2DDC8DAB08FA8A9ECC
+:1088D00016AC33ECE37B8BA11063891AEBA09942B1
+:1088E0002A50BFD73D46677110353A5658F7779CE6
+:1088F00072A97D2FB69FB73A47E02099C4257572BB
+:1089000017EB80B4CCCC763B6B4C0ABCBE5680E6F1
+:10891000DD82A06C3408F92864B664A62586231B82
+:10892000505E8487CEBF33E3A5987F89DAB8207E76
+:108930004C3407D3DF853BF8A84C3E421FAC1419DA
+:1089400090F9ED8ED820BB58C91244D52F6B591819
+:108950005AA69CE8915B2F60ACBD6C0ECAA030BFDC
+:1089600004E1BCAC4AD230453A0D2EABADD838DA72
+:108970009C83BD0C1D2CB1F46954AFCDB441B3FF41
+:10898000D67FA68A68988727E0A48B156DB01EA7AE
+:108990008F2B3EC56CCA385F29F84521653574C8F0
+:1089A000F157CFEA1EF5E30BCC98B2F50675F55FEB
+:1089B0009776C54D2A53F9E48672B9F518940C3AA6
+:1089C000F356BD250022672CFD072C888C3E1A1912
+:1089D0002E0E31395649C0DCCAA3321FF1F920EA04
+:1089E000DA07D666AC9DB0054F5EB7FDDA4D5E2D59
+:1089F000754D56BADDD709468A08177BBC472FF25A
+:108A00004F55650CD966516F8A9E3D512EC7262160
+:108A1000A950B097773D2503673AECB7FDE579118A
+:108A2000707FCA6C701C3557B47996C9417C980D1B
+:108A3000960BC2D6BC3E5EE8BA70294DA62FA35253
+:108A4000299BF68C1F0A82E27C4FA6C3700B21C1C2
+:108A5000D9ED18F76500C9D72A811A8DDC83B8F2E1
+:108A60009DC7D8883B89AC4623D29EADC24DE5E276
+:108A7000E4B49A70C4FA6AB9A3FD5C16D771492DA3
+:108A8000250032FAFB6C6703B8112152EF7D691B98
+:108A900065E609705899244801AA84FBDE61CEF38B
+:108AA00019C00F7666D05C9E9D1F6D0E03ACE2066A
+:108AB000FF9C21C611570422A9D9755C7D4EC4B70D
+:108AC00055D46DA2A75FBB53167AB3B290866BBF25
+:108AD000EE4C27061BFB1D210D28D3F35D192B122D
+:108AE0008FAABD5455023CE755A769BC84DDDEB4AE
+:108AF000861B59C5799DD0CB65B752299D72E0EB95
+:108B0000D579B7842AFE8DC784D26B3ABC19948478
+:108B100054F67F1FF381C28D3FFCE2D80B5BD69BDE
+:108B2000CB455A57D9652A72323CC9B8F6BFBC4901
+:108B30004644C07B3BC573C7C7500597D2258C1BE5
+:108B4000BCCFF32D98F23862103CDC7B75D7F7A3CD
+:108B50008C688D7203D2B752A877E85B5987E477A7
+:108B600079F39A30B73A071A330191EA23A35E6A80
+:108B7000DC2AE63C50D8535335D61A3F90A405CA98
+:108B80000E2C150F76414425F842A56BFFA9BE3384
+:108B900048FE3452F34D329B74E55C97911F0A27CF
+:108BA000F4F66C5066BAEB5C722A83606F40C07B4F
+:108BB000D1F6DFB3D38AEF1529F673CBA36BE5AA01
+:108BC000D4E2A14839B2E94EB89883C20B7132EEB3
+:108BD000AF5DB549694B9B0071209437A9BBB06F5D
+:108BE0008F2E4B8D51C345EF7775F4E87073F2F318
+:108BF000093EBF8E885066911DCC706B8A7E321103
+:108C000009BD236184B8017D38197C02A1D836AF33
+:108C1000C916DBAA20E74DFC4BDC79915BFBD41431
+:108C2000D755A9BE9197E4300048ACF0E988320CE2
+:108C30001773CBCB0061921515FAE8319D1E45479D
+:108C4000FDE9AB88E66AF4D7D2161C3B253A967F3D
+:108C5000CDB7155952A084DEE9737929419445DADC
+:108C60006406FE3317D15C4D0513120F7EB74AC25E
+:108C7000B686852F9ABFAFB6E3E46709620790FB1B
+:108C800076CA7136C376C4FDAD21D8E28DF64EDDCD
+:108C90006286043C6AD97F0982DE97D6821E6718F5
+:108CA0009B4D548AE9E5C39DFD846221DD40D46477
+:108CB000846880E627D4EFD807D8144CF23AC4D899
+:108CC0004F13C31FD20A5E53F1417D89E43F883BB5
+:108CD000C8D324B05CA8D2564895B8D1825E0FC7DD
+:108CE000B79CD67EEA6095EF56D663217019BF8E89
+:108CF000E06DC399A58D8AB33D5E7409ACB760F988
+:108D00005FF498CD4D4F2727264673F9C4BA175EF6
+:108D1000278086987FF37B5EC61C65429E3E3E9A06
+:108D20002FBF49C7A79E621EC670501F214790A43F
+:108D3000937CB8E81545E24B609531FEC873F5BEEB
+:108D40001315857F5ED99AE86ACA65E3AF973C55EB
+:108D5000EF921A664D7B19E9A2D7423873DE5EB0F6
+:108D60003937CAC8B106FDAD94C08C6AA5DD9B70C9
+:108D7000CF182F076A3B7D6945C61D18F916DB9E83
+:108D80006404117FFBA098A65D205A06B0C2D16C86
+:108D900078538F5E73E36138146BFC8DC8A54F97D1
+:108DA000AF3BB4CE52104BB94439E71D52C857ED12
+:108DB0004FE2D71454D6DA11C867E22EC8E64BC08A
+:108DC0000631A245891E4C2FEF37F254081BB45DC3
+:108DD00036C981F40B3FB337A61D78E9ADF141D414
+:108DE0002A17FA24740B2359D22CD528290F4EE0C8
+:108DF000870BA274B694B6C8CB8E8F988827E442AE
+:108E000039E351544E34BFED064AB816BDC3FFAE28
+:108E100092E6E2F927882A9E60AD0750F6034AB52C
+:108E200098F42C29B98293D35947CC35942E00B7A6
+:108E3000D64D3D9B626F076732BBA1B46A7F7AFC57
+:108E4000831F919568394FA1C75AF5260FAA691259
+:108E50007D5C1C806FEEF3B8C8D973A767AE7F4006
+:108E6000B09EF9E2BCEE0F0EB7A8ED940E46629BE1
+:108E70000757858D94E908C4DD766FEFBA510CC1B0
+:108E80001DA268EA5E03D3805B39422E8BD9F5C3FD
+:108E9000A90BF82C2E57CC892C04206CD71BEB3354
+:108EA000E0ED2D9637C6C5C504B221B963A6A0E68C
+:108EB000C18E652483EE5314D31DBEC30114A9F3E0
+:108EC000439185A4D59F22237E5F34A6BD5FB6DD86
+:108ED0009C4B351F8E50E0B0A543CEBE3E9DBD637A
+:108EE000D1C01E96D9033211B7F4C2FA2CF3424F07
+:108EF0003BF3CA87500CA7772F71AB7AE5C0D7FB3D
+:108F0000299C204CC8C7F000ECF1772D7C1BCB3D91
+:108F1000F71182467549DFD7EC8ECBDE67139108D7
+:108F2000BC287B49BBB601AC5DFC3D101486D6ADB8
+:108F3000D393DB15909805E6DAC2EC8AC7AF92F8B6
+:108F4000B9FA17C8B5F182842B29A5182B7B0A0220
+:108F50000D1F3A648BC9FFE87E8F2CCF999468DF90
+:108F60004E1AB2CA3FFB16C5EC2AB24AF870E48E1C
+:108F7000E40BA8BB0D044C33ACB076354DAECCDC65
+:108F800000A056E5F3320015308A2E06E9234FC7BC
+:108F90001C4F8BA44B997AEE8432F04214E525AA3B
+:108FA0001B5ED52E709D4638500E29B8A0FD324E5E
+:108FB0001F569F82BCAF319B7061F30F003C43D8BA
+:108FC000B51E83E7150A97F7C0F4703F5E47EB12B2
+:108FD00059DBF198A6FB265455D57C970158FDB175
+:108FE0005183D16340AA2112F697C398EB0146AC96
+:108FF000798AC6528DBE3B18696F2986FBE3544DB2
+:109000002966A4D7DDFF54661B608AD17330F6BD94
+:109010006FABCD5230E83D3846C9D15C6A631D481C
+:10902000F877594DFC5E2AE8429E9E00E3D3E05B50
+:10903000E204ED81955EE69879497E611B6287D9ED
+:109040001E6A8B878E2D7A726D22680BB6665CBDA8
+:10905000F2BB054DFB9D069A6BDEF6D4F481A61D8E
+:10906000FD5CD4E02E105ED9DB374EB74C0397DEA3
+:109070000EB6687B33E26DFD5C438A4881481B1362
+:109080007A4C96C2C1BB80CB6D81F1E574B0295D8D
+:10909000A1198DC2A8E129ED0585FE5E43CAE4173A
+:1090A0005E28916E402DB07905069CC62FF704FD11
+:1090B0001F853D189B5E50A5B929046878D1338976
+:1090C000F70CBFE527E99D959BA9DBE1AFA257B857
+:1090D000507D943B81B4F783F17A523DA72FE6AEE1
+:1090E000BD1DDF844433AEAAFF88304E9FBA8C5634
+:1090F000D61AE329E4E0198B5095C37D821B311EFB
+:109100009284072ECA3AB02F6383FD90C5B0437B8B
+:10911000CEB4F05E9D64E51A86CCEDD78CAC6629A2
+:109120006742E4D0B2A115AC80168245E291833F3C
+:10913000EB94F7D2FCA0068648B61D32472A3DA51F
+:1091400062F25FA6A3FBD30F544214B319E9FBE705
+:109150007EC1B50D6C22793ABA87A8EC5D5756A747
+:10916000D9CCBDD9A128C2DD1444E3C003988181C4
+:1091700014FEDB0DD4AD0CBA29A10AEADCFDC0ACAB
+:10918000770156992ED58755C629B7C6730D558CCC
+:10919000AE6552FD7B69F3EF5AE79869441ACDFA40
+:1091A0008D1A56894AFF9E97F634D1AF7C74C49EBF
+:1091B00062199EF94F6BB22F1D7BB3693DCB0E3CFC
+:1091C0009BA4ECBBB032E06BBBB12AB53E030822D6
+:1091D00074068982D002CB4B865595C1F95BDD348C
+:1091E0003711B4CB9140845B6FCCE7E29BDAB0AA35
+:1091F000B2324B7C9BA456DB0AE670F64238FD1077
+:10920000C08E93742447253BA0FF07D888A5889E6D
+:1092100051A0F17F2D84F1522D408C604BAD794BE4
+:1092200041D3DB6E25D715C8AF9201CDF30421637E
+:1092300095FCB668B24EA48BEE99E1768BCB8AE8AA
+:109240004B68496C3F09E5B156295077F133BDB8F9
+:109250004E0433424708D65330A81392ECE4430E31
+:109260008929111FE1A461EBF90380D95C467B6E6B
+:10927000B2485B5E9B1F948516DF11CAC2E34C6740
+:109280004C05BB596372B464681A62B6B1ECFD490F
+:1092900033C8DFE8D595453FAAA19F7C5DAB9047D9
+:1092A000DE3F974ABF2C35C1507D188D09DCA8C917
+:1092B000C4A82936EB32E9A83377C39C345AF0822C
+:1092C000F2E495D2C8EF88B07274F1ACF55FDADFE2
+:1092D00046DAA6D0F1D306F440B974CE042781B1A2
+:1092E000D5FA82FFE58B7F5B63844ADC3AC391C188
+:1092F000508F77BC4EB7326F2AF422B0193BCCA501
+:109300006ED973A5B95E80D8687813A7EAF79C81F7
+:1093100098A267DE69E5FA160B485255BF26C92C9C
+:109320005D22092CDF302DD9EDD750E88D1F6C431D
+:10933000050284747618A590A391CBB705B7CC929B
+:1093400055C8EB9C6DCB3825C92972BFC0657F839A
+:10935000B792093A9B7BF38CCBF35454C0F0FB1FBC
+:10936000490985149D345062665CEDE3F5C415FF30
+:1093700068B0845AD1EDE538C18752B149F1709493
+:10938000545BC119938330AF86A2C8965CC5D906D9
+:1093900000C6E270603608A128283FAF0E35362996
+:1093A0004FC137C0E27A20B62F0D800EA01DCA2D06
+:1093B000D5B1F8A127DF2BED21D84956127B3247D2
+:1093C000E6B34B268656D084C7C1514C17AA31C983
+:1093D0005035AD1DD5EDB2991B25964676B1E1D439
+:1093E000F8FFACB54B332B804B103FBB3BF328C68B
+:1093F0008815D116A720F3E331926473DC90B4F999
+:10940000D4D00A9769D413B8A008FFBB45586A8422
+:1094100003B6177AEFCBF5FD815F3D1D6B8F3AF2F6
+:109420007A8199135C49BBEF5445BD849AA10F23FF
+:10943000CEA8B3D541562B7C8E1F2EA950C36D7478
+:109440002F30C0073EB52E04062CEE7F6980349B7A
+:1094500057CC097C74894D6FC74B2D8A066C3AF343
+:1094600046CEF37FF570DE6C408379D98CF796C6D3
+:10947000C9AA3ED7A64B89C6A98A71CF1F6978476A
+:10948000F8687F78A61AC60A29C8090B5B3D0CBE8E
+:109490008A0DF0D639CC5392C81963AF7A715E9FAA
+:1094A00070AD01FF8C7540467488CD626CABBFAA6D
+:1094B000CE59D66328B9F9EA871ED90395D9096A26
+:1094C000F2D0C847E7429C4D2CCC453EE8714FB1E5
+:1094D000EDBC12D9CB76BEE56DEDB444E71EAD11FF
+:1094E0005425003E0965FFFB43943A6F10CBD185AC
+:1094F000A331FB646FB0E9AE65636E294E1FA4AD66
+:10950000B70A910106B6703C71E4314A7017487A87
+:10951000F7B83941A54FD0EB5E3587FF1F82EA1FB0
+:109520007B0D5F8ACD3BD3DAEC189F4D84CC6F5E08
+:10953000126CC48772495896CFFC22D5D64D3DF6A1
+:1095400044CBA928E7C3BBA30F1010EBFC56D1CE28
+:109550003D4685AF78C438AF379038E9A251604BAB
+:10956000D1906D03842C7E7C07B8891AED35125C8E
+:10957000EE092206865FAE708450940DD9D8FEDFC6
+:109580002A5FFC78D42ED3C8A4B9B852806625AC23
+:1095900027299A8B4104032E570C197B9BB94667E8
+:1095A00096AEB5F200D574DA47410F96E8E66A54F4
+:1095B0008F58A6E37F252DC24C90C1ACAF5191BF0F
+:1095C0004AB9BF1A25286908FC2E6E5F186D7CAF5A
+:1095D000AE480A32556A04EB04AA0664CE7EA59D05
+:1095E000D506EFD47441724E994EECC58BFD8DDAE1
+:1095F0003EFE41077679CCB5B5304A6F0DA14B5789
+:10960000A11993BC94597F01ACB6E764D9F0B77146
+:10961000078A7EF91C52D10FFC5215533D98AE0CAF
+:10962000DBF2D023051E84C8345FDBE676D69F329A
+:10963000A8511AA471F3827C6B947EA616393E9CC5
+:10964000F3AA52EBFC76F62CD4F42DB4FEAFCC7614
+:1096500050526423AA5E25DC8012E520059B191771
+:109660003473FEB024FB10AB37501120102B573849
+:109670000F60A40762FA16E1342CBC8C318B56AB18
+:10968000F9F56C309C9FD037FF55B07228CEB4935B
+:109690001B40C9878678FC707DC7D07E52F3264E6A
+:1096A000C833DC7D799DB521C5681A0309E56ECB09
+:1096B000F2EBF5916E1CE5FAB72D1C0F209345F3E4
+:1096C00044BFC03A91ACE750E6C5A050B8BB555274
+:1096D000D9320E745B310187C911FC1653B1879DD5
+:1096E00022C316C910DFD9F3F37D258576705BA7F9
+:1096F0002F22B74C911460E28ED20B4A4850AF86AD
+:10970000FFC626BB84AFBF2306EC4A1E435CD327AB
+:10971000E8153FFEE6DF513BEC9BDA850895D2BDAC
+:10972000356044BE189FA738CA71FB624A64C2C83C
+:10973000A544F6BC245B8E5867F0FD36DB2C577FC2
+:1097400075684D364167ABF814C8700CD1240DF71D
+:10975000964CFA9FDD904ECEA6CDE06E7E1D57064C
+:109760001BE7A92E23696CD45D6E9BEA6CAB329A21
+:109770002241AFAEA9996AD921A037DE9D645A2251
+:109780005FA50938CBE6C01728B21EDE08A05F32FD
+:109790000ADCB2C3B18E3BB3532FCD91372D25C513
+:1097A0005709634A037D2C9B4AF8A5ABAAB7083B2F
+:1097B0005C8E4D13810741DD78AAD0700917A0890E
+:1097C00006D5F325323296CE81FD14CC967E958057
+:1097D0008CFBA7C7C07D63A4F3801A737A569713D6
+:1097E0007C77CFE14E24C174E4E7A946AAF648E1AC
+:1097F000946DA98F4DDE4B0A5E241F1FC7E7868D2F
+:10980000CAE95A2E292BD89D29F5B0C4493219E549
+:109810002378A85C70F811E587FB6DC731F3F1B7C9
+:109820004152CEA0CFACE496FF5A6CDF79CCE90070
+:1098300004E6CA5566E686B770BAE7CCEEB9D6112B
+:1098400083F14D3F4BA1770D2B081DBE2D08F384EE
+:10985000AD218E91EFE1D4F95BB53642A0B99FC43A
+:10986000C2015CEB4C826CE224FAA9DB0FF5F689AD
+:10987000FC921399C8FCD8BDF92AA1FFAC9412340C
+:10988000C238CD913C10BFA2EA480940C8096F30E8
+:10989000DFDC035B0BCBBE6BDA2B9A55CCC932965F
+:1098A000D15C90C803436CEA3A8486D0F090F04CC7
+:1098B00018A194DA191020AF0CB47FAA7B7007C6E8
+:1098C00021F1D532407BE9B392B23744230F78AB14
+:1098D000E1C7C66CBB54DF8FD0337ABC9BA10E6A44
+:1098E0005A09B91A9B7E173D70FB7B9717E79E803C
+:1098F000B170A5D9E87F826B77700048B90C3E9BA8
+:10990000B2E65E985DA7641F1B4C8A91E8845D26D1
+:109910005B1FA31C4EAA0D51E7523AC7F34662E4FF
+:1099200006308EB9C5EF989D2A01927E74D7CD0876
+:109930008570B8DC0860CE992A5018C6CD33A08651
+:109940007509217446352FEC448674DEA132836597
+:109950009BBB63D8359DB67AD1361FB5615B8A5CF7
+:10996000D1906BADF75F7BC5F9A947678952F4A128
+:10997000555DDC25D0EF840C96A782454FBBEF44A4
+:10998000CA1DF4150C15EF064C12760595916C0363
+:1099900032B07A9916098876DE63FFB3EFD8107B70
+:1099A000132A63C1F7B1CD0D8231D8C245AFB107DB
+:1099B00068989248A5C045812C16453246C9E6589C
+:1099C0005AC07ECD74511952E1EFE13F973052DC1D
+:1099D0008F810E54C78BB2E8D4B863891D35A0EAD5
+:1099E000D9DDD1C688ECE4D8D2B5995412F432C18D
+:1099F0003F36BE4A8A9B94FAAB6A25C29A00A3906E
+:109A0000ABE65A67804D50CD674FA452E2140476FE
+:109A10007CA5FBAA0D4F50AD78D077820EF45DB2D5
+:109A20000DD2EBA6A23F680183A180E79B58773C4B
+:109A30007EDB19C92BA5AFDD07706AB65CF5D29C39
+:109A400004A5E3E2155AE0C952A4186C59F65B87E5
+:109A5000B94432F07C2063A5FCC85B62083554121F
+:109A600070F1796C6076EF94A0819CC63306CC804F
+:109A7000265194C2261B3BADD1CB317257729DFA51
+:109A80003CDDABAAACF57F5C3600EC76772457A6BC
+:109A90000E6A44CEA526F2B6FEA5D354A24632F2F3
+:109AA0006CBBBB3E98EED3E4B86B1CF7327201C6B8
+:109AB000921ABE5F7C9543885ADD69D9E5C6081ABB
+:109AC00013E3FE960080AF3365057F8FF392296F15
+:109AD00066233652CFEF89904858D482E436D49327
+:109AE0009C470E286513E35070769D53D29D5121FB
+:109AF000E3A5E62A2059543B3CFBA075A46C626D9B
+:109B0000611122C6A8641D37D228D7598C83D2335D
+:109B100033342705C7056524FD88D2BA848ADE223E
+:109B2000883A4127A463253820EFF5D8C1A34526FC
+:109B30009F9F698A309A6305ADF61507EC8FE19710
+:109B4000AA740DAD747EF38747A1C3D244A3C37634
+:109B5000EB307A6A154B272BBECA190F96A5E7A1E1
+:109B600040A61870931BF60410E4E6763B95C99561
+:109B700030792F216F8E781243F028103A8B8AFFAC
+:109B800098FB9ACA0257C96796950EFFF8570BBD06
+:109B9000FA79D9E31B6A6456F7166B75DF1D1E0D43
+:109BA00097CC144ECC5480F31A8764980D231B6A0B
+:109BB0009862C52A2CCA041A1AD2C57FE770607E43
+:109BC000701BF472CBF7341E98DA71F60A67020C38
+:109BD00027D3DA53788414089D5C614D4600DCEE8F
+:109BE000361A33AEEE195564539B1F6E2C09FB9E3B
+:109BF0003AB198FED100D7FED8F384FB5CC423674A
+:109C000092566067EC364705BC95CE9351B7B6B512
+:109C1000270A47E26074B0373FE9E602860244EE65
+:109C2000037495C3242316F3BBEF745A0E9BABDD6C
+:109C30000CA900B13701312E2F1797245316199311
+:109C4000C0B97714436CBB480D3EF2CC8259C83B77
+:109C50002B796CCFF646B5937C9A9C185AD8D1B91B
+:109C6000FA399F0A11FEB2EC0EE15088104DD8412E
+:109C70000E50EA42AF8319735CECE399419FF78879
+:109C80000241641701BC87E3E2D6725A2F7874E769
+:109C9000D708397F70545C09089612A4E3036EB2AA
+:109CA0003516F64971C02CEF756E12A2D2728E571E
+:109CB000503BFD33460391409B2D90C67F72BFF809
+:109CC000EB9F42973533E4D5F76050D20D7C70EFAF
+:109CD000F0D87114362CEE300BEA2AA43859E5601E
+:109CE0004AC80EC23C39A11B6EF099A717AA6FB6DD
+:109CF0006A0267761FD9FB09689889861232B2C753
+:109D0000F2290EF16939902F0C86C6E7A21233DBD7
+:109D1000D7CCC7A4A44B7ED54ECDE131A70338D70D
+:109D200079132FDCD606D6CC162BD6FA3853955D90
+:109D30009D300CBFFE215686591076E8148BD474E2
+:109D4000A38325C9164B113B8F255976718287FB5A
+:109D5000792DFD1E9725E720B108708C85C0ECC2D7
+:109D6000910474A7B581C1F490D67A47DDCCF27D19
+:109D70001B394BAD925972BD3118356F82E72307FD
+:109D8000FF86B4DBFA6919AB4E670AA14C32A82BE7
+:109D9000DEEB1C2007F4A014AFFA631937E68F9F9F
+:109DA0006ED0D15F696AF840E60C6B68BF98C98ACB
+:109DB00057CDB8283CDEBF0479440BC6A236760DD9
+:109DC000776D52DDCAA8BE093FB238E2BF337920B1
+:109DD000A878A9AA300F5FAF02785C55E066F767F4
+:109DE00085393A2C1F0DA632CAF2A3D79EB93E93ED
+:109DF0008DBB52015E6562F600915A2BCBB91F1FD5
+:109E000027005671A7DADE2875DD8C6D371D9A03A1
+:109E1000CE12A85A024EF1A7834F371706EF129BB6
+:109E20005734E53A4DE81E8F21EF76DCAF5094C4ED
+:109E3000976324CED8C2437624FCE5199DED9FD1CB
+:109E4000816FE04980047F343B80DD763EB95A075C
+:109E5000FE6F3C99B46CDF6BAF9C4865C1A9DA7D9D
+:109E6000A7EAA56DD8D662536A0D35E928452E5864
+:109E700047FDEC540158F27A0E8F20C0D713D36EF1
+:109E8000EFE6925D2373F618096BE21D597D3BB432
+:109E90005F9AB688E8E9F729F617E7EF38E05798B0
+:109EA000D73FD99D63E6DF4A6611A72E768CA54E73
+:109EB000FBBF2535D918B70B286F95F3EED9E02EE7
+:109EC000CC6383A3FA7022E1E4B75BF66B919BEE5F
+:109ED0002FE00B944A65A3E8DC4C3DA36BB46826E5
+:109EE000208A6E023FD5DA576BEEA5BE2D5945E2AA
+:109EF000DCB54FA53E026D9E5A289EDCD3D0E168AA
+:109F0000E4BEB3FE52734300199E3F6080F2E06DE1
+:109F100042E634E0932D1C102E99C946CBFD2F6BE1
+:109F2000DC11FDD346607691B4E5B9E2FEAC99EA66
+:109F300043D54ECA2C2A9B9AB9BD23C44473873C8F
+:109F40003810E8401191AF55B51A56499CC4169582
+:109F5000336069CB841280F72CE19AE661C1FFBDC2
+:109F6000ABCA7EE9D0F550014295C3C2D279CFAADF
+:109F70009883CE7B0D841B77F1F366EE8C51210420
+:109F8000B6A1006C6288DD8B0EF6C662CC772387A3
+:109F90004B0509DDDB3E533537D1E5E7DD3C46A215
+:109FA000780747BCB0BCDB1C983EFDEE4E78A5BAE6
+:109FB000D0BE13BE5C32B4B9EEC72300EA177FC926
+:109FC0000204F7CA2CA3671A5817DA7AC25767BE79
+:109FD0007CCE35A46FAEEC1CBE6FDD95DAFA8EE058
+:109FE00072FB8C47D74B3976D96B7BB392A3F06F5A
+:109FF000ED7542CDB6017C2CB15C387C4CB3A90721
+:10A00000FC3B8DC668EBAB69595C36013F35AC0D46
+:10A010003BF569B89AFE6FA04D480D37E040E480EB
+:10A0200062B2FB86E0D8FCC0EB61320A487B037861
+:10A03000A9F3C007640B048ECBC5572B5582B08B98
+:10A040002EE094539EB3CE291116812DFF776D57C4
+:10A050002A7143B0ED6F763E280F63E8323F718F6F
+:10A06000D209B89214E26F1987B2DE7C8E5F93BD7D
+:10A0700044FF25A522844E7CDCE46670EF89CFE99D
+:10A0800077AC00014A14243156A891B1B95F5A2126
+:10A09000F66AAD67D8FD41EC3AF1B5BFF419343139
+:10A0A000DDEC993813D105AB2B9B4775C27960FE67
+:10A0B000FE94DBBEB749C8493367ACEB75DFC1AB73
+:10A0C000F3CA1FBA4588DC401161925851F6F0B0CE
+:10A0D000EF54864EB0AEF881BE8BD5D8B3ED49E2D1
+:10A0E00019DACA3E4B9B18CF780547276A5CC466CD
+:10A0F0007C67369517C37885DDFC7A502D52CAEC03
+:10A100006AA3401E998ABFEB660A728E1FB6ADA67F
+:10A11000F986F6B75AFC3190905EA4C0F074C03D49
+:10A1200057C7E298C4A746D682C6CD15F1E15AB208
+:10A130004CF47190A13B31B012E87B9A3B8B7AA62C
+:10A14000AD42FC3EF14F447744DE4FA395CEDD5146
+:10A1500054EF803E8A6F1BC5FB42C5084C519917CE
+:10A16000B826B166DF3BF02C0C7B0C81248CFE857D
+:10A17000FF38F2D325AC9A133F09EA8982FE839B0C
+:10A1800036DF97D6890609D1787A632A4C5B01D5E8
+:10A190006D7AE144DC85E3931198CF1AD18781640D
+:10A1A000875C48CB9A3A20DEDD7CAAD541007C0A48
+:10A1B0009D3383C27FE1667C4B5EE15C154AEF9C78
+:10A1C000B23697C9F2A51F6688AC45AF83FEB6E7E5
+:10A1D000A359377628FFDB595A90AC723BC74D50D4
+:10A1E0003188A166A974FCF4E4D80898C574BA81D2
+:10A1F000A1748F8BD2569440DD28D095743B568A3B
+:10A20000DF4D6FAE3AC287F570B9EEADBC90CDDCD4
+:10A2100093ECDDF79A00E1E381AD280F19E6CE7DDE
+:10A2200041836B5D3B810DDF7938E96687BAD74999
+:10A230005CDB01B051C64351FE8CE10974857B5F44
+:10A240007B008D1E67C08228E0337B7DFD427F75D9
+:10A2500018D96A71BE26DC2B736124F7881BD8CE0F
+:10A260005350D07D7E6B635FB44DBA67CE89ED18D5
+:10A27000977DDC5C69FD2B953DD1293EF1AF9BEDCF
+:10A28000D8C6EA1389F626903F718618EBD73D3081
+:10A290007DAF5FABDC910095ED052627BC216DA25B
+:10A2A00062699C7E03460155E798B7BE0F2B10B438
+:10A2B000ED497D83C6872A3C3F7A476F630C54C9BA
+:10A2C000D868274BD08AF6571438166947A58E10E0
+:10A2D0009C1A7512594E802F6FA9ADB84EF1CE025F
+:10A2E00035C1CEF83AD9B98670A8343FC84868114C
+:10A2F0009789239CB037C4A31C1DF46C42423C33A5
+:10A300007662980CD91B66487E117ACDB048170F3B
+:10A31000F935B4FD9B896F0C6D74B2A3333D0F907A
+:10A32000BC7B10759C630510EE9AD9D6C32B49A04F
+:10A33000FDF12E0BC929D99E536010D774B1819FAE
+:10A340006A3F53370D347AEC8EF3C38CD07FDF45F0
+:10A350005F212E6D456762562FF79A17A7C384A811
+:10A36000B1DBD4A39CAD919A3654CEB3E1A1CC1D00
+:10A370007B4ECDDCC569F55B40AA63576C0A3B0A8E
+:10A38000FCADD3B17A92D7245C3CD2EE87779BABFD
+:10A390009A9AFCB09F11481FD55F93ECAF20A2CCD6
+:10A3A000BB5BE8ECA36525A3DC613D9F4B71D1E36A
+:10A3B000DCB266B99A6B38F0064BF5CAA6035C901E
+:10A3C000A5D54A36EA43B9CD4638F74BC245D3B195
+:10A3D00040045EC3E86D0BD84F056629599F3C3594
+:10A3E000AE336E4FBC0E8BB8F81E7FF1F9B67DA36D
+:10A3F0005249A591899874AF1E6D2AF703505E3DAE
+:10A400001724E0CA48E284FED036455572A3A479E9
+:10A41000E553D3E4B5B38964EB92DCDC18108A4AC7
+:10A420000DF119851472DBAF7A85F365B07E9C9FC0
+:10A43000E74AB864F27C4CB32344EB2C13A7117B9E
+:10A440008C6A0FDE02B1C3CB14A894251084B343E9
+:10A45000339AEFBB7EA129E43F2FCCDE976097684B
+:10A46000A70D24E0E93154B013305F7C0E058C1A3F
+:10A47000A7A3C6BC93A568A5233AD343D010A800D0
+:10A48000B93D6DA72964117D2EB7D061FF8A1BA24B
+:10A4900072D45EC88CF55D2AD2CF53F725BAEAECA8
+:10A4A000B03152C2944B7213006994ABF7745401EB
+:10A4B0009551ABE188542F0BE8CF950B26EFCACE10
+:10A4C00073083CE9C2B5C05AC0439F4A00A1E3F8F3
+:10A4D0006C46F1BD794F00BF5F51B320CB772F3B66
+:10A4E0007ABFCE7D08D1FC6F791CA631D887DD8A72
+:10A4F0003436A9931CDC09E302DBA50F2D81E08A29
+:10A500008DE007CD97896FEB0813017DD0AA86E80F
+:10A51000FFFB806AE6C26CD872F3188737C3F31466
+:10A52000EABB19D9FE779595ABF404434CE83E6637
+:10A53000009BA2BF9CA6B91A34A73C2129A6FE39CC
+:10A54000A8F2B22ECE29EE1D707B1E4D26DC4727C9
+:10A5500020B3924A251EF7C5379CAB97ED320F44C6
+:10A56000F6F25F5F47000B112C618BEAFC2D8277BE
+:10A5700031BC8C89EC31157698F71168900EE7C5DF
+:10A5800074182289861F04433D19B30B9BDD0DDC33
+:10A5900008C287595425EB809771F6AE467F12B5F5
+:10A5A000B606C9C24E39D404DB84CBD31FA9B3ACE1
+:10A5B000D1CFE5A8D70BC539D77A67F9DAE9E05DDD
+:10A5C0007450B5303A6FB9DBC6C890DD17C0F81BC0
+:10A5D0008996D37B2BCF0F6965ABFA0D00595C9D33
+:10A5E0005EAB1A2AE28629C6B10D83592AE92DBC31
+:10A5F000513A7C201B8C50FFC4DDE9ADABD79BC228
+:10A600000B18B129BCD0E4C423D37C3B394A496B35
+:10A610002A416CD0860F7F8D06AB0B593408FC4065
+:10A62000F0082659C1CE4502EEA112D38B86428492
+:10A6300033522014A29154334B5BD19413A19790C1
+:10A6400027245627AB2EAA3B60B1816B5823C9BE85
+:10A65000C44C7A7EB2740C6E39F9E2FDC78BA2D37A
+:10A66000A590C69CDDE7B839C408C48E05C69840DD
+:10A67000872BD79DF9AB57254ADCCF8CFE3F24436F
+:10A68000CB7F9513CF9B5B1C6CA23D67540404E504
+:10A69000FDAB798BA890A98AB61E3F0802180373F8
+:10A6A00028AD06927F30744DBADFB152638C5EE6FE
+:10A6B000EE43C610966AEF964B7F91EAB73B235E56
+:10A6C00098DFF5B8357EC751F36EB4CC03E8167148
+:10A6D000007C4D698261C7AFAD7C73BDB3784E61BC
+:10A6E000B73D73705EA5E374D45B6BCD4827D19BF7
+:10A6F000AA2F1552C9F3A22067D4BB7A4477886F7A
+:10A70000E1C289387BD465A892CE4E5699B0FE68D6
+:10A7100004C52139CE410BEC0A2F39BC11DF72D2AE
+:10A7200021FB471577B1167D3B418AAEF09BA263B2
+:10A73000A8003B6CDA384918B5EC67986C07B6A0EE
+:10A740004392C8868C7A1E7910D419A9A1FB41794D
+:10A7500071792E772A22D825D30476B81458C19F50
+:10A760002461A27145CF91B6CB2D80B8CE3B3BB1D1
+:10A770009B01F7CC72A5F251EE2F1486B2DAE35D9D
+:10A78000A63ABE359D7CD35CBFC277A6F9A998CA0C
+:10A79000B9D922A1D503224E72FD66B4C5FA0D6A5D
+:10A7A0004A4490DAA96EC2D6895551A73483BE14A3
+:10A7B00057897090785B2B996C5C470FE70C1A4BAC
+:10A7C00058B2420A74E952080C776C953F1FB7DB08
+:10A7D000B252F41ECAF81D63410924DB9E489171F0
+:10A7E000B237EC108EEB6F71498CD17C9EBAC442AB
+:10A7F0004FFC3AB622BAA77F639CD572E3B411A787
+:10A800003E85DA285CCA34BAB245F25AE1717677ED
+:10A810005EE400EBAEF544E2B557201DE5BD1F0E2A
+:10A8200027AC1D70DE7A8BEEAD0C279B2DF0E34E2E
+:10A8300071554B18E4DD21C7B103EF7736B6DC5C08
+:10A840008F0C435571999F1C5CBC7067718E72DAD6
+:10A85000D81B5E637FA9833D2F3978AE8FB32FB8A5
+:10A86000EE49563C464840B3D9E04E7D688F2553AB
+:10A87000F6DC8F027A99A08430B257B4DD47DE64EB
+:10A8800061BC043BB98FDDB4AC14C0886B43C56AAE
+:10A89000C79040231A43F3050AC4F3FEBFCF7D8857
+:10A8A000A4A6C1A782FC598FB740CD3173D2200135
+:10A8B000FB8C7473E8AFA0A73218A436BAD871C65F
+:10A8C00046A07E7569B78F1716DF6E66318BF65D11
+:10A8D000A62E5C2DB416E047BFCEAE44214C52618B
+:10A8E000B8F38B3ADE87B480C36BE2D194D279207F
+:10A8F000C9C5A9999F324CEDFE772228B35D8759CF
+:10A90000F79042E7898DAEFBAB9CE2190786129661
+:10A9100028FC7AD76E47BDBCAA9FB9497B8B3EE61F
+:10A92000C3C6020B30D9C8669EA48440AD0FF3267F
+:10A93000270D27CDA1A1DA5F5B48EC5E99A15422D7
+:10A9400054905381BC7D0D02A3E5F6ED2A80136778
+:10A95000A6F1C434C162E0BEACFC85FBF900BE5870
+:10A96000B22A959076BC875360A7E856FEA6E7DA30
+:10A97000F9228BD90C793B07FC3358E9196B664BEC
+:10A98000B9B1070FD5EFEAC46CACE61094312EF9DB
+:10A99000840CF7D78842724AF2132642D698B274D2
+:10A9A00020F1594A3E39A21DFD9C92F70C1B7ECD29
+:10A9B00000A6EAAC55D5289E3A1E788206708B40D8
+:10A9C0007DBA83560A7163030B2BB155807B1B0B39
+:10A9D0008D213DBE0045D8C54BD92E9D40335FEA41
+:10A9E000744AE03890829B02D0AB09C13AC8F9C8DA
+:10A9F00062E26B119044388B8162CFEF986C0591C5
+:10AA0000B842541CF0A1CF20FA245430075A2758DA
+:10AA10000BEDA561997682B2C7CD6F14FFD7327A5C
+:10AA2000BD03ECC52EA49569A4CE3C4489818984DC
+:10AA300062C1131C07FC0A51F8B0B7868D7BFF7EFC
+:10AA400079FA4EF0482A31A2E32E2A2E39257B7658
+:10AA50003F639FF3352DB39B9F005371AC96B49F1A
+:10AA60008A7DC0AD16E9DF806931D6AD21AC6BDFE0
+:10AA7000934213422EEDCB4A805CB55D30B70C8615
+:10AA8000497CF316A72972E68406DBA0CE3AD114DE
+:10AA9000848F6FAA2DE82790ABE0896D3E3C26514C
+:10AAA00025B8D35A1C736D15667A43EF92B8C44922
+:10AAB000325A6E7AF8F8F94938919E258D720DE573
+:10AAC0002A0BE9BB93A1783AF28C93BEEDA171A950
+:10AAD0001ABF4A99B47EF906BD6BF4496282585098
+:10AAE000A185C2F669C28A44BEA4785CA6398A4FA1
+:10AAF0005E0E4C398521146FC5B77FF9F004001242
+:10AB0000C1157DBFF7167F41EBD9BB2C194689CE05
+:10AB1000ABE188586EE5FB196E650BCCDB23EDB11C
+:10AB2000765D51F9F0CE528A10790103409C5207AC
+:10AB3000210D1CFCC92BB292BD8605115DB63E1CD1
+:10AB4000E664D6918DF7D7F0194604C6720FC33468
+:10AB5000AA5C248081D4BF17CD6B5EECBBA04436C9
+:10AB6000302B27F0F902EFD4C62D684395A432C9E3
+:10AB700066E2B1E27CBDED9C109CE8BAD5D24C07F0
+:10AB800077E8BB54287937A481A2E40D724708DE28
+:10AB900080E07543645BA8AF2BA503B1A54E0E847E
+:10ABA000FD32733191191B3BBE13ADF6114D229747
+:10ABB00076F6E48583FD1C1879339850260CDDD099
+:10ABC000615A44CDEE0AA66FDA1A4CB3A6E87010AB
+:10ABD0005A0E88DD2062E5040EDA1DBF6B4D777AD0
+:10ABE0003905D90649A05A9C6D6D4F579B4FE8997E
+:10ABF00050B37CC6EE6222726AE841D09D7759FC60
+:10AC000060AC034135AB4FB857549C65E93E74D3F3
+:10AC10000D7002A12064399BA01FA741706180299B
+:10AC20004E9178EECF265144C05E4E74D1AB54089D
+:10AC30005DB8952FCC633D3E75D60D4C31AE490BBA
+:10AC4000C21BC5DB2323A7A8228D5BE7C0FEBBF791
+:10AC500055013AF3841F845CE2934DFDA898CF0818
+:10AC6000D7664ADDF85DCD41A36EA22BE9841D6055
+:10AC7000FF2FB15DB930DE6001B6D019C48EAA399C
+:10AC8000623945BB6A2C07FC236D9624231E0A2BD0
+:10AC90000CC2925C826B8A0E2AE16216610CF2ACE5
+:10ACA000FEBC4CAF326C77EA045F9660B2BD3F46A3
+:10ACB000E0337ECA45FAA05578065A59060756EF82
+:10ACC000CDBCE53196A3619BC6E2B271EDCECA362A
+:10ACD000DFCA07DFFC219107E51908A48EAD8AF2CF
+:10ACE0005FC361777856B14B2D02434BE99D01E577
+:10ACF0009DB24486C098E8774F90323A4F2C566FF9
+:10AD00004A6FAE3751CC1352ABDC8AFCC1DED45350
+:10AD10005D4715EE628038E3F2A93A8AF02B96B7C8
+:10AD2000E52A21E8F58C24A39AF2D3F5AA4F5CF624
+:10AD30005B4847930FF62C6E72ECBA5E958E9E12AE
+:10AD400080E876412A80C4974E3F018A6823001329
+:10AD50008720BBE82A0B6C044B63DF0C1D06ABD7C6
+:10AD60001739E30F2D3EBC9674545877617B83E707
+:10AD7000D3C83DB7C6C69118F306223BE8D0F07998
+:10AD8000BAE547A89A4A74817801EB6B3843F865B5
+:10AD9000C20106DD76211A31D33805A53198A60AFD
+:10ADA0001BC1509AB100A008468A54E60EF70DC99F
+:10ADB00044AD7FC7754CD2A82BC445271F86FBF333
+:10ADC000A09CD7A399411959F0BC500A07E00E1D69
+:10ADD00000AA92F097EDE1711BD357CB91874851B0
+:10ADE00025ABB6419CE0F6EA3FA74E293114571136
+:10ADF000E9CA9F1C8360FA8CFF57863CD8DA943BE3
+:10AE0000E0AB627970E869826E8DC0F9B0FA6E1EAF
+:10AE1000B2100284800A72C38B6A36B6E4D8FEE7A9
+:10AE200020995AE2F01B5CDDAE7A094C1F95171E83
+:10AE300042F1ACC0ED0A178D4337C9B91B97867034
+:10AE4000AB0D0D7D8AEE29FA0228F9E855B13C0ACE
+:10AE50002CA94419B07D168BDC2633922543CE6C89
+:10AE6000280A6A284C2C1809DA7BF7F5963F438F9D
+:10AE700032A9FA9E133854BB4B9A46C738585451DE
+:10AE8000F4208B921A7893C536D31F3322BE551106
+:10AE9000435FD918861BD943E668C00B3A9C6DD333
+:10AEA0007EF19873D91FA98675469D4CD82B9D7A43
+:10AEB00043EB5EB784470A714817496A112C59AAB7
+:10AEC0009EE6E8DBE3C614A65E179C60536F35CCA4
+:10AED000DE47350EEDAD4BFD8DF9EF7597BC1E8746
+:10AEE0004B500606A987C87EF9DD4166EC369FD82F
+:10AEF000BA4ACF03C29A48A8F45AFECF27387B84B7
+:10AF0000A3700A6B3F44B48FA1F0C7055D8460F164
+:10AF10005DCB0CE1CAFB087C3D2871340E60B28920
+:10AF2000D0A8D92BB342F22AF3F96F02DBCC438CC1
+:10AF3000FC0280F99733FB2005F869FFA37BEF2320
+:10AF40004D26C192B89761F1DA8D85B5982B2E2BDD
+:10AF5000C4BD9A9E5894AC6B7DAF59A33FB18BD9B9
+:10AF60009B3FCEE258B2DFB759993216754ADE5F81
+:10AF70007175FEA0972A2A5446D95F0803B19BC277
+:10AF80004C4E1DFB498EFED1B1B8A9BE80D17E7357
+:10AF900016FD38E3FFB591A1A993C45F2E49177A36
+:10AFA000B7EA7BAA50F9A93E4A0E83D4FE5BD9AE1C
+:10AFB0004D2EE950DAAD5EB82F2FD52119570C88E8
+:10AFC000C77AD83427EC73740571642F101DB60846
+:10AFD000FFECE80FD6556496AE9D2194555A19ACF6
+:10AFE0004A18C564A2684003A70D6950FF8636322F
+:10AFF00083E05102F7C1A9E4323EC81EA6610A2EC1
+:10B000009483A149D927F07B03FC1AEB21C77C3F2D
+:10B01000BFD4D736E4615A17F4C0B8853A3AFAF487
+:10B02000E1A7417EC139E5B362FD26C708D311B15E
+:10B03000D3A50236C23667A7AE59A236DB2443CA6F
+:10B0400030167F11015B3FBC8FA03E8925F145681A
+:10B0500001CA515C206FCA1A054DF25D2D5FA7AF82
+:10B060001C9B241963B8BF0B1AD3C99D2F424BAA4E
+:10B07000741883CE331359D1A1157D92074073F212
+:10B080007BAE60916272870E9E6218219E858ECC87
+:10B09000089D97C5015E0A07424A08BBAF1E1B57B1
+:10B0A000550797F1CA4AA11F3D32445A40A59C6FEB
+:10B0B000226B4AFC96BEA864A232B659F62877CB1A
+:10B0C000B81B0874C4EEBA1152F6E8AC653156A349
+:10B0D0005E30B981E860B9BB8ABC1193B3588F83E5
+:10B0E000B3E745816BC4646D3D00926BA7F591C0D9
+:10B0F0006B0A5419D29068C584709AD582514A8CD3
+:10B10000B3275B64E2D1F32FF8745C0CD5C5A023A0
+:10B11000B249A03E118F670D356E82394600DBA41F
+:10B12000C1D886111B86EAB364839FE5EB136FDCFD
+:10B1300099B8F99B5B8FF8654C8BC778AAE343708D
+:10B140007AD5D31EC4F01479A5FE5751DD8A095C67
+:10B150006B6E1B45872CAEAE05E584DC7A78C8881B
+:10B1600077196AD26BEBD07459D7CFEFF143AF1791
+:10B17000AF3B6D519D1698FB3E644893A59A00CF56
+:10B1800099F2A9C9F78E304CA4ED49B27F88C898CE
+:10B19000150419303D308E455F1E2666A29FFFD8EC
+:10B1A0009397A65C4DC84A8EADB4B9F3B6E4CB2FE5
+:10B1B000640FF416ABA684C8E84D520FE07825B8AA
+:10B1C0004DA798DC7AD3F214A4E8390A87B84C95D5
+:10B1D000249D5397025075C12EFB59D4BE8117563A
+:10B1E000B91BFF8B49CF2F14C4C93EA022C2879838
+:10B1F000D4F5587FAACAE878A1A500605AB85E566F
+:10B200000572C101D93D5CCA59ED6BA8DE1A143F25
+:10B210001F41C0FAFA818490F153E4CB62E165F0FA
+:10B220004E2EE01FA494901B6B88C1910F1A083218
+:10B230004B2B00754F9B0DF454FE3AD59E32F10F07
+:10B24000D9B47F55487148F08C06DBCD1D00E99FCD
+:10B25000BAB46F3D9394584697470F0C18FC20DF03
+:10B26000DC5AE319AA4EDC58B43B8C97C8916B0F9B
+:10B2700048CDC26037F431D51CDAB2EC2A30935590
+:10B28000B2CF97D748E3CA7205C6AA4FE28A45C82B
+:10B29000365AD638664767309752255C80654FAE80
+:10B2A000B525D1165FC3A14788D324845EC0194B4E
+:10B2B000EE4AEFB104258968FBC8DCE573CBB178B1
+:10B2C0005B869FD1099762807E50CCB81073CE35D3
+:10B2D00022E38AE044FBA26B50AF9885344C9D304A
+:10B2E0002BD130FF2C21F664120D357C65204524CE
+:10B2F000587378906AB2CE6BE390885FEECE4B7055
+:10B3000072F7B7D31339DCAB70F754F6A619316A6C
+:10B31000926557E7EF4F2C143F6A63454F77E1A1E1
+:10B32000080E6FA4D7B3B179C83189D4AF9400E4C3
+:10B33000F8555072CD038EBA31362C4DEADA71735E
+:10B34000A1F61F6A115CD8BA7CF1E1B89A6E612B44
+:10B3500093261353ABA1F8E9143D117BF02045D897
+:10B36000FC4C7CACFF4A35F6253D84DB8673A44E4D
+:10B370002AE651A760BA30476121A2AFCE016A81A7
+:10B3800012C0984C014209B20542854838CB984218
+:10B390008866893C10DB3814AE137CA73706B61FCD
+:10B3A0004790956F081533AB87FEF0E54C20C42914
+:10B3B00030CCA0B6AABB2AC13A31850C5B887F5538
+:10B3C000E80BFB8DD65773AC7B7D37212FEF9413A1
+:10B3D00051FF274B2E948761B8F721DEEC297DDBE6
+:10B3E0006EFCEF01A29939CC2BAC8500871B5ABBB0
+:10B3F000A77915487E20E68F02F7CF0509B00F1216
+:10B400003AAE9B17D30A7943FF3451A4EA0F59F798
+:10B410002F212EA3E258D33BA7D8FDE38C8982D8F5
+:10B42000F45CB029DF5CDC34D5C313C464200E9D0A
+:10B430000D4E9390F02C504D2B0FE564B6014AA6AB
+:10B440003C85CCF5E9916A7EB42B7EA7EC0685B9E4
+:10B45000B2ABC42E4F7F68C476FA23BD1A5069EA96
+:10B46000547A249704DC7BE7B11E590E9176292388
+:10B470004A45E505EB0F2E91545C3FC92D8DCFD386
+:10B480006BD495259895ABAB7F8D0B44CFD8035CDF
+:10B49000EAD57059775D9E2403F138F714DC09B3BF
+:10B4A000C4A800AB27EF0E0D821DBB2F731378A627
+:10B4B0008085C6902E46C56DADD8A094855710588E
+:10B4C00005033DF913F7C83D5B9923635197E4F6F3
+:10B4D000D142F09A78F00EAB80BD6B93B68CF472CB
+:10B4E000C512268FC05FFF666EC6B234000B2C59A2
+:10B4F0000D4ABDAF0E60C48BD5226264A7CDC64D88
+:10B50000BA75FEC0141011F56C6E7C1094689C7DA9
+:10B51000A7A8296BD9C42D4FC0D176D85D2F273B62
+:10B52000B2DC63009475AEF224526EF46A3732B71F
+:10B53000371A37387A0FCBE1AB6BF88F59728E160A
+:10B54000D811A0BDA677C68E2CAB983794125C4557
+:10B5500090AD7E370E541833C28EAD37D9CFEA0B7B
+:10B56000C3389CC0043F23B866C48F683A9A7C9065
+:10B5700019EC37E2393BC946635ACB52C345B4ECA8
+:10B58000302F8ACB9CDC8012051890F452FA2E18CA
+:10B59000152598406972ACDCCCD77E68FFA08991F4
+:10B5A00064D8AD62883EDE994381CA9B7E226518CD
+:10B5B000785FF0D870BE820A73BC4126ABAC49E11B
+:10B5C00002512BA656F1F42BFA741C8A8434026AB9
+:10B5D000147500D793EAA49DF5FC06E335E830B571
+:10B5E0000B224414CCC79965CF60810E81AAE3B8C1
+:10B5F000B42BD5BA83A28C115C748011B5A7BC5D45
+:10B60000A8C91A6043BB52F56896756D4AF5234682
+:10B61000E827FE567DF6BBA53CF14A514A9A1C2804
+:10B62000261292D780958EE8B300BF6111EED98BB8
+:10B63000AFD496FAB35C2233E6A211BB6FC4B8CC88
+:10B64000DDEB3D7B60F5030B4830F7AB9F650C9855
+:10B65000CA5C39A54D5814553A79B19D7CF254B065
+:10B660000F4A433BCF0B1848C1A0A561BDF0AC20E9
+:10B670008D94F11F58FA2D78EEC5F07DFD1DC6B2F0
+:10B680004C1FF9DBCA998C27BD0B52922B17B2A322
+:10B69000D962BECC61624EE87AB0D230C8EF1A4CA3
+:10B6A0001322D5C87555E3D9BC83DE03222451B9D2
+:10B6B0008C6B9AB54E98B43884AB317498891D98C8
+:10B6C00098DA2095B16E212D976D2CAEE89E1AACBC
+:10B6D000B8CDA2ED515BFB18D1AA203BD833A08D89
+:10B6E000D8E3EF69010E1479551E7F1C4C2032E31C
+:10B6F000C0F7FC1AF5364A79CD721FB8B4FA326534
+:10B70000D8C6301A3FB6CE9732CBDA6F828124C3C7
+:10B71000004527E685DBAABFFC38A7CC8A81E61165
+:10B7200029B6D864E09A513F15FF08BE1A794DB981
+:10B73000085E2621A25B2B541FDF476D1472F3882D
+:10B74000FDB4E8EF03A4177EC3B4CFAE5F023D5F44
+:10B750000D31ED958E2D4D6CA5CA4CD569C6C6D55B
+:10B7600000A9E4482F0BE169A0EBEF5E3F2E0889AA
+:10B77000BC4CDA4EC880A4B589B0F8CDF20A8E4C24
+:10B780004BEDAABBA1F9A7FD775D157A6F2E0D824F
+:10B79000DAC9598F1538298AD603C77FDA7D5A0648
+:10B7A00071FA57237DE6AF1E47B47CBBA465E13038
+:10B7B0005B3DE5BBF60332C2F3C151DAF1FA943DC9
+:10B7C000E05A26D6AFAC1540F8814FC9FAF5E0AB88
+:10B7D0008B07F45AA94E44619F314397CE6349B415
+:10B7E00053B409A652B29C2542D0F2AF04EEAB2668
+:10B7F0003A375BAC665B7F5DDE6D09C830650F5C18
+:10B800000C8555C794520FDAF84B4C39D373343E3C
+:10B81000E66DB23D638148C1B9719D5C8FF558A555
+:10B820004EE8594A78B6EBB2E53636C10BE7B67F3B
+:10B83000529226DF558CFA3DE9542E47AC50DBDDA1
+:10B84000B94D8161CA2327560475023B111C12A40D
+:10B8500008984AA5263DE90286A8ECEA0F9C7D8A55
+:10B860002669AEF6180711BF95A166D64031C223EE
+:10B870004609CB9B3D3A9CCD64F720E7FA96E1B4AC
+:10B88000B09F8B1A40397A7124B5450D397E8BBD36
+:10B89000320EE09DB577D4AB5CF23C0F7526D35FDA
+:10B8A000022F853391B809FDC033AF8056E9B7291F
+:10B8B0002A915A367CABFA0D6E0ED2B7F797AC5C74
+:10B8C00003742DA809B280B645415B6FBD225F05A8
+:10B8D0002005CC7D154C4E5ECB2AE76AE340AC25B3
+:10B8E000E9E2756A3DB1A515F04BD8C7E65D180AC7
+:10B8F000038CEC2F27D83871DCC38D59B63A7D53B1
+:10B90000F5BAF61FFA51EE10FF0816B1E3AFC2ED1B
+:10B91000BA4E0B5765F8C251E28D16D2250D9BCB5E
+:10B92000EE7808BCB7CDB03E320FB4362DACF1592D
+:10B930009A035425F3B8555FB806D47AF0CE4D5823
+:10B94000D111C92001B0ED31DFA66B9B6F657FB4CB
+:10B95000B87197FDA9A5793912BC4DAFB2D29DD46B
+:10B960002BD1C1F0A38E9E817058CAA561DB4DCE4C
+:10B970000A39CD85FEBCFDADFF5E7B1A59620A9285
+:10B9800087B54BBAC468C44CAA7485A796DFE9CEC4
+:10B99000076295358F1DD12660EEB7D4E5F99DDAA3
+:10B9A00008EBD6E897B222B3E2D596BC08D0531C78
+:10B9B00073D4816F81B6EFF17C96152448914404CD
+:10B9C0002F19FC3876373CF68C4A412EB4A5159ECB
+:10B9D0002877F1C7EDB6226227C98E774D13F9811A
+:10B9E0001008708DCAD5333C7543B219E8F65F97DD
+:10B9F0001B889EDDF75B710E9B5F95EF41678CFEA8
+:10BA0000E1802DCD3386EDF3A95FFEDD2B5BDF8E6C
+:10BA10004FFD40BD768B1AA118B60E1188D09781C4
+:10BA2000EFDBF123A580ECD0976CB91B9A62CBB801
+:10BA30009A347B69360C72A3BAE8C904864F8F35F5
+:10BA4000EC4507B98B01CCB630B1E6C2DA67E74204
+:10BA50003C9D954FB483E86E2A99C168D0FCA6ED51
+:10BA6000B768E3E28D57ACF55232EADBC26002956B
+:10BA700018D97D9DDA4785ADA957921335C449A3DE
+:10BA800028C1DD5A198955287DCAC42227AC1C78E3
+:10BA9000F5C96FDDB3F534C606698FB3F7E2B0A61A
+:10BAA0008D014083B1AD573621D360B9841B566AEE
+:10BAB000D7CE303017A64A838C50E8774980F8609B
+:10BAC000950BDE272B962B69D856A7350B8D6C3B33
+:10BAD00079C14F345BC50E8BE2170976B0F42EE9BD
+:10BAE0003498CDF0202CFDC43E114A3BD9B4C3EAB2
+:10BAF00062C90766B00FE945BCF329574B8EA626ED
+:10BB000053490EAEAD3F517B97C8926AFC97EC2B20
+:10BB100030CA4E76251797C2B238B500A7101C5A06
+:10BB200061D9EFE69E1EEF7DA565301494A8B31A87
+:10BB30001EE7F58B23D381C39FF35D7288F9C2EBB7
+:10BB4000527816CB32072E90FF4139C52AD367E3CE
+:10BB500081C1FAF889F9A73110425F324900F5CD69
+:10BB6000DAF25BED8D770B5F92486A8C2C865BD1A5
+:10BB7000D56671CE591B51E28FD20CB0C5029DD251
+:10BB8000EEFB312B22BD26E36D409BE47B0951CFB8
+:10BB9000430E54949EF015D1DB624E5EE8D0F9DB83
+:10BBA000BB1E23E0DE4A0EB3CF6445C6BA0ED455A1
+:10BBB00028C1E84B8FC4DD62FF49F5115ED5EDFC6D
+:10BBC000FA5B1BCED1B06CB641DE1A494AD9B43704
+:10BBD000ECDAC967C3786FE12FB5804EEA7F621354
+:10BBE000E7AAABCCF0EF98A4FE4600651E64F1E92D
+:10BBF00009B5D13C3F2EDFBAF0C0CDA1448D341F32
+:10BC0000155A3113EC6FD9E7367DB94CFB0BE9DCE3
+:10BC1000930ECC8EA753792C07784F6092E709DFFB
+:10BC2000A3795F23DB3ACE57622250A334C59B0130
+:10BC3000992E5BA7AE53B4E48F954DE4D14F8FCFCF
+:10BC400011FA15FAF4F261908366C7852BF06BA99F
+:10BC5000EF82F1CE7DF233A6843CABE87327F22469
+:10BC6000F8FE95A98E568478918D17F87B6694DF3F
+:10BC7000EB94F09FB29F59D20EB40D6C815DE7C07A
+:10BC8000064B7FF86374E61ED725D5251BFB6AE7B4
+:10BC9000DE9C9B12AAB029E9B5180F80786C422E61
+:10BCA0009CE67A9474C4732F26D20FE44DD59EE897
+:10BCB0004D089B55AA059119EC0586B9EB1D8A44E0
+:10BCC0006A8F776B4EDF7008E8105276499B4AB254
+:10BCD00047456F33360AECA8CCE31C3FA59F097F8C
+:10BCE0007DB1977367D0AF02163A6DFDE6B629B104
+:10BCF000DB3EC27764429ECB0F0DBDDFB7A849C2C1
+:10BD00003537E505C44B871A5AC703CC4C6083937B
+:10BD1000E45532CF395022D0C2EFDEC41081FF5A31
+:10BD2000674E4526FBE32691E9D41138F60C7BECEF
+:10BD300067A899282508F347AF2C6E84869EF7F9EB
+:10BD40004BBC2A973523161267D47B60018474EEAE
+:10BD50001BD3243E10B69EAA4F671D84EC127AF4C2
+:10BD6000ED9224EAE7261C50B29844CAEF4845F702
+:10BD7000DB39F6EAD76DC24C652BF68F39EB613FA4
+:10BD800069FAD1C20CAFFABDDEDFC4882A04A48FE1
+:10BD900024C88A97CF43EE9BC38A3F2C766688A837
+:10BDA000F88B876A617A472188B416F1E940F83B3D
+:10BDB000E6AA980B70437AB826452F0F21521145F9
+:10BDC0003B96E7089882AAA3478F8B84018C0122B7
+:10BDD0003527F218BDBDABD991708052ADE7BCA636
+:10BDE000C32D3201A52812A47B77488A0DE0AA95BD
+:10BDF0007ED07F45E5A2341D46D53435FEFAFACE15
+:10BE00002ED5CFEEBCB4F06B77C8BD3A5CBD3759C8
+:10BE1000DF1A087F02DCB3B83EB2956E24900F3271
+:10BE20003D92657D2CEA8A788BFC7A1610BAE89EE2
+:10BE3000EE96D9C8D271D537B7D32CCE2CBA3A35B5
+:10BE40005B347A197B7DDAEE5375892014238FD603
+:10BE5000050131B93E1DB74F64C883E8A68A376D26
+:10BE6000CAD16B52E83EC58B7DDAA167F1EDEE06D3
+:10BE70006E8346C90F7A614B1BD3DEF632DD6FF459
+:10BE8000BA2A22E9AFE824D19D2D9786A077FBA29C
+:10BE900069D8CD6F2E675260856BAFD5546E997E91
+:10BEA0006162492EE5C84054C03501DF12F82E9476
+:10BEB00001B778A931784AA04F1FD7BDFD563DDBA9
+:10BEC000ADFB127A866102AFFB0BDFFD9B36F405FA
+:10BED000BF45EE38E8324CAFC5CC77EE5165AFB810
+:10BEE0002EDCECB773CC85D242E4F25E77B6A7AB1A
+:10BEF000658098C8479428387B77BB0032308263CE
+:10BF0000528FC9091B3EC4B48995E05F22878454CF
+:10BF1000C66327EC2A4C5AB1145B5782D5112DA960
+:10BF20001885F24C78EED09EFC05BA82057AEEE8D0
+:10BF3000B9D42FCE87F16F1C23CF2392F2291C3561
+:10BF40002CB87A874E0E1FE3179FE4F95C0F10F4AC
+:10BF5000858699FD4AEA45E968ACA66AC4689F9A55
+:10BF600016881E2341033DEC8B0602CF3EB162A230
+:10BF70002488F422D55827804440AD4986E81B85A3
+:10BF800001DA4FC7BF2B7424A6800CE755ADE4053A
+:10BF900038A09B82FC7B908E15725120CD7866066E
+:10BFA000ED6B447B636C1B57147BD930541C89CCDC
+:10BFB00068FFBAB5E96ECF24C4FAD0B23F8D96536C
+:10BFC00028CCD53A66A0D59E2AE07463BD2A9D028E
+:10BFD00046FB406169380D005FBB8C77E076F5DE8B
+:10BFE00018D6BDD96C362F59AD47AA9DC81DA65786
+:10BFF0009A42E6E4641D88C669473A3A0232C7AA03
+:10C0000080EAB5C1ED04E1729F662E607B540DFBA2
+:10C010006B046875E8DA821784B399B7F4945FF11A
+:10C0200026373BFC157BCA7E707E8058A869FE5F70
+:10C03000BEAEDC543F4CB364C50D4195AAF4197AE9
+:10C04000BCC80B2BDA35CB07FD0CAB9A7BD16A2D24
+:10C05000A46C2FB1286D52FFAD9B82E978E42C15BA
+:10C06000F45265D96EB2D297AB020B67B6D8ADD891
+:10C07000B7B5A85DAD48279FB71DA29E65CE061433
+:10C0800012CFB0A876C16C21883E0F5A2278775B18
+:10C09000DE25B3FFD1AFB38C86E7782F912933DA51
+:10C0A000B7401436445248813962D2006B5A9A2400
+:10C0B00006B5AE3AA8AAC409BA48C4F8E68F261154
+:10C0C000A30099C7578EA5FDCB8BD13EB8DE7FB3B9
+:10C0D000BF74F2E617281120871870D133DF60454E
+:10C0E0000788B224B4AE378AC367E9D493B563A98D
+:10C0F0006E8672B4B39E56F56FAD10A20D5683A432
+:10C10000F9466DCC663271146A55C2231F3D49A9A8
+:10C11000CBFB4515E0EE6DB3BBAE4FDE4016E147FD
+:10C12000CED800599C1DE9E66D232AAE5C643D1D06
+:10C13000EBBAED6B4EA1819D1D86F54C7AB145AAF7
+:10C14000183A73FC878FB4ACFE7A755B99AA30936A
+:10C150002C4E04B43A4B2764539F27A8E6ECC874CE
+:10C16000D333A61C41883006ED220DEB43B7B772DE
+:10C170004F36672D20D757F8F649FDF4669CFE72BE
+:10C18000D4745759A2654454F6A072AB18B19ADB27
+:10C1900096ADF7F5639FA2D713CEA035B7179CE4F1
+:10C1A00056E5CE7D7561F8043A269040AA0A252C02
+:10C1B000B1F474CC7BF1C821866D83BC80FC0BFB91
+:10C1C000762BFD74F8DA7B99D6B52EAF8E3C9D7830
+:10C1D0005223F4CCB0D90D581B38D9A6F963A7AABD
+:10C1E0009F3EFBB55EC28C7B96B26CBDAC228D606F
+:10C1F0007D0552ED8B72151762B9CF602E57A5BC25
+:10C20000D3D1ACEB0106A224982C4A290B4D11CFB7
+:10C210005F4D17F916EC5CD5D274DAC3B81D16332E
+:10C22000F517ECEB21F670CBEFBEA9CEABE9A7E595
+:10C230003B3A0BD029036E1266F80E1C2EC8D9614A
+:10C24000BD085DFEBD9D915B3D740E8E9DCB2DEEB8
+:10C25000B8211C2B847396CDFD15BD7A8FD3015C5C
+:10C260002893C510DD43AB88CC4BB27AB8D695B6CF
+:10C270009D14A47762EF80E632184F86F5CC912B9F
+:10C28000D5FFF4E67D7AF884500F0E7D81B3FC195A
+:10C290000D4220FE559F856F01D698EACADA637B6E
+:10C2A000CA2409F46FFC3C7D057CB9396E722318F1
+:10C2B000013A88038A8A211FD932B49676FEA79163
+:10C2C000A53F0EE3C7AAD05DB091198795545CCE07
+:10C2D000A0FB9A05B8775A6A7B4EE107EF61D7E277
+:10C2E000D638C00C517AFE53144FE8ACC0FFE0932F
+:10C2F0003E6135F04A632F10121E347CEE7E3314FB
+:10C3000028556E32C7A5DB91E1CDFE35F9D5F6C2D1
+:10C31000E5C0F268063B309B1FAC7F5533163305F2
+:10C32000DD739B581AD5CF2FAD61A3B4DB06345A09
+:10C330007DC49CB48C34F79E294895553F52339F59
+:10C340004FC1EFBB2A531C5832461C078025705A38
+:10C35000AD1DFE50A3CE4E53661AD2C9642435C11A
+:10C360003653E40B79D655CA5998C1653BFA46E174
+:10C37000D0037CC50A5BD71F98AE1F25BC40D02ACE
+:10C38000965671EE421A48D3244C8C2FE1FF44B0EC
+:10C39000E7CE7B463E4C39C446E0A21D77CA9F2BB0
+:10C3A0003C1E8DD7E118025DA00DF52AC1BF16B85D
+:10C3B0006FD11CF299BEB00CB66273F3CB359EFF01
+:10C3C000F4DA69536DEB0BF7C283FAE3B62780F713
+:10C3D0001ABBE9B3A3AC151F51AC57AE8D23D4D013
+:10C3E00089706C468ADED364315C5A79756ADFD70E
+:10C3F00016401185360EEFEB5E7D710D8A74630C6D
+:10C40000D568715CB55AC6486DB0FBFFC986C0F4EB
+:10C4100059850B61D54B9B513D55DE6D7C438D0499
+:10C420006BBA716DAFF9C56B2A0A9192F7772C1828
+:10C43000BE7896AE1086FF25FA23F8E9B42F49B9E5
+:10C4400019E446252E790A0655ACFDD14D87851095
+:10C450006D236727D4DAB8D0D55ED9F90AD9B1816E
+:10C4600003E15D26121DB23B603E43E38E099E85CB
+:10C470002671A81B50640DA360B3A34A6110A75F87
+:10C48000222E626554D77FA064F5C9D712518E7EE3
+:10C490002BC1916229757342B1E45C5096AECBF327
+:10C4A00052D30916FADD0A03591834F4C1736CCB60
+:10C4B000033B885681118BBFD1D56AAFF98326C063
+:10C4C0004BFDF8C889CB675CD8B1674458B2D8AE89
+:10C4D00085FA8CD35344B9860A1A71B2F51DAF3070
+:10C4E0002130B31DD2E773565C48318EA67C6209B9
+:10C4F00077394BDD501287CA2068449DF5C598E313
+:10C50000D39E8CBD5D80B6EE0D6073146669665770
+:10C5100092FC8B2955E374F80C5EC55A03918ECFBB
+:10C52000BBAE5C819CA801921F5D653D631BA22C84
+:10C53000083C2AAEEB0251087A5DF21A5DACAC4FB2
+:10C5400055614373A0B1B006FB23ABA454947D4660
+:10C55000E07822E2C265C9B0A97009301A5D225A9A
+:10C56000D304F917891F5C3027347149D0818C6E50
+:10C57000C893852BB19050FCC4DCF4CD6F937CE55F
+:10C5800078CD0CF03DE30721CC6E842B48DE7BD0C8
+:10C5900060B64CEAFF2C87120E40B9C481A045B5A5
+:10C5A000215A0FCF3C8457E538B3D717FDC87A1509
+:10C5B000CABEA5695C21B882C7B363A9FF0A95DA30
+:10C5C000D7F40116846EB4F95918D36B642B88B272
+:10C5D000D431F27CD0886D79A0EEDBD855894BE15F
+:10C5E00096F1FD38CA376DE845EE8B38504008BFEC
+:10C5F0008A77BF36F4DBF5132C79D22C626E90F378
+:10C60000995E9CFA96C5E403B500DD94BE4BCFD588
+:10C61000896E3E8DDDB36189EBA17EE827DF337B38
+:10C62000830E1C9DA8CC153E755ED9DDB7E326D4DC
+:10C63000EAEF54214482DCF975E5DE36427AEDBA40
+:10C640008BDAE8C47A5B26982D8587D96FC8219E3E
+:10C65000077EA15A567DF7CF7387D0522B4770259E
+:10C660009C363AF7BDC0CF375254A1FD69383C899A
+:10C67000940B132EC5F7734506ACADDD44587B4FC4
+:10C6800062CFD2F2B187C218E611C87B79F42A953D
+:10C690001DE54599C28630C3F2DE6F354A50E298F7
+:10C6A000FC1488239743BB9E588D6E3F22588B07FE
+:10C6B000EDCC41D7FE5AA907CDF8B50EECBE2F85BB
+:10C6C000DA2BC398B8FB7A895FF8DCEE3168B3D116
+:10C6D0000A3A3D7A80D54D77B9D5DEA8CE6D73C6BE
+:10C6E000CE254506C0F88A9C2FC5E05CEB1FA273DF
+:10C6F00014AAD420D30E71D0DA48291FA0953B0785
+:10C700005F40A25CCD5A02C2FC5ED9E848AA3CDE7A
+:10C710003A08B0ED4AE156410FBAD552F270C378EB
+:10C7200089D8EEC56867484A740640C7E1F228A573
+:10C73000E03D1FB14CDE9CAA5E54691ECB6C19A56E
+:10C74000A52ECE6E4939AB761FB1DD92B8813E661B
+:10C7500012B2A5FECC5841CEDB0EF6EAB1A0E462DF
+:10C76000F27C8693E2BC68CBD316915FCAD5654450
+:10C77000FCE0211999EC96C170C08D2E4A75165EA9
+:10C7800003D5ECE1AC4BC544217D4089F546CBD2C5
+:10C79000FF36BDEF3ADF34803329F61709ACC00805
+:10C7A000C224BF5710E4DFBC2D8A2B5DFE0BA5A66B
+:10C7B0000EF6A4B55CD173D293DB86586AF781A7D5
+:10C7C0000CC0146F67957F0F72A2252E43CA9F0D70
+:10C7D0009EC1BDEA76DDAD8C4DD02374F2B0F08100
+:10C7E00079CD7BCF0BA1B8ACDDB8513721A92E5440
+:10C7F0002FB167E754511A330B775B1F66C99B70E3
+:10C80000CA316C58FE5605FB2037450555A5906D7D
+:10C810007610ACBDED90A5ED373544C3984BDFF8ED
+:10C820007B2FA2C5837E4FCCFA65603F73B38CE14A
+:10C8300025DDC879CDCAAAB8CEA700681C22BDBA2A
+:10C840006E24D7A535827361FB5ABF5C5456C2C8AB
+:10C8500003FE10B71A8D4266A3A8B05CE3988192DC
+:10C86000E0BB5F5F82BB79118439394FF7A0253B6C
+:10C870007E6FFF35878CE8D9E5F915CA15E1ECDB49
+:10C88000DEB66C8A578620C6C98F8C675C3D1882DD
+:10C8900048667D20A06AFFF08604CF79B8B4CFDA6D
+:10C8A00054B730B4C25A112646B1E1572ED9B860F8
+:10C8B000B9A5F50DA42C4D9FDAE79D7252B12478ED
+:10C8C000A468933BB7E81D0A86CB977D64C87A6855
+:10C8D000C11174B8BF73BC8EA81A210DC0A68456AE
+:10C8E000B56844412EB115F1F6EFFDDC75932E4786
+:10C8F0001A97848635C46A1375BB428321600A8BFC
+:10C900004D0F73B33F023004D40A702A4BA02E6837
+:10C910007F318B3A318163377A4F6D2C0FC35EC5FF
+:10C92000B7F7575D0493D58756A84D45F86B36ED9C
+:10C930000D278D5D2E8A80E5E661160EAF8848765C
+:10C9400092EB49F801AF3E4B992AEF58A5B6EC257A
+:10C95000EAB9426169A707CC5CB2C3E084B6A9A674
+:10C96000512E9451C459C5D73E2E4A5C0A26FAC7A7
+:10C9700013499E6CE16C4074B95D687614CC9000EC
+:10C980003523E5E70EF23815F92EFECF13BE4BA77F
+:10C99000B2F55E41955759C77033B9DBA80237A885
+:10C9A000EB4D03C991B6DCFF7042A8BAB0A1E31108
+:10C9B000C74A8C2A1DBBABA888989D4CBBB57D602F
+:10C9C000711FDE2BCEE0F03076A8D82A119F83DECF
+:10C9D0001A3A5BBC9F4A7610B8EA51A94507EBBDED
+:10C9E0006D7F08D597169AA12B45DCBBFBC6F4BD1D
+:10C9F0005D741658EB7BD4928007EEFD50E2DE3674
+:10CA0000277D288B72CCB98CBD60034A498A72930A
+:10CA1000D2C0841DA7E4FC58D5AE3DD8970050E89D
+:10CA20007116BD270C36EB44099AABFEDBBD1F3AED
+:10CA30000ECE49DEAF5A24E88C06A3CA9513BF8CEC
+:10CA40007C2D8C1E0F5AC73F11D3612C72CB154021
+:10CA5000CED5AB5DB606F74E177B28F6552CC1D95F
+:10CA60007287A9370C60472FE0DA26EEC8783DBC04
+:10CA7000B96FD953A7E8A14906E1D9B1CA5BC0B7DC
+:10CA800070E10BC6532563CF48BE6A059F4DFF8AF0
+:10CA900069C26CA59B030366E0586B075AE40B76EA
+:10CAA000DFDF31905490083DA76843E8A0A9015109
+:10CAB000330C2A0638BE9646A44EC6F46B206BC0D3
+:10CAC0001877380A66B1700678C9FAC5385E4A5CCC
+:10CAD0007A8AD1145BA1A01E1239030829BCB9E6D9
+:10CAE0000E4FCDC972F3B93A29CAA361E59D8615E7
+:10CAF0005704CA0CE69A1271F6F21F9F2FC83F4ED8
+:10CB000041385E4E4326AD45E14846A41FF0352826
+:10CB1000E5AAC32CDFEA0CFB636D0CCD67B2278D51
+:10CB200010A5B3A34C8D954CBA6F821DD78E4E9B2A
+:10CB3000B2F65B7D87F687B787B6DB5D5AFB8D7EE5
+:10CB4000359068A60C41969DC238C8B0327A91FAE9
+:10CB500081FA0D9432F31126EB0CFA849E88427E02
+:10CB600003846C10A7CF9E32363F59E57701118FB1
+:10CB70007973C92DBD7D9AC4C8808424F6335515B8
+:10CB800006F534C2CA4B44295C92F0A35B4A5C00B0
+:10CB9000A0F9E64DB871620C69CABE34CE1127BC4B
+:10CBA0007FE6A60FA6AFF7D6C56A167103FC5AE753
+:10CBB0007DB74704784F8CAC337F41B81B16232ECA
+:10CBC00099BF2EB77E29F91805B5D333011A5972CA
+:10CBD000C55D70605660533B9F20C31C31FE010948
+:10CBE000BC8641CCD046B7B270236FBE63EC73D025
+:10CBF000096047460561A8FCE9184E9C533F72E561
+:10CC0000D7A0F2D44C0BA1886118945DFDC45830B4
+:10CC10000673FFF987EB40FEA787D90E1BE3E9E116
+:10CC200028E6FA2D4B6ADC94C17F444801FA89F664
+:10CC300083F8B841F4083EAE4BB2A6D0E2F154F806
+:10CC400063B45B6223AD9D547D6095C521DA1D7E82
+:10CC50007DC9B279CFCA02829DCC82308927F37711
+:10CC6000DA80BE8FA94F5281BA842C6B4594779796
+:10CC70000A6E1D92806F045AA8A477E00A70325D94
+:10CC8000BABE81671ACA1780CCC0AC78563596CC2C
+:10CC9000ABA7D8F854EC8010DA2C69DA519BF43A3F
+:10CCA000E0F3923480C4736C6D73361CC9081CABFE
+:10CCB000AC08C860A38EB4299679DC35EEEACE12B2
+:10CCC00082CFB85B44AC451ED434F6F34C3272AC20
+:10CCD000E84FD2F60F0C96642D2A1D5C02B469D180
+:10CCE00064C80D55752F6BFB41CFAAD55BC42EE8E8
+:10CCF000054FFEEC338D2CBD6D6E88EA365B50F728
+:10CD00006C1F03B84D4244A750EA8B270FA6FD2E97
+:10CD10002CB1F4D7A65E090117A67F605DF62C0A38
+:10CD20007E296B496118CDADA39EC6FCF3FE195B4D
+:10CD30002EF3CC0DAB72B0CCB1422FB0807D987287
+:10CD4000FB0024E86FF8925278272AF4AA868B46D3
+:10CD5000DA5F97EF94E581750C1F96AE762957E759
+:10CD6000236BB2016D1BE76E68F7F7E6A3B7742B70
+:10CD7000A2D956CFD93D48AE65B19DD638A2B535BA
+:10CD8000D37435AAF239AD415F4DD398E20A097BDD
+:10CD9000815F433E813F31F399FF131243F0BE9808
+:10CDA0009E23F52E0DE36C4938187ADDF4801008C7
+:10CDB000C1E28D0B7C96A096108D4DBDF1902B3E5F
+:10CDC000748D75C662E974771ED53B97D29D245247
+:10CDD0002EBB6EA2B06F52F3F9399BFA466C77F313
+:10CDE000BDA8BA01CC8FD3BEAC8A9769256C6413F9
+:10CDF000BDC706D4CEC84FA3C43D2B0582D1D2E611
+:10CE00003203AAC1B958177B06C71478E2645707E2
+:10CE1000FCD5FEA8293D406ECB485DA50C12CAE8A2
+:10CE2000113E81CBD3E022F7F810F76EB861F45BC6
+:10CE3000482F2631E44BF16087E2A02B94FFF09855
+:10CE40008535AC7E48C4AB16825CBA8571A0B3351B
+:10CE5000D416A531A910E4C06E04D581C55BBDBE52
+:10CE60000CA1A36745E4E70000313F044D8A40EC84
+:10CE7000423D2B7B803AA59AD398CD1072CBA377F5
+:10CE8000E143837E73033712BB01A1D3AFDDF5AC61
+:10CE9000ABBF42C4138D6B767182DAFA9A8ED69448
+:10CEA000E9C50A9A8D486D1C54A8726C072C22663D
+:10CEB0005D8031DD1FA3374A69CFE3EB50E77E3F4A
+:10CEC000C5E32EE152402E52F027326D466DAA88FE
+:10CED0008EB71ACCC5E9CE955E45C8A3D691B23DB2
+:10CEE000EA26125BDFE429D8DEBBF7FC6CF0E7D062
+:10CEF000DCD848331AFCCDAEC951564C9851E5AA3E
+:10CF00008E7B633215C725EB953A6799A20F982857
+:10CF1000C3275C6B3A92DB174CCC5A54F941FC8125
+:10CF2000B07A5CB0AA3B19FDDCA73457CB18E03BC4
+:10CF30007213D1B93EE956F3BFDDD510A83CEBD44E
+:10CF4000EFFA8DF0DE25919C1E934C077AC8057C84
+:10CF500023CE0D470C767E27FA3B8461D37F347253
+:10CF6000735F10BF8059FFDA900B02588F6A2CFB59
+:10CF70008314F3E80F7EA255328E80B8531EBB8E09
+:10CF80000C94CC4B0ECF571D0C79DA8C11AD8F9EC3
+:10CF9000C547E72A8A452B2D78BC5CA5731BE4C3E3
+:10CFA0004C70B1A0EEF4099CA7DBD215BFF21DF0C6
+:10CFB000D1D5DA2FE23366E2E6CD0EE981C64044F0
+:10CFC000A2679DC9065F59F3932C76B93766D931AC
+:10CFD000A88B2D1E9B3D63E974911BC828E35F0855
+:10CFE00053BD5334753ECFB6A230F5C919A12C629A
+:10CFF00015848AC9C9F8F5E29F3F0E68EDB068EA6A
+:10D0000099B048E2601F6DB0362F222F217BAD32E0
+:10D01000C92CEE84128A385944929EA6BEE625A7F2
+:10D02000FC4A0B10E1F9F0D72F4A9AAA33C9C1176D
+:10D030004359BDB39434388DB5CDD5593CAFA521F6
+:10D040009993A8425431E6067E765493AD0A3D4743
+:10D05000D983321F51F453384207262027058EA664
+:10D06000F3B5DA74557E8F450BF3AFA350ABDEBB3F
+:10D070002C3F1677596115FADBAB637EE7E95681E1
+:10D08000060DBA6568691C5E562E36F1A26D713BBD
+:10D09000ECCF3938E53C7F797AAEBFCEA5FC90B6AF
+:10D0A000F337D892D1CB2670234ACB071291FD4D8E
+:10D0B000FA2BB4E8B5E4CEDBB0E673693C2DBDB124
+:10D0C00048BBCBB2545C1ADCD2632197905EBFFEA2
+:10D0D0006CB9D9008CF1BD26718DEB1F1A2968003F
+:10D0E00015D4720A19870248795FD83C97A18CCE73
+:10D0F000EF3CE32A594857E82F6BCAEF06371AD49A
+:10D10000BB0BD5B8E25D90260B637DC222911B0A52
+:10D110000412DE822707F9462547F6F3AC9D8D936E
+:10D12000334DA129BBEE20EA7EA3012FA6B2918543
+:10D13000DC988617EDC9194FBF89F9F1D67F0F8D9D
+:10D14000F8447EF806A89643BCFDC741979BDD9640
+:10D15000DA182BFE65C571E6366A129CD5901E81E1
+:10D160001EA29A61227FB91FD42F930ADDF4C02436
+:10D17000FC22D9F1F96E59D77FEF287624FD35E4EA
+:10D18000C2F34E7322217DB548A6C7E409A26E9F63
+:10D1900017207D7180E29F43C84A48728065C0B203
+:10D1A0004A04D6113C1809C0B9641B093127333B26
+:10D1B000F54BD39874678ABDFAB420537DDC67358C
+:10D1C00000C047BDF59BA1AF29ECB7CB27DE09FE18
+:10D1D00032E2F264BEAD85037FBE6134F0C0BC8331
+:10D1E00099DF5B20E006FFB2E814895673B07AB489
+:10D1F0001AA67FEDA164F74F711AD43F69F4340386
+:10D20000B17F7FBABD7E0C8E5E75B0E4F3135276AB
+:10D21000610BDC39FAFA430D493BA74B0B51C7EDC3
+:10D220008D7344C3272FBE1AA095C84078ABC3CED8
+:10D23000135C36B3939B260DCA3E16C86B2881BB80
+:10D240007021291EEECAC6CBF867AC75FFEBBF6034
+:10D25000EE622D3083DB2B2986D08CF0B5A41B1A0F
+:10D2600023403A6BB24447FC602B7AEA5259CD6DA9
+:10D27000A663CC6226CE2FE9A9466A36925FD774A0
+:10D280000045E6635ABC2F81E775B4C4880B683A41
+:10D2900090DC01845A01CEB9F15A8FD8337610F55B
+:10D2A0005AB5D1EE03CB610F9FDAA14E4FFEE2F4E7
+:10D2B0000E323CAFE025D2BFB5DA9BE981F8E12B15
+:10D2C0002DF5A9D6CB94F63C3B79245D5F5571D200
+:10D2D000CB80A0503A2EAEBCADA205AC0CF092DFD4
+:10D2E0002CF412A3CC91A3E701975EF75FF9A1D4C8
+:10D2F000E36D6B526157B7B729385BA7040E22BEA6
+:10D30000245465C36681FA69DC42D0C4C74183CD29
+:10D31000D8E2E925FD5D4E7070F2FA137CA359C581
+:10D3200077C7A9A9EBA846C9B669663258438F5694
+:10D33000B665146E83D6BCCC8AE1938150596419CA
+:10D340009AD56921E641488F4B3D3A08D3E7728B65
+:10D3500070C52EFD91B2FFBA6FFB31C59F117D489C
+:10D36000058006F3A103AE82AB7704B35FDE3655CA
+:10D370005232432D76888DBAC6141BE2182EA34F65
+:10D38000BDA1F3DFEE30FD5182699AD4063BA78937
+:10D3900054D916A3CCA55FCF3FD27EF99B8A74598E
+:10D3A000C86D89F9F8750158E5EF30C5BBBC018936
+:10D3B000A7B16957EFE577FE390F93F7E36257712D
+:10D3C000286B30A4983679B2855C92F1E76FD3D997
+:10D3D0001E9B0C1DE86E0D73BE2F5FE742CC3B1702
+:10D3E000145FC8E98D0A3712E0601DF1D21067F3AF
+:10D3F000836403D7660C11900D23954B54AE53787C
+:10D400002205E3D889D572DFEF3B36A625AD591E3C
+:10D410008D6BD505474A073A781FD3D7535C45959E
+:10D4200053BD139A9B57C2CCDBD7AEA42FE2660F35
+:10D43000CAFB2724D1351ED49DC6154C2090051259
+:10D44000F10741C92426AC2ADF06E5096F017A5BA2
+:10D45000C4465BE094611D039E7EE5351DF7328F67
+:10D46000C32828E497D242E2EFD064DC8273C9F685
+:10D4700009EC5B47EBBBA7C5D63EB8B1319431711F
+:10D48000DC1E532F5B3FD60E2488C949C375E2D7F3
+:10D49000320044E2845E4169024D4FB14EC3BCDCB0
+:10D4A000ABAA5F136D44C3564B83664983729E7962
+:10D4B000BF4A316B868ABF39E927F4F36ACB7C37E0
+:10D4C000F853789B0312A06FFD4C4BEC4BED731A95
+:10D4D000CEFC6FC3FC42A8F54BA68034DFFCE79B73
+:10D4E000C3A09EC89F5E923BB05659425D204AC57C
+:10D4F0006D7387745FD3AF9D0AF67AAEE090C91959
+:10D5000079F2C73DA2F12F824FF2430C3414778297
+:10D51000730175E9B6EB57AE6A8BDDDF20C6108B61
+:10D5200087E7C284EEDEB0423A101DBF8E430EF490
+:10D530003D729962D4D2C21F41EAFA50D127054404
+:10D5400000CD0199409D5B10A4DECAA1BE912EEAD8
+:10D5500040F6B056584B7CA6B362C7D3B0500833E0
+:10D56000BCD13AAB6859C0A3145160B7376ABB6FDE
+:10D570002BBD931192590752B8A5E1469DA871C6DB
+:10D58000E38111C838479CEAEC357C6638DE94AEFE
+:10D59000FB5EA590B8BECDD07526B73CE90E8D30A8
+:10D5A0009BE3CD59DD7AD6FE7AC0A8317173C6D21D
+:10D5B000A2CF75F949F336553D736677F35497ADAD
+:10D5C000A4EFA40CDEB2D2DA5E06E9AFF1ACB1038F
+:10D5D000FE606A0067729CEFC07CA081E66E35F148
+:10D5E000B6FB4E4D709E032FE2FF4CC84B0702CB9B
+:10D5F0002422917C882891DB7CF8AC7F9BCA79B28D
+:10D60000C630B3AF4A2034BE4EADE82EC27A604C6D
+:10D61000F4595456D0E1E8A80C310A19296BB72205
+:10D62000A37C05C24356982C5EE0E53332C9938B48
+:10D630008824A6F65F621CC276BA16435458A89690
+:10D640008DDBFD3990CCFEF24547D5B0480ED7A012
+:10D65000C11894B668B6E5C29EE6869E1E62A4A472
+:10D660005F683FCFC8D184F884BAFC36C7678BD0D7
+:10D67000D936BDE80111A1D24D65CFFC75F7DCA10B
+:10D680007C28D501340AD45AECB6D35A57FB4D52F4
+:10D690009848541BFB3CF93872F041248392BC9F9C
+:10D6A00051C8E921ED99FE76AE6C1F4B85DE49EE3F
+:10D6B000D15196CF1852CF00128F0D4579CF6D3AC8
+:10D6C000FCCE0FE9789A778411F9A319D58453A970
+:10D6D000071FEEF82663457D533986760DE35D70AE
+:10D6E0005B78065E2EF2940F8BF4457A04EC1D0CE9
+:10D6F000728C7B3D17594B59C92F54EF65CCB3BF82
+:10D7000073062B9B9E8A6D09ADA63601DC6D07CD95
+:10D71000841F590D0FA41D032388099EA534D2230D
+:10D7200017C78AF8DFC10B5B03B5A2A1A02447315C
+:10D73000A26D76228553F13DDB630F872C33357262
+:10D74000578991EC4459353DD9C3A1F19DC3B6A584
+:10D75000C85DE4016DFD6F65AB8397B1141F00B127
+:10D76000F7D54A1068A8D0EF3964798DF6371337AA
+:10D7700029010C0A6493E235140FDF2AD971F0F7FE
+:10D780002FF5F6F9E5525F09EBCCAFB8DC2A7A53F6
+:10D7900073A515925E75D6366F44468BA0B925A346
+:10D7A0004718D691413442BA226840AC97F7D02E40
+:10D7B000FB938D689EBC3BD7071AD80ABA6C0076DB
+:10D7C000473651A3BD8BF423D09CC5A754965CD19A
+:10D7D0008A0B2D0375CE1BD71B0BA48A2D63FAAFC2
+:10D7E000DB1ACBE380C9741ABB1DA6216638AFCE05
+:10D7F000B5138CC60FA9095FABA3DC347E3B9A94AA
+:10D80000D2BAB995FA1C3870A60EE3DFE995898C77
+:10D81000419DF76CDEE56456E3BA60A3EAD3C13BF1
+:10D82000BF2440DC9686DAEC4874218B0CB70205E5
+:10D8300090EA2EE18BEEE597AD71CE4C3ED2BB095E
+:10D840009964FEC1636C4C391BB4541927B7F0813D
+:10D850004398F8D32DAACF719B253B3FFFD0537936
+:10D86000733B3315500BF161F715925E4F4A94AF3D
+:10D87000DCA5E6A598A2437968512FFAD79F04A3A7
+:10D88000DD929D3ACAA5930ECA9BC2C6E19B3D8F0D
+:10D89000FC1A8223E5E969CD700864A62C7A18A1E8
+:10D8A00057F404BCDDCBCD43DF893BC73E6174EB4D
+:10D8B0006439915A6E52A5254A00372E6531D960D8
+:10D8C0002C95D19AD4CC7495FD490C4F270A7C3DF8
+:10D8D0007881D8A29A2BB927B38A75BC4E4B5AAE21
+:10D8E00031677CE21030738864B8435F8D7E54608A
+:10D8F00042F5AD00B61E161C5DC2F87ADFB9FCB465
+:10D90000766129ED63B04C0F156CD1ECDE04750621
+:10D91000A01923021E3ECC1A09EB2CE5666493B1D4
+:10D92000B5C81520B34C87DF6AB8DEAEAC05102F42
+:10D9300070CBD6098F85D484A8B6ECE6F33DE0FD24
+:10D9400039F32478E2ACB21E5657DB63B01F5B415B
+:10D95000B44DAE3E68966B377C748BBC50A844596E
+:10D960007C2EAF8F2E1C02D9422C3C6B181F29F243
+:10D97000E149736136FAF2DE08E6738DB29209CBA3
+:10D98000A3344EDB7F85A3EE0448512BF891C0876A
+:10D990009D336FB337D1BE62CA01D8335669AC2705
+:10D9A000C71710F7DECA6849868F44077B90D938BD
+:10D9B000E96F0DCB22054FAE3716516EB77CE3F8F9
+:10D9C00017A2255F5C496E00FC363E86A143B2B3C8
+:10D9D000F545D787D92C9056F4BC513237ED6927DD
+:10D9E000776D7C0D5F5E0FA2BC3F8F2B60E4966C61
+:10D9F000209468C4738226BDD19EAFBF8D4A200596
+:10DA0000F15245BF0C5F141C18A8F34127C33368BB
+:10DA1000384E2893A9442864C1FC958B845CC8D7F0
+:10DA2000806D74C3C9CC8343CCAEAAABAD00966401
+:10DA30004D0537E2AB600C6C8D4BE84E064F53F34F
+:10DA400043FC420DE27540B18C1E34AD9DEDE1A664
+:10DA50004103F60173F6D5DDFA18EFB86B60A9A0A3
+:10DA60007A37F45021D16CCDB07BF25844FE12725B
+:10DA7000EC1B3C92DD127B7EF13A8C99C39771A22C
+:10DA8000F1DDF7B02F36A742A1D1F1F9B38F88DDD0
+:10DA9000CF3C5035A9ECD62586F018D34AEA2D4460
+:10DAA000DF33A5BA830411CAF08B67802C7F42BD97
+:10DAB0009ADB4C7A43F9DFA467E35D575C9F6819F2
+:10DAC000102ABD5B581DB649A15C521051AFEB3D09
+:10DAD000EC0A11F5993359BCB468FA0E3F877F02FE
+:10DAE000FBEC89C8B6D6543D5D1DC9A158EFF4F5CD
+:10DAF00054D6F029C06DED20FD6C9DA64F3D618E82
+:10DB00001A01B6436FC24EBC95430F1277F82D75BC
+:10DB1000C92B3AA30086B53CB888FDF2BA3B6B66C8
+:10DB2000E76D4C8DFDE9DAAAC5A7463A26735C90ED
+:10DB3000D774DE49461E3E63157D7B6A565121D55A
+:10DB4000A48ED3896CBC06ACDE20764FDD9E5C696A
+:10DB50003047AE4CCAB5DB6086C2C8090F22E991D6
+:10DB60004F423DCB0A46601E2ABF8AF93549F0A2D2
+:10DB7000BC3DB53FE02A5EDED88F3503B4B3DE018D
+:10DB80009474F0625B3BC9F930AF727B245A836AAC
+:10DB900023D76AAED9FBEE1A919C601E42DE5692E4
+:10DBA0003AACB96AB139ADEFC24E2BF7E714B8E51C
+:10DBB00024D6D1CA92FED6A1F9721C7C22301D83D4
+:10DBC0002AB8689A9AE70C54F8141CF7F5892C4582
+:10DBD0001AE2997A2BC286FDE03C613D609246D400
+:10DBE0008A7C5EF28586EBEE173E6DE4420A36C60D
+:10DBF000F759C684FCB6FF2E2C770A321B5674BD2B
+:10DC000027936D3ADCF5ADF1AD3B78BC854DF94A13
+:10DC1000026B39EB7844C218DBF29C01087CFD6B87
+:10DC2000B5098423C62795B472D603F3DA7D7DD176
+:10DC3000E486DF7C93DD8D8D7FB7451F4C2BADAA2D
+:10DC40002B5DA7A07BF7EAA07750AEEFAC7F13A8BF
+:10DC5000CC6BBB70D4F3753D1C4A3EFF1EE5DECB9A
+:10DC600041FE8239BBBDC68FEFDA84C462DF94FC0B
+:10DC700023208ED59B60CBB62EB4A744A956115C49
+:10DC8000E6F3C049FF5E4ABEB05F45B7B90B9406E4
+:10DC90001FB020E453AA7B61FB491A9CBCA378E81F
+:10DCA0002922F27DA8E614DEF3A4170EC87B0A0C25
+:10DCB00031144C1AC2A1269BC21F43A0C9AEF13F2A
+:10DCC000AC8F7A10E2E7C008F2FFD98A44835C0681
+:10DCD00088C3E649B3A16751138AA619B0307920E9
+:10DCE00033527E014C2C8F5290B3A480175750FBB7
+:10DCF000F890F8DAFCB298601399B685B314CE6048
+:10DD0000C92D3AF100F938AC45463F2C7AB27E1E57
+:10DD10004B12A20E20AC8C463B335085B8CE58AF88
+:10DD2000783557E53A882771B91675A6F4EF825A07
+:10DD3000B6C3848E60F9E81EA5A00FDF5AED5BD351
+:10DD4000A7B8533BE557F7C9516E7C0AE2212E7400
+:10DD500060902E15BD76BD64378384B2F8F80176E5
+:10DD60008B70E4BB67E8AAD5D9ED4B98B8C2848123
+:10DD7000BFBF23A166120233AFF9919A6DAC92D660
+:10DD8000159EDB779FFC825B88A1CCB509993C137B
+:10DD90007BF112389EA5C2180024028AA36BE79774
+:10DDA00076488D6D01A6AC12261FD451FEC1FE230C
+:10DDB000B97A81CFE8DA74CA96320E520BA1273AAB
+:10DDC000C2B22F4955C6A4BD0DF3B7C3ABF992FE3D
+:10DDD000F7D1A650F9C6D1450287FB1733EC52F4B0
+:10DDE0003F96EE13330F0DE88F1E54B274F72A13CB
+:10DDF000109E9689FB9047945AD5469E743AB5007A
+:10DE000000A1579222172DE4B9817673D9FC0076D0
+:10DE1000E0F7658137A1D0EC3D4E37E0EDE32C987B
+:10DE2000E89396011D0134477D413675475E2552C2
+:10DE30003ED663E4333F8B1AB8DCDAF101AA9D9336
+:10DE40005DBD739975A17B086EFF21AEFE2EECCFF0
+:10DE50004C8D8E2C9118D73B571B7BC548FFF4DFA8
+:10DE6000D62A993FCD2C996300E7843E312B781652
+:10DE7000F17451557E85A3DDBBCF2EC9416DCB3EDC
+:10DE80003E9E3C24913C9F6296DE5018316CC58FBB
+:10DE9000BBB5710C19D23AF99DCB15AC97A24F8F37
+:10DEA00052B4E343562CAB6D8BD63267F7E19D3EFF
+:10DEB00017F3D1356F365A4F2BD1D6B7077A2633A1
+:10DEC000D35ECF167E146BDD7BA3F76B329D1ABE3B
+:10DED000795A73C938BB6460E26645666C6D95BB60
+:10DEE000542A99012B2953C99CB9C2FFE3695AE20C
+:10DEF000DA4B8CDB71FDC32A834EEB468D88B06410
+:10DF0000EA8DF188E2904531B29123EAC07ACEE2FF
+:10DF10009AFAA582AC3F0F494CB3398326B8CCD1CD
+:10DF20001D36C0C5FDA2C8812188B418564072E9CB
+:10DF3000237B0918AC0E4F8DBF3B3873D66A457BE7
+:10DF4000114E58715C49C5E5262E657282AFD477B3
+:10DF50003505D5DE61603604B544D3EFE11D121CF2
+:10DF6000385674856960E6EBD1646319AFDED3750A
+:10DF70002304FB6B1998DD5CD24D7FC555106ABF39
+:10DF80007200B6A42FD4A4DA5DC68B5F14839B4CB9
+:10DF9000CEB844BD41562FAE6EAA6C7A7EEB6D842E
+:10DFA000A3C3D90000E60013936BF2B04ED2C8426F
+:10DFB000D8E539B715FA4468B2303B383D41AC0773
+:10DFC0007095810B496CE857E3CAE2365CA0A9362C
+:10DFD000A3E0653501A25780E6257479A332776AFC
+:10DFE000D5A935CD4D4D6BF8C42A759384B5F1ADE7
+:10DFF000FF4A219AC6E6751B3AFB9EDF08C7359695
+:10E00000ABB281144D1660269656F5CFBB15DAE8F3
+:10E01000146E89139F76BEB25A62F445390C8E3E57
+:10E0200086168930DDDA52D5380304D4F3E2EA7873
+:10E030009AF33C8EE933260378200001FFF4303A4E
+:10E040001A6976F5224EC779CF2DA22955DEE24610
+:10E050001487BEEED5C8AFA4300EAABC08B655E8EA
+:10E060005773E81D7D361E42010F172439F0147CCA
+:10E0700059435DC1D5295E8BBA96986BA7261C863D
+:10E080002773BFC4CC7647590D5AF3080BCD841EB5
+:10E090007B60225DFD14B3466C113A1B931363D76A
+:10E0A00024B3D76DE46B074AA0A642391C44E5BAF5
+:10E0B0002D4D0BEB933882193EAA263F2447F4DC02
+:10E0C00047DE45BA5572A1E0D381D0C92870095204
+:10E0D0003DA5E8D44629FCC2FA91FEB7B9C7A323EF
+:10E0E00098D455D6729CA93D3BD5D7B402A102CB9A
+:10E0F000A60A0AA5BEAA7426BE24DC6E225FB1164B
+:10E10000B7F0320146101A31168DCF0624311F8127
+:10E11000C03EE97190480470D98684E895A348D63A
+:10E120003A75A0E1714C5A2919CEBC7DF00D29CF6A
+:10E130008AF95C44AB1BFA3A6852CA275BE809814A
+:10E140005C77C3F2FF7F3ACF11AC443FAB35D9CCFB
+:10E1500067DEFECD02AAC9E88D480E8210F6D1A373
+:10E160007D2D5CF64F4CCF13D409D1CE2514902DC4
+:10E17000B75869C6A8A4E1749D11D7D9CC4DBDE9A3
+:10E18000D9479FF90C9903E448667C69062DB9D8F4
+:10E1900008A76DCAA57A91924D9B322A8E90980F4E
+:10E1A000547763A73C70C56A40F77B049F85EDDB1D
+:10E1B000C10DE160FCD5795B791047ACDDD63B54ED
+:10E1C0001435CFDCDB59B052422B57BFE5486BCC3E
+:10E1D00042B8A7FCBDFD19D1F95BFAC3A1616E6914
+:10E1E000641145C126A020DB79BEAAC72F8FC725A1
+:10E1F00063C1B0F41ACC00D02867DB83DE556FFB17
+:10E20000AC0898813D4B958C6247CA3EE2D02E0403
+:10E21000E5CF5D4A72D6A9CE5C641213247206E182
+:10E22000DFEBF05E77FAD509ECC110BB086B253E39
+:10E230005EA38748929808345878DE2F22833630C0
+:10E24000CFB5483D9F0F58D10BE9B5FBC9F30F7D02
+:10E25000E8FD7DAB7064FC0393F1B9BF28C517528C
+:10E26000A3FBCC3959BC02A74EA4F314A8ECC7A653
+:10E27000685A4116A1581B9E97387E94C8406F3744
+:10E280006717977C47232555AFD69FD90228D26BB5
+:10E29000E0F76336C697FAC836AEC1D6124172228D
+:10E2A0003DE6FF4095210E46600748E55990069AE5
+:10E2B00070C59E69EB41CD231FB83F06DD7E5B70C4
+:10E2C0005C009EA5985C1A5F7C55FB69E5706F5DEC
+:10E2D0008842913441EA9533BBFF27BE1C20906DE4
+:10E2E000A5FB59DDFF7A0D1B3B56C16E74243EDD44
+:10E2F0003676371A7014800D965EC9FDB023097505
+:10E30000057939AE2D9B31EFFB3321A17BF69EA41D
+:10E31000511B7EF8A6673D64A76EC27E344071CE65
+:10E32000F2B32EA059DAB57A6F9063CAF120335157
+:10E33000951F035D874C4127EB8BE40146C8942B66
+:10E3400085F62DF5C965EA67661592B78256E0969F
+:10E35000BCA9F6DF699FEBC7603C0BF91927EE6A91
+:10E360007DC9C65F19B6A80CA4EC992E76CF49EEEC
+:10E37000C271E180780788EE522551BCCE46CF2489
+:10E38000D07FC39BD731EF665C0FB68202EB4CB3F4
+:10E39000BDBCB35267BAC85D0661E417D0312077BF
+:10E3A0004BEC7AAFDDF1B356DA9B075FEFCE2B85EE
+:10E3B0005EE1120884080C010711158059AC22098E
+:10E3C00084CB54AD238F09580F8891D2C1309CFA69
+:10E3D0008B64A3F41E1D65948E4879C5F2EC0CE89D
+:10E3E000CD7A18BA4376CAC2BA65F0870158E88F69
+:10E3F000D8F92BC6E5340FDA1013118BF0118062B7
+:10E40000A8761ADC2A23105D64CAA1289890784562
+:10E410004DBBA7AFE7718E4C9F1E37C9FF9170FDB2
+:10E42000338B3788441D23A0B11EFCCFF98A1471A9
+:10E43000EABBFA397219471C3496639AD58CEB1AE9
+:10E44000BAE8C80A9284EFC098A5EFFA742C304657
+:10E450005918A21B35AE25B7F847635BE78722EE54
+:10E46000A5F04D09E82DE1911306C954CABA07D9A0
+:10E4700011F55DFCA49944CF04837DFB0F2C9E0A0B
+:10E480000B5762F9375EE3AD77B8165B5C83EBB888
+:10E49000340FF326F823C81341650EB66A82A82507
+:10E4A000FB21B172D4FEB547468C69FA698B1F30E7
+:10E4B000596C5EA3310259930601EFA32D79FD87B4
+:10E4C000DB35E625D06EF7FB756E376BBA79907A3F
+:10E4D00080846B523BF1F489B7D6BE924398A45521
+:10E4E000397B1DCA2332A6BE5604A47FA656538686
+:10E4F000AB527B993FA81717C37217B5AF160F1809
+:10E500004137DFD41A635DC726DD234C709592EF47
+:10E510003C6086F5E1C7C479933C8360D02B484FBB
+:10E52000FAAF5F2F99E8B4664C5CBCCA6A6E345689
+:10E53000974EDF4E19014AAC4B668124C7CE83400B
+:10E54000BDB165ACB2AE5F8D796B3A473461191CD1
+:10E5500010726BBDC9CDAEEB1A6AC63C6346086B40
+:10E56000FF7650EF7A30A42B43CB27514A9028995D
+:10E57000B7494408E2575F68E4D67C739CEF25DB1B
+:10E58000FA30BAE99E56F6FAB9E4DA28C3A73F2171
+:10E59000F9BEA6939043308840933BDACBDC0AD097
+:10E5A00094582E84A2104A3AD9C57CBDFE011FA5FD
+:10E5B00014C437AAFF0E4EBCACB0BC714DB89681E6
+:10E5C0000E0534658632291C7829772276D3FA46DF
+:10E5D0003DDBD17A3E28DE80A710AD59D49BEB9A63
+:10E5E00061490A09D26EDDB7E377824A0ED342143D
+:10E5F0000575C72A42B18C85084846776F818B32F2
+:10E60000B8F0F1A6EC598679CF30429C2EFF8B7181
+:10E61000F944DFAA81BE93930366236AFD95D9A2CC
+:10E6200092BF8429B32B8BFE23C682485CDA16B9CD
+:10E63000548561B227367B61A54FEC191CD412E6D4
+:10E6400017F7C7BE64941B309F4A6021D39E850C88
+:10E650006EE4336CDF407B3B84033BAFC384E21446
+:10E66000AC534EEEE55ACA1B3515FB41C072D4B807
+:10E67000D44AA11F85E4E76906158DD90A6E97A4CF
+:10E68000CED7CC2113AEBF10B9242126059F086632
+:10E69000A9781AC887F1B92B383E2428493806359D
+:10E6A000DBCDE2A8AE237FA6EA2DC2B2613093EBA8
+:10E6B0002F3579980B2E0E13E8F469325AD096A7AD
+:10E6C0006919E5286333690DAB155B7B0AD0308A85
+:10E6D000215AC77AAD7BD7E4D90AEA94BACD061499
+:10E6E00024C306F9446A9D810AE8199A3136823CAE
+:10E6F00030131246576E5806CAC2DCF6729AE9B950
+:10E7000091E21988E3CAF30BBA0AEACE6A5D41576F
+:10E710001FADC28A98E562C874F6F93EDD031A3966
+:10E72000195BE74C6037E1A8C457CDBD6699B2D2FA
+:10E73000E896B776AE1247B8DBD7A88259A8E21997
+:10E74000AD2F67A9F9D9510643C552301301D1BE87
+:10E7500003494E5E5F4DC4713A9F6386C1774D9405
+:10E7600010E752B88C72ADFBD037629E668410A958
+:10E77000ACA747C4A2FA170B90AEE5D0898C2BCF7B
+:10E7800035BFE200B268052E3D2C9B502D3E45055D
+:10E790006E0F3D1EC223DB1E686BAC6B35C7EB4BA7
+:10E7A000342AA5FCA49A8BAC35C621DB4A189241C9
+:10E7B0002D488B0FDD67110F5F020ECAECBBD9C865
+:10E7C0000E6B75395445657F572CA1357D607AD91C
+:10E7D0009F1737553B8990C10DA6DCE26D1D92C78E
+:10E7E00057E7F2237DC1C84523B7DEF38D2794DCBC
+:10E7F000AC498F64C58A91745AA3615D9C1FA35D67
+:10E80000054BC38A4974FAC1527669D2B565D5BE43
+:10E8100091103F28DEAAA36D2F2C9704503D62CFA4
+:10E8200083BC44259F2946BF91E63E36E6E604C3F5
+:10E830005D19381F3C9583C80B0A3C8F5DD3AA67CE
+:10E84000C5541DC0EE193C09D498955A5C8A418183
+:10E85000301880A118EE61AEAA6A5E4CC2D4E721DE
+:10E86000C83496718765D4197F546A62B3FCF97C09
+:10E8700021807218E3CF64BDA313E914B415520FBD
+:10E88000D5D7B7C1514FA7D97C2B22BE21F7D6E6E9
+:10E89000EC1E86948005DF57C3099B2CA6BFA96098
+:10E8A0000C39FF613B3BE94CCAA07F6F75525EE0BB
+:10E8B0005E8BDC34E34026B037506578050546387A
+:10E8C000277586E830F6EAD5596B9C58BC937136AB
+:10E8D000ED43A6B0C45948896F3B41F43F2EFDF487
+:10E8E0005D2BEF4D8EA2AC9A285FF344AF38145CD9
+:10E8F000F501911C7CCD12DD2C60DE14140EA1A458
+:10E9000088EB867F700E9008722D01D8B1B2B6AD3B
+:10E91000A2D6DC50E9EE3D4AFDD5B1D23E16A0BAF2
+:10E920008092BA46E102FBB0A09A3F8DE7CABCF9DB
+:10E930008B92A994C6C1359719F6D633F974F48130
+:10E940009E0C9D8635D41BA518044ED4C370D70DDC
+:10E95000C7B16926120781F2841DEE2AC2467B44A4
+:10E96000D840DAA9EDCF12501A52D1E3378D09976A
+:10E97000595285DE7D26BD47292F03605A9578F1CF
+:10E9800058CD1213202984CA0C5D0AD61450CE9596
+:10E9900023861568119C1C79A29DF0F9442BA9BA15
+:10E9A000384DA3E6FCA549AF5348BB3D9644B0D4CF
+:10E9B000E693CA473160F8894A4E1779360B46EA22
+:10E9C000E96E79B16FAC6A82889184B506E7F795F4
+:10E9D000A3871F21478CE2090F771044D9A994928D
+:10E9E000AB603EBD2FD2628B9741FECF0ED40C4A56
+:10E9F00099384527BE78DD74D335DB02FE1B0577D9
+:10EA0000C9F0F2B3EBEA9ECFCA1E25DB6868F09A24
+:10EA1000BB67F9B8EBCED80F8C320AE138B0FB14E3
+:10EA20004EF2A66672D6A3544054FB66EC5A800898
+:10EA3000B2400C3C76BB54EF8A04D452CA85AAB5C6
+:10EA400069A3612B8625F801C20E49C483333CF7C4
+:10EA50002B2CED393799A81332CA89562A7BF3FC3F
+:10EA60000E17276C6D06789A737918333E2C728DC9
+:10EA7000E5A861E43D6D812E9CBD8F2DACCBBC1D06
+:10EA80006827C2E66A502E131322713A3C23ABD694
+:10EA9000A8FC0982E843474039504CDCE75AA1659D
+:10EAA00010F885736ACEB01906DBD30D0664FD69D4
+:10EAB000527DCB3CE6367C8948CF1167F15BC0C5FF
+:10EAC000AEF8884AE745A2A2335C587F0E7584826F
+:10EAD00014E5F333509AD27B60466A99D44DAC402A
+:10EAE00085671FBCFB49A229281315F0E1AF6DD93A
+:10EAF000649E76BBC2FD2E6C02037BC713FD545B84
+:10EB000020DA2F48D0BB137B6696FB5DB4F9AF7E4D
+:10EB100014CF3B245239CF0930ED5A94F36FB489A6
+:10EB2000B2F53C58993F7D2971F9AD3E04B66BFCB6
+:10EB3000008B2FFA12C422BA6C8E9E9825B0B29A1E
+:10EB4000CDEC7D9F4B758A7D06B23532DB25566153
+:10EB5000A2C5EF103CAC49D05BDEEF8768CD828F59
+:10EB6000FF7A8D236423A22B8E746FE75A38CE8BE5
+:10EB700008602CE1BB3B94CC567D6390EAF3357181
+:10EB8000E7A47EF271D6AF2EF79CC800EEBDB97631
+:10EB900017CA1018A919636DD6AA328D171793A238
+:10EBA000502038BBCBFB1E1AC2654EA0C26707C2FD
+:10EBB0007F91D8564F0985581DA4877A7B32A76E5E
+:10EBC000B8A09679BA012A2AE1ECCF1E06F8FF8F89
+:10EBD000AD0F876913847DA2B40986EF3E2CEA6BE2
+:10EBE000CACA24F1E476DBE03F1AB14C222007AE1A
+:10EBF00055EEA6509986C1125ED6A4AD774ABAC129
+:10EC00008D5639A6E1BD251B91DB665A99D8464839
+:10EC10004B6B0DA55D499063BFB7422C3DCD2115CF
+:10EC2000E1B3294A4EE4D9BB93A0E163F8225190A5
+:10EC3000B3F60B814D2E2AEAEFB806D81518AC169C
+:10EC4000F43CB059EA46EEC653A3680A3EED3CD503
+:10EC50006A0C8D1FE13D1B292B408A207BD08BC97C
+:10EC60008B9B1CFDE624281384CF3B6791BD643E3B
+:10EC70000D7EADC18D041A981FEA27E3472CEF15CE
+:10EC800096FED238DA15C4D1E8B04B45180BBD5307
+:10EC90009F11805307931D84CA41A6D9D4396D7042
+:10ECA000925EBC778BADD87F8A6616CC866A592572
+:10ECB000163FAED4D02663D7145A5AD2BED8D40B3E
+:10ECC000A4CE93AB8C869B47A96E28CBF4A54DF5BB
+:10ECD000BDA7E57E40BF54E2C14695F4B7D54CC808
+:10ECE000090F8A3447BA2655A35CB85D32C102E4E5
+:10ECF00072E33894A690295DAB9BF1FC7DAAE02BD2
+:10ED00005A40D7C2C07969BE3229D347A6B60CFE95
+:10ED10007285271ED1AF6641BFDEBF3B8A70892C4A
+:10ED2000BD64912BE7F5E7DC7B5B649F4D2EC60944
+:10ED30002386CAFFB3C0601337D5D76D30C7296D9E
+:10ED4000223370523E07E5EBCB4D4200654699BB3E
+:10ED500028B5A99B01C52536B058B42CFD91447443
+:10ED6000536614A2B6C881A90530C98A3FFA0A9E23
+:10ED7000BD87A97C95FC239B7CE42A698C248D5F4C
+:10ED80009DEA5F6BE798D09358AE35A17696302018
+:10ED9000C7E5CE0585689563716CF33F5CB1F125DD
+:10EDA000563C6ECA59CD27CB8856CEE25CE6AAEA1D
+:10EDB000FFCD2AAD212F0283729716384B0D39ED06
+:10EDC000018BD82B3FB89347207EB17FCB47C0DA69
+:10EDD00043395536411FDD7B2C5FC6AA1EEC587E99
+:10EDE000AB9382B67BA73F565CAFF6951F94DF6E60
+:10EDF000D22F34FFF7764A56D3C6D7BB0F5CB395F4
+:10EE0000E5FF447FDCCA95D8AFF0043434A5E3F9BC
+:10EE100012042CAEEE51E7261CFB01149D0887510D
+:10EE2000D47F007C02BAE990C6970C9AB3CD5421E6
+:10EE3000A5B8399CAE215E9B661BDA27166A1A3C80
+:10EE4000EB004EA32F63962E0DCB72F14AF6F21D06
+:10EE50004F994F0DD2348619F5F61B3074AD11421F
+:10EE6000A3074E58B57373055CF5BB088CDE5F2AAB
+:10EE70004EBE353D525FC7E60026B2D3C4E5DB7710
+:10EE8000719123A108A32ABD66C0EFC1EF50616351
+:10EE90002D2BDE76661EDB9A719BB71985D29366A1
+:10EEA000BFA3A4228F39E0ED9D925056770D7A4092
+:10EEB000E2BBCADFAE28ED0382BB8F617FFB9B1EE6
+:10EEC000ED1579963F30FCBAD9C54A54BB6C6C66D7
+:10EED0007989A83535732B0D61BA0B965F8C2DD9C6
+:10EEE0006552BE2FE71717C054A42C5B032D303199
+:10EEF000974069A9A00002843D35373C24FCC63404
+:10EF0000D8D8D8EAEACD276B91677F5963A79B29A8
+:10EF10000ECF550E71CD7D5F4B7287966D4E435E61
+:10EF2000E5F7EBE2D858DBF9FD49B79985E859F2E6
+:10EF30003D8F8A065DF0BD0E4A7A456DB48EB6AD42
+:10EF40000CFCDCD33773FF9F0D25353D385C3A97B9
+:10EF5000FF5EB0FA4368A7009DF83816A57E3A0711
+:10EF60002097274A81827FBAF687AD1B4AF02AD0C4
+:10EF700073AA036511A1E759A28ED8AC24D1FBD5A1
+:10EF80009661500502EA6F1FEA9D9F65C1095A9F6D
+:10EF90004D42FC6145E32445790143D58CBD153CC8
+:10EFA000935193B04855D3680442767C6E569417BB
+:10EFB000EB6553BF93F5718BB1D0D688A5A32EA274
+:10EFC0000F35BC5BDC4C3B7E2973EF538A7B476675
+:10EFD000D4674D16F573A88771E35C61CF350D33A7
+:10EFE0004F2A653337C100409EFAD472E2FB757A2E
+:10EFF000B0586CDEBE2C36E0015BE59CC761112B7E
+:10F0000064A12A302C42A3196644A91F0569DBB00C
+:10F010003EDC3945873D09E661636A6E2CA10BB27F
+:10F02000B159F2CF7EBCEE11BBCF96F0641F02E463
+:10F030009D68702A91D229C4A4C9D204B3AC93C1EB
+:10F04000163ADA3E141A7893A6B7CE67452131F204
+:10F05000D75D2558D4AE84432909472033255483EE
+:10F060006D534D57585623D9728A183572188194AA
+:10F07000C0F6340ADE20EE182AD392C9EA3BE31C1C
+:10F0800087B73C53CFF2782F7D69289DB6778223CE
+:10F09000198496A5B0AC14CC156851C397573A4A59
+:10F0A0007C6E4924CFB8B9065C1D6A493EC3B89F3F
+:10F0B0001FEA72DD008D58A870832E50224B17096D
+:10F0C0005F79C8B5CE0F9FF007C0E813D1E35BE0CE
+:10F0D000D2776A90C6464571D5304642C1AF5408D2
+:10F0E0009E52F8DF3A2A165504AA310EFE0F902ED2
+:10F0F000F6040680D78E3AA7689CC2765569EAB6B0
+:10F100007B1B32ABA1B818364FF0DABB3775799A52
+:10F110008299EADDFE1BE018DE9E0842464DD7BE0E
+:10F12000024F63102FD93BB0FEBF7A0EDD011AE308
+:10F13000DDDFB857D7A5637CE51B40AA8CF9C07307
+:10F14000006146F19FE80FA10C2BFD16F1B13322AF
+:10F15000C9DC3CA4FC7B7284E9EB826B13C3AAF389
+:10F160008637EA62918705E9AFFB61635B83D19BD8
+:10F170004FCD3B5E087E48EE5AD90AD83575DFE898
+:10F1800084BE8E0DB80B42FA5796AD19A76934D7D5
+:10F1900002947418125BCB6842A183067637E6208E
+:10F1A000E561FA047FC04A7B9AC7AB8A4507D186DE
+:10F1B0007EB08556D8EEBA4936105FB9D3F8C7E0AD
+:10F1C000B5434B5AC3C2471C811C48255B4593DCA1
+:10F1D000AD5FB222051B0F2FE22BEE6B624F047561
+:10F1E0006486FAADCEFF3CF110393FBAD0A007AD2E
+:10F1F000C3C3A59CF306A7B74CCC6A891329A6F311
+:10F200002371260BB7E19E871A8D29896547CCBAF1
+:10F210009BE1400D2C62BA22D883D1CF906408D5EF
+:10F22000C435FBD5E0FC2769E36B4DB7BF8C5DA00F
+:10F2300065E91BACF9A5CE1A8342CE38B0E5EB0FD9
+:10F24000DB7E3F77D2F1AE1DBC14227EEC0E064869
+:10F250002E37D805A844CD4205919A7412DF22FAC0
+:10F26000B288654400597ACDB5A374CB4A372600DD
+:10F270000FA525B591B077B5A4792334532429C6B9
+:10F2800016A6CB851BD218DDD208E2336AD6802EB3
+:10F290002B4B8CA1E88C57BDEC9FCBAA5656AB7F6D
+:10F2A00064EED5E7D77C99BCA615614D2FA93B44E8
+:10F2B0002F00DF07088D57435904A5EDBED26A2AF7
+:10F2C000ABAB57BB5354DB0386BCC08C0E69D4C3B5
+:10F2D000385BF7306992431F22E845589E6A5BA16C
+:10F2E000CF83E1F24733B15C7322756B1A36B746B0
+:10F2F0004B28D00D91AA5E58E914A458EB827D34B6
+:10F3000039CFF50C4C95554479172CA8BDBD9561A6
+:10F31000DBAB1A2FF83EBCBF5A51963808CE9FE29D
+:10F320000E46281A53DD42987ED524195BE4B0D4EA
+:10F33000071B3BE059B77CC8E6C01DDC858B9EA748
+:10F34000BA8A78C92E690F584842CC88DB20E39BE3
+:10F350001DB0AC03B1F8EABDA425821F7F1086A9B9
+:10F3600032E95068D79AFE7FB1AA15236C41C75382
+:10F3700069BC78BCAAB7C99478BCA765B7AD882327
+:10F380002837EC0F679B98EE3928A8F20EC256ADCD
+:10F390008E1D2288A78806F15AD85E65F463DC2F9B
+:10F3A000297024819927948F246B1EDA1A6074A225
+:10F3B000D272E3BB08B023F8F6A60112A06E939BAD
+:10F3C000AAC77C30E3D52873C9BA5EE5797C0B28DF
+:10F3D000A10C6D6BB3894FFB99AF2222E3BAED7D8F
+:10F3E000BBDE3ABFA0F0361940BA64FDEAB19C67B3
+:10F3F0005C543F38B4E7ED87DD0AC7D3CFC05BA3C9
+:10F4000009EC16DD15FAE038A9912F878903767C7F
+:10F410007AF001925B786E1B86067F61340F69C6B5
+:10F42000CFEE8D1808EFE6FE41C6CCF5B54CD607F9
+:10F43000D3058BB93576CCDD13F5A1CFF9E5CE7ABE
+:10F44000EC08196C5C412B68554734D5BF000C891A
+:10F450001F956F48C1299CC149A2526F1F8ADAD6F5
+:10F4600029DDF1881B81397E6E5134FDEC42C0DB11
+:10F470005E9FB1A6451999648DFA3E71397E38F6C2
+:10F48000DEE0AE811C61D3A851C1ADE4EECCC0C1B9
+:10F49000F4D821D39594A114FE15BD4DC680AE803D
+:10F4A000C024572AFC3DFB51A70D7D14FA15655168
+:10F4B000F945444AF832E173DC46854051758E7E49
+:10F4C000EAC0C923308FAB29A95EC7F50D761FC6E8
+:10F4D000042E69E33A725A82F42764C4C3A100E29D
+:10F4E000C9EEDE9B3F3D5965AF00F5DD8ECD6C5416
+:10F4F0009F35171BB6B602951C91AA8A11C472CA11
+:10F50000E44379CB57062B117A12852E3026031F40
+:10F510000ABC8728A0BA799105251F920FA06D9C7F
+:10F520005C3AAD4809680BF1D11A541518D9BB0BD8
+:10F5300043BE7A0A83C9D87EC2A8BC68BE5A1301EA
+:10F5400009FFC88803B7CCEA28097B912F3AE10A62
+:10F55000E98999504BA64CEE503045F9988DD2DF91
+:10F56000EBA0760228A365925A17418810B4E81CD4
+:10F57000B449AC525019F48D5F8F40C6254D06AC8E
+:10F580004841E0B647B8F5D274460F8A03166DDCE1
+:10F59000F224770784C01E8AE55597CD7F9D6BF4D2
+:10F5A0004C83534AE637C4D6F160FD1642995FAFEB
+:10F5B000345E91C72AFD3FF85EAA180FCF812FF65F
+:10F5C000B5814247FBF0581AB08D0FC6F501DE0237
+:10F5D000389BC474B2FEF13BBD2BD609A99DFE1722
+:10F5E0008AAB08F6D12EEF68852C965652ACCED752
+:10F5F000433AEABE36D07CB2620D3A15549A4CF5C5
+:10F60000513E6EE30A64F1F05472732E988DC44635
+:10F61000146A65CCFCA316F21BAD1C0A24B5EB27BB
+:10F620003A9023E4D44D16600A0E5779441811DF3E
+:10F63000E62CE877E6D8138F9ABB331EA23261A17D
+:10F640006991E06DF8E71ED23BE59ADBFF88731005
+:10F65000311F60D59168BE67A37FFF87697104037E
+:10F66000354C0B63C0AD6B1B9CA8BBEAD717E5FFFD
+:10F67000228E9A13AC770EDBC131C2B577EBA0F3C3
+:10F68000A6377FA9AB500B09D00F176DF36C3F7BEA
+:10F69000ED89EDE481FAB5DDB733415D3406C2AAE8
+:10F6A0009905ADA5DF98BD6D7DC99E98CBF8120276
+:10F6B000ABFFCD2419A745761B5506FB55A12CD0D1
+:10F6C000668D579DE109F0115E9ECB44C7CEBE3BCF
+:10F6D00057D7EADFFF5950CA01482DC4485F476633
+:10F6E0000A7ED73F5859CAE8983EC1A7F72D3A5F1E
+:10F6F0001F36F6A59BC71A8CFE5B35C95EB44B0E50
+:10F70000B43D21DCA5426F4E4CB524A0C6BF8F6826
+:10F71000D75FC9406686696E308FC194149B0CB761
+:10F720002735071837AEBA20D5F4FE7DEF76F6DC24
+:10F73000ADED64657A6407C157BBB9291C9E3C5482
+:10F740005EF14C4B7CE4B7B96E4F11F08F8C051E07
+:10F750003A2235C55D719F31A6BF077346D2A576A3
+:10F76000886503D616C19E0D540B20C2A6025A0806
+:10F77000A5D73ECD17643E1AAC598D4FF0E3CEB9F4
+:10F78000BB4AE9FC6A949A551D5E64822404834254
+:10F79000F1AA84EC04458155C05DDC38D707DE6EE4
+:10F7A000D4856022F171DE68AA495033E9E2ACFEEB
+:10F7B0000EB262161B3BF32D39397FC7A5FF48E512
+:10F7C000B98B5362F1FA3D0B2CA62FFFE402BD84E6
+:10F7D0001454F8599A3E7C11389FC6EF4A71A8FB21
+:10F7E00035089765A15A05C6623AA70C3E913C863A
+:10F7F0000E0674E0A8BD6D1E96451A6259BF1D75B0
+:10F80000C753E38BED9FC8E4ACB5B5ECDA89A858D3
+:10F81000DAF21AE3BCB0BA46916F2BE5ACE1D41131
+:10F82000046016CBB01C77F062EC2E9E2F6328B5D7
+:10F83000E82E6743113A74AA21EE8255B7901A94C4
+:10F84000D307A8CA6B9415E1A7A5A20923C951A79C
+:10F85000678324D50257A29023547AD09DB97A2683
+:10F860008678BAF49B4D0484E906C0F8C987DB3773
+:10F870007BAC881D1AE3DF814286A0A5DBE7F83F59
+:10F8800076E511D6757BAE95A7FCA83DDA8C89820A
+:10F89000CF0ECEAC57F2461F1FAFE2346137F6C031
+:10F8A000E838AE7ACD2EDE8A6EA4A608EFE8DC1921
+:10F8B0009CB7D77A2CF66FF217A2B4867FA0D73008
+:10F8C00022332FFEF2A8E8D2E3F6BD3A27E7BD3394
+:10F8D0003989A90E8464C830A53ECC87F096E531FD
+:10F8E00057503A99AA5F43B034251E5FB6FBE1B486
+:10F8F000A2D721E9C87F10C977E1043CD3CE7CA808
+:10F900009FF3F9B090F1A26CF012E8F2169B86BF5B
+:10F91000B38562575EAB8A92CBC261B741819C3D91
+:10F920002684C4AAD211844A75830C26FA1A5C0D67
+:10F930003A8BFB26E8BC8F832ED08B23408FC1C926
+:10F94000F1B3A4B805072381EB3283F342FEFDE156
+:10F95000D59191BDBC7C6CF6F6F8B819135522B060
+:10F960007DBF76F5221F4BC6A3CF605E6961BA7B6F
+:10F97000572C079C5D7DE2064CA874915FFB96189E
+:10F9800070E5D0AC822316B492167809869B46F0B7
+:10F99000E503FF136D456EF83533AE2A85DBBAE714
+:10F9A00081574224020C24F2446671A3ECFCFBE470
+:10F9B0002A10174B5EA721E3AFFF30619867B5A00F
+:10F9C000FF3EC03B05AC34EDFF6B2F691E5FDF7B54
+:10F9D00066211AB43C5C787C0972178BD71EEE5BEB
+:10F9E0007EF3E5D9A72A11925602E5FA60911BDF52
+:10F9F000D6C3A1B9655D90568E764DEBA59659C7D5
+:10FA000027A4EFC6062D69950853F75B4BE9AC2B8D
+:10FA10004FFAF551B0D5F491C2AEEB8D80BEA9FF7F
+:10FA2000CB515D5406BFE64E89CAF47920F43112F9
+:10FA3000A5E1EBCB36B4D813572E5570506E543029
+:10FA4000D6D3843C4D1098E3E36D2CE24DF58865E8
+:10FA5000C7B975EE8CC7CA4622474F23E1242B4015
+:10FA60001F1360ACBD43212C9E040D0408FBF2EB78
+:10FA7000622872054B335EEF2DDEE7E1360BB78A65
+:10FA800086E5A31D294EA5B96F39D4B2F1FFECAFBD
+:10FA90005BB66DF43E69E2614A48F6C6B3F8B094CD
+:10FAA0008659DC7B6D55894A3FC31EF6B2578F7568
+:10FAB000C7233175B6CFD8276059232A04BFD5B8DC
+:10FAC000F11D3341C63DBDD3CCCA9F2B27106D40DD
+:10FAD000F389FB175B1B2A51434D36C1B5EA4667D4
+:10FAE0006D7CA500B0948821EBE7B860C7BE337E7B
+:10FAF000A059A1DB7F95C9439B2BF17DBDB385BE8A
+:10FB0000DE1D9E4F8553FF9CF99C9CE360867BDB4A
+:10FB1000FDEAE4DFC9F23CAF8FDB1E2654AE89BBA1
+:10FB2000787FFE48BEBE713FBFCC998E6B41D793A4
+:10FB3000BDE495A813E3F61AA5259D748DD05D6DDF
+:10FB4000BAFF0D75840AAF912293BBDBB8C237B6FA
+:10FB500045348D3F6B79F2B9C6B702B8C1AA853674
+:10FB60007BC5E27611B22FA48C0250C0ADFB7E1093
+:10FB7000C572DEADD88912011986B734E78DF4DE7F
+:10FB8000179D652DECBEB75298986239DA5F2495BF
+:10FB90006F6A48678484C0441039F666564AB40DCB
+:10FBA00069A8623AE89FF2E611CF8AFF8272FEF6F8
+:10FBB0001CC1F974897C32764059F2913A74E4514F
+:10FBC000D4C5D61CA3241421BC99B287C65C80F18D
+:10FBD00090C0748CDD1A29E7AAD23B312BF09B2F01
+:10FBE000F32E0D1CB4B700B8ACE2B2029D0D617BE0
+:10FBF0002DF6A7C577EE38A2BC791C902E2D716F1B
+:10FC0000B3B853F5DA18AA998B7E798CEB34CEE72A
+:10FC1000C392F4790044849FD2DBB04D6C2C013048
+:10FC2000C738DAB77719F203F21532FD032D1B9BA3
+:10FC30008D63A079CC27EBC90912C49ED07F16B57D
+:10FC4000A54734CD9D6B9533269A738DA3B5F7C325
+:10FC5000A172D5D50628A0F5417A8E5781A50BF162
+:10FC6000EB65D630FF397F364CBE2EB2F7CC9E0DF9
+:10FC70009DD39EC8497C6C8706A1A592183BEEFFD8
+:10FC80002C0E3E5F6012EFBC10740DAAC4DBD0C214
+:10FC9000C83780CB2E58A67AB6F38D703D801ED41F
+:10FCA000D4F68CCC3C0A88CBF3C887829E01E2EB69
+:10FCB000B6380CC3D0884852CA435B2B95A532DFB7
+:10FCC000B9AFE49D13ADBA572EC5B0BA9F35D9422E
+:10FCD000190C231559AA180994D999357C658D2AD0
+:10FCE00091FBF339560D9453190F6A3538E62F5AA4
+:10FCF000FBB7FAD4FA6FE93F2AA27A89FB9F897B86
+:10FD0000090E7D0A933277C6B2B5DA27C96C4B2348
+:10FD1000A8A5A5E27BEF1615DCEAC2343DDF634DF2
+:10FD2000EBD48C7E0626D4CFA4392502B7897E0079
+:10FD3000BC00ABF4F7430280A2C43B73DD3D2DC68B
+:10FD4000DFC1E4C4B331643F86B2D71E43F6DD5C45
+:10FD5000CA5A1F58F9D8B21CC69AABE0B6F283163D
+:10FD6000AD342634F2D2A2CB489CEA128383B5FC90
+:10FD7000323D4364D786825EA2971B9D45674082D1
+:10FD80006FD86107971C56FD169BCB4899716C90F4
+:10FD900004762FBEDBE354C0D4C878901AAB17F0BA
+:10FDA0001E2AC314AD573E3BA16385FA19D13ED438
+:10FDB0009714ADD73F93F1F82B94BC3971F4D1056A
+:10FDC0008D63521AC44A35B7FD79B68FC6209100AB
+:10FDD0001DF7D37E3B971BBB7566F3FE47FC6F9EFA
+:10FDE000EAD4BD954186B142E1FBEBE6ACAC1F71B4
+:10FDF0008638B882EFD2243221B3D40547A6C4A3F3
+:10FE0000474048D3ACC96DCD02E79882E8FDCF8466
+:10FE100029BF9200D04D4ED1225D2DD80EAC5BF99A
+:10FE200001D8A308263DF389DDBA9BC1BC5D46BB62
+:10FE3000C89912A927E502A8BECA58A3FBE100DAB7
+:10FE4000B498A261FBC032B30470F036F571989398
+:10FE50008FEA82DEBD0A639DA4894DF653AE2B3E28
+:10FE6000FB4F0A0377C788B07260B3B64DFB2241DF
+:10FE7000BDCF60ED9DEBA07BC2D163C035A24AB976
+:10FE80006163E82FAAA3F791693189D81EF8C1A64A
+:10FE90005111DB80E92C79D25BE8A3D8CC9CF51D0D
+:10FEA000E098CFF88AA14B21E21AA61221E8A44DCE
+:10FEB000B842BBE95652852F8F15F6FC358FA74FF8
+:10FEC0000BC783E77E002230B5F8EB3EB7B55C6127
+:10FED000AB7C5271CFE87A2E3C86C57E93EF2D50D5
+:10FEE000CF3FB9896A00FA75DB6D6DDF729237B466
+:10FEF00034FA5337BC9C36BB5D56F754868BD5B16C
+:10FF00005CBBD7C8993E244CB03EB42D6330DB00B7
+:10FF100090B53AD95117797C3EBE97E3309A43DDCC
+:10FF200094A101E0A2439803EBADE8EC3E573154B5
+:10FF30006F15E035EA06DA5621E765D7AA52392B64
+:10FF4000F27E916D2EA1F2237539D1081F6278CE11
+:10FF5000DA6EC6A453945D78A85D62D3EC6C11513F
+:10FF6000D5AABAF0EE3FEB482CCDF92F38C8C2CA5B
+:10FF70009AD96C80C3B8742C85ED5F6A692BB3FA8B
+:10FF800009863CAA39723E4859B4908F4C1EAD3B4D
+:10FF9000EB974EF1542146B28D74E76DC4AFD39701
+:10FFA000E372EE37BF917D3B244CAEDF6563722870
+:10FFB00088E9BC644763D37E297825CC1D824DF047
+:10FFC000FB95E24B88B1BEF1493E8B427B6421CD6B
+:10FFD000ADAE7684EC3800CCAE01B8E19A6CFBE1B2
+:10FFE0003A0F70AAA9D3439FB01F1DA3DC36575BFD
+:10FFF000E9624D38A7DC43507FFF0F9DEA20C65FC2
+:020000021000EC
+:10000000FF39CA3C8505A254983E054F51EF0EC1F9
+:1000100078D478FFE71A1BE9700A9E78DB5B3958C1
+:10002000968803EA6070F92F12CD9A8715EB766EE9
+:100030008EB80C5AA72B7767A7598D4E259E62DA8A
+:10004000E18A62DE83AC81EDAD326249FF4B72B46E
+:1000500099E886BE2C73C11EC78E023E5BCF14800A
+:1000600042D214946863C049E7C61E1C29F8CBD459
+:100070006901A21903A0035274E3BD8963D2722BF4
+:10008000433CADF4D036D848276DF9FB478EFB587A
+:10009000393C8EA326AEBBF54A9250F98B6ED7BB86
+:1000A0006A79E720262F1D795A42B1FB09419C0E3F
+:1000B00098ACB444303406DC9C5EA6A9C03C33BE88
+:1000C000071130386B7A4EF0CA60B2B46A66F24EED
+:1000D000FD81D15759BDFE9CADF0CC310C7B09950B
+:1000E0005054A4E9F17B1740422C78F041FC869BE8
+:1000F00027F14EFC5915DCD86E1973390F44C4BB77
+:10010000815033525451EEAB919D99DE7ED6DAC7C1
+:100110002B2FA602CDD83DBFE9E8116DC0F7318184
+:100120006B5EC55D2E307FA7A65D22DD7A55855FAB
+:10013000B401A0DC790D1F617A4A715F96939939F9
+:10014000D9CB9E735F0F537F43B2F02A9AC10F241D
+:10015000F15C1BBB2C8427D9E2C6E462826D87B7B1
+:10016000F7475532A7C97A98D76DDACCE0A879015C
+:10017000F6DE84F80A0AD177A51AAC729B13764A88
+:100180008BE266FD33C90ED19BD170D484FA90B94D
+:100190005530C473E5A96277866267896DD6A0A9D8
+:1001A00006E66DA02C76DC08F87EEF9F1EDE835FEE
+:1001B00074E1181AF57ADBC2A8F20405D8C862BE49
+:1001C0006ECD09AEF9142AC176E0AE09E7BED53589
+:1001D000B53EDCA3EF6469A6EC02AE84FD12655C5B
+:1001E000C82AA4CA18FF0A1B97B2037EFEB0418F2B
+:1001F000E760BEC5EB6597EB02EABC7DD4840A5E7E
+:100200005005325C98FBB9AD330625AB8D8331F8D0
+:1002100070A05E2DD44B27D62D7506329B5B44B95A
+:100220005069448F574A4686827090D891D27C0D8F
+:10023000609110C5496DDF59A9EB4667E251A24DA7
+:10024000EC011A211FDB642DB885E74B87504CB8B1
+:100250002C616ECA31F7475B500D390933224D4589
+:100260003CA57BC66B3B47D8E2B148F75FFAE9484B
+:10027000CFAF23C397B867DED40726D85554D70924
+:100280005E0E917C0100B384CB11A7A0667BAE9F6C
+:10029000F48B6979C9F5704C09AF0E5233812A6B22
+:1002A0001E57C18F6A9B43DE209136E27ACC463AD4
+:1002B00009FEA0485ED20CA308D2C71F9491FB3D53
+:1002C0004D32EED3BBA63C85195D9327DDDE3E742F
+:1002D0008D9D8F347F1B7FD5E89B93A31E92FF28B3
+:1002E0009C57A961B15535546BA43972FC93BABAC5
+:1002F0006DC0CB0A3E40D29D428AB29EF497D2682E
+:100300007E60C2B3B4A8BDCB93C65EF12B946738B0
+:10031000C4B97EC6AB808FF772096AFC53FDEE311B
+:10032000B5E3AF689D88A36EEECB0CA7F73D50EB0D
+:10033000A1CABDB2EE88AEE6D3F8270DBCADB01AA7
+:10034000257A2CC6DD5387F6819984E22B0A5DE875
+:100350008C02168B2E65B4D3561CFD2C4596290DA8
+:100360002169C8CAFE6AFFCE17F200F9279C4E9B8E
+:10037000919E25E7AC1B5DCE11FBBCC62C9BFE5BA2
+:100380007D18EE81DD946C82DA54B02E37EC5DCEB0
+:100390000AF058C0EE9C1062E7E1FE148DD011A562
+:1003A00011C7AA49676B82FA18CA7BF9F8BD6E2497
+:1003B000D66279A0B46947EA47F45AE9CFC9E61C86
+:1003C000E29729EDD0433AB7E226340F0D56FDA946
+:1003D000DB8A078F7FF7B897ED77D777BBBC48D11B
+:1003E0008BD678406DD621B1536186A44C5E18D56A
+:1003F0008E1D2E6DCD0659A21A28EA75443B47D1B1
+:10040000B5EF92DD4C1EF9227B1BB596F767E3E052
+:100410000C5AA54BB7CB9BAE4018CEE034DCD5DFF1
+:10042000A87368B084CEEB8F04F3977B1509ACC03A
+:1004300079D671ACD625D25FD3DCAE60DD1F446CBB
+:10044000CAA4BABC0C46B692E2563A3758FFDA5EF6
+:1004500086A2A7247C7875FE0C4EF165286D2030AD
+:100460001B782B8BD9F737F260014C6A51A16B14C2
+:10047000E83E9E1C29966239A5EADD4D56E7F859FB
+:10048000F88B2CA500E494F5CAF3FC5A44BAA2F800
+:10049000F903667E02E08607808F40BFAEB95B62DB
+:1004A000A333A921CC06321D962E35BF18F638BECF
+:1004B00050CFE6C3DF988BF02497DCCAFE81504210
+:1004C00013CE48BD687E3C06A7187443B649293947
+:1004D0005AB31BDA3088374352476566530A48EAF5
+:1004E000E0C95182941705A86B261FDF642F38934B
+:1004F000B445D77AD394701A7AA574B36AA51CFB55
+:1005000056FC4A6B9999699EF6A3F35E4928C1058A
+:10051000465BC73EB5E4BD85E73488AC3C0EBB8284
+:1005200047E0F9BFE32F6C0060DE0126BEA9EC991D
+:100530000E50ED4719F8DC52CC7A919CA6FAE647AA
+:100540004DD87FEA6C7413B22E2E3D26DBEFEC42C1
+:10055000E97948C37FDC6626D555DCE7B3F6EE9F24
+:10056000CB3E5CD93E53B11DFD3CED39A0FCD4A17E
+:100570000505D3B99348234FF16070B071EACB7C85
+:10058000DC4C7AD3758AD5BD3DF5A263670884D863
+:10059000551C1D7866AA9BBA87AC9534F1A000342F
+:1005A0005E6837CEBC81FFC56FA24FC21973DE668D
+:1005B00043513B392CA18C30B1EDE204C2E448E355
+:1005C0000050DDD74CBFD65A214668D6E9665C1587
+:1005D000A8657484193DF7206C02916D7F652DAD7F
+:1005E0006206CD56EAAAA8309A2B5FAAA06C409565
+:1005F000D70DB89989B4D714330604AB9EBF057BD9
+:10060000DB799BCA91834F782078DD59ABF6D79B75
+:100610009ECD0628AB66E0E8305E81BC2F8A16527C
+:1006200010154D30982289A94DD4B566E2C98F596D
+:10063000FBED264E2531FBA565EDC76F6000050675
+:100640005877F8CEF082D924BFA10CABADA71536F0
+:1006500029B34B7F64E32EDC271502AD2872CD272A
+:10066000F67F7F7216108109127DD3C48B64390C1A
+:100670005C03D6C48246945E8D9396500E054CF270
+:100680002E6E90DA30BAB4F8E0A72BF480435412FF
+:10069000BAEFA1DDE6B0657306AA2E91A3A30352BB
+:1006A0007EB41A5FBB81821792840074C3B448B4CD
+:1006B000E9F5E4E4C83A5662E4AD2C4927E42D2577
+:1006C000944A2212D8BC7025FD69368EF9F7B09F86
+:1006D0006026FB2942F62CC9C88B34A21AB23651C7
+:1006E0009627BD43D1442F88D48E94C2CA1D4D9500
+:1006F000CF68309C211F82A085054FAFFF861DE883
+:100700007AE7A3576DBC74AEC26E06A76C78C106BB
+:10071000F12615F1859E38122A8C3502A586E02631
+:10072000953E95D8522D6C79328EFE356F7137C15A
+:10073000BFE6EB1971DC05FA771CF1F84465380661
+:1007400068270774721D89E9C7F96B9899A058F555
+:100750002B74308ECE8DCCAE738DEBB8BFB96CD709
+:100760001926E254F23E17BF263496292AC7FB14F5
+:10077000FCC5338F7D1675F63F005743DABFE9138A
+:10078000652328EA2AD44BB93D7F57DFC31797A7C3
+:100790005212232AA2BED2A4C7C24664DC8261F0F0
+:1007A000E536D100A1EC3D2359BF19C93DE7FB0F48
+:1007B000991A57CAF446E909DF264F902EB2CF1D89
+:1007C000C3FD97930B1560AF06FAD3E624C8DA1B76
+:1007D0004104BFCA7712A757F88F6139E69459933D
+:1007E0002B90A95FA7E284AFAF3830E9E75A3DFD0F
+:1007F000E21A771C609AA71770D2545AD430A4E436
+:100800007F255AAA4EA7696AD02D6B24C37C29F98B
+:1008100087C4DE7FC5DDA690DC488C8DF1F2987C24
+:10082000C4F1545B2D03EE32A5C8351D627BCC00AC
+:100830003ACFD55837A661E967E428A8F7CEFE83FA
+:10084000BA30D9F8B99D33118BA85931C2BE9C1F5B
+:10085000F35732A50AEBAED3C4FFB362740B3FFD6E
+:1008600096669242D001DAD3FFC137AC31954FBFC3
+:10087000E778A071978594CB42B594878877FC87F9
+:1008800013C10A68A8D51D106E69AA67505B0CAD2C
+:100890003DAE112BAC9B11427007C61A156CE0A639
+:1008A00096159EBC51FD3251746579F97FEE5C9EC0
+:1008B00005586061A3572B9ECE69BB705C8988BBCD
+:1008C000F97EFA90B2B9D83C168CFB05BEE81B2520
+:1008D000CE10E8AEABF5773C82EF09B0095FB949BD
+:1008E00028D79B733A45806649C0597283370DEC0F
+:1008F0002A49291149B1C4F2098DC5F4E7F7730AF1
+:100900002EE15BEA508C975DC1D6A9BA1AD408AB28
+:10091000BD4A0E3852A21FB07766433A29D29B0DCA
+:100920009BCD06F605203D79F326976B1865576039
+:10093000277A34C0DCB90F85C6A97EFE492BCA04CC
+:100940003D17A9491CDA3ACB50ADDB8CC367400E8A
+:100950005A2C9F48EAF3828401E2E9A14010723EDA
+:1009600036B13107BEB8A9E91CE0CFF840610743B2
+:10097000481E14E934560498FD5E02D1CFADFD90B7
+:100980005C88C147208498F9B688B6F29647ECCDCA
+:10099000D304260E70579EBF527E030AF95629547F
+:1009A00016DA2A8E01DE6D4F3F8634ECCCFD9FF6C1
+:1009B000E9DCD7D4C62A7D0C2674755924D15DFF95
+:1009C0009E94408A8CAD1AD30C46C587590B51545E
+:1009D000E9E1C6F9E0143096232F21F308FCC7990A
+:1009E00068D5F95A465A8C13D3B56BAD9D18FBB830
+:1009F000BCD43173CF5CBA382CEA017581127332E2
+:100A00004E1EEC994329D8F0EC03381D741195D58E
+:100A10004F1464C6AC2BA41F599FDE780522D06CFE
+:100A2000D305A80A7382C5C9417A667BD5168E4E56
+:100A3000F6079DAEFAEE6F8C5D44680B966F5F1CF7
+:100A400081079BCC05FD2EFE0AB6D0C2B7D55AF35E
+:100A50007A7E63C8EC6E24F99A33665282B5A0613F
+:100A600061DE91CA250D9424D5259EA90A8CC96002
+:100A7000430D03905A1179A0BF8F4C8A560AA38C5C
+:100A8000F3C64F91879A2DB8CA5454BB7A23D830F5
+:100A9000068C082178CEA61BFE83B278BDB128EB68
+:100AA0006220B4017AF723CC27051A175807A374DC
+:100AB000D9D9C6B598076B8F88D4C50F01A27331F9
+:100AC000BBF086979605B76F45AD87457A9C428205
+:100AD000B3C236604D848F82830EA62921889BCCB9
+:100AE0004C0F1D3352C2B6C74CE5A879CB63FB212E
+:100AF0004CFB1B0AE21DB47A090679EE53238E479C
+:100B000032470299ABAE218BE500336E5AE60456AC
+:100B1000032E1C3CA43612294DBDE4341EC93735C2
+:100B20001830F9CB184E64F44D9115CBBE88A7DC74
+:100B3000D8ABD74462554B01397DCD8185A7786804
+:100B4000D39E472A9BD0EDBB251FD27D983CDC9DD0
+:100B5000135EAAF295FDE6171210368C485F06B4B4
+:100B60002AD1B82F6FB323001FE47A6A0802938951
+:100B700049D449D3597E093631BBAA3403D88556A6
+:100B800062C4727919DAF72C1CF1CAFE2358E141CC
+:100B900060C6ED41FB0C33F260B8A954439474BDB8
+:100BA000F0A42F51B025293E5FBE714534CD409D44
+:100BB000C14DFFAA9F9C750596BB29BF231B60DE14
+:100BC00044271D20AA932F3A86799825421CEDFCD4
+:100BD000CCA852BB69D1605FFA7E8446B461A95546
+:100BE000C0F05619E017C58BF645AFE700A45F8546
+:100BF00032D926125BC9814906CAFE74AA80888B45
+:100C0000FF030C25AE291808A086BD447DC466E903
+:100C10001A265D0F833F18A328E0885BFB784E39C6
+:100C2000401FC88039D9DA9CA86470785F578B540C
+:100C3000F45B5FE4DFDFF35BB17DE1CA1D0CE4AC84
+:100C40008E9461B6E89F65915F3F368A132E7D735F
+:100C500084F206EDC2AD6EC61C7CBBD1D35DB92754
+:100C600096275FEFC8CCAA3EC3415767EC0AE42041
+:100C70003292A218D96A830711C2B6E8EDDD2F9629
+:100C8000FAEC5FE0C48AFDD90A6BC0ABCEA278252E
+:100C9000280FF19C138A03447E3CC83C05D750BB07
+:100CA0004E4EC677B375CE349D87FC579BF743BA3B
+:100CB0003A6EC9F5735D67EFB9842FBA41164B0BD5
+:100CC000213C22B567199E12BC00404DE597CAF140
+:100CD000263AAFD03B61F608E8564F6D5D8D95B76B
+:100CE000C6199267C242CF85933844C6CD4307C820
+:100CF000A7B1F3444E2776747F26C40EA8C595B7D6
+:100D000093577816420F1B2B42EC991B72F144C685
+:100D1000F5DD022423C404C9A086E26BA3A6273014
+:100D200031A0517D1DC4431DCEF5FBB5A076896071
+:100D3000BF897D68CA1305A2947268468D0AD5A53D
+:100D40008DF51F2518EF734C89D1BC6F47336C8923
+:100D50006DF8112051ECB0AE8B2465D344C8372216
+:100D60008100F7D894726C9CA5D9D429C726E44594
+:100D7000750CF21C6E1CE6D6B2EF4019D71F50401E
+:100D8000FAC815E6CF66E5A88996B5380073FDA7C1
+:100D90008C2D667A146C21EFE5A34E8660440B9A85
+:100DA0007DF8699FDE8E5CC6B80FCB1F2C399D5C29
+:100DB0004EF4CFC4AD7607BE00E85679B3D2B9A6DB
+:100DC000AB262F6407C037BE0A56B04E9684254125
+:100DD0002374D816F46A4081DFE1CC2F15D3E905DE
+:100DE00041B9D790F899A20E10D59B78B84B2BC07B
+:100DF000A5F3CF597201C6D13C102BEBFCB489DAB4
+:100E0000423EF5BA46C4F4C668D1C22E07394968D5
+:100E1000188CE8E38658E41979F0D6A32DA5E59D52
+:100E2000F7E2740251B96F2DA123670EAE640091F1
+:100E3000D0D32679AB1F40A23E5A826EA0D66C9CBE
+:100E400094795FFB26A8A7C3C490D7470D372078B5
+:100E500024D16F6DA5F8C29CE14BD03953372037B0
+:100E60007E0AA3AE7F0BDD7F77393ACB23DCDC2211
+:100E7000491937D2F38B1052E068690C1393D8EB01
+:100E8000D95CD0BF3246AC25873BB2254ED0FEFAA6
+:100E90002C883ED69011AEA0691564464990A12BCE
+:100EA0003A6AB6F5D8BEDD47928E8B1F1718E676E4
+:100EB000A91EB7454C2CE03606374825707BE599CE
+:100EC000C4D69A7BD686306DDA497870D12E016708
+:100ED000ECD0296231BA0701CA816D00E6A4A7E20D
+:100EE0001BAB111DDB01758ED74775184476422662
+:100EF0008CBC28EF72DE3E60F2209AC6A0C60803C2
+:100F0000D1D46A95E398CB052472D8683A896B836B
+:100F1000084FB291DDA683D5B350454BE5B9B17208
+:100F200024C9097422BBF228092765D546CAF9E508
+:100F3000E1F4E1425F501F475250CDB204E01EC5BC
+:100F400092269F5FA854F1868FDEC06ADD03A16DF3
+:100F5000F36FD77281FE935667BE8044B058601D10
+:100F60005004281058FBA5D61D57380E18FD0AF35B
+:100F700067DCDA80CD463487A366A9227416A3D62F
+:100F8000D2A109162F5DC69DEAA9D1C4F5E1900D45
+:100F900029D20FD625B9000FA2A2238F232C1C849F
+:100FA0000537E6BCB283BBE6BAA1261A174FE66C3A
+:100FB000F29F36230AE2690379DFE1A33C1512E4CC
+:100FC00087070EBC762B435857911DB8E5E03629AC
+:100FD00078FF79EF5BA470921FF6CCF0CED1D3DD11
+:100FE0001FA2810E66111DFE9D91ED2BF6B8089E85
+:100FF000EC98CE725CBF6C7989ECE6DED070C438B8
+:10100000E4D4ABFFD5829788C943BD3B9729974766
+:10101000C2AC046E59C635B3A3002437ED6A958E71
+:10102000417BFC2575A91DE2B367E8E9E2C2A65839
+:101030005AF904E930A3BF3768DF2AF12E96F66F1C
+:10104000AB5B3FB39F699F50C8F6C2F0A2E793B372
+:101050001B011A975284CE446BB73733D0E558D36F
+:10106000F6C03247A5C0853021E32825DBAF9610B6
+:1010700082CE88A6CE74967D60FCF8B6BDD9CFA18D
+:101080007910F7FEE1E4AE1401927281D0543ED89B
+:10109000F8A27721AEC9A0741B374DBA34A3F4F778
+:1010A000BA0AF5C5815D7888D23E4DB1267305AA8E
+:1010B0002E9D3B6A5DB02E14CF0B3E29827807909F
+:1010C00040626876FBA4B95B70A41238796C933BDC
+:1010D00066917E50FEAFE412E24D007A5884204DB6
+:1010E00065CE5816AF2ED62B52310A88A2A1A3D8AE
+:1010F000D165B8CF78FE195F2CC54655969944AA9C
+:1011000091F9EAD20FF55F35E5078BB34868A95A24
+:101110005E06FBB8A250F2421021BCBA705A9F2959
+:10112000B8E59FDC0A104418C3AC2E9C60AE971B38
+:101130003EECAE32A7F1C57CA8F95B3AC05BA6AE27
+:10114000CEDD3645FFD3080751B917A5349756B100
+:10115000AD470AD677099A8C120456EB67DC668194
+:101160004A2E18CD7A2CD852D0EF28FCEED45A9DB6
+:101170001F50D414342993879F7159F1793B1E591C
+:1011800022A3CF9B3A983133FC2EF02E50FE80F9EB
+:101190000D17151AE8E81B49F28070353320F44C1E
+:1011A000AC1A05246504B533EBA706EB3BC640D06B
+:1011B0000C2FE8FF515418C1CA0F0406159F4408AC
+:1011C00077AA42B304A791D4BFAFFBA3BE92F2D5D6
+:1011D00058525D24DE28B590698857ED5FEC0DFD0F
+:1011E000FE548C72B137A196F01104A72D4D8ACA16
+:1011F000B18FC78ACCC945CF7055C58D4C95025A61
+:10120000F75D1B6C139E732BBB62560E32F92D39A2
+:101210004F87E8991FB507ADBF8AF2FE3B59B970F9
+:10122000536E0F9F2C4822642BDC356DD90B6A86D8
+:101230002E7340E16C1A1C39BB509341F7034D5C8F
+:10124000E0A1B2EC53FE395ADEB457EDDB77EDD5B1
+:10125000A544A96F269BD1D4D71CA7716B6B2348DB
+:1012600015EC1CCE67C698B260CEB2D9FB069D289D
+:10127000B9018055489C24A2900C3C556367855861
+:10128000236956790B0FBB5BB6688ACB8E4109A9DF
+:1012900041FED4340A85D6094E7527EE11514634E5
+:1012A0004933A5062E765CB707074573BCF36AC2BF
+:1012B000EAED7401DB104A19BF8E0AF18322D8626D
+:1012C000D0EB22D6723F812E16C289A5D41F3E2AAA
+:1012D000E6447279591DEAD2814867F941E1182E36
+:1012E00035CFC8AAA2867C15503FD30D30907971B6
+:1012F000503F4C4A544A3810AA84491F7E3CEF2C78
+:10130000CB7E44B3ABFA094F0E61E3B79189908865
+:10131000E8EA1E5242C0609B4047A1A66CB4C35A83
+:10132000FA76041A2A932CF884BE9B5914418271D0
+:10133000F50B8B8FDD53D1378C1094F84AAAAC5F34
+:1013400089153F562453B0C32F4DB684A3E0B1494D
+:10135000C3954F862B99A8177132032861370B1458
+:1013600021D88343773D3605F65177B29FD146B5F4
+:10137000DB140DD1D57CAB4B54D6EB66673C4F8666
+:1013800048522A9096DD3896C9C437498AA69820D3
+:1013900027E1118B271F4ECCBA8152B6765CA2E7AB
+:1013A0002DFA5AB266E99B159583EB8F92DCD4C473
+:1013B00092F858D8765FF282FFB738FA655F271245
+:1013C00020A0C6D7D436DDD71CB37FF0C5CBC31E53
+:1013D000C0B23AB3BC164A02DB12C858715C01169F
+:1013E000AA4526EAB0919E2AEBD18FA05C1513D6B0
+:1013F0004E179563D5C21B4F65C14496350CF02539
+:1014000022D9988E601BFB10002140DC2EA7CCEC6B
+:101410005A80D29D9C8BB9E6B3223888781FC78743
+:101420001B26338248611E575D1FF305649E2D27DE
+:10143000CDFADB7E0CC6CD89E8ED89FE402B9961A3
+:101440009555B5D0DACE01B8862E24040B9C91B503
+:1014500073986847DB15F32596B2650E38F636F7B4
+:10146000A9DC9CC127EA68ED64CC9705F5D862A693
+:101470006984BF68A055BA20E5888500A963C78E36
+:101480001F211191E021445BC246DB2C70C0CF8C40
+:10149000C19186ED7EE4AEB5904BA3F8FCAEE34D72
+:1014A00086A5B533CB69845740CFF3977D2095ACA3
+:1014B000DB857C264581274A7B1CD014581EE8D842
+:1014C00014B391B7A03795E7E7E92EDE5A13D53963
+:1014D000F34DFF3E428FBA8ECCEA89201C7CD23C71
+:1014E000FA0F1D2E55E74E779B4ADB616DA47DA94F
+:1014F000FC876C4ECF23F96AA1373902A07BFBD958
+:101500001C66964A12E6725CD72384DF6FD10F15F2
+:101510002D8EA3B5F343BF9E3E26E667BD2F7E7B8F
+:101520000600D30618B0B8D65B2553E789F2ACD0D5
+:101530007FEF4F9E89DF9BCC23B5C9C1756172D205
+:101540004E7EC130B7C51CB37E19433E2EA5AE45B5
+:10155000C2F88456ECFFA888562DB674F6EA42F31A
+:1015600078AEB0160CC909AF45B8A9703F850A39E5
+:101570003DA057491DA649A6F059FDD0D5C2F41E7D
+:10158000FE43557892B00899C5EE37F8122665BC2F
+:10159000AFE00B359A7717EFFC86FF1887AEF4EBB8
+:1015A0002B512BFEBB49C54694175B19CF5EEDA9A5
+:1015B0007AFBA52359058D57BADDD091AB2BA8DF57
+:1015C0006ECD3480056B684905B4E92287B636369E
+:1015D000DE58A0CAA1EAAA513A206C5C7C5F1EC406
+:1015E000DF057F015577762ACC63DCE2A7EEDBAA24
+:1015F00033DD8BD8B0BA38FABACC0605E10264C341
+:101600000F01038C21868FCD149F4DE5260EE749EF
+:101610006088409FDB54E430DF5BBF57F0E74A74DB
+:101620002D4600CD851B844B11A2BA11F759508C61
+:101630002133F80736BA10E8929F46703256D79198
+:1016400028B860F196664D07009C0D4F49104AC0BE
+:10165000EA1AB19FA0C9FF2203C80B66127EA8C474
+:1016600088C3B9784C6A3A706881ADA028A286FF19
+:101670003E5E150AC22504FE4919C6E7D4E1B2014F
+:1016800053F897546453AC784E6DE6F264A498E135
+:10169000C430C49F40AE6847AEE54B4DA97C43F2D1
+:1016A000855046D682B058C3CFE0BC87FE2283EF78
+:1016B0006BE0EB075A42E57CEE5378BFCFF8210B85
+:1016C000857796F1B1EAF2310096528CDA44FAE568
+:1016D000517D004BA31F2FE28F2B02EC13704DA600
+:1016E000B8A1E0D2124170ACEB0658D69B18B8BC3A
+:1016F000A0C79EAB5F3FDE34BCF66EBACBBE5A5776
+:10170000F91BCE2DEE926E21D216C3230D08A9D15E
+:10171000EF9552A316376EECA11D6C29B3C898D370
+:1017200049CB49C2712A931771944393E1831A05F7
+:10173000345FF0FD193716E8E3947A8ABD92BE8DC6
+:10174000AB414AFFD183DDD6330DD046F320F2C53D
+:101750006DC960F65D849AB7830888BD707353D4F1
+:101760001E6DC0618ADBDE8BEDCC71F9149F107A9F
+:101770007D00477EB98135426230AA56EB1932B1FD
+:101780000A0F8C16B6EAEF7FC21B0C3A1587BB8F87
+:10179000229599FAAE8C70FD0458D321FF0A9F134D
+:1017A000716D8BA1B10270E4B20003EA27D7DC7D32
+:1017B00042AFE48805EB067F009068134F15D5868D
+:1017C0007947CDB8B0FDF9BEE569F2EE45A8E7323C
+:1017D00025701E168887BD796DC84CCFFAB9A3B99C
+:1017E0008D267F2AEA6620CBBCB09DB825FFB33E8C
+:1017F0004916314D00505CD37B5BB9F97F5E4C2FAD
+:1018000094C07DFF02628807FBC115A619B1040BC5
+:10181000F62AE574D9628C3CA0409FFBA14DD1EE25
+:10182000EF065A66318FFBCA1555D76045B776C0AB
+:10183000D5816CFBBB0839F25FDB25D183838874CB
+:10184000D8917CF3E29AD1FE926CBF7CC3B366B8A8
+:101850000660BF3D1417D4BB8EF2735441EECA81AB
+:10186000CFD423474541662948C3D9C16FA252F35B
+:1018700095C1D511010037F668EB178B08A2AB288C
+:1018800098C2D9B45EA96F8DADC44F5AB991BC4905
+:10189000FFCA212435AF74904EF339FA38A49AE385
+:1018A000073C6A4B2239A23F16A664A00AB7BD07BF
+:1018B0004F638D391D2154E60784A27E68CB440C0A
+:1018C0007C6882F7C50B38BF5455ED1CD867981E4D
+:1018D0004F74CB8EF9795899B0C51B8B480C762B79
+:1018E0009E8F90DE483C52BC733A140D18433B4225
+:1018F0006CA7A484BF18D3137AA8823032A36BA13B
+:10190000F6F04FFCFB36A6A845854806C80DB8DDA5
+:10191000B43BE55C3798B33FE801D1B16B26BA70B0
+:10192000A59EF0E1D67DD969A79144340862DE24F2
+:101930001AADBBDE50AA37CE7B4ACD2B1266F3AC74
+:101940006A7CADA928A69950352878B632327DED4B
+:1019500066245DDE01C8D443F2E3A32B1A8B5A9DA3
+:101960009D8A2FCA8CC8B860B74AB53D8CA54BD7A5
+:10197000CD7BA70A5B2A6CB119057491E41861B19B
+:1019800049DCA2402D00B1A73861769D48138CE94F
+:1019900098EC5A15BBDAE12737E23AC120A10DF3E2
+:1019A000535E2A389AAB7980FD8429319BF7CD4468
+:1019B000563E78733A743212565871765C50E31A78
+:1019C000FAA61D16E7E4CFB34514CBC879F92A8FE0
+:1019D000450E0D5844011DE05655466FE4D285D89A
+:1019E000197204760153E57AAE3F122BA4D0F57A32
+:1019F000A8214CF1713C855D747B0AB1DE769F12A3
+:101A0000B7615B66450A0DD20C411D0A0E4D896017
+:101A100057C84F9844D7C9A0E16D79E7DA1D41AFA7
+:101A200069290047027BA96B2C89EEA2174907069A
+:101A300042DFE0F2BC32FD080DBD37211F67741A8A
+:101A400085F499A8CBAE203EB58871F21C134623CD
+:101A50009EB8407BC03091401E7294BE68984AC9BF
+:101A60004918709E60B6B158A40507F0E3C2C5835B
+:101A70009410EB6929C41AD2E7B27062720A35BABF
+:101A8000E5CD6F999A4187C411BF057D5295118F9D
+:101A900032F13F617AD63E0A72905B763E386A54E4
+:101AA0001CCCE36C2C713DD4F7B4E1D8D2820C721B
+:101AB0001993F6F2AAA3D76C87C15EC77C8E063B4A
+:101AC000009EF0CAF4B2A5165F3F18FDCECF99ADC7
+:101AD00090A839C419A9EE4A7B8848390FA6114B42
+:101AE000EB736DE5DD9DE0D70DCE2C254FEC7491A9
+:101AF000F26A1835DFCC08DBD677B586890F88FE09
+:101B000035541413EF707F324058F47D954FD881CF
+:101B1000ED347136F43891B379566515868DC86FFA
+:101B2000865E3DFCE854C069EF9429660A03DABB7F
+:101B3000710B887BF12F055B6CBE68662BF9AF7962
+:101B40008F008141109FADA653F4CF380313797FE6
+:101B5000598FE2F5441C394970DD61F22EE4DF96BD
+:101B6000135FB66B9F3F1E5729692A5928CEF98605
+:101B70001751B989EB1153C9639C9BEC07CA89C300
+:101B8000DB14541BE276E9419D316165B3E26530B7
+:101B9000426BC9E41700BEF5B6CCF2A983737E3E52
+:101BA000F030A671749AFC2CAF8E5CBC49FD089B8A
+:101BB000D25122865FC6163AC46C1BDED895CA592C
+:101BC000CA26541A805EF118B9A14BA71F68128467
+:101BD0008D7CA8D90DECAF3B69F3EE04022362D1F2
+:101BE00065EFB8B32C6570E54A2EEAF5211BBF0BF3
+:101BF0006211519757F13EB7C0C59AB6995DC26E52
+:101C000087525E9236D5E688FEF990BCD2BB5AE088
+:101C1000AA4FDFEC306A5428ECE0B501699FB61694
+:101C2000185030C7FDA784D783B9A04520FCF449DC
+:101C3000263E4934C3CA462B994ED813DDF6518649
+:101C400096D968863317A8B02AC7D90C37FC73ED2C
+:101C50006360B96A996FAB1D526EF0E8F2AE019BFA
+:101C6000930F6A04BD5056DE267494A519BF7FCE2B
+:101C70003A710BA74E2ECDFA5EBAC3926A221AD8D9
+:101C8000620BCB8A1875DFDAA7E18729D6CCC79615
+:101C9000B6CDC3AA275E5B46FE59B6E014A6A5687A
+:101CA000B9C63C2030781117C532082670F243902F
+:101CB000A4ACA5E4F9DA63DB837AAB0236D1FFB9D1
+:101CC0001A7ACA7828C1AAE3083C6FA4305B438C17
+:101CD000894A91E96642AF8C874AB17FFF8B52DA1D
+:101CE0000FC75587BF136D84FC16E3436E87B2DEC2
+:101CF0000953D75B2FF13634F398CF6BAFB5E0487B
+:101D00001B8BB8155D254CC159BD248DC43282A2F0
+:101D100005A063F4D4964D46AF7A2A09E13C735F7F
+:101D2000E85F1A65EEFEB097972DAEA55A9F578CC7
+:101D30000BE00B242DD255BC4649B53F6A1D2A80C5
+:101D4000A4E58BFC4E3C9566A00326052AC2545A96
+:101D500047603077D1CA4F63A2F2F13F5CCACE2C04
+:101D6000DBC19194BB37AC2BB17FEFC58A14D5DFB3
+:101D7000D822D50EC0470CD538836FD5FEC55C6E12
+:101D8000C8FF1406491B18FD70BBB6C1943EA18262
+:101D900085363FE57F4B63CE8660DC14470866A03E
+:101DA00099BD3CF127914E678E545A3E52D24371F1
+:101DB00051483F2D472FE3A66132C628BA414C1C3B
+:101DC000C0F2FD0250A9996938B91741A059C762FC
+:101DD000ABB2668963EEF919E345F0D482D992E596
+:101DE000491EAEECD2B9A239F8D76C6035ACEAE145
+:101DF00007F0FEB0A3FD19E967CBA74CE78AC768D7
+:101E0000CBB5228A04E101327FF6A685B75747B0E9
+:101E100059F74221B281A714280AE58320AF5D2635
+:101E200061B91337463E59954ED51B3CE1136242CA
+:101E3000AD5AB6E7D68C231BAC3F7DE1F62B9F3C19
+:101E40005CCAE4434F585EADCCCCB5B000DA6DED62
+:101E50003347C5FEBB7BE49FD04E5A7C50BF0A7F00
+:101E60004032FD5A7A2AE35C75B2ABE23490E969FC
+:101E70004F334E36C619A0B508898E6005ECC9B33C
+:101E800089213659CA0C8A0D647C641B296D65ACA6
+:101E900032D1F45F51C8140D276F39AC245E443A37
+:101EA000CE82F86FA40972531339458AC4B56E0CFB
+:101EB0002283EF328612698E431360174008265240
+:101EC000F7E990467DC1521ECB8B94B883E6F76448
+:101ED00010EB00771FB107C91A744665C6D3E6AD8B
+:101EE000801FB8F6BCBC9F4B5DF523370CD6ABAE5C
+:101EF000BCECF3A47A0C10B96781144D1E33043581
+:101F0000292D6916E1624F33A890A09A8B8E7D032C
+:101F1000FD7FCBE7D50C5913CF17208B6358B756ED
+:101F20002018D75F0AA6CD6F101DDE72323B921DBE
+:101F3000E6ABA90C89FEB25BFAC2109CB366C51D64
+:101F40000104124D2D900618C5904DFFC34017CCCB
+:101F5000245C723C88A13B9DD281184ECD464C66D4
+:101F6000F7AC965088278EE3AB67E2BAC397B2EF1F
+:101F70002980BBB82F4CFCC2ADEDCAD671FBBE198F
+:101F80009423C09933078DEF49DE9C3E2923908925
+:101F900065290A3A1CEF5EDB707843FD101B99BC83
+:101FA000C4AC5793A949283AD9F6F50BABE270FBBC
+:101FB000CF03FC20D2775BB3830EC4469ED10113BE
+:101FC000595EC36BF162EA8BE25BBB84FA31564225
+:101FD0001BE6E0EE0467ACAA62494B52B5A31CAD08
+:101FE00018758717ED1445A75BAD5BCB178FE751CD
+:101FF00084EBA01DBFF3EDC13F0134ECF2AF6FAB3A
+:102000003539677A9C34DD4F77A1D4225E03774758
+:10201000482B0D46042A4A422984BAB9E00B55EDF3
+:102020005E00985200EC760F777B564E7552A4688E
+:10203000B5B5002C5E7E6DA8FBBF47C715268895F9
+:10204000E0EEACD1DC9809ADB46EA1A6D6A5DEB6A3
+:10205000630E55D062EB7123CCCC3B57EC3C3EF683
+:102060001C289F00098654ED2A65684D008C78F87D
+:1020700015EED72261D4129DA8146BB742AE6554F9
+:102080001D31A0712A8C944CA0AE65760CC516A7A4
+:10209000FFB9296721E68420139AD57081602DE766
+:1020A000CACE8826CB139D46DA62D79C9A99190F1F
+:1020B00017A97050C5F3F59F1D58BFE8B3D0927FA4
+:1020C000E552FD46488CBC797D2DF1E87B0CCAC9F0
+:1020D000972867B0EC70ED65CA28A2721508085100
+:1020E0008D564F9223B206C4F199A85A89C45966F5
+:1020F00009C46289E2FFE7570567959C69C5875661
+:1021000038DF17F3354644370E0915F3617265154C
+:1021100070906208640951DDF815705D8ED708591A
+:1021200090FC2C6B89D43CB79BB7C402F7DC70CA17
+:102130009F5C8B7CE14B1D08962D685C109816D631
+:1021400035EA126DB560B5D39B458FC5DF07A6672D
+:102150007F11AEDC12B402395E4A92F8035051226C
+:10216000B0830EB4A737E553B628A6712F65467124
+:10217000CBACD8A3FFAC022D38B8BE075D2C06410E
+:1021800033C2593E3492449D6E61ABBDAEDCE16614
+:10219000F157CCB24F3848390BB7E596FFB3C95D5C
+:1021A0001DADBD496FD878517DA01020D9829CD13A
+:1021B0006461788B34BF030CF0EDE150289E747895
+:1021C00076C39AF005DF229C54DC9C68D4DCF17E57
+:1021D00020B7C67D6FDDADA6E65E3DB0A206A5AB1D
+:1021E0008228CB48103D2ECAB26EE5C986EC275135
+:1021F000F7149A8AB481C49AC61EA1D618DFD834BF
+:1022000027DC02814FF887B16EE7172718BC7BA047
+:1022100031F02885194ACEB0D44CE89749AE93C71F
+:10222000184056706097C9A1830DE4E05488EBFD17
+:1022300072EA63728E1CDA7186EA8790916599AEB4
+:10224000599E89E423DCB41DBFBA40E0771DA7DBAB
+:102250001C4001D91055045406C73EF0FAF956F255
+:10226000F379B9D98DD46A4DC1BCAC9938EE8147A8
+:10227000B43BE75116B6BB2F7FBF3FA716D3EDDCAB
+:1022800006A46EB6F56AF00C06E87A40ADE8A8EA56
+:102290000913D1F30F2081D2C854690FF50D3E3DCB
+:1022A000443BEE9C4D45114A6ED9DDD9C782E518F5
+:1022B000B20CF1F99F7486E081E807F08986473C0B
+:1022C000130D73722CD550EA38FB99CF48460F0A8C
+:1022D00025ABBB4A0DCA2CC566D5B522B12A6324ED
+:1022E0004EB1E092F6DE182D6E8D6F6822F75E37E4
+:1022F00038D91E36CDDAA1234B4BD89FCD532ABCFB
+:102300005348A138DF42712468F8CAC989FA560EC9
+:1023100006D422F49B70A54411816818274A1DF247
+:102320004D6DC4422D48071689A20DF6D313BF3553
+:102330002ACA673DD3C034695C118CB8ACACC164A7
+:10234000CF463874CD1284582BDC546BEBAB7D1028
+:102350005B0C096E6DC99EB69E4D0813CAFD3A9975
+:102360002E152AD1D8F9BA758E9E1ED618254299F7
+:102370004F5A1DB22E6C2ABF773CBD7EA6FE1A0FA7
+:10238000E0D2BD679D0930CF4CF947F31C37A574E7
+:10239000353699CDE1645CB1A9A546D4037C9C4E49
+:1023A0006EF4AEBBAB1ECDD98EB6B07A93CEE4A39D
+:1023B0001B8330383E5C07F4670364B43BF4930836
+:1023C000A6F7D7C77A067A685C49ACF851EB77A7CD
+:1023D0006A62F37D50921642BF4B9729E6C95A7440
+:1023E00004BF6361CB518877DDA0D90FC385E43288
+:1023F000E59C4B7A8C10755FB5F794E9EE8328C89D
+:10240000E26D2E58EF0F7A3CE648E0B82241D688BC
+:102410009D6987DC6B2D3E0983CD3137DA6604F781
+:10242000261E07BBA7C9E51F8108F3889AD01A4A60
+:10243000FAB9B45CEBA9402582A683A0802553900D
+:102440009B8521E0253663F6E162BC365921C984BB
+:1024500071956DDB94262CBF574F283C0DF51687E0
+:102460007B10070FDC369E7B32A7DB9F7587E5C1AB
+:10247000FAD1B029FA40FC181069AAC5D763846F55
+:10248000E0C1D9B75114978089EED0A26619EDC387
+:102490004C12D3E8D7A7C15C3926A34194111FABD6
+:1024A0002F2BF3535ACD16C4708DBB54B68E0E8E9F
+:1024B00017F679C0299E92D05C3C218A180D483EBF
+:1024C000403B9CAD45D0513E03ED7ACFF657F4AD7D
+:1024D000BAFF85C61248BC7DEBF0964AAC8EF7EB8E
+:1024E0007BF18C05122378547F140707E10F233CFE
+:1024F0002E7BA28382C91DD7007B6D78F3EC305D03
+:10250000CAF6F9FE65EA85016DFBABFB1B77015C42
+:10251000FE69F09A7C9F55F9567C0C408BCC7CE28E
+:102520006E6B15DF7C857C43682E5C2D30651DE766
+:10253000340D9B25FF813C13647419C1E8F3001D21
+:1025400053209EFBCFB8C125344CB5B4A70C0AE686
+:10255000AF44DE1D4F78FBF16E2E7AE7AB4EA774C9
+:10256000D211410CEA0EFB48DF58F6BBF9C5392CF5
+:10257000C98F28AE4907651DB5D0AD8889D313DC56
+:10258000F9922A56CC44F4ABF5B19C1B1907EC0226
+:1025900008AA1FD7AA2CC399F41C41BE18117BD2DC
+:1025A000D502AEC7EA48DAD91238A092126691E392
+:1025B0005775E83DE046FEE82DD85856BF59F86EED
+:1025C00006893A951C8C3098DF1A5386995A694BC4
+:1025D000A0C90BE5FD161689189802C2D7BB2EF5C7
+:1025E0005173054C34E3EB836971CE6B84159860AD
+:1025F0002FB2787D2617232F29A43327A345F7EB85
+:1026000074ED82CCB01205A3EEB23CC395325544B2
+:10261000684903953147DC9030356DD75E46883D7B
+:10262000A2796C45EA70C8BA165D731A5960349580
+:10263000F5F6E095E61BD3C83EB684293C59F193E4
+:1026400022497E24D3326F81F302F97F8A988990E0
+:102650009A1E841DDB2E42A2CA88E1B857167CEC74
+:10266000C9FE03B95FD3B7D5A5C03F28A824082564
+:102670000DA0FF083DC836E34FAA97A5DB59C5EB6F
+:1026800037D2B4F63564AD1A4BB0FEF09A3CA7C70A
+:10269000150E012BCF56DF2DBF3CB5E244F70FE5F9
+:1026A00014609A2C438272893DF8EEE88DC659BBBE
+:1026B000318BBBA51F7301F298932281728A5B7FD5
+:1026C0009FF5C84DFFE7B96172707E76ADF221D3F8
+:1026D000116B86E5DC30310AA94F473C0286F70FC3
+:1026E000E7B8907F06F4384CA370EC5E9D527B54A3
+:1026F000D84556F16A9FDEF1F5AF51B5C6E7818D39
+:10270000C9D0BC4714E9523FDCEBCBF70B468592AE
+:102710003818A4506BACEF59B926DFDF1F39C1025E
+:10272000542B87D0916851950ACEFA828C749CA85C
+:102730003D4E4D8DD888CE191DD15827DEC6CA1CF6
+:10274000F79E15BD3649291B58D12513707CCCE264
+:10275000938CF62126119A599C45294616AC14658E
+:102760006411277E5C8CA2B031E5126B952FBFD22D
+:10277000C32DB830D13E42B3C537B0BCF6D7FB4A03
+:102780001F57DDE459FCEFCA1A7CF63D669571A629
+:102790006278E5351A3B02401C0C83478704851A92
+:1027A000B5F7188C0F603130B85C28B6523F60A383
+:1027B0009E0B5A83328C250448BECCD1BEA12CC8B6
+:1027C000858E54DB678B67D9004D301D6B81BDE76B
+:1027D00012E3DEEE1C5F4291F1AA83C8BA4EC1EF4C
+:1027E000D336759BEB6D2EE0870C18C142463B68D3
+:1027F0005BD3C8A8D1AC6F04AB4B156224F83E0B79
+:1028000051EF903C92AFC245E4E8670B0160C7E529
+:102810005FBB7D980B9A9DAD3DED23912A01AC5293
+:10282000EC0C3E45FDCB70F429F27D096240978E99
+:1028300067856C57EA8DCC688A5366D879E58BFC3E
+:10284000A391CBCB69841FED0ED8F37D9FCAC9AC91
+:102850008900D025EE95BC0C0A9BF9F00DA4A6AB1F
+:10286000DC0789FAF1408818B48815118E69CF3BCE
+:10287000A3ACE2DF6DA9004A6D3A5D33AE8E54BE63
+:102880003B7468BCD15E546068633EA84F4027CA61
+:102890003E66AE74F8E908BB3A65A9F68EA83CE13D
+:1028A0000498F1A88ECBD4D084EC4C01565FC3D4ED
+:1028B000AD611B9081AF1D143AB03FC1B5385E6465
+:1028C000AFD0EB2FD8AFF3CC0FDA0BE5E6C048530F
+:1028D00086B8B7DA7CF2BCC52EF0D87D71B8848A90
+:1028E000797FF6DD87301D004113D7318340DABD93
+:1028F000942EC1133351C30845B1924DC03A901D77
+:10290000064D7DEFD2CD8586F4FFE1C6DFCAD22F1A
+:10291000D5EE5ECC24C55F5EE0B85369613813DD47
+:10292000F22DD9578255D1A8E4DC3CF2B3C5B4B43A
+:10293000FE9E76F8CA74A2A9D92140E5537AB91D42
+:102940009A4000DAE3097C9BF2E6B603C6412AC549
+:102950008CD5D73859D59F5276ED114BE7A00E2371
+:10296000844DC67352FF392665458358BC7F357444
+:10297000A88997573498AFD76C49ED47434F7BF000
+:1029800042F7B0487348900F904582B6B0FEC1AA96
+:102990008BB146648CE8ED996021A0E17D05F17A68
+:1029A0009E08B959E83E7B7F6D9356C216C09ED6ED
+:1029B000D0B317BC6DFFA22A4260C652211399B74B
+:1029C000A7701F11186C95F57683FA26080DBF9233
+:1029D00098E76360E08D5FE96564BCDDB147158110
+:1029E0007061374106B2007A78B74363D4D16B4245
+:1029F00043A59D8F9D386B981C0118443C98D501C8
+:102A0000F27B887044517136C8A263448DEB4CDC74
+:102A10004AD077579461EEC964EBFA9A9F3A91A62F
+:102A200070B1F193B66982A9D5B4559EF78A426711
+:102A30006CF6B9AB48B3F5AB470F69B65CAB36DEA5
+:102A4000798E9AA22A3ED4191CC3B2890AEC753F2A
+:102A50005FCB76DB9529050AB131D031F9FCE45D15
+:102A600071F1E535BD377E3A1B1FB9292A58C02FB1
+:102A700029FFA932AF0CB841AC39B2C6C2907A1E58
+:102A8000D5E365DF30F425592A21DBD2D167F7E899
+:102A9000BA94065EB5A4530A4F2B3B9F38E2C45943
+:102AA000EF04D807C14FCF114AF1FD7CC686DAB7D3
+:102AB0009D84E589A9848C6059F19661504DFCF79D
+:102AC00055B4367A38B9BD7C9FFE92FF0F4352D879
+:102AD0001C212C4F1BFA5ABAA604F8BFAC3DBD6AA4
+:102AE00058770996D04FE45A79AE275F84A7944F60
+:102AF000D3986E42FE60EC4C1A0AA54F1716E342BB
+:102B000036BA21BB7B769527EA9C6CE74D280F01EE
+:102B1000BC99FD5FCAEE9AD59AEFBA8B160B24705A
+:102B20005AB6D3FA82F546FCBE99A821F19BB1832F
+:102B30008093F69420EBE4D6D4CB0DCCED72A59126
+:102B4000F041C9632D76B493139F3785570A6C5EA5
+:102B50002A190C12A33E81354D099849AC6CC5A5C4
+:102B6000E461076ADF276E4E16165F89BB95EE8F0C
+:102B7000A29216ACC07935D51E7AF39659E3D9C91D
+:102B800059845AF5020D6AB08D12E79E0DDC4D4452
+:102B90001D9AFF8B7F4C87D6DB6B309B8506BE6B07
+:102BA000731DFE7E807B9BF8BC047F86AD1492DF94
+:102BB000F2E14BF7F661B926A6CD1AF4AA024A88CB
+:102BC000D448C9A26A9A2FFB093E35EA70FB7018F7
+:102BD000AB923174A8CBEF3A4707627AABA9BD9BA1
+:102BE000413489025772D717BD4AC50BF8D0141566
+:102BF000EC7352DFB8FC69FE940F59EFCBA30DB410
+:102C00006552901FC144653D4B37F14DD378ABE120
+:102C1000A8405CFB0E0BBA9BB143E582D31C7DDE62
+:102C2000DA97F998AD602E6D780FC167EA94047B4E
+:102C300023BF13E27DD04B85E92E3B2DC054BBFE54
+:102C40003469FF72985A105B59F557FF0EADED438A
+:102C5000079EA57A3F8DCC110EF085F7C0E5DF8386
+:102C60007CE6BE6ED9E5E0F521BA234F8AF769E527
+:102C70005A0F7B747849C80A36C406EF49B129ED6A
+:102C80001F70155C0A9EB4FD4D956C7A931556A382
+:102C9000073F00D62BDA26A37B535936B41FCA9EB2
+:102CA0006B33EFBC96709CD5049B272DB4E21DBE00
+:102CB0001B915FAD0D8FF033492B57D4BBCF61A56E
+:102CC0004236E137B4788E7639967205FAA36F10E2
+:102CD0002BA792E1319CB733A04E679AC3C8BC6161
+:102CE000D5A394EA5B5035E28ADCB7E471A7B0EA79
+:102CF0001056D8C4B35CAE8BC2933C65B265EC6829
+:102D00007DA3D1F0A3C60ACEEEAAC5B1DE77B94C39
+:102D1000BB1D48AE7092AE031BE398ED02136875BD
+:102D2000E57499697615ECA1DE517728FFFE233E04
+:102D300041A25375DE1448E4A01DCA3CCAEF55C534
+:102D4000002E06029ED931D0B828A2AF39F45B1507
+:102D500091E87E6B90E91F9FFC39AF85056470890F
+:102D6000A16FC670342DE26C7B5A4AA98CAB254703
+:102D70004BB5BD1F90C5E49EE784B28777C0774905
+:102D80003E8C6F7321C91059665124061C0C843F78
+:102D9000068515F96BE40BF197FDF9146AF15452AD
+:102DA0007216FC11890A6F8AF9391D615A4EB7AA49
+:102DB0008B579C5E5E8726D7A779A4C529706A8544
+:102DC00093BF4DE5EAD7BDBDFA6B6568D767A4A789
+:102DD0005BBC31DBDCA4A9A8DAEF6C0F855F08CD02
+:102DE000DAD77080BF836023AB502AA6097E54AC2B
+:102DF00059C27B563FB2D4067ACA64EE56453CD4DB
+:102E0000B126FED3382B792E5816AB856826A28DB5
+:102E10008335B40DB09AB2E204A5FC9C60959E9AED
+:102E200007C859A015E63062EBB6D40D83114225D0
+:102E3000A12981B795B83B066C3EA9EA80526FE2A2
+:102E40001DDD7CE226D9C31FD6A2AA2EBA72206F3E
+:102E5000870D01BAAD6F8776D58FAAA5C473729C12
+:102E6000534F58664607B79543EB37A57B8B717177
+:102E70007837E48D531A0E5D82629C157D420AD22A
+:102E800032A5F2BFBA4E5BC1B85171F32CCCBC7EF7
+:102E9000543BB4F733396DC0A67F7E759EE4BB68A2
+:102EA000CBC755DBDE9EB893E0B5E41DE0F4F6E455
+:102EB00037430BC3D069A62A2242E0C870CD2DDA71
+:102EC00060B50AE7845BD0B1C3C89763B1EAF08903
+:102ED00060AFE19F0AF549AC72AA7B403526EC6AE7
+:102EE00036B2E041B433747CCA04BA4A509174CC0F
+:102EF0002675C0A549282815C5B68D2D970E8C407E
+:102F0000F786811ED8C29FA8C510448F301CE5D01B
+:102F10007F31F24A9E50A66369C6B8ACD8E133034C
+:102F2000059DCA8159270221914AFDFF2BD292B3F8
+:102F30002C4B2F227AA519296906C81B0543C414F6
+:102F400064C423A5B67A296FADCE9F708B0DEC01BA
+:102F5000CDA6304D16283D87A44494B027D6FE0355
+:102F6000369D6E52A306CDF13C488A306BC88A6606
+:102F7000B9E19536A9EFED4D337059D7FF4A5F732C
+:102F80005C697064608DA71C7A610D5EAA49A0A976
+:102F900019514940A076D2053EE7803D885F4F8FAA
+:102FA000C6A13AFEB21B632E75F2BAAC2ADE42D736
+:102FB000A2C8BA20BF3D4A45EC6EAE00E06A9E371B
+:102FC000F3BC3C76548BA6CE1E1DC3182D597C0035
+:102FD000A7A9E7C24142D4A1387CA6BE6182284D90
+:102FE000DA7D414CBB9EB2407766C84BCA25D83EBD
+:102FF00062D08CDF24BD0A181E7102D071C6691F11
+:1030000044C3003212C001688B1404157CA7A92D9B
+:1030100062CC251A21E1753472A5E2D5C0745FA394
+:10302000597AFD30F29DA3994145B3C4F16B7659AD
+:103030002F86A56D6238A84DB63F2B1D4E3849AE80
+:10304000228C137170B9D4C8003E6F5602AC8AB599
+:10305000A163008A129A70FAA7991FB9D5BA632C96
+:10306000D46898E17C4AD8EE0C130DEB0F4E85F333
+:10307000BA29DFBA038237DCFA852F47E272E64FBE
+:103080008739FCB11440A36C3A6FE8FC788AEA37C0
+:10309000EFC267E4DBA543B35A2A2E15A74DDE76AF
+:1030A000561973333E68D240DBF985536AAF8B847F
+:1030B0002BA9F70911E52099558C147F174CC3D71C
+:1030C000CC7C78650BB9796AE4E06195EA4118AE89
+:1030D0005E095053BD49776B1F89B7AE1A333EDB8B
+:1030E000071FA4799711C8F966419E6DBBA8479246
+:1030F000D5C361E408CB4B2B388A91218FDF362A68
+:103100006730149CA4F0B14EF0D54497AD678A0B9C
+:103110008032A5B46D5680C596511A2D3BD7A25B5F
+:1031200074975D6A7B4C6A2CF535AF6E4607AB8BA6
+:103130005E9F03F5ED73847BCDA9D4F1E49950290A
+:1031400077E990C388D706A29ABBCC564FF5AC81DD
+:10315000FA5E82ADFB6837CC9FEAB7576D864BB6F7
+:103160000288036ACE4DE92ACA94CDB6270E730FA2
+:103170007FF312024F50CD8D2F32E38ED108A90C70
+:10318000B3C893BC829B5740D997EE7AE60F864E20
+:103190009A0AEA9B0CBDE2B11CFC9F5FEF253CB68E
+:1031A00039704B38FA0B6A338F41E890971434E941
+:1031B0004CE7A10D6C59ECFBD899A60D7540CDF5E7
+:1031C0001CB9E55CD2D30E356FAAA8D0601694FD69
+:1031D0005FF519DB090B5C359288E7ED267A3985B6
+:1031E000DC99061268E96B9764AEF683B61214494F
+:1031F000B28279A4BA9B6507236297708A2C2BF060
+:1032000056E9E80D36D4E4236C7D144C8C14D6AC0E
+:10321000BE435D6B306DD8D714DC35AC9D4485B5AD
+:103220001534491270B604325EDCD335F61AF05FFD
+:103230009B2205B3B7463F85DB4BFF7A98A0CA5166
+:103240000F832D3AD567F364FCA360B2E0723C9221
+:103250008C00B496A87BAA57ACD51F11F2BF2BD116
+:103260001012255A9167A1D79DB603D2DEFD883989
+:1032700061D9905978772F266EA3E86B0C58F47BB0
+:10328000563393F7BE04CD3D92E91A062D99632378
+:1032900017BD89449F0D4541EDAFA41922BBC0D392
+:1032A000C2B38BDB17DE15715B0493FCBC41DB39C9
+:1032B0005084BB8B09AA49D79B098B8ACC2AC1A40D
+:1032C000474D3CFE3B400B13D2FEDF376772D69969
+:1032D0005D52B7037B16928E3261420721D6B4CF7E
+:1032E0000BEFE5122002D985C2141D42242D7BD399
+:1032F000F25DA29B26D90F1A0ACAE6DCDA0CCA6C68
+:10330000CFFCAE11CA0FB75BD62992179E282A4769
+:10331000C55D49BBB70D3BEFAC9C78D6A439F1AB8A
+:10332000C5C1A6B8437975E5FE5A74ECF960BA3D9B
+:103330004191DD92676FA4565C2A6695E39227D38C
+:10334000DE250D1F466AAD49BF9EBE260D3CF42901
+:10335000D187EDA61125EB0710F1BA4583C789E6A1
+:103360006E220ACBEE4F3323FCFE71B7CDB3AB8D8B
+:1033700027CC05DD69D82A04FF558360FFCC8BB0CC
+:10338000AF9769BCEFE3BB3370438706EEBE8DB7E2
+:10339000A8409E4F9A7C7AC08E36A2A0BA2136638E
+:1033A000C6C063548E2734FA9B8DF64FD7EFE59055
+:1033B0007789D911653A73C021E1EFD0920FEBE61E
+:1033C000D09BF63370B4DF103B442614860B472E97
+:1033D000AB01F828E239120E0A4D1B64F498D5951A
+:1033E00029861805303770541185A49AECC7002D32
+:1033F000A31723A066EE00B4DD199C83E70F716E5E
+:10340000E9F19F3DF6240A8A9DE0C32167BBC644CB
+:103410009E103FDD8B8DD6C22CA1054DBFA1B29869
+:10342000F525FA5F8DCBADD7C8BF863AD4D03E40E4
+:1034300053554017488F59EFABCA10ABB390BD3806
+:10344000AAB26B05A9B8A9673728BE9FB539F91F7D
+:10345000CFC2C2B948B21F0608F53F89559B95CF28
+:1034600006D38872C2459E54C0E758F06347BB99A3
+:10347000E0B8149B130995098882FB86DE6172F51A
+:1034800011FA315CE3480695E6107D8BDE6507B0E6
+:10349000911E804E81494C79B7C4DCE89ADA0B9DC5
+:1034A000C4A669A8C38CDD70EEF0E4B5CC40711001
+:1034B0001BC0968F6774D82139B34244A6B74840E1
+:1034C0008F5C729437738A2C2B7755490A703D3480
+:1034D00090DEC6EE7B3BA0F23B14B31B884D1AF284
+:1034E00058781A0E4957A88FE0B68D66532DD776B7
+:1034F000BBEF63C6AD78F6DCF823BC58724C8D7612
+:10350000DD58215A4969F5806D15FD4F2930912FFD
+:103510009B2F15769E3488AE66795578431DEF67EC
+:10352000D0BEB8AC71A30F4D692229EC0F04A03EA8
+:10353000CD1C320A5BB112AF05CD2469E38909972E
+:1035400012F0D83A998796E843A981E8BE42BF298C
+:103550004A63BA36D820A93D9A74EDA8F601DFACCB
+:103560007263DF6844BD5267BB2B8016480BDCDBFF
+:1035700084101A4BA365F445215C7EF178DC666DFE
+:103580009D30205B82BB3F9BF0BEC1E6013F6820BF
+:103590009573BABCAF02BA02B59B3822894A8A7BBE
+:1035A0009DF65F86270BCAB5D1C20B44023208CB09
+:1035B00023FE195F711445FE704FAB0F6A338E4BBB
+:1035C000482BA98907B4F1645A0303A172597562A3
+:1035D00073493A6B595F36FDF50D07A6314AB3CAF8
+:1035E0000AF4FCC4C6368754D79BF3A89337B14777
+:1035F000C1D66782A5F4DDCC7E00D3D72A63CFFA8B
+:103600004A088235C382BDA276B8000568570225F4
+:10361000939B3945A82A2CE8654DDA326F36005560
+:1036200072871FDD1C34C65628E8867D89DA7D93B3
+:103630000923ACB49B59753BE973D0417371BADE71
+:103640003F38AFA59493CA6981DF9893996D86C975
+:10365000CB4813E67202650468D4B3C392182B6B8F
+:10366000D5E33963B056AC1B97BB69CF3D776EB3DA
+:10367000F6FAE049B44FBFECFE7A975FCD9CA3D732
+:103680008560612ADE54D703282118FD33320C5C93
+:103690004D123005F33016EDA7E50427EE6595329F
+:1036A000C625A36F95478B07880B0A0FDEBEB6DDD4
+:1036B000B24A07C59461DE8774CD46DCD858F2F073
+:1036C000C86E989189C1FFCF87027DAC4E14EC92F1
+:1036D000DEEE1C6990E5A21AB735A410BC8C312B24
+:1036E0000DCFCD1369442CE99B711BEC3C02464F76
+:1036F0001DBB7E476F0825BDB4DE479815ABA41AE5
+:10370000F284B8A2BDDA931820696EE0892CACD798
+:103710009439563C74D85E1714912C73422223FDC1
+:103720000032787233CC5598DC4DFBB55868CFA287
+:10373000A6C2CB471077C5B6606EFEF312F8E5154A
+:1037400013A060F170131AB088A4554E5E48490565
+:1037500013CE5FCFDF276955D25F8A0A665DBD88C9
+:10376000862FEA04E2D344D5AF9B0B6FA03FA3643E
+:10377000D34494A5905A87759195116E66863288C8
+:10378000FE37C997846B2A86F6E82A9E9110AA65AF
+:10379000B4EB0A22BEAD232216816E0EEDC7CDDC3E
+:1037A000A14EB1026E101FA48F24B0132DFAD1E2E6
+:1037B000C72D9606D6BD864987C0AB483D5C97228B
+:1037C00001C1C9514FB4BB54F1DEC1507AFED79943
+:1037D000574DA5DAD8CBA676BEAED2FE88AD06BDD3
+:1037E0006C2F7CDAE6BB1C54871DE1D04F452B952E
+:1037F000B901DA6AAC0FFB8D6A3B2699E5922BB9C9
+:103800008C1BD74D1166081C938A1F85E3C298B2A2
+:103810007317102BA730AFCF9045604B4A2B1F3F3B
+:10382000E34AB202FD62B540954C0A0D1D4FB278D5
+:1038300016D0E340D0144CB67AAC624EE482B92381
+:103840004555BCCD6D837407FAB71B2286CBACF00F
+:1038500042AFA2E94D2910B4F088207694AB87BA24
+:10386000971E85FE7391D3BB003C9CF42F6366AF1B
+:10387000189958A5C2CD208D5F3CE2A9AC1D6BFE06
+:10388000E25758E50DB5A3F38D221B1BB96EA58336
+:10389000746002FCE590B14E055ECBBA91E00EFE7D
+:1038A000FD25DAF3B17E30E8A96745C480031343F0
+:1038B000BA6BA016A2ECA3A4694141003307E07AD9
+:1038C000D0218FCFBEE80A1B3797C6F6DBE683F41C
+:1038D00093E74C32766BC1BDB889C0CFC42E6D332F
+:1038E00094CDE92EBC6CC70E49ABAF319FCD851688
+:1038F0008D59F0B19C7D36CA857E0CC257DE0556C7
+:1039000077DD10660DD2EE05271946DFC4E5802667
+:1039100096CE3F3723851E7FA6FE721E232D92BEB4
+:10392000FE918766C49D92DD69EEB78F21333DDA43
+:10393000779441AD6A278D0FC3D94E0C04C5DC487E
+:10394000213A3EF55CF935EB0CD95A21B4960A0EB2
+:103950007E967FC40C9EC4A6D52538CE56038DDB3B
+:103960004CCB9A794A6B6396FDE4E9186EEF142B01
+:10397000BCCA2AB7E7BAB76D5F6F9923B6D2C72A18
+:103980001E0B492A3F7CAD4024E007A88368586E8F
+:103990003924F8BE11DDFF676D20199B3866750765
+:1039A000E12C5E3B4D239B42E373AA711ADE4E0667
+:1039B00079A85CDE250AD9958542FAD27C93817973
+:1039C0007ACA041B8154616EFD0441433DB7F86817
+:1039D0008E980DF7663BED9572A28A631EC3A5957E
+:1039E00093B4ADC4C4337568D4CCB29A9B01D0876C
+:1039F000D31DE90C66151A3CBE783D0EB3DF683462
+:103A0000A1EF5758196B9538073A40C988A0F8F4C8
+:103A100078D5EEA320068D8EBFBF4B1B2D9CA5181D
+:103A2000BBF21C1DAFBDCB4DFA2CFAE03428285454
+:103A3000614D71634AE8F0808D87E73C9482C0DA7B
+:103A400037C951EBBB68DBC8DB4FCA2E423CF1A63D
+:103A50003035B81884B105BCFFB69408FC76951DC6
+:103A60007DA08FE23DF4E0743A32811F9DE76BEE5A
+:103A7000621FDA7DE8E8043AE9C1FE6686948C8824
+:103A800021890B9FCC04B649566340C2AB87F82905
+:103A9000CDD6CB84ABD538BDD3ED28C0ACC72EDD99
+:103AA00097607D09F60DB2672203B852AA0EBF8B4C
+:103AB0003DF02843C7FD68C58DF278DCFF5A20A091
+:103AC000BB61F2B5811D6D4CBA7C958E312541B339
+:103AD0001A76810CE5505C26C834DD615B744BDBE3
+:103AE000ED2B5C9536B131546052FB484091DD9E20
+:103AF000223B2C50AF3B8DDDFF05EEC606DA2B9046
+:103B000010D234B64667C6AF2FF6D4D8465001550A
+:103B10004D7D894A89E71809CEBC3969074761EFAD
+:103B20000137550535CC9B6DD2E9F56CEEF2A2F765
+:103B30001456F74478D88A88C84442B6B1B9DB43F2
+:103B40001C987231FCC701111A2E446B7A4ED4DDD9
+:103B5000C7F63C21F6D1D82106B614476140A73FED
+:103B6000EC7F5C1AA97F39D327CF95513A033830BF
+:103B70005CA7A1C2BA2D4047A74DDAFAC4165D9FD3
+:103B80001ABAA0CD79D498CC82C6D21BDFC86C35C6
+:103B90008AC8D3BEFBA4008298B2CA867D0F27CE06
+:103BA000888B24C3EFC48873123F49993B89006D09
+:103BB0000B78A5C09CB3D4D69570A6301F3CD646D2
+:103BC000DB744C4A5868221B22D3C12DFCAB5CEB42
+:103BD000F968D386943000639229F5A64BDB11A6D1
+:103BE00072BFEDEAA3DC120D38300AB5791F989D3B
+:103BF000115A28E89FD43288C19EAC528ACB7A36BB
+:103C0000F0BC25940E868228E6339EB3CE91615E89
+:103C10007022C807176ED437DA76086CF476D6D3DC
+:103C20004054617B3DB38BD74C2F87EE48F93F69F9
+:103C300091A6A1817945C58CDDB5DF9C652EE85440
+:103C40003DFBEC8DA4D65EA362666C3CDC84EFC5C4
+:103C5000CF885504434A52A08A7995AEF28E44D05B
+:103C6000BFBC4F1ED966CDD282140F4698CDCD7100
+:103C7000DC341178F9D8DD4809A749567A0490E771
+:103C800082BB2D60435BB0A97C03DC0B452254A6AC
+:103C9000259B87E38CFE9001046F969B3D1993044E
+:103CA000D2B555B206C3987AE4FCEF731C4F3F3A85
+:103CB0009676E5A5621C8764C5D435E89AA8F29883
+:103CC000F06FA53CBE530DD095AFB6646C7A402E14
+:103CD000D2A767BE77FC700007B3BD331F296C9570
+:103CE0008E1A947FB476AB2152D53DD4E18B490C2A
+:103CF000C65B912A0B34FE924991E9BE7B1104B157
+:103D0000BE88D18FB70D64564B8E084392E3F10CF9
+:103D10000DC23C344FA3B72C6BF3229DA92E94FD0A
+:103D20003074127E3E8A35E50FE35F1BF254731048
+:103D3000596F40B48CCC593B05B7871C8755A231CD
+:103D4000F3734BECB927326246D729C131CDE0F885
+:103D50000F11CD67B77399176CDA662D7CB5708833
+:103D6000FC156896BE497E6D34349309B72AEA2360
+:103D7000933179878193D6F9CF60E7F572CA87A925
+:103D800022402315DC9EF3D5D03DC31EEE33F82030
+:103D9000FEDE86D070589F76D7E060EDE08C296714
+:103DA0009D68FC4BEDDBF23082416B43D00812334F
+:103DB0003041D065022933CBDC88717E3E28389EA5
+:103DC000E984EBD3D1754EE9BD0DB48D27AAF4A4D7
+:103DD000B52C9DB73ED7185FED6BA280D5C6B7D97D
+:103DE000E502A1736E99190CAB22736437676C728C
+:103DF000FF7E937C9E16BF41A8A3489342F25A349B
+:103E0000C574B5DCC33C59BFCC6D49F52849714830
+:103E1000CE97A9CA4E75C021E51CBD6BD1EDC1502E
+:103E2000D36FC1AC6CAD570DBA8B1ACF05BC09501E
+:103E30001C7BAB3219800E5D00DE3BF5C23B1AD015
+:103E40004C6B954C2CDBBF38B1BD2861749BEC25C5
+:103E5000B76CC39A89CEEA3B14775B9056B2C97CA3
+:103E60003E43B50C2CEC8B9EEED21BFF046B28322C
+:103E70008577DC419D2645944FEF70A9454576FA3C
+:103E8000F33C3295F746452993AC68759B96F7AF9E
+:103E9000AD82DE12D0D1E1B6E190A749A5611F9AAB
+:103EA000C5A4872F795CF00D0DA1FEBC5C6FED29D8
+:103EB00085DC0594A2FBFE6A084E2B37F2178C476F
+:103EC0002FC43410143E7BF4824E18C2E359AD1354
+:103ED0007EF29C3D87494CE5B40BB731BD5C5E5F1B
+:103EE000A499DA5788172B96FE70825DD7334B065C
+:103EF0002A178F677DEA7435C8C43DEAD92E4B78FE
+:103F00005B009A4C357945DF2C67F72F4105017B23
+:103F10002D0D7FA6E8DD07BC72E28BC9901024F658
+:103F20003ABE6F710BF8634E170B2A1685D0989620
+:103F30007EE7BBF47D8F566B57DFC2022ADB186E1B
+:103F4000823F59A639046040FDBBE307E0EA33A392
+:103F500043C523BED9E643142D8C95002FF7856801
+:103F6000831C57B786BCCAC3AFE369FC5F9415D9FD
+:103F7000FE9D8F565122D38E671C48D5BD0DDDDDC9
+:103F80008120638704725B2E4A070495051B536FDB
+:103F9000E22D042E01B1F56C3234EEF9978A0F8CC4
+:103FA000A091D50D0D8F6829C3978B86AFC1EAEC20
+:103FB000F5BA6B0698BDE0536B676F866F81F92683
+:103FC0008F7A6E5AFA5EE80342B4B7283E37939769
+:103FD00055A7EFA93F7B29C28C343E3431CF59C05D
+:103FE0006FBFEA0F66E775CF529B7FEB24611E9887
+:103FF000F6BE7C734D88F6FA4DDDBE24B20474DA49
+:104000006A8B9E9894AFD3B4FF5B73FA3DCB9C85CB
+:10401000C757EE450A64E5AA9566D6ADEC4FF10E9A
+:10402000433F9D1D28ABF1D0EDDBA4C29D2C55EE86
+:10403000DF42CF04E400EF7E17E4804678E8D55AEB
+:10404000D40110BF74E8F639D19DD4DD9B4456B736
+:10405000E52609CF1C092351F1032941B407019931
+:104060000D0E63311DD4B266E724CFEA4D33AEE7BF
+:10407000DDFBB5844876CAAB4DCDE0180400C1E83D
+:104080003BF050977706149C08457173CDFDD32EF5
+:10409000AD7CBE8174C4FAC8F1C7999F6605381714
+:1040A000432B20C2B36DFB4F7CC6345AAC49AACD1A
+:1040B00082DBC2C848401935A54719C78FFF303584
+:1040C000CBC8F23E3A522EDCD59375AA17288C1A2B
+:1040D00074F22B473D2D1315FE29F62C51D85CFFA9
+:1040E000D57E254BC548B41104FE807E8E7B54508E
+:1040F000B976DF536DE2568CC106EFE66D6869B0A4
+:10410000D1875156EC5CE1BBEAE35576BEB3A4928D
+:10411000E27824D4CCD944A4D936C1AB4601B73B0C
+:10412000DB9065B958D59711DB5FC1F096E96BD785
+:10413000661CE6D84CC55742D5763584AC852E939F
+:10414000AEF01D4E43AD0FDEC9E4D028BBB276C53C
+:104150009CAB4CB04F44B6F572A596F2C90D26B78C
+:104160009C0D832A53DA7D0EDD806AFD350713E945
+:10417000FEF6D72E7A1F30C5524A8AB312C1933A3F
+:104180005DBB9490B3F66EEAC741677DF601E06DC2
+:104190002AA376F4F43A4AEEEC704BC16B6FF0E16F
+:1041A00017C07177B8FF5E714736FF92ECCE890277
+:1041B0004F7B06DBDB1773277489B598A7F1D59A77
+:1041C00091A0BCD14A3B5C1931C4EE95EEA56913B0
+:1041D0001A539A92C12738087CF7F0A86ECC5FAAD0
+:1041E00095279B352A9DDFCAED93F0EF475A390E8C
+:1041F00033DEF7DB23C6ADC37F7CDD7ECA7C894A14
+:10420000463186965CEF15CAFECF6C392561FED427
+:10421000AEB399E0A20CCA8DAC79EB314E0BFB4DDD
+:1042200018195EA253BCDB824B949077FF034C2E8F
+:104230001A3B749864764837B3D655F5A55958D3C8
+:10424000DE29558DE16196EBC13F4BE184E10C0C19
+:104250002E2202AB71CA6C9D06593A7B8D638AE1AE
+:10426000A5AE57360E313F62A28C906A98E67385F0
+:10427000AADB81E11ED2E2B38CB96B1BFDA6151936
+:1042800028A268B11EEBF827CFA45E7EFFBA25E313
+:10429000022C1AC28D05868FB7127BCDAF2A2076ED
+:1042A0004CFDCBC0CD6FD51AE951B22226B2BEEA81
+:1042B000CF5F91D322929375393DD37D7986DA52BF
+:1042C000CABB04663443C61CFBDBA6D3A3C3AA64E3
+:1042D0004609A1214C980E88D6F7395198EEEA018B
+:1042E000354E6348A5814525781DAF16A663812A02
+:1042F0003927F690838AAF2C2471AE5493C3955B13
+:10430000BA8A6D1E2C047D46CA39469B5E501DD369
+:1043100002A810CBE6A30A1F9A63F2DB074EC68DF4
+:10432000D4E65416E1D455BF583B5A14E2F7214560
+:1043300055FBE2A59429F2C927E52C438C600F8335
+:10434000B200FD6CB16509067DE70ED44A8D82B1DD
+:104350004A12D6A50884AD98A97BFEF68C93DE356B
+:10436000C6133A04868D2C703EAF359AEEAEC9F076
+:104370005ECB5A3CE1BEB7AB498CEDB5C676AC0816
+:104380009F9F37B87788C9AD8D069ED83646E060C6
+:10439000D71D9F828249F1C5C39B6C292F040D4410
+:1043A0000D6887CE88E10A42E7B9E459B0BB0F6EC9
+:1043B000FE67EA67B57C2698267DD97DB1BE169149
+:1043C000253DEF5221341C1B31D52B567D92C9DA85
+:1043D00038C4B79161A586042E85EE66757BA4D39B
+:1043E00081B168CB749C203ADB5308C683DF27C1B8
+:1043F0000BB6064B51E6809303114CBC9CF3A2AD67
+:10440000F3A71FB57894724765EE5E95BE92179933
+:104410000FF1B5A57D5D484D9581EA40F935914094
+:1044200020F25B1C2B52A83CFD4848EBD78CAEE138
+:10443000432509C9264B7CF56E9B3C9F66F3A4A8D7
+:104440005124F283CCDF9D07D670FCBB0C1359338B
+:104450002FD538EB9EB90B868B47B94DA3009DD362
+:10446000141E4811C18CB881830397D5AB094DBF89
+:10447000230E53260FC2F07D65385791093589D830
+:10448000760B06AA06251FAA28A4EE20686E645A99
+:1044900029277F5E6AA8750515FC947044A581776D
+:1044A000D3029EA66F517CA265A1A7C96511B89DD4
+:1044B0004DF59FF5C7BBF6749097CDF8FF43944830
+:1044C00067E5689067FBF943207683EC5A3C51A17D
+:1044D00053058279CA91469E366445FFD275E4AC95
+:1044E000EE5132BFB338D8C4ACFAA601DE45BD5890
+:1044F0002F90AA4B46C6E0803296E6C92DD4BE7EE8
+:10450000B39A3D4E02FCACAC04F80F47F8D4BC8320
+:10451000F44A17132B89E26AE75614973B10F18B84
+:1045200017860CE6FAF49E61895B1ADC85BDDAD544
+:10453000D8BBE9C0C8333084752F86263C84B48C40
+:1045400007A8486D3F670433AAAC50F5D2E6F4E300
+:10455000877BF2F912324AF1CAD2EEB8D5468829E1
+:104560009B46DF01CD21F3A3D6BD38CEE620D44053
+:10457000DA3530F6BBD7BC0F9A85C535D19F023FDF
+:10458000229A1D9934BC19C299304D085A95ACE253
+:10459000528486754A9C7D9756681DF81984F223CB
+:1045A00059BA34AE96D6EBCAA07816DBC2AB8F0BE5
+:1045B000E3C23D06FE070A9F55B7400BDF903695D4
+:1045C0009E85368FDE284A2BF7DECB09EFCF9EEB98
+:1045D000C030E7BB17417BCAB3CD99862846B77078
+:1045E00095B0A58A75A9A2495589533F0C6DE5463A
+:1045F0008DD2C437B5D8597D59CF4787385214E585
+:10460000EA4C0F164B09A2D0DEFCF29BD33450D1FA
+:10461000BEAD902E7216AEBFFD1299FE011F47AEC1
+:104620001A29FE4E0E22FB0969982D65931D3BFA4F
+:10463000E7B216906E729B33CB1AAF498BACEF404A
+:10464000DE60E47F420D043A29EFB74EAB9D920D38
+:1046500062F92CD8C3250F91CFF67FF2BC411576B5
+:104660006E60337CC338267AD99FB5CE8BE26E4D0F
+:1046700073D62A4AC92BB1DAB48729E7FF8C45DC07
+:10468000F3E4E4F1D2DD4C2E7F3C2AAA5EDCD6A511
+:1046900078C7FEFACF04E6B944601E1EF1FDDEA71E
+:1046A0006B6FB82C8ADE5EA0E69DA4663135F0D033
+:1046B000C5F69F6F0709E1B9A3E0D988D88633FE14
+:1046C0009D733CACC976A4489E0781515CFE358140
+:1046D00081B92333256D5FE4EE12DF895DF83FF287
+:1046E00034479520B0955D4E148C5452C03EE14441
+:1046F00057B7E788BA3EA5FA580334CC78FF9F0530
+:10470000ADB568E8C95E58AC13EAC768BAF322C011
+:10471000E7C153E2DABBE51134C31FC4B4468AD5FE
+:1047200044FC29D49300AADB9DEE0EA1E03E662C4A
+:1047300038261AA0D5AA34BC1585C64502D63C72C7
+:104740009D47B74C08F23506C31F99CDBE48E5C951
+:10475000CA4EE7662EA81428379DAE348D94815733
+:10476000F55A85143D983270E7FC39991F475F4D23
+:10477000006C090B070B138442D0ACA7C8713E2F05
+:10478000B6BB9C847EDBA9612567685D3195739E0D
+:10479000D5066D254BCD3D4AC71513032616C8BE59
+:1047A000BC2830FB53DD23C91BCC1010BE73ACFDFD
+:1047B000855171D22E6044B44D02AB67EEE8B3DB95
+:1047C0004850764122C28829916DAEB679F7846B44
+:1047D000A5D2B03DF612E32CAFD074B45A4BD8A793
+:1047E0007652CDF6C17BD5BB256C60A3E01DD5E824
+:1047F000E07CF4F5042AEDE34618D4DB6EE46A2489
+:10480000270D3CDB21B52FD81DD1F852F63E1B52A7
+:10481000606BB7269B9A1C007A2DD51746F7654129
+:104820003957FCABE050DB50086FBC518D48A5E612
+:10483000CE7CA88B1D9D80E061BC8B5BA0FD7A9433
+:10484000D89E54B787A1CEDBE17A2AFA0564145BBF
+:10485000DC301AFE72D783C0B381FF20DB4264AF25
+:10486000595FCF9D0DAB577403478F43670069EDC8
+:104870003FC977DD5DA806DA69E49049A54E2E6050
+:10488000705E8B5787BF019FA921B7404C6164C9F7
+:104890007617D1E47E5B561A5A0A070C971A730FE3
+:1048A000F01DA116A56D44145420111C3F6C3C3D15
+:1048B00030DFBDA15099BF610AC47AF927B9AE7043
+:1048C0004689DF73B7D53946E46C073B8E76D490C2
+:1048D000F7D8BF61DF6B5BC279C20B8B30B131DCC3
+:1048E0005324B79E8334CE56BB597DF1E0A7640AAA
+:1048F000B5CD2020543D1EE1CFF97BE06E87FE262A
+:10490000C862446383992D76D2FB44DECA8177EF77
+:1049100069B9376D80C8110DDF5FFE84613A5AB501
+:104920009F78D42B81B844D713A92B5D71E4275805
+:10493000B7629D83E73E72420656E91BBDDFC41095
+:10494000FF80686387FCF5D00E84C9497C293ED17D
+:10495000D38BAE2D7A9F829F5F15FF44AC0BD24F55
+:104960009DA51A7F25C696095F148FC22DC32F21DE
+:1049700045E23A0201CF3416E3462F6FB7B58EE910
+:10498000F459D3EEAC9B7F59B535C69782DF293BEE
+:104990000435AB2BEC19EAA5FC4F44062F1323F981
+:1049A000655DC358DE421D91C8DBB9FB9A8D6E92DE
+:1049B0008279E9090FB590C5ECD042B70E1656DEE4
+:1049C0005F69B30F464C32A9EB53949D7BE0CBB3A8
+:1049D000DD91F2416598DA96028D78825F5C9BB03A
+:1049E0006BC5809E04000CE4FB6092F28656E6A242
+:1049F0008ED1D1A83996370C3217DCAD7770563985
+:104A000020E96AAB400A54DF6985796A270132E1FF
+:104A1000C9FF9750547AF75E4A37F5B185626A024A
+:104A2000F842316B21B24B73551B6AD4DD4EB7800F
+:104A300084F86383A10BF5C3C6EC1637A1FCE69995
+:104A40006BB33CE2100438AC9E1520331AE4BFFD72
+:104A5000324758603EEACA2929195480DA886FEA39
+:104A6000EA7323E5A577CAB1A8D9D5CAC3009C3794
+:104A70008A90E099E85B1FDF89D658E914B366B2E3
+:104A80000248A8B1F2CBAC35EF98320FCE1DAB6027
+:104A9000765351B4C0F1A9DE176949BA51C6AAA923
+:104AA000327A8C9B939F1CFE6AE7EFB6999DB220E9
+:104AB000185A6A01E264BE4FD8DD0C9EBCDEC320EA
+:104AC0006976FC4A6C14D89C061E1B9230CB0C8D68
+:104AD0000C255915F44B44FE861EE9A990FDED0FF7
+:104AE00018E47D6A0D5109CCC378718439E17711DE
+:104AF00017AF99910EA8A0DBA6E581570DFEAD9EDC
+:104B0000D38693A67DCDFFF967AE6969EDEA827819
+:104B10009DD0F48E79B95B567E6D4499D2EA357B8F
+:104B20006E991D3751F97A2AF290BC0C078B9B566F
+:104B3000F7A0CAADC0985DBD6F02012FBB22B73888
+:104B40005C204AA6A09E305E3BC4F68E13287BC232
+:104B500063E3BD266C339E5BFAE528DA870986217C
+:104B6000C632A7EF5BB2969E7C72F6C5BF80E59415
+:104B70002514BC0A9FE53625860953CEEE14C524BC
+:104B800097ECC24C127D57690CB72F4470AB9D1443
+:104B9000B83D81A2A7F8BEFF37A5A58BD78D451AD2
+:104BA0001DC97E6F13B60BFF7439AB35B244A6E254
+:104BB000015E5D650F570EE176F81E2A4D47E892BB
+:104BC00084BAE2190C460404774F4D9A92B980D406
+:104BD000E61B4D1CC02414B93404F3651DEC93A5E9
+:104BE000908DB6E754F91509EBE21D59225B637805
+:104BF0007EC5402E205C1155869ED4B02CBF728E8F
+:104C00009ECDA92A3AE9AA10D213B6BF7ECE3A07A2
+:104C1000229727E009FBE6F23D0C690F9C5691AD07
+:104C2000FD95F4125BDC381D88D503302DA577E5A2
+:104C3000DD20859C05659E8C07082823869B4338CC
+:104C4000D9907B0E462C40F955CCCC21BA796D9386
+:104C5000977776BB9693C8A507217F1C8D42F1AD4F
+:104C6000C24F107ED6D056F81826F62AA379FE61D8
+:104C7000DFB237716AB8C29525D8AC632C233FA543
+:104C8000416A5D72B9C3CDB14464A00FF994880B39
+:104C9000E21E1CA3E5C12B08225F0E91DF167F895F
+:104CA000BFD98284F6716EE06687028E23D0EF5EF4
+:104CB000508E377CFF4FAE575FCDB853B439B3D960
+:104CC000830FFB5C3C97A770A2FD4A627C344F4C7B
+:104CD00024A7200E17F3863133DF651CDCBBC259D5
+:104CE00040E051339BD802084523B71441AA536DC5
+:104CF000CB2DCB6030E0E3B08E6FBEA806C3BBA364
+:104D0000A405EF13043FE61126AE68C4444595415F
+:104D10009810FF1493DFE494AC80B5DEEFB41EC5A9
+:104D20006DB7E1D4059FF0248B7855B3CB2E3C387A
+:104D30001262ED7CF121AC8A13F867FB8BD9C6981F
+:104D4000318F4DFF51CEAD221E19974C6F0538A6FD
+:104D500021EFA233DD601E0AC69A3D4AF007FFD854
+:104D6000950BFC75708D7065A2872D17FDF5791771
+:104D7000098DB73F89F2B7C3127AA89EF22C4E9ADA
+:104D800095CB00E76600DA2AC27C1BE0BAC64BC4AA
+:104D9000C29C1D3E9CD9331E41C1EF37DED290AD7F
+:104DA000D572F9C01F7C5AC5DC3F6E7F3A0B1DF4EB
+:104DB000D396A185BECA768C11039AE322A6095028
+:104DC000C8187217828DF1035B8DC05E8C541F086A
+:104DD0002293F852FEEE57545C22FC4CF557CA7BE6
+:104DE00030981C3210D599E4ACB16E80635B207DA5
+:104DF00064DE84CC6766423E2C1A50420EAC2E34E0
+:104E000075988B11F5B91021D04441E96BE129283F
+:104E10004D9812739E07BD8171A281466E03987BE7
+:104E2000F2DE2674A844C1E58834288ED87EBC45BD
+:104E30007F4E1F990B897C3B290CCF939BAFCA11E6
+:104E40003B13960A093936A14AA84A8F6CE9C6C7AE
+:104E5000977DC7B5B62131121A43E25E607B095EC9
+:104E6000725FF4DDCA200796333AA867F2DA06A922
+:104E70008A170022D926668A90B5D861047824AFB3
+:104E80004519E9C839091D0E445B420503A4E1C375
+:104E900038A207EC6A48872EA1A4AF9A49961D4311
+:104EA00026B423324DBEA237FF97B1E9FE3BB0C511
+:104EB000520BBE7360BDC6EA93F1A579F9832A3E11
+:104EC0009764E24328B17F03A22648B43F8E277936
+:104ED000A80358E004D8809766F4CD4D1E4033FCFB
+:104EE00013C08AC9DD9FF1054C88C9B8EBDF0F18E4
+:104EF000FB18A496CFA7E8A6596FA62B21C4699EDC
+:104F00005B2E32FF22FC0EC93CBB78EA2FC7FBF8B0
+:104F10007E66B38458C9CE3EDE0A53E77223C7EDDE
+:104F2000FE57A0502A0CA95CAFF0992C542497F09E
+:104F3000FB4DD493DBFF7D2131BDB0BBD97A5C8FB3
+:104F400060E2BBE01A9DC232E70B578852F0D85599
+:104F50009CBFE054A157C0F72AA617A2410EF3D078
+:104F6000FDEF64732F110C96D2E1210ACF39BA35C7
+:104F7000736D47E28216FBDF3C807345A43725A89A
+:104F8000025388A87F085558753C00A6056DF3901C
+:104F9000B1B53AA34B4E8F37D3FA7669F5046DD687
+:104FA0000B5B65FAEC542A4A383CEA348B77D69688
+:104FB000DA5ACE9D49169F5DD9934A6F892D8CA7E9
+:104FC00030ADE3CF22FED2E8DA6F04FE69EBFE9744
+:104FD00080D50B177228E2C501AE8E3319F516BEC7
+:104FE0000D39E1BC46F376948CE2F0F678B8125AAB
+:104FF00040C58F2148FBFC29B5D7C68DE0658F7C65
+:10500000D205C4DF346D999293EC1594918F1144BD
+:1050100070EDACEF1F3E29B03A57F57E0995C3AC51
+:10502000E2C42ECF7082C845BA661BDC9C037D5C4F
+:105030006AE9C4C4069430268EBE5E9E86B56F644F
+:10504000886D8BC5FC7A84F679D4F5F2F537586211
+:10505000C60715869E86AF72D90376D9430D5DEDDE
+:105060007FD8556B1BEE00F20E6D076F44E4C9E666
+:105070000CFA3A00873A6F3A24C453F58CCF0111E9
+:10508000A9B0A8610E7560BFEEE6882E48611F4486
+:10509000B2BD0FDF7ABE09CD266C5D267F6380002E
+:1050A0003AF6D5B81A02F9A3275DCD153D2047BAC7
+:1050B00060A039B4893158AF83196AEB24A3002961
+:1050C00096AA247CFD50D50BE1DBFEA40F2839DB2A
+:1050D000B741F902A3C9E3378384A3646AAF5D7360
+:1050E0001986700A794EEBB68579CA4A4443E3E6DD
+:1050F00096BD46032BFF1837752457FD3832B55936
+:1051000098F8E374C133765BB222B5BEAD52542534
+:1051100096817D3DC76C5653D134700E2C51C63AE2
+:105120003543A3CC0C4B34A658322275C05E0D1902
+:1051300074A237725F3831ABF1AC7C50D6B71193A3
+:105140001413BE99E3540B6AF0596A8091F3558A9F
+:105150006D056E5860A689E400FA7D49B9ABBB883D
+:10516000DEC0ACEF0C15B04766E91AAB7D6D8CF66E
+:105170002799F85939FD7EB1B18E67FA5A13CC1FC1
+:10518000DA72CB62CC3F80B1960ADC4D2D17333AF0
+:10519000D0DC254620FCCEE935F74342F6AD9A96A1
+:1051A000E6830AA70526932FD0D66ADF73579D02A0
+:1051B000E795418CC5E672B6212B1767780672AB6E
+:1051C0000E9BF4CDC9E439457C7D6502A1A3DF15B2
+:1051D000C3633F709EBADE495CF4ABCE4B7684EE7F
+:1051E000DC04656D13BF4A86A595A14313F0DDE786
+:1051F0003F0AC7E2C53282206C9B6F8EE585D339AA
+:105200008F177383A40124853F7A18A29429FF0F76
+:10521000A27C1A168A76627F5566DD5309C36D3605
+:105220005D4A7B3CF161C5FB5E737AFE62DD1EFD6B
+:10523000E40D3A1D72675E657A9D25C217BF0B9D0E
+:10524000B40A91CC2F3A17C380EC60304DDC19447E
+:10525000E505307F512E5BA9A37814296DE8631210
+:10526000908768404EB6881ABE788F5750FE254703
+:105270005BBCC98BC74FDBBBF7EB5402F970289CB2
+:105280004F4C77CC1BB74CEBF77DD6BE8DDB933202
+:105290003610968B6BCBB1E96CBA64B18F72165B2A
+:1052A000D38D44FC0AF5F8C64D4920DDA5EC43E357
+:1052B000B0A8314E717E72BEE34FF1D12C5FF6295A
+:1052C000D32A8F72A48999256FE52FBC7BA06E53DA
+:1052D000241C1BA83EEE16DC942C2640C41F09702B
+:1052E00068C5AD4BAFA7B7200051D33B224F91D635
+:1052F00071CF1AD8BC228D970356A7AE7BF868747D
+:1053000005EFD3229C932F06F8426E807E5AE8BEAA
+:10531000BA2D9726EF8381FE51E7D380A0F98C4FF9
+:10532000907E8A03C251990C6A3591DA72B4EB050A
+:10533000B960580B7A7A232E8CA09DF1628BCE3304
+:10534000CB37395D098B6F636E1CFF8991E1833028
+:10535000C3E79B9B0FFFD5C6095E4D7A7EFA5AD3F1
+:10536000363617CA8861BF045228DC8C8AB137DA16
+:105370000A72D60F2603F1CCD7C277BC1AE71517ED
+:105380000AC0E4B8A98609C3E795C3A4A6F3D599D2
+:10539000D75D95293DFB0B7104157F6D9C775A8570
+:1053A00015782E7E913C65F31862B958969F7F1749
+:1053B000670B7209B56BDDC626EE8C57C256FA8FA5
+:1053C000E7174450BFE572FFDA906C52EF7A7A0C1F
+:1053D00026EF7D4BB11FC43C57040DB834DD833933
+:1053E000C91A8F5C00CF289B26E737EE14093AAB29
+:1053F00000EA2E7C647DFCDE1B118CC92FE1E47F6A
+:105400007AED9C37B4241318F417140F2BC2304EC6
+:105410004D036152AE810AD7C5FAF0AB2A64A32EC0
+:1054200015B68429EE78CD4745F66EB1761D769493
+:10543000A42B38842A7D82E6E9C290214DA2E5138F
+:1054400048C74882DBB9759741DD26E8B22748A6F0
+:105450001514466CCAE7C78E48428FC119EFBD0EBE
+:10546000D6A80AFFD5FBD0FDF2E17681200F90840B
+:10547000335D39829BCC9D4EF64AAEBF2C321C0C5C
+:10548000244AAD261EA7CC998007CF578576EAE53A
+:105490005E7EEA50ABF056E53F00F2E8A88C19E4D6
+:1054A00030618D41178657E21FC5B2D6D84B06D260
+:1054B000EB8DC56C1A271BB6EFD6C9246B07388154
+:1054C0008F42CBF5A8A8F8A85596212D0314719208
+:1054D00084A45346ACBD24132A0061C16AACF7A969
+:1054E0006EDF0140282BBCD4BCA15BFDB167ABC40F
+:1054F000AF4C2C2436D99B22F1A9AE8AF6EE6BD4A0
+:105500006A93A5C9D65C1C222C1B49114D3BBC5982
+:10551000D68251E0EF256C02AB170CE428EBCF37B5
+:10552000B017BA8B3F805CB01E8C3E7289AB6B7932
+:1055300017CBBF99A51EBC7C52CD39B32DDCB892D8
+:10554000FE6CA7C3015493BFE4B249483E4DDEFA56
+:10555000BA3379F9BBDD47D834B62A84397B90B8A1
+:10556000D323B2C48FBD25A2C8E65D28550E98C6C8
+:10557000488262D63E4D716E9AB28B9989DA3A02B0
+:105580008FE9FBF2195E220A1896CD5228DF3731D7
+:10559000C971EC2564820E45B5A885306DF23F25B2
+:1055A000491A21A1D391FF3C8AD672EE87763D51EC
+:1055B000306EB644D972BBC62AA570154AC2139B79
+:1055C000467CC17142BE2D7520FDEB167984D380D7
+:1055D000CA2F337671254EF34A0948534DAD347BBB
+:1055E0007D7D23F068F010A82F9201033BD1F0C914
+:1055F000A9F6FF09FAB7DED8365E6CFC519E01FFB2
+:10560000D5FE9351F057542A15294725C26F43DA26
+:10561000F29612F9FE95CFEA901F290E01803250C2
+:10562000483E3AB39B196FDFB5DB5898F34B67568A
+:10563000826383CA2DD5313DD2B7C1E6B561E06042
+:105640008E841CB0AE47CFBA053289904073546146
+:10565000E80823ACAD746E925E10E52F190C69C892
+:10566000A2669A9EC1450C1E49C23DAD2FF7B43CBF
+:10567000EB29C432CD026C3EDF1D9D9B7F3665F861
+:105680005E1694547A47EA3369B9670BC16E2C9A57
+:10569000F7EF7CAB80EB794C91FBE6DECB4504D792
+:1056A0001FAEF3D40438F8E25444C2C8FA99D116B4
+:1056B000E81A2F712EAABC651689C35BF64D5D04EE
+:1056C00056C6BC963D866008D9FA716D385170C4D3
+:1056D00031DFD27CD280DC143560CF8AD6805BE9A2
+:1056E000E3FA6F1276CDD9A35B2BA4BCC91BFF468E
+:1056F000621BC6E31FED43BF7E31C5B9FD6C08D602
+:10570000A57C2ED0321870735D03A0EA1BCD013644
+:105710007EF5E45D8F7324C7AC1C7A398F57E13C6A
+:10572000E0056EE33D24CBE63FD9DEE7E36F1CAF37
+:105730001BC9C58F5C8BFF9D6EA15F76DCB6B4A3E1
+:1057400009F0A6A1BBA5F50258291789E9CBE99074
+:105750003783191E353F2AB378A3A463C693F75C39
+:10576000798A831F495FBD7DE490E15D21F4028762
+:10577000CD1DD6C8A8ECEE105CDCE3F6A1BF5F7CC3
+:1057800013A412AD6A46E1CF2D1F5A8AF7A3502801
+:105790002522D0C54A9E01B5D515D0ED8F946BC199
+:1057A0001D392B90B747A80A0DC5E51A1C1EF643F4
+:1057B00052246238F37079A499EDE48E2598864ED0
+:1057C0000B37CFA3869BB84552D5D44BCA45D3934C
+:1057D0003CB3CB3B78F3CADE273067F9BF70A4F542
+:1057E000AAB0ABA87CF8E807A4F99334DE3ECC5D00
+:1057F00092BB7C4D35A068AFB0E51501E4E89C8C08
+:1058000012C5BFFAACAA755E39441B9C27F771110B
+:10581000C219CD839DAFC03CF74CA84DA3E057966D
+:105820006962C666190DC6BF9A7D776C2E9CF2A878
+:1058300057B664A5537915578C4CBEECDD95D02C2A
+:105840006990FDDF6A921E05E5D78322A90557DB23
+:10585000E52900C2C381EABAD9686B191A54CC7021
+:1058600071E55E181F51B8AF485402E61C062A2A9B
+:1058700033616D4C94E260BE0C775F30D190F230B2
+:105880001B5B02FCE2CA4D3A1626FD6EA73080BBB8
+:1058900045501FBBEEF76FB16B5332CF42C573E279
+:1058A0003B8943E494213769C65626FF95B3D2B2AB
+:1058B0009661784824DD3CA2EF7E7BB5D7933429EE
+:1058C0002C172A7521C61D6E4F02C5E59F746242D2
+:1058D000254EE794991367D01904C71C4B6F6E14BB
+:1058E0008B1507ACDBAFD478965D1145779D61BA17
+:1058F0008E7C1DE7CA43A8FB545DF67DE1C1A4CDB3
+:10590000B6255066EDB5281F3F9178C1D2D36BC044
+:105910008DB7C1907C75D4519AAA479366D5F36030
+:10592000591DE753AD62088E7CC389BA36C18FDD3D
+:10593000FC37B62A2FDA3CE8264BCF29CA135897F2
+:1059400045EB191CA8BE9027B5813F7047A6CC85B2
+:1059500041775386EEFE3D06530022F202DA202FF5
+:105960001197BD973C2D2C586806A7F7B941DA97D7
+:105970001C1FDF636A71BE38B7000F671B223445F6
+:10598000FC2307C2D609B2C71B68579DF3A28C65DA
+:105990007D24A403590732B455F4BF6A552071968B
+:1059A000E726D93BB1C66BC85E06C5A105A6A07C9B
+:1059B0009CA079FB6FC29509C1C7D8A5049D6E64F0
+:1059C00036073BDCF81656CE808864ABEA3C149868
+:1059D0003141AB9DF93A3342C26B00D5BA70D5A4C0
+:1059E0009F5A486579586EFE21BF3923F8FB094854
+:1059F000BAF314CE9FA8D258D060CBD7B09A2594D2
+:105A000031F743E594AEFEAB20ED36415955108891
+:105A10004484784411F9CBD3EA7C291AB4A6C3177D
+:105A20009F14CA4E5FFE587D7269475EB68DDE07D1
+:105A3000B610959E90F970B2A42D7D2C3D8E31EE5E
+:105A4000A3A0C1334C8B5630CA2EF28CDF60B4D683
+:105A500052AA68592E1CEBB9293D9132062167CE16
+:105A6000CAD3F71BEE0C4646FB6B96DC4AD3573A7B
+:105A7000C3184CDBDFE9068B2069FACF1E9F813803
+:105A8000492A1289703751669D313CC7EE996BDB0C
+:105A90009124D0ACE64B7BE86672224FBA0342D524
+:105AA00050E1873475E39155BEC9356479BA9536AE
+:105AB0002467C5F8DA51DE1A8071A4F2B817B3185A
+:105AC0008D0CB4CBCBA849109AE53DC0A2D1AE71E4
+:105AD000B3E3FDC02078E86BBE1047DB1DF3E3BBEA
+:105AE0000753380AFD52570B784F04B50E59DF5A49
+:105AF000107342016F0BC424508F8889D6941DC344
+:105B00001290CABEE4397735651F094414829FCBD1
+:105B100014FDDF555B5FA095D29F7D96F39650F5FF
+:105B20002A51D3B4D941EF55C84F730E9689B99411
+:105B3000593D14AC51A82E8D072C5C36254259EBEB
+:105B40007E6B03722F5F796CFF9A42E9E2CAE735F8
+:105B5000B8B7FE134899943C25E4450ECA87065A07
+:105B600018BCBC7027A2E7FC870B074971993979EB
+:105B7000DA32AC6BD0D4F4BA3E7425BF0E758BE12B
+:105B80006318D0FB1E6AF2F04366427CD0C5B48035
+:105B90006F9B7C349B951BE5DBD685B3777A56DF0C
+:105BA000BC0848C3D598738E304E2190BA7DCFF291
+:105BB000E572ED7F32D26161ADC285AB25946DE1B6
+:105BC000025B4CA9F69E1602E8C6635234CE95B02D
+:105BD0007D9B3D4025BEA2A94133B79167FFB79693
+:105BE000B2A3E4C295355FF314A74E7455E4B12D0A
+:105BF000641EE4D8B9124D634EF84C0CAD45D1ADDE
+:105C00002BD79AF9A667573A8BA36771829035A371
+:105C1000957C1D84B8488710627E66147B69C50F29
+:105C20002245DAA57B56FB9C6CA2A3E370D0B8AEEC
+:105C3000BFBEC033F15B2A7EE47A18A4460ECB8C3B
+:105C40004CAE0318E25371448B99716A40829360A1
+:105C50005DA5F739135D22E0D150349551BF53C58E
+:105C6000B30797486675AD9017B76A574A62AA2777
+:105C700083DC8846983F7B43D1293238B6B9B54496
+:105C800041B09DE4C071DFEC8603109751749CE134
+:105C9000CFB3AB15F9A83B3BB156192254C4092D1B
+:105CA000F7108D65EEF457681F6869E6CEA8966612
+:105CB000BCCEA015399E6E830B6443973EC6C6903A
+:105CC000802C36200ECC2964731AA670D16AC05677
+:105CD00024391E15EA3EDEFCFD2E21C3C2B7418BDE
+:105CE000262E94094DC39712E630C6768F53C57998
+:105CF000542A18D457F179E8D73432A41078E59BA8
+:105D0000F7C2DBACF5CA7B8D21EDE1885086C56515
+:105D1000275463DFB6A2B7A7313FADC44AA2D7ED7F
+:105D200076D109453E5EDEDA5B68345739635FC27F
+:105D3000EBE7C26CE892E1760DBB9D7260D712333F
+:105D4000FC51CE4BB1375E2EFF0A4561E5A04611EE
+:105D5000A3940D573A196FA5F08AB4CE94D6CA68A9
+:105D6000628627BAFDAB7684D8C45770EB1E5EB04E
+:105D7000670942FDD0A2FE55E95798745DCCF872D0
+:105D8000DB29D2BB98B237679E5976549EB931341D
+:105D900041BCC9A5638D9BEDB8B3EEC3F26DBB4E9C
+:105DA0003E18D17B9B1B35E22E14AD4978A99B6030
+:105DB000C9E54605C9C4678FBB6A12B0292315CF50
+:105DC000462AC1A03FE4B5A12B7E1014272208C9A2
+:105DD00006A82732D6FAAF23B332CFF24ACC3C4CD6
+:105DE00061C0E8DE6A4C0C4EF96424A970623B1273
+:105DF0003E571C5C9AF2972E27EF66EC8308645C92
+:105E0000A791C2DBFA88C3D5851C8198B587E19E2E
+:105E100044A229A3D16B9F6A62C7ECF6C6562146FD
+:105E20009CD63A3ED6E10C0E6CB1925F59ED16F15C
+:105E30004514C704F4E6A425BD2ACA9278F71D3696
+:105E4000771828BCBDC66063DAD882F87547B74AB0
+:105E500045EB7AC74251790A93F19334928EC65139
+:105E600092861D797AFCD28CFB45E7AA04B9880595
+:105E7000EC7DBC5C097ADDAB2387511D20F3FC422D
+:105E8000E0FEAB80ECB5B2D3DD571F90E48045EA6D
+:105E90009659F66CEE194E6F227F7E238403B5D897
+:105EA00050B5E3C9C217C5D156EFDFAB4ED2DDE422
+:105EB00087411571ECC9B44A43C56162F3873F0D50
+:105EC000DF16A6AD224F6FD5DC84077AF7ED32924C
+:105ED000EBE094CDE6D006052A304B9708136DBF52
+:105EE000AFD421609C6EFF7CA3CD9A52D0F7954A27
+:105EF000574DF1A6039479FD09B49F41B9EC613F78
+:105F0000DE20089FC6966D9B0E954803B3367941F7
+:105F1000824033DBA030829A6A7713BCD64327A82D
+:105F2000ACA667BAE965A2645BBF1B85C885193F4B
+:105F3000B97FCB04EE27E62AA4087297B3B56BEDC0
+:105F40001B9BB26F0D3340C3D5F3F5EC9762647EB3
+:105F50002621C22EB4808AC0B0DEFB9084DAFA9982
+:105F600049895C440094AB220C4B73914C4BA6F3D3
+:105F7000DC0A867AE89B21FA86560C822B8A8F4AA5
+:105F800063F6259DF28C1F551332CB105A85F527E9
+:105F90009922B089320FE0B19BA61FDF34E380BEA7
+:105FA0009F8AC55D57A5128B836D7085E2B2C5E2ED
+:105FB0000B58731545DB49A1141682A92D00A37453
+:105FC00042DF53DE9504225B4FB5B72EF1AAE23DC6
+:105FD000A4E3FF50B11E783D5213E516E0994162EB
+:105FE000B39FF22624DC62D0FD80B4EC250B8F1920
+:105FF000FE7E91D9DBEAA36EAEB606DBBFE1E451CB
+:1060000010D3918E3C47C7171E0FA012BF68B0E88F
+:10601000D1C167732B8C23387159D770B6D14C849A
+:106020009C98A3E92E417838F15FEB951027BD02CB
+:1060300010691C8C061E91AF79FEEAD8EC9F98453A
+:10604000553E510159B676B959B19B83BFFC0E43F9
+:10605000CFF96FB75E6E6AD54E372585F2BD1899B8
+:10606000313A69230A5DD66E6835C00FAFBC6F91B7
+:1060700045A2B770326DCBEF569A811B261FA880C0
+:10608000EDC0492301FE22384063B6220C2316CF0F
+:10609000C6EC34B07661557193B0D87D9E8E59CFE1
+:1060A0009536780557453B32DF038447843487C8EB
+:1060B00021F1FE44E39EE8FAEA18639774096ECD75
+:1060C000543AD0A6F951BEF941CCB4F9AADD038601
+:1060D000821039CE04000000000000000000000023
+:1060E000000000000000000000180000F060010047
+:1060F0002FEE00000000ED0200002EEE0000000078
+:10610000000000000000000000000000000000008F
+:10611000785B03EE7EE1784B7CF50C9501997EF57A
+:10612000000000000000000000000000000000006F
+:10613000000000000000000000000000000000005F
+:10614000000000000000000000000000000000004F
+:1061500001903F1B3FE202EE3F1B3F3E3FBEFFB2BE
+:1061600024E3FFB230507CE00FA00AE9009450987D
+:1061700082F50394FFB20122029076E279CEFEEE20
+:10618000029076E20394FFB201220094469880F5D3
+:10619000A6D020942098FFB231E2FFB20148FFB2AE
+:1061A0000348FFB203490190FFB230E2FAB206E0C1
+:1061B000FCA20098FAB206E200B071D000B93F9795
+:1061C000A2D000B03FD300B0A2D23F1B3FE000B04E
+:1061D0004FD720E7C31B3BBA00B059D77FE13FA69A
+:1061E000FAB200E2F9B4B9407F94FAB203E2B950CE
+:1061F0007E6E1FEE00B0D4D129910CB800B48BB1E3
+:1062000080BA02B1FDFE80B97AE6FAB200E0C09C25
+:10621000FA1A22477AE37F6FFA1A22567F7FFA1A18
+:106220002246FA1A22577AE37F307D2D7C79F0EEF0
+:10623000EAEE20F56DE3683EFEFE7BF520E7FAB25C
+:106240000642FFB2305033943398FFB231E2774CBC
+:10625000FFB23048FFB230497B3E02B2009200915B
+:10626000C0BA0281FDFE775CFFB2313EFFB2303E24
+:1062700020F56DE37E3EFF9260E261E268BA60085D
+:106280007E1060E2610A6113F9FE68BA602A80BA82
+:10629000612860247BF56DE37E3EFF9260E261E25F
+:1062A00068E060087E1060E2610A6113F9FE68E050
+:1062B000602A80E0612860247BF528E77E7007EE85
+:1062C00001B0398846E801B03F8843FF11EE01B0C4
+:1062D00040883FE801B080880BE801B0808839E849
+:1062E00017B03F8802EF068C34E818B0538831FFAE
+:1062F0007F3129E22AE604912BE32AE429E17E306A
+:10630000C0BA800203E9C1BA81021EF929E0608C9B
+:1063100001E82084209104B2169600B2969691B2BC
+:10632000DA9601B22B9600B2509669E200B201965D
+:1063300069E600B00EB968E0FAB222E280E0FAB293
+:1063400023E27DE3F8B363D12A2C2A2C292C2B2DB0
+:10635000D4E928F528E701B0808803F801B0408827
+:1063600029E918B03F8826FF2CE37F31608C01E8D3
+:1063700020842BE2209104B2169600B2969691B238
+:10638000DA9601B22B9600B2459669E200B010B9D8
+:1063900080E05EAC3EA8FAB222E280E0EAAC85A8DA
+:1063A000FAB223E279CE7DE3FAB363D12BE0018424
+:1063B0002C2DDCE928F536B801B06991C0BA02810C
+:1063C000FDFEFAB2273EFAB222E068B0688800B05B
+:1063D0005AE9FAB223E0DCB0D38800B054E9FAB24B
+:1063E0002330FAB2223D85E0FAB226E284E0458805
+:1063F00011E9FAB22743FAB2274581E07F2DFEE981
+:10640000FAB2274010B882E07F2DFEE9FCFEFAB216
+:1064100027552FEE508837E986F035F9018C33FF88
+:1064200085E0FFA08608018C2EFFFAB22743FAB25E
+:10643000274181E07F2DFEE9FAB2274083E07F2DDE
+:10644000FEE986E06DE287E102EEFAB2262C69E011
+:10645000FAB224E269E0FAB225E27EE17EE1FAB224
+:10646000274280E07F2DFEE9FAB227527EE17EE1ED
+:10647000ECFEFAB2275181E07F2DFEE9FAB22750F7
+:1064800081E07F2DFEE9863E843EFAB2273EFAB2D5
+:10649000223EFAB2233E7BF5FFB2094D6C67FEEE59
+:1064A00093B063916C77FEEE6C67FEEE7AE06C77EA
+:1064B000FEEE6C67FEEE7AE47D06C0BA7D0208EF60
+:1064C000FAB680E074BC7F88EDF91090800AEAEE9D
+:1064D000FA1A224626B0AA906C6702EE79CEFAEE3E
+:1064E000FF82FAE97BF5FA95C650C3520E90C7C6F3
+:1064F0000590C7C2C34AC349C3400794C4267BF56D
+:10650000FA95C4497BF5FAB482E107A503E97BE774
+:1065100082E107A5048DFF9203E981E0844A844B60
+:106520007BF5FFA0FAB480E2844A82E007A403E985
+:106530007BE782E007A4048CE9007BF503E401EE2D
+:106540007BE7FA95C2E0C4497F7AFAEE7F6804EEF1
+:10655000C44AC26BC44CF4EEC448C1E060E28DC5CD
+:10656000FEA27E02FA9503F9C44CC44AEAEEC44B7B
+:10657000014060607BF50150C44AC2E060E207A4BC
+:1065800003E97BE7C2E060E260E007A4048C02F963
+:10659000C449D7EEFAB481E0844A844B00C67BF547
+:1065A00003E1CF721EEECF7313EECF7403EEC8E09B
+:1065B0006B2610EEC9E0FA1A2222FAB5CF7503EE67
+:1065C000C8E0A02602EEC9E0A022C8E06B267BF559
+:1065D000C9E06B22C8E0FA1A2226C9E0FA1A202282
+:1065E0007BF57EE17EE17BF503E1CF721EEECF739A
+:1065F00003EEC9E06B2204EECF7409EEC8E06B260F
+:10660000C8E0FA1A2226C9E0FA1A20227BF5C9E06E
+:10661000FA1A2222FAB5CF7503EEC8E0A02602EEE0
+:10662000C9E0A022C8E06B267BF57EE17EE17BF528
+:10663000FFB25AEEFFB258EE13627BF580C401FA46
+:10664000802C7BF560E700E061E2E1BB00B0A4D202
+:1066500061E000E260F5003E00B223EE62E7115116
+:1066600000E0378803E9114101EE00E000B0E8D412
+:1066700063E200B0AAD263E000B019D20088F5E965
+:1066800062F562E7123E135200B00BD27FF101EBCC
+:1066900062F500E000B09DD400B0AAD2F5EE00B0E3
+:1066A000FBD100B0B3D21E4000B048D400B026D217
+:1066B000017003EE00B0B6D202EE00B0C9D200B055
+:1066C00008D200B0EFD51352F1EE01100406081005
+:1066D000C0090C12000AFBC3C3B46CF89C2A65CC39
+:1066E0006756163DA7CAB7C97FF469F6FEFE7BF56B
+:1066F0007FF469BA68E2FDFE7BF560E7FFB230E047
+:106700000DE2FFB231E00CE200B0A6D07EE17EE106
+:1067100060F50CE0FFB231E20DE0FFB230E27EE165
+:106720007EE17BF5122C1370123E7BF561E203BA19
+:1067300060E2623E60F019F960E480BA7FF115F919
+:106740007FC4610201E962E67E7903EE81BA60E20C
+:10675000F1EE7E377E360F8903E960E481BA7FE18E
+:1067600060E07E08018060E2E5EE62E07BF563E7D1
+:106770003FB008B909B0C891389000B000D33FB419
+:106780003FB02090B770E08203E2099000B01ED3C2
+:106790007FF106F90A813FB008B9189000B000D324
+:1067A00063F560E70C9114B900B0A2D0103E0E3E24
+:1067B0000F3E46911FC31ECE1E48117005EE079571
+:1067C0001427C797142360F51FCE1F4E60F561E3B1
+:1067D0007FE115E01FA660E27F317F307F09623ED6
+:1067E000624260E0610204E803951427C3970EEE4D
+:1067F000C0BA60E2C1BA61E260240BF960E08002D5
+:1068000003E961E0810205F9144AC49714237F3E2D
+:106810007BF5028102B1622DEBE901907BF562E725
+:1068200061E215E01FA660E2610205E80395142706
+:10683000C397142362F5603160306009089016B97F
+:1068400000B000D315E0018015281FA6152A62F5B7
+:1068500060E261E3FA1A22E062E26BE063E2FABD11
+:10686000E1E064E260E07F2FE12260E1612361E129
+:10687000FA1A2027FA1A22226B2202B04191FF1B3A
+:106880007EFE63E060206B2662E06020FA1A22261A
+:1068900061E0FA1A202A64E06020FA1A21266CE0EE
+:1068A00060207BF561E762E363E600B005D363E156
+:1068B000C0BA008804F900B011D37F3E61F5632CA3
+:1068C000622DF5E900B011D3019061F561E762E254
+:1068D00063E364E600B005D363E480E1632C64E421
+:1068E00080BA642C7E0204F900B011D37F3E61F5BA
+:1068F000622DF2E900B011D3019061F565E761E224
+:1069000060E364E615E11FA714C03FA066E26103DF
+:1069100003902FF87E317E30600B60E067E22CE25E
+:10692000089160E400B0DAD3008807E915E0E0A43C
+:10693000208C03F9408C04901CE96735673468B0FB
+:1069400068900EE2DCB0D3900FE27E3E67E064E434
+:1069500000B0E5D0C097142315E0018015281FA6CC
+:10696000152A64E108902CE400B0EED3008802E917
+:10697000069066E266E07F3314283FA4142A65F58A
+:1069800060E71EC41EC17E2002F900B058D260F537
+:10699000C0931423103E0E3E0F3E7BF540907BF5D6
+:1069A0007FE17F347F0180BA7E607F377BF57F6037
+:1069B0007E377EE07BF560E71340134212E161E32E
+:1069C000FF827E0202E9FA92132200B01AD361E03C
+:1069D00060F560E761E20591132712E17E347D09DD
+:1069E000C0E063E27F37126063E261E0FF8212027F
+:1069F00002E9FA92132200B01AD363E060F560E274
+:106A000061E31340134212E17F0307F875347F01FD
+:106A100061E07E7080C67E6080C260E0FF827E02A0
+:106A200002E9FA921322FEB07DEE0D8803E901A17E
+:106A30001EC37BF51E8803E9FFA11F277BF57FF0AE
+:106A400004E915B90290FFB25AEE0FEF12F002E915
+:106A500010C707EE018802E910C303EE0F8801EFAB
+:106A6000103E16B91090FFB24AEE028801E914C731
+:106A70007BF560E700B0A0D21ECF60F560E761E271
+:106A80000591132712E17E347D09C0BA12607F3769
+:106A900061F2FF82120202E9FA92132200B01AD3C5
+:106AA00061E060F563E712E164E37FE1C3B0E0B960
+:106AB000409000B0C6D43D91640301F87F3E63F579
+:106AC00065E763E2048802E91FC065F5058807E908
+:106AD0001EE001A061E200B0C1D461E065F50D885F
+:106AE00003E91EC001A065F5428803E900B056D451
+:106AF00065F5438803E900B0DAD465F5F8820388C8
+:106B000004FFC0B400B058D465F563E1018903E91E
+:106B100016B9109004EE63F105E915B9029000B0C2
+:106B200071D465F563E0028803E914E03FA065F5E0
+:106B3000038803E9144F14C065F563E0D782068823
+:106B400005FFC3B0F7B900B058D465F563E02588F8
+:106B5000019075F963E02688E09071F963E0278879
+:106B600003E903E1CEC465F5288803E903E1CEC05B
+:106B700065F563E0D082098814FF03E1108164E2C7
+:106B8000117108EE63E1C98364E37E3408B0FBBA97
+:106B90007FE103EE7F347F09C0E164E000B05FD4A1
+:106BA00065F563E0E18266E203882BFF64E263E05F
+:106BB0001F8804E9089000B063D47FE164E0018895
+:106BC00002E908910AEE63E0218815F9228805E9B7
+:106BD000089000B063D4001A0B8108B044B97EE07D
+:106BE00000B058D47FE166E0018803E93FB4B77094
+:106BF00002997EE065F5029000B063D4001A098125
+:106C0000ECEE63E0238806E9139008B044B900B0C5
+:106C100058D465F5248809E9029000B063D4148043
+:106C200008B044B900B058D465F563E01D820C8803
+:106C300005FF08B03DB900B058D465F57F3E65F555
+:106C400067E702B0F491089000B02EB900B000D30D
+:106C500000B02EB903E108B869E0682AFDFE00B073
+:106C60002EE060E216B90491089000B0FCD260E01A
+:106C700015E11FA77E08FFA000B02EE260C07E379E
+:106C80007E087F3300B02E2600B02E9104B900B0EC
+:106C9000B1D767F564E760E261E310E036B056888B
+:106CA00005F905951427C597142364F560E0D3BC56
+:106CB0007E377E3400B032D160E461E100B0DAD3D7
+:106CC000008804E906951427C697142364F52DE778
+:106CD00015C17E367E341F6000000E3E0F3E14E06C
+:106CE0003FA000B263F960E3C097142314E03FA013
+:106CF000028808E900B0A8D50C9515B0C09004B979
+:106D000000B249EE068820E960F102E9C09519EE6B
+:106D10000CEF1491C29416B900B06FD3008800B282
+:106D200040F9C295149000B235EE028900B239E9FB
+:106D300040910A9416B900B06FD3008800B231F9BF
+:106D40000A95409000B226EE038805E9AE950C94B2
+:106D500000B0D2D502EE078804E90295C09400B2D3
+:106D600012EE058811E960F102E9C09508EE03EF23
+:106D7000C295149005EE028900B213E90A9540907D
+:106D800000B097D300B20DEE088807E916E017E1CE
+:106D900000B0B0D318E200B204EE0F8804E900940A
+:106DA00005987FF57EEE048865E9C097142315E009
+:106DB0001FA6048804EF03951427C39771EE3FB410
+:106DC000B76055EE00B0A8D50890151C3F1A408159
+:106DD00004B9089000B0FCD215E01FA6048841E970
+:106DE0003FB5269100B0D3D0008838E901B03C907F
+:106DF00064E2209109B0E0B900B0DAD300882BF941
+:106E000068B068900EE2DCB0D3900FE201913FB021
+:106E100046B964E000B0E5D0642C01913FB04EB9B2
+:106E200064E000B0E5D0642C01913FB056B964E055
+:106E300000B0E5D0642C01913FB05EB964E000B0D1
+:106E4000E5D03FB04691209009B0E0B900B0EED354
+:106E5000008807E903EE144AC49702EE1449C2976A
+:106E6000142315E0018015281FA6152A1AEE144ACE
+:106E7000C49716EE098803E902950A9404EE0B887C
+:106E800005E90695BA9400B0D2D50BEE0C8806E958
+:106E9000BA95C09016B900B006D403EE1449C29753
+:106EA00014231E4000B048D400B050D42DF50190FA
+:106EB000F995F9E2C152F93EFA1A213E03E1CCE01C
+:106EC000FA1A20E2FF1B33E070A4208C03E9CAE029
+:106ED000E7A207EEFF1B33E070A4408CCAE001E993
+:106EE0003FA26BE2CBE0FA1A22E27BF579CEFEEE0E
+:106EF00063E7117000B0FED6C0B401B0FE9100B0DF
+:106F0000C1D0008803F944911FC317EE0CB4ADB093
+:106F1000FE9100B0C1D0008803F945911FC30DEE6A
+:106F2000BAB405B0FE9100B0C1D0008803F9479112
+:106F30001FC303EE1FCE1F4E146E00B0FED60C947E
+:106F400082F50390FFB209E2001A029163F506B0E0
+:106F5000FE9084F507B0009086F5793E0390FFB26D
+:106F600009E2FFB20BE2FFB2083EFFB20A3E039411
+:106F7000FFB20122FFB203220682FFB211E2FC82BD
+:106F8000FFB213E2FFB214E2001A0A917BF511502E
+:106F90007F60114000B0DFD600B02FD700B0D7D24D
+:106FA000000063E764E20D9000B01ED300881CF976
+:106FB000762C001B7F97C0BA60227F6E644E7F6F75
+:106FC0000DEE7F6D602E64E074BC600A001B7F8F45
+:106FD00003ED001B7F9702EE606F603E64E0F8B047
+:106FE0000FA06032602464E264E063F524E325E2EC
+:106FF00005BC26E362E22636263461E160E00EBC81
+:1070000060E17E312628622921E27DE361E026E20B
+:1070100060E062E22634623D2634623D2634623D01
+:1070200025E024E10CBC25E17E322628622B21E1FB
+:1070300026E37DE1620B261266E165E0612B602AA2
+:1070400064E163E02429252860086111262962286B
+:107050007BF527E728E329E681E061E260F6BEB030
+:107060001E9108B0BB9023E322E27F2547F922E07E
+:1070700022BC2AE203902BE22BE17E0929092CE3B2
+:10708000FFB2FFE062E2FFB2FEE063E22BE003A0AA
+:107090002A28780A280123E122E066E365E281E1FB
+:1070A00080E064E363F262E100B07ED72CE4800C00
+:1070B000811581E380E261E360E22B2DDDE929E1C6
+:1070C000C7E062E2C6E063E22AE42A01280181E126
+:1070D00080E064E363F262E100B07ED729E4800CD3
+:1070E000811581E380E261E360E261B0C89186B01E
+:1070F0004790220A231322E02324B9E927F5090344
+:107100001F0003000000000000000000000000005D
+:10711000000000000000000000000000000000006F
+:10712000000000004000000000000000000000001F
+:10713000000000000000000000000000000000004F
+:10714000000000000000000000000000000000003F
+:10715000000000000000000000000000000000002F
+:10716000000000000000D6181800251E0C040101C4
+:107170001F0008002134000056363436D618180097
+:107180009D1000C01540001400400001C000000028
+:1071900000000000000000000000000000000000EF
+:1071A00000000000000000000000000000000000DF
+:1071B00000000000000000000000000000000000CF
+:1071C00000000000000000000000000000000000BF
+:1071D00000000000000000000000000000000000AF
+:1071E000000000000000000000000000000000009F
+:1071F000000000000000000000000000000000008F
+:10720000000000000000000000000000000000007E
+:10721000000000000000000000000000000000006E
+:10722000000000000000000000000000000000005E
+:10723000000000000000000000000000000000004E
+:10724000000000000000000000000000000000003E
+:10725000000000000000000000000000000000002E
+:10726000000000000000000000000000000000001E
+:10727000000000000000000000000000000000000E
+:1072800000000000000000000000000000000000FE
+:1072900000000000000000000000000000000000EE
+:1072A00000000000000000000000000000000000DE
+:1072B00000000000000000000000000000000000CE
+:1072C00000000000000000000000000000000000BE
+:1072D00000000000000000000000000000000000AE
+:1072E000000000000000000000000000000000009E
+:1072F000000000000000000000000000000000008E
+:10730000000000000000000000000000000000007D
+:10731000000000000000000000000000000000006D
+:10732000000000000000000000000000000000005D
+:10733000000000000000000000000000000000004D
+:10734000000000000000000000000000000000003D
+:10735000000000000000000000000000000000002D
+:10736000000000000000000000000000000000001D
+:10737000000000000000000000000000000000000D
+:1073800000000000000000000000000000000000FD
+:1073900000000000000000000000000000000000ED
+:1073A00000000000000000000000000000000000DD
+:1073B00000000000000000000000000000000000CD
+:1073C00000000000000000000000000000000000BD
+:1073D00000000000000000000000000000000000AD
+:1073E000000000000000000000000000000000009D
+:1073F000000000000000000000000000000000008D
+:10740000000000000000000000000000000000007C
+:10741000000000000000000000000000000000006C
+:10742000000000000000000000000000000000005C
+:10743000000000000000000000000000000000004C
+:10744000000000000000000000000000000000003C
+:10745000000000000000000000000000000000002C
+:10746000000000000000000000000000000000001C
+:10747000000000000000000000000000000000000C
+:107480002000DFFF000000000000400000000400BA
+:1074900073353130304B0000000000000000000068
+:1074A00000000000000000000000000000000000DC
+:1074B00000000000000000000000000000000000CC
+:1074C00000000000000000000000000000000000BC
+:1074D00000000000000000000000000000000000AC
+:1074E000000000000000000000000000000000009C
+:1074F000000000000000000000000000000000008C
+:10750000000000000000000000000000000000007B
+:10751000000000000000000000000000000000006B
+:10752000000000000000000000000000000000005B
+:10753000000000000000000000000000000000004B
+:10754000000000000000000000000000000000003B
+:10755000000000000000000000000000000000002B
+:10756000000000000000000000000000000000001B
+:10757000000000000000000000000000000000000B
+:1075800000000000000000000000000000000000FB
+:1075900000000000000000000000000000000000EB
+:1075A00000000000000000000000000000000000DB
+:1075B00000000000000000000000000000000000CB
+:1075C00000000000000000000000000000000000BB
+:1075D00000000000000000000000000000000000AB
+:1075E000000000000000000000000000000000009B
+:1075F000000000000000000000000000000000008B
+:10760000000000000000000000000000000000007A
+:10761000000000000000000000000000000000006A
+:10762000000000000000000000000000000000005A
+:10763000000000000000000000000000000000004A
+:10764000000000000000000000000000000000003A
+:10765000000000000000000000000000000000002A
+:10766000000000000000000000000000000000001A
+:10767000000000000000000000000000000000000A
+:1076800000000000000000000000000000000000FA
+:1076900000000000000000000000000000000000EA
+:1076A00000000000000000000000000000000000DA
+:1076B00000000000000000000000000000000000CA
+:1076C00000000000000000000000000000000000BA
+:1076D00000000000000000000000000000000000AA
+:1076E000000000000000000000000000000000009A
+:1076F000000000000000000000000000000000008A
+:107700000000000000000000000000000000000079
+:107710000000000000000000000000000000000069
+:107720000000000000000000000000000000000059
+:107730000000000000000000000000000000000049
+:107740000000000000000000000000000000000039
+:107750000000000000000000000000000000000029
+:107760000000000000000000000000000000000019
+:107770000000000000000000000000000000000009
+:1077800000000000000000000000000000000000F9
+:1077900000000000000000000000000000000000E9
+:1077A00000000000000000000000000000000000D9
+:1077B00000000000000000000000000000000000C9
+:1077C00000000000000000000000000000000000B9
+:1077D00000000000000000000000000000000000A9
+:1077E0000000000000000000000000000000000099
+:1077F0000000000000000000000000000000000089
+:107800000000000000000000000000000000000078
+:107810000000000000000000000000000000000068
+:107820000000000000000000000000000000000058
+:107830000000000000000000000000000000000048
+:107840000000000000000000000000000000000038
+:107850000000000000000000000000000000000028
+:107860000000000000000000000000000000000018
+:107870000000000000000000000000000000000008
+:1078800000000000000000000000000000000000F8
+:1078900000000000000000000000000000000000E8
+:1078A00000000000000000000000000000000000D8
+:1078B00000000000000000000000000000000000C8
+:1078C00000000000000000000000000000000000B8
+:1078D00000000000000000000000000000000000A8
+:1078E0000000000000000000000000000000000098
+:1078F000FFFFFFFF05000000000000000000000087
+:1079000000000000000000000004000010790100E9
+:107910000000000000000000000000000000000067
+:107920000000000000000000000000000000000057
+:107930000000000000000000000000000000000047
+:107940000000000000000000000000000000000037
+:107950000000000000000000000000000000000027
+:107960000000000000000000000000000000000017
+:107970000000000000000000000000000000000007
+:1079800000000000000000000000000000000000F7
+:1079900000000000000000000000000000000000E7
+:1079A00000000000000000000000000000000000D7
+:1079B00000000000000000000000000000000000C7
+:1079C00000000000000000000000000000000000B7
+:1079D00000000000000000000000000000000000A7
+:1079E0000000000000000000000000000000000097
+:1079F0000000000000000000000000000000000087
+:107A00000000000000000000000000000000000076
+:107A10000000000000000000000000000000000066
+:107A20000000000000000000000000000000000056
+:107A30000000000000000000000000000000000046
+:107A40000000000000000000000000000000000036
+:107A50000000000000000000000000000000000026
+:107A60000000000000000000000000000000000016
+:107A70000000000000000000000000000000000006
+:107A800000000000000000000000000000000000F6
+:107A900000000000000000000000000000000000E6
+:107AA00000000000000000000000000000000000D6
+:107AB00000000000000000000000000000000000C6
+:107AC00000000000000000000000000000000000B6
+:107AD00000000000000000000000000000000000A6
+:107AE0000000000000000000000000000000000096
+:107AF0000000000000000000000000000000000086
+:107B00000000000000000000000000000000000075
+:107B10000000000000000000000000000000000065
+:107B20000000000000000000000000000000000055
+:107B30000000000000000000000000000000000045
+:107B40000000000000000000000000000000000035
+:107B50000000000000000000000000000000000025
+:107B60000000000000000000000000000000000015
+:107B70000000000000000000000000000000000005
+:107B800000000000000000000000000000000000F5
+:107B900000000000000000000000000000000000E5
+:107BA00000000000000000000000000000000000D5
+:107BB00000000000000000000000000000000000C5
+:107BC00000000000000000000000000000000000B5
+:107BD00000000000000000000000000000000000A5
+:107BE0000000000000000000000000000000000095
+:107BF0000000000000000000000000000000000085
+:107C00000000000000000000000000000000000074
+:107C10000000000000000000000000000000000064
+:107C20000000000000000000000000000000000054
+:107C30000000000000000000000000000000000044
+:107C40000000000000000000000000000000000034
+:107C50000000000000000000000000000000000024
+:107C60000000000000000000000000000000000014
+:107C70000000000000000000000000000000000004
+:107C800000000000000000000000000000000000F4
+:107C900000000000000000000000000000000000E4
+:107CA00000000000000000000000000000000000D4
+:107CB00000000000000000000000000000000000C4
+:107CC00000000000000000000000000000000000B4
+:107CD00000000000000000000000000000000000A4
+:107CE0000000000000000000000000000000000094
+:107CF0000000000000000000000000000000000084
+:107D00000000000000000000000000000000000073
+:107D100049DAEE300600000000000000000000001C
+:107D2000000000000000000050000000307D010055
+:107D3000DB473ECDE4E6E9559DB5D12A3BE093947F
+:107D40008392E7C9845AD53FB535140A916DEBE2A9
+:107D50003EAFA7EB4C5BB4EC7E9D2F5E67E3D8E2B1
+:107D6000BB062E3293853E10CA27477272A01A7F37
+:107D7000270247F88FB6730B779CAD34A845A8ABA4
+:107D8000DA56FE22030000000000000000000000A0
+:107D9000000000000000000010000000A07D0100B5
+:107DA00006000000D0600100F0780100107D0100A5
+:107DB000BC40C7CD0900000000000000000000002A
+:107DC000000000000000000010000000D07D010055
+:107DD000493243000500FF000C0D200000000000A8
+:107DE000BC40C7CD0A0000000000000000000000F9
+:107DF000000000000000000010000000007E0100F4
+:107E0000493243000500FF000C0D20000000000077
+:107E1000622FC45E080000000000000000000000A7
+:107E20000000000000000000000C0000307E010097
+:107E300000B004EE10917EF57F3E7BF57D3E7F3EE7
+:107E4000F09397B2B32397B2B34497B2B345763267
+:107E50007E3197B2B3293FB0C0A197B2B32B018056
+:107E600003B10388EDEF11B0E090171B35E20690E7
+:107E700017B0F4B980E283E211B0E39084E213B06A
+:107E8000C69087E203B0A09086E289E211B0E69046
+:107E90008AE217B0F39018B000E20490171B3FE29B
+:107EA0001796171B32E215B2164B15B096B9B0B043
+:107EB00002DA15B2165B109013B236E21D9013B2BF
+:107EC00037E213B2383E13B2393E171B367378EEE1
+:107ED000111B23C0028807F903FF018852F95CEEE9
+:107EE000038828F959EE111B24C5019013B2FBE257
+:107EF0000A8952FF7E000AEE0DEE08EE0FEE11EE3B
+:107F00004BEE4AEE14EE48EE0FEE11EE0A9013B26D
+:107F1000382642EE059013B238263EEE13B23845AD
+:107F20003BEE13B2384438EE13B2384035EE13B29C
+:107F3000384732EE111B24C47FE113B2FB3E0A889E
+:107F40002BFF7E000AEE0DEE08EE0FEE11EE24EE92
+:107F500023EE14EE21EE0FEE11EEF59213B238225D
+:107F60001BEEFA9213B2382217EE13B2385514EE04
+:107F700013B2385411EE13B238500EEE13B2385714
+:107F80000BEE111B24C4038807E913B0BB910BB897
+:107F9000693EFEFE13B2383E11BFFF90E0E2E048BA
+:107FA00011BFE1CFE140E1CE111B223E15B2164ACE
+:107FB00015B096B9B0B002DA15B2165A171B36537F
+:107FC00015B2173E13B238E015BED62803A6D62A3E
+:107FD00015B216E003A67F750EEE13B239F108F95B
+:107FE000DFA215BED62803A6D62A13B2392D03EE7A
+:107FF000059013B239E213B23A3E15B096B9B0B05B
+:1080000002DA15B216E003A67F700AEEFEA215BED4
+:10801000D62803A6D62A13B23A4015B216E003A614
+:108020007F720AEEFBA215BED62803A6D62A13B28B
+:108030003A4215B216E003A67F710AEEFDA215BE04
+:10804000D62803A6D62A13B23A4115B216E003A6E3
+:108050007F730AEEF7A215BED62803A6D62A13B25E
+:108060003A4315B216E003A67F740AEEEFA215BEDE
+:10807000D62803A6D62A13B23A4415B216E003A6B0
+:108080007F750AEEDFA215BED62803A6D62A13B244
+:108090003A4515B216E003A67F760AEEBFA215BEDA
+:1080A000D62803A6D62A13B23A4615B216E003A67E
+:1080B0007F7707EE7FA215BED62803A6D62A13B275
+:1080C0003A4710B0003E10B000E113B2FBF000B22E
+:1080D0000DF97EF116E913B6BA61BA7300B206EE75
+:1080E000001B2D9713B0C69115B0C7B910B869F62B
+:1080F000FEFE13B0D69115B0D7B91DB869F6FEFED5
+:1081000060EE15EF13B6BA60BA7270EE001B2D97D1
+:1081100013B0C69115B09AB910B869F6FEFE13B047
+:10812000D69115B0AAB91DB869F6FEFE4AEE0389CC
+:108130000DE913B23A755AEE011BD09713B0C691F0
+:1081400015B0FAB960F469F6FEFE3BEE04890DE95C
+:1081500013B23A744BEE011BD09713B0C69115B011
+:10816000FAB960F469F6FEFE2CEE07890DE913B248
+:108170003A773CEE001B069713B0C69115B0F4B9E0
+:1081800006B869F6FEFE1DEE09890DE913B23A70D4
+:108190002DEE001B109713B0C69115B09AB910B808
+:1081A00069F6FEFE0EEE0A8921E913B23A771EEE59
+:1081B000001B069713B0C69115B0F4B906B869F65E
+:1081C000FEFE11BFFF90E0E2E04A11BF10B000E0F8
+:1081D000E1C6E1CE60E07F30111B22E215B2164A03
+:1081E00015B096B9B0B002DA15B2165A10B0002C1C
+:1081F00010B000E00A88FFB066EF15B217F0FEB2CB
+:108200007AE9FEB062EE000000000000000000000D
+:10821000000000000000000000000000000000005E
+:10822000000000000000000000000000000000004E
+:10823000000000000000000000000000000000003E
+:10824000000000000000000000000000000000002E
+:10825000000000000000000000000000000000001E
+:10826000000000000000000000000000000000000E
+:1082700000000000000000000000000000000000FE
+:1082800000000000000000000000000000000000EE
+:1082900000000000000000000000000000000000DE
+:1082A00000000000000000000000000000000000CE
+:1082B00000000000000000000000000000000000BE
+:1082C00000000000000000000000000000000000AE
+:1082D000000000000000000000000000000000009E
+:1082E000000000000000000000000000000000008E
+:1082F000000000000000000000000000000000007E
+:10830000000000000000000000000000000000006D
+:10831000000000000000000000000000000000005D
+:10832000000000000000000000000000000000004D
+:10833000000000000000000000000000000000003D
+:10834000000000000000000000000000000000002D
+:10835000000000000000000000000000000000001D
+:10836000000000000000000000000000000000000D
+:1083700000000000000000000000000000000000FD
+:1083800000000000000000000000000000000000ED
+:1083900000000000000000000000000000000000DD
+:1083A00000000000000000000000000000000000CD
+:1083B00000000000000000000000000000000000BD
+:1083C00000000000000000000000000000000000AD
+:1083D000000000000000000000000000000000009D
+:1083E000000000000000000000000000000000008D
+:1083F000000000000000000000000000000000007D
+:10840000000000000000000000000000000000006C
+:10841000000000000000000000000000000000005C
+:10842000000000000000000000000000000000004C
+:10843000000000000000000000000000000000003C
+:10844000000000000000000000000000000000002C
+:10845000000000000000000000000000000000001C
+:10846000000000000000000000000000000000000C
+:1084700000000000000000000000000000000000FC
+:1084800000000000000000000000000000000000EC
+:1084900000000000000000000000000000000000DC
+:1084A00000000000000000000000000000000000CC
+:1084B00000000000000000000000000000000000BC
+:1084C00000000000000000000000000000000000AC
+:1084D000000000000000000000000000000000009C
+:1084E000000000000000000000000000000000008C
+:1084F000000000000000000000000000000000007C
+:10850000000000000000000000000000000000006B
+:10851000000000000000000000000000000000005B
+:10852000000000000000000000000000000000004B
+:10853000000000000000000000000000000000003B
+:10854000000000000000000000000000000000002B
+:10855000000000000000000000000000000000001B
+:10856000000000000000000000000000000000000B
+:1085700000000000000000000000000000000000FB
+:1085800000000000000000000000000000000000EB
+:1085900000000000000000000000000000000000DB
+:1085A00000000000000000000000000000000000CB
+:1085B00000000000000000000000000000000000BB
+:1085C00000000000000000000000000000000000AB
+:1085D000000000000000000000000000000000009B
+:1085E000000000000000000000000000000000008B
+:1085F000000000000000000000000000000000007B
+:10860000000000000000000000000000000000006A
+:10861000000000000000000000000000000000005A
+:10862000000000000000000000000000000000004A
+:10863000000000000000000000000000000000003A
+:10864000000000000000000000000000000000002A
+:10865000000000000000000000000000000000001A
+:10866000000000000000000000000000000000000A
+:1086700000000000000000000000000000000000FA
+:1086800000000000000000000000000000000000EA
+:1086900000000000000000000000000000000000DA
+:1086A00000000000000000000000000000000000CA
+:1086B00000000000000000000000000000000000BA
+:1086C00000000000000000000000000000000000AA
+:1086D000000000000000000000000000000000009A
+:1086E000000000000000000000000000000000008A
+:1086F000000000000000000000000000000000007A
+:108700000000000000000000000000000000000069
+:108710000000000000000000000000000000000059
+:108720000000000000000000000000000000000049
+:108730000000000000000000000000000000000039
+:108740000000000000000000000000000000000029
+:108750000000000000000000000000000000000019
+:108760000000000000000000000000000000000009
+:1087700000000000000000000000000000000000F9
+:1087800000000000000000000000000000000000E9
+:1087900000000000000000000000000000000000D9
+:1087A00000000000000000000000000000000000C9
+:1087B00000000000000000000000000000000000B9
+:1087C00000000000000000000000000000000000A9
+:1087D0000000000000000000000000000000000099
+:1087E0000000000000000000000000000000000089
+:1087F0000000000000000000000000000000000079
+:108800000000000000000000000000000000000068
+:108810000000000000000000000000000000000058
+:108820000000000000000000000000000000000048
+:108830000000000000000000000000000000000038
+:108840000000000000000000000000000000000028
+:108850000000000000000000000000000000000018
+:108860000000000000000000000000000000000008
+:1088700000000000000000000000000000000000F8
+:1088800000000000000000000000000000000000E8
+:1088900000000000000000000000000000000000D8
+:1088A00000000000000000000000000000000000C8
+:1088B00000000000000000000000000000000000B8
+:1088C00000000000000000000000000000000000A8
+:1088D0000000000000000000000000000000000098
+:1088E0000000000000000000000000000000000088
+:1088F0000000000000000000000000000000000078
+:108900000000000000000000000000000000000067
+:108910000000000000000000000000000000000057
+:108920000000000000000000000000000000000047
+:108930000000000000000000000000000000000037
+:108940000000000000000000000000000000000027
+:108950000000000000000000000000000000000017
+:108960000000000000000000000000000000000007
+:1089700000000000000000000000000000000000F7
+:1089800000000000000000000000000000000000E7
+:1089900000000000000000000000000000000000D7
+:1089A00000000000000000000000000000000000C7
+:1089B00000000000000000000000000000000000B7
+:1089C00000000000000000000000000000000000A7
+:1089D0000000000000000000000000000000000097
+:1089E0000000000000000000000000000000000087
+:1089F0000000000000000000000000000000000077
+:108A00000000000000000000000000000000000066
+:108A10000000000000000000000000000000000056
+:108A200000000000000000000000000015A236EB6E
+:108A3000F3B3901F0C0000000000000000000000D5
+:108A4000000000000000000089030000508A0100BF
+:108A500000020010000100010001000100500002AE
+:108A600000010001000100010001000100010001FE
+:108A70000001000E00150005000A000400060003B6
+:108A800000010002000100010010001000010008B8
+:108A900000010002000800010002000100010001C5
+:108AA00000010001000100010001000100010001BE
+:108AB00000010001000100010001000100010001AE
+:108AC000000100010001000100010001000100019E
+:108AD0000010001000010040000100010001000131
+:108AE000000100010001000100010001000100017E
+:108AF0000000000000000000000000000000000076
+:108B00000000000000000000000000000000000065
+:108B10000000000000000000000000000000000055
+:108B20000000000000000000000000000000000045
+:108B30000000000000000000000000000000000035
+:108B40000000000000000000000000000000000025
+:108B50000000000000000000000000000000000015
+:108B60000000000000000000000000000000000005
+:108B700000000000000000000000000000000000F5
+:108B800000000000000000000000000000000000E5
+:108B900000000000000000000000000000000000D5
+:108BA00000000000000000000000000000000000C5
+:108BB00000000000000000000000000000000000B5
+:108BC00000000000000000000000000000000000A5
+:108BD0000000000000000000000000000000000095
+:108BE0000000000000000000000000000000000085
+:108BF0000000000000000000000000000000000075
+:108C00000000000000000000000000010001000161
+:108C1000000100010001000100010001000100014C
+:108C2000000100010001000100010001000100013C
+:108C30000000000000000000000000000000000034
+:108C40000000000000000000000000000000000123
+:108C50000000000000000000000000000000000014
+:108C60000000000000000000000000000000000004
+:108C700000000000000000000000000000000000F4
+:108C800000000000000000000000000000000000E4
+:108C900000000000000000000000000000000000D4
+:108CA00000000000000000000000000000000000C4
+:108CB00000000000000000000000000000007F0134
+:108CC00032059F05FF090041AA3F000000001D106A
+:108CD0001E056015D7032D2F012C01F0D2F0D28391
+:108CE00096E5C40503040A46080A01013C40408099
+:108CF000800000C8C6595B80541900403328010128
+:108D00000000070A00FFFFFFFFFFFFFFFFFFFFFF5D
+:108D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63
+:108D2000FFFFFFFFFFFF0056363436D61818009DB0
+:108D30001000C01540001400400001C00001E00018
+:108D4000000000000000000073353130304B00009F
+:108D5000000009031F0003000000000000000000E5
+:108D60000000000000000000000000000000000003
+:108D700000000000000000004000000000000000B3
+:108D800000000000000000000000000000000000E3
+:108D900000000000000000000000000000000000D3
+:108DA00000000000000000000000000000000000C3
+:108DB00000000000000000000005000000000000AE
+:108DC0000000000014440011060112251E0C0401CD
+:108DD000011F000800213400000000000000000016
+:108DE0002F8AAAC80C00000000000000000000004C
+:108DF000000000000000000040030000008E0100A1
+:108E00000101000100010001000100010001000159
+:108E10000001000200010004000400010001000143
+:108E2000000100010001000100010001000100013A
+:108E3000000100010001000100010001000100012A
+:108E40000001000100010001000100010001000516
+:108E50000005000200040058001D002D000A000358
+:108E600000010008000A000100070008000A0002D3
+:108E700000010001000100010001000100010001EA
+:108E800000010001000100010001000100010001DA
+:108E900000010001000100010001000100010001CA
+:108EA00000010001000100000000000000000000BF
+:108EB00000000000000000000000000000000000B2
+:108EC00000000000000000000000000000000000A2
+:108ED0000000000000000000000000000000000092
+:108EE0000000000000000000000000000000000082
+:108EF0000000000000000000000000000000000072
+:108F00000000000000000000000000000000000061
+:108F10000000000000000000000000000000000051
+:108F20000000000000000000000000000000000041
+:108F30000000000000000000000000000000000031
+:108F40000000000000000000000000000000000021
+:108F50000000000000000000000000000000000011
+:108F60000000000000000000000000000000000001
+:108F700000000000000000000000000000000000F1
+:108F800000000000000000000000000000000000E1
+:108F900000000000000000000000000000000000D1
+:108FA00000000000000000000000000000000000C1
+:108FB00000000000000000000000000000000000B1
+:108FC00000000000000000000000000000000000A1
+:108FD000000000010001000100010001000100018A
+:108FE0000000000000000000000000000000000081
+:108FF0000000000000000000000000000000000170
+:109000000000000000000000000000000000000060
+:10901000000000000000780080041B0060140000C5
+:109020002C01FFFFBF96307500CC800040FF790017
+:109030002C0103000505070705A00F0E100104050C
+:109040003F003800000000000000053F003800002D
+:109050000200000000053F0038000004000000008E
+:10906000053F003800000600000000053F00380002
+:10907000000800000000053F003800000A00000062
+:1090800000000000000000000000000000000000E0
+:10909000000000000000000909090909090909097F
+:1090A0000909090909090909090909090909090930
+:1090B000090909090000000000000000000000008C
+:1090C00000000000000000000000000000000000A0
+:1090D0000000000000000000000000000000000090
+:1090E00000010101020501010102052D0006000138
+:1090F000030303010303032D0605003F38000602A6
+:1091000011211E020C0C0A410400000000000000A6
+:10911000001D1E1FFF353433FF00000022001D100C
+:1091200044502D0201BA001C05C0C840F8FB080FCE
+:1091300058067F2084C8E00339380D000154000030
+:10914000FB0E25B60C00000000000000000000002F
+:1091500000000000000000004602000060910100D5
+:109160000301001D0010000A0001000100010001C0
+:1091700000010000000000000000000000000000EE
+:1091800000000000000000000000000000000000DF
+:1091900000000000000000000000000000000000CF
+:1091A00000000000000000000000000000000000BF
+:1091B00000000000000000000000000000000000AF
+:1091C000000000000000000000000000000000009F
+:1091D000000000000000000000000000000000008F
+:1091E000000000000000000000000000000000007F
+:1091F000000000000000000000000000000000006F
+:10920000000000000000000000000000000000005E
+:10921000000000000000000000000000000000004E
+:10922000000000000000000000000000000000003E
+:10923000000000000000000000000000000000002E
+:10924000000000000000000000000000000000001E
+:10925000000000000000000000000000000000000E
+:1092600000000000000000000000000000000000FE
+:1092700000000000000000000000000000000000EE
+:1092800000000000000000000000000000000000DE
+:1092900000000000000000000000000000000000CE
+:1092A00000000000000000000000000000000000BE
+:1092B00000000000000000000000000000000000AE
+:1092C000000000000000000000000000000000009E
+:1092D000000000000000000000000000000000008E
+:1092E000000000000000000000000000000000007E
+:1092F000000000000000000000000000000000006E
+:10930000000000000000000000000000000000005D
+:10931000000000000000000000000000000000004D
+:10932000000000000000000000000000000000003D
+:109330000000000100010001000100010001000126
+:10934000000000000000000000000000000000001D
+:10935000000000000000000000000000000000010C
+:10936000000C1C15181A1B111917131016140A0CCF
+:109370000D120E080F06090B030102070504002554
+:1093800024233231302F2E2C2D2B2A29282726005A
+:1093900000FFFFFFFF202100FF001D1081240504B6
+:1093A0000000015500000000000000000000000067
+:1093B00013C94BB70C0000000000000000000000C3
+:1093C00000000000000000005F020000D0930100D8
+:1093D0000401000100010001000100010001000181
+:1093E0000001000100010001000100010001000175
+:1093F0000001000100010001000100010001000165
+:109400000001000100010001000100010001000154
+:109410000001000100010001000100010001000144
+:109420000001000100010001000100010001000134
+:109430000001000100010001000100010001000124
+:109440000001000100010001000100010001000114
+:109450000001000100010001000100010001000104
+:1094600000010001000100010001000100010001F4
+:1094700000010001000100010001000100000000E6
+:1094800000000000000000000000000000000000DC
+:1094900000000000000000000000000000000000CC
+:1094A00000000000000000000000000000000000BC
+:1094B00000000000000000000000000000000000AC
+:1094C000000000000000000000000000000000009C
+:1094D000000000000000000000000000000000008C
+:1094E000000000000000000000000000000000007C
+:1094F000000000000000000000000000000000006C
+:10950000000000000000000000000000000000005B
+:10951000000000000000000000000000000000004B
+:10952000000000000000000000000000000000003B
+:10953000000000000000000000000000000000002B
+:10954000000000000000000000000000000000001B
+:10955000000000000000000000000000000000000B
+:1095600000000000000000000000000000000000FB
+:1095700000000000000000000000000000000000EB
+:1095800000000000000000000000000000000000DB
+:1095900000000000000000000000000000000000CB
+:1095A00000000001000100010001000100010001B4
+:1095B00000000000000000000000000000000000AB
+:1095C000000000000000000000000000000000019A
+:1095D000000000000000000000000000000000008B
+:1095E000000000000000000000012400FF04390119
+:1095F0000020FF04390100203333CC1C0219100A6B
+:109600003006300303881F10031003099614142D2D
+:109610000C041040803F0000969696969696040A99
+:109620004E06183800551A5000180061510000000D
+:10963000C0F111E30C000000000000000000000079
+:109640000000000000000000F10200005096010040
+:1096500060010001000100010001000100010001A2
+:1096600000010001000100010001000100010001F2
+:1096700000010001000100010001000100010001E2
+:1096800000010001000100010001000100010001D2
+:1096900000010001000100010001000100010001C2
+:1096A00000010001000100010001000100010001B2
+:1096B00000010001000100010001000100010001A2
+:1096C0000001000100010001000100010001000192
+:1096D0000001000100010001000100010001000182
+:1096E0000001000100010001000100010001000172
+:1096F0000001000100010001000100010001000162
+:109700000001000100010001000100010001000151
+:109710000001000100010001000100010001000141
+:109720000001000100010001000100010001000131
+:109730000001000100010001000100010001000121
+:109740000001000100010001000100010001000111
+:109750000001000100010001000100010001000101
+:1097600000010001000100010001000100010001F1
+:1097700000010001000100010001000100010001E1
+:1097800000010001000100010001000100010001D1
+:1097900000010001000100010001000100010001C1
+:1097A00000010001000100010001000100010001B1
+:1097B00000010001000100010001000100010001A1
+:1097C0000001000100010001000100010001000191
+:1097D0000001000100010001000100010001000181
+:1097E0000001000100010001000100010001000171
+:1097F0000001000100010001000100010001000161
+:109800000001000100010001000100010001000150
+:109810000001000100010001000100010001000140
+:109820000000000100010001000100010001000131
+:109830000000000000000000000000000000000028
+:109840000000000000000000000000000000000117
+:109850000000000000000000000000000000000008
+:1098600000000000000000000000000000000000F8
+:1098700000000000000000000000000000000000E8
+:1098800000000000000000000000000000000000D8
+:1098900000000000000000000000000000000000C8
+:1098A00000000000000000000000000000000000B8
+:1098B00000000000000000000000000000000000A8
+:1098C0000000000000000000000000000000000098
+:1098D0000000000000000000000000000000000088
+:1098E0000000000000000000000000000000000078
+:1098F0000000000000000000000000000000000068
+:109900000000000000000000000000000000000057
+:109910000000000000000000000000000000000047
+:109920000000000000000000000000000000000037
+:1099300000000000000000000000000000016000C6
+:109940000000000000000000000000000000000017
+:10995000F0281D010C0000000000000000000000C5
+:1099600000000000000000008E020000709901005D
+:10997000800100010001000100010001000100015F
+:1099800000010001000100010001000100010001CF
+:1099900000010001000100010001000100010001BF
+:1099A00000010001000100010001000100010001AF
+:1099B000000100010001000100010001000100019F
+:1099C000000100010001000100010001000100018F
+:1099D000000100010001000100010001000100017F
+:1099E000000100010001000100010001000100016F
+:1099F000000100010001000100010001000100015F
+:109A0000000100010001000100010001000100014E
+:109A1000000100010001000100010001000100013E
+:109A2000000100010001000100010001000100012E
+:109A3000000100010001000100010001000100011E
+:109A4000000100010001000100010001000100010E
+:109A500000010001000100010001000100010001FE
+:109A600000010001000100010001000100010001EE
+:109A700000010001000100010001000100000000E0
+:109A800000000000000000000000000000000000D6
+:109A900000000000000000000000000000000000C6
+:109AA00000000000000000000000000000000000B6
+:109AB00000000000000000000000000000000000A6
+:109AC0000000000000000000000000000000000096
+:109AD0000000000000000000000000000000000086
+:109AE0000000000000000000000000000000000076
+:109AF0000000000000000000000000000000000066
+:109B00000000000000000000000000000000000055
+:109B10000000000000000000000000000000000045
+:109B20000000000000000000000000000000000035
+:109B30000000000000000000000000000000000025
+:109B4000000000010001000100010001000100010E
+:109B50000000000000000000000000000000000005
+:109B600000000000000000000000000000000000F5
+:109B700000000000000000000000000000000000E5
+:109B800000000000000000000000000000000000D5
+:109B900000000000000000000000000000000000C5
+:109BA00000000000000000000000000000000000B5
+:109BB00000000000000000000000000000000000A5
+:109BC0000000000000000000000000000000000095
+:109BD0000000000000000000000000000000000085
+:109BE0000000000000000000000000000000000075
+:109BF00000000000D618188200000000810000005C
+:109C0000896CBB900B000000000000000000000009
+:109C1000000000000000000018000000209C01006F
+:109C2000308A0100E08D010040910100B0930100F5
+:109C30003096010050990100000000000000000073
+:00000001FF
diff --git a/firmware/tsp_synaptics/synaptics_s5100_a3_k_FHD.fw.ihex b/firmware/tsp_synaptics/synaptics_s5100_a3_k_FHD.fw.ihex
new file mode 100644 (file)
index 0000000..b215bce
--- /dev/null
@@ -0,0 +1,6598 @@
+:10000000CB695F0D00000010000000001000000030
+:10001000B798483D0000000000000000000000000C
+:100020000000000000000000200000003000000080
+:100030005000000090000000B0040000807D01002E
+:10004000B07D0100E07D0100107E0100009C0100F8
+:1000500021E0A5FE0D0000000000000000000000EF
+:100060000000000000000000180000007000000008
+:10007000EC130000F5C418004453352052302E32E2
+:100080002E31000000000000000000000000000011
+:10009000EB35D66B020000000000000000000000FD
+:1000A000000000000000000000040000B00000009C
+:1000B0000305A34B007F01321E37047F07A63F9242
+:1000C00040000000001C101E056015D7032D3000F5
+:1000D0003000F0D2F0D2E3BE647802010F1496082B
+:1000E0000A010128404080800000C8645B5B6045D5
+:1000F000330080191401010000070A00FF000C0002
+:100100000C000C000C000CC00CFF3DFFFF000A00AF
+:100110000A000A000A000AFF0AFF3DFFFF00C201B1
+:1001200080041B0060140000BC02FFFFBF64307538
+:1001300000CC800040FF79002C0103000105070777
+:100140000570170E0E0104053F0038000000000086
+:100150000000053F003800000200000000053F00DD
+:100160003800000400000000053F003800000600D1
+:10017000000000053F003800000800000000053FB7
+:10018000003800000A0000000009090909090909EE
+:1001900009090909090909090909090909090909CF
+:1001A0000909090909000000000000000000000022
+:1001B000000000000000000000000000000000003F
+:1001C000000000000000000000000000000000002F
+:1001D00000010100000601010001052200060000E7
+:1001E00000020200000202490605003E3800060235
+:1001F00006611E0220082314040000000000000015
+:10020000001D1E1FFF353433FF000001220C1C159A
+:10021000181A1B111917131016140A0C0D120E08B8
+:100220000F06090B03010207050425242332313090
+:100230002F2E2C2D2B2A292827260000FFFFFFFF19
+:100240002021FFFF01642040033901401F40033992
+:1002500001FC219939CC1C0219100A120C120A0651
+:10026000141F100310030996A0A02D0C0410404089
+:100270003F000050505050505007034E06064906AC
+:100280000600010000000000000000000000000067
+:10029000000000000000000000000000000000005E
+:1002A000000000000000000000000000000000004E
+:1002B000000000000000000000000000000000003E
+:1002C000000000000000000000000000000000002E
+:1002D000000000000000000000000000000000001E
+:1002E000000000000000000000000000000000000E
+:1002F00000000000000000000000000000000000FE
+:1003000000000000000000000000000000000000ED
+:1003100000000000000000000000000000000000DD
+:1003200000000000000000000000000000000000CD
+:1003300000000000000000000000000000000000BD
+:1003400000000000000000000000000000000000AD
+:10035000000000000000000000000000000000009D
+:10036000000000000000000000000000000000008D
+:10037000000000000000000000000000000000007D
+:10038000000000000000000000000000000000006D
+:10039000000000000000000000000000000000005D
+:1003A000000000000000000000000000000000004D
+:1003B000000000000000000000000000000000003D
+:1003C000000000000000000000000000000000002D
+:1003D000000000000000000000000000000000001D
+:1003E000000000000000000000000000000000000D
+:1003F00000000000000000000000000000000000FD
+:1004000000000000000000000000000000000000EC
+:1004100000000000000000000000000000000000DC
+:1004200000000000000000000000000000000000CC
+:1004300000000000000000000000000000000000BC
+:1004400000000000000000000000000000000000AC
+:10045000000000000000000000000000000000009C
+:10046000000000000000000000000000000000008C
+:10047000000000000000000000000000000000007C
+:10048000000000000000000000000000000000006C
+:10049000000000000000000000000000000000005C
+:1004A0000000000000000000000000002F198D0374
+:1004B000BA6417880100000000000000000000007E
+:1004C0000000000000000000005C0100D0040000FB
+:1004D0007F6A01BC9FD7B4828D5A33F81F752348B9
+:1004E0005FDF6186DAE508E592DE69A6FBA88D1C70
+:1004F000A9ADA9BD11DF2CC41D328F53B49C9084CB
+:10050000E2421250E610D4E3BE75AE705C7226FF74
+:10051000072735DE345E2D06C2F21E944E572EC0DC
+:100520000E763AC7B6B25DB050D9B3ED23ECFC59A4
+:10053000680F2A4C7451F6629B9615275222CE0200
+:10054000D398E380A0FD6F50E53CC00BEE448F15BF
+:100550002956AAF4769A46107F6D7BE64F182C1424
+:10056000072905C16F81D4EF077B8F006FA477B691
+:10057000E4E27520B03C27E422266EE4E49294562F
+:100580002A56488DFD72DE6D407AF6D8EF5E94BF34
+:10059000217D8F3366C0C2FAD8F7788D737180558C
+:1005A000BE4A1DBB5837CF75F17BF49D5BB891AE49
+:1005B000E99786021E346AA946C7BA129524BB5E23
+:1005C0009B5DE32AA268C9829FA329B93927B9EBA9
+:1005D0008B336CA9CE8ED3BDAE55FBDFD73878F305
+:1005E0002697BA30583C4F2A0FE8F224B8A6850760
+:1005F000BB0217C02A05D07D653040F7CDA7DF0DBF
+:10060000CBC854BC95CCA84E9563EAB8DC55CE80D7
+:10061000BCA1C13778AAF0872033697CCBE913EFFE
+:10062000B7AD0F049D69B92942DBC14BF61187DBD9
+:10063000CECC7B436B28E5639309158792C58FD693
+:1006400073E2FCA0D0840FD45B483CDDDDE69175FD
+:1006500036BE39AF4A1029E77259E7AC0023FEEBEA
+:100660008B18B22EFCDAB3E06F76B89A258D480865
+:100670001228213F1FE8886CC0422B63F89CA01D04
+:100680003136986CE0AC2FC6FF6B5A0BD9B02E05F3
+:10069000A9BF105F9A63B4576291BC13D6EA18E3FE
+:1006A0002CA77B1D41D2D431DFFCE2EA7974CF2440
+:1006B0003A924380F35E934E19AE2159F1FA172214
+:1006C000CF7111982B9A2758AD0003E0373E684C44
+:1006D000444954ACF113FA5D7B0367BE16FCC1EFCD
+:1006E00089182AC194A4A6F2E88444C1E10EE8DA8C
+:1006F000274FFC3A83528E6DC15EABD0ACC2301234
+:100700006068B31BBB8A5D9EE62B57944C6DECDA98
+:10071000DEBB53085CE3CAA79CA4BA7AF79F77476D
+:1007200066583F34E774C2FCD207D57DD3A51FB20B
+:100730008BDE02F1B00D2A19484E384A3F75758498
+:10074000388560674DBD97A865607DDF304307172A
+:10075000A4C7B3EBA35ED41E86CE0C6DC3F4E23FF8
+:1007600084E4904FD0D86A49D97ED71E42F74528F5
+:10077000047CF20AFD6F25D3E63A14E3008E15736C
+:10078000B14D4C3B0AAEF7657C1418B9F0490259DB
+:100790008F8F84B1DE9274D4F94F8DBAFB0CB8BB45
+:1007A000BE510630F738DE913A9A0BF183CA01D375
+:1007B0009288FC569761023AC516162A993F346012
+:1007C00076022EDBE938F5318FBE6F3C7AA0FBF85C
+:1007D00043BF95A68824BAFA09BBF41D24319E179D
+:1007E000AA6ADD9268F61CB2EBC0E2378CDFC699CC
+:1007F00058886DB0F20F35795F0AC75F7667B4AC81
+:10080000CCE106BB3896F1DD931C1A73D7FFD56394
+:100810003A4B3543961CD925077955BE18C3C0817C
+:1008200093D4B2E12DE2EE304ED2A1FE9BF5ACA501
+:10083000639793980B3B15A5FB11D3D2DF62B4F6F7
+:10084000D9DE9A4168D95D35ABAE8CC2005242BE4A
+:10085000E439AF64C4F65963D9130A60DBC4862156
+:10086000FC97F7385A1AE66418D88520AE7C4350B6
+:10087000BD3D1493841B0DF42DEC16C64A8E47C162
+:10088000BC4F44AE4208D5F57F0580CEBF68322EFE
+:1008900040F463338FE03F8321AC9D9E3DB256B45C
+:1008A000751F195E00B750725FA0195A266D8369D3
+:1008B0008B828F02605FDA92F8D0BD124173EDC275
+:1008C000B8CA6118743BB220E7DD98F786B8B992D0
+:1008D0006751BB751FF67A4C485399ACF305A37664
+:1008E000933A1799E47DC2F30F3791D155B11B8824
+:1008F000488645CCDFC2A4EAF01F1170913DF8C5CF
+:1009000047F35D1687BABB9B8742282CBDCA23A933
+:10091000F76B221DCBF6086AC732C699BD92CABAD8
+:100920004383CA8C21EFC2B5D950C6B46DBE97E5DA
+:10093000592AF4407B0E84BC4C15895A788E66E6A1
+:10094000837C2A2ABBBBFCA2F068142083E767F9EA
+:1009500083378C4174BB88D01678A822A42C23330B
+:10096000DE619F3D73D4C39ED04F306F48C600EC0C
+:1009700073C544CB20F61AA9AD6EACF76ECA0FE46E
+:100980006C5D79DF98C2EA8423CDE7148135DCED14
+:10099000C508837468F25B73B96DCD30DCF42B1D30
+:1009A0006E8D6A84277098726750A984C9F6B281E7
+:1009B0007032CEA31D29001F7DE1D0E5A34510ECC8
+:1009C000CEE902B125EDB06C54ABAB19AD48F4D310
+:1009D000B350513128656CE88D4574F7FEF109B6C6
+:1009E000536ADFAA040C1657061E42F734BB40F5C3
+:1009F000E5E93B1640A1806E740C7BF557799811A0
+:100A0000D197472A3E2267AE5290ACA9571955E6B6
+:100A100004C648117D69C658DD252BF53EB36CE947
+:100A2000001F319148D30A40FF7C00B825E2A202A2
+:100A3000E3227C5CFB27CDECE0B9CAE2B4589C22EF
+:100A4000A411CD3CB4BC8CD2EA31E02F4D4372D01E
+:100A50003E9214766AC94D26BA639910AE4BAD2307
+:100A60003304AD34E7B94FF77BAE099DBF2259C4BB
+:100A700018146DC9C755D6548BD902D422AF8F999B
+:100A8000640AE81CFA321D6866D8C22DE0944AC692
+:100A900081729E533017FF065AD427E4C6612F791E
+:100AA00019129E699F1BAEBFE45E3FC5288C697317
+:100AB0009760341E5D915D60FD7AA405A18B1505DC
+:100AC0001B73FD7A07D70F1F5D2D97FC7BABDD32C3
+:100AD000461D7B3CA6853E5B1A7EEFD8B086A350B0
+:100AE000331575028203A82D5ED432D60B7C0832F2
+:100AF0005272C0739993843EAC95BBC167D8B40160
+:100B0000468DB0AF0979FFC56499477C2926FA69FB
+:100B1000940B5EE829E140CCBE21D3ED72584074BD
+:100B200048A5537E0719CB413DAB862A94FE0E3C67
+:100B30003D2F6ADAF0DE3925D2914C430552D05D63
+:100B4000D84DC3D32F91C23C035829226F96F3A2EC
+:100B5000529AB75409C62524AD68AF6DB0A634A526
+:100B600050D21039D8097B07FB458DB9104B476827
+:100B70001C97C1884EA240B54FE40D56D54CCC0C05
+:100B8000D39E2F62A295BCDF1D69E3CCABE3E8588E
+:100B9000E37593E1FEEB21F7A5144A0DCCC8D4B759
+:100BA000C1205B4A46C72509F14FD94AC80A46B752
+:100BB00083F4C8876F57BF9319A720A4538069F2A5
+:100BC000B739354D990F6B433BCA2108F030FCE330
+:100BD000EEB821EEC75CCC2F7148E61323F19E32AC
+:100BE000DFA829AB891B6A0A2D792F62112221F512
+:100BF00046262903565A8A85E7246540ACB3F41586
+:100C0000F8F7D0D72DBF909F3FC63ACD0166AAFD19
+:100C1000A92FC0BCD51991E25A92F0D648CC7AC619
+:100C2000005E66BAAA775518435D715040164A06B1
+:100C30004D1E85C3E467573604635B605A5483597D
+:100C400032A0F47723355538ECACB65AA2801FA6F3
+:100C500026DE69398E5480BA4F880EEC91DBEFC2E4
+:100C6000CCEFD1C05AE359BB0FD0FAD32D3EF0CE12
+:100C70002EDC77DD9E63D2D24D5422F7F069975473
+:100C8000A1679BD916F3B8A4C2FA8F29997D9EE279
+:100C900054C44E2EBBB24F11C00D033143175A7CC2
+:100CA0004BE63CCD1F588F9E7562727D105FC2FF70
+:100CB000FE9BE2A2DE40834E4D34192A6AAE0C87B9
+:100CC000FB20A6B1EC7A47328041EE3059DE26D8BF
+:100CD000DAC64217DCFE1F497C705F9B1DA2FA0238
+:100CE0009AE334AD25C2BFDA479E946A26B0E196F6
+:100CF00036A63FA2454D5260B042F971CD5727DF6D
+:100D00002E0113138A11D17DB6C32C107DFD871DD2
+:100D100053D259939A96610A084F9FBF9EFD5B4636
+:100D200098FE3836DACC2E8E47B6EF45465F7AC647
+:100D30005729ABF51609F4057304652DD5EF279CEB
+:100D400024FBD56D6DAE1D7675C05A87F0AB05D00E
+:100D5000FD66F0998EE443396A519B2B5883AC1B96
+:100D6000221A39C448F59DBB1CBCD7EEC74C5209AA
+:100D7000C38AB9AA20AD9B2472BCF2BE68E812EE09
+:100D80004CE3278A9C1C9A9866FE90284CD33CDE44
+:100D90004917A99D0B92738EED3A0FC5D9BD390441
+:100DA000A6828B732B86EB6247E96DA6618AE565A7
+:100DB000D659B30B3722FAEC5C9F8CC4671850D815
+:100DC000680CE5842A152FCE2DEA8D5494621BB24F
+:100DD0003CF768853E70D1D61F91FD2DCAA7AEE4C1
+:100DE000FACE99356E897AA7D8E2EE00F0327CC14E
+:100DF0003580DC631AFFF56BD5C50ABBB37B25BB19
+:100E0000F8F57525CB391A618E1D56B39AB7634331
+:100E1000EFF292E6223B5A355785DCEB4ECAE849A1
+:100E20006F9BC287101DEB9700721D336AE2BB9E59
+:100E30004B66C28065E57CA0314A15FCAF9FB520AA
+:100E4000AE709E4311E29674A76E84D8A30D18D697
+:100E500085368C1CD36A76EBADC5ADD4E6DF6A3738
+:100E60003E7A54D1733284CE2862632BF65C2C37E1
+:100E7000E1EADA838E9CED25CA7242F6C50C64D88D
+:100E800061FEBDD999AE4AF8FB65DC11E219BD0ED1
+:100E9000B160189BD4B10B1D16C3BEB69932D7B141
+:100EA000DC2B5AD89D88515C8C6F60B1340711736C
+:100EB00054C8B337C77C6442B7157B8269622E3D44
+:100EC000CA5F202D4C2C4C6910C52CB396255FCCE5
+:100ED000F7515F7B33B480525EB1DCFE06094D569C
+:100EE0005877F3758C5C11F27542D61D094257FF95
+:100EF000CCB2B04EC51A43840BEA7270FD5446D48E
+:100F0000F1CD40952625233762FA8E3C7D62282B51
+:100F100019B907452B9C5363FB356FB59DB211F78B
+:100F2000761C79CE528B24A5574C2D9C7E31D963EB
+:100F3000C1A85B698C77DA48060F980B2B208A547E
+:100F4000407F2A40F1BD37DBA9FF2969A4AAE2E965
+:100F5000C3973189FC1302A579B29320AF025F32A7
+:100F60001B6FD8308231209752116AF96BFFB56838
+:100F700014BC79B79390A5C0B2AABE6C104DCA89B3
+:100F8000A46604B4465F36B64CE776723131DD486C
+:100F900033B5FF8886C10CE556DD09080C38E6DD5F
+:100FA000DFAAC1F67293943DF1F14B52C5B1B5F58C
+:100FB000C9140581BD5AF78BA98EE9B610F754EC18
+:100FC00073F62F6995D625948EE07E171D68D28919
+:100FD0000F70A9451406A326EF295E105682CE583D
+:100FE0001F44286B38C7D65CF95AB0DF05FE618B09
+:100FF0000843330CE0F9CC8965DC61E412DFACE630
+:10100000BD44C4EA8307A863F455140084410CA9C5
+:1010100081D57ECD14CD176CE4B935C000D60C6AED
+:10102000797FB7039B4B23980D340FC8E6B4403942
+:10103000E788810A07687CB9A12FAD2E8D96A57B24
+:101040009D94A9CA712AF9ECDCF57CAC2168F06F9B
+:10105000C968876AC393E6D8744BC26C5E67DA527C
+:101060003A0856B678C9652AC5C81AF216170E404E
+:10107000E868417D05BC8ADD38D2EEF6B14BAB4362
+:101080006708704EB81D1919B9EDEE84FDB642E837
+:101090004097F604C11B33B0C7895775402A5E5488
+:1010A000A3231391363860D71F1C3E26562625B73A
+:1010B000D81024C05C92EED4EDCA6384E2B8655FB8
+:1010C0005140A95D06406ECC02D1389CDD7208E625
+:1010D000781D153E7CE5C50F3CDB24C709865FBE45
+:1010E0005C217FFD48A1D647ECA3F5ABFD645C1CF9
+:1010F000A48165403A8AEE003C3C7DA5A81ECB88C1
+:10110000DEF6CB453B730B890CC6E9B60160AAED50
+:10111000FF36D60490DFD73F121E76C1F62826BBD5
+:1011200052FA0D8DD714A25AACBC87E452209153C9
+:101130000EE832E0C721965C72888A76BB7925EA90
+:10114000DC2377659E448A16576828AB430A7001F2
+:10115000C073AF2FA9A986F399390A6E64EDE03305
+:101160005D272570B827B98A0E337D964EF7A755AF
+:10117000497FABBAA82C26CD43114F66A58B064BF1
+:10118000227BA7A2DDAE14A46784E4893DA0BB0244
+:10119000075EECCB2128A4AB2569DA0DEF0A256E9A
+:1011A000D3E04BE2E9340F522E532D3A962C0587AB
+:1011B000BE25871BD941E69A53E187E17E09BD151B
+:1011C000666C1435C84D4201885591BC1124D42B4E
+:1011D000A58C7FAA8F41E56BA1982E8C5208852F94
+:1011E000DA42909B00B4B2761F8508C1CC959380FB
+:1011F000982E218EC320AEBFD8711495B344F82425
+:10120000AF57D83BF81E44582AF16599ABA7304335
+:1012100060213C2A5C3D22544C98E9A5B5EF184664
+:10122000D1AF495F3E5184DCB03755BD70CC72BE42
+:101230001B0D5A70E716793748271446F7F20ACB88
+:10124000F66074AF7BFBBF932A08A59056A5EB4FC1
+:101250004AEA7EE20A1F3569B9A113116C99F5FBC0
+:10126000C42B3C7810D93EA230065538129F6746F1
+:101270003E2BAF94504992F2D3B60E09DA1B8097F9
+:1012800019FA68795759ACF7613CF8526714C18A6A
+:101290002D361B9F541B486A7135EEB75152C5C895
+:1012A000FAEAF8A4D3BA5E459FDF7759E396F807C8
+:1012B000BEB89AAA8010B892D5BBA62404289C6B0D
+:1012C000D67D7C00D81399C69096EEE11E28625315
+:1012D000C6BDF0871F85E5BC6251FB85391AD54B29
+:1012E000A76E74913626DC193FD27251B26AC7FFDD
+:1012F00025442DE753834F4A995B934A20C392AB11
+:1013000061A7E29997D591FAA4288D373F8F48AB12
+:10131000D60F3EFA4BB1AD3BE653975C3D3A9CE4A9
+:10132000A41517F7C3B637BD291216B2520966A71E
+:1013300062C109F8CB30F9E085F461059F1787D7C2
+:1013400057A9F5B1D5658C467277F46432DBD5B90F
+:10135000547ACC72E685BB8B17ECFDADFC8313EBA6
+:10136000F93DCB4461D9452B2B20ABF722CB8F1312
+:10137000A06DCCA647DEC58782FD0D0D32C9396749
+:1013800026494F8E1BE4C03736155CB572D5B1C403
+:101390008E626B8AB1B374112575B8F520B5664BB2
+:1013A0001F7180C5B4A8221C3EE76F62C8E2C8CB9B
+:1013B000F11D2211B5D347E6501B875BC63C0B9944
+:1013C0002FBB2DF4F89E078056746EAFD6AC09E3A0
+:1013D000A5469C75DFE748B875DD2DC8C2B6CD6B54
+:1013E0004DBB27208728E45FB307A699A738D17A99
+:1013F00065BB71CB1AE4EC17A177A661FA7831D6F8
+:1014000032EAF49471700A1D2646C9312C91189560
+:10141000BD939C98010B323DDF49824A726E382D94
+:101420002107216A90C447FE7E4E32D4BCB87A9E12
+:101430001C1198A68A50626E9463FE90ADD8AB35AD
+:10144000735EA6F7EAF8C4A798A2F344C7CE918BBF
+:10145000DECD10DF3548D13453F86CC050DA83E06C
+:1014600040EE30A0C472121DC6B69B450818FDB8E8
+:10147000E8AE7574E81139BD8449E1AADAC34AE0DF
+:101480002BA23346883673B15958AC453AD24AB983
+:1014900015953AA8FA2D21A9BDA5BAC7C194851DF5
+:1014A000C4C24CC2F452CD682FD909A9FA64E983A9
+:1014B000FAF814541767835BD097D6576380BA3F06
+:1014C000A5E504E0B31887042BD218E53B3426CCFD
+:1014D0000B6AB3DAED51BBCD7666F2FEA6A4970592
+:1014E00033E35E3FF79512A04698B714483E3C059B
+:1014F0005D61515E567D441B7741DA9F6577957E2D
+:10150000CB2D3EC51AC541D1BF83928C5D2CEFFF18
+:1015100096C3886AC9D2462C77A293D564F06554E5
+:10152000D6D995AA78737D5B6ADBAE6D3131DFBDAC
+:10153000D8B8098FA218D23C4765E5E5E013E0E68C
+:101540001A7ECD6ECD16B45313B1FC510C887111B7
+:10155000D15181640B685C0BD6127B54A8B089F81A
+:10156000EAB2B5B45BD326320C9FFE95775EBF5EC0
+:10157000BA01CB031F47915B00D318EE03C1A9A7A3
+:10158000FE3E63F89097972FEEA086F48344DD38F3
+:1015900099A8B90C5CF716B79C9EE8A7426B73EC50
+:1015A0009E0F08D29771ECF9CD742660E2C1B06746
+:1015B000E330469766E026373520D377BB92792F04
+:1015C000778E93995DA4926EFFBABC8CAF48A90147
+:1015D000E9689A5944AAB84455EA7BD698C40EF6ED
+:1015E000EE29F40C6614999184C95A0F45EF1CA09A
+:1015F0002001D4F1BEC0CB0622AC18561E2DEB0F35
+:101600008CE6CC599CB306967CDB89F18730CD63A0
+:10161000337C2A9AB925CA0C34DF5B77F52955A5A6
+:10162000AABB1A39FD1BC7B9E40B32CF9D9910151F
+:10163000D7ED2A9FDB225FA9EBC10F65725A93F2A7
+:1016400042E8FE6269B36EEF895701EFF188E1D697
+:10165000A513BF9CA62CC8097F6776F8A68A3F8E83
+:1016600031171E977D28E2C54F989514D5C687CAB5
+:1016700043FFFE86275B4C47140F26C11C481A8B7C
+:10168000A25BA6E0431227DA93FA99180E9F835CB7
+:10169000D9EE29BF4C60BB29D99EE2D6063AB349A0
+:1016A000BCD13619254DA123A3DC616A46B615A02D
+:1016B000A8F05971EE645A9B864E3BF60462F0B472
+:1016C000B823606F3922F5F63A0D5B1F4B8310B8D3
+:1016D0009919E8CCEECB64B0DF4C0A8FF284A37F7B
+:1016E000AD3CB2FF008B5612A6373832F2AAD304B3
+:1016F0002E31D0BB78F73259F313977E90A0B1ED1D
+:1017000030ACF48F2AEFE44F78A28EACC67330B6BB
+:101710003B056EC2072C8194ADA8D7E336A2940294
+:101720003BAE14F7B6EFC5ABDC760A7561C25BEE73
+:101730004A732C2BDFE630C497977306F549776E12
+:101740006EB93113B991D7F4B6F400A9A73A28A21B
+:10175000AD102DA32740922DB32F2284C43664C32D
+:10176000036790E8D503D6E04F9793900E4D98D835
+:1017700051574004919A0AF71E8422B43615848B7F
+:10178000FB865397679A6CAD889BB06A4A0522899D
+:10179000B403AE0D7FDD4B566CE3EDD4CCC0FBB98A
+:1017A000FAF6A8F772AFB5C523E0FAD7A0B9D01200
+:1017B0000DBA1A38E713538C56CFAE3AC7CB7C5AC2
+:1017C0000E4D6895A9CCD039FD49205E8733B70806
+:1017D00010961F2CF785EB4E1222D071D6C2A84569
+:1017E0007848E1EEA8FC66156675A8242F4CD9C18F
+:1017F000CF009410BAAE58EA6FD39E4B39F46BF217
+:101800001BF187E7138762F26B911474F67C3C8DB1
+:10181000FA9BF9621280FEA1F56BD870BBEFAD5A4E
+:1018200027A233320DB7180FE289FAA78FBD57C828
+:1018300042572A439F8A779AB166198F4E187904C6
+:10184000D8350636E63AC1B64AE404E556A28A66B9
+:101850004603338869D20D3F31AF4D540635875466
+:101860009BED284BAE7DFA9155063233357735DB4B
+:10187000ECEBF3B49D7409BF4DC3A4EEF3DDB9AF37
+:1018800056B123BCB2E83C667C26BBFDB6BB8AB829
+:10189000A94E36355D9B83B7462FC277E5D9A7CCD5
+:1018A000A304E503812094C1B54E4F751533FCDECA
+:1018B0000101855D64F219AC7FD57F25B8C8385425
+:1018C000BC61F8CB31D0B6128FF53D3EE53A7E389B
+:1018D000FDC5F5D8949E9040861B5FF46B52595617
+:1018E0004424C5B16B3588999D96CC63422242E968
+:1018F000CB627192E76606979F61945B7595BC56C3
+:1019000036BF4C589CE69E9CF12EB97720D37E249E
+:10191000D24BCC632E05369ED343661B4F5F0B869E
+:10192000150F133B9E595B38ED7E5108C5F609A88B
+:101930001853E802C2D1007A291362B3EFFFE0EC3A
+:10194000752F2FE8179EC0CE2191D9D82969752B04
+:10195000EA62B9DF87BD70FFFB6B646E4C12635F98
+:10196000C182787B7BB778F95D0E78D31A11EA7E55
+:101970000BAFD25B472245E4F108418D2BBAD9D297
+:10198000793CEF293233FFB805C2FDB32D5EBF6845
+:10199000300E3B63A5ED36E4C022BF21EDFDE4C46B
+:1019A0008541605F12052246ECAD39AAA3F9F0D853
+:1019B00012CF11C3DD0C7534EF363740333DFB6178
+:1019C0002AE1C33D164A1E99FE883945233202FB9F
+:1019D000BB0475090020B440F4746A643511554A9B
+:1019E000456EA14F8B8B7804A2129A5DD2EBDF5823
+:1019F000028C2D206498F49C3CBC0E3345ABB8DFC0
+:101A0000AD295E53A82328E6C43B55D5FF8D75FB51
+:101A1000A608DCBABD7ED8984BE43D6BEDB7ACE8C8
+:101A200035DBE47D174F5727D79DB29B6DF0C82C4F
+:101A3000157B6DDE7294CF85342D2FC34864AD7253
+:101A400087879DE4F9F5768633CA8F72CA85AC4FD5
+:101A5000BDCDEDF78386235EE8F701AF6FC55D4826
+:101A60009FAEB9DF81E90602ED2374797875B8EB92
+:101A7000059E9A5CAB4CD869E348B136DF9551338B
+:101A8000DF3CACBF9016BAEE972F5159CEC701A6D6
+:101A900050D39D6BC00A0B77B795CED456655E7256
+:101AA000BF3B3CAE3B0164CA93C987707EA6E95A2E
+:101AB00042755FFBE4043CF321B0EFF14E920CA8B9
+:101AC0001BBCC78943BF25E2E784E71D139527DECA
+:101AD000335F7EDEFB9D7B1FC78D815A85BF3ED95C
+:101AE000C417313B0136F809BF2646998B70084D63
+:101AF000842E793F1B5829F5BA918004FCB734F144
+:101B00004E06C1BD44D40A78B4C14230225B129063
+:101B10009A80BE05A0251518684C132294428A4964
+:101B200099FA5297E726BE0AB176B8DF7050203294
+:101B3000BB7D3135AD639FEA9DBDB354C115D4441F
+:101B400082F65D3FF09D431DDE8AD0DDC3628310C7
+:101B5000631A3F8F27E44A53396527A9438A7A9C41
+:101B60007097F02E5D8A1DA1FCE244EFA3FBBD84BB
+:101B7000801E933E08E1EFF1192D7235ABC96470F8
+:101B8000F6B40E5562468E8F1B7C93159BF93CC1B3
+:101B90000E18E32A605C494B7785D734290A429FA7
+:101BA0008A902139961B46176BE2CF679D284575B1
+:101BB0000FBDE19FB49A62783F85BDFA7EB6B8E169
+:101BC00098FC27C8C7A7E62539F85F23F5DEEB6F39
+:101BD000D17C4609ADF00E38314B21ED3499D3F666
+:101BE0005182308680401E0D2CD2C40E19E6F27947
+:101BF0009B6FFC0F4F5F82FC1329C21199C13E7A83
+:101C00002BCB20F8C72A52EE38D4586EAB143C3197
+:101C10003FD6AEA2A5107E83C69D0FA273063C8060
+:101C200066EB64AF7A5D217261F791FC7A7A3CDAF7
+:101C300052D1BE516C316AF52631BD431E8A33172D
+:101C4000149854EAA6602A801EF48D4F63AD1A9052
+:101C5000B29FF977883E98E4F62BAD884866C98F25
+:101C600069CCDDB49BBF5B81AC70AE5B1CA04BDE6E
+:101C7000BCD748886529C6FF98A602CC1A8ECC70BE
+:101C800062A6A1A298D6C7DF66896BF37A5512C007
+:101C90002D943F38A3FC7EFF6C914BC0DF631D9AEF
+:101CA000330F9957B269269461C676F1FB08E27E3C
+:101CB0000842BA8456F6D61F3377C6F84D636C0FC8
+:101CC00083128556EAD6EB86415F215BD2BA838CBC
+:101CD00095FD2EE3B48FC2AB7CE0DCAE9D9ADFF1C4
+:101CE000FFB635B9C45D46AAD93C2A56A02859701A
+:101CF000C54B62B47A6FAB8578743A897E66DCCA6C
+:101D0000E1F7E37E3B441B9D56AF5E3CBC53BE02F5
+:101D10004A06764BE2B2A72A73E6402EDAC00608DE
+:101D2000579C61104247AB86A32BEDEBDD3B7D71E9
+:101D3000A1F0D65595EE1F39FBEE907631C8E441FF
+:101D4000F24CF072C4E44F0960FEF252E64C5522A8
+:101D5000F04D344F6E50528EFDE9858E9F8E5CABF8
+:101D60003F2954C5CDDFF7F59D977E4B8CDA37C1FF
+:101D7000DC73126BA6AD39711A352B5C32F02F99DA
+:101D80001589B285B2F5A955DC44791BFFED25D83C
+:101D90001695AFF330EA71C70641A3A66DE44CE493
+:101DA00020E06FD2210B2B54408183F6A7FA4ADD45
+:101DB0002C086E9E0F22CB73D469EB7A8B405F3177
+:101DC0001BE411963AE497BA6EA6D4774B9622D4C8
+:101DD000F391EC06629F26742E551DAD8CBC05D385
+:101DE000D35B8B0695887D59E10A2BBF0B12964376
+:101DF00016B1341E52200F5BED5F22ADA7A84A86B4
+:101E0000767366242B6B7D0A61D98E25DBAA7CA4B0
+:101E1000E45B16C5D0FEF07BD7CD2F3679861760F0
+:101E20001DD005F93BA561C9F575DFFF5636461192
+:101E30006C7540DCFA02E246FE3C16E71ACA34BD75
+:101E4000B8DFE68948348E0EBF8FA64219DF3B34D7
+:101E50009C2C760324853F1110DAAEC9AE680C586D
+:101E6000892D5F4475AB86700448533C184148BEC9
+:101E7000CC8E0D301D6F680B676D2ED765A57BFE70
+:101E800083A9BB7AFEE79930918E63DF1F446F1DF3
+:101E9000C2CA636A1038678D137DED34B04AED58BD
+:101EA00031B019FD6CDAC34A53D84EE106FA6FCA55
+:101EB000D3C876E0EF24DFC1BAF6B818155A871CEC
+:101EC0008FEECB7DC2116D0B9E4F7C33D05B00C576
+:101ED0009C77D37A634BE8E73EE695F7933DA35CA6
+:101EE0001A0E3A422525D5FA4162A6FA4DC1301D97
+:101EF0004CD63F532581351FA6ABEF222D278CBB37
+:101F00004B6C39272DAD223768E7B11B165BA599BD
+:101F100058D3AA7591FF87E0BEA8A95951E5FCAB3B
+:101F2000370820D10428719C40EB6A75B355568060
+:101F30008536F015783A25913D84A21CDFD63F32D4
+:101F40000046B953AC653880F7C03522C4132A87E0
+:101F5000F7D7B80B467675C06CC69156DA38C8F715
+:101F6000F6EC4557A3C33FE4E44B6924BA057AE98C
+:101F7000DF3FC6C38FDB28F92A5DF63EFB25F763FA
+:101F8000065ECD0235CC39E0DF32109EBF2FDABDC0
+:101F900042FDED5C9D43072C08A7DF8ECEB0E7EA3B
+:101FA00008B8CA5DFDF1C9906340432C9FE5862ABD
+:101FB000E1FD478A5B00BFD4A87F8A0ADC127D85D9
+:101FC000FCB724CA1063D9B181930CAFD23B6B2309
+:101FD000BDB2E434F3266A5FD3D730647249B92BBB
+:101FE0006A9A7E7C42541745BCBDD7F6F61E9C54B7
+:101FF00085DC75CF6E9D790278594144F8162D57CE
+:10200000A7F73FAE8CC8232271BD21B0A60420786B
+:102010004F85687CEE25315680503E1DC4DACC30A9
+:10202000C518004318B230DF01C06789554150C759
+:102030006E9D238A4B286E818F7CEEE6BAFF46B8F0
+:10204000019F5F581BE17211279ADFE59A4E47A264
+:102050003934676DCEBC05298DD86037E95D55BE32
+:10206000BD2D530F3EDA3B1B83AA8BCAAEDBF74F65
+:10207000ECBC9A97904BE31CF143DD4FA6A078454A
+:1020800059C77FD8C0A32429ED8B4A6685FC7823E5
+:10209000E216A0D949387B6AA20E4BB46590790448
+:1020A000A15863A1F8647FA6A38440F6687E72C13C
+:1020B000CB03493D3E029210B1BB7A21B8BB89DE09
+:1020C00008885FCE54B139064683A905CFA08C0895
+:1020D000F2B51085FA4986EFD0FDEAEE3A1943F5DC
+:1020E00070A57CA2524856CCBA9B4A5B345234410C
+:1020F000E371401E55166F46F5354414E94878E5FE
+:1021000014A0CA4814CF7B3008940DFCDF099895C1
+:10211000D037DF11112E28D3F2B422F8C5EFBE67F5
+:102120007ACE65E9D535CF29591AABD57C148B7495
+:102130002E1F3935648924483CA2B7CB20DFD13922
+:10214000156F5E0DA511BABD04E13FDCF245CF7BF2
+:102150005DAEF0A59CE27F96537938CCA02D9028F7
+:102160003DF3CEDB74CCCC850157FF10630C2AC342
+:10217000088C35BBE6C8BDBC213C91CC73FA1B7BF7
+:10218000E14D77D55DAF988D040D509A07D413B10A
+:10219000AA900061FDCC3238001450BAF60CD0255C
+:1021A0009E62684051849EABD13427BAF16DD954F8
+:1021B000E51E7429585BF6704F8CF4CC2B734221CA
+:1021C00070976E267490D00F1883A519692C19E9A1
+:1021D000787066B326C3D14F3CBA4A9862064E3631
+:1021E0005FABBB8A7E5668043B23D6D18967B7169E
+:1021F000FCFD6860F6471FDED9353A2C986C052B3C
+:10220000540C7422B5087F8A724B05ED4E96E16638
+:10221000CFFFD6C1F79715A1D5E12D3C62EAF8C5ED
+:102220005E01827F1FE395975BCA2D988CE207823F
+:102230008769AB0FBC2E71CCF8EB3973B09DF48E6F
+:10224000B3018A09A5C5A3E0BC218B3522DD90EE40
+:1022500005764DAD3EAF224BA30B4FF76237C25C04
+:10226000F9E3F659B84390132C225C2FF50BC25FAB
+:1022700034BBECFE965A5E67F3E9F67FAE7A334FD5
+:10228000F7B0A5E750B032900D23D2DCEE24F05A1F
+:10229000CFF6722E98215B0985566A62EE75F92297
+:1022A000290C2182CFE3D0AD82E423E9FA6C813B93
+:1022B0008818F03D98A02139538481B9D75F1F3920
+:1022C0000F305F89BA12D58F6A15DE6897B4136A2A
+:1022D00087C20649E62BB4DEE87B79C526FA7FE3A0
+:1022E0009C1412C802700267C6AC087BC5209751C7
+:1022F0001BAFE518B9021FAD764CDA999E16DA735A
+:102300009966A45D629383D3FEB566E726C5CEA128
+:1023100055B9393B4F7089A611E4F9CD002104A8C5
+:1023200006641BCD1D52A0FC4FF75BF744F5D303A9
+:102330002BA21F7856959C0EDBB1C5AF98AB7DD80C
+:10234000687CE0FF01AF5F24573679B5982E25CA27
+:10235000147C67366BFEA6D54BC8E37ECF15EDA087
+:1023600025C801318FFA2E1912FEC9CCAF771D385E
+:102370000B618CDA7AA0EAAF5718626BB4743F260F
+:1023800053C9DCD93B2B8F28E21CFF8A338C7C1489
+:102390000D5B5A924D786CBB2F3A92B6EAD52FEE70
+:1023A000285ECE6EAFC91AE0F362E6596C1DC7DB3A
+:1023B000EBAB536AB8A86DC9F47512F846138EE6F4
+:1023C00021573C6FD6BA0F149AD38CF6670875B8AC
+:1023D0003F38007BCFCDC0FC216AD6A58B3A17B021
+:1023E0006B1964BBE4CF97E74D5A434DAC1163D6EC
+:1023F00030C310E13165E0F162E9DA3575E2F9F5F3
+:102400009FA20786407DA7541B81197D042DE6DE1F
+:10241000800D0E2CD0F96EC2FC32F2AF824A125EF1
+:102420004F3C8509BF9DCA1996433D75179E198972
+:1024300080606C8D77872298E25FBAA9BFFA91E736
+:10244000FD8C20C034EB6DBFC52267C7A3C81FE059
+:1024500010F7D053EA115FB6A562DC2B0B0D5615B1
+:1024600062F634BFF5F98721D27BC33661D1385388
+:102470006F23AEEABBEF090785F1C6613724C4B606
+:10248000761B8800ABDFE2451DB4C334D9ABD6AEB2
+:102490008159594783A05542E6FF53F23E1C89AC4F
+:1024A000A0ED2371D93BF290316176400BE817061D
+:1024B000144DB647AF269EFD9EAA9CB360BEA9C729
+:1024C00074A6D9E2695ECFA0FBF46ED99CBBB3D5EC
+:1024D0006CE39D8C7583FC2FD71CA413F595CE045B
+:1024E0004A1CD00C946B4023826A4F4A8DD200A0C4
+:1024F000F19C34ABBE33A578D704E56E8E4D154EF6
+:102500003887CB67CDA2856A33B256FED9648A8FED
+:10251000D248B0868880C9AB267FF394C214BC9D94
+:10252000694EF53D19629DFBF0BEF96535A1F48C4D
+:102530004C874072C726270F5C1E9404A10B87406E
+:1025400048ABB148E4DC3B539F7BE1D6AD379B46BB
+:10255000C42572AC5A6C5EAB14226BB764F2510D99
+:102560001680BAC2FF1B56FC51DD2B4E8E6B5C9C55
+:102570000BAD019EB508D4F233E491024004AE9154
+:10258000EE0EC35FB532F6349939347B51F1582AD7
+:10259000607DCB9E771F14252047E74D5F997E5ABB
+:1025A000FDFDAED9FE862743B0D2507D9DDBCB49E1
+:1025B000FD4C1F14041B30356A2EAEE1B541018E6F
+:1025C0003C3CDFC73DF3761622AE8EE01A64E3177B
+:1025D000712F71605F676F6D76D8B5F91AD274E3A9
+:1025E000E5C41EF9C868AAE1E4FE200DA42781868F
+:1025F000789BF42F64FBDF177B84DF79E9B34231EA
+:102600000B4A9791FDE2BBC0DEC3893624E1483C0A
+:10261000AC981AA8F2EBEC98C3009DEA1F7B2785C3
+:10262000A0FF02EB1A6B460EA8292960036A8451A9
+:10263000DE6617E42200891441AA888C1317AD7056
+:102640000D42BED9EEECE50D3702C3C33A10B86BAC
+:1026500058F56489203A4860858E1563D7BC006BB5
+:102660000DE92C5B5803A3CC49155F5508CB771BAC
+:102670005688D529411D87795279D44C46EF2220BE
+:10268000DA57C27C8651F53A19F5FECBDB126BEEB8
+:102690006DEA7DB5A1C04757208AF011DF10A0CDAB
+:1026A000A20192E38F297D32F09EE7D14F5EC42CC8
+:1026B000D853EA4B0C432C4D65E72A25B8E4D8BD26
+:1026C000FC4B880447F0C041150F5E7828E617A63A
+:1026D00052D21DE5961CEF6B3DE36D08C6CE9A788D
+:1026E000FF10EC1E64D49A1B912974D0CE0E6A554B
+:1026F0006CE56E5CDD4E2105A6AFD8B6CE5CAAE8CF
+:10270000005A142F0B79CB231FDE70E6E02CE7165E
+:10271000D1C69CDE11A728D3555EC3C8FB55D92668
+:10272000388B7C9880B6343270660172A80489FCBC
+:1027300083CF1E86A14D9F32AAAF791FA65760CFC7
+:1027400023B03C3675B051B3891E50C981460E275F
+:1027500090E6655D6A7A0F8A11746B8B4BFA86B1CD
+:10276000D860B6DEABE2386D1B1FB67B1FCF311CC5
+:102770007F136023969A2B23782551F9B88A3A3330
+:10278000AEFDFBE03BD0941B216AB6D711D706D82B
+:10279000E59DCBC7F896C6AAD8B2A8464309A4744B
+:1027A0008B294F3C27CE8F236F147148741E1AADAE
+:1027B00074C43D26F606DA8C2F78B0F19669F7B12D
+:1027C000840429E3D705BDFA001BA75F2EF25468E5
+:1027D0003B2E1CC6711444928690A89B87E4823ECF
+:1027E000B2F2D76E9E5D9899F59B15EF267A2A1363
+:1027F00012F725F15079F93CEF88A19590FC071765
+:10280000D171821C175AF9FB498ECC49CB48A58A55
+:10281000BCFB3762BC44690AAE123D071D42173447
+:1028200013D73CD31F209F7DF9ACE744CBF9E116C9
+:10283000BD1ECC07608395F10B4FC0B72BB31B4176
+:10284000973A8B5CA8FFCBC8A98D355BF8EBB77FB7
+:10285000DED1E26292D135ABF065F1847721662E4C
+:102860001FD38ED3B3A9A90EB5D145245C1F86C54D
+:1028700003F6B3DF6B9BF6B5B471D5B475716B0D10
+:1028800043224145BA3D231488E3B1548975433945
+:10289000616DB53CEBD9528746075DEAE429EFA0AC
+:1028A0003C1BBAD9C87525B91C0BBD12BEFE0792D8
+:1028B00093F9E68A59326C3E03BB1F5918AB5EF69A
+:1028C000E2077CDC41A13CC51D3868B831517FE18D
+:1028D00046B6118F996414B11686ECD96AEA2C2792
+:1028E000E12EAA341D18DF09300C3A406F2C7E947B
+:1028F000EC2A4F5FF3CCD1B54E1FD66BAC70632082
+:10290000AD46E6F31048A1C294714092EE2C622EBF
+:10291000D77308B34209E23AB92A8612B4F09C167A
+:102920007616E10C9E2AFBF8FBE914750E5D3C85DA
+:1029300035B2145F7CDE5FAF5430F57C4F40889138
+:102940001C3DAEE249155FF593805287F7E63E41A4
+:10295000EE01935067F9E2055035ACE7EFC9B44C8E
+:102960002F5BAB8A87E84F798DE8321590CCBAA2FD
+:102970003935170E7434B50556D806499AB0EE7D30
+:1029800031D6A75BC3D52D9211206758F8FA6A7A21
+:10299000B2D87A23B4F59E124123BBB898CAF7BCCB
+:1029A0005D055A336DA6CF920CB8391BB4EDD43BFC
+:1029B000DB2597B852869EEE3139721A436A8ABD7A
+:1029C0006195BC5FE02E3D48A8E692A1531DF33807
+:1029D000377A12BA420BAEC9161A418BC92EDAEDFC
+:1029E000DA68C7BA9290E5BC9310AE3837499F07B2
+:1029F000FCA30A975C253ADF3E7AF26D1F46D8D1D8
+:102A000078519774B518CFC38EDC82711703865E38
+:102A1000B35F4BDB8E028A78013DF61160F048040B
+:102A2000E302D8D9766891FEA9A9F8F31D0CB1F498
+:102A30003121E1B2CF9B201A86283BD5F7BA6498A2
+:102A40005A25B1C5FDC2F644745C9D129E5929F603
+:102A5000391709F464E20C7608129056DDECD7A61B
+:102A6000AB7009259D0B15C509B5322910DAC4775D
+:102A700064712B313EB251341D85A5FC6A07920763
+:102A800029BB2DE65F702334498390794A429945EA
+:102A9000CFEB94BC4686DC97071364CF00C93CB8E3
+:102AA000A7A28F16A32B5E464B9D69543C1511BF00
+:102AB000A19E9BE2F9831B71333EB64F622E27DE47
+:102AC0004D0C08D08B976525CD97EB196FE4618A83
+:102AD000E5B3177F1681D3615BE4C837DFDACC3406
+:102AE000CBF7B11BA7F0DDE4131FE338DA8305262B
+:102AF000CE6EAE82544120C345BF5C83340EF36A70
+:102B000028DB079E5704AD99FE477997B66BFFB255
+:102B10000328786324AE58269E3166885BE6E61962
+:102B2000C0422BBD74AD7F4D167E52A0B115A12FB2
+:102B3000CEAE4C0F04578441B843EE6D1E16BB2D2C
+:102B4000C1523C9F3A436CD4E88D3723E4C25EC443
+:102B5000C4C83EB89AF2AA8C03141FE272C30D33A4
+:102B6000A80F42BEB97CB58EBD8FE22775E5AB24B8
+:102B700040B03B5EEB40BEA421296657DB332619EB
+:102B8000DDF9A4ABB323AA6350DBBA9C3767A3205B
+:102B900028B6BB4DDD8166582FD49BCC72FC6F7379
+:102BA00007A9BBE0653E86B50BFF956679BA342070
+:102BB0007BE79DFABF99B6B1047C18DF3382CD1D47
+:102BC000B41D422FA1278A8AA23FAA76B9889258BB
+:102BD00041B88FD5A5D243087FB2F06C2EAD5C19F9
+:102BE000AF4DE7182AF49F4350C00EE480B29446DC
+:102BF000B9CF953260FE87F6C719CEFA5CBC01CB1F
+:102C0000055E28D770935DD23FAACD8DF5746623FB
+:102C10009D8B56AF63A7B3CCCDA863AA8BBB86D0E0
+:102C200004CC690582E7F74F8AA03E46DE4B6D3A39
+:102C30009DBB99E72E436E81434BCBFDB89D54A1BC
+:102C4000F49195339C430E6E6F3E59BB8347576A90
+:102C50000B2778EE7D56B99C662F7AB8168A700ECF
+:102C60004F57F24D98C5052CED01B0BEA0C7827438
+:102C70004BF4FE662039DC0051534AE9387F39D3E2
+:102C8000053B233B9241E4F963E254FDDC2872A941
+:102C90000A8869C0AD9A7A22D50128DF552907F83C
+:102CA000B98E742D13CD0303E0A32B350236320603
+:102CB0006B75FF87B252E2E6B037C783AE40563A33
+:102CC000502EBDBE7514233C7CDEC24E0587F5A791
+:102CD0001414993707409774704EBF7BBA480DEEB5
+:102CE00053B3FBBEE76C379FC71F4EC2D6893A71FC
+:102CF000BE275B40D7D67DF0650667EA779BF8D2A2
+:102D000082112D2E81F08759A7FBB11B41D13017BD
+:102D1000EA1FD99FC1FE9DE81C21F53DFAD5D7B722
+:102D2000A32428A77AF91F06579A138E87F7775A94
+:102D3000E944BFC2A254170B9FCC13498F5BE33AFF
+:102D4000315BC64D4669A5006DCFA81949FB181B1C
+:102D50000ED19E126B767CB218F21257063B0AC156
+:102D6000F8AE0BA9219AAAB71486F76A32DF478713
+:102D70007074C5E64C12DD32EFAC24B29332313FB1
+:102D8000876A8AECB5F25B5E968237B80B9ADD26CD
+:102D900001C031EE5F2D92102E425493B407259E50
+:102DA00066FD209E70D48496EEBE8BEF65DDF29CAE
+:102DB000789A9FD42B3718CB4B2E0A547F58AF5894
+:102DC000B5F0046633E9C21CB2FD3B047181F067C3
+:102DD000EB9B767180ADB3AB37394564130120C1ED
+:102DE000B3745AED52D7D38189A2B15BB800ECA07D
+:102DF00024D6E47FAE2793879124AA636BD70F5222
+:102E00007D6C79D57DED29EB79C8488C6B6964A917
+:102E1000436C477009A51768A106BE9174690D59E6
+:102E2000611D84F65F38EEB1985AC9BCD2C3073E23
+:102E3000DB733C53F7CC45568EBC5AB305579953B8
+:102E400058D49C14B0A233A858B5AAAC41AEEA2E0F
+:102E500028B7ED2978F429E8E07B8B5E409D2C08AB
+:102E60008AF35ABA95C9E99244525A05527AE2B0A5
+:102E7000C2B2DB2793D89A8E9FDBE0ECDEEB07270C
+:102E8000F2C11FEEDE29D8FB3D0A7D3506C9E0AD53
+:102E900066D121A93CF919BBFBBC91C743AACC5010
+:102EA00063578DAD991EE776F3A77A10410FEF5E59
+:102EB000BA099BCA612DE49CB7288B248DE12D04AF
+:102EC000E77832C26346E007FA2A46C6A257FAE715
+:102ED0009EB36ECAB37CCAF424A525DB0EAEE168AE
+:102EE0003FA609D812810FE23D0F95C9CD34094E96
+:102EF0000179FDBC4B68343ACC6BB9E3863D2E7149
+:102F00008B2C41DCA2BB045E7207F9EAE7BB18CD4B
+:102F1000A3EED7E86E98FD9BAC843B4F3A413288D4
+:102F20000DAFBEC48C6A8835C7ECAE5A3D2EC05B6F
+:102F3000C53F99541DAE20E16514CB44F29FD6E9FC
+:102F400045C7A716702E970837F8E3AC656A1F4E81
+:102F50008D781CD2D746EA3FC23A4DAC2D5A35BFC8
+:102F60007F123B5571C48274F90EED847DEEA0553D
+:102F7000E8470AB6BF7FF59F8F269BF34367FDADF9
+:102F800041C7161DD3CCE8E27E9CB55C478F25B2C5
+:102F90000E4D71C299A9B49E48962F9B587FE59516
+:102FA00082C6005F979E90DBB5F9BD08161AF4AF94
+:102FB0008B234ED8EBAC58E64D8A043B1FF31B5CC9
+:102FC000D753B7091EB1EA7B49E2BED71307C90A36
+:102FD0007D5174253297B8FABFCCAAD3C5F99B8D21
+:102FE000459504E774EC73B21D12F9396E634E4BCC
+:102FF0000CF3C6EFF26393F8FE367DE15B3A742E74
+:10300000DF704BD3C25465191362AA1178A0108CDB
+:10301000EB331FCC8BEB6EE98F5CEC509BD20DBC7D
+:10302000E9AC94520F584CD5722F602E02395CCB0C
+:103030009FC9F643448C79FF3B3278BCAF01AB4E5D
+:1030400001C01FFE42461AD77AEB56F3F92BED6109
+:10305000CA4A7F3CB57CAC8A602C5074CEC6E5A5CC
+:103060002541AB77D7EDEA7F3329E11F40EEA2344B
+:1030700055E1D387D6EDB6616D3A5936E835E82685
+:10308000A4F341425987DD2C0B1CDD7FF77E3E986F
+:103090001D987DDFF7ABEFAB6332E0E7ED301C8EC0
+:1030A00063A2BC70F4E119CF8CCE49BD8F6899B78B
+:1030B0004BEE8AD6ACF2DB64597C2C41720DAA2A05
+:1030C00050498E9B87C2D00C6DAB3110888489D457
+:1030D0004A17C21DDB655C65B0647A05E0A51EA0D9
+:1030E00067CE427C90D5A3EE06E20D85801054CCCD
+:1030F0001F1BFEAAA51067C4F0BF74A7EB58F81EEB
+:10310000CF3065A352ACD7408BA1A648AC932E69B3
+:10311000C8326598CE3B978BD432E59AB9EFFB5A0B
+:10312000096BCC96882E8BDCD5F411CEEA1038A42E
+:10313000B5B9EB85DD9725706C329FC82B9D83A4B4
+:10314000B1DE1FA810D8649189CC3B8085970AEB2B
+:10315000990819D69E1846A127A3FCF863793AAFBF
+:10316000F15B26747EC0642978AF203CC190D954AD
+:10317000BC7364C5B057569603352AD60041D307B1
+:10318000071E372A5C694A5394656F410485B079FC
+:10319000CC6B8359E61F84D89C773E7F905A1A489F
+:1031A000AFCB74AA794E75437D9D9AA3D13FE35A64
+:1031B00021E3F5AB085B41709D4F2E3F82AE3F0D82
+:1031C000E9E20FB40B0ACB586501DF7066A5EBC1CD
+:1031D0006820190D37478326F78174A5E3C7398026
+:1031E000ADE654CDD767DC02D75972DC588640CFA4
+:1031F000665F7DB32553E51CFF8DA869E4AB0FC264
+:103200002D679EC5A7F876BFF9FB1385F58228CEFA
+:1032100030F11E849C55E14238E3D746516C35BFEE
+:10322000BA52173398C1D49E60DA8578B74514E74F
+:10323000BF2A1B2268CEEC5EFC9F68B67E4039D662
+:1032400057107D945F4495F091B36D2896C0544E0D
+:10325000D1C06FB02A07296226BF474F21C9ECD0E1
+:10326000EAA6D47C4DF1A0760779C3554CCB1EACB1
+:1032700029B0A32E0BD264417F476D1138E4C1BB46
+:10328000E63A0F0C3D8094BD23AFEFF8707D3A9C79
+:103290004C1694803E82602B0848F2DB293002678E
+:1032A000C43C929BBCDA0B639112C979A49F15F3BD
+:1032B000C8F6BF5CF9DAFC777E196BD3C4D4B402CC
+:1032C0001CB5E223CA9C5D3562ED7A9C60CDA203F9
+:1032D0007A4D6491D2EC137181A9CE20E65B3AAFAE
+:1032E00028E25FB324AF4CEF4F6192164188D4E4DB
+:1032F0005CAD184C7722E3597FBF93599EF2BC9482
+:10330000B41E42085226147FA489AFDD21E279570A
+:1033100060190DDF8EF300B138BB1F229B0137010E
+:1033200024C0932CFF9E317AA7BA28C9D3B1B6A97D
+:10333000E4356BBE971FE53DC48726E87CA345BAFC
+:10334000622F0D18D73CB74B3F723DA926B1AE0294
+:10335000912E87F5281E50754194BC7AF605C5C696
+:10336000889C343A655653D671006AFE95318E9327
+:103370007C20F3AFB84A46793A3D797C353D6740C9
+:10338000E04B991E9013FBBB4CAEA318EE6449545E
+:1033900013B87838EA91FC8499404A075BE16A796E
+:1033A00068DC22C15CE0025D73B09203620D3A24D6
+:1033B000AA7035A0B2FC0E640011EEFC5318247BF9
+:1033C0001393A3C992CEB8C4D9D2E737C1362085AA
+:1033D00089FB82A3519D7CC3B6483FD8682D230941
+:1033E000ABA103A79D498058CE8985810A2C185B23
+:1033F0008570237E304C9052E6365B2DCF702DD8F1
+:1034000036A01815F725FB5F33C2BB204596D04484
+:103410007A3A505631FD6E1D513C48DC4EBAF027C9
+:1034200057E7A57A0D9832EC9AD5B2261E6EE515AF
+:1034300070A524EF18FEEC83C26797A9D8A76E6524
+:103440001DA1FF7D86DE15BE7820F451F4D99E9F24
+:1034500065F52F842F4D5BA9DC47A96C6BC2C515A0
+:10346000A168E0FA993B9F96FECC8D6E8BD0491DEA
+:103470003AB83D3DB343AE382DD333BB5BC6CB67C3
+:10348000199E92A20C5B4866B76549794A848D867D
+:103490000D72D9D1D85F6ABFD5E2D438B9CE811BBD
+:1034A0001DA235ABF6986D48EC1EA0792453ED9A19
+:1034B0009F89949BF59882EDDBCDC723C4B8B014E7
+:1034C00001D88486CF5CFC18AC70AC42E8815924EA
+:1034D000311991502C24F4A9B113B052DA9E08FA94
+:1034E00041D01BDD2664C3439CE753C2C7FB39347C
+:1034F000EA1C0DDBAE8D62BF88497511609F2AB84A
+:1035000005C5ECB8041C93243CE707CAAECC7A91FD
+:10351000BF4B243FBF44FF23CFD36587E59DD462D3
+:1035200007AA67888EEFDAE35F56C55046BCF737C7
+:10353000952978A444F4CC5F112B947BFF06C185B8
+:10354000F4B1CF6AC61A85F1C184B11881424A4AE2
+:103550003F63CF363DA0E9675B92D0EDB3F9FC93B2
+:103560005372C87D7FE87F34C19231AA8354D8F763
+:103570008F6184D3C96EF69B5A7C00751ED5400AB4
+:103580002FF9718C51BEAB3DD0E00E40E62198582A
+:103590002DB8819FF59B74B0A9B70E718FE660A915
+:1035A0005F4507A7A12A6B67EBCC15330E2C397644
+:1035B0003FC4B3855CA808A3123E516885AA77B4BE
+:1035C0000674066B28B3A485C2B53A82BF3CF9479E
+:1035D0006927BA5689A4886C55A9033A8BC9A87281
+:1035E00099345AB450E601CE2AAB1EE10629A064F4
+:1035F000DAB31005096C8859736FB002C031F195C8
+:103600002173F2A8548E1E63A956769ED49537C0B6
+:10361000C79161DDB2E99CCF7F8FD2E3CF796B3464
+:103620007A66937944735AD1B68473DB612B531451
+:10363000BFF6A79F532920C550DC38AF1BD423DD2C
+:1036400049D46AAD4135B028FBBC2D704F1A6505D1
+:10365000FEEE57020E28200CD90017AF31DCDDD565
+:10366000AF73D64446809B33644CFBF5D083AB9E4E
+:103670001C56CC463C891BFF3E76EB186FD8A169DF
+:10368000BD700C5A79D95DA118C1B7192F31A6B7F1
+:10369000A85C3DD33F539DFED7A1D6AC7A0FC2BCE8
+:1036A000B0A63F0FCC1ECFB7E63BB9E20610F2350D
+:1036B0006F0FD2D441F99DA72C224FF6EBFD514B51
+:1036C0008F4DB2891183C7A407D1C06A39A16C623A
+:1036D000D7BC3D4C6A5017945232887D3CFFC87D60
+:1036E000A3D8C71D3AF399D89A673F5CDEE560F02E
+:1036F0006C1C3499D7F34A411CF16587DDC1D0FEBB
+:103700002F4ABE62DDC7F71F51ACDDC714C5367343
+:103710007C49D387F569D56FBE8E7D8AA535C4DC1B
+:103720002DB5AF087242BDABBA95E93FC21BFC068E
+:10373000D4A7AAABF7E5AC739D3585BEE466F7B3B5
+:10374000BE66CFFEEA9435A67C50B11F71CDDAB8C3
+:10375000595C4CEB4BFFCF565066ABA634B07B8523
+:103760002E8241E33E391868FF3AE054DE15EEAD93
+:10377000FE6D6D6ADAAB02B2C05C9D1CA062B97EC0
+:103780004FF7436D136E0DEB305BBEC148F7E0F7AA
+:10379000568D1ECA15D06EB277EFA2BFEEBF4AB5E6
+:1037A0008C1CFDC1BFBCB72A4C59BF4772003D01FC
+:1037B000FFFFE7630396A3A184E600FAD9C001A343
+:1037C0008DFFCE8A6517B67E867F2DEEFE6492A8A9
+:1037D000961B7444E53071B3023EC5B0EFB639E7CD
+:1037E0006147D59B39A3D24C21CB955B705D06CA4E
+:1037F000A07D3BBBEA5B80086983BAF1CFEB7EC159
+:103800002599A7265DBE9C5CDE86541CA6EB934DD5
+:103810002D53618EB6B93D10042D90F5C8368DF646
+:103820004223B6C3123791F015F539D850D9A32BDE
+:103830009DB4DC9C26D4C0B4CDF71276F861A6AC5A
+:10384000D91230542D6BA502873C733776676F9879
+:1038500010DE085B1D64B8E06B695F890C4F11AB2B
+:10386000BDA14A88AE9B43F40F570E65EAB4C7E189
+:103870003F11BB2B7673DC0D10358B11A0D994173B
+:10388000645A328DBBD391EFA25E9AA9C7B99A4709
+:1038900099FFA5B645FD7E585DB35727267A9BF361
+:1038A000EAEB24AE799F10C3D71D30E84E99B7C616
+:1038B000F06CCED13BF63C16B427153F4923DBB95B
+:1038C000DC77436A04FDD930BE9890371D2CA6D210
+:1038D0000466B0B3C8E5AFE7634C125B2D13F78401
+:1038E000B89566B5AE3F3E6E25B3134AA7ACCE0978
+:1038F0007DC9769A12A275794164031DCC4F632667
+:10390000AFA9232B23C1017B370F8E6C293C7F1A73
+:103910009440DD247E2035D7BAE21270E204BCF870
+:10392000C39309CA1CC2C33E2D0B9F6A1425CD0B3D
+:10393000DDFF7140A0C883866C8DEE1A2A371C22E9
+:1039400019530CCF56432F2935DEF31B258982B539
+:10395000110566FFDC57247F83BD4DE7EA8130798E
+:103960001A551366EF33E8F5AA24D09C5F18112A84
+:10397000C524C309BF868252F90B09C01102CE0FBC
+:103980009DFA2120D506ED186F7023333D2FDCBC46
+:103990006C0464B192D57F5170A3CE07BFA58AF99C
+:1039A0005D2DAA3A497CCA2D25544143B4D9A9A119
+:1039B00013C9FDEEE425891E691933D2BCC2BF7E4E
+:1039C000BB1D2EEB0EB0A5EAE0C2B04AFA0FB2CF93
+:1039D000BB6729D3AFAAFE3F94FE4C608C3DBC6808
+:1039E000BD32CA1154C8A6ECB6E5BBE9E76277DF81
+:1039F00080F389C92FAFCD78C01E069AD9BD54DF98
+:103A000097534ECF0B7896EE1EB49A34C36FAF48DF
+:103A10007D5269272DE28D94363D719569D38E765E
+:103A20002E4F0562658FDEB787004237B6B6E702D4
+:103A3000FFEDAF0A17E580C051F920AF4B568CB8A7
+:103A40007754883C279C4DEE6E54033D0B3CB3EB02
+:103A50004281DFF126571D3E7798277482D194C2A8
+:103A6000E17D9F008B530AA544F64421B8769E233E
+:103A700087C2D38492515546CD555CF5D8A984258B
+:103A8000C7D832FDA2F7A1541C86145AB68BEE6734
+:103A9000AB09024BF2CD0CAB4B62FADAABF8D7C5EF
+:103AA00016ED8095F9049D991812AB1118A0734476
+:103AB000935C9044D2ECEA8942E3B3D0E2E281C263
+:103AC00055013E59011119803E78E3E6E982BC892F
+:103AD00036A1724FF032A50FDBC77FD8BDF4A059D5
+:103AE0004C4292B15DB375ED5DE7F4192A7DC7B71D
+:103AF00083B9FFED03C885B41F228BD83066CDF79C
+:103B0000E002BFCE3525E820F8B1F90DBE96EE648F
+:103B1000BF135B7773193F0CAD02C14CE46AC085DB
+:103B2000107850D2BE1FE5C99AD66AE3036A2F36D1
+:103B3000DB4456F2606683C7D529C1D1007A7296FC
+:103B400058C42F4F367D5343C7C3CD2B741C2F0051
+:103B50006207D0295DDDE0BA89EE461568F4534866
+:103B60006975C92AF8C3FC01A63B3C924B7299982F
+:103B7000F891A6B7F282932F87190E888C8098ADA2
+:103B8000026BDC8F154CC27FC74DB4836C20D0AA6A
+:103B900081B1B38841F50BCA12410F1DA8B8DF41AE
+:103BA0008008C17EA0FFCE9BD5F4936D821C1224A9
+:103BB000FE8B84027C8921845CB1AAD4052C8E2AD8
+:103BC0003E472F8AFD8F5CA73DA52CBA6830600068
+:103BD0008166B0D45D256555084D0B23AA838C5DA5
+:103BE000BD05E06D074A2775D58838C3312424D236
+:103BF000870E561633770048390A8FAC01C2E4E2CB
+:103C0000EB7A534B69CF95B9F0B66E35C1020FA070
+:103C1000F26C105EB0F2970A4E4EAA230CA18AA154
+:103C2000AB9A799BC4E9B48624DEF5EFFD65F0DE3E
+:103C3000CAD6A6D93EB1BE67096F075FE95F151204
+:103C40006107E3EDFFB4D2B667A46E89C579EA7562
+:103C5000E3D6FA1F8FDC268C35BAB46324F4B8148B
+:103C600069A96C0B6A66AE8EC3E5FE919DF9F816E4
+:103C700024F7F2DFCBD8D751D80A8100B8CCBE5F89
+:103C8000A1DAC2A7156BBECC49F4F7801B5EA70270
+:103C900038EBF49280CE2A3A55C359B93C58DD30FE
+:103CA0002A66BDA78E8B8D4FDCF131CDB4761260C4
+:103CB0008A647331AF768E9EB0790574C258FB4129
+:103CC000E094674BCEEACFA0A853565EEC7DA6F2F7
+:103CD0003454C8B720E69F37109F25DE2914820E82
+:103CE000D3280D275D566FFEB31EE46CB32ACEBCFD
+:103CF000794363664B49F488F1BF51DB226E1A9316
+:103D0000FC9C05E3C880FE072CE87AFB683717C8DF
+:103D100037D1A039E80BF4E019A61A0F63B294EE7C
+:103D2000C1C8004DBF8EBCC2700EB6298308301CBE
+:103D30006EE2D4938E7F7B3DA3E76CA4F813995D6C
+:103D4000CC3DE2508E7E03A1D72FB19203C175AE58
+:103D500053CCFD306401EF5A1EB2C50A404CA1B6E7
+:103D60007B829BC4F2687BFFCB825A0D01308AAC08
+:103D70006E31E1E2B02236ABAA4DA087D05B8077EE
+:103D8000066191CE161B0B0F32BD140F3108BB43D9
+:103D90009CE10983351E3975C4724C043188302486
+:103DA000F46B0A818F418427F5E7B432DA20BEC470
+:103DB0000F7BCFC49DB892EFBFB7AA341574857935
+:103DC000DB4519EC108B930D35FB1CA28373EB853F
+:103DD0009B6B6F798D155B2214E74DEC94B66A1ED0
+:103DE000F10D60956F0A7B860D9B551120AD928F6A
+:103DF000CCF9FD2A6D3A4D8B76983AC727E92BB658
+:103E0000F6E0F8964601E0DBBC701004C32D31E209
+:103E1000CAF978F5998A71C8803E37790D96BD70D8
+:103E20006ED8E282D39D6DA2B17DF0B74C6759E2A6
+:103E3000B1A0CA0787792A1CF417C410A164DCEC6E
+:103E4000B67B81E83E08E950D9F58943904C043DA2
+:103E5000232487B0781DF78D12D129B32603F6F4F9
+:103E600046B96569CA047762DC7B138ABB3DCC2600
+:103E70005DB6FF4C109423F79ED5D6C9CEE46748B3
+:103E80005AACFB4C6291B4AB0A6B4A368DC197D2E7
+:103E900003AB21A4259B6929D2E6AA24938FB528D8
+:103EA00070500076B92DD78B8474A25F8853B852B6
+:103EB00023B82B201FACC9D1A685A063F9D46BE928
+:103EC000285CDB8A8D91A19D7A6D6DD604AB8190C3
+:103ED0002EF9033F0E770A102667C2FCD2B285B6D0
+:103EE0002DB2D5EBEB1CA1DFF7CE6176683BA7D2F4
+:103EF000FCF8FE45BE625CB0739C5E6958D5E61660
+:103F00003048EADE37631C974F93078BC975AA03C5
+:103F10009FC512CE5EA0331C4651A478405AB0D241
+:103F200033FB1E683AF100DCCEFB071DBE785AD881
+:103F3000AA4F69767E5B8CAD1A6624D0B937FD4EE8
+:103F400028D9C2DA8D9EE715FAEA3E870C1AAB78BB
+:103F5000903C76523D9EDE9EA9347403EE930B4452
+:103F600070ED348AE33F82E6F997E8811D0D8C3FBE
+:103F7000F13D359D34373FD8378714E674A043BAF6
+:103F800057AC70CC1E6D7ED03082FD3C8C78AD7409
+:103F900002C6AB2E2AFFE0DAF7D83C05B18E5239C3
+:103FA0004FD682E906A1059813B11D7543B994C98E
+:103FB00075D0B0C4FC8E966FE2902D49E972CB4368
+:103FC0006B1A015192228FE0E93880EDE4933D892C
+:103FD000A07515836642E665241E5862E08B670B68
+:103FE0002F983D0715E2A83A848C3BBEC6698AF338
+:103FF000033C01E1534D560F226937DC6E691155C0
+:104000006C9DE16B758BA9FB323ACDB12095612394
+:104010001A6BBD1CD259B2BF90343EA545F1203B6E
+:1040200076BA55E002F23D2306827519F3B3B8BFA4
+:10403000D6E7E14BCE378B7A77C22CF4C56E15C329
+:10404000C8883D1C2A99FE7D4C5902EF2F1B69AB95
+:10405000E9631A7290CFABA5265E26AAB790D34F1C
+:10406000E6FE7AEFE09F8792A1C83077CBA691D485
+:10407000E9A446969EFEA286B80208B57220CC2618
+:10408000D81D2508473245EAF6B5B8583F30ED0D42
+:104090009551C958E0717ED76DAB04B724CD1CFC97
+:1040A000ED1A301DD6A523096D3BED5C5AC13A448B
+:1040B0001327FC453A10E8FB22626C669763AB421B
+:1040C0004DF8EC9013500CD1525611E3BAF7069606
+:1040D000425FE0783ACCF98C6ED345C51C912FDE57
+:1040E000D3A2E116094A4B2E21BD94A954B6B6635A
+:1040F0008BED5336D0FC5FE80457A9282ECBCAF4C9
+:104100002B5D7A453D4807BE646CD6F89FE1428836
+:104110007418D2B3C3672A87459BD33CB5DBDB2138
+:1041200085F1AD176FD488390310BBBD3033F4E986
+:10413000AAD992E2BAA6805EAF268BF53377AB0D93
+:10414000617DB290E6BE47153C7DFCF5A19FED5C1C
+:10415000190AF543DF6E3C7880324FC49A0E52F64E
+:10416000E4444648A5CF3F13B27BAD0FE09DE59BED
+:10417000507026075A22C2CEEA3E827706B0C75058
+:10418000E2CE582FA5EFC1337960DD2D210F1CA899
+:104190004965E823251FFA7D17BCAD1225BB58F2EF
+:1041A000DF519DDBD46E120A3973DB78CE221133D6
+:1041B0007A571A39E1E914CE5A995DB63EC3EAEC52
+:1041C000380C02A3AE08B300CD8F3C236D06081750
+:1041D000EB5905383A3285731724C7214D6B0EAE63
+:1041E0001C407A70C8CC6A6B88DD626399C2623FFA
+:1041F000BAAC9D18D217ADF8CB947C7ACFD7A71064
+:10420000E1BEA65F9892267D763E77E81F8C67E038
+:10421000B3347B6A83998326DF2F6EA76628F35019
+:10422000C730446574EC61B968A4459DF3C770FA62
+:10423000A102496BB5BAC354844FEF526775BC787D
+:10424000219B1899E816E27DB4696CDFDB0638CD56
+:104250009FA332FE5FC400F5813E9D1E18D2B15F60
+:104260000B620C5FC0998E45D8D81E7FA7A2375C21
+:10427000C7563685C9ED8B3D8A7ED1BA5618A651F0
+:10428000927C405CCC0DCC504936FF3E595EE493A5
+:104290007DD4A623018BCE4320CF54C6A1335AC46C
+:1042A00082AC07AFDEE01455EBE2273DF49B19C169
+:1042B00054F1763ACA0619DB108EC58762EDA36BFE
+:1042C000964F4FEE5618EA1D046AAA94DF646BDB22
+:1042D00051C7188A2C11BBD35AE7E44547CACAC351
+:1042E000B146FCCA7C621A055DE34637CE275D4CB9
+:1042F000B6989831CC34032A06B14618A99888BFDD
+:10430000C3540BC78FCC1AA2483B6E595343943603
+:104310002CFFEF967158026171B4356B176CC804AD
+:1043200011EB68FE0921139322FCA11295FE43199B
+:1043300001873B56CC5455D95C0FFAFB44226F954C
+:10434000D083EEF92B0DE5F87308CE488226D50C04
+:104350006EAEDA00D8CD641D80249D5FF369C0463F
+:104360002149E0512881AEE633E118DCE6B69244FB
+:10437000AF219EF99C03316729FE2B670DCFB7B69D
+:1043800000A8A2ECDF914D40961692309709BA60D2
+:104390007D94E7C473E4272C205ECDEDB39564F7DC
+:1043A000B63EAD25931BE95ED7D37D990F79DCC06E
+:1043B000393996CB0018A9305849766D5754D3B582
+:1043C000A91978967B4696E79CBC8FC7F46367B0C3
+:1043D00081BFA75C813B2335E8288D48F5FEFBAA09
+:1043E000C7E4DE3697BBF8B886AA4C558F9357B012
+:1043F0001D10FD85F033BE4010D37F7AF1D2494EB7
+:104400002CD9745DFBA4D90339D7899D42F4D128F6
+:10441000F846AE120D666F305D8434C53C6125F5FB
+:10442000D731DF6D114F152EDB90F6DF711D4D97E3
+:104430001ED3D799C82C64D5CFABECA261D691AD71
+:104440000655EF43AAD680A7DBDADF1A0AD269D86D
+:10445000D277AC50BB05918AB89D2C5D9032FA01A1
+:10446000058EB92CF588B46D214811AC1BC023DF33
+:104470003A96B855CE717945357D4DA9CF24700F48
+:1044800030243193F8574FF7CF222E99182C676AB2
+:10449000D2878CCABDC0EE60597E0AE73103E64E72
+:1044A00064F6056186DDEC502D5359A878791170BA
+:1044B0000AB276C9F5EBCD5695E79E172D1F3F51F1
+:1044C000E1F1AB0FC11BE77C77B0BB49F387CAC8EA
+:1044D000E150B5677F778FD7860365F2D21D6243BF
+:1044E00082FEE42D2C94332FDA61A2D7FF60F39281
+:1044F0005B46F9DEF59CF564F649E498EA2903D3B6
+:104500005F050356E735E15D426B3D8D96BADB3BB7
+:10451000C356B28D0719DC9D71810E21FE02CC219C
+:10452000CE81D5181C615532A4E5F0AFA1D2E223AB
+:104530002EA7A38E851185F00004B48669DBCB0419
+:10454000CFE48CB19D12CB1C9BC05B7FB8352A1188
+:104550006BE54BE320DD46147F138641E0646696ED
+:1045600041B9BAE95FCB31549E1C682BB91048653C
+:104570005661D0912D2B1999AB264EA83712793060
+:10458000750494E5D221B6CB58B2DA5CACBF0EA06C
+:10459000DA952A817BA32467393DC2A0FBA21F5371
+:1045A000345D520BA79EF682F9F44F819CFF22EAFC
+:1045B0007497C36676848A2C2F7AEE3EEAC0AE4B9F
+:1045C0007DFC367F55E78BF80D51C5CAA0BD303D47
+:1045D0003AFC883EC0B4E4CD9B4B7D50EA55212E79
+:1045E0005F0609F9D866C165AD825B838C8B01A536
+:1045F0008270244F79BE199948067AF397D40B55E7
+:10460000E9BD0C921D9F929E0D82B5FBB217590910
+:10461000BEDBDD436BE2A86F221FD7230BA4F1940E
+:10462000280224C0989EAD9D0CAC6AC5D9303D339C
+:10463000FBDAC258E380B699DA6C75E453B7305EA2
+:1046400022EA34651E833CA525F79E9E76A8E0E508
+:10465000DC62922801BD9DEC727F46502D3E5BD8F6
+:10466000AFF755F2C1CEC1CA2B6BFE893248530950
+:1046700088A3A199571CE289CEA6342E480DA9849F
+:1046800060C19B543FC7C978665A9A6C1B2E46611D
+:10469000F287170994FE2BE17FC3B62AC293D55542
+:1046A000EAB8CD92E5C0D8B1A368B6025B415C78A8
+:1046B000907DCC9FA21CD5A474C8F8E7193260B3D2
+:1046C00005A0DD956B76317597255B8906DAF56374
+:1046D000AA145EBFC2AA26C4463E811B438429F7A2
+:1046E0000438888DA451E05C359202726316780913
+:1046F0005F67684344AAAC5AEBB16E5149C4D6E532
+:104700007CF96B3D4717B044DE13E10F5E3C19A204
+:104710009277ED10E580D628A42A90C546BCA9ABB7
+:10472000350CECCFD959DFC97A55AFB22D6E57444D
+:1047300045B32F369CCD116333AB9B03B139ADFF2D
+:104740008D864E027E0C6C8D2A7755094FD8C80491
+:104750001B01DB333CDD4F1DD00CE3E6563FA9398E
+:1047600078C1CCC8918AE200B95E8FEFC342B072C3
+:1047700070D057DCF63C0F382E316842249DC9DFDB
+:104780001A0B562A6B48519327D57F53DCB53D2829
+:1047900056EED238BB0798855FB6A1EECE0AA8FBCD
+:1047A000CB48FB3D76BA574297EAB42959B76632EF
+:1047B000D641876FCFABEE522C134681BF56412BAB
+:1047C0000C1FFD9999AB3123B8CE7C64BCEF89EE08
+:1047D000EC9EAB0B3FFEB1855BE548C258B759FB79
+:1047E000967E9310A9A284AF929D2F2ABA31D5B795
+:1047F000BABBEF4FC33D8691B8D4AC0A8713415B77
+:104800005B635F1F633E34E0021A0142E0DA90F11D
+:1048100090C6F5887A8E51DB89519AF9FCD1FB71EB
+:10482000D293E0E9134698DE9958EA3A1AF7D88FFE
+:104830009E2C9EDA55A3A043FC07711C083AAA0BD4
+:104840005C7BFB630D66C0169BE4677587BF45D034
+:104850000B507129A1BAF756B23C5D601ECE56F0DE
+:10486000E98C2887545384167D1782079FB66ACA3D
+:10487000A38F82D65CBE33D5E61CEF8E87B3F3EBF5
+:1048800059F9812CB1BA654230B58CA312341D1F81
+:1048900045DEF88D9552194C4016C76D0507E05955
+:1048A00099C3140DAE56B8E36C3B7EA457337664BF
+:1048B00002DA554CBE0E8B1C1070ED622CBCE7EB7F
+:1048C000FB2C4E40CDA0A830F32DA27380FB1E76AA
+:1048D0008F7DB4B1EF935E020FF5AC178D9D32E082
+:1048E000635D7D32B04ABE0BCD55B986C080CE78AF
+:1048F0005C1F92B2D6C726E1FFE70D627052D179F4
+:10490000176CF08FF58544BB5A6D1EA70E05D7CBEB
+:10491000EF486CAA6F24C1E3A8B2D9823ABF800ED7
+:10492000BE1A22E6B98E2B2FA9CE0B4ED420F1252C
+:10493000F851932A3750E6DBBA09B702B669B2B626
+:1049400061736BDDDF74353FEFBDE7E07E6D3528C9
+:1049500071E92DEEF869BB7908DB54375DAA643B39
+:10496000A614F01A586C3EE213A077286BA75A9D44
+:1049700030367272FCCF3249BC9F9782AB97DCB75E
+:10498000F92440B7923DC129F484B54295798388D2
+:1049900032218EA6917963D770C347BB52E0E0E81D
+:1049A000C77F3F2D89D746F3B3ED826B938916837A
+:1049B000474E6623E6CA1CA4C8294AD00D9AF0D5F2
+:1049C000AFE3AC563B9E33DBB2DFADC6E3A0D29D76
+:1049D000E9F765E76361711EA6ABB6BB8215C7D563
+:1049E000740B8CD9568D6382474EE092C355E79085
+:1049F000ADE4DD7D9149F1A8691E7423B2879A82E6
+:104A000095599F121E955FE37E3EF723E0076A3CAF
+:104A1000E73B8546CFE16CE1AE662DF6F7C4136146
+:104A2000C9993BC7A898C6EC0B2DC5F25009E3DA2B
+:104A3000105AF2C4579ACE8FA3A2D09DC298394F74
+:104A40009145EB9DFB16D28548C556499BB9E6CFEB
+:104A5000689C6E84A93014FA07AC61C2D9CAF77E8B
+:104A6000DE039D33CEBF6346E96D527FB339D44236
+:104A7000424227C2C4C764BB7E30140A3BC3871FAF
+:104A8000AD20BBDC13FE4A98E2A228002644441560
+:104A9000B9CDDACBB69B11C728842D6CEB11EE444F
+:104AA0007AAA6026A26D2CEA66A49B84E889FB1A88
+:104AB00062B4818290C0FA470A195C6C03C0F9584D
+:104AC00041A407ECE42F08BA0AE55A8F81D53038A3
+:104AD000024E9973513281D07F1D60D234943BF2E3
+:104AE000B76EC1DCA80EA5A678805488915256F105
+:104AF00004CF3F3684486F28FE1A3FB114E0775642
+:104B00003DF73CD0E8768878C31BCE094E54583523
+:104B1000D3CA02A48ACC5BD9705507D5AFE17DC159
+:104B20004C10E6803164A546EEBB931CBB833E3D32
+:104B300041326ED0613D53877958674CF17B3D2FF0
+:104B4000A26F32FFF96ABC867D2F0230C5B85BBF09
+:104B50006760335E32CB6308AD075C5FC7DCE4EDB2
+:104B6000D3DA95FDFEB8A40AEB55823F5790F7289B
+:104B7000ABEB4487B48DD8E3CB0CC3087D08DC587D
+:104B80005657AE507973007BB599126CB1AA30EBD1
+:104B90003A48AC691C20CCB4C8DB9A63F24F05FDDF
+:104BA00029DD68D55A310817853FF5E2F9098EA944
+:104BB0009C7B175A36DDDA4F7B9B5923BCA557F9EE
+:104BC000CDB564933F065A9C8EEE4509D84DD75D0E
+:104BD000362C94CA14AAA401B95C07BF63F8B87A4A
+:104BE000E7C2E8F49965DB26B5B6CD4B30A735C2F0
+:104BF000006B7B1DA8735067226B86DCCA8F8A020C
+:104C0000EC328769EA2AF73782A7EFE9A4F9D0CD19
+:104C1000178BE79B16C64FF3613DCF132C1549C781
+:104C2000E5777E0D17B4623193256B6FB4BFB886FC
+:104C3000CD50EEEC1F076FAF046E8795B16BDA486D
+:104C40008723690A1C712AC36F825F337033214244
+:104C5000812384740D484DE4F55DB1C080E19697E1
+:104C600076916D135CAF21BBE38402271D4AE829CE
+:104C700096D853068E7639E2DEDA71AE18CBBDAE29
+:104C800005CECA04965E6CD530B013C975BB9301CE
+:104C90008042A196B019AE77C15B6E912826720D45
+:104CA000D6A71C847BC949FB95AD908583A9C8B361
+:104CB000CD8EA9DCAE94FDCB0560CD52360E69DEFB
+:104CC0007F09FE6AAB52E6C5F2C5ED36C782962E65
+:104CD00043D673BEF6AF25C39AB61EA9A58F12C6DA
+:104CE00018C15EADE9914A25EB759900B689930329
+:104CF000F315BB440AD9AF8FA6DDA84B8AC7A25CC7
+:104D00001B79531AA41ABF1655FC7CBDC59A89920B
+:104D1000E4795495F5EEB3781F0858F1FBAC54983C
+:104D2000CA02D284642B883ADF16FE6708959A037C
+:104D30005193595FA5D0A5D8A861CE8CC90835A4D8
+:104D4000D545D1FE70B614234DF4F8A42413456C58
+:104D5000FAE2B045BB4BED6827480641F913BC2D7C
+:104D6000210D1A7CB908437BF5CABD16E796BEBB78
+:104D70006276EEA2D71E9AE1D5B62AF216BF8B1341
+:104D800090BEE971C47E94BE0CADBC58C9AAC8954A
+:104D900092C8DB20CB24D72082CA76FC943FF880CF
+:104DA000170D2AD18FA60C24AD255C662822296018
+:104DB0002A8122884F17675C00B411251F170C4AFF
+:104DC0000F264CD02258A25380771B4E9076BAAE55
+:104DD000720361A78A22106315C6B19C35F4B55FD2
+:104DE000105FA86FC85D7EB1479D789E76FFC5CFE6
+:104DF0006BE95C44F6EA5A5F46C3FD14178D4E4BCF
+:104E00009EB57C0BA2D75BCAC2548F28FC0AE3086C
+:104E100038CC6D7DD5E830B44BC5732E7594C3C5C1
+:104E20000B3501BE7E60E780D2E9AC7F0F3A06F514
+:104E30000399C2F78603A5EA34656C58DEAC89A9EC
+:104E40003E0D7EAA7C851E8A67808B9B78424770C8
+:104E50004D6A2E09B75B962FB6F13359C26F5311C5
+:104E6000D2D418A9B2C5A78E64C550B4C0034E8869
+:104E70003B4B868B4D05C2F249A72F104220FEE422
+:104E8000AC061646A23149B691BABC5D9A7B98AF82
+:104E9000090EA071ECC485CB027F32269012B95462
+:104EA0009575959B65FC12A8E2178AEE76EE82CD89
+:104EB000F2A88BBBBC537C5978A7BBA2355DE23A04
+:104EC00086162955AF1E08332123275AB20FA1A3F6
+:104ED0007FDAE85EA3519BF3667DDE4BDC12B3A75D
+:104EE000AA8F4BE0E94747EB4397B77B3ECE929FB3
+:104EF000ECF427B9C25338CDC837E5A3987260DD0A
+:104F00009CB844A8764DFB96E517714427D01969E3
+:104F10000F707DF827F6147B30CC21225DB94B1A37
+:104F2000D4E40DD26A9B1C1757871505ED0145DCAB
+:104F30005B7148CB5811AEE7CC62907D9ACCC3CB65
+:104F40006C576B6F94B03FABA51A23841399AA7268
+:104F500058C32F5C7A04819066909A3E4936F84D8A
+:104F60009601FB6A5DFEBB379DB8125D3F20A91C10
+:104F700005C2B7438E3E521E5120017B23C1B8ECBF
+:104F80008C6BE5990C8C154C65FC58F47AA9C1BF63
+:104F900001F85AAA72A98722F7B96FE483E9FEAD36
+:104FA000D08A3C589A0F1B69220DB1C83E29778BD5
+:104FB000829F494DE8B589E1783BEE5684EC09497A
+:104FC0009F0BD485DDFA4AE09B20A71EE3C514643D
+:104FD00036124BD09ED982BB66B03E80C53D581874
+:104FE0006FA1D0FAD34F506BC44E0CD003315396FF
+:104FF000D08443EF651CA2B1F652153236F8AD2FBE
+:105000008FC5DD8D4849F29F051C7AFFE2E9024712
+:10501000A2D60613B620D9739504751CEA12E6C70A
+:10502000AD1A786CD9F6371F86C9045B43E9A9C06D
+:10503000E817C806766CDE82E9EFEA8B505BE17315
+:1050400027E3F48ABF511CBDFFA6F325A6F35F6CCE
+:1050500041B9091BB8BBF181D613DAEE3DBF6950E7
+:10506000D0E00619FCA913275228D61E54A7237C8A
+:105070000B48A47CCD5FD1E93DA44E9F2EF08A253C
+:1050800026A52024B1E3E335FFA62D6073E88B0A43
+:1050900023AE932439902DD62DE71F476E5EF7A1DE
+:1050A0005CEF3C9A75557C82ECC532F0C9EA7A1FF8
+:1050B000BDDD7F88411D3831ADB6B6A0ED34E65F69
+:1050C000F1C2283D7C498D189AF68D3CDB01E87CC5
+:1050D00023D1E4238DB7D0F66241EF5614ACCD3620
+:1050E000290CE210B2D1091D7EFE5E8DAC61460B2B
+:1050F000ACE042F6B1C728AED4AAAEA0F028D2C325
+:105100000F54D94370919B1706B6A628E66D2799D0
+:10511000519E3432F233B590A5BF2C1A303F8085B2
+:105120001904B56322C6D046C8359DF7CDA6A1DDCA
+:10513000A2A078DCFA19DF816903765FAB0AC06E42
+:105140005AFAAC06EABE14DB69C62027D8CA39ABC6
+:10515000C522BB9B19B0E7B9680A22BF86B64F814A
+:105160007F8C861AE67F239A1A8B992931235D3822
+:10517000A00E13AA7E8196D237D5250BC0B99DC744
+:105180007FE901B72A1722CA2205BF90EFCCC5924A
+:10519000CE3CEED3355E7448F2E38C0E5C91E111A7
+:1051A000AC7FB86AC14551B378C3B7EDEABD863F5D
+:1051B000A8CAB1F23591EE163D991FE71C3F75B0B4
+:1051C000F26B87C2154C43133DB5A9F03ADE2F0AA6
+:1051D0007AF85C247E1CAD6F11A968980EF888C01F
+:1051E0001396D71CF45AC00725514EFBCA6C2F3CAE
+:1051F00099FA393D04762AD1960AE26669A8605B7D
+:10520000E4C975A2CA1D5F4272496E816F3F47E2D1
+:105210001B6F81E480062B0343D27C9F7E99C35C85
+:105220007513516AF99DEB37EBE04A7E403874AE56
+:105230008C952C6E5ED7DACB5D348736B3DCDD1D02
+:10524000733A6C29EE209E21F36004D5CA7141F3B4
+:10525000366CEF3D415199BE34EBCC3E781CBBF629
+:10526000FF12919DC59E9E2DE3B72FC1C1180AB3B1
+:1052700025793F7E1D4A5F893B1620EBA61799349E
+:10528000B8041A07C0E7FB73D3944F732B31911303
+:1052900012EBD2903ECA0E2AC7572E3DD4D3C6B9C0
+:1052A00075BC2D369FE705698A28C467DF88AE4242
+:1052B00014670D61BFB57980C20D0F2B2E5123F1FC
+:1052C000077AF7A4A50896270F1C8EAE8816949926
+:1052D000105805DAA0920693C00C30CC659B582577
+:1052E0001295558E1E8A856F3BD2E49F072B8C94B6
+:1052F000A242B2265F6B247B6A6F8CF6D13645875B
+:10530000337E910A68FE04183908E8CAA05D627508
+:1053100052C78AC2BB9E1EF365EDC3274469F46F72
+:105320009F6260E02ED8591B6FC9B626C29C5817E1
+:105330006C9C1A2DCF9854AE0CD95A33C9ABF8CB0C
+:10534000B2BF0B593D9AEAE32D95CBF0F17D09C62A
+:105350006E275BFE91463D8AEA7F3C8B333D58C207
+:105360004F2B108E8FA0E26E82824BEE5E605586D0
+:105370001242B89212E593F723CC3CC80559458AEE
+:10538000733DA15386C7378F90A48E9BA0715C0C90
+:1053900008D61D5CBF94C309FA92B6AF005373B828
+:1053A000BB3B662485E7453E49E269AD16FD1153D6
+:1053B000C0EDAABB33E3E3C28BD26C64C1C5B42F8A
+:1053C0004617DB3E3D71ACC7EC8B012F294A705C60
+:1053D00011189496B93FD1A4BB040B8AFDCC5CC8CC
+:1053E000B3413C1FD3FDB302EC22954B355F74559E
+:1053F000D62B3612100C191327A5CC42E34A2620CF
+:10540000BB0AB9E2CA8BD0ED811F5C5CDB17B2C46A
+:105410002B41C51C35520BF8F090D7F5A0F5FB4D8C
+:105420008C359611D09882C305203AF183C010C103
+:10543000C582DF96AAEE6F1A9CFA4D48454BDC8F69
+:1054400046DEBF9DB9B63697E623E84F056EB2003B
+:10545000AD60072507C90438B29B692B3084559687
+:105460008B82633843461B98493D185E185A213297
+:105470008D9935B60A06CD45952BCB253C12B68EB7
+:10548000A105375EFFA8E000154DDA6CED2BA4C72F
+:105490009AD1936DCDD4AFE87D45CD9E353D74E96D
+:1054A00084B34CA32F56A0ECBCF7BB686A164935F1
+:1054B0007BF6A0870A1350171EA54E5D3C4A8199C2
+:1054C000425EED2CB322C661D92B52CCC9C0F2B9D1
+:1054D000548C240CE1F99D1246B0C8010786565F32
+:1054E0009F385167C5682B3DE063D9C2528C8A77DB
+:1054F000235D9FB7717A91124EF2D0DF8DC018757F
+:10550000902646E97704EA4028D293E6F0734910E2
+:105510002447BB6D2979263F521FABAE0E6CFE07A8
+:105520003C397EE2FD7D0B0B864D39F272D14CFC8D
+:1055300079D680A0D24CAF68F5C0FEABC48C165EA5
+:10554000C24624D75995FF6433CF55E3702A5EFFD6
+:1055500008FC3FF78B405BF3AF6BAD54C984CDE6DD
+:105560006BAE74069DA8B1A1B7F0D0939E31765072
+:105570009B6933B5836A63EA482EB9C9E34289510E
+:10558000C0CF4B7C2F09445EC15AF5BBC0E831C285
+:10559000751C296F08F2738AB0B378CB9B8F8CEFA0
+:1055A0006A3783C771DD97ADED6BA46810E586FAA5
+:1055B000D2B2CC3B988319BE795D2EAF97E9B38EFA
+:1055C000B864DAA8D74E16DADC56F1E8CCB2EA9F16
+:1055D000409435E35BA1EC3E97FECB584520957E89
+:1055E0005CF30D49FC68D9FAB625F97F4A947C5FD3
+:1055F00087967F5F84FA2F6379D7DDB8699A07C1F0
+:10560000CAAD6D9081BEFCB336B58346B608F6E8E8
+:105610004B095D7A64683F30F0C5D1FD99DECF8AD1
+:10562000EB7B15CD1100D2F82D2012BBBEFE7A0AFD
+:105630009416896DBE901B550ECCE800DD37428E66
+:10564000C6EA63085A841B981181F7329B0E7EA527
+:1056500026D6FF98D64C7EC131BFD391B3D4C4BBFC
+:105660003F729C1584F9A52E0A228D55D2546A9357
+:1056700053A529B708968D77021C82A84DA5DB5942
+:105680008A5B54444798E12BCB631190F47DEED1B3
+:105690002EB8CEEDAA431805B3145027C2D1741BFF
+:1056A000607AAFD842EB9E8053B92B023CCFD1E356
+:1056B00067A22FB078E68726FB0814DA7BA7596823
+:1056C00061F238053C5A1D176A58848F7ABBA009CD
+:1056D000ECF9A92934F56E53A110B4CAADB0A4E415
+:1056E0004E85E4F2264A69DBC4967ED43B3C728246
+:1056F0001C01B219F6BF6C1B2A17AA61CD334AE709
+:10570000088760A5E138E7DC99F7D0753283171A6E
+:1057100024032709549057CC2DB5EAC4983B9384B1
+:1057200044EA641581454119287C3A8C2C267CA2D8
+:10573000FF29CE00C1851FFB9A3A953023F6A8EBCE
+:10574000951F374EF141DE093004CAC5F09572014C
+:10575000CCAEE68E9A5F71360E24E9F4923C70A9C5
+:10576000421B5EE3784A5A10A287B12705AE4994DE
+:1057700047D821D3C9F65775E46A47AFDFE195E909
+:105780004AA2DCCE681C8DD7B709E9E14FEB29406E
+:10579000FF6C9BA9C845D09557A9A796E749C2E9D0
+:1057A0009AF50925D6D7C52F690E2D027AD042B4B5
+:1057B0003BB9CF61789441B774C6A3BF5EF60012BF
+:1057C0004D49CF6C52730D8552521D41548D2206A6
+:1057D000AD73D107CC510F5C57F4667C8F926FE8A4
+:1057E000ED81D93F28CAD1B4172B29D3087190E98C
+:1057F000B720C3543DFC419E4C9C552EFF2124BD37
+:105800001559E7D2EE8C48B9AFDF3A27E1D71F919F
+:10581000EC2C88BB3487D5820BE5A94AD7A932B8CE
+:10582000E73FC2B4964434B087A532F5DC6A3BBE8C
+:105830009B4B523123E61378A6C775EFD4C5271EBC
+:10584000076A6642BF7FF6F9197A6796B8A4B1D2A3
+:105850002D28D70A808EFB9E17E261944AEEC1EA9A
+:10586000F2BE2AF5A62B4DFE2FA0DA43D1D9B58C76
+:105870005A1480F328510CB64DCBECEDFE90769C7B
+:10588000380D7336E6A4C7394D04A719E45863628E
+:1058900034F1D99D40F172040B3D8E25DEC115090E
+:1058A00059C2C227C257DC611331396D3E811C9445
+:1058B0007344656D9DC98B4506A8020F7DC9791299
+:1058C0000B22FB708B63767CC4747F67BD5387E2C9
+:1058D000D88744ADF2501CE08A507A60253AB13E38
+:1058E0008E448D7B11DFE9A1035C9E160415955F44
+:1058F00074CC0CD4F9070B6D188E815485838CAC55
+:10590000C866C2F5B645B5D67112FBE407B002A170
+:10591000AFD753603FD5E267E7D06311C8D9E0DD68
+:10592000647A3FA4F1484922A80034EC5C7E60A66A
+:10593000782282A5F0E22B42A5B728B712095BC4F2
+:105940005390F86FDDC21248D78753DAD1B3F321F1
+:10595000AEA39816BD0E76BE46D857A3FD45ACDC67
+:10596000486816A8CC447797596405B27D8F3DAC42
+:1059700087485A3348D572FE3773BF59A9A78A8B17
+:10598000E2F06C953A09B3117AFF3864CFC8B911C7
+:10599000EFC27747C501481119FA418D63F48E387B
+:1059A0007E6FFCEB9C579C3DF70D0D6F5C30F7CC88
+:1059B000E211B243C32033A20D87BC8B89BCB62B46
+:1059C000B8532E094B0D018487C3AD9A4492C0A1F0
+:1059D000A2E1324923EC300407F55571C52AC89F6E
+:1059E0000438D218BD2CF7E88221DAAFCED344CAEE
+:1059F00082D83A880E5D288060AE95809A87AFFB8A
+:105A000036256B9F0018A8B01938E455EA4AC75AE2
+:105A1000569CC54F47FC870786EF16087B91A8C4A4
+:105A2000A447B5F2531DE62C3850F526ACACE33153
+:105A3000078E482ACA9D9CA102059BD212729F6CB8
+:105A4000FD96C103B6E47A85B39FF377EFA935D30A
+:105A50006025E75657F57D4EE697E07B2ECC26E392
+:105A6000C32674048F626260E617649439F20FD221
+:105A70003A52C7A81DCA421DCAB30D0B8748D58428
+:105A8000F84C61775138DD2D6D55CED3C35FB280B0
+:105A9000A99C853220869EBFC5AF8BBF925FAF2881
+:105AA0001E8ED6D3DC69FB98048AE286705B346D67
+:105AB0001A7F2D989BBB580E00C4CA9CEF470AE280
+:105AC00028389BDD23B640FA54826954F17701A649
+:105AD000E1293CFCDBCE1A999D4F55E6F5E5E56CD6
+:105AE00015B1FCD69CCEEE6525D2A34C15B690DD43
+:105AF0007E3ACEA50AF52BF21225709452E6A2A3A7
+:105B0000083E049D6390DF5E59D688E6810EFF0A49
+:105B10002ABCD9B764DE7D20C53E92203795D79B3D
+:105B20004945786E1F63537B35A51033406629388D
+:105B3000735886B3515D43B37E1E3514BED9B3602E
+:105B4000791A96B08692AD2791B89E879438197CC1
+:105B50009CD61EFFAA87457BECE20DE360676C4193
+:105B60009245D4D152083BBD3E51DA30B832B5E04F
+:105B70003E21871004797EB522AE3D1A8CD6B5C47D
+:105B8000D61ACAD1687EF5C1498F8742962795718A
+:105B9000F63F9CC4C358EA20DC927D4299CE45EE84
+:105BA000288CC52C246F3450D697FD5E7353ABAC54
+:105BB000A0C6375D0A351A7E012A45230256CB500E
+:105BC0003766B8FDE9FBD312412BD92CCDBD92121B
+:105BD000D2D237394E01583D7E0E4C4EF0D2FAFAF1
+:105BE000EB426E2D88682A570EF214C0C28620ED53
+:105BF00044650383D59101C534F4C209BD179BD711
+:105C0000307E48061E75EF5379645AA210B608F923
+:105C1000920E2F9BFB411B32B1D09D91E9DF4DB914
+:105C2000CB0F41B94122E0913A89D407708239B94A
+:105C30005C493A3BC0CCAC5B99FD6B2C361C01BB7C
+:105C4000CDD28615115D5A7934CE55864051B4DBDC
+:105C5000AC9B897FCDA01D7368BEF72B734E22C30A
+:105C6000749FCA15EA8F4209C61F2C2A058906228D
+:105C70000C368BC765C85A108F13166C22D7A51E19
+:105C80007042FBF7F55008E5E3315409A6A41C93D4
+:105C9000D1E5E4C1807B94407AE0DAF17578B6AE64
+:105CA000C66222D2ED9D73D75D60D546483052ADB5
+:105CB0003B3CD0DF9A3AB1002EC4505F39A48359DF
+:105CC000BF3F16C0DF742C5F107F428630D7A6E539
+:105CD00057B5B5B95E670407B48A18DAB3813CFBDF
+:105CE00094F9C4E4A024BF6519288B8DAEB76FD298
+:105CF0004F52350749239BFD36088042E5A11E29F6
+:105D0000E11E778BDE1243DDB18BEB8069610329E5
+:105D100088C827322E411558EC415A794EC0547E1E
+:105D20003496764154E2553046CE0330973C609A23
+:105D300045D10594DBB85BFE0BA06B043483DE7D9C
+:105D4000389C8271603C12046EDB5D7CC883507E9F
+:105D500008FD69658465CB3C0A06898E44AC1B7CD2
+:105D60005B97A21E0EAEDA6CD2C1F453C2D2F70416
+:105D70007AD6427C7883211ED09A1B2C18F971A404
+:105D800061F3D3F69693B4CA7EB9CA55B7FC18CE60
+:105D9000DA5E469CCBC7E156207E275FDCD8D8F47C
+:105DA000B694BCFAD851D7F9AC602C581D73E1FAFF
+:105DB0001248A45B198412AE5AD6ECD90DDB7C0CC8
+:105DC00004C03E17F1C0085AC04E740C6907DBECE2
+:105DD000970086F2AB060A9BAF9A57BD47CB412985
+:105DE000E6CDB090593EACF0B95D20401AD79FAED9
+:105DF000B5DFA1E2E8B6794ACD6A1A6E2EBB5EF72E
+:105E0000148F4A73D01E03DF19C1D35A6AEEFB7098
+:105E1000A94805190CE9AD685452467BD89BDF8B25
+:105E2000D6F6CEB7638D650C0A756EAB166D09514B
+:105E3000B65A41AF9432807916A65EED426B4CF2B1
+:105E40003063FA909509E13FC0E5CA808CDA7A2583
+:105E50005892AB70D1FF957E7EE5919DE88C10380D
+:105E600013A2097E8BF56B1DD2AFBEE33289B2005F
+:105E7000F2C66AB17DC52BB830891C62CC65AA30E8
+:105E8000F871B0F5586159BBB782D962B99DB8882D
+:105E9000CE38452391416815E69233D4481DE1F090
+:105EA00096F7233613938ACE66C833445595C88730
+:105EB000D227382A22F5996A404A370385821ACFB9
+:105EC000AE3766439499D48CA57BE1A1169751FE19
+:105ED00037451C2CB83BE49CB68A9A25587DA56CA6
+:105EE0001A174BB2B1FA064CB55E06D8E5C8DF3AD0
+:105EF0000C994A29ED1007D98DF5DE2F445712EE83
+:105F000036180C18BC1E74AB3D925C168B4EAF1D40
+:105F100047A9A49BDA35EE2D945D1F889ED0D8BC8E
+:105F20008A69C531C96A059AEAE353F66E925F251C
+:105F3000DB4736B965F36E9C4E7D3379F9E4C1F3E6
+:105F400084FCBB5D453F8F49ECC2BF908E3BE6F6BB
+:105F5000000220B180498207C13561E57CFC4EC753
+:105F600023577F70254EEDC595C13392DC07494E0E
+:105F7000DE704F80247153294CD3BF7DD899E7EA56
+:105F80009221627484B5151E641E772720BBB53E2E
+:105F9000288F98D5B4EC23DEFD65F130AA21685D29
+:105FA00014F03699A13CEE61C313E0E21E5E6E9FD1
+:105FB000631F1ECEE1DA1277960811085984313931
+:105FC0009559F65470D74186A939983E5B0C304AF2
+:105FD000B4F782CED53691997A8F29DF833FCA9A5A
+:105FE000D8261A05CE842D9555B7FFCF13BFA1DE55
+:105FF000C403670399198B6DC9FF3EC9C535FC738E
+:106000002A7DA4DC1C766C54E2D089B6849DA53F21
+:10601000BB77C9C7F893D35B8A7EBC8391FA05E04E
+:106020002B28621CC81A0BADE57C1A4807AB9734C5
+:106030009486D2895A74944C777B25A3BA1AB3AF4D
+:10604000268A7D934F6755FB1B9886BE70E83E718C
+:106050004CBFB2CA59FA7B91D8CFE15D177AE92CCF
+:10606000AA533CA2CF3C122FF581FD7021DC11CB4D
+:1060700027E0088078DB1A55455D1E4FFA40A08462
+:10608000DD3653A04443F95A211F0DC7BBB701E3C6
+:10609000484E570B77CD7FC3455AA8609DB0C2715B
+:1060A00049E9BE7C9A4FD37F63FDB21FA353E82713
+:1060B000F9113CCB3784B415F07D6AC8D83363EE50
+:1060C000736B934CAA549DB99F8C8AEFE21CB7BBAB
+:1060D000A297C7C26D179A6AB3B9B1E6A68EE51842
+:1060E00049496B5567FC17DBCEBBFDA5B033BC9EA1
+:1060F000532F02949775C0A7E1C7DB200AB7B340BE
+:10610000096A08ABF71ECF11E05B4F093838EAC7C0
+:10611000A42BDC2E4E208FD1C5C828FFEC5EA6EE46
+:10612000DCFB1897C7BF44D3E58A8E1BF23BD4CB68
+:10613000EFC2498E887BCD5A60983622D90F7248BB
+:10614000FB3650FAC4AE42F9AA6D4939BA3A2DCF9E
+:10615000076A59C09907CE2BB3085EE62158D20DC5
+:10616000B83A94008D484918C682157669176ABDF9
+:10617000A0ECE9E7799325EE112AD1BF60CA24D9B2
+:10618000785F3387CC64F6AC5FF00DF28D3316E3A5
+:10619000661FCEB53E537B11BE01B647D5839A1814
+:1061A0006F9FC7FE075172B7CDF42D9465B3D01A17
+:1061B0002D95C5104B5D59409097DBCC3A76B2A730
+:1061C000020BE77C7C9AAAFAA7E320051C14248D15
+:1061D000F24D8FC1D022DEE39E15A26C84AFDC9716
+:1061E00066B1448B768975EEBD02156FB20F75A34B
+:1061F000CC71EFBC7F0E7D1B2BEE0D7AD6333F02A8
+:10620000C45C84EDE5C6ED770D79114EC01F3E9953
+:106210002D79C2ABADBC18B218B45A27DF5C79B780
+:1062200027072106B63F7E38E0366523A179E94984
+:10623000014708674CA0F8B69D867745D3036AE30B
+:10624000AA2BB1B94133AA9512451A6F1FBE80031C
+:10625000BD4660AA31EF221F8BD9690575D2405225
+:10626000BB4595FD050F238E1829E10825E0844ADA
+:106270007C6AFB784E00C861578718535FF5429DD2
+:10628000562A48648F32C92EDA6FD5959482E2A0DF
+:10629000ABDD368FD44DC80941DD072A44E546EA17
+:1062A0003480171E7A3B974537790151CD3A5B2FE1
+:1062B00018E7DD4D4EDB5A542DA3D74403E529449E
+:1062C000DFAEB0D221B294D49859F4298AD991BEC4
+:1062D00084D2DD8698F28AE481ADAC20F2CF8F3A89
+:1062E00032434933245820FA52D5EE3857FCC5E8DA
+:1062F000B68AAA049B3AE471436084045D6E70A977
+:10630000FD74FA292CBB82D8351534635938FE81C7
+:10631000493672DFE6E12E259D634B9014DDA4869D
+:106320006BC07887882A6224E5B660A27CA36D6F73
+:10633000F0DDC3065CF552CF8017557F726A0E50B0
+:106340005CA85F02F3A0DD45C98AC185FFEA9D21F3
+:10635000820A20B19B2068B623BFC565E79DE20392
+:10636000F060FCB688B5A0BE1F310E70FB9A88E2C3
+:106370004D1A39FCF0D7EE40F34A89D53A30C77D43
+:1063800080841FEEF12544BDB8288D64D853461E85
+:10639000157E26026A50FBFB5E0E40113F3A5DAC53
+:1063A00038071E045A77778BC469DFAABB977C1B1A
+:1063B00064E250119D61BC07E0783538C5F1C99E93
+:1063C0006054D1B71A35287A0C8ACCC3710563E1C1
+:1063D0000E41E0CA664C7CC044F92C747A222B34FE
+:1063E000EBAA9759C8CED6F0819F5FDBDE768C8012
+:1063F00007A4FB2F6962E74C7AE813D732E4A06761
+:10640000436A43BC069BA480AFE913C41D96D131F7
+:106410002512025530DD36D2BC0D1284B8A8C41A3C
+:106420009DC86969BD80BFDB2D3E2CDEAB686B0863
+:106430001F7E23DB739DFF09868152D2BBFF04A41C
+:10644000372C0608BAD2020D038897D076B2AE294F
+:106450005E48A1A6B1BEA94B57FF4E0F05DA8BAD22
+:1064600033389A2248BA867D14522762D17A3E91F7
+:1064700070CCCE24592D82F4DD20CD528B72D242C5
+:10648000CC4D10EE09426A82F6555B22A077237844
+:106490001943A74644AEA65BDAB9C6D8596990033A
+:1064A000B3ECAE211E7F98B1DA20A87B020C065D0A
+:1064B00055815FEFC3BD4E4B505EEF0DCB3590C79E
+:1064C000FB7F0068F374C6805AB7D40FC1849CAEBA
+:1064D00038077CC897E849274E25516B3E7DAA9E18
+:1064E000A456C9FB82ABCC08AC5023E672062392BB
+:1064F000E35457DF8DCC866F087FC6B500CEB05A07
+:10650000425EF86D91B119885765C7D62BD5CE8DEF
+:106510002137C858E2273D3321511CD5BEF5F84735
+:10652000A4B6C01220E29EBF2DBDC14059225BC659
+:106530007A16251B41E5B0885BB9D165A6D4A7C200
+:10654000B32BDAC1A68731AAF3FF129CF089C71DCD
+:106550000C10C7AE747665171E50F20E680BD85F2C
+:10656000192CD987942FEC0B3508248DEEAF192800
+:10657000C7D15EA0CA9A9C51B3E0ABF7322BBD766F
+:10658000A36DE52D219020827FFB92FA948720094C
+:10659000730C6EF225C05DEEFC08034E9DB4D4CDA5
+:1065A000926F72132474202AC68C4ED9EDFC93C8C6
+:1065B0008A36825A4B2C74E8B321938FB60DB28A77
+:1065C00055E3D4BCC88A3ABDE9144E3890D2B3E43E
+:1065D000A169F393BE7923B067FEEF69175544A70D
+:1065E000124CC8D8EAA9CDE7F6123974B050430569
+:1065F000816ADBDFC781B86E7492BACD984D0BBE4D
+:106600006F8793DB56528B23A857C5197AF510F77D
+:10661000DC218901DD9C9BCB8FBE86DE5C7D781200
+:10662000AC79783D15F28171A93282F45023527D04
+:106630007C2D53310FB552354DCBFBBE5C32E3AEF2
+:106640009C2E33C8E39742D678F0E0F9E11E139A06
+:10665000C41568FC212C5B4F2C95508D76866BEB16
+:106660009EF64327B9599B7E607C65A72A570DC4C7
+:106670009EFE9CA6275272A4012D276929F5C72AE0
+:10668000A0D95669E30169792F7D6181B94BF35B2C
+:106690008DDC143EC3A477CA3B603D05A862C94B9C
+:1066A000F61D36C3F53112552D179134CA394E52A5
+:1066B000D608311635FBCEA958E2B67E10B40C3B95
+:1066C00083914C72F7663D9F2F2D19A0A35B330475
+:1066D000EA71D18ED6DD8BDD6DF51B59DF44D4BC5C
+:1066E0002D051F23605CFEEFCE5CE19135EFBA1201
+:1066F000E7E0387F8537E7D76EB7B4B04AEA3E0A9D
+:1067000014239ABC6D1BA0A341D5DDBCCD94AF1959
+:10671000A3DBAB8C2D54ED5AB8EDBA37EA99BF1014
+:106720002221666111FD77B575CBDDA0DECD7E9FA0
+:10673000D7B5B6BD61C667A4B56C1942EB25573312
+:10674000C136E94AFA1FD53841510CCE61085C5E6A
+:106750006FC8B6C71014D3D3B7B3BDA1294117CDA5
+:1067600064A60349631955FAEF2447E5E4240C14A1
+:10677000E13A7D4C75FC2DA1464ED8E1D17FB1594F
+:1067800076B40282ED04C339A5442020F8D37DCC31
+:106790000F0C0CDA125759539AD9E965F34EE3EA14
+:1067A000FF142F808CFB37230E910AC82EFD9B9F70
+:1067B000599430C94F6DDA272C80AF8C966332CE56
+:1067C000DAFE031FF6D2CA4DEF55E1A0A2E0CF6872
+:1067D000F93811D2BD94F82E3D560BE5ED621E7DC1
+:1067E000597D2B1731E90FB1D910B38163233435AB
+:1067F00017023E432B6E56D2BB4E700AEEBDDABC7A
+:10680000BC97568DC21E99A35EB9F84BCC3492A9A1
+:10681000EC1FC5B3B760585CF71DA6C895C2351606
+:10682000A7D59A4423189AE9B3862ACEA1A9E4DF12
+:10683000547B17192077A8C1DFE2881A7E37C69EDD
+:10684000D42D0B648BFEC7062C8D0290CF1E846165
+:10685000BF963F0F1D7236C53DC82C2A7DCA0ECB90
+:106860005D19DA5ED17A57FDF0B0A6F79574206A0B
+:10687000426855B181F6FCF8A1B27BFB11C8E63A3B
+:10688000E9EBC70701B25083825E34A1E838829BEE
+:10689000CCBFB8059C1EDD71258C9157C809D5E881
+:1068A00031A2A6369D60EE2EE4DF5BB35E9B4B28E3
+:1068B000508F69FAB7F9A924B626A151BB01AC4D96
+:1068C000FEC7862C839DD2C34FB76024A9CDB505E2
+:1068D000D1DAA7821E1A9E43E2F9FF953EB3F6383D
+:1068E00019AA614C72C7904D932FC0F39B226A4046
+:1068F0009FF748C59940F31971F5B923C917DF4CC3
+:106900004FF1FFCF271DE110C287F8F14DFDC71BE6
+:10691000EC86F8698C299B4BACA99F6C4FF1190C44
+:106920004EE0C8FCE5FF63576BB58E74A54D21DCC6
+:10693000AC94D217EB53056214043DF28627B200E3
+:10694000B70CF708B5FC2AC85B103F7A5C844E216F
+:1069500088D63D31393AF84D183B1DBEE533288EB7
+:106960004BBF778E8B5ED6490A4F373DE75962DCC5
+:10697000527AB6E2AF08D58B00F0E6408C615CAD90
+:10698000AC6C4A94AA88B4180013021A8DF57FC51E
+:1069900080067850087C1BD5078BA2BCD7AD8A93A4
+:1069A000CE35AFCD5658DE5F27A28A197737B00EA5
+:1069B000EDD852513329C24EA7430E345F2EFC311D
+:1069C00031141F86D58DC5A4B003C50CBBB049D00A
+:1069D00003BC4EED1A15F9E544CE28BD86DE3DB662
+:1069E0003926BB7BCBEA45FD8888CD37308118320C
+:1069F000F6BB93BA6FC7579ACD15F42BD3DB0017AC
+:106A0000135E9D6AC59B703FDDBA4188B9661FDB86
+:106A100030522237EC4D0ECF3938AE2A8C7174AC1F
+:106A2000D5E65546BCA5759624E6129CF10246E8CB
+:106A3000DE727B7FA3398C5BEFEC36C02E920A1599
+:106A400092B5841790557451A26CD4A6861795DA26
+:106A500027E8ABDD7C1D503FA932BD4756BF11CAA8
+:106A6000FE0CF30D18C045549E334F6BE9BABFC9F5
+:106A7000ED4D01ECF9B2E886669950EA57A037ABC4
+:106A8000402ADD13A6D1938CF35A1100428DDFFD0D
+:106A90009FFB9F66DFB706F630F3312F27448C103B
+:106AA000F0E7B7C610D999F36E63295098E7DA95E5
+:106AB000CEA8655CCFEF3DB1F29897893CE0FFC569
+:106AC000CB7B08139FCF12AA385EF9CFA6C6DCD1C4
+:106AD0003CC935D37F78DBE26BE78CCF87413AAF97
+:106AE000BE18B2AFACAC5C52FB811B063A6B316393
+:106AF000EA426AF7B3A236CA9027DDDB74BC2119DB
+:106B000029B2C338180BAC9F96CB376454359C0F11
+:106B10000A4C61CA4BC8A71C39169EB11641FBC668
+:106B2000EF868652E036A25A6F7AA4CDBA985D7984
+:106B300010664866F0EC3C6C9EB34CD0C31F69AD48
+:106B4000918B63302DC1C88CCED59C8421750FA844
+:106B50009207B3654D0651004F05B3C13CE698A4BA
+:106B6000977DA51AB1CC1CE92B43FF746B00D76845
+:106B70000D4260218552D354FA93626F992C081EFE
+:106B8000EC62EA784EFC83EEF5029101637FC42942
+:106B90009B4C3F58055A1240777B31E89A01B30469
+:106BA00075FB2EC7E66B787A4BED1840350725A8A4
+:106BB00080D42526E4A7E80C3DF39A18734EC77FCE
+:106BC0002FA457AEA3EA5A0262C89C813DADBB30E8
+:106BD0001C8184CAC5F27435203E57A702A4181040
+:106BE0008852293B216254E0394317AA7C76F0325F
+:106BF000BFB842F0522EFC0185259ECA9E094F1552
+:106C0000181FE791EA64B5DCE248C9AAFDA1328702
+:106C1000FF2F06FA9E277F4725AEE8C0BFCFEF1DA6
+:106C20000C13A66402D65DA8B7C94E89BFCBD16745
+:106C30009DC5F0737B25EB31C8B159F784F13A2338
+:106C4000D081795992BBC19FD27D67A83195FC5CF8
+:106C50003A3C7E6B961C63C8E3ECAE4906D34CD835
+:106C6000624385D23D4D89FD979085F16E0D5A1195
+:106C7000BC6FE816DAFB93AC29659D459C077095BF
+:106C8000AB98BAFA41B9B87F220B0EED2D56D0B4AD
+:106C9000099904ACE6945E8D6B4F330ECA91CF55C3
+:106CA000087FE84EB1CE70B028362CBDC4395426CA
+:106CB000335146EC5E38C9EF2A57AF6C26564AD09E
+:106CC00099FEF5CB3F5FCFA7319ACABE9DDC6248E3
+:106CD000F8A265C444AF42B710FD238B0FCA181445
+:106CE0005F6E8B19FDC0749CBDDA3625E8D7C0B83D
+:106CF000D099EF0F66CF798A7B519BB67E8DC545C3
+:106D0000B0C3B0FBC78F698DC4C0EFE3062D8E887A
+:106D1000D30B5FCC29FE385424E7883945C144554C
+:106D2000B414C66673C23DC918050168982138BD00
+:106D3000CCD4A2E11F34CBF7359556B3A0E3282875
+:106D40005A0CCAB6BFAEE9849275AAEEEB246DCE9A
+:106D50009173609E27EE2B9EAFDEEEA8DA1D08929F
+:106D600003E1EAFEAC6ABA203CEBC12AD8CF24A0EA
+:106D70008B85BEFA4BD576F3469903A88943A0616B
+:106D8000C6ACD75EB69728161BBAA99C4948A6CBB5
+:106D90006EE52D121EEB9541114F1E985ACB010A3C
+:106DA00056390DEA81940C913183DFE373D4A83610
+:106DB0001C3C1AE148CF0C045D8A20BB474BA3461C
+:106DC000F499BBF6324F569F8A8A232FE6E800F2E9
+:106DD00048492F7D9675C810AE607EE289395667A6
+:106DE00061EA0543628C2E012BDC0A300050BD3C69
+:106DF000D36DF0C82537786C6A42B7FE8001A809C8
+:106E000045DDC2A2630764B21810525430F9852BD5
+:106E100047DB2E86BF2966D4364A03F99C64F29379
+:106E2000CD823A7E5A3EF41AA5889F63E00C9704FF
+:106E3000E4D19EB7B935014BBA1FBD6745EC8D4C07
+:106E4000943FB3C89DA017392AE5388C4B3B3DA130
+:106E5000EEB42D4DACBCF72911CE22C9C0202D8532
+:106E6000B94BCF15F6080915E6C6F5269D36EABBDF
+:106E700087E1D2FD423A94496BB9D0DBBDECA44125
+:106E8000E01D6AAFE5CEE7DABB1B425E0E3A238116
+:106E900017D277F99A298999EAF94D97D96532F38A
+:106EA00047744B28F0F43760CFB7E8EA9A64AE40F5
+:106EB0007D61940665AD29DCE322CCB6B166EECBEC
+:106EC00035E7D73EFFB4D06A02ABB55BBBE1E5F670
+:106ED0009EAFE63F7C8460B2529EFCE948B48FFFCF
+:106EE00011387CECE7DB8B9790F8116813E6374A92
+:106EF000DFE0745B3DC2B7D257357F166B9E0476D8
+:106F00008A9033F11E1E74CBBBEA2537667B098954
+:106F1000C733242A979665C8E72EC268F6DA7297B7
+:106F200009C7E7CDAB435047A0A6AF6EC3451436A3
+:106F3000212D2A9D0B4A02CFE167C77FF68DA1E97B
+:106F4000D09F158369E2F79A3EEA8722C78238D537
+:106F500046302EAF1C28F3D9C705B259D07ED91FB1
+:106F60007475F18EDAE08C1FD786C15DA0E0781AC7
+:106F7000402AA738FE5D402DBC14E93D7636CD8809
+:106F8000310E8C5DE0F5D588F1AA73B2790BBF6242
+:106F9000391D89618EF7787BF889039F790B610E23
+:106FA0005223903BEC16B62A6FBE6DA368527D113A
+:106FB000DE78A054B87927BA92D6A5E6A6340A7925
+:106FC00098C865C27971EC770CF978830D948FEBD2
+:106FD0009A7E0BFB58E9DFDB36961824EF4EE43F30
+:106FE0009A6F257A5C9B90F339B3E89BE8145A5862
+:106FF00074174A20BCA4BE3587688AAE50AC61AF16
+:10700000227ED3AB1F9A292D6F6627369F3E6C3B9D
+:10701000D8522DD2648966E0CC154413D145B61000
+:1070200052BDE02E035B4C29EBE077CD64FE34814A
+:10703000862E3ED933D419DEF4FC7D998E865674A3
+:10704000078135143CC9803748BFE532DB6A3EF81A
+:10705000D1CA0175383129E14C1849622B34B798EF
+:107060005CF262DA364AC682932114D5B36429FDF4
+:10707000118B565402F19012CDF01F89E482E4A0E6
+:107080009809D1376C752D6B2FEFB675CB839C0E9D
+:107090009BA3B9344CD5185B4DC23051EB3812DB91
+:1070A00007D8CD54520A976FF546522AEA12F0D902
+:1070B0002F9C9EAE1109C9555E7FF34BF4868AB1B1
+:1070C00092AF6979532C58D609E1B7155DE843BCF6
+:1070D00071552E6453E8BBF5D9E45853B6F38E5777
+:1070E000A86AA739C1B28E6123B2B7873D276A6B00
+:1070F000CC59A0D7BCFBCF539A086263FE4B45889E
+:1071000008C5D198D600D828E579E61D20607F060D
+:1071100072AB053F7AF4F0086FFC5FFF76C48A2BF0
+:1071200068835B7F10CFC5AF752F014BE1B45B69FE
+:10713000513F76C99CAF63F4250DAD3B9C156FD2D2
+:107140007B2E023D7CA2F28FCF7642207C44BA7D1A
+:10715000BCD0D7FA0196E29EC5FF1D17704B3CBE0E
+:107160000F21B15723BD32A45FAFED5A49ED4A114B
+:10717000DD143BFB21AC81013A88F29845E386EBB4
+:107180001D0A9DA65227EA0E51877300AB717783C3
+:10719000A3A25F68F8E2D9BDCD84835B88C7A488C9
+:1071A000B8C9E9E34C6C0FFA684235206BBC674AFA
+:1071B0003C28DB6DCAAF5D133A9943FB09CFF6F863
+:1071C0004A9E864B03779BC6264CEA8DE7DE120368
+:1071D000101520FAF2C782448FC454A32062330AE8
+:1071E000FB145C40F2B5D137E670F0669D852CC487
+:1071F00017FE4EB654CF5B5D499913317AF12523C2
+:1072000014CD05B8362CBCE1D22E6C28B95614EA40
+:107210003DCECC02B47D9F11C3BF4173B7E9945EEC
+:10722000C688B68F94406128788736CE6137205A59
+:10723000D21B99F3625534F3795F8E14986B5A8A96
+:1072400044C8D1050E49D74CD4744C76AE12358E55
+:107250005F2348F23C596FE48DE87AABE5AA102C25
+:107260000C46B746B6DA637D0C9801F56B0233A97C
+:10727000871BE5FCD83CC01C31EB28E2FBD0D23B9D
+:10728000590CCA82465FE46B4387EB4C429CBBEFD0
+:1072900089DC906CE674AA484035E13F16393358D2
+:1072A0004E94CE8AD3CA5572868C138D783372135E
+:1072B000763E31AFE828C56ED5AD76D9B41132CA65
+:1072C0009B81A56BBC99B2223A52E43CD39A9812A6
+:1072D0000CAFCB96C72593D43CAA2A0255E1F05BAC
+:1072E000FDE10E5215770489983207818D3C3E6E80
+:1072F000D32C2A3D90180CD93518D322C5C3EFA53D
+:10730000A2C4DB02B101AE4DA4E017A8F4A2E5349B
+:107310007779970928ACA8E497BC0C543D14EB236B
+:107320009AC89CFCD161F28B99E60FD24619A1A4B0
+:10733000E92CF036A3D0B37D7FFB214654DAAC555F
+:10734000B78D2BBAEBC2165E6F4788C1FD78A9C511
+:10735000BF9F256E4C9D6F9E50F0A130AC0E1A2A37
+:1073600019DB291018AD2088891C38625F44D26867
+:1073700017AE1C00C8F8A6CFC797BFE022943A50BA
+:1073800019FD89DFF235271C32A4AC3A9398627656
+:10739000439DD3D53061A5C170B3A2C1C8AC29D774
+:1073A000B7DC9492677290327A919385A7ADCABB8D
+:1073B000AA5CF5C8AA0C0704B9D55E7AE1D040C82A
+:1073C000C89965CBF1F2291C5049242EE4873BBAB9
+:1073D000CFB78615122C5400A4FBE7F6FD63D29BB1
+:1073E00040AA0BAD98A8865B74BB929C24BF705ECC
+:1073F000F1BE7502B147026EEA6B2DC10D9F1714E5
+:10740000B243E2FED0AF05B33A3D0F62B06F110157
+:107410000B7EC8B072D7B812D01B5559E95E392A15
+:1074200081536D1E083D92B5DF9FB6079BF2216226
+:107430006E51F66C541986773F907F39EC0561A048
+:10744000A4E84725222DAB11831B4024F7F9B2BBDA
+:107450007DD15C085DFA4C2FE29D29648CBE0451FD
+:107460009AF7A0016AB966DBB9747AB3F957EE5F8F
+:107470004F6A733F9A4025D2E400B30C0E7E5F360C
+:107480009C367BA607E642FD2E1660ED883419F97E
+:1074900060156B142DE7A551F8082C2976F2CE491A
+:1074A000BEC6142F0EA1A5BA698E3248533D6BC9D2
+:1074B000F60D88F04E21F8BCFA1B597BA761F889BC
+:1074C000F57256259B94F49D9976ABAE3E1EE06115
+:1074D00065187008556DCD4C3602E9ED72BB9340CE
+:1074E00044100AC897EB3AE86ABE92623DBB5DCB96
+:1074F000CA112CB041641C525AA7D6A7A3F79E51BB
+:10750000724369D2B502B9D60016BC39CDD56E65C5
+:10751000126A0F6FA336E55698C235FBA9B97732C8
+:10752000A2F328EAAB0BB22775A5F5AC0353816A29
+:107530007624483A5E54F8D9841FEAC7CCCC9059D7
+:107540003229FC21D522DFBB23D8DC3036ED92C4B2
+:107550007A66637EA369F63F321BC87382D138FD19
+:107560003481826D190D412EBFB35258AC5A3F423F
+:10757000BE8CB2C317D32B4B38F878B56FD899BAF5
+:10758000BDE21453F526CB39C29A73DCE8F19906B3
+:107590009DE601807339FF41B01B54AB2E3AAD26F6
+:1075A0004FAA6F0C56C09B37E264D9CF3033A93E47
+:1075B00049C0A8B60A3937F13449A95B9559FB048B
+:1075C000C7FE54E3A0934C0BDF97BDC6BA4ABBF28B
+:1075D00041DED5F15317CC54C32847E16A5702F96D
+:1075E0003A31296C04BA851F7AF8635EA7FB56FD11
+:1075F0000816EBBD2B5905C99640C31C7273BD3AE2
+:107600007A1DDFE6C6F9AD08D55EC888DD4333C80C
+:10761000AB796F0659D9C63281A8D260F1681A08D1
+:10762000A299F25A3E76D5C0B7C0D376C41D749FD6
+:10763000F2936102E36CB80539126045623F65233D
+:10764000C47DF4303B5354EE42D8B23FDC8CAB0ADD
+:10765000A0497B78651D5EBDB8889BF610115A8BDA
+:107660008B4EE414975B2E194FD9B6860F0CEC6B3A
+:10767000BA4902555C5955F896F1F3E037628DE44A
+:107680000FE1A240D1F671CEA6AB3AA076C330D1BD
+:107690006CE279587FBE76D02E745C9DFD04F49028
+:1076A000DAB991BDAC47E3C2C7617A51AD2D233B36
+:1076B00052A3834D970AB8A129DB8F790696A26A57
+:1076C0001713325BFC7B5FCB791EC822E81FF0707A
+:1076D0005C114003FFB9F1AE81C82684566393BAAA
+:1076E00088CEA18C719F22AA738B01340BBE1B1C08
+:1076F000119C0EFB51AC7D5EFCD5036733495ED710
+:1077000003068F1765B1D034F7A625A8F45326B623
+:10771000FFC212E0A545F1A3809A18A0069A4781FE
+:107720000ACF69BA65B34F571D837E9079B43F691C
+:10773000FFBFC38D45B4BB90FE0608DFDC5EF93F9A
+:10774000F0F8AF4AFD18272A546E56C53DC354A021
+:107750005F5368CB0F982F8776543BBCCB39841D81
+:107760000A1C5531A1C7CBEDD6B9A17E9ED3C595D4
+:107770001A2EB263554AE5A08CC42BD4C9711445A6
+:107780009A11F34E93479831D73287E3A9970C7D2E
+:107790005E6E75D2A7A851A7250653154EB0987CEA
+:1077A00095136F36CEFB64EAC089B27E5D60478870
+:1077B0008D36F255FF02FF1F139FF52ACD51872A00
+:1077C0000073DE5472CA2F2FB4D6481A893C124275
+:1077D00056A6A44DB4AF980FD311E84042F5DFC0D0
+:1077E00045A594218F1B27D2ACB65CCB5703F1F88B
+:1077F00096E9AA92ED40ADA63C0D1964F7C22D465C
+:107800003DD513FAD12BFB1140C0BE0080E40BAD77
+:10781000D6830392ED49934B8C18249F007C1FC4A0
+:107820003A746F81B0B183E2926F5ECFAE57883AFF
+:10783000B8BF2C09C347053BD9FA27915A2426B271
+:10784000BF64934667DF194655218A56E3C998E21B
+:107850005A3EDFB847B4B54C852B88C9D5DC09F34F
+:10786000F52C2FC9F33860DE5398B561EADC0819AE
+:1078700088FCAB12A5E0FDB63BABF6FEB72A5A0E6C
+:10788000DF425C6D1B268E21AFAF2EBA821CC4FC7A
+:107890002921956BDC5CC753B3DEB197857C4156DB
+:1078A000377E84C541D8B0A0769270ADDA27B56A2C
+:1078B000B8E13C2E82155969FF979524E3B477DA35
+:1078C000B2A4FE0C384F5016AF53171009B7FD8EF7
+:1078D000AE04C93C487B114D8F9A3DC25AEA18A8A4
+:1078E000756A1444416AD793DCFD14D62557DC87AA
+:1078F000483546819761109CE22C0478BC9393EC48
+:10790000C9F607957C303D5ACBB67CC64EC81519D2
+:10791000809A2F0E781181695455DF8B4778DA8F62
+:107920002D5A3F1EDC525545D9685400C8416CB0F1
+:107930008A55230297436E9827FF781AE0550D0F5A
+:107940009C90E8B9657B6EA921AC2AC224F25EEB5B
+:1079500003A6E4978A48252E0FB43CD97954E1DB7D
+:1079600038430C4B1E0D8B79647216D1CEF3AEE208
+:107970009AE51D7DB72750BFF58AEA79BD5022A848
+:107980005C31ABB707144211BAE86FB6148328CD47
+:1079900057EC4302571043A4E972D3CFC645D35DD9
+:1079A00040C65EC9C42C7C2EA10159A69CA0E2F65B
+:1079B00022FD2BDA60C97869272CE888D5620BD9BB
+:1079C000C9B6DD7911AB8D94040FA733660158BE9B
+:1079D000A98C901DBBB7D9E48BE3F13E9AC13FA7B8
+:1079E000C9505FB16A12DED0E31FA466CB909969DB
+:1079F0000E4468099291BC80CF4E7A55EC6DE9181F
+:107A0000FF1AD11577E0404E8FD2461471F018E876
+:107A1000EA9121F6E2AC0D02067F394815A4EA1E70
+:107A20007F9A7DBC5293EB11C3F104ADEAFE0D7851
+:107A300022BEE6B72BC7C2793DB713E9CA5208DDAB
+:107A400049306B7C2D5C5012FD2978C131F2C6851E
+:107A5000D666AD2A26EBEA521EC97DFE1EEDCD424A
+:107A6000C10AEF63A1A3F51CC0C92275F41FCFBFE3
+:107A700036617E75F8557F4F41836C49A242AF361F
+:107A8000F07323FAC33CE3C3E5EF13E18D369BFEAD
+:107A90005C8989CED4BA71FD8CA245547964A5EB7A
+:107AA000C37DB9538A92B3A5D7DF868C5827B1EF2F
+:107AB00080441E775839FEBFA75B647CE6BD11BFCA
+:107AC0006A82A43EEEB6FD2A0618C32366AEFBFD0D
+:107AD000B7D0AFFC342DC3E9BB435BF648380D0487
+:107AE00035933003DFBCCFE6C9D7FE5BF947FBD245
+:107AF000260C1EF1D0762F8B87CCB74BBFE97F7F4A
+:107B0000F1F605352353AF73E3C0FC1F4C99197090
+:107B10000F0B6AF9A7B8267DBF0B6E8D91BF4A4146
+:107B2000D2A9DA07E050EE66A516A604608D07D745
+:107B30006FD6328E5870CA9609F3990501DB7C38EE
+:107B4000CC6CE52EDF1C20148A91072D4FAF4DDD44
+:107B50000ECF5BCDEE877B96A993593E32FB8374A3
+:107B6000077D18FBBC1BD8BBF0A3DEE71CABA8024B
+:107B7000F77E55DAC6FEB53A57D301EC49F452D236
+:107B8000302F51BF4365B060615AC64E680C9EDC11
+:107B9000A3B594C750B1F9D5CDFFEC9AA641D7C192
+:107BA000C596527D7B67BC37890168759174639275
+:107BB000C68D34B6996E8F56FD9D484992711184D9
+:107BC000AFBDBAC886A234DBE35368AEFEC27DD631
+:107BD000F73C770B942A7BF1435340C70FE006C074
+:107BE0007BBB7370973FD006B77E1EE4A72D591E4E
+:107BF000D17177752E6F90EF1DED9C931296604BAF
+:107C00009B9CE3C99BC5E3AECA840E227F8B707533
+:107C1000011308A149F44C44638483BEFCCA1DF0DF
+:107C2000ECB13FD6E682EB26C91D938762EAFC528F
+:107C30004948E59570D3D6B5E9EA20411D9D1D4719
+:107C4000159101D3FB398CF31BE288714919FF1D93
+:107C500092C0E6391FEA6C014C42A113773E0248FC
+:107C6000AC1C0B2A70BDD3955265F47C046552B9E7
+:107C7000A53B49F390ADBD16B5D269AD0F9A42B69A
+:107C80009F412D580A3D861C3808D8BE746821EFE4
+:107C9000BF26E80F6ECE488E89E4ACB246E11614DA
+:107CA0002861BEB0ED59D46FBB5D4DC24D9357896D
+:107CB0003D8DAA8DAEDB2035EDC79AD5CA622FA1C6
+:107CC00042AC4ACE884151CAA5E7E41F51ADB8196C
+:107CD0001D7B97FA2F77D48747853B0B6A6CCF04BF
+:107CE000C47B340733B9A794A21EDF8C832379D5D4
+:107CF000BBF04FBC61E6130C80EF2A1472D4ECB7D2
+:107D00005CEBCA60DCFA02E204E0F838640B679DC1
+:107D10006DCAB6FB20D80A920CCEF60C453AE73471
+:107D2000E5030F276F8247D816D95BC7F39872B562
+:107D3000C497698BAAFD41399894F1BACA5D5C0C6D
+:107D4000A8A2C777F9EA2972BDDEFE1A8F90DE0C71
+:107D5000D0889D64F0DACAF48EDE522A1D38AD4612
+:107D6000788127D978D9996719A546135AA4EB02C7
+:107D7000EE428F88E3F573C25D7DB6F2F78CB035C5
+:107D8000CAAA496F837DEC049C6E9F8D3B9261A0D3
+:107D9000C9EEA70B5F5D863400162C61A288A5C9C9
+:107DA000736A5DDF425062172CFAE240FE8B534546
+:107DB00020A007A5DD6D6780F7812D503DCB471AC8
+:107DC00089FB2C5A3711E086C8F00C75D9C5472FAE
+:107DD00068E6B5E3221D12A486A693E3D12AC2BCAD
+:107DE0004DAEE601867DAC743034AA9B8011A3D9D8
+:107DF0003090DEABCDF3CD149037DDCB774DA2853F
+:107E000032C9E8B4E4364DE36D36609A7026F4D991
+:107E1000ABF12FED1C6A513E8B04E05EAC397183EF
+:107E2000F6D48B5D4810A07E1388223450CE2250A9
+:107E300020E9D01465D2C8A5402E00A37F9D063C42
+:107E4000112C5BA3533688125AE7D388C138A39A02
+:107E50007F2C3F35798C568FD3A3240146C357C559
+:107E60005C28FA53AE8271ADB88474E915AF2080F6
+:107E7000344025B70E85CA479191D848F0F6558809
+:107E8000E4FD30C6EE5EEA63DE7EDFF16BAB1BFC29
+:107E90003CAB7126924C9654D42A9BDA398690A634
+:107EA000BDD5750CFA4065DA72013F4D1F16446D61
+:107EB000F394842D30150AA8673036ABDF39A0AAB9
+:107EC0005C1A41D0C9E0A8F7694C5AB64D995ECD0D
+:107ED00064A420FD2DA4BF0C1AED0052EDB1D21DFB
+:107EE0008FB1614D0955E194D74B9F0DDFFCA5A6DD
+:107EF000903E0F9FFB447A23BC3E8BB43D55D86720
+:107F00006140A335F4DB2394BE97519322238A7FEB
+:107F1000EB132E258D3A6FAC76CE210BFF98395F8F
+:107F20008BCF22C22D5B48A902FEA6387704B72E5C
+:107F300076902559327C50703A45CA0B56FA66162F
+:107F4000F8E0EE07648044D2A66FF7AC44F0A24696
+:107F50007023AC4B69AA6726E03B4E616A3DDFCFD8
+:107F60003A119FAFCBDA69F11D69BE5A4188231FD0
+:107F700036D29312A82EFFDCA4D9FFC6B6436F17E2
+:107F80009DBF96F0085A24395D17F859AA203C7B0A
+:107F900062C8356F08CF29DB889647C410EC04F11E
+:107FA00015057584034FF508AE550C4AB3A90C00AE
+:107FB000732F024AF60E1F0E96A93E491CC23A556F
+:107FC000E3E384FA0B9273DDD7EE67AB34B10EC7EF
+:107FD000F8050C2C02A539D2F4B6E2347577FA64B0
+:107FE0008C8A600BFFBA13AF3CFC03A7041FAC2FB5
+:107FF000BE854B896FEE70E766095605AA84572C3B
+:1080000081AE1ACB03CD11DAAA95C4981118B2E744
+:1080100089B48655517AD4F904312F2C9F76CC6FD0
+:10802000B178AFC8A8E1501A27E357ECA6C2916A0D
+:10803000259853474EA0E4753225D47C3AFA2D6832
+:10804000C38D1E95DF087EA5492A93501EC714F0E4
+:10805000345AF3BFCA525CC5D808DB406EB59BC327
+:10806000A076C3BFF866726B99A3ABE651807736F2
+:10807000B29987F80F286D4BFC7B0D980DBB29003A
+:1080800005D1B359BBA373A343A9B29558FFD04AF6
+:108090009B56F4761E209999D780E432436BBAE25E
+:1080A0001D41218E6C487346527ED9B5D848EC33B9
+:1080B000D93791D958BF3006162D7655A4E6FD4321
+:1080C000A7D223C73337BDF1DF6564E94561EA44D0
+:1080D0002136431B64860DB1CC360FF55BB2A69CEE
+:1080E000E531C61533AD75A7D56FF1F4C5712F21F4
+:1080F0002D7B488293FDBFA0875F733128F67147BF
+:108100006401499BD61A6923BDFABF0B7BDE3E9002
+:10811000D19D887A8F8DFA81CD2B1C144E6DBDF5C3
+:108120005F5CA7763E8E1A4845A4D7F2DA03CC7E70
+:10813000E8E5B9596E1F4A4F11B9C17DC803BC9912
+:108140000D966EBA6E92E524A51967E38955F59BE5
+:108150000C8D694AEC941E611FCEFACBFA34A6D579
+:10816000F699FEF2FBEAC3C2364F65C32DB63E3127
+:10817000E319D986DE26F89B8ACF9815B61AA5DFB3
+:10818000CCBA10A0F16F06D3E8F91EA226CA7ED0A1
+:108190008D27CBF77949BE3C42AC4FB754CF3DD188
+:1081A000D2634E189A90FD2699ED4B80E62F9003EE
+:1081B000691A050F98E864C129FF5F3522A2D3E54B
+:1081C000902C989BBB09CB50DDAE9F7A5C6E42D160
+:1081D000AA05B65ECD305C18420EFBF992AED30B09
+:1081E00075E795AAB608D7DF9BEDDB9A210903A0B6
+:1081F000F77F82A743F5C7F7877608B925F725B03B
+:1082000079327A3D11DB9418A8347863EB3697BD48
+:108210003AC5ED6EDCE8ABB504701051BCAA3A5516
+:10822000DF999B43C0E7049EA7C44DB5F8EFA8BFF4
+:108230007AA9D10B58C97420CE66FCEE8386A2D2EF
+:10824000F1CE8263D36E56DBC119E63354AE9F1B69
+:1082500068F0B4294C40379F9249999A83477BED47
+:108260008527091C60041080C52B3CE1A8C7AF948A
+:10827000613BE4BF568BFE17F7C752A91BFD3C6953
+:10828000A632EFD90766CB09C6CDAB840C74F7EFE5
+:108290006FFA38067D366718EC9ED26C807871795B
+:1082A000F36CB68BDA4437D8272D5713914A76E70B
+:1082B00082F105792FE8EA441C06F6BC25A1382690
+:1082C000080273B45D0438368D3D04574C12E88AB9
+:1082D0008A95E5BF89B8FA9FC39D17A51ED33EE4D2
+:1082E000C59A3C4E4357D405C96EFFBB01B480CD3F
+:1082F000A51FA74063DC53B4CDF7268855985B7261
+:1083000049F89B321478211A388F07117C27C54908
+:108310003E2BEC426BAF17EDA8DA6E3EE6F6FFE6B9
+:10832000EDE7E17C54148315C68D8ED0121326DA46
+:10833000C8A3BD786EF8CD9B97FEE0098D9A4F5E7D
+:10834000F1127D1D42EB8524D2A6F745D5ADD83973
+:10835000F5E9FBE35C27E876D4A44B2BD6BE71C8C5
+:10836000BE4986A90A602B7DF15FD40BC988509362
+:10837000A6FB6D5D32FE338A8241F9044A6BDC5DF7
+:108380004CF0B73586818A6606AD08FF254E71F53B
+:108390004B2B2638BB28EDF515A229F36DB1CA1574
+:1083A0005FE89EEDBD8A9E975E566F8FCDFA236D76
+:1083B00073B29FF8E9B1B2C065D8832A72F7F1733E
+:1083C000F8DFE75C18D58E07042E4378C4D3A3A545
+:1083D00020F5483FD79C07092068DD6FEEF8507301
+:1083E0005B3DC71E44722843021F724C8ECDB09D68
+:1083F0008D0E9D3D5C54A5A912DD09D8C25C5223A7
+:10840000E20A98BBDC7DBDDFC83DCC547F6E77614E
+:108410003FE310EE451D2CAA0A72F7C06FD09750AB
+:108420009645808CFB9E3700E547A538D6F2769AB4
+:10843000B79DA13ACEEDC2798A2CC52A5C0EB92D22
+:10844000DD20A2AD9B931EBE24AECA4B880C85BE18
+:1084500008258D2EC3306F6D4C0F2C7A2B082A0DFA
+:10846000CD1343E46397830C1BB12433BD5AD9BAAF
+:108470001AC0534AD7EA86A029E0EE47F90BE8EC88
+:10848000C9A67A397F2646EFADBFB2757C3A86FD24
+:10849000AC71C9E06156F4BAD872285AE30CC9FA33
+:1084A0007F0D9676EB60E9FAA07CB06FDE7E7A0DE8
+:1084B00010EE8B99BE76B2E43E74ECAAD06FD61B58
+:1084C00085CCF829F6D8D723801F0D3FCAA201A377
+:1084D000C2B0889E97F1DA48BFAFE1A3612301CB18
+:1084E0004BDE93E208A3D9C631F72CC8FFCC27B0E6
+:1084F00014055B5EF085229DBC4D4DC6819A0F9D93
+:10850000DAB8F812AF5A1D6C9E6B8734F16FD37ACC
+:108510005915586B68606B9E2C1DD2797EEC652EC8
+:10852000BD506D138E1F3A8FA0A02186EF632B885C
+:108530001902687176DB1C3DA59FD9CB3F7943C0FA
+:1085400008BD6B0D89BF79191E277D9767C36D49DB
+:10855000E7253A2BD85CF89DC7B5B62071212A22B1
+:1085600097385B27C9F2AA512CDC0B50E6BFDD74AB
+:10857000AC114FB900D82F286812ACC718C9860CA7
+:10858000DE26B4FA0AF67CDA33D8A6269188CAA584
+:108590007D0D0A398504504C98B0178C7A440E76BC
+:1085A000B9FEBC454EB1AAC6EBEA0587F6D95A43D7
+:1085B00072AD4283176FBA38E31622347E6E85742B
+:1085C0007149994DB18EE664CD1D4F243172AAF0E8
+:1085D00070C700CFACC436E4EE81CD63CF5C528F60
+:1085E000D23219FC25A370A0B3F03FF3940883980E
+:1085F000250E43BB40BCE42B3D4F9F41BD2B3218A1
+:10860000CB63097B1FEBC3BE42182C383B5AE57E77
+:10861000BB6D4A55D3A5429F674AC6A25050A1B927
+:1086200074616CE5BC20C99DBA6F29AFE8A640749F
+:1086300039DAABB187B47E1C2C2DC4272C9F3DACFE
+:108640003E08B8B9F87266F1B2203B7D0E6E364D29
+:108650006280B038AFC9E958E11699290F23D432A6
+:108660008F7152751334B8C92B9A3B547095039F80
+:10867000EBC29C102D95C30830356AFD8E2367EA46
+:10868000FD5505657C6246DE23100C86F067E767C2
+:10869000FA2761CF14D553BE904CDA0340D54F185A
+:1086A0004804C52191D18E1F79AFED75F5A2A6932F
+:1086B000F11942BC51CCD74E7CAF692C8CCC3B77A6
+:1086C0009FD83D945706B2A1B281C02CAB4A0A6232
+:1086D000FB1CFB80503299DA8AC1EB57EBDEC520D8
+:1086E0007E72FDFF4D60E35E6F95FCA988A63E4F4C
+:1086F000E1456DA9FB3F4C838B2C615B3FBE7CCB7E
+:108700000551B9762E2BCD2B127D382FCF28EDBBFE
+:108710008B86E90F36C0B8C32EF61BF7C2DD13EA0D
+:1087200066F3319A79038A270DFFEA54B03118CFE6
+:10873000EB3F38D2CAB0513E01FF0E3A512C5D21B9
+:10874000814C4CB89A43BE85E491D356318BD2F913
+:10875000AB13B9963DC83CEBE604C9EB18EF0EEF3E
+:10876000C249F0DE075C92FFA2A47E473950215F28
+:10877000E80E5D22632C0545CCA5CA723ABF1117DD
+:108780005417D72141E923E5FB27EC626B63247A78
+:1087900012D2A3E89F1B6CA4CA2BD358FF4950B533
+:1087A0009F833A965F127D83DD861B2AD2D94F1FA5
+:1087B000D72BD64B31E14EA479CEADB5B60945DF06
+:1087C000212F401DE9DDBBFD70703DF8B54D5E4DBC
+:1087D000FC738A26412BD399A8CACDAA9020446B5A
+:1087E0008692A87DDBED09253672C46C0C6110DF22
+:1087F0007A072EF1B20BFDECFDB5B869801A512055
+:1088000054F703E716865543C50E9F3DDBEF25DE83
+:10881000E3AB1E32B6F3AC87049D9A140AB4EAE4C3
+:108820000EC1F61830615F56D3D92FB117B36A86DF
+:10883000D04D8C2DA34064B0C7924C5C82E7D0250C
+:1088400086F8A0772069DA59524BAC63D60AC04B40
+:1088500055C023E431DEFB207E9F0D5C93B58F4233
+:10886000E665ED547E0F57613A0F1AFF0DD353970B
+:1088700060AAE83E2912F3ECA102113CD4E1F856BB
+:10888000AAAF3979BEB88E7E2AA855601DD88B1C38
+:108890009F36A0CF775C8904A41223811122DE2F9A
+:1088A00093067D924F077DD38773F04BE9EF3AA98A
+:1088B000DDAC702F89E394E6087B3DC2B52DB24450
+:1088C00030FC4AF936E83D5193998933604FBFA691
+:1088D00079DCF1E2CF28C91C42A54012B000A05EAD
+:1088E000D6B608BC35CCC5397352E6F45844FFF00F
+:1088F0001B8CA86DE6FDF13CAA13B464811DCD115B
+:10890000255A923FE62175CE3C13F9F2485526C30D
+:108910007307A02FF30EE1C7D9686064D83C8C6858
+:108920009552692EFF5B1E7712399F6B142AF10F47
+:10893000D8092AAED139DCD9F012B235BB9089B64C
+:1089400046E31B3257B3D5539B5A397C86F547B261
+:1089500048B5714B5BAD2895B24FF1F52F1A1F1D2D
+:108960009EA278E5E5BAF49A24A301813356CBF1AF
+:108970004152B3C39B7320B55CBEAEC87C614BDF74
+:108980002B2970ED2467AC34EAE86D1ABB0950B7A7
+:108990003FED58D81DAE5F8E76446A4286DDADF954
+:1089A000EFB1974A13433DA978519F7177D278C5AB
+:1089B0008BF08EB498D77CC732C15B37A33C53EAA7
+:1089C000E007F52A176BF9E02FDDD6EDB0696E5E92
+:1089D000A988526AEECB7DC22409C637E51A5B0727
+:1089E0007A91181B99911AFA25963F5FB8F0ACF866
+:1089F0004D8A510F4602DD41C12EE7F22362C114B8
+:108A00008C45E4A39D9B5C925B3352DFD24E2110D8
+:108A10008978CC155033E2A560EA2AD991CCB5ED1E
+:108A2000C3B572723CD84C48D395CAF0F5DF988A2A
+:108A3000274204C057727E86919D05C1910025583A
+:108A4000E04C9A447B583073FD552B0126079F93C9
+:108A500041C08EF2BDC7E390979A157F7399AD59C7
+:108A60007355F637715ECC1B0ED0BCE9013816BDCC
+:108A70000714C8F366CFF67B61DE3716ACBF7D3BCB
+:108A8000A32A0E2C63821B020AED9C5651AA141DC8
+:108A9000C8D9C583A20D081F5C981F0F9D0F926057
+:108AA000C8A808F10BC18A6095331FB0D44B95312B
+:108AB0000D87ECBF90502F9C416D9BDB59AAA933C9
+:108AC00006EBA77925F33C4A0082C08FA05E60FDCB
+:108AD000B6B98CC4DC5237DD6C2B0A72EE956F216F
+:108AE00058A8E0AB6E2E23B578684703DE975B1C71
+:108AF00076EDB14300CA919F68C9FFB098ED15515A
+:108B0000CFBD808F4147CC152703C93A4783B0C3F7
+:108B10003938F4E5660CF1C3FA63D724AEEF45C0EB
+:108B20007C9FDF81296B8150001297460458D760E3
+:108B3000D1E0F0F94342D32EDB6AC78D7F73A78162
+:108B40007C1D6A7DFE981F3D9423A68AF688C6ACDC
+:108B50008FC53E372A2F3D45A0873A91CDF008AE0C
+:108B6000AAFC33F0ABC2DA4EE0E9F097D6B6CA1EE3
+:108B7000066DB8E187F104D91B672CAD799EA2A0E0
+:108B8000DEE64694308C61B94AA4E4DD863A771B70
+:108B9000E8DC0C1FF564F8888F9B08711F97C4FCF4
+:108BA00071A6F3DF8B58B7118AAB1F25B857372C46
+:108BB0007EB968AEC5DA9301D65944DCBB2D9082EC
+:108BC000C496636F4B30540505A781651EC243DB15
+:108BD0004DC5AABD7C8F9AE3776EDEC8F6E7141CFC
+:108BE00001ECF2D37B1AEA0992C2542DC24C6459AB
+:108BF000691334105CA8A48A6C2D66A03143EE2260
+:108C0000FBE1ED38C94C59373E5232A38AB37F732A
+:108C1000CB650458C29CF89FFB7CE9881F1D0C861D
+:108C200086E61B2FF013716B18DFA48A279B01982F
+:108C3000176972DF07E4188EC1B86C3269AC7685AB
+:108C4000977921C3216EA0D00772A7AC146079F97F
+:108C5000A87E07E8004872AB1426228B7A3C902F3E
+:108C6000BA3692101C52DFF0B237E9486C29F6BED2
+:108C7000DA54D6AB64ACBF847B1E339ABEC736DDF4
+:108C80008FC45F9401CADCA541EAF66FE2724E5CC4
+:108C9000BC86046332F6FFC03E235973DC44115591
+:108CA00024FCEE43128B81A7F49385B3E2CA09E05A
+:108CB00001D81B9912281BCAE2E210784683342798
+:108CC00040ED77FEE94AA1558D54DD2C4A1C4878C9
+:108CD000335356F65264566A86BC8A282C03D592C2
+:108CE00003BB95569CD377FE1EEF05521FB977FF45
+:108CF00018AF5A7614546B94440D6E121B86007193
+:108D0000006EED19D715F9987E1B22AA3EB59E87F5
+:108D1000AA0320C50025D674DA4EEA2C3E879C743F
+:108D20003E509750DE770DBA67D7D9F50ED1035371
+:108D300006BDF1E88604D295B350C14ECBB78ACEBA
+:108D400002EA64A9AEDF9FEC5575D8312BFA0D5AB3
+:108D50007E155BBDF678B9CE7BE28567EB52DAAA69
+:108D60007211D6A85078A0E1E758FEB777C75668C9
+:108D7000211697DD47106119A358DFEF10EAD18C57
+:108D800087E1F01E1C8C865A112F934E6D47B28CD2
+:108D900008B84B65074D6D0AF5FB197759FA513044
+:108DA0009C382CCE52A682738E88207486BD06E233
+:108DB000FC5320DF9F2C084FAAC1E087819E648767
+:108DC000FF0B528CF4D8EB4E54B836E7272A21CF4C
+:108DD000EC2A56609917F53A3CA6C8B25692A3C63B
+:108DE00083E532D757B6DA297FF057A16FA2B1AF2A
+:108DF0001E7C777AB4F11118F486FE2E5156DB23CF
+:108E0000D2CFE7A19FD9520E07F7330CB7E4051074
+:108E10007347A25793BBBA5733B70DBCB8D5B0CF81
+:108E200017970E13DBB669CA3E0DFBF957B0ED027A
+:108E3000F725A5E9D0252840A82332A8A8BEF53DEE
+:108E40002B82C2BBB17CBA17C861CCAAD1D7BAC930
+:108E5000296BB37BD534F4084B2681334A11AB68B8
+:108E60007203481246B10844A422462BB23883EB61
+:108E70007FA3F99587E4937862577E209CDF35C7FE
+:108E800071FD7726EC36F4F63F7A01EDF92445754D
+:108E9000871E52AC1E8BCDEB4113BC924A88ADBCF1
+:108EA000BEA0B057253B362535B91457ECE31A4F11
+:108EB00063BA0FB18E5B93F2F9E1A95FC03131362D
+:108EC000BFB0B26A63C79761D7FA62AE4254E74057
+:108ED00025A5A18DC83B06188C03EDC30EB1AFA527
+:108EE0001CC933C35BCAF00512CB45F01985CB54BE
+:108EF0004124436D5C6BC664188A1B9A638DE8B28B
+:108F0000E19B63B4FC0191DC0A2A3848FF566551A5
+:108F1000E5796E2E472E1984D93B8A5FAF8EBC4807
+:108F2000733E694E5F5EE6B1599F28DB725F856FC5
+:108F300022A35CCFC9783672A671119453534ABEEE
+:108F4000198F934564E20BDEB9789425F3BE3CD5C6
+:108F50005575D886BE476F7F813282CCE3859F3AB4
+:108F60001D8845D70A4FA605946B116FBB02F253BB
+:108F7000DDAB0BF34BE3EA5879DB5D98A38E08C8B1
+:108F8000AC99F9314C35856125C44B5B646FF5FEB6
+:108F90002A8FB60C4AE96F3E1138EEEEF33BB96901
+:108FA000E5FC1B283F2047CE1C968589B3373FEE52
+:108FB000E799A5F7C70B5E80C463E322B2352E8024
+:108FC00085C30BFA994A9CAD9A14417B04340F0374
+:108FD000040887E1F7F087DF892AE6FE0726677233
+:108FE0001F86947381B33E60B6BF9A0B0B4DACC520
+:108FF000764312E5C62A25048A557A8EEB6ED2A1F5
+:10900000A8BF9A1F14B36E9ADDAECCA000BC7E0040
+:109010007C0C3B062BE1B7A185AAA64272AD5F1777
+:109020009C235D7423AB1CDFBD1F4D4B96899507B8
+:109030006826AF29779DE2D94BC427B0A4EECA2F8A
+:10904000F9DB77C8510124250CB6EE732021C15FEE
+:10905000579AD48C9235AECEC03BF051BE7290ACD4
+:10906000EABAE1359749B3817BC59AA4EEBE407D4B
+:10907000313A07CA362DD4AC8F7045A2A895D0FEE0
+:109080000A50E7DF1EC871607CCBB608D199407BDF
+:109090004862C77D572CE6AEF3B959F6050E0F8529
+:1090A0004D01F7575DBA83890351ECB3C4F7F99DBD
+:1090B00027A8D656EBDA65584E5227DF612E6B6033
+:1090C00064D5782B26C4200C9CC561FA8315DAF18F
+:1090D00015E7A0474624FFAE3F1D5534A5BE36A078
+:1090E000AFC5587D0868B422696C6342EE1E088BD8
+:1090F0000B6BCBAD3833591CD3E781F53E80FF486D
+:10910000107D5FB6A7B758B04ADC28A6DBF5BFCC08
+:1091100094428E55132BC1BBCE3B29646706510880
+:10912000B5727CA22732E4E0D5700D016533B83109
+:109130001151A3912EFCF535964713906F6B06C81D
+:10914000D6AECFE15411ED4AD0F255F2E63C9F077E
+:109150003394FB012F07F4E80857EC3C70666ABDB6
+:10916000D99868B7AE0A2747255B7EFF7A6B46160B
+:10917000A1ADC1F705648C59A89CFA000BB8A1BB3E
+:10918000724D94AFC3E4EED839DC9BBBCC82D38C58
+:1091900091EF223A9A6833353F1D6584B0CC4A245A
+:1091A000F9A4243FBB547C6B9C44E91A3BCC11D4FA
+:1091B0003B69192C44DAAA22F7BCD17D071644F189
+:1091C000ACA4A19BD8A7B7DE851F73629A798FBA2A
+:1091D000D0B49F2239972565792980897441BAC80E
+:1091E000370B3B916E7212837A4A2A10BFB6CB704E
+:1091F000201DE8096C1DFE89D2C2841FB325DC57EF
+:109200006404249B91628CE662968B29FAAEA27468
+:1092100031A3EC6D1F287833E3A1F53ABD0CA521ED
+:109220003161C5F2BE1134C9A14FF6B6C1ECAA95A1
+:109230003AB26189F407CDE9CA75F92C9737440F22
+:10924000B909275EFA43403968169BC5326C0EA8EF
+:109250005A1414DE5CA5D3DFE7334426614377FD5F
+:109260008F9C2356E9F7AA320B6ABD678EE4020B86
+:1092700067B6A61680C75F72583D0C9FECB9939BEA
+:10928000D92761907B12AC3C5594C860BFF726E8A3
+:1092900056B8466C122942BD5A4E8DC87590B3DA45
+:1092A00076C39A70A9E216F0714F12A4372E2E33AE
+:1092B00017C9556C2082B3C86344705104FAFC2767
+:1092C000556724D2FD5C263092C3530C81E874A705
+:1092D0002DC04D3895E72BB6D76B902B4CF232C78B
+:1092E000C6BE9AB2A94CE71E08CDF7A2074E25A428
+:1092F000F0474490A62466BB4522F75C632E6E5E61
+:10930000B8103596F16A84E470B0EE08B852F7E60A
+:1093100065ACB908671B1471472F225AACCD217771
+:1093200097ECFEFD014777A879632F653FFAF0C3FC
+:109330009CD78417100D6CC37F8ED1A77B6B33D75E
+:10934000FDD36FE043A4B506E195F1C582127A9B87
+:10935000A844430C058F4BDDF104F3A4A8790A3F20
+:109360008A06181019A6F72A2443C9FFA40EFDCBBC
+:109370000AA5EED7B32B9F6D626D8E8AEEDCD234D8
+:1093800066ED4431B8DAF0B49AC592EA8F71129A58
+:10939000F93CB67A1E4D01D5C207641F914DFDFC04
+:1093A0008466AD5064B1806A378883737FB71BE7EA
+:1093B000DB65FF9956EA75898A344B85C4DEF0EF88
+:1093C000E413116B99371BB3B299F6FA8AD5F1B150
+:1093D0006E0FC1ECB9C78A0BA3BA3786166B862607
+:1093E0004FBED27BF6E211C97B9803D9C245304CFF
+:1093F000E80C8ACEB1276991EBB7EA819F67864D69
+:109400009C51DAAC5DB1421F5A76ABA5EDEB967B71
+:109410007A1C08FF0F8C888C6712464B1AE166AAEB
+:10942000FD67D02393A0FB05199166D6635D2BE2FF
+:109430004C8C3BAE710A1CBCF57E61CC0219757771
+:1094400058DAB6472A7D987F1E32FD6AB1A89495F6
+:10945000C48F2B701D56086C38E2F0E6E8C922CEA6
+:109460007B1C4EF5A09D4E331D6BD032F59CBEF893
+:10947000900DDAB8E529BDC0AEF7619711D95B123E
+:109480001E51136C0226D9C800C06633C1A2216ADE
+:10949000A5D139B9CECBDAD591220416DF1CB3871A
+:1094A00064F51FD3E27DD2968599D2D08E45A6274A
+:1094B0006FE8CF34C64E7BAFF5B849D76ED5E71B02
+:1094C00043E8B4E957499A24AEFBEFC78855782B97
+:1094D000A50F6D10EFD6F5E892C765674080643838
+:1094E000C911FDAD26B31CCB98027C27A2BEAB9B55
+:1094F000AB8448DB60DB0D683A741CE1FE27A59065
+:109500005978A152C62E8DE54EBD427C7531EF8053
+:10951000CBF704E3BA1159704DBEF6E4E56183CA96
+:109520005563D45B44E364A9612C1618FC83199934
+:109530004A39096986F5AD438E21082DB6B4EAD3C0
+:10954000D00D45DCBD3F19F4CD0A40F2C1DC1F3619
+:10955000F610B0FA27185DB46B9E3489E7755EDCAF
+:10956000ADADCEEAC8E6AD1B28208E7CE1CEDD563F
+:109570008300BCA5F7F70B1C09292CF0441809F54A
+:10958000FC21EB944B84E75DC4DE4B80B333F75A88
+:109590005CF6EB401D299A573FA4660FAA2775BABF
+:1095A000694530737B57E60DE41C623BDDDEF82035
+:1095B0004AE8A50542B0030BE05A86AA7F740ED391
+:1095C000E88244F5B3948A361710A050863C620CAA
+:1095D000A291145E43AD7DCC8E4132BAB5A5E14176
+:1095E00026A53924BA3A8915BD8824F678DC451CAD
+:1095F0003FDB5E8CC3939FEF912A07D35F55A5D5C0
+:10960000713932F2005DD6FF5ED03A5A315B4E4876
+:109610009AA82855B829FC8819D52DB7D564D973CF
+:10962000BF6D7D67564912B91BE361D5F98EE271B2
+:109630001AD1F3BCE14238F9D71A8F6D3A1A5C2976
+:10964000DCA66BC7093424C3811C2C4016FF4C5484
+:1096500075F8272B7D5DD0977D95DC02A70F6156AD
+:1096600006603C972618C413CAC4F4422658DF6526
+:10967000171F537B8C127C9F38373392A58168F378
+:10968000E153A2DCA936E4AE2F8D1480440C435A7A
+:109690002B60A2210C728247AB496B6602B67AFD41
+:1096A000AD8C441056F678F1BA184E86407FE2230E
+:1096B0000FF62E10DD74D5FA6D6D245B8B41BF9DC6
+:1096C000C6B9D6D4A29BB27088B96B0462279DBA82
+:1096D000C8C96435D73B6F59C8369717FB14CA0FF2
+:1096E000531D9EC8FCA69D78EAAEBD153116171411
+:1096F000EA2AC2D633B17FC992F28735920E62E967
+:10970000559E938B1CBCFA5354DB988EECF822E2E6
+:10971000CA83E0BEC6B32E259B4229674F28191382
+:109720005D1ED59CBE9E944B5E7949BAA67F1DBA3C
+:10973000E717D09B09954CB08B65B5CB547529497B
+:10974000E147EC960A9A5761B716AE248749632A17
+:109750000EE304339DA08456188895DA62C0A6ED06
+:10976000997F12EB08E707041278D053D293DD20DB
+:10977000FEE9089D6437E4091AA12C9BEB19472CDC
+:10978000A7C27F9068D9668C7EA2952198DD9A1039
+:10979000D7D39D3DF5C66F70492C61FC31F66C50F6
+:1097A000E8B443B8AD8FEA55D0335FE28D73DA2D5C
+:1097B0008A8C7A74FDDFDEB19C0A662512527374BE
+:1097C000E96EE6DB04B8B218096DFC06B403D543B4
+:1097D00063218DA49085A9AAA5BE9D0A1EB926A1C4
+:1097E000BCE705EA818E99096DD73426C4356A1025
+:1097F0000A162D81124EE1407DBF80C8B7ACC84823
+:1098000019445B36F054541764C5028A85F036C992
+:109810004599AFC3A391E7F850E248A02608D1FAD2
+:10982000FBC3071AA01E2B5F43BDAD81E09E382C01
+:109830006CF9F8DB036E3F4DA383F46BE50486E21D
+:1098400037E6A24A7D7DA08F0D9EF2EF27D6E3A7D3
+:109850007BBE331B65F8900926930B3D9B4D58D872
+:10986000EBBA8E139D2DA6401B205728F9CE128DE2
+:109870003997BFD3596D76166E8EB52A476A535401
+:109880005BB1078C686C77E6B6B7834279861AA31A
+:10989000BF9CD45D48CB17F2E1AD97D774CF71C2AE
+:1098A0001FF445AA47B9254FC03C9CB1D36BF17A50
+:1098B00039207940D98C6F35F750219E1CE12AFE62
+:1098C000335EC5663A4AFE41E141AC49350A43354B
+:1098D0002313E072605A9EBDE8CE3DFC4A4F95A12D
+:1098E0001D1D82005E7F45E8D64627A5C3849F3DA7
+:1098F0004FA4439587ABE7EDDAE70D76964C7D2ACA
+:1099000057A4D379501D07A002C1DD7F8438EE0C27
+:109910008FAB00EFE903CFB3EA25F58ACB68B471CA
+:1099200085962C4DD6F2B391D3894A927371CC5D52
+:10993000E7ED25563EA107505AA170E2D058604D80
+:10994000ABFA97F98DBCC71E4DD57ADDC47D7A5927
+:109950002F6F29C7EFE8F90EEBF77522CD4C1A9D52
+:10996000D761E15F7433DE876958610481222AADD3
+:10997000D9099A2EBC9C979BD0C95643F3A594064F
+:10998000C72AFF91E405EA45E7E3879E9464E7135D
+:10999000B55FCBD888E70D96B1420B6226239FE7CF
+:1099A000A04469F8515FFE2535D486190A2A82FA47
+:1099B000818C6B937F415377E6309ED28556BA886F
+:1099C000ECC03DCFEE48DA263AD38D9F6EF91EB437
+:1099D0005A149490DE20644FDDC1963B3EC7440E7E
+:1099E000DC2B2F54BF10813A7A5981D3E0D9149CD3
+:1099F00010C76EC150992718E631789162A839F6E0
+:109A00000F9CD78EB9623309DC7C9D94CC7B19F115
+:109A1000120D3E3ECB48D3DF43CB0645DED5CDFE0F
+:109A2000ED59603F2B7B54E9B1540E692B573D151E
+:109A3000F5473D84B2704735E2E0492136DA8D3F83
+:109A4000E8412AA50C9C09FBF8997BE697C053AB2B
+:109A5000A4B678BADFD5E1BE68B7C1355976D82744
+:109A600016A9415DE49E3A4323A659B6B0FE6E871F
+:109A7000CF303DDB6F4EF8B9FE73E1675B48E0D352
+:109A800059F41809B18F715F1398B6956D77CD9120
+:109A9000B5F6DC6663F3D995C36F9E03E8171D4CDA
+:109AA0004FA32DA385413B3574095712DE42D3C025
+:109AB0008D48017F1C7DC2B11F0095C5DDE73EA525
+:109AC0000438AFA5AA7E0049AEC44F1257C4AF5F99
+:109AD00023202B17A3D38B2398C038A4B63896A382
+:109AE0001E41796B7DDB648ADA6F4B54A64100CB53
+:109AF0003D8F3C5D46FB14084544B8DE038CB1C87D
+:109B0000578AC9624174908D40D3712B8FFB795372
+:109B1000CE999E23F85408190AEAF7C7BBDAF8076A
+:109B2000CDBCDD47B2B43AEDFE580694241F90B97F
+:109B30009B37F0BA2597467329FB9E64C5DC77589E
+:109B4000CAD27C9DD9F4CAED8D87C2F0D3CC5233F2
+:109B500025B020ACB08EB61CBF2FD27F3D6B02DB90
+:109B60000371C55CD838C8CE9D26A52A34D01072A2
+:109B7000F5B032DD75077B54527DAE05E73490BFFA
+:109B8000C5F7E13744708269F786470E0A92E48888
+:109B9000D46DDADC2C74CB602860633087ADA4739D
+:109BA0000881159D82BD5D3907BCB70A9DEBBCEBF2
+:109BB00065398022084866C31536F5BBC8E71F160D
+:109BC000959D665CC2969D50CA471DAE43011D4ED1
+:109BD000C1D01C6C49F696A99CD8BA46A405687EEB
+:109BE00082741D7AB4F181940038E6D19A109BBF3B
+:109BF000DB32981B4218922244068FC38059618E33
+:109C0000024F8CE5D349A5410D9F836B91E890A04D
+:109C1000874F448EFED5657C178B0B468E224CB643
+:109C20000339D7F7DDFA589FA17BB98AEBFFE5A787
+:109C30008064E266AC113701B632B7C559738FB88C
+:109C400016613C41666D76F54911FC592EEDB8DC84
+:109C50001EA901A95BFEA40608B811A40409DD929F
+:109C6000AFBA57D355E55FD4587C2FFF65667A4F5E
+:109C7000E6C37086A9F0FB3B7944290DEAB367235C
+:109C80009AD03F4B17A28B39682D39DF02A1735E42
+:109C9000F8BA0636106D638B088CE149126C7CB003
+:109CA0008337D1FC7B7B49084D69C60A1FED825E74
+:109CB000D1666B8CDB821BABC217E09C026F21EE7E
+:109CC0000D33597FB03DD982B82B82E5235EB8921F
+:109CD00048D3E6B565AB385E260E1E360549C4E5A9
+:109CE000FD05720381B434C0602603E1980F8B8FA9
+:109CF000FBEDE91006179C1F2B617072CA85165385
+:109D00008D726B17D01B17063143392285F167FF1F
+:109D1000B2815C06068B08FD418EBE639CB5239222
+:109D2000A5B83136907DA791E94D75BC358D4C664F
+:109D3000F320E05A8313A6F49D798B5C0A04ADD717
+:109D4000F950EB630B31FEA95D33B48A0FAB8D176D
+:109D50008F7A641B1509693949331DD1F4A610495E
+:109D6000B9DB189774829F70389E44C61800BADC1D
+:109D70007E5D6B314B1CAE843143B9223C01C37113
+:109D8000620FC710321A294DC9BBA9FE2EACFCA226
+:109D9000F34D038656344E48D8E35ED83EF0BC30CF
+:109DA000C44A6FC3EE3948B83A2AA152BD316C9209
+:109DB000458553B5391FACD70CBFE960FC64CD4C69
+:109DC000C74E0F0799330E6F6D6BF873DD625D4CF4
+:109DD0007F9A98E2CB3F95856BB6945C904ACC997C
+:109DE0003F1F2D26D1A503B531817877A3311B52B2
+:109DF000E9D9A63B6840F75545F8D76B6CD84324A2
+:109E00001CDB7B4D63D7A54319C74CCA54FCD659FC
+:109E1000BC9658C3DF238F97B1FBB67606B733E104
+:109E20002EBD10A55562D7FDB5593CB683CFB5BC44
+:109E30005142D3915ABAFB8763651353104212E320
+:109E400013AC1AA45AEDA915E27566EDE2D3C84425
+:109E5000DE453BD66B442EDA34664C287D1096A244
+:109E600066B09EEC8686C70605F9864DECE1777FE5
+:109E7000A6C9312B8D7D1EDFA01E7B46E247B69B17
+:109E8000F3C1B70B79FFB31D6F8BF440CE8C77E92C
+:109E9000C84D3E5E1BB176822C11AA1D79D1489621
+:109EA000012F2942F03ECCF206DFB1D84164D9FC43
+:109EB000FEB5EA15F09813BE750FE02862F81CC3D2
+:109EC0003247F6154D27F505620258C5FF119B254F
+:109ED000D50C1CF317184D946D4941133F795499D3
+:109EE0004C5FD58541486D3020A406ECBA2EEF2991
+:109EF0004BC86803B726E03B5BD00D7EB99B39C8E1
+:109F0000CB8290FF075E2DA435409186D0E58B91E2
+:109F100078B206887226827D071ECDBD0953E0B354
+:109F2000DC2F5971B1B5AFFC6174A3E3C022A2C7A5
+:109F3000948998A172F4979784A44157BE7FB94C35
+:109F4000DAE8FE06C431E291BB9B34BA25A1BB21FD
+:109F5000F657D39288DFD396726F4F195B86D4661B
+:109F6000E2AA9AD62B4E9E56C05114C37CDD9F7830
+:109F700024801B2D57A927E278BB3EE96082425A14
+:109F8000B1C4A213EB8B41226B4A7D43ECE3E6673D
+:109F90009D37B47702E6AC4C91EA9FDCDB7C14067B
+:109FA000291604C1513E40A9289F022FDF467C900C
+:109FB000BA6E60A66D1ABB82B6A15395259520CDC9
+:109FC0008986DD86E11F72E94D09031B862B110E80
+:109FD000DC955391CA39C41BD236FB1D6271284CE3
+:109FE000F4CD014ACD1AF4B7DACA3F67F44D54569E
+:109FF00085EEF3FB86593D0427B34D3DFFD288C75C
+:10A00000E4743BA3B711DCA9E4E35E1A49B6F2217C
+:10A01000C9DD617BED5FBE5881993699AB403FAD9C
+:10A020008BADDEC59E7A89B00AD0A1931AC1AE80ED
+:10A0300028D1B57874ECEA51FF5BDBE36392BDEFA6
+:10A04000D69085E4967ECE984D5ABB3F4B1FACBB55
+:10A050004FB0AB4D9CF079D4265F733CD036419223
+:10A060006311314E46E3A29B3E79CF1D6F86048F6C
+:10A070006FABC02E20D534B3CAEC04771F01B1F604
+:10A0800053BDCA8B842F52E9763443AF8EC2379EBC
+:10A09000841712B2444B2E98D705ACAC6822C4D3B7
+:10A0A000F1E11A304C54CEE38229AEE4488EF30F2E
+:10A0B0000E2A8CBB9F2CF7D64230DEDC0A91F304CB
+:10A0C000DE308F5C674A17466FE4504BC5201B4358
+:10A0D000C198D2E0DB305330256D3371CFEE5A9A00
+:10A0E000043EBDA81E04D44627C4BD6F57AC7D00F6
+:10A0F000EF15BEECB71C715ACCB1784A115C64B94B
+:10A100006131325988665713AF6C388D53D8D337C5
+:10A1100076714B3F47EDE49EE5FCA205D6ECB4A476
+:10A120009B115224E5EB69A55222C047AF547972C6
+:10A1300059D18709DEEE2D0584293F15849A74DAFA
+:10A14000FCB114B4BA158DA40DBCA2BBF14C176FB1
+:10A150007770A98894F49E3B45A8A3CB7C5A05A4AC
+:10A160000495ABABB479B372D2A12489968BB67443
+:10A17000CB32114DF963AC1E1C3D5733B660E6DBA4
+:10A1800001C40FC0C95D5428507A052CEA6D239C88
+:10A19000FC9B2FDD6017B2F57AC08147713BF088D8
+:10A1A0003B656F3CB494D8675E5F7CD7FEBD48CCFE
+:10A1B00033529594991D11D161AF3370BD329BEA32
+:10A1C000C987036435490103EC6A221ABDCD44CA2C
+:10A1D0008D3EB340A9270A6930B1D45E730E0FBD1E
+:10A1E00070F36F2773730FA337ACC7BB915427B7B6
+:10A1F000A9D062E404C71606EA422E1BCB5B433E9D
+:10A200005AA601ACA320C523481B3328E5B5ACA151
+:10A210000E384D57B77C809EDDD01BBB271340788E
+:10A220006CC534DFCF4C0BF1CC9AC2FA886F2A761A
+:10A230008D53C3C5ABB1CD3323A1E6493763350593
+:10A24000A568DB0638AF55C5D8D06BC842C8DA2F31
+:10A2500021E3E16A7F885485CB31F546214AE14C00
+:10A26000A8C8EB3C617F6E12F872145A52C099A9CB
+:10A27000DF9B7EAE67404699C10F8476523C2CD15D
+:10A2800084D470E3D2FB175C083AEBACC74888F47F
+:10A290005A9794C791B776FA1B33E7429964E09EC8
+:10A2A000DE697BAE6E0EE1D97454DBB5BA7ADEA8F6
+:10A2B00093DAF0416B0F4C19BFEB06FE0DAD7F3DFD
+:10A2C0009557DCF70E1485DE9249DF8BA1BCF6CAE8
+:10A2D0004B0B18E2A87EB7C63E195187F71B52C830
+:10A2E0008BD3A5741CD7A703B7BC16B18BAC9BE06E
+:10A2F00020F9CE2D036396557D2D67C62F248089C6
+:10A3000094F8E480F1E1A136CE1B5971A58C2A6E38
+:10A31000F81CB8DBF14ABE2DFD22830756B8BFBB3F
+:10A320008C5585E05F0AE6B499A54EE208EC7840CA
+:10A330009E9BC8794468F355664254B3D27AF201C1
+:10A34000006F7ED7BADFD1C7ADCED07E2A553A5046
+:10A35000A39F528C62EBDECDBA8CF314C2CC158F66
+:10A360008D04A8F024A37E25E43796BD08D73EF3DC
+:10A3700053C88CD9551FE028F745CE8190744FC43F
+:10A3800090C2B5DCC14E73D1E57C9C46D5FEE62378
+:10A390002EF561CECE08ECB2F360189F43349F587F
+:10A3A000EB48195207551F5E79CEA76EB6DAD06317
+:10A3B00048498197542CA5665492269B67CE55BF79
+:10A3C0009E73C7B1D538876355E047F9B0EAB7CC7B
+:10A3D000C569EE571118BFAAD664E467222457D482
+:10A3E000D36426C31DA34251B85B7453AE6733FADE
+:10A3F0001D6230EEC987C3E37E8B98654B56E676C7
+:10A4000039FD89B35BB6AE3440B267CC21A23F665A
+:10A41000D482CDF216224DB593358403A7EF556E45
+:10A42000197CE8A643173CA382668E4DF0C657F808
+:10A430001424FC5F52EABD3AF09558C600A40ED829
+:10A44000D5D1548CB85173ECC66F3BE237226135DD
+:10A4500015E7BBED85F2153286C5B6271FB4CD4B87
+:10A46000367D5BA725453D92AAAA293546988308E3
+:10A470004858933227CD3530BC16ED1A299FCDAA06
+:10A48000A553EB1473CD821405A7B38CE796FA2974
+:10A49000BAD3ABA03FD1B4954C30D7AB6245C2FC28
+:10A4A000A63E35496D7F856B77876C890AFA6E3DCC
+:10A4B0005B7097B27F9818666B4CF9A98F1C2925A1
+:10A4C000218D41878DB1D298BB082B12F6E94A9CA9
+:10A4D00035DC4BC3CB5E32EFC71A6AFABDD62121F9
+:10A4E000ACB36EB9B4FB9692F21303C415A2CCE3DD
+:10A4F000ABE8AB398DC54D51F91C1F6AFAD9E8326A
+:10A50000ED82BA89B4B7108052241ED9ACE2B36987
+:10A510003429132C308DB7FF2CB688467DD37201B9
+:10A52000F528F325DF05270D0E37646AF4474C50F4
+:10A53000346604E61F81B5801E2A9414872D825844
+:10A54000045B9B57DB74137D4BCF2C9F3D37B6309C
+:10A55000E1F774E225E1A653727D6E9A0D4D973EA8
+:10A5600016A925F1CDC1E266FB4E5D7CD840D91914
+:10A5700029FCF8B44B95A73F255F9E039665E9E853
+:10A58000C05927A4CD7B63F2683F9347453B0E6CCF
+:10A590001A7E89101F593BEEBABC97E8F6373CEF9C
+:10A5A000FCB755B7B2FCFAEDFC63B066A768E502EC
+:10A5B0003F77ECAFA5F8BDB5597C779461EFF47C9B
+:10A5C0009DE300EAF8DC9E7F310161359D478FA94C
+:10A5D00033DEF22FBDDD3BD38A87A725BAFE32ECEE
+:10A5E000D1ADC39FEF778CDD93B9D8B648068564AB
+:10A5F00076F5296BAF44ACEC0911B07CFC5A08DE4F
+:10A600000450F1E1F30148280C90D65287930E03D1
+:10A6100074E8D09AB57FB9DF7D473306DBCE2A21B7
+:10A620002BBEA92EBD040FA5008B1D67790120420A
+:10A630007B0CEA31CE90CED4F4A3123E7FC73A59B8
+:10A64000C5E3B54058CFBD36AC8A09A8B420B0E404
+:10A65000D24E7B2BF9FB26E2C2919600F40B6E7D65
+:10A660002C8F15902D49AE37BAAB7C3842A074EBD5
+:10A670009A4CF59377350BEA781C4D6E5D0D1931C8
+:10A68000ECE6950888B0A33D88B2943BFD91390F64
+:10A690002200AF0FCADD5130F794E6FA3CD4D4C79C
+:10A6A000360584C9D1AAD30FD128CF77E3D045ADE1
+:10A6B000BFEF4F35C834CF9E14FE28A9E010DB56FB
+:10A6C000C9CBB5AE6D126FD4C6342F8172C9F1C932
+:10A6D000129402FC9A9422BD8D0419931EF9B216AD
+:10A6E00086CF7285930BD835044C43AA0CB0E9553C
+:10A6F000B54CE25A2E7F30D732BA5673EB914D29C2
+:10A70000EDA5A83E78EAFAE3F16F205A3BA3D7CB38
+:10A71000892199D586CFFDD851E27F7B677AB4CC69
+:10A72000A94832EDAF7BAA2897CD00510EC98E41C2
+:10A730008A71B4C74682D7D08424C5A7E7A1B002E6
+:10A74000115452120D821EAD13281BA67732F4123B
+:10A750009DA2E5B94A4B9D8F78A535E6DC48474F69
+:10A76000D266BE547A368B868B5CABDEB18ED168F6
+:10A7700096D252D22C3F3A33D72A2EB48C0D63A2F4
+:10A7800087AAE70BCF60C5B8BFFEF4A64C2056BC25
+:10A79000DF0D85B7733DD93C8AFA9C3006165BCB3A
+:10A7A00074433C1C305AC8DA079BA3E7D616DD86F3
+:10A7B000411166E6BC0B12804F91AB742CE79836C2
+:10A7C000A259D156BC9D22CB413BE97CAF085C7DB0
+:10A7D000F4BD4433737568CAA5689A144995736AC1
+:10A7E000D047BFC1150A70C6FDDEA8F1E294D2A21F
+:10A7F000FFE086321444D72DBDB911ED6A7AA67AEE
+:10A80000F1DF725FFE66E4496467965468330102C3
+:10A8100049E8BC1358A66CFA97641F889F08D68A2B
+:10A82000BEEAF452E3B85D7D2C76502C8007D35FEE
+:10A83000B11E8834A805324589AB2067CA191BF8B8
+:10A84000678D54EB5388CA4B1158329DDEE59BCE81
+:10A850000689927195F374CA0947E7E505638AA0F2
+:10A86000CD0678397364676FD90B00909ED39975C4
+:10A87000BDE1ABD1DC2E9C95749C2642372DC12FB7
+:10A880007D251D144DEDFD83B3C9D21164BF68A7AA
+:10A89000B7C2C95D3B713A5BF145F39775B1F78A71
+:10A8A0000629995789CA60654E286F6BE148790A75
+:10A8B000CDC1FCDA1E0E8C06370F9E76ACDE204032
+:10A8C0000EB740A83C4B9F6FC4468DA3CC473A1CA3
+:10A8D000EDD3FF76091022FFF75A15CF251ACD1BAD
+:10A8E0001BCF9F09948ACD988CD0ECF84C45684AD0
+:10A8F0003CABDC34F3818A0CB6C6A6CF046E8E7CEA
+:10A9000064722ADB0F2C58FDB1FAF8422C9F6616B0
+:10A91000F79D2BD0778D93A383286BDD81A65332CF
+:10A920007B22EA811D9F822C001A144E36EB95C8BB
+:10A93000BF18CB5FE1575E23FF9CBB0620BCA40A77
+:10A940000881075044CD174020D840FB04ACB31217
+:10A95000890C573D352DE907E2F01E15ECC3F12AAD
+:10A9600030C52FABACDB7465013C5B6678EABF1B7E
+:10A970001CDB00C2C71A13D4B45BD7FBAFB88EF28E
+:10A98000CC749055194FCF9ADB2CBE86BA562486CC
+:10A990001DFA0C2D0CA29EC21F449CA433C41E663B
+:10A9A00019F642795D4C556AE122DD58C84B58C80A
+:10A9B0005AFE5E2B5C0F70628E5B9F2C88449975EB
+:10A9C0006E624662D79038B4E2641A37F959D7B14B
+:10A9D0009E5CF7D793C6EF6B3505801C03A94B57D8
+:10A9E000805AC7444E02651D1ABC1FCA8873131BC8
+:10A9F000B2725E41909CB2CF82659FC392782DA5C2
+:10AA0000B321F178F0B64531F1BCC17C7EE4F907A1
+:10AA10007A417D5033A0C93C9E4F20652F8D8A7DA1
+:10AA20009E8607B65A3CE76E269404EE4497A18FA3
+:10AA30009231D6D1F5D14452C022A6AB5D25BCF2ED
+:10AA4000F6B237F471BBA77BC1F039DF62EAD36F8E
+:10AA5000CAC79D039C8068C6086B40563908648F3E
+:10AA6000AE3406D9D88790F315325364F2E9FB7CF3
+:10AA7000B1E059870A58F3DEB8644C0F7948DE2EEE
+:10AA8000F46A65F457BD9969E6454A922731B42BBB
+:10AA90008911BB2641E12C6DDCDC0ED3C3A02B8BCE
+:10AAA00082923234BC2B758CEA556F56A57D716D40
+:10AAB000FEBB71F8B7BBC3F9E7BA5281E2FF7BFC7A
+:10AAC000F72B38656CC45151E6A51051D562B0C959
+:10AAD0000E62D17625CC026D3739AF416AC0AA1912
+:10AAE0000A3DF6C52C7EF09B1B19C6238927029BC5
+:10AAF0000F78FC6FA50F41AEA790B091E707980CB7
+:10AB0000BABA2EFD0DD16685B055571A13F2C1B7EA
+:10AB10002946B2EB0D447E040104B97311623C88EE
+:10AB20009132BDC97FF04EF88AC189A1F74E464ADD
+:10AB3000CA2774F5CE0C920495E86B8800F1C3DE49
+:10AB400061CD723D3ADBDCD6CFFD7E12E4BA52DA3B
+:10AB5000321208DF65D00963D88FF646DB1C341645
+:10AB600063403F46BFC4256E006302779B9944EA69
+:10AB70007793B2440290DBB73A144CAD9FFEFC31A0
+:10AB80006D905FE74219902C8C79C5557B1CCAD714
+:10AB90002ECF7CDBB61031DADE34304CFE9CDC503C
+:10ABA0007F8793BA7C87615AB6A372A1F485BC896A
+:10ABB0009D8A954CD706C6E1A5E84AB545AD7F5FAD
+:10ABC00062C096C20562307B7095EB9C86D2F5F62A
+:10ABD000408A86AAD6E6A5C4C2586180B61B018009
+:10ABE000F1A9F302BB2D2ABB894C3CB6F25BD7110D
+:10ABF000474A14CBE7E86C56E6CA045F6D5DC04D6A
+:10AC00007B0724F6555E4B1E885A6D29B90539BA63
+:10AC10005A8D8988CF8EE36739997D4379A3D67899
+:10AC2000B6E8FA3E0FB18172EB0F03B1B1B323C89E
+:10AC300076C155806F6E93ABE7E596430F08F1B987
+:10AC4000F778E45BCF39ADB4F30EC96A69D9489699
+:10AC5000A3EEF31F6AABF2CF833021489F2C4CEA5E
+:10AC6000306BBFFFD8C394E6D6DB9B195A86A1DCB4
+:10AC700068B2AE0B5F77D23F771C1C3E5EDD063BB1
+:10AC800047E31088961835285F4A385E48C1FD941E
+:10AC9000BEF7770C9B51333D170F1DDF0DF779BDC4
+:10ACA000C6DD15F2EB0EE6E2E7EC975ADA67233DD4
+:10ACB0006BFFA56A6DC2B4128CEEFC3EE71CFEF37E
+:10ACC0003C7732A114A9EE4C0EF07679C1016E03E7
+:10ACD0009C60D7FECDF00BDDCA1BE2882E19C7059C
+:10ACE000E603F38AC54EA53B1C2A9F22D9DCFEB0A1
+:10ACF00040A8B6FD8F11A471399226C9AE05DFF2C6
+:10AD000058C1D14DC3B38B0BEDE331F3B3B2D7F1DF
+:10AD1000EA1A08C01DF3CC004013958A90640283A0
+:10AD20005A83C8362F3AD1D2955395DF0F850391B8
+:10AD3000CE3FD839BF71E9CF797EE805F29CC634A1
+:10AD4000658ED9B6149494E911DF247BDB547E1808
+:10AD5000B6453601E3C0130E4ABA5D016192383C34
+:10AD60007673E9C32F27A8DA441DBB49E08B62261E
+:10AD70004BCDE04D804A044158D6B4A57FA0DECB30
+:10AD8000FC27E8C1E48D1D7F40E0E5055E51C4AAC3
+:10AD9000EBC4F1228B6753030ED919E860A108C7F1
+:10ADA000AFA45C3E579EA415AD724D9CDE475A6A17
+:10ADB000707ED68F0B18A931A5CE688691B6F5B4F2
+:10ADC000848647D78CE6551B304359D1CAD74712E2
+:10ADD000FD5F0478114D2ACD5A802C925AE8C8752F
+:10ADE000F7BF33B3E3D36DC3D95A1EE66EAA5277C9
+:10ADF0005A0F5FE9AE7D381BED63C2810CF0186A13
+:10AE000028AEB23AADBA1E99E0496CFB617E466E3F
+:10AE100020BC46C990BC6926473B52EF5E4C8ECEA3
+:10AE2000256D93EF8A506299A5C05589A645E00427
+:10AE30008279EBD90B78B025DB2B85C766C9C7B9FA
+:10AE400012B1A5E67F3CFC06E3B7B86E9206910C02
+:10AE5000586EE3FDDB9D6593C56B177F9F23D091F3
+:10AE60008508F49FCD3F4297BF0C604F14B9D67F41
+:10AE70004BF2BA6FA64D1EA08E68C7C4A96CFD9494
+:10AE800056744E746C34D522BA50FC824B4D5655D4
+:10AE9000191DB4C93DFD256F8FCE3B288B9F7B4B81
+:10AEA0004019AC2D8E4794C82E34083A818207ECA5
+:10AEB0008824F4A9EACA01FC6C84156FC3B55D55FA
+:10AEC0003CC70F58272F9C7E5882673FA18F485F51
+:10AED000C38859548C0F953DD6D2E75919663498DA
+:10AEE000DF5BCCECD3CD2D1E0BB7C55BA52A0FCBFA
+:10AEF000E420361FDF731AA12FB2ADE95230925A07
+:10AF00006A29E9CEF31E7F086C8B52A5865D738992
+:10AF1000CC3E636C8EB3A7742B0E02D58D78FB49A3
+:10AF200036B2C20CC0442FC5303E2057CF95049096
+:10AF300061CD540399A74F9D5D6DE8384A4B3E1B88
+:10AF40008862BEBFEDCBFF33EFDC4858EC81F6A63C
+:10AF5000F54AF7941BC7D55EE8BFE628E26B602C84
+:10AF6000DDE9934189037DAA3D43A3E74CFDD33B33
+:10AF70009B7A2BE636EA52986FC06F45D08A1EC185
+:10AF8000876DA91A4EFF9213AF9ABC4FF2554FF43A
+:10AF9000D2CB22EF9A00828835A964E788E0673532
+:10AFA000AD07BFDC410D8ABF4AA0E6A93C5889D253
+:10AFB000273EC0DCC9AE5F5DF585524276AED25BFE
+:10AFC00024140F7A2542D6A842C3EF03C193B513C8
+:10AFD0006B7D1C723DE93998DD8385A1461B3E5E81
+:10AFE00011256D3B7E8D08DEE39BDE3943D218943C
+:10AFF000C0A203064D2515D48C9A885B52B002126C
+:10B000000A97CEEA9B867B3A668CDF735796029648
+:10B010003C1EF942B358CDCECB434D72B7AE7AC485
+:10B02000EB02580F2264F33A053907B0F10EE50E32
+:10B030001B30F1489F8F9C7702E6B96CB8B4E6707C
+:10B04000A829665912EB71844049F2407B870DA311
+:10B05000E97306CB9BEAE4131C421BC9AF339EADD8
+:10B0600034FC233D1CA20C49E23B707A2D8FEA553B
+:10B070008EA518D0870D4C6C81D216E614450E7A39
+:10B08000113F5A371137FB0386A6E6853A27E2526D
+:10B090009C60EBDBB790C3CBF48F3D3A86C2E0CA2D
+:10B0A00025D7A083DC7260FB78D7DB7A83F648373C
+:10B0B000A374E74D3BB13B4E435E2E486557D364C6
+:10B0C000B70E91FC3AB79348C10558C304B9661D41
+:10B0D0003E35C9D4463DEDCD5572443697016122C7
+:10B0E0005D9F5F73B67E65FDDFCBC1952BB153C706
+:10B0F000F01CAF88DF7005A591A2B69CC0059DCF5E
+:10B10000A43AC78866EFECD6FE62CDA5EA0FCFCB96
+:10B1100041667CA63E5EEA699D674CD94D5D6A0238
+:10B12000DE3B1554E22B342FEFE7F6930588A05A47
+:10B13000E95256EEB64F7E697CC81CA0513F64B4FC
+:10B1400078F59DF47434D635FFD1D131476429DBCD
+:10B15000FBDC70057AF1153546FAAFFC465F673CBB
+:10B1600056B9D0F080B7440C6202C584D7FFB0D87E
+:10B17000A9A918B1256E4AF5F021C3DAD10D1DCA6F
+:10B180007653815DC193F6C4F6625C5DF9F122FEEF
+:10B190007E49E00FA4DBD71538A72697CBB317FE5F
+:10B1A000239BF071B6C8AF8905E8AD0FE58EFEFDB3
+:10B1B000CAFF35DA1003F267BB2D00166160CE5F5F
+:10B1C0006B9875C8024AE8D264146CE6A1D08AF57F
+:10B1D000BCD694383BB981D12A9A2BBC0526CC1F0A
+:10B1E00066C9A4060D2BD1B9390D15707E31D6C1B3
+:10B1F0005C714D54CA6086B51EBFEC02C2878ED208
+:10B2000099FBE32100570846F31FF7F30A44C420D3
+:10B21000DC24758348206525D77ED3C135B010A5C1
+:10B2200040D3E615B5B9BC3472F725C94DF873C8DB
+:10B230007892774F613848B9423B8C08DCEC603F2C
+:10B2400095256AD6AC2C55764EDF0B2BFB4AE32AAC
+:10B25000C029072AA707CEB74B468668355D305010
+:10B26000ED0067B0C4261C007F9BD45E03D8F1526A
+:10B27000FCCAD043DD7E7AEA6DF55B74EF848BC245
+:10B280008337EC400DF3251E12B4F342D22559D278
+:10B2900005A703E0E0A034CD4D83782571650DE767
+:10B2A0002210480A4DBA25F15CD9D79724252941A7
+:10B2B000E7D0F5A27FC418A8906C1369E612AD42DE
+:10B2C000EACD69DE944199349DFAEA94D5DEB08ED8
+:10B2D00041EDFE7B90A1F04806BA66E7DF947D9BC6
+:10B2E0002F38A92F56132A0FC80ED120BBA2584BB6
+:10B2F000D3B045FBE1EF277AD21C21C5C0C0DDB633
+:10B300009FAAC4F98BE6CAD20561B4F5377A203119
+:10B31000687825E8762E9071C507D960AF70AC4A81
+:10B320001071BFD90C318EAB9E0E9315355EAB2BD1
+:10B3300038B3DA875BC8E0F68B77AE9598AB6A7264
+:10B340003DEBFAA1959979528A2C654280BA673F04
+:10B350000A24E4F4FC1DE7BB4899B2F3556F218938
+:10B360008D794F4997244CF28CCF8015055C63385A
+:10B37000ABB9D794282E6473902E2AAF2B0EAA4215
+:10B380009848838D056A5D7A09437B8C0531798302
+:10B39000EC467FDC64367D819FC42A989144909569
+:10B3A00048C22AD4217B572F8D5D80E66BAF74DFB6
+:10B3B00008FF393EDCDF399F16FF4A42ED376173E3
+:10B3C000E9A1BD971E34B5EAA8E27D03A47A2483DF
+:10B3D000755B71E8D41B4B5C9ADD4B5D5818B3A2CA
+:10B3E0002523C7418C5B889C2B0826D82E51751BC2
+:10B3F000EF2C5CC1E692B966A09ABB764F9ED59BB6
+:10B40000AC93EACB54E26BF67CEC16CEA9A7258967
+:10B410006F8208C8BF876C6C82C198DDC634A2AB4E
+:10B42000CFC7129F25396675D58D3DEFB50C28B96C
+:10B43000B386F379FF22E4871F13EB4D971ED4FBED
+:10B44000BAB57EE4A485060DDC5C4404E21D46D357
+:10B45000FF575B8797D131338B668261B2AF847EB1
+:10B46000113F90E34C3F06A4CB58CE213DABA062E8
+:10B47000262E7902F54DFDF7EA8D9F440B6681E398
+:10B480007DFD403003AEA6E0EEF3A196BC944BD513
+:10B49000D347C50773779DE2E85C392738124BAF75
+:10B4A00088C6CD15FA9E639855C5275BB73710A59A
+:10B4B000F35FC33B5D10F0EB7E6B250E53B0D24BB8
+:10B4C000218508DE7090376738241CAF854B6B41AF
+:10B4D000706776F9953F0D633734B08D1D6F446CFE
+:10B4E00002E7FF3CC973100ECBDF0FFAF8245F634D
+:10B4F000E0896BFB4AA5A12AEBCD7BCECE448A170F
+:10B50000D23C9E4266F656BF2559DBB73CE54AD38E
+:10B5100093352180DB7405AE0AE6BD31E0C193228C
+:10B5200057442A8561BDF2A3FC3D34D017F7986ECD
+:10B53000E5FBDD5E43C9377EE25FBEB6F5850919DE
+:10B540008ECEF9B180775F2FEE81AB6F3711E0D2ED
+:10B550001FFC5DC21DE42156FD4DF1C571BD714951
+:10B560002ED6C4D2A42BF5BAA12671B0A7071EC04F
+:10B57000CA6B734E790B1B236B24C5DFD68148DB66
+:10B58000E9309E084C293C1982324BC5F63A0ACC68
+:10B5900000812F405A984E08A9B320DC1C00F67198
+:10B5A000CE2B89843430807C8F8B02409EFFAD147B
+:10B5B00053C3563E98E9C4A09D13E1B0719E570E47
+:10B5C0000FD4B9932016E311CBF36DB536B1C5CEC8
+:10B5D0009C1D1695DB51EA4F4D0C67F575CD45E581
+:10B5E000AF5023AFFABF0A9400EA679AC917B8DED2
+:10B5F00064B8AAA93CA0016C6C191B7F17C869D25A
+:10B600004464DB549D19AA490861C423D4C9D2718A
+:10B61000337C3F8AED139D9E20E5303DB0710113D0
+:10B6200039071A85AA804A87C99C08C2DD907EB86E
+:10B6300010DD4991DDF76A0D85DB28B5761B54AA2C
+:10B64000016CDBCA25A2D6D29751E0D7BEA21789DA
+:10B650004F66CCB28D64F17295A284AA576ACAA8CB
+:10B660007F544C2D052021BCE90FB55637E96159AF
+:10B670003494A5DE637723424721D5DBD633713777
+:10B68000464314EC9457D5A1DA11D118697B1EB04A
+:10B690000D4D268B5077220099D9A5BC576E11D439
+:10B6A0003E0069E03E57F3CF3369469566C6CBDC72
+:10B6B000A721A02F9EC29713864C425E1813F70352
+:10B6C000FC3ADCE718C8E3C352F4195CD3824FA9F3
+:10B6D000C02496C509356083735AC3C449689B1555
+:10B6E00069296D827BA2B57268F7B71BF06CDEF238
+:10B6F0003123673276B6DFFD36C98FDE267481C30B
+:10B700009C9BE7E60A0D529D793F9837C7C2167495
+:10B710009BD5F12C4249FFE35B71772C0705AD6F98
+:10B7200068A80C0B47EB313D79A95F8A1F2FDC4CD1
+:10B7300051552AE1624D6F4316DADC5F2AE5437A00
+:10B740008DB324EE5D58B6418A3BC4837F2E5AA840
+:10B750006BC8888D540EFC40127B5EDCBA9CD3977C
+:10B760007BA19BF28B134CD694D3E3629EC2E72657
+:10B7700001E7DA6900C4A17880D725B4E604700A2D
+:10B780004D0AD746AB37A00153E6960E91BA99BB46
+:10B79000E07701A367FAB25F0489A8FA65CBEBFBF7
+:10B7A000E7F9BC2A751D77E64679AA7DE42C612469
+:10B7B000D88C47B9937322005E9181596FA4A82356
+:10B7C00079E6C62850BA26C8EB5188476DBD6C4053
+:10B7D0002F0C3E1FC769F49B953E8F75F897F53E79
+:10B7E00048519980126DA7D0E2164E07400BA38DE9
+:10B7F00049524E58E44E966752F5AC838F5C65977C
+:10B800005C3B72EA8FCAABF7DB76F03B665D3BDDF3
+:10B8100060FB71C1CD4E8BAEE70DDB2A7FF00A0ACB
+:10B820003DED5030ECAA7B6ED62CCD2497A9F76560
+:10B83000731FE25FD104106AE24EFC6C2C5D124271
+:10B8400003277B609D60F90194F7A8AB93D2100E9B
+:10B85000A556940953468D69A2EBE07563C736A5DA
+:10B8600038693E9FCF7CDD240D052ADFE0C0E54826
+:10B8700013150A8C6A40FE175484408106C4218245
+:10B88000A950281C6856ECB069968FF3FC8331C32D
+:10B89000565D05EF41D6879F0C2CE7C44694019A6C
+:10B8A000C5F620839D9EEDF298C011916DFD706BE1
+:10B8B0005FD0152002BF0B4E193248BCBFF24B8837
+:10B8C000C02197785CB522CFEBE53B29D6B185083E
+:10B8D000E347CB6CB58CB620F9F18799F10156B8E6
+:10B8E000B11115320914CF2D60998D16F80F394515
+:10B8F0005F24645D46E2526507AD7D2E1CEE904FDD
+:10B900009152E9C3F4F2F24B37B34203E193CE967E
+:10B91000F607A77B3802C2CD83350743712570F740
+:10B92000629F9C855EE21DAAEB5545D437FF4723F5
+:10B93000958986DBC098D2B561F7322239390CE09F
+:10B940006BF8666D32A6371A187219DD3EB32720E0
+:10B95000359384BBFA790573B4C9841484A66C3218
+:10B96000095BE69F8705052FDC645474C18D196D52
+:10B970001FDFD4404D843DFC314DE150A0487BECAD
+:10B980004577EC26F5922EE003C5C7D150BFF2DD16
+:10B99000EB18EC5F80713BA3FE89C1B50F5F2DDE14
+:10B9A00080399DCA5CDCB99586E6C4C716AB07072B
+:10B9B000CB389E1DB33AFDC857CC4DF56690E3DBFE
+:10B9C0008CA98ED5F0D6D4C549B9CED64A67173FD3
+:10B9D0000FB3F3D55D89D7F506278FB3ADF70649C9
+:10B9E0003CA4E65BB34189CB18CD4AE99768ABCF5D
+:10B9F0009C8E9905096928F0D427F38FB3A4E5AE8E
+:10BA0000AD501E68A64F2622BBB1C869F25306206E
+:10BA10007AFE801E3E6EB69F3D18F76F2AEB18CA5D
+:10BA2000FE07C046ACA22FE0AA9C4A9027B1B7EC13
+:10BA3000FC452BBDDF11CCAA9F4BD40F731917FD0A
+:10BA40002EF03687621022EBC4761453C3117603AE
+:10BA5000E10E2EAB2DE2C38909A83914CD3A7EBF81
+:10BA600060D0AF7A8B5C5F5490E07454C286FADA8F
+:10BA700077BA5D6D566735D0ACE4C9CA5C30BAFDA3
+:10BA8000275EFCB115857EA13D2EC15E1694C3E8EC
+:10BA9000C2F008F570A181329ED12626FC6B95413B
+:10BAA0003987003F700FD6D0852DE73ADAEFC12BEA
+:10BAB0008E6522BB9A18DFC096EA7A2800BE95E20E
+:10BAC000306B6F162847A60891DF41E5288A61335D
+:10BAD0007C134447AF76D994B586819363380B269F
+:10BAE0001409EB690FDE39E871D573FD36AB1148E7
+:10BAF000454F9031AC0A453ECFB69E54CF93C2908D
+:10BB000051A066A038DDD84FAA39599175763B65AA
+:10BB1000DF16FB59CAE491E48EB5B0A6F488DBB910
+:10BB20004D6D5D6F26B72F8381769D5B799FFDB844
+:10BB30004429AFEDAACB31A3F2A5C0E981B30A0431
+:10BB4000AF0636AF3C272DAF74E9BC6BDD6D4A9371
+:10BB5000584F29615456DD3298970D6BDD65F6B963
+:10BB6000CC4FB9063C4FAB10822472966108AF3FB0
+:10BB700015160BC28201F772746E3D077F8A4D6AFB
+:10BB80009472898808F5EFFE08CEA3D4F379DDA17D
+:10BB900085A9600E52A24CA461404B453125264137
+:10BBA0002AB4CA019684A7EE6BD3E026EF36AE9393
+:10BBB0008E410C8345A75B4236FF1F449A1448D040
+:10BBC000F9E9C3C80348863FCCD7ABDB6EA8EB7856
+:10BBD00079B006739EFB549F5A8B3DD29FDC732233
+:10BBE0008B152A7DA10141C606E09136F9516C9E64
+:10BBF0003E841C8C94BC04A368E82915F1801F8541
+:10BC00002E0E37C55CDF4E078683F75FB73289C8D3
+:10BC10006362BFA755BD25C929AD41DA501D7573B3
+:10BC20002E2CBBEF7D710CD41D9A1359325BBAC90F
+:10BC3000207FE2834C0A6A8B2E7C0027FEC077A30C
+:10BC4000F5443B9E9742E91E42A79A6502C82CE440
+:10BC50000BC6C9F63832C3D783B2AFC07A67617AF0
+:10BC6000E8EF1070CAA79B2680342AE58021D5A969
+:10BC7000893091C25D43E4A6F0F1597C800B419C70
+:10BC80007FF9D17D5AF0226254CD00513C12C7CACF
+:10BC9000D3816F3CEBF9E8BA6DE1B0B6B067FE3B1B
+:10BCA000665FB76497C56ED243D74CC0791C343FEA
+:10BCB0003CBCAB6B780AC3B9B904033723A2C87F75
+:10BCC000B9AC66C014C46E22C869EEC1B5770ACAA1
+:10BCD00041CBD8A5EBECFE71CC2C50235BC732F3E3
+:10BCE0008CE12C81815FC587CF23435FCC5C8AECDC
+:10BCF000F2BB010E6B4116D6F8F0429BA839B3C7D0
+:10BD0000B95C9CC0EBBC0A943D870098EFB8582002
+:10BD100015C92E2F5370F2CC3411EB2EFD37487617
+:10BD2000DA33C233AB1ED058FDC270522BA2481F6B
+:10BD3000DA63BF698B3D4E9CB479906647ACAEB078
+:10BD400043A09CE6CC2DF1C1E7FAEE06043CDF2CC3
+:10BD50002D17F9F3B9370360AF2B8A6F5606862D7E
+:10BD600094376152BB3DAD09E0F6AB13F850DE7479
+:10BD7000707AC909C3C05D86B444ED5EEA9DCDAA60
+:10BD8000B8F1068F957195D3691E423D88939684CC
+:10BD900081C852B610C75EE858AC4D2912CFC920F1
+:10BDA000C4FCF2CA193C1DD1E07FFD81C8A3C1D6F5
+:10BDB000766B778512C1033F452BC17977FDAF6460
+:10BDC0008EEE88DB2EDB754CAEF17FB18C6B5DF9AE
+:10BDD000B7F7069EB2E9A52525984D7C54A8863E66
+:10BDE000A0A59387CDEA67564561C614140709627A
+:10BDF00057B0267CE5833AD2E29E540A8FB2AFDC7C
+:10BE0000984F80C077C3852BACD7EADAB22663E0BF
+:10BE1000833539D1F42B3F20EDB8C9A68F08A4246F
+:10BE2000456EB65DC35BF309B354FCB29DE3DCC55C
+:10BE3000110C1E37FEF20A68DC8ABB9F67CAFFC07E
+:10BE400074DFE2FBA8F6AD206D27D0D59BB286F655
+:10BE500065A1CABB243FA1D0A0C92F8B87948A5A61
+:10BE60004C474FF2FCC4554B4C3D8B48EE67DD6DA3
+:10BE7000E547DC20761D7C9006BFBFF455E513B87E
+:10BE8000307117B7CCF1F5DEF66FA71021EED16453
+:10BE900097CD6A35CC0C48809CC21056985164539B
+:10BEA0005845DDAB9D556B8E9B3B65A885013E0ECD
+:10BEB0004491734497F666188688D45A4B99DFBF2D
+:10BEC000CBEDA25FB2F85A9186EEF9E837DF74A2A3
+:10BED000D3A5F545AAE2988AE91214F19AA9169F0A
+:10BEE0005D5B5DBD98FCE433E7D1AA57B0B4706EDA
+:10BEF00078D3FF815B595A88A1C2700F4C50C2A7FA
+:10BF0000B789B0ADD42EF12BFFC9C61746E1A332D5
+:10BF100028A1FD4EC288EA92E17224F0C5A98C9C4A
+:10BF2000C6560D64C0B8CF2C9782EBF9DBDF8C3698
+:10BF3000D3A5E4BBDE4FC62331819D06F1FE7043DD
+:10BF4000E3B5C559C392A39474B5F6F175B5D4851C
+:10BF5000CBB375E56544283D644AC941FAAAFAC8DD
+:10BF60001F72D056C8B300596EA854854954B6C53F
+:10BF70007A9014FD6AC1680CB9379BC75751AB0260
+:10BF80008BA2C52827AFBE561D4D635D536E06B20A
+:10BF9000CDB3E632E392797D0DB095C921FDD0593C
+:10BFA0005A24B1D2DE3B169D046515C2EEF921CAB2
+:10BFB000D0742F889DA3E4285679FE4433688DE71A
+:10BFC000B43108810FFAFB493D6FAB9024B3062AC8
+:10BFD00069AED613A7E21D68E9170C960E2FC1783B
+:10BFE000554192CEE0A084CBFF83BD5111856320E3
+:10BFF00017EF580A6DD6C2CBE85FBDD9F762AAB277
+:10C000000C50FE3E0071885BCF2D97D5A2541D7851
+:10C010007C8937A2A71BE45A59EF17CF9A868BF970
+:10C020001942A215FE338CA7B378249B99C52F67BC
+:10C03000DF5BB5D9FB37332AF732BF07577548198D
+:10C0400042903AE282E1219D3D93C5DDA791B3E89C
+:10C0500001FDD6DC9257A497C02956769D0664C68A
+:10C06000822B14B63DD4C760ACF9E78A9BD3CA7D56
+:10C07000E32774B4F74D7EE1ED5D9F74A10BBCBC6A
+:10C08000B61F276AD067EEEF46D6B48CE29FE796DC
+:10C090005AF10A72194BCC280FB8634097AED7BF3C
+:10C0A000C912D878495A4A4D05426121A8B83123AE
+:10C0B000F56CAB83A16A0794C9DAAD7EBEC4682C67
+:10C0C0001161720A3FF86DF3766AA75320D4B3E783
+:10C0D000DED5AE8D94DA5F103C0CA5CD0850A6DC01
+:10C0E000B6E144FE60F71EDC119EC2E25EF07F7F87
+:10C0F000CF26F6FE2677D5FA8222ADAB92CEC36F5D
+:10C10000EA9D2123E06AB1062B7D59A28F2F7E285C
+:10C1100022AAB04975BE1AEAE7814E4C2DCEC94B12
+:10C12000661FB8F098CCA0939BFDCDACB7B71BE7CA
+:10C13000B0142C39B1F78BEEB5A669BA2939D0F510
+:10C14000C27D8EA2D32075F5589D65F49C6B7E53FD
+:10C150007B4EC26B9CE805C5F3B2D7C39C081FA5F4
+:10C160002E8726605CC6631BA6E43E5E90F5FF1B2F
+:10C170003EAF9B1B3A9B3687174544EB4C9A992A56
+:10C180001CFE3FBB6CA97DD4B0684087771C8AF643
+:10C190001FD0ADD03CB0F9C1EA4AFDB393B61DAD96
+:10C1A0000D61048FF7B7DA88952FCE05B040823F36
+:10C1B00032797FE2DA64CF8472308316A133A0D45F
+:10C1C00075DAEA10AB68FD1BB876C3A93A13BF9DB8
+:10C1D000EFA14E17E753A92D87E5219FB43A50E20E
+:10C1E00030856572AADC20DB16228C8287A586EF5B
+:10C1F000E7F609DB457CC1B173231AE642BAF5A420
+:10C20000BE74F03D670D128B9823BB790B27257DFB
+:10C21000C66DF50839C4F28C2F79BE385525310F1B
+:10C220005DA3A9FA052362E94B4B3CFEF303EC9EA8
+:10C230004C3DFC2535D22F502B4A2A34946FBC75C7
+:10C24000EEC34C57E7A2C32A4B307E41DB836B38E9
+:10C25000F234BE558F3C198D6E19527834BB44931D
+:10C26000554426F008EC86F094D50CE11314C41460
+:10C27000DA26E0D559C4E00050AB490C4733D25917
+:10C28000C17A47D96630AE8BEB63C89C19057273CF
+:10C29000EA5B57FF7E8C359A64D87C7462139B4AA4
+:10C2A000428D6FEC169C6E87BEF4B7643F3720FB5F
+:10C2B00042ED165B2F6FD20A30ADA778CBE43E6813
+:10C2C000B1905C3E3442ABEF5C1259478CDF065AAA
+:10C2D00005422EBDBC8F9FC29F26F492E7CF770008
+:10C2E00050A9F4C34FC1253B23AFCAB5318996B5D8
+:10C2F00079179F0078FA8AF5F469DB3731EABE7C5A
+:10C300009D726724A962FADD47268A60E2053BCC6C
+:10C310002B59AED62EAA48EEB69A7C913EAAF1745D
+:10C32000C78F204A55BDC9C9421B0D9CAF86A64583
+:10C330000FD19CB4584047C64D469CE0866890CECD
+:10C340006EFCE14CFF7D6C978701D53DA54945D03A
+:10C3500078DA4BDC710F7D31C2D6C1804D6A2E5424
+:10C360004993915EE8A2B00A0AE48232131625C905
+:10C3700068076AB7E5EE651D21D94BA0BE73826ED2
+:10C38000193D84123D651010056DD1B10B5C008024
+:10C390008B6D37108C65E2BD4F65A536700878232C
+:10C3A000BA4B73B0E9891AD25371E16D7A11F4DC9A
+:10C3B000BEE302EB0F0942A4F808DD84CD40FD4541
+:10C3C000C194E875F984A86C5F2D2019619B143F16
+:10C3D0005155285187276523D526CA3FB29A3C88F4
+:10C3E000EF704B6C3B6B1F729DF4A823E325E52097
+:10C3F000008D813C3792F230526F453BEA539F5497
+:10C4000091843EF3805764B12ACAB7B16AF44126D9
+:10C41000F249FB6A46AF3A7BAB9CA6619BFD509903
+:10C420006A45397074DB72C8D5DBCF2E6AB69A4381
+:10C4300011D3BA78B8720100A9FF02246A72500CB5
+:10C440000DD210593DAA634BEBC9BBCEE0BFBB1563
+:10C45000C74FA38F64D218B0932EBCD68D0A8971B2
+:10C46000B26B21E3C1E00BA448ECD2B243EC9A4199
+:10C470009305AD6907940CF585A145205483ADEF74
+:10C480004B5A9A668829C15581E52B268EA8EFE97B
+:10C49000AA7EB2944D53150F85848A3A6DFC8F673E
+:10C4A00061F1BA9D4FF02A49559765E684981BBF04
+:10C4B000435413F03C6EC930CE4E34C570555F0402
+:10C4C000694B705E0427FE7DAE354A938D869B6076
+:10C4D0009DE5F90ADE0CC8BCB69A609004AE70E91E
+:10C4E0002ADFF9BDB4D3FBFB83232E456890D89D8A
+:10C4F00045CBBBEAFF1C4BDB4C63C0792B79DBD20D
+:10C50000B92C02702883F00E323B438C5F8321EB01
+:10C51000E469AAE870BCFE2604CFC06D67D46E1033
+:10C52000EEE12A4BE64B452BB3CF817556DA28D086
+:10C5300098739E240FB5CF1E895F3E92ACCF64EDF9
+:10C540006C10287D06DA13FA9350263AED504D60B0
+:10C550009C35297DB76A979309F78A7A601C320C5B
+:10C560001E408E06A55AF6839A7595FC937076E068
+:10C570005863CCCA6F550F40B6EE6C845B06CD068F
+:10C580005D6B36C2EF7250C239B9A6F520E1E50FF6
+:10C5900000051439911FC4234A7E3B095FD4CEE2C3
+:10C5A000A265EF03A7624BB8570F36BB0B8AB8A73B
+:10C5B00052291107801C7C1F89CF02B5F02E04EB95
+:10C5C00013C3D3C4775864EF5149F0D1008365F7A2
+:10C5D0006220488EB0DCBEE199EA3F7A5E9A48B0AC
+:10C5E0008EC313CBC670870FA8D2E25B0133BFAEF8
+:10C5F00080435513FD8DE73A3771ADD328220D9551
+:10C600000FF53A7BED43B542EED7E6E39956E6C91E
+:10C610006C24C0915B57A53143CCF1D25512AB04C9
+:10C62000DB3B994A79AFF74E3BA869ED7F66AB8655
+:10C63000E7800E45D1322C333842400730F576641E
+:10C640008517C88C6256202C53E645BAAE73B445A4
+:10C650001C29ECDA724864AC7A63C367068F02580F
+:10C66000650B29B154383F5C1D43A137BACB924CBE
+:10C67000DB1340FC84FE06170D1AD6D0EE20F2E044
+:10C680002EE650400712B64A3234757197F8FA2CEC
+:10C690006AA05B6EBD331AA99EFB119C101F021786
+:10C6A0007F317C901E421F95C21D7F092C95D5D7E6
+:10C6B0006EBD6CD9918B3757290D211CB4ECE1DF8D
+:10C6C000E4F8BC9AA4441CDD419ADDCD40CC58F47A
+:10C6D0006FECBD4E96463252D09699412927E61806
+:10C6E000072781FC3CA594BF75F73C247A95291A4D
+:10C6F0006F9E203693EE3780D493A662FFF00A3DFA
+:10C700006660866EE22A02F93B6003B446C8D153E4
+:10C71000B3EA0236018F8806987F2C95878EFB53EB
+:10C7200099A6C5A96EB909A0E7A3835971019459C7
+:10C73000A0392CDD4A3DC550F571089342D6790BDE
+:10C740009FD760E9930C3E092E664E24BA86601C82
+:10C750000BB89C11287CE2AA2594D844E8A9B235EC
+:10C760008BC72DC022F1C7AE4D53FD189D83DAB1A2
+:10C770009B86E84920550F28C8F78494D1FD3BD00B
+:10C780004600EE1754C4955690A872AF5E4BBA4C53
+:10C790005F1E5AA933D2117C403257C037EEE7E909
+:10C7A0005B9541A390046ABD55C483DE671F43B9FE
+:10C7B000D8565A1B9E0D7B9F27B6501B60BB7B0E25
+:10C7C00058FEEE6694BF926B453BF57C4BDCDB2B51
+:10C7D00097910EFF563F62AA2FB74209B55B77606B
+:10C7E000AEFE56924F2C62E276812834ADFF512086
+:10C7F000731E248CD3FB38C283A8034EC281CCF2B3
+:10C80000048A2250D3E1E6446EADD7AFEB8C3723D8
+:10C81000E18864CC69CFA2C0695F5CAAEB258D97E3
+:10C82000124A852F2D8D342D685A4135970B567B32
+:10C83000D7705E838B4DFF1ABC76E197897CC992D5
+:10C84000D3C68107DA44F34D2B54A552C2CD726B87
+:10C85000FED3B6EAE747CDDB06AB14C68B9D127458
+:10C86000795394782F9B8B4C2A5A4D6AE1D291963A
+:10C870000659C9B9C1FAD622E79B706D3FD008CFDF
+:10C8800078FC6CAC69382D70CAB0474964E7168CE7
+:10C89000E1814C68852A1A0B18D7DE5EBABDF938DB
+:10C8A000011204C6799F51ACD40510CD60839D93CD
+:10C8B000918EE611E12F30DA400FA7901502FA8031
+:10C8C0005C5B21C7FF2163B667DA0F499DEC119EBF
+:10C8D000A870C76C56B5439F3F89EB5DCFDC8ADDFE
+:10C8E000374D00E84111F4868B300581527FD8CE58
+:10C8F000C54B0A8BD154B161C07BCFEB5E19A45EEE
+:10C90000DFC4C7485FF94830265EB7FF8BDB94A9C8
+:10C91000E52449ED2ED935E1C13CCF880D97052F8F
+:10C92000005937807AF6464CD77DB36B55773C0873
+:10C93000B3B21B1B9E318925AD51425E4BA1EFE87E
+:10C9400099A247FCDABCD9699983BAD649DCD7AC3D
+:10C9500014CC27A74DE98CB234C581A29E76E57E22
+:10C9600031DE204D613C4B23533EE0F2D5A01D4209
+:10C970007402ADBF0969E7358892FC95EFED9180AF
+:10C98000828EFA9F85B5C1569128260BE2E27CF68D
+:10C990000CD7BAEE8F443069534684A87B4C5D2F88
+:10C9A000A0E56057DA0D511348CF358FAD5E87EFA4
+:10C9B000B8C073FCD810946024E31F76F2B11C4910
+:10C9C000A5C17C10321A9BFCDE5F5AB09F0E767EAA
+:10C9D00014F3D983B80818143CF5DF653BC88B41C4
+:10C9E000B30D981FF6EBD3AF7BBF142EA77047DAB9
+:10C9F000C6E28E5FF56FD6EB72353D0A9E75C74174
+:10CA00006EA1827B44CFE757A6B2CB994A767A20B3
+:10CA100090C0F9DD1A2726CE4F54D5027AD64E9C07
+:10CA2000BFECE78127230CE05249A50BC821E38224
+:10CA3000AB8B5CCF6D20810FF8AC938B34C429A5F0
+:10CA40000167EAD1A9E37F6514B9423A1CBA475E8F
+:10CA50004766C9FD314A82CA5340A87D52F300DEC1
+:10CA60008C2B3A370AFA73AD761D125B51C69C5473
+:10CA7000F4E44B5736FCBF577000056F3A06F47963
+:10CA8000366347CC3EBC5B7A56C65457E75D6FBBF6
+:10CA9000BC5E6C419003AA70177233D04A4ADC2006
+:10CAA00085381536D9EC681AB6B2051C785BD70202
+:10CAB000C61482FB10394B7170879D8A420C44CF9B
+:10CAC0008B26A8B2F31E8361AA10FA75AFF0B400EA
+:10CAD000CB307EB78417437164CE779088263B9C19
+:10CAE00084D0EA67EF05F906EC646E727D7401800C
+:10CAF0008DF161F17EBA8E6D1119D76369EAC0803C
+:10CB0000466CF1CA7546BC898D20579048F2116376
+:10CB1000FEA0BDF758F26798D1A95FFE69B161DB4D
+:10CB2000C705477D40ED09B6C6B10E69A5462B97EE
+:10CB30005424C9C8093BC8953D4AA565A24043F2A3
+:10CB400038C731427E8DED35C4BFC119292453D079
+:10CB500033C3280C7E1B6D63BEA2CD1032B470238C
+:10CB6000D8702BAD37E5A7313FA0E77BE0FB0FBCCA
+:10CB7000FD5439DEA8AFDEDF069256CF562293076A
+:10CB80007B5FF351C1E042123384D41BA4663B683F
+:10CB90005025CA243C3C5C8FC2353B0DB81727E5B5
+:10CBA0006D5B25780F3F1A67E8178510777EF723AE
+:10CBB000EAFAA163BF65F4B21385FD7E306D177389
+:10CBC000103500C90B3750B48FB92CA3B8A151232D
+:10CBD0003FFF3C9FD9A77BE1B5B50D1B210DFDD1D2
+:10CBE0005E2F50D697F52FA7E1B6E01219C11ED2DD
+:10CBF000339DF7A98125964997EC23E417F77879B7
+:10CC0000A4B06033228A2B36D170DBA0697C7E65AC
+:10CC100076357DCE59AE95E3DFEC3CA07B67D3E55E
+:10CC2000E9B6B5593CC061256C4145B490C3E9E70C
+:10CC30009BC274F380135CC7D7EF34C4839DE85460
+:10CC4000EDF3EAB7E44CEF11D2E761B91089E95D81
+:10CC5000C1ECD31C38AACD969FE738CBB6E45D1F54
+:10CC600074BA796E0023B651955A7E645E69E6996E
+:10CC7000528414D5B84FC337A10630865C83D925BA
+:10CC8000910ACF95F3CA0C0A11E3EF35DF53F82070
+:10CC90006218DF70E7F3D1AB6CF87A90CF87FE9D16
+:10CCA000D650C87131FAB5E7BFD97E99C731A9CD41
+:10CCB000EFD5044183D8F2118B394E1EB0404E2B74
+:10CCC0001FBBE458CC0FEA712A7728B2EEA25BFBB7
+:10CCD000F7F7C260FD5843C6E377104DACAC0F6B5D
+:10CCE000B0D826C340E6263BF1E8318D16608D5260
+:10CCF000B526A686FF3BC4D2FB49E2B90837C28DF0
+:10CD000059FAB41CFE65965C97355A6BFD41522169
+:10CD100081321BB77201AB1C0805211E3CF312DFE8
+:10CD2000A2B885865A66D94309A724632E007AFAE9
+:10CD300080927AFD922D83F2952C0639346454D476
+:10CD400039A36D73C4BF82AFBEAD5AD498D3A8398E
+:10CD50005D03BD1E373C8569F8D94AF4A0397C23B0
+:10CD60008DC5639008B250B158017B0555C6F6E4F5
+:10CD7000D37F35490C18125286525ED08F58B6D8E0
+:10CD8000C4C62B9D98AEBF35A3EA5FDB30CC48AE5E
+:10CD90004B42276269BF9F8FF9E1BBB1BEAB869E54
+:10CDA00079488FE67AACD9992AF620D1354EBCBEA7
+:10CDB000110D896C86D5F6D72CD9732CD283986641
+:10CDC000572C3284B45563130FDDD6ECD60A6ADBD8
+:10CDD0001FB2D3F7ABFA6E4B519C37FC74B740715E
+:10CDE00007B6E795B23881AF0BF136533486011A96
+:10CDF000FF029CC1E88F06774A2D14B6F3B46F9BEF
+:10CE0000EF98ED72940083A6C381DBC03E0BCC6B20
+:10CE1000009197C38244EFB21CAEBE9FAEC2C8342D
+:10CE20003A43204E560529CF46EFA46C56B44E9592
+:10CE30004830AB28A865E1132961FA1A0FCCFD33FD
+:10CE40000B57191011B029D63D3FCD11E8126AC019
+:10CE5000268A451C6FD7509A36A0E9E30D25C44FAA
+:10CE6000941F7AA680A544E4391D5783B15D6C7F79
+:10CE70009F338B8B0216408D705C4E431C5CF73BDE
+:10CE8000EEA72DB66B6C4B8EAFFC6D73889813FDBF
+:10CE9000BE74918F4D70EBFA998237A770AE2D4614
+:10CEA0008B023ED124C2DE63683188520B1F724A66
+:10CEB00042C9E71D32EE96540A4D87D48CD91E1A0A
+:10CEC000DC3F189BCCE92EF1B398C14B71B017CD64
+:10CED0005996BDA5946FA8CE14A69AB5EBB4D438D4
+:10CEE000D98D30E89893C1DC55C0FAA8512BA932EE
+:10CEF0009177E03F95E4E6F3A6C46E49604567D1BB
+:10CF00004326550FCB5D8E08251E97E775CBEDC7E1
+:10CF10005191BCF560C8D50562A37AD03470B2FCDB
+:10CF2000889F77740F1D6A0B21F77BE8F6878E299F
+:10CF3000609C334C2385A354C706B6B9E3359C8A5D
+:10CF40002BBD03674EFA17A1AEC1105F455A247F6F
+:10CF50001C1E86590C9030CA138B4A12C86376FC8B
+:10CF6000129AEE68A21A30FD65422840C25E56EE63
+:10CF7000628D4BFD48D714CCC70B42B2C2DCBBBBA1
+:10CF80009C8883C7FAC53B99EDDA5B0132A65384CE
+:10CF9000884D5A2C3DD805116223FC59DA69614F3E
+:10CFA0005BD9B211ECD1EC77DCEB101EB04258D15A
+:10CFB000D260563596C23EF2EC8B3DE8C8582C70D4
+:10CFC000234B3CF1A250114CB8CA8D3CB0398FD8DC
+:10CFD000D35F7CC1323842521616AF25247527AC78
+:10CFE0003B584C3BD638ADE332B700419BB8E8978D
+:10CFF000DD6100FC495DA1BC7FC9D3F0582183CF1E
+:10D00000B83EF96CBE3968E788B51D8FCCCAA3ABB2
+:10D01000F1AA2D3B64A39CC913B5E0E3653A8943AB
+:10D020001F2ADAA8520D9D0632C0003FECB1E0087D
+:10D03000D1FB222F58BD881334195ADC1F420CB97A
+:10D040006FF4E479C114051E2FC94F4B2DA2D4C52E
+:10D05000DAA89EF17910FDF4A866BDC0AB09B37AD9
+:10D0600009CC63CF19DB821DB5F59540AE3A912D01
+:10D070001ED169A67E40A88C8AE09BE8781948D525
+:10D080005A6D9862DA4F153D33116CBB87A96DE07C
+:10D09000BB9532CFEFF91C712C39EAE790EDCFB890
+:10D0A000CBC1BE9AB9D224F8B18E6E7DFE9A5EFED7
+:10D0B000525D51D20826E8BCD4DFA1FCB13E20EE7F
+:10D0C0000A45951325CD22AA88AE014820B5C5CCC6
+:10D0D000B18B7E1E1305C924AF41535747B79B82BE
+:10D0E0003666F39F966EA5B5F8F42D2D913A03D9C7
+:10D0F00005B6A3314062FF4FADF938FB3E34E497EB
+:10D10000506D30A8C8E11F5516DD399B87A175E128
+:10D110007804D83A233A25B71C68B6B3DE69630CA5
+:10D12000799EA38EA5379448B73D528E9ECFCE36BA
+:10D13000DE17628CC1F912A7F815287158E4B25FA6
+:10D140004FD0417809D5CD94C38602530CC155AA5E
+:10D15000C170011D12984E39F5F0836864A022BA9F
+:10D16000E3BE1B5184855103E1CD87D047C00EA596
+:10D17000A1185B9C75BF62E5CFDDD55F422A2D4EBD
+:10D18000532B480A25A394A81B1C02455CB8A397FF
+:10D190006B95306FC2119D82A710E5B06903C06422
+:10D1A000249CE96312F9697DD123001ABEAA11FEFD
+:10D1B000A7EDF98072E452D9225208661A775622F6
+:10D1C0001B343D1D96BEE657254805C0B1AE6671BD
+:10D1D0001AA1250C082723A3A7D538C249C3B60135
+:10D1E00058E9AC1407892EB0C3383800EAAC3FC008
+:10D1F0008413512179EA2926B38098A73057ACA629
+:10D20000A5367BDAE71DDFA70E48679244D22D26AC
+:10D21000B5C7E0679AA3D63E5A2B8327AA066DF4BA
+:10D2200053B94C940E93D9E3F41392CC635974849C
+:10D23000128469BE675A698A541865C4E5F8569D18
+:10D240009FF04231769D2954D1F50F05AC5CC52D78
+:10D2500024A2FF1BAE3062DF916C88CAE938710CE2
+:10D26000996993530F38FB4AD21D419774D8B886F9
+:10D27000CB9F8073DDE82533E29F948B3293D70FE9
+:10D2800000149AF638075770252676B97652B0E121
+:10D290009A77C92C0A02BE31CAB8E83DD0CD7C7C51
+:10D2A000330D2AB2B805554018BAAE4BCD99FCC023
+:10D2B00030C90CDF2B043CF73AD278B531BED0A68A
+:10D2C000EB3F683C744D389268B475C61E994F3B6D
+:10D2D0008C18658B84FE29BFB9A33615E9ADF4D04F
+:10D2E000D073CC89DEA7E302A60569B7B8BB808DF1
+:10D2F000892BF82F67E8D43B2CE0B5EC9966C82C55
+:10D300004A13B58F27F368613AD9C51630B8DE0CD9
+:10D3100085DFC66BAF6E4BFDD9458B6F5262AEE3B6
+:10D320000DC8B9C37AC97938B87C000AA7BF73AFF2
+:10D3300067835E3FE12479C47CE3210DFABE21823C
+:10D3400003D9951203D69398677F0046211F0DBD20
+:10D3500099A360BD3DDE99FE64C1AE04DDEE90D1BF
+:10D36000B128BAEA3832F28E20F901AC5AA1E94D5F
+:10D37000A96C0411745C334B7035FD2EE5F039BD9A
+:10D380006DD7712A67138974C42CF14A753AC29E0D
+:10D39000BACBC929EB66388BECCB69B8C20DF380E8
+:10D3A0000F447F5DBB907F5872836122301EA7B609
+:10D3B000B9135D6078A5681C19C40C34E63FE9F622
+:10D3C000F8C358C4C282B915FA206D7C8978AFA31E
+:10D3D000C04BEB08898A37F241FBC9D9B6A0FBB82C
+:10D3E0003C801CB8E27E9E7C80CE29C80AAC70FCD2
+:10D3F00023737BF89B297B68E019106902A35768A7
+:10D400006FE3B0FF29C8F651E5EADFE50253B7C183
+:10D410006B9E1897F85F60338DF030A26D202A253F
+:10D42000E1FDAE45DFAD1A30886F2EB01CD9CABF02
+:10D43000A2E77023A42BD783967031BDBB6DF52670
+:10D440009DEE4CBB680FA71547F8FB7C0C36C82730
+:10D45000CBE94A4B56C21D9D37042D646462A84037
+:10D46000855210A1EAE6D892FFD3386B7670BA12D3
+:10D47000A849989D55EBFBC9F6284BC5A4E06E9DC5
+:10D4800046797C83370AC26FEB605A71CF2CAA634E
+:10D490002281AF1DA182C04DA573A29E0B93D3D351
+:10D4A00035F786912B6D648F1D64B7BA5E05822AAD
+:10D4B000988BAB28296D0EAF600F30786F00E7575F
+:10D4C0008EFBBD8BF4D8BFFB0E5FA3F98C4A9EF593
+:10D4D000B88A6FF7095B26AEAF431F454CC64CF9BF
+:10D4E00078CFEAD89750EFD5B59AA8C87D018DF4CA
+:10D4F0001AF266518B13F2DFA6E5D710CB592BC178
+:10D50000AFE17FED3CE5BB0F7289E5232C1E34496A
+:10D510003F653C51F30A47751E90BE43CDE176A3AB
+:10D520001EDCD8880E8E217F1AC1C6C31ABAC24229
+:10D53000D84D750C3AB2E407072ED02575718B0FC4
+:10D5400074CCA665CFE3C698C0E4DE46D0BD69487A
+:10D55000958D31A77F0C47604F0D26ED78E0057B58
+:10D560003BC8CE9240DB8E4FCCD7897FBCE000A475
+:10D570007D3D92EBAB637137B5C568CB7202367FE8
+:10D58000C67FB872D44FBFAFD363301877E7674612
+:10D590005A9B57FC826696505479944707B36B04A4
+:10D5A000BDFF85A4A003D757CC2B78F4D8763FE9EC
+:10D5B000360C77AC96F61893FC0F3EBF61D3A4F5FA
+:10D5C000643546EC9B6C7DCBFF597E69B235937414
+:10D5D000ADD3C9586276E55F735ECE80449DD8991D
+:10D5E000F8A9BC2E0BC4B859DDACF1B8B8F4660A82
+:10D5F000D970DF3548B1D87E30A4B1CF428B370E19
+:10D600003AC45A4F02B19206BEB68D15EB986F1010
+:10D61000E2C84594B11E1014A5E8A5E92B000DD26F
+:10D62000B52D97FBE6BB4CABE64D7A6A4E0D12C1A9
+:10D6300021BFB04B792B9C3730E588867A83B9C1FE
+:10D6400021000DEA4647D0857A6F53395901031EF0
+:10D650001D8CAF0642E98EAB2B2C1E6E77449CAD21
+:10D66000AF8C479E4400B0B4C3A84D091C027DC7CF
+:10D670003131DBCFE7E9FCA246671C9ECAF5B2ABAD
+:10D68000CD0E970BB284CA158A4D903FE49DEC8570
+:10D69000F6B8B81F92F8EFEB41B2D5E7CF6232E8A7
+:10D6A00070536EFAA7B90FE607C1571F45150E490B
+:10D6B000A6588B2134D2498F197E19386F654C5684
+:10D6C000F01DF98A45C3F34DCC8F190F4C01392554
+:10D6D000439D2DCC15F1425302174DE84A0256895D
+:10D6E0007B1F12DACA68FDD5C1F050DBE6C562685F
+:10D6F0002B6F7DE6E10F83BA050B507E82E73F2555
+:10D7000097F7A9494292BF900A49DE9B69A69F1EDE
+:10D710001014BA2B3170A0595822B9A8C23763959A
+:10D720001844C54CC34EFB5CB9F5B0C400F5095FA5
+:10D73000B8EF087690DFA1B0C9FADCB9C8C71FEE10
+:10D74000833493D2AF4808F25E1459D3B92C707F5A
+:10D750003A15A68EC1F04017D7AB32DE838672DA57
+:10D7600009A91B69C6A5ADCA5F91094FC2F427B6C6
+:10D77000F611A118BD4672EF2D66CF1CFBD0205CC0
+:10D7800046DF72856B17A64032E95BC0BF24A9AEA5
+:10D79000BB10AD7674E266F928D6A8F205C0370A48
+:10D7A00027E4B8F36B117C3928B945FCC3957E8D0D
+:10D7B00039DB705A3F970BCE3F8335B1662AD2CB07
+:10D7C0004F3882763F12E1754AF0BB6D8BA0F7FEB1
+:10D7D0000B7DC16A18CBF4D26958DE67E6353E6C22
+:10D7E00094FB3E7525576A9CA69ED694BE2AD87E89
+:10D7F000DF3F030B91447B75EEC5E7C79B13089F82
+:10D80000926836702B65FEF8608EFA44C46A0CD1BB
+:10D810008D824EFFF8356DA18474BCD989C9AEECF8
+:10D8200051B10CE6D32FB61A36099BEB70FD79E4A3
+:10D830008A97AC0A4AEF6FA835D6624609EB4D3598
+:10D8400011CAD8BAAB8F4A80782B71B128B49AD953
+:10D8500097F71C34E6EF37185CBE65F2059E14108E
+:10D86000BEF6A9E68CEAEA7FCCE7932856BAB696CC
+:10D87000898F86192A0F95F486171548DA25FAB686
+:10D880004F1E54FB066F9FDB31AF5BE20DDDBFA97E
+:10D89000B3B571A490631A9C07738E0A8137C09444
+:10D8A0005B40D2455B8C63D21BA333B374DF2A6D1C
+:10D8B000FB1B443A832BD1C468790A155B539E5CE9
+:10D8C000F2844C3E2B5663273AA465F5D273944CF0
+:10D8D00021C07A615536C660C754D0F8F238174B6C
+:10D8E000840074C0D420836209BEDC1E451CC66758
+:10D8F00089A4EE839334BA12C6A45FE39CDAFA7764
+:10D9000016EDA3A8EF0866EE7FE2CCA3A69C1278E2
+:10D91000ADB0843A8FB3302324F1F3FBFDCB5A75BD
+:10D920006C2582F768DF3F7E1F150A45DC34D69DE3
+:10D93000C70C612726B412A84A3F2BBF2CEF23A1A6
+:10D94000357129ED4E7B07531FCFF3559197D1E1E8
+:10D950002380F8E870C2B709DF5B81CDDF761898C5
+:10D96000032BB07648E9427E92438904A9BA077630
+:10D97000FC5846E3E64F9E2C99A818BB8BFF98A94C
+:10D980005249BE80C6686465133B74B7E47EF02CD0
+:10D99000065E4241D8C6776D533074D74EFF641E81
+:10D9A000B76A7D2F74FDB6089176CA542C9BDBFBB9
+:10D9B000B63D547F95D64E63410A8340FA2EEC5211
+:10D9C000772C270F475171C2F3CBE70AD7F3546B7B
+:10D9D00003C45C665292FD04E10B06AA5F97E48AD9
+:10D9E000FCB63F563F1F2C21B8E2D9EDAB861A1E7C
+:10D9F00041743D55FBB2BA4E1F3E98477297214A7B
+:10DA0000A5B0D5A3E50B25CDB8B7DE883DC4BD7361
+:10DA1000379E93AFF1A24686765570D40404EBAEE0
+:10DA2000828098BE50A6CB5A92A59F2F42497987F3
+:10DA30008C9D80F27789345B37D951229319EBD4CE
+:10DA4000173E494DB07FD4F3D13EFB8DEA9F7EB5A2
+:10DA5000B5181C70B4F074D2F5F2F750F6AEF86455
+:10DA60005AAB7CB3DEE158FBC39022C6C46132C717
+:10DA7000FA1D6C55640EE56D3B86AA4AF246622C8F
+:10DA8000AC22090062513C0F5B01CFF97060416B21
+:10DA900083B4CDBE70F404A2664FE8CED5EC4DD76A
+:10DAA0003B6096539380A376C7760DC8708E1B0A91
+:10DAB0009318534C35084135046B6534A3C657DEC3
+:10DAC0005B039ED4E38D056D3FEB6737A155483965
+:10DAD00080E2DAE367E40E9BBE8AFED2A83FFC40F8
+:10DAE000EF21FF0BBC3222ADABF62ECEDD7BF3FA7D
+:10DAF0008E73FD12FCB49DBFD66349BC0568295ED8
+:10DB0000061BFE62FCFB87E4A69B788044F79BB56E
+:10DB1000EB678EA7230720A99DAFA1DCE3D9AA72EA
+:10DB20009A10555AA9D5507D5676EE9465907F236C
+:10DB300002F4D220871F1BCF152DF348534E85B317
+:10DB4000AEB72BE5F0A2ED5D4C82312B75B93FD21B
+:10DB5000EE486CF82067B11F891D31ED72A4CD68C5
+:10DB6000F072641557BB84185B225CC7FDF6D3CEF8
+:10DB700070F0998B7BF2E471A7F8BD6BB4F49F6FE2
+:10DB8000454B3D2557369F5C71425DF4053F1A3E7B
+:10DB90003A29B1BA1B002E1C2F9130FD3924AD1C3F
+:10DBA0007BB9F07E091A07355E5D007951CAD20152
+:10DBB0008C96B0A2EC501A110C99E26F29F57AA557
+:10DBC000D1F211429A9C2698BE977FB2F9382BCD9C
+:10DBD000DC91726C4583B099E8BA007552A40BF7DA
+:10DBE000AED5D4D7AFC8F03BF8CE126AB2C06A8BBC
+:10DBF0008AF76F4A60D5F0E340D60CFC97C7ABE2DA
+:10DC00003A7BD4A433B7DC76A0646EF017635F3838
+:10DC10006E7BFC4D1507CF1A69F24357DE1592341F
+:10DC2000AEFA3571739F181B56ECDF30A936465992
+:10DC300012BD4E9BCC26830007CFC839F6FEF0AA52
+:10DC40008F15DD29D1A536257A6284640538180838
+:10DC50007427E83775136ECA555B0BDBE1BEDEA097
+:10DC600030D411344232CCADEFF2A06FAD55D2CBEF
+:10DC70003C6A3847841DFEF7E0A30FE406A077DD79
+:10DC800039EE9EC192A39FB9457099520E0F94C16F
+:10DC9000736C5541ADAC6FEE2FCEBE93C73AA32542
+:10DCA000ABBB5626D1209C48961AB6EDB504720F30
+:10DCB0004C9437B3D987D34B1A13FC576AA2C626A4
+:10DCC0009F621696159ADC1AD9282A4FC0658B4E8A
+:10DCD0005B38A710209189347449EEBC4BEF978BC9
+:10DCE000D11393818148D07659C65EF2E36D879651
+:10DCF00019EE014989E3429D14BC7AF6955E032131
+:10DD0000C2259CC25A8EC9438E615DC0A140268F38
+:10DD10006DDE7EBB54AE13A5794AD82EC6825CB2A6
+:10DD20007AA0EA98F77CEEFD56FDA0F810ED53BA04
+:10DD3000F1E312E151BA481108973C2C2541E5B5B1
+:10DD4000558978088DA99ACF5694118006B506ADED
+:10DD5000B06F40FA51AEA1B1A41E317B060A879381
+:10DD60009A3AC2F47190653CB72D6CA3C2A4F174C9
+:10DD70003BDBB7A19FCDF88F669A3ABC16EDCD8EEE
+:10DD80002CFA68A4BF9039BF1F15FF9D736E340530
+:10DD90005060240E6352ACBB61420A5BFD152746FE
+:10DDA0006705A756160B955E36C5F43B8425DC1433
+:10DDB00029A3A2C4386451615D212EFC19F2714D72
+:10DDC000830D5BC9BEBE1EF5E80353F5E34F87DB49
+:10DDD0009BC2720154EAA537FBB5A633A142F37D7D
+:10DDE000605F447C523AA7017FEF794D4403503A7B
+:10DDF000AEA56AF927AC19B6F4353F4B827269EDCE
+:10DE00007A2841464FCE5DF754F65C2C4DD66F997B
+:10DE1000C57761F55BD0697BB599B87F6417E44736
+:10DE20003C6940598755B89D9A14E02B25B41FB31F
+:10DE3000BE758B953B4AA13089425E8BECA41114D0
+:10DE400034E48DBB206FF3F71A93DFBF346EB73A1B
+:10DE500049134DFB00BFCA7C0F311C70143D9D1E41
+:10DE6000A46997B51C344CF8999C76F19092839FE5
+:10DE7000400FB137B6462001F86D14900EE25720DE
+:10DE8000FCAECC94E60BACAE8E3D74C827F9C8311D
+:10DE9000E11A036C4C6D8BA87B502ED7696868CD56
+:10DEA0008306551EDC67851E40D7CC1990B73D927E
+:10DEB00008FC326789581B121575367E53E82EE927
+:10DEC000F565B0D77991B7772D82D1BBF96936FA6C
+:10DED00071D1E1FBB4C7830D4625637F8EE0A8D0E6
+:10DEE0003CDFCB12146E78D699F231293FAC11A9E0
+:10DEF000FD23D1C255018424E2B42E26836672BD6F
+:10DF00009BBC50A904B9F516EB3A470811288CB709
+:10DF1000F6BADB3CDBBDFB85487D648F75CBFA5DD3
+:10DF200099C5729EC826D4593B22439380052AEA9C
+:10DF30004AD6648A9CA4BF15A0C6AD6ED613F90E4E
+:10DF40005BCF1BB7926403EA5A5254A6FCF40F6AE3
+:10DF5000B146D8DD791A73B2060D0A49D2BB8915CC
+:10DF6000FE851AF2926D9BFBAD4C1BB5637EB34DE3
+:10DF7000D00E2492C8C5DEE5485A6E601533181AD3
+:10DF80005A1A90FC669F97EAF984372567759C7545
+:10DF90004F3F7EEC2608DA89B3177ED7D81E9768E4
+:10DFA000BDC26D9B55525FEC574FB19530697C36C1
+:10DFB000A941D904020D43432F8B345A3896363980
+:10DFC000BA0600381FC1EDB5A6EA0A0371E056068D
+:10DFD000E88871B7E9C75057FC40C4BB46F28B6470
+:10DFE000690D4E19EEBA62EF101D49601F284E1AD6
+:10DFF0002451BDA3563411177689C3A442A72A4FD2
+:10E00000F712545F82023CC5003ACD2107423847DF
+:10E01000B8EE7DBC73A42DDF5E139AE0287A76A853
+:10E020007C944134F59C8E6D2CCB41786DA009BC5D
+:10E030002CFC445408BA1625E3253681F8E562B174
+:10E040006C5891A2EBFBE10E3217D8A475AC138F7C
+:10E05000A9741FABCDFDFB3F59F6EF531C5D8259F0
+:10E06000BCBDB0063B8710B9F061DDA9A28C9272ED
+:10E07000823BDEC2096EE9F015EEE882F2FEF90598
+:10E0800049348F9C63FCCCBAF41C672B734D407DE4
+:10E0900056B97208CFA7320E9CC410A11885C5F4DA
+:10E0A00078A14A7A0C20642F18A20725E6F0D9FF40
+:10E0B00084002EDB9B3392D23BA266DE9F94D67CFB
+:10E0C00052F0111C588D026B24D0EDC006C4D26EE4
+:10E0D00025F4760F3E71F5E97AB089EA149AE19653
+:10E0E000C88C319AA536C8AAC07E895F61D4644FB6
+:10E0F000D8710FFE604E14C6C51B7E30FBE193BF86
+:10E100003EDE42096C230491621C8DCC9906DAF440
+:10E11000F56062E957E52FA03E6F9ECE408B8113DC
+:10E12000CB220FE78A37F77BBC2BBAD556022908DA
+:10E1300001599051810190246B6AF3A50A883F76BA
+:10E140000908015548C83E5FCC7D49DD8154CF7830
+:10E150001769B545225F22753A43B6B8DCF40E9ACA
+:10E16000F9314364CFAB1A24E420F2CA520C9A1A54
+:10E17000D3832181A45540DF36EEE4AF49BFFC7361
+:10E180006F4291AAAEA095AE8DAD594346970A72E3
+:10E19000ACD43791F2C8F44A2E90AB282997A20448
+:10E1A000AD5A11AEA36388D2BB253D2D2642F4782B
+:10E1B00047B7B4AE7982D626771B307093018606B6
+:10E1C0003FF37659BDC94747C143AF22620B5B3C61
+:10E1D000CB7F011960C13EABC975F024A34DD0D9E6
+:10E1E000F8C5EF7A05C23954E61438744A30FBEFAB
+:10E1F00036F6CA055D791F35582DACF9EDFACC38E5
+:10E2000053C7CB11410C295498B4ADF6EF0B2D8BAD
+:10E2100069B131A8F3D61E31A891BE8B655B7BE551
+:10E220008ED71C04513386A1CEE33AC46C0B186E12
+:10E23000C3FFBABDE9CE69842D33011B6C9CC3308A
+:10E240002FEA29EDA2E3089644F7C1DD4401C4D3C7
+:10E25000463AD24D8A6303BCE4B2F13297354C2082
+:10E26000A97429B80FA1AB4314CC30784206019DA4
+:10E270007F64C459C831575F157069A3C5775B2D9A
+:10E28000E8B79614C554ADF2266797ED0610A6F0D0
+:10E290002332AE255904BB86067AA54C992E582305
+:10E2A0008DA3E47C9B193F95123133203F08AD6369
+:10E2B000B14FFDFA4E0EFF790123AECC73771E06E7
+:10E2C0007AEEB1EBEBF1C6A606C8C1968E4778018F
+:10E2D0003DED00FACA2F1ED4FCC5385A88AE09F8A5
+:10E2E000A75235742B65B322ECA4996AD16C6C4AA1
+:10E2F000AF96E3EBFB13F6C3C32B1EE1F3B7415F0D
+:10E30000A03E0540DF67B54B4948DD0D1BB51867DA
+:10E310003817652CAD9F2363EEBE4B16A05F11F43A
+:10E320008C3FF764BD8D2537B5316F2F84DE0140FA
+:10E3300075B40D9F8D341A00A8B55ED31D09EC2766
+:10E34000623781D77F6698DFD30030A589C615CCA8
+:10E350001972CCEBB61EF4D3EC5AE072617C3B0F21
+:10E360004EB08985F24EA97E0BD73C3B932C42D30D
+:10E370004D67E60FDCF25407513831049F7A6E1571
+:10E38000283D4A4E7CE0B9BD61ED75908AF270E29D
+:10E39000A5C885B8A36D59463BE4BF08D35DF67C9C
+:10E3A000A45DAF2DCB33F9B62E554FCF965639DA43
+:10E3B000395F090B656107B76A4B3321B5E55F2308
+:10E3C000AE141597C036057B0FB3B90A5AD716C2DB
+:10E3D0003AEF5757B3C253E58414A4CB8F81D14A87
+:10E3E000B44CC8D912F54F48A9FC0FA6416D1E1BAD
+:10E3F00055C508F9E68A93D2D01643B1956BD14141
+:10E400000E33382255B36ABC11A6D8D7F2C7384F9D
+:10E410006B40A0D45C66AC4EFF2525A2E9AF0B741F
+:10E42000A11941DA8EA46B2F1949F551E6C8729BE8
+:10E43000886407E566BFFF6DC69EF9AD6E3BA323FA
+:10E4400070BCF2E7403CC2557D95E0EF3625055D96
+:10E450001396E1A6D163FDE2D48F4C7F0F6A3A4553
+:10E46000818E43899013AF4DCBD2CC906DFF703627
+:10E47000FF7D605407EAC1CF4822C03B4003067EBF
+:10E480008089AF06F4BFDE25C82E7862B5C9E95988
+:10E49000EEE6AA0BE1F39FA11EDE282AF5997AD3B6
+:10E4A00037BFD2419CBEA8E930B1B3F6BCC8D5ACE9
+:10E4B000EA83FC3DBEF3F7642F32FCF04838C5F424
+:10E4C000BFB4BDECD79ADAD9E1ADE32D5A031B7C7A
+:10E4D000CE65B6405B44F82BE500A14382EF49DEF0
+:10E4E0001064333ACF59A10756A73D856213DB8FDD
+:10E4F00060B20BA13058B80FCAC829C2A40F9061EE
+:10E50000A648B021DE82B5A911AE37262849F5EB21
+:10E510005A31F6D4484554CA6915021B03CFF1F9A4
+:10E520009AA09610D8E2F113643B21A844276DDE2F
+:10E5300052572F1771467F6B5AB44293EC1E6926CF
+:10E54000A175EF3679794875592DBBBA5C2C6955A0
+:10E550003B70EDC45DF5CED104FE8128EC7E746580
+:10E560008BF8AC0F6CF8E57C3BD1C414E65FA9C90D
+:10E57000F1D1281289EFC6A6166CFD350B0E7EB1BF
+:10E58000ABA19DADA7C93938BF029FB73929AEF9F4
+:10E5900097C1CF948286589913EBB309EA5A79C987
+:10E5A00085A3F9D84DE63AC5D13A4170BEF1894804
+:10E5B000ADB82E5A746FB74352C68F5246F851CB3E
+:10E5C000E65F9D29BFD16F819DD1E1B1C98BDF1D70
+:10E5D0005C3F69EA1D81BDCC410018214BC78E8686
+:10E5E0005F098390931DF4A5DEBBC067B17306CFAE
+:10E5F000CC8228C8E37E4C6E73B845DE673A6CC2A5
+:10E60000906B40F9B159CF18EEE458EC9817A42854
+:10E6100065152CDCA55A6A64403E3C44E58AE2C19B
+:10E62000D01E3D268BE1EC78342F7FAD72B1C08DCA
+:10E6300056C712451FFE5FFABD0268813F1148F1BF
+:10E64000A2472AB1694BB534678BB1DEDE873FEC58
+:10E650008DB7674651CFFB19FEB45C0E64DA7418AF
+:10E660000A1BA31D641335E0D3270EB556FFD2460F
+:10E67000071B7AB71464C30A5BBE83ED89E590106B
+:10E680001883EBFF9C58910499D35505925F7554FC
+:10E69000EC286670A13F08BDD5898AB6C0EB1AA0E8
+:10E6A000999419CA25C88692D65E38AC9F56622FB7
+:10E6B0006FEB854D817E3AEF5F6FAA255FC32148DE
+:10E6C0001B1CB9BE0BEB1BA9006023BCED006B9EAD
+:10E6D000B4A5E326DB8B7F1C57DD9B7BCC4C781FDE
+:10E6E00012F84FF52DECA64F63DE3979E3AFFA92BD
+:10E6F000F9558A81F8851434DF46498A635A1B8E9E
+:10E700009DC768A3398113CED0BDFF3400968A3EE1
+:10E71000B4DB200D1A20C4360C10D2F11CB5DFEC8E
+:10E72000FFDF69D65B25D665BB03131594AA727902
+:10E73000066366A43346E7B065B62674F4922EAB42
+:10E7400005F32B08FA84C7401734E039C1DEA2EA8A
+:10E7500086CDA30D9DF21DAA771425F8697487BD97
+:10E76000972B182B432F31E9269057BEA3D9663734
+:10E770002CBF07A290332E63B3EEAEC677DDB92867
+:10E78000EFFE076BC33C0E780C48CF87A38CFDC708
+:10E790006B93D56F39525FE21896C9B19DC5A2BE81
+:10E7A000FAF326AE008373BED310EB7D291F2B3600
+:10E7B00076971F380CFBBD8E7D24A80C6693DFA0D6
+:10E7C000EDB6174E41545860BA9ACF7F8C3506B6D5
+:10E7D00033119D43DDF81C4621DEE8A6A9DA525A22
+:10E7E000E9BA3B2E0AC22FE049EDB42EB5F5810BF4
+:10E7F0007514EE9416F64FF0B4EAABCBCABD6808B8
+:10E800008F9AE136A61B9218B14B5EF44C2F1AAECC
+:10E81000B799F3E97667399F0260F7A266CE8785DC
+:10E820004498E54C572BE4DDA6E826B74929D58660
+:10E83000E30C30AAFA0953D5E3E526000D01234F76
+:10E84000B72E39F8527E4D75BABF5972A02B9D2E46
+:10E850001FFA95B6B0997A3858CAAAD944D1C75385
+:10E860009F02AAA9426EA664ED0C95453EF7E5E528
+:10E870008D9C43A4D464D7C8352374FE7CA76A2C2E
+:10E88000022013D013B387F043D97D1AC6B0E47BBE
+:10E89000F932A498DF90587177F58D9C6C6AE50683
+:10E8A00027C11D3D865934D8FDB37ECA65DC0F37BC
+:10E8B000E3C3F28C6EEA5CF594FF88B4930B72BFED
+:10E8C000DBB6F61D83037D8CE7842FA6980645F5FD
+:10E8D0008DF8A7667DEEFB4C4F189132BA8D7913F7
+:10E8E00085597AA8CA3D63CF3F2A6B88D6EC412A66
+:10E8F00011D696A787A7322ECB59023B8FE40C4A3C
+:10E900007E390F272D5A2AAACCEA27DC2CC425EB06
+:10E91000EE62F079E83070DC12D8ED9BA0073E1E65
+:10E920002FAA8BA56370D51E5248CE9FDEC71D90BF
+:10E93000B4C1A1056006B4BB4F88FE7F55C8CB2D7E
+:10E940008291F8B796A6D5DFA53EE9CDDDA801D224
+:10E95000A95A6130AECDE367D81DEC631B5BD208CA
+:10E960000B5327DA80BF02DF0FCF28CCB3FD509CBA
+:10E970005991E72FDC804D4CD226A7F3BD34D4FB50
+:10E980009FC7E8337B728248267B55FB8BCF721E74
+:10E9900038DD0FC64892F7939B612C75BC3F8CF510
+:10E9A000A82314E1DC7085C1229B0D2EE37A774801
+:10E9B00078B8B990ACE711E05487E3FDF4C8C3C65A
+:10E9C00039CCABB6F65571C6895C0A6AEB53B8F51B
+:10E9D000AD88F873DAC51658ABF659CA5F0F38958B
+:10E9E00076FD6F729519880C854953C3A4EFA11069
+:10E9F00099CE776EC7153F7AEFDA04B5C7CD953D4E
+:10EA0000BC27E4F25CC67FB89AE714FD9B95A8BFCB
+:10EA1000EF75A76E86164C6922FFE5D150732A6BFD
+:10EA2000494EA4B1647D4735296465E33A4E97B1F8
+:10EA3000FFE087F50DBAAD15891049FDB2A959EE71
+:10EA400057AEDB5B3277BA610194330A06728B5B97
+:10EA500066B07E41318A46709D0C8BA4C595143FEB
+:10EA60008566B380F8B34A892A68B4906B449D6187
+:10EA70001AB40C9C8463CE8D399806C0F1602A7A52
+:10EA800009DDE4F83AE13243A8351C53453D8D32A7
+:10EA9000BE6D426BF4F5C4E17961E77C85E239C271
+:10EAA0003CD0242DF57A08E4E8B98C3CD94D7801A6
+:10EAB000B17544A7EB66372345E7723471426BCCDE
+:10EAC000B6930A26A955FF8C65DDD2C10188BE5ECA
+:10EAD000C5108648EF7134182A82F01E0A0A5A605F
+:10EAE000AF44B126CFCBBD18E6971D39FCA65EAB6F
+:10EAF000D25F6D0640C769B99597BD10EAEF6662AF
+:10EB00007515B1C288E6021758827A3ECC4AC1A276
+:10EB100079FE11035AC9081CB70EE63FBFD95DEE56
+:10EB20001C7B25EF5BA751DC818F84C5E0B188ECAD
+:10EB30002D3407A7DD73BDCB29983073C7BFF87E8E
+:10EB4000495A1DDAC4BD481F594A4B8DBABB9A2891
+:10EB5000D683D6F4B2F2612B41FB71B447B622CE14
+:10EB6000A2D8FB065397825A9E7DFD9FFC8251B826
+:10EB700061A9F2CED8F5FE915AE6626A6278AF706A
+:10EB8000011D740273CDD8662F4DE31FDDA0A57D56
+:10EB9000AC3991053568DA657D04AD9D2F4ED3A55E
+:10EBA000631B286B259832CDD6E925EC6E762F9D18
+:10EBB00054B89892D38C384F98459BEA7347A87EF7
+:10EBC000B09389CBDEF808E53491AD5F0A8CE4D7C9
+:10EBD000F776670366645846AF8FB4DD82176EC25E
+:10EBE00007823C77973D4E5C3B71F12882CF8C8E3B
+:10EBF000FD0D0AA6ECFBD4ACDCC8061B8626A59846
+:10EC000010AAB15F06C30E5DBCE1EC0E70EC09B05A
+:10EC10006D8DE9B4A902C95FBAD1F8ED1D0A44ECC3
+:10EC2000C3223D996B769A2416B1DCB9B236BF0D7A
+:10EC30000BB3333FD9630655E5636C2D7A4118D782
+:10EC400025B704829A271CD5AB1CD032CA242DDDEF
+:10EC50008125D9B395D86036BFB44B46BD9AC5AAB5
+:10EC60004FBD2D21D4F18BFE271F76A0212131AB82
+:10EC70004B949A44C049F5C8FE224771E4AFDE3692
+:10EC80007372A2E4424492475AA1774E2AB596E3A2
+:10EC90007C2189FC7315DFC96A65C4F182463E8711
+:10ECA000C49F0E89890D28CB4FDAE5A0D93C8FB2DD
+:10ECB0004EE1C8C36E2DB09E800ACDBFD18C03BB80
+:10ECC000AF37ED4393D2E5985AAE5B698D753EE55B
+:10ECD000F05F5EB61CE0452D104523E4213CD4B422
+:10ECE0005D63161F057AB2665F838066DC80AC8246
+:10ECF000E03DC7D2DD58C413CDF9B43C4C4A36B719
+:10ED0000332FD5B63812AE3DE0AC41ADCBBC23615C
+:10ED10009C8B8F4438020B0143291CB14004FECA6E
+:10ED2000F8C9829AAA6BC285928D8316D94CC915EF
+:10ED30000F1F2C37FE1D7234A0D68076516BB50D97
+:10ED40005582FEE6DCCDF9D4817D18CA40F65729FC
+:10ED5000B443158F6B9598BA2633D0BFE746C933B5
+:10ED600092A256FB7621AB2B9DA4328BF6BCA45D00
+:10ED7000B5B027993C50E15572BC3895F77C6DD6FB
+:10ED8000FFF5C13A1FFE07823D616FF7EC63D18644
+:10ED90004C2BB864FFEA50865FBA7EE6A872D13485
+:10EDA000C038CE1AAFC5D86EF955DFD3BFD0D04E1C
+:10EDB0006567EBADD1E7B2C693A549282676E0DFBB
+:10EDC000A5A1C868C07C8EEF5EC428CDD72E540F95
+:10EDD000C365598897F4657D78E5C171F1C7A3369D
+:10EDE000231E570F2DE2908ADAB81511487AE5E70D
+:10EDF000E04386F94C0BE5DA983C0602CC132E3C36
+:10EE00001FECDF181E9B8D68F53BF7350E85EB0672
+:10EE1000D0AFF2A2706556035515AD26C8A527F6EA
+:10EE2000D02DD3BABD33C6E2AD6AA895F83D908423
+:10EE3000ABF909663239A256918F32366A6FA38DCB
+:10EE4000D2546EE2EF6260EE3729674B46417E4C4A
+:10EE50009179CBF48B0E1F7E0A43F23A1D0E744259
+:10EE600052C6162C4537D4915BF250A2AF5ECE90BD
+:10EE70005DD10C00431CB3801D4F8B77334E7890CF
+:10EE800073AADA4A02A654A229535F6FD0DD593C17
+:10EE9000996F2B732DF257EB99E225DCA0A56ABE82
+:10EEA000527F050C70D748F635EBD87C4247249743
+:10EEB00041A4CD4698B2AA6A66B79C544788482DAB
+:10EEC00074BA2A924EC42B7044FA67D99B73717F2F
+:10EED0007678276393406EC22BB7BFA44FB4FC2C47
+:10EEE000446D872A2A75F29C35453941BF7F3561CB
+:10EEF000FF1569136F3294B494AF4E751E227B23B5
+:10EF00005343542CFAEFF448419BA841AC20574995
+:10EF100008B8880778F7C39378240966D638A2889A
+:10EF20006A588A64177C43D26C0369B0359288268C
+:10EF30004A9F21F612F16196F23EC54345C40A3C50
+:10EF4000B09C2C444104CEB72CC4C159E4A0A509FF
+:10EF50007BDA52E411AC7814B24100FD2A17D4BB1D
+:10EF600051EDC4B428A871EE25A19ABB7A5BC5B84F
+:10EF70008B09EE144F24BDB47E5C9187939E720F73
+:10EF8000F31905B4F65B91D5F8FCC9B66F4E1EC7F0
+:10EF900033D6F4F22CC68DD6EBB6F118672B1B676F
+:10EFA000B4E805DE1EF92880A99AFF44E468DDA9CB
+:10EFB00095A305470B6687B494C719E7E888190A33
+:10EFC000EBB25FF3BC45F179B46E420298E4736C26
+:10EFD0004ED7AEB8A1E2149C239024BE3BB28D184C
+:10EFE000DE63593951CBCD963FD9D3A2F2DB15461A
+:10EFF00019C617C79F296D4C575BD0C06C43A2EC54
+:10F00000B6B26D3435AC2DF83B26807A47D759B867
+:10F010004712E2026D5AB2F886A9BFF2F1F0D1FDB3
+:10F0200093EBE43D261128757F78792D47D86D182C
+:10F030003FCE370E5F101AD8DCEDD4D07A1BB69EC7
+:10F040007E7562799F39A6D52F44300D4A0D2EBCAE
+:10F05000ECFB1D2D15B7FA1DCA1B752CFDE24933BB
+:10F060008D7F63DF31D0F243B67EFA62C6C64DEDC6
+:10F0700047F85C4323280E826E4B0FEE4600F1BF2B
+:10F08000FC32A120D8FC1DC7CA1534B79AEB0593F2
+:10F09000016E1373ABDC9685427925F6B18A36147E
+:10F0A000E33C786D1CB5B02F37BA5A16A47256D00F
+:10F0B00023CC523F49309184B1EAAE32003809077F
+:10F0C0008B7DD688C3BFED3D5E586AC05F8948E43A
+:10F0D000165F78DBB421C505F10DC9E7E29ADFC6FA
+:10F0E000C8AB2403CEBE70245526CC7F38ED1D5B03
+:10F0F0002EF172D257FC1F9B2080A17CD4993A56E6
+:10F100001AE939A813024B772D59A2315994D72700
+:10F11000A1BA022C0E05C483A953CC53AA66ED12E2
+:10F12000292CD4323BD04388E751EA1EB853046CF3
+:10F13000899A8E4FC451A230FAFFED7AEAD06C263C
+:10F1400062EC982BBA054BBA9A2D17C043F7D72F0C
+:10F15000068AAD6FDEB451DA5C7997CC8E44434DAC
+:10F160008964C807A2C7141335E2C4DFA30363CEC2
+:10F17000F356B1803BC0229C9FEA66117CF7744530
+:10F1800010C0CA4996053827B4638E19748889F46B
+:10F19000DD55DC910F4519828F441D0CFA8D8D05CC
+:10F1A00051F9BCB5EDB2BF09F30C58BDA772C4D478
+:10F1B000D2E253045B5570C0C0088C4863713415AB
+:10F1C00031CA76802DA5102DC8A6D0F28A332A9D8B
+:10F1D000FD3E35AE1A5F6E0E17EC801157F3248496
+:10F1E000AC8026C7AE2914872DC8D100E293306BBE
+:10F1F000811D5C6E104319C18F5A0258467C5EDF38
+:10F20000F2824B4828CB0D8250B3E38B08474CE287
+:10F2100037B43E8537D813C4952E778F7783DF6C4C
+:10F22000D02A7FECA36FB567CA699C9391B7D37E50
+:10F230006181C472B127EB2DC7253A4EA4EE7F73CE
+:10F24000F865743E72E0B3ADD1E6B15E96CFE44BA3
+:10F250001BF8DD60A66C73CDFC80E3C3CF1FA483D5
+:10F260002F56280769C794D48376DE15F7000BD58F
+:10F27000C2E18895187F14E34F43E0E404BF3329CB
+:10F28000CB9DF47EDA76B62CA034C25A60FFE1C67C
+:10F29000790CF79F98EF89818CD876653DCBEA533E
+:10F2A000A86A4645A5090D5CED419601EDF0D3E550
+:10F2B0006E2BC2E5584E4A6B7E284E5BBAC43B04A7
+:10F2C000578CFC8978A782E38028AF8429E45FDA31
+:10F2D000056B9BF1183CE17C2D8E2CF8C3F766582A
+:10F2E0005CC92F4BBC63B3FC054A3BF611B026F456
+:10F2F0007542D480B943AE760CCB41712CAB827889
+:10F30000322558184E48A7A197F5EB801628AC1463
+:10F31000DC9F5D22A76B7F55D8CD644D1D9ABC1F25
+:10F320002D42D701F05475170B654C19A095259601
+:10F33000F7E64EAFFA9E4E212D47D1622B40FA815F
+:10F34000D5BC68FD25B01CD8F604F6F8FC485B4C2B
+:10F35000D34A07AD0EBD4CE5B52625367B1CB1481A
+:10F36000AAE66B645A799F8835F807A64D961A3A33
+:10F37000D1B15152DF5E8522C0A6C10139A38D9E55
+:10F3800039779B3AEAE43CFC3100BDC35CD156942A
+:10F3900004C643102F48EDCF87270833652D2B3542
+:10F3A00073E8477977EFB0E12F10D315EA966CFD3B
+:10F3B0001CF9F32A2DB3536345547071A285C11211
+:10F3C0007DE50F3E6DBE7A29FF7FC3628269CFA0C3
+:10F3D000981DA73F6966E75D8FAC383040398B5F79
+:10F3E0004AF96703011CE9BFBC0493887381622F4B
+:10F3F0002EA1219816F35A94C1BAFEED6DDAE17789
+:10F400007120A7CC0FA2C12E1A79049CF2972A343E
+:10F410004957A466639C41641D4509569BF9E27DEA
+:10F42000BE823E362CC3248BE03DA073C3B63BCCDA
+:10F43000BB16C457AF3365D5579B7B0D472743A7F2
+:10F44000B1FBFD9EB283518B02FA55A13EC3C97731
+:10F4500051339377276A8D941A31B7B0F3BEC779C9
+:10F460009F60EE566B56E120472EE353D6933353FD
+:10F470008193453558387BEAEF2BD19EC0D04C8024
+:10F480005A20CE4AC1188CFB7FAACE6373B70355AE
+:10F49000A143D175DD6A4067B4106D2EE86A644DF2
+:10F4A0006B422C0D6E2A53991442367222EAA80A36
+:10F4B0001741258D47F1C8922FC585C506E9714CC6
+:10F4C0005AC4ADDBB52D9744D8A730D9A13833DD68
+:10F4D000FA9BD15D3F51F3D063F545D0AEDFB4F078
+:10F4E000B58BBAEF55C88E992332CCEA2987D02242
+:10F4F0001BFC55C3B4E1C8F6DC95F880F4E2277D27
+:10F5000003CC610FC6B38B1817F355D844DF0C61D9
+:10F510006DA9E09C0AE65F298C62053018D6AB869F
+:10F52000106762284EC18A3598F3342CCC148AAC0B
+:10F53000B32F9CBDEC417DE83D679098F824D56FD2
+:10F540006EAF9A8CB2100BC9590A41F0E4E9CE0AA9
+:10F55000F6C10F27B96C57D3201EC97FA665F114D9
+:10F56000741B9C6451B26122065A62C65C7B191DF1
+:10F570001C92CA5CD142B3B058A9ACF351D65F35E6
+:10F58000519767DE3B2FFCE68736D101B38B998C10
+:10F59000B885623993002A32D90D99D8AEE6D59B49
+:10F5A00026A00231DCE40581C58D436876B358910D
+:10F5B000B5A02881B5FA117126363AD4FF9AA6B9BA
+:10F5C000F2A242F198B1A607150A223DB0BEB9CA0F
+:10F5D000FD1BFDA63CEBB62DCD0386FDCF616BA0D8
+:10F5E000BE12B749DEED77E808214E14DC303A321E
+:10F5F00049827DD8F7EDB3D2CFA21D98095D210CC9
+:10F600009415F60DB32C842FEB471082C44DA973CB
+:10F61000EF55103F651AB147A72DF228D5BA5F52B2
+:10F62000338E94132A9B31A1003C8689D9A5D78CAF
+:10F63000984D5DEF20E815840CF299926EA35B1251
+:10F64000043C01ECECE48D6C28A613B094F6AB39C5
+:10F65000564A50AC12A96296FC7F2FBBADA9E013AD
+:10F6600026AA410F72FC40184108B203E2D348F4C5
+:10F6700085EFF91F448E35161E0682073502E266B5
+:10F68000F59B7463C2F3D0334B9BA53D0100180971
+:10F69000594E708F625894F51647AC440869B465AA
+:10F6A00085B092031456D64A34C113A2EFC2CE429B
+:10F6B0005422A0347426608660C30311E5A6C8C036
+:10F6C000575010981BF9CB03EC049FEB20E67D67A5
+:10F6D0002EEB6C3EF4803777DFF5688A0291703547
+:10F6E00017B487B2ADFA4DDE527F1AC12522BB0F87
+:10F6F000A3EA9F4230727EF1B803A2BEE1C2C89174
+:10F7000062A41FAB1B20423AB607EEC2F76CB5BF2E
+:10F710002A0C0435376AC586C4C38B1D52164BA804
+:10F7200050F18EC997E651CCF968E1D0512B649C19
+:10F73000AA165630FB064B4702B167CE6A7C415988
+:10F74000EF3527D66D6621433ACD1C64E18AE30D7F
+:10F75000EC8EECD132A0ABD7669E9A87DA6EB946B2
+:10F76000AC82148BE8A533CB545A7AF2DBCAF54548
+:10F77000C777F7737329C5F390DBA2366C169B0924
+:10F78000FD6FDB7ECA73D847CA95A4026D5CDB6748
+:10F79000D1DF14A46DC3F14687BDD8895265EB242F
+:10F7A000464F8A9EB44476203B1BC5B71C8EB1C918
+:10F7B000F2F0707C4D071C38427C9C50278A1492D2
+:10F7C000B8D6A9DDA129893794ED1B948D05D7A959
+:10F7D000AECCBB0EDD72A0F29D3D8834AE77DB98D7
+:10F7E000300F0A4FB82412DECB7D1BD4768D532EFA
+:10F7F0006F9AF4ECEA21D950EE368AE4AAC1309F20
+:10F800002CF2EA3D2C21FA9D0D35558ED3BE0D6D9F
+:10F810007721E902D6544F6DC2ACE4514BA90DCA11
+:10F820007EA65151B9CE454AE139C5D4622DBEFDFF
+:10F830006E83E008E0B49EC8D03F9804846E2288AE
+:10F840007F1F95BA77AE72D08C8F72C819C878DCDA
+:10F85000E111C06DAB1426BEA279980F5FDA67B7CD
+:10F86000B6E583FCE291ACC48EE9C11EC282EA70A7
+:10F87000722420D78B678C7A1F3577F2D5E9938D68
+:10F880000388BF155F0E4233F69D11B38159721381
+:10F89000DD052345045188FCAA43429BF3CFAFE822
+:10F8A00005118881990B465379903BFFDD91616F7B
+:10F8B0003B723920D4F16815BF930BCD69D9EE01A5
+:10F8C00048D040923B670900A72558AE1144F43F49
+:10F8D000D60CC2997DFE49E55EA8A9434846E7C318
+:10F8E000FF2C36F41A4B11CCDD2E05A1EE5D55151B
+:10F8F00068B9AE4DB9D9FEC39E939D1CA377D32F93
+:10F9000027F7C7CAF468DD9A2ADEEFB7E22B56CF95
+:10F910005ADD829AB501A448CA15AC806C5884346B
+:10F92000EBE9EF99E06C7A9C9B1B88653F9187140B
+:10F93000C87901CAB50D1D89D7C7FA4CC7157E8293
+:10F94000C828559E72A7BADFC5C0ED7137F3B3FA68
+:10F95000904F952A9DAB209B4F4E208B048ACAF175
+:10F96000F1B449ECA61F7E7E967407FDEE85C50EA8
+:10F970000DEC1E354132EBBDEE2B1F868499740CC5
+:10F980004639C7A2D6E52DC9EF6C06B8381C0D0D57
+:10F990004360E262B94D8CF8778E7528C4CCDF3AAB
+:10F9A000D05F3B143F9A2E28790C875E183214F5ED
+:10F9B000301EC535C8633C8EBC5848B4C6C9A70FB5
+:10F9C000C8B6DDBAAF10B0848A4425767B6F29377C
+:10F9D0006D755E3A1202589733B46371C7D02EC763
+:10F9E000EE40B360B4C794A0B137D32CCBEF17402F
+:10F9F000F28FC1775B2594F3797C3B03CDFC4AB74A
+:10FA0000AAF0BCF87F4D4668B220D00A87EE6DB9E7
+:10FA10003999C522427025D8A838269A3530A0E1F8
+:10FA200061C02EEC8B327F7C1534EC3E867A8036BA
+:10FA3000F4ECB5C29FEE002C9FD93B4BD9B795F69D
+:10FA40009A92CF41F3142FD7AA426ED5DB4A827A1D
+:10FA5000AF724A60A517350E8B07C5DFE7ACD28AB7
+:10FA6000546DEE31944B7B5D70804FA950AE9EAAD1
+:10FA7000642A37049022E2A585B07AE0790087EB0A
+:10FA80003CA9BA7CF7ED478FCA9EDA36EB9147F76F
+:10FA900075C33FA871B5E798F04FE1FB93A097A716
+:10FAA0002ED9829A654CE603302EA0AF51F8467CE1
+:10FAB00032446209B72F602DC6E20E895DA6CB6D78
+:10FAC000948F26FC226F115B5311491771FC33751B
+:10FAD000171800E8AE2B69159AB6D99B7426C20890
+:10FAE000E1DCD0A84D0BE1C4D9B1884E45F417BC78
+:10FAF0005C1CE406EEA0C9F3035288B82771239278
+:10FB00001409391CB68C9842BF576A86B58619729B
+:10FB10003A99D582236EF9524C586B876D90495CA7
+:10FB2000D001F31100CDFE1A97413AD6FA13A7334C
+:10FB300003C37253088B3D7B14ADA72F77C97F6534
+:10FB4000439DA59BB18ACACFE43F4AB7087C0D9B71
+:10FB5000667B202404ABCCF46FA3C8F672DBEB41C8
+:10FB6000ACC89AB4DFD2DD6E39C7E577158E6DD299
+:10FB700060E234A9BE15EE851042798FBE70F99906
+:10FB8000C2749938C655A2E178D0F3E33A3564C619
+:10FB9000B71853CAFE493C8A5941C17D3287259125
+:10FBA000A0D758F129FEA0F028ECE39ABE4AD0F184
+:10FBB0004C74744A16C906BCE2FEE99AEE9DFAAA94
+:10FBC00009DDDF69562C7CF808C84284EB4A55E40D
+:10FBD000727FECDC3DC2FFEC5C48A3A87A5A74A4A7
+:10FBE000E94D5E95D27B5E0ED37CDE60C09222AC86
+:10FBF000666D958D928A7D5E21BD331E5ED08F2A03
+:10FC0000ED760439C52EBF9CAAAA876185A09DC345
+:10FC1000D4187A30267DD8820A02F7DDAA463599B3
+:10FC2000AA52DD6D4CE97D20F91AA25304E377E670
+:10FC30003B923EA0E85AAB900456949E4672EA6905
+:10FC40000C497A486068F29441F96AB1C0C09B756A
+:10FC500063B40F637317C2C8F053BB89596418D2D9
+:10FC6000C36979E60FBCB2EA58D5D747B44EE89FCE
+:10FC7000A65EF44C0BDACDFDF0E526B43C333DB185
+:10FC80001A98C5CDF2B6E4FAA148FD8FD5B48F5EBF
+:10FC90009A00800ADEE68BE3D579F3876C23BDC832
+:10FCA0008804FECF38852C970B3680C63ECB4AD5CC
+:10FCB000CBFD00463343D2E558C424E5D4253B6749
+:10FCC000C2A78305CE039027F377C5266FAA6C0AD7
+:10FCD00077E825CFEEB62D77AA9586FC53161575D5
+:10FCE00096468631D26DAAA2966DB0ADA4A1DD393B
+:10FCF0000CD447176C682C938921BAD57EDBFDCADA
+:10FD0000957550C5794699A73C4958C93232537107
+:10FD100049B03DDE4D7E4FAB07D91CF6C949ABFC5F
+:10FD200082CCFBB2E41ACDC7E3DCE2781C268974EE
+:10FD3000B6B056D564423BCE3963963FCC6821229B
+:10FD4000E155F5A0E70154B07FF0E763ABDE160D97
+:10FD50002FCF43832BD5F7C804F02C1D21BF886F0C
+:10FD6000F1D3BEA19D408E2D2ED171B50452ED640C
+:10FD70004C6ABB2E8F4F1FAFBD0661C44D2D6B5912
+:10FD80008392EA32C623804ABDBF3D1C9CF9BD194F
+:10FD9000923B00463C000F56765BCED60D5C91360A
+:10FDA0002ECEC15B2A0F1803C1B9641F83546D277F
+:10FDB000A043769E7D8DBEB0650A563CFBDB19786C
+:10FDC00023FDFD359AAC25423940D601B5E6CDC3B9
+:10FDD000A3536B7C13F45A3D3854E8CCFDB3CD707B
+:10FDE000DCD4E46F16E8AB0F20B9DE06DA73862B9D
+:10FDF000B93DB9C008C4E172854D9C48E4E6BE86B1
+:10FE000083EB47944584DBDC1F7EDC09359A1FD0E9
+:10FE10009DE24D57627A00F864E786FE2BED28EBF1
+:10FE2000117C8699C00B98115383CC73CD6D1F2C18
+:10FE3000A37ADDF68C2EC0137C3014055E5441B9D4
+:10FE4000A72B65E929B2DD647722FAEF92AD1F3E58
+:10FE5000B1F1BCF6CA86587156C459D41CB558992C
+:10FE60007C7ABD4648CEE6AA9FCD636FE56205B3B6
+:10FE70005CBAFD834630988A4F216E0266A87F4E99
+:10FE80007125416289BE20305CF7998EF1E00DD07A
+:10FE90008BC520A1A1B519DA0028A41BD3B11E5827
+:10FEA000BECA459ECAAC1039B47AF64198B3B507BC
+:10FEB000283E3EEE0523AFA0A7B2197DC23C1B45EC
+:10FEC0006A372092872BE6168E827AE02E9667FBA1
+:10FED00048A428B21276269421180CD0AB2A7FC2EF
+:10FEE00073D69835F5FD8A240F88A2F553BE725B50
+:10FEF000456586694047EC906DBCF4E04F54BE5CAC
+:10FF0000DE743A8173A6275826BE6CE8D729B499C7
+:10FF1000719B47794FFC13FFD58FE2BDDA42793CE4
+:10FF20004A6ACE71EA7B3553562B13A7F7C439685A
+:10FF300075D520DA984D5B3CB70D7167C9D53B1973
+:10FF4000082006BE5DEFF0E8038C598B38AA9B9819
+:10FF50006AF98E318C372E5D4983CD226DB3FF9CBB
+:10FF6000869DFF0618F8DF096918950A2F248E91DF
+:10FF7000136585426592102C4168F8EFFD168A6979
+:10FF80008451E3BA79E8A2616B7EE5E71136529AB3
+:10FF9000C230B78A4C66DED2A69231CC59A507345E
+:10FFA0000FE7193A0AD6B40B40BB18B55109520DE8
+:10FFB000CDD42E889E27FAC49401CC545B6E4B247A
+:10FFC000549332B90C3CA511B6BF5FE12177C93C0F
+:10FFD0009DDDA3ADB2E18E8FDBC1AA794657698C56
+:10FFE000CCD932B477ED64AF9B8F578ED1416BDFA4
+:10FFF000CABD96EDAF419B355B49370E6060175C1B
+:020000021000EC
+:10000000047ABEA81B37F69DAE19178E31AB2D7240
+:100010005BE2FCF63BB96E5E78F17681EF1A51B681
+:1000200061820F13F838352D106275B3DCFD20E9BD
+:10003000A97F7AFDC770537C516A3A38E75A8534F4
+:1000400038A3F391C648FF5C93300C3555C7C1D433
+:10005000D5906D2F01C95FECFB8055AD05376C4E17
+:10006000559213DC18F1BC6231DD2D3388008C4EC3
+:1000700060A4DA668FA7D9C528B11C9A106990715F
+:100080006A07E9E91DE32C4AD6B8B94F56BB8FEC95
+:10009000432BAAA61BEB764860B5A5AA107E014D9E
+:1000A000563EDFBB064A800C2263D8764B2A1D568B
+:1000B000A7871C6522585A5EAB335D52906DA284AF
+:1000C00092112F8E01840AFA6DC81741AE652E7CFD
+:1000D000B2F6324B9EC3FD0A395F2F0C1C5E5B7F6C
+:1000E000EEDDAB8712F3A85369E57B9D191E4D0722
+:1000F0004CE75583E6C9CB33F0561A2C44ECA6CC1A
+:100100001FCBFF3A3FAD17441EA6F628664A677517
+:10011000240EEBAD360EB4320BFEEAEEEE5D5E065B
+:10012000548C909A738231AFDFAC10D004B1C80CFC
+:10013000947C507C0B0028FB6AA49F251BBFC392B4
+:1001400095078DC193A6C35C779FD9E5C1AC4F6E6F
+:100150009A4A37999A5183B86CD4B8CA957A1203DF
+:10016000C5435C656DED1452D9FB28C731CDD53F31
+:100170005AD3D3DBEB4B9D177D0AB24D3E96A93384
+:10018000377223E62F66758DB6F56B75B0F42CF3D8
+:1001900064C7BDEC3DF3A82447535142BDC12E6F47
+:1001A000B0C153DC5E9E15FA2060F5D0B3059761AF
+:1001B0000C9CC407BCCAD0BBBA042E9CCEBF49D885
+:1001C0004D47B4D135D581B3C1AD1FEEED0B37FC32
+:1001D000D51A0FA335235A33677D910C8A956FD4B6
+:1001E00074B0A8E11AF4A0CDD805EB34945300A95B
+:1001F000478C96A226C8AF13F3B597F315D852983B
+:10020000D7EA2416D4949F5DC9C2E3FBD3C3A8F1F7
+:10021000C79E52E0F961828AF71423D36FBF2C3452
+:100220007C6712FC793830CDEE0760548E36771C2F
+:1002300038D227F4D34EEDB66B113E4923DB6DC1A6
+:1002400028E993B56833BB0026C6B9A7D5489902FB
+:10025000CEB4013C8D8B40BA7C7F33716154124A1D
+:10026000DF601753340DEAD7840D484F43D5DE4F76
+:10027000E3ED88D37A4F5D28A6F058927015167674
+:10028000C038CCD41272BC5D0D5DF46DB1B5533E77
+:100290008A262C9D98DC3969344DE47B983B6E614D
+:1002A0000049AC0CE849D74DB272CCE59B81917105
+:1002B000B3E4F46B6CB2D6178D9A82339273BE9806
+:1002C000435DA9080ED30A1880E2A23CBEB5DFA0A8
+:1002D00070D11BC0EBE94F6E9DF13A7AA6BD882E16
+:1002E00000F209ACBF3E78F829166B6BAA4FACC17F
+:1002F00046D74A4AD3C69949C0C0ABF20109DA9041
+:10030000D12B232E9FBDD22BF7E1EAFB0F93099A45
+:1003100079D7A2FE5579838D0E5DBB9D9A64EB5013
+:10032000013D819E9E6669231E0E5C6052167B4ACB
+:100330002B92BEB036B0DDC881E11A594C19AD42DE
+:10034000CC1A9A9F0EC04E42F4C9221DA8BC9D91A2
+:1003500042B652C137EBE9E7BCFA8324626974E71D
+:10036000721783B0FDCC929F168A856E43126F7010
+:10037000DC9CBCD8EEE2A624DF4F468BDF4EEB1AA6
+:100380006D1D110FFFD67117C4B977F7154841F9E4
+:10039000BB79C2D0A3BEB0E9ED3B662F5DF8DE7D30
+:1003A00085043C6A24F4EF6E914175FE46165AC1ED
+:1003B000A0A68E3B22BEF579FD9B47BF972C02A5D8
+:1003C000A22F394ADBBDCFE6F622820E8F935B4B1C
+:1003D0002687713C457FC3BDE313EB4872E6E674A4
+:1003E000FD6301AFE4CD5EFAF5362E4A49C2EA61FB
+:1003F0007DF44A02EBE8E4D156E70E736A571F51C9
+:10040000CAF07815982D19858B7228557FF2609364
+:10041000435CB23F47B8F359E9C2D5B001CE358B42
+:100420000A042D6902AC884F5537416B56ED4F5980
+:10043000205FC4D5E38E82E8E1DCF580966AC7FFD1
+:10044000B95B6661EDA6B88CE5D09B5210C1E22F76
+:1004500020D366DF8C801E139CB9641EE30F1E72CE
+:10046000B1B0C8EC2C5F0DCBB025CC1B7128A1CD51
+:10047000F1F825E3152612C581E8686ACB7CA76DE3
+:100480004FFA9C024B979573A36B85F2FF743E372E
+:10049000852F9D59EA0BC3D3A42F185E3791A51859
+:1004A00082C3BD5DC995A695554C5AA03A7F3B9035
+:1004B000846AC9A62E1F419CA861DE67B8C5A34700
+:1004C0003DCF26109CCA6D5A3BFED0FF2D200AF965
+:1004D000836D3DE5C5C114808B18B77AC6EE48051B
+:1004E0002393C8014743A9920FF8BF628395601216
+:1004F000A852AD17D55BB580CD1FBC2B2F5147AB94
+:10050000CD6F13B7FF0F4D5E1D7258C0CFD7080ACD
+:10051000EE244F42E60E90294E3A8333D78D879DC5
+:1005200008FE307F00A853F1DAC41C87DEE937D01B
+:1005300017E004365C3ADC9779E9757B2731D10600
+:100540004F218D3CFC429B0E5AE88DB4C2001CD753
+:10055000C5452D6C78E34A22EB2C2F07C227D582A4
+:10056000446D2F6B7E02A335657D0FDA5791A88508
+:10057000C578FFA2015C29DB8A5F5B50A0181529B2
+:100580002B3751A61ACFBBBD8C970ACAD518D21BE0
+:100590000783D3B9FAEDC886B7BF4FC99B40794BE3
+:1005A000786B1AA0801519EC1BC6E2B3D2AB9B8EF8
+:1005B000CBA3E8D41F98B7789C538532FA01E22D7B
+:1005C000A93332EAEB70238C30B40D40E80D3D1FA7
+:1005D000D870E1AF2F14D07B36462C8BAAF1632F55
+:1005E0003CBB7E4C8FD3E233B2CE1D23E9AF9A9948
+:1005F000A2DE95239F457A07E2A2CD2EDD3FB36BA5
+:100600001E0E36E14002307097C4A719F945D2C5D5
+:10061000FA861EB62B628605E15152069BDD99A72C
+:100620005ACA9AED54A5DF04C1470A69BF6C9233D8
+:100630006C3DCD1F3CD8E05C1B23C163208CA6E23F
+:100640008AA5A8BFF97676E223348E54DE8457EF6C
+:10065000077FCE4B6AA47E4F7D787778826437C758
+:1006600006D166D08E6F6C0504BA4E045C6B2911FE
+:100670009B14B3368B34BC492B4EEF24691692354C
+:10068000DBD2F7BC31F8429F95502AC81F90A13B9E
+:1006900003673ED4CC785492E9434A1FA767D84BEE
+:1006A000EEA94B4C34CA9963FA1FA9D9916F30A8AF
+:1006B000E47275EE75B007D6F8AF3608C773022F2F
+:1006C000855443291215A0EA9051D27F820927F65A
+:1006D00072B597F7365780EA558B5812D89AC94F9A
+:1006E000FFF1F66D36E74E6ECCEA58B255101F9604
+:1006F000BD002B4658289F84A07560F30EFF2A3357
+:100700006D92F97CC5BC617C56E51920136083C2EB
+:10071000B8372EB067C1162D226DE7DFCCC07A3C0A
+:1007200074F5F597E88B1C69EF33F3AE7979CB4715
+:100730008C1EEE71E13C08747DD6F690651EBB1EE2
+:100740006D6A46C0A7DF6E9B0CE6405038DBDDE3E8
+:10075000D8C0BC582A46EAB3FE068869CC1E0AC730
+:10076000D9E82997E0049C55B9A411F1DC05E7F814
+:10077000BF42FDE4FDD1C0E0617DFBEEBE56E82E38
+:1007800008B02D690441F19639CC20FE4DD9A35013
+:100790001DFBED868B7040ACD7601447582AE2E30E
+:1007A000D5239663C837BE11B3C40AE34865CBBDF1
+:1007B0003BA21579D501188F72C61B0788FAFD4038
+:1007C0009093E675F248B5910993DF519855699871
+:1007D00079B9E39839D1C639B873B9B167729885D8
+:1007E000DE53BD49BCBD29F268A305A4A1489D24E0
+:1007F000704669EBF365BAB0DB379CD7094A5321E1
+:100800003D1A19DAA1611C92FC591C1731E946788E
+:100810004DB1CB54FD818352312941FC68A3307323
+:100820001909B6CDEFA7962E3A7BBE20E0E2EA91F9
+:10083000F95E6AFD1C4F1E70EF4B652859F76CDF9F
+:100840003C048A6B0FD553D80DF56DD1F68C8DE92C
+:10085000C985B386F07F315972A22780D326EB88F1
+:10086000AFD1212B857C983BCDBF2FB463B4D6A6E6
+:10087000070A2229567039CD6FC08D633BF4C74EED
+:10088000136EE8A29BEC46AD54CC225DA2874FD6F6
+:10089000DF0E6AE50C36B2B8E85BBCF4E37AD491BB
+:1008A000349CAC0F037B81DBDB8B610DF6CA0FB38D
+:1008B0008061DB50451395A29196E6D3634400B85E
+:1008C000DDAF9963CBE28C338B923928BA73219ACE
+:1008D0006F31C6C6C6296D6F5F3A91689709984611
+:1008E0002A56E025C7659309433917FC6344B15183
+:1008F000C857A45AC4FC22C783AF716E5E16252761
+:10090000F583F4CDF5886948DE491A2840A7B21569
+:100910000FE3DB1DC4E945165A026D58A0B46C17ED
+:1009200056128965AB82D448AA77B88177360832E7
+:10093000A5C4E16A79C6D66ECBF88278FAEE275F55
+:1009400068ACBC12113F527558E5862E3698EDC43E
+:100950006EA798295ABBC95114BBF859DE822AEDFB
+:10096000AC7D7FECE958EDFE2D4B30345A59B44F35
+:10097000AE55A874C2F0E201E08D76CF56A927E00B
+:100980003A465E885E09ADC05E9275823478085240
+:100990004800641F7FF6792DE31FE1BD1A4A997E56
+:1009A000DB137C7E5CC5A5B715413B266DC6C979B6
+:1009B000FABF61DC692024F8CBD7F56C00F341CF96
+:1009C000F24BC83227E58AFF540ACF0A8660AE97F9
+:1009D00058CCE624EFF3FF9B238227AF80DC87E42B
+:1009E00085D9D76E965063C148DB5392B51271CD4D
+:1009F0001876B30E753519D72A84A4EB26DC9CC66D
+:100A000013AC69553E9D56755E835BB888F8EC7CE7
+:100A100053B5DCACBB8359A30978900705359EDF3D
+:100A20004AD13AD8BFA3F9BADEF1A0C30735DFAE89
+:100A300048DEE332CBA30A941862873367E70FD608
+:100A4000509C3D0F0A2F724CF1970DE5E89E340A39
+:100A50000111A60A4E096DA0A8CA58E133DA5ACF8F
+:100A6000430FC51159F2813D3A8A62CA56D427967E
+:100A70001E008CD1167ED40A9C880848B06C2C309D
+:100A8000D88B6EBF9095DA2774881830BC3B1A9AC1
+:100A900052E6371085AD88077F468A51620DCC2912
+:100AA00042B035B04719C73A69E891D91A64346B36
+:100AB000A8881BBCCFFA637DD1DFFF38207D1908E1
+:100AC000D7EDDB06BE5B41B8E50D6981688BD011BF
+:100AD0003680C4DEB944F973CE205C4113E29C3207
+:100AE000D64F63F880AA4D45A73AAA5A3EB3F8CD2F
+:100AF000AAC24F10F530C49166A414D994F8C31A51
+:100B0000C88E088E7FDDB9C35D81248A6FB475AD50
+:100B1000327B6874765DEE8CE3A1F25C0DC503BC9C
+:100B2000AB9287D5F94D2F5858E20FF29881D357E1
+:100B30002794A1087CF6CA55EC7ACCA61C7DFD73DF
+:100B4000851F761510F91F747B2EA2B60E31A61BD9
+:100B500021CC3B526A4FA912D241B0D59562D277CF
+:100B6000645D44AF672C41DD504BB2492EB99DB452
+:100B7000D347F823CD901C4B32B7BA2F0EFFC06776
+:100B800009E2AB48E693A471A4FE00347F1A15D3A2
+:100B9000D159E428D54D04B7C8D8AEE9CA4998441C
+:100BA000BF1EB939846D3AA77160788C8F7D9B0523
+:100BB000BD2AD195D5EA1BF64FE84FF4A94689AA7C
+:100BC000B0BCCDA3DF1E94680AEF867FCD4B8F4665
+:100BD0008D1AA7DB07A61FF91CCEA6F4119C35744D
+:100BE000B5CCC12FED1E1709E375071ED0C8FEE472
+:100BF000B42D2BE3157CF2DEACF12C8C7C2F9C5EAB
+:100C0000FF030C25AE291808A086BD447DC466E903
+:100C10001A265D0F833F18A328E0885BFB784E39C6
+:100C2000401FC88039D9DA9CA86470785F578B540C
+:100C3000F45B5FE4DFDFF35BB17DE1CA1D0CE4AC84
+:100C40008E9461B6E89F65915F3F368A132E7D735F
+:100C500084F206EDC2AD6EC61C7CBBD1D35DB92754
+:100C600096275FEFC8CCAA3EC3415767EC0AE42041
+:100C70003292A218D96A830711C2B6E8EDDD2F9629
+:100C8000FAEC5FE0C48AFDD90A6BC0ABCEA278252E
+:100C9000280FF19C138A03447E3CC83C05D750BB07
+:100CA0004E4EC677B375CE349D87FC579BF743BA3B
+:100CB0003A6EC9F5735D67EFB9842FBA41164B0BD5
+:100CC000213C22B567199E12BC00404DE597CAF140
+:100CD000263AAFD03B61F608E8564F6D5D8D95B76B
+:100CE000C6199267C242CF85933844C6CD4307C820
+:100CF000A7B1F3444E2776747F26C40EA8C595B7D6
+:100D000093577816420F1B2B42EC991B72F144C685
+:100D1000F5DD022423C404C9A086E26BA3A6273014
+:100D200031A0517D1DC4431DCEF5FBB5A076896071
+:100D3000BF897D68CA1305A2947268468D0AD5A53D
+:100D40008DF51F2518EF734C89D1BC6F47336C8923
+:100D50006DF8112051ECB0AE8B2465D344C8372216
+:100D60008100F7D894726C9CA5D9D429C726E44594
+:100D7000750CF21C6E1CE6D6B2EF4019D71F50401E
+:100D8000FAC815E6CF66E5A88996B5380073FDA7C1
+:100D90008C2D667A146C21EFE5A34E8660440B9A85
+:100DA0007DF8699FDE8E5CC6B80FCB1F2C399D5C29
+:100DB0004EF4CFC4AD7607BE00E85679B3D2B9A6DB
+:100DC000AB262F6407C037BE0A56B04E9684254125
+:100DD0002374D816F46A4081DFE1CC2F15D3E905DE
+:100DE00041B9D790F899A20E10D59B78B84B2BC07B
+:100DF000A5F3CF597201C6D13C102BEBFCB489DAB4
+:100E0000423EF5BA46C4F4C668D1C22E07394968D5
+:100E1000188CE8E38658E41979F0D6A32DA5E59D52
+:100E2000F7E2740251B96F2DA123670EAE640091F1
+:100E3000D0D32679AB1F40A23E5A826EA0D66C9CBE
+:100E400094795FFB26A8A7C3C490D7470D372078B5
+:100E500024D16F6DA5F8C29CE14BD03953372037B0
+:100E60007E0AA3AE7F0BDD7F77393ACB23DCDC2211
+:100E7000491937D2F38B1052E068690C1393D8EB01
+:100E8000D95CD0BF3246AC25873BB2254ED0FEFAA6
+:100E90002C883ED69011AEA0691564464990A12BCE
+:100EA0003A6AB6F5D8BEDD47928E8B1F1718E676E4
+:100EB000A91EB7454C2CE03606374825707BE599CE
+:100EC000C4D69A7BD686306DDA497870D12E016708
+:100ED000ECD0296231BA0701CA816D00E6A4A7E20D
+:100EE0001BAB111DDB01758ED74775184476422662
+:100EF0008CBC28EF72DE3E60F2209AC6A0C60803C2
+:100F0000D1D46A95E398CB052472D8683A896B836B
+:100F1000084FB291DDA683D5B350454BE5B9B17208
+:100F200024C9097422BBF228092765D546CAF9E508
+:100F3000E1F4E1425F501F475250CDB204E01EC5BC
+:100F400092269F5FA854F1868FDEC06ADD03A16DF3
+:100F5000F36FD77281FE935667BE8044B058601D10
+:100F60005004281058FBA5D61D57380E18FD0AF35B
+:100F700067DCDA80CD463487A366A9227416A3D62F
+:100F8000D2A109162F5DC69DEAA9D1C4F5E1900D45
+:100F900029D20FD625B9000FA2A2238F232C1C849F
+:100FA0000537E6BCB283BBE6BAA1261A174FE66C3A
+:100FB000F29F36230AE2690379DFE1A33C1512E4CC
+:100FC00087070EBC762B435857911DB8E5E03629AC
+:100FD00078FF79EF5BA470921FF6CCF0CED1D3DD11
+:100FE0001FA2810E66111DFE9D91ED2BF6B8089E85
+:100FF000EC98CE725CBF6C7989ECE6DED070C438B8
+:10100000E4D4ABFFD5829788C943BD3B9729974766
+:10101000C2AC046E59C635B3A3002437ED6A958E71
+:10102000417BFC2575A91DE2B367E8E9E2C2A65839
+:101030005AF904E930A3BF3768DF2AF12E96F66F1C
+:10104000AB5B3FB39F699F50C8F6C2F0A2E793B372
+:101050001B011A975284CE446BB73733D0E558D36F
+:10106000F6C03247A5C0853021E32825DBAF9610B6
+:1010700082CE88A6CE74967D60FCF8B6BDD9CFA18D
+:101080007910F7FEE1E4AE1401927281D0543ED89B
+:10109000F8A27721AEC9A0741B374DBA34A3F4F778
+:1010A000BA0AF5C5815D7888D23E4DB1267305AA8E
+:1010B0002E9D3B6A5DB02E14CF0B3E29827807909F
+:1010C00040626876FBA4B95B70A41238796C933BDC
+:1010D00066917E50FEAFE412E24D007A5884204DB6
+:1010E00065CE5816AF2ED62B52310A88A2A1A3D8AE
+:1010F000D165B8CF78FE195F2CC54655969944AA9C
+:1011000091F9EAD20FF55F35E5078BB34868A95A24
+:101110005E06FBB8A250F2421021BCBA705A9F2959
+:10112000B8E59FDC0A104418C3AC2E9C60AE971B38
+:101130003EECAE32A7F1C57CA8F95B3AC05BA6AE27
+:10114000CEDD3645FFD3080751B917A5349756B100
+:10115000AD470AD677099A8C120456EB67DC668194
+:101160004A2E18CD7A2CD852D0EF28FCEED45A9DB6
+:101170001F50D414342993879F7159F1793B1E591C
+:1011800022A3CF9B3A983133FC2EF02E50FE80F9EB
+:101190000D17151AE8E81B49F28070353320F44C1E
+:1011A000AC1A05246504B533EBA706EB3BC640D06B
+:1011B0000C2FE8FF515418C1CA0F0406159F4408AC
+:1011C00077AA42B304A791D4BFAFFBA3BE92F2D5D6
+:1011D00058525D24DE28B590698857ED5FEC0DFD0F
+:1011E000FE548C72B137A196F01104A72D4D8ACA16
+:1011F000B18FC78ACCC945CF7055C58D4C95025A61
+:10120000F75D1B6C139E732BBB62560E32F92D39A2
+:101210004F87E8991FB507ADBF8AF2FE3B59B970F9
+:10122000536E0F9F2C4822642BDC356DD90B6A86D8
+:101230002E7340E16C1A1C39BB509341F7034D5C8F
+:10124000E0A1B2EC53FE395ADEB457EDDB77EDD5B1
+:10125000A544A96F269BD1D4D71CA7716B6B2348DB
+:1012600015EC1CCE67C698B260CEB2D9FB069D289D
+:10127000B9018055489C24A2900C3C556367855861
+:10128000236956790B0FBB5BB6688ACB8E4109A9DF
+:1012900041FED4340A85D6094E7527EE11514634E5
+:1012A0004933A5062E765CB707074573BCF36AC2BF
+:1012B000EAED7401DB104A19BF8E0AF18322D8626D
+:1012C000D0EB22D6723F812E16C289A5D41F3E2AAA
+:1012D000E6447279591DEAD2814867F941E1182E36
+:1012E00035CFC8AAA2867C15503FD30D30907971B6
+:1012F000503F4C4A544A3810AA84491F7E3CEF2C78
+:10130000CB7E44B3ABFA094F0E61E3B79189908865
+:10131000E8EA1E5242C0609B4047A1A66CB4C35A83
+:10132000FA76041A2A932CF884BE9B5914418271D0
+:10133000F50B8B8FDD53D1378C1094F84AAAAC5F34
+:1013400089153F562453B0C32F4DB684A3E0B1494D
+:10135000C3954F862B99A8177132032861370B1458
+:1013600021D88343773D3605F65177B29FD146B5F4
+:10137000DB140DD1D57CAB4B54D6EB66673C4F8666
+:1013800048522A9096DD3896C9C437498AA69820D3
+:1013900027E1118B271F4ECCBA8152B6765CA2E7AB
+:1013A0002DFA5AB266E99B159583EB8F92DCD4C473
+:1013B00092F858D8765FF282FFB738FA655F271245
+:1013C00020A0C6D7D436DDD71CB37FF0C5CBC31E53
+:1013D000C0B23AB3BC164A02DB12C858715C01169F
+:1013E000AA4526EAB0919E2AEBD18FA05C1513D6B0
+:1013F0004E179563D5C21B4F65C14496350CF02539
+:1014000022D9988E601BFB10002140DC2EA7CCEC6B
+:101410005A80D29D9C8BB9E6B3223888781FC78743
+:101420001B26338248611E575D1FF305649E2D27DE
+:10143000CDFADB7E0CC6CD89E8ED89FE402B9961A3
+:101440009555B5D0DACE01B8862E24040B9C91B503
+:1014500073986847DB15F32596B2650E38F636F7B4
+:10146000A9DC9CC127EA68ED64CC9705F5D862A693
+:101470006984BF68A055BA20E5888500A963C78E36
+:101480001F211191E021445BC246DB2C70C0CF8C40
+:10149000D43C004B0E0CBB6C2DAB602545C6B7B8D9
+:1014A000873E46F999876125C4EE5B6E0DA94440DD
+:1014B00078F85590F301019E04D706D981E2DB420A
+:1014C0004971AE543FDE0631F69115F0C7AB7BF1A2
+:1014D000F8286CCCFD24E20C7DCE6659A2F8F29877
+:1014E0000C6AF86D88BCD57168CB6760569B180C88
+:1014F000D979A238EAA1B74B134DCB541E8E2E8555
+:10150000FC4BB8E21D16C01B4AE68F9CF1948AB7CB
+:101510006F921524C609AEDF1DD11FFC65F9BB8E85
+:10152000BCCDBFC0A931BB803BBDD8D06B73CF70E1
+:10153000529BE3454B05786A64908C03F7F4A3E073
+:10154000A480295D93DFC4AB1A9EDBD36EED8D9032
+:1015500074410E3D6D9278BB9B3C533AC6493E3573
+:10156000422FC06D765CC00F213630ACB028E2B996
+:1015700081CF4A927C704EA22D72F6471359224AAF
+:10158000274CCD7747EA104C868D6464581ACFD229
+:101590008257BF859CBB2087F1329385B8507C244D
+:1015A0003F7EF6BFF861139D3A0DC788781A600830
+:1015B000DC234C14C8ADACC2CC75A50E1BAA349666
+:1015C000A0AE84F0B8EB954E9C8FFD8B128D1787E3
+:1015D000144FC19737647FD9E8438294FAEF200B08
+:1015E000A9C24C0C6490D42AE330591A86E9A81396
+:1015F000100B188CDAFC0AC72DC89730AC196ABCDE
+:10160000C99BD4627C0702BABD87A61A44161CBCCB
+:101610005C8479763F5319EA8F24AD41DFEFF1CB3B
+:10162000A64FAD52E081637E1696614DA483AF1E36
+:101630003796260A7BBBF2927EA4AA84DDE6D7B851
+:10164000325D533673887C5F87706D8F1170105ACE
+:10165000E024A510BC5FB036D047AE4EC35D6557E1
+:1016600093A6496D61AB7D0C5E5CE44304A5D13467
+:1016700090A6CF01B4B8A7EFCF46E093F87BFFB7B1
+:10168000ABC55681839A8DFB98B7D374CB70732FFB
+:101690004C6DA7A89855FFF3D3B9B658285E64558A
+:1016A00036EFAE33CB1728400AA3A63054AF0B1841
+:1016B00098A5976C84215A5F4EEDD0DE5B4821ECF3
+:1016C000F2B62FDA26E5241F92A6C820F0F8E68E9F
+:1016D000200FD9829EA82B6A0E681077FEB42C1BAF
+:1016E0002FA143519FAA9BEACB678C7E08C8E3AE2B
+:1016F00049932C319652FF422418D5E725D7BD6D6A
+:10170000068513EDB8E205D87475BEE3D45DDBAF92
+:101710008FA4F475FBEABC6C180D770593B3C28DEA
+:10172000AE4CD6899007AFE4C41DC885EF9E970ADA
+:10173000A4C2DACA485A0196709D987E22064E8449
+:10174000A259C7ECA873DB9F1AE68007EE2BCE7771
+:101750001CBA39E17E6B5ADA8449CF557BD96BCC00
+:10176000C35364543DF02EB8FD2C26E406DC8D698D
+:10177000E3B6B672FEA0084E4EF06C3D36B5067B61
+:10178000DBA53D8079EAA1CA41F9A7E2641FCA0935
+:1017900069B5F703A251ACCE80CD66037E5312EE3D
+:1017A00043113317B0EBF4163909829B2AB91A8911
+:1017B000B58FAF94B7B08F1531BBE4A66F43812FBF
+:1017C00095141EF97A2FC3BAC1F276EC7324E0FAAD
+:1017D000494CB7DA1A8BE4D3473963FC1156E81E3B
+:1017E000E5027FB597F0E77765AAE9E8F87D7A45E5
+:1017F000DEF330307B722E9F3F116C2128F8E842D7
+:1018000096086D44AD603C73D9D6FCCAEE4D9BF38F
+:10181000D700F72E5A66B22CF31AB8B8470DE2205B
+:101820005CE8A2198C6FA12AC309034B903C3BCD05
+:10183000A0158F1390B261271D9A9B7272A3266028
+:10184000AF5D5C85048EDD872F6B068F3F8B36F393
+:1018500075F32C03C952A122B295350B1452B6BFB1
+:101860000C22A95DC7B17310F6105D8BCCF25AB48F
+:101870008072939E9B2A517EDB276CEC552EC221F1
+:10188000BF066CDD79FA369B499E1EEFC181B69486
+:10189000455D851C8EB70A08C74CE95AB478806745
+:1018A000662EDD5AAEDF3852DD15703D9E16D0A093
+:1018B000562EC9B0FAC1B01F0D8EDB7AB3629366A3
+:1018C0006FE6A06707DA1E21FCC048C8D56ACAEFD8
+:1018D000A15836F457DA3A8E507B16B45D49E45F6E
+:1018E000A57290AABA87A5FBD4D40BD5BB7204C14C
+:1018F000B70BD728AE4B5391BEAEE9284CA60928AA
+:101900004651C8AB45A42671EBD095A280ECD0CB54
+:10191000EC06C9303B42834BA12CFCECF5A9081323
+:10192000E1D10379870023C6AA9CE586182BB04C29
+:1019300022BDF907E0A1C51D493E251723E69A2FD0
+:101940005A9049EC3EFDCAFF6F4840F777429488B1
+:1019500001C888F628F64B1B7496B8F9D67B547DDF
+:10196000A9AAA4EF2F00161B56FA9376D7C350E608
+:10197000BB912AF7D8701167596B01A349B8CC55B0
+:1019800076C51D76D69205A5C5EFE080229FE1CBF6
+:10199000165D89D82B2AFAF964CBA008416853292F
+:1019A000203C045B50F3C20F222407F0A457772891
+:1019B00066416AD2A7F17703EE66FF09DAD10AB26F
+:1019C000041CC06686020E23F8D343FA6812204E28
+:1019D0007E9A9F1BD81D4989E887DA22EB21A178DE
+:1019E0002C565DBE744D0E5E88FCB52D968D65C47B
+:1019F00028FBA468896E479805CB03C55204CB3CED
+:101A00006D1C2AD5E8C0622AC49D54896EEB86BC41
+:101A10007BB664F7C6082BB154FF3F53E991938A14
+:101A2000490FB269D83FD649983056ED8EF301F18F
+:101A3000A083C975FF828046A67D4DB073BFBDBB34
+:101A400012ED70843AEF97433D37589AFCE4BF2E6D
+:101A500051B04C0895F4A53E19548BD34057687784
+:101A6000D6462989104AAE8799A7E6A1E74283BFE7
+:101A70004EB25D4693A8FAF9567CB5FD81EFAE886B
+:101A8000A6DEC24D1EE5D49B792DD75235CD9F1BC6
+:101A9000A0B217D58A1656281CB3313B4F492834BB
+:101AA000290F183971CFDDB4484381146D067C8E3F
+:101AB000A7CCC31BBF28B3D89441A73263BE59BE7D
+:101AC000BA5B2AC3E258EA355B7B5027EA1C7F04E5
+:101AD000DACD6263BBD283B822CE2BA3D63AF4A66A
+:101AE00081A08B6978727BF5CD628A636A353EBAD4
+:101AF000389C64808854C12B21C1945942CE37321E
+:101B00008F395B21A056AB080A3196F14BEA3413AA
+:101B100085BF8A4315C216865F6B9AF8373F4962C4
+:101B200059C47C67F85D634DA8447A853FCC09BAF7
+:101B30004A086C33351A5F6EE5B1350EB2AADDC8BE
+:101B40006F159046BE778474F3E1B1836397CD69D6
+:101B500045FB5C5A1DBB8EB693704B6B80FFF01239
+:101B6000A136D47056352D0D5D1A3E7B4B938120E6
+:101B7000A6E3FD8AF6E428947C980CC4D5E76A377E
+:101B80009A44BCEAF5B60177A7D7136EEA79B03765
+:101B900099FEC87390EDF63330AB9B2699B1D031E6
+:101BA000BCB1FEDFCE8BF2B279E86DCEF59B7D2223
+:101BB0007E21753FA9F00844E60B663DC8EF87B665
+:101BC0006CC860206BDB070FEED809EBD9841B745F
+:101BD000B12FA4D4059FC14BEE316708D52AA1E7E8
+:101BE000BF38CB36ABF0AD5DCB6DFDA7FA07427DBC
+:101BF000CD497A9346B3C2AB1372C7C01C36F040CE
+:101C0000369C282BD4B31F2CEB1532EFD673090664
+:101C1000AC329B9602F049D391A9AF250B9AF045BF
+:101C2000BFE85354C811416A514A24B865B587FCCE
+:101C300041851AD7C999CFD0E33F515B649422B351
+:101C4000F1B28CAE7175C86A70386E07943C6EED57
+:101C5000E779C9CF70D17EC13BEE10F0B2816E9CA6
+:101C60001D90F5A0996DB1C0DD16B07F08F8A8EA07
+:101C70006FB704AACCCFEF61AB2C06F7CF162CECD4
+:101C800049727144D3E3B2418DAF28C25EDCA2A792
+:101C9000BBBFEDDC28D6DAC09E7E31922B6D668A02
+:101CA00086269465438F00FDAFB854EF61BFB9102D
+:101CB000B88F27AD080240A5156F31EFD128D76B3B
+:101CC0009E25E8DED7F3AD1DB286CB4DD05E7EAE4D
+:101CD000C2306C7444431D1671C6B1C5CBD8CE85D5
+:101CE00075BE94C476DB1CE7EBD2A7271D271AC16B
+:101CF0009CDA250978611EF4285384334A02199E20
+:101D00002CBDAA289E3607B6CCF62FB5C45AD26D84
+:101D1000910670EAC335601779EA6EDDC4B928E729
+:101D20000770242230C116114A299FCD28002C1497
+:101D300030285180B82B163053FD91AC7AD8797C7D
+:101D400036C9A83C11F9C25E19742602253032AF9B
+:101D5000D612D7F26B2646568C32380957761B3886
+:101D6000422CB21CBD61A67FF129062A52D6EA6533
+:101D70002C349C1B0B238E6FA492FECE032C09D314
+:101D8000BB997938ADF3434E4B63D4687E1C2CF677
+:101D9000D951AF4AAD71883C0AC0C1FFC981627791
+:101DA0009FB700CD580177C1B9C1EF4B00F63E8F08
+:101DB0006A5453B57CEC5B7211A285383195B0BB87
+:101DC0000E738E0477F0277EB80C83831F7F7A759D
+:101DD0002D38B45DD0AD41628F1520A0C5F735E92F
+:101DE000D6CF86574FE474B824BA038B93BA5212F5
+:101DF000FAF22075DFFBA58D8C1DD571BB332E59F2
+:101E0000E808A54606C1B0EA5A1E4B2BED63D092F6
+:101E1000CDD5750590B4E345186D7F3423729DB51B
+:101E20008A278465D47DAE8FCB8A3077044103E95D
+:101E3000AB65A0BB2EB669CEE3A10E91EBEA5BD7F2
+:101E40004FF1DA651E824F44C8E48D83D37BDBCC2F
+:101E5000D4CAB0473F4107290EA9A89100DDB78336
+:101E600025D117DB9978B40BAFF9648535FC4FD0D9
+:101E7000C748C2E4CD5B665FAAC500C7B90D15CCE3
+:101E8000F268F4ADFF4AD68E195D411AAC6C320A85
+:101E9000F862332F98A42E8D6EE571ACA5A265EE85
+:101EA0005C7F418A6791731CDF1FC1E81878411A73
+:101EB000DBE5F768B157BAFEAAA9F180FBBA5BC6A9
+:101EC0003B853D29047EEA8D6B22347CA95BE68547
+:101ED00013F0EB327CEEF68A722E787EE15778585A
+:101EE0006E8B3CE8FA54D336784B34748D4F171010
+:101EF000E2D7894585F53E247A222C8B5E00325448
+:101F00007595DAA3ABD407D658C46A327FD251FF95
+:101F10006445C7D697FB9A0A933B8DE502E741FFDC
+:101F20008D26F06EE0FA3FB8B34C740A8ABD4EF4C9
+:101F3000CAB431DDA129611017BAEAFE580E69F161
+:101F40000AC61BA6ECDDAAEFB608BD70CD10FBCB10
+:101F500065D61627621D8F56A64DCC3DA35E403335
+:101F6000B6910B806B0763B23BE229EE3F9675D8C2
+:101F70004FC5703A27355E4439C4D03B0D820C4FB3
+:101F80002432583FE3C0A668849826F592187CF561
+:101F9000FFF22680BF4BD7629FD89CF15272F6FEAB
+:101FA000DC82F432E3834B7F395EF3D5068ED31C9B
+:101FB00069405823158768E98D4A541F38EC7CBC6A
+:101FC0006262F8E2E10D5BF1B547AD33B491FB1D00
+:101FD000C82EB1C3186F5DA0ADC05AEBAAFC2B3D53
+:101FE0005C44CBE8E8AD1AE56955AB73C7F79EECE6
+:101FF000D70400681F5C27F4FF17E6120F785563BB
+:1020000084DF08D0EB63BCF9FC9C4C4F4917803847
+:1020100087D6C595FC896B275CA510093538409596
+:102020003AD2745D38A84831B4B513A26C549BDC25
+:10203000398B9B97E5ECF522955B12A9682A6A1FFC
+:10204000E816C61A4DE84E3D760821834EA68EC787
+:10205000AEC48389C66FF9AEEF893DCD7B9C99F7FD
+:102060008E1F27533744164D03C502ABC2D59C744F
+:1020700073F6CE76415905C1F28410AB288DBD4070
+:10208000C3A858EE8A26BC037B0808A3608B6D7C2E
+:10209000DA61BA6DCE3244175918119307F03B6AD2
+:1020A000411EF00C130F5CEB3868D807771D9E7447
+:1020B000DDA923F530677218DB51EECCA2A2DF2731
+:1020C000770DC70F31D59A54B34A6666E74B524F26
+:1020D0002F2AD94D899C349E5C39373540A45994B8
+:1020E00076A7A46F8E317FF7EACECC9A145AC0231C
+:1020F00053A3DF09ECE733119C385F98F03A25D2FF
+:10210000A531B942052F0D39B068F90A9E4D7BF211
+:10211000A4FF1D5268B325573541033836EACCDA9F
+:10212000196A1624B9806B6480435302A80D6ADCD7
+:10213000301AAB8134362115E8A33034CAA510011A
+:10214000EBE00413E4459A1DDDFA31FCD01E535137
+:10215000CFABB2F8632991E120EBEA5E93A16C6307
+:1021600006A96D38B44D75926D6F202A0E1B6092D2
+:10217000CCE6AF9880BF08EB5CC5D981CE8646E23D
+:10218000F0184219030686BFA83362B4DAB10A47D1
+:102190002C7E51A261C1D9CA4BDB01CD74206B5B8F
+:1021A000AF995C099E0DEFBA1BB6B591D696E88142
+:1021B000D79E6E04B9109BF96EE473E07489BA4F30
+:1021C000A3293177BEF5EDD9B47A9C005A25F29255
+:1021D000B11821DF380B21BB60E756BCC5C4B36F13
+:1021E0005ED2EE208B608A1E0E0473C3C816603266
+:1021F0004924D31AB5C9D946FAF97F29405B1D9EF7
+:10220000CB4C69E0AC585AC2ED93C76E467C71EF77
+:10221000570E7D5C2B341B047AAF0A3E41959734F0
+:10222000A6D4CC627D23BD581239FB61C2DE2300E7
+:1022300058F6B5112948D1FE71F2BB3CEA83751CF2
+:10224000493C94D6B80073D2040C8F0DF3C34611E9
+:102250002E0D707A005083F23E0FC4EAD96D4E778E
+:102260003D710B6BBFCCDCD4DF2E73770BE9B14231
+:1022700080B011D479C38A30E6357E21C6847521B9
+:102280005D32D8E544EAAEA934C651A7C65B8BE9F6
+:10229000B4D95B8A18724DD11005223A5E98C8A352
+:1022A00097E7BAA16BCD776F3E1C91548DC9317100
+:1022B000370093E42391DDA6E316EFEC020BB86937
+:1022C0005FAB8BB53BB96982DC9FA860DC2C7807DB
+:1022D00037116F9419800106BA5C5E659A21899561
+:1022E000CB17ABEFEFCAE01F65C421EB960EE2FC03
+:1022F000E6CB59A48CB67E08938FDB36060B831091
+:10230000E9C4E72F17C7C7A793C6EF7813B0C90D65
+:10231000A64EECFB9AFA5F91385869FC4EED459158
+:10232000C5453C42E2B14E24D4EC8DAB92558A8A2D
+:1023300047D94982257D89DE4FEE6D6F6BB744C664
+:10234000971EC8F9F85C3641DFF52D789C66EA45A2
+:10235000E0513B8D698BEA2CA35AC2E4A1EBBA6F22
+:10236000EFA452DCBFC02E0A73EA155B5254006022
+:1023700088474EE902C064FBE70BAD10D345B2209D
+:102380006FF8EBAB482DB8121F9BF5719DC028125A
+:1023900031F1F5242C0E760BDAFE8112994DE63AD6
+:1023A000C6F55320CAEC43F0E223877FE1DB2CF132
+:1023B000DF882E0B87815C34AE305287D2F3FAA8C7
+:1023C000F3A04C6436E425A995A8B6A0491013CE15
+:1023D0000426A4ECFD83398E6C7751499E164BFE82
+:1023E00000CB060126C72CE41A90DBDD720164E203
+:1023F000CB23BA4F20AF9A96FD8E744F5B4011B13C
+:10240000390C8E37DBC0C848015954D19BE92BD019
+:10241000EEB43C0DAB513678B315E0AABE95CE4470
+:102420002387DDBDAAA32243997F88CE0B8D6B7FC6
+:10243000394C0FC9C976FD75BD8764D07DB6FD9155
+:10244000FF3A474E50867A3F54E4B98A13292CB498
+:102450006B12953CFA2C754651C9394193D3D9C7B3
+:10246000C987D7F5550541F2C19344D6973CBD8C39
+:1024700096A3720498927BB5BF08B79F119C5C4CE1
+:102480007C6614B8DB62855E19C56BCDA07A38878F
+:102490003F466AAD8D4920C9E45D7040FB0D7C412B
+:1024A000D9BE737167709ABC71EA937EE03B2C4091
+:1024B000863958E9E577A3F1564E9534EEFA57ADD3
+:1024C0007F6FD4387446408D0639C982E95477430A
+:1024D000BECFCFDECED1D01E2DD6130E10066EBDD0
+:1024E000323617FC723D6C2D294EBECBEAF783D9EC
+:1024F000AC22AE60608625A06E0C9E7469EB843CB5
+:10250000D52ACBBFB9EC461003E44DB020AD5E2D0B
+:1025100088D206188748EFB18424E58EBA740E83FA
+:102520003134112D335EDBF7253FAEA3216BE5EE91
+:10253000622EE776416ECB2EB408347ED0B6256687
+:1025400021086A0C034ABE4F4065E03453685F6B54
+:102550001ECB9895B3E2AF16FA0A21C684CA5AF583
+:102560005EAE80A6E64FB1EE2540DD92FC6DE53310
+:10257000C4709A42D9E9326E25421E29D2DF419BAE
+:1025800023A79B09B40E6904FC3C67D53425657507
+:1025900020B2C755E1BC051F20F4A439ECE6EC429B
+:1025A000B6D96FA997E36FA2E8B22DFDDDB256F65A
+:1025B000BF2D57457C008378D2002ABAD62ABCF5B5
+:1025C000DA11F58DEC4FE690B3315CFC2125F01F5C
+:1025D0001E05404FE1C9928AE6108AF564516DBF2D
+:1025E000223613111E53358B69F4BC03DECBFF4E2C
+:1025F000AB176DB9E45FDC71C1D89CED882AF97422
+:10260000ECC9B3831F575C544A071B4AE6CF2842E4
+:1026100019E97A4276B52111DA1690A9382C84F39B
+:10262000E3C3F2F551BCD53FF11AC9FF76A59CD49E
+:10263000BDA8EDD42A008217694A94DD058E30B614
+:1026400006212930CABFA4B9597730804F69280EB6
+:1026500039BCCD73049F547FBC44DCDD7EBE3CECB2
+:102660009B4EE29BAD3769D49B62A0259330A42B8F
+:102670006DA3F7A9D8C546F3BFEF0C1DCC2F9A5F09
+:1026800057A39D5EA9B883006C3ED86B6CB066B44E
+:10269000473118689A6980892833F4573C4524B03B
+:1026A000818EBAFA759CDA2017671FA6EFDC6319D2
+:1026B000206F3FA2B1F695B59453A436A3017328B9
+:1026C000984849568E2C1EDD088676872C95A06882
+:1026D000877F62B31A39CD96DB89426233B72B7F8D
+:1026E00071ED35DEE383B0C3E236BF6CC4E34FA8BF
+:1026F000D88FA60CE8E24CCAE229F5164584472794
+:10270000BA2D39DF83B5E22418EBEFB03FB6F3B54D
+:10271000FA7CB2AB9CD6EEF847208D564FB03FC93D
+:1027200034FAB687FBA216F2328D54F2D0078558E0
+:10273000A8A21705FA4E279254D57937A514042F6D
+:1027400028418AD98C4F8C21C0F5C54EB386EC2622
+:1027500017D2955A1E7FBABD36A2C41EF24CBA4F8C
+:10276000117125D071F90DFD6B97C7D6B787F71298
+:102770003239DC12D160076127E38FA819FFF425F5
+:102780005BEBC1B9A8E61C278C1B59F67AD54430FF
+:102790008CE3805BF17823F7BD03415764C6B40E28
+:1027A00046F1506AB606C9D59394DFE8B4313C7C53
+:1027B00098C4A3FD11DF4A6B567E2B3DA5B003CE16
+:1027C000B1B93F3E592E1960121D4405302B1F939D
+:1027D00028FB37DEDF59B12E9D071CC86D6A3DA965
+:1027E000689F62D280FEAC10D30BE416ACA957D020
+:1027F0001A19588AA374FFBD9F28608ED255871F6F
+:1028000056EBEE86E9EE979C5590D26142863C7E6F
+:102810003E8BA3C4817AAA79DAF3A50CC406F737F4
+:102820003AEFE0146EACE1DCA374EE2A7426BE0D20
+:10283000B13857AB166FEC5E37ADC00B4027FD4883
+:10284000E8CE5C85D6D694FB08E986FE44BA4AD821
+:10285000FE3EAEBCE396F44347F4B761B794CBC7F2
+:102860003B5446BB0E9FE048A7C87CB5BAF816DFBC
+:102870006844F20B586C44C0EA50D3B7AC5CB9A6BC
+:10288000881490F7E041B655321A530AFE5CA86CE2
+:10289000DB4D3B78ED1AB4051389BD1F95BDA054DF
+:1028A000E0E9EEF8D333FF982ABA676C3280E92565
+:1028B000F1A9EB6640679647280AE876CBC45F6CBF
+:1028C000A9CE11E222CA0B1E7C82AE6CA1A2E1133A
+:1028D000FD448771217E4991B23B0C38664D6F7B78
+:1028E0001A4F5C4396CF79ECCE1CED7DBD3C4E7902
+:1028F000351822D146220E149AF4776D53F5E55718
+:1029000006F27793B5694BAC99AAA90643D7374429
+:10291000A4BA9E6249E5C882280A9992D25990A821
+:10292000BE7E4881FA5107777C499ECECED38AA7D6
+:10293000F803DFFAF6FDC4242A9B14802FF7B26F48
+:10294000CFAC3B887C06CFC4523187AA60EBF855E8
+:1029500048F0D870E3CCDDC60F4D6382BDB473F888
+:10296000B57860FE1C9531C04DBB47A9C016ABB110
+:1029700097900E28A0C2757307BFAF9495B8E07802
+:1029800085ECC655AE216B886670AD0FC4680392A6
+:102990005E9D5F48659AC0AA23CC310A664F9C05AC
+:1029A00044596190912240B1314978F95E2C3CD56F
+:1029B000AA9E174C2E631A227BCA132E159C9A0EC0
+:1029C0000C0259831E6E6ABAE255CDB1FE3DA34793
+:1029D000368E0FAA895C545CE2E66A27089A9DF657
+:1029E0000FFAF6996DA6490C8EA22A811BB8C53F35
+:1029F000E26416EF2952338AEA5A32800F861C307D
+:102A000084746E1599459042FBF6BD0881902A6B3F
+:102A10001ADA9EC651E535ED6EF8939959AFE14D3E
+:102A20001B9EAA5C39FAA50930BE975A16CA5B9A52
+:102A300024EA6EC2704DE0F2EA264DE0646F10C4E5
+:102A40006B73E666F7ED4CE727D8B67E70AB4E6346
+:102A50004DDE46B4667AF2883BAC8E7C85B2AB7CA8
+:102A600038B665B19E9DC1C9970D7140279FEB4A4D
+:102A70003B459D33AEF3F7D151945F30C9F330CA73
+:102A8000A48060DC5E436A6607D6304F0E83116512
+:102A9000EF17B1737FE862B4B79414FFD18F88CD7C
+:102AA0006EA648C3102B68FCDB34A698418B1978BE
+:102AB000231C5C3D60011CC594AB5182FE030E1EBD
+:102AC00092747C59EA83F2760FE223EAD52987498A
+:102AD0004C33C87828A048C744A0365DA24DCF69C2
+:102AE0001B5046A61BFE7B48CC8640182B30E7E8DF
+:102AF000608B0FE8302934550A5C8BCA6DD4FA69B3
+:102B000052AE19501347FB73E740C1471B60EDC439
+:102B1000B336B90E7A43FEE7B643DCE60F7F5BA817
+:102B2000355AEB97DA57703D48D0912B3DECFE5D5E
+:102B3000C2F1E8BB7267FD87E2EC2F9D7E53FCB3C8
+:102B4000BD4963FB5FE2E228087413CC6107C0BD96
+:102B5000414C159CEE78451374FDAF44D763922C1D
+:102B600062CA056930BA54C6CF523EE4C5D10B7A69
+:102B7000AA519E6EBA66A21F8DD8BBA50F079321DE
+:102B8000F411FB6FB3992ECB4146B59DD5E5882E48
+:102B900045A58E0F3173CA165D3EF53F3001A62F55
+:102BA00090D0210BBC8A475C03A0AE0F7B1C9675AE
+:102BB000710C6DFC4050965C6AE4856E873D534F06
+:102BC000823681EE43AB6944633A91E3412B4FB2C5
+:102BD0002248652A7B4496194077FDDBDEC1CA4551
+:102BE0006B59695377C5753A67897306BBC3B66D70
+:102BF000726A42CAD0D92F259C964D113D7283BE70
+:102C0000B77410E3F0FC91339D115982607DCCA71D
+:102C100037E9154E8BC87EA6614E959FDD554A3724
+:102C2000EBF5CB07A35526B65ED276FE9F22EEB813
+:102C3000738692AB214FE4E1A4CF381FDE1528C282
+:102C40001F6CC6164A86F05FDE5C0323ECE09471CD
+:102C50003BE468C0D40939252B9E438424923C036D
+:102C60003C00553C756FCE144C8D25174F9ADE55A0
+:102C7000C13E7048C25D03B2C3254CB5AA6EECF8E4
+:102C800095F78DD9750912E3AAD18497F25CD8859E
+:102C9000EAF70728FF762A73EB21E946C1639743D9
+:102CA000DB54DC3E9CB168F5F7E91B2326E9635A47
+:102CB000D766FE29FD9BF03392574BC614B061E3F3
+:102CC000626A21A45AD86905C6CA80AF6337C4FEB8
+:102CD0005663702CD868E52F9ABC854515D2582EBE
+:102CE0002347902D88B15E3492BA9FC3D8130075E4
+:102CF000397E9F52388B936FD37B7A68537B96666D
+:102D00007615DF716063C5AFC806866EFE5808E2AF
+:102D10006FABCF0E67F8D1B6B95305BE4864547C8B
+:102D2000117620454D1D10E38DDAC58266A5631727
+:102D3000394F67C0820442A7C3A8BA8225667FD0F4
+:102D400003317197F5E1EA759186E63813D1A2084F
+:102D50006CC6E4B6644A6B2CBA219455A7DACBE270
+:102D6000E77D991BEA316233649CEA35C72D54999B
+:102D70002B78FD97795D943D3B83EE87FED019D18A
+:102D80008180CAE1F944BCFBF332D6C821007697B2
+:102D90006D600E81A4DF9102936E99F29B4DC12765
+:102DA00068ACF1062AC8C87B8ED15CB8EC96625A32
+:102DB00096044C18084EBB1A59482FE6513984C165
+:102DC000BD1CFCC11EFAFD9F5C383E4465D47C27C7
+:102DD000CAC7D2F50A58B2594B871E8FEC683B2AF6
+:102DE0006A45D4319737B27552DEBC09000A7006C5
+:102DF0003D5EF80C521EF2AEEDCF2C4BD534A742FF
+:102E00007C6DFF9132C17E98918E03B923A6723FEB
+:102E1000536DC970237784712E200131AB31E48763
+:102E20009A335DBC982B12DF6D99FA87E07D4CA632
+:102E300039BED13D6DC36A5D7AEE67A082164195B9
+:102E4000D755AA3D0D6E40264DFB6594C5422150D5
+:102E5000EA9AE088E80BAD9C64A1D4EEA5F77C1259
+:102E60008FDBFFBA1027587968878AD380805B7818
+:102E700088D88A832FC83C5FAF02F2BD8F3EDF9DAA
+:102E80006EB304AA9DCF901125BDC74F2498AB0BFC
+:102E90003FF50A93813BA5DA0A137FDEBA34422656
+:102EA000D057292917A2723D421DAE77620C66AD3C
+:102EB0000E9A72A9FB35F42A88BC2AB1A74469BFCF
+:102EC000B05F7B3756C9929797196ED47972E09CA0
+:102ED0007448AD69297F5A94A59F16AA308A705A02
+:102EE0008A87BF6A42D6927071E4C0D54448E50033
+:102EF0003AE7C1F027972979C1BAA4A8152EBF3A9D
+:102F000053092989C5D7A78C7A3726F75281C382FE
+:102F100021C00810C96C583922E3965040953FF9FA
+:102F2000FBC50D985E686E6E90C1F756FD957B9758
+:102F3000B1CCE18286FE940149ADB02C4E6BE6C562
+:102F40005299FD3360D8C29F70C0268BD07970062D
+:102F5000A688D139CA639182E7238418990FC4B532
+:102F600074EFDB87F134A4D9CACFB268B2B67A7CE9
+:102F7000E47AE0893B9CFD298606B6AAC12ECD8F56
+:102F8000E5982810A9B35F7BA221B77A502A90CE8A
+:102F9000AD41F7934328A2915D169D9273609E58B0
+:102FA0001D11FDD48BBB4FD34DB829809B899A2F1F
+:102FB00007C71EE72612F7161AF1D1C7EE6DC1CB6F
+:102FC000E2A4E3EE6F8FB88CE2149100B420686A3B
+:102FD0003F67269F6375D278408D4C3303FB073FD4
+:102FE0001A886B2559241B5463708072614722ED47
+:102FF0003381BB5BA720AA4621D43E99420CD13332
+:10300000EC5C1C1415123CDA31EDB0512AABB64918
+:103010000FFE1B450D6324EAB2A19F54AA4498B148
+:10302000E9B84F074A083BBD0100504B0301D57575
+:10303000FBAC11FEA536D19C6057DE4EF1FDBC19EC
+:10304000764E46AE43F5D0F6AAF6162CA08AD606E2
+:103050009D1DA2F5AB67F2E5852E5513D6367C652E
+:10306000ABC199F144E936827C97F5DDAEDC40C70F
+:10307000C7B7D20F9FAFE1BEA71A3FE45DF97ADA76
+:10308000261B80D31C65C9A9A58AFB97C92F04CD2F
+:103090006EE5152B76CA08A5CE25A56FFA0589CB56
+:1030A000170B0B86F8B071D63EBDA5321343361907
+:1030B0002D9108F040CDD70FCFAEA51846DECA122D
+:1030C00012CBCAA9D17981B21784ADA2F70B88526D
+:1030D0007591DA8876B1E644BD944E075CC4FF8FE3
+:1030E000AA1CD5DF42DEFC32631C9431FEEEF6B43E
+:1030F000093C18D1656DF4DFF90352B0143B979B7E
+:103100006751FF798D99879686F24ACA099B001309
+:103110008B15AB5985AE3977BC065D5048D35182CB
+:10312000C91CA3018E839C476C5BA33A6A2BD6B162
+:103130001C4AC013FE8BE7B7B6D7E48F54948B3983
+:10314000F9F30EE512BD9AB630C1680536DE9DE48E
+:10315000974179E012695C0F6410A6B5EDA013BB2E
+:10316000DFE198054FCD120B3E3F875F9E3AEE960A
+:10317000EEC4D2223D8B937480081D66616CBABA8E
+:103180003F017AE9AEA0E56563E2FB1EA12137EDC0
+:103190007EFE0BF1630CBC03970B29CD51B5658BFB
+:1031A000C29400FCEE1CE9141B98645D87964AE902
+:1031B000683035C15A1119393D5821585799CCE911
+:1031C000209CC13F5CBA5D35ED881A344A6D7D04A0
+:1031D00047A3FDA345A6FCBE2CECA1268098D7B63C
+:1031E00047EAF67B3F802D39A297322E9CAF0B74B5
+:1031F000D4ACA704A34CF08E2E2C2EDE8E3B59515E
+:10320000337C8556710A1039062FDF93785EE8E922
+:10321000B869D0C3A9C8EC352BB8EB041F3E485E93
+:10322000B7B6F303EE3AA2B473F9F336ED8DC16687
+:10323000BA7AB9001F442C9D8145828D31F34A77BB
+:103240003E34680C4062CB61D4D5C7FE29CA6BE816
+:10325000107AFF4F39832C6DDD8ADE9CB44BE1CEB2
+:103260005033FB208E0C23B0108486431036550D4E
+:1032700060FD673FEC16B3E7CF60BFBBA5C3966B9D
+:103280006EC2AF5252A3C88CBED09DF5EBA2F78A96
+:1032900075A848C2A68B9928E9CD0353C2722D7533
+:1032A00034831478468B9CD5AC2573DD10F11CD586
+:1032B000112379CC27D79327451D5FDDD765841F60
+:1032C000F99650FE6652862D3A6565F7E0A3466191
+:1032D000F5F85292C89EB1E39216E9B152FC4EA2A3
+:1032E0001FDDFB002ED1D080661FA7919BAD689695
+:1032F000D1496ADA5BCBEAC3102024C9E373C3A3C4
+:10330000079494988766C5D62D35238AA873996348
+:10331000FC9DDEDD5433B716119789BD74A64FAE00
+:103320006E9AD32628AFEC4E4280461A13A59949CF
+:10333000DDDF2D08EF4A02BA479C565B369ACFACC8
+:1033400018DF95570F790C6789811B9B852FA0E6A5
+:103350001C1D074E7017005329595E9EAE4A233339
+:10336000736BB4189786C1ED7B8CCF29E33A9A989A
+:1033700052B4BD7D2B7959D22052179121BF061727
+:10338000D6322C5683C9F4B7FE2775806762027F58
+:103390000B9129F8F714CDABE4A2FA13397D6A102A
+:1033A0001484FD0F888E5A468C00622C78E0780CCD
+:1033B000620D82B59611D6FB0F071C06DFE027A031
+:1033C0007C5BA1A4B7098C03882CD962518D46136C
+:1033D000574E91F145C6F72FE6F4839D046DC2F375
+:1033E0001323D9888BF7757BA135795C9C159AA935
+:1033F000474831716562891A05F23FDBC7B45BB992
+:103400006421FC87473CDCD295F311AA79EBEFB439
+:103410002D57C20AA4009CA3D8604E4F639037DB9F
+:1034200001EB983F64D216EA783E72E12DA5A30223
+:103430005DF7CD188FE49022408098BE7F56DEEA7B
+:10344000D17C0E3E01D5053E4AE09788A44846ABA4
+:10345000AE31C9A0338EF8CAAFB50D2BEF272A982D
+:103460007F3AE0E4C4AB81E7A5D7FE84E1DDB3C0D9
+:10347000F4D76994248A7E0A239D7ACB6EAC8B8F15
+:1034800009FF955C0BCEF92C4FDFED0DEE7CB92ECC
+:10349000EEFE60742624A4681A5D3A065384AC4795
+:1034A000378733E5B9CEF3E2BE426A75404441A99D
+:1034B000DA66A91229358BB6CBF3D0E040128D9C89
+:1034C000E21D76014785254B719DEE1226C5FEE271
+:1034D00056F57C5C8FAD876F2D4D83E423B240326F
+:1034E00087675085A8049ECA0CA2903B6FDDC0C1BF
+:1034F00069C43D9987F75FB41A597810115D0FD7E9
+:103500002407AAAF2B423DED60A1ABE8409ABC2551
+:10351000455DE0E3C5D95FFAF81238CFC7291C2111
+:1035200047580098EF9D3FF7277C5EEA1F7425DD22
+:10353000F8A2D4F0C996B3A1FCA76297CCAE2F75C0
+:1035400047554D0304F9D980D91C7991F5B8844CBD
+:1035500025DB3DD5A8A37B1E6E097A4530E6EE90AB
+:103560003B765C803BD7D219B949B04887C5B40ACD
+:103570000D74335FE0A0188AB84F17B5AE3F0FA6A1
+:103580002C5A4940F251BAF0FA2BDBF574E1EAB259
+:10359000EEFFBE4D5CE836A60CAAE46DF8B0E67608
+:1035A000D4B4386AE618851B0ABF1A9EC95547C9A4
+:1035B000B278732C57D3A18C2FCE9A646E7D77BFCF
+:1035C0007E52FB0D294E2898E619BA071BA5B48632
+:1035D0001EBD2D2F0E89038A1AC1531A32908043C3
+:1035E0009A7196B43B2F89F688D2269D0936C17907
+:1035F000B8F414A228093B9499A2D0587953303BCF
+:10360000CDF45E309BEA17F904BAC45D40B3760886
+:103610005B5DD932DA9E03BB193B5F8AAE3E621C0A
+:103620007445A1C84322C4A7588E31756E409BD201
+:1036300080EBC417DC103508F6FAEA647463425E66
+:10364000B0659052629ACA5D36C55CE3F42FEC1700
+:1036500067A0163692E235FC47F37AEFAC7E29BCC0
+:103660001AE485D594E0BC2520D4FFBCBABE6962BB
+:1036700091467B694F8D89B3001166002FC65A11A0
+:103680008D771F161AF480E482366ECB3B30F174CE
+:103690006749711F90A164FBB1F088DE557D6D0212
+:1036A0008E01E6C3407566C17B6FC6FCF4D61F056C
+:1036B000C65D043695EAA89F88589F57B322A33663
+:1036C00010C2EDFD990F36248ABC73B65A488F8913
+:1036D000A556C11434FDD6501C11DCC1181D7580CF
+:1036E000E28A963100A5DDE0A8AD34186AB7DAC7E2
+:1036F00019ABE0641F42D35A814AD3C85590523463
+:10370000218351B12197A466DD3D5C32B0E9A51358
+:10371000507D1924806DA4B598EBD723A0CB4067CA
+:10372000E8BDD144238B6F1A904C5AD695520B4862
+:1037300086E7D4875F3B59D2CEE9587502B189DA62
+:10374000D8E0F1289A6B08F6F1D8641A2B4E78C7A6
+:10375000266775729190DC87F49B041AF961BDA607
+:10376000525A4C02B8B46EE761121D6399E39A1085
+:103770002C67BAA4F353BD2042DA2DEB9AC09B2AE2
+:1037800084E7D39A89F5FBF54807D7A1EDEF576198
+:10379000B0CACC15B3149BA4E2EECE988508EA68B3
+:1037A00004CAC8AFC649A11DD816C25F45C2E24CC3
+:1037B000C210D52060DAFC946B492E7A107FEC4A57
+:1037C000EB24993906A66D7944A492A236A1076923
+:1037D000EC70BAF04E0280349327250D8A1BCC334F
+:1037E00012C1AE6276CB65B7174A1F3FB9B4DE8906
+:1037F0007ADB35EDDE282577656CA7C668542EA8E0
+:103800009CF2A417E1B533B0F43BAC37A6E805BC95
+:10381000CC5D602F0208BC8AA548EE9485CF18CEF7
+:103820004D7EB8E6392511E59A02CFE819BC6D0C3A
+:1038300063D32FFC4359236A93C931DED0EFE315DC
+:10384000997F5976ACCA00E46DA560F1D018B0F844
+:1038500073CDCCBD2A47DED88083F69E603D80E9DB
+:103860002D47282831D08155869E9A113FBB15538C
+:103870003FCA121E3841FE9FCCAE9E6941EAECC998
+:10388000477961E658FAE82CA6442384AF15AF2E99
+:1038900026342E9365CF4AC6CEC7F0192821465C40
+:1038A000E09D9E45AB6D42982E205ACB931E4B094E
+:1038B0002C1A37A2533CFF8BCA885CCBEC02099FC1
+:1038C000C4EC2F36013152150D23222518233677EB
+:1038D000F9ABA231BF9D6B2C7EFF1D1BD4AC7FA327
+:1038E00016B1DA1043CE93C0B7B476CADF03E64709
+:1038F0001F61111C63F3FA0784BBC63EE7075272CF
+:10390000F974C43CA5A4F3E590EBF179A86DB6A2D7
+:10391000225FFCFC5E7D2BD0BAC90D9B712AD63686
+:10392000B8C5A75B33554768FFCF652E3B089E247B
+:103930001063EFB4A81166A3175FCC3355FB59BDD4
+:10394000F2226284736052D51EA46135B0724CFFBE
+:103950008159A98FA59B508A7F6202090E2E1AF207
+:10396000D219B462BF3F5EBA690B185EC4014ECB78
+:1039700013B778B108D674A36B5411BA8477E113E6
+:103980000246F20E343A8B92CF46C5710A9E2BB294
+:1039900052EFB3785BF4B086BECC3B39BEF8A4805E
+:1039A0008E2EFA907E3D38AE409722FEEFBF4C0E31
+:1039B000D6BD2DF30A8FE7707399390F39B5665D5F
+:1039C0001CEDEDA56ABB15A9D48341020A45FED1C1
+:1039D000B9CE8DAF5DFA78F2FC5DB2F27A4643B6AD
+:1039E0002B72C32716BF7161B9B665CB4655DBC3D1
+:1039F000A607C0140ECE913FAFB393FD9282682DFF
+:103A0000B47092356A8EEB7FEA0A7760C457AB6C6C
+:103A1000C4FA9BEF37E05CD604B29AF7C6D0EC0A42
+:103A2000869659AB97B96D5FA0B06F107786B98C49
+:103A30000E0D5D8E4CEF7AD34E446114A617B9A1DA
+:103A40002A0718B7AA645F61EFA9F358DCCF0469AD
+:103A500080920E19F9FEAAF32535B09A39EA83024D
+:103A600040CD24288E78CEBA8FDF7E2B9630B75289
+:103A7000427C71881514C326F63270F36BD0A62CE5
+:103A80003445C37C3DC6FD6F9823E1E42B550F946C
+:103A9000BBF3015F664F441E37838B98D04520E807
+:103AA000E86123FE5F623613B7CCD8D58A615861CE
+:103AB0007C8FFC5A94211B15AA7176EB6CBF162ED5
+:103AC000B09A78EAE4039D216CAF9BD3231AA04EF1
+:103AD0007F09D2F6E715A4320E6DF9DB51AB9EA932
+:103AE000282D6F10708345B84878C6E0A6A8523ECE
+:103AF000D1EAF7494B8BEFB2AD76E37B1D056D53F1
+:103B0000B13DDBE55EA6A0157979F91CC4AFBE76A0
+:103B10005B3E82266BDAEA96B7642D9B9452A1BE77
+:103B20008DBAEAF4C63AAE4B4C7198070F51042D8A
+:103B3000F7FD68D90CEF2239A873F0A4DDFD4ACD5A
+:103B400062B721350F74052CF27012BBE6B7A91BC2
+:103B5000BEA2F70D873EA760B7D9371CC661B579FD
+:103B60007711DCE3ACB7E5CB19051D62272370752F
+:103B7000748BD0BD72CA685D6862D2A889559C9268
+:103B8000B61E284A9262DB266E76E907B4CBAE06F3
+:103B9000056C29DFD3786B67B380D8430AA01193F3
+:103BA000799F4527D4DC4FE196174A899A22BD8F29
+:103BB000D8DA9B0A29FA14C51684680B55496DB5E5
+:103BC000C4564779899FE637656F0E55F0C6E6C93A
+:103BD0004E0071CB5752303040187CFA1EC2F74D60
+:103BE000DCB3CAEFA8DACF5A8DD53AE1DE02163F30
+:103BF000A4DB6A61ED5DD0B03371DEE5D320D3F193
+:103C000045A1ECB7BE343DCD2AB3792DE1AA3DA73D
+:103C10008FF8008F4FE2F90463A8D06B5C3516165D
+:103C20005593BC3E8DC238233D8D952A358EB0E824
+:103C3000DC8CF265A8BA9F30CE5C424374788FDB8F
+:103C4000976CA179F8593E3AD05E0FC398DF83CACA
+:103C500083C0E111A1467184A4BEB353AA129EB4DD
+:103C60003E9FA10516376D8CB7FD1F25A58C5CAB5B
+:103C70001BFDA50AFEC3775E83A4A176101ECE8E1F
+:103C80005CDD6E767929ACF8C9494433FCC6215A0B
+:103C9000FFC4FEC07F49DBF62656B7C6CD432D2DA7
+:103CA000996317C7209AD4C7C45E09147D5987EA5F
+:103CB0006D6F2B3DA034747EE8A8F75CDC201B1DE3
+:103CC000EE9A1E94FDD651D7798B143139E95DE90E
+:103CD0000814CE320A895133BED403F4581FB7CF2B
+:103CE0000902D3554D46DDF20EBA24782893D7B891
+:103CF000E64EC61F0836B8BE744F0343C1C2F83B38
+:103D000096610BFC28DF44860A03BDC68EE8C3D447
+:103D100012CEBD73F0EFF247707DCE139988E7F5B0
+:103D20000AEB454DFC0611CB7BE3333CB88F3ACC14
+:103D3000D621A9C3D402D1129F89A21B7B50A0C552
+:103D40002A3ADD382679C991C02BE41D7D34BA6842
+:103D5000C3C6EA4E07B83F0006428FD3289F90FDA6
+:103D60000D851B8167D9690BB46D828CF69552D194
+:103D700002414E3543ECAC58C8A3B4CCE13A17BE6F
+:103D8000EC3BF8A53AFC0EDAD66CCF9A815C27F9A9
+:103D9000AB32BB5079742C269D8204EF41E1E726BB
+:103DA0008675330543E8FF6815D02178C044C27793
+:103DB000DA96ABCE5BEEA7311AE469EBC9E8F19075
+:103DC000A3191AFF35BDA379A0D668341F3BDD8740
+:103DD000FFA6B2379CB8A082D63117FCD8CAB5FA74
+:103DE00060449D15B561F24C1A5F9E44A839A7DF67
+:103DF0009A9527D05EF8DFBBE5011115B27B4A59D1
+:103E00005FABC41EEA276B27170CE404CEDFCBACF4
+:103E1000A633C978F1B6697096EEF254F91869764E
+:103E200036D094B82A912A7EDA625A5F0E3BD14589
+:103E3000F5BFDAC8EB66E730597F5097056D49C684
+:103E400056877613AFBA228E48F5AA6FEC1A9A0EEF
+:103E50006EF6A799DE0FD2EFB31FA15A4903512185
+:103E6000050C79BBFC143E94129EBC2D6D7725D7B2
+:103E7000E2869487F380FF13B7D88CC1F8102B72B9
+:103E8000B5600EAFDC162795C71CADE9EBE48E4696
+:103E9000E0B417BF0E052CF4458EFC27A49863A34D
+:103EA00085FB9FA012AE4F07C2BAEE85A9A4772565
+:103EB000F0BC13EAB64E0F7BCC9848E5719E34B83F
+:103EC000A04166F4929577829EAF965BF6B0457FEF
+:103ED0005723B261547CE935DEA3EDFB451F15C2C3
+:103EE0002E48ED35F30605878F390AE6E4EDB71B5A
+:103EF0009DF309F924B150F4B857E5A1E528B8437A
+:103F00007547740715BDDB781BB748AD8C26F230BA
+:103F1000D356AA70EDE10A4D42EFDF650789F377CA
+:103F2000DDD385CD6FE1C6FAB80EBB3670568BB8BF
+:103F30007D6C4A96FBC18EDD8E5316C7E7257E7FCA
+:103F4000234B707EF71DFB7AA3AFEBC7F2A9140BCE
+:103F50001A0A2BACD2D6CEFD30E200DA8D6AA56CFF
+:103F6000B314750FC01E939BB2FDED93D3F99A6EF7
+:103F70007E5865ECB6AB2B461B0A62611BBBD45264
+:103F8000F96A235E8D42D984DE21F57E2434BD2377
+:103F9000A585B565F88BD4013A14AFCAB44D7F0D31
+:103FA000EBE7BB0A5CC9FFE57BBDD9F198B8D681C8
+:103FB00082B91C344F4A473890D681D8AC8E5D0CFC
+:103FC0005B77A0A40F710FB03E00A511D504665F0A
+:103FD0000A821A876BC2A2CC0F2850CA74F5D2A2EB
+:103FE000BFD286970CF7A396B8F508610E0E57431B
+:103FF00023B8B03F553F88AB8BF7AF585C4B9187E8
+:10400000B81C05D5B0B6B071A9F0298793E6B28582
+:104010000425B6D1BE7F4AF09F1A5E00972711C7CC
+:10402000457DB8323A4FF5D2CB1FB6E083F79EF309
+:10403000FFE14B10864E957E9501FF18E72DFD5050
+:10404000702D74C5D1E063FF08E963E8DC63BC8BC5
+:10405000FEC847D656B52350A1957452E3930B3C46
+:1040600029DD34F322D7B10677A004FC4D6CE83B80
+:10407000F425B8D17ACB3117604D02566CA2BB5CE7
+:10408000B3542058F7C3A7CF5771C6548733A02B1A
+:10409000DF75117528639C9771926D5F024D6ED824
+:1040A000524B39E458021AC6196A33F05DDFC12D4C
+:1040B0000EB2541CDD05B35B84B813D55CAA22D1C3
+:1040C000A46CBCF64868F4FCD048672E83FC937C53
+:1040D000F6E5AF7550FFF0BA6E8CE64BF9708C1AAE
+:1040E000B6AAFF714E4093869CE77CDA5DB40A71F4
+:1040F000B7D5D8A75152ABA7C362B4CDED7A4EED78
+:10410000866C254B809F737C29D9D0FAE5B413BE09
+:10411000B569919A28C1211E2B5410F0D10C974EED
+:1041200003444D658EA67728D4772B8EF4560C97D2
+:10413000BFF75081BE81FDC3F54088D946322E00BD
+:104140006668BF8C39FD48B17B37168F64C930E48F
+:10415000856110B5D5AD3F548CEB041F5BE4386727
+:10416000AA26C3114E7C7DDE3A6986AD6AAFFADBC2
+:104170003666BE55E4168042E49A713BDB93308389
+:104180002E943D2E129BD0DFE826F7FC3A093EA67E
+:10419000F119304C91A04A63AE6EFBAFD7F1BEA2CD
+:1041A000E87A16F570AB8D5A7AE788D5289BC4DF7C
+:1041B000C50C8827AB56A29B97B1502D99F8EF8E6E
+:1041C0003757C1D277E9BEAC5F818839A4F603D9ED
+:1041D000599CDA56D524D4C34CF7A0358DFD7DED1E
+:1041E00065753925351516F0BD5DE769023625215F
+:1041F0004A816AC78F4BFBE3AE9F2B898E01881ED5
+:104200005DE27D823467E06DDD5C6BF02F7FCC6C0E
+:10421000800A5F712B7A06E07E3761556A87D88005
+:10422000616BFF72EB296BB28435BB947320EED1C6
+:10423000E07CEFBB4D98EDDA20D175F9B589507A65
+:1042400078B16CDE636D134A95A88FD514D9C7C4B5
+:104250003EDB95A1F455C460268DDAF30A91DAE0CD
+:104260002C7995E2471E6AF530639DC734BBC303C2
+:10427000939E506EA6B140835281BF2001124D7BA8
+:1042800022F6B43EF50A2F39AC54B6F98335FB1447
+:10429000718C7D885DD0BC5180B1DD39CE2A202261
+:1042A0002AA5FBF982D1D8CC83A697ABC17C3F620B
+:1042B0000641A2D89E563DAB03D0C24A3F4C995905
+:1042C000B183EE5BA066273562E234A56227964D86
+:1042D0008F4750E49BC9324497DDC508031F11ADD9
+:1042E000ADFC94C3FCFC1892D80445D24F838CD506
+:1042F0003D15D0373A4DAA536D9E90007E60007AEE
+:104300005224B034E9A0AA03ED10EC92BAB0E94807
+:10431000066FC7E8BBE42602CAF6489DD27BE0A739
+:104320008DFA43B5F46486A3E28B250CC8E682AB14
+:10433000AC0A29C0786AAA8A07847968C8134F4EE4
+:10434000587C9E909D8D5E5636F506F40609B7346E
+:104350007677353F766BC0A44CD9C065DA29F7B9BA
+:10436000F3263FA7B6C1D1456CB7E3218058496118
+:1043700086D590C7B974B09F1F4EA6CBCC010E9EB8
+:104380009472960222B0CE9268A5DBA6E116EC618B
+:104390000C65B2E10C3E8AD7FD48D51E7DEF719EBB
+:1043A000AA4AE194B6C1EB59E0D928C7C05E1DF90D
+:1043B000B3C452DC636CF7F27A723C3732EFF172BD
+:1043C000A50569B2B4D4D8DA9B6927D548E612EDC1
+:1043D000712F933CC29BAE8F025F2F36281A17E8CD
+:1043E000A03423B7390F4C81915E18E0F53C259B32
+:1043F00048A78AE19040A9130969017805F01223C2
+:10440000DA8BB24334DAE26F2AD4215AD2B0991A45
+:104410006557A8811073E6116CA337684E03F356F5
+:10442000DB91F0366D5DFC17A12E1BCA38525D1C66
+:104430009A662A57582259068CB3541469A544FB2E
+:10444000694C52D84AC313C1A5F7A98D5EE9A28F62
+:104450004EC623BE88A4225EAF72583F87EC846CA0
+:10446000B80FC4172B34153F8F8954AD2CCC942B27
+:1044700083193A1A2B8C928BBC7DABC4CB018D3740
+:10448000861103D421C2761E3C14E7B26DCFBF86DD
+:1044900063EC3545C080DA23F16815D7E209FDE009
+:1044A0002348ABD3A1E1583EFE49A9BE0DACA1E91A
+:1044B00073F7710650277C86D4FF65790F43EF2987
+:1044C00039B8A0CBD4F05A949CA9E70154A129741F
+:1044D000AF2CCA5CD49E27711DEBBEE00F6C7E0E24
+:1044E00073032B70E5261D779F4A33764AD07DB241
+:1044F000CAC594A026AF101CD3B2A1142EE1CBEEF6
+:10450000621B101BD04DEB28028C7DE0B21C009D7D
+:104510005EB7B54290B9EF3D74347545B9C429D240
+:1045200081E6F863FAE4361F419DB111DB0EA389E1
+:10453000B7E1529DC68A894A007F05E742BC502FE9
+:104540008442ABA2D57BBE830AD0A300BCB4235265
+:104550005A383D3156C089A279861D6E85E213C94D
+:10456000B4B64E268F0AB5EC80186C094B52E36D39
+:104570002FDFA131C443CEC6FD987DFCF6F8B758B5
+:104580001C32DC8AB50F674FE36B50C8C6002E198A
+:104590001530E3EBE3A657FB8E59DBCB847261DB6E
+:1045A000D21AAE51F33CA6F20FDF2CD2ACDB13874C
+:1045B0009189E29E3926EFF666BB0F4F369CB7799C
+:1045C000727D2B03A0E31BDCE4183B11148B661EE9
+:1045D000BE0969B35DA614D426FF8172A4879E210B
+:1045E00047D0F69876A1A47F607902639EF4E2FA40
+:1045F00097974885FAB2A9C565BC9AF64AAC518A24
+:104600003D64228ED5C7FB914BDC91D05C07371EF1
+:10461000C0085ACBBEB47D37702EFDF15105790329
+:1046200078554A305B9517AE3F0670E4B5917DCD65
+:10463000EEF68CAE28E953C8F13F6277A87E5404A9
+:10464000BF576DCBE40B500ECB508A14086B5296BB
+:10465000CF6BDE71D6C0494C67F3B85E2A0E62CCD0
+:104660003D07726AC186F9E210F146C129B7895C3B
+:10467000864D50EF2A24019458BB9A47CB7D95056F
+:10468000524CA9D4344A8DB8C0B488084AF5BCB994
+:10469000F4CF247DD9668D7160EB2C80270DF285D7
+:1046A0002C3A9CCCCEC36B07555EE013A983CDC6D4
+:1046B0008F6C78EB54AD2F02DDF041D1CD82CB4E23
+:1046C00091BB18040D46BF60692D05EF60334D7531
+:1046D0004A5D3E75ECAF8004AAE348A4C4D06DC91E
+:1046E0009B2BC9FAECC6CC830E7308FED16C5E9B83
+:1046F000ACEA856AAD27534EAA700F7561176FA893
+:10470000B595050DE164B28B61EC3E0A6D48BC269F
+:10471000E917200B04006611850F700E8B51FECE39
+:10472000592F88A0A6803E4E497A44C47DA86FD4F4
+:104730002E2823B485DD4DD4E85C85BE01B7D22F89
+:104740004DB5B3959857958FE62E60CCBB4D00F6CE
+:10475000205987FCF987A76DD5ABDD0EEF29ED98C1
+:10476000EB95A0A3F3C8AD8E1975B21634064A13A3
+:1047700034AFFD18B6C9C524CB95388CB7172C6952
+:104780005D6EDB65D5036506738E7DF18472886B83
+:104790004651BAE065C2E428F3A551C0D7AB7DF716
+:1047A0004BD1209BEA7A6E023D498A4A6980B95F03
+:1047B0007F57506504118B0B49D81220D42C2C7ACA
+:1047C0002B8264A264CEC64B5CCFBE406199F133AC
+:1047D000D44ACC30F8720904B12E0DA8CC897C449F
+:1047E00095FD1DD36ACDD3CC9440B5131ABB873049
+:1047F000C0021178536BB6C97BC3919F58410630F4
+:10480000B1A12524877D507452D3FD4C356273B716
+:1048100006EBC5C19199E82A7E246846EB37402B08
+:1048200067CA8F2A0B67044DF81135DBF67C2C39EB
+:10483000C2C2396A690B90530AE91E3A9D6727057F
+:1048400047517BA747724C75CE024222FC9282B838
+:10485000016577580D0E069DE7440EB1DF53AF8B0F
+:10486000530A58CA6F3EF8B039E9398A1A3D8A535B
+:10487000DF4140D03F264925D4B1584B33566530EF
+:10488000D0D027CE1318970E84051F656B6489104E
+:1048900063A9DE510C2BE487DCBA73124686DF2F46
+:1048A0007DED5FB302E4A72604E926A21013BF231F
+:1048B000654483D97D5EAADCE660BCA3F334BE5FA9
+:1048C000119BA278A559C75E7FA84DA8542A8905D7
+:1048D0009089B4C71DA59A8D1AB433C12C2CE63823
+:1048E000A8646B2355E1DD2E6FA27222FCF2F30265
+:1048F000345D2A70537E2B942255F6167F78CCB205
+:104900008E86BB7E29793A6D53F14F12004F716943
+:104910000D66DD76C9EB8DC452BDF923134A2B75A4
+:10492000BD4386D8C7862DB33C86BE703A4B4C57E4
+:104930000E162F6B0C6265ECEF96A2938F8D0AF426
+:10494000D772D107605E4A475A93BC1EBC08A9497A
+:104950007C9F8F28FF676F6D3558A76032BA59A6C4
+:10496000E1CF0C05C28F620B203C84E106499CC854
+:1049700087D3DB632CF7199E52D3846B8612DAD46B
+:1049800071B00BDF071B78611EC79222EDAC718FEF
+:104990004FFA1D46378C8F46358952CC405A2CA48D
+:1049A00022FC4CFAA79D7C17B58D9C67BFE5B0F142
+:1049B000A3C3567986989268CBE6291C50EDE9CFBF
+:1049C000F774F76E1B8E4106966537F59CE4F86226
+:1049D00057F66B7EC1D0945F1D202F964A05645E0A
+:1049E000D620B3269CC365A3039EA4BD4D7B6FBB9D
+:1049F000E2BB11CFF4AFF08FCF1DA29B3928CC9032
+:104A0000224EBBA1A330AB912A3FC1A94E0124285D
+:104A1000351247A8F800324DEA7D0635BE17D44658
+:104A200070A38F6432F493F9CC787B778B493492FE
+:104A30005E5027BFA8823529C9D42A992FA2EEAA91
+:104A40002A7A0658CF9ECF4C78F112E53A3C761B75
+:104A5000DA66E23C688F23F8E6C466184EF0ACE4F0
+:104A6000E19D505900A9950D37F665E544F818F217
+:104A7000B948F30739D2CBB8620DD9DE962DB329E8
+:104A800058D4ED6FB0A7C24CC625824BBF4467C453
+:104A90003A7B9E205F03ECD4833B24B14E54246DBB
+:104AA000838B931A67E1803AD7D21781FB1E00737C
+:104AB0004DDA47B9E9FA10997B365181503CCB4227
+:104AC000A4E6560E5BEB01DDA6B524D58EECA40D55
+:104AD0004F4F546FA97147D11E8CB4188E0546B044
+:104AE000D69A707DED8FA67EBAF63924844C5FFB92
+:104AF000A7647DD9DFDAA70F0B3E32D336D80F7803
+:104B0000C47BD1365C8AC6D90380420A9275B74EFF
+:104B1000B3C1EFCC04715167D293327270298F5BAD
+:104B2000EC55250C3FC56F56380DBD06B7D11B316E
+:104B300016800F3DC3B213BD04B60FBE21B15E4B4C
+:104B400094C304AC0485298D2C9799719BCF0124C3
+:104B500045089AD08EF64CB8BD76606A1D71976094
+:104B600027E2423E794BFC9F897D3BAFD522B88836
+:104B700090844024BD91E69A7D23CFD0BB72EBF99F
+:104B80004318678F1AD1306039B95554F610D305E0
+:104B9000C647C0AE4D2730811CB9B7BAFC7D2A0488
+:104BA000C76B11A9F7AC5970ABB1DE3AA7A06AC9BF
+:104BB00071821C4E7698EE3B4E1D46212D7D23E2E0
+:104BC000A08E5F3460292533DB6E289A2E79EB5353
+:104BD000C44B2E171C092F5F3C3DDBB9F39BD02043
+:104BE00079ED54EF6AC28A8CFC10E5682C4E303F98
+:104BF00084F9F6BB0E64B56351B7BE46EDF989CAB8
+:104C0000141A19440ABA5EFC50F016CD2C0D6A2312
+:104C1000B4ABB150885E35B6608F59247D8B36CDEC
+:104C2000AA9C100D88D4F491D58CA8EDD8F8B8665C
+:104C30001800F70D6E23AC2A3F1B8E9C54D465AC34
+:104C4000E4BE77492C3D27B9D9EAE68C2685556024
+:104C500000541257E8914B3089FC2203EF18E120F1
+:104C60003FDF87D329A85B2A2A64496AD27EA962DA
+:104C7000DB885479D701F2D8F9D0321B80D67E9EDA
+:104C800000DB4D9F4AEC39976CCFAB693454A1D30C
+:104C900081947FED8EF88758ABE14E49DD7A3B99E0
+:104CA0001AA1EBFB326C37B5D6C782643DB84A0512
+:104CB000BE1CC906D4895D672A05B12A7A1CB48452
+:104CC00000B5D9C20ACFB4206EC2E6E681B933512D
+:104CD000761D31C837756948D579F630C51EAC7D6B
+:104CE000F41A7701FEFB63D6D0AAA37D64A434E155
+:104CF00049ECC4E964EA45C89D8C2C11814FFB4204
+:104D0000E52B0842B9DEDDB18E5E92C562FD23203F
+:104D1000261D2F3FB611BB1BDDE0551EFFE3D37EE2
+:104D2000E4FF77AE8C5D1F43979A4CFCA0857F22F1
+:104D3000FA69448AB64A722F2A4C7932BC37D3BFFB
+:104D40002CD05441CD8681E455B4EE89D9D18E5F03
+:104D50001EDE731D20F7DFA598CA8D7429C4739DCC
+:104D6000A0DD10EF76C4B3083F4AF661181BFF437D
+:104D70004B4FE4818766CF5AA46CBEA26FBED58D1F
+:104D8000F89793954677050584F5F72A98B7C6896D
+:104D900031E5E831E0FE6232ACE8172D943389C08A
+:104DA000BA6AA6A9A08ABB4BF296CF4F25DC87AC86
+:104DB0002CC06661AFC2989A5014EBDDCEB52C6D55
+:104DC000DEA996E5DAC8E5BFAECAF9C0946225FF50
+:104DD000C08051CC16C3406063E246BD6F15185DBC
+:104DE00061A1C3C9C00C18A6F03A7402498C1ADF3D
+:104DF00014A82B40BEB785910EB1B742570C37DFD0
+:104E000023E1FA2E152E353BA6637E8829B7FB6D6C
+:104E10009453DDF05C7556A4AF01830E3E63490FD9
+:104E2000BEBB9EA4CAA4B14284B19BE806657D4086
+:104E300096C7BA4B4B6AFDEE17C41BEF77288C86DA
+:104E4000D25C325196FCD13A597BFB41DBA8E1960A
+:104E5000911AB905E09F97E240E4019DAA6ECD7DCD
+:104E600068E6E5416BAFFA435EEFDFE7606BBABC23
+:104E700019B46F344F6413457B5D4C3F048D940728
+:104E8000EED9AF5329EB4E50BF31F76C3AECD4E575
+:104E9000B678A6BE8D50476E6A63283536A1B8DE57
+:104EA000124508D319C54ED2834D87C980E39C555E
+:104EB000423FF0F19347E5E5735D5FE976639498CF
+:104EC0009B4057A4B7720E15A9951362D29CFD1D85
+:104ED000E16BEEC85D7C06783434445BF8B35E2445
+:104EE000AA97EAD8356F229F33B8A4289C3E5876FB
+:104EF0009F395B02BC3149F5B8839D671588D4BFE3
+:104F00004B8E67D4A9E0C9CB0CA1722567D2B2F44D
+:104F1000B6ED610AA7770D0E927CF7C7C2FE7C3F03
+:104F2000FB43D61B353F71DF6BC4A7E77829B50F6C
+:104F30000DD204A293D3D1DA800E2A3F0152B9A236
+:104F40008E7C45D85D749CD6A488127F7D78883885
+:104F5000B9C8AC3A498E69301AAD37FEC6DC14A325
+:104F6000CC428CAC391E97F5D7B915B89DE155EAFE
+:104F7000A863F4E8A6FD2DB09BED0F4DC69A2C302A
+:104F80008487E83723258CF22B495AFCAE301E4922
+:104F900093FD3AED9A01DA40C96EFD1BA687E09AAF
+:104FA0006B3D25EF71B372FBCEEE76F23CC6C816B0
+:104FB000F08D23C95825F0CF7E7FC0B8CC94610D09
+:104FC0005A3A206FC93CBA253EC901A2AC90ECE127
+:104FD0009C9497BD49779F0FC1ADF8CB61CA0A3841
+:104FE000FF077CE40B58E4D6C369195E56400C47B2
+:104FF000BD8D0A5B6AF505DC285D3CD7CC977570E2
+:105000000D716EB9BEEC2B181B0CF79ED9081F55FD
+:105010004061E99D6474CBCE408882CA627EB35CF5
+:10502000704F88464DAA473C4336C53B4D780852E1
+:105030000EB4ED9253CEDF1B1CD187E21B7656D9FE
+:105040003CD4AE491BC7B8CC77EAA058728B64CB6E
+:10505000E8DBDE53819FC3578EF66176BA35DD8F6C
+:10506000B538E6F89C75E06BE1235750D9CD8D1823
+:105070004E61458EB68A3A365947BFDB0379D5393A
+:1050800056CCD1460294DF43125CEB3F2EDB411C31
+:1050900086DE753C022CCF860C2628CC95EF8469E1
+:1050A000F35619C0140F27B31FFB6C5882B806B112
+:1050B00007C492FA0A166BB12EB91C79BC686C88C9
+:1050C00046675560455077987151EB42054D213543
+:1050D0006AF51D2C120D0E468B6B4D7A079DB3AFF2
+:1050E000C0672F2F7AEC83DD65289EB86FD3B6FF9B
+:1050F0007FD399493D45D5315F83787F7A80F42508
+:10510000BC300FD62064EADD91F58B06D104FF5A3E
+:10511000B7CC5F585892F25F58F34E7F6AB9F2C825
+:105120009BFD9639550DD9E5A589788A230F58A19D
+:1051300004560CFBF82C7562201FF1343457D61B33
+:105140000FD7883CB6472595C56087BD796BD27F60
+:10515000EA5FC4CF0D2B9C3D829404C6EF900BB444
+:10516000246694F0D49BF64CAB52FD091443DD82C7
+:10517000AD4B3BC653855B413B0EEA20088FB7E23F
+:10518000095043ABA7AAA5FB6C31CCE9E0637F10C3
+:10519000A3282F38167BD0CD99B75A7796CF8C0598
+:1051A000A2F8B012948E09C8D8AA3306A652660394
+:1051B00096B0500FBBCB6A0549DEF42671969282F9
+:1051C000F9B580B5C9A2930B31A52A689F75CBF0BC
+:1051D0005B527135C93A916AF12F86393874523C65
+:1051E000D5469F607E0DFCF842E80CD638F998C48D
+:1051F00045E5DEB8F56938334D9E77B8A0A59CE04B
+:1052000044EB815A12850F0003674327BA949CD25E
+:1052100099C9D264B5442344C570E060792E63C651
+:105220000CCC103DE54E2A2E22ED1E067D24BA4BF5
+:10523000F665254030A558816587C02622D31B30EE
+:10524000E247589CBD605FC3B4D4751366B3A655DE
+:10525000054BF288920AAEBB11B08F584963A15634
+:10526000F8044F7C7A3D689A429BB9556CC0CB19C3
+:105270008A1044406BC7736D79AC9995B88B98814F
+:105280006FE75754AFDD2FED4CF64EDB1653193B4D
+:105290006E2B0C9E520190589AF6D96C952B5C4F50
+:1052A000BADFFE393AA32E793235950AC45FF15937
+:1052B0009E51F8B90917C88A9E55E40B6B2F687682
+:1052C000AACCAB3C166BD10DF6EDFC5E59DF07B6F0
+:1052D0003CC96290C162E5250B79D26FABF780D9EA
+:1052E00007937B0F54480EB5C0739E75C0F54107F8
+:1052F000245ABCAAAF598869C397FEFE92BF86C2E2
+:10530000156D512BD5B0E14C0DA81E5593A499AB4A
+:105310000317FE47B9781E215E8E7A171D2EB54001
+:1053200044BFFB567F9415FDDACFB728C556C1861A
+:1053300097F4D7DCC4DE709C276A92D49F8527330C
+:10534000EEAE1EC233FEB6A2D5A3B729784A555B8E
+:1053500019438EFA32EC7F49B171CD9D3A84F2EB5C
+:10536000F043A6F6B0DCB199601304D6F5274423C8
+:105370007E7C9D2AA1F9251C34EEE3C1C9C73E21DC
+:105380004EE3FC786DC22D3FF0D437CACABAD0DFE5
+:10539000459896CC61515BA7DB0A0D581649B0FEC3
+:1053A00044CD12DBE3A3FE5BD7CBD48ABD93A79B8E
+:1053B000725732BFF5FAAA9483324546325D04EF44
+:1053C000E4B54B41F8A61F9E1A1F9AA0FAF8549311
+:1053D0008E834F558DE5C844E17A349A09130B8BBF
+:1053E0007692A654CC5CDEF9039698469CE8F1FBD5
+:1053F000746D6B395C1902B30949916D7558EDFEF6
+:105400005701A31D6361B185FC0929DB29465C2195
+:105410008E9B81FE6E5961E98F99C6A16DB415A767
+:1054200041F305F8D801B9A7EF0CF5225CFD6366DE
+:1054300095BED53AFDE315F5A5A65582426B2375B9
+:10544000244EBFCE4BF35F7DBE4C2A431D143D89D5
+:105450000E0DD56524D3DFEB5984D625A09C32529E
+:1054600078E2C102789E734F5BC77BFFD82607B5F1
+:10547000D4E1AC930BAC6FC81C0234AAAAED5CD784
+:1054800081E80A1CE02CF0DC5111613E1A77F4959A
+:105490008967E72BC406387BAE7272E173B79DBA99
+:1054A0008FBB527C2EA35A3369ADA98C99BEDA0A00
+:1054B0000558A5ED1DB740A066A84F6978BF19C86B
+:1054C000748326ED981786B235AF94B87E32A5184E
+:1054D000CBF50E49B67776B9C49821A926408D42FE
+:1054E000AB2CE09D6F2C1FE524431F496A3FCABEC9
+:1054F000D780AA47D55189EA3DDA993348853FFBE1
+:1055000022B82D2399AD54D97A499F158F79D64267
+:10551000D13A5609E77B54FF8E02C0A64FC171D71E
+:10552000CC736669AD8A4288D793F62A0A1D6C232C
+:105530003D8E8B920E27722E8C8F54D100C55DD973
+:105540000BD334AE1C1588F55100C9A465784F42C1
+:10555000B20E477BE9C24F24B9B2B5BF6DB50EE7B5
+:10556000A8F9407F96075C31389C686998A6BF7A95
+:10557000A7DD92A33731EECC53FD5C4E89CA92CDA4
+:1055800087B8C744E4B8B8989B03DA08BF7A3713E2
+:1055900083D31A0978B6A6F42A4ACFA23B8F90612A
+:1055A000873A2E44A6A2327301745674CFA6CD6BEF
+:1055B0001055673D4EC081821AA71E545FE5DC8DF1
+:1055C000449BDEBAA9CDB18D64849A01DC30BA4D1A
+:1055D000AFF0BD041ABB3D9C50F533B1C6D734D7EC
+:1055E00033F5FF64E79FBA4AE566CA0EF83ECE532C
+:1055F0003DBFDF4154125779C5F0A2A7EAD2E9F9BD
+:105600007158111170BE2DD87D1E14E671AA152790
+:10561000A1E156612991CDE900129DC73AD1DE89F9
+:1056200035B859ED94AD9E2EE08BA96867C4BBA632
+:10563000825C8FC9C4237F98633A3BA353FA505AC4
+:10564000AE01CB14AF45764B8B60304CE7B0BB6CF2
+:105650003DFFB6A19EBF71A49128D707DC4CE72877
+:1056600005B27341FFF198BF524325A933B23749C0
+:1056700057E2A3B2DE3F39AE6F5EEBBE253EFBFCC8
+:10568000DD5C2835EC8D5E70DD9E73A99421A1CA86
+:10569000D39DC43EC7C2F718960C0308A2A360A905
+:1056A0000265547B5477815C5E0568491C66E6A4FC
+:1056B000EF370A2D48AFF4B93A92203A80C6FF314D
+:1056C0004F38A42713C4D8D94E7AF27B220788A872
+:1056D000F4F40F2431ABF996CBB3E4E205CA9CADE8
+:1056E0005F6521BC493CF528D64EA79467767BFBC5
+:1056F0002B498977491299852E188280E19D48C8E7
+:10570000AFD682EA9BE816CD552F4D0289EE886A06
+:1057100094C8DD63BB063C59E5F1D0BD06025CDAF6
+:10572000F1FD2BB22938340BB2DF34BB5009B96B11
+:105730002B3A77B7C794060A4FA105B17B49F69774
+:10574000A3AE60732B1ED70C0793C4F84B5C70FCA0
+:10575000439BBA9F1EAF4C7E1C6F140449413C6BA7
+:10576000FC1DC4E9A1ADD3D307EF86FF8E8C8F63F8
+:10577000617C1CB98892793D70DAE9FDC56FADD9BD
+:1057800094CB2D92D255CD82B6DE6482DAA4AA677C
+:10579000BEFF80B9AA66ED70869BC73E082F509A5F
+:1057A000EDA354A273A6C11FA95776A92C5C27D1DB
+:1057B00001726BE899CB1E09C6D24915C80D11308C
+:1057C0001CB888229FD5FC0475E8DD0780EECFA8C1
+:1057D000F5294C71125EB9B112408D0731ABF88FCB
+:1057E0007200994942E6EF4A479A09070814C2989D
+:1057F0009222FEE43647A86453C3A21F4CDEAF01D9
+:105800000A44835F90560D64C1E867C0B22A958D43
+:10581000FD8129706ECB06AC94D1045C687B052AAF
+:105820007D2FEEC4C2625AEF813863D88AD8E84728
+:105830002013B250D0AB98B9EF9F9F5F846A8F4717
+:105840003492F01F6DEF87758EA91D422BF6D50C93
+:10585000A7D15FC5CB8F63C7CFDA1E28C3F8DF3E61
+:10586000FA64D3FD61220F5F2CFF246BEA179A13B1
+:105870001B83E0E7C615CC7F56A39122A0D888856C
+:10588000E58117560800344E600675C2B3AFA320F9
+:105890008BFB635AA3B2717495F3D0AC4780C9698E
+:1058A000E902F0EEDD29EFA4D45FF84CDDC6C83F75
+:1058B000478AD5B4D6532F1CF95799F463F5EA57A4
+:1058C000C5C06614A443FB801F17D6AB216BFA92A8
+:1058D0009C91B289EDF479C4B5C5236BCBBB0A901A
+:1058E000819F138CB62F262C39FB736CB162771312
+:1058F000EE869934B722A9377BEE7DA3F59C8551BE
+:1059000010CAAA8FFE95FF89714BF67DD99CC07293
+:105910001C57E304602A4120E8118B5C55CCAA9DFA
+:105920005BB8E2C897F012F48AE655D2A06D12E98E
+:10593000DB8BA1A11BD325EAC34D16F302E400556E
+:105940001CA07DD046E3FB66EE1813238E05F48C75
+:10595000939E6FD29874B29E74DBFA753882584366
+:10596000B12DDCEBF7C605A9C273EF654C96FADCE6
+:10597000926DDEB079D0EA9AB0DF49844DDA8BF9C6
+:105980003A27A8AC22B2144A3C904F159E6FA32A26
+:105990008F7262D3D360D7BE0DC6526E3088D77770
+:1059A000C17B8A93D88A81197C3A1F32F13861F120
+:1059B0003AEF95ECA227F19CFC77E9EB7082B018E6
+:1059C0002ECA597E45C083880D25514717EC6C318E
+:1059D000B38D38921EAF84E15FBD221A8877419162
+:1059E00071AD1862514617F0C3F57ABBE1E970F664
+:1059F000EE7C7CC56287A13FE4E9336D7B33C7E66B
+:105A000022EA501019E389C5DC74EA93C19258FD6B
+:105A1000E0A656BAE74011636AFCCE6481C83DAB8C
+:105A2000BCD256404A1CE8905084F084C636ADB4CF
+:105A3000B5B6858D6C3A4FACB000F627A708A42800
+:105A4000A6500B93F41CBB218FE7C4DB9977B76298
+:105A500088A537E045B5E3E1F0A98BC12E22A32A42
+:105A600095C99D9406C65E88F7F82B4048AFF1377C
+:105A7000E63BFB70EB4B2C39F0647BA96E4B643A30
+:105A8000C3C8A70AE1B927CEDCDA4552D5AF8D12DB
+:105A90007706628BD438B5D0BA0DD0E7F09F90323C
+:105AA0000B70A5AF4BDC20669979E42E9029E09F1E
+:105AB000A63B74C2612F9302A00D32CA88284FDF23
+:105AC00080CE9A41086B178F8A3FD0E06A0AE9FEC0
+:105AD000A6A469BA65DA34CDA911B6131E3841C639
+:105AE00076CACB982B1E1E46C2AC328D38F6F1E535
+:105AF000C90931AFEE8FB57345BD6B1D2A3B6B46AF
+:105B00000DC23134C7F9E1B082F07C5FE426CA806F
+:105B10005351E1D1614C8D82AD7BFC7E014187BB4D
+:105B2000EA5AC79C8B7BE3C4F977E3703FDD4C43B3
+:105B3000D5EAF0D24F3A8434E5BA11CC3814E8BD36
+:105B4000DB629FAA3E9AD432AAAFE6326699193D2B
+:105B5000DE8CB3FA07E0757D934195EB87EBB721B7
+:105B6000847955B283A847E8761A0B30CD5AF5B43C
+:105B70008B378ABFBAD4649DF70AE0445035FB4F97
+:105B8000A0DDA7DC51F1E11BB9FA785AC12080569B
+:105B900014A16E5D8255E06E6228F9032858CE8507
+:105BA000DF5A9098904A1EBAE9522D0B9E1855B6AE
+:105BB00074D7E8F632FC0D2927CEBDFD7CE6C90975
+:105BC00093FA0596CAAABB1769011653C7BD1942B5
+:105BD000B6662048356E3A8FAA9EC726CE06726FEB
+:105BE00085B026B19CA127A8F2A1971A1E67CC43C5
+:105BF0003CF45642C3A463B8CF8DDC6AFBB44418AE
+:105C0000C5A2FAAC3F3CFBA33D5BF915FDDADBA86E
+:105C1000B5423F674CB466856A0C5ACDA5FE230297
+:105C20007DBD8EC7E4E38788CE94405BFBBEF04029
+:105C3000A29B9A72091EB7A93F9FA0A71CFD474FC0
+:105C4000E6E1BC88E791E9E53C04BCBC118A306E12
+:105C50001AE07B441165ECAA371AB890979972D76D
+:105C60001C976B51D7BE15849C84D0BBCA7F20354E
+:105C700044A98F18527554DD418C21FE606FBEF827
+:105C8000F46B0283DB8FFF637EE7696F832015A9C6
+:105C9000FED479A52501205D19B179167F2BB18D30
+:105CA000EDBF29E1E56430F48FF55C5696CFF9E25B
+:105CB00023E3BBD29B587878272254C4E68CE62A8B
+:105CC000B1C3754D2B3F554CA533A5FF3F9BB2D0BB
+:105CD0008CD6E2C0268090073DF1509F7C467C9C8C
+:105CE000CC44505BAA73971CC1B2FEDC053748DA7E
+:105CF0005D27B1AD4D083631326E5A73C3884A5AAA
+:105D0000097B46260BD751DE1FD1068952EA44157E
+:105D10008B74C2E0284D9CD6CB0BE0DBE50A39E65C
+:105D20002EE32DEEC49D60152A1604415591FAAB61
+:105D3000ACBDBAC640E99027CBB1FC3346F917C0D9
+:105D4000CC48965BFF99779AF121A2C5880DE03F78
+:105D500057A3681B9AC8F590663E49F80FD79A9AE0
+:105D60008EDA23F8E82C931B5B90B03FC361F42AD2
+:105D7000343920762DC01862C7E7AD70B86A5FCBA2
+:105D800050C2903A3BF47CE1CB34598E3DC4F032A2
+:105D900015FD9FD0BAEE896CCDA7EE03642057E2C3
+:105DA000A326094D559C1E3114ACF228BFA62785A9
+:105DB00009BFBEACC3171537EEA274F8000FFD5A29
+:105DC00060E3EF99A7679051755C7775690C497E20
+:105DD0004A4C525A8B95F4AA5B2BFCEF8D54C5228A
+:105DE000DB920080BFC5B992A25B35D8B037A82A34
+:105DF0001C7B7DBBAE8B4B8219B4C4B5C86BE0DE97
+:105E0000FD9916999BB502E7104367EFAA75FF91BC
+:105E1000E39BB7EAD660848D7DE1755F43B1DEB95F
+:105E200056FD2F3C5C854EA638883BF7AED31B93BE
+:105E3000AD717A989E4DD8BB6FB15FE001A0280C80
+:105E4000202F47B14AEC8B0E5C5C758FD9B2CBF535
+:105E5000116B3E2FF1EC386B429A29B61445451967
+:105E600046A2A143B65CDFCAD34063475986AA570E
+:105E7000D1176956CD2CED2F1C2DB60C00920DBA02
+:105E800051AF8FE23C8409CC453100EAF95C07CF81
+:105E900029E9F6398D5527F6296F5FB7D06EFAAF2D
+:105EA000AD936408B08A82EC37304358BECE176D8C
+:105EB000DF2D10FD11EB74F8EF350FE10667E2639B
+:105EC000CA16C2D1B95C4E4CD25C8184217F812735
+:105ED000F98AD5C9BCA5C89E31A3DCFD9EB2D17E8E
+:105EE000A2BC02743553FE209D3B4E0C5907AE57A1
+:105EF000B4D67A3A78AE4E6E8C7DE6BD201ACA9C36
+:105F00004B26C36B84892BA7A5979CE147D87CDDE2
+:105F10001B3B58387CF585BB36B858080D5A18C459
+:105F20006E4B866A8D44B28FDB5349E5374625C9EF
+:105F300088B1242102995FC5D9B30BD2E24D5388B1
+:105F4000FDAFA727108C034124C18C3B426537AAC3
+:105F5000A94F708CB1A53220F1810E805F4B3E3F7E
+:105F6000D1CCF52F9C6F689B5A5E0839B9BA697D10
+:105F7000C948B594E9C5B4D5568FEC795D4C8719FD
+:105F8000138B7867BE02C79A60417AA93082E559BF
+:105F9000617BD42362502865BBDA53F8A32901BE84
+:105FA000987A36C2390DE65CD3F0FEE63B7CA676E5
+:105FB000E932446EF5AFEFB37C8CAB8476962C5708
+:105FC0002333D4116D6448924279A53ACBE61DD9AA
+:105FD00033CBE007E09E53F40B549B91D056AFD9DE
+:105FE000D8A3987AAA413841728AF5746CF29C2938
+:105FF00092532211F7CC9A6D68AEB2C39AE26D83C8
+:10600000FA90FA0A4C6ED6D6C200579C579809DF10
+:10601000B069D8825624F6C4916A581880E9E651CE
+:1060200098F3EFE01130C7986637B7655FB1D79046
+:106030009438BB8545E048441FAC9F59F5F321894E
+:106040001737518137384C8650148EBA614258EF59
+:106050005DCC8220BB919702C0FDF177F8225A2FC8
+:106060006643E92CED594ACB9BE9F2BDA2905E054F
+:1060700045380547B31B1C5E9424F524CE1D80A033
+:106080006ACC91AC548B923DE41A53E8F51109D6D1
+:10609000BA6650A0A87091ABD18D3DA60292124E67
+:1060A0009BB7A6DCA5527894E2195AF72F94CBC37C
+:1060B000AB86435C2B3E01123905E36D269B12A291
+:1060C000AFC9D4E7D9222468A53959B2530894142A
+:1060D0003E2E6C6204000000000000000000000082
+:1060E000000000000000000000180000F060010047
+:1060F0002FEE00000000EC0200002EEE0000000079
+:10610000000000000000000000000000000000008F
+:10611000785B03EE7EE1784B7CF50C9501997EF57A
+:10612000000000000000000000000000000000006F
+:10613000000000000000000000000000000000005F
+:10614000000000000000000000000000000000004F
+:1061500001903F1B3FE202EE3F1B3F3E3FBEFFB2BE
+:1061600024E3FFB230507CE00FA009E900944F987F
+:1061700082F50394FFB20122029076E200000290C1
+:1061800076E20394FFB201220094469880F5A5D0F0
+:1061900020942098FFB231E2FFB20148FFB20348D9
+:1061A000FFB203490190FFB230E2FAB206E0FCA26E
+:1061B0000098FAB206E200B070D000B93F97A1D0C3
+:1061C00000B03ED300B0A1D23F1B3FE000B04FD79C
+:1061D00020E7C31B3BBA00B059D77FE13FA6FAB214
+:1061E00000E2F9B4B9407F94FAB203E2B9507E6E8E
+:1061F0001FEE00B0D3D129910CB800B48AB180BA97
+:1062000002B1FDFE80B97AE6FAB200E0C09CFA1A4B
+:1062100022477AE37F6FFA1A22567F7FFA1A2246C4
+:10622000FA1A22577AE37F307D2D7C79F0EEEAEE80
+:1062300020F56DE3683EFEFE7BF520E7FAB20642EC
+:10624000FFB2305033943398FFB231E2774CFFB253
+:106250003048FFB230497B3E02B200920091C0BA92
+:106260000281FDFE775CFFB2313EFFB2303E20F589
+:106270006DE37E3EFF9260E261E268BA60087E10E4
+:1062800060E2610A6113F9FE68BA602A80BA612887
+:1062900060247BF56DE37E3EFF9260E261E268E0A0
+:1062A00060087E1060E2610A6113F9FE68E0602A0E
+:1062B00080E0612860247BF528E77E7007EE01B05E
+:1062C000398846E801B03F8843FF11EE01B04088AD
+:1062D0003FE801B080880BE801B0808839E817B04A
+:1062E0003F8802EF068C34E818B0538831FF7F31C5
+:1062F00029E22AE604912BE32AE429E17E30C0BAA0
+:10630000800203E9C1BA81021EF929E0608C01E82C
+:106310002084209104B2169600B2969691B2DA9635
+:1063200001B22B9600B2509669E200B2019669E67E
+:1063300000B00EB968E0FAB222E280E0FAB223E2DD
+:106340007DE3F8B362D12A2C2A2C292C2B2DD4E9F9
+:1063500028F528E701B0808803F801B0408829E9D2
+:1063600018B03F8826FF2CE37F31608C01E8208441
+:106370002BE2209104B2169600B2969691B2DA966C
+:1063800001B22B9600B2459669E200B010B980E0E8
+:106390005EAC3EA8FAB222E280E0EAAC85A8FAB28E
+:1063A00023E279CE7DE3FAB362D12BE001842C2D78
+:1063B000DCE928F536B801B06891C0BA0281FDFE6B
+:1063C000FAB2273EFAB222E068B0688800B05AE913
+:1063D000FAB223E0DCB0D38800B054E9FAB223303B
+:1063E000FAB2223D85E0FAB226E284E0458811E95E
+:1063F000FAB22743FAB2274581E07F2DFEE9FAB2CF
+:10640000274010B882E07F2DFEE9FCFEFAB2275546
+:106410002FEE508837E986F035F9018C33FF85E09F
+:10642000FFA08608018C2EFFFAB22743FAB227415B
+:1064300081E07F2DFEE9FAB2274083E07F2DFEE95F
+:1064400086E06DE287E102EEFAB2262C69E0FAB24C
+:1064500024E269E0FAB225E27EE17EE1FAB2274267
+:1064600080E07F2DFEE9FAB227527EE17EE1ECFE6C
+:10647000FAB2275181E07F2DFEE9FAB2275081E080
+:106480007F2DFEE9863E843EFAB2273EFAB2223ED6
+:10649000FAB2233E7BF5FFB2094D6C67FEEE93B076
+:1064A00063916C77FEEE6C67FEEE7AE06C77FEEE41
+:1064B0006C67FEEE7AE47D06C0BA7D0208EFFAB69C
+:1064C00080E074BC7F88EDF91090800AEAEEFA1A39
+:1064D000224626B0AA906C6702EE79CEFAEEFF82D1
+:1064E000FAE97BF5FA95C650C3520E90C7C60590DF
+:1064F000C7C2C34AC3490F94C426C3407BF5FA956B
+:10650000C4497BF5FAB482E107A503E97BE782E1A0
+:1065100007A5048DFF9203E981E0844A844B7BF553
+:10652000FFA0FAB480E2844A82E007A403E97BE793
+:1065300082E007A4048CE9007BF503E401EE7BE72D
+:10654000FA95C2E0C4497F7AFAEE7F6804EEC44A45
+:10655000C26BC44CF4EEC448C1E060E28DC5FEA23B
+:106560007E02FA9503F9C44CC44AEAEEC44B0140DA
+:1065700060607BF50150C44AC2E060E207A403E911
+:106580007BE7C2E060E260E007A4048C02F9C44942
+:10659000D7EEFAB481E0844A844B00C67BF503E170
+:1065A000CF721EEECF7313EECF7403EEC8E06B26EE
+:1065B00010EEC9E0FA1A2222FAB5CF7503EEC8E050
+:1065C000A02602EEC9E0A022C8E06B267BF5C9E058
+:1065D0006B22C8E0FA1A2226C9E0FA1A20227BF5BB
+:1065E0007EE17EE17BF503E1CF721EEECF7303EE19
+:1065F000C9E06B2204EECF7409EEC8E06B26C8E058
+:10660000FA1A2226C9E0FA1A20227BF5C9E0FA1A02
+:106610002222FAB5CF7503EEC8E0A02602EEC9E04B
+:10662000A022C8E06B267BF57EE17EE17BF5FFB220
+:106630005AEEFFB258EE13627BF580C401FA802C4B
+:106640007BF560E700E061E2E1BB00B0A3D261E06E
+:1066500000E260F5003E00B224EE62E7115100E076
+:10666000378803E9114101EE00E000B0E8D463E2AD
+:1066700000B0A9D263E000B018D20088F5E962F555
+:1066800062E7123E135200B00AD27FF101EB62F5CD
+:1066900000E000B09DD400B0A9D2F5EE00B0FAD170
+:1066A00000B0B2D21E4000B048D400B025D2017074
+:1066B00003EE00B0B5D202EE00B0C8D200B007D2EF
+:1066C00000B0EFD51352F1EE011004060810C00916
+:1066D0000C12000AFBC3C3B46CF89C2A65CC675645
+:1066E000163DA7CAB7C97FF469F6FEFE7BF57FF4B5
+:1066F00069BA68E2FDFE7BF560E7FFB230E00DE2CB
+:10670000FFB231E00CE200B0A5D07EE17EE160F5A1
+:106710000CE0FFB231E20DE0FFB230E27EE17EE15B
+:106720007BF5122C1370123E7BF561E203BA60E236
+:10673000623E60F019F960E480BA7FF115F97FC418
+:10674000610201E962E67E7903EE81BA60E2F1EE70
+:106750007E377E360F8903E960E481BA7FE160E02D
+:106760007E08018060E2E5EE62E07BF563E73FB022
+:1067700008B909B0C891389000B0FFD23FB43FB01B
+:106780002090B770E08203E2099000B01DD300882A
+:1067900007F9001A0A813FB008B9189000B0FFD27B
+:1067A00063F560E70C9114B900B0A1D0103E0E3E25
+:1067B0000F3E46911FC31ECE1E48117005EE079571
+:1067C0001427C797142360F51FCE1F4E60F561E3B1
+:1067D0007FE115E01FA660E27F317F307F09623ED6
+:1067E000624260E0610204E803951427C3970EEE4D
+:1067F000C0BA60E2C1BA61E260240BF960E08002D5
+:1068000003E961E0810205F9144AC49714237F3E2D
+:106810007BF5028102B1622DEBE901907BF562E725
+:1068200061E215E01FA660E2610205E80395142706
+:10683000C397142362F5603160306009089016B97F
+:1068400000B0FFD215E0018015281FA6152A62F5B9
+:1068500060E261E3FA1A22E062E26BE063E2FABD11
+:10686000E1E064E260E07F2FE12260E1612361E129
+:10687000FA1A2027FA1A22226B2202B04191FF1B3A
+:106880007EFE63E060206B2662E06020FA1A22261A
+:1068900061E0FA1A202A64E06020FA1A21266CE0EE
+:1068A00060207BF561E762E363E600B004D363E157
+:1068B000C0BA008804F900B010D37F3E61F5632CA4
+:1068C000622DF5E900B010D3019061F561E762E255
+:1068D00063E364E600B004D363E480E1632C64E422
+:1068E00080BA642C7E0204F900B010D37F3E61F5BB
+:1068F000622DF2E900B010D3019061F565E761E225
+:1069000060E364E615E11FA714C03FA066E26103DF
+:1069100003902FF87E317E30600B60E067E22CE25E
+:10692000089160E400B0DAD3008807E915E0E0A43C
+:10693000208C03F9408C04901CE96735673468B0FB
+:1069400068900EE2DCB0D3900FE27E3E67E064E434
+:1069500000B0E4D0C097142315E0018015281FA6CD
+:10696000152A64E108902CE400B0EED3008802E917
+:10697000069066E266E07F3314283FA4142A65F58A
+:1069800060E71EC41EC17E2002F900B057D260F538
+:10699000C0931423103E0E3E0F3E7BF540907BF5D6
+:1069A0007FE17F347F0180BA7E607F377BF57F6037
+:1069B0007E377EE07BF560E71340134212E161E32E
+:1069C000FF827E0202E9FA92132200B019D361E03D
+:1069D00060F560E761E20591132712E17E347D09DD
+:1069E000C0E063E27F37126063E261E0FF8212027F
+:1069F00002E9FA92132200B019D363E060F560E275
+:106A000061E31340134212E17F0307F875347F01FD
+:106A100061E07E7080C67E6080C260E0FF827E02A0
+:106A200002E9FA921322FEB07CEE0D8803E901A17F
+:106A30001EC37BF51E8803E9FFA11F277BF57FF0AE
+:106A400004E915B90290FFB25AEE0FEF12F002E915
+:106A500010C707EE018802E910C303EE0F8801EFAB
+:106A6000103E16B91090FFB24AEE028801E914C731
+:106A70007BF560E700B09FD21ECF60F560E761E272
+:106A80000591132712E17E347D09C0BA12607F3769
+:106A900061F2FF82120202E9FA92132200B019D3C6
+:106AA00061E060F563E712E164E37FE1C3B0E0B960
+:106AB000409000B0C6D43D91640301F87F3E63F579
+:106AC00065E763E2048802E91FC065F5058807E908
+:106AD0001EE001A061E200B0C1D461E065F50D885F
+:106AE00003E91EC001A065F5428803E900B056D451
+:106AF00065F5438803E900B0DAD465F5F8820388C8
+:106B000004FFC0B400B058D465F563E1018903E91E
+:106B100016B9109004EE63F105E915B9029000B0C2
+:106B200071D465F563E0028803E914E03FA065F5E0
+:106B3000038803E9144F14C065F563E0D782068823
+:106B400005FFC3B0F7B900B058D465F563E02588F8
+:106B5000019075F963E02688E09071F963E0278879
+:106B600003E903E1CEC465F5288803E903E1CEC05B
+:106B700065F563E0D082098814FF03E1108164E2C7
+:106B8000117108EE63E1C98364E37E3408B0F8BA9A
+:106B90007FE103EE7F347F09C0E164E000B05FD4A1
+:106BA00065F563E0E18266E203882BFF64E263E05F
+:106BB0001F8804E9089000B063D47FE164E0018895
+:106BC00002E908910AEE63E0218815F9228805E9B7
+:106BD000089000B063D4001A0B8108B041B97EE080
+:106BE00000B058D47FE166E0018803E93FB4B77094
+:106BF00002997EE065F5029000B063D4001A098125
+:106C0000ECEE63E0238806E9139008B041B900B0C8
+:106C100058D465F5248809E9029000B063D4148043
+:106C200008B041B900B058D465F563E01D820C8806
+:106C300005FF08B03AB900B058D465F57F3E65F558
+:106C400067E702B0F391089000B02EB900B0FFD210
+:106C500000B02EB903E108B869E0682AFDFE00B073
+:106C60002EE060E216B90491089000B0FBD260E01B
+:106C700015E11FA77E08FFA000B02EE260C07E379E
+:106C80007E087F3300B02E2600B02E9104B900B0EC
+:106C9000AED767F564E760E261E310E036B056888E
+:106CA00005F905951427C597142364F560E0D3BC56
+:106CB0007E377E3400B031D160E461E100B0DAD3D8
+:106CC000008804E906951427C697142364F52DE778
+:106CD00015C17E367E341F6000000E3E0F3E14E06C
+:106CE0003FA000B263F960E3C097142314E03FA013
+:106CF000028808E900B0A8D50C9515B0C09004B979
+:106D000000B249EE068820E960F102E9C09519EE6B
+:106D10000CEF1491C29416B900B06FD3008800B282
+:106D200040F9C295149000B235EE028900B239E9FB
+:106D300040910A9416B900B06FD3008800B231F9BF
+:106D40000A95409000B226EE038805E9AE950C94B2
+:106D500000B0D2D502EE078804E90295C09400B2D3
+:106D600012EE058811E960F102E9C09508EE03EF23
+:106D7000C295149005EE028900B213E90A9540907D
+:106D800000B097D300B20DEE088807E916E017E1CE
+:106D900000B0B0D318E200B204EE0F8804E900940A
+:106DA00005987FF57EEE048865E9C097142315E009
+:106DB0001FA6048804EF03951427C39771EE3FB410
+:106DC000B76055EE00B0A8D50890151C3F1A408159
+:106DD00004B9089000B0FBD215E01FA6048841E971
+:106DE0003FB5269100B0D2D0008838E901B03C9080
+:106DF00064E2209109B0E0B900B0DAD300882BF941
+:106E000068B068900EE2DCB0D3900FE201913FB021
+:106E100046B964E000B0E4D0642C01913FB04EB9B3
+:106E200064E000B0E4D0642C01913FB056B964E056
+:106E300000B0E4D0642C01913FB05EB964E000B0D2
+:106E4000E4D03FB04691209009B0E0B900B0EED355
+:106E5000008807E903EE144AC49702EE1449C2976A
+:106E6000142315E0018015281FA6152A1AEE144ACE
+:106E7000C49716EE098803E902950A9404EE0B887C
+:106E800005E90695BA9400B0D2D50BEE0C8806E958
+:106E9000BA95C09016B900B006D403EE1449C29753
+:106EA00014231E4000B048D400B050D42DF50190FA
+:106EB000F995F9E2C152F93EFA1A213E03E1CCE01C
+:106EC000FA1A20E2FF1B33E070A4208C03E9CAE029
+:106ED000E7A207EEFF1B33E070A4408CCAE001E993
+:106EE0003FA26BE2CBE0FA1A22E27BF579CEFEEE0E
+:106EF00063E7117000B0FED6C0B401B0FE9100B0DF
+:106F0000C0D0008803F944911FC317EE0CB4ADB094
+:106F1000FE9100B0C0D0008803F945911FC30DEE6B
+:106F2000BAB405B0FE9100B0C0D0008803F9479113
+:106F30001FC303EE1FCE1F4E146E00B0FED60C947E
+:106F400082F50390FFB209E2001A029163F506B0E0
+:106F5000FE9084F507B0009086F5793E0390FFB26D
+:106F600009E2FFB20BE2FFB2083EFFB20A3E039411
+:106F7000FFB20122FFB203220682FFB211E2FC82BD
+:106F8000FFB213E2FFB214E2001A0A917BF511502E
+:106F90007F60114000B0DFD600B02FD700B0D6D24E
+:106FA000000063E764E20D9000B01DD300881CF977
+:106FB000762C001B7F97C0BA60227F6E644E7F6F75
+:106FC0000DEE7F6D602E64E074BC600A001B7F8F45
+:106FD00003ED001B7F9702EE606F603E64E0F8B047
+:106FE0000FA06032602464E264E063F524E325E2EC
+:106FF00005BC26E362E22636263461E160E00EBC81
+:1070000060E17E312628622921E27DE361E160E0D2
+:1070100003BC26E32635263462E225E024E10CBCDD
+:1070200025E17E322628622B21E126E37DE1620BF9
+:10703000261266E165E0612B602A64E163E02429A1
+:10704000252860086111262962287BF527E728E3B7
+:1070500029E681E061E260F6BEB01E9108B0BB9007
+:1070600023E322E27F2547F922E022BC2AE20390B3
+:107070002BE22BE17E0929092CE3FFB2FFE062E25B
+:10708000FFB2FEE063E22BE003A02A28780A280181
+:1070900023E122E066E365E281E180E064E363F2FC
+:1070A00062E100B07ED72CE4800C811581E380E2A0
+:1070B00061E360E22B2DDDE929E1C7E062E2C6E091
+:1070C00063E22AE42A01280181E180E064E363F2BB
+:1070D00062E100B07ED729E4800C811581E380E273
+:1070E00061E360E261B0C89186B04790220A231341
+:1070F00022E02324B9E927F509031F00030000005B
+:10710000000000000000000000000000000000007F
+:10711000000000000000000000000000000040002F
+:10712000000000000000000000000000000000005F
+:10713000000000000000000000000000000000004F
+:10714000000000000000000000000000000000003F
+:10715000000000000000000000000000000000002F
+:10716000F5C41800251E0C0401011F00080021347D
+:10717000000056363436F5C418009D1000C0154086
+:10718000001400400001C0000000000000000000EA
+:1071900000000000000000000000000000000000EF
+:1071A00000000000000000000000000000000000DF
+:1071B00000000000000000000000000000000000CF
+:1071C00000000000000000000000000000000000BF
+:1071D00000000000000000000000000000000000AF
+:1071E000000000000000000000000000000000009F
+:1071F000000000000000000000000000000000008F
+:10720000000000000000000000000000000000007E
+:10721000000000000000000000000000000000006E
+:10722000000000000000000000000000000000005E
+:10723000000000000000000000000000000000004E
+:10724000000000000000000000000000000000003E
+:10725000000000000000000000000000000000002E
+:10726000000000000000000000000000000000001E
+:10727000000000000000000000000000000000000E
+:1072800000000000000000000000000000000000FE
+:1072900000000000000000000000000000000000EE
+:1072A00000000000000000000000000000000000DE
+:1072B00000000000000000000000000000000000CE
+:1072C00000000000000000000000000000000000BE
+:1072D00000000000000000000000000000000000AE
+:1072E000000000000000000000000000000000009E
+:1072F000000000000000000000000000000000008E
+:10730000000000000000000000000000000000007D
+:10731000000000000000000000000000000000006D
+:10732000000000000000000000000000000000005D
+:10733000000000000000000000000000000000004D
+:10734000000000000000000000000000000000003D
+:10735000000000000000000000000000000000002D
+:10736000000000000000000000000000000000001D
+:10737000000000000000000000000000000000000D
+:1073800000000000000000000000000000000000FD
+:1073900000000000000000000000000000000000ED
+:1073A00000000000000000000000000000000000DD
+:1073B00000000000000000000000000000000000CD
+:1073C00000000000000000000000000000000000BD
+:1073D00000000000000000000000000000000000AD
+:1073E000000000000000000000000000000000009D
+:1073F000000000000000000000000000000000008D
+:10740000000000000000000000000000000000007C
+:10741000000000000000000000000000000000006C
+:10742000000000000000000000000000000000005C
+:10743000000000000000000000000000000000004C
+:10744000000000000000000000000000000000003C
+:10745000000000000000000000000000000000002C
+:10746000000000000000000000000000000000001C
+:10747000000000000000000000000000000000000C
+:107480002000DFFF000000000000400000000400BA
+:1074900073353130304B0000000000000000000068
+:1074A00000000000000000000000000000000000DC
+:1074B00000000000000000000000000000000000CC
+:1074C00000000000000000000000000000000000BC
+:1074D00000000000000000000000000000000000AC
+:1074E000000000000000000000000000000000009C
+:1074F000000000000000000000000000000000008C
+:10750000000000000000000000000000000000007B
+:10751000000000000000000000000000000000006B
+:10752000000000000000000000000000000000005B
+:10753000000000000000000000000000000000004B
+:10754000000000000000000000000000000000003B
+:10755000000000000000000000000000000000002B
+:10756000000000000000000000000000000000001B
+:10757000000000000000000000000000000000000B
+:1075800000000000000000000000000000000000FB
+:1075900000000000000000000000000000000000EB
+:1075A00000000000000000000000000000000000DB
+:1075B00000000000000000000000000000000000CB
+:1075C00000000000000000000000000000000000BB
+:1075D00000000000000000000000000000000000AB
+:1075E000000000000000000000000000000000009B
+:1075F000000000000000000000000000000000008B
+:10760000000000000000000000000000000000007A
+:10761000000000000000000000000000000000006A
+:10762000000000000000000000000000000000005A
+:10763000000000000000000000000000000000004A
+:10764000000000000000000000000000000000003A
+:10765000000000000000000000000000000000002A
+:10766000000000000000000000000000000000001A
+:10767000000000000000000000000000000000000A
+:1076800000000000000000000000000000000000FA
+:1076900000000000000000000000000000000000EA
+:1076A00000000000000000000000000000000000DA
+:1076B00000000000000000000000000000000000CA
+:1076C00000000000000000000000000000000000BA
+:1076D00000000000000000000000000000000000AA
+:1076E000000000000000000000000000000000009A
+:1076F000000000000000000000000000000000008A
+:107700000000000000000000000000000000000079
+:107710000000000000000000000000000000000069
+:107720000000000000000000000000000000000059
+:107730000000000000000000000000000000000049
+:107740000000000000000000000000000000000039
+:107750000000000000000000000000000000000029
+:107760000000000000000000000000000000000019
+:107770000000000000000000000000000000000009
+:1077800000000000000000000000000000000000F9
+:1077900000000000000000000000000000000000E9
+:1077A00000000000000000000000000000000000D9
+:1077B00000000000000000000000000000000000C9
+:1077C00000000000000000000000000000000000B9
+:1077D00000000000000000000000000000000000A9
+:1077E0000000000000000000000000000000000099
+:1077F0000000000000000000000000000000000089
+:107800000000000000000000000000000000000078
+:107810000000000000000000000000000000000068
+:107820000000000000000000000000000000000058
+:107830000000000000000000000000000000000048
+:107840000000000000000000000000000000000038
+:107850000000000000000000000000000000000028
+:107860000000000000000000000000000000000018
+:107870000000000000000000000000000000000008
+:1078800000000000000000000000000000000000F8
+:1078900000000000000000000000000000000000E8
+:1078A00000000000000000000000000000000000D8
+:1078B00000000000000000000000000000000000C8
+:1078C00000000000000000000000000000000000B8
+:1078D00000000000000000000000000000000000A8
+:1078E0000000000000000000000000000000000098
+:1078F000FFFFFFFF05000000000000000000000087
+:1079000000000000000000000004000010790100E9
+:107910000000000000000000000000000000000067
+:107920000000000000000000000000000000000057
+:107930000000000000000000000000000000000047
+:107940000000000000000000000000000000000037
+:107950000000000000000000000000000000000027
+:107960000000000000000000000000000000000017
+:107970000000000000000000000000000000000007
+:1079800000000000000000000000000000000000F7
+:1079900000000000000000000000000000000000E7
+:1079A00000000000000000000000000000000000D7
+:1079B00000000000000000000000000000000000C7
+:1079C00000000000000000000000000000000000B7
+:1079D00000000000000000000000000000000000A7
+:1079E0000000000000000000000000000000000097
+:1079F0000000000000000000000000000000000087
+:107A00000000000000000000000000000000000076
+:107A10000000000000000000000000000000000066
+:107A20000000000000000000000000000000000056
+:107A30000000000000000000000000000000000046
+:107A40000000000000000000000000000000000036
+:107A50000000000000000000000000000000000026
+:107A60000000000000000000000000000000000016
+:107A70000000000000000000000000000000000006
+:107A800000000000000000000000000000000000F6
+:107A900000000000000000000000000000000000E6
+:107AA00000000000000000000000000000000000D6
+:107AB00000000000000000000000000000000000C6
+:107AC00000000000000000000000000000000000B6
+:107AD00000000000000000000000000000000000A6
+:107AE0000000000000000000000000000000000096
+:107AF0000000000000000000000000000000000086
+:107B00000000000000000000000000000000000075
+:107B10000000000000000000000000000000000065
+:107B20000000000000000000000000000000000055
+:107B30000000000000000000000000000000000045
+:107B40000000000000000000000000000000000035
+:107B50000000000000000000000000000000000025
+:107B60000000000000000000000000000000000015
+:107B70000000000000000000000000000000000005
+:107B800000000000000000000000000000000000F5
+:107B900000000000000000000000000000000000E5
+:107BA00000000000000000000000000000000000D5
+:107BB00000000000000000000000000000000000C5
+:107BC00000000000000000000000000000000000B5
+:107BD00000000000000000000000000000000000A5
+:107BE0000000000000000000000000000000000095
+:107BF0000000000000000000000000000000000085
+:107C00000000000000000000000000000000000074
+:107C10000000000000000000000000000000000064
+:107C20000000000000000000000000000000000054
+:107C30000000000000000000000000000000000044
+:107C40000000000000000000000000000000000034
+:107C50000000000000000000000000000000000024
+:107C60000000000000000000000000000000000014
+:107C70000000000000000000000000000000000004
+:107C800000000000000000000000000000000000F4
+:107C900000000000000000000000000000000000E4
+:107CA00000000000000000000000000000000000D4
+:107CB00000000000000000000000000000000000C4
+:107CC00000000000000000000000000000000000B4
+:107CD00000000000000000000000000000000000A4
+:107CE0000000000000000000000000000000000094
+:107CF0000000000000000000000000000000000084
+:107D00000000000000000000000000000000000073
+:107D10004CEC6B11060000000000000000000000A9
+:107D2000000000000000000050000000307D010055
+:107D3000EA03046F7BF01DBE2D8ECD7E209759D6B1
+:107D4000CAEA587CFE8BD265FED6DC0590ADD0E940
+:107D50008BA278D748071A8C415B31005A3F4044C8
+:107D6000593EC6632691FC1FCCD62FA084F3A76B87
+:107D70007F30F60E65450BB74506B91EBB5C9FAF5D
+:107D8000DA56FE22030000000000000000000000A0
+:107D9000000000000000000010000000A07D0100B5
+:107DA00006000000D0600100F0780100107D0100A5
+:107DB000BC40C7CD0900000000000000000000002A
+:107DC000000000000000000010000000D07D010055
+:107DD000493243000500FF000C0D200000000000A8
+:107DE000BC40C7CD0A0000000000000000000000F9
+:107DF000000000000000000010000000007E0100F4
+:107E0000493243000500FF000C0D20000000000077
+:107E1000FFFFFFFF0800000000000000000000005E
+:107E20000000000000000000000C0000307E010097
+:107E30000000000000000000000000000000000042
+:107E40000000000000000000000000000000000032
+:107E50000000000000000000000000000000000022
+:107E60000000000000000000000000000000000012
+:107E70000000000000000000000000000000000002
+:107E800000000000000000000000000000000000F2
+:107E900000000000000000000000000000000000E2
+:107EA00000000000000000000000000000000000D2
+:107EB00000000000000000000000000000000000C2
+:107EC00000000000000000000000000000000000B2
+:107ED00000000000000000000000000000000000A2
+:107EE0000000000000000000000000000000000092
+:107EF0000000000000000000000000000000000082
+:107F00000000000000000000000000000000000071
+:107F10000000000000000000000000000000000061
+:107F20000000000000000000000000000000000051
+:107F30000000000000000000000000000000000041
+:107F40000000000000000000000000000000000031
+:107F50000000000000000000000000000000000021
+:107F60000000000000000000000000000000000011
+:107F70000000000000000000000000000000000001
+:107F800000000000000000000000000000000000F1
+:107F900000000000000000000000000000000000E1
+:107FA00000000000000000000000000000000000D1
+:107FB00000000000000000000000000000000000C1
+:107FC00000000000000000000000000000000000B1
+:107FD00000000000000000000000000000000000A1
+:107FE0000000000000000000000000000000000091
+:107FF0000000000000000000000000000000000081
+:108000000000000000000000000000000000000070
+:108010000000000000000000000000000000000060
+:108020000000000000000000000000000000000050
+:108030000000000000000000000000000000000040
+:108040000000000000000000000000000000000030
+:108050000000000000000000000000000000000020
+:108060000000000000000000000000000000000010
+:108070000000000000000000000000000000000000
+:1080800000000000000000000000000000000000F0
+:1080900000000000000000000000000000000000E0
+:1080A00000000000000000000000000000000000D0
+:1080B00000000000000000000000000000000000C0
+:1080C00000000000000000000000000000000000B0
+:1080D00000000000000000000000000000000000A0
+:1080E0000000000000000000000000000000000090
+:1080F0000000000000000000000000000000000080
+:10810000000000000000000000000000000000006F
+:10811000000000000000000000000000000000005F
+:10812000000000000000000000000000000000004F
+:10813000000000000000000000000000000000003F
+:10814000000000000000000000000000000000002F
+:10815000000000000000000000000000000000001F
+:10816000000000000000000000000000000000000F
+:1081700000000000000000000000000000000000FF
+:1081800000000000000000000000000000000000EF
+:1081900000000000000000000000000000000000DF
+:1081A00000000000000000000000000000000000CF
+:1081B00000000000000000000000000000000000BF
+:1081C00000000000000000000000000000000000AF
+:1081D000000000000000000000000000000000009F
+:1081E000000000000000000000000000000000008F
+:1081F000000000000000000000000000000000007F
+:10820000000000000000000000000000000000006E
+:10821000000000000000000000000000000000005E
+:10822000000000000000000000000000000000004E
+:10823000000000000000000000000000000000003E
+:10824000000000000000000000000000000000002E
+:10825000000000000000000000000000000000001E
+:10826000000000000000000000000000000000000E
+:1082700000000000000000000000000000000000FE
+:1082800000000000000000000000000000000000EE
+:1082900000000000000000000000000000000000DE
+:1082A00000000000000000000000000000000000CE
+:1082B00000000000000000000000000000000000BE
+:1082C00000000000000000000000000000000000AE
+:1082D000000000000000000000000000000000009E
+:1082E000000000000000000000000000000000008E
+:1082F000000000000000000000000000000000007E
+:10830000000000000000000000000000000000006D
+:10831000000000000000000000000000000000005D
+:10832000000000000000000000000000000000004D
+:10833000000000000000000000000000000000003D
+:10834000000000000000000000000000000000002D
+:10835000000000000000000000000000000000001D
+:10836000000000000000000000000000000000000D
+:1083700000000000000000000000000000000000FD
+:1083800000000000000000000000000000000000ED
+:1083900000000000000000000000000000000000DD
+:1083A00000000000000000000000000000000000CD
+:1083B00000000000000000000000000000000000BD
+:1083C00000000000000000000000000000000000AD
+:1083D000000000000000000000000000000000009D
+:1083E000000000000000000000000000000000008D
+:1083F000000000000000000000000000000000007D
+:10840000000000000000000000000000000000006C
+:10841000000000000000000000000000000000005C
+:10842000000000000000000000000000000000004C
+:10843000000000000000000000000000000000003C
+:10844000000000000000000000000000000000002C
+:10845000000000000000000000000000000000001C
+:10846000000000000000000000000000000000000C
+:1084700000000000000000000000000000000000FC
+:1084800000000000000000000000000000000000EC
+:1084900000000000000000000000000000000000DC
+:1084A00000000000000000000000000000000000CC
+:1084B00000000000000000000000000000000000BC
+:1084C00000000000000000000000000000000000AC
+:1084D000000000000000000000000000000000009C
+:1084E000000000000000000000000000000000008C
+:1084F000000000000000000000000000000000007C
+:10850000000000000000000000000000000000006B
+:10851000000000000000000000000000000000005B
+:10852000000000000000000000000000000000004B
+:10853000000000000000000000000000000000003B
+:10854000000000000000000000000000000000002B
+:10855000000000000000000000000000000000001B
+:10856000000000000000000000000000000000000B
+:1085700000000000000000000000000000000000FB
+:1085800000000000000000000000000000000000EB
+:1085900000000000000000000000000000000000DB
+:1085A00000000000000000000000000000000000CB
+:1085B00000000000000000000000000000000000BB
+:1085C00000000000000000000000000000000000AB
+:1085D000000000000000000000000000000000009B
+:1085E000000000000000000000000000000000008B
+:1085F000000000000000000000000000000000007B
+:10860000000000000000000000000000000000006A
+:10861000000000000000000000000000000000005A
+:10862000000000000000000000000000000000004A
+:10863000000000000000000000000000000000003A
+:10864000000000000000000000000000000000002A
+:10865000000000000000000000000000000000001A
+:10866000000000000000000000000000000000000A
+:1086700000000000000000000000000000000000FA
+:1086800000000000000000000000000000000000EA
+:1086900000000000000000000000000000000000DA
+:1086A00000000000000000000000000000000000CA
+:1086B00000000000000000000000000000000000BA
+:1086C00000000000000000000000000000000000AA
+:1086D000000000000000000000000000000000009A
+:1086E000000000000000000000000000000000008A
+:1086F000000000000000000000000000000000007A
+:108700000000000000000000000000000000000069
+:108710000000000000000000000000000000000059
+:108720000000000000000000000000000000000049
+:108730000000000000000000000000000000000039
+:108740000000000000000000000000000000000029
+:108750000000000000000000000000000000000019
+:108760000000000000000000000000000000000009
+:1087700000000000000000000000000000000000F9
+:1087800000000000000000000000000000000000E9
+:1087900000000000000000000000000000000000D9
+:1087A00000000000000000000000000000000000C9
+:1087B00000000000000000000000000000000000B9
+:1087C00000000000000000000000000000000000A9
+:1087D0000000000000000000000000000000000099
+:1087E0000000000000000000000000000000000089
+:1087F0000000000000000000000000000000000079
+:108800000000000000000000000000000000000068
+:108810000000000000000000000000000000000058
+:108820000000000000000000000000000000000048
+:108830000000000000000000000000000000000038
+:108840000000000000000000000000000000000028
+:108850000000000000000000000000000000000018
+:108860000000000000000000000000000000000008
+:1088700000000000000000000000000000000000F8
+:1088800000000000000000000000000000000000E8
+:1088900000000000000000000000000000000000D8
+:1088A00000000000000000000000000000000000C8
+:1088B00000000000000000000000000000000000B8
+:1088C00000000000000000000000000000000000A8
+:1088D0000000000000000000000000000000000098
+:1088E0000000000000000000000000000000000088
+:1088F0000000000000000000000000000000000078
+:108900000000000000000000000000000000000067
+:108910000000000000000000000000000000000057
+:108920000000000000000000000000000000000047
+:108930000000000000000000000000000000000037
+:108940000000000000000000000000000000000027
+:108950000000000000000000000000000000000017
+:108960000000000000000000000000000000000007
+:1089700000000000000000000000000000000000F7
+:1089800000000000000000000000000000000000E7
+:1089900000000000000000000000000000000000D7
+:1089A00000000000000000000000000000000000C7
+:1089B00000000000000000000000000000000000B7
+:1089C00000000000000000000000000000000000A7
+:1089D0000000000000000000000000000000000097
+:1089E0000000000000000000000000000000000087
+:1089F0000000000000000000000000000000000077
+:108A00000000000000000000000000000000000066
+:108A10000000000000000000000000000000000056
+:108A2000000000000000000000000000FFFFFFFF4A
+:108A3000774B9B410C00000000000000000000008C
+:108A4000000000000000000089030000508A0100BF
+:108A500000020010000100010001000100500002AE
+:108A600000010001000100010001000100010001FE
+:108A70000001000E00150005000A000400060003B6
+:108A800000010002000100010010001000010008B8
+:108A900000010002000800010002000100010001C5
+:108AA00000010001000100010001000100010001BE
+:108AB00000010001000100010001000100010001AE
+:108AC000000100010001000100010001000100019E
+:108AD0000010001000010040000100010001000131
+:108AE000000100010001000100010001000100017E
+:108AF0000000000000000000000000000000000076
+:108B00000000000000000000000000000000000065
+:108B10000000000000000000000000000000000055
+:108B20000000000000000000000000000000000045
+:108B30000000000000000000000000000000000035
+:108B40000000000000000000000000000000000025
+:108B50000000000000000000000000000000000015
+:108B60000000000000000000000000000000000005
+:108B700000000000000000000000000000000000F5
+:108B800000000000000000000000000000000000E5
+:108B900000000000000000000000000000000000D5
+:108BA00000000000000000000000000000000000C5
+:108BB00000000000000000000000000000000000B5
+:108BC00000000000000000000000000000000000A5
+:108BD0000000000000000000000000000000000095
+:108BE0000000000000000000000000000000000085
+:108BF0000000000000000000000000000000000075
+:108C00000000000000000000000000010001000161
+:108C1000000100010001000100010001000100014C
+:108C2000000100010001000100010001000100013C
+:108C30000000000000000000000000000000000034
+:108C40000000000000000000000000000000000123
+:108C50000000000000000000000000000000000014
+:108C60000000000000000000000000000000000004
+:108C700000000000000000000000000000000000F4
+:108C800000000000000000000000000000000000E4
+:108C900000000000000000000000000000000000D4
+:108CA00000000000000000000000000000000000C4
+:108CB000000000000000000000FFFFFFFF007F0138
+:108CC000321E37047F07A63F9240000000001C10B0
+:108CD0001E056015D7032D30003000F0D2F0D2E32E
+:108CE000BE647802010F1496080A010128404080F2
+:108CF000800000C8645B5B6045330080191401018B
+:108D00000000070A00FFFFFFFFFFFFFFFFFFFFFF5D
+:108D1000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF63
+:108D2000FFFFFFFFFFFF0056363436F5C418009DE5
+:108D30001000C01540001400400001C00001E00018
+:108D4000000000000000000073353130304B00009F
+:108D5000000009031F0003000000000000000000E5
+:108D60000000000000000000000000000000000003
+:108D700000000000000000004000000000000000B3
+:108D800000000000000000000000000000000000E3
+:108D900000000000000000000000000000000000D3
+:108DA00000000000000000000000000000000000C3
+:108DB00000000000000000000005000000000000AE
+:108DC0000000000003440011060112251E0C0401DE
+:108DD000011F000800213400000000000000000016
+:108DE00009253E1D0C0000000000000000000000EE
+:108DF000000000000000000028030000008E0100B9
+:108E00000101000100010001000100010001000159
+:108E10000001000200010004000400010001000143
+:108E2000000100010001000100010001000100013A
+:108E3000000100010001000100010001000100012A
+:108E40000001000100010001000100010001000516
+:108E50000005000200040042001C002C000A000370
+:108E600000010008000A000100070008000A0002D3
+:108E700000010001000100010001000100010001EA
+:108E800000010001000100010001000100010001DA
+:108E900000010001000100010001000100010001CA
+:108EA00000010001000100000000000000000000BF
+:108EB00000000000000000000000000000000000B2
+:108EC00000000000000000000000000000000000A2
+:108ED0000000000000000000000000000000000092
+:108EE0000000000000000000000000000000000082
+:108EF0000000000000000000000000000000000072
+:108F00000000000000000000000000000000000061
+:108F10000000000000000000000000000000000051
+:108F20000000000000000000000000000000000041
+:108F30000000000000000000000000000000000031
+:108F40000000000000000000000000000000000021
+:108F50000000000000000000000000000000000011
+:108F60000000000000000000000000000000000001
+:108F700000000000000000000000000000000000F1
+:108F800000000000000000000000000000000000E1
+:108F900000000000000000000000000000000000D1
+:108FA00000000000000000000000000000000000C1
+:108FB00000000000000000000000000000000000B1
+:108FC00000000000000000000000000000000000A1
+:108FD000000000010001000100010001000100018A
+:108FE0000000000000000000000000000000000081
+:108FF0000000000000000000000000000000000170
+:109000000000000000000000000000000000000060
+:10901000000000000000C20180041B00601400007A
+:10902000BC02FFFFBF64307500CC800040FF7900B8
+:109030002C010300010507070570170E0E0104053A
+:109040003F003800000000000000053F003800002D
+:109050000200000000053F0038000004000000008E
+:10906000053F003800000600000000053F00380002
+:10907000000800000000053F003800000A00000062
+:109080000009090909090909090909090909090959
+:10909000090909090909090909090909090000005B
+:1090A00000000000000000000000000000000000C0
+:1090B00000000000000000000000000000000000B0
+:1090C0000000000000000000000101000006010196
+:1090D0000001052200060000000202000002024911
+:1090E0000605003E3800060206611E022008231411
+:1090F0000400000000000000001D1E1FFF35343377
+:10910000FF00000122001C1044502D0201BA001C77
+:1091100005C0C840F8FB060F42067F2084C8E00364
+:1091200039380D000154000000000000000000006C
+:10913000DA2D567B0C00000000000000000000004B
+:1091400000000000000000004502000050910100F6
+:109150000301001C0010000A0001000100010001D1
+:1091600000010000000000000000000000000000FE
+:1091700000000000000000000000000000000000EF
+:1091800000000000000000000000000000000000DF
+:1091900000000000000000000000000000000000CF
+:1091A00000000000000000000000000000000000BF
+:1091B00000000000000000000000000000000000AF
+:1091C000000000000000000000000000000000009F
+:1091D000000000000000000000000000000000008F
+:1091E000000000000000000000000000000000007F
+:1091F000000000000000000000000000000000006F
+:10920000000000000000000000000000000000005E
+:10921000000000000000000000000000000000004E
+:10922000000000000000000000000000000000003E
+:10923000000000000000000000000000000000002E
+:10924000000000000000000000000000000000001E
+:10925000000000000000000000000000000000000E
+:1092600000000000000000000000000000000000FE
+:1092700000000000000000000000000000000000EE
+:1092800000000000000000000000000000000000DE
+:1092900000000000000000000000000000000000CE
+:1092A00000000000000000000000000000000000BE
+:1092B00000000000000000000000000000000000AE
+:1092C000000000000000000000000000000000009E
+:1092D000000000000000000000000000000000008E
+:1092E000000000000000000000000000000000007E
+:1092F000000000000000000000000000000000006E
+:10930000000000000000000000000000000000005D
+:10931000000000000000000000000000000000004D
+:109320000000000100010001000100010001000136
+:10933000000000000000000000000000000000002D
+:10934000000000000000000000000000000000011C
+:10935000000C1C15181A1B111917131016140A0CDF
+:109360000D120E080F06090B030102070504252440
+:10937000233231302F2E2C2D2B2A2928272600008E
+:10938000FFFFFFFF2021FFFF001C108124050400C8
+:109390000001550000000000000000000000000077
+:1093A0006DBD60290C0000000000000000000000FE
+:1093B000000000000000000066020000C0930100F1
+:1093C0000401000100010001000100010001000191
+:1093D0000001000100010001000100010001000185
+:1093E0000001000100010001000100010001000175
+:1093F0000001000100010001000100010001000165
+:109400000001000100010001000100010001000154
+:109410000001000100010001000100010001000144
+:109420000001000100010001000100010001000134
+:109430000001000100010001000100010001000124
+:109440000001000100010001000100010001000114
+:109450000001000100010001000100010001000104
+:1094600000010001000100010001000100010001F4
+:1094700000010001000100010001000000000000E7
+:1094800000000000000000000000000000000000DC
+:1094900000000000000000000000000000000000CC
+:1094A00000000000000000000000000000000000BC
+:1094B00000000000000000000000000000000000AC
+:1094C000000000000000000000000000000000009C
+:1094D000000000000000000000000000000000008C
+:1094E000000000000000000000000000000000007C
+:1094F000000000000000000000000000000000006C
+:10950000000000000000000000000000000000005B
+:10951000000000000000000000000000000000004B
+:10952000000000000000000000000000000000003B
+:10953000000000000000000000000000000000002B
+:10954000000000000000000000000000000000001B
+:10955000000000000000000000000000000000000B
+:1095600000000000000000000000000000000000FB
+:1095700000000000000000000000000000000000EB
+:1095800000000000000000000000000000000000DB
+:1095900000000001000100010001000100010001C4
+:1095A00000000000000000000000000000000000BB
+:1095B00000000000000000000000000000000001AA
+:1095C000000000000000000000000000000000009B
+:1095D00000000000000000000001242040033901C9
+:1095E000401F40033901FC219939CC1C0219100A93
+:1095F000120C120A06141F100310030996A0A02DC6
+:109600000C041040403F0000505050505050070391
+:109610004E0606490606000106183F00551A570077
+:109620001800615100000000000000000000000070
+:10963000C0F111E30C000000000000000000000079
+:109640000000000000000000F10200005096010040
+:1096500060010001000100010001000100010001A2
+:1096600000010001000100010001000100010001F2
+:1096700000010001000100010001000100010001E2
+:1096800000010001000100010001000100010001D2
+:1096900000010001000100010001000100010001C2
+:1096A00000010001000100010001000100010001B2
+:1096B00000010001000100010001000100010001A2
+:1096C0000001000100010001000100010001000192
+:1096D0000001000100010001000100010001000182
+:1096E0000001000100010001000100010001000172
+:1096F0000001000100010001000100010001000162
+:109700000001000100010001000100010001000151
+:109710000001000100010001000100010001000141
+:109720000001000100010001000100010001000131
+:109730000001000100010001000100010001000121
+:109740000001000100010001000100010001000111
+:109750000001000100010001000100010001000101
+:1097600000010001000100010001000100010001F1
+:1097700000010001000100010001000100010001E1
+:1097800000010001000100010001000100010001D1
+:1097900000010001000100010001000100010001C1
+:1097A00000010001000100010001000100010001B1
+:1097B00000010001000100010001000100010001A1
+:1097C0000001000100010001000100010001000191
+:1097D0000001000100010001000100010001000181
+:1097E0000001000100010001000100010001000171
+:1097F0000001000100010001000100010001000161
+:109800000001000100010001000100010001000150
+:109810000001000100010001000100010001000140
+:109820000000000100010001000100010001000131
+:109830000000000000000000000000000000000028
+:109840000000000000000000000000000000000117
+:109850000000000000000000000000000000000008
+:1098600000000000000000000000000000000000F8
+:1098700000000000000000000000000000000000E8
+:1098800000000000000000000000000000000000D8
+:1098900000000000000000000000000000000000C8
+:1098A00000000000000000000000000000000000B8
+:1098B00000000000000000000000000000000000A8
+:1098C0000000000000000000000000000000000098
+:1098D0000000000000000000000000000000000088
+:1098E0000000000000000000000000000000000078
+:1098F0000000000000000000000000000000000068
+:109900000000000000000000000000000000000057
+:109910000000000000000000000000000000000047
+:109920000000000000000000000000000000000037
+:1099300000000000000000000000000000016000C6
+:109940000000000000000000000000000000000017
+:109950000FD5BB5D0C0000000000000000000000FF
+:1099600000000000000000008E020000709901005D
+:10997000800100010001000100010001000100015F
+:1099800000010001000100010001000100010001CF
+:1099900000010001000100010001000100010001BF
+:1099A00000010001000100010001000100010001AF
+:1099B000000100010001000100010001000100019F
+:1099C000000100010001000100010001000100018F
+:1099D000000100010001000100010001000100017F
+:1099E000000100010001000100010001000100016F
+:1099F000000100010001000100010001000100015F
+:109A0000000100010001000100010001000100014E
+:109A1000000100010001000100010001000100013E
+:109A2000000100010001000100010001000100012E
+:109A3000000100010001000100010001000100011E
+:109A4000000100010001000100010001000100010E
+:109A500000010001000100010001000100010001FE
+:109A600000010001000100010001000100010001EE
+:109A700000010001000100010001000100000000E0
+:109A800000000000000000000000000000000000D6
+:109A900000000000000000000000000000000000C6
+:109AA00000000000000000000000000000000000B6
+:109AB00000000000000000000000000000000000A6
+:109AC0000000000000000000000000000000000096
+:109AD0000000000000000000000000000000000086
+:109AE0000000000000000000000000000000000076
+:109AF0000000000000000000000000000000000066
+:109B00000000000000000000000000000000000055
+:109B10000000000000000000000000000000000045
+:109B20000000000000000000000000000000000035
+:109B30000000000000000000000000000000000025
+:109B4000000000010001000100010001000100010E
+:109B50000000000000000000000000000000000005
+:109B600000000000000000000000000000000000F5
+:109B700000000000000000000000000000000000E5
+:109B800000000000000000000000000000000000D5
+:109B900000000000000000000000000000000000C5
+:109BA00000000000000000000000000000000000B5
+:109BB00000000000000000000000000000000000A5
+:109BC0000000000000000000000000000000000095
+:109BD0000000000000000000000000000000000085
+:109BE0000000000000000000000000000000000075
+:109BF00000000000F5C41882000000008100000091
+:109C0000696CDB8F0B00000000000000000000000A
+:109C1000000000000000000018000000209C01006F
+:109C2000308A0100E08D010030910100A093010015
+:109C30003096010050990100000000000000000073
+:00000001FF
diff --git a/include/linux/i2c/synaptics_rmi.h b/include/linux/i2c/synaptics_rmi.h
new file mode 100644 (file)
index 0000000..628a52e
--- /dev/null
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) 2011, 2012 Synaptics Incorporated
+ * Copyright (c) 2011 Unixphere
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ *
+ */
+#ifndef _SYNAPTICS_RMI4_GENERIC_H_
+#define _SYNAPTICS_RMI4_GENERIC_H_
+
+#ifndef CONFIG_KEYBOARD_CYPRESS_TOUCH
+#define NO_0D_WHILE_2D
+#endif
+
+struct synaptics_rmi_f1a_button_map {
+       unsigned char nbuttons;
+       unsigned char *map;
+};
+
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+struct synaptics_rmi_callbacks {
+       void (*inform_charger)(struct synaptics_rmi_callbacks *, int);
+};
+#endif
+
+/**
+ * struct synaptics_rmi4_platform_data - rmi4 platform data
+ * @x_flip: x flip flag
+ * @y_flip: y flip flag
+ * @regulator_en: regulator enable flag
+ * @gpio: attention interrupt gpio
+ * @irq_type: irq type
+ * @gpio_config: pointer to gpio configuration function
+ * @f1a_button_map: pointer to 0d button map
+ * @charger_noti_type: define method to notify the connection of charger.
+ */
+struct synaptics_rmi4_platform_data {
+       bool x_flip;
+       bool y_flip;
+       unsigned int sensor_max_x;
+       unsigned int sensor_max_y;
+       unsigned int num_of_rx;
+       unsigned int num_of_tx;
+       unsigned char max_touch_width;
+       unsigned char panel_revision;   /* to identify panel info */
+       bool regulator_en;
+       unsigned gpio;
+       int irq_type;
+       int (*gpio_config)(unsigned interrupt_gpio, bool configure);
+       int (*power)(void *data, bool on);
+#ifdef NO_0D_WHILE_2D
+       int (*led_power_on) (bool);
+#endif
+       unsigned char (*get_ddi_type)(void);    /* to indentify ddi type */
+       void (*enable_sync)(bool on);
+       const char *firmware_name;
+       const char *project_name;
+       const char *model_name;
+#ifdef SYNAPTICS_RMI_INFORM_CHARGER
+       void (*register_cb)(struct synaptics_rmi_callbacks *);
+#endif
+       bool charger_noti_type;
+       struct synaptics_rmi_f1a_button_map *f1a_button_map;
+
+       const char *regulator_dvdd;
+       const char *regulator_avdd;
+       struct regulator *regul_dvdd;
+};
+
+extern unsigned int lcdtype;
+
+#endif