Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-15566

System tablespace does not easily key rotate to unencrypted

Details

    Description

      mtr test case:

       
      --source include/have_innodb.inc
      # Test uses restart
      --source include/not_embedded.inc
      --source filekeys_plugin.inc
       
      --disable_warnings
      set global innodb_file_per_table=OFF;
      set global innodb_file_format='Barracuda';
      --enable_warnings
       
      call mtr.add_suppression("mysqld: file-key-management-filename is not set");
      call mtr.add_suppression("Plugin 'file_key_management' init function returned error.");
      call mtr.add_suppression("Plugin 'file_key_management' registration as a ENCRYPTION failed.");
       
      create table t1(a int not null primary key, b char(200)) engine=innodb;
      insert into t1 values (1, 'secretdata');
       
      --echo
      --echo # Restart server with encryption
      -- let $restart_parameters=--plugin-load-add=$FILE_KEY_MANAGEMENT_SO --loose-file-key-management --loose-file-key-management-filename=$MYSQL_TEST_DIR/std_data/keys.txt --file-key-management-encryption-algorithm=aes_cbc --innodb-encrypt-tables=ON --innodb-encryption-threads=4 --innodb-tablespaces-encryption --innodb-encryption-rotate-key-age=15
      -- source include/restart_mysqld.inc
       
      --echo # Wait until encryption threads have encrypted all tablespaces
       
      --let $tables_count= `select count(*) from information_schema.tables where engine = 'InnoDB'`
      --let $wait_timeout= 600
      --let $wait_condition=SELECT COUNT(*) >= $tables_count FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND ROTATING_OR_FLUSHING = 0;
      --source include/wait_condition.inc
       
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
       
      --echo # Success!
       
      SELECT * from t1;
       
      --echo # Now turn off encryption and wait for threads to decrypt all tablespaces
      SET GLOBAL innodb_encrypt_tables = off;
       
      --let $wait_condition=SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND ROTATING_OR_FLUSHING = 0;
      --source include/wait_condition.inc
       
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
       
      --echo # Success!
       
      --echo
      --echo # Restart server with no encryption setup, there should be no crashes
      --let $restart_parameters=--skip-file-key-management --innodb-encrypt-tables=OFF --innodb-encryption-threads=0 --innodb-tablespaces-encryption
      -- source include/restart_mysqld.inc
       
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
       
      SELECT * from t1;
      DROP TABLE t1;
      

      Causes following crash:

      encryption.innodb-remove-encryption 'innodb_plugin' [ fail ]
              Test ended at 2018-04-04 10:51:38
       
      CURRENT_TEST: encryption.innodb-remove-encryption
      mysqltest: At line 53: query 'SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0' failed: 2013: Lost connection to MySQL server during query
       
      The result from queries just before the failure was:
      < snip >
      mysql/innodb_table_stats
      mysql/innodb_index_stats
      ./ibdata1
      # Success!
      SELECT * from t1;
      a	b
      1	secretdata
      # Now turn off encryption and wait for threads to decrypt all tablespaces
      SET GLOBAL innodb_encrypt_tables = off;
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
      NAME
      mysql/innodb_table_stats
      mysql/innodb_index_stats
      ./ibdata1
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
      NAME
      # Success!
       
      # Restart server with no encryption setup, there should be no crashes
      SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
       
      More results from queries before failure can be found in /home/jan/mysql/10.1-tmp/mysql-test/var/log/innodb-remove-encryption.log
       
       
      Server [mysqld.1 - pid: 24973, winpid: 24973, exit: 256] failed during test run
      Server log from this test:
      ----------SERVER LOG START-----------
      2018-04-04 10:51:17 140011536948352 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24666 ...
      2018-04-04 10:51:17 140011536948352 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
      2018-04-04 10:51:17 140011536948352 [ERROR] mysqld: file-key-management-filename is not set
      2018-04-04 10:51:17 140011536948352 [ERROR] Plugin 'file_key_management' init function returned error.
      2018-04-04 10:51:17 140011536948352 [ERROR] Plugin 'file_key_management' registration as a ENCRYPTION failed.
      2018-04-04 10:51:17 140011536948352 [Note] Plugin 'partition' is disabled.
      2018-04-04 10:51:17 140011536948352 [Note] Plugin 'SEQUENCE' is disabled.
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using mutexes to ref count buffer pool pages
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: The InnoDB memory heap is disabled
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Compressed tables use zlib 1.2.8
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using Linux native AIO
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using SSE crc32 instructions
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Initializing buffer pool, size = 8.0M
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Completed initialization of buffer pool
      2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Highest supported file format is Barracuda.
      2018-04-04 10:51:18 140011536948352 [Note] InnoDB: 128 rollback segment(s) are active.
      2018-04-04 10:51:18 140011536948352 [Note] InnoDB: Waiting for purge to start
      2018-04-04 10:51:18 140011536948352 [Note] InnoDB: 5.6.37 started; log sequence number 1629444
      2018-04-04 10:51:18 140011143952128 [Note] InnoDB: Dumping buffer pool(s) not yet started
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_RSEG' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'FEEDBACK' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
      2018-04-04 10:51:18 140011536948352 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
      2018-04-04 10:51:18 140011536948352 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
      2018-04-04 10:51:18 140011536948352 [Note] Server socket created on IP: '127.0.0.1'.
      2018-04-04 10:51:18 140011536948352 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
      Version: '10.1.32-MariaDB-debug'  socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock'  port: 16000  Source distribution
      2018-04-04 10:51:18 140011536009984 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Normal shutdown
      2018-04-04 10:51:18 140011536009984 [Note] Event Scheduler: Purging the queue. 0 events
      2018-04-04 10:51:18 140011206850304 [Note] InnoDB: FTS optimize thread exiting.
      2018-04-04 10:51:18 140011536009984 [Note] InnoDB: Starting shutdown...
      2018-04-04 10:51:20 140011536009984 [Note] InnoDB: Shutdown completed; log sequence number 1632558
      2018-04-04 10:51:20 140011536009984 [Note] Debug sync points hit:                   1008
      2018-04-04 10:51:20 140011536009984 [Note] Debug sync points executed:              0
      2018-04-04 10:51:20 140011536009984 [Note] Debug sync points max active per thread: 0
      2018-04-04 10:51:20 140011536009984 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Shutdown complete
       
      2018-04-04 10:51:21 140671079197824 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24760 ...
      2018-04-04 10:51:21 140671079197824 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
      2018-04-04 10:51:21 140671079197824 [Note] Plugin 'partition' is disabled.
      2018-04-04 10:51:21 140671079197824 [Note] Plugin 'SEQUENCE' is disabled.
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using mutexes to ref count buffer pool pages
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: The InnoDB memory heap is disabled
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Compressed tables use zlib 1.2.8
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using Linux native AIO
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using SSE crc32 instructions
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Initializing buffer pool, size = 8.0M
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Completed initialization of buffer pool
      2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Highest supported file format is Barracuda.
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: 128 rollback segment(s) are active.
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Waiting for purge to start
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: 5.6.37 started; log sequence number 1632558
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #1 encryption thread id 140670677280512 total threads 4.
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #2 encryption thread id 140670660507392 total threads 4.
      2018-04-04 10:51:22 140670685673216 [Note] InnoDB: Dumping buffer pool(s) not yet started
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #3 encryption thread id 140670652114688 total threads 4.
      2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #4 encryption thread id 140670643721984 total threads 4.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_RSEG' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'FEEDBACK' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
      2018-04-04 10:51:22 140671079197824 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
      2018-04-04 10:51:22 140671079197824 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
      2018-04-04 10:51:22 140671079197824 [Note] Server socket created on IP: '127.0.0.1'.
      2018-04-04 10:51:22 140671079197824 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
      Version: '10.1.32-MariaDB-debug'  socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock'  port: 16000  Source distribution
      2018-04-04 10:51:34 140671078259456 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Normal shutdown
      2018-04-04 10:51:34 140671078259456 [Note] Event Scheduler: Purging the queue. 0 events
      2018-04-04 10:51:34 140670748571392 [Note] InnoDB: FTS optimize thread exiting.
      2018-04-04 10:51:34 140671078259456 [Note] InnoDB: Starting shutdown...
      2018-04-04 10:51:36 140671078259456 [Note] InnoDB: Shutdown completed; log sequence number 1636206
      2018-04-04 10:51:36 140671078259456 [Note] Debug sync points hit:                   2182
      2018-04-04 10:51:36 140671078259456 [Note] Debug sync points executed:              0
      2018-04-04 10:51:36 140671078259456 [Note] Debug sync points max active per thread: 0
      2018-04-04 10:51:36 140671078259456 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Shutdown complete
       
      2018-04-04 10:51:36 140568167758976 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24974 ...
      2018-04-04 10:51:36 140568167758976 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
      2018-04-04 10:51:36 140568167758976 [Note] Plugin 'file_key_management' is disabled.
      2018-04-04 10:51:36 140568167758976 [Note] Plugin 'partition' is disabled.
      2018-04-04 10:51:36 140568167758976 [Note] Plugin 'SEQUENCE' is disabled.
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using mutexes to ref count buffer pool pages
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB:  InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: The InnoDB memory heap is disabled
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Compressed tables use zlib 1.2.8
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using Linux native AIO
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using SSE crc32 instructions
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Initializing buffer pool, size = 8.0M
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Completed initialization of buffer pool
      2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Highest supported file format is Barracuda.
      2018-04-04 10:51:38 140568167758976 [Note] InnoDB: 128 rollback segment(s) are active.
      2018-04-04 10:51:38 140568167758976 [Note] InnoDB: Waiting for purge to start
      2018-04-04 10:51:38 140567828735744 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace ./ibdata1 page  [page id: space=0, page number=307]. You may have to recover from a backup.
      2018-04-04 10:51:38 7fd87f7fa700 InnoDB: Page dump in ascii and hex (16384 bytes):
       len 16384; hex 9651612d00000133ffffffffffffffff000000000018ed5145bf000000018a4108a7000000005d8b2a76e34137e5190c09f2627d33a05ad2bcb86c1291e29191473eaf4883c15e3c3f6d055b3fe4520fb6cd3fdaf392b852dfa108b1886966fee2d30ce32fd607a71c62e16a40b633dbfcfa1b550c5280e2e1b4b6a7fb1d156753832ba6964d87c644422539c6ded02507e753ae5620451943c7eab13f0be4a0e4fa572af1147223bb3aa921b64d51fe800dd7f443f11dfd9e3d930c7dfe3a98e61f47bb078c9184c88416ce6faacebf0e3d8739396055b5a67dc72ed8c7ddfbe96e59bc26be2c955857b4c0877b5a4e72a7e6b8481d20c3563f67df68d8bf14ed0de1bbe88d4087d72c9dca27fd8e3fd21097fab3e4624452a1608bbfa63a7e74b8a4417df7180bd89e7d6d70b3d28f46c7b0df96774ae486f889b70956684f53b69767ec9c729bb4cfc0ad37991723e5a399898ae87f75814ebcb912e860e87019b567302c0a4727ec925ca13852bece07ed200f50dfb7f3a230507bce2fae787650c004a9647c4734f230bb8a93552dff4afde465d723869448d2a85d4863a4292377875f6bf38070505ffe202a286970696cc1e79e02addcfa0d8d0b4f40607b8b1f2f10355153de6aa2d230bf2c22bef1f8f49e543dd1e391f6f10d6dcf89ceac6f7bc93fe963c20e7f3f8c4512dc5632d7d2177245beaa6f605f2878ecea2f5c5f29f08511c5585acbb4094aea7ad29a4e6ba6d438c016b3905da754ada79f4399db4fd4a3f5d18b5353b2d2c98c70f6ab2e4aab89142bc1754a6ea0cee4a9b6849f6a12503f03d69c5119d7afa91c10a122c4a934204d1bd6cdb65a9b60949388779f0c9eb996522bc7b3502ef136dfc2bfcac1126b3823bfb786c94c0e9cb0d9cd8faaf1b08a1d49f9dda437dae042a6a5afb45855553f4e1ba0505a9b8f77108a13a1f617ba3bdff34101ca058d471a486be9c57198036a387a2a89e2ee2521ad6ff2927c4e91e10e1e652cd8dd524e63c989be892b88271bafd9967f382efcd4831199e0f24c63f88f2a619eb1bd28489fb1158cb99ecfb82ddfda0fb8ebf471bddcdff1e383847fd8b6dcdd97a4dea3be70b5c5a313e16f08556041712e04317dfaa8d43dc48555bcebb771d4c3e09dc012b9a194ed92651b915c4db2916d11b23050bcc39f4ebda3fab2a883ea43f6b830b304859b0d469fa801fe743b66f4160d20e7492682cd4172bcf656f36552f35cd7cbab780342e20b5ac5f53679baf5b1a381855973e2aed12714d452c64b524b038846c30e0cb151dea59ffaea956c3c740bc98d5e2472fe24deda052d3c3b172f505bdd271a0809464c0d5be9787eab2d7fed620dd72a0101e7cfb3aae2000a380fd1ab587306a954dadf8d8d6773d9c502b6cadd534c54d647d58980f6612d9eedd4235faab90fc8423a7b412822eeb80398f8d89a7f5b63839da16132e35f12e399c3d09b1b5e67e5d3b73d36988a1f432a8386f78ca0b7dffa02c8e9343e725b0262957b09a5a6c775f77b9faf631c361a78e54d526f560be767650d67a6a7cd16476f2c57c5fbf62b7f7a6381561e8a2266c7848ab1bd656814fd6babc77f275da64b4fba965fc10a052b56b18ba367c3062d294396ab0fecb8b6c58f788bcb60e46b75c616a03506e17566ca1d21e28b5b77600ac0fa0bac1555b23c4e7b2348670600fec023b258d961fae1763f6d840cdb45b73b3da0c728440b0b45a37b7e33a601ef3c2afadb45cf08ae38ca05d50cbefdcfd982f4395688bcc77912c9244acd12393e705f68d70af3b5b8b64f379cb7b7829be2659562f2b46cc4a92370f1f14b394c14fde60129fc5825c8b6851bbf474f523922d2de5b3735bed7ea19a90e4eedc65e4461ea3138c414b6d01ad03687536f51eed7cb5eb2d77f7d91057ce3a413d292ad3a7641291607adf2bfbf2b8ebfd578005d835995dcf654120b3f8ef4de2d8e17dbd48983290f0769d8ef273496ac68fb5a18a13b3bd4d4305e0ba43fb99195287a397e05486495c51afa5526867a8b188e044a2ebd05da99d33baadb1edd6cae579bd1edd000394566469b5c8b25304f27a1de84e8807e8210e10a519d2fb8d8275413055d17f9638eb1c9d67670d897ec99c12f841b6160fbd22bdc18982a3034cd8576e578a979eb773197fe82f482b0bcf35edab474b50ea962b00255ed39cf6c9673aa53eda8e8ac0dd8fac345cd33f15ecf169969892e7261a81099b216c1bf1c7a04010c12cc1915d17c0b11954bf0bdb675fbada0d25d1b15562763a49bdabb6d3ff0c3a8ccc1deed7f08b7aa8ed3a17e0cb5a2853c4dc0e2522e2a0f6f0c7823c225522bbe2ad7ba2a9462205eb413ff7ab9864ffde2a84868f42511049bf354c9407940b316fae1fe74793e256edc6dffa993c3d4a3229bf322c62b584e18e20f95a3b5edd2c74a8415fa99e5fc2656edccca6695436e219952b5522e477e58854bd0595dc062f0f202989ffeed3f0e8210eabe33d4916bbd6bc601559ad917ad4305cf8fd4d8bd1c2563e5e054572380a5b24c6a2a0651e8b2653c23a544adeb2929a8add793e2d1c3b48302b32098dd702d9a67f4577da7a4737b7dba96afa92aee4d5aef0ae04c7f06dc5e424b77fe7d45d2a384a9422b0cad80991112a5c86f00762acfa3d316af6dedc8eb2d4623967c0eb1397648e21c95a49b9a5af89affce5c776cd75795f58b8aa51b452204b08ab4d4c99870554e1eb0fb822dbce7412308342b157c35663c5e469ea61e21078e70e6a730b78c24fc8e5771a4c84df87ebddf1ce280f739d00e51883896e97350f751f42f22893f336488c355aa1e63ddf6f82e643b7f2292927fbe354e140e3154099234479ff36b4ff308d2e1202c12f292d92d0e2ee7e691f7d752bc8049924c28f16a4558c9790712d8b6a0fef8fec5ffa4121bf7b5ee2baff096c81be162e89e2d7ba95af2a7d32cd8b3a364f457e8a54f71f6ebc0f25e802851bc6cd25c9e9afe77a0dc81522d846c123682a0dc8137ff6335f1e96009ea86a8a57000dacc2a23f0b7ff6279bd142879d9522f4e3450f01052c8dc4eb84a0a2f7ff7ce03370178b2e68a5a0a45de500fac3f1b159a49028ca6b2a64d35758314cd274a759e5a4f5c4000a9422d8bd08e5f5aeb203848f3e5225b96e582db16b84ec406c2693266ee480b51eb7b78b1c4439289fa4553c49dac82eabeee890e052b5712cbfb8371d5d8312a9661d8939b3ffb85e94f7f53f4f0a1f71f84bc00b06bf5beb90964d6c698f2f8e5b59685a4a9226a6800f6327be50e2d0c3db09f44d9585ede0d3c818463f660d70bc66188d1492062de981bd8f8e2fe323cda7beaf6c50e6c485e3cbf51a33185949954f20bab517c13f5562ff570776d7b9c578e3f2e2a3fed8822fbda493a786c950754adeb1e80967faf7b46cd3797a0318ac8d697cebf5854083357b290487196c62479ae804f73ebc3a746df9aa564391fb055300731b2087254f3d23d7033a572dd35aec04c554f776c626530a81c6f89a45a0674c717a69bf06dc963cbe9377edf5a1acf99bb1e1383459046f27f2ceb88eedda31598c3ce08ce322d779b40a9a5eb42e15d62ad1cb1a2bcb08e05fa3d834dd1696aeafcb9ae99a51ae46567ce180d880ce0d9ace1103ddde435b2bf0ca6dc97b98f888e2621455d60d39c03649a83fce203faf7d982d5b7770f581231b5c8a07d0279709bc5717f2b2cb17e136afc37be93d98ab7221ae8e974422c8d46b0b713ca2d8a4cdc08cec3f3d335c7c8fc4fdbc246133e924c58438fb654792c1b188156ea2fd1b11f9613463bd7c2bf037070b992625175c5805977d064abce20baf854e0b686672c7d46eb16d3a64387edab6c1ae9cfeee2989b844f22bc3c9517a6577502c121b5f2d85d342a3a387ce11aefa333b6eb681ccdca0c36557082686077d3715c8ffb9b20b6567aa0d2345d0d07e7c1e0c2a2db2dc62ca9afcecc3857d24be0b8d0b439613e3a7c91e977802e68ea60fd2cd8d62388a5c83cf4552307ec68e5bd98dec22510dedfc3c060799283e362b56a44e422a109f2b240d0450e4bb5005b15184dfa947ce43066804e70ac38107bdea25c6387c4caf2b9386e28619a65c6ce804b7d4227683d205ecb4ed43200b7ab107e7964047326959614b5f8d00da8d19d4f66ab9421ecb98bcf597824428ac49c9622cf2f8ef73aeca383f53963bd4e52477b545694ffb038397e8c11c44683687b5eb9aa9ba614dedb3ff08501cf2545209190720b9af13bf9e5319b71abef641284802bc13cdf3c73f958d4438222645d92073f1df9ead8a5b3ed03fda6b2e5194951c38dcbd634dab3a3ba625a86dc81e0fd9b426b57bdc902752c7bcb8f6efc439bab59de71d58f70012c35195f2fb836eae8ea05b77509d64123bb3eb918f1ca97f2aeec293065dbd64d95fc1abfb9e646cb6181e83dcbfb8338cfccf581ead8cfc874573b2d502a2ebbf12372b2f397cfe3637d913ed909f49f5132693974756e17a86a5c09b778881ea4f5c68a4e5c589f06056132a814bc56eb9d4f4bc1a408811d1f779df634dd06eeb95ce4cad404999a9b66e35252466e5e50b87be7fcca9499b4f2004adbd86aed94955181e0043e5ec039555f38af55e9bf418d280517845ea55729372e3f7c0673e357dd08f3598749752f64dc1611ca4de8818951d5807cc121c0a76ea229b616ba7d6114f9c9dac2f7f6fe16f34b81895b50ded6d81bf7cfaebd99af5d697491e7192c87265fdde1b35cfc459545ba422bdbc843cac7cacfaebd93d133daec64991b07b336e483cc58b14ba8a4643ed05ba4b36c5cea24a655e96100187772fc40e03a732994d3622534143d57212b73345972cdcfa8ed36f36e9626d35aa005bb18cceeae1cc3ac205b79df80c117910eaa79879408fde75f5508034aab79b75a46f62cf7ee180b2ee758e81a6b0fdb883911b89fbe0eb166f9e912bd7fd861b5a49cd2bcfe4df5252dab6c79e58acc643e7401b15c8ea15d2e6a18be5f1766c67cbf2006f25bf5facd25a374ada538aedacd2b8feb74cbce9d694734691f14e5f8dc9ece895f76759a36d5b38b1f3225f7955bc22545b82d13010dd8adc853f69e6464e96f13710aa0cc57688cb72980044e2d0f146e4ac4a5a4550b179f2ac02ec1054a57e98a14c48dda342ddc40da9069745841acb85599930c6cc8bc043f8f53dbbfa38c1de92b0a95f396b9b969d63eb9a4581a3b770b048e12256f6b8809b37940bd56be69ed7930d4891af427ceccaaea1d259096e72444a33576261c19eea4f1cde6518bb0ed552b9730657ea375c96c85a415711f80fcaa10fbaf2eaa9e6973f348a8431a1364e36835a896ca89892c4606836615f048f4cb5d30e726c92d0c5d766c13f4634254d1d8f2aeb60c77e6dd8a413d283e290173f9cd17cb475052547d4cfed965ae61077a9e95a5f8c3123f1946315f475edec2463ceccebec98d46c8f5b6f5a0340091fd5897cf908ca576442700781a1cfb6af08a6103c02b2c0ad714857a6945dd9cbeb1650a79fe8d21a7f87e9ba7ab793d42a8ed274b200e3c20e0d97f663d905bff3f1a81e366d5733d9d4919156f0cbdb5ad249aba202063d5637f6a812d5973a4d9dec367b3d0bf6432ea3227805b58fdb0c3ad6e3d2c90ccc88e72203d791c99b02345aff1230fb7780ea3c41694abeafd6b5093edc7fc90918679fe83309f4fa2821f6f8e5f5d3fc6a7f57a700faeed57ab777d859fa07da3c3d295b1841cc22c61cf2666343d91390d7adc5cd5044562e18335b986c19a32ecfe40db6b2670d61e3b020c8af52403dd088f6811fa4c654422dfd3b896763564bf04c62e06622025992d609dc5835bdc39aa8d480f731e97ae3c5ca1844e5b48e0f4f3197425fdc84b4d53af3e4184330586fa800f64329193c1342f62f8fdaea7b5800377c8e3b83973dd41914146fed26c0913b0f47bfab030177406326287ccd3088f2b5b6d282eb763a35cc814eee2db060ba5302f589dbd08a1de1fa05d03ee3aaa9d97428c30ccfbc38c905fa5c6bfead900f521f9c9aa681c2d549babd5b23c36dfbf57205762fda399ad2aa27b979f49fafdb8219e0fd01fc97936c261c38e6b45863c5b969109e91e3778bf345ad42a234abfa911ddbed4b27c2efea7663789ef9a63bd235358bd75fbdd1966b63af53701a43593d59feb9b9ee82e8510b327a0ce2e77dca740994a7e7c8b696564b3e3dde0f7ac22f21176cfcdd39a9197e64a6c23e5e35898109a81a7e75ca8d45e5c825a764e143552b031b9c131f296e25524079c328e63dbe606f34e2559ac45f2a1a41a9da06226a815dda64d8832eaa4ad204d591e028965e2433d633f1b989b7cf03d2c0980d787171650605018004d910fa9ff3a943d7d08d87c1dad7188c72f65d101712c398908071c90f8e2b0cb3be8fdd17dcb9277ffce709f5184edb653ed98e0b8624488c00d7bd605e2a84c1bcb6cb3bf117c781bd591845df7a3ed357ab1ff3c6c5c1fe6747ee9b1034c38a56ce33d7d363961a0bdb0f3a485a71522078484d78dd3795ab82de9e9bbadbc9a917d1247be6e18047d601e6ce28802012ae11181cbf2972c138fadfeb96f1b9b812f7290c26794321c36ab3ef83941cb57f69784895a029b98aee774cdc13b3d0a0fb71af8a4b85d07eefbbe72e64dd1b085487fe1f9099803df20d69273c3e1047204b954ec37f0c91812a74ccf9f2a586e481abdda584a2ce8e049d658192b83065b15a31257162282823c8bd06cb9057af62c8ad330f536f21b73ccef3b1ca77dc66db25f48de83f5c9ac1a9e6ff7ccef4e5180102a774290b9b45eb805d7e7389c28c3ab81f07cab876ff843e79d452893dac26d217ea057bfc3b4f82533d43fbf1ca24f151aa86450cc45ef941217c31e76c8df94fef0e893358a727698769c44a2d4bc3f919f6f78c3366b85fa01bc936fba7b44488cbf7a8990f2a10cc2c7559955effca06fb259e122402b2883eb5f412d33cab973c25788d787295d14d0f5a2e19bd939cc880d03e3be88cdae85e7083baf3260067c39d9a2b955447ee8b8c51e6fe62fdd57cf5a96fc5e4632799b9d063a3ac4bb2147e219657e924642bafe571324c2d82e3084db9c6b48ac71d4c83e22f1d9cfc611f51ed887e0708dd3f4d8a93f2c983019d4e5b7d9fd652cd95b7c785190ba3ada552eb7fcd18129333fa8f0fc4156a9d96651c919b4c91feeb5691a98d5c137840c4e212c55e741100dc41bdb39a13660e21ca9142736177fa3c0a9b5b7fbea86be6dc0ebba4e873aefc3cd67202b7deb4ac30e60dfa19b21211ad7866d239c3476d81f2d0851d39884c6e1b0f06313c2cca262c4ec2019fdd7bcbfe5c233b840cd8ee5aac86747694969b81d3bade08b77f21c3e5a1d49a0d8d5660668ea2c5cfe1d44ae8c7e4d5ee1ea95ab365329006679c90559873a409028ac0dc98437fc9bcc0d038ed9996ddf8e04f1739109d34ce6a4fb96f070a693394d3107f3d5d7915947f142c1146f6c6bdab5091914eb03b493be78df5d926e6ec7a683bebb708bc7cf8c7f83079e1ed4324ce671d23e6d48cde91a8628be79d1a3392fd2a42da9851728fd1d90501c7560d0db5d4ffcbf7260611c37ac9629086e6d0450895aa57959a077fcb7df97e37887b3bfc6828cd900b7d29308917dcd783f819d085e7ef8986f5bbdf81a546672eaea1bd800bd2f92530378d7bbee3f2b2249acd09bc6cad533dc4cda688bc514b50f35e3a8effc4cd197e6a0e1e7d3eded3ad75f2fceae661c5ac875616dc3412617f9fa7981a38b8b985f1f61ef8e209248bad7de9e44dbaed7f838054514b3ccd635db39a4e0b0f5381932e0a285b981f0797d56259db84e122be1377643716bd19efda64b6846e2a1270b6c697508197ca70ecafad2d3a5686d9bf8b7d3bb2732ba50bc03c953325557e977acb2033a70e60d3a98953a28628cb32f188a379a0c6aab077aef27c3529a87285ecc48fd1621938c863d0ee0dec48b03628e903bb8f6fd896f28cf82ac8c48ca0dccec6f93b2053b6771c75126c2f908ceb9e2cf03d8b68ded976fd1a4d196f9e8a622c7c15345688ea354c93309c02f410fb2453474cda761be5d862f5c77854332c9f84b39273668c21b07445b0d91046280507ddc8281a46b560adee6f2559105efb7daf3b18601738fae851a55112f005c6826f5b09880a26540f3248eae1fc9befda7647c474158f93be1d0f46c2d4a68ce69f6e9128bf101c05479ad7d528ac82bb4bc96fb0962550bd3a7a7e6b3136065b69b9b7007b148b5034b378df63b49646dd414962a8256594c1678f7ed0e8febaa26eb71a4019ad5c3374c580bd386d664e18a5a7a429c5ac6b2f4d1fcfddba5e06729665bb18c682450d569bceeaa3954425cce4bef50c0ce202315caa196563cb06ac725661c7ef086c2cb3cc06deb5284c2e59785fa840fa06ca587bb4e5e393bf97812effe6c8f2a37ae2cca01e1f96feb692a2d43e25dee546092f23aa37e18531117365c55e9ab8932adc05e63dfd1372e925dac956de306af27ca0a240ff8ada998fccfd80b1774b69cb839d65d73c900c6405dbc5a32ab2a09d2854878c9ca11557cc5b04d0d67601bab7a70bd920ef59d2c02fcb95a90a87ba5c100df9f29beb13e319cc19752f5d6c08d6899bb5ad2ec8350da18b2d23193b7da925213a6b6befa4b13d3e0d541271233dcd607a6d2610827feabbaff2a720b46bd7845f9a022610d0314ff7f315efbe957270136da32ec40a6f220ba706e860e7f0c9bd1beb92cc3b96afc2e4271b77e9433f019b215d64d7d4314668d8ea048e1edf8f5134f12cd93f077dae3c880f8e1bff25ba475633617d9e34726f47e66beef16463cdc21ebeba6905e22572d38ae19931154752060e354dd082214eda8c1f0da0f4de72a170b3ae55b1825a264ff669bdb6f51bc7339dfc6a7a4f981657b3c4205485ef19d5d519f995c0ed7cbdb64d96aa3f01a18c9b6658f05c0ddc4d8e818fe7365e81d3d85a40e646564369667cb2c3debe15c939ef426783845f4070a59ca8e84b254dfdc2d2f195c97a51c6f778ff0736a51df86ae10f0c8d779b0f896eb437cb75b9a2063e5d47d24db7d576639abdcaf230bc7633fd89f64b0ec81dfdb11547d7ce303384ee98288c51169870a7d9d7fbee08bc282eded25552a542fd40d0927b87e002b4d27217286792e40b9882f613fe385445f239ab5f9500a5491532fc651119d285ef9681c5cb6a7e80e588727e64a1f762b421cf1d4c15ccd18bcbcbdb6453074d256b41ce7f5100462e6b783a535dbd987da2a26d34c08fbc959aea7e09cb500e719851a958921ae7d8b8c81c270d465999e70d31fcec929a44edc915d6b1c24c6747fa408567129463bad3f3ae83d2c653b43c8d2aa15c01b3db58b0d2524d773fc32ff1b94d15f237bf3a5f5fdfb0c3072c35613b5076df135fae9d325e782f0b54fef028144e2fdfab2ace3acc067d63016357ab4df603cd2e5a59b64d79455fa59424bf0630171f45a2aae01c641faf65d01f11197c32dc12ed98a524348c00d7287ef680febd0b8a29fcbc2ec416d6e3d4282f596cea47e436796b50f39d9beac6b91669290ce6f3de72f3bf851b22abeaadd9276264ea150900100c37c784b29e3d94aa34f34feadfa8e4eed644825fefdfb543966f67d806173f20dcbd1993dfca29470680369b63f0cec285ed229acf6817b1aca7a1f29e9ad4f3e0303aa10ca1739af2857c4fa643c98e60c8683833d64bee314a65d7f463ae7c42bc5775d557e5247d8821d021640279d159f5069cd160b763119afa059b230ddf636bbe70754f669e5ef619d00533967123398a6b2da497e6025b45c4630dff71eae2c6ddc26b69d5eea12f57b96d15c315a6e55cdd25fec99cdd67df9e0cb48a8535af62472162c55c36eddfbc9f3de7c35a4af1f310252720da8d29a186ea44391fe590bde9085e909871b2cb507fb9b79000ff4b0736a26c7ca1909e0a12147110b17dfe2f627b591890afc2fcba2b00b35bd8eb6e2b919025e0dce8bcc8222560a9023f6c80fc1b3d0665e02a1581ad85e9111da8f0a728bb2efd2358f87f8de8ac63e174135c59be394c343cbb349c7bf125667883f11d117bd6a55f0011b2df653ae042745f455a8d2a320589dc02b0a3ee8e2f59d05bca05f7756830dd0c151315ba4a1805713d3508f92162dd0c4acc377891e03eb86d66d7bd2fbdb3a3bab6f643fba21fe479cdb402491f16f7843b39845e7d06ae5e2379641896e77d0da2e2edcb77434cfaa5385f6afa89afdc385080138daa46fdb5f3de7ad722dfdc3b7449b45a869b6b8ac8227c4e119edf41db25cd696b7c07da992c8b5c8ff8ec9f8e5b7ae5b4e7ade8538316ead172059ece4e265458b6fefdbd993fdb0182c8748e6e4fef5089c6784227c7a6c5ed08a2a92c0295fa7ec329bf5565ba234ac3909fdfbee8e678f545860f60cd62389864e7786be40a76cac538b1cd4da3aae07224d35f0ce002ead10918688323f7bd257570dbc4d395c596760f2cf095d733ccde4dc9d94796b29e4dea591364c572497676352f9fb25c214d63b46bcb526beac9a11d4ede3225a1bb6930fa707c31ea1d45a9fd5f22c66d0ecc2f8e4592fa0e68a8acb8c9b2d90d2e6106214bae6e8864773c7a5813867f339a24ff842a2b172f5117fde4e0ff515c229095a507501747855ed9f8cdd176ccc41bf713f7d1f25056068cd8baa60e26db1a7a9cfd6f30af1945f94317a4e0efd5b1be1297617e7d6b091992bb50c4260cc142898513873bd68d2ab3bc3024930028dd25590bdd23bb25773681e6e54e52339b23c36cff039bde588f1cb970070db3086815b78493d8d36dad55be6179cffed458ab8535a61a29466ecc7c66e2dd8e623c3cd8ccb72c118ece5955f1a3cbc082ac514de11398c9fa150ed8a60a5ca0bda814e28a671dacdfab71a995b09d070193b77c204fc97f1b6e479f95c274f68381d189219585af21910914a9b0723d30484730a8329ba0820fddc859978fa44b9e691265bbc944a839be5d724dbac74388cd0db6b06863c9d976a69bfc0c4b8b0d2ebf51cbe46ea88ff8a17653c764d03f454c78ff410c69c3677186625fed317772be58fb833fd5c2ac0ee1f606eab082711df167e81fdbb6442bca16413bbf1ce8b153453714780e36498790bdf6bfa2aaf09bcdb660892cb91e6a9a6eb9dfc330342625f688279a30097369fc31ceda42375f8f7f832a869d3bff5c5424a84dd1810f2b8171f4bae4e59addded7c41714d7f500881c1245365927bd316083fb5a2b0af31d8feb56245c8d24a65378463bdbd7486ece8a5348a9bb3063c9904fe8cbd51fe9544db312b886532f24372dab5e8007a9ffdff98294e9a1463c47f6ced021157120cfb680d998c5316c6826a6e8ab3c03a37aa1bfb4b7036448e897ddb05ed74815c17e4fe4e7a5f4c08126f0c5632c878d238d2cdcfc365c8a26ad7554221dff1969a23292a8100b5ff4dd6160c44b2632c134e3bd34bdcb0da18d1566951e29cb333d110a25bb52871d89cdc1ecb2958a0bca35269bde060f7557d894f8d9a925ca67e3b34a52a62e80ee58162ef56c6add6e32d92be6b225792979409d896fd6fb406c4857cdf8924083807498269e16722c910782709da3fd864656ffc32d9b6bd743c15d54a3b721ae272d6891500ffb1f93ee6cb40c5cc1a0003a6e8b2d8beed77761ce8655ef36af2324b482ee296aee54b7afc7aa49c0ab2844d8000ea0228615b53d5f8be6323b7e6480b56b81da8e503f863673a97a8dc92f6d7b5d408649e58e57d92bed669e0e97ec7a0ce58aaacff34700e87402a6437e0fcdf2847ef2bdba116c78b2265011da90a335d9373abe657822f9f1f031eef9f70e1a5bd83fe5e150a804e8e2616ea92afe85394a65e17d827654c6d35d073f29fa36eea696b3daf3d3888dfd7e456a9f494fc6a27bfd42c649c5a60734c8b285a7b701b3c0765467da035efbe13aaa52b66e17928a7d58610ae12d4d921a5f76959646d91bbaf8cdc9b277cf0eb42b029a47772b19c24dd44782db3ff7357f0698706e3708936e1e4c454f590ed7c5d7ca765912687aacbbcc4d2dfeeeaeb566bd36a0ae3638b49b672603f454a1d1704462fd1c097f10a36ff4a75ecf05c51c0cda097f3e1b6d1e92549c10f7222099f56e9f0382dc1ed5900e84e16b2c240fe189aea7cc0792d658e6c1f24954117012f9c8e020e7024879ae3aad278f94d491e69cfd6fd3ccc97ca4feee613759eab52637b6a9ceb7606f8208cdba55e221742e225400366fa15f947296709346b37a5639204243689e93a1fefc8c910aa1f7f738fa3a5e7322e19da36cf9d709b30f484d0343f5c47c4f164cb07034f7df953a6e5a756fea07650105625ea8ff338fd28a4d3365cd4bfdacdf2b176f4f69dc15415d8a645ac7f035a75dccf4d68531c35289e33b3862d3f2b9bc5a2ba8247c669d8f93534d351822e8900f1f35a45596cf55f8fc2fb47e6981207a12fcdd2fdd28098e734c0cd3a26b8f10e02c4dac5b2433849c43294b704346fce8cde8d7c1a245c97daaa0ba9aaaa468332e0f463da2f8e99efca5006e8fcf397f587d9b03d0d198576697414e934fdece1d2fce26a37aa8f5f00505b38fb72eaadd5ec37e1fcbf73420c8e79d1a877c8aface43381ebe3ed537cf47a53cc9f77698289269eb49ec1ee0a8857f42b61b5885492631d3af165b961463737874fd8e19f3e8e4b29f84ccc9d1923d884e7f4b31736f86dcd4ae260dcf3f5605ed1a1d8395240e7615c363d35a9e44d8700c9830a2f85d81be4fdaa2c38319b1c1354c8183e973f33fa880642b611e2ebc7726c850ff9f81ea356188e54aeae25cb555423a86c37f48cad1f336c07594a021305e3af84ad7d0cdf237345f6669cdaf7f3c006f21838beb35d9a96f39f3ae268c7b9ccbbecc9aca3c56089c7fae1922e00a5aea9babbb15dbe1a58ea882979ea05b9b79d40718dbec258bd9cfae5732927e18278e16de34399dc5d9019b3abd800c209dbb4b9b5939afa1a3f588e5b743842013f9cdb93f413165ef64a4a96515e3cbcb950ffa38a34bf83f3ec490c72fb3291b08e1b0584c3f3531f68613fc0e03eb8c0a77361da027ce05f8a0007873e0f2048543acadb0a0a3d4985e3e01559b09ac780bb6e8309e586a5ab3c6910848641592264d1866f7d17d4de0e0998ad1c6da5553a7044610eb7f5ef8b1aaa641d5a4bc04974443ed106f3d84271638b7572fbcb346d07b5b1ce51929542f447147727aecd9803bfea4af534d80318b3ed8a88575e6286d7fa1bf3ff7d4e80d07f115583650c979b367ee66de8926a2a5a97599d0c7207b9d2d6ec7ea7f45765b3f21cb3449ad76dc4d7f82f6c969122c420036f3995fed38729ceb14b4abb8c96c6186f6a58a61b0d7210906e4e144800f1121323560c9f8ee861de6672570e41a61f0934584e03e65e2096cf7c0dd4d69916d4556af641d3e1eb9194ef00a545990c5101864216fd253944ffbd692b5bfb21ccf1c7768f49545f750bc43444758e7d2430928ded6999ed62b4a5edc25e5d7f581caa9d4f1869bd8e9b9827020118ddc5a280503c70f2ffad0d3467d0534859faea8493e399f3d2e35f8808268b1fade8616117ca59f0573cc74fe989cfc50fa583f925693bd00a04ce8354766a2487fc380acf79469b77cf069d8ea02586eebccc7cd220f98b38ad843c2bfd390723be8f82778a60067c0daa5a71875f170a8606c2f6a4c1adc4750080820a54382f9ad0ba6d884ee49bc7cff44e77d2210b3a61f14bd6deae95d03b1dd959aea82030042f811fe77b4310364661c8bc3d094a0e6cb80ec120c860f50031688b1cedc33e78900075f13e4a51c38661352ebc7167f5b9c575c07b851a689370702968eccc694bad7a9adedef62f5c1836246b0ec93723d80df51a3421406c5933bda72f61c4d8006e9186aea0b74be2530862f8254859786259ca3ea5b0b1b010fc006e7c0f3f5b975ad35d9e978a90419aefbfd7402c5d3908f6dd259b088d038cd3e03a98d09dc577715feebf41c9260517d47d41b1e343dac6e7f215224b16a38d9e3bda51f770c598319dea09a7f0f1be1f97aa59c081f3c0bbbfc46413bd223936cce4f329067564c4cbcce4085e7b08370934eecbd84498cb9cabc41aaf351a9d36909dfbf6a9ef684dd69c29327d8abd9cacd0b6171fc73578f2dbd3c560ecfc33c18db99aee7c4f205863669564356e09d174bec52179dd4b768c15e8a45d9e2c44780f4c052c2c7c6822d74764cbaded3cb1a64eeae0ca27df88f083928477a64a375692a7ce13de7c07a3600a4584a6a118adc0719c3149c1e8d64473672edd86e220a1dc9ef08c5365095f31c306cbc191d9c77cf1906c5efbd8765914bf9e6f665d3da350a7c7c461b0eb93a28e9003165165f3399e0591da9420a3db2dc05b052c7eb7a224d158beb6959cd29d386369025953ac2a5fc07009b5333f14109fdae7fe98fa52dadab0729619434c340018f5fb96d2ddedf6de29ed4cafadf4f31703fea39c10f1b176971bc8673d3c6ba6c3fb563c9528989909b940646d8b6a217c368ce7cd4fa039aa1225feee0b9976d9b8704fef46ef9875d2a38797ac314bf679e94e0a0bbfdd85c8929b13519df959228a0554f3fdc7c55a864e4277915e1b6415aabc34af1b759a5bbf3c8cb93b17db4c74a1ede27c0c28b9f8e9b83a069589557e8f5cbd5396b0fd3badbbcd6731b642f5c9d83287c396786c2396d2fa0b47e090ebd8cb086f60fd227c942be590e195b60cdd1ed05564b68720673aa711fae4a2979df5ec461b688c5125b9296c6bd1097cb786fa85c050bedba9da4652dc91f78f8f954a91742085641bded1f705e25c1d2da1af3cecb75b05d25faa47ac152ff0766084b5704f583a6bdc580f8a68ffa6b7f508176bad9e94218b2815c3dbbe63da7ce66be89150ecac741a3eed091ab92475ec5ab28e1c43dc49e5135917702933f53af5d756f1019bd221586d9c380bd2f86ef1d85d6b51f21a46977cf916b668a60fb7f3f4cb301f61d09aa57757c487848c8db9b5e45e91ca9b951f9eb20cc3ce98b5ae20b85b5fdda01ea05cf0c3117e9c36fc1fe79a714770e254e72b665434006467a6686b300ce5c709144912effad8b054b8348d1e22ee2290c47c298665d6d5e9336d0fc6c12cb0af1d499f6df00207f7c9f6195c0e943dbbffc4d15f39a17327d7b2f77d2c9eca4b16ccf73e93b3b81853336f9cc66e6465c02f84016039db8de10d24e1bdd7d1c0411063c8e67272d3ab82e1126a1913444a9793f10d30623da2cb18b3ab6c9fe73b79c779b110f07d6b7a84c32ec52b8c150d9c67d169223a5940cfc2d94f933fca85088d9db21423f4ebf120d4d742426056c981c238c69f6d4d81305a6610429b8c82b334fafb9b29944fb681b1de238594aa7f158f5f65572df44fdaa9d509a53b2e98e19c6c3559437edbbdefaf7df7f4534b5e67e20921842215910a00e9c4c8a333c2d9817b0e68f7839955558bc447abcd2e4f16daf3cc08d88edade280282fcfb80a83478b0a567a34810886866f9c281ae329c0c211140907ae460ebcb38ebf567a573fb95c787d524fe4b77c09dc339e7d1196f5de3b5def3b547ff7d3f0447eb6c5b8d56a6b18d416e202d2c3f50e105bb0926a3946633eb700054af8769b1a0853c8a58c907d88a52f08e57cabdd652717e202412fbe31559d8b88fc3a551596dfa7a8b2565482f4785d42bda0c761f609c47223a853c449f3542efaff21e879836474b04fc65f1e207b4643b1fb95504df9f00f4d67f68d72117cb79d1f92d9f7dfeb7a240df58c51bc26734925062496d517d84115e1a0a7a99ef9582ebb028dc54597b3a3b9e85842dae820af10f210ef81b1712e4662b811510817ac4c8769f566e7557b5f553251016aa93edffa993df6b77499f854f52d676d648b1d8cd501a8791e229e123a6cc6c3e4d0e189a425cc559210013aea50485aa94eee44fcde013910ff2105173242eaaf4b77d8e6b3b0a6229405869b15f6900d558f8ee916855a298353968dbd40043cd55b19e8f0b83343cc191eca289350122791ffdc61ce563347faac3d409dd1bc601b7551b1f00ad26d12c1045f3a2313f7ee2c4ed0d58cdafe2f85ccd8ebb4f851cf6db2c53bf4fdbd9551f6ebf74ac159213477ceef86a29fe200470a79b6b9a403dc431d542352dd11dd75c761983e05ff51d55ddf970e1a307b8d15d5e3b5fefe31912597644cc2497b7ea9b046133d6e1d3551ff79731a482c47329485012f58157077b3248e0466817ed6bcc40779947bd1909bf19e150ef4003c9574f4384bb98211c3b467cd24dfd22274262e88ba1d929d42ad26b6378c6a7984b3d1a7478767dec22676f4c36b59e96fc8b4a2f37514e0e2968ae71ac78533877820577278c72c0014396be87f5ccb75bfa8107bd7b08a9a234ec1d6693bbdc31cd3257d11a3acd62a6e174022f34bb0ffd5b32e994e71bef09f1c255fcbedc3164dcf1bc173668ff6d8198bc8e4cd9abd3c1f3fed7cd14c2e03ebf5403480d04fb7ffd083cd6871dcb41e32e700c300f6b0071f5765a9fe439c9b5d648ed5b09f55bc651a04b464b2d2d8d8539f7ad16a3768b4b580a4d7ef20eb082032893cf18a549dcdc3c2d736f3175e188f0d593802d11c4990617fa9bb06842041b213e89db25480ad7ed2183b922d5a90248094e76570ffcb2f1ac26e2f7709469484a0b587a78f8b2bc04b31c833f473d2b18933386e9ae49f35046fd7cc93b16a12fef2cfb5580c1f3944493196f3ceba11c3dc99a9ebbb855748ae74935b68ab7228a4d5f122ef264583304b016d563ae296cb7489a8dc9676ef5dbb876a36b1bcd6f87e24e4ab95a0ca06d5c8bacf0872b7464665b0c8ba81de135817dd08a04c413825fd6fe2acb002c4f43877502ef9d7257e03abf96aa4680f0391dcfd9b7f3d2383a840c9dc637feb962e47159e285c364da3d5dddf2bfcdc7a5b23b1bfb5b8c4aeb81a0456413bb3f89f7729c93fa74b0d9adec08ebcdd2a9ac6e5ee60080c2ca01704286728691dceca496ecc47ba4a4caed0bf44c78b76c8a78c7bb8778f2fd3d807670aad657956b74a498b3a9cea369d22376a51f34e7206084b40912ec47d499799a31347140174a3fcc61ced1f24b78641c52aa55efcb4c3109040763c98e31990ee58dcec07321fe289f6d4a4949123507c3af36dd98eaaed461b41590b3df893ddaeee2c5a43ab1aa6a9f0dda63f5e45ed3bf54489714dbdd05288c22445fdc4231f63c0d78955fcc345dbefb7be0dc1f48902379b62ea395e7f0aa5e777477a8138d666dbc86ecc58abfc859e30ad8dd92aacf0c58cf5b3b856471022d228163f47f14cac328fc99a4dd1a28788f43428019d747596f3d41890762b28e1cd2b406bc167a69c3597c241e222f2e88bc6c35e1e6587cf9fa8251b28adfb646b7bec73a78d60880646ae8ccf2096553d87bd617c98c7093f62a7855a75d721d47b832323ea07cbfeac433f1e20196f864502b7607f4192d1fc0138e60578e7a2cb6d2924ef040e282d5d516b11d0d347ad716567826af2326f41d8b5f291c73c4aedaf0e4adfbc7ad92232879ef284095a1a089a6153951b6622aee08e3625e30aa83b38091f4facd61c15b51dcbde55b5e31c81e99f82c0804cf2128c3779e9e909674405d11b2f271d36bd55e7189950f4dfe6ac6ac73146ef49617bc752431a00882c840df856fc3f0dca2809f5055f3b09507e64b96a95bace16d1ab2110a8a2e0d3f95e8da2779d815cbb83a8a9ac6220510e21cfeabfd9369b9bfc9e9045a2e51dd4744c61cf51dbdb99fcb16221a8bd857d5509479c80d941ead1a91b83365b85313b89ba1b1e2c204d54d7b5b5b5601df640800ae74dc5512e4ebf827801fe059ca1b2996e71e87438cd6a42a38f98805a0924d4f8b43b584825bcb30d06e46b7f39f4c0827adcfabc59b8d335b6a9dc2a286cc0524c6bdf205106aa65d8fefa900c66be51815ce282dbefd775369a693e2b291ac4c3df2793cdb891875ab86346e55cfa2010e79dbf107aacb2070d387ba315f513978034390e5b6c2125d689ad988de98689e6cb37cbd4880b9514cf58f71ad08ec178cbfb70ee265cdefee91da9193d0fae07aebb15b80d83fed8a75c09a66bd3f25471d23288db1927074b5acb868ac36ae295ea223e2f9391a8c1f76d4f1fc552ee1041b1470cf5c67a6eb430780a5648de24789ab1b7cf8529e8ad4e851e398d68d888dd2e00fbf203c49cd02cebfe8e6657719cba53ac1b3d2e67bddd584e8f49e93f70f3f579152a0bc00daaebbac48533ff768eb65efa2460841206871a523884cd881c0b8aacdbe9bbf65aa96338adcd301a6d51b1f02df1b1f20fa49838710ef2fe50eed89105c5f0c1ddacfa8871385afa2edefbdfc933a79e44dc6c0a65fa724604e51cae8c9b0097bfa251bfa6a5081c15cdbed8f5d7912b61fa2dd3efe2d7c82c770aebfc38a409e9c5790bc87c72ad5ea9ada10b07908f45a7529938d4df402fb8c5e5732bda631026491f6bb54954083208c355004a4ec4ed5486946c3c349f640fd66c662d640c35a1a373b0ae56c4f5c8daee95e430a5bee38b73f86f52ac1ba837cb80f1ab884e10f82411c13d8ec7c79c4904522dd75b358ff67a837f552040ae5d3f3b653a21bf2f5dc35def32b74b5ec155a5f3d544b3701618a7c9d14e5fa36201ab1c6835487d88bd6ffb798e6e1d20d403306169b391c50097e515ad82bbd523b695b21e30b3c51ecf0004d4df09973474ad80cf10056b8ecfab000f2ecdc022517a1e678eda18167dead7eb58c2785f4c1ab6ed2261d8fe58415024224c0020e40e36779da6c4de0a743ff66149a3704055b986b04a45ec21acdd51891424409daf259a48c251ba7319511a3f8ead21ad5ff956a5014bc4a20ab08267974c9baf81f65b8ce73ad637d66932325e778eb5e474bdcea5e8338388b078a45d342d2a73588566dbd1416bad46a11534bb5c9ef036ce1cfdf5250998dc54b2583a23ef2b995a1794206a6aca5baf1b77abb77b4a1afb18c492523874bab988c54dc85f57fea15e8c5e793172dcc8274aa94d74fbe41d2eafdbc609859a1e4b72161cc5e503e6ef4b70560efa9f47a0317f3f951e9b820e24f0c6faab7b2ed06c6027563617c03606c3477160ec9156afbc20f58f9aec0410926b63ad724ab39510102222b717e06cc5017f1116dc33073a7a2e81cd7577d625ec2fce20b3399bba8ea2248377a5df52b47565cb74fb1a4a97a5ba067671810a5ff118a536173b064c34205d70ff2faef0dbd045dff95c27654984c2644e1b25f413777df3579f8b4deefe0d70984fa2acf057bea50f69d8cfa6869057a7413030ab1662fba8f186767c63cc45d40d70269452bcc26c44b15ce0f792396f66d7e2a719cefbd19854bd50703b4e2e8f12583d0f59f3d43ab8b4d523124737cb3c28ccc9f4ea543c454874a94fd4299799b173bfd52bf48ed2fb5d6def5b70be8f6e618cf3ee7cd24519fda5c6b37a5b8d991653130fc3938e3e1597ed4cad619fa8f67de424a4971e0986a77b9fb896c320097e1c5bf0d83a6907fe256b93f19d584e47e6d1ea108302862c2465dc5f351e89b44ffb0e2513bf783e63449dc6d586192a3982b46696821cb55a30fa3b2ef54657f3cdf979bea955d6ab4bc547b8c17979f60430ae433e0f5f16f4434b01a8ddfc1e9d483dd26b485e41252259c8dd72be74c4cc1d07d290b0e7de8ec84bc6ebb4fffb6a44ff6e4ee06fc45000bdab2c5860bb8b3573ff8f59dd3f4c241e45fd9f9a4ace1915de893a96d704f5a126ae8a442839b25d246beea6470347d85accd6794d9f24268b7e082d3597eb5300a5b76f28d025d35dc9eb07771893b8ac795152e96e63f0ce3e824a95fa09900c7e8e4e0833a8b899cf4a49ea91e63697b9f82ae1a14af8141596cf5b893efd0da4ec81b6d0d850bbfb34d6ef4227aac59e505aff157f49e87a86348abb6499d451e9ae91b84dd74a430f402414f37cd9e72a1dcfe8225db7607a33e0c45c6bd6fa653cc396f9fe508f59a62d43e79ad44f4ebe3bdc11c2c1263c045a7310f85a3f5d3f1b9f50c04727a9a2a80500f27f5c98475af797a5c8bc57399b3f09f2b6ce5e528f9c85e1e035197620c304deb8fa53a2d081b56739dc0aa7c4f34c34bb42177fb420550953ac48a8eb2621f71753f2b11c69328a7cbc4e1c8ce7ad26d21c08a1d87e23f91afd2002ca0cd65fc5a9d87eba588743e107a0a37c4561db3b1e35bd5df59dab97c34517cae3cd76f4b4d97611a336ab6743fcac3dbf6cbd7c77050b62f011ea3a345bbdcd3d9196a89aa1f419c2acbb03bf2b29eaea9ddf2afc70f15a1d8242ecb3fa800741ac7976e160abe8784c3dfd3cce6d59e3209a14adbfa00bed3caad5215e31c83850173dfb01afec072587dde6ffe8cb49650dfcd6cd0bf5f9a67edd8d354e257474eab23fc3634535eee5ebb35fc72725217fcebb9cd364bdeb316ab96565a7f0f70841314fb67136d68eed92ae771c1ba2bb9227f44958ab169c32c61a05a4cac124de52ab441b48c6d0ae5b9ef1fc10c6e5c9908be81a14b04765ba9ac179adc45d7a3bb6e6e6d22831a4403814e39a8d7f11080f68d80d852a19aeb3870bc2a8a9c04d6f9db8d37d89146265a00d86d852619210a3d959c8a5bea55567fb941b681600659ef1d606d2999d0a4a66f76f799699a34cb71eecb7b4053692ed7286a811106def8c25ca724f65b0c68a89b0fa3f5b3a44a7c1e0995cbe47002d432b22983f08e69fd9f45220186921d3312d9368fed7e98937295f7bc1a6afd1399b6dd6f09424bf6402e1458b509c183029215933139769a806143dc56e843312fd870a0e28af3ac6f7b3852c459854c5eef463adc97bd75bf1a98009121a4909de88f7701e5e491cde77b91dc983ec1c646be4a228b9ed8e81ee2748a74384acc2ddcf1c28fc8fa48050627213a26c78417ec470ec1490b545c8fd167c8c40c6b7a61754e5ce2584c58b7c7b55cfebb90261adc5aa1618885c09ac0b9ef203ed4b0baa7749bf4e3ba373623cdae14b99bdda08ad62502ac13d67f60370fa676a3a0db6f130dabfc0885fe20f62d00c339fa9c25c297f7a2b4a7970e272d78d92421bba7ca8b7f33e433c934eeda6fa045f2f0e82e5fecb56b5a3514967ed84c9d105fdfc175b4e88c0b355ac4eb4ecf4dce6207f67dfa0e367e98ee26528c718d796a906f6dc07302b7a7b13311d56d17dce002a70950c32d8834b1efe7a3df05bf7a5acc61cbeff45e4e85f2bef105dcc54ffe47bb6d69a729e6bed510621606f4ef93406060a8d19144e33aa0c53b473baacf2cb8f1aa2134201f57f733c3db30312a0f8e7ec6f0d15eb065be0c101e7a3a7355699495cf81ad3f25def38ba5c698ec99eacc0f4d5674a535ab806e44d70aaabea29b59459adba2bde5d0658d4f44d65086567b7e248084c279d2e5071a51b2fae69679e3a0d41b9b0241a0fdb86dd518f87fd331dd08e09a6307f17ef28e29c3a713290b6f8ab3f610854b6531c4a06f74510cfc618de8377d6ba3e56d7068cd93ffe596179cb27af0d7c3720dbc6ddd8ab06c50332c09ca78d473e7a57d39acc4e75ad60287814e2eb09ef618824a47a387bf784fdb536140afe75956aacb76efc4282b0599cd9693908b8cb9fe941ebf96ad6f78ad0ec489b0e5939b99ca078fd62e4f9c7263637c6b375ada36afa20dc6988205170046f1085a49d995346cadeeca2e23ec98966336f2a43346e4f8ecea6589884e343b24ed3f42906952b7e24c50569a2641d8b3a90c7b35984cb7684345d769ddef9dfca43f423700b9c0a4ecdafb3259819f95f030c3c80328573ace99e679d608eda406bd2135db365087fddc1c5044d5b37452909bed8d54a9a843330bdcf25ab4f7342d19bff232cab7d2b8c9401a8ddfb9d733f9098a384d62b987fecb01ae3ae7484c2a3ad0d0a28896b55377d2e15b1a02ffc12e53baf61e9f31bc300175961ab09a09133317deea74db1fee1ef2a3a10c1c6d986ff6b85a0ea04d3a275aa63e0878fd1e5dcd5898fab2365edabe9aba3b2a3e75395d21b236a3f6d21a0f8a792865ff002b14c290a93fd2f86bcbea06bd3292521af6e5ecfd62213626fbaaea8f5b2d2dd9c993101feb9bc0ed5d2b3bad373a750c12e03616bd1d9ea9199d4432301a5c37de98207b3c15dcb840b6953b6e10774a24f561bd47700d55a59791c5d698f7c0a41f3be8618937f081728e4c0baad5907e4e213d5bff496e5363b74ad1c23369eafe36d5064268d60726f9a954f89bce87233655a8e55d9e2957044657229e73f0eef46cbfc7f1df29d04c0df38dec196be7b3465f204dbd23c70b1b3521a35eb8a5f82fb45436bd9b16fa21c5dcd1f8634e48f622866b400caf0d5937d9b729b04d73561c85d9e818eed22b36e6e0854328e9faf99bf8c65f083240f58016be79c858249ab55635cf82b59df67438cba35e9880c6ac34a4534a080a9ac8fbc1cd1ed906c57105297353ee69260f4ab2b1efcb6adb893520e6db2fd7fce64767d3f519217409ef13be29ab908cd2462f21cd04b00f542f97163d5c239073af3f2d3c191e9b1d1ea85e1ec15daeb3f77020625b86ef9c326acb6190ddb6d6ca3c101d513eb38443e0a845484368b32ec5abecacad78dc8529a52b5b5e5e204af64c46e598c23af59c13d8e42a871bdede9fdfbee0c673bec458255911d50043543817661b7e8a707aaad3f24446a5a12127c48a0866c8b88d6d946b8b4432501221f910321d39b3303702da6e7ebf8d6a03d22e4b4a375a15603af67227bcee8e72c472265cdfba73f575ea38aad790f4fe2e01a04c85f08e8f671fb64cba88e12d0fe9816d2df0bfed05f4693fa45e681a1399eae674af4e233194a72f7dd7ba556c52fcbac5cd30808afc1645c5d45d4538ba658dff0018ed51; asc  Qa-   3               QE      A      ] *v A7     b}3 Z   l     G> H  ^<?m [? R   ?    R     if     /    b j@ 3    U R         gS +  M  DB%9   %  S V E C   ?     W*  r# : ! MQ     C    =  } :   G         o    = 99`U  } .     nY & , XW   {ZNr   H   V?g h         @  ,  '  ?      bDR `   :~t  A}     }mp   F    wJ      VhOS  g  r     7  #       u N    ` p  g0, G'  \ 8R      P    0P{ / xvP   d|G4 0   U- J  e #  H  ]Hc )#w _k  pP_  *(ipil          O@`{  / 5QS j  0 ,"     T=      m    o{ ? c   ? E  V2   rE  o`_(x  /\_)    XZ   J z  Nk  8    ] T   C  O     SS    p  .J   + uJn       j P?   Q       "  4 M    Z `   w     R+  P. 6      k8#    L           I   7  B    XUU?N  PZ  w       ;  A    G Hk  q  j8z*   %! o  |N    e,  RNc    + '     8.       Lc  *a   (H        -      q                 p     o U`Aq. 1}   =  U   q           e  \M  m  0P   N       C  0     F    t;f     I&  Ar  V eR \   x B  Z  6y      Ys   '  R KRK  F    Q      l<t   ^$r $   -<; /P[ '   FL [ x~ -  b  *         8   Xs  T    gs      SLT G    a-   #_    B:{A("        [c   a2 _       ^g   =6   C*           4>r[ b {    u {  c 6 x MRoV  ge g    Go,W   + zc V  "f     eh  k   '] KO  _   +V   g  -)C        x  ` ku   5  uf  !  [w`      U <N{#Hg    # X a  v?m   E ;=  (D  E {~3   <*  E   8          9V   y  $J  9>p_h      O7      e b  l  #p  K9L    ) X%     GOR9"  [75      N  ^Da 18      6 SoQ   ^   }  |      :vA)      +   x ] Y   T  ?   -      )  i  '4  h Z  ;;  0^  ?   (z9~ Hd    U& z    J.     ;    l W     9EfF \ %0O'     ~    Q /  'T  ]  c    vp     /  a`  +   *04  v x y w1        ^  t   b  U 9 l s S        E 3 ^   i .ra        z        |   K   u    ]  V'c    m?              ~    <M  R.* o x# %R+ *  * b ^   z  O   Hh %    T @y@     ty>%n m      "  " +XN         J      &V   f Cn! R R.G~X K Y] b       ?     3  k k  U    C       %c  TW#   Lj* Q  e<# D  ))              p- g W}  s{}    * MZ   L   ^BKw }E    B+        o v*     m   -F# |  9vH      Z    \wl W      E"       pUN    -  A# 4+ |5f<^F   !  p  0  $  Wq  M ~      9  Q 8  sP Q /" ?3d  U  c   .d; "    5N  1T  4G  kO     ,    - .     R  I L( jEX y                +      b  -{ Z   ,   d W  Oq    ^ (Q l \   w   R- l 6    7 c5  `     p   *#   by  (y R/N4P  R  N J /    7 x   Z E P  ?   I     M5u   'Ju ZO\@  B-   _Z  8H  "[      N   i2f H Q {x  C   ES          +W    q  1* a   ?   O S         k    d           "jh  2{  - =  D X^  <  c `   a  I b       2< {    lH^< Q 1   T   Q|  V/ pwm{ W ?.*?  "  I:xl  T       {F 7  1      XT 3W  Hq  $y  Os   F   d9  U0 1  rT  =p3 r 5  LUOwlbe0  o  Z t     m c  7~ Z       E F  ,           2-w @   B ]b         = M ij        eg          =  5          &!E]`   d           w X 1   } yp  q +, ~ j 7     "   tB, F    - L      5   O  F > LXC  Ty,   V /     F;    pp  bQu  Yw d     T   g,}F    C   l        O" <   Wu  !   ]4*:8|    3  h    6Up h`w q\     Vz  4]        - ,    8W K    9a>:|  w .h ` ,  #   < U#  h     %     `y   b jD "    @ E K  [  M  | 0f Np 8 {  \c     8n(a e   K}B'h= ^ N 2    ~yd s&          Of  !    Yx$B    " /  :    9c NRG{TV   89~   F h{^       ?    %E   r   ;  1 q  d   + < <s X C "d]  ?             IQ    4    bZ      BkW   u,{  n C  Y q  p ,5 _/ 6     u  A# >        )0e  M      F a  =   8        tW;-P*.  #r     c} >    Q2i9tun  j\  x      N\X   a2   V  OK      w  4    \       f RRFn^P {        J  j   Q   >^ 9U_8 U  A (   ^ W)7.?| s W   Y Iu/d    M   Q  | !  n )   }a          K  [P          ]it   , &_   \ E E B+  C        3  d    6   X K  d> [  l\ $ U a  wr @ :s)  b%4 =W!+s4Yr    6 n & Z           [y       y     _U  J y ZF ,    . X  k   9      f      a      M %- ly   d>t  \  ].j  _ f |    [   % t  8   +  t   iG4i        _vu 6    2%  [ %E -      S  dd o q   Wh  )  N-  nJ   U   * .  JW      4- @  itXA  U   l   ? S      +      i >  X ;w    %ok   y@ V i y0    '     %   $D 5v&       Q   U+ 0e~ u l   q       .  is H C  d h5     ,F  f  H  ]0 & - ]vl  cBT      w   A=(>) s    GPRT}L  e a z      ? F1_G^  F<     F     4   X     vD' x   j  a  +,    ziE    e y  !  ~   y=B  'K  <    f= [ ?   f s= I  o    $    c c j -Ys    g   d2 2' [X    n=,    r =y   #E  #  x        kP       y  0 O   o _]?   zp   W w}   }        ,a &f4= 9 z \  Eb  5    2  @ k&p  ;    $    h  LeD"    v5d   . b % -`   [ 9  H s   <\  N[H    t%  KMS >A 3     d2   4/b       w   9s A AF  l    {  0 t 2b     +[m(. c \        0/X       ]  :   B 0     _       !   h -T    <6  W Wb    * {  I   !     y6 a  kE <[     7x 4Z *#J       |.  f7   c #SX u   f : 7  5       .   '  .w  @ J~| ied      "  v       Jl#  X      \  ^\ ZvN 5R 1  1   U$  2 c    N%Y E      b&    M 2    MY   e C=c?   | =,      P`P  M    : =}  |  q  /e  q,9         ;   }  w  p Q   S    bD   {    L  l   |x    ]   5z  <l\  t~   L8 l =}69a        "      yZ -       } G n  }` l    *      ,     o   /r  g 2 6 > 9A W    Z     t  ;=       ]    r M   H          s   r  T 7     L  *XnH   XJ,  I X +  [   W "  <  l  z ,  0 6  s  ;  } m _H       o   NQ  *wB   ^    8 (    |  o C  E(   m!~ W    %3 ?   O   dP E      v       5 rv v D   ?  ox 6k     o {DH  z       U U   o Y "@+(  _A-3  s W   )]       9            ; 2` |9   UD~    o / W Z  ^F2y   ::  !G  e~ FB  W $  .0   kH q  >"          p     ?, 0      e, [|xQ  : U.    )3?   AV  fQ       i    7  N!,U A     9 6`    '6           m   N :   g +} J  `   !!   m# 4v  - Q       c    b          3 @     gGiIi  ;   w  >Z I   f h ,\  D  ~M^    6S) fy  Y :@ (    7        m    s   L     p  9M1     YG B  olk          x ] nn     p          2L q >mH    ( y  9/  -   (   P u`  ]O  r`a 7  ) nm P Z yY w     x             } x?   ^~  o[   Tfr      / S x   ?+"I      3 L h     5    L         : _/  f Z uam A&   y     _ a    H    D    8 E    5 9    8 2      y}V%  N + 7vCqk    KhF  ' liu  |       hm     '2 P   S2UW w   :p  :  :(b  /  7  j  z ' R  (^ H  !   =      b  ;    o(    H    o   ;gq Q&             o       "  SEh  T 3  /A  E4t  a ] /\w C2  K9'6h   D[   b P}    kV    U         s    U / \h&     e@ $       d|GAX ;   l-Jh i       Ty }R  +     bU       `e   p  H  K7  ;Idm   * VYL x      & q     7LX    d  ZzB Z         g)f[  h$P i   9TB\ K P   #    V< j %f ~    < m R         l   N^9; x   l *7 ,    o i*-C ] T`  : ~ S  6\U   2  ^c  7. ]  m   '  $          t   9 ]s   @] Z2 *   Hx   U|  M g`  zp     ,   Z  {     )  >1   R    h  Z   P    1    R     K    A' 3     a '    *r F xE  "a     1^  W' 6 2 @    pn        ,  j .Bq ~ 3     M}C f   H     O    w        [ uc6   G& ~f   F< !    ^"W-8    Tu ` T  "       M *  : [ % d f  oQ s9      e{<B H^  ]Q  \    d j      e         se  =   ded6 g ,=  \   &x8E   Y    T  -/ \   ow  sjQ       y    C| [  c  }$ }Wf9   #  c?  d      T}|  8N     i  }         %U*T/   ' ~ +M'!r y.@  /a?  D_#   P T S/ Q  (^ h \    X ' J v+B    \      E0t V      b    5    *& L   Y            ! }    p e  p    ) N  ]k $ t   Vq)F; ?: =,e;C      =   %$ s 2    _#{      0r V   m 5   %    O   D        g 0 5z  `<    d  U YBK c q Z*   A  ]     - .  RCH  r  h         Amn=B     ~Cg   9   k f   o= /; Q *    v&N P    |xK)  J O4    N dH%   T9f } as     =   ph i ?  (^ )   {  z )  O>      9 (W  d<      =d    ] F:  + w]U~RG     @'   Pi   v1   Y 0  6   T i  a  S9g 3    I~`% \F0    ,m &  ^   {  \1ZnU  _    }   H SZ $r ,U n     |5   1 Rr     n C  Y        ,    y    sj&      !G      '     /    5       ^     "V  #      f^  X  ^     r    5      > A5     C  I   Vg ?    jU   - S  'E U    X  + >       _wV    Q1[   W  P   -    w      m{   :; od? ! G  @$  oxC  E  j  7 A nw  ..  t4  S          8  o _=  r-   D E i    '       \    }            [Nz  81n   Y   eE o       , H      g "|zl^  *  )_  2  V[ 4 9     g TX`   #  Nw  @ l S    :  "M5   .     2?{ WW  M9\Yg`   ]s<     yk)    6LW$ gcR  %   ;F  &       "Z          Z   ,f     Y/       -    b     Gs   8g 9 O B  r    N    ) ZPu txU     l A q?} % `h   ` m         _ 1zN  [  )v      +  B`  ( Q8s h  ;  I0   U   ; Wsh nT #9 <6  9       p 0  [xI= 6  [     E  SZa  f   n-  #    r     _ <  *    9   P  `     N( q      [  p ;w       y \'Oh8    XZ    J  #   s  )       x D   &[  J    $  t8   k  <  ji          F     e<vM  T      6w f%   w+   3 \*   `n  '   ~   dB  d      4SqG  d y  k *    f          3 Bb_h y   6     #u   2 i    BJ        K NY   |AqM P   $Se {   ?    1   bE  Je7 c  t    4    <     Q  D 1+ e2 Cr    z    )N  c  l   W   h   S   jn   :7   Kp6D  }   t \   Nz_L  o V2 x 8    e  j UB!    #)*    M   D c, N; K     ViQ   3   [ (q     )X   Ri  ` U} O   \ ~;4 *b    b V    -  k"W       o    |  $ 8 I i g"  x'  ? deo 2   t<  J;r  r       >  @           wv  e^ j 2KH.    Kz z     M    (a[S   c#  H V      cg:         d X }   i  ~   X   4p  @*d7   (G +     "e    3] s  W /      p     ^   N &     S  ^  'eLm5 s   n ik= =8    V    j'  ,d Z`sL (Z{p < eF} 5     +f y(        !  iYdm      '|  B ) wr  $ Dx-  sW i   p 6   T   |]| e &          Vk j  c I r`?EJ   F/     6 Ju  \Q         %I  r"  V  8-  Y  N   @    | y-e l $ A  /    p$     x MI i   <   O   u  Rc{j  v      ^" B %@ f   G)g 4k7 c  $6  :        s    2.  6  p 0   4?\G  d   O} S   V  vP V%   8 (  6\      v    T   E   Zu  MhS 5( 3  -?+     G i  54 Q .    ZEYl _   G     /       4  :&        C8I 2   4o    | $\       F 2  c /    P         =   vit  4      j7  _ P[8 r    7   sB  y  w    3    S| zS  wi  &       W +a  T c : e aF77 O   > K) L   #      6 m J `   `^   9R@ a\6=5  M     /      ,81   T  > ?3   B     rl      V  T  % UT# l7    3l YJ       }  #sE f        8  ]    : h         `     .       ]  X  )y     @q   X    s)'  x m C  ]                ?X [t8B ?      ^ JJ Q^<  P   4    I r 2        S ha?  >   sa  | _    >  HT:    =I    Y     n      <i   AY"d  o}        m U:pDa       d ZK ItD>    Bqc ur  4m    Q  B G w'      J 4       W^b      }N    U e   6~ m  j*Z Y  r     ~  We    D  m   /l  "   o9    )  KJ     ojX   r  nN H    #V    a frW A   4XN  ^   |      Uj A        E  Q  B  %9D  i+[ !   v IT_u  4Du }$0   i  b    ^] X   O i    '       P<p    4g SHY         _  &    aa  Y W< O        %i;     Tvj$  8  yF w     %    |    8  <+ 9 #   w ` |  Zq _          u    T8/   m N     Nw ! :a K     ;  Y   0 /   {C 6Fa  = J l     `  1h    >x  u >JQ  a5. qg   u {  h pp)h  iK z    /\ 6$k  7#    4!@lY3  /a   n     K S b %HYxbY >       n| ?[ Z ]    A    @,]9   %       :    wq_  A &   }A  C     "K    ; Q p  1          Y       d  "96   ) ud     ^{ 7 4   D       5  6      hM  )2}         5x    `  3     |O Xcf d5n  t  !y Kv    ] ,Dx L ,,|h" Gd   <  N   '      w J7V     |  ` E      q 1I   Dsg.         Se _1       |  l^  vY   of]= P   a        Qe 9        - [ ,~  $ X      8ci YS *_ p  3?        R   r  CL4          ) L            v   g=<k   V< (    @dm j!|6   O 9  %    v  pO F  u     1K y N         Q  Y"  T    Z NBw ^ d   4  u [ <  ;  Lt   | (    :   U~ \ S   ;   g1 B   2   xl#    G      o` "| +         Ud   g:         F h Q% )lk  |     P    FR      J t  d      \ -  <  [  _ G  / v`  pOX:k X  h      k   ! (    c | k  P  t >    $u Z   C I  Y p)3 :  V    !Xm 8   n  ]kQ  F |   h      0 a   wW        ^               [_    \   ~ 6    qGp T +fT4 dg hk0     I     T 4  " "  |) e   3m   ,   I m       \  =    _9 s'   },  K   >    S3o  nde /  `9    $     A c  rr     j  DJ    0b=     l  ;y y   }kz  . +    g i":Y@   O ?       #      BB`V   8  mM 0Zf B    4   ) O    #      _eW- O     ;.   l5YC~    }  SK^g  ! "        3   { h   UU  G  .O         (      4x  g H  hf    2  ! @ z `  8  g s     $ Kw   9   o]     G }? G l[ V   An -,?P    &  f3 p T  i   < X    R  W   Rq~ $    Y     QYm z %eH/G  +  v ` G": <D 5B      6GK  e    d;  U       h !  y  - }   @ X   g4 PbImQ}  ^  z      ( TY{:;   -     !      f+    z  v VnuW  S%         kwI  OR v H   P    ) #  l>M   B\ Y!          O       Qs$.   } k; b)@Xi _i  X   hU  59h   C U     4<     5 "y     c4          U    & , E  1?~    X    \   O    ,S O  U n t    G|  j)   p  k @= 1 B5-   \v   _  U  p     ]^;_    YvD $     a3   U   1   s)HP   W {2H Fh  k @w G      P @  WOC   ! ;F| M "'Bb    ) * kcx   K= txv} "goL6     J/7QN )h q xS8w  w' r  C      [    {   4  f   1 2W  : b  t /4   [2        U   1d    6h m    L           > T H      <    A .p 0 k q vZ  9   H [  [ Q KFK--  9    v KX M~     (    I  <-so1u      -        hB  !>  %H   !  "   H NvW     &  p iHJ Xzx       ?G=+  3   I PF | ;  / , U    D  o<   =     Ut  I5   " M_ . dX3    c )l H   gn   v k  o  NJ Z  m\    +tdf[     5 }      _  *  ,OC u   rW :   F  9      8:    7  b qY   d =]       ;  [ J   Ed  ?  r   t          n^      pB r        {      Lx l x   x  = vp  W kt      i #v  4  `     G  y 14q@ J? a   Kxd R U  L1   c  1      s! ( mJII 5   6     a      =     :  j   c  ^  TH     ( "D_ B1 < x _ 4]  {   H #y .     ^wtw   fm       Y        X [; dq -" c     (     (x CB   GYo=A  b        zi Y|$ "/.  l5  X|   Q    F   :x   dj    eS {    p  *xU ]r G 22> |   3     dP+v   -    `W z,   N @        4z  Vx& #&   _) s          #(y (@      9Q b*   b^0        a [Q   [^1    ,   !( w    t@]   q k ^q   M j  s n    u$1    @  o      PU     K  [  m     . ?   'y    :   "        i     Z.Q GD         "   W P y        3e S         M{[[V  d   t U    '   Y  )    C   *8     MO C   [ 0 nF   L '      3[j      $     j ]     k    (-  wSi      L= y<   u  4nU    y      p   1_Q9x C     ]h     h l | H  QL  q         e          z  [  ?  u  f ?%G #(   pt   h 6 )^ #  9   v   U.    p \g  C   d  G   | R    Q           <I      ew   :    {         ?W R       HS? h e  F A hq # L         e  3              I    /     \_               :y M   _ $`NQ     { %  jP  \   ]y     > -|  p    @  W    *      y  Zu)  M    ^W2  1 d   T @   5P   N HiF  I @ f b @ Z 7;  lO\   ^C [ 8 ?  *   |        A    |y  E" u X g 7 R      S     5  +t   Z_=TK7 a |    6     T           @3   9 P ~QZ + R;i[!  <Q   MM  sGJ    V         %   x   g  ~  '    n &      B$   @ gy lM  C f  7  [ k  ^      BD   Y  %  1          jP  J   &yt    e  s c}f #% x ^GK  ^ 88   E B  5 Vm     j SK    l   RP   K%  >    yB       z w     I%# K   T           -  t   O A    ` Y   !a ^P>n   `   z    Q    O o       uca| `l4w    j   X   A & : $ 9Q  "+q~  P   m 0s     W}b^    3    "H7z] +GV\ O   z[ gg      Sas d B         ]   vT L&D  _A7w 5y         *  { P    hi zt    f/   gg < ]@  iE+ & K   y#  m~*q     K       %    =C  MR1$s|     N C T J  B y  ; R H /           >  $Q  \k7    e10 98  Y~      g BJIq  jw   l2           V ?    ~m   0(b F]  Q  D   Q;   4I mXa   +Fih! U     Te <     ]j  T{    `C  3   oD4         &    R%   + LL  })  }    n O   O     E         W?      A _      ]   mpOZ j  B  % F  dp4}   g   Bh    Y~ 0 [v   ]5   wq ;    .  ?   $ _        :        ci{       AYl      N  m     Mn "z Y    W    cH  I E      t 0  AO7  r    % v  > E  o S 9o     b >y D      , c E 1          rz * P '   u yz\  s    +l  (  ^  Q b 0M   :-  Vs   |O4 K !w B P :    b qu?+   (      z m!     ?    ,  e Z     t> z 7 V    [  Y  |4Q| < oKM a 3j t?       pP /    E     j   A *  ;             $. ?  t   n            2  J       R      s     rX} o    P  l  _ g   T WGN # 64S^ ^ 5 rrR     6K     VZ  p    g mh  * q  + " D   i ,a ZL  M * A  m       n\     K v[     E   nnm"  D  N9         R   8p *       7  F&Z  m & ! =   [ UV  A  ` Y  `m)    ov  i 4 q  {@Si. (j      \ $ [ h       J|     p  2 )   i  E"    3  6  ~  r    j     o BK @. X        19v  aC V C1/ p     o{8R Y L^ F:   u     !     w      {   >  F J"      t t8J -      H  '!:&    G  I T\  g   kzauN\ XLX   \   &  Z a        >    t    76#         %     `7  v   o         -  9  %        '-x $!     3 3 4  o E   ._  kZ5  ~ L  _  u    5Z  N M b  }  6~  &R q yj om s    3  m      P - 4       zZ a   ^N       O G mi )    b     @``   D :  ;G;  ,   !4  W 3  01*  ~   ^ e    z:sUi     ?%           MVt 5  nD      YE      e OD P V{~$   y    Q    y      A   m     1    c  ~  )   ) o     Ke1  otQ  a  7}k  mph        z   r  m   lP3,  x s  }9   Z    N.     JG   xO Sa@  YV  v  (+               ox             .O rcc|k7Z 6         F  ZI  4l   .#   c6  3F    e  N4;$ ?B iR  LPV &A    {5 L hCE i     ?B7       2Y    0   (W:   y      !5 6P    PD  tR    T  C3   Z  4-   2     @     3   8Mb      : HL*:      Sw  [    .S    1 0 u      3   t         m o  Z  M:'Z > x  ] X   6^    ;*>u9]! 6      y(e  +    ?  k    2 R     b!6&    [--         ]+; 7:u   6       D20 \7   {<   @  ;n wJ$ a Gp U          ; a 7  r L    ~N!=[ InSc J  3i  6  Bh  &  T    #6U  ] )W FW" s   l    ) L     k  F_ M #   5! ^   / T6    !    cNH " k@   Y7  ) MsV       +6   C(      _ 2@    y X$  V5     t8  ^    4 SJ           q )sS i& J    j  5   /   Gg   !t    )    F/!    T/  =\# s ?-<      ^  ]   p b[   2j a     <  Q>  C  EHCh .     x  ) +[^^ J LF   :     *         s  X%Y   CT8 f ~ pz   DF  !'   f   m k D2P !  2 9 07  n~  j  .KJ7Z `: r'   r r&\  s u 8     .  L    g  L   -   m-     i? ^h     t N#1  /}  UlR    0    E  ]E8 e     Q;
      InnoDB: End of page dump
      2018-04-04 10:51:38 7fd87f7fa700 InnoDB: uncompressed page, stored checksum in field1 2521915693, calculated checksums for field1: crc32 2319517863, innodb 1156539104, none 3735928559, stored checksum in field2 3127217663, calculated checksums for field2: crc32 2319517863, innodb 3127217663, none 3735928559, page LSN 0 1633617, low 4 bytes of LSN at page end 1633617, page number (if stored to page already) 307, space id (if created with >= MySQL-4.1.1 and stored already) 0
      InnoDB: page type 17855 meaning INDEX
      InnoDB: Page may be an index page where index id is 12630490021493489517
      2018-04-04 10:51:38 140567828735744 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html for information about forcing recovery.
      2018-04-04 10:51:38 140567828735744 [ERROR] InnoDB: Ending processing because of a corrupt database page.
      2018-04-04 10:51:38 7fd87f7fa700  InnoDB: Assertion failure in thread 140567828735744 in file ha_innodb.cc line 20704
      InnoDB: We intentionally generate a memory trap.
      InnoDB: Submit a detailed bug report to https://jira.mariadb.org/
      InnoDB: If you get repeated assertion failures or crashes, even
      InnoDB: immediately after the mysqld startup, there may be
      InnoDB: corruption in the InnoDB tablespace. Please refer to
      InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html
      InnoDB: about forcing recovery.
      180404 10:51:38 [ERROR] mysqld got signal 6 ;
      This could be because you hit a bug. It is also possible that this binary
      or one of the libraries it was linked against is corrupt, improperly built,
      or misconfigured. This error can also be caused by malfunctioning hardware.
       
      To report this bug, see https://mariadb.com/kb/en/reporting-bugs
       
      We will try our best to scrape up some info that will hopefully help
      diagnose the problem, but since we have already crashed, 
      something is definitely wrong and this may fail.
       
      Server version: 10.1.32-MariaDB-debug
      key_buffer_size=1048576
      read_buffer_size=131072
      max_used_connections=0
      max_threads=153
      thread_count=0
      It is possible that mysqld could use up to 
      key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 63044 K  bytes of memory
      Hope that's ok; if not, decrease some variables in the equation.
       
      Thread pointer: 0x0
      Attempting backtrace. You can use the following information to find out
      where mysqld died. If you see no messages after this, something went
      terribly wrong...
      stack_bottom = 0x0 thread_stack 0x48400
      2018-04-04 10:51:38 140568167758976 [Note] InnoDB: 5.6.37 started; log sequence number 1636206
      2018-04-04 10:51:38 140567774230272 [Note] InnoDB: Dumping buffer pool(s) not yet started
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_RSEG' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_MUTEXES' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'FEEDBACK' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
      2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
      2018-04-04 10:51:38 140568167758976 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
      2018-04-04 10:51:38 140568167758976 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
      2018-04-04 10:51:38 140568167758976 [Note] Server socket created on IP: '127.0.0.1'.
      2018-04-04 10:51:38 140568167758976 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
      Version: '10.1.32-MariaDB-debug'  socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock'  port: 16000  Source distribution
      mysys/stacktrace.c:267(my_print_stacktrace)[0x5556981b2622]
      sql/signal_handler.cc:168(handle_fatal_signal)[0x555697b4c68d]
      /lib/x86_64-linux-gnu/libpthread.so.0(+0x11f50)[0x7fd893752f50]
      linux/raise.c:51(__GI_raise)[0x7fd8909bde7b]
      stdlib/abort.c:81(__GI_abort)[0x7fd8909bf231]
      handler/ha_innodb.cc:20706(ib_logf(ib_log_level_t, char const*, ...))[0x7fd889703f97]
      buf/buf0buf.cc:4939(buf_page_io_complete(buf_page_t*, bool))[0x7fd88961f934]
      buf/buf0rea.cc:228(buf_read_page_low(dberr_t*, bool, unsigned long, unsigned long, unsigned long, unsigned long, long, unsigned long))[0x7fd88963c3f7]
      buf/buf0rea.cc:450(buf_read_page(unsigned long, unsigned long, unsigned long))[0x7fd88963c9c5]
      buf/buf0buf.cc:3185(buf_page_get_gen(unsigned long, unsigned long, unsigned long, unsigned long, buf_block_t*, unsigned long, char const*, unsigned long, mtr_t*, dberr_t*))[0x7fd88961b816]
      btr/btr0cur.cc:612(btr_cur_search_to_nth_level(dict_index_t*, unsigned long, dtuple_t const*, unsigned long, unsigned long, btr_cur_t*, unsigned long, char const*, unsigned long, mtr_t*))[0x7fd8895ecccc]
      include/btr0pcur.ic:439(btr_pcur_open_low(dict_index_t*, unsigned long, dtuple_t const*, unsigned long, unsigned long, btr_pcur_t*, char const*, unsigned long, mtr_t*))[0x7fd889819031]
      row/row0row.cc:745(row_search_on_row_ref(btr_pcur_t*, unsigned long, dict_table_t const*, dtuple_t const*, mtr_t*))[0x7fd88981ac50]
      row/row0purge.cc:105(row_purge_reposition_pcur(unsigned long, purge_node_t*, mtr_t*))[0x7fd889813f9c]
      row/row0purge.cc:150(row_purge_remove_clust_if_poss_low(purge_node_t*, unsigned long))[0x7fd8898140db]
      row/row0purge.cc:213(row_purge_remove_clust_if_poss(purge_node_t*))[0x7fd88981431f]
      row/row0purge.cc:591(row_purge_del_mark(purge_node_t*))[0x7fd889814da3]
      row/row0purge.cc:860(row_purge_record_func(purge_node_t*, unsigned char*, que_thr_t const*, bool))[0x7fd88981569b]
      row/row0purge.cc:916(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x7fd889815892]
      row/row0purge.cc:998(row_purge_step(que_thr_t*))[0x7fd889815b27]
      que/que0que.cc:1079(que_thr_step(que_thr_t*))[0x7fd8897b51c1]
      que/que0que.cc:1141(que_run_threads_low(que_thr_t*))[0x7fd8897b53c7]
      que/que0que.cc:1184(que_run_threads(que_thr_t*))[0x7fd8897b5556]
      trx/trx0purge.cc:1229(trx_purge(unsigned long, unsigned long, bool))[0x7fd889868f8e]
      srv/srv0srv.cc:2724(srv_do_purge(unsigned long, unsigned long*))[0x7fd88984eb5a]
      srv/srv0srv.cc:2870(srv_purge_coordinator_thread)[0x7fd88984f0c1]
      nptl/pthread_create.c:463(start_thread)[0x7fd8937485aa]
      x86_64/clone.S:97(clone)[0x7fd890a7fcbf]
      The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
      information that should help you find out what is causing the crash.
      Writing a core file
      ----------SERVER LOG END-------------
      
      

      As you can easily see the page is encrypted.

      Attachments

        Activity

          jplindst Jan Lindström (Inactive) created issue -
          jplindst Jan Lindström (Inactive) made changes -
          Field Original Value New Value
          Rank Ranked higher
          jplindst Jan Lindström (Inactive) made changes -
          Rank Ranked higher
          jplindst Jan Lindström (Inactive) made changes -
          Rank Ranked higher
          jplindst Jan Lindström (Inactive) made changes -
          Sprint 10.1.32 [ 235 ]
          jplindst Jan Lindström (Inactive) made changes -
          Rank Ranked lower
          jplindst Jan Lindström (Inactive) made changes -
          Description Start server with encryption setup and issue:

          {noformat}
          set global innodb_encryption_threads=4;
          set global innodb_encryption_rotate_key_age=1;
          set global innodb_encrypt_tables=OFF;
          {noformat}

          And wait, you may monitor the progress with

          {noformat}
          select NAME from information_schema.innodb_tablespaces_encryption where MIN_KEY_VERSION > 0;
          {noformat}

          If that is empty you can do clean shutdown and restart with encryption setup removed. But, above wait condition might not be enough i.e. in-memory encryption setup shows that system tablespace is unencrypted but it is not yet on disk.
          jplindst Jan Lindström (Inactive) made changes -
          Status Open [ 1 ] In Progress [ 3 ]
          jplindst Jan Lindström (Inactive) made changes -
          Sprint 10.1.32 [ 235 ] 10.3.6 [ 237 ]

          After investigation it seems that encryption threads are still encrypting system tablespace when shutdown happens. This seems possible at point when encryption is disabled and we start waiting tablespaces rotate to unencrypted state. So we should wait until all tablespaces have rotated to correct unencrypted. state.

          jplindst Jan Lindström (Inactive) added a comment - After investigation it seems that encryption threads are still encrypting system tablespace when shutdown happens. This seems possible at point when encryption is disabled and we start waiting tablespaces rotate to unencrypted state. So we should wait until all tablespaces have rotated to correct unencrypted. state.
          jplindst Jan Lindström (Inactive) made changes -
          Sprint 10.3.6-1 [ 237 ] 10.3.6 [ 240 ]
          jplindst Jan Lindström (Inactive) made changes -
          Description Start server with encryption setup and issue:

          {noformat}
          set global innodb_encryption_threads=4;
          set global innodb_encryption_rotate_key_age=1;
          set global innodb_encrypt_tables=OFF;
          {noformat}

          And wait, you may monitor the progress with

          {noformat}
          select NAME from information_schema.innodb_tablespaces_encryption where MIN_KEY_VERSION > 0;
          {noformat}

          If that is empty you can do clean shutdown and restart with encryption setup removed. But, above wait condition might not be enough i.e. in-memory encryption setup shows that system tablespace is unencrypted but it is not yet on disk.
          mtr test case:

          {noformat}

          --source include/have_innodb.inc
          # Test uses restart
          --source include/not_embedded.inc
          --source filekeys_plugin.inc

          --disable_warnings
          set global innodb_file_per_table=OFF;
          set global innodb_file_format='Barracuda';
          --enable_warnings

          call mtr.add_suppression("mysqld: file-key-management-filename is not set");
          call mtr.add_suppression("Plugin 'file_key_management' init function returned error.");
          call mtr.add_suppression("Plugin 'file_key_management' registration as a ENCRYPTION failed.");

          create table t1(a int not null primary key, b char(200)) engine=innodb;
          insert into t1 values (1, 'secretdata');

          --echo
          --echo # Restart server with encryption
          -- let $restart_parameters=--plugin-load-add=$FILE_KEY_MANAGEMENT_SO --loose-file-key-management --loose-file-key-management-filename=$MYSQL_TEST_DIR/std_data/keys.txt --file-key-management-encryption-algorithm=aes_cbc --innodb-encrypt-tables=ON --innodb-encryption-threads=4 --innodb-tablespaces-encryption --innodb-encryption-rotate-key-age=15
          -- source include/restart_mysqld.inc

          --echo # Wait until encryption threads have encrypted all tablespaces

          --let $tables_count= `select count(*) from information_schema.tables where engine = 'InnoDB'`
          --let $wait_timeout= 600
          --let $wait_condition=SELECT COUNT(*) >= $tables_count FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND ROTATING_OR_FLUSHING = 0;
          --source include/wait_condition.inc

          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;

          --echo # Success!

          SELECT * from t1;

          --echo # Now turn off encryption and wait for threads to decrypt all tablespaces
          SET GLOBAL innodb_encrypt_tables = off;

          --let $wait_condition=SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0 AND ROTATING_OR_FLUSHING = 0;
          --source include/wait_condition.inc

          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;

          --echo # Success!

          --echo
          --echo # Restart server with no encryption setup, there should be no crashes
          --let $restart_parameters=--skip-file-key-management --innodb-encrypt-tables=OFF --innodb-encryption-threads=0 --innodb-tablespaces-encryption
          -- source include/restart_mysqld.inc

          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;

          SELECT * from t1;
          DROP TABLE t1;
          {noformat}

          Causes following crash:

          {noformat}
          encryption.innodb-remove-encryption 'innodb_plugin' [ fail ]
                  Test ended at 2018-04-04 10:51:38

          CURRENT_TEST: encryption.innodb-remove-encryption
          mysqltest: At line 53: query 'SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0' failed: 2013: Lost connection to MySQL server during query

          The result from queries just before the failure was:
          < snip >
          mysql/innodb_table_stats
          mysql/innodb_index_stats
          ./ibdata1
          # Success!
          SELECT * from t1;
          a b
          1 secretdata
          # Now turn off encryption and wait for threads to decrypt all tablespaces
          SET GLOBAL innodb_encrypt_tables = off;
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;
          NAME
          mysql/innodb_table_stats
          mysql/innodb_index_stats
          ./ibdata1
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION <> 0;
          NAME
          # Success!

          # Restart server with no encryption setup, there should be no crashes
          SELECT NAME FROM INFORMATION_SCHEMA.INNODB_TABLESPACES_ENCRYPTION WHERE MIN_KEY_VERSION = 0;

          More results from queries before failure can be found in /home/jan/mysql/10.1-tmp/mysql-test/var/log/innodb-remove-encryption.log


          Server [mysqld.1 - pid: 24973, winpid: 24973, exit: 256] failed during test run
          Server log from this test:
          ----------SERVER LOG START-----------
          2018-04-04 10:51:17 140011536948352 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24666 ...
          2018-04-04 10:51:17 140011536948352 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
          2018-04-04 10:51:17 140011536948352 [ERROR] mysqld: file-key-management-filename is not set
          2018-04-04 10:51:17 140011536948352 [ERROR] Plugin 'file_key_management' init function returned error.
          2018-04-04 10:51:17 140011536948352 [ERROR] Plugin 'file_key_management' registration as a ENCRYPTION failed.
          2018-04-04 10:51:17 140011536948352 [Note] Plugin 'partition' is disabled.
          2018-04-04 10:51:17 140011536948352 [Note] Plugin 'SEQUENCE' is disabled.
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using mutexes to ref count buffer pool pages
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: The InnoDB memory heap is disabled
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Compressed tables use zlib 1.2.8
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using Linux native AIO
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Using SSE crc32 instructions
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Initializing buffer pool, size = 8.0M
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Completed initialization of buffer pool
          2018-04-04 10:51:17 140011536948352 [Note] InnoDB: Highest supported file format is Barracuda.
          2018-04-04 10:51:18 140011536948352 [Note] InnoDB: 128 rollback segment(s) are active.
          2018-04-04 10:51:18 140011536948352 [Note] InnoDB: Waiting for purge to start
          2018-04-04 10:51:18 140011536948352 [Note] InnoDB: 5.6.37 started; log sequence number 1629444
          2018-04-04 10:51:18 140011143952128 [Note] InnoDB: Dumping buffer pool(s) not yet started
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_RSEG' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_TABLESPACES_ENCRYPTION' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_MUTEXES' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'FEEDBACK' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
          2018-04-04 10:51:18 140011536948352 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
          2018-04-04 10:51:18 140011536948352 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
          2018-04-04 10:51:18 140011536948352 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
          2018-04-04 10:51:18 140011536948352 [Note] Server socket created on IP: '127.0.0.1'.
          2018-04-04 10:51:18 140011536948352 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
          Version: '10.1.32-MariaDB-debug' socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock' port: 16000 Source distribution
          2018-04-04 10:51:18 140011536009984 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Normal shutdown
          2018-04-04 10:51:18 140011536009984 [Note] Event Scheduler: Purging the queue. 0 events
          2018-04-04 10:51:18 140011206850304 [Note] InnoDB: FTS optimize thread exiting.
          2018-04-04 10:51:18 140011536009984 [Note] InnoDB: Starting shutdown...
          2018-04-04 10:51:20 140011536009984 [Note] InnoDB: Shutdown completed; log sequence number 1632558
          2018-04-04 10:51:20 140011536009984 [Note] Debug sync points hit: 1008
          2018-04-04 10:51:20 140011536009984 [Note] Debug sync points executed: 0
          2018-04-04 10:51:20 140011536009984 [Note] Debug sync points max active per thread: 0
          2018-04-04 10:51:20 140011536009984 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Shutdown complete

          2018-04-04 10:51:21 140671079197824 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24760 ...
          2018-04-04 10:51:21 140671079197824 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
          2018-04-04 10:51:21 140671079197824 [Note] Plugin 'partition' is disabled.
          2018-04-04 10:51:21 140671079197824 [Note] Plugin 'SEQUENCE' is disabled.
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using mutexes to ref count buffer pool pages
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: The InnoDB memory heap is disabled
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Compressed tables use zlib 1.2.8
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using Linux native AIO
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Using SSE crc32 instructions
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Initializing buffer pool, size = 8.0M
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Completed initialization of buffer pool
          2018-04-04 10:51:21 140671079197824 [Note] InnoDB: Highest supported file format is Barracuda.
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: 128 rollback segment(s) are active.
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Waiting for purge to start
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: 5.6.37 started; log sequence number 1632558
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #1 encryption thread id 140670677280512 total threads 4.
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #2 encryption thread id 140670660507392 total threads 4.
          2018-04-04 10:51:22 140670685673216 [Note] InnoDB: Dumping buffer pool(s) not yet started
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #3 encryption thread id 140670652114688 total threads 4.
          2018-04-04 10:51:22 140671079197824 [Note] InnoDB: Creating #4 encryption thread id 140670643721984 total threads 4.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_RSEG' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_MUTEXES' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'FEEDBACK' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
          2018-04-04 10:51:22 140671079197824 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
          2018-04-04 10:51:22 140671079197824 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
          2018-04-04 10:51:22 140671079197824 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
          2018-04-04 10:51:22 140671079197824 [Note] Server socket created on IP: '127.0.0.1'.
          2018-04-04 10:51:22 140671079197824 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
          Version: '10.1.32-MariaDB-debug' socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock' port: 16000 Source distribution
          2018-04-04 10:51:34 140671078259456 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Normal shutdown
          2018-04-04 10:51:34 140671078259456 [Note] Event Scheduler: Purging the queue. 0 events
          2018-04-04 10:51:34 140670748571392 [Note] InnoDB: FTS optimize thread exiting.
          2018-04-04 10:51:34 140671078259456 [Note] InnoDB: Starting shutdown...
          2018-04-04 10:51:36 140671078259456 [Note] InnoDB: Shutdown completed; log sequence number 1636206
          2018-04-04 10:51:36 140671078259456 [Note] Debug sync points hit: 2182
          2018-04-04 10:51:36 140671078259456 [Note] Debug sync points executed: 0
          2018-04-04 10:51:36 140671078259456 [Note] Debug sync points max active per thread: 0
          2018-04-04 10:51:36 140671078259456 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: Shutdown complete

          2018-04-04 10:51:36 140568167758976 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld (mysqld 10.1.32-MariaDB-debug) starting as process 24974 ...
          2018-04-04 10:51:36 140568167758976 [Warning] Could not increase number of max_open_files to more than 1024 (request: 4162)
          2018-04-04 10:51:36 140568167758976 [Note] Plugin 'file_key_management' is disabled.
          2018-04-04 10:51:36 140568167758976 [Note] Plugin 'partition' is disabled.
          2018-04-04 10:51:36 140568167758976 [Note] Plugin 'SEQUENCE' is disabled.
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using mutexes to ref count buffer pool pages
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: InnoDB: !!!!!!!! UNIV_SYNC_DEBUG switched on !!!!!!!!!
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: The InnoDB memory heap is disabled
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Compressed tables use zlib 1.2.8
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using Linux native AIO
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Using SSE crc32 instructions
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Initializing buffer pool, size = 8.0M
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Completed initialization of buffer pool
          2018-04-04 10:51:37 140568167758976 [Note] InnoDB: Highest supported file format is Barracuda.
          2018-04-04 10:51:38 140568167758976 [Note] InnoDB: 128 rollback segment(s) are active.
          2018-04-04 10:51:38 140568167758976 [Note] InnoDB: Waiting for purge to start
          2018-04-04 10:51:38 140567828735744 [ERROR] InnoDB: Database page corruption on disk or a failed file read of tablespace ./ibdata1 page [page id: space=0, page number=307]. You may have to recover from a backup.
          2018-04-04 10:51:38 7fd87f7fa700 InnoDB: Page dump in ascii and hex (16384 bytes):
           len 16384; hex 9651612d00000133ffffffffffffffff000000000018ed5145bf000000018a4108a7000000005d8b2a76e34137e5190c09f2627d33a05ad2bcb86c1291e29191473eaf4883c15e3c3f6d055b3fe4520fb6cd3fdaf392b852dfa108b1886966fee2d30ce32fd607a71c62e16a40b633dbfcfa1b550c5280e2e1b4b6a7fb1d156753832ba6964d87c644422539c6ded02507e753ae5620451943c7eab13f0be4a0e4fa572af1147223bb3aa921b64d51fe800dd7f443f11dfd9e3d930c7dfe3a98e61f47bb078c9184c88416ce6faacebf0e3d8739396055b5a67dc72ed8c7ddfbe96e59bc26be2c955857b4c0877b5a4e72a7e6b8481d20c3563f67df68d8bf14ed0de1bbe88d4087d72c9dca27fd8e3fd21097fab3e4624452a1608bbfa63a7e74b8a4417df7180bd89e7d6d70b3d28f46c7b0df96774ae486f889b70956684f53b69767ec9c729bb4cfc0ad37991723e5a399898ae87f75814ebcb912e860e87019b567302c0a4727ec925ca13852bece07ed200f50dfb7f3a230507bce2fae787650c004a9647c4734f230bb8a93552dff4afde465d723869448d2a85d4863a4292377875f6bf38070505ffe202a286970696cc1e79e02addcfa0d8d0b4f40607b8b1f2f10355153de6aa2d230bf2c22bef1f8f49e543dd1e391f6f10d6dcf89ceac6f7bc93fe963c20e7f3f8c4512dc5632d7d2177245beaa6f605f2878ecea2f5c5f29f08511c5585acbb4094aea7ad29a4e6ba6d438c016b3905da754ada79f4399db4fd4a3f5d18b5353b2d2c98c70f6ab2e4aab89142bc1754a6ea0cee4a9b6849f6a12503f03d69c5119d7afa91c10a122c4a934204d1bd6cdb65a9b60949388779f0c9eb996522bc7b3502ef136dfc2bfcac1126b3823bfb786c94c0e9cb0d9cd8faaf1b08a1d49f9dda437dae042a6a5afb45855553f4e1ba0505a9b8f77108a13a1f617ba3bdff34101ca058d471a486be9c57198036a387a2a89e2ee2521ad6ff2927c4e91e10e1e652cd8dd524e63c989be892b88271bafd9967f382efcd4831199e0f24c63f88f2a619eb1bd28489fb1158cb99ecfb82ddfda0fb8ebf471bddcdff1e383847fd8b6dcdd97a4dea3be70b5c5a313e16f08556041712e04317dfaa8d43dc48555bcebb771d4c3e09dc012b9a194ed92651b915c4db2916d11b23050bcc39f4ebda3fab2a883ea43f6b830b304859b0d469fa801fe743b66f4160d20e7492682cd4172bcf656f36552f35cd7cbab780342e20b5ac5f53679baf5b1a381855973e2aed12714d452c64b524b038846c30e0cb151dea59ffaea956c3c740bc98d5e2472fe24deda052d3c3b172f505bdd271a0809464c0d5be9787eab2d7fed620dd72a0101e7cfb3aae2000a380fd1ab587306a954dadf8d8d6773d9c502b6cadd534c54d647d58980f6612d9eedd4235faab90fc8423a7b412822eeb80398f8d89a7f5b63839da16132e35f12e399c3d09b1b5e67e5d3b73d36988a1f432a8386f78ca0b7dffa02c8e9343e725b0262957b09a5a6c775f77b9faf631c361a78e54d526f560be767650d67a6a7cd16476f2c57c5fbf62b7f7a6381561e8a2266c7848ab1bd656814fd6babc77f275da64b4fba965fc10a052b56b18ba367c3062d294396ab0fecb8b6c58f788bcb60e46b75c616a03506e17566ca1d21e28b5b77600ac0fa0bac1555b23c4e7b2348670600fec023b258d961fae1763f6d840cdb45b73b3da0c728440b0b45a37b7e33a601ef3c2afadb45cf08ae38ca05d50cbefdcfd982f4395688bcc77912c9244acd12393e705f68d70af3b5b8b64f379cb7b7829be2659562f2b46cc4a92370f1f14b394c14fde60129fc5825c8b6851bbf474f523922d2de5b3735bed7ea19a90e4eedc65e4461ea3138c414b6d01ad03687536f51eed7cb5eb2d77f7d91057ce3a413d292ad3a7641291607adf2bfbf2b8ebfd578005d835995dcf654120b3f8ef4de2d8e17dbd48983290f0769d8ef273496ac68fb5a18a13b3bd4d4305e0ba43fb99195287a397e05486495c51afa5526867a8b188e044a2ebd05da99d33baadb1edd6cae579bd1edd000394566469b5c8b25304f27a1de84e8807e8210e10a519d2fb8d8275413055d17f9638eb1c9d67670d897ec99c12f841b6160fbd22bdc18982a3034cd8576e578a979eb773197fe82f482b0bcf35edab474b50ea962b00255ed39cf6c9673aa53eda8e8ac0dd8fac345cd33f15ecf169969892e7261a81099b216c1bf1c7a04010c12cc1915d17c0b11954bf0bdb675fbada0d25d1b15562763a49bdabb6d3ff0c3a8ccc1deed7f08b7aa8ed3a17e0cb5a2853c4dc0e2522e2a0f6f0c7823c225522bbe2ad7ba2a9462205eb413ff7ab9864ffde2a84868f42511049bf354c9407940b316fae1fe74793e256edc6dffa993c3d4a3229bf322c62b584e18e20f95a3b5edd2c74a8415fa99e5fc2656edccca6695436e219952b5522e477e58854bd0595dc062f0f202989ffeed3f0e8210eabe33d4916bbd6bc601559ad917ad4305cf8fd4d8bd1c2563e5e054572380a5b24c6a2a0651e8b2653c23a544adeb2929a8add793e2d1c3b48302b32098dd702d9a67f4577da7a4737b7dba96afa92aee4d5aef0ae04c7f06dc5e424b77fe7d45d2a384a9422b0cad80991112a5c86f00762acfa3d316af6dedc8eb2d4623967c0eb1397648e21c95a49b9a5af89affce5c776cd75795f58b8aa51b452204b08ab4d4c99870554e1eb0fb822dbce7412308342b157c35663c5e469ea61e21078e70e6a730b78c24fc8e5771a4c84df87ebddf1ce280f739d00e51883896e97350f751f42f22893f336488c355aa1e63ddf6f82e643b7f2292927fbe354e140e3154099234479ff36b4ff308d2e1202c12f292d92d0e2ee7e691f7d752bc8049924c28f16a4558c9790712d8b6a0fef8fec5ffa4121bf7b5ee2baff096c81be162e89e2d7ba95af2a7d32cd8b3a364f457e8a54f71f6ebc0f25e802851bc6cd25c9e9afe77a0dc81522d846c123682a0dc8137ff6335f1e96009ea86a8a57000dacc2a23f0b7ff6279bd142879d9522f4e3450f01052c8dc4eb84a0a2f7ff7ce03370178b2e68a5a0a45de500fac3f1b159a49028ca6b2a64d35758314cd274a759e5a4f5c4000a9422d8bd08e5f5aeb203848f3e5225b96e582db16b84ec406c2693266ee480b51eb7b78b1c4439289fa4553c49dac82eabeee890e052b5712cbfb8371d5d8312a9661d8939b3ffb85e94f7f53f4f0a1f71f84bc00b06bf5beb90964d6c698f2f8e5b59685a4a9226a6800f6327be50e2d0c3db09f44d9585ede0d3c818463f660d70bc66188d1492062de981bd8f8e2fe323cda7beaf6c50e6c485e3cbf51a33185949954f20bab517c13f5562ff570776d7b9c578e3f2e2a3fed8822fbda493a786c950754adeb1e80967faf7b46cd3797a0318ac8d697cebf5854083357b290487196c62479ae804f73ebc3a746df9aa564391fb055300731b2087254f3d23d7033a572dd35aec04c554f776c626530a81c6f89a45a0674c717a69bf06dc963cbe9377edf5a1acf99bb1e1383459046f27f2ceb88eedda31598c3ce08ce322d779b40a9a5eb42e15d62ad1cb1a2bcb08e05fa3d834dd1696aeafcb9ae99a51ae46567ce180d880ce0d9ace1103ddde435b2bf0ca6dc97b98f888e2621455d60d39c03649a83fce203faf7d982d5b7770f581231b5c8a07d0279709bc5717f2b2cb17e136afc37be93d98ab7221ae8e974422c8d46b0b713ca2d8a4cdc08cec3f3d335c7c8fc4fdbc246133e924c58438fb654792c1b188156ea2fd1b11f9613463bd7c2bf037070b992625175c5805977d064abce20baf854e0b686672c7d46eb16d3a64387edab6c1ae9cfeee2989b844f22bc3c9517a6577502c121b5f2d85d342a3a387ce11aefa333b6eb681ccdca0c36557082686077d3715c8ffb9b20b6567aa0d2345d0d07e7c1e0c2a2db2dc62ca9afcecc3857d24be0b8d0b439613e3a7c91e977802e68ea60fd2cd8d62388a5c83cf4552307ec68e5bd98dec22510dedfc3c060799283e362b56a44e422a109f2b240d0450e4bb5005b15184dfa947ce43066804e70ac38107bdea25c6387c4caf2b9386e28619a65c6ce804b7d4227683d205ecb4ed43200b7ab107e7964047326959614b5f8d00da8d19d4f66ab9421ecb98bcf597824428ac49c9622cf2f8ef73aeca383f53963bd4e52477b545694ffb038397e8c11c44683687b5eb9aa9ba614dedb3ff08501cf2545209190720b9af13bf9e5319b71abef641284802bc13cdf3c73f958d4438222645d92073f1df9ead8a5b3ed03fda6b2e5194951c38dcbd634dab3a3ba625a86dc81e0fd9b426b57bdc902752c7bcb8f6efc439bab59de71d58f70012c35195f2fb836eae8ea05b77509d64123bb3eb918f1ca97f2aeec293065dbd64d95fc1abfb9e646cb6181e83dcbfb8338cfccf581ead8cfc874573b2d502a2ebbf12372b2f397cfe3637d913ed909f49f5132693974756e17a86a5c09b778881ea4f5c68a4e5c589f06056132a814bc56eb9d4f4bc1a408811d1f779df634dd06eeb95ce4cad404999a9b66e35252466e5e50b87be7fcca9499b4f2004adbd86aed94955181e0043e5ec039555f38af55e9bf418d280517845ea55729372e3f7c0673e357dd08f3598749752f64dc1611ca4de8818951d5807cc121c0a76ea229b616ba7d6114f9c9dac2f7f6fe16f34b81895b50ded6d81bf7cfaebd99af5d697491e7192c87265fdde1b35cfc459545ba422bdbc843cac7cacfaebd93d133daec64991b07b336e483cc58b14ba8a4643ed05ba4b36c5cea24a655e96100187772fc40e03a732994d3622534143d57212b73345972cdcfa8ed36f36e9626d35aa005bb18cceeae1cc3ac205b79df80c117910eaa79879408fde75f5508034aab79b75a46f62cf7ee180b2ee758e81a6b0fdb883911b89fbe0eb166f9e912bd7fd861b5a49cd2bcfe4df5252dab6c79e58acc643e7401b15c8ea15d2e6a18be5f1766c67cbf2006f25bf5facd25a374ada538aedacd2b8feb74cbce9d694734691f14e5f8dc9ece895f76759a36d5b38b1f3225f7955bc22545b82d13010dd8adc853f69e6464e96f13710aa0cc57688cb72980044e2d0f146e4ac4a5a4550b179f2ac02ec1054a57e98a14c48dda342ddc40da9069745841acb85599930c6cc8bc043f8f53dbbfa38c1de92b0a95f396b9b969d63eb9a4581a3b770b048e12256f6b8809b37940bd56be69ed7930d4891af427ceccaaea1d259096e72444a33576261c19eea4f1cde6518bb0ed552b9730657ea375c96c85a415711f80fcaa10fbaf2eaa9e6973f348a8431a1364e36835a896ca89892c4606836615f048f4cb5d30e726c92d0c5d766c13f4634254d1d8f2aeb60c77e6dd8a413d283e290173f9cd17cb475052547d4cfed965ae61077a9e95a5f8c3123f1946315f475edec2463ceccebec98d46c8f5b6f5a0340091fd5897cf908ca576442700781a1cfb6af08a6103c02b2c0ad714857a6945dd9cbeb1650a79fe8d21a7f87e9ba7ab793d42a8ed274b200e3c20e0d97f663d905bff3f1a81e366d5733d9d4919156f0cbdb5ad249aba202063d5637f6a812d5973a4d9dec367b3d0bf6432ea3227805b58fdb0c3ad6e3d2c90ccc88e72203d791c99b02345aff1230fb7780ea3c41694abeafd6b5093edc7fc90918679fe83309f4fa2821f6f8e5f5d3fc6a7f57a700faeed57ab777d859fa07da3c3d295b1841cc22c61cf2666343d91390d7adc5cd5044562e18335b986c19a32ecfe40db6b2670d61e3b020c8af52403dd088f6811fa4c654422dfd3b896763564bf04c62e06622025992d609dc5835bdc39aa8d480f731e97ae3c5ca1844e5b48e0f4f3197425fdc84b4d53af3e4184330586fa800f64329193c1342f62f8fdaea7b5800377c8e3b83973dd41914146fed26c0913b0f47bfab030177406326287ccd3088f2b5b6d282eb763a35cc814eee2db060ba5302f589dbd08a1de1fa05d03ee3aaa9d97428c30ccfbc38c905fa5c6bfead900f521f9c9aa681c2d549babd5b23c36dfbf57205762fda399ad2aa27b979f49fafdb8219e0fd01fc97936c261c38e6b45863c5b969109e91e3778bf345ad42a234abfa911ddbed4b27c2efea7663789ef9a63bd235358bd75fbdd1966b63af53701a43593d59feb9b9ee82e8510b327a0ce2e77dca740994a7e7c8b696564b3e3dde0f7ac22f21176cfcdd39a9197e64a6c23e5e35898109a81a7e75ca8d45e5c825a764e143552b031b9c131f296e25524079c328e63dbe606f34e2559ac45f2a1a41a9da06226a815dda64d8832eaa4ad204d591e028965e2433d633f1b989b7cf03d2c0980d787171650605018004d910fa9ff3a943d7d08d87c1dad7188c72f65d101712c398908071c90f8e2b0cb3be8fdd17dcb9277ffce709f5184edb653ed98e0b8624488c00d7bd605e2a84c1bcb6cb3bf117c781bd591845df7a3ed357ab1ff3c6c5c1fe6747ee9b1034c38a56ce33d7d363961a0bdb0f3a485a71522078484d78dd3795ab82de9e9bbadbc9a917d1247be6e18047d601e6ce28802012ae11181cbf2972c138fadfeb96f1b9b812f7290c26794321c36ab3ef83941cb57f69784895a029b98aee774cdc13b3d0a0fb71af8a4b85d07eefbbe72e64dd1b085487fe1f9099803df20d69273c3e1047204b954ec37f0c91812a74ccf9f2a586e481abdda584a2ce8e049d658192b83065b15a31257162282823c8bd06cb9057af62c8ad330f536f21b73ccef3b1ca77dc66db25f48de83f5c9ac1a9e6ff7ccef4e5180102a774290b9b45eb805d7e7389c28c3ab81f07cab876ff843e79d452893dac26d217ea057bfc3b4f82533d43fbf1ca24f151aa86450cc45ef941217c31e76c8df94fef0e893358a727698769c44a2d4bc3f919f6f78c3366b85fa01bc936fba7b44488cbf7a8990f2a10cc2c7559955effca06fb259e122402b2883eb5f412d33cab973c25788d787295d14d0f5a2e19bd939cc880d03e3be88cdae85e7083baf3260067c39d9a2b955447ee8b8c51e6fe62fdd57cf5a96fc5e4632799b9d063a3ac4bb2147e219657e924642bafe571324c2d82e3084db9c6b48ac71d4c83e22f1d9cfc611f51ed887e0708dd3f4d8a93f2c983019d4e5b7d9fd652cd95b7c785190ba3ada552eb7fcd18129333fa8f0fc4156a9d96651c919b4c91feeb5691a98d5c137840c4e212c55e741100dc41bdb39a13660e21ca9142736177fa3c0a9b5b7fbea86be6dc0ebba4e873aefc3cd67202b7deb4ac30e60dfa19b21211ad7866d239c3476d81f2d0851d39884c6e1b0f06313c2cca262c4ec2019fdd7bcbfe5c233b840cd8ee5aac86747694969b81d3bade08b77f21c3e5a1d49a0d8d5660668ea2c5cfe1d44ae8c7e4d5ee1ea95ab365329006679c90559873a409028ac0dc98437fc9bcc0d038ed9996ddf8e04f1739109d34ce6a4fb96f070a693394d3107f3d5d7915947f142c1146f6c6bdab5091914eb03b493be78df5d926e6ec7a683bebb708bc7cf8c7f83079e1ed4324ce671d23e6d48cde91a8628be79d1a3392fd2a42da9851728fd1d90501c7560d0db5d4ffcbf7260611c37ac9629086e6d0450895aa57959a077fcb7df97e37887b3bfc6828cd900b7d29308917dcd783f819d085e7ef8986f5bbdf81a546672eaea1bd800bd2f92530378d7bbee3f2b2249acd09bc6cad533dc4cda688bc514b50f35e3a8effc4cd197e6a0e1e7d3eded3ad75f2fceae661c5ac875616dc3412617f9fa7981a38b8b985f1f61ef8e209248bad7de9e44dbaed7f838054514b3ccd635db39a4e0b0f5381932e0a285b981f0797d56259db84e122be1377643716bd19efda64b6846e2a1270b6c697508197ca70ecafad2d3a5686d9bf8b7d3bb2732ba50bc03c953325557e977acb2033a70e60d3a98953a28628cb32f188a379a0c6aab077aef27c3529a87285ecc48fd1621938c863d0ee0dec48b03628e903bb8f6fd896f28cf82ac8c48ca0dccec6f93b2053b6771c75126c2f908ceb9e2cf03d8b68ded976fd1a4d196f9e8a622c7c15345688ea354c93309c02f410fb2453474cda761be5d862f5c77854332c9f84b39273668c21b07445b0d91046280507ddc8281a46b560adee6f2559105efb7daf3b18601738fae851a55112f005c6826f5b09880a26540f3248eae1fc9befda7647c474158f93be1d0f46c2d4a68ce69f6e9128bf101c05479ad7d528ac82bb4bc96fb0962550bd3a7a7e6b3136065b69b9b7007b148b5034b378df63b49646dd414962a8256594c1678f7ed0e8febaa26eb71a4019ad5c3374c580bd386d664e18a5a7a429c5ac6b2f4d1fcfddba5e06729665bb18c682450d569bceeaa3954425cce4bef50c0ce202315caa196563cb06ac725661c7ef086c2cb3cc06deb5284c2e59785fa840fa06ca587bb4e5e393bf97812effe6c8f2a37ae2cca01e1f96feb692a2d43e25dee546092f23aa37e18531117365c55e9ab8932adc05e63dfd1372e925dac956de306af27ca0a240ff8ada998fccfd80b1774b69cb839d65d73c900c6405dbc5a32ab2a09d2854878c9ca11557cc5b04d0d67601bab7a70bd920ef59d2c02fcb95a90a87ba5c100df9f29beb13e319cc19752f5d6c08d6899bb5ad2ec8350da18b2d23193b7da925213a6b6befa4b13d3e0d541271233dcd607a6d2610827feabbaff2a720b46bd7845f9a022610d0314ff7f315efbe957270136da32ec40a6f220ba706e860e7f0c9bd1beb92cc3b96afc2e4271b77e9433f019b215d64d7d4314668d8ea048e1edf8f5134f12cd93f077dae3c880f8e1bff25ba475633617d9e34726f47e66beef16463cdc21ebeba6905e22572d38ae19931154752060e354dd082214eda8c1f0da0f4de72a170b3ae55b1825a264ff669bdb6f51bc7339dfc6a7a4f981657b3c4205485ef19d5d519f995c0ed7cbdb64d96aa3f01a18c9b6658f05c0ddc4d8e818fe7365e81d3d85a40e646564369667cb2c3debe15c939ef426783845f4070a59ca8e84b254dfdc2d2f195c97a51c6f778ff0736a51df86ae10f0c8d779b0f896eb437cb75b9a2063e5d47d24db7d576639abdcaf230bc7633fd89f64b0ec81dfdb11547d7ce303384ee98288c51169870a7d9d7fbee08bc282eded25552a542fd40d0927b87e002b4d27217286792e40b9882f613fe385445f239ab5f9500a5491532fc651119d285ef9681c5cb6a7e80e588727e64a1f762b421cf1d4c15ccd18bcbcbdb6453074d256b41ce7f5100462e6b783a535dbd987da2a26d34c08fbc959aea7e09cb500e719851a958921ae7d8b8c81c270d465999e70d31fcec929a44edc915d6b1c24c6747fa408567129463bad3f3ae83d2c653b43c8d2aa15c01b3db58b0d2524d773fc32ff1b94d15f237bf3a5f5fdfb0c3072c35613b5076df135fae9d325e782f0b54fef028144e2fdfab2ace3acc067d63016357ab4df603cd2e5a59b64d79455fa59424bf0630171f45a2aae01c641faf65d01f11197c32dc12ed98a524348c00d7287ef680febd0b8a29fcbc2ec416d6e3d4282f596cea47e436796b50f39d9beac6b91669290ce6f3de72f3bf851b22abeaadd9276264ea150900100c37c784b29e3d94aa34f34feadfa8e4eed644825fefdfb543966f67d806173f20dcbd1993dfca29470680369b63f0cec285ed229acf6817b1aca7a1f29e9ad4f3e0303aa10ca1739af2857c4fa643c98e60c8683833d64bee314a65d7f463ae7c42bc5775d557e5247d8821d021640279d159f5069cd160b763119afa059b230ddf636bbe70754f669e5ef619d00533967123398a6b2da497e6025b45c4630dff71eae2c6ddc26b69d5eea12f57b96d15c315a6e55cdd25fec99cdd67df9e0cb48a8535af62472162c55c36eddfbc9f3de7c35a4af1f310252720da8d29a186ea44391fe590bde9085e909871b2cb507fb9b79000ff4b0736a26c7ca1909e0a12147110b17dfe2f627b591890afc2fcba2b00b35bd8eb6e2b919025e0dce8bcc8222560a9023f6c80fc1b3d0665e02a1581ad85e9111da8f0a728bb2efd2358f87f8de8ac63e174135c59be394c343cbb349c7bf125667883f11d117bd6a55f0011b2df653ae042745f455a8d2a320589dc02b0a3ee8e2f59d05bca05f7756830dd0c151315ba4a1805713d3508f92162dd0c4acc377891e03eb86d66d7bd2fbdb3a3bab6f643fba21fe479cdb402491f16f7843b39845e7d06ae5e2379641896e77d0da2e2edcb77434cfaa5385f6afa89afdc385080138daa46fdb5f3de7ad722dfdc3b7449b45a869b6b8ac8227c4e119edf41db25cd696b7c07da992c8b5c8ff8ec9f8e5b7ae5b4e7ade8538316ead172059ece4e265458b6fefdbd993fdb0182c8748e6e4fef5089c6784227c7a6c5ed08a2a92c0295fa7ec329bf5565ba234ac3909fdfbee8e678f545860f60cd62389864e7786be40a76cac538b1cd4da3aae07224d35f0ce002ead10918688323f7bd257570dbc4d395c596760f2cf095d733ccde4dc9d94796b29e4dea591364c572497676352f9fb25c214d63b46bcb526beac9a11d4ede3225a1bb6930fa707c31ea1d45a9fd5f22c66d0ecc2f8e4592fa0e68a8acb8c9b2d90d2e6106214bae6e8864773c7a5813867f339a24ff842a2b172f5117fde4e0ff515c229095a507501747855ed9f8cdd176ccc41bf713f7d1f25056068cd8baa60e26db1a7a9cfd6f30af1945f94317a4e0efd5b1be1297617e7d6b091992bb50c4260cc142898513873bd68d2ab3bc3024930028dd25590bdd23bb25773681e6e54e52339b23c36cff039bde588f1cb970070db3086815b78493d8d36dad55be6179cffed458ab8535a61a29466ecc7c66e2dd8e623c3cd8ccb72c118ece5955f1a3cbc082ac514de11398c9fa150ed8a60a5ca0bda814e28a671dacdfab71a995b09d070193b77c204fc97f1b6e479f95c274f68381d189219585af21910914a9b0723d30484730a8329ba0820fddc859978fa44b9e691265bbc944a839be5d724dbac74388cd0db6b06863c9d976a69bfc0c4b8b0d2ebf51cbe46ea88ff8a17653c764d03f454c78ff410c69c3677186625fed317772be58fb833fd5c2ac0ee1f606eab082711df167e81fdbb6442bca16413bbf1ce8b153453714780e36498790bdf6bfa2aaf09bcdb660892cb91e6a9a6eb9dfc330342625f688279a30097369fc31ceda42375f8f7f832a869d3bff5c5424a84dd1810f2b8171f4bae4e59addded7c41714d7f500881c1245365927bd316083fb5a2b0af31d8feb56245c8d24a65378463bdbd7486ece8a5348a9bb3063c9904fe8cbd51fe9544db312b886532f24372dab5e8007a9ffdff98294e9a1463c47f6ced021157120cfb680d998c5316c6826a6e8ab3c03a37aa1bfb4b7036448e897ddb05ed74815c17e4fe4e7a5f4c08126f0c5632c878d238d2cdcfc365c8a26ad7554221dff1969a23292a8100b5ff4dd6160c44b2632c134e3bd34bdcb0da18d1566951e29cb333d110a25bb52871d89cdc1ecb2958a0bca35269bde060f7557d894f8d9a925ca67e3b34a52a62e80ee58162ef56c6add6e32d92be6b225792979409d896fd6fb406c4857cdf8924083807498269e16722c910782709da3fd864656ffc32d9b6bd743c15d54a3b721ae272d6891500ffb1f93ee6cb40c5cc1a0003a6e8b2d8beed77761ce8655ef36af2324b482ee296aee54b7afc7aa49c0ab2844d8000ea0228615b53d5f8be6323b7e6480b56b81da8e503f863673a97a8dc92f6d7b5d408649e58e57d92bed669e0e97ec7a0ce58aaacff34700e87402a6437e0fcdf2847ef2bdba116c78b2265011da90a335d9373abe657822f9f1f031eef9f70e1a5bd83fe5e150a804e8e2616ea92afe85394a65e17d827654c6d35d073f29fa36eea696b3daf3d3888dfd7e456a9f494fc6a27bfd42c649c5a60734c8b285a7b701b3c0765467da035efbe13aaa52b66e17928a7d58610ae12d4d921a5f76959646d91bbaf8cdc9b277cf0eb42b029a47772b19c24dd44782db3ff7357f0698706e3708936e1e4c454f590ed7c5d7ca765912687aacbbcc4d2dfeeeaeb566bd36a0ae3638b49b672603f454a1d1704462fd1c097f10a36ff4a75ecf05c51c0cda097f3e1b6d1e92549c10f7222099f56e9f0382dc1ed5900e84e16b2c240fe189aea7cc0792d658e6c1f24954117012f9c8e020e7024879ae3aad278f94d491e69cfd6fd3ccc97ca4feee613759eab52637b6a9ceb7606f8208cdba55e221742e225400366fa15f947296709346b37a5639204243689e93a1fefc8c910aa1f7f738fa3a5e7322e19da36cf9d709b30f484d0343f5c47c4f164cb07034f7df953a6e5a756fea07650105625ea8ff338fd28a4d3365cd4bfdacdf2b176f4f69dc15415d8a645ac7f035a75dccf4d68531c35289e33b3862d3f2b9bc5a2ba8247c669d8f93534d351822e8900f1f35a45596cf55f8fc2fb47e6981207a12fcdd2fdd28098e734c0cd3a26b8f10e02c4dac5b2433849c43294b704346fce8cde8d7c1a245c97daaa0ba9aaaa468332e0f463da2f8e99efca5006e8fcf397f587d9b03d0d198576697414e934fdece1d2fce26a37aa8f5f00505b38fb72eaadd5ec37e1fcbf73420c8e79d1a877c8aface43381ebe3ed537cf47a53cc9f77698289269eb49ec1ee0a8857f42b61b5885492631d3af165b961463737874fd8e19f3e8e4b29f84ccc9d1923d884e7f4b31736f86dcd4ae260dcf3f5605ed1a1d8395240e7615c363d35a9e44d8700c9830a2f85d81be4fdaa2c38319b1c1354c8183e973f33fa880642b611e2ebc7726c850ff9f81ea356188e54aeae25cb555423a86c37f48cad1f336c07594a021305e3af84ad7d0cdf237345f6669cdaf7f3c006f21838beb35d9a96f39f3ae268c7b9ccbbecc9aca3c56089c7fae1922e00a5aea9babbb15dbe1a58ea882979ea05b9b79d40718dbec258bd9cfae5732927e18278e16de34399dc5d9019b3abd800c209dbb4b9b5939afa1a3f588e5b743842013f9cdb93f413165ef64a4a96515e3cbcb950ffa38a34bf83f3ec490c72fb3291b08e1b0584c3f3531f68613fc0e03eb8c0a77361da027ce05f8a0007873e0f2048543acadb0a0a3d4985e3e01559b09ac780bb6e8309e586a5ab3c6910848641592264d1866f7d17d4de0e0998ad1c6da5553a7044610eb7f5ef8b1aaa641d5a4bc04974443ed106f3d84271638b7572fbcb346d07b5b1ce51929542f447147727aecd9803bfea4af534d80318b3ed8a88575e6286d7fa1bf3ff7d4e80d07f115583650c979b367ee66de8926a2a5a97599d0c7207b9d2d6ec7ea7f45765b3f21cb3449ad76dc4d7f82f6c969122c420036f3995fed38729ceb14b4abb8c96c6186f6a58a61b0d7210906e4e144800f1121323560c9f8ee861de6672570e41a61f0934584e03e65e2096cf7c0dd4d69916d4556af641d3e1eb9194ef00a545990c5101864216fd253944ffbd692b5bfb21ccf1c7768f49545f750bc43444758e7d2430928ded6999ed62b4a5edc25e5d7f581caa9d4f1869bd8e9b9827020118ddc5a280503c70f2ffad0d3467d0534859faea8493e399f3d2e35f8808268b1fade8616117ca59f0573cc74fe989cfc50fa583f925693bd00a04ce8354766a2487fc380acf79469b77cf069d8ea02586eebccc7cd220f98b38ad843c2bfd390723be8f82778a60067c0daa5a71875f170a8606c2f6a4c1adc4750080820a54382f9ad0ba6d884ee49bc7cff44e77d2210b3a61f14bd6deae95d03b1dd959aea82030042f811fe77b4310364661c8bc3d094a0e6cb80ec120c860f50031688b1cedc33e78900075f13e4a51c38661352ebc7167f5b9c575c07b851a689370702968eccc694bad7a9adedef62f5c1836246b0ec93723d80df51a3421406c5933bda72f61c4d8006e9186aea0b74be2530862f8254859786259ca3ea5b0b1b010fc006e7c0f3f5b975ad35d9e978a90419aefbfd7402c5d3908f6dd259b088d038cd3e03a98d09dc577715feebf41c9260517d47d41b1e343dac6e7f215224b16a38d9e3bda51f770c598319dea09a7f0f1be1f97aa59c081f3c0bbbfc46413bd223936cce4f329067564c4cbcce4085e7b08370934eecbd84498cb9cabc41aaf351a9d36909dfbf6a9ef684dd69c29327d8abd9cacd0b6171fc73578f2dbd3c560ecfc33c18db99aee7c4f205863669564356e09d174bec52179dd4b768c15e8a45d9e2c44780f4c052c2c7c6822d74764cbaded3cb1a64eeae0ca27df88f083928477a64a375692a7ce13de7c07a3600a4584a6a118adc0719c3149c1e8d64473672edd86e220a1dc9ef08c5365095f31c306cbc191d9c77cf1906c5efbd8765914bf9e6f665d3da350a7c7c461b0eb93a28e9003165165f3399e0591da9420a3db2dc05b052c7eb7a224d158beb6959cd29d386369025953ac2a5fc07009b5333f14109fdae7fe98fa52dadab0729619434c340018f5fb96d2ddedf6de29ed4cafadf4f31703fea39c10f1b176971bc8673d3c6ba6c3fb563c9528989909b940646d8b6a217c368ce7cd4fa039aa1225feee0b9976d9b8704fef46ef9875d2a38797ac314bf679e94e0a0bbfdd85c8929b13519df959228a0554f3fdc7c55a864e4277915e1b6415aabc34af1b759a5bbf3c8cb93b17db4c74a1ede27c0c28b9f8e9b83a069589557e8f5cbd5396b0fd3badbbcd6731b642f5c9d83287c396786c2396d2fa0b47e090ebd8cb086f60fd227c942be590e195b60cdd1ed05564b68720673aa711fae4a2979df5ec461b688c5125b9296c6bd1097cb786fa85c050bedba9da4652dc91f78f8f954a91742085641bded1f705e25c1d2da1af3cecb75b05d25faa47ac152ff0766084b5704f583a6bdc580f8a68ffa6b7f508176bad9e94218b2815c3dbbe63da7ce66be89150ecac741a3eed091ab92475ec5ab28e1c43dc49e5135917702933f53af5d756f1019bd221586d9c380bd2f86ef1d85d6b51f21a46977cf916b668a60fb7f3f4cb301f61d09aa57757c487848c8db9b5e45e91ca9b951f9eb20cc3ce98b5ae20b85b5fdda01ea05cf0c3117e9c36fc1fe79a714770e254e72b665434006467a6686b300ce5c709144912effad8b054b8348d1e22ee2290c47c298665d6d5e9336d0fc6c12cb0af1d499f6df00207f7c9f6195c0e943dbbffc4d15f39a17327d7b2f77d2c9eca4b16ccf73e93b3b81853336f9cc66e6465c02f84016039db8de10d24e1bdd7d1c0411063c8e67272d3ab82e1126a1913444a9793f10d30623da2cb18b3ab6c9fe73b79c779b110f07d6b7a84c32ec52b8c150d9c67d169223a5940cfc2d94f933fca85088d9db21423f4ebf120d4d742426056c981c238c69f6d4d81305a6610429b8c82b334fafb9b29944fb681b1de238594aa7f158f5f65572df44fdaa9d509a53b2e98e19c6c3559437edbbdefaf7df7f4534b5e67e20921842215910a00e9c4c8a333c2d9817b0e68f7839955558bc447abcd2e4f16daf3cc08d88edade280282fcfb80a83478b0a567a34810886866f9c281ae329c0c211140907ae460ebcb38ebf567a573fb95c787d524fe4b77c09dc339e7d1196f5de3b5def3b547ff7d3f0447eb6c5b8d56a6b18d416e202d2c3f50e105bb0926a3946633eb700054af8769b1a0853c8a58c907d88a52f08e57cabdd652717e202412fbe31559d8b88fc3a551596dfa7a8b2565482f4785d42bda0c761f609c47223a853c449f3542efaff21e879836474b04fc65f1e207b4643b1fb95504df9f00f4d67f68d72117cb79d1f92d9f7dfeb7a240df58c51bc26734925062496d517d84115e1a0a7a99ef9582ebb028dc54597b3a3b9e85842dae820af10f210ef81b1712e4662b811510817ac4c8769f566e7557b5f553251016aa93edffa993df6b77499f854f52d676d648b1d8cd501a8791e229e123a6cc6c3e4d0e189a425cc559210013aea50485aa94eee44fcde013910ff2105173242eaaf4b77d8e6b3b0a6229405869b15f6900d558f8ee916855a298353968dbd40043cd55b19e8f0b83343cc191eca289350122791ffdc61ce563347faac3d409dd1bc601b7551b1f00ad26d12c1045f3a2313f7ee2c4ed0d58cdafe2f85ccd8ebb4f851cf6db2c53bf4fdbd9551f6ebf74ac159213477ceef86a29fe200470a79b6b9a403dc431d542352dd11dd75c761983e05ff51d55ddf970e1a307b8d15d5e3b5fefe31912597644cc2497b7ea9b046133d6e1d3551ff79731a482c47329485012f58157077b3248e0466817ed6bcc40779947bd1909bf19e150ef4003c9574f4384bb98211c3b467cd24dfd22274262e88ba1d929d42ad26b6378c6a7984b3d1a7478767dec22676f4c36b59e96fc8b4a2f37514e0e2968ae71ac78533877820577278c72c0014396be87f5ccb75bfa8107bd7b08a9a234ec1d6693bbdc31cd3257d11a3acd62a6e174022f34bb0ffd5b32e994e71bef09f1c255fcbedc3164dcf1bc173668ff6d8198bc8e4cd9abd3c1f3fed7cd14c2e03ebf5403480d04fb7ffd083cd6871dcb41e32e700c300f6b0071f5765a9fe439c9b5d648ed5b09f55bc651a04b464b2d2d8d8539f7ad16a3768b4b580a4d7ef20eb082032893cf18a549dcdc3c2d736f3175e188f0d593802d11c4990617fa9bb06842041b213e89db25480ad7ed2183b922d5a90248094e76570ffcb2f1ac26e2f7709469484a0b587a78f8b2bc04b31c833f473d2b18933386e9ae49f35046fd7cc93b16a12fef2cfb5580c1f3944493196f3ceba11c3dc99a9ebbb855748ae74935b68ab7228a4d5f122ef264583304b016d563ae296cb7489a8dc9676ef5dbb876a36b1bcd6f87e24e4ab95a0ca06d5c8bacf0872b7464665b0c8ba81de135817dd08a04c413825fd6fe2acb002c4f43877502ef9d7257e03abf96aa4680f0391dcfd9b7f3d2383a840c9dc637feb962e47159e285c364da3d5dddf2bfcdc7a5b23b1bfb5b8c4aeb81a0456413bb3f89f7729c93fa74b0d9adec08ebcdd2a9ac6e5ee60080c2ca01704286728691dceca496ecc47ba4a4caed0bf44c78b76c8a78c7bb8778f2fd3d807670aad657956b74a498b3a9cea369d22376a51f34e7206084b40912ec47d499799a31347140174a3fcc61ced1f24b78641c52aa55efcb4c3109040763c98e31990ee58dcec07321fe289f6d4a4949123507c3af36dd98eaaed461b41590b3df893ddaeee2c5a43ab1aa6a9f0dda63f5e45ed3bf54489714dbdd05288c22445fdc4231f63c0d78955fcc345dbefb7be0dc1f48902379b62ea395e7f0aa5e777477a8138d666dbc86ecc58abfc859e30ad8dd92aacf0c58cf5b3b856471022d228163f47f14cac328fc99a4dd1a28788f43428019d747596f3d41890762b28e1cd2b406bc167a69c3597c241e222f2e88bc6c35e1e6587cf9fa8251b28adfb646b7bec73a78d60880646ae8ccf2096553d87bd617c98c7093f62a7855a75d721d47b832323ea07cbfeac433f1e20196f864502b7607f4192d1fc0138e60578e7a2cb6d2924ef040e282d5d516b11d0d347ad716567826af2326f41d8b5f291c73c4aedaf0e4adfbc7ad92232879ef284095a1a089a6153951b6622aee08e3625e30aa83b38091f4facd61c15b51dcbde55b5e31c81e99f82c0804cf2128c3779e9e909674405d11b2f271d36bd55e7189950f4dfe6ac6ac73146ef49617bc752431a00882c840df856fc3f0dca2809f5055f3b09507e64b96a95bace16d1ab2110a8a2e0d3f95e8da2779d815cbb83a8a9ac6220510e21cfeabfd9369b9bfc9e9045a2e51dd4744c61cf51dbdb99fcb16221a8bd857d5509479c80d941ead1a91b83365b85313b89ba1b1e2c204d54d7b5b5b5601df640800ae74dc5512e4ebf827801fe059ca1b2996e71e87438cd6a42a38f98805a0924d4f8b43b584825bcb30d06e46b7f39f4c0827adcfabc59b8d335b6a9dc2a286cc0524c6bdf205106aa65d8fefa900c66be51815ce282dbefd775369a693e2b291ac4c3df2793cdb891875ab86346e55cfa2010e79dbf107aacb2070d387ba315f513978034390e5b6c2125d689ad988de98689e6cb37cbd4880b9514cf58f71ad08ec178cbfb70ee265cdefee91da9193d0fae07aebb15b80d83fed8a75c09a66bd3f25471d23288db1927074b5acb868ac36ae295ea223e2f9391a8c1f76d4f1fc552ee1041b1470cf5c67a6eb430780a5648de24789ab1b7cf8529e8ad4e851e398d68d888dd2e00fbf203c49cd02cebfe8e6657719cba53ac1b3d2e67bddd584e8f49e93f70f3f579152a0bc00daaebbac48533ff768eb65efa2460841206871a523884cd881c0b8aacdbe9bbf65aa96338adcd301a6d51b1f02df1b1f20fa49838710ef2fe50eed89105c5f0c1ddacfa8871385afa2edefbdfc933a79e44dc6c0a65fa724604e51cae8c9b0097bfa251bfa6a5081c15cdbed8f5d7912b61fa2dd3efe2d7c82c770aebfc38a409e9c5790bc87c72ad5ea9ada10b07908f45a7529938d4df402fb8c5e5732bda631026491f6bb54954083208c355004a4ec4ed5486946c3c349f640fd66c662d640c35a1a373b0ae56c4f5c8daee95e430a5bee38b73f86f52ac1ba837cb80f1ab884e10f82411c13d8ec7c79c4904522dd75b358ff67a837f552040ae5d3f3b653a21bf2f5dc35def32b74b5ec155a5f3d544b3701618a7c9d14e5fa36201ab1c6835487d88bd6ffb798e6e1d20d403306169b391c50097e515ad82bbd523b695b21e30b3c51ecf0004d4df09973474ad80cf10056b8ecfab000f2ecdc022517a1e678eda18167dead7eb58c2785f4c1ab6ed2261d8fe58415024224c0020e40e36779da6c4de0a743ff66149a3704055b986b04a45ec21acdd51891424409daf259a48c251ba7319511a3f8ead21ad5ff956a5014bc4a20ab08267974c9baf81f65b8ce73ad637d66932325e778eb5e474bdcea5e8338388b078a45d342d2a73588566dbd1416bad46a11534bb5c9ef036ce1cfdf5250998dc54b2583a23ef2b995a1794206a6aca5baf1b77abb77b4a1afb18c492523874bab988c54dc85f57fea15e8c5e793172dcc8274aa94d74fbe41d2eafdbc609859a1e4b72161cc5e503e6ef4b70560efa9f47a0317f3f951e9b820e24f0c6faab7b2ed06c6027563617c03606c3477160ec9156afbc20f58f9aec0410926b63ad724ab39510102222b717e06cc5017f1116dc33073a7a2e81cd7577d625ec2fce20b3399bba8ea2248377a5df52b47565cb74fb1a4a97a5ba067671810a5ff118a536173b064c34205d70ff2faef0dbd045dff95c27654984c2644e1b25f413777df3579f8b4deefe0d70984fa2acf057bea50f69d8cfa6869057a7413030ab1662fba8f186767c63cc45d40d70269452bcc26c44b15ce0f792396f66d7e2a719cefbd19854bd50703b4e2e8f12583d0f59f3d43ab8b4d523124737cb3c28ccc9f4ea543c454874a94fd4299799b173bfd52bf48ed2fb5d6def5b70be8f6e618cf3ee7cd24519fda5c6b37a5b8d991653130fc3938e3e1597ed4cad619fa8f67de424a4971e0986a77b9fb896c320097e1c5bf0d83a6907fe256b93f19d584e47e6d1ea108302862c2465dc5f351e89b44ffb0e2513bf783e63449dc6d586192a3982b46696821cb55a30fa3b2ef54657f3cdf979bea955d6ab4bc547b8c17979f60430ae433e0f5f16f4434b01a8ddfc1e9d483dd26b485e41252259c8dd72be74c4cc1d07d290b0e7de8ec84bc6ebb4fffb6a44ff6e4ee06fc45000bdab2c5860bb8b3573ff8f59dd3f4c241e45fd9f9a4ace1915de893a96d704f5a126ae8a442839b25d246beea6470347d85accd6794d9f24268b7e082d3597eb5300a5b76f28d025d35dc9eb07771893b8ac795152e96e63f0ce3e824a95fa09900c7e8e4e0833a8b899cf4a49ea91e63697b9f82ae1a14af8141596cf5b893efd0da4ec81b6d0d850bbfb34d6ef4227aac59e505aff157f49e87a86348abb6499d451e9ae91b84dd74a430f402414f37cd9e72a1dcfe8225db7607a33e0c45c6bd6fa653cc396f9fe508f59a62d43e79ad44f4ebe3bdc11c2c1263c045a7310f85a3f5d3f1b9f50c04727a9a2a80500f27f5c98475af797a5c8bc57399b3f09f2b6ce5e528f9c85e1e035197620c304deb8fa53a2d081b56739dc0aa7c4f34c34bb42177fb420550953ac48a8eb2621f71753f2b11c69328a7cbc4e1c8ce7ad26d21c08a1d87e23f91afd2002ca0cd65fc5a9d87eba588743e107a0a37c4561db3b1e35bd5df59dab97c34517cae3cd76f4b4d97611a336ab6743fcac3dbf6cbd7c77050b62f011ea3a345bbdcd3d9196a89aa1f419c2acbb03bf2b29eaea9ddf2afc70f15a1d8242ecb3fa800741ac7976e160abe8784c3dfd3cce6d59e3209a14adbfa00bed3caad5215e31c83850173dfb01afec072587dde6ffe8cb49650dfcd6cd0bf5f9a67edd8d354e257474eab23fc3634535eee5ebb35fc72725217fcebb9cd364bdeb316ab96565a7f0f70841314fb67136d68eed92ae771c1ba2bb9227f44958ab169c32c61a05a4cac124de52ab441b48c6d0ae5b9ef1fc10c6e5c9908be81a14b04765ba9ac179adc45d7a3bb6e6e6d22831a4403814e39a8d7f11080f68d80d852a19aeb3870bc2a8a9c04d6f9db8d37d89146265a00d86d852619210a3d959c8a5bea55567fb941b681600659ef1d606d2999d0a4a66f76f799699a34cb71eecb7b4053692ed7286a811106def8c25ca724f65b0c68a89b0fa3f5b3a44a7c1e0995cbe47002d432b22983f08e69fd9f45220186921d3312d9368fed7e98937295f7bc1a6afd1399b6dd6f09424bf6402e1458b509c183029215933139769a806143dc56e843312fd870a0e28af3ac6f7b3852c459854c5eef463adc97bd75bf1a98009121a4909de88f7701e5e491cde77b91dc983ec1c646be4a228b9ed8e81ee2748a74384acc2ddcf1c28fc8fa48050627213a26c78417ec470ec1490b545c8fd167c8c40c6b7a61754e5ce2584c58b7c7b55cfebb90261adc5aa1618885c09ac0b9ef203ed4b0baa7749bf4e3ba373623cdae14b99bdda08ad62502ac13d67f60370fa676a3a0db6f130dabfc0885fe20f62d00c339fa9c25c297f7a2b4a7970e272d78d92421bba7ca8b7f33e433c934eeda6fa045f2f0e82e5fecb56b5a3514967ed84c9d105fdfc175b4e88c0b355ac4eb4ecf4dce6207f67dfa0e367e98ee26528c718d796a906f6dc07302b7a7b13311d56d17dce002a70950c32d8834b1efe7a3df05bf7a5acc61cbeff45e4e85f2bef105dcc54ffe47bb6d69a729e6bed510621606f4ef93406060a8d19144e33aa0c53b473baacf2cb8f1aa2134201f57f733c3db30312a0f8e7ec6f0d15eb065be0c101e7a3a7355699495cf81ad3f25def38ba5c698ec99eacc0f4d5674a535ab806e44d70aaabea29b59459adba2bde5d0658d4f44d65086567b7e248084c279d2e5071a51b2fae69679e3a0d41b9b0241a0fdb86dd518f87fd331dd08e09a6307f17ef28e29c3a713290b6f8ab3f610854b6531c4a06f74510cfc618de8377d6ba3e56d7068cd93ffe596179cb27af0d7c3720dbc6ddd8ab06c50332c09ca78d473e7a57d39acc4e75ad60287814e2eb09ef618824a47a387bf784fdb536140afe75956aacb76efc4282b0599cd9693908b8cb9fe941ebf96ad6f78ad0ec489b0e5939b99ca078fd62e4f9c7263637c6b375ada36afa20dc6988205170046f1085a49d995346cadeeca2e23ec98966336f2a43346e4f8ecea6589884e343b24ed3f42906952b7e24c50569a2641d8b3a90c7b35984cb7684345d769ddef9dfca43f423700b9c0a4ecdafb3259819f95f030c3c80328573ace99e679d608eda406bd2135db365087fddc1c5044d5b37452909bed8d54a9a843330bdcf25ab4f7342d19bff232cab7d2b8c9401a8ddfb9d733f9098a384d62b987fecb01ae3ae7484c2a3ad0d0a28896b55377d2e15b1a02ffc12e53baf61e9f31bc300175961ab09a09133317deea74db1fee1ef2a3a10c1c6d986ff6b85a0ea04d3a275aa63e0878fd1e5dcd5898fab2365edabe9aba3b2a3e75395d21b236a3f6d21a0f8a792865ff002b14c290a93fd2f86bcbea06bd3292521af6e5ecfd62213626fbaaea8f5b2d2dd9c993101feb9bc0ed5d2b3bad373a750c12e03616bd1d9ea9199d4432301a5c37de98207b3c15dcb840b6953b6e10774a24f561bd47700d55a59791c5d698f7c0a41f3be8618937f081728e4c0baad5907e4e213d5bff496e5363b74ad1c23369eafe36d5064268d60726f9a954f89bce87233655a8e55d9e2957044657229e73f0eef46cbfc7f1df29d04c0df38dec196be7b3465f204dbd23c70b1b3521a35eb8a5f82fb45436bd9b16fa21c5dcd1f8634e48f622866b400caf0d5937d9b729b04d73561c85d9e818eed22b36e6e0854328e9faf99bf8c65f083240f58016be79c858249ab55635cf82b59df67438cba35e9880c6ac34a4534a080a9ac8fbc1cd1ed906c57105297353ee69260f4ab2b1efcb6adb893520e6db2fd7fce64767d3f519217409ef13be29ab908cd2462f21cd04b00f542f97163d5c239073af3f2d3c191e9b1d1ea85e1ec15daeb3f77020625b86ef9c326acb6190ddb6d6ca3c101d513eb38443e0a845484368b32ec5abecacad78dc8529a52b5b5e5e204af64c46e598c23af59c13d8e42a871bdede9fdfbee0c673bec458255911d50043543817661b7e8a707aaad3f24446a5a12127c48a0866c8b88d6d946b8b4432501221f910321d39b3303702da6e7ebf8d6a03d22e4b4a375a15603af67227bcee8e72c472265cdfba73f575ea38aad790f4fe2e01a04c85f08e8f671fb64cba88e12d0fe9816d2df0bfed05f4693fa45e681a1399eae674af4e233194a72f7dd7ba556c52fcbac5cd30808afc1645c5d45d4538ba658dff0018ed51; asc Qa- 3 QE A ] *v A7 b}3 Z l G> H ^<?m [? R ? R if / b j@ 3 U R gS + M DB%9 % S V E C ? W* r# : ! MQ C = } : G o = 99`U } . nY & , XW {ZNr H V?g h @ , ' ? bDR ` :~t A} }mp F wJ VhOS g r 7 # u N ` p g0, G' \ 8R P 0P{ / xvP d|G4 0 U- J e # H ]Hc )#w _k pP_ *(ipil O@`{ / 5QS j 0 ," T= m o{ ? c ? E V2 rE o`_(x /\_) XZ J z Nk 8 ] T C O SS p .J + uJn j P? Q " 4 M Z ` w R+ P. 6 k8# L I 7 B XUU?N PZ w ; A G Hk q j8z* %! o |N e, RNc + ' 8. Lc *a (H - q p o U`Aq. 1} = U q e \M m 0P N C 0 F t;f I& Ar V eR \ x B Z 6y Ys ' R KRK F Q l<t ^$r $ -<; /P[ ' FL [ x~ - b * 8 Xs T gs SLT G a- #_ B:{A(" [c a2 _ ^g =6 C* 4>r[ b { u { c 6 x MRoV ge g Go,W + zc V "f eh k '] KO _ +V g -)C x ` ku 5 uf ! [w` U <N{#Hg # X a v?m E ;= (D E {~3 <* E 8 9V y $J 9>p_h O7 e b l #p K9L ) X% GOR9" [75 N ^Da 18 6 SoQ ^ } | :vA) + x ] Y T ? - ) i '4 h Z ;; 0^ ? (z9~ Hd U& z J. ; l W 9EfF \ %0O' ~ Q / 'T ] c vp / a` + *04 v x y w1 ^ t b U 9 l s S E 3 ^ i .ra z | K u ] V'c m? ~ <M R.* o x# %R+ * * b ^ z O Hh % T @y@ ty>%n m " " +XN J &V f Cn! R R.G~X K Y] b ? 3 k k U C %c TW# Lj* Q e<# D )) p- g W} s{} * MZ L ^BKw }E B+ o v* m -F# | 9vH Z \wl W E" pUN - A# 4+ |5f<^F ! p 0 $ Wq M ~ 9 Q 8 sP Q /" ?3d U c .d; " 5N 1T 4G kO , - . R I L( jEX y + b -{ Z , d W Oq ^ (Q l \ w R- l 6 7 c5 ` p *# by (y R/N4P R N J / 7 x Z E P ? I M5u 'Ju ZO\@ B- _Z 8H "[ N i2f H Q {x C ES +W q 1* a ? O S k d "jh 2{ - = D X^ < c ` a I b 2< { lH^< Q 1 T Q| V/ pwm{ W ?.*? " I:xl T {F 7 1 XT 3W Hq $y Os F d9 U0 1 rT =p3 r 5 LUOwlbe0 o Z t m c 7~ Z E F , 2-w @ B ]b = M ij eg = 5 &!E]` d w X 1 } yp q +, ~ j 7 " tB, F - L 5 O F > LXC Ty, V / F; pp bQu Yw d T g,}F C l O" < Wu ! ]4*:8| 3 h 6Up h`w q\ Vz 4] - , 8W K 9a>:| w .h ` , # < U# h % `y b jD " @ E K [ M | 0f Np 8 { \c 8n(a e K}B'h= ^ N 2 ~yd s& Of ! Yx$B " / : 9c NRG{TV 89~ F h{^ ? %E r ; 1 q d + < <s X C "d] ? IQ 4 bZ BkW u,{ n C Y q p ,5 _/ 6 u A# > )0e M F a = 8 tW;-P*. #r c} > Q2i9tun j\ x N\X a2 V OK w 4 \ f RRFn^P { J j Q >^ 9U_8 U A ( ^ W)7.?| s W Y Iu/d M Q | ! n ) }a K [P ]it , &_ \ E E B+ C 3 d 6 X K d> [ l\ $ U a wr @ :s) b%4 =W!+s4Yr 6 n & Z [y y _U J y ZF , . X k 9 f a M %- ly d>t \ ].j _ f | [ % t 8 + t iG4i _vu 6 2% [ %E - S dd o q Wh ) N- nJ U * . JW 4- @ itXA U l ? S + i > X ;w %ok y@ V i y0 ' % $D 5v& Q U+ 0e~ u l q . is H C d h5 ,F f H ]0 & - ]vl cBT w A=(>) s GPRT}L e a z ? F1_G^ F< F 4 X vD' x j a +, ziE e y ! ~ y=B 'K < f= [ ? f s= I o $ c c j -Ys g d2 2' [X n=, r =y #E # x kP y 0 O o _]? zp W w} } ,a &f4= 9 z \ Eb 5 2 @ k&p ; $ h LeD" v5d . b % -` [ 9 H s <\ N[H t% KMS >A 3 d2 4/b w 9s A AF l { 0 t 2b +[m(. c \ 0/X ] : B 0 _ ! h -T <6 W Wb * { I ! y6 a kE <[ 7x 4Z *#J |. f7 c #SX u f : 7 5 . ' .w @ J~| ied " v Jl# X \ ^\ ZvN 5R 1 1 U$ 2 c N%Y E b& M 2 MY e C=c? | =, P`P M : =} | q /e q,9 ; } w p Q S bD { L l |x ] 5z <l\ t~ L8 l =}69a " yZ - } G n }` l * , o /r g 2 6 > 9A W Z t ;= ] r M H s r T 7 L *XnH XJ, I X + [ W " < l z , 0 6 s ; } m _H o NQ *wB ^ 8 ( | o C E( m!~ W %3 ? O dP E v 5 rv v D ? ox 6k o {DH z U U o Y "@+( _A-3 s W )] 9 ; 2` |9 UD~ o / W Z ^F2y :: !G e~ FB W $ .0 kH q >" p ?, 0 e, [|xQ : U. )3? AV fQ i 7 N!,U A 9 6` '6 m N : g +} J ` !! m# 4v - Q c b 3 @ gGiIi ; w >Z I f h ,\ D ~M^ 6S) fy Y :@ ( 7 m s L p 9M1 YG B olk x ] nn p 2L q >mH ( y 9/ - ( P u` ]O r`a 7 ) nm P Z yY w x } x? ^~ o[ Tfr / S x ?+"I 3 L h 5 L : _/ f Z uam A& y _ a H D 8 E 5 9 8 2 y}V% N + 7vCqk KhF ' liu | hm '2 P S2UW w :p : :(b / 7 j z ' R (^ H ! = b ; o( H o ;gq Q& o " SEh T 3 /A E4t a ] /\w C2 K9'6h D[ b P} kV U s U / \h& e@ $ d|GAX ; l-Jh i Ty }R + bU `e p H K7 ;Idm * VYL x & q 7LX d ZzB Z g)f[ h$P i 9TB\ K P # V< j %f ~ < m R l N^9; x l *7 , o i*-C ] T` : ~ S 6\U 2 ^c 7. ] m ' $ t 9 ]s @] Z2 * Hx U| M g` zp , Z { ) >1 R h Z P 1 R K A' 3 a ' *r F xE "a 1^ W' 6 2 @ pn , j .Bq ~ 3 M}C f H O w [ uc6 G& ~f F< ! ^"W-8 Tu ` T " M * : [ % d f oQ s9 e{<B H^ ]Q \ d j e se = ded6 g ,= \ &x8E Y T -/ \ ow sjQ y C| [ c }$ }Wf9 # c? d T}| 8N i } %U*T/ ' ~ +M'!r y.@ /a? D_# P T S/ Q (^ h \ X ' J v+B \ E0t V b 5 *& L Y ! } p e p ) N ]k $ t Vq)F; ?: =,e;C = %$ s 2 _#{ 0r V m 5 % O D g 0 5z `< d U YBK c q Z* A ] - . RCH r h Amn=B ~Cg 9 k f o= /; Q * v&N P |xK) J O4 N dH% T9f } as = ph i ? (^ ) { z ) O> 9 (W d< =d ] F: + w]U~RG @' Pi v1 Y 0 6 T i a S9g 3 I~`% \F0 ,m & ^ { \1ZnU _ } H SZ $r ,U n |5 1 Rr n C Y , y sj& !G ' / 5 ^ "V # f^ X ^ r 5 > A5 C I Vg ? jU - S 'E U X + > _wV Q1[ W P - w m{ :; od? ! G @$ oxC E j 7 A nw .. t4 S 8 o _= r- D E i ' \ } [Nz 81n Y eE o , H g "|zl^ * )_ 2 V[ 4 9 g TX` # Nw @ l S : "M5 . 2?{ WW M9\Yg` ]s< yk) 6LW$ gcR % ;F & "Z Z ,f Y/ - b Gs 8g 9 O B r N ) ZPu txU l A q?} % `h ` m _ 1zN [ )v + B` ( Q8s h ; I0 U ; Wsh nT #9 <6 9 p 0 [xI= 6 [ E SZa f n- # r _ < * 9 P ` N( q [ p ;w y \'Oh8 XZ J # s ) x D &[ J $ t8 k < ji F e<vM T 6w f% w+ 3 \* `n ' ~ dB d 4SqG d y k * f 3 Bb_h y 6 #u 2 i BJ K NY |AqM P $Se { ? 1 bE Je7 c t 4 < Q D 1+ e2 Cr z )N c l W h S jn :7 Kp6D } t \ Nz_L o V2 x 8 e j UB! #)* M D c, N; K ViQ 3 [ (q )X Ri ` U} O \ ~;4 *b b V - k"W o | $ 8 I i g" x' ? deo 2 t< J;r r > @ wv e^ j 2KH. Kz z M (a[S c# H V cg: d X } i ~ X 4p @*d7 (G + "e 3] s W / p ^ N & S ^ 'eLm5 s n ik= =8 V j' ,d Z`sL (Z{p < eF} 5 +f y( ! iYdm '| B ) wr $ Dx- sW i p 6 T |]| e & Vk j c I r`?EJ F/ 6 Ju \Q %I r" V 8- Y N @ | y-e l $ A / p$ x MI i < O u Rc{j v ^" B %@ f G)g 4k7 c $6 : s 2. 6 p 0 4?\G d O} S V vP V% 8 ( 6\ v T E Zu MhS 5( 3 -?+ G i 54 Q . ZEYl _ G / 4 :& C8I 2 4o | $\ F 2 c / P = vit 4 j7 _ P[8 r 7 sB y w 3 S| zS wi & W +a T c : e aF77 O > K) L # 6 m J ` `^ 9R@ a\6=5 M / ,81 T > ?3 B rl V T % UT# l7 3l YJ } #sE f 8 ] : h ` . ] X )y @q X s)' x m C ] ?X [t8B ? ^ JJ Q^< P 4 I r 2 S ha? > sa | _ > HT: =I Y n <i AY"d o} m U:pDa d ZK ItD> Bqc ur 4m Q B G w' J 4 W^b }N U e 6~ m j*Z Y r ~ We D m /l " o9 ) KJ ojX r nN H #V a frW A 4XN ^ | Uj A E Q B %9D i+[ ! v IT_u 4Du }$0 i b ^] X O i ' P<p 4g SHY _ & aa Y W< O %i; Tvj$ 8 yF w % | 8 <+ 9 # w ` | Zq _ u T8/ m N Nw ! :a K ; Y 0 / {C 6Fa = J l ` 1h >x u >JQ a5. qg u { h pp)h iK z /\ 6$k 7# 4!@lY3 /a n K S b %HYxbY > n| ?[ Z ] A @,]9 % : wq_ A & }A C "K ; Q p 1 Y d "96 ) ud ^{ 7 4 D 5 6 hM )2} 5x ` 3 |O Xcf d5n t !y Kv ] ,Dx L ,,|h" Gd < N ' w J7V | ` E q 1I Dsg. Se _1 | l^ vY of]= P a Qe 9 - [ ,~ $ X 8ci YS *_ p 3? R r CL4 ) L v g=<k V< ( @dm j!|6 O 9 % v pO F u 1K y N Q Y" T Z NBw ^ d 4 u [ < ; Lt | ( : U~ \ S ; g1 B 2 xl# G o` "| + Ud g: F h Q% )lk | P FR J t d \ - < [ _ G / v` pOX:k X h k ! ( c | k P t > $u Z C I Y p)3 : V !Xm 8 n ]kQ F | h 0 a wW ^ [_ \ ~ 6 qGp T +fT4 dg hk0 I T 4 " " |) e 3m , I m \ = _9 s' }, K > S3o nde / `9 $ A c rr j DJ 0b= l ;y y }kz . + g i":Y@ O ? # BB`V 8 mM 0Zf B 4 ) O # _eW- O ;. l5YC~ } SK^g ! " 3 { h UU G .O ( 4x g H hf 2 ! @ z ` 8 g s $ Kw 9 o] G }? G l[ V An -,?P & f3 p T i < X R W Rq~ $ Y QYm z %eH/G + v ` G": <D 5B 6GK e d; U h ! y - } @ X g4 PbImQ} ^ z ( TY{:; - ! f+ z v VnuW S% kwI OR v H P ) # l>M B\ Y! O Qs$. } k; b)@Xi _i X hU 59h C U 4< 5 "y c4 U & , E 1?~ X \ O ,S O U n t G| j) p k @= 1 B5- \v _ U p ]^;_ YvD $ a3 U 1 s)HP W {2H Fh k @w G P @ WOC ! ;F| M "'Bb ) * kcx K= txv} "goL6 J/7QN )h q xS8w w' r C [ { 4 f 1 2W : b t /4 [2 U 1d 6h m L > T H < A .p 0 k q vZ 9 H [ [ Q KFK-- 9 v KX M~ ( I <-so1u - hB !> %H ! " H NvW & p iHJ Xzx ?G=+ 3 I PF | ; / , U D o< = Ut I5 " M_ . dX3 c )l H gn v k o NJ Z m\ +tdf[ 5 } _ * ,OC u rW : F 9 8: 7 b qY d =] ; [ J Ed ? r t n^ pB r { Lx l x x = vp W kt i #v 4 ` G y 14q@ J? a Kxd R U L1 c 1 s! ( mJII 5 6 a = : j c ^ TH ( "D_ B1 < x _ 4] { H #y . ^wtw fm Y X [; dq -" c ( (x CB GYo=A b zi Y|$ "/. l5 X| Q F :x dj eS { p *xU ]r G 22> | 3 dP+v - `W z, N @ 4z Vx& #& _) s #(y (@ 9Q b* b^0 a [Q [^1 , !( w t@] q k ^q M j s n u$1 @ o PU K [ m . ? 'y : " i Z.Q GD " W P y 3e S M{[[V d t U ' Y ) C *8 MO C [ 0 nF L ' 3[j $ j ] k (- wSi L= y< u 4nU y p 1_Q9x C ]h h l | H QL q e z [ ? u f ?%G #( pt h 6 )^ # 9 v U. p \g C d G | R Q <I ew : { ?W R HS? h e F A hq # L e 3 I / \_ :y M _ $`NQ { % jP \ ]y > -| p @ W * y Zu) M ^W2 1 d T @ 5P N HiF I @ f b @ Z 7; lO\ ^C [ 8 ? * | A |y E" u X g 7 R S 5 +t Z_=TK7 a | 6 T @3 9 P ~QZ + R;i[! <Q MM sGJ V % x g ~ ' n & B$ @ gy lM C f 7 [ k ^ BD Y % 1 jP J &yt e s c}f #% x ^GK ^ 88 E B 5 Vm j SK l RP K% > yB z w I%# K T - t O A ` Y !a ^P>n ` z Q O o uca| `l4w j X A & : $ 9Q "+q~ P m 0s W}b^ 3 "H7z] +GV\ O z[ gg Sas d B ] vT L&D _A7w 5y * { P hi zt f/ gg < ]@ iE+ & K y# m~*q K % =C MR1$s| N C T J B y ; R H / > $Q \k7 e10 98 Y~ g BJIq jw l2 V ? ~m 0(b F] Q D Q; 4I mXa +Fih! U Te < ]j T{ `C 3 oD4 & R% + LL }) } n O O E W? A _ ] mpOZ j B % F dp4} g Bh Y~ 0 [v ]5 wq ; . ? $ _ : ci{ AYl N m Mn "z Y W cH I E t 0 AO7 r % v > E o S 9o b >y D , c E 1 rz * P ' u yz\ s +l ( ^ Q b 0M :- Vs |O4 K !w B P : b qu?+ ( z m! ? , e Z t> z 7 V [ Y |4Q| < oKM a 3j t? pP / E j A * ; $. ? t n 2 J R s rX} o P l _ g T WGN # 64S^ ^ 5 rrR 6K VZ p g mh * q + " D i ,a ZL M * A m n\ K v[ E nnm" D N9 R 8p * 7 F&Z m & ! = [ UV A ` Y `m) ov i 4 q {@Si. (j \ $ [ h J| p 2 ) i E" 3 6 ~ r j o BK @. X 19v aC V C1/ p o{8R Y L^ F: u ! w { > F J" t t8J - H '!:& G I T\ g kzauN\ XLX \ & Z a > t 76# % `7 v o - 9 % '-x $! 3 3 4 o E ._ kZ5 ~ L _ u 5Z N M b } 6~ &R q yj om s 3 m P - 4 zZ a ^N O G mi ) b @`` D : ;G; , !4 W 3 01* ~ ^ e z:sUi ?% MVt 5 nD YE e OD P V{~$ y Q y A m 1 c ~ ) ) o Ke1 otQ a 7}k mph z r m lP3, x s }9 Z N. JG xO Sa@ YV v (+ ox .O rcc|k7Z 6 F ZI 4l .# c6 3F e N4;$ ?B iR LPV &A {5 L hCE i ?B7 2Y 0 (W: y !5 6P PD tR T C3 Z 4- 2 @ 3 8Mb : HL*: Sw [ .S 1 0 u 3 t m o Z M:'Z > x ] X 6^ ;*>u9]! 6 y(e + ? k 2 R b!6& [-- ]+; 7:u 6 D20 \7 {< @ ;n wJ$ a Gp U ; a 7 r L ~N!=[ InSc J 3i 6 Bh & T #6U ] )W FW" s l ) L k F_ M # 5! ^ / T6 ! cNH " k@ Y7 ) MsV +6 C( _ 2@ y X$ V5 t8 ^ 4 SJ q )sS i& J j 5 / Gg !t ) F/! T/ =\# s ?-< ^ ] p b[ 2j a < Q> C EHCh . x ) +[^^ J LF : * s X%Y CT8 f ~ pz DF !' f m k D2P ! 2 9 07 n~ j .KJ7Z `: r' r r&\ s u 8 . L g L - m- i? ^h t N#1 /} UlR 0 E ]E8 e Q;
          InnoDB: End of page dump
          2018-04-04 10:51:38 7fd87f7fa700 InnoDB: uncompressed page, stored checksum in field1 2521915693, calculated checksums for field1: crc32 2319517863, innodb 1156539104, none 3735928559, stored checksum in field2 3127217663, calculated checksums for field2: crc32 2319517863, innodb 3127217663, none 3735928559, page LSN 0 1633617, low 4 bytes of LSN at page end 1633617, page number (if stored to page already) 307, space id (if created with >= MySQL-4.1.1 and stored already) 0
          InnoDB: page type 17855 meaning INDEX
          InnoDB: Page may be an index page where index id is 12630490021493489517
          2018-04-04 10:51:38 140567828735744 [Note] InnoDB: It is also possible that your operating system has corrupted its own file cache and rebooting your computer removes the error. If the corrupt page is an index page. You can also try to fix the corruption by dumping, dropping, and reimporting the corrupt table. You can use CHECK TABLE to scan your table for corruption. Please refer to http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html for information about forcing recovery.
          2018-04-04 10:51:38 140567828735744 [ERROR] InnoDB: Ending processing because of a corrupt database page.
          2018-04-04 10:51:38 7fd87f7fa700 InnoDB: Assertion failure in thread 140567828735744 in file ha_innodb.cc line 20704
          InnoDB: We intentionally generate a memory trap.
          InnoDB: Submit a detailed bug report to https://jira.mariadb.org/
          InnoDB: If you get repeated assertion failures or crashes, even
          InnoDB: immediately after the mysqld startup, there may be
          InnoDB: corruption in the InnoDB tablespace. Please refer to
          InnoDB: http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html
          InnoDB: about forcing recovery.
          180404 10:51:38 [ERROR] mysqld got signal 6 ;
          This could be because you hit a bug. It is also possible that this binary
          or one of the libraries it was linked against is corrupt, improperly built,
          or misconfigured. This error can also be caused by malfunctioning hardware.

          To report this bug, see https://mariadb.com/kb/en/reporting-bugs

          We will try our best to scrape up some info that will hopefully help
          diagnose the problem, but since we have already crashed,
          something is definitely wrong and this may fail.

          Server version: 10.1.32-MariaDB-debug
          key_buffer_size=1048576
          read_buffer_size=131072
          max_used_connections=0
          max_threads=153
          thread_count=0
          It is possible that mysqld could use up to
          key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 63044 K bytes of memory
          Hope that's ok; if not, decrease some variables in the equation.

          Thread pointer: 0x0
          Attempting backtrace. You can use the following information to find out
          where mysqld died. If you see no messages after this, something went
          terribly wrong...
          stack_bottom = 0x0 thread_stack 0x48400
          2018-04-04 10:51:38 140568167758976 [Note] InnoDB: 5.6.37 started; log sequence number 1636206
          2018-04-04 10:51:38 140567774230272 [Note] InnoDB: Dumping buffer pool(s) not yet started
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_DATAFILES' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_TABLESTATS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_READ_VIEW' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_RSEG' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_DELETED' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_LOCK_WAITS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'CHANGED_PAGE_BITMAPS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_FIELDS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'XTRADB_INTERNAL_HASH_TABLES' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_TABLESPACES_SCRUBBING' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMPMEM_RESET' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_INDEX_TABLE' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_BEING_DELETED' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_MUTEXES' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_CONFIG' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'FEEDBACK' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_INDEX_CACHE' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_FT_DEFAULT_STOPWORD' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP_RESET' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_COLUMNS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_CMP_PER_INDEX_RESET' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_TABLESPACES' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_SEMAPHORE_WAITS' is disabled.
          2018-04-04 10:51:38 140568167758976 [Note] Plugin 'INNODB_SYS_INDEXES' is disabled.
          2018-04-04 10:51:38 140568167758976 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-pam-debug'
          2018-04-04 10:51:38 140568167758976 [Warning] /home/jan/mysql/10.1-tmp/sql/mysqld: unknown option '--loose-skip-plugin-innodb-changed-pages'
          2018-04-04 10:51:38 140568167758976 [Note] Server socket created on IP: '127.0.0.1'.
          2018-04-04 10:51:38 140568167758976 [Note] /home/jan/mysql/10.1-tmp/sql/mysqld: ready for connections.
          Version: '10.1.32-MariaDB-debug' socket: '/home/jan/mysql/10.1-tmp/mysql-test/var/tmp/mysqld.1.sock' port: 16000 Source distribution
          mysys/stacktrace.c:267(my_print_stacktrace)[0x5556981b2622]
          sql/signal_handler.cc:168(handle_fatal_signal)[0x555697b4c68d]
          /lib/x86_64-linux-gnu/libpthread.so.0(+0x11f50)[0x7fd893752f50]
          linux/raise.c:51(__GI_raise)[0x7fd8909bde7b]
          stdlib/abort.c:81(__GI_abort)[0x7fd8909bf231]
          handler/ha_innodb.cc:20706(ib_logf(ib_log_level_t, char const*, ...))[0x7fd889703f97]
          buf/buf0buf.cc:4939(buf_page_io_complete(buf_page_t*, bool))[0x7fd88961f934]
          buf/buf0rea.cc:228(buf_read_page_low(dberr_t*, bool, unsigned long, unsigned long, unsigned long, unsigned long, long, unsigned long))[0x7fd88963c3f7]
          buf/buf0rea.cc:450(buf_read_page(unsigned long, unsigned long, unsigned long))[0x7fd88963c9c5]
          buf/buf0buf.cc:3185(buf_page_get_gen(unsigned long, unsigned long, unsigned long, unsigned long, buf_block_t*, unsigned long, char const*, unsigned long, mtr_t*, dberr_t*))[0x7fd88961b816]
          btr/btr0cur.cc:612(btr_cur_search_to_nth_level(dict_index_t*, unsigned long, dtuple_t const*, unsigned long, unsigned long, btr_cur_t*, unsigned long, char const*, unsigned long, mtr_t*))[0x7fd8895ecccc]
          include/btr0pcur.ic:439(btr_pcur_open_low(dict_index_t*, unsigned long, dtuple_t const*, unsigned long, unsigned long, btr_pcur_t*, char const*, unsigned long, mtr_t*))[0x7fd889819031]
          row/row0row.cc:745(row_search_on_row_ref(btr_pcur_t*, unsigned long, dict_table_t const*, dtuple_t const*, mtr_t*))[0x7fd88981ac50]
          row/row0purge.cc:105(row_purge_reposition_pcur(unsigned long, purge_node_t*, mtr_t*))[0x7fd889813f9c]
          row/row0purge.cc:150(row_purge_remove_clust_if_poss_low(purge_node_t*, unsigned long))[0x7fd8898140db]
          row/row0purge.cc:213(row_purge_remove_clust_if_poss(purge_node_t*))[0x7fd88981431f]
          row/row0purge.cc:591(row_purge_del_mark(purge_node_t*))[0x7fd889814da3]
          row/row0purge.cc:860(row_purge_record_func(purge_node_t*, unsigned char*, que_thr_t const*, bool))[0x7fd88981569b]
          row/row0purge.cc:916(row_purge(purge_node_t*, unsigned char*, que_thr_t*))[0x7fd889815892]
          row/row0purge.cc:998(row_purge_step(que_thr_t*))[0x7fd889815b27]
          que/que0que.cc:1079(que_thr_step(que_thr_t*))[0x7fd8897b51c1]
          que/que0que.cc:1141(que_run_threads_low(que_thr_t*))[0x7fd8897b53c7]
          que/que0que.cc:1184(que_run_threads(que_thr_t*))[0x7fd8897b5556]
          trx/trx0purge.cc:1229(trx_purge(unsigned long, unsigned long, bool))[0x7fd889868f8e]
          srv/srv0srv.cc:2724(srv_do_purge(unsigned long, unsigned long*))[0x7fd88984eb5a]
          srv/srv0srv.cc:2870(srv_purge_coordinator_thread)[0x7fd88984f0c1]
          nptl/pthread_create.c:463(start_thread)[0x7fd8937485aa]
          x86_64/clone.S:97(clone)[0x7fd890a7fcbf]
          The manual page at http://dev.mysql.com/doc/mysql/en/crashing.html contains
          information that should help you find out what is causing the crash.
          Writing a core file
          ----------SERVER LOG END-------------

          {noformat}

          As you can easily see the page is encrypted.
          jplindst Jan Lindström (Inactive) added a comment - https://github.com/MariaDB/server/commit/1099031b5f8a67ee65591be08b3101401a2c39b6
          jplindst Jan Lindström (Inactive) made changes -
          Assignee Jan Lindström [ jplindst ] Marko Mäkelä [ marko ]
          Status In Progress [ 3 ] In Review [ 10002 ]

          OK to push after addressing my review comments.

          marko Marko Mäkelä added a comment - OK to push after addressing my review comments.
          marko Marko Mäkelä made changes -
          Assignee Marko Mäkelä [ marko ] Jan Lindström [ jplindst ]
          Status In Review [ 10002 ] Stalled [ 10000 ]
          marko Marko Mäkelä made changes -
          Affects Version/s 10.2 [ 14601 ]
          Affects Version/s 10.3 [ 22126 ]
          marko Marko Mäkelä made changes -
          Fix Version/s 10.2 [ 14601 ]
          Fix Version/s 10.3 [ 22126 ]
          jplindst Jan Lindström (Inactive) made changes -
          Status Stalled [ 10000 ] In Progress [ 3 ]

          After review fixes + testing.

          jplindst Jan Lindström (Inactive) added a comment - After review fixes + testing.
          jplindst Jan Lindström (Inactive) made changes -
          issue.field.resolutiondate 2018-04-06 10:00:45.0 2018-04-06 10:00:45.988
          jplindst Jan Lindström (Inactive) made changes -
          Fix Version/s 10.1.33 [ 22909 ]
          Fix Version/s 10.2.15 [ 23006 ]
          Fix Version/s 10.3.6 [ 23003 ]
          Fix Version/s 10.2 [ 14601 ]
          Fix Version/s 10.1 [ 16100 ]
          Fix Version/s 10.3 [ 22126 ]
          Resolution Fixed [ 1 ]
          Status In Progress [ 3 ] Closed [ 6 ]
          ratzpo Rasmus Johansson (Inactive) made changes -
          Sprint 10.3.6 [ 240 ]
          ratzpo Rasmus Johansson (Inactive) made changes -
          Rank Ranked higher
          serg Sergei Golubchik made changes -
          Workflow MariaDB v3 [ 86037 ] MariaDB v4 [ 153955 ]

          People

            jplindst Jan Lindström (Inactive)
            jplindst Jan Lindström (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.