summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
authorDaniel Fischer <df@sun.com>2010-04-21 14:58:09 +0200
committerDaniel Fischer <df@sun.com>2010-04-21 14:58:09 +0200
commitb83e1c868622125ff59d405710cb6438c131a7f4 (patch)
tree4fad82e285f056995b626f0a62b5fa0488294c19 /mysql-test
parent718ee3e595d3c73517c1bc1df8d3bdfc2e22510b (diff)
parent210d37e5c0aaa821783023b3f275c5e7992c515c (diff)
downloadmariadb-git-b83e1c868622125ff59d405710cb6438c131a7f4.tar.gz
Merge
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/CMakeLists.txt16
-rw-r--r--mysql-test/Makefile.am4
-rw-r--r--mysql-test/collections/default.experimental10
-rw-r--r--mysql-test/extra/binlog_tests/drop_table.test34
-rw-r--r--mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test4
-rw-r--r--mysql-test/extra/rpl_tests/rpl_innodb.test67
-rw-r--r--mysql-test/extra/rpl_tests/rpl_loaddata.test13
-rw-r--r--mysql-test/include/cleanup_fake_relay_log.inc7
-rw-r--r--mysql-test/include/commit.inc8
-rw-r--r--mysql-test/include/ctype_datetime.inc11
-rw-r--r--mysql-test/include/ctype_like.inc50
-rw-r--r--mysql-test/include/ctype_numconv.inc1606
-rw-r--r--mysql-test/include/ctype_utf8_table.inc44
-rw-r--r--mysql-test/include/ctype_utf8mb4.inc1858
-rw-r--r--mysql-test/include/default_mysqld.cnf2
-rw-r--r--mysql-test/include/handler.inc1062
-rw-r--r--mysql-test/include/have_ipv4_mapped.inc14
-rw-r--r--mysql-test/include/have_utf16.inc4
-rw-r--r--mysql-test/include/have_utf32.inc4
-rw-r--r--mysql-test/include/have_utf8mb4.inc7
-rw-r--r--mysql-test/include/implicit_commit_helper.inc5
-rw-r--r--mysql-test/include/ipv6.inc3
-rw-r--r--mysql-test/include/mix1.inc3
-rw-r--r--mysql-test/include/mix2.inc2
-rw-r--r--mysql-test/include/mtr_warnings.sql23
-rw-r--r--mysql-test/include/not_binlog_format_row.inc4
-rw-r--r--mysql-test/include/setup_fake_relay_log.inc28
-rw-r--r--mysql-test/lib/My/Options.pm20
-rw-r--r--mysql-test/lib/My/SafeProcess.pm131
-rw-r--r--mysql-test/lib/My/SafeProcess/CMakeLists.txt8
-rwxr-xr-xmysql-test/lib/My/SafeProcess/safe_process_win.cc22
-rw-r--r--mysql-test/lib/mtr_cases.pm30
-rw-r--r--mysql-test/lib/mtr_gprof.pl45
-rw-r--r--mysql-test/lib/mtr_misc.pl13
-rw-r--r--mysql-test/lib/mtr_report.pm37
-rw-r--r--mysql-test/lib/mtr_stress.pl2
-rw-r--r--mysql-test/lib/t/Options.t14
-rw-r--r--mysql-test/lib/v1/mtr_io.pl2
-rw-r--r--mysql-test/lib/v1/mtr_report.pl3
-rw-r--r--mysql-test/lib/v1/mtr_stress.pl2
-rwxr-xr-xmysql-test/lib/v1/mysql-test-run.pl161
-rwxr-xr-xmysql-test/mysql-test-run.pl273
-rw-r--r--mysql-test/r/alter_table.result252
-rw-r--r--mysql-test/r/analyze.result4
-rw-r--r--mysql-test/r/archive.result9
-rw-r--r--mysql-test/r/backup.result26
-rw-r--r--mysql-test/r/bigint.result34
-rw-r--r--mysql-test/r/bug39022.result32
-rw-r--r--mysql-test/r/case.result14
-rw-r--r--mysql-test/r/comment_column.result411
-rw-r--r--mysql-test/r/comment_column2.result397
-rw-r--r--mysql-test/r/comment_index.result482
-rw-r--r--mysql-test/r/comment_table.result127
-rw-r--r--mysql-test/r/commit_1innodb.result8
-rw-r--r--mysql-test/r/compress.result8
-rw-r--r--mysql-test/r/constraints.result18
-rw-r--r--mysql-test/r/create.result38
-rw-r--r--mysql-test/r/csv.result31
-rw-r--r--mysql-test/r/ctype_binary.result2568
-rw-r--r--mysql-test/r/ctype_cp1251.result2567
-rw-r--r--mysql-test/r/ctype_cp932_binlog_stm.result19104
-rwxr-xr-xmysql-test/r/ctype_eucjpms.result22186
-rw-r--r--mysql-test/r/ctype_latin1.result2567
-rw-r--r--mysql-test/r/ctype_ldml.result33
-rw-r--r--mysql-test/r/ctype_many.result56
-rw-r--r--mysql-test/r/ctype_mb.result12
-rw-r--r--mysql-test/r/ctype_sjis.result14050
-rw-r--r--mysql-test/r/ctype_ucs.result2578
-rw-r--r--mysql-test/r/ctype_ujis.result21997
-rw-r--r--mysql-test/r/ctype_utf16.result1038
-rw-r--r--mysql-test/r/ctype_utf16_uca.result2373
-rw-r--r--mysql-test/r/ctype_utf32.result1052
-rw-r--r--mysql-test/r/ctype_utf32_uca.result2373
-rw-r--r--mysql-test/r/ctype_utf8.result14
-rw-r--r--mysql-test/r/ctype_utf8mb4.result2478
-rw-r--r--mysql-test/r/ctype_utf8mb4_heap.result2260
-rw-r--r--mysql-test/r/ctype_utf8mb4_innodb.result2407
-rw-r--r--mysql-test/r/ctype_utf8mb4_myisam.result2407
-rw-r--r--mysql-test/r/ctype_utf8mb4_ndb.result1876
-rw-r--r--mysql-test/r/debug_sync.result2
-rw-r--r--mysql-test/r/default.result3
-rw-r--r--mysql-test/r/delete.result24
-rw-r--r--mysql-test/r/drop.result2
-rw-r--r--mysql-test/r/drop_debug.result4
-rw-r--r--mysql-test/r/errors.result4
-rw-r--r--mysql-test/r/flush.result145
-rw-r--r--mysql-test/r/flush_block_commit.result18
-rw-r--r--mysql-test/r/flush_block_commit_notembedded.result15
-rw-r--r--mysql-test/r/flush_table.result17
-rw-r--r--mysql-test/r/foreign_key.result42
-rw-r--r--mysql-test/r/fulltext.result32
-rw-r--r--mysql-test/r/func_gconcat.result21
-rw-r--r--mysql-test/r/func_str.result8
-rw-r--r--mysql-test/r/func_time.result35
-rw-r--r--mysql-test/r/gis.result30
-rw-r--r--mysql-test/r/grant.result2
-rw-r--r--mysql-test/r/grant4.result8
-rw-r--r--mysql-test/r/greedy_optimizer.result2
-rw-r--r--mysql-test/r/group_by.result88
-rw-r--r--mysql-test/r/group_min_max.result40
-rw-r--r--mysql-test/r/handler_innodb.result983
-rw-r--r--mysql-test/r/handler_myisam.result981
-rw-r--r--mysql-test/r/have_utf16.require2
-rw-r--r--mysql-test/r/have_utf32.require2
-rw-r--r--mysql-test/r/have_utf8mb4.require2
-rw-r--r--mysql-test/r/having.result20
-rw-r--r--mysql-test/r/heap.result4
-rw-r--r--mysql-test/r/heap_btree.result4
-rw-r--r--mysql-test/r/heap_hash.result32
-rw-r--r--mysql-test/r/implicit_commit.result1066
-rw-r--r--mysql-test/r/information_schema.result97
-rw-r--r--mysql-test/r/innodb-lock.result39
-rw-r--r--mysql-test/r/innodb.result3
-rw-r--r--mysql-test/r/innodb_mysql.result50
-rw-r--r--mysql-test/r/innodb_mysql_lock.result88
-rw-r--r--mysql-test/r/innodb_mysql_sync.result26
-rw-r--r--mysql-test/r/ipv4_as_ipv6_win.result32
-rw-r--r--mysql-test/r/ipv6.result176
-rw-r--r--mysql-test/r/ipv6_win.result88
-rw-r--r--mysql-test/r/join.result28
-rw-r--r--mysql-test/r/key.result12
-rw-r--r--mysql-test/r/kill.result103
-rw-r--r--mysql-test/r/locale.result2
-rw-r--r--mysql-test/r/lock.result276
-rw-r--r--mysql-test/r/lock_multi.result269
-rw-r--r--mysql-test/r/lock_sync.result30
-rw-r--r--mysql-test/r/lowercase_table2.result16
-rw-r--r--mysql-test/r/mdl_sync.result2377
-rw-r--r--mysql-test/r/merge.result446
-rw-r--r--mysql-test/r/merge_recover.result103
-rw-r--r--mysql-test/r/metadata.result2
-rw-r--r--mysql-test/r/mix2_myisam.result32
-rw-r--r--mysql-test/r/multi_update.result11
-rw-r--r--mysql-test/r/myisam.result124
-rw-r--r--mysql-test/r/mysqlbinlog.result4
-rw-r--r--mysql-test/r/mysqlbinlog_row_innodb.result24
-rw-r--r--mysql-test/r/mysqlbinlog_row_myisam.result24
-rw-r--r--mysql-test/r/mysqld--help-notwin.result98
-rw-r--r--mysql-test/r/mysqld--help-win.result98
-rw-r--r--mysql-test/r/mysqldump.result4
-rw-r--r--mysql-test/r/mysqltest.result74
-rw-r--r--mysql-test/r/named_pipe.result8
-rw-r--r--mysql-test/r/no_binlog.result2
-rw-r--r--mysql-test/r/not_embedded_server.result16
-rw-r--r--mysql-test/r/partition.result17
-rw-r--r--mysql-test/r/partition_column_prune.result6
-rw-r--r--mysql-test/r/partition_debug_sync.result65
-rw-r--r--mysql-test/r/partition_innodb.result44
-rw-r--r--mysql-test/r/partition_innodb_semi_consistent.result2
-rw-r--r--mysql-test/r/partition_pruning.result2
-rw-r--r--mysql-test/r/partition_sync.result32
-rw-r--r--mysql-test/r/perror-win.result1
-rw-r--r--mysql-test/r/perror.result5
-rw-r--r--mysql-test/r/ps.result28
-rw-r--r--mysql-test/r/ps_1general.result6
-rw-r--r--mysql-test/r/ps_2myisam.result72
-rw-r--r--mysql-test/r/ps_3innodb.result72
-rw-r--r--mysql-test/r/ps_4heap.result72
-rw-r--r--mysql-test/r/ps_5merge.result144
-rw-r--r--mysql-test/r/ps_ddl.result99
-rw-r--r--mysql-test/r/ps_ddl1.result2
-rw-r--r--mysql-test/r/query_cache.result11
-rw-r--r--mysql-test/r/read_only_innodb.result171
-rw-r--r--mysql-test/r/repair.result42
-rw-r--r--mysql-test/r/schema.result36
-rw-r--r--mysql-test/r/select.result8
-rw-r--r--mysql-test/r/shm.result8
-rw-r--r--mysql-test/r/show_check.result47
-rw-r--r--mysql-test/r/show_profile.result10
-rw-r--r--mysql-test/r/signal.result2
-rw-r--r--mysql-test/r/sp-bugs.result29
-rw-r--r--mysql-test/r/sp-destruct.result18
-rw-r--r--mysql-test/r/sp-error.result17
-rw-r--r--mysql-test/r/sp-lock.result697
-rw-r--r--mysql-test/r/sp-threads.result2
-rw-r--r--mysql-test/r/sp-vars.result4
-rw-r--r--mysql-test/r/sp.result73
-rw-r--r--mysql-test/r/sp_notembedded.result15
-rw-r--r--mysql-test/r/ssl.result8
-rw-r--r--mysql-test/r/ssl_compress.result8
-rw-r--r--mysql-test/r/strict.result100
-rw-r--r--mysql-test/r/subselect.result12
-rw-r--r--mysql-test/r/trigger.result20
-rw-r--r--mysql-test/r/truncate.result101
-rw-r--r--mysql-test/r/truncate_coverage.result73
-rw-r--r--mysql-test/r/type_bit.result15
-rw-r--r--mysql-test/r/type_datetime.result4
-rw-r--r--mysql-test/r/type_ranges.result32
-rw-r--r--mysql-test/r/type_timestamp.result16
-rw-r--r--mysql-test/r/udf.result46
-rw-r--r--mysql-test/r/union.result12
-rw-r--r--mysql-test/r/variables.result7
-rw-r--r--mysql-test/r/variables_community.result (renamed from mysql-test/r/variables+c.result)0
-rw-r--r--mysql-test/r/view.result111
-rw-r--r--mysql-test/r/view_grant.result15
-rw-r--r--mysql-test/r/warnings.result6
-rw-r--r--mysql-test/std_data/Index.xml30
-rw-r--r--mysql-test/std_data/bug48449.frm12
-rw-r--r--mysql-test/suite/binlog/r/binlog_format_switch_in_tmp_table.result78
-rw-r--r--mysql-test/suite/binlog/r/binlog_row_drop_tbl.result16
-rw-r--r--mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result45
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_blackhole.result6
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_drop_tbl.result15
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result17
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result27
-rw-r--r--mysql-test/suite/binlog/r/binlog_stm_user_variables.result157
-rw-r--r--mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test74
-rw-r--r--mysql-test/suite/binlog/t/binlog_format_switch_in_tmp_table.test76
-rw-r--r--mysql-test/suite/binlog/t/binlog_row_binlog-master.opt2
-rw-r--r--mysql-test/suite/binlog/t/binlog_row_drop_tbl.test5
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_binlog-master.opt2
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_drop_tbl.test5
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_row.test2
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test32
-rw-r--r--mysql-test/suite/binlog/t/binlog_stm_user_variables.test87
-rw-r--r--mysql-test/suite/funcs_1/datadict/processlist_val.inc10
-rw-r--r--mysql-test/suite/funcs_1/r/is_columns.result6
-rw-r--r--mysql-test/suite/funcs_1/r/is_columns_is.result10
-rw-r--r--mysql-test/suite/funcs_1/r/is_statistics.result107
-rw-r--r--mysql-test/suite/funcs_1/r/is_statistics_is.result4
-rw-r--r--mysql-test/suite/funcs_1/r/is_statistics_mysql.result100
-rw-r--r--mysql-test/suite/funcs_1/r/is_table_constraints.result30
-rw-r--r--mysql-test/suite/funcs_1/r/is_tables.result6
-rw-r--r--mysql-test/suite/funcs_1/r/processlist_val_no_prot.result6
-rw-r--r--mysql-test/suite/funcs_1/r/processlist_val_ps.result6
-rw-r--r--mysql-test/suite/funcs_1/r/storedproc.result1164
-rw-r--r--mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result25
-rw-r--r--mysql-test/suite/large_tests/t/rpl_slave_net_timeout-slave.opt1
-rw-r--r--mysql-test/suite/large_tests/t/rpl_slave_net_timeout.test81
-rw-r--r--mysql-test/suite/ndb/r/ndb_alter_table3.result14
-rw-r--r--mysql-test/suite/ndb/r/ndb_basic.result9
-rw-r--r--mysql-test/suite/ndb/r/ndb_dd_ddl.result2
-rw-r--r--mysql-test/suite/ndb/r/ndb_index_ordered.result15
-rw-r--r--mysql-test/suite/ndb/r/ps_7ndb.result72
-rw-r--r--mysql-test/suite/ndb/t/disabled.def5
-rw-r--r--mysql-test/suite/ndb/t/ndb_dd_ddl.test2
-rw-r--r--mysql-test/suite/ndb/t/ndb_index_ordered.test36
-rw-r--r--mysql-test/suite/parts/r/partition_innodb_status_file.result14
-rw-r--r--mysql-test/suite/parts/r/partition_special_innodb.result6
-rw-r--r--mysql-test/suite/parts/t/partition_innodb_status_file-master.opt1
-rw-r--r--mysql-test/suite/parts/t/partition_innodb_status_file.test20
-rw-r--r--mysql-test/suite/parts/t/partition_special_innodb.test4
-rw-r--r--mysql-test/suite/perfschema/r/aggregate.result13
-rw-r--r--mysql-test/suite/perfschema/r/dml_mutex_instances.result2
-rw-r--r--mysql-test/suite/perfschema/r/dml_rwlock_instances.result2
-rw-r--r--mysql-test/suite/perfschema/r/dml_setup_instruments.result3
-rw-r--r--mysql-test/suite/perfschema/r/misc.result14
-rw-r--r--mysql-test/suite/perfschema/r/pfs_upgrade.result153
-rw-r--r--mysql-test/suite/perfschema/t/aggregate.test16
-rw-r--r--mysql-test/suite/perfschema/t/dml_mutex_instances.test2
-rw-r--r--mysql-test/suite/perfschema/t/dml_rwlock_instances.test2
-rw-r--r--mysql-test/suite/perfschema/t/misc.test21
-rw-r--r--mysql-test/suite/perfschema/t/pfs_upgrade.test138
-rw-r--r--mysql-test/suite/rpl/r/rpl_binlog_auto_inc_bug33029.result (renamed from mysql-test/suite/binlog/r/binlog_auto_increment_bug33029.result)9
-rw-r--r--mysql-test/suite/rpl/r/rpl_do_grant.result10
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix.result102
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix2.result118
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix2_win.result84
-rw-r--r--mysql-test/suite/rpl/r/rpl_ip_mix_win.result84
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result10
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result35
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv6.result96
-rw-r--r--mysql-test/suite/rpl/r/rpl_ipv6_win.result80
-rw-r--r--mysql-test/suite/rpl/r/rpl_mixed_row_innodb.result45
-rw-r--r--mysql-test/suite/rpl/r/rpl_row_utf16.result23
-rw-r--r--mysql-test/suite/rpl/r/rpl_row_utf32.result25
-rw-r--r--mysql-test/suite/rpl/r/rpl_semi_sync.result31
-rw-r--r--mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result44
-rw-r--r--mysql-test/suite/rpl/r/rpl_slave_skip.result4
-rw-r--r--mysql-test/suite/rpl/r/rpl_slow_query_log.result43
-rw-r--r--mysql-test/suite/rpl/r/rpl_sp.result45
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result2
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_innodb.result45
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_loadfile.result2
-rw-r--r--mysql-test/suite/rpl/r/rpl_stm_user_variables.result208
-rw-r--r--mysql-test/suite/rpl/r/rpl_trigger.result2
-rw-r--r--mysql-test/suite/rpl/r/rpl_view_multi.result90
-rw-r--r--mysql-test/suite/rpl/t/disabled.def2
-rw-r--r--mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029-master.opt (renamed from mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt)0
-rw-r--r--mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029.test42
-rw-r--r--mysql-test/suite/rpl/t/rpl_do_grant.test18
-rw-r--r--mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt2
-rw-r--r--mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt2
-rw-r--r--mysql-test/suite/rpl/t/rpl_heartbeat_basic.test2
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix.test36
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2.test40
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix2_win.test78
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ip_mix_win.test65
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test23
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test63
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6.test34
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6_win.cnf56
-rw-r--r--mysql-test/suite/rpl/t/rpl_ipv6_win.test65
-rw-r--r--mysql-test/suite/rpl/t/rpl_killed_ddl.test7
-rw-r--r--mysql-test/suite/rpl/t/rpl_loaddata_symlink.test1
-rw-r--r--mysql-test/suite/rpl/t/rpl_packet-master.opt2
-rw-r--r--mysql-test/suite/rpl/t/rpl_packet-slave.opt2
-rw-r--r--mysql-test/suite/rpl/t/rpl_relayrotate-slave.opt2
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test6
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_utf16.test26
-rw-r--r--mysql-test/suite/rpl/t/rpl_row_utf32.test44
-rw-r--r--mysql-test/suite/rpl/t/rpl_semi_sync.test33
-rw-r--r--mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test18
-rw-r--r--mysql-test/suite/rpl/t/rpl_slow_query_log.test116
-rw-r--r--mysql-test/suite/rpl/t/rpl_sp.test61
-rw-r--r--mysql-test/suite/rpl/t/rpl_stm_user_variables.test141
-rw-r--r--mysql-test/suite/rpl/t/rpl_sync.test14
-rw-r--r--mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test1
-rw-r--r--mysql-test/suite/rpl/t/rpl_view_multi.test145
-rw-r--r--mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result4
-rw-r--r--mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result2
-rw-r--r--mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result12
-rw-r--r--mysql-test/suite/rpl_ndb/t/rpl_ndb_binlog_format_errors.test4
-rw-r--r--mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate-slave.opt2
-rw-r--r--mysql-test/suite/sys_vars/r/autocommit_func.result2
-rw-r--r--mysql-test/suite/sys_vars/r/character_set_client_basic.result10
-rw-r--r--mysql-test/suite/sys_vars/r/character_set_connection_basic.result2
-rw-r--r--mysql-test/suite/sys_vars/r/character_set_database_basic.result2
-rw-r--r--mysql-test/suite/sys_vars/r/character_set_filesystem_basic.result2
-rw-r--r--mysql-test/suite/sys_vars/r/character_set_results_basic.resultbin16478 -> 16478 bytes
-rw-r--r--mysql-test/suite/sys_vars/r/character_sets_dir_basic.result10
-rw-r--r--mysql-test/suite/sys_vars/r/concurrent_insert_func.result4
-rw-r--r--mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result16
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_adaptive_flushing_basic.result92
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_adaptive_hash_index_basic.result92
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_change_buffering_basic.result63
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_file_format_basic.result59
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result59
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_io_capacity_basic.result69
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_old_blocks_pct_basic.result82
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_old_blocks_time_basic.result56
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_read_ahead_threshold_basic.result73
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_read_io_threads_basic.result21
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_replication_delay_basic.result56
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_spin_wait_delay_basic.result56
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_stats_on_metadata_basic.result92
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_stats_sample_pages_basic.result56
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_strict_mode_basic.result120
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_thread_sleep_delay_basic.result120
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_use_sys_malloc_basic.result25
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_version_basic.result17
-rw-r--r--mysql-test/suite/sys_vars/r/innodb_write_io_threads_basic.result21
-rw-r--r--mysql-test/suite/sys_vars/r/last_insert_id_basic.result20
-rw-r--r--mysql-test/suite/sys_vars/r/lc_messages_basic.result8
-rw-r--r--mysql-test/suite/sys_vars/r/lc_time_names_basic.result4
-rw-r--r--mysql-test/suite/sys_vars/r/lock_wait_timeout_basic.result177
-rw-r--r--mysql-test/suite/sys_vars/r/log_error_func.result6
-rw-r--r--mysql-test/suite/sys_vars/r/log_error_func2.result6
-rw-r--r--mysql-test/suite/sys_vars/r/log_error_func3.result3
-rw-r--r--mysql-test/suite/sys_vars/r/log_slow_queries_basic.result20
-rw-r--r--mysql-test/suite/sys_vars/r/lower_case_file_system_basic.result25
-rw-r--r--mysql-test/suite/sys_vars/r/lower_case_table_names_basic.result25
-rw-r--r--mysql-test/suite/sys_vars/r/max_join_size_basic.result14
-rw-r--r--mysql-test/suite/sys_vars/r/max_prepared_stmt_count_func.result2
-rw-r--r--mysql-test/suite/sys_vars/r/myisam_stats_method_func.result36
-rw-r--r--mysql-test/suite/sys_vars/r/old_alter_table_basic.result14
-rw-r--r--mysql-test/suite/sys_vars/r/optimizer_search_depth_basic.result10
-rw-r--r--mysql-test/suite/sys_vars/r/optimizer_switch_basic.result16
-rw-r--r--mysql-test/suite/sys_vars/r/profiling_basic.result34
-rw-r--r--mysql-test/suite/sys_vars/r/profiling_history_size_basic.result14
-rw-r--r--mysql-test/suite/sys_vars/r/pseudo_thread_id_basic.result23
-rw-r--r--mysql-test/suite/sys_vars/r/query_cache_wlock_invalidate_func.result13
-rw-r--r--mysql-test/suite/sys_vars/r/rand_seed1_basic.result5
-rw-r--r--mysql-test/suite/sys_vars/r/rand_seed2_basic.result5
-rw-r--r--mysql-test/suite/sys_vars/r/relay_log_recovery_basic.result12
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_master_enabled_basic.result73
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_master_timeout_basic.result54
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_master_trace_level_basic.result72
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_master_wait_no_slave_basic.result73
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_enabled_basic.result73
-rw-r--r--mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_trace_level_basic.result72
-rw-r--r--mysql-test/suite/sys_vars/r/slow_query_log_func.result16
-rw-r--r--mysql-test/suite/sys_vars/r/sql_log_update_basic.result46
-rw-r--r--mysql-test/suite/sys_vars/r/sql_low_priority_updates_func.result6
-rw-r--r--mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result18
-rw-r--r--mysql-test/suite/sys_vars/r/sql_select_limit_basic.result14
-rw-r--r--mysql-test/suite/sys_vars/r/table_lock_wait_timeout_basic.result98
-rw-r--r--mysql-test/suite/sys_vars/r/thread_cache_size_basic.result6
-rw-r--r--mysql-test/suite/sys_vars/t/all_vars-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/all_vars.test28
-rw-r--r--mysql-test/suite/sys_vars/t/autocommit_func.test4
-rw-r--r--mysql-test/suite/sys_vars/t/character_set_client_basic.test9
-rw-r--r--mysql-test/suite/sys_vars/t/character_set_connection_basic.test3
-rw-r--r--mysql-test/suite/sys_vars/t/character_set_database_basic.test3
-rw-r--r--mysql-test/suite/sys_vars/t/character_set_filesystem_basic.test3
-rw-r--r--mysql-test/suite/sys_vars/t/character_set_results_basic.test3
-rw-r--r--mysql-test/suite/sys_vars/t/character_sets_dir_basic.test10
-rw-r--r--mysql-test/suite/sys_vars/t/concurrent_insert_func.test4
-rw-r--r--mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test16
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_adaptive_flushing_basic.test70
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_adaptive_hash_index_basic.test70
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_change_buffering_basic.test59
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_file_format_basic.test55
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test55
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_io_capacity_basic.test58
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_old_blocks_pct_basic.test63
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_old_blocks_time_basic.test52
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_read_ahead_threshold_basic.test60
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_read_io_threads_basic.test26
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_replication_delay_basic.test52
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_spin_wait_delay_basic.test52
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_stats_on_metadata_basic.test70
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_stats_sample_pages_basic.test52
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_strict_mode_basic.test84
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_table_locks_func.test1
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_thread_sleep_delay_basic.test52
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_use_sys_malloc_basic.test28
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_version_basic.test28
-rw-r--r--mysql-test/suite/sys_vars/t/innodb_write_io_threads_basic.test26
-rw-r--r--mysql-test/suite/sys_vars/t/last_insert_id_basic.test14
-rw-r--r--mysql-test/suite/sys_vars/t/lc_messages_basic.test9
-rw-r--r--mysql-test/suite/sys_vars/t/lock_wait_timeout_basic.test213
-rw-r--r--mysql-test/suite/sys_vars/t/log_error_func.cnf5
-rw-r--r--mysql-test/suite/sys_vars/t/log_error_func.test20
-rw-r--r--mysql-test/suite/sys_vars/t/log_error_func2.cnf5
-rw-r--r--mysql-test/suite/sys_vars/t/log_error_func2.test20
-rw-r--r--mysql-test/suite/sys_vars/t/log_error_func3.test5
-rw-r--r--mysql-test/suite/sys_vars/t/log_slow_queries_basic.test18
-rw-r--r--mysql-test/suite/sys_vars/t/lower_case_file_system_basic.test24
-rw-r--r--mysql-test/suite/sys_vars/t/lower_case_table_names_basic.test25
-rw-r--r--mysql-test/suite/sys_vars/t/max_join_size_basic.test14
-rw-r--r--mysql-test/suite/sys_vars/t/old_alter_table_basic.test11
-rw-r--r--mysql-test/suite/sys_vars/t/optimizer_switch_basic.test13
-rw-r--r--mysql-test/suite/sys_vars/t/profiling_basic.test19
-rw-r--r--mysql-test/suite/sys_vars/t/profiling_history_size_basic.test11
-rw-r--r--mysql-test/suite/sys_vars/t/pseudo_thread_id_basic.test24
-rw-r--r--mysql-test/suite/sys_vars/t/query_cache_wlock_invalidate_func.test13
-rw-r--r--mysql-test/suite/sys_vars/t/rand_seed1_basic.test6
-rw-r--r--mysql-test/suite/sys_vars/t/rand_seed2_basic.test7
-rw-r--r--mysql-test/suite/sys_vars/t/relay_log_recovery_basic.test10
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic.test65
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic.test55
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic.test63
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic.test65
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic.test66
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic-master.opt1
-rw-r--r--mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic.test63
-rw-r--r--mysql-test/suite/sys_vars/t/shared_memory_base_name_basic.test1
-rw-r--r--mysql-test/suite/sys_vars/t/shared_memory_basic.test1
-rw-r--r--mysql-test/suite/sys_vars/t/slow_query_log_func.test21
-rw-r--r--mysql-test/suite/sys_vars/t/sql_log_update_basic.test35
-rw-r--r--mysql-test/suite/sys_vars/t/sql_low_priority_updates_func.test15
-rw-r--r--mysql-test/suite/sys_vars/t/sql_max_join_size_basic.test11
-rw-r--r--mysql-test/suite/sys_vars/t/sql_select_limit_basic.test11
-rw-r--r--mysql-test/suite/sys_vars/t/table_lock_wait_timeout_basic.test171
-rw-r--r--mysql-test/suite/sys_vars/t/thread_cache_size_basic.test6
-rw-r--r--mysql-test/t/alter_table.test28
-rw-r--r--mysql-test/t/archive.test11
-rw-r--r--mysql-test/t/bigint.test35
-rw-r--r--mysql-test/t/bug39022.test63
-rw-r--r--mysql-test/t/bug47671-master.opt2
-rw-r--r--mysql-test/t/cache_innodb-master.opt2
-rw-r--r--mysql-test/t/comment_column.test130
-rw-r--r--mysql-test/t/comment_column2.test172
-rw-r--r--mysql-test/t/comment_index.test100
-rw-r--r--mysql-test/t/comment_table.test55
-rw-r--r--mysql-test/t/constraints.test44
-rw-r--r--mysql-test/t/count_distinct2-master.opt2
-rw-r--r--mysql-test/t/create.test38
-rw-r--r--mysql-test/t/csv.test20
-rw-r--r--mysql-test/t/ctype_binary.test12
-rw-r--r--mysql-test/t/ctype_cp1251.test10
-rw-r--r--mysql-test/t/ctype_cp932_binlog_stm.test15
-rw-r--r--mysql-test/t/ctype_eucjpms.test17
-rw-r--r--mysql-test/t/ctype_latin1.test11
-rw-r--r--mysql-test/t/ctype_latin1_de-master.opt2
-rw-r--r--mysql-test/t/ctype_ldml.test21
-rw-r--r--mysql-test/t/ctype_many.test73
-rw-r--r--mysql-test/t/ctype_sjis.test14
-rw-r--r--mysql-test/t/ctype_ucs.test14
-rw-r--r--mysql-test/t/ctype_ucs2_def-master.opt2
-rw-r--r--mysql-test/t/ctype_ujis.test17
-rw-r--r--mysql-test/t/ctype_utf16.test733
-rw-r--r--mysql-test/t/ctype_utf16_uca.test290
-rw-r--r--mysql-test/t/ctype_utf32.test784
-rw-r--r--mysql-test/t/ctype_utf32_uca.test291
-rw-r--r--mysql-test/t/ctype_utf8.test11
-rw-r--r--mysql-test/t/ctype_utf8mb4.test1798
-rw-r--r--mysql-test/t/ctype_utf8mb4_heap.test6
-rw-r--r--mysql-test/t/ctype_utf8mb4_innodb.test6
-rw-r--r--mysql-test/t/ctype_utf8mb4_myisam.test5
-rw-r--r--mysql-test/t/ctype_utf8mb4_ndb.test7
-rw-r--r--mysql-test/t/debug_sync.test2
-rw-r--r--mysql-test/t/delayed.test2
-rw-r--r--mysql-test/t/delete.test29
-rw-r--r--mysql-test/t/disabled.def3
-rw-r--r--mysql-test/t/drop.test2
-rw-r--r--mysql-test/t/drop_debug.test3
-rw-r--r--mysql-test/t/flush.test166
-rw-r--r--mysql-test/t/flush_block_commit.test33
-rw-r--r--mysql-test/t/flush_block_commit_notembedded.test27
-rw-r--r--mysql-test/t/flush_table.test25
-rw-r--r--mysql-test/t/foreign_key.test72
-rw-r--r--mysql-test/t/fulltext.test21
-rw-r--r--mysql-test/t/func_gconcat.test15
-rw-r--r--mysql-test/t/func_str.test2
-rw-r--r--mysql-test/t/func_time.test33
-rw-r--r--mysql-test/t/gis.test45
-rw-r--r--mysql-test/t/group_by.test50
-rw-r--r--mysql-test/t/group_min_max.test29
-rw-r--r--mysql-test/t/having.test26
-rw-r--r--mysql-test/t/implicit_commit.test1166
-rw-r--r--mysql-test/t/information_schema.test93
-rw-r--r--mysql-test/t/init_connect-master.opt2
-rw-r--r--mysql-test/t/innodb-lock.test49
-rw-r--r--mysql-test/t/innodb.test10
-rw-r--r--mysql-test/t/innodb_mysql.test61
-rw-r--r--mysql-test/t/innodb_mysql_lock-master.opt1
-rw-r--r--mysql-test/t/innodb_mysql_lock.test175
-rw-r--r--mysql-test/t/innodb_mysql_sync.test48
-rw-r--r--mysql-test/t/insert_notembedded.test2
-rw-r--r--mysql-test/t/ipv4_as_ipv6.test3
-rw-r--r--mysql-test/t/ipv4_as_ipv6_win-master.opt1
-rw-r--r--mysql-test/t/ipv4_as_ipv6_win.test31
-rw-r--r--mysql-test/t/ipv6.test43
-rw-r--r--mysql-test/t/ipv6_win-master.opt1
-rw-r--r--mysql-test/t/ipv6_win.test39
-rw-r--r--mysql-test/t/join.test25
-rw-r--r--mysql-test/t/kill.test237
-rw-r--r--mysql-test/t/lock.test335
-rw-r--r--mysql-test/t/lock_multi.test524
-rw-r--r--mysql-test/t/lock_sync.test71
-rw-r--r--mysql-test/t/lowercase_table2.test14
-rw-r--r--mysql-test/t/mdl_sync.test3468
-rw-r--r--mysql-test/t/merge-big.test4
-rw-r--r--mysql-test/t/merge.test464
-rw-r--r--mysql-test/t/merge_recover-master.opt1
-rw-r--r--mysql-test/t/merge_recover.test113
-rw-r--r--mysql-test/t/multi_update-master.opt2
-rw-r--r--mysql-test/t/multi_update.test23
-rw-r--r--mysql-test/t/multi_update2-master.opt2
-rw-r--r--mysql-test/t/multi_update_tiny_hash-master.opt2
-rw-r--r--mysql-test/t/myisam.test24
-rw-r--r--mysql-test/t/mysqlbinlog.test12
-rw-r--r--mysql-test/t/mysqltest.test200
-rw-r--r--mysql-test/t/no_binlog.test6
-rw-r--r--mysql-test/t/not_embedded_server.test23
-rw-r--r--mysql-test/t/order_fill_sortbuf-master.opt2
-rw-r--r--mysql-test/t/partition.test13
-rw-r--r--mysql-test/t/partition_debug_sync.test89
-rw-r--r--mysql-test/t/partition_innodb-master.opt1
-rw-r--r--mysql-test/t/partition_innodb.test2
-rw-r--r--mysql-test/t/partition_innodb_semi_consistent.test3
-rw-r--r--mysql-test/t/partition_sync.test52
-rw-r--r--mysql-test/t/perror.test15
-rw-r--r--mysql-test/t/ps-master.opt2
-rw-r--r--mysql-test/t/ps.test41
-rw-r--r--mysql-test/t/ps_ddl.test83
-rw-r--r--mysql-test/t/ps_ddl1.test2
-rw-r--r--mysql-test/t/query_cache.test19
-rw-r--r--mysql-test/t/query_cache_28249.test6
-rw-r--r--mysql-test/t/read_only_innodb.test148
-rw-r--r--mysql-test/t/repair.test30
-rw-r--r--mysql-test/t/schema.test93
-rw-r--r--mysql-test/t/show_check-master.opt2
-rw-r--r--mysql-test/t/show_profile.test18
-rw-r--r--mysql-test/t/sp-bugs.test43
-rw-r--r--mysql-test/t/sp-destruct.test25
-rw-r--r--mysql-test/t/sp-error.test32
-rw-r--r--mysql-test/t/sp-lock.test898
-rw-r--r--mysql-test/t/sp.test85
-rw-r--r--mysql-test/t/sp_notembedded.test39
-rw-r--r--mysql-test/t/sp_sync.test2
-rw-r--r--mysql-test/t/status.test2
-rw-r--r--mysql-test/t/strict.test74
-rw-r--r--mysql-test/t/subselect.test17
-rw-r--r--mysql-test/t/trigger.test25
-rw-r--r--mysql-test/t/trigger_notembedded.test2
-rw-r--r--mysql-test/t/truncate.test96
-rw-r--r--mysql-test/t/truncate_coverage.test164
-rw-r--r--mysql-test/t/type_bit.test13
-rw-r--r--mysql-test/t/type_timestamp.test14
-rw-r--r--mysql-test/t/udf.test69
-rw-r--r--mysql-test/t/union-master.opt2
-rw-r--r--mysql-test/t/variables.test5
-rw-r--r--mysql-test/t/variables_community.test (renamed from mysql-test/t/variables+c.test)0
-rw-r--r--mysql-test/t/view.test172
-rw-r--r--mysql-test/t/view_grant.test18
-rw-r--r--mysql-test/t/xa.test3
587 files changed, 144563 insertions, 4981 deletions
diff --git a/mysql-test/CMakeLists.txt b/mysql-test/CMakeLists.txt
index c00d5153d3e..1e6adced6a9 100644
--- a/mysql-test/CMakeLists.txt
+++ b/mysql-test/CMakeLists.txt
@@ -24,6 +24,7 @@ INSTALL(
PATTERN "mtr.out*" EXCLUDE
PATTERN ".cvsignore" EXCLUDE
PATTERN "*.am" EXCLUDE
+ PATTERN "*.in" EXCLUDE
)
@@ -46,7 +47,8 @@ IF(UNIX)
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
)
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mtr
- ${CMAKE_CURRENT_BINARY_DIR}/mysql-test-run DESTINATION mysql-test)
+ ${CMAKE_CURRENT_BINARY_DIR}/mysql-test-run
+ DESTINATION ${INSTALL_MYSQLTESTDIR})
ENDIF()
IF(CMAKE_GENERATOR MATCHES "Visual Studio")
@@ -64,12 +66,6 @@ ELSE()
ENDIF()
-ADD_CUSTOM_TARGET(test-force
- COMMAND ${SETCONFIG_COMMAND}
- COMMAND ${SETOS_COMMAND}
- COMMAND perl mysql-test-run.pl --force
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
-)
SET(EXP --experimental=collections/default.experimental)
IF(WIN32)
@@ -100,6 +96,11 @@ SET(TEST_BT_START
COMMAND ${SET_ENV} MTR_BUILD_THREAD=auto
)
+ADD_CUSTOM_TARGET(test-force
+ ${TEST_BT_START}
+ COMMAND ${MTR_FORCE}
+)
+
ADD_CUSTOM_TARGET(test-bt
${TEST_BT_START}
COMMAND ${MTR_FORCE} --comment=normal --timer --skip-ndbcluster --report-features ${EXP}
@@ -124,4 +125,3 @@ ADD_CUSTOM_TARGET(test-bt-debug
COMMAND ${MTR_FORCE} --comment=debug --timer --skip-ndbcluster --skip-rpl --report-features ${EXP}
)
-
diff --git a/mysql-test/Makefile.am b/mysql-test/Makefile.am
index ebfef321db3..713751b9355 100644
--- a/mysql-test/Makefile.am
+++ b/mysql-test/Makefile.am
@@ -138,12 +138,12 @@ uninstall-local:
# mtr - a shortcut for executing mysql-test-run.pl
mtr:
$(RM) -f mtr
- $(LN_S) mysql-test-run.pl mtr
+ $(LN_S) $(srcdir)/mysql-test-run.pl mtr
# mysql-test-run - a shortcut for executing mysql-test-run.pl
mysql-test-run:
$(RM) -f mysql-test-run
- $(LN_S) mysql-test-run.pl mysql-test-run
+ $(LN_S) $(srcdir)/mysql-test-run.pl mysql-test-run
# Don't update the files from bitkeeper
%::SCCS/s.%
diff --git a/mysql-test/collections/default.experimental b/mysql-test/collections/default.experimental
index e62c88db5cb..4e8df10132a 100644
--- a/mysql-test/collections/default.experimental
+++ b/mysql-test/collections/default.experimental
@@ -1,12 +1,11 @@
# For easier human reading (MTR doesn't care), please keep entries
# in alphabetical order. This also helps with merge conflict resolution.
-binlog.binlog_tmp_table* # Bug#45578:2009-07-10 alik Test binlog_tmp_table fails ramdonly on PB2: Unknown table 't2'
binlog.binlog_multi_engine # joro : NDB tests marked as experimental as agreed with bochklin
funcs_1.charset_collation_1 # depends on compile-time decisions
+funcs_1.myisam_views @solaris # Bug#50595 2010-03-05 alik funcs_1.myisam_views takes longer time on 6.0 branch than 5.1 branch
-main.ctype_gbk_binlog @solaris # Bug#46010: main.ctype_gbk_binlog fails sporadically : Table 't2' already exists
main.information_schema # Bug#47449 2009-09-19 alik main.information_schema and innodb.innodb_information_schema fail sporadically
main.lock_multi_bug38499 # Bug#47448 2009-09-19 alik main.lock_multi_bug38499 times out sporadically
main.lock_multi_bug38691 @solaris # Bug#47792 2009-10-02 alik main.lock_multi_bug38691 times out sporadically on Solaris 10
@@ -16,9 +15,6 @@ main.plugin # Bug#47146 Linking problem with exampl
main.signal_demo3 @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
main.sp @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
-perfschema.tampered_perfschema_table1 @windows # Bug#50478 2010-01-20 alik perfschema.tampered_perfschema_table1 fails sporadically on Windows and Solaris
-perfschema.tampered_perfschema_table1 @solaris # Bug#50478 2010-01-20 alik perfschema.tampered_perfschema_table1 fails sporadically on Windows and Solaris
-
rpl.rpl_heartbeat_basic # BUG#43828 2009-10-22 luis fails sporadically
rpl.rpl_heartbeat_2slaves # BUG#43828 2009-10-22 luis fails sporadically
rpl.rpl_innodb_bug28430* # Bug#46029
@@ -26,12 +22,8 @@ rpl.rpl_innodb_bug30888* @solaris # Bug#47646 2009-09-25 alik rpl.rpl_inn
rpl.rpl_killed_ddl @windows # Bug#47638 2010-01-20 alik The rpl_killed_ddl test fails on Windows
rpl.rpl_plugin_load* @solaris # Bug#47146
rpl.rpl_row_sp011* @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
-rpl.rpl_slave_load_remove_tmpfile* @windows # Bug#50474 2010-01-20 alik rpl_slave_load_remove_tmpfile failed on windows debug enabled binary
-rpl.rpl_sync* @windows # Bug#50473 2010-01-20 alik rpl_sync fails on windows debug enabled binaries
-rpl.rpl_timezone* # Bug#47017 2009-10-27 alik rpl_timezone fails on PB-2 with mismatch error
sys_vars.max_sp_recursion_depth_func @solaris # Bug#47791 2010-01-20 alik Several test cases fail on Solaris with error Thread stack overrun
-sys_vars.delayed_insert_limit_func # Bug#50435 2010-01-25 alik sys_vars.delayed_insert_limit_func fails on Ubuntu x86_64 in debug mode
# Declare all NDB-tests in ndb and rpl_ndb test suites experimental.
# Usually the test cases from ndb and rpl_ndb test suites are not run in PB,
diff --git a/mysql-test/extra/binlog_tests/drop_table.test b/mysql-test/extra/binlog_tests/drop_table.test
new file mode 100644
index 00000000000..c55cbb67560
--- /dev/null
+++ b/mysql-test/extra/binlog_tests/drop_table.test
@@ -0,0 +1,34 @@
+#
+# Bug#989: If DROP TABLE while there's an active transaction, wrong binlog order
+#
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+connect (con1,localhost,root,,);
+connect (con2,localhost,root,,);
+
+connection con1;
+RESET MASTER;
+CREATE TABLE t1 (a INT);
+SET AUTOCOMMIT=OFF;
+BEGIN;
+INSERT INTO t1 VALUES(1);
+
+connection con2;
+--send DROP TABLE t1;
+
+connection con1;
+COMMIT;
+
+connection con2;
+--reap
+
+connection default;
+
+--disconnect con1
+--disconnect con2
+
+let $VERSION=`select version()`;
+source include/show_binlog_events.inc;
diff --git a/mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test b/mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test
index 4abf21a9930..e59438c9a28 100644
--- a/mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test
+++ b/mysql-test/extra/binlog_tests/mix_innodb_myisam_binlog.test
@@ -205,6 +205,10 @@ select (@after:=unix_timestamp())*0; # always give repeatable output
# the bug, the reap would return immediately after the insert into t2.
select (@after-@before) >= 2;
+connection con3;
+commit;
+
+connection con2;
drop table t1,t2;
commit;
diff --git a/mysql-test/extra/rpl_tests/rpl_innodb.test b/mysql-test/extra/rpl_tests/rpl_innodb.test
index c866b68466d..5bea93a0192 100644
--- a/mysql-test/extra/rpl_tests/rpl_innodb.test
+++ b/mysql-test/extra/rpl_tests/rpl_innodb.test
@@ -118,6 +118,71 @@ connection master;
FLUSH LOGS;
DROP DATABASE mysqltest1;
--- source include/master-slave-end.inc
--echo End of 5.1 tests
+
+--echo #
+--echo # Bug#39675 rename tables on innodb tables with pending
+--echo # transactions causes slave data issue.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+DROP TABLE IF EXISTS t3;
+--enable_warnings
+
+CREATE TABLE t1 (
+ id INT PRIMARY KEY auto_increment,
+ b INT DEFAULT NULL
+) ENGINE=InnoDB;
+
+CREATE TABLE t2 (
+ id INT PRIMARY KEY auto_increment,
+ b INT DEFAULT NULL
+) ENGINE=InnoDB;
+
+INSERT INTO t1 (b) VALUES (1),(2),(3);
+
+BEGIN;
+INSERT INTO t1(b) VALUES (4);
+
+--echo -------- switch to master1 --------
+connection master1;
+--send RENAME TABLE t1 TO t3, t2 TO t1;
+
+--echo -------- switch to master --------
+connection master;
+# Need to wait until RENAME is received
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE info = "RENAME TABLE t1 TO t3, t2 TO t1" and
+ state = "Waiting for table";
+--source include/wait_condition.inc
+
+COMMIT;
+
+--echo -------- switch to master1 --------
+connection master1;
+--reap
+
+--echo -------- switch to master --------
+connection master;
+SELECT * FROM t1;
+SELECT * FROM t3;
+
+sync_slave_with_master;
+
+--echo -------- switch to slave --------
+connection slave;
+SELECT * FROM t1;
+SELECT * FROM t3;
+
+--echo -------- switch to master --------
+connection master;
+DROP TABLE t1;
+DROP TABLE t3;
+
+--echo End of 6.0 tests
+
+--source include/master-slave-end.inc
diff --git a/mysql-test/extra/rpl_tests/rpl_loaddata.test b/mysql-test/extra/rpl_tests/rpl_loaddata.test
index 0e1005cd6d9..a2900090c1e 100644
--- a/mysql-test/extra/rpl_tests/rpl_loaddata.test
+++ b/mysql-test/extra/rpl_tests/rpl_loaddata.test
@@ -219,6 +219,19 @@ connect (conn2,localhost,root,,*NO-ONE*);
-- echo ### assertion: works without stating the default database
-- replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
-- eval $UPPER_STMT_HEAD LOCAL INFILE '$MYSQLTEST_VARDIR/std_data/loaddata5.dat' INTO TABLE $db1.t1
+
+# We cannot disconnect right away because when inserting
+# concurrently in a MyISAM table, the server is sending an OK
+# to the client before updating the table state (where the
+# number of records is kept). See: BUG#37521 and BUG#29334.
+# So we need to wait, otherwise we would be having sporadic
+# failures as reported here: BUG#50451.
+
+# 12 = 3 rows per each LOAD DATA executed x 4
+-- let $count= 12
+-- let $table= $db1.t1
+--source include/wait_until_rows_count.inc
+
-- echo ### disconnect and switch back to master connection
-- disconnect conn2
-- connection master
diff --git a/mysql-test/include/cleanup_fake_relay_log.inc b/mysql-test/include/cleanup_fake_relay_log.inc
index 43aa46cb657..269cd04ca34 100644
--- a/mysql-test/include/cleanup_fake_relay_log.inc
+++ b/mysql-test/include/cleanup_fake_relay_log.inc
@@ -8,9 +8,10 @@
--echo Cleaning up after setup_fake_relay_log.inc
-# Remove files.
-remove_file $_fake_relay_log;
-remove_file $_fake_relay_index;
--disable_query_log
+--disable_warnings
+STOP SLAVE SQL_THREAD;
+RESET SLAVE;
eval SET @@global.relay_log_purge= $_fake_relay_log_purge;
+--enable_warnings
--enable_query_log
diff --git a/mysql-test/include/commit.inc b/mysql-test/include/commit.inc
index 4336d3be0ed..59d4f6be524 100644
--- a/mysql-test/include/commit.inc
+++ b/mysql-test/include/commit.inc
@@ -729,15 +729,15 @@ call p_verify_status_increment(2, 0, 4, 4);
alter table t3 add column (b int);
call p_verify_status_increment(2, 0, 2, 0);
alter table t3 rename t4;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(2, 0, 2, 0);
rename table t4 to t3;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(0, 0, 0, 0);
truncate table t3;
call p_verify_status_increment(2, 0, 2, 0);
create view v1 as select * from t2;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(2, 0, 2, 0);
check table t1;
-call p_verify_status_increment(3, 0, 3, 0);
+call p_verify_status_increment(2, 0, 2, 0);
--echo # Sic: after this bug is fixed, CHECK leaves no pending transaction
commit;
call p_verify_status_increment(0, 0, 0, 0);
diff --git a/mysql-test/include/ctype_datetime.inc b/mysql-test/include/ctype_datetime.inc
new file mode 100644
index 00000000000..dc70f1f38a9
--- /dev/null
+++ b/mysql-test/include/ctype_datetime.inc
@@ -0,0 +1,11 @@
+#
+# Bug#32390 Character sets: casting utf32 to/from date doesn't work
+#
+CREATE TABLE t1 AS SELECT repeat('a',20) AS s1 LIMIT 0;
+SET timestamp=1216359724;
+INSERT INTO t1 VALUES (current_date);
+INSERT INTO t1 VALUES (current_time);
+INSERT INTO t1 VALUES (current_timestamp);
+SELECT s1, hex(s1) FROM t1;
+DROP TABLE t1;
+SET timestamp=0;
diff --git a/mysql-test/include/ctype_like.inc b/mysql-test/include/ctype_like.inc
new file mode 100644
index 00000000000..38de0bf2671
--- /dev/null
+++ b/mysql-test/include/ctype_like.inc
@@ -0,0 +1,50 @@
+select @@collation_connection;
+
+#
+# Create a table with a nullable varchar(10) column
+# using currect character_set_connection.
+create table t1 as select repeat(' ',10) as a union select null;
+alter table t1 add key(a);
+show create table t1;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+explain select * from t1 where a like 'abc%';
+explain select * from t1 where a like concat('abc','%');
+select * from t1 where a like "abc%";
+select * from t1 where a like concat("abc","%");
+select * from t1 where a like "ABC%";
+select * from t1 where a like "test%";
+select * from t1 where a like "te_t";
+select * from t1 where a like "%a%";
+select * from t1 where a like "%abcd%";
+select * from t1 where a like "%abc\d%";
+drop table t1;
+
+#
+# Bug #2619 ucs2 LIKE comparison fails in some cases
+#
+
+select 'AA' like 'AA';
+select 'AA' like 'A%A';
+select 'AA' like 'A%%A';
+select 'AA' like 'AA%';
+select 'AA' like '%AA%';
+select 'AA' like '%A';
+select 'AA' like '%AA';
+select 'AA' like 'A%A%';
+select 'AA' like '_%_%';
+select 'AA' like '%A%A';
+select 'AAA'like 'A%A%A';
+
+select 'AZ' like 'AZ';
+select 'AZ' like 'A%Z';
+select 'AZ' like 'A%%Z';
+select 'AZ' like 'AZ%';
+select 'AZ' like '%AZ%';
+select 'AZ' like '%Z';
+select 'AZ' like '%AZ';
+select 'AZ' like 'A%Z%';
+select 'AZ' like '_%_%';
+select 'AZ' like '%A%Z';
+select 'AZ' like 'A_';
+select 'AZ' like '_Z';
+select 'AMZ'like 'A%M%Z';
diff --git a/mysql-test/include/ctype_numconv.inc b/mysql-test/include/ctype_numconv.inc
new file mode 100644
index 00000000000..959ca7dfeea
--- /dev/null
+++ b/mysql-test/include/ctype_numconv.inc
@@ -0,0 +1,1606 @@
+--echo #
+--echo # Start of WL#2649 Number-to-string conversions
+--echo #
+#
+# Basic constants
+#
+select hex(concat(1));
+create table t1 as select concat(1) as c1;
+show create table t1;
+select hex(c1) from t1;
+drop table t1;
+
+select hex(concat(18446744073709551615));
+create table t1 as select concat(18446744073709551615) as c1;
+show create table t1;
+select hex(c1) from t1;
+drop table t1;
+
+select hex(concat(1.1));
+create table t1 as select concat(1.1) as c1;
+show create table t1;
+select hex(c1) from t1;
+drop table t1;
+
+
+#
+# Arithmetic operators
+#
+
+select hex(concat('a', 1+2)), charset(concat(1+2));
+create table t1 as select concat(1+2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1-2));
+create table t1 as select concat(1-2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1*2));
+create table t1 as select concat(1*2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1/2));
+create table t1 as select concat(1/2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1 div 2));
+create table t1 as select concat(1 div 2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1 % 2));
+create table t1 as select concat(1 % 2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(-1));
+create table t1 as select concat(-1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(-(1+2)));
+create table t1 as select concat(-(1+2)) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Bit functions
+#
+
+select hex(concat(1|2));
+create table t1 as select concat(1|2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(1&2));
+create table t1 as select concat(1&2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(bit_count(12)));
+create table t1 as select concat(bit_count(12)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(2<<1));
+create table t1 as select concat(2<<1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(2>>1));
+create table t1 as select concat(2>>1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(~0));
+create table t1 as select concat(~0) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(3^2));
+create table t1 as select concat(3^2) as c1;
+show create table t1;
+drop table t1;
+
+
+
+#
+# Math functions
+#
+# Note, some tests use LEFT(func(),1) to avoid
+# non-deterministic results on various platforms.
+#
+
+select hex(concat(abs(-2)));
+create table t1 as select concat(abs(-2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(exp(2)),1));
+create table t1 as select concat(exp(2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(log(2)),1));
+create table t1 as select concat(log(2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(log2(2)),1));
+create table t1 as select concat(log2(2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(log10(2)),1));
+create table t1 as select concat(log10(2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(sqrt(2)),1));
+create table t1 as select concat(sqrt(2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(pow(2,2)),1));
+create table t1 as select concat(pow(2,2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(acos(0.5)),1));
+create table t1 as select concat(acos(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(asin(0.5)),1));
+create table t1 as select concat(asin(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(atan(0.5)),1));
+create table t1 as select concat(atan(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(cos(0.5)),1));
+create table t1 as select concat(cos(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(sin(0.5)),1));
+create table t1 as select concat(sin(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(tan(0.5)),1));
+create table t1 as select concat(tan(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(degrees(0)));
+create table t1 as select concat(degrees(0)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(radians(0)));
+create table t1 as select concat(radians(0)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(ceiling(0.5)));
+create table t1 as select concat(ceiling(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(floor(0.5)));
+create table t1 as select concat(floor(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(round(0.5)));
+create table t1 as select concat(round(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(sign(0.5)));
+create table t1 as select concat(sign(0.5)) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(rand()) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# String functions
+#
+
+select hex(concat(length('a')));
+create table t1 as select concat(length('a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(char_length('a')));
+create table t1 as select concat(char_length('a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(bit_length('a')));
+create table t1 as select concat(bit_length('a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(coercibility('a')));
+create table t1 as select concat(coercibility('a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(locate('a','a')));
+create table t1 as select concat(locate('a','a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(field('c','a','b','c')));
+create table t1 as select concat(field('c','a','b','c')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(ascii(61)));
+create table t1 as select concat(ascii(61)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(ord(61)));
+create table t1 as select concat(ord(61)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(find_in_set('b','a,b,c,d')));
+create table t1 as select concat(find_in_set('b','a,b,c,d')) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# String hash functions
+#
+
+select md5('a'), hex(md5('a'));
+create table t1 as select md5('a') as c1;
+show create table t1;
+drop table t1;
+
+select old_password('a'), hex(old_password('a'));
+create table t1 as select old_password('a') as c1;
+show create table t1;
+drop table t1;
+
+select password('a'), hex(password('a'));
+create table t1 as select password('a') as c1;
+show create table t1;
+drop table t1;
+
+select sha('a'), hex(sha('a'));
+create table t1 as select sha('a') as c1;
+show create table t1;
+drop table t1;
+
+select sha1('a'), hex(sha1('a'));
+create table t1 as select sha1('a') as c1;
+show create table t1;
+drop table t1;
+
+#select sha2('a',224), hex(sha2('a',224));
+#create table t1 as select sha2('a',224) as c1;
+#show create table t1;
+#drop table t1;
+
+
+
+#
+# CAST
+#
+
+select hex(concat(cast('-1' as signed)));
+create table t1 as select concat(cast('-1' as signed)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(cast('1' as unsigned)));
+create table t1 as select concat(cast('1' as unsigned)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(cast(1/2 as decimal(5,5))));
+create table t1 as select concat(cast(1/2 as decimal(5,5))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(cast('2001-01-02 03:04:05' as date)));
+create table t1 as select concat(cast('2001-01-02 03:04:05' as date)) as c1;
+show create table t1;
+select * from t1;
+drop table t1;
+
+select hex(concat(cast('2001-01-02 03:04:05' as time)));
+create table t1 as select concat(cast('2001-01-02 03:04:05' as time)) as c1;
+show create table t1;
+select * from t1;
+drop table t1;
+
+select hex(concat(cast('2001-01-02' as datetime)));
+create table t1 as select concat(cast('2001-01-02' as datetime)) as c1;
+show create table t1;
+select * from t1;
+drop table t1;
+
+
+#
+# Aggregation: LEAST, GREATEST
+#
+select hex(concat(least(1,2)));
+create table t1 as select concat(least(1,2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(greatest(1,2)));
+create table t1 as select concat(greatest(1,2)) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Aggregation: CASE
+#
+select hex(concat(case when 11 then 22 else 33 end));
+create table t1 as select concat(case when 11 then 22 else 33 end) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Aggregation: COALESCE
+#
+select hex(concat(coalesce(1,2)));
+create table t1 as select concat(coalesce(1,2)) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Aggregation: CONCAT_WS, GROUP_CONCAT
+#
+select hex(concat_ws(1,2,3));
+create table t1 as select concat_ws(1,2,3) as c1;
+show create table t1;
+drop table t1;
+
+select hex(group_concat(1,2,3));
+create table t1 as select group_concat(1,2,3) as c1;
+show create table t1;
+drop table t1;
+
+#
+# Aggregation: UNION
+#
+create table t1 as select 1 as c1 union select 'a';
+show create table t1;
+select hex(c1) from t1 order by c1;
+drop table t1;
+
+
+#
+# Miscelaneous functions
+#
+
+create table t1 as select concat(last_insert_id()) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(benchmark(0,0)));
+create table t1 as select concat(benchmark(0,0)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(sleep(0)));
+create table t1 as select concat(sleep(0)) as c1;
+show create table t1;
+drop table t1;
+
+# Fails with "mtr --ps-protocol" for some reasons.
+#select hex(concat(get_lock('a',0)));
+#select hex(concat(release_lock('a')));
+#create table t1 as select concat(get_lock('a',0)) as c1;
+#show create table t1;
+#drop table t1;
+
+select hex(concat(is_free_lock('xxxx')));
+create table t1 as select concat(is_free_lock('xxxx')) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(is_used_lock('a')) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(release_lock('a')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(crc32('')));
+create table t1 as select concat(crc32('')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(uncompressed_length('')));
+create table t1 as select concat(uncompressed_length('')) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(connection_id()) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(inet_aton('127.1.1.1')));
+create table t1 as select concat(inet_aton('127.1.1.1')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(inet_ntoa(2130772225)));
+create table t1 as select concat(inet_ntoa(2130772225)) as c1;
+select * from t1;
+show create table t1;
+drop table t1;
+
+select hex(concat(row_count()));
+create table t1 as select concat(row_count()) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(found_rows()));
+create table t1 as select concat(found_rows()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(uuid_short()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(uuid()) as c1;
+show create table t1;
+drop table t1;
+
+#
+# Make sure we can mix uuid() to a latin1 object
+# with DERIVATION_IMPLICIT (and higher):
+# (DERIVATION_COERCIBLE + MY_REPERTOIRE_ASCII allow to do so)
+#
+select coercibility(uuid()), coercibility(cast('a' as char character set latin1));
+select charset(concat(uuid(), cast('a' as char character set latin1)));
+create table t1 as select concat(uuid(), cast('a' as char character set latin1)) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(master_pos_wait('non-existent',0,2)) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# User and system variable functions
+#
+
+# User variables: INT
+select hex(concat(@a1:=1));
+create table t1 as select concat(@a2:=2) as c1, @a3:=3 as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+set @a2=1;
+select hex(concat(@a2));
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+# User variables: REAL
+select hex(concat(@a1:=sqrt(1)));
+create table t1 as select concat(@a2:=sqrt(1)) as c1, @a3:=sqrt(1) as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+set @a2=sqrt(1);
+select hex(concat(@a2));
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+# User variables: DECIMAL
+select hex(concat(@a1:=1.1));
+create table t1 as select concat(@a2:=1.1) as c1, @a3:=1.1 as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+set @a2=1.1;
+select hex(concat(@a2));
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+
+select hex(concat(@@ft_max_word_len));
+create table t1 as select concat(@@ft_max_word_len) as c1;
+select hex(c1) from t1;
+show create table t1;
+drop table t1;
+
+#
+# Comparison functions
+#
+
+select hex(concat('a'='a' IS TRUE));
+create table t1 as select concat('a'='a' IS TRUE) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a'='a' IS NOT TRUE));
+create table t1 as select concat('a'='a' IS NOT TRUE) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(NOT 'a'='a'));
+create table t1 as select concat(NOT 'a'='a') as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' IS NULL));
+create table t1 as select concat('a' IS NULL) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' IS NOT NULL));
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' rlike 'a'));
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(strcmp('a','b')));
+create table t1 as select concat(strcmp('a','b')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' like 'a'));
+create table t1 as select concat('a' like 'b') as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' between 'b' and 'c'));
+create table t1 as select concat('a' between 'b' and 'c') as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat('a' in ('a','b')));
+create table t1 as select concat('a' in ('a','b')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(interval(23, 1, 15, 17, 30, 44, 200)));
+create table t1 as select concat(interval(23, 1, 15, 17, 30, 44, 200)) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 (a varchar(10), fulltext key(a));
+insert into t1 values ('a');
+select hex(concat(match (a) against ('a'))) from t1;
+create table t2 as select concat(match (a) against ('a')) as a from t1;
+show create table t2;
+drop table t1, t2;
+
+select hex(ifnull(1,'a'));
+create table t1 as select ifnull(1,'a') as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(ifnull(1,1)));
+create table t1 as select concat(ifnull(1,1)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(ifnull(1.1,1.1)));
+create table t1 as select concat(ifnull(1.1,1.1)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(if(1,'b',1));
+create table t1 as select if(1,'b',1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(if(1,1,'b'));
+create table t1 as select if(1,1,'b') as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(if(1,1,1)));
+create table t1 as select concat(if(1,1,1)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(nullif(1,2)));
+create table t1 as select concat(nullif(1,2)) as c1;
+show create table t1;
+drop table t1;
+
+#
+# GIS functions
+#
+
+select hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))));
+create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
+create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
+create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
+create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
+create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
+create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
+create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
+drop table t1;
+
+select hex(concat(x(GeomFromText('Point(1 2)'))));
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(y(GeomFromText('Point(1 2)'))));
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
+create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
+create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
+create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(AsText(GeomFromText('Point(1 2)'))));
+create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+drop table t1;
+
+
+
+#
+# Date/Time functions
+#
+
+select hex(concat(period_add(200902, 2)));
+create table t1 as select concat(period_add(200902, 2)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(period_diff(200902, 200802)));
+create table t1 as select concat(period_add(200902, 200802)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(to_days(20090224)));
+create table t1 as select concat(to_days(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(dayofmonth(20090224)));
+create table t1 as select concat(dayofmonth(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(dayofyear(20090224)));
+create table t1 as select concat(dayofyear(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(hour('10:11:12')));
+create table t1 as select concat(hour('10:11:12')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(minute('10:11:12')));
+create table t1 as select concat(minute('10:11:12')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(second('10:11:12')));
+create table t1 as select concat(second('10:11:12')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(quarter(20090224)));
+create table t1 as select concat(quarter(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(week(20090224)));
+create table t1 as select concat(week(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(yearweek(20090224)));
+create table t1 as select concat(yearweek(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(year(20090224)));
+create table t1 as select concat(year(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(weekday(20090224)));
+create table t1 as select concat(weekday(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(dayofweek(20090224)));
+create table t1 as select concat(dayofweek(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(unix_timestamp(20090224)));
+create table t1 as select concat(unix_timestamp(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(time_to_sec('10:11:12')));
+create table t1 as select concat(time_to_sec('10:11:12')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(extract(year from 20090702)));
+create table t1 as select concat(extract(year from 20090702)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(microsecond('12:00:00.123456')));
+create table t1 as select concat(microsecond('12:00:00.123456')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(month(20090224)));
+create table t1 as select concat(month(20090224)) as c1;
+show create table t1;
+drop table t1;
+
+
+create table t1 as select concat(last_day('2003-02-05')) as c1;
+show create table t1;
+select c1, hex(c1) from t1;
+drop table t1;
+
+create table t1 as select concat(from_days(730669)) as c1;
+show create table t1;
+select c1, hex(c1) from t1;
+drop table t1;
+
+create table t1 as select concat(curdate()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(utc_date()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(curtime()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select repeat('a',20) as c1 limit 0;
+set timestamp=1216359724;
+insert into t1 values (current_date);
+insert into t1 values (current_time);
+select c1, hex(c1) from t1;
+drop table t1;
+
+create table t1 as select concat(utc_time()) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(sec_to_time(2378)));
+create table t1 as select concat(sec_to_time(2378)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
+create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(maketime(10,11,12)));
+create table t1 as select concat(maketime(10,11,12)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(get_format(DATE,'USA'));
+create table t1 as select get_format(DATE,'USA') as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(concat(from_unixtime(1111885200)),4));
+create table t1 as select concat(from_unixtime(1111885200)) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
+create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
+create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
+show create table t1;
+select * from t1;
+drop table t1;
+
+select hex(concat(makedate(2009,1)));
+create table t1 as select concat(makedate(2009,1)) as c1;
+show create table t1;
+select * from t1;
+drop table t1;
+
+create table t1 as select concat(now()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(utc_timestamp()) as c1;
+show create table t1;
+drop table t1;
+
+create table t1 as select concat(sysdate()) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(addtime('00:00:00','11:22:33')));
+create table t1 as select concat(addtime('00:00:00','11:22:33')) as c1;
+show create table t1;
+drop table t1;
+
+select hex(concat(subtime('23:59:59','11:22:33')));
+create table t1 as select concat(subtime('23:59:59','11:22:33')) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Other string functions with numeric input
+#
+select hex(elt(1,2,3));
+create table t1 as select elt(1,2,3) as c1;
+show create table t1;
+drop table t1;
+
+select hex(export_set(1,2,3,4,2));
+create table t1 as select export_set(1,2,3,4,2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(insert(1133,3,0,22));
+create table t1 as select insert(1133,3,0,22) as c1;
+show create table t1;
+drop table t1;
+
+select hex(lcase(123));
+create table t1 as select lcase(123) as c1;
+show create table t1;
+drop table t1;
+
+select hex(left(123,1));
+create table t1 as select left(123,1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(lower(123));
+create table t1 as select lower(123) as c1;
+show create table t1;
+drop table t1;
+
+select hex(lpad(1,2,0));
+create table t1 as select lpad(1,2,0) as c1;
+show create table t1;
+drop table t1;
+
+select hex(ltrim(1));
+create table t1 as select ltrim(1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(mid(1,1,1));
+create table t1 as select mid(1,1,1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(repeat(1,2));
+create table t1 as select repeat(1,2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(replace(1,1,2));
+create table t1 as select replace(1,1,2) as c1;
+show create table t1;
+drop table t1;
+
+select hex(reverse(12));
+create table t1 as select reverse(12) as c1;
+show create table t1;
+drop table t1;
+
+select hex(right(123,1));
+create table t1 as select right(123,1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(rpad(1,2,0));
+create table t1 as select rpad(1,2,0) as c1;
+show create table t1;
+drop table t1;
+
+select hex(rtrim(1));
+create table t1 as select rtrim(1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(soundex(1));
+create table t1 as select soundex(1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(substring(1,1,1));
+create table t1 as select substring(1,1,1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(trim(1));
+create table t1 as select trim(1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(ucase(1));
+create table t1 as select ucase(1) as c1;
+show create table t1;
+drop table t1;
+
+select hex(upper(1));
+create table t1 as select upper(1) as c1;
+show create table t1;
+drop table t1;
+
+
+#
+# Bug#8204
+#
+create table t1 as select repeat(' ', 64) as a limit 0;
+show create table t1;
+insert into t1 values ("1.1"), ("2.1");
+select a, hex(a) from t1;
+update t1 set a= a + 0.1;
+select a, hex(a) from t1;
+drop table t1;
+
+
+#
+# Columns
+#
+create table t1 (a tinyint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a tinyint(4) zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a smallint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a mediumint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a int);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a bigint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a float);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+select concat(a) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a double);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+select concat(a) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+drop table t1;
+
+create table t1 (a year(2));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a year);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a bit(64));
+# BIT is always BINARY
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+select hex(concat(a)) from t1;
+select concat(a) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+select hex(concat(a)) from t1;
+select concat(a) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+select hex(concat(a)) from t1;
+create table t2 as select concat(a) from t1;
+show create table t2;
+drop table t1, t2;
+
+
+#
+# create view with string functions with numeric input
+#
+# Switched off in ucs tests due to bug#50716
+if ($not_ucs)
+{
+create view v1 as select concat(1,2,3) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select concat_ws(',',1,2,3) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select elt(1,2,3) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select export_set(1,2,3,4,2) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select insert(1133,3,0,22) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select lcase(123) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select left(123,1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select lower(123) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select lpad(1,2,0) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select ltrim(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select mid(1,1,1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select repeat(1,2) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select replace(1,1,2) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select reverse(12) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select right(123,1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select rpad(1,2,0) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select rtrim(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select soundex(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select substring(1,1,1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select trim(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select ucase(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+
+create view v1 as select upper(1) as c1;
+show columns from v1;
+select hex(c1) from v1;
+drop view v1;
+}
+
+
+#
+# Views from tables with numeric columns
+#
+create table t1 (a tinyint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a tinyint(30) zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a smallint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a mediumint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a int);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a bigint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a float);
+insert into t1 values (123.456);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a double);
+insert into t1 values (123.456);
+select concat(a) from t1;
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a year(2));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a year);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a bit(64));
+# BIT is always BINARY
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+select hex(a) from v1;
+drop table t1;
+drop view v1;
+
+#
+# User defined function returning numeric result
+#
+delimiter |;
+create function f1 (par1 int) returns int
+begin
+return concat(par1);
+end|
+delimiter ;|
+
+set @a= f1(1);
+select hex(@a);
+select hex(concat(f1(1)));
+create table t1 as select f1(1) as c1;
+show create table t1;
+drop table t1;
+create table t1 as select concat(f1(1)) as c1;
+show create table t1;
+create view v1 as select concat(f1(1)) as c1;
+show columns from v1;
+drop table t1;
+drop view v1;
+drop function f1;
+
+delimiter |;
+create function f1 (par1 decimal(18,2)) returns decimal(18,2)
+begin
+return concat(par1);
+end|
+delimiter ;|
+
+set @a= f1(123.45);
+select hex(@a);
+select hex(concat(f1(123.45)));
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+drop table t1;
+drop view v1;
+drop function f1;
+
+delimiter |;
+create function f1 (par1 float) returns float
+begin
+return concat(par1);
+end|
+delimiter ;|
+
+set @a= f1(123.45);
+select hex(@a);
+select hex(concat(f1(123.45)));
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+drop table t1;
+drop view v1;
+drop function f1;
+
+delimiter |;
+create function f1 (par1 date) returns date
+begin
+return concat(par1);
+end|
+delimiter ;|
+
+set @a= f1(cast('2001-01-02' as date));
+select hex(@a);
+select hex(concat(f1(cast('2001-01-02' as date))));
+create table t1 as select f1(cast('2001-01-02' as date)) as c1;
+show create table t1;
+drop table t1;
+create table t1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show create table t1;
+create view v1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show columns from v1;
+drop table t1;
+drop view v1;
+drop function f1;
+
+
+--echo #
+--echo # End of WL#2649 Number-to-string conversions
+--echo #
+
diff --git a/mysql-test/include/ctype_utf8_table.inc b/mysql-test/include/ctype_utf8_table.inc
new file mode 100644
index 00000000000..28db21c06d2
--- /dev/null
+++ b/mysql-test/include/ctype_utf8_table.inc
@@ -0,0 +1,44 @@
+CREATE TABLE t1 (a CHAR(1)) CHARACTER SET utf8;
+INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
+INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
+#
+# Populate tables head and tail with values '00'-'FF'
+#
+CREATE TEMPORARY TABLE head AS SELECT concat(b1.a, b2.a) AS head FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE tail AS SELECT concat(b1.a, b2.a) AS tail FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE middle AS SELECT concat(b1.a, b2.a) AS middle FROM t1 b1, t1 b2;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a varchar(1)) CHARACTER SET utf8;
+
+#
+# Populate single byte characters
+#
+
+INSERT INTO t1 SELECT UNHEX(head)
+FROM head WHERE (head BETWEEN '00' AND '7F') ORDER BY head;
+
+#
+# Populate 2-byte byte characters: U+80..U+7FF: [C2-DF][80-BF]
+#
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head,tail))
+FROM head, tail
+WHERE (head BETWEEN 'C2' AND 'DF') AND (tail BETWEEN '80' AND 'BF')
+ORDER BY head, tail;
+
+
+#
+# Populate 3-byte characters: U+800..U+FFFF: [E0-EF][80-BF][80-BF]
+# excluding overlong [E0][80-9F][80-BF]
+#
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head, middle, tail))
+FROM head, middle, tail
+WHERE (head BETWEEN 'E0' AND 'EF')
+AND (middle BETWEEN '80' AND 'BF')
+AND (tail BETWEEN '80' AND 'BF')
+AND NOT (head='E0' AND middle BETWEEN '80' AND '9F')
+ORDER BY head, middle, tail;
+
+SELECT count(*) FROM t1;
diff --git a/mysql-test/include/ctype_utf8mb4.inc b/mysql-test/include/ctype_utf8mb4.inc
new file mode 100644
index 00000000000..d1cb64705cd
--- /dev/null
+++ b/mysql-test/include/ctype_utf8mb4.inc
@@ -0,0 +1,1858 @@
+#
+# Tests with the utf8mb4 character set
+#
+--disable_warnings
+drop table if exists t1,t2;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+set names utf8mb4;
+
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+
+select locate('he','hello');
+select locate('he','hello',2);
+select locate('lo','hello',2);
+select locate('HE','hello');
+select locate('HE','hello',2);
+select locate('LO','hello',2);
+select locate('HE','hello' collate utf8mb4_bin);
+select locate('HE','hello' collate utf8mb4_bin,2);
+select locate('LO','hello' collate utf8mb4_bin,2);
+
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+
+select 'a' like 'a';
+select 'A' like 'a';
+select 'A' like 'a' collate utf8mb4_bin;
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+
+# Bug #6040: can't retrieve records with umlaut
+# characters in case insensitive manner.
+# Case insensitive search LIKE comparison
+# was broken for multibyte characters:
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+
+#
+# Check the following:
+# "a" == "a "
+# "a\0" < "a"
+# "a\0" < "a "
+
+SELECT 'a' = 'a ';
+SELECT 'a\0' < 'a';
+SELECT 'a\0' < 'a ';
+SELECT 'a\t' < 'a';
+SELECT 'a\t' < 'a ';
+
+#
+# The same for binary collation
+#
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+
+eval CREATE TABLE t1 (a char(10) character set utf8mb4 not null) ENGINE $engine;
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+--sorted_result
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+DROP TABLE t1;
+
+#
+# Fix this, it should return 1:
+#
+#select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD091,_utf8mb4 '%');
+#
+
+#
+# Bug 2367: INSERT() behaviour is different for different charsets.
+#
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+
+#
+# LELF() didn't work well with utf8mb4 in some cases too.
+#
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+
+
+#
+# CREATE ... SELECT
+#
+eval create table t1 ENGINE $engine select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+select * from t1;
+drop table t1;
+
+#
+# Bug#22646 LC_TIME_NAMES: Assignment to non-UTF8 target fails
+#
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+eval create table t1 (s1 char(20) character set latin1) engine $engine;
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+drop table t1;
+eval create table t1 (s1 char(20) character set koi8r) engine $engine;
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+--sorted_result
+select hex(s1), s1 from t1;
+drop table t1;
+set LC_TIME_NAMES='en_US';
+
+
+#
+# Bug #2366 Wrong utf8mb4 behaviour when data is truncated
+#
+set names koi8r;
+eval create table t1 (s1 char(1) character set utf8mb4) engine $engine;
+insert into t1 values (_koi8r'ÁÂ');
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+drop table t1;
+
+if (!$is_heap)
+{
+eval create table t1 (s1 tinytext character set utf8mb4) engine $engine;
+}
+if ($is_heap)
+{
+eval create table t1 (s1 varchar(255) character set utf8mb4) engine $engine;
+}
+insert into t1 select repeat('a',300);
+insert into t1 select repeat('Ñ',300);
+insert into t1 select repeat('aÑ',300);
+insert into t1 select repeat('Ña',300);
+insert into t1 select repeat('ÑÑ',300);
+--sorted_result
+select hex(s1) from t1;
+--sorted_result
+select length(s1),char_length(s1) from t1;
+drop table t1;
+
+if (!$is_heap)
+{
+eval create table t1 (s1 text character set utf8mb4) engine $engine;
+}
+if ($is_heap)
+{
+eval create table t1 (s1 varchar(255) character set utf8mb4) engine $engine;
+}
+insert into t1 select repeat('a',66000);
+insert into t1 select repeat('Ñ',66000);
+insert into t1 select repeat('aÑ',66000);
+insert into t1 select repeat('Ña',66000);
+insert into t1 select repeat('ÑÑ',66000);
+--sorted_result
+select length(s1),char_length(s1) from t1;
+drop table t1;
+
+#
+# Bug #2368 Multibyte charsets do not check that incoming data is well-formed
+#
+eval create table t1 (s1 char(10) character set utf8mb4) engine $engine;
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+
+eval create table t1 (s1 varchar(10) character set utf8mb4) engine $engine;
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+
+if (!$is_heap)
+{
+eval create table t1 (s1 text character set utf8mb4) engine $engine;
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+}
+
+#
+# Bug 2699
+# UTF8 breaks primary keys for cols > 333 characters
+#
+if(!$is_heap)
+{
+if(!$is_ndb)
+{
+--error ER_TOO_LONG_KEY
+eval create table t1 (a text character set utf8mb4, primary key(a(371))) engine $engine;
+}
+if($is_ndb)
+{
+--error ER_BLOB_USED_AS_KEY
+eval create table t1 (a text character set utf8mb4, primary key(a(371))) engine $engine;
+}
+}
+
+#
+# Bug 2959
+# UTF8 charset breaks joins with mixed column/string constant
+#
+eval CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4 ENGINE $engine;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+DROP TABLE t1;
+
+eval create table t1 (a char(255) character set utf8mb4) engine $engine;
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+select * from t1 where a = 'b' and a = 'b';
+select * from t1 where a = 'b' and a != 'b';
+drop table t1;
+
+#
+# Testing regexp
+#
+set collation_connection=utf8mb4_general_ci;
+--source include/ctype_regex.inc
+set names utf8mb4;
+
+#
+# Bug #3928 regexp [[:>:]] and UTF-8
+#
+set names utf8mb4;
+
+# This should return TRUE
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+
+# This should return FALSE
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+
+#
+# Bug #4555
+# ALTER TABLE crashes mysqld with enum column collated utf8mb4_unicode_ci
+#
+eval CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci) ENGINE $engine;
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+
+# Customer Support Center issue # 3299
+# ENUM and SET multibyte fields computed their length wronly
+# when converted into a char field
+set names utf8mb4;
+eval create table t1 (a enum('aaaa','проба') character set utf8mb4) engine $engine;
+show create table t1;
+insert into t1 values ('проба');
+select * from t1;
+eval create table t2 engine $engine select ifnull(a,a) from t1;
+show create table t2;
+select * from t2;
+drop table t1;
+drop table t2;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: keys with prefix compression, case insensitive collation.
+#
+if (!$is_ndb)
+{
+eval create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine $engine;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# InnoDB: keys with prefix compression, case insensitive collation.
+#
+--disable_warnings
+eval create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=$engine;
+--enable_warnings
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: fixed length keys, case insensitive collation
+#
+eval create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine $engine;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# InnoDB: fixed length keys, case insensitive collation
+#
+--disable_warnings
+eval create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=$engine;
+--enable_warnings
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+HASH, case insensitive collation
+#
+eval create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=$engine;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+BTREE, case insensitive collation
+#
+eval create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=$engine;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check BDB, case insensitive collation
+#
+--disable_warnings
+eval create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=$engine;
+--enable_warnings
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: keys with prefix compression, binary collation.
+#
+eval create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10))) engine $engine;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: fixed length keys, binary collation
+#
+eval create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2))) engine $engine;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+HASH, binary collation
+#
+eval create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=$engine;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+BTREE, binary collation
+#
+eval create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=$engine;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check BDB, binary collation
+#
+--disable_warnings
+eval create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=$engine;
+--enable_warnings
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+}
+
+
+# Bug#4594: column index make = failed for gbk, but like works
+# Check MYISAM
+#
+eval create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine=$engine;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# Bug#4594: column index make = failed for gbk, but like works
+# Check InnoDB
+#
+--disable_warnings
+eval create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine=$engine;
+--enable_warnings
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for HEAP+BTREE
+#
+
+eval create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str using btree (str(2))
+) engine=$engine;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for HEAP+HASH
+#
+
+if (!$is_ndb)
+{
+eval create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str using hash (str(2))
+) engine=$engine;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for BDB
+#
+
+#hh
+--disable_warnings
+eval create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine= $engine;
+--enable_warnings
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+}
+
+#
+# Bug #5397: Crash with varchar binary and LIKE
+#
+eval CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4 ENGINE $engine;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+DROP TABLE t1;
+
+#
+# Bug #5723: length(<varchar utf8mb4 field>) returns varying results
+#
+--disable_warnings
+SET NAMES utf8mb4;
+--disable_warnings
+eval CREATE TABLE t1 (
+ subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+ p varchar(15) character set utf8mb4
+) ENGINE= $engine DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+--sorted_result
+SELECT length(subject) FROM t1;
+SELECT length(subject) FROM t1 ORDER BY 1;
+DROP TABLE t1;
+
+#
+# Bug #5832 SELECT doesn't return records in some cases
+#
+if (!$is_heap)
+{
+if (!$is_ndb)
+{
+eval CREATE TABLE t1 (
+ id int unsigned NOT NULL auto_increment,
+ list_id smallint unsigned NOT NULL,
+ term TEXT NOT NULL,
+ PRIMARY KEY(id),
+ INDEX(list_id, term(4))
+) ENGINE=$engine CHARSET=utf8mb4;
+INSERT INTO t1 SET list_id = 1, term = "letterc";
+INSERT INTO t1 SET list_id = 1, term = "letterb";
+INSERT INTO t1 SET list_id = 1, term = "lettera";
+INSERT INTO t1 SET list_id = 1, term = "letterd";
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
+DROP TABLE t1;
+
+#
+# Bug #6043 erratic searching for diacriticals in indexed MyISAM UTF-8 table
+#
+SET NAMES latin1;
+eval CREATE TABLE t1 (
+ id int unsigned NOT NULL auto_increment,
+ list_id smallint unsigned NOT NULL,
+ term text NOT NULL,
+ PRIMARY KEY(id),
+ INDEX(list_id, term(19))
+) ENGINE=$engine CHARSET=utf8mb4;
+INSERT INTO t1 set list_id = 1, term = "testétest";
+INSERT INTO t1 set list_id = 1, term = "testetest";
+INSERT INTO t1 set list_id = 1, term = "testètest";
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testétest");
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testètest");
+DROP TABLE t1;
+}
+}
+
+#
+# Bug #6019 SELECT tries to use too short prefix index on utf8mb4 data
+#
+set names utf8mb4;
+--disable_warnings
+eval create table t1 (
+ a int primary key,
+ b varchar(6),
+ index b3(b(3))
+) engine=$engine character set=utf8mb4;
+--enable_warnings
+insert into t1 values(1,'foo'),(2,'foobar');
+--sorted_result
+select * from t1 where b like 'foob%';
+--disable_warnings
+alter table t1 engine=innodb;
+--enable_warnings
+--sorted_result
+select * from t1 where b like 'foob%';
+drop table t1;
+
+#
+# Test for calculate_interval_lengths() function
+#
+eval create table t1 (
+ a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+ b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+) engine $engine;
+eval create table t2 engine $engine select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+drop table t2;
+drop table t1;
+
+#
+# Bug #6787 LIKE not working properly with _ and utf8mb4 data
+#
+select 'c' like '\_' as want0;
+
+#
+# SUBSTR with negative offset didn't work with multi-byte strings
+#
+SELECT SUBSTR('ваÑÑ',-2);
+
+
+#
+# Bug #7730 Server crash using soundex on an utf8mb4 table
+#
+eval create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci) engine $engine;
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+select * from t1 where soundex(a) = soundex('TEST');
+select * from t1 where soundex(a) = soundex('test');
+drop table t1;
+
+#
+# Bug#22638 SOUNDEX broken for international characters
+#
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+select soundex(_utf8mb4 0xD091D092D093);
+select hex(soundex(_utf8mb4 0xD091D092D093));
+
+
+SET collation_connection='utf8mb4_general_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+-- source include/ctype_german.inc
+SET collation_connection='utf8mb4_bin';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+#
+# Bug #7874 CONCAT() gives wrong results mixing
+# latin1 field and utf8mb4 string literals
+#
+eval CREATE TABLE t1 (
+ user varchar(255) NOT NULL default ''
+) ENGINE=$engine DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+--sorted_result
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+DROP TABLE t1;
+
+#
+# Bug#8785
+# the same problem with the above, but with nested CONCATs
+#
+eval create table t1 (f1 varchar(1) not null) default charset utf8mb4 engine $engine;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+drop table t1;
+
+#
+# Bug#8385: utf8mb4_general_ci treats Cyrillic letters I and SHORT I as the same
+#
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+
+#
+# Bugs#5980: NULL requires a characterset in a union
+#
+set names latin1;
+eval create table t1 (a varchar(10)) character set utf8mb4 engine $engine;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+select ifnull(NULL, _utf8mb4'string');
+
+#
+# Bug#9509 Optimizer: wrong result after AND with comparisons
+#
+set names utf8mb4;
+eval create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci) engine $engine;
+insert into t1 values ('I'),('K'),('Y');
+--sorted_result
+select * from t1 where s1 < 'K' and s1 = 'Y';
+--sorted_result
+select * from t1 where 'K' > s1 and s1 = 'Y';
+drop table t1;
+
+eval create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci) engine $engine;
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+--sorted_result
+select * from t1 where s1 > 'd' and s1 = 'CH';
+--sorted_result
+select * from t1 where 'd' < s1 and s1 = 'CH';
+--sorted_result
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+--sorted_result
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+drop table t1;
+
+#
+# Bug#10714: Inserting double value into utf8mb4 column crashes server
+#
+eval create table t1 (a varchar(255)) default character set utf8mb4 engine $engine;
+insert into t1 values (1.0);
+drop table t1;
+
+#
+# Bug#10253 compound index length and utf8mb4 char set
+# produces invalid query results
+#
+eval create table t1 (
+ id int not null,
+ city varchar(20) not null,
+ key (city(7),id)
+) character set=utf8mb4 engine $engine;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+select * from t1 where city = 'Durban ';
+drop table t1;
+
+#
+# Bug #11819 CREATE TABLE with a SET DEFAULT 0 and UTF8 crashes server.
+#
+--error 1067
+eval create table t1 (x set('A', 'B') default 0) character set utf8mb4 engine $engine;
+--error 1067
+eval create table t1 (x enum('A', 'B') default 0) character set utf8mb4 engine $engine;
+
+
+#
+# Test for bug #11167: join for utf8mb4 varchar value longer than 255 bytes
+#
+
+SET NAMES UTF8;
+
+eval CREATE TABLE t1 (
+ `id` int(20) NOT NULL auto_increment,
+ `country` varchar(100) NOT NULL default '',
+ `shortcode` varchar(100) NOT NULL default '',
+ `operator` varchar(100) NOT NULL default '',
+ `momid` varchar(30) NOT NULL default '',
+ `keyword` varchar(160) NOT NULL default '',
+ `content` varchar(160) NOT NULL default '',
+ `second_token` varchar(160) default NULL,
+ `gateway_id` int(11) NOT NULL default '0',
+ `created` datetime NOT NULL default '0000-00-00 00:00:00',
+ `msisdn` varchar(15) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+ KEY `IX_mobile_originated_message_keyword` (`keyword`),
+ KEY `IX_mobile_originated_message_created` (`created`),
+ KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4;
+
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+
+--disable_warnings
+eval CREATE TABLE t2 (
+ `msisdn` varchar(15) NOT NULL default '',
+ `operator_id` int(11) NOT NULL default '0',
+ `created` datetime NOT NULL default '0000-00-00 00:00:00',
+ UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4;
+--enable_warnings
+
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+
+DROP TABLE t1,t2;
+
+#
+# Bug#11591: CHAR column with utf8mb4 does not work properly
+# (more chars than expected)
+#
+eval create table t1 (a char(20) character set utf8mb4) engine $engine;
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+select char_length(a), length(a), a from t1 order by a;
+drop table t1;
+
+#
+# Bugs#12611
+# ESCAPE + LIKE do not work when the escape char is a multibyte one
+#
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+
+#
+# Bugs#11754: SET NAMES utf8mb4 followed by SELECT "A\\" LIKE "A\\" returns 0
+#
+set names utf8mb4;
+select 'a\\' like 'a\\';
+select 'aa\\' like 'a%\\';
+
+eval create table t1 (a char(10), key(a)) character set utf8mb4 engine $engine;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+--sorted_result
+select * from t1 where a like "abc%";
+--sorted_result
+select * from t1 where a like concat("abc","%");
+--sorted_result
+select * from t1 where a like "ABC%";
+select * from t1 where a like "test%";
+select * from t1 where a like "te_t";
+--sorted_result
+select * from t1 where a like "%a%";
+--sorted_result
+select * from t1 where a like "%abcd%";
+select * from t1 where a like "%abc\d%";
+drop table t1;
+
+
+#
+# Bug#9557 MyISAM utf8mb4 table crash
+#
+eval CREATE TABLE t1 (
+ a varchar(255) NOT NULL default '',
+ KEY a (a)
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+--sorted_result
+select hex(a) from t1;
+drop table t1;
+
+#
+# Bug#13751 find_in_set: Illegal mix of collations
+#
+set names 'latin1';
+eval create table t1 (a varchar(255)) default charset=utf8mb4 engine $engine;
+select * from t1 where find_in_set('-1', a);
+drop table t1;
+
+#
+# Bug#13233: select distinct char(column) fails with utf8mb4
+#
+eval create table t1 (a int) engine $engine;
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+--sorted_result
+select distinct char(a) from t1;
+drop table t1;
+
+if (!$is_heap)
+{
+#
+# Bug#15581: COALESCE function truncates mutli-byte TINYTEXT values
+#
+eval CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4) ENGINE $engine;
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+if (!$is_ndb)
+{
+eval CREATE TEMPORARY TABLE t2 ENGINE $engine SELECT COALESCE(t) AS bug FROM t1;
+}
+if ($is_ndb)
+{
+eval CREATE TABLE t2 ENGINE $engine SELECT COALESCE(t) AS bug FROM t1;
+}
+SELECT LENGTH(bug) FROM t2;
+DROP TABLE t2;
+DROP TABLE t1;
+}
+
+#
+# Bug#17313: N'xxx' and _utf8mb4'xxx' are not equivalent
+#
+eval CREATE TABLE t1 (item varchar(255)) default character set utf8mb4 ENGINE $engine;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+DROP TABLE t1;
+
+#
+# Bug#17705: Corruption of compressed index when index length changes between
+# 254 and 256
+#
+
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+eval CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=$engine DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+INSERT INTO t1 VALUES('uU');
+check table t1;
+INSERT INTO t1 VALUES('uu');
+check table t1;
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+drop table t1;
+
+#
+# Bug#20471 LIKE search fails with indexed utf8mb4 char column
+#
+set names utf8mb4;
+eval create table t1 (s1 char(5) character set utf8mb4) engine $engine;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+drop table t1;
+
+set names utf8mb4;
+eval create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci) engine $engine;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+drop table t1;
+
+set names utf8mb4;
+eval create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin) engine $engine;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+drop table t1;
+
+# additional tests from duplicate bug#20744 MySQL return no result
+
+set names utf8mb4;
+--disable_warnings
+eval create table t1 (a varchar(30) not null primary key)
+engine=$engine default character set utf8mb4 collate utf8mb4_general_ci;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+set names utf8mb4;
+--disable_warnings
+eval create table t1 (a varchar(30) not null primary key)
+engine=$engine default character set utf8mb4 collate utf8mb4_unicode_ci;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+set names utf8mb4;
+--disable_warnings
+eval create table t1 (a varchar(30) not null primary key)
+engine=$engine default character set utf8mb4 collate utf8mb4_bin;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+
+
+#
+# Bug#14896: Comparison with a key in a partial index over mb chararacter field
+#
+
+SET NAMES utf8mb4;
+eval CREATE TABLE t1 (id int PRIMARY KEY,
+ a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+ b int,
+ f varchar(128) default 'XXX',
+ INDEX (a(4))
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+ (1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+ (4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+ (7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+ (10, 'eeeee', 40), (11, 'bbbbbb', 60);
+
+--sorted_result
+SELECT id, a, b FROM t1;
+
+--sorted_result
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+
+--sorted_result
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+
+DROP TABLE t1;
+
+#
+# Bug#16674: LIKE predicate for a utf8mb4 character set column
+#
+
+SET NAMES utf8mb4;
+
+eval CREATE TABLE t1 (
+ a CHAR(13) DEFAULT '',
+ INDEX(a)
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+ ('Käli Käli 2-4'), ('Käli Käli 2-4'),
+ ('Käli Käli 2+4'), ('Käli Käli 2+4'),
+ ('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+
+eval CREATE TABLE t2 (
+ a CHAR(13) DEFAULT '',
+ INDEX(a)
+) ENGINE=$engine DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+
+INSERT INTO t2 VALUES
+ ('Kali Kali 2-4'), ('Kali Kali 2-4'),
+ ('Kali Kali 2+4'), ('Kali Kali 2+4'),
+ ('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+
+DROP TABLE t1,t2;
+
+eval CREATE TABLE t1 (
+ a char(255) DEFAULT '',
+ KEY(a(10))
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+DROP TABLE t1;
+
+eval CREATE TABLE t1 (
+ a char(255) DEFAULT ''
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+DROP TABLE t1;
+
+#
+# Bug#18359: LIKE predicate for a 'utf8mb4' text column with a partial index
+# (see bug #16674 as well)
+#
+
+SET NAMES latin2;
+
+if (!$is_heap)
+{
+if (!$is_ndb)
+{
+eval CREATE TABLE t1 (
+ id int(11) NOT NULL default '0',
+ tid int(11) NOT NULL default '0',
+ val text NOT NULL,
+ INDEX idx(tid, val(10))
+) ENGINE=$engine DEFAULT CHARSET=utf8mb4;
+
+INSERT INTO t1 VALUES
+ (40988,72,'VOLNÝ ADSL'),(41009,72,'VOLNÝ ADSL'),
+ (41032,72,'VOLNÝ ADSL'),(41038,72,'VOLNÝ ADSL'),
+ (41063,72,'VOLNÝ ADSL'),(41537,72,'VOLNÝ ADSL Office'),
+ (42141,72,'VOLNÝ ADSL'),(42565,72,'VOLNÝ ADSL Combi'),
+ (42749,72,'VOLNÝ ADSL'),(44205,72,'VOLNÝ ADSL');
+
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNY ADSL';
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+SELECT * FROM t1 WHERE tid=72 and val LIKE '%VOLNÝ ADSL';
+
+ALTER TABLE t1 DROP KEY idx;
+ALTER TABLE t1 ADD KEY idx (tid,val(11));
+
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+
+DROP TABLE t1;
+}
+}
+
+#
+# Bug 20709: problem with utf8mb4 fields in temporary tables
+#
+
+eval create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+ default charset=utf8mb4 collate=utf8mb4_unicode_ci engine $engine;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+SELECT COUNT(*) FROM (SELECT DISTINCT a FROM t1) AS t2;
+explain select a from t1 group by a;
+SELECT COUNT(*) FROM (SELECT a FROM t1 GROUP BY a) AS t2;
+drop table t1;
+
+#
+# Bug #20204: "order by" changes the results returned
+#
+
+eval create table t1(a char(10)) default charset utf8mb4 engine $engine;
+insert into t1 values ('123'), ('456');
+explain
+ select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+drop table t1;
+
+#
+# Bug #34349: Passing invalid parameter to CHAR() in an ORDER BY causes
+# MySQL to hang
+#
+
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+eval CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4 ENGINE $engine;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+
+# End of 4.1 tests
+
+#
+# Test for bug #11484: wrong results for a DISTINCT varchar column in uft8.
+#
+
+eval CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4 ENGINE $engine;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+
+--sorted_result
+SELECT id FROM t1;
+--sorted_result
+SELECT DISTINCT id FROM t1;
+SELECT DISTINCT id FROM t1 ORDER BY id;
+
+DROP TABLE t1;
+
+#
+# Bug#20095 Changing length of VARCHAR field with UTF8
+# collation does not truncate values
+#
+eval create table t1 (
+ a varchar(26) not null
+) default character set utf8mb4 ENGINE $engine;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+# varchar to varchar
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+select * from t1;
+# varchar to char
+alter table t1 change a a char(15) character set utf8mb4 not null;
+select * from t1;
+# char to char
+alter table t1 change a a char(10) character set utf8mb4 not null;
+select * from t1;
+# char to varchar
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+select * from t1;
+drop table t1;
+
+#
+# Check that do_varstring2_mb produces a warning
+#
+if (!$is_ndb)
+{
+eval create table t1 (
+ a varchar(4000) not null
+) default character set utf8mb4 engine $engine;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+select length(a) from t1;
+drop table t1;
+}
+
+#
+# Bug#10504: Character set does not support traditional mode
+# Bug#14146: CHAR(...USING ...) and CONVERT(CHAR(...) USING...)
+# produce different results
+#
+set names utf8mb4;
+# correct value
+select hex(char(1 using utf8mb4));
+select char(0xd1,0x8f using utf8mb4);
+select char(0xd18f using utf8mb4);
+select char(53647 using utf8mb4);
+# incorrect value: return with warning
+select char(0xff,0x8f using utf8mb4);
+select convert(char(0xff,0x8f) using utf8mb4);
+# incorrect value in strict mode: return NULL with "Error" level warning
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+select char(195 using utf8mb4);
+select char(196 using utf8mb4);
+select char(2557 using utf8mb4);
+select convert(char(0xff,0x8f) using utf8mb4);
+
+#
+# Check convert + char + using
+#
+select hex(convert(char(2557 using latin1) using utf8mb4));
+
+#
+# char() without USING returns "binary" by default, any argument is ok
+#
+select hex(char(195));
+select hex(char(196));
+select hex(char(2557));
+
+
+
+#
+# Bug#12891: UNION doesn't return DISTINCT result for multi-byte characters
+#
+set names utf8mb4;
+eval create table t1 (a char(1)) default character set utf8mb4 engine $engine;
+eval create table t2 (a char(1)) default character set utf8mb4 engine $engine;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+--sorted_result
+select * from t1 union distinct select * from t2;
+drop table t1,t2;
+
+
+#
+# Bug#12371: executing prepared statement fails (illegal mix of collations)
+#
+set names utf8mb4;
+eval create table t1 (a char(10), b varchar(10)) engine $engine;
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+set @a:='kostja';
+execute my_stmt using @a;
+set @a:=null;
+execute my_stmt using @a;
+drop table if exists t1;
+
+
+#
+# Bug#21505 Create view - illegal mix of collation for operation 'UNION'
+#
+--disable_warnings
+drop table if exists t1;
+drop view if exists v1, v2;
+--enable_warnings
+set names utf8mb4;
+eval create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci) engine $engine;
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+drop view v1, v2;
+drop table t1;
+
+#
+# Check conversion of NCHAR strings to subset (e.g. latin1).
+# Conversion is possible if string repertoire is ASCII.
+# Conversion is not possible if the string have extended characters
+#
+set names utf8mb4;
+eval create table t1 (a varchar(10) character set latin1, b int) engine $engine;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+--error 1267
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+drop table t1;
+
+# Conversion tests for character set introducers
+set names utf8mb4;
+eval create table t1 (a varchar(10) character set latin1, b int) engine $engine;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+--error 1267
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+drop table t1;
+
+# Conversion tests for introducer + HEX string
+set names utf8mb4;
+eval create table t1 (a varchar(10) character set latin1, b int) engine $engine;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+--error 1267
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+drop table t1;
+
+# Conversion tests for "text_literal TEXT_STRING_literal" syntax structure
+set names utf8mb4;
+eval create table t1 (a varchar(10) character set latin1, b int) engine $engine;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+--error 1267
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+drop table t1;
+
+
+#
+# Bug#19960: Inconsistent results when joining
+# InnoDB tables using partial UTF8 indexes
+#
+--disable_warnings
+eval CREATE TABLE t1 (
+ colA int(11) NOT NULL,
+ colB varchar(255) character set utf8mb4 NOT NULL,
+ PRIMARY KEY (colA)
+) ENGINE=$engine DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+--disable_warnings
+eval CREATE TABLE t2 (
+ colA int(11) NOT NULL,
+ colB varchar(255) character set utf8mb4 NOT NULL,
+ KEY bad (colA,colB(3))
+) ENGINE=$engine DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+DROP TABLE t1, t2;
+
+#
+# Bug#29205: truncation of UTF8 values when the UNION statement
+# forces collation to the binary charset
+#
+
+SELECT 'н1234567890' UNION SELECT _binary '1';
+SELECT 'н1234567890' UNION SELECT 1;
+
+SELECT '1' UNION SELECT 'н1234567890';
+SELECT 1 UNION SELECT 'н1234567890';
+
+eval CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4 ENGINE $engine;
+eval CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT) ENGINE $engine;
+
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+
+SELECT c FROM t1 UNION SELECT b FROM t2;
+SELECT c FROM t1 UNION SELECT i FROM t2;
+
+SELECT b FROM t2 UNION SELECT c FROM t1;
+SELECT i FROM t2 UNION SELECT c FROM t1;
+
+DROP TABLE t1, t2;
+
+#
+# Bug#30982: CHAR(..USING..) can return a not-well-formed string
+# Bug #30986: Character set introducer followed by a HEX string can return bad result
+#
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+select hex(convert(0xFF using utf8mb4));
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 0x616263FF);
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 X'616263FF');
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 B'001111111111');
+--error ER_INVALID_CHARACTER_STRING
+select (_utf8mb4 X'616263FF');
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+select hex(convert(0xFF using utf8mb4));
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 0x616263FF);
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 X'616263FF');
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 B'001111111111');
+--error ER_INVALID_CHARACTER_STRING
+select (_utf8mb4 X'616263FF');
+
+#
+# Bug #36772: When using UTF8, CONVERT with GROUP BY returns truncated results
+#
+eval CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE $engine;
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+--sorted_result
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+--sorted_result
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+ALTER TABLE t1 ADD UNIQUE (b);
+--sorted_result
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+DROP INDEX b ON t1;
+--sorted_result
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+ALTER TABLE t1 ADD INDEX (b);
+--sorted_result
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+DROP TABLE t1;
+
+--echo #
+--echo # Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+--echo #
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+eval CREATE TABLE t1 (
+ predicted_order int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE $engine;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+DROP TABLE t1;
+
+--echo #
+--echo # Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+--echo #
+eval create table t1 (utf8mb4 char(1) character set utf8mb4) engine $engine;
+--echo Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+--sorted_result
+select hex(utf8mb4) from t1;
+delete from t1;
+
+--echo Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+--sorted_result
+select hex(utf8mb4) from t1;
+delete from t1;
+
+--echo Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+--sorted_result
+select hex(utf8mb4) from t1;
+drop table t1;
+
+
+--echo #
+--echo # Check strnxfrm() with odd length
+--echo #
+set max_sort_length=5;
+select @@max_sort_length;
+eval create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci) engine $engine;
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+drop table t1;
+set max_sort_length=default;
+
+--echo #
+--echo # Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+--echo #
+if (!$is_heap)
+{
+if (!$is_ndb)
+{
+eval CREATE TABLE t1 (
+ clipid INT NOT NULL,
+ Tape TINYTEXT,
+ PRIMARY KEY (clipid),
+ KEY tape(Tape(255))
+) CHARACTER SET=utf8mb4 ENGINE $engine;
+ALTER TABLE t1 ADD mos TINYINT DEFAULT 0 AFTER clipid;
+SHOW CREATE TABLE t1;
+DROP TABLE t1;
+}
+}
+
+#--echo #
+#--echo # Check that supplementary characters are not allowed in identifiers
+#--echo #
+# TODO: activate this when system_charset_info is changed to utf8mb4
+#--error 1300
+#CREATE DATABASE `ð€€`;
+#--error 1300
+#CREATE TABLE `ð€€` (a int);
+#--error 1166
+#CREATE TABLE test.t1 SELECT 'ð€€';
+#--error 1300
+#CREATE USER `ð€€`;
+
+--echo #
+--echo # Testing 4-byte values.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+eval CREATE TABLE t1 (
+ u_decimal int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE $engine;
+# Source of the following values: http://www.fileformat.info/info/unicode/block/index.htm
+# SINGLE BARLINE
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+ (119070, x'f09d849e'),
+# HALF NOTE
+ (119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+ (119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+ (120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+ (120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+ (1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+ (917999, x'f3a087af');
+# All from musical chars
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+# Mix of 3-byte and 4-byte chars
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+# All from musical chars, but 11 instead of 10 chars. truncated
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+
+--sorted_result
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+
+# First invalid 4 byte value
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+
+--sorted_result
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+ table_name= 't1' AND column_name= 'utf8mb4_encoding';
+
+--disable_warnings
+DROP TABLE IF EXISTS t2;
+--enable_warnings
+eval CREATE TABLE t2 (
+ u_decimal int NOT NULL,
+ utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3 ENGINE $engine;
+# LATIN CAPITAL LETTER VEND
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+# SMALL COMMERCIAL AT
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+# <Plane 16 Private Use, Last> (last 4 byte character)
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+
+--sorted_result
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+ table_name= 't2' AND column_name= 'utf8mb3_encoding';
+
+# Update a 3-byte char col with a 4-byte char, error
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+
+# Update to a 3-byte char casted to 4-byte, error?
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+
+# Returns utfmb4
+--sorted_result
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+--sorted_result
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+
+#--error ER_INVALID_CHARACTER_STRING
+#SELECT CONCAT(_utf8 utf8mb4_encoding, _utf8 '|') FROM t1;
+#--error ER_INVALID_CHARACTER_STRING
+#SELECT CONCAT(_utf8mb3 utf8mb4_encoding, _utf8 '|') FROM t1;
+
+SELECT count(*) FROM t1, t2
+ WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+
+# Alter from 4-byte charset to 3-byte charset, error
+--disable_warnings
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+--enable_warnings
+SHOW CREATE TABLE t1;
+--sorted_result
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+
+# Alter table from utf8 to utf8mb4
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+--sorted_result
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+# Alter table back from utf8mb4 to utf8
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+--sorted_result
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+# ALter of utf8mb4 column to utf8
+--disable_warnings
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+--enable_warnings
+SHOW CREATE TABLE t1;
+--sorted_result
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+
+# ALter of utf8 column to utf8mb4
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+--sorted_result
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+
+# ALter of utf8 column to utf8mb4
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+--sorted_result
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+--disable_warnings
+DROP TABLE IF EXISTS t3;
+--enable_warnings
+eval CREATE TABLE t3 (
+ u_decimal int NOT NULL,
+ utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8 ENGINE $engine;
+
+# Insert select utf8mb4 (4-byte) into utf8 (3-byte), error
+#--error ER_INVALID_CHARACTER_STRING
+INSERT INTO t3 SELECT * FROM t1;
+
+--disable_warnings
+DROP TABLE IF EXISTS t4;
+--enable_warnings
+eval CREATE TABLE t4 (
+ u_decimal int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE $engine;
+
+# Insert select utf8 (3-byte) into utf8mb4 (4-byte)
+INSERT INTO t3 SELECT * FROM t2;
+
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+
+--echo #
+--echo # Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+--echo #
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+
+eval CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL) ENGINE $engine;
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+
+eval CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL) ENGINE $engine;
+INSERT INTO t2 VALUES (x'ea9da8');
+
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+
+if (!$is_ndb)
+{
+eval CREATE TEMPORARY TABLE t3 ENGINE $engine AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+DROP TEMPORARY TABLE t3;
+}
+
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+
+DROP TABLE t1;
+DROP TABLE t2;
+
+--echo #
+--echo # Check that mixing utf8mb4 with an invalid utf8 constant returns error
+--echo #
+# This should perhaps be changed to return ER_INVALID_CHARACTER_STRING
+eval CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4) ENGINE $engine;
+INSERT INTO t1 VALUES (x'f48fbfbf');
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+DROP TABLE t1;
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
+
+--echo #
+--echo # End of tests
+--echo #
diff --git a/mysql-test/include/default_mysqld.cnf b/mysql-test/include/default_mysqld.cnf
index c54ac93133b..46fdda7df84 100644
--- a/mysql-test/include/default_mysqld.cnf
+++ b/mysql-test/include/default_mysqld.cnf
@@ -17,7 +17,7 @@
[mysqld]
open-files-limit= 1024
local-infile
-default-character-set= latin1
+character-set-server= latin1
# Increase default connect_timeout to avoid intermittent
# disconnects when test servers are put under load see BUG#28359
diff --git a/mysql-test/include/handler.inc b/mysql-test/include/handler.inc
index 6e7f53ba9b2..0031cb68647 100644
--- a/mysql-test/include/handler.inc
+++ b/mysql-test/include/handler.inc
@@ -518,12 +518,15 @@ connect (flush,localhost,root,,);
connection flush;
--echo connection: flush
--send flush tables;
-connection default;
---echo connection: default
+connect (waiter,localhost,root,,);
+connection waiter;
+--echo connection: waiter
let $wait_condition=
select count(*) = 1 from information_schema.processlist
where state = "Flushing tables";
--source include/wait_condition.inc
+connection default;
+--echo connection: default
handler t2 open;
handler t2 read first;
handler t1 read next;
@@ -540,7 +543,7 @@ disconnect flush;
#
--disable_warnings
-drop table if exists t1,t2;
+drop table if exists t1, t0;
--enable_warnings
create table t1 (c1 int);
--echo connection: default
@@ -549,24 +552,47 @@ handler t1 read first;
connect (flush,localhost,root,,);
connection flush;
--echo connection: flush
---send rename table t1 to t2;
-connection default;
---echo connection: default
+--send rename table t1 to t0;
+connection waiter;
+--echo connection: waiter
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Waiting for table" and info = "rename table t1 to t2";
+ where state = "Waiting for table" and info = "rename table t1 to t0";
--source include/wait_condition.inc
-handler t2 open;
-handler t2 read first;
---error ER_NO_SUCH_TABLE
-handler t1 read next;
-handler t1 close;
-handler t2 close;
+connection default;
+--echo connection: default
+--echo #
+--echo # RENAME placed two pending locks and waits.
+--echo # When HANDLER t0 OPEN does open_tables(), it calls
+--echo # mysql_ha_flush(), which in turn closes the open HANDLER for t1.
+--echo # RENAME TABLE gets unblocked. If it gets scheduled quickly
+--echo # and manages to complete before open_tables()
+--echo # of HANDLER t0 OPEN, open_tables() and therefore the whole
+--echo # HANDLER t0 OPEN succeeds. Otherwise open_tables()
+--echo # notices a pending or active exclusive metadata lock on t2
+--echo # and the whole HANDLER t0 OPEN fails with ER_LOCK_DEADLOCK
+--echo # error.
+--echo #
+--error 0, ER_LOCK_DEADLOCK
+handler t0 open;
+--error 0, ER_UNKNOWN_TABLE
+handler t0 close;
+--echo connection: flush
connection flush;
reap;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--error ER_UNKNOWN_TABLE
+handler t1 close;
connection default;
-drop table t2;
+drop table t0;
+connection flush;
disconnect flush;
+--source include/wait_until_disconnected.inc
+connection waiter;
+disconnect waiter;
+--source include/wait_until_disconnected.inc
+connection default;
#
# Bug#30882 Dropping a temporary table inside a stored function may cause a server crash
@@ -699,27 +725,62 @@ handler t1 read a next;
# Bug#41112: crash in mysql_ha_close_table/get_lock_data with alter table
#
+connect(con1,localhost,root,,);
+connect(con2,localhost,root,,);
+
+connection default;
--disable_warnings
drop table if exists t1;
--enable_warnings
+--echo # First test case which is supposed trigger the execution
+--echo # path on which problem was discovered.
create table t1 (a int);
insert into t1 values (1);
handler t1 open;
-connect(con1,localhost,root,,);
+connection con1;
+lock table t1 write;
send alter table t1 engine=memory;
-connection default;
+connection con2;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "rename result table" and info = "alter table t1 engine=memory";
+ where state = "Waiting for table" and info = "alter table t1 engine=memory";
--source include/wait_condition.inc
+connection default;
--error ER_ILLEGAL_HA
handler t1 read a next;
handler t1 close;
connection con1;
--reap
+unlock tables;
+drop table t1;
+--echo # Now test case which was reported originally but which no longer
+--echo # triggers execution path which has caused the problem.
+connection default;
+create table t1 (a int, key(a));
+insert into t1 values (1);
+handler t1 open;
+connection con1;
+send alter table t1 engine=memory;
+connection con2;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 engine=memory";
+--source include/wait_condition.inc
+connection default;
+--echo # Since S metadata lock was already acquired at HANDLER OPEN time
+--echo # and TL_READ lock requested by HANDLER READ is compatible with
+--echo # ALTER's TL_WRITE_ALLOW_READ the below statement should succeed
+--echo # without waiting. The old version of table should be used in it.
+handler t1 read a next;
+handler t1 close;
+connection con1;
+--reap # Since last in this connection was a send
drop table t1;
disconnect con1;
--source include/wait_until_disconnected.inc
+connection con2;
+disconnect con2;
+--source include/wait_until_disconnected.inc
connection default;
#
@@ -729,3 +790,970 @@ USE information_schema;
--error ER_WRONG_USAGE
HANDLER COLUMNS OPEN;
USE test;
+
+--echo #
+--echo # Add test coverage for HANDLER and LOCK TABLES, HANDLER and DDL.
+--echo #
+--disable_warnings
+drop table if exists t1, t2, t3;
+--enable_warnings
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 (a int, key a (a)) select * from t1;
+create temporary table t3 (a int, key a (a)) select * from t2;
+handler t1 open;
+handler t2 open;
+handler t3 open;
+--echo #
+--echo # No HANDLER sql is allowed under LOCK TABLES.
+--echo # But it does not implicitly closes all handlers.
+--echo #
+lock table t1 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+handler t1 open;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+handler t1 read next;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+handler t2 close;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+handler t3 open;
+--echo # After UNLOCK TABLES handlers should be around and
+--echo # we should be able to continue reading through them.
+unlock tables;
+handler t1 read next;
+handler t1 close;
+handler t2 read next;
+handler t2 close;
+handler t3 read next;
+handler t3 close;
+drop temporary table t3;
+--echo #
+--echo # Other operations that implicitly close handler:
+--echo #
+--echo # TRUNCATE
+--echo #
+handler t1 open;
+truncate table t1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+handler t1 open;
+--echo #
+--echo # CREATE TRIGGER
+--echo #
+create trigger t1_ai after insert on t1 for each row set @a=1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # DROP TRIGGER
+--echo #
+handler t1 open;
+drop trigger t1_ai;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # ALTER TABLE
+--echo #
+handler t1 open;
+alter table t1 add column b int;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # ANALYZE TABLE
+--echo #
+handler t1 open;
+analyze table t1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # OPTIMIZE TABLE
+--echo #
+handler t1 open;
+optimize table t1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # REPAIR TABLE
+--echo #
+handler t1 open;
+repair table t1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # DROP TABLE, naturally.
+--echo #
+handler t1 open;
+drop table t1;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+create table t1 (a int, b int, key a (a)) select a from t2;
+--echo #
+--echo # RENAME TABLE, naturally
+--echo #
+handler t1 open;
+rename table t1 to t3;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # CREATE TABLE (even with IF NOT EXISTS clause,
+--echo # and the table exists).
+--echo #
+handler t2 open;
+create table if not exists t2 (a int);
+--error ER_UNKNOWN_TABLE
+handler t2 read next;
+rename table t3 to t1;
+drop table t2;
+--echo #
+--echo # FLUSH TABLE doesn't close the table but loses the position
+--echo #
+handler t1 open;
+handler t1 read a prev;
+flush table t1;
+handler t1 read a prev;
+handler t1 close;
+--echo #
+--echo # FLUSH TABLES WITH READ LOCK behaves like FLUSH TABLE.
+--echo #
+handler t1 open;
+handler t1 read a prev;
+flush tables with read lock;
+handler t1 read a prev;
+handler t1 close;
+unlock tables;
+--echo #
+--echo # Let us also check that these operations behave in similar
+--echo # way under LOCK TABLES.
+--echo #
+--echo # TRUNCATE under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+truncate table t1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+handler t1 open;
+--echo #
+--echo # CREATE TRIGGER under LOCK TABLES.
+--echo #
+lock tables t1 write;
+create trigger t1_ai after insert on t1 for each row set @a=1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # DROP TRIGGER under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+drop trigger t1_ai;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # ALTER TABLE under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+alter table t1 drop column b;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # ANALYZE TABLE under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+analyze table t1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # OPTIMIZE TABLE under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+optimize table t1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # REPAIR TABLE under LOCK TABLES.
+--echo #
+handler t1 open;
+lock tables t1 write;
+repair table t1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+--echo #
+--echo # DROP TABLE under LOCK TABLES, naturally.
+--echo #
+handler t1 open;
+lock tables t1 write;
+drop table t1;
+unlock tables;
+--error ER_UNKNOWN_TABLE
+handler t1 read next;
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+--echo #
+--echo # FLUSH TABLE doesn't close the table but loses the position
+--echo #
+handler t1 open;
+handler t1 read a prev;
+lock tables t1 write;
+flush table t1;
+unlock tables;
+handler t1 read a prev;
+handler t1 close;
+--echo #
+--echo # Explore the effect of HANDLER locks on concurrent DDL
+--echo #
+handler t1 open;
+--echo # Establishing auxiliary connections con1, con2, con3
+connect(con1, localhost, root,,);
+connect(con2, localhost, root,,);
+connect(con3, localhost, root,,);
+--echo # --> connection con1;
+connection con1;
+--echo # Sending:
+--send drop table t1
+--echo # We can't use connection 'default' as wait_condition will
+--echo # autoclose handlers.
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop table t1' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t1';
+--source include/wait_condition.inc
+--echo # --> connection default
+connection default;
+handler t1 read a prev;
+handler t1 read a prev;
+handler t1 close;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop table t1'...
+--reap
+--echo # --> connection default
+connection default;
+--echo #
+--echo # Explore the effect of HANDLER locks in parallel with SELECT
+--echo #
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+handler t1 open;
+handler t1 read a prev;
+handler t1 read a prev;
+handler t1 close;
+--echo # --> connection con1;
+connection con1;
+--echo # Sending:
+--send drop table t1
+--echo # --> connection con2
+connection con2;
+--echo # Waiting for 'drop table t1' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t1';
+--source include/wait_condition.inc
+--echo # --> connection default
+connection default;
+--echo # We can still use the table, it's part of the transaction
+select * from t1;
+--echo # Such are the circumstances that t1 is a part of transaction,
+--echo # thus we can reopen it in the handler
+handler t1 open;
+--echo # We can commit the transaction, it doesn't close the handler
+--echo # and doesn't let DROP to proceed.
+commit;
+handler t1 read a prev;
+handler t1 read a prev;
+handler t1 read a prev;
+handler t1 close;
+--echo # --> connection con1
+connection con1;
+--echo # Now drop can proceed
+--echo # Reaping 'drop table t1'...
+--reap
+--echo # --> connection default
+connection default;
+--echo #
+--echo # Demonstrate that HANDLER locks and transaction locks
+--echo # reside in the same context, and we don't back-off
+--echo # when have transaction or handler locks.
+--echo #
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t0 (a int, key a (a));
+insert into t0 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+--echo # --> connection con2
+connection con2;
+--echo # Sending:
+send rename table t0 to t3, t1 to t0, t3 to t1;
+--echo # --> connection con1
+connection con1;
+--echo # Waiting for 'rename table ...' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='rename table t0 to t3, t1 to t0, t3 to t1';
+--source include/wait_condition.inc
+--echo # --> connection default
+connection default;
+--error ER_LOCK_DEADLOCK
+handler t0 open;
+--error ER_LOCK_DEADLOCK
+select * from t0;
+handler t1 open;
+commit;
+handler t1 close;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'rename table ...'...
+--reap
+--echo # --> connection default
+connection default;
+handler t1 open;
+handler t1 read a prev;
+handler t1 close;
+drop table t0;
+--echo #
+--echo # Originally there was a deadlock error in this test.
+--echo # With implementation of deadlock detector
+--echo # we no longer deadlock, but block and wait on a lock.
+--echo # The HANDLER is auto-closed as soon as the connection
+--echo # sees a pending conflicting lock against it.
+--echo #
+create table t2 (a int, key a (a));
+handler t1 open;
+--echo # --> connection con1
+connection con1;
+lock tables t2 read;
+--echo # --> connection con2
+connection con2;
+--echo # Sending 'drop table t2'...
+--send drop table t2
+--echo # --> connection con1
+connection con1;
+--echo # Waiting for 'drop table t2' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t2';
+--source include/wait_condition.inc
+--echo # --> connection default
+connection default;
+--echo # Sending 'select * from t2'
+send select * from t2;
+--echo # --> connection con1
+connection con1;
+--echo # Waiting for 'select * from t2' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='select * from t2';
+unlock tables;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'drop table t2'...
+--reap
+--echo # --> connection default
+connection default;
+--echo # Reaping 'select * from t2'
+--error ER_NO_SUCH_TABLE
+reap;
+handler t1 close;
+
+--echo #
+--echo # ROLLBACK TO SAVEPOINT releases transactional locks,
+--echo # but has no effect on open HANDLERs
+--echo #
+create table t2 like t1;
+create table t3 like t1;
+begin;
+--echo # Have something before the savepoint
+select * from t3;
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+handler t1 read a next;
+select * from t2;
+--echo # --> connection con1
+connection con1;
+--echo # Sending:
+--send drop table t1
+--echo # --> connection con2
+connection con2;
+--echo # Sending:
+--send drop table t2
+--echo # --> connection default
+connection default;
+--echo # Let DROP TABLE statements sync in. We must use
+--echo # a separate connection for that, because otherwise SELECT
+--echo # will auto-close the HANDLERs, becaues there are pending
+--echo # exclusive locks against them.
+--echo # --> connection con3
+connection con3;
+--echo # Waiting for 'drop table t1' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t1';
+--source include/wait_condition.inc
+--echo # Waiting for 'drop table t2' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t2';
+--source include/wait_condition.inc
+--echo # Demonstrate that t2 lock was released and t2 was dropped
+--echo # after ROLLBACK TO SAVEPOINT
+--echo # --> connection default
+connection default;
+rollback to savepoint sv;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'drop table t2'...
+--reap
+--echo # Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+--echo # lock.
+--echo # --> connection default
+connection default;
+handler t1 read a next;
+handler t1 read a next;
+--echo # Demonstrate that the drop will go through as soon as we close the
+--echo # HANDLER
+handler t1 close;
+--echo # connection con1
+connection con1;
+--echo # Reaping 'drop table t1'...
+--reap
+--echo # --> connection default
+connection default;
+commit;
+drop table t3;
+--echo #
+--echo # A few special cases when using SAVEPOINT/ROLLBACK TO
+--echo # SAVEPOINT and HANDLER.
+--echo #
+--echo # Show that rollback to the savepoint taken in the beginning
+--echo # of the transaction doesn't release mdl lock on
+--echo # the HANDLER that was opened later.
+--echo #
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+begin;
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+handler t1 read a next;
+select * from t2;
+--echo # --> connection con1
+connection con1;
+--echo # Sending:
+--send drop table t1
+--echo # --> connection con2
+connection con2;
+--echo # Sending:
+--send drop table t2
+--echo # --> connection default
+connection default;
+--echo # Let DROP TABLE statements sync in. We must use
+--echo # a separate connection for that, because otherwise SELECT
+--echo # will auto-close the HANDLERs, becaues there are pending
+--echo # exclusive locks against them.
+--echo # --> connection con3
+connection con3;
+--echo # Waiting for 'drop table t1' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t1';
+--source include/wait_condition.inc
+--echo # Waiting for 'drop table t2' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t2';
+--source include/wait_condition.inc
+--echo # Demonstrate that t2 lock was released and t2 was dropped
+--echo # after ROLLBACK TO SAVEPOINT
+--echo # --> connection default
+connection default;
+rollback to savepoint sv;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'drop table t2'...
+--reap
+--echo # Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+--echo # lock.
+--echo # --> connection default
+connection default;
+handler t1 read a next;
+handler t1 read a next;
+--echo # Demonstrate that the drop will go through as soon as we close the
+--echo # HANDLER
+handler t1 close;
+--echo # connection con1
+connection con1;
+--echo # Reaping 'drop table t1'...
+--reap
+--echo # --> connection default
+connection default;
+commit;
+--echo #
+--echo # Show that rollback to the savepoint taken in the beginning
+--echo # of the transaction works properly (no valgrind warnins, etc),
+--echo # even though it's done after the HANDLER mdl lock that was there
+--echo # at the beginning is released and added again.
+--echo #
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+create table t3 like t1;
+insert into t3 (a) select a from t1;
+begin;
+handler t1 open;
+savepoint sv;
+handler t1 read a first;
+select * from t2;
+handler t1 close;
+handler t3 open;
+handler t3 read a first;
+rollback to savepoint sv;
+--echo # --> connection con1
+connection con1;
+drop table t1, t2;
+--echo # Sending:
+--send drop table t3
+--echo # Let DROP TABLE statement sync in.
+--echo # --> connection con2
+connection con2;
+--echo # Waiting for 'drop table t3' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t3';
+--source include/wait_condition.inc
+--echo # Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+--echo # lock.
+--echo # --> connection default
+connection default;
+handler t3 read a next;
+--echo # Demonstrate that the drop will go through as soon as we close the
+--echo # HANDLER
+handler t3 close;
+--echo # connection con1
+connection con1;
+--echo # Reaping 'drop table t3'...
+--reap
+--echo # --> connection default
+connection default;
+commit;
+
+--echo #
+--echo # If we have to wait on an exclusive locks while having
+--echo # an open HANDLER, ER_LOCK_DEADLOCK is reported.
+--echo #
+create table t1 (a int, key a(a));
+create table t2 like t1;
+handler t1 open;
+--echo # --> connection con1
+connection con1;
+lock table t1 write, t2 write;
+--echo # --> connection default
+connection default;
+send drop table t2;
+--echo # --> connection con2
+connection con2;
+--echo # Waiting for 'drop table t2' to get blocked...
+let $wait_condition=select count(*)=1 from information_schema.processlist where state='Waiting for table' and info='drop table t2';
+--source include/wait_condition.inc
+--echo # --> connection con1
+connection con1;
+--error ER_LOCK_DEADLOCK
+drop table t1;
+unlock tables;
+--echo # --> connection default
+connection default;
+reap;
+
+--echo # Demonstrate that there is no deadlock with FLUSH TABLE,
+--echo # even though it is waiting for the other table to go away
+create table t2 like t1;
+--echo # Sending:
+--send flush table t2
+--echo # --> connection con2
+connection con2;
+drop table t1;
+--echo # --> connection con1
+connection con1;
+unlock tables;
+--echo # --> connection default
+connection default;
+--echo # Reaping 'flush table t2'...
+--reap
+drop table t2;
+
+--echo #
+--echo # Bug #46224 HANDLER statements within a transaction might
+--echo # lead to deadlocks
+--echo #
+create table t1 (a int, key a(a));
+insert into t1 values (1), (2);
+
+--echo # --> connection default
+connection default;
+begin;
+select * from t1;
+handler t1 open;
+
+--echo # --> connection con1
+connection con1;
+--echo # Sending:
+--send lock tables t1 write
+
+--echo # --> connection con2
+connection con2;
+--echo # Check that 'lock tables t1 write' waits until transaction which
+--echo # has read from the table commits.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock tables t1 write";
+--source include/wait_condition.inc
+
+--echo # --> connection default
+connection default;
+--echo # The below 'handler t1 read ...' should not be blocked as
+--echo # 'lock tables t1 write' has not succeeded yet.
+handler t1 read a next;
+
+--echo # Unblock 'lock tables t1 write'.
+commit;
+
+--echo # --> connection con1
+connection con1;
+--echo # Reap 'lock tables t1 write'.
+--reap
+
+--echo # --> connection default
+connection default;
+--echo # Sending:
+--send handler t1 read a next
+
+--echo # --> connection con1
+connection con1;
+--echo # Waiting for 'handler t1 read a next' to get blocked...
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "handler t1 read a next";
+--source include/wait_condition.inc
+
+--echo # The below 'drop table t1' should be able to proceed without
+--echo # waiting as it will force HANDLER to be closed.
+drop table t1;
+unlock tables;
+
+--echo # --> connection default
+connection default;
+--echo # Reaping 'handler t1 read a next'...
+--error ER_NO_SUCH_TABLE
+--reap
+handler t1 close;
+
+--echo # --> connection con1
+connection con1;
+disconnect con1;
+--source include/wait_until_disconnected.inc
+--echo # --> connection con2
+connection con2;
+disconnect con2;
+--source include/wait_until_disconnected.inc
+--echo # --> connection con3
+connection con3;
+disconnect con3;
+--source include/wait_until_disconnected.inc
+connection default;
+
+--echo #
+--echo # A temporary table test.
+--echo # Check that we don't loose positions of HANDLER opened
+--echo # against a temporary table.
+--echo #
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create temporary table t2 (a int, b int, key a (a));
+insert into t2 (a) select a from t1;
+handler t1 open;
+handler t1 read a next;
+handler t2 open;
+handler t2 read a next;
+flush table t1;
+handler t2 read a next;
+--echo # Sic: the position is lost
+handler t1 read a next;
+select * from t1;
+--echo # Sic: the position is not lost
+handler t2 read a next;
+--error ER_CANT_REOPEN_TABLE
+select * from t2;
+handler t2 read a next;
+drop table t1;
+drop temporary table t2;
+
+--echo #
+--echo # A test for lock_table_names()/unlock_table_names() function.
+--echo # It should work properly in presence of open HANDLER.
+--echo #
+create table t1 (a int, b int, key a (a));
+create table t2 like t1;
+create table t3 like t1;
+create table t4 like t1;
+handler t1 open;
+handler t2 open;
+rename table t4 to t5, t3 to t4, t5 to t3;
+handler t1 read first;
+handler t2 read first;
+drop table t1, t2, t3, t4;
+
+--echo #
+--echo # A test for FLUSH TABLES WITH READ LOCK and HANDLER statements.
+--echo #
+set autocommit=0;
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+create table t2 like t1;
+insert into t2 (a, b) select a, b from t1;
+create table t3 like t1;
+insert into t3 (a, b) select a, b from t1;
+commit;
+flush tables with read lock;
+handler t1 open;
+lock table t1 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+handler t1 read next;
+--echo # This implicitly leaves LOCK TABLES but doesn't drop the GLR
+--error ER_NO_SUCH_TABLE
+lock table not_exists_write read;
+--echo # We still have the read lock.
+--error ER_CANT_UPDATE_WITH_READLOCK
+drop table t1;
+handler t1 read next;
+handler t1 close;
+handler t1 open;
+select a from t2;
+handler t1 read next;
+flush tables with read lock;
+handler t2 open;
+flush tables with read lock;
+handler t1 read next;
+select a from t3;
+handler t2 read next;
+handler t1 close;
+rollback;
+handler t2 close;
+--error ER_CANT_UPDATE_WITH_READLOCK
+drop table t1;
+commit;
+flush tables;
+--error ER_CANT_UPDATE_WITH_READLOCK
+drop table t1;
+unlock tables;
+drop table t1;
+set autocommit=default;
+drop table t2, t3;
+
+--echo #
+--echo # HANDLER statement and operation-type aware metadata locks.
+--echo # Check that when we clone a ticket for HANDLER we downrade
+--echo # the lock.
+--echo #
+--echo # Establish an auxiliary connection con1.
+connect (con1,localhost,root,,);
+--echo # -> connection default
+connection default;
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+begin;
+insert into t1 (a, b) values (6, 6);
+handler t1 open;
+handler t1 read a last;
+insert into t1 (a, b) values (7, 7);
+handler t1 read a last;
+commit;
+--echo # -> connection con1
+connection con1;
+--echo # Demonstrate that the HANDLER doesn't hold MDL_SHARED_WRITE.
+lock table t1 write;
+unlock tables;
+--echo # -> connection default
+connection default;
+handler t1 read a prev;
+handler t1 close;
+--echo # Cleanup.
+drop table t1;
+--echo # -> connection con1
+connection con1;
+disconnect con1;
+--source include/wait_until_disconnected.inc
+--echo # -> connection default
+connection default;
+
+--echo #
+--echo # A test for Bug#50555 "handler commands crash server in
+--echo # my_hash_first()".
+--echo #
+--error ER_UNKNOWN_TABLE
+handler no_such_table read no_such_index first;
+--error ER_UNKNOWN_TABLE
+handler no_such_table close;
+
+
+--echo #
+--echo # Bug#50907 Assertion `hash_tables->table->next == __null' on
+--echo # HANDLER OPEN
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+--enable_warnings
+
+CREATE TEMPORARY TABLE t1 (i INT);
+CREATE TEMPORARY TABLE t2 (i INT);
+
+# This used to trigger the assert
+HANDLER t2 OPEN;
+
+# This also used to trigger the assert
+HANDLER t2 READ FIRST;
+
+HANDLER t2 CLOSE;
+DROP TABLE t1, t2;
+
+
+--echo #
+--echo # Bug#50912 Assertion `ticket->m_type >= mdl_request->type'
+--echo # failed on HANDLER + I_S
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (id INT);
+HANDLER t1 OPEN;
+
+# This used to trigger the assert.
+SELECT table_name, table_comment FROM information_schema.tables
+ WHERE table_schema= 'test' AND table_name= 't1';
+
+HANDLER t1 CLOSE;
+DROP TABLE t1;
+
+
+--echo #
+--echo # Test for bug #50908 "Assertion `handler_tables_hash.records == 0'
+--echo # failed in enter_locked_tables_mode".
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+drop function if exists f1;
+--enable_warnings
+create table t1 (i int);
+insert into t1 values (1), (2);
+create table t2 (j int);
+insert into t2 values (1);
+create function f1() returns int return (select count(*) from t2);
+--echo # Check that open HANDLER survives statement executed in
+--echo # prelocked mode.
+handler t1 open;
+handler t1 read next;
+--echo # The below statement were aborted due to an assertion failure.
+select f1() from t2;
+handler t1 read next;
+handler t1 close;
+--echo # Check that the same happens under GLOBAL READ LOCK.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+select f1() from t2;
+handler t1 read next;
+unlock tables;
+handler t1 close;
+--echo # Now, check that the same happens if LOCK TABLES is executed.
+handler t1 open;
+handler t1 read next;
+lock table t2 read;
+select * from t2;
+unlock tables;
+handler t1 read next;
+handler t1 close;
+--echo # Finally, check scenario with GRL and LOCK TABLES.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+lock table t2 read;
+select * from t2;
+--echo # This unlocks both tables and GRL.
+unlock tables;
+handler t1 read next;
+handler t1 close;
+--echo # Clean-up.
+drop function f1;
+drop tables t1, t2;
+
+
+--echo #
+--echo # Test for bug #51136 "Crash in pthread_rwlock_rdlock on TEMPORARY +
+--echo # HANDLER + LOCK + SP".
+--echo # Also see additional coverage for this bug in flush.test.
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+--enable_warnings
+create table t1 (i int);
+create temporary table t2 (j int);
+handler t1 open;
+lock table t2 read;
+--echo # This commit should not release any MDL locks.
+commit;
+unlock tables;
+--echo # The below statement crashed before the bug fix as it
+--echo # has attempted to release metadata lock which was
+--echo # already released by commit.
+handler t1 close;
+drop tables t1, t2;
+
+
+--echo #
+--echo # Bug#51355 handler stmt cause assertion in
+--echo # bool MDL_context::try_acquire_lock(MDL_request*)
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+connect(con51355, localhost, root);
+
+--echo # Connection default
+connection default;
+CREATE TABLE t1(id INT, KEY id(id));
+HANDLER t1 OPEN;
+
+--echo # Connection con51355
+connection con51355;
+--echo # Sending:
+--send DROP TABLE t1
+
+--echo # Connection default
+connection default;
+--echo # This I_S query will cause the handler table to be closed and
+--echo # the metadata lock to be released. This will allow DROP TABLE
+--echo # to proceed. Waiting for the table to be removed.
+let $wait_condition=
+ SELECT COUNT(*) = 0 FROM information_schema.tables WHERE table_name = "t1";
+--source include/wait_condition.inc
+
+--echo # Connection con51355
+connection con51355;
+--echo # Reaping: DROP TABLE t1
+--reap
+
+--echo # Connection default
+connection default;
+--error ER_NO_SUCH_TABLE
+HANDLER t1 READ id NEXT;
+# This caused an assertion
+--error ER_NO_SUCH_TABLE
+HANDLER t1 READ id NEXT;
+
+HANDLER t1 CLOSE;
+--echo # Connection con51355
+connection con51355;
+disconnect con51355;
+--source include/wait_until_disconnected.inc
+--echo # Connection default
+connection default;
+
diff --git a/mysql-test/include/have_ipv4_mapped.inc b/mysql-test/include/have_ipv4_mapped.inc
new file mode 100644
index 00000000000..d85580405cd
--- /dev/null
+++ b/mysql-test/include/have_ipv4_mapped.inc
@@ -0,0 +1,14 @@
+# Check if ipv4 mapped to ipv6 is available.
+--disable_query_log
+--disable_abort_on_error
+connect (checkcon123456789,::FFFF:127.0.0.1,root,,test);
+if($mysql_errno)
+{
+skip wrong IP;
+}
+connection default;
+disconnect checkcon123456789;
+--enable_abort_on_error
+--enable_query_log
+# end check
+
diff --git a/mysql-test/include/have_utf16.inc b/mysql-test/include/have_utf16.inc
new file mode 100644
index 00000000000..ab22c255c88
--- /dev/null
+++ b/mysql-test/include/have_utf16.inc
@@ -0,0 +1,4 @@
+-- require r/have_utf16.require
+disable_query_log;
+show collation like 'utf16_general_ci';
+enable_query_log;
diff --git a/mysql-test/include/have_utf32.inc b/mysql-test/include/have_utf32.inc
new file mode 100644
index 00000000000..f5b5353c9fd
--- /dev/null
+++ b/mysql-test/include/have_utf32.inc
@@ -0,0 +1,4 @@
+-- require r/have_utf32.require
+disable_query_log;
+show collation like 'utf32_general_ci';
+enable_query_log;
diff --git a/mysql-test/include/have_utf8mb4.inc b/mysql-test/include/have_utf8mb4.inc
new file mode 100644
index 00000000000..6eb91b1c23c
--- /dev/null
+++ b/mysql-test/include/have_utf8mb4.inc
@@ -0,0 +1,7 @@
+--require r/have_utf8mb4.require
+
+--disable_query_log
+
+SHOW COLLATION LIKE 'utf8mb4_general_ci';
+
+--enable_query_log
diff --git a/mysql-test/include/implicit_commit_helper.inc b/mysql-test/include/implicit_commit_helper.inc
new file mode 100644
index 00000000000..5e87b2db079
--- /dev/null
+++ b/mysql-test/include/implicit_commit_helper.inc
@@ -0,0 +1,5 @@
+INSERT INTO db1.trans (a) VALUES (1);
+--disable_result_log
+eval $statement;
+--enable_result_log
+CALL db1.test_if_commit();
diff --git a/mysql-test/include/ipv6.inc b/mysql-test/include/ipv6.inc
index 378733dd03a..3d8fdcfbc3c 100644
--- a/mysql-test/include/ipv6.inc
+++ b/mysql-test/include/ipv6.inc
@@ -6,7 +6,9 @@ eval SET @nip= inet_aton('$IPv6');
SELECT @nip;
SELECT inet_ntoa(@nip);
# delivers a wrong value, see bug#34037
+--replace_result ::1 localhost
SELECT USER();
+--replace_result ::1 localhost
SELECT current_user();
--disable_result_log
SHOW PROCESSLIST;
@@ -17,6 +19,7 @@ disconnect con1;
eval REVOKE ALL ON test.* FROM testuser@'$IPv6';
eval RENAME USER testuser@'$IPv6' to testuser1@'$IPv6';
eval SET PASSWORD FOR testuser1@'$IPv6' = PASSWORD ('9876');
+--replace_result ::1 localhost
SELECT USER();
eval DROP USER testuser1@'$IPv6';
diff --git a/mysql-test/include/mix1.inc b/mysql-test/include/mix1.inc
index 194d9e41108..66648aaf1bf 100644
--- a/mysql-test/include/mix1.inc
+++ b/mysql-test/include/mix1.inc
@@ -899,6 +899,8 @@ CREATE PROCEDURE p1 ()
BEGIN
DECLARE i INT DEFAULT 50;
DECLARE cnt INT;
+ # Continue even in the presence of ER_LOCK_DEADLOCK.
+ DECLARE CONTINUE HANDLER FOR 1213 BEGIN END;
START TRANSACTION;
ALTER TABLE t1 ENGINE=InnoDB;
COMMIT;
@@ -1392,6 +1394,7 @@ SELECT * FROM t1;
connection con2;
--reap
SELECT * FROM t1;
+COMMIT;
--echo # Switch to connection con1
connection con1;
diff --git a/mysql-test/include/mix2.inc b/mysql-test/include/mix2.inc
index b4c4a9b8836..001d4cf44d4 100644
--- a/mysql-test/include/mix2.inc
+++ b/mysql-test/include/mix2.inc
@@ -1994,6 +1994,7 @@ commit;
connection b;
set autocommit = 0;
update t1 set b = 5 where a = 2;
+commit;
connection a;
delimiter |;
create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
@@ -2056,6 +2057,7 @@ update t2 set b = b + 5 where a = 1;
update t3 set b = b + 5 where a = 1;
update t4 set b = b + 5 where a = 1;
insert into t5(a) values(20);
+commit;
connection b;
set autocommit = 0;
insert into t1(a) values(7);
diff --git a/mysql-test/include/mtr_warnings.sql b/mysql-test/include/mtr_warnings.sql
index 00e8c4e6c95..bf0a58788d6 100644
--- a/mysql-test/include/mtr_warnings.sql
+++ b/mysql-test/include/mtr_warnings.sql
@@ -185,6 +185,22 @@ INSERT INTO global_suppressions VALUES
("Master server does not support or not configured semi-sync replication, fallback to asynchronous"),
(": The MySQL server is running with the --secure-backup-file-priv option so it cannot execute this statement"),
("Slave: Unknown table 't1' Error_code: 1051"),
+
+ /* Messages from valgrind */
+ ("==[0-9]*== Memcheck,"),
+ ("==[0-9]*== Copyright"),
+ ("==[0-9]*== Using"),
+ ("==[0-9]*== For more details"),
+ /* This comes with innodb plugin tests */
+ ("==[0-9]*== Warning: set address range perms: large range"),
+ /* valgrind-3.5.0 dumps this */
+ ("==[0-9]*== Command: "),
+
+ /* valgrind warnings: invalid file descriptor -1 in syscall
+ write()/read(). Bug #50414 */
+ ("==[0-9]*== Warning: invalid file descriptor -1 in syscall write()"),
+ ("==[0-9]*== Warning: invalid file descriptor -1 in syscall read()"),
+
/*
Transient network failures that cause warnings on reconnect.
BUG#47743 and BUG#47983.
@@ -193,6 +209,13 @@ INSERT INTO global_suppressions VALUES
("Slave I/O: Get master clock failed with error:.*"),
("Slave I/O: Get master COLLATION_SERVER failed with error:.*"),
("Slave I/O: Get master TIME_ZONE failed with error:.*"),
+ /*
+ BUG#42147 - Concurrent DML and LOCK TABLE ... READ for InnoDB
+ table cause warnings in errlog
+ Note: This is a temporary suppression until Bug#42147 can be
+ fixed properly. See bug page for more information.
+ */
+ ("Found lock of type 6 that is write and read locked"),
("THE_LAST_SUPPRESSION")||
diff --git a/mysql-test/include/not_binlog_format_row.inc b/mysql-test/include/not_binlog_format_row.inc
new file mode 100644
index 00000000000..f9354e7cd33
--- /dev/null
+++ b/mysql-test/include/not_binlog_format_row.inc
@@ -0,0 +1,4 @@
+if (`SELECT @@binlog_format = 'ROW'`)
+{
+ skip Test cannot run with binlog_format row;
+}
diff --git a/mysql-test/include/setup_fake_relay_log.inc b/mysql-test/include/setup_fake_relay_log.inc
index 9510a557159..86a5da328af 100644
--- a/mysql-test/include/setup_fake_relay_log.inc
+++ b/mysql-test/include/setup_fake_relay_log.inc
@@ -66,8 +66,16 @@ let $_fake_relay_index= $MYSQLD_DATADIR/$_fake_filename.index;
# CHANGE MASTER modifies it (see the manual for CHANGE MASTER).
let $_fake_relay_log_purge= `SELECT @@global.relay_log_purge`;
+# Reset slave and remove relay log and index files if they exist
+RESET SLAVE;
+error 0,1;
+remove_file $MYSQLD_DATADIR/$_fake_filename.000001;
+error 0,1;
+remove_file $MYSQLD_DATADIR/$_fake_filename.index;
+
# Create relay log file.
copy_file $fake_relay_log $_fake_relay_log;
+
# Create relay log index.
# After patch for BUG#12190, the filename used in CHANGE MASTER
@@ -77,28 +85,12 @@ copy_file $fake_relay_log $_fake_relay_log;
if (`select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows") = 0`)
{
- -- let $_index_entry= ./$_fake_filename-fake.000001
+ eval select './$_fake_filename-fake.000001\n' into dumpfile '$_fake_relay_index';
}
if (`select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows") != 0`)
{
- -- let $_index_entry= .\\\\$_fake_filename-fake.000001
-}
-
-if (`SELECT LENGTH(@@secure_file_priv) > 0`)
-{
- -- let $_file_priv_dir= `SELECT @@secure_file_priv`;
- -- let $_suffix= `SELECT UUID()`
- -- let $_tmp_file= $_file_priv_dir/fake-index.$_suffix
-
- -- eval select '$_index_entry\n' into dumpfile '$_tmp_file'
- -- copy_file $_tmp_file $_fake_relay_index
- -- remove_file $_tmp_file
-}
-
-if (`SELECT LENGTH(@@secure_file_priv) = 0`)
-{
- -- eval select '$_index_entry\n' into dumpfile '$_fake_relay_index'
+ eval select '.\\\\$_fake_filename-fake.000001\n' into dumpfile '$_fake_relay_index';
}
# Setup replication from existing relay log.
diff --git a/mysql-test/lib/My/Options.pm b/mysql-test/lib/My/Options.pm
index 40f05c41d1c..3bfbe1fc90e 100644
--- a/mysql-test/lib/My/Options.pm
+++ b/mysql-test/lib/My/Options.pm
@@ -67,9 +67,6 @@ sub _split_option {
elsif ($option=~ /^(.*)=(.*)$/){
return ($1, $2)
}
- elsif ($option=~ /^-O$/){
- return (undef, undef);
- }
die "Unknown option format '$option'";
}
@@ -169,20 +166,11 @@ sub toSQL {
my @sql;
foreach my $option (@options) {
- my ($name, $value)= _split_option($option);
- #print "name: $name\n";
+ my ($sql_name, $value)= _split_option($option);
+ #print "name: $sql_name\n";
#print "value: $value\n";
- if ($name =~ /^O, (.*)/){
- push(@sql, "SET GLOBAL $1=$value");
- }
- elsif ($name =~ /^set-variable=(.*)/){
- push(@sql, "SET GLOBAL $1=$value");
- }
- else {
- my $sql_name= $name;
- $sql_name=~ s/-/_/g;
- push(@sql, "SET GLOBAL $sql_name=$value");
- }
+ $sql_name=~ s/-/_/g;
+ push(@sql, "SET GLOBAL $sql_name=$value");
}
return join("; ", @sql);
}
diff --git a/mysql-test/lib/My/SafeProcess.pm b/mysql-test/lib/My/SafeProcess.pm
index 0fac25b814b..b8f05778b6e 100644
--- a/mysql-test/lib/My/SafeProcess.pm
+++ b/mysql-test/lib/My/SafeProcess.pm
@@ -81,7 +81,6 @@ sub is_child {
}
-# Find the safe process binary or script
my @safe_process_cmd;
my $safe_kill;
my $bindir;
@@ -96,21 +95,26 @@ else
$bindir = ".";
}
-if (IS_WIN32PERL or IS_CYGWIN){
- # Use my_safe_process.exe
- my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
- "my_safe_process");
- push(@safe_process_cmd, $exe);
- # Use my_safe_kill.exe
- $safe_kill= my_find_bin($bindir, "lib/My/SafeProcess", "my_safe_kill");
-}
-else
-{
- # Use my_safe_process
- my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
- "my_safe_process");
- push(@safe_process_cmd, $exe);
+# Find the safe process binary or script
+sub find_bin {
+ if (IS_WIN32PERL or IS_CYGWIN)
+ {
+ # Use my_safe_process.exe
+ my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
+ "my_safe_process");
+ push(@safe_process_cmd, $exe);
+
+ # Use my_safe_kill.exe
+ $safe_kill= my_find_bin($bindir, "lib/My/SafeProcess", "my_safe_kill");
+ }
+ else
+ {
+ # Use my_safe_process
+ my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
+ "my_safe_process");
+ push(@safe_process_cmd, $exe);
+ }
}
@@ -196,63 +200,6 @@ sub run {
}
#
-# Start a process that returns after "duration" seconds
-# or when it's parent process does not exist anymore
-#
-sub timer {
- my $class= shift;
- my $duration= shift or croak "duration required";
- my $parent_pid= $$;
-
- my $pid= My::SafeProcess::Base::_safe_fork();
- if ($pid){
- # Parent
- my $proc= bless
- ({
- SAFE_PID => $pid,
- SAFE_NAME => "timer",
- PARENT => $$,
- }, $class);
-
- # Put the new process in list of running
- $running{$pid}= $proc;
- return $proc;
- }
-
- # Child, install signal handlers and sleep for "duration"
- $SIG{INT}= 'IGNORE';
-
- $SIG{TERM}= sub {
- #print STDERR "timer $$: woken up, exiting!\n";
- exit(0);
- };
-
- $0= "safe_timer($duration)";
-
- if (IS_WIN32PERL){
- # Just a thread in same process
- sleep($duration);
- print STDERR "timer $$: expired after $duration seconds\n";
- exit(0);
- }
-
- my $count_down= $duration;
- while($count_down--){
-
- # Check that parent is still alive
- if (kill(0, $parent_pid) == 0){
- #print STDERR "timer $$: parent gone, exiting!\n";
- exit(0);
- }
-
- sleep(1);
- }
- print STDERR "timer $$: expired after $duration seconds\n";
- exit(0);
-}
-
-
-#
# Shutdown process nicely, and wait for shutdown_timeout seconds
# If processes hasn't shutdown, kill them hard and wait for return
#
@@ -350,12 +297,12 @@ sub start_kill {
$ret= system($safe_kill, $winpid) >> 8;
if ($ret == 3){
- print "Couldn't open the winpid: $winpid ",
+ print "Couldn't open the winpid: $winpid ".
"for pid: $pid, try one more time\n";
sleep(1);
$winpid= _winpid($pid);
$ret= system($safe_kill, $winpid) >> 8;
- print "Couldn't open the winpid: $winpid ",
+ print "Couldn't open the winpid: $winpid ".
"for pid: $pid, continue and see what happens...\n";
}
}
@@ -550,6 +497,40 @@ sub wait_any {
#
+# Wait for any process to exit, or a timeout
+#
+# Returns a reference to the SafeProcess that
+# exited or a pseudo-process with $proc->{timeout} == 1
+#
+
+sub wait_any_timeout {
+ my $class= shift;
+ my $timeout= shift;
+ my $proc;
+ my $millis=10;
+
+ do {
+ ::mtr_milli_sleep($millis);
+ # Slowly increse interval up to max. 1 second
+ $millis++ if $millis < 1000;
+ # Return a "fake" process for timeout
+ if (::has_expired($timeout)) {
+ $proc= bless
+ ({
+ SAFE_PID => 0,
+ SAFE_NAME => "timer",
+ timeout => 1,
+ }, $class);
+ } else {
+ $proc= check_any();
+ }
+ } while (! $proc);
+
+ return $proc;
+}
+
+
+#
# Wait for all processes to exit
#
sub wait_all {
@@ -606,7 +587,7 @@ sub self2str {
sub _verbose {
return unless $_verbose;
- print STDERR " ## ", @_, "\n";
+ print STDERR " ## ". @_. "\n";
}
diff --git a/mysql-test/lib/My/SafeProcess/CMakeLists.txt b/mysql-test/lib/My/SafeProcess/CMakeLists.txt
index f133528a44b..f79c2d450b9 100644
--- a/mysql-test/lib/My/SafeProcess/CMakeLists.txt
+++ b/mysql-test/lib/My/SafeProcess/CMakeLists.txt
@@ -25,6 +25,8 @@ ELSE()
MYSQL_ADD_EXECUTABLE(my_safe_process safe_process.cc ${INSTALL_ARGS})
ENDIF()
-
-INSTALL(FILES safe_process.pl Base.pm DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess"
-COMPONENT Test)
+INSTALL(TARGETS my_safe_process DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
+IF(WIN32)
+ INSTALL(TARGETS my_safe_kill DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
+ENDIF()
+INSTALL(FILES safe_process.pl Base.pm DESTINATION "${INSTALL_MYSQLTESTDIR}/lib/My/SafeProcess" COMPONENT Test)
diff --git a/mysql-test/lib/My/SafeProcess/safe_process_win.cc b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
index 7b47fcbe2dd..8fffede0b62 100755
--- a/mysql-test/lib/My/SafeProcess/safe_process_win.cc
+++ b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
@@ -187,14 +187,20 @@ int main(int argc, const char** argv )
die("No real args -> nothing to do");
/* Copy the remaining args to child_arg */
for (int j= i+1; j < argc; j++) {
- if (strchr (argv[j], ' ')) {
- /* Protect with "" if this arg contains a space */
- to+= _snprintf(to, child_args + sizeof(child_args) - to,
- "\"%s\" ", argv[j]);
- } else {
- to+= _snprintf(to, child_args + sizeof(child_args) - to,
- "%s ", argv[j]);
- }
+ arg= argv[j];
+ if (strchr (arg, ' ') &&
+ arg[0] != '\"' &&
+ arg[strlen(arg)] != '\"')
+ {
+ /* Quote arg that contains spaces and are not quoted already */
+ to+= _snprintf(to, child_args + sizeof(child_args) - to,
+ "\"%s\" ", arg);
+ }
+ else
+ {
+ to+= _snprintf(to, child_args + sizeof(child_args) - to,
+ "%s ", arg);
+ }
}
break;
} else {
diff --git a/mysql-test/lib/mtr_cases.pm b/mysql-test/lib/mtr_cases.pm
index 8d02914c1e3..cb893402258 100644
--- a/mysql-test/lib/mtr_cases.pm
+++ b/mysql-test/lib/mtr_cases.pm
@@ -40,7 +40,6 @@ our $default_storage_engine;
our $opt_with_ndbcluster_only;
our $defaults_file;
our $defaults_extra_file;
-our $reorder= 1;
our $quick_collect;
sub collect_option {
@@ -99,7 +98,8 @@ sub init_pattern {
#
##############################################################################
-sub collect_test_cases ($$) {
+sub collect_test_cases ($$$) {
+ my $opt_reorder= shift; # True if we're reordering tests
my $suites= shift; # Semicolon separated list of test suites
my $opt_cases= shift;
my $cases= []; # Array of hash(one hash for each testcase)
@@ -118,10 +118,16 @@ sub collect_test_cases ($$) {
!(IS_WINDOWS && $::opt_embedded_server) &&
$lib_innodb_plugin);
- foreach my $suite (split(",", $suites))
+ # If not reordering, we also shouldn't group by suites, unless
+ # no test cases were named.
+ # This also effects some logic in the loop following this.
+ if ($opt_reorder or !@$opt_cases)
{
- push(@$cases, collect_one_suite($suite, $opt_cases));
- last if $some_test_found;
+ foreach my $suite (split(",", $suites))
+ {
+ push(@$cases, collect_one_suite($suite, $opt_cases));
+ last if $some_test_found;
+ }
}
if ( @$opt_cases )
@@ -135,6 +141,7 @@ sub collect_test_cases ($$) {
my ($sname, $tname, $extension)= split_testname($test_name_spec);
foreach my $test ( @$cases )
{
+ last unless $opt_reorder;
# test->{name} is always in suite.name format
if ( $test->{name} =~ /.*\.$tname/ )
{
@@ -144,12 +151,13 @@ sub collect_test_cases ($$) {
}
if ( not $found )
{
+ $sname= "main" if !$opt_reorder and !$sname;
mtr_error("Could not find '$tname' in '$suites' suite(s)") unless $sname;
- # If suite was part of name, find it there
- my ($this_case) = collect_one_suite($sname, [ $tname ]);
- if ($this_case)
+ # If suite was part of name, find it there, may come with combinations
+ my @this_case = collect_one_suite($sname, [ $tname ]);
+ if (@this_case)
{
- push (@$cases, $this_case);
+ push (@$cases, @this_case);
}
else
{
@@ -159,7 +167,7 @@ sub collect_test_cases ($$) {
}
}
- if ( $reorder && !$quick_collect)
+ if ( $opt_reorder && !$quick_collect)
{
# Reorder the test cases in an order that will make them faster to run
my %sort_criteria;
@@ -1142,7 +1150,7 @@ sub opts_from_file ($) {
{
chomp;
- # --set-variable=init_connect=set @a='a\\0c'
+ # --init_connect=set @a='a\\0c'
s/^\s+//; # Remove leading space
s/\s+$//; # Remove ending space
diff --git a/mysql-test/lib/mtr_gprof.pl b/mysql-test/lib/mtr_gprof.pl
index f6615301dd7..5820a4007b8 100644
--- a/mysql-test/lib/mtr_gprof.pl
+++ b/mysql-test/lib/mtr_gprof.pl
@@ -20,43 +20,20 @@
use strict;
-# These are not to be prefixed with "mtr_"
+sub gprof_collect ($@) {
+ my ($exe_mysqld, @gprof_dirs)= @_;
-sub gprof_prepare ();
-sub gprof_collect ();
+ print ("Collecting gprof reports.....\n");
-##############################################################################
-#
-#
-#
-##############################################################################
-
-sub gprof_prepare () {
-
- rmtree($::opt_gprof_dir);
- mkdir($::opt_gprof_dir);
-}
-
-# FIXME what about master1 and slave1?!
-sub gprof_collect () {
-
- if ( -f "$::master->[0]->{'path_myddir'}/gmon.out" )
- {
- # FIXME check result code?!
- mtr_run("gprof",
- [$::exe_master_mysqld,
- "$::master->[0]->{'path_myddir'}/gmon.out"],
- $::opt_gprof_master, "", "", "");
- print "Master execution profile has been saved in $::opt_gprof_master\n";
- }
- if ( -f "$::slave->[0]->{'path_myddir'}/gmon.out" )
+ foreach my $datadir (@gprof_dirs)
{
- # FIXME check result code?!
- mtr_run("gprof",
- [$::exe_slave_mysqld,
- "$::slave->[0]->{'path_myddir'}/gmon.out"],
- $::opt_gprof_slave, "", "", "");
- print "Slave execution profile has been saved in $::opt_gprof_slave\n";
+ my $gprof_msg= "$datadir/gprof.msg";
+ my $gprof_err= "$datadir/gprof.err";
+ if ( -f "$datadir/gmon.out" )
+ {
+ system("gprof $exe_mysqld $datadir/gmon.out 2>$gprof_err >$gprof_msg");
+ print ("GPROF output in $gprof_msg, errors in $gprof_err\n");
+ }
}
}
diff --git a/mysql-test/lib/mtr_misc.pl b/mysql-test/lib/mtr_misc.pl
index 658eb270535..97eb693b52e 100644
--- a/mysql-test/lib/mtr_misc.pl
+++ b/mysql-test/lib/mtr_misc.pl
@@ -30,7 +30,9 @@ sub mtr_script_exists(@);
sub mtr_file_exists(@);
sub mtr_exe_exists(@);
sub mtr_exe_maybe_exists(@);
-
+sub mtr_milli_sleep($);
+sub start_timer($);
+sub has_expired($);
##############################################################################
#
@@ -167,11 +169,18 @@ sub mtr_exe_exists (@) {
}
-sub mtr_milli_sleep {
+sub mtr_milli_sleep ($) {
die "usage: mtr_milli_sleep(milliseconds)" unless @_ == 1;
my ($millis)= @_;
select(undef, undef, undef, ($millis/1000));
}
+# Simple functions to start and check timers (have to be actively polled)
+# Timer can be "killed" by setting it to 0
+
+sub start_timer ($) { return time + $_[0]; }
+
+sub has_expired ($) { return $_[0] && time gt $_[0]; }
+
1;
diff --git a/mysql-test/lib/mtr_report.pm b/mysql-test/lib/mtr_report.pm
index 937e19111fb..1c4b940bbee 100644
--- a/mysql-test/lib/mtr_report.pm
+++ b/mysql-test/lib/mtr_report.pm
@@ -69,7 +69,7 @@ sub _mtr_report_test_name ($) {
$tname.= " '$tinfo->{combination}'"
if defined $tinfo->{combination};
- print _name(), _timestamp();
+ print _name(). _timestamp();
printf "%-40s ", $tname;
my $worker = $tinfo->{worker};
printf "w$worker " if $worker;
@@ -222,8 +222,8 @@ sub mtr_report_test ($) {
}
-sub mtr_report_stats ($;$) {
- my ($tests, $dont_error)= @_;
+sub mtr_report_stats ($$;$) {
+ my ($prefix, $tests, $dont_error)= @_;
# ----------------------------------------------------------------------
# Find out how we where doing
@@ -328,6 +328,9 @@ sub mtr_report_stats ($;$) {
}
}
+ # Print summary line prefix
+ print "$prefix: ";
+
# Print a list of testcases that failed
if ( $tot_failed != 0 )
{
@@ -387,13 +390,13 @@ sub mtr_report_stats ($;$) {
##############################################################################
sub mtr_print_line () {
- print '-' x 60, "\n";
+ print '-' x 60 . "\n";
}
sub mtr_print_thick_line {
my $char= shift || '=';
- print $char x 78, "\n";
+ print $char x 78 . "\n";
}
@@ -451,7 +454,7 @@ sub _timestamp {
# Always print message to screen
sub mtr_print (@) {
- print _name(), join(" ", @_), "\n";
+ print _name(). join(" ", @_). "\n";
}
@@ -459,22 +462,22 @@ sub mtr_print (@) {
sub mtr_report (@) {
if (defined $verbose)
{
- print _name(), join(" ", @_), "\n";
+ print _name(). join(" ", @_). "\n";
}
}
# Print warning to screen
sub mtr_warning (@) {
- print STDERR _name(), _timestamp(),
- "mysql-test-run: WARNING: ", join(" ", @_), "\n";
+ print STDERR _name(). _timestamp().
+ "mysql-test-run: WARNING: ". join(" ", @_). "\n";
}
# Print error to screen and then exit
sub mtr_error (@) {
- print STDERR _name(), _timestamp(),
- "mysql-test-run: *** ERROR: ", join(" ", @_), "\n";
+ print STDERR _name(). _timestamp().
+ "mysql-test-run: *** ERROR: ". join(" ", @_). "\n";
if (IS_WINDOWS)
{
POSIX::_exit(1);
@@ -489,8 +492,8 @@ sub mtr_error (@) {
sub mtr_debug (@) {
if ( $verbose > 2 )
{
- print STDERR _name(),
- _timestamp(), "####: ", join(" ", @_), "\n";
+ print STDERR _name().
+ _timestamp(). "####: ". join(" ", @_). "\n";
}
}
@@ -498,8 +501,8 @@ sub mtr_debug (@) {
sub mtr_verbose (@) {
if ( $verbose )
{
- print STDERR _name(), _timestamp(),
- "> ",join(" ", @_),"\n";
+ print STDERR _name(). _timestamp().
+ "> ".join(" ", @_)."\n";
}
}
@@ -509,8 +512,8 @@ sub mtr_verbose_restart (@) {
my $proc= $server->{proc};
if ( $verbose_restart )
{
- print STDERR _name(),_timestamp(),
- "> Restart $proc - ",join(" ", @args),"\n";
+ print STDERR _name()._timestamp().
+ "> Restart $proc - ".join(" ", @args)."\n";
}
}
diff --git a/mysql-test/lib/mtr_stress.pl b/mysql-test/lib/mtr_stress.pl
index cd5c7b0dbb7..702bc178ae5 100644
--- a/mysql-test/lib/mtr_stress.pl
+++ b/mysql-test/lib/mtr_stress.pl
@@ -150,7 +150,7 @@ sub run_stress_test ()
mtr_add_arg($args, "--verbose");
mtr_add_arg($args, "--cleanup");
mtr_add_arg($args, "--log-error-details");
- mtr_add_arg($args, "--abort-on-error");
+ mtr_add_arg($args, "--abort-on-error=1");
if ( $::opt_stress_init_file )
{
diff --git a/mysql-test/lib/t/Options.t b/mysql-test/lib/t/Options.t
index 7012f3da8de..3824c838627 100644
--- a/mysql-test/lib/t/Options.t
+++ b/mysql-test/lib/t/Options.t
@@ -45,42 +45,30 @@ my @tests=
[
[ ],
- ['-O', 'max_binlog_size=1' ],
['--max_binlog_size=1' ]
],
[
- ['-O', 'max_binlog_size=1' ],
- ['-O', 'max_binlog_size=1' ],
- [ ],
- ],
-
- [
- ['-O', 'max_binlog_size=1' ],
[ ],
['--max_binlog_size=default' ]
],
[
[ ],
- ['-O', 'max_binlog_size=1', '--binlog-format=row' ],
['--max_binlog_size=1', '--binlog-format=row' ]
],
[
['--binlog-format=statement' ],
- ['-O', 'max_binlog_size=1', '--binlog-format=row' ],
['--max_binlog_size=1', '--binlog-format=row']
],
[
[ '--binlog-format=statement' ],
- ['-O', 'max_binlog_size=1', '--binlog-format=statement' ],
['--max_binlog_size=1' ]
],
[
[ '--binlog-format=statement' ],
- ['-O', 'max_binlog_size=1', '--binlog-format=statement' ],
['--max_binlog_size=1' ]
],
@@ -93,7 +81,7 @@ my @tests=
[
[ '--binlog-format=statement' ],
- ['--relay-log=/path/to/a/relay-log', '-O', 'max_binlog_size=1'],
+ ['--relay-log=/path/to/a/relay-log', '--max_binlog_size=1'],
['--max_binlog_size=1', '--relay-log=/path/to/a/relay-log', '--binlog-format=default' ]
],
diff --git a/mysql-test/lib/v1/mtr_io.pl b/mysql-test/lib/v1/mtr_io.pl
index aa671c0f4f7..952b8f1f4ba 100644
--- a/mysql-test/lib/v1/mtr_io.pl
+++ b/mysql-test/lib/v1/mtr_io.pl
@@ -80,7 +80,7 @@ sub mtr_get_opts_from_file ($) {
{
chomp;
- # --set-variable=init_connect=set @a='a\\0c'
+ # --init_connect=set @a='a\\0c'
s/^\s+//; # Remove leading space
s/\s+$//; # Remove ending space
diff --git a/mysql-test/lib/v1/mtr_report.pl b/mysql-test/lib/v1/mtr_report.pl
index 3c78c3ca064..36aba983c34 100644
--- a/mysql-test/lib/v1/mtr_report.pl
+++ b/mysql-test/lib/v1/mtr_report.pl
@@ -376,6 +376,9 @@ sub mtr_report_stats ($) {
/Slave: Can't DROP 'c7'.* 1091/ or
/Slave: Key column 'c6'.* 1072/ or
+ # Warnings generated until bug#42147 is properly resolved
+ /Found lock of type 6 that is write and read locked/ or
+
# rpl_idempotency.test produces warnings for the slave.
($testname eq 'rpl.rpl_idempotency' and
(/Slave: Can\'t find record in \'t1\' Error_code: 1032/ or
diff --git a/mysql-test/lib/v1/mtr_stress.pl b/mysql-test/lib/v1/mtr_stress.pl
index 93b06b32c5f..40800c9729b 100644
--- a/mysql-test/lib/v1/mtr_stress.pl
+++ b/mysql-test/lib/v1/mtr_stress.pl
@@ -150,7 +150,7 @@ sub run_stress_test ()
mtr_add_arg($args, "--verbose");
mtr_add_arg($args, "--cleanup");
mtr_add_arg($args, "--log-error-details");
- mtr_add_arg($args, "--abort-on-error");
+ mtr_add_arg($args, "--abort-on-error=1");
if ( $::opt_stress_init_file )
{
diff --git a/mysql-test/lib/v1/mysql-test-run.pl b/mysql-test/lib/v1/mysql-test-run.pl
index b1e746dd80e..64d7376605e 100755
--- a/mysql-test/lib/v1/mysql-test-run.pl
+++ b/mysql-test/lib/v1/mysql-test-run.pl
@@ -109,6 +109,7 @@ our $glob_use_embedded_server= 0;
our @glob_test_mode;
our $glob_basedir;
+our $glob_bindir;
our $path_charsetsdir;
our $path_client_bindir;
@@ -152,13 +153,11 @@ our $exe_mysqldump;
our $exe_mysqlslap;
our $exe_mysqlimport;
our $exe_mysqlshow;
-our $exe_mysql_fix_system_tables;
our $file_mysql_fix_privilege_tables;
our $exe_mysqltest;
our $exe_ndbd;
our $exe_ndb_mgmd;
our $exe_slave_mysqld;
-our $exe_im;
our $exe_my_print_defaults;
our $exe_perror;
our $lib_udf_example;
@@ -721,13 +720,21 @@ sub command_line_setup () {
$glob_mysql_test_dir= `cygpath -m "$glob_mysql_test_dir"`;
chomp($glob_mysql_test_dir);
}
- $default_vardir= "$glob_mysql_test_dir/var";
+ if (defined $ENV{MTR_BINDIR})
+ {
+ $default_vardir= "$ENV{MTR_BINDIR}/mysql-test/var";
+ }
+ else
+ {
+ $default_vardir= "$glob_mysql_test_dir/var";
+ }
# In most cases, the base directory we find everything relative to,
# is the parent directory of the "mysql-test" directory. For source
# distributions, TAR binary distributions and some other packages.
$glob_basedir= dirname($glob_mysql_test_dir);
+ $glob_bindir= $ENV{'MTR_BINDIR'} || $glob_basedir;
# In the RPM case, binaries and libraries are installed in the
# default system locations, instead of having our own private base
# directory. And we install "/usr/share/mysql-test". Moving up one
@@ -793,36 +800,37 @@ sub command_line_setup () {
}
else
{
- $path_client_bindir= mtr_path_exists("$glob_basedir/client_release",
- "$glob_basedir/client_debug",
+ $path_client_bindir= mtr_path_exists("$glob_bindir/client_release",
+ "$glob_bindir/client_debug",
vs_config_dirs('client', ''),
- "$glob_basedir/client",
- "$glob_basedir/bin");
+ "$glob_bindir/client",
+ "$glob_bindir/bin");
}
# Look for language files and charsetsdir, use same share
- $path_share= mtr_path_exists("$glob_basedir/share/mysql",
- "$glob_basedir/sql/share",
- "$glob_basedir/share");
-
- $path_language= mtr_path_exists("$path_share/english");
- $path_charsetsdir= mtr_path_exists("$path_share/charsets");
+ $path_share= mtr_path_exists("$glob_bindir/share/mysql",
+ "$glob_bindir/sql/share",
+ "$glob_bindir/share");
+ $path_language= mtr_path_exists("$path_share");
+ $path_charsetsdir = mtr_path_exists("$glob_basedir/share/mysql/charsets",
+ "$glob_basedir/sql/share/charsets",
+ "$glob_basedir/share/charsets");
if (!$opt_extern)
{
$exe_mysqld= mtr_exe_exists (vs_config_dirs('sql', 'mysqld'),
vs_config_dirs('sql', 'mysqld-debug'),
- "$glob_basedir/sql/mysqld",
+ "$glob_bindir/sql/mysqld",
"$path_client_bindir/mysqld-max-nt",
"$path_client_bindir/mysqld-max",
"$path_client_bindir/mysqld-nt",
"$path_client_bindir/mysqld",
"$path_client_bindir/mysqld-debug",
"$path_client_bindir/mysqld-max",
- "$glob_basedir/libexec/mysqld",
- "$glob_basedir/bin/mysqld",
- "$glob_basedir/sbin/mysqld");
+ "$glob_bindir/libexec/mysqld",
+ "$glob_bindir/bin/mysqld",
+ "$glob_bindir/sbin/mysqld");
# Use the mysqld found above to find out what features are available
collect_mysqld_features();
@@ -905,6 +913,11 @@ sub command_line_setup () {
mtr_report("Using default engine '$used_default_engine'")
if defined $used_default_engine;
+ if ($glob_win32 and defined $opt_mem) {
+ mtr_report("--mem not supported on Windows, ignored");
+ $opt_mem= undef;
+ }
+
# --------------------------------------------------------------------------
# Check if we should speed up tests by trying to run on tmpfs
# --------------------------------------------------------------------------
@@ -1463,7 +1476,7 @@ sub collect_mysqld_features () {
#
# --datadir must exist, mysqld will chdir into it
#
- my $list= `$exe_mysqld --no-defaults --datadir=$tmpdir --language=$path_language --skip-grant-tables --verbose --help`;
+ my $list= `$exe_mysqld --no-defaults --datadir=$tmpdir --lc-messages-dir=$path_language --skip-grant-tables --verbose --help`;
foreach my $line (split('\n', $list))
{
@@ -1559,37 +1572,24 @@ sub collect_mysqld_features_from_running_server ()
}
}
-sub executable_setup_im () {
-
- # Look for instance manager binary - mysqlmanager
- $exe_im=
- mtr_exe_maybe_exists(
- "$glob_basedir/server-tools/instance-manager/mysqlmanager",
- "$glob_basedir/libexec/mysqlmanager",
- "$glob_basedir/bin/mysqlmanager",
- "$glob_basedir/sbin/mysqlmanager");
-
- return ($exe_im eq "");
-}
-
sub executable_setup_ndb () {
# Look for ndb tols and binaries
- my $ndb_path= mtr_file_exists("$glob_basedir/ndb",
- "$glob_basedir/storage/ndb",
- "$glob_basedir/bin");
+ my $ndb_path= mtr_file_exists("$glob_bindir/ndb",
+ "$glob_bindir/storage/ndb",
+ "$glob_bindir/bin");
$exe_ndbd=
mtr_exe_maybe_exists("$ndb_path/src/kernel/ndbd",
"$ndb_path/ndbd",
- "$glob_basedir/libexec/ndbd");
+ "$glob_bindir/libexec/ndbd");
$exe_ndb_mgm=
mtr_exe_maybe_exists("$ndb_path/src/mgmclient/ndb_mgm",
"$ndb_path/ndb_mgm");
$exe_ndb_mgmd=
mtr_exe_maybe_exists("$ndb_path/src/mgmsrv/ndb_mgmd",
"$ndb_path/ndb_mgmd",
- "$glob_basedir/libexec/ndb_mgmd");
+ "$glob_bindir/libexec/ndb_mgmd");
$exe_ndb_waiter=
mtr_exe_maybe_exists("$ndb_path/tools/ndb_waiter",
"$ndb_path/ndb_waiter");
@@ -1632,11 +1632,11 @@ sub executable_setup () {
$exe_my_print_defaults=
mtr_exe_exists(vs_config_dirs('extra', 'my_print_defaults'),
"$path_client_bindir/my_print_defaults",
- "$glob_basedir/extra/my_print_defaults");
+ "$glob_bindir/extra/my_print_defaults");
# Look for perror
$exe_perror= mtr_exe_exists(vs_config_dirs('extra', 'perror'),
- "$glob_basedir/extra/perror",
+ "$glob_bindir/extra/perror",
"$path_client_bindir/perror");
# Look for the client binaries
@@ -1675,14 +1675,6 @@ sub executable_setup () {
$exe_mysql_upgrade= "";
}
- if ( ! $glob_win32 )
- {
- # Look for mysql_fix_system_table script
- $exe_mysql_fix_system_tables=
- mtr_script_exists("$glob_basedir/scripts/mysql_fix_privilege_tables",
- "$path_client_bindir/mysql_fix_privilege_tables");
- }
-
# Look for mysql_fix_privilege_tables.sql script
$file_mysql_fix_privilege_tables=
mtr_file_exists("$glob_basedir/scripts/mysql_fix_privilege_tables.sql",
@@ -1701,23 +1693,15 @@ sub executable_setup () {
}
}
- if ( ! $opt_skip_im and executable_setup_im())
- {
- mtr_warning("Could not find all required instance manager binaries, " .
- "all im tests will fail, use --skip-im to " .
- "continue without instance manager");
- $instance_manager->{"executable_setup_failed"}= 1;
- }
-
# Look for the udf_example library
$lib_udf_example=
mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'),
- "$glob_basedir/sql/.libs/udf_example.so",);
+ "$glob_bindir/sql/.libs/udf_example.so",);
# Look for the ha_example library
$lib_example_plugin=
mtr_file_exists(vs_config_dirs('storage/example', 'ha_example.dll'),
- "$glob_basedir/storage/example/.libs/ha_example.so",);
+ "$glob_bindir/storage/example/.libs/ha_example.so",);
}
@@ -1726,7 +1710,7 @@ sub executable_setup () {
{
$exe_mysqltest=
mtr_exe_exists(vs_config_dirs('libmysqld/examples','mysqltest_embedded'),
- "$glob_basedir/libmysqld/examples/mysqltest_embedded",
+ "$glob_bindir/libmysqld/examples/mysqltest_embedded",
"$path_client_bindir/mysqltest_embedded");
}
else
@@ -1741,21 +1725,21 @@ sub executable_setup () {
$exe_mysql_client_test=
mtr_exe_maybe_exists(
vs_config_dirs('libmysqld/examples', 'mysql_client_test_embedded'),
- "$glob_basedir/libmysqld/examples/mysql_client_test_embedded");
+ "$glob_bindir/libmysqld/examples/mysql_client_test_embedded");
}
else
{
$exe_mysql_client_test=
mtr_exe_maybe_exists(vs_config_dirs('tests', 'mysql_client_test'),
- "$glob_basedir/tests/mysql_client_test",
- "$glob_basedir/bin/mysql_client_test");
+ "$glob_bindir/tests/mysql_client_test",
+ "$glob_bindir/bin/mysql_client_test");
}
# Look for bug25714 executable which may _not_ exist in
# some versions, test using it should be skipped
$exe_bug25714=
mtr_exe_maybe_exists(vs_config_dirs('tests', 'bug25714'),
- "$glob_basedir/tests/bug25714");
+ "$glob_bindir/tests/bug25714");
}
@@ -1807,7 +1791,7 @@ sub mysql_client_test_arguments()
if ( $glob_use_embedded_server )
{
mtr_add_arg($args,
- " -A --language=$path_language");
+ " -A --lc-messages-dir=$path_language");
mtr_add_arg($args,
" -A --datadir=$slave->[0]->{'path_myddir'}");
mtr_add_arg($args,
@@ -1864,13 +1848,13 @@ sub environment_setup () {
# are used in favor of the system installed ones
if ( $source_dist )
{
- push(@ld_library_paths, "$glob_basedir/libmysql/.libs/",
- "$glob_basedir/libmysql_r/.libs/",
- "$glob_basedir/zlib.libs/");
+ push(@ld_library_paths, "$glob_bindir/libmysql/.libs/",
+ "$glob_bindir/libmysql_r/.libs/",
+ "$glob_bindir/zlib.libs/");
}
else
{
- push(@ld_library_paths, "$glob_basedir/lib");
+ push(@ld_library_paths, "$glob_bindir/lib");
}
}
@@ -1879,7 +1863,7 @@ sub environment_setup () {
# --------------------------------------------------------------------------
if ( $glob_ndbcluster_supported )
{
- push(@ld_library_paths, "$glob_basedir/storage/ndb/src/.libs");
+ push(@ld_library_paths, "$glob_bindir/storage/ndb/src/.libs");
}
# --------------------------------------------------------------------------
@@ -1997,7 +1981,6 @@ sub environment_setup () {
# ----------------------------------------------------
if ( ! $opt_skip_im )
{
- $ENV{'IM_EXE'}= $exe_im;
$ENV{'IM_PATH_PID'}= $instance_manager->{path_pid};
$ENV{'IM_PATH_ANGEL_PID'}= $instance_manager->{path_angel_pid};
$ENV{'IM_PORT'}= $instance_manager->{port};
@@ -2154,20 +2137,6 @@ sub environment_setup () {
$ENV{'MYSQL_UPGRADE'}= mysql_upgrade_arguments();
}
- # ----------------------------------------------------
- # Setup env so childs can execute mysql_fix_system_tables
- # ----------------------------------------------------
- if ( !$opt_extern && ! $glob_win32 )
- {
- my $cmdline_mysql_fix_system_tables=
- "$exe_mysql_fix_system_tables --no-defaults --host=localhost " .
- "--user=root --password= " .
- "--basedir=$glob_basedir --bindir=$path_client_bindir --verbose " .
- "--port=$master->[0]->{'port'} " .
- "--socket=$master->[0]->{'path_sock'}";
- $ENV{'MYSQL_FIX_SYSTEM_TABLES'}= $cmdline_mysql_fix_system_tables;
-
- }
$ENV{'MYSQL_FIX_PRIVILEGE_TABLES'}= $file_mysql_fix_privilege_tables;
# ----------------------------------------------------
@@ -2208,14 +2177,14 @@ sub environment_setup () {
vs_config_dirs('storage/myisam', 'myisamchk'),
vs_config_dirs('myisam', 'myisamchk'),
"$path_client_bindir/myisamchk",
- "$glob_basedir/storage/myisam/myisamchk",
- "$glob_basedir/myisam/myisamchk"));
+ "$glob_bindir/storage/myisam/myisamchk",
+ "$glob_bindir/myisam/myisamchk"));
$ENV{'MYISAMPACK'}= mtr_native_path(mtr_exe_exists(
vs_config_dirs('storage/myisam', 'myisampack'),
vs_config_dirs('myisam', 'myisampack'),
"$path_client_bindir/myisampack",
- "$glob_basedir/storage/myisam/myisampack",
- "$glob_basedir/myisam/myisampack"));
+ "$glob_bindir/storage/myisam/myisampack",
+ "$glob_bindir/myisam/myisampack"));
# ----------------------------------------------------
# We are nice and report a bit about our settings
@@ -2566,12 +2535,12 @@ sub vs_config_dirs ($$) {
if ($opt_vs_config)
{
- return ("$glob_basedir/$path_part/$opt_vs_config/$exe");
+ return ("$glob_bindir/$path_part/$opt_vs_config/$exe");
}
- return ("$glob_basedir/$path_part/release/$exe",
- "$glob_basedir/$path_part/relwithdebinfo/$exe",
- "$glob_basedir/$path_part/debug/$exe");
+ return ("$glob_bindir/$path_part/release/$exe",
+ "$glob_bindir/$path_part/relwithdebinfo/$exe",
+ "$glob_bindir/$path_part/debug/$exe");
}
##############################################################################
@@ -3158,7 +3127,7 @@ sub install_db ($$) {
if ( ! $glob_netware )
{
- mtr_add_arg($args, "--language=%s", $path_language);
+ mtr_add_arg($args, "--lc-messages-dir=%s", $path_language);
mtr_add_arg($args, "--character-sets-dir=%s", $path_charsetsdir);
}
@@ -3283,10 +3252,10 @@ socket = $instance->{path_sock}
pid-file = $instance->{path_pid}
port = $instance->{port}
datadir = $instance->{path_datadir}
+lc-messages-dir = $path_language
log = $instance->{path_datadir}/mysqld$server_id.log
log-error = $instance->{path_datadir}/mysqld$server_id.err.log
log-slow-queries = $instance->{path_datadir}/mysqld$server_id.slow.log
-language = $path_language
character-sets-dir = $path_charsetsdir
basedir = $path_my_basedir
server_id = $server_id
@@ -3603,7 +3572,7 @@ sub run_testcase ($) {
{
mtr_timer_stop_all($glob_timers);
mtr_report("\nServers started, exiting");
- if ($glob_win32_perl)
+ if ($glob_win32_perl)
{
#ActiveState perl hangs when using normal exit, use POSIX::_exit instead
use POSIX qw[ _exit ];
@@ -3893,8 +3862,8 @@ sub mysqld_arguments ($$$$) {
mtr_add_arg($args, "%s--log-bin-trust-function-creators", $prefix);
}
- mtr_add_arg($args, "%s--default-character-set=latin1", $prefix);
- mtr_add_arg($args, "%s--language=%s", $prefix, $path_language);
+ mtr_add_arg($args, "%s--character-set-server=latin1", $prefix);
+ mtr_add_arg($args, "%s--lc-messages-dir=%s", $prefix, $path_language);
mtr_add_arg($args, "%s--tmpdir=$opt_tmpdir", $prefix);
# Increase default connect_timeout to avoid intermittent
@@ -4015,7 +3984,7 @@ sub mysqld_arguments ($$$$) {
my $slave_load_path= "../tmp";
mtr_add_arg($args, "%s--slave-load-tmpdir=%s", $prefix,
$slave_load_path);
- mtr_add_arg($args, "%s--set-variable=slave_net_timeout=120", $prefix);
+ mtr_add_arg($args, "%s--slave_net_timeout=120", $prefix);
if ( @$slave_master_info )
{
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl
index 09703086e66..2fbbdf0b819 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -102,6 +102,7 @@ use IO::Select;
require "lib/mtr_process.pl";
require "lib/mtr_io.pl";
require "lib/mtr_gcov.pl";
+require "lib/mtr_gprof.pl";
require "lib/mtr_misc.pl";
$SIG{INT}= sub { mtr_error("Got ^C signal"); };
@@ -187,6 +188,9 @@ our $opt_gcov_exe= "gcov";
our $opt_gcov_err= "mysql-test-gcov.msg";
our $opt_gcov_msg= "mysql-test-gcov.err";
+our $opt_gprof;
+our %gprof_dirs;
+
our $glob_debugger= 0;
our $opt_gdb;
our $opt_client_gdb;
@@ -205,7 +209,9 @@ our $opt_experimental;
our $experimental_test_cases;
my $baseport;
+# $opt_build_thread may later be set from $opt_port_base
my $opt_build_thread= $ENV{'MTR_BUILD_THREAD'} || "auto";
+my $opt_port_base= $ENV{'MTR_PORT_BASE'} || "auto";
my $build_thread= 0;
my $opt_record;
@@ -215,6 +221,7 @@ my $opt_skip_core;
our $opt_check_testcases= 1;
my $opt_mark_progress;
+my $opt_max_connections;
my $opt_sleep;
@@ -234,6 +241,7 @@ my $opt_wait_all;
my $opt_repeat= 1;
my $opt_retry= 3;
my $opt_retry_failure= env_or_val(MTR_RETRY_FAILURE => 2);
+my $opt_reorder= 1;
my $opt_strace_client;
@@ -246,6 +254,7 @@ my @default_valgrind_args= ("--show-reachable=yes");
my @valgrind_args;
my $opt_valgrind_path;
my $opt_callgrind;
+my %mysqld_logs;
my $opt_debug_sync_timeout= 300; # Default timeout for WAIT_FOR actions.
our $opt_warnings= 1;
@@ -285,6 +294,9 @@ sub main {
command_line_setup();
+ # --help will not reach here, so now it's safe to assume we have binaries
+ My::SafeProcess::find_bin();
+
if ( $opt_gcov ) {
gcov_prepare($basedir);
}
@@ -314,7 +326,7 @@ sub main {
}
mtr_report("Collecting tests...");
- my $tests= collect_test_cases($opt_suites, \@opt_cases);
+ my $tests= collect_test_cases($opt_reorder, $opt_suites, \@opt_cases);
if ( $opt_report_features ) {
# Put "report features" as the first test to run
@@ -431,7 +443,7 @@ sub main {
$opt_gcov_msg, $opt_gcov_err);
}
- mtr_report_stats($completed);
+ mtr_report_stats("Completed", $completed);
exit(0);
}
@@ -455,7 +467,7 @@ sub run_test_server ($$$) {
my $result;
my $exe_mysqld= find_mysqld($basedir) || ""; # Used as hint to CoreDump
- my $suite_timeout_proc= My::SafeProcess->timer(suite_timeout());
+ my $suite_timeout= start_timer(suite_timeout());
my $s= IO::Select->new();
$s->add($server);
@@ -476,7 +488,6 @@ sub run_test_server ($$$) {
mtr_verbose("Child closed socket");
$s->remove($sock);
if (--$childs == 0){
- $suite_timeout_proc->kill();
return $completed;
}
next;
@@ -545,15 +556,13 @@ sub run_test_server ($$$) {
if ( !$opt_force ) {
# Test has failed, force is off
- $suite_timeout_proc->kill();
push(@$completed, $result);
return $completed;
}
elsif ($opt_max_test_fail > 0 and
$num_failed_test >= $opt_max_test_fail) {
- $suite_timeout_proc->kill();
push(@$completed, $result);
- mtr_report_stats($completed, 1);
+ mtr_report_stats("Too many failed", $completed, 1);
mtr_report("Too many tests($num_failed_test) failed!",
"Terminating...");
return undef;
@@ -640,9 +649,9 @@ sub run_test_server ($$$) {
next;
}
- # Prefer same configuration
- if (defined $result and
- $result->{template_path} eq $t->{template_path})
+ # Prefer same configuration, or just use next if --noreorder
+ if (!$opt_reorder or (defined $result and
+ $result->{template_path} eq $t->{template_path}))
{
#mtr_report("Test uses same config => good match");
# Test uses same config => good match
@@ -683,9 +692,9 @@ sub run_test_server ($$$) {
# ----------------------------------------------------
# Check if test suite timer expired
# ----------------------------------------------------
- if ( ! $suite_timeout_proc->wait_one(0) )
+ if ( has_expired($suite_timeout) )
{
- mtr_report_stats($completed, 1);
+ mtr_report_stats("Timeout", $completed, 1);
mtr_report("Test suite timeout! Terminating...");
return undef;
}
@@ -761,6 +770,12 @@ sub run_worker ($) {
elsif ($line eq 'BYE'){
mtr_report("Server said BYE");
stop_all_servers($opt_shutdown_timeout);
+ if ($opt_valgrind_mysqld) {
+ valgrind_exit_reports();
+ }
+ if ( $opt_gprof ) {
+ gprof_collect (find_mysqld($basedir), keys %gprof_dirs);
+ }
exit(0);
}
else {
@@ -841,9 +856,11 @@ sub command_line_setup {
'combination=s' => \@opt_combinations,
'skip-combinations' => \&collect_option,
'experimental=s' => \$opt_experimental,
+ 'skip-im' => \&ignore_option,
# Specify ports
'build-thread|mtr-build-thread=i' => \$opt_build_thread,
+ 'port-base|mtr-port-base=i' => \$opt_port_base,
# Test case authoring
'record' => \$opt_record,
@@ -874,6 +891,7 @@ sub command_line_setup {
# Coverage, profiling etc
'gcov' => \$opt_gcov,
+ 'gprof' => \$opt_gprof,
'valgrind|valgrind-all' => \$opt_valgrind,
'valgrind-mysqltest' => \$opt_valgrind_mysqltest,
'valgrind-mysqld' => \$opt_valgrind_mysqld,
@@ -904,7 +922,7 @@ sub command_line_setup {
'report-features' => \$opt_report_features,
'comment=s' => \$opt_comment,
'fast' => \$opt_fast,
- 'reorder!' => \&collect_option,
+ 'reorder!' => \$opt_reorder,
'enable-disabled' => \&collect_option,
'verbose+' => \$opt_verbose,
'verbose-restart' => \&report_option,
@@ -924,6 +942,7 @@ sub command_line_setup {
'warnings!' => \$opt_warnings,
'timestamp' => \&report_option,
'timediff' => \&report_option,
+ 'max-connections=i' => \$opt_max_connections,
'help|h' => \$opt_usage,
'list-options' => \$opt_list_options,
@@ -948,6 +967,11 @@ sub command_line_setup {
# Find the absolute path to the test directory
$glob_mysql_test_dir= cwd();
+ if ($glob_mysql_test_dir =~ / /)
+ {
+ die("Working directory \"$glob_mysql_test_dir\" contains space\n".
+ "Bailing out, cannot function properly with space in path");
+ }
if (IS_CYGWIN)
{
# Use mixed path format i.e c:/path/to/
@@ -1104,6 +1128,21 @@ sub command_line_setup {
}
}
+ if (IS_WINDOWS and defined $opt_mem) {
+ mtr_report("--mem not supported on Windows, ignored");
+ $opt_mem= undef;
+ }
+
+ if ($opt_port_base ne "auto")
+ {
+ if (my $rem= $opt_port_base % 10)
+ {
+ mtr_warning ("Port base $opt_port_base rounded down to multiple of 10");
+ $opt_port_base-= $rem;
+ }
+ $opt_build_thread= $opt_port_base / 10 - 1000;
+ }
+
# --------------------------------------------------------------------------
# Check if we should speed up tests by trying to run on tmpfs
# --------------------------------------------------------------------------
@@ -1276,7 +1315,7 @@ sub command_line_setup {
# --------------------------------------------------------------------------
# Gcov flag
# --------------------------------------------------------------------------
- if ( $opt_gcov and ! $source_dist )
+ if ( ($opt_gcov or $opt_gprof) and ! $source_dist )
{
mtr_error("Coverage test needs the source - please use source dist");
}
@@ -1375,8 +1414,7 @@ sub command_line_setup {
push(@valgrind_args, @default_valgrind_args)
unless @valgrind_args;
- # Make valgrind run in quiet mode so it only print errors
- push(@valgrind_args, "--quiet" );
+ # Don't add --quiet; you will loose the summary reports.
mtr_report("Running valgrind with options \"",
join(" ", @valgrind_args), "\"");
@@ -1481,6 +1519,12 @@ sub collect_mysqld_features {
mtr_add_arg($args, "--verbose");
mtr_add_arg($args, "--help");
+ # Need --user=root if running as *nix root user
+ if (!IS_WINDOWS and $> == 0)
+ {
+ mtr_add_arg($args, "--user=root");
+ }
+
my $exe_mysqld= find_mysqld($basedir);
my $cmd= join(" ", $exe_mysqld, @$args);
my $list= `$cmd`;
@@ -1824,11 +1868,11 @@ sub environment_setup {
{
push(@ld_library_paths, "$basedir/libmysql/.libs/",
"$basedir/libmysql_r/.libs/",
- "$basedir/zlib.libs/");
+ "$basedir/zlib/.libs/");
}
else
{
- push(@ld_library_paths, "$basedir/lib");
+ push(@ld_library_paths, "$basedir/lib", "$basedir/lib/mysql");
}
}
@@ -2601,6 +2645,7 @@ sub create_config_file_for_extern {
# binlog reads from [client] and [mysqlbinlog]
[mysqlbinlog]
character-sets-dir= $path_charsetsdir
+local-load= $opt_tmpdir
# mysql_fix_privilege_tables.sh don't read from [client]
[mysql_fix_privilege_tables]
@@ -3030,11 +3075,11 @@ sub check_testcase($$)
# Return immediately if no check proceess was started
return 0 unless ( keys %started );
- my $timeout_proc= My::SafeProcess->timer(check_timeout());
+ my $timeout= start_timer(check_timeout());
while (1){
my $result;
- my $proc= My::SafeProcess->wait_any();
+ my $proc= My::SafeProcess->wait_any_timeout($timeout);
mtr_report("Got $proc");
if ( delete $started{$proc->pid()} ) {
@@ -3058,9 +3103,6 @@ sub check_testcase($$)
if ( keys(%started) == 0){
# All checks completed
-
- $timeout_proc->kill();
-
return 0;
}
# Wait for next process to exit
@@ -3101,10 +3143,9 @@ test case was executed:\n";
}
}
- elsif ( $proc eq $timeout_proc ) {
- $tinfo->{comment}.= "Timeout $timeout_proc for ".
- "'check-testcase' expired after ".check_timeout().
- " seconds";
+ elsif ( $proc->{timeout} ) {
+ $tinfo->{comment}.= "Timeout for 'check-testcase' expired after "
+ .check_timeout()." seconds";
$result= 4;
}
else {
@@ -3119,8 +3160,6 @@ test case was executed:\n";
# Kill any check processes still running
map($_->kill(), values(%started));
- $timeout_proc->kill();
-
return $result;
}
@@ -3192,11 +3231,11 @@ sub run_on_all($$)
# Return immediately if no check proceess was started
return 0 unless ( keys %started );
- my $timeout_proc= My::SafeProcess->timer(check_timeout());
+ my $timeout= start_timer(check_timeout());
while (1){
my $result;
- my $proc= My::SafeProcess->wait_any();
+ my $proc= My::SafeProcess->wait_any_timeout($timeout);
mtr_report("Got $proc");
if ( delete $started{$proc->pid()} ) {
@@ -3215,17 +3254,15 @@ sub run_on_all($$)
if ( keys(%started) == 0){
# All completed
- $timeout_proc->kill();
return 0;
}
# Wait for next process to exit
next;
}
- elsif ( $proc eq $timeout_proc ) {
- $tinfo->{comment}.= "Timeout $timeout_proc for '$run' ".
- "expired after ". check_timeout().
- " seconds";
+ elsif ($proc->{timeout}) {
+ $tinfo->{comment}.= "Timeout for '$run' expired after "
+ .check_timeout()." seconds";
}
else {
# Unknown process returned, most likley a crash, abort everything
@@ -3237,8 +3274,6 @@ sub run_on_all($$)
# Kill any check processes still running
map($_->kill(), values(%started));
- $timeout_proc->kill();
-
return 1;
}
mtr_error("INTERNAL_ERROR: run_on_all");
@@ -3345,9 +3380,11 @@ sub run_testcase ($) {
mtr_verbose("Running test:", $tinfo->{name});
- # Allow only alpanumerics pluss _ - + . in combination names
+ # Allow only alpanumerics pluss _ - + . in combination names,
+ # or anything beginning with -- (the latter comes from --combination)
my $combination= $tinfo->{combination};
- if ($combination && $combination !~ /^\w[-\w\.\+]+$/)
+ if ($combination && $combination !~ /^\w[-\w\.\+]+$/
+ && $combination !~ /^--/)
{
mtr_error("Combination '$combination' contains illegal characters");
}
@@ -3468,7 +3505,7 @@ sub run_testcase ($) {
}
}
- my $test_timeout_proc= My::SafeProcess->timer(testcase_timeout());
+ my $test_timeout= start_timer(testcase_timeout());
do_before_run_mysqltest($tinfo);
@@ -3476,9 +3513,6 @@ sub run_testcase ($) {
# Failed to record state of server or server crashed
report_failure_and_restart($tinfo);
- # Stop the test case timer
- $test_timeout_proc->kill();
-
return 1;
}
@@ -3496,20 +3530,20 @@ sub run_testcase ($) {
if ($proc)
{
mtr_verbose ("Found exited process $proc");
- # If that was the timeout, cancel waiting
- if ( $proc eq $test_timeout_proc )
- {
- $keep_waiting_proc = 0;
- }
}
else
{
$proc = $keep_waiting_proc;
+ # Also check if timer has expired, if so cancel waiting
+ if ( has_expired($test_timeout) )
+ {
+ $keep_waiting_proc = 0;
+ }
}
}
- else
+ if (! $keep_waiting_proc)
{
- $proc= My::SafeProcess->wait_any();
+ $proc= My::SafeProcess->wait_any_timeout($test_timeout);
}
# Will be restored if we need to keep waiting
@@ -3526,9 +3560,6 @@ sub run_testcase ($) {
# ----------------------------------------------------
if ($proc eq $test)
{
- # Stop the test case timer
- $test_timeout_proc->kill();
-
my $res= $test->exit_status();
if ($res == 0 and $opt_warnings and check_warnings($tinfo) )
@@ -3585,6 +3616,14 @@ sub run_testcase ($) {
run_on_all($tinfo, "analyze-$analyze");
}
+ # Wait a bit and see if a server died, if so report that instead
+ mtr_milli_sleep(100);
+ my $srvproc= My::SafeProcess::check_any();
+ if ($srvproc && grep($srvproc eq $_, started(all_servers()))) {
+ $proc= $srvproc;
+ goto SRVDIED;
+ }
+
# Test case failure reported by mysqltest
report_failure_and_restart($tinfo);
}
@@ -3592,7 +3631,7 @@ sub run_testcase ($) {
{
# mysqltest failed, probably crashed
$tinfo->{comment}=
- "mysqltest failed with unexpected return code $res";
+ "mysqltest failed with unexpected return code $res\n";
report_failure_and_restart($tinfo);
}
@@ -3610,6 +3649,7 @@ sub run_testcase ($) {
# ----------------------------------------------------
# Check if it was an expected crash
# ----------------------------------------------------
+ SRVDIED:
my $check_crash = check_expected_crash_and_restart($proc);
if ($check_crash)
{
@@ -3622,7 +3662,7 @@ sub run_testcase ($) {
# ----------------------------------------------------
# Stop the test case timer
# ----------------------------------------------------
- $test_timeout_proc->kill();
+ $test_timeout= 0;
# ----------------------------------------------------
# Check if it was a server that died
@@ -3661,7 +3701,7 @@ sub run_testcase ($) {
# ----------------------------------------------------
# Check if testcase timer expired
# ----------------------------------------------------
- if ( $proc eq $test_timeout_proc )
+ if ( $proc->{timeout} )
{
my $log_file_name= $opt_vardir."/log/".$tinfo->{shortname}.".log";
$tinfo->{comment}=
@@ -3783,16 +3823,24 @@ sub extract_warning_lines ($$) {
(
qr/^Warning:|mysqld: Warning|\[Warning\]/,
qr/^Error:|\[ERROR\]/,
- qr/^==\d*==/, # valgrind errors
+ qr/^==\d+==\s+\S/, # valgrind errors
qr/InnoDB: Warning|InnoDB: Error/,
qr/^safe_mutex:|allocated at line/,
qr/missing DBUG_RETURN/,
qr/Attempting backtrace/,
qr/Assertion .* failed/,
);
+ my $skip_valgrind= 0;
foreach my $line ( @lines )
{
+ if ($opt_valgrind_mysqld) {
+ # Skip valgrind summary from tests where server has been restarted
+ # Should this contain memory leaks, the final report will find it
+ $skip_valgrind= 1 if $line =~ /^==\d+== ERROR SUMMARY:/;
+ $skip_valgrind= 0 unless $line =~ /^==\d+==/;
+ next if $skip_valgrind;
+ }
foreach my $pat ( @patterns )
{
if ( $line =~ /$pat/ )
@@ -3832,7 +3880,6 @@ sub start_check_warnings ($$) {
mtr_add_arg($args, "--loose-skip-safemalloc");
mtr_add_arg($args, "--test-file=%s", "include/check-warnings.test");
- mtr_add_arg($args, "--verbose");
if ( $opt_embedded_server )
{
@@ -3895,11 +3942,11 @@ sub check_warnings ($) {
# Return immediately if no check proceess was started
return 0 unless ( keys %started );
- my $timeout_proc= My::SafeProcess->timer(check_timeout());
+ my $timeout= start_timer(check_timeout());
while (1){
my $result= 0;
- my $proc= My::SafeProcess->wait_any();
+ my $proc= My::SafeProcess->wait_any_timeout($timeout);
mtr_report("Got $proc");
if ( delete $started{$proc->pid()} ) {
@@ -3928,9 +3975,6 @@ sub check_warnings ($) {
if ( keys(%started) == 0){
# All checks completed
-
- $timeout_proc->kill();
-
return $result;
}
# Wait for next process to exit
@@ -3947,10 +3991,9 @@ sub check_warnings ($) {
$result= 2;
}
}
- elsif ( $proc eq $timeout_proc ) {
- $tinfo->{comment}.= "Timeout $timeout_proc for ".
- "'check warnings' expired after ".check_timeout().
- " seconds";
+ elsif ( $proc->{timeout} ) {
+ $tinfo->{comment}.= "Timeout for 'check warnings' expired after "
+ .check_timeout()." seconds";
$result= 4;
}
else {
@@ -3964,8 +4007,6 @@ sub check_warnings ($) {
# Kill any check processes still running
map($_->kill(), values(%started));
- $timeout_proc->kill();
-
return $result;
}
@@ -3983,7 +4024,7 @@ sub check_expected_crash_and_restart {
foreach my $mysqld ( mysqlds() )
{
- next unless ( $mysqld->{proc} eq $proc );
+ next unless ( $mysqld->{proc} and $mysqld->{proc} eq $proc );
# Check if crash expected by looking at the .expect file
# in var/tmp
@@ -4181,6 +4222,20 @@ sub report_failure_and_restart ($) {
# about what failed has been saved to file. Save the report
# in tinfo
$tinfo->{logfile}= mtr_fromfile($logfile);
+ # If no newlines in the test log:
+ # (it will contain the CURRENT_TEST written by mtr, so is not empty)
+ if ($tinfo->{logfile} !~ /\n/)
+ {
+ # Show how far it got before suddenly failing
+ $tinfo->{comment}.= "mysqltest failed but provided no output\n";
+ my $log_file_name= $opt_vardir."/log/".$tinfo->{shortname}.".log";
+ if (-e $log_file_name) {
+ $tinfo->{comment}.=
+ "The result from queries just before the failure was:".
+ "\n< snip >\n".
+ mtr_lastlinesfromfile($log_file_name, 20)."\n";
+ }
+ }
}
else
{
@@ -4395,6 +4450,10 @@ sub mysqld_start ($$) {
# see the exact location where valgrind complains
$output= "$opt_vardir/log/".$mysqld->name().".trace";
}
+ # Remember this log file for valgrind error report search
+ $mysqld_logs{$output}= 1 if $opt_valgrind;
+ # Remember data dir for gmon.out files if using gprof
+ $gprof_dirs{$mysqld->value('datadir')}= 1 if $opt_gprof;
if ( defined $exe )
{
@@ -4944,6 +5003,10 @@ sub start_mysqltest ($) {
mtr_add_arg($args, "--ssl");
}
+ if ( $opt_max_connections ) {
+ mtr_add_arg($args, "--max-connections=%d", $opt_max_connections);
+ }
+
if ( $opt_embedded_server )
{
@@ -5172,7 +5235,7 @@ sub debugger_arguments {
{
# vc[express] /debugexe exe arg1 .. argn
- # Add /debugexe and name of the exe before args
+ # Add name of the exe and /debugexe before args
unshift(@$$args, "$$exe");
unshift(@$$args, "/debugexe");
@@ -5247,6 +5310,66 @@ sub valgrind_arguments {
}
}
+#
+# Search server logs for valgrind reports printed at mysqld termination
+#
+
+sub valgrind_exit_reports() {
+ foreach my $log_file (keys %mysqld_logs)
+ {
+ my @culprits= ();
+ my $valgrind_rep= "";
+ my $found_report= 0;
+ my $err_in_report= 0;
+
+ my $LOGF = IO::File->new($log_file)
+ or mtr_error("Could not open file '$log_file' for reading: $!");
+
+ while ( my $line = <$LOGF> )
+ {
+ if ($line =~ /^CURRENT_TEST: (.+)$/)
+ {
+ my $testname= $1;
+ # If we have a report, report it if needed and start new list of tests
+ if ($found_report)
+ {
+ if ($err_in_report)
+ {
+ mtr_print ("Valgrind report from $log_file after tests:\n",
+ @culprits);
+ mtr_print_line();
+ print ("$valgrind_rep\n");
+ $err_in_report= 0;
+ }
+ # Make ready to collect new report
+ @culprits= ();
+ $found_report= 0;
+ $valgrind_rep= "";
+ }
+ push (@culprits, $testname);
+ next;
+ }
+ # This line marks the start of a valgrind report
+ $found_report= 1 if $line =~ /ERROR SUMMARY:/;
+
+ if ($found_report) {
+ $line=~ s/^==\d+== //;
+ $valgrind_rep .= $line;
+ $err_in_report= 1 if $line =~ /ERROR SUMMARY: [1-9]/;
+ $err_in_report= 1 if $line =~ /definitely lost: [1-9]/;
+ $err_in_report= 1 if $line =~ /possibly lost: [1-9]/;
+ }
+ }
+
+ $LOGF= undef;
+
+ if ($err_in_report) {
+ mtr_print ("Valgrind report from $log_file after tests:\n", @culprits);
+ mtr_print_line();
+ print ("$valgrind_rep\n");
+ }
+ }
+}
#
# Usage
@@ -5326,6 +5449,11 @@ Options to control what test suites or cases to run
Options that specify ports
+ mtr-port-base=# Base for port numbers, ports from this number to
+ port-base=# number+9 are reserved. Should be divisible by 10;
+ if not it will be rounded down. May be set with
+ environment variable MTR_PORT_BASE. If this value is
+ set and is not "auto", it overrides build-thread.
mtr-build-thread=# Specify unique number to calculate port number(s) from.
build-thread=# Can be set in environment variable MTR_BUILD_THREAD.
Set MTR_BUILD_THREAD="auto" to automatically aquire
@@ -5437,6 +5565,7 @@ Misc options
timestamp Print timestamp before each test report line
timediff With --timestamp, also print time passed since
*previous* test started
+ max-connections=N Max number of open connection to server in mysqltest
HERE
exit(1);
diff --git a/mysql-test/r/alter_table.result b/mysql-test/r/alter_table.result
index db80e9d2eea..581ce66a3d4 100644
--- a/mysql-test/r/alter_table.result
+++ b/mysql-test/r/alter_table.result
@@ -125,24 +125,24 @@ key (n3, n4, n1, n2),
key (n4, n1, n2, n3) );
alter table t1 disable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 n1 1 n1 A 0 NULL NULL BTREE
-t1 1 n1_2 1 n1 A NULL NULL NULL BTREE disabled
-t1 1 n1_2 2 n2 A NULL NULL NULL YES BTREE disabled
-t1 1 n1_2 3 n3 A NULL NULL NULL YES BTREE disabled
-t1 1 n1_2 4 n4 A NULL NULL NULL YES BTREE disabled
-t1 1 n2 1 n2 A NULL NULL NULL YES BTREE disabled
-t1 1 n2 2 n3 A NULL NULL NULL YES BTREE disabled
-t1 1 n2 3 n4 A NULL NULL NULL YES BTREE disabled
-t1 1 n2 4 n1 A NULL NULL NULL BTREE disabled
-t1 1 n3 1 n3 A NULL NULL NULL YES BTREE disabled
-t1 1 n3 2 n4 A NULL NULL NULL YES BTREE disabled
-t1 1 n3 3 n1 A NULL NULL NULL BTREE disabled
-t1 1 n3 4 n2 A NULL NULL NULL YES BTREE disabled
-t1 1 n4 1 n4 A NULL NULL NULL YES BTREE disabled
-t1 1 n4 2 n1 A NULL NULL NULL BTREE disabled
-t1 1 n4 3 n2 A NULL NULL NULL YES BTREE disabled
-t1 1 n4 4 n3 A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 n1 1 n1 A 0 NULL NULL BTREE
+t1 1 n1_2 1 n1 A NULL NULL NULL BTREE disabled
+t1 1 n1_2 2 n2 A NULL NULL NULL YES BTREE disabled
+t1 1 n1_2 3 n3 A NULL NULL NULL YES BTREE disabled
+t1 1 n1_2 4 n4 A NULL NULL NULL YES BTREE disabled
+t1 1 n2 1 n2 A NULL NULL NULL YES BTREE disabled
+t1 1 n2 2 n3 A NULL NULL NULL YES BTREE disabled
+t1 1 n2 3 n4 A NULL NULL NULL YES BTREE disabled
+t1 1 n2 4 n1 A NULL NULL NULL BTREE disabled
+t1 1 n3 1 n3 A NULL NULL NULL YES BTREE disabled
+t1 1 n3 2 n4 A NULL NULL NULL YES BTREE disabled
+t1 1 n3 3 n1 A NULL NULL NULL BTREE disabled
+t1 1 n3 4 n2 A NULL NULL NULL YES BTREE disabled
+t1 1 n4 1 n4 A NULL NULL NULL YES BTREE disabled
+t1 1 n4 2 n1 A NULL NULL NULL BTREE disabled
+t1 1 n4 3 n2 A NULL NULL NULL YES BTREE disabled
+t1 1 n4 4 n3 A NULL NULL NULL YES BTREE disabled
insert into t1 values(10,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(9,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(8,RAND()*1000,RAND()*1000,RAND());
@@ -155,24 +155,24 @@ insert into t1 values(2,RAND()*1000,RAND()*1000,RAND());
insert into t1 values(1,RAND()*1000,RAND()*1000,RAND());
alter table t1 enable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 n1 1 n1 A 10 NULL NULL BTREE
-t1 1 n1_2 1 n1 A 10 NULL NULL BTREE
-t1 1 n1_2 2 n2 A 10 NULL NULL YES BTREE
-t1 1 n1_2 3 n3 A 10 NULL NULL YES BTREE
-t1 1 n1_2 4 n4 A 10 NULL NULL YES BTREE
-t1 1 n2 1 n2 A 10 NULL NULL YES BTREE
-t1 1 n2 2 n3 A 10 NULL NULL YES BTREE
-t1 1 n2 3 n4 A 10 NULL NULL YES BTREE
-t1 1 n2 4 n1 A 10 NULL NULL BTREE
-t1 1 n3 1 n3 A 10 NULL NULL YES BTREE
-t1 1 n3 2 n4 A 10 NULL NULL YES BTREE
-t1 1 n3 3 n1 A 10 NULL NULL BTREE
-t1 1 n3 4 n2 A 10 NULL NULL YES BTREE
-t1 1 n4 1 n4 A 10 NULL NULL YES BTREE
-t1 1 n4 2 n1 A 10 NULL NULL BTREE
-t1 1 n4 3 n2 A 10 NULL NULL YES BTREE
-t1 1 n4 4 n3 A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 n1 1 n1 A 10 NULL NULL BTREE
+t1 1 n1_2 1 n1 A 10 NULL NULL BTREE
+t1 1 n1_2 2 n2 A 10 NULL NULL YES BTREE
+t1 1 n1_2 3 n3 A 10 NULL NULL YES BTREE
+t1 1 n1_2 4 n4 A 10 NULL NULL YES BTREE
+t1 1 n2 1 n2 A 10 NULL NULL YES BTREE
+t1 1 n2 2 n3 A 10 NULL NULL YES BTREE
+t1 1 n2 3 n4 A 10 NULL NULL YES BTREE
+t1 1 n2 4 n1 A 10 NULL NULL BTREE
+t1 1 n3 1 n3 A 10 NULL NULL YES BTREE
+t1 1 n3 2 n4 A 10 NULL NULL YES BTREE
+t1 1 n3 3 n1 A 10 NULL NULL BTREE
+t1 1 n3 4 n2 A 10 NULL NULL YES BTREE
+t1 1 n4 1 n4 A 10 NULL NULL YES BTREE
+t1 1 n4 2 n1 A 10 NULL NULL BTREE
+t1 1 n4 3 n2 A 10 NULL NULL YES BTREE
+t1 1 n4 4 n3 A 10 NULL NULL YES BTREE
drop table t1;
create table t1 (i int unsigned not null auto_increment primary key);
alter table t1 rename t2;
@@ -285,18 +285,18 @@ insert into t1 values(1,2), (2,2), (3, 2);
insert into t1 values(1,1), (2,1), (3, 1);
alter table t1 add unique (a,b), add key (b);
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 0 a 2 b A NULL NULL NULL YES BTREE
-t1 1 b 1 b A 100 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 0 a 2 b A NULL NULL NULL YES BTREE
+t1 1 b 1 b A 100 NULL NULL YES BTREE
analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A 3 NULL NULL YES BTREE
-t1 0 a 2 b A 300 NULL NULL YES BTREE
-t1 1 b 1 b A 100 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A 3 NULL NULL YES BTREE
+t1 0 a 2 b A 300 NULL NULL YES BTREE
+t1 1 b 1 b A 100 NULL NULL YES BTREE
drop table t1;
CREATE TABLE t1 (i int(10), index(i) );
ALTER TABLE t1 DISABLE KEYS;
@@ -312,9 +312,9 @@ ALTER TABLE t1 DISABLE KEYS;
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost',''),('games','monty');
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
+t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
ALTER TABLE t1 ENABLE KEYS;
UNLOCK TABLES;
CHECK TABLES t1;
@@ -329,23 +329,23 @@ KEY (Host)
) ENGINE=MyISAM;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
-t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
+t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
+t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
LOCK TABLES t1 WRITE;
INSERT INTO t1 VALUES ('localhost','root'),('localhost','');
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
-t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
+t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
+t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
ALTER TABLE t1 ENABLE KEYS;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 User A 2 NULL NULL BTREE
-t1 1 Host 1 Host A 1 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
+t1 0 PRIMARY 2 User A 2 NULL NULL BTREE
+t1 1 Host 1 Host A 1 NULL NULL BTREE
UNLOCK TABLES;
CHECK TABLES t1;
Table Op Msg_type Msg_text
@@ -367,10 +367,10 @@ KEY (Host)
LOCK TABLES t1 WRITE;
ALTER TABLE t1 DISABLE KEYS;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
-t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
-t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 Host A NULL NULL NULL BTREE
+t1 0 PRIMARY 2 User A 0 NULL NULL BTREE
+t1 1 Host 1 Host A NULL NULL NULL BTREE disabled
DROP TABLE t1;
create table t1 (a int);
alter table t1 rename to ``;
@@ -544,38 +544,38 @@ drop table t1;
drop table if exists t1;
create table t1 (a int, key(a));
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
"this used not to disable the index"
alter table t1 modify a int, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
alter table t1 enable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
alter table t1 modify a bigint, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
alter table t1 enable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
alter table t1 add b char(10), disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
alter table t1 add c decimal(10,2), enable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
"this however did"
alter table t1 disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
desc t1;
Field Type Null Key Default Extra
a bigint(20) YES MUL NULL
@@ -584,83 +584,83 @@ c decimal(10,2) YES NULL
alter table t1 add d decimal(15,5);
"The key should still be disabled"
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
drop table t1;
"Now will test with one unique index"
create table t1(a int, b char(10), unique(a));
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
alter table t1 disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
alter table t1 enable keys;
"If no copy on noop change, this won't touch the data file"
"Unique index, no change"
alter table t1 modify a int, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
"Change the type implying data copy"
"Unique index, no change"
alter table t1 modify a bigint, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
alter table t1 modify a bigint;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
alter table t1 modify a int;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
drop table t1;
"Now will test with one unique and one non-unique index"
create table t1(a int, b char(10), unique(a), key(b));
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE
alter table t1 disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
alter table t1 enable keys;
"If no copy on noop change, this won't touch the data file"
"The non-unique index will be disabled"
alter table t1 modify a int, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
alter table t1 enable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE
"Change the type implying data copy"
"The non-unique index will be disabled"
alter table t1 modify a bigint, disable keys;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
"Change again the type, but leave the indexes as_is"
alter table t1 modify a int;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
"Try the same. When data is no copied on similar tables, this is noop"
alter table t1 modify a int;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 a 1 a A NULL NULL NULL YES BTREE
-t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 a 1 a A NULL NULL NULL YES BTREE
+t1 1 b 1 b A NULL NULL NULL YES BTREE disabled
drop table t1;
create database mysqltest;
create table t1 (c1 int);
@@ -696,12 +696,12 @@ DROP TABLE IF EXISTS bug24219;
DROP TABLE IF EXISTS bug24219_2;
CREATE TABLE bug24219 (a INT, INDEX(a));
SHOW INDEX FROM bug24219;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-bug24219 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+bug24219 1 a 1 a A NULL NULL NULL YES BTREE
ALTER TABLE bug24219 RENAME TO bug24219_2, DISABLE KEYS;
SHOW INDEX FROM bug24219_2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-bug24219_2 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+bug24219_2 1 a 1 a A NULL NULL NULL YES BTREE disabled
DROP TABLE bug24219_2;
drop table if exists table_24562;
create table table_24562(
@@ -1144,8 +1144,8 @@ Field Type Null Key Default Extra
int_field int(10) unsigned NO MUL NULL
char_field char(10) YES NULL
SHOW INDEXES FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 int_field 1 int_field A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 int_field 1 int_field A NULL NULL NULL BTREE
INSERT INTO t1 VALUES (1, "edno"), (1, "edno"), (2, "dve"), (3, "tri"), (5, "pet");
"Non-copy data change - new frm, but old data and index files"
ALTER TABLE t1
@@ -1354,3 +1354,15 @@ DROP i,
ADD i INT UNSIGNED NOT NULL AUTO_INCREMENT,
AUTO_INCREMENT = 1;
DROP TABLE t1;
+CREATE TABLE t1 (a CHAR(1), PRIMARY KEY (a(255)));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+CREATE TABLE t1 (a CHAR(1));
+ALTER TABLE t1 ADD PRIMARY KEY (a(20));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+ALTER TABLE t1 ADD KEY (a(20));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+CREATE UNIQUE INDEX i1 ON t1 (a(20));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+CREATE INDEX i2 ON t1 (a(20));
+ERROR HY000: Incorrect prefix key; the used key part isn't a string, the used length is longer than the key part, or the storage engine doesn't support unique prefix keys
+DROP TABLE t1;
diff --git a/mysql-test/r/analyze.result b/mysql-test/r/analyze.result
index c3dbb846402..df8a6c42924 100644
--- a/mysql-test/r/analyze.result
+++ b/mysql-test/r/analyze.result
@@ -53,8 +53,8 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
drop table t1;
End of 4.1 tests
create table t1(a int);
diff --git a/mysql-test/r/archive.result b/mysql-test/r/archive.result
index aaab9d27edb..f76511ee84c 100644
--- a/mysql-test/r/archive.result
+++ b/mysql-test/r/archive.result
@@ -12739,3 +12739,12 @@ Table Op Msg_type Msg_text
test.t1 repair Error Table upgrade required. Please do "REPAIR TABLE `t1`" or dump/reload to fix it!
test.t1 repair error Corrupt
DROP TABLE t1;
+#
+# BUG#48757 - missing .ARZ file causes server crash
+#
+CREATE TABLE t1(a INT) ENGINE=ARCHIVE;
+FLUSH TABLE t1;
+SELECT * FROM t1;
+ERROR HY000: Can't find file: 't1' (errno: 2)
+DROP TABLE t1;
+ERROR 42S02: Unknown table 't1'
diff --git a/mysql-test/r/backup.result b/mysql-test/r/backup.result
index bab2c83448c..89be20aee70 100644
--- a/mysql-test/r/backup.result
+++ b/mysql-test/r/backup.result
@@ -4,23 +4,23 @@ create table t4(n int);
backup table t4 to '../../bogus';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
-test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/bogus/t4.frm' (Errcode: X)
test.t4 backup status Operation failed
backup table t4 to '../../tmp';
Table Op Msg_type Msg_text
-test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup status OK
backup table t4 to '../../tmp';
Table Op Msg_type Msg_text
test.t4 backup error Failed copying .frm file (errno: X)
-test.t4 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 backup Error Can't create/write to file 'MYSQLTEST_VARDIR/tmp/t4.frm' (Errcode: X)
test.t4 backup status Operation failed
drop table t4;
restore table t4 from '../../tmp';
Table Op Msg_type Msg_text
-test.t4 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t4 restore Warning 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t4 restore status OK
select count(*) from t4;
count(*)
@@ -29,18 +29,18 @@ create table t1(n int);
insert into t1 values (23),(45),(67);
backup table t1 to '../../tmp';
Table Op Msg_type Msg_text
-test.t1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t1 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 backup status OK
drop table t1;
restore table t1 from '../../bogus';
Table Op Msg_type Msg_text
t1 restore error Failed copying .frm file
Warnings:
-Warning 1287 The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+Warning 1287 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
Error 29 File 'MYSQLTEST_VARDIR/bogus/t1.frm' not found (Errcode: X)
restore table t1 from '../../tmp';
Table Op Msg_type Msg_text
-test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t1 restore Warning 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
select n from t1;
n
@@ -53,13 +53,13 @@ insert into t2 values (123),(145),(167);
insert into t3 values (223),(245),(267);
backup table t2,t3 to '../../tmp';
Table Op Msg_type Msg_text
-test.t2 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t2 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t2 backup status OK
test.t3 backup status OK
drop table t1,t2,t3;
restore table t1,t2,t3 from '../../tmp';
Table Op Msg_type Msg_text
-test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t1 restore Warning 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
test.t2 restore status OK
test.t3 restore status OK
@@ -81,14 +81,14 @@ k
drop table t1,t2,t3,t4;
restore table t1 from '../../tmp';
Table Op Msg_type Msg_text
-test.t1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t1 restore Warning 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t1 restore status OK
rename table t1 to t5;
lock tables t5 write;
backup table t5 to '../../tmp';
unlock tables;
Table Op Msg_type Msg_text
-test.t5 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t5 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t5 backup status OK
drop table t5;
DROP TABLE IF EXISTS `t+1`;
@@ -96,12 +96,12 @@ CREATE TABLE `t+1` (c1 INT);
INSERT INTO `t+1` VALUES (1), (2), (3);
BACKUP TABLE `t+1` TO '../../tmp';
Table Op Msg_type Msg_text
-test.t+1 backup Warning The syntax 'BACKUP TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t+1 backup Warning 'BACKUP TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t+1 backup status OK
DROP TABLE `t+1`;
RESTORE TABLE `t+1` FROM '../../tmp';
Table Op Msg_type Msg_text
-test.t+1 restore Warning The syntax 'RESTORE TABLE' is deprecated and will be removed in MySQL 6.0. Please use MySQL Administrator (mysqldump, mysql) instead
+test.t+1 restore Warning 'RESTORE TABLE' is deprecated and will be removed in a future release. Please use MySQL Administrator (mysqldump, mysql) instead
test.t+1 restore status OK
SELECT * FROM `t+1`;
c1
diff --git a/mysql-test/r/bigint.result b/mysql-test/r/bigint.result
index 6b0954655e9..47a45efa5fd 100644
--- a/mysql-test/r/bigint.result
+++ b/mysql-test/r/bigint.result
@@ -404,3 +404,37 @@ describe t1;
Field Type Null Key Default Extra
bi decimal(19,0) NO 0
drop table t1;
+#
+# Bug #45360: wrong results
+#
+CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY,
+a BIGINT(20) UNSIGNED,
+b VARCHAR(20));
+INSERT INTO t1 (a) VALUES
+(0),
+(CAST(0x7FFFFFFFFFFFFFFF AS UNSIGNED)),
+(CAST(0x8000000000000000 AS UNSIGNED)),
+(CAST(0xFFFFFFFFFFFFFFFF AS UNSIGNED));
+UPDATE t1 SET b = a;
+# FFFFFFFFFFFFFFFF
+EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE a = 18446744073709551615 AND TRIM(a) = b;
+SHOW WARNINGS;
+Level Code Message
+Note 1003 select 1 AS `1` from `test`.`t1` where ((`test`.`t1`.`a` = 18446744073709551615) and ('18446744073709551615' = `test`.`t1`.`b`))
+# 8000000000000000
+EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE a = 9223372036854775808 AND TRIM(a) = b;
+SHOW WARNINGS;
+Level Code Message
+Note 1003 select 1 AS `1` from `test`.`t1` where ((`test`.`t1`.`a` = 9223372036854775808) and ('9223372036854775808' = `test`.`t1`.`b`))
+# 7FFFFFFFFFFFFFFF
+EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE a = 9223372036854775807 AND TRIM(a) = b;
+SHOW WARNINGS;
+Level Code Message
+Note 1003 select 1 AS `1` from `test`.`t1` where ((`test`.`t1`.`a` = 9223372036854775807) and ('9223372036854775807' = `test`.`t1`.`b`))
+# 0
+EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE a = 0 AND TRIM(a) = b;
+SHOW WARNINGS;
+Level Code Message
+Note 1003 select 1 AS `1` from `test`.`t1` where ((`test`.`t1`.`a` = 0) and ('0' = `test`.`t1`.`b`))
+DROP TABLE t1;
+# End of 5.1 tests
diff --git a/mysql-test/r/bug39022.result b/mysql-test/r/bug39022.result
new file mode 100644
index 00000000000..5963709aa2a
--- /dev/null
+++ b/mysql-test/r/bug39022.result
@@ -0,0 +1,32 @@
+#
+# Bug #39022: Mysql randomly crashing in lock_sec_rec_cons_read_sees
+#
+CREATE TABLE t1(a TINYINT NOT NULL,b TINYINT,PRIMARY KEY(b)) ENGINE=innodb;
+CREATE TABLE t2(d TINYINT NOT NULL,UNIQUE KEY(d)) ENGINE=innodb;
+INSERT INTO t1 VALUES (13,0),(8,1),(9,2),(6,3),
+(11,5),(11,6),(7,7),(7,8),(4,9),(6,10),(3,11),(11,12),
+(12,13),(7,14);
+INSERT INTO t2 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),
+(11),(12),(13),(14);
+# in thread1
+START TRANSACTION;
+# in thread2
+REPLACE INTO t2 VALUES (-17);
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d);
+d
+# in thread1
+REPLACE INTO t1(a,b) VALUES (67,20);
+# in thread2
+COMMIT;
+START TRANSACTION;
+REPLACE INTO t1(a,b) VALUES (65,-50);
+REPLACE INTO t2 VALUES (-91);
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d);
+# in thread1
+# should not crash
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d);
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# in thread2
+d
+# in thread1;
+DROP TABLE t1,t2;
diff --git a/mysql-test/r/case.result b/mysql-test/r/case.result
index 0c0e2d623c8..fcbf5812312 100644
--- a/mysql-test/r/case.result
+++ b/mysql-test/r/case.result
@@ -101,16 +101,16 @@ Table Create Table
t1 CREATE TABLE `t1` (
`c1` varchar(1) CHARACTER SET latin1 COLLATE latin1_danish_ci NOT NULL DEFAULT '',
`c2` varchar(1) CHARACTER SET latin1 COLLATE latin1_danish_ci NOT NULL DEFAULT '',
- `c3` varbinary(1) NOT NULL DEFAULT '',
- `c4` varbinary(1) NOT NULL DEFAULT '',
- `c5` varbinary(4) NOT NULL DEFAULT '',
- `c6` varbinary(4) NOT NULL DEFAULT '',
+ `c3` varchar(1) NOT NULL DEFAULT '',
+ `c4` varchar(1) NOT NULL DEFAULT '',
+ `c5` varchar(4) NOT NULL DEFAULT '',
+ `c6` varchar(4) NOT NULL DEFAULT '',
`c7` decimal(2,1) NOT NULL DEFAULT '0.0',
`c8` decimal(2,1) NOT NULL DEFAULT '0.0',
`c9` decimal(2,1) DEFAULT NULL,
`c10` double NOT NULL DEFAULT '0',
`c11` double NOT NULL DEFAULT '0',
- `c12` varbinary(5) NOT NULL DEFAULT ''
+ `c12` varchar(5) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
SELECT CASE
@@ -155,8 +155,8 @@ t1 CREATE TABLE `t1` (
`COALESCE(1.0)` decimal(2,1) NOT NULL DEFAULT '0.0',
`COALESCE('a')` varchar(1) NOT NULL DEFAULT '',
`COALESCE(1,1.0)` decimal(2,1) NOT NULL DEFAULT '0.0',
- `COALESCE(1,'1')` varbinary(1) NOT NULL DEFAULT '',
- `COALESCE(1.1,'1')` varbinary(4) NOT NULL DEFAULT '',
+ `COALESCE(1,'1')` varchar(1) NOT NULL DEFAULT '',
+ `COALESCE(1.1,'1')` varchar(4) NOT NULL DEFAULT '',
`COALESCE('a' COLLATE latin1_bin,'b')` varchar(1) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
DROP TABLE t1;
diff --git a/mysql-test/r/comment_column.result b/mysql-test/r/comment_column.result
new file mode 100644
index 00000000000..6ddd9eaf3de
--- /dev/null
+++ b/mysql-test/r/comment_column.result
@@ -0,0 +1,411 @@
+DROP TABLE IF EXISTS t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD COLUMN c8 INTEGER COMMENT 'ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL COMMENT 'ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD COLUMN c9 INTEGER COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL COMMENT 'ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c9` int(11) DEFAULT NULL COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD COLUMN c10 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` int(11) DEFAULT NULL COMMENT 'ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c9` int(11) DEFAULT NULL COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 MODIFY COLUMN c8 CHAR(10);
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9` int(11) DEFAULT NULL COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 CHANGE COLUMN c9 c9_1 INTEGER COMMENT '1234567890';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+1234567890 10
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9_1` int(11) DEFAULT NULL COMMENT '1234567890',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 DROP COLUMN c1;
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+1234567890 10
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9_1` int(11) DEFAULT NULL COMMENT '1234567890',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD COLUMN c11 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+Warnings:
+Warning 1629 Comment for field 'c11' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+1234567890 10
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9_1` int(11) DEFAULT NULL COMMENT '1234567890',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c11` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+set sql_mode='TRADITIONAL';
+ALTER TABLE t1 ADD COLUMN c12 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+ERROR HY000: Comment for field 'c12' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+1234567890 10
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9_1` int(11) DEFAULT NULL COMMENT '1234567890',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c11` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+set sql_mode='';
+ALTER TABLE t1 ADD COLUMN c12 CHAR(100) COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+1234567890 10
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` char(10) DEFAULT NULL,
+ `c9_1` int(11) DEFAULT NULL COMMENT '1234567890',
+ `c10` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c11` int(11) DEFAULT NULL COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c12` char(100) DEFAULT NULL COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+drop table t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdaBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+Warnings:
+Warning 1629 Comment for field 'c2' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+DROP TABLE t1;
+set sql_mode='TRADITIONAL';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdaBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+ERROR HY000: Comment for field 'c2' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+SET sql_mode='';
+CREATE TABLE t1_toupg (c1 INT, c2 VARCHAR(10) COMMENT
+'01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234')
+COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+Warnings:
+Warning 1629 Comment for field 'c2' is too long (max = 1024)
+ALTER TABLE t1_toupg COMMENT='012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012301234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+Warnings:
+Warning 1628 Comment for table 't1_toupg' is too long (max = 2048)
+ALTER TABLE t1_toupg ADD c3 TIMESTAMP COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+Warnings:
+Warning 1629 Comment for field 'c3' is too long (max = 1024)
+ALTER TABLE t1_toupg ADD INDEX i1(c1) COMMENT '01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+Warnings:
+Warning 1688 Comment for index 'i1' is too long (max = 1024)
+CREATE INDEX i2 ON t1_toupg(c2) COMMENT '01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+Warnings:
+Warning 1688 Comment for index 'i2' is too long (max = 1024)
+drop table t1_toupg;
diff --git a/mysql-test/r/comment_column2.result b/mysql-test/r/comment_column2.result
new file mode 100644
index 00000000000..6fa5d73b70a
--- /dev/null
+++ b/mysql-test/r/comment_column2.result
@@ -0,0 +1,397 @@
+DROP TABLE IF EXISTS t1;
+create table t1 (
+c1 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c2 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c3 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c4 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c5 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c6 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c7 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c8 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c9 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c10 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c11 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c12 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c13 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c14 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c15 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c16 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c17 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c18 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c19 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c20 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c21 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c22 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c23 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c24 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c25 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c26 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c27 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c28 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c29 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c30 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c31 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c32 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c33 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c34 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c35 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c36 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c37 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c38 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c39 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c40 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c41 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c42 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c43 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c44 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c45 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c46 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c47 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c48 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c49 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c50 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij');
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ 0
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ALTER TABLE t1 ADD COLUMN c51 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',ADD COLUMN c52 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ 0
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ALTER TABLE t1 ADD COLUMN c53 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c54 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c55 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c56 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c57 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c58 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c59 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c60 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c61 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c62 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ALTER TABLE t1 ADD COLUMN c63 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ 0
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ALTER TABLE t1 ADD COLUMN c64 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+ERROR HY000: Too many columns
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ 0
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij 1000
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+drop table t1;
+create table t1 (
+c1 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c2 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c3 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c4 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c5 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c6 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c7 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c8 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c9 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c10 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c11 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c12 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c13 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c14 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c15 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c16 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c17 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c18 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c19 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c20 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c21 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c22 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c23 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c24 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c25 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c26 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c27 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c28 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c29 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c30 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c31 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c32 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c33 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c34 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c35 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c36 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c37 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c38 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c39 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c40 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c41 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c42 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c43 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c44 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c45 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c46 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c47 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c48 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c49 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c50 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c51 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c52 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c53 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c54 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c55 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c56 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c57 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c58 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c59 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c60 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c61 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c62 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c63 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c64 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c65 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij')
+;
+ERROR HY000: Too many columns
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
diff --git a/mysql-test/r/comment_index.result b/mysql-test/r/comment_index.result
new file mode 100644
index 00000000000..599bf563ca4
--- /dev/null
+++ b/mysql-test/r/comment_index.result
@@ -0,0 +1,482 @@
+DROP TABLE IF EXISTS t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, c8 VARCHAR(100), c9 CHAR(50), c10 DATETIME, c11 DATETIME, c12 DATETIME,c13 DATETIME, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+CREATE INDEX i4 ON t1(c4) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`),
+ KEY `i4` (`c4`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD INDEX (c6) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ i1 comment 10
+ 0
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`),
+ KEY `i4` (`c4`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+DROP INDEX i1 ON t1;
+ALTER TABLE t1 DROP INDEX i2, DROP INDEX i4;
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD INDEX i8(c8) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', ADD INDEX i10(c10) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+CREATE INDEX i1_3 ON t1(c1,c2,c3) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1_3` (`c1`,`c2`,`c3`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+CREATE INDEX i11 ON t1(c11) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+Warnings:
+Warning 1688 Comment for index 'i11' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1_3` (`c1`,`c2`,`c3`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i11` (`c11`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+ALTER TABLE t1 ADD INDEX (c13) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+Warnings:
+Warning 1688 Comment for index 'c13' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1_3` (`c1`,`c2`,`c3`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i11` (`c11`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `c13` (`c13`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+set sql_mode='TRADITIONAL';
+ALTER TABLE t1 ADD INDEX i12 (c12) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+ERROR HY000: Comment for index 'i12' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1_3` (`c1`,`c2`,`c3`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i11` (`c11`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `c13` (`c13`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+set sql_mode='TRADITIONAL';
+CREATE INDEX i12 ON t1(c12) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+ERROR HY000: Comment for index 'i12' is too long (max = 1024)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+ 0
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+comment index_comment char_length(index_comment)
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+ abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c2` int(11) DEFAULT NULL COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ `c8` varchar(100) DEFAULT NULL,
+ `c9` char(50) DEFAULT NULL,
+ `c10` datetime DEFAULT NULL,
+ `c11` datetime DEFAULT NULL,
+ `c12` datetime DEFAULT NULL,
+ `c13` datetime DEFAULT NULL,
+ KEY `c6` (`c6`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i8` (`c8`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i10` (`c10`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i1_3` (`c1`,`c2`,`c3`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `i11` (`c11`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',
+ KEY `c13` (`c13`) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+drop table t1;
diff --git a/mysql-test/r/comment_table.result b/mysql-test/r/comment_table.result
new file mode 100644
index 00000000000..99ecb04a362
--- /dev/null
+++ b/mysql-test/r/comment_table.result
@@ -0,0 +1,127 @@
+DROP TABLE IF EXISTS t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 1024
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+c1 comment 10
+ 0
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'c1 comment',
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+drop table t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde 1025
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+c1 comment 10
+ 0
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'c1 comment',
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde'
+drop table t1;
+set sql_mode='TRADITIONAL';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde 1025
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+c1 comment 10
+ 0
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+drop table t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 2048
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+c1 comment 10
+ 0
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL COMMENT 'c1 comment',
+ `c2` int(11) DEFAULT NULL,
+ `c3` int(11) DEFAULT NULL COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789',
+ `c4` int(11) DEFAULT NULL,
+ `c5` int(11) DEFAULT NULL,
+ `c6` int(11) DEFAULT NULL,
+ `c7` int(11) DEFAULT NULL,
+ KEY `i1` (`c1`) COMMENT 'i1 comment',
+ KEY `i2` (`c2`)
+) ENGINE=ENGINE DEFAULT CHARSET=latin1 COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd'
+drop table t1;
+SET SQL_MODE='';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+Warnings:
+Warning 1628 Comment for table 't1' is too long (max = 2048)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd 2048
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
+c1 comment 10
+ 0
+012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 300
+ 0
+ 0
+ 0
+ 0
+drop table t1;
+SET SQL_MODE='TRADITIONAL';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+ERROR HY000: Comment for table 't1' is too long (max = 2048)
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+table_comment char_length(table_comment)
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+column_comment char_length(column_comment)
diff --git a/mysql-test/r/commit_1innodb.result b/mysql-test/r/commit_1innodb.result
index cf8c0e085c9..f789e412233 100644
--- a/mysql-test/r/commit_1innodb.result
+++ b/mysql-test/r/commit_1innodb.result
@@ -842,11 +842,11 @@ call p_verify_status_increment(2, 0, 2, 0);
SUCCESS
alter table t3 rename t4;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(2, 0, 2, 0);
SUCCESS
rename table t4 to t3;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(0, 0, 0, 0);
SUCCESS
truncate table t3;
@@ -854,13 +854,13 @@ call p_verify_status_increment(2, 0, 2, 0);
SUCCESS
create view v1 as select * from t2;
-call p_verify_status_increment(1, 0, 1, 0);
+call p_verify_status_increment(2, 0, 2, 0);
SUCCESS
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
-call p_verify_status_increment(3, 0, 3, 0);
+call p_verify_status_increment(2, 0, 2, 0);
SUCCESS
# Sic: after this bug is fixed, CHECK leaves no pending transaction
diff --git a/mysql-test/r/compress.result b/mysql-test/r/compress.result
index 1d3752f09e7..c4625253df3 100644
--- a/mysql-test/r/compress.result
+++ b/mysql-test/r/compress.result
@@ -2090,10 +2090,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/constraints.result b/mysql-test/r/constraints.result
index 116efe429d5..46a718e4c42 100644
--- a/mysql-test/r/constraints.result
+++ b/mysql-test/r/constraints.result
@@ -3,7 +3,7 @@ create table t1 (a int check (a>0));
insert into t1 values (1);
insert into t1 values (0);
drop table t1;
-create table t1 (a int ,b int, check a>b);
+create table t1 (a int, b int, check (a>b));
insert into t1 values (1,0);
insert into t1 values (0,1);
drop table t1;
@@ -27,3 +27,19 @@ t1 CREATE TABLE `t1` (
UNIQUE KEY `key_2` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
+drop table if exists t_illegal;
+create table t_illegal (a int, b int, check a>b);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a>b)' at line 1
+create table t_illegal (a int, b int, constraint abc check a>b);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a>b)' at line 1
+create table t_illegal (a int, b int, constraint abc);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1
+drop table if exists t_11714;
+create table t_11714(a int, b int);
+alter table t_11714 add constraint cons1;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
+drop table t_11714;
+CREATE TABLE t_illegal (col_1 INT CHECK something (whatever));
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'something (whatever))' at line 1
+CREATE TABLE t_illegal (col_1 INT CHECK something);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'something)' at line 1
diff --git a/mysql-test/r/create.result b/mysql-test/r/create.result
index 55e8e15b6a9..eb1437414e7 100644
--- a/mysql-test/r/create.result
+++ b/mysql-test/r/create.result
@@ -438,7 +438,7 @@ explain t2;
Field Type Null Key Default Extra
a int(11) YES NULL
b bigint(11) NO 0
-c bigint(11) unsigned NO 0
+c bigint(10) unsigned NO 0
d date YES NULL
e varchar(1) NO
f datetime YES NULL
@@ -457,7 +457,7 @@ Table Create Table
t2 CREATE TABLE `t2` (
`ifnull(a,a)` tinyint(4) DEFAULT NULL,
`ifnull(b,b)` smallint(6) DEFAULT NULL,
- `ifnull(c,c)` mediumint(8) DEFAULT NULL,
+ `ifnull(c,c)` mediumint(9) DEFAULT NULL,
`ifnull(d,d)` int(11) DEFAULT NULL,
`ifnull(e,e)` bigint(20) DEFAULT NULL,
`ifnull(f,f)` float(3,2) DEFAULT NULL,
@@ -785,7 +785,7 @@ drop table t1;
create table t1 select * from t2;
ERROR 42S02: Table 'test.t2' doesn't exist
create table t1 select * from t1;
-ERROR HY000: You can't specify target table 't1' for update in FROM clause
+ERROR 42S02: Table 'test.t1' doesn't exist
create table t1 select coalesce('a' collate latin1_swedish_ci,'b' collate latin1_bin);
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,EXPLICIT) and (latin1_bin,EXPLICIT) for operation 'coalesce'
create table t1 (primary key(a)) select "b" as b;
@@ -805,6 +805,11 @@ Note 1050 Table 't1' already exists
select * from t1;
i
1
+create table if not exists t1 select * from t1;
+ERROR HY000: You can't specify target table 't1' for update in FROM clause
+select * from t1;
+i
+1
create table t1 select coalesce('a' collate latin1_swedish_ci,'b' collate latin1_bin);
ERROR HY000: Illegal mix of collations (latin1_swedish_ci,EXPLICIT) and (latin1_bin,EXPLICIT) for operation 'coalesce'
select * from t1;
@@ -1548,13 +1553,13 @@ CREATE TABLE t1(c1 VARCHAR(33), KEY (c1) USING BTREE);
DROP TABLE t1;
CREATE TABLE t1(c1 VARCHAR(33), KEY USING BTREE (c1) USING HASH) ENGINE=MEMORY;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 c1 1 c1 NULL 0 NULL NULL YES HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 c1 1 c1 NULL 0 NULL NULL YES HASH
DROP TABLE t1;
CREATE TABLE t1(c1 VARCHAR(33), KEY USING HASH (c1) USING BTREE) ENGINE=MEMORY;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 c1 1 c1 A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 c1 1 c1 A NULL NULL NULL YES BTREE
DROP TABLE t1;
create user mysqltest_1@'test@test';
ERROR HY000: Malformed hostname (illegal symbol: '@')
@@ -1953,3 +1958,22 @@ END ;|
ERROR 42000: This version of MySQL doesn't yet support 'multiple triggers with the same action time and event for one table'
DROP TABLE t1;
DROP TABLE B;
+#
+# Bug #47107 assert in notify_shared_lock on incorrect
+# CREATE TABLE , HANDLER
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(f1 integer);
+# The following CREATE TABLEs before gave an assert.
+HANDLER t1 OPEN AS A;
+CREATE TABLE t1 SELECT 1 AS f2;
+ERROR 42S01: Table 't1' already exists
+HANDLER t1 OPEN AS A;
+CREATE TABLE t1(f1 integer);
+ERROR 42S01: Table 't1' already exists
+CREATE TABLE t2(f1 integer);
+HANDLER t1 OPEN AS A;
+CREATE TABLE t1 LIKE t2;
+ERROR 42S01: Table 't1' already exists
+DROP TABLE t2;
+DROP TABLE t1;
diff --git a/mysql-test/r/csv.result b/mysql-test/r/csv.result
index 97996b484bb..c1710e82ba6 100644
--- a/mysql-test/r/csv.result
+++ b/mysql-test/r/csv.result
@@ -5394,19 +5394,26 @@ select * from t1;
ERROR HY000: File 'MYSQLD_DATADIR/test/t1.CSV' not found (Errcode: 2)
unlock tables;
drop table t1;
-create table t1(a enum ('a') not null) engine=csv;
-insert into t1 values (2);
+CREATE TABLE t1 (e enum('foo','bar') NOT NULL) ENGINE = CSV;
+INSERT INTO t1 VALUES();
+INSERT INTO t1 VALUES(default);
+INSERT INTO t1 VALUES(0);
Warnings:
-Warning 1265 Data truncated for column 'a' at row 1
-select * from t1 limit 1;
-ERROR HY000: Table 't1' is marked as crashed and should be repaired
-repair table t1;
-Table Op Msg_type Msg_text
-test.t1 repair Warning Data truncated for column 'a' at row 1
-test.t1 repair status OK
-select * from t1 limit 1;
-a
-drop table t1;
+Warning 1265 Data truncated for column 'e' at row 1
+INSERT INTO t1 VALUES(3);
+Warnings:
+Warning 1265 Data truncated for column 'e' at row 1
+INSERT INTO t1 VALUES(-1);
+Warnings:
+Warning 1265 Data truncated for column 'e' at row 1
+SELECT * FROM t1;
+e
+foo
+foo
+
+
+
+DROP TABLE t1;
#
# Test for the following cases
# 1) integers and strings enclosed in quotes
diff --git a/mysql-test/r/ctype_binary.result b/mysql-test/r/ctype_binary.result
new file mode 100644
index 00000000000..55faa72c6ab
--- /dev/null
+++ b/mysql-test/r/ctype_binary.result
@@ -0,0 +1,2568 @@
+set names binary;
+#
+# Start of 5.5 tests
+#
+#
+# Start of WL#2649 Number-to-string conversions
+#
+select hex(concat(1));
+hex(concat(1))
+31
+create table t1 as select concat(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+31
+drop table t1;
+select hex(concat(18446744073709551615));
+hex(concat(18446744073709551615))
+3138343436373434303733373039353531363135
+create table t1 as select concat(18446744073709551615) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(20) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+3138343436373434303733373039353531363135
+drop table t1;
+select hex(concat(1.1));
+hex(concat(1.1))
+312E31
+create table t1 as select concat(1.1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+312E31
+drop table t1;
+select hex(concat('a', 1+2)), charset(concat(1+2));
+hex(concat('a', 1+2)) charset(concat(1+2))
+6133 binary
+create table t1 as select concat(1+2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1-2));
+hex(concat(1-2))
+2D31
+create table t1 as select concat(1-2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1*2));
+hex(concat(1*2))
+32
+create table t1 as select concat(1*2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1/2));
+hex(concat(1/2))
+302E35303030
+create table t1 as select concat(1/2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(7) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 div 2));
+hex(concat(1 div 2))
+30
+create table t1 as select concat(1 div 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 % 2));
+hex(concat(1 % 2))
+31
+create table t1 as select concat(1 % 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-1));
+hex(concat(-1))
+2D31
+create table t1 as select concat(-1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-(1+2)));
+hex(concat(-(1+2)))
+2D33
+create table t1 as select concat(-(1+2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1|2));
+hex(concat(1|2))
+33
+create table t1 as select concat(1|2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1&2));
+hex(concat(1&2))
+30
+create table t1 as select concat(1&2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_count(12)));
+hex(concat(bit_count(12)))
+32
+create table t1 as select concat(bit_count(12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2<<1));
+hex(concat(2<<1))
+34
+create table t1 as select concat(2<<1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2>>1));
+hex(concat(2>>1))
+31
+create table t1 as select concat(2>>1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(~0));
+hex(concat(~0))
+3138343436373434303733373039353531363135
+create table t1 as select concat(~0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(3^2));
+hex(concat(3^2))
+31
+create table t1 as select concat(3^2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(abs(-2)));
+hex(concat(abs(-2)))
+32
+create table t1 as select concat(abs(-2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(exp(2)),1));
+hex(left(concat(exp(2)),1))
+37
+create table t1 as select concat(exp(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log(2)),1));
+hex(left(concat(log(2)),1))
+30
+create table t1 as select concat(log(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log2(2)),1));
+hex(left(concat(log2(2)),1))
+31
+create table t1 as select concat(log2(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log10(2)),1));
+hex(left(concat(log10(2)),1))
+30
+create table t1 as select concat(log10(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sqrt(2)),1));
+hex(left(concat(sqrt(2)),1))
+31
+create table t1 as select concat(sqrt(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(pow(2,2)),1));
+hex(left(concat(pow(2,2)),1))
+34
+create table t1 as select concat(pow(2,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(acos(0.5)),1));
+hex(left(concat(acos(0.5)),1))
+31
+create table t1 as select concat(acos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(asin(0.5)),1));
+hex(left(concat(asin(0.5)),1))
+30
+create table t1 as select concat(asin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(atan(0.5)),1));
+hex(left(concat(atan(0.5)),1))
+30
+create table t1 as select concat(atan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(cos(0.5)),1));
+hex(left(concat(cos(0.5)),1))
+30
+create table t1 as select concat(cos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sin(0.5)),1));
+hex(left(concat(sin(0.5)),1))
+30
+create table t1 as select concat(sin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(tan(0.5)),1));
+hex(left(concat(tan(0.5)),1))
+30
+create table t1 as select concat(tan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(degrees(0)));
+hex(concat(degrees(0)))
+30
+create table t1 as select concat(degrees(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(radians(0)));
+hex(concat(radians(0)))
+30
+create table t1 as select concat(radians(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ceiling(0.5)));
+hex(concat(ceiling(0.5)))
+31
+create table t1 as select concat(ceiling(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(floor(0.5)));
+hex(concat(floor(0.5)))
+30
+create table t1 as select concat(floor(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(round(0.5)));
+hex(concat(round(0.5)))
+31
+create table t1 as select concat(round(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sign(0.5)));
+hex(concat(sign(0.5)))
+31
+create table t1 as select concat(sign(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(rand()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(length('a')));
+hex(concat(length('a')))
+31
+create table t1 as select concat(length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(char_length('a')));
+hex(concat(char_length('a')))
+31
+create table t1 as select concat(char_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_length('a')));
+hex(concat(bit_length('a')))
+38
+create table t1 as select concat(bit_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coercibility('a')));
+hex(concat(coercibility('a')))
+34
+create table t1 as select concat(coercibility('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(locate('a','a')));
+hex(concat(locate('a','a')))
+31
+create table t1 as select concat(locate('a','a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(11) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(field('c','a','b','c')));
+hex(concat(field('c','a','b','c')))
+33
+create table t1 as select concat(field('c','a','b','c')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ascii(61)));
+hex(concat(ascii(61)))
+3534
+create table t1 as select concat(ascii(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ord(61)));
+hex(concat(ord(61)))
+3534
+create table t1 as select concat(ord(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(find_in_set('b','a,b,c,d')));
+hex(concat(find_in_set('b','a,b,c,d')))
+32
+create table t1 as select concat(find_in_set('b','a,b,c,d')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select md5('a'), hex(md5('a'));
+md5('a') hex(md5('a'))
+0cc175b9c0f1b6a831c399e269772661 3063633137356239633066316236613833316333393965323639373732363631
+create table t1 as select md5('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(32) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select old_password('a'), hex(old_password('a'));
+old_password('a') hex(old_password('a'))
+60671c896665c3fa 36303637316338393636363563336661
+create table t1 as select old_password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(16) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select password('a'), hex(password('a'));
+password('a') hex(password('a'))
+*667F407DE7C6AD07358FA38DAED7828A72014B4E 2A36363746343037444537433641443037333538464133384441454437383238413732303134423445
+create table t1 as select password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(41) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha('a'), hex(sha('a'));
+sha('a') hex(sha('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(40) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha1('a'), hex(sha1('a'));
+sha1('a') hex(sha1('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha1('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(40) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('-1' as signed)));
+hex(concat(cast('-1' as signed)))
+2D31
+create table t1 as select concat(cast('-1' as signed)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('1' as unsigned)));
+hex(concat(cast('1' as unsigned)))
+31
+create table t1 as select concat(cast('1' as unsigned)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast(1/2 as decimal(5,5))));
+hex(concat(cast(1/2 as decimal(5,5))))
+302E3530303030
+create table t1 as select concat(cast(1/2 as decimal(5,5))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(7) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as date)));
+hex(concat(cast('2001-01-02 03:04:05' as date)))
+323030312D30312D3032
+create table t1 as select concat(cast('2001-01-02 03:04:05' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as time)));
+hex(concat(cast('2001-01-02 03:04:05' as time)))
+30333A30343A3035
+create table t1 as select concat(cast('2001-01-02 03:04:05' as time)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+03:04:05
+drop table t1;
+select hex(concat(cast('2001-01-02' as datetime)));
+hex(concat(cast('2001-01-02' as datetime)))
+323030312D30312D30322030303A30303A3030
+create table t1 as select concat(cast('2001-01-02' as datetime)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02 00:00:00
+drop table t1;
+select hex(concat(least(1,2)));
+hex(concat(least(1,2)))
+31
+create table t1 as select concat(least(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(greatest(1,2)));
+hex(concat(greatest(1,2)))
+32
+create table t1 as select concat(greatest(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(case when 11 then 22 else 33 end));
+hex(concat(case when 11 then 22 else 33 end))
+3232
+create table t1 as select concat(case when 11 then 22 else 33 end) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coalesce(1,2)));
+hex(concat(coalesce(1,2)))
+31
+create table t1 as select concat(coalesce(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat_ws(1,2,3));
+hex(concat_ws(1,2,3))
+323133
+create table t1 as select concat_ws(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(group_concat(1,2,3));
+hex(group_concat(1,2,3))
+313233
+create table t1 as select group_concat(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` blob
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select 1 as c1 union select 'a';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1 order by c1;
+hex(c1)
+31
+61
+drop table t1;
+create table t1 as select concat(last_insert_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(benchmark(0,0)));
+hex(concat(benchmark(0,0)))
+30
+create table t1 as select concat(benchmark(0,0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sleep(0)));
+hex(concat(sleep(0)))
+30
+create table t1 as select concat(sleep(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(is_free_lock('xxxx')));
+hex(concat(is_free_lock('xxxx')))
+31
+create table t1 as select concat(is_free_lock('xxxx')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(is_used_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(release_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(crc32('')));
+hex(concat(crc32('')))
+30
+create table t1 as select concat(crc32('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(uncompressed_length('')));
+hex(concat(uncompressed_length('')))
+30
+create table t1 as select concat(uncompressed_length('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(connection_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_aton('127.1.1.1')));
+hex(concat(inet_aton('127.1.1.1')))
+32313330373732323235
+create table t1 as select concat(inet_aton('127.1.1.1')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_ntoa(2130772225)));
+hex(concat(inet_ntoa(2130772225)))
+3132372E312E312E31
+create table t1 as select concat(inet_ntoa(2130772225)) as c1;
+select * from t1;
+c1
+127.1.1.1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(31) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(row_count()));
+hex(concat(row_count()))
+2D31
+create table t1 as select concat(row_count()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(found_rows()));
+hex(concat(found_rows()))
+30
+create table t1 as select concat(found_rows()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid_short()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select coercibility(uuid()), coercibility(cast('a' as char character set latin1));
+coercibility(uuid()) coercibility(cast('a' as char character set latin1))
+4 2
+select charset(concat(uuid(), cast('a' as char character set latin1)));
+charset(concat(uuid(), cast('a' as char character set latin1)))
+latin1
+create table t1 as select concat(uuid(), cast('a' as char character set latin1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(37) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(master_pos_wait('non-existent',0,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1));
+hex(concat(@a1:=1))
+31
+create table t1 as select concat(@a2:=2) as c1, @a3:=3 as c2;
+select hex(c1) from t1;
+hex(c1)
+32
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT '',
+ `c2` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1;
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(20) DEFAULT NULL,
+ `c2` bigint(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=sqrt(1)));
+hex(concat(@a1:=sqrt(1)))
+31
+create table t1 as select concat(@a2:=sqrt(1)) as c1, @a3:=sqrt(1) as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=sqrt(1);
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1.1));
+hex(concat(@a1:=1.1))
+312E31
+create table t1 as select concat(@a2:=1.1) as c1, @a3:=1.1 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT '',
+ `c2` decimal(2,1) NOT NULL DEFAULT '0.0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1.1;
+select hex(concat(@a2));
+hex(concat(@a2))
+312E31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(83) DEFAULT NULL,
+ `c2` decimal(65,30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@@ft_max_word_len));
+hex(concat(@@ft_max_word_len))
+3834
+create table t1 as select concat(@@ft_max_word_len) as c1;
+select hex(c1) from t1;
+hex(c1)
+3834
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS TRUE));
+hex(concat('a'='a' IS TRUE))
+31
+create table t1 as select concat('a'='a' IS TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS NOT TRUE));
+hex(concat('a'='a' IS NOT TRUE))
+30
+create table t1 as select concat('a'='a' IS NOT TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NOT 'a'='a'));
+hex(concat(NOT 'a'='a'))
+30
+create table t1 as select concat(NOT 'a'='a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NULL));
+hex(concat('a' IS NULL))
+30
+create table t1 as select concat('a' IS NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NOT NULL));
+hex(concat('a' IS NOT NULL))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' rlike 'a'));
+hex(concat('a' rlike 'a'))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(strcmp('a','b')));
+hex(concat(strcmp('a','b')))
+2D31
+create table t1 as select concat(strcmp('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' like 'a'));
+hex(concat('a' like 'a'))
+31
+create table t1 as select concat('a' like 'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' between 'b' and 'c'));
+hex(concat('a' between 'b' and 'c'))
+30
+create table t1 as select concat('a' between 'b' and 'c') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' in ('a','b')));
+hex(concat('a' in ('a','b')))
+31
+create table t1 as select concat('a' in ('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(interval(23, 1, 15, 17, 30, 44, 200)));
+hex(concat(interval(23, 1, 15, 17, 30, 44, 200)))
+33
+create table t1 as select concat(interval(23, 1, 15, 17, 30, 44, 200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(10), fulltext key(a));
+insert into t1 values ('a');
+select hex(concat(match (a) against ('a'))) from t1;
+hex(concat(match (a) against ('a')))
+30
+create table t2 as select concat(match (a) against ('a')) as a from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+select hex(ifnull(1,'a'));
+hex(ifnull(1,'a'))
+31
+create table t1 as select ifnull(1,'a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1,1)));
+hex(concat(ifnull(1,1)))
+31
+create table t1 as select concat(ifnull(1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1.1,1.1)));
+hex(concat(ifnull(1.1,1.1)))
+312E31
+create table t1 as select concat(ifnull(1.1,1.1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,'b',1));
+hex(if(1,'b',1))
+62
+create table t1 as select if(1,'b',1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,1,'b'));
+hex(if(1,1,'b'))
+31
+create table t1 as select if(1,1,'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(if(1,1,1)));
+hex(concat(if(1,1,1)))
+31
+create table t1 as select concat(if(1,1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(nullif(1,2)));
+hex(concat(nullif(1,2)))
+31
+create table t1 as select concat(nullif(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))))
+31
+create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+32
+create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))))
+32
+create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+30
+create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
+hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))))
+31
+create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
+hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
+hex(concat(IsSimple(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
+hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))))
+30
+create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
+hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))))
+31
+create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
+drop table t1;
+select hex(concat(x(GeomFromText('Point(1 2)'))));
+hex(concat(x(GeomFromText('Point(1 2)'))))
+31
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(y(GeomFromText('Point(1 2)'))));
+hex(concat(y(GeomFromText('Point(1 2)'))))
+32
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
+hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))))
+31
+create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
+hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))))
+31
+create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
+hex(concat(GeometryType(GeomFromText('Point(1 2)'))))
+504F494E54
+create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(AsText(GeomFromText('Point(1 2)'))));
+hex(concat(AsText(GeomFromText('Point(1 2)'))))
+504F494E542831203229
+create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` longblob
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_add(200902, 2)));
+hex(concat(period_add(200902, 2)))
+323030393034
+create table t1 as select concat(period_add(200902, 2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_diff(200902, 200802)));
+hex(concat(period_diff(200902, 200802)))
+3132
+create table t1 as select concat(period_add(200902, 200802)) as c1;
+Warnings:
+Warning 1265 Data truncated for column 'c1' at row 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(to_days(20090224)));
+hex(concat(to_days(20090224)))
+373333383237
+create table t1 as select concat(to_days(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofmonth(20090224)));
+hex(concat(dayofmonth(20090224)))
+3234
+create table t1 as select concat(dayofmonth(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofyear(20090224)));
+hex(concat(dayofyear(20090224)))
+3535
+create table t1 as select concat(dayofyear(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(hour('10:11:12')));
+hex(concat(hour('10:11:12')))
+3130
+create table t1 as select concat(hour('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(minute('10:11:12')));
+hex(concat(minute('10:11:12')))
+3131
+create table t1 as select concat(minute('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(second('10:11:12')));
+hex(concat(second('10:11:12')))
+3132
+create table t1 as select concat(second('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(quarter(20090224)));
+hex(concat(quarter(20090224)))
+31
+create table t1 as select concat(quarter(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(week(20090224)));
+hex(concat(week(20090224)))
+38
+create table t1 as select concat(week(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(yearweek(20090224)));
+hex(concat(yearweek(20090224)))
+323030393038
+create table t1 as select concat(yearweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(year(20090224)));
+hex(concat(year(20090224)))
+32303039
+create table t1 as select concat(year(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(weekday(20090224)));
+hex(concat(weekday(20090224)))
+31
+create table t1 as select concat(weekday(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofweek(20090224)));
+hex(concat(dayofweek(20090224)))
+33
+create table t1 as select concat(dayofweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(unix_timestamp(20090224)));
+hex(concat(unix_timestamp(20090224)))
+31323335343232383030
+create table t1 as select concat(unix_timestamp(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(time_to_sec('10:11:12')));
+hex(concat(time_to_sec('10:11:12')))
+3336363732
+create table t1 as select concat(time_to_sec('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(extract(year from 20090702)));
+hex(concat(extract(year from 20090702)))
+32303039
+create table t1 as select concat(extract(year from 20090702)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(microsecond('12:00:00.123456')));
+hex(concat(microsecond('12:00:00.123456')))
+313233343536
+create table t1 as select concat(microsecond('12:00:00.123456')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(month(20090224)));
+hex(concat(month(20090224)))
+32
+create table t1 as select concat(month(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(last_day('2003-02-05')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2003-02-28 323030332D30322D3238
+drop table t1;
+create table t1 as select concat(from_days(730669)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2000-07-03 323030302D30372D3033
+drop table t1;
+create table t1 as select concat(curdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_date()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(curtime()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(8) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat('a',20) as c1 limit 0;
+set timestamp=1216359724;
+insert into t1 values (current_date);
+insert into t1 values (current_time);
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2008-07-18 323030382D30372D3138
+08:42:04 30383A34323A3034
+drop table t1;
+create table t1 as select concat(utc_time()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(8) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sec_to_time(2378)));
+hex(concat(sec_to_time(2378)))
+30303A33393A3338
+create table t1 as select concat(sec_to_time(2378)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
+hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')))
+32343A30303A3030
+create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(maketime(10,11,12)));
+hex(concat(maketime(10,11,12)))
+31303A31313A3132
+create table t1 as select concat(maketime(10,11,12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(get_format(DATE,'USA'));
+hex(get_format(DATE,'USA'))
+256D2E25642E2559
+create table t1 as select get_format(DATE,'USA') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(17) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(from_unixtime(1111885200)),4));
+hex(left(concat(from_unixtime(1111885200)),4))
+32303035
+create table t1 as select concat(from_unixtime(1111885200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
+hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')))
+323030332D31322D33312032303A30303A3030
+create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
+hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)))
+323030342D30312D30322031323A30303A3030
+create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2004-01-02 12:00:00
+drop table t1;
+select hex(concat(makedate(2009,1)));
+hex(concat(makedate(2009,1)))
+323030392D30312D3031
+create table t1 as select concat(makedate(2009,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2009-01-01
+drop table t1;
+create table t1 as select concat(now()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_timestamp()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(sysdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(addtime('00:00:00','11:22:33')));
+hex(concat(addtime('00:00:00','11:22:33')))
+31313A32323A3333
+create table t1 as select concat(addtime('00:00:00','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(subtime('23:59:59','11:22:33')));
+hex(concat(subtime('23:59:59','11:22:33')))
+31323A33373A3236
+create table t1 as select concat(subtime('23:59:59','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(elt(1,2,3));
+hex(elt(1,2,3))
+32
+create table t1 as select elt(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(export_set(1,2,3,4,2));
+hex(export_set(1,2,3,4,2))
+323433
+create table t1 as select export_set(1,2,3,4,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(127) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(insert(1133,3,0,22));
+hex(insert(1133,3,0,22))
+313132323333
+create table t1 as select insert(1133,3,0,22) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lcase(123));
+hex(lcase(123))
+313233
+create table t1 as select lcase(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(123,1));
+hex(left(123,1))
+31
+create table t1 as select left(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lower(123));
+hex(lower(123))
+313233
+create table t1 as select lower(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lpad(1,2,0));
+hex(lpad(1,2,0))
+3031
+create table t1 as select lpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ltrim(1));
+hex(ltrim(1))
+31
+create table t1 as select ltrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(mid(1,1,1));
+hex(mid(1,1,1))
+31
+create table t1 as select mid(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(repeat(1,2));
+hex(repeat(1,2))
+3131
+create table t1 as select repeat(1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(replace(1,1,2));
+hex(replace(1,1,2))
+32
+create table t1 as select replace(1,1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(reverse(12));
+hex(reverse(12))
+3231
+create table t1 as select reverse(12) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(right(123,1));
+hex(right(123,1))
+33
+create table t1 as select right(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rpad(1,2,0));
+hex(rpad(1,2,0))
+3130
+create table t1 as select rpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rtrim(1));
+hex(rtrim(1))
+31
+create table t1 as select rtrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(soundex(1));
+hex(soundex(1))
+
+create table t1 as select soundex(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(substring(1,1,1));
+hex(substring(1,1,1))
+31
+create table t1 as select substring(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(trim(1));
+hex(trim(1))
+31
+create table t1 as select trim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ucase(1));
+hex(ucase(1))
+31
+create table t1 as select ucase(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(upper(1));
+hex(upper(1))
+31
+create table t1 as select upper(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varbinary(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat(' ', 64) as a limit 0;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varbinary(64) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("1.1"), ("2.1");
+select a, hex(a) from t1;
+a hex(a)
+1.1 312E31
+2.1 322E31
+update t1 set a= a + 0.1;
+select a, hex(a) from t1;
+a hex(a)
+1.2000000000000002 312E32303030303030303030303030303032
+2.2 322E32
+drop table t1;
+create table t1 (a tinyint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303031 001
+303130 010
+313030 100
+drop table t1;
+create table t1 (a tinyint(4) zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303031 0001
+30303130 0010
+30313030 0100
+drop table t1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E3435
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303031 00001
+3030303130 00010
+3030313030 00100
+3031303030 01000
+3130303030 10000
+drop table t1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(9) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303031 00000001
+3030303030303130 00000010
+3030303030313030 00000100
+3030303031303030 00001000
+3030303130303030 00010000
+drop table t1;
+create table t1 (a int);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303031 0000000001
+30303030303030303130 0000000010
+30303030303030313030 0000000100
+30303030303031303030 0000001000
+30303030303130303030 0000010000
+drop table t1;
+create table t1 (a bigint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303030303030303030303030303031 00000000000000000001
+3030303030303030303030303030303030303130 00000000000000000010
+3030303030303030303030303030303030313030 00000000000000000100
+3030303030303030303030303030303031303030 00000000000000001000
+3030303030303030303030303030303130303030 00000000000000010000
+drop table t1;
+create table t1 (a float);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303030303030303030312E31 0000000001.1
+303030303030303031302E31 0000000010.1
+303030303030303130302E31 0000000100.1
+303030303030313030302E31 0000001000.1
+303030303031303030302E31 0000010000.1
+drop table t1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(22) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303030303030303030303030312E31 00000000000000000001.1
+30303030303030303030303030303030303031302E31 00000000000000000010.1
+30303030303030303030303030303030303130302E31 00000000000000000100.1
+30303030303030303030303030303030313030302E31 00000000000000001000.1
+30303030303030303030303030303031303030302E31 00000000000000010000.1
+drop table t1;
+create table t1 (a year(2));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a year);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+32303031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bit(64));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0000000000000001
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(64) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+select hex(concat(a)) from t1;
+hex(concat(a))
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+select concat(a) from t1;
+concat(a)
+0000-00-00 00:00:00
+2001-02-03 04:05:06
+1980-02-03 04:05:06
+2001-02-03 04:05:06
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D3033
+323030312D30322D3033
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+select hex(concat(a)) from t1;
+hex(concat(a))
+30303A30303A3031
+30313A30323A3033
+select concat(a) from t1;
+concat(a)
+00:00:01
+01:02:03
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(8) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(4) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(3) YES NULL
+select hex(a) from v1;
+hex(a)
+303031
+303130
+313030
+drop table t1;
+drop view v1;
+create table t1 (a tinyint(30) zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(30) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030303030303030303030303030303030303030303031
+303030303030303030303030303030303030303030303030303030303130
+303030303030303030303030303030303030303030303030303030313030
+drop table t1;
+drop view v1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E3435
+drop table t1;
+drop view v1;
+create table t1 (a smallint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(6) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(5) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303031
+3030303130
+3030313030
+3031303030
+3130303030
+drop table t1;
+drop view v1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(9) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(8) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303031
+3030303030303130
+3030303030313030
+3030303031303030
+3030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a int);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(11) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(10) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303031
+30303030303030303130
+30303030303030313030
+30303030303031303030
+30303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a bigint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(20) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(20) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303030303030303030303030303031
+3030303030303030303030303030303030303130
+3030303030303030303030303030303030313030
+3030303030303030303030303030303031303030
+3030303030303030303030303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a float);
+insert into t1 values (123.456);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(12) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030312E31
+303030303030303031302E31
+303030303030303130302E31
+303030303030313030302E31
+303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select concat(a) from t1;
+concat(a)
+123.456
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(22) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(22) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303030303030303030303030312E31
+30303030303030303030303030303030303031302E31
+30303030303030303030303030303030303130302E31
+30303030303030303030303030303030313030302E31
+30303030303030303030303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a year(2));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(2) YES NULL
+select hex(a) from v1;
+hex(a)
+3031
+drop table t1;
+drop view v1;
+create table t1 (a year);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(4) YES NULL
+select hex(a) from v1;
+hex(a)
+32303031
+drop table t1;
+drop view v1;
+create table t1 (a bit(64));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(64) YES NULL
+select hex(a) from v1;
+hex(a)
+0000000000000001
+drop table t1;
+drop view v1;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(19) NO
+select hex(a) from v1;
+hex(a)
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(10) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D3033
+323030312D30322D3033
+drop table t1;
+drop view v1;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(8) YES NULL
+select hex(a) from v1;
+hex(a)
+30303A30303A3031
+30313A30323A3033
+drop table t1;
+drop view v1;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(19) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create function f1 (par1 int) returns int
+begin
+return concat(par1);
+end|
+set @a= f1(1);
+select hex(@a);
+hex(@a)
+1
+select hex(concat(f1(1)));
+hex(concat(f1(1)))
+31
+create table t1 as select f1(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(1)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(11) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 decimal(18,2)) returns decimal(18,2)
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` decimal(18,2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(20) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 float) returns float
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` float DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(12) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 date) returns date
+begin
+return concat(par1);
+end|
+set @a= f1(cast('2001-01-02' as date));
+select hex(@a);
+hex(@a)
+323030312D30312D3032
+select hex(concat(f1(cast('2001-01-02' as date))));
+hex(concat(f1(cast('2001-01-02' as date))))
+323030312D30312D3032
+create table t1 as select f1(cast('2001-01-02' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` date DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(10) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+#
+# End of WL#2649 Number-to-string conversions
+#
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_cp1251.result b/mysql-test/r/ctype_cp1251.result
index bf0bc07c50e..cb932c38a27 100644
--- a/mysql-test/r/ctype_cp1251.result
+++ b/mysql-test/r/ctype_cp1251.result
@@ -81,3 +81,2570 @@ t1 CREATE TABLE `t1` (
`e2` enum('ìëÿêî') DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=cp1251
DROP TABLE t1;
+#
+# Start of 5.5 tests
+#
+#
+# Start of WL#2649 Number-to-string conversions
+#
+select hex(concat(1));
+hex(concat(1))
+31
+create table t1 as select concat(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+31
+drop table t1;
+select hex(concat(18446744073709551615));
+hex(concat(18446744073709551615))
+3138343436373434303733373039353531363135
+create table t1 as select concat(18446744073709551615) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+3138343436373434303733373039353531363135
+drop table t1;
+select hex(concat(1.1));
+hex(concat(1.1))
+312E31
+create table t1 as select concat(1.1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+312E31
+drop table t1;
+select hex(concat('a', 1+2)), charset(concat(1+2));
+hex(concat('a', 1+2)) charset(concat(1+2))
+6133 cp1251
+create table t1 as select concat(1+2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1-2));
+hex(concat(1-2))
+2D31
+create table t1 as select concat(1-2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1*2));
+hex(concat(1*2))
+32
+create table t1 as select concat(1*2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1/2));
+hex(concat(1/2))
+302E35303030
+create table t1 as select concat(1/2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 div 2));
+hex(concat(1 div 2))
+30
+create table t1 as select concat(1 div 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 % 2));
+hex(concat(1 % 2))
+31
+create table t1 as select concat(1 % 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-1));
+hex(concat(-1))
+2D31
+create table t1 as select concat(-1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-(1+2)));
+hex(concat(-(1+2)))
+2D33
+create table t1 as select concat(-(1+2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1|2));
+hex(concat(1|2))
+33
+create table t1 as select concat(1|2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1&2));
+hex(concat(1&2))
+30
+create table t1 as select concat(1&2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_count(12)));
+hex(concat(bit_count(12)))
+32
+create table t1 as select concat(bit_count(12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2<<1));
+hex(concat(2<<1))
+34
+create table t1 as select concat(2<<1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2>>1));
+hex(concat(2>>1))
+31
+create table t1 as select concat(2>>1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(~0));
+hex(concat(~0))
+3138343436373434303733373039353531363135
+create table t1 as select concat(~0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(3^2));
+hex(concat(3^2))
+31
+create table t1 as select concat(3^2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(abs(-2)));
+hex(concat(abs(-2)))
+32
+create table t1 as select concat(abs(-2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(exp(2)),1));
+hex(left(concat(exp(2)),1))
+37
+create table t1 as select concat(exp(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log(2)),1));
+hex(left(concat(log(2)),1))
+30
+create table t1 as select concat(log(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log2(2)),1));
+hex(left(concat(log2(2)),1))
+31
+create table t1 as select concat(log2(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log10(2)),1));
+hex(left(concat(log10(2)),1))
+30
+create table t1 as select concat(log10(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sqrt(2)),1));
+hex(left(concat(sqrt(2)),1))
+31
+create table t1 as select concat(sqrt(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(pow(2,2)),1));
+hex(left(concat(pow(2,2)),1))
+34
+create table t1 as select concat(pow(2,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(acos(0.5)),1));
+hex(left(concat(acos(0.5)),1))
+31
+create table t1 as select concat(acos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(asin(0.5)),1));
+hex(left(concat(asin(0.5)),1))
+30
+create table t1 as select concat(asin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(atan(0.5)),1));
+hex(left(concat(atan(0.5)),1))
+30
+create table t1 as select concat(atan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(cos(0.5)),1));
+hex(left(concat(cos(0.5)),1))
+30
+create table t1 as select concat(cos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sin(0.5)),1));
+hex(left(concat(sin(0.5)),1))
+30
+create table t1 as select concat(sin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(tan(0.5)),1));
+hex(left(concat(tan(0.5)),1))
+30
+create table t1 as select concat(tan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(degrees(0)));
+hex(concat(degrees(0)))
+30
+create table t1 as select concat(degrees(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(radians(0)));
+hex(concat(radians(0)))
+30
+create table t1 as select concat(radians(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ceiling(0.5)));
+hex(concat(ceiling(0.5)))
+31
+create table t1 as select concat(ceiling(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(floor(0.5)));
+hex(concat(floor(0.5)))
+30
+create table t1 as select concat(floor(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(round(0.5)));
+hex(concat(round(0.5)))
+31
+create table t1 as select concat(round(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sign(0.5)));
+hex(concat(sign(0.5)))
+31
+create table t1 as select concat(sign(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(rand()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(length('a')));
+hex(concat(length('a')))
+31
+create table t1 as select concat(length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(char_length('a')));
+hex(concat(char_length('a')))
+31
+create table t1 as select concat(char_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_length('a')));
+hex(concat(bit_length('a')))
+38
+create table t1 as select concat(bit_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coercibility('a')));
+hex(concat(coercibility('a')))
+34
+create table t1 as select concat(coercibility('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(locate('a','a')));
+hex(concat(locate('a','a')))
+31
+create table t1 as select concat(locate('a','a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(field('c','a','b','c')));
+hex(concat(field('c','a','b','c')))
+33
+create table t1 as select concat(field('c','a','b','c')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ascii(61)));
+hex(concat(ascii(61)))
+3534
+create table t1 as select concat(ascii(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ord(61)));
+hex(concat(ord(61)))
+3534
+create table t1 as select concat(ord(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(find_in_set('b','a,b,c,d')));
+hex(concat(find_in_set('b','a,b,c,d')))
+32
+create table t1 as select concat(find_in_set('b','a,b,c,d')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select md5('a'), hex(md5('a'));
+md5('a') hex(md5('a'))
+0cc175b9c0f1b6a831c399e269772661 3063633137356239633066316236613833316333393965323639373732363631
+create table t1 as select md5('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(32) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select old_password('a'), hex(old_password('a'));
+old_password('a') hex(old_password('a'))
+60671c896665c3fa 36303637316338393636363563336661
+create table t1 as select old_password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(16) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select password('a'), hex(password('a'));
+password('a') hex(password('a'))
+*667F407DE7C6AD07358FA38DAED7828A72014B4E 2A36363746343037444537433641443037333538464133384441454437383238413732303134423445
+create table t1 as select password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(41) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha('a'), hex(sha('a'));
+sha('a') hex(sha('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha1('a'), hex(sha1('a'));
+sha1('a') hex(sha1('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha1('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('-1' as signed)));
+hex(concat(cast('-1' as signed)))
+2D31
+create table t1 as select concat(cast('-1' as signed)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('1' as unsigned)));
+hex(concat(cast('1' as unsigned)))
+31
+create table t1 as select concat(cast('1' as unsigned)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast(1/2 as decimal(5,5))));
+hex(concat(cast(1/2 as decimal(5,5))))
+302E3530303030
+create table t1 as select concat(cast(1/2 as decimal(5,5))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as date)));
+hex(concat(cast('2001-01-02 03:04:05' as date)))
+323030312D30312D3032
+create table t1 as select concat(cast('2001-01-02 03:04:05' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as time)));
+hex(concat(cast('2001-01-02 03:04:05' as time)))
+30333A30343A3035
+create table t1 as select concat(cast('2001-01-02 03:04:05' as time)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+03:04:05
+drop table t1;
+select hex(concat(cast('2001-01-02' as datetime)));
+hex(concat(cast('2001-01-02' as datetime)))
+323030312D30312D30322030303A30303A3030
+create table t1 as select concat(cast('2001-01-02' as datetime)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02 00:00:00
+drop table t1;
+select hex(concat(least(1,2)));
+hex(concat(least(1,2)))
+31
+create table t1 as select concat(least(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(greatest(1,2)));
+hex(concat(greatest(1,2)))
+32
+create table t1 as select concat(greatest(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(case when 11 then 22 else 33 end));
+hex(concat(case when 11 then 22 else 33 end))
+3232
+create table t1 as select concat(case when 11 then 22 else 33 end) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coalesce(1,2)));
+hex(concat(coalesce(1,2)))
+31
+create table t1 as select concat(coalesce(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat_ws(1,2,3));
+hex(concat_ws(1,2,3))
+323133
+create table t1 as select concat_ws(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(group_concat(1,2,3));
+hex(group_concat(1,2,3))
+313233
+create table t1 as select group_concat(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` text CHARACTER SET cp1251
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select 1 as c1 union select 'a';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1 order by c1;
+hex(c1)
+31
+61
+drop table t1;
+create table t1 as select concat(last_insert_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(benchmark(0,0)));
+hex(concat(benchmark(0,0)))
+30
+create table t1 as select concat(benchmark(0,0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sleep(0)));
+hex(concat(sleep(0)))
+30
+create table t1 as select concat(sleep(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(is_free_lock('xxxx')));
+hex(concat(is_free_lock('xxxx')))
+31
+create table t1 as select concat(is_free_lock('xxxx')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(is_used_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(release_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(crc32('')));
+hex(concat(crc32('')))
+30
+create table t1 as select concat(crc32('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(uncompressed_length('')));
+hex(concat(uncompressed_length('')))
+30
+create table t1 as select concat(uncompressed_length('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(connection_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_aton('127.1.1.1')));
+hex(concat(inet_aton('127.1.1.1')))
+32313330373732323235
+create table t1 as select concat(inet_aton('127.1.1.1')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_ntoa(2130772225)));
+hex(concat(inet_ntoa(2130772225)))
+3132372E312E312E31
+create table t1 as select concat(inet_ntoa(2130772225)) as c1;
+select * from t1;
+c1
+127.1.1.1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(31) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(row_count()));
+hex(concat(row_count()))
+2D31
+create table t1 as select concat(row_count()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(found_rows()));
+hex(concat(found_rows()))
+30
+create table t1 as select concat(found_rows()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid_short()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select coercibility(uuid()), coercibility(cast('a' as char character set latin1));
+coercibility(uuid()) coercibility(cast('a' as char character set latin1))
+4 2
+select charset(concat(uuid(), cast('a' as char character set latin1)));
+charset(concat(uuid(), cast('a' as char character set latin1)))
+latin1
+create table t1 as select concat(uuid(), cast('a' as char character set latin1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(37) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(master_pos_wait('non-existent',0,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1));
+hex(concat(@a1:=1))
+31
+create table t1 as select concat(@a2:=2) as c1, @a3:=3 as c2;
+select hex(c1) from t1;
+hex(c1)
+32
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT '',
+ `c2` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1;
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET cp1251 DEFAULT NULL,
+ `c2` bigint(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=sqrt(1)));
+hex(concat(@a1:=sqrt(1)))
+31
+create table t1 as select concat(@a2:=sqrt(1)) as c1, @a3:=sqrt(1) as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=sqrt(1);
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1.1));
+hex(concat(@a1:=1.1))
+312E31
+create table t1 as select concat(@a2:=1.1) as c1, @a3:=1.1 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT '',
+ `c2` decimal(2,1) NOT NULL DEFAULT '0.0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1.1;
+select hex(concat(@a2));
+hex(concat(@a2))
+312E31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(83) CHARACTER SET cp1251 DEFAULT NULL,
+ `c2` decimal(65,30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@@ft_max_word_len));
+hex(concat(@@ft_max_word_len))
+3834
+create table t1 as select concat(@@ft_max_word_len) as c1;
+select hex(c1) from t1;
+hex(c1)
+3834
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS TRUE));
+hex(concat('a'='a' IS TRUE))
+31
+create table t1 as select concat('a'='a' IS TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS NOT TRUE));
+hex(concat('a'='a' IS NOT TRUE))
+30
+create table t1 as select concat('a'='a' IS NOT TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NOT 'a'='a'));
+hex(concat(NOT 'a'='a'))
+30
+create table t1 as select concat(NOT 'a'='a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NULL));
+hex(concat('a' IS NULL))
+30
+create table t1 as select concat('a' IS NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NOT NULL));
+hex(concat('a' IS NOT NULL))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' rlike 'a'));
+hex(concat('a' rlike 'a'))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(strcmp('a','b')));
+hex(concat(strcmp('a','b')))
+2D31
+create table t1 as select concat(strcmp('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' like 'a'));
+hex(concat('a' like 'a'))
+31
+create table t1 as select concat('a' like 'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' between 'b' and 'c'));
+hex(concat('a' between 'b' and 'c'))
+30
+create table t1 as select concat('a' between 'b' and 'c') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' in ('a','b')));
+hex(concat('a' in ('a','b')))
+31
+create table t1 as select concat('a' in ('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(interval(23, 1, 15, 17, 30, 44, 200)));
+hex(concat(interval(23, 1, 15, 17, 30, 44, 200)))
+33
+create table t1 as select concat(interval(23, 1, 15, 17, 30, 44, 200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(10), fulltext key(a));
+insert into t1 values ('a');
+select hex(concat(match (a) against ('a'))) from t1;
+hex(concat(match (a) against ('a')))
+30
+create table t2 as select concat(match (a) against ('a')) as a from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+select hex(ifnull(1,'a'));
+hex(ifnull(1,'a'))
+31
+create table t1 as select ifnull(1,'a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1,1)));
+hex(concat(ifnull(1,1)))
+31
+create table t1 as select concat(ifnull(1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1.1,1.1)));
+hex(concat(ifnull(1.1,1.1)))
+312E31
+create table t1 as select concat(ifnull(1.1,1.1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,'b',1));
+hex(if(1,'b',1))
+62
+create table t1 as select if(1,'b',1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,1,'b'));
+hex(if(1,1,'b'))
+31
+create table t1 as select if(1,1,'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(if(1,1,1)));
+hex(concat(if(1,1,1)))
+31
+create table t1 as select concat(if(1,1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(nullif(1,2)));
+hex(concat(nullif(1,2)))
+31
+create table t1 as select concat(nullif(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))))
+31
+create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+32
+create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))))
+32
+create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+30
+create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
+hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))))
+31
+create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
+hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
+hex(concat(IsSimple(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
+hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))))
+30
+create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
+hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))))
+31
+create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
+drop table t1;
+select hex(concat(x(GeomFromText('Point(1 2)'))));
+hex(concat(x(GeomFromText('Point(1 2)'))))
+31
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(y(GeomFromText('Point(1 2)'))));
+hex(concat(y(GeomFromText('Point(1 2)'))))
+32
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
+hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))))
+31
+create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
+hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))))
+31
+create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
+hex(concat(GeometryType(GeomFromText('Point(1 2)'))))
+504F494E54
+create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(AsText(GeomFromText('Point(1 2)'))));
+hex(concat(AsText(GeomFromText('Point(1 2)'))))
+504F494E542831203229
+create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` longtext CHARACTER SET cp1251
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_add(200902, 2)));
+hex(concat(period_add(200902, 2)))
+323030393034
+create table t1 as select concat(period_add(200902, 2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_diff(200902, 200802)));
+hex(concat(period_diff(200902, 200802)))
+3132
+create table t1 as select concat(period_add(200902, 200802)) as c1;
+Warnings:
+Warning 1265 Data truncated for column 'c1' at row 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(to_days(20090224)));
+hex(concat(to_days(20090224)))
+373333383237
+create table t1 as select concat(to_days(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofmonth(20090224)));
+hex(concat(dayofmonth(20090224)))
+3234
+create table t1 as select concat(dayofmonth(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofyear(20090224)));
+hex(concat(dayofyear(20090224)))
+3535
+create table t1 as select concat(dayofyear(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(hour('10:11:12')));
+hex(concat(hour('10:11:12')))
+3130
+create table t1 as select concat(hour('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(minute('10:11:12')));
+hex(concat(minute('10:11:12')))
+3131
+create table t1 as select concat(minute('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(second('10:11:12')));
+hex(concat(second('10:11:12')))
+3132
+create table t1 as select concat(second('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(quarter(20090224)));
+hex(concat(quarter(20090224)))
+31
+create table t1 as select concat(quarter(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(week(20090224)));
+hex(concat(week(20090224)))
+38
+create table t1 as select concat(week(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(yearweek(20090224)));
+hex(concat(yearweek(20090224)))
+323030393038
+create table t1 as select concat(yearweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(year(20090224)));
+hex(concat(year(20090224)))
+32303039
+create table t1 as select concat(year(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(weekday(20090224)));
+hex(concat(weekday(20090224)))
+31
+create table t1 as select concat(weekday(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofweek(20090224)));
+hex(concat(dayofweek(20090224)))
+33
+create table t1 as select concat(dayofweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(unix_timestamp(20090224)));
+hex(concat(unix_timestamp(20090224)))
+31323335343232383030
+create table t1 as select concat(unix_timestamp(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(time_to_sec('10:11:12')));
+hex(concat(time_to_sec('10:11:12')))
+3336363732
+create table t1 as select concat(time_to_sec('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(extract(year from 20090702)));
+hex(concat(extract(year from 20090702)))
+32303039
+create table t1 as select concat(extract(year from 20090702)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(microsecond('12:00:00.123456')));
+hex(concat(microsecond('12:00:00.123456')))
+313233343536
+create table t1 as select concat(microsecond('12:00:00.123456')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(month(20090224)));
+hex(concat(month(20090224)))
+32
+create table t1 as select concat(month(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(last_day('2003-02-05')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2003-02-28 323030332D30322D3238
+drop table t1;
+create table t1 as select concat(from_days(730669)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2000-07-03 323030302D30372D3033
+drop table t1;
+create table t1 as select concat(curdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_date()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(curtime()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat('a',20) as c1 limit 0;
+set timestamp=1216359724;
+insert into t1 values (current_date);
+insert into t1 values (current_time);
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2008-07-18 323030382D30372D3138
+08:42:04 30383A34323A3034
+drop table t1;
+create table t1 as select concat(utc_time()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sec_to_time(2378)));
+hex(concat(sec_to_time(2378)))
+30303A33393A3338
+create table t1 as select concat(sec_to_time(2378)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
+hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')))
+32343A30303A3030
+create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(maketime(10,11,12)));
+hex(concat(maketime(10,11,12)))
+31303A31313A3132
+create table t1 as select concat(maketime(10,11,12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(get_format(DATE,'USA'));
+hex(get_format(DATE,'USA'))
+256D2E25642E2559
+create table t1 as select get_format(DATE,'USA') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(17) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(from_unixtime(1111885200)),4));
+hex(left(concat(from_unixtime(1111885200)),4))
+32303035
+create table t1 as select concat(from_unixtime(1111885200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
+hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')))
+323030332D31322D33312032303A30303A3030
+create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
+hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)))
+323030342D30312D30322031323A30303A3030
+create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2004-01-02 12:00:00
+drop table t1;
+select hex(concat(makedate(2009,1)));
+hex(concat(makedate(2009,1)))
+323030392D30312D3031
+create table t1 as select concat(makedate(2009,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2009-01-01
+drop table t1;
+create table t1 as select concat(now()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_timestamp()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(sysdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(addtime('00:00:00','11:22:33')));
+hex(concat(addtime('00:00:00','11:22:33')))
+31313A32323A3333
+create table t1 as select concat(addtime('00:00:00','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(subtime('23:59:59','11:22:33')));
+hex(concat(subtime('23:59:59','11:22:33')))
+31323A33373A3236
+create table t1 as select concat(subtime('23:59:59','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(elt(1,2,3));
+hex(elt(1,2,3))
+32
+create table t1 as select elt(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(export_set(1,2,3,4,2));
+hex(export_set(1,2,3,4,2))
+323433
+create table t1 as select export_set(1,2,3,4,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(127) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(insert(1133,3,0,22));
+hex(insert(1133,3,0,22))
+313132323333
+create table t1 as select insert(1133,3,0,22) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lcase(123));
+hex(lcase(123))
+313233
+create table t1 as select lcase(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(123,1));
+hex(left(123,1))
+31
+create table t1 as select left(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lower(123));
+hex(lower(123))
+313233
+create table t1 as select lower(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lpad(1,2,0));
+hex(lpad(1,2,0))
+3031
+create table t1 as select lpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ltrim(1));
+hex(ltrim(1))
+31
+create table t1 as select ltrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(mid(1,1,1));
+hex(mid(1,1,1))
+31
+create table t1 as select mid(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(repeat(1,2));
+hex(repeat(1,2))
+3131
+create table t1 as select repeat(1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(replace(1,1,2));
+hex(replace(1,1,2))
+32
+create table t1 as select replace(1,1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(reverse(12));
+hex(reverse(12))
+3231
+create table t1 as select reverse(12) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(right(123,1));
+hex(right(123,1))
+33
+create table t1 as select right(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rpad(1,2,0));
+hex(rpad(1,2,0))
+3130
+create table t1 as select rpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rtrim(1));
+hex(rtrim(1))
+31
+create table t1 as select rtrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(soundex(1));
+hex(soundex(1))
+
+create table t1 as select soundex(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(substring(1,1,1));
+hex(substring(1,1,1))
+31
+create table t1 as select substring(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(trim(1));
+hex(trim(1))
+31
+create table t1 as select trim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ucase(1));
+hex(ucase(1))
+31
+create table t1 as select ucase(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(upper(1));
+hex(upper(1))
+31
+create table t1 as select upper(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat(' ', 64) as a limit 0;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(64) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("1.1"), ("2.1");
+select a, hex(a) from t1;
+a hex(a)
+1.1 312E31
+2.1 322E31
+update t1 set a= a + 0.1;
+select a, hex(a) from t1;
+a hex(a)
+1.2000000000000002 312E32303030303030303030303030303032
+2.2 322E32
+drop table t1;
+create table t1 (a tinyint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303031 001
+303130 010
+313030 100
+drop table t1;
+create table t1 (a tinyint(4) zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303031 0001
+30303130 0010
+30313030 0100
+drop table t1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E3435
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(6) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303031 00001
+3030303130 00010
+3030313030 00100
+3031303030 01000
+3130303030 10000
+drop table t1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(9) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303031 00000001
+3030303030303130 00000010
+3030303030313030 00000100
+3030303031303030 00001000
+3030303130303030 00010000
+drop table t1;
+create table t1 (a int);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(11) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303031 0000000001
+30303030303030303130 0000000010
+30303030303030313030 0000000100
+30303030303031303030 0000001000
+30303030303130303030 0000010000
+drop table t1;
+create table t1 (a bigint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(20) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303030303030303030303030303031 00000000000000000001
+3030303030303030303030303030303030303130 00000000000000000010
+3030303030303030303030303030303030313030 00000000000000000100
+3030303030303030303030303030303031303030 00000000000000001000
+3030303030303030303030303030303130303030 00000000000000010000
+drop table t1;
+create table t1 (a float);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303030303030303030312E31 0000000001.1
+303030303030303031302E31 0000000010.1
+303030303030303130302E31 0000000100.1
+303030303030313030302E31 0000001000.1
+303030303031303030302E31 0000010000.1
+drop table t1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(22) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303030303030303030303030312E31 00000000000000000001.1
+30303030303030303030303030303030303031302E31 00000000000000000010.1
+30303030303030303030303030303030303130302E31 00000000000000000100.1
+30303030303030303030303030303030313030302E31 00000000000000001000.1
+30303030303030303030303030303031303030302E31 00000000000000010000.1
+drop table t1;
+create table t1 (a year(2));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(2) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a year);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+32303031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bit(64));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0000000000000001
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(64) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+select hex(concat(a)) from t1;
+hex(concat(a))
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+select concat(a) from t1;
+concat(a)
+0000-00-00 00:00:00
+2001-02-03 04:05:06
+1980-02-03 04:05:06
+2001-02-03 04:05:06
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) CHARACTER SET cp1251 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D3033
+323030312D30322D3033
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(10) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+select hex(concat(a)) from t1;
+hex(concat(a))
+30303A30303A3031
+30313A30323A3033
+select concat(a) from t1;
+concat(a)
+00:00:01
+01:02:03
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(8) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) CHARACTER SET cp1251 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(3) YES NULL
+select hex(a) from v1;
+hex(a)
+303031
+303130
+313030
+drop table t1;
+drop view v1;
+create table t1 (a tinyint(30) zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(30) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030303030303030303030303030303030303030303031
+303030303030303030303030303030303030303030303030303030303130
+303030303030303030303030303030303030303030303030303030313030
+drop table t1;
+drop view v1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E3435
+drop table t1;
+drop view v1;
+create table t1 (a smallint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(6) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(5) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303031
+3030303130
+3030313030
+3031303030
+3130303030
+drop table t1;
+drop view v1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(9) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303031
+3030303030303130
+3030303030313030
+3030303031303030
+3030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a int);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(11) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303031
+30303030303030303130
+30303030303030313030
+30303030303031303030
+30303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a bigint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303030303030303030303030303031
+3030303030303030303030303030303030303130
+3030303030303030303030303030303030313030
+3030303030303030303030303030303031303030
+3030303030303030303030303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a float);
+insert into t1 values (123.456);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030312E31
+303030303030303031302E31
+303030303030303130302E31
+303030303030313030302E31
+303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select concat(a) from t1;
+concat(a)
+123.456
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303030303030303030303030312E31
+30303030303030303030303030303030303031302E31
+30303030303030303030303030303030303130302E31
+30303030303030303030303030303030313030302E31
+30303030303030303030303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a year(2));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(2) YES NULL
+select hex(a) from v1;
+hex(a)
+3031
+drop table t1;
+drop view v1;
+create table t1 (a year);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+32303031
+drop table t1;
+drop view v1;
+create table t1 (a bit(64));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(64) YES NULL
+select hex(a) from v1;
+hex(a)
+0000000000000001
+drop table t1;
+drop view v1;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) NO
+select hex(a) from v1;
+hex(a)
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D3033
+323030312D30322D3033
+drop table t1;
+drop view v1;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+30303A30303A3031
+30313A30323A3033
+drop table t1;
+drop view v1;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create function f1 (par1 int) returns int
+begin
+return concat(par1);
+end|
+set @a= f1(1);
+select hex(@a);
+hex(@a)
+1
+select hex(concat(f1(1)));
+hex(concat(f1(1)))
+31
+create table t1 as select f1(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(1)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(11) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 decimal(18,2)) returns decimal(18,2)
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` decimal(18,2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(20) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 float) returns float
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` float DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(12) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 date) returns date
+begin
+return concat(par1);
+end|
+set @a= f1(cast('2001-01-02' as date));
+select hex(@a);
+hex(@a)
+323030312D30312D3032
+select hex(concat(f1(cast('2001-01-02' as date))));
+hex(concat(f1(cast('2001-01-02' as date))))
+323030312D30312D3032
+create table t1 as select f1(cast('2001-01-02' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` date DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(10) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+#
+# End of WL#2649 Number-to-string conversions
+#
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_cp932_binlog_stm.result b/mysql-test/r/ctype_cp932_binlog_stm.result
index 47ff51a9c44..c96079bb46a 100644
--- a/mysql-test/r/ctype_cp932_binlog_stm.result
+++ b/mysql-test/r/ctype_cp932_binlog_stm.result
@@ -387,6 +387,19110 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
code a
+#
+# WL#3090 Japanese Character Set adjustments
+# Test cp932->Unicode conversion
+#
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+HEX(a) b
+8140 E38080
+8141 E38081
+8142 E38082
+8143 EFBC8C
+8144 EFBC8E
+8145 E383BB
+8146 EFBC9A
+8147 EFBC9B
+8148 EFBC9F
+8149 EFBC81
+814A E3829B
+814B E3829C
+814C C2B4
+814D EFBD80
+814E C2A8
+814F EFBCBE
+8150 EFBFA3
+8151 EFBCBF
+8152 E383BD
+8153 E383BE
+8154 E3829D
+8155 E3829E
+8156 E38083
+8157 E4BB9D
+8158 E38085
+8159 E38086
+815A E38087
+815B E383BC
+815C E28095
+815D E28090
+815E EFBC8F
+815F EFBCBC
+8160 EFBD9E
+8161 E288A5
+8162 EFBD9C
+8163 E280A6
+8164 E280A5
+8165 E28098
+8166 E28099
+8167 E2809C
+8168 E2809D
+8169 EFBC88
+816A EFBC89
+816B E38094
+816C E38095
+816D EFBCBB
+816E EFBCBD
+816F EFBD9B
+8170 EFBD9D
+8171 E38088
+8172 E38089
+8173 E3808A
+8174 E3808B
+8175 E3808C
+8176 E3808D
+8177 E3808E
+8178 E3808F
+8179 E38090
+817A E38091
+817B EFBC8B
+817C EFBC8D
+817D C2B1
+817E C397
+8180 C3B7
+8181 EFBC9D
+8182 E289A0
+8183 EFBC9C
+8184 EFBC9E
+8185 E289A6
+8186 E289A7
+8187 E2889E
+8188 E288B4
+8189 E29982
+818A E29980
+818B C2B0
+818C E280B2
+818D E280B3
+818E E28483
+818F EFBFA5
+8190 EFBC84
+8191 EFBFA0
+8192 EFBFA1
+8193 EFBC85
+8194 EFBC83
+8195 EFBC86
+8196 EFBC8A
+8197 EFBCA0
+8198 C2A7
+8199 E29886
+819A E29885
+819B E2978B
+819C E2978F
+819D E2978E
+819E E29787
+819F E29786
+81A0 E296A1
+81A1 E296A0
+81A2 E296B3
+81A3 E296B2
+81A4 E296BD
+81A5 E296BC
+81A6 E280BB
+81A7 E38092
+81A8 E28692
+81A9 E28690
+81AA E28691
+81AB E28693
+81AC E38093
+81B8 E28888
+81B9 E2888B
+81BA E28A86
+81BB E28A87
+81BC E28A82
+81BD E28A83
+81BE E288AA
+81BF E288A9
+81C8 E288A7
+81C9 E288A8
+81CA EFBFA2
+81CB E28792
+81CC E28794
+81CD E28880
+81CE E28883
+81DA E288A0
+81DB E28AA5
+81DC E28C92
+81DD E28882
+81DE E28887
+81DF E289A1
+81E0 E28992
+81E1 E289AA
+81E2 E289AB
+81E3 E2889A
+81E4 E288BD
+81E5 E2889D
+81E6 E288B5
+81E7 E288AB
+81E8 E288AC
+81F0 E284AB
+81F1 E280B0
+81F2 E299AF
+81F3 E299AD
+81F4 E299AA
+81F5 E280A0
+81F6 E280A1
+81F7 C2B6
+81FC E297AF
+824F EFBC90
+8250 EFBC91
+8251 EFBC92
+8252 EFBC93
+8253 EFBC94
+8254 EFBC95
+8255 EFBC96
+8256 EFBC97
+8257 EFBC98
+8258 EFBC99
+8260 EFBCA1
+8261 EFBCA2
+8262 EFBCA3
+8263 EFBCA4
+8264 EFBCA5
+8265 EFBCA6
+8266 EFBCA7
+8267 EFBCA8
+8268 EFBCA9
+8269 EFBCAA
+826A EFBCAB
+826B EFBCAC
+826C EFBCAD
+826D EFBCAE
+826E EFBCAF
+826F EFBCB0
+8270 EFBCB1
+8271 EFBCB2
+8272 EFBCB3
+8273 EFBCB4
+8274 EFBCB5
+8275 EFBCB6
+8276 EFBCB7
+8277 EFBCB8
+8278 EFBCB9
+8279 EFBCBA
+8281 EFBD81
+8282 EFBD82
+8283 EFBD83
+8284 EFBD84
+8285 EFBD85
+8286 EFBD86
+8287 EFBD87
+8288 EFBD88
+8289 EFBD89
+828A EFBD8A
+828B EFBD8B
+828C EFBD8C
+828D EFBD8D
+828E EFBD8E
+828F EFBD8F
+8290 EFBD90
+8291 EFBD91
+8292 EFBD92
+8293 EFBD93
+8294 EFBD94
+8295 EFBD95
+8296 EFBD96
+8297 EFBD97
+8298 EFBD98
+8299 EFBD99
+829A EFBD9A
+829F E38181
+82A0 E38182
+82A1 E38183
+82A2 E38184
+82A3 E38185
+82A4 E38186
+82A5 E38187
+82A6 E38188
+82A7 E38189
+82A8 E3818A
+82A9 E3818B
+82AA E3818C
+82AB E3818D
+82AC E3818E
+82AD E3818F
+82AE E38190
+82AF E38191
+82B0 E38192
+82B1 E38193
+82B2 E38194
+82B3 E38195
+82B4 E38196
+82B5 E38197
+82B6 E38198
+82B7 E38199
+82B8 E3819A
+82B9 E3819B
+82BA E3819C
+82BB E3819D
+82BC E3819E
+82BD E3819F
+82BE E381A0
+82BF E381A1
+82C0 E381A2
+82C1 E381A3
+82C2 E381A4
+82C3 E381A5
+82C4 E381A6
+82C5 E381A7
+82C6 E381A8
+82C7 E381A9
+82C8 E381AA
+82C9 E381AB
+82CA E381AC
+82CB E381AD
+82CC E381AE
+82CD E381AF
+82CE E381B0
+82CF E381B1
+82D0 E381B2
+82D1 E381B3
+82D2 E381B4
+82D3 E381B5
+82D4 E381B6
+82D5 E381B7
+82D6 E381B8
+82D7 E381B9
+82D8 E381BA
+82D9 E381BB
+82DA E381BC
+82DB E381BD
+82DC E381BE
+82DD E381BF
+82DE E38280
+82DF E38281
+82E0 E38282
+82E1 E38283
+82E2 E38284
+82E3 E38285
+82E4 E38286
+82E5 E38287
+82E6 E38288
+82E7 E38289
+82E8 E3828A
+82E9 E3828B
+82EA E3828C
+82EB E3828D
+82EC E3828E
+82ED E3828F
+82EE E38290
+82EF E38291
+82F0 E38292
+82F1 E38293
+8340 E382A1
+8341 E382A2
+8342 E382A3
+8343 E382A4
+8344 E382A5
+8345 E382A6
+8346 E382A7
+8347 E382A8
+8348 E382A9
+8349 E382AA
+834A E382AB
+834B E382AC
+834C E382AD
+834D E382AE
+834E E382AF
+834F E382B0
+8350 E382B1
+8351 E382B2
+8352 E382B3
+8353 E382B4
+8354 E382B5
+8355 E382B6
+8356 E382B7
+8357 E382B8
+8358 E382B9
+8359 E382BA
+835A E382BB
+835B E382BC
+835C E382BD
+835D E382BE
+835E E382BF
+835F E38380
+8360 E38381
+8361 E38382
+8362 E38383
+8363 E38384
+8364 E38385
+8365 E38386
+8366 E38387
+8367 E38388
+8368 E38389
+8369 E3838A
+836A E3838B
+836B E3838C
+836C E3838D
+836D E3838E
+836E E3838F
+836F E38390
+8370 E38391
+8371 E38392
+8372 E38393
+8373 E38394
+8374 E38395
+8375 E38396
+8376 E38397
+8377 E38398
+8378 E38399
+8379 E3839A
+837A E3839B
+837B E3839C
+837C E3839D
+837D E3839E
+837E E3839F
+8380 E383A0
+8381 E383A1
+8382 E383A2
+8383 E383A3
+8384 E383A4
+8385 E383A5
+8386 E383A6
+8387 E383A7
+8388 E383A8
+8389 E383A9
+838A E383AA
+838B E383AB
+838C E383AC
+838D E383AD
+838E E383AE
+838F E383AF
+8390 E383B0
+8391 E383B1
+8392 E383B2
+8393 E383B3
+8394 E383B4
+8395 E383B5
+8396 E383B6
+839F CE91
+83A0 CE92
+83A1 CE93
+83A2 CE94
+83A3 CE95
+83A4 CE96
+83A5 CE97
+83A6 CE98
+83A7 CE99
+83A8 CE9A
+83A9 CE9B
+83AA CE9C
+83AB CE9D
+83AC CE9E
+83AD CE9F
+83AE CEA0
+83AF CEA1
+83B0 CEA3
+83B1 CEA4
+83B2 CEA5
+83B3 CEA6
+83B4 CEA7
+83B5 CEA8
+83B6 CEA9
+83BF CEB1
+83C0 CEB2
+83C1 CEB3
+83C2 CEB4
+83C3 CEB5
+83C4 CEB6
+83C5 CEB7
+83C6 CEB8
+83C7 CEB9
+83C8 CEBA
+83C9 CEBB
+83CA CEBC
+83CB CEBD
+83CC CEBE
+83CD CEBF
+83CE CF80
+83CF CF81
+83D0 CF83
+83D1 CF84
+83D2 CF85
+83D3 CF86
+83D4 CF87
+83D5 CF88
+83D6 CF89
+8440 D090
+8441 D091
+8442 D092
+8443 D093
+8444 D094
+8445 D095
+8446 D081
+8447 D096
+8448 D097
+8449 D098
+844A D099
+844B D09A
+844C D09B
+844D D09C
+844E D09D
+844F D09E
+8450 D09F
+8451 D0A0
+8452 D0A1
+8453 D0A2
+8454 D0A3
+8455 D0A4
+8456 D0A5
+8457 D0A6
+8458 D0A7
+8459 D0A8
+845A D0A9
+845B D0AA
+845C D0AB
+845D D0AC
+845E D0AD
+845F D0AE
+8460 D0AF
+8470 D0B0
+8471 D0B1
+8472 D0B2
+8473 D0B3
+8474 D0B4
+8475 D0B5
+8476 D191
+8477 D0B6
+8478 D0B7
+8479 D0B8
+847A D0B9
+847B D0BA
+847C D0BB
+847D D0BC
+847E D0BD
+8480 D0BE
+8481 D0BF
+8482 D180
+8483 D181
+8484 D182
+8485 D183
+8486 D184
+8487 D185
+8488 D186
+8489 D187
+848A D188
+848B D189
+848C D18A
+848D D18B
+848E D18C
+848F D18D
+8490 D18E
+8491 D18F
+849F E29480
+84A0 E29482
+84A1 E2948C
+84A2 E29490
+84A3 E29498
+84A4 E29494
+84A5 E2949C
+84A6 E294AC
+84A7 E294A4
+84A8 E294B4
+84A9 E294BC
+84AA E29481
+84AB E29483
+84AC E2948F
+84AD E29493
+84AE E2949B
+84AF E29497
+84B0 E294A3
+84B1 E294B3
+84B2 E294AB
+84B3 E294BB
+84B4 E2958B
+84B5 E294A0
+84B6 E294AF
+84B7 E294A8
+84B8 E294B7
+84B9 E294BF
+84BA E2949D
+84BB E294B0
+84BC E294A5
+84BD E294B8
+84BE E29582
+8740 E291A0
+8741 E291A1
+8742 E291A2
+8743 E291A3
+8744 E291A4
+8745 E291A5
+8746 E291A6
+8747 E291A7
+8748 E291A8
+8749 E291A9
+874A E291AA
+874B E291AB
+874C E291AC
+874D E291AD
+874E E291AE
+874F E291AF
+8750 E291B0
+8751 E291B1
+8752 E291B2
+8753 E291B3
+8754 E285A0
+8755 E285A1
+8756 E285A2
+8757 E285A3
+8758 E285A4
+8759 E285A5
+875A E285A6
+875B E285A7
+875C E285A8
+875D E285A9
+875F E38D89
+8760 E38C94
+8761 E38CA2
+8762 E38D8D
+8763 E38C98
+8764 E38CA7
+8765 E38C83
+8766 E38CB6
+8767 E38D91
+8768 E38D97
+8769 E38C8D
+876A E38CA6
+876B E38CA3
+876C E38CAB
+876D E38D8A
+876E E38CBB
+876F E38E9C
+8770 E38E9D
+8771 E38E9E
+8772 E38E8E
+8773 E38E8F
+8774 E38F84
+8775 E38EA1
+877E E38DBB
+8780 E3809D
+8781 E3809F
+8782 E28496
+8783 E38F8D
+8784 E284A1
+8785 E38AA4
+8786 E38AA5
+8787 E38AA6
+8788 E38AA7
+8789 E38AA8
+878A E388B1
+878B E388B2
+878C E388B9
+878D E38DBE
+878E E38DBD
+878F E38DBC
+8790 E28992
+8791 E289A1
+8792 E288AB
+8793 E288AE
+8794 E28891
+8795 E2889A
+8796 E28AA5
+8797 E288A0
+8798 E2889F
+8799 E28ABF
+879A E288B5
+879B E288A9
+879C E288AA
+889F E4BA9C
+88A0 E59496
+88A1 E5A883
+88A2 E998BF
+88A3 E59380
+88A4 E6849B
+88A5 E68CA8
+88A6 E5A7B6
+88A7 E980A2
+88A8 E891B5
+88A9 E88C9C
+88AA E7A990
+88AB E682AA
+88AC E68FA1
+88AD E6B8A5
+88AE E697AD
+88AF E891A6
+88B0 E88AA6
+88B1 E9AFB5
+88B2 E6A293
+88B3 E59CA7
+88B4 E696A1
+88B5 E689B1
+88B6 E5AE9B
+88B7 E5A790
+88B8 E899BB
+88B9 E9A3B4
+88BA E7B5A2
+88BB E7B6BE
+88BC E9AE8E
+88BD E68896
+88BE E7B29F
+88BF E8A2B7
+88C0 E5AE89
+88C1 E5BAB5
+88C2 E68C89
+88C3 E69A97
+88C4 E6A188
+88C5 E99787
+88C6 E99E8D
+88C7 E69D8F
+88C8 E4BBA5
+88C9 E4BC8A
+88CA E4BD8D
+88CB E4BE9D
+88CC E58189
+88CD E59BB2
+88CE E5A4B7
+88CF E5A794
+88D0 E5A881
+88D1 E5B089
+88D2 E6839F
+88D3 E6848F
+88D4 E685B0
+88D5 E69893
+88D6 E6A485
+88D7 E782BA
+88D8 E7958F
+88D9 E795B0
+88DA E7A7BB
+88DB E7B6AD
+88DC E7B7AF
+88DD E88383
+88DE E8908E
+88DF E8A1A3
+88E0 E8AC82
+88E1 E98195
+88E2 E981BA
+88E3 E58CBB
+88E4 E4BA95
+88E5 E4BAA5
+88E6 E59F9F
+88E7 E882B2
+88E8 E98381
+88E9 E7A3AF
+88EA E4B880
+88EB E5A3B1
+88EC E6BAA2
+88ED E980B8
+88EE E7A8B2
+88EF E88CA8
+88F0 E88A8B
+88F1 E9B0AF
+88F2 E58581
+88F3 E58DB0
+88F4 E592BD
+88F5 E593A1
+88F6 E59BA0
+88F7 E5A7BB
+88F8 E5BC95
+88F9 E9A3B2
+88FA E6B7AB
+88FB E883A4
+88FC E894AD
+8940 E999A2
+8941 E999B0
+8942 E99AA0
+8943 E99FBB
+8944 E5908B
+8945 E58FB3
+8946 E5AE87
+8947 E7838F
+8948 E7BEBD
+8949 E8BF82
+894A E99BA8
+894B E58DAF
+894C E9B59C
+894D E7AABA
+894E E4B891
+894F E7A293
+8950 E887BC
+8951 E6B8A6
+8952 E59898
+8953 E59484
+8954 E6AC9D
+8955 E8949A
+8956 E9B0BB
+8957 E5A7A5
+8958 E58EA9
+8959 E6B5A6
+895A E7939C
+895B E9968F
+895C E59982
+895D E4BA91
+895E E9818B
+895F E99BB2
+8960 E88D8F
+8961 E9A48C
+8962 E58FA1
+8963 E596B6
+8964 E5ACB0
+8965 E5BDB1
+8966 E698A0
+8967 E69BB3
+8968 E6A084
+8969 E6B0B8
+896A E6B3B3
+896B E6B4A9
+896C E7919B
+896D E79B88
+896E E7A98E
+896F E9A0B4
+8970 E88BB1
+8971 E8A19B
+8972 E8A9A0
+8973 E98BAD
+8974 E6B6B2
+8975 E796AB
+8976 E79B8A
+8977 E9A785
+8978 E682A6
+8979 E8AC81
+897A E8B68A
+897B E996B2
+897C E6A68E
+897D E58EAD
+897E E58686
+8980 E59C92
+8981 E5A0B0
+8982 E5A584
+8983 E5AEB4
+8984 E5BBB6
+8985 E680A8
+8986 E68EA9
+8987 E68FB4
+8988 E6B2BF
+8989 E6BC94
+898A E7828E
+898B E78494
+898C E78599
+898D E78795
+898E E78CBF
+898F E7B881
+8990 E889B6
+8991 E88B91
+8992 E89697
+8993 E981A0
+8994 E9899B
+8995 E9B49B
+8996 E5A1A9
+8997 E696BC
+8998 E6B19A
+8999 E794A5
+899A E587B9
+899B E5A4AE
+899C E5A5A5
+899D E5BE80
+899E E5BF9C
+899F E68ABC
+89A0 E697BA
+89A1 E6A8AA
+89A2 E6ACA7
+89A3 E6AEB4
+89A4 E78E8B
+89A5 E7BF81
+89A6 E8A596
+89A7 E9B4AC
+89A8 E9B48E
+89A9 E9BB84
+89AA E5B2A1
+89AB E6B296
+89AC E88DBB
+89AD E58484
+89AE E5B18B
+89AF E686B6
+89B0 E88786
+89B1 E6A1B6
+89B2 E789A1
+89B3 E4B999
+89B4 E4BFBA
+89B5 E58DB8
+89B6 E681A9
+89B7 E6B8A9
+89B8 E7A98F
+89B9 E99FB3
+89BA E4B88B
+89BB E58C96
+89BC E4BBAE
+89BD E4BD95
+89BE E4BCBD
+89BF E4BEA1
+89C0 E4BDB3
+89C1 E58AA0
+89C2 E58FAF
+89C3 E59889
+89C4 E5A48F
+89C5 E5AB81
+89C6 E5AEB6
+89C7 E5AFA1
+89C8 E7A791
+89C9 E69A87
+89CA E69E9C
+89CB E69EB6
+89CC E6AD8C
+89CD E6B2B3
+89CE E781AB
+89CF E78F82
+89D0 E7A68D
+89D1 E7A6BE
+89D2 E7A8BC
+89D3 E7AE87
+89D4 E88AB1
+89D5 E88B9B
+89D6 E88C84
+89D7 E88DB7
+89D8 E88FAF
+89D9 E88F93
+89DA E89DA6
+89DB E8AAB2
+89DC E598A9
+89DD E8B2A8
+89DE E8BFA6
+89DF E9818E
+89E0 E99C9E
+89E1 E89A8A
+89E2 E4BF84
+89E3 E5B3A8
+89E4 E68891
+89E5 E78999
+89E6 E794BB
+89E7 E887A5
+89E8 E88ABD
+89E9 E89BBE
+89EA E8B380
+89EB E99B85
+89EC E9A493
+89ED E9A795
+89EE E4BB8B
+89EF E4BC9A
+89F0 E8A7A3
+89F1 E59B9E
+89F2 E5A18A
+89F3 E5A38A
+89F4 E5BBBB
+89F5 E5BFAB
+89F6 E680AA
+89F7 E68294
+89F8 E681A2
+89F9 E68790
+89FA E68892
+89FB E68B90
+89FC E694B9
+8A40 E9AD81
+8A41 E699A6
+8A42 E6A2B0
+8A43 E6B5B7
+8A44 E781B0
+8A45 E7958C
+8A46 E79A86
+8A47 E7B5B5
+8A48 E88AA5
+8A49 E89FB9
+8A4A E9968B
+8A4B E99A8E
+8A4C E8B29D
+8A4D E587B1
+8A4E E58ABE
+8A4F E5A496
+8A50 E592B3
+8A51 E5AEB3
+8A52 E5B496
+8A53 E685A8
+8A54 E6A682
+8A55 E6B6AF
+8A56 E7A28D
+8A57 E8938B
+8A58 E8A197
+8A59 E8A9B2
+8A5A E98EA7
+8A5B E9AAB8
+8A5C E6B5AC
+8A5D E9A6A8
+8A5E E89B99
+8A5F E59EA3
+8A60 E69FBF
+8A61 E89B8E
+8A62 E9888E
+8A63 E58A83
+8A64 E59A87
+8A65 E59084
+8A66 E5BB93
+8A67 E68BA1
+8A68 E692B9
+8A69 E6A0BC
+8A6A E6A0B8
+8A6B E6AEBB
+8A6C E78DB2
+8A6D E7A2BA
+8A6E E7A9AB
+8A6F E8A69A
+8A70 E8A792
+8A71 E8B5AB
+8A72 E8BC83
+8A73 E983AD
+8A74 E996A3
+8A75 E99A94
+8A76 E99DA9
+8A77 E5ADA6
+8A78 E5B2B3
+8A79 E6A5BD
+8A7A E9A18D
+8A7B E9A18E
+8A7C E68E9B
+8A7D E7ACA0
+8A7E E6A8AB
+8A80 E6A9BF
+8A81 E6A2B6
+8A82 E9B08D
+8A83 E6BD9F
+8A84 E589B2
+8A85 E5969D
+8A86 E681B0
+8A87 E68BAC
+8A88 E6B4BB
+8A89 E6B887
+8A8A E6BB91
+8A8B E8919B
+8A8C E8A490
+8A8D E8BD84
+8A8E E4B894
+8A8F E9B0B9
+8A90 E58FB6
+8A91 E6A49B
+8A92 E6A8BA
+8A93 E99E84
+8A94 E6A0AA
+8A95 E5859C
+8A96 E7AB83
+8A97 E892B2
+8A98 E9879C
+8A99 E98E8C
+8A9A E5999B
+8A9B E9B4A8
+8A9C E6A0A2
+8A9D E88C85
+8A9E E890B1
+8A9F E7B2A5
+8AA0 E58888
+8AA1 E88B85
+8AA2 E793A6
+8AA3 E4B9BE
+8AA4 E4BE83
+8AA5 E586A0
+8AA6 E5AF92
+8AA7 E5888A
+8AA8 E58B98
+8AA9 E58BA7
+8AAA E5B7BB
+8AAB E5969A
+8AAC E5A0AA
+8AAD E5A7A6
+8AAE E5AE8C
+8AAF E5AE98
+8AB0 E5AF9B
+8AB1 E5B9B2
+8AB2 E5B9B9
+8AB3 E682A3
+8AB4 E6849F
+8AB5 E685A3
+8AB6 E686BE
+8AB7 E68F9B
+8AB8 E695A2
+8AB9 E69F91
+8ABA E6A193
+8ABB E6A3BA
+8ABC E6ACBE
+8ABD E6AD93
+8ABE E6B197
+8ABF E6BCA2
+8AC0 E6BE97
+8AC1 E6BD85
+8AC2 E792B0
+8AC3 E79498
+8AC4 E79BA3
+8AC5 E79C8B
+8AC6 E7ABBF
+8AC7 E7AEA1
+8AC8 E7B0A1
+8AC9 E7B7A9
+8ACA E7BCB6
+8ACB E7BFB0
+8ACC E8829D
+8ACD E889A6
+8ACE E88E9E
+8ACF E8A6B3
+8AD0 E8AB8C
+8AD1 E8B2AB
+8AD2 E98284
+8AD3 E99191
+8AD4 E99693
+8AD5 E99691
+8AD6 E996A2
+8AD7 E999A5
+8AD8 E99F93
+8AD9 E9A4A8
+8ADA E88898
+8ADB E4B8B8
+8ADC E590AB
+8ADD E5B2B8
+8ADE E5B78C
+8ADF E78EA9
+8AE0 E7998C
+8AE1 E79CBC
+8AE2 E5B2A9
+8AE3 E7BFAB
+8AE4 E8B48B
+8AE5 E99B81
+8AE6 E9A091
+8AE7 E9A194
+8AE8 E9A198
+8AE9 E4BC81
+8AEA E4BC8E
+8AEB E58DB1
+8AEC E5969C
+8AED E599A8
+8AEE E59FBA
+8AEF E5A587
+8AF0 E5AC89
+8AF1 E5AF84
+8AF2 E5B290
+8AF3 E5B88C
+8AF4 E5B9BE
+8AF5 E5BF8C
+8AF6 E68FAE
+8AF7 E69CBA
+8AF8 E69797
+8AF9 E697A2
+8AFA E69C9F
+8AFB E6A38B
+8AFC E6A384
+8B40 E6A99F
+8B41 E5B8B0
+8B42 E6AF85
+8B43 E6B097
+8B44 E6B1BD
+8B45 E795BF
+8B46 E7A588
+8B47 E5ADA3
+8B48 E7A880
+8B49 E7B480
+8B4A E5BEBD
+8B4B E8A68F
+8B4C E8A898
+8B4D E8B2B4
+8B4E E8B5B7
+8B4F E8BB8C
+8B50 E8BC9D
+8B51 E9A3A2
+8B52 E9A88E
+8B53 E9ACBC
+8B54 E4BA80
+8B55 E581BD
+8B56 E58480
+8B57 E5A693
+8B58 E5AE9C
+8B59 E688AF
+8B5A E68A80
+8B5B E693AC
+8B5C E6ACBA
+8B5D E78AA0
+8B5E E79691
+8B5F E7A587
+8B60 E7BEA9
+8B61 E89FBB
+8B62 E8AABC
+8B63 E8ADB0
+8B64 E68EAC
+8B65 E88F8A
+8B66 E99EA0
+8B67 E59089
+8B68 E59083
+8B69 E596AB
+8B6A E6A194
+8B6B E6A998
+8B6C E8A9B0
+8B6D E7A0A7
+8B6E E69DB5
+8B6F E9BB8D
+8B70 E58DB4
+8B71 E5AEA2
+8B72 E8849A
+8B73 E89990
+8B74 E98086
+8B75 E4B898
+8B76 E4B985
+8B77 E4BB87
+8B78 E4BC91
+8B79 E58F8A
+8B7A E590B8
+8B7B E5AEAE
+8B7C E5BC93
+8B7D E680A5
+8B7E E69591
+8B80 E69CBD
+8B81 E6B182
+8B82 E6B1B2
+8B83 E6B3A3
+8B84 E781B8
+8B85 E79083
+8B86 E7A9B6
+8B87 E7AAAE
+8B88 E7AC88
+8B89 E7B49A
+8B8A E7B3BE
+8B8B E7B5A6
+8B8C E697A7
+8B8D E7899B
+8B8E E58EBB
+8B8F E5B185
+8B90 E5B7A8
+8B91 E68B92
+8B92 E68BA0
+8B93 E68C99
+8B94 E6B8A0
+8B95 E8999A
+8B96 E8A8B1
+8B97 E8B79D
+8B98 E98BB8
+8B99 E6BC81
+8B9A E7A6A6
+8B9B E9AD9A
+8B9C E4BAA8
+8B9D E4BAAB
+8B9E E4BAAC
+8B9F E4BE9B
+8BA0 E4BEA0
+8BA1 E58391
+8BA2 E58587
+8BA3 E7ABB6
+8BA4 E585B1
+8BA5 E587B6
+8BA6 E58D94
+8BA7 E58CA1
+8BA8 E58DBF
+8BA9 E58FAB
+8BAA E596AC
+8BAB E5A283
+8BAC E5B3A1
+8BAD E5BCB7
+8BAE E5BD8A
+8BAF E680AF
+8BB0 E68190
+8BB1 E681AD
+8BB2 E68C9F
+8BB3 E69599
+8BB4 E6A98B
+8BB5 E6B381
+8BB6 E78B82
+8BB7 E78BAD
+8BB8 E79FAF
+8BB9 E883B8
+8BBA E88485
+8BBB E88888
+8BBC E8958E
+8BBD E983B7
+8BBE E98FA1
+8BBF E99FBF
+8BC0 E9A597
+8BC1 E9A99A
+8BC2 E4BBB0
+8BC3 E5879D
+8BC4 E5B0AD
+8BC5 E69A81
+8BC6 E6A5AD
+8BC7 E5B180
+8BC8 E69BB2
+8BC9 E6A5B5
+8BCA E78E89
+8BCB E6A190
+8BCC E7B281
+8BCD E58385
+8BCE E58BA4
+8BCF E59D87
+8BD0 E5B7BE
+8BD1 E98CA6
+8BD2 E696A4
+8BD3 E6ACA3
+8BD4 E6ACBD
+8BD5 E790B4
+8BD6 E7A681
+8BD7 E7A6BD
+8BD8 E7AD8B
+8BD9 E7B78A
+8BDA E88AB9
+8BDB E88F8C
+8BDC E8A1BF
+8BDD E8A59F
+8BDE E8ACB9
+8BDF E8BF91
+8BE0 E98791
+8BE1 E5909F
+8BE2 E98A80
+8BE3 E4B99D
+8BE4 E580B6
+8BE5 E58FA5
+8BE6 E58CBA
+8BE7 E78B97
+8BE8 E78E96
+8BE9 E79FA9
+8BEA E88BA6
+8BEB E8BAAF
+8BEC E9A786
+8BED E9A788
+8BEE E9A792
+8BEF E585B7
+8BF0 E6849A
+8BF1 E8999E
+8BF2 E596B0
+8BF3 E7A9BA
+8BF4 E581B6
+8BF5 E5AF93
+8BF6 E98187
+8BF7 E99A85
+8BF8 E4B8B2
+8BF9 E6AB9B
+8BFA E987A7
+8BFB E5B191
+8BFC E5B188
+8C40 E68E98
+8C41 E7AA9F
+8C42 E6B293
+8C43 E99DB4
+8C44 E8BDA1
+8C45 E7AAAA
+8C46 E7868A
+8C47 E99A88
+8C48 E7B282
+8C49 E6A097
+8C4A E7B9B0
+8C4B E6A191
+8C4C E98DAC
+8C4D E58BB2
+8C4E E5909B
+8C4F E896AB
+8C50 E8A893
+8C51 E7BEA4
+8C52 E8BB8D
+8C53 E983A1
+8C54 E58DA6
+8C55 E8A288
+8C56 E7A581
+8C57 E4BF82
+8C58 E582BE
+8C59 E58891
+8C5A E58584
+8C5B E59593
+8C5C E59CAD
+8C5D E78FAA
+8C5E E59E8B
+8C5F E5A591
+8C60 E5BDA2
+8C61 E5BE84
+8C62 E681B5
+8C63 E685B6
+8C64 E685A7
+8C65 E686A9
+8C66 E68EB2
+8C67 E690BA
+8C68 E695AC
+8C69 E699AF
+8C6A E6A182
+8C6B E6B893
+8C6C E795A6
+8C6D E7A8BD
+8C6E E7B3BB
+8C6F E7B58C
+8C70 E7B699
+8C71 E7B98B
+8C72 E7BDAB
+8C73 E88C8E
+8C74 E88D8A
+8C75 E89B8D
+8C76 E8A888
+8C77 E8A9A3
+8C78 E8ADA6
+8C79 E8BBBD
+8C7A E9A09A
+8C7B E9B68F
+8C7C E88AB8
+8C7D E8BF8E
+8C7E E9AFA8
+8C80 E58A87
+8C81 E6889F
+8C82 E69283
+8C83 E6BF80
+8C84 E99A99
+8C85 E6A181
+8C86 E58291
+8C87 E6ACA0
+8C88 E6B1BA
+8C89 E6BD94
+8C8A E7A9B4
+8C8B E7B590
+8C8C E8A180
+8C8D E8A8A3
+8C8E E69C88
+8C8F E4BBB6
+8C90 E580B9
+8C91 E580A6
+8C92 E581A5
+8C93 E585BC
+8C94 E588B8
+8C95 E589A3
+8C96 E596A7
+8C97 E59C8F
+8C98 E5A085
+8C99 E5AB8C
+8C9A E5BBBA
+8C9B E686B2
+8C9C E687B8
+8C9D E68BB3
+8C9E E68DB2
+8C9F E6A49C
+8CA0 E6A8A9
+8CA1 E789BD
+8CA2 E78AAC
+8CA3 E78CAE
+8CA4 E7A094
+8CA5 E7A1AF
+8CA6 E7B5B9
+8CA7 E79C8C
+8CA8 E882A9
+8CA9 E8A68B
+8CAA E8AC99
+8CAB E8B3A2
+8CAC E8BB92
+8CAD E981A3
+8CAE E98DB5
+8CAF E999BA
+8CB0 E9A195
+8CB1 E9A893
+8CB2 E9B9B8
+8CB3 E58583
+8CB4 E58E9F
+8CB5 E58EB3
+8CB6 E5B9BB
+8CB7 E5BCA6
+8CB8 E6B89B
+8CB9 E6BA90
+8CBA E78E84
+8CBB E78FBE
+8CBC E7B583
+8CBD E888B7
+8CBE E8A880
+8CBF E8ABBA
+8CC0 E99990
+8CC1 E4B98E
+8CC2 E5808B
+8CC3 E58FA4
+8CC4 E591BC
+8CC5 E59BBA
+8CC6 E5A791
+8CC7 E5ADA4
+8CC8 E5B7B1
+8CC9 E5BAAB
+8CCA E5BCA7
+8CCB E688B8
+8CCC E69585
+8CCD E69EAF
+8CCE E6B996
+8CCF E78B90
+8CD0 E7B38A
+8CD1 E8A2B4
+8CD2 E882A1
+8CD3 E883A1
+8CD4 E88FB0
+8CD5 E8998E
+8CD6 E8AA87
+8CD7 E8B7A8
+8CD8 E988B7
+8CD9 E99B87
+8CDA E9A1A7
+8CDB E9BC93
+8CDC E4BA94
+8CDD E4BA92
+8CDE E4BC8D
+8CDF E58D88
+8CE0 E59189
+8CE1 E590BE
+8CE2 E5A8AF
+8CE3 E5BE8C
+8CE4 E5BEA1
+8CE5 E6829F
+8CE6 E6A2A7
+8CE7 E6AA8E
+8CE8 E7919A
+8CE9 E7A281
+8CEA E8AA9E
+8CEB E8AAA4
+8CEC E8ADB7
+8CED E98690
+8CEE E4B99E
+8CEF E9AF89
+8CF0 E4BAA4
+8CF1 E4BDBC
+8CF2 E4BEAF
+8CF3 E58099
+8CF4 E58096
+8CF5 E58589
+8CF6 E585AC
+8CF7 E58A9F
+8CF8 E58AB9
+8CF9 E58BBE
+8CFA E58E9A
+8CFB E58FA3
+8CFC E59091
+8D40 E5908E
+8D41 E59689
+8D42 E59D91
+8D43 E59EA2
+8D44 E5A5BD
+8D45 E5AD94
+8D46 E5AD9D
+8D47 E5AE8F
+8D48 E5B7A5
+8D49 E5B7A7
+8D4A E5B7B7
+8D4B E5B9B8
+8D4C E5BA83
+8D4D E5BA9A
+8D4E E5BAB7
+8D4F E5BC98
+8D50 E68192
+8D51 E6858C
+8D52 E68A97
+8D53 E68B98
+8D54 E68EA7
+8D55 E694BB
+8D56 E69882
+8D57 E69983
+8D58 E69BB4
+8D59 E69DAD
+8D5A E6A0A1
+8D5B E6A297
+8D5C E6A78B
+8D5D E6B19F
+8D5E E6B4AA
+8D5F E6B5A9
+8D60 E6B8AF
+8D61 E6BA9D
+8D62 E794B2
+8D63 E79A87
+8D64 E7A1AC
+8D65 E7A8BF
+8D66 E7B3A0
+8D67 E7B485
+8D68 E7B498
+8D69 E7B59E
+8D6A E7B6B1
+8D6B E88095
+8D6C E88083
+8D6D E882AF
+8D6E E882B1
+8D6F E88594
+8D70 E8868F
+8D71 E888AA
+8D72 E88D92
+8D73 E8A18C
+8D74 E8A1A1
+8D75 E8AC9B
+8D76 E8B2A2
+8D77 E8B3BC
+8D78 E9838A
+8D79 E985B5
+8D7A E989B1
+8D7B E7A0BF
+8D7C E98BBC
+8D7D E996A4
+8D7E E9998D
+8D80 E9A085
+8D81 E9A699
+8D82 E9AB98
+8D83 E9B4BB
+8D84 E5899B
+8D85 E58AAB
+8D86 E58FB7
+8D87 E59088
+8D88 E5A395
+8D89 E68BB7
+8D8A E6BFA0
+8D8B E8B1AA
+8D8C E8BD9F
+8D8D E9BAB9
+8D8E E5858B
+8D8F E588BB
+8D90 E5918A
+8D91 E59BBD
+8D92 E7A980
+8D93 E985B7
+8D94 E9B5A0
+8D95 E9BB92
+8D96 E78D84
+8D97 E6BC89
+8D98 E885B0
+8D99 E79491
+8D9A E5BFBD
+8D9B E6839A
+8D9C E9AAA8
+8D9D E78B9B
+8D9E E8BEBC
+8D9F E6ADA4
+8DA0 E9A083
+8DA1 E4BB8A
+8DA2 E59BB0
+8DA3 E59DA4
+8DA4 E5A2BE
+8DA5 E5A99A
+8DA6 E681A8
+8DA7 E68787
+8DA8 E6988F
+8DA9 E69886
+8DAA E6A0B9
+8DAB E6A2B1
+8DAC E6B7B7
+8DAD E79795
+8DAE E7B4BA
+8DAF E889AE
+8DB0 E9AD82
+8DB1 E4BA9B
+8DB2 E4BD90
+8DB3 E58F89
+8DB4 E59486
+8DB5 E5B5AF
+8DB6 E5B7A6
+8DB7 E5B7AE
+8DB8 E69FBB
+8DB9 E6B299
+8DBA E791B3
+8DBB E7A082
+8DBC E8A990
+8DBD E98E96
+8DBE E8A39F
+8DBF E59D90
+8DC0 E5BAA7
+8DC1 E68CAB
+8DC2 E582B5
+8DC3 E582AC
+8DC4 E5868D
+8DC5 E69C80
+8DC6 E59389
+8DC7 E5A19E
+8DC8 E5A6BB
+8DC9 E5AEB0
+8DCA E5BDA9
+8DCB E6898D
+8DCC E68EA1
+8DCD E6A0BD
+8DCE E6ADB3
+8DCF E6B888
+8DD0 E781BD
+8DD1 E98787
+8DD2 E78A80
+8DD3 E7A095
+8DD4 E7A0A6
+8DD5 E7A5AD
+8DD6 E6968E
+8DD7 E7B4B0
+8DD8 E88F9C
+8DD9 E8A381
+8DDA E8BC89
+8DDB E99A9B
+8DDC E589A4
+8DDD E59CA8
+8DDE E69D90
+8DDF E7BDAA
+8DE0 E8B2A1
+8DE1 E586B4
+8DE2 E59D82
+8DE3 E998AA
+8DE4 E5A0BA
+8DE5 E6A68A
+8DE6 E882B4
+8DE7 E592B2
+8DE8 E5B48E
+8DE9 E59FBC
+8DEA E7A295
+8DEB E9B7BA
+8DEC E4BD9C
+8DED E5898A
+8DEE E5928B
+8DEF E690BE
+8DF0 E698A8
+8DF1 E69C94
+8DF2 E69FB5
+8DF3 E7AA84
+8DF4 E7AD96
+8DF5 E7B4A2
+8DF6 E98CAF
+8DF7 E6A19C
+8DF8 E9AEAD
+8DF9 E7ACB9
+8DFA E58C99
+8DFB E5868A
+8DFC E588B7
+8E40 E5AF9F
+8E41 E68BB6
+8E42 E692AE
+8E43 E693A6
+8E44 E69CAD
+8E45 E6AEBA
+8E46 E896A9
+8E47 E99B91
+8E48 E79A90
+8E49 E9AF96
+8E4A E68D8C
+8E4B E98C86
+8E4C E9AEAB
+8E4D E79ABF
+8E4E E69992
+8E4F E4B889
+8E50 E58298
+8E51 E58F82
+8E52 E5B1B1
+8E53 E683A8
+8E54 E69292
+8E55 E695A3
+8E56 E6A19F
+8E57 E787A6
+8E58 E78F8A
+8E59 E794A3
+8E5A E7AE97
+8E5B E7BA82
+8E5C E89A95
+8E5D E8AE83
+8E5E E8B39B
+8E5F E985B8
+8E60 E9A490
+8E61 E696AC
+8E62 E69AAB
+8E63 E6AE8B
+8E64 E4BB95
+8E65 E4BB94
+8E66 E4BCBA
+8E67 E4BDBF
+8E68 E588BA
+8E69 E58FB8
+8E6A E58FB2
+8E6B E597A3
+8E6C E59B9B
+8E6D E5A3AB
+8E6E E5A78B
+8E6F E5A789
+8E70 E5A7BF
+8E71 E5AD90
+8E72 E5B18D
+8E73 E5B882
+8E74 E5B8AB
+8E75 E5BF97
+8E76 E6809D
+8E77 E68C87
+8E78 E694AF
+8E79 E5AD9C
+8E7A E696AF
+8E7B E696BD
+8E7C E697A8
+8E7D E69E9D
+8E7E E6ADA2
+8E80 E6ADBB
+8E81 E6B08F
+8E82 E78D85
+8E83 E7A589
+8E84 E7A781
+8E85 E7B3B8
+8E86 E7B499
+8E87 E7B4AB
+8E88 E882A2
+8E89 E88482
+8E8A E887B3
+8E8B E8A696
+8E8C E8A99E
+8E8D E8A9A9
+8E8E E8A9A6
+8E8F E8AA8C
+8E90 E8ABAE
+8E91 E8B387
+8E92 E8B39C
+8E93 E99B8C
+8E94 E9A3BC
+8E95 E6ADAF
+8E96 E4BA8B
+8E97 E4BCBC
+8E98 E4BE8D
+8E99 E58590
+8E9A E5AD97
+8E9B E5AFBA
+8E9C E68588
+8E9D E68C81
+8E9E E69982
+8E9F E6ACA1
+8EA0 E6BB8B
+8EA1 E6B2BB
+8EA2 E788BE
+8EA3 E792BD
+8EA4 E79794
+8EA5 E7A381
+8EA6 E7A4BA
+8EA7 E8808C
+8EA8 E880B3
+8EA9 E887AA
+8EAA E89294
+8EAB E8BE9E
+8EAC E6B190
+8EAD E9B9BF
+8EAE E5BC8F
+8EAF E8AD98
+8EB0 E9B4AB
+8EB1 E7ABBA
+8EB2 E8BBB8
+8EB3 E5AE8D
+8EB4 E99BAB
+8EB5 E4B883
+8EB6 E58FB1
+8EB7 E59FB7
+8EB8 E5A4B1
+8EB9 E5AB89
+8EBA E5AEA4
+8EBB E68289
+8EBC E6B9BF
+8EBD E6BC86
+8EBE E796BE
+8EBF E8B3AA
+8EC0 E5AE9F
+8EC1 E89480
+8EC2 E7AFA0
+8EC3 E581B2
+8EC4 E69FB4
+8EC5 E88A9D
+8EC6 E5B1A1
+8EC7 E8958A
+8EC8 E7B89E
+8EC9 E8888E
+8ECA E58699
+8ECB E5B084
+8ECC E68DA8
+8ECD E8B5A6
+8ECE E6969C
+8ECF E785AE
+8ED0 E7A4BE
+8ED1 E7B497
+8ED2 E88085
+8ED3 E8AC9D
+8ED4 E8BB8A
+8ED5 E981AE
+8ED6 E89B87
+8ED7 E982AA
+8ED8 E5809F
+8ED9 E58BBA
+8EDA E5B0BA
+8EDB E69D93
+8EDC E781BC
+8EDD E788B5
+8EDE E9858C
+8EDF E98788
+8EE0 E98CAB
+8EE1 E88BA5
+8EE2 E5AF82
+8EE3 E5BCB1
+8EE4 E683B9
+8EE5 E4B8BB
+8EE6 E58F96
+8EE7 E5AE88
+8EE8 E6898B
+8EE9 E69CB1
+8EEA E6AE8A
+8EEB E78BA9
+8EEC E78FA0
+8EED E7A8AE
+8EEE E885AB
+8EEF E8B6A3
+8EF0 E98592
+8EF1 E9A696
+8EF2 E58492
+8EF3 E58F97
+8EF4 E591AA
+8EF5 E5AFBF
+8EF6 E68E88
+8EF7 E6A8B9
+8EF8 E7B6AC
+8EF9 E99C80
+8EFA E59B9A
+8EFB E58F8E
+8EFC E591A8
+8F40 E5AE97
+8F41 E5B0B1
+8F42 E5B79E
+8F43 E4BFAE
+8F44 E68481
+8F45 E68BBE
+8F46 E6B4B2
+8F47 E7A780
+8F48 E7A78B
+8F49 E7B582
+8F4A E7B98D
+8F4B E7BF92
+8F4C E887AD
+8F4D E8889F
+8F4E E89290
+8F4F E8A186
+8F50 E8A5B2
+8F51 E8AE90
+8F52 E8B9B4
+8F53 E8BCAF
+8F54 E980B1
+8F55 E9858B
+8F56 E985AC
+8F57 E99B86
+8F58 E9869C
+8F59 E4BB80
+8F5A E4BD8F
+8F5B E58585
+8F5C E58D81
+8F5D E5BE93
+8F5E E6888E
+8F5F E69F94
+8F60 E6B181
+8F61 E6B88B
+8F62 E78DA3
+8F63 E7B8A6
+8F64 E9878D
+8F65 E98A83
+8F66 E58F94
+8F67 E5A499
+8F68 E5AEBF
+8F69 E6B791
+8F6A E7A59D
+8F6B E7B8AE
+8F6C E7B29B
+8F6D E5A1BE
+8F6E E7869F
+8F6F E587BA
+8F70 E8A193
+8F71 E8BFB0
+8F72 E4BF8A
+8F73 E5B3BB
+8F74 E698A5
+8F75 E79EAC
+8F76 E7ABA3
+8F77 E8889C
+8F78 E9A7BF
+8F79 E58786
+8F7A E5BEAA
+8F7B E697AC
+8F7C E6A5AF
+8F7D E6AE89
+8F7E E6B7B3
+8F80 E6BA96
+8F81 E6BDA4
+8F82 E79BBE
+8F83 E7B494
+8F84 E5B7A1
+8F85 E981B5
+8F86 E98687
+8F87 E9A086
+8F88 E587A6
+8F89 E5889D
+8F8A E68980
+8F8B E69A91
+8F8C E69B99
+8F8D E6B89A
+8F8E E5BAB6
+8F8F E7B792
+8F90 E7BDB2
+8F91 E69BB8
+8F92 E896AF
+8F93 E897B7
+8F94 E8ABB8
+8F95 E58AA9
+8F96 E58F99
+8F97 E5A5B3
+8F98 E5BA8F
+8F99 E5BE90
+8F9A E68195
+8F9B E98BA4
+8F9C E999A4
+8F9D E582B7
+8F9E E5849F
+8F9F E58B9D
+8FA0 E58CA0
+8FA1 E58D87
+8FA2 E58FAC
+8FA3 E593A8
+8FA4 E59586
+8FA5 E594B1
+8FA6 E59897
+8FA7 E5A5A8
+8FA8 E5A6BE
+8FA9 E5A8BC
+8FAA E5AEB5
+8FAB E5B086
+8FAC E5B08F
+8FAD E5B091
+8FAE E5B09A
+8FAF E5BA84
+8FB0 E5BA8A
+8FB1 E5BBA0
+8FB2 E5BDB0
+8FB3 E689BF
+8FB4 E68A84
+8FB5 E68B9B
+8FB6 E68E8C
+8FB7 E68DB7
+8FB8 E69887
+8FB9 E6988C
+8FBA E698AD
+8FBB E699B6
+8FBC E69DBE
+8FBD E6A2A2
+8FBE E6A89F
+8FBF E6A8B5
+8FC0 E6B2BC
+8FC1 E6B688
+8FC2 E6B889
+8FC3 E6B998
+8FC4 E784BC
+8FC5 E784A6
+8FC6 E785A7
+8FC7 E79787
+8FC8 E79C81
+8FC9 E7A19D
+8FCA E7A481
+8FCB E7A5A5
+8FCC E7A7B0
+8FCD E7ABA0
+8FCE E7AC91
+8FCF E7B2A7
+8FD0 E7B4B9
+8FD1 E88296
+8FD2 E88F96
+8FD3 E8928B
+8FD4 E89589
+8FD5 E8A19D
+8FD6 E8A3B3
+8FD7 E8A89F
+8FD8 E8A8BC
+8FD9 E8A994
+8FDA E8A9B3
+8FDB E8B1A1
+8FDC E8B39E
+8FDD E986A4
+8FDE E989A6
+8FDF E98DBE
+8FE0 E99098
+8FE1 E99A9C
+8FE2 E99E98
+8FE3 E4B88A
+8FE4 E4B888
+8FE5 E4B89E
+8FE6 E4B997
+8FE7 E58697
+8FE8 E589B0
+8FE9 E59F8E
+8FEA E5A0B4
+8FEB E5A38C
+8FEC E5ACA2
+8FED E5B8B8
+8FEE E68385
+8FEF E693BE
+8FF0 E69DA1
+8FF1 E69D96
+8FF2 E6B584
+8FF3 E78AB6
+8FF4 E795B3
+8FF5 E7A9A3
+8FF6 E892B8
+8FF7 E8ADB2
+8FF8 E986B8
+8FF9 E98CA0
+8FFA E598B1
+8FFB E59FB4
+8FFC E9A3BE
+9040 E68BAD
+9041 E6A48D
+9042 E6AE96
+9043 E787AD
+9044 E7B994
+9045 E881B7
+9046 E889B2
+9047 E8A7A6
+9048 E9A39F
+9049 E89D95
+904A E8BEB1
+904B E5B0BB
+904C E4BCB8
+904D E4BFA1
+904E E4BEB5
+904F E59487
+9050 E5A8A0
+9051 E5AF9D
+9052 E5AFA9
+9053 E5BF83
+9054 E6858E
+9055 E68CAF
+9056 E696B0
+9057 E6998B
+9058 E6A3AE
+9059 E6A69B
+905A E6B5B8
+905B E6B7B1
+905C E794B3
+905D E796B9
+905E E79C9F
+905F E7A59E
+9060 E7A7A6
+9061 E7B4B3
+9062 E887A3
+9063 E88AAF
+9064 E896AA
+9065 E8A6AA
+9066 E8A8BA
+9067 E8BAAB
+9068 E8BE9B
+9069 E980B2
+906A E9879D
+906B E99C87
+906C E4BABA
+906D E4BB81
+906E E58883
+906F E5A1B5
+9070 E5A3AC
+9071 E5B08B
+9072 E7949A
+9073 E5B0BD
+9074 E8858E
+9075 E8A88A
+9076 E8BF85
+9077 E999A3
+9078 E99DAD
+9079 E7ACA5
+907A E8AB8F
+907B E9A088
+907C E985A2
+907D E59BB3
+907E E58EA8
+9080 E98097
+9081 E590B9
+9082 E59E82
+9083 E5B8A5
+9084 E68EA8
+9085 E6B0B4
+9086 E7828A
+9087 E79DA1
+9088 E7B28B
+9089 E7BFA0
+908A E8A1B0
+908B E98182
+908C E98594
+908D E98C90
+908E E98C98
+908F E99A8F
+9090 E7919E
+9091 E9AB84
+9092 E5B487
+9093 E5B5A9
+9094 E695B0
+9095 E69EA2
+9096 E8B6A8
+9097 E99B9B
+9098 E68DAE
+9099 E69D89
+909A E6A499
+909B E88F85
+909C E9A097
+909D E99B80
+909E E8A3BE
+909F E6BE84
+90A0 E691BA
+90A1 E5AFB8
+90A2 E4B896
+90A3 E780AC
+90A4 E7959D
+90A5 E698AF
+90A6 E58784
+90A7 E588B6
+90A8 E58BA2
+90A9 E5A793
+90AA E5BE81
+90AB E680A7
+90AC E68890
+90AD E694BF
+90AE E695B4
+90AF E6989F
+90B0 E699B4
+90B1 E6A3B2
+90B2 E6A096
+90B3 E6ADA3
+90B4 E6B885
+90B5 E789B2
+90B6 E7949F
+90B7 E79B9B
+90B8 E7B2BE
+90B9 E88196
+90BA E5A3B0
+90BB E8A3BD
+90BC E8A5BF
+90BD E8AAA0
+90BE E8AA93
+90BF E8AB8B
+90C0 E9809D
+90C1 E98692
+90C2 E99D92
+90C3 E99D99
+90C4 E69689
+90C5 E7A88E
+90C6 E88486
+90C7 E99ABB
+90C8 E5B8AD
+90C9 E6839C
+90CA E6889A
+90CB E696A5
+90CC E69894
+90CD E69E90
+90CE E79FB3
+90CF E7A98D
+90D0 E7B18D
+90D1 E7B8BE
+90D2 E8848A
+90D3 E8B2AC
+90D4 E8B5A4
+90D5 E8B7A1
+90D6 E8B99F
+90D7 E7A2A9
+90D8 E58887
+90D9 E68B99
+90DA E68EA5
+90DB E69182
+90DC E68A98
+90DD E8A8AD
+90DE E7AA83
+90DF E7AF80
+90E0 E8AAAC
+90E1 E99BAA
+90E2 E7B5B6
+90E3 E8888C
+90E4 E89D89
+90E5 E4BB99
+90E6 E58588
+90E7 E58D83
+90E8 E58DA0
+90E9 E5AEA3
+90EA E5B082
+90EB E5B096
+90EC E5B79D
+90ED E688A6
+90EE E68987
+90EF E692B0
+90F0 E6A093
+90F1 E6A0B4
+90F2 E6B389
+90F3 E6B585
+90F4 E6B497
+90F5 E69F93
+90F6 E6BD9C
+90F7 E7858E
+90F8 E785BD
+90F9 E6978B
+90FA E7A9BF
+90FB E7AEAD
+90FC E7B79A
+9140 E7B98A
+9141 E7BEA8
+9142 E885BA
+9143 E8889B
+9144 E888B9
+9145 E896A6
+9146 E8A9AE
+9147 E8B38E
+9148 E8B7B5
+9149 E981B8
+914A E981B7
+914B E98AAD
+914C E98A91
+914D E99683
+914E E9AEAE
+914F E5898D
+9150 E59684
+9151 E6BCB8
+9152 E784B6
+9153 E585A8
+9154 E7A685
+9155 E7B995
+9156 E886B3
+9157 E7B38E
+9158 E5998C
+9159 E5A191
+915A E5B2A8
+915B E68EAA
+915C E69BBE
+915D E69BBD
+915E E6A59A
+915F E78B99
+9160 E7968F
+9161 E7968E
+9162 E7A48E
+9163 E7A596
+9164 E7A79F
+9165 E7B297
+9166 E7B4A0
+9167 E7B584
+9168 E89887
+9169 E8A8B4
+916A E998BB
+916B E981A1
+916C E9BCA0
+916D E583A7
+916E E589B5
+916F E58F8C
+9170 E58FA2
+9171 E58089
+9172 E596AA
+9173 E5A3AE
+9174 E5A58F
+9175 E788BD
+9176 E5AE8B
+9177 E5B1A4
+9178 E58C9D
+9179 E683A3
+917A E683B3
+917B E68D9C
+917C E68E83
+917D E68CBF
+917E E68EBB
+9180 E6938D
+9181 E697A9
+9182 E69BB9
+9183 E5B7A3
+9184 E6A78D
+9185 E6A7BD
+9186 E6BC95
+9187 E787A5
+9188 E4BA89
+9189 E797A9
+918A E79BB8
+918B E7AA93
+918C E7B39F
+918D E7B78F
+918E E7B69C
+918F E881A1
+9190 E88D89
+9191 E88D98
+9192 E891AC
+9193 E892BC
+9194 E897BB
+9195 E8A385
+9196 E8B5B0
+9197 E98081
+9198 E981AD
+9199 E98E97
+919A E99C9C
+919B E9A892
+919C E5838F
+919D E5A297
+919E E6868E
+919F E88793
+91A0 E894B5
+91A1 E8B488
+91A2 E980A0
+91A3 E4BF83
+91A4 E581B4
+91A5 E58987
+91A6 E58DB3
+91A7 E681AF
+91A8 E68D89
+91A9 E69D9F
+91AA E6B8AC
+91AB E8B6B3
+91AC E9809F
+91AD E4BF97
+91AE E5B19E
+91AF E8B38A
+91B0 E6978F
+91B1 E7B69A
+91B2 E58D92
+91B3 E8A296
+91B4 E585B6
+91B5 E68F83
+91B6 E5AD98
+91B7 E5ADAB
+91B8 E5B08A
+91B9 E6908D
+91BA E69D91
+91BB E9819C
+91BC E4BB96
+91BD E5A49A
+91BE E5A4AA
+91BF E6B1B0
+91C0 E8A991
+91C1 E594BE
+91C2 E5A095
+91C3 E5A6A5
+91C4 E683B0
+91C5 E68993
+91C6 E69F81
+91C7 E888B5
+91C8 E6A595
+91C9 E99980
+91CA E9A784
+91CB E9A8A8
+91CC E4BD93
+91CD E5A086
+91CE E5AFBE
+91CF E88090
+91D0 E5B2B1
+91D1 E5B8AF
+91D2 E5BE85
+91D3 E680A0
+91D4 E6858B
+91D5 E688B4
+91D6 E69BBF
+91D7 E6B3B0
+91D8 E6BB9E
+91D9 E8838E
+91DA E885BF
+91DB E88B94
+91DC E8A28B
+91DD E8B2B8
+91DE E98080
+91DF E980AE
+91E0 E99A8A
+91E1 E9BB9B
+91E2 E9AF9B
+91E3 E4BBA3
+91E4 E58FB0
+91E5 E5A4A7
+91E6 E7ACAC
+91E7 E9868D
+91E8 E9A18C
+91E9 E9B7B9
+91EA E6BB9D
+91EB E780A7
+91EC E58D93
+91ED E59584
+91EE E5AE85
+91EF E68998
+91F0 E68A9E
+91F1 E68B93
+91F2 E6B2A2
+91F3 E6BFAF
+91F4 E790A2
+91F5 E8A897
+91F6 E990B8
+91F7 E6BF81
+91F8 E8ABBE
+91F9 E88CB8
+91FA E587A7
+91FB E89BB8
+91FC E58FAA
+9240 E58FA9
+9241 E4BD86
+9242 E98194
+9243 E8BEB0
+9244 E5A5AA
+9245 E884B1
+9246 E5B7BD
+9247 E7ABAA
+9248 E8BEBF
+9249 E6A39A
+924A E8B0B7
+924B E78BB8
+924C E9B188
+924D E6A8BD
+924E E8AAB0
+924F E4B8B9
+9250 E58D98
+9251 E59886
+9252 E59DA6
+9253 E68B85
+9254 E68EA2
+9255 E697A6
+9256 E6AD8E
+9257 E6B7A1
+9258 E6B99B
+9259 E782AD
+925A E79FAD
+925B E7ABAF
+925C E7AEAA
+925D E7B6BB
+925E E880BD
+925F E88386
+9260 E89B8B
+9261 E8AA95
+9262 E98D9B
+9263 E59BA3
+9264 E5A387
+9265 E5BCBE
+9266 E696AD
+9267 E69A96
+9268 E6AA80
+9269 E6AEB5
+926A E794B7
+926B E8AB87
+926C E580A4
+926D E79FA5
+926E E59CB0
+926F E5BC9B
+9270 E681A5
+9271 E699BA
+9272 E6B1A0
+9273 E797B4
+9274 E7A89A
+9275 E7BDAE
+9276 E887B4
+9277 E89C98
+9278 E98185
+9279 E9A6B3
+927A E7AF89
+927B E7959C
+927C E7ABB9
+927D E7AD91
+927E E89384
+9280 E98090
+9281 E7A7A9
+9282 E7AA92
+9283 E88CB6
+9284 E5ABA1
+9285 E79D80
+9286 E4B8AD
+9287 E4BBB2
+9288 E5AE99
+9289 E5BFA0
+928A E68ABD
+928B E698BC
+928C E69FB1
+928D E6B3A8
+928E E899AB
+928F E8A1B7
+9290 E8A8BB
+9291 E9858E
+9292 E98BB3
+9293 E9A790
+9294 E6A897
+9295 E780A6
+9296 E78CAA
+9297 E88BA7
+9298 E89197
+9299 E8B2AF
+929A E4B881
+929B E58586
+929C E5878B
+929D E5968B
+929E E5AFB5
+929F E5B896
+92A0 E5B8B3
+92A1 E5BA81
+92A2 E5BC94
+92A3 E5BCB5
+92A4 E5BDAB
+92A5 E5BEB4
+92A6 E687B2
+92A7 E68C91
+92A8 E69AA2
+92A9 E69C9D
+92AA E6BDAE
+92AB E78992
+92AC E794BA
+92AD E79CBA
+92AE E881B4
+92AF E884B9
+92B0 E885B8
+92B1 E89DB6
+92B2 E8AABF
+92B3 E8AB9C
+92B4 E8B685
+92B5 E8B7B3
+92B6 E98A9A
+92B7 E995B7
+92B8 E9A082
+92B9 E9B3A5
+92BA E58B85
+92BB E68D97
+92BC E79BB4
+92BD E69C95
+92BE E6B288
+92BF E78F8D
+92C0 E8B383
+92C1 E98EAE
+92C2 E999B3
+92C3 E6B4A5
+92C4 E5A29C
+92C5 E6A48E
+92C6 E6A78C
+92C7 E8BFBD
+92C8 E98E9A
+92C9 E7979B
+92CA E9809A
+92CB E5A19A
+92CC E6A082
+92CD E68EB4
+92CE E6A7BB
+92CF E4BD83
+92D0 E6BCAC
+92D1 E69F98
+92D2 E8BEBB
+92D3 E894A6
+92D4 E7B6B4
+92D5 E98D94
+92D6 E6A4BF
+92D7 E6BDB0
+92D8 E59DAA
+92D9 E5A3B7
+92DA E5ACAC
+92DB E7B4AC
+92DC E788AA
+92DD E5908A
+92DE E987A3
+92DF E9B6B4
+92E0 E4BAAD
+92E1 E4BD8E
+92E2 E5819C
+92E3 E581B5
+92E4 E58983
+92E5 E8B29E
+92E6 E59188
+92E7 E5A0A4
+92E8 E5AE9A
+92E9 E5B89D
+92EA E5BA95
+92EB E5BAAD
+92EC E5BBB7
+92ED E5BC9F
+92EE E6828C
+92EF E68AB5
+92F0 E68CBA
+92F1 E68F90
+92F2 E6A2AF
+92F3 E6B180
+92F4 E7A287
+92F5 E7A68E
+92F6 E7A88B
+92F7 E7B7A0
+92F8 E88987
+92F9 E8A882
+92FA E8ABA6
+92FB E8B984
+92FC E98093
+9340 E982B8
+9341 E984AD
+9342 E98798
+9343 E9BC8E
+9344 E6B3A5
+9345 E69198
+9346 E693A2
+9347 E695B5
+9348 E6BBB4
+9349 E79A84
+934A E7AC9B
+934B E981A9
+934C E98F91
+934D E6BABA
+934E E593B2
+934F E5BEB9
+9350 E692A4
+9351 E8BD8D
+9352 E8BFAD
+9353 E98984
+9354 E585B8
+9355 E5A1AB
+9356 E5A4A9
+9357 E5B195
+9358 E5BA97
+9359 E6B7BB
+935A E7BA8F
+935B E7949C
+935C E8B2BC
+935D E8BBA2
+935E E9A19B
+935F E782B9
+9360 E4BC9D
+9361 E6AEBF
+9362 E6BEB1
+9363 E794B0
+9364 E99BBB
+9365 E5858E
+9366 E59090
+9367 E5A0B5
+9368 E5A197
+9369 E5A6AC
+936A E5B1A0
+936B E5BE92
+936C E69697
+936D E69D9C
+936E E6B8A1
+936F E799BB
+9370 E88F9F
+9371 E8B3AD
+9372 E98094
+9373 E983BD
+9374 E98D8D
+9375 E7A0A5
+9376 E7A0BA
+9377 E58AAA
+9378 E5BAA6
+9379 E59C9F
+937A E5A5B4
+937B E68092
+937C E58092
+937D E5859A
+937E E586AC
+9380 E5878D
+9381 E58880
+9382 E59490
+9383 E5A194
+9384 E5A198
+9385 E5A597
+9386 E5AE95
+9387 E5B3B6
+9388 E5B68B
+9389 E682BC
+938A E68A95
+938B E690AD
+938C E69DB1
+938D E6A183
+938E E6A2BC
+938F E6A39F
+9390 E79B97
+9391 E6B798
+9392 E6B9AF
+9393 E6B69B
+9394 E781AF
+9395 E78788
+9396 E5BD93
+9397 E79798
+9398 E7A5B7
+9399 E7AD89
+939A E7AD94
+939B E7AD92
+939C E7B396
+939D E7B5B1
+939E E588B0
+939F E891A3
+93A0 E895A9
+93A1 E897A4
+93A2 E8A88E
+93A3 E8AC84
+93A4 E8B186
+93A5 E8B88F
+93A6 E98083
+93A7 E9808F
+93A8 E99099
+93A9 E999B6
+93AA E9A0AD
+93AB E9A8B0
+93AC E99798
+93AD E5838D
+93AE E58B95
+93AF E5908C
+93B0 E5A082
+93B1 E5B08E
+93B2 E686A7
+93B3 E6929E
+93B4 E6B49E
+93B5 E79EB3
+93B6 E7ABA5
+93B7 E883B4
+93B8 E89084
+93B9 E98193
+93BA E98A85
+93BB E5B3A0
+93BC E9B487
+93BD E58CBF
+93BE E5BE97
+93BF E5BEB3
+93C0 E6B69C
+93C1 E789B9
+93C2 E79DA3
+93C3 E7A6BF
+93C4 E7AFA4
+93C5 E6AF92
+93C6 E78BAC
+93C7 E8AAAD
+93C8 E6A083
+93C9 E6A9A1
+93CA E587B8
+93CB E7AA81
+93CC E6A4B4
+93CD E5B18A
+93CE E9B3B6
+93CF E88BAB
+93D0 E5AF85
+93D1 E98589
+93D2 E7809E
+93D3 E599B8
+93D4 E5B1AF
+93D5 E68387
+93D6 E695A6
+93D7 E6B28C
+93D8 E8B19A
+93D9 E98181
+93DA E9A093
+93DB E59191
+93DC E69B87
+93DD E9888D
+93DE E5A588
+93DF E982A3
+93E0 E58685
+93E1 E4B98D
+93E2 E587AA
+93E3 E89699
+93E4 E8AC8E
+93E5 E78198
+93E6 E68DBA
+93E7 E98D8B
+93E8 E6A5A2
+93E9 E9A6B4
+93EA E7B884
+93EB E795B7
+93EC E58D97
+93ED E6A5A0
+93EE E8BB9F
+93EF E99BA3
+93F0 E6B19D
+93F1 E4BA8C
+93F2 E5B0BC
+93F3 E5BC90
+93F4 E8BFA9
+93F5 E58C82
+93F6 E8B391
+93F7 E88289
+93F8 E899B9
+93F9 E5BBBF
+93FA E697A5
+93FB E4B9B3
+93FC E585A5
+9440 E5A682
+9441 E5B0BF
+9442 E99FAE
+9443 E4BBBB
+9444 E5A68A
+9445 E5BF8D
+9446 E8AA8D
+9447 E6BFA1
+9448 E7A6B0
+9449 E7A5A2
+944A E5AFA7
+944B E891B1
+944C E78CAB
+944D E786B1
+944E E5B9B4
+944F E5BFB5
+9450 E68DBB
+9451 E6929A
+9452 E78783
+9453 E7B298
+9454 E4B983
+9455 E5BBBC
+9456 E4B98B
+9457 E59F9C
+9458 E59AA2
+9459 E682A9
+945A E6BF83
+945B E7B48D
+945C E883BD
+945D E884B3
+945E E886BF
+945F E8BEB2
+9460 E8A697
+9461 E89AA4
+9462 E5B7B4
+9463 E68A8A
+9464 E692AD
+9465 E8A687
+9466 E69DB7
+9467 E6B3A2
+9468 E6B4BE
+9469 E790B6
+946A E7A0B4
+946B E5A986
+946C E7BDB5
+946D E88AAD
+946E E9A6AC
+946F E4BFB3
+9470 E5BB83
+9471 E68B9D
+9472 E68E92
+9473 E69597
+9474 E69DAF
+9475 E79B83
+9476 E7898C
+9477 E8838C
+9478 E882BA
+9479 E8BCA9
+947A E9858D
+947B E5808D
+947C E59FB9
+947D E5AA92
+947E E6A285
+9480 E6A5B3
+9481 E785A4
+9482 E78BBD
+9483 E8B2B7
+9484 E5A3B2
+9485 E8B3A0
+9486 E999AA
+9487 E98099
+9488 E89DBF
+9489 E7A7A4
+948A E79FA7
+948B E890A9
+948C E4BCAF
+948D E589A5
+948E E58D9A
+948F E68B8D
+9490 E69F8F
+9491 E6B38A
+9492 E799BD
+9493 E7AE94
+9494 E7B295
+9495 E888B6
+9496 E89684
+9497 E8BFAB
+9498 E69B9D
+9499 E6BCA0
+949A E78886
+949B E7B89B
+949C E88EAB
+949D E9A781
+949E E9BAA6
+949F E587BD
+94A0 E7AEB1
+94A1 E7A1B2
+94A2 E7AEB8
+94A3 E88287
+94A4 E7AD88
+94A5 E6ABA8
+94A6 E5B9A1
+94A7 E8828C
+94A8 E79591
+94A9 E795A0
+94AA E585AB
+94AB E989A2
+94AC E6BA8C
+94AD E799BA
+94AE E98697
+94AF E9ABAA
+94B0 E4BC90
+94B1 E7BDB0
+94B2 E68A9C
+94B3 E7AD8F
+94B4 E996A5
+94B5 E9B3A9
+94B6 E599BA
+94B7 E5A199
+94B8 E89BA4
+94B9 E99ABC
+94BA E4BCB4
+94BB E588A4
+94BC E58D8A
+94BD E58F8D
+94BE E58F9B
+94BF E5B886
+94C0 E690AC
+94C1 E69691
+94C2 E69DBF
+94C3 E6B0BE
+94C4 E6B18E
+94C5 E78988
+94C6 E78AAF
+94C7 E78FAD
+94C8 E79594
+94C9 E7B981
+94CA E888AC
+94CB E897A9
+94CC E8B2A9
+94CD E7AF84
+94CE E98786
+94CF E785A9
+94D0 E9A092
+94D1 E9A3AF
+94D2 E68CBD
+94D3 E699A9
+94D4 E795AA
+94D5 E79BA4
+94D6 E7A390
+94D7 E89583
+94D8 E89BAE
+94D9 E58CAA
+94DA E58D91
+94DB E590A6
+94DC E5A683
+94DD E5BA87
+94DE E5BDBC
+94DF E682B2
+94E0 E68989
+94E1 E689B9
+94E2 E68AAB
+94E3 E69690
+94E4 E6AF94
+94E5 E6B38C
+94E6 E796B2
+94E7 E79AAE
+94E8 E7A291
+94E9 E7A798
+94EA E7B78B
+94EB E7BDB7
+94EC E882A5
+94ED E8A2AB
+94EE E8AAB9
+94EF E8B2BB
+94F0 E981BF
+94F1 E99D9E
+94F2 E9A39B
+94F3 E6A88B
+94F4 E7B0B8
+94F5 E58299
+94F6 E5B0BE
+94F7 E5BEAE
+94F8 E69E87
+94F9 E6AF98
+94FA E790B5
+94FB E79C89
+94FC E7BE8E
+9540 E9BCBB
+9541 E69F8A
+9542 E7A897
+9543 E58CB9
+9544 E7968B
+9545 E9ABAD
+9546 E5BDA6
+9547 E8869D
+9548 E88FB1
+9549 E88298
+954A E5BCBC
+954B E5BF85
+954C E795A2
+954D E7AD86
+954E E980BC
+954F E6A1A7
+9550 E5A7AB
+9551 E5AA9B
+9552 E7B490
+9553 E799BE
+9554 E8ACAC
+9555 E4BFB5
+9556 E5BDAA
+9557 E6A899
+9558 E6B0B7
+9559 E6BC82
+955A E793A2
+955B E7A5A8
+955C E8A1A8
+955D E8A995
+955E E8B1B9
+955F E5BB9F
+9560 E68F8F
+9561 E79785
+9562 E7A792
+9563 E88B97
+9564 E98CA8
+9565 E98BB2
+9566 E8929C
+9567 E89BAD
+9568 E9B0AD
+9569 E59381
+956A E5BDAC
+956B E6968C
+956C E6B59C
+956D E78095
+956E E8B2A7
+956F E8B393
+9570 E9A0BB
+9571 E6958F
+9572 E793B6
+9573 E4B88D
+9574 E4BB98
+9575 E59FA0
+9576 E5A4AB
+9577 E5A9A6
+9578 E5AF8C
+9579 E586A8
+957A E5B883
+957B E5BA9C
+957C E68096
+957D E689B6
+957E E695B7
+9580 E696A7
+9581 E699AE
+9582 E6B5AE
+9583 E788B6
+9584 E7ACA6
+9585 E88590
+9586 E8869A
+9587 E88A99
+9588 E8AD9C
+9589 E8B2A0
+958A E8B3A6
+958B E8B5B4
+958C E9989C
+958D E99984
+958E E4BEAE
+958F E692AB
+9590 E6ADA6
+9591 E8889E
+9592 E891A1
+9593 E895AA
+9594 E983A8
+9595 E5B081
+9596 E6A593
+9597 E9A2A8
+9598 E891BA
+9599 E89597
+959A E4BC8F
+959B E589AF
+959C E5BEA9
+959D E5B985
+959E E69C8D
+959F E7A68F
+95A0 E885B9
+95A1 E8A487
+95A2 E8A686
+95A3 E6B7B5
+95A4 E5BC97
+95A5 E68995
+95A6 E6B2B8
+95A7 E4BB8F
+95A8 E789A9
+95A9 E9AE92
+95AA E58886
+95AB E590BB
+95AC E599B4
+95AD E5A2B3
+95AE E686A4
+95AF E689AE
+95B0 E7849A
+95B1 E5A5AE
+95B2 E7B289
+95B3 E7B39E
+95B4 E7B49B
+95B5 E99BB0
+95B6 E69687
+95B7 E8819E
+95B8 E4B899
+95B9 E4BDB5
+95BA E585B5
+95BB E5A180
+95BC E5B9A3
+95BD E5B9B3
+95BE E5BC8A
+95BF E69F84
+95C0 E4B8A6
+95C1 E894BD
+95C2 E99689
+95C3 E9999B
+95C4 E7B1B3
+95C5 E9A081
+95C6 E583BB
+95C7 E5A381
+95C8 E79996
+95C9 E7A2A7
+95CA E588A5
+95CB E79EA5
+95CC E89491
+95CD E7AE86
+95CE E5818F
+95CF E5A489
+95D0 E78987
+95D1 E7AF87
+95D2 E7B7A8
+95D3 E8BEBA
+95D4 E8BF94
+95D5 E9818D
+95D6 E4BEBF
+95D7 E58B89
+95D8 E5A8A9
+95D9 E5BC81
+95DA E99EAD
+95DB E4BF9D
+95DC E88897
+95DD E98BAA
+95DE E59C83
+95DF E68D95
+95E0 E6ADA9
+95E1 E794AB
+95E2 E8A39C
+95E3 E8BC94
+95E4 E7A982
+95E5 E58B9F
+95E6 E5A293
+95E7 E68595
+95E8 E6888A
+95E9 E69AAE
+95EA E6AF8D
+95EB E7B0BF
+95EC E88FA9
+95ED E580A3
+95EE E4BFB8
+95EF E58C85
+95F0 E59186
+95F1 E5A0B1
+95F2 E5A589
+95F3 E5AE9D
+95F4 E5B3B0
+95F5 E5B3AF
+95F6 E5B4A9
+95F7 E5BA96
+95F8 E68AB1
+95F9 E68DA7
+95FA E694BE
+95FB E696B9
+95FC E69C8B
+9640 E6B395
+9641 E6B3A1
+9642 E783B9
+9643 E7A0B2
+9644 E7B8AB
+9645 E8839E
+9646 E88AB3
+9647 E8908C
+9648 E893AC
+9649 E89C82
+964A E8A492
+964B E8A8AA
+964C E8B18A
+964D E982A6
+964E E98B92
+964F E9A3BD
+9650 E9B3B3
+9651 E9B5AC
+9652 E4B98F
+9653 E4BAA1
+9654 E5828D
+9655 E58996
+9656 E59D8A
+9657 E5A6A8
+9658 E5B8BD
+9659 E5BF98
+965A E5BF99
+965B E688BF
+965C E69AB4
+965D E69C9B
+965E E69F90
+965F E6A392
+9660 E58692
+9661 E7B4A1
+9662 E882AA
+9663 E886A8
+9664 E8AC80
+9665 E8B28C
+9666 E8B2BF
+9667 E989BE
+9668 E998B2
+9669 E590A0
+966A E9A0AC
+966B E58C97
+966C E58395
+966D E58D9C
+966E E5A2A8
+966F E692B2
+9670 E69CB4
+9671 E789A7
+9672 E79DA6
+9673 E7A986
+9674 E987A6
+9675 E58B83
+9676 E6B2A1
+9677 E6AE86
+9678 E5A080
+9679 E5B98C
+967A E5A594
+967B E69CAC
+967C E7BFBB
+967D E587A1
+967E E79B86
+9680 E691A9
+9681 E7A3A8
+9682 E9AD94
+9683 E9BABB
+9684 E59F8B
+9685 E5A6B9
+9686 E698A7
+9687 E69E9A
+9688 E6AF8E
+9689 E593A9
+968A E6A799
+968B E5B995
+968C E8869C
+968D E69E95
+968E E9AEAA
+968F E69FBE
+9690 E9B192
+9691 E6A19D
+9692 E4BAA6
+9693 E4BFA3
+9694 E58F88
+9695 E68AB9
+9696 E69CAB
+9697 E6B2AB
+9698 E8BF84
+9699 E4BEAD
+969A E7B9AD
+969B E9BABF
+969C E4B887
+969D E685A2
+969E E6BA80
+969F E6BCAB
+96A0 E89493
+96A1 E591B3
+96A2 E69CAA
+96A3 E9AD85
+96A4 E5B7B3
+96A5 E7AE95
+96A6 E5B2AC
+96A7 E5AF86
+96A8 E89C9C
+96A9 E6B98A
+96AA E89391
+96AB E7A894
+96AC E88488
+96AD E5A699
+96AE E7B28D
+96AF E6B091
+96B0 E79CA0
+96B1 E58B99
+96B2 E5A4A2
+96B3 E784A1
+96B4 E7899F
+96B5 E79F9B
+96B6 E99CA7
+96B7 E9B5A1
+96B8 E6A48B
+96B9 E5A9BF
+96BA E5A898
+96BB E586A5
+96BC E5908D
+96BD E591BD
+96BE E6988E
+96BF E79B9F
+96C0 E8BFB7
+96C1 E98A98
+96C2 E9B3B4
+96C3 E5A7AA
+96C4 E7899D
+96C5 E6BB85
+96C6 E5858D
+96C7 E6A389
+96C8 E7B6BF
+96C9 E7B7AC
+96CA E99DA2
+96CB E9BABA
+96CC E691B8
+96CD E6A8A1
+96CE E88C82
+96CF E5A684
+96D0 E5AD9F
+96D1 E6AF9B
+96D2 E78C9B
+96D3 E79BB2
+96D4 E7B6B2
+96D5 E88097
+96D6 E89299
+96D7 E584B2
+96D8 E69CA8
+96D9 E9BB99
+96DA E79BAE
+96DB E69DA2
+96DC E58BBF
+96DD E9A485
+96DE E5B0A4
+96DF E688BB
+96E0 E7B1BE
+96E1 E8B2B0
+96E2 E5958F
+96E3 E682B6
+96E4 E7B48B
+96E5 E99680
+96E6 E58C81
+96E7 E4B99F
+96E8 E586B6
+96E9 E5A49C
+96EA E788BA
+96EB E880B6
+96EC E9878E
+96ED E5BCA5
+96EE E79FA2
+96EF E58E84
+96F0 E5BDB9
+96F1 E7B484
+96F2 E896AC
+96F3 E8A8B3
+96F4 E8BA8D
+96F5 E99D96
+96F6 E69FB3
+96F7 E896AE
+96F8 E99193
+96F9 E68489
+96FA E68488
+96FB E6B2B9
+96FC E79992
+9740 E8ABAD
+9741 E8BCB8
+9742 E594AF
+9743 E4BD91
+9744 E584AA
+9745 E58B87
+9746 E58F8B
+9747 E5AEA5
+9748 E5B9BD
+9749 E682A0
+974A E68682
+974B E68F96
+974C E69C89
+974D E69F9A
+974E E6B9A7
+974F E6B68C
+9750 E78CB6
+9751 E78CB7
+9752 E794B1
+9753 E7A590
+9754 E8A395
+9755 E8AA98
+9756 E9818A
+9757 E98291
+9758 E983B5
+9759 E99B84
+975A E89E8D
+975B E5A495
+975C E4BA88
+975D E4BD99
+975E E4B88E
+975F E8AA89
+9760 E8BCBF
+9761 E9A090
+9762 E582AD
+9763 E5B9BC
+9764 E5A696
+9765 E5AEB9
+9766 E5BAB8
+9767 E68F9A
+9768 E68FBA
+9769 E69381
+976A E69B9C
+976B E6A58A
+976C E6A798
+976D E6B48B
+976E E6BAB6
+976F E78694
+9770 E794A8
+9771 E7AAAF
+9772 E7BE8A
+9773 E88080
+9774 E89189
+9775 E89389
+9776 E8A681
+9777 E8ACA1
+9778 E8B88A
+9779 E981A5
+977A E999BD
+977B E9A48A
+977C E685BE
+977D E68A91
+977E E6ACB2
+9780 E6B283
+9781 E6B5B4
+9782 E7BF8C
+9783 E7BFBC
+9784 E6B780
+9785 E7BE85
+9786 E89EBA
+9787 E8A3B8
+9788 E69DA5
+9789 E88EB1
+978A E9A0BC
+978B E99BB7
+978C E6B49B
+978D E7B5A1
+978E E890BD
+978F E985AA
+9790 E4B9B1
+9791 E58DB5
+9792 E5B590
+9793 E6AC84
+9794 E6BFAB
+9795 E8978D
+9796 E898AD
+9797 E8A6A7
+9798 E588A9
+9799 E5908F
+979A E5B1A5
+979B E69D8E
+979C E6A2A8
+979D E79086
+979E E79283
+979F E797A2
+97A0 E8A38F
+97A1 E8A3A1
+97A2 E9878C
+97A3 E99BA2
+97A4 E999B8
+97A5 E5BE8B
+97A6 E78E87
+97A7 E7AB8B
+97A8 E8918E
+97A9 E68EA0
+97AA E795A5
+97AB E58A89
+97AC E6B581
+97AD E6BA9C
+97AE E79089
+97AF E79599
+97B0 E7A1AB
+97B1 E7B292
+97B2 E99A86
+97B3 E7AB9C
+97B4 E9BE8D
+97B5 E4BEB6
+97B6 E685AE
+97B7 E69785
+97B8 E8999C
+97B9 E4BA86
+97BA E4BAAE
+97BB E5839A
+97BC E4B8A1
+97BD E5878C
+97BE E5AFAE
+97BF E69699
+97C0 E6A281
+97C1 E6B6BC
+97C2 E78C9F
+97C3 E79982
+97C4 E79EAD
+97C5 E7A89C
+97C6 E7B3A7
+97C7 E889AF
+97C8 E8AB92
+97C9 E981BC
+97CA E9878F
+97CB E999B5
+97CC E9A098
+97CD E58A9B
+97CE E7B791
+97CF E580AB
+97D0 E58E98
+97D1 E69E97
+97D2 E6B78B
+97D3 E78790
+97D4 E790B3
+97D5 E887A8
+97D6 E8BCAA
+97D7 E99AA3
+97D8 E9B197
+97D9 E9BA9F
+97DA E791A0
+97DB E5A181
+97DC E6B699
+97DD E7B4AF
+97DE E9A19E
+97DF E4BBA4
+97E0 E4BCB6
+97E1 E4BE8B
+97E2 E586B7
+97E3 E58AB1
+97E4 E5B6BA
+97E5 E6809C
+97E6 E78EB2
+97E7 E7A4BC
+97E8 E88B93
+97E9 E988B4
+97EA E99AB7
+97EB E99BB6
+97EC E99C8A
+97ED E9BA97
+97EE E9BDA2
+97EF E69AA6
+97F0 E6ADB4
+97F1 E58897
+97F2 E58AA3
+97F3 E78388
+97F4 E8A382
+97F5 E5BB89
+97F6 E6818B
+97F7 E68690
+97F8 E6BCA3
+97F9 E78589
+97FA E7B0BE
+97FB E7B7B4
+97FC E881AF
+9840 E893AE
+9841 E980A3
+9842 E98CAC
+9843 E59182
+9844 E9ADAF
+9845 E6AB93
+9846 E78289
+9847 E8B382
+9848 E8B7AF
+9849 E99CB2
+984A E58AB4
+984B E5A981
+984C E5BB8A
+984D E5BC84
+984E E69C97
+984F E6A5BC
+9850 E6A694
+9851 E6B5AA
+9852 E6BC8F
+9853 E789A2
+9854 E78BBC
+9855 E7AFAD
+9856 E88081
+9857 E881BE
+9858 E89D8B
+9859 E9838E
+985A E585AD
+985B E9BA93
+985C E7A684
+985D E8828B
+985E E98CB2
+985F E8AB96
+9860 E580AD
+9861 E5928C
+9862 E8A9B1
+9863 E6ADAA
+9864 E8B384
+9865 E88487
+9866 E68391
+9867 E69EA0
+9868 E9B7B2
+9869 E4BA99
+986A E4BA98
+986B E9B090
+986C E8A9AB
+986D E89781
+986E E895A8
+986F E6A480
+9870 E6B9BE
+9871 E7A297
+9872 E88595
+989F E5BC8C
+98A0 E4B890
+98A1 E4B895
+98A2 E4B8AA
+98A3 E4B8B1
+98A4 E4B8B6
+98A5 E4B8BC
+98A6 E4B8BF
+98A7 E4B982
+98A8 E4B996
+98A9 E4B998
+98AA E4BA82
+98AB E4BA85
+98AC E8B1AB
+98AD E4BA8A
+98AE E88892
+98AF E5BC8D
+98B0 E4BA8E
+98B1 E4BA9E
+98B2 E4BA9F
+98B3 E4BAA0
+98B4 E4BAA2
+98B5 E4BAB0
+98B6 E4BAB3
+98B7 E4BAB6
+98B8 E4BB8E
+98B9 E4BB8D
+98BA E4BB84
+98BB E4BB86
+98BC E4BB82
+98BD E4BB97
+98BE E4BB9E
+98BF E4BBAD
+98C0 E4BB9F
+98C1 E4BBB7
+98C2 E4BC89
+98C3 E4BD9A
+98C4 E4BCB0
+98C5 E4BD9B
+98C6 E4BD9D
+98C7 E4BD97
+98C8 E4BD87
+98C9 E4BDB6
+98CA E4BE88
+98CB E4BE8F
+98CC E4BE98
+98CD E4BDBB
+98CE E4BDA9
+98CF E4BDB0
+98D0 E4BE91
+98D1 E4BDAF
+98D2 E4BE86
+98D3 E4BE96
+98D4 E58498
+98D5 E4BF94
+98D6 E4BF9F
+98D7 E4BF8E
+98D8 E4BF98
+98D9 E4BF9B
+98DA E4BF91
+98DB E4BF9A
+98DC E4BF90
+98DD E4BFA4
+98DE E4BFA5
+98DF E5809A
+98E0 E580A8
+98E1 E58094
+98E2 E580AA
+98E3 E580A5
+98E4 E58085
+98E5 E4BC9C
+98E6 E4BFB6
+98E7 E580A1
+98E8 E580A9
+98E9 E580AC
+98EA E4BFBE
+98EB E4BFAF
+98EC E58091
+98ED E58086
+98EE E58183
+98EF E58187
+98F0 E69C83
+98F1 E58195
+98F2 E58190
+98F3 E58188
+98F4 E5819A
+98F5 E58196
+98F6 E581AC
+98F7 E581B8
+98F8 E58280
+98F9 E5829A
+98FA E58285
+98FB E582B4
+98FC E582B2
+9940 E58389
+9941 E5838A
+9942 E582B3
+9943 E58382
+9944 E58396
+9945 E5839E
+9946 E583A5
+9947 E583AD
+9948 E583A3
+9949 E583AE
+994A E583B9
+994B E583B5
+994C E58489
+994D E58481
+994E E58482
+994F E58496
+9950 E58495
+9951 E58494
+9952 E5849A
+9953 E584A1
+9954 E584BA
+9955 E584B7
+9956 E584BC
+9957 E584BB
+9958 E584BF
+9959 E58580
+995A E58592
+995B E5858C
+995C E58594
+995D E585A2
+995E E7ABB8
+995F E585A9
+9960 E585AA
+9961 E585AE
+9962 E58680
+9963 E58682
+9964 E59B98
+9965 E5868C
+9966 E58689
+9967 E5868F
+9968 E58691
+9969 E58693
+996A E58695
+996B E58696
+996C E586A4
+996D E586A6
+996E E586A2
+996F E586A9
+9970 E586AA
+9971 E586AB
+9972 E586B3
+9973 E586B1
+9974 E586B2
+9975 E586B0
+9976 E586B5
+9977 E586BD
+9978 E58785
+9979 E58789
+997A E5879B
+997B E587A0
+997C E89995
+997D E587A9
+997E E587AD
+9980 E587B0
+9981 E587B5
+9982 E587BE
+9983 E58884
+9984 E5888B
+9985 E58894
+9986 E5888E
+9987 E588A7
+9988 E588AA
+9989 E588AE
+998A E588B3
+998B E588B9
+998C E5898F
+998D E58984
+998E E5898B
+998F E5898C
+9990 E5899E
+9991 E58994
+9992 E589AA
+9993 E589B4
+9994 E589A9
+9995 E589B3
+9996 E589BF
+9997 E589BD
+9998 E58A8D
+9999 E58A94
+999A E58A92
+999B E589B1
+999C E58A88
+999D E58A91
+999E E8BEA8
+999F E8BEA7
+99A0 E58AAC
+99A1 E58AAD
+99A2 E58ABC
+99A3 E58AB5
+99A4 E58B81
+99A5 E58B8D
+99A6 E58B97
+99A7 E58B9E
+99A8 E58BA3
+99A9 E58BA6
+99AA E9A3AD
+99AB E58BA0
+99AC E58BB3
+99AD E58BB5
+99AE E58BB8
+99AF E58BB9
+99B0 E58C86
+99B1 E58C88
+99B2 E794B8
+99B3 E58C8D
+99B4 E58C90
+99B5 E58C8F
+99B6 E58C95
+99B7 E58C9A
+99B8 E58CA3
+99B9 E58CAF
+99BA E58CB1
+99BB E58CB3
+99BC E58CB8
+99BD E58D80
+99BE E58D86
+99BF E58D85
+99C0 E4B897
+99C1 E58D89
+99C2 E58D8D
+99C3 E58796
+99C4 E58D9E
+99C5 E58DA9
+99C6 E58DAE
+99C7 E5A498
+99C8 E58DBB
+99C9 E58DB7
+99CA E58E82
+99CB E58E96
+99CC E58EA0
+99CD E58EA6
+99CE E58EA5
+99CF E58EAE
+99D0 E58EB0
+99D1 E58EB6
+99D2 E58F83
+99D3 E7B092
+99D4 E99B99
+99D5 E58F9F
+99D6 E69BBC
+99D7 E787AE
+99D8 E58FAE
+99D9 E58FA8
+99DA E58FAD
+99DB E58FBA
+99DC E59081
+99DD E590BD
+99DE E59180
+99DF E590AC
+99E0 E590AD
+99E1 E590BC
+99E2 E590AE
+99E3 E590B6
+99E4 E590A9
+99E5 E5909D
+99E6 E5918E
+99E7 E5928F
+99E8 E591B5
+99E9 E5928E
+99EA E5919F
+99EB E591B1
+99EC E591B7
+99ED E591B0
+99EE E59292
+99EF E591BB
+99F0 E59280
+99F1 E591B6
+99F2 E59284
+99F3 E59290
+99F4 E59286
+99F5 E59387
+99F6 E592A2
+99F7 E592B8
+99F8 E592A5
+99F9 E592AC
+99FA E59384
+99FB E59388
+99FC E592A8
+9A40 E592AB
+9A41 E59382
+9A42 E592A4
+9A43 E592BE
+9A44 E592BC
+9A45 E59398
+9A46 E593A5
+9A47 E593A6
+9A48 E5948F
+9A49 E59494
+9A4A E593BD
+9A4B E593AE
+9A4C E593AD
+9A4D E593BA
+9A4E E593A2
+9A4F E594B9
+9A50 E59580
+9A51 E595A3
+9A52 E5958C
+9A53 E594AE
+9A54 E5959C
+9A55 E59585
+9A56 E59596
+9A57 E59597
+9A58 E594B8
+9A59 E594B3
+9A5A E5959D
+9A5B E59699
+9A5C E59680
+9A5D E592AF
+9A5E E5968A
+9A5F E5969F
+9A60 E595BB
+9A61 E595BE
+9A62 E59698
+9A63 E5969E
+9A64 E596AE
+9A65 E595BC
+9A66 E59683
+9A67 E596A9
+9A68 E59687
+9A69 E596A8
+9A6A E5979A
+9A6B E59785
+9A6C E5979F
+9A6D E59784
+9A6E E5979C
+9A6F E597A4
+9A70 E59794
+9A71 E59894
+9A72 E597B7
+9A73 E59896
+9A74 E597BE
+9A75 E597BD
+9A76 E5989B
+9A77 E597B9
+9A78 E5998E
+9A79 E59990
+9A7A E7879F
+9A7B E598B4
+9A7C E598B6
+9A7D E598B2
+9A7E E598B8
+9A80 E599AB
+9A81 E599A4
+9A82 E598AF
+9A83 E599AC
+9A84 E599AA
+9A85 E59A86
+9A86 E59A80
+9A87 E59A8A
+9A88 E59AA0
+9A89 E59A94
+9A8A E59A8F
+9A8B E59AA5
+9A8C E59AAE
+9A8D E59AB6
+9A8E E59AB4
+9A8F E59B82
+9A90 E59ABC
+9A91 E59B81
+9A92 E59B83
+9A93 E59B80
+9A94 E59B88
+9A95 E59B8E
+9A96 E59B91
+9A97 E59B93
+9A98 E59B97
+9A99 E59BAE
+9A9A E59BB9
+9A9B E59C80
+9A9C E59BBF
+9A9D E59C84
+9A9E E59C89
+9A9F E59C88
+9AA0 E59C8B
+9AA1 E59C8D
+9AA2 E59C93
+9AA3 E59C98
+9AA4 E59C96
+9AA5 E59787
+9AA6 E59C9C
+9AA7 E59CA6
+9AA8 E59CB7
+9AA9 E59CB8
+9AAA E59D8E
+9AAB E59CBB
+9AAC E59D80
+9AAD E59D8F
+9AAE E59DA9
+9AAF E59F80
+9AB0 E59E88
+9AB1 E59DA1
+9AB2 E59DBF
+9AB3 E59E89
+9AB4 E59E93
+9AB5 E59EA0
+9AB6 E59EB3
+9AB7 E59EA4
+9AB8 E59EAA
+9AB9 E59EB0
+9ABA E59F83
+9ABB E59F86
+9ABC E59F94
+9ABD E59F92
+9ABE E59F93
+9ABF E5A08A
+9AC0 E59F96
+9AC1 E59FA3
+9AC2 E5A08B
+9AC3 E5A099
+9AC4 E5A09D
+9AC5 E5A1B2
+9AC6 E5A0A1
+9AC7 E5A1A2
+9AC8 E5A18B
+9AC9 E5A1B0
+9ACA E6AF80
+9ACB E5A192
+9ACC E5A0BD
+9ACD E5A1B9
+9ACE E5A285
+9ACF E5A2B9
+9AD0 E5A29F
+9AD1 E5A2AB
+9AD2 E5A2BA
+9AD3 E5A39E
+9AD4 E5A2BB
+9AD5 E5A2B8
+9AD6 E5A2AE
+9AD7 E5A385
+9AD8 E5A393
+9AD9 E5A391
+9ADA E5A397
+9ADB E5A399
+9ADC E5A398
+9ADD E5A3A5
+9ADE E5A39C
+9ADF E5A3A4
+9AE0 E5A39F
+9AE1 E5A3AF
+9AE2 E5A3BA
+9AE3 E5A3B9
+9AE4 E5A3BB
+9AE5 E5A3BC
+9AE6 E5A3BD
+9AE7 E5A482
+9AE8 E5A48A
+9AE9 E5A490
+9AEA E5A49B
+9AEB E6A2A6
+9AEC E5A4A5
+9AED E5A4AC
+9AEE E5A4AD
+9AEF E5A4B2
+9AF0 E5A4B8
+9AF1 E5A4BE
+9AF2 E7AB92
+9AF3 E5A595
+9AF4 E5A590
+9AF5 E5A58E
+9AF6 E5A59A
+9AF7 E5A598
+9AF8 E5A5A2
+9AF9 E5A5A0
+9AFA E5A5A7
+9AFB E5A5AC
+9AFC E5A5A9
+9B40 E5A5B8
+9B41 E5A681
+9B42 E5A69D
+9B43 E4BD9E
+9B44 E4BEAB
+9B45 E5A6A3
+9B46 E5A6B2
+9B47 E5A786
+9B48 E5A7A8
+9B49 E5A79C
+9B4A E5A68D
+9B4B E5A799
+9B4C E5A79A
+9B4D E5A8A5
+9B4E E5A89F
+9B4F E5A891
+9B50 E5A89C
+9B51 E5A889
+9B52 E5A89A
+9B53 E5A980
+9B54 E5A9AC
+9B55 E5A989
+9B56 E5A8B5
+9B57 E5A8B6
+9B58 E5A9A2
+9B59 E5A9AA
+9B5A E5AA9A
+9B5B E5AABC
+9B5C E5AABE
+9B5D E5AB8B
+9B5E E5AB82
+9B5F E5AABD
+9B60 E5ABA3
+9B61 E5AB97
+9B62 E5ABA6
+9B63 E5ABA9
+9B64 E5AB96
+9B65 E5ABBA
+9B66 E5ABBB
+9B67 E5AC8C
+9B68 E5AC8B
+9B69 E5AC96
+9B6A E5ACB2
+9B6B E5AB90
+9B6C E5ACAA
+9B6D E5ACB6
+9B6E E5ACBE
+9B6F E5AD83
+9B70 E5AD85
+9B71 E5AD80
+9B72 E5AD91
+9B73 E5AD95
+9B74 E5AD9A
+9B75 E5AD9B
+9B76 E5ADA5
+9B77 E5ADA9
+9B78 E5ADB0
+9B79 E5ADB3
+9B7A E5ADB5
+9B7B E5ADB8
+9B7C E69688
+9B7D E5ADBA
+9B7E E5AE80
+9B80 E5AE83
+9B81 E5AEA6
+9B82 E5AEB8
+9B83 E5AF83
+9B84 E5AF87
+9B85 E5AF89
+9B86 E5AF94
+9B87 E5AF90
+9B88 E5AFA4
+9B89 E5AFA6
+9B8A E5AFA2
+9B8B E5AF9E
+9B8C E5AFA5
+9B8D E5AFAB
+9B8E E5AFB0
+9B8F E5AFB6
+9B90 E5AFB3
+9B91 E5B085
+9B92 E5B087
+9B93 E5B088
+9B94 E5B08D
+9B95 E5B093
+9B96 E5B0A0
+9B97 E5B0A2
+9B98 E5B0A8
+9B99 E5B0B8
+9B9A E5B0B9
+9B9B E5B181
+9B9C E5B186
+9B9D E5B18E
+9B9E E5B193
+9B9F E5B190
+9BA0 E5B18F
+9BA1 E5ADB1
+9BA2 E5B1AC
+9BA3 E5B1AE
+9BA4 E4B9A2
+9BA5 E5B1B6
+9BA6 E5B1B9
+9BA7 E5B28C
+9BA8 E5B291
+9BA9 E5B294
+9BAA E5A69B
+9BAB E5B2AB
+9BAC E5B2BB
+9BAD E5B2B6
+9BAE E5B2BC
+9BAF E5B2B7
+9BB0 E5B385
+9BB1 E5B2BE
+9BB2 E5B387
+9BB3 E5B399
+9BB4 E5B3A9
+9BB5 E5B3BD
+9BB6 E5B3BA
+9BB7 E5B3AD
+9BB8 E5B68C
+9BB9 E5B3AA
+9BBA E5B48B
+9BBB E5B495
+9BBC E5B497
+9BBD E5B59C
+9BBE E5B49F
+9BBF E5B49B
+9BC0 E5B491
+9BC1 E5B494
+9BC2 E5B4A2
+9BC3 E5B49A
+9BC4 E5B499
+9BC5 E5B498
+9BC6 E5B58C
+9BC7 E5B592
+9BC8 E5B58E
+9BC9 E5B58B
+9BCA E5B5AC
+9BCB E5B5B3
+9BCC E5B5B6
+9BCD E5B687
+9BCE E5B684
+9BCF E5B682
+9BD0 E5B6A2
+9BD1 E5B69D
+9BD2 E5B6AC
+9BD3 E5B6AE
+9BD4 E5B6BD
+9BD5 E5B690
+9BD6 E5B6B7
+9BD7 E5B6BC
+9BD8 E5B789
+9BD9 E5B78D
+9BDA E5B793
+9BDB E5B792
+9BDC E5B796
+9BDD E5B79B
+9BDE E5B7AB
+9BDF E5B7B2
+9BE0 E5B7B5
+9BE1 E5B88B
+9BE2 E5B89A
+9BE3 E5B899
+9BE4 E5B891
+9BE5 E5B89B
+9BE6 E5B8B6
+9BE7 E5B8B7
+9BE8 E5B984
+9BE9 E5B983
+9BEA E5B980
+9BEB E5B98E
+9BEC E5B997
+9BED E5B994
+9BEE E5B99F
+9BEF E5B9A2
+9BF0 E5B9A4
+9BF1 E5B987
+9BF2 E5B9B5
+9BF3 E5B9B6
+9BF4 E5B9BA
+9BF5 E9BABC
+9BF6 E5B9BF
+9BF7 E5BAA0
+9BF8 E5BB81
+9BF9 E5BB82
+9BFA E5BB88
+9BFB E5BB90
+9BFC E5BB8F
+9C40 E5BB96
+9C41 E5BBA3
+9C42 E5BB9D
+9C43 E5BB9A
+9C44 E5BB9B
+9C45 E5BBA2
+9C46 E5BBA1
+9C47 E5BBA8
+9C48 E5BBA9
+9C49 E5BBAC
+9C4A E5BBB1
+9C4B E5BBB3
+9C4C E5BBB0
+9C4D E5BBB4
+9C4E E5BBB8
+9C4F E5BBBE
+9C50 E5BC83
+9C51 E5BC89
+9C52 E5BD9D
+9C53 E5BD9C
+9C54 E5BC8B
+9C55 E5BC91
+9C56 E5BC96
+9C57 E5BCA9
+9C58 E5BCAD
+9C59 E5BCB8
+9C5A E5BD81
+9C5B E5BD88
+9C5C E5BD8C
+9C5D E5BD8E
+9C5E E5BCAF
+9C5F E5BD91
+9C60 E5BD96
+9C61 E5BD97
+9C62 E5BD99
+9C63 E5BDA1
+9C64 E5BDAD
+9C65 E5BDB3
+9C66 E5BDB7
+9C67 E5BE83
+9C68 E5BE82
+9C69 E5BDBF
+9C6A E5BE8A
+9C6B E5BE88
+9C6C E5BE91
+9C6D E5BE87
+9C6E E5BE9E
+9C6F E5BE99
+9C70 E5BE98
+9C71 E5BEA0
+9C72 E5BEA8
+9C73 E5BEAD
+9C74 E5BEBC
+9C75 E5BF96
+9C76 E5BFBB
+9C77 E5BFA4
+9C78 E5BFB8
+9C79 E5BFB1
+9C7A E5BF9D
+9C7B E682B3
+9C7C E5BFBF
+9C7D E680A1
+9C7E E681A0
+9C80 E68099
+9C81 E68090
+9C82 E680A9
+9C83 E6808E
+9C84 E680B1
+9C85 E6809B
+9C86 E68095
+9C87 E680AB
+9C88 E680A6
+9C89 E6808F
+9C8A E680BA
+9C8B E6819A
+9C8C E68181
+9C8D E681AA
+9C8E E681B7
+9C8F E6819F
+9C90 E6818A
+9C91 E68186
+9C92 E6818D
+9C93 E681A3
+9C94 E68183
+9C95 E681A4
+9C96 E68182
+9C97 E681AC
+9C98 E681AB
+9C99 E68199
+9C9A E68281
+9C9B E6828D
+9C9C E683A7
+9C9D E68283
+9C9E E6829A
+9C9F E68284
+9CA0 E6829B
+9CA1 E68296
+9CA2 E68297
+9CA3 E68292
+9CA4 E682A7
+9CA5 E6828B
+9CA6 E683A1
+9CA7 E682B8
+9CA8 E683A0
+9CA9 E68393
+9CAA E682B4
+9CAB E5BFB0
+9CAC E682BD
+9CAD E68386
+9CAE E682B5
+9CAF E68398
+9CB0 E6858D
+9CB1 E68495
+9CB2 E68486
+9CB3 E683B6
+9CB4 E683B7
+9CB5 E68480
+9CB6 E683B4
+9CB7 E683BA
+9CB8 E68483
+9CB9 E684A1
+9CBA E683BB
+9CBB E683B1
+9CBC E6848D
+9CBD E6848E
+9CBE E68587
+9CBF E684BE
+9CC0 E684A8
+9CC1 E684A7
+9CC2 E6858A
+9CC3 E684BF
+9CC4 E684BC
+9CC5 E684AC
+9CC6 E684B4
+9CC7 E684BD
+9CC8 E68582
+9CC9 E68584
+9CCA E685B3
+9CCB E685B7
+9CCC E68598
+9CCD E68599
+9CCE E6859A
+9CCF E685AB
+9CD0 E685B4
+9CD1 E685AF
+9CD2 E685A5
+9CD3 E685B1
+9CD4 E6859F
+9CD5 E6859D
+9CD6 E68593
+9CD7 E685B5
+9CD8 E68699
+9CD9 E68696
+9CDA E68687
+9CDB E686AC
+9CDC E68694
+9CDD E6869A
+9CDE E6868A
+9CDF E68691
+9CE0 E686AB
+9CE1 E686AE
+9CE2 E6878C
+9CE3 E6878A
+9CE4 E68789
+9CE5 E687B7
+9CE6 E68788
+9CE7 E68783
+9CE8 E68786
+9CE9 E686BA
+9CEA E6878B
+9CEB E7BDB9
+9CEC E6878D
+9CED E687A6
+9CEE E687A3
+9CEF E687B6
+9CF0 E687BA
+9CF1 E687B4
+9CF2 E687BF
+9CF3 E687BD
+9CF4 E687BC
+9CF5 E687BE
+9CF6 E68880
+9CF7 E68888
+9CF8 E68889
+9CF9 E6888D
+9CFA E6888C
+9CFB E68894
+9CFC E6889B
+9D40 E6889E
+9D41 E688A1
+9D42 E688AA
+9D43 E688AE
+9D44 E688B0
+9D45 E688B2
+9D46 E688B3
+9D47 E68981
+9D48 E6898E
+9D49 E6899E
+9D4A E689A3
+9D4B E6899B
+9D4C E689A0
+9D4D E689A8
+9D4E E689BC
+9D4F E68A82
+9D50 E68A89
+9D51 E689BE
+9D52 E68A92
+9D53 E68A93
+9D54 E68A96
+9D55 E68B94
+9D56 E68A83
+9D57 E68A94
+9D58 E68B97
+9D59 E68B91
+9D5A E68ABB
+9D5B E68B8F
+9D5C E68BBF
+9D5D E68B86
+9D5E E69394
+9D5F E68B88
+9D60 E68B9C
+9D61 E68B8C
+9D62 E68B8A
+9D63 E68B82
+9D64 E68B87
+9D65 E68A9B
+9D66 E68B89
+9D67 E68C8C
+9D68 E68BAE
+9D69 E68BB1
+9D6A E68CA7
+9D6B E68C82
+9D6C E68C88
+9D6D E68BAF
+9D6E E68BB5
+9D6F E68D90
+9D70 E68CBE
+9D71 E68D8D
+9D72 E6909C
+9D73 E68D8F
+9D74 E68E96
+9D75 E68E8E
+9D76 E68E80
+9D77 E68EAB
+9D78 E68DB6
+9D79 E68EA3
+9D7A E68E8F
+9D7B E68E89
+9D7C E68E9F
+9D7D E68EB5
+9D7E E68DAB
+9D80 E68DA9
+9D81 E68EBE
+9D82 E68FA9
+9D83 E68F80
+9D84 E68F86
+9D85 E68FA3
+9D86 E68F89
+9D87 E68F92
+9D88 E68FB6
+9D89 E68F84
+9D8A E69096
+9D8B E690B4
+9D8C E69086
+9D8D E69093
+9D8E E690A6
+9D8F E690B6
+9D90 E6949D
+9D91 E69097
+9D92 E690A8
+9D93 E6908F
+9D94 E691A7
+9D95 E691AF
+9D96 E691B6
+9D97 E6918E
+9D98 E694AA
+9D99 E69295
+9D9A E69293
+9D9B E692A5
+9D9C E692A9
+9D9D E69288
+9D9E E692BC
+9D9F E6939A
+9DA0 E69392
+9DA1 E69385
+9DA2 E69387
+9DA3 E692BB
+9DA4 E69398
+9DA5 E69382
+9DA6 E693B1
+9DA7 E693A7
+9DA8 E88889
+9DA9 E693A0
+9DAA E693A1
+9DAB E68AAC
+9DAC E693A3
+9DAD E693AF
+9DAE E694AC
+9DAF E693B6
+9DB0 E693B4
+9DB1 E693B2
+9DB2 E693BA
+9DB3 E69480
+9DB4 E693BD
+9DB5 E69498
+9DB6 E6949C
+9DB7 E69485
+9DB8 E694A4
+9DB9 E694A3
+9DBA E694AB
+9DBB E694B4
+9DBC E694B5
+9DBD E694B7
+9DBE E694B6
+9DBF E694B8
+9DC0 E7958B
+9DC1 E69588
+9DC2 E69596
+9DC3 E69595
+9DC4 E6958D
+9DC5 E69598
+9DC6 E6959E
+9DC7 E6959D
+9DC8 E695B2
+9DC9 E695B8
+9DCA E69682
+9DCB E69683
+9DCC E8AE8A
+9DCD E6969B
+9DCE E6969F
+9DCF E696AB
+9DD0 E696B7
+9DD1 E69783
+9DD2 E69786
+9DD3 E69781
+9DD4 E69784
+9DD5 E6978C
+9DD6 E69792
+9DD7 E6979B
+9DD8 E69799
+9DD9 E697A0
+9DDA E697A1
+9DDB E697B1
+9DDC E69DB2
+9DDD E6988A
+9DDE E69883
+9DDF E697BB
+9DE0 E69DB3
+9DE1 E698B5
+9DE2 E698B6
+9DE3 E698B4
+9DE4 E6989C
+9DE5 E6998F
+9DE6 E69984
+9DE7 E69989
+9DE8 E69981
+9DE9 E6999E
+9DEA E6999D
+9DEB E699A4
+9DEC E699A7
+9DED E699A8
+9DEE E6999F
+9DEF E699A2
+9DF0 E699B0
+9DF1 E69A83
+9DF2 E69A88
+9DF3 E69A8E
+9DF4 E69A89
+9DF5 E69A84
+9DF6 E69A98
+9DF7 E69A9D
+9DF8 E69B81
+9DF9 E69AB9
+9DFA E69B89
+9DFB E69ABE
+9DFC E69ABC
+9E40 E69B84
+9E41 E69AB8
+9E42 E69B96
+9E43 E69B9A
+9E44 E69BA0
+9E45 E698BF
+9E46 E69BA6
+9E47 E69BA9
+9E48 E69BB0
+9E49 E69BB5
+9E4A E69BB7
+9E4B E69C8F
+9E4C E69C96
+9E4D E69C9E
+9E4E E69CA6
+9E4F E69CA7
+9E50 E99CB8
+9E51 E69CAE
+9E52 E69CBF
+9E53 E69CB6
+9E54 E69D81
+9E55 E69CB8
+9E56 E69CB7
+9E57 E69D86
+9E58 E69D9E
+9E59 E69DA0
+9E5A E69D99
+9E5B E69DA3
+9E5C E69DA4
+9E5D E69E89
+9E5E E69DB0
+9E5F E69EA9
+9E60 E69DBC
+9E61 E69DAA
+9E62 E69E8C
+9E63 E69E8B
+9E64 E69EA6
+9E65 E69EA1
+9E66 E69E85
+9E67 E69EB7
+9E68 E69FAF
+9E69 E69EB4
+9E6A E69FAC
+9E6B E69EB3
+9E6C E69FA9
+9E6D E69EB8
+9E6E E69FA4
+9E6F E69F9E
+9E70 E69F9D
+9E71 E69FA2
+9E72 E69FAE
+9E73 E69EB9
+9E74 E69F8E
+9E75 E69F86
+9E76 E69FA7
+9E77 E6AA9C
+9E78 E6A09E
+9E79 E6A186
+9E7A E6A0A9
+9E7B E6A180
+9E7C E6A18D
+9E7D E6A0B2
+9E7E E6A18E
+9E80 E6A2B3
+9E81 E6A0AB
+9E82 E6A199
+9E83 E6A1A3
+9E84 E6A1B7
+9E85 E6A1BF
+9E86 E6A29F
+9E87 E6A28F
+9E88 E6A2AD
+9E89 E6A294
+9E8A E6A29D
+9E8B E6A29B
+9E8C E6A283
+9E8D E6AAAE
+9E8E E6A2B9
+9E8F E6A1B4
+9E90 E6A2B5
+9E91 E6A2A0
+9E92 E6A2BA
+9E93 E6A48F
+9E94 E6A28D
+9E95 E6A1BE
+9E96 E6A481
+9E97 E6A38A
+9E98 E6A488
+9E99 E6A398
+9E9A E6A4A2
+9E9B E6A4A6
+9E9C E6A3A1
+9E9D E6A48C
+9E9E E6A38D
+9E9F E6A394
+9EA0 E6A3A7
+9EA1 E6A395
+9EA2 E6A4B6
+9EA3 E6A492
+9EA4 E6A484
+9EA5 E6A397
+9EA6 E6A3A3
+9EA7 E6A4A5
+9EA8 E6A3B9
+9EA9 E6A3A0
+9EAA E6A3AF
+9EAB E6A4A8
+9EAC E6A4AA
+9EAD E6A49A
+9EAE E6A4A3
+9EAF E6A4A1
+9EB0 E6A386
+9EB1 E6A5B9
+9EB2 E6A5B7
+9EB3 E6A59C
+9EB4 E6A5B8
+9EB5 E6A5AB
+9EB6 E6A594
+9EB7 E6A5BE
+9EB8 E6A5AE
+9EB9 E6A4B9
+9EBA E6A5B4
+9EBB E6A4BD
+9EBC E6A599
+9EBD E6A4B0
+9EBE E6A5A1
+9EBF E6A59E
+9EC0 E6A59D
+9EC1 E6A681
+9EC2 E6A5AA
+9EC3 E6A6B2
+9EC4 E6A6AE
+9EC5 E6A790
+9EC6 E6A6BF
+9EC7 E6A781
+9EC8 E6A793
+9EC9 E6A6BE
+9ECA E6A78E
+9ECB E5AFA8
+9ECC E6A78A
+9ECD E6A79D
+9ECE E6A6BB
+9ECF E6A783
+9ED0 E6A6A7
+9ED1 E6A8AE
+9ED2 E6A691
+9ED3 E6A6A0
+9ED4 E6A69C
+9ED5 E6A695
+9ED6 E6A6B4
+9ED7 E6A79E
+9ED8 E6A7A8
+9ED9 E6A882
+9EDA E6A89B
+9EDB E6A7BF
+9EDC E6AC8A
+9EDD E6A7B9
+9EDE E6A7B2
+9EDF E6A7A7
+9EE0 E6A885
+9EE1 E6A6B1
+9EE2 E6A89E
+9EE3 E6A7AD
+9EE4 E6A894
+9EE5 E6A7AB
+9EE6 E6A88A
+9EE7 E6A892
+9EE8 E6AB81
+9EE9 E6A8A3
+9EEA E6A893
+9EEB E6A984
+9EEC E6A88C
+9EED E6A9B2
+9EEE E6A8B6
+9EEF E6A9B8
+9EF0 E6A987
+9EF1 E6A9A2
+9EF2 E6A999
+9EF3 E6A9A6
+9EF4 E6A988
+9EF5 E6A8B8
+9EF6 E6A8A2
+9EF7 E6AA90
+9EF8 E6AA8D
+9EF9 E6AAA0
+9EFA E6AA84
+9EFB E6AAA2
+9EFC E6AAA3
+9F40 E6AA97
+9F41 E89897
+9F42 E6AABB
+9F43 E6AB83
+9F44 E6AB82
+9F45 E6AAB8
+9F46 E6AAB3
+9F47 E6AAAC
+9F48 E6AB9E
+9F49 E6AB91
+9F4A E6AB9F
+9F4B E6AAAA
+9F4C E6AB9A
+9F4D E6ABAA
+9F4E E6ABBB
+9F4F E6AC85
+9F50 E89896
+9F51 E6ABBA
+9F52 E6AC92
+9F53 E6AC96
+9F54 E9ACB1
+9F55 E6AC9F
+9F56 E6ACB8
+9F57 E6ACB7
+9F58 E79B9C
+9F59 E6ACB9
+9F5A E9A3AE
+9F5B E6AD87
+9F5C E6AD83
+9F5D E6AD89
+9F5E E6AD90
+9F5F E6AD99
+9F60 E6AD94
+9F61 E6AD9B
+9F62 E6AD9F
+9F63 E6ADA1
+9F64 E6ADB8
+9F65 E6ADB9
+9F66 E6ADBF
+9F67 E6AE80
+9F68 E6AE84
+9F69 E6AE83
+9F6A E6AE8D
+9F6B E6AE98
+9F6C E6AE95
+9F6D E6AE9E
+9F6E E6AEA4
+9F6F E6AEAA
+9F70 E6AEAB
+9F71 E6AEAF
+9F72 E6AEB2
+9F73 E6AEB1
+9F74 E6AEB3
+9F75 E6AEB7
+9F76 E6AEBC
+9F77 E6AF86
+9F78 E6AF8B
+9F79 E6AF93
+9F7A E6AF9F
+9F7B E6AFAC
+9F7C E6AFAB
+9F7D E6AFB3
+9F7E E6AFAF
+9F80 E9BABE
+9F81 E6B088
+9F82 E6B093
+9F83 E6B094
+9F84 E6B09B
+9F85 E6B0A4
+9F86 E6B0A3
+9F87 E6B19E
+9F88 E6B195
+9F89 E6B1A2
+9F8A E6B1AA
+9F8B E6B282
+9F8C E6B28D
+9F8D E6B29A
+9F8E E6B281
+9F8F E6B29B
+9F90 E6B1BE
+9F91 E6B1A8
+9F92 E6B1B3
+9F93 E6B292
+9F94 E6B290
+9F95 E6B384
+9F96 E6B3B1
+9F97 E6B393
+9F98 E6B2BD
+9F99 E6B397
+9F9A E6B385
+9F9B E6B39D
+9F9C E6B2AE
+9F9D E6B2B1
+9F9E E6B2BE
+9F9F E6B2BA
+9FA0 E6B39B
+9FA1 E6B3AF
+9FA2 E6B399
+9FA3 E6B3AA
+9FA4 E6B49F
+9FA5 E8A18D
+9FA6 E6B4B6
+9FA7 E6B4AB
+9FA8 E6B4BD
+9FA9 E6B4B8
+9FAA E6B499
+9FAB E6B4B5
+9FAC E6B4B3
+9FAD E6B492
+9FAE E6B48C
+9FAF E6B5A3
+9FB0 E6B693
+9FB1 E6B5A4
+9FB2 E6B59A
+9FB3 E6B5B9
+9FB4 E6B599
+9FB5 E6B68E
+9FB6 E6B695
+9FB7 E6BFA4
+9FB8 E6B685
+9FB9 E6B7B9
+9FBA E6B895
+9FBB E6B88A
+9FBC E6B6B5
+9FBD E6B787
+9FBE E6B7A6
+9FBF E6B6B8
+9FC0 E6B786
+9FC1 E6B7AC
+9FC2 E6B79E
+9FC3 E6B78C
+9FC4 E6B7A8
+9FC5 E6B792
+9FC6 E6B785
+9FC7 E6B7BA
+9FC8 E6B799
+9FC9 E6B7A4
+9FCA E6B795
+9FCB E6B7AA
+9FCC E6B7AE
+9FCD E6B8AD
+9FCE E6B9AE
+9FCF E6B8AE
+9FD0 E6B899
+9FD1 E6B9B2
+9FD2 E6B99F
+9FD3 E6B8BE
+9FD4 E6B8A3
+9FD5 E6B9AB
+9FD6 E6B8AB
+9FD7 E6B9B6
+9FD8 E6B98D
+9FD9 E6B89F
+9FDA E6B983
+9FDB E6B8BA
+9FDC E6B98E
+9FDD E6B8A4
+9FDE E6BBBF
+9FDF E6B89D
+9FE0 E6B8B8
+9FE1 E6BA82
+9FE2 E6BAAA
+9FE3 E6BA98
+9FE4 E6BB89
+9FE5 E6BAB7
+9FE6 E6BB93
+9FE7 E6BABD
+9FE8 E6BAAF
+9FE9 E6BB84
+9FEA E6BAB2
+9FEB E6BB94
+9FEC E6BB95
+9FED E6BA8F
+9FEE E6BAA5
+9FEF E6BB82
+9FF0 E6BA9F
+9FF1 E6BD81
+9FF2 E6BC91
+9FF3 E7818C
+9FF4 E6BBAC
+9FF5 E6BBB8
+9FF6 E6BBBE
+9FF7 E6BCBF
+9FF8 E6BBB2
+9FF9 E6BCB1
+9FFA E6BBAF
+9FFB E6BCB2
+9FFC E6BB8C
+A1 EFBDA1
+A2 EFBDA2
+A3 EFBDA3
+A4 EFBDA4
+A5 EFBDA5
+A6 EFBDA6
+A7 EFBDA7
+A8 EFBDA8
+A9 EFBDA9
+AA EFBDAA
+AB EFBDAB
+AC EFBDAC
+AD EFBDAD
+AE EFBDAE
+AF EFBDAF
+B0 EFBDB0
+B1 EFBDB1
+B2 EFBDB2
+B3 EFBDB3
+B4 EFBDB4
+B5 EFBDB5
+B6 EFBDB6
+B7 EFBDB7
+B8 EFBDB8
+B9 EFBDB9
+BA EFBDBA
+BB EFBDBB
+BC EFBDBC
+BD EFBDBD
+BE EFBDBE
+BF EFBDBF
+C0 EFBE80
+C1 EFBE81
+C2 EFBE82
+C3 EFBE83
+C4 EFBE84
+C5 EFBE85
+C6 EFBE86
+C7 EFBE87
+C8 EFBE88
+C9 EFBE89
+CA EFBE8A
+CB EFBE8B
+CC EFBE8C
+CD EFBE8D
+CE EFBE8E
+CF EFBE8F
+D0 EFBE90
+D1 EFBE91
+D2 EFBE92
+D3 EFBE93
+D4 EFBE94
+D5 EFBE95
+D6 EFBE96
+D7 EFBE97
+D8 EFBE98
+D9 EFBE99
+DA EFBE9A
+DB EFBE9B
+DC EFBE9C
+DD EFBE9D
+DE EFBE9E
+DF EFBE9F
+E040 E6BCBE
+E041 E6BC93
+E042 E6BBB7
+E043 E6BE86
+E044 E6BDBA
+E045 E6BDB8
+E046 E6BE81
+E047 E6BE80
+E048 E6BDAF
+E049 E6BD9B
+E04A E6BFB3
+E04B E6BDAD
+E04C E6BE82
+E04D E6BDBC
+E04E E6BD98
+E04F E6BE8E
+E050 E6BE91
+E051 E6BF82
+E052 E6BDA6
+E053 E6BEB3
+E054 E6BEA3
+E055 E6BEA1
+E056 E6BEA4
+E057 E6BEB9
+E058 E6BF86
+E059 E6BEAA
+E05A E6BF9F
+E05B E6BF95
+E05C E6BFAC
+E05D E6BF94
+E05E E6BF98
+E05F E6BFB1
+E060 E6BFAE
+E061 E6BF9B
+E062 E78089
+E063 E7808B
+E064 E6BFBA
+E065 E78091
+E066 E78081
+E067 E7808F
+E068 E6BFBE
+E069 E7809B
+E06A E7809A
+E06B E6BDB4
+E06C E7809D
+E06D E78098
+E06E E7809F
+E06F E780B0
+E070 E780BE
+E071 E780B2
+E072 E78191
+E073 E781A3
+E074 E78299
+E075 E78292
+E076 E782AF
+E077 E783B1
+E078 E782AC
+E079 E782B8
+E07A E782B3
+E07B E782AE
+E07C E7839F
+E07D E7838B
+E07E E7839D
+E080 E78399
+E081 E78489
+E082 E783BD
+E083 E7849C
+E084 E78499
+E085 E785A5
+E086 E78595
+E087 E78688
+E088 E785A6
+E089 E785A2
+E08A E7858C
+E08B E78596
+E08C E785AC
+E08D E7868F
+E08E E787BB
+E08F E78684
+E090 E78695
+E091 E786A8
+E092 E786AC
+E093 E78797
+E094 E786B9
+E095 E786BE
+E096 E78792
+E097 E78789
+E098 E78794
+E099 E7878E
+E09A E787A0
+E09B E787AC
+E09C E787A7
+E09D E787B5
+E09E E787BC
+E09F E787B9
+E0A0 E787BF
+E0A1 E7888D
+E0A2 E78890
+E0A3 E7889B
+E0A4 E788A8
+E0A5 E788AD
+E0A6 E788AC
+E0A7 E788B0
+E0A8 E788B2
+E0A9 E788BB
+E0AA E788BC
+E0AB E788BF
+E0AC E78980
+E0AD E78986
+E0AE E7898B
+E0AF E78998
+E0B0 E789B4
+E0B1 E789BE
+E0B2 E78A82
+E0B3 E78A81
+E0B4 E78A87
+E0B5 E78A92
+E0B6 E78A96
+E0B7 E78AA2
+E0B8 E78AA7
+E0B9 E78AB9
+E0BA E78AB2
+E0BB E78B83
+E0BC E78B86
+E0BD E78B84
+E0BE E78B8E
+E0BF E78B92
+E0C0 E78BA2
+E0C1 E78BA0
+E0C2 E78BA1
+E0C3 E78BB9
+E0C4 E78BB7
+E0C5 E5808F
+E0C6 E78C97
+E0C7 E78C8A
+E0C8 E78C9C
+E0C9 E78C96
+E0CA E78C9D
+E0CB E78CB4
+E0CC E78CAF
+E0CD E78CA9
+E0CE E78CA5
+E0CF E78CBE
+E0D0 E78D8E
+E0D1 E78D8F
+E0D2 E9BB98
+E0D3 E78D97
+E0D4 E78DAA
+E0D5 E78DA8
+E0D6 E78DB0
+E0D7 E78DB8
+E0D8 E78DB5
+E0D9 E78DBB
+E0DA E78DBA
+E0DB E78F88
+E0DC E78EB3
+E0DD E78F8E
+E0DE E78EBB
+E0DF E78F80
+E0E0 E78FA5
+E0E1 E78FAE
+E0E2 E78F9E
+E0E3 E792A2
+E0E4 E79085
+E0E5 E791AF
+E0E6 E790A5
+E0E7 E78FB8
+E0E8 E790B2
+E0E9 E790BA
+E0EA E79195
+E0EB E790BF
+E0EC E7919F
+E0ED E79199
+E0EE E79181
+E0EF E7919C
+E0F0 E791A9
+E0F1 E791B0
+E0F2 E791A3
+E0F3 E791AA
+E0F4 E791B6
+E0F5 E791BE
+E0F6 E7928B
+E0F7 E7929E
+E0F8 E792A7
+E0F9 E7938A
+E0FA E7938F
+E0FB E79394
+E0FC E78FB1
+E140 E793A0
+E141 E793A3
+E142 E793A7
+E143 E793A9
+E144 E793AE
+E145 E793B2
+E146 E793B0
+E147 E793B1
+E148 E793B8
+E149 E793B7
+E14A E79484
+E14B E79483
+E14C E79485
+E14D E7948C
+E14E E7948E
+E14F E7948D
+E150 E79495
+E151 E79493
+E152 E7949E
+E153 E794A6
+E154 E794AC
+E155 E794BC
+E156 E79584
+E157 E7958D
+E158 E7958A
+E159 E79589
+E15A E7959B
+E15B E79586
+E15C E7959A
+E15D E795A9
+E15E E795A4
+E15F E795A7
+E160 E795AB
+E161 E795AD
+E162 E795B8
+E163 E795B6
+E164 E79686
+E165 E79687
+E166 E795B4
+E167 E7968A
+E168 E79689
+E169 E79682
+E16A E79694
+E16B E7969A
+E16C E7969D
+E16D E796A5
+E16E E796A3
+E16F E79782
+E170 E796B3
+E171 E79783
+E172 E796B5
+E173 E796BD
+E174 E796B8
+E175 E796BC
+E176 E796B1
+E177 E7978D
+E178 E7978A
+E179 E79792
+E17A E79799
+E17B E797A3
+E17C E7979E
+E17D E797BE
+E17E E797BF
+E180 E797BC
+E181 E79881
+E182 E797B0
+E183 E797BA
+E184 E797B2
+E185 E797B3
+E186 E7988B
+E187 E7988D
+E188 E79889
+E189 E7989F
+E18A E798A7
+E18B E798A0
+E18C E798A1
+E18D E798A2
+E18E E798A4
+E18F E798B4
+E190 E798B0
+E191 E798BB
+E192 E79987
+E193 E79988
+E194 E79986
+E195 E7999C
+E196 E79998
+E197 E799A1
+E198 E799A2
+E199 E799A8
+E19A E799A9
+E19B E799AA
+E19C E799A7
+E19D E799AC
+E19E E799B0
+E19F E799B2
+E1A0 E799B6
+E1A1 E799B8
+E1A2 E799BC
+E1A3 E79A80
+E1A4 E79A83
+E1A5 E79A88
+E1A6 E79A8B
+E1A7 E79A8E
+E1A8 E79A96
+E1A9 E79A93
+E1AA E79A99
+E1AB E79A9A
+E1AC E79AB0
+E1AD E79AB4
+E1AE E79AB8
+E1AF E79AB9
+E1B0 E79ABA
+E1B1 E79B82
+E1B2 E79B8D
+E1B3 E79B96
+E1B4 E79B92
+E1B5 E79B9E
+E1B6 E79BA1
+E1B7 E79BA5
+E1B8 E79BA7
+E1B9 E79BAA
+E1BA E898AF
+E1BB E79BBB
+E1BC E79C88
+E1BD E79C87
+E1BE E79C84
+E1BF E79CA9
+E1C0 E79CA4
+E1C1 E79C9E
+E1C2 E79CA5
+E1C3 E79CA6
+E1C4 E79C9B
+E1C5 E79CB7
+E1C6 E79CB8
+E1C7 E79D87
+E1C8 E79D9A
+E1C9 E79DA8
+E1CA E79DAB
+E1CB E79D9B
+E1CC E79DA5
+E1CD E79DBF
+E1CE E79DBE
+E1CF E79DB9
+E1D0 E79E8E
+E1D1 E79E8B
+E1D2 E79E91
+E1D3 E79EA0
+E1D4 E79E9E
+E1D5 E79EB0
+E1D6 E79EB6
+E1D7 E79EB9
+E1D8 E79EBF
+E1D9 E79EBC
+E1DA E79EBD
+E1DB E79EBB
+E1DC E79F87
+E1DD E79F8D
+E1DE E79F97
+E1DF E79F9A
+E1E0 E79F9C
+E1E1 E79FA3
+E1E2 E79FAE
+E1E3 E79FBC
+E1E4 E7A08C
+E1E5 E7A092
+E1E6 E7A4A6
+E1E7 E7A0A0
+E1E8 E7A4AA
+E1E9 E7A185
+E1EA E7A28E
+E1EB E7A1B4
+E1EC E7A286
+E1ED E7A1BC
+E1EE E7A29A
+E1EF E7A28C
+E1F0 E7A2A3
+E1F1 E7A2B5
+E1F2 E7A2AA
+E1F3 E7A2AF
+E1F4 E7A391
+E1F5 E7A386
+E1F6 E7A38B
+E1F7 E7A394
+E1F8 E7A2BE
+E1F9 E7A2BC
+E1FA E7A385
+E1FB E7A38A
+E1FC E7A3AC
+E240 E7A3A7
+E241 E7A39A
+E242 E7A3BD
+E243 E7A3B4
+E244 E7A487
+E245 E7A492
+E246 E7A491
+E247 E7A499
+E248 E7A4AC
+E249 E7A4AB
+E24A E7A580
+E24B E7A5A0
+E24C E7A597
+E24D E7A59F
+E24E E7A59A
+E24F E7A595
+E250 E7A593
+E251 E7A5BA
+E252 E7A5BF
+E253 E7A68A
+E254 E7A69D
+E255 E7A6A7
+E256 E9BD8B
+E257 E7A6AA
+E258 E7A6AE
+E259 E7A6B3
+E25A E7A6B9
+E25B E7A6BA
+E25C E7A789
+E25D E7A795
+E25E E7A7A7
+E25F E7A7AC
+E260 E7A7A1
+E261 E7A7A3
+E262 E7A888
+E263 E7A88D
+E264 E7A898
+E265 E7A899
+E266 E7A8A0
+E267 E7A89F
+E268 E7A680
+E269 E7A8B1
+E26A E7A8BB
+E26B E7A8BE
+E26C E7A8B7
+E26D E7A983
+E26E E7A997
+E26F E7A989
+E270 E7A9A1
+E271 E7A9A2
+E272 E7A9A9
+E273 E9BE9D
+E274 E7A9B0
+E275 E7A9B9
+E276 E7A9BD
+E277 E7AA88
+E278 E7AA97
+E279 E7AA95
+E27A E7AA98
+E27B E7AA96
+E27C E7AAA9
+E27D E7AB88
+E27E E7AAB0
+E280 E7AAB6
+E281 E7AB85
+E282 E7AB84
+E283 E7AABF
+E284 E98283
+E285 E7AB87
+E286 E7AB8A
+E287 E7AB8D
+E288 E7AB8F
+E289 E7AB95
+E28A E7AB93
+E28B E7AB99
+E28C E7AB9A
+E28D E7AB9D
+E28E E7ABA1
+E28F E7ABA2
+E290 E7ABA6
+E291 E7ABAD
+E292 E7ABB0
+E293 E7AC82
+E294 E7AC8F
+E295 E7AC8A
+E296 E7AC86
+E297 E7ACB3
+E298 E7AC98
+E299 E7AC99
+E29A E7AC9E
+E29B E7ACB5
+E29C E7ACA8
+E29D E7ACB6
+E29E E7AD90
+E29F E7ADBA
+E2A0 E7AC84
+E2A1 E7AD8D
+E2A2 E7AC8B
+E2A3 E7AD8C
+E2A4 E7AD85
+E2A5 E7ADB5
+E2A6 E7ADA5
+E2A7 E7ADB4
+E2A8 E7ADA7
+E2A9 E7ADB0
+E2AA E7ADB1
+E2AB E7ADAC
+E2AC E7ADAE
+E2AD E7AE9D
+E2AE E7AE98
+E2AF E7AE9F
+E2B0 E7AE8D
+E2B1 E7AE9C
+E2B2 E7AE9A
+E2B3 E7AE8B
+E2B4 E7AE92
+E2B5 E7AE8F
+E2B6 E7AD9D
+E2B7 E7AE99
+E2B8 E7AF8B
+E2B9 E7AF81
+E2BA E7AF8C
+E2BB E7AF8F
+E2BC E7AEB4
+E2BD E7AF86
+E2BE E7AF9D
+E2BF E7AFA9
+E2C0 E7B091
+E2C1 E7B094
+E2C2 E7AFA6
+E2C3 E7AFA5
+E2C4 E7B1A0
+E2C5 E7B080
+E2C6 E7B087
+E2C7 E7B093
+E2C8 E7AFB3
+E2C9 E7AFB7
+E2CA E7B097
+E2CB E7B08D
+E2CC E7AFB6
+E2CD E7B0A3
+E2CE E7B0A7
+E2CF E7B0AA
+E2D0 E7B09F
+E2D1 E7B0B7
+E2D2 E7B0AB
+E2D3 E7B0BD
+E2D4 E7B18C
+E2D5 E7B183
+E2D6 E7B194
+E2D7 E7B18F
+E2D8 E7B180
+E2D9 E7B190
+E2DA E7B198
+E2DB E7B19F
+E2DC E7B1A4
+E2DD E7B196
+E2DE E7B1A5
+E2DF E7B1AC
+E2E0 E7B1B5
+E2E1 E7B283
+E2E2 E7B290
+E2E3 E7B2A4
+E2E4 E7B2AD
+E2E5 E7B2A2
+E2E6 E7B2AB
+E2E7 E7B2A1
+E2E8 E7B2A8
+E2E9 E7B2B3
+E2EA E7B2B2
+E2EB E7B2B1
+E2EC E7B2AE
+E2ED E7B2B9
+E2EE E7B2BD
+E2EF E7B380
+E2F0 E7B385
+E2F1 E7B382
+E2F2 E7B398
+E2F3 E7B392
+E2F4 E7B39C
+E2F5 E7B3A2
+E2F6 E9ACBB
+E2F7 E7B3AF
+E2F8 E7B3B2
+E2F9 E7B3B4
+E2FA E7B3B6
+E2FB E7B3BA
+E2FC E7B486
+E340 E7B482
+E341 E7B49C
+E342 E7B495
+E343 E7B48A
+E344 E7B585
+E345 E7B58B
+E346 E7B4AE
+E347 E7B4B2
+E348 E7B4BF
+E349 E7B4B5
+E34A E7B586
+E34B E7B5B3
+E34C E7B596
+E34D E7B58E
+E34E E7B5B2
+E34F E7B5A8
+E350 E7B5AE
+E351 E7B58F
+E352 E7B5A3
+E353 E7B693
+E354 E7B689
+E355 E7B59B
+E356 E7B68F
+E357 E7B5BD
+E358 E7B69B
+E359 E7B6BA
+E35A E7B6AE
+E35B E7B6A3
+E35C E7B6B5
+E35D E7B787
+E35E E7B6BD
+E35F E7B6AB
+E360 E7B8BD
+E361 E7B6A2
+E362 E7B6AF
+E363 E7B79C
+E364 E7B6B8
+E365 E7B69F
+E366 E7B6B0
+E367 E7B798
+E368 E7B79D
+E369 E7B7A4
+E36A E7B79E
+E36B E7B7BB
+E36C E7B7B2
+E36D E7B7A1
+E36E E7B885
+E36F E7B88A
+E370 E7B8A3
+E371 E7B8A1
+E372 E7B892
+E373 E7B8B1
+E374 E7B89F
+E375 E7B889
+E376 E7B88B
+E377 E7B8A2
+E378 E7B986
+E379 E7B9A6
+E37A E7B8BB
+E37B E7B8B5
+E37C E7B8B9
+E37D E7B983
+E37E E7B8B7
+E380 E7B8B2
+E381 E7B8BA
+E382 E7B9A7
+E383 E7B99D
+E384 E7B996
+E385 E7B99E
+E386 E7B999
+E387 E7B99A
+E388 E7B9B9
+E389 E7B9AA
+E38A E7B9A9
+E38B E7B9BC
+E38C E7B9BB
+E38D E7BA83
+E38E E7B795
+E38F E7B9BD
+E390 E8BEAE
+E391 E7B9BF
+E392 E7BA88
+E393 E7BA89
+E394 E7BA8C
+E395 E7BA92
+E396 E7BA90
+E397 E7BA93
+E398 E7BA94
+E399 E7BA96
+E39A E7BA8E
+E39B E7BA9B
+E39C E7BA9C
+E39D E7BCB8
+E39E E7BCBA
+E39F E7BD85
+E3A0 E7BD8C
+E3A1 E7BD8D
+E3A2 E7BD8E
+E3A3 E7BD90
+E3A4 E7BD91
+E3A5 E7BD95
+E3A6 E7BD94
+E3A7 E7BD98
+E3A8 E7BD9F
+E3A9 E7BDA0
+E3AA E7BDA8
+E3AB E7BDA9
+E3AC E7BDA7
+E3AD E7BDB8
+E3AE E7BE82
+E3AF E7BE86
+E3B0 E7BE83
+E3B1 E7BE88
+E3B2 E7BE87
+E3B3 E7BE8C
+E3B4 E7BE94
+E3B5 E7BE9E
+E3B6 E7BE9D
+E3B7 E7BE9A
+E3B8 E7BEA3
+E3B9 E7BEAF
+E3BA E7BEB2
+E3BB E7BEB9
+E3BC E7BEAE
+E3BD E7BEB6
+E3BE E7BEB8
+E3BF E8ADB1
+E3C0 E7BF85
+E3C1 E7BF86
+E3C2 E7BF8A
+E3C3 E7BF95
+E3C4 E7BF94
+E3C5 E7BFA1
+E3C6 E7BFA6
+E3C7 E7BFA9
+E3C8 E7BFB3
+E3C9 E7BFB9
+E3CA E9A39C
+E3CB E88086
+E3CC E88084
+E3CD E8808B
+E3CE E88092
+E3CF E88098
+E3D0 E88099
+E3D1 E8809C
+E3D2 E880A1
+E3D3 E880A8
+E3D4 E880BF
+E3D5 E880BB
+E3D6 E8818A
+E3D7 E88186
+E3D8 E88192
+E3D9 E88198
+E3DA E8819A
+E3DB E8819F
+E3DC E881A2
+E3DD E881A8
+E3DE E881B3
+E3DF E881B2
+E3E0 E881B0
+E3E1 E881B6
+E3E2 E881B9
+E3E3 E881BD
+E3E4 E881BF
+E3E5 E88284
+E3E6 E88286
+E3E7 E88285
+E3E8 E8829B
+E3E9 E88293
+E3EA E8829A
+E3EB E882AD
+E3EC E58690
+E3ED E882AC
+E3EE E8839B
+E3EF E883A5
+E3F0 E88399
+E3F1 E8839D
+E3F2 E88384
+E3F3 E8839A
+E3F4 E88396
+E3F5 E88489
+E3F6 E883AF
+E3F7 E883B1
+E3F8 E8849B
+E3F9 E884A9
+E3FA E884A3
+E3FB E884AF
+E3FC E8858B
+E440 E99A8B
+E441 E88586
+E442 E884BE
+E443 E88593
+E444 E88591
+E445 E883BC
+E446 E885B1
+E447 E885AE
+E448 E885A5
+E449 E885A6
+E44A E885B4
+E44B E88683
+E44C E88688
+E44D E8868A
+E44E E88680
+E44F E88682
+E450 E886A0
+E451 E88695
+E452 E886A4
+E453 E886A3
+E454 E8859F
+E455 E88693
+E456 E886A9
+E457 E886B0
+E458 E886B5
+E459 E886BE
+E45A E886B8
+E45B E886BD
+E45C E88780
+E45D E88782
+E45E E886BA
+E45F E88789
+E460 E8878D
+E461 E88791
+E462 E88799
+E463 E88798
+E464 E88788
+E465 E8879A
+E466 E8879F
+E467 E887A0
+E468 E887A7
+E469 E887BA
+E46A E887BB
+E46B E887BE
+E46C E88881
+E46D E88882
+E46E E88885
+E46F E88887
+E470 E8888A
+E471 E8888D
+E472 E88890
+E473 E88896
+E474 E888A9
+E475 E888AB
+E476 E888B8
+E477 E888B3
+E478 E88980
+E479 E88999
+E47A E88998
+E47B E8899D
+E47C E8899A
+E47D E8899F
+E47E E889A4
+E480 E889A2
+E481 E889A8
+E482 E889AA
+E483 E889AB
+E484 E888AE
+E485 E889B1
+E486 E889B7
+E487 E889B8
+E488 E889BE
+E489 E88A8D
+E48A E88A92
+E48B E88AAB
+E48C E88A9F
+E48D E88ABB
+E48E E88AAC
+E48F E88BA1
+E490 E88BA3
+E491 E88B9F
+E492 E88B92
+E493 E88BB4
+E494 E88BB3
+E495 E88BBA
+E496 E88E93
+E497 E88C83
+E498 E88BBB
+E499 E88BB9
+E49A E88B9E
+E49B E88C86
+E49C E88B9C
+E49D E88C89
+E49E E88B99
+E49F E88CB5
+E4A0 E88CB4
+E4A1 E88C96
+E4A2 E88CB2
+E4A3 E88CB1
+E4A4 E88D80
+E4A5 E88CB9
+E4A6 E88D90
+E4A7 E88D85
+E4A8 E88CAF
+E4A9 E88CAB
+E4AA E88C97
+E4AB E88C98
+E4AC E88E85
+E4AD E88E9A
+E4AE E88EAA
+E4AF E88E9F
+E4B0 E88EA2
+E4B1 E88E96
+E4B2 E88CA3
+E4B3 E88E8E
+E4B4 E88E87
+E4B5 E88E8A
+E4B6 E88DBC
+E4B7 E88EB5
+E4B8 E88DB3
+E4B9 E88DB5
+E4BA E88EA0
+E4BB E88E89
+E4BC E88EA8
+E4BD E88FB4
+E4BE E89093
+E4BF E88FAB
+E4C0 E88F8E
+E4C1 E88FBD
+E4C2 E89083
+E4C3 E88F98
+E4C4 E8908B
+E4C5 E88F81
+E4C6 E88FB7
+E4C7 E89087
+E4C8 E88FA0
+E4C9 E88FB2
+E4CA E8908D
+E4CB E890A2
+E4CC E890A0
+E4CD E88EBD
+E4CE E890B8
+E4CF E89486
+E4D0 E88FBB
+E4D1 E891AD
+E4D2 E890AA
+E4D3 E890BC
+E4D4 E8959A
+E4D5 E89284
+E4D6 E891B7
+E4D7 E891AB
+E4D8 E892AD
+E4D9 E891AE
+E4DA E89282
+E4DB E891A9
+E4DC E89186
+E4DD E890AC
+E4DE E891AF
+E4DF E891B9
+E4E0 E890B5
+E4E1 E8938A
+E4E2 E891A2
+E4E3 E892B9
+E4E4 E892BF
+E4E5 E8929F
+E4E6 E89399
+E4E7 E8938D
+E4E8 E892BB
+E4E9 E8939A
+E4EA E89390
+E4EB E89381
+E4EC E89386
+E4ED E89396
+E4EE E892A1
+E4EF E894A1
+E4F0 E893BF
+E4F1 E893B4
+E4F2 E89497
+E4F3 E89498
+E4F4 E894AC
+E4F5 E8949F
+E4F6 E89495
+E4F7 E89494
+E4F8 E893BC
+E4F9 E89580
+E4FA E895A3
+E4FB E89598
+E4FC E89588
+E540 E89581
+E541 E89882
+E542 E8958B
+E543 E89595
+E544 E89680
+E545 E896A4
+E546 E89688
+E547 E89691
+E548 E8968A
+E549 E896A8
+E54A E895AD
+E54B E89694
+E54C E8969B
+E54D E897AA
+E54E E89687
+E54F E8969C
+E550 E895B7
+E551 E895BE
+E552 E89690
+E553 E89789
+E554 E896BA
+E555 E8978F
+E556 E896B9
+E557 E89790
+E558 E89795
+E559 E8979D
+E55A E897A5
+E55B E8979C
+E55C E897B9
+E55D E8988A
+E55E E89893
+E55F E8988B
+E560 E897BE
+E561 E897BA
+E562 E89886
+E563 E898A2
+E564 E8989A
+E565 E898B0
+E566 E898BF
+E567 E8998D
+E568 E4B995
+E569 E89994
+E56A E8999F
+E56B E899A7
+E56C E899B1
+E56D E89A93
+E56E E89AA3
+E56F E89AA9
+E570 E89AAA
+E571 E89A8B
+E572 E89A8C
+E573 E89AB6
+E574 E89AAF
+E575 E89B84
+E576 E89B86
+E577 E89AB0
+E578 E89B89
+E579 E8A0A3
+E57A E89AAB
+E57B E89B94
+E57C E89B9E
+E57D E89BA9
+E57E E89BAC
+E580 E89B9F
+E581 E89B9B
+E582 E89BAF
+E583 E89C92
+E584 E89C86
+E585 E89C88
+E586 E89C80
+E587 E89C83
+E588 E89BBB
+E589 E89C91
+E58A E89C89
+E58B E89C8D
+E58C E89BB9
+E58D E89C8A
+E58E E89CB4
+E58F E89CBF
+E590 E89CB7
+E591 E89CBB
+E592 E89CA5
+E593 E89CA9
+E594 E89C9A
+E595 E89DA0
+E596 E89D9F
+E597 E89DB8
+E598 E89D8C
+E599 E89D8E
+E59A E89DB4
+E59B E89D97
+E59C E89DA8
+E59D E89DAE
+E59E E89D99
+E59F E89D93
+E5A0 E89DA3
+E5A1 E89DAA
+E5A2 E8A085
+E5A3 E89EA2
+E5A4 E89E9F
+E5A5 E89E82
+E5A6 E89EAF
+E5A7 E89F8B
+E5A8 E89EBD
+E5A9 E89F80
+E5AA E89F90
+E5AB E99B96
+E5AC E89EAB
+E5AD E89F84
+E5AE E89EB3
+E5AF E89F87
+E5B0 E89F86
+E5B1 E89EBB
+E5B2 E89FAF
+E5B3 E89FB2
+E5B4 E89FA0
+E5B5 E8A08F
+E5B6 E8A08D
+E5B7 E89FBE
+E5B8 E89FB6
+E5B9 E89FB7
+E5BA E8A08E
+E5BB E89F92
+E5BC E8A091
+E5BD E8A096
+E5BE E8A095
+E5BF E8A0A2
+E5C0 E8A0A1
+E5C1 E8A0B1
+E5C2 E8A0B6
+E5C3 E8A0B9
+E5C4 E8A0A7
+E5C5 E8A0BB
+E5C6 E8A184
+E5C7 E8A182
+E5C8 E8A192
+E5C9 E8A199
+E5CA E8A19E
+E5CB E8A1A2
+E5CC E8A1AB
+E5CD E8A281
+E5CE E8A1BE
+E5CF E8A29E
+E5D0 E8A1B5
+E5D1 E8A1BD
+E5D2 E8A2B5
+E5D3 E8A1B2
+E5D4 E8A282
+E5D5 E8A297
+E5D6 E8A292
+E5D7 E8A2AE
+E5D8 E8A299
+E5D9 E8A2A2
+E5DA E8A28D
+E5DB E8A2A4
+E5DC E8A2B0
+E5DD E8A2BF
+E5DE E8A2B1
+E5DF E8A383
+E5E0 E8A384
+E5E1 E8A394
+E5E2 E8A398
+E5E3 E8A399
+E5E4 E8A39D
+E5E5 E8A3B9
+E5E6 E8A482
+E5E7 E8A3BC
+E5E8 E8A3B4
+E5E9 E8A3A8
+E5EA E8A3B2
+E5EB E8A484
+E5EC E8A48C
+E5ED E8A48A
+E5EE E8A493
+E5EF E8A583
+E5F0 E8A49E
+E5F1 E8A4A5
+E5F2 E8A4AA
+E5F3 E8A4AB
+E5F4 E8A581
+E5F5 E8A584
+E5F6 E8A4BB
+E5F7 E8A4B6
+E5F8 E8A4B8
+E5F9 E8A58C
+E5FA E8A49D
+E5FB E8A5A0
+E5FC E8A59E
+E640 E8A5A6
+E641 E8A5A4
+E642 E8A5AD
+E643 E8A5AA
+E644 E8A5AF
+E645 E8A5B4
+E646 E8A5B7
+E647 E8A5BE
+E648 E8A683
+E649 E8A688
+E64A E8A68A
+E64B E8A693
+E64C E8A698
+E64D E8A6A1
+E64E E8A6A9
+E64F E8A6A6
+E650 E8A6AC
+E651 E8A6AF
+E652 E8A6B2
+E653 E8A6BA
+E654 E8A6BD
+E655 E8A6BF
+E656 E8A780
+E657 E8A79A
+E658 E8A79C
+E659 E8A79D
+E65A E8A7A7
+E65B E8A7B4
+E65C E8A7B8
+E65D E8A883
+E65E E8A896
+E65F E8A890
+E660 E8A88C
+E661 E8A89B
+E662 E8A89D
+E663 E8A8A5
+E664 E8A8B6
+E665 E8A981
+E666 E8A99B
+E667 E8A992
+E668 E8A986
+E669 E8A988
+E66A E8A9BC
+E66B E8A9AD
+E66C E8A9AC
+E66D E8A9A2
+E66E E8AA85
+E66F E8AA82
+E670 E8AA84
+E671 E8AAA8
+E672 E8AAA1
+E673 E8AA91
+E674 E8AAA5
+E675 E8AAA6
+E676 E8AA9A
+E677 E8AAA3
+E678 E8AB84
+E679 E8AB8D
+E67A E8AB82
+E67B E8AB9A
+E67C E8ABAB
+E67D E8ABB3
+E67E E8ABA7
+E680 E8ABA4
+E681 E8ABB1
+E682 E8AC94
+E683 E8ABA0
+E684 E8ABA2
+E685 E8ABB7
+E686 E8AB9E
+E687 E8AB9B
+E688 E8AC8C
+E689 E8AC87
+E68A E8AC9A
+E68B E8ABA1
+E68C E8AC96
+E68D E8AC90
+E68E E8AC97
+E68F E8ACA0
+E690 E8ACB3
+E691 E99EAB
+E692 E8ACA6
+E693 E8ACAB
+E694 E8ACBE
+E695 E8ACA8
+E696 E8AD81
+E697 E8AD8C
+E698 E8AD8F
+E699 E8AD8E
+E69A E8AD89
+E69B E8AD96
+E69C E8AD9B
+E69D E8AD9A
+E69E E8ADAB
+E69F E8AD9F
+E6A0 E8ADAC
+E6A1 E8ADAF
+E6A2 E8ADB4
+E6A3 E8ADBD
+E6A4 E8AE80
+E6A5 E8AE8C
+E6A6 E8AE8E
+E6A7 E8AE92
+E6A8 E8AE93
+E6A9 E8AE96
+E6AA E8AE99
+E6AB E8AE9A
+E6AC E8B0BA
+E6AD E8B181
+E6AE E8B0BF
+E6AF E8B188
+E6B0 E8B18C
+E6B1 E8B18E
+E6B2 E8B190
+E6B3 E8B195
+E6B4 E8B1A2
+E6B5 E8B1AC
+E6B6 E8B1B8
+E6B7 E8B1BA
+E6B8 E8B282
+E6B9 E8B289
+E6BA E8B285
+E6BB E8B28A
+E6BC E8B28D
+E6BD E8B28E
+E6BE E8B294
+E6BF E8B1BC
+E6C0 E8B298
+E6C1 E6889D
+E6C2 E8B2AD
+E6C3 E8B2AA
+E6C4 E8B2BD
+E6C5 E8B2B2
+E6C6 E8B2B3
+E6C7 E8B2AE
+E6C8 E8B2B6
+E6C9 E8B388
+E6CA E8B381
+E6CB E8B3A4
+E6CC E8B3A3
+E6CD E8B39A
+E6CE E8B3BD
+E6CF E8B3BA
+E6D0 E8B3BB
+E6D1 E8B484
+E6D2 E8B485
+E6D3 E8B48A
+E6D4 E8B487
+E6D5 E8B48F
+E6D6 E8B48D
+E6D7 E8B490
+E6D8 E9BD8E
+E6D9 E8B493
+E6DA E8B38D
+E6DB E8B494
+E6DC E8B496
+E6DD E8B5A7
+E6DE E8B5AD
+E6DF E8B5B1
+E6E0 E8B5B3
+E6E1 E8B681
+E6E2 E8B699
+E6E3 E8B782
+E6E4 E8B6BE
+E6E5 E8B6BA
+E6E6 E8B78F
+E6E7 E8B79A
+E6E8 E8B796
+E6E9 E8B78C
+E6EA E8B79B
+E6EB E8B78B
+E6EC E8B7AA
+E6ED E8B7AB
+E6EE E8B79F
+E6EF E8B7A3
+E6F0 E8B7BC
+E6F1 E8B888
+E6F2 E8B889
+E6F3 E8B7BF
+E6F4 E8B89D
+E6F5 E8B89E
+E6F6 E8B890
+E6F7 E8B89F
+E6F8 E8B982
+E6F9 E8B8B5
+E6FA E8B8B0
+E6FB E8B8B4
+E6FC E8B98A
+E740 E8B987
+E741 E8B989
+E742 E8B98C
+E743 E8B990
+E744 E8B988
+E745 E8B999
+E746 E8B9A4
+E747 E8B9A0
+E748 E8B8AA
+E749 E8B9A3
+E74A E8B995
+E74B E8B9B6
+E74C E8B9B2
+E74D E8B9BC
+E74E E8BA81
+E74F E8BA87
+E750 E8BA85
+E751 E8BA84
+E752 E8BA8B
+E753 E8BA8A
+E754 E8BA93
+E755 E8BA91
+E756 E8BA94
+E757 E8BA99
+E758 E8BAAA
+E759 E8BAA1
+E75A E8BAAC
+E75B E8BAB0
+E75C E8BB86
+E75D E8BAB1
+E75E E8BABE
+E75F E8BB85
+E760 E8BB88
+E761 E8BB8B
+E762 E8BB9B
+E763 E8BBA3
+E764 E8BBBC
+E765 E8BBBB
+E766 E8BBAB
+E767 E8BBBE
+E768 E8BC8A
+E769 E8BC85
+E76A E8BC95
+E76B E8BC92
+E76C E8BC99
+E76D E8BC93
+E76E E8BC9C
+E76F E8BC9F
+E770 E8BC9B
+E771 E8BC8C
+E772 E8BCA6
+E773 E8BCB3
+E774 E8BCBB
+E775 E8BCB9
+E776 E8BD85
+E777 E8BD82
+E778 E8BCBE
+E779 E8BD8C
+E77A E8BD89
+E77B E8BD86
+E77C E8BD8E
+E77D E8BD97
+E77E E8BD9C
+E780 E8BDA2
+E781 E8BDA3
+E782 E8BDA4
+E783 E8BE9C
+E784 E8BE9F
+E785 E8BEA3
+E786 E8BEAD
+E787 E8BEAF
+E788 E8BEB7
+E789 E8BF9A
+E78A E8BFA5
+E78B E8BFA2
+E78C E8BFAA
+E78D E8BFAF
+E78E E98287
+E78F E8BFB4
+E790 E98085
+E791 E8BFB9
+E792 E8BFBA
+E793 E98091
+E794 E98095
+E795 E980A1
+E796 E9808D
+E797 E9809E
+E798 E98096
+E799 E9808B
+E79A E980A7
+E79B E980B6
+E79C E980B5
+E79D E980B9
+E79E E8BFB8
+E79F E9818F
+E7A0 E98190
+E7A1 E98191
+E7A2 E98192
+E7A3 E9808E
+E7A4 E98189
+E7A5 E980BE
+E7A6 E98196
+E7A7 E98198
+E7A8 E9819E
+E7A9 E981A8
+E7AA E981AF
+E7AB E981B6
+E7AC E99AA8
+E7AD E981B2
+E7AE E98282
+E7AF E981BD
+E7B0 E98281
+E7B1 E98280
+E7B2 E9828A
+E7B3 E98289
+E7B4 E9828F
+E7B5 E982A8
+E7B6 E982AF
+E7B7 E982B1
+E7B8 E982B5
+E7B9 E983A2
+E7BA E983A4
+E7BB E68988
+E7BC E9839B
+E7BD E98482
+E7BE E98492
+E7BF E98499
+E7C0 E984B2
+E7C1 E984B0
+E7C2 E9858A
+E7C3 E98596
+E7C4 E98598
+E7C5 E985A3
+E7C6 E985A5
+E7C7 E985A9
+E7C8 E985B3
+E7C9 E985B2
+E7CA E9868B
+E7CB E98689
+E7CC E98682
+E7CD E986A2
+E7CE E986AB
+E7CF E986AF
+E7D0 E986AA
+E7D1 E986B5
+E7D2 E986B4
+E7D3 E986BA
+E7D4 E98780
+E7D5 E98781
+E7D6 E98789
+E7D7 E9878B
+E7D8 E98790
+E7D9 E98796
+E7DA E9879F
+E7DB E987A1
+E7DC E9879B
+E7DD E987BC
+E7DE E987B5
+E7DF E987B6
+E7E0 E9889E
+E7E1 E987BF
+E7E2 E98894
+E7E3 E988AC
+E7E4 E98895
+E7E5 E98891
+E7E6 E9899E
+E7E7 E98997
+E7E8 E98985
+E7E9 E98989
+E7EA E989A4
+E7EB E98988
+E7EC E98A95
+E7ED E988BF
+E7EE E9898B
+E7EF E98990
+E7F0 E98A9C
+E7F1 E98A96
+E7F2 E98A93
+E7F3 E98A9B
+E7F4 E9899A
+E7F5 E98B8F
+E7F6 E98AB9
+E7F7 E98AB7
+E7F8 E98BA9
+E7F9 E98C8F
+E7FA E98BBA
+E7FB E98D84
+E7FC E98CAE
+E840 E98C99
+E841 E98CA2
+E842 E98C9A
+E843 E98CA3
+E844 E98CBA
+E845 E98CB5
+E846 E98CBB
+E847 E98D9C
+E848 E98DA0
+E849 E98DBC
+E84A E98DAE
+E84B E98D96
+E84C E98EB0
+E84D E98EAC
+E84E E98EAD
+E84F E98E94
+E850 E98EB9
+E851 E98F96
+E852 E98F97
+E853 E98FA8
+E854 E98FA5
+E855 E98F98
+E856 E98F83
+E857 E98F9D
+E858 E98F90
+E859 E98F88
+E85A E98FA4
+E85B E9909A
+E85C E99094
+E85D E99093
+E85E E99083
+E85F E99087
+E860 E99090
+E861 E990B6
+E862 E990AB
+E863 E990B5
+E864 E990A1
+E865 E990BA
+E866 E99181
+E867 E99192
+E868 E99184
+E869 E9919B
+E86A E991A0
+E86B E991A2
+E86C E9919E
+E86D E991AA
+E86E E988A9
+E86F E991B0
+E870 E991B5
+E871 E991B7
+E872 E991BD
+E873 E9919A
+E874 E991BC
+E875 E991BE
+E876 E99281
+E877 E991BF
+E878 E99682
+E879 E99687
+E87A E9968A
+E87B E99694
+E87C E99696
+E87D E99698
+E87E E99699
+E880 E996A0
+E881 E996A8
+E882 E996A7
+E883 E996AD
+E884 E996BC
+E885 E996BB
+E886 E996B9
+E887 E996BE
+E888 E9978A
+E889 E6BFB6
+E88A E99783
+E88B E9978D
+E88C E9978C
+E88D E99795
+E88E E99794
+E88F E99796
+E890 E9979C
+E891 E997A1
+E892 E997A5
+E893 E997A2
+E894 E998A1
+E895 E998A8
+E896 E998AE
+E897 E998AF
+E898 E99982
+E899 E9998C
+E89A E9998F
+E89B E9998B
+E89C E999B7
+E89D E9999C
+E89E E9999E
+E89F E9999D
+E8A0 E9999F
+E8A1 E999A6
+E8A2 E999B2
+E8A3 E999AC
+E8A4 E99A8D
+E8A5 E99A98
+E8A6 E99A95
+E8A7 E99A97
+E8A8 E99AAA
+E8A9 E99AA7
+E8AA E99AB1
+E8AB E99AB2
+E8AC E99AB0
+E8AD E99AB4
+E8AE E99AB6
+E8AF E99AB8
+E8B0 E99AB9
+E8B1 E99B8E
+E8B2 E99B8B
+E8B3 E99B89
+E8B4 E99B8D
+E8B5 E8A58D
+E8B6 E99B9C
+E8B7 E99C8D
+E8B8 E99B95
+E8B9 E99BB9
+E8BA E99C84
+E8BB E99C86
+E8BC E99C88
+E8BD E99C93
+E8BE E99C8E
+E8BF E99C91
+E8C0 E99C8F
+E8C1 E99C96
+E8C2 E99C99
+E8C3 E99CA4
+E8C4 E99CAA
+E8C5 E99CB0
+E8C6 E99CB9
+E8C7 E99CBD
+E8C8 E99CBE
+E8C9 E99D84
+E8CA E99D86
+E8CB E99D88
+E8CC E99D82
+E8CD E99D89
+E8CE E99D9C
+E8CF E99DA0
+E8D0 E99DA4
+E8D1 E99DA6
+E8D2 E99DA8
+E8D3 E58B92
+E8D4 E99DAB
+E8D5 E99DB1
+E8D6 E99DB9
+E8D7 E99E85
+E8D8 E99DBC
+E8D9 E99E81
+E8DA E99DBA
+E8DB E99E86
+E8DC E99E8B
+E8DD E99E8F
+E8DE E99E90
+E8DF E99E9C
+E8E0 E99EA8
+E8E1 E99EA6
+E8E2 E99EA3
+E8E3 E99EB3
+E8E4 E99EB4
+E8E5 E99F83
+E8E6 E99F86
+E8E7 E99F88
+E8E8 E99F8B
+E8E9 E99F9C
+E8EA E99FAD
+E8EB E9BD8F
+E8EC E99FB2
+E8ED E7AB9F
+E8EE E99FB6
+E8EF E99FB5
+E8F0 E9A08F
+E8F1 E9A08C
+E8F2 E9A0B8
+E8F3 E9A0A4
+E8F4 E9A0A1
+E8F5 E9A0B7
+E8F6 E9A0BD
+E8F7 E9A186
+E8F8 E9A18F
+E8F9 E9A18B
+E8FA E9A1AB
+E8FB E9A1AF
+E8FC E9A1B0
+E940 E9A1B1
+E941 E9A1B4
+E942 E9A1B3
+E943 E9A2AA
+E944 E9A2AF
+E945 E9A2B1
+E946 E9A2B6
+E947 E9A384
+E948 E9A383
+E949 E9A386
+E94A E9A3A9
+E94B E9A3AB
+E94C E9A483
+E94D E9A489
+E94E E9A492
+E94F E9A494
+E950 E9A498
+E951 E9A4A1
+E952 E9A49D
+E953 E9A49E
+E954 E9A4A4
+E955 E9A4A0
+E956 E9A4AC
+E957 E9A4AE
+E958 E9A4BD
+E959 E9A4BE
+E95A E9A582
+E95B E9A589
+E95C E9A585
+E95D E9A590
+E95E E9A58B
+E95F E9A591
+E960 E9A592
+E961 E9A58C
+E962 E9A595
+E963 E9A697
+E964 E9A698
+E965 E9A6A5
+E966 E9A6AD
+E967 E9A6AE
+E968 E9A6BC
+E969 E9A79F
+E96A E9A79B
+E96B E9A79D
+E96C E9A798
+E96D E9A791
+E96E E9A7AD
+E96F E9A7AE
+E970 E9A7B1
+E971 E9A7B2
+E972 E9A7BB
+E973 E9A7B8
+E974 E9A881
+E975 E9A88F
+E976 E9A885
+E977 E9A7A2
+E978 E9A899
+E979 E9A8AB
+E97A E9A8B7
+E97B E9A985
+E97C E9A982
+E97D E9A980
+E97E E9A983
+E980 E9A8BE
+E981 E9A995
+E982 E9A98D
+E983 E9A99B
+E984 E9A997
+E985 E9A99F
+E986 E9A9A2
+E987 E9A9A5
+E988 E9A9A4
+E989 E9A9A9
+E98A E9A9AB
+E98B E9A9AA
+E98C E9AAAD
+E98D E9AAB0
+E98E E9AABC
+E98F E9AB80
+E990 E9AB8F
+E991 E9AB91
+E992 E9AB93
+E993 E9AB94
+E994 E9AB9E
+E995 E9AB9F
+E996 E9ABA2
+E997 E9ABA3
+E998 E9ABA6
+E999 E9ABAF
+E99A E9ABAB
+E99B E9ABAE
+E99C E9ABB4
+E99D E9ABB1
+E99E E9ABB7
+E99F E9ABBB
+E9A0 E9AC86
+E9A1 E9AC98
+E9A2 E9AC9A
+E9A3 E9AC9F
+E9A4 E9ACA2
+E9A5 E9ACA3
+E9A6 E9ACA5
+E9A7 E9ACA7
+E9A8 E9ACA8
+E9A9 E9ACA9
+E9AA E9ACAA
+E9AB E9ACAE
+E9AC E9ACAF
+E9AD E9ACB2
+E9AE E9AD84
+E9AF E9AD83
+E9B0 E9AD8F
+E9B1 E9AD8D
+E9B2 E9AD8E
+E9B3 E9AD91
+E9B4 E9AD98
+E9B5 E9ADB4
+E9B6 E9AE93
+E9B7 E9AE83
+E9B8 E9AE91
+E9B9 E9AE96
+E9BA E9AE97
+E9BB E9AE9F
+E9BC E9AEA0
+E9BD E9AEA8
+E9BE E9AEB4
+E9BF E9AF80
+E9C0 E9AF8A
+E9C1 E9AEB9
+E9C2 E9AF86
+E9C3 E9AF8F
+E9C4 E9AF91
+E9C5 E9AF92
+E9C6 E9AFA3
+E9C7 E9AFA2
+E9C8 E9AFA4
+E9C9 E9AF94
+E9CA E9AFA1
+E9CB E9B0BA
+E9CC E9AFB2
+E9CD E9AFB1
+E9CE E9AFB0
+E9CF E9B095
+E9D0 E9B094
+E9D1 E9B089
+E9D2 E9B093
+E9D3 E9B08C
+E9D4 E9B086
+E9D5 E9B088
+E9D6 E9B092
+E9D7 E9B08A
+E9D8 E9B084
+E9D9 E9B0AE
+E9DA E9B09B
+E9DB E9B0A5
+E9DC E9B0A4
+E9DD E9B0A1
+E9DE E9B0B0
+E9DF E9B187
+E9E0 E9B0B2
+E9E1 E9B186
+E9E2 E9B0BE
+E9E3 E9B19A
+E9E4 E9B1A0
+E9E5 E9B1A7
+E9E6 E9B1B6
+E9E7 E9B1B8
+E9E8 E9B3A7
+E9E9 E9B3AC
+E9EA E9B3B0
+E9EB E9B489
+E9EC E9B488
+E9ED E9B3AB
+E9EE E9B483
+E9EF E9B486
+E9F0 E9B4AA
+E9F1 E9B4A6
+E9F2 E9B6AF
+E9F3 E9B4A3
+E9F4 E9B49F
+E9F5 E9B584
+E9F6 E9B495
+E9F7 E9B492
+E9F8 E9B581
+E9F9 E9B4BF
+E9FA E9B4BE
+E9FB E9B586
+E9FC E9B588
+EA40 E9B59D
+EA41 E9B59E
+EA42 E9B5A4
+EA43 E9B591
+EA44 E9B590
+EA45 E9B599
+EA46 E9B5B2
+EA47 E9B689
+EA48 E9B687
+EA49 E9B6AB
+EA4A E9B5AF
+EA4B E9B5BA
+EA4C E9B69A
+EA4D E9B6A4
+EA4E E9B6A9
+EA4F E9B6B2
+EA50 E9B784
+EA51 E9B781
+EA52 E9B6BB
+EA53 E9B6B8
+EA54 E9B6BA
+EA55 E9B786
+EA56 E9B78F
+EA57 E9B782
+EA58 E9B799
+EA59 E9B793
+EA5A E9B7B8
+EA5B E9B7A6
+EA5C E9B7AD
+EA5D E9B7AF
+EA5E E9B7BD
+EA5F E9B89A
+EA60 E9B89B
+EA61 E9B89E
+EA62 E9B9B5
+EA63 E9B9B9
+EA64 E9B9BD
+EA65 E9BA81
+EA66 E9BA88
+EA67 E9BA8B
+EA68 E9BA8C
+EA69 E9BA92
+EA6A E9BA95
+EA6B E9BA91
+EA6C E9BA9D
+EA6D E9BAA5
+EA6E E9BAA9
+EA6F E9BAB8
+EA70 E9BAAA
+EA71 E9BAAD
+EA72 E99DA1
+EA73 E9BB8C
+EA74 E9BB8E
+EA75 E9BB8F
+EA76 E9BB90
+EA77 E9BB94
+EA78 E9BB9C
+EA79 E9BB9E
+EA7A E9BB9D
+EA7B E9BBA0
+EA7C E9BBA5
+EA7D E9BBA8
+EA7E E9BBAF
+EA80 E9BBB4
+EA81 E9BBB6
+EA82 E9BBB7
+EA83 E9BBB9
+EA84 E9BBBB
+EA85 E9BBBC
+EA86 E9BBBD
+EA87 E9BC87
+EA88 E9BC88
+EA89 E79AB7
+EA8A E9BC95
+EA8B E9BCA1
+EA8C E9BCAC
+EA8D E9BCBE
+EA8E E9BD8A
+EA8F E9BD92
+EA90 E9BD94
+EA91 E9BDA3
+EA92 E9BD9F
+EA93 E9BDA0
+EA94 E9BDA1
+EA95 E9BDA6
+EA96 E9BDA7
+EA97 E9BDAC
+EA98 E9BDAA
+EA99 E9BDB7
+EA9A E9BDB2
+EA9B E9BDB6
+EA9C E9BE95
+EA9D E9BE9C
+EA9E E9BEA0
+EA9F E5A0AF
+EAA0 E6A787
+EAA1 E98199
+EAA2 E791A4
+EAA3 E5879C
+EAA4 E78699
+ED40 E7BA8A
+ED41 E8A49C
+ED42 E98D88
+ED43 E98A88
+ED44 E8939C
+ED45 E4BF89
+ED46 E782BB
+ED47 E698B1
+ED48 E6A388
+ED49 E98BB9
+ED4A E69BBB
+ED4B E5BD85
+ED4C E4B8A8
+ED4D E4BBA1
+ED4E E4BBBC
+ED4F E4BC80
+ED50 E4BC83
+ED51 E4BCB9
+ED52 E4BD96
+ED53 E4BE92
+ED54 E4BE8A
+ED55 E4BE9A
+ED56 E4BE94
+ED57 E4BF8D
+ED58 E58180
+ED59 E580A2
+ED5A E4BFBF
+ED5B E5809E
+ED5C E58186
+ED5D E581B0
+ED5E E58182
+ED5F E58294
+ED60 E583B4
+ED61 E58398
+ED62 E5858A
+ED63 E585A4
+ED64 E5869D
+ED65 E586BE
+ED66 E587AC
+ED67 E58895
+ED68 E58A9C
+ED69 E58AA6
+ED6A E58B80
+ED6B E58B9B
+ED6C E58C80
+ED6D E58C87
+ED6E E58CA4
+ED6F E58DB2
+ED70 E58E93
+ED71 E58EB2
+ED72 E58F9D
+ED73 EFA88E
+ED74 E5929C
+ED75 E5928A
+ED76 E592A9
+ED77 E593BF
+ED78 E59686
+ED79 E59D99
+ED7A E59DA5
+ED7B E59EAC
+ED7C E59F88
+ED7D E59F87
+ED7E EFA88F
+ED80 EFA890
+ED81 E5A29E
+ED82 E5A2B2
+ED83 E5A48B
+ED84 E5A593
+ED85 E5A59B
+ED86 E5A59D
+ED87 E5A5A3
+ED88 E5A6A4
+ED89 E5A6BA
+ED8A E5AD96
+ED8B E5AF80
+ED8C E794AF
+ED8D E5AF98
+ED8E E5AFAC
+ED8F E5B09E
+ED90 E5B2A6
+ED91 E5B2BA
+ED92 E5B3B5
+ED93 E5B4A7
+ED94 E5B593
+ED95 EFA891
+ED96 E5B582
+ED97 E5B5AD
+ED98 E5B6B8
+ED99 E5B6B9
+ED9A E5B790
+ED9B E5BCA1
+ED9C E5BCB4
+ED9D E5BDA7
+ED9E E5BEB7
+ED9F E5BF9E
+EDA0 E6819D
+EDA1 E68285
+EDA2 E6828A
+EDA3 E6839E
+EDA4 E68395
+EDA5 E684A0
+EDA6 E683B2
+EDA7 E68491
+EDA8 E684B7
+EDA9 E684B0
+EDAA E68698
+EDAB E68893
+EDAC E68AA6
+EDAD E68FB5
+EDAE E691A0
+EDAF E6929D
+EDB0 E6938E
+EDB1 E6958E
+EDB2 E69880
+EDB3 E69895
+EDB4 E698BB
+EDB5 E69889
+EDB6 E698AE
+EDB7 E6989E
+EDB8 E698A4
+EDB9 E699A5
+EDBA E69997
+EDBB E69999
+EDBC EFA892
+EDBD E699B3
+EDBE E69A99
+EDBF E69AA0
+EDC0 E69AB2
+EDC1 E69ABF
+EDC2 E69BBA
+EDC3 E69C8E
+EDC4 EFA4A9
+EDC5 E69DA6
+EDC6 E69EBB
+EDC7 E6A192
+EDC8 E69F80
+EDC9 E6A081
+EDCA E6A184
+EDCB E6A38F
+EDCC EFA893
+EDCD E6A5A8
+EDCE EFA894
+EDCF E6A698
+EDD0 E6A7A2
+EDD1 E6A8B0
+EDD2 E6A9AB
+EDD3 E6A986
+EDD4 E6A9B3
+EDD5 E6A9BE
+EDD6 E6ABA2
+EDD7 E6ABA4
+EDD8 E6AF96
+EDD9 E6B0BF
+EDDA E6B19C
+EDDB E6B286
+EDDC E6B1AF
+EDDD E6B39A
+EDDE E6B484
+EDDF E6B687
+EDE0 E6B5AF
+EDE1 E6B696
+EDE2 E6B6AC
+EDE3 E6B78F
+EDE4 E6B7B8
+EDE5 E6B7B2
+EDE6 E6B7BC
+EDE7 E6B8B9
+EDE8 E6B99C
+EDE9 E6B8A7
+EDEA E6B8BC
+EDEB E6BABF
+EDEC E6BE88
+EDED E6BEB5
+EDEE E6BFB5
+EDEF E78085
+EDF0 E78087
+EDF1 E780A8
+EDF2 E78285
+EDF3 E782AB
+EDF4 E7848F
+EDF5 E78484
+EDF6 E7859C
+EDF7 E78586
+EDF8 E78587
+EDF9 EFA895
+EDFA E78781
+EDFB E787BE
+EDFC E78AB1
+EE40 E78ABE
+EE41 E78CA4
+EE42 EFA896
+EE43 E78DB7
+EE44 E78EBD
+EE45 E78F89
+EE46 E78F96
+EE47 E78FA3
+EE48 E78F92
+EE49 E79087
+EE4A E78FB5
+EE4B E790A6
+EE4C E790AA
+EE4D E790A9
+EE4E E790AE
+EE4F E791A2
+EE50 E79289
+EE51 E7929F
+EE52 E79481
+EE53 E795AF
+EE54 E79A82
+EE55 E79A9C
+EE56 E79A9E
+EE57 E79A9B
+EE58 E79AA6
+EE59 EFA897
+EE5A E79D86
+EE5B E58AAF
+EE5C E7A0A1
+EE5D E7A18E
+EE5E E7A1A4
+EE5F E7A1BA
+EE60 E7A4B0
+EE61 EFA898
+EE62 EFA899
+EE63 EFA89A
+EE64 E7A694
+EE65 EFA89B
+EE66 E7A69B
+EE67 E7AB91
+EE68 E7ABA7
+EE69 EFA89C
+EE6A E7ABAB
+EE6B E7AE9E
+EE6C EFA89D
+EE6D E7B588
+EE6E E7B59C
+EE6F E7B6B7
+EE70 E7B6A0
+EE71 E7B796
+EE72 E7B992
+EE73 E7BD87
+EE74 E7BEA1
+EE75 EFA89E
+EE76 E88C81
+EE77 E88DA2
+EE78 E88DBF
+EE79 E88F87
+EE7A E88FB6
+EE7B E89188
+EE7C E892B4
+EE7D E89593
+EE7E E89599
+EE80 E895AB
+EE81 EFA89F
+EE82 E896B0
+EE83 EFA8A0
+EE84 EFA8A1
+EE85 E8A087
+EE86 E8A3B5
+EE87 E8A892
+EE88 E8A8B7
+EE89 E8A9B9
+EE8A E8AAA7
+EE8B E8AABE
+EE8C E8AB9F
+EE8D EFA8A2
+EE8E E8ABB6
+EE8F E8AD93
+EE90 E8ADBF
+EE91 E8B3B0
+EE92 E8B3B4
+EE93 E8B492
+EE94 E8B5B6
+EE95 EFA8A3
+EE96 E8BB8F
+EE97 EFA8A4
+EE98 EFA8A5
+EE99 E981A7
+EE9A E9839E
+EE9B EFA8A6
+EE9C E98495
+EE9D E984A7
+EE9E E9879A
+EE9F E98797
+EEA0 E9879E
+EEA1 E987AD
+EEA2 E987AE
+EEA3 E987A4
+EEA4 E987A5
+EEA5 E98886
+EEA6 E98890
+EEA7 E9888A
+EEA8 E988BA
+EEA9 E98980
+EEAA E988BC
+EEAB E9898E
+EEAC E98999
+EEAD E98991
+EEAE E988B9
+EEAF E989A7
+EEB0 E98AA7
+EEB1 E989B7
+EEB2 E989B8
+EEB3 E98BA7
+EEB4 E98B97
+EEB5 E98B99
+EEB6 E98B90
+EEB7 EFA8A7
+EEB8 E98B95
+EEB9 E98BA0
+EEBA E98B93
+EEBB E98CA5
+EEBC E98CA1
+EEBD E98BBB
+EEBE EFA8A8
+EEBF E98C9E
+EEC0 E98BBF
+EEC1 E98C9D
+EEC2 E98C82
+EEC3 E98DB0
+EEC4 E98D97
+EEC5 E98EA4
+EEC6 E98F86
+EEC7 E98F9E
+EEC8 E98FB8
+EEC9 E990B1
+EECA E99185
+EECB E99188
+EECC E99692
+EECD EFA79C
+EECE EFA8A9
+EECF E99A9D
+EED0 E99AAF
+EED1 E99CB3
+EED2 E99CBB
+EED3 E99D83
+EED4 E99D8D
+EED5 E99D8F
+EED6 E99D91
+EED7 E99D95
+EED8 E9A197
+EED9 E9A1A5
+EEDA EFA8AA
+EEDB EFA8AB
+EEDC E9A4A7
+EEDD EFA8AC
+EEDE E9A69E
+EEDF E9A98E
+EEE0 E9AB99
+EEE1 E9AB9C
+EEE2 E9ADB5
+EEE3 E9ADB2
+EEE4 E9AE8F
+EEE5 E9AEB1
+EEE6 E9AEBB
+EEE7 E9B080
+EEE8 E9B5B0
+EEE9 E9B5AB
+EEEA EFA8AD
+EEEB E9B899
+EEEC E9BB91
+EEEF E285B0
+EEF0 E285B1
+EEF1 E285B2
+EEF2 E285B3
+EEF3 E285B4
+EEF4 E285B5
+EEF5 E285B6
+EEF6 E285B7
+EEF7 E285B8
+EEF8 E285B9
+EEF9 EFBFA2
+EEFA EFBFA4
+EEFB EFBC87
+EEFC EFBC82
+F040 EE8080
+F041 EE8081
+F042 EE8082
+F043 EE8083
+F044 EE8084
+F045 EE8085
+F046 EE8086
+F047 EE8087
+F048 EE8088
+F049 EE8089
+F04A EE808A
+F04B EE808B
+F04C EE808C
+F04D EE808D
+F04E EE808E
+F04F EE808F
+F050 EE8090
+F051 EE8091
+F052 EE8092
+F053 EE8093
+F054 EE8094
+F055 EE8095
+F056 EE8096
+F057 EE8097
+F058 EE8098
+F059 EE8099
+F05A EE809A
+F05B EE809B
+F05C EE809C
+F05D EE809D
+F05E EE809E
+F05F EE809F
+F060 EE80A0
+F061 EE80A1
+F062 EE80A2
+F063 EE80A3
+F064 EE80A4
+F065 EE80A5
+F066 EE80A6
+F067 EE80A7
+F068 EE80A8
+F069 EE80A9
+F06A EE80AA
+F06B EE80AB
+F06C EE80AC
+F06D EE80AD
+F06E EE80AE
+F06F EE80AF
+F070 EE80B0
+F071 EE80B1
+F072 EE80B2
+F073 EE80B3
+F074 EE80B4
+F075 EE80B5
+F076 EE80B6
+F077 EE80B7
+F078 EE80B8
+F079 EE80B9
+F07A EE80BA
+F07B EE80BB
+F07C EE80BC
+F07D EE80BD
+F07E EE80BE
+F080 EE80BF
+F081 EE8180
+F082 EE8181
+F083 EE8182
+F084 EE8183
+F085 EE8184
+F086 EE8185
+F087 EE8186
+F088 EE8187
+F089 EE8188
+F08A EE8189
+F08B EE818A
+F08C EE818B
+F08D EE818C
+F08E EE818D
+F08F EE818E
+F090 EE818F
+F091 EE8190
+F092 EE8191
+F093 EE8192
+F094 EE8193
+F095 EE8194
+F096 EE8195
+F097 EE8196
+F098 EE8197
+F099 EE8198
+F09A EE8199
+F09B EE819A
+F09C EE819B
+F09D EE819C
+F09E EE819D
+F09F EE819E
+F0A0 EE819F
+F0A1 EE81A0
+F0A2 EE81A1
+F0A3 EE81A2
+F0A4 EE81A3
+F0A5 EE81A4
+F0A6 EE81A5
+F0A7 EE81A6
+F0A8 EE81A7
+F0A9 EE81A8
+F0AA EE81A9
+F0AB EE81AA
+F0AC EE81AB
+F0AD EE81AC
+F0AE EE81AD
+F0AF EE81AE
+F0B0 EE81AF
+F0B1 EE81B0
+F0B2 EE81B1
+F0B3 EE81B2
+F0B4 EE81B3
+F0B5 EE81B4
+F0B6 EE81B5
+F0B7 EE81B6
+F0B8 EE81B7
+F0B9 EE81B8
+F0BA EE81B9
+F0BB EE81BA
+F0BC EE81BB
+F0BD EE81BC
+F0BE EE81BD
+F0BF EE81BE
+F0C0 EE81BF
+F0C1 EE8280
+F0C2 EE8281
+F0C3 EE8282
+F0C4 EE8283
+F0C5 EE8284
+F0C6 EE8285
+F0C7 EE8286
+F0C8 EE8287
+F0C9 EE8288
+F0CA EE8289
+F0CB EE828A
+F0CC EE828B
+F0CD EE828C
+F0CE EE828D
+F0CF EE828E
+F0D0 EE828F
+F0D1 EE8290
+F0D2 EE8291
+F0D3 EE8292
+F0D4 EE8293
+F0D5 EE8294
+F0D6 EE8295
+F0D7 EE8296
+F0D8 EE8297
+F0D9 EE8298
+F0DA EE8299
+F0DB EE829A
+F0DC EE829B
+F0DD EE829C
+F0DE EE829D
+F0DF EE829E
+F0E0 EE829F
+F0E1 EE82A0
+F0E2 EE82A1
+F0E3 EE82A2
+F0E4 EE82A3
+F0E5 EE82A4
+F0E6 EE82A5
+F0E7 EE82A6
+F0E8 EE82A7
+F0E9 EE82A8
+F0EA EE82A9
+F0EB EE82AA
+F0EC EE82AB
+F0ED EE82AC
+F0EE EE82AD
+F0EF EE82AE
+F0F0 EE82AF
+F0F1 EE82B0
+F0F2 EE82B1
+F0F3 EE82B2
+F0F4 EE82B3
+F0F5 EE82B4
+F0F6 EE82B5
+F0F7 EE82B6
+F0F8 EE82B7
+F0F9 EE82B8
+F0FA EE82B9
+F0FB EE82BA
+F0FC EE82BB
+F140 EE82BC
+F141 EE82BD
+F142 EE82BE
+F143 EE82BF
+F144 EE8380
+F145 EE8381
+F146 EE8382
+F147 EE8383
+F148 EE8384
+F149 EE8385
+F14A EE8386
+F14B EE8387
+F14C EE8388
+F14D EE8389
+F14E EE838A
+F14F EE838B
+F150 EE838C
+F151 EE838D
+F152 EE838E
+F153 EE838F
+F154 EE8390
+F155 EE8391
+F156 EE8392
+F157 EE8393
+F158 EE8394
+F159 EE8395
+F15A EE8396
+F15B EE8397
+F15C EE8398
+F15D EE8399
+F15E EE839A
+F15F EE839B
+F160 EE839C
+F161 EE839D
+F162 EE839E
+F163 EE839F
+F164 EE83A0
+F165 EE83A1
+F166 EE83A2
+F167 EE83A3
+F168 EE83A4
+F169 EE83A5
+F16A EE83A6
+F16B EE83A7
+F16C EE83A8
+F16D EE83A9
+F16E EE83AA
+F16F EE83AB
+F170 EE83AC
+F171 EE83AD
+F172 EE83AE
+F173 EE83AF
+F174 EE83B0
+F175 EE83B1
+F176 EE83B2
+F177 EE83B3
+F178 EE83B4
+F179 EE83B5
+F17A EE83B6
+F17B EE83B7
+F17C EE83B8
+F17D EE83B9
+F17E EE83BA
+F180 EE83BB
+F181 EE83BC
+F182 EE83BD
+F183 EE83BE
+F184 EE83BF
+F185 EE8480
+F186 EE8481
+F187 EE8482
+F188 EE8483
+F189 EE8484
+F18A EE8485
+F18B EE8486
+F18C EE8487
+F18D EE8488
+F18E EE8489
+F18F EE848A
+F190 EE848B
+F191 EE848C
+F192 EE848D
+F193 EE848E
+F194 EE848F
+F195 EE8490
+F196 EE8491
+F197 EE8492
+F198 EE8493
+F199 EE8494
+F19A EE8495
+F19B EE8496
+F19C EE8497
+F19D EE8498
+F19E EE8499
+F19F EE849A
+F1A0 EE849B
+F1A1 EE849C
+F1A2 EE849D
+F1A3 EE849E
+F1A4 EE849F
+F1A5 EE84A0
+F1A6 EE84A1
+F1A7 EE84A2
+F1A8 EE84A3
+F1A9 EE84A4
+F1AA EE84A5
+F1AB EE84A6
+F1AC EE84A7
+F1AD EE84A8
+F1AE EE84A9
+F1AF EE84AA
+F1B0 EE84AB
+F1B1 EE84AC
+F1B2 EE84AD
+F1B3 EE84AE
+F1B4 EE84AF
+F1B5 EE84B0
+F1B6 EE84B1
+F1B7 EE84B2
+F1B8 EE84B3
+F1B9 EE84B4
+F1BA EE84B5
+F1BB EE84B6
+F1BC EE84B7
+F1BD EE84B8
+F1BE EE84B9
+F1BF EE84BA
+F1C0 EE84BB
+F1C1 EE84BC
+F1C2 EE84BD
+F1C3 EE84BE
+F1C4 EE84BF
+F1C5 EE8580
+F1C6 EE8581
+F1C7 EE8582
+F1C8 EE8583
+F1C9 EE8584
+F1CA EE8585
+F1CB EE8586
+F1CC EE8587
+F1CD EE8588
+F1CE EE8589
+F1CF EE858A
+F1D0 EE858B
+F1D1 EE858C
+F1D2 EE858D
+F1D3 EE858E
+F1D4 EE858F
+F1D5 EE8590
+F1D6 EE8591
+F1D7 EE8592
+F1D8 EE8593
+F1D9 EE8594
+F1DA EE8595
+F1DB EE8596
+F1DC EE8597
+F1DD EE8598
+F1DE EE8599
+F1DF EE859A
+F1E0 EE859B
+F1E1 EE859C
+F1E2 EE859D
+F1E3 EE859E
+F1E4 EE859F
+F1E5 EE85A0
+F1E6 EE85A1
+F1E7 EE85A2
+F1E8 EE85A3
+F1E9 EE85A4
+F1EA EE85A5
+F1EB EE85A6
+F1EC EE85A7
+F1ED EE85A8
+F1EE EE85A9
+F1EF EE85AA
+F1F0 EE85AB
+F1F1 EE85AC
+F1F2 EE85AD
+F1F3 EE85AE
+F1F4 EE85AF
+F1F5 EE85B0
+F1F6 EE85B1
+F1F7 EE85B2
+F1F8 EE85B3
+F1F9 EE85B4
+F1FA EE85B5
+F1FB EE85B6
+F1FC EE85B7
+F240 EE85B8
+F241 EE85B9
+F242 EE85BA
+F243 EE85BB
+F244 EE85BC
+F245 EE85BD
+F246 EE85BE
+F247 EE85BF
+F248 EE8680
+F249 EE8681
+F24A EE8682
+F24B EE8683
+F24C EE8684
+F24D EE8685
+F24E EE8686
+F24F EE8687
+F250 EE8688
+F251 EE8689
+F252 EE868A
+F253 EE868B
+F254 EE868C
+F255 EE868D
+F256 EE868E
+F257 EE868F
+F258 EE8690
+F259 EE8691
+F25A EE8692
+F25B EE8693
+F25C EE8694
+F25D EE8695
+F25E EE8696
+F25F EE8697
+F260 EE8698
+F261 EE8699
+F262 EE869A
+F263 EE869B
+F264 EE869C
+F265 EE869D
+F266 EE869E
+F267 EE869F
+F268 EE86A0
+F269 EE86A1
+F26A EE86A2
+F26B EE86A3
+F26C EE86A4
+F26D EE86A5
+F26E EE86A6
+F26F EE86A7
+F270 EE86A8
+F271 EE86A9
+F272 EE86AA
+F273 EE86AB
+F274 EE86AC
+F275 EE86AD
+F276 EE86AE
+F277 EE86AF
+F278 EE86B0
+F279 EE86B1
+F27A EE86B2
+F27B EE86B3
+F27C EE86B4
+F27D EE86B5
+F27E EE86B6
+F280 EE86B7
+F281 EE86B8
+F282 EE86B9
+F283 EE86BA
+F284 EE86BB
+F285 EE86BC
+F286 EE86BD
+F287 EE86BE
+F288 EE86BF
+F289 EE8780
+F28A EE8781
+F28B EE8782
+F28C EE8783
+F28D EE8784
+F28E EE8785
+F28F EE8786
+F290 EE8787
+F291 EE8788
+F292 EE8789
+F293 EE878A
+F294 EE878B
+F295 EE878C
+F296 EE878D
+F297 EE878E
+F298 EE878F
+F299 EE8790
+F29A EE8791
+F29B EE8792
+F29C EE8793
+F29D EE8794
+F29E EE8795
+F29F EE8796
+F2A0 EE8797
+F2A1 EE8798
+F2A2 EE8799
+F2A3 EE879A
+F2A4 EE879B
+F2A5 EE879C
+F2A6 EE879D
+F2A7 EE879E
+F2A8 EE879F
+F2A9 EE87A0
+F2AA EE87A1
+F2AB EE87A2
+F2AC EE87A3
+F2AD EE87A4
+F2AE EE87A5
+F2AF EE87A6
+F2B0 EE87A7
+F2B1 EE87A8
+F2B2 EE87A9
+F2B3 EE87AA
+F2B4 EE87AB
+F2B5 EE87AC
+F2B6 EE87AD
+F2B7 EE87AE
+F2B8 EE87AF
+F2B9 EE87B0
+F2BA EE87B1
+F2BB EE87B2
+F2BC EE87B3
+F2BD EE87B4
+F2BE EE87B5
+F2BF EE87B6
+F2C0 EE87B7
+F2C1 EE87B8
+F2C2 EE87B9
+F2C3 EE87BA
+F2C4 EE87BB
+F2C5 EE87BC
+F2C6 EE87BD
+F2C7 EE87BE
+F2C8 EE87BF
+F2C9 EE8880
+F2CA EE8881
+F2CB EE8882
+F2CC EE8883
+F2CD EE8884
+F2CE EE8885
+F2CF EE8886
+F2D0 EE8887
+F2D1 EE8888
+F2D2 EE8889
+F2D3 EE888A
+F2D4 EE888B
+F2D5 EE888C
+F2D6 EE888D
+F2D7 EE888E
+F2D8 EE888F
+F2D9 EE8890
+F2DA EE8891
+F2DB EE8892
+F2DC EE8893
+F2DD EE8894
+F2DE EE8895
+F2DF EE8896
+F2E0 EE8897
+F2E1 EE8898
+F2E2 EE8899
+F2E3 EE889A
+F2E4 EE889B
+F2E5 EE889C
+F2E6 EE889D
+F2E7 EE889E
+F2E8 EE889F
+F2E9 EE88A0
+F2EA EE88A1
+F2EB EE88A2
+F2EC EE88A3
+F2ED EE88A4
+F2EE EE88A5
+F2EF EE88A6
+F2F0 EE88A7
+F2F1 EE88A8
+F2F2 EE88A9
+F2F3 EE88AA
+F2F4 EE88AB
+F2F5 EE88AC
+F2F6 EE88AD
+F2F7 EE88AE
+F2F8 EE88AF
+F2F9 EE88B0
+F2FA EE88B1
+F2FB EE88B2
+F2FC EE88B3
+F340 EE88B4
+F341 EE88B5
+F342 EE88B6
+F343 EE88B7
+F344 EE88B8
+F345 EE88B9
+F346 EE88BA
+F347 EE88BB
+F348 EE88BC
+F349 EE88BD
+F34A EE88BE
+F34B EE88BF
+F34C EE8980
+F34D EE8981
+F34E EE8982
+F34F EE8983
+F350 EE8984
+F351 EE8985
+F352 EE8986
+F353 EE8987
+F354 EE8988
+F355 EE8989
+F356 EE898A
+F357 EE898B
+F358 EE898C
+F359 EE898D
+F35A EE898E
+F35B EE898F
+F35C EE8990
+F35D EE8991
+F35E EE8992
+F35F EE8993
+F360 EE8994
+F361 EE8995
+F362 EE8996
+F363 EE8997
+F364 EE8998
+F365 EE8999
+F366 EE899A
+F367 EE899B
+F368 EE899C
+F369 EE899D
+F36A EE899E
+F36B EE899F
+F36C EE89A0
+F36D EE89A1
+F36E EE89A2
+F36F EE89A3
+F370 EE89A4
+F371 EE89A5
+F372 EE89A6
+F373 EE89A7
+F374 EE89A8
+F375 EE89A9
+F376 EE89AA
+F377 EE89AB
+F378 EE89AC
+F379 EE89AD
+F37A EE89AE
+F37B EE89AF
+F37C EE89B0
+F37D EE89B1
+F37E EE89B2
+F380 EE89B3
+F381 EE89B4
+F382 EE89B5
+F383 EE89B6
+F384 EE89B7
+F385 EE89B8
+F386 EE89B9
+F387 EE89BA
+F388 EE89BB
+F389 EE89BC
+F38A EE89BD
+F38B EE89BE
+F38C EE89BF
+F38D EE8A80
+F38E EE8A81
+F38F EE8A82
+F390 EE8A83
+F391 EE8A84
+F392 EE8A85
+F393 EE8A86
+F394 EE8A87
+F395 EE8A88
+F396 EE8A89
+F397 EE8A8A
+F398 EE8A8B
+F399 EE8A8C
+F39A EE8A8D
+F39B EE8A8E
+F39C EE8A8F
+F39D EE8A90
+F39E EE8A91
+F39F EE8A92
+F3A0 EE8A93
+F3A1 EE8A94
+F3A2 EE8A95
+F3A3 EE8A96
+F3A4 EE8A97
+F3A5 EE8A98
+F3A6 EE8A99
+F3A7 EE8A9A
+F3A8 EE8A9B
+F3A9 EE8A9C
+F3AA EE8A9D
+F3AB EE8A9E
+F3AC EE8A9F
+F3AD EE8AA0
+F3AE EE8AA1
+F3AF EE8AA2
+F3B0 EE8AA3
+F3B1 EE8AA4
+F3B2 EE8AA5
+F3B3 EE8AA6
+F3B4 EE8AA7
+F3B5 EE8AA8
+F3B6 EE8AA9
+F3B7 EE8AAA
+F3B8 EE8AAB
+F3B9 EE8AAC
+F3BA EE8AAD
+F3BB EE8AAE
+F3BC EE8AAF
+F3BD EE8AB0
+F3BE EE8AB1
+F3BF EE8AB2
+F3C0 EE8AB3
+F3C1 EE8AB4
+F3C2 EE8AB5
+F3C3 EE8AB6
+F3C4 EE8AB7
+F3C5 EE8AB8
+F3C6 EE8AB9
+F3C7 EE8ABA
+F3C8 EE8ABB
+F3C9 EE8ABC
+F3CA EE8ABD
+F3CB EE8ABE
+F3CC EE8ABF
+F3CD EE8B80
+F3CE EE8B81
+F3CF EE8B82
+F3D0 EE8B83
+F3D1 EE8B84
+F3D2 EE8B85
+F3D3 EE8B86
+F3D4 EE8B87
+F3D5 EE8B88
+F3D6 EE8B89
+F3D7 EE8B8A
+F3D8 EE8B8B
+F3D9 EE8B8C
+F3DA EE8B8D
+F3DB EE8B8E
+F3DC EE8B8F
+F3DD EE8B90
+F3DE EE8B91
+F3DF EE8B92
+F3E0 EE8B93
+F3E1 EE8B94
+F3E2 EE8B95
+F3E3 EE8B96
+F3E4 EE8B97
+F3E5 EE8B98
+F3E6 EE8B99
+F3E7 EE8B9A
+F3E8 EE8B9B
+F3E9 EE8B9C
+F3EA EE8B9D
+F3EB EE8B9E
+F3EC EE8B9F
+F3ED EE8BA0
+F3EE EE8BA1
+F3EF EE8BA2
+F3F0 EE8BA3
+F3F1 EE8BA4
+F3F2 EE8BA5
+F3F3 EE8BA6
+F3F4 EE8BA7
+F3F5 EE8BA8
+F3F6 EE8BA9
+F3F7 EE8BAA
+F3F8 EE8BAB
+F3F9 EE8BAC
+F3FA EE8BAD
+F3FB EE8BAE
+F3FC EE8BAF
+F440 EE8BB0
+F441 EE8BB1
+F442 EE8BB2
+F443 EE8BB3
+F444 EE8BB4
+F445 EE8BB5
+F446 EE8BB6
+F447 EE8BB7
+F448 EE8BB8
+F449 EE8BB9
+F44A EE8BBA
+F44B EE8BBB
+F44C EE8BBC
+F44D EE8BBD
+F44E EE8BBE
+F44F EE8BBF
+F450 EE8C80
+F451 EE8C81
+F452 EE8C82
+F453 EE8C83
+F454 EE8C84
+F455 EE8C85
+F456 EE8C86
+F457 EE8C87
+F458 EE8C88
+F459 EE8C89
+F45A EE8C8A
+F45B EE8C8B
+F45C EE8C8C
+F45D EE8C8D
+F45E EE8C8E
+F45F EE8C8F
+F460 EE8C90
+F461 EE8C91
+F462 EE8C92
+F463 EE8C93
+F464 EE8C94
+F465 EE8C95
+F466 EE8C96
+F467 EE8C97
+F468 EE8C98
+F469 EE8C99
+F46A EE8C9A
+F46B EE8C9B
+F46C EE8C9C
+F46D EE8C9D
+F46E EE8C9E
+F46F EE8C9F
+F470 EE8CA0
+F471 EE8CA1
+F472 EE8CA2
+F473 EE8CA3
+F474 EE8CA4
+F475 EE8CA5
+F476 EE8CA6
+F477 EE8CA7
+F478 EE8CA8
+F479 EE8CA9
+F47A EE8CAA
+F47B EE8CAB
+F47C EE8CAC
+F47D EE8CAD
+F47E EE8CAE
+F480 EE8CAF
+F481 EE8CB0
+F482 EE8CB1
+F483 EE8CB2
+F484 EE8CB3
+F485 EE8CB4
+F486 EE8CB5
+F487 EE8CB6
+F488 EE8CB7
+F489 EE8CB8
+F48A EE8CB9
+F48B EE8CBA
+F48C EE8CBB
+F48D EE8CBC
+F48E EE8CBD
+F48F EE8CBE
+F490 EE8CBF
+F491 EE8D80
+F492 EE8D81
+F493 EE8D82
+F494 EE8D83
+F495 EE8D84
+F496 EE8D85
+F497 EE8D86
+F498 EE8D87
+F499 EE8D88
+F49A EE8D89
+F49B EE8D8A
+F49C EE8D8B
+F49D EE8D8C
+F49E EE8D8D
+F49F EE8D8E
+F4A0 EE8D8F
+F4A1 EE8D90
+F4A2 EE8D91
+F4A3 EE8D92
+F4A4 EE8D93
+F4A5 EE8D94
+F4A6 EE8D95
+F4A7 EE8D96
+F4A8 EE8D97
+F4A9 EE8D98
+F4AA EE8D99
+F4AB EE8D9A
+F4AC EE8D9B
+F4AD EE8D9C
+F4AE EE8D9D
+F4AF EE8D9E
+F4B0 EE8D9F
+F4B1 EE8DA0
+F4B2 EE8DA1
+F4B3 EE8DA2
+F4B4 EE8DA3
+F4B5 EE8DA4
+F4B6 EE8DA5
+F4B7 EE8DA6
+F4B8 EE8DA7
+F4B9 EE8DA8
+F4BA EE8DA9
+F4BB EE8DAA
+F4BC EE8DAB
+F4BD EE8DAC
+F4BE EE8DAD
+F4BF EE8DAE
+F4C0 EE8DAF
+F4C1 EE8DB0
+F4C2 EE8DB1
+F4C3 EE8DB2
+F4C4 EE8DB3
+F4C5 EE8DB4
+F4C6 EE8DB5
+F4C7 EE8DB6
+F4C8 EE8DB7
+F4C9 EE8DB8
+F4CA EE8DB9
+F4CB EE8DBA
+F4CC EE8DBB
+F4CD EE8DBC
+F4CE EE8DBD
+F4CF EE8DBE
+F4D0 EE8DBF
+F4D1 EE8E80
+F4D2 EE8E81
+F4D3 EE8E82
+F4D4 EE8E83
+F4D5 EE8E84
+F4D6 EE8E85
+F4D7 EE8E86
+F4D8 EE8E87
+F4D9 EE8E88
+F4DA EE8E89
+F4DB EE8E8A
+F4DC EE8E8B
+F4DD EE8E8C
+F4DE EE8E8D
+F4DF EE8E8E
+F4E0 EE8E8F
+F4E1 EE8E90
+F4E2 EE8E91
+F4E3 EE8E92
+F4E4 EE8E93
+F4E5 EE8E94
+F4E6 EE8E95
+F4E7 EE8E96
+F4E8 EE8E97
+F4E9 EE8E98
+F4EA EE8E99
+F4EB EE8E9A
+F4EC EE8E9B
+F4ED EE8E9C
+F4EE EE8E9D
+F4EF EE8E9E
+F4F0 EE8E9F
+F4F1 EE8EA0
+F4F2 EE8EA1
+F4F3 EE8EA2
+F4F4 EE8EA3
+F4F5 EE8EA4
+F4F6 EE8EA5
+F4F7 EE8EA6
+F4F8 EE8EA7
+F4F9 EE8EA8
+F4FA EE8EA9
+F4FB EE8EAA
+F4FC EE8EAB
+F540 EE8EAC
+F541 EE8EAD
+F542 EE8EAE
+F543 EE8EAF
+F544 EE8EB0
+F545 EE8EB1
+F546 EE8EB2
+F547 EE8EB3
+F548 EE8EB4
+F549 EE8EB5
+F54A EE8EB6
+F54B EE8EB7
+F54C EE8EB8
+F54D EE8EB9
+F54E EE8EBA
+F54F EE8EBB
+F550 EE8EBC
+F551 EE8EBD
+F552 EE8EBE
+F553 EE8EBF
+F554 EE8F80
+F555 EE8F81
+F556 EE8F82
+F557 EE8F83
+F558 EE8F84
+F559 EE8F85
+F55A EE8F86
+F55B EE8F87
+F55C EE8F88
+F55D EE8F89
+F55E EE8F8A
+F55F EE8F8B
+F560 EE8F8C
+F561 EE8F8D
+F562 EE8F8E
+F563 EE8F8F
+F564 EE8F90
+F565 EE8F91
+F566 EE8F92
+F567 EE8F93
+F568 EE8F94
+F569 EE8F95
+F56A EE8F96
+F56B EE8F97
+F56C EE8F98
+F56D EE8F99
+F56E EE8F9A
+F56F EE8F9B
+F570 EE8F9C
+F571 EE8F9D
+F572 EE8F9E
+F573 EE8F9F
+F574 EE8FA0
+F575 EE8FA1
+F576 EE8FA2
+F577 EE8FA3
+F578 EE8FA4
+F579 EE8FA5
+F57A EE8FA6
+F57B EE8FA7
+F57C EE8FA8
+F57D EE8FA9
+F57E EE8FAA
+F580 EE8FAB
+F581 EE8FAC
+F582 EE8FAD
+F583 EE8FAE
+F584 EE8FAF
+F585 EE8FB0
+F586 EE8FB1
+F587 EE8FB2
+F588 EE8FB3
+F589 EE8FB4
+F58A EE8FB5
+F58B EE8FB6
+F58C EE8FB7
+F58D EE8FB8
+F58E EE8FB9
+F58F EE8FBA
+F590 EE8FBB
+F591 EE8FBC
+F592 EE8FBD
+F593 EE8FBE
+F594 EE8FBF
+F595 EE9080
+F596 EE9081
+F597 EE9082
+F598 EE9083
+F599 EE9084
+F59A EE9085
+F59B EE9086
+F59C EE9087
+F59D EE9088
+F59E EE9089
+F59F EE908A
+F5A0 EE908B
+F5A1 EE908C
+F5A2 EE908D
+F5A3 EE908E
+F5A4 EE908F
+F5A5 EE9090
+F5A6 EE9091
+F5A7 EE9092
+F5A8 EE9093
+F5A9 EE9094
+F5AA EE9095
+F5AB EE9096
+F5AC EE9097
+F5AD EE9098
+F5AE EE9099
+F5AF EE909A
+F5B0 EE909B
+F5B1 EE909C
+F5B2 EE909D
+F5B3 EE909E
+F5B4 EE909F
+F5B5 EE90A0
+F5B6 EE90A1
+F5B7 EE90A2
+F5B8 EE90A3
+F5B9 EE90A4
+F5BA EE90A5
+F5BB EE90A6
+F5BC EE90A7
+F5BD EE90A8
+F5BE EE90A9
+F5BF EE90AA
+F5C0 EE90AB
+F5C1 EE90AC
+F5C2 EE90AD
+F5C3 EE90AE
+F5C4 EE90AF
+F5C5 EE90B0
+F5C6 EE90B1
+F5C7 EE90B2
+F5C8 EE90B3
+F5C9 EE90B4
+F5CA EE90B5
+F5CB EE90B6
+F5CC EE90B7
+F5CD EE90B8
+F5CE EE90B9
+F5CF EE90BA
+F5D0 EE90BB
+F5D1 EE90BC
+F5D2 EE90BD
+F5D3 EE90BE
+F5D4 EE90BF
+F5D5 EE9180
+F5D6 EE9181
+F5D7 EE9182
+F5D8 EE9183
+F5D9 EE9184
+F5DA EE9185
+F5DB EE9186
+F5DC EE9187
+F5DD EE9188
+F5DE EE9189
+F5DF EE918A
+F5E0 EE918B
+F5E1 EE918C
+F5E2 EE918D
+F5E3 EE918E
+F5E4 EE918F
+F5E5 EE9190
+F5E6 EE9191
+F5E7 EE9192
+F5E8 EE9193
+F5E9 EE9194
+F5EA EE9195
+F5EB EE9196
+F5EC EE9197
+F5ED EE9198
+F5EE EE9199
+F5EF EE919A
+F5F0 EE919B
+F5F1 EE919C
+F5F2 EE919D
+F5F3 EE919E
+F5F4 EE919F
+F5F5 EE91A0
+F5F6 EE91A1
+F5F7 EE91A2
+F5F8 EE91A3
+F5F9 EE91A4
+F5FA EE91A5
+F5FB EE91A6
+F5FC EE91A7
+F640 EE91A8
+F641 EE91A9
+F642 EE91AA
+F643 EE91AB
+F644 EE91AC
+F645 EE91AD
+F646 EE91AE
+F647 EE91AF
+F648 EE91B0
+F649 EE91B1
+F64A EE91B2
+F64B EE91B3
+F64C EE91B4
+F64D EE91B5
+F64E EE91B6
+F64F EE91B7
+F650 EE91B8
+F651 EE91B9
+F652 EE91BA
+F653 EE91BB
+F654 EE91BC
+F655 EE91BD
+F656 EE91BE
+F657 EE91BF
+F658 EE9280
+F659 EE9281
+F65A EE9282
+F65B EE9283
+F65C EE9284
+F65D EE9285
+F65E EE9286
+F65F EE9287
+F660 EE9288
+F661 EE9289
+F662 EE928A
+F663 EE928B
+F664 EE928C
+F665 EE928D
+F666 EE928E
+F667 EE928F
+F668 EE9290
+F669 EE9291
+F66A EE9292
+F66B EE9293
+F66C EE9294
+F66D EE9295
+F66E EE9296
+F66F EE9297
+F670 EE9298
+F671 EE9299
+F672 EE929A
+F673 EE929B
+F674 EE929C
+F675 EE929D
+F676 EE929E
+F677 EE929F
+F678 EE92A0
+F679 EE92A1
+F67A EE92A2
+F67B EE92A3
+F67C EE92A4
+F67D EE92A5
+F67E EE92A6
+F680 EE92A7
+F681 EE92A8
+F682 EE92A9
+F683 EE92AA
+F684 EE92AB
+F685 EE92AC
+F686 EE92AD
+F687 EE92AE
+F688 EE92AF
+F689 EE92B0
+F68A EE92B1
+F68B EE92B2
+F68C EE92B3
+F68D EE92B4
+F68E EE92B5
+F68F EE92B6
+F690 EE92B7
+F691 EE92B8
+F692 EE92B9
+F693 EE92BA
+F694 EE92BB
+F695 EE92BC
+F696 EE92BD
+F697 EE92BE
+F698 EE92BF
+F699 EE9380
+F69A EE9381
+F69B EE9382
+F69C EE9383
+F69D EE9384
+F69E EE9385
+F69F EE9386
+F6A0 EE9387
+F6A1 EE9388
+F6A2 EE9389
+F6A3 EE938A
+F6A4 EE938B
+F6A5 EE938C
+F6A6 EE938D
+F6A7 EE938E
+F6A8 EE938F
+F6A9 EE9390
+F6AA EE9391
+F6AB EE9392
+F6AC EE9393
+F6AD EE9394
+F6AE EE9395
+F6AF EE9396
+F6B0 EE9397
+F6B1 EE9398
+F6B2 EE9399
+F6B3 EE939A
+F6B4 EE939B
+F6B5 EE939C
+F6B6 EE939D
+F6B7 EE939E
+F6B8 EE939F
+F6B9 EE93A0
+F6BA EE93A1
+F6BB EE93A2
+F6BC EE93A3
+F6BD EE93A4
+F6BE EE93A5
+F6BF EE93A6
+F6C0 EE93A7
+F6C1 EE93A8
+F6C2 EE93A9
+F6C3 EE93AA
+F6C4 EE93AB
+F6C5 EE93AC
+F6C6 EE93AD
+F6C7 EE93AE
+F6C8 EE93AF
+F6C9 EE93B0
+F6CA EE93B1
+F6CB EE93B2
+F6CC EE93B3
+F6CD EE93B4
+F6CE EE93B5
+F6CF EE93B6
+F6D0 EE93B7
+F6D1 EE93B8
+F6D2 EE93B9
+F6D3 EE93BA
+F6D4 EE93BB
+F6D5 EE93BC
+F6D6 EE93BD
+F6D7 EE93BE
+F6D8 EE93BF
+F6D9 EE9480
+F6DA EE9481
+F6DB EE9482
+F6DC EE9483
+F6DD EE9484
+F6DE EE9485
+F6DF EE9486
+F6E0 EE9487
+F6E1 EE9488
+F6E2 EE9489
+F6E3 EE948A
+F6E4 EE948B
+F6E5 EE948C
+F6E6 EE948D
+F6E7 EE948E
+F6E8 EE948F
+F6E9 EE9490
+F6EA EE9491
+F6EB EE9492
+F6EC EE9493
+F6ED EE9494
+F6EE EE9495
+F6EF EE9496
+F6F0 EE9497
+F6F1 EE9498
+F6F2 EE9499
+F6F3 EE949A
+F6F4 EE949B
+F6F5 EE949C
+F6F6 EE949D
+F6F7 EE949E
+F6F8 EE949F
+F6F9 EE94A0
+F6FA EE94A1
+F6FB EE94A2
+F6FC EE94A3
+F740 EE94A4
+F741 EE94A5
+F742 EE94A6
+F743 EE94A7
+F744 EE94A8
+F745 EE94A9
+F746 EE94AA
+F747 EE94AB
+F748 EE94AC
+F749 EE94AD
+F74A EE94AE
+F74B EE94AF
+F74C EE94B0
+F74D EE94B1
+F74E EE94B2
+F74F EE94B3
+F750 EE94B4
+F751 EE94B5
+F752 EE94B6
+F753 EE94B7
+F754 EE94B8
+F755 EE94B9
+F756 EE94BA
+F757 EE94BB
+F758 EE94BC
+F759 EE94BD
+F75A EE94BE
+F75B EE94BF
+F75C EE9580
+F75D EE9581
+F75E EE9582
+F75F EE9583
+F760 EE9584
+F761 EE9585
+F762 EE9586
+F763 EE9587
+F764 EE9588
+F765 EE9589
+F766 EE958A
+F767 EE958B
+F768 EE958C
+F769 EE958D
+F76A EE958E
+F76B EE958F
+F76C EE9590
+F76D EE9591
+F76E EE9592
+F76F EE9593
+F770 EE9594
+F771 EE9595
+F772 EE9596
+F773 EE9597
+F774 EE9598
+F775 EE9599
+F776 EE959A
+F777 EE959B
+F778 EE959C
+F779 EE959D
+F77A EE959E
+F77B EE959F
+F77C EE95A0
+F77D EE95A1
+F77E EE95A2
+F780 EE95A3
+F781 EE95A4
+F782 EE95A5
+F783 EE95A6
+F784 EE95A7
+F785 EE95A8
+F786 EE95A9
+F787 EE95AA
+F788 EE95AB
+F789 EE95AC
+F78A EE95AD
+F78B EE95AE
+F78C EE95AF
+F78D EE95B0
+F78E EE95B1
+F78F EE95B2
+F790 EE95B3
+F791 EE95B4
+F792 EE95B5
+F793 EE95B6
+F794 EE95B7
+F795 EE95B8
+F796 EE95B9
+F797 EE95BA
+F798 EE95BB
+F799 EE95BC
+F79A EE95BD
+F79B EE95BE
+F79C EE95BF
+F79D EE9680
+F79E EE9681
+F79F EE9682
+F7A0 EE9683
+F7A1 EE9684
+F7A2 EE9685
+F7A3 EE9686
+F7A4 EE9687
+F7A5 EE9688
+F7A6 EE9689
+F7A7 EE968A
+F7A8 EE968B
+F7A9 EE968C
+F7AA EE968D
+F7AB EE968E
+F7AC EE968F
+F7AD EE9690
+F7AE EE9691
+F7AF EE9692
+F7B0 EE9693
+F7B1 EE9694
+F7B2 EE9695
+F7B3 EE9696
+F7B4 EE9697
+F7B5 EE9698
+F7B6 EE9699
+F7B7 EE969A
+F7B8 EE969B
+F7B9 EE969C
+F7BA EE969D
+F7BB EE969E
+F7BC EE969F
+F7BD EE96A0
+F7BE EE96A1
+F7BF EE96A2
+F7C0 EE96A3
+F7C1 EE96A4
+F7C2 EE96A5
+F7C3 EE96A6
+F7C4 EE96A7
+F7C5 EE96A8
+F7C6 EE96A9
+F7C7 EE96AA
+F7C8 EE96AB
+F7C9 EE96AC
+F7CA EE96AD
+F7CB EE96AE
+F7CC EE96AF
+F7CD EE96B0
+F7CE EE96B1
+F7CF EE96B2
+F7D0 EE96B3
+F7D1 EE96B4
+F7D2 EE96B5
+F7D3 EE96B6
+F7D4 EE96B7
+F7D5 EE96B8
+F7D6 EE96B9
+F7D7 EE96BA
+F7D8 EE96BB
+F7D9 EE96BC
+F7DA EE96BD
+F7DB EE96BE
+F7DC EE96BF
+F7DD EE9780
+F7DE EE9781
+F7DF EE9782
+F7E0 EE9783
+F7E1 EE9784
+F7E2 EE9785
+F7E3 EE9786
+F7E4 EE9787
+F7E5 EE9788
+F7E6 EE9789
+F7E7 EE978A
+F7E8 EE978B
+F7E9 EE978C
+F7EA EE978D
+F7EB EE978E
+F7EC EE978F
+F7ED EE9790
+F7EE EE9791
+F7EF EE9792
+F7F0 EE9793
+F7F1 EE9794
+F7F2 EE9795
+F7F3 EE9796
+F7F4 EE9797
+F7F5 EE9798
+F7F6 EE9799
+F7F7 EE979A
+F7F8 EE979B
+F7F9 EE979C
+F7FA EE979D
+F7FB EE979E
+F7FC EE979F
+F840 EE97A0
+F841 EE97A1
+F842 EE97A2
+F843 EE97A3
+F844 EE97A4
+F845 EE97A5
+F846 EE97A6
+F847 EE97A7
+F848 EE97A8
+F849 EE97A9
+F84A EE97AA
+F84B EE97AB
+F84C EE97AC
+F84D EE97AD
+F84E EE97AE
+F84F EE97AF
+F850 EE97B0
+F851 EE97B1
+F852 EE97B2
+F853 EE97B3
+F854 EE97B4
+F855 EE97B5
+F856 EE97B6
+F857 EE97B7
+F858 EE97B8
+F859 EE97B9
+F85A EE97BA
+F85B EE97BB
+F85C EE97BC
+F85D EE97BD
+F85E EE97BE
+F85F EE97BF
+F860 EE9880
+F861 EE9881
+F862 EE9882
+F863 EE9883
+F864 EE9884
+F865 EE9885
+F866 EE9886
+F867 EE9887
+F868 EE9888
+F869 EE9889
+F86A EE988A
+F86B EE988B
+F86C EE988C
+F86D EE988D
+F86E EE988E
+F86F EE988F
+F870 EE9890
+F871 EE9891
+F872 EE9892
+F873 EE9893
+F874 EE9894
+F875 EE9895
+F876 EE9896
+F877 EE9897
+F878 EE9898
+F879 EE9899
+F87A EE989A
+F87B EE989B
+F87C EE989C
+F87D EE989D
+F87E EE989E
+F880 EE989F
+F881 EE98A0
+F882 EE98A1
+F883 EE98A2
+F884 EE98A3
+F885 EE98A4
+F886 EE98A5
+F887 EE98A6
+F888 EE98A7
+F889 EE98A8
+F88A EE98A9
+F88B EE98AA
+F88C EE98AB
+F88D EE98AC
+F88E EE98AD
+F88F EE98AE
+F890 EE98AF
+F891 EE98B0
+F892 EE98B1
+F893 EE98B2
+F894 EE98B3
+F895 EE98B4
+F896 EE98B5
+F897 EE98B6
+F898 EE98B7
+F899 EE98B8
+F89A EE98B9
+F89B EE98BA
+F89C EE98BB
+F89D EE98BC
+F89E EE98BD
+F89F EE98BE
+F8A0 EE98BF
+F8A1 EE9980
+F8A2 EE9981
+F8A3 EE9982
+F8A4 EE9983
+F8A5 EE9984
+F8A6 EE9985
+F8A7 EE9986
+F8A8 EE9987
+F8A9 EE9988
+F8AA EE9989
+F8AB EE998A
+F8AC EE998B
+F8AD EE998C
+F8AE EE998D
+F8AF EE998E
+F8B0 EE998F
+F8B1 EE9990
+F8B2 EE9991
+F8B3 EE9992
+F8B4 EE9993
+F8B5 EE9994
+F8B6 EE9995
+F8B7 EE9996
+F8B8 EE9997
+F8B9 EE9998
+F8BA EE9999
+F8BB EE999A
+F8BC EE999B
+F8BD EE999C
+F8BE EE999D
+F8BF EE999E
+F8C0 EE999F
+F8C1 EE99A0
+F8C2 EE99A1
+F8C3 EE99A2
+F8C4 EE99A3
+F8C5 EE99A4
+F8C6 EE99A5
+F8C7 EE99A6
+F8C8 EE99A7
+F8C9 EE99A8
+F8CA EE99A9
+F8CB EE99AA
+F8CC EE99AB
+F8CD EE99AC
+F8CE EE99AD
+F8CF EE99AE
+F8D0 EE99AF
+F8D1 EE99B0
+F8D2 EE99B1
+F8D3 EE99B2
+F8D4 EE99B3
+F8D5 EE99B4
+F8D6 EE99B5
+F8D7 EE99B6
+F8D8 EE99B7
+F8D9 EE99B8
+F8DA EE99B9
+F8DB EE99BA
+F8DC EE99BB
+F8DD EE99BC
+F8DE EE99BD
+F8DF EE99BE
+F8E0 EE99BF
+F8E1 EE9A80
+F8E2 EE9A81
+F8E3 EE9A82
+F8E4 EE9A83
+F8E5 EE9A84
+F8E6 EE9A85
+F8E7 EE9A86
+F8E8 EE9A87
+F8E9 EE9A88
+F8EA EE9A89
+F8EB EE9A8A
+F8EC EE9A8B
+F8ED EE9A8C
+F8EE EE9A8D
+F8EF EE9A8E
+F8F0 EE9A8F
+F8F1 EE9A90
+F8F2 EE9A91
+F8F3 EE9A92
+F8F4 EE9A93
+F8F5 EE9A94
+F8F6 EE9A95
+F8F7 EE9A96
+F8F8 EE9A97
+F8F9 EE9A98
+F8FA EE9A99
+F8FB EE9A9A
+F8FC EE9A9B
+F940 EE9A9C
+F941 EE9A9D
+F942 EE9A9E
+F943 EE9A9F
+F944 EE9AA0
+F945 EE9AA1
+F946 EE9AA2
+F947 EE9AA3
+F948 EE9AA4
+F949 EE9AA5
+F94A EE9AA6
+F94B EE9AA7
+F94C EE9AA8
+F94D EE9AA9
+F94E EE9AAA
+F94F EE9AAB
+F950 EE9AAC
+F951 EE9AAD
+F952 EE9AAE
+F953 EE9AAF
+F954 EE9AB0
+F955 EE9AB1
+F956 EE9AB2
+F957 EE9AB3
+F958 EE9AB4
+F959 EE9AB5
+F95A EE9AB6
+F95B EE9AB7
+F95C EE9AB8
+F95D EE9AB9
+F95E EE9ABA
+F95F EE9ABB
+F960 EE9ABC
+F961 EE9ABD
+F962 EE9ABE
+F963 EE9ABF
+F964 EE9B80
+F965 EE9B81
+F966 EE9B82
+F967 EE9B83
+F968 EE9B84
+F969 EE9B85
+F96A EE9B86
+F96B EE9B87
+F96C EE9B88
+F96D EE9B89
+F96E EE9B8A
+F96F EE9B8B
+F970 EE9B8C
+F971 EE9B8D
+F972 EE9B8E
+F973 EE9B8F
+F974 EE9B90
+F975 EE9B91
+F976 EE9B92
+F977 EE9B93
+F978 EE9B94
+F979 EE9B95
+F97A EE9B96
+F97B EE9B97
+F97C EE9B98
+F97D EE9B99
+F97E EE9B9A
+F980 EE9B9B
+F981 EE9B9C
+F982 EE9B9D
+F983 EE9B9E
+F984 EE9B9F
+F985 EE9BA0
+F986 EE9BA1
+F987 EE9BA2
+F988 EE9BA3
+F989 EE9BA4
+F98A EE9BA5
+F98B EE9BA6
+F98C EE9BA7
+F98D EE9BA8
+F98E EE9BA9
+F98F EE9BAA
+F990 EE9BAB
+F991 EE9BAC
+F992 EE9BAD
+F993 EE9BAE
+F994 EE9BAF
+F995 EE9BB0
+F996 EE9BB1
+F997 EE9BB2
+F998 EE9BB3
+F999 EE9BB4
+F99A EE9BB5
+F99B EE9BB6
+F99C EE9BB7
+F99D EE9BB8
+F99E EE9BB9
+F99F EE9BBA
+F9A0 EE9BBB
+F9A1 EE9BBC
+F9A2 EE9BBD
+F9A3 EE9BBE
+F9A4 EE9BBF
+F9A5 EE9C80
+F9A6 EE9C81
+F9A7 EE9C82
+F9A8 EE9C83
+F9A9 EE9C84
+F9AA EE9C85
+F9AB EE9C86
+F9AC EE9C87
+F9AD EE9C88
+F9AE EE9C89
+F9AF EE9C8A
+F9B0 EE9C8B
+F9B1 EE9C8C
+F9B2 EE9C8D
+F9B3 EE9C8E
+F9B4 EE9C8F
+F9B5 EE9C90
+F9B6 EE9C91
+F9B7 EE9C92
+F9B8 EE9C93
+F9B9 EE9C94
+F9BA EE9C95
+F9BB EE9C96
+F9BC EE9C97
+F9BD EE9C98
+F9BE EE9C99
+F9BF EE9C9A
+F9C0 EE9C9B
+F9C1 EE9C9C
+F9C2 EE9C9D
+F9C3 EE9C9E
+F9C4 EE9C9F
+F9C5 EE9CA0
+F9C6 EE9CA1
+F9C7 EE9CA2
+F9C8 EE9CA3
+F9C9 EE9CA4
+F9CA EE9CA5
+F9CB EE9CA6
+F9CC EE9CA7
+F9CD EE9CA8
+F9CE EE9CA9
+F9CF EE9CAA
+F9D0 EE9CAB
+F9D1 EE9CAC
+F9D2 EE9CAD
+F9D3 EE9CAE
+F9D4 EE9CAF
+F9D5 EE9CB0
+F9D6 EE9CB1
+F9D7 EE9CB2
+F9D8 EE9CB3
+F9D9 EE9CB4
+F9DA EE9CB5
+F9DB EE9CB6
+F9DC EE9CB7
+F9DD EE9CB8
+F9DE EE9CB9
+F9DF EE9CBA
+F9E0 EE9CBB
+F9E1 EE9CBC
+F9E2 EE9CBD
+F9E3 EE9CBE
+F9E4 EE9CBF
+F9E5 EE9D80
+F9E6 EE9D81
+F9E7 EE9D82
+F9E8 EE9D83
+F9E9 EE9D84
+F9EA EE9D85
+F9EB EE9D86
+F9EC EE9D87
+F9ED EE9D88
+F9EE EE9D89
+F9EF EE9D8A
+F9F0 EE9D8B
+F9F1 EE9D8C
+F9F2 EE9D8D
+F9F3 EE9D8E
+F9F4 EE9D8F
+F9F5 EE9D90
+F9F6 EE9D91
+F9F7 EE9D92
+F9F8 EE9D93
+F9F9 EE9D94
+F9FA EE9D95
+F9FB EE9D96
+F9FC EE9D97
+FA40 E285B0
+FA41 E285B1
+FA42 E285B2
+FA43 E285B3
+FA44 E285B4
+FA45 E285B5
+FA46 E285B6
+FA47 E285B7
+FA48 E285B8
+FA49 E285B9
+FA4A E285A0
+FA4B E285A1
+FA4C E285A2
+FA4D E285A3
+FA4E E285A4
+FA4F E285A5
+FA50 E285A6
+FA51 E285A7
+FA52 E285A8
+FA53 E285A9
+FA54 EFBFA2
+FA55 EFBFA4
+FA56 EFBC87
+FA57 EFBC82
+FA58 E388B1
+FA59 E28496
+FA5A E284A1
+FA5B E288B5
+FA5C E7BA8A
+FA5D E8A49C
+FA5E E98D88
+FA5F E98A88
+FA60 E8939C
+FA61 E4BF89
+FA62 E782BB
+FA63 E698B1
+FA64 E6A388
+FA65 E98BB9
+FA66 E69BBB
+FA67 E5BD85
+FA68 E4B8A8
+FA69 E4BBA1
+FA6A E4BBBC
+FA6B E4BC80
+FA6C E4BC83
+FA6D E4BCB9
+FA6E E4BD96
+FA6F E4BE92
+FA70 E4BE8A
+FA71 E4BE9A
+FA72 E4BE94
+FA73 E4BF8D
+FA74 E58180
+FA75 E580A2
+FA76 E4BFBF
+FA77 E5809E
+FA78 E58186
+FA79 E581B0
+FA7A E58182
+FA7B E58294
+FA7C E583B4
+FA7D E58398
+FA7E E5858A
+FA80 E585A4
+FA81 E5869D
+FA82 E586BE
+FA83 E587AC
+FA84 E58895
+FA85 E58A9C
+FA86 E58AA6
+FA87 E58B80
+FA88 E58B9B
+FA89 E58C80
+FA8A E58C87
+FA8B E58CA4
+FA8C E58DB2
+FA8D E58E93
+FA8E E58EB2
+FA8F E58F9D
+FA90 EFA88E
+FA91 E5929C
+FA92 E5928A
+FA93 E592A9
+FA94 E593BF
+FA95 E59686
+FA96 E59D99
+FA97 E59DA5
+FA98 E59EAC
+FA99 E59F88
+FA9A E59F87
+FA9B EFA88F
+FA9C EFA890
+FA9D E5A29E
+FA9E E5A2B2
+FA9F E5A48B
+FAA0 E5A593
+FAA1 E5A59B
+FAA2 E5A59D
+FAA3 E5A5A3
+FAA4 E5A6A4
+FAA5 E5A6BA
+FAA6 E5AD96
+FAA7 E5AF80
+FAA8 E794AF
+FAA9 E5AF98
+FAAA E5AFAC
+FAAB E5B09E
+FAAC E5B2A6
+FAAD E5B2BA
+FAAE E5B3B5
+FAAF E5B4A7
+FAB0 E5B593
+FAB1 EFA891
+FAB2 E5B582
+FAB3 E5B5AD
+FAB4 E5B6B8
+FAB5 E5B6B9
+FAB6 E5B790
+FAB7 E5BCA1
+FAB8 E5BCB4
+FAB9 E5BDA7
+FABA E5BEB7
+FABB E5BF9E
+FABC E6819D
+FABD E68285
+FABE E6828A
+FABF E6839E
+FAC0 E68395
+FAC1 E684A0
+FAC2 E683B2
+FAC3 E68491
+FAC4 E684B7
+FAC5 E684B0
+FAC6 E68698
+FAC7 E68893
+FAC8 E68AA6
+FAC9 E68FB5
+FACA E691A0
+FACB E6929D
+FACC E6938E
+FACD E6958E
+FACE E69880
+FACF E69895
+FAD0 E698BB
+FAD1 E69889
+FAD2 E698AE
+FAD3 E6989E
+FAD4 E698A4
+FAD5 E699A5
+FAD6 E69997
+FAD7 E69999
+FAD8 EFA892
+FAD9 E699B3
+FADA E69A99
+FADB E69AA0
+FADC E69AB2
+FADD E69ABF
+FADE E69BBA
+FADF E69C8E
+FAE0 EFA4A9
+FAE1 E69DA6
+FAE2 E69EBB
+FAE3 E6A192
+FAE4 E69F80
+FAE5 E6A081
+FAE6 E6A184
+FAE7 E6A38F
+FAE8 EFA893
+FAE9 E6A5A8
+FAEA EFA894
+FAEB E6A698
+FAEC E6A7A2
+FAED E6A8B0
+FAEE E6A9AB
+FAEF E6A986
+FAF0 E6A9B3
+FAF1 E6A9BE
+FAF2 E6ABA2
+FAF3 E6ABA4
+FAF4 E6AF96
+FAF5 E6B0BF
+FAF6 E6B19C
+FAF7 E6B286
+FAF8 E6B1AF
+FAF9 E6B39A
+FAFA E6B484
+FAFB E6B687
+FAFC E6B5AF
+FB40 E6B696
+FB41 E6B6AC
+FB42 E6B78F
+FB43 E6B7B8
+FB44 E6B7B2
+FB45 E6B7BC
+FB46 E6B8B9
+FB47 E6B99C
+FB48 E6B8A7
+FB49 E6B8BC
+FB4A E6BABF
+FB4B E6BE88
+FB4C E6BEB5
+FB4D E6BFB5
+FB4E E78085
+FB4F E78087
+FB50 E780A8
+FB51 E78285
+FB52 E782AB
+FB53 E7848F
+FB54 E78484
+FB55 E7859C
+FB56 E78586
+FB57 E78587
+FB58 EFA895
+FB59 E78781
+FB5A E787BE
+FB5B E78AB1
+FB5C E78ABE
+FB5D E78CA4
+FB5E EFA896
+FB5F E78DB7
+FB60 E78EBD
+FB61 E78F89
+FB62 E78F96
+FB63 E78FA3
+FB64 E78F92
+FB65 E79087
+FB66 E78FB5
+FB67 E790A6
+FB68 E790AA
+FB69 E790A9
+FB6A E790AE
+FB6B E791A2
+FB6C E79289
+FB6D E7929F
+FB6E E79481
+FB6F E795AF
+FB70 E79A82
+FB71 E79A9C
+FB72 E79A9E
+FB73 E79A9B
+FB74 E79AA6
+FB75 EFA897
+FB76 E79D86
+FB77 E58AAF
+FB78 E7A0A1
+FB79 E7A18E
+FB7A E7A1A4
+FB7B E7A1BA
+FB7C E7A4B0
+FB7D EFA898
+FB7E EFA899
+FB80 EFA89A
+FB81 E7A694
+FB82 EFA89B
+FB83 E7A69B
+FB84 E7AB91
+FB85 E7ABA7
+FB86 EFA89C
+FB87 E7ABAB
+FB88 E7AE9E
+FB89 EFA89D
+FB8A E7B588
+FB8B E7B59C
+FB8C E7B6B7
+FB8D E7B6A0
+FB8E E7B796
+FB8F E7B992
+FB90 E7BD87
+FB91 E7BEA1
+FB92 EFA89E
+FB93 E88C81
+FB94 E88DA2
+FB95 E88DBF
+FB96 E88F87
+FB97 E88FB6
+FB98 E89188
+FB99 E892B4
+FB9A E89593
+FB9B E89599
+FB9C E895AB
+FB9D EFA89F
+FB9E E896B0
+FB9F EFA8A0
+FBA0 EFA8A1
+FBA1 E8A087
+FBA2 E8A3B5
+FBA3 E8A892
+FBA4 E8A8B7
+FBA5 E8A9B9
+FBA6 E8AAA7
+FBA7 E8AABE
+FBA8 E8AB9F
+FBA9 EFA8A2
+FBAA E8ABB6
+FBAB E8AD93
+FBAC E8ADBF
+FBAD E8B3B0
+FBAE E8B3B4
+FBAF E8B492
+FBB0 E8B5B6
+FBB1 EFA8A3
+FBB2 E8BB8F
+FBB3 EFA8A4
+FBB4 EFA8A5
+FBB5 E981A7
+FBB6 E9839E
+FBB7 EFA8A6
+FBB8 E98495
+FBB9 E984A7
+FBBA E9879A
+FBBB E98797
+FBBC E9879E
+FBBD E987AD
+FBBE E987AE
+FBBF E987A4
+FBC0 E987A5
+FBC1 E98886
+FBC2 E98890
+FBC3 E9888A
+FBC4 E988BA
+FBC5 E98980
+FBC6 E988BC
+FBC7 E9898E
+FBC8 E98999
+FBC9 E98991
+FBCA E988B9
+FBCB E989A7
+FBCC E98AA7
+FBCD E989B7
+FBCE E989B8
+FBCF E98BA7
+FBD0 E98B97
+FBD1 E98B99
+FBD2 E98B90
+FBD3 EFA8A7
+FBD4 E98B95
+FBD5 E98BA0
+FBD6 E98B93
+FBD7 E98CA5
+FBD8 E98CA1
+FBD9 E98BBB
+FBDA EFA8A8
+FBDB E98C9E
+FBDC E98BBF
+FBDD E98C9D
+FBDE E98C82
+FBDF E98DB0
+FBE0 E98D97
+FBE1 E98EA4
+FBE2 E98F86
+FBE3 E98F9E
+FBE4 E98FB8
+FBE5 E990B1
+FBE6 E99185
+FBE7 E99188
+FBE8 E99692
+FBE9 EFA79C
+FBEA EFA8A9
+FBEB E99A9D
+FBEC E99AAF
+FBED E99CB3
+FBEE E99CBB
+FBEF E99D83
+FBF0 E99D8D
+FBF1 E99D8F
+FBF2 E99D91
+FBF3 E99D95
+FBF4 E9A197
+FBF5 E9A1A5
+FBF6 EFA8AA
+FBF7 EFA8AB
+FBF8 E9A4A7
+FBF9 EFA8AC
+FBFA E9A69E
+FBFB E9A98E
+FBFC E9AB99
+FC40 E9AB9C
+FC41 E9ADB5
+FC42 E9ADB2
+FC43 E9AE8F
+FC44 E9AEB1
+FC45 E9AEBB
+FC46 E9B080
+FC47 E9B5B0
+FC48 E9B5AB
+FC49 EFA8AD
+FC4A E9B899
+FC4B E9BB91
+DROP TABLE t1;
+#
+# WL#3090 Japanese Character Set adjustments
+# Test Unicode->cp932 conversion
+#
+CREATE TABLE t1 (a CHAR(1)) CHARACTER SET utf8;
+INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
+INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
+CREATE TEMPORARY TABLE head AS SELECT concat(b1.a, b2.a) AS head FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE tail AS SELECT concat(b1.a, b2.a) AS tail FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE middle AS SELECT concat(b1.a, b2.a) AS middle FROM t1 b1, t1 b2;
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(1)) CHARACTER SET utf8;
+INSERT INTO t1 SELECT UNHEX(head)
+FROM head WHERE (head BETWEEN '00' AND '7F') ORDER BY head;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head,tail))
+FROM head, tail
+WHERE (head BETWEEN 'C2' AND 'DF') AND (tail BETWEEN '80' AND 'BF')
+ORDER BY head, tail;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head, middle, tail))
+FROM head, middle, tail
+WHERE (head BETWEEN 'E0' AND 'EF')
+AND (middle BETWEEN '80' AND 'BF')
+AND (tail BETWEEN '80' AND 'BF')
+AND NOT (head='E0' AND middle BETWEEN '80' AND '9F')
+ORDER BY head, middle, tail;
+SELECT count(*) FROM t1;
+count(*)
+65536
+SELECT HEX(a), HEX(CONVERT(a using cp932)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+HEX(a) b
+00 00
+01 01
+02 02
+03 03
+04 04
+05 05
+06 06
+07 07
+08 08
+09 09
+0A 0A
+0B 0B
+0C 0C
+0D 0D
+0E 0E
+0F 0F
+10 10
+11 11
+12 12
+13 13
+14 14
+15 15
+16 16
+17 17
+18 18
+19 19
+1A 1A
+1B 1B
+1C 1C
+1D 1D
+1E 1E
+1F 1F
+20 20
+21 21
+22 22
+23 23
+24 24
+25 25
+26 26
+27 27
+28 28
+29 29
+2A 2A
+2B 2B
+2C 2C
+2D 2D
+2E 2E
+2F 2F
+30 30
+31 31
+32 32
+33 33
+34 34
+35 35
+36 36
+37 37
+38 38
+39 39
+3A 3A
+3B 3B
+3C 3C
+3D 3D
+3E 3E
+40 40
+41 41
+42 42
+43 43
+44 44
+45 45
+46 46
+47 47
+48 48
+49 49
+4A 4A
+4B 4B
+4C 4C
+4D 4D
+4E 4E
+4F 4F
+50 50
+51 51
+52 52
+53 53
+54 54
+55 55
+56 56
+57 57
+58 58
+59 59
+5A 5A
+5B 5B
+5C 5C
+5D 5D
+5E 5E
+5F 5F
+60 60
+61 61
+62 62
+63 63
+64 64
+65 65
+66 66
+67 67
+68 68
+69 69
+6A 6A
+6B 6B
+6C 6C
+6D 6D
+6E 6E
+6F 6F
+70 70
+71 71
+72 72
+73 73
+74 74
+75 75
+76 76
+77 77
+78 78
+79 79
+7A 7A
+7B 7B
+7C 7C
+7D 7D
+7E 7E
+7F 7F
+C2A7 8198
+C2A8 814E
+C2B0 818B
+C2B1 817D
+C2B4 814C
+C2B6 81F7
+C397 817E
+C3B7 8180
+CE91 839F
+CE92 83A0
+CE93 83A1
+CE94 83A2
+CE95 83A3
+CE96 83A4
+CE97 83A5
+CE98 83A6
+CE99 83A7
+CE9A 83A8
+CE9B 83A9
+CE9C 83AA
+CE9D 83AB
+CE9E 83AC
+CE9F 83AD
+CEA0 83AE
+CEA1 83AF
+CEA3 83B0
+CEA4 83B1
+CEA5 83B2
+CEA6 83B3
+CEA7 83B4
+CEA8 83B5
+CEA9 83B6
+CEB1 83BF
+CEB2 83C0
+CEB3 83C1
+CEB4 83C2
+CEB5 83C3
+CEB6 83C4
+CEB7 83C5
+CEB8 83C6
+CEB9 83C7
+CEBA 83C8
+CEBB 83C9
+CEBC 83CA
+CEBD 83CB
+CEBE 83CC
+CEBF 83CD
+CF80 83CE
+CF81 83CF
+CF83 83D0
+CF84 83D1
+CF85 83D2
+CF86 83D3
+CF87 83D4
+CF88 83D5
+CF89 83D6
+D081 8446
+D090 8440
+D091 8441
+D092 8442
+D093 8443
+D094 8444
+D095 8445
+D096 8447
+D097 8448
+D098 8449
+D099 844A
+D09A 844B
+D09B 844C
+D09C 844D
+D09D 844E
+D09E 844F
+D09F 8450
+D0A0 8451
+D0A1 8452
+D0A2 8453
+D0A3 8454
+D0A4 8455
+D0A5 8456
+D0A6 8457
+D0A7 8458
+D0A8 8459
+D0A9 845A
+D0AA 845B
+D0AB 845C
+D0AC 845D
+D0AD 845E
+D0AE 845F
+D0AF 8460
+D0B0 8470
+D0B1 8471
+D0B2 8472
+D0B3 8473
+D0B4 8474
+D0B5 8475
+D0B6 8477
+D0B7 8478
+D0B8 8479
+D0B9 847A
+D0BA 847B
+D0BB 847C
+D0BC 847D
+D0BD 847E
+D0BE 8480
+D0BF 8481
+D180 8482
+D181 8483
+D182 8484
+D183 8485
+D184 8486
+D185 8487
+D186 8488
+D187 8489
+D188 848A
+D189 848B
+D18A 848C
+D18B 848D
+D18C 848E
+D18D 848F
+D18E 8490
+D18F 8491
+D191 8476
+E28090 815D
+E28095 815C
+E28098 8165
+E28099 8166
+E2809C 8167
+E2809D 8168
+E280A0 81F5
+E280A1 81F6
+E280A5 8164
+E280A6 8163
+E280B0 81F1
+E280B2 818C
+E280B3 818D
+E280BB 81A6
+E28483 818E
+E28496 8782
+E284A1 8784
+E284AB 81F0
+E285A0 8754
+E285A1 8755
+E285A2 8756
+E285A3 8757
+E285A4 8758
+E285A5 8759
+E285A6 875A
+E285A7 875B
+E285A8 875C
+E285A9 875D
+E285B0 FA40
+E285B1 FA41
+E285B2 FA42
+E285B3 FA43
+E285B4 FA44
+E285B5 FA45
+E285B6 FA46
+E285B7 FA47
+E285B8 FA48
+E285B9 FA49
+E28690 81A9
+E28691 81AA
+E28692 81A8
+E28693 81AB
+E28792 81CB
+E28794 81CC
+E28880 81CD
+E28882 81DD
+E28883 81CE
+E28887 81DE
+E28888 81B8
+E2888B 81B9
+E28891 8794
+E2889A 81E3
+E2889D 81E5
+E2889E 8187
+E2889F 8798
+E288A0 81DA
+E288A5 8161
+E288A7 81C8
+E288A8 81C9
+E288A9 81BF
+E288AA 81BE
+E288AB 81E7
+E288AC 81E8
+E288AE 8793
+E288B4 8188
+E288B5 81E6
+E288BD 81E4
+E28992 81E0
+E289A0 8182
+E289A1 81DF
+E289A6 8185
+E289A7 8186
+E289AA 81E1
+E289AB 81E2
+E28A82 81BC
+E28A83 81BD
+E28A86 81BA
+E28A87 81BB
+E28AA5 81DB
+E28ABF 8799
+E28C92 81DC
+E291A0 8740
+E291A1 8741
+E291A2 8742
+E291A3 8743
+E291A4 8744
+E291A5 8745
+E291A6 8746
+E291A7 8747
+E291A8 8748
+E291A9 8749
+E291AA 874A
+E291AB 874B
+E291AC 874C
+E291AD 874D
+E291AE 874E
+E291AF 874F
+E291B0 8750
+E291B1 8751
+E291B2 8752
+E291B3 8753
+E29480 849F
+E29481 84AA
+E29482 84A0
+E29483 84AB
+E2948C 84A1
+E2948F 84AC
+E29490 84A2
+E29493 84AD
+E29494 84A4
+E29497 84AF
+E29498 84A3
+E2949B 84AE
+E2949C 84A5
+E2949D 84BA
+E294A0 84B5
+E294A3 84B0
+E294A4 84A7
+E294A5 84BC
+E294A8 84B7
+E294AB 84B2
+E294AC 84A6
+E294AF 84B6
+E294B0 84BB
+E294B3 84B1
+E294B4 84A8
+E294B7 84B8
+E294B8 84BD
+E294BB 84B3
+E294BC 84A9
+E294BF 84B9
+E29582 84BE
+E2958B 84B4
+E296A0 81A1
+E296A1 81A0
+E296B2 81A3
+E296B3 81A2
+E296BC 81A5
+E296BD 81A4
+E29786 819F
+E29787 819E
+E2978B 819B
+E2978E 819D
+E2978F 819C
+E297AF 81FC
+E29885 819A
+E29886 8199
+E29980 818A
+E29982 8189
+E299AA 81F4
+E299AD 81F3
+E299AF 81F2
+E38080 8140
+E38081 8141
+E38082 8142
+E38083 8156
+E38085 8158
+E38086 8159
+E38087 815A
+E38088 8171
+E38089 8172
+E3808A 8173
+E3808B 8174
+E3808C 8175
+E3808D 8176
+E3808E 8177
+E3808F 8178
+E38090 8179
+E38091 817A
+E38092 81A7
+E38093 81AC
+E38094 816B
+E38095 816C
+E3809D 8780
+E3809F 8781
+E38181 829F
+E38182 82A0
+E38183 82A1
+E38184 82A2
+E38185 82A3
+E38186 82A4
+E38187 82A5
+E38188 82A6
+E38189 82A7
+E3818A 82A8
+E3818B 82A9
+E3818C 82AA
+E3818D 82AB
+E3818E 82AC
+E3818F 82AD
+E38190 82AE
+E38191 82AF
+E38192 82B0
+E38193 82B1
+E38194 82B2
+E38195 82B3
+E38196 82B4
+E38197 82B5
+E38198 82B6
+E38199 82B7
+E3819A 82B8
+E3819B 82B9
+E3819C 82BA
+E3819D 82BB
+E3819E 82BC
+E3819F 82BD
+E381A0 82BE
+E381A1 82BF
+E381A2 82C0
+E381A3 82C1
+E381A4 82C2
+E381A5 82C3
+E381A6 82C4
+E381A7 82C5
+E381A8 82C6
+E381A9 82C7
+E381AA 82C8
+E381AB 82C9
+E381AC 82CA
+E381AD 82CB
+E381AE 82CC
+E381AF 82CD
+E381B0 82CE
+E381B1 82CF
+E381B2 82D0
+E381B3 82D1
+E381B4 82D2
+E381B5 82D3
+E381B6 82D4
+E381B7 82D5
+E381B8 82D6
+E381B9 82D7
+E381BA 82D8
+E381BB 82D9
+E381BC 82DA
+E381BD 82DB
+E381BE 82DC
+E381BF 82DD
+E38280 82DE
+E38281 82DF
+E38282 82E0
+E38283 82E1
+E38284 82E2
+E38285 82E3
+E38286 82E4
+E38287 82E5
+E38288 82E6
+E38289 82E7
+E3828A 82E8
+E3828B 82E9
+E3828C 82EA
+E3828D 82EB
+E3828E 82EC
+E3828F 82ED
+E38290 82EE
+E38291 82EF
+E38292 82F0
+E38293 82F1
+E3829B 814A
+E3829C 814B
+E3829D 8154
+E3829E 8155
+E382A1 8340
+E382A2 8341
+E382A3 8342
+E382A4 8343
+E382A5 8344
+E382A6 8345
+E382A7 8346
+E382A8 8347
+E382A9 8348
+E382AA 8349
+E382AB 834A
+E382AC 834B
+E382AD 834C
+E382AE 834D
+E382AF 834E
+E382B0 834F
+E382B1 8350
+E382B2 8351
+E382B3 8352
+E382B4 8353
+E382B5 8354
+E382B6 8355
+E382B7 8356
+E382B8 8357
+E382B9 8358
+E382BA 8359
+E382BB 835A
+E382BC 835B
+E382BD 835C
+E382BE 835D
+E382BF 835E
+E38380 835F
+E38381 8360
+E38382 8361
+E38383 8362
+E38384 8363
+E38385 8364
+E38386 8365
+E38387 8366
+E38388 8367
+E38389 8368
+E3838A 8369
+E3838B 836A
+E3838C 836B
+E3838D 836C
+E3838E 836D
+E3838F 836E
+E38390 836F
+E38391 8370
+E38392 8371
+E38393 8372
+E38394 8373
+E38395 8374
+E38396 8375
+E38397 8376
+E38398 8377
+E38399 8378
+E3839A 8379
+E3839B 837A
+E3839C 837B
+E3839D 837C
+E3839E 837D
+E3839F 837E
+E383A0 8380
+E383A1 8381
+E383A2 8382
+E383A3 8383
+E383A4 8384
+E383A5 8385
+E383A6 8386
+E383A7 8387
+E383A8 8388
+E383A9 8389
+E383AA 838A
+E383AB 838B
+E383AC 838C
+E383AD 838D
+E383AE 838E
+E383AF 838F
+E383B0 8390
+E383B1 8391
+E383B2 8392
+E383B3 8393
+E383B4 8394
+E383B5 8395
+E383B6 8396
+E383BB 8145
+E383BC 815B
+E383BD 8152
+E383BE 8153
+E388B1 878A
+E388B2 878B
+E388B9 878C
+E38AA4 8785
+E38AA5 8786
+E38AA6 8787
+E38AA7 8788
+E38AA8 8789
+E38C83 8765
+E38C8D 8769
+E38C94 8760
+E38C98 8763
+E38CA2 8761
+E38CA3 876B
+E38CA6 876A
+E38CA7 8764
+E38CAB 876C
+E38CB6 8766
+E38CBB 876E
+E38D89 875F
+E38D8A 876D
+E38D8D 8762
+E38D91 8767
+E38D97 8768
+E38DBB 877E
+E38DBC 878F
+E38DBD 878E
+E38DBE 878D
+E38E8E 8772
+E38E8F 8773
+E38E9C 876F
+E38E9D 8770
+E38E9E 8771
+E38EA1 8775
+E38F84 8774
+E38F8D 8783
+E4B880 88EA
+E4B881 929A
+E4B883 8EB5
+E4B887 969C
+E4B888 8FE4
+E4B889 8E4F
+E4B88A 8FE3
+E4B88B 89BA
+E4B88D 9573
+E4B88E 975E
+E4B890 98A0
+E4B891 894E
+E4B894 8A8E
+E4B895 98A1
+E4B896 90A2
+E4B897 99C0
+E4B898 8B75
+E4B899 95B8
+E4B89E 8FE5
+E4B8A1 97BC
+E4B8A6 95C0
+E4B8A8 FA68
+E4B8AA 98A2
+E4B8AD 9286
+E4B8B1 98A3
+E4B8B2 8BF8
+E4B8B6 98A4
+E4B8B8 8ADB
+E4B8B9 924F
+E4B8BB 8EE5
+E4B8BC 98A5
+E4B8BF 98A6
+E4B982 98A7
+E4B983 9454
+E4B985 8B76
+E4B98B 9456
+E4B98D 93E1
+E4B98E 8CC1
+E4B98F 9652
+E4B995 E568
+E4B996 98A8
+E4B997 8FE6
+E4B998 98A9
+E4B999 89B3
+E4B99D 8BE3
+E4B99E 8CEE
+E4B99F 96E7
+E4B9A2 9BA4
+E4B9B1 9790
+E4B9B3 93FB
+E4B9BE 8AA3
+E4BA80 8B54
+E4BA82 98AA
+E4BA85 98AB
+E4BA86 97B9
+E4BA88 975C
+E4BA89 9188
+E4BA8A 98AD
+E4BA8B 8E96
+E4BA8C 93F1
+E4BA8E 98B0
+E4BA91 895D
+E4BA92 8CDD
+E4BA94 8CDC
+E4BA95 88E4
+E4BA98 986A
+E4BA99 9869
+E4BA9B 8DB1
+E4BA9C 889F
+E4BA9E 98B1
+E4BA9F 98B2
+E4BAA0 98B3
+E4BAA1 9653
+E4BAA2 98B4
+E4BAA4 8CF0
+E4BAA5 88E5
+E4BAA6 9692
+E4BAA8 8B9C
+E4BAAB 8B9D
+E4BAAC 8B9E
+E4BAAD 92E0
+E4BAAE 97BA
+E4BAB0 98B5
+E4BAB3 98B6
+E4BAB6 98B7
+E4BABA 906C
+E4BB80 8F59
+E4BB81 906D
+E4BB82 98BC
+E4BB84 98BA
+E4BB86 98BB
+E4BB87 8B77
+E4BB8A 8DA1
+E4BB8B 89EE
+E4BB8D 98B9
+E4BB8E 98B8
+E4BB8F 95A7
+E4BB94 8E65
+E4BB95 8E64
+E4BB96 91BC
+E4BB97 98BD
+E4BB98 9574
+E4BB99 90E5
+E4BB9D 8157
+E4BB9E 98BE
+E4BB9F 98C0
+E4BBA1 FA69
+E4BBA3 91E3
+E4BBA4 97DF
+E4BBA5 88C8
+E4BBAD 98BF
+E4BBAE 89BC
+E4BBB0 8BC2
+E4BBB2 9287
+E4BBB6 8C8F
+E4BBB7 98C1
+E4BBBB 9443
+E4BBBC FA6A
+E4BC80 FA6B
+E4BC81 8AE9
+E4BC83 FA6C
+E4BC89 98C2
+E4BC8A 88C9
+E4BC8D 8CDE
+E4BC8E 8AEA
+E4BC8F 959A
+E4BC90 94B0
+E4BC91 8B78
+E4BC9A 89EF
+E4BC9C 98E5
+E4BC9D 9360
+E4BCAF 948C
+E4BCB0 98C4
+E4BCB4 94BA
+E4BCB6 97E0
+E4BCB8 904C
+E4BCB9 FA6D
+E4BCBA 8E66
+E4BCBC 8E97
+E4BCBD 89BE
+E4BD83 92CF
+E4BD86 9241
+E4BD87 98C8
+E4BD8D 88CA
+E4BD8E 92E1
+E4BD8F 8F5A
+E4BD90 8DB2
+E4BD91 9743
+E4BD93 91CC
+E4BD95 89BD
+E4BD96 FA6E
+E4BD97 98C7
+E4BD99 975D
+E4BD9A 98C3
+E4BD9B 98C5
+E4BD9C 8DEC
+E4BD9D 98C6
+E4BD9E 9B43
+E4BDA9 98CE
+E4BDAF 98D1
+E4BDB0 98CF
+E4BDB3 89C0
+E4BDB5 95B9
+E4BDB6 98C9
+E4BDBB 98CD
+E4BDBC 8CF1
+E4BDBF 8E67
+E4BE83 8AA4
+E4BE86 98D2
+E4BE88 98CA
+E4BE8A FA70
+E4BE8B 97E1
+E4BE8D 8E98
+E4BE8F 98CB
+E4BE91 98D0
+E4BE92 FA6F
+E4BE94 FA72
+E4BE96 98D3
+E4BE98 98CC
+E4BE9A FA71
+E4BE9B 8B9F
+E4BE9D 88CB
+E4BEA0 8BA0
+E4BEA1 89BF
+E4BEAB 9B44
+E4BEAD 9699
+E4BEAE 958E
+E4BEAF 8CF2
+E4BEB5 904E
+E4BEB6 97B5
+E4BEBF 95D6
+E4BF82 8C57
+E4BF83 91A3
+E4BF84 89E2
+E4BF89 FA61
+E4BF8A 8F72
+E4BF8D FA73
+E4BF8E 98D7
+E4BF90 98DC
+E4BF91 98DA
+E4BF94 98D5
+E4BF97 91AD
+E4BF98 98D8
+E4BF9A 98DB
+E4BF9B 98D9
+E4BF9D 95DB
+E4BF9F 98D6
+E4BFA1 904D
+E4BFA3 9693
+E4BFA4 98DD
+E4BFA5 98DE
+E4BFAE 8F43
+E4BFAF 98EB
+E4BFB3 946F
+E4BFB5 9555
+E4BFB6 98E6
+E4BFB8 95EE
+E4BFBA 89B4
+E4BFBE 98EA
+E4BFBF FA76
+E58085 98E4
+E58086 98ED
+E58089 9171
+E5808B 8CC2
+E5808D 947B
+E5808F E0C5
+E58091 98EC
+E58092 937C
+E58094 98E1
+E58096 8CF4
+E58099 8CF3
+E5809A 98DF
+E5809E FA77
+E5809F 8ED8
+E580A1 98E7
+E580A2 FA75
+E580A3 95ED
+E580A4 926C
+E580A5 98E3
+E580A6 8C91
+E580A8 98E0
+E580A9 98E8
+E580AA 98E2
+E580AB 97CF
+E580AC 98E9
+E580AD 9860
+E580B6 8BE4
+E580B9 8C90
+E58180 FA74
+E58182 FA7A
+E58183 98EE
+E58186 FA78
+E58187 98EF
+E58188 98F3
+E58189 88CC
+E5818F 95CE
+E58190 98F2
+E58195 98F1
+E58196 98F5
+E5819A 98F4
+E5819C 92E2
+E581A5 8C92
+E581AC 98F6
+E581B0 FA79
+E581B2 8EC3
+E581B4 91A4
+E581B5 92E3
+E581B6 8BF4
+E581B8 98F7
+E581BD 8B55
+E58280 98F8
+E58285 98FA
+E5828D 9654
+E58291 8C86
+E58294 FA7B
+E58298 8E50
+E58299 94F5
+E5829A 98F9
+E582AC 8DC3
+E582AD 9762
+E582B2 98FC
+E582B3 9942
+E582B4 98FB
+E582B5 8DC2
+E582B7 8F9D
+E582BE 8C58
+E58382 9943
+E58385 8BCD
+E58389 9940
+E5838A 9941
+E5838D 93AD
+E5838F 919C
+E58391 8BA1
+E58395 966C
+E58396 9944
+E58398 FA7D
+E5839A 97BB
+E5839E 9945
+E583A3 9948
+E583A5 9946
+E583A7 916D
+E583AD 9947
+E583AE 9949
+E583B4 FA7C
+E583B5 994B
+E583B9 994A
+E583BB 95C6
+E58480 8B56
+E58481 994D
+E58482 994E
+E58484 89AD
+E58489 994C
+E58492 8EF2
+E58494 9951
+E58495 9950
+E58496 994F
+E58498 98D4
+E5849A 9952
+E5849F 8F9E
+E584A1 9953
+E584AA 9744
+E584B2 96D7
+E584B7 9955
+E584BA 9954
+E584BB 9957
+E584BC 9956
+E584BF 9958
+E58580 9959
+E58581 88F2
+E58583 8CB3
+E58584 8C5A
+E58585 8F5B
+E58586 929B
+E58587 8BA2
+E58588 90E6
+E58589 8CF5
+E5858A FA7E
+E5858B 8D8E
+E5858C 995B
+E5858D 96C6
+E5858E 9365
+E58590 8E99
+E58592 995A
+E58594 995C
+E5859A 937D
+E5859C 8A95
+E585A2 995D
+E585A4 FA80
+E585A5 93FC
+E585A8 9153
+E585A9 995F
+E585AA 9960
+E585AB 94AA
+E585AC 8CF6
+E585AD 985A
+E585AE 9961
+E585B1 8BA4
+E585B5 95BA
+E585B6 91B4
+E585B7 8BEF
+E585B8 9354
+E585BC 8C93
+E58680 9962
+E58682 9963
+E58685 93E0
+E58686 897E
+E58689 9966
+E5868A 8DFB
+E5868C 9965
+E5868D 8DC4
+E5868F 9967
+E58690 E3EC
+E58691 9968
+E58692 9660
+E58693 9969
+E58695 996A
+E58696 996B
+E58697 8FE7
+E58699 8ECA
+E5869D FA81
+E586A0 8AA5
+E586A2 996E
+E586A4 996C
+E586A5 96BB
+E586A6 996D
+E586A8 9579
+E586A9 996F
+E586AA 9970
+E586AB 9971
+E586AC 937E
+E586B0 9975
+E586B1 9973
+E586B2 9974
+E586B3 9972
+E586B4 8DE1
+E586B5 9976
+E586B6 96E8
+E586B7 97E2
+E586BD 9977
+E586BE FA82
+E58784 90A6
+E58785 9978
+E58786 8F79
+E58789 9979
+E5878B 929C
+E5878C 97BD
+E5878D 9380
+E58796 99C3
+E5879B 997A
+E5879C EAA3
+E5879D 8BC3
+E587A0 997B
+E587A1 967D
+E587A6 8F88
+E587A7 91FA
+E587A9 997D
+E587AA 93E2
+E587AC FA83
+E587AD 997E
+E587B0 9980
+E587B1 8A4D
+E587B5 9981
+E587B6 8BA5
+E587B8 93CA
+E587B9 899A
+E587BA 8F6F
+E587BD 949F
+E587BE 9982
+E58880 9381
+E58883 906E
+E58884 9983
+E58886 95AA
+E58887 90D8
+E58888 8AA0
+E5888A 8AA7
+E5888B 9984
+E5888E 9986
+E58891 8C59
+E58894 9985
+E58895 FA84
+E58897 97F1
+E5889D 8F89
+E588A4 94BB
+E588A5 95CA
+E588A7 9987
+E588A9 9798
+E588AA 9988
+E588AE 9989
+E588B0 939E
+E588B3 998A
+E588B6 90A7
+E588B7 8DFC
+E588B8 8C94
+E588B9 998B
+E588BA 8E68
+E588BB 8D8F
+E58983 92E4
+E58984 998D
+E58987 91A5
+E5898A 8DED
+E5898B 998E
+E5898C 998F
+E5898D 914F
+E5898F 998C
+E58994 9991
+E58996 9655
+E5899B 8D84
+E5899E 9990
+E589A3 8C95
+E589A4 8DDC
+E589A5 948D
+E589A9 9994
+E589AA 9992
+E589AF 959B
+E589B0 8FE8
+E589B1 999B
+E589B2 8A84
+E589B3 9995
+E589B4 9993
+E589B5 916E
+E589BD 9997
+E589BF 9996
+E58A83 8A63
+E58A87 8C80
+E58A88 999C
+E58A89 97AB
+E58A8D 9998
+E58A91 999D
+E58A92 999A
+E58A94 9999
+E58A9B 97CD
+E58A9C FA85
+E58A9F 8CF7
+E58AA0 89C1
+E58AA3 97F2
+E58AA6 FA86
+E58AA9 8F95
+E58AAA 9377
+E58AAB 8D85
+E58AAC 99A0
+E58AAD 99A1
+E58AAF FB77
+E58AB1 97E3
+E58AB4 984A
+E58AB5 99A3
+E58AB9 8CF8
+E58ABC 99A2
+E58ABE 8A4E
+E58B80 FA87
+E58B81 99A4
+E58B83 9675
+E58B85 92BA
+E58B87 9745
+E58B89 95D7
+E58B8D 99A5
+E58B92 E8D3
+E58B95 93AE
+E58B97 99A6
+E58B98 8AA8
+E58B99 96B1
+E58B9B FA88
+E58B9D 8F9F
+E58B9E 99A7
+E58B9F 95E5
+E58BA0 99AB
+E58BA2 90A8
+E58BA3 99A8
+E58BA4 8BCE
+E58BA6 99A9
+E58BA7 8AA9
+E58BB2 8C4D
+E58BB3 99AC
+E58BB5 99AD
+E58BB8 99AE
+E58BB9 99AF
+E58BBA 8ED9
+E58BBE 8CF9
+E58BBF 96DC
+E58C80 FA89
+E58C81 96E6
+E58C82 93F5
+E58C85 95EF
+E58C86 99B0
+E58C87 FA8A
+E58C88 99B1
+E58C8D 99B3
+E58C8F 99B5
+E58C90 99B4
+E58C95 99B6
+E58C96 89BB
+E58C97 966B
+E58C99 8DFA
+E58C9A 99B7
+E58C9D 9178
+E58CA0 8FA0
+E58CA1 8BA7
+E58CA3 99B8
+E58CA4 FA8B
+E58CAA 94D9
+E58CAF 99B9
+E58CB1 99BA
+E58CB3 99BB
+E58CB8 99BC
+E58CB9 9543
+E58CBA 8BE6
+E58CBB 88E3
+E58CBF 93BD
+E58D80 99BD
+E58D81 8F5C
+E58D83 90E7
+E58D85 99BF
+E58D86 99BE
+E58D87 8FA1
+E58D88 8CDF
+E58D89 99C1
+E58D8A 94BC
+E58D8D 99C2
+E58D91 94DA
+E58D92 91B2
+E58D93 91EC
+E58D94 8BA6
+E58D97 93EC
+E58D98 9250
+E58D9A 948E
+E58D9C 966D
+E58D9E 99C4
+E58DA0 90E8
+E58DA6 8C54
+E58DA9 99C5
+E58DAE 99C6
+E58DAF 894B
+E58DB0 88F3
+E58DB1 8AEB
+E58DB2 FA8C
+E58DB3 91A6
+E58DB4 8B70
+E58DB5 9791
+E58DB7 99C9
+E58DB8 89B5
+E58DBB 99C8
+E58DBF 8BA8
+E58E82 99CA
+E58E84 96EF
+E58E93 FA8D
+E58E96 99CB
+E58E98 97D0
+E58E9A 8CFA
+E58E9F 8CB4
+E58EA0 99CC
+E58EA5 99CE
+E58EA6 99CD
+E58EA8 907E
+E58EA9 8958
+E58EAD 897D
+E58EAE 99CF
+E58EB0 99D0
+E58EB2 FA8E
+E58EB3 8CB5
+E58EB6 99D1
+E58EBB 8B8E
+E58F82 8E51
+E58F83 99D2
+E58F88 9694
+E58F89 8DB3
+E58F8A 8B79
+E58F8B 9746
+E58F8C 916F
+E58F8D 94BD
+E58F8E 8EFB
+E58F94 8F66
+E58F96 8EE6
+E58F97 8EF3
+E58F99 8F96
+E58F9B 94BE
+E58F9D FA8F
+E58F9F 99D5
+E58FA1 8962
+E58FA2 9170
+E58FA3 8CFB
+E58FA4 8CC3
+E58FA5 8BE5
+E58FA8 99D9
+E58FA9 9240
+E58FAA 91FC
+E58FAB 8BA9
+E58FAC 8FA2
+E58FAD 99DA
+E58FAE 99D8
+E58FAF 89C2
+E58FB0 91E4
+E58FB1 8EB6
+E58FB2 8E6A
+E58FB3 8945
+E58FB6 8A90
+E58FB7 8D86
+E58FB8 8E69
+E58FBA 99DB
+E59081 99DC
+E59083 8B68
+E59084 8A65
+E59088 8D87
+E59089 8B67
+E5908A 92DD
+E5908B 8944
+E5908C 93AF
+E5908D 96BC
+E5908E 8D40
+E5908F 9799
+E59090 9366
+E59091 8CFC
+E5909B 8C4E
+E5909D 99E5
+E5909F 8BE1
+E590A0 9669
+E590A6 94DB
+E590A9 99E4
+E590AB 8ADC
+E590AC 99DF
+E590AD 99E0
+E590AE 99E2
+E590B6 99E3
+E590B8 8B7A
+E590B9 9081
+E590BB 95AB
+E590BC 99E1
+E590BD 99DD
+E590BE 8CE1
+E59180 99DE
+E59182 9843
+E59186 95F0
+E59188 92E6
+E59189 8CE0
+E5918A 8D90
+E5918E 99E6
+E59191 93DB
+E5919F 99EA
+E591A8 8EFC
+E591AA 8EF4
+E591B0 99ED
+E591B1 99EB
+E591B3 96A1
+E591B5 99E8
+E591B6 99F1
+E591B7 99EC
+E591BB 99EF
+E591BC 8CC4
+E591BD 96BD
+E59280 99F0
+E59284 99F2
+E59286 99F4
+E5928A FA92
+E5928B 8DEE
+E5928C 9861
+E5928E 99E9
+E5928F 99E7
+E59290 99F3
+E59292 99EE
+E5929C FA91
+E592A2 99F6
+E592A4 9A42
+E592A5 99F8
+E592A8 99FC
+E592A9 FA93
+E592AB 9A40
+E592AC 99F9
+E592AF 9A5D
+E592B2 8DE7
+E592B3 8A50
+E592B8 99F7
+E592BC 9A44
+E592BD 88F4
+E592BE 9A43
+E59380 88A3
+E59381 9569
+E59382 9A41
+E59384 99FA
+E59387 99F5
+E59388 99FB
+E59389 8DC6
+E59398 9A45
+E593A1 88F5
+E593A2 9A4E
+E593A5 9A46
+E593A6 9A47
+E593A8 8FA3
+E593A9 9689
+E593AD 9A4C
+E593AE 9A4B
+E593B2 934E
+E593BA 9A4D
+E593BD 9A4A
+E593BF FA94
+E59484 8953
+E59486 8DB4
+E59487 904F
+E5948F 9A48
+E59490 9382
+E59494 9A49
+E59496 88A0
+E594AE 9A53
+E594AF 9742
+E594B1 8FA5
+E594B3 9A59
+E594B8 9A58
+E594B9 9A4F
+E594BE 91C1
+E59580 9A50
+E59584 91ED
+E59585 9A55
+E59586 8FA4
+E5958C 9A52
+E5958F 96E2
+E59593 8C5B
+E59596 9A56
+E59597 9A57
+E5959C 9A54
+E5959D 9A5A
+E595A3 9A51
+E595BB 9A60
+E595BC 9A65
+E595BE 9A61
+E59680 9A5C
+E59683 9A66
+E59684 9150
+E59686 FA95
+E59687 9A68
+E59689 8D41
+E5968A 9A5E
+E5968B 929D
+E59698 9A62
+E59699 9A5B
+E5969A 8AAB
+E5969C 8AEC
+E5969D 8A85
+E5969E 9A63
+E5969F 9A5F
+E596A7 8C96
+E596A8 9A69
+E596A9 9A67
+E596AA 9172
+E596AB 8B69
+E596AC 8BAA
+E596AE 9A64
+E596B0 8BF2
+E596B6 8963
+E59784 9A6D
+E59785 9A6B
+E59787 9AA5
+E59794 9A70
+E5979A 9A6A
+E5979C 9A6E
+E5979F 9A6C
+E597A3 8E6B
+E597A4 9A6F
+E597B7 9A72
+E597B9 9A77
+E597BD 9A75
+E597BE 9A74
+E59886 9251
+E59889 89C3
+E59894 9A71
+E59896 9A73
+E59897 8FA6
+E59898 8952
+E5989B 9A76
+E598A9 89DC
+E598AF 9A82
+E598B1 8FFA
+E598B2 9A7D
+E598B4 9A7B
+E598B6 9A7C
+E598B8 9A7E
+E59982 895C
+E5998C 9158
+E5998E 9A78
+E59990 9A79
+E5999B 8A9A
+E599A4 9A81
+E599A8 8AED
+E599AA 9A84
+E599AB 9A80
+E599AC 9A83
+E599B4 95AC
+E599B8 93D3
+E599BA 94B6
+E59A80 9A86
+E59A86 9A85
+E59A87 8A64
+E59A8A 9A87
+E59A8F 9A8A
+E59A94 9A89
+E59AA0 9A88
+E59AA2 9458
+E59AA5 9A8B
+E59AAE 9A8C
+E59AB4 9A8E
+E59AB6 9A8D
+E59ABC 9A90
+E59B80 9A93
+E59B81 9A91
+E59B82 9A8F
+E59B83 9A92
+E59B88 9A94
+E59B8E 9A95
+E59B91 9A96
+E59B93 9A97
+E59B97 9A98
+E59B98 9964
+E59B9A 8EFA
+E59B9B 8E6C
+E59B9E 89F1
+E59BA0 88F6
+E59BA3 9263
+E59BAE 9A99
+E59BB0 8DA2
+E59BB2 88CD
+E59BB3 907D
+E59BB9 9A9A
+E59BBA 8CC5
+E59BBD 8D91
+E59BBF 9A9C
+E59C80 9A9B
+E59C83 95DE
+E59C84 9A9D
+E59C88 9A9F
+E59C89 9A9E
+E59C8B 9AA0
+E59C8D 9AA1
+E59C8F 8C97
+E59C92 8980
+E59C93 9AA2
+E59C96 9AA4
+E59C98 9AA3
+E59C9C 9AA6
+E59C9F 9379
+E59CA6 9AA7
+E59CA7 88B3
+E59CA8 8DDD
+E59CAD 8C5C
+E59CB0 926E
+E59CB7 9AA8
+E59CB8 9AA9
+E59CBB 9AAB
+E59D80 9AAC
+E59D82 8DE2
+E59D87 8BCF
+E59D8A 9656
+E59D8E 9AAA
+E59D8F 9AAD
+E59D90 8DBF
+E59D91 8D42
+E59D99 FA96
+E59DA1 9AB1
+E59DA4 8DA3
+E59DA5 FA97
+E59DA6 9252
+E59DA9 9AAE
+E59DAA 92D8
+E59DBF 9AB2
+E59E82 9082
+E59E88 9AB0
+E59E89 9AB3
+E59E8B 8C5E
+E59E93 9AB4
+E59EA0 9AB5
+E59EA2 8D43
+E59EA3 8A5F
+E59EA4 9AB7
+E59EAA 9AB8
+E59EAC FA98
+E59EB0 9AB9
+E59EB3 9AB6
+E59F80 9AAF
+E59F83 9ABA
+E59F86 9ABB
+E59F87 FA9A
+E59F88 FA99
+E59F8B 9684
+E59F8E 8FE9
+E59F92 9ABD
+E59F93 9ABE
+E59F94 9ABC
+E59F96 9AC0
+E59F9C 9457
+E59F9F 88E6
+E59FA0 9575
+E59FA3 9AC1
+E59FB4 8FFB
+E59FB7 8EB7
+E59FB9 947C
+E59FBA 8AEE
+E59FBC 8DE9
+E5A080 9678
+E5A082 93B0
+E5A085 8C98
+E5A086 91CD
+E5A08A 9ABF
+E5A08B 9AC2
+E5A095 91C2
+E5A099 9AC3
+E5A09D 9AC4
+E5A0A1 9AC6
+E5A0A4 92E7
+E5A0AA 8AAC
+E5A0AF EA9F
+E5A0B0 8981
+E5A0B1 95F1
+E5A0B4 8FEA
+E5A0B5 9367
+E5A0BA 8DE4
+E5A0BD 9ACC
+E5A180 95BB
+E5A181 97DB
+E5A18A 89F2
+E5A18B 9AC8
+E5A191 9159
+E5A192 9ACB
+E5A194 9383
+E5A197 9368
+E5A198 9384
+E5A199 94B7
+E5A19A 92CB
+E5A19E 8DC7
+E5A1A2 9AC7
+E5A1A9 8996
+E5A1AB 9355
+E5A1B0 9AC9
+E5A1B2 9AC5
+E5A1B5 906F
+E5A1B9 9ACD
+E5A1BE 8F6D
+E5A283 8BAB
+E5A285 9ACE
+E5A293 95E6
+E5A297 919D
+E5A29C 92C4
+E5A29E FA9D
+E5A29F 9AD0
+E5A2A8 966E
+E5A2AB 9AD1
+E5A2AE 9AD6
+E5A2B2 FA9E
+E5A2B3 95AD
+E5A2B8 9AD5
+E5A2B9 9ACF
+E5A2BA 9AD2
+E5A2BB 9AD4
+E5A2BE 8DA4
+E5A381 95C7
+E5A385 9AD7
+E5A387 9264
+E5A38A 89F3
+E5A38C 8FEB
+E5A391 9AD9
+E5A393 9AD8
+E5A395 8D88
+E5A397 9ADA
+E5A398 9ADC
+E5A399 9ADB
+E5A39C 9ADE
+E5A39E 9AD3
+E5A39F 9AE0
+E5A3A4 9ADF
+E5A3A5 9ADD
+E5A3AB 8E6D
+E5A3AC 9070
+E5A3AE 9173
+E5A3AF 9AE1
+E5A3B0 90BA
+E5A3B1 88EB
+E5A3B2 9484
+E5A3B7 92D9
+E5A3B9 9AE3
+E5A3BA 9AE2
+E5A3BB 9AE4
+E5A3BC 9AE5
+E5A3BD 9AE6
+E5A482 9AE7
+E5A489 95CF
+E5A48A 9AE8
+E5A48B FA9F
+E5A48F 89C4
+E5A490 9AE9
+E5A495 975B
+E5A496 8A4F
+E5A498 99C7
+E5A499 8F67
+E5A49A 91BD
+E5A49B 9AEA
+E5A49C 96E9
+E5A4A2 96B2
+E5A4A5 9AEC
+E5A4A7 91E5
+E5A4A9 9356
+E5A4AA 91BE
+E5A4AB 9576
+E5A4AC 9AED
+E5A4AD 9AEE
+E5A4AE 899B
+E5A4B1 8EB8
+E5A4B2 9AEF
+E5A4B7 88CE
+E5A4B8 9AF0
+E5A4BE 9AF1
+E5A584 8982
+E5A587 8AEF
+E5A588 93DE
+E5A589 95F2
+E5A58E 9AF5
+E5A58F 9174
+E5A590 9AF4
+E5A591 8C5F
+E5A593 FAA0
+E5A594 967A
+E5A595 9AF3
+E5A597 9385
+E5A598 9AF7
+E5A59A 9AF6
+E5A59B FAA1
+E5A59D FAA2
+E5A5A0 9AF9
+E5A5A2 9AF8
+E5A5A3 FAA3
+E5A5A5 899C
+E5A5A7 9AFA
+E5A5A8 8FA7
+E5A5A9 9AFC
+E5A5AA 9244
+E5A5AC 9AFB
+E5A5AE 95B1
+E5A5B3 8F97
+E5A5B4 937A
+E5A5B8 9B40
+E5A5BD 8D44
+E5A681 9B41
+E5A682 9440
+E5A683 94DC
+E5A684 96CF
+E5A68A 9444
+E5A68D 9B4A
+E5A693 8B57
+E5A696 9764
+E5A699 96AD
+E5A69B 9BAA
+E5A69D 9B42
+E5A6A3 9B45
+E5A6A4 FAA4
+E5A6A5 91C3
+E5A6A8 9657
+E5A6AC 9369
+E5A6B2 9B46
+E5A6B9 9685
+E5A6BA FAA5
+E5A6BB 8DC8
+E5A6BE 8FA8
+E5A786 9B47
+E5A789 8E6F
+E5A78B 8E6E
+E5A790 88B7
+E5A791 8CC6
+E5A793 90A9
+E5A794 88CF
+E5A799 9B4B
+E5A79A 9B4C
+E5A79C 9B49
+E5A7A5 8957
+E5A7A6 8AAD
+E5A7A8 9B48
+E5A7AA 96C3
+E5A7AB 9550
+E5A7B6 88A6
+E5A7BB 88F7
+E5A7BF 8E70
+E5A881 88D0
+E5A883 88A1
+E5A889 9B51
+E5A891 9B4F
+E5A898 96BA
+E5A89A 9B52
+E5A89C 9B50
+E5A89F 9B4E
+E5A8A0 9050
+E5A8A5 9B4D
+E5A8A9 95D8
+E5A8AF 8CE2
+E5A8B5 9B56
+E5A8B6 9B57
+E5A8BC 8FA9
+E5A980 9B53
+E5A981 984B
+E5A986 946B
+E5A989 9B55
+E5A99A 8DA5
+E5A9A2 9B58
+E5A9A6 9577
+E5A9AA 9B59
+E5A9AC 9B54
+E5A9BF 96B9
+E5AA92 947D
+E5AA9A 9B5A
+E5AA9B 9551
+E5AABC 9B5B
+E5AABD 9B5F
+E5AABE 9B5C
+E5AB81 89C5
+E5AB82 9B5E
+E5AB89 8EB9
+E5AB8B 9B5D
+E5AB8C 8C99
+E5AB90 9B6B
+E5AB96 9B64
+E5AB97 9B61
+E5ABA1 9284
+E5ABA3 9B60
+E5ABA6 9B62
+E5ABA9 9B63
+E5ABBA 9B65
+E5ABBB 9B66
+E5AC89 8AF0
+E5AC8B 9B68
+E5AC8C 9B67
+E5AC96 9B69
+E5ACA2 8FEC
+E5ACAA 9B6C
+E5ACAC 92DA
+E5ACB0 8964
+E5ACB2 9B6A
+E5ACB6 9B6D
+E5ACBE 9B6E
+E5AD80 9B71
+E5AD83 9B6F
+E5AD85 9B70
+E5AD90 8E71
+E5AD91 9B72
+E5AD94 8D45
+E5AD95 9B73
+E5AD96 FAA6
+E5AD97 8E9A
+E5AD98 91B6
+E5AD9A 9B74
+E5AD9B 9B75
+E5AD9C 8E79
+E5AD9D 8D46
+E5AD9F 96D0
+E5ADA3 8B47
+E5ADA4 8CC7
+E5ADA5 9B76
+E5ADA6 8A77
+E5ADA9 9B77
+E5ADAB 91B7
+E5ADB0 9B78
+E5ADB1 9BA1
+E5ADB3 9B79
+E5ADB5 9B7A
+E5ADB8 9B7B
+E5ADBA 9B7D
+E5AE80 9B7E
+E5AE83 9B80
+E5AE85 91EE
+E5AE87 8946
+E5AE88 8EE7
+E5AE89 88C0
+E5AE8B 9176
+E5AE8C 8AAE
+E5AE8D 8EB3
+E5AE8F 8D47
+E5AE95 9386
+E5AE97 8F40
+E5AE98 8AAF
+E5AE99 9288
+E5AE9A 92E8
+E5AE9B 88B6
+E5AE9C 8B58
+E5AE9D 95F3
+E5AE9F 8EC0
+E5AEA2 8B71
+E5AEA3 90E9
+E5AEA4 8EBA
+E5AEA5 9747
+E5AEA6 9B81
+E5AEAE 8B7B
+E5AEB0 8DC9
+E5AEB3 8A51
+E5AEB4 8983
+E5AEB5 8FAA
+E5AEB6 89C6
+E5AEB8 9B82
+E5AEB9 9765
+E5AEBF 8F68
+E5AF80 FAA7
+E5AF82 8EE2
+E5AF83 9B83
+E5AF84 8AF1
+E5AF85 93D0
+E5AF86 96A7
+E5AF87 9B84
+E5AF89 9B85
+E5AF8C 9578
+E5AF90 9B87
+E5AF92 8AA6
+E5AF93 8BF5
+E5AF94 9B86
+E5AF98 FAA9
+E5AF9B 8AB0
+E5AF9D 9051
+E5AF9E 9B8B
+E5AF9F 8E40
+E5AFA1 89C7
+E5AFA2 9B8A
+E5AFA4 9B88
+E5AFA5 9B8C
+E5AFA6 9B89
+E5AFA7 944A
+E5AFA8 9ECB
+E5AFA9 9052
+E5AFAB 9B8D
+E5AFAC FAAA
+E5AFAE 97BE
+E5AFB0 9B8E
+E5AFB3 9B90
+E5AFB5 929E
+E5AFB6 9B8F
+E5AFB8 90A1
+E5AFBA 8E9B
+E5AFBE 91CE
+E5AFBF 8EF5
+E5B081 9595
+E5B082 90EA
+E5B084 8ECB
+E5B085 9B91
+E5B086 8FAB
+E5B087 9B92
+E5B088 9B93
+E5B089 88D1
+E5B08A 91B8
+E5B08B 9071
+E5B08D 9B94
+E5B08E 93B1
+E5B08F 8FAC
+E5B091 8FAD
+E5B093 9B95
+E5B096 90EB
+E5B09A 8FAE
+E5B09E FAAB
+E5B0A0 9B96
+E5B0A2 9B97
+E5B0A4 96DE
+E5B0A8 9B98
+E5B0AD 8BC4
+E5B0B1 8F41
+E5B0B8 9B99
+E5B0B9 9B9A
+E5B0BA 8EDA
+E5B0BB 904B
+E5B0BC 93F2
+E5B0BD 9073
+E5B0BE 94F6
+E5B0BF 9441
+E5B180 8BC7
+E5B181 9B9B
+E5B185 8B8F
+E5B186 9B9C
+E5B188 8BFC
+E5B18A 93CD
+E5B18B 89AE
+E5B18D 8E72
+E5B18E 9B9D
+E5B18F 9BA0
+E5B190 9B9F
+E5B191 8BFB
+E5B193 9B9E
+E5B195 9357
+E5B19E 91AE
+E5B1A0 936A
+E5B1A1 8EC6
+E5B1A4 9177
+E5B1A5 979A
+E5B1AC 9BA2
+E5B1AE 9BA3
+E5B1AF 93D4
+E5B1B1 8E52
+E5B1B6 9BA5
+E5B1B9 9BA6
+E5B28C 9BA7
+E5B290 8AF2
+E5B291 9BA8
+E5B294 9BA9
+E5B2A1 89AA
+E5B2A6 FAAC
+E5B2A8 915A
+E5B2A9 8AE2
+E5B2AB 9BAB
+E5B2AC 96A6
+E5B2B1 91D0
+E5B2B3 8A78
+E5B2B6 9BAD
+E5B2B7 9BAF
+E5B2B8 8ADD
+E5B2BA FAAD
+E5B2BB 9BAC
+E5B2BC 9BAE
+E5B2BE 9BB1
+E5B385 9BB0
+E5B387 9BB2
+E5B399 9BB3
+E5B3A0 93BB
+E5B3A1 8BAC
+E5B3A8 89E3
+E5B3A9 9BB4
+E5B3AA 9BB9
+E5B3AD 9BB7
+E5B3AF 95F5
+E5B3B0 95F4
+E5B3B5 FAAE
+E5B3B6 9387
+E5B3BA 9BB6
+E5B3BB 8F73
+E5B3BD 9BB5
+E5B487 9092
+E5B48B 9BBA
+E5B48E 8DE8
+E5B491 9BC0
+E5B494 9BC1
+E5B495 9BBB
+E5B496 8A52
+E5B497 9BBC
+E5B498 9BC5
+E5B499 9BC4
+E5B49A 9BC3
+E5B49B 9BBF
+E5B49F 9BBE
+E5B4A2 9BC2
+E5B4A7 FAAF
+E5B4A9 95F6
+E5B582 FAB2
+E5B58B 9BC9
+E5B58C 9BC6
+E5B58E 9BC8
+E5B590 9792
+E5B592 9BC7
+E5B593 FAB0
+E5B59C 9BBD
+E5B5A9 9093
+E5B5AC 9BCA
+E5B5AD FAB3
+E5B5AF 8DB5
+E5B5B3 9BCB
+E5B5B6 9BCC
+E5B682 9BCF
+E5B684 9BCE
+E5B687 9BCD
+E5B68B 9388
+E5B68C 9BB8
+E5B690 9BD5
+E5B69D 9BD1
+E5B6A2 9BD0
+E5B6AC 9BD2
+E5B6AE 9BD3
+E5B6B7 9BD6
+E5B6B8 FAB4
+E5B6B9 FAB5
+E5B6BA 97E4
+E5B6BC 9BD7
+E5B6BD 9BD4
+E5B789 9BD8
+E5B78C 8ADE
+E5B78D 9BD9
+E5B790 FAB6
+E5B792 9BDB
+E5B793 9BDA
+E5B796 9BDC
+E5B79B 9BDD
+E5B79D 90EC
+E5B79E 8F42
+E5B7A1 8F84
+E5B7A3 9183
+E5B7A5 8D48
+E5B7A6 8DB6
+E5B7A7 8D49
+E5B7A8 8B90
+E5B7AB 9BDE
+E5B7AE 8DB7
+E5B7B1 8CC8
+E5B7B2 9BDF
+E5B7B3 96A4
+E5B7B4 9462
+E5B7B5 9BE0
+E5B7B7 8D4A
+E5B7BB 8AAA
+E5B7BD 9246
+E5B7BE 8BD0
+E5B882 8E73
+E5B883 957A
+E5B886 94BF
+E5B88B 9BE1
+E5B88C 8AF3
+E5B891 9BE4
+E5B896 929F
+E5B899 9BE3
+E5B89A 9BE2
+E5B89B 9BE5
+E5B89D 92E9
+E5B8A5 9083
+E5B8AB 8E74
+E5B8AD 90C8
+E5B8AF 91D1
+E5B8B0 8B41
+E5B8B3 92A0
+E5B8B6 9BE6
+E5B8B7 9BE7
+E5B8B8 8FED
+E5B8BD 9658
+E5B980 9BEA
+E5B983 9BE9
+E5B984 9BE8
+E5B985 959D
+E5B987 9BF1
+E5B98C 9679
+E5B98E 9BEB
+E5B994 9BED
+E5B995 968B
+E5B997 9BEC
+E5B99F 9BEE
+E5B9A1 94A6
+E5B9A2 9BEF
+E5B9A3 95BC
+E5B9A4 9BF0
+E5B9B2 8AB1
+E5B9B3 95BD
+E5B9B4 944E
+E5B9B5 9BF2
+E5B9B6 9BF3
+E5B9B8 8D4B
+E5B9B9 8AB2
+E5B9BA 9BF4
+E5B9BB 8CB6
+E5B9BC 9763
+E5B9BD 9748
+E5B9BE 8AF4
+E5B9BF 9BF6
+E5BA81 92A1
+E5BA83 8D4C
+E5BA84 8FAF
+E5BA87 94DD
+E5BA8A 8FB0
+E5BA8F 8F98
+E5BA95 92EA
+E5BA96 95F7
+E5BA97 9358
+E5BA9A 8D4D
+E5BA9C 957B
+E5BAA0 9BF7
+E5BAA6 9378
+E5BAA7 8DC0
+E5BAAB 8CC9
+E5BAAD 92EB
+E5BAB5 88C1
+E5BAB6 8F8E
+E5BAB7 8D4E
+E5BAB8 9766
+E5BB81 9BF8
+E5BB82 9BF9
+E5BB83 9470
+E5BB88 9BFA
+E5BB89 97F5
+E5BB8A 984C
+E5BB8F 9BFC
+E5BB90 9BFB
+E5BB93 8A66
+E5BB96 9C40
+E5BB9A 9C43
+E5BB9B 9C44
+E5BB9D 9C42
+E5BB9F 955F
+E5BBA0 8FB1
+E5BBA1 9C46
+E5BBA2 9C45
+E5BBA3 9C41
+E5BBA8 9C47
+E5BBA9 9C48
+E5BBAC 9C49
+E5BBB0 9C4C
+E5BBB1 9C4A
+E5BBB3 9C4B
+E5BBB4 9C4D
+E5BBB6 8984
+E5BBB7 92EC
+E5BBB8 9C4E
+E5BBBA 8C9A
+E5BBBB 89F4
+E5BBBC 9455
+E5BBBE 9C4F
+E5BBBF 93F9
+E5BC81 95D9
+E5BC83 9C50
+E5BC84 984D
+E5BC89 9C51
+E5BC8A 95BE
+E5BC8B 9C54
+E5BC8C 989F
+E5BC8D 98AF
+E5BC8F 8EAE
+E5BC90 93F3
+E5BC91 9C55
+E5BC93 8B7C
+E5BC94 92A2
+E5BC95 88F8
+E5BC96 9C56
+E5BC97 95A4
+E5BC98 8D4F
+E5BC9B 926F
+E5BC9F 92ED
+E5BCA1 FAB7
+E5BCA5 96ED
+E5BCA6 8CB7
+E5BCA7 8CCA
+E5BCA9 9C57
+E5BCAD 9C58
+E5BCAF 9C5E
+E5BCB1 8EE3
+E5BCB4 FAB8
+E5BCB5 92A3
+E5BCB7 8BAD
+E5BCB8 9C59
+E5BCBC 954A
+E5BCBE 9265
+E5BD81 9C5A
+E5BD85 FA67
+E5BD88 9C5B
+E5BD8A 8BAE
+E5BD8C 9C5C
+E5BD8E 9C5D
+E5BD91 9C5F
+E5BD93 9396
+E5BD96 9C60
+E5BD97 9C61
+E5BD99 9C62
+E5BD9C 9C53
+E5BD9D 9C52
+E5BDA1 9C63
+E5BDA2 8C60
+E5BDA6 9546
+E5BDA7 FAB9
+E5BDA9 8DCA
+E5BDAA 9556
+E5BDAB 92A4
+E5BDAC 956A
+E5BDAD 9C64
+E5BDB0 8FB2
+E5BDB1 8965
+E5BDB3 9C65
+E5BDB7 9C66
+E5BDB9 96F0
+E5BDBC 94DE
+E5BDBF 9C69
+E5BE80 899D
+E5BE81 90AA
+E5BE82 9C68
+E5BE83 9C67
+E5BE84 8C61
+E5BE85 91D2
+E5BE87 9C6D
+E5BE88 9C6B
+E5BE8A 9C6A
+E5BE8B 97A5
+E5BE8C 8CE3
+E5BE90 8F99
+E5BE91 9C6C
+E5BE92 936B
+E5BE93 8F5D
+E5BE97 93BE
+E5BE98 9C70
+E5BE99 9C6F
+E5BE9E 9C6E
+E5BEA0 9C71
+E5BEA1 8CE4
+E5BEA8 9C72
+E5BEA9 959C
+E5BEAA 8F7A
+E5BEAD 9C73
+E5BEAE 94F7
+E5BEB3 93BF
+E5BEB4 92A5
+E5BEB7 FABA
+E5BEB9 934F
+E5BEBC 9C74
+E5BEBD 8B4A
+E5BF83 9053
+E5BF85 954B
+E5BF8C 8AF5
+E5BF8D 9445
+E5BF96 9C75
+E5BF97 8E75
+E5BF98 9659
+E5BF99 965A
+E5BF9C 899E
+E5BF9D 9C7A
+E5BF9E FABB
+E5BFA0 9289
+E5BFA4 9C77
+E5BFAB 89F5
+E5BFB0 9CAB
+E5BFB1 9C79
+E5BFB5 944F
+E5BFB8 9C78
+E5BFBB 9C76
+E5BFBD 8D9A
+E5BFBF 9C7C
+E6808E 9C83
+E6808F 9C89
+E68090 9C81
+E68092 937B
+E68095 9C86
+E68096 957C
+E68099 9C80
+E6809B 9C85
+E6809C 97E5
+E6809D 8E76
+E680A0 91D3
+E680A1 9C7D
+E680A5 8B7D
+E680A6 9C88
+E680A7 90AB
+E680A8 8985
+E680A9 9C82
+E680AA 89F6
+E680AB 9C87
+E680AF 8BAF
+E680B1 9C84
+E680BA 9C8A
+E68181 9C8C
+E68182 9C96
+E68183 9C94
+E68186 9C91
+E6818A 9C90
+E6818B 97F6
+E6818D 9C92
+E68190 8BB0
+E68192 8D50
+E68195 8F9A
+E68199 9C99
+E6819A 9C8B
+E6819D FABC
+E6819F 9C8F
+E681A0 9C7E
+E681A2 89F8
+E681A3 9C93
+E681A4 9C95
+E681A5 9270
+E681A8 8DA6
+E681A9 89B6
+E681AA 9C8D
+E681AB 9C98
+E681AC 9C97
+E681AD 8BB1
+E681AF 91A7
+E681B0 8A86
+E681B5 8C62
+E681B7 9C8E
+E68281 9C9A
+E68283 9C9D
+E68284 9C9F
+E68285 FABD
+E68289 8EBB
+E6828A FABE
+E6828B 9CA5
+E6828C 92EE
+E6828D 9C9B
+E68292 9CA3
+E68294 89F7
+E68296 9CA1
+E68297 9CA2
+E6829A 9C9E
+E6829B 9CA0
+E6829F 8CE5
+E682A0 9749
+E682A3 8AB3
+E682A6 8978
+E682A7 9CA4
+E682A9 9459
+E682AA 88AB
+E682B2 94DF
+E682B3 9C7B
+E682B4 9CAA
+E682B5 9CAE
+E682B6 96E3
+E682B8 9CA7
+E682BC 9389
+E682BD 9CAC
+E68385 8FEE
+E68386 9CAD
+E68387 93D5
+E68391 9866
+E68393 9CA9
+E68395 FAC0
+E68398 9CAF
+E6839A 8D9B
+E6839C 90C9
+E6839E FABF
+E6839F 88D2
+E683A0 9CA8
+E683A1 9CA6
+E683A3 9179
+E683A7 9C9C
+E683A8 8E53
+E683B0 91C4
+E683B1 9CBB
+E683B2 FAC2
+E683B3 917A
+E683B4 9CB6
+E683B6 9CB3
+E683B7 9CB4
+E683B9 8EE4
+E683BA 9CB7
+E683BB 9CBA
+E68480 9CB5
+E68481 8F44
+E68483 9CB8
+E68486 9CB2
+E68488 96FA
+E68489 96F9
+E6848D 9CBC
+E6848E 9CBD
+E6848F 88D3
+E68491 FAC3
+E68495 9CB1
+E6849A 8BF0
+E6849B 88A4
+E6849F 8AB4
+E684A0 FAC1
+E684A1 9CB9
+E684A7 9CC1
+E684A8 9CC0
+E684AC 9CC5
+E684B0 FAC5
+E684B4 9CC6
+E684B7 FAC4
+E684BC 9CC4
+E684BD 9CC7
+E684BE 9CBF
+E684BF 9CC3
+E68582 9CC8
+E68584 9CC9
+E68587 9CBE
+E68588 8E9C
+E6858A 9CC2
+E6858B 91D4
+E6858C 8D51
+E6858D 9CB0
+E6858E 9054
+E68593 9CD6
+E68595 95E7
+E68598 9CCC
+E68599 9CCD
+E6859A 9CCE
+E6859D 9CD5
+E6859F 9CD4
+E685A2 969D
+E685A3 8AB5
+E685A5 9CD2
+E685A7 8C64
+E685A8 8A53
+E685AB 9CCF
+E685AE 97B6
+E685AF 9CD1
+E685B0 88D4
+E685B1 9CD3
+E685B3 9CCA
+E685B4 9CD0
+E685B5 9CD7
+E685B6 8C63
+E685B7 9CCB
+E685BE 977C
+E68682 974A
+E68687 9CDA
+E6868A 9CDE
+E6868E 919E
+E68690 97F7
+E68691 9CDF
+E68694 9CDC
+E68696 9CD9
+E68698 FAC6
+E68699 9CD8
+E6869A 9CDD
+E686A4 95AE
+E686A7 93B2
+E686A9 8C65
+E686AB 9CE0
+E686AC 9CDB
+E686AE 9CE1
+E686B2 8C9B
+E686B6 89AF
+E686BA 9CE9
+E686BE 8AB6
+E68783 9CE7
+E68786 9CE8
+E68787 8DA7
+E68788 9CE6
+E68789 9CE4
+E6878A 9CE3
+E6878B 9CEA
+E6878C 9CE2
+E6878D 9CEC
+E68790 89F9
+E687A3 9CEE
+E687A6 9CED
+E687B2 92A6
+E687B4 9CF1
+E687B6 9CEF
+E687B7 9CE5
+E687B8 8C9C
+E687BA 9CF0
+E687BC 9CF4
+E687BD 9CF3
+E687BE 9CF5
+E687BF 9CF2
+E68880 9CF6
+E68888 9CF7
+E68889 9CF8
+E6888A 95E8
+E6888C 9CFA
+E6888D 9CF9
+E6888E 8F5E
+E68890 90AC
+E68891 89E4
+E68892 89FA
+E68893 FAC7
+E68894 9CFB
+E68896 88BD
+E6889A 90CA
+E6889B 9CFC
+E6889D E6C1
+E6889E 9D40
+E6889F 8C81
+E688A1 9D41
+E688A6 90ED
+E688AA 9D42
+E688AE 9D43
+E688AF 8B59
+E688B0 9D44
+E688B2 9D45
+E688B3 9D46
+E688B4 91D5
+E688B8 8CCB
+E688BB 96DF
+E688BF 965B
+E68980 8F8A
+E68981 9D47
+E68987 90EE
+E68988 E7BB
+E68989 94E0
+E6898B 8EE8
+E6898D 8DCB
+E6898E 9D48
+E68993 91C5
+E68995 95A5
+E68998 91EF
+E6899B 9D4B
+E6899E 9D49
+E689A0 9D4C
+E689A3 9D4A
+E689A8 9D4D
+E689AE 95AF
+E689B1 88B5
+E689B6 957D
+E689B9 94E1
+E689BC 9D4E
+E689BE 9D51
+E689BF 8FB3
+E68A80 8B5A
+E68A82 9D4F
+E68A83 9D56
+E68A84 8FB4
+E68A89 9D50
+E68A8A 9463
+E68A91 977D
+E68A92 9D52
+E68A93 9D53
+E68A94 9D57
+E68A95 938A
+E68A96 9D54
+E68A97 8D52
+E68A98 90DC
+E68A9B 9D65
+E68A9C 94B2
+E68A9E 91F0
+E68AA6 FAC8
+E68AAB 94E2
+E68AAC 9DAB
+E68AB1 95F8
+E68AB5 92EF
+E68AB9 9695
+E68ABB 9D5A
+E68ABC 899F
+E68ABD 928A
+E68B82 9D63
+E68B85 9253
+E68B86 9D5D
+E68B87 9D64
+E68B88 9D5F
+E68B89 9D66
+E68B8A 9D62
+E68B8C 9D61
+E68B8D 948F
+E68B8F 9D5B
+E68B90 89FB
+E68B91 9D59
+E68B92 8B91
+E68B93 91F1
+E68B94 9D55
+E68B97 9D58
+E68B98 8D53
+E68B99 90D9
+E68B9B 8FB5
+E68B9C 9D60
+E68B9D 9471
+E68BA0 8B92
+E68BA1 8A67
+E68BAC 8A87
+E68BAD 9040
+E68BAE 9D68
+E68BAF 9D6D
+E68BB1 9D69
+E68BB3 8C9D
+E68BB5 9D6E
+E68BB6 8E41
+E68BB7 8D89
+E68BBE 8F45
+E68BBF 9D5C
+E68C81 8E9D
+E68C82 9D6B
+E68C87 8E77
+E68C88 9D6C
+E68C89 88C2
+E68C8C 9D67
+E68C91 92A7
+E68C99 8B93
+E68C9F 8BB2
+E68CA7 9D6A
+E68CA8 88A5
+E68CAB 8DC1
+E68CAF 9055
+E68CBA 92F0
+E68CBD 94D2
+E68CBE 9D70
+E68CBF 917D
+E68D89 91A8
+E68D8C 8E4A
+E68D8D 9D71
+E68D8F 9D73
+E68D90 9D6F
+E68D95 95DF
+E68D97 92BB
+E68D9C 917B
+E68DA7 95F9
+E68DA8 8ECC
+E68DA9 9D80
+E68DAB 9D7E
+E68DAE 9098
+E68DB2 8C9E
+E68DB6 9D78
+E68DB7 8FB7
+E68DBA 93E6
+E68DBB 9450
+E68E80 9D76
+E68E83 917C
+E68E88 8EF6
+E68E89 9D7B
+E68E8C 8FB6
+E68E8E 9D75
+E68E8F 9D7A
+E68E92 9472
+E68E96 9D74
+E68E98 8C40
+E68E9B 8A7C
+E68E9F 9D7C
+E68EA0 97A9
+E68EA1 8DCC
+E68EA2 9254
+E68EA3 9D79
+E68EA5 90DA
+E68EA7 8D54
+E68EA8 9084
+E68EA9 8986
+E68EAA 915B
+E68EAB 9D77
+E68EAC 8B64
+E68EB2 8C66
+E68EB4 92CD
+E68EB5 9D7D
+E68EBB 917E
+E68EBE 9D81
+E68F80 9D83
+E68F83 91B5
+E68F84 9D89
+E68F86 9D84
+E68F89 9D86
+E68F8F 9560
+E68F90 92F1
+E68F92 9D87
+E68F96 974B
+E68F9A 9767
+E68F9B 8AB7
+E68FA1 88AC
+E68FA3 9D85
+E68FA9 9D82
+E68FAE 8AF6
+E68FB4 8987
+E68FB5 FAC9
+E68FB6 9D88
+E68FBA 9768
+E69086 9D8C
+E6908D 91B9
+E6908F 9D93
+E69093 9D8D
+E69096 9D8A
+E69097 9D91
+E6909C 9D72
+E690A6 9D8E
+E690A8 9D92
+E690AC 94C0
+E690AD 938B
+E690B4 9D8B
+E690B6 9D8F
+E690BA 8C67
+E690BE 8DEF
+E69182 90DB
+E6918E 9D97
+E69198 9345
+E691A0 FACA
+E691A7 9D94
+E691A9 9680
+E691AF 9D95
+E691B6 9D96
+E691B8 96CC
+E691BA 90A0
+E69283 8C82
+E69288 9D9D
+E69292 8E54
+E69293 9D9A
+E69295 9D99
+E6929A 9451
+E6929D FACB
+E6929E 93B3
+E692A4 9350
+E692A5 9D9B
+E692A9 9D9C
+E692AB 958F
+E692AD 9464
+E692AE 8E42
+E692B0 90EF
+E692B2 966F
+E692B9 8A68
+E692BB 9DA3
+E692BC 9D9E
+E69381 9769
+E69382 9DA5
+E69385 9DA1
+E69387 9DA2
+E6938D 9180
+E6938E FACC
+E69392 9DA0
+E69394 9D5E
+E69398 9DA4
+E6939A 9D9F
+E693A0 9DA9
+E693A1 9DAA
+E693A2 9346
+E693A3 9DAC
+E693A6 8E43
+E693A7 9DA7
+E693AC 8B5B
+E693AF 9DAD
+E693B1 9DA6
+E693B2 9DB1
+E693B4 9DB0
+E693B6 9DAF
+E693BA 9DB2
+E693BD 9DB4
+E693BE 8FEF
+E69480 9DB3
+E69485 9DB7
+E69498 9DB5
+E6949C 9DB6
+E6949D 9D90
+E694A3 9DB9
+E694A4 9DB8
+E694AA 9D98
+E694AB 9DBA
+E694AC 9DAE
+E694AF 8E78
+E694B4 9DBB
+E694B5 9DBC
+E694B6 9DBE
+E694B7 9DBD
+E694B8 9DBF
+E694B9 89FC
+E694BB 8D55
+E694BE 95FA
+E694BF 90AD
+E69585 8CCC
+E69588 9DC1
+E6958D 9DC4
+E6958E FACD
+E6958F 9571
+E69591 8B7E
+E69595 9DC3
+E69596 9DC2
+E69597 9473
+E69598 9DC5
+E69599 8BB3
+E6959D 9DC7
+E6959E 9DC6
+E695A2 8AB8
+E695A3 8E55
+E695A6 93D6
+E695AC 8C68
+E695B0 9094
+E695B2 9DC8
+E695B4 90AE
+E695B5 9347
+E695B7 957E
+E695B8 9DC9
+E69682 9DCA
+E69683 9DCB
+E69687 95B6
+E69688 9B7C
+E69689 90C4
+E6968C 956B
+E6968E 8DD6
+E69690 94E3
+E69691 94C1
+E69697 936C
+E69699 97BF
+E6969B 9DCD
+E6969C 8ECE
+E6969F 9DCE
+E696A1 88B4
+E696A4 8BD2
+E696A5 90CB
+E696A7 9580
+E696AB 9DCF
+E696AC 8E61
+E696AD 9266
+E696AF 8E7A
+E696B0 9056
+E696B7 9DD0
+E696B9 95FB
+E696BC 8997
+E696BD 8E7B
+E69781 9DD3
+E69783 9DD1
+E69784 9DD4
+E69785 97B7
+E69786 9DD2
+E6978B 90F9
+E6978C 9DD5
+E6978F 91B0
+E69792 9DD6
+E69797 8AF8
+E69799 9DD8
+E6979B 9DD7
+E697A0 9DD9
+E697A1 9DDA
+E697A2 8AF9
+E697A5 93FA
+E697A6 9255
+E697A7 8B8C
+E697A8 8E7C
+E697A9 9181
+E697AC 8F7B
+E697AD 88AE
+E697B1 9DDB
+E697BA 89A0
+E697BB 9DDF
+E69880 FACE
+E69882 8D56
+E69883 9DDE
+E69886 8DA9
+E69887 8FB8
+E69889 FAD1
+E6988A 9DDD
+E6988C 8FB9
+E6988E 96BE
+E6988F 8DA8
+E69893 88D5
+E69894 90CC
+E69895 FACF
+E6989C 9DE4
+E6989E FAD3
+E6989F 90AF
+E698A0 8966
+E698A4 FAD4
+E698A5 8F74
+E698A7 9686
+E698A8 8DF0
+E698AD 8FBA
+E698AE FAD2
+E698AF 90A5
+E698B1 FA63
+E698B4 9DE3
+E698B5 9DE1
+E698B6 9DE2
+E698BB FAD0
+E698BC 928B
+E698BF 9E45
+E69981 9DE8
+E69982 8E9E
+E69983 8D57
+E69984 9DE6
+E69989 9DE7
+E6998B 9057
+E6998F 9DE5
+E69992 8E4E
+E69997 FAD6
+E69999 FAD7
+E6999D 9DEA
+E6999E 9DE9
+E6999F 9DEE
+E699A1 FAD7
+E699A2 9DEF
+E699A4 9DEB
+E699A5 FAD5
+E699A6 8A41
+E699A7 9DEC
+E699A8 9DED
+E699A9 94D3
+E699AE 9581
+E699AF 8C69
+E699B0 9DF0
+E699B3 FAD9
+E699B4 90B0
+E699B6 8FBB
+E699BA 9271
+E69A81 8BC5
+E69A83 9DF1
+E69A84 9DF5
+E69A87 89C9
+E69A88 9DF2
+E69A89 9DF4
+E69A8E 9DF3
+E69A91 8F8B
+E69A96 9267
+E69A97 88C3
+E69A98 9DF6
+E69A99 FADA
+E69A9D 9DF7
+E69AA0 FADB
+E69AA2 92A8
+E69AA6 97EF
+E69AAB 8E62
+E69AAE 95E9
+E69AB2 FADC
+E69AB4 965C
+E69AB8 9E41
+E69AB9 9DF9
+E69ABC 9DFC
+E69ABE 9DFB
+E69ABF FADD
+E69B81 9DF8
+E69B84 9E40
+E69B87 93DC
+E69B89 9DFA
+E69B96 9E42
+E69B99 8F8C
+E69B9A 9E43
+E69B9C 976A
+E69B9D 9498
+E69BA0 9E44
+E69BA6 9E46
+E69BA9 9E47
+E69BB0 9E48
+E69BB2 8BC8
+E69BB3 8967
+E69BB4 8D58
+E69BB5 9E49
+E69BB7 9E4A
+E69BB8 8F91
+E69BB9 9182
+E69BBA FADE
+E69BBB FA66
+E69BBC 99D6
+E69BBD 915D
+E69BBE 915C
+E69BBF 91D6
+E69C80 8DC5
+E69C83 98F0
+E69C88 8C8E
+E69C89 974C
+E69C8B 95FC
+E69C8D 959E
+E69C8E FADF
+E69C8F 9E4B
+E69C94 8DF1
+E69C95 92BD
+E69C96 9E4C
+E69C97 984E
+E69C9B 965D
+E69C9D 92A9
+E69C9E 9E4D
+E69C9F 8AFA
+E69CA6 9E4E
+E69CA7 9E4F
+E69CA8 96D8
+E69CAA 96A2
+E69CAB 9696
+E69CAC 967B
+E69CAD 8E44
+E69CAE 9E51
+E69CB1 8EE9
+E69CB4 9670
+E69CB6 9E53
+E69CB7 9E56
+E69CB8 9E55
+E69CBA 8AF7
+E69CBD 8B80
+E69CBF 9E52
+E69D81 9E54
+E69D86 9E57
+E69D89 9099
+E69D8E 979B
+E69D8F 88C7
+E69D90 8DDE
+E69D91 91BA
+E69D93 8EDB
+E69D96 8FF1
+E69D99 9E5A
+E69D9C 936D
+E69D9E 9E58
+E69D9F 91A9
+E69DA0 9E59
+E69DA1 8FF0
+E69DA2 96DB
+E69DA3 9E5B
+E69DA4 9E5C
+E69DA5 9788
+E69DA6 FAE1
+E69DAA 9E61
+E69DAD 8D59
+E69DAF 9474
+E69DB0 9E5E
+E69DB1 938C
+E69DB2 9DDC
+E69DB3 9DE0
+E69DB5 8B6E
+E69DB7 9466
+E69DBC 9E60
+E69DBE 8FBC
+E69DBF 94C2
+E69E85 9E66
+E69E87 94F8
+E69E89 9E5D
+E69E8B 9E63
+E69E8C 9E62
+E69E90 90CD
+E69E95 968D
+E69E97 97D1
+E69E9A 9687
+E69E9C 89CA
+E69E9D 8E7D
+E69EA0 9867
+E69EA1 9E65
+E69EA2 9095
+E69EA6 9E64
+E69EA9 9E5F
+E69EAF 8CCD
+E69EB3 9E6B
+E69EB4 9E69
+E69EB6 89CB
+E69EB7 9E67
+E69EB8 9E6D
+E69EB9 9E73
+E69EBB FAE2
+E69F80 FAE4
+E69F81 91C6
+E69F84 95BF
+E69F86 9E75
+E69F8A 9541
+E69F8E 9E74
+E69F8F 9490
+E69F90 965E
+E69F91 8AB9
+E69F93 90F5
+E69F94 8F5F
+E69F98 92D1
+E69F9A 974D
+E69F9D 9E70
+E69F9E 9E6F
+E69FA2 9E71
+E69FA4 9E6E
+E69FA7 9E76
+E69FA9 9E6C
+E69FAC 9E6A
+E69FAE 9E72
+E69FAF 9E68
+E69FB1 928C
+E69FB3 96F6
+E69FB4 8EC4
+E69FB5 8DF2
+E69FBB 8DB8
+E69FBE 968F
+E69FBF 8A60
+E6A081 FAE5
+E6A082 92CC
+E6A083 93C8
+E6A084 8968
+E6A093 90F0
+E6A096 90B2
+E6A097 8C49
+E6A09E 9E78
+E6A0A1 8D5A
+E6A0A2 8A9C
+E6A0A9 9E7A
+E6A0AA 8A94
+E6A0AB 9E81
+E6A0B2 9E7D
+E6A0B4 90F1
+E6A0B8 8A6A
+E6A0B9 8DAA
+E6A0BC 8A69
+E6A0BD 8DCD
+E6A180 9E7B
+E6A181 8C85
+E6A182 8C6A
+E6A183 938D
+E6A184 FAE6
+E6A186 9E79
+E6A188 88C4
+E6A18D 9E7C
+E6A18E 9E7E
+E6A190 8BCB
+E6A191 8C4B
+E6A192 FAE3
+E6A193 8ABA
+E6A194 8B6A
+E6A199 9E82
+E6A19C 8DF7
+E6A19D 9691
+E6A19F 8E56
+E6A1A3 9E83
+E6A1A7 954F
+E6A1B4 9E8F
+E6A1B6 89B1
+E6A1B7 9E84
+E6A1BE 9E95
+E6A1BF 9E85
+E6A281 97C0
+E6A283 9E8C
+E6A285 947E
+E6A28D 9E94
+E6A28F 9E87
+E6A293 88B2
+E6A294 9E89
+E6A297 8D5B
+E6A29B 9E8B
+E6A29D 9E8A
+E6A29F 9E86
+E6A2A0 9E91
+E6A2A2 8FBD
+E6A2A6 9AEB
+E6A2A7 8CE6
+E6A2A8 979C
+E6A2AD 9E88
+E6A2AF 92F2
+E6A2B0 8A42
+E6A2B1 8DAB
+E6A2B3 9E80
+E6A2B5 9E90
+E6A2B6 8A81
+E6A2B9 9E8E
+E6A2BA 9E92
+E6A2BC 938E
+E6A384 8AFC
+E6A386 9EB0
+E6A388 FA64
+E6A389 96C7
+E6A38A 9E97
+E6A38B 8AFB
+E6A38D 9E9E
+E6A38F FAE7
+E6A392 965F
+E6A394 9E9F
+E6A395 9EA1
+E6A397 9EA5
+E6A398 9E99
+E6A39A 9249
+E6A39F 938F
+E6A3A0 9EA9
+E6A3A1 9E9C
+E6A3A3 9EA6
+E6A3A7 9EA0
+E6A3AE 9058
+E6A3AF 9EAA
+E6A3B2 90B1
+E6A3B9 9EA8
+E6A3BA 8ABB
+E6A480 986F
+E6A481 9E96
+E6A484 9EA4
+E6A485 88D6
+E6A488 9E98
+E6A48B 96B8
+E6A48C 9E9D
+E6A48D 9041
+E6A48E 92C5
+E6A48F 9E93
+E6A492 9EA3
+E6A499 909A
+E6A49A 9EAD
+E6A49B 8A91
+E6A49C 8C9F
+E6A4A1 9EAF
+E6A4A2 9E9A
+E6A4A3 9EAE
+E6A4A5 9EA7
+E6A4A6 9E9B
+E6A4A8 9EAB
+E6A4AA 9EAC
+E6A4B0 9EBD
+E6A4B4 93CC
+E6A4B6 9EA2
+E6A4B9 9EB9
+E6A4BD 9EBB
+E6A4BF 92D6
+E6A58A 976B
+E6A593 9596
+E6A594 9EB6
+E6A595 91C8
+E6A599 9EBC
+E6A59A 915E
+E6A59C 9EB3
+E6A59D 9EC0
+E6A59E 9EBF
+E6A5A0 93ED
+E6A5A1 9EBE
+E6A5A2 93E8
+E6A5A8 FAE9
+E6A5AA 9EC2
+E6A5AB 9EB5
+E6A5AD 8BC6
+E6A5AE 9EB8
+E6A5AF 8F7C
+E6A5B3 9480
+E6A5B4 9EBA
+E6A5B5 8BC9
+E6A5B7 9EB2
+E6A5B8 9EB4
+E6A5B9 9EB1
+E6A5BC 984F
+E6A5BD 8A79
+E6A5BE 9EB7
+E6A681 9EC1
+E6A682 8A54
+E6A68A 8DE5
+E6A68E 897C
+E6A691 9ED2
+E6A694 9850
+E6A695 9ED5
+E6A698 FAEB
+E6A69B 9059
+E6A69C 9ED4
+E6A6A0 9ED3
+E6A6A7 9ED0
+E6A6AE 9EC4
+E6A6B1 9EE1
+E6A6B2 9EC3
+E6A6B4 9ED6
+E6A6BB 9ECE
+E6A6BE 9EC9
+E6A6BF 9EC6
+E6A781 9EC7
+E6A783 9ECF
+E6A787 EAA0
+E6A78A 9ECC
+E6A78B 8D5C
+E6A78C 92C6
+E6A78D 9184
+E6A78E 9ECA
+E6A790 9EC5
+E6A793 9EC8
+E6A798 976C
+E6A799 968A
+E6A79D 9ECD
+E6A79E 9ED7
+E6A7A2 FAEC
+E6A7A7 9EDF
+E6A7A8 9ED8
+E6A7AB 9EE5
+E6A7AD 9EE3
+E6A7B2 9EDE
+E6A7B9 9EDD
+E6A7BB 92CE
+E6A7BD 9185
+E6A7BF 9EDB
+E6A882 9ED9
+E6A885 9EE0
+E6A88A 9EE6
+E6A88B 94F3
+E6A88C 9EEC
+E6A892 9EE7
+E6A893 9EEA
+E6A894 9EE4
+E6A897 9294
+E6A899 9557
+E6A89B 9EDA
+E6A89E 9EE2
+E6A89F 8FBE
+E6A8A1 96CD
+E6A8A2 9EF6
+E6A8A3 9EE9
+E6A8A9 8CA0
+E6A8AA 89A1
+E6A8AB 8A7E
+E6A8AE 9ED1
+E6A8B0 FAED
+E6A8B5 8FBF
+E6A8B6 9EEE
+E6A8B8 9EF5
+E6A8B9 8EF7
+E6A8BA 8A92
+E6A8BD 924D
+E6A984 9EEB
+E6A986 FAEF
+E6A987 9EF0
+E6A988 9EF4
+E6A98B 8BB4
+E6A998 8B6B
+E6A999 9EF2
+E6A99F 8B40
+E6A9A1 93C9
+E6A9A2 9EF1
+E6A9A6 9EF3
+E6A9AB FAEE
+E6A9B2 9EED
+E6A9B3 FAF0
+E6A9B8 9EEF
+E6A9BE FAF1
+E6A9BF 8A80
+E6AA80 9268
+E6AA84 9EFA
+E6AA8D 9EF8
+E6AA8E 8CE7
+E6AA90 9EF7
+E6AA97 9F40
+E6AA9C 9E77
+E6AAA0 9EF9
+E6AAA2 9EFB
+E6AAA3 9EFC
+E6AAAA 9F4B
+E6AAAC 9F47
+E6AAAE 9E8D
+E6AAB3 9F46
+E6AAB8 9F45
+E6AABB 9F42
+E6AB81 9EE8
+E6AB82 9F44
+E6AB83 9F43
+E6AB91 9F49
+E6AB93 9845
+E6AB9A 9F4C
+E6AB9B 8BF9
+E6AB9E 9F48
+E6AB9F 9F4A
+E6ABA2 FAF2
+E6ABA4 FAF3
+E6ABA8 94A5
+E6ABAA 9F4D
+E6ABBA 9F51
+E6ABBB 9F4E
+E6AC84 9793
+E6AC85 9F4F
+E6AC8A 9EDC
+E6AC92 9F52
+E6AC96 9F53
+E6AC9D 8954
+E6AC9F 9F55
+E6ACA0 8C87
+E6ACA1 8E9F
+E6ACA3 8BD3
+E6ACA7 89A2
+E6ACB2 977E
+E6ACB7 9F57
+E6ACB8 9F56
+E6ACB9 9F59
+E6ACBA 8B5C
+E6ACBD 8BD4
+E6ACBE 8ABC
+E6AD83 9F5C
+E6AD87 9F5B
+E6AD89 9F5D
+E6AD8C 89CC
+E6AD8E 9256
+E6AD90 9F5E
+E6AD93 8ABD
+E6AD94 9F60
+E6AD99 9F5F
+E6AD9B 9F61
+E6AD9F 9F62
+E6ADA1 9F63
+E6ADA2 8E7E
+E6ADA3 90B3
+E6ADA4 8D9F
+E6ADA6 9590
+E6ADA9 95E0
+E6ADAA 9863
+E6ADAF 8E95
+E6ADB3 8DCE
+E6ADB4 97F0
+E6ADB8 9F64
+E6ADB9 9F65
+E6ADBB 8E80
+E6ADBF 9F66
+E6AE80 9F67
+E6AE83 9F69
+E6AE84 9F68
+E6AE86 9677
+E6AE89 8F7D
+E6AE8A 8EEA
+E6AE8B 8E63
+E6AE8D 9F6A
+E6AE95 9F6C
+E6AE96 9042
+E6AE98 9F6B
+E6AE9E 9F6D
+E6AEA4 9F6E
+E6AEAA 9F6F
+E6AEAB 9F70
+E6AEAF 9F71
+E6AEB1 9F73
+E6AEB2 9F72
+E6AEB3 9F74
+E6AEB4 89A3
+E6AEB5 9269
+E6AEB7 9F75
+E6AEBA 8E45
+E6AEBB 8A6B
+E6AEBC 9F76
+E6AEBF 9361
+E6AF80 9ACA
+E6AF85 8B42
+E6AF86 9F77
+E6AF8B 9F78
+E6AF8D 95EA
+E6AF8E 9688
+E6AF92 93C5
+E6AF93 9F79
+E6AF94 94E4
+E6AF96 FAF4
+E6AF98 94F9
+E6AF9B 96D1
+E6AF9F 9F7A
+E6AFAB 9F7C
+E6AFAC 9F7B
+E6AFAF 9F7E
+E6AFB3 9F7D
+E6B088 9F81
+E6B08F 8E81
+E6B091 96AF
+E6B093 9F82
+E6B094 9F83
+E6B097 8B43
+E6B09B 9F84
+E6B0A3 9F86
+E6B0A4 9F85
+E6B0B4 9085
+E6B0B7 9558
+E6B0B8 8969
+E6B0BE 94C3
+E6B0BF FAF5
+E6B180 92F3
+E6B181 8F60
+E6B182 8B81
+E6B18E 94C4
+E6B190 8EAC
+E6B195 9F88
+E6B197 8ABE
+E6B19A 8998
+E6B19C FAF6
+E6B19D 93F0
+E6B19E 9F87
+E6B19F 8D5D
+E6B1A0 9272
+E6B1A2 9F89
+E6B1A8 9F91
+E6B1AA 9F8A
+E6B1AF FAF8
+E6B1B0 91BF
+E6B1B2 8B82
+E6B1B3 9F92
+E6B1BA 8C88
+E6B1BD 8B44
+E6B1BE 9F90
+E6B281 9F8E
+E6B282 9F8B
+E6B283 9780
+E6B286 FAF7
+E6B288 92BE
+E6B28C 93D7
+E6B28D 9F8C
+E6B290 9F94
+E6B292 9F93
+E6B293 8C42
+E6B296 89AB
+E6B299 8DB9
+E6B29A 9F8D
+E6B29B 9F8F
+E6B2A1 9676
+E6B2A2 91F2
+E6B2AB 9697
+E6B2AE 9F9C
+E6B2B1 9F9D
+E6B2B3 89CD
+E6B2B8 95A6
+E6B2B9 96FB
+E6B2BA 9F9F
+E6B2BB 8EA1
+E6B2BC 8FC0
+E6B2BD 9F98
+E6B2BE 9F9E
+E6B2BF 8988
+E6B381 8BB5
+E6B384 9F95
+E6B385 9F9A
+E6B389 90F2
+E6B38A 9491
+E6B38C 94E5
+E6B393 9F97
+E6B395 9640
+E6B397 9F99
+E6B399 9FA2
+E6B39A FAF9
+E6B39B 9FA0
+E6B39D 9F9B
+E6B3A1 9641
+E6B3A2 9467
+E6B3A3 8B83
+E6B3A5 9344
+E6B3A8 928D
+E6B3AA 9FA3
+E6B3AF 9FA1
+E6B3B0 91D7
+E6B3B1 9F96
+E6B3B3 896A
+E6B484 FAFA
+E6B48B 976D
+E6B48C 9FAE
+E6B492 9FAD
+E6B497 90F4
+E6B499 9FAA
+E6B49B 978C
+E6B49E 93B4
+E6B49F 9FA4
+E6B4A5 92C3
+E6B4A9 896B
+E6B4AA 8D5E
+E6B4AB 9FA7
+E6B4B2 8F46
+E6B4B3 9FAC
+E6B4B5 9FAB
+E6B4B6 9FA6
+E6B4B8 9FA9
+E6B4BB 8A88
+E6B4BD 9FA8
+E6B4BE 9468
+E6B581 97AC
+E6B584 8FF2
+E6B585 90F3
+E6B599 9FB4
+E6B59A 9FB2
+E6B59C 956C
+E6B5A3 9FAF
+E6B5A4 9FB1
+E6B5A6 8959
+E6B5A9 8D5F
+E6B5AA 9851
+E6B5AC 8A5C
+E6B5AE 9582
+E6B5AF FAFC
+E6B5B4 9781
+E6B5B7 8A43
+E6B5B8 905A
+E6B5B9 9FB3
+E6B685 9FB8
+E6B687 FAFB
+E6B688 8FC1
+E6B68C 974F
+E6B68E 9FB5
+E6B693 9FB0
+E6B695 9FB6
+E6B696 FB40
+E6B699 97DC
+E6B69B 9393
+E6B69C 93C0
+E6B6AC FB41
+E6B6AF 8A55
+E6B6B2 8974
+E6B6B5 9FBC
+E6B6B8 9FBF
+E6B6BC 97C1
+E6B780 9784
+E6B785 9FC6
+E6B786 9FC0
+E6B787 9FBD
+E6B78B 97D2
+E6B78C 9FC3
+E6B78F FB42
+E6B791 8F69
+E6B792 9FC5
+E6B795 9FCA
+E6B798 9391
+E6B799 9FC8
+E6B79E 9FC2
+E6B7A1 9257
+E6B7A4 9FC9
+E6B7A6 9FBE
+E6B7A8 9FC4
+E6B7AA 9FCB
+E6B7AB 88FA
+E6B7AC 9FC1
+E6B7AE 9FCC
+E6B7B1 905B
+E6B7B2 FB44
+E6B7B3 8F7E
+E6B7B5 95A3
+E6B7B7 8DAC
+E6B7B8 FB43
+E6B7B9 9FB9
+E6B7BA 9FC7
+E6B7BB 9359
+E6B7BC FB45
+E6B885 90B4
+E6B887 8A89
+E6B888 8DCF
+E6B889 8FC2
+E6B88A 9FBB
+E6B88B 8F61
+E6B893 8C6B
+E6B895 9FBA
+E6B899 9FD0
+E6B89A 8F8D
+E6B89B 8CB8
+E6B89D 9FDF
+E6B89F 9FD9
+E6B8A0 8B94
+E6B8A1 936E
+E6B8A3 9FD4
+E6B8A4 9FDD
+E6B8A5 88AD
+E6B8A6 8951
+E6B8A7 FB48
+E6B8A9 89B7
+E6B8AB 9FD6
+E6B8AC 91AA
+E6B8AD 9FCD
+E6B8AE 9FCF
+E6B8AF 8D60
+E6B8B8 9FE0
+E6B8B9 FB46
+E6B8BA 9FDB
+E6B8BC FB49
+E6B8BE 9FD3
+E6B983 9FDA
+E6B98A 96A9
+E6B98D 9FD8
+E6B98E 9FDC
+E6B996 8CCE
+E6B998 8FC3
+E6B99B 9258
+E6B99C FB47
+E6B99F 9FD2
+E6B9A7 974E
+E6B9AB 9FD5
+E6B9AE 9FCE
+E6B9AF 9392
+E6B9B2 9FD1
+E6B9B6 9FD7
+E6B9BE 9870
+E6B9BF 8EBC
+E6BA80 969E
+E6BA82 9FE1
+E6BA8C 94AC
+E6BA8F 9FED
+E6BA90 8CB9
+E6BA96 8F80
+E6BA98 9FE3
+E6BA9C 97AD
+E6BA9D 8D61
+E6BA9F 9FF0
+E6BAA2 88EC
+E6BAA5 9FEE
+E6BAAA 9FE2
+E6BAAF 9FE8
+E6BAB2 9FEA
+E6BAB6 976E
+E6BAB7 9FE5
+E6BABA 934D
+E6BABD 9FE7
+E6BABF FB4A
+E6BB82 9FEF
+E6BB84 9FE9
+E6BB85 96C5
+E6BB89 9FE4
+E6BB8B 8EA0
+E6BB8C 9FFC
+E6BB91 8A8A
+E6BB93 9FE6
+E6BB94 9FEB
+E6BB95 9FEC
+E6BB9D 91EA
+E6BB9E 91D8
+E6BBAC 9FF4
+E6BBAF 9FFA
+E6BBB2 9FF8
+E6BBB4 9348
+E6BBB7 E042
+E6BBB8 9FF5
+E6BBBE 9FF6
+E6BBBF 9FDE
+E6BC81 8B99
+E6BC82 9559
+E6BC86 8EBD
+E6BC89 8D97
+E6BC8F 9852
+E6BC91 9FF2
+E6BC93 E041
+E6BC94 8989
+E6BC95 9186
+E6BCA0 9499
+E6BCA2 8ABF
+E6BCA3 97F8
+E6BCAB 969F
+E6BCAC 92D0
+E6BCB1 9FF9
+E6BCB2 9FFB
+E6BCB8 9151
+E6BCBE E040
+E6BCBF 9FF7
+E6BD81 9FF1
+E6BD85 8AC1
+E6BD94 8C89
+E6BD98 E04E
+E6BD9B E049
+E6BD9C 90F6
+E6BD9F 8A83
+E6BDA4 8F81
+E6BDA6 E052
+E6BDAD E04B
+E6BDAE 92AA
+E6BDAF E048
+E6BDB0 92D7
+E6BDB4 E06B
+E6BDB8 E045
+E6BDBA E044
+E6BDBC E04D
+E6BE80 E047
+E6BE81 E046
+E6BE82 E04C
+E6BE84 909F
+E6BE86 E043
+E6BE88 FB4B
+E6BE8E E04F
+E6BE91 E050
+E6BE97 8AC0
+E6BEA1 E055
+E6BEA3 E054
+E6BEA4 E056
+E6BEAA E059
+E6BEB1 9362
+E6BEB3 E053
+E6BEB5 FB4C
+E6BEB9 E057
+E6BF80 8C83
+E6BF81 91F7
+E6BF82 E051
+E6BF83 945A
+E6BF86 E058
+E6BF94 E05D
+E6BF95 E05B
+E6BF98 E05E
+E6BF9B E061
+E6BF9F E05A
+E6BFA0 8D8A
+E6BFA1 9447
+E6BFA4 9FB7
+E6BFAB 9794
+E6BFAC E05C
+E6BFAE E060
+E6BFAF 91F3
+E6BFB1 E05F
+E6BFB3 E04A
+E6BFB5 FB4D
+E6BFB6 E889
+E6BFBA E064
+E6BFBE E068
+E78081 E066
+E78085 FB4E
+E78087 FB4F
+E78089 E062
+E7808B E063
+E7808F E067
+E78091 E065
+E78095 956D
+E78098 E06D
+E7809A E06A
+E7809B E069
+E7809D E06C
+E7809E 93D2
+E7809F E06E
+E780A6 9295
+E780A7 91EB
+E780A8 FB50
+E780AC 90A3
+E780B0 E06F
+E780B2 E071
+E780BE E070
+E7818C 9FF3
+E78191 E072
+E78198 93E5
+E781A3 E073
+E781AB 89CE
+E781AF 9394
+E781B0 8A44
+E781B8 8B84
+E781BC 8EDC
+E781BD 8DD0
+E78285 FB51
+E78289 9846
+E7828A 9086
+E7828E 898A
+E78292 E075
+E78299 E074
+E782AB FB52
+E782AC E078
+E782AD 9259
+E782AE E07B
+E782AF E076
+E782B3 E07A
+E782B8 E079
+E782B9 935F
+E782BA 88D7
+E782BB FA62
+E78388 97F3
+E7838B E07D
+E7838F 8947
+E78399 E080
+E7839D E07E
+E7839F E07C
+E783B1 E077
+E783B9 9642
+E783BD E082
+E78484 FB54
+E78489 E081
+E7848F FB53
+E78494 898B
+E78499 E084
+E7849A 95B0
+E7849C E083
+E784A1 96B3
+E784A6 8FC5
+E784B6 9152
+E784BC 8FC4
+E78586 FB56
+E78587 FB57
+E78589 97F9
+E7858C E08A
+E7858E 90F7
+E78595 E086
+E78596 E08B
+E78599 898C
+E7859C FB55
+E785A2 E089
+E785A4 9481
+E785A5 E085
+E785A6 E088
+E785A7 8FC6
+E785A9 94CF
+E785AC E08C
+E785AE 8ECF
+E785BD 90F8
+E78684 E08F
+E78688 E087
+E7868A 8C46
+E7868F E08D
+E78694 976F
+E78695 E090
+E78699 EAA4
+E7869F 8F6E
+E786A8 E091
+E786AC E092
+E786B1 944D
+E786B9 E094
+E786BE E095
+E78781 FB59
+E78783 9452
+E78788 9395
+E78789 E097
+E7878E E099
+E78790 97D3
+E78792 E096
+E78794 E098
+E78795 898D
+E78797 E093
+E7879F 9A7A
+E787A0 E09A
+E787A5 9187
+E787A6 8E57
+E787A7 E09C
+E787AC E09B
+E787AD 9043
+E787AE 99D7
+E787B5 E09D
+E787B9 E09F
+E787BB E08E
+E787BC E09E
+E787BE FB5A
+E787BF E0A0
+E78886 949A
+E7888D E0A1
+E78890 E0A2
+E7889B E0A3
+E788A8 E0A4
+E788AA 92DC
+E788AC E0A6
+E788AD E0A5
+E788B0 E0A7
+E788B2 E0A8
+E788B5 8EDD
+E788B6 9583
+E788BA 96EA
+E788BB E0A9
+E788BC E0AA
+E788BD 9175
+E788BE 8EA2
+E788BF E0AB
+E78980 E0AC
+E78986 E0AD
+E78987 95D0
+E78988 94C5
+E7898B E0AE
+E7898C 9476
+E78992 92AB
+E78998 E0AF
+E78999 89E5
+E7899B 8B8D
+E7899D 96C4
+E7899F 96B4
+E789A1 89B2
+E789A2 9853
+E789A7 9671
+E789A9 95A8
+E789B2 90B5
+E789B4 E0B0
+E789B9 93C1
+E789BD 8CA1
+E789BE E0B1
+E78A80 8DD2
+E78A81 E0B3
+E78A82 E0B2
+E78A87 E0B4
+E78A92 E0B5
+E78A96 E0B6
+E78AA0 8B5D
+E78AA2 E0B7
+E78AA7 E0B8
+E78AAC 8CA2
+E78AAF 94C6
+E78AB1 FB5B
+E78AB2 E0BA
+E78AB6 8FF3
+E78AB9 E0B9
+E78ABE FB5C
+E78B82 8BB6
+E78B83 E0BB
+E78B84 E0BD
+E78B86 E0BC
+E78B8E E0BE
+E78B90 8CCF
+E78B92 E0BF
+E78B97 8BE7
+E78B99 915F
+E78B9B 8D9D
+E78BA0 E0C1
+E78BA1 E0C2
+E78BA2 E0C0
+E78BA9 8EEB
+E78BAC 93C6
+E78BAD 8BB7
+E78BB7 E0C4
+E78BB8 924B
+E78BB9 E0C3
+E78BBC 9854
+E78BBD 9482
+E78C8A E0C7
+E78C96 E0C9
+E78C97 E0C6
+E78C9B 96D2
+E78C9C E0C8
+E78C9D E0CA
+E78C9F 97C2
+E78CA4 FB5D
+E78CA5 E0CE
+E78CA9 E0CD
+E78CAA 9296
+E78CAB 944C
+E78CAE 8CA3
+E78CAF E0CC
+E78CB4 E0CB
+E78CB6 9750
+E78CB7 9751
+E78CBE E0CF
+E78CBF 898E
+E78D84 8D96
+E78D85 8E82
+E78D8E E0D0
+E78D8F E0D1
+E78D97 E0D3
+E78DA3 8F62
+E78DA8 E0D5
+E78DAA E0D4
+E78DB0 E0D6
+E78DB2 8A6C
+E78DB5 E0D8
+E78DB7 FB5F
+E78DB8 E0D7
+E78DBA E0DA
+E78DBB E0D9
+E78E84 8CBA
+E78E87 97A6
+E78E89 8BCA
+E78E8B 89A4
+E78E96 8BE8
+E78EA9 8ADF
+E78EB2 97E6
+E78EB3 E0DC
+E78EBB E0DE
+E78EBD FB60
+E78F80 E0DF
+E78F82 89CF
+E78F88 E0DB
+E78F89 FB61
+E78F8A 8E58
+E78F8D 92BF
+E78F8E E0DD
+E78F92 FB64
+E78F96 FB62
+E78F9E E0E2
+E78FA0 8EEC
+E78FA3 FB63
+E78FA5 E0E0
+E78FAA 8C5D
+E78FAD 94C7
+E78FAE E0E1
+E78FB1 E0FC
+E78FB5 FB66
+E78FB8 E0E7
+E78FBE 8CBB
+E79083 8B85
+E79085 E0E4
+E79086 979D
+E79087 FB65
+E79089 97AE
+E790A2 91F4
+E790A5 E0E6
+E790A6 FB67
+E790A9 FB69
+E790AA FB68
+E790AE FB6A
+E790B2 E0E8
+E790B3 97D4
+E790B4 8BD5
+E790B5 94FA
+E790B6 9469
+E790BA E0E9
+E790BF E0EB
+E79181 E0EE
+E79195 E0EA
+E79199 E0ED
+E7919A 8CE8
+E7919B 896C
+E7919C E0EF
+E7919E 9090
+E7919F E0EC
+E791A0 97DA
+E791A2 FB6B
+E791A3 E0F2
+E791A4 EAA2
+E791A9 E0F0
+E791AA E0F3
+E791AF E0E5
+E791B0 E0F1
+E791B3 8DBA
+E791B6 E0F4
+E791BE E0F5
+E79283 979E
+E79289 FB6C
+E7928B E0F6
+E7929E E0F7
+E7929F FB6D
+E792A2 E0E3
+E792A7 E0F8
+E792B0 8AC2
+E792BD 8EA3
+E7938A E0F9
+E7938F E0FA
+E79394 E0FB
+E7939C 895A
+E793A0 E140
+E793A2 955A
+E793A3 E141
+E793A6 8AA2
+E793A7 E142
+E793A9 E143
+E793AE E144
+E793B0 E146
+E793B1 E147
+E793B2 E145
+E793B6 9572
+E793B7 E149
+E793B8 E148
+E79481 FB6E
+E79483 E14B
+E79484 E14A
+E79485 E14C
+E7948C E14D
+E7948D E14F
+E7948E E14E
+E79491 8D99
+E79493 E151
+E79495 E150
+E79498 8AC3
+E7949A 9072
+E7949C 935B
+E7949E E152
+E7949F 90B6
+E794A3 8E59
+E794A5 8999
+E794A6 E153
+E794A8 9770
+E794AB 95E1
+E794AC E154
+E794AF FAA8
+E794B0 9363
+E794B1 9752
+E794B2 8D62
+E794B3 905C
+E794B7 926A
+E794B8 99B2
+E794BA 92AC
+E794BB 89E6
+E794BC E155
+E79584 E156
+E79586 E15B
+E79589 E159
+E7958A E158
+E7958B 9DC0
+E7958C 8A45
+E7958D E157
+E7958F 88D8
+E79591 94A8
+E79594 94C8
+E79599 97AF
+E7959A E15C
+E7959B E15A
+E7959C 927B
+E7959D 90A4
+E795A0 94A9
+E795A2 954C
+E795A4 E15E
+E795A5 97AA
+E795A6 8C6C
+E795A7 E15F
+E795A9 E15D
+E795AA 94D4
+E795AB E160
+E795AD E161
+E795AF FB6F
+E795B0 88D9
+E795B3 8FF4
+E795B4 E166
+E795B6 E163
+E795B7 93EB
+E795B8 E162
+E795BF 8B45
+E79682 E169
+E79686 E164
+E79687 E165
+E79689 E168
+E7968A E167
+E7968B 9544
+E7968E 9161
+E7968F 9160
+E79691 8B5E
+E79694 E16A
+E7969A E16B
+E7969D E16C
+E796A3 E16E
+E796A5 E16D
+E796AB 8975
+E796B1 E176
+E796B2 94E6
+E796B3 E170
+E796B5 E172
+E796B8 E174
+E796B9 905D
+E796BC E175
+E796BD E173
+E796BE 8EBE
+E79782 E16F
+E79783 E171
+E79785 9561
+E79787 8FC7
+E7978A E178
+E7978D E177
+E79792 E179
+E79794 8EA4
+E79795 8DAD
+E79798 9397
+E79799 E17A
+E7979B 92C9
+E7979E E17C
+E797A2 979F
+E797A3 E17B
+E797A9 9189
+E797B0 E182
+E797B2 E184
+E797B3 E185
+E797B4 9273
+E797BA E183
+E797BC E180
+E797BE E17D
+E797BF E17E
+E79881 E181
+E79889 E188
+E7988B E186
+E7988D E187
+E7989F E189
+E798A0 E18B
+E798A1 E18C
+E798A2 E18D
+E798A4 E18E
+E798A7 E18A
+E798B0 E190
+E798B4 E18F
+E798BB E191
+E79982 97C3
+E79986 E194
+E79987 E192
+E79988 E193
+E7998C 8AE0
+E79992 96FC
+E79996 95C8
+E79998 E196
+E7999C E195
+E799A1 E197
+E799A2 E198
+E799A7 E19C
+E799A8 E199
+E799A9 E19A
+E799AA E19B
+E799AC E19D
+E799B0 E19E
+E799B2 E19F
+E799B6 E1A0
+E799B8 E1A1
+E799BA 94AD
+E799BB 936F
+E799BC E1A2
+E799BD 9492
+E799BE 9553
+E79A80 E1A3
+E79A82 FB70
+E79A83 E1A4
+E79A84 9349
+E79A86 8A46
+E79A87 8D63
+E79A88 E1A5
+E79A8B E1A6
+E79A8E E1A7
+E79A90 8E48
+E79A93 E1A9
+E79A96 E1A8
+E79A99 E1AA
+E79A9A E1AB
+E79A9B FB73
+E79A9C FB71
+E79A9E FB72
+E79AA6 FB74
+E79AAE 94E7
+E79AB0 E1AC
+E79AB4 E1AD
+E79AB7 EA89
+E79AB8 E1AE
+E79AB9 E1AF
+E79ABA E1B0
+E79ABF 8E4D
+E79B82 E1B1
+E79B83 9475
+E79B86 967E
+E79B88 896D
+E79B8A 8976
+E79B8D E1B2
+E79B92 E1B4
+E79B96 E1B3
+E79B97 9390
+E79B9B 90B7
+E79B9C 9F58
+E79B9E E1B5
+E79B9F 96BF
+E79BA1 E1B6
+E79BA3 8AC4
+E79BA4 94D5
+E79BA5 E1B7
+E79BA7 E1B8
+E79BAA E1B9
+E79BAE 96DA
+E79BB2 96D3
+E79BB4 92BC
+E79BB8 918A
+E79BBB E1BB
+E79BBE 8F82
+E79C81 8FC8
+E79C84 E1BE
+E79C87 E1BD
+E79C88 E1BC
+E79C89 94FB
+E79C8B 8AC5
+E79C8C 8CA7
+E79C9B E1C4
+E79C9E E1C1
+E79C9F 905E
+E79CA0 96B0
+E79CA4 E1C0
+E79CA5 E1C2
+E79CA6 E1C3
+E79CA9 E1BF
+E79CB7 E1C5
+E79CB8 E1C6
+E79CBA 92AD
+E79CBC 8AE1
+E79D80 9285
+E79D86 FB76
+E79D87 E1C7
+E79D9A E1C8
+E79D9B E1CB
+E79DA1 9087
+E79DA3 93C2
+E79DA5 E1CC
+E79DA6 9672
+E79DA8 E1C9
+E79DAB E1CA
+E79DB9 E1CF
+E79DBE E1CE
+E79DBF E1CD
+E79E8B E1D1
+E79E8E E1D0
+E79E91 E1D2
+E79E9E E1D4
+E79EA0 E1D3
+E79EA5 95CB
+E79EAC 8F75
+E79EAD 97C4
+E79EB0 E1D5
+E79EB3 93B5
+E79EB6 E1D6
+E79EB9 E1D7
+E79EBB E1DB
+E79EBC E1D9
+E79EBD E1DA
+E79EBF E1D8
+E79F87 E1DC
+E79F8D E1DD
+E79F97 E1DE
+E79F9A E1DF
+E79F9B 96B5
+E79F9C E1E0
+E79FA2 96EE
+E79FA3 E1E1
+E79FA5 926D
+E79FA7 948A
+E79FA9 8BE9
+E79FAD 925A
+E79FAE E1E2
+E79FAF 8BB8
+E79FB3 90CE
+E79FBC E1E3
+E7A082 8DBB
+E7A08C E1E4
+E7A092 E1E5
+E7A094 8CA4
+E7A095 8DD3
+E7A0A0 E1E7
+E7A0A1 FB78
+E7A0A5 9375
+E7A0A6 8DD4
+E7A0A7 8B6D
+E7A0B2 9643
+E7A0B4 946A
+E7A0BA 9376
+E7A0BF 8D7B
+E7A185 E1E9
+E7A18E FB79
+E7A19D 8FC9
+E7A1A4 FB7A
+E7A1AB 97B0
+E7A1AC 8D64
+E7A1AF 8CA5
+E7A1B2 94A1
+E7A1B4 E1EB
+E7A1BA FB7B
+E7A1BC E1ED
+E7A281 8CE9
+E7A286 E1EC
+E7A287 92F4
+E7A28C E1EF
+E7A28D 8A56
+E7A28E E1EA
+E7A291 94E8
+E7A293 894F
+E7A295 8DEA
+E7A297 9871
+E7A29A E1EE
+E7A2A3 E1F0
+E7A2A7 95C9
+E7A2A9 90D7
+E7A2AA E1F2
+E7A2AF E1F3
+E7A2B5 E1F1
+E7A2BA 8A6D
+E7A2BC E1F9
+E7A2BE E1F8
+E7A381 8EA5
+E7A385 E1FA
+E7A386 E1F5
+E7A38A E1FB
+E7A38B E1F6
+E7A390 94D6
+E7A391 E1F4
+E7A394 E1F7
+E7A39A E241
+E7A3A7 E240
+E7A3A8 9681
+E7A3AC E1FC
+E7A3AF 88E9
+E7A3B4 E243
+E7A3BD E242
+E7A481 8FCA
+E7A487 E244
+E7A48E 9162
+E7A491 E246
+E7A492 E245
+E7A499 E247
+E7A4A6 E1E6
+E7A4AA E1E8
+E7A4AB E249
+E7A4AC E248
+E7A4B0 FB7C
+E7A4BA 8EA6
+E7A4BC 97E7
+E7A4BE 8ED0
+E7A580 E24A
+E7A581 8C56
+E7A587 8B5F
+E7A588 8B46
+E7A589 8E83
+E7A590 9753
+E7A593 E250
+E7A595 E24F
+E7A596 9163
+E7A597 E24C
+E7A59A E24E
+E7A59D 8F6A
+E7A59E 905F
+E7A59F E24D
+E7A5A0 E24B
+E7A5A2 9449
+E7A5A5 8FCB
+E7A5A8 955B
+E7A5AD 8DD5
+E7A5B7 9398
+E7A5BA E251
+E7A5BF E252
+E7A680 E268
+E7A681 8BD6
+E7A684 985C
+E7A685 9154
+E7A68A E253
+E7A68D 89D0
+E7A68E 92F5
+E7A68F 959F
+E7A694 FB81
+E7A69B FB83
+E7A69D E254
+E7A6A6 8B9A
+E7A6A7 E255
+E7A6AA E257
+E7A6AE E258
+E7A6B0 9448
+E7A6B3 E259
+E7A6B9 E25A
+E7A6BA E25B
+E7A6BD 8BD7
+E7A6BE 89D1
+E7A6BF 93C3
+E7A780 8F47
+E7A781 8E84
+E7A789 E25C
+E7A78B 8F48
+E7A791 89C8
+E7A792 9562
+E7A795 E25D
+E7A798 94E9
+E7A79F 9164
+E7A7A1 E260
+E7A7A3 E261
+E7A7A4 9489
+E7A7A6 9060
+E7A7A7 E25E
+E7A7A9 9281
+E7A7AC E25F
+E7A7B0 8FCC
+E7A7BB 88DA
+E7A880 8B48
+E7A888 E262
+E7A88B 92F6
+E7A88D E263
+E7A88E 90C5
+E7A894 96AB
+E7A897 9542
+E7A898 E264
+E7A899 E265
+E7A89A 9274
+E7A89C 97C5
+E7A89F E267
+E7A8A0 E266
+E7A8AE 8EED
+E7A8B1 E269
+E7A8B2 88EE
+E7A8B7 E26C
+E7A8BB E26A
+E7A8BC 89D2
+E7A8BD 8C6D
+E7A8BE E26B
+E7A8BF 8D65
+E7A980 8D92
+E7A982 95E4
+E7A983 E26D
+E7A986 9673
+E7A989 E26F
+E7A98D 90CF
+E7A98E 896E
+E7A98F 89B8
+E7A990 88AA
+E7A997 E26E
+E7A9A1 E270
+E7A9A2 E271
+E7A9A3 8FF5
+E7A9A9 E272
+E7A9AB 8A6E
+E7A9B0 E274
+E7A9B4 8C8A
+E7A9B6 8B86
+E7A9B9 E275
+E7A9BA 8BF3
+E7A9BD E276
+E7A9BF 90FA
+E7AA81 93CB
+E7AA83 90DE
+E7AA84 8DF3
+E7AA88 E277
+E7AA92 9282
+E7AA93 918B
+E7AA95 E279
+E7AA96 E27B
+E7AA97 E278
+E7AA98 E27A
+E7AA9F 8C41
+E7AAA9 E27C
+E7AAAA 8C45
+E7AAAE 8B87
+E7AAAF 9771
+E7AAB0 E27E
+E7AAB6 E280
+E7AABA 894D
+E7AABF E283
+E7AB83 8A96
+E7AB84 E282
+E7AB85 E281
+E7AB87 E285
+E7AB88 E27D
+E7AB8A E286
+E7AB8B 97A7
+E7AB8D E287
+E7AB8F E288
+E7AB91 FB84
+E7AB92 9AF2
+E7AB93 E28A
+E7AB95 E289
+E7AB99 E28B
+E7AB9A E28C
+E7AB9C 97B3
+E7AB9D E28D
+E7AB9F E8ED
+E7ABA0 8FCD
+E7ABA1 E28E
+E7ABA2 E28F
+E7ABA3 8F76
+E7ABA5 93B6
+E7ABA6 E290
+E7ABA7 FB85
+E7ABAA 9247
+E7ABAB FB87
+E7ABAD E291
+E7ABAF 925B
+E7ABB0 E292
+E7ABB6 8BA3
+E7ABB8 995E
+E7ABB9 927C
+E7ABBA 8EB1
+E7ABBF 8AC6
+E7AC82 E293
+E7AC84 E2A0
+E7AC86 E296
+E7AC88 8B88
+E7AC8A E295
+E7AC8B E2A2
+E7AC8F E294
+E7AC91 8FCE
+E7AC98 E298
+E7AC99 E299
+E7AC9B 934A
+E7AC9E E29A
+E7ACA0 8A7D
+E7ACA5 9079
+E7ACA6 9584
+E7ACA8 E29C
+E7ACAC 91E6
+E7ACB3 E297
+E7ACB5 E29B
+E7ACB6 E29D
+E7ACB9 8DF9
+E7AD85 E2A4
+E7AD86 954D
+E7AD88 94A4
+E7AD89 9399
+E7AD8B 8BD8
+E7AD8C E2A3
+E7AD8D E2A1
+E7AD8F 94B3
+E7AD90 E29E
+E7AD91 927D
+E7AD92 939B
+E7AD94 939A
+E7AD96 8DF4
+E7AD9D E2B6
+E7ADA5 E2A6
+E7ADA7 E2A8
+E7ADAC E2AB
+E7ADAE E2AC
+E7ADB0 E2A9
+E7ADB1 E2AA
+E7ADB4 E2A7
+E7ADB5 E2A5
+E7ADBA E29F
+E7AE86 95CD
+E7AE87 89D3
+E7AE8B E2B3
+E7AE8D E2B0
+E7AE8F E2B5
+E7AE92 E2B4
+E7AE94 9493
+E7AE95 96A5
+E7AE97 8E5A
+E7AE98 E2AE
+E7AE99 E2B7
+E7AE9A E2B2
+E7AE9C E2B1
+E7AE9D E2AD
+E7AE9E FB88
+E7AE9F E2AF
+E7AEA1 8AC7
+E7AEAA 925C
+E7AEAD 90FB
+E7AEB1 94A0
+E7AEB4 E2BC
+E7AEB8 94A2
+E7AF80 90DF
+E7AF81 E2B9
+E7AF84 94CD
+E7AF86 E2BD
+E7AF87 95D1
+E7AF89 927A
+E7AF8B E2B8
+E7AF8C E2BA
+E7AF8F E2BB
+E7AF9D E2BE
+E7AFA0 8EC2
+E7AFA4 93C4
+E7AFA5 E2C3
+E7AFA6 E2C2
+E7AFA9 E2BF
+E7AFAD 9855
+E7AFB3 E2C8
+E7AFB6 E2CC
+E7AFB7 E2C9
+E7B080 E2C5
+E7B087 E2C6
+E7B08D E2CB
+E7B091 E2C0
+E7B092 99D3
+E7B093 E2C7
+E7B094 E2C1
+E7B097 E2CA
+E7B09F E2D0
+E7B0A1 8AC8
+E7B0A3 E2CD
+E7B0A7 E2CE
+E7B0AA E2CF
+E7B0AB E2D2
+E7B0B7 E2D1
+E7B0B8 94F4
+E7B0BD E2D3
+E7B0BE 97FA
+E7B0BF 95EB
+E7B180 E2D8
+E7B183 E2D5
+E7B18C E2D4
+E7B18D 90D0
+E7B18F E2D7
+E7B190 E2D9
+E7B194 E2D6
+E7B196 E2DD
+E7B198 E2DA
+E7B19F E2DB
+E7B1A0 E2C4
+E7B1A4 E2DC
+E7B1A5 E2DE
+E7B1AC E2DF
+E7B1B3 95C4
+E7B1B5 E2E0
+E7B1BE 96E0
+E7B281 8BCC
+E7B282 8C48
+E7B283 E2E1
+E7B289 95B2
+E7B28B 9088
+E7B28D 96AE
+E7B290 E2E2
+E7B292 97B1
+E7B295 9494
+E7B297 9165
+E7B298 9453
+E7B29B 8F6C
+E7B29F 88BE
+E7B2A1 E2E7
+E7B2A2 E2E5
+E7B2A4 E2E3
+E7B2A5 8A9F
+E7B2A7 8FCF
+E7B2A8 E2E8
+E7B2AB E2E6
+E7B2AD E2E4
+E7B2AE E2EC
+E7B2B1 E2EB
+E7B2B2 E2EA
+E7B2B3 E2E9
+E7B2B9 E2ED
+E7B2BD E2EE
+E7B2BE 90B8
+E7B380 E2EF
+E7B382 E2F1
+E7B385 E2F0
+E7B38A 8CD0
+E7B38E 9157
+E7B392 E2F3
+E7B396 939C
+E7B398 E2F2
+E7B39C E2F4
+E7B39E 95B3
+E7B39F 918C
+E7B3A0 8D66
+E7B3A2 E2F5
+E7B3A7 97C6
+E7B3AF E2F7
+E7B3B2 E2F8
+E7B3B4 E2F9
+E7B3B6 E2FA
+E7B3B8 8E85
+E7B3BA E2FB
+E7B3BB 8C6E
+E7B3BE 8B8A
+E7B480 8B49
+E7B482 E340
+E7B484 96F1
+E7B485 8D67
+E7B486 E2FC
+E7B48A E343
+E7B48B 96E4
+E7B48D 945B
+E7B490 9552
+E7B494 8F83
+E7B495 E342
+E7B497 8ED1
+E7B498 8D68
+E7B499 8E86
+E7B49A 8B89
+E7B49B 95B4
+E7B49C E341
+E7B4A0 9166
+E7B4A1 9661
+E7B4A2 8DF5
+E7B4AB 8E87
+E7B4AC 92DB
+E7B4AE E346
+E7B4AF 97DD
+E7B4B0 8DD7
+E7B4B2 E347
+E7B4B3 9061
+E7B4B5 E349
+E7B4B9 8FD0
+E7B4BA 8DAE
+E7B4BF E348
+E7B582 8F49
+E7B583 8CBC
+E7B584 9167
+E7B585 E344
+E7B586 E34A
+E7B588 FB8A
+E7B58B E345
+E7B58C 8C6F
+E7B58E E34D
+E7B58F E351
+E7B590 8C8B
+E7B596 E34C
+E7B59B E355
+E7B59C FB8B
+E7B59E 8D69
+E7B5A1 978D
+E7B5A2 88BA
+E7B5A3 E352
+E7B5A6 8B8B
+E7B5A8 E34F
+E7B5AE E350
+E7B5B1 939D
+E7B5B2 E34E
+E7B5B3 E34B
+E7B5B5 8A47
+E7B5B6 90E2
+E7B5B9 8CA6
+E7B5BD E357
+E7B689 E354
+E7B68F E356
+E7B693 E353
+E7B699 8C70
+E7B69A 91B1
+E7B69B E358
+E7B69C 918E
+E7B69F E365
+E7B6A0 FB8D
+E7B6A2 E361
+E7B6A3 E35B
+E7B6AB E35F
+E7B6AC 8EF8
+E7B6AD 88DB
+E7B6AE E35A
+E7B6AF E362
+E7B6B0 E366
+E7B6B1 8D6A
+E7B6B2 96D4
+E7B6B4 92D4
+E7B6B5 E35C
+E7B6B7 FB8C
+E7B6B8 E364
+E7B6BA E359
+E7B6BB 925D
+E7B6BD E35E
+E7B6BE 88BB
+E7B6BF 96C8
+E7B787 E35D
+E7B78A 8BD9
+E7B78B 94EA
+E7B78F 918D
+E7B791 97CE
+E7B792 8F8F
+E7B795 E38E
+E7B796 FB8E
+E7B798 E367
+E7B79A 90FC
+E7B79C E363
+E7B79D E368
+E7B79E E36A
+E7B7A0 92F7
+E7B7A1 E36D
+E7B7A4 E369
+E7B7A8 95D2
+E7B7A9 8AC9
+E7B7AC 96C9
+E7B7AF 88DC
+E7B7B2 E36C
+E7B7B4 97FB
+E7B7BB E36B
+E7B881 898F
+E7B884 93EA
+E7B885 E36E
+E7B889 E375
+E7B88A E36F
+E7B88B E376
+E7B892 E372
+E7B89B 949B
+E7B89E 8EC8
+E7B89F E374
+E7B8A1 E371
+E7B8A2 E377
+E7B8A3 E370
+E7B8A6 8F63
+E7B8AB 9644
+E7B8AE 8F6B
+E7B8B1 E373
+E7B8B2 E380
+E7B8B5 E37B
+E7B8B7 E37E
+E7B8B9 E37C
+E7B8BA E381
+E7B8BB E37A
+E7B8BD E360
+E7B8BE 90D1
+E7B981 94C9
+E7B983 E37D
+E7B986 E378
+E7B98A 9140
+E7B98B 8C71
+E7B98D 8F4A
+E7B992 FB8F
+E7B994 9044
+E7B995 9155
+E7B996 E384
+E7B999 E386
+E7B99A E387
+E7B99D E383
+E7B99E E385
+E7B9A6 E379
+E7B9A7 E382
+E7B9A9 E38A
+E7B9AA E389
+E7B9AD 969A
+E7B9B0 8C4A
+E7B9B9 E388
+E7B9BB E38C
+E7B9BC E38B
+E7B9BD E38F
+E7B9BF E391
+E7BA82 8E5B
+E7BA83 E38D
+E7BA88 E392
+E7BA89 E393
+E7BA8A FA5C
+E7BA8C E394
+E7BA8E E39A
+E7BA8F 935A
+E7BA90 E396
+E7BA92 E395
+E7BA93 E397
+E7BA94 E398
+E7BA96 E399
+E7BA9B E39B
+E7BA9C E39C
+E7BCB6 8ACA
+E7BCB8 E39D
+E7BCBA E39E
+E7BD85 E39F
+E7BD87 FB90
+E7BD8C E3A0
+E7BD8D E3A1
+E7BD8E E3A2
+E7BD90 E3A3
+E7BD91 E3A4
+E7BD94 E3A6
+E7BD95 E3A5
+E7BD98 E3A7
+E7BD9F E3A8
+E7BDA0 E3A9
+E7BDA7 E3AC
+E7BDA8 E3AA
+E7BDA9 E3AB
+E7BDAA 8DDF
+E7BDAB 8C72
+E7BDAE 9275
+E7BDB0 94B1
+E7BDB2 8F90
+E7BDB5 946C
+E7BDB7 94EB
+E7BDB8 E3AD
+E7BDB9 9CEB
+E7BE82 E3AE
+E7BE83 E3B0
+E7BE85 9785
+E7BE86 E3AF
+E7BE87 E3B2
+E7BE88 E3B1
+E7BE8A 9772
+E7BE8C E3B3
+E7BE8E 94FC
+E7BE94 E3B4
+E7BE9A E3B7
+E7BE9D E3B6
+E7BE9E E3B5
+E7BEA1 FB91
+E7BEA3 E3B8
+E7BEA4 8C51
+E7BEA8 9141
+E7BEA9 8B60
+E7BEAE E3BC
+E7BEAF E3B9
+E7BEB2 E3BA
+E7BEB6 E3BD
+E7BEB8 E3BE
+E7BEB9 E3BB
+E7BEBD 8948
+E7BF81 89A5
+E7BF85 E3C0
+E7BF86 E3C1
+E7BF8A E3C2
+E7BF8C 9782
+E7BF92 8F4B
+E7BF94 E3C4
+E7BF95 E3C3
+E7BFA0 9089
+E7BFA1 E3C5
+E7BFA6 E3C6
+E7BFA9 E3C7
+E7BFAB 8AE3
+E7BFB0 8ACB
+E7BFB3 E3C8
+E7BFB9 E3C9
+E7BFBB 967C
+E7BFBC 9783
+E88080 9773
+E88081 9856
+E88083 8D6C
+E88084 E3CC
+E88085 8ED2
+E88086 E3CB
+E8808B E3CD
+E8808C 8EA7
+E88090 91CF
+E88092 E3CE
+E88095 8D6B
+E88097 96D5
+E88098 E3CF
+E88099 E3D0
+E8809C E3D1
+E880A1 E3D2
+E880A8 E3D3
+E880B3 8EA8
+E880B6 96EB
+E880BB E3D5
+E880BD 925E
+E880BF E3D4
+E88186 E3D7
+E8818A E3D6
+E88192 E3D8
+E88196 90B9
+E88198 E3D9
+E8819A E3DA
+E8819E 95B7
+E8819F E3DB
+E881A1 918F
+E881A2 E3DC
+E881A8 E3DD
+E881AF 97FC
+E881B0 E3E0
+E881B2 E3DF
+E881B3 E3DE
+E881B4 92AE
+E881B6 E3E1
+E881B7 9045
+E881B9 E3E2
+E881BD E3E3
+E881BE 9857
+E881BF E3E4
+E88284 E3E5
+E88285 E3E7
+E88286 E3E6
+E88287 94A3
+E88289 93F7
+E8828B 985D
+E8828C 94A7
+E88293 E3E9
+E88296 8FD1
+E88298 9549
+E8829A E3EA
+E8829B E3E8
+E8829D 8ACC
+E882A1 8CD2
+E882A2 8E88
+E882A5 94EC
+E882A9 8CA8
+E882AA 9662
+E882AC E3ED
+E882AD E3EB
+E882AF 8D6D
+E882B1 8D6E
+E882B2 88E7
+E882B4 8DE6
+E882BA 9478
+E88383 88DD
+E88384 E3F2
+E88386 925F
+E8838C 9477
+E8838E 91D9
+E88396 E3F4
+E88399 E3F0
+E8839A E3F3
+E8839B E3EE
+E8839D E3F1
+E8839E 9645
+E883A1 8CD3
+E883A4 88FB
+E883A5 E3EF
+E883AF E3F6
+E883B1 E3F7
+E883B4 93B7
+E883B8 8BB9
+E883BC E445
+E883BD 945C
+E88482 8E89
+E88485 8BBA
+E88486 90C6
+E88487 9865
+E88488 96AC
+E88489 E3F5
+E8848A 90D2
+E8849A 8B72
+E8849B E3F8
+E884A3 E3FA
+E884A9 E3F9
+E884AF E3FB
+E884B1 9245
+E884B3 945D
+E884B9 92AF
+E884BE E442
+E88586 E441
+E8858B E3FC
+E8858E 9074
+E88590 9585
+E88591 E444
+E88593 E443
+E88594 8D6F
+E88595 9872
+E8859F E454
+E885A5 E448
+E885A6 E449
+E885AB 8EEE
+E885AE E447
+E885B0 8D98
+E885B1 E446
+E885B4 E44A
+E885B8 92B0
+E885B9 95A0
+E885BA 9142
+E885BF 91DA
+E88680 E44E
+E88682 E44F
+E88683 E44B
+E88688 E44C
+E8868A E44D
+E8868F 8D70
+E88693 E455
+E88695 E451
+E8869A 9586
+E8869C 968C
+E8869D 9547
+E886A0 E450
+E886A3 E453
+E886A4 E452
+E886A8 9663
+E886A9 E456
+E886B0 E457
+E886B3 9156
+E886B5 E458
+E886B8 E45A
+E886BA E45E
+E886BD E45B
+E886BE E459
+E886BF 945E
+E88780 E45C
+E88782 E45D
+E88786 89B0
+E88788 E464
+E88789 E45F
+E8878D E460
+E88791 E461
+E88793 919F
+E88798 E463
+E88799 E462
+E8879A E465
+E8879F E466
+E887A0 E467
+E887A3 9062
+E887A5 89E7
+E887A7 E468
+E887A8 97D5
+E887AA 8EA9
+E887AD 8F4C
+E887B3 8E8A
+E887B4 9276
+E887BA E469
+E887BB E46A
+E887BC 8950
+E887BE E46B
+E88881 E46C
+E88882 E46D
+E88885 E46E
+E88887 E46F
+E88888 8BBB
+E88889 9DA8
+E8888A E470
+E8888C 90E3
+E8888D E471
+E8888E 8EC9
+E88890 E472
+E88892 98AE
+E88896 E473
+E88897 95DC
+E88898 8ADA
+E8889B 9143
+E8889C 8F77
+E8889E 9591
+E8889F 8F4D
+E888A9 E474
+E888AA 8D71
+E888AB E475
+E888AC 94CA
+E888AE E484
+E888B3 E477
+E888B5 91C7
+E888B6 9495
+E888B7 8CBD
+E888B8 E476
+E888B9 9144
+E88980 E478
+E88987 92F8
+E88998 E47A
+E88999 E479
+E8899A E47C
+E8899D E47B
+E8899F E47D
+E889A2 E480
+E889A4 E47E
+E889A6 8ACD
+E889A8 E481
+E889AA E482
+E889AB E483
+E889AE 8DAF
+E889AF 97C7
+E889B1 E485
+E889B2 9046
+E889B6 8990
+E889B7 E486
+E889B8 E487
+E889BE E488
+E88A8B 88F0
+E88A8D E489
+E88A92 E48A
+E88A99 9587
+E88A9D 8EC5
+E88A9F E48C
+E88AA5 8A48
+E88AA6 88B0
+E88AAB E48B
+E88AAC E48E
+E88AAD 946D
+E88AAF 9063
+E88AB1 89D4
+E88AB3 9646
+E88AB8 8C7C
+E88AB9 8BDA
+E88ABB E48D
+E88ABD 89E8
+E88B85 8AA1
+E88B91 8991
+E88B92 E492
+E88B93 97E8
+E88B94 91DB
+E88B97 9563
+E88B99 E49E
+E88B9B 89D5
+E88B9C E49C
+E88B9E E49A
+E88B9F E491
+E88BA1 E48F
+E88BA3 E490
+E88BA5 8EE1
+E88BA6 8BEA
+E88BA7 9297
+E88BAB 93CF
+E88BB1 8970
+E88BB3 E494
+E88BB4 E493
+E88BB9 E499
+E88BBA E495
+E88BBB E498
+E88C81 FB93
+E88C82 96CE
+E88C83 E497
+E88C84 89D6
+E88C85 8A9D
+E88C86 E49B
+E88C89 E49D
+E88C8E 8C73
+E88C96 E4A1
+E88C97 E4AA
+E88C98 E4AB
+E88C9C 88A9
+E88CA3 E4B2
+E88CA8 88EF
+E88CAB E4A9
+E88CAF E4A8
+E88CB1 E4A3
+E88CB2 E4A2
+E88CB4 E4A0
+E88CB5 E49F
+E88CB6 9283
+E88CB8 91F9
+E88CB9 E4A5
+E88D80 E4A4
+E88D85 E4A7
+E88D89 9190
+E88D8A 8C74
+E88D8F 8960
+E88D90 E4A6
+E88D92 8D72
+E88D98 9191
+E88DA2 FB94
+E88DB3 E4B8
+E88DB5 E4B9
+E88DB7 89D7
+E88DBB 89AC
+E88DBC E4B6
+E88DBF FB95
+E88E85 E4AC
+E88E87 E4B4
+E88E89 E4BB
+E88E8A E4B5
+E88E8E E4B3
+E88E93 E496
+E88E96 E4B1
+E88E9A E4AD
+E88E9E 8ACE
+E88E9F E4AF
+E88EA0 E4BA
+E88EA2 E4B0
+E88EA8 E4BC
+E88EAA E4AE
+E88EAB 949C
+E88EB1 9789
+E88EB5 E4B7
+E88EBD E4CD
+E88F81 E4C5
+E88F85 909B
+E88F87 FB96
+E88F8A 8B65
+E88F8C 8BDB
+E88F8E E4C0
+E88F93 89D9
+E88F96 8FD2
+E88F98 E4C3
+E88F9C 8DD8
+E88F9F 9370
+E88FA0 E4C8
+E88FA9 95EC
+E88FAB E4BF
+E88FAF 89D8
+E88FB0 8CD4
+E88FB1 9548
+E88FB2 E4C9
+E88FB4 E4BD
+E88FB6 FB97
+E88FB7 E4C6
+E88FBB E4D0
+E88FBD E4C1
+E89083 E4C2
+E89084 93B8
+E89087 E4C7
+E8908B E4C4
+E8908C 9647
+E8908D E4CA
+E8908E 88DE
+E89093 E4BE
+E890A0 E4CC
+E890A2 E4CB
+E890A9 948B
+E890AA E4D2
+E890AC E4DD
+E890B1 8A9E
+E890B5 E4E0
+E890B8 E4CE
+E890BC E4D3
+E890BD 978E
+E89186 E4DC
+E89188 FB98
+E89189 9774
+E8918E 97A8
+E89197 9298
+E8919B 8A8B
+E891A1 9592
+E891A2 E4E2
+E891A3 939F
+E891A6 88AF
+E891A9 E4DB
+E891AB E4D7
+E891AC 9192
+E891AD E4D1
+E891AE E4D9
+E891AF E4DE
+E891B1 944B
+E891B5 88A8
+E891B7 E4D6
+E891B9 E4DF
+E891BA 9598
+E89282 E4DA
+E89284 E4D5
+E8928B 8FD3
+E89290 8F4E
+E89294 8EAA
+E89299 96D6
+E8929C 9566
+E8929F E4E5
+E892A1 E4EE
+E892AD E4D8
+E892B2 8A97
+E892B4 FB99
+E892B8 8FF6
+E892B9 E4E3
+E892BB E4E8
+E892BC 9193
+E892BF E4E4
+E89381 E4EB
+E89384 927E
+E89386 E4EC
+E89389 9775
+E8938A E4E1
+E8938B 8A57
+E8938D E4E7
+E89390 E4EA
+E89391 96AA
+E89396 E4ED
+E89399 E4E6
+E8939A E4E9
+E8939C FA60
+E893AC 9648
+E893AE 9840
+E893B4 E4F1
+E893BC E4F8
+E893BF E4F0
+E89480 8EC1
+E89486 E4CF
+E89491 95CC
+E89493 96A0
+E89494 E4F7
+E89495 E4F6
+E89497 E4F2
+E89498 E4F3
+E8949A 8955
+E8949F E4F5
+E894A1 E4EF
+E894A6 92D3
+E894AC E4F4
+E894AD 88FC
+E894B5 91A0
+E894BD 95C1
+E89580 E4F9
+E89581 E540
+E89583 94D7
+E89588 E4FC
+E89589 8FD4
+E8958A 8EC7
+E8958B E542
+E8958E 8BBC
+E89593 FB9A
+E89595 E543
+E89597 9599
+E89598 E4FB
+E89599 FB9B
+E8959A E4D4
+E895A3 E4FA
+E895A8 986E
+E895A9 93A0
+E895AA 9593
+E895AB FB9C
+E895AD E54A
+E895B7 E550
+E895BE E551
+E89680 E544
+E89684 9496
+E89687 E54E
+E89688 E546
+E8968A E548
+E89690 E552
+E89691 E547
+E89694 E54B
+E89697 8992
+E89699 93E3
+E8969B E54C
+E8969C E54F
+E896A4 E545
+E896A6 9145
+E896A8 E549
+E896A9 8E46
+E896AA 9064
+E896AB 8C4F
+E896AC 96F2
+E896AE 96F7
+E896AF 8F92
+E896B0 FB9E
+E896B9 E556
+E896BA E554
+E89781 986D
+E89789 E553
+E8978D 9795
+E8978F E555
+E89790 E557
+E89795 E558
+E8979C E55B
+E8979D E559
+E897A4 93A1
+E897A5 E55A
+E897A9 94CB
+E897AA E54D
+E897B7 8F93
+E897B9 E55C
+E897BA E561
+E897BB 9194
+E897BE E560
+E89882 E541
+E89886 E562
+E89887 9168
+E8988A E55D
+E8988B E55F
+E89893 E55E
+E89896 9F50
+E89897 9F41
+E8989A E564
+E898A2 E563
+E898AD 9796
+E898AF E1BA
+E898B0 E565
+E898BF E566
+E8998D E567
+E8998E 8CD5
+E89990 8B73
+E89994 E569
+E89995 997C
+E8999A 8B95
+E8999C 97B8
+E8999E 8BF1
+E8999F E56A
+E899A7 E56B
+E899AB 928E
+E899B1 E56C
+E899B9 93F8
+E899BB 88B8
+E89A8A 89E1
+E89A8B E571
+E89A8C E572
+E89A93 E56D
+E89A95 8E5C
+E89AA3 E56E
+E89AA4 9461
+E89AA9 E56F
+E89AAA E570
+E89AAB E57A
+E89AAF E574
+E89AB0 E577
+E89AB6 E573
+E89B84 E575
+E89B86 E576
+E89B87 8ED6
+E89B89 E578
+E89B8B 9260
+E89B8D 8C75
+E89B8E 8A61
+E89B94 E57B
+E89B99 8A5E
+E89B9B E581
+E89B9E E57C
+E89B9F E580
+E89BA4 94B8
+E89BA9 E57D
+E89BAC E57E
+E89BAD 9567
+E89BAE 94D8
+E89BAF E582
+E89BB8 91FB
+E89BB9 E58C
+E89BBB E588
+E89BBE 89E9
+E89C80 E586
+E89C82 9649
+E89C83 E587
+E89C86 E584
+E89C88 E585
+E89C89 E58A
+E89C8A E58D
+E89C8D E58B
+E89C91 E589
+E89C92 E583
+E89C98 9277
+E89C9A E594
+E89C9C 96A8
+E89CA5 E592
+E89CA9 E593
+E89CB4 E58E
+E89CB7 E590
+E89CBB E591
+E89CBF E58F
+E89D89 90E4
+E89D8B 9858
+E89D8C E598
+E89D8E E599
+E89D93 E59F
+E89D95 9049
+E89D97 E59B
+E89D99 E59E
+E89D9F E596
+E89DA0 E595
+E89DA3 E5A0
+E89DA6 89DA
+E89DA8 E59C
+E89DAA E5A1
+E89DAE E59D
+E89DB4 E59A
+E89DB6 92B1
+E89DB8 E597
+E89DBF 9488
+E89E82 E5A5
+E89E8D 975A
+E89E9F E5A4
+E89EA2 E5A3
+E89EAB E5AC
+E89EAF E5A6
+E89EB3 E5AE
+E89EBA 9786
+E89EBB E5B1
+E89EBD E5A8
+E89F80 E5A9
+E89F84 E5AD
+E89F86 E5B0
+E89F87 E5AF
+E89F8B E5A7
+E89F90 E5AA
+E89F92 E5BB
+E89FA0 E5B4
+E89FAF E5B2
+E89FB2 E5B3
+E89FB6 E5B8
+E89FB7 E5B9
+E89FB9 8A49
+E89FBB 8B61
+E89FBE E5B7
+E8A085 E5A2
+E8A087 FBA1
+E8A08D E5B6
+E8A08E E5BA
+E8A08F E5B5
+E8A091 E5BC
+E8A095 E5BE
+E8A096 E5BD
+E8A0A1 E5C0
+E8A0A2 E5BF
+E8A0A3 E579
+E8A0A7 E5C4
+E8A0B1 E5C1
+E8A0B6 E5C2
+E8A0B9 E5C3
+E8A0BB E5C5
+E8A180 8C8C
+E8A182 E5C7
+E8A184 E5C6
+E8A186 8F4F
+E8A18C 8D73
+E8A18D 9FA5
+E8A192 E5C8
+E8A193 8F70
+E8A197 8A58
+E8A199 E5C9
+E8A19B 8971
+E8A19D 8FD5
+E8A19E E5CA
+E8A1A1 8D74
+E8A1A2 E5CB
+E8A1A3 88DF
+E8A1A8 955C
+E8A1AB E5CC
+E8A1B0 908A
+E8A1B2 E5D3
+E8A1B5 E5D0
+E8A1B7 928F
+E8A1BD E5D1
+E8A1BE E5CE
+E8A1BF 8BDC
+E8A281 E5CD
+E8A282 E5D4
+E8A288 8C55
+E8A28B 91DC
+E8A28D E5DA
+E8A292 E5D6
+E8A296 91B3
+E8A297 E5D5
+E8A299 E5D8
+E8A29E E5CF
+E8A2A2 E5D9
+E8A2A4 E5DB
+E8A2AB 94ED
+E8A2AE E5D7
+E8A2B0 E5DC
+E8A2B1 E5DE
+E8A2B4 8CD1
+E8A2B5 E5D2
+E8A2B7 88BF
+E8A2BF E5DD
+E8A381 8DD9
+E8A382 97F4
+E8A383 E5DF
+E8A384 E5E0
+E8A385 9195
+E8A38F 97A0
+E8A394 E5E1
+E8A395 9754
+E8A398 E5E2
+E8A399 E5E3
+E8A39C 95E2
+E8A39D E5E4
+E8A39F 8DBE
+E8A3A1 97A1
+E8A3A8 E5E9
+E8A3B2 E5EA
+E8A3B3 8FD6
+E8A3B4 E5E8
+E8A3B5 FBA2
+E8A3B8 9787
+E8A3B9 E5E5
+E8A3BC E5E7
+E8A3BD 90BB
+E8A3BE 909E
+E8A482 E5E6
+E8A484 E5EB
+E8A487 95A1
+E8A48A E5ED
+E8A48C E5EC
+E8A490 8A8C
+E8A492 964A
+E8A493 E5EE
+E8A49C FA5D
+E8A49D E5FA
+E8A49E E5F0
+E8A4A5 E5F1
+E8A4AA E5F2
+E8A4AB E5F3
+E8A4B6 E5F7
+E8A4B8 E5F8
+E8A4BB E5F6
+E8A581 E5F4
+E8A583 E5EF
+E8A584 E5F5
+E8A58C E5F9
+E8A58D E8B5
+E8A596 89A6
+E8A59E E5FC
+E8A59F 8BDD
+E8A5A0 E5FB
+E8A5A4 E641
+E8A5A6 E640
+E8A5AA E643
+E8A5AD E642
+E8A5AF E644
+E8A5B2 8F50
+E8A5B4 E645
+E8A5B7 E646
+E8A5BE E647
+E8A5BF 90BC
+E8A681 9776
+E8A683 E648
+E8A686 95A2
+E8A687 9465
+E8A688 E649
+E8A68A E64A
+E8A68B 8CA9
+E8A68F 8B4B
+E8A693 E64B
+E8A696 8E8B
+E8A697 9460
+E8A698 E64C
+E8A69A 8A6F
+E8A6A1 E64D
+E8A6A6 E64F
+E8A6A7 9797
+E8A6A9 E64E
+E8A6AA 9065
+E8A6AC E650
+E8A6AF E651
+E8A6B2 E652
+E8A6B3 8ACF
+E8A6BA E653
+E8A6BD E654
+E8A6BF E655
+E8A780 E656
+E8A792 8A70
+E8A79A E657
+E8A79C E658
+E8A79D E659
+E8A7A3 89F0
+E8A7A6 9047
+E8A7A7 E65A
+E8A7B4 E65B
+E8A7B8 E65C
+E8A880 8CBE
+E8A882 92F9
+E8A883 E65D
+E8A888 8C76
+E8A88A 9075
+E8A88C E660
+E8A88E 93A2
+E8A890 E65F
+E8A892 FBA3
+E8A893 8C50
+E8A896 E65E
+E8A897 91F5
+E8A898 8B4C
+E8A89B E661
+E8A89D E662
+E8A89F 8FD7
+E8A8A3 8C8D
+E8A8A5 E663
+E8A8AA 964B
+E8A8AD 90DD
+E8A8B1 8B96
+E8A8B3 96F3
+E8A8B4 9169
+E8A8B6 E664
+E8A8B7 FBA4
+E8A8BA 9066
+E8A8BB 9290
+E8A8BC 8FD8
+E8A981 E665
+E8A986 E668
+E8A988 E669
+E8A990 8DBC
+E8A991 91C0
+E8A992 E667
+E8A994 8FD9
+E8A995 955D
+E8A99B E666
+E8A99E 8E8C
+E8A9A0 8972
+E8A9A2 E66D
+E8A9A3 8C77
+E8A9A6 8E8E
+E8A9A9 8E8D
+E8A9AB 986C
+E8A9AC E66C
+E8A9AD E66B
+E8A9AE 9146
+E8A9B0 8B6C
+E8A9B1 9862
+E8A9B2 8A59
+E8A9B3 8FDA
+E8A9B9 FBA5
+E8A9BC E66A
+E8AA82 E66F
+E8AA84 E670
+E8AA85 E66E
+E8AA87 8CD6
+E8AA89 975F
+E8AA8C 8E8F
+E8AA8D 9446
+E8AA91 E673
+E8AA93 90BE
+E8AA95 9261
+E8AA98 9755
+E8AA9A E676
+E8AA9E 8CEA
+E8AAA0 90BD
+E8AAA1 E672
+E8AAA3 E677
+E8AAA4 8CEB
+E8AAA5 E674
+E8AAA6 E675
+E8AAA7 FBA6
+E8AAA8 E671
+E8AAAC 90E0
+E8AAAD 93C7
+E8AAB0 924E
+E8AAB2 89DB
+E8AAB9 94EE
+E8AABC 8B62
+E8AABE FBA7
+E8AABF 92B2
+E8AB82 E67A
+E8AB84 E678
+E8AB87 926B
+E8AB8B 90BF
+E8AB8C 8AD0
+E8AB8D E679
+E8AB8F 907A
+E8AB92 97C8
+E8AB96 985F
+E8AB9A E67B
+E8AB9B E687
+E8AB9C 92B3
+E8AB9E E686
+E8AB9F FBA8
+E8ABA0 E683
+E8ABA1 E68B
+E8ABA2 E684
+E8ABA4 E680
+E8ABA6 92FA
+E8ABA7 E67E
+E8ABAB E67C
+E8ABAD 9740
+E8ABAE 8E90
+E8ABB1 E681
+E8ABB3 E67D
+E8ABB6 FBAA
+E8ABB7 E685
+E8ABB8 8F94
+E8ABBA 8CBF
+E8ABBE 91F8
+E8AC80 9664
+E8AC81 8979
+E8AC82 88E0
+E8AC84 93A3
+E8AC87 E689
+E8AC8C E688
+E8AC8E 93E4
+E8AC90 E68D
+E8AC94 E682
+E8AC96 E68C
+E8AC97 E68E
+E8AC99 8CAA
+E8AC9A E68A
+E8AC9B 8D75
+E8AC9D 8ED3
+E8ACA0 E68F
+E8ACA1 9777
+E8ACA6 E692
+E8ACA8 E695
+E8ACAB E693
+E8ACAC 9554
+E8ACB3 E690
+E8ACB9 8BDE
+E8ACBE E694
+E8AD81 E696
+E8AD89 E69A
+E8AD8C E697
+E8AD8E E699
+E8AD8F E698
+E8AD93 FBAB
+E8AD96 E69B
+E8AD98 8EAF
+E8AD9A E69D
+E8AD9B E69C
+E8AD9C 9588
+E8AD9F E69F
+E8ADA6 8C78
+E8ADAB E69E
+E8ADAC E6A0
+E8ADAF E6A1
+E8ADB0 8B63
+E8ADB1 E3BF
+E8ADB2 8FF7
+E8ADB4 E6A2
+E8ADB7 8CEC
+E8ADBD E6A3
+E8ADBF FBAC
+E8AE80 E6A4
+E8AE83 8E5D
+E8AE8A 9DCC
+E8AE8C E6A5
+E8AE8E E6A6
+E8AE90 8F51
+E8AE92 E6A7
+E8AE93 E6A8
+E8AE96 E6A9
+E8AE99 E6AA
+E8AE9A E6AB
+E8B0B7 924A
+E8B0BA E6AC
+E8B0BF E6AE
+E8B181 E6AD
+E8B186 93A4
+E8B188 E6AF
+E8B18A 964C
+E8B18C E6B0
+E8B18E E6B1
+E8B190 E6B2
+E8B195 E6B3
+E8B19A 93D8
+E8B1A1 8FDB
+E8B1A2 E6B4
+E8B1AA 8D8B
+E8B1AB 98AC
+E8B1AC E6B5
+E8B1B8 E6B6
+E8B1B9 955E
+E8B1BA E6B7
+E8B1BC E6BF
+E8B282 E6B8
+E8B285 E6BA
+E8B289 E6B9
+E8B28A E6BB
+E8B28C 9665
+E8B28D E6BC
+E8B28E E6BD
+E8B294 E6BE
+E8B298 E6C0
+E8B29D 8A4C
+E8B29E 92E5
+E8B2A0 9589
+E8B2A1 8DE0
+E8B2A2 8D76
+E8B2A7 956E
+E8B2A8 89DD
+E8B2A9 94CC
+E8B2AA E6C3
+E8B2AB 8AD1
+E8B2AC 90D3
+E8B2AD E6C2
+E8B2AE E6C7
+E8B2AF 9299
+E8B2B0 96E1
+E8B2B2 E6C5
+E8B2B3 E6C6
+E8B2B4 8B4D
+E8B2B6 E6C8
+E8B2B7 9483
+E8B2B8 91DD
+E8B2BB 94EF
+E8B2BC 935C
+E8B2BD E6C4
+E8B2BF 9666
+E8B380 89EA
+E8B381 E6CA
+E8B382 9847
+E8B383 92C0
+E8B384 9864
+E8B387 8E91
+E8B388 E6C9
+E8B38A 91AF
+E8B38D E6DA
+E8B38E 9147
+E8B391 93F6
+E8B393 956F
+E8B39A E6CD
+E8B39B 8E5E
+E8B39C 8E92
+E8B39E 8FDC
+E8B3A0 9485
+E8B3A2 8CAB
+E8B3A3 E6CC
+E8B3A4 E6CB
+E8B3A6 958A
+E8B3AA 8EBF
+E8B3AD 9371
+E8B3B0 FBAD
+E8B3B4 FBAE
+E8B3BA E6CF
+E8B3BB E6D0
+E8B3BC 8D77
+E8B3BD E6CE
+E8B484 E6D1
+E8B485 E6D2
+E8B487 E6D4
+E8B488 91A1
+E8B48A E6D3
+E8B48B 8AE4
+E8B48D E6D6
+E8B48F E6D5
+E8B490 E6D7
+E8B492 FBAF
+E8B493 E6D9
+E8B494 E6DB
+E8B496 E6DC
+E8B5A4 90D4
+E8B5A6 8ECD
+E8B5A7 E6DD
+E8B5AB 8A71
+E8B5AD E6DE
+E8B5B0 9196
+E8B5B1 E6DF
+E8B5B3 E6E0
+E8B5B4 958B
+E8B5B6 FBB0
+E8B5B7 8B4E
+E8B681 E6E1
+E8B685 92B4
+E8B68A 897A
+E8B699 E6E2
+E8B6A3 8EEF
+E8B6A8 9096
+E8B6B3 91AB
+E8B6BA E6E5
+E8B6BE E6E4
+E8B782 E6E3
+E8B78B E6EB
+E8B78C E6E9
+E8B78F E6E6
+E8B796 E6E8
+E8B79A E6E7
+E8B79B E6EA
+E8B79D 8B97
+E8B79F E6EE
+E8B7A1 90D5
+E8B7A3 E6EF
+E8B7A8 8CD7
+E8B7AA E6EC
+E8B7AB E6ED
+E8B7AF 9848
+E8B7B3 92B5
+E8B7B5 9148
+E8B7BC E6F0
+E8B7BF E6F3
+E8B888 E6F1
+E8B889 E6F2
+E8B88A 9778
+E8B88F 93A5
+E8B890 E6F6
+E8B89D E6F4
+E8B89E E6F5
+E8B89F E6F7
+E8B8AA E748
+E8B8B0 E6FA
+E8B8B4 E6FB
+E8B8B5 E6F9
+E8B982 E6F8
+E8B984 92FB
+E8B987 E740
+E8B988 E744
+E8B989 E741
+E8B98A E6FC
+E8B98C E742
+E8B990 E743
+E8B995 E74A
+E8B999 E745
+E8B99F 90D6
+E8B9A0 E747
+E8B9A3 E749
+E8B9A4 E746
+E8B9B2 E74C
+E8B9B4 8F52
+E8B9B6 E74B
+E8B9BC E74D
+E8BA81 E74E
+E8BA84 E751
+E8BA85 E750
+E8BA87 E74F
+E8BA8A E753
+E8BA8B E752
+E8BA8D 96F4
+E8BA91 E755
+E8BA93 E754
+E8BA94 E756
+E8BA99 E757
+E8BAA1 E759
+E8BAAA E758
+E8BAAB 9067
+E8BAAC E75A
+E8BAAF 8BEB
+E8BAB0 E75B
+E8BAB1 E75D
+E8BABE E75E
+E8BB85 E75F
+E8BB86 E75C
+E8BB88 E760
+E8BB8A 8ED4
+E8BB8B E761
+E8BB8C 8B4F
+E8BB8D 8C52
+E8BB8F FBB2
+E8BB92 8CAC
+E8BB9B E762
+E8BB9F 93EE
+E8BBA2 935D
+E8BBA3 E763
+E8BBAB E766
+E8BBB8 8EB2
+E8BBBB E765
+E8BBBC E764
+E8BBBD 8C79
+E8BBBE E767
+E8BC83 8A72
+E8BC85 E769
+E8BC89 8DDA
+E8BC8A E768
+E8BC8C E771
+E8BC92 E76B
+E8BC93 E76D
+E8BC94 95E3
+E8BC95 E76A
+E8BC99 E76C
+E8BC9B E770
+E8BC9C E76E
+E8BC9D 8B50
+E8BC9F E76F
+E8BCA6 E772
+E8BCA9 9479
+E8BCAA 97D6
+E8BCAF 8F53
+E8BCB3 E773
+E8BCB8 9741
+E8BCB9 E775
+E8BCBB E774
+E8BCBE E778
+E8BCBF 9760
+E8BD82 E777
+E8BD84 8A8D
+E8BD85 E776
+E8BD86 E77B
+E8BD89 E77A
+E8BD8C E779
+E8BD8D 9351
+E8BD8E E77C
+E8BD97 E77D
+E8BD9C E77E
+E8BD9F 8D8C
+E8BDA1 8C44
+E8BDA2 E780
+E8BDA3 E781
+E8BDA4 E782
+E8BE9B 9068
+E8BE9C E783
+E8BE9E 8EAB
+E8BE9F E784
+E8BEA3 E785
+E8BEA7 999F
+E8BEA8 999E
+E8BEAD E786
+E8BEAE E390
+E8BEAF E787
+E8BEB0 9243
+E8BEB1 904A
+E8BEB2 945F
+E8BEB7 E788
+E8BEBA 95D3
+E8BEBB 92D2
+E8BEBC 8D9E
+E8BEBF 9248
+E8BF82 8949
+E8BF84 9698
+E8BF85 9076
+E8BF8E 8C7D
+E8BF91 8BDF
+E8BF94 95D4
+E8BF9A E789
+E8BFA2 E78B
+E8BFA5 E78A
+E8BFA6 89DE
+E8BFA9 93F4
+E8BFAA E78C
+E8BFAB 9497
+E8BFAD 9352
+E8BFAF E78D
+E8BFB0 8F71
+E8BFB4 E78F
+E8BFB7 96C0
+E8BFB8 E79E
+E8BFB9 E791
+E8BFBA E792
+E8BFBD 92C7
+E98080 91DE
+E98081 9197
+E98083 93A6
+E98085 E790
+E98086 8B74
+E9808B E799
+E9808D E796
+E9808E E7A3
+E9808F 93A7
+E98090 9280
+E98091 E793
+E98093 92FC
+E98094 9372
+E98095 E794
+E98096 E798
+E98097 9080
+E98099 9487
+E9809A 92CA
+E9809D 90C0
+E9809E E797
+E9809F 91AC
+E980A0 91A2
+E980A1 E795
+E980A2 88A7
+E980A3 9841
+E980A7 E79A
+E980AE 91DF
+E980B1 8F54
+E980B2 9069
+E980B5 E79C
+E980B6 E79B
+E980B8 88ED
+E980B9 E79D
+E980BC 954E
+E980BE E7A5
+E98181 93D9
+E98182 908B
+E98185 9278
+E98187 8BF6
+E98189 E7A4
+E9818A 9756
+E9818B 895E
+E9818D 95D5
+E9818E 89DF
+E9818F E79F
+E98190 E7A0
+E98191 E7A1
+E98192 E7A2
+E98193 93B9
+E98194 9242
+E98195 88E1
+E98196 E7A6
+E98198 E7A7
+E98199 EAA1
+E9819C 91BB
+E9819E E7A8
+E981A0 8993
+E981A1 916B
+E981A3 8CAD
+E981A5 9779
+E981A7 FBB5
+E981A8 E7A9
+E981A9 934B
+E981AD 9198
+E981AE 8ED5
+E981AF E7AA
+E981B2 E7AD
+E981B5 8F85
+E981B6 E7AB
+E981B7 914A
+E981B8 9149
+E981BA 88E2
+E981BC 97C9
+E981BD E7AF
+E981BF 94F0
+E98280 E7B1
+E98281 E7B0
+E98282 E7AE
+E98283 E284
+E98284 8AD2
+E98287 E78E
+E98289 E7B3
+E9828A E7B2
+E9828F E7B4
+E98291 9757
+E982A3 93DF
+E982A6 964D
+E982A8 E7B5
+E982AA 8ED7
+E982AF E7B6
+E982B1 E7B7
+E982B5 E7B8
+E982B8 9340
+E98381 88E8
+E9838A 8D78
+E9838E 9859
+E9839B E7BC
+E9839E FBB6
+E983A1 8C53
+E983A2 E7B9
+E983A4 E7BA
+E983A8 9594
+E983AD 8A73
+E983B5 9758
+E983B7 8BBD
+E983BD 9373
+E98482 E7BD
+E98492 E7BE
+E98495 FBB8
+E98499 E7BF
+E984A7 FBB9
+E984AD 9341
+E984B0 E7C1
+E984B2 E7C0
+E98589 93D1
+E9858A E7C2
+E9858B 8F55
+E9858C 8EDE
+E9858D 947A
+E9858E 9291
+E98592 8EF0
+E98594 908C
+E98596 E7C3
+E98598 E7C4
+E985A2 907C
+E985A3 E7C5
+E985A5 E7C6
+E985A9 E7C7
+E985AA 978F
+E985AC 8F56
+E985B2 E7C9
+E985B3 E7C8
+E985B5 8D79
+E985B7 8D93
+E985B8 8E5F
+E98682 E7CC
+E98687 8F86
+E98689 E7CB
+E9868B E7CA
+E9868D 91E7
+E98690 8CED
+E98692 90C1
+E98697 94AE
+E9869C 8F58
+E986A2 E7CD
+E986A4 8FDD
+E986AA E7D0
+E986AB E7CE
+E986AF E7CF
+E986B4 E7D2
+E986B5 E7D1
+E986B8 8FF8
+E986BA E7D3
+E98780 E7D4
+E98781 E7D5
+E98786 94CE
+E98787 8DD1
+E98788 8EDF
+E98789 E7D6
+E9878B E7D7
+E9878C 97A2
+E9878D 8F64
+E9878E 96EC
+E9878F 97CA
+E98790 E7D8
+E98791 8BE0
+E98796 E7D9
+E98797 FBBB
+E98798 9342
+E9879A FBBA
+E9879B E7DC
+E9879C 8A98
+E9879D 906A
+E9879E FBBC
+E9879F E7DA
+E987A1 E7DB
+E987A3 92DE
+E987A4 FBBF
+E987A5 FBC0
+E987A6 9674
+E987A7 8BFA
+E987AD FBBD
+E987AE FBBE
+E987B5 E7DE
+E987B6 E7DF
+E987BC E7DD
+E987BF E7E1
+E98886 FBC1
+E9888A FBC3
+E9888D 93DD
+E9888E 8A62
+E98890 FBC2
+E98891 E7E5
+E98894 E7E2
+E98895 E7E4
+E9889E E7E0
+E988A9 E86E
+E988AC E7E3
+E988B4 97E9
+E988B7 8CD8
+E988B9 FBCA
+E988BA FBC4
+E988BC FBC6
+E988BF E7ED
+E98980 FBC5
+E98984 9353
+E98985 E7E8
+E98988 E7EB
+E98989 E7E9
+E9898B E7EE
+E9898E FBC7
+E98990 E7EF
+E98991 FBC9
+E98997 E7E7
+E98999 FBC8
+E9899A E7F4
+E9899B 8994
+E9899E E7E6
+E989A2 94AB
+E989A4 E7EA
+E989A6 8FDE
+E989A7 FBCB
+E989B1 8D7A
+E989B7 FBCD
+E989B8 FBCE
+E989BE 9667
+E98A80 8BE2
+E98A83 8F65
+E98A85 93BA
+E98A88 FA5F
+E98A91 914C
+E98A93 E7F2
+E98A95 E7EC
+E98A96 E7F1
+E98A98 96C1
+E98A9A 92B6
+E98A9B E7F3
+E98A9C E7F0
+E98AA7 FBCC
+E98AAD 914B
+E98AB7 E7F7
+E98AB9 E7F6
+E98B8F E7F5
+E98B90 FBD2
+E98B92 964E
+E98B93 FBD6
+E98B95 FBD4
+E98B97 FBD0
+E98B99 FBD1
+E98BA0 FBD5
+E98BA4 8F9B
+E98BA7 FBCF
+E98BA9 E7F8
+E98BAA 95DD
+E98BAD 8973
+E98BB2 9565
+E98BB3 9292
+E98BB8 8B98
+E98BB9 FA65
+E98BBA E7FA
+E98BBB FBD9
+E98BBC 8D7C
+E98BBF FBDC
+E98C82 FBDE
+E98C86 8E4B
+E98C8F E7F9
+E98C90 908D
+E98C98 908E
+E98C99 E840
+E98C9A E842
+E98C9D FBDD
+E98C9E FBDB
+E98CA0 8FF9
+E98CA1 FBD8
+E98CA2 E841
+E98CA3 E843
+E98CA5 FBD7
+E98CA6 8BD1
+E98CA8 9564
+E98CAB 8EE0
+E98CAC 9842
+E98CAE E7FC
+E98CAF 8DF6
+E98CB2 985E
+E98CB5 E845
+E98CBA E844
+E98CBB E846
+E98D84 E7FB
+E98D88 FA5E
+E98D8B 93E7
+E98D8D 9374
+E98D94 92D5
+E98D96 E84B
+E98D97 FBE0
+E98D9B 9262
+E98D9C E847
+E98DA0 E848
+E98DAC 8C4C
+E98DAE E84A
+E98DB0 FBDF
+E98DB5 8CAE
+E98DBC E849
+E98DBE 8FDF
+E98E8C 8A99
+E98E94 E84F
+E98E96 8DBD
+E98E97 9199
+E98E9A 92C8
+E98EA4 FBE1
+E98EA7 8A5A
+E98EAC E84D
+E98EAD E84E
+E98EAE 92C1
+E98EB0 E84C
+E98EB9 E850
+E98F83 E856
+E98F86 FBE2
+E98F88 E859
+E98F90 E858
+E98F91 934C
+E98F96 E851
+E98F97 E852
+E98F98 E855
+E98F9D E857
+E98F9E FBE3
+E98FA1 8BBE
+E98FA4 E85A
+E98FA5 E854
+E98FA8 E853
+E98FB8 FBE4
+E99083 E85E
+E99087 E85F
+E99090 E860
+E99093 E85D
+E99094 E85C
+E99098 8FE0
+E99099 93A8
+E9909A E85B
+E990A1 E864
+E990AB E862
+E990B1 FBE5
+E990B5 E863
+E990B6 E861
+E990B8 91F6
+E990BA E865
+E99181 E866
+E99184 E868
+E99185 FBE6
+E99188 FBE7
+E99191 8AD3
+E99192 E867
+E99193 96F8
+E9919A E873
+E9919B E869
+E9919E E86C
+E991A0 E86A
+E991A2 E86B
+E991AA E86D
+E991B0 E86F
+E991B5 E870
+E991B7 E871
+E991BC E874
+E991BD E872
+E991BE E875
+E991BF E877
+E99281 E876
+E995B7 92B7
+E99680 96E5
+E99682 E878
+E99683 914D
+E99687 E879
+E99689 95C2
+E9968A E87A
+E9968B 8A4A
+E9968F 895B
+E99691 8AD5
+E99692 FBE8
+E99693 8AD4
+E99694 E87B
+E99696 E87C
+E99698 E87D
+E99699 E87E
+E996A0 E880
+E996A2 8AD6
+E996A3 8A74
+E996A4 8D7D
+E996A5 94B4
+E996A7 E882
+E996A8 E881
+E996AD E883
+E996B2 897B
+E996B9 E886
+E996BB E885
+E996BC E884
+E996BE E887
+E99783 E88A
+E99787 88C5
+E9978A E888
+E9978C E88C
+E9978D E88B
+E99794 E88E
+E99795 E88D
+E99796 E88F
+E99798 93AC
+E9979C E890
+E997A1 E891
+E997A2 E893
+E997A5 E892
+E9989C 958C
+E998A1 E894
+E998A8 E895
+E998AA 8DE3
+E998AE E896
+E998AF E897
+E998B2 9668
+E998BB 916A
+E998BF 88A2
+E99980 91C9
+E99982 E898
+E99984 958D
+E9998B E89B
+E9998C E899
+E9998D 8D7E
+E9998F E89A
+E99990 8CC0
+E9999B 95C3
+E9999C E89D
+E9999D E89F
+E9999E E89E
+E9999F E8A0
+E999A2 8940
+E999A3 9077
+E999A4 8F9C
+E999A5 8AD7
+E999A6 E8A1
+E999AA 9486
+E999AC E8A3
+E999B0 8941
+E999B2 E8A2
+E999B3 92C2
+E999B5 97CB
+E999B6 93A9
+E999B7 E89C
+E999B8 97A4
+E999BA 8CAF
+E999BD 977A
+E99A85 8BF7
+E99A86 97B2
+E99A88 8C47
+E99A8A 91E0
+E99A8B E440
+E99A8D E8A4
+E99A8E 8A4B
+E99A8F 908F
+E99A94 8A75
+E99A95 E8A6
+E99A97 E8A7
+E99A98 E8A5
+E99A99 8C84
+E99A9B 8DDB
+E99A9C 8FE1
+E99A9D FBEB
+E99AA0 8942
+E99AA3 97D7
+E99AA7 E8A9
+E99AA8 E7AC
+E99AAA E8A8
+E99AAF FBEC
+E99AB0 E8AC
+E99AB1 E8AA
+E99AB2 E8AB
+E99AB4 E8AD
+E99AB6 E8AE
+E99AB7 97EA
+E99AB8 E8AF
+E99AB9 E8B0
+E99ABB 90C7
+E99ABC 94B9
+E99B80 909D
+E99B81 8AE5
+E99B84 9759
+E99B85 89EB
+E99B86 8F57
+E99B87 8CD9
+E99B89 E8B3
+E99B8B E8B2
+E99B8C 8E93
+E99B8D E8B4
+E99B8E E8B1
+E99B91 8E47
+E99B95 E8B8
+E99B96 E5AB
+E99B99 99D4
+E99B9B 9097
+E99B9C E8B6
+E99BA2 97A3
+E99BA3 93EF
+E99BA8 894A
+E99BAA 90E1
+E99BAB 8EB4
+E99BB0 95B5
+E99BB2 895F
+E99BB6 97EB
+E99BB7 978B
+E99BB9 E8B9
+E99BBB 9364
+E99C80 8EF9
+E99C84 E8BA
+E99C86 E8BB
+E99C87 906B
+E99C88 E8BC
+E99C8A 97EC
+E99C8D E8B7
+E99C8E E8BE
+E99C8F E8C0
+E99C91 E8BF
+E99C93 E8BD
+E99C96 E8C1
+E99C99 E8C2
+E99C9C 919A
+E99C9E 89E0
+E99CA4 E8C3
+E99CA7 96B6
+E99CAA E8C4
+E99CB0 E8C5
+E99CB2 9849
+E99CB3 FBED
+E99CB8 9E50
+E99CB9 E8C6
+E99CBB FBEE
+E99CBD E8C7
+E99CBE E8C8
+E99D82 E8CC
+E99D83 FBEF
+E99D84 E8C9
+E99D86 E8CA
+E99D88 E8CB
+E99D89 E8CD
+E99D8D FBF0
+E99D8F FBF1
+E99D91 FBF2
+E99D92 90C2
+E99D95 FBF3
+E99D96 96F5
+E99D99 90C3
+E99D9C E8CE
+E99D9E 94F1
+E99DA0 E8CF
+E99DA1 EA72
+E99DA2 96CA
+E99DA4 E8D0
+E99DA6 E8D1
+E99DA8 E8D2
+E99DA9 8A76
+E99DAB E8D4
+E99DAD 9078
+E99DB1 E8D5
+E99DB4 8C43
+E99DB9 E8D6
+E99DBA E8DA
+E99DBC E8D8
+E99E81 E8D9
+E99E84 8A93
+E99E85 E8D7
+E99E86 E8DB
+E99E8B E8DC
+E99E8D 88C6
+E99E8F E8DD
+E99E90 E8DE
+E99E98 8FE2
+E99E9C E8DF
+E99EA0 8B66
+E99EA3 E8E2
+E99EA6 E8E1
+E99EA8 E8E0
+E99EAB E691
+E99EAD 95DA
+E99EB3 E8E3
+E99EB4 E8E4
+E99F83 E8E5
+E99F86 E8E6
+E99F88 E8E7
+E99F8B E8E8
+E99F93 8AD8
+E99F9C E8E9
+E99FAD E8EA
+E99FAE 9442
+E99FB2 E8EC
+E99FB3 89B9
+E99FB5 E8EF
+E99FB6 E8EE
+E99FBB 8943
+E99FBF 8BBF
+E9A081 95C5
+E9A082 92B8
+E9A083 8DA0
+E9A085 8D80
+E9A086 8F87
+E9A088 907B
+E9A08C E8F1
+E9A08F E8F0
+E9A090 9761
+E9A091 8AE6
+E9A092 94D0
+E9A093 93DA
+E9A097 909C
+E9A098 97CC
+E9A09A 8C7A
+E9A0A1 E8F4
+E9A0A4 E8F3
+E9A0AC 966A
+E9A0AD 93AA
+E9A0B4 896F
+E9A0B7 E8F5
+E9A0B8 E8F2
+E9A0BB 9570
+E9A0BC 978A
+E9A0BD E8F6
+E9A186 E8F7
+E9A18B E8F9
+E9A18C 91E8
+E9A18D 8A7A
+E9A18E 8A7B
+E9A18F E8F8
+E9A194 8AE7
+E9A195 8CB0
+E9A197 FBF4
+E9A198 8AE8
+E9A19B 935E
+E9A19E 97DE
+E9A1A5 FBF5
+E9A1A7 8CDA
+E9A1AB E8FA
+E9A1AF E8FB
+E9A1B0 E8FC
+E9A1B1 E940
+E9A1B3 E942
+E9A1B4 E941
+E9A2A8 9597
+E9A2AA E943
+E9A2AF E944
+E9A2B1 E945
+E9A2B6 E946
+E9A383 E948
+E9A384 E947
+E9A386 E949
+E9A39B 94F2
+E9A39C E3CA
+E9A39F 9048
+E9A3A2 8B51
+E9A3A9 E94A
+E9A3AB E94B
+E9A3AD 99AA
+E9A3AE 9F5A
+E9A3AF 94D1
+E9A3B2 88F9
+E9A3B4 88B9
+E9A3BC 8E94
+E9A3BD 964F
+E9A3BE 8FFC
+E9A483 E94C
+E9A485 96DD
+E9A489 E94D
+E9A48A 977B
+E9A48C 8961
+E9A490 8E60
+E9A492 E94E
+E9A493 89EC
+E9A494 E94F
+E9A498 E950
+E9A49D E952
+E9A49E E953
+E9A4A0 E955
+E9A4A1 E951
+E9A4A4 E954
+E9A4A7 FBF8
+E9A4A8 8AD9
+E9A4AC E956
+E9A4AE E957
+E9A4BD E958
+E9A4BE E959
+E9A582 E95A
+E9A585 E95C
+E9A589 E95B
+E9A58B E95E
+E9A58C E961
+E9A590 E95D
+E9A591 E95F
+E9A592 E960
+E9A595 E962
+E9A597 8BC0
+E9A696 8EF1
+E9A697 E963
+E9A698 E964
+E9A699 8D81
+E9A69E FBFA
+E9A6A5 E965
+E9A6A8 8A5D
+E9A6AC 946E
+E9A6AD E966
+E9A6AE E967
+E9A6B3 9279
+E9A6B4 93E9
+E9A6BC E968
+E9A781 949D
+E9A784 91CA
+E9A785 8977
+E9A786 8BEC
+E9A788 8BED
+E9A790 9293
+E9A791 E96D
+E9A792 8BEE
+E9A795 89ED
+E9A798 E96C
+E9A79B E96A
+E9A79D E96B
+E9A79F E969
+E9A7A2 E977
+E9A7AD E96E
+E9A7AE E96F
+E9A7B1 E970
+E9A7B2 E971
+E9A7B8 E973
+E9A7BB E972
+E9A7BF 8F78
+E9A881 E974
+E9A885 E976
+E9A88E 8B52
+E9A88F E975
+E9A892 919B
+E9A893 8CB1
+E9A899 E978
+E9A8A8 91CB
+E9A8AB E979
+E9A8B0 93AB
+E9A8B7 E97A
+E9A8BE E980
+E9A980 E97D
+E9A982 E97C
+E9A983 E97E
+E9A985 E97B
+E9A98D E982
+E9A98E FBFB
+E9A995 E981
+E9A997 E984
+E9A99A 8BC1
+E9A99B E983
+E9A99F E985
+E9A9A2 E986
+E9A9A4 E988
+E9A9A5 E987
+E9A9A9 E989
+E9A9AA E98B
+E9A9AB E98A
+E9AAA8 8D9C
+E9AAAD E98C
+E9AAB0 E98D
+E9AAB8 8A5B
+E9AABC E98E
+E9AB80 E98F
+E9AB84 9091
+E9AB8F E990
+E9AB91 E991
+E9AB93 E992
+E9AB94 E993
+E9AB98 8D82
+E9AB99 FBFC
+E9AB9C FC40
+E9AB9E E994
+E9AB9F E995
+E9ABA2 E996
+E9ABA3 E997
+E9ABA6 E998
+E9ABAA 94AF
+E9ABAB E99A
+E9ABAD 9545
+E9ABAE E99B
+E9ABAF E999
+E9ABB1 E99D
+E9ABB4 E99C
+E9ABB7 E99E
+E9ABBB E99F
+E9AC86 E9A0
+E9AC98 E9A1
+E9AC9A E9A2
+E9AC9F E9A3
+E9ACA2 E9A4
+E9ACA3 E9A5
+E9ACA5 E9A6
+E9ACA7 E9A7
+E9ACA8 E9A8
+E9ACA9 E9A9
+E9ACAA E9AA
+E9ACAE E9AB
+E9ACAF E9AC
+E9ACB1 9F54
+E9ACB2 E9AD
+E9ACBB E2F6
+E9ACBC 8B53
+E9AD81 8A40
+E9AD82 8DB0
+E9AD83 E9AF
+E9AD84 E9AE
+E9AD85 96A3
+E9AD8D E9B1
+E9AD8E E9B2
+E9AD8F E9B0
+E9AD91 E9B3
+E9AD94 9682
+E9AD98 E9B4
+E9AD9A 8B9B
+E9ADAF 9844
+E9ADB2 FC42
+E9ADB4 E9B5
+E9ADB5 FC41
+E9AE83 E9B7
+E9AE8E 88BC
+E9AE8F FC43
+E9AE91 E9B8
+E9AE92 95A9
+E9AE93 E9B6
+E9AE96 E9B9
+E9AE97 E9BA
+E9AE9F E9BB
+E9AEA0 E9BC
+E9AEA8 E9BD
+E9AEAA 968E
+E9AEAB 8E4C
+E9AEAD 8DF8
+E9AEAE 914E
+E9AEB1 FC44
+E9AEB4 E9BE
+E9AEB9 E9C1
+E9AEBB FC45
+E9AF80 E9BF
+E9AF86 E9C2
+E9AF89 8CEF
+E9AF8A E9C0
+E9AF8F E9C3
+E9AF91 E9C4
+E9AF92 E9C5
+E9AF94 E9C9
+E9AF96 8E49
+E9AF9B 91E2
+E9AFA1 E9CA
+E9AFA2 E9C7
+E9AFA3 E9C6
+E9AFA4 E9C8
+E9AFA8 8C7E
+E9AFB0 E9CE
+E9AFB1 E9CD
+E9AFB2 E9CC
+E9AFB5 88B1
+E9B080 FC46
+E9B084 E9D8
+E9B086 E9D4
+E9B088 E9D5
+E9B089 E9D1
+E9B08A E9D7
+E9B08C E9D3
+E9B08D 8A82
+E9B090 986B
+E9B092 E9D6
+E9B093 E9D2
+E9B094 E9D0
+E9B095 E9CF
+E9B09B E9DA
+E9B0A1 E9DD
+E9B0A4 E9DC
+E9B0A5 E9DB
+E9B0AD 9568
+E9B0AE E9D9
+E9B0AF 88F1
+E9B0B0 E9DE
+E9B0B2 E9E0
+E9B0B9 8A8F
+E9B0BA E9CB
+E9B0BB 8956
+E9B0BE E9E2
+E9B186 E9E1
+E9B187 E9DF
+E9B188 924C
+E9B192 9690
+E9B197 97D8
+E9B19A E9E3
+E9B1A0 E9E4
+E9B1A7 E9E5
+E9B1B6 E9E6
+E9B1B8 E9E7
+E9B3A5 92B9
+E9B3A7 E9E8
+E9B3A9 94B5
+E9B3AB E9ED
+E9B3AC E9E9
+E9B3B0 E9EA
+E9B3B3 9650
+E9B3B4 96C2
+E9B3B6 93CE
+E9B483 E9EE
+E9B486 E9EF
+E9B487 93BC
+E9B488 E9EC
+E9B489 E9EB
+E9B48E 89A8
+E9B492 E9F7
+E9B495 E9F6
+E9B49B 8995
+E9B49F E9F4
+E9B4A3 E9F3
+E9B4A6 E9F1
+E9B4A8 8A9B
+E9B4AA E9F0
+E9B4AB 8EB0
+E9B4AC 89A7
+E9B4BB 8D83
+E9B4BE E9FA
+E9B4BF E9F9
+E9B581 E9F8
+E9B584 E9F5
+E9B586 E9FB
+E9B588 E9FC
+E9B590 EA44
+E9B591 EA43
+E9B599 EA45
+E9B59C 894C
+E9B59D EA40
+E9B59E EA41
+E9B5A0 8D94
+E9B5A1 96B7
+E9B5A4 EA42
+E9B5AB FC48
+E9B5AC 9651
+E9B5AF EA4A
+E9B5B0 FC47
+E9B5B2 EA46
+E9B5BA EA4B
+E9B687 EA48
+E9B689 EA47
+E9B68F 8C7B
+E9B69A EA4C
+E9B6A4 EA4D
+E9B6A9 EA4E
+E9B6AB EA49
+E9B6AF E9F2
+E9B6B2 EA4F
+E9B6B4 92DF
+E9B6B8 EA53
+E9B6BA EA54
+E9B6BB EA52
+E9B781 EA51
+E9B782 EA57
+E9B784 EA50
+E9B786 EA55
+E9B78F EA56
+E9B793 EA59
+E9B799 EA58
+E9B7A6 EA5B
+E9B7AD EA5C
+E9B7AF EA5D
+E9B7B2 9868
+E9B7B8 EA5A
+E9B7B9 91E9
+E9B7BA 8DEB
+E9B7BD EA5E
+E9B899 FC4A
+E9B89A EA5F
+E9B89B EA60
+E9B89E EA61
+E9B9B5 EA62
+E9B9B8 8CB2
+E9B9B9 EA63
+E9B9BD EA64
+E9B9BF 8EAD
+E9BA81 EA65
+E9BA88 EA66
+E9BA8B EA67
+E9BA8C EA68
+E9BA91 EA6B
+E9BA92 EA69
+E9BA93 985B
+E9BA95 EA6A
+E9BA97 97ED
+E9BA9D EA6C
+E9BA9F 97D9
+E9BAA5 EA6D
+E9BAA6 949E
+E9BAA9 EA6E
+E9BAAA EA70
+E9BAAD EA71
+E9BAB8 EA6F
+E9BAB9 8D8D
+E9BABA 96CB
+E9BABB 9683
+E9BABC 9BF5
+E9BABE 9F80
+E9BABF 969B
+E9BB84 89A9
+E9BB8C EA73
+E9BB8D 8B6F
+E9BB8E EA74
+E9BB8F EA75
+E9BB90 EA76
+E9BB91 FC4B
+E9BB92 8D95
+E9BB94 EA77
+E9BB98 E0D2
+E9BB99 96D9
+E9BB9B 91E1
+E9BB9C EA78
+E9BB9D EA7A
+E9BB9E EA79
+E9BBA0 EA7B
+E9BBA5 EA7C
+E9BBA8 EA7D
+E9BBAF EA7E
+E9BBB4 EA80
+E9BBB6 EA81
+E9BBB7 EA82
+E9BBB9 EA83
+E9BBBB EA84
+E9BBBC EA85
+E9BBBD EA86
+E9BC87 EA87
+E9BC88 EA88
+E9BC8E 9343
+E9BC93 8CDB
+E9BC95 EA8A
+E9BCA0 916C
+E9BCA1 EA8B
+E9BCAC EA8C
+E9BCBB 9540
+E9BCBE EA8D
+E9BD8A EA8E
+E9BD8B E256
+E9BD8E E6D8
+E9BD8F E8EB
+E9BD92 EA8F
+E9BD94 EA90
+E9BD9F EA92
+E9BDA0 EA93
+E9BDA1 EA94
+E9BDA2 97EE
+E9BDA3 EA91
+E9BDA6 EA95
+E9BDA7 EA96
+E9BDAA EA98
+E9BDAC EA97
+E9BDB2 EA9A
+E9BDB6 EA9B
+E9BDB7 EA99
+E9BE8D 97B4
+E9BE95 EA9C
+E9BE9C EA9D
+E9BE9D E273
+E9BEA0 EA9E
+EE8080 F040
+EE8081 F041
+EE8082 F042
+EE8083 F043
+EE8084 F044
+EE8085 F045
+EE8086 F046
+EE8087 F047
+EE8088 F048
+EE8089 F049
+EE808A F04A
+EE808B F04B
+EE808C F04C
+EE808D F04D
+EE808E F04E
+EE808F F04F
+EE8090 F050
+EE8091 F051
+EE8092 F052
+EE8093 F053
+EE8094 F054
+EE8095 F055
+EE8096 F056
+EE8097 F057
+EE8098 F058
+EE8099 F059
+EE809A F05A
+EE809B F05B
+EE809C F05C
+EE809D F05D
+EE809E F05E
+EE809F F05F
+EE80A0 F060
+EE80A1 F061
+EE80A2 F062
+EE80A3 F063
+EE80A4 F064
+EE80A5 F065
+EE80A6 F066
+EE80A7 F067
+EE80A8 F068
+EE80A9 F069
+EE80AA F06A
+EE80AB F06B
+EE80AC F06C
+EE80AD F06D
+EE80AE F06E
+EE80AF F06F
+EE80B0 F070
+EE80B1 F071
+EE80B2 F072
+EE80B3 F073
+EE80B4 F074
+EE80B5 F075
+EE80B6 F076
+EE80B7 F077
+EE80B8 F078
+EE80B9 F079
+EE80BA F07A
+EE80BB F07B
+EE80BC F07C
+EE80BD F07D
+EE80BE F07E
+EE80BF F080
+EE8180 F081
+EE8181 F082
+EE8182 F083
+EE8183 F084
+EE8184 F085
+EE8185 F086
+EE8186 F087
+EE8187 F088
+EE8188 F089
+EE8189 F08A
+EE818A F08B
+EE818B F08C
+EE818C F08D
+EE818D F08E
+EE818E F08F
+EE818F F090
+EE8190 F091
+EE8191 F092
+EE8192 F093
+EE8193 F094
+EE8194 F095
+EE8195 F096
+EE8196 F097
+EE8197 F098
+EE8198 F099
+EE8199 F09A
+EE819A F09B
+EE819B F09C
+EE819C F09D
+EE819D F09E
+EE819E F09F
+EE819F F0A0
+EE81A0 F0A1
+EE81A1 F0A2
+EE81A2 F0A3
+EE81A3 F0A4
+EE81A4 F0A5
+EE81A5 F0A6
+EE81A6 F0A7
+EE81A7 F0A8
+EE81A8 F0A9
+EE81A9 F0AA
+EE81AA F0AB
+EE81AB F0AC
+EE81AC F0AD
+EE81AD F0AE
+EE81AE F0AF
+EE81AF F0B0
+EE81B0 F0B1
+EE81B1 F0B2
+EE81B2 F0B3
+EE81B3 F0B4
+EE81B4 F0B5
+EE81B5 F0B6
+EE81B6 F0B7
+EE81B7 F0B8
+EE81B8 F0B9
+EE81B9 F0BA
+EE81BA F0BB
+EE81BB F0BC
+EE81BC F0BD
+EE81BD F0BE
+EE81BE F0BF
+EE81BF F0C0
+EE8280 F0C1
+EE8281 F0C2
+EE8282 F0C3
+EE8283 F0C4
+EE8284 F0C5
+EE8285 F0C6
+EE8286 F0C7
+EE8287 F0C8
+EE8288 F0C9
+EE8289 F0CA
+EE828A F0CB
+EE828B F0CC
+EE828C F0CD
+EE828D F0CE
+EE828E F0CF
+EE828F F0D0
+EE8290 F0D1
+EE8291 F0D2
+EE8292 F0D3
+EE8293 F0D4
+EE8294 F0D5
+EE8295 F0D6
+EE8296 F0D7
+EE8297 F0D8
+EE8298 F0D9
+EE8299 F0DA
+EE829A F0DB
+EE829B F0DC
+EE829C F0DD
+EE829D F0DE
+EE829E F0DF
+EE829F F0E0
+EE82A0 F0E1
+EE82A1 F0E2
+EE82A2 F0E3
+EE82A3 F0E4
+EE82A4 F0E5
+EE82A5 F0E6
+EE82A6 F0E7
+EE82A7 F0E8
+EE82A8 F0E9
+EE82A9 F0EA
+EE82AA F0EB
+EE82AB F0EC
+EE82AC F0ED
+EE82AD F0EE
+EE82AE F0EF
+EE82AF F0F0
+EE82B0 F0F1
+EE82B1 F0F2
+EE82B2 F0F3
+EE82B3 F0F4
+EE82B4 F0F5
+EE82B5 F0F6
+EE82B6 F0F7
+EE82B7 F0F8
+EE82B8 F0F9
+EE82B9 F0FA
+EE82BA F0FB
+EE82BB F0FC
+EE82BC F140
+EE82BD F141
+EE82BE F142
+EE82BF F143
+EE8380 F144
+EE8381 F145
+EE8382 F146
+EE8383 F147
+EE8384 F148
+EE8385 F149
+EE8386 F14A
+EE8387 F14B
+EE8388 F14C
+EE8389 F14D
+EE838A F14E
+EE838B F14F
+EE838C F150
+EE838D F151
+EE838E F152
+EE838F F153
+EE8390 F154
+EE8391 F155
+EE8392 F156
+EE8393 F157
+EE8394 F158
+EE8395 F159
+EE8396 F15A
+EE8397 F15B
+EE8398 F15C
+EE8399 F15D
+EE839A F15E
+EE839B F15F
+EE839C F160
+EE839D F161
+EE839E F162
+EE839F F163
+EE83A0 F164
+EE83A1 F165
+EE83A2 F166
+EE83A3 F167
+EE83A4 F168
+EE83A5 F169
+EE83A6 F16A
+EE83A7 F16B
+EE83A8 F16C
+EE83A9 F16D
+EE83AA F16E
+EE83AB F16F
+EE83AC F170
+EE83AD F171
+EE83AE F172
+EE83AF F173
+EE83B0 F174
+EE83B1 F175
+EE83B2 F176
+EE83B3 F177
+EE83B4 F178
+EE83B5 F179
+EE83B6 F17A
+EE83B7 F17B
+EE83B8 F17C
+EE83B9 F17D
+EE83BA F17E
+EE83BB F180
+EE83BC F181
+EE83BD F182
+EE83BE F183
+EE83BF F184
+EE8480 F185
+EE8481 F186
+EE8482 F187
+EE8483 F188
+EE8484 F189
+EE8485 F18A
+EE8486 F18B
+EE8487 F18C
+EE8488 F18D
+EE8489 F18E
+EE848A F18F
+EE848B F190
+EE848C F191
+EE848D F192
+EE848E F193
+EE848F F194
+EE8490 F195
+EE8491 F196
+EE8492 F197
+EE8493 F198
+EE8494 F199
+EE8495 F19A
+EE8496 F19B
+EE8497 F19C
+EE8498 F19D
+EE8499 F19E
+EE849A F19F
+EE849B F1A0
+EE849C F1A1
+EE849D F1A2
+EE849E F1A3
+EE849F F1A4
+EE84A0 F1A5
+EE84A1 F1A6
+EE84A2 F1A7
+EE84A3 F1A8
+EE84A4 F1A9
+EE84A5 F1AA
+EE84A6 F1AB
+EE84A7 F1AC
+EE84A8 F1AD
+EE84A9 F1AE
+EE84AA F1AF
+EE84AB F1B0
+EE84AC F1B1
+EE84AD F1B2
+EE84AE F1B3
+EE84AF F1B4
+EE84B0 F1B5
+EE84B1 F1B6
+EE84B2 F1B7
+EE84B3 F1B8
+EE84B4 F1B9
+EE84B5 F1BA
+EE84B6 F1BB
+EE84B7 F1BC
+EE84B8 F1BD
+EE84B9 F1BE
+EE84BA F1BF
+EE84BB F1C0
+EE84BC F1C1
+EE84BD F1C2
+EE84BE F1C3
+EE84BF F1C4
+EE8580 F1C5
+EE8581 F1C6
+EE8582 F1C7
+EE8583 F1C8
+EE8584 F1C9
+EE8585 F1CA
+EE8586 F1CB
+EE8587 F1CC
+EE8588 F1CD
+EE8589 F1CE
+EE858A F1CF
+EE858B F1D0
+EE858C F1D1
+EE858D F1D2
+EE858E F1D3
+EE858F F1D4
+EE8590 F1D5
+EE8591 F1D6
+EE8592 F1D7
+EE8593 F1D8
+EE8594 F1D9
+EE8595 F1DA
+EE8596 F1DB
+EE8597 F1DC
+EE8598 F1DD
+EE8599 F1DE
+EE859A F1DF
+EE859B F1E0
+EE859C F1E1
+EE859D F1E2
+EE859E F1E3
+EE859F F1E4
+EE85A0 F1E5
+EE85A1 F1E6
+EE85A2 F1E7
+EE85A3 F1E8
+EE85A4 F1E9
+EE85A5 F1EA
+EE85A6 F1EB
+EE85A7 F1EC
+EE85A8 F1ED
+EE85A9 F1EE
+EE85AA F1EF
+EE85AB F1F0
+EE85AC F1F1
+EE85AD F1F2
+EE85AE F1F3
+EE85AF F1F4
+EE85B0 F1F5
+EE85B1 F1F6
+EE85B2 F1F7
+EE85B3 F1F8
+EE85B4 F1F9
+EE85B5 F1FA
+EE85B6 F1FB
+EE85B7 F1FC
+EE85B8 F240
+EE85B9 F241
+EE85BA F242
+EE85BB F243
+EE85BC F244
+EE85BD F245
+EE85BE F246
+EE85BF F247
+EE8680 F248
+EE8681 F249
+EE8682 F24A
+EE8683 F24B
+EE8684 F24C
+EE8685 F24D
+EE8686 F24E
+EE8687 F24F
+EE8688 F250
+EE8689 F251
+EE868A F252
+EE868B F253
+EE868C F254
+EE868D F255
+EE868E F256
+EE868F F257
+EE8690 F258
+EE8691 F259
+EE8692 F25A
+EE8693 F25B
+EE8694 F25C
+EE8695 F25D
+EE8696 F25E
+EE8697 F25F
+EE8698 F260
+EE8699 F261
+EE869A F262
+EE869B F263
+EE869C F264
+EE869D F265
+EE869E F266
+EE869F F267
+EE86A0 F268
+EE86A1 F269
+EE86A2 F26A
+EE86A3 F26B
+EE86A4 F26C
+EE86A5 F26D
+EE86A6 F26E
+EE86A7 F26F
+EE86A8 F270
+EE86A9 F271
+EE86AA F272
+EE86AB F273
+EE86AC F274
+EE86AD F275
+EE86AE F276
+EE86AF F277
+EE86B0 F278
+EE86B1 F279
+EE86B2 F27A
+EE86B3 F27B
+EE86B4 F27C
+EE86B5 F27D
+EE86B6 F27E
+EE86B7 F280
+EE86B8 F281
+EE86B9 F282
+EE86BA F283
+EE86BB F284
+EE86BC F285
+EE86BD F286
+EE86BE F287
+EE86BF F288
+EE8780 F289
+EE8781 F28A
+EE8782 F28B
+EE8783 F28C
+EE8784 F28D
+EE8785 F28E
+EE8786 F28F
+EE8787 F290
+EE8788 F291
+EE8789 F292
+EE878A F293
+EE878B F294
+EE878C F295
+EE878D F296
+EE878E F297
+EE878F F298
+EE8790 F299
+EE8791 F29A
+EE8792 F29B
+EE8793 F29C
+EE8794 F29D
+EE8795 F29E
+EE8796 F29F
+EE8797 F2A0
+EE8798 F2A1
+EE8799 F2A2
+EE879A F2A3
+EE879B F2A4
+EE879C F2A5
+EE879D F2A6
+EE879E F2A7
+EE879F F2A8
+EE87A0 F2A9
+EE87A1 F2AA
+EE87A2 F2AB
+EE87A3 F2AC
+EE87A4 F2AD
+EE87A5 F2AE
+EE87A6 F2AF
+EE87A7 F2B0
+EE87A8 F2B1
+EE87A9 F2B2
+EE87AA F2B3
+EE87AB F2B4
+EE87AC F2B5
+EE87AD F2B6
+EE87AE F2B7
+EE87AF F2B8
+EE87B0 F2B9
+EE87B1 F2BA
+EE87B2 F2BB
+EE87B3 F2BC
+EE87B4 F2BD
+EE87B5 F2BE
+EE87B6 F2BF
+EE87B7 F2C0
+EE87B8 F2C1
+EE87B9 F2C2
+EE87BA F2C3
+EE87BB F2C4
+EE87BC F2C5
+EE87BD F2C6
+EE87BE F2C7
+EE87BF F2C8
+EE8880 F2C9
+EE8881 F2CA
+EE8882 F2CB
+EE8883 F2CC
+EE8884 F2CD
+EE8885 F2CE
+EE8886 F2CF
+EE8887 F2D0
+EE8888 F2D1
+EE8889 F2D2
+EE888A F2D3
+EE888B F2D4
+EE888C F2D5
+EE888D F2D6
+EE888E F2D7
+EE888F F2D8
+EE8890 F2D9
+EE8891 F2DA
+EE8892 F2DB
+EE8893 F2DC
+EE8894 F2DD
+EE8895 F2DE
+EE8896 F2DF
+EE8897 F2E0
+EE8898 F2E1
+EE8899 F2E2
+EE889A F2E3
+EE889B F2E4
+EE889C F2E5
+EE889D F2E6
+EE889E F2E7
+EE889F F2E8
+EE88A0 F2E9
+EE88A1 F2EA
+EE88A2 F2EB
+EE88A3 F2EC
+EE88A4 F2ED
+EE88A5 F2EE
+EE88A6 F2EF
+EE88A7 F2F0
+EE88A8 F2F1
+EE88A9 F2F2
+EE88AA F2F3
+EE88AB F2F4
+EE88AC F2F5
+EE88AD F2F6
+EE88AE F2F7
+EE88AF F2F8
+EE88B0 F2F9
+EE88B1 F2FA
+EE88B2 F2FB
+EE88B3 F2FC
+EE88B4 F340
+EE88B5 F341
+EE88B6 F342
+EE88B7 F343
+EE88B8 F344
+EE88B9 F345
+EE88BA F346
+EE88BB F347
+EE88BC F348
+EE88BD F349
+EE88BE F34A
+EE88BF F34B
+EE8980 F34C
+EE8981 F34D
+EE8982 F34E
+EE8983 F34F
+EE8984 F350
+EE8985 F351
+EE8986 F352
+EE8987 F353
+EE8988 F354
+EE8989 F355
+EE898A F356
+EE898B F357
+EE898C F358
+EE898D F359
+EE898E F35A
+EE898F F35B
+EE8990 F35C
+EE8991 F35D
+EE8992 F35E
+EE8993 F35F
+EE8994 F360
+EE8995 F361
+EE8996 F362
+EE8997 F363
+EE8998 F364
+EE8999 F365
+EE899A F366
+EE899B F367
+EE899C F368
+EE899D F369
+EE899E F36A
+EE899F F36B
+EE89A0 F36C
+EE89A1 F36D
+EE89A2 F36E
+EE89A3 F36F
+EE89A4 F370
+EE89A5 F371
+EE89A6 F372
+EE89A7 F373
+EE89A8 F374
+EE89A9 F375
+EE89AA F376
+EE89AB F377
+EE89AC F378
+EE89AD F379
+EE89AE F37A
+EE89AF F37B
+EE89B0 F37C
+EE89B1 F37D
+EE89B2 F37E
+EE89B3 F380
+EE89B4 F381
+EE89B5 F382
+EE89B6 F383
+EE89B7 F384
+EE89B8 F385
+EE89B9 F386
+EE89BA F387
+EE89BB F388
+EE89BC F389
+EE89BD F38A
+EE89BE F38B
+EE89BF F38C
+EE8A80 F38D
+EE8A81 F38E
+EE8A82 F38F
+EE8A83 F390
+EE8A84 F391
+EE8A85 F392
+EE8A86 F393
+EE8A87 F394
+EE8A88 F395
+EE8A89 F396
+EE8A8A F397
+EE8A8B F398
+EE8A8C F399
+EE8A8D F39A
+EE8A8E F39B
+EE8A8F F39C
+EE8A90 F39D
+EE8A91 F39E
+EE8A92 F39F
+EE8A93 F3A0
+EE8A94 F3A1
+EE8A95 F3A2
+EE8A96 F3A3
+EE8A97 F3A4
+EE8A98 F3A5
+EE8A99 F3A6
+EE8A9A F3A7
+EE8A9B F3A8
+EE8A9C F3A9
+EE8A9D F3AA
+EE8A9E F3AB
+EE8A9F F3AC
+EE8AA0 F3AD
+EE8AA1 F3AE
+EE8AA2 F3AF
+EE8AA3 F3B0
+EE8AA4 F3B1
+EE8AA5 F3B2
+EE8AA6 F3B3
+EE8AA7 F3B4
+EE8AA8 F3B5
+EE8AA9 F3B6
+EE8AAA F3B7
+EE8AAB F3B8
+EE8AAC F3B9
+EE8AAD F3BA
+EE8AAE F3BB
+EE8AAF F3BC
+EE8AB0 F3BD
+EE8AB1 F3BE
+EE8AB2 F3BF
+EE8AB3 F3C0
+EE8AB4 F3C1
+EE8AB5 F3C2
+EE8AB6 F3C3
+EE8AB7 F3C4
+EE8AB8 F3C5
+EE8AB9 F3C6
+EE8ABA F3C7
+EE8ABB F3C8
+EE8ABC F3C9
+EE8ABD F3CA
+EE8ABE F3CB
+EE8ABF F3CC
+EE8B80 F3CD
+EE8B81 F3CE
+EE8B82 F3CF
+EE8B83 F3D0
+EE8B84 F3D1
+EE8B85 F3D2
+EE8B86 F3D3
+EE8B87 F3D4
+EE8B88 F3D5
+EE8B89 F3D6
+EE8B8A F3D7
+EE8B8B F3D8
+EE8B8C F3D9
+EE8B8D F3DA
+EE8B8E F3DB
+EE8B8F F3DC
+EE8B90 F3DD
+EE8B91 F3DE
+EE8B92 F3DF
+EE8B93 F3E0
+EE8B94 F3E1
+EE8B95 F3E2
+EE8B96 F3E3
+EE8B97 F3E4
+EE8B98 F3E5
+EE8B99 F3E6
+EE8B9A F3E7
+EE8B9B F3E8
+EE8B9C F3E9
+EE8B9D F3EA
+EE8B9E F3EB
+EE8B9F F3EC
+EE8BA0 F3ED
+EE8BA1 F3EE
+EE8BA2 F3EF
+EE8BA3 F3F0
+EE8BA4 F3F1
+EE8BA5 F3F2
+EE8BA6 F3F3
+EE8BA7 F3F4
+EE8BA8 F3F5
+EE8BA9 F3F6
+EE8BAA F3F7
+EE8BAB F3F8
+EE8BAC F3F9
+EE8BAD F3FA
+EE8BAE F3FB
+EE8BAF F3FC
+EE8BB0 F440
+EE8BB1 F441
+EE8BB2 F442
+EE8BB3 F443
+EE8BB4 F444
+EE8BB5 F445
+EE8BB6 F446
+EE8BB7 F447
+EE8BB8 F448
+EE8BB9 F449
+EE8BBA F44A
+EE8BBB F44B
+EE8BBC F44C
+EE8BBD F44D
+EE8BBE F44E
+EE8BBF F44F
+EE8C80 F450
+EE8C81 F451
+EE8C82 F452
+EE8C83 F453
+EE8C84 F454
+EE8C85 F455
+EE8C86 F456
+EE8C87 F457
+EE8C88 F458
+EE8C89 F459
+EE8C8A F45A
+EE8C8B F45B
+EE8C8C F45C
+EE8C8D F45D
+EE8C8E F45E
+EE8C8F F45F
+EE8C90 F460
+EE8C91 F461
+EE8C92 F462
+EE8C93 F463
+EE8C94 F464
+EE8C95 F465
+EE8C96 F466
+EE8C97 F467
+EE8C98 F468
+EE8C99 F469
+EE8C9A F46A
+EE8C9B F46B
+EE8C9C F46C
+EE8C9D F46D
+EE8C9E F46E
+EE8C9F F46F
+EE8CA0 F470
+EE8CA1 F471
+EE8CA2 F472
+EE8CA3 F473
+EE8CA4 F474
+EE8CA5 F475
+EE8CA6 F476
+EE8CA7 F477
+EE8CA8 F478
+EE8CA9 F479
+EE8CAA F47A
+EE8CAB F47B
+EE8CAC F47C
+EE8CAD F47D
+EE8CAE F47E
+EE8CAF F480
+EE8CB0 F481
+EE8CB1 F482
+EE8CB2 F483
+EE8CB3 F484
+EE8CB4 F485
+EE8CB5 F486
+EE8CB6 F487
+EE8CB7 F488
+EE8CB8 F489
+EE8CB9 F48A
+EE8CBA F48B
+EE8CBB F48C
+EE8CBC F48D
+EE8CBD F48E
+EE8CBE F48F
+EE8CBF F490
+EE8D80 F491
+EE8D81 F492
+EE8D82 F493
+EE8D83 F494
+EE8D84 F495
+EE8D85 F496
+EE8D86 F497
+EE8D87 F498
+EE8D88 F499
+EE8D89 F49A
+EE8D8A F49B
+EE8D8B F49C
+EE8D8C F49D
+EE8D8D F49E
+EE8D8E F49F
+EE8D8F F4A0
+EE8D90 F4A1
+EE8D91 F4A2
+EE8D92 F4A3
+EE8D93 F4A4
+EE8D94 F4A5
+EE8D95 F4A6
+EE8D96 F4A7
+EE8D97 F4A8
+EE8D98 F4A9
+EE8D99 F4AA
+EE8D9A F4AB
+EE8D9B F4AC
+EE8D9C F4AD
+EE8D9D F4AE
+EE8D9E F4AF
+EE8D9F F4B0
+EE8DA0 F4B1
+EE8DA1 F4B2
+EE8DA2 F4B3
+EE8DA3 F4B4
+EE8DA4 F4B5
+EE8DA5 F4B6
+EE8DA6 F4B7
+EE8DA7 F4B8
+EE8DA8 F4B9
+EE8DA9 F4BA
+EE8DAA F4BB
+EE8DAB F4BC
+EE8DAC F4BD
+EE8DAD F4BE
+EE8DAE F4BF
+EE8DAF F4C0
+EE8DB0 F4C1
+EE8DB1 F4C2
+EE8DB2 F4C3
+EE8DB3 F4C4
+EE8DB4 F4C5
+EE8DB5 F4C6
+EE8DB6 F4C7
+EE8DB7 F4C8
+EE8DB8 F4C9
+EE8DB9 F4CA
+EE8DBA F4CB
+EE8DBB F4CC
+EE8DBC F4CD
+EE8DBD F4CE
+EE8DBE F4CF
+EE8DBF F4D0
+EE8E80 F4D1
+EE8E81 F4D2
+EE8E82 F4D3
+EE8E83 F4D4
+EE8E84 F4D5
+EE8E85 F4D6
+EE8E86 F4D7
+EE8E87 F4D8
+EE8E88 F4D9
+EE8E89 F4DA
+EE8E8A F4DB
+EE8E8B F4DC
+EE8E8C F4DD
+EE8E8D F4DE
+EE8E8E F4DF
+EE8E8F F4E0
+EE8E90 F4E1
+EE8E91 F4E2
+EE8E92 F4E3
+EE8E93 F4E4
+EE8E94 F4E5
+EE8E95 F4E6
+EE8E96 F4E7
+EE8E97 F4E8
+EE8E98 F4E9
+EE8E99 F4EA
+EE8E9A F4EB
+EE8E9B F4EC
+EE8E9C F4ED
+EE8E9D F4EE
+EE8E9E F4EF
+EE8E9F F4F0
+EE8EA0 F4F1
+EE8EA1 F4F2
+EE8EA2 F4F3
+EE8EA3 F4F4
+EE8EA4 F4F5
+EE8EA5 F4F6
+EE8EA6 F4F7
+EE8EA7 F4F8
+EE8EA8 F4F9
+EE8EA9 F4FA
+EE8EAA F4FB
+EE8EAB F4FC
+EE8EAC F540
+EE8EAD F541
+EE8EAE F542
+EE8EAF F543
+EE8EB0 F544
+EE8EB1 F545
+EE8EB2 F546
+EE8EB3 F547
+EE8EB4 F548
+EE8EB5 F549
+EE8EB6 F54A
+EE8EB7 F54B
+EE8EB8 F54C
+EE8EB9 F54D
+EE8EBA F54E
+EE8EBB F54F
+EE8EBC F550
+EE8EBD F551
+EE8EBE F552
+EE8EBF F553
+EE8F80 F554
+EE8F81 F555
+EE8F82 F556
+EE8F83 F557
+EE8F84 F558
+EE8F85 F559
+EE8F86 F55A
+EE8F87 F55B
+EE8F88 F55C
+EE8F89 F55D
+EE8F8A F55E
+EE8F8B F55F
+EE8F8C F560
+EE8F8D F561
+EE8F8E F562
+EE8F8F F563
+EE8F90 F564
+EE8F91 F565
+EE8F92 F566
+EE8F93 F567
+EE8F94 F568
+EE8F95 F569
+EE8F96 F56A
+EE8F97 F56B
+EE8F98 F56C
+EE8F99 F56D
+EE8F9A F56E
+EE8F9B F56F
+EE8F9C F570
+EE8F9D F571
+EE8F9E F572
+EE8F9F F573
+EE8FA0 F574
+EE8FA1 F575
+EE8FA2 F576
+EE8FA3 F577
+EE8FA4 F578
+EE8FA5 F579
+EE8FA6 F57A
+EE8FA7 F57B
+EE8FA8 F57C
+EE8FA9 F57D
+EE8FAA F57E
+EE8FAB F580
+EE8FAC F581
+EE8FAD F582
+EE8FAE F583
+EE8FAF F584
+EE8FB0 F585
+EE8FB1 F586
+EE8FB2 F587
+EE8FB3 F588
+EE8FB4 F589
+EE8FB5 F58A
+EE8FB6 F58B
+EE8FB7 F58C
+EE8FB8 F58D
+EE8FB9 F58E
+EE8FBA F58F
+EE8FBB F590
+EE8FBC F591
+EE8FBD F592
+EE8FBE F593
+EE8FBF F594
+EE9080 F595
+EE9081 F596
+EE9082 F597
+EE9083 F598
+EE9084 F599
+EE9085 F59A
+EE9086 F59B
+EE9087 F59C
+EE9088 F59D
+EE9089 F59E
+EE908A F59F
+EE908B F5A0
+EE908C F5A1
+EE908D F5A2
+EE908E F5A3
+EE908F F5A4
+EE9090 F5A5
+EE9091 F5A6
+EE9092 F5A7
+EE9093 F5A8
+EE9094 F5A9
+EE9095 F5AA
+EE9096 F5AB
+EE9097 F5AC
+EE9098 F5AD
+EE9099 F5AE
+EE909A F5AF
+EE909B F5B0
+EE909C F5B1
+EE909D F5B2
+EE909E F5B3
+EE909F F5B4
+EE90A0 F5B5
+EE90A1 F5B6
+EE90A2 F5B7
+EE90A3 F5B8
+EE90A4 F5B9
+EE90A5 F5BA
+EE90A6 F5BB
+EE90A7 F5BC
+EE90A8 F5BD
+EE90A9 F5BE
+EE90AA F5BF
+EE90AB F5C0
+EE90AC F5C1
+EE90AD F5C2
+EE90AE F5C3
+EE90AF F5C4
+EE90B0 F5C5
+EE90B1 F5C6
+EE90B2 F5C7
+EE90B3 F5C8
+EE90B4 F5C9
+EE90B5 F5CA
+EE90B6 F5CB
+EE90B7 F5CC
+EE90B8 F5CD
+EE90B9 F5CE
+EE90BA F5CF
+EE90BB F5D0
+EE90BC F5D1
+EE90BD F5D2
+EE90BE F5D3
+EE90BF F5D4
+EE9180 F5D5
+EE9181 F5D6
+EE9182 F5D7
+EE9183 F5D8
+EE9184 F5D9
+EE9185 F5DA
+EE9186 F5DB
+EE9187 F5DC
+EE9188 F5DD
+EE9189 F5DE
+EE918A F5DF
+EE918B F5E0
+EE918C F5E1
+EE918D F5E2
+EE918E F5E3
+EE918F F5E4
+EE9190 F5E5
+EE9191 F5E6
+EE9192 F5E7
+EE9193 F5E8
+EE9194 F5E9
+EE9195 F5EA
+EE9196 F5EB
+EE9197 F5EC
+EE9198 F5ED
+EE9199 F5EE
+EE919A F5EF
+EE919B F5F0
+EE919C F5F1
+EE919D F5F2
+EE919E F5F3
+EE919F F5F4
+EE91A0 F5F5
+EE91A1 F5F6
+EE91A2 F5F7
+EE91A3 F5F8
+EE91A4 F5F9
+EE91A5 F5FA
+EE91A6 F5FB
+EE91A7 F5FC
+EE91A8 F640
+EE91A9 F641
+EE91AA F642
+EE91AB F643
+EE91AC F644
+EE91AD F645
+EE91AE F646
+EE91AF F647
+EE91B0 F648
+EE91B1 F649
+EE91B2 F64A
+EE91B3 F64B
+EE91B4 F64C
+EE91B5 F64D
+EE91B6 F64E
+EE91B7 F64F
+EE91B8 F650
+EE91B9 F651
+EE91BA F652
+EE91BB F653
+EE91BC F654
+EE91BD F655
+EE91BE F656
+EE91BF F657
+EE9280 F658
+EE9281 F659
+EE9282 F65A
+EE9283 F65B
+EE9284 F65C
+EE9285 F65D
+EE9286 F65E
+EE9287 F65F
+EE9288 F660
+EE9289 F661
+EE928A F662
+EE928B F663
+EE928C F664
+EE928D F665
+EE928E F666
+EE928F F667
+EE9290 F668
+EE9291 F669
+EE9292 F66A
+EE9293 F66B
+EE9294 F66C
+EE9295 F66D
+EE9296 F66E
+EE9297 F66F
+EE9298 F670
+EE9299 F671
+EE929A F672
+EE929B F673
+EE929C F674
+EE929D F675
+EE929E F676
+EE929F F677
+EE92A0 F678
+EE92A1 F679
+EE92A2 F67A
+EE92A3 F67B
+EE92A4 F67C
+EE92A5 F67D
+EE92A6 F67E
+EE92A7 F680
+EE92A8 F681
+EE92A9 F682
+EE92AA F683
+EE92AB F684
+EE92AC F685
+EE92AD F686
+EE92AE F687
+EE92AF F688
+EE92B0 F689
+EE92B1 F68A
+EE92B2 F68B
+EE92B3 F68C
+EE92B4 F68D
+EE92B5 F68E
+EE92B6 F68F
+EE92B7 F690
+EE92B8 F691
+EE92B9 F692
+EE92BA F693
+EE92BB F694
+EE92BC F695
+EE92BD F696
+EE92BE F697
+EE92BF F698
+EE9380 F699
+EE9381 F69A
+EE9382 F69B
+EE9383 F69C
+EE9384 F69D
+EE9385 F69E
+EE9386 F69F
+EE9387 F6A0
+EE9388 F6A1
+EE9389 F6A2
+EE938A F6A3
+EE938B F6A4
+EE938C F6A5
+EE938D F6A6
+EE938E F6A7
+EE938F F6A8
+EE9390 F6A9
+EE9391 F6AA
+EE9392 F6AB
+EE9393 F6AC
+EE9394 F6AD
+EE9395 F6AE
+EE9396 F6AF
+EE9397 F6B0
+EE9398 F6B1
+EE9399 F6B2
+EE939A F6B3
+EE939B F6B4
+EE939C F6B5
+EE939D F6B6
+EE939E F6B7
+EE939F F6B8
+EE93A0 F6B9
+EE93A1 F6BA
+EE93A2 F6BB
+EE93A3 F6BC
+EE93A4 F6BD
+EE93A5 F6BE
+EE93A6 F6BF
+EE93A7 F6C0
+EE93A8 F6C1
+EE93A9 F6C2
+EE93AA F6C3
+EE93AB F6C4
+EE93AC F6C5
+EE93AD F6C6
+EE93AE F6C7
+EE93AF F6C8
+EE93B0 F6C9
+EE93B1 F6CA
+EE93B2 F6CB
+EE93B3 F6CC
+EE93B4 F6CD
+EE93B5 F6CE
+EE93B6 F6CF
+EE93B7 F6D0
+EE93B8 F6D1
+EE93B9 F6D2
+EE93BA F6D3
+EE93BB F6D4
+EE93BC F6D5
+EE93BD F6D6
+EE93BE F6D7
+EE93BF F6D8
+EE9480 F6D9
+EE9481 F6DA
+EE9482 F6DB
+EE9483 F6DC
+EE9484 F6DD
+EE9485 F6DE
+EE9486 F6DF
+EE9487 F6E0
+EE9488 F6E1
+EE9489 F6E2
+EE948A F6E3
+EE948B F6E4
+EE948C F6E5
+EE948D F6E6
+EE948E F6E7
+EE948F F6E8
+EE9490 F6E9
+EE9491 F6EA
+EE9492 F6EB
+EE9493 F6EC
+EE9494 F6ED
+EE9495 F6EE
+EE9496 F6EF
+EE9497 F6F0
+EE9498 F6F1
+EE9499 F6F2
+EE949A F6F3
+EE949B F6F4
+EE949C F6F5
+EE949D F6F6
+EE949E F6F7
+EE949F F6F8
+EE94A0 F6F9
+EE94A1 F6FA
+EE94A2 F6FB
+EE94A3 F6FC
+EE94A4 F740
+EE94A5 F741
+EE94A6 F742
+EE94A7 F743
+EE94A8 F744
+EE94A9 F745
+EE94AA F746
+EE94AB F747
+EE94AC F748
+EE94AD F749
+EE94AE F74A
+EE94AF F74B
+EE94B0 F74C
+EE94B1 F74D
+EE94B2 F74E
+EE94B3 F74F
+EE94B4 F750
+EE94B5 F751
+EE94B6 F752
+EE94B7 F753
+EE94B8 F754
+EE94B9 F755
+EE94BA F756
+EE94BB F757
+EE94BC F758
+EE94BD F759
+EE94BE F75A
+EE94BF F75B
+EE9580 F75C
+EE9581 F75D
+EE9582 F75E
+EE9583 F75F
+EE9584 F760
+EE9585 F761
+EE9586 F762
+EE9587 F763
+EE9588 F764
+EE9589 F765
+EE958A F766
+EE958B F767
+EE958C F768
+EE958D F769
+EE958E F76A
+EE958F F76B
+EE9590 F76C
+EE9591 F76D
+EE9592 F76E
+EE9593 F76F
+EE9594 F770
+EE9595 F771
+EE9596 F772
+EE9597 F773
+EE9598 F774
+EE9599 F775
+EE959A F776
+EE959B F777
+EE959C F778
+EE959D F779
+EE959E F77A
+EE959F F77B
+EE95A0 F77C
+EE95A1 F77D
+EE95A2 F77E
+EE95A3 F780
+EE95A4 F781
+EE95A5 F782
+EE95A6 F783
+EE95A7 F784
+EE95A8 F785
+EE95A9 F786
+EE95AA F787
+EE95AB F788
+EE95AC F789
+EE95AD F78A
+EE95AE F78B
+EE95AF F78C
+EE95B0 F78D
+EE95B1 F78E
+EE95B2 F78F
+EE95B3 F790
+EE95B4 F791
+EE95B5 F792
+EE95B6 F793
+EE95B7 F794
+EE95B8 F795
+EE95B9 F796
+EE95BA F797
+EE95BB F798
+EE95BC F799
+EE95BD F79A
+EE95BE F79B
+EE95BF F79C
+EE9680 F79D
+EE9681 F79E
+EE9682 F79F
+EE9683 F7A0
+EE9684 F7A1
+EE9685 F7A2
+EE9686 F7A3
+EE9687 F7A4
+EE9688 F7A5
+EE9689 F7A6
+EE968A F7A7
+EE968B F7A8
+EE968C F7A9
+EE968D F7AA
+EE968E F7AB
+EE968F F7AC
+EE9690 F7AD
+EE9691 F7AE
+EE9692 F7AF
+EE9693 F7B0
+EE9694 F7B1
+EE9695 F7B2
+EE9696 F7B3
+EE9697 F7B4
+EE9698 F7B5
+EE9699 F7B6
+EE969A F7B7
+EE969B F7B8
+EE969C F7B9
+EE969D F7BA
+EE969E F7BB
+EE969F F7BC
+EE96A0 F7BD
+EE96A1 F7BE
+EE96A2 F7BF
+EE96A3 F7C0
+EE96A4 F7C1
+EE96A5 F7C2
+EE96A6 F7C3
+EE96A7 F7C4
+EE96A8 F7C5
+EE96A9 F7C6
+EE96AA F7C7
+EE96AB F7C8
+EE96AC F7C9
+EE96AD F7CA
+EE96AE F7CB
+EE96AF F7CC
+EE96B0 F7CD
+EE96B1 F7CE
+EE96B2 F7CF
+EE96B3 F7D0
+EE96B4 F7D1
+EE96B5 F7D2
+EE96B6 F7D3
+EE96B7 F7D4
+EE96B8 F7D5
+EE96B9 F7D6
+EE96BA F7D7
+EE96BB F7D8
+EE96BC F7D9
+EE96BD F7DA
+EE96BE F7DB
+EE96BF F7DC
+EE9780 F7DD
+EE9781 F7DE
+EE9782 F7DF
+EE9783 F7E0
+EE9784 F7E1
+EE9785 F7E2
+EE9786 F7E3
+EE9787 F7E4
+EE9788 F7E5
+EE9789 F7E6
+EE978A F7E7
+EE978B F7E8
+EE978C F7E9
+EE978D F7EA
+EE978E F7EB
+EE978F F7EC
+EE9790 F7ED
+EE9791 F7EE
+EE9792 F7EF
+EE9793 F7F0
+EE9794 F7F1
+EE9795 F7F2
+EE9796 F7F3
+EE9797 F7F4
+EE9798 F7F5
+EE9799 F7F6
+EE979A F7F7
+EE979B F7F8
+EE979C F7F9
+EE979D F7FA
+EE979E F7FB
+EE979F F7FC
+EE97A0 F840
+EE97A1 F841
+EE97A2 F842
+EE97A3 F843
+EE97A4 F844
+EE97A5 F845
+EE97A6 F846
+EE97A7 F847
+EE97A8 F848
+EE97A9 F849
+EE97AA F84A
+EE97AB F84B
+EE97AC F84C
+EE97AD F84D
+EE97AE F84E
+EE97AF F84F
+EE97B0 F850
+EE97B1 F851
+EE97B2 F852
+EE97B3 F853
+EE97B4 F854
+EE97B5 F855
+EE97B6 F856
+EE97B7 F857
+EE97B8 F858
+EE97B9 F859
+EE97BA F85A
+EE97BB F85B
+EE97BC F85C
+EE97BD F85D
+EE97BE F85E
+EE97BF F85F
+EE9880 F860
+EE9881 F861
+EE9882 F862
+EE9883 F863
+EE9884 F864
+EE9885 F865
+EE9886 F866
+EE9887 F867
+EE9888 F868
+EE9889 F869
+EE988A F86A
+EE988B F86B
+EE988C F86C
+EE988D F86D
+EE988E F86E
+EE988F F86F
+EE9890 F870
+EE9891 F871
+EE9892 F872
+EE9893 F873
+EE9894 F874
+EE9895 F875
+EE9896 F876
+EE9897 F877
+EE9898 F878
+EE9899 F879
+EE989A F87A
+EE989B F87B
+EE989C F87C
+EE989D F87D
+EE989E F87E
+EE989F F880
+EE98A0 F881
+EE98A1 F882
+EE98A2 F883
+EE98A3 F884
+EE98A4 F885
+EE98A5 F886
+EE98A6 F887
+EE98A7 F888
+EE98A8 F889
+EE98A9 F88A
+EE98AA F88B
+EE98AB F88C
+EE98AC F88D
+EE98AD F88E
+EE98AE F88F
+EE98AF F890
+EE98B0 F891
+EE98B1 F892
+EE98B2 F893
+EE98B3 F894
+EE98B4 F895
+EE98B5 F896
+EE98B6 F897
+EE98B7 F898
+EE98B8 F899
+EE98B9 F89A
+EE98BA F89B
+EE98BB F89C
+EE98BC F89D
+EE98BD F89E
+EE98BE F89F
+EE98BF F8A0
+EE9980 F8A1
+EE9981 F8A2
+EE9982 F8A3
+EE9983 F8A4
+EE9984 F8A5
+EE9985 F8A6
+EE9986 F8A7
+EE9987 F8A8
+EE9988 F8A9
+EE9989 F8AA
+EE998A F8AB
+EE998B F8AC
+EE998C F8AD
+EE998D F8AE
+EE998E F8AF
+EE998F F8B0
+EE9990 F8B1
+EE9991 F8B2
+EE9992 F8B3
+EE9993 F8B4
+EE9994 F8B5
+EE9995 F8B6
+EE9996 F8B7
+EE9997 F8B8
+EE9998 F8B9
+EE9999 F8BA
+EE999A F8BB
+EE999B F8BC
+EE999C F8BD
+EE999D F8BE
+EE999E F8BF
+EE999F F8C0
+EE99A0 F8C1
+EE99A1 F8C2
+EE99A2 F8C3
+EE99A3 F8C4
+EE99A4 F8C5
+EE99A5 F8C6
+EE99A6 F8C7
+EE99A7 F8C8
+EE99A8 F8C9
+EE99A9 F8CA
+EE99AA F8CB
+EE99AB F8CC
+EE99AC F8CD
+EE99AD F8CE
+EE99AE F8CF
+EE99AF F8D0
+EE99B0 F8D1
+EE99B1 F8D2
+EE99B2 F8D3
+EE99B3 F8D4
+EE99B4 F8D5
+EE99B5 F8D6
+EE99B6 F8D7
+EE99B7 F8D8
+EE99B8 F8D9
+EE99B9 F8DA
+EE99BA F8DB
+EE99BB F8DC
+EE99BC F8DD
+EE99BD F8DE
+EE99BE F8DF
+EE99BF F8E0
+EE9A80 F8E1
+EE9A81 F8E2
+EE9A82 F8E3
+EE9A83 F8E4
+EE9A84 F8E5
+EE9A85 F8E6
+EE9A86 F8E7
+EE9A87 F8E8
+EE9A88 F8E9
+EE9A89 F8EA
+EE9A8A F8EB
+EE9A8B F8EC
+EE9A8C F8ED
+EE9A8D F8EE
+EE9A8E F8EF
+EE9A8F F8F0
+EE9A90 F8F1
+EE9A91 F8F2
+EE9A92 F8F3
+EE9A93 F8F4
+EE9A94 F8F5
+EE9A95 F8F6
+EE9A96 F8F7
+EE9A97 F8F8
+EE9A98 F8F9
+EE9A99 F8FA
+EE9A9A F8FB
+EE9A9B F8FC
+EE9A9C F940
+EE9A9D F941
+EE9A9E F942
+EE9A9F F943
+EE9AA0 F944
+EE9AA1 F945
+EE9AA2 F946
+EE9AA3 F947
+EE9AA4 F948
+EE9AA5 F949
+EE9AA6 F94A
+EE9AA7 F94B
+EE9AA8 F94C
+EE9AA9 F94D
+EE9AAA F94E
+EE9AAB F94F
+EE9AAC F950
+EE9AAD F951
+EE9AAE F952
+EE9AAF F953
+EE9AB0 F954
+EE9AB1 F955
+EE9AB2 F956
+EE9AB3 F957
+EE9AB4 F958
+EE9AB5 F959
+EE9AB6 F95A
+EE9AB7 F95B
+EE9AB8 F95C
+EE9AB9 F95D
+EE9ABA F95E
+EE9ABB F95F
+EE9ABC F960
+EE9ABD F961
+EE9ABE F962
+EE9ABF F963
+EE9B80 F964
+EE9B81 F965
+EE9B82 F966
+EE9B83 F967
+EE9B84 F968
+EE9B85 F969
+EE9B86 F96A
+EE9B87 F96B
+EE9B88 F96C
+EE9B89 F96D
+EE9B8A F96E
+EE9B8B F96F
+EE9B8C F970
+EE9B8D F971
+EE9B8E F972
+EE9B8F F973
+EE9B90 F974
+EE9B91 F975
+EE9B92 F976
+EE9B93 F977
+EE9B94 F978
+EE9B95 F979
+EE9B96 F97A
+EE9B97 F97B
+EE9B98 F97C
+EE9B99 F97D
+EE9B9A F97E
+EE9B9B F980
+EE9B9C F981
+EE9B9D F982
+EE9B9E F983
+EE9B9F F984
+EE9BA0 F985
+EE9BA1 F986
+EE9BA2 F987
+EE9BA3 F988
+EE9BA4 F989
+EE9BA5 F98A
+EE9BA6 F98B
+EE9BA7 F98C
+EE9BA8 F98D
+EE9BA9 F98E
+EE9BAA F98F
+EE9BAB F990
+EE9BAC F991
+EE9BAD F992
+EE9BAE F993
+EE9BAF F994
+EE9BB0 F995
+EE9BB1 F996
+EE9BB2 F997
+EE9BB3 F998
+EE9BB4 F999
+EE9BB5 F99A
+EE9BB6 F99B
+EE9BB7 F99C
+EE9BB8 F99D
+EE9BB9 F99E
+EE9BBA F99F
+EE9BBB F9A0
+EE9BBC F9A1
+EE9BBD F9A2
+EE9BBE F9A3
+EE9BBF F9A4
+EE9C80 F9A5
+EE9C81 F9A6
+EE9C82 F9A7
+EE9C83 F9A8
+EE9C84 F9A9
+EE9C85 F9AA
+EE9C86 F9AB
+EE9C87 F9AC
+EE9C88 F9AD
+EE9C89 F9AE
+EE9C8A F9AF
+EE9C8B F9B0
+EE9C8C F9B1
+EE9C8D F9B2
+EE9C8E F9B3
+EE9C8F F9B4
+EE9C90 F9B5
+EE9C91 F9B6
+EE9C92 F9B7
+EE9C93 F9B8
+EE9C94 F9B9
+EE9C95 F9BA
+EE9C96 F9BB
+EE9C97 F9BC
+EE9C98 F9BD
+EE9C99 F9BE
+EE9C9A F9BF
+EE9C9B F9C0
+EE9C9C F9C1
+EE9C9D F9C2
+EE9C9E F9C3
+EE9C9F F9C4
+EE9CA0 F9C5
+EE9CA1 F9C6
+EE9CA2 F9C7
+EE9CA3 F9C8
+EE9CA4 F9C9
+EE9CA5 F9CA
+EE9CA6 F9CB
+EE9CA7 F9CC
+EE9CA8 F9CD
+EE9CA9 F9CE
+EE9CAA F9CF
+EE9CAB F9D0
+EE9CAC F9D1
+EE9CAD F9D2
+EE9CAE F9D3
+EE9CAF F9D4
+EE9CB0 F9D5
+EE9CB1 F9D6
+EE9CB2 F9D7
+EE9CB3 F9D8
+EE9CB4 F9D9
+EE9CB5 F9DA
+EE9CB6 F9DB
+EE9CB7 F9DC
+EE9CB8 F9DD
+EE9CB9 F9DE
+EE9CBA F9DF
+EE9CBB F9E0
+EE9CBC F9E1
+EE9CBD F9E2
+EE9CBE F9E3
+EE9CBF F9E4
+EE9D80 F9E5
+EE9D81 F9E6
+EE9D82 F9E7
+EE9D83 F9E8
+EE9D84 F9E9
+EE9D85 F9EA
+EE9D86 F9EB
+EE9D87 F9EC
+EE9D88 F9ED
+EE9D89 F9EE
+EE9D8A F9EF
+EE9D8B F9F0
+EE9D8C F9F1
+EE9D8D F9F2
+EE9D8E F9F3
+EE9D8F F9F4
+EE9D90 F9F5
+EE9D91 F9F6
+EE9D92 F9F7
+EE9D93 F9F8
+EE9D94 F9F9
+EE9D95 F9FA
+EE9D96 F9FB
+EE9D97 F9FC
+EFA4A9 FAE0
+EFA79C FBE9
+EFA88E FA90
+EFA88F FA9B
+EFA890 FA9C
+EFA891 FAB1
+EFA892 FAD8
+EFA893 FAE8
+EFA894 FAEA
+EFA895 FB58
+EFA896 FB5E
+EFA897 FB75
+EFA898 FB7D
+EFA899 FB7E
+EFA89A FB80
+EFA89B FB82
+EFA89C FB86
+EFA89D FB89
+EFA89E FB92
+EFA89F FB9D
+EFA8A0 FB9F
+EFA8A1 FBA0
+EFA8A2 FBA9
+EFA8A3 FBB1
+EFA8A4 FBB3
+EFA8A5 FBB4
+EFA8A6 FBB7
+EFA8A7 FBD3
+EFA8A8 FBDA
+EFA8A9 FBEA
+EFA8AA FBF6
+EFA8AB FBF7
+EFA8AC FBF9
+EFA8AD FC49
+EFBC81 8149
+EFBC82 FA57
+EFBC83 8194
+EFBC84 8190
+EFBC85 8193
+EFBC86 8195
+EFBC87 FA56
+EFBC88 8169
+EFBC89 816A
+EFBC8A 8196
+EFBC8B 817B
+EFBC8C 8143
+EFBC8D 817C
+EFBC8E 8144
+EFBC8F 815E
+EFBC90 824F
+EFBC91 8250
+EFBC92 8251
+EFBC93 8252
+EFBC94 8253
+EFBC95 8254
+EFBC96 8255
+EFBC97 8256
+EFBC98 8257
+EFBC99 8258
+EFBC9A 8146
+EFBC9B 8147
+EFBC9C 8183
+EFBC9D 8181
+EFBC9E 8184
+EFBC9F 8148
+EFBCA0 8197
+EFBCA1 8260
+EFBCA2 8261
+EFBCA3 8262
+EFBCA4 8263
+EFBCA5 8264
+EFBCA6 8265
+EFBCA7 8266
+EFBCA8 8267
+EFBCA9 8268
+EFBCAA 8269
+EFBCAB 826A
+EFBCAC 826B
+EFBCAD 826C
+EFBCAE 826D
+EFBCAF 826E
+EFBCB0 826F
+EFBCB1 8270
+EFBCB2 8271
+EFBCB3 8272
+EFBCB4 8273
+EFBCB5 8274
+EFBCB6 8275
+EFBCB7 8276
+EFBCB8 8277
+EFBCB9 8278
+EFBCBA 8279
+EFBCBB 816D
+EFBCBC 815F
+EFBCBD 816E
+EFBCBE 814F
+EFBCBF 8151
+EFBD80 814D
+EFBD81 8281
+EFBD82 8282
+EFBD83 8283
+EFBD84 8284
+EFBD85 8285
+EFBD86 8286
+EFBD87 8287
+EFBD88 8288
+EFBD89 8289
+EFBD8A 828A
+EFBD8B 828B
+EFBD8C 828C
+EFBD8D 828D
+EFBD8E 828E
+EFBD8F 828F
+EFBD90 8290
+EFBD91 8291
+EFBD92 8292
+EFBD93 8293
+EFBD94 8294
+EFBD95 8295
+EFBD96 8296
+EFBD97 8297
+EFBD98 8298
+EFBD99 8299
+EFBD9A 829A
+EFBD9B 816F
+EFBD9C 8162
+EFBD9D 8170
+EFBD9E 8160
+EFBDA1 A1
+EFBDA2 A2
+EFBDA3 A3
+EFBDA4 A4
+EFBDA5 A5
+EFBDA6 A6
+EFBDA7 A7
+EFBDA8 A8
+EFBDA9 A9
+EFBDAA AA
+EFBDAB AB
+EFBDAC AC
+EFBDAD AD
+EFBDAE AE
+EFBDAF AF
+EFBDB0 B0
+EFBDB1 B1
+EFBDB2 B2
+EFBDB3 B3
+EFBDB4 B4
+EFBDB5 B5
+EFBDB6 B6
+EFBDB7 B7
+EFBDB8 B8
+EFBDB9 B9
+EFBDBA BA
+EFBDBB BB
+EFBDBC BC
+EFBDBD BD
+EFBDBE BE
+EFBDBF BF
+EFBE80 C0
+EFBE81 C1
+EFBE82 C2
+EFBE83 C3
+EFBE84 C4
+EFBE85 C5
+EFBE86 C6
+EFBE87 C7
+EFBE88 C8
+EFBE89 C9
+EFBE8A CA
+EFBE8B CB
+EFBE8C CC
+EFBE8D CD
+EFBE8E CE
+EFBE8F CF
+EFBE90 D0
+EFBE91 D1
+EFBE92 D2
+EFBE93 D3
+EFBE94 D4
+EFBE95 D5
+EFBE96 D6
+EFBE97 D7
+EFBE98 D8
+EFBE99 D9
+EFBE9A DA
+EFBE9B DB
+EFBE9C DC
+EFBE9D DD
+EFBE9E DE
+EFBE9F DF
+EFBFA0 8191
+EFBFA1 8192
+EFBFA2 81CA
+EFBFA3 8150
+EFBFA4 FA55
+EFBFA5 818F
DROP TABLE t1;
#
# End of 5.5 tests
diff --git a/mysql-test/r/ctype_eucjpms.result b/mysql-test/r/ctype_eucjpms.result
index c8ece9a28cd..bd25b1beed4 100755
--- a/mysql-test/r/ctype_eucjpms.result
+++ b/mysql-test/r/ctype_eucjpms.result
@@ -10419,6 +10419,22192 @@ HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
code a
8FA9C3 ð
8FABB9 ǵ
+#
+# WL#3090 Japanese Character Set adjustments
+# Test sjis->Unicode conversion
+#
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+HEX(a) b
+8EA1 EFBDA1
+8EA2 EFBDA2
+8EA3 EFBDA3
+8EA4 EFBDA4
+8EA5 EFBDA5
+8EA6 EFBDA6
+8EA7 EFBDA7
+8EA8 EFBDA8
+8EA9 EFBDA9
+8EAA EFBDAA
+8EAB EFBDAB
+8EAC EFBDAC
+8EAD EFBDAD
+8EAE EFBDAE
+8EAF EFBDAF
+8EB0 EFBDB0
+8EB1 EFBDB1
+8EB2 EFBDB2
+8EB3 EFBDB3
+8EB4 EFBDB4
+8EB5 EFBDB5
+8EB6 EFBDB6
+8EB7 EFBDB7
+8EB8 EFBDB8
+8EB9 EFBDB9
+8EBA EFBDBA
+8EBB EFBDBB
+8EBC EFBDBC
+8EBD EFBDBD
+8EBE EFBDBE
+8EBF EFBDBF
+8EC0 EFBE80
+8EC1 EFBE81
+8EC2 EFBE82
+8EC3 EFBE83
+8EC4 EFBE84
+8EC5 EFBE85
+8EC6 EFBE86
+8EC7 EFBE87
+8EC8 EFBE88
+8EC9 EFBE89
+8ECA EFBE8A
+8ECB EFBE8B
+8ECC EFBE8C
+8ECD EFBE8D
+8ECE EFBE8E
+8ECF EFBE8F
+8ED0 EFBE90
+8ED1 EFBE91
+8ED2 EFBE92
+8ED3 EFBE93
+8ED4 EFBE94
+8ED5 EFBE95
+8ED6 EFBE96
+8ED7 EFBE97
+8ED8 EFBE98
+8ED9 EFBE99
+8EDA EFBE9A
+8EDB EFBE9B
+8EDC EFBE9C
+8EDD EFBE9D
+8EDE EFBE9E
+8EDF EFBE9F
+8FA2AF CB98
+8FA2B0 CB87
+8FA2B1 C2B8
+8FA2B2 CB99
+8FA2B3 CB9D
+8FA2B4 C2AF
+8FA2B5 CB9B
+8FA2B6 CB9A
+8FA2B7 EFBD9E
+8FA2B8 CE84
+8FA2B9 CE85
+8FA2C2 C2A1
+8FA2C3 EFBFA4
+8FA2C4 C2BF
+8FA2EB C2BA
+8FA2EC C2AA
+8FA2ED C2A9
+8FA2EE C2AE
+8FA2EF E284A2
+8FA2F0 C2A4
+8FA2F1 E28496
+8FA6E1 CE86
+8FA6E2 CE88
+8FA6E3 CE89
+8FA6E4 CE8A
+8FA6E5 CEAA
+8FA6E7 CE8C
+8FA6E9 CE8E
+8FA6EA CEAB
+8FA6EC CE8F
+8FA6F1 CEAC
+8FA6F2 CEAD
+8FA6F3 CEAE
+8FA6F4 CEAF
+8FA6F5 CF8A
+8FA6F6 CE90
+8FA6F7 CF8C
+8FA6F8 CF82
+8FA6F9 CF8D
+8FA6FA CF8B
+8FA6FB CEB0
+8FA6FC CF8E
+8FA7C2 D082
+8FA7C3 D083
+8FA7C4 D084
+8FA7C5 D085
+8FA7C6 D086
+8FA7C7 D087
+8FA7C8 D088
+8FA7C9 D089
+8FA7CA D08A
+8FA7CB D08B
+8FA7CC D08C
+8FA7CD D08E
+8FA7CE D08F
+8FA7F2 D192
+8FA7F3 D193
+8FA7F4 D194
+8FA7F5 D195
+8FA7F6 D196
+8FA7F7 D197
+8FA7F8 D198
+8FA7F9 D199
+8FA7FA D19A
+8FA7FB D19B
+8FA7FC D19C
+8FA7FD D19E
+8FA7FE D19F
+8FA9A1 C386
+8FA9A2 C490
+8FA9A4 C4A6
+8FA9A6 C4B2
+8FA9A8 C581
+8FA9A9 C4BF
+8FA9AB C58A
+8FA9AC C398
+8FA9AD C592
+8FA9AF C5A6
+8FA9B0 C39E
+8FA9C1 C3A6
+8FA9C2 C491
+8FA9C3 C3B0
+8FA9C4 C4A7
+8FA9C5 C4B1
+8FA9C6 C4B3
+8FA9C7 C4B8
+8FA9C8 C582
+8FA9C9 C580
+8FA9CA C589
+8FA9CB C58B
+8FA9CC C3B8
+8FA9CD C593
+8FA9CE C39F
+8FA9CF C5A7
+8FA9D0 C3BE
+8FAAA1 C381
+8FAAA2 C380
+8FAAA3 C384
+8FAAA4 C382
+8FAAA5 C482
+8FAAA6 C78D
+8FAAA7 C480
+8FAAA8 C484
+8FAAA9 C385
+8FAAAA C383
+8FAAAB C486
+8FAAAC C488
+8FAAAD C48C
+8FAAAE C387
+8FAAAF C48A
+8FAAB0 C48E
+8FAAB1 C389
+8FAAB2 C388
+8FAAB3 C38B
+8FAAB4 C38A
+8FAAB5 C49A
+8FAAB6 C496
+8FAAB7 C492
+8FAAB8 C498
+8FAABA C49C
+8FAABB C49E
+8FAABC C4A2
+8FAABD C4A0
+8FAABE C4A4
+8FAABF C38D
+8FAAC0 C38C
+8FAAC1 C38F
+8FAAC2 C38E
+8FAAC3 C78F
+8FAAC4 C4B0
+8FAAC5 C4AA
+8FAAC6 C4AE
+8FAAC7 C4A8
+8FAAC8 C4B4
+8FAAC9 C4B6
+8FAACA C4B9
+8FAACB C4BD
+8FAACC C4BB
+8FAACD C583
+8FAACE C587
+8FAACF C585
+8FAAD0 C391
+8FAAD1 C393
+8FAAD2 C392
+8FAAD3 C396
+8FAAD4 C394
+8FAAD5 C791
+8FAAD6 C590
+8FAAD7 C58C
+8FAAD8 C395
+8FAAD9 C594
+8FAADA C598
+8FAADB C596
+8FAADC C59A
+8FAADD C59C
+8FAADE C5A0
+8FAADF C59E
+8FAAE0 C5A4
+8FAAE1 C5A2
+8FAAE2 C39A
+8FAAE3 C399
+8FAAE4 C39C
+8FAAE5 C39B
+8FAAE6 C5AC
+8FAAE7 C793
+8FAAE8 C5B0
+8FAAE9 C5AA
+8FAAEA C5B2
+8FAAEB C5AE
+8FAAEC C5A8
+8FAAED C797
+8FAAEE C79B
+8FAAEF C799
+8FAAF0 C795
+8FAAF1 C5B4
+8FAAF2 C39D
+8FAAF3 C5B8
+8FAAF4 C5B6
+8FAAF5 C5B9
+8FAAF6 C5BD
+8FAAF7 C5BB
+8FABA1 C3A1
+8FABA2 C3A0
+8FABA3 C3A4
+8FABA4 C3A2
+8FABA5 C483
+8FABA6 C78E
+8FABA7 C481
+8FABA8 C485
+8FABA9 C3A5
+8FABAA C3A3
+8FABAB C487
+8FABAC C489
+8FABAD C48D
+8FABAE C3A7
+8FABAF C48B
+8FABB0 C48F
+8FABB1 C3A9
+8FABB2 C3A8
+8FABB3 C3AB
+8FABB4 C3AA
+8FABB5 C49B
+8FABB6 C497
+8FABB7 C493
+8FABB8 C499
+8FABB9 C7B5
+8FABBA C49D
+8FABBB C49F
+8FABBD C4A1
+8FABBE C4A5
+8FABBF C3AD
+8FABC0 C3AC
+8FABC1 C3AF
+8FABC2 C3AE
+8FABC3 C790
+8FABC5 C4AB
+8FABC6 C4AF
+8FABC7 C4A9
+8FABC8 C4B5
+8FABC9 C4B7
+8FABCA C4BA
+8FABCB C4BE
+8FABCC C4BC
+8FABCD C584
+8FABCE C588
+8FABCF C586
+8FABD0 C3B1
+8FABD1 C3B3
+8FABD2 C3B2
+8FABD3 C3B6
+8FABD4 C3B4
+8FABD5 C792
+8FABD6 C591
+8FABD7 C58D
+8FABD8 C3B5
+8FABD9 C595
+8FABDA C599
+8FABDB C597
+8FABDC C59B
+8FABDD C59D
+8FABDE C5A1
+8FABDF C59F
+8FABE0 C5A5
+8FABE1 C5A3
+8FABE2 C3BA
+8FABE3 C3B9
+8FABE4 C3BC
+8FABE5 C3BB
+8FABE6 C5AD
+8FABE7 C794
+8FABE8 C5B1
+8FABE9 C5AB
+8FABEA C5B3
+8FABEB C5AF
+8FABEC C5A9
+8FABED C798
+8FABEE C79C
+8FABEF C79A
+8FABF0 C796
+8FABF1 C5B5
+8FABF2 C3BD
+8FABF3 C3BF
+8FABF4 C5B7
+8FABF5 C5BA
+8FABF6 C5BE
+8FABF7 C5BC
+8FB0A1 E4B882
+8FB0A2 E4B884
+8FB0A3 E4B885
+8FB0A4 E4B88C
+8FB0A5 E4B892
+8FB0A6 E4B89F
+8FB0A7 E4B8A3
+8FB0A8 E4B8A4
+8FB0A9 E4B8A8
+8FB0AA E4B8AB
+8FB0AB E4B8AE
+8FB0AC E4B8AF
+8FB0AD E4B8B0
+8FB0AE E4B8B5
+8FB0AF E4B980
+8FB0B0 E4B981
+8FB0B1 E4B984
+8FB0B2 E4B987
+8FB0B3 E4B991
+8FB0B4 E4B99A
+8FB0B5 E4B99C
+8FB0B6 E4B9A3
+8FB0B7 E4B9A8
+8FB0B8 E4B9A9
+8FB0B9 E4B9B4
+8FB0BA E4B9B5
+8FB0BB E4B9B9
+8FB0BC E4B9BF
+8FB0BD E4BA8D
+8FB0BE E4BA96
+8FB0BF E4BA97
+8FB0C0 E4BA9D
+8FB0C1 E4BAAF
+8FB0C2 E4BAB9
+8FB0C3 E4BB83
+8FB0C4 E4BB90
+8FB0C5 E4BB9A
+8FB0C6 E4BB9B
+8FB0C7 E4BBA0
+8FB0C8 E4BBA1
+8FB0C9 E4BBA2
+8FB0CA E4BBA8
+8FB0CB E4BBAF
+8FB0CC E4BBB1
+8FB0CD E4BBB3
+8FB0CE E4BBB5
+8FB0CF E4BBBD
+8FB0D0 E4BBBE
+8FB0D1 E4BBBF
+8FB0D2 E4BC80
+8FB0D3 E4BC82
+8FB0D4 E4BC83
+8FB0D5 E4BC88
+8FB0D6 E4BC8B
+8FB0D7 E4BC8C
+8FB0D8 E4BC92
+8FB0D9 E4BC95
+8FB0DA E4BC96
+8FB0DB E4BC97
+8FB0DC E4BC99
+8FB0DD E4BCAE
+8FB0DE E4BCB1
+8FB0DF E4BDA0
+8FB0E0 E4BCB3
+8FB0E1 E4BCB5
+8FB0E2 E4BCB7
+8FB0E3 E4BCB9
+8FB0E4 E4BCBB
+8FB0E5 E4BCBE
+8FB0E6 E4BD80
+8FB0E7 E4BD82
+8FB0E8 E4BD88
+8FB0E9 E4BD89
+8FB0EA E4BD8B
+8FB0EB E4BD8C
+8FB0EC E4BD92
+8FB0ED E4BD94
+8FB0EE E4BD96
+8FB0EF E4BD98
+8FB0F0 E4BD9F
+8FB0F1 E4BDA3
+8FB0F2 E4BDAA
+8FB0F3 E4BDAC
+8FB0F4 E4BDAE
+8FB0F5 E4BDB1
+8FB0F6 E4BDB7
+8FB0F7 E4BDB8
+8FB0F8 E4BDB9
+8FB0F9 E4BDBA
+8FB0FA E4BDBD
+8FB0FB E4BDBE
+8FB0FC E4BE81
+8FB0FD E4BE82
+8FB0FE E4BE84
+8FB1A1 E4BE85
+8FB1A2 E4BE89
+8FB1A3 E4BE8A
+8FB1A4 E4BE8C
+8FB1A5 E4BE8E
+8FB1A6 E4BE90
+8FB1A7 E4BE92
+8FB1A8 E4BE93
+8FB1A9 E4BE94
+8FB1AA E4BE97
+8FB1AB E4BE99
+8FB1AC E4BE9A
+8FB1AD E4BE9E
+8FB1AE E4BE9F
+8FB1AF E4BEB2
+8FB1B0 E4BEB7
+8FB1B1 E4BEB9
+8FB1B2 E4BEBB
+8FB1B3 E4BEBC
+8FB1B4 E4BEBD
+8FB1B5 E4BEBE
+8FB1B6 E4BF80
+8FB1B7 E4BF81
+8FB1B8 E4BF85
+8FB1B9 E4BF86
+8FB1BA E4BF88
+8FB1BB E4BF89
+8FB1BC E4BF8B
+8FB1BD E4BF8C
+8FB1BE E4BF8D
+8FB1BF E4BF8F
+8FB1C0 E4BF92
+8FB1C1 E4BF9C
+8FB1C2 E4BFA0
+8FB1C3 E4BFA2
+8FB1C4 E4BFB0
+8FB1C5 E4BFB2
+8FB1C6 E4BFBC
+8FB1C7 E4BFBD
+8FB1C8 E4BFBF
+8FB1C9 E58080
+8FB1CA E58081
+8FB1CB E58084
+8FB1CC E58087
+8FB1CD E5808A
+8FB1CE E5808C
+8FB1CF E5808E
+8FB1D0 E58090
+8FB1D1 E58093
+8FB1D2 E58097
+8FB1D3 E58098
+8FB1D4 E5809B
+8FB1D5 E5809C
+8FB1D6 E5809D
+8FB1D7 E5809E
+8FB1D8 E580A2
+8FB1D9 E580A7
+8FB1DA E580AE
+8FB1DB E580B0
+8FB1DC E580B2
+8FB1DD E580B3
+8FB1DE E580B5
+8FB1DF E58180
+8FB1E0 E58181
+8FB1E1 E58182
+8FB1E2 E58185
+8FB1E3 E58186
+8FB1E4 E5818A
+8FB1E5 E5818C
+8FB1E6 E5818E
+8FB1E7 E58191
+8FB1E8 E58192
+8FB1E9 E58193
+8FB1EA E58197
+8FB1EB E58199
+8FB1EC E5819F
+8FB1ED E581A0
+8FB1EE E581A2
+8FB1EF E581A3
+8FB1F0 E581A6
+8FB1F1 E581A7
+8FB1F2 E581AA
+8FB1F3 E581AD
+8FB1F4 E581B0
+8FB1F5 E581B1
+8FB1F6 E580BB
+8FB1F7 E58281
+8FB1F8 E58283
+8FB1F9 E58284
+8FB1FA E58286
+8FB1FB E5828A
+8FB1FC E5828E
+8FB1FD E5828F
+8FB1FE E58290
+8FB2A1 E58292
+8FB2A2 E58293
+8FB2A3 E58294
+8FB2A4 E58296
+8FB2A5 E5829B
+8FB2A6 E5829C
+8FB2A7 E5829E
+8FB2A8 E5829F
+8FB2A9 E582A0
+8FB2AA E582A1
+8FB2AB E582A2
+8FB2AC E582AA
+8FB2AD E582AF
+8FB2AE E582B0
+8FB2AF E582B9
+8FB2B0 E582BA
+8FB2B1 E582BD
+8FB2B2 E58380
+8FB2B3 E58383
+8FB2B4 E58384
+8FB2B5 E58387
+8FB2B6 E5838C
+8FB2B7 E5838E
+8FB2B8 E58390
+8FB2B9 E58393
+8FB2BA E58394
+8FB2BB E58398
+8FB2BC E5839C
+8FB2BD E5839D
+8FB2BE E5839F
+8FB2BF E583A2
+8FB2C0 E583A4
+8FB2C1 E583A6
+8FB2C2 E583A8
+8FB2C3 E583A9
+8FB2C4 E583AF
+8FB2C5 E583B1
+8FB2C6 E583B6
+8FB2C7 E583BA
+8FB2C8 E583BE
+8FB2C9 E58483
+8FB2CA E58486
+8FB2CB E58487
+8FB2CC E58488
+8FB2CD E5848B
+8FB2CE E5848C
+8FB2CF E5848D
+8FB2D0 E5848E
+8FB2D1 E583B2
+8FB2D2 E58490
+8FB2D3 E58497
+8FB2D4 E58499
+8FB2D5 E5849B
+8FB2D6 E5849C
+8FB2D7 E5849D
+8FB2D8 E5849E
+8FB2D9 E584A3
+8FB2DA E584A7
+8FB2DB E584A8
+8FB2DC E584AC
+8FB2DD E584AD
+8FB2DE E584AF
+8FB2DF E584B1
+8FB2E0 E584B3
+8FB2E1 E584B4
+8FB2E2 E584B5
+8FB2E3 E584B8
+8FB2E4 E584B9
+8FB2E5 E58582
+8FB2E6 E5858A
+8FB2E7 E5858F
+8FB2E8 E58593
+8FB2E9 E58595
+8FB2EA E58597
+8FB2EB E58598
+8FB2EC E5859F
+8FB2ED E585A4
+8FB2EE E585A6
+8FB2EF E585BE
+8FB2F0 E58683
+8FB2F1 E58684
+8FB2F2 E5868B
+8FB2F3 E5868E
+8FB2F4 E58698
+8FB2F5 E5869D
+8FB2F6 E586A1
+8FB2F7 E586A3
+8FB2F8 E586AD
+8FB2F9 E586B8
+8FB2FA E586BA
+8FB2FB E586BC
+8FB2FC E586BE
+8FB2FD E586BF
+8FB2FE E58782
+8FB3A1 E58788
+8FB3A2 E5878F
+8FB3A3 E58791
+8FB3A4 E58792
+8FB3A5 E58793
+8FB3A6 E58795
+8FB3A7 E58798
+8FB3A8 E5879E
+8FB3A9 E587A2
+8FB3AA E587A5
+8FB3AB E587AE
+8FB3AC E587B2
+8FB3AD E587B3
+8FB3AE E587B4
+8FB3AF E587B7
+8FB3B0 E58881
+8FB3B1 E58882
+8FB3B2 E58885
+8FB3B3 E58892
+8FB3B4 E58893
+8FB3B5 E58895
+8FB3B6 E58896
+8FB3B7 E58898
+8FB3B8 E588A2
+8FB3B9 E588A8
+8FB3BA E588B1
+8FB3BB E588B2
+8FB3BC E588B5
+8FB3BD E588BC
+8FB3BE E58985
+8FB3BF E58989
+8FB3C0 E58995
+8FB3C1 E58997
+8FB3C2 E58998
+8FB3C3 E5899A
+8FB3C4 E5899C
+8FB3C5 E5899F
+8FB3C6 E589A0
+8FB3C7 E589A1
+8FB3C8 E589A6
+8FB3C9 E589AE
+8FB3CA E589B7
+8FB3CB E589B8
+8FB3CC E589B9
+8FB3CD E58A80
+8FB3CE E58A82
+8FB3CF E58A85
+8FB3D0 E58A8A
+8FB3D1 E58A8C
+8FB3D2 E58A93
+8FB3D3 E58A95
+8FB3D4 E58A96
+8FB3D5 E58A97
+8FB3D6 E58A98
+8FB3D7 E58A9A
+8FB3D8 E58A9C
+8FB3D9 E58AA4
+8FB3DA E58AA5
+8FB3DB E58AA6
+8FB3DC E58AA7
+8FB3DD E58AAF
+8FB3DE E58AB0
+8FB3DF E58AB6
+8FB3E0 E58AB7
+8FB3E1 E58AB8
+8FB3E2 E58ABA
+8FB3E3 E58ABB
+8FB3E4 E58ABD
+8FB3E5 E58B80
+8FB3E6 E58B84
+8FB3E7 E58B86
+8FB3E8 E58B88
+8FB3E9 E58B8C
+8FB3EA E58B8F
+8FB3EB E58B91
+8FB3EC E58B94
+8FB3ED E58B96
+8FB3EE E58B9B
+8FB3EF E58B9C
+8FB3F0 E58BA1
+8FB3F1 E58BA5
+8FB3F2 E58BA8
+8FB3F3 E58BA9
+8FB3F4 E58BAA
+8FB3F5 E58BAC
+8FB3F6 E58BB0
+8FB3F7 E58BB1
+8FB3F8 E58BB4
+8FB3F9 E58BB6
+8FB3FA E58BB7
+8FB3FB E58C80
+8FB3FC E58C83
+8FB3FD E58C8A
+8FB3FE E58C8B
+8FB4A1 E58C8C
+8FB4A2 E58C91
+8FB4A3 E58C93
+8FB4A4 E58C98
+8FB4A5 E58C9B
+8FB4A6 E58C9C
+8FB4A7 E58C9E
+8FB4A8 E58C9F
+8FB4A9 E58CA5
+8FB4AA E58CA7
+8FB4AB E58CA8
+8FB4AC E58CA9
+8FB4AD E58CAB
+8FB4AE E58CAC
+8FB4AF E58CAD
+8FB4B0 E58CB0
+8FB4B1 E58CB2
+8FB4B2 E58CB5
+8FB4B3 E58CBC
+8FB4B4 E58CBD
+8FB4B5 E58CBE
+8FB4B6 E58D82
+8FB4B7 E58D8C
+8FB4B8 E58D8B
+8FB4B9 E58D99
+8FB4BA E58D9B
+8FB4BB E58DA1
+8FB4BC E58DA3
+8FB4BD E58DA5
+8FB4BE E58DAC
+8FB4BF E58DAD
+8FB4C0 E58DB2
+8FB4C1 E58DB9
+8FB4C2 E58DBE
+8FB4C3 E58E83
+8FB4C4 E58E87
+8FB4C5 E58E88
+8FB4C6 E58E8E
+8FB4C7 E58E93
+8FB4C8 E58E94
+8FB4C9 E58E99
+8FB4CA E58E9D
+8FB4CB E58EA1
+8FB4CC E58EA4
+8FB4CD E58EAA
+8FB4CE E58EAB
+8FB4CF E58EAF
+8FB4D0 E58EB2
+8FB4D1 E58EB4
+8FB4D2 E58EB5
+8FB4D3 E58EB7
+8FB4D4 E58EB8
+8FB4D5 E58EBA
+8FB4D6 E58EBD
+8FB4D7 E58F80
+8FB4D8 E58F85
+8FB4D9 E58F8F
+8FB4DA E58F92
+8FB4DB E58F93
+8FB4DC E58F95
+8FB4DD E58F9A
+8FB4DE E58F9D
+8FB4DF E58F9E
+8FB4E0 E58FA0
+8FB4E1 E58FA6
+8FB4E2 E58FA7
+8FB4E3 E58FB5
+8FB4E4 E59082
+8FB4E5 E59093
+8FB4E6 E5909A
+8FB4E7 E590A1
+8FB4E8 E590A7
+8FB4E9 E590A8
+8FB4EA E590AA
+8FB4EB E590AF
+8FB4EC E590B1
+8FB4ED E590B4
+8FB4EE E590B5
+8FB4EF E59183
+8FB4F0 E59184
+8FB4F1 E59187
+8FB4F2 E5918D
+8FB4F3 E5918F
+8FB4F4 E5919E
+8FB4F5 E591A2
+8FB4F6 E591A4
+8FB4F7 E591A6
+8FB4F8 E591A7
+8FB4F9 E591A9
+8FB4FA E591AB
+8FB4FB E591AD
+8FB4FC E591AE
+8FB4FD E591B4
+8FB4FE E591BF
+8FB5A1 E59281
+8FB5A2 E59283
+8FB5A3 E59285
+8FB5A4 E59288
+8FB5A5 E59289
+8FB5A6 E5928D
+8FB5A7 E59291
+8FB5A8 E59295
+8FB5A9 E59296
+8FB5AA E5929C
+8FB5AB E5929F
+8FB5AC E592A1
+8FB5AD E592A6
+8FB5AE E592A7
+8FB5AF E592A9
+8FB5B0 E592AA
+8FB5B1 E592AD
+8FB5B2 E592AE
+8FB5B3 E592B1
+8FB5B4 E592B7
+8FB5B5 E592B9
+8FB5B6 E592BA
+8FB5B7 E592BB
+8FB5B8 E592BF
+8FB5B9 E59386
+8FB5BA E5938A
+8FB5BB E5938D
+8FB5BC E5938E
+8FB5BD E593A0
+8FB5BE E593AA
+8FB5BF E593AC
+8FB5C0 E593AF
+8FB5C1 E593B6
+8FB5C2 E593BC
+8FB5C3 E593BE
+8FB5C4 E593BF
+8FB5C5 E59480
+8FB5C6 E59481
+8FB5C7 E59485
+8FB5C8 E59488
+8FB5C9 E59489
+8FB5CA E5948C
+8FB5CB E5948D
+8FB5CC E5948E
+8FB5CD E59495
+8FB5CE E594AA
+8FB5CF E594AB
+8FB5D0 E594B2
+8FB5D1 E594B5
+8FB5D2 E594B6
+8FB5D3 E594BB
+8FB5D4 E594BC
+8FB5D5 E594BD
+8FB5D6 E59581
+8FB5D7 E59587
+8FB5D8 E59589
+8FB5D9 E5958A
+8FB5DA E5958D
+8FB5DB E59590
+8FB5DC E59591
+8FB5DD E59598
+8FB5DE E5959A
+8FB5DF E5959B
+8FB5E0 E5959E
+8FB5E1 E595A0
+8FB5E2 E595A1
+8FB5E3 E595A4
+8FB5E4 E595A6
+8FB5E5 E595BF
+8FB5E6 E59681
+8FB5E7 E59682
+8FB5E8 E59686
+8FB5E9 E59688
+8FB5EA E5968E
+8FB5EB E5968F
+8FB5EC E59691
+8FB5ED E59692
+8FB5EE E59693
+8FB5EF E59694
+8FB5F0 E59697
+8FB5F1 E596A3
+8FB5F2 E596A4
+8FB5F3 E596AD
+8FB5F4 E596B2
+8FB5F5 E596BF
+8FB5F6 E59781
+8FB5F7 E59783
+8FB5F8 E59786
+8FB5F9 E59789
+8FB5FA E5978B
+8FB5FB E5978C
+8FB5FC E5978E
+8FB5FD E59791
+8FB5FE E59792
+8FB6A1 E59793
+8FB6A2 E59797
+8FB6A3 E59798
+8FB6A4 E5979B
+8FB6A5 E5979E
+8FB6A6 E597A2
+8FB6A7 E597A9
+8FB6A8 E597B6
+8FB6A9 E597BF
+8FB6AA E59885
+8FB6AB E59888
+8FB6AC E5988A
+8FB6AD E5988D
+8FB6AE E5988E
+8FB6AF E5988F
+8FB6B0 E59890
+8FB6B1 E59891
+8FB6B2 E59892
+8FB6B3 E59899
+8FB6B4 E598AC
+8FB6B5 E598B0
+8FB6B6 E598B3
+8FB6B7 E598B5
+8FB6B8 E598B7
+8FB6B9 E598B9
+8FB6BA E598BB
+8FB6BB E598BC
+8FB6BC E598BD
+8FB6BD E598BF
+8FB6BE E59980
+8FB6BF E59981
+8FB6C0 E59983
+8FB6C1 E59984
+8FB6C2 E59986
+8FB6C3 E59989
+8FB6C4 E5998B
+8FB6C5 E5998D
+8FB6C6 E5998F
+8FB6C7 E59994
+8FB6C8 E5999E
+8FB6C9 E599A0
+8FB6CA E599A1
+8FB6CB E599A2
+8FB6CC E599A3
+8FB6CD E599A6
+8FB6CE E599A9
+8FB6CF E599AD
+8FB6D0 E599AF
+8FB6D1 E599B1
+8FB6D2 E599B2
+8FB6D3 E599B5
+8FB6D4 E59A84
+8FB6D5 E59A85
+8FB6D6 E59A88
+8FB6D7 E59A8B
+8FB6D8 E59A8C
+8FB6D9 E59A95
+8FB6DA E59A99
+8FB6DB E59A9A
+8FB6DC E59A9D
+8FB6DD E59A9E
+8FB6DE E59A9F
+8FB6DF E59AA6
+8FB6E0 E59AA7
+8FB6E1 E59AA8
+8FB6E2 E59AA9
+8FB6E3 E59AAB
+8FB6E4 E59AAC
+8FB6E5 E59AAD
+8FB6E6 E59AB1
+8FB6E7 E59AB3
+8FB6E8 E59AB7
+8FB6E9 E59ABE
+8FB6EA E59B85
+8FB6EB E59B89
+8FB6EC E59B8A
+8FB6ED E59B8B
+8FB6EE E59B8F
+8FB6EF E59B90
+8FB6F0 E59B8C
+8FB6F1 E59B8D
+8FB6F2 E59B99
+8FB6F3 E59B9C
+8FB6F4 E59B9D
+8FB6F5 E59B9F
+8FB6F6 E59BA1
+8FB6F7 E59BA4
+8FB6F8 E59BA5
+8FB6F9 E59BA6
+8FB6FA E59BA7
+8FB6FB E59BA8
+8FB6FC E59BB1
+8FB6FD E59BAB
+8FB6FE E59BAD
+8FB7A1 E59BB6
+8FB7A2 E59BB7
+8FB7A3 E59C81
+8FB7A4 E59C82
+8FB7A5 E59C87
+8FB7A6 E59C8A
+8FB7A7 E59C8C
+8FB7A8 E59C91
+8FB7A9 E59C95
+8FB7AA E59C9A
+8FB7AB E59C9B
+8FB7AC E59C9D
+8FB7AD E59CA0
+8FB7AE E59CA2
+8FB7AF E59CA3
+8FB7B0 E59CA4
+8FB7B1 E59CA5
+8FB7B2 E59CA9
+8FB7B3 E59CAA
+8FB7B4 E59CAC
+8FB7B5 E59CAE
+8FB7B6 E59CAF
+8FB7B7 E59CB3
+8FB7B8 E59CB4
+8FB7B9 E59CBD
+8FB7BA E59CBE
+8FB7BB E59CBF
+8FB7BC E59D85
+8FB7BD E59D86
+8FB7BE E59D8C
+8FB7BF E59D8D
+8FB7C0 E59D92
+8FB7C1 E59DA2
+8FB7C2 E59DA5
+8FB7C3 E59DA7
+8FB7C4 E59DA8
+8FB7C5 E59DAB
+8FB7C6 E59DAD
+8FB7C7 E59DAE
+8FB7C8 E59DAF
+8FB7C9 E59DB0
+8FB7CA E59DB1
+8FB7CB E59DB3
+8FB7CC E59DB4
+8FB7CD E59DB5
+8FB7CE E59DB7
+8FB7CF E59DB9
+8FB7D0 E59DBA
+8FB7D1 E59DBB
+8FB7D2 E59DBC
+8FB7D3 E59DBE
+8FB7D4 E59E81
+8FB7D5 E59E83
+8FB7D6 E59E8C
+8FB7D7 E59E94
+8FB7D8 E59E97
+8FB7D9 E59E99
+8FB7DA E59E9A
+8FB7DB E59E9C
+8FB7DC E59E9D
+8FB7DD E59E9E
+8FB7DE E59E9F
+8FB7DF E59EA1
+8FB7E0 E59E95
+8FB7E1 E59EA7
+8FB7E2 E59EA8
+8FB7E3 E59EA9
+8FB7E4 E59EAC
+8FB7E5 E59EB8
+8FB7E6 E59EBD
+8FB7E7 E59F87
+8FB7E8 E59F88
+8FB7E9 E59F8C
+8FB7EA E59F8F
+8FB7EB E59F95
+8FB7EC E59F9D
+8FB7ED E59F9E
+8FB7EE E59FA4
+8FB7EF E59FA6
+8FB7F0 E59FA7
+8FB7F1 E59FA9
+8FB7F2 E59FAD
+8FB7F3 E59FB0
+8FB7F4 E59FB5
+8FB7F5 E59FB6
+8FB7F6 E59FB8
+8FB7F7 E59FBD
+8FB7F8 E59FBE
+8FB7F9 E59FBF
+8FB7FA E5A083
+8FB7FB E5A084
+8FB7FC E5A088
+8FB7FD E5A089
+8FB7FE E59FA1
+8FB8A1 E5A08C
+8FB8A2 E5A08D
+8FB8A3 E5A09B
+8FB8A4 E5A09E
+8FB8A5 E5A09F
+8FB8A6 E5A0A0
+8FB8A7 E5A0A6
+8FB8A8 E5A0A7
+8FB8A9 E5A0AD
+8FB8AA E5A0B2
+8FB8AB E5A0B9
+8FB8AC E5A0BF
+8FB8AD E5A189
+8FB8AE E5A18C
+8FB8AF E5A18D
+8FB8B0 E5A18F
+8FB8B1 E5A190
+8FB8B2 E5A195
+8FB8B3 E5A19F
+8FB8B4 E5A1A1
+8FB8B5 E5A1A4
+8FB8B6 E5A1A7
+8FB8B7 E5A1A8
+8FB8B8 E5A1B8
+8FB8B9 E5A1BC
+8FB8BA E5A1BF
+8FB8BB E5A280
+8FB8BC E5A281
+8FB8BD E5A287
+8FB8BE E5A288
+8FB8BF E5A289
+8FB8C0 E5A28A
+8FB8C1 E5A28C
+8FB8C2 E5A28D
+8FB8C3 E5A28F
+8FB8C4 E5A290
+8FB8C5 E5A294
+8FB8C6 E5A296
+8FB8C7 E5A29D
+8FB8C8 E5A2A0
+8FB8C9 E5A2A1
+8FB8CA E5A2A2
+8FB8CB E5A2A6
+8FB8CC E5A2A9
+8FB8CD E5A2B1
+8FB8CE E5A2B2
+8FB8CF E5A384
+8FB8D0 E5A2BC
+8FB8D1 E5A382
+8FB8D2 E5A388
+8FB8D3 E5A38D
+8FB8D4 E5A38E
+8FB8D5 E5A390
+8FB8D6 E5A392
+8FB8D7 E5A394
+8FB8D8 E5A396
+8FB8D9 E5A39A
+8FB8DA E5A39D
+8FB8DB E5A3A1
+8FB8DC E5A3A2
+8FB8DD E5A3A9
+8FB8DE E5A3B3
+8FB8DF E5A485
+8FB8E0 E5A486
+8FB8E1 E5A48B
+8FB8E2 E5A48C
+8FB8E3 E5A492
+8FB8E4 E5A493
+8FB8E5 E5A494
+8FB8E6 E89981
+8FB8E7 E5A49D
+8FB8E8 E5A4A1
+8FB8E9 E5A4A3
+8FB8EA E5A4A4
+8FB8EB E5A4A8
+8FB8EC E5A4AF
+8FB8ED E5A4B0
+8FB8EE E5A4B3
+8FB8EF E5A4B5
+8FB8F0 E5A4B6
+8FB8F1 E5A4BF
+8FB8F2 E5A583
+8FB8F3 E5A586
+8FB8F4 E5A592
+8FB8F5 E5A593
+8FB8F6 E5A599
+8FB8F7 E5A59B
+8FB8F8 E5A59D
+8FB8F9 E5A59E
+8FB8FA E5A59F
+8FB8FB E5A5A1
+8FB8FC E5A5A3
+8FB8FD E5A5AB
+8FB8FE E5A5AD
+8FB9A1 E5A5AF
+8FB9A2 E5A5B2
+8FB9A3 E5A5B5
+8FB9A4 E5A5B6
+8FB9A5 E5A5B9
+8FB9A6 E5A5BB
+8FB9A7 E5A5BC
+8FB9A8 E5A68B
+8FB9A9 E5A68C
+8FB9AA E5A68E
+8FB9AB E5A692
+8FB9AC E5A695
+8FB9AD E5A697
+8FB9AE E5A69F
+8FB9AF E5A6A4
+8FB9B0 E5A6A7
+8FB9B1 E5A6AD
+8FB9B2 E5A6AE
+8FB9B3 E5A6AF
+8FB9B4 E5A6B0
+8FB9B5 E5A6B3
+8FB9B6 E5A6B7
+8FB9B7 E5A6BA
+8FB9B8 E5A6BC
+8FB9B9 E5A781
+8FB9BA E5A783
+8FB9BB E5A784
+8FB9BC E5A788
+8FB9BD E5A78A
+8FB9BE E5A78D
+8FB9BF E5A792
+8FB9C0 E5A79D
+8FB9C1 E5A79E
+8FB9C2 E5A79F
+8FB9C3 E5A7A3
+8FB9C4 E5A7A4
+8FB9C5 E5A7A7
+8FB9C6 E5A7AE
+8FB9C7 E5A7AF
+8FB9C8 E5A7B1
+8FB9C9 E5A7B2
+8FB9CA E5A7B4
+8FB9CB E5A7B7
+8FB9CC E5A880
+8FB9CD E5A884
+8FB9CE E5A88C
+8FB9CF E5A88D
+8FB9D0 E5A88E
+8FB9D1 E5A892
+8FB9D2 E5A893
+8FB9D3 E5A89E
+8FB9D4 E5A8A3
+8FB9D5 E5A8A4
+8FB9D6 E5A8A7
+8FB9D7 E5A8A8
+8FB9D8 E5A8AA
+8FB9D9 E5A8AD
+8FB9DA E5A8B0
+8FB9DB E5A984
+8FB9DC E5A985
+8FB9DD E5A987
+8FB9DE E5A988
+8FB9DF E5A98C
+8FB9E0 E5A990
+8FB9E1 E5A995
+8FB9E2 E5A99E
+8FB9E3 E5A9A3
+8FB9E4 E5A9A5
+8FB9E5 E5A9A7
+8FB9E6 E5A9AD
+8FB9E7 E5A9B7
+8FB9E8 E5A9BA
+8FB9E9 E5A9BB
+8FB9EA E5A9BE
+8FB9EB E5AA8B
+8FB9EC E5AA90
+8FB9ED E5AA93
+8FB9EE E5AA96
+8FB9EF E5AA99
+8FB9F0 E5AA9C
+8FB9F1 E5AA9E
+8FB9F2 E5AA9F
+8FB9F3 E5AAA0
+8FB9F4 E5AAA2
+8FB9F5 E5AAA7
+8FB9F6 E5AAAC
+8FB9F7 E5AAB1
+8FB9F8 E5AAB2
+8FB9F9 E5AAB3
+8FB9FA E5AAB5
+8FB9FB E5AAB8
+8FB9FC E5AABA
+8FB9FD E5AABB
+8FB9FE E5AABF
+8FBAA1 E5AB84
+8FBAA2 E5AB86
+8FBAA3 E5AB88
+8FBAA4 E5AB8F
+8FBAA5 E5AB9A
+8FBAA6 E5AB9C
+8FBAA7 E5ABA0
+8FBAA8 E5ABA5
+8FBAA9 E5ABAA
+8FBAAA E5ABAE
+8FBAAB E5ABB5
+8FBAAC E5ABB6
+8FBAAD E5ABBD
+8FBAAE E5AC80
+8FBAAF E5AC81
+8FBAB0 E5AC88
+8FBAB1 E5AC97
+8FBAB2 E5ACB4
+8FBAB3 E5AC99
+8FBAB4 E5AC9B
+8FBAB5 E5AC9D
+8FBAB6 E5ACA1
+8FBAB7 E5ACA5
+8FBAB8 E5ACAD
+8FBAB9 E5ACB8
+8FBABA E5AD81
+8FBABB E5AD8B
+8FBABC E5AD8C
+8FBABD E5AD92
+8FBABE E5AD96
+8FBABF E5AD9E
+8FBAC0 E5ADA8
+8FBAC1 E5ADAE
+8FBAC2 E5ADAF
+8FBAC3 E5ADBC
+8FBAC4 E5ADBD
+8FBAC5 E5ADBE
+8FBAC6 E5ADBF
+8FBAC7 E5AE81
+8FBAC8 E5AE84
+8FBAC9 E5AE86
+8FBACA E5AE8A
+8FBACB E5AE8E
+8FBACC E5AE90
+8FBACD E5AE91
+8FBACE E5AE93
+8FBACF E5AE94
+8FBAD0 E5AE96
+8FBAD1 E5AEA8
+8FBAD2 E5AEA9
+8FBAD3 E5AEAC
+8FBAD4 E5AEAD
+8FBAD5 E5AEAF
+8FBAD6 E5AEB1
+8FBAD7 E5AEB2
+8FBAD8 E5AEB7
+8FBAD9 E5AEBA
+8FBADA E5AEBC
+8FBADB E5AF80
+8FBADC E5AF81
+8FBADD E5AF8D
+8FBADE E5AF8F
+8FBADF E5AF96
+8FBAE0 E5AF97
+8FBAE1 E5AF98
+8FBAE2 E5AF99
+8FBAE3 E5AF9A
+8FBAE4 E5AFA0
+8FBAE5 E5AFAF
+8FBAE6 E5AFB1
+8FBAE7 E5AFB4
+8FBAE8 E5AFBD
+8FBAE9 E5B08C
+8FBAEA E5B097
+8FBAEB E5B09E
+8FBAEC E5B09F
+8FBAED E5B0A3
+8FBAEE E5B0A6
+8FBAEF E5B0A9
+8FBAF0 E5B0AB
+8FBAF1 E5B0AC
+8FBAF2 E5B0AE
+8FBAF3 E5B0B0
+8FBAF4 E5B0B2
+8FBAF5 E5B0B5
+8FBAF6 E5B0B6
+8FBAF7 E5B199
+8FBAF8 E5B19A
+8FBAF9 E5B19C
+8FBAFA E5B1A2
+8FBAFB E5B1A3
+8FBAFC E5B1A7
+8FBAFD E5B1A8
+8FBAFE E5B1A9
+8FBBA1 E5B1AD
+8FBBA2 E5B1B0
+8FBBA3 E5B1B4
+8FBBA4 E5B1B5
+8FBBA5 E5B1BA
+8FBBA6 E5B1BB
+8FBBA7 E5B1BC
+8FBBA8 E5B1BD
+8FBBA9 E5B287
+8FBBAA E5B288
+8FBBAB E5B28A
+8FBBAC E5B28F
+8FBBAD E5B292
+8FBBAE E5B29D
+8FBBAF E5B29F
+8FBBB0 E5B2A0
+8FBBB1 E5B2A2
+8FBBB2 E5B2A3
+8FBBB3 E5B2A6
+8FBBB4 E5B2AA
+8FBBB5 E5B2B2
+8FBBB6 E5B2B4
+8FBBB7 E5B2B5
+8FBBB8 E5B2BA
+8FBBB9 E5B389
+8FBBBA E5B38B
+8FBBBB E5B392
+8FBBBC E5B39D
+8FBBBD E5B397
+8FBBBE E5B3AE
+8FBBBF E5B3B1
+8FBBC0 E5B3B2
+8FBBC1 E5B3B4
+8FBBC2 E5B481
+8FBBC3 E5B486
+8FBBC4 E5B48D
+8FBBC5 E5B492
+8FBBC6 E5B4AB
+8FBBC7 E5B4A3
+8FBBC8 E5B4A4
+8FBBC9 E5B4A6
+8FBBCA E5B4A7
+8FBBCB E5B4B1
+8FBBCC E5B4B4
+8FBBCD E5B4B9
+8FBBCE E5B4BD
+8FBBCF E5B4BF
+8FBBD0 E5B582
+8FBBD1 E5B583
+8FBBD2 E5B586
+8FBBD3 E5B588
+8FBBD4 E5B595
+8FBBD5 E5B591
+8FBBD6 E5B599
+8FBBD7 E5B58A
+8FBBD8 E5B59F
+8FBBD9 E5B5A0
+8FBBDA E5B5A1
+8FBBDB E5B5A2
+8FBBDC E5B5A4
+8FBBDD E5B5AA
+8FBBDE E5B5AD
+8FBBDF E5B5B0
+8FBBE0 E5B5B9
+8FBBE1 E5B5BA
+8FBBE2 E5B5BE
+8FBBE3 E5B5BF
+8FBBE4 E5B681
+8FBBE5 E5B683
+8FBBE6 E5B688
+8FBBE7 E5B68A
+8FBBE8 E5B692
+8FBBE9 E5B693
+8FBBEA E5B694
+8FBBEB E5B695
+8FBBEC E5B699
+8FBBED E5B69B
+8FBBEE E5B69F
+8FBBEF E5B6A0
+8FBBF0 E5B6A7
+8FBBF1 E5B6AB
+8FBBF2 E5B6B0
+8FBBF3 E5B6B4
+8FBBF4 E5B6B8
+8FBBF5 E5B6B9
+8FBBF6 E5B783
+8FBBF7 E5B787
+8FBBF8 E5B78B
+8FBBF9 E5B790
+8FBBFA E5B78E
+8FBBFB E5B798
+8FBBFC E5B799
+8FBBFD E5B7A0
+8FBBFE E5B7A4
+8FBCA1 E5B7A9
+8FBCA2 E5B7B8
+8FBCA3 E5B7B9
+8FBCA4 E5B880
+8FBCA5 E5B887
+8FBCA6 E5B88D
+8FBCA7 E5B892
+8FBCA8 E5B894
+8FBCA9 E5B895
+8FBCAA E5B898
+8FBCAB E5B89F
+8FBCAC E5B8A0
+8FBCAD E5B8AE
+8FBCAE E5B8A8
+8FBCAF E5B8B2
+8FBCB0 E5B8B5
+8FBCB1 E5B8BE
+8FBCB2 E5B98B
+8FBCB3 E5B990
+8FBCB4 E5B989
+8FBCB5 E5B991
+8FBCB6 E5B996
+8FBCB7 E5B998
+8FBCB8 E5B99B
+8FBCB9 E5B99C
+8FBCBA E5B99E
+8FBCBB E5B9A8
+8FBCBC E5B9AA
+8FBCBD E5B9AB
+8FBCBE E5B9AC
+8FBCBF E5B9AD
+8FBCC0 E5B9AE
+8FBCC1 E5B9B0
+8FBCC2 E5BA80
+8FBCC3 E5BA8B
+8FBCC4 E5BA8E
+8FBCC5 E5BAA2
+8FBCC6 E5BAA4
+8FBCC7 E5BAA5
+8FBCC8 E5BAA8
+8FBCC9 E5BAAA
+8FBCCA E5BAAC
+8FBCCB E5BAB1
+8FBCCC E5BAB3
+8FBCCD E5BABD
+8FBCCE E5BABE
+8FBCCF E5BABF
+8FBCD0 E5BB86
+8FBCD1 E5BB8C
+8FBCD2 E5BB8B
+8FBCD3 E5BB8E
+8FBCD4 E5BB91
+8FBCD5 E5BB92
+8FBCD6 E5BB94
+8FBCD7 E5BB95
+8FBCD8 E5BB9C
+8FBCD9 E5BB9E
+8FBCDA E5BBA5
+8FBCDB E5BBAB
+8FBCDC E5BC82
+8FBCDD E5BC86
+8FBCDE E5BC87
+8FBCDF E5BC88
+8FBCE0 E5BC8E
+8FBCE1 E5BC99
+8FBCE2 E5BC9C
+8FBCE3 E5BC9D
+8FBCE4 E5BCA1
+8FBCE5 E5BCA2
+8FBCE6 E5BCA3
+8FBCE7 E5BCA4
+8FBCE8 E5BCA8
+8FBCE9 E5BCAB
+8FBCEA E5BCAC
+8FBCEB E5BCAE
+8FBCEC E5BCB0
+8FBCED E5BCB4
+8FBCEE E5BCB6
+8FBCEF E5BCBB
+8FBCF0 E5BCBD
+8FBCF1 E5BCBF
+8FBCF2 E5BD80
+8FBCF3 E5BD84
+8FBCF4 E5BD85
+8FBCF5 E5BD87
+8FBCF6 E5BD8D
+8FBCF7 E5BD90
+8FBCF8 E5BD94
+8FBCF9 E5BD98
+8FBCFA E5BD9B
+8FBCFB E5BDA0
+8FBCFC E5BDA3
+8FBCFD E5BDA4
+8FBCFE E5BDA7
+8FBDA1 E5BDAF
+8FBDA2 E5BDB2
+8FBDA3 E5BDB4
+8FBDA4 E5BDB5
+8FBDA5 E5BDB8
+8FBDA6 E5BDBA
+8FBDA7 E5BDBD
+8FBDA8 E5BDBE
+8FBDA9 E5BE89
+8FBDAA E5BE8D
+8FBDAB E5BE8F
+8FBDAC E5BE96
+8FBDAD E5BE9C
+8FBDAE E5BE9D
+8FBDAF E5BEA2
+8FBDB0 E5BEA7
+8FBDB1 E5BEAB
+8FBDB2 E5BEA4
+8FBDB3 E5BEAC
+8FBDB4 E5BEAF
+8FBDB5 E5BEB0
+8FBDB6 E5BEB1
+8FBDB7 E5BEB8
+8FBDB8 E5BF84
+8FBDB9 E5BF87
+8FBDBA E5BF88
+8FBDBB E5BF89
+8FBDBC E5BF8B
+8FBDBD E5BF90
+8FBDBE E5BF91
+8FBDBF E5BF92
+8FBDC0 E5BF93
+8FBDC1 E5BF94
+8FBDC2 E5BF9E
+8FBDC3 E5BFA1
+8FBDC4 E5BFA2
+8FBDC5 E5BFA8
+8FBDC6 E5BFA9
+8FBDC7 E5BFAA
+8FBDC8 E5BFAC
+8FBDC9 E5BFAD
+8FBDCA E5BFAE
+8FBDCB E5BFAF
+8FBDCC E5BFB2
+8FBDCD E5BFB3
+8FBDCE E5BFB6
+8FBDCF E5BFBA
+8FBDD0 E5BFBC
+8FBDD1 E68087
+8FBDD2 E6808A
+8FBDD3 E6808D
+8FBDD4 E68093
+8FBDD5 E68094
+8FBDD6 E68097
+8FBDD7 E68098
+8FBDD8 E6809A
+8FBDD9 E6809F
+8FBDDA E680A4
+8FBDDB E680AD
+8FBDDC E680B3
+8FBDDD E680B5
+8FBDDE E68180
+8FBDDF E68187
+8FBDE0 E68188
+8FBDE1 E68189
+8FBDE2 E6818C
+8FBDE3 E68191
+8FBDE4 E68194
+8FBDE5 E68196
+8FBDE6 E68197
+8FBDE7 E6819D
+8FBDE8 E681A1
+8FBDE9 E681A7
+8FBDEA E681B1
+8FBDEB E681BE
+8FBDEC E681BF
+8FBDED E68282
+8FBDEE E68286
+8FBDEF E68288
+8FBDF0 E6828A
+8FBDF1 E6828E
+8FBDF2 E68291
+8FBDF3 E68293
+8FBDF4 E68295
+8FBDF5 E68298
+8FBDF6 E6829D
+8FBDF7 E6829E
+8FBDF8 E682A2
+8FBDF9 E682A4
+8FBDFA E682A5
+8FBDFB E682A8
+8FBDFC E682B0
+8FBDFD E682B1
+8FBDFE E682B7
+8FBEA1 E682BB
+8FBEA2 E682BE
+8FBEA3 E68382
+8FBEA4 E68384
+8FBEA5 E68388
+8FBEA6 E68389
+8FBEA7 E6838A
+8FBEA8 E6838B
+8FBEA9 E6838E
+8FBEAA E6838F
+8FBEAB E68394
+8FBEAC E68395
+8FBEAD E68399
+8FBEAE E6839B
+8FBEAF E6839D
+8FBEB0 E6839E
+8FBEB1 E683A2
+8FBEB2 E683A5
+8FBEB3 E683B2
+8FBEB4 E683B5
+8FBEB5 E683B8
+8FBEB6 E683BC
+8FBEB7 E683BD
+8FBEB8 E68482
+8FBEB9 E68487
+8FBEBA E6848A
+8FBEBB E6848C
+8FBEBC E68490
+8FBEBD E68491
+8FBEBE E68492
+8FBEBF E68493
+8FBEC0 E68494
+8FBEC1 E68496
+8FBEC2 E68497
+8FBEC3 E68499
+8FBEC4 E6849C
+8FBEC5 E6849E
+8FBEC6 E684A2
+8FBEC7 E684AA
+8FBEC8 E684AB
+8FBEC9 E684B0
+8FBECA E684B1
+8FBECB E684B5
+8FBECC E684B6
+8FBECD E684B7
+8FBECE E684B9
+8FBECF E68581
+8FBED0 E68585
+8FBED1 E68586
+8FBED2 E68589
+8FBED3 E6859E
+8FBED4 E685A0
+8FBED5 E685AC
+8FBED6 E685B2
+8FBED7 E685B8
+8FBED8 E685BB
+8FBED9 E685BC
+8FBEDA E685BF
+8FBEDB E68680
+8FBEDC E68681
+8FBEDD E68683
+8FBEDE E68684
+8FBEDF E6868B
+8FBEE0 E6868D
+8FBEE1 E68692
+8FBEE2 E68693
+8FBEE3 E68697
+8FBEE4 E68698
+8FBEE5 E6869C
+8FBEE6 E6869D
+8FBEE7 E6869F
+8FBEE8 E686A0
+8FBEE9 E686A5
+8FBEEA E686A8
+8FBEEB E686AA
+8FBEEC E686AD
+8FBEED E686B8
+8FBEEE E686B9
+8FBEEF E686BC
+8FBEF0 E68780
+8FBEF1 E68781
+8FBEF2 E68782
+8FBEF3 E6878E
+8FBEF4 E6878F
+8FBEF5 E68795
+8FBEF6 E6879C
+8FBEF7 E6879D
+8FBEF8 E6879E
+8FBEF9 E6879F
+8FBEFA E687A1
+8FBEFB E687A2
+8FBEFC E687A7
+8FBEFD E687A9
+8FBEFE E687A5
+8FBFA1 E687AC
+8FBFA2 E687AD
+8FBFA3 E687AF
+8FBFA4 E68881
+8FBFA5 E68883
+8FBFA6 E68884
+8FBFA7 E68887
+8FBFA8 E68893
+8FBFA9 E68895
+8FBFAA E6889C
+8FBFAB E688A0
+8FBFAC E688A2
+8FBFAD E688A3
+8FBFAE E688A7
+8FBFAF E688A9
+8FBFB0 E688AB
+8FBFB1 E688B9
+8FBFB2 E688BD
+8FBFB3 E68982
+8FBFB4 E68983
+8FBFB5 E68984
+8FBFB6 E68986
+8FBFB7 E6898C
+8FBFB8 E68990
+8FBFB9 E68991
+8FBFBA E68992
+8FBFBB E68994
+8FBFBC E68996
+8FBFBD E6899A
+8FBFBE E6899C
+8FBFBF E689A4
+8FBFC0 E689AD
+8FBFC1 E689AF
+8FBFC2 E689B3
+8FBFC3 E689BA
+8FBFC4 E689BD
+8FBFC5 E68A8D
+8FBFC6 E68A8E
+8FBFC7 E68A8F
+8FBFC8 E68A90
+8FBFC9 E68AA6
+8FBFCA E68AA8
+8FBFCB E68AB3
+8FBFCC E68AB6
+8FBFCD E68AB7
+8FBFCE E68ABA
+8FBFCF E68ABE
+8FBFD0 E68ABF
+8FBFD1 E68B84
+8FBFD2 E68B8E
+8FBFD3 E68B95
+8FBFD4 E68B96
+8FBFD5 E68B9A
+8FBFD6 E68BAA
+8FBFD7 E68BB2
+8FBFD8 E68BB4
+8FBFD9 E68BBC
+8FBFDA E68BBD
+8FBFDB E68C83
+8FBFDC E68C84
+8FBFDD E68C8A
+8FBFDE E68C8B
+8FBFDF E68C8D
+8FBFE0 E68C90
+8FBFE1 E68C93
+8FBFE2 E68C96
+8FBFE3 E68C98
+8FBFE4 E68CA9
+8FBFE5 E68CAA
+8FBFE6 E68CAD
+8FBFE7 E68CB5
+8FBFE8 E68CB6
+8FBFE9 E68CB9
+8FBFEA E68CBC
+8FBFEB E68D81
+8FBFEC E68D82
+8FBFED E68D83
+8FBFEE E68D84
+8FBFEF E68D86
+8FBFF0 E68D8A
+8FBFF1 E68D8B
+8FBFF2 E68D8E
+8FBFF3 E68D92
+8FBFF4 E68D93
+8FBFF5 E68D94
+8FBFF6 E68D98
+8FBFF7 E68D9B
+8FBFF8 E68DA5
+8FBFF9 E68DA6
+8FBFFA E68DAC
+8FBFFB E68DAD
+8FBFFC E68DB1
+8FBFFD E68DB4
+8FBFFE E68DB5
+8FC0A1 E68DB8
+8FC0A2 E68DBC
+8FC0A3 E68DBD
+8FC0A4 E68DBF
+8FC0A5 E68E82
+8FC0A6 E68E84
+8FC0A7 E68E87
+8FC0A8 E68E8A
+8FC0A9 E68E90
+8FC0AA E68E94
+8FC0AB E68E95
+8FC0AC E68E99
+8FC0AD E68E9A
+8FC0AE E68E9E
+8FC0AF E68EA4
+8FC0B0 E68EA6
+8FC0B1 E68EAD
+8FC0B2 E68EAE
+8FC0B3 E68EAF
+8FC0B4 E68EBD
+8FC0B5 E68F81
+8FC0B6 E68F85
+8FC0B7 E68F88
+8FC0B8 E68F8E
+8FC0B9 E68F91
+8FC0BA E68F93
+8FC0BB E68F94
+8FC0BC E68F95
+8FC0BD E68F9C
+8FC0BE E68FA0
+8FC0BF E68FA5
+8FC0C0 E68FAA
+8FC0C1 E68FAC
+8FC0C2 E68FB2
+8FC0C3 E68FB3
+8FC0C4 E68FB5
+8FC0C5 E68FB8
+8FC0C6 E68FB9
+8FC0C7 E69089
+8FC0C8 E6908A
+8FC0C9 E69090
+8FC0CA E69092
+8FC0CB E69094
+8FC0CC E69098
+8FC0CD E6909E
+8FC0CE E690A0
+8FC0CF E690A2
+8FC0D0 E690A4
+8FC0D1 E690A5
+8FC0D2 E690A9
+8FC0D3 E690AA
+8FC0D4 E690AF
+8FC0D5 E690B0
+8FC0D6 E690B5
+8FC0D7 E690BD
+8FC0D8 E690BF
+8FC0D9 E6918B
+8FC0DA E6918F
+8FC0DB E69191
+8FC0DC E69192
+8FC0DD E69193
+8FC0DE E69194
+8FC0DF E6919A
+8FC0E0 E6919B
+8FC0E1 E6919C
+8FC0E2 E6919D
+8FC0E3 E6919F
+8FC0E4 E691A0
+8FC0E5 E691A1
+8FC0E6 E691A3
+8FC0E7 E691AD
+8FC0E8 E691B3
+8FC0E9 E691B4
+8FC0EA E691BB
+8FC0EB E691BD
+8FC0EC E69285
+8FC0ED E69287
+8FC0EE E6928F
+8FC0EF E69290
+8FC0F0 E69291
+8FC0F1 E69298
+8FC0F2 E69299
+8FC0F3 E6929B
+8FC0F4 E6929D
+8FC0F5 E6929F
+8FC0F6 E692A1
+8FC0F7 E692A3
+8FC0F8 E692A6
+8FC0F9 E692A8
+8FC0FA E692AC
+8FC0FB E692B3
+8FC0FC E692BD
+8FC0FD E692BE
+8FC0FE E692BF
+8FC1A1 E69384
+8FC1A2 E69389
+8FC1A3 E6938A
+8FC1A4 E6938B
+8FC1A5 E6938C
+8FC1A6 E6938E
+8FC1A7 E69390
+8FC1A8 E69391
+8FC1A9 E69395
+8FC1AA E69397
+8FC1AB E693A4
+8FC1AC E693A5
+8FC1AD E693A9
+8FC1AE E693AA
+8FC1AF E693AD
+8FC1B0 E693B0
+8FC1B1 E693B5
+8FC1B2 E693B7
+8FC1B3 E693BB
+8FC1B4 E693BF
+8FC1B5 E69481
+8FC1B6 E69484
+8FC1B7 E69488
+8FC1B8 E69489
+8FC1B9 E6948A
+8FC1BA E6948F
+8FC1BB E69493
+8FC1BC E69494
+8FC1BD E69496
+8FC1BE E69499
+8FC1BF E6949B
+8FC1C0 E6949E
+8FC1C1 E6949F
+8FC1C2 E694A2
+8FC1C3 E694A6
+8FC1C4 E694A9
+8FC1C5 E694AE
+8FC1C6 E694B1
+8FC1C7 E694BA
+8FC1C8 E694BC
+8FC1C9 E694BD
+8FC1CA E69583
+8FC1CB E69587
+8FC1CC E69589
+8FC1CD E69590
+8FC1CE E69592
+8FC1CF E69594
+8FC1D0 E6959F
+8FC1D1 E695A0
+8FC1D2 E695A7
+8FC1D3 E695AB
+8FC1D4 E695BA
+8FC1D5 E695BD
+8FC1D6 E69681
+8FC1D7 E69685
+8FC1D8 E6968A
+8FC1D9 E69692
+8FC1DA E69695
+8FC1DB E69698
+8FC1DC E6969D
+8FC1DD E696A0
+8FC1DE E696A3
+8FC1DF E696A6
+8FC1E0 E696AE
+8FC1E1 E696B2
+8FC1E2 E696B3
+8FC1E3 E696B4
+8FC1E4 E696BF
+8FC1E5 E69782
+8FC1E6 E69788
+8FC1E7 E69789
+8FC1E8 E6978E
+8FC1E9 E69790
+8FC1EA E69794
+8FC1EB E69796
+8FC1EC E69798
+8FC1ED E6979F
+8FC1EE E697B0
+8FC1EF E697B2
+8FC1F0 E697B4
+8FC1F1 E697B5
+8FC1F2 E697B9
+8FC1F3 E697BE
+8FC1F4 E697BF
+8FC1F5 E69880
+8FC1F6 E69884
+8FC1F7 E69888
+8FC1F8 E69889
+8FC1F9 E6988D
+8FC1FA E69891
+8FC1FB E69892
+8FC1FC E69895
+8FC1FD E69896
+8FC1FE E6989D
+8FC2A1 E6989E
+8FC2A2 E698A1
+8FC2A3 E698A2
+8FC2A4 E698A3
+8FC2A5 E698A4
+8FC2A6 E698A6
+8FC2A7 E698A9
+8FC2A8 E698AA
+8FC2A9 E698AB
+8FC2AA E698AC
+8FC2AB E698AE
+8FC2AC E698B0
+8FC2AD E698B1
+8FC2AE E698B3
+8FC2AF E698B9
+8FC2B0 E698B7
+8FC2B1 E69980
+8FC2B2 E69985
+8FC2B3 E69986
+8FC2B4 E6998A
+8FC2B5 E6998C
+8FC2B6 E69991
+8FC2B7 E6998E
+8FC2B8 E69997
+8FC2B9 E69998
+8FC2BA E69999
+8FC2BB E6999B
+8FC2BC E6999C
+8FC2BD E699A0
+8FC2BE E699A1
+8FC2BF E69BBB
+8FC2C0 E699AA
+8FC2C1 E699AB
+8FC2C2 E699AC
+8FC2C3 E699BE
+8FC2C4 E699B3
+8FC2C5 E699B5
+8FC2C6 E699BF
+8FC2C7 E699B7
+8FC2C8 E699B8
+8FC2C9 E699B9
+8FC2CA E699BB
+8FC2CB E69A80
+8FC2CC E699BC
+8FC2CD E69A8B
+8FC2CE E69A8C
+8FC2CF E69A8D
+8FC2D0 E69A90
+8FC2D1 E69A92
+8FC2D2 E69A99
+8FC2D3 E69A9A
+8FC2D4 E69A9B
+8FC2D5 E69A9C
+8FC2D6 E69A9F
+8FC2D7 E69AA0
+8FC2D8 E69AA4
+8FC2D9 E69AAD
+8FC2DA E69AB1
+8FC2DB E69AB2
+8FC2DC E69AB5
+8FC2DD E69ABB
+8FC2DE E69ABF
+8FC2DF E69B80
+8FC2E0 E69B82
+8FC2E1 E69B83
+8FC2E2 E69B88
+8FC2E3 E69B8C
+8FC2E4 E69B8E
+8FC2E5 E69B8F
+8FC2E6 E69B94
+8FC2E7 E69B9B
+8FC2E8 E69B9F
+8FC2E9 E69BA8
+8FC2EA E69BAB
+8FC2EB E69BAC
+8FC2EC E69BAE
+8FC2ED E69BBA
+8FC2EE E69C85
+8FC2EF E69C87
+8FC2F0 E69C8E
+8FC2F1 E69C93
+8FC2F2 E69C99
+8FC2F3 E69C9C
+8FC2F4 E69CA0
+8FC2F5 E69CA2
+8FC2F6 E69CB3
+8FC2F7 E69CBE
+8FC2F8 E69D85
+8FC2F9 E69D87
+8FC2FA E69D88
+8FC2FB E69D8C
+8FC2FC E69D94
+8FC2FD E69D95
+8FC2FE E69D9D
+8FC3A1 E69DA6
+8FC3A2 E69DAC
+8FC3A3 E69DAE
+8FC3A4 E69DB4
+8FC3A5 E69DB6
+8FC3A6 E69DBB
+8FC3A7 E69E81
+8FC3A8 E69E84
+8FC3A9 E69E8E
+8FC3AA E69E8F
+8FC3AB E69E91
+8FC3AC E69E93
+8FC3AD E69E96
+8FC3AE E69E98
+8FC3AF E69E99
+8FC3B0 E69E9B
+8FC3B1 E69EB0
+8FC3B2 E69EB1
+8FC3B3 E69EB2
+8FC3B4 E69EB5
+8FC3B5 E69EBB
+8FC3B6 E69EBC
+8FC3B7 E69EBD
+8FC3B8 E69FB9
+8FC3B9 E69F80
+8FC3BA E69F82
+8FC3BB E69F83
+8FC3BC E69F85
+8FC3BD E69F88
+8FC3BE E69F89
+8FC3BF E69F92
+8FC3C0 E69F97
+8FC3C1 E69F99
+8FC3C2 E69F9C
+8FC3C3 E69FA1
+8FC3C4 E69FA6
+8FC3C5 E69FB0
+8FC3C6 E69FB2
+8FC3C7 E69FB6
+8FC3C8 E69FB7
+8FC3C9 E6A192
+8FC3CA E6A094
+8FC3CB E6A099
+8FC3CC E6A09D
+8FC3CD E6A09F
+8FC3CE E6A0A8
+8FC3CF E6A0A7
+8FC3D0 E6A0AC
+8FC3D1 E6A0AD
+8FC3D2 E6A0AF
+8FC3D3 E6A0B0
+8FC3D4 E6A0B1
+8FC3D5 E6A0B3
+8FC3D6 E6A0BB
+8FC3D7 E6A0BF
+8FC3D8 E6A184
+8FC3D9 E6A185
+8FC3DA E6A18A
+8FC3DB E6A18C
+8FC3DC E6A195
+8FC3DD E6A197
+8FC3DE E6A198
+8FC3DF E6A19B
+8FC3E0 E6A1AB
+8FC3E1 E6A1AE
+8FC3E2 E6A1AF
+8FC3E3 E6A1B0
+8FC3E4 E6A1B1
+8FC3E5 E6A1B2
+8FC3E6 E6A1B5
+8FC3E7 E6A1B9
+8FC3E8 E6A1BA
+8FC3E9 E6A1BB
+8FC3EA E6A1BC
+8FC3EB E6A282
+8FC3EC E6A284
+8FC3ED E6A286
+8FC3EE E6A288
+8FC3EF E6A296
+8FC3F0 E6A298
+8FC3F1 E6A29A
+8FC3F2 E6A29C
+8FC3F3 E6A2A1
+8FC3F4 E6A2A3
+8FC3F5 E6A2A5
+8FC3F6 E6A2A9
+8FC3F7 E6A2AA
+8FC3F8 E6A2AE
+8FC3F9 E6A2B2
+8FC3FA E6A2BB
+8FC3FB E6A385
+8FC3FC E6A388
+8FC3FD E6A38C
+8FC3FE E6A38F
+8FC4A1 E6A390
+8FC4A2 E6A391
+8FC4A3 E6A393
+8FC4A4 E6A396
+8FC4A5 E6A399
+8FC4A6 E6A39C
+8FC4A7 E6A39D
+8FC4A8 E6A3A5
+8FC4A9 E6A3A8
+8FC4AA E6A3AA
+8FC4AB E6A3AB
+8FC4AC E6A3AC
+8FC4AD E6A3AD
+8FC4AE E6A3B0
+8FC4AF E6A3B1
+8FC4B0 E6A3B5
+8FC4B1 E6A3B6
+8FC4B2 E6A3BB
+8FC4B3 E6A3BC
+8FC4B4 E6A3BD
+8FC4B5 E6A486
+8FC4B6 E6A489
+8FC4B7 E6A48A
+8FC4B8 E6A490
+8FC4B9 E6A491
+8FC4BA E6A493
+8FC4BB E6A496
+8FC4BC E6A497
+8FC4BD E6A4B1
+8FC4BE E6A4B3
+8FC4BF E6A4B5
+8FC4C0 E6A4B8
+8FC4C1 E6A4BB
+8FC4C2 E6A582
+8FC4C3 E6A585
+8FC4C4 E6A589
+8FC4C5 E6A58E
+8FC4C6 E6A597
+8FC4C7 E6A59B
+8FC4C8 E6A5A3
+8FC4C9 E6A5A4
+8FC4CA E6A5A5
+8FC4CB E6A5A6
+8FC4CC E6A5A8
+8FC4CD E6A5A9
+8FC4CE E6A5AC
+8FC4CF E6A5B0
+8FC4D0 E6A5B1
+8FC4D1 E6A5B2
+8FC4D2 E6A5BA
+8FC4D3 E6A5BB
+8FC4D4 E6A5BF
+8FC4D5 E6A680
+8FC4D6 E6A68D
+8FC4D7 E6A692
+8FC4D8 E6A696
+8FC4D9 E6A698
+8FC4DA E6A6A1
+8FC4DB E6A6A5
+8FC4DC E6A6A6
+8FC4DD E6A6A8
+8FC4DE E6A6AB
+8FC4DF E6A6AD
+8FC4E0 E6A6AF
+8FC4E1 E6A6B7
+8FC4E2 E6A6B8
+8FC4E3 E6A6BA
+8FC4E4 E6A6BC
+8FC4E5 E6A785
+8FC4E6 E6A788
+8FC4E7 E6A791
+8FC4E8 E6A796
+8FC4E9 E6A797
+8FC4EA E6A7A2
+8FC4EB E6A7A5
+8FC4EC E6A7AE
+8FC4ED E6A7AF
+8FC4EE E6A7B1
+8FC4EF E6A7B3
+8FC4F0 E6A7B5
+8FC4F1 E6A7BE
+8FC4F2 E6A880
+8FC4F3 E6A881
+8FC4F4 E6A883
+8FC4F5 E6A88F
+8FC4F6 E6A891
+8FC4F7 E6A895
+8FC4F8 E6A89A
+8FC4F9 E6A89D
+8FC4FA E6A8A0
+8FC4FB E6A8A4
+8FC4FC E6A8A8
+8FC4FD E6A8B0
+8FC4FE E6A8B2
+8FC5A1 E6A8B4
+8FC5A2 E6A8B7
+8FC5A3 E6A8BB
+8FC5A4 E6A8BE
+8FC5A5 E6A8BF
+8FC5A6 E6A985
+8FC5A7 E6A986
+8FC5A8 E6A989
+8FC5A9 E6A98A
+8FC5AA E6A98E
+8FC5AB E6A990
+8FC5AC E6A991
+8FC5AD E6A992
+8FC5AE E6A995
+8FC5AF E6A996
+8FC5B0 E6A99B
+8FC5B1 E6A9A4
+8FC5B2 E6A9A7
+8FC5B3 E6A9AA
+8FC5B4 E6A9B1
+8FC5B5 E6A9B3
+8FC5B6 E6A9BE
+8FC5B7 E6AA81
+8FC5B8 E6AA83
+8FC5B9 E6AA86
+8FC5BA E6AA87
+8FC5BB E6AA89
+8FC5BC E6AA8B
+8FC5BD E6AA91
+8FC5BE E6AA9B
+8FC5BF E6AA9D
+8FC5C0 E6AA9E
+8FC5C1 E6AA9F
+8FC5C2 E6AAA5
+8FC5C3 E6AAAB
+8FC5C4 E6AAAF
+8FC5C5 E6AAB0
+8FC5C6 E6AAB1
+8FC5C7 E6AAB4
+8FC5C8 E6AABD
+8FC5C9 E6AABE
+8FC5CA E6AABF
+8FC5CB E6AB86
+8FC5CC E6AB89
+8FC5CD E6AB88
+8FC5CE E6AB8C
+8FC5CF E6AB90
+8FC5D0 E6AB94
+8FC5D1 E6AB95
+8FC5D2 E6AB96
+8FC5D3 E6AB9C
+8FC5D4 E6AB9D
+8FC5D5 E6ABA4
+8FC5D6 E6ABA7
+8FC5D7 E6ABAC
+8FC5D8 E6ABB0
+8FC5D9 E6ABB1
+8FC5DA E6ABB2
+8FC5DB E6ABBC
+8FC5DC E6ABBD
+8FC5DD E6AC82
+8FC5DE E6AC83
+8FC5DF E6AC86
+8FC5E0 E6AC87
+8FC5E1 E6AC89
+8FC5E2 E6AC8F
+8FC5E3 E6AC90
+8FC5E4 E6AC91
+8FC5E5 E6AC97
+8FC5E6 E6AC9B
+8FC5E7 E6AC9E
+8FC5E8 E6ACA4
+8FC5E9 E6ACA8
+8FC5EA E6ACAB
+8FC5EB E6ACAC
+8FC5EC E6ACAF
+8FC5ED E6ACB5
+8FC5EE E6ACB6
+8FC5EF E6ACBB
+8FC5F0 E6ACBF
+8FC5F1 E6AD86
+8FC5F2 E6AD8A
+8FC5F3 E6AD8D
+8FC5F4 E6AD92
+8FC5F5 E6AD96
+8FC5F6 E6AD98
+8FC5F7 E6AD9D
+8FC5F8 E6ADA0
+8FC5F9 E6ADA7
+8FC5FA E6ADAB
+8FC5FB E6ADAE
+8FC5FC E6ADB0
+8FC5FD E6ADB5
+8FC5FE E6ADBD
+8FC6A1 E6ADBE
+8FC6A2 E6AE82
+8FC6A3 E6AE85
+8FC6A4 E6AE97
+8FC6A5 E6AE9B
+8FC6A6 E6AE9F
+8FC6A7 E6AEA0
+8FC6A8 E6AEA2
+8FC6A9 E6AEA3
+8FC6AA E6AEA8
+8FC6AB E6AEA9
+8FC6AC E6AEAC
+8FC6AD E6AEAD
+8FC6AE E6AEAE
+8FC6AF E6AEB0
+8FC6B0 E6AEB8
+8FC6B1 E6AEB9
+8FC6B2 E6AEBD
+8FC6B3 E6AEBE
+8FC6B4 E6AF83
+8FC6B5 E6AF84
+8FC6B6 E6AF89
+8FC6B7 E6AF8C
+8FC6B8 E6AF96
+8FC6B9 E6AF9A
+8FC6BA E6AFA1
+8FC6BB E6AFA3
+8FC6BC E6AFA6
+8FC6BD E6AFA7
+8FC6BE E6AFAE
+8FC6BF E6AFB1
+8FC6C0 E6AFB7
+8FC6C1 E6AFB9
+8FC6C2 E6AFBF
+8FC6C3 E6B082
+8FC6C4 E6B084
+8FC6C5 E6B085
+8FC6C6 E6B089
+8FC6C7 E6B08D
+8FC6C8 E6B08E
+8FC6C9 E6B090
+8FC6CA E6B092
+8FC6CB E6B099
+8FC6CC E6B09F
+8FC6CD E6B0A6
+8FC6CE E6B0A7
+8FC6CF E6B0A8
+8FC6D0 E6B0AC
+8FC6D1 E6B0AE
+8FC6D2 E6B0B3
+8FC6D3 E6B0B5
+8FC6D4 E6B0B6
+8FC6D5 E6B0BA
+8FC6D6 E6B0BB
+8FC6D7 E6B0BF
+8FC6D8 E6B18A
+8FC6D9 E6B18B
+8FC6DA E6B18D
+8FC6DB E6B18F
+8FC6DC E6B192
+8FC6DD E6B194
+8FC6DE E6B199
+8FC6DF E6B19B
+8FC6E0 E6B19C
+8FC6E1 E6B1AB
+8FC6E2 E6B1AD
+8FC6E3 E6B1AF
+8FC6E4 E6B1B4
+8FC6E5 E6B1B6
+8FC6E6 E6B1B8
+8FC6E7 E6B1B9
+8FC6E8 E6B1BB
+8FC6E9 E6B285
+8FC6EA E6B286
+8FC6EB E6B287
+8FC6EC E6B289
+8FC6ED E6B294
+8FC6EE E6B295
+8FC6EF E6B297
+8FC6F0 E6B298
+8FC6F1 E6B29C
+8FC6F2 E6B29F
+8FC6F3 E6B2B0
+8FC6F4 E6B2B2
+8FC6F5 E6B2B4
+8FC6F6 E6B382
+8FC6F7 E6B386
+8FC6F8 E6B38D
+8FC6F9 E6B38F
+8FC6FA E6B390
+8FC6FB E6B391
+8FC6FC E6B392
+8FC6FD E6B394
+8FC6FE E6B396
+8FC7A1 E6B39A
+8FC7A2 E6B39C
+8FC7A3 E6B3A0
+8FC7A4 E6B3A7
+8FC7A5 E6B3A9
+8FC7A6 E6B3AB
+8FC7A7 E6B3AC
+8FC7A8 E6B3AE
+8FC7A9 E6B3B2
+8FC7AA E6B3B4
+8FC7AB E6B484
+8FC7AC E6B487
+8FC7AD E6B48A
+8FC7AE E6B48E
+8FC7AF E6B48F
+8FC7B0 E6B491
+8FC7B1 E6B493
+8FC7B2 E6B49A
+8FC7B3 E6B4A6
+8FC7B4 E6B4A7
+8FC7B5 E6B4A8
+8FC7B6 E6B1A7
+8FC7B7 E6B4AE
+8FC7B8 E6B4AF
+8FC7B9 E6B4B1
+8FC7BA E6B4B9
+8FC7BB E6B4BC
+8FC7BC E6B4BF
+8FC7BD E6B597
+8FC7BE E6B59E
+8FC7BF E6B59F
+8FC7C0 E6B5A1
+8FC7C1 E6B5A5
+8FC7C2 E6B5A7
+8FC7C3 E6B5AF
+8FC7C4 E6B5B0
+8FC7C5 E6B5BC
+8FC7C6 E6B682
+8FC7C7 E6B687
+8FC7C8 E6B691
+8FC7C9 E6B692
+8FC7CA E6B694
+8FC7CB E6B696
+8FC7CC E6B697
+8FC7CD E6B698
+8FC7CE E6B6AA
+8FC7CF E6B6AC
+8FC7D0 E6B6B4
+8FC7D1 E6B6B7
+8FC7D2 E6B6B9
+8FC7D3 E6B6BD
+8FC7D4 E6B6BF
+8FC7D5 E6B784
+8FC7D6 E6B788
+8FC7D7 E6B78A
+8FC7D8 E6B78E
+8FC7D9 E6B78F
+8FC7DA E6B796
+8FC7DB E6B79B
+8FC7DC E6B79D
+8FC7DD E6B79F
+8FC7DE E6B7A0
+8FC7DF E6B7A2
+8FC7E0 E6B7A5
+8FC7E1 E6B7A9
+8FC7E2 E6B7AF
+8FC7E3 E6B7B0
+8FC7E4 E6B7B4
+8FC7E5 E6B7B6
+8FC7E6 E6B7BC
+8FC7E7 E6B880
+8FC7E8 E6B884
+8FC7E9 E6B89E
+8FC7EA E6B8A2
+8FC7EB E6B8A7
+8FC7EC E6B8B2
+8FC7ED E6B8B6
+8FC7EE E6B8B9
+8FC7EF E6B8BB
+8FC7F0 E6B8BC
+8FC7F1 E6B984
+8FC7F2 E6B985
+8FC7F3 E6B988
+8FC7F4 E6B989
+8FC7F5 E6B98B
+8FC7F6 E6B98F
+8FC7F7 E6B991
+8FC7F8 E6B992
+8FC7F9 E6B993
+8FC7FA E6B994
+8FC7FB E6B997
+8FC7FC E6B99C
+8FC7FD E6B99D
+8FC7FE E6B99E
+8FC8A1 E6B9A2
+8FC8A2 E6B9A3
+8FC8A3 E6B9A8
+8FC8A4 E6B9B3
+8FC8A5 E6B9BB
+8FC8A6 E6B9BD
+8FC8A7 E6BA8D
+8FC8A8 E6BA93
+8FC8A9 E6BA99
+8FC8AA E6BAA0
+8FC8AB E6BAA7
+8FC8AC E6BAAD
+8FC8AD E6BAAE
+8FC8AE E6BAB1
+8FC8AF E6BAB3
+8FC8B0 E6BABB
+8FC8B1 E6BABF
+8FC8B2 E6BB80
+8FC8B3 E6BB81
+8FC8B4 E6BB83
+8FC8B5 E6BB87
+8FC8B6 E6BB88
+8FC8B7 E6BB8A
+8FC8B8 E6BB8D
+8FC8B9 E6BB8E
+8FC8BA E6BB8F
+8FC8BB E6BBAB
+8FC8BC E6BBAD
+8FC8BD E6BBAE
+8FC8BE E6BBB9
+8FC8BF E6BBBB
+8FC8C0 E6BBBD
+8FC8C1 E6BC84
+8FC8C2 E6BC88
+8FC8C3 E6BC8A
+8FC8C4 E6BC8C
+8FC8C5 E6BC8D
+8FC8C6 E6BC96
+8FC8C7 E6BC98
+8FC8C8 E6BC9A
+8FC8C9 E6BC9B
+8FC8CA E6BCA6
+8FC8CB E6BCA9
+8FC8CC E6BCAA
+8FC8CD E6BCAF
+8FC8CE E6BCB0
+8FC8CF E6BCB3
+8FC8D0 E6BCB6
+8FC8D1 E6BCBB
+8FC8D2 E6BCBC
+8FC8D3 E6BCAD
+8FC8D4 E6BD8F
+8FC8D5 E6BD91
+8FC8D6 E6BD92
+8FC8D7 E6BD93
+8FC8D8 E6BD97
+8FC8D9 E6BD99
+8FC8DA E6BD9A
+8FC8DB E6BD9D
+8FC8DC E6BD9E
+8FC8DD E6BDA1
+8FC8DE E6BDA2
+8FC8DF E6BDA8
+8FC8E0 E6BDAC
+8FC8E1 E6BDBD
+8FC8E2 E6BDBE
+8FC8E3 E6BE83
+8FC8E4 E6BE87
+8FC8E5 E6BE88
+8FC8E6 E6BE8B
+8FC8E7 E6BE8C
+8FC8E8 E6BE8D
+8FC8E9 E6BE90
+8FC8EA E6BE92
+8FC8EB E6BE93
+8FC8EC E6BE94
+8FC8ED E6BE96
+8FC8EE E6BE9A
+8FC8EF E6BE9F
+8FC8F0 E6BEA0
+8FC8F1 E6BEA5
+8FC8F2 E6BEA6
+8FC8F3 E6BEA7
+8FC8F4 E6BEA8
+8FC8F5 E6BEAE
+8FC8F6 E6BEAF
+8FC8F7 E6BEB0
+8FC8F8 E6BEB5
+8FC8F9 E6BEB6
+8FC8FA E6BEBC
+8FC8FB E6BF85
+8FC8FC E6BF87
+8FC8FD E6BF88
+8FC8FE E6BF8A
+8FC9A1 E6BF9A
+8FC9A2 E6BF9E
+8FC9A3 E6BFA8
+8FC9A4 E6BFA9
+8FC9A5 E6BFB0
+8FC9A6 E6BFB5
+8FC9A7 E6BFB9
+8FC9A8 E6BFBC
+8FC9A9 E6BFBD
+8FC9AA E78080
+8FC9AB E78085
+8FC9AC E78086
+8FC9AD E78087
+8FC9AE E7808D
+8FC9AF E78097
+8FC9B0 E780A0
+8FC9B1 E780A3
+8FC9B2 E780AF
+8FC9B3 E780B4
+8FC9B4 E780B7
+8FC9B5 E780B9
+8FC9B6 E780BC
+8FC9B7 E78183
+8FC9B8 E78184
+8FC9B9 E78188
+8FC9BA E78189
+8FC9BB E7818A
+8FC9BC E7818B
+8FC9BD E78194
+8FC9BE E78195
+8FC9BF E7819D
+8FC9C0 E7819E
+8FC9C1 E7818E
+8FC9C2 E781A4
+8FC9C3 E781A5
+8FC9C4 E781AC
+8FC9C5 E781AE
+8FC9C6 E781B5
+8FC9C7 E781B6
+8FC9C8 E781BE
+8FC9C9 E78281
+8FC9CA E78285
+8FC9CB E78286
+8FC9CC E78294
+8FC9CD E78295
+8FC9CE E78296
+8FC9CF E78297
+8FC9D0 E78298
+8FC9D1 E7829B
+8FC9D2 E782A4
+8FC9D3 E782AB
+8FC9D4 E782B0
+8FC9D5 E782B1
+8FC9D6 E782B4
+8FC9D7 E782B7
+8FC9D8 E7838A
+8FC9D9 E78391
+8FC9DA E78393
+8FC9DB E78394
+8FC9DC E78395
+8FC9DD E78396
+8FC9DE E78398
+8FC9DF E7839C
+8FC9E0 E783A4
+8FC9E1 E783BA
+8FC9E2 E78483
+8FC9E3 E78484
+8FC9E4 E78485
+8FC9E5 E78486
+8FC9E6 E78487
+8FC9E7 E7848B
+8FC9E8 E7848C
+8FC9E9 E7848F
+8FC9EA E7849E
+8FC9EB E784A0
+8FC9EC E784AB
+8FC9ED E784AD
+8FC9EE E784AF
+8FC9EF E784B0
+8FC9F0 E784B1
+8FC9F1 E784B8
+8FC9F2 E78581
+8FC9F3 E78585
+8FC9F4 E78586
+8FC9F5 E78587
+8FC9F6 E7858A
+8FC9F7 E7858B
+8FC9F8 E78590
+8FC9F9 E78592
+8FC9FA E78597
+8FC9FB E7859A
+8FC9FC E7859C
+8FC9FD E7859E
+8FC9FE E785A0
+8FCAA1 E785A8
+8FCAA2 E785B9
+8FCAA3 E78680
+8FCAA4 E78685
+8FCAA5 E78687
+8FCAA6 E7868C
+8FCAA7 E78692
+8FCAA8 E7869A
+8FCAA9 E7869B
+8FCAAA E786A0
+8FCAAB E786A2
+8FCAAC E786AF
+8FCAAD E786B0
+8FCAAE E786B2
+8FCAAF E786B3
+8FCAB0 E786BA
+8FCAB1 E786BF
+8FCAB2 E78780
+8FCAB3 E78781
+8FCAB4 E78784
+8FCAB5 E7878B
+8FCAB6 E7878C
+8FCAB7 E78793
+8FCAB8 E78796
+8FCAB9 E78799
+8FCABA E7879A
+8FCABB E7879C
+8FCABC E787B8
+8FCABD E787BE
+8FCABE E78880
+8FCABF E78887
+8FCAC0 E78888
+8FCAC1 E78889
+8FCAC2 E78893
+8FCAC3 E78897
+8FCAC4 E7889A
+8FCAC5 E7889D
+8FCAC6 E7889F
+8FCAC7 E788A4
+8FCAC8 E788AB
+8FCAC9 E788AF
+8FCACA E788B4
+8FCACB E788B8
+8FCACC E788B9
+8FCACD E78981
+8FCACE E78982
+8FCACF E78983
+8FCAD0 E78985
+8FCAD1 E7898E
+8FCAD2 E7898F
+8FCAD3 E78990
+8FCAD4 E78993
+8FCAD5 E78995
+8FCAD6 E78996
+8FCAD7 E7899A
+8FCAD8 E7899C
+8FCAD9 E7899E
+8FCADA E789A0
+8FCADB E789A3
+8FCADC E789A8
+8FCADD E789AB
+8FCADE E789AE
+8FCADF E789AF
+8FCAE0 E789B1
+8FCAE1 E789B7
+8FCAE2 E789B8
+8FCAE3 E789BB
+8FCAE4 E789BC
+8FCAE5 E789BF
+8FCAE6 E78A84
+8FCAE7 E78A89
+8FCAE8 E78A8D
+8FCAE9 E78A8E
+8FCAEA E78A93
+8FCAEB E78A9B
+8FCAEC E78AA8
+8FCAED E78AAD
+8FCAEE E78AAE
+8FCAEF E78AB1
+8FCAF0 E78AB4
+8FCAF1 E78ABE
+8FCAF2 E78B81
+8FCAF3 E78B87
+8FCAF4 E78B89
+8FCAF5 E78B8C
+8FCAF6 E78B95
+8FCAF7 E78B96
+8FCAF8 E78B98
+8FCAF9 E78B9F
+8FCAFA E78BA5
+8FCAFB E78BB3
+8FCAFC E78BB4
+8FCAFD E78BBA
+8FCAFE E78BBB
+8FCBA1 E78BBE
+8FCBA2 E78C82
+8FCBA3 E78C84
+8FCBA4 E78C85
+8FCBA5 E78C87
+8FCBA6 E78C8B
+8FCBA7 E78C8D
+8FCBA8 E78C92
+8FCBA9 E78C93
+8FCBAA E78C98
+8FCBAB E78C99
+8FCBAC E78C9E
+8FCBAD E78CA2
+8FCBAE E78CA4
+8FCBAF E78CA7
+8FCBB0 E78CA8
+8FCBB1 E78CAC
+8FCBB2 E78CB1
+8FCBB3 E78CB2
+8FCBB4 E78CB5
+8FCBB5 E78CBA
+8FCBB6 E78CBB
+8FCBB7 E78CBD
+8FCBB8 E78D83
+8FCBB9 E78D8D
+8FCBBA E78D90
+8FCBBB E78D92
+8FCBBC E78D96
+8FCBBD E78D98
+8FCBBE E78D9D
+8FCBBF E78D9E
+8FCBC0 E78D9F
+8FCBC1 E78DA0
+8FCBC2 E78DA6
+8FCBC3 E78DA7
+8FCBC4 E78DA9
+8FCBC5 E78DAB
+8FCBC6 E78DAC
+8FCBC7 E78DAE
+8FCBC8 E78DAF
+8FCBC9 E78DB1
+8FCBCA E78DB7
+8FCBCB E78DB9
+8FCBCC E78DBC
+8FCBCD E78E80
+8FCBCE E78E81
+8FCBCF E78E83
+8FCBD0 E78E85
+8FCBD1 E78E86
+8FCBD2 E78E8E
+8FCBD3 E78E90
+8FCBD4 E78E93
+8FCBD5 E78E95
+8FCBD6 E78E97
+8FCBD7 E78E98
+8FCBD8 E78E9C
+8FCBD9 E78E9E
+8FCBDA E78E9F
+8FCBDB E78EA0
+8FCBDC E78EA2
+8FCBDD E78EA5
+8FCBDE E78EA6
+8FCBDF E78EAA
+8FCBE0 E78EAB
+8FCBE1 E78EAD
+8FCBE2 E78EB5
+8FCBE3 E78EB7
+8FCBE4 E78EB9
+8FCBE5 E78EBC
+8FCBE6 E78EBD
+8FCBE7 E78EBF
+8FCBE8 E78F85
+8FCBE9 E78F86
+8FCBEA E78F89
+8FCBEB E78F8B
+8FCBEC E78F8C
+8FCBED E78F8F
+8FCBEE E78F92
+8FCBEF E78F93
+8FCBF0 E78F96
+8FCBF1 E78F99
+8FCBF2 E78F9D
+8FCBF3 E78FA1
+8FCBF4 E78FA3
+8FCBF5 E78FA6
+8FCBF6 E78FA7
+8FCBF7 E78FA9
+8FCBF8 E78FB4
+8FCBF9 E78FB5
+8FCBFA E78FB7
+8FCBFB E78FB9
+8FCBFC E78FBA
+8FCBFD E78FBB
+8FCBFE E78FBD
+8FCCA1 E78FBF
+8FCCA2 E79080
+8FCCA3 E79081
+8FCCA4 E79084
+8FCCA5 E79087
+8FCCA6 E7908A
+8FCCA7 E79091
+8FCCA8 E7909A
+8FCCA9 E7909B
+8FCCAA E790A4
+8FCCAB E790A6
+8FCCAC E790A8
+8FCCAD E790A9
+8FCCAE E790AA
+8FCCAF E790AB
+8FCCB0 E790AC
+8FCCB1 E790AD
+8FCCB2 E790AE
+8FCCB3 E790AF
+8FCCB4 E790B0
+8FCCB5 E790B1
+8FCCB6 E790B9
+8FCCB7 E79180
+8FCCB8 E79183
+8FCCB9 E79184
+8FCCBA E79186
+8FCCBB E79187
+8FCCBC E7918B
+8FCCBD E7918D
+8FCCBE E79191
+8FCCBF E79192
+8FCCC0 E79197
+8FCCC1 E7919D
+8FCCC2 E791A2
+8FCCC3 E791A6
+8FCCC4 E791A7
+8FCCC5 E791A8
+8FCCC6 E791AB
+8FCCC7 E791AD
+8FCCC8 E791AE
+8FCCC9 E791B1
+8FCCCA E791B2
+8FCCCB E79280
+8FCCCC E79281
+8FCCCD E79285
+8FCCCE E79286
+8FCCCF E79287
+8FCCD0 E79289
+8FCCD1 E7928F
+8FCCD2 E79290
+8FCCD3 E79291
+8FCCD4 E79292
+8FCCD5 E79298
+8FCCD6 E79299
+8FCCD7 E7929A
+8FCCD8 E7929C
+8FCCD9 E7929F
+8FCCDA E792A0
+8FCCDB E792A1
+8FCCDC E792A3
+8FCCDD E792A6
+8FCCDE E792A8
+8FCCDF E792A9
+8FCCE0 E792AA
+8FCCE1 E792AB
+8FCCE2 E792AE
+8FCCE3 E792AF
+8FCCE4 E792B1
+8FCCE5 E792B2
+8FCCE6 E792B5
+8FCCE7 E792B9
+8FCCE8 E792BB
+8FCCE9 E792BF
+8FCCEA E79388
+8FCCEB E79389
+8FCCEC E7938C
+8FCCED E79390
+8FCCEE E79393
+8FCCEF E79398
+8FCCF0 E7939A
+8FCCF1 E7939B
+8FCCF2 E7939E
+8FCCF3 E7939F
+8FCCF4 E793A4
+8FCCF5 E793A8
+8FCCF6 E793AA
+8FCCF7 E793AB
+8FCCF8 E793AF
+8FCCF9 E793B4
+8FCCFA E793BA
+8FCCFB E793BB
+8FCCFC E793BC
+8FCCFD E793BF
+8FCCFE E79486
+8FCDA1 E79492
+8FCDA2 E79496
+8FCDA3 E79497
+8FCDA4 E794A0
+8FCDA5 E794A1
+8FCDA6 E794A4
+8FCDA7 E794A7
+8FCDA8 E794A9
+8FCDA9 E794AA
+8FCDAA E794AF
+8FCDAB E794B6
+8FCDAC E794B9
+8FCDAD E794BD
+8FCDAE E794BE
+8FCDAF E794BF
+8FCDB0 E79580
+8FCDB1 E79583
+8FCDB2 E79587
+8FCDB3 E79588
+8FCDB4 E7958E
+8FCDB5 E79590
+8FCDB6 E79592
+8FCDB7 E79597
+8FCDB8 E7959E
+8FCDB9 E7959F
+8FCDBA E795A1
+8FCDBB E795AF
+8FCDBC E795B1
+8FCDBD E795B9
+8FCDBE E795BA
+8FCDBF E795BB
+8FCDC0 E795BC
+8FCDC1 E795BD
+8FCDC2 E795BE
+8FCDC3 E79681
+8FCDC4 E79685
+8FCDC5 E79690
+8FCDC6 E79692
+8FCDC7 E79693
+8FCDC8 E79695
+8FCDC9 E79699
+8FCDCA E7969C
+8FCDCB E796A2
+8FCDCC E796A4
+8FCDCD E796B4
+8FCDCE E796BA
+8FCDCF E796BF
+8FCDD0 E79780
+8FCDD1 E79781
+8FCDD2 E79784
+8FCDD3 E79786
+8FCDD4 E7978C
+8FCDD5 E7978E
+8FCDD6 E7978F
+8FCDD7 E79797
+8FCDD8 E7979C
+8FCDD9 E7979F
+8FCDDA E797A0
+8FCDDB E797A1
+8FCDDC E797A4
+8FCDDD E797A7
+8FCDDE E797AC
+8FCDDF E797AE
+8FCDE0 E797AF
+8FCDE1 E797B1
+8FCDE2 E797B9
+8FCDE3 E79880
+8FCDE4 E79882
+8FCDE5 E79883
+8FCDE6 E79884
+8FCDE7 E79887
+8FCDE8 E79888
+8FCDE9 E7988A
+8FCDEA E7988C
+8FCDEB E7988F
+8FCDEC E79892
+8FCDED E79893
+8FCDEE E79895
+8FCDEF E79896
+8FCDF0 E79899
+8FCDF1 E7989B
+8FCDF2 E7989C
+8FCDF3 E7989D
+8FCDF4 E7989E
+8FCDF5 E798A3
+8FCDF6 E798A5
+8FCDF7 E798A6
+8FCDF8 E798A9
+8FCDF9 E798AD
+8FCDFA E798B2
+8FCDFB E798B3
+8FCDFC E798B5
+8FCDFD E798B8
+8FCDFE E798B9
+8FCEA1 E798BA
+8FCEA2 E798BC
+8FCEA3 E7998A
+8FCEA4 E79980
+8FCEA5 E79981
+8FCEA6 E79983
+8FCEA7 E79984
+8FCEA8 E79985
+8FCEA9 E79989
+8FCEAA E7998B
+8FCEAB E79995
+8FCEAC E79999
+8FCEAD E7999F
+8FCEAE E799A4
+8FCEAF E799A5
+8FCEB0 E799AD
+8FCEB1 E799AE
+8FCEB2 E799AF
+8FCEB3 E799B1
+8FCEB4 E799B4
+8FCEB5 E79A81
+8FCEB6 E79A85
+8FCEB7 E79A8C
+8FCEB8 E79A8D
+8FCEB9 E79A95
+8FCEBA E79A9B
+8FCEBB E79A9C
+8FCEBC E79A9D
+8FCEBD E79A9F
+8FCEBE E79AA0
+8FCEBF E79AA2
+8FCEC0 E79AA3
+8FCEC1 E79AA4
+8FCEC2 E79AA5
+8FCEC3 E79AA6
+8FCEC4 E79AA7
+8FCEC5 E79AA8
+8FCEC6 E79AAA
+8FCEC7 E79AAD
+8FCEC8 E79ABD
+8FCEC9 E79B81
+8FCECA E79B85
+8FCECB E79B89
+8FCECC E79B8B
+8FCECD E79B8C
+8FCECE E79B8E
+8FCECF E79B94
+8FCED0 E79B99
+8FCED1 E79BA0
+8FCED2 E79BA6
+8FCED3 E79BA8
+8FCED4 E79BAC
+8FCED5 E79BB0
+8FCED6 E79BB1
+8FCED7 E79BB6
+8FCED8 E79BB9
+8FCED9 E79BBC
+8FCEDA E79C80
+8FCEDB E79C86
+8FCEDC E79C8A
+8FCEDD E79C8E
+8FCEDE E79C92
+8FCEDF E79C94
+8FCEE0 E79C95
+8FCEE1 E79C97
+8FCEE2 E79C99
+8FCEE3 E79C9A
+8FCEE4 E79C9C
+8FCEE5 E79CA2
+8FCEE6 E79CA8
+8FCEE7 E79CAD
+8FCEE8 E79CAE
+8FCEE9 E79CAF
+8FCEEA E79CB4
+8FCEEB E79CB5
+8FCEEC E79CB6
+8FCEED E79CB9
+8FCEEE E79CBD
+8FCEEF E79CBE
+8FCEF0 E79D82
+8FCEF1 E79D85
+8FCEF2 E79D86
+8FCEF3 E79D8A
+8FCEF4 E79D8D
+8FCEF5 E79D8E
+8FCEF6 E79D8F
+8FCEF7 E79D92
+8FCEF8 E79D96
+8FCEF9 E79D97
+8FCEFA E79D9C
+8FCEFB E79D9E
+8FCEFC E79D9F
+8FCEFD E79DA0
+8FCEFE E79DA2
+8FCFA1 E79DA4
+8FCFA2 E79DA7
+8FCFA3 E79DAA
+8FCFA4 E79DAC
+8FCFA5 E79DB0
+8FCFA6 E79DB2
+8FCFA7 E79DB3
+8FCFA8 E79DB4
+8FCFA9 E79DBA
+8FCFAA E79DBD
+8FCFAB E79E80
+8FCFAC E79E84
+8FCFAD E79E8C
+8FCFAE E79E8D
+8FCFAF E79E94
+8FCFB0 E79E95
+8FCFB1 E79E96
+8FCFB2 E79E9A
+8FCFB3 E79E9F
+8FCFB4 E79EA2
+8FCFB5 E79EA7
+8FCFB6 E79EAA
+8FCFB7 E79EAE
+8FCFB8 E79EAF
+8FCFB9 E79EB1
+8FCFBA E79EB5
+8FCFBB E79EBE
+8FCFBC E79F83
+8FCFBD E79F89
+8FCFBE E79F91
+8FCFBF E79F92
+8FCFC0 E79F95
+8FCFC1 E79F99
+8FCFC2 E79F9E
+8FCFC3 E79F9F
+8FCFC4 E79FA0
+8FCFC5 E79FA4
+8FCFC6 E79FA6
+8FCFC7 E79FAA
+8FCFC8 E79FAC
+8FCFC9 E79FB0
+8FCFCA E79FB1
+8FCFCB E79FB4
+8FCFCC E79FB8
+8FCFCD E79FBB
+8FCFCE E7A085
+8FCFCF E7A086
+8FCFD0 E7A089
+8FCFD1 E7A08D
+8FCFD2 E7A08E
+8FCFD3 E7A091
+8FCFD4 E7A09D
+8FCFD5 E7A0A1
+8FCFD6 E7A0A2
+8FCFD7 E7A0A3
+8FCFD8 E7A0AD
+8FCFD9 E7A0AE
+8FCFDA E7A0B0
+8FCFDB E7A0B5
+8FCFDC E7A0B7
+8FCFDD E7A183
+8FCFDE E7A184
+8FCFDF E7A187
+8FCFE0 E7A188
+8FCFE1 E7A18C
+8FCFE2 E7A18E
+8FCFE3 E7A192
+8FCFE4 E7A19C
+8FCFE5 E7A19E
+8FCFE6 E7A1A0
+8FCFE7 E7A1A1
+8FCFE8 E7A1A3
+8FCFE9 E7A1A4
+8FCFEA E7A1A8
+8FCFEB E7A1AA
+8FCFEC E7A1AE
+8FCFED E7A1BA
+8FCFEE E7A1BE
+8FCFEF E7A28A
+8FCFF0 E7A28F
+8FCFF1 E7A294
+8FCFF2 E7A298
+8FCFF3 E7A2A1
+8FCFF4 E7A29D
+8FCFF5 E7A29E
+8FCFF6 E7A29F
+8FCFF7 E7A2A4
+8FCFF8 E7A2A8
+8FCFF9 E7A2AC
+8FCFFA E7A2AD
+8FCFFB E7A2B0
+8FCFFC E7A2B1
+8FCFFD E7A2B2
+8FCFFE E7A2B3
+8FD0A1 E7A2BB
+8FD0A2 E7A2BD
+8FD0A3 E7A2BF
+8FD0A4 E7A387
+8FD0A5 E7A388
+8FD0A6 E7A389
+8FD0A7 E7A38C
+8FD0A8 E7A38E
+8FD0A9 E7A392
+8FD0AA E7A393
+8FD0AB E7A395
+8FD0AC E7A396
+8FD0AD E7A3A4
+8FD0AE E7A39B
+8FD0AF E7A39F
+8FD0B0 E7A3A0
+8FD0B1 E7A3A1
+8FD0B2 E7A3A6
+8FD0B3 E7A3AA
+8FD0B4 E7A3B2
+8FD0B5 E7A3B3
+8FD0B6 E7A480
+8FD0B7 E7A3B6
+8FD0B8 E7A3B7
+8FD0B9 E7A3BA
+8FD0BA E7A3BB
+8FD0BB E7A3BF
+8FD0BC E7A486
+8FD0BD E7A48C
+8FD0BE E7A490
+8FD0BF E7A49A
+8FD0C0 E7A49C
+8FD0C1 E7A49E
+8FD0C2 E7A49F
+8FD0C3 E7A4A0
+8FD0C4 E7A4A5
+8FD0C5 E7A4A7
+8FD0C6 E7A4A9
+8FD0C7 E7A4AD
+8FD0C8 E7A4B1
+8FD0C9 E7A4B4
+8FD0CA E7A4B5
+8FD0CB E7A4BB
+8FD0CC E7A4BD
+8FD0CD E7A4BF
+8FD0CE E7A584
+8FD0CF E7A585
+8FD0D0 E7A586
+8FD0D1 E7A58A
+8FD0D2 E7A58B
+8FD0D3 E7A58F
+8FD0D4 E7A591
+8FD0D5 E7A594
+8FD0D6 E7A598
+8FD0D7 E7A59B
+8FD0D8 E7A59C
+8FD0D9 E7A5A7
+8FD0DA E7A5A9
+8FD0DB E7A5AB
+8FD0DC E7A5B2
+8FD0DD E7A5B9
+8FD0DE E7A5BB
+8FD0DF E7A5BC
+8FD0E0 E7A5BE
+8FD0E1 E7A68B
+8FD0E2 E7A68C
+8FD0E3 E7A691
+8FD0E4 E7A693
+8FD0E5 E7A694
+8FD0E6 E7A695
+8FD0E7 E7A696
+8FD0E8 E7A698
+8FD0E9 E7A69B
+8FD0EA E7A69C
+8FD0EB E7A6A1
+8FD0EC E7A6A8
+8FD0ED E7A6A9
+8FD0EE E7A6AB
+8FD0EF E7A6AF
+8FD0F0 E7A6B1
+8FD0F1 E7A6B4
+8FD0F2 E7A6B8
+8FD0F3 E7A6BB
+8FD0F4 E7A782
+8FD0F5 E7A784
+8FD0F6 E7A787
+8FD0F7 E7A788
+8FD0F8 E7A78A
+8FD0F9 E7A78F
+8FD0FA E7A794
+8FD0FB E7A796
+8FD0FC E7A79A
+8FD0FD E7A79D
+8FD0FE E7A79E
+8FD1A1 E7A7A0
+8FD1A2 E7A7A2
+8FD1A3 E7A7A5
+8FD1A4 E7A7AA
+8FD1A5 E7A7AB
+8FD1A6 E7A7AD
+8FD1A7 E7A7B1
+8FD1A8 E7A7B8
+8FD1A9 E7A7BC
+8FD1AA E7A882
+8FD1AB E7A883
+8FD1AC E7A887
+8FD1AD E7A889
+8FD1AE E7A88A
+8FD1AF E7A88C
+8FD1B0 E7A891
+8FD1B1 E7A895
+8FD1B2 E7A89B
+8FD1B3 E7A89E
+8FD1B4 E7A8A1
+8FD1B5 E7A8A7
+8FD1B6 E7A8AB
+8FD1B7 E7A8AD
+8FD1B8 E7A8AF
+8FD1B9 E7A8B0
+8FD1BA E7A8B4
+8FD1BB E7A8B5
+8FD1BC E7A8B8
+8FD1BD E7A8B9
+8FD1BE E7A8BA
+8FD1BF E7A984
+8FD1C0 E7A985
+8FD1C1 E7A987
+8FD1C2 E7A988
+8FD1C3 E7A98C
+8FD1C4 E7A995
+8FD1C5 E7A996
+8FD1C6 E7A999
+8FD1C7 E7A99C
+8FD1C8 E7A99D
+8FD1C9 E7A99F
+8FD1CA E7A9A0
+8FD1CB E7A9A5
+8FD1CC E7A9A7
+8FD1CD E7A9AA
+8FD1CE E7A9AD
+8FD1CF E7A9B5
+8FD1D0 E7A9B8
+8FD1D1 E7A9BE
+8FD1D2 E7AA80
+8FD1D3 E7AA82
+8FD1D4 E7AA85
+8FD1D5 E7AA86
+8FD1D6 E7AA8A
+8FD1D7 E7AA8B
+8FD1D8 E7AA90
+8FD1D9 E7AA91
+8FD1DA E7AA94
+8FD1DB E7AA9E
+8FD1DC E7AAA0
+8FD1DD E7AAA3
+8FD1DE E7AAAC
+8FD1DF E7AAB3
+8FD1E0 E7AAB5
+8FD1E1 E7AAB9
+8FD1E2 E7AABB
+8FD1E3 E7AABC
+8FD1E4 E7AB86
+8FD1E5 E7AB89
+8FD1E6 E7AB8C
+8FD1E7 E7AB8E
+8FD1E8 E7AB91
+8FD1E9 E7AB9B
+8FD1EA E7ABA8
+8FD1EB E7ABA9
+8FD1EC E7ABAB
+8FD1ED E7ABAC
+8FD1EE E7ABB1
+8FD1EF E7ABB4
+8FD1F0 E7ABBB
+8FD1F1 E7ABBD
+8FD1F2 E7ABBE
+8FD1F3 E7AC87
+8FD1F4 E7AC94
+8FD1F5 E7AC9F
+8FD1F6 E7ACA3
+8FD1F7 E7ACA7
+8FD1F8 E7ACA9
+8FD1F9 E7ACAA
+8FD1FA E7ACAB
+8FD1FB E7ACAD
+8FD1FC E7ACAE
+8FD1FD E7ACAF
+8FD1FE E7ACB0
+8FD2A1 E7ACB1
+8FD2A2 E7ACB4
+8FD2A3 E7ACBD
+8FD2A4 E7ACBF
+8FD2A5 E7AD80
+8FD2A6 E7AD81
+8FD2A7 E7AD87
+8FD2A8 E7AD8E
+8FD2A9 E7AD95
+8FD2AA E7ADA0
+8FD2AB E7ADA4
+8FD2AC E7ADA6
+8FD2AD E7ADA9
+8FD2AE E7ADAA
+8FD2AF E7ADAD
+8FD2B0 E7ADAF
+8FD2B1 E7ADB2
+8FD2B2 E7ADB3
+8FD2B3 E7ADB7
+8FD2B4 E7AE84
+8FD2B5 E7AE89
+8FD2B6 E7AE8E
+8FD2B7 E7AE90
+8FD2B8 E7AE91
+8FD2B9 E7AE96
+8FD2BA E7AE9B
+8FD2BB E7AE9E
+8FD2BC E7AEA0
+8FD2BD E7AEA5
+8FD2BE E7AEAC
+8FD2BF E7AEAF
+8FD2C0 E7AEB0
+8FD2C1 E7AEB2
+8FD2C2 E7AEB5
+8FD2C3 E7AEB6
+8FD2C4 E7AEBA
+8FD2C5 E7AEBB
+8FD2C6 E7AEBC
+8FD2C7 E7AEBD
+8FD2C8 E7AF82
+8FD2C9 E7AF85
+8FD2CA E7AF88
+8FD2CB E7AF8A
+8FD2CC E7AF94
+8FD2CD E7AF96
+8FD2CE E7AF97
+8FD2CF E7AF99
+8FD2D0 E7AF9A
+8FD2D1 E7AF9B
+8FD2D2 E7AFA8
+8FD2D3 E7AFAA
+8FD2D4 E7AFB2
+8FD2D5 E7AFB4
+8FD2D6 E7AFB5
+8FD2D7 E7AFB8
+8FD2D8 E7AFB9
+8FD2D9 E7AFBA
+8FD2DA E7AFBC
+8FD2DB E7AFBE
+8FD2DC E7B081
+8FD2DD E7B082
+8FD2DE E7B083
+8FD2DF E7B084
+8FD2E0 E7B086
+8FD2E1 E7B089
+8FD2E2 E7B08B
+8FD2E3 E7B08C
+8FD2E4 E7B08E
+8FD2E5 E7B08F
+8FD2E6 E7B099
+8FD2E7 E7B09B
+8FD2E8 E7B0A0
+8FD2E9 E7B0A5
+8FD2EA E7B0A6
+8FD2EB E7B0A8
+8FD2EC E7B0AC
+8FD2ED E7B0B1
+8FD2EE E7B0B3
+8FD2EF E7B0B4
+8FD2F0 E7B0B6
+8FD2F1 E7B0B9
+8FD2F2 E7B0BA
+8FD2F3 E7B186
+8FD2F4 E7B18A
+8FD2F5 E7B195
+8FD2F6 E7B191
+8FD2F7 E7B192
+8FD2F8 E7B193
+8FD2F9 E7B199
+8FD2FA E7B19A
+8FD2FB E7B19B
+8FD2FC E7B19C
+8FD2FD E7B19D
+8FD2FE E7B19E
+8FD3A1 E7B1A1
+8FD3A2 E7B1A3
+8FD3A3 E7B1A7
+8FD3A4 E7B1A9
+8FD3A5 E7B1AD
+8FD3A6 E7B1AE
+8FD3A7 E7B1B0
+8FD3A8 E7B1B2
+8FD3A9 E7B1B9
+8FD3AA E7B1BC
+8FD3AB E7B1BD
+8FD3AC E7B286
+8FD3AD E7B287
+8FD3AE E7B28F
+8FD3AF E7B294
+8FD3B0 E7B29E
+8FD3B1 E7B2A0
+8FD3B2 E7B2A6
+8FD3B3 E7B2B0
+8FD3B4 E7B2B6
+8FD3B5 E7B2B7
+8FD3B6 E7B2BA
+8FD3B7 E7B2BB
+8FD3B8 E7B2BC
+8FD3B9 E7B2BF
+8FD3BA E7B384
+8FD3BB E7B387
+8FD3BC E7B388
+8FD3BD E7B389
+8FD3BE E7B38D
+8FD3BF E7B38F
+8FD3C0 E7B393
+8FD3C1 E7B394
+8FD3C2 E7B395
+8FD3C3 E7B397
+8FD3C4 E7B399
+8FD3C5 E7B39A
+8FD3C6 E7B39D
+8FD3C7 E7B3A6
+8FD3C8 E7B3A9
+8FD3C9 E7B3AB
+8FD3CA E7B3B5
+8FD3CB E7B483
+8FD3CC E7B487
+8FD3CD E7B488
+8FD3CE E7B489
+8FD3CF E7B48F
+8FD3D0 E7B491
+8FD3D1 E7B492
+8FD3D2 E7B493
+8FD3D3 E7B496
+8FD3D4 E7B49D
+8FD3D5 E7B49E
+8FD3D6 E7B4A3
+8FD3D7 E7B4A6
+8FD3D8 E7B4AA
+8FD3D9 E7B4AD
+8FD3DA E7B4B1
+8FD3DB E7B4BC
+8FD3DC E7B4BD
+8FD3DD E7B4BE
+8FD3DE E7B580
+8FD3DF E7B581
+8FD3E0 E7B587
+8FD3E1 E7B588
+8FD3E2 E7B58D
+8FD3E3 E7B591
+8FD3E4 E7B593
+8FD3E5 E7B597
+8FD3E6 E7B599
+8FD3E7 E7B59A
+8FD3E8 E7B59C
+8FD3E9 E7B59D
+8FD3EA E7B5A5
+8FD3EB E7B5A7
+8FD3EC E7B5AA
+8FD3ED E7B5B0
+8FD3EE E7B5B8
+8FD3EF E7B5BA
+8FD3F0 E7B5BB
+8FD3F1 E7B5BF
+8FD3F2 E7B681
+8FD3F3 E7B682
+8FD3F4 E7B683
+8FD3F5 E7B685
+8FD3F6 E7B686
+8FD3F7 E7B688
+8FD3F8 E7B68B
+8FD3F9 E7B68C
+8FD3FA E7B68D
+8FD3FB E7B691
+8FD3FC E7B696
+8FD3FD E7B697
+8FD3FE E7B69D
+8FD4A1 E7B69E
+8FD4A2 E7B6A6
+8FD4A3 E7B6A7
+8FD4A4 E7B6AA
+8FD4A5 E7B6B3
+8FD4A6 E7B6B6
+8FD4A7 E7B6B7
+8FD4A8 E7B6B9
+8FD4A9 E7B782
+8FD4AA E7B783
+8FD4AB E7B784
+8FD4AC E7B785
+8FD4AD E7B786
+8FD4AE E7B78C
+8FD4AF E7B78D
+8FD4B0 E7B78E
+8FD4B1 E7B797
+8FD4B2 E7B799
+8FD4B3 E7B880
+8FD4B4 E7B7A2
+8FD4B5 E7B7A5
+8FD4B6 E7B7A6
+8FD4B7 E7B7AA
+8FD4B8 E7B7AB
+8FD4B9 E7B7AD
+8FD4BA E7B7B1
+8FD4BB E7B7B5
+8FD4BC E7B7B6
+8FD4BD E7B7B9
+8FD4BE E7B7BA
+8FD4BF E7B888
+8FD4C0 E7B890
+8FD4C1 E7B891
+8FD4C2 E7B895
+8FD4C3 E7B897
+8FD4C4 E7B89C
+8FD4C5 E7B89D
+8FD4C6 E7B8A0
+8FD4C7 E7B8A7
+8FD4C8 E7B8A8
+8FD4C9 E7B8AC
+8FD4CA E7B8AD
+8FD4CB E7B8AF
+8FD4CC E7B8B3
+8FD4CD E7B8B6
+8FD4CE E7B8BF
+8FD4CF E7B984
+8FD4D0 E7B985
+8FD4D1 E7B987
+8FD4D2 E7B98E
+8FD4D3 E7B990
+8FD4D4 E7B992
+8FD4D5 E7B998
+8FD4D6 E7B99F
+8FD4D7 E7B9A1
+8FD4D8 E7B9A2
+8FD4D9 E7B9A5
+8FD4DA E7B9AB
+8FD4DB E7B9AE
+8FD4DC E7B9AF
+8FD4DD E7B9B3
+8FD4DE E7B9B8
+8FD4DF E7B9BE
+8FD4E0 E7BA81
+8FD4E1 E7BA86
+8FD4E2 E7BA87
+8FD4E3 E7BA8A
+8FD4E4 E7BA8D
+8FD4E5 E7BA91
+8FD4E6 E7BA95
+8FD4E7 E7BA98
+8FD4E8 E7BA9A
+8FD4E9 E7BA9D
+8FD4EA E7BA9E
+8FD4EB E7BCBC
+8FD4EC E7BCBB
+8FD4ED E7BCBD
+8FD4EE E7BCBE
+8FD4EF E7BCBF
+8FD4F0 E7BD83
+8FD4F1 E7BD84
+8FD4F2 E7BD87
+8FD4F3 E7BD8F
+8FD4F4 E7BD92
+8FD4F5 E7BD93
+8FD4F6 E7BD9B
+8FD4F7 E7BD9C
+8FD4F8 E7BD9D
+8FD4F9 E7BDA1
+8FD4FA E7BDA3
+8FD4FB E7BDA4
+8FD4FC E7BDA5
+8FD4FD E7BDA6
+8FD4FE E7BDAD
+8FD5A1 E7BDB1
+8FD5A2 E7BDBD
+8FD5A3 E7BDBE
+8FD5A4 E7BDBF
+8FD5A5 E7BE80
+8FD5A6 E7BE8B
+8FD5A7 E7BE8D
+8FD5A8 E7BE8F
+8FD5A9 E7BE90
+8FD5AA E7BE91
+8FD5AB E7BE96
+8FD5AC E7BE97
+8FD5AD E7BE9C
+8FD5AE E7BEA1
+8FD5AF E7BEA2
+8FD5B0 E7BEA6
+8FD5B1 E7BEAA
+8FD5B2 E7BEAD
+8FD5B3 E7BEB4
+8FD5B4 E7BEBC
+8FD5B5 E7BEBF
+8FD5B6 E7BF80
+8FD5B7 E7BF83
+8FD5B8 E7BF88
+8FD5B9 E7BF8E
+8FD5BA E7BF8F
+8FD5BB E7BF9B
+8FD5BC E7BF9F
+8FD5BD E7BFA3
+8FD5BE E7BFA5
+8FD5BF E7BFA8
+8FD5C0 E7BFAC
+8FD5C1 E7BFAE
+8FD5C2 E7BFAF
+8FD5C3 E7BFB2
+8FD5C4 E7BFBA
+8FD5C5 E7BFBD
+8FD5C6 E7BFBE
+8FD5C7 E7BFBF
+8FD5C8 E88087
+8FD5C9 E88088
+8FD5CA E8808A
+8FD5CB E8808D
+8FD5CC E8808E
+8FD5CD E8808F
+8FD5CE E88091
+8FD5CF E88093
+8FD5D0 E88094
+8FD5D1 E88096
+8FD5D2 E8809D
+8FD5D3 E8809E
+8FD5D4 E8809F
+8FD5D5 E880A0
+8FD5D6 E880A4
+8FD5D7 E880A6
+8FD5D8 E880AC
+8FD5D9 E880AE
+8FD5DA E880B0
+8FD5DB E880B4
+8FD5DC E880B5
+8FD5DD E880B7
+8FD5DE E880B9
+8FD5DF E880BA
+8FD5E0 E880BC
+8FD5E1 E880BE
+8FD5E2 E88180
+8FD5E3 E88184
+8FD5E4 E881A0
+8FD5E5 E881A4
+8FD5E6 E881A6
+8FD5E7 E881AD
+8FD5E8 E881B1
+8FD5E9 E881B5
+8FD5EA E88281
+8FD5EB E88288
+8FD5EC E8828E
+8FD5ED E8829C
+8FD5EE E8829E
+8FD5EF E882A6
+8FD5F0 E882A7
+8FD5F1 E882AB
+8FD5F2 E882B8
+8FD5F3 E882B9
+8FD5F4 E88388
+8FD5F5 E8838D
+8FD5F6 E8838F
+8FD5F7 E88392
+8FD5F8 E88394
+8FD5F9 E88395
+8FD5FA E88397
+8FD5FB E88398
+8FD5FC E883A0
+8FD5FD E883AD
+8FD5FE E883AE
+8FD6A1 E883B0
+8FD6A2 E883B2
+8FD6A3 E883B3
+8FD6A4 E883B6
+8FD6A5 E883B9
+8FD6A6 E883BA
+8FD6A7 E883BE
+8FD6A8 E88483
+8FD6A9 E8848B
+8FD6AA E88496
+8FD6AB E88497
+8FD6AC E88498
+8FD6AD E8849C
+8FD6AE E8849E
+8FD6AF E884A0
+8FD6B0 E884A4
+8FD6B1 E884A7
+8FD6B2 E884AC
+8FD6B3 E884B0
+8FD6B4 E884B5
+8FD6B5 E884BA
+8FD6B6 E884BC
+8FD6B7 E88585
+8FD6B8 E88587
+8FD6B9 E8858A
+8FD6BA E8858C
+8FD6BB E88592
+8FD6BC E88597
+8FD6BD E885A0
+8FD6BE E885A1
+8FD6BF E885A7
+8FD6C0 E885A8
+8FD6C1 E885A9
+8FD6C2 E885AD
+8FD6C3 E885AF
+8FD6C4 E885B7
+8FD6C5 E88681
+8FD6C6 E88690
+8FD6C7 E88684
+8FD6C8 E88685
+8FD6C9 E88686
+8FD6CA E8868B
+8FD6CB E8868E
+8FD6CC E88696
+8FD6CD E88698
+8FD6CE E8869B
+8FD6CF E8869E
+8FD6D0 E886A2
+8FD6D1 E886AE
+8FD6D2 E886B2
+8FD6D3 E886B4
+8FD6D4 E886BB
+8FD6D5 E8878B
+8FD6D6 E88783
+8FD6D7 E88785
+8FD6D8 E8878A
+8FD6D9 E8878E
+8FD6DA E8878F
+8FD6DB E88795
+8FD6DC E88797
+8FD6DD E8879B
+8FD6DE E8879D
+8FD6DF E8879E
+8FD6E0 E887A1
+8FD6E1 E887A4
+8FD6E2 E887AB
+8FD6E3 E887AC
+8FD6E4 E887B0
+8FD6E5 E887B1
+8FD6E6 E887B2
+8FD6E7 E887B5
+8FD6E8 E887B6
+8FD6E9 E887B8
+8FD6EA E887B9
+8FD6EB E887BD
+8FD6EC E887BF
+8FD6ED E88880
+8FD6EE E88883
+8FD6EF E8888F
+8FD6F0 E88893
+8FD6F1 E88894
+8FD6F2 E88899
+8FD6F3 E8889A
+8FD6F4 E8889D
+8FD6F5 E888A1
+8FD6F6 E888A2
+8FD6F7 E888A8
+8FD6F8 E888B2
+8FD6F9 E888B4
+8FD6FA E888BA
+8FD6FB E88983
+8FD6FC E88984
+8FD6FD E88985
+8FD6FE E88986
+8FD7A1 E8898B
+8FD7A2 E8898E
+8FD7A3 E8898F
+8FD7A4 E88991
+8FD7A5 E88996
+8FD7A6 E8899C
+8FD7A7 E889A0
+8FD7A8 E889A3
+8FD7A9 E889A7
+8FD7AA E889AD
+8FD7AB E889B4
+8FD7AC E889BB
+8FD7AD E889BD
+8FD7AE E889BF
+8FD7AF E88A80
+8FD7B0 E88A81
+8FD7B1 E88A83
+8FD7B2 E88A84
+8FD7B3 E88A87
+8FD7B4 E88A89
+8FD7B5 E88A8A
+8FD7B6 E88A8E
+8FD7B7 E88A91
+8FD7B8 E88A94
+8FD7B9 E88A96
+8FD7BA E88A98
+8FD7BB E88A9A
+8FD7BC E88A9B
+8FD7BD E88AA0
+8FD7BE E88AA1
+8FD7BF E88AA3
+8FD7C0 E88AA4
+8FD7C1 E88AA7
+8FD7C2 E88AA8
+8FD7C3 E88AA9
+8FD7C4 E88AAA
+8FD7C5 E88AAE
+8FD7C6 E88AB0
+8FD7C7 E88AB2
+8FD7C8 E88AB4
+8FD7C9 E88AB7
+8FD7CA E88ABA
+8FD7CB E88ABC
+8FD7CC E88ABE
+8FD7CD E88ABF
+8FD7CE E88B86
+8FD7CF E88B90
+8FD7D0 E88B95
+8FD7D1 E88B9A
+8FD7D2 E88BA0
+8FD7D3 E88BA2
+8FD7D4 E88BA4
+8FD7D5 E88BA8
+8FD7D6 E88BAA
+8FD7D7 E88BAD
+8FD7D8 E88BAF
+8FD7D9 E88BB6
+8FD7DA E88BB7
+8FD7DB E88BBD
+8FD7DC E88BBE
+8FD7DD E88C80
+8FD7DE E88C81
+8FD7DF E88C87
+8FD7E0 E88C88
+8FD7E1 E88C8A
+8FD7E2 E88C8B
+8FD7E3 E88D94
+8FD7E4 E88C9B
+8FD7E5 E88C9D
+8FD7E6 E88C9E
+8FD7E7 E88C9F
+8FD7E8 E88CA1
+8FD7E9 E88CA2
+8FD7EA E88CAC
+8FD7EB E88CAD
+8FD7EC E88CAE
+8FD7ED E88CB0
+8FD7EE E88CB3
+8FD7EF E88CB7
+8FD7F0 E88CBA
+8FD7F1 E88CBC
+8FD7F2 E88CBD
+8FD7F3 E88D82
+8FD7F4 E88D83
+8FD7F5 E88D84
+8FD7F6 E88D87
+8FD7F7 E88D8D
+8FD7F8 E88D8E
+8FD7F9 E88D91
+8FD7FA E88D95
+8FD7FB E88D96
+8FD7FC E88D97
+8FD7FD E88DB0
+8FD7FE E88DB8
+8FD8A1 E88DBD
+8FD8A2 E88DBF
+8FD8A3 E88E80
+8FD8A4 E88E82
+8FD8A5 E88E84
+8FD8A6 E88E86
+8FD8A7 E88E8D
+8FD8A8 E88E92
+8FD8A9 E88E94
+8FD8AA E88E95
+8FD8AB E88E98
+8FD8AC E88E99
+8FD8AD E88E9B
+8FD8AE E88E9C
+8FD8AF E88E9D
+8FD8B0 E88EA6
+8FD8B1 E88EA7
+8FD8B2 E88EA9
+8FD8B3 E88EAC
+8FD8B4 E88EBE
+8FD8B5 E88EBF
+8FD8B6 E88F80
+8FD8B7 E88F87
+8FD8B8 E88F89
+8FD8B9 E88F8F
+8FD8BA E88F90
+8FD8BB E88F91
+8FD8BC E88F94
+8FD8BD E88F9D
+8FD8BE E88D93
+8FD8BF E88FA8
+8FD8C0 E88FAA
+8FD8C1 E88FB6
+8FD8C2 E88FB8
+8FD8C3 E88FB9
+8FD8C4 E88FBC
+8FD8C5 E89081
+8FD8C6 E89086
+8FD8C7 E8908A
+8FD8C8 E8908F
+8FD8C9 E89091
+8FD8CA E89095
+8FD8CB E89099
+8FD8CC E88EAD
+8FD8CD E890AF
+8FD8CE E890B9
+8FD8CF E89185
+8FD8D0 E89187
+8FD8D1 E89188
+8FD8D2 E8918A
+8FD8D3 E8918D
+8FD8D4 E8918F
+8FD8D5 E89191
+8FD8D6 E89192
+8FD8D7 E89196
+8FD8D8 E89198
+8FD8D9 E89199
+8FD8DA E8919A
+8FD8DB E8919C
+8FD8DC E891A0
+8FD8DD E891A4
+8FD8DE E891A5
+8FD8DF E891A7
+8FD8E0 E891AA
+8FD8E1 E891B0
+8FD8E2 E891B3
+8FD8E3 E891B4
+8FD8E4 E891B6
+8FD8E5 E891B8
+8FD8E6 E891BC
+8FD8E7 E891BD
+8FD8E8 E89281
+8FD8E9 E89285
+8FD8EA E89292
+8FD8EB E89293
+8FD8EC E89295
+8FD8ED E8929E
+8FD8EE E892A6
+8FD8EF E892A8
+8FD8F0 E892A9
+8FD8F1 E892AA
+8FD8F2 E892AF
+8FD8F3 E892B1
+8FD8F4 E892B4
+8FD8F5 E892BA
+8FD8F6 E892BD
+8FD8F7 E892BE
+8FD8F8 E89380
+8FD8F9 E89382
+8FD8FA E89387
+8FD8FB E89388
+8FD8FC E8938C
+8FD8FD E8938F
+8FD8FE E89393
+8FD9A1 E8939C
+8FD9A2 E893A7
+8FD9A3 E893AA
+8FD9A4 E893AF
+8FD9A5 E893B0
+8FD9A6 E893B1
+8FD9A7 E893B2
+8FD9A8 E893B7
+8FD9A9 E894B2
+8FD9AA E893BA
+8FD9AB E893BB
+8FD9AC E893BD
+8FD9AD E89482
+8FD9AE E89483
+8FD9AF E89487
+8FD9B0 E8948C
+8FD9B1 E8948E
+8FD9B2 E89490
+8FD9B3 E8949C
+8FD9B4 E8949E
+8FD9B5 E894A2
+8FD9B6 E894A3
+8FD9B7 E894A4
+8FD9B8 E894A5
+8FD9B9 E894A7
+8FD9BA E894AA
+8FD9BB E894AB
+8FD9BC E894AF
+8FD9BD E894B3
+8FD9BE E894B4
+8FD9BF E894B6
+8FD9C0 E894BF
+8FD9C1 E89586
+8FD9C2 E8958F
+8FD9C3 E89590
+8FD9C4 E89591
+8FD9C5 E89592
+8FD9C6 E89593
+8FD9C7 E89596
+8FD9C8 E89599
+8FD9C9 E8959C
+8FD9CA E8959D
+8FD9CB E8959E
+8FD9CC E8959F
+8FD9CD E895A0
+8FD9CE E895A1
+8FD9CF E895A2
+8FD9D0 E895A4
+8FD9D1 E895AB
+8FD9D2 E895AF
+8FD9D3 E895B9
+8FD9D4 E895BA
+8FD9D5 E895BB
+8FD9D6 E895BD
+8FD9D7 E895BF
+8FD9D8 E89681
+8FD9D9 E89685
+8FD9DA E89686
+8FD9DB E89689
+8FD9DC E8968B
+8FD9DD E8968C
+8FD9DE E8968F
+8FD9DF E89693
+8FD9E0 E89698
+8FD9E1 E8969D
+8FD9E2 E8969F
+8FD9E3 E896A0
+8FD9E4 E896A2
+8FD9E5 E896A5
+8FD9E6 E896A7
+8FD9E7 E896B4
+8FD9E8 E896B6
+8FD9E9 E896B7
+8FD9EA E896B8
+8FD9EB E896BC
+8FD9EC E896BD
+8FD9ED E896BE
+8FD9EE E896BF
+8FD9EF E89782
+8FD9F0 E89787
+8FD9F1 E8978A
+8FD9F2 E8978B
+8FD9F3 E8978E
+8FD9F4 E896AD
+8FD9F5 E89798
+8FD9F6 E8979A
+8FD9F7 E8979F
+8FD9F8 E897A0
+8FD9F9 E897A6
+8FD9FA E897A8
+8FD9FB E897AD
+8FD9FC E897B3
+8FD9FD E897B6
+8FD9FE E897BC
+8FDAA1 E897BF
+8FDAA2 E89880
+8FDAA3 E89884
+8FDAA4 E89885
+8FDAA5 E8988D
+8FDAA6 E8988E
+8FDAA7 E89890
+8FDAA8 E89891
+8FDAA9 E89892
+8FDAAA E89898
+8FDAAB E89899
+8FDAAC E8989B
+8FDAAD E8989E
+8FDAAE E898A1
+8FDAAF E898A7
+8FDAB0 E898A9
+8FDAB1 E898B6
+8FDAB2 E898B8
+8FDAB3 E898BA
+8FDAB4 E898BC
+8FDAB5 E898BD
+8FDAB6 E89980
+8FDAB7 E89982
+8FDAB8 E89986
+8FDAB9 E89992
+8FDABA E89993
+8FDABB E89996
+8FDABC E89997
+8FDABD E89998
+8FDABE E89999
+8FDABF E8999D
+8FDAC0 E899A0
+8FDAC1 E899A1
+8FDAC2 E899A2
+8FDAC3 E899A3
+8FDAC4 E899A4
+8FDAC5 E899A9
+8FDAC6 E899AC
+8FDAC7 E899AF
+8FDAC8 E899B5
+8FDAC9 E899B6
+8FDACA E899B7
+8FDACB E899BA
+8FDACC E89A8D
+8FDACD E89A91
+8FDACE E89A96
+8FDACF E89A98
+8FDAD0 E89A9A
+8FDAD1 E89A9C
+8FDAD2 E89AA1
+8FDAD3 E89AA6
+8FDAD4 E89AA7
+8FDAD5 E89AA8
+8FDAD6 E89AAD
+8FDAD7 E89AB1
+8FDAD8 E89AB3
+8FDAD9 E89AB4
+8FDADA E89AB5
+8FDADB E89AB7
+8FDADC E89AB8
+8FDADD E89AB9
+8FDADE E89ABF
+8FDADF E89B80
+8FDAE0 E89B81
+8FDAE1 E89B83
+8FDAE2 E89B85
+8FDAE3 E89B91
+8FDAE4 E89B92
+8FDAE5 E89B95
+8FDAE6 E89B97
+8FDAE7 E89B9A
+8FDAE8 E89B9C
+8FDAE9 E89BA0
+8FDAEA E89BA3
+8FDAEB E89BA5
+8FDAEC E89BA7
+8FDAED E89A88
+8FDAEE E89BBA
+8FDAEF E89BBC
+8FDAF0 E89BBD
+8FDAF1 E89C84
+8FDAF2 E89C85
+8FDAF3 E89C87
+8FDAF4 E89C8B
+8FDAF5 E89C8E
+8FDAF6 E89C8F
+8FDAF7 E89C90
+8FDAF8 E89C93
+8FDAF9 E89C94
+8FDAFA E89C99
+8FDAFB E89C9E
+8FDAFC E89C9F
+8FDAFD E89CA1
+8FDAFE E89CA3
+8FDBA1 E89CA8
+8FDBA2 E89CAE
+8FDBA3 E89CAF
+8FDBA4 E89CB1
+8FDBA5 E89CB2
+8FDBA6 E89CB9
+8FDBA7 E89CBA
+8FDBA8 E89CBC
+8FDBA9 E89CBD
+8FDBAA E89CBE
+8FDBAB E89D80
+8FDBAC E89D83
+8FDBAD E89D85
+8FDBAE E89D8D
+8FDBAF E89D98
+8FDBB0 E89D9D
+8FDBB1 E89DA1
+8FDBB2 E89DA4
+8FDBB3 E89DA5
+8FDBB4 E89DAF
+8FDBB5 E89DB1
+8FDBB6 E89DB2
+8FDBB7 E89DBB
+8FDBB8 E89E83
+8FDBB9 E89E84
+8FDBBA E89E85
+8FDBBB E89E86
+8FDBBC E89E87
+8FDBBD E89E88
+8FDBBE E89E89
+8FDBBF E89E8B
+8FDBC0 E89E8C
+8FDBC1 E89E90
+8FDBC2 E89E93
+8FDBC3 E89E95
+8FDBC4 E89E97
+8FDBC5 E89E98
+8FDBC6 E89E99
+8FDBC7 E89E9E
+8FDBC8 E89EA0
+8FDBC9 E89EA3
+8FDBCA E89EA7
+8FDBCB E89EAC
+8FDBCC E89EAD
+8FDBCD E89EAE
+8FDBCE E89EB1
+8FDBCF E89EB5
+8FDBD0 E89EBE
+8FDBD1 E89EBF
+8FDBD2 E89F81
+8FDBD3 E89F88
+8FDBD4 E89F89
+8FDBD5 E89F8A
+8FDBD6 E89F8E
+8FDBD7 E89F95
+8FDBD8 E89F96
+8FDBD9 E89F99
+8FDBDA E89F9A
+8FDBDB E89F9C
+8FDBDC E89F9F
+8FDBDD E89FA2
+8FDBDE E89FA3
+8FDBDF E89FA4
+8FDBE0 E89FAA
+8FDBE1 E89FAB
+8FDBE2 E89FAD
+8FDBE3 E89FB1
+8FDBE4 E89FB3
+8FDBE5 E89FB8
+8FDBE6 E89FBA
+8FDBE7 E89FBF
+8FDBE8 E8A081
+8FDBE9 E8A083
+8FDBEA E8A086
+8FDBEB E8A089
+8FDBEC E8A08A
+8FDBED E8A08B
+8FDBEE E8A090
+8FDBEF E8A099
+8FDBF0 E8A092
+8FDBF1 E8A093
+8FDBF2 E8A094
+8FDBF3 E8A098
+8FDBF4 E8A09A
+8FDBF5 E8A09B
+8FDBF6 E8A09C
+8FDBF7 E8A09E
+8FDBF8 E8A09F
+8FDBF9 E8A0A8
+8FDBFA E8A0AD
+8FDBFB E8A0AE
+8FDBFC E8A0B0
+8FDBFD E8A0B2
+8FDBFE E8A0B5
+8FDCA1 E8A0BA
+8FDCA2 E8A0BC
+8FDCA3 E8A181
+8FDCA4 E8A183
+8FDCA5 E8A185
+8FDCA6 E8A188
+8FDCA7 E8A189
+8FDCA8 E8A18A
+8FDCA9 E8A18B
+8FDCAA E8A18E
+8FDCAB E8A191
+8FDCAC E8A195
+8FDCAD E8A196
+8FDCAE E8A198
+8FDCAF E8A19A
+8FDCB0 E8A19C
+8FDCB1 E8A19F
+8FDCB2 E8A1A0
+8FDCB3 E8A1A4
+8FDCB4 E8A1A9
+8FDCB5 E8A1B1
+8FDCB6 E8A1B9
+8FDCB7 E8A1BB
+8FDCB8 E8A280
+8FDCB9 E8A298
+8FDCBA E8A29A
+8FDCBB E8A29B
+8FDCBC E8A29C
+8FDCBD E8A29F
+8FDCBE E8A2A0
+8FDCBF E8A2A8
+8FDCC0 E8A2AA
+8FDCC1 E8A2BA
+8FDCC2 E8A2BD
+8FDCC3 E8A2BE
+8FDCC4 E8A380
+8FDCC5 E8A38A
+8FDCC6 E8A38B
+8FDCC7 E8A38C
+8FDCC8 E8A38D
+8FDCC9 E8A38E
+8FDCCA E8A391
+8FDCCB E8A392
+8FDCCC E8A393
+8FDCCD E8A39B
+8FDCCE E8A39E
+8FDCCF E8A3A7
+8FDCD0 E8A3AF
+8FDCD1 E8A3B0
+8FDCD2 E8A3B1
+8FDCD3 E8A3B5
+8FDCD4 E8A3B7
+8FDCD5 E8A481
+8FDCD6 E8A486
+8FDCD7 E8A48D
+8FDCD8 E8A48E
+8FDCD9 E8A48F
+8FDCDA E8A495
+8FDCDB E8A496
+8FDCDC E8A498
+8FDCDD E8A499
+8FDCDE E8A49A
+8FDCDF E8A49C
+8FDCE0 E8A4A0
+8FDCE1 E8A4A6
+8FDCE2 E8A4A7
+8FDCE3 E8A4A8
+8FDCE4 E8A4B0
+8FDCE5 E8A4B1
+8FDCE6 E8A4B2
+8FDCE7 E8A4B5
+8FDCE8 E8A4B9
+8FDCE9 E8A4BA
+8FDCEA E8A4BE
+8FDCEB E8A580
+8FDCEC E8A582
+8FDCED E8A585
+8FDCEE E8A586
+8FDCEF E8A589
+8FDCF0 E8A58F
+8FDCF1 E8A592
+8FDCF2 E8A597
+8FDCF3 E8A59A
+8FDCF4 E8A59B
+8FDCF5 E8A59C
+8FDCF6 E8A5A1
+8FDCF7 E8A5A2
+8FDCF8 E8A5A3
+8FDCF9 E8A5AB
+8FDCFA E8A5AE
+8FDCFB E8A5B0
+8FDCFC E8A5B3
+8FDCFD E8A5B5
+8FDCFE E8A5BA
+8FDDA1 E8A5BB
+8FDDA2 E8A5BC
+8FDDA3 E8A5BD
+8FDDA4 E8A689
+8FDDA5 E8A68D
+8FDDA6 E8A690
+8FDDA7 E8A694
+8FDDA8 E8A695
+8FDDA9 E8A69B
+8FDDAA E8A69C
+8FDDAB E8A69F
+8FDDAC E8A6A0
+8FDDAD E8A6A5
+8FDDAE E8A6B0
+8FDDAF E8A6B4
+8FDDB0 E8A6B5
+8FDDB1 E8A6B6
+8FDDB2 E8A6B7
+8FDDB3 E8A6BC
+8FDDB4 E8A794
+8FDDB5 E8A795
+8FDDB6 E8A796
+8FDDB7 E8A797
+8FDDB8 E8A798
+8FDDB9 E8A7A5
+8FDDBA E8A7A9
+8FDDBB E8A7AB
+8FDDBC E8A7AD
+8FDDBD E8A7B1
+8FDDBE E8A7B3
+8FDDBF E8A7B6
+8FDDC0 E8A7B9
+8FDDC1 E8A7BD
+8FDDC2 E8A7BF
+8FDDC3 E8A884
+8FDDC4 E8A885
+8FDDC5 E8A887
+8FDDC6 E8A88F
+8FDDC7 E8A891
+8FDDC8 E8A892
+8FDDC9 E8A894
+8FDDCA E8A895
+8FDDCB E8A89E
+8FDDCC E8A8A0
+8FDDCD E8A8A2
+8FDDCE E8A8A4
+8FDDCF E8A8A6
+8FDDD0 E8A8AB
+8FDDD1 E8A8AC
+8FDDD2 E8A8AF
+8FDDD3 E8A8B5
+8FDDD4 E8A8B7
+8FDDD5 E8A8BD
+8FDDD6 E8A8BE
+8FDDD7 E8A980
+8FDDD8 E8A983
+8FDDD9 E8A985
+8FDDDA E8A987
+8FDDDB E8A989
+8FDDDC E8A98D
+8FDDDD E8A98E
+8FDDDE E8A993
+8FDDDF E8A996
+8FDDE0 E8A997
+8FDDE1 E8A998
+8FDDE2 E8A99C
+8FDDE3 E8A99D
+8FDDE4 E8A9A1
+8FDDE5 E8A9A5
+8FDDE6 E8A9A7
+8FDDE7 E8A9B5
+8FDDE8 E8A9B6
+8FDDE9 E8A9B7
+8FDDEA E8A9B9
+8FDDEB E8A9BA
+8FDDEC E8A9BB
+8FDDED E8A9BE
+8FDDEE E8A9BF
+8FDDEF E8AA80
+8FDDF0 E8AA83
+8FDDF1 E8AA86
+8FDDF2 E8AA8B
+8FDDF3 E8AA8F
+8FDDF4 E8AA90
+8FDDF5 E8AA92
+8FDDF6 E8AA96
+8FDDF7 E8AA97
+8FDDF8 E8AA99
+8FDDF9 E8AA9F
+8FDDFA E8AAA7
+8FDDFB E8AAA9
+8FDDFC E8AAAE
+8FDDFD E8AAAF
+8FDDFE E8AAB3
+8FDEA1 E8AAB6
+8FDEA2 E8AAB7
+8FDEA3 E8AABB
+8FDEA4 E8AABE
+8FDEA5 E8AB83
+8FDEA6 E8AB86
+8FDEA7 E8AB88
+8FDEA8 E8AB89
+8FDEA9 E8AB8A
+8FDEAA E8AB91
+8FDEAB E8AB93
+8FDEAC E8AB94
+8FDEAD E8AB95
+8FDEAE E8AB97
+8FDEAF E8AB9D
+8FDEB0 E8AB9F
+8FDEB1 E8ABAC
+8FDEB2 E8ABB0
+8FDEB3 E8ABB4
+8FDEB4 E8ABB5
+8FDEB5 E8ABB6
+8FDEB6 E8ABBC
+8FDEB7 E8ABBF
+8FDEB8 E8AC85
+8FDEB9 E8AC86
+8FDEBA E8AC8B
+8FDEBB E8AC91
+8FDEBC E8AC9C
+8FDEBD E8AC9E
+8FDEBE E8AC9F
+8FDEBF E8AC8A
+8FDEC0 E8ACAD
+8FDEC1 E8ACB0
+8FDEC2 E8ACB7
+8FDEC3 E8ACBC
+8FDEC4 E8AD82
+8FDEC5 E8AD83
+8FDEC6 E8AD84
+8FDEC7 E8AD85
+8FDEC8 E8AD86
+8FDEC9 E8AD88
+8FDECA E8AD92
+8FDECB E8AD93
+8FDECC E8AD94
+8FDECD E8AD99
+8FDECE E8AD8D
+8FDECF E8AD9E
+8FDED0 E8ADA3
+8FDED1 E8ADAD
+8FDED2 E8ADB6
+8FDED3 E8ADB8
+8FDED4 E8ADB9
+8FDED5 E8ADBC
+8FDED6 E8ADBE
+8FDED7 E8AE81
+8FDED8 E8AE84
+8FDED9 E8AE85
+8FDEDA E8AE8B
+8FDEDB E8AE8D
+8FDEDC E8AE8F
+8FDEDD E8AE94
+8FDEDE E8AE95
+8FDEDF E8AE9C
+8FDEE0 E8AE9E
+8FDEE1 E8AE9F
+8FDEE2 E8B0B8
+8FDEE3 E8B0B9
+8FDEE4 E8B0BD
+8FDEE5 E8B0BE
+8FDEE6 E8B185
+8FDEE7 E8B187
+8FDEE8 E8B189
+8FDEE9 E8B18B
+8FDEEA E8B18F
+8FDEEB E8B191
+8FDEEC E8B193
+8FDEED E8B194
+8FDEEE E8B197
+8FDEEF E8B198
+8FDEF0 E8B19B
+8FDEF1 E8B19D
+8FDEF2 E8B199
+8FDEF3 E8B1A3
+8FDEF4 E8B1A4
+8FDEF5 E8B1A6
+8FDEF6 E8B1A8
+8FDEF7 E8B1A9
+8FDEF8 E8B1AD
+8FDEF9 E8B1B3
+8FDEFA E8B1B5
+8FDEFB E8B1B6
+8FDEFC E8B1BB
+8FDEFD E8B1BE
+8FDEFE E8B286
+8FDFA1 E8B287
+8FDFA2 E8B28B
+8FDFA3 E8B290
+8FDFA4 E8B292
+8FDFA5 E8B293
+8FDFA6 E8B299
+8FDFA7 E8B29B
+8FDFA8 E8B29C
+8FDFA9 E8B2A4
+8FDFAA E8B2B9
+8FDFAB E8B2BA
+8FDFAC E8B385
+8FDFAD E8B386
+8FDFAE E8B389
+8FDFAF E8B38B
+8FDFB0 E8B38F
+8FDFB1 E8B396
+8FDFB2 E8B395
+8FDFB3 E8B399
+8FDFB4 E8B39D
+8FDFB5 E8B3A1
+8FDFB6 E8B3A8
+8FDFB7 E8B3AC
+8FDFB8 E8B3AF
+8FDFB9 E8B3B0
+8FDFBA E8B3B2
+8FDFBB E8B3B5
+8FDFBC E8B3B7
+8FDFBD E8B3B8
+8FDFBE E8B3BE
+8FDFBF E8B3BF
+8FDFC0 E8B481
+8FDFC1 E8B483
+8FDFC2 E8B489
+8FDFC3 E8B492
+8FDFC4 E8B497
+8FDFC5 E8B49B
+8FDFC6 E8B5A5
+8FDFC7 E8B5A9
+8FDFC8 E8B5AC
+8FDFC9 E8B5AE
+8FDFCA E8B5BF
+8FDFCB E8B682
+8FDFCC E8B684
+8FDFCD E8B688
+8FDFCE E8B68D
+8FDFCF E8B690
+8FDFD0 E8B691
+8FDFD1 E8B695
+8FDFD2 E8B69E
+8FDFD3 E8B69F
+8FDFD4 E8B6A0
+8FDFD5 E8B6A6
+8FDFD6 E8B6AB
+8FDFD7 E8B6AC
+8FDFD8 E8B6AF
+8FDFD9 E8B6B2
+8FDFDA E8B6B5
+8FDFDB E8B6B7
+8FDFDC E8B6B9
+8FDFDD E8B6BB
+8FDFDE E8B780
+8FDFDF E8B785
+8FDFE0 E8B786
+8FDFE1 E8B787
+8FDFE2 E8B788
+8FDFE3 E8B78A
+8FDFE4 E8B78E
+8FDFE5 E8B791
+8FDFE6 E8B794
+8FDFE7 E8B795
+8FDFE8 E8B797
+8FDFE9 E8B799
+8FDFEA E8B7A4
+8FDFEB E8B7A5
+8FDFEC E8B7A7
+8FDFED E8B7AC
+8FDFEE E8B7B0
+8FDFEF E8B6BC
+8FDFF0 E8B7B1
+8FDFF1 E8B7B2
+8FDFF2 E8B7B4
+8FDFF3 E8B7BD
+8FDFF4 E8B881
+8FDFF5 E8B884
+8FDFF6 E8B885
+8FDFF7 E8B886
+8FDFF8 E8B88B
+8FDFF9 E8B891
+8FDFFA E8B894
+8FDFFB E8B896
+8FDFFC E8B8A0
+8FDFFD E8B8A1
+8FDFFE E8B8A2
+8FE0A1 E8B8A3
+8FE0A2 E8B8A6
+8FE0A3 E8B8A7
+8FE0A4 E8B8B1
+8FE0A5 E8B8B3
+8FE0A6 E8B8B6
+8FE0A7 E8B8B7
+8FE0A8 E8B8B8
+8FE0A9 E8B8B9
+8FE0AA E8B8BD
+8FE0AB E8B980
+8FE0AC E8B981
+8FE0AD E8B98B
+8FE0AE E8B98D
+8FE0AF E8B98E
+8FE0B0 E8B98F
+8FE0B1 E8B994
+8FE0B2 E8B99B
+8FE0B3 E8B99C
+8FE0B4 E8B99D
+8FE0B5 E8B99E
+8FE0B6 E8B9A1
+8FE0B7 E8B9A2
+8FE0B8 E8B9A9
+8FE0B9 E8B9AC
+8FE0BA E8B9AD
+8FE0BB E8B9AF
+8FE0BC E8B9B0
+8FE0BD E8B9B1
+8FE0BE E8B9B9
+8FE0BF E8B9BA
+8FE0C0 E8B9BB
+8FE0C1 E8BA82
+8FE0C2 E8BA83
+8FE0C3 E8BA89
+8FE0C4 E8BA90
+8FE0C5 E8BA92
+8FE0C6 E8BA95
+8FE0C7 E8BA9A
+8FE0C8 E8BA9B
+8FE0C9 E8BA9D
+8FE0CA E8BA9E
+8FE0CB E8BAA2
+8FE0CC E8BAA7
+8FE0CD E8BAA9
+8FE0CE E8BAAD
+8FE0CF E8BAAE
+8FE0D0 E8BAB3
+8FE0D1 E8BAB5
+8FE0D2 E8BABA
+8FE0D3 E8BABB
+8FE0D4 E8BB80
+8FE0D5 E8BB81
+8FE0D6 E8BB83
+8FE0D7 E8BB84
+8FE0D8 E8BB87
+8FE0D9 E8BB8F
+8FE0DA E8BB91
+8FE0DB E8BB94
+8FE0DC E8BB9C
+8FE0DD E8BBA8
+8FE0DE E8BBAE
+8FE0DF E8BBB0
+8FE0E0 E8BBB1
+8FE0E1 E8BBB7
+8FE0E2 E8BBB9
+8FE0E3 E8BBBA
+8FE0E4 E8BBAD
+8FE0E5 E8BC80
+8FE0E6 E8BC82
+8FE0E7 E8BC87
+8FE0E8 E8BC88
+8FE0E9 E8BC8F
+8FE0EA E8BC90
+8FE0EB E8BC96
+8FE0EC E8BC97
+8FE0ED E8BC98
+8FE0EE E8BC9E
+8FE0EF E8BCA0
+8FE0F0 E8BCA1
+8FE0F1 E8BCA3
+8FE0F2 E8BCA5
+8FE0F3 E8BCA7
+8FE0F4 E8BCA8
+8FE0F5 E8BCAC
+8FE0F6 E8BCAD
+8FE0F7 E8BCAE
+8FE0F8 E8BCB4
+8FE0F9 E8BCB5
+8FE0FA E8BCB6
+8FE0FB E8BCB7
+8FE0FC E8BCBA
+8FE0FD E8BD80
+8FE0FE E8BD81
+8FE1A1 E8BD83
+8FE1A2 E8BD87
+8FE1A3 E8BD8F
+8FE1A4 E8BD91
+8FE1A5 E8BD92
+8FE1A6 E8BD93
+8FE1A7 E8BD94
+8FE1A8 E8BD95
+8FE1A9 E8BD98
+8FE1AA E8BD9D
+8FE1AB E8BD9E
+8FE1AC E8BDA5
+8FE1AD E8BE9D
+8FE1AE E8BEA0
+8FE1AF E8BEA1
+8FE1B0 E8BEA4
+8FE1B1 E8BEA5
+8FE1B2 E8BEA6
+8FE1B3 E8BEB5
+8FE1B4 E8BEB6
+8FE1B5 E8BEB8
+8FE1B6 E8BEBE
+8FE1B7 E8BF80
+8FE1B8 E8BF81
+8FE1B9 E8BF86
+8FE1BA E8BF8A
+8FE1BB E8BF8B
+8FE1BC E8BF8D
+8FE1BD E8BF90
+8FE1BE E8BF92
+8FE1BF E8BF93
+8FE1C0 E8BF95
+8FE1C1 E8BFA0
+8FE1C2 E8BFA3
+8FE1C3 E8BFA4
+8FE1C4 E8BFA8
+8FE1C5 E8BFAE
+8FE1C6 E8BFB1
+8FE1C7 E8BFB5
+8FE1C8 E8BFB6
+8FE1C9 E8BFBB
+8FE1CA E8BFBE
+8FE1CB E98082
+8FE1CC E98084
+8FE1CD E98088
+8FE1CE E9808C
+8FE1CF E98098
+8FE1D0 E9809B
+8FE1D1 E980A8
+8FE1D2 E980A9
+8FE1D3 E980AF
+8FE1D4 E980AA
+8FE1D5 E980AC
+8FE1D6 E980AD
+8FE1D7 E980B3
+8FE1D8 E980B4
+8FE1D9 E980B7
+8FE1DA E980BF
+8FE1DB E98183
+8FE1DC E98184
+8FE1DD E9818C
+8FE1DE E9819B
+8FE1DF E9819D
+8FE1E0 E981A2
+8FE1E1 E981A6
+8FE1E2 E981A7
+8FE1E3 E981AC
+8FE1E4 E981B0
+8FE1E5 E981B4
+8FE1E6 E981B9
+8FE1E7 E98285
+8FE1E8 E98288
+8FE1E9 E9828B
+8FE1EA E9828C
+8FE1EB E9828E
+8FE1EC E98290
+8FE1ED E98295
+8FE1EE E98297
+8FE1EF E98298
+8FE1F0 E98299
+8FE1F1 E9829B
+8FE1F2 E982A0
+8FE1F3 E982A1
+8FE1F4 E982A2
+8FE1F5 E982A5
+8FE1F6 E982B0
+8FE1F7 E982B2
+8FE1F8 E982B3
+8FE1F9 E982B4
+8FE1FA E982B6
+8FE1FB E982BD
+8FE1FC E9838C
+8FE1FD E982BE
+8FE1FE E98383
+8FE2A1 E98384
+8FE2A2 E98385
+8FE2A3 E98387
+8FE2A4 E98388
+8FE2A5 E98395
+8FE2A6 E98397
+8FE2A7 E98398
+8FE2A8 E98399
+8FE2A9 E9839C
+8FE2AA E9839D
+8FE2AB E9839F
+8FE2AC E983A5
+8FE2AD E98392
+8FE2AE E983B6
+8FE2AF E983AB
+8FE2B0 E983AF
+8FE2B1 E983B0
+8FE2B2 E983B4
+8FE2B3 E983BE
+8FE2B4 E983BF
+8FE2B5 E98480
+8FE2B6 E98484
+8FE2B7 E98485
+8FE2B8 E98486
+8FE2B9 E98488
+8FE2BA E9848D
+8FE2BB E98490
+8FE2BC E98494
+8FE2BD E98496
+8FE2BE E98497
+8FE2BF E98498
+8FE2C0 E9849A
+8FE2C1 E9849C
+8FE2C2 E9849E
+8FE2C3 E984A0
+8FE2C4 E984A5
+8FE2C5 E984A2
+8FE2C6 E984A3
+8FE2C7 E984A7
+8FE2C8 E984A9
+8FE2C9 E984AE
+8FE2CA E984AF
+8FE2CB E984B1
+8FE2CC E984B4
+8FE2CD E984B6
+8FE2CE E984B7
+8FE2CF E984B9
+8FE2D0 E984BA
+8FE2D1 E984BC
+8FE2D2 E984BD
+8FE2D3 E98583
+8FE2D4 E98587
+8FE2D5 E98588
+8FE2D6 E9858F
+8FE2D7 E98593
+8FE2D8 E98597
+8FE2D9 E98599
+8FE2DA E9859A
+8FE2DB E9859B
+8FE2DC E985A1
+8FE2DD E985A4
+8FE2DE E985A7
+8FE2DF E985AD
+8FE2E0 E985B4
+8FE2E1 E985B9
+8FE2E2 E985BA
+8FE2E3 E985BB
+8FE2E4 E98681
+8FE2E5 E98683
+8FE2E6 E98685
+8FE2E7 E98686
+8FE2E8 E9868A
+8FE2E9 E9868E
+8FE2EA E98691
+8FE2EB E98693
+8FE2EC E98694
+8FE2ED E98695
+8FE2EE E98698
+8FE2EF E9869E
+8FE2F0 E986A1
+8FE2F1 E986A6
+8FE2F2 E986A8
+8FE2F3 E986AC
+8FE2F4 E986AD
+8FE2F5 E986AE
+8FE2F6 E986B0
+8FE2F7 E986B1
+8FE2F8 E986B2
+8FE2F9 E986B3
+8FE2FA E986B6
+8FE2FB E986BB
+8FE2FC E986BC
+8FE2FD E986BD
+8FE2FE E986BF
+8FE3A1 E98782
+8FE3A2 E98783
+8FE3A3 E98785
+8FE3A4 E98793
+8FE3A5 E98794
+8FE3A6 E98797
+8FE3A7 E98799
+8FE3A8 E9879A
+8FE3A9 E9879E
+8FE3AA E987A4
+8FE3AB E987A5
+8FE3AC E987A9
+8FE3AD E987AA
+8FE3AE E987AC
+8FE3AF E987AD
+8FE3B0 E987AE
+8FE3B1 E987AF
+8FE3B2 E987B0
+8FE3B3 E987B1
+8FE3B4 E987B7
+8FE3B5 E987B9
+8FE3B6 E987BB
+8FE3B7 E987BD
+8FE3B8 E98880
+8FE3B9 E98881
+8FE3BA E98884
+8FE3BB E98885
+8FE3BC E98886
+8FE3BD E98887
+8FE3BE E98889
+8FE3BF E9888A
+8FE3C0 E9888C
+8FE3C1 E98890
+8FE3C2 E98892
+8FE3C3 E98893
+8FE3C4 E98896
+8FE3C5 E98898
+8FE3C6 E9889C
+8FE3C7 E9889D
+8FE3C8 E988A3
+8FE3C9 E988A4
+8FE3CA E988A5
+8FE3CB E988A6
+8FE3CC E988A8
+8FE3CD E988AE
+8FE3CE E988AF
+8FE3CF E988B0
+8FE3D0 E988B3
+8FE3D1 E988B5
+8FE3D2 E988B6
+8FE3D3 E988B8
+8FE3D4 E988B9
+8FE3D5 E988BA
+8FE3D6 E988BC
+8FE3D7 E988BE
+8FE3D8 E98980
+8FE3D9 E98982
+8FE3DA E98983
+8FE3DB E98986
+8FE3DC E98987
+8FE3DD E9898A
+8FE3DE E9898D
+8FE3DF E9898E
+8FE3E0 E9898F
+8FE3E1 E98991
+8FE3E2 E98998
+8FE3E3 E98999
+8FE3E4 E9899C
+8FE3E5 E9899D
+8FE3E6 E989A0
+8FE3E7 E989A1
+8FE3E8 E989A5
+8FE3E9 E989A7
+8FE3EA E989A8
+8FE3EB E989A9
+8FE3EC E989AE
+8FE3ED E989AF
+8FE3EE E989B0
+8FE3EF E989B5
+8FE3F0 E989B6
+8FE3F1 E989B7
+8FE3F2 E989B8
+8FE3F3 E989B9
+8FE3F4 E989BB
+8FE3F5 E989BC
+8FE3F6 E989BD
+8FE3F7 E989BF
+8FE3F8 E98A88
+8FE3F9 E98A89
+8FE3FA E98A8A
+8FE3FB E98A8D
+8FE3FC E98A8E
+8FE3FD E98A92
+8FE3FE E98A97
+8FE4A1 E98A99
+8FE4A2 E98A9F
+8FE4A3 E98AA0
+8FE4A4 E98AA4
+8FE4A5 E98AA5
+8FE4A6 E98AA7
+8FE4A7 E98AA8
+8FE4A8 E98AAB
+8FE4A9 E98AAF
+8FE4AA E98AB2
+8FE4AB E98AB6
+8FE4AC E98AB8
+8FE4AD E98ABA
+8FE4AE E98ABB
+8FE4AF E98ABC
+8FE4B0 E98ABD
+8FE4B1 E98ABF
+8FE4B2 E98B80
+8FE4B3 E98B81
+8FE4B4 E98B82
+8FE4B5 E98B83
+8FE4B6 E98B85
+8FE4B7 E98B86
+8FE4B8 E98B87
+8FE4B9 E98B88
+8FE4BA E98B8B
+8FE4BB E98B8C
+8FE4BC E98B8D
+8FE4BD E98B8E
+8FE4BE E98B90
+8FE4BF E98B93
+8FE4C0 E98B95
+8FE4C1 E98B97
+8FE4C2 E98B98
+8FE4C3 E98B99
+8FE4C4 E98B9C
+8FE4C5 E98B9D
+8FE4C6 E98B9F
+8FE4C7 E98BA0
+8FE4C8 E98BA1
+8FE4C9 E98BA3
+8FE4CA E98BA5
+8FE4CB E98BA7
+8FE4CC E98BA8
+8FE4CD E98BAC
+8FE4CE E98BAE
+8FE4CF E98BB0
+8FE4D0 E98BB9
+8FE4D1 E98BBB
+8FE4D2 E98BBF
+8FE4D3 E98C80
+8FE4D4 E98C82
+8FE4D5 E98C88
+8FE4D6 E98C8D
+8FE4D7 E98C91
+8FE4D8 E98C94
+8FE4D9 E98C95
+8FE4DA E98C9C
+8FE4DB E98C9D
+8FE4DC E98C9E
+8FE4DD E98C9F
+8FE4DE E98CA1
+8FE4DF E98CA4
+8FE4E0 E98CA5
+8FE4E1 E98CA7
+8FE4E2 E98CA9
+8FE4E3 E98CAA
+8FE4E4 E98CB3
+8FE4E5 E98CB4
+8FE4E6 E98CB6
+8FE4E7 E98CB7
+8FE4E8 E98D87
+8FE4E9 E98D88
+8FE4EA E98D89
+8FE4EB E98D90
+8FE4EC E98D91
+8FE4ED E98D92
+8FE4EE E98D95
+8FE4EF E98D97
+8FE4F0 E98D98
+8FE4F1 E98D9A
+8FE4F2 E98D9E
+8FE4F3 E98DA4
+8FE4F4 E98DA5
+8FE4F5 E98DA7
+8FE4F6 E98DA9
+8FE4F7 E98DAA
+8FE4F8 E98DAD
+8FE4F9 E98DAF
+8FE4FA E98DB0
+8FE4FB E98DB1
+8FE4FC E98DB3
+8FE4FD E98DB4
+8FE4FE E98DB6
+8FE5A1 E98DBA
+8FE5A2 E98DBD
+8FE5A3 E98DBF
+8FE5A4 E98E80
+8FE5A5 E98E81
+8FE5A6 E98E82
+8FE5A7 E98E88
+8FE5A8 E98E8A
+8FE5A9 E98E8B
+8FE5AA E98E8D
+8FE5AB E98E8F
+8FE5AC E98E92
+8FE5AD E98E95
+8FE5AE E98E98
+8FE5AF E98E9B
+8FE5B0 E98E9E
+8FE5B1 E98EA1
+8FE5B2 E98EA3
+8FE5B3 E98EA4
+8FE5B4 E98EA6
+8FE5B5 E98EA8
+8FE5B6 E98EAB
+8FE5B7 E98EB4
+8FE5B8 E98EB5
+8FE5B9 E98EB6
+8FE5BA E98EBA
+8FE5BB E98EA9
+8FE5BC E98F81
+8FE5BD E98F84
+8FE5BE E98F85
+8FE5BF E98F86
+8FE5C0 E98F87
+8FE5C1 E98F89
+8FE5C2 E98F8A
+8FE5C3 E98F8B
+8FE5C4 E98F8C
+8FE5C5 E98F8D
+8FE5C6 E98F93
+8FE5C7 E98F99
+8FE5C8 E98F9C
+8FE5C9 E98F9E
+8FE5CA E98F9F
+8FE5CB E98FA2
+8FE5CC E98FA6
+8FE5CD E98FA7
+8FE5CE E98FB9
+8FE5CF E98FB7
+8FE5D0 E98FB8
+8FE5D1 E98FBA
+8FE5D2 E98FBB
+8FE5D3 E98FBD
+8FE5D4 E99081
+8FE5D5 E99082
+8FE5D6 E99084
+8FE5D7 E99088
+8FE5D8 E99089
+8FE5D9 E9908D
+8FE5DA E9908E
+8FE5DB E9908F
+8FE5DC E99095
+8FE5DD E99096
+8FE5DE E99097
+8FE5DF E9909F
+8FE5E0 E990AE
+8FE5E1 E990AF
+8FE5E2 E990B1
+8FE5E3 E990B2
+8FE5E4 E990B3
+8FE5E5 E990B4
+8FE5E6 E990BB
+8FE5E7 E990BF
+8FE5E8 E990BD
+8FE5E9 E99183
+8FE5EA E99185
+8FE5EB E99188
+8FE5EC E9918A
+8FE5ED E9918C
+8FE5EE E99195
+8FE5EF E99199
+8FE5F0 E9919C
+8FE5F1 E9919F
+8FE5F2 E991A1
+8FE5F3 E991A3
+8FE5F4 E991A8
+8FE5F5 E991AB
+8FE5F6 E991AD
+8FE5F7 E991AE
+8FE5F8 E991AF
+8FE5F9 E991B1
+8FE5FA E991B2
+8FE5FB E99284
+8FE5FC E99283
+8FE5FD E995B8
+8FE5FE E995B9
+8FE6A1 E995BE
+8FE6A2 E99684
+8FE6A3 E99688
+8FE6A4 E9968C
+8FE6A5 E9968D
+8FE6A6 E9968E
+8FE6A7 E9969D
+8FE6A8 E9969E
+8FE6A9 E9969F
+8FE6AA E996A1
+8FE6AB E996A6
+8FE6AC E996A9
+8FE6AD E996AB
+8FE6AE E996AC
+8FE6AF E996B4
+8FE6B0 E996B6
+8FE6B1 E996BA
+8FE6B2 E996BD
+8FE6B3 E996BF
+8FE6B4 E99786
+8FE6B5 E99788
+8FE6B6 E99789
+8FE6B7 E9978B
+8FE6B8 E99790
+8FE6B9 E99791
+8FE6BA E99792
+8FE6BB E99793
+8FE6BC E99799
+8FE6BD E9979A
+8FE6BE E9979D
+8FE6BF E9979E
+8FE6C0 E9979F
+8FE6C1 E997A0
+8FE6C2 E997A4
+8FE6C3 E997A6
+8FE6C4 E9989D
+8FE6C5 E9989E
+8FE6C6 E998A2
+8FE6C7 E998A4
+8FE6C8 E998A5
+8FE6C9 E998A6
+8FE6CA E998AC
+8FE6CB E998B1
+8FE6CC E998B3
+8FE6CD E998B7
+8FE6CE E998B8
+8FE6CF E998B9
+8FE6D0 E998BA
+8FE6D1 E998BC
+8FE6D2 E998BD
+8FE6D3 E99981
+8FE6D4 E99992
+8FE6D5 E99994
+8FE6D6 E99996
+8FE6D7 E99997
+8FE6D8 E99998
+8FE6D9 E999A1
+8FE6DA E999AE
+8FE6DB E999B4
+8FE6DC E999BB
+8FE6DD E999BC
+8FE6DE E999BE
+8FE6DF E999BF
+8FE6E0 E99A81
+8FE6E1 E99A82
+8FE6E2 E99A83
+8FE6E3 E99A84
+8FE6E4 E99A89
+8FE6E5 E99A91
+8FE6E6 E99A96
+8FE6E7 E99A9A
+8FE6E8 E99A9D
+8FE6E9 E99A9F
+8FE6EA E99AA4
+8FE6EB E99AA5
+8FE6EC E99AA6
+8FE6ED E99AA9
+8FE6EE E99AAE
+8FE6EF E99AAF
+8FE6F0 E99AB3
+8FE6F1 E99ABA
+8FE6F2 E99B8A
+8FE6F3 E99B92
+8FE6F4 E5B6B2
+8FE6F5 E99B98
+8FE6F6 E99B9A
+8FE6F7 E99B9D
+8FE6F8 E99B9E
+8FE6F9 E99B9F
+8FE6FA E99BA9
+8FE6FB E99BAF
+8FE6FC E99BB1
+8FE6FD E99BBA
+8FE6FE E99C82
+8FE7A1 E99C83
+8FE7A2 E99C85
+8FE7A3 E99C89
+8FE7A4 E99C9A
+8FE7A5 E99C9B
+8FE7A6 E99C9D
+8FE7A7 E99CA1
+8FE7A8 E99CA2
+8FE7A9 E99CA3
+8FE7AA E99CA8
+8FE7AB E99CB1
+8FE7AC E99CB3
+8FE7AD E99D81
+8FE7AE E99D83
+8FE7AF E99D8A
+8FE7B0 E99D8E
+8FE7B1 E99D8F
+8FE7B2 E99D95
+8FE7B3 E99D97
+8FE7B4 E99D98
+8FE7B5 E99D9A
+8FE7B6 E99D9B
+8FE7B7 E99DA3
+8FE7B8 E99DA7
+8FE7B9 E99DAA
+8FE7BA E99DAE
+8FE7BB E99DB3
+8FE7BC E99DB6
+8FE7BD E99DB7
+8FE7BE E99DB8
+8FE7BF E99DBB
+8FE7C0 E99DBD
+8FE7C1 E99DBF
+8FE7C2 E99E80
+8FE7C3 E99E89
+8FE7C4 E99E95
+8FE7C5 E99E96
+8FE7C6 E99E97
+8FE7C7 E99E99
+8FE7C8 E99E9A
+8FE7C9 E99E9E
+8FE7CA E99E9F
+8FE7CB E99EA2
+8FE7CC E99EAC
+8FE7CD E99EAE
+8FE7CE E99EB1
+8FE7CF E99EB2
+8FE7D0 E99EB5
+8FE7D1 E99EB6
+8FE7D2 E99EB8
+8FE7D3 E99EB9
+8FE7D4 E99EBA
+8FE7D5 E99EBC
+8FE7D6 E99EBE
+8FE7D7 E99EBF
+8FE7D8 E99F81
+8FE7D9 E99F84
+8FE7DA E99F85
+8FE7DB E99F87
+8FE7DC E99F89
+8FE7DD E99F8A
+8FE7DE E99F8C
+8FE7DF E99F8D
+8FE7E0 E99F8E
+8FE7E1 E99F90
+8FE7E2 E99F91
+8FE7E3 E99F94
+8FE7E4 E99F97
+8FE7E5 E99F98
+8FE7E6 E99F99
+8FE7E7 E99F9D
+8FE7E8 E99F9E
+8FE7E9 E99FA0
+8FE7EA E99F9B
+8FE7EB E99FA1
+8FE7EC E99FA4
+8FE7ED E99FAF
+8FE7EE E99FB1
+8FE7EF E99FB4
+8FE7F0 E99FB7
+8FE7F1 E99FB8
+8FE7F2 E99FBA
+8FE7F3 E9A087
+8FE7F4 E9A08A
+8FE7F5 E9A099
+8FE7F6 E9A08D
+8FE7F7 E9A08E
+8FE7F8 E9A094
+8FE7F9 E9A096
+8FE7FA E9A09C
+8FE7FB E9A09E
+8FE7FC E9A0A0
+8FE7FD E9A0A3
+8FE7FE E9A0A6
+8FE8A1 E9A0AB
+8FE8A2 E9A0AE
+8FE8A3 E9A0AF
+8FE8A4 E9A0B0
+8FE8A5 E9A0B2
+8FE8A6 E9A0B3
+8FE8A7 E9A0B5
+8FE8A8 E9A0A5
+8FE8A9 E9A0BE
+8FE8AA E9A184
+8FE8AB E9A187
+8FE8AC E9A18A
+8FE8AD E9A191
+8FE8AE E9A192
+8FE8AF E9A193
+8FE8B0 E9A196
+8FE8B1 E9A197
+8FE8B2 E9A199
+8FE8B3 E9A19A
+8FE8B4 E9A1A2
+8FE8B5 E9A1A3
+8FE8B6 E9A1A5
+8FE8B7 E9A1A6
+8FE8B8 E9A1AA
+8FE8B9 E9A1AC
+8FE8BA E9A2AB
+8FE8BB E9A2AD
+8FE8BC E9A2AE
+8FE8BD E9A2B0
+8FE8BE E9A2B4
+8FE8BF E9A2B7
+8FE8C0 E9A2B8
+8FE8C1 E9A2BA
+8FE8C2 E9A2BB
+8FE8C3 E9A2BF
+8FE8C4 E9A382
+8FE8C5 E9A385
+8FE8C6 E9A388
+8FE8C7 E9A38C
+8FE8C8 E9A3A1
+8FE8C9 E9A3A3
+8FE8CA E9A3A5
+8FE8CB E9A3A6
+8FE8CC E9A3A7
+8FE8CD E9A3AA
+8FE8CE E9A3B3
+8FE8CF E9A3B6
+8FE8D0 E9A482
+8FE8D1 E9A487
+8FE8D2 E9A488
+8FE8D3 E9A491
+8FE8D4 E9A495
+8FE8D5 E9A496
+8FE8D6 E9A497
+8FE8D7 E9A49A
+8FE8D8 E9A49B
+8FE8D9 E9A49C
+8FE8DA E9A49F
+8FE8DB E9A4A2
+8FE8DC E9A4A6
+8FE8DD E9A4A7
+8FE8DE E9A4AB
+8FE8DF E9A4B1
+8FE8E0 E9A4B2
+8FE8E1 E9A4B3
+8FE8E2 E9A4B4
+8FE8E3 E9A4B5
+8FE8E4 E9A4B9
+8FE8E5 E9A4BA
+8FE8E6 E9A4BB
+8FE8E7 E9A4BC
+8FE8E8 E9A580
+8FE8E9 E9A581
+8FE8EA E9A586
+8FE8EB E9A587
+8FE8EC E9A588
+8FE8ED E9A58D
+8FE8EE E9A58E
+8FE8EF E9A594
+8FE8F0 E9A598
+8FE8F1 E9A599
+8FE8F2 E9A59B
+8FE8F3 E9A59C
+8FE8F4 E9A59E
+8FE8F5 E9A59F
+8FE8F6 E9A5A0
+8FE8F7 E9A69B
+8FE8F8 E9A69D
+8FE8F9 E9A69F
+8FE8FA E9A6A6
+8FE8FB E9A6B0
+8FE8FC E9A6B1
+8FE8FD E9A6B2
+8FE8FE E9A6B5
+8FE9A1 E9A6B9
+8FE9A2 E9A6BA
+8FE9A3 E9A6BD
+8FE9A4 E9A6BF
+8FE9A5 E9A783
+8FE9A6 E9A789
+8FE9A7 E9A793
+8FE9A8 E9A794
+8FE9A9 E9A799
+8FE9AA E9A79A
+8FE9AB E9A79C
+8FE9AC E9A79E
+8FE9AD E9A7A7
+8FE9AE E9A7AA
+8FE9AF E9A7AB
+8FE9B0 E9A7AC
+8FE9B1 E9A7B0
+8FE9B2 E9A7B4
+8FE9B3 E9A7B5
+8FE9B4 E9A7B9
+8FE9B5 E9A7BD
+8FE9B6 E9A7BE
+8FE9B7 E9A882
+8FE9B8 E9A883
+8FE9B9 E9A884
+8FE9BA E9A88B
+8FE9BB E9A88C
+8FE9BC E9A890
+8FE9BD E9A891
+8FE9BE E9A896
+8FE9BF E9A89E
+8FE9C0 E9A8A0
+8FE9C1 E9A8A2
+8FE9C2 E9A8A3
+8FE9C3 E9A8A4
+8FE9C4 E9A8A7
+8FE9C5 E9A8AD
+8FE9C6 E9A8AE
+8FE9C7 E9A8B3
+8FE9C8 E9A8B5
+8FE9C9 E9A8B6
+8FE9CA E9A8B8
+8FE9CB E9A987
+8FE9CC E9A981
+8FE9CD E9A984
+8FE9CE E9A98A
+8FE9CF E9A98B
+8FE9D0 E9A98C
+8FE9D1 E9A98E
+8FE9D2 E9A991
+8FE9D3 E9A994
+8FE9D4 E9A996
+8FE9D5 E9A99D
+8FE9D6 E9AAAA
+8FE9D7 E9AAAC
+8FE9D8 E9AAAE
+8FE9D9 E9AAAF
+8FE9DA E9AAB2
+8FE9DB E9AAB4
+8FE9DC E9AAB5
+8FE9DD E9AAB6
+8FE9DE E9AAB9
+8FE9DF E9AABB
+8FE9E0 E9AABE
+8FE9E1 E9AABF
+8FE9E2 E9AB81
+8FE9E3 E9AB83
+8FE9E4 E9AB86
+8FE9E5 E9AB88
+8FE9E6 E9AB8E
+8FE9E7 E9AB90
+8FE9E8 E9AB92
+8FE9E9 E9AB95
+8FE9EA E9AB96
+8FE9EB E9AB97
+8FE9EC E9AB9B
+8FE9ED E9AB9C
+8FE9EE E9ABA0
+8FE9EF E9ABA4
+8FE9F0 E9ABA5
+8FE9F1 E9ABA7
+8FE9F2 E9ABA9
+8FE9F3 E9ABAC
+8FE9F4 E9ABB2
+8FE9F5 E9ABB3
+8FE9F6 E9ABB5
+8FE9F7 E9ABB9
+8FE9F8 E9ABBA
+8FE9F9 E9ABBD
+8FE9FA E9ABBF
+8FE9FB E9AC80
+8FE9FC E9AC81
+8FE9FD E9AC82
+8FE9FE E9AC83
+8FEAA1 E9AC84
+8FEAA2 E9AC85
+8FEAA3 E9AC88
+8FEAA4 E9AC89
+8FEAA5 E9AC8B
+8FEAA6 E9AC8C
+8FEAA7 E9AC8D
+8FEAA8 E9AC8E
+8FEAA9 E9AC90
+8FEAAA E9AC92
+8FEAAB E9AC96
+8FEAAC E9AC99
+8FEAAD E9AC9B
+8FEAAE E9AC9C
+8FEAAF E9ACA0
+8FEAB0 E9ACA6
+8FEAB1 E9ACAB
+8FEAB2 E9ACAD
+8FEAB3 E9ACB3
+8FEAB4 E9ACB4
+8FEAB5 E9ACB5
+8FEAB6 E9ACB7
+8FEAB7 E9ACB9
+8FEAB8 E9ACBA
+8FEAB9 E9ACBD
+8FEABA E9AD88
+8FEABB E9AD8B
+8FEABC E9AD8C
+8FEABD E9AD95
+8FEABE E9AD96
+8FEABF E9AD97
+8FEAC0 E9AD9B
+8FEAC1 E9AD9E
+8FEAC2 E9ADA1
+8FEAC3 E9ADA3
+8FEAC4 E9ADA5
+8FEAC5 E9ADA6
+8FEAC6 E9ADA8
+8FEAC7 E9ADAA
+8FEAC8 E9ADAB
+8FEAC9 E9ADAC
+8FEACA E9ADAD
+8FEACB E9ADAE
+8FEACC E9ADB3
+8FEACD E9ADB5
+8FEACE E9ADB7
+8FEACF E9ADB8
+8FEAD0 E9ADB9
+8FEAD1 E9ADBF
+8FEAD2 E9AE80
+8FEAD3 E9AE84
+8FEAD4 E9AE85
+8FEAD5 E9AE86
+8FEAD6 E9AE87
+8FEAD7 E9AE89
+8FEAD8 E9AE8A
+8FEAD9 E9AE8B
+8FEADA E9AE8D
+8FEADB E9AE8F
+8FEADC E9AE90
+8FEADD E9AE94
+8FEADE E9AE9A
+8FEADF E9AE9D
+8FEAE0 E9AE9E
+8FEAE1 E9AEA6
+8FEAE2 E9AEA7
+8FEAE3 E9AEA9
+8FEAE4 E9AEAC
+8FEAE5 E9AEB0
+8FEAE6 E9AEB1
+8FEAE7 E9AEB2
+8FEAE8 E9AEB7
+8FEAE9 E9AEB8
+8FEAEA E9AEBB
+8FEAEB E9AEBC
+8FEAEC E9AEBE
+8FEAED E9AEBF
+8FEAEE E9AF81
+8FEAEF E9AF87
+8FEAF0 E9AF88
+8FEAF1 E9AF8E
+8FEAF2 E9AF90
+8FEAF3 E9AF97
+8FEAF4 E9AF98
+8FEAF5 E9AF9D
+8FEAF6 E9AF9F
+8FEAF7 E9AFA5
+8FEAF8 E9AFA7
+8FEAF9 E9AFAA
+8FEAFA E9AFAB
+8FEAFB E9AFAF
+8FEAFC E9AFB3
+8FEAFD E9AFB7
+8FEAFE E9AFB8
+8FEBA1 E9AFB9
+8FEBA2 E9AFBA
+8FEBA3 E9AFBD
+8FEBA4 E9AFBF
+8FEBA5 E9B080
+8FEBA6 E9B082
+8FEBA7 E9B08B
+8FEBA8 E9B08F
+8FEBA9 E9B091
+8FEBAA E9B096
+8FEBAB E9B098
+8FEBAC E9B099
+8FEBAD E9B09A
+8FEBAE E9B09C
+8FEBAF E9B09E
+8FEBB0 E9B0A2
+8FEBB1 E9B0A3
+8FEBB2 E9B0A6
+8FEBB3 E9B0A7
+8FEBB4 E9B0A8
+8FEBB5 E9B0A9
+8FEBB6 E9B0AA
+8FEBB7 E9B0B1
+8FEBB8 E9B0B5
+8FEBB9 E9B0B6
+8FEBBA E9B0B7
+8FEBBB E9B0BD
+8FEBBC E9B181
+8FEBBD E9B183
+8FEBBE E9B184
+8FEBBF E9B185
+8FEBC0 E9B189
+8FEBC1 E9B18A
+8FEBC2 E9B18E
+8FEBC3 E9B18F
+8FEBC4 E9B190
+8FEBC5 E9B193
+8FEBC6 E9B194
+8FEBC7 E9B196
+8FEBC8 E9B198
+8FEBC9 E9B19B
+8FEBCA E9B19D
+8FEBCB E9B19E
+8FEBCC E9B19F
+8FEBCD E9B1A3
+8FEBCE E9B1A9
+8FEBCF E9B1AA
+8FEBD0 E9B19C
+8FEBD1 E9B1AB
+8FEBD2 E9B1A8
+8FEBD3 E9B1AE
+8FEBD4 E9B1B0
+8FEBD5 E9B1B2
+8FEBD6 E9B1B5
+8FEBD7 E9B1B7
+8FEBD8 E9B1BB
+8FEBD9 E9B3A6
+8FEBDA E9B3B2
+8FEBDB E9B3B7
+8FEBDC E9B3B9
+8FEBDD E9B48B
+8FEBDE E9B482
+8FEBDF E9B491
+8FEBE0 E9B497
+8FEBE1 E9B498
+8FEBE2 E9B49C
+8FEBE3 E9B49D
+8FEBE4 E9B49E
+8FEBE5 E9B4AF
+8FEBE6 E9B4B0
+8FEBE7 E9B4B2
+8FEBE8 E9B4B3
+8FEBE9 E9B4B4
+8FEBEA E9B4BA
+8FEBEB E9B4BC
+8FEBEC E9B585
+8FEBED E9B4BD
+8FEBEE E9B582
+8FEBEF E9B583
+8FEBF0 E9B587
+8FEBF1 E9B58A
+8FEBF2 E9B593
+8FEBF3 E9B594
+8FEBF4 E9B59F
+8FEBF5 E9B5A3
+8FEBF6 E9B5A2
+8FEBF7 E9B5A5
+8FEBF8 E9B5A9
+8FEBF9 E9B5AA
+8FEBFA E9B5AB
+8FEBFB E9B5B0
+8FEBFC E9B5B6
+8FEBFD E9B5B7
+8FEBFE E9B5BB
+8FECA1 E9B5BC
+8FECA2 E9B5BE
+8FECA3 E9B683
+8FECA4 E9B684
+8FECA5 E9B686
+8FECA6 E9B68A
+8FECA7 E9B68D
+8FECA8 E9B68E
+8FECA9 E9B692
+8FECAA E9B693
+8FECAB E9B695
+8FECAC E9B696
+8FECAD E9B697
+8FECAE E9B698
+8FECAF E9B6A1
+8FECB0 E9B6AA
+8FECB1 E9B6AC
+8FECB2 E9B6AE
+8FECB3 E9B6B1
+8FECB4 E9B6B5
+8FECB5 E9B6B9
+8FECB6 E9B6BC
+8FECB7 E9B6BF
+8FECB8 E9B783
+8FECB9 E9B787
+8FECBA E9B789
+8FECBB E9B78A
+8FECBC E9B794
+8FECBD E9B795
+8FECBE E9B796
+8FECBF E9B797
+8FECC0 E9B79A
+8FECC1 E9B79E
+8FECC2 E9B79F
+8FECC3 E9B7A0
+8FECC4 E9B7A5
+8FECC5 E9B7A7
+8FECC6 E9B7A9
+8FECC7 E9B7AB
+8FECC8 E9B7AE
+8FECC9 E9B7B0
+8FECCA E9B7B3
+8FECCB E9B7B4
+8FECCC E9B7BE
+8FECCD E9B88A
+8FECCE E9B882
+8FECCF E9B887
+8FECD0 E9B88E
+8FECD1 E9B890
+8FECD2 E9B891
+8FECD3 E9B892
+8FECD4 E9B895
+8FECD5 E9B896
+8FECD6 E9B899
+8FECD7 E9B89C
+8FECD8 E9B89D
+8FECD9 E9B9BA
+8FECDA E9B9BB
+8FECDB E9B9BC
+8FECDC E9BA80
+8FECDD E9BA82
+8FECDE E9BA83
+8FECDF E9BA84
+8FECE0 E9BA85
+8FECE1 E9BA87
+8FECE2 E9BA8E
+8FECE3 E9BA8F
+8FECE4 E9BA96
+8FECE5 E9BA98
+8FECE6 E9BA9B
+8FECE7 E9BA9E
+8FECE8 E9BAA4
+8FECE9 E9BAA8
+8FECEA E9BAAC
+8FECEB E9BAAE
+8FECEC E9BAAF
+8FECED E9BAB0
+8FECEE E9BAB3
+8FECEF E9BAB4
+8FECF0 E9BAB5
+8FECF1 E9BB86
+8FECF2 E9BB88
+8FECF3 E9BB8B
+8FECF4 E9BB95
+8FECF5 E9BB9F
+8FECF6 E9BBA4
+8FECF7 E9BBA7
+8FECF8 E9BBAC
+8FECF9 E9BBAD
+8FECFA E9BBAE
+8FECFB E9BBB0
+8FECFC E9BBB1
+8FECFD E9BBB2
+8FECFE E9BBB5
+8FEDA1 E9BBB8
+8FEDA2 E9BBBF
+8FEDA3 E9BC82
+8FEDA4 E9BC83
+8FEDA5 E9BC89
+8FEDA6 E9BC8F
+8FEDA7 E9BC90
+8FEDA8 E9BC91
+8FEDA9 E9BC92
+8FEDAA E9BC94
+8FEDAB E9BC96
+8FEDAC E9BC97
+8FEDAD E9BC99
+8FEDAE E9BC9A
+8FEDAF E9BC9B
+8FEDB0 E9BC9F
+8FEDB1 E9BCA2
+8FEDB2 E9BCA6
+8FEDB3 E9BCAA
+8FEDB4 E9BCAB
+8FEDB5 E9BCAF
+8FEDB6 E9BCB1
+8FEDB7 E9BCB2
+8FEDB8 E9BCB4
+8FEDB9 E9BCB7
+8FEDBA E9BCB9
+8FEDBB E9BCBA
+8FEDBC E9BCBC
+8FEDBD E9BCBD
+8FEDBE E9BCBF
+8FEDBF E9BD81
+8FEDC0 E9BD83
+8FEDC1 E9BD84
+8FEDC2 E9BD85
+8FEDC3 E9BD86
+8FEDC4 E9BD87
+8FEDC5 E9BD93
+8FEDC6 E9BD95
+8FEDC7 E9BD96
+8FEDC8 E9BD97
+8FEDC9 E9BD98
+8FEDCA E9BD9A
+8FEDCB E9BD9D
+8FEDCC E9BD9E
+8FEDCD E9BDA8
+8FEDCE E9BDA9
+8FEDCF E9BDAD
+8FEDD0 E9BDAE
+8FEDD1 E9BDAF
+8FEDD2 E9BDB0
+8FEDD3 E9BDB1
+8FEDD4 E9BDB3
+8FEDD5 E9BDB5
+8FEDD6 E9BDBA
+8FEDD7 E9BDBD
+8FEDD8 E9BE8F
+8FEDD9 E9BE90
+8FEDDA E9BE91
+8FEDDB E9BE92
+8FEDDC E9BE94
+8FEDDD E9BE96
+8FEDDE E9BE97
+8FEDDF E9BE9E
+8FEDE0 E9BEA1
+8FEDE1 E9BEA2
+8FEDE2 E9BEA3
+8FEDE3 E9BEA5
+8FF3F3 E285B0
+8FF3F4 E285B1
+8FF3F5 E285B2
+8FF3F6 E285B3
+8FF3F7 E285B4
+8FF3F8 E285B5
+8FF3F9 E285B6
+8FF3FA E285B7
+8FF3FB E285B8
+8FF3FC E285B9
+8FF3FD E285A0
+8FF3FE E285A1
+8FF4A1 E285A2
+8FF4A2 E285A3
+8FF4A3 E285A4
+8FF4A4 E285A5
+8FF4A5 E285A6
+8FF4A6 E285A7
+8FF4A7 E285A8
+8FF4A8 E285A9
+8FF4A9 EFBC87
+8FF4AA EFBC82
+8FF4AB E388B1
+8FF4AC E28496
+8FF4AD E284A1
+8FF4AE E782BB
+8FF4AF E4BBBC
+8FF4B0 E583B4
+8FF4B1 E587AC
+8FF4B2 E58C87
+8FF4B3 E58CA4
+8FF4B4 EFA88E
+8FF4B5 E5928A
+8FF4B6 E59D99
+8FF4B7 EFA88F
+8FF4B8 EFA890
+8FF4B9 E5A29E
+8FF4BA E5AFAC
+8FF4BB E5B3B5
+8FF4BC E5B593
+8FF4BD EFA891
+8FF4BE E5BEB7
+8FF4BF E68285
+8FF4C0 E684A0
+8FF4C1 E6958E
+8FF4C2 E698BB
+8FF4C3 E699A5
+8FF4C4 EFA892
+8FF4C5 EFA4A9
+8FF4C6 E6A081
+8FF4C7 EFA893
+8FF4C8 EFA894
+8FF4C9 E6A9AB
+8FF4CA E6ABA2
+8FF4CB E6B7B8
+8FF4CC E6B7B2
+8FF4CD E780A8
+8FF4CE EFA895
+8FF4CF EFA896
+8FF4D0 E79481
+8FF4D1 E79A82
+8FF4D2 E79A9E
+8FF4D3 EFA897
+8FF4D4 E7A4B0
+8FF4D5 EFA898
+8FF4D6 EFA899
+8FF4D7 EFA89A
+8FF4D8 EFA89B
+8FF4D9 E7ABA7
+8FF4DA EFA89C
+8FF4DB EFA89D
+8FF4DC E7B6A0
+8FF4DD E7B796
+8FF4DE EFA89E
+8FF4DF E88DA2
+8FF4E0 EFA89F
+8FF4E1 E896B0
+8FF4E2 EFA8A0
+8FF4E3 EFA8A1
+8FF4E4 E8A087
+8FF4E5 EFA8A2
+8FF4E6 E8ADBF
+8FF4E7 E8B3B4
+8FF4E8 E8B5B6
+8FF4E9 EFA8A3
+8FF4EA EFA8A4
+8FF4EB EFA8A5
+8FF4EC E9839E
+8FF4ED EFA8A6
+8FF4EE E98495
+8FF4EF EFA8A7
+8FF4F0 EFA8A8
+8FF4F1 E99692
+8FF4F2 EFA79C
+8FF4F3 EFA8A9
+8FF4F4 E99CBB
+8FF4F5 E99D8D
+8FF4F6 E99D91
+8FF4F7 EFA8AA
+8FF4F8 EFA8AB
+8FF4F9 EFA8AC
+8FF4FA E9A69E
+8FF4FB E9AB99
+8FF4FC E9ADB2
+8FF4FD EFA8AD
+8FF4FE E9BB91
+8FF5A1 EE8EAC
+8FF5A2 EE8EAD
+8FF5A3 EE8EAE
+8FF5A4 EE8EAF
+8FF5A5 EE8EB0
+8FF5A6 EE8EB1
+8FF5A7 EE8EB2
+8FF5A8 EE8EB3
+8FF5A9 EE8EB4
+8FF5AA EE8EB5
+8FF5AB EE8EB6
+8FF5AC EE8EB7
+8FF5AD EE8EB8
+8FF5AE EE8EB9
+8FF5AF EE8EBA
+8FF5B0 EE8EBB
+8FF5B1 EE8EBC
+8FF5B2 EE8EBD
+8FF5B3 EE8EBE
+8FF5B4 EE8EBF
+8FF5B5 EE8F80
+8FF5B6 EE8F81
+8FF5B7 EE8F82
+8FF5B8 EE8F83
+8FF5B9 EE8F84
+8FF5BA EE8F85
+8FF5BB EE8F86
+8FF5BC EE8F87
+8FF5BD EE8F88
+8FF5BE EE8F89
+8FF5BF EE8F8A
+8FF5C0 EE8F8B
+8FF5C1 EE8F8C
+8FF5C2 EE8F8D
+8FF5C3 EE8F8E
+8FF5C4 EE8F8F
+8FF5C5 EE8F90
+8FF5C6 EE8F91
+8FF5C7 EE8F92
+8FF5C8 EE8F93
+8FF5C9 EE8F94
+8FF5CA EE8F95
+8FF5CB EE8F96
+8FF5CC EE8F97
+8FF5CD EE8F98
+8FF5CE EE8F99
+8FF5CF EE8F9A
+8FF5D0 EE8F9B
+8FF5D1 EE8F9C
+8FF5D2 EE8F9D
+8FF5D3 EE8F9E
+8FF5D4 EE8F9F
+8FF5D5 EE8FA0
+8FF5D6 EE8FA1
+8FF5D7 EE8FA2
+8FF5D8 EE8FA3
+8FF5D9 EE8FA4
+8FF5DA EE8FA5
+8FF5DB EE8FA6
+8FF5DC EE8FA7
+8FF5DD EE8FA8
+8FF5DE EE8FA9
+8FF5DF EE8FAA
+8FF5E0 EE8FAB
+8FF5E1 EE8FAC
+8FF5E2 EE8FAD
+8FF5E3 EE8FAE
+8FF5E4 EE8FAF
+8FF5E5 EE8FB0
+8FF5E6 EE8FB1
+8FF5E7 EE8FB2
+8FF5E8 EE8FB3
+8FF5E9 EE8FB4
+8FF5EA EE8FB5
+8FF5EB EE8FB6
+8FF5EC EE8FB7
+8FF5ED EE8FB8
+8FF5EE EE8FB9
+8FF5EF EE8FBA
+8FF5F0 EE8FBB
+8FF5F1 EE8FBC
+8FF5F2 EE8FBD
+8FF5F3 EE8FBE
+8FF5F4 EE8FBF
+8FF5F5 EE9080
+8FF5F6 EE9081
+8FF5F7 EE9082
+8FF5F8 EE9083
+8FF5F9 EE9084
+8FF5FA EE9085
+8FF5FB EE9086
+8FF5FC EE9087
+8FF5FD EE9088
+8FF5FE EE9089
+8FF6A1 EE908A
+8FF6A2 EE908B
+8FF6A3 EE908C
+8FF6A4 EE908D
+8FF6A5 EE908E
+8FF6A6 EE908F
+8FF6A7 EE9090
+8FF6A8 EE9091
+8FF6A9 EE9092
+8FF6AA EE9093
+8FF6AB EE9094
+8FF6AC EE9095
+8FF6AD EE9096
+8FF6AE EE9097
+8FF6AF EE9098
+8FF6B0 EE9099
+8FF6B1 EE909A
+8FF6B2 EE909B
+8FF6B3 EE909C
+8FF6B4 EE909D
+8FF6B5 EE909E
+8FF6B6 EE909F
+8FF6B7 EE90A0
+8FF6B8 EE90A1
+8FF6B9 EE90A2
+8FF6BA EE90A3
+8FF6BB EE90A4
+8FF6BC EE90A5
+8FF6BD EE90A6
+8FF6BE EE90A7
+8FF6BF EE90A8
+8FF6C0 EE90A9
+8FF6C1 EE90AA
+8FF6C2 EE90AB
+8FF6C3 EE90AC
+8FF6C4 EE90AD
+8FF6C5 EE90AE
+8FF6C6 EE90AF
+8FF6C7 EE90B0
+8FF6C8 EE90B1
+8FF6C9 EE90B2
+8FF6CA EE90B3
+8FF6CB EE90B4
+8FF6CC EE90B5
+8FF6CD EE90B6
+8FF6CE EE90B7
+8FF6CF EE90B8
+8FF6D0 EE90B9
+8FF6D1 EE90BA
+8FF6D2 EE90BB
+8FF6D3 EE90BC
+8FF6D4 EE90BD
+8FF6D5 EE90BE
+8FF6D6 EE90BF
+8FF6D7 EE9180
+8FF6D8 EE9181
+8FF6D9 EE9182
+8FF6DA EE9183
+8FF6DB EE9184
+8FF6DC EE9185
+8FF6DD EE9186
+8FF6DE EE9187
+8FF6DF EE9188
+8FF6E0 EE9189
+8FF6E1 EE918A
+8FF6E2 EE918B
+8FF6E3 EE918C
+8FF6E4 EE918D
+8FF6E5 EE918E
+8FF6E6 EE918F
+8FF6E7 EE9190
+8FF6E8 EE9191
+8FF6E9 EE9192
+8FF6EA EE9193
+8FF6EB EE9194
+8FF6EC EE9195
+8FF6ED EE9196
+8FF6EE EE9197
+8FF6EF EE9198
+8FF6F0 EE9199
+8FF6F1 EE919A
+8FF6F2 EE919B
+8FF6F3 EE919C
+8FF6F4 EE919D
+8FF6F5 EE919E
+8FF6F6 EE919F
+8FF6F7 EE91A0
+8FF6F8 EE91A1
+8FF6F9 EE91A2
+8FF6FA EE91A3
+8FF6FB EE91A4
+8FF6FC EE91A5
+8FF6FD EE91A6
+8FF6FE EE91A7
+8FF7A1 EE91A8
+8FF7A2 EE91A9
+8FF7A3 EE91AA
+8FF7A4 EE91AB
+8FF7A5 EE91AC
+8FF7A6 EE91AD
+8FF7A7 EE91AE
+8FF7A8 EE91AF
+8FF7A9 EE91B0
+8FF7AA EE91B1
+8FF7AB EE91B2
+8FF7AC EE91B3
+8FF7AD EE91B4
+8FF7AE EE91B5
+8FF7AF EE91B6
+8FF7B0 EE91B7
+8FF7B1 EE91B8
+8FF7B2 EE91B9
+8FF7B3 EE91BA
+8FF7B4 EE91BB
+8FF7B5 EE91BC
+8FF7B6 EE91BD
+8FF7B7 EE91BE
+8FF7B8 EE91BF
+8FF7B9 EE9280
+8FF7BA EE9281
+8FF7BB EE9282
+8FF7BC EE9283
+8FF7BD EE9284
+8FF7BE EE9285
+8FF7BF EE9286
+8FF7C0 EE9287
+8FF7C1 EE9288
+8FF7C2 EE9289
+8FF7C3 EE928A
+8FF7C4 EE928B
+8FF7C5 EE928C
+8FF7C6 EE928D
+8FF7C7 EE928E
+8FF7C8 EE928F
+8FF7C9 EE9290
+8FF7CA EE9291
+8FF7CB EE9292
+8FF7CC EE9293
+8FF7CD EE9294
+8FF7CE EE9295
+8FF7CF EE9296
+8FF7D0 EE9297
+8FF7D1 EE9298
+8FF7D2 EE9299
+8FF7D3 EE929A
+8FF7D4 EE929B
+8FF7D5 EE929C
+8FF7D6 EE929D
+8FF7D7 EE929E
+8FF7D8 EE929F
+8FF7D9 EE92A0
+8FF7DA EE92A1
+8FF7DB EE92A2
+8FF7DC EE92A3
+8FF7DD EE92A4
+8FF7DE EE92A5
+8FF7DF EE92A6
+8FF7E0 EE92A7
+8FF7E1 EE92A8
+8FF7E2 EE92A9
+8FF7E3 EE92AA
+8FF7E4 EE92AB
+8FF7E5 EE92AC
+8FF7E6 EE92AD
+8FF7E7 EE92AE
+8FF7E8 EE92AF
+8FF7E9 EE92B0
+8FF7EA EE92B1
+8FF7EB EE92B2
+8FF7EC EE92B3
+8FF7ED EE92B4
+8FF7EE EE92B5
+8FF7EF EE92B6
+8FF7F0 EE92B7
+8FF7F1 EE92B8
+8FF7F2 EE92B9
+8FF7F3 EE92BA
+8FF7F4 EE92BB
+8FF7F5 EE92BC
+8FF7F6 EE92BD
+8FF7F7 EE92BE
+8FF7F8 EE92BF
+8FF7F9 EE9380
+8FF7FA EE9381
+8FF7FB EE9382
+8FF7FC EE9383
+8FF7FD EE9384
+8FF7FE EE9385
+8FF8A1 EE9386
+8FF8A2 EE9387
+8FF8A3 EE9388
+8FF8A4 EE9389
+8FF8A5 EE938A
+8FF8A6 EE938B
+8FF8A7 EE938C
+8FF8A8 EE938D
+8FF8A9 EE938E
+8FF8AA EE938F
+8FF8AB EE9390
+8FF8AC EE9391
+8FF8AD EE9392
+8FF8AE EE9393
+8FF8AF EE9394
+8FF8B0 EE9395
+8FF8B1 EE9396
+8FF8B2 EE9397
+8FF8B3 EE9398
+8FF8B4 EE9399
+8FF8B5 EE939A
+8FF8B6 EE939B
+8FF8B7 EE939C
+8FF8B8 EE939D
+8FF8B9 EE939E
+8FF8BA EE939F
+8FF8BB EE93A0
+8FF8BC EE93A1
+8FF8BD EE93A2
+8FF8BE EE93A3
+8FF8BF EE93A4
+8FF8C0 EE93A5
+8FF8C1 EE93A6
+8FF8C2 EE93A7
+8FF8C3 EE93A8
+8FF8C4 EE93A9
+8FF8C5 EE93AA
+8FF8C6 EE93AB
+8FF8C7 EE93AC
+8FF8C8 EE93AD
+8FF8C9 EE93AE
+8FF8CA EE93AF
+8FF8CB EE93B0
+8FF8CC EE93B1
+8FF8CD EE93B2
+8FF8CE EE93B3
+8FF8CF EE93B4
+8FF8D0 EE93B5
+8FF8D1 EE93B6
+8FF8D2 EE93B7
+8FF8D3 EE93B8
+8FF8D4 EE93B9
+8FF8D5 EE93BA
+8FF8D6 EE93BB
+8FF8D7 EE93BC
+8FF8D8 EE93BD
+8FF8D9 EE93BE
+8FF8DA EE93BF
+8FF8DB EE9480
+8FF8DC EE9481
+8FF8DD EE9482
+8FF8DE EE9483
+8FF8DF EE9484
+8FF8E0 EE9485
+8FF8E1 EE9486
+8FF8E2 EE9487
+8FF8E3 EE9488
+8FF8E4 EE9489
+8FF8E5 EE948A
+8FF8E6 EE948B
+8FF8E7 EE948C
+8FF8E8 EE948D
+8FF8E9 EE948E
+8FF8EA EE948F
+8FF8EB EE9490
+8FF8EC EE9491
+8FF8ED EE9492
+8FF8EE EE9493
+8FF8EF EE9494
+8FF8F0 EE9495
+8FF8F1 EE9496
+8FF8F2 EE9497
+8FF8F3 EE9498
+8FF8F4 EE9499
+8FF8F5 EE949A
+8FF8F6 EE949B
+8FF8F7 EE949C
+8FF8F8 EE949D
+8FF8F9 EE949E
+8FF8FA EE949F
+8FF8FB EE94A0
+8FF8FC EE94A1
+8FF8FD EE94A2
+8FF8FE EE94A3
+8FF9A1 EE94A4
+8FF9A2 EE94A5
+8FF9A3 EE94A6
+8FF9A4 EE94A7
+8FF9A5 EE94A8
+8FF9A6 EE94A9
+8FF9A7 EE94AA
+8FF9A8 EE94AB
+8FF9A9 EE94AC
+8FF9AA EE94AD
+8FF9AB EE94AE
+8FF9AC EE94AF
+8FF9AD EE94B0
+8FF9AE EE94B1
+8FF9AF EE94B2
+8FF9B0 EE94B3
+8FF9B1 EE94B4
+8FF9B2 EE94B5
+8FF9B3 EE94B6
+8FF9B4 EE94B7
+8FF9B5 EE94B8
+8FF9B6 EE94B9
+8FF9B7 EE94BA
+8FF9B8 EE94BB
+8FF9B9 EE94BC
+8FF9BA EE94BD
+8FF9BB EE94BE
+8FF9BC EE94BF
+8FF9BD EE9580
+8FF9BE EE9581
+8FF9BF EE9582
+8FF9C0 EE9583
+8FF9C1 EE9584
+8FF9C2 EE9585
+8FF9C3 EE9586
+8FF9C4 EE9587
+8FF9C5 EE9588
+8FF9C6 EE9589
+8FF9C7 EE958A
+8FF9C8 EE958B
+8FF9C9 EE958C
+8FF9CA EE958D
+8FF9CB EE958E
+8FF9CC EE958F
+8FF9CD EE9590
+8FF9CE EE9591
+8FF9CF EE9592
+8FF9D0 EE9593
+8FF9D1 EE9594
+8FF9D2 EE9595
+8FF9D3 EE9596
+8FF9D4 EE9597
+8FF9D5 EE9598
+8FF9D6 EE9599
+8FF9D7 EE959A
+8FF9D8 EE959B
+8FF9D9 EE959C
+8FF9DA EE959D
+8FF9DB EE959E
+8FF9DC EE959F
+8FF9DD EE95A0
+8FF9DE EE95A1
+8FF9DF EE95A2
+8FF9E0 EE95A3
+8FF9E1 EE95A4
+8FF9E2 EE95A5
+8FF9E3 EE95A6
+8FF9E4 EE95A7
+8FF9E5 EE95A8
+8FF9E6 EE95A9
+8FF9E7 EE95AA
+8FF9E8 EE95AB
+8FF9E9 EE95AC
+8FF9EA EE95AD
+8FF9EB EE95AE
+8FF9EC EE95AF
+8FF9ED EE95B0
+8FF9EE EE95B1
+8FF9EF EE95B2
+8FF9F0 EE95B3
+8FF9F1 EE95B4
+8FF9F2 EE95B5
+8FF9F3 EE95B6
+8FF9F4 EE95B7
+8FF9F5 EE95B8
+8FF9F6 EE95B9
+8FF9F7 EE95BA
+8FF9F8 EE95BB
+8FF9F9 EE95BC
+8FF9FA EE95BD
+8FF9FB EE95BE
+8FF9FC EE95BF
+8FF9FD EE9680
+8FF9FE EE9681
+8FFAA1 EE9682
+8FFAA2 EE9683
+8FFAA3 EE9684
+8FFAA4 EE9685
+8FFAA5 EE9686
+8FFAA6 EE9687
+8FFAA7 EE9688
+8FFAA8 EE9689
+8FFAA9 EE968A
+8FFAAA EE968B
+8FFAAB EE968C
+8FFAAC EE968D
+8FFAAD EE968E
+8FFAAE EE968F
+8FFAAF EE9690
+8FFAB0 EE9691
+8FFAB1 EE9692
+8FFAB2 EE9693
+8FFAB3 EE9694
+8FFAB4 EE9695
+8FFAB5 EE9696
+8FFAB6 EE9697
+8FFAB7 EE9698
+8FFAB8 EE9699
+8FFAB9 EE969A
+8FFABA EE969B
+8FFABB EE969C
+8FFABC EE969D
+8FFABD EE969E
+8FFABE EE969F
+8FFABF EE96A0
+8FFAC0 EE96A1
+8FFAC1 EE96A2
+8FFAC2 EE96A3
+8FFAC3 EE96A4
+8FFAC4 EE96A5
+8FFAC5 EE96A6
+8FFAC6 EE96A7
+8FFAC7 EE96A8
+8FFAC8 EE96A9
+8FFAC9 EE96AA
+8FFACA EE96AB
+8FFACB EE96AC
+8FFACC EE96AD
+8FFACD EE96AE
+8FFACE EE96AF
+8FFACF EE96B0
+8FFAD0 EE96B1
+8FFAD1 EE96B2
+8FFAD2 EE96B3
+8FFAD3 EE96B4
+8FFAD4 EE96B5
+8FFAD5 EE96B6
+8FFAD6 EE96B7
+8FFAD7 EE96B8
+8FFAD8 EE96B9
+8FFAD9 EE96BA
+8FFADA EE96BB
+8FFADB EE96BC
+8FFADC EE96BD
+8FFADD EE96BE
+8FFADE EE96BF
+8FFADF EE9780
+8FFAE0 EE9781
+8FFAE1 EE9782
+8FFAE2 EE9783
+8FFAE3 EE9784
+8FFAE4 EE9785
+8FFAE5 EE9786
+8FFAE6 EE9787
+8FFAE7 EE9788
+8FFAE8 EE9789
+8FFAE9 EE978A
+8FFAEA EE978B
+8FFAEB EE978C
+8FFAEC EE978D
+8FFAED EE978E
+8FFAEE EE978F
+8FFAEF EE9790
+8FFAF0 EE9791
+8FFAF1 EE9792
+8FFAF2 EE9793
+8FFAF3 EE9794
+8FFAF4 EE9795
+8FFAF5 EE9796
+8FFAF6 EE9797
+8FFAF7 EE9798
+8FFAF8 EE9799
+8FFAF9 EE979A
+8FFAFA EE979B
+8FFAFB EE979C
+8FFAFC EE979D
+8FFAFD EE979E
+8FFAFE EE979F
+8FFBA1 EE97A0
+8FFBA2 EE97A1
+8FFBA3 EE97A2
+8FFBA4 EE97A3
+8FFBA5 EE97A4
+8FFBA6 EE97A5
+8FFBA7 EE97A6
+8FFBA8 EE97A7
+8FFBA9 EE97A8
+8FFBAA EE97A9
+8FFBAB EE97AA
+8FFBAC EE97AB
+8FFBAD EE97AC
+8FFBAE EE97AD
+8FFBAF EE97AE
+8FFBB0 EE97AF
+8FFBB1 EE97B0
+8FFBB2 EE97B1
+8FFBB3 EE97B2
+8FFBB4 EE97B3
+8FFBB5 EE97B4
+8FFBB6 EE97B5
+8FFBB7 EE97B6
+8FFBB8 EE97B7
+8FFBB9 EE97B8
+8FFBBA EE97B9
+8FFBBB EE97BA
+8FFBBC EE97BB
+8FFBBD EE97BC
+8FFBBE EE97BD
+8FFBBF EE97BE
+8FFBC0 EE97BF
+8FFBC1 EE9880
+8FFBC2 EE9881
+8FFBC3 EE9882
+8FFBC4 EE9883
+8FFBC5 EE9884
+8FFBC6 EE9885
+8FFBC7 EE9886
+8FFBC8 EE9887
+8FFBC9 EE9888
+8FFBCA EE9889
+8FFBCB EE988A
+8FFBCC EE988B
+8FFBCD EE988C
+8FFBCE EE988D
+8FFBCF EE988E
+8FFBD0 EE988F
+8FFBD1 EE9890
+8FFBD2 EE9891
+8FFBD3 EE9892
+8FFBD4 EE9893
+8FFBD5 EE9894
+8FFBD6 EE9895
+8FFBD7 EE9896
+8FFBD8 EE9897
+8FFBD9 EE9898
+8FFBDA EE9899
+8FFBDB EE989A
+8FFBDC EE989B
+8FFBDD EE989C
+8FFBDE EE989D
+8FFBDF EE989E
+8FFBE0 EE989F
+8FFBE1 EE98A0
+8FFBE2 EE98A1
+8FFBE3 EE98A2
+8FFBE4 EE98A3
+8FFBE5 EE98A4
+8FFBE6 EE98A5
+8FFBE7 EE98A6
+8FFBE8 EE98A7
+8FFBE9 EE98A8
+8FFBEA EE98A9
+8FFBEB EE98AA
+8FFBEC EE98AB
+8FFBED EE98AC
+8FFBEE EE98AD
+8FFBEF EE98AE
+8FFBF0 EE98AF
+8FFBF1 EE98B0
+8FFBF2 EE98B1
+8FFBF3 EE98B2
+8FFBF4 EE98B3
+8FFBF5 EE98B4
+8FFBF6 EE98B5
+8FFBF7 EE98B6
+8FFBF8 EE98B7
+8FFBF9 EE98B8
+8FFBFA EE98B9
+8FFBFB EE98BA
+8FFBFC EE98BB
+8FFBFD EE98BC
+8FFBFE EE98BD
+8FFCA1 EE98BE
+8FFCA2 EE98BF
+8FFCA3 EE9980
+8FFCA4 EE9981
+8FFCA5 EE9982
+8FFCA6 EE9983
+8FFCA7 EE9984
+8FFCA8 EE9985
+8FFCA9 EE9986
+8FFCAA EE9987
+8FFCAB EE9988
+8FFCAC EE9989
+8FFCAD EE998A
+8FFCAE EE998B
+8FFCAF EE998C
+8FFCB0 EE998D
+8FFCB1 EE998E
+8FFCB2 EE998F
+8FFCB3 EE9990
+8FFCB4 EE9991
+8FFCB5 EE9992
+8FFCB6 EE9993
+8FFCB7 EE9994
+8FFCB8 EE9995
+8FFCB9 EE9996
+8FFCBA EE9997
+8FFCBB EE9998
+8FFCBC EE9999
+8FFCBD EE999A
+8FFCBE EE999B
+8FFCBF EE999C
+8FFCC0 EE999D
+8FFCC1 EE999E
+8FFCC2 EE999F
+8FFCC3 EE99A0
+8FFCC4 EE99A1
+8FFCC5 EE99A2
+8FFCC6 EE99A3
+8FFCC7 EE99A4
+8FFCC8 EE99A5
+8FFCC9 EE99A6
+8FFCCA EE99A7
+8FFCCB EE99A8
+8FFCCC EE99A9
+8FFCCD EE99AA
+8FFCCE EE99AB
+8FFCCF EE99AC
+8FFCD0 EE99AD
+8FFCD1 EE99AE
+8FFCD2 EE99AF
+8FFCD3 EE99B0
+8FFCD4 EE99B1
+8FFCD5 EE99B2
+8FFCD6 EE99B3
+8FFCD7 EE99B4
+8FFCD8 EE99B5
+8FFCD9 EE99B6
+8FFCDA EE99B7
+8FFCDB EE99B8
+8FFCDC EE99B9
+8FFCDD EE99BA
+8FFCDE EE99BB
+8FFCDF EE99BC
+8FFCE0 EE99BD
+8FFCE1 EE99BE
+8FFCE2 EE99BF
+8FFCE3 EE9A80
+8FFCE4 EE9A81
+8FFCE5 EE9A82
+8FFCE6 EE9A83
+8FFCE7 EE9A84
+8FFCE8 EE9A85
+8FFCE9 EE9A86
+8FFCEA EE9A87
+8FFCEB EE9A88
+8FFCEC EE9A89
+8FFCED EE9A8A
+8FFCEE EE9A8B
+8FFCEF EE9A8C
+8FFCF0 EE9A8D
+8FFCF1 EE9A8E
+8FFCF2 EE9A8F
+8FFCF3 EE9A90
+8FFCF4 EE9A91
+8FFCF5 EE9A92
+8FFCF6 EE9A93
+8FFCF7 EE9A94
+8FFCF8 EE9A95
+8FFCF9 EE9A96
+8FFCFA EE9A97
+8FFCFB EE9A98
+8FFCFC EE9A99
+8FFCFD EE9A9A
+8FFCFE EE9A9B
+8FFDA1 EE9A9C
+8FFDA2 EE9A9D
+8FFDA3 EE9A9E
+8FFDA4 EE9A9F
+8FFDA5 EE9AA0
+8FFDA6 EE9AA1
+8FFDA7 EE9AA2
+8FFDA8 EE9AA3
+8FFDA9 EE9AA4
+8FFDAA EE9AA5
+8FFDAB EE9AA6
+8FFDAC EE9AA7
+8FFDAD EE9AA8
+8FFDAE EE9AA9
+8FFDAF EE9AAA
+8FFDB0 EE9AAB
+8FFDB1 EE9AAC
+8FFDB2 EE9AAD
+8FFDB3 EE9AAE
+8FFDB4 EE9AAF
+8FFDB5 EE9AB0
+8FFDB6 EE9AB1
+8FFDB7 EE9AB2
+8FFDB8 EE9AB3
+8FFDB9 EE9AB4
+8FFDBA EE9AB5
+8FFDBB EE9AB6
+8FFDBC EE9AB7
+8FFDBD EE9AB8
+8FFDBE EE9AB9
+8FFDBF EE9ABA
+8FFDC0 EE9ABB
+8FFDC1 EE9ABC
+8FFDC2 EE9ABD
+8FFDC3 EE9ABE
+8FFDC4 EE9ABF
+8FFDC5 EE9B80
+8FFDC6 EE9B81
+8FFDC7 EE9B82
+8FFDC8 EE9B83
+8FFDC9 EE9B84
+8FFDCA EE9B85
+8FFDCB EE9B86
+8FFDCC EE9B87
+8FFDCD EE9B88
+8FFDCE EE9B89
+8FFDCF EE9B8A
+8FFDD0 EE9B8B
+8FFDD1 EE9B8C
+8FFDD2 EE9B8D
+8FFDD3 EE9B8E
+8FFDD4 EE9B8F
+8FFDD5 EE9B90
+8FFDD6 EE9B91
+8FFDD7 EE9B92
+8FFDD8 EE9B93
+8FFDD9 EE9B94
+8FFDDA EE9B95
+8FFDDB EE9B96
+8FFDDC EE9B97
+8FFDDD EE9B98
+8FFDDE EE9B99
+8FFDDF EE9B9A
+8FFDE0 EE9B9B
+8FFDE1 EE9B9C
+8FFDE2 EE9B9D
+8FFDE3 EE9B9E
+8FFDE4 EE9B9F
+8FFDE5 EE9BA0
+8FFDE6 EE9BA1
+8FFDE7 EE9BA2
+8FFDE8 EE9BA3
+8FFDE9 EE9BA4
+8FFDEA EE9BA5
+8FFDEB EE9BA6
+8FFDEC EE9BA7
+8FFDED EE9BA8
+8FFDEE EE9BA9
+8FFDEF EE9BAA
+8FFDF0 EE9BAB
+8FFDF1 EE9BAC
+8FFDF2 EE9BAD
+8FFDF3 EE9BAE
+8FFDF4 EE9BAF
+8FFDF5 EE9BB0
+8FFDF6 EE9BB1
+8FFDF7 EE9BB2
+8FFDF8 EE9BB3
+8FFDF9 EE9BB4
+8FFDFA EE9BB5
+8FFDFB EE9BB6
+8FFDFC EE9BB7
+8FFDFD EE9BB8
+8FFDFE EE9BB9
+8FFEA1 EE9BBA
+8FFEA2 EE9BBB
+8FFEA3 EE9BBC
+8FFEA4 EE9BBD
+8FFEA5 EE9BBE
+8FFEA6 EE9BBF
+8FFEA7 EE9C80
+8FFEA8 EE9C81
+8FFEA9 EE9C82
+8FFEAA EE9C83
+8FFEAB EE9C84
+8FFEAC EE9C85
+8FFEAD EE9C86
+8FFEAE EE9C87
+8FFEAF EE9C88
+8FFEB0 EE9C89
+8FFEB1 EE9C8A
+8FFEB2 EE9C8B
+8FFEB3 EE9C8C
+8FFEB4 EE9C8D
+8FFEB5 EE9C8E
+8FFEB6 EE9C8F
+8FFEB7 EE9C90
+8FFEB8 EE9C91
+8FFEB9 EE9C92
+8FFEBA EE9C93
+8FFEBB EE9C94
+8FFEBC EE9C95
+8FFEBD EE9C96
+8FFEBE EE9C97
+8FFEBF EE9C98
+8FFEC0 EE9C99
+8FFEC1 EE9C9A
+8FFEC2 EE9C9B
+8FFEC3 EE9C9C
+8FFEC4 EE9C9D
+8FFEC5 EE9C9E
+8FFEC6 EE9C9F
+8FFEC7 EE9CA0
+8FFEC8 EE9CA1
+8FFEC9 EE9CA2
+8FFECA EE9CA3
+8FFECB EE9CA4
+8FFECC EE9CA5
+8FFECD EE9CA6
+8FFECE EE9CA7
+8FFECF EE9CA8
+8FFED0 EE9CA9
+8FFED1 EE9CAA
+8FFED2 EE9CAB
+8FFED3 EE9CAC
+8FFED4 EE9CAD
+8FFED5 EE9CAE
+8FFED6 EE9CAF
+8FFED7 EE9CB0
+8FFED8 EE9CB1
+8FFED9 EE9CB2
+8FFEDA EE9CB3
+8FFEDB EE9CB4
+8FFEDC EE9CB5
+8FFEDD EE9CB6
+8FFEDE EE9CB7
+8FFEDF EE9CB8
+8FFEE0 EE9CB9
+8FFEE1 EE9CBA
+8FFEE2 EE9CBB
+8FFEE3 EE9CBC
+8FFEE4 EE9CBD
+8FFEE5 EE9CBE
+8FFEE6 EE9CBF
+8FFEE7 EE9D80
+8FFEE8 EE9D81
+8FFEE9 EE9D82
+8FFEEA EE9D83
+8FFEEB EE9D84
+8FFEEC EE9D85
+8FFEED EE9D86
+8FFEEE EE9D87
+8FFEEF EE9D88
+8FFEF0 EE9D89
+8FFEF1 EE9D8A
+8FFEF2 EE9D8B
+8FFEF3 EE9D8C
+8FFEF4 EE9D8D
+8FFEF5 EE9D8E
+8FFEF6 EE9D8F
+8FFEF7 EE9D90
+8FFEF8 EE9D91
+8FFEF9 EE9D92
+8FFEFA EE9D93
+8FFEFB EE9D94
+8FFEFC EE9D95
+8FFEFD EE9D96
+8FFEFE EE9D97
+A1A1 E38080
+A1A2 E38081
+A1A3 E38082
+A1A4 EFBC8C
+A1A5 EFBC8E
+A1A6 E383BB
+A1A7 EFBC9A
+A1A8 EFBC9B
+A1A9 EFBC9F
+A1AA EFBC81
+A1AB E3829B
+A1AC E3829C
+A1AD C2B4
+A1AE EFBD80
+A1AF C2A8
+A1B0 EFBCBE
+A1B1 EFBFA3
+A1B2 EFBCBF
+A1B3 E383BD
+A1B4 E383BE
+A1B5 E3829D
+A1B6 E3829E
+A1B7 E38083
+A1B8 E4BB9D
+A1B9 E38085
+A1BA E38086
+A1BB E38087
+A1BC E383BC
+A1BD E28095
+A1BE E28090
+A1BF EFBC8F
+A1C0 EFBCBC
+A1C1 EFBD9E
+A1C2 E288A5
+A1C3 EFBD9C
+A1C4 E280A6
+A1C5 E280A5
+A1C6 E28098
+A1C7 E28099
+A1C8 E2809C
+A1C9 E2809D
+A1CA EFBC88
+A1CB EFBC89
+A1CC E38094
+A1CD E38095
+A1CE EFBCBB
+A1CF EFBCBD
+A1D0 EFBD9B
+A1D1 EFBD9D
+A1D2 E38088
+A1D3 E38089
+A1D4 E3808A
+A1D5 E3808B
+A1D6 E3808C
+A1D7 E3808D
+A1D8 E3808E
+A1D9 E3808F
+A1DA E38090
+A1DB E38091
+A1DC EFBC8B
+A1DD EFBC8D
+A1DE C2B1
+A1DF C397
+A1E0 C3B7
+A1E1 EFBC9D
+A1E2 E289A0
+A1E3 EFBC9C
+A1E4 EFBC9E
+A1E5 E289A6
+A1E6 E289A7
+A1E7 E2889E
+A1E8 E288B4
+A1E9 E29982
+A1EA E29980
+A1EB C2B0
+A1EC E280B2
+A1ED E280B3
+A1EE E28483
+A1EF EFBFA5
+A1F0 EFBC84
+A1F1 EFBFA0
+A1F2 EFBFA1
+A1F3 EFBC85
+A1F4 EFBC83
+A1F5 EFBC86
+A1F6 EFBC8A
+A1F7 EFBCA0
+A1F8 C2A7
+A1F9 E29886
+A1FA E29885
+A1FB E2978B
+A1FC E2978F
+A1FD E2978E
+A1FE E29787
+A2A1 E29786
+A2A2 E296A1
+A2A3 E296A0
+A2A4 E296B3
+A2A5 E296B2
+A2A6 E296BD
+A2A7 E296BC
+A2A8 E280BB
+A2A9 E38092
+A2AA E28692
+A2AB E28690
+A2AC E28691
+A2AD E28693
+A2AE E38093
+A2BA E28888
+A2BB E2888B
+A2BC E28A86
+A2BD E28A87
+A2BE E28A82
+A2BF E28A83
+A2C0 E288AA
+A2C1 E288A9
+A2CA E288A7
+A2CB E288A8
+A2CC EFBFA2
+A2CD E28792
+A2CE E28794
+A2CF E28880
+A2D0 E28883
+A2DC E288A0
+A2DD E28AA5
+A2DE E28C92
+A2DF E28882
+A2E0 E28887
+A2E1 E289A1
+A2E2 E28992
+A2E3 E289AA
+A2E4 E289AB
+A2E5 E2889A
+A2E6 E288BD
+A2E7 E2889D
+A2E8 E288B5
+A2E9 E288AB
+A2EA E288AC
+A2F2 E284AB
+A2F3 E280B0
+A2F4 E299AF
+A2F5 E299AD
+A2F6 E299AA
+A2F7 E280A0
+A2F8 E280A1
+A2F9 C2B6
+A2FE E297AF
+A3B0 EFBC90
+A3B1 EFBC91
+A3B2 EFBC92
+A3B3 EFBC93
+A3B4 EFBC94
+A3B5 EFBC95
+A3B6 EFBC96
+A3B7 EFBC97
+A3B8 EFBC98
+A3B9 EFBC99
+A3C1 EFBCA1
+A3C2 EFBCA2
+A3C3 EFBCA3
+A3C4 EFBCA4
+A3C5 EFBCA5
+A3C6 EFBCA6
+A3C7 EFBCA7
+A3C8 EFBCA8
+A3C9 EFBCA9
+A3CA EFBCAA
+A3CB EFBCAB
+A3CC EFBCAC
+A3CD EFBCAD
+A3CE EFBCAE
+A3CF EFBCAF
+A3D0 EFBCB0
+A3D1 EFBCB1
+A3D2 EFBCB2
+A3D3 EFBCB3
+A3D4 EFBCB4
+A3D5 EFBCB5
+A3D6 EFBCB6
+A3D7 EFBCB7
+A3D8 EFBCB8
+A3D9 EFBCB9
+A3DA EFBCBA
+A3E1 EFBD81
+A3E2 EFBD82
+A3E3 EFBD83
+A3E4 EFBD84
+A3E5 EFBD85
+A3E6 EFBD86
+A3E7 EFBD87
+A3E8 EFBD88
+A3E9 EFBD89
+A3EA EFBD8A
+A3EB EFBD8B
+A3EC EFBD8C
+A3ED EFBD8D
+A3EE EFBD8E
+A3EF EFBD8F
+A3F0 EFBD90
+A3F1 EFBD91
+A3F2 EFBD92
+A3F3 EFBD93
+A3F4 EFBD94
+A3F5 EFBD95
+A3F6 EFBD96
+A3F7 EFBD97
+A3F8 EFBD98
+A3F9 EFBD99
+A3FA EFBD9A
+A4A1 E38181
+A4A2 E38182
+A4A3 E38183
+A4A4 E38184
+A4A5 E38185
+A4A6 E38186
+A4A7 E38187
+A4A8 E38188
+A4A9 E38189
+A4AA E3818A
+A4AB E3818B
+A4AC E3818C
+A4AD E3818D
+A4AE E3818E
+A4AF E3818F
+A4B0 E38190
+A4B1 E38191
+A4B2 E38192
+A4B3 E38193
+A4B4 E38194
+A4B5 E38195
+A4B6 E38196
+A4B7 E38197
+A4B8 E38198
+A4B9 E38199
+A4BA E3819A
+A4BB E3819B
+A4BC E3819C
+A4BD E3819D
+A4BE E3819E
+A4BF E3819F
+A4C0 E381A0
+A4C1 E381A1
+A4C2 E381A2
+A4C3 E381A3
+A4C4 E381A4
+A4C5 E381A5
+A4C6 E381A6
+A4C7 E381A7
+A4C8 E381A8
+A4C9 E381A9
+A4CA E381AA
+A4CB E381AB
+A4CC E381AC
+A4CD E381AD
+A4CE E381AE
+A4CF E381AF
+A4D0 E381B0
+A4D1 E381B1
+A4D2 E381B2
+A4D3 E381B3
+A4D4 E381B4
+A4D5 E381B5
+A4D6 E381B6
+A4D7 E381B7
+A4D8 E381B8
+A4D9 E381B9
+A4DA E381BA
+A4DB E381BB
+A4DC E381BC
+A4DD E381BD
+A4DE E381BE
+A4DF E381BF
+A4E0 E38280
+A4E1 E38281
+A4E2 E38282
+A4E3 E38283
+A4E4 E38284
+A4E5 E38285
+A4E6 E38286
+A4E7 E38287
+A4E8 E38288
+A4E9 E38289
+A4EA E3828A
+A4EB E3828B
+A4EC E3828C
+A4ED E3828D
+A4EE E3828E
+A4EF E3828F
+A4F0 E38290
+A4F1 E38291
+A4F2 E38292
+A4F3 E38293
+A5A1 E382A1
+A5A2 E382A2
+A5A3 E382A3
+A5A4 E382A4
+A5A5 E382A5
+A5A6 E382A6
+A5A7 E382A7
+A5A8 E382A8
+A5A9 E382A9
+A5AA E382AA
+A5AB E382AB
+A5AC E382AC
+A5AD E382AD
+A5AE E382AE
+A5AF E382AF
+A5B0 E382B0
+A5B1 E382B1
+A5B2 E382B2
+A5B3 E382B3
+A5B4 E382B4
+A5B5 E382B5
+A5B6 E382B6
+A5B7 E382B7
+A5B8 E382B8
+A5B9 E382B9
+A5BA E382BA
+A5BB E382BB
+A5BC E382BC
+A5BD E382BD
+A5BE E382BE
+A5BF E382BF
+A5C0 E38380
+A5C1 E38381
+A5C2 E38382
+A5C3 E38383
+A5C4 E38384
+A5C5 E38385
+A5C6 E38386
+A5C7 E38387
+A5C8 E38388
+A5C9 E38389
+A5CA E3838A
+A5CB E3838B
+A5CC E3838C
+A5CD E3838D
+A5CE E3838E
+A5CF E3838F
+A5D0 E38390
+A5D1 E38391
+A5D2 E38392
+A5D3 E38393
+A5D4 E38394
+A5D5 E38395
+A5D6 E38396
+A5D7 E38397
+A5D8 E38398
+A5D9 E38399
+A5DA E3839A
+A5DB E3839B
+A5DC E3839C
+A5DD E3839D
+A5DE E3839E
+A5DF E3839F
+A5E0 E383A0
+A5E1 E383A1
+A5E2 E383A2
+A5E3 E383A3
+A5E4 E383A4
+A5E5 E383A5
+A5E6 E383A6
+A5E7 E383A7
+A5E8 E383A8
+A5E9 E383A9
+A5EA E383AA
+A5EB E383AB
+A5EC E383AC
+A5ED E383AD
+A5EE E383AE
+A5EF E383AF
+A5F0 E383B0
+A5F1 E383B1
+A5F2 E383B2
+A5F3 E383B3
+A5F4 E383B4
+A5F5 E383B5
+A5F6 E383B6
+A6A1 CE91
+A6A2 CE92
+A6A3 CE93
+A6A4 CE94
+A6A5 CE95
+A6A6 CE96
+A6A7 CE97
+A6A8 CE98
+A6A9 CE99
+A6AA CE9A
+A6AB CE9B
+A6AC CE9C
+A6AD CE9D
+A6AE CE9E
+A6AF CE9F
+A6B0 CEA0
+A6B1 CEA1
+A6B2 CEA3
+A6B3 CEA4
+A6B4 CEA5
+A6B5 CEA6
+A6B6 CEA7
+A6B7 CEA8
+A6B8 CEA9
+A6C1 CEB1
+A6C2 CEB2
+A6C3 CEB3
+A6C4 CEB4
+A6C5 CEB5
+A6C6 CEB6
+A6C7 CEB7
+A6C8 CEB8
+A6C9 CEB9
+A6CA CEBA
+A6CB CEBB
+A6CC CEBC
+A6CD CEBD
+A6CE CEBE
+A6CF CEBF
+A6D0 CF80
+A6D1 CF81
+A6D2 CF83
+A6D3 CF84
+A6D4 CF85
+A6D5 CF86
+A6D6 CF87
+A6D7 CF88
+A6D8 CF89
+A7A1 D090
+A7A2 D091
+A7A3 D092
+A7A4 D093
+A7A5 D094
+A7A6 D095
+A7A7 D081
+A7A8 D096
+A7A9 D097
+A7AA D098
+A7AB D099
+A7AC D09A
+A7AD D09B
+A7AE D09C
+A7AF D09D
+A7B0 D09E
+A7B1 D09F
+A7B2 D0A0
+A7B3 D0A1
+A7B4 D0A2
+A7B5 D0A3
+A7B6 D0A4
+A7B7 D0A5
+A7B8 D0A6
+A7B9 D0A7
+A7BA D0A8
+A7BB D0A9
+A7BC D0AA
+A7BD D0AB
+A7BE D0AC
+A7BF D0AD
+A7C0 D0AE
+A7C1 D0AF
+A7D1 D0B0
+A7D2 D0B1
+A7D3 D0B2
+A7D4 D0B3
+A7D5 D0B4
+A7D6 D0B5
+A7D7 D191
+A7D8 D0B6
+A7D9 D0B7
+A7DA D0B8
+A7DB D0B9
+A7DC D0BA
+A7DD D0BB
+A7DE D0BC
+A7DF D0BD
+A7E0 D0BE
+A7E1 D0BF
+A7E2 D180
+A7E3 D181
+A7E4 D182
+A7E5 D183
+A7E6 D184
+A7E7 D185
+A7E8 D186
+A7E9 D187
+A7EA D188
+A7EB D189
+A7EC D18A
+A7ED D18B
+A7EE D18C
+A7EF D18D
+A7F0 D18E
+A7F1 D18F
+A8A1 E29480
+A8A2 E29482
+A8A3 E2948C
+A8A4 E29490
+A8A5 E29498
+A8A6 E29494
+A8A7 E2949C
+A8A8 E294AC
+A8A9 E294A4
+A8AA E294B4
+A8AB E294BC
+A8AC E29481
+A8AD E29483
+A8AE E2948F
+A8AF E29493
+A8B0 E2949B
+A8B1 E29497
+A8B2 E294A3
+A8B3 E294B3
+A8B4 E294AB
+A8B5 E294BB
+A8B6 E2958B
+A8B7 E294A0
+A8B8 E294AF
+A8B9 E294A8
+A8BA E294B7
+A8BB E294BF
+A8BC E2949D
+A8BD E294B0
+A8BE E294A5
+A8BF E294B8
+A8C0 E29582
+ADA1 E291A0
+ADA2 E291A1
+ADA3 E291A2
+ADA4 E291A3
+ADA5 E291A4
+ADA6 E291A5
+ADA7 E291A6
+ADA8 E291A7
+ADA9 E291A8
+ADAA E291A9
+ADAB E291AA
+ADAC E291AB
+ADAD E291AC
+ADAE E291AD
+ADAF E291AE
+ADB0 E291AF
+ADB1 E291B0
+ADB2 E291B1
+ADB3 E291B2
+ADB4 E291B3
+ADB5 E285A0
+ADB6 E285A1
+ADB7 E285A2
+ADB8 E285A3
+ADB9 E285A4
+ADBA E285A5
+ADBB E285A6
+ADBC E285A7
+ADBD E285A8
+ADBE E285A9
+ADC0 E38D89
+ADC1 E38C94
+ADC2 E38CA2
+ADC3 E38D8D
+ADC4 E38C98
+ADC5 E38CA7
+ADC6 E38C83
+ADC7 E38CB6
+ADC8 E38D91
+ADC9 E38D97
+ADCA E38C8D
+ADCB E38CA6
+ADCC E38CA3
+ADCD E38CAB
+ADCE E38D8A
+ADCF E38CBB
+ADD0 E38E9C
+ADD1 E38E9D
+ADD2 E38E9E
+ADD3 E38E8E
+ADD4 E38E8F
+ADD5 E38F84
+ADD6 E38EA1
+ADDF E38DBB
+ADE0 E3809D
+ADE1 E3809F
+ADE2 E28496
+ADE3 E38F8D
+ADE4 E284A1
+ADE5 E38AA4
+ADE6 E38AA5
+ADE7 E38AA6
+ADE8 E38AA7
+ADE9 E38AA8
+ADEA E388B1
+ADEB E388B2
+ADEC E388B9
+ADED E38DBE
+ADEE E38DBD
+ADEF E38DBC
+ADF0 E28992
+ADF1 E289A1
+ADF2 E288AB
+ADF3 E288AE
+ADF4 E28891
+ADF5 E2889A
+ADF6 E28AA5
+ADF7 E288A0
+ADF8 E2889F
+ADF9 E28ABF
+ADFA E288B5
+ADFB E288A9
+ADFC E288AA
+B0A1 E4BA9C
+B0A2 E59496
+B0A3 E5A883
+B0A4 E998BF
+B0A5 E59380
+B0A6 E6849B
+B0A7 E68CA8
+B0A8 E5A7B6
+B0A9 E980A2
+B0AA E891B5
+B0AB E88C9C
+B0AC E7A990
+B0AD E682AA
+B0AE E68FA1
+B0AF E6B8A5
+B0B0 E697AD
+B0B1 E891A6
+B0B2 E88AA6
+B0B3 E9AFB5
+B0B4 E6A293
+B0B5 E59CA7
+B0B6 E696A1
+B0B7 E689B1
+B0B8 E5AE9B
+B0B9 E5A790
+B0BA E899BB
+B0BB E9A3B4
+B0BC E7B5A2
+B0BD E7B6BE
+B0BE E9AE8E
+B0BF E68896
+B0C0 E7B29F
+B0C1 E8A2B7
+B0C2 E5AE89
+B0C3 E5BAB5
+B0C4 E68C89
+B0C5 E69A97
+B0C6 E6A188
+B0C7 E99787
+B0C8 E99E8D
+B0C9 E69D8F
+B0CA E4BBA5
+B0CB E4BC8A
+B0CC E4BD8D
+B0CD E4BE9D
+B0CE E58189
+B0CF E59BB2
+B0D0 E5A4B7
+B0D1 E5A794
+B0D2 E5A881
+B0D3 E5B089
+B0D4 E6839F
+B0D5 E6848F
+B0D6 E685B0
+B0D7 E69893
+B0D8 E6A485
+B0D9 E782BA
+B0DA E7958F
+B0DB E795B0
+B0DC E7A7BB
+B0DD E7B6AD
+B0DE E7B7AF
+B0DF E88383
+B0E0 E8908E
+B0E1 E8A1A3
+B0E2 E8AC82
+B0E3 E98195
+B0E4 E981BA
+B0E5 E58CBB
+B0E6 E4BA95
+B0E7 E4BAA5
+B0E8 E59F9F
+B0E9 E882B2
+B0EA E98381
+B0EB E7A3AF
+B0EC E4B880
+B0ED E5A3B1
+B0EE E6BAA2
+B0EF E980B8
+B0F0 E7A8B2
+B0F1 E88CA8
+B0F2 E88A8B
+B0F3 E9B0AF
+B0F4 E58581
+B0F5 E58DB0
+B0F6 E592BD
+B0F7 E593A1
+B0F8 E59BA0
+B0F9 E5A7BB
+B0FA E5BC95
+B0FB E9A3B2
+B0FC E6B7AB
+B0FD E883A4
+B0FE E894AD
+B1A1 E999A2
+B1A2 E999B0
+B1A3 E99AA0
+B1A4 E99FBB
+B1A5 E5908B
+B1A6 E58FB3
+B1A7 E5AE87
+B1A8 E7838F
+B1A9 E7BEBD
+B1AA E8BF82
+B1AB E99BA8
+B1AC E58DAF
+B1AD E9B59C
+B1AE E7AABA
+B1AF E4B891
+B1B0 E7A293
+B1B1 E887BC
+B1B2 E6B8A6
+B1B3 E59898
+B1B4 E59484
+B1B5 E6AC9D
+B1B6 E8949A
+B1B7 E9B0BB
+B1B8 E5A7A5
+B1B9 E58EA9
+B1BA E6B5A6
+B1BB E7939C
+B1BC E9968F
+B1BD E59982
+B1BE E4BA91
+B1BF E9818B
+B1C0 E99BB2
+B1C1 E88D8F
+B1C2 E9A48C
+B1C3 E58FA1
+B1C4 E596B6
+B1C5 E5ACB0
+B1C6 E5BDB1
+B1C7 E698A0
+B1C8 E69BB3
+B1C9 E6A084
+B1CA E6B0B8
+B1CB E6B3B3
+B1CC E6B4A9
+B1CD E7919B
+B1CE E79B88
+B1CF E7A98E
+B1D0 E9A0B4
+B1D1 E88BB1
+B1D2 E8A19B
+B1D3 E8A9A0
+B1D4 E98BAD
+B1D5 E6B6B2
+B1D6 E796AB
+B1D7 E79B8A
+B1D8 E9A785
+B1D9 E682A6
+B1DA E8AC81
+B1DB E8B68A
+B1DC E996B2
+B1DD E6A68E
+B1DE E58EAD
+B1DF E58686
+B1E0 E59C92
+B1E1 E5A0B0
+B1E2 E5A584
+B1E3 E5AEB4
+B1E4 E5BBB6
+B1E5 E680A8
+B1E6 E68EA9
+B1E7 E68FB4
+B1E8 E6B2BF
+B1E9 E6BC94
+B1EA E7828E
+B1EB E78494
+B1EC E78599
+B1ED E78795
+B1EE E78CBF
+B1EF E7B881
+B1F0 E889B6
+B1F1 E88B91
+B1F2 E89697
+B1F3 E981A0
+B1F4 E9899B
+B1F5 E9B49B
+B1F6 E5A1A9
+B1F7 E696BC
+B1F8 E6B19A
+B1F9 E794A5
+B1FA E587B9
+B1FB E5A4AE
+B1FC E5A5A5
+B1FD E5BE80
+B1FE E5BF9C
+B2A1 E68ABC
+B2A2 E697BA
+B2A3 E6A8AA
+B2A4 E6ACA7
+B2A5 E6AEB4
+B2A6 E78E8B
+B2A7 E7BF81
+B2A8 E8A596
+B2A9 E9B4AC
+B2AA E9B48E
+B2AB E9BB84
+B2AC E5B2A1
+B2AD E6B296
+B2AE E88DBB
+B2AF E58484
+B2B0 E5B18B
+B2B1 E686B6
+B2B2 E88786
+B2B3 E6A1B6
+B2B4 E789A1
+B2B5 E4B999
+B2B6 E4BFBA
+B2B7 E58DB8
+B2B8 E681A9
+B2B9 E6B8A9
+B2BA E7A98F
+B2BB E99FB3
+B2BC E4B88B
+B2BD E58C96
+B2BE E4BBAE
+B2BF E4BD95
+B2C0 E4BCBD
+B2C1 E4BEA1
+B2C2 E4BDB3
+B2C3 E58AA0
+B2C4 E58FAF
+B2C5 E59889
+B2C6 E5A48F
+B2C7 E5AB81
+B2C8 E5AEB6
+B2C9 E5AFA1
+B2CA E7A791
+B2CB E69A87
+B2CC E69E9C
+B2CD E69EB6
+B2CE E6AD8C
+B2CF E6B2B3
+B2D0 E781AB
+B2D1 E78F82
+B2D2 E7A68D
+B2D3 E7A6BE
+B2D4 E7A8BC
+B2D5 E7AE87
+B2D6 E88AB1
+B2D7 E88B9B
+B2D8 E88C84
+B2D9 E88DB7
+B2DA E88FAF
+B2DB E88F93
+B2DC E89DA6
+B2DD E8AAB2
+B2DE E598A9
+B2DF E8B2A8
+B2E0 E8BFA6
+B2E1 E9818E
+B2E2 E99C9E
+B2E3 E89A8A
+B2E4 E4BF84
+B2E5 E5B3A8
+B2E6 E68891
+B2E7 E78999
+B2E8 E794BB
+B2E9 E887A5
+B2EA E88ABD
+B2EB E89BBE
+B2EC E8B380
+B2ED E99B85
+B2EE E9A493
+B2EF E9A795
+B2F0 E4BB8B
+B2F1 E4BC9A
+B2F2 E8A7A3
+B2F3 E59B9E
+B2F4 E5A18A
+B2F5 E5A38A
+B2F6 E5BBBB
+B2F7 E5BFAB
+B2F8 E680AA
+B2F9 E68294
+B2FA E681A2
+B2FB E68790
+B2FC E68892
+B2FD E68B90
+B2FE E694B9
+B3A1 E9AD81
+B3A2 E699A6
+B3A3 E6A2B0
+B3A4 E6B5B7
+B3A5 E781B0
+B3A6 E7958C
+B3A7 E79A86
+B3A8 E7B5B5
+B3A9 E88AA5
+B3AA E89FB9
+B3AB E9968B
+B3AC E99A8E
+B3AD E8B29D
+B3AE E587B1
+B3AF E58ABE
+B3B0 E5A496
+B3B1 E592B3
+B3B2 E5AEB3
+B3B3 E5B496
+B3B4 E685A8
+B3B5 E6A682
+B3B6 E6B6AF
+B3B7 E7A28D
+B3B8 E8938B
+B3B9 E8A197
+B3BA E8A9B2
+B3BB E98EA7
+B3BC E9AAB8
+B3BD E6B5AC
+B3BE E9A6A8
+B3BF E89B99
+B3C0 E59EA3
+B3C1 E69FBF
+B3C2 E89B8E
+B3C3 E9888E
+B3C4 E58A83
+B3C5 E59A87
+B3C6 E59084
+B3C7 E5BB93
+B3C8 E68BA1
+B3C9 E692B9
+B3CA E6A0BC
+B3CB E6A0B8
+B3CC E6AEBB
+B3CD E78DB2
+B3CE E7A2BA
+B3CF E7A9AB
+B3D0 E8A69A
+B3D1 E8A792
+B3D2 E8B5AB
+B3D3 E8BC83
+B3D4 E983AD
+B3D5 E996A3
+B3D6 E99A94
+B3D7 E99DA9
+B3D8 E5ADA6
+B3D9 E5B2B3
+B3DA E6A5BD
+B3DB E9A18D
+B3DC E9A18E
+B3DD E68E9B
+B3DE E7ACA0
+B3DF E6A8AB
+B3E0 E6A9BF
+B3E1 E6A2B6
+B3E2 E9B08D
+B3E3 E6BD9F
+B3E4 E589B2
+B3E5 E5969D
+B3E6 E681B0
+B3E7 E68BAC
+B3E8 E6B4BB
+B3E9 E6B887
+B3EA E6BB91
+B3EB E8919B
+B3EC E8A490
+B3ED E8BD84
+B3EE E4B894
+B3EF E9B0B9
+B3F0 E58FB6
+B3F1 E6A49B
+B3F2 E6A8BA
+B3F3 E99E84
+B3F4 E6A0AA
+B3F5 E5859C
+B3F6 E7AB83
+B3F7 E892B2
+B3F8 E9879C
+B3F9 E98E8C
+B3FA E5999B
+B3FB E9B4A8
+B3FC E6A0A2
+B3FD E88C85
+B3FE E890B1
+B4A1 E7B2A5
+B4A2 E58888
+B4A3 E88B85
+B4A4 E793A6
+B4A5 E4B9BE
+B4A6 E4BE83
+B4A7 E586A0
+B4A8 E5AF92
+B4A9 E5888A
+B4AA E58B98
+B4AB E58BA7
+B4AC E5B7BB
+B4AD E5969A
+B4AE E5A0AA
+B4AF E5A7A6
+B4B0 E5AE8C
+B4B1 E5AE98
+B4B2 E5AF9B
+B4B3 E5B9B2
+B4B4 E5B9B9
+B4B5 E682A3
+B4B6 E6849F
+B4B7 E685A3
+B4B8 E686BE
+B4B9 E68F9B
+B4BA E695A2
+B4BB E69F91
+B4BC E6A193
+B4BD E6A3BA
+B4BE E6ACBE
+B4BF E6AD93
+B4C0 E6B197
+B4C1 E6BCA2
+B4C2 E6BE97
+B4C3 E6BD85
+B4C4 E792B0
+B4C5 E79498
+B4C6 E79BA3
+B4C7 E79C8B
+B4C8 E7ABBF
+B4C9 E7AEA1
+B4CA E7B0A1
+B4CB E7B7A9
+B4CC E7BCB6
+B4CD E7BFB0
+B4CE E8829D
+B4CF E889A6
+B4D0 E88E9E
+B4D1 E8A6B3
+B4D2 E8AB8C
+B4D3 E8B2AB
+B4D4 E98284
+B4D5 E99191
+B4D6 E99693
+B4D7 E99691
+B4D8 E996A2
+B4D9 E999A5
+B4DA E99F93
+B4DB E9A4A8
+B4DC E88898
+B4DD E4B8B8
+B4DE E590AB
+B4DF E5B2B8
+B4E0 E5B78C
+B4E1 E78EA9
+B4E2 E7998C
+B4E3 E79CBC
+B4E4 E5B2A9
+B4E5 E7BFAB
+B4E6 E8B48B
+B4E7 E99B81
+B4E8 E9A091
+B4E9 E9A194
+B4EA E9A198
+B4EB E4BC81
+B4EC E4BC8E
+B4ED E58DB1
+B4EE E5969C
+B4EF E599A8
+B4F0 E59FBA
+B4F1 E5A587
+B4F2 E5AC89
+B4F3 E5AF84
+B4F4 E5B290
+B4F5 E5B88C
+B4F6 E5B9BE
+B4F7 E5BF8C
+B4F8 E68FAE
+B4F9 E69CBA
+B4FA E69797
+B4FB E697A2
+B4FC E69C9F
+B4FD E6A38B
+B4FE E6A384
+B5A1 E6A99F
+B5A2 E5B8B0
+B5A3 E6AF85
+B5A4 E6B097
+B5A5 E6B1BD
+B5A6 E795BF
+B5A7 E7A588
+B5A8 E5ADA3
+B5A9 E7A880
+B5AA E7B480
+B5AB E5BEBD
+B5AC E8A68F
+B5AD E8A898
+B5AE E8B2B4
+B5AF E8B5B7
+B5B0 E8BB8C
+B5B1 E8BC9D
+B5B2 E9A3A2
+B5B3 E9A88E
+B5B4 E9ACBC
+B5B5 E4BA80
+B5B6 E581BD
+B5B7 E58480
+B5B8 E5A693
+B5B9 E5AE9C
+B5BA E688AF
+B5BB E68A80
+B5BC E693AC
+B5BD E6ACBA
+B5BE E78AA0
+B5BF E79691
+B5C0 E7A587
+B5C1 E7BEA9
+B5C2 E89FBB
+B5C3 E8AABC
+B5C4 E8ADB0
+B5C5 E68EAC
+B5C6 E88F8A
+B5C7 E99EA0
+B5C8 E59089
+B5C9 E59083
+B5CA E596AB
+B5CB E6A194
+B5CC E6A998
+B5CD E8A9B0
+B5CE E7A0A7
+B5CF E69DB5
+B5D0 E9BB8D
+B5D1 E58DB4
+B5D2 E5AEA2
+B5D3 E8849A
+B5D4 E89990
+B5D5 E98086
+B5D6 E4B898
+B5D7 E4B985
+B5D8 E4BB87
+B5D9 E4BC91
+B5DA E58F8A
+B5DB E590B8
+B5DC E5AEAE
+B5DD E5BC93
+B5DE E680A5
+B5DF E69591
+B5E0 E69CBD
+B5E1 E6B182
+B5E2 E6B1B2
+B5E3 E6B3A3
+B5E4 E781B8
+B5E5 E79083
+B5E6 E7A9B6
+B5E7 E7AAAE
+B5E8 E7AC88
+B5E9 E7B49A
+B5EA E7B3BE
+B5EB E7B5A6
+B5EC E697A7
+B5ED E7899B
+B5EE E58EBB
+B5EF E5B185
+B5F0 E5B7A8
+B5F1 E68B92
+B5F2 E68BA0
+B5F3 E68C99
+B5F4 E6B8A0
+B5F5 E8999A
+B5F6 E8A8B1
+B5F7 E8B79D
+B5F8 E98BB8
+B5F9 E6BC81
+B5FA E7A6A6
+B5FB E9AD9A
+B5FC E4BAA8
+B5FD E4BAAB
+B5FE E4BAAC
+B6A1 E4BE9B
+B6A2 E4BEA0
+B6A3 E58391
+B6A4 E58587
+B6A5 E7ABB6
+B6A6 E585B1
+B6A7 E587B6
+B6A8 E58D94
+B6A9 E58CA1
+B6AA E58DBF
+B6AB E58FAB
+B6AC E596AC
+B6AD E5A283
+B6AE E5B3A1
+B6AF E5BCB7
+B6B0 E5BD8A
+B6B1 E680AF
+B6B2 E68190
+B6B3 E681AD
+B6B4 E68C9F
+B6B5 E69599
+B6B6 E6A98B
+B6B7 E6B381
+B6B8 E78B82
+B6B9 E78BAD
+B6BA E79FAF
+B6BB E883B8
+B6BC E88485
+B6BD E88888
+B6BE E8958E
+B6BF E983B7
+B6C0 E98FA1
+B6C1 E99FBF
+B6C2 E9A597
+B6C3 E9A99A
+B6C4 E4BBB0
+B6C5 E5879D
+B6C6 E5B0AD
+B6C7 E69A81
+B6C8 E6A5AD
+B6C9 E5B180
+B6CA E69BB2
+B6CB E6A5B5
+B6CC E78E89
+B6CD E6A190
+B6CE E7B281
+B6CF E58385
+B6D0 E58BA4
+B6D1 E59D87
+B6D2 E5B7BE
+B6D3 E98CA6
+B6D4 E696A4
+B6D5 E6ACA3
+B6D6 E6ACBD
+B6D7 E790B4
+B6D8 E7A681
+B6D9 E7A6BD
+B6DA E7AD8B
+B6DB E7B78A
+B6DC E88AB9
+B6DD E88F8C
+B6DE E8A1BF
+B6DF E8A59F
+B6E0 E8ACB9
+B6E1 E8BF91
+B6E2 E98791
+B6E3 E5909F
+B6E4 E98A80
+B6E5 E4B99D
+B6E6 E580B6
+B6E7 E58FA5
+B6E8 E58CBA
+B6E9 E78B97
+B6EA E78E96
+B6EB E79FA9
+B6EC E88BA6
+B6ED E8BAAF
+B6EE E9A786
+B6EF E9A788
+B6F0 E9A792
+B6F1 E585B7
+B6F2 E6849A
+B6F3 E8999E
+B6F4 E596B0
+B6F5 E7A9BA
+B6F6 E581B6
+B6F7 E5AF93
+B6F8 E98187
+B6F9 E99A85
+B6FA E4B8B2
+B6FB E6AB9B
+B6FC E987A7
+B6FD E5B191
+B6FE E5B188
+B7A1 E68E98
+B7A2 E7AA9F
+B7A3 E6B293
+B7A4 E99DB4
+B7A5 E8BDA1
+B7A6 E7AAAA
+B7A7 E7868A
+B7A8 E99A88
+B7A9 E7B282
+B7AA E6A097
+B7AB E7B9B0
+B7AC E6A191
+B7AD E98DAC
+B7AE E58BB2
+B7AF E5909B
+B7B0 E896AB
+B7B1 E8A893
+B7B2 E7BEA4
+B7B3 E8BB8D
+B7B4 E983A1
+B7B5 E58DA6
+B7B6 E8A288
+B7B7 E7A581
+B7B8 E4BF82
+B7B9 E582BE
+B7BA E58891
+B7BB E58584
+B7BC E59593
+B7BD E59CAD
+B7BE E78FAA
+B7BF E59E8B
+B7C0 E5A591
+B7C1 E5BDA2
+B7C2 E5BE84
+B7C3 E681B5
+B7C4 E685B6
+B7C5 E685A7
+B7C6 E686A9
+B7C7 E68EB2
+B7C8 E690BA
+B7C9 E695AC
+B7CA E699AF
+B7CB E6A182
+B7CC E6B893
+B7CD E795A6
+B7CE E7A8BD
+B7CF E7B3BB
+B7D0 E7B58C
+B7D1 E7B699
+B7D2 E7B98B
+B7D3 E7BDAB
+B7D4 E88C8E
+B7D5 E88D8A
+B7D6 E89B8D
+B7D7 E8A888
+B7D8 E8A9A3
+B7D9 E8ADA6
+B7DA E8BBBD
+B7DB E9A09A
+B7DC E9B68F
+B7DD E88AB8
+B7DE E8BF8E
+B7DF E9AFA8
+B7E0 E58A87
+B7E1 E6889F
+B7E2 E69283
+B7E3 E6BF80
+B7E4 E99A99
+B7E5 E6A181
+B7E6 E58291
+B7E7 E6ACA0
+B7E8 E6B1BA
+B7E9 E6BD94
+B7EA E7A9B4
+B7EB E7B590
+B7EC E8A180
+B7ED E8A8A3
+B7EE E69C88
+B7EF E4BBB6
+B7F0 E580B9
+B7F1 E580A6
+B7F2 E581A5
+B7F3 E585BC
+B7F4 E588B8
+B7F5 E589A3
+B7F6 E596A7
+B7F7 E59C8F
+B7F8 E5A085
+B7F9 E5AB8C
+B7FA E5BBBA
+B7FB E686B2
+B7FC E687B8
+B7FD E68BB3
+B7FE E68DB2
+B8A1 E6A49C
+B8A2 E6A8A9
+B8A3 E789BD
+B8A4 E78AAC
+B8A5 E78CAE
+B8A6 E7A094
+B8A7 E7A1AF
+B8A8 E7B5B9
+B8A9 E79C8C
+B8AA E882A9
+B8AB E8A68B
+B8AC E8AC99
+B8AD E8B3A2
+B8AE E8BB92
+B8AF E981A3
+B8B0 E98DB5
+B8B1 E999BA
+B8B2 E9A195
+B8B3 E9A893
+B8B4 E9B9B8
+B8B5 E58583
+B8B6 E58E9F
+B8B7 E58EB3
+B8B8 E5B9BB
+B8B9 E5BCA6
+B8BA E6B89B
+B8BB E6BA90
+B8BC E78E84
+B8BD E78FBE
+B8BE E7B583
+B8BF E888B7
+B8C0 E8A880
+B8C1 E8ABBA
+B8C2 E99990
+B8C3 E4B98E
+B8C4 E5808B
+B8C5 E58FA4
+B8C6 E591BC
+B8C7 E59BBA
+B8C8 E5A791
+B8C9 E5ADA4
+B8CA E5B7B1
+B8CB E5BAAB
+B8CC E5BCA7
+B8CD E688B8
+B8CE E69585
+B8CF E69EAF
+B8D0 E6B996
+B8D1 E78B90
+B8D2 E7B38A
+B8D3 E8A2B4
+B8D4 E882A1
+B8D5 E883A1
+B8D6 E88FB0
+B8D7 E8998E
+B8D8 E8AA87
+B8D9 E8B7A8
+B8DA E988B7
+B8DB E99B87
+B8DC E9A1A7
+B8DD E9BC93
+B8DE E4BA94
+B8DF E4BA92
+B8E0 E4BC8D
+B8E1 E58D88
+B8E2 E59189
+B8E3 E590BE
+B8E4 E5A8AF
+B8E5 E5BE8C
+B8E6 E5BEA1
+B8E7 E6829F
+B8E8 E6A2A7
+B8E9 E6AA8E
+B8EA E7919A
+B8EB E7A281
+B8EC E8AA9E
+B8ED E8AAA4
+B8EE E8ADB7
+B8EF E98690
+B8F0 E4B99E
+B8F1 E9AF89
+B8F2 E4BAA4
+B8F3 E4BDBC
+B8F4 E4BEAF
+B8F5 E58099
+B8F6 E58096
+B8F7 E58589
+B8F8 E585AC
+B8F9 E58A9F
+B8FA E58AB9
+B8FB E58BBE
+B8FC E58E9A
+B8FD E58FA3
+B8FE E59091
+B9A1 E5908E
+B9A2 E59689
+B9A3 E59D91
+B9A4 E59EA2
+B9A5 E5A5BD
+B9A6 E5AD94
+B9A7 E5AD9D
+B9A8 E5AE8F
+B9A9 E5B7A5
+B9AA E5B7A7
+B9AB E5B7B7
+B9AC E5B9B8
+B9AD E5BA83
+B9AE E5BA9A
+B9AF E5BAB7
+B9B0 E5BC98
+B9B1 E68192
+B9B2 E6858C
+B9B3 E68A97
+B9B4 E68B98
+B9B5 E68EA7
+B9B6 E694BB
+B9B7 E69882
+B9B8 E69983
+B9B9 E69BB4
+B9BA E69DAD
+B9BB E6A0A1
+B9BC E6A297
+B9BD E6A78B
+B9BE E6B19F
+B9BF E6B4AA
+B9C0 E6B5A9
+B9C1 E6B8AF
+B9C2 E6BA9D
+B9C3 E794B2
+B9C4 E79A87
+B9C5 E7A1AC
+B9C6 E7A8BF
+B9C7 E7B3A0
+B9C8 E7B485
+B9C9 E7B498
+B9CA E7B59E
+B9CB E7B6B1
+B9CC E88095
+B9CD E88083
+B9CE E882AF
+B9CF E882B1
+B9D0 E88594
+B9D1 E8868F
+B9D2 E888AA
+B9D3 E88D92
+B9D4 E8A18C
+B9D5 E8A1A1
+B9D6 E8AC9B
+B9D7 E8B2A2
+B9D8 E8B3BC
+B9D9 E9838A
+B9DA E985B5
+B9DB E989B1
+B9DC E7A0BF
+B9DD E98BBC
+B9DE E996A4
+B9DF E9998D
+B9E0 E9A085
+B9E1 E9A699
+B9E2 E9AB98
+B9E3 E9B4BB
+B9E4 E5899B
+B9E5 E58AAB
+B9E6 E58FB7
+B9E7 E59088
+B9E8 E5A395
+B9E9 E68BB7
+B9EA E6BFA0
+B9EB E8B1AA
+B9EC E8BD9F
+B9ED E9BAB9
+B9EE E5858B
+B9EF E588BB
+B9F0 E5918A
+B9F1 E59BBD
+B9F2 E7A980
+B9F3 E985B7
+B9F4 E9B5A0
+B9F5 E9BB92
+B9F6 E78D84
+B9F7 E6BC89
+B9F8 E885B0
+B9F9 E79491
+B9FA E5BFBD
+B9FB E6839A
+B9FC E9AAA8
+B9FD E78B9B
+B9FE E8BEBC
+BAA1 E6ADA4
+BAA2 E9A083
+BAA3 E4BB8A
+BAA4 E59BB0
+BAA5 E59DA4
+BAA6 E5A2BE
+BAA7 E5A99A
+BAA8 E681A8
+BAA9 E68787
+BAAA E6988F
+BAAB E69886
+BAAC E6A0B9
+BAAD E6A2B1
+BAAE E6B7B7
+BAAF E79795
+BAB0 E7B4BA
+BAB1 E889AE
+BAB2 E9AD82
+BAB3 E4BA9B
+BAB4 E4BD90
+BAB5 E58F89
+BAB6 E59486
+BAB7 E5B5AF
+BAB8 E5B7A6
+BAB9 E5B7AE
+BABA E69FBB
+BABB E6B299
+BABC E791B3
+BABD E7A082
+BABE E8A990
+BABF E98E96
+BAC0 E8A39F
+BAC1 E59D90
+BAC2 E5BAA7
+BAC3 E68CAB
+BAC4 E582B5
+BAC5 E582AC
+BAC6 E5868D
+BAC7 E69C80
+BAC8 E59389
+BAC9 E5A19E
+BACA E5A6BB
+BACB E5AEB0
+BACC E5BDA9
+BACD E6898D
+BACE E68EA1
+BACF E6A0BD
+BAD0 E6ADB3
+BAD1 E6B888
+BAD2 E781BD
+BAD3 E98787
+BAD4 E78A80
+BAD5 E7A095
+BAD6 E7A0A6
+BAD7 E7A5AD
+BAD8 E6968E
+BAD9 E7B4B0
+BADA E88F9C
+BADB E8A381
+BADC E8BC89
+BADD E99A9B
+BADE E589A4
+BADF E59CA8
+BAE0 E69D90
+BAE1 E7BDAA
+BAE2 E8B2A1
+BAE3 E586B4
+BAE4 E59D82
+BAE5 E998AA
+BAE6 E5A0BA
+BAE7 E6A68A
+BAE8 E882B4
+BAE9 E592B2
+BAEA E5B48E
+BAEB E59FBC
+BAEC E7A295
+BAED E9B7BA
+BAEE E4BD9C
+BAEF E5898A
+BAF0 E5928B
+BAF1 E690BE
+BAF2 E698A8
+BAF3 E69C94
+BAF4 E69FB5
+BAF5 E7AA84
+BAF6 E7AD96
+BAF7 E7B4A2
+BAF8 E98CAF
+BAF9 E6A19C
+BAFA E9AEAD
+BAFB E7ACB9
+BAFC E58C99
+BAFD E5868A
+BAFE E588B7
+BBA1 E5AF9F
+BBA2 E68BB6
+BBA3 E692AE
+BBA4 E693A6
+BBA5 E69CAD
+BBA6 E6AEBA
+BBA7 E896A9
+BBA8 E99B91
+BBA9 E79A90
+BBAA E9AF96
+BBAB E68D8C
+BBAC E98C86
+BBAD E9AEAB
+BBAE E79ABF
+BBAF E69992
+BBB0 E4B889
+BBB1 E58298
+BBB2 E58F82
+BBB3 E5B1B1
+BBB4 E683A8
+BBB5 E69292
+BBB6 E695A3
+BBB7 E6A19F
+BBB8 E787A6
+BBB9 E78F8A
+BBBA E794A3
+BBBB E7AE97
+BBBC E7BA82
+BBBD E89A95
+BBBE E8AE83
+BBBF E8B39B
+BBC0 E985B8
+BBC1 E9A490
+BBC2 E696AC
+BBC3 E69AAB
+BBC4 E6AE8B
+BBC5 E4BB95
+BBC6 E4BB94
+BBC7 E4BCBA
+BBC8 E4BDBF
+BBC9 E588BA
+BBCA E58FB8
+BBCB E58FB2
+BBCC E597A3
+BBCD E59B9B
+BBCE E5A3AB
+BBCF E5A78B
+BBD0 E5A789
+BBD1 E5A7BF
+BBD2 E5AD90
+BBD3 E5B18D
+BBD4 E5B882
+BBD5 E5B8AB
+BBD6 E5BF97
+BBD7 E6809D
+BBD8 E68C87
+BBD9 E694AF
+BBDA E5AD9C
+BBDB E696AF
+BBDC E696BD
+BBDD E697A8
+BBDE E69E9D
+BBDF E6ADA2
+BBE0 E6ADBB
+BBE1 E6B08F
+BBE2 E78D85
+BBE3 E7A589
+BBE4 E7A781
+BBE5 E7B3B8
+BBE6 E7B499
+BBE7 E7B4AB
+BBE8 E882A2
+BBE9 E88482
+BBEA E887B3
+BBEB E8A696
+BBEC E8A99E
+BBED E8A9A9
+BBEE E8A9A6
+BBEF E8AA8C
+BBF0 E8ABAE
+BBF1 E8B387
+BBF2 E8B39C
+BBF3 E99B8C
+BBF4 E9A3BC
+BBF5 E6ADAF
+BBF6 E4BA8B
+BBF7 E4BCBC
+BBF8 E4BE8D
+BBF9 E58590
+BBFA E5AD97
+BBFB E5AFBA
+BBFC E68588
+BBFD E68C81
+BBFE E69982
+BCA1 E6ACA1
+BCA2 E6BB8B
+BCA3 E6B2BB
+BCA4 E788BE
+BCA5 E792BD
+BCA6 E79794
+BCA7 E7A381
+BCA8 E7A4BA
+BCA9 E8808C
+BCAA E880B3
+BCAB E887AA
+BCAC E89294
+BCAD E8BE9E
+BCAE E6B190
+BCAF E9B9BF
+BCB0 E5BC8F
+BCB1 E8AD98
+BCB2 E9B4AB
+BCB3 E7ABBA
+BCB4 E8BBB8
+BCB5 E5AE8D
+BCB6 E99BAB
+BCB7 E4B883
+BCB8 E58FB1
+BCB9 E59FB7
+BCBA E5A4B1
+BCBB E5AB89
+BCBC E5AEA4
+BCBD E68289
+BCBE E6B9BF
+BCBF E6BC86
+BCC0 E796BE
+BCC1 E8B3AA
+BCC2 E5AE9F
+BCC3 E89480
+BCC4 E7AFA0
+BCC5 E581B2
+BCC6 E69FB4
+BCC7 E88A9D
+BCC8 E5B1A1
+BCC9 E8958A
+BCCA E7B89E
+BCCB E8888E
+BCCC E58699
+BCCD E5B084
+BCCE E68DA8
+BCCF E8B5A6
+BCD0 E6969C
+BCD1 E785AE
+BCD2 E7A4BE
+BCD3 E7B497
+BCD4 E88085
+BCD5 E8AC9D
+BCD6 E8BB8A
+BCD7 E981AE
+BCD8 E89B87
+BCD9 E982AA
+BCDA E5809F
+BCDB E58BBA
+BCDC E5B0BA
+BCDD E69D93
+BCDE E781BC
+BCDF E788B5
+BCE0 E9858C
+BCE1 E98788
+BCE2 E98CAB
+BCE3 E88BA5
+BCE4 E5AF82
+BCE5 E5BCB1
+BCE6 E683B9
+BCE7 E4B8BB
+BCE8 E58F96
+BCE9 E5AE88
+BCEA E6898B
+BCEB E69CB1
+BCEC E6AE8A
+BCED E78BA9
+BCEE E78FA0
+BCEF E7A8AE
+BCF0 E885AB
+BCF1 E8B6A3
+BCF2 E98592
+BCF3 E9A696
+BCF4 E58492
+BCF5 E58F97
+BCF6 E591AA
+BCF7 E5AFBF
+BCF8 E68E88
+BCF9 E6A8B9
+BCFA E7B6AC
+BCFB E99C80
+BCFC E59B9A
+BCFD E58F8E
+BCFE E591A8
+BDA1 E5AE97
+BDA2 E5B0B1
+BDA3 E5B79E
+BDA4 E4BFAE
+BDA5 E68481
+BDA6 E68BBE
+BDA7 E6B4B2
+BDA8 E7A780
+BDA9 E7A78B
+BDAA E7B582
+BDAB E7B98D
+BDAC E7BF92
+BDAD E887AD
+BDAE E8889F
+BDAF E89290
+BDB0 E8A186
+BDB1 E8A5B2
+BDB2 E8AE90
+BDB3 E8B9B4
+BDB4 E8BCAF
+BDB5 E980B1
+BDB6 E9858B
+BDB7 E985AC
+BDB8 E99B86
+BDB9 E9869C
+BDBA E4BB80
+BDBB E4BD8F
+BDBC E58585
+BDBD E58D81
+BDBE E5BE93
+BDBF E6888E
+BDC0 E69F94
+BDC1 E6B181
+BDC2 E6B88B
+BDC3 E78DA3
+BDC4 E7B8A6
+BDC5 E9878D
+BDC6 E98A83
+BDC7 E58F94
+BDC8 E5A499
+BDC9 E5AEBF
+BDCA E6B791
+BDCB E7A59D
+BDCC E7B8AE
+BDCD E7B29B
+BDCE E5A1BE
+BDCF E7869F
+BDD0 E587BA
+BDD1 E8A193
+BDD2 E8BFB0
+BDD3 E4BF8A
+BDD4 E5B3BB
+BDD5 E698A5
+BDD6 E79EAC
+BDD7 E7ABA3
+BDD8 E8889C
+BDD9 E9A7BF
+BDDA E58786
+BDDB E5BEAA
+BDDC E697AC
+BDDD E6A5AF
+BDDE E6AE89
+BDDF E6B7B3
+BDE0 E6BA96
+BDE1 E6BDA4
+BDE2 E79BBE
+BDE3 E7B494
+BDE4 E5B7A1
+BDE5 E981B5
+BDE6 E98687
+BDE7 E9A086
+BDE8 E587A6
+BDE9 E5889D
+BDEA E68980
+BDEB E69A91
+BDEC E69B99
+BDED E6B89A
+BDEE E5BAB6
+BDEF E7B792
+BDF0 E7BDB2
+BDF1 E69BB8
+BDF2 E896AF
+BDF3 E897B7
+BDF4 E8ABB8
+BDF5 E58AA9
+BDF6 E58F99
+BDF7 E5A5B3
+BDF8 E5BA8F
+BDF9 E5BE90
+BDFA E68195
+BDFB E98BA4
+BDFC E999A4
+BDFD E582B7
+BDFE E5849F
+BEA1 E58B9D
+BEA2 E58CA0
+BEA3 E58D87
+BEA4 E58FAC
+BEA5 E593A8
+BEA6 E59586
+BEA7 E594B1
+BEA8 E59897
+BEA9 E5A5A8
+BEAA E5A6BE
+BEAB E5A8BC
+BEAC E5AEB5
+BEAD E5B086
+BEAE E5B08F
+BEAF E5B091
+BEB0 E5B09A
+BEB1 E5BA84
+BEB2 E5BA8A
+BEB3 E5BBA0
+BEB4 E5BDB0
+BEB5 E689BF
+BEB6 E68A84
+BEB7 E68B9B
+BEB8 E68E8C
+BEB9 E68DB7
+BEBA E69887
+BEBB E6988C
+BEBC E698AD
+BEBD E699B6
+BEBE E69DBE
+BEBF E6A2A2
+BEC0 E6A89F
+BEC1 E6A8B5
+BEC2 E6B2BC
+BEC3 E6B688
+BEC4 E6B889
+BEC5 E6B998
+BEC6 E784BC
+BEC7 E784A6
+BEC8 E785A7
+BEC9 E79787
+BECA E79C81
+BECB E7A19D
+BECC E7A481
+BECD E7A5A5
+BECE E7A7B0
+BECF E7ABA0
+BED0 E7AC91
+BED1 E7B2A7
+BED2 E7B4B9
+BED3 E88296
+BED4 E88F96
+BED5 E8928B
+BED6 E89589
+BED7 E8A19D
+BED8 E8A3B3
+BED9 E8A89F
+BEDA E8A8BC
+BEDB E8A994
+BEDC E8A9B3
+BEDD E8B1A1
+BEDE E8B39E
+BEDF E986A4
+BEE0 E989A6
+BEE1 E98DBE
+BEE2 E99098
+BEE3 E99A9C
+BEE4 E99E98
+BEE5 E4B88A
+BEE6 E4B888
+BEE7 E4B89E
+BEE8 E4B997
+BEE9 E58697
+BEEA E589B0
+BEEB E59F8E
+BEEC E5A0B4
+BEED E5A38C
+BEEE E5ACA2
+BEEF E5B8B8
+BEF0 E68385
+BEF1 E693BE
+BEF2 E69DA1
+BEF3 E69D96
+BEF4 E6B584
+BEF5 E78AB6
+BEF6 E795B3
+BEF7 E7A9A3
+BEF8 E892B8
+BEF9 E8ADB2
+BEFA E986B8
+BEFB E98CA0
+BEFC E598B1
+BEFD E59FB4
+BEFE E9A3BE
+BFA1 E68BAD
+BFA2 E6A48D
+BFA3 E6AE96
+BFA4 E787AD
+BFA5 E7B994
+BFA6 E881B7
+BFA7 E889B2
+BFA8 E8A7A6
+BFA9 E9A39F
+BFAA E89D95
+BFAB E8BEB1
+BFAC E5B0BB
+BFAD E4BCB8
+BFAE E4BFA1
+BFAF E4BEB5
+BFB0 E59487
+BFB1 E5A8A0
+BFB2 E5AF9D
+BFB3 E5AFA9
+BFB4 E5BF83
+BFB5 E6858E
+BFB6 E68CAF
+BFB7 E696B0
+BFB8 E6998B
+BFB9 E6A3AE
+BFBA E6A69B
+BFBB E6B5B8
+BFBC E6B7B1
+BFBD E794B3
+BFBE E796B9
+BFBF E79C9F
+BFC0 E7A59E
+BFC1 E7A7A6
+BFC2 E7B4B3
+BFC3 E887A3
+BFC4 E88AAF
+BFC5 E896AA
+BFC6 E8A6AA
+BFC7 E8A8BA
+BFC8 E8BAAB
+BFC9 E8BE9B
+BFCA E980B2
+BFCB E9879D
+BFCC E99C87
+BFCD E4BABA
+BFCE E4BB81
+BFCF E58883
+BFD0 E5A1B5
+BFD1 E5A3AC
+BFD2 E5B08B
+BFD3 E7949A
+BFD4 E5B0BD
+BFD5 E8858E
+BFD6 E8A88A
+BFD7 E8BF85
+BFD8 E999A3
+BFD9 E99DAD
+BFDA E7ACA5
+BFDB E8AB8F
+BFDC E9A088
+BFDD E985A2
+BFDE E59BB3
+BFDF E58EA8
+BFE0 E98097
+BFE1 E590B9
+BFE2 E59E82
+BFE3 E5B8A5
+BFE4 E68EA8
+BFE5 E6B0B4
+BFE6 E7828A
+BFE7 E79DA1
+BFE8 E7B28B
+BFE9 E7BFA0
+BFEA E8A1B0
+BFEB E98182
+BFEC E98594
+BFED E98C90
+BFEE E98C98
+BFEF E99A8F
+BFF0 E7919E
+BFF1 E9AB84
+BFF2 E5B487
+BFF3 E5B5A9
+BFF4 E695B0
+BFF5 E69EA2
+BFF6 E8B6A8
+BFF7 E99B9B
+BFF8 E68DAE
+BFF9 E69D89
+BFFA E6A499
+BFFB E88F85
+BFFC E9A097
+BFFD E99B80
+BFFE E8A3BE
+C0A1 E6BE84
+C0A2 E691BA
+C0A3 E5AFB8
+C0A4 E4B896
+C0A5 E780AC
+C0A6 E7959D
+C0A7 E698AF
+C0A8 E58784
+C0A9 E588B6
+C0AA E58BA2
+C0AB E5A793
+C0AC E5BE81
+C0AD E680A7
+C0AE E68890
+C0AF E694BF
+C0B0 E695B4
+C0B1 E6989F
+C0B2 E699B4
+C0B3 E6A3B2
+C0B4 E6A096
+C0B5 E6ADA3
+C0B6 E6B885
+C0B7 E789B2
+C0B8 E7949F
+C0B9 E79B9B
+C0BA E7B2BE
+C0BB E88196
+C0BC E5A3B0
+C0BD E8A3BD
+C0BE E8A5BF
+C0BF E8AAA0
+C0C0 E8AA93
+C0C1 E8AB8B
+C0C2 E9809D
+C0C3 E98692
+C0C4 E99D92
+C0C5 E99D99
+C0C6 E69689
+C0C7 E7A88E
+C0C8 E88486
+C0C9 E99ABB
+C0CA E5B8AD
+C0CB E6839C
+C0CC E6889A
+C0CD E696A5
+C0CE E69894
+C0CF E69E90
+C0D0 E79FB3
+C0D1 E7A98D
+C0D2 E7B18D
+C0D3 E7B8BE
+C0D4 E8848A
+C0D5 E8B2AC
+C0D6 E8B5A4
+C0D7 E8B7A1
+C0D8 E8B99F
+C0D9 E7A2A9
+C0DA E58887
+C0DB E68B99
+C0DC E68EA5
+C0DD E69182
+C0DE E68A98
+C0DF E8A8AD
+C0E0 E7AA83
+C0E1 E7AF80
+C0E2 E8AAAC
+C0E3 E99BAA
+C0E4 E7B5B6
+C0E5 E8888C
+C0E6 E89D89
+C0E7 E4BB99
+C0E8 E58588
+C0E9 E58D83
+C0EA E58DA0
+C0EB E5AEA3
+C0EC E5B082
+C0ED E5B096
+C0EE E5B79D
+C0EF E688A6
+C0F0 E68987
+C0F1 E692B0
+C0F2 E6A093
+C0F3 E6A0B4
+C0F4 E6B389
+C0F5 E6B585
+C0F6 E6B497
+C0F7 E69F93
+C0F8 E6BD9C
+C0F9 E7858E
+C0FA E785BD
+C0FB E6978B
+C0FC E7A9BF
+C0FD E7AEAD
+C0FE E7B79A
+C1A1 E7B98A
+C1A2 E7BEA8
+C1A3 E885BA
+C1A4 E8889B
+C1A5 E888B9
+C1A6 E896A6
+C1A7 E8A9AE
+C1A8 E8B38E
+C1A9 E8B7B5
+C1AA E981B8
+C1AB E981B7
+C1AC E98AAD
+C1AD E98A91
+C1AE E99683
+C1AF E9AEAE
+C1B0 E5898D
+C1B1 E59684
+C1B2 E6BCB8
+C1B3 E784B6
+C1B4 E585A8
+C1B5 E7A685
+C1B6 E7B995
+C1B7 E886B3
+C1B8 E7B38E
+C1B9 E5998C
+C1BA E5A191
+C1BB E5B2A8
+C1BC E68EAA
+C1BD E69BBE
+C1BE E69BBD
+C1BF E6A59A
+C1C0 E78B99
+C1C1 E7968F
+C1C2 E7968E
+C1C3 E7A48E
+C1C4 E7A596
+C1C5 E7A79F
+C1C6 E7B297
+C1C7 E7B4A0
+C1C8 E7B584
+C1C9 E89887
+C1CA E8A8B4
+C1CB E998BB
+C1CC E981A1
+C1CD E9BCA0
+C1CE E583A7
+C1CF E589B5
+C1D0 E58F8C
+C1D1 E58FA2
+C1D2 E58089
+C1D3 E596AA
+C1D4 E5A3AE
+C1D5 E5A58F
+C1D6 E788BD
+C1D7 E5AE8B
+C1D8 E5B1A4
+C1D9 E58C9D
+C1DA E683A3
+C1DB E683B3
+C1DC E68D9C
+C1DD E68E83
+C1DE E68CBF
+C1DF E68EBB
+C1E0 E6938D
+C1E1 E697A9
+C1E2 E69BB9
+C1E3 E5B7A3
+C1E4 E6A78D
+C1E5 E6A7BD
+C1E6 E6BC95
+C1E7 E787A5
+C1E8 E4BA89
+C1E9 E797A9
+C1EA E79BB8
+C1EB E7AA93
+C1EC E7B39F
+C1ED E7B78F
+C1EE E7B69C
+C1EF E881A1
+C1F0 E88D89
+C1F1 E88D98
+C1F2 E891AC
+C1F3 E892BC
+C1F4 E897BB
+C1F5 E8A385
+C1F6 E8B5B0
+C1F7 E98081
+C1F8 E981AD
+C1F9 E98E97
+C1FA E99C9C
+C1FB E9A892
+C1FC E5838F
+C1FD E5A297
+C1FE E6868E
+C2A1 E88793
+C2A2 E894B5
+C2A3 E8B488
+C2A4 E980A0
+C2A5 E4BF83
+C2A6 E581B4
+C2A7 E58987
+C2A8 E58DB3
+C2A9 E681AF
+C2AA E68D89
+C2AB E69D9F
+C2AC E6B8AC
+C2AD E8B6B3
+C2AE E9809F
+C2AF E4BF97
+C2B0 E5B19E
+C2B1 E8B38A
+C2B2 E6978F
+C2B3 E7B69A
+C2B4 E58D92
+C2B5 E8A296
+C2B6 E585B6
+C2B7 E68F83
+C2B8 E5AD98
+C2B9 E5ADAB
+C2BA E5B08A
+C2BB E6908D
+C2BC E69D91
+C2BD E9819C
+C2BE E4BB96
+C2BF E5A49A
+C2C0 E5A4AA
+C2C1 E6B1B0
+C2C2 E8A991
+C2C3 E594BE
+C2C4 E5A095
+C2C5 E5A6A5
+C2C6 E683B0
+C2C7 E68993
+C2C8 E69F81
+C2C9 E888B5
+C2CA E6A595
+C2CB E99980
+C2CC E9A784
+C2CD E9A8A8
+C2CE E4BD93
+C2CF E5A086
+C2D0 E5AFBE
+C2D1 E88090
+C2D2 E5B2B1
+C2D3 E5B8AF
+C2D4 E5BE85
+C2D5 E680A0
+C2D6 E6858B
+C2D7 E688B4
+C2D8 E69BBF
+C2D9 E6B3B0
+C2DA E6BB9E
+C2DB E8838E
+C2DC E885BF
+C2DD E88B94
+C2DE E8A28B
+C2DF E8B2B8
+C2E0 E98080
+C2E1 E980AE
+C2E2 E99A8A
+C2E3 E9BB9B
+C2E4 E9AF9B
+C2E5 E4BBA3
+C2E6 E58FB0
+C2E7 E5A4A7
+C2E8 E7ACAC
+C2E9 E9868D
+C2EA E9A18C
+C2EB E9B7B9
+C2EC E6BB9D
+C2ED E780A7
+C2EE E58D93
+C2EF E59584
+C2F0 E5AE85
+C2F1 E68998
+C2F2 E68A9E
+C2F3 E68B93
+C2F4 E6B2A2
+C2F5 E6BFAF
+C2F6 E790A2
+C2F7 E8A897
+C2F8 E990B8
+C2F9 E6BF81
+C2FA E8ABBE
+C2FB E88CB8
+C2FC E587A7
+C2FD E89BB8
+C2FE E58FAA
+C3A1 E58FA9
+C3A2 E4BD86
+C3A3 E98194
+C3A4 E8BEB0
+C3A5 E5A5AA
+C3A6 E884B1
+C3A7 E5B7BD
+C3A8 E7ABAA
+C3A9 E8BEBF
+C3AA E6A39A
+C3AB E8B0B7
+C3AC E78BB8
+C3AD E9B188
+C3AE E6A8BD
+C3AF E8AAB0
+C3B0 E4B8B9
+C3B1 E58D98
+C3B2 E59886
+C3B3 E59DA6
+C3B4 E68B85
+C3B5 E68EA2
+C3B6 E697A6
+C3B7 E6AD8E
+C3B8 E6B7A1
+C3B9 E6B99B
+C3BA E782AD
+C3BB E79FAD
+C3BC E7ABAF
+C3BD E7AEAA
+C3BE E7B6BB
+C3BF E880BD
+C3C0 E88386
+C3C1 E89B8B
+C3C2 E8AA95
+C3C3 E98D9B
+C3C4 E59BA3
+C3C5 E5A387
+C3C6 E5BCBE
+C3C7 E696AD
+C3C8 E69A96
+C3C9 E6AA80
+C3CA E6AEB5
+C3CB E794B7
+C3CC E8AB87
+C3CD E580A4
+C3CE E79FA5
+C3CF E59CB0
+C3D0 E5BC9B
+C3D1 E681A5
+C3D2 E699BA
+C3D3 E6B1A0
+C3D4 E797B4
+C3D5 E7A89A
+C3D6 E7BDAE
+C3D7 E887B4
+C3D8 E89C98
+C3D9 E98185
+C3DA E9A6B3
+C3DB E7AF89
+C3DC E7959C
+C3DD E7ABB9
+C3DE E7AD91
+C3DF E89384
+C3E0 E98090
+C3E1 E7A7A9
+C3E2 E7AA92
+C3E3 E88CB6
+C3E4 E5ABA1
+C3E5 E79D80
+C3E6 E4B8AD
+C3E7 E4BBB2
+C3E8 E5AE99
+C3E9 E5BFA0
+C3EA E68ABD
+C3EB E698BC
+C3EC E69FB1
+C3ED E6B3A8
+C3EE E899AB
+C3EF E8A1B7
+C3F0 E8A8BB
+C3F1 E9858E
+C3F2 E98BB3
+C3F3 E9A790
+C3F4 E6A897
+C3F5 E780A6
+C3F6 E78CAA
+C3F7 E88BA7
+C3F8 E89197
+C3F9 E8B2AF
+C3FA E4B881
+C3FB E58586
+C3FC E5878B
+C3FD E5968B
+C3FE E5AFB5
+C4A1 E5B896
+C4A2 E5B8B3
+C4A3 E5BA81
+C4A4 E5BC94
+C4A5 E5BCB5
+C4A6 E5BDAB
+C4A7 E5BEB4
+C4A8 E687B2
+C4A9 E68C91
+C4AA E69AA2
+C4AB E69C9D
+C4AC E6BDAE
+C4AD E78992
+C4AE E794BA
+C4AF E79CBA
+C4B0 E881B4
+C4B1 E884B9
+C4B2 E885B8
+C4B3 E89DB6
+C4B4 E8AABF
+C4B5 E8AB9C
+C4B6 E8B685
+C4B7 E8B7B3
+C4B8 E98A9A
+C4B9 E995B7
+C4BA E9A082
+C4BB E9B3A5
+C4BC E58B85
+C4BD E68D97
+C4BE E79BB4
+C4BF E69C95
+C4C0 E6B288
+C4C1 E78F8D
+C4C2 E8B383
+C4C3 E98EAE
+C4C4 E999B3
+C4C5 E6B4A5
+C4C6 E5A29C
+C4C7 E6A48E
+C4C8 E6A78C
+C4C9 E8BFBD
+C4CA E98E9A
+C4CB E7979B
+C4CC E9809A
+C4CD E5A19A
+C4CE E6A082
+C4CF E68EB4
+C4D0 E6A7BB
+C4D1 E4BD83
+C4D2 E6BCAC
+C4D3 E69F98
+C4D4 E8BEBB
+C4D5 E894A6
+C4D6 E7B6B4
+C4D7 E98D94
+C4D8 E6A4BF
+C4D9 E6BDB0
+C4DA E59DAA
+C4DB E5A3B7
+C4DC E5ACAC
+C4DD E7B4AC
+C4DE E788AA
+C4DF E5908A
+C4E0 E987A3
+C4E1 E9B6B4
+C4E2 E4BAAD
+C4E3 E4BD8E
+C4E4 E5819C
+C4E5 E581B5
+C4E6 E58983
+C4E7 E8B29E
+C4E8 E59188
+C4E9 E5A0A4
+C4EA E5AE9A
+C4EB E5B89D
+C4EC E5BA95
+C4ED E5BAAD
+C4EE E5BBB7
+C4EF E5BC9F
+C4F0 E6828C
+C4F1 E68AB5
+C4F2 E68CBA
+C4F3 E68F90
+C4F4 E6A2AF
+C4F5 E6B180
+C4F6 E7A287
+C4F7 E7A68E
+C4F8 E7A88B
+C4F9 E7B7A0
+C4FA E88987
+C4FB E8A882
+C4FC E8ABA6
+C4FD E8B984
+C4FE E98093
+C5A1 E982B8
+C5A2 E984AD
+C5A3 E98798
+C5A4 E9BC8E
+C5A5 E6B3A5
+C5A6 E69198
+C5A7 E693A2
+C5A8 E695B5
+C5A9 E6BBB4
+C5AA E79A84
+C5AB E7AC9B
+C5AC E981A9
+C5AD E98F91
+C5AE E6BABA
+C5AF E593B2
+C5B0 E5BEB9
+C5B1 E692A4
+C5B2 E8BD8D
+C5B3 E8BFAD
+C5B4 E98984
+C5B5 E585B8
+C5B6 E5A1AB
+C5B7 E5A4A9
+C5B8 E5B195
+C5B9 E5BA97
+C5BA E6B7BB
+C5BB E7BA8F
+C5BC E7949C
+C5BD E8B2BC
+C5BE E8BBA2
+C5BF E9A19B
+C5C0 E782B9
+C5C1 E4BC9D
+C5C2 E6AEBF
+C5C3 E6BEB1
+C5C4 E794B0
+C5C5 E99BBB
+C5C6 E5858E
+C5C7 E59090
+C5C8 E5A0B5
+C5C9 E5A197
+C5CA E5A6AC
+C5CB E5B1A0
+C5CC E5BE92
+C5CD E69697
+C5CE E69D9C
+C5CF E6B8A1
+C5D0 E799BB
+C5D1 E88F9F
+C5D2 E8B3AD
+C5D3 E98094
+C5D4 E983BD
+C5D5 E98D8D
+C5D6 E7A0A5
+C5D7 E7A0BA
+C5D8 E58AAA
+C5D9 E5BAA6
+C5DA E59C9F
+C5DB E5A5B4
+C5DC E68092
+C5DD E58092
+C5DE E5859A
+C5DF E586AC
+C5E0 E5878D
+C5E1 E58880
+C5E2 E59490
+C5E3 E5A194
+C5E4 E5A198
+C5E5 E5A597
+C5E6 E5AE95
+C5E7 E5B3B6
+C5E8 E5B68B
+C5E9 E682BC
+C5EA E68A95
+C5EB E690AD
+C5EC E69DB1
+C5ED E6A183
+C5EE E6A2BC
+C5EF E6A39F
+C5F0 E79B97
+C5F1 E6B798
+C5F2 E6B9AF
+C5F3 E6B69B
+C5F4 E781AF
+C5F5 E78788
+C5F6 E5BD93
+C5F7 E79798
+C5F8 E7A5B7
+C5F9 E7AD89
+C5FA E7AD94
+C5FB E7AD92
+C5FC E7B396
+C5FD E7B5B1
+C5FE E588B0
+C6A1 E891A3
+C6A2 E895A9
+C6A3 E897A4
+C6A4 E8A88E
+C6A5 E8AC84
+C6A6 E8B186
+C6A7 E8B88F
+C6A8 E98083
+C6A9 E9808F
+C6AA E99099
+C6AB E999B6
+C6AC E9A0AD
+C6AD E9A8B0
+C6AE E99798
+C6AF E5838D
+C6B0 E58B95
+C6B1 E5908C
+C6B2 E5A082
+C6B3 E5B08E
+C6B4 E686A7
+C6B5 E6929E
+C6B6 E6B49E
+C6B7 E79EB3
+C6B8 E7ABA5
+C6B9 E883B4
+C6BA E89084
+C6BB E98193
+C6BC E98A85
+C6BD E5B3A0
+C6BE E9B487
+C6BF E58CBF
+C6C0 E5BE97
+C6C1 E5BEB3
+C6C2 E6B69C
+C6C3 E789B9
+C6C4 E79DA3
+C6C5 E7A6BF
+C6C6 E7AFA4
+C6C7 E6AF92
+C6C8 E78BAC
+C6C9 E8AAAD
+C6CA E6A083
+C6CB E6A9A1
+C6CC E587B8
+C6CD E7AA81
+C6CE E6A4B4
+C6CF E5B18A
+C6D0 E9B3B6
+C6D1 E88BAB
+C6D2 E5AF85
+C6D3 E98589
+C6D4 E7809E
+C6D5 E599B8
+C6D6 E5B1AF
+C6D7 E68387
+C6D8 E695A6
+C6D9 E6B28C
+C6DA E8B19A
+C6DB E98181
+C6DC E9A093
+C6DD E59191
+C6DE E69B87
+C6DF E9888D
+C6E0 E5A588
+C6E1 E982A3
+C6E2 E58685
+C6E3 E4B98D
+C6E4 E587AA
+C6E5 E89699
+C6E6 E8AC8E
+C6E7 E78198
+C6E8 E68DBA
+C6E9 E98D8B
+C6EA E6A5A2
+C6EB E9A6B4
+C6EC E7B884
+C6ED E795B7
+C6EE E58D97
+C6EF E6A5A0
+C6F0 E8BB9F
+C6F1 E99BA3
+C6F2 E6B19D
+C6F3 E4BA8C
+C6F4 E5B0BC
+C6F5 E5BC90
+C6F6 E8BFA9
+C6F7 E58C82
+C6F8 E8B391
+C6F9 E88289
+C6FA E899B9
+C6FB E5BBBF
+C6FC E697A5
+C6FD E4B9B3
+C6FE E585A5
+C7A1 E5A682
+C7A2 E5B0BF
+C7A3 E99FAE
+C7A4 E4BBBB
+C7A5 E5A68A
+C7A6 E5BF8D
+C7A7 E8AA8D
+C7A8 E6BFA1
+C7A9 E7A6B0
+C7AA E7A5A2
+C7AB E5AFA7
+C7AC E891B1
+C7AD E78CAB
+C7AE E786B1
+C7AF E5B9B4
+C7B0 E5BFB5
+C7B1 E68DBB
+C7B2 E6929A
+C7B3 E78783
+C7B4 E7B298
+C7B5 E4B983
+C7B6 E5BBBC
+C7B7 E4B98B
+C7B8 E59F9C
+C7B9 E59AA2
+C7BA E682A9
+C7BB E6BF83
+C7BC E7B48D
+C7BD E883BD
+C7BE E884B3
+C7BF E886BF
+C7C0 E8BEB2
+C7C1 E8A697
+C7C2 E89AA4
+C7C3 E5B7B4
+C7C4 E68A8A
+C7C5 E692AD
+C7C6 E8A687
+C7C7 E69DB7
+C7C8 E6B3A2
+C7C9 E6B4BE
+C7CA E790B6
+C7CB E7A0B4
+C7CC E5A986
+C7CD E7BDB5
+C7CE E88AAD
+C7CF E9A6AC
+C7D0 E4BFB3
+C7D1 E5BB83
+C7D2 E68B9D
+C7D3 E68E92
+C7D4 E69597
+C7D5 E69DAF
+C7D6 E79B83
+C7D7 E7898C
+C7D8 E8838C
+C7D9 E882BA
+C7DA E8BCA9
+C7DB E9858D
+C7DC E5808D
+C7DD E59FB9
+C7DE E5AA92
+C7DF E6A285
+C7E0 E6A5B3
+C7E1 E785A4
+C7E2 E78BBD
+C7E3 E8B2B7
+C7E4 E5A3B2
+C7E5 E8B3A0
+C7E6 E999AA
+C7E7 E98099
+C7E8 E89DBF
+C7E9 E7A7A4
+C7EA E79FA7
+C7EB E890A9
+C7EC E4BCAF
+C7ED E589A5
+C7EE E58D9A
+C7EF E68B8D
+C7F0 E69F8F
+C7F1 E6B38A
+C7F2 E799BD
+C7F3 E7AE94
+C7F4 E7B295
+C7F5 E888B6
+C7F6 E89684
+C7F7 E8BFAB
+C7F8 E69B9D
+C7F9 E6BCA0
+C7FA E78886
+C7FB E7B89B
+C7FC E88EAB
+C7FD E9A781
+C7FE E9BAA6
+C8A1 E587BD
+C8A2 E7AEB1
+C8A3 E7A1B2
+C8A4 E7AEB8
+C8A5 E88287
+C8A6 E7AD88
+C8A7 E6ABA8
+C8A8 E5B9A1
+C8A9 E8828C
+C8AA E79591
+C8AB E795A0
+C8AC E585AB
+C8AD E989A2
+C8AE E6BA8C
+C8AF E799BA
+C8B0 E98697
+C8B1 E9ABAA
+C8B2 E4BC90
+C8B3 E7BDB0
+C8B4 E68A9C
+C8B5 E7AD8F
+C8B6 E996A5
+C8B7 E9B3A9
+C8B8 E599BA
+C8B9 E5A199
+C8BA E89BA4
+C8BB E99ABC
+C8BC E4BCB4
+C8BD E588A4
+C8BE E58D8A
+C8BF E58F8D
+C8C0 E58F9B
+C8C1 E5B886
+C8C2 E690AC
+C8C3 E69691
+C8C4 E69DBF
+C8C5 E6B0BE
+C8C6 E6B18E
+C8C7 E78988
+C8C8 E78AAF
+C8C9 E78FAD
+C8CA E79594
+C8CB E7B981
+C8CC E888AC
+C8CD E897A9
+C8CE E8B2A9
+C8CF E7AF84
+C8D0 E98786
+C8D1 E785A9
+C8D2 E9A092
+C8D3 E9A3AF
+C8D4 E68CBD
+C8D5 E699A9
+C8D6 E795AA
+C8D7 E79BA4
+C8D8 E7A390
+C8D9 E89583
+C8DA E89BAE
+C8DB E58CAA
+C8DC E58D91
+C8DD E590A6
+C8DE E5A683
+C8DF E5BA87
+C8E0 E5BDBC
+C8E1 E682B2
+C8E2 E68989
+C8E3 E689B9
+C8E4 E68AAB
+C8E5 E69690
+C8E6 E6AF94
+C8E7 E6B38C
+C8E8 E796B2
+C8E9 E79AAE
+C8EA E7A291
+C8EB E7A798
+C8EC E7B78B
+C8ED E7BDB7
+C8EE E882A5
+C8EF E8A2AB
+C8F0 E8AAB9
+C8F1 E8B2BB
+C8F2 E981BF
+C8F3 E99D9E
+C8F4 E9A39B
+C8F5 E6A88B
+C8F6 E7B0B8
+C8F7 E58299
+C8F8 E5B0BE
+C8F9 E5BEAE
+C8FA E69E87
+C8FB E6AF98
+C8FC E790B5
+C8FD E79C89
+C8FE E7BE8E
+C9A1 E9BCBB
+C9A2 E69F8A
+C9A3 E7A897
+C9A4 E58CB9
+C9A5 E7968B
+C9A6 E9ABAD
+C9A7 E5BDA6
+C9A8 E8869D
+C9A9 E88FB1
+C9AA E88298
+C9AB E5BCBC
+C9AC E5BF85
+C9AD E795A2
+C9AE E7AD86
+C9AF E980BC
+C9B0 E6A1A7
+C9B1 E5A7AB
+C9B2 E5AA9B
+C9B3 E7B490
+C9B4 E799BE
+C9B5 E8ACAC
+C9B6 E4BFB5
+C9B7 E5BDAA
+C9B8 E6A899
+C9B9 E6B0B7
+C9BA E6BC82
+C9BB E793A2
+C9BC E7A5A8
+C9BD E8A1A8
+C9BE E8A995
+C9BF E8B1B9
+C9C0 E5BB9F
+C9C1 E68F8F
+C9C2 E79785
+C9C3 E7A792
+C9C4 E88B97
+C9C5 E98CA8
+C9C6 E98BB2
+C9C7 E8929C
+C9C8 E89BAD
+C9C9 E9B0AD
+C9CA E59381
+C9CB E5BDAC
+C9CC E6968C
+C9CD E6B59C
+C9CE E78095
+C9CF E8B2A7
+C9D0 E8B393
+C9D1 E9A0BB
+C9D2 E6958F
+C9D3 E793B6
+C9D4 E4B88D
+C9D5 E4BB98
+C9D6 E59FA0
+C9D7 E5A4AB
+C9D8 E5A9A6
+C9D9 E5AF8C
+C9DA E586A8
+C9DB E5B883
+C9DC E5BA9C
+C9DD E68096
+C9DE E689B6
+C9DF E695B7
+C9E0 E696A7
+C9E1 E699AE
+C9E2 E6B5AE
+C9E3 E788B6
+C9E4 E7ACA6
+C9E5 E88590
+C9E6 E8869A
+C9E7 E88A99
+C9E8 E8AD9C
+C9E9 E8B2A0
+C9EA E8B3A6
+C9EB E8B5B4
+C9EC E9989C
+C9ED E99984
+C9EE E4BEAE
+C9EF E692AB
+C9F0 E6ADA6
+C9F1 E8889E
+C9F2 E891A1
+C9F3 E895AA
+C9F4 E983A8
+C9F5 E5B081
+C9F6 E6A593
+C9F7 E9A2A8
+C9F8 E891BA
+C9F9 E89597
+C9FA E4BC8F
+C9FB E589AF
+C9FC E5BEA9
+C9FD E5B985
+C9FE E69C8D
+CAA1 E7A68F
+CAA2 E885B9
+CAA3 E8A487
+CAA4 E8A686
+CAA5 E6B7B5
+CAA6 E5BC97
+CAA7 E68995
+CAA8 E6B2B8
+CAA9 E4BB8F
+CAAA E789A9
+CAAB E9AE92
+CAAC E58886
+CAAD E590BB
+CAAE E599B4
+CAAF E5A2B3
+CAB0 E686A4
+CAB1 E689AE
+CAB2 E7849A
+CAB3 E5A5AE
+CAB4 E7B289
+CAB5 E7B39E
+CAB6 E7B49B
+CAB7 E99BB0
+CAB8 E69687
+CAB9 E8819E
+CABA E4B899
+CABB E4BDB5
+CABC E585B5
+CABD E5A180
+CABE E5B9A3
+CABF E5B9B3
+CAC0 E5BC8A
+CAC1 E69F84
+CAC2 E4B8A6
+CAC3 E894BD
+CAC4 E99689
+CAC5 E9999B
+CAC6 E7B1B3
+CAC7 E9A081
+CAC8 E583BB
+CAC9 E5A381
+CACA E79996
+CACB E7A2A7
+CACC E588A5
+CACD E79EA5
+CACE E89491
+CACF E7AE86
+CAD0 E5818F
+CAD1 E5A489
+CAD2 E78987
+CAD3 E7AF87
+CAD4 E7B7A8
+CAD5 E8BEBA
+CAD6 E8BF94
+CAD7 E9818D
+CAD8 E4BEBF
+CAD9 E58B89
+CADA E5A8A9
+CADB E5BC81
+CADC E99EAD
+CADD E4BF9D
+CADE E88897
+CADF E98BAA
+CAE0 E59C83
+CAE1 E68D95
+CAE2 E6ADA9
+CAE3 E794AB
+CAE4 E8A39C
+CAE5 E8BC94
+CAE6 E7A982
+CAE7 E58B9F
+CAE8 E5A293
+CAE9 E68595
+CAEA E6888A
+CAEB E69AAE
+CAEC E6AF8D
+CAED E7B0BF
+CAEE E88FA9
+CAEF E580A3
+CAF0 E4BFB8
+CAF1 E58C85
+CAF2 E59186
+CAF3 E5A0B1
+CAF4 E5A589
+CAF5 E5AE9D
+CAF6 E5B3B0
+CAF7 E5B3AF
+CAF8 E5B4A9
+CAF9 E5BA96
+CAFA E68AB1
+CAFB E68DA7
+CAFC E694BE
+CAFD E696B9
+CAFE E69C8B
+CBA1 E6B395
+CBA2 E6B3A1
+CBA3 E783B9
+CBA4 E7A0B2
+CBA5 E7B8AB
+CBA6 E8839E
+CBA7 E88AB3
+CBA8 E8908C
+CBA9 E893AC
+CBAA E89C82
+CBAB E8A492
+CBAC E8A8AA
+CBAD E8B18A
+CBAE E982A6
+CBAF E98B92
+CBB0 E9A3BD
+CBB1 E9B3B3
+CBB2 E9B5AC
+CBB3 E4B98F
+CBB4 E4BAA1
+CBB5 E5828D
+CBB6 E58996
+CBB7 E59D8A
+CBB8 E5A6A8
+CBB9 E5B8BD
+CBBA E5BF98
+CBBB E5BF99
+CBBC E688BF
+CBBD E69AB4
+CBBE E69C9B
+CBBF E69F90
+CBC0 E6A392
+CBC1 E58692
+CBC2 E7B4A1
+CBC3 E882AA
+CBC4 E886A8
+CBC5 E8AC80
+CBC6 E8B28C
+CBC7 E8B2BF
+CBC8 E989BE
+CBC9 E998B2
+CBCA E590A0
+CBCB E9A0AC
+CBCC E58C97
+CBCD E58395
+CBCE E58D9C
+CBCF E5A2A8
+CBD0 E692B2
+CBD1 E69CB4
+CBD2 E789A7
+CBD3 E79DA6
+CBD4 E7A986
+CBD5 E987A6
+CBD6 E58B83
+CBD7 E6B2A1
+CBD8 E6AE86
+CBD9 E5A080
+CBDA E5B98C
+CBDB E5A594
+CBDC E69CAC
+CBDD E7BFBB
+CBDE E587A1
+CBDF E79B86
+CBE0 E691A9
+CBE1 E7A3A8
+CBE2 E9AD94
+CBE3 E9BABB
+CBE4 E59F8B
+CBE5 E5A6B9
+CBE6 E698A7
+CBE7 E69E9A
+CBE8 E6AF8E
+CBE9 E593A9
+CBEA E6A799
+CBEB E5B995
+CBEC E8869C
+CBED E69E95
+CBEE E9AEAA
+CBEF E69FBE
+CBF0 E9B192
+CBF1 E6A19D
+CBF2 E4BAA6
+CBF3 E4BFA3
+CBF4 E58F88
+CBF5 E68AB9
+CBF6 E69CAB
+CBF7 E6B2AB
+CBF8 E8BF84
+CBF9 E4BEAD
+CBFA E7B9AD
+CBFB E9BABF
+CBFC E4B887
+CBFD E685A2
+CBFE E6BA80
+CCA1 E6BCAB
+CCA2 E89493
+CCA3 E591B3
+CCA4 E69CAA
+CCA5 E9AD85
+CCA6 E5B7B3
+CCA7 E7AE95
+CCA8 E5B2AC
+CCA9 E5AF86
+CCAA E89C9C
+CCAB E6B98A
+CCAC E89391
+CCAD E7A894
+CCAE E88488
+CCAF E5A699
+CCB0 E7B28D
+CCB1 E6B091
+CCB2 E79CA0
+CCB3 E58B99
+CCB4 E5A4A2
+CCB5 E784A1
+CCB6 E7899F
+CCB7 E79F9B
+CCB8 E99CA7
+CCB9 E9B5A1
+CCBA E6A48B
+CCBB E5A9BF
+CCBC E5A898
+CCBD E586A5
+CCBE E5908D
+CCBF E591BD
+CCC0 E6988E
+CCC1 E79B9F
+CCC2 E8BFB7
+CCC3 E98A98
+CCC4 E9B3B4
+CCC5 E5A7AA
+CCC6 E7899D
+CCC7 E6BB85
+CCC8 E5858D
+CCC9 E6A389
+CCCA E7B6BF
+CCCB E7B7AC
+CCCC E99DA2
+CCCD E9BABA
+CCCE E691B8
+CCCF E6A8A1
+CCD0 E88C82
+CCD1 E5A684
+CCD2 E5AD9F
+CCD3 E6AF9B
+CCD4 E78C9B
+CCD5 E79BB2
+CCD6 E7B6B2
+CCD7 E88097
+CCD8 E89299
+CCD9 E584B2
+CCDA E69CA8
+CCDB E9BB99
+CCDC E79BAE
+CCDD E69DA2
+CCDE E58BBF
+CCDF E9A485
+CCE0 E5B0A4
+CCE1 E688BB
+CCE2 E7B1BE
+CCE3 E8B2B0
+CCE4 E5958F
+CCE5 E682B6
+CCE6 E7B48B
+CCE7 E99680
+CCE8 E58C81
+CCE9 E4B99F
+CCEA E586B6
+CCEB E5A49C
+CCEC E788BA
+CCED E880B6
+CCEE E9878E
+CCEF E5BCA5
+CCF0 E79FA2
+CCF1 E58E84
+CCF2 E5BDB9
+CCF3 E7B484
+CCF4 E896AC
+CCF5 E8A8B3
+CCF6 E8BA8D
+CCF7 E99D96
+CCF8 E69FB3
+CCF9 E896AE
+CCFA E99193
+CCFB E68489
+CCFC E68488
+CCFD E6B2B9
+CCFE E79992
+CDA1 E8ABAD
+CDA2 E8BCB8
+CDA3 E594AF
+CDA4 E4BD91
+CDA5 E584AA
+CDA6 E58B87
+CDA7 E58F8B
+CDA8 E5AEA5
+CDA9 E5B9BD
+CDAA E682A0
+CDAB E68682
+CDAC E68F96
+CDAD E69C89
+CDAE E69F9A
+CDAF E6B9A7
+CDB0 E6B68C
+CDB1 E78CB6
+CDB2 E78CB7
+CDB3 E794B1
+CDB4 E7A590
+CDB5 E8A395
+CDB6 E8AA98
+CDB7 E9818A
+CDB8 E98291
+CDB9 E983B5
+CDBA E99B84
+CDBB E89E8D
+CDBC E5A495
+CDBD E4BA88
+CDBE E4BD99
+CDBF E4B88E
+CDC0 E8AA89
+CDC1 E8BCBF
+CDC2 E9A090
+CDC3 E582AD
+CDC4 E5B9BC
+CDC5 E5A696
+CDC6 E5AEB9
+CDC7 E5BAB8
+CDC8 E68F9A
+CDC9 E68FBA
+CDCA E69381
+CDCB E69B9C
+CDCC E6A58A
+CDCD E6A798
+CDCE E6B48B
+CDCF E6BAB6
+CDD0 E78694
+CDD1 E794A8
+CDD2 E7AAAF
+CDD3 E7BE8A
+CDD4 E88080
+CDD5 E89189
+CDD6 E89389
+CDD7 E8A681
+CDD8 E8ACA1
+CDD9 E8B88A
+CDDA E981A5
+CDDB E999BD
+CDDC E9A48A
+CDDD E685BE
+CDDE E68A91
+CDDF E6ACB2
+CDE0 E6B283
+CDE1 E6B5B4
+CDE2 E7BF8C
+CDE3 E7BFBC
+CDE4 E6B780
+CDE5 E7BE85
+CDE6 E89EBA
+CDE7 E8A3B8
+CDE8 E69DA5
+CDE9 E88EB1
+CDEA E9A0BC
+CDEB E99BB7
+CDEC E6B49B
+CDED E7B5A1
+CDEE E890BD
+CDEF E985AA
+CDF0 E4B9B1
+CDF1 E58DB5
+CDF2 E5B590
+CDF3 E6AC84
+CDF4 E6BFAB
+CDF5 E8978D
+CDF6 E898AD
+CDF7 E8A6A7
+CDF8 E588A9
+CDF9 E5908F
+CDFA E5B1A5
+CDFB E69D8E
+CDFC E6A2A8
+CDFD E79086
+CDFE E79283
+CEA1 E797A2
+CEA2 E8A38F
+CEA3 E8A3A1
+CEA4 E9878C
+CEA5 E99BA2
+CEA6 E999B8
+CEA7 E5BE8B
+CEA8 E78E87
+CEA9 E7AB8B
+CEAA E8918E
+CEAB E68EA0
+CEAC E795A5
+CEAD E58A89
+CEAE E6B581
+CEAF E6BA9C
+CEB0 E79089
+CEB1 E79599
+CEB2 E7A1AB
+CEB3 E7B292
+CEB4 E99A86
+CEB5 E7AB9C
+CEB6 E9BE8D
+CEB7 E4BEB6
+CEB8 E685AE
+CEB9 E69785
+CEBA E8999C
+CEBB E4BA86
+CEBC E4BAAE
+CEBD E5839A
+CEBE E4B8A1
+CEBF E5878C
+CEC0 E5AFAE
+CEC1 E69699
+CEC2 E6A281
+CEC3 E6B6BC
+CEC4 E78C9F
+CEC5 E79982
+CEC6 E79EAD
+CEC7 E7A89C
+CEC8 E7B3A7
+CEC9 E889AF
+CECA E8AB92
+CECB E981BC
+CECC E9878F
+CECD E999B5
+CECE E9A098
+CECF E58A9B
+CED0 E7B791
+CED1 E580AB
+CED2 E58E98
+CED3 E69E97
+CED4 E6B78B
+CED5 E78790
+CED6 E790B3
+CED7 E887A8
+CED8 E8BCAA
+CED9 E99AA3
+CEDA E9B197
+CEDB E9BA9F
+CEDC E791A0
+CEDD E5A181
+CEDE E6B699
+CEDF E7B4AF
+CEE0 E9A19E
+CEE1 E4BBA4
+CEE2 E4BCB6
+CEE3 E4BE8B
+CEE4 E586B7
+CEE5 E58AB1
+CEE6 E5B6BA
+CEE7 E6809C
+CEE8 E78EB2
+CEE9 E7A4BC
+CEEA E88B93
+CEEB E988B4
+CEEC E99AB7
+CEED E99BB6
+CEEE E99C8A
+CEEF E9BA97
+CEF0 E9BDA2
+CEF1 E69AA6
+CEF2 E6ADB4
+CEF3 E58897
+CEF4 E58AA3
+CEF5 E78388
+CEF6 E8A382
+CEF7 E5BB89
+CEF8 E6818B
+CEF9 E68690
+CEFA E6BCA3
+CEFB E78589
+CEFC E7B0BE
+CEFD E7B7B4
+CEFE E881AF
+CFA1 E893AE
+CFA2 E980A3
+CFA3 E98CAC
+CFA4 E59182
+CFA5 E9ADAF
+CFA6 E6AB93
+CFA7 E78289
+CFA8 E8B382
+CFA9 E8B7AF
+CFAA E99CB2
+CFAB E58AB4
+CFAC E5A981
+CFAD E5BB8A
+CFAE E5BC84
+CFAF E69C97
+CFB0 E6A5BC
+CFB1 E6A694
+CFB2 E6B5AA
+CFB3 E6BC8F
+CFB4 E789A2
+CFB5 E78BBC
+CFB6 E7AFAD
+CFB7 E88081
+CFB8 E881BE
+CFB9 E89D8B
+CFBA E9838E
+CFBB E585AD
+CFBC E9BA93
+CFBD E7A684
+CFBE E8828B
+CFBF E98CB2
+CFC0 E8AB96
+CFC1 E580AD
+CFC2 E5928C
+CFC3 E8A9B1
+CFC4 E6ADAA
+CFC5 E8B384
+CFC6 E88487
+CFC7 E68391
+CFC8 E69EA0
+CFC9 E9B7B2
+CFCA E4BA99
+CFCB E4BA98
+CFCC E9B090
+CFCD E8A9AB
+CFCE E89781
+CFCF E895A8
+CFD0 E6A480
+CFD1 E6B9BE
+CFD2 E7A297
+CFD3 E88595
+D0A1 E5BC8C
+D0A2 E4B890
+D0A3 E4B895
+D0A4 E4B8AA
+D0A5 E4B8B1
+D0A6 E4B8B6
+D0A7 E4B8BC
+D0A8 E4B8BF
+D0A9 E4B982
+D0AA E4B996
+D0AB E4B998
+D0AC E4BA82
+D0AD E4BA85
+D0AE E8B1AB
+D0AF E4BA8A
+D0B0 E88892
+D0B1 E5BC8D
+D0B2 E4BA8E
+D0B3 E4BA9E
+D0B4 E4BA9F
+D0B5 E4BAA0
+D0B6 E4BAA2
+D0B7 E4BAB0
+D0B8 E4BAB3
+D0B9 E4BAB6
+D0BA E4BB8E
+D0BB E4BB8D
+D0BC E4BB84
+D0BD E4BB86
+D0BE E4BB82
+D0BF E4BB97
+D0C0 E4BB9E
+D0C1 E4BBAD
+D0C2 E4BB9F
+D0C3 E4BBB7
+D0C4 E4BC89
+D0C5 E4BD9A
+D0C6 E4BCB0
+D0C7 E4BD9B
+D0C8 E4BD9D
+D0C9 E4BD97
+D0CA E4BD87
+D0CB E4BDB6
+D0CC E4BE88
+D0CD E4BE8F
+D0CE E4BE98
+D0CF E4BDBB
+D0D0 E4BDA9
+D0D1 E4BDB0
+D0D2 E4BE91
+D0D3 E4BDAF
+D0D4 E4BE86
+D0D5 E4BE96
+D0D6 E58498
+D0D7 E4BF94
+D0D8 E4BF9F
+D0D9 E4BF8E
+D0DA E4BF98
+D0DB E4BF9B
+D0DC E4BF91
+D0DD E4BF9A
+D0DE E4BF90
+D0DF E4BFA4
+D0E0 E4BFA5
+D0E1 E5809A
+D0E2 E580A8
+D0E3 E58094
+D0E4 E580AA
+D0E5 E580A5
+D0E6 E58085
+D0E7 E4BC9C
+D0E8 E4BFB6
+D0E9 E580A1
+D0EA E580A9
+D0EB E580AC
+D0EC E4BFBE
+D0ED E4BFAF
+D0EE E58091
+D0EF E58086
+D0F0 E58183
+D0F1 E58187
+D0F2 E69C83
+D0F3 E58195
+D0F4 E58190
+D0F5 E58188
+D0F6 E5819A
+D0F7 E58196
+D0F8 E581AC
+D0F9 E581B8
+D0FA E58280
+D0FB E5829A
+D0FC E58285
+D0FD E582B4
+D0FE E582B2
+D1A1 E58389
+D1A2 E5838A
+D1A3 E582B3
+D1A4 E58382
+D1A5 E58396
+D1A6 E5839E
+D1A7 E583A5
+D1A8 E583AD
+D1A9 E583A3
+D1AA E583AE
+D1AB E583B9
+D1AC E583B5
+D1AD E58489
+D1AE E58481
+D1AF E58482
+D1B0 E58496
+D1B1 E58495
+D1B2 E58494
+D1B3 E5849A
+D1B4 E584A1
+D1B5 E584BA
+D1B6 E584B7
+D1B7 E584BC
+D1B8 E584BB
+D1B9 E584BF
+D1BA E58580
+D1BB E58592
+D1BC E5858C
+D1BD E58594
+D1BE E585A2
+D1BF E7ABB8
+D1C0 E585A9
+D1C1 E585AA
+D1C2 E585AE
+D1C3 E58680
+D1C4 E58682
+D1C5 E59B98
+D1C6 E5868C
+D1C7 E58689
+D1C8 E5868F
+D1C9 E58691
+D1CA E58693
+D1CB E58695
+D1CC E58696
+D1CD E586A4
+D1CE E586A6
+D1CF E586A2
+D1D0 E586A9
+D1D1 E586AA
+D1D2 E586AB
+D1D3 E586B3
+D1D4 E586B1
+D1D5 E586B2
+D1D6 E586B0
+D1D7 E586B5
+D1D8 E586BD
+D1D9 E58785
+D1DA E58789
+D1DB E5879B
+D1DC E587A0
+D1DD E89995
+D1DE E587A9
+D1DF E587AD
+D1E0 E587B0
+D1E1 E587B5
+D1E2 E587BE
+D1E3 E58884
+D1E4 E5888B
+D1E5 E58894
+D1E6 E5888E
+D1E7 E588A7
+D1E8 E588AA
+D1E9 E588AE
+D1EA E588B3
+D1EB E588B9
+D1EC E5898F
+D1ED E58984
+D1EE E5898B
+D1EF E5898C
+D1F0 E5899E
+D1F1 E58994
+D1F2 E589AA
+D1F3 E589B4
+D1F4 E589A9
+D1F5 E589B3
+D1F6 E589BF
+D1F7 E589BD
+D1F8 E58A8D
+D1F9 E58A94
+D1FA E58A92
+D1FB E589B1
+D1FC E58A88
+D1FD E58A91
+D1FE E8BEA8
+D2A1 E8BEA7
+D2A2 E58AAC
+D2A3 E58AAD
+D2A4 E58ABC
+D2A5 E58AB5
+D2A6 E58B81
+D2A7 E58B8D
+D2A8 E58B97
+D2A9 E58B9E
+D2AA E58BA3
+D2AB E58BA6
+D2AC E9A3AD
+D2AD E58BA0
+D2AE E58BB3
+D2AF E58BB5
+D2B0 E58BB8
+D2B1 E58BB9
+D2B2 E58C86
+D2B3 E58C88
+D2B4 E794B8
+D2B5 E58C8D
+D2B6 E58C90
+D2B7 E58C8F
+D2B8 E58C95
+D2B9 E58C9A
+D2BA E58CA3
+D2BB E58CAF
+D2BC E58CB1
+D2BD E58CB3
+D2BE E58CB8
+D2BF E58D80
+D2C0 E58D86
+D2C1 E58D85
+D2C2 E4B897
+D2C3 E58D89
+D2C4 E58D8D
+D2C5 E58796
+D2C6 E58D9E
+D2C7 E58DA9
+D2C8 E58DAE
+D2C9 E5A498
+D2CA E58DBB
+D2CB E58DB7
+D2CC E58E82
+D2CD E58E96
+D2CE E58EA0
+D2CF E58EA6
+D2D0 E58EA5
+D2D1 E58EAE
+D2D2 E58EB0
+D2D3 E58EB6
+D2D4 E58F83
+D2D5 E7B092
+D2D6 E99B99
+D2D7 E58F9F
+D2D8 E69BBC
+D2D9 E787AE
+D2DA E58FAE
+D2DB E58FA8
+D2DC E58FAD
+D2DD E58FBA
+D2DE E59081
+D2DF E590BD
+D2E0 E59180
+D2E1 E590AC
+D2E2 E590AD
+D2E3 E590BC
+D2E4 E590AE
+D2E5 E590B6
+D2E6 E590A9
+D2E7 E5909D
+D2E8 E5918E
+D2E9 E5928F
+D2EA E591B5
+D2EB E5928E
+D2EC E5919F
+D2ED E591B1
+D2EE E591B7
+D2EF E591B0
+D2F0 E59292
+D2F1 E591BB
+D2F2 E59280
+D2F3 E591B6
+D2F4 E59284
+D2F5 E59290
+D2F6 E59286
+D2F7 E59387
+D2F8 E592A2
+D2F9 E592B8
+D2FA E592A5
+D2FB E592AC
+D2FC E59384
+D2FD E59388
+D2FE E592A8
+D3A1 E592AB
+D3A2 E59382
+D3A3 E592A4
+D3A4 E592BE
+D3A5 E592BC
+D3A6 E59398
+D3A7 E593A5
+D3A8 E593A6
+D3A9 E5948F
+D3AA E59494
+D3AB E593BD
+D3AC E593AE
+D3AD E593AD
+D3AE E593BA
+D3AF E593A2
+D3B0 E594B9
+D3B1 E59580
+D3B2 E595A3
+D3B3 E5958C
+D3B4 E594AE
+D3B5 E5959C
+D3B6 E59585
+D3B7 E59596
+D3B8 E59597
+D3B9 E594B8
+D3BA E594B3
+D3BB E5959D
+D3BC E59699
+D3BD E59680
+D3BE E592AF
+D3BF E5968A
+D3C0 E5969F
+D3C1 E595BB
+D3C2 E595BE
+D3C3 E59698
+D3C4 E5969E
+D3C5 E596AE
+D3C6 E595BC
+D3C7 E59683
+D3C8 E596A9
+D3C9 E59687
+D3CA E596A8
+D3CB E5979A
+D3CC E59785
+D3CD E5979F
+D3CE E59784
+D3CF E5979C
+D3D0 E597A4
+D3D1 E59794
+D3D2 E59894
+D3D3 E597B7
+D3D4 E59896
+D3D5 E597BE
+D3D6 E597BD
+D3D7 E5989B
+D3D8 E597B9
+D3D9 E5998E
+D3DA E59990
+D3DB E7879F
+D3DC E598B4
+D3DD E598B6
+D3DE E598B2
+D3DF E598B8
+D3E0 E599AB
+D3E1 E599A4
+D3E2 E598AF
+D3E3 E599AC
+D3E4 E599AA
+D3E5 E59A86
+D3E6 E59A80
+D3E7 E59A8A
+D3E8 E59AA0
+D3E9 E59A94
+D3EA E59A8F
+D3EB E59AA5
+D3EC E59AAE
+D3ED E59AB6
+D3EE E59AB4
+D3EF E59B82
+D3F0 E59ABC
+D3F1 E59B81
+D3F2 E59B83
+D3F3 E59B80
+D3F4 E59B88
+D3F5 E59B8E
+D3F6 E59B91
+D3F7 E59B93
+D3F8 E59B97
+D3F9 E59BAE
+D3FA E59BB9
+D3FB E59C80
+D3FC E59BBF
+D3FD E59C84
+D3FE E59C89
+D4A1 E59C88
+D4A2 E59C8B
+D4A3 E59C8D
+D4A4 E59C93
+D4A5 E59C98
+D4A6 E59C96
+D4A7 E59787
+D4A8 E59C9C
+D4A9 E59CA6
+D4AA E59CB7
+D4AB E59CB8
+D4AC E59D8E
+D4AD E59CBB
+D4AE E59D80
+D4AF E59D8F
+D4B0 E59DA9
+D4B1 E59F80
+D4B2 E59E88
+D4B3 E59DA1
+D4B4 E59DBF
+D4B5 E59E89
+D4B6 E59E93
+D4B7 E59EA0
+D4B8 E59EB3
+D4B9 E59EA4
+D4BA E59EAA
+D4BB E59EB0
+D4BC E59F83
+D4BD E59F86
+D4BE E59F94
+D4BF E59F92
+D4C0 E59F93
+D4C1 E5A08A
+D4C2 E59F96
+D4C3 E59FA3
+D4C4 E5A08B
+D4C5 E5A099
+D4C6 E5A09D
+D4C7 E5A1B2
+D4C8 E5A0A1
+D4C9 E5A1A2
+D4CA E5A18B
+D4CB E5A1B0
+D4CC E6AF80
+D4CD E5A192
+D4CE E5A0BD
+D4CF E5A1B9
+D4D0 E5A285
+D4D1 E5A2B9
+D4D2 E5A29F
+D4D3 E5A2AB
+D4D4 E5A2BA
+D4D5 E5A39E
+D4D6 E5A2BB
+D4D7 E5A2B8
+D4D8 E5A2AE
+D4D9 E5A385
+D4DA E5A393
+D4DB E5A391
+D4DC E5A397
+D4DD E5A399
+D4DE E5A398
+D4DF E5A3A5
+D4E0 E5A39C
+D4E1 E5A3A4
+D4E2 E5A39F
+D4E3 E5A3AF
+D4E4 E5A3BA
+D4E5 E5A3B9
+D4E6 E5A3BB
+D4E7 E5A3BC
+D4E8 E5A3BD
+D4E9 E5A482
+D4EA E5A48A
+D4EB E5A490
+D4EC E5A49B
+D4ED E6A2A6
+D4EE E5A4A5
+D4EF E5A4AC
+D4F0 E5A4AD
+D4F1 E5A4B2
+D4F2 E5A4B8
+D4F3 E5A4BE
+D4F4 E7AB92
+D4F5 E5A595
+D4F6 E5A590
+D4F7 E5A58E
+D4F8 E5A59A
+D4F9 E5A598
+D4FA E5A5A2
+D4FB E5A5A0
+D4FC E5A5A7
+D4FD E5A5AC
+D4FE E5A5A9
+D5A1 E5A5B8
+D5A2 E5A681
+D5A3 E5A69D
+D5A4 E4BD9E
+D5A5 E4BEAB
+D5A6 E5A6A3
+D5A7 E5A6B2
+D5A8 E5A786
+D5A9 E5A7A8
+D5AA E5A79C
+D5AB E5A68D
+D5AC E5A799
+D5AD E5A79A
+D5AE E5A8A5
+D5AF E5A89F
+D5B0 E5A891
+D5B1 E5A89C
+D5B2 E5A889
+D5B3 E5A89A
+D5B4 E5A980
+D5B5 E5A9AC
+D5B6 E5A989
+D5B7 E5A8B5
+D5B8 E5A8B6
+D5B9 E5A9A2
+D5BA E5A9AA
+D5BB E5AA9A
+D5BC E5AABC
+D5BD E5AABE
+D5BE E5AB8B
+D5BF E5AB82
+D5C0 E5AABD
+D5C1 E5ABA3
+D5C2 E5AB97
+D5C3 E5ABA6
+D5C4 E5ABA9
+D5C5 E5AB96
+D5C6 E5ABBA
+D5C7 E5ABBB
+D5C8 E5AC8C
+D5C9 E5AC8B
+D5CA E5AC96
+D5CB E5ACB2
+D5CC E5AB90
+D5CD E5ACAA
+D5CE E5ACB6
+D5CF E5ACBE
+D5D0 E5AD83
+D5D1 E5AD85
+D5D2 E5AD80
+D5D3 E5AD91
+D5D4 E5AD95
+D5D5 E5AD9A
+D5D6 E5AD9B
+D5D7 E5ADA5
+D5D8 E5ADA9
+D5D9 E5ADB0
+D5DA E5ADB3
+D5DB E5ADB5
+D5DC E5ADB8
+D5DD E69688
+D5DE E5ADBA
+D5DF E5AE80
+D5E0 E5AE83
+D5E1 E5AEA6
+D5E2 E5AEB8
+D5E3 E5AF83
+D5E4 E5AF87
+D5E5 E5AF89
+D5E6 E5AF94
+D5E7 E5AF90
+D5E8 E5AFA4
+D5E9 E5AFA6
+D5EA E5AFA2
+D5EB E5AF9E
+D5EC E5AFA5
+D5ED E5AFAB
+D5EE E5AFB0
+D5EF E5AFB6
+D5F0 E5AFB3
+D5F1 E5B085
+D5F2 E5B087
+D5F3 E5B088
+D5F4 E5B08D
+D5F5 E5B093
+D5F6 E5B0A0
+D5F7 E5B0A2
+D5F8 E5B0A8
+D5F9 E5B0B8
+D5FA E5B0B9
+D5FB E5B181
+D5FC E5B186
+D5FD E5B18E
+D5FE E5B193
+D6A1 E5B190
+D6A2 E5B18F
+D6A3 E5ADB1
+D6A4 E5B1AC
+D6A5 E5B1AE
+D6A6 E4B9A2
+D6A7 E5B1B6
+D6A8 E5B1B9
+D6A9 E5B28C
+D6AA E5B291
+D6AB E5B294
+D6AC E5A69B
+D6AD E5B2AB
+D6AE E5B2BB
+D6AF E5B2B6
+D6B0 E5B2BC
+D6B1 E5B2B7
+D6B2 E5B385
+D6B3 E5B2BE
+D6B4 E5B387
+D6B5 E5B399
+D6B6 E5B3A9
+D6B7 E5B3BD
+D6B8 E5B3BA
+D6B9 E5B3AD
+D6BA E5B68C
+D6BB E5B3AA
+D6BC E5B48B
+D6BD E5B495
+D6BE E5B497
+D6BF E5B59C
+D6C0 E5B49F
+D6C1 E5B49B
+D6C2 E5B491
+D6C3 E5B494
+D6C4 E5B4A2
+D6C5 E5B49A
+D6C6 E5B499
+D6C7 E5B498
+D6C8 E5B58C
+D6C9 E5B592
+D6CA E5B58E
+D6CB E5B58B
+D6CC E5B5AC
+D6CD E5B5B3
+D6CE E5B5B6
+D6CF E5B687
+D6D0 E5B684
+D6D1 E5B682
+D6D2 E5B6A2
+D6D3 E5B69D
+D6D4 E5B6AC
+D6D5 E5B6AE
+D6D6 E5B6BD
+D6D7 E5B690
+D6D8 E5B6B7
+D6D9 E5B6BC
+D6DA E5B789
+D6DB E5B78D
+D6DC E5B793
+D6DD E5B792
+D6DE E5B796
+D6DF E5B79B
+D6E0 E5B7AB
+D6E1 E5B7B2
+D6E2 E5B7B5
+D6E3 E5B88B
+D6E4 E5B89A
+D6E5 E5B899
+D6E6 E5B891
+D6E7 E5B89B
+D6E8 E5B8B6
+D6E9 E5B8B7
+D6EA E5B984
+D6EB E5B983
+D6EC E5B980
+D6ED E5B98E
+D6EE E5B997
+D6EF E5B994
+D6F0 E5B99F
+D6F1 E5B9A2
+D6F2 E5B9A4
+D6F3 E5B987
+D6F4 E5B9B5
+D6F5 E5B9B6
+D6F6 E5B9BA
+D6F7 E9BABC
+D6F8 E5B9BF
+D6F9 E5BAA0
+D6FA E5BB81
+D6FB E5BB82
+D6FC E5BB88
+D6FD E5BB90
+D6FE E5BB8F
+D7A1 E5BB96
+D7A2 E5BBA3
+D7A3 E5BB9D
+D7A4 E5BB9A
+D7A5 E5BB9B
+D7A6 E5BBA2
+D7A7 E5BBA1
+D7A8 E5BBA8
+D7A9 E5BBA9
+D7AA E5BBAC
+D7AB E5BBB1
+D7AC E5BBB3
+D7AD E5BBB0
+D7AE E5BBB4
+D7AF E5BBB8
+D7B0 E5BBBE
+D7B1 E5BC83
+D7B2 E5BC89
+D7B3 E5BD9D
+D7B4 E5BD9C
+D7B5 E5BC8B
+D7B6 E5BC91
+D7B7 E5BC96
+D7B8 E5BCA9
+D7B9 E5BCAD
+D7BA E5BCB8
+D7BB E5BD81
+D7BC E5BD88
+D7BD E5BD8C
+D7BE E5BD8E
+D7BF E5BCAF
+D7C0 E5BD91
+D7C1 E5BD96
+D7C2 E5BD97
+D7C3 E5BD99
+D7C4 E5BDA1
+D7C5 E5BDAD
+D7C6 E5BDB3
+D7C7 E5BDB7
+D7C8 E5BE83
+D7C9 E5BE82
+D7CA E5BDBF
+D7CB E5BE8A
+D7CC E5BE88
+D7CD E5BE91
+D7CE E5BE87
+D7CF E5BE9E
+D7D0 E5BE99
+D7D1 E5BE98
+D7D2 E5BEA0
+D7D3 E5BEA8
+D7D4 E5BEAD
+D7D5 E5BEBC
+D7D6 E5BF96
+D7D7 E5BFBB
+D7D8 E5BFA4
+D7D9 E5BFB8
+D7DA E5BFB1
+D7DB E5BF9D
+D7DC E682B3
+D7DD E5BFBF
+D7DE E680A1
+D7DF E681A0
+D7E0 E68099
+D7E1 E68090
+D7E2 E680A9
+D7E3 E6808E
+D7E4 E680B1
+D7E5 E6809B
+D7E6 E68095
+D7E7 E680AB
+D7E8 E680A6
+D7E9 E6808F
+D7EA E680BA
+D7EB E6819A
+D7EC E68181
+D7ED E681AA
+D7EE E681B7
+D7EF E6819F
+D7F0 E6818A
+D7F1 E68186
+D7F2 E6818D
+D7F3 E681A3
+D7F4 E68183
+D7F5 E681A4
+D7F6 E68182
+D7F7 E681AC
+D7F8 E681AB
+D7F9 E68199
+D7FA E68281
+D7FB E6828D
+D7FC E683A7
+D7FD E68283
+D7FE E6829A
+D8A1 E68284
+D8A2 E6829B
+D8A3 E68296
+D8A4 E68297
+D8A5 E68292
+D8A6 E682A7
+D8A7 E6828B
+D8A8 E683A1
+D8A9 E682B8
+D8AA E683A0
+D8AB E68393
+D8AC E682B4
+D8AD E5BFB0
+D8AE E682BD
+D8AF E68386
+D8B0 E682B5
+D8B1 E68398
+D8B2 E6858D
+D8B3 E68495
+D8B4 E68486
+D8B5 E683B6
+D8B6 E683B7
+D8B7 E68480
+D8B8 E683B4
+D8B9 E683BA
+D8BA E68483
+D8BB E684A1
+D8BC E683BB
+D8BD E683B1
+D8BE E6848D
+D8BF E6848E
+D8C0 E68587
+D8C1 E684BE
+D8C2 E684A8
+D8C3 E684A7
+D8C4 E6858A
+D8C5 E684BF
+D8C6 E684BC
+D8C7 E684AC
+D8C8 E684B4
+D8C9 E684BD
+D8CA E68582
+D8CB E68584
+D8CC E685B3
+D8CD E685B7
+D8CE E68598
+D8CF E68599
+D8D0 E6859A
+D8D1 E685AB
+D8D2 E685B4
+D8D3 E685AF
+D8D4 E685A5
+D8D5 E685B1
+D8D6 E6859F
+D8D7 E6859D
+D8D8 E68593
+D8D9 E685B5
+D8DA E68699
+D8DB E68696
+D8DC E68687
+D8DD E686AC
+D8DE E68694
+D8DF E6869A
+D8E0 E6868A
+D8E1 E68691
+D8E2 E686AB
+D8E3 E686AE
+D8E4 E6878C
+D8E5 E6878A
+D8E6 E68789
+D8E7 E687B7
+D8E8 E68788
+D8E9 E68783
+D8EA E68786
+D8EB E686BA
+D8EC E6878B
+D8ED E7BDB9
+D8EE E6878D
+D8EF E687A6
+D8F0 E687A3
+D8F1 E687B6
+D8F2 E687BA
+D8F3 E687B4
+D8F4 E687BF
+D8F5 E687BD
+D8F6 E687BC
+D8F7 E687BE
+D8F8 E68880
+D8F9 E68888
+D8FA E68889
+D8FB E6888D
+D8FC E6888C
+D8FD E68894
+D8FE E6889B
+D9A1 E6889E
+D9A2 E688A1
+D9A3 E688AA
+D9A4 E688AE
+D9A5 E688B0
+D9A6 E688B2
+D9A7 E688B3
+D9A8 E68981
+D9A9 E6898E
+D9AA E6899E
+D9AB E689A3
+D9AC E6899B
+D9AD E689A0
+D9AE E689A8
+D9AF E689BC
+D9B0 E68A82
+D9B1 E68A89
+D9B2 E689BE
+D9B3 E68A92
+D9B4 E68A93
+D9B5 E68A96
+D9B6 E68B94
+D9B7 E68A83
+D9B8 E68A94
+D9B9 E68B97
+D9BA E68B91
+D9BB E68ABB
+D9BC E68B8F
+D9BD E68BBF
+D9BE E68B86
+D9BF E69394
+D9C0 E68B88
+D9C1 E68B9C
+D9C2 E68B8C
+D9C3 E68B8A
+D9C4 E68B82
+D9C5 E68B87
+D9C6 E68A9B
+D9C7 E68B89
+D9C8 E68C8C
+D9C9 E68BAE
+D9CA E68BB1
+D9CB E68CA7
+D9CC E68C82
+D9CD E68C88
+D9CE E68BAF
+D9CF E68BB5
+D9D0 E68D90
+D9D1 E68CBE
+D9D2 E68D8D
+D9D3 E6909C
+D9D4 E68D8F
+D9D5 E68E96
+D9D6 E68E8E
+D9D7 E68E80
+D9D8 E68EAB
+D9D9 E68DB6
+D9DA E68EA3
+D9DB E68E8F
+D9DC E68E89
+D9DD E68E9F
+D9DE E68EB5
+D9DF E68DAB
+D9E0 E68DA9
+D9E1 E68EBE
+D9E2 E68FA9
+D9E3 E68F80
+D9E4 E68F86
+D9E5 E68FA3
+D9E6 E68F89
+D9E7 E68F92
+D9E8 E68FB6
+D9E9 E68F84
+D9EA E69096
+D9EB E690B4
+D9EC E69086
+D9ED E69093
+D9EE E690A6
+D9EF E690B6
+D9F0 E6949D
+D9F1 E69097
+D9F2 E690A8
+D9F3 E6908F
+D9F4 E691A7
+D9F5 E691AF
+D9F6 E691B6
+D9F7 E6918E
+D9F8 E694AA
+D9F9 E69295
+D9FA E69293
+D9FB E692A5
+D9FC E692A9
+D9FD E69288
+D9FE E692BC
+DAA1 E6939A
+DAA2 E69392
+DAA3 E69385
+DAA4 E69387
+DAA5 E692BB
+DAA6 E69398
+DAA7 E69382
+DAA8 E693B1
+DAA9 E693A7
+DAAA E88889
+DAAB E693A0
+DAAC E693A1
+DAAD E68AAC
+DAAE E693A3
+DAAF E693AF
+DAB0 E694AC
+DAB1 E693B6
+DAB2 E693B4
+DAB3 E693B2
+DAB4 E693BA
+DAB5 E69480
+DAB6 E693BD
+DAB7 E69498
+DAB8 E6949C
+DAB9 E69485
+DABA E694A4
+DABB E694A3
+DABC E694AB
+DABD E694B4
+DABE E694B5
+DABF E694B7
+DAC0 E694B6
+DAC1 E694B8
+DAC2 E7958B
+DAC3 E69588
+DAC4 E69596
+DAC5 E69595
+DAC6 E6958D
+DAC7 E69598
+DAC8 E6959E
+DAC9 E6959D
+DACA E695B2
+DACB E695B8
+DACC E69682
+DACD E69683
+DACE E8AE8A
+DACF E6969B
+DAD0 E6969F
+DAD1 E696AB
+DAD2 E696B7
+DAD3 E69783
+DAD4 E69786
+DAD5 E69781
+DAD6 E69784
+DAD7 E6978C
+DAD8 E69792
+DAD9 E6979B
+DADA E69799
+DADB E697A0
+DADC E697A1
+DADD E697B1
+DADE E69DB2
+DADF E6988A
+DAE0 E69883
+DAE1 E697BB
+DAE2 E69DB3
+DAE3 E698B5
+DAE4 E698B6
+DAE5 E698B4
+DAE6 E6989C
+DAE7 E6998F
+DAE8 E69984
+DAE9 E69989
+DAEA E69981
+DAEB E6999E
+DAEC E6999D
+DAED E699A4
+DAEE E699A7
+DAEF E699A8
+DAF0 E6999F
+DAF1 E699A2
+DAF2 E699B0
+DAF3 E69A83
+DAF4 E69A88
+DAF5 E69A8E
+DAF6 E69A89
+DAF7 E69A84
+DAF8 E69A98
+DAF9 E69A9D
+DAFA E69B81
+DAFB E69AB9
+DAFC E69B89
+DAFD E69ABE
+DAFE E69ABC
+DBA1 E69B84
+DBA2 E69AB8
+DBA3 E69B96
+DBA4 E69B9A
+DBA5 E69BA0
+DBA6 E698BF
+DBA7 E69BA6
+DBA8 E69BA9
+DBA9 E69BB0
+DBAA E69BB5
+DBAB E69BB7
+DBAC E69C8F
+DBAD E69C96
+DBAE E69C9E
+DBAF E69CA6
+DBB0 E69CA7
+DBB1 E99CB8
+DBB2 E69CAE
+DBB3 E69CBF
+DBB4 E69CB6
+DBB5 E69D81
+DBB6 E69CB8
+DBB7 E69CB7
+DBB8 E69D86
+DBB9 E69D9E
+DBBA E69DA0
+DBBB E69D99
+DBBC E69DA3
+DBBD E69DA4
+DBBE E69E89
+DBBF E69DB0
+DBC0 E69EA9
+DBC1 E69DBC
+DBC2 E69DAA
+DBC3 E69E8C
+DBC4 E69E8B
+DBC5 E69EA6
+DBC6 E69EA1
+DBC7 E69E85
+DBC8 E69EB7
+DBC9 E69FAF
+DBCA E69EB4
+DBCB E69FAC
+DBCC E69EB3
+DBCD E69FA9
+DBCE E69EB8
+DBCF E69FA4
+DBD0 E69F9E
+DBD1 E69F9D
+DBD2 E69FA2
+DBD3 E69FAE
+DBD4 E69EB9
+DBD5 E69F8E
+DBD6 E69F86
+DBD7 E69FA7
+DBD8 E6AA9C
+DBD9 E6A09E
+DBDA E6A186
+DBDB E6A0A9
+DBDC E6A180
+DBDD E6A18D
+DBDE E6A0B2
+DBDF E6A18E
+DBE0 E6A2B3
+DBE1 E6A0AB
+DBE2 E6A199
+DBE3 E6A1A3
+DBE4 E6A1B7
+DBE5 E6A1BF
+DBE6 E6A29F
+DBE7 E6A28F
+DBE8 E6A2AD
+DBE9 E6A294
+DBEA E6A29D
+DBEB E6A29B
+DBEC E6A283
+DBED E6AAAE
+DBEE E6A2B9
+DBEF E6A1B4
+DBF0 E6A2B5
+DBF1 E6A2A0
+DBF2 E6A2BA
+DBF3 E6A48F
+DBF4 E6A28D
+DBF5 E6A1BE
+DBF6 E6A481
+DBF7 E6A38A
+DBF8 E6A488
+DBF9 E6A398
+DBFA E6A4A2
+DBFB E6A4A6
+DBFC E6A3A1
+DBFD E6A48C
+DBFE E6A38D
+DCA1 E6A394
+DCA2 E6A3A7
+DCA3 E6A395
+DCA4 E6A4B6
+DCA5 E6A492
+DCA6 E6A484
+DCA7 E6A397
+DCA8 E6A3A3
+DCA9 E6A4A5
+DCAA E6A3B9
+DCAB E6A3A0
+DCAC E6A3AF
+DCAD E6A4A8
+DCAE E6A4AA
+DCAF E6A49A
+DCB0 E6A4A3
+DCB1 E6A4A1
+DCB2 E6A386
+DCB3 E6A5B9
+DCB4 E6A5B7
+DCB5 E6A59C
+DCB6 E6A5B8
+DCB7 E6A5AB
+DCB8 E6A594
+DCB9 E6A5BE
+DCBA E6A5AE
+DCBB E6A4B9
+DCBC E6A5B4
+DCBD E6A4BD
+DCBE E6A599
+DCBF E6A4B0
+DCC0 E6A5A1
+DCC1 E6A59E
+DCC2 E6A59D
+DCC3 E6A681
+DCC4 E6A5AA
+DCC5 E6A6B2
+DCC6 E6A6AE
+DCC7 E6A790
+DCC8 E6A6BF
+DCC9 E6A781
+DCCA E6A793
+DCCB E6A6BE
+DCCC E6A78E
+DCCD E5AFA8
+DCCE E6A78A
+DCCF E6A79D
+DCD0 E6A6BB
+DCD1 E6A783
+DCD2 E6A6A7
+DCD3 E6A8AE
+DCD4 E6A691
+DCD5 E6A6A0
+DCD6 E6A69C
+DCD7 E6A695
+DCD8 E6A6B4
+DCD9 E6A79E
+DCDA E6A7A8
+DCDB E6A882
+DCDC E6A89B
+DCDD E6A7BF
+DCDE E6AC8A
+DCDF E6A7B9
+DCE0 E6A7B2
+DCE1 E6A7A7
+DCE2 E6A885
+DCE3 E6A6B1
+DCE4 E6A89E
+DCE5 E6A7AD
+DCE6 E6A894
+DCE7 E6A7AB
+DCE8 E6A88A
+DCE9 E6A892
+DCEA E6AB81
+DCEB E6A8A3
+DCEC E6A893
+DCED E6A984
+DCEE E6A88C
+DCEF E6A9B2
+DCF0 E6A8B6
+DCF1 E6A9B8
+DCF2 E6A987
+DCF3 E6A9A2
+DCF4 E6A999
+DCF5 E6A9A6
+DCF6 E6A988
+DCF7 E6A8B8
+DCF8 E6A8A2
+DCF9 E6AA90
+DCFA E6AA8D
+DCFB E6AAA0
+DCFC E6AA84
+DCFD E6AAA2
+DCFE E6AAA3
+DDA1 E6AA97
+DDA2 E89897
+DDA3 E6AABB
+DDA4 E6AB83
+DDA5 E6AB82
+DDA6 E6AAB8
+DDA7 E6AAB3
+DDA8 E6AAAC
+DDA9 E6AB9E
+DDAA E6AB91
+DDAB E6AB9F
+DDAC E6AAAA
+DDAD E6AB9A
+DDAE E6ABAA
+DDAF E6ABBB
+DDB0 E6AC85
+DDB1 E89896
+DDB2 E6ABBA
+DDB3 E6AC92
+DDB4 E6AC96
+DDB5 E9ACB1
+DDB6 E6AC9F
+DDB7 E6ACB8
+DDB8 E6ACB7
+DDB9 E79B9C
+DDBA E6ACB9
+DDBB E9A3AE
+DDBC E6AD87
+DDBD E6AD83
+DDBE E6AD89
+DDBF E6AD90
+DDC0 E6AD99
+DDC1 E6AD94
+DDC2 E6AD9B
+DDC3 E6AD9F
+DDC4 E6ADA1
+DDC5 E6ADB8
+DDC6 E6ADB9
+DDC7 E6ADBF
+DDC8 E6AE80
+DDC9 E6AE84
+DDCA E6AE83
+DDCB E6AE8D
+DDCC E6AE98
+DDCD E6AE95
+DDCE E6AE9E
+DDCF E6AEA4
+DDD0 E6AEAA
+DDD1 E6AEAB
+DDD2 E6AEAF
+DDD3 E6AEB2
+DDD4 E6AEB1
+DDD5 E6AEB3
+DDD6 E6AEB7
+DDD7 E6AEBC
+DDD8 E6AF86
+DDD9 E6AF8B
+DDDA E6AF93
+DDDB E6AF9F
+DDDC E6AFAC
+DDDD E6AFAB
+DDDE E6AFB3
+DDDF E6AFAF
+DDE0 E9BABE
+DDE1 E6B088
+DDE2 E6B093
+DDE3 E6B094
+DDE4 E6B09B
+DDE5 E6B0A4
+DDE6 E6B0A3
+DDE7 E6B19E
+DDE8 E6B195
+DDE9 E6B1A2
+DDEA E6B1AA
+DDEB E6B282
+DDEC E6B28D
+DDED E6B29A
+DDEE E6B281
+DDEF E6B29B
+DDF0 E6B1BE
+DDF1 E6B1A8
+DDF2 E6B1B3
+DDF3 E6B292
+DDF4 E6B290
+DDF5 E6B384
+DDF6 E6B3B1
+DDF7 E6B393
+DDF8 E6B2BD
+DDF9 E6B397
+DDFA E6B385
+DDFB E6B39D
+DDFC E6B2AE
+DDFD E6B2B1
+DDFE E6B2BE
+DEA1 E6B2BA
+DEA2 E6B39B
+DEA3 E6B3AF
+DEA4 E6B399
+DEA5 E6B3AA
+DEA6 E6B49F
+DEA7 E8A18D
+DEA8 E6B4B6
+DEA9 E6B4AB
+DEAA E6B4BD
+DEAB E6B4B8
+DEAC E6B499
+DEAD E6B4B5
+DEAE E6B4B3
+DEAF E6B492
+DEB0 E6B48C
+DEB1 E6B5A3
+DEB2 E6B693
+DEB3 E6B5A4
+DEB4 E6B59A
+DEB5 E6B5B9
+DEB6 E6B599
+DEB7 E6B68E
+DEB8 E6B695
+DEB9 E6BFA4
+DEBA E6B685
+DEBB E6B7B9
+DEBC E6B895
+DEBD E6B88A
+DEBE E6B6B5
+DEBF E6B787
+DEC0 E6B7A6
+DEC1 E6B6B8
+DEC2 E6B786
+DEC3 E6B7AC
+DEC4 E6B79E
+DEC5 E6B78C
+DEC6 E6B7A8
+DEC7 E6B792
+DEC8 E6B785
+DEC9 E6B7BA
+DECA E6B799
+DECB E6B7A4
+DECC E6B795
+DECD E6B7AA
+DECE E6B7AE
+DECF E6B8AD
+DED0 E6B9AE
+DED1 E6B8AE
+DED2 E6B899
+DED3 E6B9B2
+DED4 E6B99F
+DED5 E6B8BE
+DED6 E6B8A3
+DED7 E6B9AB
+DED8 E6B8AB
+DED9 E6B9B6
+DEDA E6B98D
+DEDB E6B89F
+DEDC E6B983
+DEDD E6B8BA
+DEDE E6B98E
+DEDF E6B8A4
+DEE0 E6BBBF
+DEE1 E6B89D
+DEE2 E6B8B8
+DEE3 E6BA82
+DEE4 E6BAAA
+DEE5 E6BA98
+DEE6 E6BB89
+DEE7 E6BAB7
+DEE8 E6BB93
+DEE9 E6BABD
+DEEA E6BAAF
+DEEB E6BB84
+DEEC E6BAB2
+DEED E6BB94
+DEEE E6BB95
+DEEF E6BA8F
+DEF0 E6BAA5
+DEF1 E6BB82
+DEF2 E6BA9F
+DEF3 E6BD81
+DEF4 E6BC91
+DEF5 E7818C
+DEF6 E6BBAC
+DEF7 E6BBB8
+DEF8 E6BBBE
+DEF9 E6BCBF
+DEFA E6BBB2
+DEFB E6BCB1
+DEFC E6BBAF
+DEFD E6BCB2
+DEFE E6BB8C
+DFA1 E6BCBE
+DFA2 E6BC93
+DFA3 E6BBB7
+DFA4 E6BE86
+DFA5 E6BDBA
+DFA6 E6BDB8
+DFA7 E6BE81
+DFA8 E6BE80
+DFA9 E6BDAF
+DFAA E6BD9B
+DFAB E6BFB3
+DFAC E6BDAD
+DFAD E6BE82
+DFAE E6BDBC
+DFAF E6BD98
+DFB0 E6BE8E
+DFB1 E6BE91
+DFB2 E6BF82
+DFB3 E6BDA6
+DFB4 E6BEB3
+DFB5 E6BEA3
+DFB6 E6BEA1
+DFB7 E6BEA4
+DFB8 E6BEB9
+DFB9 E6BF86
+DFBA E6BEAA
+DFBB E6BF9F
+DFBC E6BF95
+DFBD E6BFAC
+DFBE E6BF94
+DFBF E6BF98
+DFC0 E6BFB1
+DFC1 E6BFAE
+DFC2 E6BF9B
+DFC3 E78089
+DFC4 E7808B
+DFC5 E6BFBA
+DFC6 E78091
+DFC7 E78081
+DFC8 E7808F
+DFC9 E6BFBE
+DFCA E7809B
+DFCB E7809A
+DFCC E6BDB4
+DFCD E7809D
+DFCE E78098
+DFCF E7809F
+DFD0 E780B0
+DFD1 E780BE
+DFD2 E780B2
+DFD3 E78191
+DFD4 E781A3
+DFD5 E78299
+DFD6 E78292
+DFD7 E782AF
+DFD8 E783B1
+DFD9 E782AC
+DFDA E782B8
+DFDB E782B3
+DFDC E782AE
+DFDD E7839F
+DFDE E7838B
+DFDF E7839D
+DFE0 E78399
+DFE1 E78489
+DFE2 E783BD
+DFE3 E7849C
+DFE4 E78499
+DFE5 E785A5
+DFE6 E78595
+DFE7 E78688
+DFE8 E785A6
+DFE9 E785A2
+DFEA E7858C
+DFEB E78596
+DFEC E785AC
+DFED E7868F
+DFEE E787BB
+DFEF E78684
+DFF0 E78695
+DFF1 E786A8
+DFF2 E786AC
+DFF3 E78797
+DFF4 E786B9
+DFF5 E786BE
+DFF6 E78792
+DFF7 E78789
+DFF8 E78794
+DFF9 E7878E
+DFFA E787A0
+DFFB E787AC
+DFFC E787A7
+DFFD E787B5
+DFFE E787BC
+E0A1 E787B9
+E0A2 E787BF
+E0A3 E7888D
+E0A4 E78890
+E0A5 E7889B
+E0A6 E788A8
+E0A7 E788AD
+E0A8 E788AC
+E0A9 E788B0
+E0AA E788B2
+E0AB E788BB
+E0AC E788BC
+E0AD E788BF
+E0AE E78980
+E0AF E78986
+E0B0 E7898B
+E0B1 E78998
+E0B2 E789B4
+E0B3 E789BE
+E0B4 E78A82
+E0B5 E78A81
+E0B6 E78A87
+E0B7 E78A92
+E0B8 E78A96
+E0B9 E78AA2
+E0BA E78AA7
+E0BB E78AB9
+E0BC E78AB2
+E0BD E78B83
+E0BE E78B86
+E0BF E78B84
+E0C0 E78B8E
+E0C1 E78B92
+E0C2 E78BA2
+E0C3 E78BA0
+E0C4 E78BA1
+E0C5 E78BB9
+E0C6 E78BB7
+E0C7 E5808F
+E0C8 E78C97
+E0C9 E78C8A
+E0CA E78C9C
+E0CB E78C96
+E0CC E78C9D
+E0CD E78CB4
+E0CE E78CAF
+E0CF E78CA9
+E0D0 E78CA5
+E0D1 E78CBE
+E0D2 E78D8E
+E0D3 E78D8F
+E0D4 E9BB98
+E0D5 E78D97
+E0D6 E78DAA
+E0D7 E78DA8
+E0D8 E78DB0
+E0D9 E78DB8
+E0DA E78DB5
+E0DB E78DBB
+E0DC E78DBA
+E0DD E78F88
+E0DE E78EB3
+E0DF E78F8E
+E0E0 E78EBB
+E0E1 E78F80
+E0E2 E78FA5
+E0E3 E78FAE
+E0E4 E78F9E
+E0E5 E792A2
+E0E6 E79085
+E0E7 E791AF
+E0E8 E790A5
+E0E9 E78FB8
+E0EA E790B2
+E0EB E790BA
+E0EC E79195
+E0ED E790BF
+E0EE E7919F
+E0EF E79199
+E0F0 E79181
+E0F1 E7919C
+E0F2 E791A9
+E0F3 E791B0
+E0F4 E791A3
+E0F5 E791AA
+E0F6 E791B6
+E0F7 E791BE
+E0F8 E7928B
+E0F9 E7929E
+E0FA E792A7
+E0FB E7938A
+E0FC E7938F
+E0FD E79394
+E0FE E78FB1
+E1A1 E793A0
+E1A2 E793A3
+E1A3 E793A7
+E1A4 E793A9
+E1A5 E793AE
+E1A6 E793B2
+E1A7 E793B0
+E1A8 E793B1
+E1A9 E793B8
+E1AA E793B7
+E1AB E79484
+E1AC E79483
+E1AD E79485
+E1AE E7948C
+E1AF E7948E
+E1B0 E7948D
+E1B1 E79495
+E1B2 E79493
+E1B3 E7949E
+E1B4 E794A6
+E1B5 E794AC
+E1B6 E794BC
+E1B7 E79584
+E1B8 E7958D
+E1B9 E7958A
+E1BA E79589
+E1BB E7959B
+E1BC E79586
+E1BD E7959A
+E1BE E795A9
+E1BF E795A4
+E1C0 E795A7
+E1C1 E795AB
+E1C2 E795AD
+E1C3 E795B8
+E1C4 E795B6
+E1C5 E79686
+E1C6 E79687
+E1C7 E795B4
+E1C8 E7968A
+E1C9 E79689
+E1CA E79682
+E1CB E79694
+E1CC E7969A
+E1CD E7969D
+E1CE E796A5
+E1CF E796A3
+E1D0 E79782
+E1D1 E796B3
+E1D2 E79783
+E1D3 E796B5
+E1D4 E796BD
+E1D5 E796B8
+E1D6 E796BC
+E1D7 E796B1
+E1D8 E7978D
+E1D9 E7978A
+E1DA E79792
+E1DB E79799
+E1DC E797A3
+E1DD E7979E
+E1DE E797BE
+E1DF E797BF
+E1E0 E797BC
+E1E1 E79881
+E1E2 E797B0
+E1E3 E797BA
+E1E4 E797B2
+E1E5 E797B3
+E1E6 E7988B
+E1E7 E7988D
+E1E8 E79889
+E1E9 E7989F
+E1EA E798A7
+E1EB E798A0
+E1EC E798A1
+E1ED E798A2
+E1EE E798A4
+E1EF E798B4
+E1F0 E798B0
+E1F1 E798BB
+E1F2 E79987
+E1F3 E79988
+E1F4 E79986
+E1F5 E7999C
+E1F6 E79998
+E1F7 E799A1
+E1F8 E799A2
+E1F9 E799A8
+E1FA E799A9
+E1FB E799AA
+E1FC E799A7
+E1FD E799AC
+E1FE E799B0
+E2A1 E799B2
+E2A2 E799B6
+E2A3 E799B8
+E2A4 E799BC
+E2A5 E79A80
+E2A6 E79A83
+E2A7 E79A88
+E2A8 E79A8B
+E2A9 E79A8E
+E2AA E79A96
+E2AB E79A93
+E2AC E79A99
+E2AD E79A9A
+E2AE E79AB0
+E2AF E79AB4
+E2B0 E79AB8
+E2B1 E79AB9
+E2B2 E79ABA
+E2B3 E79B82
+E2B4 E79B8D
+E2B5 E79B96
+E2B6 E79B92
+E2B7 E79B9E
+E2B8 E79BA1
+E2B9 E79BA5
+E2BA E79BA7
+E2BB E79BAA
+E2BC E898AF
+E2BD E79BBB
+E2BE E79C88
+E2BF E79C87
+E2C0 E79C84
+E2C1 E79CA9
+E2C2 E79CA4
+E2C3 E79C9E
+E2C4 E79CA5
+E2C5 E79CA6
+E2C6 E79C9B
+E2C7 E79CB7
+E2C8 E79CB8
+E2C9 E79D87
+E2CA E79D9A
+E2CB E79DA8
+E2CC E79DAB
+E2CD E79D9B
+E2CE E79DA5
+E2CF E79DBF
+E2D0 E79DBE
+E2D1 E79DB9
+E2D2 E79E8E
+E2D3 E79E8B
+E2D4 E79E91
+E2D5 E79EA0
+E2D6 E79E9E
+E2D7 E79EB0
+E2D8 E79EB6
+E2D9 E79EB9
+E2DA E79EBF
+E2DB E79EBC
+E2DC E79EBD
+E2DD E79EBB
+E2DE E79F87
+E2DF E79F8D
+E2E0 E79F97
+E2E1 E79F9A
+E2E2 E79F9C
+E2E3 E79FA3
+E2E4 E79FAE
+E2E5 E79FBC
+E2E6 E7A08C
+E2E7 E7A092
+E2E8 E7A4A6
+E2E9 E7A0A0
+E2EA E7A4AA
+E2EB E7A185
+E2EC E7A28E
+E2ED E7A1B4
+E2EE E7A286
+E2EF E7A1BC
+E2F0 E7A29A
+E2F1 E7A28C
+E2F2 E7A2A3
+E2F3 E7A2B5
+E2F4 E7A2AA
+E2F5 E7A2AF
+E2F6 E7A391
+E2F7 E7A386
+E2F8 E7A38B
+E2F9 E7A394
+E2FA E7A2BE
+E2FB E7A2BC
+E2FC E7A385
+E2FD E7A38A
+E2FE E7A3AC
+E3A1 E7A3A7
+E3A2 E7A39A
+E3A3 E7A3BD
+E3A4 E7A3B4
+E3A5 E7A487
+E3A6 E7A492
+E3A7 E7A491
+E3A8 E7A499
+E3A9 E7A4AC
+E3AA E7A4AB
+E3AB E7A580
+E3AC E7A5A0
+E3AD E7A597
+E3AE E7A59F
+E3AF E7A59A
+E3B0 E7A595
+E3B1 E7A593
+E3B2 E7A5BA
+E3B3 E7A5BF
+E3B4 E7A68A
+E3B5 E7A69D
+E3B6 E7A6A7
+E3B7 E9BD8B
+E3B8 E7A6AA
+E3B9 E7A6AE
+E3BA E7A6B3
+E3BB E7A6B9
+E3BC E7A6BA
+E3BD E7A789
+E3BE E7A795
+E3BF E7A7A7
+E3C0 E7A7AC
+E3C1 E7A7A1
+E3C2 E7A7A3
+E3C3 E7A888
+E3C4 E7A88D
+E3C5 E7A898
+E3C6 E7A899
+E3C7 E7A8A0
+E3C8 E7A89F
+E3C9 E7A680
+E3CA E7A8B1
+E3CB E7A8BB
+E3CC E7A8BE
+E3CD E7A8B7
+E3CE E7A983
+E3CF E7A997
+E3D0 E7A989
+E3D1 E7A9A1
+E3D2 E7A9A2
+E3D3 E7A9A9
+E3D4 E9BE9D
+E3D5 E7A9B0
+E3D6 E7A9B9
+E3D7 E7A9BD
+E3D8 E7AA88
+E3D9 E7AA97
+E3DA E7AA95
+E3DB E7AA98
+E3DC E7AA96
+E3DD E7AAA9
+E3DE E7AB88
+E3DF E7AAB0
+E3E0 E7AAB6
+E3E1 E7AB85
+E3E2 E7AB84
+E3E3 E7AABF
+E3E4 E98283
+E3E5 E7AB87
+E3E6 E7AB8A
+E3E7 E7AB8D
+E3E8 E7AB8F
+E3E9 E7AB95
+E3EA E7AB93
+E3EB E7AB99
+E3EC E7AB9A
+E3ED E7AB9D
+E3EE E7ABA1
+E3EF E7ABA2
+E3F0 E7ABA6
+E3F1 E7ABAD
+E3F2 E7ABB0
+E3F3 E7AC82
+E3F4 E7AC8F
+E3F5 E7AC8A
+E3F6 E7AC86
+E3F7 E7ACB3
+E3F8 E7AC98
+E3F9 E7AC99
+E3FA E7AC9E
+E3FB E7ACB5
+E3FC E7ACA8
+E3FD E7ACB6
+E3FE E7AD90
+E4A1 E7ADBA
+E4A2 E7AC84
+E4A3 E7AD8D
+E4A4 E7AC8B
+E4A5 E7AD8C
+E4A6 E7AD85
+E4A7 E7ADB5
+E4A8 E7ADA5
+E4A9 E7ADB4
+E4AA E7ADA7
+E4AB E7ADB0
+E4AC E7ADB1
+E4AD E7ADAC
+E4AE E7ADAE
+E4AF E7AE9D
+E4B0 E7AE98
+E4B1 E7AE9F
+E4B2 E7AE8D
+E4B3 E7AE9C
+E4B4 E7AE9A
+E4B5 E7AE8B
+E4B6 E7AE92
+E4B7 E7AE8F
+E4B8 E7AD9D
+E4B9 E7AE99
+E4BA E7AF8B
+E4BB E7AF81
+E4BC E7AF8C
+E4BD E7AF8F
+E4BE E7AEB4
+E4BF E7AF86
+E4C0 E7AF9D
+E4C1 E7AFA9
+E4C2 E7B091
+E4C3 E7B094
+E4C4 E7AFA6
+E4C5 E7AFA5
+E4C6 E7B1A0
+E4C7 E7B080
+E4C8 E7B087
+E4C9 E7B093
+E4CA E7AFB3
+E4CB E7AFB7
+E4CC E7B097
+E4CD E7B08D
+E4CE E7AFB6
+E4CF E7B0A3
+E4D0 E7B0A7
+E4D1 E7B0AA
+E4D2 E7B09F
+E4D3 E7B0B7
+E4D4 E7B0AB
+E4D5 E7B0BD
+E4D6 E7B18C
+E4D7 E7B183
+E4D8 E7B194
+E4D9 E7B18F
+E4DA E7B180
+E4DB E7B190
+E4DC E7B198
+E4DD E7B19F
+E4DE E7B1A4
+E4DF E7B196
+E4E0 E7B1A5
+E4E1 E7B1AC
+E4E2 E7B1B5
+E4E3 E7B283
+E4E4 E7B290
+E4E5 E7B2A4
+E4E6 E7B2AD
+E4E7 E7B2A2
+E4E8 E7B2AB
+E4E9 E7B2A1
+E4EA E7B2A8
+E4EB E7B2B3
+E4EC E7B2B2
+E4ED E7B2B1
+E4EE E7B2AE
+E4EF E7B2B9
+E4F0 E7B2BD
+E4F1 E7B380
+E4F2 E7B385
+E4F3 E7B382
+E4F4 E7B398
+E4F5 E7B392
+E4F6 E7B39C
+E4F7 E7B3A2
+E4F8 E9ACBB
+E4F9 E7B3AF
+E4FA E7B3B2
+E4FB E7B3B4
+E4FC E7B3B6
+E4FD E7B3BA
+E4FE E7B486
+E5A1 E7B482
+E5A2 E7B49C
+E5A3 E7B495
+E5A4 E7B48A
+E5A5 E7B585
+E5A6 E7B58B
+E5A7 E7B4AE
+E5A8 E7B4B2
+E5A9 E7B4BF
+E5AA E7B4B5
+E5AB E7B586
+E5AC E7B5B3
+E5AD E7B596
+E5AE E7B58E
+E5AF E7B5B2
+E5B0 E7B5A8
+E5B1 E7B5AE
+E5B2 E7B58F
+E5B3 E7B5A3
+E5B4 E7B693
+E5B5 E7B689
+E5B6 E7B59B
+E5B7 E7B68F
+E5B8 E7B5BD
+E5B9 E7B69B
+E5BA E7B6BA
+E5BB E7B6AE
+E5BC E7B6A3
+E5BD E7B6B5
+E5BE E7B787
+E5BF E7B6BD
+E5C0 E7B6AB
+E5C1 E7B8BD
+E5C2 E7B6A2
+E5C3 E7B6AF
+E5C4 E7B79C
+E5C5 E7B6B8
+E5C6 E7B69F
+E5C7 E7B6B0
+E5C8 E7B798
+E5C9 E7B79D
+E5CA E7B7A4
+E5CB E7B79E
+E5CC E7B7BB
+E5CD E7B7B2
+E5CE E7B7A1
+E5CF E7B885
+E5D0 E7B88A
+E5D1 E7B8A3
+E5D2 E7B8A1
+E5D3 E7B892
+E5D4 E7B8B1
+E5D5 E7B89F
+E5D6 E7B889
+E5D7 E7B88B
+E5D8 E7B8A2
+E5D9 E7B986
+E5DA E7B9A6
+E5DB E7B8BB
+E5DC E7B8B5
+E5DD E7B8B9
+E5DE E7B983
+E5DF E7B8B7
+E5E0 E7B8B2
+E5E1 E7B8BA
+E5E2 E7B9A7
+E5E3 E7B99D
+E5E4 E7B996
+E5E5 E7B99E
+E5E6 E7B999
+E5E7 E7B99A
+E5E8 E7B9B9
+E5E9 E7B9AA
+E5EA E7B9A9
+E5EB E7B9BC
+E5EC E7B9BB
+E5ED E7BA83
+E5EE E7B795
+E5EF E7B9BD
+E5F0 E8BEAE
+E5F1 E7B9BF
+E5F2 E7BA88
+E5F3 E7BA89
+E5F4 E7BA8C
+E5F5 E7BA92
+E5F6 E7BA90
+E5F7 E7BA93
+E5F8 E7BA94
+E5F9 E7BA96
+E5FA E7BA8E
+E5FB E7BA9B
+E5FC E7BA9C
+E5FD E7BCB8
+E5FE E7BCBA
+E6A1 E7BD85
+E6A2 E7BD8C
+E6A3 E7BD8D
+E6A4 E7BD8E
+E6A5 E7BD90
+E6A6 E7BD91
+E6A7 E7BD95
+E6A8 E7BD94
+E6A9 E7BD98
+E6AA E7BD9F
+E6AB E7BDA0
+E6AC E7BDA8
+E6AD E7BDA9
+E6AE E7BDA7
+E6AF E7BDB8
+E6B0 E7BE82
+E6B1 E7BE86
+E6B2 E7BE83
+E6B3 E7BE88
+E6B4 E7BE87
+E6B5 E7BE8C
+E6B6 E7BE94
+E6B7 E7BE9E
+E6B8 E7BE9D
+E6B9 E7BE9A
+E6BA E7BEA3
+E6BB E7BEAF
+E6BC E7BEB2
+E6BD E7BEB9
+E6BE E7BEAE
+E6BF E7BEB6
+E6C0 E7BEB8
+E6C1 E8ADB1
+E6C2 E7BF85
+E6C3 E7BF86
+E6C4 E7BF8A
+E6C5 E7BF95
+E6C6 E7BF94
+E6C7 E7BFA1
+E6C8 E7BFA6
+E6C9 E7BFA9
+E6CA E7BFB3
+E6CB E7BFB9
+E6CC E9A39C
+E6CD E88086
+E6CE E88084
+E6CF E8808B
+E6D0 E88092
+E6D1 E88098
+E6D2 E88099
+E6D3 E8809C
+E6D4 E880A1
+E6D5 E880A8
+E6D6 E880BF
+E6D7 E880BB
+E6D8 E8818A
+E6D9 E88186
+E6DA E88192
+E6DB E88198
+E6DC E8819A
+E6DD E8819F
+E6DE E881A2
+E6DF E881A8
+E6E0 E881B3
+E6E1 E881B2
+E6E2 E881B0
+E6E3 E881B6
+E6E4 E881B9
+E6E5 E881BD
+E6E6 E881BF
+E6E7 E88284
+E6E8 E88286
+E6E9 E88285
+E6EA E8829B
+E6EB E88293
+E6EC E8829A
+E6ED E882AD
+E6EE E58690
+E6EF E882AC
+E6F0 E8839B
+E6F1 E883A5
+E6F2 E88399
+E6F3 E8839D
+E6F4 E88384
+E6F5 E8839A
+E6F6 E88396
+E6F7 E88489
+E6F8 E883AF
+E6F9 E883B1
+E6FA E8849B
+E6FB E884A9
+E6FC E884A3
+E6FD E884AF
+E6FE E8858B
+E7A1 E99A8B
+E7A2 E88586
+E7A3 E884BE
+E7A4 E88593
+E7A5 E88591
+E7A6 E883BC
+E7A7 E885B1
+E7A8 E885AE
+E7A9 E885A5
+E7AA E885A6
+E7AB E885B4
+E7AC E88683
+E7AD E88688
+E7AE E8868A
+E7AF E88680
+E7B0 E88682
+E7B1 E886A0
+E7B2 E88695
+E7B3 E886A4
+E7B4 E886A3
+E7B5 E8859F
+E7B6 E88693
+E7B7 E886A9
+E7B8 E886B0
+E7B9 E886B5
+E7BA E886BE
+E7BB E886B8
+E7BC E886BD
+E7BD E88780
+E7BE E88782
+E7BF E886BA
+E7C0 E88789
+E7C1 E8878D
+E7C2 E88791
+E7C3 E88799
+E7C4 E88798
+E7C5 E88788
+E7C6 E8879A
+E7C7 E8879F
+E7C8 E887A0
+E7C9 E887A7
+E7CA E887BA
+E7CB E887BB
+E7CC E887BE
+E7CD E88881
+E7CE E88882
+E7CF E88885
+E7D0 E88887
+E7D1 E8888A
+E7D2 E8888D
+E7D3 E88890
+E7D4 E88896
+E7D5 E888A9
+E7D6 E888AB
+E7D7 E888B8
+E7D8 E888B3
+E7D9 E88980
+E7DA E88999
+E7DB E88998
+E7DC E8899D
+E7DD E8899A
+E7DE E8899F
+E7DF E889A4
+E7E0 E889A2
+E7E1 E889A8
+E7E2 E889AA
+E7E3 E889AB
+E7E4 E888AE
+E7E5 E889B1
+E7E6 E889B7
+E7E7 E889B8
+E7E8 E889BE
+E7E9 E88A8D
+E7EA E88A92
+E7EB E88AAB
+E7EC E88A9F
+E7ED E88ABB
+E7EE E88AAC
+E7EF E88BA1
+E7F0 E88BA3
+E7F1 E88B9F
+E7F2 E88B92
+E7F3 E88BB4
+E7F4 E88BB3
+E7F5 E88BBA
+E7F6 E88E93
+E7F7 E88C83
+E7F8 E88BBB
+E7F9 E88BB9
+E7FA E88B9E
+E7FB E88C86
+E7FC E88B9C
+E7FD E88C89
+E7FE E88B99
+E8A1 E88CB5
+E8A2 E88CB4
+E8A3 E88C96
+E8A4 E88CB2
+E8A5 E88CB1
+E8A6 E88D80
+E8A7 E88CB9
+E8A8 E88D90
+E8A9 E88D85
+E8AA E88CAF
+E8AB E88CAB
+E8AC E88C97
+E8AD E88C98
+E8AE E88E85
+E8AF E88E9A
+E8B0 E88EAA
+E8B1 E88E9F
+E8B2 E88EA2
+E8B3 E88E96
+E8B4 E88CA3
+E8B5 E88E8E
+E8B6 E88E87
+E8B7 E88E8A
+E8B8 E88DBC
+E8B9 E88EB5
+E8BA E88DB3
+E8BB E88DB5
+E8BC E88EA0
+E8BD E88E89
+E8BE E88EA8
+E8BF E88FB4
+E8C0 E89093
+E8C1 E88FAB
+E8C2 E88F8E
+E8C3 E88FBD
+E8C4 E89083
+E8C5 E88F98
+E8C6 E8908B
+E8C7 E88F81
+E8C8 E88FB7
+E8C9 E89087
+E8CA E88FA0
+E8CB E88FB2
+E8CC E8908D
+E8CD E890A2
+E8CE E890A0
+E8CF E88EBD
+E8D0 E890B8
+E8D1 E89486
+E8D2 E88FBB
+E8D3 E891AD
+E8D4 E890AA
+E8D5 E890BC
+E8D6 E8959A
+E8D7 E89284
+E8D8 E891B7
+E8D9 E891AB
+E8DA E892AD
+E8DB E891AE
+E8DC E89282
+E8DD E891A9
+E8DE E89186
+E8DF E890AC
+E8E0 E891AF
+E8E1 E891B9
+E8E2 E890B5
+E8E3 E8938A
+E8E4 E891A2
+E8E5 E892B9
+E8E6 E892BF
+E8E7 E8929F
+E8E8 E89399
+E8E9 E8938D
+E8EA E892BB
+E8EB E8939A
+E8EC E89390
+E8ED E89381
+E8EE E89386
+E8EF E89396
+E8F0 E892A1
+E8F1 E894A1
+E8F2 E893BF
+E8F3 E893B4
+E8F4 E89497
+E8F5 E89498
+E8F6 E894AC
+E8F7 E8949F
+E8F8 E89495
+E8F9 E89494
+E8FA E893BC
+E8FB E89580
+E8FC E895A3
+E8FD E89598
+E8FE E89588
+E9A1 E89581
+E9A2 E89882
+E9A3 E8958B
+E9A4 E89595
+E9A5 E89680
+E9A6 E896A4
+E9A7 E89688
+E9A8 E89691
+E9A9 E8968A
+E9AA E896A8
+E9AB E895AD
+E9AC E89694
+E9AD E8969B
+E9AE E897AA
+E9AF E89687
+E9B0 E8969C
+E9B1 E895B7
+E9B2 E895BE
+E9B3 E89690
+E9B4 E89789
+E9B5 E896BA
+E9B6 E8978F
+E9B7 E896B9
+E9B8 E89790
+E9B9 E89795
+E9BA E8979D
+E9BB E897A5
+E9BC E8979C
+E9BD E897B9
+E9BE E8988A
+E9BF E89893
+E9C0 E8988B
+E9C1 E897BE
+E9C2 E897BA
+E9C3 E89886
+E9C4 E898A2
+E9C5 E8989A
+E9C6 E898B0
+E9C7 E898BF
+E9C8 E8998D
+E9C9 E4B995
+E9CA E89994
+E9CB E8999F
+E9CC E899A7
+E9CD E899B1
+E9CE E89A93
+E9CF E89AA3
+E9D0 E89AA9
+E9D1 E89AAA
+E9D2 E89A8B
+E9D3 E89A8C
+E9D4 E89AB6
+E9D5 E89AAF
+E9D6 E89B84
+E9D7 E89B86
+E9D8 E89AB0
+E9D9 E89B89
+E9DA E8A0A3
+E9DB E89AAB
+E9DC E89B94
+E9DD E89B9E
+E9DE E89BA9
+E9DF E89BAC
+E9E0 E89B9F
+E9E1 E89B9B
+E9E2 E89BAF
+E9E3 E89C92
+E9E4 E89C86
+E9E5 E89C88
+E9E6 E89C80
+E9E7 E89C83
+E9E8 E89BBB
+E9E9 E89C91
+E9EA E89C89
+E9EB E89C8D
+E9EC E89BB9
+E9ED E89C8A
+E9EE E89CB4
+E9EF E89CBF
+E9F0 E89CB7
+E9F1 E89CBB
+E9F2 E89CA5
+E9F3 E89CA9
+E9F4 E89C9A
+E9F5 E89DA0
+E9F6 E89D9F
+E9F7 E89DB8
+E9F8 E89D8C
+E9F9 E89D8E
+E9FA E89DB4
+E9FB E89D97
+E9FC E89DA8
+E9FD E89DAE
+E9FE E89D99
+EAA1 E89D93
+EAA2 E89DA3
+EAA3 E89DAA
+EAA4 E8A085
+EAA5 E89EA2
+EAA6 E89E9F
+EAA7 E89E82
+EAA8 E89EAF
+EAA9 E89F8B
+EAAA E89EBD
+EAAB E89F80
+EAAC E89F90
+EAAD E99B96
+EAAE E89EAB
+EAAF E89F84
+EAB0 E89EB3
+EAB1 E89F87
+EAB2 E89F86
+EAB3 E89EBB
+EAB4 E89FAF
+EAB5 E89FB2
+EAB6 E89FA0
+EAB7 E8A08F
+EAB8 E8A08D
+EAB9 E89FBE
+EABA E89FB6
+EABB E89FB7
+EABC E8A08E
+EABD E89F92
+EABE E8A091
+EABF E8A096
+EAC0 E8A095
+EAC1 E8A0A2
+EAC2 E8A0A1
+EAC3 E8A0B1
+EAC4 E8A0B6
+EAC5 E8A0B9
+EAC6 E8A0A7
+EAC7 E8A0BB
+EAC8 E8A184
+EAC9 E8A182
+EACA E8A192
+EACB E8A199
+EACC E8A19E
+EACD E8A1A2
+EACE E8A1AB
+EACF E8A281
+EAD0 E8A1BE
+EAD1 E8A29E
+EAD2 E8A1B5
+EAD3 E8A1BD
+EAD4 E8A2B5
+EAD5 E8A1B2
+EAD6 E8A282
+EAD7 E8A297
+EAD8 E8A292
+EAD9 E8A2AE
+EADA E8A299
+EADB E8A2A2
+EADC E8A28D
+EADD E8A2A4
+EADE E8A2B0
+EADF E8A2BF
+EAE0 E8A2B1
+EAE1 E8A383
+EAE2 E8A384
+EAE3 E8A394
+EAE4 E8A398
+EAE5 E8A399
+EAE6 E8A39D
+EAE7 E8A3B9
+EAE8 E8A482
+EAE9 E8A3BC
+EAEA E8A3B4
+EAEB E8A3A8
+EAEC E8A3B2
+EAED E8A484
+EAEE E8A48C
+EAEF E8A48A
+EAF0 E8A493
+EAF1 E8A583
+EAF2 E8A49E
+EAF3 E8A4A5
+EAF4 E8A4AA
+EAF5 E8A4AB
+EAF6 E8A581
+EAF7 E8A584
+EAF8 E8A4BB
+EAF9 E8A4B6
+EAFA E8A4B8
+EAFB E8A58C
+EAFC E8A49D
+EAFD E8A5A0
+EAFE E8A59E
+EBA1 E8A5A6
+EBA2 E8A5A4
+EBA3 E8A5AD
+EBA4 E8A5AA
+EBA5 E8A5AF
+EBA6 E8A5B4
+EBA7 E8A5B7
+EBA8 E8A5BE
+EBA9 E8A683
+EBAA E8A688
+EBAB E8A68A
+EBAC E8A693
+EBAD E8A698
+EBAE E8A6A1
+EBAF E8A6A9
+EBB0 E8A6A6
+EBB1 E8A6AC
+EBB2 E8A6AF
+EBB3 E8A6B2
+EBB4 E8A6BA
+EBB5 E8A6BD
+EBB6 E8A6BF
+EBB7 E8A780
+EBB8 E8A79A
+EBB9 E8A79C
+EBBA E8A79D
+EBBB E8A7A7
+EBBC E8A7B4
+EBBD E8A7B8
+EBBE E8A883
+EBBF E8A896
+EBC0 E8A890
+EBC1 E8A88C
+EBC2 E8A89B
+EBC3 E8A89D
+EBC4 E8A8A5
+EBC5 E8A8B6
+EBC6 E8A981
+EBC7 E8A99B
+EBC8 E8A992
+EBC9 E8A986
+EBCA E8A988
+EBCB E8A9BC
+EBCC E8A9AD
+EBCD E8A9AC
+EBCE E8A9A2
+EBCF E8AA85
+EBD0 E8AA82
+EBD1 E8AA84
+EBD2 E8AAA8
+EBD3 E8AAA1
+EBD4 E8AA91
+EBD5 E8AAA5
+EBD6 E8AAA6
+EBD7 E8AA9A
+EBD8 E8AAA3
+EBD9 E8AB84
+EBDA E8AB8D
+EBDB E8AB82
+EBDC E8AB9A
+EBDD E8ABAB
+EBDE E8ABB3
+EBDF E8ABA7
+EBE0 E8ABA4
+EBE1 E8ABB1
+EBE2 E8AC94
+EBE3 E8ABA0
+EBE4 E8ABA2
+EBE5 E8ABB7
+EBE6 E8AB9E
+EBE7 E8AB9B
+EBE8 E8AC8C
+EBE9 E8AC87
+EBEA E8AC9A
+EBEB E8ABA1
+EBEC E8AC96
+EBED E8AC90
+EBEE E8AC97
+EBEF E8ACA0
+EBF0 E8ACB3
+EBF1 E99EAB
+EBF2 E8ACA6
+EBF3 E8ACAB
+EBF4 E8ACBE
+EBF5 E8ACA8
+EBF6 E8AD81
+EBF7 E8AD8C
+EBF8 E8AD8F
+EBF9 E8AD8E
+EBFA E8AD89
+EBFB E8AD96
+EBFC E8AD9B
+EBFD E8AD9A
+EBFE E8ADAB
+ECA1 E8AD9F
+ECA2 E8ADAC
+ECA3 E8ADAF
+ECA4 E8ADB4
+ECA5 E8ADBD
+ECA6 E8AE80
+ECA7 E8AE8C
+ECA8 E8AE8E
+ECA9 E8AE92
+ECAA E8AE93
+ECAB E8AE96
+ECAC E8AE99
+ECAD E8AE9A
+ECAE E8B0BA
+ECAF E8B181
+ECB0 E8B0BF
+ECB1 E8B188
+ECB2 E8B18C
+ECB3 E8B18E
+ECB4 E8B190
+ECB5 E8B195
+ECB6 E8B1A2
+ECB7 E8B1AC
+ECB8 E8B1B8
+ECB9 E8B1BA
+ECBA E8B282
+ECBB E8B289
+ECBC E8B285
+ECBD E8B28A
+ECBE E8B28D
+ECBF E8B28E
+ECC0 E8B294
+ECC1 E8B1BC
+ECC2 E8B298
+ECC3 E6889D
+ECC4 E8B2AD
+ECC5 E8B2AA
+ECC6 E8B2BD
+ECC7 E8B2B2
+ECC8 E8B2B3
+ECC9 E8B2AE
+ECCA E8B2B6
+ECCB E8B388
+ECCC E8B381
+ECCD E8B3A4
+ECCE E8B3A3
+ECCF E8B39A
+ECD0 E8B3BD
+ECD1 E8B3BA
+ECD2 E8B3BB
+ECD3 E8B484
+ECD4 E8B485
+ECD5 E8B48A
+ECD6 E8B487
+ECD7 E8B48F
+ECD8 E8B48D
+ECD9 E8B490
+ECDA E9BD8E
+ECDB E8B493
+ECDC E8B38D
+ECDD E8B494
+ECDE E8B496
+ECDF E8B5A7
+ECE0 E8B5AD
+ECE1 E8B5B1
+ECE2 E8B5B3
+ECE3 E8B681
+ECE4 E8B699
+ECE5 E8B782
+ECE6 E8B6BE
+ECE7 E8B6BA
+ECE8 E8B78F
+ECE9 E8B79A
+ECEA E8B796
+ECEB E8B78C
+ECEC E8B79B
+ECED E8B78B
+ECEE E8B7AA
+ECEF E8B7AB
+ECF0 E8B79F
+ECF1 E8B7A3
+ECF2 E8B7BC
+ECF3 E8B888
+ECF4 E8B889
+ECF5 E8B7BF
+ECF6 E8B89D
+ECF7 E8B89E
+ECF8 E8B890
+ECF9 E8B89F
+ECFA E8B982
+ECFB E8B8B5
+ECFC E8B8B0
+ECFD E8B8B4
+ECFE E8B98A
+EDA1 E8B987
+EDA2 E8B989
+EDA3 E8B98C
+EDA4 E8B990
+EDA5 E8B988
+EDA6 E8B999
+EDA7 E8B9A4
+EDA8 E8B9A0
+EDA9 E8B8AA
+EDAA E8B9A3
+EDAB E8B995
+EDAC E8B9B6
+EDAD E8B9B2
+EDAE E8B9BC
+EDAF E8BA81
+EDB0 E8BA87
+EDB1 E8BA85
+EDB2 E8BA84
+EDB3 E8BA8B
+EDB4 E8BA8A
+EDB5 E8BA93
+EDB6 E8BA91
+EDB7 E8BA94
+EDB8 E8BA99
+EDB9 E8BAAA
+EDBA E8BAA1
+EDBB E8BAAC
+EDBC E8BAB0
+EDBD E8BB86
+EDBE E8BAB1
+EDBF E8BABE
+EDC0 E8BB85
+EDC1 E8BB88
+EDC2 E8BB8B
+EDC3 E8BB9B
+EDC4 E8BBA3
+EDC5 E8BBBC
+EDC6 E8BBBB
+EDC7 E8BBAB
+EDC8 E8BBBE
+EDC9 E8BC8A
+EDCA E8BC85
+EDCB E8BC95
+EDCC E8BC92
+EDCD E8BC99
+EDCE E8BC93
+EDCF E8BC9C
+EDD0 E8BC9F
+EDD1 E8BC9B
+EDD2 E8BC8C
+EDD3 E8BCA6
+EDD4 E8BCB3
+EDD5 E8BCBB
+EDD6 E8BCB9
+EDD7 E8BD85
+EDD8 E8BD82
+EDD9 E8BCBE
+EDDA E8BD8C
+EDDB E8BD89
+EDDC E8BD86
+EDDD E8BD8E
+EDDE E8BD97
+EDDF E8BD9C
+EDE0 E8BDA2
+EDE1 E8BDA3
+EDE2 E8BDA4
+EDE3 E8BE9C
+EDE4 E8BE9F
+EDE5 E8BEA3
+EDE6 E8BEAD
+EDE7 E8BEAF
+EDE8 E8BEB7
+EDE9 E8BF9A
+EDEA E8BFA5
+EDEB E8BFA2
+EDEC E8BFAA
+EDED E8BFAF
+EDEE E98287
+EDEF E8BFB4
+EDF0 E98085
+EDF1 E8BFB9
+EDF2 E8BFBA
+EDF3 E98091
+EDF4 E98095
+EDF5 E980A1
+EDF6 E9808D
+EDF7 E9809E
+EDF8 E98096
+EDF9 E9808B
+EDFA E980A7
+EDFB E980B6
+EDFC E980B5
+EDFD E980B9
+EDFE E8BFB8
+EEA1 E9818F
+EEA2 E98190
+EEA3 E98191
+EEA4 E98192
+EEA5 E9808E
+EEA6 E98189
+EEA7 E980BE
+EEA8 E98196
+EEA9 E98198
+EEAA E9819E
+EEAB E981A8
+EEAC E981AF
+EEAD E981B6
+EEAE E99AA8
+EEAF E981B2
+EEB0 E98282
+EEB1 E981BD
+EEB2 E98281
+EEB3 E98280
+EEB4 E9828A
+EEB5 E98289
+EEB6 E9828F
+EEB7 E982A8
+EEB8 E982AF
+EEB9 E982B1
+EEBA E982B5
+EEBB E983A2
+EEBC E983A4
+EEBD E68988
+EEBE E9839B
+EEBF E98482
+EEC0 E98492
+EEC1 E98499
+EEC2 E984B2
+EEC3 E984B0
+EEC4 E9858A
+EEC5 E98596
+EEC6 E98598
+EEC7 E985A3
+EEC8 E985A5
+EEC9 E985A9
+EECA E985B3
+EECB E985B2
+EECC E9868B
+EECD E98689
+EECE E98682
+EECF E986A2
+EED0 E986AB
+EED1 E986AF
+EED2 E986AA
+EED3 E986B5
+EED4 E986B4
+EED5 E986BA
+EED6 E98780
+EED7 E98781
+EED8 E98789
+EED9 E9878B
+EEDA E98790
+EEDB E98796
+EEDC E9879F
+EEDD E987A1
+EEDE E9879B
+EEDF E987BC
+EEE0 E987B5
+EEE1 E987B6
+EEE2 E9889E
+EEE3 E987BF
+EEE4 E98894
+EEE5 E988AC
+EEE6 E98895
+EEE7 E98891
+EEE8 E9899E
+EEE9 E98997
+EEEA E98985
+EEEB E98989
+EEEC E989A4
+EEED E98988
+EEEE E98A95
+EEEF E988BF
+EEF0 E9898B
+EEF1 E98990
+EEF2 E98A9C
+EEF3 E98A96
+EEF4 E98A93
+EEF5 E98A9B
+EEF6 E9899A
+EEF7 E98B8F
+EEF8 E98AB9
+EEF9 E98AB7
+EEFA E98BA9
+EEFB E98C8F
+EEFC E98BBA
+EEFD E98D84
+EEFE E98CAE
+EFA1 E98C99
+EFA2 E98CA2
+EFA3 E98C9A
+EFA4 E98CA3
+EFA5 E98CBA
+EFA6 E98CB5
+EFA7 E98CBB
+EFA8 E98D9C
+EFA9 E98DA0
+EFAA E98DBC
+EFAB E98DAE
+EFAC E98D96
+EFAD E98EB0
+EFAE E98EAC
+EFAF E98EAD
+EFB0 E98E94
+EFB1 E98EB9
+EFB2 E98F96
+EFB3 E98F97
+EFB4 E98FA8
+EFB5 E98FA5
+EFB6 E98F98
+EFB7 E98F83
+EFB8 E98F9D
+EFB9 E98F90
+EFBA E98F88
+EFBB E98FA4
+EFBC E9909A
+EFBD E99094
+EFBE E99093
+EFBF E99083
+EFC0 E99087
+EFC1 E99090
+EFC2 E990B6
+EFC3 E990AB
+EFC4 E990B5
+EFC5 E990A1
+EFC6 E990BA
+EFC7 E99181
+EFC8 E99192
+EFC9 E99184
+EFCA E9919B
+EFCB E991A0
+EFCC E991A2
+EFCD E9919E
+EFCE E991AA
+EFCF E988A9
+EFD0 E991B0
+EFD1 E991B5
+EFD2 E991B7
+EFD3 E991BD
+EFD4 E9919A
+EFD5 E991BC
+EFD6 E991BE
+EFD7 E99281
+EFD8 E991BF
+EFD9 E99682
+EFDA E99687
+EFDB E9968A
+EFDC E99694
+EFDD E99696
+EFDE E99698
+EFDF E99699
+EFE0 E996A0
+EFE1 E996A8
+EFE2 E996A7
+EFE3 E996AD
+EFE4 E996BC
+EFE5 E996BB
+EFE6 E996B9
+EFE7 E996BE
+EFE8 E9978A
+EFE9 E6BFB6
+EFEA E99783
+EFEB E9978D
+EFEC E9978C
+EFED E99795
+EFEE E99794
+EFEF E99796
+EFF0 E9979C
+EFF1 E997A1
+EFF2 E997A5
+EFF3 E997A2
+EFF4 E998A1
+EFF5 E998A8
+EFF6 E998AE
+EFF7 E998AF
+EFF8 E99982
+EFF9 E9998C
+EFFA E9998F
+EFFB E9998B
+EFFC E999B7
+EFFD E9999C
+EFFE E9999E
+F0A1 E9999D
+F0A2 E9999F
+F0A3 E999A6
+F0A4 E999B2
+F0A5 E999AC
+F0A6 E99A8D
+F0A7 E99A98
+F0A8 E99A95
+F0A9 E99A97
+F0AA E99AAA
+F0AB E99AA7
+F0AC E99AB1
+F0AD E99AB2
+F0AE E99AB0
+F0AF E99AB4
+F0B0 E99AB6
+F0B1 E99AB8
+F0B2 E99AB9
+F0B3 E99B8E
+F0B4 E99B8B
+F0B5 E99B89
+F0B6 E99B8D
+F0B7 E8A58D
+F0B8 E99B9C
+F0B9 E99C8D
+F0BA E99B95
+F0BB E99BB9
+F0BC E99C84
+F0BD E99C86
+F0BE E99C88
+F0BF E99C93
+F0C0 E99C8E
+F0C1 E99C91
+F0C2 E99C8F
+F0C3 E99C96
+F0C4 E99C99
+F0C5 E99CA4
+F0C6 E99CAA
+F0C7 E99CB0
+F0C8 E99CB9
+F0C9 E99CBD
+F0CA E99CBE
+F0CB E99D84
+F0CC E99D86
+F0CD E99D88
+F0CE E99D82
+F0CF E99D89
+F0D0 E99D9C
+F0D1 E99DA0
+F0D2 E99DA4
+F0D3 E99DA6
+F0D4 E99DA8
+F0D5 E58B92
+F0D6 E99DAB
+F0D7 E99DB1
+F0D8 E99DB9
+F0D9 E99E85
+F0DA E99DBC
+F0DB E99E81
+F0DC E99DBA
+F0DD E99E86
+F0DE E99E8B
+F0DF E99E8F
+F0E0 E99E90
+F0E1 E99E9C
+F0E2 E99EA8
+F0E3 E99EA6
+F0E4 E99EA3
+F0E5 E99EB3
+F0E6 E99EB4
+F0E7 E99F83
+F0E8 E99F86
+F0E9 E99F88
+F0EA E99F8B
+F0EB E99F9C
+F0EC E99FAD
+F0ED E9BD8F
+F0EE E99FB2
+F0EF E7AB9F
+F0F0 E99FB6
+F0F1 E99FB5
+F0F2 E9A08F
+F0F3 E9A08C
+F0F4 E9A0B8
+F0F5 E9A0A4
+F0F6 E9A0A1
+F0F7 E9A0B7
+F0F8 E9A0BD
+F0F9 E9A186
+F0FA E9A18F
+F0FB E9A18B
+F0FC E9A1AB
+F0FD E9A1AF
+F0FE E9A1B0
+F1A1 E9A1B1
+F1A2 E9A1B4
+F1A3 E9A1B3
+F1A4 E9A2AA
+F1A5 E9A2AF
+F1A6 E9A2B1
+F1A7 E9A2B6
+F1A8 E9A384
+F1A9 E9A383
+F1AA E9A386
+F1AB E9A3A9
+F1AC E9A3AB
+F1AD E9A483
+F1AE E9A489
+F1AF E9A492
+F1B0 E9A494
+F1B1 E9A498
+F1B2 E9A4A1
+F1B3 E9A49D
+F1B4 E9A49E
+F1B5 E9A4A4
+F1B6 E9A4A0
+F1B7 E9A4AC
+F1B8 E9A4AE
+F1B9 E9A4BD
+F1BA E9A4BE
+F1BB E9A582
+F1BC E9A589
+F1BD E9A585
+F1BE E9A590
+F1BF E9A58B
+F1C0 E9A591
+F1C1 E9A592
+F1C2 E9A58C
+F1C3 E9A595
+F1C4 E9A697
+F1C5 E9A698
+F1C6 E9A6A5
+F1C7 E9A6AD
+F1C8 E9A6AE
+F1C9 E9A6BC
+F1CA E9A79F
+F1CB E9A79B
+F1CC E9A79D
+F1CD E9A798
+F1CE E9A791
+F1CF E9A7AD
+F1D0 E9A7AE
+F1D1 E9A7B1
+F1D2 E9A7B2
+F1D3 E9A7BB
+F1D4 E9A7B8
+F1D5 E9A881
+F1D6 E9A88F
+F1D7 E9A885
+F1D8 E9A7A2
+F1D9 E9A899
+F1DA E9A8AB
+F1DB E9A8B7
+F1DC E9A985
+F1DD E9A982
+F1DE E9A980
+F1DF E9A983
+F1E0 E9A8BE
+F1E1 E9A995
+F1E2 E9A98D
+F1E3 E9A99B
+F1E4 E9A997
+F1E5 E9A99F
+F1E6 E9A9A2
+F1E7 E9A9A5
+F1E8 E9A9A4
+F1E9 E9A9A9
+F1EA E9A9AB
+F1EB E9A9AA
+F1EC E9AAAD
+F1ED E9AAB0
+F1EE E9AABC
+F1EF E9AB80
+F1F0 E9AB8F
+F1F1 E9AB91
+F1F2 E9AB93
+F1F3 E9AB94
+F1F4 E9AB9E
+F1F5 E9AB9F
+F1F6 E9ABA2
+F1F7 E9ABA3
+F1F8 E9ABA6
+F1F9 E9ABAF
+F1FA E9ABAB
+F1FB E9ABAE
+F1FC E9ABB4
+F1FD E9ABB1
+F1FE E9ABB7
+F2A1 E9ABBB
+F2A2 E9AC86
+F2A3 E9AC98
+F2A4 E9AC9A
+F2A5 E9AC9F
+F2A6 E9ACA2
+F2A7 E9ACA3
+F2A8 E9ACA5
+F2A9 E9ACA7
+F2AA E9ACA8
+F2AB E9ACA9
+F2AC E9ACAA
+F2AD E9ACAE
+F2AE E9ACAF
+F2AF E9ACB2
+F2B0 E9AD84
+F2B1 E9AD83
+F2B2 E9AD8F
+F2B3 E9AD8D
+F2B4 E9AD8E
+F2B5 E9AD91
+F2B6 E9AD98
+F2B7 E9ADB4
+F2B8 E9AE93
+F2B9 E9AE83
+F2BA E9AE91
+F2BB E9AE96
+F2BC E9AE97
+F2BD E9AE9F
+F2BE E9AEA0
+F2BF E9AEA8
+F2C0 E9AEB4
+F2C1 E9AF80
+F2C2 E9AF8A
+F2C3 E9AEB9
+F2C4 E9AF86
+F2C5 E9AF8F
+F2C6 E9AF91
+F2C7 E9AF92
+F2C8 E9AFA3
+F2C9 E9AFA2
+F2CA E9AFA4
+F2CB E9AF94
+F2CC E9AFA1
+F2CD E9B0BA
+F2CE E9AFB2
+F2CF E9AFB1
+F2D0 E9AFB0
+F2D1 E9B095
+F2D2 E9B094
+F2D3 E9B089
+F2D4 E9B093
+F2D5 E9B08C
+F2D6 E9B086
+F2D7 E9B088
+F2D8 E9B092
+F2D9 E9B08A
+F2DA E9B084
+F2DB E9B0AE
+F2DC E9B09B
+F2DD E9B0A5
+F2DE E9B0A4
+F2DF E9B0A1
+F2E0 E9B0B0
+F2E1 E9B187
+F2E2 E9B0B2
+F2E3 E9B186
+F2E4 E9B0BE
+F2E5 E9B19A
+F2E6 E9B1A0
+F2E7 E9B1A7
+F2E8 E9B1B6
+F2E9 E9B1B8
+F2EA E9B3A7
+F2EB E9B3AC
+F2EC E9B3B0
+F2ED E9B489
+F2EE E9B488
+F2EF E9B3AB
+F2F0 E9B483
+F2F1 E9B486
+F2F2 E9B4AA
+F2F3 E9B4A6
+F2F4 E9B6AF
+F2F5 E9B4A3
+F2F6 E9B49F
+F2F7 E9B584
+F2F8 E9B495
+F2F9 E9B492
+F2FA E9B581
+F2FB E9B4BF
+F2FC E9B4BE
+F2FD E9B586
+F2FE E9B588
+F3A1 E9B59D
+F3A2 E9B59E
+F3A3 E9B5A4
+F3A4 E9B591
+F3A5 E9B590
+F3A6 E9B599
+F3A7 E9B5B2
+F3A8 E9B689
+F3A9 E9B687
+F3AA E9B6AB
+F3AB E9B5AF
+F3AC E9B5BA
+F3AD E9B69A
+F3AE E9B6A4
+F3AF E9B6A9
+F3B0 E9B6B2
+F3B1 E9B784
+F3B2 E9B781
+F3B3 E9B6BB
+F3B4 E9B6B8
+F3B5 E9B6BA
+F3B6 E9B786
+F3B7 E9B78F
+F3B8 E9B782
+F3B9 E9B799
+F3BA E9B793
+F3BB E9B7B8
+F3BC E9B7A6
+F3BD E9B7AD
+F3BE E9B7AF
+F3BF E9B7BD
+F3C0 E9B89A
+F3C1 E9B89B
+F3C2 E9B89E
+F3C3 E9B9B5
+F3C4 E9B9B9
+F3C5 E9B9BD
+F3C6 E9BA81
+F3C7 E9BA88
+F3C8 E9BA8B
+F3C9 E9BA8C
+F3CA E9BA92
+F3CB E9BA95
+F3CC E9BA91
+F3CD E9BA9D
+F3CE E9BAA5
+F3CF E9BAA9
+F3D0 E9BAB8
+F3D1 E9BAAA
+F3D2 E9BAAD
+F3D3 E99DA1
+F3D4 E9BB8C
+F3D5 E9BB8E
+F3D6 E9BB8F
+F3D7 E9BB90
+F3D8 E9BB94
+F3D9 E9BB9C
+F3DA E9BB9E
+F3DB E9BB9D
+F3DC E9BBA0
+F3DD E9BBA5
+F3DE E9BBA8
+F3DF E9BBAF
+F3E0 E9BBB4
+F3E1 E9BBB6
+F3E2 E9BBB7
+F3E3 E9BBB9
+F3E4 E9BBBB
+F3E5 E9BBBC
+F3E6 E9BBBD
+F3E7 E9BC87
+F3E8 E9BC88
+F3E9 E79AB7
+F3EA E9BC95
+F3EB E9BCA1
+F3EC E9BCAC
+F3ED E9BCBE
+F3EE E9BD8A
+F3EF E9BD92
+F3F0 E9BD94
+F3F1 E9BDA3
+F3F2 E9BD9F
+F3F3 E9BDA0
+F3F4 E9BDA1
+F3F5 E9BDA6
+F3F6 E9BDA7
+F3F7 E9BDAC
+F3F8 E9BDAA
+F3F9 E9BDB7
+F3FA E9BDB2
+F3FB E9BDB6
+F3FC E9BE95
+F3FD E9BE9C
+F3FE E9BEA0
+F4A1 E5A0AF
+F4A2 E6A787
+F4A3 E98199
+F4A4 E791A4
+F4A5 E5879C
+F4A6 E78699
+F5A1 EE8080
+F5A2 EE8081
+F5A3 EE8082
+F5A4 EE8083
+F5A5 EE8084
+F5A6 EE8085
+F5A7 EE8086
+F5A8 EE8087
+F5A9 EE8088
+F5AA EE8089
+F5AB EE808A
+F5AC EE808B
+F5AD EE808C
+F5AE EE808D
+F5AF EE808E
+F5B0 EE808F
+F5B1 EE8090
+F5B2 EE8091
+F5B3 EE8092
+F5B4 EE8093
+F5B5 EE8094
+F5B6 EE8095
+F5B7 EE8096
+F5B8 EE8097
+F5B9 EE8098
+F5BA EE8099
+F5BB EE809A
+F5BC EE809B
+F5BD EE809C
+F5BE EE809D
+F5BF EE809E
+F5C0 EE809F
+F5C1 EE80A0
+F5C2 EE80A1
+F5C3 EE80A2
+F5C4 EE80A3
+F5C5 EE80A4
+F5C6 EE80A5
+F5C7 EE80A6
+F5C8 EE80A7
+F5C9 EE80A8
+F5CA EE80A9
+F5CB EE80AA
+F5CC EE80AB
+F5CD EE80AC
+F5CE EE80AD
+F5CF EE80AE
+F5D0 EE80AF
+F5D1 EE80B0
+F5D2 EE80B1
+F5D3 EE80B2
+F5D4 EE80B3
+F5D5 EE80B4
+F5D6 EE80B5
+F5D7 EE80B6
+F5D8 EE80B7
+F5D9 EE80B8
+F5DA EE80B9
+F5DB EE80BA
+F5DC EE80BB
+F5DD EE80BC
+F5DE EE80BD
+F5DF EE80BE
+F5E0 EE80BF
+F5E1 EE8180
+F5E2 EE8181
+F5E3 EE8182
+F5E4 EE8183
+F5E5 EE8184
+F5E6 EE8185
+F5E7 EE8186
+F5E8 EE8187
+F5E9 EE8188
+F5EA EE8189
+F5EB EE818A
+F5EC EE818B
+F5ED EE818C
+F5EE EE818D
+F5EF EE818E
+F5F0 EE818F
+F5F1 EE8190
+F5F2 EE8191
+F5F3 EE8192
+F5F4 EE8193
+F5F5 EE8194
+F5F6 EE8195
+F5F7 EE8196
+F5F8 EE8197
+F5F9 EE8198
+F5FA EE8199
+F5FB EE819A
+F5FC EE819B
+F5FD EE819C
+F5FE EE819D
+F6A1 EE819E
+F6A2 EE819F
+F6A3 EE81A0
+F6A4 EE81A1
+F6A5 EE81A2
+F6A6 EE81A3
+F6A7 EE81A4
+F6A8 EE81A5
+F6A9 EE81A6
+F6AA EE81A7
+F6AB EE81A8
+F6AC EE81A9
+F6AD EE81AA
+F6AE EE81AB
+F6AF EE81AC
+F6B0 EE81AD
+F6B1 EE81AE
+F6B2 EE81AF
+F6B3 EE81B0
+F6B4 EE81B1
+F6B5 EE81B2
+F6B6 EE81B3
+F6B7 EE81B4
+F6B8 EE81B5
+F6B9 EE81B6
+F6BA EE81B7
+F6BB EE81B8
+F6BC EE81B9
+F6BD EE81BA
+F6BE EE81BB
+F6BF EE81BC
+F6C0 EE81BD
+F6C1 EE81BE
+F6C2 EE81BF
+F6C3 EE8280
+F6C4 EE8281
+F6C5 EE8282
+F6C6 EE8283
+F6C7 EE8284
+F6C8 EE8285
+F6C9 EE8286
+F6CA EE8287
+F6CB EE8288
+F6CC EE8289
+F6CD EE828A
+F6CE EE828B
+F6CF EE828C
+F6D0 EE828D
+F6D1 EE828E
+F6D2 EE828F
+F6D3 EE8290
+F6D4 EE8291
+F6D5 EE8292
+F6D6 EE8293
+F6D7 EE8294
+F6D8 EE8295
+F6D9 EE8296
+F6DA EE8297
+F6DB EE8298
+F6DC EE8299
+F6DD EE829A
+F6DE EE829B
+F6DF EE829C
+F6E0 EE829D
+F6E1 EE829E
+F6E2 EE829F
+F6E3 EE82A0
+F6E4 EE82A1
+F6E5 EE82A2
+F6E6 EE82A3
+F6E7 EE82A4
+F6E8 EE82A5
+F6E9 EE82A6
+F6EA EE82A7
+F6EB EE82A8
+F6EC EE82A9
+F6ED EE82AA
+F6EE EE82AB
+F6EF EE82AC
+F6F0 EE82AD
+F6F1 EE82AE
+F6F2 EE82AF
+F6F3 EE82B0
+F6F4 EE82B1
+F6F5 EE82B2
+F6F6 EE82B3
+F6F7 EE82B4
+F6F8 EE82B5
+F6F9 EE82B6
+F6FA EE82B7
+F6FB EE82B8
+F6FC EE82B9
+F6FD EE82BA
+F6FE EE82BB
+F7A1 EE82BC
+F7A2 EE82BD
+F7A3 EE82BE
+F7A4 EE82BF
+F7A5 EE8380
+F7A6 EE8381
+F7A7 EE8382
+F7A8 EE8383
+F7A9 EE8384
+F7AA EE8385
+F7AB EE8386
+F7AC EE8387
+F7AD EE8388
+F7AE EE8389
+F7AF EE838A
+F7B0 EE838B
+F7B1 EE838C
+F7B2 EE838D
+F7B3 EE838E
+F7B4 EE838F
+F7B5 EE8390
+F7B6 EE8391
+F7B7 EE8392
+F7B8 EE8393
+F7B9 EE8394
+F7BA EE8395
+F7BB EE8396
+F7BC EE8397
+F7BD EE8398
+F7BE EE8399
+F7BF EE839A
+F7C0 EE839B
+F7C1 EE839C
+F7C2 EE839D
+F7C3 EE839E
+F7C4 EE839F
+F7C5 EE83A0
+F7C6 EE83A1
+F7C7 EE83A2
+F7C8 EE83A3
+F7C9 EE83A4
+F7CA EE83A5
+F7CB EE83A6
+F7CC EE83A7
+F7CD EE83A8
+F7CE EE83A9
+F7CF EE83AA
+F7D0 EE83AB
+F7D1 EE83AC
+F7D2 EE83AD
+F7D3 EE83AE
+F7D4 EE83AF
+F7D5 EE83B0
+F7D6 EE83B1
+F7D7 EE83B2
+F7D8 EE83B3
+F7D9 EE83B4
+F7DA EE83B5
+F7DB EE83B6
+F7DC EE83B7
+F7DD EE83B8
+F7DE EE83B9
+F7DF EE83BA
+F7E0 EE83BB
+F7E1 EE83BC
+F7E2 EE83BD
+F7E3 EE83BE
+F7E4 EE83BF
+F7E5 EE8480
+F7E6 EE8481
+F7E7 EE8482
+F7E8 EE8483
+F7E9 EE8484
+F7EA EE8485
+F7EB EE8486
+F7EC EE8487
+F7ED EE8488
+F7EE EE8489
+F7EF EE848A
+F7F0 EE848B
+F7F1 EE848C
+F7F2 EE848D
+F7F3 EE848E
+F7F4 EE848F
+F7F5 EE8490
+F7F6 EE8491
+F7F7 EE8492
+F7F8 EE8493
+F7F9 EE8494
+F7FA EE8495
+F7FB EE8496
+F7FC EE8497
+F7FD EE8498
+F7FE EE8499
+F8A1 EE849A
+F8A2 EE849B
+F8A3 EE849C
+F8A4 EE849D
+F8A5 EE849E
+F8A6 EE849F
+F8A7 EE84A0
+F8A8 EE84A1
+F8A9 EE84A2
+F8AA EE84A3
+F8AB EE84A4
+F8AC EE84A5
+F8AD EE84A6
+F8AE EE84A7
+F8AF EE84A8
+F8B0 EE84A9
+F8B1 EE84AA
+F8B2 EE84AB
+F8B3 EE84AC
+F8B4 EE84AD
+F8B5 EE84AE
+F8B6 EE84AF
+F8B7 EE84B0
+F8B8 EE84B1
+F8B9 EE84B2
+F8BA EE84B3
+F8BB EE84B4
+F8BC EE84B5
+F8BD EE84B6
+F8BE EE84B7
+F8BF EE84B8
+F8C0 EE84B9
+F8C1 EE84BA
+F8C2 EE84BB
+F8C3 EE84BC
+F8C4 EE84BD
+F8C5 EE84BE
+F8C6 EE84BF
+F8C7 EE8580
+F8C8 EE8581
+F8C9 EE8582
+F8CA EE8583
+F8CB EE8584
+F8CC EE8585
+F8CD EE8586
+F8CE EE8587
+F8CF EE8588
+F8D0 EE8589
+F8D1 EE858A
+F8D2 EE858B
+F8D3 EE858C
+F8D4 EE858D
+F8D5 EE858E
+F8D6 EE858F
+F8D7 EE8590
+F8D8 EE8591
+F8D9 EE8592
+F8DA EE8593
+F8DB EE8594
+F8DC EE8595
+F8DD EE8596
+F8DE EE8597
+F8DF EE8598
+F8E0 EE8599
+F8E1 EE859A
+F8E2 EE859B
+F8E3 EE859C
+F8E4 EE859D
+F8E5 EE859E
+F8E6 EE859F
+F8E7 EE85A0
+F8E8 EE85A1
+F8E9 EE85A2
+F8EA EE85A3
+F8EB EE85A4
+F8EC EE85A5
+F8ED EE85A6
+F8EE EE85A7
+F8EF EE85A8
+F8F0 EE85A9
+F8F1 EE85AA
+F8F2 EE85AB
+F8F3 EE85AC
+F8F4 EE85AD
+F8F5 EE85AE
+F8F6 EE85AF
+F8F7 EE85B0
+F8F8 EE85B1
+F8F9 EE85B2
+F8FA EE85B3
+F8FB EE85B4
+F8FC EE85B5
+F8FD EE85B6
+F8FE EE85B7
+F9A1 EE85B8
+F9A2 EE85B9
+F9A3 EE85BA
+F9A4 EE85BB
+F9A5 EE85BC
+F9A6 EE85BD
+F9A7 EE85BE
+F9A8 EE85BF
+F9A9 EE8680
+F9AA EE8681
+F9AB EE8682
+F9AC EE8683
+F9AD EE8684
+F9AE EE8685
+F9AF EE8686
+F9B0 EE8687
+F9B1 EE8688
+F9B2 EE8689
+F9B3 EE868A
+F9B4 EE868B
+F9B5 EE868C
+F9B6 EE868D
+F9B7 EE868E
+F9B8 EE868F
+F9B9 EE8690
+F9BA EE8691
+F9BB EE8692
+F9BC EE8693
+F9BD EE8694
+F9BE EE8695
+F9BF EE8696
+F9C0 EE8697
+F9C1 EE8698
+F9C2 EE8699
+F9C3 EE869A
+F9C4 EE869B
+F9C5 EE869C
+F9C6 EE869D
+F9C7 EE869E
+F9C8 EE869F
+F9C9 EE86A0
+F9CA EE86A1
+F9CB EE86A2
+F9CC EE86A3
+F9CD EE86A4
+F9CE EE86A5
+F9CF EE86A6
+F9D0 EE86A7
+F9D1 EE86A8
+F9D2 EE86A9
+F9D3 EE86AA
+F9D4 EE86AB
+F9D5 EE86AC
+F9D6 EE86AD
+F9D7 EE86AE
+F9D8 EE86AF
+F9D9 EE86B0
+F9DA EE86B1
+F9DB EE86B2
+F9DC EE86B3
+F9DD EE86B4
+F9DE EE86B5
+F9DF EE86B6
+F9E0 EE86B7
+F9E1 EE86B8
+F9E2 EE86B9
+F9E3 EE86BA
+F9E4 EE86BB
+F9E5 EE86BC
+F9E6 EE86BD
+F9E7 EE86BE
+F9E8 EE86BF
+F9E9 EE8780
+F9EA EE8781
+F9EB EE8782
+F9EC EE8783
+F9ED EE8784
+F9EE EE8785
+F9EF EE8786
+F9F0 EE8787
+F9F1 EE8788
+F9F2 EE8789
+F9F3 EE878A
+F9F4 EE878B
+F9F5 EE878C
+F9F6 EE878D
+F9F7 EE878E
+F9F8 EE878F
+F9F9 EE8790
+F9FA EE8791
+F9FB EE8792
+F9FC EE8793
+F9FD EE8794
+F9FE EE8795
+FAA1 EE8796
+FAA2 EE8797
+FAA3 EE8798
+FAA4 EE8799
+FAA5 EE879A
+FAA6 EE879B
+FAA7 EE879C
+FAA8 EE879D
+FAA9 EE879E
+FAAA EE879F
+FAAB EE87A0
+FAAC EE87A1
+FAAD EE87A2
+FAAE EE87A3
+FAAF EE87A4
+FAB0 EE87A5
+FAB1 EE87A6
+FAB2 EE87A7
+FAB3 EE87A8
+FAB4 EE87A9
+FAB5 EE87AA
+FAB6 EE87AB
+FAB7 EE87AC
+FAB8 EE87AD
+FAB9 EE87AE
+FABA EE87AF
+FABB EE87B0
+FABC EE87B1
+FABD EE87B2
+FABE EE87B3
+FABF EE87B4
+FAC0 EE87B5
+FAC1 EE87B6
+FAC2 EE87B7
+FAC3 EE87B8
+FAC4 EE87B9
+FAC5 EE87BA
+FAC6 EE87BB
+FAC7 EE87BC
+FAC8 EE87BD
+FAC9 EE87BE
+FACA EE87BF
+FACB EE8880
+FACC EE8881
+FACD EE8882
+FACE EE8883
+FACF EE8884
+FAD0 EE8885
+FAD1 EE8886
+FAD2 EE8887
+FAD3 EE8888
+FAD4 EE8889
+FAD5 EE888A
+FAD6 EE888B
+FAD7 EE888C
+FAD8 EE888D
+FAD9 EE888E
+FADA EE888F
+FADB EE8890
+FADC EE8891
+FADD EE8892
+FADE EE8893
+FADF EE8894
+FAE0 EE8895
+FAE1 EE8896
+FAE2 EE8897
+FAE3 EE8898
+FAE4 EE8899
+FAE5 EE889A
+FAE6 EE889B
+FAE7 EE889C
+FAE8 EE889D
+FAE9 EE889E
+FAEA EE889F
+FAEB EE88A0
+FAEC EE88A1
+FAED EE88A2
+FAEE EE88A3
+FAEF EE88A4
+FAF0 EE88A5
+FAF1 EE88A6
+FAF2 EE88A7
+FAF3 EE88A8
+FAF4 EE88A9
+FAF5 EE88AA
+FAF6 EE88AB
+FAF7 EE88AC
+FAF8 EE88AD
+FAF9 EE88AE
+FAFA EE88AF
+FAFB EE88B0
+FAFC EE88B1
+FAFD EE88B2
+FAFE EE88B3
+FBA1 EE88B4
+FBA2 EE88B5
+FBA3 EE88B6
+FBA4 EE88B7
+FBA5 EE88B8
+FBA6 EE88B9
+FBA7 EE88BA
+FBA8 EE88BB
+FBA9 EE88BC
+FBAA EE88BD
+FBAB EE88BE
+FBAC EE88BF
+FBAD EE8980
+FBAE EE8981
+FBAF EE8982
+FBB0 EE8983
+FBB1 EE8984
+FBB2 EE8985
+FBB3 EE8986
+FBB4 EE8987
+FBB5 EE8988
+FBB6 EE8989
+FBB7 EE898A
+FBB8 EE898B
+FBB9 EE898C
+FBBA EE898D
+FBBB EE898E
+FBBC EE898F
+FBBD EE8990
+FBBE EE8991
+FBBF EE8992
+FBC0 EE8993
+FBC1 EE8994
+FBC2 EE8995
+FBC3 EE8996
+FBC4 EE8997
+FBC5 EE8998
+FBC6 EE8999
+FBC7 EE899A
+FBC8 EE899B
+FBC9 EE899C
+FBCA EE899D
+FBCB EE899E
+FBCC EE899F
+FBCD EE89A0
+FBCE EE89A1
+FBCF EE89A2
+FBD0 EE89A3
+FBD1 EE89A4
+FBD2 EE89A5
+FBD3 EE89A6
+FBD4 EE89A7
+FBD5 EE89A8
+FBD6 EE89A9
+FBD7 EE89AA
+FBD8 EE89AB
+FBD9 EE89AC
+FBDA EE89AD
+FBDB EE89AE
+FBDC EE89AF
+FBDD EE89B0
+FBDE EE89B1
+FBDF EE89B2
+FBE0 EE89B3
+FBE1 EE89B4
+FBE2 EE89B5
+FBE3 EE89B6
+FBE4 EE89B7
+FBE5 EE89B8
+FBE6 EE89B9
+FBE7 EE89BA
+FBE8 EE89BB
+FBE9 EE89BC
+FBEA EE89BD
+FBEB EE89BE
+FBEC EE89BF
+FBED EE8A80
+FBEE EE8A81
+FBEF EE8A82
+FBF0 EE8A83
+FBF1 EE8A84
+FBF2 EE8A85
+FBF3 EE8A86
+FBF4 EE8A87
+FBF5 EE8A88
+FBF6 EE8A89
+FBF7 EE8A8A
+FBF8 EE8A8B
+FBF9 EE8A8C
+FBFA EE8A8D
+FBFB EE8A8E
+FBFC EE8A8F
+FBFD EE8A90
+FBFE EE8A91
+FCA1 EE8A92
+FCA2 EE8A93
+FCA3 EE8A94
+FCA4 EE8A95
+FCA5 EE8A96
+FCA6 EE8A97
+FCA7 EE8A98
+FCA8 EE8A99
+FCA9 EE8A9A
+FCAA EE8A9B
+FCAB EE8A9C
+FCAC EE8A9D
+FCAD EE8A9E
+FCAE EE8A9F
+FCAF EE8AA0
+FCB0 EE8AA1
+FCB1 EE8AA2
+FCB2 EE8AA3
+FCB3 EE8AA4
+FCB4 EE8AA5
+FCB5 EE8AA6
+FCB6 EE8AA7
+FCB7 EE8AA8
+FCB8 EE8AA9
+FCB9 EE8AAA
+FCBA EE8AAB
+FCBB EE8AAC
+FCBC EE8AAD
+FCBD EE8AAE
+FCBE EE8AAF
+FCBF EE8AB0
+FCC0 EE8AB1
+FCC1 EE8AB2
+FCC2 EE8AB3
+FCC3 EE8AB4
+FCC4 EE8AB5
+FCC5 EE8AB6
+FCC6 EE8AB7
+FCC7 EE8AB8
+FCC8 EE8AB9
+FCC9 EE8ABA
+FCCA EE8ABB
+FCCB EE8ABC
+FCCC EE8ABD
+FCCD EE8ABE
+FCCE EE8ABF
+FCCF EE8B80
+FCD0 EE8B81
+FCD1 EE8B82
+FCD2 EE8B83
+FCD3 EE8B84
+FCD4 EE8B85
+FCD5 EE8B86
+FCD6 EE8B87
+FCD7 EE8B88
+FCD8 EE8B89
+FCD9 EE8B8A
+FCDA EE8B8B
+FCDB EE8B8C
+FCDC EE8B8D
+FCDD EE8B8E
+FCDE EE8B8F
+FCDF EE8B90
+FCE0 EE8B91
+FCE1 EE8B92
+FCE2 EE8B93
+FCE3 EE8B94
+FCE4 EE8B95
+FCE5 EE8B96
+FCE6 EE8B97
+FCE7 EE8B98
+FCE8 EE8B99
+FCE9 EE8B9A
+FCEA EE8B9B
+FCEB EE8B9C
+FCEC EE8B9D
+FCED EE8B9E
+FCEE EE8B9F
+FCEF EE8BA0
+FCF0 EE8BA1
+FCF1 EE8BA2
+FCF2 EE8BA3
+FCF3 EE8BA4
+FCF4 EE8BA5
+FCF5 EE8BA6
+FCF6 EE8BA7
+FCF7 EE8BA8
+FCF8 EE8BA9
+FCF9 EE8BAA
+FCFA EE8BAB
+FCFB EE8BAC
+FCFC EE8BAD
+FCFD EE8BAE
+FCFE EE8BAF
+FDA1 EE8BB0
+FDA2 EE8BB1
+FDA3 EE8BB2
+FDA4 EE8BB3
+FDA5 EE8BB4
+FDA6 EE8BB5
+FDA7 EE8BB6
+FDA8 EE8BB7
+FDA9 EE8BB8
+FDAA EE8BB9
+FDAB EE8BBA
+FDAC EE8BBB
+FDAD EE8BBC
+FDAE EE8BBD
+FDAF EE8BBE
+FDB0 EE8BBF
+FDB1 EE8C80
+FDB2 EE8C81
+FDB3 EE8C82
+FDB4 EE8C83
+FDB5 EE8C84
+FDB6 EE8C85
+FDB7 EE8C86
+FDB8 EE8C87
+FDB9 EE8C88
+FDBA EE8C89
+FDBB EE8C8A
+FDBC EE8C8B
+FDBD EE8C8C
+FDBE EE8C8D
+FDBF EE8C8E
+FDC0 EE8C8F
+FDC1 EE8C90
+FDC2 EE8C91
+FDC3 EE8C92
+FDC4 EE8C93
+FDC5 EE8C94
+FDC6 EE8C95
+FDC7 EE8C96
+FDC8 EE8C97
+FDC9 EE8C98
+FDCA EE8C99
+FDCB EE8C9A
+FDCC EE8C9B
+FDCD EE8C9C
+FDCE EE8C9D
+FDCF EE8C9E
+FDD0 EE8C9F
+FDD1 EE8CA0
+FDD2 EE8CA1
+FDD3 EE8CA2
+FDD4 EE8CA3
+FDD5 EE8CA4
+FDD6 EE8CA5
+FDD7 EE8CA6
+FDD8 EE8CA7
+FDD9 EE8CA8
+FDDA EE8CA9
+FDDB EE8CAA
+FDDC EE8CAB
+FDDD EE8CAC
+FDDE EE8CAD
+FDDF EE8CAE
+FDE0 EE8CAF
+FDE1 EE8CB0
+FDE2 EE8CB1
+FDE3 EE8CB2
+FDE4 EE8CB3
+FDE5 EE8CB4
+FDE6 EE8CB5
+FDE7 EE8CB6
+FDE8 EE8CB7
+FDE9 EE8CB8
+FDEA EE8CB9
+FDEB EE8CBA
+FDEC EE8CBB
+FDED EE8CBC
+FDEE EE8CBD
+FDEF EE8CBE
+FDF0 EE8CBF
+FDF1 EE8D80
+FDF2 EE8D81
+FDF3 EE8D82
+FDF4 EE8D83
+FDF5 EE8D84
+FDF6 EE8D85
+FDF7 EE8D86
+FDF8 EE8D87
+FDF9 EE8D88
+FDFA EE8D89
+FDFB EE8D8A
+FDFC EE8D8B
+FDFD EE8D8C
+FDFE EE8D8D
+FEA1 EE8D8E
+FEA2 EE8D8F
+FEA3 EE8D90
+FEA4 EE8D91
+FEA5 EE8D92
+FEA6 EE8D93
+FEA7 EE8D94
+FEA8 EE8D95
+FEA9 EE8D96
+FEAA EE8D97
+FEAB EE8D98
+FEAC EE8D99
+FEAD EE8D9A
+FEAE EE8D9B
+FEAF EE8D9C
+FEB0 EE8D9D
+FEB1 EE8D9E
+FEB2 EE8D9F
+FEB3 EE8DA0
+FEB4 EE8DA1
+FEB5 EE8DA2
+FEB6 EE8DA3
+FEB7 EE8DA4
+FEB8 EE8DA5
+FEB9 EE8DA6
+FEBA EE8DA7
+FEBB EE8DA8
+FEBC EE8DA9
+FEBD EE8DAA
+FEBE EE8DAB
+FEBF EE8DAC
+FEC0 EE8DAD
+FEC1 EE8DAE
+FEC2 EE8DAF
+FEC3 EE8DB0
+FEC4 EE8DB1
+FEC5 EE8DB2
+FEC6 EE8DB3
+FEC7 EE8DB4
+FEC8 EE8DB5
+FEC9 EE8DB6
+FECA EE8DB7
+FECB EE8DB8
+FECC EE8DB9
+FECD EE8DBA
+FECE EE8DBB
+FECF EE8DBC
+FED0 EE8DBD
+FED1 EE8DBE
+FED2 EE8DBF
+FED3 EE8E80
+FED4 EE8E81
+FED5 EE8E82
+FED6 EE8E83
+FED7 EE8E84
+FED8 EE8E85
+FED9 EE8E86
+FEDA EE8E87
+FEDB EE8E88
+FEDC EE8E89
+FEDD EE8E8A
+FEDE EE8E8B
+FEDF EE8E8C
+FEE0 EE8E8D
+FEE1 EE8E8E
+FEE2 EE8E8F
+FEE3 EE8E90
+FEE4 EE8E91
+FEE5 EE8E92
+FEE6 EE8E93
+FEE7 EE8E94
+FEE8 EE8E95
+FEE9 EE8E96
+FEEA EE8E97
+FEEB EE8E98
+FEEC EE8E99
+FEED EE8E9A
+FEEE EE8E9B
+FEEF EE8E9C
+FEF0 EE8E9D
+FEF1 EE8E9E
+FEF2 EE8E9F
+FEF3 EE8EA0
+FEF4 EE8EA1
+FEF5 EE8EA2
+FEF6 EE8EA3
+FEF7 EE8EA4
+FEF8 EE8EA5
+FEF9 EE8EA6
+FEFA EE8EA7
+FEFB EE8EA8
+FEFC EE8EA9
+FEFD EE8EAA
+FEFE EE8EAB
+DROP TABLE t1;
+#
+# WL#3090 Japanese Character Set adjustments
+# Test Unicode->sjis conversion
+#
+CREATE TABLE t1 (a CHAR(1)) CHARACTER SET utf8;
+INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
+INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
+CREATE TEMPORARY TABLE head AS SELECT concat(b1.a, b2.a) AS head FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE tail AS SELECT concat(b1.a, b2.a) AS tail FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE middle AS SELECT concat(b1.a, b2.a) AS middle FROM t1 b1, t1 b2;
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(1)) CHARACTER SET utf8;
+INSERT INTO t1 SELECT UNHEX(head)
+FROM head WHERE (head BETWEEN '00' AND '7F') ORDER BY head;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head,tail))
+FROM head, tail
+WHERE (head BETWEEN 'C2' AND 'DF') AND (tail BETWEEN '80' AND 'BF')
+ORDER BY head, tail;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head, middle, tail))
+FROM head, middle, tail
+WHERE (head BETWEEN 'E0' AND 'EF')
+AND (middle BETWEEN '80' AND 'BF')
+AND (tail BETWEEN '80' AND 'BF')
+AND NOT (head='E0' AND middle BETWEEN '80' AND '9F')
+ORDER BY head, middle, tail;
+SELECT count(*) FROM t1;
+count(*)
+65536
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+HEX(a) b
+00 00
+01 01
+02 02
+03 03
+04 04
+05 05
+06 06
+07 07
+08 08
+09 09
+0A 0A
+0B 0B
+0C 0C
+0D 0D
+0E 0E
+0F 0F
+10 10
+11 11
+12 12
+13 13
+14 14
+15 15
+16 16
+17 17
+18 18
+19 19
+1A 1A
+1B 1B
+1C 1C
+1D 1D
+1E 1E
+1F 1F
+20 20
+21 21
+22 22
+23 23
+24 24
+25 25
+26 26
+27 27
+28 28
+29 29
+2A 2A
+2B 2B
+2C 2C
+2D 2D
+2E 2E
+2F 2F
+30 30
+31 31
+32 32
+33 33
+34 34
+35 35
+36 36
+37 37
+38 38
+39 39
+3A 3A
+3B 3B
+3C 3C
+3D 3D
+3E 3E
+40 40
+41 41
+42 42
+43 43
+44 44
+45 45
+46 46
+47 47
+48 48
+49 49
+4A 4A
+4B 4B
+4C 4C
+4D 4D
+4E 4E
+4F 4F
+50 50
+51 51
+52 52
+53 53
+54 54
+55 55
+56 56
+57 57
+58 58
+59 59
+5A 5A
+5B 5B
+5C 815F
+5D 5D
+5E 5E
+5F 5F
+60 60
+61 61
+62 62
+63 63
+64 64
+65 65
+66 66
+67 67
+68 68
+69 69
+6A 6A
+6B 6B
+6C 6C
+6D 6D
+6E 6E
+6F 6F
+70 70
+71 71
+72 72
+73 73
+74 74
+75 75
+76 76
+77 77
+78 78
+79 79
+7A 7A
+7B 7B
+7C 7C
+7D 7D
+7E 7E
+7F 7F
+C2A2 8191
+C2A3 8192
+C2A7 8198
+C2A8 814E
+C2AC 81CA
+C2B0 818B
+C2B1 817D
+C2B4 814C
+C2B6 81F7
+C397 817E
+C3B7 8180
+CE91 839F
+CE92 83A0
+CE93 83A1
+CE94 83A2
+CE95 83A3
+CE96 83A4
+CE97 83A5
+CE98 83A6
+CE99 83A7
+CE9A 83A8
+CE9B 83A9
+CE9C 83AA
+CE9D 83AB
+CE9E 83AC
+CE9F 83AD
+CEA0 83AE
+CEA1 83AF
+CEA3 83B0
+CEA4 83B1
+CEA5 83B2
+CEA6 83B3
+CEA7 83B4
+CEA8 83B5
+CEA9 83B6
+CEB1 83BF
+CEB2 83C0
+CEB3 83C1
+CEB4 83C2
+CEB5 83C3
+CEB6 83C4
+CEB7 83C5
+CEB8 83C6
+CEB9 83C7
+CEBA 83C8
+CEBB 83C9
+CEBC 83CA
+CEBD 83CB
+CEBE 83CC
+CEBF 83CD
+CF80 83CE
+CF81 83CF
+CF83 83D0
+CF84 83D1
+CF85 83D2
+CF86 83D3
+CF87 83D4
+CF88 83D5
+CF89 83D6
+D081 8446
+D090 8440
+D091 8441
+D092 8442
+D093 8443
+D094 8444
+D095 8445
+D096 8447
+D097 8448
+D098 8449
+D099 844A
+D09A 844B
+D09B 844C
+D09C 844D
+D09D 844E
+D09E 844F
+D09F 8450
+D0A0 8451
+D0A1 8452
+D0A2 8453
+D0A3 8454
+D0A4 8455
+D0A5 8456
+D0A6 8457
+D0A7 8458
+D0A8 8459
+D0A9 845A
+D0AA 845B
+D0AB 845C
+D0AC 845D
+D0AD 845E
+D0AE 845F
+D0AF 8460
+D0B0 8470
+D0B1 8471
+D0B2 8472
+D0B3 8473
+D0B4 8474
+D0B5 8475
+D0B6 8477
+D0B7 8478
+D0B8 8479
+D0B9 847A
+D0BA 847B
+D0BB 847C
+D0BC 847D
+D0BD 847E
+D0BE 8480
+D0BF 8481
+D180 8482
+D181 8483
+D182 8484
+D183 8485
+D184 8486
+D185 8487
+D186 8488
+D187 8489
+D188 848A
+D189 848B
+D18A 848C
+D18B 848D
+D18C 848E
+D18D 848F
+D18E 8490
+D18F 8491
+D191 8476
+E28090 815D
+E28095 815C
+E28096 8161
+E28098 8165
+E28099 8166
+E2809C 8167
+E2809D 8168
+E280A0 81F5
+E280A1 81F6
+E280A5 8164
+E280A6 8163
+E280B0 81F1
+E280B2 818C
+E280B3 818D
+E280BB 81A6
+E28483 818E
+E284AB 81F0
+E28690 81A9
+E28691 81AA
+E28692 81A8
+E28693 81AB
+E28792 81CB
+E28794 81CC
+E28880 81CD
+E28882 81DD
+E28883 81CE
+E28887 81DE
+E28888 81B8
+E2888B 81B9
+E28892 817C
+E2889A 81E3
+E2889D 81E5
+E2889E 8187
+E288A0 81DA
+E288A7 81C8
+E288A8 81C9
+E288A9 81BF
+E288AA 81BE
+E288AB 81E7
+E288AC 81E8
+E288B4 8188
+E288B5 81E6
+E288BD 81E4
+E28992 81E0
+E289A0 8182
+E289A1 81DF
+E289A6 8185
+E289A7 8186
+E289AA 81E1
+E289AB 81E2
+E28A82 81BC
+E28A83 81BD
+E28A86 81BA
+E28A87 81BB
+E28AA5 81DB
+E28C92 81DC
+E29480 849F
+E29481 84AA
+E29482 84A0
+E29483 84AB
+E2948C 84A1
+E2948F 84AC
+E29490 84A2
+E29493 84AD
+E29494 84A4
+E29497 84AF
+E29498 84A3
+E2949B 84AE
+E2949C 84A5
+E2949D 84BA
+E294A0 84B5
+E294A3 84B0
+E294A4 84A7
+E294A5 84BC
+E294A8 84B7
+E294AB 84B2
+E294AC 84A6
+E294AF 84B6
+E294B0 84BB
+E294B3 84B1
+E294B4 84A8
+E294B7 84B8
+E294B8 84BD
+E294BB 84B3
+E294BC 84A9
+E294BF 84B9
+E29582 84BE
+E2958B 84B4
+E296A0 81A1
+E296A1 81A0
+E296B2 81A3
+E296B3 81A2
+E296BC 81A5
+E296BD 81A4
+E29786 819F
+E29787 819E
+E2978B 819B
+E2978E 819D
+E2978F 819C
+E297AF 81FC
+E29885 819A
+E29886 8199
+E29980 818A
+E29982 8189
+E299AA 81F4
+E299AD 81F3
+E299AF 81F2
+E38080 8140
+E38081 8141
+E38082 8142
+E38083 8156
+E38085 8158
+E38086 8159
+E38087 815A
+E38088 8171
+E38089 8172
+E3808A 8173
+E3808B 8174
+E3808C 8175
+E3808D 8176
+E3808E 8177
+E3808F 8178
+E38090 8179
+E38091 817A
+E38092 81A7
+E38093 81AC
+E38094 816B
+E38095 816C
+E3809C 8160
+E38181 829F
+E38182 82A0
+E38183 82A1
+E38184 82A2
+E38185 82A3
+E38186 82A4
+E38187 82A5
+E38188 82A6
+E38189 82A7
+E3818A 82A8
+E3818B 82A9
+E3818C 82AA
+E3818D 82AB
+E3818E 82AC
+E3818F 82AD
+E38190 82AE
+E38191 82AF
+E38192 82B0
+E38193 82B1
+E38194 82B2
+E38195 82B3
+E38196 82B4
+E38197 82B5
+E38198 82B6
+E38199 82B7
+E3819A 82B8
+E3819B 82B9
+E3819C 82BA
+E3819D 82BB
+E3819E 82BC
+E3819F 82BD
+E381A0 82BE
+E381A1 82BF
+E381A2 82C0
+E381A3 82C1
+E381A4 82C2
+E381A5 82C3
+E381A6 82C4
+E381A7 82C5
+E381A8 82C6
+E381A9 82C7
+E381AA 82C8
+E381AB 82C9
+E381AC 82CA
+E381AD 82CB
+E381AE 82CC
+E381AF 82CD
+E381B0 82CE
+E381B1 82CF
+E381B2 82D0
+E381B3 82D1
+E381B4 82D2
+E381B5 82D3
+E381B6 82D4
+E381B7 82D5
+E381B8 82D6
+E381B9 82D7
+E381BA 82D8
+E381BB 82D9
+E381BC 82DA
+E381BD 82DB
+E381BE 82DC
+E381BF 82DD
+E38280 82DE
+E38281 82DF
+E38282 82E0
+E38283 82E1
+E38284 82E2
+E38285 82E3
+E38286 82E4
+E38287 82E5
+E38288 82E6
+E38289 82E7
+E3828A 82E8
+E3828B 82E9
+E3828C 82EA
+E3828D 82EB
+E3828E 82EC
+E3828F 82ED
+E38290 82EE
+E38291 82EF
+E38292 82F0
+E38293 82F1
+E3829B 814A
+E3829C 814B
+E3829D 8154
+E3829E 8155
+E382A1 8340
+E382A2 8341
+E382A3 8342
+E382A4 8343
+E382A5 8344
+E382A6 8345
+E382A7 8346
+E382A8 8347
+E382A9 8348
+E382AA 8349
+E382AB 834A
+E382AC 834B
+E382AD 834C
+E382AE 834D
+E382AF 834E
+E382B0 834F
+E382B1 8350
+E382B2 8351
+E382B3 8352
+E382B4 8353
+E382B5 8354
+E382B6 8355
+E382B7 8356
+E382B8 8357
+E382B9 8358
+E382BA 8359
+E382BB 835A
+E382BC 835B
+E382BD 835C
+E382BE 835D
+E382BF 835E
+E38380 835F
+E38381 8360
+E38382 8361
+E38383 8362
+E38384 8363
+E38385 8364
+E38386 8365
+E38387 8366
+E38388 8367
+E38389 8368
+E3838A 8369
+E3838B 836A
+E3838C 836B
+E3838D 836C
+E3838E 836D
+E3838F 836E
+E38390 836F
+E38391 8370
+E38392 8371
+E38393 8372
+E38394 8373
+E38395 8374
+E38396 8375
+E38397 8376
+E38398 8377
+E38399 8378
+E3839A 8379
+E3839B 837A
+E3839C 837B
+E3839D 837C
+E3839E 837D
+E3839F 837E
+E383A0 8380
+E383A1 8381
+E383A2 8382
+E383A3 8383
+E383A4 8384
+E383A5 8385
+E383A6 8386
+E383A7 8387
+E383A8 8388
+E383A9 8389
+E383AA 838A
+E383AB 838B
+E383AC 838C
+E383AD 838D
+E383AE 838E
+E383AF 838F
+E383B0 8390
+E383B1 8391
+E383B2 8392
+E383B3 8393
+E383B4 8394
+E383B5 8395
+E383B6 8396
+E383BB 8145
+E383BC 815B
+E383BD 8152
+E383BE 8153
+E4B880 88EA
+E4B881 929A
+E4B883 8EB5
+E4B887 969C
+E4B888 8FE4
+E4B889 8E4F
+E4B88A 8FE3
+E4B88B 89BA
+E4B88D 9573
+E4B88E 975E
+E4B890 98A0
+E4B891 894E
+E4B894 8A8E
+E4B895 98A1
+E4B896 90A2
+E4B897 99C0
+E4B898 8B75
+E4B899 95B8
+E4B89E 8FE5
+E4B8A1 97BC
+E4B8A6 95C0
+E4B8AA 98A2
+E4B8AD 9286
+E4B8B1 98A3
+E4B8B2 8BF8
+E4B8B6 98A4
+E4B8B8 8ADB
+E4B8B9 924F
+E4B8BB 8EE5
+E4B8BC 98A5
+E4B8BF 98A6
+E4B982 98A7
+E4B983 9454
+E4B985 8B76
+E4B98B 9456
+E4B98D 93E1
+E4B98E 8CC1
+E4B98F 9652
+E4B995 E568
+E4B996 98A8
+E4B997 8FE6
+E4B998 98A9
+E4B999 89B3
+E4B99D 8BE3
+E4B99E 8CEE
+E4B99F 96E7
+E4B9A2 9BA4
+E4B9B1 9790
+E4B9B3 93FB
+E4B9BE 8AA3
+E4BA80 8B54
+E4BA82 98AA
+E4BA85 98AB
+E4BA86 97B9
+E4BA88 975C
+E4BA89 9188
+E4BA8A 98AD
+E4BA8B 8E96
+E4BA8C 93F1
+E4BA8E 98B0
+E4BA91 895D
+E4BA92 8CDD
+E4BA94 8CDC
+E4BA95 88E4
+E4BA98 986A
+E4BA99 9869
+E4BA9B 8DB1
+E4BA9C 889F
+E4BA9E 98B1
+E4BA9F 98B2
+E4BAA0 98B3
+E4BAA1 9653
+E4BAA2 98B4
+E4BAA4 8CF0
+E4BAA5 88E5
+E4BAA6 9692
+E4BAA8 8B9C
+E4BAAB 8B9D
+E4BAAC 8B9E
+E4BAAD 92E0
+E4BAAE 97BA
+E4BAB0 98B5
+E4BAB3 98B6
+E4BAB6 98B7
+E4BABA 906C
+E4BB80 8F59
+E4BB81 906D
+E4BB82 98BC
+E4BB84 98BA
+E4BB86 98BB
+E4BB87 8B77
+E4BB8A 8DA1
+E4BB8B 89EE
+E4BB8D 98B9
+E4BB8E 98B8
+E4BB8F 95A7
+E4BB94 8E65
+E4BB95 8E64
+E4BB96 91BC
+E4BB97 98BD
+E4BB98 9574
+E4BB99 90E5
+E4BB9D 8157
+E4BB9E 98BE
+E4BB9F 98C0
+E4BBA3 91E3
+E4BBA4 97DF
+E4BBA5 88C8
+E4BBAD 98BF
+E4BBAE 89BC
+E4BBB0 8BC2
+E4BBB2 9287
+E4BBB6 8C8F
+E4BBB7 98C1
+E4BBBB 9443
+E4BC81 8AE9
+E4BC89 98C2
+E4BC8A 88C9
+E4BC8D 8CDE
+E4BC8E 8AEA
+E4BC8F 959A
+E4BC90 94B0
+E4BC91 8B78
+E4BC9A 89EF
+E4BC9C 98E5
+E4BC9D 9360
+E4BCAF 948C
+E4BCB0 98C4
+E4BCB4 94BA
+E4BCB6 97E0
+E4BCB8 904C
+E4BCBA 8E66
+E4BCBC 8E97
+E4BCBD 89BE
+E4BD83 92CF
+E4BD86 9241
+E4BD87 98C8
+E4BD8D 88CA
+E4BD8E 92E1
+E4BD8F 8F5A
+E4BD90 8DB2
+E4BD91 9743
+E4BD93 91CC
+E4BD95 89BD
+E4BD97 98C7
+E4BD99 975D
+E4BD9A 98C3
+E4BD9B 98C5
+E4BD9C 8DEC
+E4BD9D 98C6
+E4BD9E 9B43
+E4BDA9 98CE
+E4BDAF 98D1
+E4BDB0 98CF
+E4BDB3 89C0
+E4BDB5 95B9
+E4BDB6 98C9
+E4BDBB 98CD
+E4BDBC 8CF1
+E4BDBF 8E67
+E4BE83 8AA4
+E4BE86 98D2
+E4BE88 98CA
+E4BE8B 97E1
+E4BE8D 8E98
+E4BE8F 98CB
+E4BE91 98D0
+E4BE96 98D3
+E4BE98 98CC
+E4BE9B 8B9F
+E4BE9D 88CB
+E4BEA0 8BA0
+E4BEA1 89BF
+E4BEAB 9B44
+E4BEAD 9699
+E4BEAE 958E
+E4BEAF 8CF2
+E4BEB5 904E
+E4BEB6 97B5
+E4BEBF 95D6
+E4BF82 8C57
+E4BF83 91A3
+E4BF84 89E2
+E4BF8A 8F72
+E4BF8E 98D7
+E4BF90 98DC
+E4BF91 98DA
+E4BF94 98D5
+E4BF97 91AD
+E4BF98 98D8
+E4BF9A 98DB
+E4BF9B 98D9
+E4BF9D 95DB
+E4BF9F 98D6
+E4BFA1 904D
+E4BFA3 9693
+E4BFA4 98DD
+E4BFA5 98DE
+E4BFAE 8F43
+E4BFAF 98EB
+E4BFB3 946F
+E4BFB5 9555
+E4BFB6 98E6
+E4BFB8 95EE
+E4BFBA 89B4
+E4BFBE 98EA
+E58085 98E4
+E58086 98ED
+E58089 9171
+E5808B 8CC2
+E5808D 947B
+E5808F E0C5
+E58091 98EC
+E58092 937C
+E58094 98E1
+E58096 8CF4
+E58099 8CF3
+E5809A 98DF
+E5809F 8ED8
+E580A1 98E7
+E580A3 95ED
+E580A4 926C
+E580A5 98E3
+E580A6 8C91
+E580A8 98E0
+E580A9 98E8
+E580AA 98E2
+E580AB 97CF
+E580AC 98E9
+E580AD 9860
+E580B6 8BE4
+E580B9 8C90
+E58183 98EE
+E58187 98EF
+E58188 98F3
+E58189 88CC
+E5818F 95CE
+E58190 98F2
+E58195 98F1
+E58196 98F5
+E5819A 98F4
+E5819C 92E2
+E581A5 8C92
+E581AC 98F6
+E581B2 8EC3
+E581B4 91A4
+E581B5 92E3
+E581B6 8BF4
+E581B8 98F7
+E581BD 8B55
+E58280 98F8
+E58285 98FA
+E5828D 9654
+E58291 8C86
+E58298 8E50
+E58299 94F5
+E5829A 98F9
+E582AC 8DC3
+E582AD 9762
+E582B2 98FC
+E582B3 9942
+E582B4 98FB
+E582B5 8DC2
+E582B7 8F9D
+E582BE 8C58
+E58382 9943
+E58385 8BCD
+E58389 9940
+E5838A 9941
+E5838D 93AD
+E5838F 919C
+E58391 8BA1
+E58395 966C
+E58396 9944
+E5839A 97BB
+E5839E 9945
+E583A3 9948
+E583A5 9946
+E583A7 916D
+E583AD 9947
+E583AE 9949
+E583B5 994B
+E583B9 994A
+E583BB 95C6
+E58480 8B56
+E58481 994D
+E58482 994E
+E58484 89AD
+E58489 994C
+E58492 8EF2
+E58494 9951
+E58495 9950
+E58496 994F
+E58498 98D4
+E5849A 9952
+E5849F 8F9E
+E584A1 9953
+E584AA 9744
+E584B2 96D7
+E584B7 9955
+E584BA 9954
+E584BB 9957
+E584BC 9956
+E584BF 9958
+E58580 9959
+E58581 88F2
+E58583 8CB3
+E58584 8C5A
+E58585 8F5B
+E58586 929B
+E58587 8BA2
+E58588 90E6
+E58589 8CF5
+E5858B 8D8E
+E5858C 995B
+E5858D 96C6
+E5858E 9365
+E58590 8E99
+E58592 995A
+E58594 995C
+E5859A 937D
+E5859C 8A95
+E585A2 995D
+E585A5 93FC
+E585A8 9153
+E585A9 995F
+E585AA 9960
+E585AB 94AA
+E585AC 8CF6
+E585AD 985A
+E585AE 9961
+E585B1 8BA4
+E585B5 95BA
+E585B6 91B4
+E585B7 8BEF
+E585B8 9354
+E585BC 8C93
+E58680 9962
+E58682 9963
+E58685 93E0
+E58686 897E
+E58689 9966
+E5868A 8DFB
+E5868C 9965
+E5868D 8DC4
+E5868F 9967
+E58690 E3EC
+E58691 9968
+E58692 9660
+E58693 9969
+E58695 996A
+E58696 996B
+E58697 8FE7
+E58699 8ECA
+E586A0 8AA5
+E586A2 996E
+E586A4 996C
+E586A5 96BB
+E586A6 996D
+E586A8 9579
+E586A9 996F
+E586AA 9970
+E586AB 9971
+E586AC 937E
+E586B0 9975
+E586B1 9973
+E586B2 9974
+E586B3 9972
+E586B4 8DE1
+E586B5 9976
+E586B6 96E8
+E586B7 97E2
+E586BD 9977
+E58784 90A6
+E58785 9978
+E58786 8F79
+E58789 9979
+E5878B 929C
+E5878C 97BD
+E5878D 9380
+E58796 99C3
+E5879B 997A
+E5879C EAA3
+E5879D 8BC3
+E587A0 997B
+E587A1 967D
+E587A6 8F88
+E587A7 91FA
+E587A9 997D
+E587AA 93E2
+E587AD 997E
+E587B0 9980
+E587B1 8A4D
+E587B5 9981
+E587B6 8BA5
+E587B8 93CA
+E587B9 899A
+E587BA 8F6F
+E587BD 949F
+E587BE 9982
+E58880 9381
+E58883 906E
+E58884 9983
+E58886 95AA
+E58887 90D8
+E58888 8AA0
+E5888A 8AA7
+E5888B 9984
+E5888E 9986
+E58891 8C59
+E58894 9985
+E58897 97F1
+E5889D 8F89
+E588A4 94BB
+E588A5 95CA
+E588A7 9987
+E588A9 9798
+E588AA 9988
+E588AE 9989
+E588B0 939E
+E588B3 998A
+E588B6 90A7
+E588B7 8DFC
+E588B8 8C94
+E588B9 998B
+E588BA 8E68
+E588BB 8D8F
+E58983 92E4
+E58984 998D
+E58987 91A5
+E5898A 8DED
+E5898B 998E
+E5898C 998F
+E5898D 914F
+E5898F 998C
+E58994 9991
+E58996 9655
+E5899B 8D84
+E5899E 9990
+E589A3 8C95
+E589A4 8DDC
+E589A5 948D
+E589A9 9994
+E589AA 9992
+E589AF 959B
+E589B0 8FE8
+E589B1 999B
+E589B2 8A84
+E589B3 9995
+E589B4 9993
+E589B5 916E
+E589BD 9997
+E589BF 9996
+E58A83 8A63
+E58A87 8C80
+E58A88 999C
+E58A89 97AB
+E58A8D 9998
+E58A91 999D
+E58A92 999A
+E58A94 9999
+E58A9B 97CD
+E58A9F 8CF7
+E58AA0 89C1
+E58AA3 97F2
+E58AA9 8F95
+E58AAA 9377
+E58AAB 8D85
+E58AAC 99A0
+E58AAD 99A1
+E58AB1 97E3
+E58AB4 984A
+E58AB5 99A3
+E58AB9 8CF8
+E58ABC 99A2
+E58ABE 8A4E
+E58B81 99A4
+E58B83 9675
+E58B85 92BA
+E58B87 9745
+E58B89 95D7
+E58B8D 99A5
+E58B92 E8D3
+E58B95 93AE
+E58B97 99A6
+E58B98 8AA8
+E58B99 96B1
+E58B9D 8F9F
+E58B9E 99A7
+E58B9F 95E5
+E58BA0 99AB
+E58BA2 90A8
+E58BA3 99A8
+E58BA4 8BCE
+E58BA6 99A9
+E58BA7 8AA9
+E58BB2 8C4D
+E58BB3 99AC
+E58BB5 99AD
+E58BB8 99AE
+E58BB9 99AF
+E58BBA 8ED9
+E58BBE 8CF9
+E58BBF 96DC
+E58C81 96E6
+E58C82 93F5
+E58C85 95EF
+E58C86 99B0
+E58C88 99B1
+E58C8D 99B3
+E58C8F 99B5
+E58C90 99B4
+E58C95 99B6
+E58C96 89BB
+E58C97 966B
+E58C99 8DFA
+E58C9A 99B7
+E58C9D 9178
+E58CA0 8FA0
+E58CA1 8BA7
+E58CA3 99B8
+E58CAA 94D9
+E58CAF 99B9
+E58CB1 99BA
+E58CB3 99BB
+E58CB8 99BC
+E58CB9 9543
+E58CBA 8BE6
+E58CBB 88E3
+E58CBF 93BD
+E58D80 99BD
+E58D81 8F5C
+E58D83 90E7
+E58D85 99BF
+E58D86 99BE
+E58D87 8FA1
+E58D88 8CDF
+E58D89 99C1
+E58D8A 94BC
+E58D8D 99C2
+E58D91 94DA
+E58D92 91B2
+E58D93 91EC
+E58D94 8BA6
+E58D97 93EC
+E58D98 9250
+E58D9A 948E
+E58D9C 966D
+E58D9E 99C4
+E58DA0 90E8
+E58DA6 8C54
+E58DA9 99C5
+E58DAE 99C6
+E58DAF 894B
+E58DB0 88F3
+E58DB1 8AEB
+E58DB3 91A6
+E58DB4 8B70
+E58DB5 9791
+E58DB7 99C9
+E58DB8 89B5
+E58DBB 99C8
+E58DBF 8BA8
+E58E82 99CA
+E58E84 96EF
+E58E96 99CB
+E58E98 97D0
+E58E9A 8CFA
+E58E9F 8CB4
+E58EA0 99CC
+E58EA5 99CE
+E58EA6 99CD
+E58EA8 907E
+E58EA9 8958
+E58EAD 897D
+E58EAE 99CF
+E58EB0 99D0
+E58EB3 8CB5
+E58EB6 99D1
+E58EBB 8B8E
+E58F82 8E51
+E58F83 99D2
+E58F88 9694
+E58F89 8DB3
+E58F8A 8B79
+E58F8B 9746
+E58F8C 916F
+E58F8D 94BD
+E58F8E 8EFB
+E58F94 8F66
+E58F96 8EE6
+E58F97 8EF3
+E58F99 8F96
+E58F9B 94BE
+E58F9F 99D5
+E58FA1 8962
+E58FA2 9170
+E58FA3 8CFB
+E58FA4 8CC3
+E58FA5 8BE5
+E58FA8 99D9
+E58FA9 9240
+E58FAA 91FC
+E58FAB 8BA9
+E58FAC 8FA2
+E58FAD 99DA
+E58FAE 99D8
+E58FAF 89C2
+E58FB0 91E4
+E58FB1 8EB6
+E58FB2 8E6A
+E58FB3 8945
+E58FB6 8A90
+E58FB7 8D86
+E58FB8 8E69
+E58FBA 99DB
+E59081 99DC
+E59083 8B68
+E59084 8A65
+E59088 8D87
+E59089 8B67
+E5908A 92DD
+E5908B 8944
+E5908C 93AF
+E5908D 96BC
+E5908E 8D40
+E5908F 9799
+E59090 9366
+E59091 8CFC
+E5909B 8C4E
+E5909D 99E5
+E5909F 8BE1
+E590A0 9669
+E590A6 94DB
+E590A9 99E4
+E590AB 8ADC
+E590AC 99DF
+E590AD 99E0
+E590AE 99E2
+E590B6 99E3
+E590B8 8B7A
+E590B9 9081
+E590BB 95AB
+E590BC 99E1
+E590BD 99DD
+E590BE 8CE1
+E59180 99DE
+E59182 9843
+E59186 95F0
+E59188 92E6
+E59189 8CE0
+E5918A 8D90
+E5918E 99E6
+E59191 93DB
+E5919F 99EA
+E591A8 8EFC
+E591AA 8EF4
+E591B0 99ED
+E591B1 99EB
+E591B3 96A1
+E591B5 99E8
+E591B6 99F1
+E591B7 99EC
+E591BB 99EF
+E591BC 8CC4
+E591BD 96BD
+E59280 99F0
+E59284 99F2
+E59286 99F4
+E5928B 8DEE
+E5928C 9861
+E5928E 99E9
+E5928F 99E7
+E59290 99F3
+E59292 99EE
+E592A2 99F6
+E592A4 9A42
+E592A5 99F8
+E592A8 99FC
+E592AB 9A40
+E592AC 99F9
+E592AF 9A5D
+E592B2 8DE7
+E592B3 8A50
+E592B8 99F7
+E592BC 9A44
+E592BD 88F4
+E592BE 9A43
+E59380 88A3
+E59381 9569
+E59382 9A41
+E59384 99FA
+E59387 99F5
+E59388 99FB
+E59389 8DC6
+E59398 9A45
+E593A1 88F5
+E593A2 9A4E
+E593A5 9A46
+E593A6 9A47
+E593A8 8FA3
+E593A9 9689
+E593AD 9A4C
+E593AE 9A4B
+E593B2 934E
+E593BA 9A4D
+E593BD 9A4A
+E59484 8953
+E59486 8DB4
+E59487 904F
+E5948F 9A48
+E59490 9382
+E59494 9A49
+E59496 88A0
+E594AE 9A53
+E594AF 9742
+E594B1 8FA5
+E594B3 9A59
+E594B8 9A58
+E594B9 9A4F
+E594BE 91C1
+E59580 9A50
+E59584 91ED
+E59585 9A55
+E59586 8FA4
+E5958C 9A52
+E5958F 96E2
+E59593 8C5B
+E59596 9A56
+E59597 9A57
+E5959C 9A54
+E5959D 9A5A
+E595A3 9A51
+E595BB 9A60
+E595BC 9A65
+E595BE 9A61
+E59680 9A5C
+E59683 9A66
+E59684 9150
+E59687 9A68
+E59689 8D41
+E5968A 9A5E
+E5968B 929D
+E59698 9A62
+E59699 9A5B
+E5969A 8AAB
+E5969C 8AEC
+E5969D 8A85
+E5969E 9A63
+E5969F 9A5F
+E596A7 8C96
+E596A8 9A69
+E596A9 9A67
+E596AA 9172
+E596AB 8B69
+E596AC 8BAA
+E596AE 9A64
+E596B0 8BF2
+E596B6 8963
+E59784 9A6D
+E59785 9A6B
+E59787 9AA5
+E59794 9A70
+E5979A 9A6A
+E5979C 9A6E
+E5979F 9A6C
+E597A3 8E6B
+E597A4 9A6F
+E597B7 9A72
+E597B9 9A77
+E597BD 9A75
+E597BE 9A74
+E59886 9251
+E59889 89C3
+E59894 9A71
+E59896 9A73
+E59897 8FA6
+E59898 8952
+E5989B 9A76
+E598A9 89DC
+E598AF 9A82
+E598B1 8FFA
+E598B2 9A7D
+E598B4 9A7B
+E598B6 9A7C
+E598B8 9A7E
+E59982 895C
+E5998C 9158
+E5998E 9A78
+E59990 9A79
+E5999B 8A9A
+E599A4 9A81
+E599A8 8AED
+E599AA 9A84
+E599AB 9A80
+E599AC 9A83
+E599B4 95AC
+E599B8 93D3
+E599BA 94B6
+E59A80 9A86
+E59A86 9A85
+E59A87 8A64
+E59A8A 9A87
+E59A8F 9A8A
+E59A94 9A89
+E59AA0 9A88
+E59AA2 9458
+E59AA5 9A8B
+E59AAE 9A8C
+E59AB4 9A8E
+E59AB6 9A8D
+E59ABC 9A90
+E59B80 9A93
+E59B81 9A91
+E59B82 9A8F
+E59B83 9A92
+E59B88 9A94
+E59B8E 9A95
+E59B91 9A96
+E59B93 9A97
+E59B97 9A98
+E59B98 9964
+E59B9A 8EFA
+E59B9B 8E6C
+E59B9E 89F1
+E59BA0 88F6
+E59BA3 9263
+E59BAE 9A99
+E59BB0 8DA2
+E59BB2 88CD
+E59BB3 907D
+E59BB9 9A9A
+E59BBA 8CC5
+E59BBD 8D91
+E59BBF 9A9C
+E59C80 9A9B
+E59C83 95DE
+E59C84 9A9D
+E59C88 9A9F
+E59C89 9A9E
+E59C8B 9AA0
+E59C8D 9AA1
+E59C8F 8C97
+E59C92 8980
+E59C93 9AA2
+E59C96 9AA4
+E59C98 9AA3
+E59C9C 9AA6
+E59C9F 9379
+E59CA6 9AA7
+E59CA7 88B3
+E59CA8 8DDD
+E59CAD 8C5C
+E59CB0 926E
+E59CB7 9AA8
+E59CB8 9AA9
+E59CBB 9AAB
+E59D80 9AAC
+E59D82 8DE2
+E59D87 8BCF
+E59D8A 9656
+E59D8E 9AAA
+E59D8F 9AAD
+E59D90 8DBF
+E59D91 8D42
+E59DA1 9AB1
+E59DA4 8DA3
+E59DA6 9252
+E59DA9 9AAE
+E59DAA 92D8
+E59DBF 9AB2
+E59E82 9082
+E59E88 9AB0
+E59E89 9AB3
+E59E8B 8C5E
+E59E93 9AB4
+E59EA0 9AB5
+E59EA2 8D43
+E59EA3 8A5F
+E59EA4 9AB7
+E59EAA 9AB8
+E59EB0 9AB9
+E59EB3 9AB6
+E59F80 9AAF
+E59F83 9ABA
+E59F86 9ABB
+E59F8B 9684
+E59F8E 8FE9
+E59F92 9ABD
+E59F93 9ABE
+E59F94 9ABC
+E59F96 9AC0
+E59F9C 9457
+E59F9F 88E6
+E59FA0 9575
+E59FA3 9AC1
+E59FB4 8FFB
+E59FB7 8EB7
+E59FB9 947C
+E59FBA 8AEE
+E59FBC 8DE9
+E5A080 9678
+E5A082 93B0
+E5A085 8C98
+E5A086 91CD
+E5A08A 9ABF
+E5A08B 9AC2
+E5A095 91C2
+E5A099 9AC3
+E5A09D 9AC4
+E5A0A1 9AC6
+E5A0A4 92E7
+E5A0AA 8AAC
+E5A0AF EA9F
+E5A0B0 8981
+E5A0B1 95F1
+E5A0B4 8FEA
+E5A0B5 9367
+E5A0BA 8DE4
+E5A0BD 9ACC
+E5A180 95BB
+E5A181 97DB
+E5A18A 89F2
+E5A18B 9AC8
+E5A191 9159
+E5A192 9ACB
+E5A194 9383
+E5A197 9368
+E5A198 9384
+E5A199 94B7
+E5A19A 92CB
+E5A19E 8DC7
+E5A1A2 9AC7
+E5A1A9 8996
+E5A1AB 9355
+E5A1B0 9AC9
+E5A1B2 9AC5
+E5A1B5 906F
+E5A1B9 9ACD
+E5A1BE 8F6D
+E5A283 8BAB
+E5A285 9ACE
+E5A293 95E6
+E5A297 919D
+E5A29C 92C4
+E5A29F 9AD0
+E5A2A8 966E
+E5A2AB 9AD1
+E5A2AE 9AD6
+E5A2B3 95AD
+E5A2B8 9AD5
+E5A2B9 9ACF
+E5A2BA 9AD2
+E5A2BB 9AD4
+E5A2BE 8DA4
+E5A381 95C7
+E5A385 9AD7
+E5A387 9264
+E5A38A 89F3
+E5A38C 8FEB
+E5A391 9AD9
+E5A393 9AD8
+E5A395 8D88
+E5A397 9ADA
+E5A398 9ADC
+E5A399 9ADB
+E5A39C 9ADE
+E5A39E 9AD3
+E5A39F 9AE0
+E5A3A4 9ADF
+E5A3A5 9ADD
+E5A3AB 8E6D
+E5A3AC 9070
+E5A3AE 9173
+E5A3AF 9AE1
+E5A3B0 90BA
+E5A3B1 88EB
+E5A3B2 9484
+E5A3B7 92D9
+E5A3B9 9AE3
+E5A3BA 9AE2
+E5A3BB 9AE4
+E5A3BC 9AE5
+E5A3BD 9AE6
+E5A482 9AE7
+E5A489 95CF
+E5A48A 9AE8
+E5A48F 89C4
+E5A490 9AE9
+E5A495 975B
+E5A496 8A4F
+E5A498 99C7
+E5A499 8F67
+E5A49A 91BD
+E5A49B 9AEA
+E5A49C 96E9
+E5A4A2 96B2
+E5A4A5 9AEC
+E5A4A7 91E5
+E5A4A9 9356
+E5A4AA 91BE
+E5A4AB 9576
+E5A4AC 9AED
+E5A4AD 9AEE
+E5A4AE 899B
+E5A4B1 8EB8
+E5A4B2 9AEF
+E5A4B7 88CE
+E5A4B8 9AF0
+E5A4BE 9AF1
+E5A584 8982
+E5A587 8AEF
+E5A588 93DE
+E5A589 95F2
+E5A58E 9AF5
+E5A58F 9174
+E5A590 9AF4
+E5A591 8C5F
+E5A594 967A
+E5A595 9AF3
+E5A597 9385
+E5A598 9AF7
+E5A59A 9AF6
+E5A5A0 9AF9
+E5A5A2 9AF8
+E5A5A5 899C
+E5A5A7 9AFA
+E5A5A8 8FA7
+E5A5A9 9AFC
+E5A5AA 9244
+E5A5AC 9AFB
+E5A5AE 95B1
+E5A5B3 8F97
+E5A5B4 937A
+E5A5B8 9B40
+E5A5BD 8D44
+E5A681 9B41
+E5A682 9440
+E5A683 94DC
+E5A684 96CF
+E5A68A 9444
+E5A68D 9B4A
+E5A693 8B57
+E5A696 9764
+E5A699 96AD
+E5A69B 9BAA
+E5A69D 9B42
+E5A6A3 9B45
+E5A6A5 91C3
+E5A6A8 9657
+E5A6AC 9369
+E5A6B2 9B46
+E5A6B9 9685
+E5A6BB 8DC8
+E5A6BE 8FA8
+E5A786 9B47
+E5A789 8E6F
+E5A78B 8E6E
+E5A790 88B7
+E5A791 8CC6
+E5A793 90A9
+E5A794 88CF
+E5A799 9B4B
+E5A79A 9B4C
+E5A79C 9B49
+E5A7A5 8957
+E5A7A6 8AAD
+E5A7A8 9B48
+E5A7AA 96C3
+E5A7AB 9550
+E5A7B6 88A6
+E5A7BB 88F7
+E5A7BF 8E70
+E5A881 88D0
+E5A883 88A1
+E5A889 9B51
+E5A891 9B4F
+E5A898 96BA
+E5A89A 9B52
+E5A89C 9B50
+E5A89F 9B4E
+E5A8A0 9050
+E5A8A5 9B4D
+E5A8A9 95D8
+E5A8AF 8CE2
+E5A8B5 9B56
+E5A8B6 9B57
+E5A8BC 8FA9
+E5A980 9B53
+E5A981 984B
+E5A986 946B
+E5A989 9B55
+E5A99A 8DA5
+E5A9A2 9B58
+E5A9A6 9577
+E5A9AA 9B59
+E5A9AC 9B54
+E5A9BF 96B9
+E5AA92 947D
+E5AA9A 9B5A
+E5AA9B 9551
+E5AABC 9B5B
+E5AABD 9B5F
+E5AABE 9B5C
+E5AB81 89C5
+E5AB82 9B5E
+E5AB89 8EB9
+E5AB8B 9B5D
+E5AB8C 8C99
+E5AB90 9B6B
+E5AB96 9B64
+E5AB97 9B61
+E5ABA1 9284
+E5ABA3 9B60
+E5ABA6 9B62
+E5ABA9 9B63
+E5ABBA 9B65
+E5ABBB 9B66
+E5AC89 8AF0
+E5AC8B 9B68
+E5AC8C 9B67
+E5AC96 9B69
+E5ACA2 8FEC
+E5ACAA 9B6C
+E5ACAC 92DA
+E5ACB0 8964
+E5ACB2 9B6A
+E5ACB6 9B6D
+E5ACBE 9B6E
+E5AD80 9B71
+E5AD83 9B6F
+E5AD85 9B70
+E5AD90 8E71
+E5AD91 9B72
+E5AD94 8D45
+E5AD95 9B73
+E5AD97 8E9A
+E5AD98 91B6
+E5AD9A 9B74
+E5AD9B 9B75
+E5AD9C 8E79
+E5AD9D 8D46
+E5AD9F 96D0
+E5ADA3 8B47
+E5ADA4 8CC7
+E5ADA5 9B76
+E5ADA6 8A77
+E5ADA9 9B77
+E5ADAB 91B7
+E5ADB0 9B78
+E5ADB1 9BA1
+E5ADB3 9B79
+E5ADB5 9B7A
+E5ADB8 9B7B
+E5ADBA 9B7D
+E5AE80 9B7E
+E5AE83 9B80
+E5AE85 91EE
+E5AE87 8946
+E5AE88 8EE7
+E5AE89 88C0
+E5AE8B 9176
+E5AE8C 8AAE
+E5AE8D 8EB3
+E5AE8F 8D47
+E5AE95 9386
+E5AE97 8F40
+E5AE98 8AAF
+E5AE99 9288
+E5AE9A 92E8
+E5AE9B 88B6
+E5AE9C 8B58
+E5AE9D 95F3
+E5AE9F 8EC0
+E5AEA2 8B71
+E5AEA3 90E9
+E5AEA4 8EBA
+E5AEA5 9747
+E5AEA6 9B81
+E5AEAE 8B7B
+E5AEB0 8DC9
+E5AEB3 8A51
+E5AEB4 8983
+E5AEB5 8FAA
+E5AEB6 89C6
+E5AEB8 9B82
+E5AEB9 9765
+E5AEBF 8F68
+E5AF82 8EE2
+E5AF83 9B83
+E5AF84 8AF1
+E5AF85 93D0
+E5AF86 96A7
+E5AF87 9B84
+E5AF89 9B85
+E5AF8C 9578
+E5AF90 9B87
+E5AF92 8AA6
+E5AF93 8BF5
+E5AF94 9B86
+E5AF9B 8AB0
+E5AF9D 9051
+E5AF9E 9B8B
+E5AF9F 8E40
+E5AFA1 89C7
+E5AFA2 9B8A
+E5AFA4 9B88
+E5AFA5 9B8C
+E5AFA6 9B89
+E5AFA7 944A
+E5AFA8 9ECB
+E5AFA9 9052
+E5AFAB 9B8D
+E5AFAE 97BE
+E5AFB0 9B8E
+E5AFB3 9B90
+E5AFB5 929E
+E5AFB6 9B8F
+E5AFB8 90A1
+E5AFBA 8E9B
+E5AFBE 91CE
+E5AFBF 8EF5
+E5B081 9595
+E5B082 90EA
+E5B084 8ECB
+E5B085 9B91
+E5B086 8FAB
+E5B087 9B92
+E5B088 9B93
+E5B089 88D1
+E5B08A 91B8
+E5B08B 9071
+E5B08D 9B94
+E5B08E 93B1
+E5B08F 8FAC
+E5B091 8FAD
+E5B093 9B95
+E5B096 90EB
+E5B09A 8FAE
+E5B0A0 9B96
+E5B0A2 9B97
+E5B0A4 96DE
+E5B0A8 9B98
+E5B0AD 8BC4
+E5B0B1 8F41
+E5B0B8 9B99
+E5B0B9 9B9A
+E5B0BA 8EDA
+E5B0BB 904B
+E5B0BC 93F2
+E5B0BD 9073
+E5B0BE 94F6
+E5B0BF 9441
+E5B180 8BC7
+E5B181 9B9B
+E5B185 8B8F
+E5B186 9B9C
+E5B188 8BFC
+E5B18A 93CD
+E5B18B 89AE
+E5B18D 8E72
+E5B18E 9B9D
+E5B18F 9BA0
+E5B190 9B9F
+E5B191 8BFB
+E5B193 9B9E
+E5B195 9357
+E5B19E 91AE
+E5B1A0 936A
+E5B1A1 8EC6
+E5B1A4 9177
+E5B1A5 979A
+E5B1AC 9BA2
+E5B1AE 9BA3
+E5B1AF 93D4
+E5B1B1 8E52
+E5B1B6 9BA5
+E5B1B9 9BA6
+E5B28C 9BA7
+E5B290 8AF2
+E5B291 9BA8
+E5B294 9BA9
+E5B2A1 89AA
+E5B2A8 915A
+E5B2A9 8AE2
+E5B2AB 9BAB
+E5B2AC 96A6
+E5B2B1 91D0
+E5B2B3 8A78
+E5B2B6 9BAD
+E5B2B7 9BAF
+E5B2B8 8ADD
+E5B2BB 9BAC
+E5B2BC 9BAE
+E5B2BE 9BB1
+E5B385 9BB0
+E5B387 9BB2
+E5B399 9BB3
+E5B3A0 93BB
+E5B3A1 8BAC
+E5B3A8 89E3
+E5B3A9 9BB4
+E5B3AA 9BB9
+E5B3AD 9BB7
+E5B3AF 95F5
+E5B3B0 95F4
+E5B3B6 9387
+E5B3BA 9BB6
+E5B3BB 8F73
+E5B3BD 9BB5
+E5B487 9092
+E5B48B 9BBA
+E5B48E 8DE8
+E5B491 9BC0
+E5B494 9BC1
+E5B495 9BBB
+E5B496 8A52
+E5B497 9BBC
+E5B498 9BC5
+E5B499 9BC4
+E5B49A 9BC3
+E5B49B 9BBF
+E5B49F 9BBE
+E5B4A2 9BC2
+E5B4A9 95F6
+E5B58B 9BC9
+E5B58C 9BC6
+E5B58E 9BC8
+E5B590 9792
+E5B592 9BC7
+E5B59C 9BBD
+E5B5A9 9093
+E5B5AC 9BCA
+E5B5AF 8DB5
+E5B5B3 9BCB
+E5B5B6 9BCC
+E5B682 9BCF
+E5B684 9BCE
+E5B687 9BCD
+E5B68B 9388
+E5B68C 9BB8
+E5B690 9BD5
+E5B69D 9BD1
+E5B6A2 9BD0
+E5B6AC 9BD2
+E5B6AE 9BD3
+E5B6B7 9BD6
+E5B6BA 97E4
+E5B6BC 9BD7
+E5B6BD 9BD4
+E5B789 9BD8
+E5B78C 8ADE
+E5B78D 9BD9
+E5B792 9BDB
+E5B793 9BDA
+E5B796 9BDC
+E5B79B 9BDD
+E5B79D 90EC
+E5B79E 8F42
+E5B7A1 8F84
+E5B7A3 9183
+E5B7A5 8D48
+E5B7A6 8DB6
+E5B7A7 8D49
+E5B7A8 8B90
+E5B7AB 9BDE
+E5B7AE 8DB7
+E5B7B1 8CC8
+E5B7B2 9BDF
+E5B7B3 96A4
+E5B7B4 9462
+E5B7B5 9BE0
+E5B7B7 8D4A
+E5B7BB 8AAA
+E5B7BD 9246
+E5B7BE 8BD0
+E5B882 8E73
+E5B883 957A
+E5B886 94BF
+E5B88B 9BE1
+E5B88C 8AF3
+E5B891 9BE4
+E5B896 929F
+E5B899 9BE3
+E5B89A 9BE2
+E5B89B 9BE5
+E5B89D 92E9
+E5B8A5 9083
+E5B8AB 8E74
+E5B8AD 90C8
+E5B8AF 91D1
+E5B8B0 8B41
+E5B8B3 92A0
+E5B8B6 9BE6
+E5B8B7 9BE7
+E5B8B8 8FED
+E5B8BD 9658
+E5B980 9BEA
+E5B983 9BE9
+E5B984 9BE8
+E5B985 959D
+E5B987 9BF1
+E5B98C 9679
+E5B98E 9BEB
+E5B994 9BED
+E5B995 968B
+E5B997 9BEC
+E5B99F 9BEE
+E5B9A1 94A6
+E5B9A2 9BEF
+E5B9A3 95BC
+E5B9A4 9BF0
+E5B9B2 8AB1
+E5B9B3 95BD
+E5B9B4 944E
+E5B9B5 9BF2
+E5B9B6 9BF3
+E5B9B8 8D4B
+E5B9B9 8AB2
+E5B9BA 9BF4
+E5B9BB 8CB6
+E5B9BC 9763
+E5B9BD 9748
+E5B9BE 8AF4
+E5B9BF 9BF6
+E5BA81 92A1
+E5BA83 8D4C
+E5BA84 8FAF
+E5BA87 94DD
+E5BA8A 8FB0
+E5BA8F 8F98
+E5BA95 92EA
+E5BA96 95F7
+E5BA97 9358
+E5BA9A 8D4D
+E5BA9C 957B
+E5BAA0 9BF7
+E5BAA6 9378
+E5BAA7 8DC0
+E5BAAB 8CC9
+E5BAAD 92EB
+E5BAB5 88C1
+E5BAB6 8F8E
+E5BAB7 8D4E
+E5BAB8 9766
+E5BB81 9BF8
+E5BB82 9BF9
+E5BB83 9470
+E5BB88 9BFA
+E5BB89 97F5
+E5BB8A 984C
+E5BB8F 9BFC
+E5BB90 9BFB
+E5BB93 8A66
+E5BB96 9C40
+E5BB9A 9C43
+E5BB9B 9C44
+E5BB9D 9C42
+E5BB9F 955F
+E5BBA0 8FB1
+E5BBA1 9C46
+E5BBA2 9C45
+E5BBA3 9C41
+E5BBA8 9C47
+E5BBA9 9C48
+E5BBAC 9C49
+E5BBB0 9C4C
+E5BBB1 9C4A
+E5BBB3 9C4B
+E5BBB4 9C4D
+E5BBB6 8984
+E5BBB7 92EC
+E5BBB8 9C4E
+E5BBBA 8C9A
+E5BBBB 89F4
+E5BBBC 9455
+E5BBBE 9C4F
+E5BBBF 93F9
+E5BC81 95D9
+E5BC83 9C50
+E5BC84 984D
+E5BC89 9C51
+E5BC8A 95BE
+E5BC8B 9C54
+E5BC8C 989F
+E5BC8D 98AF
+E5BC8F 8EAE
+E5BC90 93F3
+E5BC91 9C55
+E5BC93 8B7C
+E5BC94 92A2
+E5BC95 88F8
+E5BC96 9C56
+E5BC97 95A4
+E5BC98 8D4F
+E5BC9B 926F
+E5BC9F 92ED
+E5BCA5 96ED
+E5BCA6 8CB7
+E5BCA7 8CCA
+E5BCA9 9C57
+E5BCAD 9C58
+E5BCAF 9C5E
+E5BCB1 8EE3
+E5BCB5 92A3
+E5BCB7 8BAD
+E5BCB8 9C59
+E5BCBC 954A
+E5BCBE 9265
+E5BD81 9C5A
+E5BD88 9C5B
+E5BD8A 8BAE
+E5BD8C 9C5C
+E5BD8E 9C5D
+E5BD91 9C5F
+E5BD93 9396
+E5BD96 9C60
+E5BD97 9C61
+E5BD99 9C62
+E5BD9C 9C53
+E5BD9D 9C52
+E5BDA1 9C63
+E5BDA2 8C60
+E5BDA6 9546
+E5BDA9 8DCA
+E5BDAA 9556
+E5BDAB 92A4
+E5BDAC 956A
+E5BDAD 9C64
+E5BDB0 8FB2
+E5BDB1 8965
+E5BDB3 9C65
+E5BDB7 9C66
+E5BDB9 96F0
+E5BDBC 94DE
+E5BDBF 9C69
+E5BE80 899D
+E5BE81 90AA
+E5BE82 9C68
+E5BE83 9C67
+E5BE84 8C61
+E5BE85 91D2
+E5BE87 9C6D
+E5BE88 9C6B
+E5BE8A 9C6A
+E5BE8B 97A5
+E5BE8C 8CE3
+E5BE90 8F99
+E5BE91 9C6C
+E5BE92 936B
+E5BE93 8F5D
+E5BE97 93BE
+E5BE98 9C70
+E5BE99 9C6F
+E5BE9E 9C6E
+E5BEA0 9C71
+E5BEA1 8CE4
+E5BEA8 9C72
+E5BEA9 959C
+E5BEAA 8F7A
+E5BEAD 9C73
+E5BEAE 94F7
+E5BEB3 93BF
+E5BEB4 92A5
+E5BEB9 934F
+E5BEBC 9C74
+E5BEBD 8B4A
+E5BF83 9053
+E5BF85 954B
+E5BF8C 8AF5
+E5BF8D 9445
+E5BF96 9C75
+E5BF97 8E75
+E5BF98 9659
+E5BF99 965A
+E5BF9C 899E
+E5BF9D 9C7A
+E5BFA0 9289
+E5BFA4 9C77
+E5BFAB 89F5
+E5BFB0 9CAB
+E5BFB1 9C79
+E5BFB5 944F
+E5BFB8 9C78
+E5BFBB 9C76
+E5BFBD 8D9A
+E5BFBF 9C7C
+E6808E 9C83
+E6808F 9C89
+E68090 9C81
+E68092 937B
+E68095 9C86
+E68096 957C
+E68099 9C80
+E6809B 9C85
+E6809C 97E5
+E6809D 8E76
+E680A0 91D3
+E680A1 9C7D
+E680A5 8B7D
+E680A6 9C88
+E680A7 90AB
+E680A8 8985
+E680A9 9C82
+E680AA 89F6
+E680AB 9C87
+E680AF 8BAF
+E680B1 9C84
+E680BA 9C8A
+E68181 9C8C
+E68182 9C96
+E68183 9C94
+E68186 9C91
+E6818A 9C90
+E6818B 97F6
+E6818D 9C92
+E68190 8BB0
+E68192 8D50
+E68195 8F9A
+E68199 9C99
+E6819A 9C8B
+E6819F 9C8F
+E681A0 9C7E
+E681A2 89F8
+E681A3 9C93
+E681A4 9C95
+E681A5 9270
+E681A8 8DA6
+E681A9 89B6
+E681AA 9C8D
+E681AB 9C98
+E681AC 9C97
+E681AD 8BB1
+E681AF 91A7
+E681B0 8A86
+E681B5 8C62
+E681B7 9C8E
+E68281 9C9A
+E68283 9C9D
+E68284 9C9F
+E68289 8EBB
+E6828B 9CA5
+E6828C 92EE
+E6828D 9C9B
+E68292 9CA3
+E68294 89F7
+E68296 9CA1
+E68297 9CA2
+E6829A 9C9E
+E6829B 9CA0
+E6829F 8CE5
+E682A0 9749
+E682A3 8AB3
+E682A6 8978
+E682A7 9CA4
+E682A9 9459
+E682AA 88AB
+E682B2 94DF
+E682B3 9C7B
+E682B4 9CAA
+E682B5 9CAE
+E682B6 96E3
+E682B8 9CA7
+E682BC 9389
+E682BD 9CAC
+E68385 8FEE
+E68386 9CAD
+E68387 93D5
+E68391 9866
+E68393 9CA9
+E68398 9CAF
+E6839A 8D9B
+E6839C 90C9
+E6839F 88D2
+E683A0 9CA8
+E683A1 9CA6
+E683A3 9179
+E683A7 9C9C
+E683A8 8E53
+E683B0 91C4
+E683B1 9CBB
+E683B3 917A
+E683B4 9CB6
+E683B6 9CB3
+E683B7 9CB4
+E683B9 8EE4
+E683BA 9CB7
+E683BB 9CBA
+E68480 9CB5
+E68481 8F44
+E68483 9CB8
+E68486 9CB2
+E68488 96FA
+E68489 96F9
+E6848D 9CBC
+E6848E 9CBD
+E6848F 88D3
+E68495 9CB1
+E6849A 8BF0
+E6849B 88A4
+E6849F 8AB4
+E684A1 9CB9
+E684A7 9CC1
+E684A8 9CC0
+E684AC 9CC5
+E684B4 9CC6
+E684BC 9CC4
+E684BD 9CC7
+E684BE 9CBF
+E684BF 9CC3
+E68582 9CC8
+E68584 9CC9
+E68587 9CBE
+E68588 8E9C
+E6858A 9CC2
+E6858B 91D4
+E6858C 8D51
+E6858D 9CB0
+E6858E 9054
+E68593 9CD6
+E68595 95E7
+E68598 9CCC
+E68599 9CCD
+E6859A 9CCE
+E6859D 9CD5
+E6859F 9CD4
+E685A2 969D
+E685A3 8AB5
+E685A5 9CD2
+E685A7 8C64
+E685A8 8A53
+E685AB 9CCF
+E685AE 97B6
+E685AF 9CD1
+E685B0 88D4
+E685B1 9CD3
+E685B3 9CCA
+E685B4 9CD0
+E685B5 9CD7
+E685B6 8C63
+E685B7 9CCB
+E685BE 977C
+E68682 974A
+E68687 9CDA
+E6868A 9CDE
+E6868E 919E
+E68690 97F7
+E68691 9CDF
+E68694 9CDC
+E68696 9CD9
+E68699 9CD8
+E6869A 9CDD
+E686A4 95AE
+E686A7 93B2
+E686A9 8C65
+E686AB 9CE0
+E686AC 9CDB
+E686AE 9CE1
+E686B2 8C9B
+E686B6 89AF
+E686BA 9CE9
+E686BE 8AB6
+E68783 9CE7
+E68786 9CE8
+E68787 8DA7
+E68788 9CE6
+E68789 9CE4
+E6878A 9CE3
+E6878B 9CEA
+E6878C 9CE2
+E6878D 9CEC
+E68790 89F9
+E687A3 9CEE
+E687A6 9CED
+E687B2 92A6
+E687B4 9CF1
+E687B6 9CEF
+E687B7 9CE5
+E687B8 8C9C
+E687BA 9CF0
+E687BC 9CF4
+E687BD 9CF3
+E687BE 9CF5
+E687BF 9CF2
+E68880 9CF6
+E68888 9CF7
+E68889 9CF8
+E6888A 95E8
+E6888C 9CFA
+E6888D 9CF9
+E6888E 8F5E
+E68890 90AC
+E68891 89E4
+E68892 89FA
+E68894 9CFB
+E68896 88BD
+E6889A 90CA
+E6889B 9CFC
+E6889D E6C1
+E6889E 9D40
+E6889F 8C81
+E688A1 9D41
+E688A6 90ED
+E688AA 9D42
+E688AE 9D43
+E688AF 8B59
+E688B0 9D44
+E688B2 9D45
+E688B3 9D46
+E688B4 91D5
+E688B8 8CCB
+E688BB 96DF
+E688BF 965B
+E68980 8F8A
+E68981 9D47
+E68987 90EE
+E68988 E7BB
+E68989 94E0
+E6898B 8EE8
+E6898D 8DCB
+E6898E 9D48
+E68993 91C5
+E68995 95A5
+E68998 91EF
+E6899B 9D4B
+E6899E 9D49
+E689A0 9D4C
+E689A3 9D4A
+E689A8 9D4D
+E689AE 95AF
+E689B1 88B5
+E689B6 957D
+E689B9 94E1
+E689BC 9D4E
+E689BE 9D51
+E689BF 8FB3
+E68A80 8B5A
+E68A82 9D4F
+E68A83 9D56
+E68A84 8FB4
+E68A89 9D50
+E68A8A 9463
+E68A91 977D
+E68A92 9D52
+E68A93 9D53
+E68A94 9D57
+E68A95 938A
+E68A96 9D54
+E68A97 8D52
+E68A98 90DC
+E68A9B 9D65
+E68A9C 94B2
+E68A9E 91F0
+E68AAB 94E2
+E68AAC 9DAB
+E68AB1 95F8
+E68AB5 92EF
+E68AB9 9695
+E68ABB 9D5A
+E68ABC 899F
+E68ABD 928A
+E68B82 9D63
+E68B85 9253
+E68B86 9D5D
+E68B87 9D64
+E68B88 9D5F
+E68B89 9D66
+E68B8A 9D62
+E68B8C 9D61
+E68B8D 948F
+E68B8F 9D5B
+E68B90 89FB
+E68B91 9D59
+E68B92 8B91
+E68B93 91F1
+E68B94 9D55
+E68B97 9D58
+E68B98 8D53
+E68B99 90D9
+E68B9B 8FB5
+E68B9C 9D60
+E68B9D 9471
+E68BA0 8B92
+E68BA1 8A67
+E68BAC 8A87
+E68BAD 9040
+E68BAE 9D68
+E68BAF 9D6D
+E68BB1 9D69
+E68BB3 8C9D
+E68BB5 9D6E
+E68BB6 8E41
+E68BB7 8D89
+E68BBE 8F45
+E68BBF 9D5C
+E68C81 8E9D
+E68C82 9D6B
+E68C87 8E77
+E68C88 9D6C
+E68C89 88C2
+E68C8C 9D67
+E68C91 92A7
+E68C99 8B93
+E68C9F 8BB2
+E68CA7 9D6A
+E68CA8 88A5
+E68CAB 8DC1
+E68CAF 9055
+E68CBA 92F0
+E68CBD 94D2
+E68CBE 9D70
+E68CBF 917D
+E68D89 91A8
+E68D8C 8E4A
+E68D8D 9D71
+E68D8F 9D73
+E68D90 9D6F
+E68D95 95DF
+E68D97 92BB
+E68D9C 917B
+E68DA7 95F9
+E68DA8 8ECC
+E68DA9 9D80
+E68DAB 9D7E
+E68DAE 9098
+E68DB2 8C9E
+E68DB6 9D78
+E68DB7 8FB7
+E68DBA 93E6
+E68DBB 9450
+E68E80 9D76
+E68E83 917C
+E68E88 8EF6
+E68E89 9D7B
+E68E8C 8FB6
+E68E8E 9D75
+E68E8F 9D7A
+E68E92 9472
+E68E96 9D74
+E68E98 8C40
+E68E9B 8A7C
+E68E9F 9D7C
+E68EA0 97A9
+E68EA1 8DCC
+E68EA2 9254
+E68EA3 9D79
+E68EA5 90DA
+E68EA7 8D54
+E68EA8 9084
+E68EA9 8986
+E68EAA 915B
+E68EAB 9D77
+E68EAC 8B64
+E68EB2 8C66
+E68EB4 92CD
+E68EB5 9D7D
+E68EBB 917E
+E68EBE 9D81
+E68F80 9D83
+E68F83 91B5
+E68F84 9D89
+E68F86 9D84
+E68F89 9D86
+E68F8F 9560
+E68F90 92F1
+E68F92 9D87
+E68F96 974B
+E68F9A 9767
+E68F9B 8AB7
+E68FA1 88AC
+E68FA3 9D85
+E68FA9 9D82
+E68FAE 8AF6
+E68FB4 8987
+E68FB6 9D88
+E68FBA 9768
+E69086 9D8C
+E6908D 91B9
+E6908F 9D93
+E69093 9D8D
+E69096 9D8A
+E69097 9D91
+E6909C 9D72
+E690A6 9D8E
+E690A8 9D92
+E690AC 94C0
+E690AD 938B
+E690B4 9D8B
+E690B6 9D8F
+E690BA 8C67
+E690BE 8DEF
+E69182 90DB
+E6918E 9D97
+E69198 9345
+E691A7 9D94
+E691A9 9680
+E691AF 9D95
+E691B6 9D96
+E691B8 96CC
+E691BA 90A0
+E69283 8C82
+E69288 9D9D
+E69292 8E54
+E69293 9D9A
+E69295 9D99
+E6929A 9451
+E6929E 93B3
+E692A4 9350
+E692A5 9D9B
+E692A9 9D9C
+E692AB 958F
+E692AD 9464
+E692AE 8E42
+E692B0 90EF
+E692B2 966F
+E692B9 8A68
+E692BB 9DA3
+E692BC 9D9E
+E69381 9769
+E69382 9DA5
+E69385 9DA1
+E69387 9DA2
+E6938D 9180
+E69392 9DA0
+E69394 9D5E
+E69398 9DA4
+E6939A 9D9F
+E693A0 9DA9
+E693A1 9DAA
+E693A2 9346
+E693A3 9DAC
+E693A6 8E43
+E693A7 9DA7
+E693AC 8B5B
+E693AF 9DAD
+E693B1 9DA6
+E693B2 9DB1
+E693B4 9DB0
+E693B6 9DAF
+E693BA 9DB2
+E693BD 9DB4
+E693BE 8FEF
+E69480 9DB3
+E69485 9DB7
+E69498 9DB5
+E6949C 9DB6
+E6949D 9D90
+E694A3 9DB9
+E694A4 9DB8
+E694AA 9D98
+E694AB 9DBA
+E694AC 9DAE
+E694AF 8E78
+E694B4 9DBB
+E694B5 9DBC
+E694B6 9DBE
+E694B7 9DBD
+E694B8 9DBF
+E694B9 89FC
+E694BB 8D55
+E694BE 95FA
+E694BF 90AD
+E69585 8CCC
+E69588 9DC1
+E6958D 9DC4
+E6958F 9571
+E69591 8B7E
+E69595 9DC3
+E69596 9DC2
+E69597 9473
+E69598 9DC5
+E69599 8BB3
+E6959D 9DC7
+E6959E 9DC6
+E695A2 8AB8
+E695A3 8E55
+E695A6 93D6
+E695AC 8C68
+E695B0 9094
+E695B2 9DC8
+E695B4 90AE
+E695B5 9347
+E695B7 957E
+E695B8 9DC9
+E69682 9DCA
+E69683 9DCB
+E69687 95B6
+E69688 9B7C
+E69689 90C4
+E6968C 956B
+E6968E 8DD6
+E69690 94E3
+E69691 94C1
+E69697 936C
+E69699 97BF
+E6969B 9DCD
+E6969C 8ECE
+E6969F 9DCE
+E696A1 88B4
+E696A4 8BD2
+E696A5 90CB
+E696A7 9580
+E696AB 9DCF
+E696AC 8E61
+E696AD 9266
+E696AF 8E7A
+E696B0 9056
+E696B7 9DD0
+E696B9 95FB
+E696BC 8997
+E696BD 8E7B
+E69781 9DD3
+E69783 9DD1
+E69784 9DD4
+E69785 97B7
+E69786 9DD2
+E6978B 90F9
+E6978C 9DD5
+E6978F 91B0
+E69792 9DD6
+E69797 8AF8
+E69799 9DD8
+E6979B 9DD7
+E697A0 9DD9
+E697A1 9DDA
+E697A2 8AF9
+E697A5 93FA
+E697A6 9255
+E697A7 8B8C
+E697A8 8E7C
+E697A9 9181
+E697AC 8F7B
+E697AD 88AE
+E697B1 9DDB
+E697BA 89A0
+E697BB 9DDF
+E69882 8D56
+E69883 9DDE
+E69886 8DA9
+E69887 8FB8
+E6988A 9DDD
+E6988C 8FB9
+E6988E 96BE
+E6988F 8DA8
+E69893 88D5
+E69894 90CC
+E6989C 9DE4
+E6989F 90AF
+E698A0 8966
+E698A5 8F74
+E698A7 9686
+E698A8 8DF0
+E698AD 8FBA
+E698AF 90A5
+E698B4 9DE3
+E698B5 9DE1
+E698B6 9DE2
+E698BC 928B
+E698BF 9E45
+E69981 9DE8
+E69982 8E9E
+E69983 8D57
+E69984 9DE6
+E69989 9DE7
+E6998B 9057
+E6998F 9DE5
+E69992 8E4E
+E6999D 9DEA
+E6999E 9DE9
+E6999F 9DEE
+E699A2 9DEF
+E699A4 9DEB
+E699A6 8A41
+E699A7 9DEC
+E699A8 9DED
+E699A9 94D3
+E699AE 9581
+E699AF 8C69
+E699B0 9DF0
+E699B4 90B0
+E699B6 8FBB
+E699BA 9271
+E69A81 8BC5
+E69A83 9DF1
+E69A84 9DF5
+E69A87 89C9
+E69A88 9DF2
+E69A89 9DF4
+E69A8E 9DF3
+E69A91 8F8B
+E69A96 9267
+E69A97 88C3
+E69A98 9DF6
+E69A9D 9DF7
+E69AA2 92A8
+E69AA6 97EF
+E69AAB 8E62
+E69AAE 95E9
+E69AB4 965C
+E69AB8 9E41
+E69AB9 9DF9
+E69ABC 9DFC
+E69ABE 9DFB
+E69B81 9DF8
+E69B84 9E40
+E69B87 93DC
+E69B89 9DFA
+E69B96 9E42
+E69B99 8F8C
+E69B9A 9E43
+E69B9C 976A
+E69B9D 9498
+E69BA0 9E44
+E69BA6 9E46
+E69BA9 9E47
+E69BB0 9E48
+E69BB2 8BC8
+E69BB3 8967
+E69BB4 8D58
+E69BB5 9E49
+E69BB7 9E4A
+E69BB8 8F91
+E69BB9 9182
+E69BBC 99D6
+E69BBD 915D
+E69BBE 915C
+E69BBF 91D6
+E69C80 8DC5
+E69C83 98F0
+E69C88 8C8E
+E69C89 974C
+E69C8B 95FC
+E69C8D 959E
+E69C8F 9E4B
+E69C94 8DF1
+E69C95 92BD
+E69C96 9E4C
+E69C97 984E
+E69C9B 965D
+E69C9D 92A9
+E69C9E 9E4D
+E69C9F 8AFA
+E69CA6 9E4E
+E69CA7 9E4F
+E69CA8 96D8
+E69CAA 96A2
+E69CAB 9696
+E69CAC 967B
+E69CAD 8E44
+E69CAE 9E51
+E69CB1 8EE9
+E69CB4 9670
+E69CB6 9E53
+E69CB7 9E56
+E69CB8 9E55
+E69CBA 8AF7
+E69CBD 8B80
+E69CBF 9E52
+E69D81 9E54
+E69D86 9E57
+E69D89 9099
+E69D8E 979B
+E69D8F 88C7
+E69D90 8DDE
+E69D91 91BA
+E69D93 8EDB
+E69D96 8FF1
+E69D99 9E5A
+E69D9C 936D
+E69D9E 9E58
+E69D9F 91A9
+E69DA0 9E59
+E69DA1 8FF0
+E69DA2 96DB
+E69DA3 9E5B
+E69DA4 9E5C
+E69DA5 9788
+E69DAA 9E61
+E69DAD 8D59
+E69DAF 9474
+E69DB0 9E5E
+E69DB1 938C
+E69DB2 9DDC
+E69DB3 9DE0
+E69DB5 8B6E
+E69DB7 9466
+E69DBC 9E60
+E69DBE 8FBC
+E69DBF 94C2
+E69E85 9E66
+E69E87 94F8
+E69E89 9E5D
+E69E8B 9E63
+E69E8C 9E62
+E69E90 90CD
+E69E95 968D
+E69E97 97D1
+E69E9A 9687
+E69E9C 89CA
+E69E9D 8E7D
+E69EA0 9867
+E69EA1 9E65
+E69EA2 9095
+E69EA6 9E64
+E69EA9 9E5F
+E69EAF 8CCD
+E69EB3 9E6B
+E69EB4 9E69
+E69EB6 89CB
+E69EB7 9E67
+E69EB8 9E6D
+E69EB9 9E73
+E69F81 91C6
+E69F84 95BF
+E69F86 9E75
+E69F8A 9541
+E69F8E 9E74
+E69F8F 9490
+E69F90 965E
+E69F91 8AB9
+E69F93 90F5
+E69F94 8F5F
+E69F98 92D1
+E69F9A 974D
+E69F9D 9E70
+E69F9E 9E6F
+E69FA2 9E71
+E69FA4 9E6E
+E69FA7 9E76
+E69FA9 9E6C
+E69FAC 9E6A
+E69FAE 9E72
+E69FAF 9E68
+E69FB1 928C
+E69FB3 96F6
+E69FB4 8EC4
+E69FB5 8DF2
+E69FBB 8DB8
+E69FBE 968F
+E69FBF 8A60
+E6A082 92CC
+E6A083 93C8
+E6A084 8968
+E6A093 90F0
+E6A096 90B2
+E6A097 8C49
+E6A09E 9E78
+E6A0A1 8D5A
+E6A0A2 8A9C
+E6A0A9 9E7A
+E6A0AA 8A94
+E6A0AB 9E81
+E6A0B2 9E7D
+E6A0B4 90F1
+E6A0B8 8A6A
+E6A0B9 8DAA
+E6A0BC 8A69
+E6A0BD 8DCD
+E6A180 9E7B
+E6A181 8C85
+E6A182 8C6A
+E6A183 938D
+E6A186 9E79
+E6A188 88C4
+E6A18D 9E7C
+E6A18E 9E7E
+E6A190 8BCB
+E6A191 8C4B
+E6A193 8ABA
+E6A194 8B6A
+E6A199 9E82
+E6A19C 8DF7
+E6A19D 9691
+E6A19F 8E56
+E6A1A3 9E83
+E6A1A7 954F
+E6A1B4 9E8F
+E6A1B6 89B1
+E6A1B7 9E84
+E6A1BE 9E95
+E6A1BF 9E85
+E6A281 97C0
+E6A283 9E8C
+E6A285 947E
+E6A28D 9E94
+E6A28F 9E87
+E6A293 88B2
+E6A294 9E89
+E6A297 8D5B
+E6A29B 9E8B
+E6A29D 9E8A
+E6A29F 9E86
+E6A2A0 9E91
+E6A2A2 8FBD
+E6A2A6 9AEB
+E6A2A7 8CE6
+E6A2A8 979C
+E6A2AD 9E88
+E6A2AF 92F2
+E6A2B0 8A42
+E6A2B1 8DAB
+E6A2B3 9E80
+E6A2B5 9E90
+E6A2B6 8A81
+E6A2B9 9E8E
+E6A2BA 9E92
+E6A2BC 938E
+E6A384 8AFC
+E6A386 9EB0
+E6A389 96C7
+E6A38A 9E97
+E6A38B 8AFB
+E6A38D 9E9E
+E6A392 965F
+E6A394 9E9F
+E6A395 9EA1
+E6A397 9EA5
+E6A398 9E99
+E6A39A 9249
+E6A39F 938F
+E6A3A0 9EA9
+E6A3A1 9E9C
+E6A3A3 9EA6
+E6A3A7 9EA0
+E6A3AE 9058
+E6A3AF 9EAA
+E6A3B2 90B1
+E6A3B9 9EA8
+E6A3BA 8ABB
+E6A480 986F
+E6A481 9E96
+E6A484 9EA4
+E6A485 88D6
+E6A488 9E98
+E6A48B 96B8
+E6A48C 9E9D
+E6A48D 9041
+E6A48E 92C5
+E6A48F 9E93
+E6A492 9EA3
+E6A499 909A
+E6A49A 9EAD
+E6A49B 8A91
+E6A49C 8C9F
+E6A4A1 9EAF
+E6A4A2 9E9A
+E6A4A3 9EAE
+E6A4A5 9EA7
+E6A4A6 9E9B
+E6A4A8 9EAB
+E6A4AA 9EAC
+E6A4B0 9EBD
+E6A4B4 93CC
+E6A4B6 9EA2
+E6A4B9 9EB9
+E6A4BD 9EBB
+E6A4BF 92D6
+E6A58A 976B
+E6A593 9596
+E6A594 9EB6
+E6A595 91C8
+E6A599 9EBC
+E6A59A 915E
+E6A59C 9EB3
+E6A59D 9EC0
+E6A59E 9EBF
+E6A5A0 93ED
+E6A5A1 9EBE
+E6A5A2 93E8
+E6A5AA 9EC2
+E6A5AB 9EB5
+E6A5AD 8BC6
+E6A5AE 9EB8
+E6A5AF 8F7C
+E6A5B3 9480
+E6A5B4 9EBA
+E6A5B5 8BC9
+E6A5B7 9EB2
+E6A5B8 9EB4
+E6A5B9 9EB1
+E6A5BC 984F
+E6A5BD 8A79
+E6A5BE 9EB7
+E6A681 9EC1
+E6A682 8A54
+E6A68A 8DE5
+E6A68E 897C
+E6A691 9ED2
+E6A694 9850
+E6A695 9ED5
+E6A69B 9059
+E6A69C 9ED4
+E6A6A0 9ED3
+E6A6A7 9ED0
+E6A6AE 9EC4
+E6A6B1 9EE1
+E6A6B2 9EC3
+E6A6B4 9ED6
+E6A6BB 9ECE
+E6A6BE 9EC9
+E6A6BF 9EC6
+E6A781 9EC7
+E6A783 9ECF
+E6A787 EAA0
+E6A78A 9ECC
+E6A78B 8D5C
+E6A78C 92C6
+E6A78D 9184
+E6A78E 9ECA
+E6A790 9EC5
+E6A793 9EC8
+E6A798 976C
+E6A799 968A
+E6A79D 9ECD
+E6A79E 9ED7
+E6A7A7 9EDF
+E6A7A8 9ED8
+E6A7AB 9EE5
+E6A7AD 9EE3
+E6A7B2 9EDE
+E6A7B9 9EDD
+E6A7BB 92CE
+E6A7BD 9185
+E6A7BF 9EDB
+E6A882 9ED9
+E6A885 9EE0
+E6A88A 9EE6
+E6A88B 94F3
+E6A88C 9EEC
+E6A892 9EE7
+E6A893 9EEA
+E6A894 9EE4
+E6A897 9294
+E6A899 9557
+E6A89B 9EDA
+E6A89E 9EE2
+E6A89F 8FBE
+E6A8A1 96CD
+E6A8A2 9EF6
+E6A8A3 9EE9
+E6A8A9 8CA0
+E6A8AA 89A1
+E6A8AB 8A7E
+E6A8AE 9ED1
+E6A8B5 8FBF
+E6A8B6 9EEE
+E6A8B8 9EF5
+E6A8B9 8EF7
+E6A8BA 8A92
+E6A8BD 924D
+E6A984 9EEB
+E6A987 9EF0
+E6A988 9EF4
+E6A98B 8BB4
+E6A998 8B6B
+E6A999 9EF2
+E6A99F 8B40
+E6A9A1 93C9
+E6A9A2 9EF1
+E6A9A6 9EF3
+E6A9B2 9EED
+E6A9B8 9EEF
+E6A9BF 8A80
+E6AA80 9268
+E6AA84 9EFA
+E6AA8D 9EF8
+E6AA8E 8CE7
+E6AA90 9EF7
+E6AA97 9F40
+E6AA9C 9E77
+E6AAA0 9EF9
+E6AAA2 9EFB
+E6AAA3 9EFC
+E6AAAA 9F4B
+E6AAAC 9F47
+E6AAAE 9E8D
+E6AAB3 9F46
+E6AAB8 9F45
+E6AABB 9F42
+E6AB81 9EE8
+E6AB82 9F44
+E6AB83 9F43
+E6AB91 9F49
+E6AB93 9845
+E6AB9A 9F4C
+E6AB9B 8BF9
+E6AB9E 9F48
+E6AB9F 9F4A
+E6ABA8 94A5
+E6ABAA 9F4D
+E6ABBA 9F51
+E6ABBB 9F4E
+E6AC84 9793
+E6AC85 9F4F
+E6AC8A 9EDC
+E6AC92 9F52
+E6AC96 9F53
+E6AC9D 8954
+E6AC9F 9F55
+E6ACA0 8C87
+E6ACA1 8E9F
+E6ACA3 8BD3
+E6ACA7 89A2
+E6ACB2 977E
+E6ACB7 9F57
+E6ACB8 9F56
+E6ACB9 9F59
+E6ACBA 8B5C
+E6ACBD 8BD4
+E6ACBE 8ABC
+E6AD83 9F5C
+E6AD87 9F5B
+E6AD89 9F5D
+E6AD8C 89CC
+E6AD8E 9256
+E6AD90 9F5E
+E6AD93 8ABD
+E6AD94 9F60
+E6AD99 9F5F
+E6AD9B 9F61
+E6AD9F 9F62
+E6ADA1 9F63
+E6ADA2 8E7E
+E6ADA3 90B3
+E6ADA4 8D9F
+E6ADA6 9590
+E6ADA9 95E0
+E6ADAA 9863
+E6ADAF 8E95
+E6ADB3 8DCE
+E6ADB4 97F0
+E6ADB8 9F64
+E6ADB9 9F65
+E6ADBB 8E80
+E6ADBF 9F66
+E6AE80 9F67
+E6AE83 9F69
+E6AE84 9F68
+E6AE86 9677
+E6AE89 8F7D
+E6AE8A 8EEA
+E6AE8B 8E63
+E6AE8D 9F6A
+E6AE95 9F6C
+E6AE96 9042
+E6AE98 9F6B
+E6AE9E 9F6D
+E6AEA4 9F6E
+E6AEAA 9F6F
+E6AEAB 9F70
+E6AEAF 9F71
+E6AEB1 9F73
+E6AEB2 9F72
+E6AEB3 9F74
+E6AEB4 89A3
+E6AEB5 9269
+E6AEB7 9F75
+E6AEBA 8E45
+E6AEBB 8A6B
+E6AEBC 9F76
+E6AEBF 9361
+E6AF80 9ACA
+E6AF85 8B42
+E6AF86 9F77
+E6AF8B 9F78
+E6AF8D 95EA
+E6AF8E 9688
+E6AF92 93C5
+E6AF93 9F79
+E6AF94 94E4
+E6AF98 94F9
+E6AF9B 96D1
+E6AF9F 9F7A
+E6AFAB 9F7C
+E6AFAC 9F7B
+E6AFAF 9F7E
+E6AFB3 9F7D
+E6B088 9F81
+E6B08F 8E81
+E6B091 96AF
+E6B093 9F82
+E6B094 9F83
+E6B097 8B43
+E6B09B 9F84
+E6B0A3 9F86
+E6B0A4 9F85
+E6B0B4 9085
+E6B0B7 9558
+E6B0B8 8969
+E6B0BE 94C3
+E6B180 92F3
+E6B181 8F60
+E6B182 8B81
+E6B18E 94C4
+E6B190 8EAC
+E6B195 9F88
+E6B197 8ABE
+E6B19A 8998
+E6B19D 93F0
+E6B19E 9F87
+E6B19F 8D5D
+E6B1A0 9272
+E6B1A2 9F89
+E6B1A8 9F91
+E6B1AA 9F8A
+E6B1B0 91BF
+E6B1B2 8B82
+E6B1B3 9F92
+E6B1BA 8C88
+E6B1BD 8B44
+E6B1BE 9F90
+E6B281 9F8E
+E6B282 9F8B
+E6B283 9780
+E6B288 92BE
+E6B28C 93D7
+E6B28D 9F8C
+E6B290 9F94
+E6B292 9F93
+E6B293 8C42
+E6B296 89AB
+E6B299 8DB9
+E6B29A 9F8D
+E6B29B 9F8F
+E6B2A1 9676
+E6B2A2 91F2
+E6B2AB 9697
+E6B2AE 9F9C
+E6B2B1 9F9D
+E6B2B3 89CD
+E6B2B8 95A6
+E6B2B9 96FB
+E6B2BA 9F9F
+E6B2BB 8EA1
+E6B2BC 8FC0
+E6B2BD 9F98
+E6B2BE 9F9E
+E6B2BF 8988
+E6B381 8BB5
+E6B384 9F95
+E6B385 9F9A
+E6B389 90F2
+E6B38A 9491
+E6B38C 94E5
+E6B393 9F97
+E6B395 9640
+E6B397 9F99
+E6B399 9FA2
+E6B39B 9FA0
+E6B39D 9F9B
+E6B3A1 9641
+E6B3A2 9467
+E6B3A3 8B83
+E6B3A5 9344
+E6B3A8 928D
+E6B3AA 9FA3
+E6B3AF 9FA1
+E6B3B0 91D7
+E6B3B1 9F96
+E6B3B3 896A
+E6B48B 976D
+E6B48C 9FAE
+E6B492 9FAD
+E6B497 90F4
+E6B499 9FAA
+E6B49B 978C
+E6B49E 93B4
+E6B49F 9FA4
+E6B4A5 92C3
+E6B4A9 896B
+E6B4AA 8D5E
+E6B4AB 9FA7
+E6B4B2 8F46
+E6B4B3 9FAC
+E6B4B5 9FAB
+E6B4B6 9FA6
+E6B4B8 9FA9
+E6B4BB 8A88
+E6B4BD 9FA8
+E6B4BE 9468
+E6B581 97AC
+E6B584 8FF2
+E6B585 90F3
+E6B599 9FB4
+E6B59A 9FB2
+E6B59C 956C
+E6B5A3 9FAF
+E6B5A4 9FB1
+E6B5A6 8959
+E6B5A9 8D5F
+E6B5AA 9851
+E6B5AC 8A5C
+E6B5AE 9582
+E6B5B4 9781
+E6B5B7 8A43
+E6B5B8 905A
+E6B5B9 9FB3
+E6B685 9FB8
+E6B688 8FC1
+E6B68C 974F
+E6B68E 9FB5
+E6B693 9FB0
+E6B695 9FB6
+E6B699 97DC
+E6B69B 9393
+E6B69C 93C0
+E6B6AF 8A55
+E6B6B2 8974
+E6B6B5 9FBC
+E6B6B8 9FBF
+E6B6BC 97C1
+E6B780 9784
+E6B785 9FC6
+E6B786 9FC0
+E6B787 9FBD
+E6B78B 97D2
+E6B78C 9FC3
+E6B791 8F69
+E6B792 9FC5
+E6B795 9FCA
+E6B798 9391
+E6B799 9FC8
+E6B79E 9FC2
+E6B7A1 9257
+E6B7A4 9FC9
+E6B7A6 9FBE
+E6B7A8 9FC4
+E6B7AA 9FCB
+E6B7AB 88FA
+E6B7AC 9FC1
+E6B7AE 9FCC
+E6B7B1 905B
+E6B7B3 8F7E
+E6B7B5 95A3
+E6B7B7 8DAC
+E6B7B9 9FB9
+E6B7BA 9FC7
+E6B7BB 9359
+E6B885 90B4
+E6B887 8A89
+E6B888 8DCF
+E6B889 8FC2
+E6B88A 9FBB
+E6B88B 8F61
+E6B893 8C6B
+E6B895 9FBA
+E6B899 9FD0
+E6B89A 8F8D
+E6B89B 8CB8
+E6B89D 9FDF
+E6B89F 9FD9
+E6B8A0 8B94
+E6B8A1 936E
+E6B8A3 9FD4
+E6B8A4 9FDD
+E6B8A5 88AD
+E6B8A6 8951
+E6B8A9 89B7
+E6B8AB 9FD6
+E6B8AC 91AA
+E6B8AD 9FCD
+E6B8AE 9FCF
+E6B8AF 8D60
+E6B8B8 9FE0
+E6B8BA 9FDB
+E6B8BE 9FD3
+E6B983 9FDA
+E6B98A 96A9
+E6B98D 9FD8
+E6B98E 9FDC
+E6B996 8CCE
+E6B998 8FC3
+E6B99B 9258
+E6B99F 9FD2
+E6B9A7 974E
+E6B9AB 9FD5
+E6B9AE 9FCE
+E6B9AF 9392
+E6B9B2 9FD1
+E6B9B6 9FD7
+E6B9BE 9870
+E6B9BF 8EBC
+E6BA80 969E
+E6BA82 9FE1
+E6BA8C 94AC
+E6BA8F 9FED
+E6BA90 8CB9
+E6BA96 8F80
+E6BA98 9FE3
+E6BA9C 97AD
+E6BA9D 8D61
+E6BA9F 9FF0
+E6BAA2 88EC
+E6BAA5 9FEE
+E6BAAA 9FE2
+E6BAAF 9FE8
+E6BAB2 9FEA
+E6BAB6 976E
+E6BAB7 9FE5
+E6BABA 934D
+E6BABD 9FE7
+E6BB82 9FEF
+E6BB84 9FE9
+E6BB85 96C5
+E6BB89 9FE4
+E6BB8B 8EA0
+E6BB8C 9FFC
+E6BB91 8A8A
+E6BB93 9FE6
+E6BB94 9FEB
+E6BB95 9FEC
+E6BB9D 91EA
+E6BB9E 91D8
+E6BBAC 9FF4
+E6BBAF 9FFA
+E6BBB2 9FF8
+E6BBB4 9348
+E6BBB7 E042
+E6BBB8 9FF5
+E6BBBE 9FF6
+E6BBBF 9FDE
+E6BC81 8B99
+E6BC82 9559
+E6BC86 8EBD
+E6BC89 8D97
+E6BC8F 9852
+E6BC91 9FF2
+E6BC93 E041
+E6BC94 8989
+E6BC95 9186
+E6BCA0 9499
+E6BCA2 8ABF
+E6BCA3 97F8
+E6BCAB 969F
+E6BCAC 92D0
+E6BCB1 9FF9
+E6BCB2 9FFB
+E6BCB8 9151
+E6BCBE E040
+E6BCBF 9FF7
+E6BD81 9FF1
+E6BD85 8AC1
+E6BD94 8C89
+E6BD98 E04E
+E6BD9B E049
+E6BD9C 90F6
+E6BD9F 8A83
+E6BDA4 8F81
+E6BDA6 E052
+E6BDAD E04B
+E6BDAE 92AA
+E6BDAF E048
+E6BDB0 92D7
+E6BDB4 E06B
+E6BDB8 E045
+E6BDBA E044
+E6BDBC E04D
+E6BE80 E047
+E6BE81 E046
+E6BE82 E04C
+E6BE84 909F
+E6BE86 E043
+E6BE8E E04F
+E6BE91 E050
+E6BE97 8AC0
+E6BEA1 E055
+E6BEA3 E054
+E6BEA4 E056
+E6BEAA E059
+E6BEB1 9362
+E6BEB3 E053
+E6BEB9 E057
+E6BF80 8C83
+E6BF81 91F7
+E6BF82 E051
+E6BF83 945A
+E6BF86 E058
+E6BF94 E05D
+E6BF95 E05B
+E6BF98 E05E
+E6BF9B E061
+E6BF9F E05A
+E6BFA0 8D8A
+E6BFA1 9447
+E6BFA4 9FB7
+E6BFAB 9794
+E6BFAC E05C
+E6BFAE E060
+E6BFAF 91F3
+E6BFB1 E05F
+E6BFB3 E04A
+E6BFB6 E889
+E6BFBA E064
+E6BFBE E068
+E78081 E066
+E78089 E062
+E7808B E063
+E7808F E067
+E78091 E065
+E78095 956D
+E78098 E06D
+E7809A E06A
+E7809B E069
+E7809D E06C
+E7809E 93D2
+E7809F E06E
+E780A6 9295
+E780A7 91EB
+E780AC 90A3
+E780B0 E06F
+E780B2 E071
+E780BE E070
+E7818C 9FF3
+E78191 E072
+E78198 93E5
+E781A3 E073
+E781AB 89CE
+E781AF 9394
+E781B0 8A44
+E781B8 8B84
+E781BC 8EDC
+E781BD 8DD0
+E78289 9846
+E7828A 9086
+E7828E 898A
+E78292 E075
+E78299 E074
+E782AC E078
+E782AD 9259
+E782AE E07B
+E782AF E076
+E782B3 E07A
+E782B8 E079
+E782B9 935F
+E782BA 88D7
+E78388 97F3
+E7838B E07D
+E7838F 8947
+E78399 E080
+E7839D E07E
+E7839F E07C
+E783B1 E077
+E783B9 9642
+E783BD E082
+E78489 E081
+E78494 898B
+E78499 E084
+E7849A 95B0
+E7849C E083
+E784A1 96B3
+E784A6 8FC5
+E784B6 9152
+E784BC 8FC4
+E78589 97F9
+E7858C E08A
+E7858E 90F7
+E78595 E086
+E78596 E08B
+E78599 898C
+E785A2 E089
+E785A4 9481
+E785A5 E085
+E785A6 E088
+E785A7 8FC6
+E785A9 94CF
+E785AC E08C
+E785AE 8ECF
+E785BD 90F8
+E78684 E08F
+E78688 E087
+E7868A 8C46
+E7868F E08D
+E78694 976F
+E78695 E090
+E78699 EAA4
+E7869F 8F6E
+E786A8 E091
+E786AC E092
+E786B1 944D
+E786B9 E094
+E786BE E095
+E78783 9452
+E78788 9395
+E78789 E097
+E7878E E099
+E78790 97D3
+E78792 E096
+E78794 E098
+E78795 898D
+E78797 E093
+E7879F 9A7A
+E787A0 E09A
+E787A5 9187
+E787A6 8E57
+E787A7 E09C
+E787AC E09B
+E787AD 9043
+E787AE 99D7
+E787B5 E09D
+E787B9 E09F
+E787BB E08E
+E787BC E09E
+E787BF E0A0
+E78886 949A
+E7888D E0A1
+E78890 E0A2
+E7889B E0A3
+E788A8 E0A4
+E788AA 92DC
+E788AC E0A6
+E788AD E0A5
+E788B0 E0A7
+E788B2 E0A8
+E788B5 8EDD
+E788B6 9583
+E788BA 96EA
+E788BB E0A9
+E788BC E0AA
+E788BD 9175
+E788BE 8EA2
+E788BF E0AB
+E78980 E0AC
+E78986 E0AD
+E78987 95D0
+E78988 94C5
+E7898B E0AE
+E7898C 9476
+E78992 92AB
+E78998 E0AF
+E78999 89E5
+E7899B 8B8D
+E7899D 96C4
+E7899F 96B4
+E789A1 89B2
+E789A2 9853
+E789A7 9671
+E789A9 95A8
+E789B2 90B5
+E789B4 E0B0
+E789B9 93C1
+E789BD 8CA1
+E789BE E0B1
+E78A80 8DD2
+E78A81 E0B3
+E78A82 E0B2
+E78A87 E0B4
+E78A92 E0B5
+E78A96 E0B6
+E78AA0 8B5D
+E78AA2 E0B7
+E78AA7 E0B8
+E78AAC 8CA2
+E78AAF 94C6
+E78AB2 E0BA
+E78AB6 8FF3
+E78AB9 E0B9
+E78B82 8BB6
+E78B83 E0BB
+E78B84 E0BD
+E78B86 E0BC
+E78B8E E0BE
+E78B90 8CCF
+E78B92 E0BF
+E78B97 8BE7
+E78B99 915F
+E78B9B 8D9D
+E78BA0 E0C1
+E78BA1 E0C2
+E78BA2 E0C0
+E78BA9 8EEB
+E78BAC 93C6
+E78BAD 8BB7
+E78BB7 E0C4
+E78BB8 924B
+E78BB9 E0C3
+E78BBC 9854
+E78BBD 9482
+E78C8A E0C7
+E78C96 E0C9
+E78C97 E0C6
+E78C9B 96D2
+E78C9C E0C8
+E78C9D E0CA
+E78C9F 97C2
+E78CA5 E0CE
+E78CA9 E0CD
+E78CAA 9296
+E78CAB 944C
+E78CAE 8CA3
+E78CAF E0CC
+E78CB4 E0CB
+E78CB6 9750
+E78CB7 9751
+E78CBE E0CF
+E78CBF 898E
+E78D84 8D96
+E78D85 8E82
+E78D8E E0D0
+E78D8F E0D1
+E78D97 E0D3
+E78DA3 8F62
+E78DA8 E0D5
+E78DAA E0D4
+E78DB0 E0D6
+E78DB2 8A6C
+E78DB5 E0D8
+E78DB8 E0D7
+E78DBA E0DA
+E78DBB E0D9
+E78E84 8CBA
+E78E87 97A6
+E78E89 8BCA
+E78E8B 89A4
+E78E96 8BE8
+E78EA9 8ADF
+E78EB2 97E6
+E78EB3 E0DC
+E78EBB E0DE
+E78F80 E0DF
+E78F82 89CF
+E78F88 E0DB
+E78F8A 8E58
+E78F8D 92BF
+E78F8E E0DD
+E78F9E E0E2
+E78FA0 8EEC
+E78FA5 E0E0
+E78FAA 8C5D
+E78FAD 94C7
+E78FAE E0E1
+E78FB1 E0FC
+E78FB8 E0E7
+E78FBE 8CBB
+E79083 8B85
+E79085 E0E4
+E79086 979D
+E79089 97AE
+E790A2 91F4
+E790A5 E0E6
+E790B2 E0E8
+E790B3 97D4
+E790B4 8BD5
+E790B5 94FA
+E790B6 9469
+E790BA E0E9
+E790BF E0EB
+E79181 E0EE
+E79195 E0EA
+E79199 E0ED
+E7919A 8CE8
+E7919B 896C
+E7919C E0EF
+E7919E 9090
+E7919F E0EC
+E791A0 97DA
+E791A3 E0F2
+E791A4 EAA2
+E791A9 E0F0
+E791AA E0F3
+E791AF E0E5
+E791B0 E0F1
+E791B3 8DBA
+E791B6 E0F4
+E791BE E0F5
+E79283 979E
+E7928B E0F6
+E7929E E0F7
+E792A2 E0E3
+E792A7 E0F8
+E792B0 8AC2
+E792BD 8EA3
+E7938A E0F9
+E7938F E0FA
+E79394 E0FB
+E7939C 895A
+E793A0 E140
+E793A2 955A
+E793A3 E141
+E793A6 8AA2
+E793A7 E142
+E793A9 E143
+E793AE E144
+E793B0 E146
+E793B1 E147
+E793B2 E145
+E793B6 9572
+E793B7 E149
+E793B8 E148
+E79483 E14B
+E79484 E14A
+E79485 E14C
+E7948C E14D
+E7948D E14F
+E7948E E14E
+E79491 8D99
+E79493 E151
+E79495 E150
+E79498 8AC3
+E7949A 9072
+E7949C 935B
+E7949E E152
+E7949F 90B6
+E794A3 8E59
+E794A5 8999
+E794A6 E153
+E794A8 9770
+E794AB 95E1
+E794AC E154
+E794B0 9363
+E794B1 9752
+E794B2 8D62
+E794B3 905C
+E794B7 926A
+E794B8 99B2
+E794BA 92AC
+E794BB 89E6
+E794BC E155
+E79584 E156
+E79586 E15B
+E79589 E159
+E7958A E158
+E7958B 9DC0
+E7958C 8A45
+E7958D E157
+E7958F 88D8
+E79591 94A8
+E79594 94C8
+E79599 97AF
+E7959A E15C
+E7959B E15A
+E7959C 927B
+E7959D 90A4
+E795A0 94A9
+E795A2 954C
+E795A4 E15E
+E795A5 97AA
+E795A6 8C6C
+E795A7 E15F
+E795A9 E15D
+E795AA 94D4
+E795AB E160
+E795AD E161
+E795B0 88D9
+E795B3 8FF4
+E795B4 E166
+E795B6 E163
+E795B7 93EB
+E795B8 E162
+E795BF 8B45
+E79682 E169
+E79686 E164
+E79687 E165
+E79689 E168
+E7968A E167
+E7968B 9544
+E7968E 9161
+E7968F 9160
+E79691 8B5E
+E79694 E16A
+E7969A E16B
+E7969D E16C
+E796A3 E16E
+E796A5 E16D
+E796AB 8975
+E796B1 E176
+E796B2 94E6
+E796B3 E170
+E796B5 E172
+E796B8 E174
+E796B9 905D
+E796BC E175
+E796BD E173
+E796BE 8EBE
+E79782 E16F
+E79783 E171
+E79785 9561
+E79787 8FC7
+E7978A E178
+E7978D E177
+E79792 E179
+E79794 8EA4
+E79795 8DAD
+E79798 9397
+E79799 E17A
+E7979B 92C9
+E7979E E17C
+E797A2 979F
+E797A3 E17B
+E797A9 9189
+E797B0 E182
+E797B2 E184
+E797B3 E185
+E797B4 9273
+E797BA E183
+E797BC E180
+E797BE E17D
+E797BF E17E
+E79881 E181
+E79889 E188
+E7988B E186
+E7988D E187
+E7989F E189
+E798A0 E18B
+E798A1 E18C
+E798A2 E18D
+E798A4 E18E
+E798A7 E18A
+E798B0 E190
+E798B4 E18F
+E798BB E191
+E79982 97C3
+E79986 E194
+E79987 E192
+E79988 E193
+E7998C 8AE0
+E79992 96FC
+E79996 95C8
+E79998 E196
+E7999C E195
+E799A1 E197
+E799A2 E198
+E799A7 E19C
+E799A8 E199
+E799A9 E19A
+E799AA E19B
+E799AC E19D
+E799B0 E19E
+E799B2 E19F
+E799B6 E1A0
+E799B8 E1A1
+E799BA 94AD
+E799BB 936F
+E799BC E1A2
+E799BD 9492
+E799BE 9553
+E79A80 E1A3
+E79A83 E1A4
+E79A84 9349
+E79A86 8A46
+E79A87 8D63
+E79A88 E1A5
+E79A8B E1A6
+E79A8E E1A7
+E79A90 8E48
+E79A93 E1A9
+E79A96 E1A8
+E79A99 E1AA
+E79A9A E1AB
+E79AAE 94E7
+E79AB0 E1AC
+E79AB4 E1AD
+E79AB7 EA89
+E79AB8 E1AE
+E79AB9 E1AF
+E79ABA E1B0
+E79ABF 8E4D
+E79B82 E1B1
+E79B83 9475
+E79B86 967E
+E79B88 896D
+E79B8A 8976
+E79B8D E1B2
+E79B92 E1B4
+E79B96 E1B3
+E79B97 9390
+E79B9B 90B7
+E79B9C 9F58
+E79B9E E1B5
+E79B9F 96BF
+E79BA1 E1B6
+E79BA3 8AC4
+E79BA4 94D5
+E79BA5 E1B7
+E79BA7 E1B8
+E79BAA E1B9
+E79BAE 96DA
+E79BB2 96D3
+E79BB4 92BC
+E79BB8 918A
+E79BBB E1BB
+E79BBE 8F82
+E79C81 8FC8
+E79C84 E1BE
+E79C87 E1BD
+E79C88 E1BC
+E79C89 94FB
+E79C8B 8AC5
+E79C8C 8CA7
+E79C9B E1C4
+E79C9E E1C1
+E79C9F 905E
+E79CA0 96B0
+E79CA4 E1C0
+E79CA5 E1C2
+E79CA6 E1C3
+E79CA9 E1BF
+E79CB7 E1C5
+E79CB8 E1C6
+E79CBA 92AD
+E79CBC 8AE1
+E79D80 9285
+E79D87 E1C7
+E79D9A E1C8
+E79D9B E1CB
+E79DA1 9087
+E79DA3 93C2
+E79DA5 E1CC
+E79DA6 9672
+E79DA8 E1C9
+E79DAB E1CA
+E79DB9 E1CF
+E79DBE E1CE
+E79DBF E1CD
+E79E8B E1D1
+E79E8E E1D0
+E79E91 E1D2
+E79E9E E1D4
+E79EA0 E1D3
+E79EA5 95CB
+E79EAC 8F75
+E79EAD 97C4
+E79EB0 E1D5
+E79EB3 93B5
+E79EB6 E1D6
+E79EB9 E1D7
+E79EBB E1DB
+E79EBC E1D9
+E79EBD E1DA
+E79EBF E1D8
+E79F87 E1DC
+E79F8D E1DD
+E79F97 E1DE
+E79F9A E1DF
+E79F9B 96B5
+E79F9C E1E0
+E79FA2 96EE
+E79FA3 E1E1
+E79FA5 926D
+E79FA7 948A
+E79FA9 8BE9
+E79FAD 925A
+E79FAE E1E2
+E79FAF 8BB8
+E79FB3 90CE
+E79FBC E1E3
+E7A082 8DBB
+E7A08C E1E4
+E7A092 E1E5
+E7A094 8CA4
+E7A095 8DD3
+E7A0A0 E1E7
+E7A0A5 9375
+E7A0A6 8DD4
+E7A0A7 8B6D
+E7A0B2 9643
+E7A0B4 946A
+E7A0BA 9376
+E7A0BF 8D7B
+E7A185 E1E9
+E7A19D 8FC9
+E7A1AB 97B0
+E7A1AC 8D64
+E7A1AF 8CA5
+E7A1B2 94A1
+E7A1B4 E1EB
+E7A1BC E1ED
+E7A281 8CE9
+E7A286 E1EC
+E7A287 92F4
+E7A28C E1EF
+E7A28D 8A56
+E7A28E E1EA
+E7A291 94E8
+E7A293 894F
+E7A295 8DEA
+E7A297 9871
+E7A29A E1EE
+E7A2A3 E1F0
+E7A2A7 95C9
+E7A2A9 90D7
+E7A2AA E1F2
+E7A2AF E1F3
+E7A2B5 E1F1
+E7A2BA 8A6D
+E7A2BC E1F9
+E7A2BE E1F8
+E7A381 8EA5
+E7A385 E1FA
+E7A386 E1F5
+E7A38A E1FB
+E7A38B E1F6
+E7A390 94D6
+E7A391 E1F4
+E7A394 E1F7
+E7A39A E241
+E7A3A7 E240
+E7A3A8 9681
+E7A3AC E1FC
+E7A3AF 88E9
+E7A3B4 E243
+E7A3BD E242
+E7A481 8FCA
+E7A487 E244
+E7A48E 9162
+E7A491 E246
+E7A492 E245
+E7A499 E247
+E7A4A6 E1E6
+E7A4AA E1E8
+E7A4AB E249
+E7A4AC E248
+E7A4BA 8EA6
+E7A4BC 97E7
+E7A4BE 8ED0
+E7A580 E24A
+E7A581 8C56
+E7A587 8B5F
+E7A588 8B46
+E7A589 8E83
+E7A590 9753
+E7A593 E250
+E7A595 E24F
+E7A596 9163
+E7A597 E24C
+E7A59A E24E
+E7A59D 8F6A
+E7A59E 905F
+E7A59F E24D
+E7A5A0 E24B
+E7A5A2 9449
+E7A5A5 8FCB
+E7A5A8 955B
+E7A5AD 8DD5
+E7A5B7 9398
+E7A5BA E251
+E7A5BF E252
+E7A680 E268
+E7A681 8BD6
+E7A684 985C
+E7A685 9154
+E7A68A E253
+E7A68D 89D0
+E7A68E 92F5
+E7A68F 959F
+E7A69D E254
+E7A6A6 8B9A
+E7A6A7 E255
+E7A6AA E257
+E7A6AE E258
+E7A6B0 9448
+E7A6B3 E259
+E7A6B9 E25A
+E7A6BA E25B
+E7A6BD 8BD7
+E7A6BE 89D1
+E7A6BF 93C3
+E7A780 8F47
+E7A781 8E84
+E7A789 E25C
+E7A78B 8F48
+E7A791 89C8
+E7A792 9562
+E7A795 E25D
+E7A798 94E9
+E7A79F 9164
+E7A7A1 E260
+E7A7A3 E261
+E7A7A4 9489
+E7A7A6 9060
+E7A7A7 E25E
+E7A7A9 9281
+E7A7AC E25F
+E7A7B0 8FCC
+E7A7BB 88DA
+E7A880 8B48
+E7A888 E262
+E7A88B 92F6
+E7A88D E263
+E7A88E 90C5
+E7A894 96AB
+E7A897 9542
+E7A898 E264
+E7A899 E265
+E7A89A 9274
+E7A89C 97C5
+E7A89F E267
+E7A8A0 E266
+E7A8AE 8EED
+E7A8B1 E269
+E7A8B2 88EE
+E7A8B7 E26C
+E7A8BB E26A
+E7A8BC 89D2
+E7A8BD 8C6D
+E7A8BE E26B
+E7A8BF 8D65
+E7A980 8D92
+E7A982 95E4
+E7A983 E26D
+E7A986 9673
+E7A989 E26F
+E7A98D 90CF
+E7A98E 896E
+E7A98F 89B8
+E7A990 88AA
+E7A997 E26E
+E7A9A1 E270
+E7A9A2 E271
+E7A9A3 8FF5
+E7A9A9 E272
+E7A9AB 8A6E
+E7A9B0 E274
+E7A9B4 8C8A
+E7A9B6 8B86
+E7A9B9 E275
+E7A9BA 8BF3
+E7A9BD E276
+E7A9BF 90FA
+E7AA81 93CB
+E7AA83 90DE
+E7AA84 8DF3
+E7AA88 E277
+E7AA92 9282
+E7AA93 918B
+E7AA95 E279
+E7AA96 E27B
+E7AA97 E278
+E7AA98 E27A
+E7AA9F 8C41
+E7AAA9 E27C
+E7AAAA 8C45
+E7AAAE 8B87
+E7AAAF 9771
+E7AAB0 E27E
+E7AAB6 E280
+E7AABA 894D
+E7AABF E283
+E7AB83 8A96
+E7AB84 E282
+E7AB85 E281
+E7AB87 E285
+E7AB88 E27D
+E7AB8A E286
+E7AB8B 97A7
+E7AB8D E287
+E7AB8F E288
+E7AB92 9AF2
+E7AB93 E28A
+E7AB95 E289
+E7AB99 E28B
+E7AB9A E28C
+E7AB9C 97B3
+E7AB9D E28D
+E7AB9F E8ED
+E7ABA0 8FCD
+E7ABA1 E28E
+E7ABA2 E28F
+E7ABA3 8F76
+E7ABA5 93B6
+E7ABA6 E290
+E7ABAA 9247
+E7ABAD E291
+E7ABAF 925B
+E7ABB0 E292
+E7ABB6 8BA3
+E7ABB8 995E
+E7ABB9 927C
+E7ABBA 8EB1
+E7ABBF 8AC6
+E7AC82 E293
+E7AC84 E2A0
+E7AC86 E296
+E7AC88 8B88
+E7AC8A E295
+E7AC8B E2A2
+E7AC8F E294
+E7AC91 8FCE
+E7AC98 E298
+E7AC99 E299
+E7AC9B 934A
+E7AC9E E29A
+E7ACA0 8A7D
+E7ACA5 9079
+E7ACA6 9584
+E7ACA8 E29C
+E7ACAC 91E6
+E7ACB3 E297
+E7ACB5 E29B
+E7ACB6 E29D
+E7ACB9 8DF9
+E7AD85 E2A4
+E7AD86 954D
+E7AD88 94A4
+E7AD89 9399
+E7AD8B 8BD8
+E7AD8C E2A3
+E7AD8D E2A1
+E7AD8F 94B3
+E7AD90 E29E
+E7AD91 927D
+E7AD92 939B
+E7AD94 939A
+E7AD96 8DF4
+E7AD9D E2B6
+E7ADA5 E2A6
+E7ADA7 E2A8
+E7ADAC E2AB
+E7ADAE E2AC
+E7ADB0 E2A9
+E7ADB1 E2AA
+E7ADB4 E2A7
+E7ADB5 E2A5
+E7ADBA E29F
+E7AE86 95CD
+E7AE87 89D3
+E7AE8B E2B3
+E7AE8D E2B0
+E7AE8F E2B5
+E7AE92 E2B4
+E7AE94 9493
+E7AE95 96A5
+E7AE97 8E5A
+E7AE98 E2AE
+E7AE99 E2B7
+E7AE9A E2B2
+E7AE9C E2B1
+E7AE9D E2AD
+E7AE9F E2AF
+E7AEA1 8AC7
+E7AEAA 925C
+E7AEAD 90FB
+E7AEB1 94A0
+E7AEB4 E2BC
+E7AEB8 94A2
+E7AF80 90DF
+E7AF81 E2B9
+E7AF84 94CD
+E7AF86 E2BD
+E7AF87 95D1
+E7AF89 927A
+E7AF8B E2B8
+E7AF8C E2BA
+E7AF8F E2BB
+E7AF9D E2BE
+E7AFA0 8EC2
+E7AFA4 93C4
+E7AFA5 E2C3
+E7AFA6 E2C2
+E7AFA9 E2BF
+E7AFAD 9855
+E7AFB3 E2C8
+E7AFB6 E2CC
+E7AFB7 E2C9
+E7B080 E2C5
+E7B087 E2C6
+E7B08D E2CB
+E7B091 E2C0
+E7B092 99D3
+E7B093 E2C7
+E7B094 E2C1
+E7B097 E2CA
+E7B09F E2D0
+E7B0A1 8AC8
+E7B0A3 E2CD
+E7B0A7 E2CE
+E7B0AA E2CF
+E7B0AB E2D2
+E7B0B7 E2D1
+E7B0B8 94F4
+E7B0BD E2D3
+E7B0BE 97FA
+E7B0BF 95EB
+E7B180 E2D8
+E7B183 E2D5
+E7B18C E2D4
+E7B18D 90D0
+E7B18F E2D7
+E7B190 E2D9
+E7B194 E2D6
+E7B196 E2DD
+E7B198 E2DA
+E7B19F E2DB
+E7B1A0 E2C4
+E7B1A4 E2DC
+E7B1A5 E2DE
+E7B1AC E2DF
+E7B1B3 95C4
+E7B1B5 E2E0
+E7B1BE 96E0
+E7B281 8BCC
+E7B282 8C48
+E7B283 E2E1
+E7B289 95B2
+E7B28B 9088
+E7B28D 96AE
+E7B290 E2E2
+E7B292 97B1
+E7B295 9494
+E7B297 9165
+E7B298 9453
+E7B29B 8F6C
+E7B29F 88BE
+E7B2A1 E2E7
+E7B2A2 E2E5
+E7B2A4 E2E3
+E7B2A5 8A9F
+E7B2A7 8FCF
+E7B2A8 E2E8
+E7B2AB E2E6
+E7B2AD E2E4
+E7B2AE E2EC
+E7B2B1 E2EB
+E7B2B2 E2EA
+E7B2B3 E2E9
+E7B2B9 E2ED
+E7B2BD E2EE
+E7B2BE 90B8
+E7B380 E2EF
+E7B382 E2F1
+E7B385 E2F0
+E7B38A 8CD0
+E7B38E 9157
+E7B392 E2F3
+E7B396 939C
+E7B398 E2F2
+E7B39C E2F4
+E7B39E 95B3
+E7B39F 918C
+E7B3A0 8D66
+E7B3A2 E2F5
+E7B3A7 97C6
+E7B3AF E2F7
+E7B3B2 E2F8
+E7B3B4 E2F9
+E7B3B6 E2FA
+E7B3B8 8E85
+E7B3BA E2FB
+E7B3BB 8C6E
+E7B3BE 8B8A
+E7B480 8B49
+E7B482 E340
+E7B484 96F1
+E7B485 8D67
+E7B486 E2FC
+E7B48A E343
+E7B48B 96E4
+E7B48D 945B
+E7B490 9552
+E7B494 8F83
+E7B495 E342
+E7B497 8ED1
+E7B498 8D68
+E7B499 8E86
+E7B49A 8B89
+E7B49B 95B4
+E7B49C E341
+E7B4A0 9166
+E7B4A1 9661
+E7B4A2 8DF5
+E7B4AB 8E87
+E7B4AC 92DB
+E7B4AE E346
+E7B4AF 97DD
+E7B4B0 8DD7
+E7B4B2 E347
+E7B4B3 9061
+E7B4B5 E349
+E7B4B9 8FD0
+E7B4BA 8DAE
+E7B4BF E348
+E7B582 8F49
+E7B583 8CBC
+E7B584 9167
+E7B585 E344
+E7B586 E34A
+E7B58B E345
+E7B58C 8C6F
+E7B58E E34D
+E7B58F E351
+E7B590 8C8B
+E7B596 E34C
+E7B59B E355
+E7B59E 8D69
+E7B5A1 978D
+E7B5A2 88BA
+E7B5A3 E352
+E7B5A6 8B8B
+E7B5A8 E34F
+E7B5AE E350
+E7B5B1 939D
+E7B5B2 E34E
+E7B5B3 E34B
+E7B5B5 8A47
+E7B5B6 90E2
+E7B5B9 8CA6
+E7B5BD E357
+E7B689 E354
+E7B68F E356
+E7B693 E353
+E7B699 8C70
+E7B69A 91B1
+E7B69B E358
+E7B69C 918E
+E7B69F E365
+E7B6A2 E361
+E7B6A3 E35B
+E7B6AB E35F
+E7B6AC 8EF8
+E7B6AD 88DB
+E7B6AE E35A
+E7B6AF E362
+E7B6B0 E366
+E7B6B1 8D6A
+E7B6B2 96D4
+E7B6B4 92D4
+E7B6B5 E35C
+E7B6B8 E364
+E7B6BA E359
+E7B6BB 925D
+E7B6BD E35E
+E7B6BE 88BB
+E7B6BF 96C8
+E7B787 E35D
+E7B78A 8BD9
+E7B78B 94EA
+E7B78F 918D
+E7B791 97CE
+E7B792 8F8F
+E7B795 E38E
+E7B798 E367
+E7B79A 90FC
+E7B79C E363
+E7B79D E368
+E7B79E E36A
+E7B7A0 92F7
+E7B7A1 E36D
+E7B7A4 E369
+E7B7A8 95D2
+E7B7A9 8AC9
+E7B7AC 96C9
+E7B7AF 88DC
+E7B7B2 E36C
+E7B7B4 97FB
+E7B7BB E36B
+E7B881 898F
+E7B884 93EA
+E7B885 E36E
+E7B889 E375
+E7B88A E36F
+E7B88B E376
+E7B892 E372
+E7B89B 949B
+E7B89E 8EC8
+E7B89F E374
+E7B8A1 E371
+E7B8A2 E377
+E7B8A3 E370
+E7B8A6 8F63
+E7B8AB 9644
+E7B8AE 8F6B
+E7B8B1 E373
+E7B8B2 E380
+E7B8B5 E37B
+E7B8B7 E37E
+E7B8B9 E37C
+E7B8BA E381
+E7B8BB E37A
+E7B8BD E360
+E7B8BE 90D1
+E7B981 94C9
+E7B983 E37D
+E7B986 E378
+E7B98A 9140
+E7B98B 8C71
+E7B98D 8F4A
+E7B994 9044
+E7B995 9155
+E7B996 E384
+E7B999 E386
+E7B99A E387
+E7B99D E383
+E7B99E E385
+E7B9A6 E379
+E7B9A7 E382
+E7B9A9 E38A
+E7B9AA E389
+E7B9AD 969A
+E7B9B0 8C4A
+E7B9B9 E388
+E7B9BB E38C
+E7B9BC E38B
+E7B9BD E38F
+E7B9BF E391
+E7BA82 8E5B
+E7BA83 E38D
+E7BA88 E392
+E7BA89 E393
+E7BA8C E394
+E7BA8E E39A
+E7BA8F 935A
+E7BA90 E396
+E7BA92 E395
+E7BA93 E397
+E7BA94 E398
+E7BA96 E399
+E7BA9B E39B
+E7BA9C E39C
+E7BCB6 8ACA
+E7BCB8 E39D
+E7BCBA E39E
+E7BD85 E39F
+E7BD8C E3A0
+E7BD8D E3A1
+E7BD8E E3A2
+E7BD90 E3A3
+E7BD91 E3A4
+E7BD94 E3A6
+E7BD95 E3A5
+E7BD98 E3A7
+E7BD9F E3A8
+E7BDA0 E3A9
+E7BDA7 E3AC
+E7BDA8 E3AA
+E7BDA9 E3AB
+E7BDAA 8DDF
+E7BDAB 8C72
+E7BDAE 9275
+E7BDB0 94B1
+E7BDB2 8F90
+E7BDB5 946C
+E7BDB7 94EB
+E7BDB8 E3AD
+E7BDB9 9CEB
+E7BE82 E3AE
+E7BE83 E3B0
+E7BE85 9785
+E7BE86 E3AF
+E7BE87 E3B2
+E7BE88 E3B1
+E7BE8A 9772
+E7BE8C E3B3
+E7BE8E 94FC
+E7BE94 E3B4
+E7BE9A E3B7
+E7BE9D E3B6
+E7BE9E E3B5
+E7BEA3 E3B8
+E7BEA4 8C51
+E7BEA8 9141
+E7BEA9 8B60
+E7BEAE E3BC
+E7BEAF E3B9
+E7BEB2 E3BA
+E7BEB6 E3BD
+E7BEB8 E3BE
+E7BEB9 E3BB
+E7BEBD 8948
+E7BF81 89A5
+E7BF85 E3C0
+E7BF86 E3C1
+E7BF8A E3C2
+E7BF8C 9782
+E7BF92 8F4B
+E7BF94 E3C4
+E7BF95 E3C3
+E7BFA0 9089
+E7BFA1 E3C5
+E7BFA6 E3C6
+E7BFA9 E3C7
+E7BFAB 8AE3
+E7BFB0 8ACB
+E7BFB3 E3C8
+E7BFB9 E3C9
+E7BFBB 967C
+E7BFBC 9783
+E88080 9773
+E88081 9856
+E88083 8D6C
+E88084 E3CC
+E88085 8ED2
+E88086 E3CB
+E8808B E3CD
+E8808C 8EA7
+E88090 91CF
+E88092 E3CE
+E88095 8D6B
+E88097 96D5
+E88098 E3CF
+E88099 E3D0
+E8809C E3D1
+E880A1 E3D2
+E880A8 E3D3
+E880B3 8EA8
+E880B6 96EB
+E880BB E3D5
+E880BD 925E
+E880BF E3D4
+E88186 E3D7
+E8818A E3D6
+E88192 E3D8
+E88196 90B9
+E88198 E3D9
+E8819A E3DA
+E8819E 95B7
+E8819F E3DB
+E881A1 918F
+E881A2 E3DC
+E881A8 E3DD
+E881AF 97FC
+E881B0 E3E0
+E881B2 E3DF
+E881B3 E3DE
+E881B4 92AE
+E881B6 E3E1
+E881B7 9045
+E881B9 E3E2
+E881BD E3E3
+E881BE 9857
+E881BF E3E4
+E88284 E3E5
+E88285 E3E7
+E88286 E3E6
+E88287 94A3
+E88289 93F7
+E8828B 985D
+E8828C 94A7
+E88293 E3E9
+E88296 8FD1
+E88298 9549
+E8829A E3EA
+E8829B E3E8
+E8829D 8ACC
+E882A1 8CD2
+E882A2 8E88
+E882A5 94EC
+E882A9 8CA8
+E882AA 9662
+E882AC E3ED
+E882AD E3EB
+E882AF 8D6D
+E882B1 8D6E
+E882B2 88E7
+E882B4 8DE6
+E882BA 9478
+E88383 88DD
+E88384 E3F2
+E88386 925F
+E8838C 9477
+E8838E 91D9
+E88396 E3F4
+E88399 E3F0
+E8839A E3F3
+E8839B E3EE
+E8839D E3F1
+E8839E 9645
+E883A1 8CD3
+E883A4 88FB
+E883A5 E3EF
+E883AF E3F6
+E883B1 E3F7
+E883B4 93B7
+E883B8 8BB9
+E883BC E445
+E883BD 945C
+E88482 8E89
+E88485 8BBA
+E88486 90C6
+E88487 9865
+E88488 96AC
+E88489 E3F5
+E8848A 90D2
+E8849A 8B72
+E8849B E3F8
+E884A3 E3FA
+E884A9 E3F9
+E884AF E3FB
+E884B1 9245
+E884B3 945D
+E884B9 92AF
+E884BE E442
+E88586 E441
+E8858B E3FC
+E8858E 9074
+E88590 9585
+E88591 E444
+E88593 E443
+E88594 8D6F
+E88595 9872
+E8859F E454
+E885A5 E448
+E885A6 E449
+E885AB 8EEE
+E885AE E447
+E885B0 8D98
+E885B1 E446
+E885B4 E44A
+E885B8 92B0
+E885B9 95A0
+E885BA 9142
+E885BF 91DA
+E88680 E44E
+E88682 E44F
+E88683 E44B
+E88688 E44C
+E8868A E44D
+E8868F 8D70
+E88693 E455
+E88695 E451
+E8869A 9586
+E8869C 968C
+E8869D 9547
+E886A0 E450
+E886A3 E453
+E886A4 E452
+E886A8 9663
+E886A9 E456
+E886B0 E457
+E886B3 9156
+E886B5 E458
+E886B8 E45A
+E886BA E45E
+E886BD E45B
+E886BE E459
+E886BF 945E
+E88780 E45C
+E88782 E45D
+E88786 89B0
+E88788 E464
+E88789 E45F
+E8878D E460
+E88791 E461
+E88793 919F
+E88798 E463
+E88799 E462
+E8879A E465
+E8879F E466
+E887A0 E467
+E887A3 9062
+E887A5 89E7
+E887A7 E468
+E887A8 97D5
+E887AA 8EA9
+E887AD 8F4C
+E887B3 8E8A
+E887B4 9276
+E887BA E469
+E887BB E46A
+E887BC 8950
+E887BE E46B
+E88881 E46C
+E88882 E46D
+E88885 E46E
+E88887 E46F
+E88888 8BBB
+E88889 9DA8
+E8888A E470
+E8888C 90E3
+E8888D E471
+E8888E 8EC9
+E88890 E472
+E88892 98AE
+E88896 E473
+E88897 95DC
+E88898 8ADA
+E8889B 9143
+E8889C 8F77
+E8889E 9591
+E8889F 8F4D
+E888A9 E474
+E888AA 8D71
+E888AB E475
+E888AC 94CA
+E888AE E484
+E888B3 E477
+E888B5 91C7
+E888B6 9495
+E888B7 8CBD
+E888B8 E476
+E888B9 9144
+E88980 E478
+E88987 92F8
+E88998 E47A
+E88999 E479
+E8899A E47C
+E8899D E47B
+E8899F E47D
+E889A2 E480
+E889A4 E47E
+E889A6 8ACD
+E889A8 E481
+E889AA E482
+E889AB E483
+E889AE 8DAF
+E889AF 97C7
+E889B1 E485
+E889B2 9046
+E889B6 8990
+E889B7 E486
+E889B8 E487
+E889BE E488
+E88A8B 88F0
+E88A8D E489
+E88A92 E48A
+E88A99 9587
+E88A9D 8EC5
+E88A9F E48C
+E88AA5 8A48
+E88AA6 88B0
+E88AAB E48B
+E88AAC E48E
+E88AAD 946D
+E88AAF 9063
+E88AB1 89D4
+E88AB3 9646
+E88AB8 8C7C
+E88AB9 8BDA
+E88ABB E48D
+E88ABD 89E8
+E88B85 8AA1
+E88B91 8991
+E88B92 E492
+E88B93 97E8
+E88B94 91DB
+E88B97 9563
+E88B99 E49E
+E88B9B 89D5
+E88B9C E49C
+E88B9E E49A
+E88B9F E491
+E88BA1 E48F
+E88BA3 E490
+E88BA5 8EE1
+E88BA6 8BEA
+E88BA7 9297
+E88BAB 93CF
+E88BB1 8970
+E88BB3 E494
+E88BB4 E493
+E88BB9 E499
+E88BBA E495
+E88BBB E498
+E88C82 96CE
+E88C83 E497
+E88C84 89D6
+E88C85 8A9D
+E88C86 E49B
+E88C89 E49D
+E88C8E 8C73
+E88C96 E4A1
+E88C97 E4AA
+E88C98 E4AB
+E88C9C 88A9
+E88CA3 E4B2
+E88CA8 88EF
+E88CAB E4A9
+E88CAF E4A8
+E88CB1 E4A3
+E88CB2 E4A2
+E88CB4 E4A0
+E88CB5 E49F
+E88CB6 9283
+E88CB8 91F9
+E88CB9 E4A5
+E88D80 E4A4
+E88D85 E4A7
+E88D89 9190
+E88D8A 8C74
+E88D8F 8960
+E88D90 E4A6
+E88D92 8D72
+E88D98 9191
+E88DB3 E4B8
+E88DB5 E4B9
+E88DB7 89D7
+E88DBB 89AC
+E88DBC E4B6
+E88E85 E4AC
+E88E87 E4B4
+E88E89 E4BB
+E88E8A E4B5
+E88E8E E4B3
+E88E93 E496
+E88E96 E4B1
+E88E9A E4AD
+E88E9E 8ACE
+E88E9F E4AF
+E88EA0 E4BA
+E88EA2 E4B0
+E88EA8 E4BC
+E88EAA E4AE
+E88EAB 949C
+E88EB1 9789
+E88EB5 E4B7
+E88EBD E4CD
+E88F81 E4C5
+E88F85 909B
+E88F8A 8B65
+E88F8C 8BDB
+E88F8E E4C0
+E88F93 89D9
+E88F96 8FD2
+E88F98 E4C3
+E88F9C 8DD8
+E88F9F 9370
+E88FA0 E4C8
+E88FA9 95EC
+E88FAB E4BF
+E88FAF 89D8
+E88FB0 8CD4
+E88FB1 9548
+E88FB2 E4C9
+E88FB4 E4BD
+E88FB7 E4C6
+E88FBB E4D0
+E88FBD E4C1
+E89083 E4C2
+E89084 93B8
+E89087 E4C7
+E8908B E4C4
+E8908C 9647
+E8908D E4CA
+E8908E 88DE
+E89093 E4BE
+E890A0 E4CC
+E890A2 E4CB
+E890A9 948B
+E890AA E4D2
+E890AC E4DD
+E890B1 8A9E
+E890B5 E4E0
+E890B8 E4CE
+E890BC E4D3
+E890BD 978E
+E89186 E4DC
+E89189 9774
+E8918E 97A8
+E89197 9298
+E8919B 8A8B
+E891A1 9592
+E891A2 E4E2
+E891A3 939F
+E891A6 88AF
+E891A9 E4DB
+E891AB E4D7
+E891AC 9192
+E891AD E4D1
+E891AE E4D9
+E891AF E4DE
+E891B1 944B
+E891B5 88A8
+E891B7 E4D6
+E891B9 E4DF
+E891BA 9598
+E89282 E4DA
+E89284 E4D5
+E8928B 8FD3
+E89290 8F4E
+E89294 8EAA
+E89299 96D6
+E8929C 9566
+E8929F E4E5
+E892A1 E4EE
+E892AD E4D8
+E892B2 8A97
+E892B8 8FF6
+E892B9 E4E3
+E892BB E4E8
+E892BC 9193
+E892BF E4E4
+E89381 E4EB
+E89384 927E
+E89386 E4EC
+E89389 9775
+E8938A E4E1
+E8938B 8A57
+E8938D E4E7
+E89390 E4EA
+E89391 96AA
+E89396 E4ED
+E89399 E4E6
+E8939A E4E9
+E893AC 9648
+E893AE 9840
+E893B4 E4F1
+E893BC E4F8
+E893BF E4F0
+E89480 8EC1
+E89486 E4CF
+E89491 95CC
+E89493 96A0
+E89494 E4F7
+E89495 E4F6
+E89497 E4F2
+E89498 E4F3
+E8949A 8955
+E8949F E4F5
+E894A1 E4EF
+E894A6 92D3
+E894AC E4F4
+E894AD 88FC
+E894B5 91A0
+E894BD 95C1
+E89580 E4F9
+E89581 E540
+E89583 94D7
+E89588 E4FC
+E89589 8FD4
+E8958A 8EC7
+E8958B E542
+E8958E 8BBC
+E89595 E543
+E89597 9599
+E89598 E4FB
+E8959A E4D4
+E895A3 E4FA
+E895A8 986E
+E895A9 93A0
+E895AA 9593
+E895AD E54A
+E895B7 E550
+E895BE E551
+E89680 E544
+E89684 9496
+E89687 E54E
+E89688 E546
+E8968A E548
+E89690 E552
+E89691 E547
+E89694 E54B
+E89697 8992
+E89699 93E3
+E8969B E54C
+E8969C E54F
+E896A4 E545
+E896A6 9145
+E896A8 E549
+E896A9 8E46
+E896AA 9064
+E896AB 8C4F
+E896AC 96F2
+E896AE 96F7
+E896AF 8F92
+E896B9 E556
+E896BA E554
+E89781 986D
+E89789 E553
+E8978D 9795
+E8978F E555
+E89790 E557
+E89795 E558
+E8979C E55B
+E8979D E559
+E897A4 93A1
+E897A5 E55A
+E897A9 94CB
+E897AA E54D
+E897B7 8F93
+E897B9 E55C
+E897BA E561
+E897BB 9194
+E897BE E560
+E89882 E541
+E89886 E562
+E89887 9168
+E8988A E55D
+E8988B E55F
+E89893 E55E
+E89896 9F50
+E89897 9F41
+E8989A E564
+E898A2 E563
+E898AD 9796
+E898AF E1BA
+E898B0 E565
+E898BF E566
+E8998D E567
+E8998E 8CD5
+E89990 8B73
+E89994 E569
+E89995 997C
+E8999A 8B95
+E8999C 97B8
+E8999E 8BF1
+E8999F E56A
+E899A7 E56B
+E899AB 928E
+E899B1 E56C
+E899B9 93F8
+E899BB 88B8
+E89A8A 89E1
+E89A8B E571
+E89A8C E572
+E89A93 E56D
+E89A95 8E5C
+E89AA3 E56E
+E89AA4 9461
+E89AA9 E56F
+E89AAA E570
+E89AAB E57A
+E89AAF E574
+E89AB0 E577
+E89AB6 E573
+E89B84 E575
+E89B86 E576
+E89B87 8ED6
+E89B89 E578
+E89B8B 9260
+E89B8D 8C75
+E89B8E 8A61
+E89B94 E57B
+E89B99 8A5E
+E89B9B E581
+E89B9E E57C
+E89B9F E580
+E89BA4 94B8
+E89BA9 E57D
+E89BAC E57E
+E89BAD 9567
+E89BAE 94D8
+E89BAF E582
+E89BB8 91FB
+E89BB9 E58C
+E89BBB E588
+E89BBE 89E9
+E89C80 E586
+E89C82 9649
+E89C83 E587
+E89C86 E584
+E89C88 E585
+E89C89 E58A
+E89C8A E58D
+E89C8D E58B
+E89C91 E589
+E89C92 E583
+E89C98 9277
+E89C9A E594
+E89C9C 96A8
+E89CA5 E592
+E89CA9 E593
+E89CB4 E58E
+E89CB7 E590
+E89CBB E591
+E89CBF E58F
+E89D89 90E4
+E89D8B 9858
+E89D8C E598
+E89D8E E599
+E89D93 E59F
+E89D95 9049
+E89D97 E59B
+E89D99 E59E
+E89D9F E596
+E89DA0 E595
+E89DA3 E5A0
+E89DA6 89DA
+E89DA8 E59C
+E89DAA E5A1
+E89DAE E59D
+E89DB4 E59A
+E89DB6 92B1
+E89DB8 E597
+E89DBF 9488
+E89E82 E5A5
+E89E8D 975A
+E89E9F E5A4
+E89EA2 E5A3
+E89EAB E5AC
+E89EAF E5A6
+E89EB3 E5AE
+E89EBA 9786
+E89EBB E5B1
+E89EBD E5A8
+E89F80 E5A9
+E89F84 E5AD
+E89F86 E5B0
+E89F87 E5AF
+E89F8B E5A7
+E89F90 E5AA
+E89F92 E5BB
+E89FA0 E5B4
+E89FAF E5B2
+E89FB2 E5B3
+E89FB6 E5B8
+E89FB7 E5B9
+E89FB9 8A49
+E89FBB 8B61
+E89FBE E5B7
+E8A085 E5A2
+E8A08D E5B6
+E8A08E E5BA
+E8A08F E5B5
+E8A091 E5BC
+E8A095 E5BE
+E8A096 E5BD
+E8A0A1 E5C0
+E8A0A2 E5BF
+E8A0A3 E579
+E8A0A7 E5C4
+E8A0B1 E5C1
+E8A0B6 E5C2
+E8A0B9 E5C3
+E8A0BB E5C5
+E8A180 8C8C
+E8A182 E5C7
+E8A184 E5C6
+E8A186 8F4F
+E8A18C 8D73
+E8A18D 9FA5
+E8A192 E5C8
+E8A193 8F70
+E8A197 8A58
+E8A199 E5C9
+E8A19B 8971
+E8A19D 8FD5
+E8A19E E5CA
+E8A1A1 8D74
+E8A1A2 E5CB
+E8A1A3 88DF
+E8A1A8 955C
+E8A1AB E5CC
+E8A1B0 908A
+E8A1B2 E5D3
+E8A1B5 E5D0
+E8A1B7 928F
+E8A1BD E5D1
+E8A1BE E5CE
+E8A1BF 8BDC
+E8A281 E5CD
+E8A282 E5D4
+E8A288 8C55
+E8A28B 91DC
+E8A28D E5DA
+E8A292 E5D6
+E8A296 91B3
+E8A297 E5D5
+E8A299 E5D8
+E8A29E E5CF
+E8A2A2 E5D9
+E8A2A4 E5DB
+E8A2AB 94ED
+E8A2AE E5D7
+E8A2B0 E5DC
+E8A2B1 E5DE
+E8A2B4 8CD1
+E8A2B5 E5D2
+E8A2B7 88BF
+E8A2BF E5DD
+E8A381 8DD9
+E8A382 97F4
+E8A383 E5DF
+E8A384 E5E0
+E8A385 9195
+E8A38F 97A0
+E8A394 E5E1
+E8A395 9754
+E8A398 E5E2
+E8A399 E5E3
+E8A39C 95E2
+E8A39D E5E4
+E8A39F 8DBE
+E8A3A1 97A1
+E8A3A8 E5E9
+E8A3B2 E5EA
+E8A3B3 8FD6
+E8A3B4 E5E8
+E8A3B8 9787
+E8A3B9 E5E5
+E8A3BC E5E7
+E8A3BD 90BB
+E8A3BE 909E
+E8A482 E5E6
+E8A484 E5EB
+E8A487 95A1
+E8A48A E5ED
+E8A48C E5EC
+E8A490 8A8C
+E8A492 964A
+E8A493 E5EE
+E8A49D E5FA
+E8A49E E5F0
+E8A4A5 E5F1
+E8A4AA E5F2
+E8A4AB E5F3
+E8A4B6 E5F7
+E8A4B8 E5F8
+E8A4BB E5F6
+E8A581 E5F4
+E8A583 E5EF
+E8A584 E5F5
+E8A58C E5F9
+E8A58D E8B5
+E8A596 89A6
+E8A59E E5FC
+E8A59F 8BDD
+E8A5A0 E5FB
+E8A5A4 E641
+E8A5A6 E640
+E8A5AA E643
+E8A5AD E642
+E8A5AF E644
+E8A5B2 8F50
+E8A5B4 E645
+E8A5B7 E646
+E8A5BE E647
+E8A5BF 90BC
+E8A681 9776
+E8A683 E648
+E8A686 95A2
+E8A687 9465
+E8A688 E649
+E8A68A E64A
+E8A68B 8CA9
+E8A68F 8B4B
+E8A693 E64B
+E8A696 8E8B
+E8A697 9460
+E8A698 E64C
+E8A69A 8A6F
+E8A6A1 E64D
+E8A6A6 E64F
+E8A6A7 9797
+E8A6A9 E64E
+E8A6AA 9065
+E8A6AC E650
+E8A6AF E651
+E8A6B2 E652
+E8A6B3 8ACF
+E8A6BA E653
+E8A6BD E654
+E8A6BF E655
+E8A780 E656
+E8A792 8A70
+E8A79A E657
+E8A79C E658
+E8A79D E659
+E8A7A3 89F0
+E8A7A6 9047
+E8A7A7 E65A
+E8A7B4 E65B
+E8A7B8 E65C
+E8A880 8CBE
+E8A882 92F9
+E8A883 E65D
+E8A888 8C76
+E8A88A 9075
+E8A88C E660
+E8A88E 93A2
+E8A890 E65F
+E8A893 8C50
+E8A896 E65E
+E8A897 91F5
+E8A898 8B4C
+E8A89B E661
+E8A89D E662
+E8A89F 8FD7
+E8A8A3 8C8D
+E8A8A5 E663
+E8A8AA 964B
+E8A8AD 90DD
+E8A8B1 8B96
+E8A8B3 96F3
+E8A8B4 9169
+E8A8B6 E664
+E8A8BA 9066
+E8A8BB 9290
+E8A8BC 8FD8
+E8A981 E665
+E8A986 E668
+E8A988 E669
+E8A990 8DBC
+E8A991 91C0
+E8A992 E667
+E8A994 8FD9
+E8A995 955D
+E8A99B E666
+E8A99E 8E8C
+E8A9A0 8972
+E8A9A2 E66D
+E8A9A3 8C77
+E8A9A6 8E8E
+E8A9A9 8E8D
+E8A9AB 986C
+E8A9AC E66C
+E8A9AD E66B
+E8A9AE 9146
+E8A9B0 8B6C
+E8A9B1 9862
+E8A9B2 8A59
+E8A9B3 8FDA
+E8A9BC E66A
+E8AA82 E66F
+E8AA84 E670
+E8AA85 E66E
+E8AA87 8CD6
+E8AA89 975F
+E8AA8C 8E8F
+E8AA8D 9446
+E8AA91 E673
+E8AA93 90BE
+E8AA95 9261
+E8AA98 9755
+E8AA9A E676
+E8AA9E 8CEA
+E8AAA0 90BD
+E8AAA1 E672
+E8AAA3 E677
+E8AAA4 8CEB
+E8AAA5 E674
+E8AAA6 E675
+E8AAA8 E671
+E8AAAC 90E0
+E8AAAD 93C7
+E8AAB0 924E
+E8AAB2 89DB
+E8AAB9 94EE
+E8AABC 8B62
+E8AABF 92B2
+E8AB82 E67A
+E8AB84 E678
+E8AB87 926B
+E8AB8B 90BF
+E8AB8C 8AD0
+E8AB8D E679
+E8AB8F 907A
+E8AB92 97C8
+E8AB96 985F
+E8AB9A E67B
+E8AB9B E687
+E8AB9C 92B3
+E8AB9E E686
+E8ABA0 E683
+E8ABA1 E68B
+E8ABA2 E684
+E8ABA4 E680
+E8ABA6 92FA
+E8ABA7 E67E
+E8ABAB E67C
+E8ABAD 9740
+E8ABAE 8E90
+E8ABB1 E681
+E8ABB3 E67D
+E8ABB7 E685
+E8ABB8 8F94
+E8ABBA 8CBF
+E8ABBE 91F8
+E8AC80 9664
+E8AC81 8979
+E8AC82 88E0
+E8AC84 93A3
+E8AC87 E689
+E8AC8C E688
+E8AC8E 93E4
+E8AC90 E68D
+E8AC94 E682
+E8AC96 E68C
+E8AC97 E68E
+E8AC99 8CAA
+E8AC9A E68A
+E8AC9B 8D75
+E8AC9D 8ED3
+E8ACA0 E68F
+E8ACA1 9777
+E8ACA6 E692
+E8ACA8 E695
+E8ACAB E693
+E8ACAC 9554
+E8ACB3 E690
+E8ACB9 8BDE
+E8ACBE E694
+E8AD81 E696
+E8AD89 E69A
+E8AD8C E697
+E8AD8E E699
+E8AD8F E698
+E8AD96 E69B
+E8AD98 8EAF
+E8AD9A E69D
+E8AD9B E69C
+E8AD9C 9588
+E8AD9F E69F
+E8ADA6 8C78
+E8ADAB E69E
+E8ADAC E6A0
+E8ADAF E6A1
+E8ADB0 8B63
+E8ADB1 E3BF
+E8ADB2 8FF7
+E8ADB4 E6A2
+E8ADB7 8CEC
+E8ADBD E6A3
+E8AE80 E6A4
+E8AE83 8E5D
+E8AE8A 9DCC
+E8AE8C E6A5
+E8AE8E E6A6
+E8AE90 8F51
+E8AE92 E6A7
+E8AE93 E6A8
+E8AE96 E6A9
+E8AE99 E6AA
+E8AE9A E6AB
+E8B0B7 924A
+E8B0BA E6AC
+E8B0BF E6AE
+E8B181 E6AD
+E8B186 93A4
+E8B188 E6AF
+E8B18A 964C
+E8B18C E6B0
+E8B18E E6B1
+E8B190 E6B2
+E8B195 E6B3
+E8B19A 93D8
+E8B1A1 8FDB
+E8B1A2 E6B4
+E8B1AA 8D8B
+E8B1AB 98AC
+E8B1AC E6B5
+E8B1B8 E6B6
+E8B1B9 955E
+E8B1BA E6B7
+E8B1BC E6BF
+E8B282 E6B8
+E8B285 E6BA
+E8B289 E6B9
+E8B28A E6BB
+E8B28C 9665
+E8B28D E6BC
+E8B28E E6BD
+E8B294 E6BE
+E8B298 E6C0
+E8B29D 8A4C
+E8B29E 92E5
+E8B2A0 9589
+E8B2A1 8DE0
+E8B2A2 8D76
+E8B2A7 956E
+E8B2A8 89DD
+E8B2A9 94CC
+E8B2AA E6C3
+E8B2AB 8AD1
+E8B2AC 90D3
+E8B2AD E6C2
+E8B2AE E6C7
+E8B2AF 9299
+E8B2B0 96E1
+E8B2B2 E6C5
+E8B2B3 E6C6
+E8B2B4 8B4D
+E8B2B6 E6C8
+E8B2B7 9483
+E8B2B8 91DD
+E8B2BB 94EF
+E8B2BC 935C
+E8B2BD E6C4
+E8B2BF 9666
+E8B380 89EA
+E8B381 E6CA
+E8B382 9847
+E8B383 92C0
+E8B384 9864
+E8B387 8E91
+E8B388 E6C9
+E8B38A 91AF
+E8B38D E6DA
+E8B38E 9147
+E8B391 93F6
+E8B393 956F
+E8B39A E6CD
+E8B39B 8E5E
+E8B39C 8E92
+E8B39E 8FDC
+E8B3A0 9485
+E8B3A2 8CAB
+E8B3A3 E6CC
+E8B3A4 E6CB
+E8B3A6 958A
+E8B3AA 8EBF
+E8B3AD 9371
+E8B3BA E6CF
+E8B3BB E6D0
+E8B3BC 8D77
+E8B3BD E6CE
+E8B484 E6D1
+E8B485 E6D2
+E8B487 E6D4
+E8B488 91A1
+E8B48A E6D3
+E8B48B 8AE4
+E8B48D E6D6
+E8B48F E6D5
+E8B490 E6D7
+E8B493 E6D9
+E8B494 E6DB
+E8B496 E6DC
+E8B5A4 90D4
+E8B5A6 8ECD
+E8B5A7 E6DD
+E8B5AB 8A71
+E8B5AD E6DE
+E8B5B0 9196
+E8B5B1 E6DF
+E8B5B3 E6E0
+E8B5B4 958B
+E8B5B7 8B4E
+E8B681 E6E1
+E8B685 92B4
+E8B68A 897A
+E8B699 E6E2
+E8B6A3 8EEF
+E8B6A8 9096
+E8B6B3 91AB
+E8B6BA E6E5
+E8B6BE E6E4
+E8B782 E6E3
+E8B78B E6EB
+E8B78C E6E9
+E8B78F E6E6
+E8B796 E6E8
+E8B79A E6E7
+E8B79B E6EA
+E8B79D 8B97
+E8B79F E6EE
+E8B7A1 90D5
+E8B7A3 E6EF
+E8B7A8 8CD7
+E8B7AA E6EC
+E8B7AB E6ED
+E8B7AF 9848
+E8B7B3 92B5
+E8B7B5 9148
+E8B7BC E6F0
+E8B7BF E6F3
+E8B888 E6F1
+E8B889 E6F2
+E8B88A 9778
+E8B88F 93A5
+E8B890 E6F6
+E8B89D E6F4
+E8B89E E6F5
+E8B89F E6F7
+E8B8AA E748
+E8B8B0 E6FA
+E8B8B4 E6FB
+E8B8B5 E6F9
+E8B982 E6F8
+E8B984 92FB
+E8B987 E740
+E8B988 E744
+E8B989 E741
+E8B98A E6FC
+E8B98C E742
+E8B990 E743
+E8B995 E74A
+E8B999 E745
+E8B99F 90D6
+E8B9A0 E747
+E8B9A3 E749
+E8B9A4 E746
+E8B9B2 E74C
+E8B9B4 8F52
+E8B9B6 E74B
+E8B9BC E74D
+E8BA81 E74E
+E8BA84 E751
+E8BA85 E750
+E8BA87 E74F
+E8BA8A E753
+E8BA8B E752
+E8BA8D 96F4
+E8BA91 E755
+E8BA93 E754
+E8BA94 E756
+E8BA99 E757
+E8BAA1 E759
+E8BAAA E758
+E8BAAB 9067
+E8BAAC E75A
+E8BAAF 8BEB
+E8BAB0 E75B
+E8BAB1 E75D
+E8BABE E75E
+E8BB85 E75F
+E8BB86 E75C
+E8BB88 E760
+E8BB8A 8ED4
+E8BB8B E761
+E8BB8C 8B4F
+E8BB8D 8C52
+E8BB92 8CAC
+E8BB9B E762
+E8BB9F 93EE
+E8BBA2 935D
+E8BBA3 E763
+E8BBAB E766
+E8BBB8 8EB2
+E8BBBB E765
+E8BBBC E764
+E8BBBD 8C79
+E8BBBE E767
+E8BC83 8A72
+E8BC85 E769
+E8BC89 8DDA
+E8BC8A E768
+E8BC8C E771
+E8BC92 E76B
+E8BC93 E76D
+E8BC94 95E3
+E8BC95 E76A
+E8BC99 E76C
+E8BC9B E770
+E8BC9C E76E
+E8BC9D 8B50
+E8BC9F E76F
+E8BCA6 E772
+E8BCA9 9479
+E8BCAA 97D6
+E8BCAF 8F53
+E8BCB3 E773
+E8BCB8 9741
+E8BCB9 E775
+E8BCBB E774
+E8BCBE E778
+E8BCBF 9760
+E8BD82 E777
+E8BD84 8A8D
+E8BD85 E776
+E8BD86 E77B
+E8BD89 E77A
+E8BD8C E779
+E8BD8D 9351
+E8BD8E E77C
+E8BD97 E77D
+E8BD9C E77E
+E8BD9F 8D8C
+E8BDA1 8C44
+E8BDA2 E780
+E8BDA3 E781
+E8BDA4 E782
+E8BE9B 9068
+E8BE9C E783
+E8BE9E 8EAB
+E8BE9F E784
+E8BEA3 E785
+E8BEA7 999F
+E8BEA8 999E
+E8BEAD E786
+E8BEAE E390
+E8BEAF E787
+E8BEB0 9243
+E8BEB1 904A
+E8BEB2 945F
+E8BEB7 E788
+E8BEBA 95D3
+E8BEBB 92D2
+E8BEBC 8D9E
+E8BEBF 9248
+E8BF82 8949
+E8BF84 9698
+E8BF85 9076
+E8BF8E 8C7D
+E8BF91 8BDF
+E8BF94 95D4
+E8BF9A E789
+E8BFA2 E78B
+E8BFA5 E78A
+E8BFA6 89DE
+E8BFA9 93F4
+E8BFAA E78C
+E8BFAB 9497
+E8BFAD 9352
+E8BFAF E78D
+E8BFB0 8F71
+E8BFB4 E78F
+E8BFB7 96C0
+E8BFB8 E79E
+E8BFB9 E791
+E8BFBA E792
+E8BFBD 92C7
+E98080 91DE
+E98081 9197
+E98083 93A6
+E98085 E790
+E98086 8B74
+E9808B E799
+E9808D E796
+E9808E E7A3
+E9808F 93A7
+E98090 9280
+E98091 E793
+E98093 92FC
+E98094 9372
+E98095 E794
+E98096 E798
+E98097 9080
+E98099 9487
+E9809A 92CA
+E9809D 90C0
+E9809E E797
+E9809F 91AC
+E980A0 91A2
+E980A1 E795
+E980A2 88A7
+E980A3 9841
+E980A7 E79A
+E980AE 91DF
+E980B1 8F54
+E980B2 9069
+E980B5 E79C
+E980B6 E79B
+E980B8 88ED
+E980B9 E79D
+E980BC 954E
+E980BE E7A5
+E98181 93D9
+E98182 908B
+E98185 9278
+E98187 8BF6
+E98189 E7A4
+E9818A 9756
+E9818B 895E
+E9818D 95D5
+E9818E 89DF
+E9818F E79F
+E98190 E7A0
+E98191 E7A1
+E98192 E7A2
+E98193 93B9
+E98194 9242
+E98195 88E1
+E98196 E7A6
+E98198 E7A7
+E98199 EAA1
+E9819C 91BB
+E9819E E7A8
+E981A0 8993
+E981A1 916B
+E981A3 8CAD
+E981A5 9779
+E981A8 E7A9
+E981A9 934B
+E981AD 9198
+E981AE 8ED5
+E981AF E7AA
+E981B2 E7AD
+E981B5 8F85
+E981B6 E7AB
+E981B7 914A
+E981B8 9149
+E981BA 88E2
+E981BC 97C9
+E981BD E7AF
+E981BF 94F0
+E98280 E7B1
+E98281 E7B0
+E98282 E7AE
+E98283 E284
+E98284 8AD2
+E98287 E78E
+E98289 E7B3
+E9828A E7B2
+E9828F E7B4
+E98291 9757
+E982A3 93DF
+E982A6 964D
+E982A8 E7B5
+E982AA 8ED7
+E982AF E7B6
+E982B1 E7B7
+E982B5 E7B8
+E982B8 9340
+E98381 88E8
+E9838A 8D78
+E9838E 9859
+E9839B E7BC
+E983A1 8C53
+E983A2 E7B9
+E983A4 E7BA
+E983A8 9594
+E983AD 8A73
+E983B5 9758
+E983B7 8BBD
+E983BD 9373
+E98482 E7BD
+E98492 E7BE
+E98499 E7BF
+E984AD 9341
+E984B0 E7C1
+E984B2 E7C0
+E98589 93D1
+E9858A E7C2
+E9858B 8F55
+E9858C 8EDE
+E9858D 947A
+E9858E 9291
+E98592 8EF0
+E98594 908C
+E98596 E7C3
+E98598 E7C4
+E985A2 907C
+E985A3 E7C5
+E985A5 E7C6
+E985A9 E7C7
+E985AA 978F
+E985AC 8F56
+E985B2 E7C9
+E985B3 E7C8
+E985B5 8D79
+E985B7 8D93
+E985B8 8E5F
+E98682 E7CC
+E98687 8F86
+E98689 E7CB
+E9868B E7CA
+E9868D 91E7
+E98690 8CED
+E98692 90C1
+E98697 94AE
+E9869C 8F58
+E986A2 E7CD
+E986A4 8FDD
+E986AA E7D0
+E986AB E7CE
+E986AF E7CF
+E986B4 E7D2
+E986B5 E7D1
+E986B8 8FF8
+E986BA E7D3
+E98780 E7D4
+E98781 E7D5
+E98786 94CE
+E98787 8DD1
+E98788 8EDF
+E98789 E7D6
+E9878B E7D7
+E9878C 97A2
+E9878D 8F64
+E9878E 96EC
+E9878F 97CA
+E98790 E7D8
+E98791 8BE0
+E98796 E7D9
+E98798 9342
+E9879B E7DC
+E9879C 8A98
+E9879D 906A
+E9879F E7DA
+E987A1 E7DB
+E987A3 92DE
+E987A6 9674
+E987A7 8BFA
+E987B5 E7DE
+E987B6 E7DF
+E987BC E7DD
+E987BF E7E1
+E9888D 93DD
+E9888E 8A62
+E98891 E7E5
+E98894 E7E2
+E98895 E7E4
+E9889E E7E0
+E988A9 E86E
+E988AC E7E3
+E988B4 97E9
+E988B7 8CD8
+E988BF E7ED
+E98984 9353
+E98985 E7E8
+E98988 E7EB
+E98989 E7E9
+E9898B E7EE
+E98990 E7EF
+E98997 E7E7
+E9899A E7F4
+E9899B 8994
+E9899E E7E6
+E989A2 94AB
+E989A4 E7EA
+E989A6 8FDE
+E989B1 8D7A
+E989BE 9667
+E98A80 8BE2
+E98A83 8F65
+E98A85 93BA
+E98A91 914C
+E98A93 E7F2
+E98A95 E7EC
+E98A96 E7F1
+E98A98 96C1
+E98A9A 92B6
+E98A9B E7F3
+E98A9C E7F0
+E98AAD 914B
+E98AB7 E7F7
+E98AB9 E7F6
+E98B8F E7F5
+E98B92 964E
+E98BA4 8F9B
+E98BA9 E7F8
+E98BAA 95DD
+E98BAD 8973
+E98BB2 9565
+E98BB3 9292
+E98BB8 8B98
+E98BBA E7FA
+E98BBC 8D7C
+E98C86 8E4B
+E98C8F E7F9
+E98C90 908D
+E98C98 908E
+E98C99 E840
+E98C9A E842
+E98CA0 8FF9
+E98CA2 E841
+E98CA3 E843
+E98CA6 8BD1
+E98CA8 9564
+E98CAB 8EE0
+E98CAC 9842
+E98CAE E7FC
+E98CAF 8DF6
+E98CB2 985E
+E98CB5 E845
+E98CBA E844
+E98CBB E846
+E98D84 E7FB
+E98D8B 93E7
+E98D8D 9374
+E98D94 92D5
+E98D96 E84B
+E98D9B 9262
+E98D9C E847
+E98DA0 E848
+E98DAC 8C4C
+E98DAE E84A
+E98DB5 8CAE
+E98DBC E849
+E98DBE 8FDF
+E98E8C 8A99
+E98E94 E84F
+E98E96 8DBD
+E98E97 9199
+E98E9A 92C8
+E98EA7 8A5A
+E98EAC E84D
+E98EAD E84E
+E98EAE 92C1
+E98EB0 E84C
+E98EB9 E850
+E98F83 E856
+E98F88 E859
+E98F90 E858
+E98F91 934C
+E98F96 E851
+E98F97 E852
+E98F98 E855
+E98F9D E857
+E98FA1 8BBE
+E98FA4 E85A
+E98FA5 E854
+E98FA8 E853
+E99083 E85E
+E99087 E85F
+E99090 E860
+E99093 E85D
+E99094 E85C
+E99098 8FE0
+E99099 93A8
+E9909A E85B
+E990A1 E864
+E990AB E862
+E990B5 E863
+E990B6 E861
+E990B8 91F6
+E990BA E865
+E99181 E866
+E99184 E868
+E99191 8AD3
+E99192 E867
+E99193 96F8
+E9919A E873
+E9919B E869
+E9919E E86C
+E991A0 E86A
+E991A2 E86B
+E991AA E86D
+E991B0 E86F
+E991B5 E870
+E991B7 E871
+E991BC E874
+E991BD E872
+E991BE E875
+E991BF E877
+E99281 E876
+E995B7 92B7
+E99680 96E5
+E99682 E878
+E99683 914D
+E99687 E879
+E99689 95C2
+E9968A E87A
+E9968B 8A4A
+E9968F 895B
+E99691 8AD5
+E99693 8AD4
+E99694 E87B
+E99696 E87C
+E99698 E87D
+E99699 E87E
+E996A0 E880
+E996A2 8AD6
+E996A3 8A74
+E996A4 8D7D
+E996A5 94B4
+E996A7 E882
+E996A8 E881
+E996AD E883
+E996B2 897B
+E996B9 E886
+E996BB E885
+E996BC E884
+E996BE E887
+E99783 E88A
+E99787 88C5
+E9978A E888
+E9978C E88C
+E9978D E88B
+E99794 E88E
+E99795 E88D
+E99796 E88F
+E99798 93AC
+E9979C E890
+E997A1 E891
+E997A2 E893
+E997A5 E892
+E9989C 958C
+E998A1 E894
+E998A8 E895
+E998AA 8DE3
+E998AE E896
+E998AF E897
+E998B2 9668
+E998BB 916A
+E998BF 88A2
+E99980 91C9
+E99982 E898
+E99984 958D
+E9998B E89B
+E9998C E899
+E9998D 8D7E
+E9998F E89A
+E99990 8CC0
+E9999B 95C3
+E9999C E89D
+E9999D E89F
+E9999E E89E
+E9999F E8A0
+E999A2 8940
+E999A3 9077
+E999A4 8F9C
+E999A5 8AD7
+E999A6 E8A1
+E999AA 9486
+E999AC E8A3
+E999B0 8941
+E999B2 E8A2
+E999B3 92C2
+E999B5 97CB
+E999B6 93A9
+E999B7 E89C
+E999B8 97A4
+E999BA 8CAF
+E999BD 977A
+E99A85 8BF7
+E99A86 97B2
+E99A88 8C47
+E99A8A 91E0
+E99A8B E440
+E99A8D E8A4
+E99A8E 8A4B
+E99A8F 908F
+E99A94 8A75
+E99A95 E8A6
+E99A97 E8A7
+E99A98 E8A5
+E99A99 8C84
+E99A9B 8DDB
+E99A9C 8FE1
+E99AA0 8942
+E99AA3 97D7
+E99AA7 E8A9
+E99AA8 E7AC
+E99AAA E8A8
+E99AB0 E8AC
+E99AB1 E8AA
+E99AB2 E8AB
+E99AB4 E8AD
+E99AB6 E8AE
+E99AB7 97EA
+E99AB8 E8AF
+E99AB9 E8B0
+E99ABB 90C7
+E99ABC 94B9
+E99B80 909D
+E99B81 8AE5
+E99B84 9759
+E99B85 89EB
+E99B86 8F57
+E99B87 8CD9
+E99B89 E8B3
+E99B8B E8B2
+E99B8C 8E93
+E99B8D E8B4
+E99B8E E8B1
+E99B91 8E47
+E99B95 E8B8
+E99B96 E5AB
+E99B99 99D4
+E99B9B 9097
+E99B9C E8B6
+E99BA2 97A3
+E99BA3 93EF
+E99BA8 894A
+E99BAA 90E1
+E99BAB 8EB4
+E99BB0 95B5
+E99BB2 895F
+E99BB6 97EB
+E99BB7 978B
+E99BB9 E8B9
+E99BBB 9364
+E99C80 8EF9
+E99C84 E8BA
+E99C86 E8BB
+E99C87 906B
+E99C88 E8BC
+E99C8A 97EC
+E99C8D E8B7
+E99C8E E8BE
+E99C8F E8C0
+E99C91 E8BF
+E99C93 E8BD
+E99C96 E8C1
+E99C99 E8C2
+E99C9C 919A
+E99C9E 89E0
+E99CA4 E8C3
+E99CA7 96B6
+E99CAA E8C4
+E99CB0 E8C5
+E99CB2 9849
+E99CB8 9E50
+E99CB9 E8C6
+E99CBD E8C7
+E99CBE E8C8
+E99D82 E8CC
+E99D84 E8C9
+E99D86 E8CA
+E99D88 E8CB
+E99D89 E8CD
+E99D92 90C2
+E99D96 96F5
+E99D99 90C3
+E99D9C E8CE
+E99D9E 94F1
+E99DA0 E8CF
+E99DA1 EA72
+E99DA2 96CA
+E99DA4 E8D0
+E99DA6 E8D1
+E99DA8 E8D2
+E99DA9 8A76
+E99DAB E8D4
+E99DAD 9078
+E99DB1 E8D5
+E99DB4 8C43
+E99DB9 E8D6
+E99DBA E8DA
+E99DBC E8D8
+E99E81 E8D9
+E99E84 8A93
+E99E85 E8D7
+E99E86 E8DB
+E99E8B E8DC
+E99E8D 88C6
+E99E8F E8DD
+E99E90 E8DE
+E99E98 8FE2
+E99E9C E8DF
+E99EA0 8B66
+E99EA3 E8E2
+E99EA6 E8E1
+E99EA8 E8E0
+E99EAB E691
+E99EAD 95DA
+E99EB3 E8E3
+E99EB4 E8E4
+E99F83 E8E5
+E99F86 E8E6
+E99F88 E8E7
+E99F8B E8E8
+E99F93 8AD8
+E99F9C E8E9
+E99FAD E8EA
+E99FAE 9442
+E99FB2 E8EC
+E99FB3 89B9
+E99FB5 E8EF
+E99FB6 E8EE
+E99FBB 8943
+E99FBF 8BBF
+E9A081 95C5
+E9A082 92B8
+E9A083 8DA0
+E9A085 8D80
+E9A086 8F87
+E9A088 907B
+E9A08C E8F1
+E9A08F E8F0
+E9A090 9761
+E9A091 8AE6
+E9A092 94D0
+E9A093 93DA
+E9A097 909C
+E9A098 97CC
+E9A09A 8C7A
+E9A0A1 E8F4
+E9A0A4 E8F3
+E9A0AC 966A
+E9A0AD 93AA
+E9A0B4 896F
+E9A0B7 E8F5
+E9A0B8 E8F2
+E9A0BB 9570
+E9A0BC 978A
+E9A0BD E8F6
+E9A186 E8F7
+E9A18B E8F9
+E9A18C 91E8
+E9A18D 8A7A
+E9A18E 8A7B
+E9A18F E8F8
+E9A194 8AE7
+E9A195 8CB0
+E9A198 8AE8
+E9A19B 935E
+E9A19E 97DE
+E9A1A7 8CDA
+E9A1AB E8FA
+E9A1AF E8FB
+E9A1B0 E8FC
+E9A1B1 E940
+E9A1B3 E942
+E9A1B4 E941
+E9A2A8 9597
+E9A2AA E943
+E9A2AF E944
+E9A2B1 E945
+E9A2B6 E946
+E9A383 E948
+E9A384 E947
+E9A386 E949
+E9A39B 94F2
+E9A39C E3CA
+E9A39F 9048
+E9A3A2 8B51
+E9A3A9 E94A
+E9A3AB E94B
+E9A3AD 99AA
+E9A3AE 9F5A
+E9A3AF 94D1
+E9A3B2 88F9
+E9A3B4 88B9
+E9A3BC 8E94
+E9A3BD 964F
+E9A3BE 8FFC
+E9A483 E94C
+E9A485 96DD
+E9A489 E94D
+E9A48A 977B
+E9A48C 8961
+E9A490 8E60
+E9A492 E94E
+E9A493 89EC
+E9A494 E94F
+E9A498 E950
+E9A49D E952
+E9A49E E953
+E9A4A0 E955
+E9A4A1 E951
+E9A4A4 E954
+E9A4A8 8AD9
+E9A4AC E956
+E9A4AE E957
+E9A4BD E958
+E9A4BE E959
+E9A582 E95A
+E9A585 E95C
+E9A589 E95B
+E9A58B E95E
+E9A58C E961
+E9A590 E95D
+E9A591 E95F
+E9A592 E960
+E9A595 E962
+E9A597 8BC0
+E9A696 8EF1
+E9A697 E963
+E9A698 E964
+E9A699 8D81
+E9A6A5 E965
+E9A6A8 8A5D
+E9A6AC 946E
+E9A6AD E966
+E9A6AE E967
+E9A6B3 9279
+E9A6B4 93E9
+E9A6BC E968
+E9A781 949D
+E9A784 91CA
+E9A785 8977
+E9A786 8BEC
+E9A788 8BED
+E9A790 9293
+E9A791 E96D
+E9A792 8BEE
+E9A795 89ED
+E9A798 E96C
+E9A79B E96A
+E9A79D E96B
+E9A79F E969
+E9A7A2 E977
+E9A7AD E96E
+E9A7AE E96F
+E9A7B1 E970
+E9A7B2 E971
+E9A7B8 E973
+E9A7BB E972
+E9A7BF 8F78
+E9A881 E974
+E9A885 E976
+E9A88E 8B52
+E9A88F E975
+E9A892 919B
+E9A893 8CB1
+E9A899 E978
+E9A8A8 91CB
+E9A8AB E979
+E9A8B0 93AB
+E9A8B7 E97A
+E9A8BE E980
+E9A980 E97D
+E9A982 E97C
+E9A983 E97E
+E9A985 E97B
+E9A98D E982
+E9A995 E981
+E9A997 E984
+E9A99A 8BC1
+E9A99B E983
+E9A99F E985
+E9A9A2 E986
+E9A9A4 E988
+E9A9A5 E987
+E9A9A9 E989
+E9A9AA E98B
+E9A9AB E98A
+E9AAA8 8D9C
+E9AAAD E98C
+E9AAB0 E98D
+E9AAB8 8A5B
+E9AABC E98E
+E9AB80 E98F
+E9AB84 9091
+E9AB8F E990
+E9AB91 E991
+E9AB93 E992
+E9AB94 E993
+E9AB98 8D82
+E9AB9E E994
+E9AB9F E995
+E9ABA2 E996
+E9ABA3 E997
+E9ABA6 E998
+E9ABAA 94AF
+E9ABAB E99A
+E9ABAD 9545
+E9ABAE E99B
+E9ABAF E999
+E9ABB1 E99D
+E9ABB4 E99C
+E9ABB7 E99E
+E9ABBB E99F
+E9AC86 E9A0
+E9AC98 E9A1
+E9AC9A E9A2
+E9AC9F E9A3
+E9ACA2 E9A4
+E9ACA3 E9A5
+E9ACA5 E9A6
+E9ACA7 E9A7
+E9ACA8 E9A8
+E9ACA9 E9A9
+E9ACAA E9AA
+E9ACAE E9AB
+E9ACAF E9AC
+E9ACB1 9F54
+E9ACB2 E9AD
+E9ACBB E2F6
+E9ACBC 8B53
+E9AD81 8A40
+E9AD82 8DB0
+E9AD83 E9AF
+E9AD84 E9AE
+E9AD85 96A3
+E9AD8D E9B1
+E9AD8E E9B2
+E9AD8F E9B0
+E9AD91 E9B3
+E9AD94 9682
+E9AD98 E9B4
+E9AD9A 8B9B
+E9ADAF 9844
+E9ADB4 E9B5
+E9AE83 E9B7
+E9AE8E 88BC
+E9AE91 E9B8
+E9AE92 95A9
+E9AE93 E9B6
+E9AE96 E9B9
+E9AE97 E9BA
+E9AE9F E9BB
+E9AEA0 E9BC
+E9AEA8 E9BD
+E9AEAA 968E
+E9AEAB 8E4C
+E9AEAD 8DF8
+E9AEAE 914E
+E9AEB4 E9BE
+E9AEB9 E9C1
+E9AF80 E9BF
+E9AF86 E9C2
+E9AF89 8CEF
+E9AF8A E9C0
+E9AF8F E9C3
+E9AF91 E9C4
+E9AF92 E9C5
+E9AF94 E9C9
+E9AF96 8E49
+E9AF9B 91E2
+E9AFA1 E9CA
+E9AFA2 E9C7
+E9AFA3 E9C6
+E9AFA4 E9C8
+E9AFA8 8C7E
+E9AFB0 E9CE
+E9AFB1 E9CD
+E9AFB2 E9CC
+E9AFB5 88B1
+E9B084 E9D8
+E9B086 E9D4
+E9B088 E9D5
+E9B089 E9D1
+E9B08A E9D7
+E9B08C E9D3
+E9B08D 8A82
+E9B090 986B
+E9B092 E9D6
+E9B093 E9D2
+E9B094 E9D0
+E9B095 E9CF
+E9B09B E9DA
+E9B0A1 E9DD
+E9B0A4 E9DC
+E9B0A5 E9DB
+E9B0AD 9568
+E9B0AE E9D9
+E9B0AF 88F1
+E9B0B0 E9DE
+E9B0B2 E9E0
+E9B0B9 8A8F
+E9B0BA E9CB
+E9B0BB 8956
+E9B0BE E9E2
+E9B186 E9E1
+E9B187 E9DF
+E9B188 924C
+E9B192 9690
+E9B197 97D8
+E9B19A E9E3
+E9B1A0 E9E4
+E9B1A7 E9E5
+E9B1B6 E9E6
+E9B1B8 E9E7
+E9B3A5 92B9
+E9B3A7 E9E8
+E9B3A9 94B5
+E9B3AB E9ED
+E9B3AC E9E9
+E9B3B0 E9EA
+E9B3B3 9650
+E9B3B4 96C2
+E9B3B6 93CE
+E9B483 E9EE
+E9B486 E9EF
+E9B487 93BC
+E9B488 E9EC
+E9B489 E9EB
+E9B48E 89A8
+E9B492 E9F7
+E9B495 E9F6
+E9B49B 8995
+E9B49F E9F4
+E9B4A3 E9F3
+E9B4A6 E9F1
+E9B4A8 8A9B
+E9B4AA E9F0
+E9B4AB 8EB0
+E9B4AC 89A7
+E9B4BB 8D83
+E9B4BE E9FA
+E9B4BF E9F9
+E9B581 E9F8
+E9B584 E9F5
+E9B586 E9FB
+E9B588 E9FC
+E9B590 EA44
+E9B591 EA43
+E9B599 EA45
+E9B59C 894C
+E9B59D EA40
+E9B59E EA41
+E9B5A0 8D94
+E9B5A1 96B7
+E9B5A4 EA42
+E9B5AC 9651
+E9B5AF EA4A
+E9B5B2 EA46
+E9B5BA EA4B
+E9B687 EA48
+E9B689 EA47
+E9B68F 8C7B
+E9B69A EA4C
+E9B6A4 EA4D
+E9B6A9 EA4E
+E9B6AB EA49
+E9B6AF E9F2
+E9B6B2 EA4F
+E9B6B4 92DF
+E9B6B8 EA53
+E9B6BA EA54
+E9B6BB EA52
+E9B781 EA51
+E9B782 EA57
+E9B784 EA50
+E9B786 EA55
+E9B78F EA56
+E9B793 EA59
+E9B799 EA58
+E9B7A6 EA5B
+E9B7AD EA5C
+E9B7AF EA5D
+E9B7B2 9868
+E9B7B8 EA5A
+E9B7B9 91E9
+E9B7BA 8DEB
+E9B7BD EA5E
+E9B89A EA5F
+E9B89B EA60
+E9B89E EA61
+E9B9B5 EA62
+E9B9B8 8CB2
+E9B9B9 EA63
+E9B9BD EA64
+E9B9BF 8EAD
+E9BA81 EA65
+E9BA88 EA66
+E9BA8B EA67
+E9BA8C EA68
+E9BA91 EA6B
+E9BA92 EA69
+E9BA93 985B
+E9BA95 EA6A
+E9BA97 97ED
+E9BA9D EA6C
+E9BA9F 97D9
+E9BAA5 EA6D
+E9BAA6 949E
+E9BAA9 EA6E
+E9BAAA EA70
+E9BAAD EA71
+E9BAB8 EA6F
+E9BAB9 8D8D
+E9BABA 96CB
+E9BABB 9683
+E9BABC 9BF5
+E9BABE 9F80
+E9BABF 969B
+E9BB84 89A9
+E9BB8C EA73
+E9BB8D 8B6F
+E9BB8E EA74
+E9BB8F EA75
+E9BB90 EA76
+E9BB92 8D95
+E9BB94 EA77
+E9BB98 E0D2
+E9BB99 96D9
+E9BB9B 91E1
+E9BB9C EA78
+E9BB9D EA7A
+E9BB9E EA79
+E9BBA0 EA7B
+E9BBA5 EA7C
+E9BBA8 EA7D
+E9BBAF EA7E
+E9BBB4 EA80
+E9BBB6 EA81
+E9BBB7 EA82
+E9BBB9 EA83
+E9BBBB EA84
+E9BBBC EA85
+E9BBBD EA86
+E9BC87 EA87
+E9BC88 EA88
+E9BC8E 9343
+E9BC93 8CDB
+E9BC95 EA8A
+E9BCA0 916C
+E9BCA1 EA8B
+E9BCAC EA8C
+E9BCBB 9540
+E9BCBE EA8D
+E9BD8A EA8E
+E9BD8B E256
+E9BD8E E6D8
+E9BD8F E8EB
+E9BD92 EA8F
+E9BD94 EA90
+E9BD9F EA92
+E9BDA0 EA93
+E9BDA1 EA94
+E9BDA2 97EE
+E9BDA3 EA91
+E9BDA6 EA95
+E9BDA7 EA96
+E9BDAA EA98
+E9BDAC EA97
+E9BDB2 EA9A
+E9BDB6 EA9B
+E9BDB7 EA99
+E9BE8D 97B4
+E9BE95 EA9C
+E9BE9C EA9D
+E9BE9D E273
+E9BEA0 EA9E
+EFBC81 8149
+EFBC83 8194
+EFBC84 8190
+EFBC85 8193
+EFBC86 8195
+EFBC88 8169
+EFBC89 816A
+EFBC8A 8196
+EFBC8B 817B
+EFBC8C 8143
+EFBC8E 8144
+EFBC8F 815E
+EFBC90 824F
+EFBC91 8250
+EFBC92 8251
+EFBC93 8252
+EFBC94 8253
+EFBC95 8254
+EFBC96 8255
+EFBC97 8256
+EFBC98 8257
+EFBC99 8258
+EFBC9A 8146
+EFBC9B 8147
+EFBC9C 8183
+EFBC9D 8181
+EFBC9E 8184
+EFBC9F 8148
+EFBCA0 8197
+EFBCA1 8260
+EFBCA2 8261
+EFBCA3 8262
+EFBCA4 8263
+EFBCA5 8264
+EFBCA6 8265
+EFBCA7 8266
+EFBCA8 8267
+EFBCA9 8268
+EFBCAA 8269
+EFBCAB 826A
+EFBCAC 826B
+EFBCAD 826C
+EFBCAE 826D
+EFBCAF 826E
+EFBCB0 826F
+EFBCB1 8270
+EFBCB2 8271
+EFBCB3 8272
+EFBCB4 8273
+EFBCB5 8274
+EFBCB6 8275
+EFBCB7 8276
+EFBCB8 8277
+EFBCB9 8278
+EFBCBA 8279
+EFBCBB 816D
+EFBCBD 816E
+EFBCBE 814F
+EFBCBF 8151
+EFBD80 814D
+EFBD81 8281
+EFBD82 8282
+EFBD83 8283
+EFBD84 8284
+EFBD85 8285
+EFBD86 8286
+EFBD87 8287
+EFBD88 8288
+EFBD89 8289
+EFBD8A 828A
+EFBD8B 828B
+EFBD8C 828C
+EFBD8D 828D
+EFBD8E 828E
+EFBD8F 828F
+EFBD90 8290
+EFBD91 8291
+EFBD92 8292
+EFBD93 8293
+EFBD94 8294
+EFBD95 8295
+EFBD96 8296
+EFBD97 8297
+EFBD98 8298
+EFBD99 8299
+EFBD9A 829A
+EFBD9B 816F
+EFBD9C 8162
+EFBD9D 8170
+EFBDA1 A1
+EFBDA2 A2
+EFBDA3 A3
+EFBDA4 A4
+EFBDA5 A5
+EFBDA6 A6
+EFBDA7 A7
+EFBDA8 A8
+EFBDA9 A9
+EFBDAA AA
+EFBDAB AB
+EFBDAC AC
+EFBDAD AD
+EFBDAE AE
+EFBDAF AF
+EFBDB0 B0
+EFBDB1 B1
+EFBDB2 B2
+EFBDB3 B3
+EFBDB4 B4
+EFBDB5 B5
+EFBDB6 B6
+EFBDB7 B7
+EFBDB8 B8
+EFBDB9 B9
+EFBDBA BA
+EFBDBB BB
+EFBDBC BC
+EFBDBD BD
+EFBDBE BE
+EFBDBF BF
+EFBE80 C0
+EFBE81 C1
+EFBE82 C2
+EFBE83 C3
+EFBE84 C4
+EFBE85 C5
+EFBE86 C6
+EFBE87 C7
+EFBE88 C8
+EFBE89 C9
+EFBE8A CA
+EFBE8B CB
+EFBE8C CC
+EFBE8D CD
+EFBE8E CE
+EFBE8F CF
+EFBE90 D0
+EFBE91 D1
+EFBE92 D2
+EFBE93 D3
+EFBE94 D4
+EFBE95 D5
+EFBE96 D6
+EFBE97 D7
+EFBE98 D8
+EFBE99 D9
+EFBE9A DA
+EFBE9B DB
+EFBE9C DC
+EFBE9D DD
+EFBE9E DE
+EFBE9F DF
+EFBFA3 8150
+EFBFA5 818F
DROP TABLE t1;
#
# End of 5.5 tests
diff --git a/mysql-test/r/ctype_latin1.result b/mysql-test/r/ctype_latin1.result
index 763acd0fea0..4944db677a6 100644
--- a/mysql-test/r/ctype_latin1.result
+++ b/mysql-test/r/ctype_latin1.result
@@ -409,3 +409,2570 @@ select hex(cast(_ascii 0x7f as char(1) character set latin1));
hex(cast(_ascii 0x7f as char(1) character set latin1))
7F
End of 5.0 tests
+#
+# Start of 5.5 tests
+#
+#
+# Start of WL#2649 Number-to-string conversions
+#
+select hex(concat(1));
+hex(concat(1))
+31
+create table t1 as select concat(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+31
+drop table t1;
+select hex(concat(18446744073709551615));
+hex(concat(18446744073709551615))
+3138343436373434303733373039353531363135
+create table t1 as select concat(18446744073709551615) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+3138343436373434303733373039353531363135
+drop table t1;
+select hex(concat(1.1));
+hex(concat(1.1))
+312E31
+create table t1 as select concat(1.1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+312E31
+drop table t1;
+select hex(concat('a', 1+2)), charset(concat(1+2));
+hex(concat('a', 1+2)) charset(concat(1+2))
+6133 latin1
+create table t1 as select concat(1+2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1-2));
+hex(concat(1-2))
+2D31
+create table t1 as select concat(1-2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1*2));
+hex(concat(1*2))
+32
+create table t1 as select concat(1*2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1/2));
+hex(concat(1/2))
+302E35303030
+create table t1 as select concat(1/2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 div 2));
+hex(concat(1 div 2))
+30
+create table t1 as select concat(1 div 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 % 2));
+hex(concat(1 % 2))
+31
+create table t1 as select concat(1 % 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-1));
+hex(concat(-1))
+2D31
+create table t1 as select concat(-1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-(1+2)));
+hex(concat(-(1+2)))
+2D33
+create table t1 as select concat(-(1+2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1|2));
+hex(concat(1|2))
+33
+create table t1 as select concat(1|2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1&2));
+hex(concat(1&2))
+30
+create table t1 as select concat(1&2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_count(12)));
+hex(concat(bit_count(12)))
+32
+create table t1 as select concat(bit_count(12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2<<1));
+hex(concat(2<<1))
+34
+create table t1 as select concat(2<<1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2>>1));
+hex(concat(2>>1))
+31
+create table t1 as select concat(2>>1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(~0));
+hex(concat(~0))
+3138343436373434303733373039353531363135
+create table t1 as select concat(~0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(3^2));
+hex(concat(3^2))
+31
+create table t1 as select concat(3^2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(abs(-2)));
+hex(concat(abs(-2)))
+32
+create table t1 as select concat(abs(-2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(exp(2)),1));
+hex(left(concat(exp(2)),1))
+37
+create table t1 as select concat(exp(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log(2)),1));
+hex(left(concat(log(2)),1))
+30
+create table t1 as select concat(log(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log2(2)),1));
+hex(left(concat(log2(2)),1))
+31
+create table t1 as select concat(log2(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log10(2)),1));
+hex(left(concat(log10(2)),1))
+30
+create table t1 as select concat(log10(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sqrt(2)),1));
+hex(left(concat(sqrt(2)),1))
+31
+create table t1 as select concat(sqrt(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(pow(2,2)),1));
+hex(left(concat(pow(2,2)),1))
+34
+create table t1 as select concat(pow(2,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(acos(0.5)),1));
+hex(left(concat(acos(0.5)),1))
+31
+create table t1 as select concat(acos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(asin(0.5)),1));
+hex(left(concat(asin(0.5)),1))
+30
+create table t1 as select concat(asin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(atan(0.5)),1));
+hex(left(concat(atan(0.5)),1))
+30
+create table t1 as select concat(atan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(cos(0.5)),1));
+hex(left(concat(cos(0.5)),1))
+30
+create table t1 as select concat(cos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sin(0.5)),1));
+hex(left(concat(sin(0.5)),1))
+30
+create table t1 as select concat(sin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(tan(0.5)),1));
+hex(left(concat(tan(0.5)),1))
+30
+create table t1 as select concat(tan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(degrees(0)));
+hex(concat(degrees(0)))
+30
+create table t1 as select concat(degrees(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(radians(0)));
+hex(concat(radians(0)))
+30
+create table t1 as select concat(radians(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ceiling(0.5)));
+hex(concat(ceiling(0.5)))
+31
+create table t1 as select concat(ceiling(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(floor(0.5)));
+hex(concat(floor(0.5)))
+30
+create table t1 as select concat(floor(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(round(0.5)));
+hex(concat(round(0.5)))
+31
+create table t1 as select concat(round(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sign(0.5)));
+hex(concat(sign(0.5)))
+31
+create table t1 as select concat(sign(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(rand()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(length('a')));
+hex(concat(length('a')))
+31
+create table t1 as select concat(length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(char_length('a')));
+hex(concat(char_length('a')))
+31
+create table t1 as select concat(char_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_length('a')));
+hex(concat(bit_length('a')))
+38
+create table t1 as select concat(bit_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coercibility('a')));
+hex(concat(coercibility('a')))
+34
+create table t1 as select concat(coercibility('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(locate('a','a')));
+hex(concat(locate('a','a')))
+31
+create table t1 as select concat(locate('a','a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(field('c','a','b','c')));
+hex(concat(field('c','a','b','c')))
+33
+create table t1 as select concat(field('c','a','b','c')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ascii(61)));
+hex(concat(ascii(61)))
+3534
+create table t1 as select concat(ascii(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ord(61)));
+hex(concat(ord(61)))
+3534
+create table t1 as select concat(ord(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(find_in_set('b','a,b,c,d')));
+hex(concat(find_in_set('b','a,b,c,d')))
+32
+create table t1 as select concat(find_in_set('b','a,b,c,d')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select md5('a'), hex(md5('a'));
+md5('a') hex(md5('a'))
+0cc175b9c0f1b6a831c399e269772661 3063633137356239633066316236613833316333393965323639373732363631
+create table t1 as select md5('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(32) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select old_password('a'), hex(old_password('a'));
+old_password('a') hex(old_password('a'))
+60671c896665c3fa 36303637316338393636363563336661
+create table t1 as select old_password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(16) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select password('a'), hex(password('a'));
+password('a') hex(password('a'))
+*667F407DE7C6AD07358FA38DAED7828A72014B4E 2A36363746343037444537433641443037333538464133384441454437383238413732303134423445
+create table t1 as select password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(41) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha('a'), hex(sha('a'));
+sha('a') hex(sha('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha1('a'), hex(sha1('a'));
+sha1('a') hex(sha1('a'))
+86f7e437faa5a7fce15d1ddcb9eaeaea377667b8 38366637653433376661613561376663653135643164646362396561656165613337373636376238
+create table t1 as select sha1('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('-1' as signed)));
+hex(concat(cast('-1' as signed)))
+2D31
+create table t1 as select concat(cast('-1' as signed)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('1' as unsigned)));
+hex(concat(cast('1' as unsigned)))
+31
+create table t1 as select concat(cast('1' as unsigned)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast(1/2 as decimal(5,5))));
+hex(concat(cast(1/2 as decimal(5,5))))
+302E3530303030
+create table t1 as select concat(cast(1/2 as decimal(5,5))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as date)));
+hex(concat(cast('2001-01-02 03:04:05' as date)))
+323030312D30312D3032
+create table t1 as select concat(cast('2001-01-02 03:04:05' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as time)));
+hex(concat(cast('2001-01-02 03:04:05' as time)))
+30333A30343A3035
+create table t1 as select concat(cast('2001-01-02 03:04:05' as time)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+03:04:05
+drop table t1;
+select hex(concat(cast('2001-01-02' as datetime)));
+hex(concat(cast('2001-01-02' as datetime)))
+323030312D30312D30322030303A30303A3030
+create table t1 as select concat(cast('2001-01-02' as datetime)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02 00:00:00
+drop table t1;
+select hex(concat(least(1,2)));
+hex(concat(least(1,2)))
+31
+create table t1 as select concat(least(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(greatest(1,2)));
+hex(concat(greatest(1,2)))
+32
+create table t1 as select concat(greatest(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(case when 11 then 22 else 33 end));
+hex(concat(case when 11 then 22 else 33 end))
+3232
+create table t1 as select concat(case when 11 then 22 else 33 end) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coalesce(1,2)));
+hex(concat(coalesce(1,2)))
+31
+create table t1 as select concat(coalesce(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat_ws(1,2,3));
+hex(concat_ws(1,2,3))
+323133
+create table t1 as select concat_ws(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(group_concat(1,2,3));
+hex(group_concat(1,2,3))
+313233
+create table t1 as select group_concat(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` text
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select 1 as c1 union select 'a';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1 order by c1;
+hex(c1)
+31
+61
+drop table t1;
+create table t1 as select concat(last_insert_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(benchmark(0,0)));
+hex(concat(benchmark(0,0)))
+30
+create table t1 as select concat(benchmark(0,0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sleep(0)));
+hex(concat(sleep(0)))
+30
+create table t1 as select concat(sleep(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(is_free_lock('xxxx')));
+hex(concat(is_free_lock('xxxx')))
+31
+create table t1 as select concat(is_free_lock('xxxx')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(is_used_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(release_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(crc32('')));
+hex(concat(crc32('')))
+30
+create table t1 as select concat(crc32('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(uncompressed_length('')));
+hex(concat(uncompressed_length('')))
+30
+create table t1 as select concat(uncompressed_length('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(connection_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_aton('127.1.1.1')));
+hex(concat(inet_aton('127.1.1.1')))
+32313330373732323235
+create table t1 as select concat(inet_aton('127.1.1.1')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_ntoa(2130772225)));
+hex(concat(inet_ntoa(2130772225)))
+3132372E312E312E31
+create table t1 as select concat(inet_ntoa(2130772225)) as c1;
+select * from t1;
+c1
+127.1.1.1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(31) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(row_count()));
+hex(concat(row_count()))
+2D31
+create table t1 as select concat(row_count()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(found_rows()));
+hex(concat(found_rows()))
+30
+create table t1 as select concat(found_rows()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid_short()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select coercibility(uuid()), coercibility(cast('a' as char character set latin1));
+coercibility(uuid()) coercibility(cast('a' as char character set latin1))
+4 2
+select charset(concat(uuid(), cast('a' as char character set latin1)));
+charset(concat(uuid(), cast('a' as char character set latin1)))
+latin1
+create table t1 as select concat(uuid(), cast('a' as char character set latin1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(37) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(master_pos_wait('non-existent',0,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1));
+hex(concat(@a1:=1))
+31
+create table t1 as select concat(@a2:=2) as c1, @a3:=3 as c2;
+select hex(c1) from t1;
+hex(c1)
+32
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT '',
+ `c2` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1;
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL,
+ `c2` bigint(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=sqrt(1)));
+hex(concat(@a1:=sqrt(1)))
+31
+create table t1 as select concat(@a2:=sqrt(1)) as c1, @a3:=sqrt(1) as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=sqrt(1);
+select hex(concat(@a2));
+hex(concat(@a2))
+31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1.1));
+hex(concat(@a1:=1.1))
+312E31
+create table t1 as select concat(@a2:=1.1) as c1, @a3:=1.1 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT '',
+ `c2` decimal(2,1) NOT NULL DEFAULT '0.0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1.1;
+select hex(concat(@a2));
+hex(concat(@a2))
+312E31
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+312E31
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(83) DEFAULT NULL,
+ `c2` decimal(65,30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@@ft_max_word_len));
+hex(concat(@@ft_max_word_len))
+3834
+create table t1 as select concat(@@ft_max_word_len) as c1;
+select hex(c1) from t1;
+hex(c1)
+3834
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS TRUE));
+hex(concat('a'='a' IS TRUE))
+31
+create table t1 as select concat('a'='a' IS TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS NOT TRUE));
+hex(concat('a'='a' IS NOT TRUE))
+30
+create table t1 as select concat('a'='a' IS NOT TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NOT 'a'='a'));
+hex(concat(NOT 'a'='a'))
+30
+create table t1 as select concat(NOT 'a'='a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NULL));
+hex(concat('a' IS NULL))
+30
+create table t1 as select concat('a' IS NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NOT NULL));
+hex(concat('a' IS NOT NULL))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' rlike 'a'));
+hex(concat('a' rlike 'a'))
+31
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(strcmp('a','b')));
+hex(concat(strcmp('a','b')))
+2D31
+create table t1 as select concat(strcmp('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' like 'a'));
+hex(concat('a' like 'a'))
+31
+create table t1 as select concat('a' like 'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' between 'b' and 'c'));
+hex(concat('a' between 'b' and 'c'))
+30
+create table t1 as select concat('a' between 'b' and 'c') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' in ('a','b')));
+hex(concat('a' in ('a','b')))
+31
+create table t1 as select concat('a' in ('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(interval(23, 1, 15, 17, 30, 44, 200)));
+hex(concat(interval(23, 1, 15, 17, 30, 44, 200)))
+33
+create table t1 as select concat(interval(23, 1, 15, 17, 30, 44, 200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(10), fulltext key(a));
+insert into t1 values ('a');
+select hex(concat(match (a) against ('a'))) from t1;
+hex(concat(match (a) against ('a')))
+30
+create table t2 as select concat(match (a) against ('a')) as a from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+select hex(ifnull(1,'a'));
+hex(ifnull(1,'a'))
+31
+create table t1 as select ifnull(1,'a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1,1)));
+hex(concat(ifnull(1,1)))
+31
+create table t1 as select concat(ifnull(1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1.1,1.1)));
+hex(concat(ifnull(1.1,1.1)))
+312E31
+create table t1 as select concat(ifnull(1.1,1.1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,'b',1));
+hex(if(1,'b',1))
+62
+create table t1 as select if(1,'b',1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,1,'b'));
+hex(if(1,1,'b'))
+31
+create table t1 as select if(1,1,'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(if(1,1,1)));
+hex(concat(if(1,1,1)))
+31
+create table t1 as select concat(if(1,1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(nullif(1,2)));
+hex(concat(nullif(1,2)))
+31
+create table t1 as select concat(nullif(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))))
+31
+create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+32
+create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))))
+32
+create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+30
+create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
+hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))))
+31
+create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
+hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
+hex(concat(IsSimple(GeomFromText('POINT(1 1)'))))
+30
+create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
+hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))))
+30
+create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
+hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))))
+31
+create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
+drop table t1;
+select hex(concat(x(GeomFromText('Point(1 2)'))));
+hex(concat(x(GeomFromText('Point(1 2)'))))
+31
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(y(GeomFromText('Point(1 2)'))));
+hex(concat(y(GeomFromText('Point(1 2)'))))
+32
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
+hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))))
+31
+create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
+hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))))
+31
+create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
+hex(concat(GeometryType(GeomFromText('Point(1 2)'))))
+504F494E54
+create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(AsText(GeomFromText('Point(1 2)'))));
+hex(concat(AsText(GeomFromText('Point(1 2)'))))
+504F494E542831203229
+create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` longtext
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_add(200902, 2)));
+hex(concat(period_add(200902, 2)))
+323030393034
+create table t1 as select concat(period_add(200902, 2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_diff(200902, 200802)));
+hex(concat(period_diff(200902, 200802)))
+3132
+create table t1 as select concat(period_add(200902, 200802)) as c1;
+Warnings:
+Warning 1265 Data truncated for column 'c1' at row 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(to_days(20090224)));
+hex(concat(to_days(20090224)))
+373333383237
+create table t1 as select concat(to_days(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofmonth(20090224)));
+hex(concat(dayofmonth(20090224)))
+3234
+create table t1 as select concat(dayofmonth(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofyear(20090224)));
+hex(concat(dayofyear(20090224)))
+3535
+create table t1 as select concat(dayofyear(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(hour('10:11:12')));
+hex(concat(hour('10:11:12')))
+3130
+create table t1 as select concat(hour('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(minute('10:11:12')));
+hex(concat(minute('10:11:12')))
+3131
+create table t1 as select concat(minute('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(second('10:11:12')));
+hex(concat(second('10:11:12')))
+3132
+create table t1 as select concat(second('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(quarter(20090224)));
+hex(concat(quarter(20090224)))
+31
+create table t1 as select concat(quarter(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(week(20090224)));
+hex(concat(week(20090224)))
+38
+create table t1 as select concat(week(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(yearweek(20090224)));
+hex(concat(yearweek(20090224)))
+323030393038
+create table t1 as select concat(yearweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(year(20090224)));
+hex(concat(year(20090224)))
+32303039
+create table t1 as select concat(year(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(weekday(20090224)));
+hex(concat(weekday(20090224)))
+31
+create table t1 as select concat(weekday(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofweek(20090224)));
+hex(concat(dayofweek(20090224)))
+33
+create table t1 as select concat(dayofweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(unix_timestamp(20090224)));
+hex(concat(unix_timestamp(20090224)))
+31323335343232383030
+create table t1 as select concat(unix_timestamp(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(time_to_sec('10:11:12')));
+hex(concat(time_to_sec('10:11:12')))
+3336363732
+create table t1 as select concat(time_to_sec('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(extract(year from 20090702)));
+hex(concat(extract(year from 20090702)))
+32303039
+create table t1 as select concat(extract(year from 20090702)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(microsecond('12:00:00.123456')));
+hex(concat(microsecond('12:00:00.123456')))
+313233343536
+create table t1 as select concat(microsecond('12:00:00.123456')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(month(20090224)));
+hex(concat(month(20090224)))
+32
+create table t1 as select concat(month(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(last_day('2003-02-05')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2003-02-28 323030332D30322D3238
+drop table t1;
+create table t1 as select concat(from_days(730669)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2000-07-03 323030302D30372D3033
+drop table t1;
+create table t1 as select concat(curdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_date()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(curtime()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat('a',20) as c1 limit 0;
+set timestamp=1216359724;
+insert into t1 values (current_date);
+insert into t1 values (current_time);
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2008-07-18 323030382D30372D3138
+08:42:04 30383A34323A3034
+drop table t1;
+create table t1 as select concat(utc_time()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sec_to_time(2378)));
+hex(concat(sec_to_time(2378)))
+30303A33393A3338
+create table t1 as select concat(sec_to_time(2378)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
+hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')))
+32343A30303A3030
+create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(maketime(10,11,12)));
+hex(concat(maketime(10,11,12)))
+31303A31313A3132
+create table t1 as select concat(maketime(10,11,12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(get_format(DATE,'USA'));
+hex(get_format(DATE,'USA'))
+256D2E25642E2559
+create table t1 as select get_format(DATE,'USA') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(17) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(from_unixtime(1111885200)),4));
+hex(left(concat(from_unixtime(1111885200)),4))
+32303035
+create table t1 as select concat(from_unixtime(1111885200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
+hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')))
+323030332D31322D33312032303A30303A3030
+create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
+hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)))
+323030342D30312D30322031323A30303A3030
+create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2004-01-02 12:00:00
+drop table t1;
+select hex(concat(makedate(2009,1)));
+hex(concat(makedate(2009,1)))
+323030392D30312D3031
+create table t1 as select concat(makedate(2009,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2009-01-01
+drop table t1;
+create table t1 as select concat(now()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_timestamp()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(sysdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(addtime('00:00:00','11:22:33')));
+hex(concat(addtime('00:00:00','11:22:33')))
+31313A32323A3333
+create table t1 as select concat(addtime('00:00:00','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(subtime('23:59:59','11:22:33')));
+hex(concat(subtime('23:59:59','11:22:33')))
+31323A33373A3236
+create table t1 as select concat(subtime('23:59:59','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(elt(1,2,3));
+hex(elt(1,2,3))
+32
+create table t1 as select elt(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(export_set(1,2,3,4,2));
+hex(export_set(1,2,3,4,2))
+323433
+create table t1 as select export_set(1,2,3,4,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(127) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(insert(1133,3,0,22));
+hex(insert(1133,3,0,22))
+313132323333
+create table t1 as select insert(1133,3,0,22) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lcase(123));
+hex(lcase(123))
+313233
+create table t1 as select lcase(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(123,1));
+hex(left(123,1))
+31
+create table t1 as select left(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lower(123));
+hex(lower(123))
+313233
+create table t1 as select lower(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lpad(1,2,0));
+hex(lpad(1,2,0))
+3031
+create table t1 as select lpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ltrim(1));
+hex(ltrim(1))
+31
+create table t1 as select ltrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(mid(1,1,1));
+hex(mid(1,1,1))
+31
+create table t1 as select mid(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(repeat(1,2));
+hex(repeat(1,2))
+3131
+create table t1 as select repeat(1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(replace(1,1,2));
+hex(replace(1,1,2))
+32
+create table t1 as select replace(1,1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(reverse(12));
+hex(reverse(12))
+3231
+create table t1 as select reverse(12) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(right(123,1));
+hex(right(123,1))
+33
+create table t1 as select right(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rpad(1,2,0));
+hex(rpad(1,2,0))
+3130
+create table t1 as select rpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rtrim(1));
+hex(rtrim(1))
+31
+create table t1 as select rtrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(soundex(1));
+hex(soundex(1))
+
+create table t1 as select soundex(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(substring(1,1,1));
+hex(substring(1,1,1))
+31
+create table t1 as select substring(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(trim(1));
+hex(trim(1))
+31
+create table t1 as select trim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ucase(1));
+hex(ucase(1))
+31
+create table t1 as select ucase(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(upper(1));
+hex(upper(1))
+31
+create table t1 as select upper(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat(' ', 64) as a limit 0;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(64) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("1.1"), ("2.1");
+select a, hex(a) from t1;
+a hex(a)
+1.1 312E31
+2.1 322E31
+update t1 set a= a + 0.1;
+select a, hex(a) from t1;
+a hex(a)
+1.2000000000000002 312E32303030303030303030303030303032
+2.2 322E32
+drop table t1;
+create table t1 (a tinyint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303031 001
+303130 010
+313030 100
+drop table t1;
+create table t1 (a tinyint(4) zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303031 0001
+30303130 0010
+30313030 0100
+drop table t1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E3435
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(6) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303031 00001
+3030303130 00010
+3030313030 00100
+3031303030 01000
+3130303030 10000
+drop table t1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(9) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303031 00000001
+3030303030303130 00000010
+3030303030313030 00000100
+3030303031303030 00001000
+3030303130303030 00010000
+drop table t1;
+create table t1 (a int);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303031 0000000001
+30303030303030303130 0000000010
+30303030303030313030 0000000100
+30303030303031303030 0000001000
+30303030303130303030 0000010000
+drop table t1;
+create table t1 (a bigint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+31
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+3030303030303030303030303030303030303031 00000000000000000001
+3030303030303030303030303030303030303130 00000000000000000010
+3030303030303030303030303030303030313030 00000000000000000100
+3030303030303030303030303030303031303030 00000000000000001000
+3030303030303030303030303030303130303030 00000000000000010000
+drop table t1;
+create table t1 (a float);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+303030303030303030312E31 0000000001.1
+303030303030303031302E31 0000000010.1
+303030303030303130302E31 0000000100.1
+303030303030313030302E31 0000001000.1
+303030303031303030302E31 0000010000.1
+drop table t1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3132332E343536
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(22) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+30303030303030303030303030303030303030312E31 00000000000000000001.1
+30303030303030303030303030303030303031302E31 00000000000000000010.1
+30303030303030303030303030303030303130302E31 00000000000000000100.1
+30303030303030303030303030303030313030302E31 00000000000000001000.1
+30303030303030303030303030303031303030302E31 00000000000000010000.1
+drop table t1;
+create table t1 (a year(2));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+3031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a year);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+32303031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bit(64));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0000000000000001
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(64) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+select hex(concat(a)) from t1;
+hex(concat(a))
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+select concat(a) from t1;
+concat(a)
+0000-00-00 00:00:00
+2001-02-03 04:05:06
+1980-02-03 04:05:06
+2001-02-03 04:05:06
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D3033
+323030312D30322D3033
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+select hex(concat(a)) from t1;
+hex(concat(a))
+30303A30303A3031
+30313A30323A3033
+select concat(a) from t1;
+concat(a)
+00:00:01
+01:02:03
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(8) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+select hex(concat(a)) from t1;
+hex(concat(a))
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(3) YES NULL
+select hex(a) from v1;
+hex(a)
+303031
+303130
+313030
+drop table t1;
+drop view v1;
+create table t1 (a tinyint(30) zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(30) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030303030303030303030303030303030303030303031
+303030303030303030303030303030303030303030303030303030303130
+303030303030303030303030303030303030303030303030303030313030
+drop table t1;
+drop view v1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E3435
+drop table t1;
+drop view v1;
+create table t1 (a smallint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(6) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(5) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303031
+3030303130
+3030313030
+3031303030
+3130303030
+drop table t1;
+drop view v1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(9) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303031
+3030303030303130
+3030303030313030
+3030303031303030
+3030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a int);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(11) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303031
+30303030303030303130
+30303030303030313030
+30303030303031303030
+30303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a bigint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+31
+drop table t1;
+drop view v1;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+3030303030303030303030303030303030303031
+3030303030303030303030303030303030303130
+3030303030303030303030303030303030313030
+3030303030303030303030303030303031303030
+3030303030303030303030303030303130303030
+drop table t1;
+drop view v1;
+create table t1 (a float);
+insert into t1 values (123.456);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+303030303030303030312E31
+303030303030303031302E31
+303030303030303130302E31
+303030303030313030302E31
+303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select concat(a) from t1;
+concat(a)
+123.456
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+3132332E343536
+drop table t1;
+drop view v1;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+30303030303030303030303030303030303030312E31
+30303030303030303030303030303030303031302E31
+30303030303030303030303030303030303130302E31
+30303030303030303030303030303030313030302E31
+30303030303030303030303030303031303030302E31
+drop table t1;
+drop view v1;
+create table t1 (a year(2));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(2) YES NULL
+select hex(a) from v1;
+hex(a)
+3031
+drop table t1;
+drop view v1;
+create table t1 (a year);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+32303031
+drop table t1;
+drop view v1;
+create table t1 (a bit(64));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(64) YES NULL
+select hex(a) from v1;
+hex(a)
+0000000000000001
+drop table t1;
+drop view v1;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) NO
+select hex(a) from v1;
+hex(a)
+303030302D30302D30302030303A30303A3030
+323030312D30322D30332030343A30353A3036
+313938302D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D3033
+323030312D30322D3033
+drop table t1;
+drop view v1;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+30303A30303A3031
+30313A30323A3033
+drop table t1;
+drop view v1;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) YES NULL
+select hex(a) from v1;
+hex(a)
+323030312D30322D30332030343A30353A3036
+323030312D30322D30332030343A30353A3036
+drop table t1;
+drop view v1;
+create function f1 (par1 int) returns int
+begin
+return concat(par1);
+end|
+set @a= f1(1);
+select hex(@a);
+hex(@a)
+1
+select hex(concat(f1(1)));
+hex(concat(f1(1)))
+31
+create table t1 as select f1(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(1)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(11) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 decimal(18,2)) returns decimal(18,2)
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` decimal(18,2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(20) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 float) returns float
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` float DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(12) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 date) returns date
+begin
+return concat(par1);
+end|
+set @a= f1(cast('2001-01-02' as date));
+select hex(@a);
+hex(@a)
+323030312D30312D3032
+select hex(concat(f1(cast('2001-01-02' as date))));
+hex(concat(f1(cast('2001-01-02' as date))))
+323030312D30312D3032
+create table t1 as select f1(cast('2001-01-02' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` date DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(10) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+#
+# End of WL#2649 Number-to-string conversions
+#
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_ldml.result b/mysql-test/r/ctype_ldml.result
index 3373e31539f..433078a2a07 100644
--- a/mysql-test/r/ctype_ldml.result
+++ b/mysql-test/r/ctype_ldml.result
@@ -53,6 +53,33 @@ select * from t1 where c1='b';
c1
a
drop table t1;
+show collation like 'utf8mb4_test_ci';
+Collation Charset Id Default Compiled Sortlen
+utf8mb4_test_ci utf8mb4 326 8
+create table t1 (c1 char(1) character set utf8mb4 collate utf8mb4_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+c1
+a
+drop table t1;
+show collation like 'utf16_test_ci';
+Collation Charset Id Default Compiled Sortlen
+utf16_test_ci utf16 327 8
+create table t1 (c1 char(1) character set utf16 collate utf16_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+c1
+a
+drop table t1;
+show collation like 'utf32_test_ci';
+Collation Charset Id Default Compiled Sortlen
+utf32_test_ci utf32 391 8
+create table t1 (c1 char(1) character set utf32 collate utf32_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+c1
+a
+drop table t1;
CREATE TABLE t1 (
col1 varchar(100) character set utf8 collate utf8_test_ci
);
@@ -373,16 +400,22 @@ select "foo" = "foo " collate latin1_test;
The following tests check that two-byte collation IDs work
select * from information_schema.collations where id>256 order by id;
COLLATION_NAME CHARACTER_SET_NAME ID IS_DEFAULT IS_COMPILED SORTLEN
+utf8mb4_test_ci utf8mb4 326 8
+utf16_test_ci utf16 327 8
utf8_phone_ci utf8 352 8
utf8_test_ci utf8 353 8
ucs2_test_ci ucs2 358 8
ucs2_vn_ci ucs2 359 8
+utf32_test_ci utf32 391 8
utf8_maxuserid_ci utf8 2047 8
show collation like '%test%';
Collation Charset Id Default Compiled Sortlen
latin1_test latin1 99 Yes 1
utf8_test_ci utf8 353 8
ucs2_test_ci ucs2 358 8
+utf8mb4_test_ci utf8mb4 326 8
+utf16_test_ci utf16 327 8
+utf32_test_ci utf32 391 8
show collation like 'ucs2_vn_ci';
Collation Charset Id Default Compiled Sortlen
ucs2_vn_ci ucs2 359 8
diff --git a/mysql-test/r/ctype_many.result b/mysql-test/r/ctype_many.result
index 89e05bf4484..4730b4df668 100644
--- a/mysql-test/r/ctype_many.result
+++ b/mysql-test/r/ctype_many.result
@@ -1683,3 +1683,59 @@ ARMENIAN CAPIT DA 2
ARMENIAN CAPIT ECH 2
ARMENIAN CAPIT ZA 2
DROP TABLE t1;
+#
+# WL#1213 Implement 4-byte UTF8, UTF16 and UTF32
+# Testing that only utf8mb4 is superset for utf8
+# No other Unicode character set pairs have superset/subset relations
+#
+CREATE TABLE t1 (
+utf8 CHAR CHARACTER SET utf8,
+utf8mb4 CHAR CHARACTER SET utf8mb4,
+ucs2 CHAR CHARACTER SET ucs2,
+utf16 CHAR CHARACTER SET utf16,
+utf32 CHAR CHARACTER SET utf32
+);
+INSERT INTO t1 VALUES ('','','','','');
+SELECT CHARSET(CONCAT(utf8, utf8mb4)) FROM t1;
+CHARSET(CONCAT(utf8, utf8mb4))
+utf8mb4
+SELECT CHARSET(CONCAT(utf8, ucs2)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (ucs2_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf8, utf16)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf16_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf8, utf32)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf32_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf8mb4, utf8)) FROM t1;
+CHARSET(CONCAT(utf8mb4, utf8))
+utf8mb4
+SELECT CHARSET(CONCAT(utf8mb4, ucs2)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (ucs2_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf8mb4, utf16)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf16_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf8mb4, utf32)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf32_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(ucs2, utf8)) FROM t1;
+ERROR HY000: Illegal mix of collations (ucs2_general_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(ucs2, utf8mb4)) FROM t1;
+ERROR HY000: Illegal mix of collations (ucs2_general_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(ucs2, utf16)) FROM t1;
+ERROR HY000: Illegal mix of collations (ucs2_general_ci,IMPLICIT) and (utf16_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(ucs2, utf32)) FROM t1;
+ERROR HY000: Illegal mix of collations (ucs2_general_ci,IMPLICIT) and (utf32_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf16, utf8)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf16_general_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf16, ucs2)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf16_general_ci,IMPLICIT) and (ucs2_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf16, utf8mb4)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf16_general_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf16, utf32)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf16_general_ci,IMPLICIT) and (utf32_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf32, utf8)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf32_general_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf32, ucs2)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf32_general_ci,IMPLICIT) and (ucs2_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf32, utf8mb4)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf32_general_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation 'concat'
+SELECT CHARSET(CONCAT(utf32, utf16)) FROM t1;
+ERROR HY000: Illegal mix of collations (utf32_general_ci,IMPLICIT) and (utf16_general_ci,IMPLICIT) for operation 'concat'
+DROP TABLE t1;
diff --git a/mysql-test/r/ctype_mb.result b/mysql-test/r/ctype_mb.result
index aa5b4ae8189..5c578e3356c 100644
--- a/mysql-test/r/ctype_mb.result
+++ b/mysql-test/r/ctype_mb.result
@@ -32,8 +32,8 @@ t1 CREATE TABLE `t1` (
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 key_a 1 a A NULL 3 NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 key_a 1 a A NULL 3 NULL YES BTREE
ALTER TABLE t1 CHANGE a a CHAR(4);
SHOW CREATE TABLE t1;
Table Create Table
@@ -42,8 +42,8 @@ t1 CREATE TABLE `t1` (
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 key_a 1 a A NULL 3 NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 key_a 1 a A NULL 3 NULL YES BTREE
ALTER TABLE t1 CHANGE a a CHAR(4) CHARACTER SET utf8;
SHOW CREATE TABLE t1;
Table Create Table
@@ -52,6 +52,6 @@ t1 CREATE TABLE `t1` (
KEY `key_a` (`a`(3))
) ENGINE=MyISAM DEFAULT CHARSET=latin1
SHOW KEYS FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 key_a 1 a A NULL 3 NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 key_a 1 a A NULL 3 NULL YES BTREE
DROP TABLE t1;
diff --git a/mysql-test/r/ctype_sjis.result b/mysql-test/r/ctype_sjis.result
index f450dd0488d..78827b5b907 100644
--- a/mysql-test/r/ctype_sjis.result
+++ b/mysql-test/r/ctype_sjis.result
@@ -502,6 +502,14056 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
code a
+#
+# WL#3090 Japanese Character Set adjustments
+# Test sjis->Unicode conversion
+#
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+HEX(a) b
+8140 E38080
+8141 E38081
+8142 E38082
+8143 EFBC8C
+8144 EFBC8E
+8145 E383BB
+8146 EFBC9A
+8147 EFBC9B
+8148 EFBC9F
+8149 EFBC81
+814A E3829B
+814B E3829C
+814C C2B4
+814D EFBD80
+814E C2A8
+814F EFBCBE
+8150 EFBFA3
+8151 EFBCBF
+8152 E383BD
+8153 E383BE
+8154 E3829D
+8155 E3829E
+8156 E38083
+8157 E4BB9D
+8158 E38085
+8159 E38086
+815A E38087
+815B E383BC
+815C E28095
+815D E28090
+815E EFBC8F
+815F 5C
+8160 E3809C
+8161 E28096
+8162 EFBD9C
+8163 E280A6
+8164 E280A5
+8165 E28098
+8166 E28099
+8167 E2809C
+8168 E2809D
+8169 EFBC88
+816A EFBC89
+816B E38094
+816C E38095
+816D EFBCBB
+816E EFBCBD
+816F EFBD9B
+8170 EFBD9D
+8171 E38088
+8172 E38089
+8173 E3808A
+8174 E3808B
+8175 E3808C
+8176 E3808D
+8177 E3808E
+8178 E3808F
+8179 E38090
+817A E38091
+817B EFBC8B
+817C E28892
+817D C2B1
+817E C397
+8180 C3B7
+8181 EFBC9D
+8182 E289A0
+8183 EFBC9C
+8184 EFBC9E
+8185 E289A6
+8186 E289A7
+8187 E2889E
+8188 E288B4
+8189 E29982
+818A E29980
+818B C2B0
+818C E280B2
+818D E280B3
+818E E28483
+818F EFBFA5
+8190 EFBC84
+8191 C2A2
+8192 C2A3
+8193 EFBC85
+8194 EFBC83
+8195 EFBC86
+8196 EFBC8A
+8197 EFBCA0
+8198 C2A7
+8199 E29886
+819A E29885
+819B E2978B
+819C E2978F
+819D E2978E
+819E E29787
+819F E29786
+81A0 E296A1
+81A1 E296A0
+81A2 E296B3
+81A3 E296B2
+81A4 E296BD
+81A5 E296BC
+81A6 E280BB
+81A7 E38092
+81A8 E28692
+81A9 E28690
+81AA E28691
+81AB E28693
+81AC E38093
+81B8 E28888
+81B9 E2888B
+81BA E28A86
+81BB E28A87
+81BC E28A82
+81BD E28A83
+81BE E288AA
+81BF E288A9
+81C8 E288A7
+81C9 E288A8
+81CA C2AC
+81CB E28792
+81CC E28794
+81CD E28880
+81CE E28883
+81DA E288A0
+81DB E28AA5
+81DC E28C92
+81DD E28882
+81DE E28887
+81DF E289A1
+81E0 E28992
+81E1 E289AA
+81E2 E289AB
+81E3 E2889A
+81E4 E288BD
+81E5 E2889D
+81E6 E288B5
+81E7 E288AB
+81E8 E288AC
+81F0 E284AB
+81F1 E280B0
+81F2 E299AF
+81F3 E299AD
+81F4 E299AA
+81F5 E280A0
+81F6 E280A1
+81F7 C2B6
+81FC E297AF
+824F EFBC90
+8250 EFBC91
+8251 EFBC92
+8252 EFBC93
+8253 EFBC94
+8254 EFBC95
+8255 EFBC96
+8256 EFBC97
+8257 EFBC98
+8258 EFBC99
+8260 EFBCA1
+8261 EFBCA2
+8262 EFBCA3
+8263 EFBCA4
+8264 EFBCA5
+8265 EFBCA6
+8266 EFBCA7
+8267 EFBCA8
+8268 EFBCA9
+8269 EFBCAA
+826A EFBCAB
+826B EFBCAC
+826C EFBCAD
+826D EFBCAE
+826E EFBCAF
+826F EFBCB0
+8270 EFBCB1
+8271 EFBCB2
+8272 EFBCB3
+8273 EFBCB4
+8274 EFBCB5
+8275 EFBCB6
+8276 EFBCB7
+8277 EFBCB8
+8278 EFBCB9
+8279 EFBCBA
+8281 EFBD81
+8282 EFBD82
+8283 EFBD83
+8284 EFBD84
+8285 EFBD85
+8286 EFBD86
+8287 EFBD87
+8288 EFBD88
+8289 EFBD89
+828A EFBD8A
+828B EFBD8B
+828C EFBD8C
+828D EFBD8D
+828E EFBD8E
+828F EFBD8F
+8290 EFBD90
+8291 EFBD91
+8292 EFBD92
+8293 EFBD93
+8294 EFBD94
+8295 EFBD95
+8296 EFBD96
+8297 EFBD97
+8298 EFBD98
+8299 EFBD99
+829A EFBD9A
+829F E38181
+82A0 E38182
+82A1 E38183
+82A2 E38184
+82A3 E38185
+82A4 E38186
+82A5 E38187
+82A6 E38188
+82A7 E38189
+82A8 E3818A
+82A9 E3818B
+82AA E3818C
+82AB E3818D
+82AC E3818E
+82AD E3818F
+82AE E38190
+82AF E38191
+82B0 E38192
+82B1 E38193
+82B2 E38194
+82B3 E38195
+82B4 E38196
+82B5 E38197
+82B6 E38198
+82B7 E38199
+82B8 E3819A
+82B9 E3819B
+82BA E3819C
+82BB E3819D
+82BC E3819E
+82BD E3819F
+82BE E381A0
+82BF E381A1
+82C0 E381A2
+82C1 E381A3
+82C2 E381A4
+82C3 E381A5
+82C4 E381A6
+82C5 E381A7
+82C6 E381A8
+82C7 E381A9
+82C8 E381AA
+82C9 E381AB
+82CA E381AC
+82CB E381AD
+82CC E381AE
+82CD E381AF
+82CE E381B0
+82CF E381B1
+82D0 E381B2
+82D1 E381B3
+82D2 E381B4
+82D3 E381B5
+82D4 E381B6
+82D5 E381B7
+82D6 E381B8
+82D7 E381B9
+82D8 E381BA
+82D9 E381BB
+82DA E381BC
+82DB E381BD
+82DC E381BE
+82DD E381BF
+82DE E38280
+82DF E38281
+82E0 E38282
+82E1 E38283
+82E2 E38284
+82E3 E38285
+82E4 E38286
+82E5 E38287
+82E6 E38288
+82E7 E38289
+82E8 E3828A
+82E9 E3828B
+82EA E3828C
+82EB E3828D
+82EC E3828E
+82ED E3828F
+82EE E38290
+82EF E38291
+82F0 E38292
+82F1 E38293
+8340 E382A1
+8341 E382A2
+8342 E382A3
+8343 E382A4
+8344 E382A5
+8345 E382A6
+8346 E382A7
+8347 E382A8
+8348 E382A9
+8349 E382AA
+834A E382AB
+834B E382AC
+834C E382AD
+834D E382AE
+834E E382AF
+834F E382B0
+8350 E382B1
+8351 E382B2
+8352 E382B3
+8353 E382B4
+8354 E382B5
+8355 E382B6
+8356 E382B7
+8357 E382B8
+8358 E382B9
+8359 E382BA
+835A E382BB
+835B E382BC
+835C E382BD
+835D E382BE
+835E E382BF
+835F E38380
+8360 E38381
+8361 E38382
+8362 E38383
+8363 E38384
+8364 E38385
+8365 E38386
+8366 E38387
+8367 E38388
+8368 E38389
+8369 E3838A
+836A E3838B
+836B E3838C
+836C E3838D
+836D E3838E
+836E E3838F
+836F E38390
+8370 E38391
+8371 E38392
+8372 E38393
+8373 E38394
+8374 E38395
+8375 E38396
+8376 E38397
+8377 E38398
+8378 E38399
+8379 E3839A
+837A E3839B
+837B E3839C
+837C E3839D
+837D E3839E
+837E E3839F
+8380 E383A0
+8381 E383A1
+8382 E383A2
+8383 E383A3
+8384 E383A4
+8385 E383A5
+8386 E383A6
+8387 E383A7
+8388 E383A8
+8389 E383A9
+838A E383AA
+838B E383AB
+838C E383AC
+838D E383AD
+838E E383AE
+838F E383AF
+8390 E383B0
+8391 E383B1
+8392 E383B2
+8393 E383B3
+8394 E383B4
+8395 E383B5
+8396 E383B6
+839F CE91
+83A0 CE92
+83A1 CE93
+83A2 CE94
+83A3 CE95
+83A4 CE96
+83A5 CE97
+83A6 CE98
+83A7 CE99
+83A8 CE9A
+83A9 CE9B
+83AA CE9C
+83AB CE9D
+83AC CE9E
+83AD CE9F
+83AE CEA0
+83AF CEA1
+83B0 CEA3
+83B1 CEA4
+83B2 CEA5
+83B3 CEA6
+83B4 CEA7
+83B5 CEA8
+83B6 CEA9
+83BF CEB1
+83C0 CEB2
+83C1 CEB3
+83C2 CEB4
+83C3 CEB5
+83C4 CEB6
+83C5 CEB7
+83C6 CEB8
+83C7 CEB9
+83C8 CEBA
+83C9 CEBB
+83CA CEBC
+83CB CEBD
+83CC CEBE
+83CD CEBF
+83CE CF80
+83CF CF81
+83D0 CF83
+83D1 CF84
+83D2 CF85
+83D3 CF86
+83D4 CF87
+83D5 CF88
+83D6 CF89
+8440 D090
+8441 D091
+8442 D092
+8443 D093
+8444 D094
+8445 D095
+8446 D081
+8447 D096
+8448 D097
+8449 D098
+844A D099
+844B D09A
+844C D09B
+844D D09C
+844E D09D
+844F D09E
+8450 D09F
+8451 D0A0
+8452 D0A1
+8453 D0A2
+8454 D0A3
+8455 D0A4
+8456 D0A5
+8457 D0A6
+8458 D0A7
+8459 D0A8
+845A D0A9
+845B D0AA
+845C D0AB
+845D D0AC
+845E D0AD
+845F D0AE
+8460 D0AF
+8470 D0B0
+8471 D0B1
+8472 D0B2
+8473 D0B3
+8474 D0B4
+8475 D0B5
+8476 D191
+8477 D0B6
+8478 D0B7
+8479 D0B8
+847A D0B9
+847B D0BA
+847C D0BB
+847D D0BC
+847E D0BD
+8480 D0BE
+8481 D0BF
+8482 D180
+8483 D181
+8484 D182
+8485 D183
+8486 D184
+8487 D185
+8488 D186
+8489 D187
+848A D188
+848B D189
+848C D18A
+848D D18B
+848E D18C
+848F D18D
+8490 D18E
+8491 D18F
+849F E29480
+84A0 E29482
+84A1 E2948C
+84A2 E29490
+84A3 E29498
+84A4 E29494
+84A5 E2949C
+84A6 E294AC
+84A7 E294A4
+84A8 E294B4
+84A9 E294BC
+84AA E29481
+84AB E29483
+84AC E2948F
+84AD E29493
+84AE E2949B
+84AF E29497
+84B0 E294A3
+84B1 E294B3
+84B2 E294AB
+84B3 E294BB
+84B4 E2958B
+84B5 E294A0
+84B6 E294AF
+84B7 E294A8
+84B8 E294B7
+84B9 E294BF
+84BA E2949D
+84BB E294B0
+84BC E294A5
+84BD E294B8
+84BE E29582
+889F E4BA9C
+88A0 E59496
+88A1 E5A883
+88A2 E998BF
+88A3 E59380
+88A4 E6849B
+88A5 E68CA8
+88A6 E5A7B6
+88A7 E980A2
+88A8 E891B5
+88A9 E88C9C
+88AA E7A990
+88AB E682AA
+88AC E68FA1
+88AD E6B8A5
+88AE E697AD
+88AF E891A6
+88B0 E88AA6
+88B1 E9AFB5
+88B2 E6A293
+88B3 E59CA7
+88B4 E696A1
+88B5 E689B1
+88B6 E5AE9B
+88B7 E5A790
+88B8 E899BB
+88B9 E9A3B4
+88BA E7B5A2
+88BB E7B6BE
+88BC E9AE8E
+88BD E68896
+88BE E7B29F
+88BF E8A2B7
+88C0 E5AE89
+88C1 E5BAB5
+88C2 E68C89
+88C3 E69A97
+88C4 E6A188
+88C5 E99787
+88C6 E99E8D
+88C7 E69D8F
+88C8 E4BBA5
+88C9 E4BC8A
+88CA E4BD8D
+88CB E4BE9D
+88CC E58189
+88CD E59BB2
+88CE E5A4B7
+88CF E5A794
+88D0 E5A881
+88D1 E5B089
+88D2 E6839F
+88D3 E6848F
+88D4 E685B0
+88D5 E69893
+88D6 E6A485
+88D7 E782BA
+88D8 E7958F
+88D9 E795B0
+88DA E7A7BB
+88DB E7B6AD
+88DC E7B7AF
+88DD E88383
+88DE E8908E
+88DF E8A1A3
+88E0 E8AC82
+88E1 E98195
+88E2 E981BA
+88E3 E58CBB
+88E4 E4BA95
+88E5 E4BAA5
+88E6 E59F9F
+88E7 E882B2
+88E8 E98381
+88E9 E7A3AF
+88EA E4B880
+88EB E5A3B1
+88EC E6BAA2
+88ED E980B8
+88EE E7A8B2
+88EF E88CA8
+88F0 E88A8B
+88F1 E9B0AF
+88F2 E58581
+88F3 E58DB0
+88F4 E592BD
+88F5 E593A1
+88F6 E59BA0
+88F7 E5A7BB
+88F8 E5BC95
+88F9 E9A3B2
+88FA E6B7AB
+88FB E883A4
+88FC E894AD
+8940 E999A2
+8941 E999B0
+8942 E99AA0
+8943 E99FBB
+8944 E5908B
+8945 E58FB3
+8946 E5AE87
+8947 E7838F
+8948 E7BEBD
+8949 E8BF82
+894A E99BA8
+894B E58DAF
+894C E9B59C
+894D E7AABA
+894E E4B891
+894F E7A293
+8950 E887BC
+8951 E6B8A6
+8952 E59898
+8953 E59484
+8954 E6AC9D
+8955 E8949A
+8956 E9B0BB
+8957 E5A7A5
+8958 E58EA9
+8959 E6B5A6
+895A E7939C
+895B E9968F
+895C E59982
+895D E4BA91
+895E E9818B
+895F E99BB2
+8960 E88D8F
+8961 E9A48C
+8962 E58FA1
+8963 E596B6
+8964 E5ACB0
+8965 E5BDB1
+8966 E698A0
+8967 E69BB3
+8968 E6A084
+8969 E6B0B8
+896A E6B3B3
+896B E6B4A9
+896C E7919B
+896D E79B88
+896E E7A98E
+896F E9A0B4
+8970 E88BB1
+8971 E8A19B
+8972 E8A9A0
+8973 E98BAD
+8974 E6B6B2
+8975 E796AB
+8976 E79B8A
+8977 E9A785
+8978 E682A6
+8979 E8AC81
+897A E8B68A
+897B E996B2
+897C E6A68E
+897D E58EAD
+897E E58686
+8980 E59C92
+8981 E5A0B0
+8982 E5A584
+8983 E5AEB4
+8984 E5BBB6
+8985 E680A8
+8986 E68EA9
+8987 E68FB4
+8988 E6B2BF
+8989 E6BC94
+898A E7828E
+898B E78494
+898C E78599
+898D E78795
+898E E78CBF
+898F E7B881
+8990 E889B6
+8991 E88B91
+8992 E89697
+8993 E981A0
+8994 E9899B
+8995 E9B49B
+8996 E5A1A9
+8997 E696BC
+8998 E6B19A
+8999 E794A5
+899A E587B9
+899B E5A4AE
+899C E5A5A5
+899D E5BE80
+899E E5BF9C
+899F E68ABC
+89A0 E697BA
+89A1 E6A8AA
+89A2 E6ACA7
+89A3 E6AEB4
+89A4 E78E8B
+89A5 E7BF81
+89A6 E8A596
+89A7 E9B4AC
+89A8 E9B48E
+89A9 E9BB84
+89AA E5B2A1
+89AB E6B296
+89AC E88DBB
+89AD E58484
+89AE E5B18B
+89AF E686B6
+89B0 E88786
+89B1 E6A1B6
+89B2 E789A1
+89B3 E4B999
+89B4 E4BFBA
+89B5 E58DB8
+89B6 E681A9
+89B7 E6B8A9
+89B8 E7A98F
+89B9 E99FB3
+89BA E4B88B
+89BB E58C96
+89BC E4BBAE
+89BD E4BD95
+89BE E4BCBD
+89BF E4BEA1
+89C0 E4BDB3
+89C1 E58AA0
+89C2 E58FAF
+89C3 E59889
+89C4 E5A48F
+89C5 E5AB81
+89C6 E5AEB6
+89C7 E5AFA1
+89C8 E7A791
+89C9 E69A87
+89CA E69E9C
+89CB E69EB6
+89CC E6AD8C
+89CD E6B2B3
+89CE E781AB
+89CF E78F82
+89D0 E7A68D
+89D1 E7A6BE
+89D2 E7A8BC
+89D3 E7AE87
+89D4 E88AB1
+89D5 E88B9B
+89D6 E88C84
+89D7 E88DB7
+89D8 E88FAF
+89D9 E88F93
+89DA E89DA6
+89DB E8AAB2
+89DC E598A9
+89DD E8B2A8
+89DE E8BFA6
+89DF E9818E
+89E0 E99C9E
+89E1 E89A8A
+89E2 E4BF84
+89E3 E5B3A8
+89E4 E68891
+89E5 E78999
+89E6 E794BB
+89E7 E887A5
+89E8 E88ABD
+89E9 E89BBE
+89EA E8B380
+89EB E99B85
+89EC E9A493
+89ED E9A795
+89EE E4BB8B
+89EF E4BC9A
+89F0 E8A7A3
+89F1 E59B9E
+89F2 E5A18A
+89F3 E5A38A
+89F4 E5BBBB
+89F5 E5BFAB
+89F6 E680AA
+89F7 E68294
+89F8 E681A2
+89F9 E68790
+89FA E68892
+89FB E68B90
+89FC E694B9
+8A40 E9AD81
+8A41 E699A6
+8A42 E6A2B0
+8A43 E6B5B7
+8A44 E781B0
+8A45 E7958C
+8A46 E79A86
+8A47 E7B5B5
+8A48 E88AA5
+8A49 E89FB9
+8A4A E9968B
+8A4B E99A8E
+8A4C E8B29D
+8A4D E587B1
+8A4E E58ABE
+8A4F E5A496
+8A50 E592B3
+8A51 E5AEB3
+8A52 E5B496
+8A53 E685A8
+8A54 E6A682
+8A55 E6B6AF
+8A56 E7A28D
+8A57 E8938B
+8A58 E8A197
+8A59 E8A9B2
+8A5A E98EA7
+8A5B E9AAB8
+8A5C E6B5AC
+8A5D E9A6A8
+8A5E E89B99
+8A5F E59EA3
+8A60 E69FBF
+8A61 E89B8E
+8A62 E9888E
+8A63 E58A83
+8A64 E59A87
+8A65 E59084
+8A66 E5BB93
+8A67 E68BA1
+8A68 E692B9
+8A69 E6A0BC
+8A6A E6A0B8
+8A6B E6AEBB
+8A6C E78DB2
+8A6D E7A2BA
+8A6E E7A9AB
+8A6F E8A69A
+8A70 E8A792
+8A71 E8B5AB
+8A72 E8BC83
+8A73 E983AD
+8A74 E996A3
+8A75 E99A94
+8A76 E99DA9
+8A77 E5ADA6
+8A78 E5B2B3
+8A79 E6A5BD
+8A7A E9A18D
+8A7B E9A18E
+8A7C E68E9B
+8A7D E7ACA0
+8A7E E6A8AB
+8A80 E6A9BF
+8A81 E6A2B6
+8A82 E9B08D
+8A83 E6BD9F
+8A84 E589B2
+8A85 E5969D
+8A86 E681B0
+8A87 E68BAC
+8A88 E6B4BB
+8A89 E6B887
+8A8A E6BB91
+8A8B E8919B
+8A8C E8A490
+8A8D E8BD84
+8A8E E4B894
+8A8F E9B0B9
+8A90 E58FB6
+8A91 E6A49B
+8A92 E6A8BA
+8A93 E99E84
+8A94 E6A0AA
+8A95 E5859C
+8A96 E7AB83
+8A97 E892B2
+8A98 E9879C
+8A99 E98E8C
+8A9A E5999B
+8A9B E9B4A8
+8A9C E6A0A2
+8A9D E88C85
+8A9E E890B1
+8A9F E7B2A5
+8AA0 E58888
+8AA1 E88B85
+8AA2 E793A6
+8AA3 E4B9BE
+8AA4 E4BE83
+8AA5 E586A0
+8AA6 E5AF92
+8AA7 E5888A
+8AA8 E58B98
+8AA9 E58BA7
+8AAA E5B7BB
+8AAB E5969A
+8AAC E5A0AA
+8AAD E5A7A6
+8AAE E5AE8C
+8AAF E5AE98
+8AB0 E5AF9B
+8AB1 E5B9B2
+8AB2 E5B9B9
+8AB3 E682A3
+8AB4 E6849F
+8AB5 E685A3
+8AB6 E686BE
+8AB7 E68F9B
+8AB8 E695A2
+8AB9 E69F91
+8ABA E6A193
+8ABB E6A3BA
+8ABC E6ACBE
+8ABD E6AD93
+8ABE E6B197
+8ABF E6BCA2
+8AC0 E6BE97
+8AC1 E6BD85
+8AC2 E792B0
+8AC3 E79498
+8AC4 E79BA3
+8AC5 E79C8B
+8AC6 E7ABBF
+8AC7 E7AEA1
+8AC8 E7B0A1
+8AC9 E7B7A9
+8ACA E7BCB6
+8ACB E7BFB0
+8ACC E8829D
+8ACD E889A6
+8ACE E88E9E
+8ACF E8A6B3
+8AD0 E8AB8C
+8AD1 E8B2AB
+8AD2 E98284
+8AD3 E99191
+8AD4 E99693
+8AD5 E99691
+8AD6 E996A2
+8AD7 E999A5
+8AD8 E99F93
+8AD9 E9A4A8
+8ADA E88898
+8ADB E4B8B8
+8ADC E590AB
+8ADD E5B2B8
+8ADE E5B78C
+8ADF E78EA9
+8AE0 E7998C
+8AE1 E79CBC
+8AE2 E5B2A9
+8AE3 E7BFAB
+8AE4 E8B48B
+8AE5 E99B81
+8AE6 E9A091
+8AE7 E9A194
+8AE8 E9A198
+8AE9 E4BC81
+8AEA E4BC8E
+8AEB E58DB1
+8AEC E5969C
+8AED E599A8
+8AEE E59FBA
+8AEF E5A587
+8AF0 E5AC89
+8AF1 E5AF84
+8AF2 E5B290
+8AF3 E5B88C
+8AF4 E5B9BE
+8AF5 E5BF8C
+8AF6 E68FAE
+8AF7 E69CBA
+8AF8 E69797
+8AF9 E697A2
+8AFA E69C9F
+8AFB E6A38B
+8AFC E6A384
+8B40 E6A99F
+8B41 E5B8B0
+8B42 E6AF85
+8B43 E6B097
+8B44 E6B1BD
+8B45 E795BF
+8B46 E7A588
+8B47 E5ADA3
+8B48 E7A880
+8B49 E7B480
+8B4A E5BEBD
+8B4B E8A68F
+8B4C E8A898
+8B4D E8B2B4
+8B4E E8B5B7
+8B4F E8BB8C
+8B50 E8BC9D
+8B51 E9A3A2
+8B52 E9A88E
+8B53 E9ACBC
+8B54 E4BA80
+8B55 E581BD
+8B56 E58480
+8B57 E5A693
+8B58 E5AE9C
+8B59 E688AF
+8B5A E68A80
+8B5B E693AC
+8B5C E6ACBA
+8B5D E78AA0
+8B5E E79691
+8B5F E7A587
+8B60 E7BEA9
+8B61 E89FBB
+8B62 E8AABC
+8B63 E8ADB0
+8B64 E68EAC
+8B65 E88F8A
+8B66 E99EA0
+8B67 E59089
+8B68 E59083
+8B69 E596AB
+8B6A E6A194
+8B6B E6A998
+8B6C E8A9B0
+8B6D E7A0A7
+8B6E E69DB5
+8B6F E9BB8D
+8B70 E58DB4
+8B71 E5AEA2
+8B72 E8849A
+8B73 E89990
+8B74 E98086
+8B75 E4B898
+8B76 E4B985
+8B77 E4BB87
+8B78 E4BC91
+8B79 E58F8A
+8B7A E590B8
+8B7B E5AEAE
+8B7C E5BC93
+8B7D E680A5
+8B7E E69591
+8B80 E69CBD
+8B81 E6B182
+8B82 E6B1B2
+8B83 E6B3A3
+8B84 E781B8
+8B85 E79083
+8B86 E7A9B6
+8B87 E7AAAE
+8B88 E7AC88
+8B89 E7B49A
+8B8A E7B3BE
+8B8B E7B5A6
+8B8C E697A7
+8B8D E7899B
+8B8E E58EBB
+8B8F E5B185
+8B90 E5B7A8
+8B91 E68B92
+8B92 E68BA0
+8B93 E68C99
+8B94 E6B8A0
+8B95 E8999A
+8B96 E8A8B1
+8B97 E8B79D
+8B98 E98BB8
+8B99 E6BC81
+8B9A E7A6A6
+8B9B E9AD9A
+8B9C E4BAA8
+8B9D E4BAAB
+8B9E E4BAAC
+8B9F E4BE9B
+8BA0 E4BEA0
+8BA1 E58391
+8BA2 E58587
+8BA3 E7ABB6
+8BA4 E585B1
+8BA5 E587B6
+8BA6 E58D94
+8BA7 E58CA1
+8BA8 E58DBF
+8BA9 E58FAB
+8BAA E596AC
+8BAB E5A283
+8BAC E5B3A1
+8BAD E5BCB7
+8BAE E5BD8A
+8BAF E680AF
+8BB0 E68190
+8BB1 E681AD
+8BB2 E68C9F
+8BB3 E69599
+8BB4 E6A98B
+8BB5 E6B381
+8BB6 E78B82
+8BB7 E78BAD
+8BB8 E79FAF
+8BB9 E883B8
+8BBA E88485
+8BBB E88888
+8BBC E8958E
+8BBD E983B7
+8BBE E98FA1
+8BBF E99FBF
+8BC0 E9A597
+8BC1 E9A99A
+8BC2 E4BBB0
+8BC3 E5879D
+8BC4 E5B0AD
+8BC5 E69A81
+8BC6 E6A5AD
+8BC7 E5B180
+8BC8 E69BB2
+8BC9 E6A5B5
+8BCA E78E89
+8BCB E6A190
+8BCC E7B281
+8BCD E58385
+8BCE E58BA4
+8BCF E59D87
+8BD0 E5B7BE
+8BD1 E98CA6
+8BD2 E696A4
+8BD3 E6ACA3
+8BD4 E6ACBD
+8BD5 E790B4
+8BD6 E7A681
+8BD7 E7A6BD
+8BD8 E7AD8B
+8BD9 E7B78A
+8BDA E88AB9
+8BDB E88F8C
+8BDC E8A1BF
+8BDD E8A59F
+8BDE E8ACB9
+8BDF E8BF91
+8BE0 E98791
+8BE1 E5909F
+8BE2 E98A80
+8BE3 E4B99D
+8BE4 E580B6
+8BE5 E58FA5
+8BE6 E58CBA
+8BE7 E78B97
+8BE8 E78E96
+8BE9 E79FA9
+8BEA E88BA6
+8BEB E8BAAF
+8BEC E9A786
+8BED E9A788
+8BEE E9A792
+8BEF E585B7
+8BF0 E6849A
+8BF1 E8999E
+8BF2 E596B0
+8BF3 E7A9BA
+8BF4 E581B6
+8BF5 E5AF93
+8BF6 E98187
+8BF7 E99A85
+8BF8 E4B8B2
+8BF9 E6AB9B
+8BFA E987A7
+8BFB E5B191
+8BFC E5B188
+8C40 E68E98
+8C41 E7AA9F
+8C42 E6B293
+8C43 E99DB4
+8C44 E8BDA1
+8C45 E7AAAA
+8C46 E7868A
+8C47 E99A88
+8C48 E7B282
+8C49 E6A097
+8C4A E7B9B0
+8C4B E6A191
+8C4C E98DAC
+8C4D E58BB2
+8C4E E5909B
+8C4F E896AB
+8C50 E8A893
+8C51 E7BEA4
+8C52 E8BB8D
+8C53 E983A1
+8C54 E58DA6
+8C55 E8A288
+8C56 E7A581
+8C57 E4BF82
+8C58 E582BE
+8C59 E58891
+8C5A E58584
+8C5B E59593
+8C5C E59CAD
+8C5D E78FAA
+8C5E E59E8B
+8C5F E5A591
+8C60 E5BDA2
+8C61 E5BE84
+8C62 E681B5
+8C63 E685B6
+8C64 E685A7
+8C65 E686A9
+8C66 E68EB2
+8C67 E690BA
+8C68 E695AC
+8C69 E699AF
+8C6A E6A182
+8C6B E6B893
+8C6C E795A6
+8C6D E7A8BD
+8C6E E7B3BB
+8C6F E7B58C
+8C70 E7B699
+8C71 E7B98B
+8C72 E7BDAB
+8C73 E88C8E
+8C74 E88D8A
+8C75 E89B8D
+8C76 E8A888
+8C77 E8A9A3
+8C78 E8ADA6
+8C79 E8BBBD
+8C7A E9A09A
+8C7B E9B68F
+8C7C E88AB8
+8C7D E8BF8E
+8C7E E9AFA8
+8C80 E58A87
+8C81 E6889F
+8C82 E69283
+8C83 E6BF80
+8C84 E99A99
+8C85 E6A181
+8C86 E58291
+8C87 E6ACA0
+8C88 E6B1BA
+8C89 E6BD94
+8C8A E7A9B4
+8C8B E7B590
+8C8C E8A180
+8C8D E8A8A3
+8C8E E69C88
+8C8F E4BBB6
+8C90 E580B9
+8C91 E580A6
+8C92 E581A5
+8C93 E585BC
+8C94 E588B8
+8C95 E589A3
+8C96 E596A7
+8C97 E59C8F
+8C98 E5A085
+8C99 E5AB8C
+8C9A E5BBBA
+8C9B E686B2
+8C9C E687B8
+8C9D E68BB3
+8C9E E68DB2
+8C9F E6A49C
+8CA0 E6A8A9
+8CA1 E789BD
+8CA2 E78AAC
+8CA3 E78CAE
+8CA4 E7A094
+8CA5 E7A1AF
+8CA6 E7B5B9
+8CA7 E79C8C
+8CA8 E882A9
+8CA9 E8A68B
+8CAA E8AC99
+8CAB E8B3A2
+8CAC E8BB92
+8CAD E981A3
+8CAE E98DB5
+8CAF E999BA
+8CB0 E9A195
+8CB1 E9A893
+8CB2 E9B9B8
+8CB3 E58583
+8CB4 E58E9F
+8CB5 E58EB3
+8CB6 E5B9BB
+8CB7 E5BCA6
+8CB8 E6B89B
+8CB9 E6BA90
+8CBA E78E84
+8CBB E78FBE
+8CBC E7B583
+8CBD E888B7
+8CBE E8A880
+8CBF E8ABBA
+8CC0 E99990
+8CC1 E4B98E
+8CC2 E5808B
+8CC3 E58FA4
+8CC4 E591BC
+8CC5 E59BBA
+8CC6 E5A791
+8CC7 E5ADA4
+8CC8 E5B7B1
+8CC9 E5BAAB
+8CCA E5BCA7
+8CCB E688B8
+8CCC E69585
+8CCD E69EAF
+8CCE E6B996
+8CCF E78B90
+8CD0 E7B38A
+8CD1 E8A2B4
+8CD2 E882A1
+8CD3 E883A1
+8CD4 E88FB0
+8CD5 E8998E
+8CD6 E8AA87
+8CD7 E8B7A8
+8CD8 E988B7
+8CD9 E99B87
+8CDA E9A1A7
+8CDB E9BC93
+8CDC E4BA94
+8CDD E4BA92
+8CDE E4BC8D
+8CDF E58D88
+8CE0 E59189
+8CE1 E590BE
+8CE2 E5A8AF
+8CE3 E5BE8C
+8CE4 E5BEA1
+8CE5 E6829F
+8CE6 E6A2A7
+8CE7 E6AA8E
+8CE8 E7919A
+8CE9 E7A281
+8CEA E8AA9E
+8CEB E8AAA4
+8CEC E8ADB7
+8CED E98690
+8CEE E4B99E
+8CEF E9AF89
+8CF0 E4BAA4
+8CF1 E4BDBC
+8CF2 E4BEAF
+8CF3 E58099
+8CF4 E58096
+8CF5 E58589
+8CF6 E585AC
+8CF7 E58A9F
+8CF8 E58AB9
+8CF9 E58BBE
+8CFA E58E9A
+8CFB E58FA3
+8CFC E59091
+8D40 E5908E
+8D41 E59689
+8D42 E59D91
+8D43 E59EA2
+8D44 E5A5BD
+8D45 E5AD94
+8D46 E5AD9D
+8D47 E5AE8F
+8D48 E5B7A5
+8D49 E5B7A7
+8D4A E5B7B7
+8D4B E5B9B8
+8D4C E5BA83
+8D4D E5BA9A
+8D4E E5BAB7
+8D4F E5BC98
+8D50 E68192
+8D51 E6858C
+8D52 E68A97
+8D53 E68B98
+8D54 E68EA7
+8D55 E694BB
+8D56 E69882
+8D57 E69983
+8D58 E69BB4
+8D59 E69DAD
+8D5A E6A0A1
+8D5B E6A297
+8D5C E6A78B
+8D5D E6B19F
+8D5E E6B4AA
+8D5F E6B5A9
+8D60 E6B8AF
+8D61 E6BA9D
+8D62 E794B2
+8D63 E79A87
+8D64 E7A1AC
+8D65 E7A8BF
+8D66 E7B3A0
+8D67 E7B485
+8D68 E7B498
+8D69 E7B59E
+8D6A E7B6B1
+8D6B E88095
+8D6C E88083
+8D6D E882AF
+8D6E E882B1
+8D6F E88594
+8D70 E8868F
+8D71 E888AA
+8D72 E88D92
+8D73 E8A18C
+8D74 E8A1A1
+8D75 E8AC9B
+8D76 E8B2A2
+8D77 E8B3BC
+8D78 E9838A
+8D79 E985B5
+8D7A E989B1
+8D7B E7A0BF
+8D7C E98BBC
+8D7D E996A4
+8D7E E9998D
+8D80 E9A085
+8D81 E9A699
+8D82 E9AB98
+8D83 E9B4BB
+8D84 E5899B
+8D85 E58AAB
+8D86 E58FB7
+8D87 E59088
+8D88 E5A395
+8D89 E68BB7
+8D8A E6BFA0
+8D8B E8B1AA
+8D8C E8BD9F
+8D8D E9BAB9
+8D8E E5858B
+8D8F E588BB
+8D90 E5918A
+8D91 E59BBD
+8D92 E7A980
+8D93 E985B7
+8D94 E9B5A0
+8D95 E9BB92
+8D96 E78D84
+8D97 E6BC89
+8D98 E885B0
+8D99 E79491
+8D9A E5BFBD
+8D9B E6839A
+8D9C E9AAA8
+8D9D E78B9B
+8D9E E8BEBC
+8D9F E6ADA4
+8DA0 E9A083
+8DA1 E4BB8A
+8DA2 E59BB0
+8DA3 E59DA4
+8DA4 E5A2BE
+8DA5 E5A99A
+8DA6 E681A8
+8DA7 E68787
+8DA8 E6988F
+8DA9 E69886
+8DAA E6A0B9
+8DAB E6A2B1
+8DAC E6B7B7
+8DAD E79795
+8DAE E7B4BA
+8DAF E889AE
+8DB0 E9AD82
+8DB1 E4BA9B
+8DB2 E4BD90
+8DB3 E58F89
+8DB4 E59486
+8DB5 E5B5AF
+8DB6 E5B7A6
+8DB7 E5B7AE
+8DB8 E69FBB
+8DB9 E6B299
+8DBA E791B3
+8DBB E7A082
+8DBC E8A990
+8DBD E98E96
+8DBE E8A39F
+8DBF E59D90
+8DC0 E5BAA7
+8DC1 E68CAB
+8DC2 E582B5
+8DC3 E582AC
+8DC4 E5868D
+8DC5 E69C80
+8DC6 E59389
+8DC7 E5A19E
+8DC8 E5A6BB
+8DC9 E5AEB0
+8DCA E5BDA9
+8DCB E6898D
+8DCC E68EA1
+8DCD E6A0BD
+8DCE E6ADB3
+8DCF E6B888
+8DD0 E781BD
+8DD1 E98787
+8DD2 E78A80
+8DD3 E7A095
+8DD4 E7A0A6
+8DD5 E7A5AD
+8DD6 E6968E
+8DD7 E7B4B0
+8DD8 E88F9C
+8DD9 E8A381
+8DDA E8BC89
+8DDB E99A9B
+8DDC E589A4
+8DDD E59CA8
+8DDE E69D90
+8DDF E7BDAA
+8DE0 E8B2A1
+8DE1 E586B4
+8DE2 E59D82
+8DE3 E998AA
+8DE4 E5A0BA
+8DE5 E6A68A
+8DE6 E882B4
+8DE7 E592B2
+8DE8 E5B48E
+8DE9 E59FBC
+8DEA E7A295
+8DEB E9B7BA
+8DEC E4BD9C
+8DED E5898A
+8DEE E5928B
+8DEF E690BE
+8DF0 E698A8
+8DF1 E69C94
+8DF2 E69FB5
+8DF3 E7AA84
+8DF4 E7AD96
+8DF5 E7B4A2
+8DF6 E98CAF
+8DF7 E6A19C
+8DF8 E9AEAD
+8DF9 E7ACB9
+8DFA E58C99
+8DFB E5868A
+8DFC E588B7
+8E40 E5AF9F
+8E41 E68BB6
+8E42 E692AE
+8E43 E693A6
+8E44 E69CAD
+8E45 E6AEBA
+8E46 E896A9
+8E47 E99B91
+8E48 E79A90
+8E49 E9AF96
+8E4A E68D8C
+8E4B E98C86
+8E4C E9AEAB
+8E4D E79ABF
+8E4E E69992
+8E4F E4B889
+8E50 E58298
+8E51 E58F82
+8E52 E5B1B1
+8E53 E683A8
+8E54 E69292
+8E55 E695A3
+8E56 E6A19F
+8E57 E787A6
+8E58 E78F8A
+8E59 E794A3
+8E5A E7AE97
+8E5B E7BA82
+8E5C E89A95
+8E5D E8AE83
+8E5E E8B39B
+8E5F E985B8
+8E60 E9A490
+8E61 E696AC
+8E62 E69AAB
+8E63 E6AE8B
+8E64 E4BB95
+8E65 E4BB94
+8E66 E4BCBA
+8E67 E4BDBF
+8E68 E588BA
+8E69 E58FB8
+8E6A E58FB2
+8E6B E597A3
+8E6C E59B9B
+8E6D E5A3AB
+8E6E E5A78B
+8E6F E5A789
+8E70 E5A7BF
+8E71 E5AD90
+8E72 E5B18D
+8E73 E5B882
+8E74 E5B8AB
+8E75 E5BF97
+8E76 E6809D
+8E77 E68C87
+8E78 E694AF
+8E79 E5AD9C
+8E7A E696AF
+8E7B E696BD
+8E7C E697A8
+8E7D E69E9D
+8E7E E6ADA2
+8E80 E6ADBB
+8E81 E6B08F
+8E82 E78D85
+8E83 E7A589
+8E84 E7A781
+8E85 E7B3B8
+8E86 E7B499
+8E87 E7B4AB
+8E88 E882A2
+8E89 E88482
+8E8A E887B3
+8E8B E8A696
+8E8C E8A99E
+8E8D E8A9A9
+8E8E E8A9A6
+8E8F E8AA8C
+8E90 E8ABAE
+8E91 E8B387
+8E92 E8B39C
+8E93 E99B8C
+8E94 E9A3BC
+8E95 E6ADAF
+8E96 E4BA8B
+8E97 E4BCBC
+8E98 E4BE8D
+8E99 E58590
+8E9A E5AD97
+8E9B E5AFBA
+8E9C E68588
+8E9D E68C81
+8E9E E69982
+8E9F E6ACA1
+8EA0 E6BB8B
+8EA1 E6B2BB
+8EA2 E788BE
+8EA3 E792BD
+8EA4 E79794
+8EA5 E7A381
+8EA6 E7A4BA
+8EA7 E8808C
+8EA8 E880B3
+8EA9 E887AA
+8EAA E89294
+8EAB E8BE9E
+8EAC E6B190
+8EAD E9B9BF
+8EAE E5BC8F
+8EAF E8AD98
+8EB0 E9B4AB
+8EB1 E7ABBA
+8EB2 E8BBB8
+8EB3 E5AE8D
+8EB4 E99BAB
+8EB5 E4B883
+8EB6 E58FB1
+8EB7 E59FB7
+8EB8 E5A4B1
+8EB9 E5AB89
+8EBA E5AEA4
+8EBB E68289
+8EBC E6B9BF
+8EBD E6BC86
+8EBE E796BE
+8EBF E8B3AA
+8EC0 E5AE9F
+8EC1 E89480
+8EC2 E7AFA0
+8EC3 E581B2
+8EC4 E69FB4
+8EC5 E88A9D
+8EC6 E5B1A1
+8EC7 E8958A
+8EC8 E7B89E
+8EC9 E8888E
+8ECA E58699
+8ECB E5B084
+8ECC E68DA8
+8ECD E8B5A6
+8ECE E6969C
+8ECF E785AE
+8ED0 E7A4BE
+8ED1 E7B497
+8ED2 E88085
+8ED3 E8AC9D
+8ED4 E8BB8A
+8ED5 E981AE
+8ED6 E89B87
+8ED7 E982AA
+8ED8 E5809F
+8ED9 E58BBA
+8EDA E5B0BA
+8EDB E69D93
+8EDC E781BC
+8EDD E788B5
+8EDE E9858C
+8EDF E98788
+8EE0 E98CAB
+8EE1 E88BA5
+8EE2 E5AF82
+8EE3 E5BCB1
+8EE4 E683B9
+8EE5 E4B8BB
+8EE6 E58F96
+8EE7 E5AE88
+8EE8 E6898B
+8EE9 E69CB1
+8EEA E6AE8A
+8EEB E78BA9
+8EEC E78FA0
+8EED E7A8AE
+8EEE E885AB
+8EEF E8B6A3
+8EF0 E98592
+8EF1 E9A696
+8EF2 E58492
+8EF3 E58F97
+8EF4 E591AA
+8EF5 E5AFBF
+8EF6 E68E88
+8EF7 E6A8B9
+8EF8 E7B6AC
+8EF9 E99C80
+8EFA E59B9A
+8EFB E58F8E
+8EFC E591A8
+8F40 E5AE97
+8F41 E5B0B1
+8F42 E5B79E
+8F43 E4BFAE
+8F44 E68481
+8F45 E68BBE
+8F46 E6B4B2
+8F47 E7A780
+8F48 E7A78B
+8F49 E7B582
+8F4A E7B98D
+8F4B E7BF92
+8F4C E887AD
+8F4D E8889F
+8F4E E89290
+8F4F E8A186
+8F50 E8A5B2
+8F51 E8AE90
+8F52 E8B9B4
+8F53 E8BCAF
+8F54 E980B1
+8F55 E9858B
+8F56 E985AC
+8F57 E99B86
+8F58 E9869C
+8F59 E4BB80
+8F5A E4BD8F
+8F5B E58585
+8F5C E58D81
+8F5D E5BE93
+8F5E E6888E
+8F5F E69F94
+8F60 E6B181
+8F61 E6B88B
+8F62 E78DA3
+8F63 E7B8A6
+8F64 E9878D
+8F65 E98A83
+8F66 E58F94
+8F67 E5A499
+8F68 E5AEBF
+8F69 E6B791
+8F6A E7A59D
+8F6B E7B8AE
+8F6C E7B29B
+8F6D E5A1BE
+8F6E E7869F
+8F6F E587BA
+8F70 E8A193
+8F71 E8BFB0
+8F72 E4BF8A
+8F73 E5B3BB
+8F74 E698A5
+8F75 E79EAC
+8F76 E7ABA3
+8F77 E8889C
+8F78 E9A7BF
+8F79 E58786
+8F7A E5BEAA
+8F7B E697AC
+8F7C E6A5AF
+8F7D E6AE89
+8F7E E6B7B3
+8F80 E6BA96
+8F81 E6BDA4
+8F82 E79BBE
+8F83 E7B494
+8F84 E5B7A1
+8F85 E981B5
+8F86 E98687
+8F87 E9A086
+8F88 E587A6
+8F89 E5889D
+8F8A E68980
+8F8B E69A91
+8F8C E69B99
+8F8D E6B89A
+8F8E E5BAB6
+8F8F E7B792
+8F90 E7BDB2
+8F91 E69BB8
+8F92 E896AF
+8F93 E897B7
+8F94 E8ABB8
+8F95 E58AA9
+8F96 E58F99
+8F97 E5A5B3
+8F98 E5BA8F
+8F99 E5BE90
+8F9A E68195
+8F9B E98BA4
+8F9C E999A4
+8F9D E582B7
+8F9E E5849F
+8F9F E58B9D
+8FA0 E58CA0
+8FA1 E58D87
+8FA2 E58FAC
+8FA3 E593A8
+8FA4 E59586
+8FA5 E594B1
+8FA6 E59897
+8FA7 E5A5A8
+8FA8 E5A6BE
+8FA9 E5A8BC
+8FAA E5AEB5
+8FAB E5B086
+8FAC E5B08F
+8FAD E5B091
+8FAE E5B09A
+8FAF E5BA84
+8FB0 E5BA8A
+8FB1 E5BBA0
+8FB2 E5BDB0
+8FB3 E689BF
+8FB4 E68A84
+8FB5 E68B9B
+8FB6 E68E8C
+8FB7 E68DB7
+8FB8 E69887
+8FB9 E6988C
+8FBA E698AD
+8FBB E699B6
+8FBC E69DBE
+8FBD E6A2A2
+8FBE E6A89F
+8FBF E6A8B5
+8FC0 E6B2BC
+8FC1 E6B688
+8FC2 E6B889
+8FC3 E6B998
+8FC4 E784BC
+8FC5 E784A6
+8FC6 E785A7
+8FC7 E79787
+8FC8 E79C81
+8FC9 E7A19D
+8FCA E7A481
+8FCB E7A5A5
+8FCC E7A7B0
+8FCD E7ABA0
+8FCE E7AC91
+8FCF E7B2A7
+8FD0 E7B4B9
+8FD1 E88296
+8FD2 E88F96
+8FD3 E8928B
+8FD4 E89589
+8FD5 E8A19D
+8FD6 E8A3B3
+8FD7 E8A89F
+8FD8 E8A8BC
+8FD9 E8A994
+8FDA E8A9B3
+8FDB E8B1A1
+8FDC E8B39E
+8FDD E986A4
+8FDE E989A6
+8FDF E98DBE
+8FE0 E99098
+8FE1 E99A9C
+8FE2 E99E98
+8FE3 E4B88A
+8FE4 E4B888
+8FE5 E4B89E
+8FE6 E4B997
+8FE7 E58697
+8FE8 E589B0
+8FE9 E59F8E
+8FEA E5A0B4
+8FEB E5A38C
+8FEC E5ACA2
+8FED E5B8B8
+8FEE E68385
+8FEF E693BE
+8FF0 E69DA1
+8FF1 E69D96
+8FF2 E6B584
+8FF3 E78AB6
+8FF4 E795B3
+8FF5 E7A9A3
+8FF6 E892B8
+8FF7 E8ADB2
+8FF8 E986B8
+8FF9 E98CA0
+8FFA E598B1
+8FFB E59FB4
+8FFC E9A3BE
+9040 E68BAD
+9041 E6A48D
+9042 E6AE96
+9043 E787AD
+9044 E7B994
+9045 E881B7
+9046 E889B2
+9047 E8A7A6
+9048 E9A39F
+9049 E89D95
+904A E8BEB1
+904B E5B0BB
+904C E4BCB8
+904D E4BFA1
+904E E4BEB5
+904F E59487
+9050 E5A8A0
+9051 E5AF9D
+9052 E5AFA9
+9053 E5BF83
+9054 E6858E
+9055 E68CAF
+9056 E696B0
+9057 E6998B
+9058 E6A3AE
+9059 E6A69B
+905A E6B5B8
+905B E6B7B1
+905C E794B3
+905D E796B9
+905E E79C9F
+905F E7A59E
+9060 E7A7A6
+9061 E7B4B3
+9062 E887A3
+9063 E88AAF
+9064 E896AA
+9065 E8A6AA
+9066 E8A8BA
+9067 E8BAAB
+9068 E8BE9B
+9069 E980B2
+906A E9879D
+906B E99C87
+906C E4BABA
+906D E4BB81
+906E E58883
+906F E5A1B5
+9070 E5A3AC
+9071 E5B08B
+9072 E7949A
+9073 E5B0BD
+9074 E8858E
+9075 E8A88A
+9076 E8BF85
+9077 E999A3
+9078 E99DAD
+9079 E7ACA5
+907A E8AB8F
+907B E9A088
+907C E985A2
+907D E59BB3
+907E E58EA8
+9080 E98097
+9081 E590B9
+9082 E59E82
+9083 E5B8A5
+9084 E68EA8
+9085 E6B0B4
+9086 E7828A
+9087 E79DA1
+9088 E7B28B
+9089 E7BFA0
+908A E8A1B0
+908B E98182
+908C E98594
+908D E98C90
+908E E98C98
+908F E99A8F
+9090 E7919E
+9091 E9AB84
+9092 E5B487
+9093 E5B5A9
+9094 E695B0
+9095 E69EA2
+9096 E8B6A8
+9097 E99B9B
+9098 E68DAE
+9099 E69D89
+909A E6A499
+909B E88F85
+909C E9A097
+909D E99B80
+909E E8A3BE
+909F E6BE84
+90A0 E691BA
+90A1 E5AFB8
+90A2 E4B896
+90A3 E780AC
+90A4 E7959D
+90A5 E698AF
+90A6 E58784
+90A7 E588B6
+90A8 E58BA2
+90A9 E5A793
+90AA E5BE81
+90AB E680A7
+90AC E68890
+90AD E694BF
+90AE E695B4
+90AF E6989F
+90B0 E699B4
+90B1 E6A3B2
+90B2 E6A096
+90B3 E6ADA3
+90B4 E6B885
+90B5 E789B2
+90B6 E7949F
+90B7 E79B9B
+90B8 E7B2BE
+90B9 E88196
+90BA E5A3B0
+90BB E8A3BD
+90BC E8A5BF
+90BD E8AAA0
+90BE E8AA93
+90BF E8AB8B
+90C0 E9809D
+90C1 E98692
+90C2 E99D92
+90C3 E99D99
+90C4 E69689
+90C5 E7A88E
+90C6 E88486
+90C7 E99ABB
+90C8 E5B8AD
+90C9 E6839C
+90CA E6889A
+90CB E696A5
+90CC E69894
+90CD E69E90
+90CE E79FB3
+90CF E7A98D
+90D0 E7B18D
+90D1 E7B8BE
+90D2 E8848A
+90D3 E8B2AC
+90D4 E8B5A4
+90D5 E8B7A1
+90D6 E8B99F
+90D7 E7A2A9
+90D8 E58887
+90D9 E68B99
+90DA E68EA5
+90DB E69182
+90DC E68A98
+90DD E8A8AD
+90DE E7AA83
+90DF E7AF80
+90E0 E8AAAC
+90E1 E99BAA
+90E2 E7B5B6
+90E3 E8888C
+90E4 E89D89
+90E5 E4BB99
+90E6 E58588
+90E7 E58D83
+90E8 E58DA0
+90E9 E5AEA3
+90EA E5B082
+90EB E5B096
+90EC E5B79D
+90ED E688A6
+90EE E68987
+90EF E692B0
+90F0 E6A093
+90F1 E6A0B4
+90F2 E6B389
+90F3 E6B585
+90F4 E6B497
+90F5 E69F93
+90F6 E6BD9C
+90F7 E7858E
+90F8 E785BD
+90F9 E6978B
+90FA E7A9BF
+90FB E7AEAD
+90FC E7B79A
+9140 E7B98A
+9141 E7BEA8
+9142 E885BA
+9143 E8889B
+9144 E888B9
+9145 E896A6
+9146 E8A9AE
+9147 E8B38E
+9148 E8B7B5
+9149 E981B8
+914A E981B7
+914B E98AAD
+914C E98A91
+914D E99683
+914E E9AEAE
+914F E5898D
+9150 E59684
+9151 E6BCB8
+9152 E784B6
+9153 E585A8
+9154 E7A685
+9155 E7B995
+9156 E886B3
+9157 E7B38E
+9158 E5998C
+9159 E5A191
+915A E5B2A8
+915B E68EAA
+915C E69BBE
+915D E69BBD
+915E E6A59A
+915F E78B99
+9160 E7968F
+9161 E7968E
+9162 E7A48E
+9163 E7A596
+9164 E7A79F
+9165 E7B297
+9166 E7B4A0
+9167 E7B584
+9168 E89887
+9169 E8A8B4
+916A E998BB
+916B E981A1
+916C E9BCA0
+916D E583A7
+916E E589B5
+916F E58F8C
+9170 E58FA2
+9171 E58089
+9172 E596AA
+9173 E5A3AE
+9174 E5A58F
+9175 E788BD
+9176 E5AE8B
+9177 E5B1A4
+9178 E58C9D
+9179 E683A3
+917A E683B3
+917B E68D9C
+917C E68E83
+917D E68CBF
+917E E68EBB
+9180 E6938D
+9181 E697A9
+9182 E69BB9
+9183 E5B7A3
+9184 E6A78D
+9185 E6A7BD
+9186 E6BC95
+9187 E787A5
+9188 E4BA89
+9189 E797A9
+918A E79BB8
+918B E7AA93
+918C E7B39F
+918D E7B78F
+918E E7B69C
+918F E881A1
+9190 E88D89
+9191 E88D98
+9192 E891AC
+9193 E892BC
+9194 E897BB
+9195 E8A385
+9196 E8B5B0
+9197 E98081
+9198 E981AD
+9199 E98E97
+919A E99C9C
+919B E9A892
+919C E5838F
+919D E5A297
+919E E6868E
+919F E88793
+91A0 E894B5
+91A1 E8B488
+91A2 E980A0
+91A3 E4BF83
+91A4 E581B4
+91A5 E58987
+91A6 E58DB3
+91A7 E681AF
+91A8 E68D89
+91A9 E69D9F
+91AA E6B8AC
+91AB E8B6B3
+91AC E9809F
+91AD E4BF97
+91AE E5B19E
+91AF E8B38A
+91B0 E6978F
+91B1 E7B69A
+91B2 E58D92
+91B3 E8A296
+91B4 E585B6
+91B5 E68F83
+91B6 E5AD98
+91B7 E5ADAB
+91B8 E5B08A
+91B9 E6908D
+91BA E69D91
+91BB E9819C
+91BC E4BB96
+91BD E5A49A
+91BE E5A4AA
+91BF E6B1B0
+91C0 E8A991
+91C1 E594BE
+91C2 E5A095
+91C3 E5A6A5
+91C4 E683B0
+91C5 E68993
+91C6 E69F81
+91C7 E888B5
+91C8 E6A595
+91C9 E99980
+91CA E9A784
+91CB E9A8A8
+91CC E4BD93
+91CD E5A086
+91CE E5AFBE
+91CF E88090
+91D0 E5B2B1
+91D1 E5B8AF
+91D2 E5BE85
+91D3 E680A0
+91D4 E6858B
+91D5 E688B4
+91D6 E69BBF
+91D7 E6B3B0
+91D8 E6BB9E
+91D9 E8838E
+91DA E885BF
+91DB E88B94
+91DC E8A28B
+91DD E8B2B8
+91DE E98080
+91DF E980AE
+91E0 E99A8A
+91E1 E9BB9B
+91E2 E9AF9B
+91E3 E4BBA3
+91E4 E58FB0
+91E5 E5A4A7
+91E6 E7ACAC
+91E7 E9868D
+91E8 E9A18C
+91E9 E9B7B9
+91EA E6BB9D
+91EB E780A7
+91EC E58D93
+91ED E59584
+91EE E5AE85
+91EF E68998
+91F0 E68A9E
+91F1 E68B93
+91F2 E6B2A2
+91F3 E6BFAF
+91F4 E790A2
+91F5 E8A897
+91F6 E990B8
+91F7 E6BF81
+91F8 E8ABBE
+91F9 E88CB8
+91FA E587A7
+91FB E89BB8
+91FC E58FAA
+9240 E58FA9
+9241 E4BD86
+9242 E98194
+9243 E8BEB0
+9244 E5A5AA
+9245 E884B1
+9246 E5B7BD
+9247 E7ABAA
+9248 E8BEBF
+9249 E6A39A
+924A E8B0B7
+924B E78BB8
+924C E9B188
+924D E6A8BD
+924E E8AAB0
+924F E4B8B9
+9250 E58D98
+9251 E59886
+9252 E59DA6
+9253 E68B85
+9254 E68EA2
+9255 E697A6
+9256 E6AD8E
+9257 E6B7A1
+9258 E6B99B
+9259 E782AD
+925A E79FAD
+925B E7ABAF
+925C E7AEAA
+925D E7B6BB
+925E E880BD
+925F E88386
+9260 E89B8B
+9261 E8AA95
+9262 E98D9B
+9263 E59BA3
+9264 E5A387
+9265 E5BCBE
+9266 E696AD
+9267 E69A96
+9268 E6AA80
+9269 E6AEB5
+926A E794B7
+926B E8AB87
+926C E580A4
+926D E79FA5
+926E E59CB0
+926F E5BC9B
+9270 E681A5
+9271 E699BA
+9272 E6B1A0
+9273 E797B4
+9274 E7A89A
+9275 E7BDAE
+9276 E887B4
+9277 E89C98
+9278 E98185
+9279 E9A6B3
+927A E7AF89
+927B E7959C
+927C E7ABB9
+927D E7AD91
+927E E89384
+9280 E98090
+9281 E7A7A9
+9282 E7AA92
+9283 E88CB6
+9284 E5ABA1
+9285 E79D80
+9286 E4B8AD
+9287 E4BBB2
+9288 E5AE99
+9289 E5BFA0
+928A E68ABD
+928B E698BC
+928C E69FB1
+928D E6B3A8
+928E E899AB
+928F E8A1B7
+9290 E8A8BB
+9291 E9858E
+9292 E98BB3
+9293 E9A790
+9294 E6A897
+9295 E780A6
+9296 E78CAA
+9297 E88BA7
+9298 E89197
+9299 E8B2AF
+929A E4B881
+929B E58586
+929C E5878B
+929D E5968B
+929E E5AFB5
+929F E5B896
+92A0 E5B8B3
+92A1 E5BA81
+92A2 E5BC94
+92A3 E5BCB5
+92A4 E5BDAB
+92A5 E5BEB4
+92A6 E687B2
+92A7 E68C91
+92A8 E69AA2
+92A9 E69C9D
+92AA E6BDAE
+92AB E78992
+92AC E794BA
+92AD E79CBA
+92AE E881B4
+92AF E884B9
+92B0 E885B8
+92B1 E89DB6
+92B2 E8AABF
+92B3 E8AB9C
+92B4 E8B685
+92B5 E8B7B3
+92B6 E98A9A
+92B7 E995B7
+92B8 E9A082
+92B9 E9B3A5
+92BA E58B85
+92BB E68D97
+92BC E79BB4
+92BD E69C95
+92BE E6B288
+92BF E78F8D
+92C0 E8B383
+92C1 E98EAE
+92C2 E999B3
+92C3 E6B4A5
+92C4 E5A29C
+92C5 E6A48E
+92C6 E6A78C
+92C7 E8BFBD
+92C8 E98E9A
+92C9 E7979B
+92CA E9809A
+92CB E5A19A
+92CC E6A082
+92CD E68EB4
+92CE E6A7BB
+92CF E4BD83
+92D0 E6BCAC
+92D1 E69F98
+92D2 E8BEBB
+92D3 E894A6
+92D4 E7B6B4
+92D5 E98D94
+92D6 E6A4BF
+92D7 E6BDB0
+92D8 E59DAA
+92D9 E5A3B7
+92DA E5ACAC
+92DB E7B4AC
+92DC E788AA
+92DD E5908A
+92DE E987A3
+92DF E9B6B4
+92E0 E4BAAD
+92E1 E4BD8E
+92E2 E5819C
+92E3 E581B5
+92E4 E58983
+92E5 E8B29E
+92E6 E59188
+92E7 E5A0A4
+92E8 E5AE9A
+92E9 E5B89D
+92EA E5BA95
+92EB E5BAAD
+92EC E5BBB7
+92ED E5BC9F
+92EE E6828C
+92EF E68AB5
+92F0 E68CBA
+92F1 E68F90
+92F2 E6A2AF
+92F3 E6B180
+92F4 E7A287
+92F5 E7A68E
+92F6 E7A88B
+92F7 E7B7A0
+92F8 E88987
+92F9 E8A882
+92FA E8ABA6
+92FB E8B984
+92FC E98093
+9340 E982B8
+9341 E984AD
+9342 E98798
+9343 E9BC8E
+9344 E6B3A5
+9345 E69198
+9346 E693A2
+9347 E695B5
+9348 E6BBB4
+9349 E79A84
+934A E7AC9B
+934B E981A9
+934C E98F91
+934D E6BABA
+934E E593B2
+934F E5BEB9
+9350 E692A4
+9351 E8BD8D
+9352 E8BFAD
+9353 E98984
+9354 E585B8
+9355 E5A1AB
+9356 E5A4A9
+9357 E5B195
+9358 E5BA97
+9359 E6B7BB
+935A E7BA8F
+935B E7949C
+935C E8B2BC
+935D E8BBA2
+935E E9A19B
+935F E782B9
+9360 E4BC9D
+9361 E6AEBF
+9362 E6BEB1
+9363 E794B0
+9364 E99BBB
+9365 E5858E
+9366 E59090
+9367 E5A0B5
+9368 E5A197
+9369 E5A6AC
+936A E5B1A0
+936B E5BE92
+936C E69697
+936D E69D9C
+936E E6B8A1
+936F E799BB
+9370 E88F9F
+9371 E8B3AD
+9372 E98094
+9373 E983BD
+9374 E98D8D
+9375 E7A0A5
+9376 E7A0BA
+9377 E58AAA
+9378 E5BAA6
+9379 E59C9F
+937A E5A5B4
+937B E68092
+937C E58092
+937D E5859A
+937E E586AC
+9380 E5878D
+9381 E58880
+9382 E59490
+9383 E5A194
+9384 E5A198
+9385 E5A597
+9386 E5AE95
+9387 E5B3B6
+9388 E5B68B
+9389 E682BC
+938A E68A95
+938B E690AD
+938C E69DB1
+938D E6A183
+938E E6A2BC
+938F E6A39F
+9390 E79B97
+9391 E6B798
+9392 E6B9AF
+9393 E6B69B
+9394 E781AF
+9395 E78788
+9396 E5BD93
+9397 E79798
+9398 E7A5B7
+9399 E7AD89
+939A E7AD94
+939B E7AD92
+939C E7B396
+939D E7B5B1
+939E E588B0
+939F E891A3
+93A0 E895A9
+93A1 E897A4
+93A2 E8A88E
+93A3 E8AC84
+93A4 E8B186
+93A5 E8B88F
+93A6 E98083
+93A7 E9808F
+93A8 E99099
+93A9 E999B6
+93AA E9A0AD
+93AB E9A8B0
+93AC E99798
+93AD E5838D
+93AE E58B95
+93AF E5908C
+93B0 E5A082
+93B1 E5B08E
+93B2 E686A7
+93B3 E6929E
+93B4 E6B49E
+93B5 E79EB3
+93B6 E7ABA5
+93B7 E883B4
+93B8 E89084
+93B9 E98193
+93BA E98A85
+93BB E5B3A0
+93BC E9B487
+93BD E58CBF
+93BE E5BE97
+93BF E5BEB3
+93C0 E6B69C
+93C1 E789B9
+93C2 E79DA3
+93C3 E7A6BF
+93C4 E7AFA4
+93C5 E6AF92
+93C6 E78BAC
+93C7 E8AAAD
+93C8 E6A083
+93C9 E6A9A1
+93CA E587B8
+93CB E7AA81
+93CC E6A4B4
+93CD E5B18A
+93CE E9B3B6
+93CF E88BAB
+93D0 E5AF85
+93D1 E98589
+93D2 E7809E
+93D3 E599B8
+93D4 E5B1AF
+93D5 E68387
+93D6 E695A6
+93D7 E6B28C
+93D8 E8B19A
+93D9 E98181
+93DA E9A093
+93DB E59191
+93DC E69B87
+93DD E9888D
+93DE E5A588
+93DF E982A3
+93E0 E58685
+93E1 E4B98D
+93E2 E587AA
+93E3 E89699
+93E4 E8AC8E
+93E5 E78198
+93E6 E68DBA
+93E7 E98D8B
+93E8 E6A5A2
+93E9 E9A6B4
+93EA E7B884
+93EB E795B7
+93EC E58D97
+93ED E6A5A0
+93EE E8BB9F
+93EF E99BA3
+93F0 E6B19D
+93F1 E4BA8C
+93F2 E5B0BC
+93F3 E5BC90
+93F4 E8BFA9
+93F5 E58C82
+93F6 E8B391
+93F7 E88289
+93F8 E899B9
+93F9 E5BBBF
+93FA E697A5
+93FB E4B9B3
+93FC E585A5
+9440 E5A682
+9441 E5B0BF
+9442 E99FAE
+9443 E4BBBB
+9444 E5A68A
+9445 E5BF8D
+9446 E8AA8D
+9447 E6BFA1
+9448 E7A6B0
+9449 E7A5A2
+944A E5AFA7
+944B E891B1
+944C E78CAB
+944D E786B1
+944E E5B9B4
+944F E5BFB5
+9450 E68DBB
+9451 E6929A
+9452 E78783
+9453 E7B298
+9454 E4B983
+9455 E5BBBC
+9456 E4B98B
+9457 E59F9C
+9458 E59AA2
+9459 E682A9
+945A E6BF83
+945B E7B48D
+945C E883BD
+945D E884B3
+945E E886BF
+945F E8BEB2
+9460 E8A697
+9461 E89AA4
+9462 E5B7B4
+9463 E68A8A
+9464 E692AD
+9465 E8A687
+9466 E69DB7
+9467 E6B3A2
+9468 E6B4BE
+9469 E790B6
+946A E7A0B4
+946B E5A986
+946C E7BDB5
+946D E88AAD
+946E E9A6AC
+946F E4BFB3
+9470 E5BB83
+9471 E68B9D
+9472 E68E92
+9473 E69597
+9474 E69DAF
+9475 E79B83
+9476 E7898C
+9477 E8838C
+9478 E882BA
+9479 E8BCA9
+947A E9858D
+947B E5808D
+947C E59FB9
+947D E5AA92
+947E E6A285
+9480 E6A5B3
+9481 E785A4
+9482 E78BBD
+9483 E8B2B7
+9484 E5A3B2
+9485 E8B3A0
+9486 E999AA
+9487 E98099
+9488 E89DBF
+9489 E7A7A4
+948A E79FA7
+948B E890A9
+948C E4BCAF
+948D E589A5
+948E E58D9A
+948F E68B8D
+9490 E69F8F
+9491 E6B38A
+9492 E799BD
+9493 E7AE94
+9494 E7B295
+9495 E888B6
+9496 E89684
+9497 E8BFAB
+9498 E69B9D
+9499 E6BCA0
+949A E78886
+949B E7B89B
+949C E88EAB
+949D E9A781
+949E E9BAA6
+949F E587BD
+94A0 E7AEB1
+94A1 E7A1B2
+94A2 E7AEB8
+94A3 E88287
+94A4 E7AD88
+94A5 E6ABA8
+94A6 E5B9A1
+94A7 E8828C
+94A8 E79591
+94A9 E795A0
+94AA E585AB
+94AB E989A2
+94AC E6BA8C
+94AD E799BA
+94AE E98697
+94AF E9ABAA
+94B0 E4BC90
+94B1 E7BDB0
+94B2 E68A9C
+94B3 E7AD8F
+94B4 E996A5
+94B5 E9B3A9
+94B6 E599BA
+94B7 E5A199
+94B8 E89BA4
+94B9 E99ABC
+94BA E4BCB4
+94BB E588A4
+94BC E58D8A
+94BD E58F8D
+94BE E58F9B
+94BF E5B886
+94C0 E690AC
+94C1 E69691
+94C2 E69DBF
+94C3 E6B0BE
+94C4 E6B18E
+94C5 E78988
+94C6 E78AAF
+94C7 E78FAD
+94C8 E79594
+94C9 E7B981
+94CA E888AC
+94CB E897A9
+94CC E8B2A9
+94CD E7AF84
+94CE E98786
+94CF E785A9
+94D0 E9A092
+94D1 E9A3AF
+94D2 E68CBD
+94D3 E699A9
+94D4 E795AA
+94D5 E79BA4
+94D6 E7A390
+94D7 E89583
+94D8 E89BAE
+94D9 E58CAA
+94DA E58D91
+94DB E590A6
+94DC E5A683
+94DD E5BA87
+94DE E5BDBC
+94DF E682B2
+94E0 E68989
+94E1 E689B9
+94E2 E68AAB
+94E3 E69690
+94E4 E6AF94
+94E5 E6B38C
+94E6 E796B2
+94E7 E79AAE
+94E8 E7A291
+94E9 E7A798
+94EA E7B78B
+94EB E7BDB7
+94EC E882A5
+94ED E8A2AB
+94EE E8AAB9
+94EF E8B2BB
+94F0 E981BF
+94F1 E99D9E
+94F2 E9A39B
+94F3 E6A88B
+94F4 E7B0B8
+94F5 E58299
+94F6 E5B0BE
+94F7 E5BEAE
+94F8 E69E87
+94F9 E6AF98
+94FA E790B5
+94FB E79C89
+94FC E7BE8E
+9540 E9BCBB
+9541 E69F8A
+9542 E7A897
+9543 E58CB9
+9544 E7968B
+9545 E9ABAD
+9546 E5BDA6
+9547 E8869D
+9548 E88FB1
+9549 E88298
+954A E5BCBC
+954B E5BF85
+954C E795A2
+954D E7AD86
+954E E980BC
+954F E6A1A7
+9550 E5A7AB
+9551 E5AA9B
+9552 E7B490
+9553 E799BE
+9554 E8ACAC
+9555 E4BFB5
+9556 E5BDAA
+9557 E6A899
+9558 E6B0B7
+9559 E6BC82
+955A E793A2
+955B E7A5A8
+955C E8A1A8
+955D E8A995
+955E E8B1B9
+955F E5BB9F
+9560 E68F8F
+9561 E79785
+9562 E7A792
+9563 E88B97
+9564 E98CA8
+9565 E98BB2
+9566 E8929C
+9567 E89BAD
+9568 E9B0AD
+9569 E59381
+956A E5BDAC
+956B E6968C
+956C E6B59C
+956D E78095
+956E E8B2A7
+956F E8B393
+9570 E9A0BB
+9571 E6958F
+9572 E793B6
+9573 E4B88D
+9574 E4BB98
+9575 E59FA0
+9576 E5A4AB
+9577 E5A9A6
+9578 E5AF8C
+9579 E586A8
+957A E5B883
+957B E5BA9C
+957C E68096
+957D E689B6
+957E E695B7
+9580 E696A7
+9581 E699AE
+9582 E6B5AE
+9583 E788B6
+9584 E7ACA6
+9585 E88590
+9586 E8869A
+9587 E88A99
+9588 E8AD9C
+9589 E8B2A0
+958A E8B3A6
+958B E8B5B4
+958C E9989C
+958D E99984
+958E E4BEAE
+958F E692AB
+9590 E6ADA6
+9591 E8889E
+9592 E891A1
+9593 E895AA
+9594 E983A8
+9595 E5B081
+9596 E6A593
+9597 E9A2A8
+9598 E891BA
+9599 E89597
+959A E4BC8F
+959B E589AF
+959C E5BEA9
+959D E5B985
+959E E69C8D
+959F E7A68F
+95A0 E885B9
+95A1 E8A487
+95A2 E8A686
+95A3 E6B7B5
+95A4 E5BC97
+95A5 E68995
+95A6 E6B2B8
+95A7 E4BB8F
+95A8 E789A9
+95A9 E9AE92
+95AA E58886
+95AB E590BB
+95AC E599B4
+95AD E5A2B3
+95AE E686A4
+95AF E689AE
+95B0 E7849A
+95B1 E5A5AE
+95B2 E7B289
+95B3 E7B39E
+95B4 E7B49B
+95B5 E99BB0
+95B6 E69687
+95B7 E8819E
+95B8 E4B899
+95B9 E4BDB5
+95BA E585B5
+95BB E5A180
+95BC E5B9A3
+95BD E5B9B3
+95BE E5BC8A
+95BF E69F84
+95C0 E4B8A6
+95C1 E894BD
+95C2 E99689
+95C3 E9999B
+95C4 E7B1B3
+95C5 E9A081
+95C6 E583BB
+95C7 E5A381
+95C8 E79996
+95C9 E7A2A7
+95CA E588A5
+95CB E79EA5
+95CC E89491
+95CD E7AE86
+95CE E5818F
+95CF E5A489
+95D0 E78987
+95D1 E7AF87
+95D2 E7B7A8
+95D3 E8BEBA
+95D4 E8BF94
+95D5 E9818D
+95D6 E4BEBF
+95D7 E58B89
+95D8 E5A8A9
+95D9 E5BC81
+95DA E99EAD
+95DB E4BF9D
+95DC E88897
+95DD E98BAA
+95DE E59C83
+95DF E68D95
+95E0 E6ADA9
+95E1 E794AB
+95E2 E8A39C
+95E3 E8BC94
+95E4 E7A982
+95E5 E58B9F
+95E6 E5A293
+95E7 E68595
+95E8 E6888A
+95E9 E69AAE
+95EA E6AF8D
+95EB E7B0BF
+95EC E88FA9
+95ED E580A3
+95EE E4BFB8
+95EF E58C85
+95F0 E59186
+95F1 E5A0B1
+95F2 E5A589
+95F3 E5AE9D
+95F4 E5B3B0
+95F5 E5B3AF
+95F6 E5B4A9
+95F7 E5BA96
+95F8 E68AB1
+95F9 E68DA7
+95FA E694BE
+95FB E696B9
+95FC E69C8B
+9640 E6B395
+9641 E6B3A1
+9642 E783B9
+9643 E7A0B2
+9644 E7B8AB
+9645 E8839E
+9646 E88AB3
+9647 E8908C
+9648 E893AC
+9649 E89C82
+964A E8A492
+964B E8A8AA
+964C E8B18A
+964D E982A6
+964E E98B92
+964F E9A3BD
+9650 E9B3B3
+9651 E9B5AC
+9652 E4B98F
+9653 E4BAA1
+9654 E5828D
+9655 E58996
+9656 E59D8A
+9657 E5A6A8
+9658 E5B8BD
+9659 E5BF98
+965A E5BF99
+965B E688BF
+965C E69AB4
+965D E69C9B
+965E E69F90
+965F E6A392
+9660 E58692
+9661 E7B4A1
+9662 E882AA
+9663 E886A8
+9664 E8AC80
+9665 E8B28C
+9666 E8B2BF
+9667 E989BE
+9668 E998B2
+9669 E590A0
+966A E9A0AC
+966B E58C97
+966C E58395
+966D E58D9C
+966E E5A2A8
+966F E692B2
+9670 E69CB4
+9671 E789A7
+9672 E79DA6
+9673 E7A986
+9674 E987A6
+9675 E58B83
+9676 E6B2A1
+9677 E6AE86
+9678 E5A080
+9679 E5B98C
+967A E5A594
+967B E69CAC
+967C E7BFBB
+967D E587A1
+967E E79B86
+9680 E691A9
+9681 E7A3A8
+9682 E9AD94
+9683 E9BABB
+9684 E59F8B
+9685 E5A6B9
+9686 E698A7
+9687 E69E9A
+9688 E6AF8E
+9689 E593A9
+968A E6A799
+968B E5B995
+968C E8869C
+968D E69E95
+968E E9AEAA
+968F E69FBE
+9690 E9B192
+9691 E6A19D
+9692 E4BAA6
+9693 E4BFA3
+9694 E58F88
+9695 E68AB9
+9696 E69CAB
+9697 E6B2AB
+9698 E8BF84
+9699 E4BEAD
+969A E7B9AD
+969B E9BABF
+969C E4B887
+969D E685A2
+969E E6BA80
+969F E6BCAB
+96A0 E89493
+96A1 E591B3
+96A2 E69CAA
+96A3 E9AD85
+96A4 E5B7B3
+96A5 E7AE95
+96A6 E5B2AC
+96A7 E5AF86
+96A8 E89C9C
+96A9 E6B98A
+96AA E89391
+96AB E7A894
+96AC E88488
+96AD E5A699
+96AE E7B28D
+96AF E6B091
+96B0 E79CA0
+96B1 E58B99
+96B2 E5A4A2
+96B3 E784A1
+96B4 E7899F
+96B5 E79F9B
+96B6 E99CA7
+96B7 E9B5A1
+96B8 E6A48B
+96B9 E5A9BF
+96BA E5A898
+96BB E586A5
+96BC E5908D
+96BD E591BD
+96BE E6988E
+96BF E79B9F
+96C0 E8BFB7
+96C1 E98A98
+96C2 E9B3B4
+96C3 E5A7AA
+96C4 E7899D
+96C5 E6BB85
+96C6 E5858D
+96C7 E6A389
+96C8 E7B6BF
+96C9 E7B7AC
+96CA E99DA2
+96CB E9BABA
+96CC E691B8
+96CD E6A8A1
+96CE E88C82
+96CF E5A684
+96D0 E5AD9F
+96D1 E6AF9B
+96D2 E78C9B
+96D3 E79BB2
+96D4 E7B6B2
+96D5 E88097
+96D6 E89299
+96D7 E584B2
+96D8 E69CA8
+96D9 E9BB99
+96DA E79BAE
+96DB E69DA2
+96DC E58BBF
+96DD E9A485
+96DE E5B0A4
+96DF E688BB
+96E0 E7B1BE
+96E1 E8B2B0
+96E2 E5958F
+96E3 E682B6
+96E4 E7B48B
+96E5 E99680
+96E6 E58C81
+96E7 E4B99F
+96E8 E586B6
+96E9 E5A49C
+96EA E788BA
+96EB E880B6
+96EC E9878E
+96ED E5BCA5
+96EE E79FA2
+96EF E58E84
+96F0 E5BDB9
+96F1 E7B484
+96F2 E896AC
+96F3 E8A8B3
+96F4 E8BA8D
+96F5 E99D96
+96F6 E69FB3
+96F7 E896AE
+96F8 E99193
+96F9 E68489
+96FA E68488
+96FB E6B2B9
+96FC E79992
+9740 E8ABAD
+9741 E8BCB8
+9742 E594AF
+9743 E4BD91
+9744 E584AA
+9745 E58B87
+9746 E58F8B
+9747 E5AEA5
+9748 E5B9BD
+9749 E682A0
+974A E68682
+974B E68F96
+974C E69C89
+974D E69F9A
+974E E6B9A7
+974F E6B68C
+9750 E78CB6
+9751 E78CB7
+9752 E794B1
+9753 E7A590
+9754 E8A395
+9755 E8AA98
+9756 E9818A
+9757 E98291
+9758 E983B5
+9759 E99B84
+975A E89E8D
+975B E5A495
+975C E4BA88
+975D E4BD99
+975E E4B88E
+975F E8AA89
+9760 E8BCBF
+9761 E9A090
+9762 E582AD
+9763 E5B9BC
+9764 E5A696
+9765 E5AEB9
+9766 E5BAB8
+9767 E68F9A
+9768 E68FBA
+9769 E69381
+976A E69B9C
+976B E6A58A
+976C E6A798
+976D E6B48B
+976E E6BAB6
+976F E78694
+9770 E794A8
+9771 E7AAAF
+9772 E7BE8A
+9773 E88080
+9774 E89189
+9775 E89389
+9776 E8A681
+9777 E8ACA1
+9778 E8B88A
+9779 E981A5
+977A E999BD
+977B E9A48A
+977C E685BE
+977D E68A91
+977E E6ACB2
+9780 E6B283
+9781 E6B5B4
+9782 E7BF8C
+9783 E7BFBC
+9784 E6B780
+9785 E7BE85
+9786 E89EBA
+9787 E8A3B8
+9788 E69DA5
+9789 E88EB1
+978A E9A0BC
+978B E99BB7
+978C E6B49B
+978D E7B5A1
+978E E890BD
+978F E985AA
+9790 E4B9B1
+9791 E58DB5
+9792 E5B590
+9793 E6AC84
+9794 E6BFAB
+9795 E8978D
+9796 E898AD
+9797 E8A6A7
+9798 E588A9
+9799 E5908F
+979A E5B1A5
+979B E69D8E
+979C E6A2A8
+979D E79086
+979E E79283
+979F E797A2
+97A0 E8A38F
+97A1 E8A3A1
+97A2 E9878C
+97A3 E99BA2
+97A4 E999B8
+97A5 E5BE8B
+97A6 E78E87
+97A7 E7AB8B
+97A8 E8918E
+97A9 E68EA0
+97AA E795A5
+97AB E58A89
+97AC E6B581
+97AD E6BA9C
+97AE E79089
+97AF E79599
+97B0 E7A1AB
+97B1 E7B292
+97B2 E99A86
+97B3 E7AB9C
+97B4 E9BE8D
+97B5 E4BEB6
+97B6 E685AE
+97B7 E69785
+97B8 E8999C
+97B9 E4BA86
+97BA E4BAAE
+97BB E5839A
+97BC E4B8A1
+97BD E5878C
+97BE E5AFAE
+97BF E69699
+97C0 E6A281
+97C1 E6B6BC
+97C2 E78C9F
+97C3 E79982
+97C4 E79EAD
+97C5 E7A89C
+97C6 E7B3A7
+97C7 E889AF
+97C8 E8AB92
+97C9 E981BC
+97CA E9878F
+97CB E999B5
+97CC E9A098
+97CD E58A9B
+97CE E7B791
+97CF E580AB
+97D0 E58E98
+97D1 E69E97
+97D2 E6B78B
+97D3 E78790
+97D4 E790B3
+97D5 E887A8
+97D6 E8BCAA
+97D7 E99AA3
+97D8 E9B197
+97D9 E9BA9F
+97DA E791A0
+97DB E5A181
+97DC E6B699
+97DD E7B4AF
+97DE E9A19E
+97DF E4BBA4
+97E0 E4BCB6
+97E1 E4BE8B
+97E2 E586B7
+97E3 E58AB1
+97E4 E5B6BA
+97E5 E6809C
+97E6 E78EB2
+97E7 E7A4BC
+97E8 E88B93
+97E9 E988B4
+97EA E99AB7
+97EB E99BB6
+97EC E99C8A
+97ED E9BA97
+97EE E9BDA2
+97EF E69AA6
+97F0 E6ADB4
+97F1 E58897
+97F2 E58AA3
+97F3 E78388
+97F4 E8A382
+97F5 E5BB89
+97F6 E6818B
+97F7 E68690
+97F8 E6BCA3
+97F9 E78589
+97FA E7B0BE
+97FB E7B7B4
+97FC E881AF
+9840 E893AE
+9841 E980A3
+9842 E98CAC
+9843 E59182
+9844 E9ADAF
+9845 E6AB93
+9846 E78289
+9847 E8B382
+9848 E8B7AF
+9849 E99CB2
+984A E58AB4
+984B E5A981
+984C E5BB8A
+984D E5BC84
+984E E69C97
+984F E6A5BC
+9850 E6A694
+9851 E6B5AA
+9852 E6BC8F
+9853 E789A2
+9854 E78BBC
+9855 E7AFAD
+9856 E88081
+9857 E881BE
+9858 E89D8B
+9859 E9838E
+985A E585AD
+985B E9BA93
+985C E7A684
+985D E8828B
+985E E98CB2
+985F E8AB96
+9860 E580AD
+9861 E5928C
+9862 E8A9B1
+9863 E6ADAA
+9864 E8B384
+9865 E88487
+9866 E68391
+9867 E69EA0
+9868 E9B7B2
+9869 E4BA99
+986A E4BA98
+986B E9B090
+986C E8A9AB
+986D E89781
+986E E895A8
+986F E6A480
+9870 E6B9BE
+9871 E7A297
+9872 E88595
+989F E5BC8C
+98A0 E4B890
+98A1 E4B895
+98A2 E4B8AA
+98A3 E4B8B1
+98A4 E4B8B6
+98A5 E4B8BC
+98A6 E4B8BF
+98A7 E4B982
+98A8 E4B996
+98A9 E4B998
+98AA E4BA82
+98AB E4BA85
+98AC E8B1AB
+98AD E4BA8A
+98AE E88892
+98AF E5BC8D
+98B0 E4BA8E
+98B1 E4BA9E
+98B2 E4BA9F
+98B3 E4BAA0
+98B4 E4BAA2
+98B5 E4BAB0
+98B6 E4BAB3
+98B7 E4BAB6
+98B8 E4BB8E
+98B9 E4BB8D
+98BA E4BB84
+98BB E4BB86
+98BC E4BB82
+98BD E4BB97
+98BE E4BB9E
+98BF E4BBAD
+98C0 E4BB9F
+98C1 E4BBB7
+98C2 E4BC89
+98C3 E4BD9A
+98C4 E4BCB0
+98C5 E4BD9B
+98C6 E4BD9D
+98C7 E4BD97
+98C8 E4BD87
+98C9 E4BDB6
+98CA E4BE88
+98CB E4BE8F
+98CC E4BE98
+98CD E4BDBB
+98CE E4BDA9
+98CF E4BDB0
+98D0 E4BE91
+98D1 E4BDAF
+98D2 E4BE86
+98D3 E4BE96
+98D4 E58498
+98D5 E4BF94
+98D6 E4BF9F
+98D7 E4BF8E
+98D8 E4BF98
+98D9 E4BF9B
+98DA E4BF91
+98DB E4BF9A
+98DC E4BF90
+98DD E4BFA4
+98DE E4BFA5
+98DF E5809A
+98E0 E580A8
+98E1 E58094
+98E2 E580AA
+98E3 E580A5
+98E4 E58085
+98E5 E4BC9C
+98E6 E4BFB6
+98E7 E580A1
+98E8 E580A9
+98E9 E580AC
+98EA E4BFBE
+98EB E4BFAF
+98EC E58091
+98ED E58086
+98EE E58183
+98EF E58187
+98F0 E69C83
+98F1 E58195
+98F2 E58190
+98F3 E58188
+98F4 E5819A
+98F5 E58196
+98F6 E581AC
+98F7 E581B8
+98F8 E58280
+98F9 E5829A
+98FA E58285
+98FB E582B4
+98FC E582B2
+9940 E58389
+9941 E5838A
+9942 E582B3
+9943 E58382
+9944 E58396
+9945 E5839E
+9946 E583A5
+9947 E583AD
+9948 E583A3
+9949 E583AE
+994A E583B9
+994B E583B5
+994C E58489
+994D E58481
+994E E58482
+994F E58496
+9950 E58495
+9951 E58494
+9952 E5849A
+9953 E584A1
+9954 E584BA
+9955 E584B7
+9956 E584BC
+9957 E584BB
+9958 E584BF
+9959 E58580
+995A E58592
+995B E5858C
+995C E58594
+995D E585A2
+995E E7ABB8
+995F E585A9
+9960 E585AA
+9961 E585AE
+9962 E58680
+9963 E58682
+9964 E59B98
+9965 E5868C
+9966 E58689
+9967 E5868F
+9968 E58691
+9969 E58693
+996A E58695
+996B E58696
+996C E586A4
+996D E586A6
+996E E586A2
+996F E586A9
+9970 E586AA
+9971 E586AB
+9972 E586B3
+9973 E586B1
+9974 E586B2
+9975 E586B0
+9976 E586B5
+9977 E586BD
+9978 E58785
+9979 E58789
+997A E5879B
+997B E587A0
+997C E89995
+997D E587A9
+997E E587AD
+9980 E587B0
+9981 E587B5
+9982 E587BE
+9983 E58884
+9984 E5888B
+9985 E58894
+9986 E5888E
+9987 E588A7
+9988 E588AA
+9989 E588AE
+998A E588B3
+998B E588B9
+998C E5898F
+998D E58984
+998E E5898B
+998F E5898C
+9990 E5899E
+9991 E58994
+9992 E589AA
+9993 E589B4
+9994 E589A9
+9995 E589B3
+9996 E589BF
+9997 E589BD
+9998 E58A8D
+9999 E58A94
+999A E58A92
+999B E589B1
+999C E58A88
+999D E58A91
+999E E8BEA8
+999F E8BEA7
+99A0 E58AAC
+99A1 E58AAD
+99A2 E58ABC
+99A3 E58AB5
+99A4 E58B81
+99A5 E58B8D
+99A6 E58B97
+99A7 E58B9E
+99A8 E58BA3
+99A9 E58BA6
+99AA E9A3AD
+99AB E58BA0
+99AC E58BB3
+99AD E58BB5
+99AE E58BB8
+99AF E58BB9
+99B0 E58C86
+99B1 E58C88
+99B2 E794B8
+99B3 E58C8D
+99B4 E58C90
+99B5 E58C8F
+99B6 E58C95
+99B7 E58C9A
+99B8 E58CA3
+99B9 E58CAF
+99BA E58CB1
+99BB E58CB3
+99BC E58CB8
+99BD E58D80
+99BE E58D86
+99BF E58D85
+99C0 E4B897
+99C1 E58D89
+99C2 E58D8D
+99C3 E58796
+99C4 E58D9E
+99C5 E58DA9
+99C6 E58DAE
+99C7 E5A498
+99C8 E58DBB
+99C9 E58DB7
+99CA E58E82
+99CB E58E96
+99CC E58EA0
+99CD E58EA6
+99CE E58EA5
+99CF E58EAE
+99D0 E58EB0
+99D1 E58EB6
+99D2 E58F83
+99D3 E7B092
+99D4 E99B99
+99D5 E58F9F
+99D6 E69BBC
+99D7 E787AE
+99D8 E58FAE
+99D9 E58FA8
+99DA E58FAD
+99DB E58FBA
+99DC E59081
+99DD E590BD
+99DE E59180
+99DF E590AC
+99E0 E590AD
+99E1 E590BC
+99E2 E590AE
+99E3 E590B6
+99E4 E590A9
+99E5 E5909D
+99E6 E5918E
+99E7 E5928F
+99E8 E591B5
+99E9 E5928E
+99EA E5919F
+99EB E591B1
+99EC E591B7
+99ED E591B0
+99EE E59292
+99EF E591BB
+99F0 E59280
+99F1 E591B6
+99F2 E59284
+99F3 E59290
+99F4 E59286
+99F5 E59387
+99F6 E592A2
+99F7 E592B8
+99F8 E592A5
+99F9 E592AC
+99FA E59384
+99FB E59388
+99FC E592A8
+9A40 E592AB
+9A41 E59382
+9A42 E592A4
+9A43 E592BE
+9A44 E592BC
+9A45 E59398
+9A46 E593A5
+9A47 E593A6
+9A48 E5948F
+9A49 E59494
+9A4A E593BD
+9A4B E593AE
+9A4C E593AD
+9A4D E593BA
+9A4E E593A2
+9A4F E594B9
+9A50 E59580
+9A51 E595A3
+9A52 E5958C
+9A53 E594AE
+9A54 E5959C
+9A55 E59585
+9A56 E59596
+9A57 E59597
+9A58 E594B8
+9A59 E594B3
+9A5A E5959D
+9A5B E59699
+9A5C E59680
+9A5D E592AF
+9A5E E5968A
+9A5F E5969F
+9A60 E595BB
+9A61 E595BE
+9A62 E59698
+9A63 E5969E
+9A64 E596AE
+9A65 E595BC
+9A66 E59683
+9A67 E596A9
+9A68 E59687
+9A69 E596A8
+9A6A E5979A
+9A6B E59785
+9A6C E5979F
+9A6D E59784
+9A6E E5979C
+9A6F E597A4
+9A70 E59794
+9A71 E59894
+9A72 E597B7
+9A73 E59896
+9A74 E597BE
+9A75 E597BD
+9A76 E5989B
+9A77 E597B9
+9A78 E5998E
+9A79 E59990
+9A7A E7879F
+9A7B E598B4
+9A7C E598B6
+9A7D E598B2
+9A7E E598B8
+9A80 E599AB
+9A81 E599A4
+9A82 E598AF
+9A83 E599AC
+9A84 E599AA
+9A85 E59A86
+9A86 E59A80
+9A87 E59A8A
+9A88 E59AA0
+9A89 E59A94
+9A8A E59A8F
+9A8B E59AA5
+9A8C E59AAE
+9A8D E59AB6
+9A8E E59AB4
+9A8F E59B82
+9A90 E59ABC
+9A91 E59B81
+9A92 E59B83
+9A93 E59B80
+9A94 E59B88
+9A95 E59B8E
+9A96 E59B91
+9A97 E59B93
+9A98 E59B97
+9A99 E59BAE
+9A9A E59BB9
+9A9B E59C80
+9A9C E59BBF
+9A9D E59C84
+9A9E E59C89
+9A9F E59C88
+9AA0 E59C8B
+9AA1 E59C8D
+9AA2 E59C93
+9AA3 E59C98
+9AA4 E59C96
+9AA5 E59787
+9AA6 E59C9C
+9AA7 E59CA6
+9AA8 E59CB7
+9AA9 E59CB8
+9AAA E59D8E
+9AAB E59CBB
+9AAC E59D80
+9AAD E59D8F
+9AAE E59DA9
+9AAF E59F80
+9AB0 E59E88
+9AB1 E59DA1
+9AB2 E59DBF
+9AB3 E59E89
+9AB4 E59E93
+9AB5 E59EA0
+9AB6 E59EB3
+9AB7 E59EA4
+9AB8 E59EAA
+9AB9 E59EB0
+9ABA E59F83
+9ABB E59F86
+9ABC E59F94
+9ABD E59F92
+9ABE E59F93
+9ABF E5A08A
+9AC0 E59F96
+9AC1 E59FA3
+9AC2 E5A08B
+9AC3 E5A099
+9AC4 E5A09D
+9AC5 E5A1B2
+9AC6 E5A0A1
+9AC7 E5A1A2
+9AC8 E5A18B
+9AC9 E5A1B0
+9ACA E6AF80
+9ACB E5A192
+9ACC E5A0BD
+9ACD E5A1B9
+9ACE E5A285
+9ACF E5A2B9
+9AD0 E5A29F
+9AD1 E5A2AB
+9AD2 E5A2BA
+9AD3 E5A39E
+9AD4 E5A2BB
+9AD5 E5A2B8
+9AD6 E5A2AE
+9AD7 E5A385
+9AD8 E5A393
+9AD9 E5A391
+9ADA E5A397
+9ADB E5A399
+9ADC E5A398
+9ADD E5A3A5
+9ADE E5A39C
+9ADF E5A3A4
+9AE0 E5A39F
+9AE1 E5A3AF
+9AE2 E5A3BA
+9AE3 E5A3B9
+9AE4 E5A3BB
+9AE5 E5A3BC
+9AE6 E5A3BD
+9AE7 E5A482
+9AE8 E5A48A
+9AE9 E5A490
+9AEA E5A49B
+9AEB E6A2A6
+9AEC E5A4A5
+9AED E5A4AC
+9AEE E5A4AD
+9AEF E5A4B2
+9AF0 E5A4B8
+9AF1 E5A4BE
+9AF2 E7AB92
+9AF3 E5A595
+9AF4 E5A590
+9AF5 E5A58E
+9AF6 E5A59A
+9AF7 E5A598
+9AF8 E5A5A2
+9AF9 E5A5A0
+9AFA E5A5A7
+9AFB E5A5AC
+9AFC E5A5A9
+9B40 E5A5B8
+9B41 E5A681
+9B42 E5A69D
+9B43 E4BD9E
+9B44 E4BEAB
+9B45 E5A6A3
+9B46 E5A6B2
+9B47 E5A786
+9B48 E5A7A8
+9B49 E5A79C
+9B4A E5A68D
+9B4B E5A799
+9B4C E5A79A
+9B4D E5A8A5
+9B4E E5A89F
+9B4F E5A891
+9B50 E5A89C
+9B51 E5A889
+9B52 E5A89A
+9B53 E5A980
+9B54 E5A9AC
+9B55 E5A989
+9B56 E5A8B5
+9B57 E5A8B6
+9B58 E5A9A2
+9B59 E5A9AA
+9B5A E5AA9A
+9B5B E5AABC
+9B5C E5AABE
+9B5D E5AB8B
+9B5E E5AB82
+9B5F E5AABD
+9B60 E5ABA3
+9B61 E5AB97
+9B62 E5ABA6
+9B63 E5ABA9
+9B64 E5AB96
+9B65 E5ABBA
+9B66 E5ABBB
+9B67 E5AC8C
+9B68 E5AC8B
+9B69 E5AC96
+9B6A E5ACB2
+9B6B E5AB90
+9B6C E5ACAA
+9B6D E5ACB6
+9B6E E5ACBE
+9B6F E5AD83
+9B70 E5AD85
+9B71 E5AD80
+9B72 E5AD91
+9B73 E5AD95
+9B74 E5AD9A
+9B75 E5AD9B
+9B76 E5ADA5
+9B77 E5ADA9
+9B78 E5ADB0
+9B79 E5ADB3
+9B7A E5ADB5
+9B7B E5ADB8
+9B7C E69688
+9B7D E5ADBA
+9B7E E5AE80
+9B80 E5AE83
+9B81 E5AEA6
+9B82 E5AEB8
+9B83 E5AF83
+9B84 E5AF87
+9B85 E5AF89
+9B86 E5AF94
+9B87 E5AF90
+9B88 E5AFA4
+9B89 E5AFA6
+9B8A E5AFA2
+9B8B E5AF9E
+9B8C E5AFA5
+9B8D E5AFAB
+9B8E E5AFB0
+9B8F E5AFB6
+9B90 E5AFB3
+9B91 E5B085
+9B92 E5B087
+9B93 E5B088
+9B94 E5B08D
+9B95 E5B093
+9B96 E5B0A0
+9B97 E5B0A2
+9B98 E5B0A8
+9B99 E5B0B8
+9B9A E5B0B9
+9B9B E5B181
+9B9C E5B186
+9B9D E5B18E
+9B9E E5B193
+9B9F E5B190
+9BA0 E5B18F
+9BA1 E5ADB1
+9BA2 E5B1AC
+9BA3 E5B1AE
+9BA4 E4B9A2
+9BA5 E5B1B6
+9BA6 E5B1B9
+9BA7 E5B28C
+9BA8 E5B291
+9BA9 E5B294
+9BAA E5A69B
+9BAB E5B2AB
+9BAC E5B2BB
+9BAD E5B2B6
+9BAE E5B2BC
+9BAF E5B2B7
+9BB0 E5B385
+9BB1 E5B2BE
+9BB2 E5B387
+9BB3 E5B399
+9BB4 E5B3A9
+9BB5 E5B3BD
+9BB6 E5B3BA
+9BB7 E5B3AD
+9BB8 E5B68C
+9BB9 E5B3AA
+9BBA E5B48B
+9BBB E5B495
+9BBC E5B497
+9BBD E5B59C
+9BBE E5B49F
+9BBF E5B49B
+9BC0 E5B491
+9BC1 E5B494
+9BC2 E5B4A2
+9BC3 E5B49A
+9BC4 E5B499
+9BC5 E5B498
+9BC6 E5B58C
+9BC7 E5B592
+9BC8 E5B58E
+9BC9 E5B58B
+9BCA E5B5AC
+9BCB E5B5B3
+9BCC E5B5B6
+9BCD E5B687
+9BCE E5B684
+9BCF E5B682
+9BD0 E5B6A2
+9BD1 E5B69D
+9BD2 E5B6AC
+9BD3 E5B6AE
+9BD4 E5B6BD
+9BD5 E5B690
+9BD6 E5B6B7
+9BD7 E5B6BC
+9BD8 E5B789
+9BD9 E5B78D
+9BDA E5B793
+9BDB E5B792
+9BDC E5B796
+9BDD E5B79B
+9BDE E5B7AB
+9BDF E5B7B2
+9BE0 E5B7B5
+9BE1 E5B88B
+9BE2 E5B89A
+9BE3 E5B899
+9BE4 E5B891
+9BE5 E5B89B
+9BE6 E5B8B6
+9BE7 E5B8B7
+9BE8 E5B984
+9BE9 E5B983
+9BEA E5B980
+9BEB E5B98E
+9BEC E5B997
+9BED E5B994
+9BEE E5B99F
+9BEF E5B9A2
+9BF0 E5B9A4
+9BF1 E5B987
+9BF2 E5B9B5
+9BF3 E5B9B6
+9BF4 E5B9BA
+9BF5 E9BABC
+9BF6 E5B9BF
+9BF7 E5BAA0
+9BF8 E5BB81
+9BF9 E5BB82
+9BFA E5BB88
+9BFB E5BB90
+9BFC E5BB8F
+9C40 E5BB96
+9C41 E5BBA3
+9C42 E5BB9D
+9C43 E5BB9A
+9C44 E5BB9B
+9C45 E5BBA2
+9C46 E5BBA1
+9C47 E5BBA8
+9C48 E5BBA9
+9C49 E5BBAC
+9C4A E5BBB1
+9C4B E5BBB3
+9C4C E5BBB0
+9C4D E5BBB4
+9C4E E5BBB8
+9C4F E5BBBE
+9C50 E5BC83
+9C51 E5BC89
+9C52 E5BD9D
+9C53 E5BD9C
+9C54 E5BC8B
+9C55 E5BC91
+9C56 E5BC96
+9C57 E5BCA9
+9C58 E5BCAD
+9C59 E5BCB8
+9C5A E5BD81
+9C5B E5BD88
+9C5C E5BD8C
+9C5D E5BD8E
+9C5E E5BCAF
+9C5F E5BD91
+9C60 E5BD96
+9C61 E5BD97
+9C62 E5BD99
+9C63 E5BDA1
+9C64 E5BDAD
+9C65 E5BDB3
+9C66 E5BDB7
+9C67 E5BE83
+9C68 E5BE82
+9C69 E5BDBF
+9C6A E5BE8A
+9C6B E5BE88
+9C6C E5BE91
+9C6D E5BE87
+9C6E E5BE9E
+9C6F E5BE99
+9C70 E5BE98
+9C71 E5BEA0
+9C72 E5BEA8
+9C73 E5BEAD
+9C74 E5BEBC
+9C75 E5BF96
+9C76 E5BFBB
+9C77 E5BFA4
+9C78 E5BFB8
+9C79 E5BFB1
+9C7A E5BF9D
+9C7B E682B3
+9C7C E5BFBF
+9C7D E680A1
+9C7E E681A0
+9C80 E68099
+9C81 E68090
+9C82 E680A9
+9C83 E6808E
+9C84 E680B1
+9C85 E6809B
+9C86 E68095
+9C87 E680AB
+9C88 E680A6
+9C89 E6808F
+9C8A E680BA
+9C8B E6819A
+9C8C E68181
+9C8D E681AA
+9C8E E681B7
+9C8F E6819F
+9C90 E6818A
+9C91 E68186
+9C92 E6818D
+9C93 E681A3
+9C94 E68183
+9C95 E681A4
+9C96 E68182
+9C97 E681AC
+9C98 E681AB
+9C99 E68199
+9C9A E68281
+9C9B E6828D
+9C9C E683A7
+9C9D E68283
+9C9E E6829A
+9C9F E68284
+9CA0 E6829B
+9CA1 E68296
+9CA2 E68297
+9CA3 E68292
+9CA4 E682A7
+9CA5 E6828B
+9CA6 E683A1
+9CA7 E682B8
+9CA8 E683A0
+9CA9 E68393
+9CAA E682B4
+9CAB E5BFB0
+9CAC E682BD
+9CAD E68386
+9CAE E682B5
+9CAF E68398
+9CB0 E6858D
+9CB1 E68495
+9CB2 E68486
+9CB3 E683B6
+9CB4 E683B7
+9CB5 E68480
+9CB6 E683B4
+9CB7 E683BA
+9CB8 E68483
+9CB9 E684A1
+9CBA E683BB
+9CBB E683B1
+9CBC E6848D
+9CBD E6848E
+9CBE E68587
+9CBF E684BE
+9CC0 E684A8
+9CC1 E684A7
+9CC2 E6858A
+9CC3 E684BF
+9CC4 E684BC
+9CC5 E684AC
+9CC6 E684B4
+9CC7 E684BD
+9CC8 E68582
+9CC9 E68584
+9CCA E685B3
+9CCB E685B7
+9CCC E68598
+9CCD E68599
+9CCE E6859A
+9CCF E685AB
+9CD0 E685B4
+9CD1 E685AF
+9CD2 E685A5
+9CD3 E685B1
+9CD4 E6859F
+9CD5 E6859D
+9CD6 E68593
+9CD7 E685B5
+9CD8 E68699
+9CD9 E68696
+9CDA E68687
+9CDB E686AC
+9CDC E68694
+9CDD E6869A
+9CDE E6868A
+9CDF E68691
+9CE0 E686AB
+9CE1 E686AE
+9CE2 E6878C
+9CE3 E6878A
+9CE4 E68789
+9CE5 E687B7
+9CE6 E68788
+9CE7 E68783
+9CE8 E68786
+9CE9 E686BA
+9CEA E6878B
+9CEB E7BDB9
+9CEC E6878D
+9CED E687A6
+9CEE E687A3
+9CEF E687B6
+9CF0 E687BA
+9CF1 E687B4
+9CF2 E687BF
+9CF3 E687BD
+9CF4 E687BC
+9CF5 E687BE
+9CF6 E68880
+9CF7 E68888
+9CF8 E68889
+9CF9 E6888D
+9CFA E6888C
+9CFB E68894
+9CFC E6889B
+9D40 E6889E
+9D41 E688A1
+9D42 E688AA
+9D43 E688AE
+9D44 E688B0
+9D45 E688B2
+9D46 E688B3
+9D47 E68981
+9D48 E6898E
+9D49 E6899E
+9D4A E689A3
+9D4B E6899B
+9D4C E689A0
+9D4D E689A8
+9D4E E689BC
+9D4F E68A82
+9D50 E68A89
+9D51 E689BE
+9D52 E68A92
+9D53 E68A93
+9D54 E68A96
+9D55 E68B94
+9D56 E68A83
+9D57 E68A94
+9D58 E68B97
+9D59 E68B91
+9D5A E68ABB
+9D5B E68B8F
+9D5C E68BBF
+9D5D E68B86
+9D5E E69394
+9D5F E68B88
+9D60 E68B9C
+9D61 E68B8C
+9D62 E68B8A
+9D63 E68B82
+9D64 E68B87
+9D65 E68A9B
+9D66 E68B89
+9D67 E68C8C
+9D68 E68BAE
+9D69 E68BB1
+9D6A E68CA7
+9D6B E68C82
+9D6C E68C88
+9D6D E68BAF
+9D6E E68BB5
+9D6F E68D90
+9D70 E68CBE
+9D71 E68D8D
+9D72 E6909C
+9D73 E68D8F
+9D74 E68E96
+9D75 E68E8E
+9D76 E68E80
+9D77 E68EAB
+9D78 E68DB6
+9D79 E68EA3
+9D7A E68E8F
+9D7B E68E89
+9D7C E68E9F
+9D7D E68EB5
+9D7E E68DAB
+9D80 E68DA9
+9D81 E68EBE
+9D82 E68FA9
+9D83 E68F80
+9D84 E68F86
+9D85 E68FA3
+9D86 E68F89
+9D87 E68F92
+9D88 E68FB6
+9D89 E68F84
+9D8A E69096
+9D8B E690B4
+9D8C E69086
+9D8D E69093
+9D8E E690A6
+9D8F E690B6
+9D90 E6949D
+9D91 E69097
+9D92 E690A8
+9D93 E6908F
+9D94 E691A7
+9D95 E691AF
+9D96 E691B6
+9D97 E6918E
+9D98 E694AA
+9D99 E69295
+9D9A E69293
+9D9B E692A5
+9D9C E692A9
+9D9D E69288
+9D9E E692BC
+9D9F E6939A
+9DA0 E69392
+9DA1 E69385
+9DA2 E69387
+9DA3 E692BB
+9DA4 E69398
+9DA5 E69382
+9DA6 E693B1
+9DA7 E693A7
+9DA8 E88889
+9DA9 E693A0
+9DAA E693A1
+9DAB E68AAC
+9DAC E693A3
+9DAD E693AF
+9DAE E694AC
+9DAF E693B6
+9DB0 E693B4
+9DB1 E693B2
+9DB2 E693BA
+9DB3 E69480
+9DB4 E693BD
+9DB5 E69498
+9DB6 E6949C
+9DB7 E69485
+9DB8 E694A4
+9DB9 E694A3
+9DBA E694AB
+9DBB E694B4
+9DBC E694B5
+9DBD E694B7
+9DBE E694B6
+9DBF E694B8
+9DC0 E7958B
+9DC1 E69588
+9DC2 E69596
+9DC3 E69595
+9DC4 E6958D
+9DC5 E69598
+9DC6 E6959E
+9DC7 E6959D
+9DC8 E695B2
+9DC9 E695B8
+9DCA E69682
+9DCB E69683
+9DCC E8AE8A
+9DCD E6969B
+9DCE E6969F
+9DCF E696AB
+9DD0 E696B7
+9DD1 E69783
+9DD2 E69786
+9DD3 E69781
+9DD4 E69784
+9DD5 E6978C
+9DD6 E69792
+9DD7 E6979B
+9DD8 E69799
+9DD9 E697A0
+9DDA E697A1
+9DDB E697B1
+9DDC E69DB2
+9DDD E6988A
+9DDE E69883
+9DDF E697BB
+9DE0 E69DB3
+9DE1 E698B5
+9DE2 E698B6
+9DE3 E698B4
+9DE4 E6989C
+9DE5 E6998F
+9DE6 E69984
+9DE7 E69989
+9DE8 E69981
+9DE9 E6999E
+9DEA E6999D
+9DEB E699A4
+9DEC E699A7
+9DED E699A8
+9DEE E6999F
+9DEF E699A2
+9DF0 E699B0
+9DF1 E69A83
+9DF2 E69A88
+9DF3 E69A8E
+9DF4 E69A89
+9DF5 E69A84
+9DF6 E69A98
+9DF7 E69A9D
+9DF8 E69B81
+9DF9 E69AB9
+9DFA E69B89
+9DFB E69ABE
+9DFC E69ABC
+9E40 E69B84
+9E41 E69AB8
+9E42 E69B96
+9E43 E69B9A
+9E44 E69BA0
+9E45 E698BF
+9E46 E69BA6
+9E47 E69BA9
+9E48 E69BB0
+9E49 E69BB5
+9E4A E69BB7
+9E4B E69C8F
+9E4C E69C96
+9E4D E69C9E
+9E4E E69CA6
+9E4F E69CA7
+9E50 E99CB8
+9E51 E69CAE
+9E52 E69CBF
+9E53 E69CB6
+9E54 E69D81
+9E55 E69CB8
+9E56 E69CB7
+9E57 E69D86
+9E58 E69D9E
+9E59 E69DA0
+9E5A E69D99
+9E5B E69DA3
+9E5C E69DA4
+9E5D E69E89
+9E5E E69DB0
+9E5F E69EA9
+9E60 E69DBC
+9E61 E69DAA
+9E62 E69E8C
+9E63 E69E8B
+9E64 E69EA6
+9E65 E69EA1
+9E66 E69E85
+9E67 E69EB7
+9E68 E69FAF
+9E69 E69EB4
+9E6A E69FAC
+9E6B E69EB3
+9E6C E69FA9
+9E6D E69EB8
+9E6E E69FA4
+9E6F E69F9E
+9E70 E69F9D
+9E71 E69FA2
+9E72 E69FAE
+9E73 E69EB9
+9E74 E69F8E
+9E75 E69F86
+9E76 E69FA7
+9E77 E6AA9C
+9E78 E6A09E
+9E79 E6A186
+9E7A E6A0A9
+9E7B E6A180
+9E7C E6A18D
+9E7D E6A0B2
+9E7E E6A18E
+9E80 E6A2B3
+9E81 E6A0AB
+9E82 E6A199
+9E83 E6A1A3
+9E84 E6A1B7
+9E85 E6A1BF
+9E86 E6A29F
+9E87 E6A28F
+9E88 E6A2AD
+9E89 E6A294
+9E8A E6A29D
+9E8B E6A29B
+9E8C E6A283
+9E8D E6AAAE
+9E8E E6A2B9
+9E8F E6A1B4
+9E90 E6A2B5
+9E91 E6A2A0
+9E92 E6A2BA
+9E93 E6A48F
+9E94 E6A28D
+9E95 E6A1BE
+9E96 E6A481
+9E97 E6A38A
+9E98 E6A488
+9E99 E6A398
+9E9A E6A4A2
+9E9B E6A4A6
+9E9C E6A3A1
+9E9D E6A48C
+9E9E E6A38D
+9E9F E6A394
+9EA0 E6A3A7
+9EA1 E6A395
+9EA2 E6A4B6
+9EA3 E6A492
+9EA4 E6A484
+9EA5 E6A397
+9EA6 E6A3A3
+9EA7 E6A4A5
+9EA8 E6A3B9
+9EA9 E6A3A0
+9EAA E6A3AF
+9EAB E6A4A8
+9EAC E6A4AA
+9EAD E6A49A
+9EAE E6A4A3
+9EAF E6A4A1
+9EB0 E6A386
+9EB1 E6A5B9
+9EB2 E6A5B7
+9EB3 E6A59C
+9EB4 E6A5B8
+9EB5 E6A5AB
+9EB6 E6A594
+9EB7 E6A5BE
+9EB8 E6A5AE
+9EB9 E6A4B9
+9EBA E6A5B4
+9EBB E6A4BD
+9EBC E6A599
+9EBD E6A4B0
+9EBE E6A5A1
+9EBF E6A59E
+9EC0 E6A59D
+9EC1 E6A681
+9EC2 E6A5AA
+9EC3 E6A6B2
+9EC4 E6A6AE
+9EC5 E6A790
+9EC6 E6A6BF
+9EC7 E6A781
+9EC8 E6A793
+9EC9 E6A6BE
+9ECA E6A78E
+9ECB E5AFA8
+9ECC E6A78A
+9ECD E6A79D
+9ECE E6A6BB
+9ECF E6A783
+9ED0 E6A6A7
+9ED1 E6A8AE
+9ED2 E6A691
+9ED3 E6A6A0
+9ED4 E6A69C
+9ED5 E6A695
+9ED6 E6A6B4
+9ED7 E6A79E
+9ED8 E6A7A8
+9ED9 E6A882
+9EDA E6A89B
+9EDB E6A7BF
+9EDC E6AC8A
+9EDD E6A7B9
+9EDE E6A7B2
+9EDF E6A7A7
+9EE0 E6A885
+9EE1 E6A6B1
+9EE2 E6A89E
+9EE3 E6A7AD
+9EE4 E6A894
+9EE5 E6A7AB
+9EE6 E6A88A
+9EE7 E6A892
+9EE8 E6AB81
+9EE9 E6A8A3
+9EEA E6A893
+9EEB E6A984
+9EEC E6A88C
+9EED E6A9B2
+9EEE E6A8B6
+9EEF E6A9B8
+9EF0 E6A987
+9EF1 E6A9A2
+9EF2 E6A999
+9EF3 E6A9A6
+9EF4 E6A988
+9EF5 E6A8B8
+9EF6 E6A8A2
+9EF7 E6AA90
+9EF8 E6AA8D
+9EF9 E6AAA0
+9EFA E6AA84
+9EFB E6AAA2
+9EFC E6AAA3
+9F40 E6AA97
+9F41 E89897
+9F42 E6AABB
+9F43 E6AB83
+9F44 E6AB82
+9F45 E6AAB8
+9F46 E6AAB3
+9F47 E6AAAC
+9F48 E6AB9E
+9F49 E6AB91
+9F4A E6AB9F
+9F4B E6AAAA
+9F4C E6AB9A
+9F4D E6ABAA
+9F4E E6ABBB
+9F4F E6AC85
+9F50 E89896
+9F51 E6ABBA
+9F52 E6AC92
+9F53 E6AC96
+9F54 E9ACB1
+9F55 E6AC9F
+9F56 E6ACB8
+9F57 E6ACB7
+9F58 E79B9C
+9F59 E6ACB9
+9F5A E9A3AE
+9F5B E6AD87
+9F5C E6AD83
+9F5D E6AD89
+9F5E E6AD90
+9F5F E6AD99
+9F60 E6AD94
+9F61 E6AD9B
+9F62 E6AD9F
+9F63 E6ADA1
+9F64 E6ADB8
+9F65 E6ADB9
+9F66 E6ADBF
+9F67 E6AE80
+9F68 E6AE84
+9F69 E6AE83
+9F6A E6AE8D
+9F6B E6AE98
+9F6C E6AE95
+9F6D E6AE9E
+9F6E E6AEA4
+9F6F E6AEAA
+9F70 E6AEAB
+9F71 E6AEAF
+9F72 E6AEB2
+9F73 E6AEB1
+9F74 E6AEB3
+9F75 E6AEB7
+9F76 E6AEBC
+9F77 E6AF86
+9F78 E6AF8B
+9F79 E6AF93
+9F7A E6AF9F
+9F7B E6AFAC
+9F7C E6AFAB
+9F7D E6AFB3
+9F7E E6AFAF
+9F80 E9BABE
+9F81 E6B088
+9F82 E6B093
+9F83 E6B094
+9F84 E6B09B
+9F85 E6B0A4
+9F86 E6B0A3
+9F87 E6B19E
+9F88 E6B195
+9F89 E6B1A2
+9F8A E6B1AA
+9F8B E6B282
+9F8C E6B28D
+9F8D E6B29A
+9F8E E6B281
+9F8F E6B29B
+9F90 E6B1BE
+9F91 E6B1A8
+9F92 E6B1B3
+9F93 E6B292
+9F94 E6B290
+9F95 E6B384
+9F96 E6B3B1
+9F97 E6B393
+9F98 E6B2BD
+9F99 E6B397
+9F9A E6B385
+9F9B E6B39D
+9F9C E6B2AE
+9F9D E6B2B1
+9F9E E6B2BE
+9F9F E6B2BA
+9FA0 E6B39B
+9FA1 E6B3AF
+9FA2 E6B399
+9FA3 E6B3AA
+9FA4 E6B49F
+9FA5 E8A18D
+9FA6 E6B4B6
+9FA7 E6B4AB
+9FA8 E6B4BD
+9FA9 E6B4B8
+9FAA E6B499
+9FAB E6B4B5
+9FAC E6B4B3
+9FAD E6B492
+9FAE E6B48C
+9FAF E6B5A3
+9FB0 E6B693
+9FB1 E6B5A4
+9FB2 E6B59A
+9FB3 E6B5B9
+9FB4 E6B599
+9FB5 E6B68E
+9FB6 E6B695
+9FB7 E6BFA4
+9FB8 E6B685
+9FB9 E6B7B9
+9FBA E6B895
+9FBB E6B88A
+9FBC E6B6B5
+9FBD E6B787
+9FBE E6B7A6
+9FBF E6B6B8
+9FC0 E6B786
+9FC1 E6B7AC
+9FC2 E6B79E
+9FC3 E6B78C
+9FC4 E6B7A8
+9FC5 E6B792
+9FC6 E6B785
+9FC7 E6B7BA
+9FC8 E6B799
+9FC9 E6B7A4
+9FCA E6B795
+9FCB E6B7AA
+9FCC E6B7AE
+9FCD E6B8AD
+9FCE E6B9AE
+9FCF E6B8AE
+9FD0 E6B899
+9FD1 E6B9B2
+9FD2 E6B99F
+9FD3 E6B8BE
+9FD4 E6B8A3
+9FD5 E6B9AB
+9FD6 E6B8AB
+9FD7 E6B9B6
+9FD8 E6B98D
+9FD9 E6B89F
+9FDA E6B983
+9FDB E6B8BA
+9FDC E6B98E
+9FDD E6B8A4
+9FDE E6BBBF
+9FDF E6B89D
+9FE0 E6B8B8
+9FE1 E6BA82
+9FE2 E6BAAA
+9FE3 E6BA98
+9FE4 E6BB89
+9FE5 E6BAB7
+9FE6 E6BB93
+9FE7 E6BABD
+9FE8 E6BAAF
+9FE9 E6BB84
+9FEA E6BAB2
+9FEB E6BB94
+9FEC E6BB95
+9FED E6BA8F
+9FEE E6BAA5
+9FEF E6BB82
+9FF0 E6BA9F
+9FF1 E6BD81
+9FF2 E6BC91
+9FF3 E7818C
+9FF4 E6BBAC
+9FF5 E6BBB8
+9FF6 E6BBBE
+9FF7 E6BCBF
+9FF8 E6BBB2
+9FF9 E6BCB1
+9FFA E6BBAF
+9FFB E6BCB2
+9FFC E6BB8C
+A1 EFBDA1
+A2 EFBDA2
+A3 EFBDA3
+A4 EFBDA4
+A5 EFBDA5
+A6 EFBDA6
+A7 EFBDA7
+A8 EFBDA8
+A9 EFBDA9
+AA EFBDAA
+AB EFBDAB
+AC EFBDAC
+AD EFBDAD
+AE EFBDAE
+AF EFBDAF
+B0 EFBDB0
+B1 EFBDB1
+B2 EFBDB2
+B3 EFBDB3
+B4 EFBDB4
+B5 EFBDB5
+B6 EFBDB6
+B7 EFBDB7
+B8 EFBDB8
+B9 EFBDB9
+BA EFBDBA
+BB EFBDBB
+BC EFBDBC
+BD EFBDBD
+BE EFBDBE
+BF EFBDBF
+C0 EFBE80
+C1 EFBE81
+C2 EFBE82
+C3 EFBE83
+C4 EFBE84
+C5 EFBE85
+C6 EFBE86
+C7 EFBE87
+C8 EFBE88
+C9 EFBE89
+CA EFBE8A
+CB EFBE8B
+CC EFBE8C
+CD EFBE8D
+CE EFBE8E
+CF EFBE8F
+D0 EFBE90
+D1 EFBE91
+D2 EFBE92
+D3 EFBE93
+D4 EFBE94
+D5 EFBE95
+D6 EFBE96
+D7 EFBE97
+D8 EFBE98
+D9 EFBE99
+DA EFBE9A
+DB EFBE9B
+DC EFBE9C
+DD EFBE9D
+DE EFBE9E
+DF EFBE9F
+E040 E6BCBE
+E041 E6BC93
+E042 E6BBB7
+E043 E6BE86
+E044 E6BDBA
+E045 E6BDB8
+E046 E6BE81
+E047 E6BE80
+E048 E6BDAF
+E049 E6BD9B
+E04A E6BFB3
+E04B E6BDAD
+E04C E6BE82
+E04D E6BDBC
+E04E E6BD98
+E04F E6BE8E
+E050 E6BE91
+E051 E6BF82
+E052 E6BDA6
+E053 E6BEB3
+E054 E6BEA3
+E055 E6BEA1
+E056 E6BEA4
+E057 E6BEB9
+E058 E6BF86
+E059 E6BEAA
+E05A E6BF9F
+E05B E6BF95
+E05C E6BFAC
+E05D E6BF94
+E05E E6BF98
+E05F E6BFB1
+E060 E6BFAE
+E061 E6BF9B
+E062 E78089
+E063 E7808B
+E064 E6BFBA
+E065 E78091
+E066 E78081
+E067 E7808F
+E068 E6BFBE
+E069 E7809B
+E06A E7809A
+E06B E6BDB4
+E06C E7809D
+E06D E78098
+E06E E7809F
+E06F E780B0
+E070 E780BE
+E071 E780B2
+E072 E78191
+E073 E781A3
+E074 E78299
+E075 E78292
+E076 E782AF
+E077 E783B1
+E078 E782AC
+E079 E782B8
+E07A E782B3
+E07B E782AE
+E07C E7839F
+E07D E7838B
+E07E E7839D
+E080 E78399
+E081 E78489
+E082 E783BD
+E083 E7849C
+E084 E78499
+E085 E785A5
+E086 E78595
+E087 E78688
+E088 E785A6
+E089 E785A2
+E08A E7858C
+E08B E78596
+E08C E785AC
+E08D E7868F
+E08E E787BB
+E08F E78684
+E090 E78695
+E091 E786A8
+E092 E786AC
+E093 E78797
+E094 E786B9
+E095 E786BE
+E096 E78792
+E097 E78789
+E098 E78794
+E099 E7878E
+E09A E787A0
+E09B E787AC
+E09C E787A7
+E09D E787B5
+E09E E787BC
+E09F E787B9
+E0A0 E787BF
+E0A1 E7888D
+E0A2 E78890
+E0A3 E7889B
+E0A4 E788A8
+E0A5 E788AD
+E0A6 E788AC
+E0A7 E788B0
+E0A8 E788B2
+E0A9 E788BB
+E0AA E788BC
+E0AB E788BF
+E0AC E78980
+E0AD E78986
+E0AE E7898B
+E0AF E78998
+E0B0 E789B4
+E0B1 E789BE
+E0B2 E78A82
+E0B3 E78A81
+E0B4 E78A87
+E0B5 E78A92
+E0B6 E78A96
+E0B7 E78AA2
+E0B8 E78AA7
+E0B9 E78AB9
+E0BA E78AB2
+E0BB E78B83
+E0BC E78B86
+E0BD E78B84
+E0BE E78B8E
+E0BF E78B92
+E0C0 E78BA2
+E0C1 E78BA0
+E0C2 E78BA1
+E0C3 E78BB9
+E0C4 E78BB7
+E0C5 E5808F
+E0C6 E78C97
+E0C7 E78C8A
+E0C8 E78C9C
+E0C9 E78C96
+E0CA E78C9D
+E0CB E78CB4
+E0CC E78CAF
+E0CD E78CA9
+E0CE E78CA5
+E0CF E78CBE
+E0D0 E78D8E
+E0D1 E78D8F
+E0D2 E9BB98
+E0D3 E78D97
+E0D4 E78DAA
+E0D5 E78DA8
+E0D6 E78DB0
+E0D7 E78DB8
+E0D8 E78DB5
+E0D9 E78DBB
+E0DA E78DBA
+E0DB E78F88
+E0DC E78EB3
+E0DD E78F8E
+E0DE E78EBB
+E0DF E78F80
+E0E0 E78FA5
+E0E1 E78FAE
+E0E2 E78F9E
+E0E3 E792A2
+E0E4 E79085
+E0E5 E791AF
+E0E6 E790A5
+E0E7 E78FB8
+E0E8 E790B2
+E0E9 E790BA
+E0EA E79195
+E0EB E790BF
+E0EC E7919F
+E0ED E79199
+E0EE E79181
+E0EF E7919C
+E0F0 E791A9
+E0F1 E791B0
+E0F2 E791A3
+E0F3 E791AA
+E0F4 E791B6
+E0F5 E791BE
+E0F6 E7928B
+E0F7 E7929E
+E0F8 E792A7
+E0F9 E7938A
+E0FA E7938F
+E0FB E79394
+E0FC E78FB1
+E140 E793A0
+E141 E793A3
+E142 E793A7
+E143 E793A9
+E144 E793AE
+E145 E793B2
+E146 E793B0
+E147 E793B1
+E148 E793B8
+E149 E793B7
+E14A E79484
+E14B E79483
+E14C E79485
+E14D E7948C
+E14E E7948E
+E14F E7948D
+E150 E79495
+E151 E79493
+E152 E7949E
+E153 E794A6
+E154 E794AC
+E155 E794BC
+E156 E79584
+E157 E7958D
+E158 E7958A
+E159 E79589
+E15A E7959B
+E15B E79586
+E15C E7959A
+E15D E795A9
+E15E E795A4
+E15F E795A7
+E160 E795AB
+E161 E795AD
+E162 E795B8
+E163 E795B6
+E164 E79686
+E165 E79687
+E166 E795B4
+E167 E7968A
+E168 E79689
+E169 E79682
+E16A E79694
+E16B E7969A
+E16C E7969D
+E16D E796A5
+E16E E796A3
+E16F E79782
+E170 E796B3
+E171 E79783
+E172 E796B5
+E173 E796BD
+E174 E796B8
+E175 E796BC
+E176 E796B1
+E177 E7978D
+E178 E7978A
+E179 E79792
+E17A E79799
+E17B E797A3
+E17C E7979E
+E17D E797BE
+E17E E797BF
+E180 E797BC
+E181 E79881
+E182 E797B0
+E183 E797BA
+E184 E797B2
+E185 E797B3
+E186 E7988B
+E187 E7988D
+E188 E79889
+E189 E7989F
+E18A E798A7
+E18B E798A0
+E18C E798A1
+E18D E798A2
+E18E E798A4
+E18F E798B4
+E190 E798B0
+E191 E798BB
+E192 E79987
+E193 E79988
+E194 E79986
+E195 E7999C
+E196 E79998
+E197 E799A1
+E198 E799A2
+E199 E799A8
+E19A E799A9
+E19B E799AA
+E19C E799A7
+E19D E799AC
+E19E E799B0
+E19F E799B2
+E1A0 E799B6
+E1A1 E799B8
+E1A2 E799BC
+E1A3 E79A80
+E1A4 E79A83
+E1A5 E79A88
+E1A6 E79A8B
+E1A7 E79A8E
+E1A8 E79A96
+E1A9 E79A93
+E1AA E79A99
+E1AB E79A9A
+E1AC E79AB0
+E1AD E79AB4
+E1AE E79AB8
+E1AF E79AB9
+E1B0 E79ABA
+E1B1 E79B82
+E1B2 E79B8D
+E1B3 E79B96
+E1B4 E79B92
+E1B5 E79B9E
+E1B6 E79BA1
+E1B7 E79BA5
+E1B8 E79BA7
+E1B9 E79BAA
+E1BA E898AF
+E1BB E79BBB
+E1BC E79C88
+E1BD E79C87
+E1BE E79C84
+E1BF E79CA9
+E1C0 E79CA4
+E1C1 E79C9E
+E1C2 E79CA5
+E1C3 E79CA6
+E1C4 E79C9B
+E1C5 E79CB7
+E1C6 E79CB8
+E1C7 E79D87
+E1C8 E79D9A
+E1C9 E79DA8
+E1CA E79DAB
+E1CB E79D9B
+E1CC E79DA5
+E1CD E79DBF
+E1CE E79DBE
+E1CF E79DB9
+E1D0 E79E8E
+E1D1 E79E8B
+E1D2 E79E91
+E1D3 E79EA0
+E1D4 E79E9E
+E1D5 E79EB0
+E1D6 E79EB6
+E1D7 E79EB9
+E1D8 E79EBF
+E1D9 E79EBC
+E1DA E79EBD
+E1DB E79EBB
+E1DC E79F87
+E1DD E79F8D
+E1DE E79F97
+E1DF E79F9A
+E1E0 E79F9C
+E1E1 E79FA3
+E1E2 E79FAE
+E1E3 E79FBC
+E1E4 E7A08C
+E1E5 E7A092
+E1E6 E7A4A6
+E1E7 E7A0A0
+E1E8 E7A4AA
+E1E9 E7A185
+E1EA E7A28E
+E1EB E7A1B4
+E1EC E7A286
+E1ED E7A1BC
+E1EE E7A29A
+E1EF E7A28C
+E1F0 E7A2A3
+E1F1 E7A2B5
+E1F2 E7A2AA
+E1F3 E7A2AF
+E1F4 E7A391
+E1F5 E7A386
+E1F6 E7A38B
+E1F7 E7A394
+E1F8 E7A2BE
+E1F9 E7A2BC
+E1FA E7A385
+E1FB E7A38A
+E1FC E7A3AC
+E240 E7A3A7
+E241 E7A39A
+E242 E7A3BD
+E243 E7A3B4
+E244 E7A487
+E245 E7A492
+E246 E7A491
+E247 E7A499
+E248 E7A4AC
+E249 E7A4AB
+E24A E7A580
+E24B E7A5A0
+E24C E7A597
+E24D E7A59F
+E24E E7A59A
+E24F E7A595
+E250 E7A593
+E251 E7A5BA
+E252 E7A5BF
+E253 E7A68A
+E254 E7A69D
+E255 E7A6A7
+E256 E9BD8B
+E257 E7A6AA
+E258 E7A6AE
+E259 E7A6B3
+E25A E7A6B9
+E25B E7A6BA
+E25C E7A789
+E25D E7A795
+E25E E7A7A7
+E25F E7A7AC
+E260 E7A7A1
+E261 E7A7A3
+E262 E7A888
+E263 E7A88D
+E264 E7A898
+E265 E7A899
+E266 E7A8A0
+E267 E7A89F
+E268 E7A680
+E269 E7A8B1
+E26A E7A8BB
+E26B E7A8BE
+E26C E7A8B7
+E26D E7A983
+E26E E7A997
+E26F E7A989
+E270 E7A9A1
+E271 E7A9A2
+E272 E7A9A9
+E273 E9BE9D
+E274 E7A9B0
+E275 E7A9B9
+E276 E7A9BD
+E277 E7AA88
+E278 E7AA97
+E279 E7AA95
+E27A E7AA98
+E27B E7AA96
+E27C E7AAA9
+E27D E7AB88
+E27E E7AAB0
+E280 E7AAB6
+E281 E7AB85
+E282 E7AB84
+E283 E7AABF
+E284 E98283
+E285 E7AB87
+E286 E7AB8A
+E287 E7AB8D
+E288 E7AB8F
+E289 E7AB95
+E28A E7AB93
+E28B E7AB99
+E28C E7AB9A
+E28D E7AB9D
+E28E E7ABA1
+E28F E7ABA2
+E290 E7ABA6
+E291 E7ABAD
+E292 E7ABB0
+E293 E7AC82
+E294 E7AC8F
+E295 E7AC8A
+E296 E7AC86
+E297 E7ACB3
+E298 E7AC98
+E299 E7AC99
+E29A E7AC9E
+E29B E7ACB5
+E29C E7ACA8
+E29D E7ACB6
+E29E E7AD90
+E29F E7ADBA
+E2A0 E7AC84
+E2A1 E7AD8D
+E2A2 E7AC8B
+E2A3 E7AD8C
+E2A4 E7AD85
+E2A5 E7ADB5
+E2A6 E7ADA5
+E2A7 E7ADB4
+E2A8 E7ADA7
+E2A9 E7ADB0
+E2AA E7ADB1
+E2AB E7ADAC
+E2AC E7ADAE
+E2AD E7AE9D
+E2AE E7AE98
+E2AF E7AE9F
+E2B0 E7AE8D
+E2B1 E7AE9C
+E2B2 E7AE9A
+E2B3 E7AE8B
+E2B4 E7AE92
+E2B5 E7AE8F
+E2B6 E7AD9D
+E2B7 E7AE99
+E2B8 E7AF8B
+E2B9 E7AF81
+E2BA E7AF8C
+E2BB E7AF8F
+E2BC E7AEB4
+E2BD E7AF86
+E2BE E7AF9D
+E2BF E7AFA9
+E2C0 E7B091
+E2C1 E7B094
+E2C2 E7AFA6
+E2C3 E7AFA5
+E2C4 E7B1A0
+E2C5 E7B080
+E2C6 E7B087
+E2C7 E7B093
+E2C8 E7AFB3
+E2C9 E7AFB7
+E2CA E7B097
+E2CB E7B08D
+E2CC E7AFB6
+E2CD E7B0A3
+E2CE E7B0A7
+E2CF E7B0AA
+E2D0 E7B09F
+E2D1 E7B0B7
+E2D2 E7B0AB
+E2D3 E7B0BD
+E2D4 E7B18C
+E2D5 E7B183
+E2D6 E7B194
+E2D7 E7B18F
+E2D8 E7B180
+E2D9 E7B190
+E2DA E7B198
+E2DB E7B19F
+E2DC E7B1A4
+E2DD E7B196
+E2DE E7B1A5
+E2DF E7B1AC
+E2E0 E7B1B5
+E2E1 E7B283
+E2E2 E7B290
+E2E3 E7B2A4
+E2E4 E7B2AD
+E2E5 E7B2A2
+E2E6 E7B2AB
+E2E7 E7B2A1
+E2E8 E7B2A8
+E2E9 E7B2B3
+E2EA E7B2B2
+E2EB E7B2B1
+E2EC E7B2AE
+E2ED E7B2B9
+E2EE E7B2BD
+E2EF E7B380
+E2F0 E7B385
+E2F1 E7B382
+E2F2 E7B398
+E2F3 E7B392
+E2F4 E7B39C
+E2F5 E7B3A2
+E2F6 E9ACBB
+E2F7 E7B3AF
+E2F8 E7B3B2
+E2F9 E7B3B4
+E2FA E7B3B6
+E2FB E7B3BA
+E2FC E7B486
+E340 E7B482
+E341 E7B49C
+E342 E7B495
+E343 E7B48A
+E344 E7B585
+E345 E7B58B
+E346 E7B4AE
+E347 E7B4B2
+E348 E7B4BF
+E349 E7B4B5
+E34A E7B586
+E34B E7B5B3
+E34C E7B596
+E34D E7B58E
+E34E E7B5B2
+E34F E7B5A8
+E350 E7B5AE
+E351 E7B58F
+E352 E7B5A3
+E353 E7B693
+E354 E7B689
+E355 E7B59B
+E356 E7B68F
+E357 E7B5BD
+E358 E7B69B
+E359 E7B6BA
+E35A E7B6AE
+E35B E7B6A3
+E35C E7B6B5
+E35D E7B787
+E35E E7B6BD
+E35F E7B6AB
+E360 E7B8BD
+E361 E7B6A2
+E362 E7B6AF
+E363 E7B79C
+E364 E7B6B8
+E365 E7B69F
+E366 E7B6B0
+E367 E7B798
+E368 E7B79D
+E369 E7B7A4
+E36A E7B79E
+E36B E7B7BB
+E36C E7B7B2
+E36D E7B7A1
+E36E E7B885
+E36F E7B88A
+E370 E7B8A3
+E371 E7B8A1
+E372 E7B892
+E373 E7B8B1
+E374 E7B89F
+E375 E7B889
+E376 E7B88B
+E377 E7B8A2
+E378 E7B986
+E379 E7B9A6
+E37A E7B8BB
+E37B E7B8B5
+E37C E7B8B9
+E37D E7B983
+E37E E7B8B7
+E380 E7B8B2
+E381 E7B8BA
+E382 E7B9A7
+E383 E7B99D
+E384 E7B996
+E385 E7B99E
+E386 E7B999
+E387 E7B99A
+E388 E7B9B9
+E389 E7B9AA
+E38A E7B9A9
+E38B E7B9BC
+E38C E7B9BB
+E38D E7BA83
+E38E E7B795
+E38F E7B9BD
+E390 E8BEAE
+E391 E7B9BF
+E392 E7BA88
+E393 E7BA89
+E394 E7BA8C
+E395 E7BA92
+E396 E7BA90
+E397 E7BA93
+E398 E7BA94
+E399 E7BA96
+E39A E7BA8E
+E39B E7BA9B
+E39C E7BA9C
+E39D E7BCB8
+E39E E7BCBA
+E39F E7BD85
+E3A0 E7BD8C
+E3A1 E7BD8D
+E3A2 E7BD8E
+E3A3 E7BD90
+E3A4 E7BD91
+E3A5 E7BD95
+E3A6 E7BD94
+E3A7 E7BD98
+E3A8 E7BD9F
+E3A9 E7BDA0
+E3AA E7BDA8
+E3AB E7BDA9
+E3AC E7BDA7
+E3AD E7BDB8
+E3AE E7BE82
+E3AF E7BE86
+E3B0 E7BE83
+E3B1 E7BE88
+E3B2 E7BE87
+E3B3 E7BE8C
+E3B4 E7BE94
+E3B5 E7BE9E
+E3B6 E7BE9D
+E3B7 E7BE9A
+E3B8 E7BEA3
+E3B9 E7BEAF
+E3BA E7BEB2
+E3BB E7BEB9
+E3BC E7BEAE
+E3BD E7BEB6
+E3BE E7BEB8
+E3BF E8ADB1
+E3C0 E7BF85
+E3C1 E7BF86
+E3C2 E7BF8A
+E3C3 E7BF95
+E3C4 E7BF94
+E3C5 E7BFA1
+E3C6 E7BFA6
+E3C7 E7BFA9
+E3C8 E7BFB3
+E3C9 E7BFB9
+E3CA E9A39C
+E3CB E88086
+E3CC E88084
+E3CD E8808B
+E3CE E88092
+E3CF E88098
+E3D0 E88099
+E3D1 E8809C
+E3D2 E880A1
+E3D3 E880A8
+E3D4 E880BF
+E3D5 E880BB
+E3D6 E8818A
+E3D7 E88186
+E3D8 E88192
+E3D9 E88198
+E3DA E8819A
+E3DB E8819F
+E3DC E881A2
+E3DD E881A8
+E3DE E881B3
+E3DF E881B2
+E3E0 E881B0
+E3E1 E881B6
+E3E2 E881B9
+E3E3 E881BD
+E3E4 E881BF
+E3E5 E88284
+E3E6 E88286
+E3E7 E88285
+E3E8 E8829B
+E3E9 E88293
+E3EA E8829A
+E3EB E882AD
+E3EC E58690
+E3ED E882AC
+E3EE E8839B
+E3EF E883A5
+E3F0 E88399
+E3F1 E8839D
+E3F2 E88384
+E3F3 E8839A
+E3F4 E88396
+E3F5 E88489
+E3F6 E883AF
+E3F7 E883B1
+E3F8 E8849B
+E3F9 E884A9
+E3FA E884A3
+E3FB E884AF
+E3FC E8858B
+E440 E99A8B
+E441 E88586
+E442 E884BE
+E443 E88593
+E444 E88591
+E445 E883BC
+E446 E885B1
+E447 E885AE
+E448 E885A5
+E449 E885A6
+E44A E885B4
+E44B E88683
+E44C E88688
+E44D E8868A
+E44E E88680
+E44F E88682
+E450 E886A0
+E451 E88695
+E452 E886A4
+E453 E886A3
+E454 E8859F
+E455 E88693
+E456 E886A9
+E457 E886B0
+E458 E886B5
+E459 E886BE
+E45A E886B8
+E45B E886BD
+E45C E88780
+E45D E88782
+E45E E886BA
+E45F E88789
+E460 E8878D
+E461 E88791
+E462 E88799
+E463 E88798
+E464 E88788
+E465 E8879A
+E466 E8879F
+E467 E887A0
+E468 E887A7
+E469 E887BA
+E46A E887BB
+E46B E887BE
+E46C E88881
+E46D E88882
+E46E E88885
+E46F E88887
+E470 E8888A
+E471 E8888D
+E472 E88890
+E473 E88896
+E474 E888A9
+E475 E888AB
+E476 E888B8
+E477 E888B3
+E478 E88980
+E479 E88999
+E47A E88998
+E47B E8899D
+E47C E8899A
+E47D E8899F
+E47E E889A4
+E480 E889A2
+E481 E889A8
+E482 E889AA
+E483 E889AB
+E484 E888AE
+E485 E889B1
+E486 E889B7
+E487 E889B8
+E488 E889BE
+E489 E88A8D
+E48A E88A92
+E48B E88AAB
+E48C E88A9F
+E48D E88ABB
+E48E E88AAC
+E48F E88BA1
+E490 E88BA3
+E491 E88B9F
+E492 E88B92
+E493 E88BB4
+E494 E88BB3
+E495 E88BBA
+E496 E88E93
+E497 E88C83
+E498 E88BBB
+E499 E88BB9
+E49A E88B9E
+E49B E88C86
+E49C E88B9C
+E49D E88C89
+E49E E88B99
+E49F E88CB5
+E4A0 E88CB4
+E4A1 E88C96
+E4A2 E88CB2
+E4A3 E88CB1
+E4A4 E88D80
+E4A5 E88CB9
+E4A6 E88D90
+E4A7 E88D85
+E4A8 E88CAF
+E4A9 E88CAB
+E4AA E88C97
+E4AB E88C98
+E4AC E88E85
+E4AD E88E9A
+E4AE E88EAA
+E4AF E88E9F
+E4B0 E88EA2
+E4B1 E88E96
+E4B2 E88CA3
+E4B3 E88E8E
+E4B4 E88E87
+E4B5 E88E8A
+E4B6 E88DBC
+E4B7 E88EB5
+E4B8 E88DB3
+E4B9 E88DB5
+E4BA E88EA0
+E4BB E88E89
+E4BC E88EA8
+E4BD E88FB4
+E4BE E89093
+E4BF E88FAB
+E4C0 E88F8E
+E4C1 E88FBD
+E4C2 E89083
+E4C3 E88F98
+E4C4 E8908B
+E4C5 E88F81
+E4C6 E88FB7
+E4C7 E89087
+E4C8 E88FA0
+E4C9 E88FB2
+E4CA E8908D
+E4CB E890A2
+E4CC E890A0
+E4CD E88EBD
+E4CE E890B8
+E4CF E89486
+E4D0 E88FBB
+E4D1 E891AD
+E4D2 E890AA
+E4D3 E890BC
+E4D4 E8959A
+E4D5 E89284
+E4D6 E891B7
+E4D7 E891AB
+E4D8 E892AD
+E4D9 E891AE
+E4DA E89282
+E4DB E891A9
+E4DC E89186
+E4DD E890AC
+E4DE E891AF
+E4DF E891B9
+E4E0 E890B5
+E4E1 E8938A
+E4E2 E891A2
+E4E3 E892B9
+E4E4 E892BF
+E4E5 E8929F
+E4E6 E89399
+E4E7 E8938D
+E4E8 E892BB
+E4E9 E8939A
+E4EA E89390
+E4EB E89381
+E4EC E89386
+E4ED E89396
+E4EE E892A1
+E4EF E894A1
+E4F0 E893BF
+E4F1 E893B4
+E4F2 E89497
+E4F3 E89498
+E4F4 E894AC
+E4F5 E8949F
+E4F6 E89495
+E4F7 E89494
+E4F8 E893BC
+E4F9 E89580
+E4FA E895A3
+E4FB E89598
+E4FC E89588
+E540 E89581
+E541 E89882
+E542 E8958B
+E543 E89595
+E544 E89680
+E545 E896A4
+E546 E89688
+E547 E89691
+E548 E8968A
+E549 E896A8
+E54A E895AD
+E54B E89694
+E54C E8969B
+E54D E897AA
+E54E E89687
+E54F E8969C
+E550 E895B7
+E551 E895BE
+E552 E89690
+E553 E89789
+E554 E896BA
+E555 E8978F
+E556 E896B9
+E557 E89790
+E558 E89795
+E559 E8979D
+E55A E897A5
+E55B E8979C
+E55C E897B9
+E55D E8988A
+E55E E89893
+E55F E8988B
+E560 E897BE
+E561 E897BA
+E562 E89886
+E563 E898A2
+E564 E8989A
+E565 E898B0
+E566 E898BF
+E567 E8998D
+E568 E4B995
+E569 E89994
+E56A E8999F
+E56B E899A7
+E56C E899B1
+E56D E89A93
+E56E E89AA3
+E56F E89AA9
+E570 E89AAA
+E571 E89A8B
+E572 E89A8C
+E573 E89AB6
+E574 E89AAF
+E575 E89B84
+E576 E89B86
+E577 E89AB0
+E578 E89B89
+E579 E8A0A3
+E57A E89AAB
+E57B E89B94
+E57C E89B9E
+E57D E89BA9
+E57E E89BAC
+E580 E89B9F
+E581 E89B9B
+E582 E89BAF
+E583 E89C92
+E584 E89C86
+E585 E89C88
+E586 E89C80
+E587 E89C83
+E588 E89BBB
+E589 E89C91
+E58A E89C89
+E58B E89C8D
+E58C E89BB9
+E58D E89C8A
+E58E E89CB4
+E58F E89CBF
+E590 E89CB7
+E591 E89CBB
+E592 E89CA5
+E593 E89CA9
+E594 E89C9A
+E595 E89DA0
+E596 E89D9F
+E597 E89DB8
+E598 E89D8C
+E599 E89D8E
+E59A E89DB4
+E59B E89D97
+E59C E89DA8
+E59D E89DAE
+E59E E89D99
+E59F E89D93
+E5A0 E89DA3
+E5A1 E89DAA
+E5A2 E8A085
+E5A3 E89EA2
+E5A4 E89E9F
+E5A5 E89E82
+E5A6 E89EAF
+E5A7 E89F8B
+E5A8 E89EBD
+E5A9 E89F80
+E5AA E89F90
+E5AB E99B96
+E5AC E89EAB
+E5AD E89F84
+E5AE E89EB3
+E5AF E89F87
+E5B0 E89F86
+E5B1 E89EBB
+E5B2 E89FAF
+E5B3 E89FB2
+E5B4 E89FA0
+E5B5 E8A08F
+E5B6 E8A08D
+E5B7 E89FBE
+E5B8 E89FB6
+E5B9 E89FB7
+E5BA E8A08E
+E5BB E89F92
+E5BC E8A091
+E5BD E8A096
+E5BE E8A095
+E5BF E8A0A2
+E5C0 E8A0A1
+E5C1 E8A0B1
+E5C2 E8A0B6
+E5C3 E8A0B9
+E5C4 E8A0A7
+E5C5 E8A0BB
+E5C6 E8A184
+E5C7 E8A182
+E5C8 E8A192
+E5C9 E8A199
+E5CA E8A19E
+E5CB E8A1A2
+E5CC E8A1AB
+E5CD E8A281
+E5CE E8A1BE
+E5CF E8A29E
+E5D0 E8A1B5
+E5D1 E8A1BD
+E5D2 E8A2B5
+E5D3 E8A1B2
+E5D4 E8A282
+E5D5 E8A297
+E5D6 E8A292
+E5D7 E8A2AE
+E5D8 E8A299
+E5D9 E8A2A2
+E5DA E8A28D
+E5DB E8A2A4
+E5DC E8A2B0
+E5DD E8A2BF
+E5DE E8A2B1
+E5DF E8A383
+E5E0 E8A384
+E5E1 E8A394
+E5E2 E8A398
+E5E3 E8A399
+E5E4 E8A39D
+E5E5 E8A3B9
+E5E6 E8A482
+E5E7 E8A3BC
+E5E8 E8A3B4
+E5E9 E8A3A8
+E5EA E8A3B2
+E5EB E8A484
+E5EC E8A48C
+E5ED E8A48A
+E5EE E8A493
+E5EF E8A583
+E5F0 E8A49E
+E5F1 E8A4A5
+E5F2 E8A4AA
+E5F3 E8A4AB
+E5F4 E8A581
+E5F5 E8A584
+E5F6 E8A4BB
+E5F7 E8A4B6
+E5F8 E8A4B8
+E5F9 E8A58C
+E5FA E8A49D
+E5FB E8A5A0
+E5FC E8A59E
+E640 E8A5A6
+E641 E8A5A4
+E642 E8A5AD
+E643 E8A5AA
+E644 E8A5AF
+E645 E8A5B4
+E646 E8A5B7
+E647 E8A5BE
+E648 E8A683
+E649 E8A688
+E64A E8A68A
+E64B E8A693
+E64C E8A698
+E64D E8A6A1
+E64E E8A6A9
+E64F E8A6A6
+E650 E8A6AC
+E651 E8A6AF
+E652 E8A6B2
+E653 E8A6BA
+E654 E8A6BD
+E655 E8A6BF
+E656 E8A780
+E657 E8A79A
+E658 E8A79C
+E659 E8A79D
+E65A E8A7A7
+E65B E8A7B4
+E65C E8A7B8
+E65D E8A883
+E65E E8A896
+E65F E8A890
+E660 E8A88C
+E661 E8A89B
+E662 E8A89D
+E663 E8A8A5
+E664 E8A8B6
+E665 E8A981
+E666 E8A99B
+E667 E8A992
+E668 E8A986
+E669 E8A988
+E66A E8A9BC
+E66B E8A9AD
+E66C E8A9AC
+E66D E8A9A2
+E66E E8AA85
+E66F E8AA82
+E670 E8AA84
+E671 E8AAA8
+E672 E8AAA1
+E673 E8AA91
+E674 E8AAA5
+E675 E8AAA6
+E676 E8AA9A
+E677 E8AAA3
+E678 E8AB84
+E679 E8AB8D
+E67A E8AB82
+E67B E8AB9A
+E67C E8ABAB
+E67D E8ABB3
+E67E E8ABA7
+E680 E8ABA4
+E681 E8ABB1
+E682 E8AC94
+E683 E8ABA0
+E684 E8ABA2
+E685 E8ABB7
+E686 E8AB9E
+E687 E8AB9B
+E688 E8AC8C
+E689 E8AC87
+E68A E8AC9A
+E68B E8ABA1
+E68C E8AC96
+E68D E8AC90
+E68E E8AC97
+E68F E8ACA0
+E690 E8ACB3
+E691 E99EAB
+E692 E8ACA6
+E693 E8ACAB
+E694 E8ACBE
+E695 E8ACA8
+E696 E8AD81
+E697 E8AD8C
+E698 E8AD8F
+E699 E8AD8E
+E69A E8AD89
+E69B E8AD96
+E69C E8AD9B
+E69D E8AD9A
+E69E E8ADAB
+E69F E8AD9F
+E6A0 E8ADAC
+E6A1 E8ADAF
+E6A2 E8ADB4
+E6A3 E8ADBD
+E6A4 E8AE80
+E6A5 E8AE8C
+E6A6 E8AE8E
+E6A7 E8AE92
+E6A8 E8AE93
+E6A9 E8AE96
+E6AA E8AE99
+E6AB E8AE9A
+E6AC E8B0BA
+E6AD E8B181
+E6AE E8B0BF
+E6AF E8B188
+E6B0 E8B18C
+E6B1 E8B18E
+E6B2 E8B190
+E6B3 E8B195
+E6B4 E8B1A2
+E6B5 E8B1AC
+E6B6 E8B1B8
+E6B7 E8B1BA
+E6B8 E8B282
+E6B9 E8B289
+E6BA E8B285
+E6BB E8B28A
+E6BC E8B28D
+E6BD E8B28E
+E6BE E8B294
+E6BF E8B1BC
+E6C0 E8B298
+E6C1 E6889D
+E6C2 E8B2AD
+E6C3 E8B2AA
+E6C4 E8B2BD
+E6C5 E8B2B2
+E6C6 E8B2B3
+E6C7 E8B2AE
+E6C8 E8B2B6
+E6C9 E8B388
+E6CA E8B381
+E6CB E8B3A4
+E6CC E8B3A3
+E6CD E8B39A
+E6CE E8B3BD
+E6CF E8B3BA
+E6D0 E8B3BB
+E6D1 E8B484
+E6D2 E8B485
+E6D3 E8B48A
+E6D4 E8B487
+E6D5 E8B48F
+E6D6 E8B48D
+E6D7 E8B490
+E6D8 E9BD8E
+E6D9 E8B493
+E6DA E8B38D
+E6DB E8B494
+E6DC E8B496
+E6DD E8B5A7
+E6DE E8B5AD
+E6DF E8B5B1
+E6E0 E8B5B3
+E6E1 E8B681
+E6E2 E8B699
+E6E3 E8B782
+E6E4 E8B6BE
+E6E5 E8B6BA
+E6E6 E8B78F
+E6E7 E8B79A
+E6E8 E8B796
+E6E9 E8B78C
+E6EA E8B79B
+E6EB E8B78B
+E6EC E8B7AA
+E6ED E8B7AB
+E6EE E8B79F
+E6EF E8B7A3
+E6F0 E8B7BC
+E6F1 E8B888
+E6F2 E8B889
+E6F3 E8B7BF
+E6F4 E8B89D
+E6F5 E8B89E
+E6F6 E8B890
+E6F7 E8B89F
+E6F8 E8B982
+E6F9 E8B8B5
+E6FA E8B8B0
+E6FB E8B8B4
+E6FC E8B98A
+E740 E8B987
+E741 E8B989
+E742 E8B98C
+E743 E8B990
+E744 E8B988
+E745 E8B999
+E746 E8B9A4
+E747 E8B9A0
+E748 E8B8AA
+E749 E8B9A3
+E74A E8B995
+E74B E8B9B6
+E74C E8B9B2
+E74D E8B9BC
+E74E E8BA81
+E74F E8BA87
+E750 E8BA85
+E751 E8BA84
+E752 E8BA8B
+E753 E8BA8A
+E754 E8BA93
+E755 E8BA91
+E756 E8BA94
+E757 E8BA99
+E758 E8BAAA
+E759 E8BAA1
+E75A E8BAAC
+E75B E8BAB0
+E75C E8BB86
+E75D E8BAB1
+E75E E8BABE
+E75F E8BB85
+E760 E8BB88
+E761 E8BB8B
+E762 E8BB9B
+E763 E8BBA3
+E764 E8BBBC
+E765 E8BBBB
+E766 E8BBAB
+E767 E8BBBE
+E768 E8BC8A
+E769 E8BC85
+E76A E8BC95
+E76B E8BC92
+E76C E8BC99
+E76D E8BC93
+E76E E8BC9C
+E76F E8BC9F
+E770 E8BC9B
+E771 E8BC8C
+E772 E8BCA6
+E773 E8BCB3
+E774 E8BCBB
+E775 E8BCB9
+E776 E8BD85
+E777 E8BD82
+E778 E8BCBE
+E779 E8BD8C
+E77A E8BD89
+E77B E8BD86
+E77C E8BD8E
+E77D E8BD97
+E77E E8BD9C
+E780 E8BDA2
+E781 E8BDA3
+E782 E8BDA4
+E783 E8BE9C
+E784 E8BE9F
+E785 E8BEA3
+E786 E8BEAD
+E787 E8BEAF
+E788 E8BEB7
+E789 E8BF9A
+E78A E8BFA5
+E78B E8BFA2
+E78C E8BFAA
+E78D E8BFAF
+E78E E98287
+E78F E8BFB4
+E790 E98085
+E791 E8BFB9
+E792 E8BFBA
+E793 E98091
+E794 E98095
+E795 E980A1
+E796 E9808D
+E797 E9809E
+E798 E98096
+E799 E9808B
+E79A E980A7
+E79B E980B6
+E79C E980B5
+E79D E980B9
+E79E E8BFB8
+E79F E9818F
+E7A0 E98190
+E7A1 E98191
+E7A2 E98192
+E7A3 E9808E
+E7A4 E98189
+E7A5 E980BE
+E7A6 E98196
+E7A7 E98198
+E7A8 E9819E
+E7A9 E981A8
+E7AA E981AF
+E7AB E981B6
+E7AC E99AA8
+E7AD E981B2
+E7AE E98282
+E7AF E981BD
+E7B0 E98281
+E7B1 E98280
+E7B2 E9828A
+E7B3 E98289
+E7B4 E9828F
+E7B5 E982A8
+E7B6 E982AF
+E7B7 E982B1
+E7B8 E982B5
+E7B9 E983A2
+E7BA E983A4
+E7BB E68988
+E7BC E9839B
+E7BD E98482
+E7BE E98492
+E7BF E98499
+E7C0 E984B2
+E7C1 E984B0
+E7C2 E9858A
+E7C3 E98596
+E7C4 E98598
+E7C5 E985A3
+E7C6 E985A5
+E7C7 E985A9
+E7C8 E985B3
+E7C9 E985B2
+E7CA E9868B
+E7CB E98689
+E7CC E98682
+E7CD E986A2
+E7CE E986AB
+E7CF E986AF
+E7D0 E986AA
+E7D1 E986B5
+E7D2 E986B4
+E7D3 E986BA
+E7D4 E98780
+E7D5 E98781
+E7D6 E98789
+E7D7 E9878B
+E7D8 E98790
+E7D9 E98796
+E7DA E9879F
+E7DB E987A1
+E7DC E9879B
+E7DD E987BC
+E7DE E987B5
+E7DF E987B6
+E7E0 E9889E
+E7E1 E987BF
+E7E2 E98894
+E7E3 E988AC
+E7E4 E98895
+E7E5 E98891
+E7E6 E9899E
+E7E7 E98997
+E7E8 E98985
+E7E9 E98989
+E7EA E989A4
+E7EB E98988
+E7EC E98A95
+E7ED E988BF
+E7EE E9898B
+E7EF E98990
+E7F0 E98A9C
+E7F1 E98A96
+E7F2 E98A93
+E7F3 E98A9B
+E7F4 E9899A
+E7F5 E98B8F
+E7F6 E98AB9
+E7F7 E98AB7
+E7F8 E98BA9
+E7F9 E98C8F
+E7FA E98BBA
+E7FB E98D84
+E7FC E98CAE
+E840 E98C99
+E841 E98CA2
+E842 E98C9A
+E843 E98CA3
+E844 E98CBA
+E845 E98CB5
+E846 E98CBB
+E847 E98D9C
+E848 E98DA0
+E849 E98DBC
+E84A E98DAE
+E84B E98D96
+E84C E98EB0
+E84D E98EAC
+E84E E98EAD
+E84F E98E94
+E850 E98EB9
+E851 E98F96
+E852 E98F97
+E853 E98FA8
+E854 E98FA5
+E855 E98F98
+E856 E98F83
+E857 E98F9D
+E858 E98F90
+E859 E98F88
+E85A E98FA4
+E85B E9909A
+E85C E99094
+E85D E99093
+E85E E99083
+E85F E99087
+E860 E99090
+E861 E990B6
+E862 E990AB
+E863 E990B5
+E864 E990A1
+E865 E990BA
+E866 E99181
+E867 E99192
+E868 E99184
+E869 E9919B
+E86A E991A0
+E86B E991A2
+E86C E9919E
+E86D E991AA
+E86E E988A9
+E86F E991B0
+E870 E991B5
+E871 E991B7
+E872 E991BD
+E873 E9919A
+E874 E991BC
+E875 E991BE
+E876 E99281
+E877 E991BF
+E878 E99682
+E879 E99687
+E87A E9968A
+E87B E99694
+E87C E99696
+E87D E99698
+E87E E99699
+E880 E996A0
+E881 E996A8
+E882 E996A7
+E883 E996AD
+E884 E996BC
+E885 E996BB
+E886 E996B9
+E887 E996BE
+E888 E9978A
+E889 E6BFB6
+E88A E99783
+E88B E9978D
+E88C E9978C
+E88D E99795
+E88E E99794
+E88F E99796
+E890 E9979C
+E891 E997A1
+E892 E997A5
+E893 E997A2
+E894 E998A1
+E895 E998A8
+E896 E998AE
+E897 E998AF
+E898 E99982
+E899 E9998C
+E89A E9998F
+E89B E9998B
+E89C E999B7
+E89D E9999C
+E89E E9999E
+E89F E9999D
+E8A0 E9999F
+E8A1 E999A6
+E8A2 E999B2
+E8A3 E999AC
+E8A4 E99A8D
+E8A5 E99A98
+E8A6 E99A95
+E8A7 E99A97
+E8A8 E99AAA
+E8A9 E99AA7
+E8AA E99AB1
+E8AB E99AB2
+E8AC E99AB0
+E8AD E99AB4
+E8AE E99AB6
+E8AF E99AB8
+E8B0 E99AB9
+E8B1 E99B8E
+E8B2 E99B8B
+E8B3 E99B89
+E8B4 E99B8D
+E8B5 E8A58D
+E8B6 E99B9C
+E8B7 E99C8D
+E8B8 E99B95
+E8B9 E99BB9
+E8BA E99C84
+E8BB E99C86
+E8BC E99C88
+E8BD E99C93
+E8BE E99C8E
+E8BF E99C91
+E8C0 E99C8F
+E8C1 E99C96
+E8C2 E99C99
+E8C3 E99CA4
+E8C4 E99CAA
+E8C5 E99CB0
+E8C6 E99CB9
+E8C7 E99CBD
+E8C8 E99CBE
+E8C9 E99D84
+E8CA E99D86
+E8CB E99D88
+E8CC E99D82
+E8CD E99D89
+E8CE E99D9C
+E8CF E99DA0
+E8D0 E99DA4
+E8D1 E99DA6
+E8D2 E99DA8
+E8D3 E58B92
+E8D4 E99DAB
+E8D5 E99DB1
+E8D6 E99DB9
+E8D7 E99E85
+E8D8 E99DBC
+E8D9 E99E81
+E8DA E99DBA
+E8DB E99E86
+E8DC E99E8B
+E8DD E99E8F
+E8DE E99E90
+E8DF E99E9C
+E8E0 E99EA8
+E8E1 E99EA6
+E8E2 E99EA3
+E8E3 E99EB3
+E8E4 E99EB4
+E8E5 E99F83
+E8E6 E99F86
+E8E7 E99F88
+E8E8 E99F8B
+E8E9 E99F9C
+E8EA E99FAD
+E8EB E9BD8F
+E8EC E99FB2
+E8ED E7AB9F
+E8EE E99FB6
+E8EF E99FB5
+E8F0 E9A08F
+E8F1 E9A08C
+E8F2 E9A0B8
+E8F3 E9A0A4
+E8F4 E9A0A1
+E8F5 E9A0B7
+E8F6 E9A0BD
+E8F7 E9A186
+E8F8 E9A18F
+E8F9 E9A18B
+E8FA E9A1AB
+E8FB E9A1AF
+E8FC E9A1B0
+E940 E9A1B1
+E941 E9A1B4
+E942 E9A1B3
+E943 E9A2AA
+E944 E9A2AF
+E945 E9A2B1
+E946 E9A2B6
+E947 E9A384
+E948 E9A383
+E949 E9A386
+E94A E9A3A9
+E94B E9A3AB
+E94C E9A483
+E94D E9A489
+E94E E9A492
+E94F E9A494
+E950 E9A498
+E951 E9A4A1
+E952 E9A49D
+E953 E9A49E
+E954 E9A4A4
+E955 E9A4A0
+E956 E9A4AC
+E957 E9A4AE
+E958 E9A4BD
+E959 E9A4BE
+E95A E9A582
+E95B E9A589
+E95C E9A585
+E95D E9A590
+E95E E9A58B
+E95F E9A591
+E960 E9A592
+E961 E9A58C
+E962 E9A595
+E963 E9A697
+E964 E9A698
+E965 E9A6A5
+E966 E9A6AD
+E967 E9A6AE
+E968 E9A6BC
+E969 E9A79F
+E96A E9A79B
+E96B E9A79D
+E96C E9A798
+E96D E9A791
+E96E E9A7AD
+E96F E9A7AE
+E970 E9A7B1
+E971 E9A7B2
+E972 E9A7BB
+E973 E9A7B8
+E974 E9A881
+E975 E9A88F
+E976 E9A885
+E977 E9A7A2
+E978 E9A899
+E979 E9A8AB
+E97A E9A8B7
+E97B E9A985
+E97C E9A982
+E97D E9A980
+E97E E9A983
+E980 E9A8BE
+E981 E9A995
+E982 E9A98D
+E983 E9A99B
+E984 E9A997
+E985 E9A99F
+E986 E9A9A2
+E987 E9A9A5
+E988 E9A9A4
+E989 E9A9A9
+E98A E9A9AB
+E98B E9A9AA
+E98C E9AAAD
+E98D E9AAB0
+E98E E9AABC
+E98F E9AB80
+E990 E9AB8F
+E991 E9AB91
+E992 E9AB93
+E993 E9AB94
+E994 E9AB9E
+E995 E9AB9F
+E996 E9ABA2
+E997 E9ABA3
+E998 E9ABA6
+E999 E9ABAF
+E99A E9ABAB
+E99B E9ABAE
+E99C E9ABB4
+E99D E9ABB1
+E99E E9ABB7
+E99F E9ABBB
+E9A0 E9AC86
+E9A1 E9AC98
+E9A2 E9AC9A
+E9A3 E9AC9F
+E9A4 E9ACA2
+E9A5 E9ACA3
+E9A6 E9ACA5
+E9A7 E9ACA7
+E9A8 E9ACA8
+E9A9 E9ACA9
+E9AA E9ACAA
+E9AB E9ACAE
+E9AC E9ACAF
+E9AD E9ACB2
+E9AE E9AD84
+E9AF E9AD83
+E9B0 E9AD8F
+E9B1 E9AD8D
+E9B2 E9AD8E
+E9B3 E9AD91
+E9B4 E9AD98
+E9B5 E9ADB4
+E9B6 E9AE93
+E9B7 E9AE83
+E9B8 E9AE91
+E9B9 E9AE96
+E9BA E9AE97
+E9BB E9AE9F
+E9BC E9AEA0
+E9BD E9AEA8
+E9BE E9AEB4
+E9BF E9AF80
+E9C0 E9AF8A
+E9C1 E9AEB9
+E9C2 E9AF86
+E9C3 E9AF8F
+E9C4 E9AF91
+E9C5 E9AF92
+E9C6 E9AFA3
+E9C7 E9AFA2
+E9C8 E9AFA4
+E9C9 E9AF94
+E9CA E9AFA1
+E9CB E9B0BA
+E9CC E9AFB2
+E9CD E9AFB1
+E9CE E9AFB0
+E9CF E9B095
+E9D0 E9B094
+E9D1 E9B089
+E9D2 E9B093
+E9D3 E9B08C
+E9D4 E9B086
+E9D5 E9B088
+E9D6 E9B092
+E9D7 E9B08A
+E9D8 E9B084
+E9D9 E9B0AE
+E9DA E9B09B
+E9DB E9B0A5
+E9DC E9B0A4
+E9DD E9B0A1
+E9DE E9B0B0
+E9DF E9B187
+E9E0 E9B0B2
+E9E1 E9B186
+E9E2 E9B0BE
+E9E3 E9B19A
+E9E4 E9B1A0
+E9E5 E9B1A7
+E9E6 E9B1B6
+E9E7 E9B1B8
+E9E8 E9B3A7
+E9E9 E9B3AC
+E9EA E9B3B0
+E9EB E9B489
+E9EC E9B488
+E9ED E9B3AB
+E9EE E9B483
+E9EF E9B486
+E9F0 E9B4AA
+E9F1 E9B4A6
+E9F2 E9B6AF
+E9F3 E9B4A3
+E9F4 E9B49F
+E9F5 E9B584
+E9F6 E9B495
+E9F7 E9B492
+E9F8 E9B581
+E9F9 E9B4BF
+E9FA E9B4BE
+E9FB E9B586
+E9FC E9B588
+EA40 E9B59D
+EA41 E9B59E
+EA42 E9B5A4
+EA43 E9B591
+EA44 E9B590
+EA45 E9B599
+EA46 E9B5B2
+EA47 E9B689
+EA48 E9B687
+EA49 E9B6AB
+EA4A E9B5AF
+EA4B E9B5BA
+EA4C E9B69A
+EA4D E9B6A4
+EA4E E9B6A9
+EA4F E9B6B2
+EA50 E9B784
+EA51 E9B781
+EA52 E9B6BB
+EA53 E9B6B8
+EA54 E9B6BA
+EA55 E9B786
+EA56 E9B78F
+EA57 E9B782
+EA58 E9B799
+EA59 E9B793
+EA5A E9B7B8
+EA5B E9B7A6
+EA5C E9B7AD
+EA5D E9B7AF
+EA5E E9B7BD
+EA5F E9B89A
+EA60 E9B89B
+EA61 E9B89E
+EA62 E9B9B5
+EA63 E9B9B9
+EA64 E9B9BD
+EA65 E9BA81
+EA66 E9BA88
+EA67 E9BA8B
+EA68 E9BA8C
+EA69 E9BA92
+EA6A E9BA95
+EA6B E9BA91
+EA6C E9BA9D
+EA6D E9BAA5
+EA6E E9BAA9
+EA6F E9BAB8
+EA70 E9BAAA
+EA71 E9BAAD
+EA72 E99DA1
+EA73 E9BB8C
+EA74 E9BB8E
+EA75 E9BB8F
+EA76 E9BB90
+EA77 E9BB94
+EA78 E9BB9C
+EA79 E9BB9E
+EA7A E9BB9D
+EA7B E9BBA0
+EA7C E9BBA5
+EA7D E9BBA8
+EA7E E9BBAF
+EA80 E9BBB4
+EA81 E9BBB6
+EA82 E9BBB7
+EA83 E9BBB9
+EA84 E9BBBB
+EA85 E9BBBC
+EA86 E9BBBD
+EA87 E9BC87
+EA88 E9BC88
+EA89 E79AB7
+EA8A E9BC95
+EA8B E9BCA1
+EA8C E9BCAC
+EA8D E9BCBE
+EA8E E9BD8A
+EA8F E9BD92
+EA90 E9BD94
+EA91 E9BDA3
+EA92 E9BD9F
+EA93 E9BDA0
+EA94 E9BDA1
+EA95 E9BDA6
+EA96 E9BDA7
+EA97 E9BDAC
+EA98 E9BDAA
+EA99 E9BDB7
+EA9A E9BDB2
+EA9B E9BDB6
+EA9C E9BE95
+EA9D E9BE9C
+EA9E E9BEA0
+EA9F E5A0AF
+EAA0 E6A787
+EAA1 E98199
+EAA2 E791A4
+EAA3 E5879C
+EAA4 E78699
+DROP TABLE t1;
+#
+# WL#3090 Japanese Character Set adjustments
+# Test Unicode->sjis conversion
+#
+CREATE TABLE t1 (a CHAR(1)) CHARACTER SET utf8;
+INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
+INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
+CREATE TEMPORARY TABLE head AS SELECT concat(b1.a, b2.a) AS head FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE tail AS SELECT concat(b1.a, b2.a) AS tail FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE middle AS SELECT concat(b1.a, b2.a) AS middle FROM t1 b1, t1 b2;
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(1)) CHARACTER SET utf8;
+INSERT INTO t1 SELECT UNHEX(head)
+FROM head WHERE (head BETWEEN '00' AND '7F') ORDER BY head;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head,tail))
+FROM head, tail
+WHERE (head BETWEEN 'C2' AND 'DF') AND (tail BETWEEN '80' AND 'BF')
+ORDER BY head, tail;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head, middle, tail))
+FROM head, middle, tail
+WHERE (head BETWEEN 'E0' AND 'EF')
+AND (middle BETWEEN '80' AND 'BF')
+AND (tail BETWEEN '80' AND 'BF')
+AND NOT (head='E0' AND middle BETWEEN '80' AND '9F')
+ORDER BY head, middle, tail;
+SELECT count(*) FROM t1;
+count(*)
+65536
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+HEX(a) b
+00 00
+01 01
+02 02
+03 03
+04 04
+05 05
+06 06
+07 07
+08 08
+09 09
+0A 0A
+0B 0B
+0C 0C
+0D 0D
+0E 0E
+0F 0F
+10 10
+11 11
+12 12
+13 13
+14 14
+15 15
+16 16
+17 17
+18 18
+19 19
+1A 1A
+1B 1B
+1C 1C
+1D 1D
+1E 1E
+1F 1F
+20 20
+21 21
+22 22
+23 23
+24 24
+25 25
+26 26
+27 27
+28 28
+29 29
+2A 2A
+2B 2B
+2C 2C
+2D 2D
+2E 2E
+2F 2F
+30 30
+31 31
+32 32
+33 33
+34 34
+35 35
+36 36
+37 37
+38 38
+39 39
+3A 3A
+3B 3B
+3C 3C
+3D 3D
+3E 3E
+40 40
+41 41
+42 42
+43 43
+44 44
+45 45
+46 46
+47 47
+48 48
+49 49
+4A 4A
+4B 4B
+4C 4C
+4D 4D
+4E 4E
+4F 4F
+50 50
+51 51
+52 52
+53 53
+54 54
+55 55
+56 56
+57 57
+58 58
+59 59
+5A 5A
+5B 5B
+5C 815F
+5D 5D
+5E 5E
+5F 5F
+60 60
+61 61
+62 62
+63 63
+64 64
+65 65
+66 66
+67 67
+68 68
+69 69
+6A 6A
+6B 6B
+6C 6C
+6D 6D
+6E 6E
+6F 6F
+70 70
+71 71
+72 72
+73 73
+74 74
+75 75
+76 76
+77 77
+78 78
+79 79
+7A 7A
+7B 7B
+7C 7C
+7D 7D
+7E 7E
+7F 7F
+C2A2 8191
+C2A3 8192
+C2A7 8198
+C2A8 814E
+C2AC 81CA
+C2B0 818B
+C2B1 817D
+C2B4 814C
+C2B6 81F7
+C397 817E
+C3B7 8180
+CE91 839F
+CE92 83A0
+CE93 83A1
+CE94 83A2
+CE95 83A3
+CE96 83A4
+CE97 83A5
+CE98 83A6
+CE99 83A7
+CE9A 83A8
+CE9B 83A9
+CE9C 83AA
+CE9D 83AB
+CE9E 83AC
+CE9F 83AD
+CEA0 83AE
+CEA1 83AF
+CEA3 83B0
+CEA4 83B1
+CEA5 83B2
+CEA6 83B3
+CEA7 83B4
+CEA8 83B5
+CEA9 83B6
+CEB1 83BF
+CEB2 83C0
+CEB3 83C1
+CEB4 83C2
+CEB5 83C3
+CEB6 83C4
+CEB7 83C5
+CEB8 83C6
+CEB9 83C7
+CEBA 83C8
+CEBB 83C9
+CEBC 83CA
+CEBD 83CB
+CEBE 83CC
+CEBF 83CD
+CF80 83CE
+CF81 83CF
+CF83 83D0
+CF84 83D1
+CF85 83D2
+CF86 83D3
+CF87 83D4
+CF88 83D5
+CF89 83D6
+D081 8446
+D090 8440
+D091 8441
+D092 8442
+D093 8443
+D094 8444
+D095 8445
+D096 8447
+D097 8448
+D098 8449
+D099 844A
+D09A 844B
+D09B 844C
+D09C 844D
+D09D 844E
+D09E 844F
+D09F 8450
+D0A0 8451
+D0A1 8452
+D0A2 8453
+D0A3 8454
+D0A4 8455
+D0A5 8456
+D0A6 8457
+D0A7 8458
+D0A8 8459
+D0A9 845A
+D0AA 845B
+D0AB 845C
+D0AC 845D
+D0AD 845E
+D0AE 845F
+D0AF 8460
+D0B0 8470
+D0B1 8471
+D0B2 8472
+D0B3 8473
+D0B4 8474
+D0B5 8475
+D0B6 8477
+D0B7 8478
+D0B8 8479
+D0B9 847A
+D0BA 847B
+D0BB 847C
+D0BC 847D
+D0BD 847E
+D0BE 8480
+D0BF 8481
+D180 8482
+D181 8483
+D182 8484
+D183 8485
+D184 8486
+D185 8487
+D186 8488
+D187 8489
+D188 848A
+D189 848B
+D18A 848C
+D18B 848D
+D18C 848E
+D18D 848F
+D18E 8490
+D18F 8491
+D191 8476
+E28090 815D
+E28095 815C
+E28096 8161
+E28098 8165
+E28099 8166
+E2809C 8167
+E2809D 8168
+E280A0 81F5
+E280A1 81F6
+E280A5 8164
+E280A6 8163
+E280B0 81F1
+E280B2 818C
+E280B3 818D
+E280BB 81A6
+E28483 818E
+E284AB 81F0
+E28690 81A9
+E28691 81AA
+E28692 81A8
+E28693 81AB
+E28792 81CB
+E28794 81CC
+E28880 81CD
+E28882 81DD
+E28883 81CE
+E28887 81DE
+E28888 81B8
+E2888B 81B9
+E28892 817C
+E2889A 81E3
+E2889D 81E5
+E2889E 8187
+E288A0 81DA
+E288A7 81C8
+E288A8 81C9
+E288A9 81BF
+E288AA 81BE
+E288AB 81E7
+E288AC 81E8
+E288B4 8188
+E288B5 81E6
+E288BD 81E4
+E28992 81E0
+E289A0 8182
+E289A1 81DF
+E289A6 8185
+E289A7 8186
+E289AA 81E1
+E289AB 81E2
+E28A82 81BC
+E28A83 81BD
+E28A86 81BA
+E28A87 81BB
+E28AA5 81DB
+E28C92 81DC
+E29480 849F
+E29481 84AA
+E29482 84A0
+E29483 84AB
+E2948C 84A1
+E2948F 84AC
+E29490 84A2
+E29493 84AD
+E29494 84A4
+E29497 84AF
+E29498 84A3
+E2949B 84AE
+E2949C 84A5
+E2949D 84BA
+E294A0 84B5
+E294A3 84B0
+E294A4 84A7
+E294A5 84BC
+E294A8 84B7
+E294AB 84B2
+E294AC 84A6
+E294AF 84B6
+E294B0 84BB
+E294B3 84B1
+E294B4 84A8
+E294B7 84B8
+E294B8 84BD
+E294BB 84B3
+E294BC 84A9
+E294BF 84B9
+E29582 84BE
+E2958B 84B4
+E296A0 81A1
+E296A1 81A0
+E296B2 81A3
+E296B3 81A2
+E296BC 81A5
+E296BD 81A4
+E29786 819F
+E29787 819E
+E2978B 819B
+E2978E 819D
+E2978F 819C
+E297AF 81FC
+E29885 819A
+E29886 8199
+E29980 818A
+E29982 8189
+E299AA 81F4
+E299AD 81F3
+E299AF 81F2
+E38080 8140
+E38081 8141
+E38082 8142
+E38083 8156
+E38085 8158
+E38086 8159
+E38087 815A
+E38088 8171
+E38089 8172
+E3808A 8173
+E3808B 8174
+E3808C 8175
+E3808D 8176
+E3808E 8177
+E3808F 8178
+E38090 8179
+E38091 817A
+E38092 81A7
+E38093 81AC
+E38094 816B
+E38095 816C
+E3809C 8160
+E38181 829F
+E38182 82A0
+E38183 82A1
+E38184 82A2
+E38185 82A3
+E38186 82A4
+E38187 82A5
+E38188 82A6
+E38189 82A7
+E3818A 82A8
+E3818B 82A9
+E3818C 82AA
+E3818D 82AB
+E3818E 82AC
+E3818F 82AD
+E38190 82AE
+E38191 82AF
+E38192 82B0
+E38193 82B1
+E38194 82B2
+E38195 82B3
+E38196 82B4
+E38197 82B5
+E38198 82B6
+E38199 82B7
+E3819A 82B8
+E3819B 82B9
+E3819C 82BA
+E3819D 82BB
+E3819E 82BC
+E3819F 82BD
+E381A0 82BE
+E381A1 82BF
+E381A2 82C0
+E381A3 82C1
+E381A4 82C2
+E381A5 82C3
+E381A6 82C4
+E381A7 82C5
+E381A8 82C6
+E381A9 82C7
+E381AA 82C8
+E381AB 82C9
+E381AC 82CA
+E381AD 82CB
+E381AE 82CC
+E381AF 82CD
+E381B0 82CE
+E381B1 82CF
+E381B2 82D0
+E381B3 82D1
+E381B4 82D2
+E381B5 82D3
+E381B6 82D4
+E381B7 82D5
+E381B8 82D6
+E381B9 82D7
+E381BA 82D8
+E381BB 82D9
+E381BC 82DA
+E381BD 82DB
+E381BE 82DC
+E381BF 82DD
+E38280 82DE
+E38281 82DF
+E38282 82E0
+E38283 82E1
+E38284 82E2
+E38285 82E3
+E38286 82E4
+E38287 82E5
+E38288 82E6
+E38289 82E7
+E3828A 82E8
+E3828B 82E9
+E3828C 82EA
+E3828D 82EB
+E3828E 82EC
+E3828F 82ED
+E38290 82EE
+E38291 82EF
+E38292 82F0
+E38293 82F1
+E3829B 814A
+E3829C 814B
+E3829D 8154
+E3829E 8155
+E382A1 8340
+E382A2 8341
+E382A3 8342
+E382A4 8343
+E382A5 8344
+E382A6 8345
+E382A7 8346
+E382A8 8347
+E382A9 8348
+E382AA 8349
+E382AB 834A
+E382AC 834B
+E382AD 834C
+E382AE 834D
+E382AF 834E
+E382B0 834F
+E382B1 8350
+E382B2 8351
+E382B3 8352
+E382B4 8353
+E382B5 8354
+E382B6 8355
+E382B7 8356
+E382B8 8357
+E382B9 8358
+E382BA 8359
+E382BB 835A
+E382BC 835B
+E382BD 835C
+E382BE 835D
+E382BF 835E
+E38380 835F
+E38381 8360
+E38382 8361
+E38383 8362
+E38384 8363
+E38385 8364
+E38386 8365
+E38387 8366
+E38388 8367
+E38389 8368
+E3838A 8369
+E3838B 836A
+E3838C 836B
+E3838D 836C
+E3838E 836D
+E3838F 836E
+E38390 836F
+E38391 8370
+E38392 8371
+E38393 8372
+E38394 8373
+E38395 8374
+E38396 8375
+E38397 8376
+E38398 8377
+E38399 8378
+E3839A 8379
+E3839B 837A
+E3839C 837B
+E3839D 837C
+E3839E 837D
+E3839F 837E
+E383A0 8380
+E383A1 8381
+E383A2 8382
+E383A3 8383
+E383A4 8384
+E383A5 8385
+E383A6 8386
+E383A7 8387
+E383A8 8388
+E383A9 8389
+E383AA 838A
+E383AB 838B
+E383AC 838C
+E383AD 838D
+E383AE 838E
+E383AF 838F
+E383B0 8390
+E383B1 8391
+E383B2 8392
+E383B3 8393
+E383B4 8394
+E383B5 8395
+E383B6 8396
+E383BB 8145
+E383BC 815B
+E383BD 8152
+E383BE 8153
+E4B880 88EA
+E4B881 929A
+E4B883 8EB5
+E4B887 969C
+E4B888 8FE4
+E4B889 8E4F
+E4B88A 8FE3
+E4B88B 89BA
+E4B88D 9573
+E4B88E 975E
+E4B890 98A0
+E4B891 894E
+E4B894 8A8E
+E4B895 98A1
+E4B896 90A2
+E4B897 99C0
+E4B898 8B75
+E4B899 95B8
+E4B89E 8FE5
+E4B8A1 97BC
+E4B8A6 95C0
+E4B8AA 98A2
+E4B8AD 9286
+E4B8B1 98A3
+E4B8B2 8BF8
+E4B8B6 98A4
+E4B8B8 8ADB
+E4B8B9 924F
+E4B8BB 8EE5
+E4B8BC 98A5
+E4B8BF 98A6
+E4B982 98A7
+E4B983 9454
+E4B985 8B76
+E4B98B 9456
+E4B98D 93E1
+E4B98E 8CC1
+E4B98F 9652
+E4B995 E568
+E4B996 98A8
+E4B997 8FE6
+E4B998 98A9
+E4B999 89B3
+E4B99D 8BE3
+E4B99E 8CEE
+E4B99F 96E7
+E4B9A2 9BA4
+E4B9B1 9790
+E4B9B3 93FB
+E4B9BE 8AA3
+E4BA80 8B54
+E4BA82 98AA
+E4BA85 98AB
+E4BA86 97B9
+E4BA88 975C
+E4BA89 9188
+E4BA8A 98AD
+E4BA8B 8E96
+E4BA8C 93F1
+E4BA8E 98B0
+E4BA91 895D
+E4BA92 8CDD
+E4BA94 8CDC
+E4BA95 88E4
+E4BA98 986A
+E4BA99 9869
+E4BA9B 8DB1
+E4BA9C 889F
+E4BA9E 98B1
+E4BA9F 98B2
+E4BAA0 98B3
+E4BAA1 9653
+E4BAA2 98B4
+E4BAA4 8CF0
+E4BAA5 88E5
+E4BAA6 9692
+E4BAA8 8B9C
+E4BAAB 8B9D
+E4BAAC 8B9E
+E4BAAD 92E0
+E4BAAE 97BA
+E4BAB0 98B5
+E4BAB3 98B6
+E4BAB6 98B7
+E4BABA 906C
+E4BB80 8F59
+E4BB81 906D
+E4BB82 98BC
+E4BB84 98BA
+E4BB86 98BB
+E4BB87 8B77
+E4BB8A 8DA1
+E4BB8B 89EE
+E4BB8D 98B9
+E4BB8E 98B8
+E4BB8F 95A7
+E4BB94 8E65
+E4BB95 8E64
+E4BB96 91BC
+E4BB97 98BD
+E4BB98 9574
+E4BB99 90E5
+E4BB9D 8157
+E4BB9E 98BE
+E4BB9F 98C0
+E4BBA3 91E3
+E4BBA4 97DF
+E4BBA5 88C8
+E4BBAD 98BF
+E4BBAE 89BC
+E4BBB0 8BC2
+E4BBB2 9287
+E4BBB6 8C8F
+E4BBB7 98C1
+E4BBBB 9443
+E4BC81 8AE9
+E4BC89 98C2
+E4BC8A 88C9
+E4BC8D 8CDE
+E4BC8E 8AEA
+E4BC8F 959A
+E4BC90 94B0
+E4BC91 8B78
+E4BC9A 89EF
+E4BC9C 98E5
+E4BC9D 9360
+E4BCAF 948C
+E4BCB0 98C4
+E4BCB4 94BA
+E4BCB6 97E0
+E4BCB8 904C
+E4BCBA 8E66
+E4BCBC 8E97
+E4BCBD 89BE
+E4BD83 92CF
+E4BD86 9241
+E4BD87 98C8
+E4BD8D 88CA
+E4BD8E 92E1
+E4BD8F 8F5A
+E4BD90 8DB2
+E4BD91 9743
+E4BD93 91CC
+E4BD95 89BD
+E4BD97 98C7
+E4BD99 975D
+E4BD9A 98C3
+E4BD9B 98C5
+E4BD9C 8DEC
+E4BD9D 98C6
+E4BD9E 9B43
+E4BDA9 98CE
+E4BDAF 98D1
+E4BDB0 98CF
+E4BDB3 89C0
+E4BDB5 95B9
+E4BDB6 98C9
+E4BDBB 98CD
+E4BDBC 8CF1
+E4BDBF 8E67
+E4BE83 8AA4
+E4BE86 98D2
+E4BE88 98CA
+E4BE8B 97E1
+E4BE8D 8E98
+E4BE8F 98CB
+E4BE91 98D0
+E4BE96 98D3
+E4BE98 98CC
+E4BE9B 8B9F
+E4BE9D 88CB
+E4BEA0 8BA0
+E4BEA1 89BF
+E4BEAB 9B44
+E4BEAD 9699
+E4BEAE 958E
+E4BEAF 8CF2
+E4BEB5 904E
+E4BEB6 97B5
+E4BEBF 95D6
+E4BF82 8C57
+E4BF83 91A3
+E4BF84 89E2
+E4BF8A 8F72
+E4BF8E 98D7
+E4BF90 98DC
+E4BF91 98DA
+E4BF94 98D5
+E4BF97 91AD
+E4BF98 98D8
+E4BF9A 98DB
+E4BF9B 98D9
+E4BF9D 95DB
+E4BF9F 98D6
+E4BFA1 904D
+E4BFA3 9693
+E4BFA4 98DD
+E4BFA5 98DE
+E4BFAE 8F43
+E4BFAF 98EB
+E4BFB3 946F
+E4BFB5 9555
+E4BFB6 98E6
+E4BFB8 95EE
+E4BFBA 89B4
+E4BFBE 98EA
+E58085 98E4
+E58086 98ED
+E58089 9171
+E5808B 8CC2
+E5808D 947B
+E5808F E0C5
+E58091 98EC
+E58092 937C
+E58094 98E1
+E58096 8CF4
+E58099 8CF3
+E5809A 98DF
+E5809F 8ED8
+E580A1 98E7
+E580A3 95ED
+E580A4 926C
+E580A5 98E3
+E580A6 8C91
+E580A8 98E0
+E580A9 98E8
+E580AA 98E2
+E580AB 97CF
+E580AC 98E9
+E580AD 9860
+E580B6 8BE4
+E580B9 8C90
+E58183 98EE
+E58187 98EF
+E58188 98F3
+E58189 88CC
+E5818F 95CE
+E58190 98F2
+E58195 98F1
+E58196 98F5
+E5819A 98F4
+E5819C 92E2
+E581A5 8C92
+E581AC 98F6
+E581B2 8EC3
+E581B4 91A4
+E581B5 92E3
+E581B6 8BF4
+E581B8 98F7
+E581BD 8B55
+E58280 98F8
+E58285 98FA
+E5828D 9654
+E58291 8C86
+E58298 8E50
+E58299 94F5
+E5829A 98F9
+E582AC 8DC3
+E582AD 9762
+E582B2 98FC
+E582B3 9942
+E582B4 98FB
+E582B5 8DC2
+E582B7 8F9D
+E582BE 8C58
+E58382 9943
+E58385 8BCD
+E58389 9940
+E5838A 9941
+E5838D 93AD
+E5838F 919C
+E58391 8BA1
+E58395 966C
+E58396 9944
+E5839A 97BB
+E5839E 9945
+E583A3 9948
+E583A5 9946
+E583A7 916D
+E583AD 9947
+E583AE 9949
+E583B5 994B
+E583B9 994A
+E583BB 95C6
+E58480 8B56
+E58481 994D
+E58482 994E
+E58484 89AD
+E58489 994C
+E58492 8EF2
+E58494 9951
+E58495 9950
+E58496 994F
+E58498 98D4
+E5849A 9952
+E5849F 8F9E
+E584A1 9953
+E584AA 9744
+E584B2 96D7
+E584B7 9955
+E584BA 9954
+E584BB 9957
+E584BC 9956
+E584BF 9958
+E58580 9959
+E58581 88F2
+E58583 8CB3
+E58584 8C5A
+E58585 8F5B
+E58586 929B
+E58587 8BA2
+E58588 90E6
+E58589 8CF5
+E5858B 8D8E
+E5858C 995B
+E5858D 96C6
+E5858E 9365
+E58590 8E99
+E58592 995A
+E58594 995C
+E5859A 937D
+E5859C 8A95
+E585A2 995D
+E585A5 93FC
+E585A8 9153
+E585A9 995F
+E585AA 9960
+E585AB 94AA
+E585AC 8CF6
+E585AD 985A
+E585AE 9961
+E585B1 8BA4
+E585B5 95BA
+E585B6 91B4
+E585B7 8BEF
+E585B8 9354
+E585BC 8C93
+E58680 9962
+E58682 9963
+E58685 93E0
+E58686 897E
+E58689 9966
+E5868A 8DFB
+E5868C 9965
+E5868D 8DC4
+E5868F 9967
+E58690 E3EC
+E58691 9968
+E58692 9660
+E58693 9969
+E58695 996A
+E58696 996B
+E58697 8FE7
+E58699 8ECA
+E586A0 8AA5
+E586A2 996E
+E586A4 996C
+E586A5 96BB
+E586A6 996D
+E586A8 9579
+E586A9 996F
+E586AA 9970
+E586AB 9971
+E586AC 937E
+E586B0 9975
+E586B1 9973
+E586B2 9974
+E586B3 9972
+E586B4 8DE1
+E586B5 9976
+E586B6 96E8
+E586B7 97E2
+E586BD 9977
+E58784 90A6
+E58785 9978
+E58786 8F79
+E58789 9979
+E5878B 929C
+E5878C 97BD
+E5878D 9380
+E58796 99C3
+E5879B 997A
+E5879C EAA3
+E5879D 8BC3
+E587A0 997B
+E587A1 967D
+E587A6 8F88
+E587A7 91FA
+E587A9 997D
+E587AA 93E2
+E587AD 997E
+E587B0 9980
+E587B1 8A4D
+E587B5 9981
+E587B6 8BA5
+E587B8 93CA
+E587B9 899A
+E587BA 8F6F
+E587BD 949F
+E587BE 9982
+E58880 9381
+E58883 906E
+E58884 9983
+E58886 95AA
+E58887 90D8
+E58888 8AA0
+E5888A 8AA7
+E5888B 9984
+E5888E 9986
+E58891 8C59
+E58894 9985
+E58897 97F1
+E5889D 8F89
+E588A4 94BB
+E588A5 95CA
+E588A7 9987
+E588A9 9798
+E588AA 9988
+E588AE 9989
+E588B0 939E
+E588B3 998A
+E588B6 90A7
+E588B7 8DFC
+E588B8 8C94
+E588B9 998B
+E588BA 8E68
+E588BB 8D8F
+E58983 92E4
+E58984 998D
+E58987 91A5
+E5898A 8DED
+E5898B 998E
+E5898C 998F
+E5898D 914F
+E5898F 998C
+E58994 9991
+E58996 9655
+E5899B 8D84
+E5899E 9990
+E589A3 8C95
+E589A4 8DDC
+E589A5 948D
+E589A9 9994
+E589AA 9992
+E589AF 959B
+E589B0 8FE8
+E589B1 999B
+E589B2 8A84
+E589B3 9995
+E589B4 9993
+E589B5 916E
+E589BD 9997
+E589BF 9996
+E58A83 8A63
+E58A87 8C80
+E58A88 999C
+E58A89 97AB
+E58A8D 9998
+E58A91 999D
+E58A92 999A
+E58A94 9999
+E58A9B 97CD
+E58A9F 8CF7
+E58AA0 89C1
+E58AA3 97F2
+E58AA9 8F95
+E58AAA 9377
+E58AAB 8D85
+E58AAC 99A0
+E58AAD 99A1
+E58AB1 97E3
+E58AB4 984A
+E58AB5 99A3
+E58AB9 8CF8
+E58ABC 99A2
+E58ABE 8A4E
+E58B81 99A4
+E58B83 9675
+E58B85 92BA
+E58B87 9745
+E58B89 95D7
+E58B8D 99A5
+E58B92 E8D3
+E58B95 93AE
+E58B97 99A6
+E58B98 8AA8
+E58B99 96B1
+E58B9D 8F9F
+E58B9E 99A7
+E58B9F 95E5
+E58BA0 99AB
+E58BA2 90A8
+E58BA3 99A8
+E58BA4 8BCE
+E58BA6 99A9
+E58BA7 8AA9
+E58BB2 8C4D
+E58BB3 99AC
+E58BB5 99AD
+E58BB8 99AE
+E58BB9 99AF
+E58BBA 8ED9
+E58BBE 8CF9
+E58BBF 96DC
+E58C81 96E6
+E58C82 93F5
+E58C85 95EF
+E58C86 99B0
+E58C88 99B1
+E58C8D 99B3
+E58C8F 99B5
+E58C90 99B4
+E58C95 99B6
+E58C96 89BB
+E58C97 966B
+E58C99 8DFA
+E58C9A 99B7
+E58C9D 9178
+E58CA0 8FA0
+E58CA1 8BA7
+E58CA3 99B8
+E58CAA 94D9
+E58CAF 99B9
+E58CB1 99BA
+E58CB3 99BB
+E58CB8 99BC
+E58CB9 9543
+E58CBA 8BE6
+E58CBB 88E3
+E58CBF 93BD
+E58D80 99BD
+E58D81 8F5C
+E58D83 90E7
+E58D85 99BF
+E58D86 99BE
+E58D87 8FA1
+E58D88 8CDF
+E58D89 99C1
+E58D8A 94BC
+E58D8D 99C2
+E58D91 94DA
+E58D92 91B2
+E58D93 91EC
+E58D94 8BA6
+E58D97 93EC
+E58D98 9250
+E58D9A 948E
+E58D9C 966D
+E58D9E 99C4
+E58DA0 90E8
+E58DA6 8C54
+E58DA9 99C5
+E58DAE 99C6
+E58DAF 894B
+E58DB0 88F3
+E58DB1 8AEB
+E58DB3 91A6
+E58DB4 8B70
+E58DB5 9791
+E58DB7 99C9
+E58DB8 89B5
+E58DBB 99C8
+E58DBF 8BA8
+E58E82 99CA
+E58E84 96EF
+E58E96 99CB
+E58E98 97D0
+E58E9A 8CFA
+E58E9F 8CB4
+E58EA0 99CC
+E58EA5 99CE
+E58EA6 99CD
+E58EA8 907E
+E58EA9 8958
+E58EAD 897D
+E58EAE 99CF
+E58EB0 99D0
+E58EB3 8CB5
+E58EB6 99D1
+E58EBB 8B8E
+E58F82 8E51
+E58F83 99D2
+E58F88 9694
+E58F89 8DB3
+E58F8A 8B79
+E58F8B 9746
+E58F8C 916F
+E58F8D 94BD
+E58F8E 8EFB
+E58F94 8F66
+E58F96 8EE6
+E58F97 8EF3
+E58F99 8F96
+E58F9B 94BE
+E58F9F 99D5
+E58FA1 8962
+E58FA2 9170
+E58FA3 8CFB
+E58FA4 8CC3
+E58FA5 8BE5
+E58FA8 99D9
+E58FA9 9240
+E58FAA 91FC
+E58FAB 8BA9
+E58FAC 8FA2
+E58FAD 99DA
+E58FAE 99D8
+E58FAF 89C2
+E58FB0 91E4
+E58FB1 8EB6
+E58FB2 8E6A
+E58FB3 8945
+E58FB6 8A90
+E58FB7 8D86
+E58FB8 8E69
+E58FBA 99DB
+E59081 99DC
+E59083 8B68
+E59084 8A65
+E59088 8D87
+E59089 8B67
+E5908A 92DD
+E5908B 8944
+E5908C 93AF
+E5908D 96BC
+E5908E 8D40
+E5908F 9799
+E59090 9366
+E59091 8CFC
+E5909B 8C4E
+E5909D 99E5
+E5909F 8BE1
+E590A0 9669
+E590A6 94DB
+E590A9 99E4
+E590AB 8ADC
+E590AC 99DF
+E590AD 99E0
+E590AE 99E2
+E590B6 99E3
+E590B8 8B7A
+E590B9 9081
+E590BB 95AB
+E590BC 99E1
+E590BD 99DD
+E590BE 8CE1
+E59180 99DE
+E59182 9843
+E59186 95F0
+E59188 92E6
+E59189 8CE0
+E5918A 8D90
+E5918E 99E6
+E59191 93DB
+E5919F 99EA
+E591A8 8EFC
+E591AA 8EF4
+E591B0 99ED
+E591B1 99EB
+E591B3 96A1
+E591B5 99E8
+E591B6 99F1
+E591B7 99EC
+E591BB 99EF
+E591BC 8CC4
+E591BD 96BD
+E59280 99F0
+E59284 99F2
+E59286 99F4
+E5928B 8DEE
+E5928C 9861
+E5928E 99E9
+E5928F 99E7
+E59290 99F3
+E59292 99EE
+E592A2 99F6
+E592A4 9A42
+E592A5 99F8
+E592A8 99FC
+E592AB 9A40
+E592AC 99F9
+E592AF 9A5D
+E592B2 8DE7
+E592B3 8A50
+E592B8 99F7
+E592BC 9A44
+E592BD 88F4
+E592BE 9A43
+E59380 88A3
+E59381 9569
+E59382 9A41
+E59384 99FA
+E59387 99F5
+E59388 99FB
+E59389 8DC6
+E59398 9A45
+E593A1 88F5
+E593A2 9A4E
+E593A5 9A46
+E593A6 9A47
+E593A8 8FA3
+E593A9 9689
+E593AD 9A4C
+E593AE 9A4B
+E593B2 934E
+E593BA 9A4D
+E593BD 9A4A
+E59484 8953
+E59486 8DB4
+E59487 904F
+E5948F 9A48
+E59490 9382
+E59494 9A49
+E59496 88A0
+E594AE 9A53
+E594AF 9742
+E594B1 8FA5
+E594B3 9A59
+E594B8 9A58
+E594B9 9A4F
+E594BE 91C1
+E59580 9A50
+E59584 91ED
+E59585 9A55
+E59586 8FA4
+E5958C 9A52
+E5958F 96E2
+E59593 8C5B
+E59596 9A56
+E59597 9A57
+E5959C 9A54
+E5959D 9A5A
+E595A3 9A51
+E595BB 9A60
+E595BC 9A65
+E595BE 9A61
+E59680 9A5C
+E59683 9A66
+E59684 9150
+E59687 9A68
+E59689 8D41
+E5968A 9A5E
+E5968B 929D
+E59698 9A62
+E59699 9A5B
+E5969A 8AAB
+E5969C 8AEC
+E5969D 8A85
+E5969E 9A63
+E5969F 9A5F
+E596A7 8C96
+E596A8 9A69
+E596A9 9A67
+E596AA 9172
+E596AB 8B69
+E596AC 8BAA
+E596AE 9A64
+E596B0 8BF2
+E596B6 8963
+E59784 9A6D
+E59785 9A6B
+E59787 9AA5
+E59794 9A70
+E5979A 9A6A
+E5979C 9A6E
+E5979F 9A6C
+E597A3 8E6B
+E597A4 9A6F
+E597B7 9A72
+E597B9 9A77
+E597BD 9A75
+E597BE 9A74
+E59886 9251
+E59889 89C3
+E59894 9A71
+E59896 9A73
+E59897 8FA6
+E59898 8952
+E5989B 9A76
+E598A9 89DC
+E598AF 9A82
+E598B1 8FFA
+E598B2 9A7D
+E598B4 9A7B
+E598B6 9A7C
+E598B8 9A7E
+E59982 895C
+E5998C 9158
+E5998E 9A78
+E59990 9A79
+E5999B 8A9A
+E599A4 9A81
+E599A8 8AED
+E599AA 9A84
+E599AB 9A80
+E599AC 9A83
+E599B4 95AC
+E599B8 93D3
+E599BA 94B6
+E59A80 9A86
+E59A86 9A85
+E59A87 8A64
+E59A8A 9A87
+E59A8F 9A8A
+E59A94 9A89
+E59AA0 9A88
+E59AA2 9458
+E59AA5 9A8B
+E59AAE 9A8C
+E59AB4 9A8E
+E59AB6 9A8D
+E59ABC 9A90
+E59B80 9A93
+E59B81 9A91
+E59B82 9A8F
+E59B83 9A92
+E59B88 9A94
+E59B8E 9A95
+E59B91 9A96
+E59B93 9A97
+E59B97 9A98
+E59B98 9964
+E59B9A 8EFA
+E59B9B 8E6C
+E59B9E 89F1
+E59BA0 88F6
+E59BA3 9263
+E59BAE 9A99
+E59BB0 8DA2
+E59BB2 88CD
+E59BB3 907D
+E59BB9 9A9A
+E59BBA 8CC5
+E59BBD 8D91
+E59BBF 9A9C
+E59C80 9A9B
+E59C83 95DE
+E59C84 9A9D
+E59C88 9A9F
+E59C89 9A9E
+E59C8B 9AA0
+E59C8D 9AA1
+E59C8F 8C97
+E59C92 8980
+E59C93 9AA2
+E59C96 9AA4
+E59C98 9AA3
+E59C9C 9AA6
+E59C9F 9379
+E59CA6 9AA7
+E59CA7 88B3
+E59CA8 8DDD
+E59CAD 8C5C
+E59CB0 926E
+E59CB7 9AA8
+E59CB8 9AA9
+E59CBB 9AAB
+E59D80 9AAC
+E59D82 8DE2
+E59D87 8BCF
+E59D8A 9656
+E59D8E 9AAA
+E59D8F 9AAD
+E59D90 8DBF
+E59D91 8D42
+E59DA1 9AB1
+E59DA4 8DA3
+E59DA6 9252
+E59DA9 9AAE
+E59DAA 92D8
+E59DBF 9AB2
+E59E82 9082
+E59E88 9AB0
+E59E89 9AB3
+E59E8B 8C5E
+E59E93 9AB4
+E59EA0 9AB5
+E59EA2 8D43
+E59EA3 8A5F
+E59EA4 9AB7
+E59EAA 9AB8
+E59EB0 9AB9
+E59EB3 9AB6
+E59F80 9AAF
+E59F83 9ABA
+E59F86 9ABB
+E59F8B 9684
+E59F8E 8FE9
+E59F92 9ABD
+E59F93 9ABE
+E59F94 9ABC
+E59F96 9AC0
+E59F9C 9457
+E59F9F 88E6
+E59FA0 9575
+E59FA3 9AC1
+E59FB4 8FFB
+E59FB7 8EB7
+E59FB9 947C
+E59FBA 8AEE
+E59FBC 8DE9
+E5A080 9678
+E5A082 93B0
+E5A085 8C98
+E5A086 91CD
+E5A08A 9ABF
+E5A08B 9AC2
+E5A095 91C2
+E5A099 9AC3
+E5A09D 9AC4
+E5A0A1 9AC6
+E5A0A4 92E7
+E5A0AA 8AAC
+E5A0AF EA9F
+E5A0B0 8981
+E5A0B1 95F1
+E5A0B4 8FEA
+E5A0B5 9367
+E5A0BA 8DE4
+E5A0BD 9ACC
+E5A180 95BB
+E5A181 97DB
+E5A18A 89F2
+E5A18B 9AC8
+E5A191 9159
+E5A192 9ACB
+E5A194 9383
+E5A197 9368
+E5A198 9384
+E5A199 94B7
+E5A19A 92CB
+E5A19E 8DC7
+E5A1A2 9AC7
+E5A1A9 8996
+E5A1AB 9355
+E5A1B0 9AC9
+E5A1B2 9AC5
+E5A1B5 906F
+E5A1B9 9ACD
+E5A1BE 8F6D
+E5A283 8BAB
+E5A285 9ACE
+E5A293 95E6
+E5A297 919D
+E5A29C 92C4
+E5A29F 9AD0
+E5A2A8 966E
+E5A2AB 9AD1
+E5A2AE 9AD6
+E5A2B3 95AD
+E5A2B8 9AD5
+E5A2B9 9ACF
+E5A2BA 9AD2
+E5A2BB 9AD4
+E5A2BE 8DA4
+E5A381 95C7
+E5A385 9AD7
+E5A387 9264
+E5A38A 89F3
+E5A38C 8FEB
+E5A391 9AD9
+E5A393 9AD8
+E5A395 8D88
+E5A397 9ADA
+E5A398 9ADC
+E5A399 9ADB
+E5A39C 9ADE
+E5A39E 9AD3
+E5A39F 9AE0
+E5A3A4 9ADF
+E5A3A5 9ADD
+E5A3AB 8E6D
+E5A3AC 9070
+E5A3AE 9173
+E5A3AF 9AE1
+E5A3B0 90BA
+E5A3B1 88EB
+E5A3B2 9484
+E5A3B7 92D9
+E5A3B9 9AE3
+E5A3BA 9AE2
+E5A3BB 9AE4
+E5A3BC 9AE5
+E5A3BD 9AE6
+E5A482 9AE7
+E5A489 95CF
+E5A48A 9AE8
+E5A48F 89C4
+E5A490 9AE9
+E5A495 975B
+E5A496 8A4F
+E5A498 99C7
+E5A499 8F67
+E5A49A 91BD
+E5A49B 9AEA
+E5A49C 96E9
+E5A4A2 96B2
+E5A4A5 9AEC
+E5A4A7 91E5
+E5A4A9 9356
+E5A4AA 91BE
+E5A4AB 9576
+E5A4AC 9AED
+E5A4AD 9AEE
+E5A4AE 899B
+E5A4B1 8EB8
+E5A4B2 9AEF
+E5A4B7 88CE
+E5A4B8 9AF0
+E5A4BE 9AF1
+E5A584 8982
+E5A587 8AEF
+E5A588 93DE
+E5A589 95F2
+E5A58E 9AF5
+E5A58F 9174
+E5A590 9AF4
+E5A591 8C5F
+E5A594 967A
+E5A595 9AF3
+E5A597 9385
+E5A598 9AF7
+E5A59A 9AF6
+E5A5A0 9AF9
+E5A5A2 9AF8
+E5A5A5 899C
+E5A5A7 9AFA
+E5A5A8 8FA7
+E5A5A9 9AFC
+E5A5AA 9244
+E5A5AC 9AFB
+E5A5AE 95B1
+E5A5B3 8F97
+E5A5B4 937A
+E5A5B8 9B40
+E5A5BD 8D44
+E5A681 9B41
+E5A682 9440
+E5A683 94DC
+E5A684 96CF
+E5A68A 9444
+E5A68D 9B4A
+E5A693 8B57
+E5A696 9764
+E5A699 96AD
+E5A69B 9BAA
+E5A69D 9B42
+E5A6A3 9B45
+E5A6A5 91C3
+E5A6A8 9657
+E5A6AC 9369
+E5A6B2 9B46
+E5A6B9 9685
+E5A6BB 8DC8
+E5A6BE 8FA8
+E5A786 9B47
+E5A789 8E6F
+E5A78B 8E6E
+E5A790 88B7
+E5A791 8CC6
+E5A793 90A9
+E5A794 88CF
+E5A799 9B4B
+E5A79A 9B4C
+E5A79C 9B49
+E5A7A5 8957
+E5A7A6 8AAD
+E5A7A8 9B48
+E5A7AA 96C3
+E5A7AB 9550
+E5A7B6 88A6
+E5A7BB 88F7
+E5A7BF 8E70
+E5A881 88D0
+E5A883 88A1
+E5A889 9B51
+E5A891 9B4F
+E5A898 96BA
+E5A89A 9B52
+E5A89C 9B50
+E5A89F 9B4E
+E5A8A0 9050
+E5A8A5 9B4D
+E5A8A9 95D8
+E5A8AF 8CE2
+E5A8B5 9B56
+E5A8B6 9B57
+E5A8BC 8FA9
+E5A980 9B53
+E5A981 984B
+E5A986 946B
+E5A989 9B55
+E5A99A 8DA5
+E5A9A2 9B58
+E5A9A6 9577
+E5A9AA 9B59
+E5A9AC 9B54
+E5A9BF 96B9
+E5AA92 947D
+E5AA9A 9B5A
+E5AA9B 9551
+E5AABC 9B5B
+E5AABD 9B5F
+E5AABE 9B5C
+E5AB81 89C5
+E5AB82 9B5E
+E5AB89 8EB9
+E5AB8B 9B5D
+E5AB8C 8C99
+E5AB90 9B6B
+E5AB96 9B64
+E5AB97 9B61
+E5ABA1 9284
+E5ABA3 9B60
+E5ABA6 9B62
+E5ABA9 9B63
+E5ABBA 9B65
+E5ABBB 9B66
+E5AC89 8AF0
+E5AC8B 9B68
+E5AC8C 9B67
+E5AC96 9B69
+E5ACA2 8FEC
+E5ACAA 9B6C
+E5ACAC 92DA
+E5ACB0 8964
+E5ACB2 9B6A
+E5ACB6 9B6D
+E5ACBE 9B6E
+E5AD80 9B71
+E5AD83 9B6F
+E5AD85 9B70
+E5AD90 8E71
+E5AD91 9B72
+E5AD94 8D45
+E5AD95 9B73
+E5AD97 8E9A
+E5AD98 91B6
+E5AD9A 9B74
+E5AD9B 9B75
+E5AD9C 8E79
+E5AD9D 8D46
+E5AD9F 96D0
+E5ADA3 8B47
+E5ADA4 8CC7
+E5ADA5 9B76
+E5ADA6 8A77
+E5ADA9 9B77
+E5ADAB 91B7
+E5ADB0 9B78
+E5ADB1 9BA1
+E5ADB3 9B79
+E5ADB5 9B7A
+E5ADB8 9B7B
+E5ADBA 9B7D
+E5AE80 9B7E
+E5AE83 9B80
+E5AE85 91EE
+E5AE87 8946
+E5AE88 8EE7
+E5AE89 88C0
+E5AE8B 9176
+E5AE8C 8AAE
+E5AE8D 8EB3
+E5AE8F 8D47
+E5AE95 9386
+E5AE97 8F40
+E5AE98 8AAF
+E5AE99 9288
+E5AE9A 92E8
+E5AE9B 88B6
+E5AE9C 8B58
+E5AE9D 95F3
+E5AE9F 8EC0
+E5AEA2 8B71
+E5AEA3 90E9
+E5AEA4 8EBA
+E5AEA5 9747
+E5AEA6 9B81
+E5AEAE 8B7B
+E5AEB0 8DC9
+E5AEB3 8A51
+E5AEB4 8983
+E5AEB5 8FAA
+E5AEB6 89C6
+E5AEB8 9B82
+E5AEB9 9765
+E5AEBF 8F68
+E5AF82 8EE2
+E5AF83 9B83
+E5AF84 8AF1
+E5AF85 93D0
+E5AF86 96A7
+E5AF87 9B84
+E5AF89 9B85
+E5AF8C 9578
+E5AF90 9B87
+E5AF92 8AA6
+E5AF93 8BF5
+E5AF94 9B86
+E5AF9B 8AB0
+E5AF9D 9051
+E5AF9E 9B8B
+E5AF9F 8E40
+E5AFA1 89C7
+E5AFA2 9B8A
+E5AFA4 9B88
+E5AFA5 9B8C
+E5AFA6 9B89
+E5AFA7 944A
+E5AFA8 9ECB
+E5AFA9 9052
+E5AFAB 9B8D
+E5AFAE 97BE
+E5AFB0 9B8E
+E5AFB3 9B90
+E5AFB5 929E
+E5AFB6 9B8F
+E5AFB8 90A1
+E5AFBA 8E9B
+E5AFBE 91CE
+E5AFBF 8EF5
+E5B081 9595
+E5B082 90EA
+E5B084 8ECB
+E5B085 9B91
+E5B086 8FAB
+E5B087 9B92
+E5B088 9B93
+E5B089 88D1
+E5B08A 91B8
+E5B08B 9071
+E5B08D 9B94
+E5B08E 93B1
+E5B08F 8FAC
+E5B091 8FAD
+E5B093 9B95
+E5B096 90EB
+E5B09A 8FAE
+E5B0A0 9B96
+E5B0A2 9B97
+E5B0A4 96DE
+E5B0A8 9B98
+E5B0AD 8BC4
+E5B0B1 8F41
+E5B0B8 9B99
+E5B0B9 9B9A
+E5B0BA 8EDA
+E5B0BB 904B
+E5B0BC 93F2
+E5B0BD 9073
+E5B0BE 94F6
+E5B0BF 9441
+E5B180 8BC7
+E5B181 9B9B
+E5B185 8B8F
+E5B186 9B9C
+E5B188 8BFC
+E5B18A 93CD
+E5B18B 89AE
+E5B18D 8E72
+E5B18E 9B9D
+E5B18F 9BA0
+E5B190 9B9F
+E5B191 8BFB
+E5B193 9B9E
+E5B195 9357
+E5B19E 91AE
+E5B1A0 936A
+E5B1A1 8EC6
+E5B1A4 9177
+E5B1A5 979A
+E5B1AC 9BA2
+E5B1AE 9BA3
+E5B1AF 93D4
+E5B1B1 8E52
+E5B1B6 9BA5
+E5B1B9 9BA6
+E5B28C 9BA7
+E5B290 8AF2
+E5B291 9BA8
+E5B294 9BA9
+E5B2A1 89AA
+E5B2A8 915A
+E5B2A9 8AE2
+E5B2AB 9BAB
+E5B2AC 96A6
+E5B2B1 91D0
+E5B2B3 8A78
+E5B2B6 9BAD
+E5B2B7 9BAF
+E5B2B8 8ADD
+E5B2BB 9BAC
+E5B2BC 9BAE
+E5B2BE 9BB1
+E5B385 9BB0
+E5B387 9BB2
+E5B399 9BB3
+E5B3A0 93BB
+E5B3A1 8BAC
+E5B3A8 89E3
+E5B3A9 9BB4
+E5B3AA 9BB9
+E5B3AD 9BB7
+E5B3AF 95F5
+E5B3B0 95F4
+E5B3B6 9387
+E5B3BA 9BB6
+E5B3BB 8F73
+E5B3BD 9BB5
+E5B487 9092
+E5B48B 9BBA
+E5B48E 8DE8
+E5B491 9BC0
+E5B494 9BC1
+E5B495 9BBB
+E5B496 8A52
+E5B497 9BBC
+E5B498 9BC5
+E5B499 9BC4
+E5B49A 9BC3
+E5B49B 9BBF
+E5B49F 9BBE
+E5B4A2 9BC2
+E5B4A9 95F6
+E5B58B 9BC9
+E5B58C 9BC6
+E5B58E 9BC8
+E5B590 9792
+E5B592 9BC7
+E5B59C 9BBD
+E5B5A9 9093
+E5B5AC 9BCA
+E5B5AF 8DB5
+E5B5B3 9BCB
+E5B5B6 9BCC
+E5B682 9BCF
+E5B684 9BCE
+E5B687 9BCD
+E5B68B 9388
+E5B68C 9BB8
+E5B690 9BD5
+E5B69D 9BD1
+E5B6A2 9BD0
+E5B6AC 9BD2
+E5B6AE 9BD3
+E5B6B7 9BD6
+E5B6BA 97E4
+E5B6BC 9BD7
+E5B6BD 9BD4
+E5B789 9BD8
+E5B78C 8ADE
+E5B78D 9BD9
+E5B792 9BDB
+E5B793 9BDA
+E5B796 9BDC
+E5B79B 9BDD
+E5B79D 90EC
+E5B79E 8F42
+E5B7A1 8F84
+E5B7A3 9183
+E5B7A5 8D48
+E5B7A6 8DB6
+E5B7A7 8D49
+E5B7A8 8B90
+E5B7AB 9BDE
+E5B7AE 8DB7
+E5B7B1 8CC8
+E5B7B2 9BDF
+E5B7B3 96A4
+E5B7B4 9462
+E5B7B5 9BE0
+E5B7B7 8D4A
+E5B7BB 8AAA
+E5B7BD 9246
+E5B7BE 8BD0
+E5B882 8E73
+E5B883 957A
+E5B886 94BF
+E5B88B 9BE1
+E5B88C 8AF3
+E5B891 9BE4
+E5B896 929F
+E5B899 9BE3
+E5B89A 9BE2
+E5B89B 9BE5
+E5B89D 92E9
+E5B8A5 9083
+E5B8AB 8E74
+E5B8AD 90C8
+E5B8AF 91D1
+E5B8B0 8B41
+E5B8B3 92A0
+E5B8B6 9BE6
+E5B8B7 9BE7
+E5B8B8 8FED
+E5B8BD 9658
+E5B980 9BEA
+E5B983 9BE9
+E5B984 9BE8
+E5B985 959D
+E5B987 9BF1
+E5B98C 9679
+E5B98E 9BEB
+E5B994 9BED
+E5B995 968B
+E5B997 9BEC
+E5B99F 9BEE
+E5B9A1 94A6
+E5B9A2 9BEF
+E5B9A3 95BC
+E5B9A4 9BF0
+E5B9B2 8AB1
+E5B9B3 95BD
+E5B9B4 944E
+E5B9B5 9BF2
+E5B9B6 9BF3
+E5B9B8 8D4B
+E5B9B9 8AB2
+E5B9BA 9BF4
+E5B9BB 8CB6
+E5B9BC 9763
+E5B9BD 9748
+E5B9BE 8AF4
+E5B9BF 9BF6
+E5BA81 92A1
+E5BA83 8D4C
+E5BA84 8FAF
+E5BA87 94DD
+E5BA8A 8FB0
+E5BA8F 8F98
+E5BA95 92EA
+E5BA96 95F7
+E5BA97 9358
+E5BA9A 8D4D
+E5BA9C 957B
+E5BAA0 9BF7
+E5BAA6 9378
+E5BAA7 8DC0
+E5BAAB 8CC9
+E5BAAD 92EB
+E5BAB5 88C1
+E5BAB6 8F8E
+E5BAB7 8D4E
+E5BAB8 9766
+E5BB81 9BF8
+E5BB82 9BF9
+E5BB83 9470
+E5BB88 9BFA
+E5BB89 97F5
+E5BB8A 984C
+E5BB8F 9BFC
+E5BB90 9BFB
+E5BB93 8A66
+E5BB96 9C40
+E5BB9A 9C43
+E5BB9B 9C44
+E5BB9D 9C42
+E5BB9F 955F
+E5BBA0 8FB1
+E5BBA1 9C46
+E5BBA2 9C45
+E5BBA3 9C41
+E5BBA8 9C47
+E5BBA9 9C48
+E5BBAC 9C49
+E5BBB0 9C4C
+E5BBB1 9C4A
+E5BBB3 9C4B
+E5BBB4 9C4D
+E5BBB6 8984
+E5BBB7 92EC
+E5BBB8 9C4E
+E5BBBA 8C9A
+E5BBBB 89F4
+E5BBBC 9455
+E5BBBE 9C4F
+E5BBBF 93F9
+E5BC81 95D9
+E5BC83 9C50
+E5BC84 984D
+E5BC89 9C51
+E5BC8A 95BE
+E5BC8B 9C54
+E5BC8C 989F
+E5BC8D 98AF
+E5BC8F 8EAE
+E5BC90 93F3
+E5BC91 9C55
+E5BC93 8B7C
+E5BC94 92A2
+E5BC95 88F8
+E5BC96 9C56
+E5BC97 95A4
+E5BC98 8D4F
+E5BC9B 926F
+E5BC9F 92ED
+E5BCA5 96ED
+E5BCA6 8CB7
+E5BCA7 8CCA
+E5BCA9 9C57
+E5BCAD 9C58
+E5BCAF 9C5E
+E5BCB1 8EE3
+E5BCB5 92A3
+E5BCB7 8BAD
+E5BCB8 9C59
+E5BCBC 954A
+E5BCBE 9265
+E5BD81 9C5A
+E5BD88 9C5B
+E5BD8A 8BAE
+E5BD8C 9C5C
+E5BD8E 9C5D
+E5BD91 9C5F
+E5BD93 9396
+E5BD96 9C60
+E5BD97 9C61
+E5BD99 9C62
+E5BD9C 9C53
+E5BD9D 9C52
+E5BDA1 9C63
+E5BDA2 8C60
+E5BDA6 9546
+E5BDA9 8DCA
+E5BDAA 9556
+E5BDAB 92A4
+E5BDAC 956A
+E5BDAD 9C64
+E5BDB0 8FB2
+E5BDB1 8965
+E5BDB3 9C65
+E5BDB7 9C66
+E5BDB9 96F0
+E5BDBC 94DE
+E5BDBF 9C69
+E5BE80 899D
+E5BE81 90AA
+E5BE82 9C68
+E5BE83 9C67
+E5BE84 8C61
+E5BE85 91D2
+E5BE87 9C6D
+E5BE88 9C6B
+E5BE8A 9C6A
+E5BE8B 97A5
+E5BE8C 8CE3
+E5BE90 8F99
+E5BE91 9C6C
+E5BE92 936B
+E5BE93 8F5D
+E5BE97 93BE
+E5BE98 9C70
+E5BE99 9C6F
+E5BE9E 9C6E
+E5BEA0 9C71
+E5BEA1 8CE4
+E5BEA8 9C72
+E5BEA9 959C
+E5BEAA 8F7A
+E5BEAD 9C73
+E5BEAE 94F7
+E5BEB3 93BF
+E5BEB4 92A5
+E5BEB9 934F
+E5BEBC 9C74
+E5BEBD 8B4A
+E5BF83 9053
+E5BF85 954B
+E5BF8C 8AF5
+E5BF8D 9445
+E5BF96 9C75
+E5BF97 8E75
+E5BF98 9659
+E5BF99 965A
+E5BF9C 899E
+E5BF9D 9C7A
+E5BFA0 9289
+E5BFA4 9C77
+E5BFAB 89F5
+E5BFB0 9CAB
+E5BFB1 9C79
+E5BFB5 944F
+E5BFB8 9C78
+E5BFBB 9C76
+E5BFBD 8D9A
+E5BFBF 9C7C
+E6808E 9C83
+E6808F 9C89
+E68090 9C81
+E68092 937B
+E68095 9C86
+E68096 957C
+E68099 9C80
+E6809B 9C85
+E6809C 97E5
+E6809D 8E76
+E680A0 91D3
+E680A1 9C7D
+E680A5 8B7D
+E680A6 9C88
+E680A7 90AB
+E680A8 8985
+E680A9 9C82
+E680AA 89F6
+E680AB 9C87
+E680AF 8BAF
+E680B1 9C84
+E680BA 9C8A
+E68181 9C8C
+E68182 9C96
+E68183 9C94
+E68186 9C91
+E6818A 9C90
+E6818B 97F6
+E6818D 9C92
+E68190 8BB0
+E68192 8D50
+E68195 8F9A
+E68199 9C99
+E6819A 9C8B
+E6819F 9C8F
+E681A0 9C7E
+E681A2 89F8
+E681A3 9C93
+E681A4 9C95
+E681A5 9270
+E681A8 8DA6
+E681A9 89B6
+E681AA 9C8D
+E681AB 9C98
+E681AC 9C97
+E681AD 8BB1
+E681AF 91A7
+E681B0 8A86
+E681B5 8C62
+E681B7 9C8E
+E68281 9C9A
+E68283 9C9D
+E68284 9C9F
+E68289 8EBB
+E6828B 9CA5
+E6828C 92EE
+E6828D 9C9B
+E68292 9CA3
+E68294 89F7
+E68296 9CA1
+E68297 9CA2
+E6829A 9C9E
+E6829B 9CA0
+E6829F 8CE5
+E682A0 9749
+E682A3 8AB3
+E682A6 8978
+E682A7 9CA4
+E682A9 9459
+E682AA 88AB
+E682B2 94DF
+E682B3 9C7B
+E682B4 9CAA
+E682B5 9CAE
+E682B6 96E3
+E682B8 9CA7
+E682BC 9389
+E682BD 9CAC
+E68385 8FEE
+E68386 9CAD
+E68387 93D5
+E68391 9866
+E68393 9CA9
+E68398 9CAF
+E6839A 8D9B
+E6839C 90C9
+E6839F 88D2
+E683A0 9CA8
+E683A1 9CA6
+E683A3 9179
+E683A7 9C9C
+E683A8 8E53
+E683B0 91C4
+E683B1 9CBB
+E683B3 917A
+E683B4 9CB6
+E683B6 9CB3
+E683B7 9CB4
+E683B9 8EE4
+E683BA 9CB7
+E683BB 9CBA
+E68480 9CB5
+E68481 8F44
+E68483 9CB8
+E68486 9CB2
+E68488 96FA
+E68489 96F9
+E6848D 9CBC
+E6848E 9CBD
+E6848F 88D3
+E68495 9CB1
+E6849A 8BF0
+E6849B 88A4
+E6849F 8AB4
+E684A1 9CB9
+E684A7 9CC1
+E684A8 9CC0
+E684AC 9CC5
+E684B4 9CC6
+E684BC 9CC4
+E684BD 9CC7
+E684BE 9CBF
+E684BF 9CC3
+E68582 9CC8
+E68584 9CC9
+E68587 9CBE
+E68588 8E9C
+E6858A 9CC2
+E6858B 91D4
+E6858C 8D51
+E6858D 9CB0
+E6858E 9054
+E68593 9CD6
+E68595 95E7
+E68598 9CCC
+E68599 9CCD
+E6859A 9CCE
+E6859D 9CD5
+E6859F 9CD4
+E685A2 969D
+E685A3 8AB5
+E685A5 9CD2
+E685A7 8C64
+E685A8 8A53
+E685AB 9CCF
+E685AE 97B6
+E685AF 9CD1
+E685B0 88D4
+E685B1 9CD3
+E685B3 9CCA
+E685B4 9CD0
+E685B5 9CD7
+E685B6 8C63
+E685B7 9CCB
+E685BE 977C
+E68682 974A
+E68687 9CDA
+E6868A 9CDE
+E6868E 919E
+E68690 97F7
+E68691 9CDF
+E68694 9CDC
+E68696 9CD9
+E68699 9CD8
+E6869A 9CDD
+E686A4 95AE
+E686A7 93B2
+E686A9 8C65
+E686AB 9CE0
+E686AC 9CDB
+E686AE 9CE1
+E686B2 8C9B
+E686B6 89AF
+E686BA 9CE9
+E686BE 8AB6
+E68783 9CE7
+E68786 9CE8
+E68787 8DA7
+E68788 9CE6
+E68789 9CE4
+E6878A 9CE3
+E6878B 9CEA
+E6878C 9CE2
+E6878D 9CEC
+E68790 89F9
+E687A3 9CEE
+E687A6 9CED
+E687B2 92A6
+E687B4 9CF1
+E687B6 9CEF
+E687B7 9CE5
+E687B8 8C9C
+E687BA 9CF0
+E687BC 9CF4
+E687BD 9CF3
+E687BE 9CF5
+E687BF 9CF2
+E68880 9CF6
+E68888 9CF7
+E68889 9CF8
+E6888A 95E8
+E6888C 9CFA
+E6888D 9CF9
+E6888E 8F5E
+E68890 90AC
+E68891 89E4
+E68892 89FA
+E68894 9CFB
+E68896 88BD
+E6889A 90CA
+E6889B 9CFC
+E6889D E6C1
+E6889E 9D40
+E6889F 8C81
+E688A1 9D41
+E688A6 90ED
+E688AA 9D42
+E688AE 9D43
+E688AF 8B59
+E688B0 9D44
+E688B2 9D45
+E688B3 9D46
+E688B4 91D5
+E688B8 8CCB
+E688BB 96DF
+E688BF 965B
+E68980 8F8A
+E68981 9D47
+E68987 90EE
+E68988 E7BB
+E68989 94E0
+E6898B 8EE8
+E6898D 8DCB
+E6898E 9D48
+E68993 91C5
+E68995 95A5
+E68998 91EF
+E6899B 9D4B
+E6899E 9D49
+E689A0 9D4C
+E689A3 9D4A
+E689A8 9D4D
+E689AE 95AF
+E689B1 88B5
+E689B6 957D
+E689B9 94E1
+E689BC 9D4E
+E689BE 9D51
+E689BF 8FB3
+E68A80 8B5A
+E68A82 9D4F
+E68A83 9D56
+E68A84 8FB4
+E68A89 9D50
+E68A8A 9463
+E68A91 977D
+E68A92 9D52
+E68A93 9D53
+E68A94 9D57
+E68A95 938A
+E68A96 9D54
+E68A97 8D52
+E68A98 90DC
+E68A9B 9D65
+E68A9C 94B2
+E68A9E 91F0
+E68AAB 94E2
+E68AAC 9DAB
+E68AB1 95F8
+E68AB5 92EF
+E68AB9 9695
+E68ABB 9D5A
+E68ABC 899F
+E68ABD 928A
+E68B82 9D63
+E68B85 9253
+E68B86 9D5D
+E68B87 9D64
+E68B88 9D5F
+E68B89 9D66
+E68B8A 9D62
+E68B8C 9D61
+E68B8D 948F
+E68B8F 9D5B
+E68B90 89FB
+E68B91 9D59
+E68B92 8B91
+E68B93 91F1
+E68B94 9D55
+E68B97 9D58
+E68B98 8D53
+E68B99 90D9
+E68B9B 8FB5
+E68B9C 9D60
+E68B9D 9471
+E68BA0 8B92
+E68BA1 8A67
+E68BAC 8A87
+E68BAD 9040
+E68BAE 9D68
+E68BAF 9D6D
+E68BB1 9D69
+E68BB3 8C9D
+E68BB5 9D6E
+E68BB6 8E41
+E68BB7 8D89
+E68BBE 8F45
+E68BBF 9D5C
+E68C81 8E9D
+E68C82 9D6B
+E68C87 8E77
+E68C88 9D6C
+E68C89 88C2
+E68C8C 9D67
+E68C91 92A7
+E68C99 8B93
+E68C9F 8BB2
+E68CA7 9D6A
+E68CA8 88A5
+E68CAB 8DC1
+E68CAF 9055
+E68CBA 92F0
+E68CBD 94D2
+E68CBE 9D70
+E68CBF 917D
+E68D89 91A8
+E68D8C 8E4A
+E68D8D 9D71
+E68D8F 9D73
+E68D90 9D6F
+E68D95 95DF
+E68D97 92BB
+E68D9C 917B
+E68DA7 95F9
+E68DA8 8ECC
+E68DA9 9D80
+E68DAB 9D7E
+E68DAE 9098
+E68DB2 8C9E
+E68DB6 9D78
+E68DB7 8FB7
+E68DBA 93E6
+E68DBB 9450
+E68E80 9D76
+E68E83 917C
+E68E88 8EF6
+E68E89 9D7B
+E68E8C 8FB6
+E68E8E 9D75
+E68E8F 9D7A
+E68E92 9472
+E68E96 9D74
+E68E98 8C40
+E68E9B 8A7C
+E68E9F 9D7C
+E68EA0 97A9
+E68EA1 8DCC
+E68EA2 9254
+E68EA3 9D79
+E68EA5 90DA
+E68EA7 8D54
+E68EA8 9084
+E68EA9 8986
+E68EAA 915B
+E68EAB 9D77
+E68EAC 8B64
+E68EB2 8C66
+E68EB4 92CD
+E68EB5 9D7D
+E68EBB 917E
+E68EBE 9D81
+E68F80 9D83
+E68F83 91B5
+E68F84 9D89
+E68F86 9D84
+E68F89 9D86
+E68F8F 9560
+E68F90 92F1
+E68F92 9D87
+E68F96 974B
+E68F9A 9767
+E68F9B 8AB7
+E68FA1 88AC
+E68FA3 9D85
+E68FA9 9D82
+E68FAE 8AF6
+E68FB4 8987
+E68FB6 9D88
+E68FBA 9768
+E69086 9D8C
+E6908D 91B9
+E6908F 9D93
+E69093 9D8D
+E69096 9D8A
+E69097 9D91
+E6909C 9D72
+E690A6 9D8E
+E690A8 9D92
+E690AC 94C0
+E690AD 938B
+E690B4 9D8B
+E690B6 9D8F
+E690BA 8C67
+E690BE 8DEF
+E69182 90DB
+E6918E 9D97
+E69198 9345
+E691A7 9D94
+E691A9 9680
+E691AF 9D95
+E691B6 9D96
+E691B8 96CC
+E691BA 90A0
+E69283 8C82
+E69288 9D9D
+E69292 8E54
+E69293 9D9A
+E69295 9D99
+E6929A 9451
+E6929E 93B3
+E692A4 9350
+E692A5 9D9B
+E692A9 9D9C
+E692AB 958F
+E692AD 9464
+E692AE 8E42
+E692B0 90EF
+E692B2 966F
+E692B9 8A68
+E692BB 9DA3
+E692BC 9D9E
+E69381 9769
+E69382 9DA5
+E69385 9DA1
+E69387 9DA2
+E6938D 9180
+E69392 9DA0
+E69394 9D5E
+E69398 9DA4
+E6939A 9D9F
+E693A0 9DA9
+E693A1 9DAA
+E693A2 9346
+E693A3 9DAC
+E693A6 8E43
+E693A7 9DA7
+E693AC 8B5B
+E693AF 9DAD
+E693B1 9DA6
+E693B2 9DB1
+E693B4 9DB0
+E693B6 9DAF
+E693BA 9DB2
+E693BD 9DB4
+E693BE 8FEF
+E69480 9DB3
+E69485 9DB7
+E69498 9DB5
+E6949C 9DB6
+E6949D 9D90
+E694A3 9DB9
+E694A4 9DB8
+E694AA 9D98
+E694AB 9DBA
+E694AC 9DAE
+E694AF 8E78
+E694B4 9DBB
+E694B5 9DBC
+E694B6 9DBE
+E694B7 9DBD
+E694B8 9DBF
+E694B9 89FC
+E694BB 8D55
+E694BE 95FA
+E694BF 90AD
+E69585 8CCC
+E69588 9DC1
+E6958D 9DC4
+E6958F 9571
+E69591 8B7E
+E69595 9DC3
+E69596 9DC2
+E69597 9473
+E69598 9DC5
+E69599 8BB3
+E6959D 9DC7
+E6959E 9DC6
+E695A2 8AB8
+E695A3 8E55
+E695A6 93D6
+E695AC 8C68
+E695B0 9094
+E695B2 9DC8
+E695B4 90AE
+E695B5 9347
+E695B7 957E
+E695B8 9DC9
+E69682 9DCA
+E69683 9DCB
+E69687 95B6
+E69688 9B7C
+E69689 90C4
+E6968C 956B
+E6968E 8DD6
+E69690 94E3
+E69691 94C1
+E69697 936C
+E69699 97BF
+E6969B 9DCD
+E6969C 8ECE
+E6969F 9DCE
+E696A1 88B4
+E696A4 8BD2
+E696A5 90CB
+E696A7 9580
+E696AB 9DCF
+E696AC 8E61
+E696AD 9266
+E696AF 8E7A
+E696B0 9056
+E696B7 9DD0
+E696B9 95FB
+E696BC 8997
+E696BD 8E7B
+E69781 9DD3
+E69783 9DD1
+E69784 9DD4
+E69785 97B7
+E69786 9DD2
+E6978B 90F9
+E6978C 9DD5
+E6978F 91B0
+E69792 9DD6
+E69797 8AF8
+E69799 9DD8
+E6979B 9DD7
+E697A0 9DD9
+E697A1 9DDA
+E697A2 8AF9
+E697A5 93FA
+E697A6 9255
+E697A7 8B8C
+E697A8 8E7C
+E697A9 9181
+E697AC 8F7B
+E697AD 88AE
+E697B1 9DDB
+E697BA 89A0
+E697BB 9DDF
+E69882 8D56
+E69883 9DDE
+E69886 8DA9
+E69887 8FB8
+E6988A 9DDD
+E6988C 8FB9
+E6988E 96BE
+E6988F 8DA8
+E69893 88D5
+E69894 90CC
+E6989C 9DE4
+E6989F 90AF
+E698A0 8966
+E698A5 8F74
+E698A7 9686
+E698A8 8DF0
+E698AD 8FBA
+E698AF 90A5
+E698B4 9DE3
+E698B5 9DE1
+E698B6 9DE2
+E698BC 928B
+E698BF 9E45
+E69981 9DE8
+E69982 8E9E
+E69983 8D57
+E69984 9DE6
+E69989 9DE7
+E6998B 9057
+E6998F 9DE5
+E69992 8E4E
+E6999D 9DEA
+E6999E 9DE9
+E6999F 9DEE
+E699A2 9DEF
+E699A4 9DEB
+E699A6 8A41
+E699A7 9DEC
+E699A8 9DED
+E699A9 94D3
+E699AE 9581
+E699AF 8C69
+E699B0 9DF0
+E699B4 90B0
+E699B6 8FBB
+E699BA 9271
+E69A81 8BC5
+E69A83 9DF1
+E69A84 9DF5
+E69A87 89C9
+E69A88 9DF2
+E69A89 9DF4
+E69A8E 9DF3
+E69A91 8F8B
+E69A96 9267
+E69A97 88C3
+E69A98 9DF6
+E69A9D 9DF7
+E69AA2 92A8
+E69AA6 97EF
+E69AAB 8E62
+E69AAE 95E9
+E69AB4 965C
+E69AB8 9E41
+E69AB9 9DF9
+E69ABC 9DFC
+E69ABE 9DFB
+E69B81 9DF8
+E69B84 9E40
+E69B87 93DC
+E69B89 9DFA
+E69B96 9E42
+E69B99 8F8C
+E69B9A 9E43
+E69B9C 976A
+E69B9D 9498
+E69BA0 9E44
+E69BA6 9E46
+E69BA9 9E47
+E69BB0 9E48
+E69BB2 8BC8
+E69BB3 8967
+E69BB4 8D58
+E69BB5 9E49
+E69BB7 9E4A
+E69BB8 8F91
+E69BB9 9182
+E69BBC 99D6
+E69BBD 915D
+E69BBE 915C
+E69BBF 91D6
+E69C80 8DC5
+E69C83 98F0
+E69C88 8C8E
+E69C89 974C
+E69C8B 95FC
+E69C8D 959E
+E69C8F 9E4B
+E69C94 8DF1
+E69C95 92BD
+E69C96 9E4C
+E69C97 984E
+E69C9B 965D
+E69C9D 92A9
+E69C9E 9E4D
+E69C9F 8AFA
+E69CA6 9E4E
+E69CA7 9E4F
+E69CA8 96D8
+E69CAA 96A2
+E69CAB 9696
+E69CAC 967B
+E69CAD 8E44
+E69CAE 9E51
+E69CB1 8EE9
+E69CB4 9670
+E69CB6 9E53
+E69CB7 9E56
+E69CB8 9E55
+E69CBA 8AF7
+E69CBD 8B80
+E69CBF 9E52
+E69D81 9E54
+E69D86 9E57
+E69D89 9099
+E69D8E 979B
+E69D8F 88C7
+E69D90 8DDE
+E69D91 91BA
+E69D93 8EDB
+E69D96 8FF1
+E69D99 9E5A
+E69D9C 936D
+E69D9E 9E58
+E69D9F 91A9
+E69DA0 9E59
+E69DA1 8FF0
+E69DA2 96DB
+E69DA3 9E5B
+E69DA4 9E5C
+E69DA5 9788
+E69DAA 9E61
+E69DAD 8D59
+E69DAF 9474
+E69DB0 9E5E
+E69DB1 938C
+E69DB2 9DDC
+E69DB3 9DE0
+E69DB5 8B6E
+E69DB7 9466
+E69DBC 9E60
+E69DBE 8FBC
+E69DBF 94C2
+E69E85 9E66
+E69E87 94F8
+E69E89 9E5D
+E69E8B 9E63
+E69E8C 9E62
+E69E90 90CD
+E69E95 968D
+E69E97 97D1
+E69E9A 9687
+E69E9C 89CA
+E69E9D 8E7D
+E69EA0 9867
+E69EA1 9E65
+E69EA2 9095
+E69EA6 9E64
+E69EA9 9E5F
+E69EAF 8CCD
+E69EB3 9E6B
+E69EB4 9E69
+E69EB6 89CB
+E69EB7 9E67
+E69EB8 9E6D
+E69EB9 9E73
+E69F81 91C6
+E69F84 95BF
+E69F86 9E75
+E69F8A 9541
+E69F8E 9E74
+E69F8F 9490
+E69F90 965E
+E69F91 8AB9
+E69F93 90F5
+E69F94 8F5F
+E69F98 92D1
+E69F9A 974D
+E69F9D 9E70
+E69F9E 9E6F
+E69FA2 9E71
+E69FA4 9E6E
+E69FA7 9E76
+E69FA9 9E6C
+E69FAC 9E6A
+E69FAE 9E72
+E69FAF 9E68
+E69FB1 928C
+E69FB3 96F6
+E69FB4 8EC4
+E69FB5 8DF2
+E69FBB 8DB8
+E69FBE 968F
+E69FBF 8A60
+E6A082 92CC
+E6A083 93C8
+E6A084 8968
+E6A093 90F0
+E6A096 90B2
+E6A097 8C49
+E6A09E 9E78
+E6A0A1 8D5A
+E6A0A2 8A9C
+E6A0A9 9E7A
+E6A0AA 8A94
+E6A0AB 9E81
+E6A0B2 9E7D
+E6A0B4 90F1
+E6A0B8 8A6A
+E6A0B9 8DAA
+E6A0BC 8A69
+E6A0BD 8DCD
+E6A180 9E7B
+E6A181 8C85
+E6A182 8C6A
+E6A183 938D
+E6A186 9E79
+E6A188 88C4
+E6A18D 9E7C
+E6A18E 9E7E
+E6A190 8BCB
+E6A191 8C4B
+E6A193 8ABA
+E6A194 8B6A
+E6A199 9E82
+E6A19C 8DF7
+E6A19D 9691
+E6A19F 8E56
+E6A1A3 9E83
+E6A1A7 954F
+E6A1B4 9E8F
+E6A1B6 89B1
+E6A1B7 9E84
+E6A1BE 9E95
+E6A1BF 9E85
+E6A281 97C0
+E6A283 9E8C
+E6A285 947E
+E6A28D 9E94
+E6A28F 9E87
+E6A293 88B2
+E6A294 9E89
+E6A297 8D5B
+E6A29B 9E8B
+E6A29D 9E8A
+E6A29F 9E86
+E6A2A0 9E91
+E6A2A2 8FBD
+E6A2A6 9AEB
+E6A2A7 8CE6
+E6A2A8 979C
+E6A2AD 9E88
+E6A2AF 92F2
+E6A2B0 8A42
+E6A2B1 8DAB
+E6A2B3 9E80
+E6A2B5 9E90
+E6A2B6 8A81
+E6A2B9 9E8E
+E6A2BA 9E92
+E6A2BC 938E
+E6A384 8AFC
+E6A386 9EB0
+E6A389 96C7
+E6A38A 9E97
+E6A38B 8AFB
+E6A38D 9E9E
+E6A392 965F
+E6A394 9E9F
+E6A395 9EA1
+E6A397 9EA5
+E6A398 9E99
+E6A39A 9249
+E6A39F 938F
+E6A3A0 9EA9
+E6A3A1 9E9C
+E6A3A3 9EA6
+E6A3A7 9EA0
+E6A3AE 9058
+E6A3AF 9EAA
+E6A3B2 90B1
+E6A3B9 9EA8
+E6A3BA 8ABB
+E6A480 986F
+E6A481 9E96
+E6A484 9EA4
+E6A485 88D6
+E6A488 9E98
+E6A48B 96B8
+E6A48C 9E9D
+E6A48D 9041
+E6A48E 92C5
+E6A48F 9E93
+E6A492 9EA3
+E6A499 909A
+E6A49A 9EAD
+E6A49B 8A91
+E6A49C 8C9F
+E6A4A1 9EAF
+E6A4A2 9E9A
+E6A4A3 9EAE
+E6A4A5 9EA7
+E6A4A6 9E9B
+E6A4A8 9EAB
+E6A4AA 9EAC
+E6A4B0 9EBD
+E6A4B4 93CC
+E6A4B6 9EA2
+E6A4B9 9EB9
+E6A4BD 9EBB
+E6A4BF 92D6
+E6A58A 976B
+E6A593 9596
+E6A594 9EB6
+E6A595 91C8
+E6A599 9EBC
+E6A59A 915E
+E6A59C 9EB3
+E6A59D 9EC0
+E6A59E 9EBF
+E6A5A0 93ED
+E6A5A1 9EBE
+E6A5A2 93E8
+E6A5AA 9EC2
+E6A5AB 9EB5
+E6A5AD 8BC6
+E6A5AE 9EB8
+E6A5AF 8F7C
+E6A5B3 9480
+E6A5B4 9EBA
+E6A5B5 8BC9
+E6A5B7 9EB2
+E6A5B8 9EB4
+E6A5B9 9EB1
+E6A5BC 984F
+E6A5BD 8A79
+E6A5BE 9EB7
+E6A681 9EC1
+E6A682 8A54
+E6A68A 8DE5
+E6A68E 897C
+E6A691 9ED2
+E6A694 9850
+E6A695 9ED5
+E6A69B 9059
+E6A69C 9ED4
+E6A6A0 9ED3
+E6A6A7 9ED0
+E6A6AE 9EC4
+E6A6B1 9EE1
+E6A6B2 9EC3
+E6A6B4 9ED6
+E6A6BB 9ECE
+E6A6BE 9EC9
+E6A6BF 9EC6
+E6A781 9EC7
+E6A783 9ECF
+E6A787 EAA0
+E6A78A 9ECC
+E6A78B 8D5C
+E6A78C 92C6
+E6A78D 9184
+E6A78E 9ECA
+E6A790 9EC5
+E6A793 9EC8
+E6A798 976C
+E6A799 968A
+E6A79D 9ECD
+E6A79E 9ED7
+E6A7A7 9EDF
+E6A7A8 9ED8
+E6A7AB 9EE5
+E6A7AD 9EE3
+E6A7B2 9EDE
+E6A7B9 9EDD
+E6A7BB 92CE
+E6A7BD 9185
+E6A7BF 9EDB
+E6A882 9ED9
+E6A885 9EE0
+E6A88A 9EE6
+E6A88B 94F3
+E6A88C 9EEC
+E6A892 9EE7
+E6A893 9EEA
+E6A894 9EE4
+E6A897 9294
+E6A899 9557
+E6A89B 9EDA
+E6A89E 9EE2
+E6A89F 8FBE
+E6A8A1 96CD
+E6A8A2 9EF6
+E6A8A3 9EE9
+E6A8A9 8CA0
+E6A8AA 89A1
+E6A8AB 8A7E
+E6A8AE 9ED1
+E6A8B5 8FBF
+E6A8B6 9EEE
+E6A8B8 9EF5
+E6A8B9 8EF7
+E6A8BA 8A92
+E6A8BD 924D
+E6A984 9EEB
+E6A987 9EF0
+E6A988 9EF4
+E6A98B 8BB4
+E6A998 8B6B
+E6A999 9EF2
+E6A99F 8B40
+E6A9A1 93C9
+E6A9A2 9EF1
+E6A9A6 9EF3
+E6A9B2 9EED
+E6A9B8 9EEF
+E6A9BF 8A80
+E6AA80 9268
+E6AA84 9EFA
+E6AA8D 9EF8
+E6AA8E 8CE7
+E6AA90 9EF7
+E6AA97 9F40
+E6AA9C 9E77
+E6AAA0 9EF9
+E6AAA2 9EFB
+E6AAA3 9EFC
+E6AAAA 9F4B
+E6AAAC 9F47
+E6AAAE 9E8D
+E6AAB3 9F46
+E6AAB8 9F45
+E6AABB 9F42
+E6AB81 9EE8
+E6AB82 9F44
+E6AB83 9F43
+E6AB91 9F49
+E6AB93 9845
+E6AB9A 9F4C
+E6AB9B 8BF9
+E6AB9E 9F48
+E6AB9F 9F4A
+E6ABA8 94A5
+E6ABAA 9F4D
+E6ABBA 9F51
+E6ABBB 9F4E
+E6AC84 9793
+E6AC85 9F4F
+E6AC8A 9EDC
+E6AC92 9F52
+E6AC96 9F53
+E6AC9D 8954
+E6AC9F 9F55
+E6ACA0 8C87
+E6ACA1 8E9F
+E6ACA3 8BD3
+E6ACA7 89A2
+E6ACB2 977E
+E6ACB7 9F57
+E6ACB8 9F56
+E6ACB9 9F59
+E6ACBA 8B5C
+E6ACBD 8BD4
+E6ACBE 8ABC
+E6AD83 9F5C
+E6AD87 9F5B
+E6AD89 9F5D
+E6AD8C 89CC
+E6AD8E 9256
+E6AD90 9F5E
+E6AD93 8ABD
+E6AD94 9F60
+E6AD99 9F5F
+E6AD9B 9F61
+E6AD9F 9F62
+E6ADA1 9F63
+E6ADA2 8E7E
+E6ADA3 90B3
+E6ADA4 8D9F
+E6ADA6 9590
+E6ADA9 95E0
+E6ADAA 9863
+E6ADAF 8E95
+E6ADB3 8DCE
+E6ADB4 97F0
+E6ADB8 9F64
+E6ADB9 9F65
+E6ADBB 8E80
+E6ADBF 9F66
+E6AE80 9F67
+E6AE83 9F69
+E6AE84 9F68
+E6AE86 9677
+E6AE89 8F7D
+E6AE8A 8EEA
+E6AE8B 8E63
+E6AE8D 9F6A
+E6AE95 9F6C
+E6AE96 9042
+E6AE98 9F6B
+E6AE9E 9F6D
+E6AEA4 9F6E
+E6AEAA 9F6F
+E6AEAB 9F70
+E6AEAF 9F71
+E6AEB1 9F73
+E6AEB2 9F72
+E6AEB3 9F74
+E6AEB4 89A3
+E6AEB5 9269
+E6AEB7 9F75
+E6AEBA 8E45
+E6AEBB 8A6B
+E6AEBC 9F76
+E6AEBF 9361
+E6AF80 9ACA
+E6AF85 8B42
+E6AF86 9F77
+E6AF8B 9F78
+E6AF8D 95EA
+E6AF8E 9688
+E6AF92 93C5
+E6AF93 9F79
+E6AF94 94E4
+E6AF98 94F9
+E6AF9B 96D1
+E6AF9F 9F7A
+E6AFAB 9F7C
+E6AFAC 9F7B
+E6AFAF 9F7E
+E6AFB3 9F7D
+E6B088 9F81
+E6B08F 8E81
+E6B091 96AF
+E6B093 9F82
+E6B094 9F83
+E6B097 8B43
+E6B09B 9F84
+E6B0A3 9F86
+E6B0A4 9F85
+E6B0B4 9085
+E6B0B7 9558
+E6B0B8 8969
+E6B0BE 94C3
+E6B180 92F3
+E6B181 8F60
+E6B182 8B81
+E6B18E 94C4
+E6B190 8EAC
+E6B195 9F88
+E6B197 8ABE
+E6B19A 8998
+E6B19D 93F0
+E6B19E 9F87
+E6B19F 8D5D
+E6B1A0 9272
+E6B1A2 9F89
+E6B1A8 9F91
+E6B1AA 9F8A
+E6B1B0 91BF
+E6B1B2 8B82
+E6B1B3 9F92
+E6B1BA 8C88
+E6B1BD 8B44
+E6B1BE 9F90
+E6B281 9F8E
+E6B282 9F8B
+E6B283 9780
+E6B288 92BE
+E6B28C 93D7
+E6B28D 9F8C
+E6B290 9F94
+E6B292 9F93
+E6B293 8C42
+E6B296 89AB
+E6B299 8DB9
+E6B29A 9F8D
+E6B29B 9F8F
+E6B2A1 9676
+E6B2A2 91F2
+E6B2AB 9697
+E6B2AE 9F9C
+E6B2B1 9F9D
+E6B2B3 89CD
+E6B2B8 95A6
+E6B2B9 96FB
+E6B2BA 9F9F
+E6B2BB 8EA1
+E6B2BC 8FC0
+E6B2BD 9F98
+E6B2BE 9F9E
+E6B2BF 8988
+E6B381 8BB5
+E6B384 9F95
+E6B385 9F9A
+E6B389 90F2
+E6B38A 9491
+E6B38C 94E5
+E6B393 9F97
+E6B395 9640
+E6B397 9F99
+E6B399 9FA2
+E6B39B 9FA0
+E6B39D 9F9B
+E6B3A1 9641
+E6B3A2 9467
+E6B3A3 8B83
+E6B3A5 9344
+E6B3A8 928D
+E6B3AA 9FA3
+E6B3AF 9FA1
+E6B3B0 91D7
+E6B3B1 9F96
+E6B3B3 896A
+E6B48B 976D
+E6B48C 9FAE
+E6B492 9FAD
+E6B497 90F4
+E6B499 9FAA
+E6B49B 978C
+E6B49E 93B4
+E6B49F 9FA4
+E6B4A5 92C3
+E6B4A9 896B
+E6B4AA 8D5E
+E6B4AB 9FA7
+E6B4B2 8F46
+E6B4B3 9FAC
+E6B4B5 9FAB
+E6B4B6 9FA6
+E6B4B8 9FA9
+E6B4BB 8A88
+E6B4BD 9FA8
+E6B4BE 9468
+E6B581 97AC
+E6B584 8FF2
+E6B585 90F3
+E6B599 9FB4
+E6B59A 9FB2
+E6B59C 956C
+E6B5A3 9FAF
+E6B5A4 9FB1
+E6B5A6 8959
+E6B5A9 8D5F
+E6B5AA 9851
+E6B5AC 8A5C
+E6B5AE 9582
+E6B5B4 9781
+E6B5B7 8A43
+E6B5B8 905A
+E6B5B9 9FB3
+E6B685 9FB8
+E6B688 8FC1
+E6B68C 974F
+E6B68E 9FB5
+E6B693 9FB0
+E6B695 9FB6
+E6B699 97DC
+E6B69B 9393
+E6B69C 93C0
+E6B6AF 8A55
+E6B6B2 8974
+E6B6B5 9FBC
+E6B6B8 9FBF
+E6B6BC 97C1
+E6B780 9784
+E6B785 9FC6
+E6B786 9FC0
+E6B787 9FBD
+E6B78B 97D2
+E6B78C 9FC3
+E6B791 8F69
+E6B792 9FC5
+E6B795 9FCA
+E6B798 9391
+E6B799 9FC8
+E6B79E 9FC2
+E6B7A1 9257
+E6B7A4 9FC9
+E6B7A6 9FBE
+E6B7A8 9FC4
+E6B7AA 9FCB
+E6B7AB 88FA
+E6B7AC 9FC1
+E6B7AE 9FCC
+E6B7B1 905B
+E6B7B3 8F7E
+E6B7B5 95A3
+E6B7B7 8DAC
+E6B7B9 9FB9
+E6B7BA 9FC7
+E6B7BB 9359
+E6B885 90B4
+E6B887 8A89
+E6B888 8DCF
+E6B889 8FC2
+E6B88A 9FBB
+E6B88B 8F61
+E6B893 8C6B
+E6B895 9FBA
+E6B899 9FD0
+E6B89A 8F8D
+E6B89B 8CB8
+E6B89D 9FDF
+E6B89F 9FD9
+E6B8A0 8B94
+E6B8A1 936E
+E6B8A3 9FD4
+E6B8A4 9FDD
+E6B8A5 88AD
+E6B8A6 8951
+E6B8A9 89B7
+E6B8AB 9FD6
+E6B8AC 91AA
+E6B8AD 9FCD
+E6B8AE 9FCF
+E6B8AF 8D60
+E6B8B8 9FE0
+E6B8BA 9FDB
+E6B8BE 9FD3
+E6B983 9FDA
+E6B98A 96A9
+E6B98D 9FD8
+E6B98E 9FDC
+E6B996 8CCE
+E6B998 8FC3
+E6B99B 9258
+E6B99F 9FD2
+E6B9A7 974E
+E6B9AB 9FD5
+E6B9AE 9FCE
+E6B9AF 9392
+E6B9B2 9FD1
+E6B9B6 9FD7
+E6B9BE 9870
+E6B9BF 8EBC
+E6BA80 969E
+E6BA82 9FE1
+E6BA8C 94AC
+E6BA8F 9FED
+E6BA90 8CB9
+E6BA96 8F80
+E6BA98 9FE3
+E6BA9C 97AD
+E6BA9D 8D61
+E6BA9F 9FF0
+E6BAA2 88EC
+E6BAA5 9FEE
+E6BAAA 9FE2
+E6BAAF 9FE8
+E6BAB2 9FEA
+E6BAB6 976E
+E6BAB7 9FE5
+E6BABA 934D
+E6BABD 9FE7
+E6BB82 9FEF
+E6BB84 9FE9
+E6BB85 96C5
+E6BB89 9FE4
+E6BB8B 8EA0
+E6BB8C 9FFC
+E6BB91 8A8A
+E6BB93 9FE6
+E6BB94 9FEB
+E6BB95 9FEC
+E6BB9D 91EA
+E6BB9E 91D8
+E6BBAC 9FF4
+E6BBAF 9FFA
+E6BBB2 9FF8
+E6BBB4 9348
+E6BBB7 E042
+E6BBB8 9FF5
+E6BBBE 9FF6
+E6BBBF 9FDE
+E6BC81 8B99
+E6BC82 9559
+E6BC86 8EBD
+E6BC89 8D97
+E6BC8F 9852
+E6BC91 9FF2
+E6BC93 E041
+E6BC94 8989
+E6BC95 9186
+E6BCA0 9499
+E6BCA2 8ABF
+E6BCA3 97F8
+E6BCAB 969F
+E6BCAC 92D0
+E6BCB1 9FF9
+E6BCB2 9FFB
+E6BCB8 9151
+E6BCBE E040
+E6BCBF 9FF7
+E6BD81 9FF1
+E6BD85 8AC1
+E6BD94 8C89
+E6BD98 E04E
+E6BD9B E049
+E6BD9C 90F6
+E6BD9F 8A83
+E6BDA4 8F81
+E6BDA6 E052
+E6BDAD E04B
+E6BDAE 92AA
+E6BDAF E048
+E6BDB0 92D7
+E6BDB4 E06B
+E6BDB8 E045
+E6BDBA E044
+E6BDBC E04D
+E6BE80 E047
+E6BE81 E046
+E6BE82 E04C
+E6BE84 909F
+E6BE86 E043
+E6BE8E E04F
+E6BE91 E050
+E6BE97 8AC0
+E6BEA1 E055
+E6BEA3 E054
+E6BEA4 E056
+E6BEAA E059
+E6BEB1 9362
+E6BEB3 E053
+E6BEB9 E057
+E6BF80 8C83
+E6BF81 91F7
+E6BF82 E051
+E6BF83 945A
+E6BF86 E058
+E6BF94 E05D
+E6BF95 E05B
+E6BF98 E05E
+E6BF9B E061
+E6BF9F E05A
+E6BFA0 8D8A
+E6BFA1 9447
+E6BFA4 9FB7
+E6BFAB 9794
+E6BFAC E05C
+E6BFAE E060
+E6BFAF 91F3
+E6BFB1 E05F
+E6BFB3 E04A
+E6BFB6 E889
+E6BFBA E064
+E6BFBE E068
+E78081 E066
+E78089 E062
+E7808B E063
+E7808F E067
+E78091 E065
+E78095 956D
+E78098 E06D
+E7809A E06A
+E7809B E069
+E7809D E06C
+E7809E 93D2
+E7809F E06E
+E780A6 9295
+E780A7 91EB
+E780AC 90A3
+E780B0 E06F
+E780B2 E071
+E780BE E070
+E7818C 9FF3
+E78191 E072
+E78198 93E5
+E781A3 E073
+E781AB 89CE
+E781AF 9394
+E781B0 8A44
+E781B8 8B84
+E781BC 8EDC
+E781BD 8DD0
+E78289 9846
+E7828A 9086
+E7828E 898A
+E78292 E075
+E78299 E074
+E782AC E078
+E782AD 9259
+E782AE E07B
+E782AF E076
+E782B3 E07A
+E782B8 E079
+E782B9 935F
+E782BA 88D7
+E78388 97F3
+E7838B E07D
+E7838F 8947
+E78399 E080
+E7839D E07E
+E7839F E07C
+E783B1 E077
+E783B9 9642
+E783BD E082
+E78489 E081
+E78494 898B
+E78499 E084
+E7849A 95B0
+E7849C E083
+E784A1 96B3
+E784A6 8FC5
+E784B6 9152
+E784BC 8FC4
+E78589 97F9
+E7858C E08A
+E7858E 90F7
+E78595 E086
+E78596 E08B
+E78599 898C
+E785A2 E089
+E785A4 9481
+E785A5 E085
+E785A6 E088
+E785A7 8FC6
+E785A9 94CF
+E785AC E08C
+E785AE 8ECF
+E785BD 90F8
+E78684 E08F
+E78688 E087
+E7868A 8C46
+E7868F E08D
+E78694 976F
+E78695 E090
+E78699 EAA4
+E7869F 8F6E
+E786A8 E091
+E786AC E092
+E786B1 944D
+E786B9 E094
+E786BE E095
+E78783 9452
+E78788 9395
+E78789 E097
+E7878E E099
+E78790 97D3
+E78792 E096
+E78794 E098
+E78795 898D
+E78797 E093
+E7879F 9A7A
+E787A0 E09A
+E787A5 9187
+E787A6 8E57
+E787A7 E09C
+E787AC E09B
+E787AD 9043
+E787AE 99D7
+E787B5 E09D
+E787B9 E09F
+E787BB E08E
+E787BC E09E
+E787BF E0A0
+E78886 949A
+E7888D E0A1
+E78890 E0A2
+E7889B E0A3
+E788A8 E0A4
+E788AA 92DC
+E788AC E0A6
+E788AD E0A5
+E788B0 E0A7
+E788B2 E0A8
+E788B5 8EDD
+E788B6 9583
+E788BA 96EA
+E788BB E0A9
+E788BC E0AA
+E788BD 9175
+E788BE 8EA2
+E788BF E0AB
+E78980 E0AC
+E78986 E0AD
+E78987 95D0
+E78988 94C5
+E7898B E0AE
+E7898C 9476
+E78992 92AB
+E78998 E0AF
+E78999 89E5
+E7899B 8B8D
+E7899D 96C4
+E7899F 96B4
+E789A1 89B2
+E789A2 9853
+E789A7 9671
+E789A9 95A8
+E789B2 90B5
+E789B4 E0B0
+E789B9 93C1
+E789BD 8CA1
+E789BE E0B1
+E78A80 8DD2
+E78A81 E0B3
+E78A82 E0B2
+E78A87 E0B4
+E78A92 E0B5
+E78A96 E0B6
+E78AA0 8B5D
+E78AA2 E0B7
+E78AA7 E0B8
+E78AAC 8CA2
+E78AAF 94C6
+E78AB2 E0BA
+E78AB6 8FF3
+E78AB9 E0B9
+E78B82 8BB6
+E78B83 E0BB
+E78B84 E0BD
+E78B86 E0BC
+E78B8E E0BE
+E78B90 8CCF
+E78B92 E0BF
+E78B97 8BE7
+E78B99 915F
+E78B9B 8D9D
+E78BA0 E0C1
+E78BA1 E0C2
+E78BA2 E0C0
+E78BA9 8EEB
+E78BAC 93C6
+E78BAD 8BB7
+E78BB7 E0C4
+E78BB8 924B
+E78BB9 E0C3
+E78BBC 9854
+E78BBD 9482
+E78C8A E0C7
+E78C96 E0C9
+E78C97 E0C6
+E78C9B 96D2
+E78C9C E0C8
+E78C9D E0CA
+E78C9F 97C2
+E78CA5 E0CE
+E78CA9 E0CD
+E78CAA 9296
+E78CAB 944C
+E78CAE 8CA3
+E78CAF E0CC
+E78CB4 E0CB
+E78CB6 9750
+E78CB7 9751
+E78CBE E0CF
+E78CBF 898E
+E78D84 8D96
+E78D85 8E82
+E78D8E E0D0
+E78D8F E0D1
+E78D97 E0D3
+E78DA3 8F62
+E78DA8 E0D5
+E78DAA E0D4
+E78DB0 E0D6
+E78DB2 8A6C
+E78DB5 E0D8
+E78DB8 E0D7
+E78DBA E0DA
+E78DBB E0D9
+E78E84 8CBA
+E78E87 97A6
+E78E89 8BCA
+E78E8B 89A4
+E78E96 8BE8
+E78EA9 8ADF
+E78EB2 97E6
+E78EB3 E0DC
+E78EBB E0DE
+E78F80 E0DF
+E78F82 89CF
+E78F88 E0DB
+E78F8A 8E58
+E78F8D 92BF
+E78F8E E0DD
+E78F9E E0E2
+E78FA0 8EEC
+E78FA5 E0E0
+E78FAA 8C5D
+E78FAD 94C7
+E78FAE E0E1
+E78FB1 E0FC
+E78FB8 E0E7
+E78FBE 8CBB
+E79083 8B85
+E79085 E0E4
+E79086 979D
+E79089 97AE
+E790A2 91F4
+E790A5 E0E6
+E790B2 E0E8
+E790B3 97D4
+E790B4 8BD5
+E790B5 94FA
+E790B6 9469
+E790BA E0E9
+E790BF E0EB
+E79181 E0EE
+E79195 E0EA
+E79199 E0ED
+E7919A 8CE8
+E7919B 896C
+E7919C E0EF
+E7919E 9090
+E7919F E0EC
+E791A0 97DA
+E791A3 E0F2
+E791A4 EAA2
+E791A9 E0F0
+E791AA E0F3
+E791AF E0E5
+E791B0 E0F1
+E791B3 8DBA
+E791B6 E0F4
+E791BE E0F5
+E79283 979E
+E7928B E0F6
+E7929E E0F7
+E792A2 E0E3
+E792A7 E0F8
+E792B0 8AC2
+E792BD 8EA3
+E7938A E0F9
+E7938F E0FA
+E79394 E0FB
+E7939C 895A
+E793A0 E140
+E793A2 955A
+E793A3 E141
+E793A6 8AA2
+E793A7 E142
+E793A9 E143
+E793AE E144
+E793B0 E146
+E793B1 E147
+E793B2 E145
+E793B6 9572
+E793B7 E149
+E793B8 E148
+E79483 E14B
+E79484 E14A
+E79485 E14C
+E7948C E14D
+E7948D E14F
+E7948E E14E
+E79491 8D99
+E79493 E151
+E79495 E150
+E79498 8AC3
+E7949A 9072
+E7949C 935B
+E7949E E152
+E7949F 90B6
+E794A3 8E59
+E794A5 8999
+E794A6 E153
+E794A8 9770
+E794AB 95E1
+E794AC E154
+E794B0 9363
+E794B1 9752
+E794B2 8D62
+E794B3 905C
+E794B7 926A
+E794B8 99B2
+E794BA 92AC
+E794BB 89E6
+E794BC E155
+E79584 E156
+E79586 E15B
+E79589 E159
+E7958A E158
+E7958B 9DC0
+E7958C 8A45
+E7958D E157
+E7958F 88D8
+E79591 94A8
+E79594 94C8
+E79599 97AF
+E7959A E15C
+E7959B E15A
+E7959C 927B
+E7959D 90A4
+E795A0 94A9
+E795A2 954C
+E795A4 E15E
+E795A5 97AA
+E795A6 8C6C
+E795A7 E15F
+E795A9 E15D
+E795AA 94D4
+E795AB E160
+E795AD E161
+E795B0 88D9
+E795B3 8FF4
+E795B4 E166
+E795B6 E163
+E795B7 93EB
+E795B8 E162
+E795BF 8B45
+E79682 E169
+E79686 E164
+E79687 E165
+E79689 E168
+E7968A E167
+E7968B 9544
+E7968E 9161
+E7968F 9160
+E79691 8B5E
+E79694 E16A
+E7969A E16B
+E7969D E16C
+E796A3 E16E
+E796A5 E16D
+E796AB 8975
+E796B1 E176
+E796B2 94E6
+E796B3 E170
+E796B5 E172
+E796B8 E174
+E796B9 905D
+E796BC E175
+E796BD E173
+E796BE 8EBE
+E79782 E16F
+E79783 E171
+E79785 9561
+E79787 8FC7
+E7978A E178
+E7978D E177
+E79792 E179
+E79794 8EA4
+E79795 8DAD
+E79798 9397
+E79799 E17A
+E7979B 92C9
+E7979E E17C
+E797A2 979F
+E797A3 E17B
+E797A9 9189
+E797B0 E182
+E797B2 E184
+E797B3 E185
+E797B4 9273
+E797BA E183
+E797BC E180
+E797BE E17D
+E797BF E17E
+E79881 E181
+E79889 E188
+E7988B E186
+E7988D E187
+E7989F E189
+E798A0 E18B
+E798A1 E18C
+E798A2 E18D
+E798A4 E18E
+E798A7 E18A
+E798B0 E190
+E798B4 E18F
+E798BB E191
+E79982 97C3
+E79986 E194
+E79987 E192
+E79988 E193
+E7998C 8AE0
+E79992 96FC
+E79996 95C8
+E79998 E196
+E7999C E195
+E799A1 E197
+E799A2 E198
+E799A7 E19C
+E799A8 E199
+E799A9 E19A
+E799AA E19B
+E799AC E19D
+E799B0 E19E
+E799B2 E19F
+E799B6 E1A0
+E799B8 E1A1
+E799BA 94AD
+E799BB 936F
+E799BC E1A2
+E799BD 9492
+E799BE 9553
+E79A80 E1A3
+E79A83 E1A4
+E79A84 9349
+E79A86 8A46
+E79A87 8D63
+E79A88 E1A5
+E79A8B E1A6
+E79A8E E1A7
+E79A90 8E48
+E79A93 E1A9
+E79A96 E1A8
+E79A99 E1AA
+E79A9A E1AB
+E79AAE 94E7
+E79AB0 E1AC
+E79AB4 E1AD
+E79AB7 EA89
+E79AB8 E1AE
+E79AB9 E1AF
+E79ABA E1B0
+E79ABF 8E4D
+E79B82 E1B1
+E79B83 9475
+E79B86 967E
+E79B88 896D
+E79B8A 8976
+E79B8D E1B2
+E79B92 E1B4
+E79B96 E1B3
+E79B97 9390
+E79B9B 90B7
+E79B9C 9F58
+E79B9E E1B5
+E79B9F 96BF
+E79BA1 E1B6
+E79BA3 8AC4
+E79BA4 94D5
+E79BA5 E1B7
+E79BA7 E1B8
+E79BAA E1B9
+E79BAE 96DA
+E79BB2 96D3
+E79BB4 92BC
+E79BB8 918A
+E79BBB E1BB
+E79BBE 8F82
+E79C81 8FC8
+E79C84 E1BE
+E79C87 E1BD
+E79C88 E1BC
+E79C89 94FB
+E79C8B 8AC5
+E79C8C 8CA7
+E79C9B E1C4
+E79C9E E1C1
+E79C9F 905E
+E79CA0 96B0
+E79CA4 E1C0
+E79CA5 E1C2
+E79CA6 E1C3
+E79CA9 E1BF
+E79CB7 E1C5
+E79CB8 E1C6
+E79CBA 92AD
+E79CBC 8AE1
+E79D80 9285
+E79D87 E1C7
+E79D9A E1C8
+E79D9B E1CB
+E79DA1 9087
+E79DA3 93C2
+E79DA5 E1CC
+E79DA6 9672
+E79DA8 E1C9
+E79DAB E1CA
+E79DB9 E1CF
+E79DBE E1CE
+E79DBF E1CD
+E79E8B E1D1
+E79E8E E1D0
+E79E91 E1D2
+E79E9E E1D4
+E79EA0 E1D3
+E79EA5 95CB
+E79EAC 8F75
+E79EAD 97C4
+E79EB0 E1D5
+E79EB3 93B5
+E79EB6 E1D6
+E79EB9 E1D7
+E79EBB E1DB
+E79EBC E1D9
+E79EBD E1DA
+E79EBF E1D8
+E79F87 E1DC
+E79F8D E1DD
+E79F97 E1DE
+E79F9A E1DF
+E79F9B 96B5
+E79F9C E1E0
+E79FA2 96EE
+E79FA3 E1E1
+E79FA5 926D
+E79FA7 948A
+E79FA9 8BE9
+E79FAD 925A
+E79FAE E1E2
+E79FAF 8BB8
+E79FB3 90CE
+E79FBC E1E3
+E7A082 8DBB
+E7A08C E1E4
+E7A092 E1E5
+E7A094 8CA4
+E7A095 8DD3
+E7A0A0 E1E7
+E7A0A5 9375
+E7A0A6 8DD4
+E7A0A7 8B6D
+E7A0B2 9643
+E7A0B4 946A
+E7A0BA 9376
+E7A0BF 8D7B
+E7A185 E1E9
+E7A19D 8FC9
+E7A1AB 97B0
+E7A1AC 8D64
+E7A1AF 8CA5
+E7A1B2 94A1
+E7A1B4 E1EB
+E7A1BC E1ED
+E7A281 8CE9
+E7A286 E1EC
+E7A287 92F4
+E7A28C E1EF
+E7A28D 8A56
+E7A28E E1EA
+E7A291 94E8
+E7A293 894F
+E7A295 8DEA
+E7A297 9871
+E7A29A E1EE
+E7A2A3 E1F0
+E7A2A7 95C9
+E7A2A9 90D7
+E7A2AA E1F2
+E7A2AF E1F3
+E7A2B5 E1F1
+E7A2BA 8A6D
+E7A2BC E1F9
+E7A2BE E1F8
+E7A381 8EA5
+E7A385 E1FA
+E7A386 E1F5
+E7A38A E1FB
+E7A38B E1F6
+E7A390 94D6
+E7A391 E1F4
+E7A394 E1F7
+E7A39A E241
+E7A3A7 E240
+E7A3A8 9681
+E7A3AC E1FC
+E7A3AF 88E9
+E7A3B4 E243
+E7A3BD E242
+E7A481 8FCA
+E7A487 E244
+E7A48E 9162
+E7A491 E246
+E7A492 E245
+E7A499 E247
+E7A4A6 E1E6
+E7A4AA E1E8
+E7A4AB E249
+E7A4AC E248
+E7A4BA 8EA6
+E7A4BC 97E7
+E7A4BE 8ED0
+E7A580 E24A
+E7A581 8C56
+E7A587 8B5F
+E7A588 8B46
+E7A589 8E83
+E7A590 9753
+E7A593 E250
+E7A595 E24F
+E7A596 9163
+E7A597 E24C
+E7A59A E24E
+E7A59D 8F6A
+E7A59E 905F
+E7A59F E24D
+E7A5A0 E24B
+E7A5A2 9449
+E7A5A5 8FCB
+E7A5A8 955B
+E7A5AD 8DD5
+E7A5B7 9398
+E7A5BA E251
+E7A5BF E252
+E7A680 E268
+E7A681 8BD6
+E7A684 985C
+E7A685 9154
+E7A68A E253
+E7A68D 89D0
+E7A68E 92F5
+E7A68F 959F
+E7A69D E254
+E7A6A6 8B9A
+E7A6A7 E255
+E7A6AA E257
+E7A6AE E258
+E7A6B0 9448
+E7A6B3 E259
+E7A6B9 E25A
+E7A6BA E25B
+E7A6BD 8BD7
+E7A6BE 89D1
+E7A6BF 93C3
+E7A780 8F47
+E7A781 8E84
+E7A789 E25C
+E7A78B 8F48
+E7A791 89C8
+E7A792 9562
+E7A795 E25D
+E7A798 94E9
+E7A79F 9164
+E7A7A1 E260
+E7A7A3 E261
+E7A7A4 9489
+E7A7A6 9060
+E7A7A7 E25E
+E7A7A9 9281
+E7A7AC E25F
+E7A7B0 8FCC
+E7A7BB 88DA
+E7A880 8B48
+E7A888 E262
+E7A88B 92F6
+E7A88D E263
+E7A88E 90C5
+E7A894 96AB
+E7A897 9542
+E7A898 E264
+E7A899 E265
+E7A89A 9274
+E7A89C 97C5
+E7A89F E267
+E7A8A0 E266
+E7A8AE 8EED
+E7A8B1 E269
+E7A8B2 88EE
+E7A8B7 E26C
+E7A8BB E26A
+E7A8BC 89D2
+E7A8BD 8C6D
+E7A8BE E26B
+E7A8BF 8D65
+E7A980 8D92
+E7A982 95E4
+E7A983 E26D
+E7A986 9673
+E7A989 E26F
+E7A98D 90CF
+E7A98E 896E
+E7A98F 89B8
+E7A990 88AA
+E7A997 E26E
+E7A9A1 E270
+E7A9A2 E271
+E7A9A3 8FF5
+E7A9A9 E272
+E7A9AB 8A6E
+E7A9B0 E274
+E7A9B4 8C8A
+E7A9B6 8B86
+E7A9B9 E275
+E7A9BA 8BF3
+E7A9BD E276
+E7A9BF 90FA
+E7AA81 93CB
+E7AA83 90DE
+E7AA84 8DF3
+E7AA88 E277
+E7AA92 9282
+E7AA93 918B
+E7AA95 E279
+E7AA96 E27B
+E7AA97 E278
+E7AA98 E27A
+E7AA9F 8C41
+E7AAA9 E27C
+E7AAAA 8C45
+E7AAAE 8B87
+E7AAAF 9771
+E7AAB0 E27E
+E7AAB6 E280
+E7AABA 894D
+E7AABF E283
+E7AB83 8A96
+E7AB84 E282
+E7AB85 E281
+E7AB87 E285
+E7AB88 E27D
+E7AB8A E286
+E7AB8B 97A7
+E7AB8D E287
+E7AB8F E288
+E7AB92 9AF2
+E7AB93 E28A
+E7AB95 E289
+E7AB99 E28B
+E7AB9A E28C
+E7AB9C 97B3
+E7AB9D E28D
+E7AB9F E8ED
+E7ABA0 8FCD
+E7ABA1 E28E
+E7ABA2 E28F
+E7ABA3 8F76
+E7ABA5 93B6
+E7ABA6 E290
+E7ABAA 9247
+E7ABAD E291
+E7ABAF 925B
+E7ABB0 E292
+E7ABB6 8BA3
+E7ABB8 995E
+E7ABB9 927C
+E7ABBA 8EB1
+E7ABBF 8AC6
+E7AC82 E293
+E7AC84 E2A0
+E7AC86 E296
+E7AC88 8B88
+E7AC8A E295
+E7AC8B E2A2
+E7AC8F E294
+E7AC91 8FCE
+E7AC98 E298
+E7AC99 E299
+E7AC9B 934A
+E7AC9E E29A
+E7ACA0 8A7D
+E7ACA5 9079
+E7ACA6 9584
+E7ACA8 E29C
+E7ACAC 91E6
+E7ACB3 E297
+E7ACB5 E29B
+E7ACB6 E29D
+E7ACB9 8DF9
+E7AD85 E2A4
+E7AD86 954D
+E7AD88 94A4
+E7AD89 9399
+E7AD8B 8BD8
+E7AD8C E2A3
+E7AD8D E2A1
+E7AD8F 94B3
+E7AD90 E29E
+E7AD91 927D
+E7AD92 939B
+E7AD94 939A
+E7AD96 8DF4
+E7AD9D E2B6
+E7ADA5 E2A6
+E7ADA7 E2A8
+E7ADAC E2AB
+E7ADAE E2AC
+E7ADB0 E2A9
+E7ADB1 E2AA
+E7ADB4 E2A7
+E7ADB5 E2A5
+E7ADBA E29F
+E7AE86 95CD
+E7AE87 89D3
+E7AE8B E2B3
+E7AE8D E2B0
+E7AE8F E2B5
+E7AE92 E2B4
+E7AE94 9493
+E7AE95 96A5
+E7AE97 8E5A
+E7AE98 E2AE
+E7AE99 E2B7
+E7AE9A E2B2
+E7AE9C E2B1
+E7AE9D E2AD
+E7AE9F E2AF
+E7AEA1 8AC7
+E7AEAA 925C
+E7AEAD 90FB
+E7AEB1 94A0
+E7AEB4 E2BC
+E7AEB8 94A2
+E7AF80 90DF
+E7AF81 E2B9
+E7AF84 94CD
+E7AF86 E2BD
+E7AF87 95D1
+E7AF89 927A
+E7AF8B E2B8
+E7AF8C E2BA
+E7AF8F E2BB
+E7AF9D E2BE
+E7AFA0 8EC2
+E7AFA4 93C4
+E7AFA5 E2C3
+E7AFA6 E2C2
+E7AFA9 E2BF
+E7AFAD 9855
+E7AFB3 E2C8
+E7AFB6 E2CC
+E7AFB7 E2C9
+E7B080 E2C5
+E7B087 E2C6
+E7B08D E2CB
+E7B091 E2C0
+E7B092 99D3
+E7B093 E2C7
+E7B094 E2C1
+E7B097 E2CA
+E7B09F E2D0
+E7B0A1 8AC8
+E7B0A3 E2CD
+E7B0A7 E2CE
+E7B0AA E2CF
+E7B0AB E2D2
+E7B0B7 E2D1
+E7B0B8 94F4
+E7B0BD E2D3
+E7B0BE 97FA
+E7B0BF 95EB
+E7B180 E2D8
+E7B183 E2D5
+E7B18C E2D4
+E7B18D 90D0
+E7B18F E2D7
+E7B190 E2D9
+E7B194 E2D6
+E7B196 E2DD
+E7B198 E2DA
+E7B19F E2DB
+E7B1A0 E2C4
+E7B1A4 E2DC
+E7B1A5 E2DE
+E7B1AC E2DF
+E7B1B3 95C4
+E7B1B5 E2E0
+E7B1BE 96E0
+E7B281 8BCC
+E7B282 8C48
+E7B283 E2E1
+E7B289 95B2
+E7B28B 9088
+E7B28D 96AE
+E7B290 E2E2
+E7B292 97B1
+E7B295 9494
+E7B297 9165
+E7B298 9453
+E7B29B 8F6C
+E7B29F 88BE
+E7B2A1 E2E7
+E7B2A2 E2E5
+E7B2A4 E2E3
+E7B2A5 8A9F
+E7B2A7 8FCF
+E7B2A8 E2E8
+E7B2AB E2E6
+E7B2AD E2E4
+E7B2AE E2EC
+E7B2B1 E2EB
+E7B2B2 E2EA
+E7B2B3 E2E9
+E7B2B9 E2ED
+E7B2BD E2EE
+E7B2BE 90B8
+E7B380 E2EF
+E7B382 E2F1
+E7B385 E2F0
+E7B38A 8CD0
+E7B38E 9157
+E7B392 E2F3
+E7B396 939C
+E7B398 E2F2
+E7B39C E2F4
+E7B39E 95B3
+E7B39F 918C
+E7B3A0 8D66
+E7B3A2 E2F5
+E7B3A7 97C6
+E7B3AF E2F7
+E7B3B2 E2F8
+E7B3B4 E2F9
+E7B3B6 E2FA
+E7B3B8 8E85
+E7B3BA E2FB
+E7B3BB 8C6E
+E7B3BE 8B8A
+E7B480 8B49
+E7B482 E340
+E7B484 96F1
+E7B485 8D67
+E7B486 E2FC
+E7B48A E343
+E7B48B 96E4
+E7B48D 945B
+E7B490 9552
+E7B494 8F83
+E7B495 E342
+E7B497 8ED1
+E7B498 8D68
+E7B499 8E86
+E7B49A 8B89
+E7B49B 95B4
+E7B49C E341
+E7B4A0 9166
+E7B4A1 9661
+E7B4A2 8DF5
+E7B4AB 8E87
+E7B4AC 92DB
+E7B4AE E346
+E7B4AF 97DD
+E7B4B0 8DD7
+E7B4B2 E347
+E7B4B3 9061
+E7B4B5 E349
+E7B4B9 8FD0
+E7B4BA 8DAE
+E7B4BF E348
+E7B582 8F49
+E7B583 8CBC
+E7B584 9167
+E7B585 E344
+E7B586 E34A
+E7B58B E345
+E7B58C 8C6F
+E7B58E E34D
+E7B58F E351
+E7B590 8C8B
+E7B596 E34C
+E7B59B E355
+E7B59E 8D69
+E7B5A1 978D
+E7B5A2 88BA
+E7B5A3 E352
+E7B5A6 8B8B
+E7B5A8 E34F
+E7B5AE E350
+E7B5B1 939D
+E7B5B2 E34E
+E7B5B3 E34B
+E7B5B5 8A47
+E7B5B6 90E2
+E7B5B9 8CA6
+E7B5BD E357
+E7B689 E354
+E7B68F E356
+E7B693 E353
+E7B699 8C70
+E7B69A 91B1
+E7B69B E358
+E7B69C 918E
+E7B69F E365
+E7B6A2 E361
+E7B6A3 E35B
+E7B6AB E35F
+E7B6AC 8EF8
+E7B6AD 88DB
+E7B6AE E35A
+E7B6AF E362
+E7B6B0 E366
+E7B6B1 8D6A
+E7B6B2 96D4
+E7B6B4 92D4
+E7B6B5 E35C
+E7B6B8 E364
+E7B6BA E359
+E7B6BB 925D
+E7B6BD E35E
+E7B6BE 88BB
+E7B6BF 96C8
+E7B787 E35D
+E7B78A 8BD9
+E7B78B 94EA
+E7B78F 918D
+E7B791 97CE
+E7B792 8F8F
+E7B795 E38E
+E7B798 E367
+E7B79A 90FC
+E7B79C E363
+E7B79D E368
+E7B79E E36A
+E7B7A0 92F7
+E7B7A1 E36D
+E7B7A4 E369
+E7B7A8 95D2
+E7B7A9 8AC9
+E7B7AC 96C9
+E7B7AF 88DC
+E7B7B2 E36C
+E7B7B4 97FB
+E7B7BB E36B
+E7B881 898F
+E7B884 93EA
+E7B885 E36E
+E7B889 E375
+E7B88A E36F
+E7B88B E376
+E7B892 E372
+E7B89B 949B
+E7B89E 8EC8
+E7B89F E374
+E7B8A1 E371
+E7B8A2 E377
+E7B8A3 E370
+E7B8A6 8F63
+E7B8AB 9644
+E7B8AE 8F6B
+E7B8B1 E373
+E7B8B2 E380
+E7B8B5 E37B
+E7B8B7 E37E
+E7B8B9 E37C
+E7B8BA E381
+E7B8BB E37A
+E7B8BD E360
+E7B8BE 90D1
+E7B981 94C9
+E7B983 E37D
+E7B986 E378
+E7B98A 9140
+E7B98B 8C71
+E7B98D 8F4A
+E7B994 9044
+E7B995 9155
+E7B996 E384
+E7B999 E386
+E7B99A E387
+E7B99D E383
+E7B99E E385
+E7B9A6 E379
+E7B9A7 E382
+E7B9A9 E38A
+E7B9AA E389
+E7B9AD 969A
+E7B9B0 8C4A
+E7B9B9 E388
+E7B9BB E38C
+E7B9BC E38B
+E7B9BD E38F
+E7B9BF E391
+E7BA82 8E5B
+E7BA83 E38D
+E7BA88 E392
+E7BA89 E393
+E7BA8C E394
+E7BA8E E39A
+E7BA8F 935A
+E7BA90 E396
+E7BA92 E395
+E7BA93 E397
+E7BA94 E398
+E7BA96 E399
+E7BA9B E39B
+E7BA9C E39C
+E7BCB6 8ACA
+E7BCB8 E39D
+E7BCBA E39E
+E7BD85 E39F
+E7BD8C E3A0
+E7BD8D E3A1
+E7BD8E E3A2
+E7BD90 E3A3
+E7BD91 E3A4
+E7BD94 E3A6
+E7BD95 E3A5
+E7BD98 E3A7
+E7BD9F E3A8
+E7BDA0 E3A9
+E7BDA7 E3AC
+E7BDA8 E3AA
+E7BDA9 E3AB
+E7BDAA 8DDF
+E7BDAB 8C72
+E7BDAE 9275
+E7BDB0 94B1
+E7BDB2 8F90
+E7BDB5 946C
+E7BDB7 94EB
+E7BDB8 E3AD
+E7BDB9 9CEB
+E7BE82 E3AE
+E7BE83 E3B0
+E7BE85 9785
+E7BE86 E3AF
+E7BE87 E3B2
+E7BE88 E3B1
+E7BE8A 9772
+E7BE8C E3B3
+E7BE8E 94FC
+E7BE94 E3B4
+E7BE9A E3B7
+E7BE9D E3B6
+E7BE9E E3B5
+E7BEA3 E3B8
+E7BEA4 8C51
+E7BEA8 9141
+E7BEA9 8B60
+E7BEAE E3BC
+E7BEAF E3B9
+E7BEB2 E3BA
+E7BEB6 E3BD
+E7BEB8 E3BE
+E7BEB9 E3BB
+E7BEBD 8948
+E7BF81 89A5
+E7BF85 E3C0
+E7BF86 E3C1
+E7BF8A E3C2
+E7BF8C 9782
+E7BF92 8F4B
+E7BF94 E3C4
+E7BF95 E3C3
+E7BFA0 9089
+E7BFA1 E3C5
+E7BFA6 E3C6
+E7BFA9 E3C7
+E7BFAB 8AE3
+E7BFB0 8ACB
+E7BFB3 E3C8
+E7BFB9 E3C9
+E7BFBB 967C
+E7BFBC 9783
+E88080 9773
+E88081 9856
+E88083 8D6C
+E88084 E3CC
+E88085 8ED2
+E88086 E3CB
+E8808B E3CD
+E8808C 8EA7
+E88090 91CF
+E88092 E3CE
+E88095 8D6B
+E88097 96D5
+E88098 E3CF
+E88099 E3D0
+E8809C E3D1
+E880A1 E3D2
+E880A8 E3D3
+E880B3 8EA8
+E880B6 96EB
+E880BB E3D5
+E880BD 925E
+E880BF E3D4
+E88186 E3D7
+E8818A E3D6
+E88192 E3D8
+E88196 90B9
+E88198 E3D9
+E8819A E3DA
+E8819E 95B7
+E8819F E3DB
+E881A1 918F
+E881A2 E3DC
+E881A8 E3DD
+E881AF 97FC
+E881B0 E3E0
+E881B2 E3DF
+E881B3 E3DE
+E881B4 92AE
+E881B6 E3E1
+E881B7 9045
+E881B9 E3E2
+E881BD E3E3
+E881BE 9857
+E881BF E3E4
+E88284 E3E5
+E88285 E3E7
+E88286 E3E6
+E88287 94A3
+E88289 93F7
+E8828B 985D
+E8828C 94A7
+E88293 E3E9
+E88296 8FD1
+E88298 9549
+E8829A E3EA
+E8829B E3E8
+E8829D 8ACC
+E882A1 8CD2
+E882A2 8E88
+E882A5 94EC
+E882A9 8CA8
+E882AA 9662
+E882AC E3ED
+E882AD E3EB
+E882AF 8D6D
+E882B1 8D6E
+E882B2 88E7
+E882B4 8DE6
+E882BA 9478
+E88383 88DD
+E88384 E3F2
+E88386 925F
+E8838C 9477
+E8838E 91D9
+E88396 E3F4
+E88399 E3F0
+E8839A E3F3
+E8839B E3EE
+E8839D E3F1
+E8839E 9645
+E883A1 8CD3
+E883A4 88FB
+E883A5 E3EF
+E883AF E3F6
+E883B1 E3F7
+E883B4 93B7
+E883B8 8BB9
+E883BC E445
+E883BD 945C
+E88482 8E89
+E88485 8BBA
+E88486 90C6
+E88487 9865
+E88488 96AC
+E88489 E3F5
+E8848A 90D2
+E8849A 8B72
+E8849B E3F8
+E884A3 E3FA
+E884A9 E3F9
+E884AF E3FB
+E884B1 9245
+E884B3 945D
+E884B9 92AF
+E884BE E442
+E88586 E441
+E8858B E3FC
+E8858E 9074
+E88590 9585
+E88591 E444
+E88593 E443
+E88594 8D6F
+E88595 9872
+E8859F E454
+E885A5 E448
+E885A6 E449
+E885AB 8EEE
+E885AE E447
+E885B0 8D98
+E885B1 E446
+E885B4 E44A
+E885B8 92B0
+E885B9 95A0
+E885BA 9142
+E885BF 91DA
+E88680 E44E
+E88682 E44F
+E88683 E44B
+E88688 E44C
+E8868A E44D
+E8868F 8D70
+E88693 E455
+E88695 E451
+E8869A 9586
+E8869C 968C
+E8869D 9547
+E886A0 E450
+E886A3 E453
+E886A4 E452
+E886A8 9663
+E886A9 E456
+E886B0 E457
+E886B3 9156
+E886B5 E458
+E886B8 E45A
+E886BA E45E
+E886BD E45B
+E886BE E459
+E886BF 945E
+E88780 E45C
+E88782 E45D
+E88786 89B0
+E88788 E464
+E88789 E45F
+E8878D E460
+E88791 E461
+E88793 919F
+E88798 E463
+E88799 E462
+E8879A E465
+E8879F E466
+E887A0 E467
+E887A3 9062
+E887A5 89E7
+E887A7 E468
+E887A8 97D5
+E887AA 8EA9
+E887AD 8F4C
+E887B3 8E8A
+E887B4 9276
+E887BA E469
+E887BB E46A
+E887BC 8950
+E887BE E46B
+E88881 E46C
+E88882 E46D
+E88885 E46E
+E88887 E46F
+E88888 8BBB
+E88889 9DA8
+E8888A E470
+E8888C 90E3
+E8888D E471
+E8888E 8EC9
+E88890 E472
+E88892 98AE
+E88896 E473
+E88897 95DC
+E88898 8ADA
+E8889B 9143
+E8889C 8F77
+E8889E 9591
+E8889F 8F4D
+E888A9 E474
+E888AA 8D71
+E888AB E475
+E888AC 94CA
+E888AE E484
+E888B3 E477
+E888B5 91C7
+E888B6 9495
+E888B7 8CBD
+E888B8 E476
+E888B9 9144
+E88980 E478
+E88987 92F8
+E88998 E47A
+E88999 E479
+E8899A E47C
+E8899D E47B
+E8899F E47D
+E889A2 E480
+E889A4 E47E
+E889A6 8ACD
+E889A8 E481
+E889AA E482
+E889AB E483
+E889AE 8DAF
+E889AF 97C7
+E889B1 E485
+E889B2 9046
+E889B6 8990
+E889B7 E486
+E889B8 E487
+E889BE E488
+E88A8B 88F0
+E88A8D E489
+E88A92 E48A
+E88A99 9587
+E88A9D 8EC5
+E88A9F E48C
+E88AA5 8A48
+E88AA6 88B0
+E88AAB E48B
+E88AAC E48E
+E88AAD 946D
+E88AAF 9063
+E88AB1 89D4
+E88AB3 9646
+E88AB8 8C7C
+E88AB9 8BDA
+E88ABB E48D
+E88ABD 89E8
+E88B85 8AA1
+E88B91 8991
+E88B92 E492
+E88B93 97E8
+E88B94 91DB
+E88B97 9563
+E88B99 E49E
+E88B9B 89D5
+E88B9C E49C
+E88B9E E49A
+E88B9F E491
+E88BA1 E48F
+E88BA3 E490
+E88BA5 8EE1
+E88BA6 8BEA
+E88BA7 9297
+E88BAB 93CF
+E88BB1 8970
+E88BB3 E494
+E88BB4 E493
+E88BB9 E499
+E88BBA E495
+E88BBB E498
+E88C82 96CE
+E88C83 E497
+E88C84 89D6
+E88C85 8A9D
+E88C86 E49B
+E88C89 E49D
+E88C8E 8C73
+E88C96 E4A1
+E88C97 E4AA
+E88C98 E4AB
+E88C9C 88A9
+E88CA3 E4B2
+E88CA8 88EF
+E88CAB E4A9
+E88CAF E4A8
+E88CB1 E4A3
+E88CB2 E4A2
+E88CB4 E4A0
+E88CB5 E49F
+E88CB6 9283
+E88CB8 91F9
+E88CB9 E4A5
+E88D80 E4A4
+E88D85 E4A7
+E88D89 9190
+E88D8A 8C74
+E88D8F 8960
+E88D90 E4A6
+E88D92 8D72
+E88D98 9191
+E88DB3 E4B8
+E88DB5 E4B9
+E88DB7 89D7
+E88DBB 89AC
+E88DBC E4B6
+E88E85 E4AC
+E88E87 E4B4
+E88E89 E4BB
+E88E8A E4B5
+E88E8E E4B3
+E88E93 E496
+E88E96 E4B1
+E88E9A E4AD
+E88E9E 8ACE
+E88E9F E4AF
+E88EA0 E4BA
+E88EA2 E4B0
+E88EA8 E4BC
+E88EAA E4AE
+E88EAB 949C
+E88EB1 9789
+E88EB5 E4B7
+E88EBD E4CD
+E88F81 E4C5
+E88F85 909B
+E88F8A 8B65
+E88F8C 8BDB
+E88F8E E4C0
+E88F93 89D9
+E88F96 8FD2
+E88F98 E4C3
+E88F9C 8DD8
+E88F9F 9370
+E88FA0 E4C8
+E88FA9 95EC
+E88FAB E4BF
+E88FAF 89D8
+E88FB0 8CD4
+E88FB1 9548
+E88FB2 E4C9
+E88FB4 E4BD
+E88FB7 E4C6
+E88FBB E4D0
+E88FBD E4C1
+E89083 E4C2
+E89084 93B8
+E89087 E4C7
+E8908B E4C4
+E8908C 9647
+E8908D E4CA
+E8908E 88DE
+E89093 E4BE
+E890A0 E4CC
+E890A2 E4CB
+E890A9 948B
+E890AA E4D2
+E890AC E4DD
+E890B1 8A9E
+E890B5 E4E0
+E890B8 E4CE
+E890BC E4D3
+E890BD 978E
+E89186 E4DC
+E89189 9774
+E8918E 97A8
+E89197 9298
+E8919B 8A8B
+E891A1 9592
+E891A2 E4E2
+E891A3 939F
+E891A6 88AF
+E891A9 E4DB
+E891AB E4D7
+E891AC 9192
+E891AD E4D1
+E891AE E4D9
+E891AF E4DE
+E891B1 944B
+E891B5 88A8
+E891B7 E4D6
+E891B9 E4DF
+E891BA 9598
+E89282 E4DA
+E89284 E4D5
+E8928B 8FD3
+E89290 8F4E
+E89294 8EAA
+E89299 96D6
+E8929C 9566
+E8929F E4E5
+E892A1 E4EE
+E892AD E4D8
+E892B2 8A97
+E892B8 8FF6
+E892B9 E4E3
+E892BB E4E8
+E892BC 9193
+E892BF E4E4
+E89381 E4EB
+E89384 927E
+E89386 E4EC
+E89389 9775
+E8938A E4E1
+E8938B 8A57
+E8938D E4E7
+E89390 E4EA
+E89391 96AA
+E89396 E4ED
+E89399 E4E6
+E8939A E4E9
+E893AC 9648
+E893AE 9840
+E893B4 E4F1
+E893BC E4F8
+E893BF E4F0
+E89480 8EC1
+E89486 E4CF
+E89491 95CC
+E89493 96A0
+E89494 E4F7
+E89495 E4F6
+E89497 E4F2
+E89498 E4F3
+E8949A 8955
+E8949F E4F5
+E894A1 E4EF
+E894A6 92D3
+E894AC E4F4
+E894AD 88FC
+E894B5 91A0
+E894BD 95C1
+E89580 E4F9
+E89581 E540
+E89583 94D7
+E89588 E4FC
+E89589 8FD4
+E8958A 8EC7
+E8958B E542
+E8958E 8BBC
+E89595 E543
+E89597 9599
+E89598 E4FB
+E8959A E4D4
+E895A3 E4FA
+E895A8 986E
+E895A9 93A0
+E895AA 9593
+E895AD E54A
+E895B7 E550
+E895BE E551
+E89680 E544
+E89684 9496
+E89687 E54E
+E89688 E546
+E8968A E548
+E89690 E552
+E89691 E547
+E89694 E54B
+E89697 8992
+E89699 93E3
+E8969B E54C
+E8969C E54F
+E896A4 E545
+E896A6 9145
+E896A8 E549
+E896A9 8E46
+E896AA 9064
+E896AB 8C4F
+E896AC 96F2
+E896AE 96F7
+E896AF 8F92
+E896B9 E556
+E896BA E554
+E89781 986D
+E89789 E553
+E8978D 9795
+E8978F E555
+E89790 E557
+E89795 E558
+E8979C E55B
+E8979D E559
+E897A4 93A1
+E897A5 E55A
+E897A9 94CB
+E897AA E54D
+E897B7 8F93
+E897B9 E55C
+E897BA E561
+E897BB 9194
+E897BE E560
+E89882 E541
+E89886 E562
+E89887 9168
+E8988A E55D
+E8988B E55F
+E89893 E55E
+E89896 9F50
+E89897 9F41
+E8989A E564
+E898A2 E563
+E898AD 9796
+E898AF E1BA
+E898B0 E565
+E898BF E566
+E8998D E567
+E8998E 8CD5
+E89990 8B73
+E89994 E569
+E89995 997C
+E8999A 8B95
+E8999C 97B8
+E8999E 8BF1
+E8999F E56A
+E899A7 E56B
+E899AB 928E
+E899B1 E56C
+E899B9 93F8
+E899BB 88B8
+E89A8A 89E1
+E89A8B E571
+E89A8C E572
+E89A93 E56D
+E89A95 8E5C
+E89AA3 E56E
+E89AA4 9461
+E89AA9 E56F
+E89AAA E570
+E89AAB E57A
+E89AAF E574
+E89AB0 E577
+E89AB6 E573
+E89B84 E575
+E89B86 E576
+E89B87 8ED6
+E89B89 E578
+E89B8B 9260
+E89B8D 8C75
+E89B8E 8A61
+E89B94 E57B
+E89B99 8A5E
+E89B9B E581
+E89B9E E57C
+E89B9F E580
+E89BA4 94B8
+E89BA9 E57D
+E89BAC E57E
+E89BAD 9567
+E89BAE 94D8
+E89BAF E582
+E89BB8 91FB
+E89BB9 E58C
+E89BBB E588
+E89BBE 89E9
+E89C80 E586
+E89C82 9649
+E89C83 E587
+E89C86 E584
+E89C88 E585
+E89C89 E58A
+E89C8A E58D
+E89C8D E58B
+E89C91 E589
+E89C92 E583
+E89C98 9277
+E89C9A E594
+E89C9C 96A8
+E89CA5 E592
+E89CA9 E593
+E89CB4 E58E
+E89CB7 E590
+E89CBB E591
+E89CBF E58F
+E89D89 90E4
+E89D8B 9858
+E89D8C E598
+E89D8E E599
+E89D93 E59F
+E89D95 9049
+E89D97 E59B
+E89D99 E59E
+E89D9F E596
+E89DA0 E595
+E89DA3 E5A0
+E89DA6 89DA
+E89DA8 E59C
+E89DAA E5A1
+E89DAE E59D
+E89DB4 E59A
+E89DB6 92B1
+E89DB8 E597
+E89DBF 9488
+E89E82 E5A5
+E89E8D 975A
+E89E9F E5A4
+E89EA2 E5A3
+E89EAB E5AC
+E89EAF E5A6
+E89EB3 E5AE
+E89EBA 9786
+E89EBB E5B1
+E89EBD E5A8
+E89F80 E5A9
+E89F84 E5AD
+E89F86 E5B0
+E89F87 E5AF
+E89F8B E5A7
+E89F90 E5AA
+E89F92 E5BB
+E89FA0 E5B4
+E89FAF E5B2
+E89FB2 E5B3
+E89FB6 E5B8
+E89FB7 E5B9
+E89FB9 8A49
+E89FBB 8B61
+E89FBE E5B7
+E8A085 E5A2
+E8A08D E5B6
+E8A08E E5BA
+E8A08F E5B5
+E8A091 E5BC
+E8A095 E5BE
+E8A096 E5BD
+E8A0A1 E5C0
+E8A0A2 E5BF
+E8A0A3 E579
+E8A0A7 E5C4
+E8A0B1 E5C1
+E8A0B6 E5C2
+E8A0B9 E5C3
+E8A0BB E5C5
+E8A180 8C8C
+E8A182 E5C7
+E8A184 E5C6
+E8A186 8F4F
+E8A18C 8D73
+E8A18D 9FA5
+E8A192 E5C8
+E8A193 8F70
+E8A197 8A58
+E8A199 E5C9
+E8A19B 8971
+E8A19D 8FD5
+E8A19E E5CA
+E8A1A1 8D74
+E8A1A2 E5CB
+E8A1A3 88DF
+E8A1A8 955C
+E8A1AB E5CC
+E8A1B0 908A
+E8A1B2 E5D3
+E8A1B5 E5D0
+E8A1B7 928F
+E8A1BD E5D1
+E8A1BE E5CE
+E8A1BF 8BDC
+E8A281 E5CD
+E8A282 E5D4
+E8A288 8C55
+E8A28B 91DC
+E8A28D E5DA
+E8A292 E5D6
+E8A296 91B3
+E8A297 E5D5
+E8A299 E5D8
+E8A29E E5CF
+E8A2A2 E5D9
+E8A2A4 E5DB
+E8A2AB 94ED
+E8A2AE E5D7
+E8A2B0 E5DC
+E8A2B1 E5DE
+E8A2B4 8CD1
+E8A2B5 E5D2
+E8A2B7 88BF
+E8A2BF E5DD
+E8A381 8DD9
+E8A382 97F4
+E8A383 E5DF
+E8A384 E5E0
+E8A385 9195
+E8A38F 97A0
+E8A394 E5E1
+E8A395 9754
+E8A398 E5E2
+E8A399 E5E3
+E8A39C 95E2
+E8A39D E5E4
+E8A39F 8DBE
+E8A3A1 97A1
+E8A3A8 E5E9
+E8A3B2 E5EA
+E8A3B3 8FD6
+E8A3B4 E5E8
+E8A3B8 9787
+E8A3B9 E5E5
+E8A3BC E5E7
+E8A3BD 90BB
+E8A3BE 909E
+E8A482 E5E6
+E8A484 E5EB
+E8A487 95A1
+E8A48A E5ED
+E8A48C E5EC
+E8A490 8A8C
+E8A492 964A
+E8A493 E5EE
+E8A49D E5FA
+E8A49E E5F0
+E8A4A5 E5F1
+E8A4AA E5F2
+E8A4AB E5F3
+E8A4B6 E5F7
+E8A4B8 E5F8
+E8A4BB E5F6
+E8A581 E5F4
+E8A583 E5EF
+E8A584 E5F5
+E8A58C E5F9
+E8A58D E8B5
+E8A596 89A6
+E8A59E E5FC
+E8A59F 8BDD
+E8A5A0 E5FB
+E8A5A4 E641
+E8A5A6 E640
+E8A5AA E643
+E8A5AD E642
+E8A5AF E644
+E8A5B2 8F50
+E8A5B4 E645
+E8A5B7 E646
+E8A5BE E647
+E8A5BF 90BC
+E8A681 9776
+E8A683 E648
+E8A686 95A2
+E8A687 9465
+E8A688 E649
+E8A68A E64A
+E8A68B 8CA9
+E8A68F 8B4B
+E8A693 E64B
+E8A696 8E8B
+E8A697 9460
+E8A698 E64C
+E8A69A 8A6F
+E8A6A1 E64D
+E8A6A6 E64F
+E8A6A7 9797
+E8A6A9 E64E
+E8A6AA 9065
+E8A6AC E650
+E8A6AF E651
+E8A6B2 E652
+E8A6B3 8ACF
+E8A6BA E653
+E8A6BD E654
+E8A6BF E655
+E8A780 E656
+E8A792 8A70
+E8A79A E657
+E8A79C E658
+E8A79D E659
+E8A7A3 89F0
+E8A7A6 9047
+E8A7A7 E65A
+E8A7B4 E65B
+E8A7B8 E65C
+E8A880 8CBE
+E8A882 92F9
+E8A883 E65D
+E8A888 8C76
+E8A88A 9075
+E8A88C E660
+E8A88E 93A2
+E8A890 E65F
+E8A893 8C50
+E8A896 E65E
+E8A897 91F5
+E8A898 8B4C
+E8A89B E661
+E8A89D E662
+E8A89F 8FD7
+E8A8A3 8C8D
+E8A8A5 E663
+E8A8AA 964B
+E8A8AD 90DD
+E8A8B1 8B96
+E8A8B3 96F3
+E8A8B4 9169
+E8A8B6 E664
+E8A8BA 9066
+E8A8BB 9290
+E8A8BC 8FD8
+E8A981 E665
+E8A986 E668
+E8A988 E669
+E8A990 8DBC
+E8A991 91C0
+E8A992 E667
+E8A994 8FD9
+E8A995 955D
+E8A99B E666
+E8A99E 8E8C
+E8A9A0 8972
+E8A9A2 E66D
+E8A9A3 8C77
+E8A9A6 8E8E
+E8A9A9 8E8D
+E8A9AB 986C
+E8A9AC E66C
+E8A9AD E66B
+E8A9AE 9146
+E8A9B0 8B6C
+E8A9B1 9862
+E8A9B2 8A59
+E8A9B3 8FDA
+E8A9BC E66A
+E8AA82 E66F
+E8AA84 E670
+E8AA85 E66E
+E8AA87 8CD6
+E8AA89 975F
+E8AA8C 8E8F
+E8AA8D 9446
+E8AA91 E673
+E8AA93 90BE
+E8AA95 9261
+E8AA98 9755
+E8AA9A E676
+E8AA9E 8CEA
+E8AAA0 90BD
+E8AAA1 E672
+E8AAA3 E677
+E8AAA4 8CEB
+E8AAA5 E674
+E8AAA6 E675
+E8AAA8 E671
+E8AAAC 90E0
+E8AAAD 93C7
+E8AAB0 924E
+E8AAB2 89DB
+E8AAB9 94EE
+E8AABC 8B62
+E8AABF 92B2
+E8AB82 E67A
+E8AB84 E678
+E8AB87 926B
+E8AB8B 90BF
+E8AB8C 8AD0
+E8AB8D E679
+E8AB8F 907A
+E8AB92 97C8
+E8AB96 985F
+E8AB9A E67B
+E8AB9B E687
+E8AB9C 92B3
+E8AB9E E686
+E8ABA0 E683
+E8ABA1 E68B
+E8ABA2 E684
+E8ABA4 E680
+E8ABA6 92FA
+E8ABA7 E67E
+E8ABAB E67C
+E8ABAD 9740
+E8ABAE 8E90
+E8ABB1 E681
+E8ABB3 E67D
+E8ABB7 E685
+E8ABB8 8F94
+E8ABBA 8CBF
+E8ABBE 91F8
+E8AC80 9664
+E8AC81 8979
+E8AC82 88E0
+E8AC84 93A3
+E8AC87 E689
+E8AC8C E688
+E8AC8E 93E4
+E8AC90 E68D
+E8AC94 E682
+E8AC96 E68C
+E8AC97 E68E
+E8AC99 8CAA
+E8AC9A E68A
+E8AC9B 8D75
+E8AC9D 8ED3
+E8ACA0 E68F
+E8ACA1 9777
+E8ACA6 E692
+E8ACA8 E695
+E8ACAB E693
+E8ACAC 9554
+E8ACB3 E690
+E8ACB9 8BDE
+E8ACBE E694
+E8AD81 E696
+E8AD89 E69A
+E8AD8C E697
+E8AD8E E699
+E8AD8F E698
+E8AD96 E69B
+E8AD98 8EAF
+E8AD9A E69D
+E8AD9B E69C
+E8AD9C 9588
+E8AD9F E69F
+E8ADA6 8C78
+E8ADAB E69E
+E8ADAC E6A0
+E8ADAF E6A1
+E8ADB0 8B63
+E8ADB1 E3BF
+E8ADB2 8FF7
+E8ADB4 E6A2
+E8ADB7 8CEC
+E8ADBD E6A3
+E8AE80 E6A4
+E8AE83 8E5D
+E8AE8A 9DCC
+E8AE8C E6A5
+E8AE8E E6A6
+E8AE90 8F51
+E8AE92 E6A7
+E8AE93 E6A8
+E8AE96 E6A9
+E8AE99 E6AA
+E8AE9A E6AB
+E8B0B7 924A
+E8B0BA E6AC
+E8B0BF E6AE
+E8B181 E6AD
+E8B186 93A4
+E8B188 E6AF
+E8B18A 964C
+E8B18C E6B0
+E8B18E E6B1
+E8B190 E6B2
+E8B195 E6B3
+E8B19A 93D8
+E8B1A1 8FDB
+E8B1A2 E6B4
+E8B1AA 8D8B
+E8B1AB 98AC
+E8B1AC E6B5
+E8B1B8 E6B6
+E8B1B9 955E
+E8B1BA E6B7
+E8B1BC E6BF
+E8B282 E6B8
+E8B285 E6BA
+E8B289 E6B9
+E8B28A E6BB
+E8B28C 9665
+E8B28D E6BC
+E8B28E E6BD
+E8B294 E6BE
+E8B298 E6C0
+E8B29D 8A4C
+E8B29E 92E5
+E8B2A0 9589
+E8B2A1 8DE0
+E8B2A2 8D76
+E8B2A7 956E
+E8B2A8 89DD
+E8B2A9 94CC
+E8B2AA E6C3
+E8B2AB 8AD1
+E8B2AC 90D3
+E8B2AD E6C2
+E8B2AE E6C7
+E8B2AF 9299
+E8B2B0 96E1
+E8B2B2 E6C5
+E8B2B3 E6C6
+E8B2B4 8B4D
+E8B2B6 E6C8
+E8B2B7 9483
+E8B2B8 91DD
+E8B2BB 94EF
+E8B2BC 935C
+E8B2BD E6C4
+E8B2BF 9666
+E8B380 89EA
+E8B381 E6CA
+E8B382 9847
+E8B383 92C0
+E8B384 9864
+E8B387 8E91
+E8B388 E6C9
+E8B38A 91AF
+E8B38D E6DA
+E8B38E 9147
+E8B391 93F6
+E8B393 956F
+E8B39A E6CD
+E8B39B 8E5E
+E8B39C 8E92
+E8B39E 8FDC
+E8B3A0 9485
+E8B3A2 8CAB
+E8B3A3 E6CC
+E8B3A4 E6CB
+E8B3A6 958A
+E8B3AA 8EBF
+E8B3AD 9371
+E8B3BA E6CF
+E8B3BB E6D0
+E8B3BC 8D77
+E8B3BD E6CE
+E8B484 E6D1
+E8B485 E6D2
+E8B487 E6D4
+E8B488 91A1
+E8B48A E6D3
+E8B48B 8AE4
+E8B48D E6D6
+E8B48F E6D5
+E8B490 E6D7
+E8B493 E6D9
+E8B494 E6DB
+E8B496 E6DC
+E8B5A4 90D4
+E8B5A6 8ECD
+E8B5A7 E6DD
+E8B5AB 8A71
+E8B5AD E6DE
+E8B5B0 9196
+E8B5B1 E6DF
+E8B5B3 E6E0
+E8B5B4 958B
+E8B5B7 8B4E
+E8B681 E6E1
+E8B685 92B4
+E8B68A 897A
+E8B699 E6E2
+E8B6A3 8EEF
+E8B6A8 9096
+E8B6B3 91AB
+E8B6BA E6E5
+E8B6BE E6E4
+E8B782 E6E3
+E8B78B E6EB
+E8B78C E6E9
+E8B78F E6E6
+E8B796 E6E8
+E8B79A E6E7
+E8B79B E6EA
+E8B79D 8B97
+E8B79F E6EE
+E8B7A1 90D5
+E8B7A3 E6EF
+E8B7A8 8CD7
+E8B7AA E6EC
+E8B7AB E6ED
+E8B7AF 9848
+E8B7B3 92B5
+E8B7B5 9148
+E8B7BC E6F0
+E8B7BF E6F3
+E8B888 E6F1
+E8B889 E6F2
+E8B88A 9778
+E8B88F 93A5
+E8B890 E6F6
+E8B89D E6F4
+E8B89E E6F5
+E8B89F E6F7
+E8B8AA E748
+E8B8B0 E6FA
+E8B8B4 E6FB
+E8B8B5 E6F9
+E8B982 E6F8
+E8B984 92FB
+E8B987 E740
+E8B988 E744
+E8B989 E741
+E8B98A E6FC
+E8B98C E742
+E8B990 E743
+E8B995 E74A
+E8B999 E745
+E8B99F 90D6
+E8B9A0 E747
+E8B9A3 E749
+E8B9A4 E746
+E8B9B2 E74C
+E8B9B4 8F52
+E8B9B6 E74B
+E8B9BC E74D
+E8BA81 E74E
+E8BA84 E751
+E8BA85 E750
+E8BA87 E74F
+E8BA8A E753
+E8BA8B E752
+E8BA8D 96F4
+E8BA91 E755
+E8BA93 E754
+E8BA94 E756
+E8BA99 E757
+E8BAA1 E759
+E8BAAA E758
+E8BAAB 9067
+E8BAAC E75A
+E8BAAF 8BEB
+E8BAB0 E75B
+E8BAB1 E75D
+E8BABE E75E
+E8BB85 E75F
+E8BB86 E75C
+E8BB88 E760
+E8BB8A 8ED4
+E8BB8B E761
+E8BB8C 8B4F
+E8BB8D 8C52
+E8BB92 8CAC
+E8BB9B E762
+E8BB9F 93EE
+E8BBA2 935D
+E8BBA3 E763
+E8BBAB E766
+E8BBB8 8EB2
+E8BBBB E765
+E8BBBC E764
+E8BBBD 8C79
+E8BBBE E767
+E8BC83 8A72
+E8BC85 E769
+E8BC89 8DDA
+E8BC8A E768
+E8BC8C E771
+E8BC92 E76B
+E8BC93 E76D
+E8BC94 95E3
+E8BC95 E76A
+E8BC99 E76C
+E8BC9B E770
+E8BC9C E76E
+E8BC9D 8B50
+E8BC9F E76F
+E8BCA6 E772
+E8BCA9 9479
+E8BCAA 97D6
+E8BCAF 8F53
+E8BCB3 E773
+E8BCB8 9741
+E8BCB9 E775
+E8BCBB E774
+E8BCBE E778
+E8BCBF 9760
+E8BD82 E777
+E8BD84 8A8D
+E8BD85 E776
+E8BD86 E77B
+E8BD89 E77A
+E8BD8C E779
+E8BD8D 9351
+E8BD8E E77C
+E8BD97 E77D
+E8BD9C E77E
+E8BD9F 8D8C
+E8BDA1 8C44
+E8BDA2 E780
+E8BDA3 E781
+E8BDA4 E782
+E8BE9B 9068
+E8BE9C E783
+E8BE9E 8EAB
+E8BE9F E784
+E8BEA3 E785
+E8BEA7 999F
+E8BEA8 999E
+E8BEAD E786
+E8BEAE E390
+E8BEAF E787
+E8BEB0 9243
+E8BEB1 904A
+E8BEB2 945F
+E8BEB7 E788
+E8BEBA 95D3
+E8BEBB 92D2
+E8BEBC 8D9E
+E8BEBF 9248
+E8BF82 8949
+E8BF84 9698
+E8BF85 9076
+E8BF8E 8C7D
+E8BF91 8BDF
+E8BF94 95D4
+E8BF9A E789
+E8BFA2 E78B
+E8BFA5 E78A
+E8BFA6 89DE
+E8BFA9 93F4
+E8BFAA E78C
+E8BFAB 9497
+E8BFAD 9352
+E8BFAF E78D
+E8BFB0 8F71
+E8BFB4 E78F
+E8BFB7 96C0
+E8BFB8 E79E
+E8BFB9 E791
+E8BFBA E792
+E8BFBD 92C7
+E98080 91DE
+E98081 9197
+E98083 93A6
+E98085 E790
+E98086 8B74
+E9808B E799
+E9808D E796
+E9808E E7A3
+E9808F 93A7
+E98090 9280
+E98091 E793
+E98093 92FC
+E98094 9372
+E98095 E794
+E98096 E798
+E98097 9080
+E98099 9487
+E9809A 92CA
+E9809D 90C0
+E9809E E797
+E9809F 91AC
+E980A0 91A2
+E980A1 E795
+E980A2 88A7
+E980A3 9841
+E980A7 E79A
+E980AE 91DF
+E980B1 8F54
+E980B2 9069
+E980B5 E79C
+E980B6 E79B
+E980B8 88ED
+E980B9 E79D
+E980BC 954E
+E980BE E7A5
+E98181 93D9
+E98182 908B
+E98185 9278
+E98187 8BF6
+E98189 E7A4
+E9818A 9756
+E9818B 895E
+E9818D 95D5
+E9818E 89DF
+E9818F E79F
+E98190 E7A0
+E98191 E7A1
+E98192 E7A2
+E98193 93B9
+E98194 9242
+E98195 88E1
+E98196 E7A6
+E98198 E7A7
+E98199 EAA1
+E9819C 91BB
+E9819E E7A8
+E981A0 8993
+E981A1 916B
+E981A3 8CAD
+E981A5 9779
+E981A8 E7A9
+E981A9 934B
+E981AD 9198
+E981AE 8ED5
+E981AF E7AA
+E981B2 E7AD
+E981B5 8F85
+E981B6 E7AB
+E981B7 914A
+E981B8 9149
+E981BA 88E2
+E981BC 97C9
+E981BD E7AF
+E981BF 94F0
+E98280 E7B1
+E98281 E7B0
+E98282 E7AE
+E98283 E284
+E98284 8AD2
+E98287 E78E
+E98289 E7B3
+E9828A E7B2
+E9828F E7B4
+E98291 9757
+E982A3 93DF
+E982A6 964D
+E982A8 E7B5
+E982AA 8ED7
+E982AF E7B6
+E982B1 E7B7
+E982B5 E7B8
+E982B8 9340
+E98381 88E8
+E9838A 8D78
+E9838E 9859
+E9839B E7BC
+E983A1 8C53
+E983A2 E7B9
+E983A4 E7BA
+E983A8 9594
+E983AD 8A73
+E983B5 9758
+E983B7 8BBD
+E983BD 9373
+E98482 E7BD
+E98492 E7BE
+E98499 E7BF
+E984AD 9341
+E984B0 E7C1
+E984B2 E7C0
+E98589 93D1
+E9858A E7C2
+E9858B 8F55
+E9858C 8EDE
+E9858D 947A
+E9858E 9291
+E98592 8EF0
+E98594 908C
+E98596 E7C3
+E98598 E7C4
+E985A2 907C
+E985A3 E7C5
+E985A5 E7C6
+E985A9 E7C7
+E985AA 978F
+E985AC 8F56
+E985B2 E7C9
+E985B3 E7C8
+E985B5 8D79
+E985B7 8D93
+E985B8 8E5F
+E98682 E7CC
+E98687 8F86
+E98689 E7CB
+E9868B E7CA
+E9868D 91E7
+E98690 8CED
+E98692 90C1
+E98697 94AE
+E9869C 8F58
+E986A2 E7CD
+E986A4 8FDD
+E986AA E7D0
+E986AB E7CE
+E986AF E7CF
+E986B4 E7D2
+E986B5 E7D1
+E986B8 8FF8
+E986BA E7D3
+E98780 E7D4
+E98781 E7D5
+E98786 94CE
+E98787 8DD1
+E98788 8EDF
+E98789 E7D6
+E9878B E7D7
+E9878C 97A2
+E9878D 8F64
+E9878E 96EC
+E9878F 97CA
+E98790 E7D8
+E98791 8BE0
+E98796 E7D9
+E98798 9342
+E9879B E7DC
+E9879C 8A98
+E9879D 906A
+E9879F E7DA
+E987A1 E7DB
+E987A3 92DE
+E987A6 9674
+E987A7 8BFA
+E987B5 E7DE
+E987B6 E7DF
+E987BC E7DD
+E987BF E7E1
+E9888D 93DD
+E9888E 8A62
+E98891 E7E5
+E98894 E7E2
+E98895 E7E4
+E9889E E7E0
+E988A9 E86E
+E988AC E7E3
+E988B4 97E9
+E988B7 8CD8
+E988BF E7ED
+E98984 9353
+E98985 E7E8
+E98988 E7EB
+E98989 E7E9
+E9898B E7EE
+E98990 E7EF
+E98997 E7E7
+E9899A E7F4
+E9899B 8994
+E9899E E7E6
+E989A2 94AB
+E989A4 E7EA
+E989A6 8FDE
+E989B1 8D7A
+E989BE 9667
+E98A80 8BE2
+E98A83 8F65
+E98A85 93BA
+E98A91 914C
+E98A93 E7F2
+E98A95 E7EC
+E98A96 E7F1
+E98A98 96C1
+E98A9A 92B6
+E98A9B E7F3
+E98A9C E7F0
+E98AAD 914B
+E98AB7 E7F7
+E98AB9 E7F6
+E98B8F E7F5
+E98B92 964E
+E98BA4 8F9B
+E98BA9 E7F8
+E98BAA 95DD
+E98BAD 8973
+E98BB2 9565
+E98BB3 9292
+E98BB8 8B98
+E98BBA E7FA
+E98BBC 8D7C
+E98C86 8E4B
+E98C8F E7F9
+E98C90 908D
+E98C98 908E
+E98C99 E840
+E98C9A E842
+E98CA0 8FF9
+E98CA2 E841
+E98CA3 E843
+E98CA6 8BD1
+E98CA8 9564
+E98CAB 8EE0
+E98CAC 9842
+E98CAE E7FC
+E98CAF 8DF6
+E98CB2 985E
+E98CB5 E845
+E98CBA E844
+E98CBB E846
+E98D84 E7FB
+E98D8B 93E7
+E98D8D 9374
+E98D94 92D5
+E98D96 E84B
+E98D9B 9262
+E98D9C E847
+E98DA0 E848
+E98DAC 8C4C
+E98DAE E84A
+E98DB5 8CAE
+E98DBC E849
+E98DBE 8FDF
+E98E8C 8A99
+E98E94 E84F
+E98E96 8DBD
+E98E97 9199
+E98E9A 92C8
+E98EA7 8A5A
+E98EAC E84D
+E98EAD E84E
+E98EAE 92C1
+E98EB0 E84C
+E98EB9 E850
+E98F83 E856
+E98F88 E859
+E98F90 E858
+E98F91 934C
+E98F96 E851
+E98F97 E852
+E98F98 E855
+E98F9D E857
+E98FA1 8BBE
+E98FA4 E85A
+E98FA5 E854
+E98FA8 E853
+E99083 E85E
+E99087 E85F
+E99090 E860
+E99093 E85D
+E99094 E85C
+E99098 8FE0
+E99099 93A8
+E9909A E85B
+E990A1 E864
+E990AB E862
+E990B5 E863
+E990B6 E861
+E990B8 91F6
+E990BA E865
+E99181 E866
+E99184 E868
+E99191 8AD3
+E99192 E867
+E99193 96F8
+E9919A E873
+E9919B E869
+E9919E E86C
+E991A0 E86A
+E991A2 E86B
+E991AA E86D
+E991B0 E86F
+E991B5 E870
+E991B7 E871
+E991BC E874
+E991BD E872
+E991BE E875
+E991BF E877
+E99281 E876
+E995B7 92B7
+E99680 96E5
+E99682 E878
+E99683 914D
+E99687 E879
+E99689 95C2
+E9968A E87A
+E9968B 8A4A
+E9968F 895B
+E99691 8AD5
+E99693 8AD4
+E99694 E87B
+E99696 E87C
+E99698 E87D
+E99699 E87E
+E996A0 E880
+E996A2 8AD6
+E996A3 8A74
+E996A4 8D7D
+E996A5 94B4
+E996A7 E882
+E996A8 E881
+E996AD E883
+E996B2 897B
+E996B9 E886
+E996BB E885
+E996BC E884
+E996BE E887
+E99783 E88A
+E99787 88C5
+E9978A E888
+E9978C E88C
+E9978D E88B
+E99794 E88E
+E99795 E88D
+E99796 E88F
+E99798 93AC
+E9979C E890
+E997A1 E891
+E997A2 E893
+E997A5 E892
+E9989C 958C
+E998A1 E894
+E998A8 E895
+E998AA 8DE3
+E998AE E896
+E998AF E897
+E998B2 9668
+E998BB 916A
+E998BF 88A2
+E99980 91C9
+E99982 E898
+E99984 958D
+E9998B E89B
+E9998C E899
+E9998D 8D7E
+E9998F E89A
+E99990 8CC0
+E9999B 95C3
+E9999C E89D
+E9999D E89F
+E9999E E89E
+E9999F E8A0
+E999A2 8940
+E999A3 9077
+E999A4 8F9C
+E999A5 8AD7
+E999A6 E8A1
+E999AA 9486
+E999AC E8A3
+E999B0 8941
+E999B2 E8A2
+E999B3 92C2
+E999B5 97CB
+E999B6 93A9
+E999B7 E89C
+E999B8 97A4
+E999BA 8CAF
+E999BD 977A
+E99A85 8BF7
+E99A86 97B2
+E99A88 8C47
+E99A8A 91E0
+E99A8B E440
+E99A8D E8A4
+E99A8E 8A4B
+E99A8F 908F
+E99A94 8A75
+E99A95 E8A6
+E99A97 E8A7
+E99A98 E8A5
+E99A99 8C84
+E99A9B 8DDB
+E99A9C 8FE1
+E99AA0 8942
+E99AA3 97D7
+E99AA7 E8A9
+E99AA8 E7AC
+E99AAA E8A8
+E99AB0 E8AC
+E99AB1 E8AA
+E99AB2 E8AB
+E99AB4 E8AD
+E99AB6 E8AE
+E99AB7 97EA
+E99AB8 E8AF
+E99AB9 E8B0
+E99ABB 90C7
+E99ABC 94B9
+E99B80 909D
+E99B81 8AE5
+E99B84 9759
+E99B85 89EB
+E99B86 8F57
+E99B87 8CD9
+E99B89 E8B3
+E99B8B E8B2
+E99B8C 8E93
+E99B8D E8B4
+E99B8E E8B1
+E99B91 8E47
+E99B95 E8B8
+E99B96 E5AB
+E99B99 99D4
+E99B9B 9097
+E99B9C E8B6
+E99BA2 97A3
+E99BA3 93EF
+E99BA8 894A
+E99BAA 90E1
+E99BAB 8EB4
+E99BB0 95B5
+E99BB2 895F
+E99BB6 97EB
+E99BB7 978B
+E99BB9 E8B9
+E99BBB 9364
+E99C80 8EF9
+E99C84 E8BA
+E99C86 E8BB
+E99C87 906B
+E99C88 E8BC
+E99C8A 97EC
+E99C8D E8B7
+E99C8E E8BE
+E99C8F E8C0
+E99C91 E8BF
+E99C93 E8BD
+E99C96 E8C1
+E99C99 E8C2
+E99C9C 919A
+E99C9E 89E0
+E99CA4 E8C3
+E99CA7 96B6
+E99CAA E8C4
+E99CB0 E8C5
+E99CB2 9849
+E99CB8 9E50
+E99CB9 E8C6
+E99CBD E8C7
+E99CBE E8C8
+E99D82 E8CC
+E99D84 E8C9
+E99D86 E8CA
+E99D88 E8CB
+E99D89 E8CD
+E99D92 90C2
+E99D96 96F5
+E99D99 90C3
+E99D9C E8CE
+E99D9E 94F1
+E99DA0 E8CF
+E99DA1 EA72
+E99DA2 96CA
+E99DA4 E8D0
+E99DA6 E8D1
+E99DA8 E8D2
+E99DA9 8A76
+E99DAB E8D4
+E99DAD 9078
+E99DB1 E8D5
+E99DB4 8C43
+E99DB9 E8D6
+E99DBA E8DA
+E99DBC E8D8
+E99E81 E8D9
+E99E84 8A93
+E99E85 E8D7
+E99E86 E8DB
+E99E8B E8DC
+E99E8D 88C6
+E99E8F E8DD
+E99E90 E8DE
+E99E98 8FE2
+E99E9C E8DF
+E99EA0 8B66
+E99EA3 E8E2
+E99EA6 E8E1
+E99EA8 E8E0
+E99EAB E691
+E99EAD 95DA
+E99EB3 E8E3
+E99EB4 E8E4
+E99F83 E8E5
+E99F86 E8E6
+E99F88 E8E7
+E99F8B E8E8
+E99F93 8AD8
+E99F9C E8E9
+E99FAD E8EA
+E99FAE 9442
+E99FB2 E8EC
+E99FB3 89B9
+E99FB5 E8EF
+E99FB6 E8EE
+E99FBB 8943
+E99FBF 8BBF
+E9A081 95C5
+E9A082 92B8
+E9A083 8DA0
+E9A085 8D80
+E9A086 8F87
+E9A088 907B
+E9A08C E8F1
+E9A08F E8F0
+E9A090 9761
+E9A091 8AE6
+E9A092 94D0
+E9A093 93DA
+E9A097 909C
+E9A098 97CC
+E9A09A 8C7A
+E9A0A1 E8F4
+E9A0A4 E8F3
+E9A0AC 966A
+E9A0AD 93AA
+E9A0B4 896F
+E9A0B7 E8F5
+E9A0B8 E8F2
+E9A0BB 9570
+E9A0BC 978A
+E9A0BD E8F6
+E9A186 E8F7
+E9A18B E8F9
+E9A18C 91E8
+E9A18D 8A7A
+E9A18E 8A7B
+E9A18F E8F8
+E9A194 8AE7
+E9A195 8CB0
+E9A198 8AE8
+E9A19B 935E
+E9A19E 97DE
+E9A1A7 8CDA
+E9A1AB E8FA
+E9A1AF E8FB
+E9A1B0 E8FC
+E9A1B1 E940
+E9A1B3 E942
+E9A1B4 E941
+E9A2A8 9597
+E9A2AA E943
+E9A2AF E944
+E9A2B1 E945
+E9A2B6 E946
+E9A383 E948
+E9A384 E947
+E9A386 E949
+E9A39B 94F2
+E9A39C E3CA
+E9A39F 9048
+E9A3A2 8B51
+E9A3A9 E94A
+E9A3AB E94B
+E9A3AD 99AA
+E9A3AE 9F5A
+E9A3AF 94D1
+E9A3B2 88F9
+E9A3B4 88B9
+E9A3BC 8E94
+E9A3BD 964F
+E9A3BE 8FFC
+E9A483 E94C
+E9A485 96DD
+E9A489 E94D
+E9A48A 977B
+E9A48C 8961
+E9A490 8E60
+E9A492 E94E
+E9A493 89EC
+E9A494 E94F
+E9A498 E950
+E9A49D E952
+E9A49E E953
+E9A4A0 E955
+E9A4A1 E951
+E9A4A4 E954
+E9A4A8 8AD9
+E9A4AC E956
+E9A4AE E957
+E9A4BD E958
+E9A4BE E959
+E9A582 E95A
+E9A585 E95C
+E9A589 E95B
+E9A58B E95E
+E9A58C E961
+E9A590 E95D
+E9A591 E95F
+E9A592 E960
+E9A595 E962
+E9A597 8BC0
+E9A696 8EF1
+E9A697 E963
+E9A698 E964
+E9A699 8D81
+E9A6A5 E965
+E9A6A8 8A5D
+E9A6AC 946E
+E9A6AD E966
+E9A6AE E967
+E9A6B3 9279
+E9A6B4 93E9
+E9A6BC E968
+E9A781 949D
+E9A784 91CA
+E9A785 8977
+E9A786 8BEC
+E9A788 8BED
+E9A790 9293
+E9A791 E96D
+E9A792 8BEE
+E9A795 89ED
+E9A798 E96C
+E9A79B E96A
+E9A79D E96B
+E9A79F E969
+E9A7A2 E977
+E9A7AD E96E
+E9A7AE E96F
+E9A7B1 E970
+E9A7B2 E971
+E9A7B8 E973
+E9A7BB E972
+E9A7BF 8F78
+E9A881 E974
+E9A885 E976
+E9A88E 8B52
+E9A88F E975
+E9A892 919B
+E9A893 8CB1
+E9A899 E978
+E9A8A8 91CB
+E9A8AB E979
+E9A8B0 93AB
+E9A8B7 E97A
+E9A8BE E980
+E9A980 E97D
+E9A982 E97C
+E9A983 E97E
+E9A985 E97B
+E9A98D E982
+E9A995 E981
+E9A997 E984
+E9A99A 8BC1
+E9A99B E983
+E9A99F E985
+E9A9A2 E986
+E9A9A4 E988
+E9A9A5 E987
+E9A9A9 E989
+E9A9AA E98B
+E9A9AB E98A
+E9AAA8 8D9C
+E9AAAD E98C
+E9AAB0 E98D
+E9AAB8 8A5B
+E9AABC E98E
+E9AB80 E98F
+E9AB84 9091
+E9AB8F E990
+E9AB91 E991
+E9AB93 E992
+E9AB94 E993
+E9AB98 8D82
+E9AB9E E994
+E9AB9F E995
+E9ABA2 E996
+E9ABA3 E997
+E9ABA6 E998
+E9ABAA 94AF
+E9ABAB E99A
+E9ABAD 9545
+E9ABAE E99B
+E9ABAF E999
+E9ABB1 E99D
+E9ABB4 E99C
+E9ABB7 E99E
+E9ABBB E99F
+E9AC86 E9A0
+E9AC98 E9A1
+E9AC9A E9A2
+E9AC9F E9A3
+E9ACA2 E9A4
+E9ACA3 E9A5
+E9ACA5 E9A6
+E9ACA7 E9A7
+E9ACA8 E9A8
+E9ACA9 E9A9
+E9ACAA E9AA
+E9ACAE E9AB
+E9ACAF E9AC
+E9ACB1 9F54
+E9ACB2 E9AD
+E9ACBB E2F6
+E9ACBC 8B53
+E9AD81 8A40
+E9AD82 8DB0
+E9AD83 E9AF
+E9AD84 E9AE
+E9AD85 96A3
+E9AD8D E9B1
+E9AD8E E9B2
+E9AD8F E9B0
+E9AD91 E9B3
+E9AD94 9682
+E9AD98 E9B4
+E9AD9A 8B9B
+E9ADAF 9844
+E9ADB4 E9B5
+E9AE83 E9B7
+E9AE8E 88BC
+E9AE91 E9B8
+E9AE92 95A9
+E9AE93 E9B6
+E9AE96 E9B9
+E9AE97 E9BA
+E9AE9F E9BB
+E9AEA0 E9BC
+E9AEA8 E9BD
+E9AEAA 968E
+E9AEAB 8E4C
+E9AEAD 8DF8
+E9AEAE 914E
+E9AEB4 E9BE
+E9AEB9 E9C1
+E9AF80 E9BF
+E9AF86 E9C2
+E9AF89 8CEF
+E9AF8A E9C0
+E9AF8F E9C3
+E9AF91 E9C4
+E9AF92 E9C5
+E9AF94 E9C9
+E9AF96 8E49
+E9AF9B 91E2
+E9AFA1 E9CA
+E9AFA2 E9C7
+E9AFA3 E9C6
+E9AFA4 E9C8
+E9AFA8 8C7E
+E9AFB0 E9CE
+E9AFB1 E9CD
+E9AFB2 E9CC
+E9AFB5 88B1
+E9B084 E9D8
+E9B086 E9D4
+E9B088 E9D5
+E9B089 E9D1
+E9B08A E9D7
+E9B08C E9D3
+E9B08D 8A82
+E9B090 986B
+E9B092 E9D6
+E9B093 E9D2
+E9B094 E9D0
+E9B095 E9CF
+E9B09B E9DA
+E9B0A1 E9DD
+E9B0A4 E9DC
+E9B0A5 E9DB
+E9B0AD 9568
+E9B0AE E9D9
+E9B0AF 88F1
+E9B0B0 E9DE
+E9B0B2 E9E0
+E9B0B9 8A8F
+E9B0BA E9CB
+E9B0BB 8956
+E9B0BE E9E2
+E9B186 E9E1
+E9B187 E9DF
+E9B188 924C
+E9B192 9690
+E9B197 97D8
+E9B19A E9E3
+E9B1A0 E9E4
+E9B1A7 E9E5
+E9B1B6 E9E6
+E9B1B8 E9E7
+E9B3A5 92B9
+E9B3A7 E9E8
+E9B3A9 94B5
+E9B3AB E9ED
+E9B3AC E9E9
+E9B3B0 E9EA
+E9B3B3 9650
+E9B3B4 96C2
+E9B3B6 93CE
+E9B483 E9EE
+E9B486 E9EF
+E9B487 93BC
+E9B488 E9EC
+E9B489 E9EB
+E9B48E 89A8
+E9B492 E9F7
+E9B495 E9F6
+E9B49B 8995
+E9B49F E9F4
+E9B4A3 E9F3
+E9B4A6 E9F1
+E9B4A8 8A9B
+E9B4AA E9F0
+E9B4AB 8EB0
+E9B4AC 89A7
+E9B4BB 8D83
+E9B4BE E9FA
+E9B4BF E9F9
+E9B581 E9F8
+E9B584 E9F5
+E9B586 E9FB
+E9B588 E9FC
+E9B590 EA44
+E9B591 EA43
+E9B599 EA45
+E9B59C 894C
+E9B59D EA40
+E9B59E EA41
+E9B5A0 8D94
+E9B5A1 96B7
+E9B5A4 EA42
+E9B5AC 9651
+E9B5AF EA4A
+E9B5B2 EA46
+E9B5BA EA4B
+E9B687 EA48
+E9B689 EA47
+E9B68F 8C7B
+E9B69A EA4C
+E9B6A4 EA4D
+E9B6A9 EA4E
+E9B6AB EA49
+E9B6AF E9F2
+E9B6B2 EA4F
+E9B6B4 92DF
+E9B6B8 EA53
+E9B6BA EA54
+E9B6BB EA52
+E9B781 EA51
+E9B782 EA57
+E9B784 EA50
+E9B786 EA55
+E9B78F EA56
+E9B793 EA59
+E9B799 EA58
+E9B7A6 EA5B
+E9B7AD EA5C
+E9B7AF EA5D
+E9B7B2 9868
+E9B7B8 EA5A
+E9B7B9 91E9
+E9B7BA 8DEB
+E9B7BD EA5E
+E9B89A EA5F
+E9B89B EA60
+E9B89E EA61
+E9B9B5 EA62
+E9B9B8 8CB2
+E9B9B9 EA63
+E9B9BD EA64
+E9B9BF 8EAD
+E9BA81 EA65
+E9BA88 EA66
+E9BA8B EA67
+E9BA8C EA68
+E9BA91 EA6B
+E9BA92 EA69
+E9BA93 985B
+E9BA95 EA6A
+E9BA97 97ED
+E9BA9D EA6C
+E9BA9F 97D9
+E9BAA5 EA6D
+E9BAA6 949E
+E9BAA9 EA6E
+E9BAAA EA70
+E9BAAD EA71
+E9BAB8 EA6F
+E9BAB9 8D8D
+E9BABA 96CB
+E9BABB 9683
+E9BABC 9BF5
+E9BABE 9F80
+E9BABF 969B
+E9BB84 89A9
+E9BB8C EA73
+E9BB8D 8B6F
+E9BB8E EA74
+E9BB8F EA75
+E9BB90 EA76
+E9BB92 8D95
+E9BB94 EA77
+E9BB98 E0D2
+E9BB99 96D9
+E9BB9B 91E1
+E9BB9C EA78
+E9BB9D EA7A
+E9BB9E EA79
+E9BBA0 EA7B
+E9BBA5 EA7C
+E9BBA8 EA7D
+E9BBAF EA7E
+E9BBB4 EA80
+E9BBB6 EA81
+E9BBB7 EA82
+E9BBB9 EA83
+E9BBBB EA84
+E9BBBC EA85
+E9BBBD EA86
+E9BC87 EA87
+E9BC88 EA88
+E9BC8E 9343
+E9BC93 8CDB
+E9BC95 EA8A
+E9BCA0 916C
+E9BCA1 EA8B
+E9BCAC EA8C
+E9BCBB 9540
+E9BCBE EA8D
+E9BD8A EA8E
+E9BD8B E256
+E9BD8E E6D8
+E9BD8F E8EB
+E9BD92 EA8F
+E9BD94 EA90
+E9BD9F EA92
+E9BDA0 EA93
+E9BDA1 EA94
+E9BDA2 97EE
+E9BDA3 EA91
+E9BDA6 EA95
+E9BDA7 EA96
+E9BDAA EA98
+E9BDAC EA97
+E9BDB2 EA9A
+E9BDB6 EA9B
+E9BDB7 EA99
+E9BE8D 97B4
+E9BE95 EA9C
+E9BE9C EA9D
+E9BE9D E273
+E9BEA0 EA9E
+EFBC81 8149
+EFBC83 8194
+EFBC84 8190
+EFBC85 8193
+EFBC86 8195
+EFBC88 8169
+EFBC89 816A
+EFBC8A 8196
+EFBC8B 817B
+EFBC8C 8143
+EFBC8E 8144
+EFBC8F 815E
+EFBC90 824F
+EFBC91 8250
+EFBC92 8251
+EFBC93 8252
+EFBC94 8253
+EFBC95 8254
+EFBC96 8255
+EFBC97 8256
+EFBC98 8257
+EFBC99 8258
+EFBC9A 8146
+EFBC9B 8147
+EFBC9C 8183
+EFBC9D 8181
+EFBC9E 8184
+EFBC9F 8148
+EFBCA0 8197
+EFBCA1 8260
+EFBCA2 8261
+EFBCA3 8262
+EFBCA4 8263
+EFBCA5 8264
+EFBCA6 8265
+EFBCA7 8266
+EFBCA8 8267
+EFBCA9 8268
+EFBCAA 8269
+EFBCAB 826A
+EFBCAC 826B
+EFBCAD 826C
+EFBCAE 826D
+EFBCAF 826E
+EFBCB0 826F
+EFBCB1 8270
+EFBCB2 8271
+EFBCB3 8272
+EFBCB4 8273
+EFBCB5 8274
+EFBCB6 8275
+EFBCB7 8276
+EFBCB8 8277
+EFBCB9 8278
+EFBCBA 8279
+EFBCBB 816D
+EFBCBD 816E
+EFBCBE 814F
+EFBCBF 8151
+EFBD80 814D
+EFBD81 8281
+EFBD82 8282
+EFBD83 8283
+EFBD84 8284
+EFBD85 8285
+EFBD86 8286
+EFBD87 8287
+EFBD88 8288
+EFBD89 8289
+EFBD8A 828A
+EFBD8B 828B
+EFBD8C 828C
+EFBD8D 828D
+EFBD8E 828E
+EFBD8F 828F
+EFBD90 8290
+EFBD91 8291
+EFBD92 8292
+EFBD93 8293
+EFBD94 8294
+EFBD95 8295
+EFBD96 8296
+EFBD97 8297
+EFBD98 8298
+EFBD99 8299
+EFBD9A 829A
+EFBD9B 816F
+EFBD9C 8162
+EFBD9D 8170
+EFBDA1 A1
+EFBDA2 A2
+EFBDA3 A3
+EFBDA4 A4
+EFBDA5 A5
+EFBDA6 A6
+EFBDA7 A7
+EFBDA8 A8
+EFBDA9 A9
+EFBDAA AA
+EFBDAB AB
+EFBDAC AC
+EFBDAD AD
+EFBDAE AE
+EFBDAF AF
+EFBDB0 B0
+EFBDB1 B1
+EFBDB2 B2
+EFBDB3 B3
+EFBDB4 B4
+EFBDB5 B5
+EFBDB6 B6
+EFBDB7 B7
+EFBDB8 B8
+EFBDB9 B9
+EFBDBA BA
+EFBDBB BB
+EFBDBC BC
+EFBDBD BD
+EFBDBE BE
+EFBDBF BF
+EFBE80 C0
+EFBE81 C1
+EFBE82 C2
+EFBE83 C3
+EFBE84 C4
+EFBE85 C5
+EFBE86 C6
+EFBE87 C7
+EFBE88 C8
+EFBE89 C9
+EFBE8A CA
+EFBE8B CB
+EFBE8C CC
+EFBE8D CD
+EFBE8E CE
+EFBE8F CF
+EFBE90 D0
+EFBE91 D1
+EFBE92 D2
+EFBE93 D3
+EFBE94 D4
+EFBE95 D5
+EFBE96 D6
+EFBE97 D7
+EFBE98 D8
+EFBE99 D9
+EFBE9A DA
+EFBE9B DB
+EFBE9C DC
+EFBE9D DD
+EFBE9E DE
+EFBE9F DF
+EFBFA3 8150
+EFBFA5 818F
DROP TABLE t1;
#
# End of 5.5 tests
diff --git a/mysql-test/r/ctype_ucs.result b/mysql-test/r/ctype_ucs.result
index abb21b7cee7..533dfa4db34 100644
--- a/mysql-test/r/ctype_ucs.result
+++ b/mysql-test/r/ctype_ucs.result
@@ -982,12 +982,12 @@ ALTER TABLE t2 ADD a int NOT NULL AFTER status;
DROP TABLE t1,t2;
select password(name) from bug20536;
password(name)
-????????????????????
-????????????????????
+*286C12C0F32248BD65B30EE65F3ECFB2AA3F7849
+*947A5674312754578F132655C74A11533B105FF6
select old_password(name) from bug20536;
old_password(name)
-????????
-????????
+10e155cb44e2adb5
+14e500b131773991
select quote(name) from bug20536;
quote(name)
????????
@@ -1231,3 +1231,2573 @@ HEX(DAYNAME(19700101))
0427043504420432043504400433
SET character_set_connection=latin1;
End of 5.0 tests
+#
+# Start of 5.5 tests
+#
+SET NAMES latin1;
+SET collation_connection=ucs2_general_ci;
+#
+# Start of WL#2649 Number-to-string conversions
+#
+select hex(concat(1));
+hex(concat(1))
+0031
+create table t1 as select concat(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+0031
+drop table t1;
+select hex(concat(18446744073709551615));
+hex(concat(18446744073709551615))
+00310038003400340036003700340034003000370033003700300039003500350031003600310035
+create table t1 as select concat(18446744073709551615) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+00310038003400340036003700340034003000370033003700300039003500350031003600310035
+drop table t1;
+select hex(concat(1.1));
+hex(concat(1.1))
+0031002E0031
+create table t1 as select concat(1.1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1;
+hex(c1)
+0031002E0031
+drop table t1;
+select hex(concat('a', 1+2)), charset(concat(1+2));
+hex(concat('a', 1+2)) charset(concat(1+2))
+00610033 ucs2
+create table t1 as select concat(1+2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1-2));
+hex(concat(1-2))
+002D0031
+create table t1 as select concat(1-2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1*2));
+hex(concat(1*2))
+0032
+create table t1 as select concat(1*2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1/2));
+hex(concat(1/2))
+0030002E0035003000300030
+create table t1 as select concat(1/2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 div 2));
+hex(concat(1 div 2))
+0030
+create table t1 as select concat(1 div 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1 % 2));
+hex(concat(1 % 2))
+0031
+create table t1 as select concat(1 % 2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-1));
+hex(concat(-1))
+002D0031
+create table t1 as select concat(-1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(-(1+2)));
+hex(concat(-(1+2)))
+002D0033
+create table t1 as select concat(-(1+2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1|2));
+hex(concat(1|2))
+0033
+create table t1 as select concat(1|2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(1&2));
+hex(concat(1&2))
+0030
+create table t1 as select concat(1&2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_count(12)));
+hex(concat(bit_count(12)))
+0032
+create table t1 as select concat(bit_count(12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2<<1));
+hex(concat(2<<1))
+0034
+create table t1 as select concat(2<<1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(2>>1));
+hex(concat(2>>1))
+0031
+create table t1 as select concat(2>>1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(~0));
+hex(concat(~0))
+00310038003400340036003700340034003000370033003700300039003500350031003600310035
+create table t1 as select concat(~0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(3^2));
+hex(concat(3^2))
+0031
+create table t1 as select concat(3^2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(abs(-2)));
+hex(concat(abs(-2)))
+0032
+create table t1 as select concat(abs(-2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(exp(2)),1));
+hex(left(concat(exp(2)),1))
+0037
+create table t1 as select concat(exp(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log(2)),1));
+hex(left(concat(log(2)),1))
+0030
+create table t1 as select concat(log(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log2(2)),1));
+hex(left(concat(log2(2)),1))
+0031
+create table t1 as select concat(log2(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(log10(2)),1));
+hex(left(concat(log10(2)),1))
+0030
+create table t1 as select concat(log10(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sqrt(2)),1));
+hex(left(concat(sqrt(2)),1))
+0031
+create table t1 as select concat(sqrt(2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(pow(2,2)),1));
+hex(left(concat(pow(2,2)),1))
+0034
+create table t1 as select concat(pow(2,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(acos(0.5)),1));
+hex(left(concat(acos(0.5)),1))
+0031
+create table t1 as select concat(acos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(asin(0.5)),1));
+hex(left(concat(asin(0.5)),1))
+0030
+create table t1 as select concat(asin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(atan(0.5)),1));
+hex(left(concat(atan(0.5)),1))
+0030
+create table t1 as select concat(atan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(cos(0.5)),1));
+hex(left(concat(cos(0.5)),1))
+0030
+create table t1 as select concat(cos(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(sin(0.5)),1));
+hex(left(concat(sin(0.5)),1))
+0030
+create table t1 as select concat(sin(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(tan(0.5)),1));
+hex(left(concat(tan(0.5)),1))
+0030
+create table t1 as select concat(tan(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(degrees(0)));
+hex(concat(degrees(0)))
+0030
+create table t1 as select concat(degrees(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(radians(0)));
+hex(concat(radians(0)))
+0030
+create table t1 as select concat(radians(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ceiling(0.5)));
+hex(concat(ceiling(0.5)))
+0031
+create table t1 as select concat(ceiling(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(floor(0.5)));
+hex(concat(floor(0.5)))
+0030
+create table t1 as select concat(floor(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(round(0.5)));
+hex(concat(round(0.5)))
+0031
+create table t1 as select concat(round(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sign(0.5)));
+hex(concat(sign(0.5)))
+0031
+create table t1 as select concat(sign(0.5)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(rand()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(length('a')));
+hex(concat(length('a')))
+0032
+create table t1 as select concat(length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(char_length('a')));
+hex(concat(char_length('a')))
+0031
+create table t1 as select concat(char_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(bit_length('a')));
+hex(concat(bit_length('a')))
+00310036
+create table t1 as select concat(bit_length('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coercibility('a')));
+hex(concat(coercibility('a')))
+0034
+create table t1 as select concat(coercibility('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(locate('a','a')));
+hex(concat(locate('a','a')))
+0031
+create table t1 as select concat(locate('a','a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(field('c','a','b','c')));
+hex(concat(field('c','a','b','c')))
+0033
+create table t1 as select concat(field('c','a','b','c')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ascii(61)));
+hex(concat(ascii(61)))
+00350034
+create table t1 as select concat(ascii(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ord(61)));
+hex(concat(ord(61)))
+00350034
+create table t1 as select concat(ord(61)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(find_in_set('b','a,b,c,d')));
+hex(concat(find_in_set('b','a,b,c,d')))
+0032
+create table t1 as select concat(find_in_set('b','a,b,c,d')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select md5('a'), hex(md5('a'));
+md5('a') hex(md5('a'))
+760f753576f2955b0074758acb4d5fa6 00370036003000660037003500330035003700360066003200390035003500620030003000370034003700350038006100630062003400640035006600610036
+create table t1 as select md5('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(32) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select old_password('a'), hex(old_password('a'));
+old_password('a') hex(old_password('a'))
+0705298948d1f92f 0030003700300035003200390038003900340038006400310066003900320066
+create table t1 as select old_password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(16) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select password('a'), hex(password('a'));
+password('a') hex(password('a'))
+*9A48A662559C49521B25C43077059DD109FBD84A 002A0039004100340038004100360036003200350035003900430034003900350032003100420032003500430034003300300037003700300035003900440044003100300039004600420044003800340041
+create table t1 as select password('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(41) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha('a'), hex(sha('a'));
+sha('a') hex(sha('a'))
+3106600e0327ca77371f2526df794ed84322585c 0033003100300036003600300030006500300033003200370063006100370037003300370031006600320035003200360064006600370039003400650064003800340033003200320035003800350063
+create table t1 as select sha('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select sha1('a'), hex(sha1('a'));
+sha1('a') hex(sha1('a'))
+3106600e0327ca77371f2526df794ed84322585c 0033003100300036003600300030006500300033003200370063006100370037003300370031006600320035003200360064006600370039003400650064003800340033003200320035003800350063
+create table t1 as select sha1('a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(40) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('-1' as signed)));
+hex(concat(cast('-1' as signed)))
+002D0031
+create table t1 as select concat(cast('-1' as signed)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('1' as unsigned)));
+hex(concat(cast('1' as unsigned)))
+0031
+create table t1 as select concat(cast('1' as unsigned)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast(1/2 as decimal(5,5))));
+hex(concat(cast(1/2 as decimal(5,5))))
+0030002E00350030003000300030
+create table t1 as select concat(cast(1/2 as decimal(5,5))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(7) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as date)));
+hex(concat(cast('2001-01-02 03:04:05' as date)))
+0032003000300031002D00300031002D00300032
+create table t1 as select concat(cast('2001-01-02 03:04:05' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02
+drop table t1;
+select hex(concat(cast('2001-01-02 03:04:05' as time)));
+hex(concat(cast('2001-01-02 03:04:05' as time)))
+00300033003A00300034003A00300035
+create table t1 as select concat(cast('2001-01-02 03:04:05' as time)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+03:04:05
+drop table t1;
+select hex(concat(cast('2001-01-02' as datetime)));
+hex(concat(cast('2001-01-02' as datetime)))
+0032003000300031002D00300031002D00300032002000300030003A00300030003A00300030
+create table t1 as select concat(cast('2001-01-02' as datetime)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2001-01-02 00:00:00
+drop table t1;
+select hex(concat(least(1,2)));
+hex(concat(least(1,2)))
+0031
+create table t1 as select concat(least(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(greatest(1,2)));
+hex(concat(greatest(1,2)))
+0032
+create table t1 as select concat(greatest(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(case when 11 then 22 else 33 end));
+hex(concat(case when 11 then 22 else 33 end))
+00320032
+create table t1 as select concat(case when 11 then 22 else 33 end) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(coalesce(1,2)));
+hex(concat(coalesce(1,2)))
+0031
+create table t1 as select concat(coalesce(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat_ws(1,2,3));
+hex(concat_ws(1,2,3))
+003200310033
+create table t1 as select concat_ws(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(group_concat(1,2,3));
+hex(group_concat(1,2,3))
+003100320033
+create table t1 as select group_concat(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(512) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select 1 as c1 union select 'a';
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(c1) from t1 order by c1;
+hex(c1)
+0031
+0061
+drop table t1;
+create table t1 as select concat(last_insert_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(benchmark(0,0)));
+hex(concat(benchmark(0,0)))
+0030
+create table t1 as select concat(benchmark(0,0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sleep(0)));
+hex(concat(sleep(0)))
+0030
+create table t1 as select concat(sleep(0)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(is_free_lock('xxxx')));
+hex(concat(is_free_lock('xxxx')))
+0031
+create table t1 as select concat(is_free_lock('xxxx')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(is_used_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(release_lock('a')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(crc32('')));
+hex(concat(crc32('')))
+0030
+create table t1 as select concat(crc32('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(uncompressed_length('')));
+hex(concat(uncompressed_length('')))
+0030
+create table t1 as select concat(uncompressed_length('')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(connection_id()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_aton('127.1.1.1')));
+hex(concat(inet_aton('127.1.1.1')))
+0032003100330030003700370032003200320035
+create table t1 as select concat(inet_aton('127.1.1.1')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(inet_ntoa(2130772225)));
+hex(concat(inet_ntoa(2130772225)))
+003100320037002E0031002E0031002E0031
+create table t1 as select concat(inet_ntoa(2130772225)) as c1;
+select * from t1;
+c1
+127.1.1.1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(31) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(row_count()));
+hex(concat(row_count()))
+002D0031
+create table t1 as select concat(row_count()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(found_rows()));
+hex(concat(found_rows()))
+0030
+create table t1 as select concat(found_rows()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid_short()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(uuid()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(36) CHARACTER SET utf8 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select coercibility(uuid()), coercibility(cast('a' as char character set latin1));
+coercibility(uuid()) coercibility(cast('a' as char character set latin1))
+4 2
+select charset(concat(uuid(), cast('a' as char character set latin1)));
+charset(concat(uuid(), cast('a' as char character set latin1)))
+latin1
+create table t1 as select concat(uuid(), cast('a' as char character set latin1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(37) NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(master_pos_wait('non-existent',0,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1));
+hex(concat(@a1:=1))
+0031
+create table t1 as select concat(@a2:=2) as c1, @a3:=3 as c2;
+select hex(c1) from t1;
+hex(c1)
+0032
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT '',
+ `c2` int(1) NOT NULL DEFAULT '0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1;
+select hex(concat(@a2));
+hex(concat(@a2))
+0031
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+0031
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET ucs2 DEFAULT NULL,
+ `c2` bigint(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=sqrt(1)));
+hex(concat(@a1:=sqrt(1)))
+0031
+create table t1 as select concat(@a2:=sqrt(1)) as c1, @a3:=sqrt(1) as c2;
+select hex(c1) from t1;
+hex(c1)
+0031
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=sqrt(1);
+select hex(concat(@a2));
+hex(concat(@a2))
+0031
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+0031
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL,
+ `c2` double DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@a1:=1.1));
+hex(concat(@a1:=1.1))
+0031002E0031
+create table t1 as select concat(@a2:=1.1) as c1, @a3:=1.1 as c2;
+select hex(c1) from t1;
+hex(c1)
+0031002E0031
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT '',
+ `c2` decimal(2,1) NOT NULL DEFAULT '0.0'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+set @a2=1.1;
+select hex(concat(@a2));
+hex(concat(@a2))
+0031002E0031
+create table t1 as select concat(@a2) as c1, @a2 as c2;
+select hex(c1) from t1;
+hex(c1)
+0031002E0031
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(83) CHARACTER SET ucs2 DEFAULT NULL,
+ `c2` decimal(65,30) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(@@ft_max_word_len));
+hex(concat(@@ft_max_word_len))
+00380034
+create table t1 as select concat(@@ft_max_word_len) as c1;
+select hex(c1) from t1;
+hex(c1)
+00380034
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS TRUE));
+hex(concat('a'='a' IS TRUE))
+0031
+create table t1 as select concat('a'='a' IS TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a'='a' IS NOT TRUE));
+hex(concat('a'='a' IS NOT TRUE))
+0030
+create table t1 as select concat('a'='a' IS NOT TRUE) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NOT 'a'='a'));
+hex(concat(NOT 'a'='a'))
+0030
+create table t1 as select concat(NOT 'a'='a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NULL));
+hex(concat('a' IS NULL))
+0030
+create table t1 as select concat('a' IS NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' IS NOT NULL));
+hex(concat('a' IS NOT NULL))
+0031
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' rlike 'a'));
+hex(concat('a' rlike 'a'))
+0031
+create table t1 as select concat('a' IS NOT NULL) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(strcmp('a','b')));
+hex(concat(strcmp('a','b')))
+002D0031
+create table t1 as select concat(strcmp('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' like 'a'));
+hex(concat('a' like 'a'))
+0031
+create table t1 as select concat('a' like 'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' between 'b' and 'c'));
+hex(concat('a' between 'b' and 'c'))
+0030
+create table t1 as select concat('a' between 'b' and 'c') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat('a' in ('a','b')));
+hex(concat('a' in ('a','b')))
+0031
+create table t1 as select concat('a' in ('a','b')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(interval(23, 1, 15, 17, 30, 44, 200)));
+hex(concat(interval(23, 1, 15, 17, 30, 44, 200)))
+0033
+create table t1 as select concat(interval(23, 1, 15, 17, 30, 44, 200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(10), fulltext key(a));
+insert into t1 values ('a');
+select hex(concat(match (a) against ('a'))) from t1;
+hex(concat(match (a) against ('a')))
+0030
+create table t2 as select concat(match (a) against ('a')) as a from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+select hex(ifnull(1,'a'));
+hex(ifnull(1,'a'))
+0031
+create table t1 as select ifnull(1,'a') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1,1)));
+hex(concat(ifnull(1,1)))
+0031
+create table t1 as select concat(ifnull(1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(ifnull(1.1,1.1)));
+hex(concat(ifnull(1.1,1.1)))
+0031002E0031
+create table t1 as select concat(ifnull(1.1,1.1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,'b',1));
+hex(if(1,'b',1))
+0062
+create table t1 as select if(1,'b',1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(if(1,1,'b'));
+hex(if(1,1,'b'))
+0031
+create table t1 as select if(1,1,'b') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(if(1,1,1)));
+hex(concat(if(1,1,1)))
+0031
+create table t1 as select concat(if(1,1,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(nullif(1,2)));
+hex(concat(nullif(1,2)))
+0031
+create table t1 as select concat(nullif(1,2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(Dimension(GeomFromText('LINESTRING(0 0,10 10)'))))
+0031
+create table t1 as select concat(Dimension(GeomFromText('LINSTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+0032
+create table t1 as select concat(NumGeometries(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))));
+hex(concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))))
+0032
+create table t1 as select concat(NumPoints(MultiPointFromText('LINESTRING(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))));
+hex(concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))))
+0030
+create table t1 as select concat(SRID(MultiPointFromText('MULTIPOINT(0 0,10 10)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))));
+hex(concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))))
+0031
+create table t1 as select concat(NumInteriorRings(PolygonFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))));
+hex(concat(IsEmpty(GeomFromText('POINT(1 1)'))))
+0030
+create table t1 as select concat(IsEmpty(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsSimple(GeomFromText('POINT(1 1)'))));
+hex(concat(IsSimple(GeomFromText('POINT(1 1)'))))
+0030
+create table t1 as select concat(IsSimple(GeomFromText('Point(1 1)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))));
+hex(concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))))
+0030
+create table t1 as select concat(IsClosed(GeomFromText('LineString(1 1,2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))));
+hex(concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))))
+0031
+create table t1 as select concat(Equals(GeomFromText('Point(1 1)'),GeomFromText('Point(1 1)'))) as c1;
+drop table t1;
+select hex(concat(x(GeomFromText('Point(1 2)'))));
+hex(concat(x(GeomFromText('Point(1 2)'))))
+0031
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(y(GeomFromText('Point(1 2)'))));
+hex(concat(y(GeomFromText('Point(1 2)'))))
+0032
+create table t1 as select concat(x(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))));
+hex(concat(GLength(GeomFromText('LineString(1 2,2 2)'))))
+0031
+create table t1 as select concat(GLength(GeomFromText('LineString(1 2, 2 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))));
+hex(concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))))
+0031
+create table t1 as select concat(Area(GeomFromText('Polygon((0 0,1 0,1 1,0 1,0 0))'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(GeometryType(GeomFromText('Point(1 2)'))));
+hex(concat(GeometryType(GeomFromText('Point(1 2)'))))
+0050004F0049004E0054
+create table t1 as select concat(GeometryType(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(AsText(GeomFromText('Point(1 2)'))));
+hex(concat(AsText(GeomFromText('Point(1 2)'))))
+0050004F0049004E005400280031002000320029
+create table t1 as select concat(AsText(GeomFromText('Point(1 2)'))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` longtext CHARACTER SET ucs2
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_add(200902, 2)));
+hex(concat(period_add(200902, 2)))
+003200300030003900300034
+create table t1 as select concat(period_add(200902, 2)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(period_diff(200902, 200802)));
+hex(concat(period_diff(200902, 200802)))
+00310032
+create table t1 as select concat(period_add(200902, 200802)) as c1;
+Warnings:
+Warning 1265 Data truncated for column 'c1' at row 1
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(to_days(20090224)));
+hex(concat(to_days(20090224)))
+003700330033003800320037
+create table t1 as select concat(to_days(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofmonth(20090224)));
+hex(concat(dayofmonth(20090224)))
+00320034
+create table t1 as select concat(dayofmonth(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofyear(20090224)));
+hex(concat(dayofyear(20090224)))
+00350035
+create table t1 as select concat(dayofyear(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(hour('10:11:12')));
+hex(concat(hour('10:11:12')))
+00310030
+create table t1 as select concat(hour('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(minute('10:11:12')));
+hex(concat(minute('10:11:12')))
+00310031
+create table t1 as select concat(minute('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(second('10:11:12')));
+hex(concat(second('10:11:12')))
+00310032
+create table t1 as select concat(second('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(quarter(20090224)));
+hex(concat(quarter(20090224)))
+0031
+create table t1 as select concat(quarter(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(week(20090224)));
+hex(concat(week(20090224)))
+0038
+create table t1 as select concat(week(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(yearweek(20090224)));
+hex(concat(yearweek(20090224)))
+003200300030003900300038
+create table t1 as select concat(yearweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(year(20090224)));
+hex(concat(year(20090224)))
+0032003000300039
+create table t1 as select concat(year(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(weekday(20090224)));
+hex(concat(weekday(20090224)))
+0031
+create table t1 as select concat(weekday(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(dayofweek(20090224)));
+hex(concat(dayofweek(20090224)))
+0033
+create table t1 as select concat(dayofweek(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(unix_timestamp(20090224)));
+hex(concat(unix_timestamp(20090224)))
+0031003200330035003400320032003800300030
+create table t1 as select concat(unix_timestamp(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(time_to_sec('10:11:12')));
+hex(concat(time_to_sec('10:11:12')))
+00330036003600370032
+create table t1 as select concat(time_to_sec('10:11:12')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(extract(year from 20090702)));
+hex(concat(extract(year from 20090702)))
+0032003000300039
+create table t1 as select concat(extract(year from 20090702)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(microsecond('12:00:00.123456')));
+hex(concat(microsecond('12:00:00.123456')))
+003100320033003400350036
+create table t1 as select concat(microsecond('12:00:00.123456')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(21) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(month(20090224)));
+hex(concat(month(20090224)))
+0032
+create table t1 as select concat(month(20090224)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(last_day('2003-02-05')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2003-02-28 0032003000300033002D00300032002D00320038
+drop table t1;
+create table t1 as select concat(from_days(730669)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2000-07-03 0032003000300030002D00300037002D00300033
+drop table t1;
+create table t1 as select concat(curdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_date()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(curtime()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat('a',20) as c1 limit 0;
+set timestamp=1216359724;
+insert into t1 values (current_date);
+insert into t1 values (current_time);
+select c1, hex(c1) from t1;
+c1 hex(c1)
+2008-07-18 0032003000300038002D00300037002D00310038
+08:42:04 00300038003A00340032003A00300034
+drop table t1;
+create table t1 as select concat(utc_time()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(8) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(sec_to_time(2378)));
+hex(concat(sec_to_time(2378)))
+00300030003A00330039003A00330038
+create table t1 as select concat(sec_to_time(2378)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')));
+hex(concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')))
+00320034003A00300030003A00300030
+create table t1 as select concat(timediff('2001-01-02 00:00:00', '2001-01-01 00:00:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(maketime(10,11,12)));
+hex(concat(maketime(10,11,12)))
+00310030003A00310031003A00310032
+create table t1 as select concat(maketime(10,11,12)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(23) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(get_format(DATE,'USA'));
+hex(get_format(DATE,'USA'))
+0025006D002E00250064002E00250059
+create table t1 as select get_format(DATE,'USA') as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(17) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(concat(from_unixtime(1111885200)),4));
+hex(left(concat(from_unixtime(1111885200)),4))
+0032003000300035
+create table t1 as select concat(from_unixtime(1111885200)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')));
+hex(concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')))
+0032003000300033002D00310032002D00330031002000320030003A00300030003A00300030
+create table t1 as select concat(convert_tz('2004-01-01 12:00:00','+10:00','-6:00')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)));
+hex(concat(date_add('2004-01-01 12:00:00', interval 1 day)))
+0032003000300034002D00300031002D00300032002000310032003A00300030003A00300030
+create table t1 as select concat(date_add('2004-01-01 12:00:00', interval 1 day)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2004-01-02 12:00:00
+drop table t1;
+select hex(concat(makedate(2009,1)));
+hex(concat(makedate(2009,1)))
+0032003000300039002D00300031002D00300031
+create table t1 as select concat(makedate(2009,1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+c1
+2009-01-01
+drop table t1;
+create table t1 as select concat(now()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(utc_timestamp()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(sysdate()) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(19) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(addtime('00:00:00','11:22:33')));
+hex(concat(addtime('00:00:00','11:22:33')))
+00310031003A00320032003A00330033
+create table t1 as select concat(addtime('00:00:00','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(concat(subtime('23:59:59','11:22:33')));
+hex(concat(subtime('23:59:59','11:22:33')))
+00310032003A00330037003A00320036
+create table t1 as select concat(subtime('23:59:59','11:22:33')) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(29) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(elt(1,2,3));
+hex(elt(1,2,3))
+0032
+create table t1 as select elt(1,2,3) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(export_set(1,2,3,4,2));
+hex(export_set(1,2,3,4,2))
+003200340033
+create table t1 as select export_set(1,2,3,4,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(127) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(insert(1133,3,0,22));
+hex(insert(1133,3,0,22))
+003100310032003200330033
+create table t1 as select insert(1133,3,0,22) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(6) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lcase(123));
+hex(lcase(123))
+003100320033
+create table t1 as select lcase(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(left(123,1));
+hex(left(123,1))
+0031
+create table t1 as select left(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lower(123));
+hex(lower(123))
+003100320033
+create table t1 as select lower(123) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(3) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(lpad(1,2,0));
+hex(lpad(1,2,0))
+00300031
+create table t1 as select lpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ltrim(1));
+hex(ltrim(1))
+0031
+create table t1 as select ltrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(mid(1,1,1));
+hex(mid(1,1,1))
+0031
+create table t1 as select mid(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(repeat(1,2));
+hex(repeat(1,2))
+00310031
+create table t1 as select repeat(1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(replace(1,1,2));
+hex(replace(1,1,2))
+0032
+create table t1 as select replace(1,1,2) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(reverse(12));
+hex(reverse(12))
+00320031
+create table t1 as select reverse(12) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(right(123,1));
+hex(right(123,1))
+0033
+create table t1 as select right(123,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rpad(1,2,0));
+hex(rpad(1,2,0))
+00310030
+create table t1 as select rpad(1,2,0) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(2) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(rtrim(1));
+hex(rtrim(1))
+0031
+create table t1 as select rtrim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(soundex(1));
+hex(soundex(1))
+
+create table t1 as select soundex(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(4) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(substring(1,1,1));
+hex(substring(1,1,1))
+0031
+create table t1 as select substring(1,1,1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(trim(1));
+hex(trim(1))
+0031
+create table t1 as select trim(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(ucase(1));
+hex(ucase(1))
+0031
+create table t1 as select ucase(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+select hex(upper(1));
+hex(upper(1))
+0031
+create table t1 as select upper(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(1) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select repeat(' ', 64) as a limit 0;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(64) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("1.1"), ("2.1");
+select a, hex(a) from t1;
+a hex(a)
+1.1 0031002E0031
+2.1 0032002E0031
+update t1 set a= a + 0.1;
+select a, hex(a) from t1;
+a hex(a)
+1.2000000000000002 0031002E0032003000300030003000300030003000300030003000300030003000300032
+2.2 0032002E0032
+drop table t1;
+create table t1 (a tinyint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+003000300031 001
+003000310030 010
+003100300030 100
+drop table t1;
+create table t1 (a tinyint(4) zerofill);
+insert into t1 values (1), (10), (100);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+0030003000300031 0001
+0030003000310030 0010
+0030003100300030 0100
+drop table t1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+select hex(concat(a)) from t1;
+hex(concat(a))
+003100320033002E00340035
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(6) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+00300030003000300031 00001
+00300030003000310030 00010
+00300030003100300030 00100
+00300031003000300030 01000
+00310030003000300030 10000
+drop table t1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(9) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+00300030003000300030003000300031 00000001
+00300030003000300030003000310030 00000010
+00300030003000300030003100300030 00000100
+00300030003000300031003000300030 00001000
+00300030003000310030003000300030 00010000
+drop table t1;
+create table t1 (a int);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(11) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+0030003000300030003000300030003000300031 0000000001
+0030003000300030003000300030003000310030 0000000010
+0030003000300030003000300030003100300030 0000000100
+0030003000300030003000300031003000300030 0000001000
+0030003000300030003000310030003000300030 0000010000
+drop table t1;
+create table t1 (a bigint);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(20) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+00300030003000300030003000300030003000300030003000300030003000300030003000300031 00000000000000000001
+00300030003000300030003000300030003000300030003000300030003000300030003000310030 00000000000000000010
+00300030003000300030003000300030003000300030003000300030003000300030003100300030 00000000000000000100
+00300030003000300030003000300030003000300030003000300030003000300031003000300030 00000000000000001000
+00300030003000300030003000300030003000300030003000300030003000310030003000300030 00000000000000010000
+drop table t1;
+create table t1 (a float);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+003100320033002E003400350036
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(12) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+0030003000300030003000300030003000300031002E0031 0000000001.1
+0030003000300030003000300030003000310030002E0031 0000000010.1
+0030003000300030003000300030003100300030002E0031 0000000100.1
+0030003000300030003000300031003000300030002E0031 0000001000.1
+0030003000300030003000310030003000300030002E0031 0000010000.1
+drop table t1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select hex(concat(a)) from t1;
+hex(concat(a))
+003100320033002E003400350036
+select concat(a) from t1;
+concat(a)
+123.456
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(22) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+select hex(concat(a)), a from t1;
+hex(concat(a)) a
+00300030003000300030003000300030003000300030003000300030003000300030003000300031002E0031 00000000000000000001.1
+00300030003000300030003000300030003000300030003000300030003000300030003000310030002E0031 00000000000000000010.1
+00300030003000300030003000300030003000300030003000300030003000300030003100300030002E0031 00000000000000000100.1
+00300030003000300030003000300030003000300030003000300030003000300031003000300030002E0031 00000000000000001000.1
+00300030003000300030003000300030003000300030003000300030003000310030003000300030002E0031 00000000000000010000.1
+drop table t1;
+create table t1 (a year(2));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+00300031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(2) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a year);
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0032003000300031
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(4) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a bit(64));
+insert into t1 values (1);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0000000000000001
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varbinary(64) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+select hex(concat(a)) from t1;
+hex(concat(a))
+0030003000300030002D00300030002D00300030002000300030003A00300030003A00300030
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+0031003900380030002D00300032002D00300033002000300034003A00300035003A00300036
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+select concat(a) from t1;
+concat(a)
+0000-00-00 00:00:00
+2001-02-03 04:05:06
+1980-02-03 04:05:06
+2001-02-03 04:05:06
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) CHARACTER SET ucs2 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0032003000300031002D00300032002D00300033
+0032003000300031002D00300032002D00300033
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(10) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+select hex(concat(a)) from t1;
+hex(concat(a))
+00300030003A00300030003A00300031
+00300031003A00300032003A00300033
+select concat(a) from t1;
+concat(a)
+00:00:01
+01:02:03
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(8) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+select hex(concat(a)) from t1;
+hex(concat(a))
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+create table t2 as select concat(a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `concat(a)` varchar(19) CHARACTER SET ucs2 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1, t2;
+create table t1 (a tinyint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+0031
+drop table t1;
+drop view v1;
+create table t1 (a tinyint zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(3) YES NULL
+select hex(a) from v1;
+hex(a)
+003000300031
+003000310030
+003100300030
+drop table t1;
+drop view v1;
+create table t1 (a tinyint(30) zerofill);
+insert into t1 values (1), (10), (100);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(30) YES NULL
+select hex(a) from v1;
+hex(a)
+003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300031
+003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000310030
+003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003000300030003100300030
+drop table t1;
+drop view v1;
+create table t1 (a decimal(10,2));
+insert into t1 values (123.45);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+003100320033002E00340035
+drop table t1;
+drop view v1;
+create table t1 (a smallint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(6) YES NULL
+select hex(a) from v1;
+hex(a)
+0031
+drop table t1;
+drop view v1;
+create table t1 (a smallint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(5) YES NULL
+select hex(a) from v1;
+hex(a)
+00300030003000300031
+00300030003000310030
+00300030003100300030
+00300031003000300030
+00310030003000300030
+drop table t1;
+drop view v1;
+create table t1 (a mediumint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(9) YES NULL
+select hex(a) from v1;
+hex(a)
+0031
+drop table t1;
+drop view v1;
+create table t1 (a mediumint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+00300030003000300030003000300031
+00300030003000300030003000310030
+00300030003000300030003100300030
+00300030003000300031003000300030
+00300030003000310030003000300030
+drop table t1;
+drop view v1;
+create table t1 (a int);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(11) YES NULL
+select hex(a) from v1;
+hex(a)
+0031
+drop table t1;
+drop view v1;
+create table t1 (a int zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+0030003000300030003000300030003000300031
+0030003000300030003000300030003000310030
+0030003000300030003000300030003100300030
+0030003000300030003000300031003000300030
+0030003000300030003000310030003000300030
+drop table t1;
+drop view v1;
+create table t1 (a bigint);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+0031
+drop table t1;
+drop view v1;
+create table t1 (a bigint zerofill);
+insert into t1 values (1), (10), (100), (1000), (10000);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(20) YES NULL
+select hex(a) from v1;
+hex(a)
+00300030003000300030003000300030003000300030003000300030003000300030003000300031
+00300030003000300030003000300030003000300030003000300030003000300030003000310030
+00300030003000300030003000300030003000300030003000300030003000300030003100300030
+00300030003000300030003000300030003000300030003000300030003000300031003000300030
+00300030003000300030003000300030003000300030003000300030003000310030003000300030
+drop table t1;
+drop view v1;
+create table t1 (a float);
+insert into t1 values (123.456);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+003100320033002E003400350036
+drop table t1;
+drop view v1;
+create table t1 (a float zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(12) YES NULL
+select hex(a) from v1;
+hex(a)
+0030003000300030003000300030003000300031002E0031
+0030003000300030003000300030003000310030002E0031
+0030003000300030003000300030003100300030002E0031
+0030003000300030003000300031003000300030002E0031
+0030003000300030003000310030003000300030002E0031
+drop table t1;
+drop view v1;
+create table t1 (a double);
+insert into t1 values (123.456);
+select concat(a) from t1;
+concat(a)
+123.456
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+003100320033002E003400350036
+drop table t1;
+drop view v1;
+create table t1 (a double zerofill);
+insert into t1 values (1.1), (10.1), (100.1), (1000.1), (10000.1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(22) YES NULL
+select hex(a) from v1;
+hex(a)
+00300030003000300030003000300030003000300030003000300030003000300030003000300031002E0031
+00300030003000300030003000300030003000300030003000300030003000300030003000310030002E0031
+00300030003000300030003000300030003000300030003000300030003000300030003100300030002E0031
+00300030003000300030003000300030003000300030003000300030003000300031003000300030002E0031
+00300030003000300030003000300030003000300030003000300030003000310030003000300030002E0031
+drop table t1;
+drop view v1;
+create table t1 (a year(2));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(2) YES NULL
+select hex(a) from v1;
+hex(a)
+00300031
+drop table t1;
+drop view v1;
+create table t1 (a year);
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(4) YES NULL
+select hex(a) from v1;
+hex(a)
+0032003000300031
+drop table t1;
+drop view v1;
+create table t1 (a bit(64));
+insert into t1 values (1);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varbinary(64) YES NULL
+select hex(a) from v1;
+hex(a)
+0000000000000001
+drop table t1;
+drop view v1;
+create table t1 (a timestamp);
+insert into t1 values (0);
+insert into t1 values (20010203040506);
+insert into t1 values (19800203040506);
+insert into t1 values ('2001-02-03 04:05:06');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) NO
+select hex(a) from v1;
+hex(a)
+0030003000300030002D00300030002D00300030002000300030003A00300030003A00300030
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+0031003900380030002D00300032002D00300033002000300034003A00300035003A00300036
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+drop table t1;
+drop view v1;
+create table t1 (a date);
+insert into t1 values ('2001-02-03');
+insert into t1 values (20010203);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(10) YES NULL
+select hex(a) from v1;
+hex(a)
+0032003000300031002D00300032002D00300033
+0032003000300031002D00300032002D00300033
+drop table t1;
+drop view v1;
+create table t1 (a time);
+insert into t1 values (1);
+insert into t1 values ('01:02:03');
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(8) YES NULL
+select hex(a) from v1;
+hex(a)
+00300030003A00300030003A00300031
+00300031003A00300032003A00300033
+drop table t1;
+drop view v1;
+create table t1 (a datetime);
+insert into t1 values ('2001-02-03 04:05:06');
+insert into t1 values (20010203040506);
+create view v1(a) as select concat(a) from t1;
+show columns from v1;
+Field Type Null Key Default Extra
+a varchar(19) YES NULL
+select hex(a) from v1;
+hex(a)
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+0032003000300031002D00300032002D00300033002000300034003A00300035003A00300036
+drop table t1;
+drop view v1;
+create function f1 (par1 int) returns int
+begin
+return concat(par1);
+end|
+set @a= f1(1);
+select hex(@a);
+hex(@a)
+1
+select hex(concat(f1(1)));
+hex(concat(f1(1)))
+31
+create table t1 as select f1(1) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` int(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(1)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(11) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(1)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(11) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 decimal(18,2)) returns decimal(18,2)
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` decimal(18,2) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(20) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(20) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 float) returns float
+begin
+return concat(par1);
+end|
+set @a= f1(123.45);
+select hex(@a);
+hex(@a)
+7B
+select hex(concat(f1(123.45)));
+hex(concat(f1(123.45)))
+3132332E3435
+create table t1 as select f1(123.45) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` float DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(123.45)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(12) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(123.45)) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(12) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+create function f1 (par1 date) returns date
+begin
+return concat(par1);
+end|
+set @a= f1(cast('2001-01-02' as date));
+select hex(@a);
+hex(@a)
+323030312D30312D3032
+select hex(concat(f1(cast('2001-01-02' as date))));
+hex(concat(f1(cast('2001-01-02' as date))))
+323030312D30312D3032
+create table t1 as select f1(cast('2001-01-02' as date)) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` date DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c1` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+create view v1 as select concat(f1(cast('2001-01-02' as date))) as c1;
+show columns from v1;
+Field Type Null Key Default Extra
+c1 varchar(10) YES NULL
+drop table t1;
+drop view v1;
+drop function f1;
+#
+# End of WL#2649 Number-to-string conversions
+#
+SET NAMES latin1;
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_ujis.result b/mysql-test/r/ctype_ujis.result
index 1c4cfcd6ec5..946aa1c780e 100644
--- a/mysql-test/r/ctype_ujis.result
+++ b/mysql-test/r/ctype_ujis.result
@@ -2905,6 +2905,22003 @@ HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
code a
8FA9C3 ð
8FABB9 ǵ
+#
+# WL#3090 Japanese Character Set adjustments
+# Test sjis->Unicode conversion
+#
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+HEX(a) b
+8EA1 EFBDA1
+8EA2 EFBDA2
+8EA3 EFBDA3
+8EA4 EFBDA4
+8EA5 EFBDA5
+8EA6 EFBDA6
+8EA7 EFBDA7
+8EA8 EFBDA8
+8EA9 EFBDA9
+8EAA EFBDAA
+8EAB EFBDAB
+8EAC EFBDAC
+8EAD EFBDAD
+8EAE EFBDAE
+8EAF EFBDAF
+8EB0 EFBDB0
+8EB1 EFBDB1
+8EB2 EFBDB2
+8EB3 EFBDB3
+8EB4 EFBDB4
+8EB5 EFBDB5
+8EB6 EFBDB6
+8EB7 EFBDB7
+8EB8 EFBDB8
+8EB9 EFBDB9
+8EBA EFBDBA
+8EBB EFBDBB
+8EBC EFBDBC
+8EBD EFBDBD
+8EBE EFBDBE
+8EBF EFBDBF
+8EC0 EFBE80
+8EC1 EFBE81
+8EC2 EFBE82
+8EC3 EFBE83
+8EC4 EFBE84
+8EC5 EFBE85
+8EC6 EFBE86
+8EC7 EFBE87
+8EC8 EFBE88
+8EC9 EFBE89
+8ECA EFBE8A
+8ECB EFBE8B
+8ECC EFBE8C
+8ECD EFBE8D
+8ECE EFBE8E
+8ECF EFBE8F
+8ED0 EFBE90
+8ED1 EFBE91
+8ED2 EFBE92
+8ED3 EFBE93
+8ED4 EFBE94
+8ED5 EFBE95
+8ED6 EFBE96
+8ED7 EFBE97
+8ED8 EFBE98
+8ED9 EFBE99
+8EDA EFBE9A
+8EDB EFBE9B
+8EDC EFBE9C
+8EDD EFBE9D
+8EDE EFBE9E
+8EDF EFBE9F
+8FA2AF CB98
+8FA2B0 CB87
+8FA2B1 C2B8
+8FA2B2 CB99
+8FA2B3 CB9D
+8FA2B4 C2AF
+8FA2B5 CB9B
+8FA2B6 CB9A
+8FA2B7 7E
+8FA2B8 CE84
+8FA2B9 CE85
+8FA2C2 C2A1
+8FA2C3 C2A6
+8FA2C4 C2BF
+8FA2EB C2BA
+8FA2EC C2AA
+8FA2ED C2A9
+8FA2EE C2AE
+8FA2EF E284A2
+8FA2F0 C2A4
+8FA2F1 E28496
+8FA6E1 CE86
+8FA6E2 CE88
+8FA6E3 CE89
+8FA6E4 CE8A
+8FA6E5 CEAA
+8FA6E7 CE8C
+8FA6E9 CE8E
+8FA6EA CEAB
+8FA6EC CE8F
+8FA6F1 CEAC
+8FA6F2 CEAD
+8FA6F3 CEAE
+8FA6F4 CEAF
+8FA6F5 CF8A
+8FA6F6 CE90
+8FA6F7 CF8C
+8FA6F8 CF82
+8FA6F9 CF8D
+8FA6FA CF8B
+8FA6FB CEB0
+8FA6FC CF8E
+8FA7C2 D082
+8FA7C3 D083
+8FA7C4 D084
+8FA7C5 D085
+8FA7C6 D086
+8FA7C7 D087
+8FA7C8 D088
+8FA7C9 D089
+8FA7CA D08A
+8FA7CB D08B
+8FA7CC D08C
+8FA7CD D08E
+8FA7CE D08F
+8FA7F2 D192
+8FA7F3 D193
+8FA7F4 D194
+8FA7F5 D195
+8FA7F6 D196
+8FA7F7 D197
+8FA7F8 D198
+8FA7F9 D199
+8FA7FA D19A
+8FA7FB D19B
+8FA7FC D19C
+8FA7FD D19E
+8FA7FE D19F
+8FA9A1 C386
+8FA9A2 C490
+8FA9A4 C4A6
+8FA9A6 C4B2
+8FA9A8 C581
+8FA9A9 C4BF
+8FA9AB C58A
+8FA9AC C398
+8FA9AD C592
+8FA9AF C5A6
+8FA9B0 C39E
+8FA9C1 C3A6
+8FA9C2 C491
+8FA9C3 C3B0
+8FA9C4 C4A7
+8FA9C5 C4B1
+8FA9C6 C4B3
+8FA9C7 C4B8
+8FA9C8 C582
+8FA9C9 C580
+8FA9CA C589
+8FA9CB C58B
+8FA9CC C3B8
+8FA9CD C593
+8FA9CE C39F
+8FA9CF C5A7
+8FA9D0 C3BE
+8FAAA1 C381
+8FAAA2 C380
+8FAAA3 C384
+8FAAA4 C382
+8FAAA5 C482
+8FAAA6 C78D
+8FAAA7 C480
+8FAAA8 C484
+8FAAA9 C385
+8FAAAA C383
+8FAAAB C486
+8FAAAC C488
+8FAAAD C48C
+8FAAAE C387
+8FAAAF C48A
+8FAAB0 C48E
+8FAAB1 C389
+8FAAB2 C388
+8FAAB3 C38B
+8FAAB4 C38A
+8FAAB5 C49A
+8FAAB6 C496
+8FAAB7 C492
+8FAAB8 C498
+8FAABA C49C
+8FAABB C49E
+8FAABC C4A2
+8FAABD C4A0
+8FAABE C4A4
+8FAABF C38D
+8FAAC0 C38C
+8FAAC1 C38F
+8FAAC2 C38E
+8FAAC3 C78F
+8FAAC4 C4B0
+8FAAC5 C4AA
+8FAAC6 C4AE
+8FAAC7 C4A8
+8FAAC8 C4B4
+8FAAC9 C4B6
+8FAACA C4B9
+8FAACB C4BD
+8FAACC C4BB
+8FAACD C583
+8FAACE C587
+8FAACF C585
+8FAAD0 C391
+8FAAD1 C393
+8FAAD2 C392
+8FAAD3 C396
+8FAAD4 C394
+8FAAD5 C791
+8FAAD6 C590
+8FAAD7 C58C
+8FAAD8 C395
+8FAAD9 C594
+8FAADA C598
+8FAADB C596
+8FAADC C59A
+8FAADD C59C
+8FAADE C5A0
+8FAADF C59E
+8FAAE0 C5A4
+8FAAE1 C5A2
+8FAAE2 C39A
+8FAAE3 C399
+8FAAE4 C39C
+8FAAE5 C39B
+8FAAE6 C5AC
+8FAAE7 C793
+8FAAE8 C5B0
+8FAAE9 C5AA
+8FAAEA C5B2
+8FAAEB C5AE
+8FAAEC C5A8
+8FAAED C797
+8FAAEE C79B
+8FAAEF C799
+8FAAF0 C795
+8FAAF1 C5B4
+8FAAF2 C39D
+8FAAF3 C5B8
+8FAAF4 C5B6
+8FAAF5 C5B9
+8FAAF6 C5BD
+8FAAF7 C5BB
+8FABA1 C3A1
+8FABA2 C3A0
+8FABA3 C3A4
+8FABA4 C3A2
+8FABA5 C483
+8FABA6 C78E
+8FABA7 C481
+8FABA8 C485
+8FABA9 C3A5
+8FABAA C3A3
+8FABAB C487
+8FABAC C489
+8FABAD C48D
+8FABAE C3A7
+8FABAF C48B
+8FABB0 C48F
+8FABB1 C3A9
+8FABB2 C3A8
+8FABB3 C3AB
+8FABB4 C3AA
+8FABB5 C49B
+8FABB6 C497
+8FABB7 C493
+8FABB8 C499
+8FABB9 C7B5
+8FABBA C49D
+8FABBB C49F
+8FABBD C4A1
+8FABBE C4A5
+8FABBF C3AD
+8FABC0 C3AC
+8FABC1 C3AF
+8FABC2 C3AE
+8FABC3 C790
+8FABC5 C4AB
+8FABC6 C4AF
+8FABC7 C4A9
+8FABC8 C4B5
+8FABC9 C4B7
+8FABCA C4BA
+8FABCB C4BE
+8FABCC C4BC
+8FABCD C584
+8FABCE C588
+8FABCF C586
+8FABD0 C3B1
+8FABD1 C3B3
+8FABD2 C3B2
+8FABD3 C3B6
+8FABD4 C3B4
+8FABD5 C792
+8FABD6 C591
+8FABD7 C58D
+8FABD8 C3B5
+8FABD9 C595
+8FABDA C599
+8FABDB C597
+8FABDC C59B
+8FABDD C59D
+8FABDE C5A1
+8FABDF C59F
+8FABE0 C5A5
+8FABE1 C5A3
+8FABE2 C3BA
+8FABE3 C3B9
+8FABE4 C3BC
+8FABE5 C3BB
+8FABE6 C5AD
+8FABE7 C794
+8FABE8 C5B1
+8FABE9 C5AB
+8FABEA C5B3
+8FABEB C5AF
+8FABEC C5A9
+8FABED C798
+8FABEE C79C
+8FABEF C79A
+8FABF0 C796
+8FABF1 C5B5
+8FABF2 C3BD
+8FABF3 C3BF
+8FABF4 C5B7
+8FABF5 C5BA
+8FABF6 C5BE
+8FABF7 C5BC
+8FB0A1 E4B882
+8FB0A2 E4B884
+8FB0A3 E4B885
+8FB0A4 E4B88C
+8FB0A5 E4B892
+8FB0A6 E4B89F
+8FB0A7 E4B8A3
+8FB0A8 E4B8A4
+8FB0A9 E4B8A8
+8FB0AA E4B8AB
+8FB0AB E4B8AE
+8FB0AC E4B8AF
+8FB0AD E4B8B0
+8FB0AE E4B8B5
+8FB0AF E4B980
+8FB0B0 E4B981
+8FB0B1 E4B984
+8FB0B2 E4B987
+8FB0B3 E4B991
+8FB0B4 E4B99A
+8FB0B5 E4B99C
+8FB0B6 E4B9A3
+8FB0B7 E4B9A8
+8FB0B8 E4B9A9
+8FB0B9 E4B9B4
+8FB0BA E4B9B5
+8FB0BB E4B9B9
+8FB0BC E4B9BF
+8FB0BD E4BA8D
+8FB0BE E4BA96
+8FB0BF E4BA97
+8FB0C0 E4BA9D
+8FB0C1 E4BAAF
+8FB0C2 E4BAB9
+8FB0C3 E4BB83
+8FB0C4 E4BB90
+8FB0C5 E4BB9A
+8FB0C6 E4BB9B
+8FB0C7 E4BBA0
+8FB0C8 E4BBA1
+8FB0C9 E4BBA2
+8FB0CA E4BBA8
+8FB0CB E4BBAF
+8FB0CC E4BBB1
+8FB0CD E4BBB3
+8FB0CE E4BBB5
+8FB0CF E4BBBD
+8FB0D0 E4BBBE
+8FB0D1 E4BBBF
+8FB0D2 E4BC80
+8FB0D3 E4BC82
+8FB0D4 E4BC83
+8FB0D5 E4BC88
+8FB0D6 E4BC8B
+8FB0D7 E4BC8C
+8FB0D8 E4BC92
+8FB0D9 E4BC95
+8FB0DA E4BC96
+8FB0DB E4BC97
+8FB0DC E4BC99
+8FB0DD E4BCAE
+8FB0DE E4BCB1
+8FB0DF E4BDA0
+8FB0E0 E4BCB3
+8FB0E1 E4BCB5
+8FB0E2 E4BCB7
+8FB0E3 E4BCB9
+8FB0E4 E4BCBB
+8FB0E5 E4BCBE
+8FB0E6 E4BD80
+8FB0E7 E4BD82
+8FB0E8 E4BD88
+8FB0E9 E4BD89
+8FB0EA E4BD8B
+8FB0EB E4BD8C
+8FB0EC E4BD92
+8FB0ED E4BD94
+8FB0EE E4BD96
+8FB0EF E4BD98
+8FB0F0 E4BD9F
+8FB0F1 E4BDA3
+8FB0F2 E4BDAA
+8FB0F3 E4BDAC
+8FB0F4 E4BDAE
+8FB0F5 E4BDB1
+8FB0F6 E4BDB7
+8FB0F7 E4BDB8
+8FB0F8 E4BDB9
+8FB0F9 E4BDBA
+8FB0FA E4BDBD
+8FB0FB E4BDBE
+8FB0FC E4BE81
+8FB0FD E4BE82
+8FB0FE E4BE84
+8FB1A1 E4BE85
+8FB1A2 E4BE89
+8FB1A3 E4BE8A
+8FB1A4 E4BE8C
+8FB1A5 E4BE8E
+8FB1A6 E4BE90
+8FB1A7 E4BE92
+8FB1A8 E4BE93
+8FB1A9 E4BE94
+8FB1AA E4BE97
+8FB1AB E4BE99
+8FB1AC E4BE9A
+8FB1AD E4BE9E
+8FB1AE E4BE9F
+8FB1AF E4BEB2
+8FB1B0 E4BEB7
+8FB1B1 E4BEB9
+8FB1B2 E4BEBB
+8FB1B3 E4BEBC
+8FB1B4 E4BEBD
+8FB1B5 E4BEBE
+8FB1B6 E4BF80
+8FB1B7 E4BF81
+8FB1B8 E4BF85
+8FB1B9 E4BF86
+8FB1BA E4BF88
+8FB1BB E4BF89
+8FB1BC E4BF8B
+8FB1BD E4BF8C
+8FB1BE E4BF8D
+8FB1BF E4BF8F
+8FB1C0 E4BF92
+8FB1C1 E4BF9C
+8FB1C2 E4BFA0
+8FB1C3 E4BFA2
+8FB1C4 E4BFB0
+8FB1C5 E4BFB2
+8FB1C6 E4BFBC
+8FB1C7 E4BFBD
+8FB1C8 E4BFBF
+8FB1C9 E58080
+8FB1CA E58081
+8FB1CB E58084
+8FB1CC E58087
+8FB1CD E5808A
+8FB1CE E5808C
+8FB1CF E5808E
+8FB1D0 E58090
+8FB1D1 E58093
+8FB1D2 E58097
+8FB1D3 E58098
+8FB1D4 E5809B
+8FB1D5 E5809C
+8FB1D6 E5809D
+8FB1D7 E5809E
+8FB1D8 E580A2
+8FB1D9 E580A7
+8FB1DA E580AE
+8FB1DB E580B0
+8FB1DC E580B2
+8FB1DD E580B3
+8FB1DE E580B5
+8FB1DF E58180
+8FB1E0 E58181
+8FB1E1 E58182
+8FB1E2 E58185
+8FB1E3 E58186
+8FB1E4 E5818A
+8FB1E5 E5818C
+8FB1E6 E5818E
+8FB1E7 E58191
+8FB1E8 E58192
+8FB1E9 E58193
+8FB1EA E58197
+8FB1EB E58199
+8FB1EC E5819F
+8FB1ED E581A0
+8FB1EE E581A2
+8FB1EF E581A3
+8FB1F0 E581A6
+8FB1F1 E581A7
+8FB1F2 E581AA
+8FB1F3 E581AD
+8FB1F4 E581B0
+8FB1F5 E581B1
+8FB1F6 E580BB
+8FB1F7 E58281
+8FB1F8 E58283
+8FB1F9 E58284
+8FB1FA E58286
+8FB1FB E5828A
+8FB1FC E5828E
+8FB1FD E5828F
+8FB1FE E58290
+8FB2A1 E58292
+8FB2A2 E58293
+8FB2A3 E58294
+8FB2A4 E58296
+8FB2A5 E5829B
+8FB2A6 E5829C
+8FB2A7 E5829E
+8FB2A8 E5829F
+8FB2A9 E582A0
+8FB2AA E582A1
+8FB2AB E582A2
+8FB2AC E582AA
+8FB2AD E582AF
+8FB2AE E582B0
+8FB2AF E582B9
+8FB2B0 E582BA
+8FB2B1 E582BD
+8FB2B2 E58380
+8FB2B3 E58383
+8FB2B4 E58384
+8FB2B5 E58387
+8FB2B6 E5838C
+8FB2B7 E5838E
+8FB2B8 E58390
+8FB2B9 E58393
+8FB2BA E58394
+8FB2BB E58398
+8FB2BC E5839C
+8FB2BD E5839D
+8FB2BE E5839F
+8FB2BF E583A2
+8FB2C0 E583A4
+8FB2C1 E583A6
+8FB2C2 E583A8
+8FB2C3 E583A9
+8FB2C4 E583AF
+8FB2C5 E583B1
+8FB2C6 E583B6
+8FB2C7 E583BA
+8FB2C8 E583BE
+8FB2C9 E58483
+8FB2CA E58486
+8FB2CB E58487
+8FB2CC E58488
+8FB2CD E5848B
+8FB2CE E5848C
+8FB2CF E5848D
+8FB2D0 E5848E
+8FB2D1 E583B2
+8FB2D2 E58490
+8FB2D3 E58497
+8FB2D4 E58499
+8FB2D5 E5849B
+8FB2D6 E5849C
+8FB2D7 E5849D
+8FB2D8 E5849E
+8FB2D9 E584A3
+8FB2DA E584A7
+8FB2DB E584A8
+8FB2DC E584AC
+8FB2DD E584AD
+8FB2DE E584AF
+8FB2DF E584B1
+8FB2E0 E584B3
+8FB2E1 E584B4
+8FB2E2 E584B5
+8FB2E3 E584B8
+8FB2E4 E584B9
+8FB2E5 E58582
+8FB2E6 E5858A
+8FB2E7 E5858F
+8FB2E8 E58593
+8FB2E9 E58595
+8FB2EA E58597
+8FB2EB E58598
+8FB2EC E5859F
+8FB2ED E585A4
+8FB2EE E585A6
+8FB2EF E585BE
+8FB2F0 E58683
+8FB2F1 E58684
+8FB2F2 E5868B
+8FB2F3 E5868E
+8FB2F4 E58698
+8FB2F5 E5869D
+8FB2F6 E586A1
+8FB2F7 E586A3
+8FB2F8 E586AD
+8FB2F9 E586B8
+8FB2FA E586BA
+8FB2FB E586BC
+8FB2FC E586BE
+8FB2FD E586BF
+8FB2FE E58782
+8FB3A1 E58788
+8FB3A2 E5878F
+8FB3A3 E58791
+8FB3A4 E58792
+8FB3A5 E58793
+8FB3A6 E58795
+8FB3A7 E58798
+8FB3A8 E5879E
+8FB3A9 E587A2
+8FB3AA E587A5
+8FB3AB E587AE
+8FB3AC E587B2
+8FB3AD E587B3
+8FB3AE E587B4
+8FB3AF E587B7
+8FB3B0 E58881
+8FB3B1 E58882
+8FB3B2 E58885
+8FB3B3 E58892
+8FB3B4 E58893
+8FB3B5 E58895
+8FB3B6 E58896
+8FB3B7 E58898
+8FB3B8 E588A2
+8FB3B9 E588A8
+8FB3BA E588B1
+8FB3BB E588B2
+8FB3BC E588B5
+8FB3BD E588BC
+8FB3BE E58985
+8FB3BF E58989
+8FB3C0 E58995
+8FB3C1 E58997
+8FB3C2 E58998
+8FB3C3 E5899A
+8FB3C4 E5899C
+8FB3C5 E5899F
+8FB3C6 E589A0
+8FB3C7 E589A1
+8FB3C8 E589A6
+8FB3C9 E589AE
+8FB3CA E589B7
+8FB3CB E589B8
+8FB3CC E589B9
+8FB3CD E58A80
+8FB3CE E58A82
+8FB3CF E58A85
+8FB3D0 E58A8A
+8FB3D1 E58A8C
+8FB3D2 E58A93
+8FB3D3 E58A95
+8FB3D4 E58A96
+8FB3D5 E58A97
+8FB3D6 E58A98
+8FB3D7 E58A9A
+8FB3D8 E58A9C
+8FB3D9 E58AA4
+8FB3DA E58AA5
+8FB3DB E58AA6
+8FB3DC E58AA7
+8FB3DD E58AAF
+8FB3DE E58AB0
+8FB3DF E58AB6
+8FB3E0 E58AB7
+8FB3E1 E58AB8
+8FB3E2 E58ABA
+8FB3E3 E58ABB
+8FB3E4 E58ABD
+8FB3E5 E58B80
+8FB3E6 E58B84
+8FB3E7 E58B86
+8FB3E8 E58B88
+8FB3E9 E58B8C
+8FB3EA E58B8F
+8FB3EB E58B91
+8FB3EC E58B94
+8FB3ED E58B96
+8FB3EE E58B9B
+8FB3EF E58B9C
+8FB3F0 E58BA1
+8FB3F1 E58BA5
+8FB3F2 E58BA8
+8FB3F3 E58BA9
+8FB3F4 E58BAA
+8FB3F5 E58BAC
+8FB3F6 E58BB0
+8FB3F7 E58BB1
+8FB3F8 E58BB4
+8FB3F9 E58BB6
+8FB3FA E58BB7
+8FB3FB E58C80
+8FB3FC E58C83
+8FB3FD E58C8A
+8FB3FE E58C8B
+8FB4A1 E58C8C
+8FB4A2 E58C91
+8FB4A3 E58C93
+8FB4A4 E58C98
+8FB4A5 E58C9B
+8FB4A6 E58C9C
+8FB4A7 E58C9E
+8FB4A8 E58C9F
+8FB4A9 E58CA5
+8FB4AA E58CA7
+8FB4AB E58CA8
+8FB4AC E58CA9
+8FB4AD E58CAB
+8FB4AE E58CAC
+8FB4AF E58CAD
+8FB4B0 E58CB0
+8FB4B1 E58CB2
+8FB4B2 E58CB5
+8FB4B3 E58CBC
+8FB4B4 E58CBD
+8FB4B5 E58CBE
+8FB4B6 E58D82
+8FB4B7 E58D8C
+8FB4B8 E58D8B
+8FB4B9 E58D99
+8FB4BA E58D9B
+8FB4BB E58DA1
+8FB4BC E58DA3
+8FB4BD E58DA5
+8FB4BE E58DAC
+8FB4BF E58DAD
+8FB4C0 E58DB2
+8FB4C1 E58DB9
+8FB4C2 E58DBE
+8FB4C3 E58E83
+8FB4C4 E58E87
+8FB4C5 E58E88
+8FB4C6 E58E8E
+8FB4C7 E58E93
+8FB4C8 E58E94
+8FB4C9 E58E99
+8FB4CA E58E9D
+8FB4CB E58EA1
+8FB4CC E58EA4
+8FB4CD E58EAA
+8FB4CE E58EAB
+8FB4CF E58EAF
+8FB4D0 E58EB2
+8FB4D1 E58EB4
+8FB4D2 E58EB5
+8FB4D3 E58EB7
+8FB4D4 E58EB8
+8FB4D5 E58EBA
+8FB4D6 E58EBD
+8FB4D7 E58F80
+8FB4D8 E58F85
+8FB4D9 E58F8F
+8FB4DA E58F92
+8FB4DB E58F93
+8FB4DC E58F95
+8FB4DD E58F9A
+8FB4DE E58F9D
+8FB4DF E58F9E
+8FB4E0 E58FA0
+8FB4E1 E58FA6
+8FB4E2 E58FA7
+8FB4E3 E58FB5
+8FB4E4 E59082
+8FB4E5 E59093
+8FB4E6 E5909A
+8FB4E7 E590A1
+8FB4E8 E590A7
+8FB4E9 E590A8
+8FB4EA E590AA
+8FB4EB E590AF
+8FB4EC E590B1
+8FB4ED E590B4
+8FB4EE E590B5
+8FB4EF E59183
+8FB4F0 E59184
+8FB4F1 E59187
+8FB4F2 E5918D
+8FB4F3 E5918F
+8FB4F4 E5919E
+8FB4F5 E591A2
+8FB4F6 E591A4
+8FB4F7 E591A6
+8FB4F8 E591A7
+8FB4F9 E591A9
+8FB4FA E591AB
+8FB4FB E591AD
+8FB4FC E591AE
+8FB4FD E591B4
+8FB4FE E591BF
+8FB5A1 E59281
+8FB5A2 E59283
+8FB5A3 E59285
+8FB5A4 E59288
+8FB5A5 E59289
+8FB5A6 E5928D
+8FB5A7 E59291
+8FB5A8 E59295
+8FB5A9 E59296
+8FB5AA E5929C
+8FB5AB E5929F
+8FB5AC E592A1
+8FB5AD E592A6
+8FB5AE E592A7
+8FB5AF E592A9
+8FB5B0 E592AA
+8FB5B1 E592AD
+8FB5B2 E592AE
+8FB5B3 E592B1
+8FB5B4 E592B7
+8FB5B5 E592B9
+8FB5B6 E592BA
+8FB5B7 E592BB
+8FB5B8 E592BF
+8FB5B9 E59386
+8FB5BA E5938A
+8FB5BB E5938D
+8FB5BC E5938E
+8FB5BD E593A0
+8FB5BE E593AA
+8FB5BF E593AC
+8FB5C0 E593AF
+8FB5C1 E593B6
+8FB5C2 E593BC
+8FB5C3 E593BE
+8FB5C4 E593BF
+8FB5C5 E59480
+8FB5C6 E59481
+8FB5C7 E59485
+8FB5C8 E59488
+8FB5C9 E59489
+8FB5CA E5948C
+8FB5CB E5948D
+8FB5CC E5948E
+8FB5CD E59495
+8FB5CE E594AA
+8FB5CF E594AB
+8FB5D0 E594B2
+8FB5D1 E594B5
+8FB5D2 E594B6
+8FB5D3 E594BB
+8FB5D4 E594BC
+8FB5D5 E594BD
+8FB5D6 E59581
+8FB5D7 E59587
+8FB5D8 E59589
+8FB5D9 E5958A
+8FB5DA E5958D
+8FB5DB E59590
+8FB5DC E59591
+8FB5DD E59598
+8FB5DE E5959A
+8FB5DF E5959B
+8FB5E0 E5959E
+8FB5E1 E595A0
+8FB5E2 E595A1
+8FB5E3 E595A4
+8FB5E4 E595A6
+8FB5E5 E595BF
+8FB5E6 E59681
+8FB5E7 E59682
+8FB5E8 E59686
+8FB5E9 E59688
+8FB5EA E5968E
+8FB5EB E5968F
+8FB5EC E59691
+8FB5ED E59692
+8FB5EE E59693
+8FB5EF E59694
+8FB5F0 E59697
+8FB5F1 E596A3
+8FB5F2 E596A4
+8FB5F3 E596AD
+8FB5F4 E596B2
+8FB5F5 E596BF
+8FB5F6 E59781
+8FB5F7 E59783
+8FB5F8 E59786
+8FB5F9 E59789
+8FB5FA E5978B
+8FB5FB E5978C
+8FB5FC E5978E
+8FB5FD E59791
+8FB5FE E59792
+8FB6A1 E59793
+8FB6A2 E59797
+8FB6A3 E59798
+8FB6A4 E5979B
+8FB6A5 E5979E
+8FB6A6 E597A2
+8FB6A7 E597A9
+8FB6A8 E597B6
+8FB6A9 E597BF
+8FB6AA E59885
+8FB6AB E59888
+8FB6AC E5988A
+8FB6AD E5988D
+8FB6AE E5988E
+8FB6AF E5988F
+8FB6B0 E59890
+8FB6B1 E59891
+8FB6B2 E59892
+8FB6B3 E59899
+8FB6B4 E598AC
+8FB6B5 E598B0
+8FB6B6 E598B3
+8FB6B7 E598B5
+8FB6B8 E598B7
+8FB6B9 E598B9
+8FB6BA E598BB
+8FB6BB E598BC
+8FB6BC E598BD
+8FB6BD E598BF
+8FB6BE E59980
+8FB6BF E59981
+8FB6C0 E59983
+8FB6C1 E59984
+8FB6C2 E59986
+8FB6C3 E59989
+8FB6C4 E5998B
+8FB6C5 E5998D
+8FB6C6 E5998F
+8FB6C7 E59994
+8FB6C8 E5999E
+8FB6C9 E599A0
+8FB6CA E599A1
+8FB6CB E599A2
+8FB6CC E599A3
+8FB6CD E599A6
+8FB6CE E599A9
+8FB6CF E599AD
+8FB6D0 E599AF
+8FB6D1 E599B1
+8FB6D2 E599B2
+8FB6D3 E599B5
+8FB6D4 E59A84
+8FB6D5 E59A85
+8FB6D6 E59A88
+8FB6D7 E59A8B
+8FB6D8 E59A8C
+8FB6D9 E59A95
+8FB6DA E59A99
+8FB6DB E59A9A
+8FB6DC E59A9D
+8FB6DD E59A9E
+8FB6DE E59A9F
+8FB6DF E59AA6
+8FB6E0 E59AA7
+8FB6E1 E59AA8
+8FB6E2 E59AA9
+8FB6E3 E59AAB
+8FB6E4 E59AAC
+8FB6E5 E59AAD
+8FB6E6 E59AB1
+8FB6E7 E59AB3
+8FB6E8 E59AB7
+8FB6E9 E59ABE
+8FB6EA E59B85
+8FB6EB E59B89
+8FB6EC E59B8A
+8FB6ED E59B8B
+8FB6EE E59B8F
+8FB6EF E59B90
+8FB6F0 E59B8C
+8FB6F1 E59B8D
+8FB6F2 E59B99
+8FB6F3 E59B9C
+8FB6F4 E59B9D
+8FB6F5 E59B9F
+8FB6F6 E59BA1
+8FB6F7 E59BA4
+8FB6F8 E59BA5
+8FB6F9 E59BA6
+8FB6FA E59BA7
+8FB6FB E59BA8
+8FB6FC E59BB1
+8FB6FD E59BAB
+8FB6FE E59BAD
+8FB7A1 E59BB6
+8FB7A2 E59BB7
+8FB7A3 E59C81
+8FB7A4 E59C82
+8FB7A5 E59C87
+8FB7A6 E59C8A
+8FB7A7 E59C8C
+8FB7A8 E59C91
+8FB7A9 E59C95
+8FB7AA E59C9A
+8FB7AB E59C9B
+8FB7AC E59C9D
+8FB7AD E59CA0
+8FB7AE E59CA2
+8FB7AF E59CA3
+8FB7B0 E59CA4
+8FB7B1 E59CA5
+8FB7B2 E59CA9
+8FB7B3 E59CAA
+8FB7B4 E59CAC
+8FB7B5 E59CAE
+8FB7B6 E59CAF
+8FB7B7 E59CB3
+8FB7B8 E59CB4
+8FB7B9 E59CBD
+8FB7BA E59CBE
+8FB7BB E59CBF
+8FB7BC E59D85
+8FB7BD E59D86
+8FB7BE E59D8C
+8FB7BF E59D8D
+8FB7C0 E59D92
+8FB7C1 E59DA2
+8FB7C2 E59DA5
+8FB7C3 E59DA7
+8FB7C4 E59DA8
+8FB7C5 E59DAB
+8FB7C6 E59DAD
+8FB7C7 E59DAE
+8FB7C8 E59DAF
+8FB7C9 E59DB0
+8FB7CA E59DB1
+8FB7CB E59DB3
+8FB7CC E59DB4
+8FB7CD E59DB5
+8FB7CE E59DB7
+8FB7CF E59DB9
+8FB7D0 E59DBA
+8FB7D1 E59DBB
+8FB7D2 E59DBC
+8FB7D3 E59DBE
+8FB7D4 E59E81
+8FB7D5 E59E83
+8FB7D6 E59E8C
+8FB7D7 E59E94
+8FB7D8 E59E97
+8FB7D9 E59E99
+8FB7DA E59E9A
+8FB7DB E59E9C
+8FB7DC E59E9D
+8FB7DD E59E9E
+8FB7DE E59E9F
+8FB7DF E59EA1
+8FB7E0 E59E95
+8FB7E1 E59EA7
+8FB7E2 E59EA8
+8FB7E3 E59EA9
+8FB7E4 E59EAC
+8FB7E5 E59EB8
+8FB7E6 E59EBD
+8FB7E7 E59F87
+8FB7E8 E59F88
+8FB7E9 E59F8C
+8FB7EA E59F8F
+8FB7EB E59F95
+8FB7EC E59F9D
+8FB7ED E59F9E
+8FB7EE E59FA4
+8FB7EF E59FA6
+8FB7F0 E59FA7
+8FB7F1 E59FA9
+8FB7F2 E59FAD
+8FB7F3 E59FB0
+8FB7F4 E59FB5
+8FB7F5 E59FB6
+8FB7F6 E59FB8
+8FB7F7 E59FBD
+8FB7F8 E59FBE
+8FB7F9 E59FBF
+8FB7FA E5A083
+8FB7FB E5A084
+8FB7FC E5A088
+8FB7FD E5A089
+8FB7FE E59FA1
+8FB8A1 E5A08C
+8FB8A2 E5A08D
+8FB8A3 E5A09B
+8FB8A4 E5A09E
+8FB8A5 E5A09F
+8FB8A6 E5A0A0
+8FB8A7 E5A0A6
+8FB8A8 E5A0A7
+8FB8A9 E5A0AD
+8FB8AA E5A0B2
+8FB8AB E5A0B9
+8FB8AC E5A0BF
+8FB8AD E5A189
+8FB8AE E5A18C
+8FB8AF E5A18D
+8FB8B0 E5A18F
+8FB8B1 E5A190
+8FB8B2 E5A195
+8FB8B3 E5A19F
+8FB8B4 E5A1A1
+8FB8B5 E5A1A4
+8FB8B6 E5A1A7
+8FB8B7 E5A1A8
+8FB8B8 E5A1B8
+8FB8B9 E5A1BC
+8FB8BA E5A1BF
+8FB8BB E5A280
+8FB8BC E5A281
+8FB8BD E5A287
+8FB8BE E5A288
+8FB8BF E5A289
+8FB8C0 E5A28A
+8FB8C1 E5A28C
+8FB8C2 E5A28D
+8FB8C3 E5A28F
+8FB8C4 E5A290
+8FB8C5 E5A294
+8FB8C6 E5A296
+8FB8C7 E5A29D
+8FB8C8 E5A2A0
+8FB8C9 E5A2A1
+8FB8CA E5A2A2
+8FB8CB E5A2A6
+8FB8CC E5A2A9
+8FB8CD E5A2B1
+8FB8CE E5A2B2
+8FB8CF E5A384
+8FB8D0 E5A2BC
+8FB8D1 E5A382
+8FB8D2 E5A388
+8FB8D3 E5A38D
+8FB8D4 E5A38E
+8FB8D5 E5A390
+8FB8D6 E5A392
+8FB8D7 E5A394
+8FB8D8 E5A396
+8FB8D9 E5A39A
+8FB8DA E5A39D
+8FB8DB E5A3A1
+8FB8DC E5A3A2
+8FB8DD E5A3A9
+8FB8DE E5A3B3
+8FB8DF E5A485
+8FB8E0 E5A486
+8FB8E1 E5A48B
+8FB8E2 E5A48C
+8FB8E3 E5A492
+8FB8E4 E5A493
+8FB8E5 E5A494
+8FB8E6 E89981
+8FB8E7 E5A49D
+8FB8E8 E5A4A1
+8FB8E9 E5A4A3
+8FB8EA E5A4A4
+8FB8EB E5A4A8
+8FB8EC E5A4AF
+8FB8ED E5A4B0
+8FB8EE E5A4B3
+8FB8EF E5A4B5
+8FB8F0 E5A4B6
+8FB8F1 E5A4BF
+8FB8F2 E5A583
+8FB8F3 E5A586
+8FB8F4 E5A592
+8FB8F5 E5A593
+8FB8F6 E5A599
+8FB8F7 E5A59B
+8FB8F8 E5A59D
+8FB8F9 E5A59E
+8FB8FA E5A59F
+8FB8FB E5A5A1
+8FB8FC E5A5A3
+8FB8FD E5A5AB
+8FB8FE E5A5AD
+8FB9A1 E5A5AF
+8FB9A2 E5A5B2
+8FB9A3 E5A5B5
+8FB9A4 E5A5B6
+8FB9A5 E5A5B9
+8FB9A6 E5A5BB
+8FB9A7 E5A5BC
+8FB9A8 E5A68B
+8FB9A9 E5A68C
+8FB9AA E5A68E
+8FB9AB E5A692
+8FB9AC E5A695
+8FB9AD E5A697
+8FB9AE E5A69F
+8FB9AF E5A6A4
+8FB9B0 E5A6A7
+8FB9B1 E5A6AD
+8FB9B2 E5A6AE
+8FB9B3 E5A6AF
+8FB9B4 E5A6B0
+8FB9B5 E5A6B3
+8FB9B6 E5A6B7
+8FB9B7 E5A6BA
+8FB9B8 E5A6BC
+8FB9B9 E5A781
+8FB9BA E5A783
+8FB9BB E5A784
+8FB9BC E5A788
+8FB9BD E5A78A
+8FB9BE E5A78D
+8FB9BF E5A792
+8FB9C0 E5A79D
+8FB9C1 E5A79E
+8FB9C2 E5A79F
+8FB9C3 E5A7A3
+8FB9C4 E5A7A4
+8FB9C5 E5A7A7
+8FB9C6 E5A7AE
+8FB9C7 E5A7AF
+8FB9C8 E5A7B1
+8FB9C9 E5A7B2
+8FB9CA E5A7B4
+8FB9CB E5A7B7
+8FB9CC E5A880
+8FB9CD E5A884
+8FB9CE E5A88C
+8FB9CF E5A88D
+8FB9D0 E5A88E
+8FB9D1 E5A892
+8FB9D2 E5A893
+8FB9D3 E5A89E
+8FB9D4 E5A8A3
+8FB9D5 E5A8A4
+8FB9D6 E5A8A7
+8FB9D7 E5A8A8
+8FB9D8 E5A8AA
+8FB9D9 E5A8AD
+8FB9DA E5A8B0
+8FB9DB E5A984
+8FB9DC E5A985
+8FB9DD E5A987
+8FB9DE E5A988
+8FB9DF E5A98C
+8FB9E0 E5A990
+8FB9E1 E5A995
+8FB9E2 E5A99E
+8FB9E3 E5A9A3
+8FB9E4 E5A9A5
+8FB9E5 E5A9A7
+8FB9E6 E5A9AD
+8FB9E7 E5A9B7
+8FB9E8 E5A9BA
+8FB9E9 E5A9BB
+8FB9EA E5A9BE
+8FB9EB E5AA8B
+8FB9EC E5AA90
+8FB9ED E5AA93
+8FB9EE E5AA96
+8FB9EF E5AA99
+8FB9F0 E5AA9C
+8FB9F1 E5AA9E
+8FB9F2 E5AA9F
+8FB9F3 E5AAA0
+8FB9F4 E5AAA2
+8FB9F5 E5AAA7
+8FB9F6 E5AAAC
+8FB9F7 E5AAB1
+8FB9F8 E5AAB2
+8FB9F9 E5AAB3
+8FB9FA E5AAB5
+8FB9FB E5AAB8
+8FB9FC E5AABA
+8FB9FD E5AABB
+8FB9FE E5AABF
+8FBAA1 E5AB84
+8FBAA2 E5AB86
+8FBAA3 E5AB88
+8FBAA4 E5AB8F
+8FBAA5 E5AB9A
+8FBAA6 E5AB9C
+8FBAA7 E5ABA0
+8FBAA8 E5ABA5
+8FBAA9 E5ABAA
+8FBAAA E5ABAE
+8FBAAB E5ABB5
+8FBAAC E5ABB6
+8FBAAD E5ABBD
+8FBAAE E5AC80
+8FBAAF E5AC81
+8FBAB0 E5AC88
+8FBAB1 E5AC97
+8FBAB2 E5ACB4
+8FBAB3 E5AC99
+8FBAB4 E5AC9B
+8FBAB5 E5AC9D
+8FBAB6 E5ACA1
+8FBAB7 E5ACA5
+8FBAB8 E5ACAD
+8FBAB9 E5ACB8
+8FBABA E5AD81
+8FBABB E5AD8B
+8FBABC E5AD8C
+8FBABD E5AD92
+8FBABE E5AD96
+8FBABF E5AD9E
+8FBAC0 E5ADA8
+8FBAC1 E5ADAE
+8FBAC2 E5ADAF
+8FBAC3 E5ADBC
+8FBAC4 E5ADBD
+8FBAC5 E5ADBE
+8FBAC6 E5ADBF
+8FBAC7 E5AE81
+8FBAC8 E5AE84
+8FBAC9 E5AE86
+8FBACA E5AE8A
+8FBACB E5AE8E
+8FBACC E5AE90
+8FBACD E5AE91
+8FBACE E5AE93
+8FBACF E5AE94
+8FBAD0 E5AE96
+8FBAD1 E5AEA8
+8FBAD2 E5AEA9
+8FBAD3 E5AEAC
+8FBAD4 E5AEAD
+8FBAD5 E5AEAF
+8FBAD6 E5AEB1
+8FBAD7 E5AEB2
+8FBAD8 E5AEB7
+8FBAD9 E5AEBA
+8FBADA E5AEBC
+8FBADB E5AF80
+8FBADC E5AF81
+8FBADD E5AF8D
+8FBADE E5AF8F
+8FBADF E5AF96
+8FBAE0 E5AF97
+8FBAE1 E5AF98
+8FBAE2 E5AF99
+8FBAE3 E5AF9A
+8FBAE4 E5AFA0
+8FBAE5 E5AFAF
+8FBAE6 E5AFB1
+8FBAE7 E5AFB4
+8FBAE8 E5AFBD
+8FBAE9 E5B08C
+8FBAEA E5B097
+8FBAEB E5B09E
+8FBAEC E5B09F
+8FBAED E5B0A3
+8FBAEE E5B0A6
+8FBAEF E5B0A9
+8FBAF0 E5B0AB
+8FBAF1 E5B0AC
+8FBAF2 E5B0AE
+8FBAF3 E5B0B0
+8FBAF4 E5B0B2
+8FBAF5 E5B0B5
+8FBAF6 E5B0B6
+8FBAF7 E5B199
+8FBAF8 E5B19A
+8FBAF9 E5B19C
+8FBAFA E5B1A2
+8FBAFB E5B1A3
+8FBAFC E5B1A7
+8FBAFD E5B1A8
+8FBAFE E5B1A9
+8FBBA1 E5B1AD
+8FBBA2 E5B1B0
+8FBBA3 E5B1B4
+8FBBA4 E5B1B5
+8FBBA5 E5B1BA
+8FBBA6 E5B1BB
+8FBBA7 E5B1BC
+8FBBA8 E5B1BD
+8FBBA9 E5B287
+8FBBAA E5B288
+8FBBAB E5B28A
+8FBBAC E5B28F
+8FBBAD E5B292
+8FBBAE E5B29D
+8FBBAF E5B29F
+8FBBB0 E5B2A0
+8FBBB1 E5B2A2
+8FBBB2 E5B2A3
+8FBBB3 E5B2A6
+8FBBB4 E5B2AA
+8FBBB5 E5B2B2
+8FBBB6 E5B2B4
+8FBBB7 E5B2B5
+8FBBB8 E5B2BA
+8FBBB9 E5B389
+8FBBBA E5B38B
+8FBBBB E5B392
+8FBBBC E5B39D
+8FBBBD E5B397
+8FBBBE E5B3AE
+8FBBBF E5B3B1
+8FBBC0 E5B3B2
+8FBBC1 E5B3B4
+8FBBC2 E5B481
+8FBBC3 E5B486
+8FBBC4 E5B48D
+8FBBC5 E5B492
+8FBBC6 E5B4AB
+8FBBC7 E5B4A3
+8FBBC8 E5B4A4
+8FBBC9 E5B4A6
+8FBBCA E5B4A7
+8FBBCB E5B4B1
+8FBBCC E5B4B4
+8FBBCD E5B4B9
+8FBBCE E5B4BD
+8FBBCF E5B4BF
+8FBBD0 E5B582
+8FBBD1 E5B583
+8FBBD2 E5B586
+8FBBD3 E5B588
+8FBBD4 E5B595
+8FBBD5 E5B591
+8FBBD6 E5B599
+8FBBD7 E5B58A
+8FBBD8 E5B59F
+8FBBD9 E5B5A0
+8FBBDA E5B5A1
+8FBBDB E5B5A2
+8FBBDC E5B5A4
+8FBBDD E5B5AA
+8FBBDE E5B5AD
+8FBBDF E5B5B0
+8FBBE0 E5B5B9
+8FBBE1 E5B5BA
+8FBBE2 E5B5BE
+8FBBE3 E5B5BF
+8FBBE4 E5B681
+8FBBE5 E5B683
+8FBBE6 E5B688
+8FBBE7 E5B68A
+8FBBE8 E5B692
+8FBBE9 E5B693
+8FBBEA E5B694
+8FBBEB E5B695
+8FBBEC E5B699
+8FBBED E5B69B
+8FBBEE E5B69F
+8FBBEF E5B6A0
+8FBBF0 E5B6A7
+8FBBF1 E5B6AB
+8FBBF2 E5B6B0
+8FBBF3 E5B6B4
+8FBBF4 E5B6B8
+8FBBF5 E5B6B9
+8FBBF6 E5B783
+8FBBF7 E5B787
+8FBBF8 E5B78B
+8FBBF9 E5B790
+8FBBFA E5B78E
+8FBBFB E5B798
+8FBBFC E5B799
+8FBBFD E5B7A0
+8FBBFE E5B7A4
+8FBCA1 E5B7A9
+8FBCA2 E5B7B8
+8FBCA3 E5B7B9
+8FBCA4 E5B880
+8FBCA5 E5B887
+8FBCA6 E5B88D
+8FBCA7 E5B892
+8FBCA8 E5B894
+8FBCA9 E5B895
+8FBCAA E5B898
+8FBCAB E5B89F
+8FBCAC E5B8A0
+8FBCAD E5B8AE
+8FBCAE E5B8A8
+8FBCAF E5B8B2
+8FBCB0 E5B8B5
+8FBCB1 E5B8BE
+8FBCB2 E5B98B
+8FBCB3 E5B990
+8FBCB4 E5B989
+8FBCB5 E5B991
+8FBCB6 E5B996
+8FBCB7 E5B998
+8FBCB8 E5B99B
+8FBCB9 E5B99C
+8FBCBA E5B99E
+8FBCBB E5B9A8
+8FBCBC E5B9AA
+8FBCBD E5B9AB
+8FBCBE E5B9AC
+8FBCBF E5B9AD
+8FBCC0 E5B9AE
+8FBCC1 E5B9B0
+8FBCC2 E5BA80
+8FBCC3 E5BA8B
+8FBCC4 E5BA8E
+8FBCC5 E5BAA2
+8FBCC6 E5BAA4
+8FBCC7 E5BAA5
+8FBCC8 E5BAA8
+8FBCC9 E5BAAA
+8FBCCA E5BAAC
+8FBCCB E5BAB1
+8FBCCC E5BAB3
+8FBCCD E5BABD
+8FBCCE E5BABE
+8FBCCF E5BABF
+8FBCD0 E5BB86
+8FBCD1 E5BB8C
+8FBCD2 E5BB8B
+8FBCD3 E5BB8E
+8FBCD4 E5BB91
+8FBCD5 E5BB92
+8FBCD6 E5BB94
+8FBCD7 E5BB95
+8FBCD8 E5BB9C
+8FBCD9 E5BB9E
+8FBCDA E5BBA5
+8FBCDB E5BBAB
+8FBCDC E5BC82
+8FBCDD E5BC86
+8FBCDE E5BC87
+8FBCDF E5BC88
+8FBCE0 E5BC8E
+8FBCE1 E5BC99
+8FBCE2 E5BC9C
+8FBCE3 E5BC9D
+8FBCE4 E5BCA1
+8FBCE5 E5BCA2
+8FBCE6 E5BCA3
+8FBCE7 E5BCA4
+8FBCE8 E5BCA8
+8FBCE9 E5BCAB
+8FBCEA E5BCAC
+8FBCEB E5BCAE
+8FBCEC E5BCB0
+8FBCED E5BCB4
+8FBCEE E5BCB6
+8FBCEF E5BCBB
+8FBCF0 E5BCBD
+8FBCF1 E5BCBF
+8FBCF2 E5BD80
+8FBCF3 E5BD84
+8FBCF4 E5BD85
+8FBCF5 E5BD87
+8FBCF6 E5BD8D
+8FBCF7 E5BD90
+8FBCF8 E5BD94
+8FBCF9 E5BD98
+8FBCFA E5BD9B
+8FBCFB E5BDA0
+8FBCFC E5BDA3
+8FBCFD E5BDA4
+8FBCFE E5BDA7
+8FBDA1 E5BDAF
+8FBDA2 E5BDB2
+8FBDA3 E5BDB4
+8FBDA4 E5BDB5
+8FBDA5 E5BDB8
+8FBDA6 E5BDBA
+8FBDA7 E5BDBD
+8FBDA8 E5BDBE
+8FBDA9 E5BE89
+8FBDAA E5BE8D
+8FBDAB E5BE8F
+8FBDAC E5BE96
+8FBDAD E5BE9C
+8FBDAE E5BE9D
+8FBDAF E5BEA2
+8FBDB0 E5BEA7
+8FBDB1 E5BEAB
+8FBDB2 E5BEA4
+8FBDB3 E5BEAC
+8FBDB4 E5BEAF
+8FBDB5 E5BEB0
+8FBDB6 E5BEB1
+8FBDB7 E5BEB8
+8FBDB8 E5BF84
+8FBDB9 E5BF87
+8FBDBA E5BF88
+8FBDBB E5BF89
+8FBDBC E5BF8B
+8FBDBD E5BF90
+8FBDBE E5BF91
+8FBDBF E5BF92
+8FBDC0 E5BF93
+8FBDC1 E5BF94
+8FBDC2 E5BF9E
+8FBDC3 E5BFA1
+8FBDC4 E5BFA2
+8FBDC5 E5BFA8
+8FBDC6 E5BFA9
+8FBDC7 E5BFAA
+8FBDC8 E5BFAC
+8FBDC9 E5BFAD
+8FBDCA E5BFAE
+8FBDCB E5BFAF
+8FBDCC E5BFB2
+8FBDCD E5BFB3
+8FBDCE E5BFB6
+8FBDCF E5BFBA
+8FBDD0 E5BFBC
+8FBDD1 E68087
+8FBDD2 E6808A
+8FBDD3 E6808D
+8FBDD4 E68093
+8FBDD5 E68094
+8FBDD6 E68097
+8FBDD7 E68098
+8FBDD8 E6809A
+8FBDD9 E6809F
+8FBDDA E680A4
+8FBDDB E680AD
+8FBDDC E680B3
+8FBDDD E680B5
+8FBDDE E68180
+8FBDDF E68187
+8FBDE0 E68188
+8FBDE1 E68189
+8FBDE2 E6818C
+8FBDE3 E68191
+8FBDE4 E68194
+8FBDE5 E68196
+8FBDE6 E68197
+8FBDE7 E6819D
+8FBDE8 E681A1
+8FBDE9 E681A7
+8FBDEA E681B1
+8FBDEB E681BE
+8FBDEC E681BF
+8FBDED E68282
+8FBDEE E68286
+8FBDEF E68288
+8FBDF0 E6828A
+8FBDF1 E6828E
+8FBDF2 E68291
+8FBDF3 E68293
+8FBDF4 E68295
+8FBDF5 E68298
+8FBDF6 E6829D
+8FBDF7 E6829E
+8FBDF8 E682A2
+8FBDF9 E682A4
+8FBDFA E682A5
+8FBDFB E682A8
+8FBDFC E682B0
+8FBDFD E682B1
+8FBDFE E682B7
+8FBEA1 E682BB
+8FBEA2 E682BE
+8FBEA3 E68382
+8FBEA4 E68384
+8FBEA5 E68388
+8FBEA6 E68389
+8FBEA7 E6838A
+8FBEA8 E6838B
+8FBEA9 E6838E
+8FBEAA E6838F
+8FBEAB E68394
+8FBEAC E68395
+8FBEAD E68399
+8FBEAE E6839B
+8FBEAF E6839D
+8FBEB0 E6839E
+8FBEB1 E683A2
+8FBEB2 E683A5
+8FBEB3 E683B2
+8FBEB4 E683B5
+8FBEB5 E683B8
+8FBEB6 E683BC
+8FBEB7 E683BD
+8FBEB8 E68482
+8FBEB9 E68487
+8FBEBA E6848A
+8FBEBB E6848C
+8FBEBC E68490
+8FBEBD E68491
+8FBEBE E68492
+8FBEBF E68493
+8FBEC0 E68494
+8FBEC1 E68496
+8FBEC2 E68497
+8FBEC3 E68499
+8FBEC4 E6849C
+8FBEC5 E6849E
+8FBEC6 E684A2
+8FBEC7 E684AA
+8FBEC8 E684AB
+8FBEC9 E684B0
+8FBECA E684B1
+8FBECB E684B5
+8FBECC E684B6
+8FBECD E684B7
+8FBECE E684B9
+8FBECF E68581
+8FBED0 E68585
+8FBED1 E68586
+8FBED2 E68589
+8FBED3 E6859E
+8FBED4 E685A0
+8FBED5 E685AC
+8FBED6 E685B2
+8FBED7 E685B8
+8FBED8 E685BB
+8FBED9 E685BC
+8FBEDA E685BF
+8FBEDB E68680
+8FBEDC E68681
+8FBEDD E68683
+8FBEDE E68684
+8FBEDF E6868B
+8FBEE0 E6868D
+8FBEE1 E68692
+8FBEE2 E68693
+8FBEE3 E68697
+8FBEE4 E68698
+8FBEE5 E6869C
+8FBEE6 E6869D
+8FBEE7 E6869F
+8FBEE8 E686A0
+8FBEE9 E686A5
+8FBEEA E686A8
+8FBEEB E686AA
+8FBEEC E686AD
+8FBEED E686B8
+8FBEEE E686B9
+8FBEEF E686BC
+8FBEF0 E68780
+8FBEF1 E68781
+8FBEF2 E68782
+8FBEF3 E6878E
+8FBEF4 E6878F
+8FBEF5 E68795
+8FBEF6 E6879C
+8FBEF7 E6879D
+8FBEF8 E6879E
+8FBEF9 E6879F
+8FBEFA E687A1
+8FBEFB E687A2
+8FBEFC E687A7
+8FBEFD E687A9
+8FBEFE E687A5
+8FBFA1 E687AC
+8FBFA2 E687AD
+8FBFA3 E687AF
+8FBFA4 E68881
+8FBFA5 E68883
+8FBFA6 E68884
+8FBFA7 E68887
+8FBFA8 E68893
+8FBFA9 E68895
+8FBFAA E6889C
+8FBFAB E688A0
+8FBFAC E688A2
+8FBFAD E688A3
+8FBFAE E688A7
+8FBFAF E688A9
+8FBFB0 E688AB
+8FBFB1 E688B9
+8FBFB2 E688BD
+8FBFB3 E68982
+8FBFB4 E68983
+8FBFB5 E68984
+8FBFB6 E68986
+8FBFB7 E6898C
+8FBFB8 E68990
+8FBFB9 E68991
+8FBFBA E68992
+8FBFBB E68994
+8FBFBC E68996
+8FBFBD E6899A
+8FBFBE E6899C
+8FBFBF E689A4
+8FBFC0 E689AD
+8FBFC1 E689AF
+8FBFC2 E689B3
+8FBFC3 E689BA
+8FBFC4 E689BD
+8FBFC5 E68A8D
+8FBFC6 E68A8E
+8FBFC7 E68A8F
+8FBFC8 E68A90
+8FBFC9 E68AA6
+8FBFCA E68AA8
+8FBFCB E68AB3
+8FBFCC E68AB6
+8FBFCD E68AB7
+8FBFCE E68ABA
+8FBFCF E68ABE
+8FBFD0 E68ABF
+8FBFD1 E68B84
+8FBFD2 E68B8E
+8FBFD3 E68B95
+8FBFD4 E68B96
+8FBFD5 E68B9A
+8FBFD6 E68BAA
+8FBFD7 E68BB2
+8FBFD8 E68BB4
+8FBFD9 E68BBC
+8FBFDA E68BBD
+8FBFDB E68C83
+8FBFDC E68C84
+8FBFDD E68C8A
+8FBFDE E68C8B
+8FBFDF E68C8D
+8FBFE0 E68C90
+8FBFE1 E68C93
+8FBFE2 E68C96
+8FBFE3 E68C98
+8FBFE4 E68CA9
+8FBFE5 E68CAA
+8FBFE6 E68CAD
+8FBFE7 E68CB5
+8FBFE8 E68CB6
+8FBFE9 E68CB9
+8FBFEA E68CBC
+8FBFEB E68D81
+8FBFEC E68D82
+8FBFED E68D83
+8FBFEE E68D84
+8FBFEF E68D86
+8FBFF0 E68D8A
+8FBFF1 E68D8B
+8FBFF2 E68D8E
+8FBFF3 E68D92
+8FBFF4 E68D93
+8FBFF5 E68D94
+8FBFF6 E68D98
+8FBFF7 E68D9B
+8FBFF8 E68DA5
+8FBFF9 E68DA6
+8FBFFA E68DAC
+8FBFFB E68DAD
+8FBFFC E68DB1
+8FBFFD E68DB4
+8FBFFE E68DB5
+8FC0A1 E68DB8
+8FC0A2 E68DBC
+8FC0A3 E68DBD
+8FC0A4 E68DBF
+8FC0A5 E68E82
+8FC0A6 E68E84
+8FC0A7 E68E87
+8FC0A8 E68E8A
+8FC0A9 E68E90
+8FC0AA E68E94
+8FC0AB E68E95
+8FC0AC E68E99
+8FC0AD E68E9A
+8FC0AE E68E9E
+8FC0AF E68EA4
+8FC0B0 E68EA6
+8FC0B1 E68EAD
+8FC0B2 E68EAE
+8FC0B3 E68EAF
+8FC0B4 E68EBD
+8FC0B5 E68F81
+8FC0B6 E68F85
+8FC0B7 E68F88
+8FC0B8 E68F8E
+8FC0B9 E68F91
+8FC0BA E68F93
+8FC0BB E68F94
+8FC0BC E68F95
+8FC0BD E68F9C
+8FC0BE E68FA0
+8FC0BF E68FA5
+8FC0C0 E68FAA
+8FC0C1 E68FAC
+8FC0C2 E68FB2
+8FC0C3 E68FB3
+8FC0C4 E68FB5
+8FC0C5 E68FB8
+8FC0C6 E68FB9
+8FC0C7 E69089
+8FC0C8 E6908A
+8FC0C9 E69090
+8FC0CA E69092
+8FC0CB E69094
+8FC0CC E69098
+8FC0CD E6909E
+8FC0CE E690A0
+8FC0CF E690A2
+8FC0D0 E690A4
+8FC0D1 E690A5
+8FC0D2 E690A9
+8FC0D3 E690AA
+8FC0D4 E690AF
+8FC0D5 E690B0
+8FC0D6 E690B5
+8FC0D7 E690BD
+8FC0D8 E690BF
+8FC0D9 E6918B
+8FC0DA E6918F
+8FC0DB E69191
+8FC0DC E69192
+8FC0DD E69193
+8FC0DE E69194
+8FC0DF E6919A
+8FC0E0 E6919B
+8FC0E1 E6919C
+8FC0E2 E6919D
+8FC0E3 E6919F
+8FC0E4 E691A0
+8FC0E5 E691A1
+8FC0E6 E691A3
+8FC0E7 E691AD
+8FC0E8 E691B3
+8FC0E9 E691B4
+8FC0EA E691BB
+8FC0EB E691BD
+8FC0EC E69285
+8FC0ED E69287
+8FC0EE E6928F
+8FC0EF E69290
+8FC0F0 E69291
+8FC0F1 E69298
+8FC0F2 E69299
+8FC0F3 E6929B
+8FC0F4 E6929D
+8FC0F5 E6929F
+8FC0F6 E692A1
+8FC0F7 E692A3
+8FC0F8 E692A6
+8FC0F9 E692A8
+8FC0FA E692AC
+8FC0FB E692B3
+8FC0FC E692BD
+8FC0FD E692BE
+8FC0FE E692BF
+8FC1A1 E69384
+8FC1A2 E69389
+8FC1A3 E6938A
+8FC1A4 E6938B
+8FC1A5 E6938C
+8FC1A6 E6938E
+8FC1A7 E69390
+8FC1A8 E69391
+8FC1A9 E69395
+8FC1AA E69397
+8FC1AB E693A4
+8FC1AC E693A5
+8FC1AD E693A9
+8FC1AE E693AA
+8FC1AF E693AD
+8FC1B0 E693B0
+8FC1B1 E693B5
+8FC1B2 E693B7
+8FC1B3 E693BB
+8FC1B4 E693BF
+8FC1B5 E69481
+8FC1B6 E69484
+8FC1B7 E69488
+8FC1B8 E69489
+8FC1B9 E6948A
+8FC1BA E6948F
+8FC1BB E69493
+8FC1BC E69494
+8FC1BD E69496
+8FC1BE E69499
+8FC1BF E6949B
+8FC1C0 E6949E
+8FC1C1 E6949F
+8FC1C2 E694A2
+8FC1C3 E694A6
+8FC1C4 E694A9
+8FC1C5 E694AE
+8FC1C6 E694B1
+8FC1C7 E694BA
+8FC1C8 E694BC
+8FC1C9 E694BD
+8FC1CA E69583
+8FC1CB E69587
+8FC1CC E69589
+8FC1CD E69590
+8FC1CE E69592
+8FC1CF E69594
+8FC1D0 E6959F
+8FC1D1 E695A0
+8FC1D2 E695A7
+8FC1D3 E695AB
+8FC1D4 E695BA
+8FC1D5 E695BD
+8FC1D6 E69681
+8FC1D7 E69685
+8FC1D8 E6968A
+8FC1D9 E69692
+8FC1DA E69695
+8FC1DB E69698
+8FC1DC E6969D
+8FC1DD E696A0
+8FC1DE E696A3
+8FC1DF E696A6
+8FC1E0 E696AE
+8FC1E1 E696B2
+8FC1E2 E696B3
+8FC1E3 E696B4
+8FC1E4 E696BF
+8FC1E5 E69782
+8FC1E6 E69788
+8FC1E7 E69789
+8FC1E8 E6978E
+8FC1E9 E69790
+8FC1EA E69794
+8FC1EB E69796
+8FC1EC E69798
+8FC1ED E6979F
+8FC1EE E697B0
+8FC1EF E697B2
+8FC1F0 E697B4
+8FC1F1 E697B5
+8FC1F2 E697B9
+8FC1F3 E697BE
+8FC1F4 E697BF
+8FC1F5 E69880
+8FC1F6 E69884
+8FC1F7 E69888
+8FC1F8 E69889
+8FC1F9 E6988D
+8FC1FA E69891
+8FC1FB E69892
+8FC1FC E69895
+8FC1FD E69896
+8FC1FE E6989D
+8FC2A1 E6989E
+8FC2A2 E698A1
+8FC2A3 E698A2
+8FC2A4 E698A3
+8FC2A5 E698A4
+8FC2A6 E698A6
+8FC2A7 E698A9
+8FC2A8 E698AA
+8FC2A9 E698AB
+8FC2AA E698AC
+8FC2AB E698AE
+8FC2AC E698B0
+8FC2AD E698B1
+8FC2AE E698B3
+8FC2AF E698B9
+8FC2B0 E698B7
+8FC2B1 E69980
+8FC2B2 E69985
+8FC2B3 E69986
+8FC2B4 E6998A
+8FC2B5 E6998C
+8FC2B6 E69991
+8FC2B7 E6998E
+8FC2B8 E69997
+8FC2B9 E69998
+8FC2BA E69999
+8FC2BB E6999B
+8FC2BC E6999C
+8FC2BD E699A0
+8FC2BE E699A1
+8FC2BF E69BBB
+8FC2C0 E699AA
+8FC2C1 E699AB
+8FC2C2 E699AC
+8FC2C3 E699BE
+8FC2C4 E699B3
+8FC2C5 E699B5
+8FC2C6 E699BF
+8FC2C7 E699B7
+8FC2C8 E699B8
+8FC2C9 E699B9
+8FC2CA E699BB
+8FC2CB E69A80
+8FC2CC E699BC
+8FC2CD E69A8B
+8FC2CE E69A8C
+8FC2CF E69A8D
+8FC2D0 E69A90
+8FC2D1 E69A92
+8FC2D2 E69A99
+8FC2D3 E69A9A
+8FC2D4 E69A9B
+8FC2D5 E69A9C
+8FC2D6 E69A9F
+8FC2D7 E69AA0
+8FC2D8 E69AA4
+8FC2D9 E69AAD
+8FC2DA E69AB1
+8FC2DB E69AB2
+8FC2DC E69AB5
+8FC2DD E69ABB
+8FC2DE E69ABF
+8FC2DF E69B80
+8FC2E0 E69B82
+8FC2E1 E69B83
+8FC2E2 E69B88
+8FC2E3 E69B8C
+8FC2E4 E69B8E
+8FC2E5 E69B8F
+8FC2E6 E69B94
+8FC2E7 E69B9B
+8FC2E8 E69B9F
+8FC2E9 E69BA8
+8FC2EA E69BAB
+8FC2EB E69BAC
+8FC2EC E69BAE
+8FC2ED E69BBA
+8FC2EE E69C85
+8FC2EF E69C87
+8FC2F0 E69C8E
+8FC2F1 E69C93
+8FC2F2 E69C99
+8FC2F3 E69C9C
+8FC2F4 E69CA0
+8FC2F5 E69CA2
+8FC2F6 E69CB3
+8FC2F7 E69CBE
+8FC2F8 E69D85
+8FC2F9 E69D87
+8FC2FA E69D88
+8FC2FB E69D8C
+8FC2FC E69D94
+8FC2FD E69D95
+8FC2FE E69D9D
+8FC3A1 E69DA6
+8FC3A2 E69DAC
+8FC3A3 E69DAE
+8FC3A4 E69DB4
+8FC3A5 E69DB6
+8FC3A6 E69DBB
+8FC3A7 E69E81
+8FC3A8 E69E84
+8FC3A9 E69E8E
+8FC3AA E69E8F
+8FC3AB E69E91
+8FC3AC E69E93
+8FC3AD E69E96
+8FC3AE E69E98
+8FC3AF E69E99
+8FC3B0 E69E9B
+8FC3B1 E69EB0
+8FC3B2 E69EB1
+8FC3B3 E69EB2
+8FC3B4 E69EB5
+8FC3B5 E69EBB
+8FC3B6 E69EBC
+8FC3B7 E69EBD
+8FC3B8 E69FB9
+8FC3B9 E69F80
+8FC3BA E69F82
+8FC3BB E69F83
+8FC3BC E69F85
+8FC3BD E69F88
+8FC3BE E69F89
+8FC3BF E69F92
+8FC3C0 E69F97
+8FC3C1 E69F99
+8FC3C2 E69F9C
+8FC3C3 E69FA1
+8FC3C4 E69FA6
+8FC3C5 E69FB0
+8FC3C6 E69FB2
+8FC3C7 E69FB6
+8FC3C8 E69FB7
+8FC3C9 E6A192
+8FC3CA E6A094
+8FC3CB E6A099
+8FC3CC E6A09D
+8FC3CD E6A09F
+8FC3CE E6A0A8
+8FC3CF E6A0A7
+8FC3D0 E6A0AC
+8FC3D1 E6A0AD
+8FC3D2 E6A0AF
+8FC3D3 E6A0B0
+8FC3D4 E6A0B1
+8FC3D5 E6A0B3
+8FC3D6 E6A0BB
+8FC3D7 E6A0BF
+8FC3D8 E6A184
+8FC3D9 E6A185
+8FC3DA E6A18A
+8FC3DB E6A18C
+8FC3DC E6A195
+8FC3DD E6A197
+8FC3DE E6A198
+8FC3DF E6A19B
+8FC3E0 E6A1AB
+8FC3E1 E6A1AE
+8FC3E2 E6A1AF
+8FC3E3 E6A1B0
+8FC3E4 E6A1B1
+8FC3E5 E6A1B2
+8FC3E6 E6A1B5
+8FC3E7 E6A1B9
+8FC3E8 E6A1BA
+8FC3E9 E6A1BB
+8FC3EA E6A1BC
+8FC3EB E6A282
+8FC3EC E6A284
+8FC3ED E6A286
+8FC3EE E6A288
+8FC3EF E6A296
+8FC3F0 E6A298
+8FC3F1 E6A29A
+8FC3F2 E6A29C
+8FC3F3 E6A2A1
+8FC3F4 E6A2A3
+8FC3F5 E6A2A5
+8FC3F6 E6A2A9
+8FC3F7 E6A2AA
+8FC3F8 E6A2AE
+8FC3F9 E6A2B2
+8FC3FA E6A2BB
+8FC3FB E6A385
+8FC3FC E6A388
+8FC3FD E6A38C
+8FC3FE E6A38F
+8FC4A1 E6A390
+8FC4A2 E6A391
+8FC4A3 E6A393
+8FC4A4 E6A396
+8FC4A5 E6A399
+8FC4A6 E6A39C
+8FC4A7 E6A39D
+8FC4A8 E6A3A5
+8FC4A9 E6A3A8
+8FC4AA E6A3AA
+8FC4AB E6A3AB
+8FC4AC E6A3AC
+8FC4AD E6A3AD
+8FC4AE E6A3B0
+8FC4AF E6A3B1
+8FC4B0 E6A3B5
+8FC4B1 E6A3B6
+8FC4B2 E6A3BB
+8FC4B3 E6A3BC
+8FC4B4 E6A3BD
+8FC4B5 E6A486
+8FC4B6 E6A489
+8FC4B7 E6A48A
+8FC4B8 E6A490
+8FC4B9 E6A491
+8FC4BA E6A493
+8FC4BB E6A496
+8FC4BC E6A497
+8FC4BD E6A4B1
+8FC4BE E6A4B3
+8FC4BF E6A4B5
+8FC4C0 E6A4B8
+8FC4C1 E6A4BB
+8FC4C2 E6A582
+8FC4C3 E6A585
+8FC4C4 E6A589
+8FC4C5 E6A58E
+8FC4C6 E6A597
+8FC4C7 E6A59B
+8FC4C8 E6A5A3
+8FC4C9 E6A5A4
+8FC4CA E6A5A5
+8FC4CB E6A5A6
+8FC4CC E6A5A8
+8FC4CD E6A5A9
+8FC4CE E6A5AC
+8FC4CF E6A5B0
+8FC4D0 E6A5B1
+8FC4D1 E6A5B2
+8FC4D2 E6A5BA
+8FC4D3 E6A5BB
+8FC4D4 E6A5BF
+8FC4D5 E6A680
+8FC4D6 E6A68D
+8FC4D7 E6A692
+8FC4D8 E6A696
+8FC4D9 E6A698
+8FC4DA E6A6A1
+8FC4DB E6A6A5
+8FC4DC E6A6A6
+8FC4DD E6A6A8
+8FC4DE E6A6AB
+8FC4DF E6A6AD
+8FC4E0 E6A6AF
+8FC4E1 E6A6B7
+8FC4E2 E6A6B8
+8FC4E3 E6A6BA
+8FC4E4 E6A6BC
+8FC4E5 E6A785
+8FC4E6 E6A788
+8FC4E7 E6A791
+8FC4E8 E6A796
+8FC4E9 E6A797
+8FC4EA E6A7A2
+8FC4EB E6A7A5
+8FC4EC E6A7AE
+8FC4ED E6A7AF
+8FC4EE E6A7B1
+8FC4EF E6A7B3
+8FC4F0 E6A7B5
+8FC4F1 E6A7BE
+8FC4F2 E6A880
+8FC4F3 E6A881
+8FC4F4 E6A883
+8FC4F5 E6A88F
+8FC4F6 E6A891
+8FC4F7 E6A895
+8FC4F8 E6A89A
+8FC4F9 E6A89D
+8FC4FA E6A8A0
+8FC4FB E6A8A4
+8FC4FC E6A8A8
+8FC4FD E6A8B0
+8FC4FE E6A8B2
+8FC5A1 E6A8B4
+8FC5A2 E6A8B7
+8FC5A3 E6A8BB
+8FC5A4 E6A8BE
+8FC5A5 E6A8BF
+8FC5A6 E6A985
+8FC5A7 E6A986
+8FC5A8 E6A989
+8FC5A9 E6A98A
+8FC5AA E6A98E
+8FC5AB E6A990
+8FC5AC E6A991
+8FC5AD E6A992
+8FC5AE E6A995
+8FC5AF E6A996
+8FC5B0 E6A99B
+8FC5B1 E6A9A4
+8FC5B2 E6A9A7
+8FC5B3 E6A9AA
+8FC5B4 E6A9B1
+8FC5B5 E6A9B3
+8FC5B6 E6A9BE
+8FC5B7 E6AA81
+8FC5B8 E6AA83
+8FC5B9 E6AA86
+8FC5BA E6AA87
+8FC5BB E6AA89
+8FC5BC E6AA8B
+8FC5BD E6AA91
+8FC5BE E6AA9B
+8FC5BF E6AA9D
+8FC5C0 E6AA9E
+8FC5C1 E6AA9F
+8FC5C2 E6AAA5
+8FC5C3 E6AAAB
+8FC5C4 E6AAAF
+8FC5C5 E6AAB0
+8FC5C6 E6AAB1
+8FC5C7 E6AAB4
+8FC5C8 E6AABD
+8FC5C9 E6AABE
+8FC5CA E6AABF
+8FC5CB E6AB86
+8FC5CC E6AB89
+8FC5CD E6AB88
+8FC5CE E6AB8C
+8FC5CF E6AB90
+8FC5D0 E6AB94
+8FC5D1 E6AB95
+8FC5D2 E6AB96
+8FC5D3 E6AB9C
+8FC5D4 E6AB9D
+8FC5D5 E6ABA4
+8FC5D6 E6ABA7
+8FC5D7 E6ABAC
+8FC5D8 E6ABB0
+8FC5D9 E6ABB1
+8FC5DA E6ABB2
+8FC5DB E6ABBC
+8FC5DC E6ABBD
+8FC5DD E6AC82
+8FC5DE E6AC83
+8FC5DF E6AC86
+8FC5E0 E6AC87
+8FC5E1 E6AC89
+8FC5E2 E6AC8F
+8FC5E3 E6AC90
+8FC5E4 E6AC91
+8FC5E5 E6AC97
+8FC5E6 E6AC9B
+8FC5E7 E6AC9E
+8FC5E8 E6ACA4
+8FC5E9 E6ACA8
+8FC5EA E6ACAB
+8FC5EB E6ACAC
+8FC5EC E6ACAF
+8FC5ED E6ACB5
+8FC5EE E6ACB6
+8FC5EF E6ACBB
+8FC5F0 E6ACBF
+8FC5F1 E6AD86
+8FC5F2 E6AD8A
+8FC5F3 E6AD8D
+8FC5F4 E6AD92
+8FC5F5 E6AD96
+8FC5F6 E6AD98
+8FC5F7 E6AD9D
+8FC5F8 E6ADA0
+8FC5F9 E6ADA7
+8FC5FA E6ADAB
+8FC5FB E6ADAE
+8FC5FC E6ADB0
+8FC5FD E6ADB5
+8FC5FE E6ADBD
+8FC6A1 E6ADBE
+8FC6A2 E6AE82
+8FC6A3 E6AE85
+8FC6A4 E6AE97
+8FC6A5 E6AE9B
+8FC6A6 E6AE9F
+8FC6A7 E6AEA0
+8FC6A8 E6AEA2
+8FC6A9 E6AEA3
+8FC6AA E6AEA8
+8FC6AB E6AEA9
+8FC6AC E6AEAC
+8FC6AD E6AEAD
+8FC6AE E6AEAE
+8FC6AF E6AEB0
+8FC6B0 E6AEB8
+8FC6B1 E6AEB9
+8FC6B2 E6AEBD
+8FC6B3 E6AEBE
+8FC6B4 E6AF83
+8FC6B5 E6AF84
+8FC6B6 E6AF89
+8FC6B7 E6AF8C
+8FC6B8 E6AF96
+8FC6B9 E6AF9A
+8FC6BA E6AFA1
+8FC6BB E6AFA3
+8FC6BC E6AFA6
+8FC6BD E6AFA7
+8FC6BE E6AFAE
+8FC6BF E6AFB1
+8FC6C0 E6AFB7
+8FC6C1 E6AFB9
+8FC6C2 E6AFBF
+8FC6C3 E6B082
+8FC6C4 E6B084
+8FC6C5 E6B085
+8FC6C6 E6B089
+8FC6C7 E6B08D
+8FC6C8 E6B08E
+8FC6C9 E6B090
+8FC6CA E6B092
+8FC6CB E6B099
+8FC6CC E6B09F
+8FC6CD E6B0A6
+8FC6CE E6B0A7
+8FC6CF E6B0A8
+8FC6D0 E6B0AC
+8FC6D1 E6B0AE
+8FC6D2 E6B0B3
+8FC6D3 E6B0B5
+8FC6D4 E6B0B6
+8FC6D5 E6B0BA
+8FC6D6 E6B0BB
+8FC6D7 E6B0BF
+8FC6D8 E6B18A
+8FC6D9 E6B18B
+8FC6DA E6B18D
+8FC6DB E6B18F
+8FC6DC E6B192
+8FC6DD E6B194
+8FC6DE E6B199
+8FC6DF E6B19B
+8FC6E0 E6B19C
+8FC6E1 E6B1AB
+8FC6E2 E6B1AD
+8FC6E3 E6B1AF
+8FC6E4 E6B1B4
+8FC6E5 E6B1B6
+8FC6E6 E6B1B8
+8FC6E7 E6B1B9
+8FC6E8 E6B1BB
+8FC6E9 E6B285
+8FC6EA E6B286
+8FC6EB E6B287
+8FC6EC E6B289
+8FC6ED E6B294
+8FC6EE E6B295
+8FC6EF E6B297
+8FC6F0 E6B298
+8FC6F1 E6B29C
+8FC6F2 E6B29F
+8FC6F3 E6B2B0
+8FC6F4 E6B2B2
+8FC6F5 E6B2B4
+8FC6F6 E6B382
+8FC6F7 E6B386
+8FC6F8 E6B38D
+8FC6F9 E6B38F
+8FC6FA E6B390
+8FC6FB E6B391
+8FC6FC E6B392
+8FC6FD E6B394
+8FC6FE E6B396
+8FC7A1 E6B39A
+8FC7A2 E6B39C
+8FC7A3 E6B3A0
+8FC7A4 E6B3A7
+8FC7A5 E6B3A9
+8FC7A6 E6B3AB
+8FC7A7 E6B3AC
+8FC7A8 E6B3AE
+8FC7A9 E6B3B2
+8FC7AA E6B3B4
+8FC7AB E6B484
+8FC7AC E6B487
+8FC7AD E6B48A
+8FC7AE E6B48E
+8FC7AF E6B48F
+8FC7B0 E6B491
+8FC7B1 E6B493
+8FC7B2 E6B49A
+8FC7B3 E6B4A6
+8FC7B4 E6B4A7
+8FC7B5 E6B4A8
+8FC7B6 E6B1A7
+8FC7B7 E6B4AE
+8FC7B8 E6B4AF
+8FC7B9 E6B4B1
+8FC7BA E6B4B9
+8FC7BB E6B4BC
+8FC7BC E6B4BF
+8FC7BD E6B597
+8FC7BE E6B59E
+8FC7BF E6B59F
+8FC7C0 E6B5A1
+8FC7C1 E6B5A5
+8FC7C2 E6B5A7
+8FC7C3 E6B5AF
+8FC7C4 E6B5B0
+8FC7C5 E6B5BC
+8FC7C6 E6B682
+8FC7C7 E6B687
+8FC7C8 E6B691
+8FC7C9 E6B692
+8FC7CA E6B694
+8FC7CB E6B696
+8FC7CC E6B697
+8FC7CD E6B698
+8FC7CE E6B6AA
+8FC7CF E6B6AC
+8FC7D0 E6B6B4
+8FC7D1 E6B6B7
+8FC7D2 E6B6B9
+8FC7D3 E6B6BD
+8FC7D4 E6B6BF
+8FC7D5 E6B784
+8FC7D6 E6B788
+8FC7D7 E6B78A
+8FC7D8 E6B78E
+8FC7D9 E6B78F
+8FC7DA E6B796
+8FC7DB E6B79B
+8FC7DC E6B79D
+8FC7DD E6B79F
+8FC7DE E6B7A0
+8FC7DF E6B7A2
+8FC7E0 E6B7A5
+8FC7E1 E6B7A9
+8FC7E2 E6B7AF
+8FC7E3 E6B7B0
+8FC7E4 E6B7B4
+8FC7E5 E6B7B6
+8FC7E6 E6B7BC
+8FC7E7 E6B880
+8FC7E8 E6B884
+8FC7E9 E6B89E
+8FC7EA E6B8A2
+8FC7EB E6B8A7
+8FC7EC E6B8B2
+8FC7ED E6B8B6
+8FC7EE E6B8B9
+8FC7EF E6B8BB
+8FC7F0 E6B8BC
+8FC7F1 E6B984
+8FC7F2 E6B985
+8FC7F3 E6B988
+8FC7F4 E6B989
+8FC7F5 E6B98B
+8FC7F6 E6B98F
+8FC7F7 E6B991
+8FC7F8 E6B992
+8FC7F9 E6B993
+8FC7FA E6B994
+8FC7FB E6B997
+8FC7FC E6B99C
+8FC7FD E6B99D
+8FC7FE E6B99E
+8FC8A1 E6B9A2
+8FC8A2 E6B9A3
+8FC8A3 E6B9A8
+8FC8A4 E6B9B3
+8FC8A5 E6B9BB
+8FC8A6 E6B9BD
+8FC8A7 E6BA8D
+8FC8A8 E6BA93
+8FC8A9 E6BA99
+8FC8AA E6BAA0
+8FC8AB E6BAA7
+8FC8AC E6BAAD
+8FC8AD E6BAAE
+8FC8AE E6BAB1
+8FC8AF E6BAB3
+8FC8B0 E6BABB
+8FC8B1 E6BABF
+8FC8B2 E6BB80
+8FC8B3 E6BB81
+8FC8B4 E6BB83
+8FC8B5 E6BB87
+8FC8B6 E6BB88
+8FC8B7 E6BB8A
+8FC8B8 E6BB8D
+8FC8B9 E6BB8E
+8FC8BA E6BB8F
+8FC8BB E6BBAB
+8FC8BC E6BBAD
+8FC8BD E6BBAE
+8FC8BE E6BBB9
+8FC8BF E6BBBB
+8FC8C0 E6BBBD
+8FC8C1 E6BC84
+8FC8C2 E6BC88
+8FC8C3 E6BC8A
+8FC8C4 E6BC8C
+8FC8C5 E6BC8D
+8FC8C6 E6BC96
+8FC8C7 E6BC98
+8FC8C8 E6BC9A
+8FC8C9 E6BC9B
+8FC8CA E6BCA6
+8FC8CB E6BCA9
+8FC8CC E6BCAA
+8FC8CD E6BCAF
+8FC8CE E6BCB0
+8FC8CF E6BCB3
+8FC8D0 E6BCB6
+8FC8D1 E6BCBB
+8FC8D2 E6BCBC
+8FC8D3 E6BCAD
+8FC8D4 E6BD8F
+8FC8D5 E6BD91
+8FC8D6 E6BD92
+8FC8D7 E6BD93
+8FC8D8 E6BD97
+8FC8D9 E6BD99
+8FC8DA E6BD9A
+8FC8DB E6BD9D
+8FC8DC E6BD9E
+8FC8DD E6BDA1
+8FC8DE E6BDA2
+8FC8DF E6BDA8
+8FC8E0 E6BDAC
+8FC8E1 E6BDBD
+8FC8E2 E6BDBE
+8FC8E3 E6BE83
+8FC8E4 E6BE87
+8FC8E5 E6BE88
+8FC8E6 E6BE8B
+8FC8E7 E6BE8C
+8FC8E8 E6BE8D
+8FC8E9 E6BE90
+8FC8EA E6BE92
+8FC8EB E6BE93
+8FC8EC E6BE94
+8FC8ED E6BE96
+8FC8EE E6BE9A
+8FC8EF E6BE9F
+8FC8F0 E6BEA0
+8FC8F1 E6BEA5
+8FC8F2 E6BEA6
+8FC8F3 E6BEA7
+8FC8F4 E6BEA8
+8FC8F5 E6BEAE
+8FC8F6 E6BEAF
+8FC8F7 E6BEB0
+8FC8F8 E6BEB5
+8FC8F9 E6BEB6
+8FC8FA E6BEBC
+8FC8FB E6BF85
+8FC8FC E6BF87
+8FC8FD E6BF88
+8FC8FE E6BF8A
+8FC9A1 E6BF9A
+8FC9A2 E6BF9E
+8FC9A3 E6BFA8
+8FC9A4 E6BFA9
+8FC9A5 E6BFB0
+8FC9A6 E6BFB5
+8FC9A7 E6BFB9
+8FC9A8 E6BFBC
+8FC9A9 E6BFBD
+8FC9AA E78080
+8FC9AB E78085
+8FC9AC E78086
+8FC9AD E78087
+8FC9AE E7808D
+8FC9AF E78097
+8FC9B0 E780A0
+8FC9B1 E780A3
+8FC9B2 E780AF
+8FC9B3 E780B4
+8FC9B4 E780B7
+8FC9B5 E780B9
+8FC9B6 E780BC
+8FC9B7 E78183
+8FC9B8 E78184
+8FC9B9 E78188
+8FC9BA E78189
+8FC9BB E7818A
+8FC9BC E7818B
+8FC9BD E78194
+8FC9BE E78195
+8FC9BF E7819D
+8FC9C0 E7819E
+8FC9C1 E7818E
+8FC9C2 E781A4
+8FC9C3 E781A5
+8FC9C4 E781AC
+8FC9C5 E781AE
+8FC9C6 E781B5
+8FC9C7 E781B6
+8FC9C8 E781BE
+8FC9C9 E78281
+8FC9CA E78285
+8FC9CB E78286
+8FC9CC E78294
+8FC9CD E78295
+8FC9CE E78296
+8FC9CF E78297
+8FC9D0 E78298
+8FC9D1 E7829B
+8FC9D2 E782A4
+8FC9D3 E782AB
+8FC9D4 E782B0
+8FC9D5 E782B1
+8FC9D6 E782B4
+8FC9D7 E782B7
+8FC9D8 E7838A
+8FC9D9 E78391
+8FC9DA E78393
+8FC9DB E78394
+8FC9DC E78395
+8FC9DD E78396
+8FC9DE E78398
+8FC9DF E7839C
+8FC9E0 E783A4
+8FC9E1 E783BA
+8FC9E2 E78483
+8FC9E3 E78484
+8FC9E4 E78485
+8FC9E5 E78486
+8FC9E6 E78487
+8FC9E7 E7848B
+8FC9E8 E7848C
+8FC9E9 E7848F
+8FC9EA E7849E
+8FC9EB E784A0
+8FC9EC E784AB
+8FC9ED E784AD
+8FC9EE E784AF
+8FC9EF E784B0
+8FC9F0 E784B1
+8FC9F1 E784B8
+8FC9F2 E78581
+8FC9F3 E78585
+8FC9F4 E78586
+8FC9F5 E78587
+8FC9F6 E7858A
+8FC9F7 E7858B
+8FC9F8 E78590
+8FC9F9 E78592
+8FC9FA E78597
+8FC9FB E7859A
+8FC9FC E7859C
+8FC9FD E7859E
+8FC9FE E785A0
+8FCAA1 E785A8
+8FCAA2 E785B9
+8FCAA3 E78680
+8FCAA4 E78685
+8FCAA5 E78687
+8FCAA6 E7868C
+8FCAA7 E78692
+8FCAA8 E7869A
+8FCAA9 E7869B
+8FCAAA E786A0
+8FCAAB E786A2
+8FCAAC E786AF
+8FCAAD E786B0
+8FCAAE E786B2
+8FCAAF E786B3
+8FCAB0 E786BA
+8FCAB1 E786BF
+8FCAB2 E78780
+8FCAB3 E78781
+8FCAB4 E78784
+8FCAB5 E7878B
+8FCAB6 E7878C
+8FCAB7 E78793
+8FCAB8 E78796
+8FCAB9 E78799
+8FCABA E7879A
+8FCABB E7879C
+8FCABC E787B8
+8FCABD E787BE
+8FCABE E78880
+8FCABF E78887
+8FCAC0 E78888
+8FCAC1 E78889
+8FCAC2 E78893
+8FCAC3 E78897
+8FCAC4 E7889A
+8FCAC5 E7889D
+8FCAC6 E7889F
+8FCAC7 E788A4
+8FCAC8 E788AB
+8FCAC9 E788AF
+8FCACA E788B4
+8FCACB E788B8
+8FCACC E788B9
+8FCACD E78981
+8FCACE E78982
+8FCACF E78983
+8FCAD0 E78985
+8FCAD1 E7898E
+8FCAD2 E7898F
+8FCAD3 E78990
+8FCAD4 E78993
+8FCAD5 E78995
+8FCAD6 E78996
+8FCAD7 E7899A
+8FCAD8 E7899C
+8FCAD9 E7899E
+8FCADA E789A0
+8FCADB E789A3
+8FCADC E789A8
+8FCADD E789AB
+8FCADE E789AE
+8FCADF E789AF
+8FCAE0 E789B1
+8FCAE1 E789B7
+8FCAE2 E789B8
+8FCAE3 E789BB
+8FCAE4 E789BC
+8FCAE5 E789BF
+8FCAE6 E78A84
+8FCAE7 E78A89
+8FCAE8 E78A8D
+8FCAE9 E78A8E
+8FCAEA E78A93
+8FCAEB E78A9B
+8FCAEC E78AA8
+8FCAED E78AAD
+8FCAEE E78AAE
+8FCAEF E78AB1
+8FCAF0 E78AB4
+8FCAF1 E78ABE
+8FCAF2 E78B81
+8FCAF3 E78B87
+8FCAF4 E78B89
+8FCAF5 E78B8C
+8FCAF6 E78B95
+8FCAF7 E78B96
+8FCAF8 E78B98
+8FCAF9 E78B9F
+8FCAFA E78BA5
+8FCAFB E78BB3
+8FCAFC E78BB4
+8FCAFD E78BBA
+8FCAFE E78BBB
+8FCBA1 E78BBE
+8FCBA2 E78C82
+8FCBA3 E78C84
+8FCBA4 E78C85
+8FCBA5 E78C87
+8FCBA6 E78C8B
+8FCBA7 E78C8D
+8FCBA8 E78C92
+8FCBA9 E78C93
+8FCBAA E78C98
+8FCBAB E78C99
+8FCBAC E78C9E
+8FCBAD E78CA2
+8FCBAE E78CA4
+8FCBAF E78CA7
+8FCBB0 E78CA8
+8FCBB1 E78CAC
+8FCBB2 E78CB1
+8FCBB3 E78CB2
+8FCBB4 E78CB5
+8FCBB5 E78CBA
+8FCBB6 E78CBB
+8FCBB7 E78CBD
+8FCBB8 E78D83
+8FCBB9 E78D8D
+8FCBBA E78D90
+8FCBBB E78D92
+8FCBBC E78D96
+8FCBBD E78D98
+8FCBBE E78D9D
+8FCBBF E78D9E
+8FCBC0 E78D9F
+8FCBC1 E78DA0
+8FCBC2 E78DA6
+8FCBC3 E78DA7
+8FCBC4 E78DA9
+8FCBC5 E78DAB
+8FCBC6 E78DAC
+8FCBC7 E78DAE
+8FCBC8 E78DAF
+8FCBC9 E78DB1
+8FCBCA E78DB7
+8FCBCB E78DB9
+8FCBCC E78DBC
+8FCBCD E78E80
+8FCBCE E78E81
+8FCBCF E78E83
+8FCBD0 E78E85
+8FCBD1 E78E86
+8FCBD2 E78E8E
+8FCBD3 E78E90
+8FCBD4 E78E93
+8FCBD5 E78E95
+8FCBD6 E78E97
+8FCBD7 E78E98
+8FCBD8 E78E9C
+8FCBD9 E78E9E
+8FCBDA E78E9F
+8FCBDB E78EA0
+8FCBDC E78EA2
+8FCBDD E78EA5
+8FCBDE E78EA6
+8FCBDF E78EAA
+8FCBE0 E78EAB
+8FCBE1 E78EAD
+8FCBE2 E78EB5
+8FCBE3 E78EB7
+8FCBE4 E78EB9
+8FCBE5 E78EBC
+8FCBE6 E78EBD
+8FCBE7 E78EBF
+8FCBE8 E78F85
+8FCBE9 E78F86
+8FCBEA E78F89
+8FCBEB E78F8B
+8FCBEC E78F8C
+8FCBED E78F8F
+8FCBEE E78F92
+8FCBEF E78F93
+8FCBF0 E78F96
+8FCBF1 E78F99
+8FCBF2 E78F9D
+8FCBF3 E78FA1
+8FCBF4 E78FA3
+8FCBF5 E78FA6
+8FCBF6 E78FA7
+8FCBF7 E78FA9
+8FCBF8 E78FB4
+8FCBF9 E78FB5
+8FCBFA E78FB7
+8FCBFB E78FB9
+8FCBFC E78FBA
+8FCBFD E78FBB
+8FCBFE E78FBD
+8FCCA1 E78FBF
+8FCCA2 E79080
+8FCCA3 E79081
+8FCCA4 E79084
+8FCCA5 E79087
+8FCCA6 E7908A
+8FCCA7 E79091
+8FCCA8 E7909A
+8FCCA9 E7909B
+8FCCAA E790A4
+8FCCAB E790A6
+8FCCAC E790A8
+8FCCAD E790A9
+8FCCAE E790AA
+8FCCAF E790AB
+8FCCB0 E790AC
+8FCCB1 E790AD
+8FCCB2 E790AE
+8FCCB3 E790AF
+8FCCB4 E790B0
+8FCCB5 E790B1
+8FCCB6 E790B9
+8FCCB7 E79180
+8FCCB8 E79183
+8FCCB9 E79184
+8FCCBA E79186
+8FCCBB E79187
+8FCCBC E7918B
+8FCCBD E7918D
+8FCCBE E79191
+8FCCBF E79192
+8FCCC0 E79197
+8FCCC1 E7919D
+8FCCC2 E791A2
+8FCCC3 E791A6
+8FCCC4 E791A7
+8FCCC5 E791A8
+8FCCC6 E791AB
+8FCCC7 E791AD
+8FCCC8 E791AE
+8FCCC9 E791B1
+8FCCCA E791B2
+8FCCCB E79280
+8FCCCC E79281
+8FCCCD E79285
+8FCCCE E79286
+8FCCCF E79287
+8FCCD0 E79289
+8FCCD1 E7928F
+8FCCD2 E79290
+8FCCD3 E79291
+8FCCD4 E79292
+8FCCD5 E79298
+8FCCD6 E79299
+8FCCD7 E7929A
+8FCCD8 E7929C
+8FCCD9 E7929F
+8FCCDA E792A0
+8FCCDB E792A1
+8FCCDC E792A3
+8FCCDD E792A6
+8FCCDE E792A8
+8FCCDF E792A9
+8FCCE0 E792AA
+8FCCE1 E792AB
+8FCCE2 E792AE
+8FCCE3 E792AF
+8FCCE4 E792B1
+8FCCE5 E792B2
+8FCCE6 E792B5
+8FCCE7 E792B9
+8FCCE8 E792BB
+8FCCE9 E792BF
+8FCCEA E79388
+8FCCEB E79389
+8FCCEC E7938C
+8FCCED E79390
+8FCCEE E79393
+8FCCEF E79398
+8FCCF0 E7939A
+8FCCF1 E7939B
+8FCCF2 E7939E
+8FCCF3 E7939F
+8FCCF4 E793A4
+8FCCF5 E793A8
+8FCCF6 E793AA
+8FCCF7 E793AB
+8FCCF8 E793AF
+8FCCF9 E793B4
+8FCCFA E793BA
+8FCCFB E793BB
+8FCCFC E793BC
+8FCCFD E793BF
+8FCCFE E79486
+8FCDA1 E79492
+8FCDA2 E79496
+8FCDA3 E79497
+8FCDA4 E794A0
+8FCDA5 E794A1
+8FCDA6 E794A4
+8FCDA7 E794A7
+8FCDA8 E794A9
+8FCDA9 E794AA
+8FCDAA E794AF
+8FCDAB E794B6
+8FCDAC E794B9
+8FCDAD E794BD
+8FCDAE E794BE
+8FCDAF E794BF
+8FCDB0 E79580
+8FCDB1 E79583
+8FCDB2 E79587
+8FCDB3 E79588
+8FCDB4 E7958E
+8FCDB5 E79590
+8FCDB6 E79592
+8FCDB7 E79597
+8FCDB8 E7959E
+8FCDB9 E7959F
+8FCDBA E795A1
+8FCDBB E795AF
+8FCDBC E795B1
+8FCDBD E795B9
+8FCDBE E795BA
+8FCDBF E795BB
+8FCDC0 E795BC
+8FCDC1 E795BD
+8FCDC2 E795BE
+8FCDC3 E79681
+8FCDC4 E79685
+8FCDC5 E79690
+8FCDC6 E79692
+8FCDC7 E79693
+8FCDC8 E79695
+8FCDC9 E79699
+8FCDCA E7969C
+8FCDCB E796A2
+8FCDCC E796A4
+8FCDCD E796B4
+8FCDCE E796BA
+8FCDCF E796BF
+8FCDD0 E79780
+8FCDD1 E79781
+8FCDD2 E79784
+8FCDD3 E79786
+8FCDD4 E7978C
+8FCDD5 E7978E
+8FCDD6 E7978F
+8FCDD7 E79797
+8FCDD8 E7979C
+8FCDD9 E7979F
+8FCDDA E797A0
+8FCDDB E797A1
+8FCDDC E797A4
+8FCDDD E797A7
+8FCDDE E797AC
+8FCDDF E797AE
+8FCDE0 E797AF
+8FCDE1 E797B1
+8FCDE2 E797B9
+8FCDE3 E79880
+8FCDE4 E79882
+8FCDE5 E79883
+8FCDE6 E79884
+8FCDE7 E79887
+8FCDE8 E79888
+8FCDE9 E7988A
+8FCDEA E7988C
+8FCDEB E7988F
+8FCDEC E79892
+8FCDED E79893
+8FCDEE E79895
+8FCDEF E79896
+8FCDF0 E79899
+8FCDF1 E7989B
+8FCDF2 E7989C
+8FCDF3 E7989D
+8FCDF4 E7989E
+8FCDF5 E798A3
+8FCDF6 E798A5
+8FCDF7 E798A6
+8FCDF8 E798A9
+8FCDF9 E798AD
+8FCDFA E798B2
+8FCDFB E798B3
+8FCDFC E798B5
+8FCDFD E798B8
+8FCDFE E798B9
+8FCEA1 E798BA
+8FCEA2 E798BC
+8FCEA3 E7998A
+8FCEA4 E79980
+8FCEA5 E79981
+8FCEA6 E79983
+8FCEA7 E79984
+8FCEA8 E79985
+8FCEA9 E79989
+8FCEAA E7998B
+8FCEAB E79995
+8FCEAC E79999
+8FCEAD E7999F
+8FCEAE E799A4
+8FCEAF E799A5
+8FCEB0 E799AD
+8FCEB1 E799AE
+8FCEB2 E799AF
+8FCEB3 E799B1
+8FCEB4 E799B4
+8FCEB5 E79A81
+8FCEB6 E79A85
+8FCEB7 E79A8C
+8FCEB8 E79A8D
+8FCEB9 E79A95
+8FCEBA E79A9B
+8FCEBB E79A9C
+8FCEBC E79A9D
+8FCEBD E79A9F
+8FCEBE E79AA0
+8FCEBF E79AA2
+8FCEC0 E79AA3
+8FCEC1 E79AA4
+8FCEC2 E79AA5
+8FCEC3 E79AA6
+8FCEC4 E79AA7
+8FCEC5 E79AA8
+8FCEC6 E79AAA
+8FCEC7 E79AAD
+8FCEC8 E79ABD
+8FCEC9 E79B81
+8FCECA E79B85
+8FCECB E79B89
+8FCECC E79B8B
+8FCECD E79B8C
+8FCECE E79B8E
+8FCECF E79B94
+8FCED0 E79B99
+8FCED1 E79BA0
+8FCED2 E79BA6
+8FCED3 E79BA8
+8FCED4 E79BAC
+8FCED5 E79BB0
+8FCED6 E79BB1
+8FCED7 E79BB6
+8FCED8 E79BB9
+8FCED9 E79BBC
+8FCEDA E79C80
+8FCEDB E79C86
+8FCEDC E79C8A
+8FCEDD E79C8E
+8FCEDE E79C92
+8FCEDF E79C94
+8FCEE0 E79C95
+8FCEE1 E79C97
+8FCEE2 E79C99
+8FCEE3 E79C9A
+8FCEE4 E79C9C
+8FCEE5 E79CA2
+8FCEE6 E79CA8
+8FCEE7 E79CAD
+8FCEE8 E79CAE
+8FCEE9 E79CAF
+8FCEEA E79CB4
+8FCEEB E79CB5
+8FCEEC E79CB6
+8FCEED E79CB9
+8FCEEE E79CBD
+8FCEEF E79CBE
+8FCEF0 E79D82
+8FCEF1 E79D85
+8FCEF2 E79D86
+8FCEF3 E79D8A
+8FCEF4 E79D8D
+8FCEF5 E79D8E
+8FCEF6 E79D8F
+8FCEF7 E79D92
+8FCEF8 E79D96
+8FCEF9 E79D97
+8FCEFA E79D9C
+8FCEFB E79D9E
+8FCEFC E79D9F
+8FCEFD E79DA0
+8FCEFE E79DA2
+8FCFA1 E79DA4
+8FCFA2 E79DA7
+8FCFA3 E79DAA
+8FCFA4 E79DAC
+8FCFA5 E79DB0
+8FCFA6 E79DB2
+8FCFA7 E79DB3
+8FCFA8 E79DB4
+8FCFA9 E79DBA
+8FCFAA E79DBD
+8FCFAB E79E80
+8FCFAC E79E84
+8FCFAD E79E8C
+8FCFAE E79E8D
+8FCFAF E79E94
+8FCFB0 E79E95
+8FCFB1 E79E96
+8FCFB2 E79E9A
+8FCFB3 E79E9F
+8FCFB4 E79EA2
+8FCFB5 E79EA7
+8FCFB6 E79EAA
+8FCFB7 E79EAE
+8FCFB8 E79EAF
+8FCFB9 E79EB1
+8FCFBA E79EB5
+8FCFBB E79EBE
+8FCFBC E79F83
+8FCFBD E79F89
+8FCFBE E79F91
+8FCFBF E79F92
+8FCFC0 E79F95
+8FCFC1 E79F99
+8FCFC2 E79F9E
+8FCFC3 E79F9F
+8FCFC4 E79FA0
+8FCFC5 E79FA4
+8FCFC6 E79FA6
+8FCFC7 E79FAA
+8FCFC8 E79FAC
+8FCFC9 E79FB0
+8FCFCA E79FB1
+8FCFCB E79FB4
+8FCFCC E79FB8
+8FCFCD E79FBB
+8FCFCE E7A085
+8FCFCF E7A086
+8FCFD0 E7A089
+8FCFD1 E7A08D
+8FCFD2 E7A08E
+8FCFD3 E7A091
+8FCFD4 E7A09D
+8FCFD5 E7A0A1
+8FCFD6 E7A0A2
+8FCFD7 E7A0A3
+8FCFD8 E7A0AD
+8FCFD9 E7A0AE
+8FCFDA E7A0B0
+8FCFDB E7A0B5
+8FCFDC E7A0B7
+8FCFDD E7A183
+8FCFDE E7A184
+8FCFDF E7A187
+8FCFE0 E7A188
+8FCFE1 E7A18C
+8FCFE2 E7A18E
+8FCFE3 E7A192
+8FCFE4 E7A19C
+8FCFE5 E7A19E
+8FCFE6 E7A1A0
+8FCFE7 E7A1A1
+8FCFE8 E7A1A3
+8FCFE9 E7A1A4
+8FCFEA E7A1A8
+8FCFEB E7A1AA
+8FCFEC E7A1AE
+8FCFED E7A1BA
+8FCFEE E7A1BE
+8FCFEF E7A28A
+8FCFF0 E7A28F
+8FCFF1 E7A294
+8FCFF2 E7A298
+8FCFF3 E7A2A1
+8FCFF4 E7A29D
+8FCFF5 E7A29E
+8FCFF6 E7A29F
+8FCFF7 E7A2A4
+8FCFF8 E7A2A8
+8FCFF9 E7A2AC
+8FCFFA E7A2AD
+8FCFFB E7A2B0
+8FCFFC E7A2B1
+8FCFFD E7A2B2
+8FCFFE E7A2B3
+8FD0A1 E7A2BB
+8FD0A2 E7A2BD
+8FD0A3 E7A2BF
+8FD0A4 E7A387
+8FD0A5 E7A388
+8FD0A6 E7A389
+8FD0A7 E7A38C
+8FD0A8 E7A38E
+8FD0A9 E7A392
+8FD0AA E7A393
+8FD0AB E7A395
+8FD0AC E7A396
+8FD0AD E7A3A4
+8FD0AE E7A39B
+8FD0AF E7A39F
+8FD0B0 E7A3A0
+8FD0B1 E7A3A1
+8FD0B2 E7A3A6
+8FD0B3 E7A3AA
+8FD0B4 E7A3B2
+8FD0B5 E7A3B3
+8FD0B6 E7A480
+8FD0B7 E7A3B6
+8FD0B8 E7A3B7
+8FD0B9 E7A3BA
+8FD0BA E7A3BB
+8FD0BB E7A3BF
+8FD0BC E7A486
+8FD0BD E7A48C
+8FD0BE E7A490
+8FD0BF E7A49A
+8FD0C0 E7A49C
+8FD0C1 E7A49E
+8FD0C2 E7A49F
+8FD0C3 E7A4A0
+8FD0C4 E7A4A5
+8FD0C5 E7A4A7
+8FD0C6 E7A4A9
+8FD0C7 E7A4AD
+8FD0C8 E7A4B1
+8FD0C9 E7A4B4
+8FD0CA E7A4B5
+8FD0CB E7A4BB
+8FD0CC E7A4BD
+8FD0CD E7A4BF
+8FD0CE E7A584
+8FD0CF E7A585
+8FD0D0 E7A586
+8FD0D1 E7A58A
+8FD0D2 E7A58B
+8FD0D3 E7A58F
+8FD0D4 E7A591
+8FD0D5 E7A594
+8FD0D6 E7A598
+8FD0D7 E7A59B
+8FD0D8 E7A59C
+8FD0D9 E7A5A7
+8FD0DA E7A5A9
+8FD0DB E7A5AB
+8FD0DC E7A5B2
+8FD0DD E7A5B9
+8FD0DE E7A5BB
+8FD0DF E7A5BC
+8FD0E0 E7A5BE
+8FD0E1 E7A68B
+8FD0E2 E7A68C
+8FD0E3 E7A691
+8FD0E4 E7A693
+8FD0E5 E7A694
+8FD0E6 E7A695
+8FD0E7 E7A696
+8FD0E8 E7A698
+8FD0E9 E7A69B
+8FD0EA E7A69C
+8FD0EB E7A6A1
+8FD0EC E7A6A8
+8FD0ED E7A6A9
+8FD0EE E7A6AB
+8FD0EF E7A6AF
+8FD0F0 E7A6B1
+8FD0F1 E7A6B4
+8FD0F2 E7A6B8
+8FD0F3 E7A6BB
+8FD0F4 E7A782
+8FD0F5 E7A784
+8FD0F6 E7A787
+8FD0F7 E7A788
+8FD0F8 E7A78A
+8FD0F9 E7A78F
+8FD0FA E7A794
+8FD0FB E7A796
+8FD0FC E7A79A
+8FD0FD E7A79D
+8FD0FE E7A79E
+8FD1A1 E7A7A0
+8FD1A2 E7A7A2
+8FD1A3 E7A7A5
+8FD1A4 E7A7AA
+8FD1A5 E7A7AB
+8FD1A6 E7A7AD
+8FD1A7 E7A7B1
+8FD1A8 E7A7B8
+8FD1A9 E7A7BC
+8FD1AA E7A882
+8FD1AB E7A883
+8FD1AC E7A887
+8FD1AD E7A889
+8FD1AE E7A88A
+8FD1AF E7A88C
+8FD1B0 E7A891
+8FD1B1 E7A895
+8FD1B2 E7A89B
+8FD1B3 E7A89E
+8FD1B4 E7A8A1
+8FD1B5 E7A8A7
+8FD1B6 E7A8AB
+8FD1B7 E7A8AD
+8FD1B8 E7A8AF
+8FD1B9 E7A8B0
+8FD1BA E7A8B4
+8FD1BB E7A8B5
+8FD1BC E7A8B8
+8FD1BD E7A8B9
+8FD1BE E7A8BA
+8FD1BF E7A984
+8FD1C0 E7A985
+8FD1C1 E7A987
+8FD1C2 E7A988
+8FD1C3 E7A98C
+8FD1C4 E7A995
+8FD1C5 E7A996
+8FD1C6 E7A999
+8FD1C7 E7A99C
+8FD1C8 E7A99D
+8FD1C9 E7A99F
+8FD1CA E7A9A0
+8FD1CB E7A9A5
+8FD1CC E7A9A7
+8FD1CD E7A9AA
+8FD1CE E7A9AD
+8FD1CF E7A9B5
+8FD1D0 E7A9B8
+8FD1D1 E7A9BE
+8FD1D2 E7AA80
+8FD1D3 E7AA82
+8FD1D4 E7AA85
+8FD1D5 E7AA86
+8FD1D6 E7AA8A
+8FD1D7 E7AA8B
+8FD1D8 E7AA90
+8FD1D9 E7AA91
+8FD1DA E7AA94
+8FD1DB E7AA9E
+8FD1DC E7AAA0
+8FD1DD E7AAA3
+8FD1DE E7AAAC
+8FD1DF E7AAB3
+8FD1E0 E7AAB5
+8FD1E1 E7AAB9
+8FD1E2 E7AABB
+8FD1E3 E7AABC
+8FD1E4 E7AB86
+8FD1E5 E7AB89
+8FD1E6 E7AB8C
+8FD1E7 E7AB8E
+8FD1E8 E7AB91
+8FD1E9 E7AB9B
+8FD1EA E7ABA8
+8FD1EB E7ABA9
+8FD1EC E7ABAB
+8FD1ED E7ABAC
+8FD1EE E7ABB1
+8FD1EF E7ABB4
+8FD1F0 E7ABBB
+8FD1F1 E7ABBD
+8FD1F2 E7ABBE
+8FD1F3 E7AC87
+8FD1F4 E7AC94
+8FD1F5 E7AC9F
+8FD1F6 E7ACA3
+8FD1F7 E7ACA7
+8FD1F8 E7ACA9
+8FD1F9 E7ACAA
+8FD1FA E7ACAB
+8FD1FB E7ACAD
+8FD1FC E7ACAE
+8FD1FD E7ACAF
+8FD1FE E7ACB0
+8FD2A1 E7ACB1
+8FD2A2 E7ACB4
+8FD2A3 E7ACBD
+8FD2A4 E7ACBF
+8FD2A5 E7AD80
+8FD2A6 E7AD81
+8FD2A7 E7AD87
+8FD2A8 E7AD8E
+8FD2A9 E7AD95
+8FD2AA E7ADA0
+8FD2AB E7ADA4
+8FD2AC E7ADA6
+8FD2AD E7ADA9
+8FD2AE E7ADAA
+8FD2AF E7ADAD
+8FD2B0 E7ADAF
+8FD2B1 E7ADB2
+8FD2B2 E7ADB3
+8FD2B3 E7ADB7
+8FD2B4 E7AE84
+8FD2B5 E7AE89
+8FD2B6 E7AE8E
+8FD2B7 E7AE90
+8FD2B8 E7AE91
+8FD2B9 E7AE96
+8FD2BA E7AE9B
+8FD2BB E7AE9E
+8FD2BC E7AEA0
+8FD2BD E7AEA5
+8FD2BE E7AEAC
+8FD2BF E7AEAF
+8FD2C0 E7AEB0
+8FD2C1 E7AEB2
+8FD2C2 E7AEB5
+8FD2C3 E7AEB6
+8FD2C4 E7AEBA
+8FD2C5 E7AEBB
+8FD2C6 E7AEBC
+8FD2C7 E7AEBD
+8FD2C8 E7AF82
+8FD2C9 E7AF85
+8FD2CA E7AF88
+8FD2CB E7AF8A
+8FD2CC E7AF94
+8FD2CD E7AF96
+8FD2CE E7AF97
+8FD2CF E7AF99
+8FD2D0 E7AF9A
+8FD2D1 E7AF9B
+8FD2D2 E7AFA8
+8FD2D3 E7AFAA
+8FD2D4 E7AFB2
+8FD2D5 E7AFB4
+8FD2D6 E7AFB5
+8FD2D7 E7AFB8
+8FD2D8 E7AFB9
+8FD2D9 E7AFBA
+8FD2DA E7AFBC
+8FD2DB E7AFBE
+8FD2DC E7B081
+8FD2DD E7B082
+8FD2DE E7B083
+8FD2DF E7B084
+8FD2E0 E7B086
+8FD2E1 E7B089
+8FD2E2 E7B08B
+8FD2E3 E7B08C
+8FD2E4 E7B08E
+8FD2E5 E7B08F
+8FD2E6 E7B099
+8FD2E7 E7B09B
+8FD2E8 E7B0A0
+8FD2E9 E7B0A5
+8FD2EA E7B0A6
+8FD2EB E7B0A8
+8FD2EC E7B0AC
+8FD2ED E7B0B1
+8FD2EE E7B0B3
+8FD2EF E7B0B4
+8FD2F0 E7B0B6
+8FD2F1 E7B0B9
+8FD2F2 E7B0BA
+8FD2F3 E7B186
+8FD2F4 E7B18A
+8FD2F5 E7B195
+8FD2F6 E7B191
+8FD2F7 E7B192
+8FD2F8 E7B193
+8FD2F9 E7B199
+8FD2FA E7B19A
+8FD2FB E7B19B
+8FD2FC E7B19C
+8FD2FD E7B19D
+8FD2FE E7B19E
+8FD3A1 E7B1A1
+8FD3A2 E7B1A3
+8FD3A3 E7B1A7
+8FD3A4 E7B1A9
+8FD3A5 E7B1AD
+8FD3A6 E7B1AE
+8FD3A7 E7B1B0
+8FD3A8 E7B1B2
+8FD3A9 E7B1B9
+8FD3AA E7B1BC
+8FD3AB E7B1BD
+8FD3AC E7B286
+8FD3AD E7B287
+8FD3AE E7B28F
+8FD3AF E7B294
+8FD3B0 E7B29E
+8FD3B1 E7B2A0
+8FD3B2 E7B2A6
+8FD3B3 E7B2B0
+8FD3B4 E7B2B6
+8FD3B5 E7B2B7
+8FD3B6 E7B2BA
+8FD3B7 E7B2BB
+8FD3B8 E7B2BC
+8FD3B9 E7B2BF
+8FD3BA E7B384
+8FD3BB E7B387
+8FD3BC E7B388
+8FD3BD E7B389
+8FD3BE E7B38D
+8FD3BF E7B38F
+8FD3C0 E7B393
+8FD3C1 E7B394
+8FD3C2 E7B395
+8FD3C3 E7B397
+8FD3C4 E7B399
+8FD3C5 E7B39A
+8FD3C6 E7B39D
+8FD3C7 E7B3A6
+8FD3C8 E7B3A9
+8FD3C9 E7B3AB
+8FD3CA E7B3B5
+8FD3CB E7B483
+8FD3CC E7B487
+8FD3CD E7B488
+8FD3CE E7B489
+8FD3CF E7B48F
+8FD3D0 E7B491
+8FD3D1 E7B492
+8FD3D2 E7B493
+8FD3D3 E7B496
+8FD3D4 E7B49D
+8FD3D5 E7B49E
+8FD3D6 E7B4A3
+8FD3D7 E7B4A6
+8FD3D8 E7B4AA
+8FD3D9 E7B4AD
+8FD3DA E7B4B1
+8FD3DB E7B4BC
+8FD3DC E7B4BD
+8FD3DD E7B4BE
+8FD3DE E7B580
+8FD3DF E7B581
+8FD3E0 E7B587
+8FD3E1 E7B588
+8FD3E2 E7B58D
+8FD3E3 E7B591
+8FD3E4 E7B593
+8FD3E5 E7B597
+8FD3E6 E7B599
+8FD3E7 E7B59A
+8FD3E8 E7B59C
+8FD3E9 E7B59D
+8FD3EA E7B5A5
+8FD3EB E7B5A7
+8FD3EC E7B5AA
+8FD3ED E7B5B0
+8FD3EE E7B5B8
+8FD3EF E7B5BA
+8FD3F0 E7B5BB
+8FD3F1 E7B5BF
+8FD3F2 E7B681
+8FD3F3 E7B682
+8FD3F4 E7B683
+8FD3F5 E7B685
+8FD3F6 E7B686
+8FD3F7 E7B688
+8FD3F8 E7B68B
+8FD3F9 E7B68C
+8FD3FA E7B68D
+8FD3FB E7B691
+8FD3FC E7B696
+8FD3FD E7B697
+8FD3FE E7B69D
+8FD4A1 E7B69E
+8FD4A2 E7B6A6
+8FD4A3 E7B6A7
+8FD4A4 E7B6AA
+8FD4A5 E7B6B3
+8FD4A6 E7B6B6
+8FD4A7 E7B6B7
+8FD4A8 E7B6B9
+8FD4A9 E7B782
+8FD4AA E7B783
+8FD4AB E7B784
+8FD4AC E7B785
+8FD4AD E7B786
+8FD4AE E7B78C
+8FD4AF E7B78D
+8FD4B0 E7B78E
+8FD4B1 E7B797
+8FD4B2 E7B799
+8FD4B3 E7B880
+8FD4B4 E7B7A2
+8FD4B5 E7B7A5
+8FD4B6 E7B7A6
+8FD4B7 E7B7AA
+8FD4B8 E7B7AB
+8FD4B9 E7B7AD
+8FD4BA E7B7B1
+8FD4BB E7B7B5
+8FD4BC E7B7B6
+8FD4BD E7B7B9
+8FD4BE E7B7BA
+8FD4BF E7B888
+8FD4C0 E7B890
+8FD4C1 E7B891
+8FD4C2 E7B895
+8FD4C3 E7B897
+8FD4C4 E7B89C
+8FD4C5 E7B89D
+8FD4C6 E7B8A0
+8FD4C7 E7B8A7
+8FD4C8 E7B8A8
+8FD4C9 E7B8AC
+8FD4CA E7B8AD
+8FD4CB E7B8AF
+8FD4CC E7B8B3
+8FD4CD E7B8B6
+8FD4CE E7B8BF
+8FD4CF E7B984
+8FD4D0 E7B985
+8FD4D1 E7B987
+8FD4D2 E7B98E
+8FD4D3 E7B990
+8FD4D4 E7B992
+8FD4D5 E7B998
+8FD4D6 E7B99F
+8FD4D7 E7B9A1
+8FD4D8 E7B9A2
+8FD4D9 E7B9A5
+8FD4DA E7B9AB
+8FD4DB E7B9AE
+8FD4DC E7B9AF
+8FD4DD E7B9B3
+8FD4DE E7B9B8
+8FD4DF E7B9BE
+8FD4E0 E7BA81
+8FD4E1 E7BA86
+8FD4E2 E7BA87
+8FD4E3 E7BA8A
+8FD4E4 E7BA8D
+8FD4E5 E7BA91
+8FD4E6 E7BA95
+8FD4E7 E7BA98
+8FD4E8 E7BA9A
+8FD4E9 E7BA9D
+8FD4EA E7BA9E
+8FD4EB E7BCBC
+8FD4EC E7BCBB
+8FD4ED E7BCBD
+8FD4EE E7BCBE
+8FD4EF E7BCBF
+8FD4F0 E7BD83
+8FD4F1 E7BD84
+8FD4F2 E7BD87
+8FD4F3 E7BD8F
+8FD4F4 E7BD92
+8FD4F5 E7BD93
+8FD4F6 E7BD9B
+8FD4F7 E7BD9C
+8FD4F8 E7BD9D
+8FD4F9 E7BDA1
+8FD4FA E7BDA3
+8FD4FB E7BDA4
+8FD4FC E7BDA5
+8FD4FD E7BDA6
+8FD4FE E7BDAD
+8FD5A1 E7BDB1
+8FD5A2 E7BDBD
+8FD5A3 E7BDBE
+8FD5A4 E7BDBF
+8FD5A5 E7BE80
+8FD5A6 E7BE8B
+8FD5A7 E7BE8D
+8FD5A8 E7BE8F
+8FD5A9 E7BE90
+8FD5AA E7BE91
+8FD5AB E7BE96
+8FD5AC E7BE97
+8FD5AD E7BE9C
+8FD5AE E7BEA1
+8FD5AF E7BEA2
+8FD5B0 E7BEA6
+8FD5B1 E7BEAA
+8FD5B2 E7BEAD
+8FD5B3 E7BEB4
+8FD5B4 E7BEBC
+8FD5B5 E7BEBF
+8FD5B6 E7BF80
+8FD5B7 E7BF83
+8FD5B8 E7BF88
+8FD5B9 E7BF8E
+8FD5BA E7BF8F
+8FD5BB E7BF9B
+8FD5BC E7BF9F
+8FD5BD E7BFA3
+8FD5BE E7BFA5
+8FD5BF E7BFA8
+8FD5C0 E7BFAC
+8FD5C1 E7BFAE
+8FD5C2 E7BFAF
+8FD5C3 E7BFB2
+8FD5C4 E7BFBA
+8FD5C5 E7BFBD
+8FD5C6 E7BFBE
+8FD5C7 E7BFBF
+8FD5C8 E88087
+8FD5C9 E88088
+8FD5CA E8808A
+8FD5CB E8808D
+8FD5CC E8808E
+8FD5CD E8808F
+8FD5CE E88091
+8FD5CF E88093
+8FD5D0 E88094
+8FD5D1 E88096
+8FD5D2 E8809D
+8FD5D3 E8809E
+8FD5D4 E8809F
+8FD5D5 E880A0
+8FD5D6 E880A4
+8FD5D7 E880A6
+8FD5D8 E880AC
+8FD5D9 E880AE
+8FD5DA E880B0
+8FD5DB E880B4
+8FD5DC E880B5
+8FD5DD E880B7
+8FD5DE E880B9
+8FD5DF E880BA
+8FD5E0 E880BC
+8FD5E1 E880BE
+8FD5E2 E88180
+8FD5E3 E88184
+8FD5E4 E881A0
+8FD5E5 E881A4
+8FD5E6 E881A6
+8FD5E7 E881AD
+8FD5E8 E881B1
+8FD5E9 E881B5
+8FD5EA E88281
+8FD5EB E88288
+8FD5EC E8828E
+8FD5ED E8829C
+8FD5EE E8829E
+8FD5EF E882A6
+8FD5F0 E882A7
+8FD5F1 E882AB
+8FD5F2 E882B8
+8FD5F3 E882B9
+8FD5F4 E88388
+8FD5F5 E8838D
+8FD5F6 E8838F
+8FD5F7 E88392
+8FD5F8 E88394
+8FD5F9 E88395
+8FD5FA E88397
+8FD5FB E88398
+8FD5FC E883A0
+8FD5FD E883AD
+8FD5FE E883AE
+8FD6A1 E883B0
+8FD6A2 E883B2
+8FD6A3 E883B3
+8FD6A4 E883B6
+8FD6A5 E883B9
+8FD6A6 E883BA
+8FD6A7 E883BE
+8FD6A8 E88483
+8FD6A9 E8848B
+8FD6AA E88496
+8FD6AB E88497
+8FD6AC E88498
+8FD6AD E8849C
+8FD6AE E8849E
+8FD6AF E884A0
+8FD6B0 E884A4
+8FD6B1 E884A7
+8FD6B2 E884AC
+8FD6B3 E884B0
+8FD6B4 E884B5
+8FD6B5 E884BA
+8FD6B6 E884BC
+8FD6B7 E88585
+8FD6B8 E88587
+8FD6B9 E8858A
+8FD6BA E8858C
+8FD6BB E88592
+8FD6BC E88597
+8FD6BD E885A0
+8FD6BE E885A1
+8FD6BF E885A7
+8FD6C0 E885A8
+8FD6C1 E885A9
+8FD6C2 E885AD
+8FD6C3 E885AF
+8FD6C4 E885B7
+8FD6C5 E88681
+8FD6C6 E88690
+8FD6C7 E88684
+8FD6C8 E88685
+8FD6C9 E88686
+8FD6CA E8868B
+8FD6CB E8868E
+8FD6CC E88696
+8FD6CD E88698
+8FD6CE E8869B
+8FD6CF E8869E
+8FD6D0 E886A2
+8FD6D1 E886AE
+8FD6D2 E886B2
+8FD6D3 E886B4
+8FD6D4 E886BB
+8FD6D5 E8878B
+8FD6D6 E88783
+8FD6D7 E88785
+8FD6D8 E8878A
+8FD6D9 E8878E
+8FD6DA E8878F
+8FD6DB E88795
+8FD6DC E88797
+8FD6DD E8879B
+8FD6DE E8879D
+8FD6DF E8879E
+8FD6E0 E887A1
+8FD6E1 E887A4
+8FD6E2 E887AB
+8FD6E3 E887AC
+8FD6E4 E887B0
+8FD6E5 E887B1
+8FD6E6 E887B2
+8FD6E7 E887B5
+8FD6E8 E887B6
+8FD6E9 E887B8
+8FD6EA E887B9
+8FD6EB E887BD
+8FD6EC E887BF
+8FD6ED E88880
+8FD6EE E88883
+8FD6EF E8888F
+8FD6F0 E88893
+8FD6F1 E88894
+8FD6F2 E88899
+8FD6F3 E8889A
+8FD6F4 E8889D
+8FD6F5 E888A1
+8FD6F6 E888A2
+8FD6F7 E888A8
+8FD6F8 E888B2
+8FD6F9 E888B4
+8FD6FA E888BA
+8FD6FB E88983
+8FD6FC E88984
+8FD6FD E88985
+8FD6FE E88986
+8FD7A1 E8898B
+8FD7A2 E8898E
+8FD7A3 E8898F
+8FD7A4 E88991
+8FD7A5 E88996
+8FD7A6 E8899C
+8FD7A7 E889A0
+8FD7A8 E889A3
+8FD7A9 E889A7
+8FD7AA E889AD
+8FD7AB E889B4
+8FD7AC E889BB
+8FD7AD E889BD
+8FD7AE E889BF
+8FD7AF E88A80
+8FD7B0 E88A81
+8FD7B1 E88A83
+8FD7B2 E88A84
+8FD7B3 E88A87
+8FD7B4 E88A89
+8FD7B5 E88A8A
+8FD7B6 E88A8E
+8FD7B7 E88A91
+8FD7B8 E88A94
+8FD7B9 E88A96
+8FD7BA E88A98
+8FD7BB E88A9A
+8FD7BC E88A9B
+8FD7BD E88AA0
+8FD7BE E88AA1
+8FD7BF E88AA3
+8FD7C0 E88AA4
+8FD7C1 E88AA7
+8FD7C2 E88AA8
+8FD7C3 E88AA9
+8FD7C4 E88AAA
+8FD7C5 E88AAE
+8FD7C6 E88AB0
+8FD7C7 E88AB2
+8FD7C8 E88AB4
+8FD7C9 E88AB7
+8FD7CA E88ABA
+8FD7CB E88ABC
+8FD7CC E88ABE
+8FD7CD E88ABF
+8FD7CE E88B86
+8FD7CF E88B90
+8FD7D0 E88B95
+8FD7D1 E88B9A
+8FD7D2 E88BA0
+8FD7D3 E88BA2
+8FD7D4 E88BA4
+8FD7D5 E88BA8
+8FD7D6 E88BAA
+8FD7D7 E88BAD
+8FD7D8 E88BAF
+8FD7D9 E88BB6
+8FD7DA E88BB7
+8FD7DB E88BBD
+8FD7DC E88BBE
+8FD7DD E88C80
+8FD7DE E88C81
+8FD7DF E88C87
+8FD7E0 E88C88
+8FD7E1 E88C8A
+8FD7E2 E88C8B
+8FD7E3 E88D94
+8FD7E4 E88C9B
+8FD7E5 E88C9D
+8FD7E6 E88C9E
+8FD7E7 E88C9F
+8FD7E8 E88CA1
+8FD7E9 E88CA2
+8FD7EA E88CAC
+8FD7EB E88CAD
+8FD7EC E88CAE
+8FD7ED E88CB0
+8FD7EE E88CB3
+8FD7EF E88CB7
+8FD7F0 E88CBA
+8FD7F1 E88CBC
+8FD7F2 E88CBD
+8FD7F3 E88D82
+8FD7F4 E88D83
+8FD7F5 E88D84
+8FD7F6 E88D87
+8FD7F7 E88D8D
+8FD7F8 E88D8E
+8FD7F9 E88D91
+8FD7FA E88D95
+8FD7FB E88D96
+8FD7FC E88D97
+8FD7FD E88DB0
+8FD7FE E88DB8
+8FD8A1 E88DBD
+8FD8A2 E88DBF
+8FD8A3 E88E80
+8FD8A4 E88E82
+8FD8A5 E88E84
+8FD8A6 E88E86
+8FD8A7 E88E8D
+8FD8A8 E88E92
+8FD8A9 E88E94
+8FD8AA E88E95
+8FD8AB E88E98
+8FD8AC E88E99
+8FD8AD E88E9B
+8FD8AE E88E9C
+8FD8AF E88E9D
+8FD8B0 E88EA6
+8FD8B1 E88EA7
+8FD8B2 E88EA9
+8FD8B3 E88EAC
+8FD8B4 E88EBE
+8FD8B5 E88EBF
+8FD8B6 E88F80
+8FD8B7 E88F87
+8FD8B8 E88F89
+8FD8B9 E88F8F
+8FD8BA E88F90
+8FD8BB E88F91
+8FD8BC E88F94
+8FD8BD E88F9D
+8FD8BE E88D93
+8FD8BF E88FA8
+8FD8C0 E88FAA
+8FD8C1 E88FB6
+8FD8C2 E88FB8
+8FD8C3 E88FB9
+8FD8C4 E88FBC
+8FD8C5 E89081
+8FD8C6 E89086
+8FD8C7 E8908A
+8FD8C8 E8908F
+8FD8C9 E89091
+8FD8CA E89095
+8FD8CB E89099
+8FD8CC E88EAD
+8FD8CD E890AF
+8FD8CE E890B9
+8FD8CF E89185
+8FD8D0 E89187
+8FD8D1 E89188
+8FD8D2 E8918A
+8FD8D3 E8918D
+8FD8D4 E8918F
+8FD8D5 E89191
+8FD8D6 E89192
+8FD8D7 E89196
+8FD8D8 E89198
+8FD8D9 E89199
+8FD8DA E8919A
+8FD8DB E8919C
+8FD8DC E891A0
+8FD8DD E891A4
+8FD8DE E891A5
+8FD8DF E891A7
+8FD8E0 E891AA
+8FD8E1 E891B0
+8FD8E2 E891B3
+8FD8E3 E891B4
+8FD8E4 E891B6
+8FD8E5 E891B8
+8FD8E6 E891BC
+8FD8E7 E891BD
+8FD8E8 E89281
+8FD8E9 E89285
+8FD8EA E89292
+8FD8EB E89293
+8FD8EC E89295
+8FD8ED E8929E
+8FD8EE E892A6
+8FD8EF E892A8
+8FD8F0 E892A9
+8FD8F1 E892AA
+8FD8F2 E892AF
+8FD8F3 E892B1
+8FD8F4 E892B4
+8FD8F5 E892BA
+8FD8F6 E892BD
+8FD8F7 E892BE
+8FD8F8 E89380
+8FD8F9 E89382
+8FD8FA E89387
+8FD8FB E89388
+8FD8FC E8938C
+8FD8FD E8938F
+8FD8FE E89393
+8FD9A1 E8939C
+8FD9A2 E893A7
+8FD9A3 E893AA
+8FD9A4 E893AF
+8FD9A5 E893B0
+8FD9A6 E893B1
+8FD9A7 E893B2
+8FD9A8 E893B7
+8FD9A9 E894B2
+8FD9AA E893BA
+8FD9AB E893BB
+8FD9AC E893BD
+8FD9AD E89482
+8FD9AE E89483
+8FD9AF E89487
+8FD9B0 E8948C
+8FD9B1 E8948E
+8FD9B2 E89490
+8FD9B3 E8949C
+8FD9B4 E8949E
+8FD9B5 E894A2
+8FD9B6 E894A3
+8FD9B7 E894A4
+8FD9B8 E894A5
+8FD9B9 E894A7
+8FD9BA E894AA
+8FD9BB E894AB
+8FD9BC E894AF
+8FD9BD E894B3
+8FD9BE E894B4
+8FD9BF E894B6
+8FD9C0 E894BF
+8FD9C1 E89586
+8FD9C2 E8958F
+8FD9C3 E89590
+8FD9C4 E89591
+8FD9C5 E89592
+8FD9C6 E89593
+8FD9C7 E89596
+8FD9C8 E89599
+8FD9C9 E8959C
+8FD9CA E8959D
+8FD9CB E8959E
+8FD9CC E8959F
+8FD9CD E895A0
+8FD9CE E895A1
+8FD9CF E895A2
+8FD9D0 E895A4
+8FD9D1 E895AB
+8FD9D2 E895AF
+8FD9D3 E895B9
+8FD9D4 E895BA
+8FD9D5 E895BB
+8FD9D6 E895BD
+8FD9D7 E895BF
+8FD9D8 E89681
+8FD9D9 E89685
+8FD9DA E89686
+8FD9DB E89689
+8FD9DC E8968B
+8FD9DD E8968C
+8FD9DE E8968F
+8FD9DF E89693
+8FD9E0 E89698
+8FD9E1 E8969D
+8FD9E2 E8969F
+8FD9E3 E896A0
+8FD9E4 E896A2
+8FD9E5 E896A5
+8FD9E6 E896A7
+8FD9E7 E896B4
+8FD9E8 E896B6
+8FD9E9 E896B7
+8FD9EA E896B8
+8FD9EB E896BC
+8FD9EC E896BD
+8FD9ED E896BE
+8FD9EE E896BF
+8FD9EF E89782
+8FD9F0 E89787
+8FD9F1 E8978A
+8FD9F2 E8978B
+8FD9F3 E8978E
+8FD9F4 E896AD
+8FD9F5 E89798
+8FD9F6 E8979A
+8FD9F7 E8979F
+8FD9F8 E897A0
+8FD9F9 E897A6
+8FD9FA E897A8
+8FD9FB E897AD
+8FD9FC E897B3
+8FD9FD E897B6
+8FD9FE E897BC
+8FDAA1 E897BF
+8FDAA2 E89880
+8FDAA3 E89884
+8FDAA4 E89885
+8FDAA5 E8988D
+8FDAA6 E8988E
+8FDAA7 E89890
+8FDAA8 E89891
+8FDAA9 E89892
+8FDAAA E89898
+8FDAAB E89899
+8FDAAC E8989B
+8FDAAD E8989E
+8FDAAE E898A1
+8FDAAF E898A7
+8FDAB0 E898A9
+8FDAB1 E898B6
+8FDAB2 E898B8
+8FDAB3 E898BA
+8FDAB4 E898BC
+8FDAB5 E898BD
+8FDAB6 E89980
+8FDAB7 E89982
+8FDAB8 E89986
+8FDAB9 E89992
+8FDABA E89993
+8FDABB E89996
+8FDABC E89997
+8FDABD E89998
+8FDABE E89999
+8FDABF E8999D
+8FDAC0 E899A0
+8FDAC1 E899A1
+8FDAC2 E899A2
+8FDAC3 E899A3
+8FDAC4 E899A4
+8FDAC5 E899A9
+8FDAC6 E899AC
+8FDAC7 E899AF
+8FDAC8 E899B5
+8FDAC9 E899B6
+8FDACA E899B7
+8FDACB E899BA
+8FDACC E89A8D
+8FDACD E89A91
+8FDACE E89A96
+8FDACF E89A98
+8FDAD0 E89A9A
+8FDAD1 E89A9C
+8FDAD2 E89AA1
+8FDAD3 E89AA6
+8FDAD4 E89AA7
+8FDAD5 E89AA8
+8FDAD6 E89AAD
+8FDAD7 E89AB1
+8FDAD8 E89AB3
+8FDAD9 E89AB4
+8FDADA E89AB5
+8FDADB E89AB7
+8FDADC E89AB8
+8FDADD E89AB9
+8FDADE E89ABF
+8FDADF E89B80
+8FDAE0 E89B81
+8FDAE1 E89B83
+8FDAE2 E89B85
+8FDAE3 E89B91
+8FDAE4 E89B92
+8FDAE5 E89B95
+8FDAE6 E89B97
+8FDAE7 E89B9A
+8FDAE8 E89B9C
+8FDAE9 E89BA0
+8FDAEA E89BA3
+8FDAEB E89BA5
+8FDAEC E89BA7
+8FDAED E89A88
+8FDAEE E89BBA
+8FDAEF E89BBC
+8FDAF0 E89BBD
+8FDAF1 E89C84
+8FDAF2 E89C85
+8FDAF3 E89C87
+8FDAF4 E89C8B
+8FDAF5 E89C8E
+8FDAF6 E89C8F
+8FDAF7 E89C90
+8FDAF8 E89C93
+8FDAF9 E89C94
+8FDAFA E89C99
+8FDAFB E89C9E
+8FDAFC E89C9F
+8FDAFD E89CA1
+8FDAFE E89CA3
+8FDBA1 E89CA8
+8FDBA2 E89CAE
+8FDBA3 E89CAF
+8FDBA4 E89CB1
+8FDBA5 E89CB2
+8FDBA6 E89CB9
+8FDBA7 E89CBA
+8FDBA8 E89CBC
+8FDBA9 E89CBD
+8FDBAA E89CBE
+8FDBAB E89D80
+8FDBAC E89D83
+8FDBAD E89D85
+8FDBAE E89D8D
+8FDBAF E89D98
+8FDBB0 E89D9D
+8FDBB1 E89DA1
+8FDBB2 E89DA4
+8FDBB3 E89DA5
+8FDBB4 E89DAF
+8FDBB5 E89DB1
+8FDBB6 E89DB2
+8FDBB7 E89DBB
+8FDBB8 E89E83
+8FDBB9 E89E84
+8FDBBA E89E85
+8FDBBB E89E86
+8FDBBC E89E87
+8FDBBD E89E88
+8FDBBE E89E89
+8FDBBF E89E8B
+8FDBC0 E89E8C
+8FDBC1 E89E90
+8FDBC2 E89E93
+8FDBC3 E89E95
+8FDBC4 E89E97
+8FDBC5 E89E98
+8FDBC6 E89E99
+8FDBC7 E89E9E
+8FDBC8 E89EA0
+8FDBC9 E89EA3
+8FDBCA E89EA7
+8FDBCB E89EAC
+8FDBCC E89EAD
+8FDBCD E89EAE
+8FDBCE E89EB1
+8FDBCF E89EB5
+8FDBD0 E89EBE
+8FDBD1 E89EBF
+8FDBD2 E89F81
+8FDBD3 E89F88
+8FDBD4 E89F89
+8FDBD5 E89F8A
+8FDBD6 E89F8E
+8FDBD7 E89F95
+8FDBD8 E89F96
+8FDBD9 E89F99
+8FDBDA E89F9A
+8FDBDB E89F9C
+8FDBDC E89F9F
+8FDBDD E89FA2
+8FDBDE E89FA3
+8FDBDF E89FA4
+8FDBE0 E89FAA
+8FDBE1 E89FAB
+8FDBE2 E89FAD
+8FDBE3 E89FB1
+8FDBE4 E89FB3
+8FDBE5 E89FB8
+8FDBE6 E89FBA
+8FDBE7 E89FBF
+8FDBE8 E8A081
+8FDBE9 E8A083
+8FDBEA E8A086
+8FDBEB E8A089
+8FDBEC E8A08A
+8FDBED E8A08B
+8FDBEE E8A090
+8FDBEF E8A099
+8FDBF0 E8A092
+8FDBF1 E8A093
+8FDBF2 E8A094
+8FDBF3 E8A098
+8FDBF4 E8A09A
+8FDBF5 E8A09B
+8FDBF6 E8A09C
+8FDBF7 E8A09E
+8FDBF8 E8A09F
+8FDBF9 E8A0A8
+8FDBFA E8A0AD
+8FDBFB E8A0AE
+8FDBFC E8A0B0
+8FDBFD E8A0B2
+8FDBFE E8A0B5
+8FDCA1 E8A0BA
+8FDCA2 E8A0BC
+8FDCA3 E8A181
+8FDCA4 E8A183
+8FDCA5 E8A185
+8FDCA6 E8A188
+8FDCA7 E8A189
+8FDCA8 E8A18A
+8FDCA9 E8A18B
+8FDCAA E8A18E
+8FDCAB E8A191
+8FDCAC E8A195
+8FDCAD E8A196
+8FDCAE E8A198
+8FDCAF E8A19A
+8FDCB0 E8A19C
+8FDCB1 E8A19F
+8FDCB2 E8A1A0
+8FDCB3 E8A1A4
+8FDCB4 E8A1A9
+8FDCB5 E8A1B1
+8FDCB6 E8A1B9
+8FDCB7 E8A1BB
+8FDCB8 E8A280
+8FDCB9 E8A298
+8FDCBA E8A29A
+8FDCBB E8A29B
+8FDCBC E8A29C
+8FDCBD E8A29F
+8FDCBE E8A2A0
+8FDCBF E8A2A8
+8FDCC0 E8A2AA
+8FDCC1 E8A2BA
+8FDCC2 E8A2BD
+8FDCC3 E8A2BE
+8FDCC4 E8A380
+8FDCC5 E8A38A
+8FDCC6 E8A38B
+8FDCC7 E8A38C
+8FDCC8 E8A38D
+8FDCC9 E8A38E
+8FDCCA E8A391
+8FDCCB E8A392
+8FDCCC E8A393
+8FDCCD E8A39B
+8FDCCE E8A39E
+8FDCCF E8A3A7
+8FDCD0 E8A3AF
+8FDCD1 E8A3B0
+8FDCD2 E8A3B1
+8FDCD3 E8A3B5
+8FDCD4 E8A3B7
+8FDCD5 E8A481
+8FDCD6 E8A486
+8FDCD7 E8A48D
+8FDCD8 E8A48E
+8FDCD9 E8A48F
+8FDCDA E8A495
+8FDCDB E8A496
+8FDCDC E8A498
+8FDCDD E8A499
+8FDCDE E8A49A
+8FDCDF E8A49C
+8FDCE0 E8A4A0
+8FDCE1 E8A4A6
+8FDCE2 E8A4A7
+8FDCE3 E8A4A8
+8FDCE4 E8A4B0
+8FDCE5 E8A4B1
+8FDCE6 E8A4B2
+8FDCE7 E8A4B5
+8FDCE8 E8A4B9
+8FDCE9 E8A4BA
+8FDCEA E8A4BE
+8FDCEB E8A580
+8FDCEC E8A582
+8FDCED E8A585
+8FDCEE E8A586
+8FDCEF E8A589
+8FDCF0 E8A58F
+8FDCF1 E8A592
+8FDCF2 E8A597
+8FDCF3 E8A59A
+8FDCF4 E8A59B
+8FDCF5 E8A59C
+8FDCF6 E8A5A1
+8FDCF7 E8A5A2
+8FDCF8 E8A5A3
+8FDCF9 E8A5AB
+8FDCFA E8A5AE
+8FDCFB E8A5B0
+8FDCFC E8A5B3
+8FDCFD E8A5B5
+8FDCFE E8A5BA
+8FDDA1 E8A5BB
+8FDDA2 E8A5BC
+8FDDA3 E8A5BD
+8FDDA4 E8A689
+8FDDA5 E8A68D
+8FDDA6 E8A690
+8FDDA7 E8A694
+8FDDA8 E8A695
+8FDDA9 E8A69B
+8FDDAA E8A69C
+8FDDAB E8A69F
+8FDDAC E8A6A0
+8FDDAD E8A6A5
+8FDDAE E8A6B0
+8FDDAF E8A6B4
+8FDDB0 E8A6B5
+8FDDB1 E8A6B6
+8FDDB2 E8A6B7
+8FDDB3 E8A6BC
+8FDDB4 E8A794
+8FDDB5 E8A795
+8FDDB6 E8A796
+8FDDB7 E8A797
+8FDDB8 E8A798
+8FDDB9 E8A7A5
+8FDDBA E8A7A9
+8FDDBB E8A7AB
+8FDDBC E8A7AD
+8FDDBD E8A7B1
+8FDDBE E8A7B3
+8FDDBF E8A7B6
+8FDDC0 E8A7B9
+8FDDC1 E8A7BD
+8FDDC2 E8A7BF
+8FDDC3 E8A884
+8FDDC4 E8A885
+8FDDC5 E8A887
+8FDDC6 E8A88F
+8FDDC7 E8A891
+8FDDC8 E8A892
+8FDDC9 E8A894
+8FDDCA E8A895
+8FDDCB E8A89E
+8FDDCC E8A8A0
+8FDDCD E8A8A2
+8FDDCE E8A8A4
+8FDDCF E8A8A6
+8FDDD0 E8A8AB
+8FDDD1 E8A8AC
+8FDDD2 E8A8AF
+8FDDD3 E8A8B5
+8FDDD4 E8A8B7
+8FDDD5 E8A8BD
+8FDDD6 E8A8BE
+8FDDD7 E8A980
+8FDDD8 E8A983
+8FDDD9 E8A985
+8FDDDA E8A987
+8FDDDB E8A989
+8FDDDC E8A98D
+8FDDDD E8A98E
+8FDDDE E8A993
+8FDDDF E8A996
+8FDDE0 E8A997
+8FDDE1 E8A998
+8FDDE2 E8A99C
+8FDDE3 E8A99D
+8FDDE4 E8A9A1
+8FDDE5 E8A9A5
+8FDDE6 E8A9A7
+8FDDE7 E8A9B5
+8FDDE8 E8A9B6
+8FDDE9 E8A9B7
+8FDDEA E8A9B9
+8FDDEB E8A9BA
+8FDDEC E8A9BB
+8FDDED E8A9BE
+8FDDEE E8A9BF
+8FDDEF E8AA80
+8FDDF0 E8AA83
+8FDDF1 E8AA86
+8FDDF2 E8AA8B
+8FDDF3 E8AA8F
+8FDDF4 E8AA90
+8FDDF5 E8AA92
+8FDDF6 E8AA96
+8FDDF7 E8AA97
+8FDDF8 E8AA99
+8FDDF9 E8AA9F
+8FDDFA E8AAA7
+8FDDFB E8AAA9
+8FDDFC E8AAAE
+8FDDFD E8AAAF
+8FDDFE E8AAB3
+8FDEA1 E8AAB6
+8FDEA2 E8AAB7
+8FDEA3 E8AABB
+8FDEA4 E8AABE
+8FDEA5 E8AB83
+8FDEA6 E8AB86
+8FDEA7 E8AB88
+8FDEA8 E8AB89
+8FDEA9 E8AB8A
+8FDEAA E8AB91
+8FDEAB E8AB93
+8FDEAC E8AB94
+8FDEAD E8AB95
+8FDEAE E8AB97
+8FDEAF E8AB9D
+8FDEB0 E8AB9F
+8FDEB1 E8ABAC
+8FDEB2 E8ABB0
+8FDEB3 E8ABB4
+8FDEB4 E8ABB5
+8FDEB5 E8ABB6
+8FDEB6 E8ABBC
+8FDEB7 E8ABBF
+8FDEB8 E8AC85
+8FDEB9 E8AC86
+8FDEBA E8AC8B
+8FDEBB E8AC91
+8FDEBC E8AC9C
+8FDEBD E8AC9E
+8FDEBE E8AC9F
+8FDEBF E8AC8A
+8FDEC0 E8ACAD
+8FDEC1 E8ACB0
+8FDEC2 E8ACB7
+8FDEC3 E8ACBC
+8FDEC4 E8AD82
+8FDEC5 E8AD83
+8FDEC6 E8AD84
+8FDEC7 E8AD85
+8FDEC8 E8AD86
+8FDEC9 E8AD88
+8FDECA E8AD92
+8FDECB E8AD93
+8FDECC E8AD94
+8FDECD E8AD99
+8FDECE E8AD8D
+8FDECF E8AD9E
+8FDED0 E8ADA3
+8FDED1 E8ADAD
+8FDED2 E8ADB6
+8FDED3 E8ADB8
+8FDED4 E8ADB9
+8FDED5 E8ADBC
+8FDED6 E8ADBE
+8FDED7 E8AE81
+8FDED8 E8AE84
+8FDED9 E8AE85
+8FDEDA E8AE8B
+8FDEDB E8AE8D
+8FDEDC E8AE8F
+8FDEDD E8AE94
+8FDEDE E8AE95
+8FDEDF E8AE9C
+8FDEE0 E8AE9E
+8FDEE1 E8AE9F
+8FDEE2 E8B0B8
+8FDEE3 E8B0B9
+8FDEE4 E8B0BD
+8FDEE5 E8B0BE
+8FDEE6 E8B185
+8FDEE7 E8B187
+8FDEE8 E8B189
+8FDEE9 E8B18B
+8FDEEA E8B18F
+8FDEEB E8B191
+8FDEEC E8B193
+8FDEED E8B194
+8FDEEE E8B197
+8FDEEF E8B198
+8FDEF0 E8B19B
+8FDEF1 E8B19D
+8FDEF2 E8B199
+8FDEF3 E8B1A3
+8FDEF4 E8B1A4
+8FDEF5 E8B1A6
+8FDEF6 E8B1A8
+8FDEF7 E8B1A9
+8FDEF8 E8B1AD
+8FDEF9 E8B1B3
+8FDEFA E8B1B5
+8FDEFB E8B1B6
+8FDEFC E8B1BB
+8FDEFD E8B1BE
+8FDEFE E8B286
+8FDFA1 E8B287
+8FDFA2 E8B28B
+8FDFA3 E8B290
+8FDFA4 E8B292
+8FDFA5 E8B293
+8FDFA6 E8B299
+8FDFA7 E8B29B
+8FDFA8 E8B29C
+8FDFA9 E8B2A4
+8FDFAA E8B2B9
+8FDFAB E8B2BA
+8FDFAC E8B385
+8FDFAD E8B386
+8FDFAE E8B389
+8FDFAF E8B38B
+8FDFB0 E8B38F
+8FDFB1 E8B396
+8FDFB2 E8B395
+8FDFB3 E8B399
+8FDFB4 E8B39D
+8FDFB5 E8B3A1
+8FDFB6 E8B3A8
+8FDFB7 E8B3AC
+8FDFB8 E8B3AF
+8FDFB9 E8B3B0
+8FDFBA E8B3B2
+8FDFBB E8B3B5
+8FDFBC E8B3B7
+8FDFBD E8B3B8
+8FDFBE E8B3BE
+8FDFBF E8B3BF
+8FDFC0 E8B481
+8FDFC1 E8B483
+8FDFC2 E8B489
+8FDFC3 E8B492
+8FDFC4 E8B497
+8FDFC5 E8B49B
+8FDFC6 E8B5A5
+8FDFC7 E8B5A9
+8FDFC8 E8B5AC
+8FDFC9 E8B5AE
+8FDFCA E8B5BF
+8FDFCB E8B682
+8FDFCC E8B684
+8FDFCD E8B688
+8FDFCE E8B68D
+8FDFCF E8B690
+8FDFD0 E8B691
+8FDFD1 E8B695
+8FDFD2 E8B69E
+8FDFD3 E8B69F
+8FDFD4 E8B6A0
+8FDFD5 E8B6A6
+8FDFD6 E8B6AB
+8FDFD7 E8B6AC
+8FDFD8 E8B6AF
+8FDFD9 E8B6B2
+8FDFDA E8B6B5
+8FDFDB E8B6B7
+8FDFDC E8B6B9
+8FDFDD E8B6BB
+8FDFDE E8B780
+8FDFDF E8B785
+8FDFE0 E8B786
+8FDFE1 E8B787
+8FDFE2 E8B788
+8FDFE3 E8B78A
+8FDFE4 E8B78E
+8FDFE5 E8B791
+8FDFE6 E8B794
+8FDFE7 E8B795
+8FDFE8 E8B797
+8FDFE9 E8B799
+8FDFEA E8B7A4
+8FDFEB E8B7A5
+8FDFEC E8B7A7
+8FDFED E8B7AC
+8FDFEE E8B7B0
+8FDFEF E8B6BC
+8FDFF0 E8B7B1
+8FDFF1 E8B7B2
+8FDFF2 E8B7B4
+8FDFF3 E8B7BD
+8FDFF4 E8B881
+8FDFF5 E8B884
+8FDFF6 E8B885
+8FDFF7 E8B886
+8FDFF8 E8B88B
+8FDFF9 E8B891
+8FDFFA E8B894
+8FDFFB E8B896
+8FDFFC E8B8A0
+8FDFFD E8B8A1
+8FDFFE E8B8A2
+8FE0A1 E8B8A3
+8FE0A2 E8B8A6
+8FE0A3 E8B8A7
+8FE0A4 E8B8B1
+8FE0A5 E8B8B3
+8FE0A6 E8B8B6
+8FE0A7 E8B8B7
+8FE0A8 E8B8B8
+8FE0A9 E8B8B9
+8FE0AA E8B8BD
+8FE0AB E8B980
+8FE0AC E8B981
+8FE0AD E8B98B
+8FE0AE E8B98D
+8FE0AF E8B98E
+8FE0B0 E8B98F
+8FE0B1 E8B994
+8FE0B2 E8B99B
+8FE0B3 E8B99C
+8FE0B4 E8B99D
+8FE0B5 E8B99E
+8FE0B6 E8B9A1
+8FE0B7 E8B9A2
+8FE0B8 E8B9A9
+8FE0B9 E8B9AC
+8FE0BA E8B9AD
+8FE0BB E8B9AF
+8FE0BC E8B9B0
+8FE0BD E8B9B1
+8FE0BE E8B9B9
+8FE0BF E8B9BA
+8FE0C0 E8B9BB
+8FE0C1 E8BA82
+8FE0C2 E8BA83
+8FE0C3 E8BA89
+8FE0C4 E8BA90
+8FE0C5 E8BA92
+8FE0C6 E8BA95
+8FE0C7 E8BA9A
+8FE0C8 E8BA9B
+8FE0C9 E8BA9D
+8FE0CA E8BA9E
+8FE0CB E8BAA2
+8FE0CC E8BAA7
+8FE0CD E8BAA9
+8FE0CE E8BAAD
+8FE0CF E8BAAE
+8FE0D0 E8BAB3
+8FE0D1 E8BAB5
+8FE0D2 E8BABA
+8FE0D3 E8BABB
+8FE0D4 E8BB80
+8FE0D5 E8BB81
+8FE0D6 E8BB83
+8FE0D7 E8BB84
+8FE0D8 E8BB87
+8FE0D9 E8BB8F
+8FE0DA E8BB91
+8FE0DB E8BB94
+8FE0DC E8BB9C
+8FE0DD E8BBA8
+8FE0DE E8BBAE
+8FE0DF E8BBB0
+8FE0E0 E8BBB1
+8FE0E1 E8BBB7
+8FE0E2 E8BBB9
+8FE0E3 E8BBBA
+8FE0E4 E8BBAD
+8FE0E5 E8BC80
+8FE0E6 E8BC82
+8FE0E7 E8BC87
+8FE0E8 E8BC88
+8FE0E9 E8BC8F
+8FE0EA E8BC90
+8FE0EB E8BC96
+8FE0EC E8BC97
+8FE0ED E8BC98
+8FE0EE E8BC9E
+8FE0EF E8BCA0
+8FE0F0 E8BCA1
+8FE0F1 E8BCA3
+8FE0F2 E8BCA5
+8FE0F3 E8BCA7
+8FE0F4 E8BCA8
+8FE0F5 E8BCAC
+8FE0F6 E8BCAD
+8FE0F7 E8BCAE
+8FE0F8 E8BCB4
+8FE0F9 E8BCB5
+8FE0FA E8BCB6
+8FE0FB E8BCB7
+8FE0FC E8BCBA
+8FE0FD E8BD80
+8FE0FE E8BD81
+8FE1A1 E8BD83
+8FE1A2 E8BD87
+8FE1A3 E8BD8F
+8FE1A4 E8BD91
+8FE1A5 E8BD92
+8FE1A6 E8BD93
+8FE1A7 E8BD94
+8FE1A8 E8BD95
+8FE1A9 E8BD98
+8FE1AA E8BD9D
+8FE1AB E8BD9E
+8FE1AC E8BDA5
+8FE1AD E8BE9D
+8FE1AE E8BEA0
+8FE1AF E8BEA1
+8FE1B0 E8BEA4
+8FE1B1 E8BEA5
+8FE1B2 E8BEA6
+8FE1B3 E8BEB5
+8FE1B4 E8BEB6
+8FE1B5 E8BEB8
+8FE1B6 E8BEBE
+8FE1B7 E8BF80
+8FE1B8 E8BF81
+8FE1B9 E8BF86
+8FE1BA E8BF8A
+8FE1BB E8BF8B
+8FE1BC E8BF8D
+8FE1BD E8BF90
+8FE1BE E8BF92
+8FE1BF E8BF93
+8FE1C0 E8BF95
+8FE1C1 E8BFA0
+8FE1C2 E8BFA3
+8FE1C3 E8BFA4
+8FE1C4 E8BFA8
+8FE1C5 E8BFAE
+8FE1C6 E8BFB1
+8FE1C7 E8BFB5
+8FE1C8 E8BFB6
+8FE1C9 E8BFBB
+8FE1CA E8BFBE
+8FE1CB E98082
+8FE1CC E98084
+8FE1CD E98088
+8FE1CE E9808C
+8FE1CF E98098
+8FE1D0 E9809B
+8FE1D1 E980A8
+8FE1D2 E980A9
+8FE1D3 E980AF
+8FE1D4 E980AA
+8FE1D5 E980AC
+8FE1D6 E980AD
+8FE1D7 E980B3
+8FE1D8 E980B4
+8FE1D9 E980B7
+8FE1DA E980BF
+8FE1DB E98183
+8FE1DC E98184
+8FE1DD E9818C
+8FE1DE E9819B
+8FE1DF E9819D
+8FE1E0 E981A2
+8FE1E1 E981A6
+8FE1E2 E981A7
+8FE1E3 E981AC
+8FE1E4 E981B0
+8FE1E5 E981B4
+8FE1E6 E981B9
+8FE1E7 E98285
+8FE1E8 E98288
+8FE1E9 E9828B
+8FE1EA E9828C
+8FE1EB E9828E
+8FE1EC E98290
+8FE1ED E98295
+8FE1EE E98297
+8FE1EF E98298
+8FE1F0 E98299
+8FE1F1 E9829B
+8FE1F2 E982A0
+8FE1F3 E982A1
+8FE1F4 E982A2
+8FE1F5 E982A5
+8FE1F6 E982B0
+8FE1F7 E982B2
+8FE1F8 E982B3
+8FE1F9 E982B4
+8FE1FA E982B6
+8FE1FB E982BD
+8FE1FC E9838C
+8FE1FD E982BE
+8FE1FE E98383
+8FE2A1 E98384
+8FE2A2 E98385
+8FE2A3 E98387
+8FE2A4 E98388
+8FE2A5 E98395
+8FE2A6 E98397
+8FE2A7 E98398
+8FE2A8 E98399
+8FE2A9 E9839C
+8FE2AA E9839D
+8FE2AB E9839F
+8FE2AC E983A5
+8FE2AD E98392
+8FE2AE E983B6
+8FE2AF E983AB
+8FE2B0 E983AF
+8FE2B1 E983B0
+8FE2B2 E983B4
+8FE2B3 E983BE
+8FE2B4 E983BF
+8FE2B5 E98480
+8FE2B6 E98484
+8FE2B7 E98485
+8FE2B8 E98486
+8FE2B9 E98488
+8FE2BA E9848D
+8FE2BB E98490
+8FE2BC E98494
+8FE2BD E98496
+8FE2BE E98497
+8FE2BF E98498
+8FE2C0 E9849A
+8FE2C1 E9849C
+8FE2C2 E9849E
+8FE2C3 E984A0
+8FE2C4 E984A5
+8FE2C5 E984A2
+8FE2C6 E984A3
+8FE2C7 E984A7
+8FE2C8 E984A9
+8FE2C9 E984AE
+8FE2CA E984AF
+8FE2CB E984B1
+8FE2CC E984B4
+8FE2CD E984B6
+8FE2CE E984B7
+8FE2CF E984B9
+8FE2D0 E984BA
+8FE2D1 E984BC
+8FE2D2 E984BD
+8FE2D3 E98583
+8FE2D4 E98587
+8FE2D5 E98588
+8FE2D6 E9858F
+8FE2D7 E98593
+8FE2D8 E98597
+8FE2D9 E98599
+8FE2DA E9859A
+8FE2DB E9859B
+8FE2DC E985A1
+8FE2DD E985A4
+8FE2DE E985A7
+8FE2DF E985AD
+8FE2E0 E985B4
+8FE2E1 E985B9
+8FE2E2 E985BA
+8FE2E3 E985BB
+8FE2E4 E98681
+8FE2E5 E98683
+8FE2E6 E98685
+8FE2E7 E98686
+8FE2E8 E9868A
+8FE2E9 E9868E
+8FE2EA E98691
+8FE2EB E98693
+8FE2EC E98694
+8FE2ED E98695
+8FE2EE E98698
+8FE2EF E9869E
+8FE2F0 E986A1
+8FE2F1 E986A6
+8FE2F2 E986A8
+8FE2F3 E986AC
+8FE2F4 E986AD
+8FE2F5 E986AE
+8FE2F6 E986B0
+8FE2F7 E986B1
+8FE2F8 E986B2
+8FE2F9 E986B3
+8FE2FA E986B6
+8FE2FB E986BB
+8FE2FC E986BC
+8FE2FD E986BD
+8FE2FE E986BF
+8FE3A1 E98782
+8FE3A2 E98783
+8FE3A3 E98785
+8FE3A4 E98793
+8FE3A5 E98794
+8FE3A6 E98797
+8FE3A7 E98799
+8FE3A8 E9879A
+8FE3A9 E9879E
+8FE3AA E987A4
+8FE3AB E987A5
+8FE3AC E987A9
+8FE3AD E987AA
+8FE3AE E987AC
+8FE3AF E987AD
+8FE3B0 E987AE
+8FE3B1 E987AF
+8FE3B2 E987B0
+8FE3B3 E987B1
+8FE3B4 E987B7
+8FE3B5 E987B9
+8FE3B6 E987BB
+8FE3B7 E987BD
+8FE3B8 E98880
+8FE3B9 E98881
+8FE3BA E98884
+8FE3BB E98885
+8FE3BC E98886
+8FE3BD E98887
+8FE3BE E98889
+8FE3BF E9888A
+8FE3C0 E9888C
+8FE3C1 E98890
+8FE3C2 E98892
+8FE3C3 E98893
+8FE3C4 E98896
+8FE3C5 E98898
+8FE3C6 E9889C
+8FE3C7 E9889D
+8FE3C8 E988A3
+8FE3C9 E988A4
+8FE3CA E988A5
+8FE3CB E988A6
+8FE3CC E988A8
+8FE3CD E988AE
+8FE3CE E988AF
+8FE3CF E988B0
+8FE3D0 E988B3
+8FE3D1 E988B5
+8FE3D2 E988B6
+8FE3D3 E988B8
+8FE3D4 E988B9
+8FE3D5 E988BA
+8FE3D6 E988BC
+8FE3D7 E988BE
+8FE3D8 E98980
+8FE3D9 E98982
+8FE3DA E98983
+8FE3DB E98986
+8FE3DC E98987
+8FE3DD E9898A
+8FE3DE E9898D
+8FE3DF E9898E
+8FE3E0 E9898F
+8FE3E1 E98991
+8FE3E2 E98998
+8FE3E3 E98999
+8FE3E4 E9899C
+8FE3E5 E9899D
+8FE3E6 E989A0
+8FE3E7 E989A1
+8FE3E8 E989A5
+8FE3E9 E989A7
+8FE3EA E989A8
+8FE3EB E989A9
+8FE3EC E989AE
+8FE3ED E989AF
+8FE3EE E989B0
+8FE3EF E989B5
+8FE3F0 E989B6
+8FE3F1 E989B7
+8FE3F2 E989B8
+8FE3F3 E989B9
+8FE3F4 E989BB
+8FE3F5 E989BC
+8FE3F6 E989BD
+8FE3F7 E989BF
+8FE3F8 E98A88
+8FE3F9 E98A89
+8FE3FA E98A8A
+8FE3FB E98A8D
+8FE3FC E98A8E
+8FE3FD E98A92
+8FE3FE E98A97
+8FE4A1 E98A99
+8FE4A2 E98A9F
+8FE4A3 E98AA0
+8FE4A4 E98AA4
+8FE4A5 E98AA5
+8FE4A6 E98AA7
+8FE4A7 E98AA8
+8FE4A8 E98AAB
+8FE4A9 E98AAF
+8FE4AA E98AB2
+8FE4AB E98AB6
+8FE4AC E98AB8
+8FE4AD E98ABA
+8FE4AE E98ABB
+8FE4AF E98ABC
+8FE4B0 E98ABD
+8FE4B1 E98ABF
+8FE4B2 E98B80
+8FE4B3 E98B81
+8FE4B4 E98B82
+8FE4B5 E98B83
+8FE4B6 E98B85
+8FE4B7 E98B86
+8FE4B8 E98B87
+8FE4B9 E98B88
+8FE4BA E98B8B
+8FE4BB E98B8C
+8FE4BC E98B8D
+8FE4BD E98B8E
+8FE4BE E98B90
+8FE4BF E98B93
+8FE4C0 E98B95
+8FE4C1 E98B97
+8FE4C2 E98B98
+8FE4C3 E98B99
+8FE4C4 E98B9C
+8FE4C5 E98B9D
+8FE4C6 E98B9F
+8FE4C7 E98BA0
+8FE4C8 E98BA1
+8FE4C9 E98BA3
+8FE4CA E98BA5
+8FE4CB E98BA7
+8FE4CC E98BA8
+8FE4CD E98BAC
+8FE4CE E98BAE
+8FE4CF E98BB0
+8FE4D0 E98BB9
+8FE4D1 E98BBB
+8FE4D2 E98BBF
+8FE4D3 E98C80
+8FE4D4 E98C82
+8FE4D5 E98C88
+8FE4D6 E98C8D
+8FE4D7 E98C91
+8FE4D8 E98C94
+8FE4D9 E98C95
+8FE4DA E98C9C
+8FE4DB E98C9D
+8FE4DC E98C9E
+8FE4DD E98C9F
+8FE4DE E98CA1
+8FE4DF E98CA4
+8FE4E0 E98CA5
+8FE4E1 E98CA7
+8FE4E2 E98CA9
+8FE4E3 E98CAA
+8FE4E4 E98CB3
+8FE4E5 E98CB4
+8FE4E6 E98CB6
+8FE4E7 E98CB7
+8FE4E8 E98D87
+8FE4E9 E98D88
+8FE4EA E98D89
+8FE4EB E98D90
+8FE4EC E98D91
+8FE4ED E98D92
+8FE4EE E98D95
+8FE4EF E98D97
+8FE4F0 E98D98
+8FE4F1 E98D9A
+8FE4F2 E98D9E
+8FE4F3 E98DA4
+8FE4F4 E98DA5
+8FE4F5 E98DA7
+8FE4F6 E98DA9
+8FE4F7 E98DAA
+8FE4F8 E98DAD
+8FE4F9 E98DAF
+8FE4FA E98DB0
+8FE4FB E98DB1
+8FE4FC E98DB3
+8FE4FD E98DB4
+8FE4FE E98DB6
+8FE5A1 E98DBA
+8FE5A2 E98DBD
+8FE5A3 E98DBF
+8FE5A4 E98E80
+8FE5A5 E98E81
+8FE5A6 E98E82
+8FE5A7 E98E88
+8FE5A8 E98E8A
+8FE5A9 E98E8B
+8FE5AA E98E8D
+8FE5AB E98E8F
+8FE5AC E98E92
+8FE5AD E98E95
+8FE5AE E98E98
+8FE5AF E98E9B
+8FE5B0 E98E9E
+8FE5B1 E98EA1
+8FE5B2 E98EA3
+8FE5B3 E98EA4
+8FE5B4 E98EA6
+8FE5B5 E98EA8
+8FE5B6 E98EAB
+8FE5B7 E98EB4
+8FE5B8 E98EB5
+8FE5B9 E98EB6
+8FE5BA E98EBA
+8FE5BB E98EA9
+8FE5BC E98F81
+8FE5BD E98F84
+8FE5BE E98F85
+8FE5BF E98F86
+8FE5C0 E98F87
+8FE5C1 E98F89
+8FE5C2 E98F8A
+8FE5C3 E98F8B
+8FE5C4 E98F8C
+8FE5C5 E98F8D
+8FE5C6 E98F93
+8FE5C7 E98F99
+8FE5C8 E98F9C
+8FE5C9 E98F9E
+8FE5CA E98F9F
+8FE5CB E98FA2
+8FE5CC E98FA6
+8FE5CD E98FA7
+8FE5CE E98FB9
+8FE5CF E98FB7
+8FE5D0 E98FB8
+8FE5D1 E98FBA
+8FE5D2 E98FBB
+8FE5D3 E98FBD
+8FE5D4 E99081
+8FE5D5 E99082
+8FE5D6 E99084
+8FE5D7 E99088
+8FE5D8 E99089
+8FE5D9 E9908D
+8FE5DA E9908E
+8FE5DB E9908F
+8FE5DC E99095
+8FE5DD E99096
+8FE5DE E99097
+8FE5DF E9909F
+8FE5E0 E990AE
+8FE5E1 E990AF
+8FE5E2 E990B1
+8FE5E3 E990B2
+8FE5E4 E990B3
+8FE5E5 E990B4
+8FE5E6 E990BB
+8FE5E7 E990BF
+8FE5E8 E990BD
+8FE5E9 E99183
+8FE5EA E99185
+8FE5EB E99188
+8FE5EC E9918A
+8FE5ED E9918C
+8FE5EE E99195
+8FE5EF E99199
+8FE5F0 E9919C
+8FE5F1 E9919F
+8FE5F2 E991A1
+8FE5F3 E991A3
+8FE5F4 E991A8
+8FE5F5 E991AB
+8FE5F6 E991AD
+8FE5F7 E991AE
+8FE5F8 E991AF
+8FE5F9 E991B1
+8FE5FA E991B2
+8FE5FB E99284
+8FE5FC E99283
+8FE5FD E995B8
+8FE5FE E995B9
+8FE6A1 E995BE
+8FE6A2 E99684
+8FE6A3 E99688
+8FE6A4 E9968C
+8FE6A5 E9968D
+8FE6A6 E9968E
+8FE6A7 E9969D
+8FE6A8 E9969E
+8FE6A9 E9969F
+8FE6AA E996A1
+8FE6AB E996A6
+8FE6AC E996A9
+8FE6AD E996AB
+8FE6AE E996AC
+8FE6AF E996B4
+8FE6B0 E996B6
+8FE6B1 E996BA
+8FE6B2 E996BD
+8FE6B3 E996BF
+8FE6B4 E99786
+8FE6B5 E99788
+8FE6B6 E99789
+8FE6B7 E9978B
+8FE6B8 E99790
+8FE6B9 E99791
+8FE6BA E99792
+8FE6BB E99793
+8FE6BC E99799
+8FE6BD E9979A
+8FE6BE E9979D
+8FE6BF E9979E
+8FE6C0 E9979F
+8FE6C1 E997A0
+8FE6C2 E997A4
+8FE6C3 E997A6
+8FE6C4 E9989D
+8FE6C5 E9989E
+8FE6C6 E998A2
+8FE6C7 E998A4
+8FE6C8 E998A5
+8FE6C9 E998A6
+8FE6CA E998AC
+8FE6CB E998B1
+8FE6CC E998B3
+8FE6CD E998B7
+8FE6CE E998B8
+8FE6CF E998B9
+8FE6D0 E998BA
+8FE6D1 E998BC
+8FE6D2 E998BD
+8FE6D3 E99981
+8FE6D4 E99992
+8FE6D5 E99994
+8FE6D6 E99996
+8FE6D7 E99997
+8FE6D8 E99998
+8FE6D9 E999A1
+8FE6DA E999AE
+8FE6DB E999B4
+8FE6DC E999BB
+8FE6DD E999BC
+8FE6DE E999BE
+8FE6DF E999BF
+8FE6E0 E99A81
+8FE6E1 E99A82
+8FE6E2 E99A83
+8FE6E3 E99A84
+8FE6E4 E99A89
+8FE6E5 E99A91
+8FE6E6 E99A96
+8FE6E7 E99A9A
+8FE6E8 E99A9D
+8FE6E9 E99A9F
+8FE6EA E99AA4
+8FE6EB E99AA5
+8FE6EC E99AA6
+8FE6ED E99AA9
+8FE6EE E99AAE
+8FE6EF E99AAF
+8FE6F0 E99AB3
+8FE6F1 E99ABA
+8FE6F2 E99B8A
+8FE6F3 E99B92
+8FE6F4 E5B6B2
+8FE6F5 E99B98
+8FE6F6 E99B9A
+8FE6F7 E99B9D
+8FE6F8 E99B9E
+8FE6F9 E99B9F
+8FE6FA E99BA9
+8FE6FB E99BAF
+8FE6FC E99BB1
+8FE6FD E99BBA
+8FE6FE E99C82
+8FE7A1 E99C83
+8FE7A2 E99C85
+8FE7A3 E99C89
+8FE7A4 E99C9A
+8FE7A5 E99C9B
+8FE7A6 E99C9D
+8FE7A7 E99CA1
+8FE7A8 E99CA2
+8FE7A9 E99CA3
+8FE7AA E99CA8
+8FE7AB E99CB1
+8FE7AC E99CB3
+8FE7AD E99D81
+8FE7AE E99D83
+8FE7AF E99D8A
+8FE7B0 E99D8E
+8FE7B1 E99D8F
+8FE7B2 E99D95
+8FE7B3 E99D97
+8FE7B4 E99D98
+8FE7B5 E99D9A
+8FE7B6 E99D9B
+8FE7B7 E99DA3
+8FE7B8 E99DA7
+8FE7B9 E99DAA
+8FE7BA E99DAE
+8FE7BB E99DB3
+8FE7BC E99DB6
+8FE7BD E99DB7
+8FE7BE E99DB8
+8FE7BF E99DBB
+8FE7C0 E99DBD
+8FE7C1 E99DBF
+8FE7C2 E99E80
+8FE7C3 E99E89
+8FE7C4 E99E95
+8FE7C5 E99E96
+8FE7C6 E99E97
+8FE7C7 E99E99
+8FE7C8 E99E9A
+8FE7C9 E99E9E
+8FE7CA E99E9F
+8FE7CB E99EA2
+8FE7CC E99EAC
+8FE7CD E99EAE
+8FE7CE E99EB1
+8FE7CF E99EB2
+8FE7D0 E99EB5
+8FE7D1 E99EB6
+8FE7D2 E99EB8
+8FE7D3 E99EB9
+8FE7D4 E99EBA
+8FE7D5 E99EBC
+8FE7D6 E99EBE
+8FE7D7 E99EBF
+8FE7D8 E99F81
+8FE7D9 E99F84
+8FE7DA E99F85
+8FE7DB E99F87
+8FE7DC E99F89
+8FE7DD E99F8A
+8FE7DE E99F8C
+8FE7DF E99F8D
+8FE7E0 E99F8E
+8FE7E1 E99F90
+8FE7E2 E99F91
+8FE7E3 E99F94
+8FE7E4 E99F97
+8FE7E5 E99F98
+8FE7E6 E99F99
+8FE7E7 E99F9D
+8FE7E8 E99F9E
+8FE7E9 E99FA0
+8FE7EA E99F9B
+8FE7EB E99FA1
+8FE7EC E99FA4
+8FE7ED E99FAF
+8FE7EE E99FB1
+8FE7EF E99FB4
+8FE7F0 E99FB7
+8FE7F1 E99FB8
+8FE7F2 E99FBA
+8FE7F3 E9A087
+8FE7F4 E9A08A
+8FE7F5 E9A099
+8FE7F6 E9A08D
+8FE7F7 E9A08E
+8FE7F8 E9A094
+8FE7F9 E9A096
+8FE7FA E9A09C
+8FE7FB E9A09E
+8FE7FC E9A0A0
+8FE7FD E9A0A3
+8FE7FE E9A0A6
+8FE8A1 E9A0AB
+8FE8A2 E9A0AE
+8FE8A3 E9A0AF
+8FE8A4 E9A0B0
+8FE8A5 E9A0B2
+8FE8A6 E9A0B3
+8FE8A7 E9A0B5
+8FE8A8 E9A0A5
+8FE8A9 E9A0BE
+8FE8AA E9A184
+8FE8AB E9A187
+8FE8AC E9A18A
+8FE8AD E9A191
+8FE8AE E9A192
+8FE8AF E9A193
+8FE8B0 E9A196
+8FE8B1 E9A197
+8FE8B2 E9A199
+8FE8B3 E9A19A
+8FE8B4 E9A1A2
+8FE8B5 E9A1A3
+8FE8B6 E9A1A5
+8FE8B7 E9A1A6
+8FE8B8 E9A1AA
+8FE8B9 E9A1AC
+8FE8BA E9A2AB
+8FE8BB E9A2AD
+8FE8BC E9A2AE
+8FE8BD E9A2B0
+8FE8BE E9A2B4
+8FE8BF E9A2B7
+8FE8C0 E9A2B8
+8FE8C1 E9A2BA
+8FE8C2 E9A2BB
+8FE8C3 E9A2BF
+8FE8C4 E9A382
+8FE8C5 E9A385
+8FE8C6 E9A388
+8FE8C7 E9A38C
+8FE8C8 E9A3A1
+8FE8C9 E9A3A3
+8FE8CA E9A3A5
+8FE8CB E9A3A6
+8FE8CC E9A3A7
+8FE8CD E9A3AA
+8FE8CE E9A3B3
+8FE8CF E9A3B6
+8FE8D0 E9A482
+8FE8D1 E9A487
+8FE8D2 E9A488
+8FE8D3 E9A491
+8FE8D4 E9A495
+8FE8D5 E9A496
+8FE8D6 E9A497
+8FE8D7 E9A49A
+8FE8D8 E9A49B
+8FE8D9 E9A49C
+8FE8DA E9A49F
+8FE8DB E9A4A2
+8FE8DC E9A4A6
+8FE8DD E9A4A7
+8FE8DE E9A4AB
+8FE8DF E9A4B1
+8FE8E0 E9A4B2
+8FE8E1 E9A4B3
+8FE8E2 E9A4B4
+8FE8E3 E9A4B5
+8FE8E4 E9A4B9
+8FE8E5 E9A4BA
+8FE8E6 E9A4BB
+8FE8E7 E9A4BC
+8FE8E8 E9A580
+8FE8E9 E9A581
+8FE8EA E9A586
+8FE8EB E9A587
+8FE8EC E9A588
+8FE8ED E9A58D
+8FE8EE E9A58E
+8FE8EF E9A594
+8FE8F0 E9A598
+8FE8F1 E9A599
+8FE8F2 E9A59B
+8FE8F3 E9A59C
+8FE8F4 E9A59E
+8FE8F5 E9A59F
+8FE8F6 E9A5A0
+8FE8F7 E9A69B
+8FE8F8 E9A69D
+8FE8F9 E9A69F
+8FE8FA E9A6A6
+8FE8FB E9A6B0
+8FE8FC E9A6B1
+8FE8FD E9A6B2
+8FE8FE E9A6B5
+8FE9A1 E9A6B9
+8FE9A2 E9A6BA
+8FE9A3 E9A6BD
+8FE9A4 E9A6BF
+8FE9A5 E9A783
+8FE9A6 E9A789
+8FE9A7 E9A793
+8FE9A8 E9A794
+8FE9A9 E9A799
+8FE9AA E9A79A
+8FE9AB E9A79C
+8FE9AC E9A79E
+8FE9AD E9A7A7
+8FE9AE E9A7AA
+8FE9AF E9A7AB
+8FE9B0 E9A7AC
+8FE9B1 E9A7B0
+8FE9B2 E9A7B4
+8FE9B3 E9A7B5
+8FE9B4 E9A7B9
+8FE9B5 E9A7BD
+8FE9B6 E9A7BE
+8FE9B7 E9A882
+8FE9B8 E9A883
+8FE9B9 E9A884
+8FE9BA E9A88B
+8FE9BB E9A88C
+8FE9BC E9A890
+8FE9BD E9A891
+8FE9BE E9A896
+8FE9BF E9A89E
+8FE9C0 E9A8A0
+8FE9C1 E9A8A2
+8FE9C2 E9A8A3
+8FE9C3 E9A8A4
+8FE9C4 E9A8A7
+8FE9C5 E9A8AD
+8FE9C6 E9A8AE
+8FE9C7 E9A8B3
+8FE9C8 E9A8B5
+8FE9C9 E9A8B6
+8FE9CA E9A8B8
+8FE9CB E9A987
+8FE9CC E9A981
+8FE9CD E9A984
+8FE9CE E9A98A
+8FE9CF E9A98B
+8FE9D0 E9A98C
+8FE9D1 E9A98E
+8FE9D2 E9A991
+8FE9D3 E9A994
+8FE9D4 E9A996
+8FE9D5 E9A99D
+8FE9D6 E9AAAA
+8FE9D7 E9AAAC
+8FE9D8 E9AAAE
+8FE9D9 E9AAAF
+8FE9DA E9AAB2
+8FE9DB E9AAB4
+8FE9DC E9AAB5
+8FE9DD E9AAB6
+8FE9DE E9AAB9
+8FE9DF E9AABB
+8FE9E0 E9AABE
+8FE9E1 E9AABF
+8FE9E2 E9AB81
+8FE9E3 E9AB83
+8FE9E4 E9AB86
+8FE9E5 E9AB88
+8FE9E6 E9AB8E
+8FE9E7 E9AB90
+8FE9E8 E9AB92
+8FE9E9 E9AB95
+8FE9EA E9AB96
+8FE9EB E9AB97
+8FE9EC E9AB9B
+8FE9ED E9AB9C
+8FE9EE E9ABA0
+8FE9EF E9ABA4
+8FE9F0 E9ABA5
+8FE9F1 E9ABA7
+8FE9F2 E9ABA9
+8FE9F3 E9ABAC
+8FE9F4 E9ABB2
+8FE9F5 E9ABB3
+8FE9F6 E9ABB5
+8FE9F7 E9ABB9
+8FE9F8 E9ABBA
+8FE9F9 E9ABBD
+8FE9FA E9ABBF
+8FE9FB E9AC80
+8FE9FC E9AC81
+8FE9FD E9AC82
+8FE9FE E9AC83
+8FEAA1 E9AC84
+8FEAA2 E9AC85
+8FEAA3 E9AC88
+8FEAA4 E9AC89
+8FEAA5 E9AC8B
+8FEAA6 E9AC8C
+8FEAA7 E9AC8D
+8FEAA8 E9AC8E
+8FEAA9 E9AC90
+8FEAAA E9AC92
+8FEAAB E9AC96
+8FEAAC E9AC99
+8FEAAD E9AC9B
+8FEAAE E9AC9C
+8FEAAF E9ACA0
+8FEAB0 E9ACA6
+8FEAB1 E9ACAB
+8FEAB2 E9ACAD
+8FEAB3 E9ACB3
+8FEAB4 E9ACB4
+8FEAB5 E9ACB5
+8FEAB6 E9ACB7
+8FEAB7 E9ACB9
+8FEAB8 E9ACBA
+8FEAB9 E9ACBD
+8FEABA E9AD88
+8FEABB E9AD8B
+8FEABC E9AD8C
+8FEABD E9AD95
+8FEABE E9AD96
+8FEABF E9AD97
+8FEAC0 E9AD9B
+8FEAC1 E9AD9E
+8FEAC2 E9ADA1
+8FEAC3 E9ADA3
+8FEAC4 E9ADA5
+8FEAC5 E9ADA6
+8FEAC6 E9ADA8
+8FEAC7 E9ADAA
+8FEAC8 E9ADAB
+8FEAC9 E9ADAC
+8FEACA E9ADAD
+8FEACB E9ADAE
+8FEACC E9ADB3
+8FEACD E9ADB5
+8FEACE E9ADB7
+8FEACF E9ADB8
+8FEAD0 E9ADB9
+8FEAD1 E9ADBF
+8FEAD2 E9AE80
+8FEAD3 E9AE84
+8FEAD4 E9AE85
+8FEAD5 E9AE86
+8FEAD6 E9AE87
+8FEAD7 E9AE89
+8FEAD8 E9AE8A
+8FEAD9 E9AE8B
+8FEADA E9AE8D
+8FEADB E9AE8F
+8FEADC E9AE90
+8FEADD E9AE94
+8FEADE E9AE9A
+8FEADF E9AE9D
+8FEAE0 E9AE9E
+8FEAE1 E9AEA6
+8FEAE2 E9AEA7
+8FEAE3 E9AEA9
+8FEAE4 E9AEAC
+8FEAE5 E9AEB0
+8FEAE6 E9AEB1
+8FEAE7 E9AEB2
+8FEAE8 E9AEB7
+8FEAE9 E9AEB8
+8FEAEA E9AEBB
+8FEAEB E9AEBC
+8FEAEC E9AEBE
+8FEAED E9AEBF
+8FEAEE E9AF81
+8FEAEF E9AF87
+8FEAF0 E9AF88
+8FEAF1 E9AF8E
+8FEAF2 E9AF90
+8FEAF3 E9AF97
+8FEAF4 E9AF98
+8FEAF5 E9AF9D
+8FEAF6 E9AF9F
+8FEAF7 E9AFA5
+8FEAF8 E9AFA7
+8FEAF9 E9AFAA
+8FEAFA E9AFAB
+8FEAFB E9AFAF
+8FEAFC E9AFB3
+8FEAFD E9AFB7
+8FEAFE E9AFB8
+8FEBA1 E9AFB9
+8FEBA2 E9AFBA
+8FEBA3 E9AFBD
+8FEBA4 E9AFBF
+8FEBA5 E9B080
+8FEBA6 E9B082
+8FEBA7 E9B08B
+8FEBA8 E9B08F
+8FEBA9 E9B091
+8FEBAA E9B096
+8FEBAB E9B098
+8FEBAC E9B099
+8FEBAD E9B09A
+8FEBAE E9B09C
+8FEBAF E9B09E
+8FEBB0 E9B0A2
+8FEBB1 E9B0A3
+8FEBB2 E9B0A6
+8FEBB3 E9B0A7
+8FEBB4 E9B0A8
+8FEBB5 E9B0A9
+8FEBB6 E9B0AA
+8FEBB7 E9B0B1
+8FEBB8 E9B0B5
+8FEBB9 E9B0B6
+8FEBBA E9B0B7
+8FEBBB E9B0BD
+8FEBBC E9B181
+8FEBBD E9B183
+8FEBBE E9B184
+8FEBBF E9B185
+8FEBC0 E9B189
+8FEBC1 E9B18A
+8FEBC2 E9B18E
+8FEBC3 E9B18F
+8FEBC4 E9B190
+8FEBC5 E9B193
+8FEBC6 E9B194
+8FEBC7 E9B196
+8FEBC8 E9B198
+8FEBC9 E9B19B
+8FEBCA E9B19D
+8FEBCB E9B19E
+8FEBCC E9B19F
+8FEBCD E9B1A3
+8FEBCE E9B1A9
+8FEBCF E9B1AA
+8FEBD0 E9B19C
+8FEBD1 E9B1AB
+8FEBD2 E9B1A8
+8FEBD3 E9B1AE
+8FEBD4 E9B1B0
+8FEBD5 E9B1B2
+8FEBD6 E9B1B5
+8FEBD7 E9B1B7
+8FEBD8 E9B1BB
+8FEBD9 E9B3A6
+8FEBDA E9B3B2
+8FEBDB E9B3B7
+8FEBDC E9B3B9
+8FEBDD E9B48B
+8FEBDE E9B482
+8FEBDF E9B491
+8FEBE0 E9B497
+8FEBE1 E9B498
+8FEBE2 E9B49C
+8FEBE3 E9B49D
+8FEBE4 E9B49E
+8FEBE5 E9B4AF
+8FEBE6 E9B4B0
+8FEBE7 E9B4B2
+8FEBE8 E9B4B3
+8FEBE9 E9B4B4
+8FEBEA E9B4BA
+8FEBEB E9B4BC
+8FEBEC E9B585
+8FEBED E9B4BD
+8FEBEE E9B582
+8FEBEF E9B583
+8FEBF0 E9B587
+8FEBF1 E9B58A
+8FEBF2 E9B593
+8FEBF3 E9B594
+8FEBF4 E9B59F
+8FEBF5 E9B5A3
+8FEBF6 E9B5A2
+8FEBF7 E9B5A5
+8FEBF8 E9B5A9
+8FEBF9 E9B5AA
+8FEBFA E9B5AB
+8FEBFB E9B5B0
+8FEBFC E9B5B6
+8FEBFD E9B5B7
+8FEBFE E9B5BB
+8FECA1 E9B5BC
+8FECA2 E9B5BE
+8FECA3 E9B683
+8FECA4 E9B684
+8FECA5 E9B686
+8FECA6 E9B68A
+8FECA7 E9B68D
+8FECA8 E9B68E
+8FECA9 E9B692
+8FECAA E9B693
+8FECAB E9B695
+8FECAC E9B696
+8FECAD E9B697
+8FECAE E9B698
+8FECAF E9B6A1
+8FECB0 E9B6AA
+8FECB1 E9B6AC
+8FECB2 E9B6AE
+8FECB3 E9B6B1
+8FECB4 E9B6B5
+8FECB5 E9B6B9
+8FECB6 E9B6BC
+8FECB7 E9B6BF
+8FECB8 E9B783
+8FECB9 E9B787
+8FECBA E9B789
+8FECBB E9B78A
+8FECBC E9B794
+8FECBD E9B795
+8FECBE E9B796
+8FECBF E9B797
+8FECC0 E9B79A
+8FECC1 E9B79E
+8FECC2 E9B79F
+8FECC3 E9B7A0
+8FECC4 E9B7A5
+8FECC5 E9B7A7
+8FECC6 E9B7A9
+8FECC7 E9B7AB
+8FECC8 E9B7AE
+8FECC9 E9B7B0
+8FECCA E9B7B3
+8FECCB E9B7B4
+8FECCC E9B7BE
+8FECCD E9B88A
+8FECCE E9B882
+8FECCF E9B887
+8FECD0 E9B88E
+8FECD1 E9B890
+8FECD2 E9B891
+8FECD3 E9B892
+8FECD4 E9B895
+8FECD5 E9B896
+8FECD6 E9B899
+8FECD7 E9B89C
+8FECD8 E9B89D
+8FECD9 E9B9BA
+8FECDA E9B9BB
+8FECDB E9B9BC
+8FECDC E9BA80
+8FECDD E9BA82
+8FECDE E9BA83
+8FECDF E9BA84
+8FECE0 E9BA85
+8FECE1 E9BA87
+8FECE2 E9BA8E
+8FECE3 E9BA8F
+8FECE4 E9BA96
+8FECE5 E9BA98
+8FECE6 E9BA9B
+8FECE7 E9BA9E
+8FECE8 E9BAA4
+8FECE9 E9BAA8
+8FECEA E9BAAC
+8FECEB E9BAAE
+8FECEC E9BAAF
+8FECED E9BAB0
+8FECEE E9BAB3
+8FECEF E9BAB4
+8FECF0 E9BAB5
+8FECF1 E9BB86
+8FECF2 E9BB88
+8FECF3 E9BB8B
+8FECF4 E9BB95
+8FECF5 E9BB9F
+8FECF6 E9BBA4
+8FECF7 E9BBA7
+8FECF8 E9BBAC
+8FECF9 E9BBAD
+8FECFA E9BBAE
+8FECFB E9BBB0
+8FECFC E9BBB1
+8FECFD E9BBB2
+8FECFE E9BBB5
+8FEDA1 E9BBB8
+8FEDA2 E9BBBF
+8FEDA3 E9BC82
+8FEDA4 E9BC83
+8FEDA5 E9BC89
+8FEDA6 E9BC8F
+8FEDA7 E9BC90
+8FEDA8 E9BC91
+8FEDA9 E9BC92
+8FEDAA E9BC94
+8FEDAB E9BC96
+8FEDAC E9BC97
+8FEDAD E9BC99
+8FEDAE E9BC9A
+8FEDAF E9BC9B
+8FEDB0 E9BC9F
+8FEDB1 E9BCA2
+8FEDB2 E9BCA6
+8FEDB3 E9BCAA
+8FEDB4 E9BCAB
+8FEDB5 E9BCAF
+8FEDB6 E9BCB1
+8FEDB7 E9BCB2
+8FEDB8 E9BCB4
+8FEDB9 E9BCB7
+8FEDBA E9BCB9
+8FEDBB E9BCBA
+8FEDBC E9BCBC
+8FEDBD E9BCBD
+8FEDBE E9BCBF
+8FEDBF E9BD81
+8FEDC0 E9BD83
+8FEDC1 E9BD84
+8FEDC2 E9BD85
+8FEDC3 E9BD86
+8FEDC4 E9BD87
+8FEDC5 E9BD93
+8FEDC6 E9BD95
+8FEDC7 E9BD96
+8FEDC8 E9BD97
+8FEDC9 E9BD98
+8FEDCA E9BD9A
+8FEDCB E9BD9D
+8FEDCC E9BD9E
+8FEDCD E9BDA8
+8FEDCE E9BDA9
+8FEDCF E9BDAD
+8FEDD0 E9BDAE
+8FEDD1 E9BDAF
+8FEDD2 E9BDB0
+8FEDD3 E9BDB1
+8FEDD4 E9BDB3
+8FEDD5 E9BDB5
+8FEDD6 E9BDBA
+8FEDD7 E9BDBD
+8FEDD8 E9BE8F
+8FEDD9 E9BE90
+8FEDDA E9BE91
+8FEDDB E9BE92
+8FEDDC E9BE94
+8FEDDD E9BE96
+8FEDDE E9BE97
+8FEDDF E9BE9E
+8FEDE0 E9BEA1
+8FEDE1 E9BEA2
+8FEDE2 E9BEA3
+8FEDE3 E9BEA5
+8FF5A1 EE8EAC
+8FF5A2 EE8EAD
+8FF5A3 EE8EAE
+8FF5A4 EE8EAF
+8FF5A5 EE8EB0
+8FF5A6 EE8EB1
+8FF5A7 EE8EB2
+8FF5A8 EE8EB3
+8FF5A9 EE8EB4
+8FF5AA EE8EB5
+8FF5AB EE8EB6
+8FF5AC EE8EB7
+8FF5AD EE8EB8
+8FF5AE EE8EB9
+8FF5AF EE8EBA
+8FF5B0 EE8EBB
+8FF5B1 EE8EBC
+8FF5B2 EE8EBD
+8FF5B3 EE8EBE
+8FF5B4 EE8EBF
+8FF5B5 EE8F80
+8FF5B6 EE8F81
+8FF5B7 EE8F82
+8FF5B8 EE8F83
+8FF5B9 EE8F84
+8FF5BA EE8F85
+8FF5BB EE8F86
+8FF5BC EE8F87
+8FF5BD EE8F88
+8FF5BE EE8F89
+8FF5BF EE8F8A
+8FF5C0 EE8F8B
+8FF5C1 EE8F8C
+8FF5C2 EE8F8D
+8FF5C3 EE8F8E
+8FF5C4 EE8F8F
+8FF5C5 EE8F90
+8FF5C6 EE8F91
+8FF5C7 EE8F92
+8FF5C8 EE8F93
+8FF5C9 EE8F94
+8FF5CA EE8F95
+8FF5CB EE8F96
+8FF5CC EE8F97
+8FF5CD EE8F98
+8FF5CE EE8F99
+8FF5CF EE8F9A
+8FF5D0 EE8F9B
+8FF5D1 EE8F9C
+8FF5D2 EE8F9D
+8FF5D3 EE8F9E
+8FF5D4 EE8F9F
+8FF5D5 EE8FA0
+8FF5D6 EE8FA1
+8FF5D7 EE8FA2
+8FF5D8 EE8FA3
+8FF5D9 EE8FA4
+8FF5DA EE8FA5
+8FF5DB EE8FA6
+8FF5DC EE8FA7
+8FF5DD EE8FA8
+8FF5DE EE8FA9
+8FF5DF EE8FAA
+8FF5E0 EE8FAB
+8FF5E1 EE8FAC
+8FF5E2 EE8FAD
+8FF5E3 EE8FAE
+8FF5E4 EE8FAF
+8FF5E5 EE8FB0
+8FF5E6 EE8FB1
+8FF5E7 EE8FB2
+8FF5E8 EE8FB3
+8FF5E9 EE8FB4
+8FF5EA EE8FB5
+8FF5EB EE8FB6
+8FF5EC EE8FB7
+8FF5ED EE8FB8
+8FF5EE EE8FB9
+8FF5EF EE8FBA
+8FF5F0 EE8FBB
+8FF5F1 EE8FBC
+8FF5F2 EE8FBD
+8FF5F3 EE8FBE
+8FF5F4 EE8FBF
+8FF5F5 EE9080
+8FF5F6 EE9081
+8FF5F7 EE9082
+8FF5F8 EE9083
+8FF5F9 EE9084
+8FF5FA EE9085
+8FF5FB EE9086
+8FF5FC EE9087
+8FF5FD EE9088
+8FF5FE EE9089
+8FF6A1 EE908A
+8FF6A2 EE908B
+8FF6A3 EE908C
+8FF6A4 EE908D
+8FF6A5 EE908E
+8FF6A6 EE908F
+8FF6A7 EE9090
+8FF6A8 EE9091
+8FF6A9 EE9092
+8FF6AA EE9093
+8FF6AB EE9094
+8FF6AC EE9095
+8FF6AD EE9096
+8FF6AE EE9097
+8FF6AF EE9098
+8FF6B0 EE9099
+8FF6B1 EE909A
+8FF6B2 EE909B
+8FF6B3 EE909C
+8FF6B4 EE909D
+8FF6B5 EE909E
+8FF6B6 EE909F
+8FF6B7 EE90A0
+8FF6B8 EE90A1
+8FF6B9 EE90A2
+8FF6BA EE90A3
+8FF6BB EE90A4
+8FF6BC EE90A5
+8FF6BD EE90A6
+8FF6BE EE90A7
+8FF6BF EE90A8
+8FF6C0 EE90A9
+8FF6C1 EE90AA
+8FF6C2 EE90AB
+8FF6C3 EE90AC
+8FF6C4 EE90AD
+8FF6C5 EE90AE
+8FF6C6 EE90AF
+8FF6C7 EE90B0
+8FF6C8 EE90B1
+8FF6C9 EE90B2
+8FF6CA EE90B3
+8FF6CB EE90B4
+8FF6CC EE90B5
+8FF6CD EE90B6
+8FF6CE EE90B7
+8FF6CF EE90B8
+8FF6D0 EE90B9
+8FF6D1 EE90BA
+8FF6D2 EE90BB
+8FF6D3 EE90BC
+8FF6D4 EE90BD
+8FF6D5 EE90BE
+8FF6D6 EE90BF
+8FF6D7 EE9180
+8FF6D8 EE9181
+8FF6D9 EE9182
+8FF6DA EE9183
+8FF6DB EE9184
+8FF6DC EE9185
+8FF6DD EE9186
+8FF6DE EE9187
+8FF6DF EE9188
+8FF6E0 EE9189
+8FF6E1 EE918A
+8FF6E2 EE918B
+8FF6E3 EE918C
+8FF6E4 EE918D
+8FF6E5 EE918E
+8FF6E6 EE918F
+8FF6E7 EE9190
+8FF6E8 EE9191
+8FF6E9 EE9192
+8FF6EA EE9193
+8FF6EB EE9194
+8FF6EC EE9195
+8FF6ED EE9196
+8FF6EE EE9197
+8FF6EF EE9198
+8FF6F0 EE9199
+8FF6F1 EE919A
+8FF6F2 EE919B
+8FF6F3 EE919C
+8FF6F4 EE919D
+8FF6F5 EE919E
+8FF6F6 EE919F
+8FF6F7 EE91A0
+8FF6F8 EE91A1
+8FF6F9 EE91A2
+8FF6FA EE91A3
+8FF6FB EE91A4
+8FF6FC EE91A5
+8FF6FD EE91A6
+8FF6FE EE91A7
+8FF7A1 EE91A8
+8FF7A2 EE91A9
+8FF7A3 EE91AA
+8FF7A4 EE91AB
+8FF7A5 EE91AC
+8FF7A6 EE91AD
+8FF7A7 EE91AE
+8FF7A8 EE91AF
+8FF7A9 EE91B0
+8FF7AA EE91B1
+8FF7AB EE91B2
+8FF7AC EE91B3
+8FF7AD EE91B4
+8FF7AE EE91B5
+8FF7AF EE91B6
+8FF7B0 EE91B7
+8FF7B1 EE91B8
+8FF7B2 EE91B9
+8FF7B3 EE91BA
+8FF7B4 EE91BB
+8FF7B5 EE91BC
+8FF7B6 EE91BD
+8FF7B7 EE91BE
+8FF7B8 EE91BF
+8FF7B9 EE9280
+8FF7BA EE9281
+8FF7BB EE9282
+8FF7BC EE9283
+8FF7BD EE9284
+8FF7BE EE9285
+8FF7BF EE9286
+8FF7C0 EE9287
+8FF7C1 EE9288
+8FF7C2 EE9289
+8FF7C3 EE928A
+8FF7C4 EE928B
+8FF7C5 EE928C
+8FF7C6 EE928D
+8FF7C7 EE928E
+8FF7C8 EE928F
+8FF7C9 EE9290
+8FF7CA EE9291
+8FF7CB EE9292
+8FF7CC EE9293
+8FF7CD EE9294
+8FF7CE EE9295
+8FF7CF EE9296
+8FF7D0 EE9297
+8FF7D1 EE9298
+8FF7D2 EE9299
+8FF7D3 EE929A
+8FF7D4 EE929B
+8FF7D5 EE929C
+8FF7D6 EE929D
+8FF7D7 EE929E
+8FF7D8 EE929F
+8FF7D9 EE92A0
+8FF7DA EE92A1
+8FF7DB EE92A2
+8FF7DC EE92A3
+8FF7DD EE92A4
+8FF7DE EE92A5
+8FF7DF EE92A6
+8FF7E0 EE92A7
+8FF7E1 EE92A8
+8FF7E2 EE92A9
+8FF7E3 EE92AA
+8FF7E4 EE92AB
+8FF7E5 EE92AC
+8FF7E6 EE92AD
+8FF7E7 EE92AE
+8FF7E8 EE92AF
+8FF7E9 EE92B0
+8FF7EA EE92B1
+8FF7EB EE92B2
+8FF7EC EE92B3
+8FF7ED EE92B4
+8FF7EE EE92B5
+8FF7EF EE92B6
+8FF7F0 EE92B7
+8FF7F1 EE92B8
+8FF7F2 EE92B9
+8FF7F3 EE92BA
+8FF7F4 EE92BB
+8FF7F5 EE92BC
+8FF7F6 EE92BD
+8FF7F7 EE92BE
+8FF7F8 EE92BF
+8FF7F9 EE9380
+8FF7FA EE9381
+8FF7FB EE9382
+8FF7FC EE9383
+8FF7FD EE9384
+8FF7FE EE9385
+8FF8A1 EE9386
+8FF8A2 EE9387
+8FF8A3 EE9388
+8FF8A4 EE9389
+8FF8A5 EE938A
+8FF8A6 EE938B
+8FF8A7 EE938C
+8FF8A8 EE938D
+8FF8A9 EE938E
+8FF8AA EE938F
+8FF8AB EE9390
+8FF8AC EE9391
+8FF8AD EE9392
+8FF8AE EE9393
+8FF8AF EE9394
+8FF8B0 EE9395
+8FF8B1 EE9396
+8FF8B2 EE9397
+8FF8B3 EE9398
+8FF8B4 EE9399
+8FF8B5 EE939A
+8FF8B6 EE939B
+8FF8B7 EE939C
+8FF8B8 EE939D
+8FF8B9 EE939E
+8FF8BA EE939F
+8FF8BB EE93A0
+8FF8BC EE93A1
+8FF8BD EE93A2
+8FF8BE EE93A3
+8FF8BF EE93A4
+8FF8C0 EE93A5
+8FF8C1 EE93A6
+8FF8C2 EE93A7
+8FF8C3 EE93A8
+8FF8C4 EE93A9
+8FF8C5 EE93AA
+8FF8C6 EE93AB
+8FF8C7 EE93AC
+8FF8C8 EE93AD
+8FF8C9 EE93AE
+8FF8CA EE93AF
+8FF8CB EE93B0
+8FF8CC EE93B1
+8FF8CD EE93B2
+8FF8CE EE93B3
+8FF8CF EE93B4
+8FF8D0 EE93B5
+8FF8D1 EE93B6
+8FF8D2 EE93B7
+8FF8D3 EE93B8
+8FF8D4 EE93B9
+8FF8D5 EE93BA
+8FF8D6 EE93BB
+8FF8D7 EE93BC
+8FF8D8 EE93BD
+8FF8D9 EE93BE
+8FF8DA EE93BF
+8FF8DB EE9480
+8FF8DC EE9481
+8FF8DD EE9482
+8FF8DE EE9483
+8FF8DF EE9484
+8FF8E0 EE9485
+8FF8E1 EE9486
+8FF8E2 EE9487
+8FF8E3 EE9488
+8FF8E4 EE9489
+8FF8E5 EE948A
+8FF8E6 EE948B
+8FF8E7 EE948C
+8FF8E8 EE948D
+8FF8E9 EE948E
+8FF8EA EE948F
+8FF8EB EE9490
+8FF8EC EE9491
+8FF8ED EE9492
+8FF8EE EE9493
+8FF8EF EE9494
+8FF8F0 EE9495
+8FF8F1 EE9496
+8FF8F2 EE9497
+8FF8F3 EE9498
+8FF8F4 EE9499
+8FF8F5 EE949A
+8FF8F6 EE949B
+8FF8F7 EE949C
+8FF8F8 EE949D
+8FF8F9 EE949E
+8FF8FA EE949F
+8FF8FB EE94A0
+8FF8FC EE94A1
+8FF8FD EE94A2
+8FF8FE EE94A3
+8FF9A1 EE94A4
+8FF9A2 EE94A5
+8FF9A3 EE94A6
+8FF9A4 EE94A7
+8FF9A5 EE94A8
+8FF9A6 EE94A9
+8FF9A7 EE94AA
+8FF9A8 EE94AB
+8FF9A9 EE94AC
+8FF9AA EE94AD
+8FF9AB EE94AE
+8FF9AC EE94AF
+8FF9AD EE94B0
+8FF9AE EE94B1
+8FF9AF EE94B2
+8FF9B0 EE94B3
+8FF9B1 EE94B4
+8FF9B2 EE94B5
+8FF9B3 EE94B6
+8FF9B4 EE94B7
+8FF9B5 EE94B8
+8FF9B6 EE94B9
+8FF9B7 EE94BA
+8FF9B8 EE94BB
+8FF9B9 EE94BC
+8FF9BA EE94BD
+8FF9BB EE94BE
+8FF9BC EE94BF
+8FF9BD EE9580
+8FF9BE EE9581
+8FF9BF EE9582
+8FF9C0 EE9583
+8FF9C1 EE9584
+8FF9C2 EE9585
+8FF9C3 EE9586
+8FF9C4 EE9587
+8FF9C5 EE9588
+8FF9C6 EE9589
+8FF9C7 EE958A
+8FF9C8 EE958B
+8FF9C9 EE958C
+8FF9CA EE958D
+8FF9CB EE958E
+8FF9CC EE958F
+8FF9CD EE9590
+8FF9CE EE9591
+8FF9CF EE9592
+8FF9D0 EE9593
+8FF9D1 EE9594
+8FF9D2 EE9595
+8FF9D3 EE9596
+8FF9D4 EE9597
+8FF9D5 EE9598
+8FF9D6 EE9599
+8FF9D7 EE959A
+8FF9D8 EE959B
+8FF9D9 EE959C
+8FF9DA EE959D
+8FF9DB EE959E
+8FF9DC EE959F
+8FF9DD EE95A0
+8FF9DE EE95A1
+8FF9DF EE95A2
+8FF9E0 EE95A3
+8FF9E1 EE95A4
+8FF9E2 EE95A5
+8FF9E3 EE95A6
+8FF9E4 EE95A7
+8FF9E5 EE95A8
+8FF9E6 EE95A9
+8FF9E7 EE95AA
+8FF9E8 EE95AB
+8FF9E9 EE95AC
+8FF9EA EE95AD
+8FF9EB EE95AE
+8FF9EC EE95AF
+8FF9ED EE95B0
+8FF9EE EE95B1
+8FF9EF EE95B2
+8FF9F0 EE95B3
+8FF9F1 EE95B4
+8FF9F2 EE95B5
+8FF9F3 EE95B6
+8FF9F4 EE95B7
+8FF9F5 EE95B8
+8FF9F6 EE95B9
+8FF9F7 EE95BA
+8FF9F8 EE95BB
+8FF9F9 EE95BC
+8FF9FA EE95BD
+8FF9FB EE95BE
+8FF9FC EE95BF
+8FF9FD EE9680
+8FF9FE EE9681
+8FFAA1 EE9682
+8FFAA2 EE9683
+8FFAA3 EE9684
+8FFAA4 EE9685
+8FFAA5 EE9686
+8FFAA6 EE9687
+8FFAA7 EE9688
+8FFAA8 EE9689
+8FFAA9 EE968A
+8FFAAA EE968B
+8FFAAB EE968C
+8FFAAC EE968D
+8FFAAD EE968E
+8FFAAE EE968F
+8FFAAF EE9690
+8FFAB0 EE9691
+8FFAB1 EE9692
+8FFAB2 EE9693
+8FFAB3 EE9694
+8FFAB4 EE9695
+8FFAB5 EE9696
+8FFAB6 EE9697
+8FFAB7 EE9698
+8FFAB8 EE9699
+8FFAB9 EE969A
+8FFABA EE969B
+8FFABB EE969C
+8FFABC EE969D
+8FFABD EE969E
+8FFABE EE969F
+8FFABF EE96A0
+8FFAC0 EE96A1
+8FFAC1 EE96A2
+8FFAC2 EE96A3
+8FFAC3 EE96A4
+8FFAC4 EE96A5
+8FFAC5 EE96A6
+8FFAC6 EE96A7
+8FFAC7 EE96A8
+8FFAC8 EE96A9
+8FFAC9 EE96AA
+8FFACA EE96AB
+8FFACB EE96AC
+8FFACC EE96AD
+8FFACD EE96AE
+8FFACE EE96AF
+8FFACF EE96B0
+8FFAD0 EE96B1
+8FFAD1 EE96B2
+8FFAD2 EE96B3
+8FFAD3 EE96B4
+8FFAD4 EE96B5
+8FFAD5 EE96B6
+8FFAD6 EE96B7
+8FFAD7 EE96B8
+8FFAD8 EE96B9
+8FFAD9 EE96BA
+8FFADA EE96BB
+8FFADB EE96BC
+8FFADC EE96BD
+8FFADD EE96BE
+8FFADE EE96BF
+8FFADF EE9780
+8FFAE0 EE9781
+8FFAE1 EE9782
+8FFAE2 EE9783
+8FFAE3 EE9784
+8FFAE4 EE9785
+8FFAE5 EE9786
+8FFAE6 EE9787
+8FFAE7 EE9788
+8FFAE8 EE9789
+8FFAE9 EE978A
+8FFAEA EE978B
+8FFAEB EE978C
+8FFAEC EE978D
+8FFAED EE978E
+8FFAEE EE978F
+8FFAEF EE9790
+8FFAF0 EE9791
+8FFAF1 EE9792
+8FFAF2 EE9793
+8FFAF3 EE9794
+8FFAF4 EE9795
+8FFAF5 EE9796
+8FFAF6 EE9797
+8FFAF7 EE9798
+8FFAF8 EE9799
+8FFAF9 EE979A
+8FFAFA EE979B
+8FFAFB EE979C
+8FFAFC EE979D
+8FFAFD EE979E
+8FFAFE EE979F
+8FFBA1 EE97A0
+8FFBA2 EE97A1
+8FFBA3 EE97A2
+8FFBA4 EE97A3
+8FFBA5 EE97A4
+8FFBA6 EE97A5
+8FFBA7 EE97A6
+8FFBA8 EE97A7
+8FFBA9 EE97A8
+8FFBAA EE97A9
+8FFBAB EE97AA
+8FFBAC EE97AB
+8FFBAD EE97AC
+8FFBAE EE97AD
+8FFBAF EE97AE
+8FFBB0 EE97AF
+8FFBB1 EE97B0
+8FFBB2 EE97B1
+8FFBB3 EE97B2
+8FFBB4 EE97B3
+8FFBB5 EE97B4
+8FFBB6 EE97B5
+8FFBB7 EE97B6
+8FFBB8 EE97B7
+8FFBB9 EE97B8
+8FFBBA EE97B9
+8FFBBB EE97BA
+8FFBBC EE97BB
+8FFBBD EE97BC
+8FFBBE EE97BD
+8FFBBF EE97BE
+8FFBC0 EE97BF
+8FFBC1 EE9880
+8FFBC2 EE9881
+8FFBC3 EE9882
+8FFBC4 EE9883
+8FFBC5 EE9884
+8FFBC6 EE9885
+8FFBC7 EE9886
+8FFBC8 EE9887
+8FFBC9 EE9888
+8FFBCA EE9889
+8FFBCB EE988A
+8FFBCC EE988B
+8FFBCD EE988C
+8FFBCE EE988D
+8FFBCF EE988E
+8FFBD0 EE988F
+8FFBD1 EE9890
+8FFBD2 EE9891
+8FFBD3 EE9892
+8FFBD4 EE9893
+8FFBD5 EE9894
+8FFBD6 EE9895
+8FFBD7 EE9896
+8FFBD8 EE9897
+8FFBD9 EE9898
+8FFBDA EE9899
+8FFBDB EE989A
+8FFBDC EE989B
+8FFBDD EE989C
+8FFBDE EE989D
+8FFBDF EE989E
+8FFBE0 EE989F
+8FFBE1 EE98A0
+8FFBE2 EE98A1
+8FFBE3 EE98A2
+8FFBE4 EE98A3
+8FFBE5 EE98A4
+8FFBE6 EE98A5
+8FFBE7 EE98A6
+8FFBE8 EE98A7
+8FFBE9 EE98A8
+8FFBEA EE98A9
+8FFBEB EE98AA
+8FFBEC EE98AB
+8FFBED EE98AC
+8FFBEE EE98AD
+8FFBEF EE98AE
+8FFBF0 EE98AF
+8FFBF1 EE98B0
+8FFBF2 EE98B1
+8FFBF3 EE98B2
+8FFBF4 EE98B3
+8FFBF5 EE98B4
+8FFBF6 EE98B5
+8FFBF7 EE98B6
+8FFBF8 EE98B7
+8FFBF9 EE98B8
+8FFBFA EE98B9
+8FFBFB EE98BA
+8FFBFC EE98BB
+8FFBFD EE98BC
+8FFBFE EE98BD
+8FFCA1 EE98BE
+8FFCA2 EE98BF
+8FFCA3 EE9980
+8FFCA4 EE9981
+8FFCA5 EE9982
+8FFCA6 EE9983
+8FFCA7 EE9984
+8FFCA8 EE9985
+8FFCA9 EE9986
+8FFCAA EE9987
+8FFCAB EE9988
+8FFCAC EE9989
+8FFCAD EE998A
+8FFCAE EE998B
+8FFCAF EE998C
+8FFCB0 EE998D
+8FFCB1 EE998E
+8FFCB2 EE998F
+8FFCB3 EE9990
+8FFCB4 EE9991
+8FFCB5 EE9992
+8FFCB6 EE9993
+8FFCB7 EE9994
+8FFCB8 EE9995
+8FFCB9 EE9996
+8FFCBA EE9997
+8FFCBB EE9998
+8FFCBC EE9999
+8FFCBD EE999A
+8FFCBE EE999B
+8FFCBF EE999C
+8FFCC0 EE999D
+8FFCC1 EE999E
+8FFCC2 EE999F
+8FFCC3 EE99A0
+8FFCC4 EE99A1
+8FFCC5 EE99A2
+8FFCC6 EE99A3
+8FFCC7 EE99A4
+8FFCC8 EE99A5
+8FFCC9 EE99A6
+8FFCCA EE99A7
+8FFCCB EE99A8
+8FFCCC EE99A9
+8FFCCD EE99AA
+8FFCCE EE99AB
+8FFCCF EE99AC
+8FFCD0 EE99AD
+8FFCD1 EE99AE
+8FFCD2 EE99AF
+8FFCD3 EE99B0
+8FFCD4 EE99B1
+8FFCD5 EE99B2
+8FFCD6 EE99B3
+8FFCD7 EE99B4
+8FFCD8 EE99B5
+8FFCD9 EE99B6
+8FFCDA EE99B7
+8FFCDB EE99B8
+8FFCDC EE99B9
+8FFCDD EE99BA
+8FFCDE EE99BB
+8FFCDF EE99BC
+8FFCE0 EE99BD
+8FFCE1 EE99BE
+8FFCE2 EE99BF
+8FFCE3 EE9A80
+8FFCE4 EE9A81
+8FFCE5 EE9A82
+8FFCE6 EE9A83
+8FFCE7 EE9A84
+8FFCE8 EE9A85
+8FFCE9 EE9A86
+8FFCEA EE9A87
+8FFCEB EE9A88
+8FFCEC EE9A89
+8FFCED EE9A8A
+8FFCEE EE9A8B
+8FFCEF EE9A8C
+8FFCF0 EE9A8D
+8FFCF1 EE9A8E
+8FFCF2 EE9A8F
+8FFCF3 EE9A90
+8FFCF4 EE9A91
+8FFCF5 EE9A92
+8FFCF6 EE9A93
+8FFCF7 EE9A94
+8FFCF8 EE9A95
+8FFCF9 EE9A96
+8FFCFA EE9A97
+8FFCFB EE9A98
+8FFCFC EE9A99
+8FFCFD EE9A9A
+8FFCFE EE9A9B
+8FFDA1 EE9A9C
+8FFDA2 EE9A9D
+8FFDA3 EE9A9E
+8FFDA4 EE9A9F
+8FFDA5 EE9AA0
+8FFDA6 EE9AA1
+8FFDA7 EE9AA2
+8FFDA8 EE9AA3
+8FFDA9 EE9AA4
+8FFDAA EE9AA5
+8FFDAB EE9AA6
+8FFDAC EE9AA7
+8FFDAD EE9AA8
+8FFDAE EE9AA9
+8FFDAF EE9AAA
+8FFDB0 EE9AAB
+8FFDB1 EE9AAC
+8FFDB2 EE9AAD
+8FFDB3 EE9AAE
+8FFDB4 EE9AAF
+8FFDB5 EE9AB0
+8FFDB6 EE9AB1
+8FFDB7 EE9AB2
+8FFDB8 EE9AB3
+8FFDB9 EE9AB4
+8FFDBA EE9AB5
+8FFDBB EE9AB6
+8FFDBC EE9AB7
+8FFDBD EE9AB8
+8FFDBE EE9AB9
+8FFDBF EE9ABA
+8FFDC0 EE9ABB
+8FFDC1 EE9ABC
+8FFDC2 EE9ABD
+8FFDC3 EE9ABE
+8FFDC4 EE9ABF
+8FFDC5 EE9B80
+8FFDC6 EE9B81
+8FFDC7 EE9B82
+8FFDC8 EE9B83
+8FFDC9 EE9B84
+8FFDCA EE9B85
+8FFDCB EE9B86
+8FFDCC EE9B87
+8FFDCD EE9B88
+8FFDCE EE9B89
+8FFDCF EE9B8A
+8FFDD0 EE9B8B
+8FFDD1 EE9B8C
+8FFDD2 EE9B8D
+8FFDD3 EE9B8E
+8FFDD4 EE9B8F
+8FFDD5 EE9B90
+8FFDD6 EE9B91
+8FFDD7 EE9B92
+8FFDD8 EE9B93
+8FFDD9 EE9B94
+8FFDDA EE9B95
+8FFDDB EE9B96
+8FFDDC EE9B97
+8FFDDD EE9B98
+8FFDDE EE9B99
+8FFDDF EE9B9A
+8FFDE0 EE9B9B
+8FFDE1 EE9B9C
+8FFDE2 EE9B9D
+8FFDE3 EE9B9E
+8FFDE4 EE9B9F
+8FFDE5 EE9BA0
+8FFDE6 EE9BA1
+8FFDE7 EE9BA2
+8FFDE8 EE9BA3
+8FFDE9 EE9BA4
+8FFDEA EE9BA5
+8FFDEB EE9BA6
+8FFDEC EE9BA7
+8FFDED EE9BA8
+8FFDEE EE9BA9
+8FFDEF EE9BAA
+8FFDF0 EE9BAB
+8FFDF1 EE9BAC
+8FFDF2 EE9BAD
+8FFDF3 EE9BAE
+8FFDF4 EE9BAF
+8FFDF5 EE9BB0
+8FFDF6 EE9BB1
+8FFDF7 EE9BB2
+8FFDF8 EE9BB3
+8FFDF9 EE9BB4
+8FFDFA EE9BB5
+8FFDFB EE9BB6
+8FFDFC EE9BB7
+8FFDFD EE9BB8
+8FFDFE EE9BB9
+8FFEA1 EE9BBA
+8FFEA2 EE9BBB
+8FFEA3 EE9BBC
+8FFEA4 EE9BBD
+8FFEA5 EE9BBE
+8FFEA6 EE9BBF
+8FFEA7 EE9C80
+8FFEA8 EE9C81
+8FFEA9 EE9C82
+8FFEAA EE9C83
+8FFEAB EE9C84
+8FFEAC EE9C85
+8FFEAD EE9C86
+8FFEAE EE9C87
+8FFEAF EE9C88
+8FFEB0 EE9C89
+8FFEB1 EE9C8A
+8FFEB2 EE9C8B
+8FFEB3 EE9C8C
+8FFEB4 EE9C8D
+8FFEB5 EE9C8E
+8FFEB6 EE9C8F
+8FFEB7 EE9C90
+8FFEB8 EE9C91
+8FFEB9 EE9C92
+8FFEBA EE9C93
+8FFEBB EE9C94
+8FFEBC EE9C95
+8FFEBD EE9C96
+8FFEBE EE9C97
+8FFEBF EE9C98
+8FFEC0 EE9C99
+8FFEC1 EE9C9A
+8FFEC2 EE9C9B
+8FFEC3 EE9C9C
+8FFEC4 EE9C9D
+8FFEC5 EE9C9E
+8FFEC6 EE9C9F
+8FFEC7 EE9CA0
+8FFEC8 EE9CA1
+8FFEC9 EE9CA2
+8FFECA EE9CA3
+8FFECB EE9CA4
+8FFECC EE9CA5
+8FFECD EE9CA6
+8FFECE EE9CA7
+8FFECF EE9CA8
+8FFED0 EE9CA9
+8FFED1 EE9CAA
+8FFED2 EE9CAB
+8FFED3 EE9CAC
+8FFED4 EE9CAD
+8FFED5 EE9CAE
+8FFED6 EE9CAF
+8FFED7 EE9CB0
+8FFED8 EE9CB1
+8FFED9 EE9CB2
+8FFEDA EE9CB3
+8FFEDB EE9CB4
+8FFEDC EE9CB5
+8FFEDD EE9CB6
+8FFEDE EE9CB7
+8FFEDF EE9CB8
+8FFEE0 EE9CB9
+8FFEE1 EE9CBA
+8FFEE2 EE9CBB
+8FFEE3 EE9CBC
+8FFEE4 EE9CBD
+8FFEE5 EE9CBE
+8FFEE6 EE9CBF
+8FFEE7 EE9D80
+8FFEE8 EE9D81
+8FFEE9 EE9D82
+8FFEEA EE9D83
+8FFEEB EE9D84
+8FFEEC EE9D85
+8FFEED EE9D86
+8FFEEE EE9D87
+8FFEEF EE9D88
+8FFEF0 EE9D89
+8FFEF1 EE9D8A
+8FFEF2 EE9D8B
+8FFEF3 EE9D8C
+8FFEF4 EE9D8D
+8FFEF5 EE9D8E
+8FFEF6 EE9D8F
+8FFEF7 EE9D90
+8FFEF8 EE9D91
+8FFEF9 EE9D92
+8FFEFA EE9D93
+8FFEFB EE9D94
+8FFEFC EE9D95
+8FFEFD EE9D96
+8FFEFE EE9D97
+A1A1 E38080
+A1A2 E38081
+A1A3 E38082
+A1A4 EFBC8C
+A1A5 EFBC8E
+A1A6 E383BB
+A1A7 EFBC9A
+A1A8 EFBC9B
+A1A9 EFBC9F
+A1AA EFBC81
+A1AB E3829B
+A1AC E3829C
+A1AD C2B4
+A1AE EFBD80
+A1AF C2A8
+A1B0 EFBCBE
+A1B1 EFBFA3
+A1B2 EFBCBF
+A1B3 E383BD
+A1B4 E383BE
+A1B5 E3829D
+A1B6 E3829E
+A1B7 E38083
+A1B8 E4BB9D
+A1B9 E38085
+A1BA E38086
+A1BB E38087
+A1BC E383BC
+A1BD E28095
+A1BE E28090
+A1BF EFBC8F
+A1C0 5C
+A1C1 E3809C
+A1C2 E28096
+A1C3 EFBD9C
+A1C4 E280A6
+A1C5 E280A5
+A1C6 E28098
+A1C7 E28099
+A1C8 E2809C
+A1C9 E2809D
+A1CA EFBC88
+A1CB EFBC89
+A1CC E38094
+A1CD E38095
+A1CE EFBCBB
+A1CF EFBCBD
+A1D0 EFBD9B
+A1D1 EFBD9D
+A1D2 E38088
+A1D3 E38089
+A1D4 E3808A
+A1D5 E3808B
+A1D6 E3808C
+A1D7 E3808D
+A1D8 E3808E
+A1D9 E3808F
+A1DA E38090
+A1DB E38091
+A1DC EFBC8B
+A1DD E28892
+A1DE C2B1
+A1DF C397
+A1E0 C3B7
+A1E1 EFBC9D
+A1E2 E289A0
+A1E3 EFBC9C
+A1E4 EFBC9E
+A1E5 E289A6
+A1E6 E289A7
+A1E7 E2889E
+A1E8 E288B4
+A1E9 E29982
+A1EA E29980
+A1EB C2B0
+A1EC E280B2
+A1ED E280B3
+A1EE E28483
+A1EF EFBFA5
+A1F0 EFBC84
+A1F1 C2A2
+A1F2 C2A3
+A1F3 EFBC85
+A1F4 EFBC83
+A1F5 EFBC86
+A1F6 EFBC8A
+A1F7 EFBCA0
+A1F8 C2A7
+A1F9 E29886
+A1FA E29885
+A1FB E2978B
+A1FC E2978F
+A1FD E2978E
+A1FE E29787
+A2A1 E29786
+A2A2 E296A1
+A2A3 E296A0
+A2A4 E296B3
+A2A5 E296B2
+A2A6 E296BD
+A2A7 E296BC
+A2A8 E280BB
+A2A9 E38092
+A2AA E28692
+A2AB E28690
+A2AC E28691
+A2AD E28693
+A2AE E38093
+A2BA E28888
+A2BB E2888B
+A2BC E28A86
+A2BD E28A87
+A2BE E28A82
+A2BF E28A83
+A2C0 E288AA
+A2C1 E288A9
+A2CA E288A7
+A2CB E288A8
+A2CC C2AC
+A2CD E28792
+A2CE E28794
+A2CF E28880
+A2D0 E28883
+A2DC E288A0
+A2DD E28AA5
+A2DE E28C92
+A2DF E28882
+A2E0 E28887
+A2E1 E289A1
+A2E2 E28992
+A2E3 E289AA
+A2E4 E289AB
+A2E5 E2889A
+A2E6 E288BD
+A2E7 E2889D
+A2E8 E288B5
+A2E9 E288AB
+A2EA E288AC
+A2F2 E284AB
+A2F3 E280B0
+A2F4 E299AF
+A2F5 E299AD
+A2F6 E299AA
+A2F7 E280A0
+A2F8 E280A1
+A2F9 C2B6
+A2FE E297AF
+A3B0 EFBC90
+A3B1 EFBC91
+A3B2 EFBC92
+A3B3 EFBC93
+A3B4 EFBC94
+A3B5 EFBC95
+A3B6 EFBC96
+A3B7 EFBC97
+A3B8 EFBC98
+A3B9 EFBC99
+A3C1 EFBCA1
+A3C2 EFBCA2
+A3C3 EFBCA3
+A3C4 EFBCA4
+A3C5 EFBCA5
+A3C6 EFBCA6
+A3C7 EFBCA7
+A3C8 EFBCA8
+A3C9 EFBCA9
+A3CA EFBCAA
+A3CB EFBCAB
+A3CC EFBCAC
+A3CD EFBCAD
+A3CE EFBCAE
+A3CF EFBCAF
+A3D0 EFBCB0
+A3D1 EFBCB1
+A3D2 EFBCB2
+A3D3 EFBCB3
+A3D4 EFBCB4
+A3D5 EFBCB5
+A3D6 EFBCB6
+A3D7 EFBCB7
+A3D8 EFBCB8
+A3D9 EFBCB9
+A3DA EFBCBA
+A3E1 EFBD81
+A3E2 EFBD82
+A3E3 EFBD83
+A3E4 EFBD84
+A3E5 EFBD85
+A3E6 EFBD86
+A3E7 EFBD87
+A3E8 EFBD88
+A3E9 EFBD89
+A3EA EFBD8A
+A3EB EFBD8B
+A3EC EFBD8C
+A3ED EFBD8D
+A3EE EFBD8E
+A3EF EFBD8F
+A3F0 EFBD90
+A3F1 EFBD91
+A3F2 EFBD92
+A3F3 EFBD93
+A3F4 EFBD94
+A3F5 EFBD95
+A3F6 EFBD96
+A3F7 EFBD97
+A3F8 EFBD98
+A3F9 EFBD99
+A3FA EFBD9A
+A4A1 E38181
+A4A2 E38182
+A4A3 E38183
+A4A4 E38184
+A4A5 E38185
+A4A6 E38186
+A4A7 E38187
+A4A8 E38188
+A4A9 E38189
+A4AA E3818A
+A4AB E3818B
+A4AC E3818C
+A4AD E3818D
+A4AE E3818E
+A4AF E3818F
+A4B0 E38190
+A4B1 E38191
+A4B2 E38192
+A4B3 E38193
+A4B4 E38194
+A4B5 E38195
+A4B6 E38196
+A4B7 E38197
+A4B8 E38198
+A4B9 E38199
+A4BA E3819A
+A4BB E3819B
+A4BC E3819C
+A4BD E3819D
+A4BE E3819E
+A4BF E3819F
+A4C0 E381A0
+A4C1 E381A1
+A4C2 E381A2
+A4C3 E381A3
+A4C4 E381A4
+A4C5 E381A5
+A4C6 E381A6
+A4C7 E381A7
+A4C8 E381A8
+A4C9 E381A9
+A4CA E381AA
+A4CB E381AB
+A4CC E381AC
+A4CD E381AD
+A4CE E381AE
+A4CF E381AF
+A4D0 E381B0
+A4D1 E381B1
+A4D2 E381B2
+A4D3 E381B3
+A4D4 E381B4
+A4D5 E381B5
+A4D6 E381B6
+A4D7 E381B7
+A4D8 E381B8
+A4D9 E381B9
+A4DA E381BA
+A4DB E381BB
+A4DC E381BC
+A4DD E381BD
+A4DE E381BE
+A4DF E381BF
+A4E0 E38280
+A4E1 E38281
+A4E2 E38282
+A4E3 E38283
+A4E4 E38284
+A4E5 E38285
+A4E6 E38286
+A4E7 E38287
+A4E8 E38288
+A4E9 E38289
+A4EA E3828A
+A4EB E3828B
+A4EC E3828C
+A4ED E3828D
+A4EE E3828E
+A4EF E3828F
+A4F0 E38290
+A4F1 E38291
+A4F2 E38292
+A4F3 E38293
+A5A1 E382A1
+A5A2 E382A2
+A5A3 E382A3
+A5A4 E382A4
+A5A5 E382A5
+A5A6 E382A6
+A5A7 E382A7
+A5A8 E382A8
+A5A9 E382A9
+A5AA E382AA
+A5AB E382AB
+A5AC E382AC
+A5AD E382AD
+A5AE E382AE
+A5AF E382AF
+A5B0 E382B0
+A5B1 E382B1
+A5B2 E382B2
+A5B3 E382B3
+A5B4 E382B4
+A5B5 E382B5
+A5B6 E382B6
+A5B7 E382B7
+A5B8 E382B8
+A5B9 E382B9
+A5BA E382BA
+A5BB E382BB
+A5BC E382BC
+A5BD E382BD
+A5BE E382BE
+A5BF E382BF
+A5C0 E38380
+A5C1 E38381
+A5C2 E38382
+A5C3 E38383
+A5C4 E38384
+A5C5 E38385
+A5C6 E38386
+A5C7 E38387
+A5C8 E38388
+A5C9 E38389
+A5CA E3838A
+A5CB E3838B
+A5CC E3838C
+A5CD E3838D
+A5CE E3838E
+A5CF E3838F
+A5D0 E38390
+A5D1 E38391
+A5D2 E38392
+A5D3 E38393
+A5D4 E38394
+A5D5 E38395
+A5D6 E38396
+A5D7 E38397
+A5D8 E38398
+A5D9 E38399
+A5DA E3839A
+A5DB E3839B
+A5DC E3839C
+A5DD E3839D
+A5DE E3839E
+A5DF E3839F
+A5E0 E383A0
+A5E1 E383A1
+A5E2 E383A2
+A5E3 E383A3
+A5E4 E383A4
+A5E5 E383A5
+A5E6 E383A6
+A5E7 E383A7
+A5E8 E383A8
+A5E9 E383A9
+A5EA E383AA
+A5EB E383AB
+A5EC E383AC
+A5ED E383AD
+A5EE E383AE
+A5EF E383AF
+A5F0 E383B0
+A5F1 E383B1
+A5F2 E383B2
+A5F3 E383B3
+A5F4 E383B4
+A5F5 E383B5
+A5F6 E383B6
+A6A1 CE91
+A6A2 CE92
+A6A3 CE93
+A6A4 CE94
+A6A5 CE95
+A6A6 CE96
+A6A7 CE97
+A6A8 CE98
+A6A9 CE99
+A6AA CE9A
+A6AB CE9B
+A6AC CE9C
+A6AD CE9D
+A6AE CE9E
+A6AF CE9F
+A6B0 CEA0
+A6B1 CEA1
+A6B2 CEA3
+A6B3 CEA4
+A6B4 CEA5
+A6B5 CEA6
+A6B6 CEA7
+A6B7 CEA8
+A6B8 CEA9
+A6C1 CEB1
+A6C2 CEB2
+A6C3 CEB3
+A6C4 CEB4
+A6C5 CEB5
+A6C6 CEB6
+A6C7 CEB7
+A6C8 CEB8
+A6C9 CEB9
+A6CA CEBA
+A6CB CEBB
+A6CC CEBC
+A6CD CEBD
+A6CE CEBE
+A6CF CEBF
+A6D0 CF80
+A6D1 CF81
+A6D2 CF83
+A6D3 CF84
+A6D4 CF85
+A6D5 CF86
+A6D6 CF87
+A6D7 CF88
+A6D8 CF89
+A7A1 D090
+A7A2 D091
+A7A3 D092
+A7A4 D093
+A7A5 D094
+A7A6 D095
+A7A7 D081
+A7A8 D096
+A7A9 D097
+A7AA D098
+A7AB D099
+A7AC D09A
+A7AD D09B
+A7AE D09C
+A7AF D09D
+A7B0 D09E
+A7B1 D09F
+A7B2 D0A0
+A7B3 D0A1
+A7B4 D0A2
+A7B5 D0A3
+A7B6 D0A4
+A7B7 D0A5
+A7B8 D0A6
+A7B9 D0A7
+A7BA D0A8
+A7BB D0A9
+A7BC D0AA
+A7BD D0AB
+A7BE D0AC
+A7BF D0AD
+A7C0 D0AE
+A7C1 D0AF
+A7D1 D0B0
+A7D2 D0B1
+A7D3 D0B2
+A7D4 D0B3
+A7D5 D0B4
+A7D6 D0B5
+A7D7 D191
+A7D8 D0B6
+A7D9 D0B7
+A7DA D0B8
+A7DB D0B9
+A7DC D0BA
+A7DD D0BB
+A7DE D0BC
+A7DF D0BD
+A7E0 D0BE
+A7E1 D0BF
+A7E2 D180
+A7E3 D181
+A7E4 D182
+A7E5 D183
+A7E6 D184
+A7E7 D185
+A7E8 D186
+A7E9 D187
+A7EA D188
+A7EB D189
+A7EC D18A
+A7ED D18B
+A7EE D18C
+A7EF D18D
+A7F0 D18E
+A7F1 D18F
+A8A1 E29480
+A8A2 E29482
+A8A3 E2948C
+A8A4 E29490
+A8A5 E29498
+A8A6 E29494
+A8A7 E2949C
+A8A8 E294AC
+A8A9 E294A4
+A8AA E294B4
+A8AB E294BC
+A8AC E29481
+A8AD E29483
+A8AE E2948F
+A8AF E29493
+A8B0 E2949B
+A8B1 E29497
+A8B2 E294A3
+A8B3 E294B3
+A8B4 E294AB
+A8B5 E294BB
+A8B6 E2958B
+A8B7 E294A0
+A8B8 E294AF
+A8B9 E294A8
+A8BA E294B7
+A8BB E294BF
+A8BC E2949D
+A8BD E294B0
+A8BE E294A5
+A8BF E294B8
+A8C0 E29582
+B0A1 E4BA9C
+B0A2 E59496
+B0A3 E5A883
+B0A4 E998BF
+B0A5 E59380
+B0A6 E6849B
+B0A7 E68CA8
+B0A8 E5A7B6
+B0A9 E980A2
+B0AA E891B5
+B0AB E88C9C
+B0AC E7A990
+B0AD E682AA
+B0AE E68FA1
+B0AF E6B8A5
+B0B0 E697AD
+B0B1 E891A6
+B0B2 E88AA6
+B0B3 E9AFB5
+B0B4 E6A293
+B0B5 E59CA7
+B0B6 E696A1
+B0B7 E689B1
+B0B8 E5AE9B
+B0B9 E5A790
+B0BA E899BB
+B0BB E9A3B4
+B0BC E7B5A2
+B0BD E7B6BE
+B0BE E9AE8E
+B0BF E68896
+B0C0 E7B29F
+B0C1 E8A2B7
+B0C2 E5AE89
+B0C3 E5BAB5
+B0C4 E68C89
+B0C5 E69A97
+B0C6 E6A188
+B0C7 E99787
+B0C8 E99E8D
+B0C9 E69D8F
+B0CA E4BBA5
+B0CB E4BC8A
+B0CC E4BD8D
+B0CD E4BE9D
+B0CE E58189
+B0CF E59BB2
+B0D0 E5A4B7
+B0D1 E5A794
+B0D2 E5A881
+B0D3 E5B089
+B0D4 E6839F
+B0D5 E6848F
+B0D6 E685B0
+B0D7 E69893
+B0D8 E6A485
+B0D9 E782BA
+B0DA E7958F
+B0DB E795B0
+B0DC E7A7BB
+B0DD E7B6AD
+B0DE E7B7AF
+B0DF E88383
+B0E0 E8908E
+B0E1 E8A1A3
+B0E2 E8AC82
+B0E3 E98195
+B0E4 E981BA
+B0E5 E58CBB
+B0E6 E4BA95
+B0E7 E4BAA5
+B0E8 E59F9F
+B0E9 E882B2
+B0EA E98381
+B0EB E7A3AF
+B0EC E4B880
+B0ED E5A3B1
+B0EE E6BAA2
+B0EF E980B8
+B0F0 E7A8B2
+B0F1 E88CA8
+B0F2 E88A8B
+B0F3 E9B0AF
+B0F4 E58581
+B0F5 E58DB0
+B0F6 E592BD
+B0F7 E593A1
+B0F8 E59BA0
+B0F9 E5A7BB
+B0FA E5BC95
+B0FB E9A3B2
+B0FC E6B7AB
+B0FD E883A4
+B0FE E894AD
+B1A1 E999A2
+B1A2 E999B0
+B1A3 E99AA0
+B1A4 E99FBB
+B1A5 E5908B
+B1A6 E58FB3
+B1A7 E5AE87
+B1A8 E7838F
+B1A9 E7BEBD
+B1AA E8BF82
+B1AB E99BA8
+B1AC E58DAF
+B1AD E9B59C
+B1AE E7AABA
+B1AF E4B891
+B1B0 E7A293
+B1B1 E887BC
+B1B2 E6B8A6
+B1B3 E59898
+B1B4 E59484
+B1B5 E6AC9D
+B1B6 E8949A
+B1B7 E9B0BB
+B1B8 E5A7A5
+B1B9 E58EA9
+B1BA E6B5A6
+B1BB E7939C
+B1BC E9968F
+B1BD E59982
+B1BE E4BA91
+B1BF E9818B
+B1C0 E99BB2
+B1C1 E88D8F
+B1C2 E9A48C
+B1C3 E58FA1
+B1C4 E596B6
+B1C5 E5ACB0
+B1C6 E5BDB1
+B1C7 E698A0
+B1C8 E69BB3
+B1C9 E6A084
+B1CA E6B0B8
+B1CB E6B3B3
+B1CC E6B4A9
+B1CD E7919B
+B1CE E79B88
+B1CF E7A98E
+B1D0 E9A0B4
+B1D1 E88BB1
+B1D2 E8A19B
+B1D3 E8A9A0
+B1D4 E98BAD
+B1D5 E6B6B2
+B1D6 E796AB
+B1D7 E79B8A
+B1D8 E9A785
+B1D9 E682A6
+B1DA E8AC81
+B1DB E8B68A
+B1DC E996B2
+B1DD E6A68E
+B1DE E58EAD
+B1DF E58686
+B1E0 E59C92
+B1E1 E5A0B0
+B1E2 E5A584
+B1E3 E5AEB4
+B1E4 E5BBB6
+B1E5 E680A8
+B1E6 E68EA9
+B1E7 E68FB4
+B1E8 E6B2BF
+B1E9 E6BC94
+B1EA E7828E
+B1EB E78494
+B1EC E78599
+B1ED E78795
+B1EE E78CBF
+B1EF E7B881
+B1F0 E889B6
+B1F1 E88B91
+B1F2 E89697
+B1F3 E981A0
+B1F4 E9899B
+B1F5 E9B49B
+B1F6 E5A1A9
+B1F7 E696BC
+B1F8 E6B19A
+B1F9 E794A5
+B1FA E587B9
+B1FB E5A4AE
+B1FC E5A5A5
+B1FD E5BE80
+B1FE E5BF9C
+B2A1 E68ABC
+B2A2 E697BA
+B2A3 E6A8AA
+B2A4 E6ACA7
+B2A5 E6AEB4
+B2A6 E78E8B
+B2A7 E7BF81
+B2A8 E8A596
+B2A9 E9B4AC
+B2AA E9B48E
+B2AB E9BB84
+B2AC E5B2A1
+B2AD E6B296
+B2AE E88DBB
+B2AF E58484
+B2B0 E5B18B
+B2B1 E686B6
+B2B2 E88786
+B2B3 E6A1B6
+B2B4 E789A1
+B2B5 E4B999
+B2B6 E4BFBA
+B2B7 E58DB8
+B2B8 E681A9
+B2B9 E6B8A9
+B2BA E7A98F
+B2BB E99FB3
+B2BC E4B88B
+B2BD E58C96
+B2BE E4BBAE
+B2BF E4BD95
+B2C0 E4BCBD
+B2C1 E4BEA1
+B2C2 E4BDB3
+B2C3 E58AA0
+B2C4 E58FAF
+B2C5 E59889
+B2C6 E5A48F
+B2C7 E5AB81
+B2C8 E5AEB6
+B2C9 E5AFA1
+B2CA E7A791
+B2CB E69A87
+B2CC E69E9C
+B2CD E69EB6
+B2CE E6AD8C
+B2CF E6B2B3
+B2D0 E781AB
+B2D1 E78F82
+B2D2 E7A68D
+B2D3 E7A6BE
+B2D4 E7A8BC
+B2D5 E7AE87
+B2D6 E88AB1
+B2D7 E88B9B
+B2D8 E88C84
+B2D9 E88DB7
+B2DA E88FAF
+B2DB E88F93
+B2DC E89DA6
+B2DD E8AAB2
+B2DE E598A9
+B2DF E8B2A8
+B2E0 E8BFA6
+B2E1 E9818E
+B2E2 E99C9E
+B2E3 E89A8A
+B2E4 E4BF84
+B2E5 E5B3A8
+B2E6 E68891
+B2E7 E78999
+B2E8 E794BB
+B2E9 E887A5
+B2EA E88ABD
+B2EB E89BBE
+B2EC E8B380
+B2ED E99B85
+B2EE E9A493
+B2EF E9A795
+B2F0 E4BB8B
+B2F1 E4BC9A
+B2F2 E8A7A3
+B2F3 E59B9E
+B2F4 E5A18A
+B2F5 E5A38A
+B2F6 E5BBBB
+B2F7 E5BFAB
+B2F8 E680AA
+B2F9 E68294
+B2FA E681A2
+B2FB E68790
+B2FC E68892
+B2FD E68B90
+B2FE E694B9
+B3A1 E9AD81
+B3A2 E699A6
+B3A3 E6A2B0
+B3A4 E6B5B7
+B3A5 E781B0
+B3A6 E7958C
+B3A7 E79A86
+B3A8 E7B5B5
+B3A9 E88AA5
+B3AA E89FB9
+B3AB E9968B
+B3AC E99A8E
+B3AD E8B29D
+B3AE E587B1
+B3AF E58ABE
+B3B0 E5A496
+B3B1 E592B3
+B3B2 E5AEB3
+B3B3 E5B496
+B3B4 E685A8
+B3B5 E6A682
+B3B6 E6B6AF
+B3B7 E7A28D
+B3B8 E8938B
+B3B9 E8A197
+B3BA E8A9B2
+B3BB E98EA7
+B3BC E9AAB8
+B3BD E6B5AC
+B3BE E9A6A8
+B3BF E89B99
+B3C0 E59EA3
+B3C1 E69FBF
+B3C2 E89B8E
+B3C3 E9888E
+B3C4 E58A83
+B3C5 E59A87
+B3C6 E59084
+B3C7 E5BB93
+B3C8 E68BA1
+B3C9 E692B9
+B3CA E6A0BC
+B3CB E6A0B8
+B3CC E6AEBB
+B3CD E78DB2
+B3CE E7A2BA
+B3CF E7A9AB
+B3D0 E8A69A
+B3D1 E8A792
+B3D2 E8B5AB
+B3D3 E8BC83
+B3D4 E983AD
+B3D5 E996A3
+B3D6 E99A94
+B3D7 E99DA9
+B3D8 E5ADA6
+B3D9 E5B2B3
+B3DA E6A5BD
+B3DB E9A18D
+B3DC E9A18E
+B3DD E68E9B
+B3DE E7ACA0
+B3DF E6A8AB
+B3E0 E6A9BF
+B3E1 E6A2B6
+B3E2 E9B08D
+B3E3 E6BD9F
+B3E4 E589B2
+B3E5 E5969D
+B3E6 E681B0
+B3E7 E68BAC
+B3E8 E6B4BB
+B3E9 E6B887
+B3EA E6BB91
+B3EB E8919B
+B3EC E8A490
+B3ED E8BD84
+B3EE E4B894
+B3EF E9B0B9
+B3F0 E58FB6
+B3F1 E6A49B
+B3F2 E6A8BA
+B3F3 E99E84
+B3F4 E6A0AA
+B3F5 E5859C
+B3F6 E7AB83
+B3F7 E892B2
+B3F8 E9879C
+B3F9 E98E8C
+B3FA E5999B
+B3FB E9B4A8
+B3FC E6A0A2
+B3FD E88C85
+B3FE E890B1
+B4A1 E7B2A5
+B4A2 E58888
+B4A3 E88B85
+B4A4 E793A6
+B4A5 E4B9BE
+B4A6 E4BE83
+B4A7 E586A0
+B4A8 E5AF92
+B4A9 E5888A
+B4AA E58B98
+B4AB E58BA7
+B4AC E5B7BB
+B4AD E5969A
+B4AE E5A0AA
+B4AF E5A7A6
+B4B0 E5AE8C
+B4B1 E5AE98
+B4B2 E5AF9B
+B4B3 E5B9B2
+B4B4 E5B9B9
+B4B5 E682A3
+B4B6 E6849F
+B4B7 E685A3
+B4B8 E686BE
+B4B9 E68F9B
+B4BA E695A2
+B4BB E69F91
+B4BC E6A193
+B4BD E6A3BA
+B4BE E6ACBE
+B4BF E6AD93
+B4C0 E6B197
+B4C1 E6BCA2
+B4C2 E6BE97
+B4C3 E6BD85
+B4C4 E792B0
+B4C5 E79498
+B4C6 E79BA3
+B4C7 E79C8B
+B4C8 E7ABBF
+B4C9 E7AEA1
+B4CA E7B0A1
+B4CB E7B7A9
+B4CC E7BCB6
+B4CD E7BFB0
+B4CE E8829D
+B4CF E889A6
+B4D0 E88E9E
+B4D1 E8A6B3
+B4D2 E8AB8C
+B4D3 E8B2AB
+B4D4 E98284
+B4D5 E99191
+B4D6 E99693
+B4D7 E99691
+B4D8 E996A2
+B4D9 E999A5
+B4DA E99F93
+B4DB E9A4A8
+B4DC E88898
+B4DD E4B8B8
+B4DE E590AB
+B4DF E5B2B8
+B4E0 E5B78C
+B4E1 E78EA9
+B4E2 E7998C
+B4E3 E79CBC
+B4E4 E5B2A9
+B4E5 E7BFAB
+B4E6 E8B48B
+B4E7 E99B81
+B4E8 E9A091
+B4E9 E9A194
+B4EA E9A198
+B4EB E4BC81
+B4EC E4BC8E
+B4ED E58DB1
+B4EE E5969C
+B4EF E599A8
+B4F0 E59FBA
+B4F1 E5A587
+B4F2 E5AC89
+B4F3 E5AF84
+B4F4 E5B290
+B4F5 E5B88C
+B4F6 E5B9BE
+B4F7 E5BF8C
+B4F8 E68FAE
+B4F9 E69CBA
+B4FA E69797
+B4FB E697A2
+B4FC E69C9F
+B4FD E6A38B
+B4FE E6A384
+B5A1 E6A99F
+B5A2 E5B8B0
+B5A3 E6AF85
+B5A4 E6B097
+B5A5 E6B1BD
+B5A6 E795BF
+B5A7 E7A588
+B5A8 E5ADA3
+B5A9 E7A880
+B5AA E7B480
+B5AB E5BEBD
+B5AC E8A68F
+B5AD E8A898
+B5AE E8B2B4
+B5AF E8B5B7
+B5B0 E8BB8C
+B5B1 E8BC9D
+B5B2 E9A3A2
+B5B3 E9A88E
+B5B4 E9ACBC
+B5B5 E4BA80
+B5B6 E581BD
+B5B7 E58480
+B5B8 E5A693
+B5B9 E5AE9C
+B5BA E688AF
+B5BB E68A80
+B5BC E693AC
+B5BD E6ACBA
+B5BE E78AA0
+B5BF E79691
+B5C0 E7A587
+B5C1 E7BEA9
+B5C2 E89FBB
+B5C3 E8AABC
+B5C4 E8ADB0
+B5C5 E68EAC
+B5C6 E88F8A
+B5C7 E99EA0
+B5C8 E59089
+B5C9 E59083
+B5CA E596AB
+B5CB E6A194
+B5CC E6A998
+B5CD E8A9B0
+B5CE E7A0A7
+B5CF E69DB5
+B5D0 E9BB8D
+B5D1 E58DB4
+B5D2 E5AEA2
+B5D3 E8849A
+B5D4 E89990
+B5D5 E98086
+B5D6 E4B898
+B5D7 E4B985
+B5D8 E4BB87
+B5D9 E4BC91
+B5DA E58F8A
+B5DB E590B8
+B5DC E5AEAE
+B5DD E5BC93
+B5DE E680A5
+B5DF E69591
+B5E0 E69CBD
+B5E1 E6B182
+B5E2 E6B1B2
+B5E3 E6B3A3
+B5E4 E781B8
+B5E5 E79083
+B5E6 E7A9B6
+B5E7 E7AAAE
+B5E8 E7AC88
+B5E9 E7B49A
+B5EA E7B3BE
+B5EB E7B5A6
+B5EC E697A7
+B5ED E7899B
+B5EE E58EBB
+B5EF E5B185
+B5F0 E5B7A8
+B5F1 E68B92
+B5F2 E68BA0
+B5F3 E68C99
+B5F4 E6B8A0
+B5F5 E8999A
+B5F6 E8A8B1
+B5F7 E8B79D
+B5F8 E98BB8
+B5F9 E6BC81
+B5FA E7A6A6
+B5FB E9AD9A
+B5FC E4BAA8
+B5FD E4BAAB
+B5FE E4BAAC
+B6A1 E4BE9B
+B6A2 E4BEA0
+B6A3 E58391
+B6A4 E58587
+B6A5 E7ABB6
+B6A6 E585B1
+B6A7 E587B6
+B6A8 E58D94
+B6A9 E58CA1
+B6AA E58DBF
+B6AB E58FAB
+B6AC E596AC
+B6AD E5A283
+B6AE E5B3A1
+B6AF E5BCB7
+B6B0 E5BD8A
+B6B1 E680AF
+B6B2 E68190
+B6B3 E681AD
+B6B4 E68C9F
+B6B5 E69599
+B6B6 E6A98B
+B6B7 E6B381
+B6B8 E78B82
+B6B9 E78BAD
+B6BA E79FAF
+B6BB E883B8
+B6BC E88485
+B6BD E88888
+B6BE E8958E
+B6BF E983B7
+B6C0 E98FA1
+B6C1 E99FBF
+B6C2 E9A597
+B6C3 E9A99A
+B6C4 E4BBB0
+B6C5 E5879D
+B6C6 E5B0AD
+B6C7 E69A81
+B6C8 E6A5AD
+B6C9 E5B180
+B6CA E69BB2
+B6CB E6A5B5
+B6CC E78E89
+B6CD E6A190
+B6CE E7B281
+B6CF E58385
+B6D0 E58BA4
+B6D1 E59D87
+B6D2 E5B7BE
+B6D3 E98CA6
+B6D4 E696A4
+B6D5 E6ACA3
+B6D6 E6ACBD
+B6D7 E790B4
+B6D8 E7A681
+B6D9 E7A6BD
+B6DA E7AD8B
+B6DB E7B78A
+B6DC E88AB9
+B6DD E88F8C
+B6DE E8A1BF
+B6DF E8A59F
+B6E0 E8ACB9
+B6E1 E8BF91
+B6E2 E98791
+B6E3 E5909F
+B6E4 E98A80
+B6E5 E4B99D
+B6E6 E580B6
+B6E7 E58FA5
+B6E8 E58CBA
+B6E9 E78B97
+B6EA E78E96
+B6EB E79FA9
+B6EC E88BA6
+B6ED E8BAAF
+B6EE E9A786
+B6EF E9A788
+B6F0 E9A792
+B6F1 E585B7
+B6F2 E6849A
+B6F3 E8999E
+B6F4 E596B0
+B6F5 E7A9BA
+B6F6 E581B6
+B6F7 E5AF93
+B6F8 E98187
+B6F9 E99A85
+B6FA E4B8B2
+B6FB E6AB9B
+B6FC E987A7
+B6FD E5B191
+B6FE E5B188
+B7A1 E68E98
+B7A2 E7AA9F
+B7A3 E6B293
+B7A4 E99DB4
+B7A5 E8BDA1
+B7A6 E7AAAA
+B7A7 E7868A
+B7A8 E99A88
+B7A9 E7B282
+B7AA E6A097
+B7AB E7B9B0
+B7AC E6A191
+B7AD E98DAC
+B7AE E58BB2
+B7AF E5909B
+B7B0 E896AB
+B7B1 E8A893
+B7B2 E7BEA4
+B7B3 E8BB8D
+B7B4 E983A1
+B7B5 E58DA6
+B7B6 E8A288
+B7B7 E7A581
+B7B8 E4BF82
+B7B9 E582BE
+B7BA E58891
+B7BB E58584
+B7BC E59593
+B7BD E59CAD
+B7BE E78FAA
+B7BF E59E8B
+B7C0 E5A591
+B7C1 E5BDA2
+B7C2 E5BE84
+B7C3 E681B5
+B7C4 E685B6
+B7C5 E685A7
+B7C6 E686A9
+B7C7 E68EB2
+B7C8 E690BA
+B7C9 E695AC
+B7CA E699AF
+B7CB E6A182
+B7CC E6B893
+B7CD E795A6
+B7CE E7A8BD
+B7CF E7B3BB
+B7D0 E7B58C
+B7D1 E7B699
+B7D2 E7B98B
+B7D3 E7BDAB
+B7D4 E88C8E
+B7D5 E88D8A
+B7D6 E89B8D
+B7D7 E8A888
+B7D8 E8A9A3
+B7D9 E8ADA6
+B7DA E8BBBD
+B7DB E9A09A
+B7DC E9B68F
+B7DD E88AB8
+B7DE E8BF8E
+B7DF E9AFA8
+B7E0 E58A87
+B7E1 E6889F
+B7E2 E69283
+B7E3 E6BF80
+B7E4 E99A99
+B7E5 E6A181
+B7E6 E58291
+B7E7 E6ACA0
+B7E8 E6B1BA
+B7E9 E6BD94
+B7EA E7A9B4
+B7EB E7B590
+B7EC E8A180
+B7ED E8A8A3
+B7EE E69C88
+B7EF E4BBB6
+B7F0 E580B9
+B7F1 E580A6
+B7F2 E581A5
+B7F3 E585BC
+B7F4 E588B8
+B7F5 E589A3
+B7F6 E596A7
+B7F7 E59C8F
+B7F8 E5A085
+B7F9 E5AB8C
+B7FA E5BBBA
+B7FB E686B2
+B7FC E687B8
+B7FD E68BB3
+B7FE E68DB2
+B8A1 E6A49C
+B8A2 E6A8A9
+B8A3 E789BD
+B8A4 E78AAC
+B8A5 E78CAE
+B8A6 E7A094
+B8A7 E7A1AF
+B8A8 E7B5B9
+B8A9 E79C8C
+B8AA E882A9
+B8AB E8A68B
+B8AC E8AC99
+B8AD E8B3A2
+B8AE E8BB92
+B8AF E981A3
+B8B0 E98DB5
+B8B1 E999BA
+B8B2 E9A195
+B8B3 E9A893
+B8B4 E9B9B8
+B8B5 E58583
+B8B6 E58E9F
+B8B7 E58EB3
+B8B8 E5B9BB
+B8B9 E5BCA6
+B8BA E6B89B
+B8BB E6BA90
+B8BC E78E84
+B8BD E78FBE
+B8BE E7B583
+B8BF E888B7
+B8C0 E8A880
+B8C1 E8ABBA
+B8C2 E99990
+B8C3 E4B98E
+B8C4 E5808B
+B8C5 E58FA4
+B8C6 E591BC
+B8C7 E59BBA
+B8C8 E5A791
+B8C9 E5ADA4
+B8CA E5B7B1
+B8CB E5BAAB
+B8CC E5BCA7
+B8CD E688B8
+B8CE E69585
+B8CF E69EAF
+B8D0 E6B996
+B8D1 E78B90
+B8D2 E7B38A
+B8D3 E8A2B4
+B8D4 E882A1
+B8D5 E883A1
+B8D6 E88FB0
+B8D7 E8998E
+B8D8 E8AA87
+B8D9 E8B7A8
+B8DA E988B7
+B8DB E99B87
+B8DC E9A1A7
+B8DD E9BC93
+B8DE E4BA94
+B8DF E4BA92
+B8E0 E4BC8D
+B8E1 E58D88
+B8E2 E59189
+B8E3 E590BE
+B8E4 E5A8AF
+B8E5 E5BE8C
+B8E6 E5BEA1
+B8E7 E6829F
+B8E8 E6A2A7
+B8E9 E6AA8E
+B8EA E7919A
+B8EB E7A281
+B8EC E8AA9E
+B8ED E8AAA4
+B8EE E8ADB7
+B8EF E98690
+B8F0 E4B99E
+B8F1 E9AF89
+B8F2 E4BAA4
+B8F3 E4BDBC
+B8F4 E4BEAF
+B8F5 E58099
+B8F6 E58096
+B8F7 E58589
+B8F8 E585AC
+B8F9 E58A9F
+B8FA E58AB9
+B8FB E58BBE
+B8FC E58E9A
+B8FD E58FA3
+B8FE E59091
+B9A1 E5908E
+B9A2 E59689
+B9A3 E59D91
+B9A4 E59EA2
+B9A5 E5A5BD
+B9A6 E5AD94
+B9A7 E5AD9D
+B9A8 E5AE8F
+B9A9 E5B7A5
+B9AA E5B7A7
+B9AB E5B7B7
+B9AC E5B9B8
+B9AD E5BA83
+B9AE E5BA9A
+B9AF E5BAB7
+B9B0 E5BC98
+B9B1 E68192
+B9B2 E6858C
+B9B3 E68A97
+B9B4 E68B98
+B9B5 E68EA7
+B9B6 E694BB
+B9B7 E69882
+B9B8 E69983
+B9B9 E69BB4
+B9BA E69DAD
+B9BB E6A0A1
+B9BC E6A297
+B9BD E6A78B
+B9BE E6B19F
+B9BF E6B4AA
+B9C0 E6B5A9
+B9C1 E6B8AF
+B9C2 E6BA9D
+B9C3 E794B2
+B9C4 E79A87
+B9C5 E7A1AC
+B9C6 E7A8BF
+B9C7 E7B3A0
+B9C8 E7B485
+B9C9 E7B498
+B9CA E7B59E
+B9CB E7B6B1
+B9CC E88095
+B9CD E88083
+B9CE E882AF
+B9CF E882B1
+B9D0 E88594
+B9D1 E8868F
+B9D2 E888AA
+B9D3 E88D92
+B9D4 E8A18C
+B9D5 E8A1A1
+B9D6 E8AC9B
+B9D7 E8B2A2
+B9D8 E8B3BC
+B9D9 E9838A
+B9DA E985B5
+B9DB E989B1
+B9DC E7A0BF
+B9DD E98BBC
+B9DE E996A4
+B9DF E9998D
+B9E0 E9A085
+B9E1 E9A699
+B9E2 E9AB98
+B9E3 E9B4BB
+B9E4 E5899B
+B9E5 E58AAB
+B9E6 E58FB7
+B9E7 E59088
+B9E8 E5A395
+B9E9 E68BB7
+B9EA E6BFA0
+B9EB E8B1AA
+B9EC E8BD9F
+B9ED E9BAB9
+B9EE E5858B
+B9EF E588BB
+B9F0 E5918A
+B9F1 E59BBD
+B9F2 E7A980
+B9F3 E985B7
+B9F4 E9B5A0
+B9F5 E9BB92
+B9F6 E78D84
+B9F7 E6BC89
+B9F8 E885B0
+B9F9 E79491
+B9FA E5BFBD
+B9FB E6839A
+B9FC E9AAA8
+B9FD E78B9B
+B9FE E8BEBC
+BAA1 E6ADA4
+BAA2 E9A083
+BAA3 E4BB8A
+BAA4 E59BB0
+BAA5 E59DA4
+BAA6 E5A2BE
+BAA7 E5A99A
+BAA8 E681A8
+BAA9 E68787
+BAAA E6988F
+BAAB E69886
+BAAC E6A0B9
+BAAD E6A2B1
+BAAE E6B7B7
+BAAF E79795
+BAB0 E7B4BA
+BAB1 E889AE
+BAB2 E9AD82
+BAB3 E4BA9B
+BAB4 E4BD90
+BAB5 E58F89
+BAB6 E59486
+BAB7 E5B5AF
+BAB8 E5B7A6
+BAB9 E5B7AE
+BABA E69FBB
+BABB E6B299
+BABC E791B3
+BABD E7A082
+BABE E8A990
+BABF E98E96
+BAC0 E8A39F
+BAC1 E59D90
+BAC2 E5BAA7
+BAC3 E68CAB
+BAC4 E582B5
+BAC5 E582AC
+BAC6 E5868D
+BAC7 E69C80
+BAC8 E59389
+BAC9 E5A19E
+BACA E5A6BB
+BACB E5AEB0
+BACC E5BDA9
+BACD E6898D
+BACE E68EA1
+BACF E6A0BD
+BAD0 E6ADB3
+BAD1 E6B888
+BAD2 E781BD
+BAD3 E98787
+BAD4 E78A80
+BAD5 E7A095
+BAD6 E7A0A6
+BAD7 E7A5AD
+BAD8 E6968E
+BAD9 E7B4B0
+BADA E88F9C
+BADB E8A381
+BADC E8BC89
+BADD E99A9B
+BADE E589A4
+BADF E59CA8
+BAE0 E69D90
+BAE1 E7BDAA
+BAE2 E8B2A1
+BAE3 E586B4
+BAE4 E59D82
+BAE5 E998AA
+BAE6 E5A0BA
+BAE7 E6A68A
+BAE8 E882B4
+BAE9 E592B2
+BAEA E5B48E
+BAEB E59FBC
+BAEC E7A295
+BAED E9B7BA
+BAEE E4BD9C
+BAEF E5898A
+BAF0 E5928B
+BAF1 E690BE
+BAF2 E698A8
+BAF3 E69C94
+BAF4 E69FB5
+BAF5 E7AA84
+BAF6 E7AD96
+BAF7 E7B4A2
+BAF8 E98CAF
+BAF9 E6A19C
+BAFA E9AEAD
+BAFB E7ACB9
+BAFC E58C99
+BAFD E5868A
+BAFE E588B7
+BBA1 E5AF9F
+BBA2 E68BB6
+BBA3 E692AE
+BBA4 E693A6
+BBA5 E69CAD
+BBA6 E6AEBA
+BBA7 E896A9
+BBA8 E99B91
+BBA9 E79A90
+BBAA E9AF96
+BBAB E68D8C
+BBAC E98C86
+BBAD E9AEAB
+BBAE E79ABF
+BBAF E69992
+BBB0 E4B889
+BBB1 E58298
+BBB2 E58F82
+BBB3 E5B1B1
+BBB4 E683A8
+BBB5 E69292
+BBB6 E695A3
+BBB7 E6A19F
+BBB8 E787A6
+BBB9 E78F8A
+BBBA E794A3
+BBBB E7AE97
+BBBC E7BA82
+BBBD E89A95
+BBBE E8AE83
+BBBF E8B39B
+BBC0 E985B8
+BBC1 E9A490
+BBC2 E696AC
+BBC3 E69AAB
+BBC4 E6AE8B
+BBC5 E4BB95
+BBC6 E4BB94
+BBC7 E4BCBA
+BBC8 E4BDBF
+BBC9 E588BA
+BBCA E58FB8
+BBCB E58FB2
+BBCC E597A3
+BBCD E59B9B
+BBCE E5A3AB
+BBCF E5A78B
+BBD0 E5A789
+BBD1 E5A7BF
+BBD2 E5AD90
+BBD3 E5B18D
+BBD4 E5B882
+BBD5 E5B8AB
+BBD6 E5BF97
+BBD7 E6809D
+BBD8 E68C87
+BBD9 E694AF
+BBDA E5AD9C
+BBDB E696AF
+BBDC E696BD
+BBDD E697A8
+BBDE E69E9D
+BBDF E6ADA2
+BBE0 E6ADBB
+BBE1 E6B08F
+BBE2 E78D85
+BBE3 E7A589
+BBE4 E7A781
+BBE5 E7B3B8
+BBE6 E7B499
+BBE7 E7B4AB
+BBE8 E882A2
+BBE9 E88482
+BBEA E887B3
+BBEB E8A696
+BBEC E8A99E
+BBED E8A9A9
+BBEE E8A9A6
+BBEF E8AA8C
+BBF0 E8ABAE
+BBF1 E8B387
+BBF2 E8B39C
+BBF3 E99B8C
+BBF4 E9A3BC
+BBF5 E6ADAF
+BBF6 E4BA8B
+BBF7 E4BCBC
+BBF8 E4BE8D
+BBF9 E58590
+BBFA E5AD97
+BBFB E5AFBA
+BBFC E68588
+BBFD E68C81
+BBFE E69982
+BCA1 E6ACA1
+BCA2 E6BB8B
+BCA3 E6B2BB
+BCA4 E788BE
+BCA5 E792BD
+BCA6 E79794
+BCA7 E7A381
+BCA8 E7A4BA
+BCA9 E8808C
+BCAA E880B3
+BCAB E887AA
+BCAC E89294
+BCAD E8BE9E
+BCAE E6B190
+BCAF E9B9BF
+BCB0 E5BC8F
+BCB1 E8AD98
+BCB2 E9B4AB
+BCB3 E7ABBA
+BCB4 E8BBB8
+BCB5 E5AE8D
+BCB6 E99BAB
+BCB7 E4B883
+BCB8 E58FB1
+BCB9 E59FB7
+BCBA E5A4B1
+BCBB E5AB89
+BCBC E5AEA4
+BCBD E68289
+BCBE E6B9BF
+BCBF E6BC86
+BCC0 E796BE
+BCC1 E8B3AA
+BCC2 E5AE9F
+BCC3 E89480
+BCC4 E7AFA0
+BCC5 E581B2
+BCC6 E69FB4
+BCC7 E88A9D
+BCC8 E5B1A1
+BCC9 E8958A
+BCCA E7B89E
+BCCB E8888E
+BCCC E58699
+BCCD E5B084
+BCCE E68DA8
+BCCF E8B5A6
+BCD0 E6969C
+BCD1 E785AE
+BCD2 E7A4BE
+BCD3 E7B497
+BCD4 E88085
+BCD5 E8AC9D
+BCD6 E8BB8A
+BCD7 E981AE
+BCD8 E89B87
+BCD9 E982AA
+BCDA E5809F
+BCDB E58BBA
+BCDC E5B0BA
+BCDD E69D93
+BCDE E781BC
+BCDF E788B5
+BCE0 E9858C
+BCE1 E98788
+BCE2 E98CAB
+BCE3 E88BA5
+BCE4 E5AF82
+BCE5 E5BCB1
+BCE6 E683B9
+BCE7 E4B8BB
+BCE8 E58F96
+BCE9 E5AE88
+BCEA E6898B
+BCEB E69CB1
+BCEC E6AE8A
+BCED E78BA9
+BCEE E78FA0
+BCEF E7A8AE
+BCF0 E885AB
+BCF1 E8B6A3
+BCF2 E98592
+BCF3 E9A696
+BCF4 E58492
+BCF5 E58F97
+BCF6 E591AA
+BCF7 E5AFBF
+BCF8 E68E88
+BCF9 E6A8B9
+BCFA E7B6AC
+BCFB E99C80
+BCFC E59B9A
+BCFD E58F8E
+BCFE E591A8
+BDA1 E5AE97
+BDA2 E5B0B1
+BDA3 E5B79E
+BDA4 E4BFAE
+BDA5 E68481
+BDA6 E68BBE
+BDA7 E6B4B2
+BDA8 E7A780
+BDA9 E7A78B
+BDAA E7B582
+BDAB E7B98D
+BDAC E7BF92
+BDAD E887AD
+BDAE E8889F
+BDAF E89290
+BDB0 E8A186
+BDB1 E8A5B2
+BDB2 E8AE90
+BDB3 E8B9B4
+BDB4 E8BCAF
+BDB5 E980B1
+BDB6 E9858B
+BDB7 E985AC
+BDB8 E99B86
+BDB9 E9869C
+BDBA E4BB80
+BDBB E4BD8F
+BDBC E58585
+BDBD E58D81
+BDBE E5BE93
+BDBF E6888E
+BDC0 E69F94
+BDC1 E6B181
+BDC2 E6B88B
+BDC3 E78DA3
+BDC4 E7B8A6
+BDC5 E9878D
+BDC6 E98A83
+BDC7 E58F94
+BDC8 E5A499
+BDC9 E5AEBF
+BDCA E6B791
+BDCB E7A59D
+BDCC E7B8AE
+BDCD E7B29B
+BDCE E5A1BE
+BDCF E7869F
+BDD0 E587BA
+BDD1 E8A193
+BDD2 E8BFB0
+BDD3 E4BF8A
+BDD4 E5B3BB
+BDD5 E698A5
+BDD6 E79EAC
+BDD7 E7ABA3
+BDD8 E8889C
+BDD9 E9A7BF
+BDDA E58786
+BDDB E5BEAA
+BDDC E697AC
+BDDD E6A5AF
+BDDE E6AE89
+BDDF E6B7B3
+BDE0 E6BA96
+BDE1 E6BDA4
+BDE2 E79BBE
+BDE3 E7B494
+BDE4 E5B7A1
+BDE5 E981B5
+BDE6 E98687
+BDE7 E9A086
+BDE8 E587A6
+BDE9 E5889D
+BDEA E68980
+BDEB E69A91
+BDEC E69B99
+BDED E6B89A
+BDEE E5BAB6
+BDEF E7B792
+BDF0 E7BDB2
+BDF1 E69BB8
+BDF2 E896AF
+BDF3 E897B7
+BDF4 E8ABB8
+BDF5 E58AA9
+BDF6 E58F99
+BDF7 E5A5B3
+BDF8 E5BA8F
+BDF9 E5BE90
+BDFA E68195
+BDFB E98BA4
+BDFC E999A4
+BDFD E582B7
+BDFE E5849F
+BEA1 E58B9D
+BEA2 E58CA0
+BEA3 E58D87
+BEA4 E58FAC
+BEA5 E593A8
+BEA6 E59586
+BEA7 E594B1
+BEA8 E59897
+BEA9 E5A5A8
+BEAA E5A6BE
+BEAB E5A8BC
+BEAC E5AEB5
+BEAD E5B086
+BEAE E5B08F
+BEAF E5B091
+BEB0 E5B09A
+BEB1 E5BA84
+BEB2 E5BA8A
+BEB3 E5BBA0
+BEB4 E5BDB0
+BEB5 E689BF
+BEB6 E68A84
+BEB7 E68B9B
+BEB8 E68E8C
+BEB9 E68DB7
+BEBA E69887
+BEBB E6988C
+BEBC E698AD
+BEBD E699B6
+BEBE E69DBE
+BEBF E6A2A2
+BEC0 E6A89F
+BEC1 E6A8B5
+BEC2 E6B2BC
+BEC3 E6B688
+BEC4 E6B889
+BEC5 E6B998
+BEC6 E784BC
+BEC7 E784A6
+BEC8 E785A7
+BEC9 E79787
+BECA E79C81
+BECB E7A19D
+BECC E7A481
+BECD E7A5A5
+BECE E7A7B0
+BECF E7ABA0
+BED0 E7AC91
+BED1 E7B2A7
+BED2 E7B4B9
+BED3 E88296
+BED4 E88F96
+BED5 E8928B
+BED6 E89589
+BED7 E8A19D
+BED8 E8A3B3
+BED9 E8A89F
+BEDA E8A8BC
+BEDB E8A994
+BEDC E8A9B3
+BEDD E8B1A1
+BEDE E8B39E
+BEDF E986A4
+BEE0 E989A6
+BEE1 E98DBE
+BEE2 E99098
+BEE3 E99A9C
+BEE4 E99E98
+BEE5 E4B88A
+BEE6 E4B888
+BEE7 E4B89E
+BEE8 E4B997
+BEE9 E58697
+BEEA E589B0
+BEEB E59F8E
+BEEC E5A0B4
+BEED E5A38C
+BEEE E5ACA2
+BEEF E5B8B8
+BEF0 E68385
+BEF1 E693BE
+BEF2 E69DA1
+BEF3 E69D96
+BEF4 E6B584
+BEF5 E78AB6
+BEF6 E795B3
+BEF7 E7A9A3
+BEF8 E892B8
+BEF9 E8ADB2
+BEFA E986B8
+BEFB E98CA0
+BEFC E598B1
+BEFD E59FB4
+BEFE E9A3BE
+BFA1 E68BAD
+BFA2 E6A48D
+BFA3 E6AE96
+BFA4 E787AD
+BFA5 E7B994
+BFA6 E881B7
+BFA7 E889B2
+BFA8 E8A7A6
+BFA9 E9A39F
+BFAA E89D95
+BFAB E8BEB1
+BFAC E5B0BB
+BFAD E4BCB8
+BFAE E4BFA1
+BFAF E4BEB5
+BFB0 E59487
+BFB1 E5A8A0
+BFB2 E5AF9D
+BFB3 E5AFA9
+BFB4 E5BF83
+BFB5 E6858E
+BFB6 E68CAF
+BFB7 E696B0
+BFB8 E6998B
+BFB9 E6A3AE
+BFBA E6A69B
+BFBB E6B5B8
+BFBC E6B7B1
+BFBD E794B3
+BFBE E796B9
+BFBF E79C9F
+BFC0 E7A59E
+BFC1 E7A7A6
+BFC2 E7B4B3
+BFC3 E887A3
+BFC4 E88AAF
+BFC5 E896AA
+BFC6 E8A6AA
+BFC7 E8A8BA
+BFC8 E8BAAB
+BFC9 E8BE9B
+BFCA E980B2
+BFCB E9879D
+BFCC E99C87
+BFCD E4BABA
+BFCE E4BB81
+BFCF E58883
+BFD0 E5A1B5
+BFD1 E5A3AC
+BFD2 E5B08B
+BFD3 E7949A
+BFD4 E5B0BD
+BFD5 E8858E
+BFD6 E8A88A
+BFD7 E8BF85
+BFD8 E999A3
+BFD9 E99DAD
+BFDA E7ACA5
+BFDB E8AB8F
+BFDC E9A088
+BFDD E985A2
+BFDE E59BB3
+BFDF E58EA8
+BFE0 E98097
+BFE1 E590B9
+BFE2 E59E82
+BFE3 E5B8A5
+BFE4 E68EA8
+BFE5 E6B0B4
+BFE6 E7828A
+BFE7 E79DA1
+BFE8 E7B28B
+BFE9 E7BFA0
+BFEA E8A1B0
+BFEB E98182
+BFEC E98594
+BFED E98C90
+BFEE E98C98
+BFEF E99A8F
+BFF0 E7919E
+BFF1 E9AB84
+BFF2 E5B487
+BFF3 E5B5A9
+BFF4 E695B0
+BFF5 E69EA2
+BFF6 E8B6A8
+BFF7 E99B9B
+BFF8 E68DAE
+BFF9 E69D89
+BFFA E6A499
+BFFB E88F85
+BFFC E9A097
+BFFD E99B80
+BFFE E8A3BE
+C0A1 E6BE84
+C0A2 E691BA
+C0A3 E5AFB8
+C0A4 E4B896
+C0A5 E780AC
+C0A6 E7959D
+C0A7 E698AF
+C0A8 E58784
+C0A9 E588B6
+C0AA E58BA2
+C0AB E5A793
+C0AC E5BE81
+C0AD E680A7
+C0AE E68890
+C0AF E694BF
+C0B0 E695B4
+C0B1 E6989F
+C0B2 E699B4
+C0B3 E6A3B2
+C0B4 E6A096
+C0B5 E6ADA3
+C0B6 E6B885
+C0B7 E789B2
+C0B8 E7949F
+C0B9 E79B9B
+C0BA E7B2BE
+C0BB E88196
+C0BC E5A3B0
+C0BD E8A3BD
+C0BE E8A5BF
+C0BF E8AAA0
+C0C0 E8AA93
+C0C1 E8AB8B
+C0C2 E9809D
+C0C3 E98692
+C0C4 E99D92
+C0C5 E99D99
+C0C6 E69689
+C0C7 E7A88E
+C0C8 E88486
+C0C9 E99ABB
+C0CA E5B8AD
+C0CB E6839C
+C0CC E6889A
+C0CD E696A5
+C0CE E69894
+C0CF E69E90
+C0D0 E79FB3
+C0D1 E7A98D
+C0D2 E7B18D
+C0D3 E7B8BE
+C0D4 E8848A
+C0D5 E8B2AC
+C0D6 E8B5A4
+C0D7 E8B7A1
+C0D8 E8B99F
+C0D9 E7A2A9
+C0DA E58887
+C0DB E68B99
+C0DC E68EA5
+C0DD E69182
+C0DE E68A98
+C0DF E8A8AD
+C0E0 E7AA83
+C0E1 E7AF80
+C0E2 E8AAAC
+C0E3 E99BAA
+C0E4 E7B5B6
+C0E5 E8888C
+C0E6 E89D89
+C0E7 E4BB99
+C0E8 E58588
+C0E9 E58D83
+C0EA E58DA0
+C0EB E5AEA3
+C0EC E5B082
+C0ED E5B096
+C0EE E5B79D
+C0EF E688A6
+C0F0 E68987
+C0F1 E692B0
+C0F2 E6A093
+C0F3 E6A0B4
+C0F4 E6B389
+C0F5 E6B585
+C0F6 E6B497
+C0F7 E69F93
+C0F8 E6BD9C
+C0F9 E7858E
+C0FA E785BD
+C0FB E6978B
+C0FC E7A9BF
+C0FD E7AEAD
+C0FE E7B79A
+C1A1 E7B98A
+C1A2 E7BEA8
+C1A3 E885BA
+C1A4 E8889B
+C1A5 E888B9
+C1A6 E896A6
+C1A7 E8A9AE
+C1A8 E8B38E
+C1A9 E8B7B5
+C1AA E981B8
+C1AB E981B7
+C1AC E98AAD
+C1AD E98A91
+C1AE E99683
+C1AF E9AEAE
+C1B0 E5898D
+C1B1 E59684
+C1B2 E6BCB8
+C1B3 E784B6
+C1B4 E585A8
+C1B5 E7A685
+C1B6 E7B995
+C1B7 E886B3
+C1B8 E7B38E
+C1B9 E5998C
+C1BA E5A191
+C1BB E5B2A8
+C1BC E68EAA
+C1BD E69BBE
+C1BE E69BBD
+C1BF E6A59A
+C1C0 E78B99
+C1C1 E7968F
+C1C2 E7968E
+C1C3 E7A48E
+C1C4 E7A596
+C1C5 E7A79F
+C1C6 E7B297
+C1C7 E7B4A0
+C1C8 E7B584
+C1C9 E89887
+C1CA E8A8B4
+C1CB E998BB
+C1CC E981A1
+C1CD E9BCA0
+C1CE E583A7
+C1CF E589B5
+C1D0 E58F8C
+C1D1 E58FA2
+C1D2 E58089
+C1D3 E596AA
+C1D4 E5A3AE
+C1D5 E5A58F
+C1D6 E788BD
+C1D7 E5AE8B
+C1D8 E5B1A4
+C1D9 E58C9D
+C1DA E683A3
+C1DB E683B3
+C1DC E68D9C
+C1DD E68E83
+C1DE E68CBF
+C1DF E68EBB
+C1E0 E6938D
+C1E1 E697A9
+C1E2 E69BB9
+C1E3 E5B7A3
+C1E4 E6A78D
+C1E5 E6A7BD
+C1E6 E6BC95
+C1E7 E787A5
+C1E8 E4BA89
+C1E9 E797A9
+C1EA E79BB8
+C1EB E7AA93
+C1EC E7B39F
+C1ED E7B78F
+C1EE E7B69C
+C1EF E881A1
+C1F0 E88D89
+C1F1 E88D98
+C1F2 E891AC
+C1F3 E892BC
+C1F4 E897BB
+C1F5 E8A385
+C1F6 E8B5B0
+C1F7 E98081
+C1F8 E981AD
+C1F9 E98E97
+C1FA E99C9C
+C1FB E9A892
+C1FC E5838F
+C1FD E5A297
+C1FE E6868E
+C2A1 E88793
+C2A2 E894B5
+C2A3 E8B488
+C2A4 E980A0
+C2A5 E4BF83
+C2A6 E581B4
+C2A7 E58987
+C2A8 E58DB3
+C2A9 E681AF
+C2AA E68D89
+C2AB E69D9F
+C2AC E6B8AC
+C2AD E8B6B3
+C2AE E9809F
+C2AF E4BF97
+C2B0 E5B19E
+C2B1 E8B38A
+C2B2 E6978F
+C2B3 E7B69A
+C2B4 E58D92
+C2B5 E8A296
+C2B6 E585B6
+C2B7 E68F83
+C2B8 E5AD98
+C2B9 E5ADAB
+C2BA E5B08A
+C2BB E6908D
+C2BC E69D91
+C2BD E9819C
+C2BE E4BB96
+C2BF E5A49A
+C2C0 E5A4AA
+C2C1 E6B1B0
+C2C2 E8A991
+C2C3 E594BE
+C2C4 E5A095
+C2C5 E5A6A5
+C2C6 E683B0
+C2C7 E68993
+C2C8 E69F81
+C2C9 E888B5
+C2CA E6A595
+C2CB E99980
+C2CC E9A784
+C2CD E9A8A8
+C2CE E4BD93
+C2CF E5A086
+C2D0 E5AFBE
+C2D1 E88090
+C2D2 E5B2B1
+C2D3 E5B8AF
+C2D4 E5BE85
+C2D5 E680A0
+C2D6 E6858B
+C2D7 E688B4
+C2D8 E69BBF
+C2D9 E6B3B0
+C2DA E6BB9E
+C2DB E8838E
+C2DC E885BF
+C2DD E88B94
+C2DE E8A28B
+C2DF E8B2B8
+C2E0 E98080
+C2E1 E980AE
+C2E2 E99A8A
+C2E3 E9BB9B
+C2E4 E9AF9B
+C2E5 E4BBA3
+C2E6 E58FB0
+C2E7 E5A4A7
+C2E8 E7ACAC
+C2E9 E9868D
+C2EA E9A18C
+C2EB E9B7B9
+C2EC E6BB9D
+C2ED E780A7
+C2EE E58D93
+C2EF E59584
+C2F0 E5AE85
+C2F1 E68998
+C2F2 E68A9E
+C2F3 E68B93
+C2F4 E6B2A2
+C2F5 E6BFAF
+C2F6 E790A2
+C2F7 E8A897
+C2F8 E990B8
+C2F9 E6BF81
+C2FA E8ABBE
+C2FB E88CB8
+C2FC E587A7
+C2FD E89BB8
+C2FE E58FAA
+C3A1 E58FA9
+C3A2 E4BD86
+C3A3 E98194
+C3A4 E8BEB0
+C3A5 E5A5AA
+C3A6 E884B1
+C3A7 E5B7BD
+C3A8 E7ABAA
+C3A9 E8BEBF
+C3AA E6A39A
+C3AB E8B0B7
+C3AC E78BB8
+C3AD E9B188
+C3AE E6A8BD
+C3AF E8AAB0
+C3B0 E4B8B9
+C3B1 E58D98
+C3B2 E59886
+C3B3 E59DA6
+C3B4 E68B85
+C3B5 E68EA2
+C3B6 E697A6
+C3B7 E6AD8E
+C3B8 E6B7A1
+C3B9 E6B99B
+C3BA E782AD
+C3BB E79FAD
+C3BC E7ABAF
+C3BD E7AEAA
+C3BE E7B6BB
+C3BF E880BD
+C3C0 E88386
+C3C1 E89B8B
+C3C2 E8AA95
+C3C3 E98D9B
+C3C4 E59BA3
+C3C5 E5A387
+C3C6 E5BCBE
+C3C7 E696AD
+C3C8 E69A96
+C3C9 E6AA80
+C3CA E6AEB5
+C3CB E794B7
+C3CC E8AB87
+C3CD E580A4
+C3CE E79FA5
+C3CF E59CB0
+C3D0 E5BC9B
+C3D1 E681A5
+C3D2 E699BA
+C3D3 E6B1A0
+C3D4 E797B4
+C3D5 E7A89A
+C3D6 E7BDAE
+C3D7 E887B4
+C3D8 E89C98
+C3D9 E98185
+C3DA E9A6B3
+C3DB E7AF89
+C3DC E7959C
+C3DD E7ABB9
+C3DE E7AD91
+C3DF E89384
+C3E0 E98090
+C3E1 E7A7A9
+C3E2 E7AA92
+C3E3 E88CB6
+C3E4 E5ABA1
+C3E5 E79D80
+C3E6 E4B8AD
+C3E7 E4BBB2
+C3E8 E5AE99
+C3E9 E5BFA0
+C3EA E68ABD
+C3EB E698BC
+C3EC E69FB1
+C3ED E6B3A8
+C3EE E899AB
+C3EF E8A1B7
+C3F0 E8A8BB
+C3F1 E9858E
+C3F2 E98BB3
+C3F3 E9A790
+C3F4 E6A897
+C3F5 E780A6
+C3F6 E78CAA
+C3F7 E88BA7
+C3F8 E89197
+C3F9 E8B2AF
+C3FA E4B881
+C3FB E58586
+C3FC E5878B
+C3FD E5968B
+C3FE E5AFB5
+C4A1 E5B896
+C4A2 E5B8B3
+C4A3 E5BA81
+C4A4 E5BC94
+C4A5 E5BCB5
+C4A6 E5BDAB
+C4A7 E5BEB4
+C4A8 E687B2
+C4A9 E68C91
+C4AA E69AA2
+C4AB E69C9D
+C4AC E6BDAE
+C4AD E78992
+C4AE E794BA
+C4AF E79CBA
+C4B0 E881B4
+C4B1 E884B9
+C4B2 E885B8
+C4B3 E89DB6
+C4B4 E8AABF
+C4B5 E8AB9C
+C4B6 E8B685
+C4B7 E8B7B3
+C4B8 E98A9A
+C4B9 E995B7
+C4BA E9A082
+C4BB E9B3A5
+C4BC E58B85
+C4BD E68D97
+C4BE E79BB4
+C4BF E69C95
+C4C0 E6B288
+C4C1 E78F8D
+C4C2 E8B383
+C4C3 E98EAE
+C4C4 E999B3
+C4C5 E6B4A5
+C4C6 E5A29C
+C4C7 E6A48E
+C4C8 E6A78C
+C4C9 E8BFBD
+C4CA E98E9A
+C4CB E7979B
+C4CC E9809A
+C4CD E5A19A
+C4CE E6A082
+C4CF E68EB4
+C4D0 E6A7BB
+C4D1 E4BD83
+C4D2 E6BCAC
+C4D3 E69F98
+C4D4 E8BEBB
+C4D5 E894A6
+C4D6 E7B6B4
+C4D7 E98D94
+C4D8 E6A4BF
+C4D9 E6BDB0
+C4DA E59DAA
+C4DB E5A3B7
+C4DC E5ACAC
+C4DD E7B4AC
+C4DE E788AA
+C4DF E5908A
+C4E0 E987A3
+C4E1 E9B6B4
+C4E2 E4BAAD
+C4E3 E4BD8E
+C4E4 E5819C
+C4E5 E581B5
+C4E6 E58983
+C4E7 E8B29E
+C4E8 E59188
+C4E9 E5A0A4
+C4EA E5AE9A
+C4EB E5B89D
+C4EC E5BA95
+C4ED E5BAAD
+C4EE E5BBB7
+C4EF E5BC9F
+C4F0 E6828C
+C4F1 E68AB5
+C4F2 E68CBA
+C4F3 E68F90
+C4F4 E6A2AF
+C4F5 E6B180
+C4F6 E7A287
+C4F7 E7A68E
+C4F8 E7A88B
+C4F9 E7B7A0
+C4FA E88987
+C4FB E8A882
+C4FC E8ABA6
+C4FD E8B984
+C4FE E98093
+C5A1 E982B8
+C5A2 E984AD
+C5A3 E98798
+C5A4 E9BC8E
+C5A5 E6B3A5
+C5A6 E69198
+C5A7 E693A2
+C5A8 E695B5
+C5A9 E6BBB4
+C5AA E79A84
+C5AB E7AC9B
+C5AC E981A9
+C5AD E98F91
+C5AE E6BABA
+C5AF E593B2
+C5B0 E5BEB9
+C5B1 E692A4
+C5B2 E8BD8D
+C5B3 E8BFAD
+C5B4 E98984
+C5B5 E585B8
+C5B6 E5A1AB
+C5B7 E5A4A9
+C5B8 E5B195
+C5B9 E5BA97
+C5BA E6B7BB
+C5BB E7BA8F
+C5BC E7949C
+C5BD E8B2BC
+C5BE E8BBA2
+C5BF E9A19B
+C5C0 E782B9
+C5C1 E4BC9D
+C5C2 E6AEBF
+C5C3 E6BEB1
+C5C4 E794B0
+C5C5 E99BBB
+C5C6 E5858E
+C5C7 E59090
+C5C8 E5A0B5
+C5C9 E5A197
+C5CA E5A6AC
+C5CB E5B1A0
+C5CC E5BE92
+C5CD E69697
+C5CE E69D9C
+C5CF E6B8A1
+C5D0 E799BB
+C5D1 E88F9F
+C5D2 E8B3AD
+C5D3 E98094
+C5D4 E983BD
+C5D5 E98D8D
+C5D6 E7A0A5
+C5D7 E7A0BA
+C5D8 E58AAA
+C5D9 E5BAA6
+C5DA E59C9F
+C5DB E5A5B4
+C5DC E68092
+C5DD E58092
+C5DE E5859A
+C5DF E586AC
+C5E0 E5878D
+C5E1 E58880
+C5E2 E59490
+C5E3 E5A194
+C5E4 E5A198
+C5E5 E5A597
+C5E6 E5AE95
+C5E7 E5B3B6
+C5E8 E5B68B
+C5E9 E682BC
+C5EA E68A95
+C5EB E690AD
+C5EC E69DB1
+C5ED E6A183
+C5EE E6A2BC
+C5EF E6A39F
+C5F0 E79B97
+C5F1 E6B798
+C5F2 E6B9AF
+C5F3 E6B69B
+C5F4 E781AF
+C5F5 E78788
+C5F6 E5BD93
+C5F7 E79798
+C5F8 E7A5B7
+C5F9 E7AD89
+C5FA E7AD94
+C5FB E7AD92
+C5FC E7B396
+C5FD E7B5B1
+C5FE E588B0
+C6A1 E891A3
+C6A2 E895A9
+C6A3 E897A4
+C6A4 E8A88E
+C6A5 E8AC84
+C6A6 E8B186
+C6A7 E8B88F
+C6A8 E98083
+C6A9 E9808F
+C6AA E99099
+C6AB E999B6
+C6AC E9A0AD
+C6AD E9A8B0
+C6AE E99798
+C6AF E5838D
+C6B0 E58B95
+C6B1 E5908C
+C6B2 E5A082
+C6B3 E5B08E
+C6B4 E686A7
+C6B5 E6929E
+C6B6 E6B49E
+C6B7 E79EB3
+C6B8 E7ABA5
+C6B9 E883B4
+C6BA E89084
+C6BB E98193
+C6BC E98A85
+C6BD E5B3A0
+C6BE E9B487
+C6BF E58CBF
+C6C0 E5BE97
+C6C1 E5BEB3
+C6C2 E6B69C
+C6C3 E789B9
+C6C4 E79DA3
+C6C5 E7A6BF
+C6C6 E7AFA4
+C6C7 E6AF92
+C6C8 E78BAC
+C6C9 E8AAAD
+C6CA E6A083
+C6CB E6A9A1
+C6CC E587B8
+C6CD E7AA81
+C6CE E6A4B4
+C6CF E5B18A
+C6D0 E9B3B6
+C6D1 E88BAB
+C6D2 E5AF85
+C6D3 E98589
+C6D4 E7809E
+C6D5 E599B8
+C6D6 E5B1AF
+C6D7 E68387
+C6D8 E695A6
+C6D9 E6B28C
+C6DA E8B19A
+C6DB E98181
+C6DC E9A093
+C6DD E59191
+C6DE E69B87
+C6DF E9888D
+C6E0 E5A588
+C6E1 E982A3
+C6E2 E58685
+C6E3 E4B98D
+C6E4 E587AA
+C6E5 E89699
+C6E6 E8AC8E
+C6E7 E78198
+C6E8 E68DBA
+C6E9 E98D8B
+C6EA E6A5A2
+C6EB E9A6B4
+C6EC E7B884
+C6ED E795B7
+C6EE E58D97
+C6EF E6A5A0
+C6F0 E8BB9F
+C6F1 E99BA3
+C6F2 E6B19D
+C6F3 E4BA8C
+C6F4 E5B0BC
+C6F5 E5BC90
+C6F6 E8BFA9
+C6F7 E58C82
+C6F8 E8B391
+C6F9 E88289
+C6FA E899B9
+C6FB E5BBBF
+C6FC E697A5
+C6FD E4B9B3
+C6FE E585A5
+C7A1 E5A682
+C7A2 E5B0BF
+C7A3 E99FAE
+C7A4 E4BBBB
+C7A5 E5A68A
+C7A6 E5BF8D
+C7A7 E8AA8D
+C7A8 E6BFA1
+C7A9 E7A6B0
+C7AA E7A5A2
+C7AB E5AFA7
+C7AC E891B1
+C7AD E78CAB
+C7AE E786B1
+C7AF E5B9B4
+C7B0 E5BFB5
+C7B1 E68DBB
+C7B2 E6929A
+C7B3 E78783
+C7B4 E7B298
+C7B5 E4B983
+C7B6 E5BBBC
+C7B7 E4B98B
+C7B8 E59F9C
+C7B9 E59AA2
+C7BA E682A9
+C7BB E6BF83
+C7BC E7B48D
+C7BD E883BD
+C7BE E884B3
+C7BF E886BF
+C7C0 E8BEB2
+C7C1 E8A697
+C7C2 E89AA4
+C7C3 E5B7B4
+C7C4 E68A8A
+C7C5 E692AD
+C7C6 E8A687
+C7C7 E69DB7
+C7C8 E6B3A2
+C7C9 E6B4BE
+C7CA E790B6
+C7CB E7A0B4
+C7CC E5A986
+C7CD E7BDB5
+C7CE E88AAD
+C7CF E9A6AC
+C7D0 E4BFB3
+C7D1 E5BB83
+C7D2 E68B9D
+C7D3 E68E92
+C7D4 E69597
+C7D5 E69DAF
+C7D6 E79B83
+C7D7 E7898C
+C7D8 E8838C
+C7D9 E882BA
+C7DA E8BCA9
+C7DB E9858D
+C7DC E5808D
+C7DD E59FB9
+C7DE E5AA92
+C7DF E6A285
+C7E0 E6A5B3
+C7E1 E785A4
+C7E2 E78BBD
+C7E3 E8B2B7
+C7E4 E5A3B2
+C7E5 E8B3A0
+C7E6 E999AA
+C7E7 E98099
+C7E8 E89DBF
+C7E9 E7A7A4
+C7EA E79FA7
+C7EB E890A9
+C7EC E4BCAF
+C7ED E589A5
+C7EE E58D9A
+C7EF E68B8D
+C7F0 E69F8F
+C7F1 E6B38A
+C7F2 E799BD
+C7F3 E7AE94
+C7F4 E7B295
+C7F5 E888B6
+C7F6 E89684
+C7F7 E8BFAB
+C7F8 E69B9D
+C7F9 E6BCA0
+C7FA E78886
+C7FB E7B89B
+C7FC E88EAB
+C7FD E9A781
+C7FE E9BAA6
+C8A1 E587BD
+C8A2 E7AEB1
+C8A3 E7A1B2
+C8A4 E7AEB8
+C8A5 E88287
+C8A6 E7AD88
+C8A7 E6ABA8
+C8A8 E5B9A1
+C8A9 E8828C
+C8AA E79591
+C8AB E795A0
+C8AC E585AB
+C8AD E989A2
+C8AE E6BA8C
+C8AF E799BA
+C8B0 E98697
+C8B1 E9ABAA
+C8B2 E4BC90
+C8B3 E7BDB0
+C8B4 E68A9C
+C8B5 E7AD8F
+C8B6 E996A5
+C8B7 E9B3A9
+C8B8 E599BA
+C8B9 E5A199
+C8BA E89BA4
+C8BB E99ABC
+C8BC E4BCB4
+C8BD E588A4
+C8BE E58D8A
+C8BF E58F8D
+C8C0 E58F9B
+C8C1 E5B886
+C8C2 E690AC
+C8C3 E69691
+C8C4 E69DBF
+C8C5 E6B0BE
+C8C6 E6B18E
+C8C7 E78988
+C8C8 E78AAF
+C8C9 E78FAD
+C8CA E79594
+C8CB E7B981
+C8CC E888AC
+C8CD E897A9
+C8CE E8B2A9
+C8CF E7AF84
+C8D0 E98786
+C8D1 E785A9
+C8D2 E9A092
+C8D3 E9A3AF
+C8D4 E68CBD
+C8D5 E699A9
+C8D6 E795AA
+C8D7 E79BA4
+C8D8 E7A390
+C8D9 E89583
+C8DA E89BAE
+C8DB E58CAA
+C8DC E58D91
+C8DD E590A6
+C8DE E5A683
+C8DF E5BA87
+C8E0 E5BDBC
+C8E1 E682B2
+C8E2 E68989
+C8E3 E689B9
+C8E4 E68AAB
+C8E5 E69690
+C8E6 E6AF94
+C8E7 E6B38C
+C8E8 E796B2
+C8E9 E79AAE
+C8EA E7A291
+C8EB E7A798
+C8EC E7B78B
+C8ED E7BDB7
+C8EE E882A5
+C8EF E8A2AB
+C8F0 E8AAB9
+C8F1 E8B2BB
+C8F2 E981BF
+C8F3 E99D9E
+C8F4 E9A39B
+C8F5 E6A88B
+C8F6 E7B0B8
+C8F7 E58299
+C8F8 E5B0BE
+C8F9 E5BEAE
+C8FA E69E87
+C8FB E6AF98
+C8FC E790B5
+C8FD E79C89
+C8FE E7BE8E
+C9A1 E9BCBB
+C9A2 E69F8A
+C9A3 E7A897
+C9A4 E58CB9
+C9A5 E7968B
+C9A6 E9ABAD
+C9A7 E5BDA6
+C9A8 E8869D
+C9A9 E88FB1
+C9AA E88298
+C9AB E5BCBC
+C9AC E5BF85
+C9AD E795A2
+C9AE E7AD86
+C9AF E980BC
+C9B0 E6A1A7
+C9B1 E5A7AB
+C9B2 E5AA9B
+C9B3 E7B490
+C9B4 E799BE
+C9B5 E8ACAC
+C9B6 E4BFB5
+C9B7 E5BDAA
+C9B8 E6A899
+C9B9 E6B0B7
+C9BA E6BC82
+C9BB E793A2
+C9BC E7A5A8
+C9BD E8A1A8
+C9BE E8A995
+C9BF E8B1B9
+C9C0 E5BB9F
+C9C1 E68F8F
+C9C2 E79785
+C9C3 E7A792
+C9C4 E88B97
+C9C5 E98CA8
+C9C6 E98BB2
+C9C7 E8929C
+C9C8 E89BAD
+C9C9 E9B0AD
+C9CA E59381
+C9CB E5BDAC
+C9CC E6968C
+C9CD E6B59C
+C9CE E78095
+C9CF E8B2A7
+C9D0 E8B393
+C9D1 E9A0BB
+C9D2 E6958F
+C9D3 E793B6
+C9D4 E4B88D
+C9D5 E4BB98
+C9D6 E59FA0
+C9D7 E5A4AB
+C9D8 E5A9A6
+C9D9 E5AF8C
+C9DA E586A8
+C9DB E5B883
+C9DC E5BA9C
+C9DD E68096
+C9DE E689B6
+C9DF E695B7
+C9E0 E696A7
+C9E1 E699AE
+C9E2 E6B5AE
+C9E3 E788B6
+C9E4 E7ACA6
+C9E5 E88590
+C9E6 E8869A
+C9E7 E88A99
+C9E8 E8AD9C
+C9E9 E8B2A0
+C9EA E8B3A6
+C9EB E8B5B4
+C9EC E9989C
+C9ED E99984
+C9EE E4BEAE
+C9EF E692AB
+C9F0 E6ADA6
+C9F1 E8889E
+C9F2 E891A1
+C9F3 E895AA
+C9F4 E983A8
+C9F5 E5B081
+C9F6 E6A593
+C9F7 E9A2A8
+C9F8 E891BA
+C9F9 E89597
+C9FA E4BC8F
+C9FB E589AF
+C9FC E5BEA9
+C9FD E5B985
+C9FE E69C8D
+CAA1 E7A68F
+CAA2 E885B9
+CAA3 E8A487
+CAA4 E8A686
+CAA5 E6B7B5
+CAA6 E5BC97
+CAA7 E68995
+CAA8 E6B2B8
+CAA9 E4BB8F
+CAAA E789A9
+CAAB E9AE92
+CAAC E58886
+CAAD E590BB
+CAAE E599B4
+CAAF E5A2B3
+CAB0 E686A4
+CAB1 E689AE
+CAB2 E7849A
+CAB3 E5A5AE
+CAB4 E7B289
+CAB5 E7B39E
+CAB6 E7B49B
+CAB7 E99BB0
+CAB8 E69687
+CAB9 E8819E
+CABA E4B899
+CABB E4BDB5
+CABC E585B5
+CABD E5A180
+CABE E5B9A3
+CABF E5B9B3
+CAC0 E5BC8A
+CAC1 E69F84
+CAC2 E4B8A6
+CAC3 E894BD
+CAC4 E99689
+CAC5 E9999B
+CAC6 E7B1B3
+CAC7 E9A081
+CAC8 E583BB
+CAC9 E5A381
+CACA E79996
+CACB E7A2A7
+CACC E588A5
+CACD E79EA5
+CACE E89491
+CACF E7AE86
+CAD0 E5818F
+CAD1 E5A489
+CAD2 E78987
+CAD3 E7AF87
+CAD4 E7B7A8
+CAD5 E8BEBA
+CAD6 E8BF94
+CAD7 E9818D
+CAD8 E4BEBF
+CAD9 E58B89
+CADA E5A8A9
+CADB E5BC81
+CADC E99EAD
+CADD E4BF9D
+CADE E88897
+CADF E98BAA
+CAE0 E59C83
+CAE1 E68D95
+CAE2 E6ADA9
+CAE3 E794AB
+CAE4 E8A39C
+CAE5 E8BC94
+CAE6 E7A982
+CAE7 E58B9F
+CAE8 E5A293
+CAE9 E68595
+CAEA E6888A
+CAEB E69AAE
+CAEC E6AF8D
+CAED E7B0BF
+CAEE E88FA9
+CAEF E580A3
+CAF0 E4BFB8
+CAF1 E58C85
+CAF2 E59186
+CAF3 E5A0B1
+CAF4 E5A589
+CAF5 E5AE9D
+CAF6 E5B3B0
+CAF7 E5B3AF
+CAF8 E5B4A9
+CAF9 E5BA96
+CAFA E68AB1
+CAFB E68DA7
+CAFC E694BE
+CAFD E696B9
+CAFE E69C8B
+CBA1 E6B395
+CBA2 E6B3A1
+CBA3 E783B9
+CBA4 E7A0B2
+CBA5 E7B8AB
+CBA6 E8839E
+CBA7 E88AB3
+CBA8 E8908C
+CBA9 E893AC
+CBAA E89C82
+CBAB E8A492
+CBAC E8A8AA
+CBAD E8B18A
+CBAE E982A6
+CBAF E98B92
+CBB0 E9A3BD
+CBB1 E9B3B3
+CBB2 E9B5AC
+CBB3 E4B98F
+CBB4 E4BAA1
+CBB5 E5828D
+CBB6 E58996
+CBB7 E59D8A
+CBB8 E5A6A8
+CBB9 E5B8BD
+CBBA E5BF98
+CBBB E5BF99
+CBBC E688BF
+CBBD E69AB4
+CBBE E69C9B
+CBBF E69F90
+CBC0 E6A392
+CBC1 E58692
+CBC2 E7B4A1
+CBC3 E882AA
+CBC4 E886A8
+CBC5 E8AC80
+CBC6 E8B28C
+CBC7 E8B2BF
+CBC8 E989BE
+CBC9 E998B2
+CBCA E590A0
+CBCB E9A0AC
+CBCC E58C97
+CBCD E58395
+CBCE E58D9C
+CBCF E5A2A8
+CBD0 E692B2
+CBD1 E69CB4
+CBD2 E789A7
+CBD3 E79DA6
+CBD4 E7A986
+CBD5 E987A6
+CBD6 E58B83
+CBD7 E6B2A1
+CBD8 E6AE86
+CBD9 E5A080
+CBDA E5B98C
+CBDB E5A594
+CBDC E69CAC
+CBDD E7BFBB
+CBDE E587A1
+CBDF E79B86
+CBE0 E691A9
+CBE1 E7A3A8
+CBE2 E9AD94
+CBE3 E9BABB
+CBE4 E59F8B
+CBE5 E5A6B9
+CBE6 E698A7
+CBE7 E69E9A
+CBE8 E6AF8E
+CBE9 E593A9
+CBEA E6A799
+CBEB E5B995
+CBEC E8869C
+CBED E69E95
+CBEE E9AEAA
+CBEF E69FBE
+CBF0 E9B192
+CBF1 E6A19D
+CBF2 E4BAA6
+CBF3 E4BFA3
+CBF4 E58F88
+CBF5 E68AB9
+CBF6 E69CAB
+CBF7 E6B2AB
+CBF8 E8BF84
+CBF9 E4BEAD
+CBFA E7B9AD
+CBFB E9BABF
+CBFC E4B887
+CBFD E685A2
+CBFE E6BA80
+CCA1 E6BCAB
+CCA2 E89493
+CCA3 E591B3
+CCA4 E69CAA
+CCA5 E9AD85
+CCA6 E5B7B3
+CCA7 E7AE95
+CCA8 E5B2AC
+CCA9 E5AF86
+CCAA E89C9C
+CCAB E6B98A
+CCAC E89391
+CCAD E7A894
+CCAE E88488
+CCAF E5A699
+CCB0 E7B28D
+CCB1 E6B091
+CCB2 E79CA0
+CCB3 E58B99
+CCB4 E5A4A2
+CCB5 E784A1
+CCB6 E7899F
+CCB7 E79F9B
+CCB8 E99CA7
+CCB9 E9B5A1
+CCBA E6A48B
+CCBB E5A9BF
+CCBC E5A898
+CCBD E586A5
+CCBE E5908D
+CCBF E591BD
+CCC0 E6988E
+CCC1 E79B9F
+CCC2 E8BFB7
+CCC3 E98A98
+CCC4 E9B3B4
+CCC5 E5A7AA
+CCC6 E7899D
+CCC7 E6BB85
+CCC8 E5858D
+CCC9 E6A389
+CCCA E7B6BF
+CCCB E7B7AC
+CCCC E99DA2
+CCCD E9BABA
+CCCE E691B8
+CCCF E6A8A1
+CCD0 E88C82
+CCD1 E5A684
+CCD2 E5AD9F
+CCD3 E6AF9B
+CCD4 E78C9B
+CCD5 E79BB2
+CCD6 E7B6B2
+CCD7 E88097
+CCD8 E89299
+CCD9 E584B2
+CCDA E69CA8
+CCDB E9BB99
+CCDC E79BAE
+CCDD E69DA2
+CCDE E58BBF
+CCDF E9A485
+CCE0 E5B0A4
+CCE1 E688BB
+CCE2 E7B1BE
+CCE3 E8B2B0
+CCE4 E5958F
+CCE5 E682B6
+CCE6 E7B48B
+CCE7 E99680
+CCE8 E58C81
+CCE9 E4B99F
+CCEA E586B6
+CCEB E5A49C
+CCEC E788BA
+CCED E880B6
+CCEE E9878E
+CCEF E5BCA5
+CCF0 E79FA2
+CCF1 E58E84
+CCF2 E5BDB9
+CCF3 E7B484
+CCF4 E896AC
+CCF5 E8A8B3
+CCF6 E8BA8D
+CCF7 E99D96
+CCF8 E69FB3
+CCF9 E896AE
+CCFA E99193
+CCFB E68489
+CCFC E68488
+CCFD E6B2B9
+CCFE E79992
+CDA1 E8ABAD
+CDA2 E8BCB8
+CDA3 E594AF
+CDA4 E4BD91
+CDA5 E584AA
+CDA6 E58B87
+CDA7 E58F8B
+CDA8 E5AEA5
+CDA9 E5B9BD
+CDAA E682A0
+CDAB E68682
+CDAC E68F96
+CDAD E69C89
+CDAE E69F9A
+CDAF E6B9A7
+CDB0 E6B68C
+CDB1 E78CB6
+CDB2 E78CB7
+CDB3 E794B1
+CDB4 E7A590
+CDB5 E8A395
+CDB6 E8AA98
+CDB7 E9818A
+CDB8 E98291
+CDB9 E983B5
+CDBA E99B84
+CDBB E89E8D
+CDBC E5A495
+CDBD E4BA88
+CDBE E4BD99
+CDBF E4B88E
+CDC0 E8AA89
+CDC1 E8BCBF
+CDC2 E9A090
+CDC3 E582AD
+CDC4 E5B9BC
+CDC5 E5A696
+CDC6 E5AEB9
+CDC7 E5BAB8
+CDC8 E68F9A
+CDC9 E68FBA
+CDCA E69381
+CDCB E69B9C
+CDCC E6A58A
+CDCD E6A798
+CDCE E6B48B
+CDCF E6BAB6
+CDD0 E78694
+CDD1 E794A8
+CDD2 E7AAAF
+CDD3 E7BE8A
+CDD4 E88080
+CDD5 E89189
+CDD6 E89389
+CDD7 E8A681
+CDD8 E8ACA1
+CDD9 E8B88A
+CDDA E981A5
+CDDB E999BD
+CDDC E9A48A
+CDDD E685BE
+CDDE E68A91
+CDDF E6ACB2
+CDE0 E6B283
+CDE1 E6B5B4
+CDE2 E7BF8C
+CDE3 E7BFBC
+CDE4 E6B780
+CDE5 E7BE85
+CDE6 E89EBA
+CDE7 E8A3B8
+CDE8 E69DA5
+CDE9 E88EB1
+CDEA E9A0BC
+CDEB E99BB7
+CDEC E6B49B
+CDED E7B5A1
+CDEE E890BD
+CDEF E985AA
+CDF0 E4B9B1
+CDF1 E58DB5
+CDF2 E5B590
+CDF3 E6AC84
+CDF4 E6BFAB
+CDF5 E8978D
+CDF6 E898AD
+CDF7 E8A6A7
+CDF8 E588A9
+CDF9 E5908F
+CDFA E5B1A5
+CDFB E69D8E
+CDFC E6A2A8
+CDFD E79086
+CDFE E79283
+CEA1 E797A2
+CEA2 E8A38F
+CEA3 E8A3A1
+CEA4 E9878C
+CEA5 E99BA2
+CEA6 E999B8
+CEA7 E5BE8B
+CEA8 E78E87
+CEA9 E7AB8B
+CEAA E8918E
+CEAB E68EA0
+CEAC E795A5
+CEAD E58A89
+CEAE E6B581
+CEAF E6BA9C
+CEB0 E79089
+CEB1 E79599
+CEB2 E7A1AB
+CEB3 E7B292
+CEB4 E99A86
+CEB5 E7AB9C
+CEB6 E9BE8D
+CEB7 E4BEB6
+CEB8 E685AE
+CEB9 E69785
+CEBA E8999C
+CEBB E4BA86
+CEBC E4BAAE
+CEBD E5839A
+CEBE E4B8A1
+CEBF E5878C
+CEC0 E5AFAE
+CEC1 E69699
+CEC2 E6A281
+CEC3 E6B6BC
+CEC4 E78C9F
+CEC5 E79982
+CEC6 E79EAD
+CEC7 E7A89C
+CEC8 E7B3A7
+CEC9 E889AF
+CECA E8AB92
+CECB E981BC
+CECC E9878F
+CECD E999B5
+CECE E9A098
+CECF E58A9B
+CED0 E7B791
+CED1 E580AB
+CED2 E58E98
+CED3 E69E97
+CED4 E6B78B
+CED5 E78790
+CED6 E790B3
+CED7 E887A8
+CED8 E8BCAA
+CED9 E99AA3
+CEDA E9B197
+CEDB E9BA9F
+CEDC E791A0
+CEDD E5A181
+CEDE E6B699
+CEDF E7B4AF
+CEE0 E9A19E
+CEE1 E4BBA4
+CEE2 E4BCB6
+CEE3 E4BE8B
+CEE4 E586B7
+CEE5 E58AB1
+CEE6 E5B6BA
+CEE7 E6809C
+CEE8 E78EB2
+CEE9 E7A4BC
+CEEA E88B93
+CEEB E988B4
+CEEC E99AB7
+CEED E99BB6
+CEEE E99C8A
+CEEF E9BA97
+CEF0 E9BDA2
+CEF1 E69AA6
+CEF2 E6ADB4
+CEF3 E58897
+CEF4 E58AA3
+CEF5 E78388
+CEF6 E8A382
+CEF7 E5BB89
+CEF8 E6818B
+CEF9 E68690
+CEFA E6BCA3
+CEFB E78589
+CEFC E7B0BE
+CEFD E7B7B4
+CEFE E881AF
+CFA1 E893AE
+CFA2 E980A3
+CFA3 E98CAC
+CFA4 E59182
+CFA5 E9ADAF
+CFA6 E6AB93
+CFA7 E78289
+CFA8 E8B382
+CFA9 E8B7AF
+CFAA E99CB2
+CFAB E58AB4
+CFAC E5A981
+CFAD E5BB8A
+CFAE E5BC84
+CFAF E69C97
+CFB0 E6A5BC
+CFB1 E6A694
+CFB2 E6B5AA
+CFB3 E6BC8F
+CFB4 E789A2
+CFB5 E78BBC
+CFB6 E7AFAD
+CFB7 E88081
+CFB8 E881BE
+CFB9 E89D8B
+CFBA E9838E
+CFBB E585AD
+CFBC E9BA93
+CFBD E7A684
+CFBE E8828B
+CFBF E98CB2
+CFC0 E8AB96
+CFC1 E580AD
+CFC2 E5928C
+CFC3 E8A9B1
+CFC4 E6ADAA
+CFC5 E8B384
+CFC6 E88487
+CFC7 E68391
+CFC8 E69EA0
+CFC9 E9B7B2
+CFCA E4BA99
+CFCB E4BA98
+CFCC E9B090
+CFCD E8A9AB
+CFCE E89781
+CFCF E895A8
+CFD0 E6A480
+CFD1 E6B9BE
+CFD2 E7A297
+CFD3 E88595
+D0A1 E5BC8C
+D0A2 E4B890
+D0A3 E4B895
+D0A4 E4B8AA
+D0A5 E4B8B1
+D0A6 E4B8B6
+D0A7 E4B8BC
+D0A8 E4B8BF
+D0A9 E4B982
+D0AA E4B996
+D0AB E4B998
+D0AC E4BA82
+D0AD E4BA85
+D0AE E8B1AB
+D0AF E4BA8A
+D0B0 E88892
+D0B1 E5BC8D
+D0B2 E4BA8E
+D0B3 E4BA9E
+D0B4 E4BA9F
+D0B5 E4BAA0
+D0B6 E4BAA2
+D0B7 E4BAB0
+D0B8 E4BAB3
+D0B9 E4BAB6
+D0BA E4BB8E
+D0BB E4BB8D
+D0BC E4BB84
+D0BD E4BB86
+D0BE E4BB82
+D0BF E4BB97
+D0C0 E4BB9E
+D0C1 E4BBAD
+D0C2 E4BB9F
+D0C3 E4BBB7
+D0C4 E4BC89
+D0C5 E4BD9A
+D0C6 E4BCB0
+D0C7 E4BD9B
+D0C8 E4BD9D
+D0C9 E4BD97
+D0CA E4BD87
+D0CB E4BDB6
+D0CC E4BE88
+D0CD E4BE8F
+D0CE E4BE98
+D0CF E4BDBB
+D0D0 E4BDA9
+D0D1 E4BDB0
+D0D2 E4BE91
+D0D3 E4BDAF
+D0D4 E4BE86
+D0D5 E4BE96
+D0D6 E58498
+D0D7 E4BF94
+D0D8 E4BF9F
+D0D9 E4BF8E
+D0DA E4BF98
+D0DB E4BF9B
+D0DC E4BF91
+D0DD E4BF9A
+D0DE E4BF90
+D0DF E4BFA4
+D0E0 E4BFA5
+D0E1 E5809A
+D0E2 E580A8
+D0E3 E58094
+D0E4 E580AA
+D0E5 E580A5
+D0E6 E58085
+D0E7 E4BC9C
+D0E8 E4BFB6
+D0E9 E580A1
+D0EA E580A9
+D0EB E580AC
+D0EC E4BFBE
+D0ED E4BFAF
+D0EE E58091
+D0EF E58086
+D0F0 E58183
+D0F1 E58187
+D0F2 E69C83
+D0F3 E58195
+D0F4 E58190
+D0F5 E58188
+D0F6 E5819A
+D0F7 E58196
+D0F8 E581AC
+D0F9 E581B8
+D0FA E58280
+D0FB E5829A
+D0FC E58285
+D0FD E582B4
+D0FE E582B2
+D1A1 E58389
+D1A2 E5838A
+D1A3 E582B3
+D1A4 E58382
+D1A5 E58396
+D1A6 E5839E
+D1A7 E583A5
+D1A8 E583AD
+D1A9 E583A3
+D1AA E583AE
+D1AB E583B9
+D1AC E583B5
+D1AD E58489
+D1AE E58481
+D1AF E58482
+D1B0 E58496
+D1B1 E58495
+D1B2 E58494
+D1B3 E5849A
+D1B4 E584A1
+D1B5 E584BA
+D1B6 E584B7
+D1B7 E584BC
+D1B8 E584BB
+D1B9 E584BF
+D1BA E58580
+D1BB E58592
+D1BC E5858C
+D1BD E58594
+D1BE E585A2
+D1BF E7ABB8
+D1C0 E585A9
+D1C1 E585AA
+D1C2 E585AE
+D1C3 E58680
+D1C4 E58682
+D1C5 E59B98
+D1C6 E5868C
+D1C7 E58689
+D1C8 E5868F
+D1C9 E58691
+D1CA E58693
+D1CB E58695
+D1CC E58696
+D1CD E586A4
+D1CE E586A6
+D1CF E586A2
+D1D0 E586A9
+D1D1 E586AA
+D1D2 E586AB
+D1D3 E586B3
+D1D4 E586B1
+D1D5 E586B2
+D1D6 E586B0
+D1D7 E586B5
+D1D8 E586BD
+D1D9 E58785
+D1DA E58789
+D1DB E5879B
+D1DC E587A0
+D1DD E89995
+D1DE E587A9
+D1DF E587AD
+D1E0 E587B0
+D1E1 E587B5
+D1E2 E587BE
+D1E3 E58884
+D1E4 E5888B
+D1E5 E58894
+D1E6 E5888E
+D1E7 E588A7
+D1E8 E588AA
+D1E9 E588AE
+D1EA E588B3
+D1EB E588B9
+D1EC E5898F
+D1ED E58984
+D1EE E5898B
+D1EF E5898C
+D1F0 E5899E
+D1F1 E58994
+D1F2 E589AA
+D1F3 E589B4
+D1F4 E589A9
+D1F5 E589B3
+D1F6 E589BF
+D1F7 E589BD
+D1F8 E58A8D
+D1F9 E58A94
+D1FA E58A92
+D1FB E589B1
+D1FC E58A88
+D1FD E58A91
+D1FE E8BEA8
+D2A1 E8BEA7
+D2A2 E58AAC
+D2A3 E58AAD
+D2A4 E58ABC
+D2A5 E58AB5
+D2A6 E58B81
+D2A7 E58B8D
+D2A8 E58B97
+D2A9 E58B9E
+D2AA E58BA3
+D2AB E58BA6
+D2AC E9A3AD
+D2AD E58BA0
+D2AE E58BB3
+D2AF E58BB5
+D2B0 E58BB8
+D2B1 E58BB9
+D2B2 E58C86
+D2B3 E58C88
+D2B4 E794B8
+D2B5 E58C8D
+D2B6 E58C90
+D2B7 E58C8F
+D2B8 E58C95
+D2B9 E58C9A
+D2BA E58CA3
+D2BB E58CAF
+D2BC E58CB1
+D2BD E58CB3
+D2BE E58CB8
+D2BF E58D80
+D2C0 E58D86
+D2C1 E58D85
+D2C2 E4B897
+D2C3 E58D89
+D2C4 E58D8D
+D2C5 E58796
+D2C6 E58D9E
+D2C7 E58DA9
+D2C8 E58DAE
+D2C9 E5A498
+D2CA E58DBB
+D2CB E58DB7
+D2CC E58E82
+D2CD E58E96
+D2CE E58EA0
+D2CF E58EA6
+D2D0 E58EA5
+D2D1 E58EAE
+D2D2 E58EB0
+D2D3 E58EB6
+D2D4 E58F83
+D2D5 E7B092
+D2D6 E99B99
+D2D7 E58F9F
+D2D8 E69BBC
+D2D9 E787AE
+D2DA E58FAE
+D2DB E58FA8
+D2DC E58FAD
+D2DD E58FBA
+D2DE E59081
+D2DF E590BD
+D2E0 E59180
+D2E1 E590AC
+D2E2 E590AD
+D2E3 E590BC
+D2E4 E590AE
+D2E5 E590B6
+D2E6 E590A9
+D2E7 E5909D
+D2E8 E5918E
+D2E9 E5928F
+D2EA E591B5
+D2EB E5928E
+D2EC E5919F
+D2ED E591B1
+D2EE E591B7
+D2EF E591B0
+D2F0 E59292
+D2F1 E591BB
+D2F2 E59280
+D2F3 E591B6
+D2F4 E59284
+D2F5 E59290
+D2F6 E59286
+D2F7 E59387
+D2F8 E592A2
+D2F9 E592B8
+D2FA E592A5
+D2FB E592AC
+D2FC E59384
+D2FD E59388
+D2FE E592A8
+D3A1 E592AB
+D3A2 E59382
+D3A3 E592A4
+D3A4 E592BE
+D3A5 E592BC
+D3A6 E59398
+D3A7 E593A5
+D3A8 E593A6
+D3A9 E5948F
+D3AA E59494
+D3AB E593BD
+D3AC E593AE
+D3AD E593AD
+D3AE E593BA
+D3AF E593A2
+D3B0 E594B9
+D3B1 E59580
+D3B2 E595A3
+D3B3 E5958C
+D3B4 E594AE
+D3B5 E5959C
+D3B6 E59585
+D3B7 E59596
+D3B8 E59597
+D3B9 E594B8
+D3BA E594B3
+D3BB E5959D
+D3BC E59699
+D3BD E59680
+D3BE E592AF
+D3BF E5968A
+D3C0 E5969F
+D3C1 E595BB
+D3C2 E595BE
+D3C3 E59698
+D3C4 E5969E
+D3C5 E596AE
+D3C6 E595BC
+D3C7 E59683
+D3C8 E596A9
+D3C9 E59687
+D3CA E596A8
+D3CB E5979A
+D3CC E59785
+D3CD E5979F
+D3CE E59784
+D3CF E5979C
+D3D0 E597A4
+D3D1 E59794
+D3D2 E59894
+D3D3 E597B7
+D3D4 E59896
+D3D5 E597BE
+D3D6 E597BD
+D3D7 E5989B
+D3D8 E597B9
+D3D9 E5998E
+D3DA E59990
+D3DB E7879F
+D3DC E598B4
+D3DD E598B6
+D3DE E598B2
+D3DF E598B8
+D3E0 E599AB
+D3E1 E599A4
+D3E2 E598AF
+D3E3 E599AC
+D3E4 E599AA
+D3E5 E59A86
+D3E6 E59A80
+D3E7 E59A8A
+D3E8 E59AA0
+D3E9 E59A94
+D3EA E59A8F
+D3EB E59AA5
+D3EC E59AAE
+D3ED E59AB6
+D3EE E59AB4
+D3EF E59B82
+D3F0 E59ABC
+D3F1 E59B81
+D3F2 E59B83
+D3F3 E59B80
+D3F4 E59B88
+D3F5 E59B8E
+D3F6 E59B91
+D3F7 E59B93
+D3F8 E59B97
+D3F9 E59BAE
+D3FA E59BB9
+D3FB E59C80
+D3FC E59BBF
+D3FD E59C84
+D3FE E59C89
+D4A1 E59C88
+D4A2 E59C8B
+D4A3 E59C8D
+D4A4 E59C93
+D4A5 E59C98
+D4A6 E59C96
+D4A7 E59787
+D4A8 E59C9C
+D4A9 E59CA6
+D4AA E59CB7
+D4AB E59CB8
+D4AC E59D8E
+D4AD E59CBB
+D4AE E59D80
+D4AF E59D8F
+D4B0 E59DA9
+D4B1 E59F80
+D4B2 E59E88
+D4B3 E59DA1
+D4B4 E59DBF
+D4B5 E59E89
+D4B6 E59E93
+D4B7 E59EA0
+D4B8 E59EB3
+D4B9 E59EA4
+D4BA E59EAA
+D4BB E59EB0
+D4BC E59F83
+D4BD E59F86
+D4BE E59F94
+D4BF E59F92
+D4C0 E59F93
+D4C1 E5A08A
+D4C2 E59F96
+D4C3 E59FA3
+D4C4 E5A08B
+D4C5 E5A099
+D4C6 E5A09D
+D4C7 E5A1B2
+D4C8 E5A0A1
+D4C9 E5A1A2
+D4CA E5A18B
+D4CB E5A1B0
+D4CC E6AF80
+D4CD E5A192
+D4CE E5A0BD
+D4CF E5A1B9
+D4D0 E5A285
+D4D1 E5A2B9
+D4D2 E5A29F
+D4D3 E5A2AB
+D4D4 E5A2BA
+D4D5 E5A39E
+D4D6 E5A2BB
+D4D7 E5A2B8
+D4D8 E5A2AE
+D4D9 E5A385
+D4DA E5A393
+D4DB E5A391
+D4DC E5A397
+D4DD E5A399
+D4DE E5A398
+D4DF E5A3A5
+D4E0 E5A39C
+D4E1 E5A3A4
+D4E2 E5A39F
+D4E3 E5A3AF
+D4E4 E5A3BA
+D4E5 E5A3B9
+D4E6 E5A3BB
+D4E7 E5A3BC
+D4E8 E5A3BD
+D4E9 E5A482
+D4EA E5A48A
+D4EB E5A490
+D4EC E5A49B
+D4ED E6A2A6
+D4EE E5A4A5
+D4EF E5A4AC
+D4F0 E5A4AD
+D4F1 E5A4B2
+D4F2 E5A4B8
+D4F3 E5A4BE
+D4F4 E7AB92
+D4F5 E5A595
+D4F6 E5A590
+D4F7 E5A58E
+D4F8 E5A59A
+D4F9 E5A598
+D4FA E5A5A2
+D4FB E5A5A0
+D4FC E5A5A7
+D4FD E5A5AC
+D4FE E5A5A9
+D5A1 E5A5B8
+D5A2 E5A681
+D5A3 E5A69D
+D5A4 E4BD9E
+D5A5 E4BEAB
+D5A6 E5A6A3
+D5A7 E5A6B2
+D5A8 E5A786
+D5A9 E5A7A8
+D5AA E5A79C
+D5AB E5A68D
+D5AC E5A799
+D5AD E5A79A
+D5AE E5A8A5
+D5AF E5A89F
+D5B0 E5A891
+D5B1 E5A89C
+D5B2 E5A889
+D5B3 E5A89A
+D5B4 E5A980
+D5B5 E5A9AC
+D5B6 E5A989
+D5B7 E5A8B5
+D5B8 E5A8B6
+D5B9 E5A9A2
+D5BA E5A9AA
+D5BB E5AA9A
+D5BC E5AABC
+D5BD E5AABE
+D5BE E5AB8B
+D5BF E5AB82
+D5C0 E5AABD
+D5C1 E5ABA3
+D5C2 E5AB97
+D5C3 E5ABA6
+D5C4 E5ABA9
+D5C5 E5AB96
+D5C6 E5ABBA
+D5C7 E5ABBB
+D5C8 E5AC8C
+D5C9 E5AC8B
+D5CA E5AC96
+D5CB E5ACB2
+D5CC E5AB90
+D5CD E5ACAA
+D5CE E5ACB6
+D5CF E5ACBE
+D5D0 E5AD83
+D5D1 E5AD85
+D5D2 E5AD80
+D5D3 E5AD91
+D5D4 E5AD95
+D5D5 E5AD9A
+D5D6 E5AD9B
+D5D7 E5ADA5
+D5D8 E5ADA9
+D5D9 E5ADB0
+D5DA E5ADB3
+D5DB E5ADB5
+D5DC E5ADB8
+D5DD E69688
+D5DE E5ADBA
+D5DF E5AE80
+D5E0 E5AE83
+D5E1 E5AEA6
+D5E2 E5AEB8
+D5E3 E5AF83
+D5E4 E5AF87
+D5E5 E5AF89
+D5E6 E5AF94
+D5E7 E5AF90
+D5E8 E5AFA4
+D5E9 E5AFA6
+D5EA E5AFA2
+D5EB E5AF9E
+D5EC E5AFA5
+D5ED E5AFAB
+D5EE E5AFB0
+D5EF E5AFB6
+D5F0 E5AFB3
+D5F1 E5B085
+D5F2 E5B087
+D5F3 E5B088
+D5F4 E5B08D
+D5F5 E5B093
+D5F6 E5B0A0
+D5F7 E5B0A2
+D5F8 E5B0A8
+D5F9 E5B0B8
+D5FA E5B0B9
+D5FB E5B181
+D5FC E5B186
+D5FD E5B18E
+D5FE E5B193
+D6A1 E5B190
+D6A2 E5B18F
+D6A3 E5ADB1
+D6A4 E5B1AC
+D6A5 E5B1AE
+D6A6 E4B9A2
+D6A7 E5B1B6
+D6A8 E5B1B9
+D6A9 E5B28C
+D6AA E5B291
+D6AB E5B294
+D6AC E5A69B
+D6AD E5B2AB
+D6AE E5B2BB
+D6AF E5B2B6
+D6B0 E5B2BC
+D6B1 E5B2B7
+D6B2 E5B385
+D6B3 E5B2BE
+D6B4 E5B387
+D6B5 E5B399
+D6B6 E5B3A9
+D6B7 E5B3BD
+D6B8 E5B3BA
+D6B9 E5B3AD
+D6BA E5B68C
+D6BB E5B3AA
+D6BC E5B48B
+D6BD E5B495
+D6BE E5B497
+D6BF E5B59C
+D6C0 E5B49F
+D6C1 E5B49B
+D6C2 E5B491
+D6C3 E5B494
+D6C4 E5B4A2
+D6C5 E5B49A
+D6C6 E5B499
+D6C7 E5B498
+D6C8 E5B58C
+D6C9 E5B592
+D6CA E5B58E
+D6CB E5B58B
+D6CC E5B5AC
+D6CD E5B5B3
+D6CE E5B5B6
+D6CF E5B687
+D6D0 E5B684
+D6D1 E5B682
+D6D2 E5B6A2
+D6D3 E5B69D
+D6D4 E5B6AC
+D6D5 E5B6AE
+D6D6 E5B6BD
+D6D7 E5B690
+D6D8 E5B6B7
+D6D9 E5B6BC
+D6DA E5B789
+D6DB E5B78D
+D6DC E5B793
+D6DD E5B792
+D6DE E5B796
+D6DF E5B79B
+D6E0 E5B7AB
+D6E1 E5B7B2
+D6E2 E5B7B5
+D6E3 E5B88B
+D6E4 E5B89A
+D6E5 E5B899
+D6E6 E5B891
+D6E7 E5B89B
+D6E8 E5B8B6
+D6E9 E5B8B7
+D6EA E5B984
+D6EB E5B983
+D6EC E5B980
+D6ED E5B98E
+D6EE E5B997
+D6EF E5B994
+D6F0 E5B99F
+D6F1 E5B9A2
+D6F2 E5B9A4
+D6F3 E5B987
+D6F4 E5B9B5
+D6F5 E5B9B6
+D6F6 E5B9BA
+D6F7 E9BABC
+D6F8 E5B9BF
+D6F9 E5BAA0
+D6FA E5BB81
+D6FB E5BB82
+D6FC E5BB88
+D6FD E5BB90
+D6FE E5BB8F
+D7A1 E5BB96
+D7A2 E5BBA3
+D7A3 E5BB9D
+D7A4 E5BB9A
+D7A5 E5BB9B
+D7A6 E5BBA2
+D7A7 E5BBA1
+D7A8 E5BBA8
+D7A9 E5BBA9
+D7AA E5BBAC
+D7AB E5BBB1
+D7AC E5BBB3
+D7AD E5BBB0
+D7AE E5BBB4
+D7AF E5BBB8
+D7B0 E5BBBE
+D7B1 E5BC83
+D7B2 E5BC89
+D7B3 E5BD9D
+D7B4 E5BD9C
+D7B5 E5BC8B
+D7B6 E5BC91
+D7B7 E5BC96
+D7B8 E5BCA9
+D7B9 E5BCAD
+D7BA E5BCB8
+D7BB E5BD81
+D7BC E5BD88
+D7BD E5BD8C
+D7BE E5BD8E
+D7BF E5BCAF
+D7C0 E5BD91
+D7C1 E5BD96
+D7C2 E5BD97
+D7C3 E5BD99
+D7C4 E5BDA1
+D7C5 E5BDAD
+D7C6 E5BDB3
+D7C7 E5BDB7
+D7C8 E5BE83
+D7C9 E5BE82
+D7CA E5BDBF
+D7CB E5BE8A
+D7CC E5BE88
+D7CD E5BE91
+D7CE E5BE87
+D7CF E5BE9E
+D7D0 E5BE99
+D7D1 E5BE98
+D7D2 E5BEA0
+D7D3 E5BEA8
+D7D4 E5BEAD
+D7D5 E5BEBC
+D7D6 E5BF96
+D7D7 E5BFBB
+D7D8 E5BFA4
+D7D9 E5BFB8
+D7DA E5BFB1
+D7DB E5BF9D
+D7DC E682B3
+D7DD E5BFBF
+D7DE E680A1
+D7DF E681A0
+D7E0 E68099
+D7E1 E68090
+D7E2 E680A9
+D7E3 E6808E
+D7E4 E680B1
+D7E5 E6809B
+D7E6 E68095
+D7E7 E680AB
+D7E8 E680A6
+D7E9 E6808F
+D7EA E680BA
+D7EB E6819A
+D7EC E68181
+D7ED E681AA
+D7EE E681B7
+D7EF E6819F
+D7F0 E6818A
+D7F1 E68186
+D7F2 E6818D
+D7F3 E681A3
+D7F4 E68183
+D7F5 E681A4
+D7F6 E68182
+D7F7 E681AC
+D7F8 E681AB
+D7F9 E68199
+D7FA E68281
+D7FB E6828D
+D7FC E683A7
+D7FD E68283
+D7FE E6829A
+D8A1 E68284
+D8A2 E6829B
+D8A3 E68296
+D8A4 E68297
+D8A5 E68292
+D8A6 E682A7
+D8A7 E6828B
+D8A8 E683A1
+D8A9 E682B8
+D8AA E683A0
+D8AB E68393
+D8AC E682B4
+D8AD E5BFB0
+D8AE E682BD
+D8AF E68386
+D8B0 E682B5
+D8B1 E68398
+D8B2 E6858D
+D8B3 E68495
+D8B4 E68486
+D8B5 E683B6
+D8B6 E683B7
+D8B7 E68480
+D8B8 E683B4
+D8B9 E683BA
+D8BA E68483
+D8BB E684A1
+D8BC E683BB
+D8BD E683B1
+D8BE E6848D
+D8BF E6848E
+D8C0 E68587
+D8C1 E684BE
+D8C2 E684A8
+D8C3 E684A7
+D8C4 E6858A
+D8C5 E684BF
+D8C6 E684BC
+D8C7 E684AC
+D8C8 E684B4
+D8C9 E684BD
+D8CA E68582
+D8CB E68584
+D8CC E685B3
+D8CD E685B7
+D8CE E68598
+D8CF E68599
+D8D0 E6859A
+D8D1 E685AB
+D8D2 E685B4
+D8D3 E685AF
+D8D4 E685A5
+D8D5 E685B1
+D8D6 E6859F
+D8D7 E6859D
+D8D8 E68593
+D8D9 E685B5
+D8DA E68699
+D8DB E68696
+D8DC E68687
+D8DD E686AC
+D8DE E68694
+D8DF E6869A
+D8E0 E6868A
+D8E1 E68691
+D8E2 E686AB
+D8E3 E686AE
+D8E4 E6878C
+D8E5 E6878A
+D8E6 E68789
+D8E7 E687B7
+D8E8 E68788
+D8E9 E68783
+D8EA E68786
+D8EB E686BA
+D8EC E6878B
+D8ED E7BDB9
+D8EE E6878D
+D8EF E687A6
+D8F0 E687A3
+D8F1 E687B6
+D8F2 E687BA
+D8F3 E687B4
+D8F4 E687BF
+D8F5 E687BD
+D8F6 E687BC
+D8F7 E687BE
+D8F8 E68880
+D8F9 E68888
+D8FA E68889
+D8FB E6888D
+D8FC E6888C
+D8FD E68894
+D8FE E6889B
+D9A1 E6889E
+D9A2 E688A1
+D9A3 E688AA
+D9A4 E688AE
+D9A5 E688B0
+D9A6 E688B2
+D9A7 E688B3
+D9A8 E68981
+D9A9 E6898E
+D9AA E6899E
+D9AB E689A3
+D9AC E6899B
+D9AD E689A0
+D9AE E689A8
+D9AF E689BC
+D9B0 E68A82
+D9B1 E68A89
+D9B2 E689BE
+D9B3 E68A92
+D9B4 E68A93
+D9B5 E68A96
+D9B6 E68B94
+D9B7 E68A83
+D9B8 E68A94
+D9B9 E68B97
+D9BA E68B91
+D9BB E68ABB
+D9BC E68B8F
+D9BD E68BBF
+D9BE E68B86
+D9BF E69394
+D9C0 E68B88
+D9C1 E68B9C
+D9C2 E68B8C
+D9C3 E68B8A
+D9C4 E68B82
+D9C5 E68B87
+D9C6 E68A9B
+D9C7 E68B89
+D9C8 E68C8C
+D9C9 E68BAE
+D9CA E68BB1
+D9CB E68CA7
+D9CC E68C82
+D9CD E68C88
+D9CE E68BAF
+D9CF E68BB5
+D9D0 E68D90
+D9D1 E68CBE
+D9D2 E68D8D
+D9D3 E6909C
+D9D4 E68D8F
+D9D5 E68E96
+D9D6 E68E8E
+D9D7 E68E80
+D9D8 E68EAB
+D9D9 E68DB6
+D9DA E68EA3
+D9DB E68E8F
+D9DC E68E89
+D9DD E68E9F
+D9DE E68EB5
+D9DF E68DAB
+D9E0 E68DA9
+D9E1 E68EBE
+D9E2 E68FA9
+D9E3 E68F80
+D9E4 E68F86
+D9E5 E68FA3
+D9E6 E68F89
+D9E7 E68F92
+D9E8 E68FB6
+D9E9 E68F84
+D9EA E69096
+D9EB E690B4
+D9EC E69086
+D9ED E69093
+D9EE E690A6
+D9EF E690B6
+D9F0 E6949D
+D9F1 E69097
+D9F2 E690A8
+D9F3 E6908F
+D9F4 E691A7
+D9F5 E691AF
+D9F6 E691B6
+D9F7 E6918E
+D9F8 E694AA
+D9F9 E69295
+D9FA E69293
+D9FB E692A5
+D9FC E692A9
+D9FD E69288
+D9FE E692BC
+DAA1 E6939A
+DAA2 E69392
+DAA3 E69385
+DAA4 E69387
+DAA5 E692BB
+DAA6 E69398
+DAA7 E69382
+DAA8 E693B1
+DAA9 E693A7
+DAAA E88889
+DAAB E693A0
+DAAC E693A1
+DAAD E68AAC
+DAAE E693A3
+DAAF E693AF
+DAB0 E694AC
+DAB1 E693B6
+DAB2 E693B4
+DAB3 E693B2
+DAB4 E693BA
+DAB5 E69480
+DAB6 E693BD
+DAB7 E69498
+DAB8 E6949C
+DAB9 E69485
+DABA E694A4
+DABB E694A3
+DABC E694AB
+DABD E694B4
+DABE E694B5
+DABF E694B7
+DAC0 E694B6
+DAC1 E694B8
+DAC2 E7958B
+DAC3 E69588
+DAC4 E69596
+DAC5 E69595
+DAC6 E6958D
+DAC7 E69598
+DAC8 E6959E
+DAC9 E6959D
+DACA E695B2
+DACB E695B8
+DACC E69682
+DACD E69683
+DACE E8AE8A
+DACF E6969B
+DAD0 E6969F
+DAD1 E696AB
+DAD2 E696B7
+DAD3 E69783
+DAD4 E69786
+DAD5 E69781
+DAD6 E69784
+DAD7 E6978C
+DAD8 E69792
+DAD9 E6979B
+DADA E69799
+DADB E697A0
+DADC E697A1
+DADD E697B1
+DADE E69DB2
+DADF E6988A
+DAE0 E69883
+DAE1 E697BB
+DAE2 E69DB3
+DAE3 E698B5
+DAE4 E698B6
+DAE5 E698B4
+DAE6 E6989C
+DAE7 E6998F
+DAE8 E69984
+DAE9 E69989
+DAEA E69981
+DAEB E6999E
+DAEC E6999D
+DAED E699A4
+DAEE E699A7
+DAEF E699A8
+DAF0 E6999F
+DAF1 E699A2
+DAF2 E699B0
+DAF3 E69A83
+DAF4 E69A88
+DAF5 E69A8E
+DAF6 E69A89
+DAF7 E69A84
+DAF8 E69A98
+DAF9 E69A9D
+DAFA E69B81
+DAFB E69AB9
+DAFC E69B89
+DAFD E69ABE
+DAFE E69ABC
+DBA1 E69B84
+DBA2 E69AB8
+DBA3 E69B96
+DBA4 E69B9A
+DBA5 E69BA0
+DBA6 E698BF
+DBA7 E69BA6
+DBA8 E69BA9
+DBA9 E69BB0
+DBAA E69BB5
+DBAB E69BB7
+DBAC E69C8F
+DBAD E69C96
+DBAE E69C9E
+DBAF E69CA6
+DBB0 E69CA7
+DBB1 E99CB8
+DBB2 E69CAE
+DBB3 E69CBF
+DBB4 E69CB6
+DBB5 E69D81
+DBB6 E69CB8
+DBB7 E69CB7
+DBB8 E69D86
+DBB9 E69D9E
+DBBA E69DA0
+DBBB E69D99
+DBBC E69DA3
+DBBD E69DA4
+DBBE E69E89
+DBBF E69DB0
+DBC0 E69EA9
+DBC1 E69DBC
+DBC2 E69DAA
+DBC3 E69E8C
+DBC4 E69E8B
+DBC5 E69EA6
+DBC6 E69EA1
+DBC7 E69E85
+DBC8 E69EB7
+DBC9 E69FAF
+DBCA E69EB4
+DBCB E69FAC
+DBCC E69EB3
+DBCD E69FA9
+DBCE E69EB8
+DBCF E69FA4
+DBD0 E69F9E
+DBD1 E69F9D
+DBD2 E69FA2
+DBD3 E69FAE
+DBD4 E69EB9
+DBD5 E69F8E
+DBD6 E69F86
+DBD7 E69FA7
+DBD8 E6AA9C
+DBD9 E6A09E
+DBDA E6A186
+DBDB E6A0A9
+DBDC E6A180
+DBDD E6A18D
+DBDE E6A0B2
+DBDF E6A18E
+DBE0 E6A2B3
+DBE1 E6A0AB
+DBE2 E6A199
+DBE3 E6A1A3
+DBE4 E6A1B7
+DBE5 E6A1BF
+DBE6 E6A29F
+DBE7 E6A28F
+DBE8 E6A2AD
+DBE9 E6A294
+DBEA E6A29D
+DBEB E6A29B
+DBEC E6A283
+DBED E6AAAE
+DBEE E6A2B9
+DBEF E6A1B4
+DBF0 E6A2B5
+DBF1 E6A2A0
+DBF2 E6A2BA
+DBF3 E6A48F
+DBF4 E6A28D
+DBF5 E6A1BE
+DBF6 E6A481
+DBF7 E6A38A
+DBF8 E6A488
+DBF9 E6A398
+DBFA E6A4A2
+DBFB E6A4A6
+DBFC E6A3A1
+DBFD E6A48C
+DBFE E6A38D
+DCA1 E6A394
+DCA2 E6A3A7
+DCA3 E6A395
+DCA4 E6A4B6
+DCA5 E6A492
+DCA6 E6A484
+DCA7 E6A397
+DCA8 E6A3A3
+DCA9 E6A4A5
+DCAA E6A3B9
+DCAB E6A3A0
+DCAC E6A3AF
+DCAD E6A4A8
+DCAE E6A4AA
+DCAF E6A49A
+DCB0 E6A4A3
+DCB1 E6A4A1
+DCB2 E6A386
+DCB3 E6A5B9
+DCB4 E6A5B7
+DCB5 E6A59C
+DCB6 E6A5B8
+DCB7 E6A5AB
+DCB8 E6A594
+DCB9 E6A5BE
+DCBA E6A5AE
+DCBB E6A4B9
+DCBC E6A5B4
+DCBD E6A4BD
+DCBE E6A599
+DCBF E6A4B0
+DCC0 E6A5A1
+DCC1 E6A59E
+DCC2 E6A59D
+DCC3 E6A681
+DCC4 E6A5AA
+DCC5 E6A6B2
+DCC6 E6A6AE
+DCC7 E6A790
+DCC8 E6A6BF
+DCC9 E6A781
+DCCA E6A793
+DCCB E6A6BE
+DCCC E6A78E
+DCCD E5AFA8
+DCCE E6A78A
+DCCF E6A79D
+DCD0 E6A6BB
+DCD1 E6A783
+DCD2 E6A6A7
+DCD3 E6A8AE
+DCD4 E6A691
+DCD5 E6A6A0
+DCD6 E6A69C
+DCD7 E6A695
+DCD8 E6A6B4
+DCD9 E6A79E
+DCDA E6A7A8
+DCDB E6A882
+DCDC E6A89B
+DCDD E6A7BF
+DCDE E6AC8A
+DCDF E6A7B9
+DCE0 E6A7B2
+DCE1 E6A7A7
+DCE2 E6A885
+DCE3 E6A6B1
+DCE4 E6A89E
+DCE5 E6A7AD
+DCE6 E6A894
+DCE7 E6A7AB
+DCE8 E6A88A
+DCE9 E6A892
+DCEA E6AB81
+DCEB E6A8A3
+DCEC E6A893
+DCED E6A984
+DCEE E6A88C
+DCEF E6A9B2
+DCF0 E6A8B6
+DCF1 E6A9B8
+DCF2 E6A987
+DCF3 E6A9A2
+DCF4 E6A999
+DCF5 E6A9A6
+DCF6 E6A988
+DCF7 E6A8B8
+DCF8 E6A8A2
+DCF9 E6AA90
+DCFA E6AA8D
+DCFB E6AAA0
+DCFC E6AA84
+DCFD E6AAA2
+DCFE E6AAA3
+DDA1 E6AA97
+DDA2 E89897
+DDA3 E6AABB
+DDA4 E6AB83
+DDA5 E6AB82
+DDA6 E6AAB8
+DDA7 E6AAB3
+DDA8 E6AAAC
+DDA9 E6AB9E
+DDAA E6AB91
+DDAB E6AB9F
+DDAC E6AAAA
+DDAD E6AB9A
+DDAE E6ABAA
+DDAF E6ABBB
+DDB0 E6AC85
+DDB1 E89896
+DDB2 E6ABBA
+DDB3 E6AC92
+DDB4 E6AC96
+DDB5 E9ACB1
+DDB6 E6AC9F
+DDB7 E6ACB8
+DDB8 E6ACB7
+DDB9 E79B9C
+DDBA E6ACB9
+DDBB E9A3AE
+DDBC E6AD87
+DDBD E6AD83
+DDBE E6AD89
+DDBF E6AD90
+DDC0 E6AD99
+DDC1 E6AD94
+DDC2 E6AD9B
+DDC3 E6AD9F
+DDC4 E6ADA1
+DDC5 E6ADB8
+DDC6 E6ADB9
+DDC7 E6ADBF
+DDC8 E6AE80
+DDC9 E6AE84
+DDCA E6AE83
+DDCB E6AE8D
+DDCC E6AE98
+DDCD E6AE95
+DDCE E6AE9E
+DDCF E6AEA4
+DDD0 E6AEAA
+DDD1 E6AEAB
+DDD2 E6AEAF
+DDD3 E6AEB2
+DDD4 E6AEB1
+DDD5 E6AEB3
+DDD6 E6AEB7
+DDD7 E6AEBC
+DDD8 E6AF86
+DDD9 E6AF8B
+DDDA E6AF93
+DDDB E6AF9F
+DDDC E6AFAC
+DDDD E6AFAB
+DDDE E6AFB3
+DDDF E6AFAF
+DDE0 E9BABE
+DDE1 E6B088
+DDE2 E6B093
+DDE3 E6B094
+DDE4 E6B09B
+DDE5 E6B0A4
+DDE6 E6B0A3
+DDE7 E6B19E
+DDE8 E6B195
+DDE9 E6B1A2
+DDEA E6B1AA
+DDEB E6B282
+DDEC E6B28D
+DDED E6B29A
+DDEE E6B281
+DDEF E6B29B
+DDF0 E6B1BE
+DDF1 E6B1A8
+DDF2 E6B1B3
+DDF3 E6B292
+DDF4 E6B290
+DDF5 E6B384
+DDF6 E6B3B1
+DDF7 E6B393
+DDF8 E6B2BD
+DDF9 E6B397
+DDFA E6B385
+DDFB E6B39D
+DDFC E6B2AE
+DDFD E6B2B1
+DDFE E6B2BE
+DEA1 E6B2BA
+DEA2 E6B39B
+DEA3 E6B3AF
+DEA4 E6B399
+DEA5 E6B3AA
+DEA6 E6B49F
+DEA7 E8A18D
+DEA8 E6B4B6
+DEA9 E6B4AB
+DEAA E6B4BD
+DEAB E6B4B8
+DEAC E6B499
+DEAD E6B4B5
+DEAE E6B4B3
+DEAF E6B492
+DEB0 E6B48C
+DEB1 E6B5A3
+DEB2 E6B693
+DEB3 E6B5A4
+DEB4 E6B59A
+DEB5 E6B5B9
+DEB6 E6B599
+DEB7 E6B68E
+DEB8 E6B695
+DEB9 E6BFA4
+DEBA E6B685
+DEBB E6B7B9
+DEBC E6B895
+DEBD E6B88A
+DEBE E6B6B5
+DEBF E6B787
+DEC0 E6B7A6
+DEC1 E6B6B8
+DEC2 E6B786
+DEC3 E6B7AC
+DEC4 E6B79E
+DEC5 E6B78C
+DEC6 E6B7A8
+DEC7 E6B792
+DEC8 E6B785
+DEC9 E6B7BA
+DECA E6B799
+DECB E6B7A4
+DECC E6B795
+DECD E6B7AA
+DECE E6B7AE
+DECF E6B8AD
+DED0 E6B9AE
+DED1 E6B8AE
+DED2 E6B899
+DED3 E6B9B2
+DED4 E6B99F
+DED5 E6B8BE
+DED6 E6B8A3
+DED7 E6B9AB
+DED8 E6B8AB
+DED9 E6B9B6
+DEDA E6B98D
+DEDB E6B89F
+DEDC E6B983
+DEDD E6B8BA
+DEDE E6B98E
+DEDF E6B8A4
+DEE0 E6BBBF
+DEE1 E6B89D
+DEE2 E6B8B8
+DEE3 E6BA82
+DEE4 E6BAAA
+DEE5 E6BA98
+DEE6 E6BB89
+DEE7 E6BAB7
+DEE8 E6BB93
+DEE9 E6BABD
+DEEA E6BAAF
+DEEB E6BB84
+DEEC E6BAB2
+DEED E6BB94
+DEEE E6BB95
+DEEF E6BA8F
+DEF0 E6BAA5
+DEF1 E6BB82
+DEF2 E6BA9F
+DEF3 E6BD81
+DEF4 E6BC91
+DEF5 E7818C
+DEF6 E6BBAC
+DEF7 E6BBB8
+DEF8 E6BBBE
+DEF9 E6BCBF
+DEFA E6BBB2
+DEFB E6BCB1
+DEFC E6BBAF
+DEFD E6BCB2
+DEFE E6BB8C
+DFA1 E6BCBE
+DFA2 E6BC93
+DFA3 E6BBB7
+DFA4 E6BE86
+DFA5 E6BDBA
+DFA6 E6BDB8
+DFA7 E6BE81
+DFA8 E6BE80
+DFA9 E6BDAF
+DFAA E6BD9B
+DFAB E6BFB3
+DFAC E6BDAD
+DFAD E6BE82
+DFAE E6BDBC
+DFAF E6BD98
+DFB0 E6BE8E
+DFB1 E6BE91
+DFB2 E6BF82
+DFB3 E6BDA6
+DFB4 E6BEB3
+DFB5 E6BEA3
+DFB6 E6BEA1
+DFB7 E6BEA4
+DFB8 E6BEB9
+DFB9 E6BF86
+DFBA E6BEAA
+DFBB E6BF9F
+DFBC E6BF95
+DFBD E6BFAC
+DFBE E6BF94
+DFBF E6BF98
+DFC0 E6BFB1
+DFC1 E6BFAE
+DFC2 E6BF9B
+DFC3 E78089
+DFC4 E7808B
+DFC5 E6BFBA
+DFC6 E78091
+DFC7 E78081
+DFC8 E7808F
+DFC9 E6BFBE
+DFCA E7809B
+DFCB E7809A
+DFCC E6BDB4
+DFCD E7809D
+DFCE E78098
+DFCF E7809F
+DFD0 E780B0
+DFD1 E780BE
+DFD2 E780B2
+DFD3 E78191
+DFD4 E781A3
+DFD5 E78299
+DFD6 E78292
+DFD7 E782AF
+DFD8 E783B1
+DFD9 E782AC
+DFDA E782B8
+DFDB E782B3
+DFDC E782AE
+DFDD E7839F
+DFDE E7838B
+DFDF E7839D
+DFE0 E78399
+DFE1 E78489
+DFE2 E783BD
+DFE3 E7849C
+DFE4 E78499
+DFE5 E785A5
+DFE6 E78595
+DFE7 E78688
+DFE8 E785A6
+DFE9 E785A2
+DFEA E7858C
+DFEB E78596
+DFEC E785AC
+DFED E7868F
+DFEE E787BB
+DFEF E78684
+DFF0 E78695
+DFF1 E786A8
+DFF2 E786AC
+DFF3 E78797
+DFF4 E786B9
+DFF5 E786BE
+DFF6 E78792
+DFF7 E78789
+DFF8 E78794
+DFF9 E7878E
+DFFA E787A0
+DFFB E787AC
+DFFC E787A7
+DFFD E787B5
+DFFE E787BC
+E0A1 E787B9
+E0A2 E787BF
+E0A3 E7888D
+E0A4 E78890
+E0A5 E7889B
+E0A6 E788A8
+E0A7 E788AD
+E0A8 E788AC
+E0A9 E788B0
+E0AA E788B2
+E0AB E788BB
+E0AC E788BC
+E0AD E788BF
+E0AE E78980
+E0AF E78986
+E0B0 E7898B
+E0B1 E78998
+E0B2 E789B4
+E0B3 E789BE
+E0B4 E78A82
+E0B5 E78A81
+E0B6 E78A87
+E0B7 E78A92
+E0B8 E78A96
+E0B9 E78AA2
+E0BA E78AA7
+E0BB E78AB9
+E0BC E78AB2
+E0BD E78B83
+E0BE E78B86
+E0BF E78B84
+E0C0 E78B8E
+E0C1 E78B92
+E0C2 E78BA2
+E0C3 E78BA0
+E0C4 E78BA1
+E0C5 E78BB9
+E0C6 E78BB7
+E0C7 E5808F
+E0C8 E78C97
+E0C9 E78C8A
+E0CA E78C9C
+E0CB E78C96
+E0CC E78C9D
+E0CD E78CB4
+E0CE E78CAF
+E0CF E78CA9
+E0D0 E78CA5
+E0D1 E78CBE
+E0D2 E78D8E
+E0D3 E78D8F
+E0D4 E9BB98
+E0D5 E78D97
+E0D6 E78DAA
+E0D7 E78DA8
+E0D8 E78DB0
+E0D9 E78DB8
+E0DA E78DB5
+E0DB E78DBB
+E0DC E78DBA
+E0DD E78F88
+E0DE E78EB3
+E0DF E78F8E
+E0E0 E78EBB
+E0E1 E78F80
+E0E2 E78FA5
+E0E3 E78FAE
+E0E4 E78F9E
+E0E5 E792A2
+E0E6 E79085
+E0E7 E791AF
+E0E8 E790A5
+E0E9 E78FB8
+E0EA E790B2
+E0EB E790BA
+E0EC E79195
+E0ED E790BF
+E0EE E7919F
+E0EF E79199
+E0F0 E79181
+E0F1 E7919C
+E0F2 E791A9
+E0F3 E791B0
+E0F4 E791A3
+E0F5 E791AA
+E0F6 E791B6
+E0F7 E791BE
+E0F8 E7928B
+E0F9 E7929E
+E0FA E792A7
+E0FB E7938A
+E0FC E7938F
+E0FD E79394
+E0FE E78FB1
+E1A1 E793A0
+E1A2 E793A3
+E1A3 E793A7
+E1A4 E793A9
+E1A5 E793AE
+E1A6 E793B2
+E1A7 E793B0
+E1A8 E793B1
+E1A9 E793B8
+E1AA E793B7
+E1AB E79484
+E1AC E79483
+E1AD E79485
+E1AE E7948C
+E1AF E7948E
+E1B0 E7948D
+E1B1 E79495
+E1B2 E79493
+E1B3 E7949E
+E1B4 E794A6
+E1B5 E794AC
+E1B6 E794BC
+E1B7 E79584
+E1B8 E7958D
+E1B9 E7958A
+E1BA E79589
+E1BB E7959B
+E1BC E79586
+E1BD E7959A
+E1BE E795A9
+E1BF E795A4
+E1C0 E795A7
+E1C1 E795AB
+E1C2 E795AD
+E1C3 E795B8
+E1C4 E795B6
+E1C5 E79686
+E1C6 E79687
+E1C7 E795B4
+E1C8 E7968A
+E1C9 E79689
+E1CA E79682
+E1CB E79694
+E1CC E7969A
+E1CD E7969D
+E1CE E796A5
+E1CF E796A3
+E1D0 E79782
+E1D1 E796B3
+E1D2 E79783
+E1D3 E796B5
+E1D4 E796BD
+E1D5 E796B8
+E1D6 E796BC
+E1D7 E796B1
+E1D8 E7978D
+E1D9 E7978A
+E1DA E79792
+E1DB E79799
+E1DC E797A3
+E1DD E7979E
+E1DE E797BE
+E1DF E797BF
+E1E0 E797BC
+E1E1 E79881
+E1E2 E797B0
+E1E3 E797BA
+E1E4 E797B2
+E1E5 E797B3
+E1E6 E7988B
+E1E7 E7988D
+E1E8 E79889
+E1E9 E7989F
+E1EA E798A7
+E1EB E798A0
+E1EC E798A1
+E1ED E798A2
+E1EE E798A4
+E1EF E798B4
+E1F0 E798B0
+E1F1 E798BB
+E1F2 E79987
+E1F3 E79988
+E1F4 E79986
+E1F5 E7999C
+E1F6 E79998
+E1F7 E799A1
+E1F8 E799A2
+E1F9 E799A8
+E1FA E799A9
+E1FB E799AA
+E1FC E799A7
+E1FD E799AC
+E1FE E799B0
+E2A1 E799B2
+E2A2 E799B6
+E2A3 E799B8
+E2A4 E799BC
+E2A5 E79A80
+E2A6 E79A83
+E2A7 E79A88
+E2A8 E79A8B
+E2A9 E79A8E
+E2AA E79A96
+E2AB E79A93
+E2AC E79A99
+E2AD E79A9A
+E2AE E79AB0
+E2AF E79AB4
+E2B0 E79AB8
+E2B1 E79AB9
+E2B2 E79ABA
+E2B3 E79B82
+E2B4 E79B8D
+E2B5 E79B96
+E2B6 E79B92
+E2B7 E79B9E
+E2B8 E79BA1
+E2B9 E79BA5
+E2BA E79BA7
+E2BB E79BAA
+E2BC E898AF
+E2BD E79BBB
+E2BE E79C88
+E2BF E79C87
+E2C0 E79C84
+E2C1 E79CA9
+E2C2 E79CA4
+E2C3 E79C9E
+E2C4 E79CA5
+E2C5 E79CA6
+E2C6 E79C9B
+E2C7 E79CB7
+E2C8 E79CB8
+E2C9 E79D87
+E2CA E79D9A
+E2CB E79DA8
+E2CC E79DAB
+E2CD E79D9B
+E2CE E79DA5
+E2CF E79DBF
+E2D0 E79DBE
+E2D1 E79DB9
+E2D2 E79E8E
+E2D3 E79E8B
+E2D4 E79E91
+E2D5 E79EA0
+E2D6 E79E9E
+E2D7 E79EB0
+E2D8 E79EB6
+E2D9 E79EB9
+E2DA E79EBF
+E2DB E79EBC
+E2DC E79EBD
+E2DD E79EBB
+E2DE E79F87
+E2DF E79F8D
+E2E0 E79F97
+E2E1 E79F9A
+E2E2 E79F9C
+E2E3 E79FA3
+E2E4 E79FAE
+E2E5 E79FBC
+E2E6 E7A08C
+E2E7 E7A092
+E2E8 E7A4A6
+E2E9 E7A0A0
+E2EA E7A4AA
+E2EB E7A185
+E2EC E7A28E
+E2ED E7A1B4
+E2EE E7A286
+E2EF E7A1BC
+E2F0 E7A29A
+E2F1 E7A28C
+E2F2 E7A2A3
+E2F3 E7A2B5
+E2F4 E7A2AA
+E2F5 E7A2AF
+E2F6 E7A391
+E2F7 E7A386
+E2F8 E7A38B
+E2F9 E7A394
+E2FA E7A2BE
+E2FB E7A2BC
+E2FC E7A385
+E2FD E7A38A
+E2FE E7A3AC
+E3A1 E7A3A7
+E3A2 E7A39A
+E3A3 E7A3BD
+E3A4 E7A3B4
+E3A5 E7A487
+E3A6 E7A492
+E3A7 E7A491
+E3A8 E7A499
+E3A9 E7A4AC
+E3AA E7A4AB
+E3AB E7A580
+E3AC E7A5A0
+E3AD E7A597
+E3AE E7A59F
+E3AF E7A59A
+E3B0 E7A595
+E3B1 E7A593
+E3B2 E7A5BA
+E3B3 E7A5BF
+E3B4 E7A68A
+E3B5 E7A69D
+E3B6 E7A6A7
+E3B7 E9BD8B
+E3B8 E7A6AA
+E3B9 E7A6AE
+E3BA E7A6B3
+E3BB E7A6B9
+E3BC E7A6BA
+E3BD E7A789
+E3BE E7A795
+E3BF E7A7A7
+E3C0 E7A7AC
+E3C1 E7A7A1
+E3C2 E7A7A3
+E3C3 E7A888
+E3C4 E7A88D
+E3C5 E7A898
+E3C6 E7A899
+E3C7 E7A8A0
+E3C8 E7A89F
+E3C9 E7A680
+E3CA E7A8B1
+E3CB E7A8BB
+E3CC E7A8BE
+E3CD E7A8B7
+E3CE E7A983
+E3CF E7A997
+E3D0 E7A989
+E3D1 E7A9A1
+E3D2 E7A9A2
+E3D3 E7A9A9
+E3D4 E9BE9D
+E3D5 E7A9B0
+E3D6 E7A9B9
+E3D7 E7A9BD
+E3D8 E7AA88
+E3D9 E7AA97
+E3DA E7AA95
+E3DB E7AA98
+E3DC E7AA96
+E3DD E7AAA9
+E3DE E7AB88
+E3DF E7AAB0
+E3E0 E7AAB6
+E3E1 E7AB85
+E3E2 E7AB84
+E3E3 E7AABF
+E3E4 E98283
+E3E5 E7AB87
+E3E6 E7AB8A
+E3E7 E7AB8D
+E3E8 E7AB8F
+E3E9 E7AB95
+E3EA E7AB93
+E3EB E7AB99
+E3EC E7AB9A
+E3ED E7AB9D
+E3EE E7ABA1
+E3EF E7ABA2
+E3F0 E7ABA6
+E3F1 E7ABAD
+E3F2 E7ABB0
+E3F3 E7AC82
+E3F4 E7AC8F
+E3F5 E7AC8A
+E3F6 E7AC86
+E3F7 E7ACB3
+E3F8 E7AC98
+E3F9 E7AC99
+E3FA E7AC9E
+E3FB E7ACB5
+E3FC E7ACA8
+E3FD E7ACB6
+E3FE E7AD90
+E4A1 E7ADBA
+E4A2 E7AC84
+E4A3 E7AD8D
+E4A4 E7AC8B
+E4A5 E7AD8C
+E4A6 E7AD85
+E4A7 E7ADB5
+E4A8 E7ADA5
+E4A9 E7ADB4
+E4AA E7ADA7
+E4AB E7ADB0
+E4AC E7ADB1
+E4AD E7ADAC
+E4AE E7ADAE
+E4AF E7AE9D
+E4B0 E7AE98
+E4B1 E7AE9F
+E4B2 E7AE8D
+E4B3 E7AE9C
+E4B4 E7AE9A
+E4B5 E7AE8B
+E4B6 E7AE92
+E4B7 E7AE8F
+E4B8 E7AD9D
+E4B9 E7AE99
+E4BA E7AF8B
+E4BB E7AF81
+E4BC E7AF8C
+E4BD E7AF8F
+E4BE E7AEB4
+E4BF E7AF86
+E4C0 E7AF9D
+E4C1 E7AFA9
+E4C2 E7B091
+E4C3 E7B094
+E4C4 E7AFA6
+E4C5 E7AFA5
+E4C6 E7B1A0
+E4C7 E7B080
+E4C8 E7B087
+E4C9 E7B093
+E4CA E7AFB3
+E4CB E7AFB7
+E4CC E7B097
+E4CD E7B08D
+E4CE E7AFB6
+E4CF E7B0A3
+E4D0 E7B0A7
+E4D1 E7B0AA
+E4D2 E7B09F
+E4D3 E7B0B7
+E4D4 E7B0AB
+E4D5 E7B0BD
+E4D6 E7B18C
+E4D7 E7B183
+E4D8 E7B194
+E4D9 E7B18F
+E4DA E7B180
+E4DB E7B190
+E4DC E7B198
+E4DD E7B19F
+E4DE E7B1A4
+E4DF E7B196
+E4E0 E7B1A5
+E4E1 E7B1AC
+E4E2 E7B1B5
+E4E3 E7B283
+E4E4 E7B290
+E4E5 E7B2A4
+E4E6 E7B2AD
+E4E7 E7B2A2
+E4E8 E7B2AB
+E4E9 E7B2A1
+E4EA E7B2A8
+E4EB E7B2B3
+E4EC E7B2B2
+E4ED E7B2B1
+E4EE E7B2AE
+E4EF E7B2B9
+E4F0 E7B2BD
+E4F1 E7B380
+E4F2 E7B385
+E4F3 E7B382
+E4F4 E7B398
+E4F5 E7B392
+E4F6 E7B39C
+E4F7 E7B3A2
+E4F8 E9ACBB
+E4F9 E7B3AF
+E4FA E7B3B2
+E4FB E7B3B4
+E4FC E7B3B6
+E4FD E7B3BA
+E4FE E7B486
+E5A1 E7B482
+E5A2 E7B49C
+E5A3 E7B495
+E5A4 E7B48A
+E5A5 E7B585
+E5A6 E7B58B
+E5A7 E7B4AE
+E5A8 E7B4B2
+E5A9 E7B4BF
+E5AA E7B4B5
+E5AB E7B586
+E5AC E7B5B3
+E5AD E7B596
+E5AE E7B58E
+E5AF E7B5B2
+E5B0 E7B5A8
+E5B1 E7B5AE
+E5B2 E7B58F
+E5B3 E7B5A3
+E5B4 E7B693
+E5B5 E7B689
+E5B6 E7B59B
+E5B7 E7B68F
+E5B8 E7B5BD
+E5B9 E7B69B
+E5BA E7B6BA
+E5BB E7B6AE
+E5BC E7B6A3
+E5BD E7B6B5
+E5BE E7B787
+E5BF E7B6BD
+E5C0 E7B6AB
+E5C1 E7B8BD
+E5C2 E7B6A2
+E5C3 E7B6AF
+E5C4 E7B79C
+E5C5 E7B6B8
+E5C6 E7B69F
+E5C7 E7B6B0
+E5C8 E7B798
+E5C9 E7B79D
+E5CA E7B7A4
+E5CB E7B79E
+E5CC E7B7BB
+E5CD E7B7B2
+E5CE E7B7A1
+E5CF E7B885
+E5D0 E7B88A
+E5D1 E7B8A3
+E5D2 E7B8A1
+E5D3 E7B892
+E5D4 E7B8B1
+E5D5 E7B89F
+E5D6 E7B889
+E5D7 E7B88B
+E5D8 E7B8A2
+E5D9 E7B986
+E5DA E7B9A6
+E5DB E7B8BB
+E5DC E7B8B5
+E5DD E7B8B9
+E5DE E7B983
+E5DF E7B8B7
+E5E0 E7B8B2
+E5E1 E7B8BA
+E5E2 E7B9A7
+E5E3 E7B99D
+E5E4 E7B996
+E5E5 E7B99E
+E5E6 E7B999
+E5E7 E7B99A
+E5E8 E7B9B9
+E5E9 E7B9AA
+E5EA E7B9A9
+E5EB E7B9BC
+E5EC E7B9BB
+E5ED E7BA83
+E5EE E7B795
+E5EF E7B9BD
+E5F0 E8BEAE
+E5F1 E7B9BF
+E5F2 E7BA88
+E5F3 E7BA89
+E5F4 E7BA8C
+E5F5 E7BA92
+E5F6 E7BA90
+E5F7 E7BA93
+E5F8 E7BA94
+E5F9 E7BA96
+E5FA E7BA8E
+E5FB E7BA9B
+E5FC E7BA9C
+E5FD E7BCB8
+E5FE E7BCBA
+E6A1 E7BD85
+E6A2 E7BD8C
+E6A3 E7BD8D
+E6A4 E7BD8E
+E6A5 E7BD90
+E6A6 E7BD91
+E6A7 E7BD95
+E6A8 E7BD94
+E6A9 E7BD98
+E6AA E7BD9F
+E6AB E7BDA0
+E6AC E7BDA8
+E6AD E7BDA9
+E6AE E7BDA7
+E6AF E7BDB8
+E6B0 E7BE82
+E6B1 E7BE86
+E6B2 E7BE83
+E6B3 E7BE88
+E6B4 E7BE87
+E6B5 E7BE8C
+E6B6 E7BE94
+E6B7 E7BE9E
+E6B8 E7BE9D
+E6B9 E7BE9A
+E6BA E7BEA3
+E6BB E7BEAF
+E6BC E7BEB2
+E6BD E7BEB9
+E6BE E7BEAE
+E6BF E7BEB6
+E6C0 E7BEB8
+E6C1 E8ADB1
+E6C2 E7BF85
+E6C3 E7BF86
+E6C4 E7BF8A
+E6C5 E7BF95
+E6C6 E7BF94
+E6C7 E7BFA1
+E6C8 E7BFA6
+E6C9 E7BFA9
+E6CA E7BFB3
+E6CB E7BFB9
+E6CC E9A39C
+E6CD E88086
+E6CE E88084
+E6CF E8808B
+E6D0 E88092
+E6D1 E88098
+E6D2 E88099
+E6D3 E8809C
+E6D4 E880A1
+E6D5 E880A8
+E6D6 E880BF
+E6D7 E880BB
+E6D8 E8818A
+E6D9 E88186
+E6DA E88192
+E6DB E88198
+E6DC E8819A
+E6DD E8819F
+E6DE E881A2
+E6DF E881A8
+E6E0 E881B3
+E6E1 E881B2
+E6E2 E881B0
+E6E3 E881B6
+E6E4 E881B9
+E6E5 E881BD
+E6E6 E881BF
+E6E7 E88284
+E6E8 E88286
+E6E9 E88285
+E6EA E8829B
+E6EB E88293
+E6EC E8829A
+E6ED E882AD
+E6EE E58690
+E6EF E882AC
+E6F0 E8839B
+E6F1 E883A5
+E6F2 E88399
+E6F3 E8839D
+E6F4 E88384
+E6F5 E8839A
+E6F6 E88396
+E6F7 E88489
+E6F8 E883AF
+E6F9 E883B1
+E6FA E8849B
+E6FB E884A9
+E6FC E884A3
+E6FD E884AF
+E6FE E8858B
+E7A1 E99A8B
+E7A2 E88586
+E7A3 E884BE
+E7A4 E88593
+E7A5 E88591
+E7A6 E883BC
+E7A7 E885B1
+E7A8 E885AE
+E7A9 E885A5
+E7AA E885A6
+E7AB E885B4
+E7AC E88683
+E7AD E88688
+E7AE E8868A
+E7AF E88680
+E7B0 E88682
+E7B1 E886A0
+E7B2 E88695
+E7B3 E886A4
+E7B4 E886A3
+E7B5 E8859F
+E7B6 E88693
+E7B7 E886A9
+E7B8 E886B0
+E7B9 E886B5
+E7BA E886BE
+E7BB E886B8
+E7BC E886BD
+E7BD E88780
+E7BE E88782
+E7BF E886BA
+E7C0 E88789
+E7C1 E8878D
+E7C2 E88791
+E7C3 E88799
+E7C4 E88798
+E7C5 E88788
+E7C6 E8879A
+E7C7 E8879F
+E7C8 E887A0
+E7C9 E887A7
+E7CA E887BA
+E7CB E887BB
+E7CC E887BE
+E7CD E88881
+E7CE E88882
+E7CF E88885
+E7D0 E88887
+E7D1 E8888A
+E7D2 E8888D
+E7D3 E88890
+E7D4 E88896
+E7D5 E888A9
+E7D6 E888AB
+E7D7 E888B8
+E7D8 E888B3
+E7D9 E88980
+E7DA E88999
+E7DB E88998
+E7DC E8899D
+E7DD E8899A
+E7DE E8899F
+E7DF E889A4
+E7E0 E889A2
+E7E1 E889A8
+E7E2 E889AA
+E7E3 E889AB
+E7E4 E888AE
+E7E5 E889B1
+E7E6 E889B7
+E7E7 E889B8
+E7E8 E889BE
+E7E9 E88A8D
+E7EA E88A92
+E7EB E88AAB
+E7EC E88A9F
+E7ED E88ABB
+E7EE E88AAC
+E7EF E88BA1
+E7F0 E88BA3
+E7F1 E88B9F
+E7F2 E88B92
+E7F3 E88BB4
+E7F4 E88BB3
+E7F5 E88BBA
+E7F6 E88E93
+E7F7 E88C83
+E7F8 E88BBB
+E7F9 E88BB9
+E7FA E88B9E
+E7FB E88C86
+E7FC E88B9C
+E7FD E88C89
+E7FE E88B99
+E8A1 E88CB5
+E8A2 E88CB4
+E8A3 E88C96
+E8A4 E88CB2
+E8A5 E88CB1
+E8A6 E88D80
+E8A7 E88CB9
+E8A8 E88D90
+E8A9 E88D85
+E8AA E88CAF
+E8AB E88CAB
+E8AC E88C97
+E8AD E88C98
+E8AE E88E85
+E8AF E88E9A
+E8B0 E88EAA
+E8B1 E88E9F
+E8B2 E88EA2
+E8B3 E88E96
+E8B4 E88CA3
+E8B5 E88E8E
+E8B6 E88E87
+E8B7 E88E8A
+E8B8 E88DBC
+E8B9 E88EB5
+E8BA E88DB3
+E8BB E88DB5
+E8BC E88EA0
+E8BD E88E89
+E8BE E88EA8
+E8BF E88FB4
+E8C0 E89093
+E8C1 E88FAB
+E8C2 E88F8E
+E8C3 E88FBD
+E8C4 E89083
+E8C5 E88F98
+E8C6 E8908B
+E8C7 E88F81
+E8C8 E88FB7
+E8C9 E89087
+E8CA E88FA0
+E8CB E88FB2
+E8CC E8908D
+E8CD E890A2
+E8CE E890A0
+E8CF E88EBD
+E8D0 E890B8
+E8D1 E89486
+E8D2 E88FBB
+E8D3 E891AD
+E8D4 E890AA
+E8D5 E890BC
+E8D6 E8959A
+E8D7 E89284
+E8D8 E891B7
+E8D9 E891AB
+E8DA E892AD
+E8DB E891AE
+E8DC E89282
+E8DD E891A9
+E8DE E89186
+E8DF E890AC
+E8E0 E891AF
+E8E1 E891B9
+E8E2 E890B5
+E8E3 E8938A
+E8E4 E891A2
+E8E5 E892B9
+E8E6 E892BF
+E8E7 E8929F
+E8E8 E89399
+E8E9 E8938D
+E8EA E892BB
+E8EB E8939A
+E8EC E89390
+E8ED E89381
+E8EE E89386
+E8EF E89396
+E8F0 E892A1
+E8F1 E894A1
+E8F2 E893BF
+E8F3 E893B4
+E8F4 E89497
+E8F5 E89498
+E8F6 E894AC
+E8F7 E8949F
+E8F8 E89495
+E8F9 E89494
+E8FA E893BC
+E8FB E89580
+E8FC E895A3
+E8FD E89598
+E8FE E89588
+E9A1 E89581
+E9A2 E89882
+E9A3 E8958B
+E9A4 E89595
+E9A5 E89680
+E9A6 E896A4
+E9A7 E89688
+E9A8 E89691
+E9A9 E8968A
+E9AA E896A8
+E9AB E895AD
+E9AC E89694
+E9AD E8969B
+E9AE E897AA
+E9AF E89687
+E9B0 E8969C
+E9B1 E895B7
+E9B2 E895BE
+E9B3 E89690
+E9B4 E89789
+E9B5 E896BA
+E9B6 E8978F
+E9B7 E896B9
+E9B8 E89790
+E9B9 E89795
+E9BA E8979D
+E9BB E897A5
+E9BC E8979C
+E9BD E897B9
+E9BE E8988A
+E9BF E89893
+E9C0 E8988B
+E9C1 E897BE
+E9C2 E897BA
+E9C3 E89886
+E9C4 E898A2
+E9C5 E8989A
+E9C6 E898B0
+E9C7 E898BF
+E9C8 E8998D
+E9C9 E4B995
+E9CA E89994
+E9CB E8999F
+E9CC E899A7
+E9CD E899B1
+E9CE E89A93
+E9CF E89AA3
+E9D0 E89AA9
+E9D1 E89AAA
+E9D2 E89A8B
+E9D3 E89A8C
+E9D4 E89AB6
+E9D5 E89AAF
+E9D6 E89B84
+E9D7 E89B86
+E9D8 E89AB0
+E9D9 E89B89
+E9DA E8A0A3
+E9DB E89AAB
+E9DC E89B94
+E9DD E89B9E
+E9DE E89BA9
+E9DF E89BAC
+E9E0 E89B9F
+E9E1 E89B9B
+E9E2 E89BAF
+E9E3 E89C92
+E9E4 E89C86
+E9E5 E89C88
+E9E6 E89C80
+E9E7 E89C83
+E9E8 E89BBB
+E9E9 E89C91
+E9EA E89C89
+E9EB E89C8D
+E9EC E89BB9
+E9ED E89C8A
+E9EE E89CB4
+E9EF E89CBF
+E9F0 E89CB7
+E9F1 E89CBB
+E9F2 E89CA5
+E9F3 E89CA9
+E9F4 E89C9A
+E9F5 E89DA0
+E9F6 E89D9F
+E9F7 E89DB8
+E9F8 E89D8C
+E9F9 E89D8E
+E9FA E89DB4
+E9FB E89D97
+E9FC E89DA8
+E9FD E89DAE
+E9FE E89D99
+EAA1 E89D93
+EAA2 E89DA3
+EAA3 E89DAA
+EAA4 E8A085
+EAA5 E89EA2
+EAA6 E89E9F
+EAA7 E89E82
+EAA8 E89EAF
+EAA9 E89F8B
+EAAA E89EBD
+EAAB E89F80
+EAAC E89F90
+EAAD E99B96
+EAAE E89EAB
+EAAF E89F84
+EAB0 E89EB3
+EAB1 E89F87
+EAB2 E89F86
+EAB3 E89EBB
+EAB4 E89FAF
+EAB5 E89FB2
+EAB6 E89FA0
+EAB7 E8A08F
+EAB8 E8A08D
+EAB9 E89FBE
+EABA E89FB6
+EABB E89FB7
+EABC E8A08E
+EABD E89F92
+EABE E8A091
+EABF E8A096
+EAC0 E8A095
+EAC1 E8A0A2
+EAC2 E8A0A1
+EAC3 E8A0B1
+EAC4 E8A0B6
+EAC5 E8A0B9
+EAC6 E8A0A7
+EAC7 E8A0BB
+EAC8 E8A184
+EAC9 E8A182
+EACA E8A192
+EACB E8A199
+EACC E8A19E
+EACD E8A1A2
+EACE E8A1AB
+EACF E8A281
+EAD0 E8A1BE
+EAD1 E8A29E
+EAD2 E8A1B5
+EAD3 E8A1BD
+EAD4 E8A2B5
+EAD5 E8A1B2
+EAD6 E8A282
+EAD7 E8A297
+EAD8 E8A292
+EAD9 E8A2AE
+EADA E8A299
+EADB E8A2A2
+EADC E8A28D
+EADD E8A2A4
+EADE E8A2B0
+EADF E8A2BF
+EAE0 E8A2B1
+EAE1 E8A383
+EAE2 E8A384
+EAE3 E8A394
+EAE4 E8A398
+EAE5 E8A399
+EAE6 E8A39D
+EAE7 E8A3B9
+EAE8 E8A482
+EAE9 E8A3BC
+EAEA E8A3B4
+EAEB E8A3A8
+EAEC E8A3B2
+EAED E8A484
+EAEE E8A48C
+EAEF E8A48A
+EAF0 E8A493
+EAF1 E8A583
+EAF2 E8A49E
+EAF3 E8A4A5
+EAF4 E8A4AA
+EAF5 E8A4AB
+EAF6 E8A581
+EAF7 E8A584
+EAF8 E8A4BB
+EAF9 E8A4B6
+EAFA E8A4B8
+EAFB E8A58C
+EAFC E8A49D
+EAFD E8A5A0
+EAFE E8A59E
+EBA1 E8A5A6
+EBA2 E8A5A4
+EBA3 E8A5AD
+EBA4 E8A5AA
+EBA5 E8A5AF
+EBA6 E8A5B4
+EBA7 E8A5B7
+EBA8 E8A5BE
+EBA9 E8A683
+EBAA E8A688
+EBAB E8A68A
+EBAC E8A693
+EBAD E8A698
+EBAE E8A6A1
+EBAF E8A6A9
+EBB0 E8A6A6
+EBB1 E8A6AC
+EBB2 E8A6AF
+EBB3 E8A6B2
+EBB4 E8A6BA
+EBB5 E8A6BD
+EBB6 E8A6BF
+EBB7 E8A780
+EBB8 E8A79A
+EBB9 E8A79C
+EBBA E8A79D
+EBBB E8A7A7
+EBBC E8A7B4
+EBBD E8A7B8
+EBBE E8A883
+EBBF E8A896
+EBC0 E8A890
+EBC1 E8A88C
+EBC2 E8A89B
+EBC3 E8A89D
+EBC4 E8A8A5
+EBC5 E8A8B6
+EBC6 E8A981
+EBC7 E8A99B
+EBC8 E8A992
+EBC9 E8A986
+EBCA E8A988
+EBCB E8A9BC
+EBCC E8A9AD
+EBCD E8A9AC
+EBCE E8A9A2
+EBCF E8AA85
+EBD0 E8AA82
+EBD1 E8AA84
+EBD2 E8AAA8
+EBD3 E8AAA1
+EBD4 E8AA91
+EBD5 E8AAA5
+EBD6 E8AAA6
+EBD7 E8AA9A
+EBD8 E8AAA3
+EBD9 E8AB84
+EBDA E8AB8D
+EBDB E8AB82
+EBDC E8AB9A
+EBDD E8ABAB
+EBDE E8ABB3
+EBDF E8ABA7
+EBE0 E8ABA4
+EBE1 E8ABB1
+EBE2 E8AC94
+EBE3 E8ABA0
+EBE4 E8ABA2
+EBE5 E8ABB7
+EBE6 E8AB9E
+EBE7 E8AB9B
+EBE8 E8AC8C
+EBE9 E8AC87
+EBEA E8AC9A
+EBEB E8ABA1
+EBEC E8AC96
+EBED E8AC90
+EBEE E8AC97
+EBEF E8ACA0
+EBF0 E8ACB3
+EBF1 E99EAB
+EBF2 E8ACA6
+EBF3 E8ACAB
+EBF4 E8ACBE
+EBF5 E8ACA8
+EBF6 E8AD81
+EBF7 E8AD8C
+EBF8 E8AD8F
+EBF9 E8AD8E
+EBFA E8AD89
+EBFB E8AD96
+EBFC E8AD9B
+EBFD E8AD9A
+EBFE E8ADAB
+ECA1 E8AD9F
+ECA2 E8ADAC
+ECA3 E8ADAF
+ECA4 E8ADB4
+ECA5 E8ADBD
+ECA6 E8AE80
+ECA7 E8AE8C
+ECA8 E8AE8E
+ECA9 E8AE92
+ECAA E8AE93
+ECAB E8AE96
+ECAC E8AE99
+ECAD E8AE9A
+ECAE E8B0BA
+ECAF E8B181
+ECB0 E8B0BF
+ECB1 E8B188
+ECB2 E8B18C
+ECB3 E8B18E
+ECB4 E8B190
+ECB5 E8B195
+ECB6 E8B1A2
+ECB7 E8B1AC
+ECB8 E8B1B8
+ECB9 E8B1BA
+ECBA E8B282
+ECBB E8B289
+ECBC E8B285
+ECBD E8B28A
+ECBE E8B28D
+ECBF E8B28E
+ECC0 E8B294
+ECC1 E8B1BC
+ECC2 E8B298
+ECC3 E6889D
+ECC4 E8B2AD
+ECC5 E8B2AA
+ECC6 E8B2BD
+ECC7 E8B2B2
+ECC8 E8B2B3
+ECC9 E8B2AE
+ECCA E8B2B6
+ECCB E8B388
+ECCC E8B381
+ECCD E8B3A4
+ECCE E8B3A3
+ECCF E8B39A
+ECD0 E8B3BD
+ECD1 E8B3BA
+ECD2 E8B3BB
+ECD3 E8B484
+ECD4 E8B485
+ECD5 E8B48A
+ECD6 E8B487
+ECD7 E8B48F
+ECD8 E8B48D
+ECD9 E8B490
+ECDA E9BD8E
+ECDB E8B493
+ECDC E8B38D
+ECDD E8B494
+ECDE E8B496
+ECDF E8B5A7
+ECE0 E8B5AD
+ECE1 E8B5B1
+ECE2 E8B5B3
+ECE3 E8B681
+ECE4 E8B699
+ECE5 E8B782
+ECE6 E8B6BE
+ECE7 E8B6BA
+ECE8 E8B78F
+ECE9 E8B79A
+ECEA E8B796
+ECEB E8B78C
+ECEC E8B79B
+ECED E8B78B
+ECEE E8B7AA
+ECEF E8B7AB
+ECF0 E8B79F
+ECF1 E8B7A3
+ECF2 E8B7BC
+ECF3 E8B888
+ECF4 E8B889
+ECF5 E8B7BF
+ECF6 E8B89D
+ECF7 E8B89E
+ECF8 E8B890
+ECF9 E8B89F
+ECFA E8B982
+ECFB E8B8B5
+ECFC E8B8B0
+ECFD E8B8B4
+ECFE E8B98A
+EDA1 E8B987
+EDA2 E8B989
+EDA3 E8B98C
+EDA4 E8B990
+EDA5 E8B988
+EDA6 E8B999
+EDA7 E8B9A4
+EDA8 E8B9A0
+EDA9 E8B8AA
+EDAA E8B9A3
+EDAB E8B995
+EDAC E8B9B6
+EDAD E8B9B2
+EDAE E8B9BC
+EDAF E8BA81
+EDB0 E8BA87
+EDB1 E8BA85
+EDB2 E8BA84
+EDB3 E8BA8B
+EDB4 E8BA8A
+EDB5 E8BA93
+EDB6 E8BA91
+EDB7 E8BA94
+EDB8 E8BA99
+EDB9 E8BAAA
+EDBA E8BAA1
+EDBB E8BAAC
+EDBC E8BAB0
+EDBD E8BB86
+EDBE E8BAB1
+EDBF E8BABE
+EDC0 E8BB85
+EDC1 E8BB88
+EDC2 E8BB8B
+EDC3 E8BB9B
+EDC4 E8BBA3
+EDC5 E8BBBC
+EDC6 E8BBBB
+EDC7 E8BBAB
+EDC8 E8BBBE
+EDC9 E8BC8A
+EDCA E8BC85
+EDCB E8BC95
+EDCC E8BC92
+EDCD E8BC99
+EDCE E8BC93
+EDCF E8BC9C
+EDD0 E8BC9F
+EDD1 E8BC9B
+EDD2 E8BC8C
+EDD3 E8BCA6
+EDD4 E8BCB3
+EDD5 E8BCBB
+EDD6 E8BCB9
+EDD7 E8BD85
+EDD8 E8BD82
+EDD9 E8BCBE
+EDDA E8BD8C
+EDDB E8BD89
+EDDC E8BD86
+EDDD E8BD8E
+EDDE E8BD97
+EDDF E8BD9C
+EDE0 E8BDA2
+EDE1 E8BDA3
+EDE2 E8BDA4
+EDE3 E8BE9C
+EDE4 E8BE9F
+EDE5 E8BEA3
+EDE6 E8BEAD
+EDE7 E8BEAF
+EDE8 E8BEB7
+EDE9 E8BF9A
+EDEA E8BFA5
+EDEB E8BFA2
+EDEC E8BFAA
+EDED E8BFAF
+EDEE E98287
+EDEF E8BFB4
+EDF0 E98085
+EDF1 E8BFB9
+EDF2 E8BFBA
+EDF3 E98091
+EDF4 E98095
+EDF5 E980A1
+EDF6 E9808D
+EDF7 E9809E
+EDF8 E98096
+EDF9 E9808B
+EDFA E980A7
+EDFB E980B6
+EDFC E980B5
+EDFD E980B9
+EDFE E8BFB8
+EEA1 E9818F
+EEA2 E98190
+EEA3 E98191
+EEA4 E98192
+EEA5 E9808E
+EEA6 E98189
+EEA7 E980BE
+EEA8 E98196
+EEA9 E98198
+EEAA E9819E
+EEAB E981A8
+EEAC E981AF
+EEAD E981B6
+EEAE E99AA8
+EEAF E981B2
+EEB0 E98282
+EEB1 E981BD
+EEB2 E98281
+EEB3 E98280
+EEB4 E9828A
+EEB5 E98289
+EEB6 E9828F
+EEB7 E982A8
+EEB8 E982AF
+EEB9 E982B1
+EEBA E982B5
+EEBB E983A2
+EEBC E983A4
+EEBD E68988
+EEBE E9839B
+EEBF E98482
+EEC0 E98492
+EEC1 E98499
+EEC2 E984B2
+EEC3 E984B0
+EEC4 E9858A
+EEC5 E98596
+EEC6 E98598
+EEC7 E985A3
+EEC8 E985A5
+EEC9 E985A9
+EECA E985B3
+EECB E985B2
+EECC E9868B
+EECD E98689
+EECE E98682
+EECF E986A2
+EED0 E986AB
+EED1 E986AF
+EED2 E986AA
+EED3 E986B5
+EED4 E986B4
+EED5 E986BA
+EED6 E98780
+EED7 E98781
+EED8 E98789
+EED9 E9878B
+EEDA E98790
+EEDB E98796
+EEDC E9879F
+EEDD E987A1
+EEDE E9879B
+EEDF E987BC
+EEE0 E987B5
+EEE1 E987B6
+EEE2 E9889E
+EEE3 E987BF
+EEE4 E98894
+EEE5 E988AC
+EEE6 E98895
+EEE7 E98891
+EEE8 E9899E
+EEE9 E98997
+EEEA E98985
+EEEB E98989
+EEEC E989A4
+EEED E98988
+EEEE E98A95
+EEEF E988BF
+EEF0 E9898B
+EEF1 E98990
+EEF2 E98A9C
+EEF3 E98A96
+EEF4 E98A93
+EEF5 E98A9B
+EEF6 E9899A
+EEF7 E98B8F
+EEF8 E98AB9
+EEF9 E98AB7
+EEFA E98BA9
+EEFB E98C8F
+EEFC E98BBA
+EEFD E98D84
+EEFE E98CAE
+EFA1 E98C99
+EFA2 E98CA2
+EFA3 E98C9A
+EFA4 E98CA3
+EFA5 E98CBA
+EFA6 E98CB5
+EFA7 E98CBB
+EFA8 E98D9C
+EFA9 E98DA0
+EFAA E98DBC
+EFAB E98DAE
+EFAC E98D96
+EFAD E98EB0
+EFAE E98EAC
+EFAF E98EAD
+EFB0 E98E94
+EFB1 E98EB9
+EFB2 E98F96
+EFB3 E98F97
+EFB4 E98FA8
+EFB5 E98FA5
+EFB6 E98F98
+EFB7 E98F83
+EFB8 E98F9D
+EFB9 E98F90
+EFBA E98F88
+EFBB E98FA4
+EFBC E9909A
+EFBD E99094
+EFBE E99093
+EFBF E99083
+EFC0 E99087
+EFC1 E99090
+EFC2 E990B6
+EFC3 E990AB
+EFC4 E990B5
+EFC5 E990A1
+EFC6 E990BA
+EFC7 E99181
+EFC8 E99192
+EFC9 E99184
+EFCA E9919B
+EFCB E991A0
+EFCC E991A2
+EFCD E9919E
+EFCE E991AA
+EFCF E988A9
+EFD0 E991B0
+EFD1 E991B5
+EFD2 E991B7
+EFD3 E991BD
+EFD4 E9919A
+EFD5 E991BC
+EFD6 E991BE
+EFD7 E99281
+EFD8 E991BF
+EFD9 E99682
+EFDA E99687
+EFDB E9968A
+EFDC E99694
+EFDD E99696
+EFDE E99698
+EFDF E99699
+EFE0 E996A0
+EFE1 E996A8
+EFE2 E996A7
+EFE3 E996AD
+EFE4 E996BC
+EFE5 E996BB
+EFE6 E996B9
+EFE7 E996BE
+EFE8 E9978A
+EFE9 E6BFB6
+EFEA E99783
+EFEB E9978D
+EFEC E9978C
+EFED E99795
+EFEE E99794
+EFEF E99796
+EFF0 E9979C
+EFF1 E997A1
+EFF2 E997A5
+EFF3 E997A2
+EFF4 E998A1
+EFF5 E998A8
+EFF6 E998AE
+EFF7 E998AF
+EFF8 E99982
+EFF9 E9998C
+EFFA E9998F
+EFFB E9998B
+EFFC E999B7
+EFFD E9999C
+EFFE E9999E
+F0A1 E9999D
+F0A2 E9999F
+F0A3 E999A6
+F0A4 E999B2
+F0A5 E999AC
+F0A6 E99A8D
+F0A7 E99A98
+F0A8 E99A95
+F0A9 E99A97
+F0AA E99AAA
+F0AB E99AA7
+F0AC E99AB1
+F0AD E99AB2
+F0AE E99AB0
+F0AF E99AB4
+F0B0 E99AB6
+F0B1 E99AB8
+F0B2 E99AB9
+F0B3 E99B8E
+F0B4 E99B8B
+F0B5 E99B89
+F0B6 E99B8D
+F0B7 E8A58D
+F0B8 E99B9C
+F0B9 E99C8D
+F0BA E99B95
+F0BB E99BB9
+F0BC E99C84
+F0BD E99C86
+F0BE E99C88
+F0BF E99C93
+F0C0 E99C8E
+F0C1 E99C91
+F0C2 E99C8F
+F0C3 E99C96
+F0C4 E99C99
+F0C5 E99CA4
+F0C6 E99CAA
+F0C7 E99CB0
+F0C8 E99CB9
+F0C9 E99CBD
+F0CA E99CBE
+F0CB E99D84
+F0CC E99D86
+F0CD E99D88
+F0CE E99D82
+F0CF E99D89
+F0D0 E99D9C
+F0D1 E99DA0
+F0D2 E99DA4
+F0D3 E99DA6
+F0D4 E99DA8
+F0D5 E58B92
+F0D6 E99DAB
+F0D7 E99DB1
+F0D8 E99DB9
+F0D9 E99E85
+F0DA E99DBC
+F0DB E99E81
+F0DC E99DBA
+F0DD E99E86
+F0DE E99E8B
+F0DF E99E8F
+F0E0 E99E90
+F0E1 E99E9C
+F0E2 E99EA8
+F0E3 E99EA6
+F0E4 E99EA3
+F0E5 E99EB3
+F0E6 E99EB4
+F0E7 E99F83
+F0E8 E99F86
+F0E9 E99F88
+F0EA E99F8B
+F0EB E99F9C
+F0EC E99FAD
+F0ED E9BD8F
+F0EE E99FB2
+F0EF E7AB9F
+F0F0 E99FB6
+F0F1 E99FB5
+F0F2 E9A08F
+F0F3 E9A08C
+F0F4 E9A0B8
+F0F5 E9A0A4
+F0F6 E9A0A1
+F0F7 E9A0B7
+F0F8 E9A0BD
+F0F9 E9A186
+F0FA E9A18F
+F0FB E9A18B
+F0FC E9A1AB
+F0FD E9A1AF
+F0FE E9A1B0
+F1A1 E9A1B1
+F1A2 E9A1B4
+F1A3 E9A1B3
+F1A4 E9A2AA
+F1A5 E9A2AF
+F1A6 E9A2B1
+F1A7 E9A2B6
+F1A8 E9A384
+F1A9 E9A383
+F1AA E9A386
+F1AB E9A3A9
+F1AC E9A3AB
+F1AD E9A483
+F1AE E9A489
+F1AF E9A492
+F1B0 E9A494
+F1B1 E9A498
+F1B2 E9A4A1
+F1B3 E9A49D
+F1B4 E9A49E
+F1B5 E9A4A4
+F1B6 E9A4A0
+F1B7 E9A4AC
+F1B8 E9A4AE
+F1B9 E9A4BD
+F1BA E9A4BE
+F1BB E9A582
+F1BC E9A589
+F1BD E9A585
+F1BE E9A590
+F1BF E9A58B
+F1C0 E9A591
+F1C1 E9A592
+F1C2 E9A58C
+F1C3 E9A595
+F1C4 E9A697
+F1C5 E9A698
+F1C6 E9A6A5
+F1C7 E9A6AD
+F1C8 E9A6AE
+F1C9 E9A6BC
+F1CA E9A79F
+F1CB E9A79B
+F1CC E9A79D
+F1CD E9A798
+F1CE E9A791
+F1CF E9A7AD
+F1D0 E9A7AE
+F1D1 E9A7B1
+F1D2 E9A7B2
+F1D3 E9A7BB
+F1D4 E9A7B8
+F1D5 E9A881
+F1D6 E9A88F
+F1D7 E9A885
+F1D8 E9A7A2
+F1D9 E9A899
+F1DA E9A8AB
+F1DB E9A8B7
+F1DC E9A985
+F1DD E9A982
+F1DE E9A980
+F1DF E9A983
+F1E0 E9A8BE
+F1E1 E9A995
+F1E2 E9A98D
+F1E3 E9A99B
+F1E4 E9A997
+F1E5 E9A99F
+F1E6 E9A9A2
+F1E7 E9A9A5
+F1E8 E9A9A4
+F1E9 E9A9A9
+F1EA E9A9AB
+F1EB E9A9AA
+F1EC E9AAAD
+F1ED E9AAB0
+F1EE E9AABC
+F1EF E9AB80
+F1F0 E9AB8F
+F1F1 E9AB91
+F1F2 E9AB93
+F1F3 E9AB94
+F1F4 E9AB9E
+F1F5 E9AB9F
+F1F6 E9ABA2
+F1F7 E9ABA3
+F1F8 E9ABA6
+F1F9 E9ABAF
+F1FA E9ABAB
+F1FB E9ABAE
+F1FC E9ABB4
+F1FD E9ABB1
+F1FE E9ABB7
+F2A1 E9ABBB
+F2A2 E9AC86
+F2A3 E9AC98
+F2A4 E9AC9A
+F2A5 E9AC9F
+F2A6 E9ACA2
+F2A7 E9ACA3
+F2A8 E9ACA5
+F2A9 E9ACA7
+F2AA E9ACA8
+F2AB E9ACA9
+F2AC E9ACAA
+F2AD E9ACAE
+F2AE E9ACAF
+F2AF E9ACB2
+F2B0 E9AD84
+F2B1 E9AD83
+F2B2 E9AD8F
+F2B3 E9AD8D
+F2B4 E9AD8E
+F2B5 E9AD91
+F2B6 E9AD98
+F2B7 E9ADB4
+F2B8 E9AE93
+F2B9 E9AE83
+F2BA E9AE91
+F2BB E9AE96
+F2BC E9AE97
+F2BD E9AE9F
+F2BE E9AEA0
+F2BF E9AEA8
+F2C0 E9AEB4
+F2C1 E9AF80
+F2C2 E9AF8A
+F2C3 E9AEB9
+F2C4 E9AF86
+F2C5 E9AF8F
+F2C6 E9AF91
+F2C7 E9AF92
+F2C8 E9AFA3
+F2C9 E9AFA2
+F2CA E9AFA4
+F2CB E9AF94
+F2CC E9AFA1
+F2CD E9B0BA
+F2CE E9AFB2
+F2CF E9AFB1
+F2D0 E9AFB0
+F2D1 E9B095
+F2D2 E9B094
+F2D3 E9B089
+F2D4 E9B093
+F2D5 E9B08C
+F2D6 E9B086
+F2D7 E9B088
+F2D8 E9B092
+F2D9 E9B08A
+F2DA E9B084
+F2DB E9B0AE
+F2DC E9B09B
+F2DD E9B0A5
+F2DE E9B0A4
+F2DF E9B0A1
+F2E0 E9B0B0
+F2E1 E9B187
+F2E2 E9B0B2
+F2E3 E9B186
+F2E4 E9B0BE
+F2E5 E9B19A
+F2E6 E9B1A0
+F2E7 E9B1A7
+F2E8 E9B1B6
+F2E9 E9B1B8
+F2EA E9B3A7
+F2EB E9B3AC
+F2EC E9B3B0
+F2ED E9B489
+F2EE E9B488
+F2EF E9B3AB
+F2F0 E9B483
+F2F1 E9B486
+F2F2 E9B4AA
+F2F3 E9B4A6
+F2F4 E9B6AF
+F2F5 E9B4A3
+F2F6 E9B49F
+F2F7 E9B584
+F2F8 E9B495
+F2F9 E9B492
+F2FA E9B581
+F2FB E9B4BF
+F2FC E9B4BE
+F2FD E9B586
+F2FE E9B588
+F3A1 E9B59D
+F3A2 E9B59E
+F3A3 E9B5A4
+F3A4 E9B591
+F3A5 E9B590
+F3A6 E9B599
+F3A7 E9B5B2
+F3A8 E9B689
+F3A9 E9B687
+F3AA E9B6AB
+F3AB E9B5AF
+F3AC E9B5BA
+F3AD E9B69A
+F3AE E9B6A4
+F3AF E9B6A9
+F3B0 E9B6B2
+F3B1 E9B784
+F3B2 E9B781
+F3B3 E9B6BB
+F3B4 E9B6B8
+F3B5 E9B6BA
+F3B6 E9B786
+F3B7 E9B78F
+F3B8 E9B782
+F3B9 E9B799
+F3BA E9B793
+F3BB E9B7B8
+F3BC E9B7A6
+F3BD E9B7AD
+F3BE E9B7AF
+F3BF E9B7BD
+F3C0 E9B89A
+F3C1 E9B89B
+F3C2 E9B89E
+F3C3 E9B9B5
+F3C4 E9B9B9
+F3C5 E9B9BD
+F3C6 E9BA81
+F3C7 E9BA88
+F3C8 E9BA8B
+F3C9 E9BA8C
+F3CA E9BA92
+F3CB E9BA95
+F3CC E9BA91
+F3CD E9BA9D
+F3CE E9BAA5
+F3CF E9BAA9
+F3D0 E9BAB8
+F3D1 E9BAAA
+F3D2 E9BAAD
+F3D3 E99DA1
+F3D4 E9BB8C
+F3D5 E9BB8E
+F3D6 E9BB8F
+F3D7 E9BB90
+F3D8 E9BB94
+F3D9 E9BB9C
+F3DA E9BB9E
+F3DB E9BB9D
+F3DC E9BBA0
+F3DD E9BBA5
+F3DE E9BBA8
+F3DF E9BBAF
+F3E0 E9BBB4
+F3E1 E9BBB6
+F3E2 E9BBB7
+F3E3 E9BBB9
+F3E4 E9BBBB
+F3E5 E9BBBC
+F3E6 E9BBBD
+F3E7 E9BC87
+F3E8 E9BC88
+F3E9 E79AB7
+F3EA E9BC95
+F3EB E9BCA1
+F3EC E9BCAC
+F3ED E9BCBE
+F3EE E9BD8A
+F3EF E9BD92
+F3F0 E9BD94
+F3F1 E9BDA3
+F3F2 E9BD9F
+F3F3 E9BDA0
+F3F4 E9BDA1
+F3F5 E9BDA6
+F3F6 E9BDA7
+F3F7 E9BDAC
+F3F8 E9BDAA
+F3F9 E9BDB7
+F3FA E9BDB2
+F3FB E9BDB6
+F3FC E9BE95
+F3FD E9BE9C
+F3FE E9BEA0
+F4A1 E5A0AF
+F4A2 E6A787
+F4A3 E98199
+F4A4 E791A4
+F4A5 E5879C
+F4A6 E78699
+F5A1 EE8080
+F5A2 EE8081
+F5A3 EE8082
+F5A4 EE8083
+F5A5 EE8084
+F5A6 EE8085
+F5A7 EE8086
+F5A8 EE8087
+F5A9 EE8088
+F5AA EE8089
+F5AB EE808A
+F5AC EE808B
+F5AD EE808C
+F5AE EE808D
+F5AF EE808E
+F5B0 EE808F
+F5B1 EE8090
+F5B2 EE8091
+F5B3 EE8092
+F5B4 EE8093
+F5B5 EE8094
+F5B6 EE8095
+F5B7 EE8096
+F5B8 EE8097
+F5B9 EE8098
+F5BA EE8099
+F5BB EE809A
+F5BC EE809B
+F5BD EE809C
+F5BE EE809D
+F5BF EE809E
+F5C0 EE809F
+F5C1 EE80A0
+F5C2 EE80A1
+F5C3 EE80A2
+F5C4 EE80A3
+F5C5 EE80A4
+F5C6 EE80A5
+F5C7 EE80A6
+F5C8 EE80A7
+F5C9 EE80A8
+F5CA EE80A9
+F5CB EE80AA
+F5CC EE80AB
+F5CD EE80AC
+F5CE EE80AD
+F5CF EE80AE
+F5D0 EE80AF
+F5D1 EE80B0
+F5D2 EE80B1
+F5D3 EE80B2
+F5D4 EE80B3
+F5D5 EE80B4
+F5D6 EE80B5
+F5D7 EE80B6
+F5D8 EE80B7
+F5D9 EE80B8
+F5DA EE80B9
+F5DB EE80BA
+F5DC EE80BB
+F5DD EE80BC
+F5DE EE80BD
+F5DF EE80BE
+F5E0 EE80BF
+F5E1 EE8180
+F5E2 EE8181
+F5E3 EE8182
+F5E4 EE8183
+F5E5 EE8184
+F5E6 EE8185
+F5E7 EE8186
+F5E8 EE8187
+F5E9 EE8188
+F5EA EE8189
+F5EB EE818A
+F5EC EE818B
+F5ED EE818C
+F5EE EE818D
+F5EF EE818E
+F5F0 EE818F
+F5F1 EE8190
+F5F2 EE8191
+F5F3 EE8192
+F5F4 EE8193
+F5F5 EE8194
+F5F6 EE8195
+F5F7 EE8196
+F5F8 EE8197
+F5F9 EE8198
+F5FA EE8199
+F5FB EE819A
+F5FC EE819B
+F5FD EE819C
+F5FE EE819D
+F6A1 EE819E
+F6A2 EE819F
+F6A3 EE81A0
+F6A4 EE81A1
+F6A5 EE81A2
+F6A6 EE81A3
+F6A7 EE81A4
+F6A8 EE81A5
+F6A9 EE81A6
+F6AA EE81A7
+F6AB EE81A8
+F6AC EE81A9
+F6AD EE81AA
+F6AE EE81AB
+F6AF EE81AC
+F6B0 EE81AD
+F6B1 EE81AE
+F6B2 EE81AF
+F6B3 EE81B0
+F6B4 EE81B1
+F6B5 EE81B2
+F6B6 EE81B3
+F6B7 EE81B4
+F6B8 EE81B5
+F6B9 EE81B6
+F6BA EE81B7
+F6BB EE81B8
+F6BC EE81B9
+F6BD EE81BA
+F6BE EE81BB
+F6BF EE81BC
+F6C0 EE81BD
+F6C1 EE81BE
+F6C2 EE81BF
+F6C3 EE8280
+F6C4 EE8281
+F6C5 EE8282
+F6C6 EE8283
+F6C7 EE8284
+F6C8 EE8285
+F6C9 EE8286
+F6CA EE8287
+F6CB EE8288
+F6CC EE8289
+F6CD EE828A
+F6CE EE828B
+F6CF EE828C
+F6D0 EE828D
+F6D1 EE828E
+F6D2 EE828F
+F6D3 EE8290
+F6D4 EE8291
+F6D5 EE8292
+F6D6 EE8293
+F6D7 EE8294
+F6D8 EE8295
+F6D9 EE8296
+F6DA EE8297
+F6DB EE8298
+F6DC EE8299
+F6DD EE829A
+F6DE EE829B
+F6DF EE829C
+F6E0 EE829D
+F6E1 EE829E
+F6E2 EE829F
+F6E3 EE82A0
+F6E4 EE82A1
+F6E5 EE82A2
+F6E6 EE82A3
+F6E7 EE82A4
+F6E8 EE82A5
+F6E9 EE82A6
+F6EA EE82A7
+F6EB EE82A8
+F6EC EE82A9
+F6ED EE82AA
+F6EE EE82AB
+F6EF EE82AC
+F6F0 EE82AD
+F6F1 EE82AE
+F6F2 EE82AF
+F6F3 EE82B0
+F6F4 EE82B1
+F6F5 EE82B2
+F6F6 EE82B3
+F6F7 EE82B4
+F6F8 EE82B5
+F6F9 EE82B6
+F6FA EE82B7
+F6FB EE82B8
+F6FC EE82B9
+F6FD EE82BA
+F6FE EE82BB
+F7A1 EE82BC
+F7A2 EE82BD
+F7A3 EE82BE
+F7A4 EE82BF
+F7A5 EE8380
+F7A6 EE8381
+F7A7 EE8382
+F7A8 EE8383
+F7A9 EE8384
+F7AA EE8385
+F7AB EE8386
+F7AC EE8387
+F7AD EE8388
+F7AE EE8389
+F7AF EE838A
+F7B0 EE838B
+F7B1 EE838C
+F7B2 EE838D
+F7B3 EE838E
+F7B4 EE838F
+F7B5 EE8390
+F7B6 EE8391
+F7B7 EE8392
+F7B8 EE8393
+F7B9 EE8394
+F7BA EE8395
+F7BB EE8396
+F7BC EE8397
+F7BD EE8398
+F7BE EE8399
+F7BF EE839A
+F7C0 EE839B
+F7C1 EE839C
+F7C2 EE839D
+F7C3 EE839E
+F7C4 EE839F
+F7C5 EE83A0
+F7C6 EE83A1
+F7C7 EE83A2
+F7C8 EE83A3
+F7C9 EE83A4
+F7CA EE83A5
+F7CB EE83A6
+F7CC EE83A7
+F7CD EE83A8
+F7CE EE83A9
+F7CF EE83AA
+F7D0 EE83AB
+F7D1 EE83AC
+F7D2 EE83AD
+F7D3 EE83AE
+F7D4 EE83AF
+F7D5 EE83B0
+F7D6 EE83B1
+F7D7 EE83B2
+F7D8 EE83B3
+F7D9 EE83B4
+F7DA EE83B5
+F7DB EE83B6
+F7DC EE83B7
+F7DD EE83B8
+F7DE EE83B9
+F7DF EE83BA
+F7E0 EE83BB
+F7E1 EE83BC
+F7E2 EE83BD
+F7E3 EE83BE
+F7E4 EE83BF
+F7E5 EE8480
+F7E6 EE8481
+F7E7 EE8482
+F7E8 EE8483
+F7E9 EE8484
+F7EA EE8485
+F7EB EE8486
+F7EC EE8487
+F7ED EE8488
+F7EE EE8489
+F7EF EE848A
+F7F0 EE848B
+F7F1 EE848C
+F7F2 EE848D
+F7F3 EE848E
+F7F4 EE848F
+F7F5 EE8490
+F7F6 EE8491
+F7F7 EE8492
+F7F8 EE8493
+F7F9 EE8494
+F7FA EE8495
+F7FB EE8496
+F7FC EE8497
+F7FD EE8498
+F7FE EE8499
+F8A1 EE849A
+F8A2 EE849B
+F8A3 EE849C
+F8A4 EE849D
+F8A5 EE849E
+F8A6 EE849F
+F8A7 EE84A0
+F8A8 EE84A1
+F8A9 EE84A2
+F8AA EE84A3
+F8AB EE84A4
+F8AC EE84A5
+F8AD EE84A6
+F8AE EE84A7
+F8AF EE84A8
+F8B0 EE84A9
+F8B1 EE84AA
+F8B2 EE84AB
+F8B3 EE84AC
+F8B4 EE84AD
+F8B5 EE84AE
+F8B6 EE84AF
+F8B7 EE84B0
+F8B8 EE84B1
+F8B9 EE84B2
+F8BA EE84B3
+F8BB EE84B4
+F8BC EE84B5
+F8BD EE84B6
+F8BE EE84B7
+F8BF EE84B8
+F8C0 EE84B9
+F8C1 EE84BA
+F8C2 EE84BB
+F8C3 EE84BC
+F8C4 EE84BD
+F8C5 EE84BE
+F8C6 EE84BF
+F8C7 EE8580
+F8C8 EE8581
+F8C9 EE8582
+F8CA EE8583
+F8CB EE8584
+F8CC EE8585
+F8CD EE8586
+F8CE EE8587
+F8CF EE8588
+F8D0 EE8589
+F8D1 EE858A
+F8D2 EE858B
+F8D3 EE858C
+F8D4 EE858D
+F8D5 EE858E
+F8D6 EE858F
+F8D7 EE8590
+F8D8 EE8591
+F8D9 EE8592
+F8DA EE8593
+F8DB EE8594
+F8DC EE8595
+F8DD EE8596
+F8DE EE8597
+F8DF EE8598
+F8E0 EE8599
+F8E1 EE859A
+F8E2 EE859B
+F8E3 EE859C
+F8E4 EE859D
+F8E5 EE859E
+F8E6 EE859F
+F8E7 EE85A0
+F8E8 EE85A1
+F8E9 EE85A2
+F8EA EE85A3
+F8EB EE85A4
+F8EC EE85A5
+F8ED EE85A6
+F8EE EE85A7
+F8EF EE85A8
+F8F0 EE85A9
+F8F1 EE85AA
+F8F2 EE85AB
+F8F3 EE85AC
+F8F4 EE85AD
+F8F5 EE85AE
+F8F6 EE85AF
+F8F7 EE85B0
+F8F8 EE85B1
+F8F9 EE85B2
+F8FA EE85B3
+F8FB EE85B4
+F8FC EE85B5
+F8FD EE85B6
+F8FE EE85B7
+F9A1 EE85B8
+F9A2 EE85B9
+F9A3 EE85BA
+F9A4 EE85BB
+F9A5 EE85BC
+F9A6 EE85BD
+F9A7 EE85BE
+F9A8 EE85BF
+F9A9 EE8680
+F9AA EE8681
+F9AB EE8682
+F9AC EE8683
+F9AD EE8684
+F9AE EE8685
+F9AF EE8686
+F9B0 EE8687
+F9B1 EE8688
+F9B2 EE8689
+F9B3 EE868A
+F9B4 EE868B
+F9B5 EE868C
+F9B6 EE868D
+F9B7 EE868E
+F9B8 EE868F
+F9B9 EE8690
+F9BA EE8691
+F9BB EE8692
+F9BC EE8693
+F9BD EE8694
+F9BE EE8695
+F9BF EE8696
+F9C0 EE8697
+F9C1 EE8698
+F9C2 EE8699
+F9C3 EE869A
+F9C4 EE869B
+F9C5 EE869C
+F9C6 EE869D
+F9C7 EE869E
+F9C8 EE869F
+F9C9 EE86A0
+F9CA EE86A1
+F9CB EE86A2
+F9CC EE86A3
+F9CD EE86A4
+F9CE EE86A5
+F9CF EE86A6
+F9D0 EE86A7
+F9D1 EE86A8
+F9D2 EE86A9
+F9D3 EE86AA
+F9D4 EE86AB
+F9D5 EE86AC
+F9D6 EE86AD
+F9D7 EE86AE
+F9D8 EE86AF
+F9D9 EE86B0
+F9DA EE86B1
+F9DB EE86B2
+F9DC EE86B3
+F9DD EE86B4
+F9DE EE86B5
+F9DF EE86B6
+F9E0 EE86B7
+F9E1 EE86B8
+F9E2 EE86B9
+F9E3 EE86BA
+F9E4 EE86BB
+F9E5 EE86BC
+F9E6 EE86BD
+F9E7 EE86BE
+F9E8 EE86BF
+F9E9 EE8780
+F9EA EE8781
+F9EB EE8782
+F9EC EE8783
+F9ED EE8784
+F9EE EE8785
+F9EF EE8786
+F9F0 EE8787
+F9F1 EE8788
+F9F2 EE8789
+F9F3 EE878A
+F9F4 EE878B
+F9F5 EE878C
+F9F6 EE878D
+F9F7 EE878E
+F9F8 EE878F
+F9F9 EE8790
+F9FA EE8791
+F9FB EE8792
+F9FC EE8793
+F9FD EE8794
+F9FE EE8795
+FAA1 EE8796
+FAA2 EE8797
+FAA3 EE8798
+FAA4 EE8799
+FAA5 EE879A
+FAA6 EE879B
+FAA7 EE879C
+FAA8 EE879D
+FAA9 EE879E
+FAAA EE879F
+FAAB EE87A0
+FAAC EE87A1
+FAAD EE87A2
+FAAE EE87A3
+FAAF EE87A4
+FAB0 EE87A5
+FAB1 EE87A6
+FAB2 EE87A7
+FAB3 EE87A8
+FAB4 EE87A9
+FAB5 EE87AA
+FAB6 EE87AB
+FAB7 EE87AC
+FAB8 EE87AD
+FAB9 EE87AE
+FABA EE87AF
+FABB EE87B0
+FABC EE87B1
+FABD EE87B2
+FABE EE87B3
+FABF EE87B4
+FAC0 EE87B5
+FAC1 EE87B6
+FAC2 EE87B7
+FAC3 EE87B8
+FAC4 EE87B9
+FAC5 EE87BA
+FAC6 EE87BB
+FAC7 EE87BC
+FAC8 EE87BD
+FAC9 EE87BE
+FACA EE87BF
+FACB EE8880
+FACC EE8881
+FACD EE8882
+FACE EE8883
+FACF EE8884
+FAD0 EE8885
+FAD1 EE8886
+FAD2 EE8887
+FAD3 EE8888
+FAD4 EE8889
+FAD5 EE888A
+FAD6 EE888B
+FAD7 EE888C
+FAD8 EE888D
+FAD9 EE888E
+FADA EE888F
+FADB EE8890
+FADC EE8891
+FADD EE8892
+FADE EE8893
+FADF EE8894
+FAE0 EE8895
+FAE1 EE8896
+FAE2 EE8897
+FAE3 EE8898
+FAE4 EE8899
+FAE5 EE889A
+FAE6 EE889B
+FAE7 EE889C
+FAE8 EE889D
+FAE9 EE889E
+FAEA EE889F
+FAEB EE88A0
+FAEC EE88A1
+FAED EE88A2
+FAEE EE88A3
+FAEF EE88A4
+FAF0 EE88A5
+FAF1 EE88A6
+FAF2 EE88A7
+FAF3 EE88A8
+FAF4 EE88A9
+FAF5 EE88AA
+FAF6 EE88AB
+FAF7 EE88AC
+FAF8 EE88AD
+FAF9 EE88AE
+FAFA EE88AF
+FAFB EE88B0
+FAFC EE88B1
+FAFD EE88B2
+FAFE EE88B3
+FBA1 EE88B4
+FBA2 EE88B5
+FBA3 EE88B6
+FBA4 EE88B7
+FBA5 EE88B8
+FBA6 EE88B9
+FBA7 EE88BA
+FBA8 EE88BB
+FBA9 EE88BC
+FBAA EE88BD
+FBAB EE88BE
+FBAC EE88BF
+FBAD EE8980
+FBAE EE8981
+FBAF EE8982
+FBB0 EE8983
+FBB1 EE8984
+FBB2 EE8985
+FBB3 EE8986
+FBB4 EE8987
+FBB5 EE8988
+FBB6 EE8989
+FBB7 EE898A
+FBB8 EE898B
+FBB9 EE898C
+FBBA EE898D
+FBBB EE898E
+FBBC EE898F
+FBBD EE8990
+FBBE EE8991
+FBBF EE8992
+FBC0 EE8993
+FBC1 EE8994
+FBC2 EE8995
+FBC3 EE8996
+FBC4 EE8997
+FBC5 EE8998
+FBC6 EE8999
+FBC7 EE899A
+FBC8 EE899B
+FBC9 EE899C
+FBCA EE899D
+FBCB EE899E
+FBCC EE899F
+FBCD EE89A0
+FBCE EE89A1
+FBCF EE89A2
+FBD0 EE89A3
+FBD1 EE89A4
+FBD2 EE89A5
+FBD3 EE89A6
+FBD4 EE89A7
+FBD5 EE89A8
+FBD6 EE89A9
+FBD7 EE89AA
+FBD8 EE89AB
+FBD9 EE89AC
+FBDA EE89AD
+FBDB EE89AE
+FBDC EE89AF
+FBDD EE89B0
+FBDE EE89B1
+FBDF EE89B2
+FBE0 EE89B3
+FBE1 EE89B4
+FBE2 EE89B5
+FBE3 EE89B6
+FBE4 EE89B7
+FBE5 EE89B8
+FBE6 EE89B9
+FBE7 EE89BA
+FBE8 EE89BB
+FBE9 EE89BC
+FBEA EE89BD
+FBEB EE89BE
+FBEC EE89BF
+FBED EE8A80
+FBEE EE8A81
+FBEF EE8A82
+FBF0 EE8A83
+FBF1 EE8A84
+FBF2 EE8A85
+FBF3 EE8A86
+FBF4 EE8A87
+FBF5 EE8A88
+FBF6 EE8A89
+FBF7 EE8A8A
+FBF8 EE8A8B
+FBF9 EE8A8C
+FBFA EE8A8D
+FBFB EE8A8E
+FBFC EE8A8F
+FBFD EE8A90
+FBFE EE8A91
+FCA1 EE8A92
+FCA2 EE8A93
+FCA3 EE8A94
+FCA4 EE8A95
+FCA5 EE8A96
+FCA6 EE8A97
+FCA7 EE8A98
+FCA8 EE8A99
+FCA9 EE8A9A
+FCAA EE8A9B
+FCAB EE8A9C
+FCAC EE8A9D
+FCAD EE8A9E
+FCAE EE8A9F
+FCAF EE8AA0
+FCB0 EE8AA1
+FCB1 EE8AA2
+FCB2 EE8AA3
+FCB3 EE8AA4
+FCB4 EE8AA5
+FCB5 EE8AA6
+FCB6 EE8AA7
+FCB7 EE8AA8
+FCB8 EE8AA9
+FCB9 EE8AAA
+FCBA EE8AAB
+FCBB EE8AAC
+FCBC EE8AAD
+FCBD EE8AAE
+FCBE EE8AAF
+FCBF EE8AB0
+FCC0 EE8AB1
+FCC1 EE8AB2
+FCC2 EE8AB3
+FCC3 EE8AB4
+FCC4 EE8AB5
+FCC5 EE8AB6
+FCC6 EE8AB7
+FCC7 EE8AB8
+FCC8 EE8AB9
+FCC9 EE8ABA
+FCCA EE8ABB
+FCCB EE8ABC
+FCCC EE8ABD
+FCCD EE8ABE
+FCCE EE8ABF
+FCCF EE8B80
+FCD0 EE8B81
+FCD1 EE8B82
+FCD2 EE8B83
+FCD3 EE8B84
+FCD4 EE8B85
+FCD5 EE8B86
+FCD6 EE8B87
+FCD7 EE8B88
+FCD8 EE8B89
+FCD9 EE8B8A
+FCDA EE8B8B
+FCDB EE8B8C
+FCDC EE8B8D
+FCDD EE8B8E
+FCDE EE8B8F
+FCDF EE8B90
+FCE0 EE8B91
+FCE1 EE8B92
+FCE2 EE8B93
+FCE3 EE8B94
+FCE4 EE8B95
+FCE5 EE8B96
+FCE6 EE8B97
+FCE7 EE8B98
+FCE8 EE8B99
+FCE9 EE8B9A
+FCEA EE8B9B
+FCEB EE8B9C
+FCEC EE8B9D
+FCED EE8B9E
+FCEE EE8B9F
+FCEF EE8BA0
+FCF0 EE8BA1
+FCF1 EE8BA2
+FCF2 EE8BA3
+FCF3 EE8BA4
+FCF4 EE8BA5
+FCF5 EE8BA6
+FCF6 EE8BA7
+FCF7 EE8BA8
+FCF8 EE8BA9
+FCF9 EE8BAA
+FCFA EE8BAB
+FCFB EE8BAC
+FCFC EE8BAD
+FCFD EE8BAE
+FCFE EE8BAF
+FDA1 EE8BB0
+FDA2 EE8BB1
+FDA3 EE8BB2
+FDA4 EE8BB3
+FDA5 EE8BB4
+FDA6 EE8BB5
+FDA7 EE8BB6
+FDA8 EE8BB7
+FDA9 EE8BB8
+FDAA EE8BB9
+FDAB EE8BBA
+FDAC EE8BBB
+FDAD EE8BBC
+FDAE EE8BBD
+FDAF EE8BBE
+FDB0 EE8BBF
+FDB1 EE8C80
+FDB2 EE8C81
+FDB3 EE8C82
+FDB4 EE8C83
+FDB5 EE8C84
+FDB6 EE8C85
+FDB7 EE8C86
+FDB8 EE8C87
+FDB9 EE8C88
+FDBA EE8C89
+FDBB EE8C8A
+FDBC EE8C8B
+FDBD EE8C8C
+FDBE EE8C8D
+FDBF EE8C8E
+FDC0 EE8C8F
+FDC1 EE8C90
+FDC2 EE8C91
+FDC3 EE8C92
+FDC4 EE8C93
+FDC5 EE8C94
+FDC6 EE8C95
+FDC7 EE8C96
+FDC8 EE8C97
+FDC9 EE8C98
+FDCA EE8C99
+FDCB EE8C9A
+FDCC EE8C9B
+FDCD EE8C9C
+FDCE EE8C9D
+FDCF EE8C9E
+FDD0 EE8C9F
+FDD1 EE8CA0
+FDD2 EE8CA1
+FDD3 EE8CA2
+FDD4 EE8CA3
+FDD5 EE8CA4
+FDD6 EE8CA5
+FDD7 EE8CA6
+FDD8 EE8CA7
+FDD9 EE8CA8
+FDDA EE8CA9
+FDDB EE8CAA
+FDDC EE8CAB
+FDDD EE8CAC
+FDDE EE8CAD
+FDDF EE8CAE
+FDE0 EE8CAF
+FDE1 EE8CB0
+FDE2 EE8CB1
+FDE3 EE8CB2
+FDE4 EE8CB3
+FDE5 EE8CB4
+FDE6 EE8CB5
+FDE7 EE8CB6
+FDE8 EE8CB7
+FDE9 EE8CB8
+FDEA EE8CB9
+FDEB EE8CBA
+FDEC EE8CBB
+FDED EE8CBC
+FDEE EE8CBD
+FDEF EE8CBE
+FDF0 EE8CBF
+FDF1 EE8D80
+FDF2 EE8D81
+FDF3 EE8D82
+FDF4 EE8D83
+FDF5 EE8D84
+FDF6 EE8D85
+FDF7 EE8D86
+FDF8 EE8D87
+FDF9 EE8D88
+FDFA EE8D89
+FDFB EE8D8A
+FDFC EE8D8B
+FDFD EE8D8C
+FDFE EE8D8D
+FEA1 EE8D8E
+FEA2 EE8D8F
+FEA3 EE8D90
+FEA4 EE8D91
+FEA5 EE8D92
+FEA6 EE8D93
+FEA7 EE8D94
+FEA8 EE8D95
+FEA9 EE8D96
+FEAA EE8D97
+FEAB EE8D98
+FEAC EE8D99
+FEAD EE8D9A
+FEAE EE8D9B
+FEAF EE8D9C
+FEB0 EE8D9D
+FEB1 EE8D9E
+FEB2 EE8D9F
+FEB3 EE8DA0
+FEB4 EE8DA1
+FEB5 EE8DA2
+FEB6 EE8DA3
+FEB7 EE8DA4
+FEB8 EE8DA5
+FEB9 EE8DA6
+FEBA EE8DA7
+FEBB EE8DA8
+FEBC EE8DA9
+FEBD EE8DAA
+FEBE EE8DAB
+FEBF EE8DAC
+FEC0 EE8DAD
+FEC1 EE8DAE
+FEC2 EE8DAF
+FEC3 EE8DB0
+FEC4 EE8DB1
+FEC5 EE8DB2
+FEC6 EE8DB3
+FEC7 EE8DB4
+FEC8 EE8DB5
+FEC9 EE8DB6
+FECA EE8DB7
+FECB EE8DB8
+FECC EE8DB9
+FECD EE8DBA
+FECE EE8DBB
+FECF EE8DBC
+FED0 EE8DBD
+FED1 EE8DBE
+FED2 EE8DBF
+FED3 EE8E80
+FED4 EE8E81
+FED5 EE8E82
+FED6 EE8E83
+FED7 EE8E84
+FED8 EE8E85
+FED9 EE8E86
+FEDA EE8E87
+FEDB EE8E88
+FEDC EE8E89
+FEDD EE8E8A
+FEDE EE8E8B
+FEDF EE8E8C
+FEE0 EE8E8D
+FEE1 EE8E8E
+FEE2 EE8E8F
+FEE3 EE8E90
+FEE4 EE8E91
+FEE5 EE8E92
+FEE6 EE8E93
+FEE7 EE8E94
+FEE8 EE8E95
+FEE9 EE8E96
+FEEA EE8E97
+FEEB EE8E98
+FEEC EE8E99
+FEED EE8E9A
+FEEE EE8E9B
+FEEF EE8E9C
+FEF0 EE8E9D
+FEF1 EE8E9E
+FEF2 EE8E9F
+FEF3 EE8EA0
+FEF4 EE8EA1
+FEF5 EE8EA2
+FEF6 EE8EA3
+FEF7 EE8EA4
+FEF8 EE8EA5
+FEF9 EE8EA6
+FEFA EE8EA7
+FEFB EE8EA8
+FEFC EE8EA9
+FEFD EE8EAA
+FEFE EE8EAB
+DROP TABLE t1;
+#
+# WL#3090 Japanese Character Set adjustments
+# Test Unicode->sjis conversion
+#
+CREATE TABLE t1 (a CHAR(1)) CHARACTER SET utf8;
+INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
+INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
+CREATE TEMPORARY TABLE head AS SELECT concat(b1.a, b2.a) AS head FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE tail AS SELECT concat(b1.a, b2.a) AS tail FROM t1 b1, t1 b2;
+CREATE TEMPORARY TABLE middle AS SELECT concat(b1.a, b2.a) AS middle FROM t1 b1, t1 b2;
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(1)) CHARACTER SET utf8;
+INSERT INTO t1 SELECT UNHEX(head)
+FROM head WHERE (head BETWEEN '00' AND '7F') ORDER BY head;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head,tail))
+FROM head, tail
+WHERE (head BETWEEN 'C2' AND 'DF') AND (tail BETWEEN '80' AND 'BF')
+ORDER BY head, tail;
+INSERT INTO t1
+SELECT UNHEX(CONCAT(head, middle, tail))
+FROM head, middle, tail
+WHERE (head BETWEEN 'E0' AND 'EF')
+AND (middle BETWEEN '80' AND 'BF')
+AND (tail BETWEEN '80' AND 'BF')
+AND NOT (head='E0' AND middle BETWEEN '80' AND '9F')
+ORDER BY head, middle, tail;
+SELECT count(*) FROM t1;
+count(*)
+65536
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+HEX(a) b
+00 00
+01 01
+02 02
+03 03
+04 04
+05 05
+06 06
+07 07
+08 08
+09 09
+0A 0A
+0B 0B
+0C 0C
+0D 0D
+0E 0E
+0F 0F
+10 10
+11 11
+12 12
+13 13
+14 14
+15 15
+16 16
+17 17
+18 18
+19 19
+1A 1A
+1B 1B
+1C 1C
+1D 1D
+1E 1E
+1F 1F
+20 20
+21 21
+22 22
+23 23
+24 24
+25 25
+26 26
+27 27
+28 28
+29 29
+2A 2A
+2B 2B
+2C 2C
+2D 2D
+2E 2E
+2F 2F
+30 30
+31 31
+32 32
+33 33
+34 34
+35 35
+36 36
+37 37
+38 38
+39 39
+3A 3A
+3B 3B
+3C 3C
+3D 3D
+3E 3E
+40 40
+41 41
+42 42
+43 43
+44 44
+45 45
+46 46
+47 47
+48 48
+49 49
+4A 4A
+4B 4B
+4C 4C
+4D 4D
+4E 4E
+4F 4F
+50 50
+51 51
+52 52
+53 53
+54 54
+55 55
+56 56
+57 57
+58 58
+59 59
+5A 5A
+5B 5B
+5C 815F
+5D 5D
+5E 5E
+5F 5F
+60 60
+61 61
+62 62
+63 63
+64 64
+65 65
+66 66
+67 67
+68 68
+69 69
+6A 6A
+6B 6B
+6C 6C
+6D 6D
+6E 6E
+6F 6F
+70 70
+71 71
+72 72
+73 73
+74 74
+75 75
+76 76
+77 77
+78 78
+79 79
+7A 7A
+7B 7B
+7C 7C
+7D 7D
+7E 7E
+7F 7F
+C2A2 8191
+C2A3 8192
+C2A7 8198
+C2A8 814E
+C2AC 81CA
+C2B0 818B
+C2B1 817D
+C2B4 814C
+C2B6 81F7
+C397 817E
+C3B7 8180
+CE91 839F
+CE92 83A0
+CE93 83A1
+CE94 83A2
+CE95 83A3
+CE96 83A4
+CE97 83A5
+CE98 83A6
+CE99 83A7
+CE9A 83A8
+CE9B 83A9
+CE9C 83AA
+CE9D 83AB
+CE9E 83AC
+CE9F 83AD
+CEA0 83AE
+CEA1 83AF
+CEA3 83B0
+CEA4 83B1
+CEA5 83B2
+CEA6 83B3
+CEA7 83B4
+CEA8 83B5
+CEA9 83B6
+CEB1 83BF
+CEB2 83C0
+CEB3 83C1
+CEB4 83C2
+CEB5 83C3
+CEB6 83C4
+CEB7 83C5
+CEB8 83C6
+CEB9 83C7
+CEBA 83C8
+CEBB 83C9
+CEBC 83CA
+CEBD 83CB
+CEBE 83CC
+CEBF 83CD
+CF80 83CE
+CF81 83CF
+CF83 83D0
+CF84 83D1
+CF85 83D2
+CF86 83D3
+CF87 83D4
+CF88 83D5
+CF89 83D6
+D081 8446
+D090 8440
+D091 8441
+D092 8442
+D093 8443
+D094 8444
+D095 8445
+D096 8447
+D097 8448
+D098 8449
+D099 844A
+D09A 844B
+D09B 844C
+D09C 844D
+D09D 844E
+D09E 844F
+D09F 8450
+D0A0 8451
+D0A1 8452
+D0A2 8453
+D0A3 8454
+D0A4 8455
+D0A5 8456
+D0A6 8457
+D0A7 8458
+D0A8 8459
+D0A9 845A
+D0AA 845B
+D0AB 845C
+D0AC 845D
+D0AD 845E
+D0AE 845F
+D0AF 8460
+D0B0 8470
+D0B1 8471
+D0B2 8472
+D0B3 8473
+D0B4 8474
+D0B5 8475
+D0B6 8477
+D0B7 8478
+D0B8 8479
+D0B9 847A
+D0BA 847B
+D0BB 847C
+D0BC 847D
+D0BD 847E
+D0BE 8480
+D0BF 8481
+D180 8482
+D181 8483
+D182 8484
+D183 8485
+D184 8486
+D185 8487
+D186 8488
+D187 8489
+D188 848A
+D189 848B
+D18A 848C
+D18B 848D
+D18C 848E
+D18D 848F
+D18E 8490
+D18F 8491
+D191 8476
+E28090 815D
+E28095 815C
+E28096 8161
+E28098 8165
+E28099 8166
+E2809C 8167
+E2809D 8168
+E280A0 81F5
+E280A1 81F6
+E280A5 8164
+E280A6 8163
+E280B0 81F1
+E280B2 818C
+E280B3 818D
+E280BB 81A6
+E28483 818E
+E284AB 81F0
+E28690 81A9
+E28691 81AA
+E28692 81A8
+E28693 81AB
+E28792 81CB
+E28794 81CC
+E28880 81CD
+E28882 81DD
+E28883 81CE
+E28887 81DE
+E28888 81B8
+E2888B 81B9
+E28892 817C
+E2889A 81E3
+E2889D 81E5
+E2889E 8187
+E288A0 81DA
+E288A7 81C8
+E288A8 81C9
+E288A9 81BF
+E288AA 81BE
+E288AB 81E7
+E288AC 81E8
+E288B4 8188
+E288B5 81E6
+E288BD 81E4
+E28992 81E0
+E289A0 8182
+E289A1 81DF
+E289A6 8185
+E289A7 8186
+E289AA 81E1
+E289AB 81E2
+E28A82 81BC
+E28A83 81BD
+E28A86 81BA
+E28A87 81BB
+E28AA5 81DB
+E28C92 81DC
+E29480 849F
+E29481 84AA
+E29482 84A0
+E29483 84AB
+E2948C 84A1
+E2948F 84AC
+E29490 84A2
+E29493 84AD
+E29494 84A4
+E29497 84AF
+E29498 84A3
+E2949B 84AE
+E2949C 84A5
+E2949D 84BA
+E294A0 84B5
+E294A3 84B0
+E294A4 84A7
+E294A5 84BC
+E294A8 84B7
+E294AB 84B2
+E294AC 84A6
+E294AF 84B6
+E294B0 84BB
+E294B3 84B1
+E294B4 84A8
+E294B7 84B8
+E294B8 84BD
+E294BB 84B3
+E294BC 84A9
+E294BF 84B9
+E29582 84BE
+E2958B 84B4
+E296A0 81A1
+E296A1 81A0
+E296B2 81A3
+E296B3 81A2
+E296BC 81A5
+E296BD 81A4
+E29786 819F
+E29787 819E
+E2978B 819B
+E2978E 819D
+E2978F 819C
+E297AF 81FC
+E29885 819A
+E29886 8199
+E29980 818A
+E29982 8189
+E299AA 81F4
+E299AD 81F3
+E299AF 81F2
+E38080 8140
+E38081 8141
+E38082 8142
+E38083 8156
+E38085 8158
+E38086 8159
+E38087 815A
+E38088 8171
+E38089 8172
+E3808A 8173
+E3808B 8174
+E3808C 8175
+E3808D 8176
+E3808E 8177
+E3808F 8178
+E38090 8179
+E38091 817A
+E38092 81A7
+E38093 81AC
+E38094 816B
+E38095 816C
+E3809C 8160
+E38181 829F
+E38182 82A0
+E38183 82A1
+E38184 82A2
+E38185 82A3
+E38186 82A4
+E38187 82A5
+E38188 82A6
+E38189 82A7
+E3818A 82A8
+E3818B 82A9
+E3818C 82AA
+E3818D 82AB
+E3818E 82AC
+E3818F 82AD
+E38190 82AE
+E38191 82AF
+E38192 82B0
+E38193 82B1
+E38194 82B2
+E38195 82B3
+E38196 82B4
+E38197 82B5
+E38198 82B6
+E38199 82B7
+E3819A 82B8
+E3819B 82B9
+E3819C 82BA
+E3819D 82BB
+E3819E 82BC
+E3819F 82BD
+E381A0 82BE
+E381A1 82BF
+E381A2 82C0
+E381A3 82C1
+E381A4 82C2
+E381A5 82C3
+E381A6 82C4
+E381A7 82C5
+E381A8 82C6
+E381A9 82C7
+E381AA 82C8
+E381AB 82C9
+E381AC 82CA
+E381AD 82CB
+E381AE 82CC
+E381AF 82CD
+E381B0 82CE
+E381B1 82CF
+E381B2 82D0
+E381B3 82D1
+E381B4 82D2
+E381B5 82D3
+E381B6 82D4
+E381B7 82D5
+E381B8 82D6
+E381B9 82D7
+E381BA 82D8
+E381BB 82D9
+E381BC 82DA
+E381BD 82DB
+E381BE 82DC
+E381BF 82DD
+E38280 82DE
+E38281 82DF
+E38282 82E0
+E38283 82E1
+E38284 82E2
+E38285 82E3
+E38286 82E4
+E38287 82E5
+E38288 82E6
+E38289 82E7
+E3828A 82E8
+E3828B 82E9
+E3828C 82EA
+E3828D 82EB
+E3828E 82EC
+E3828F 82ED
+E38290 82EE
+E38291 82EF
+E38292 82F0
+E38293 82F1
+E3829B 814A
+E3829C 814B
+E3829D 8154
+E3829E 8155
+E382A1 8340
+E382A2 8341
+E382A3 8342
+E382A4 8343
+E382A5 8344
+E382A6 8345
+E382A7 8346
+E382A8 8347
+E382A9 8348
+E382AA 8349
+E382AB 834A
+E382AC 834B
+E382AD 834C
+E382AE 834D
+E382AF 834E
+E382B0 834F
+E382B1 8350
+E382B2 8351
+E382B3 8352
+E382B4 8353
+E382B5 8354
+E382B6 8355
+E382B7 8356
+E382B8 8357
+E382B9 8358
+E382BA 8359
+E382BB 835A
+E382BC 835B
+E382BD 835C
+E382BE 835D
+E382BF 835E
+E38380 835F
+E38381 8360
+E38382 8361
+E38383 8362
+E38384 8363
+E38385 8364
+E38386 8365
+E38387 8366
+E38388 8367
+E38389 8368
+E3838A 8369
+E3838B 836A
+E3838C 836B
+E3838D 836C
+E3838E 836D
+E3838F 836E
+E38390 836F
+E38391 8370
+E38392 8371
+E38393 8372
+E38394 8373
+E38395 8374
+E38396 8375
+E38397 8376
+E38398 8377
+E38399 8378
+E3839A 8379
+E3839B 837A
+E3839C 837B
+E3839D 837C
+E3839E 837D
+E3839F 837E
+E383A0 8380
+E383A1 8381
+E383A2 8382
+E383A3 8383
+E383A4 8384
+E383A5 8385
+E383A6 8386
+E383A7 8387
+E383A8 8388
+E383A9 8389
+E383AA 838A
+E383AB 838B
+E383AC 838C
+E383AD 838D
+E383AE 838E
+E383AF 838F
+E383B0 8390
+E383B1 8391
+E383B2 8392
+E383B3 8393
+E383B4 8394
+E383B5 8395
+E383B6 8396
+E383BB 8145
+E383BC 815B
+E383BD 8152
+E383BE 8153
+E4B880 88EA
+E4B881 929A
+E4B883 8EB5
+E4B887 969C
+E4B888 8FE4
+E4B889 8E4F
+E4B88A 8FE3
+E4B88B 89BA
+E4B88D 9573
+E4B88E 975E
+E4B890 98A0
+E4B891 894E
+E4B894 8A8E
+E4B895 98A1
+E4B896 90A2
+E4B897 99C0
+E4B898 8B75
+E4B899 95B8
+E4B89E 8FE5
+E4B8A1 97BC
+E4B8A6 95C0
+E4B8AA 98A2
+E4B8AD 9286
+E4B8B1 98A3
+E4B8B2 8BF8
+E4B8B6 98A4
+E4B8B8 8ADB
+E4B8B9 924F
+E4B8BB 8EE5
+E4B8BC 98A5
+E4B8BF 98A6
+E4B982 98A7
+E4B983 9454
+E4B985 8B76
+E4B98B 9456
+E4B98D 93E1
+E4B98E 8CC1
+E4B98F 9652
+E4B995 E568
+E4B996 98A8
+E4B997 8FE6
+E4B998 98A9
+E4B999 89B3
+E4B99D 8BE3
+E4B99E 8CEE
+E4B99F 96E7
+E4B9A2 9BA4
+E4B9B1 9790
+E4B9B3 93FB
+E4B9BE 8AA3
+E4BA80 8B54
+E4BA82 98AA
+E4BA85 98AB
+E4BA86 97B9
+E4BA88 975C
+E4BA89 9188
+E4BA8A 98AD
+E4BA8B 8E96
+E4BA8C 93F1
+E4BA8E 98B0
+E4BA91 895D
+E4BA92 8CDD
+E4BA94 8CDC
+E4BA95 88E4
+E4BA98 986A
+E4BA99 9869
+E4BA9B 8DB1
+E4BA9C 889F
+E4BA9E 98B1
+E4BA9F 98B2
+E4BAA0 98B3
+E4BAA1 9653
+E4BAA2 98B4
+E4BAA4 8CF0
+E4BAA5 88E5
+E4BAA6 9692
+E4BAA8 8B9C
+E4BAAB 8B9D
+E4BAAC 8B9E
+E4BAAD 92E0
+E4BAAE 97BA
+E4BAB0 98B5
+E4BAB3 98B6
+E4BAB6 98B7
+E4BABA 906C
+E4BB80 8F59
+E4BB81 906D
+E4BB82 98BC
+E4BB84 98BA
+E4BB86 98BB
+E4BB87 8B77
+E4BB8A 8DA1
+E4BB8B 89EE
+E4BB8D 98B9
+E4BB8E 98B8
+E4BB8F 95A7
+E4BB94 8E65
+E4BB95 8E64
+E4BB96 91BC
+E4BB97 98BD
+E4BB98 9574
+E4BB99 90E5
+E4BB9D 8157
+E4BB9E 98BE
+E4BB9F 98C0
+E4BBA3 91E3
+E4BBA4 97DF
+E4BBA5 88C8
+E4BBAD 98BF
+E4BBAE 89BC
+E4BBB0 8BC2
+E4BBB2 9287
+E4BBB6 8C8F
+E4BBB7 98C1
+E4BBBB 9443
+E4BC81 8AE9
+E4BC89 98C2
+E4BC8A 88C9
+E4BC8D 8CDE
+E4BC8E 8AEA
+E4BC8F 959A
+E4BC90 94B0
+E4BC91 8B78
+E4BC9A 89EF
+E4BC9C 98E5
+E4BC9D 9360
+E4BCAF 948C
+E4BCB0 98C4
+E4BCB4 94BA
+E4BCB6 97E0
+E4BCB8 904C
+E4BCBA 8E66
+E4BCBC 8E97
+E4BCBD 89BE
+E4BD83 92CF
+E4BD86 9241
+E4BD87 98C8
+E4BD8D 88CA
+E4BD8E 92E1
+E4BD8F 8F5A
+E4BD90 8DB2
+E4BD91 9743
+E4BD93 91CC
+E4BD95 89BD
+E4BD97 98C7
+E4BD99 975D
+E4BD9A 98C3
+E4BD9B 98C5
+E4BD9C 8DEC
+E4BD9D 98C6
+E4BD9E 9B43
+E4BDA9 98CE
+E4BDAF 98D1
+E4BDB0 98CF
+E4BDB3 89C0
+E4BDB5 95B9
+E4BDB6 98C9
+E4BDBB 98CD
+E4BDBC 8CF1
+E4BDBF 8E67
+E4BE83 8AA4
+E4BE86 98D2
+E4BE88 98CA
+E4BE8B 97E1
+E4BE8D 8E98
+E4BE8F 98CB
+E4BE91 98D0
+E4BE96 98D3
+E4BE98 98CC
+E4BE9B 8B9F
+E4BE9D 88CB
+E4BEA0 8BA0
+E4BEA1 89BF
+E4BEAB 9B44
+E4BEAD 9699
+E4BEAE 958E
+E4BEAF 8CF2
+E4BEB5 904E
+E4BEB6 97B5
+E4BEBF 95D6
+E4BF82 8C57
+E4BF83 91A3
+E4BF84 89E2
+E4BF8A 8F72
+E4BF8E 98D7
+E4BF90 98DC
+E4BF91 98DA
+E4BF94 98D5
+E4BF97 91AD
+E4BF98 98D8
+E4BF9A 98DB
+E4BF9B 98D9
+E4BF9D 95DB
+E4BF9F 98D6
+E4BFA1 904D
+E4BFA3 9693
+E4BFA4 98DD
+E4BFA5 98DE
+E4BFAE 8F43
+E4BFAF 98EB
+E4BFB3 946F
+E4BFB5 9555
+E4BFB6 98E6
+E4BFB8 95EE
+E4BFBA 89B4
+E4BFBE 98EA
+E58085 98E4
+E58086 98ED
+E58089 9171
+E5808B 8CC2
+E5808D 947B
+E5808F E0C5
+E58091 98EC
+E58092 937C
+E58094 98E1
+E58096 8CF4
+E58099 8CF3
+E5809A 98DF
+E5809F 8ED8
+E580A1 98E7
+E580A3 95ED
+E580A4 926C
+E580A5 98E3
+E580A6 8C91
+E580A8 98E0
+E580A9 98E8
+E580AA 98E2
+E580AB 97CF
+E580AC 98E9
+E580AD 9860
+E580B6 8BE4
+E580B9 8C90
+E58183 98EE
+E58187 98EF
+E58188 98F3
+E58189 88CC
+E5818F 95CE
+E58190 98F2
+E58195 98F1
+E58196 98F5
+E5819A 98F4
+E5819C 92E2
+E581A5 8C92
+E581AC 98F6
+E581B2 8EC3
+E581B4 91A4
+E581B5 92E3
+E581B6 8BF4
+E581B8 98F7
+E581BD 8B55
+E58280 98F8
+E58285 98FA
+E5828D 9654
+E58291 8C86
+E58298 8E50
+E58299 94F5
+E5829A 98F9
+E582AC 8DC3
+E582AD 9762
+E582B2 98FC
+E582B3 9942
+E582B4 98FB
+E582B5 8DC2
+E582B7 8F9D
+E582BE 8C58
+E58382 9943
+E58385 8BCD
+E58389 9940
+E5838A 9941
+E5838D 93AD
+E5838F 919C
+E58391 8BA1
+E58395 966C
+E58396 9944
+E5839A 97BB
+E5839E 9945
+E583A3 9948
+E583A5 9946
+E583A7 916D
+E583AD 9947
+E583AE 9949
+E583B5 994B
+E583B9 994A
+E583BB 95C6
+E58480 8B56
+E58481 994D
+E58482 994E
+E58484 89AD
+E58489 994C
+E58492 8EF2
+E58494 9951
+E58495 9950
+E58496 994F
+E58498 98D4
+E5849A 9952
+E5849F 8F9E
+E584A1 9953
+E584AA 9744
+E584B2 96D7
+E584B7 9955
+E584BA 9954
+E584BB 9957
+E584BC 9956
+E584BF 9958
+E58580 9959
+E58581 88F2
+E58583 8CB3
+E58584 8C5A
+E58585 8F5B
+E58586 929B
+E58587 8BA2
+E58588 90E6
+E58589 8CF5
+E5858B 8D8E
+E5858C 995B
+E5858D 96C6
+E5858E 9365
+E58590 8E99
+E58592 995A
+E58594 995C
+E5859A 937D
+E5859C 8A95
+E585A2 995D
+E585A5 93FC
+E585A8 9153
+E585A9 995F
+E585AA 9960
+E585AB 94AA
+E585AC 8CF6
+E585AD 985A
+E585AE 9961
+E585B1 8BA4
+E585B5 95BA
+E585B6 91B4
+E585B7 8BEF
+E585B8 9354
+E585BC 8C93
+E58680 9962
+E58682 9963
+E58685 93E0
+E58686 897E
+E58689 9966
+E5868A 8DFB
+E5868C 9965
+E5868D 8DC4
+E5868F 9967
+E58690 E3EC
+E58691 9968
+E58692 9660
+E58693 9969
+E58695 996A
+E58696 996B
+E58697 8FE7
+E58699 8ECA
+E586A0 8AA5
+E586A2 996E
+E586A4 996C
+E586A5 96BB
+E586A6 996D
+E586A8 9579
+E586A9 996F
+E586AA 9970
+E586AB 9971
+E586AC 937E
+E586B0 9975
+E586B1 9973
+E586B2 9974
+E586B3 9972
+E586B4 8DE1
+E586B5 9976
+E586B6 96E8
+E586B7 97E2
+E586BD 9977
+E58784 90A6
+E58785 9978
+E58786 8F79
+E58789 9979
+E5878B 929C
+E5878C 97BD
+E5878D 9380
+E58796 99C3
+E5879B 997A
+E5879C EAA3
+E5879D 8BC3
+E587A0 997B
+E587A1 967D
+E587A6 8F88
+E587A7 91FA
+E587A9 997D
+E587AA 93E2
+E587AD 997E
+E587B0 9980
+E587B1 8A4D
+E587B5 9981
+E587B6 8BA5
+E587B8 93CA
+E587B9 899A
+E587BA 8F6F
+E587BD 949F
+E587BE 9982
+E58880 9381
+E58883 906E
+E58884 9983
+E58886 95AA
+E58887 90D8
+E58888 8AA0
+E5888A 8AA7
+E5888B 9984
+E5888E 9986
+E58891 8C59
+E58894 9985
+E58897 97F1
+E5889D 8F89
+E588A4 94BB
+E588A5 95CA
+E588A7 9987
+E588A9 9798
+E588AA 9988
+E588AE 9989
+E588B0 939E
+E588B3 998A
+E588B6 90A7
+E588B7 8DFC
+E588B8 8C94
+E588B9 998B
+E588BA 8E68
+E588BB 8D8F
+E58983 92E4
+E58984 998D
+E58987 91A5
+E5898A 8DED
+E5898B 998E
+E5898C 998F
+E5898D 914F
+E5898F 998C
+E58994 9991
+E58996 9655
+E5899B 8D84
+E5899E 9990
+E589A3 8C95
+E589A4 8DDC
+E589A5 948D
+E589A9 9994
+E589AA 9992
+E589AF 959B
+E589B0 8FE8
+E589B1 999B
+E589B2 8A84
+E589B3 9995
+E589B4 9993
+E589B5 916E
+E589BD 9997
+E589BF 9996
+E58A83 8A63
+E58A87 8C80
+E58A88 999C
+E58A89 97AB
+E58A8D 9998
+E58A91 999D
+E58A92 999A
+E58A94 9999
+E58A9B 97CD
+E58A9F 8CF7
+E58AA0 89C1
+E58AA3 97F2
+E58AA9 8F95
+E58AAA 9377
+E58AAB 8D85
+E58AAC 99A0
+E58AAD 99A1
+E58AB1 97E3
+E58AB4 984A
+E58AB5 99A3
+E58AB9 8CF8
+E58ABC 99A2
+E58ABE 8A4E
+E58B81 99A4
+E58B83 9675
+E58B85 92BA
+E58B87 9745
+E58B89 95D7
+E58B8D 99A5
+E58B92 E8D3
+E58B95 93AE
+E58B97 99A6
+E58B98 8AA8
+E58B99 96B1
+E58B9D 8F9F
+E58B9E 99A7
+E58B9F 95E5
+E58BA0 99AB
+E58BA2 90A8
+E58BA3 99A8
+E58BA4 8BCE
+E58BA6 99A9
+E58BA7 8AA9
+E58BB2 8C4D
+E58BB3 99AC
+E58BB5 99AD
+E58BB8 99AE
+E58BB9 99AF
+E58BBA 8ED9
+E58BBE 8CF9
+E58BBF 96DC
+E58C81 96E6
+E58C82 93F5
+E58C85 95EF
+E58C86 99B0
+E58C88 99B1
+E58C8D 99B3
+E58C8F 99B5
+E58C90 99B4
+E58C95 99B6
+E58C96 89BB
+E58C97 966B
+E58C99 8DFA
+E58C9A 99B7
+E58C9D 9178
+E58CA0 8FA0
+E58CA1 8BA7
+E58CA3 99B8
+E58CAA 94D9
+E58CAF 99B9
+E58CB1 99BA
+E58CB3 99BB
+E58CB8 99BC
+E58CB9 9543
+E58CBA 8BE6
+E58CBB 88E3
+E58CBF 93BD
+E58D80 99BD
+E58D81 8F5C
+E58D83 90E7
+E58D85 99BF
+E58D86 99BE
+E58D87 8FA1
+E58D88 8CDF
+E58D89 99C1
+E58D8A 94BC
+E58D8D 99C2
+E58D91 94DA
+E58D92 91B2
+E58D93 91EC
+E58D94 8BA6
+E58D97 93EC
+E58D98 9250
+E58D9A 948E
+E58D9C 966D
+E58D9E 99C4
+E58DA0 90E8
+E58DA6 8C54
+E58DA9 99C5
+E58DAE 99C6
+E58DAF 894B
+E58DB0 88F3
+E58DB1 8AEB
+E58DB3 91A6
+E58DB4 8B70
+E58DB5 9791
+E58DB7 99C9
+E58DB8 89B5
+E58DBB 99C8
+E58DBF 8BA8
+E58E82 99CA
+E58E84 96EF
+E58E96 99CB
+E58E98 97D0
+E58E9A 8CFA
+E58E9F 8CB4
+E58EA0 99CC
+E58EA5 99CE
+E58EA6 99CD
+E58EA8 907E
+E58EA9 8958
+E58EAD 897D
+E58EAE 99CF
+E58EB0 99D0
+E58EB3 8CB5
+E58EB6 99D1
+E58EBB 8B8E
+E58F82 8E51
+E58F83 99D2
+E58F88 9694
+E58F89 8DB3
+E58F8A 8B79
+E58F8B 9746
+E58F8C 916F
+E58F8D 94BD
+E58F8E 8EFB
+E58F94 8F66
+E58F96 8EE6
+E58F97 8EF3
+E58F99 8F96
+E58F9B 94BE
+E58F9F 99D5
+E58FA1 8962
+E58FA2 9170
+E58FA3 8CFB
+E58FA4 8CC3
+E58FA5 8BE5
+E58FA8 99D9
+E58FA9 9240
+E58FAA 91FC
+E58FAB 8BA9
+E58FAC 8FA2
+E58FAD 99DA
+E58FAE 99D8
+E58FAF 89C2
+E58FB0 91E4
+E58FB1 8EB6
+E58FB2 8E6A
+E58FB3 8945
+E58FB6 8A90
+E58FB7 8D86
+E58FB8 8E69
+E58FBA 99DB
+E59081 99DC
+E59083 8B68
+E59084 8A65
+E59088 8D87
+E59089 8B67
+E5908A 92DD
+E5908B 8944
+E5908C 93AF
+E5908D 96BC
+E5908E 8D40
+E5908F 9799
+E59090 9366
+E59091 8CFC
+E5909B 8C4E
+E5909D 99E5
+E5909F 8BE1
+E590A0 9669
+E590A6 94DB
+E590A9 99E4
+E590AB 8ADC
+E590AC 99DF
+E590AD 99E0
+E590AE 99E2
+E590B6 99E3
+E590B8 8B7A
+E590B9 9081
+E590BB 95AB
+E590BC 99E1
+E590BD 99DD
+E590BE 8CE1
+E59180 99DE
+E59182 9843
+E59186 95F0
+E59188 92E6
+E59189 8CE0
+E5918A 8D90
+E5918E 99E6
+E59191 93DB
+E5919F 99EA
+E591A8 8EFC
+E591AA 8EF4
+E591B0 99ED
+E591B1 99EB
+E591B3 96A1
+E591B5 99E8
+E591B6 99F1
+E591B7 99EC
+E591BB 99EF
+E591BC 8CC4
+E591BD 96BD
+E59280 99F0
+E59284 99F2
+E59286 99F4
+E5928B 8DEE
+E5928C 9861
+E5928E 99E9
+E5928F 99E7
+E59290 99F3
+E59292 99EE
+E592A2 99F6
+E592A4 9A42
+E592A5 99F8
+E592A8 99FC
+E592AB 9A40
+E592AC 99F9
+E592AF 9A5D
+E592B2 8DE7
+E592B3 8A50
+E592B8 99F7
+E592BC 9A44
+E592BD 88F4
+E592BE 9A43
+E59380 88A3
+E59381 9569
+E59382 9A41
+E59384 99FA
+E59387 99F5
+E59388 99FB
+E59389 8DC6
+E59398 9A45
+E593A1 88F5
+E593A2 9A4E
+E593A5 9A46
+E593A6 9A47
+E593A8 8FA3
+E593A9 9689
+E593AD 9A4C
+E593AE 9A4B
+E593B2 934E
+E593BA 9A4D
+E593BD 9A4A
+E59484 8953
+E59486 8DB4
+E59487 904F
+E5948F 9A48
+E59490 9382
+E59494 9A49
+E59496 88A0
+E594AE 9A53
+E594AF 9742
+E594B1 8FA5
+E594B3 9A59
+E594B8 9A58
+E594B9 9A4F
+E594BE 91C1
+E59580 9A50
+E59584 91ED
+E59585 9A55
+E59586 8FA4
+E5958C 9A52
+E5958F 96E2
+E59593 8C5B
+E59596 9A56
+E59597 9A57
+E5959C 9A54
+E5959D 9A5A
+E595A3 9A51
+E595BB 9A60
+E595BC 9A65
+E595BE 9A61
+E59680 9A5C
+E59683 9A66
+E59684 9150
+E59687 9A68
+E59689 8D41
+E5968A 9A5E
+E5968B 929D
+E59698 9A62
+E59699 9A5B
+E5969A 8AAB
+E5969C 8AEC
+E5969D 8A85
+E5969E 9A63
+E5969F 9A5F
+E596A7 8C96
+E596A8 9A69
+E596A9 9A67
+E596AA 9172
+E596AB 8B69
+E596AC 8BAA
+E596AE 9A64
+E596B0 8BF2
+E596B6 8963
+E59784 9A6D
+E59785 9A6B
+E59787 9AA5
+E59794 9A70
+E5979A 9A6A
+E5979C 9A6E
+E5979F 9A6C
+E597A3 8E6B
+E597A4 9A6F
+E597B7 9A72
+E597B9 9A77
+E597BD 9A75
+E597BE 9A74
+E59886 9251
+E59889 89C3
+E59894 9A71
+E59896 9A73
+E59897 8FA6
+E59898 8952
+E5989B 9A76
+E598A9 89DC
+E598AF 9A82
+E598B1 8FFA
+E598B2 9A7D
+E598B4 9A7B
+E598B6 9A7C
+E598B8 9A7E
+E59982 895C
+E5998C 9158
+E5998E 9A78
+E59990 9A79
+E5999B 8A9A
+E599A4 9A81
+E599A8 8AED
+E599AA 9A84
+E599AB 9A80
+E599AC 9A83
+E599B4 95AC
+E599B8 93D3
+E599BA 94B6
+E59A80 9A86
+E59A86 9A85
+E59A87 8A64
+E59A8A 9A87
+E59A8F 9A8A
+E59A94 9A89
+E59AA0 9A88
+E59AA2 9458
+E59AA5 9A8B
+E59AAE 9A8C
+E59AB4 9A8E
+E59AB6 9A8D
+E59ABC 9A90
+E59B80 9A93
+E59B81 9A91
+E59B82 9A8F
+E59B83 9A92
+E59B88 9A94
+E59B8E 9A95
+E59B91 9A96
+E59B93 9A97
+E59B97 9A98
+E59B98 9964
+E59B9A 8EFA
+E59B9B 8E6C
+E59B9E 89F1
+E59BA0 88F6
+E59BA3 9263
+E59BAE 9A99
+E59BB0 8DA2
+E59BB2 88CD
+E59BB3 907D
+E59BB9 9A9A
+E59BBA 8CC5
+E59BBD 8D91
+E59BBF 9A9C
+E59C80 9A9B
+E59C83 95DE
+E59C84 9A9D
+E59C88 9A9F
+E59C89 9A9E
+E59C8B 9AA0
+E59C8D 9AA1
+E59C8F 8C97
+E59C92 8980
+E59C93 9AA2
+E59C96 9AA4
+E59C98 9AA3
+E59C9C 9AA6
+E59C9F 9379
+E59CA6 9AA7
+E59CA7 88B3
+E59CA8 8DDD
+E59CAD 8C5C
+E59CB0 926E
+E59CB7 9AA8
+E59CB8 9AA9
+E59CBB 9AAB
+E59D80 9AAC
+E59D82 8DE2
+E59D87 8BCF
+E59D8A 9656
+E59D8E 9AAA
+E59D8F 9AAD
+E59D90 8DBF
+E59D91 8D42
+E59DA1 9AB1
+E59DA4 8DA3
+E59DA6 9252
+E59DA9 9AAE
+E59DAA 92D8
+E59DBF 9AB2
+E59E82 9082
+E59E88 9AB0
+E59E89 9AB3
+E59E8B 8C5E
+E59E93 9AB4
+E59EA0 9AB5
+E59EA2 8D43
+E59EA3 8A5F
+E59EA4 9AB7
+E59EAA 9AB8
+E59EB0 9AB9
+E59EB3 9AB6
+E59F80 9AAF
+E59F83 9ABA
+E59F86 9ABB
+E59F8B 9684
+E59F8E 8FE9
+E59F92 9ABD
+E59F93 9ABE
+E59F94 9ABC
+E59F96 9AC0
+E59F9C 9457
+E59F9F 88E6
+E59FA0 9575
+E59FA3 9AC1
+E59FB4 8FFB
+E59FB7 8EB7
+E59FB9 947C
+E59FBA 8AEE
+E59FBC 8DE9
+E5A080 9678
+E5A082 93B0
+E5A085 8C98
+E5A086 91CD
+E5A08A 9ABF
+E5A08B 9AC2
+E5A095 91C2
+E5A099 9AC3
+E5A09D 9AC4
+E5A0A1 9AC6
+E5A0A4 92E7
+E5A0AA 8AAC
+E5A0AF EA9F
+E5A0B0 8981
+E5A0B1 95F1
+E5A0B4 8FEA
+E5A0B5 9367
+E5A0BA 8DE4
+E5A0BD 9ACC
+E5A180 95BB
+E5A181 97DB
+E5A18A 89F2
+E5A18B 9AC8
+E5A191 9159
+E5A192 9ACB
+E5A194 9383
+E5A197 9368
+E5A198 9384
+E5A199 94B7
+E5A19A 92CB
+E5A19E 8DC7
+E5A1A2 9AC7
+E5A1A9 8996
+E5A1AB 9355
+E5A1B0 9AC9
+E5A1B2 9AC5
+E5A1B5 906F
+E5A1B9 9ACD
+E5A1BE 8F6D
+E5A283 8BAB
+E5A285 9ACE
+E5A293 95E6
+E5A297 919D
+E5A29C 92C4
+E5A29F 9AD0
+E5A2A8 966E
+E5A2AB 9AD1
+E5A2AE 9AD6
+E5A2B3 95AD
+E5A2B8 9AD5
+E5A2B9 9ACF
+E5A2BA 9AD2
+E5A2BB 9AD4
+E5A2BE 8DA4
+E5A381 95C7
+E5A385 9AD7
+E5A387 9264
+E5A38A 89F3
+E5A38C 8FEB
+E5A391 9AD9
+E5A393 9AD8
+E5A395 8D88
+E5A397 9ADA
+E5A398 9ADC
+E5A399 9ADB
+E5A39C 9ADE
+E5A39E 9AD3
+E5A39F 9AE0
+E5A3A4 9ADF
+E5A3A5 9ADD
+E5A3AB 8E6D
+E5A3AC 9070
+E5A3AE 9173
+E5A3AF 9AE1
+E5A3B0 90BA
+E5A3B1 88EB
+E5A3B2 9484
+E5A3B7 92D9
+E5A3B9 9AE3
+E5A3BA 9AE2
+E5A3BB 9AE4
+E5A3BC 9AE5
+E5A3BD 9AE6
+E5A482 9AE7
+E5A489 95CF
+E5A48A 9AE8
+E5A48F 89C4
+E5A490 9AE9
+E5A495 975B
+E5A496 8A4F
+E5A498 99C7
+E5A499 8F67
+E5A49A 91BD
+E5A49B 9AEA
+E5A49C 96E9
+E5A4A2 96B2
+E5A4A5 9AEC
+E5A4A7 91E5
+E5A4A9 9356
+E5A4AA 91BE
+E5A4AB 9576
+E5A4AC 9AED
+E5A4AD 9AEE
+E5A4AE 899B
+E5A4B1 8EB8
+E5A4B2 9AEF
+E5A4B7 88CE
+E5A4B8 9AF0
+E5A4BE 9AF1
+E5A584 8982
+E5A587 8AEF
+E5A588 93DE
+E5A589 95F2
+E5A58E 9AF5
+E5A58F 9174
+E5A590 9AF4
+E5A591 8C5F
+E5A594 967A
+E5A595 9AF3
+E5A597 9385
+E5A598 9AF7
+E5A59A 9AF6
+E5A5A0 9AF9
+E5A5A2 9AF8
+E5A5A5 899C
+E5A5A7 9AFA
+E5A5A8 8FA7
+E5A5A9 9AFC
+E5A5AA 9244
+E5A5AC 9AFB
+E5A5AE 95B1
+E5A5B3 8F97
+E5A5B4 937A
+E5A5B8 9B40
+E5A5BD 8D44
+E5A681 9B41
+E5A682 9440
+E5A683 94DC
+E5A684 96CF
+E5A68A 9444
+E5A68D 9B4A
+E5A693 8B57
+E5A696 9764
+E5A699 96AD
+E5A69B 9BAA
+E5A69D 9B42
+E5A6A3 9B45
+E5A6A5 91C3
+E5A6A8 9657
+E5A6AC 9369
+E5A6B2 9B46
+E5A6B9 9685
+E5A6BB 8DC8
+E5A6BE 8FA8
+E5A786 9B47
+E5A789 8E6F
+E5A78B 8E6E
+E5A790 88B7
+E5A791 8CC6
+E5A793 90A9
+E5A794 88CF
+E5A799 9B4B
+E5A79A 9B4C
+E5A79C 9B49
+E5A7A5 8957
+E5A7A6 8AAD
+E5A7A8 9B48
+E5A7AA 96C3
+E5A7AB 9550
+E5A7B6 88A6
+E5A7BB 88F7
+E5A7BF 8E70
+E5A881 88D0
+E5A883 88A1
+E5A889 9B51
+E5A891 9B4F
+E5A898 96BA
+E5A89A 9B52
+E5A89C 9B50
+E5A89F 9B4E
+E5A8A0 9050
+E5A8A5 9B4D
+E5A8A9 95D8
+E5A8AF 8CE2
+E5A8B5 9B56
+E5A8B6 9B57
+E5A8BC 8FA9
+E5A980 9B53
+E5A981 984B
+E5A986 946B
+E5A989 9B55
+E5A99A 8DA5
+E5A9A2 9B58
+E5A9A6 9577
+E5A9AA 9B59
+E5A9AC 9B54
+E5A9BF 96B9
+E5AA92 947D
+E5AA9A 9B5A
+E5AA9B 9551
+E5AABC 9B5B
+E5AABD 9B5F
+E5AABE 9B5C
+E5AB81 89C5
+E5AB82 9B5E
+E5AB89 8EB9
+E5AB8B 9B5D
+E5AB8C 8C99
+E5AB90 9B6B
+E5AB96 9B64
+E5AB97 9B61
+E5ABA1 9284
+E5ABA3 9B60
+E5ABA6 9B62
+E5ABA9 9B63
+E5ABBA 9B65
+E5ABBB 9B66
+E5AC89 8AF0
+E5AC8B 9B68
+E5AC8C 9B67
+E5AC96 9B69
+E5ACA2 8FEC
+E5ACAA 9B6C
+E5ACAC 92DA
+E5ACB0 8964
+E5ACB2 9B6A
+E5ACB6 9B6D
+E5ACBE 9B6E
+E5AD80 9B71
+E5AD83 9B6F
+E5AD85 9B70
+E5AD90 8E71
+E5AD91 9B72
+E5AD94 8D45
+E5AD95 9B73
+E5AD97 8E9A
+E5AD98 91B6
+E5AD9A 9B74
+E5AD9B 9B75
+E5AD9C 8E79
+E5AD9D 8D46
+E5AD9F 96D0
+E5ADA3 8B47
+E5ADA4 8CC7
+E5ADA5 9B76
+E5ADA6 8A77
+E5ADA9 9B77
+E5ADAB 91B7
+E5ADB0 9B78
+E5ADB1 9BA1
+E5ADB3 9B79
+E5ADB5 9B7A
+E5ADB8 9B7B
+E5ADBA 9B7D
+E5AE80 9B7E
+E5AE83 9B80
+E5AE85 91EE
+E5AE87 8946
+E5AE88 8EE7
+E5AE89 88C0
+E5AE8B 9176
+E5AE8C 8AAE
+E5AE8D 8EB3
+E5AE8F 8D47
+E5AE95 9386
+E5AE97 8F40
+E5AE98 8AAF
+E5AE99 9288
+E5AE9A 92E8
+E5AE9B 88B6
+E5AE9C 8B58
+E5AE9D 95F3
+E5AE9F 8EC0
+E5AEA2 8B71
+E5AEA3 90E9
+E5AEA4 8EBA
+E5AEA5 9747
+E5AEA6 9B81
+E5AEAE 8B7B
+E5AEB0 8DC9
+E5AEB3 8A51
+E5AEB4 8983
+E5AEB5 8FAA
+E5AEB6 89C6
+E5AEB8 9B82
+E5AEB9 9765
+E5AEBF 8F68
+E5AF82 8EE2
+E5AF83 9B83
+E5AF84 8AF1
+E5AF85 93D0
+E5AF86 96A7
+E5AF87 9B84
+E5AF89 9B85
+E5AF8C 9578
+E5AF90 9B87
+E5AF92 8AA6
+E5AF93 8BF5
+E5AF94 9B86
+E5AF9B 8AB0
+E5AF9D 9051
+E5AF9E 9B8B
+E5AF9F 8E40
+E5AFA1 89C7
+E5AFA2 9B8A
+E5AFA4 9B88
+E5AFA5 9B8C
+E5AFA6 9B89
+E5AFA7 944A
+E5AFA8 9ECB
+E5AFA9 9052
+E5AFAB 9B8D
+E5AFAE 97BE
+E5AFB0 9B8E
+E5AFB3 9B90
+E5AFB5 929E
+E5AFB6 9B8F
+E5AFB8 90A1
+E5AFBA 8E9B
+E5AFBE 91CE
+E5AFBF 8EF5
+E5B081 9595
+E5B082 90EA
+E5B084 8ECB
+E5B085 9B91
+E5B086 8FAB
+E5B087 9B92
+E5B088 9B93
+E5B089 88D1
+E5B08A 91B8
+E5B08B 9071
+E5B08D 9B94
+E5B08E 93B1
+E5B08F 8FAC
+E5B091 8FAD
+E5B093 9B95
+E5B096 90EB
+E5B09A 8FAE
+E5B0A0 9B96
+E5B0A2 9B97
+E5B0A4 96DE
+E5B0A8 9B98
+E5B0AD 8BC4
+E5B0B1 8F41
+E5B0B8 9B99
+E5B0B9 9B9A
+E5B0BA 8EDA
+E5B0BB 904B
+E5B0BC 93F2
+E5B0BD 9073
+E5B0BE 94F6
+E5B0BF 9441
+E5B180 8BC7
+E5B181 9B9B
+E5B185 8B8F
+E5B186 9B9C
+E5B188 8BFC
+E5B18A 93CD
+E5B18B 89AE
+E5B18D 8E72
+E5B18E 9B9D
+E5B18F 9BA0
+E5B190 9B9F
+E5B191 8BFB
+E5B193 9B9E
+E5B195 9357
+E5B19E 91AE
+E5B1A0 936A
+E5B1A1 8EC6
+E5B1A4 9177
+E5B1A5 979A
+E5B1AC 9BA2
+E5B1AE 9BA3
+E5B1AF 93D4
+E5B1B1 8E52
+E5B1B6 9BA5
+E5B1B9 9BA6
+E5B28C 9BA7
+E5B290 8AF2
+E5B291 9BA8
+E5B294 9BA9
+E5B2A1 89AA
+E5B2A8 915A
+E5B2A9 8AE2
+E5B2AB 9BAB
+E5B2AC 96A6
+E5B2B1 91D0
+E5B2B3 8A78
+E5B2B6 9BAD
+E5B2B7 9BAF
+E5B2B8 8ADD
+E5B2BB 9BAC
+E5B2BC 9BAE
+E5B2BE 9BB1
+E5B385 9BB0
+E5B387 9BB2
+E5B399 9BB3
+E5B3A0 93BB
+E5B3A1 8BAC
+E5B3A8 89E3
+E5B3A9 9BB4
+E5B3AA 9BB9
+E5B3AD 9BB7
+E5B3AF 95F5
+E5B3B0 95F4
+E5B3B6 9387
+E5B3BA 9BB6
+E5B3BB 8F73
+E5B3BD 9BB5
+E5B487 9092
+E5B48B 9BBA
+E5B48E 8DE8
+E5B491 9BC0
+E5B494 9BC1
+E5B495 9BBB
+E5B496 8A52
+E5B497 9BBC
+E5B498 9BC5
+E5B499 9BC4
+E5B49A 9BC3
+E5B49B 9BBF
+E5B49F 9BBE
+E5B4A2 9BC2
+E5B4A9 95F6
+E5B58B 9BC9
+E5B58C 9BC6
+E5B58E 9BC8
+E5B590 9792
+E5B592 9BC7
+E5B59C 9BBD
+E5B5A9 9093
+E5B5AC 9BCA
+E5B5AF 8DB5
+E5B5B3 9BCB
+E5B5B6 9BCC
+E5B682 9BCF
+E5B684 9BCE
+E5B687 9BCD
+E5B68B 9388
+E5B68C 9BB8
+E5B690 9BD5
+E5B69D 9BD1
+E5B6A2 9BD0
+E5B6AC 9BD2
+E5B6AE 9BD3
+E5B6B7 9BD6
+E5B6BA 97E4
+E5B6BC 9BD7
+E5B6BD 9BD4
+E5B789 9BD8
+E5B78C 8ADE
+E5B78D 9BD9
+E5B792 9BDB
+E5B793 9BDA
+E5B796 9BDC
+E5B79B 9BDD
+E5B79D 90EC
+E5B79E 8F42
+E5B7A1 8F84
+E5B7A3 9183
+E5B7A5 8D48
+E5B7A6 8DB6
+E5B7A7 8D49
+E5B7A8 8B90
+E5B7AB 9BDE
+E5B7AE 8DB7
+E5B7B1 8CC8
+E5B7B2 9BDF
+E5B7B3 96A4
+E5B7B4 9462
+E5B7B5 9BE0
+E5B7B7 8D4A
+E5B7BB 8AAA
+E5B7BD 9246
+E5B7BE 8BD0
+E5B882 8E73
+E5B883 957A
+E5B886 94BF
+E5B88B 9BE1
+E5B88C 8AF3
+E5B891 9BE4
+E5B896 929F
+E5B899 9BE3
+E5B89A 9BE2
+E5B89B 9BE5
+E5B89D 92E9
+E5B8A5 9083
+E5B8AB 8E74
+E5B8AD 90C8
+E5B8AF 91D1
+E5B8B0 8B41
+E5B8B3 92A0
+E5B8B6 9BE6
+E5B8B7 9BE7
+E5B8B8 8FED
+E5B8BD 9658
+E5B980 9BEA
+E5B983 9BE9
+E5B984 9BE8
+E5B985 959D
+E5B987 9BF1
+E5B98C 9679
+E5B98E 9BEB
+E5B994 9BED
+E5B995 968B
+E5B997 9BEC
+E5B99F 9BEE
+E5B9A1 94A6
+E5B9A2 9BEF
+E5B9A3 95BC
+E5B9A4 9BF0
+E5B9B2 8AB1
+E5B9B3 95BD
+E5B9B4 944E
+E5B9B5 9BF2
+E5B9B6 9BF3
+E5B9B8 8D4B
+E5B9B9 8AB2
+E5B9BA 9BF4
+E5B9BB 8CB6
+E5B9BC 9763
+E5B9BD 9748
+E5B9BE 8AF4
+E5B9BF 9BF6
+E5BA81 92A1
+E5BA83 8D4C
+E5BA84 8FAF
+E5BA87 94DD
+E5BA8A 8FB0
+E5BA8F 8F98
+E5BA95 92EA
+E5BA96 95F7
+E5BA97 9358
+E5BA9A 8D4D
+E5BA9C 957B
+E5BAA0 9BF7
+E5BAA6 9378
+E5BAA7 8DC0
+E5BAAB 8CC9
+E5BAAD 92EB
+E5BAB5 88C1
+E5BAB6 8F8E
+E5BAB7 8D4E
+E5BAB8 9766
+E5BB81 9BF8
+E5BB82 9BF9
+E5BB83 9470
+E5BB88 9BFA
+E5BB89 97F5
+E5BB8A 984C
+E5BB8F 9BFC
+E5BB90 9BFB
+E5BB93 8A66
+E5BB96 9C40
+E5BB9A 9C43
+E5BB9B 9C44
+E5BB9D 9C42
+E5BB9F 955F
+E5BBA0 8FB1
+E5BBA1 9C46
+E5BBA2 9C45
+E5BBA3 9C41
+E5BBA8 9C47
+E5BBA9 9C48
+E5BBAC 9C49
+E5BBB0 9C4C
+E5BBB1 9C4A
+E5BBB3 9C4B
+E5BBB4 9C4D
+E5BBB6 8984
+E5BBB7 92EC
+E5BBB8 9C4E
+E5BBBA 8C9A
+E5BBBB 89F4
+E5BBBC 9455
+E5BBBE 9C4F
+E5BBBF 93F9
+E5BC81 95D9
+E5BC83 9C50
+E5BC84 984D
+E5BC89 9C51
+E5BC8A 95BE
+E5BC8B 9C54
+E5BC8C 989F
+E5BC8D 98AF
+E5BC8F 8EAE
+E5BC90 93F3
+E5BC91 9C55
+E5BC93 8B7C
+E5BC94 92A2
+E5BC95 88F8
+E5BC96 9C56
+E5BC97 95A4
+E5BC98 8D4F
+E5BC9B 926F
+E5BC9F 92ED
+E5BCA5 96ED
+E5BCA6 8CB7
+E5BCA7 8CCA
+E5BCA9 9C57
+E5BCAD 9C58
+E5BCAF 9C5E
+E5BCB1 8EE3
+E5BCB5 92A3
+E5BCB7 8BAD
+E5BCB8 9C59
+E5BCBC 954A
+E5BCBE 9265
+E5BD81 9C5A
+E5BD88 9C5B
+E5BD8A 8BAE
+E5BD8C 9C5C
+E5BD8E 9C5D
+E5BD91 9C5F
+E5BD93 9396
+E5BD96 9C60
+E5BD97 9C61
+E5BD99 9C62
+E5BD9C 9C53
+E5BD9D 9C52
+E5BDA1 9C63
+E5BDA2 8C60
+E5BDA6 9546
+E5BDA9 8DCA
+E5BDAA 9556
+E5BDAB 92A4
+E5BDAC 956A
+E5BDAD 9C64
+E5BDB0 8FB2
+E5BDB1 8965
+E5BDB3 9C65
+E5BDB7 9C66
+E5BDB9 96F0
+E5BDBC 94DE
+E5BDBF 9C69
+E5BE80 899D
+E5BE81 90AA
+E5BE82 9C68
+E5BE83 9C67
+E5BE84 8C61
+E5BE85 91D2
+E5BE87 9C6D
+E5BE88 9C6B
+E5BE8A 9C6A
+E5BE8B 97A5
+E5BE8C 8CE3
+E5BE90 8F99
+E5BE91 9C6C
+E5BE92 936B
+E5BE93 8F5D
+E5BE97 93BE
+E5BE98 9C70
+E5BE99 9C6F
+E5BE9E 9C6E
+E5BEA0 9C71
+E5BEA1 8CE4
+E5BEA8 9C72
+E5BEA9 959C
+E5BEAA 8F7A
+E5BEAD 9C73
+E5BEAE 94F7
+E5BEB3 93BF
+E5BEB4 92A5
+E5BEB9 934F
+E5BEBC 9C74
+E5BEBD 8B4A
+E5BF83 9053
+E5BF85 954B
+E5BF8C 8AF5
+E5BF8D 9445
+E5BF96 9C75
+E5BF97 8E75
+E5BF98 9659
+E5BF99 965A
+E5BF9C 899E
+E5BF9D 9C7A
+E5BFA0 9289
+E5BFA4 9C77
+E5BFAB 89F5
+E5BFB0 9CAB
+E5BFB1 9C79
+E5BFB5 944F
+E5BFB8 9C78
+E5BFBB 9C76
+E5BFBD 8D9A
+E5BFBF 9C7C
+E6808E 9C83
+E6808F 9C89
+E68090 9C81
+E68092 937B
+E68095 9C86
+E68096 957C
+E68099 9C80
+E6809B 9C85
+E6809C 97E5
+E6809D 8E76
+E680A0 91D3
+E680A1 9C7D
+E680A5 8B7D
+E680A6 9C88
+E680A7 90AB
+E680A8 8985
+E680A9 9C82
+E680AA 89F6
+E680AB 9C87
+E680AF 8BAF
+E680B1 9C84
+E680BA 9C8A
+E68181 9C8C
+E68182 9C96
+E68183 9C94
+E68186 9C91
+E6818A 9C90
+E6818B 97F6
+E6818D 9C92
+E68190 8BB0
+E68192 8D50
+E68195 8F9A
+E68199 9C99
+E6819A 9C8B
+E6819F 9C8F
+E681A0 9C7E
+E681A2 89F8
+E681A3 9C93
+E681A4 9C95
+E681A5 9270
+E681A8 8DA6
+E681A9 89B6
+E681AA 9C8D
+E681AB 9C98
+E681AC 9C97
+E681AD 8BB1
+E681AF 91A7
+E681B0 8A86
+E681B5 8C62
+E681B7 9C8E
+E68281 9C9A
+E68283 9C9D
+E68284 9C9F
+E68289 8EBB
+E6828B 9CA5
+E6828C 92EE
+E6828D 9C9B
+E68292 9CA3
+E68294 89F7
+E68296 9CA1
+E68297 9CA2
+E6829A 9C9E
+E6829B 9CA0
+E6829F 8CE5
+E682A0 9749
+E682A3 8AB3
+E682A6 8978
+E682A7 9CA4
+E682A9 9459
+E682AA 88AB
+E682B2 94DF
+E682B3 9C7B
+E682B4 9CAA
+E682B5 9CAE
+E682B6 96E3
+E682B8 9CA7
+E682BC 9389
+E682BD 9CAC
+E68385 8FEE
+E68386 9CAD
+E68387 93D5
+E68391 9866
+E68393 9CA9
+E68398 9CAF
+E6839A 8D9B
+E6839C 90C9
+E6839F 88D2
+E683A0 9CA8
+E683A1 9CA6
+E683A3 9179
+E683A7 9C9C
+E683A8 8E53
+E683B0 91C4
+E683B1 9CBB
+E683B3 917A
+E683B4 9CB6
+E683B6 9CB3
+E683B7 9CB4
+E683B9 8EE4
+E683BA 9CB7
+E683BB 9CBA
+E68480 9CB5
+E68481 8F44
+E68483 9CB8
+E68486 9CB2
+E68488 96FA
+E68489 96F9
+E6848D 9CBC
+E6848E 9CBD
+E6848F 88D3
+E68495 9CB1
+E6849A 8BF0
+E6849B 88A4
+E6849F 8AB4
+E684A1 9CB9
+E684A7 9CC1
+E684A8 9CC0
+E684AC 9CC5
+E684B4 9CC6
+E684BC 9CC4
+E684BD 9CC7
+E684BE 9CBF
+E684BF 9CC3
+E68582 9CC8
+E68584 9CC9
+E68587 9CBE
+E68588 8E9C
+E6858A 9CC2
+E6858B 91D4
+E6858C 8D51
+E6858D 9CB0
+E6858E 9054
+E68593 9CD6
+E68595 95E7
+E68598 9CCC
+E68599 9CCD
+E6859A 9CCE
+E6859D 9CD5
+E6859F 9CD4
+E685A2 969D
+E685A3 8AB5
+E685A5 9CD2
+E685A7 8C64
+E685A8 8A53
+E685AB 9CCF
+E685AE 97B6
+E685AF 9CD1
+E685B0 88D4
+E685B1 9CD3
+E685B3 9CCA
+E685B4 9CD0
+E685B5 9CD7
+E685B6 8C63
+E685B7 9CCB
+E685BE 977C
+E68682 974A
+E68687 9CDA
+E6868A 9CDE
+E6868E 919E
+E68690 97F7
+E68691 9CDF
+E68694 9CDC
+E68696 9CD9
+E68699 9CD8
+E6869A 9CDD
+E686A4 95AE
+E686A7 93B2
+E686A9 8C65
+E686AB 9CE0
+E686AC 9CDB
+E686AE 9CE1
+E686B2 8C9B
+E686B6 89AF
+E686BA 9CE9
+E686BE 8AB6
+E68783 9CE7
+E68786 9CE8
+E68787 8DA7
+E68788 9CE6
+E68789 9CE4
+E6878A 9CE3
+E6878B 9CEA
+E6878C 9CE2
+E6878D 9CEC
+E68790 89F9
+E687A3 9CEE
+E687A6 9CED
+E687B2 92A6
+E687B4 9CF1
+E687B6 9CEF
+E687B7 9CE5
+E687B8 8C9C
+E687BA 9CF0
+E687BC 9CF4
+E687BD 9CF3
+E687BE 9CF5
+E687BF 9CF2
+E68880 9CF6
+E68888 9CF7
+E68889 9CF8
+E6888A 95E8
+E6888C 9CFA
+E6888D 9CF9
+E6888E 8F5E
+E68890 90AC
+E68891 89E4
+E68892 89FA
+E68894 9CFB
+E68896 88BD
+E6889A 90CA
+E6889B 9CFC
+E6889D E6C1
+E6889E 9D40
+E6889F 8C81
+E688A1 9D41
+E688A6 90ED
+E688AA 9D42
+E688AE 9D43
+E688AF 8B59
+E688B0 9D44
+E688B2 9D45
+E688B3 9D46
+E688B4 91D5
+E688B8 8CCB
+E688BB 96DF
+E688BF 965B
+E68980 8F8A
+E68981 9D47
+E68987 90EE
+E68988 E7BB
+E68989 94E0
+E6898B 8EE8
+E6898D 8DCB
+E6898E 9D48
+E68993 91C5
+E68995 95A5
+E68998 91EF
+E6899B 9D4B
+E6899E 9D49
+E689A0 9D4C
+E689A3 9D4A
+E689A8 9D4D
+E689AE 95AF
+E689B1 88B5
+E689B6 957D
+E689B9 94E1
+E689BC 9D4E
+E689BE 9D51
+E689BF 8FB3
+E68A80 8B5A
+E68A82 9D4F
+E68A83 9D56
+E68A84 8FB4
+E68A89 9D50
+E68A8A 9463
+E68A91 977D
+E68A92 9D52
+E68A93 9D53
+E68A94 9D57
+E68A95 938A
+E68A96 9D54
+E68A97 8D52
+E68A98 90DC
+E68A9B 9D65
+E68A9C 94B2
+E68A9E 91F0
+E68AAB 94E2
+E68AAC 9DAB
+E68AB1 95F8
+E68AB5 92EF
+E68AB9 9695
+E68ABB 9D5A
+E68ABC 899F
+E68ABD 928A
+E68B82 9D63
+E68B85 9253
+E68B86 9D5D
+E68B87 9D64
+E68B88 9D5F
+E68B89 9D66
+E68B8A 9D62
+E68B8C 9D61
+E68B8D 948F
+E68B8F 9D5B
+E68B90 89FB
+E68B91 9D59
+E68B92 8B91
+E68B93 91F1
+E68B94 9D55
+E68B97 9D58
+E68B98 8D53
+E68B99 90D9
+E68B9B 8FB5
+E68B9C 9D60
+E68B9D 9471
+E68BA0 8B92
+E68BA1 8A67
+E68BAC 8A87
+E68BAD 9040
+E68BAE 9D68
+E68BAF 9D6D
+E68BB1 9D69
+E68BB3 8C9D
+E68BB5 9D6E
+E68BB6 8E41
+E68BB7 8D89
+E68BBE 8F45
+E68BBF 9D5C
+E68C81 8E9D
+E68C82 9D6B
+E68C87 8E77
+E68C88 9D6C
+E68C89 88C2
+E68C8C 9D67
+E68C91 92A7
+E68C99 8B93
+E68C9F 8BB2
+E68CA7 9D6A
+E68CA8 88A5
+E68CAB 8DC1
+E68CAF 9055
+E68CBA 92F0
+E68CBD 94D2
+E68CBE 9D70
+E68CBF 917D
+E68D89 91A8
+E68D8C 8E4A
+E68D8D 9D71
+E68D8F 9D73
+E68D90 9D6F
+E68D95 95DF
+E68D97 92BB
+E68D9C 917B
+E68DA7 95F9
+E68DA8 8ECC
+E68DA9 9D80
+E68DAB 9D7E
+E68DAE 9098
+E68DB2 8C9E
+E68DB6 9D78
+E68DB7 8FB7
+E68DBA 93E6
+E68DBB 9450
+E68E80 9D76
+E68E83 917C
+E68E88 8EF6
+E68E89 9D7B
+E68E8C 8FB6
+E68E8E 9D75
+E68E8F 9D7A
+E68E92 9472
+E68E96 9D74
+E68E98 8C40
+E68E9B 8A7C
+E68E9F 9D7C
+E68EA0 97A9
+E68EA1 8DCC
+E68EA2 9254
+E68EA3 9D79
+E68EA5 90DA
+E68EA7 8D54
+E68EA8 9084
+E68EA9 8986
+E68EAA 915B
+E68EAB 9D77
+E68EAC 8B64
+E68EB2 8C66
+E68EB4 92CD
+E68EB5 9D7D
+E68EBB 917E
+E68EBE 9D81
+E68F80 9D83
+E68F83 91B5
+E68F84 9D89
+E68F86 9D84
+E68F89 9D86
+E68F8F 9560
+E68F90 92F1
+E68F92 9D87
+E68F96 974B
+E68F9A 9767
+E68F9B 8AB7
+E68FA1 88AC
+E68FA3 9D85
+E68FA9 9D82
+E68FAE 8AF6
+E68FB4 8987
+E68FB6 9D88
+E68FBA 9768
+E69086 9D8C
+E6908D 91B9
+E6908F 9D93
+E69093 9D8D
+E69096 9D8A
+E69097 9D91
+E6909C 9D72
+E690A6 9D8E
+E690A8 9D92
+E690AC 94C0
+E690AD 938B
+E690B4 9D8B
+E690B6 9D8F
+E690BA 8C67
+E690BE 8DEF
+E69182 90DB
+E6918E 9D97
+E69198 9345
+E691A7 9D94
+E691A9 9680
+E691AF 9D95
+E691B6 9D96
+E691B8 96CC
+E691BA 90A0
+E69283 8C82
+E69288 9D9D
+E69292 8E54
+E69293 9D9A
+E69295 9D99
+E6929A 9451
+E6929E 93B3
+E692A4 9350
+E692A5 9D9B
+E692A9 9D9C
+E692AB 958F
+E692AD 9464
+E692AE 8E42
+E692B0 90EF
+E692B2 966F
+E692B9 8A68
+E692BB 9DA3
+E692BC 9D9E
+E69381 9769
+E69382 9DA5
+E69385 9DA1
+E69387 9DA2
+E6938D 9180
+E69392 9DA0
+E69394 9D5E
+E69398 9DA4
+E6939A 9D9F
+E693A0 9DA9
+E693A1 9DAA
+E693A2 9346
+E693A3 9DAC
+E693A6 8E43
+E693A7 9DA7
+E693AC 8B5B
+E693AF 9DAD
+E693B1 9DA6
+E693B2 9DB1
+E693B4 9DB0
+E693B6 9DAF
+E693BA 9DB2
+E693BD 9DB4
+E693BE 8FEF
+E69480 9DB3
+E69485 9DB7
+E69498 9DB5
+E6949C 9DB6
+E6949D 9D90
+E694A3 9DB9
+E694A4 9DB8
+E694AA 9D98
+E694AB 9DBA
+E694AC 9DAE
+E694AF 8E78
+E694B4 9DBB
+E694B5 9DBC
+E694B6 9DBE
+E694B7 9DBD
+E694B8 9DBF
+E694B9 89FC
+E694BB 8D55
+E694BE 95FA
+E694BF 90AD
+E69585 8CCC
+E69588 9DC1
+E6958D 9DC4
+E6958F 9571
+E69591 8B7E
+E69595 9DC3
+E69596 9DC2
+E69597 9473
+E69598 9DC5
+E69599 8BB3
+E6959D 9DC7
+E6959E 9DC6
+E695A2 8AB8
+E695A3 8E55
+E695A6 93D6
+E695AC 8C68
+E695B0 9094
+E695B2 9DC8
+E695B4 90AE
+E695B5 9347
+E695B7 957E
+E695B8 9DC9
+E69682 9DCA
+E69683 9DCB
+E69687 95B6
+E69688 9B7C
+E69689 90C4
+E6968C 956B
+E6968E 8DD6
+E69690 94E3
+E69691 94C1
+E69697 936C
+E69699 97BF
+E6969B 9DCD
+E6969C 8ECE
+E6969F 9DCE
+E696A1 88B4
+E696A4 8BD2
+E696A5 90CB
+E696A7 9580
+E696AB 9DCF
+E696AC 8E61
+E696AD 9266
+E696AF 8E7A
+E696B0 9056
+E696B7 9DD0
+E696B9 95FB
+E696BC 8997
+E696BD 8E7B
+E69781 9DD3
+E69783 9DD1
+E69784 9DD4
+E69785 97B7
+E69786 9DD2
+E6978B 90F9
+E6978C 9DD5
+E6978F 91B0
+E69792 9DD6
+E69797 8AF8
+E69799 9DD8
+E6979B 9DD7
+E697A0 9DD9
+E697A1 9DDA
+E697A2 8AF9
+E697A5 93FA
+E697A6 9255
+E697A7 8B8C
+E697A8 8E7C
+E697A9 9181
+E697AC 8F7B
+E697AD 88AE
+E697B1 9DDB
+E697BA 89A0
+E697BB 9DDF
+E69882 8D56
+E69883 9DDE
+E69886 8DA9
+E69887 8FB8
+E6988A 9DDD
+E6988C 8FB9
+E6988E 96BE
+E6988F 8DA8
+E69893 88D5
+E69894 90CC
+E6989C 9DE4
+E6989F 90AF
+E698A0 8966
+E698A5 8F74
+E698A7 9686
+E698A8 8DF0
+E698AD 8FBA
+E698AF 90A5
+E698B4 9DE3
+E698B5 9DE1
+E698B6 9DE2
+E698BC 928B
+E698BF 9E45
+E69981 9DE8
+E69982 8E9E
+E69983 8D57
+E69984 9DE6
+E69989 9DE7
+E6998B 9057
+E6998F 9DE5
+E69992 8E4E
+E6999D 9DEA
+E6999E 9DE9
+E6999F 9DEE
+E699A2 9DEF
+E699A4 9DEB
+E699A6 8A41
+E699A7 9DEC
+E699A8 9DED
+E699A9 94D3
+E699AE 9581
+E699AF 8C69
+E699B0 9DF0
+E699B4 90B0
+E699B6 8FBB
+E699BA 9271
+E69A81 8BC5
+E69A83 9DF1
+E69A84 9DF5
+E69A87 89C9
+E69A88 9DF2
+E69A89 9DF4
+E69A8E 9DF3
+E69A91 8F8B
+E69A96 9267
+E69A97 88C3
+E69A98 9DF6
+E69A9D 9DF7
+E69AA2 92A8
+E69AA6 97EF
+E69AAB 8E62
+E69AAE 95E9
+E69AB4 965C
+E69AB8 9E41
+E69AB9 9DF9
+E69ABC 9DFC
+E69ABE 9DFB
+E69B81 9DF8
+E69B84 9E40
+E69B87 93DC
+E69B89 9DFA
+E69B96 9E42
+E69B99 8F8C
+E69B9A 9E43
+E69B9C 976A
+E69B9D 9498
+E69BA0 9E44
+E69BA6 9E46
+E69BA9 9E47
+E69BB0 9E48
+E69BB2 8BC8
+E69BB3 8967
+E69BB4 8D58
+E69BB5 9E49
+E69BB7 9E4A
+E69BB8 8F91
+E69BB9 9182
+E69BBC 99D6
+E69BBD 915D
+E69BBE 915C
+E69BBF 91D6
+E69C80 8DC5
+E69C83 98F0
+E69C88 8C8E
+E69C89 974C
+E69C8B 95FC
+E69C8D 959E
+E69C8F 9E4B
+E69C94 8DF1
+E69C95 92BD
+E69C96 9E4C
+E69C97 984E
+E69C9B 965D
+E69C9D 92A9
+E69C9E 9E4D
+E69C9F 8AFA
+E69CA6 9E4E
+E69CA7 9E4F
+E69CA8 96D8
+E69CAA 96A2
+E69CAB 9696
+E69CAC 967B
+E69CAD 8E44
+E69CAE 9E51
+E69CB1 8EE9
+E69CB4 9670
+E69CB6 9E53
+E69CB7 9E56
+E69CB8 9E55
+E69CBA 8AF7
+E69CBD 8B80
+E69CBF 9E52
+E69D81 9E54
+E69D86 9E57
+E69D89 9099
+E69D8E 979B
+E69D8F 88C7
+E69D90 8DDE
+E69D91 91BA
+E69D93 8EDB
+E69D96 8FF1
+E69D99 9E5A
+E69D9C 936D
+E69D9E 9E58
+E69D9F 91A9
+E69DA0 9E59
+E69DA1 8FF0
+E69DA2 96DB
+E69DA3 9E5B
+E69DA4 9E5C
+E69DA5 9788
+E69DAA 9E61
+E69DAD 8D59
+E69DAF 9474
+E69DB0 9E5E
+E69DB1 938C
+E69DB2 9DDC
+E69DB3 9DE0
+E69DB5 8B6E
+E69DB7 9466
+E69DBC 9E60
+E69DBE 8FBC
+E69DBF 94C2
+E69E85 9E66
+E69E87 94F8
+E69E89 9E5D
+E69E8B 9E63
+E69E8C 9E62
+E69E90 90CD
+E69E95 968D
+E69E97 97D1
+E69E9A 9687
+E69E9C 89CA
+E69E9D 8E7D
+E69EA0 9867
+E69EA1 9E65
+E69EA2 9095
+E69EA6 9E64
+E69EA9 9E5F
+E69EAF 8CCD
+E69EB3 9E6B
+E69EB4 9E69
+E69EB6 89CB
+E69EB7 9E67
+E69EB8 9E6D
+E69EB9 9E73
+E69F81 91C6
+E69F84 95BF
+E69F86 9E75
+E69F8A 9541
+E69F8E 9E74
+E69F8F 9490
+E69F90 965E
+E69F91 8AB9
+E69F93 90F5
+E69F94 8F5F
+E69F98 92D1
+E69F9A 974D
+E69F9D 9E70
+E69F9E 9E6F
+E69FA2 9E71
+E69FA4 9E6E
+E69FA7 9E76
+E69FA9 9E6C
+E69FAC 9E6A
+E69FAE 9E72
+E69FAF 9E68
+E69FB1 928C
+E69FB3 96F6
+E69FB4 8EC4
+E69FB5 8DF2
+E69FBB 8DB8
+E69FBE 968F
+E69FBF 8A60
+E6A082 92CC
+E6A083 93C8
+E6A084 8968
+E6A093 90F0
+E6A096 90B2
+E6A097 8C49
+E6A09E 9E78
+E6A0A1 8D5A
+E6A0A2 8A9C
+E6A0A9 9E7A
+E6A0AA 8A94
+E6A0AB 9E81
+E6A0B2 9E7D
+E6A0B4 90F1
+E6A0B8 8A6A
+E6A0B9 8DAA
+E6A0BC 8A69
+E6A0BD 8DCD
+E6A180 9E7B
+E6A181 8C85
+E6A182 8C6A
+E6A183 938D
+E6A186 9E79
+E6A188 88C4
+E6A18D 9E7C
+E6A18E 9E7E
+E6A190 8BCB
+E6A191 8C4B
+E6A193 8ABA
+E6A194 8B6A
+E6A199 9E82
+E6A19C 8DF7
+E6A19D 9691
+E6A19F 8E56
+E6A1A3 9E83
+E6A1A7 954F
+E6A1B4 9E8F
+E6A1B6 89B1
+E6A1B7 9E84
+E6A1BE 9E95
+E6A1BF 9E85
+E6A281 97C0
+E6A283 9E8C
+E6A285 947E
+E6A28D 9E94
+E6A28F 9E87
+E6A293 88B2
+E6A294 9E89
+E6A297 8D5B
+E6A29B 9E8B
+E6A29D 9E8A
+E6A29F 9E86
+E6A2A0 9E91
+E6A2A2 8FBD
+E6A2A6 9AEB
+E6A2A7 8CE6
+E6A2A8 979C
+E6A2AD 9E88
+E6A2AF 92F2
+E6A2B0 8A42
+E6A2B1 8DAB
+E6A2B3 9E80
+E6A2B5 9E90
+E6A2B6 8A81
+E6A2B9 9E8E
+E6A2BA 9E92
+E6A2BC 938E
+E6A384 8AFC
+E6A386 9EB0
+E6A389 96C7
+E6A38A 9E97
+E6A38B 8AFB
+E6A38D 9E9E
+E6A392 965F
+E6A394 9E9F
+E6A395 9EA1
+E6A397 9EA5
+E6A398 9E99
+E6A39A 9249
+E6A39F 938F
+E6A3A0 9EA9
+E6A3A1 9E9C
+E6A3A3 9EA6
+E6A3A7 9EA0
+E6A3AE 9058
+E6A3AF 9EAA
+E6A3B2 90B1
+E6A3B9 9EA8
+E6A3BA 8ABB
+E6A480 986F
+E6A481 9E96
+E6A484 9EA4
+E6A485 88D6
+E6A488 9E98
+E6A48B 96B8
+E6A48C 9E9D
+E6A48D 9041
+E6A48E 92C5
+E6A48F 9E93
+E6A492 9EA3
+E6A499 909A
+E6A49A 9EAD
+E6A49B 8A91
+E6A49C 8C9F
+E6A4A1 9EAF
+E6A4A2 9E9A
+E6A4A3 9EAE
+E6A4A5 9EA7
+E6A4A6 9E9B
+E6A4A8 9EAB
+E6A4AA 9EAC
+E6A4B0 9EBD
+E6A4B4 93CC
+E6A4B6 9EA2
+E6A4B9 9EB9
+E6A4BD 9EBB
+E6A4BF 92D6
+E6A58A 976B
+E6A593 9596
+E6A594 9EB6
+E6A595 91C8
+E6A599 9EBC
+E6A59A 915E
+E6A59C 9EB3
+E6A59D 9EC0
+E6A59E 9EBF
+E6A5A0 93ED
+E6A5A1 9EBE
+E6A5A2 93E8
+E6A5AA 9EC2
+E6A5AB 9EB5
+E6A5AD 8BC6
+E6A5AE 9EB8
+E6A5AF 8F7C
+E6A5B3 9480
+E6A5B4 9EBA
+E6A5B5 8BC9
+E6A5B7 9EB2
+E6A5B8 9EB4
+E6A5B9 9EB1
+E6A5BC 984F
+E6A5BD 8A79
+E6A5BE 9EB7
+E6A681 9EC1
+E6A682 8A54
+E6A68A 8DE5
+E6A68E 897C
+E6A691 9ED2
+E6A694 9850
+E6A695 9ED5
+E6A69B 9059
+E6A69C 9ED4
+E6A6A0 9ED3
+E6A6A7 9ED0
+E6A6AE 9EC4
+E6A6B1 9EE1
+E6A6B2 9EC3
+E6A6B4 9ED6
+E6A6BB 9ECE
+E6A6BE 9EC9
+E6A6BF 9EC6
+E6A781 9EC7
+E6A783 9ECF
+E6A787 EAA0
+E6A78A 9ECC
+E6A78B 8D5C
+E6A78C 92C6
+E6A78D 9184
+E6A78E 9ECA
+E6A790 9EC5
+E6A793 9EC8
+E6A798 976C
+E6A799 968A
+E6A79D 9ECD
+E6A79E 9ED7
+E6A7A7 9EDF
+E6A7A8 9ED8
+E6A7AB 9EE5
+E6A7AD 9EE3
+E6A7B2 9EDE
+E6A7B9 9EDD
+E6A7BB 92CE
+E6A7BD 9185
+E6A7BF 9EDB
+E6A882 9ED9
+E6A885 9EE0
+E6A88A 9EE6
+E6A88B 94F3
+E6A88C 9EEC
+E6A892 9EE7
+E6A893 9EEA
+E6A894 9EE4
+E6A897 9294
+E6A899 9557
+E6A89B 9EDA
+E6A89E 9EE2
+E6A89F 8FBE
+E6A8A1 96CD
+E6A8A2 9EF6
+E6A8A3 9EE9
+E6A8A9 8CA0
+E6A8AA 89A1
+E6A8AB 8A7E
+E6A8AE 9ED1
+E6A8B5 8FBF
+E6A8B6 9EEE
+E6A8B8 9EF5
+E6A8B9 8EF7
+E6A8BA 8A92
+E6A8BD 924D
+E6A984 9EEB
+E6A987 9EF0
+E6A988 9EF4
+E6A98B 8BB4
+E6A998 8B6B
+E6A999 9EF2
+E6A99F 8B40
+E6A9A1 93C9
+E6A9A2 9EF1
+E6A9A6 9EF3
+E6A9B2 9EED
+E6A9B8 9EEF
+E6A9BF 8A80
+E6AA80 9268
+E6AA84 9EFA
+E6AA8D 9EF8
+E6AA8E 8CE7
+E6AA90 9EF7
+E6AA97 9F40
+E6AA9C 9E77
+E6AAA0 9EF9
+E6AAA2 9EFB
+E6AAA3 9EFC
+E6AAAA 9F4B
+E6AAAC 9F47
+E6AAAE 9E8D
+E6AAB3 9F46
+E6AAB8 9F45
+E6AABB 9F42
+E6AB81 9EE8
+E6AB82 9F44
+E6AB83 9F43
+E6AB91 9F49
+E6AB93 9845
+E6AB9A 9F4C
+E6AB9B 8BF9
+E6AB9E 9F48
+E6AB9F 9F4A
+E6ABA8 94A5
+E6ABAA 9F4D
+E6ABBA 9F51
+E6ABBB 9F4E
+E6AC84 9793
+E6AC85 9F4F
+E6AC8A 9EDC
+E6AC92 9F52
+E6AC96 9F53
+E6AC9D 8954
+E6AC9F 9F55
+E6ACA0 8C87
+E6ACA1 8E9F
+E6ACA3 8BD3
+E6ACA7 89A2
+E6ACB2 977E
+E6ACB7 9F57
+E6ACB8 9F56
+E6ACB9 9F59
+E6ACBA 8B5C
+E6ACBD 8BD4
+E6ACBE 8ABC
+E6AD83 9F5C
+E6AD87 9F5B
+E6AD89 9F5D
+E6AD8C 89CC
+E6AD8E 9256
+E6AD90 9F5E
+E6AD93 8ABD
+E6AD94 9F60
+E6AD99 9F5F
+E6AD9B 9F61
+E6AD9F 9F62
+E6ADA1 9F63
+E6ADA2 8E7E
+E6ADA3 90B3
+E6ADA4 8D9F
+E6ADA6 9590
+E6ADA9 95E0
+E6ADAA 9863
+E6ADAF 8E95
+E6ADB3 8DCE
+E6ADB4 97F0
+E6ADB8 9F64
+E6ADB9 9F65
+E6ADBB 8E80
+E6ADBF 9F66
+E6AE80 9F67
+E6AE83 9F69
+E6AE84 9F68
+E6AE86 9677
+E6AE89 8F7D
+E6AE8A 8EEA
+E6AE8B 8E63
+E6AE8D 9F6A
+E6AE95 9F6C
+E6AE96 9042
+E6AE98 9F6B
+E6AE9E 9F6D
+E6AEA4 9F6E
+E6AEAA 9F6F
+E6AEAB 9F70
+E6AEAF 9F71
+E6AEB1 9F73
+E6AEB2 9F72
+E6AEB3 9F74
+E6AEB4 89A3
+E6AEB5 9269
+E6AEB7 9F75
+E6AEBA 8E45
+E6AEBB 8A6B
+E6AEBC 9F76
+E6AEBF 9361
+E6AF80 9ACA
+E6AF85 8B42
+E6AF86 9F77
+E6AF8B 9F78
+E6AF8D 95EA
+E6AF8E 9688
+E6AF92 93C5
+E6AF93 9F79
+E6AF94 94E4
+E6AF98 94F9
+E6AF9B 96D1
+E6AF9F 9F7A
+E6AFAB 9F7C
+E6AFAC 9F7B
+E6AFAF 9F7E
+E6AFB3 9F7D
+E6B088 9F81
+E6B08F 8E81
+E6B091 96AF
+E6B093 9F82
+E6B094 9F83
+E6B097 8B43
+E6B09B 9F84
+E6B0A3 9F86
+E6B0A4 9F85
+E6B0B4 9085
+E6B0B7 9558
+E6B0B8 8969
+E6B0BE 94C3
+E6B180 92F3
+E6B181 8F60
+E6B182 8B81
+E6B18E 94C4
+E6B190 8EAC
+E6B195 9F88
+E6B197 8ABE
+E6B19A 8998
+E6B19D 93F0
+E6B19E 9F87
+E6B19F 8D5D
+E6B1A0 9272
+E6B1A2 9F89
+E6B1A8 9F91
+E6B1AA 9F8A
+E6B1B0 91BF
+E6B1B2 8B82
+E6B1B3 9F92
+E6B1BA 8C88
+E6B1BD 8B44
+E6B1BE 9F90
+E6B281 9F8E
+E6B282 9F8B
+E6B283 9780
+E6B288 92BE
+E6B28C 93D7
+E6B28D 9F8C
+E6B290 9F94
+E6B292 9F93
+E6B293 8C42
+E6B296 89AB
+E6B299 8DB9
+E6B29A 9F8D
+E6B29B 9F8F
+E6B2A1 9676
+E6B2A2 91F2
+E6B2AB 9697
+E6B2AE 9F9C
+E6B2B1 9F9D
+E6B2B3 89CD
+E6B2B8 95A6
+E6B2B9 96FB
+E6B2BA 9F9F
+E6B2BB 8EA1
+E6B2BC 8FC0
+E6B2BD 9F98
+E6B2BE 9F9E
+E6B2BF 8988
+E6B381 8BB5
+E6B384 9F95
+E6B385 9F9A
+E6B389 90F2
+E6B38A 9491
+E6B38C 94E5
+E6B393 9F97
+E6B395 9640
+E6B397 9F99
+E6B399 9FA2
+E6B39B 9FA0
+E6B39D 9F9B
+E6B3A1 9641
+E6B3A2 9467
+E6B3A3 8B83
+E6B3A5 9344
+E6B3A8 928D
+E6B3AA 9FA3
+E6B3AF 9FA1
+E6B3B0 91D7
+E6B3B1 9F96
+E6B3B3 896A
+E6B48B 976D
+E6B48C 9FAE
+E6B492 9FAD
+E6B497 90F4
+E6B499 9FAA
+E6B49B 978C
+E6B49E 93B4
+E6B49F 9FA4
+E6B4A5 92C3
+E6B4A9 896B
+E6B4AA 8D5E
+E6B4AB 9FA7
+E6B4B2 8F46
+E6B4B3 9FAC
+E6B4B5 9FAB
+E6B4B6 9FA6
+E6B4B8 9FA9
+E6B4BB 8A88
+E6B4BD 9FA8
+E6B4BE 9468
+E6B581 97AC
+E6B584 8FF2
+E6B585 90F3
+E6B599 9FB4
+E6B59A 9FB2
+E6B59C 956C
+E6B5A3 9FAF
+E6B5A4 9FB1
+E6B5A6 8959
+E6B5A9 8D5F
+E6B5AA 9851
+E6B5AC 8A5C
+E6B5AE 9582
+E6B5B4 9781
+E6B5B7 8A43
+E6B5B8 905A
+E6B5B9 9FB3
+E6B685 9FB8
+E6B688 8FC1
+E6B68C 974F
+E6B68E 9FB5
+E6B693 9FB0
+E6B695 9FB6
+E6B699 97DC
+E6B69B 9393
+E6B69C 93C0
+E6B6AF 8A55
+E6B6B2 8974
+E6B6B5 9FBC
+E6B6B8 9FBF
+E6B6BC 97C1
+E6B780 9784
+E6B785 9FC6
+E6B786 9FC0
+E6B787 9FBD
+E6B78B 97D2
+E6B78C 9FC3
+E6B791 8F69
+E6B792 9FC5
+E6B795 9FCA
+E6B798 9391
+E6B799 9FC8
+E6B79E 9FC2
+E6B7A1 9257
+E6B7A4 9FC9
+E6B7A6 9FBE
+E6B7A8 9FC4
+E6B7AA 9FCB
+E6B7AB 88FA
+E6B7AC 9FC1
+E6B7AE 9FCC
+E6B7B1 905B
+E6B7B3 8F7E
+E6B7B5 95A3
+E6B7B7 8DAC
+E6B7B9 9FB9
+E6B7BA 9FC7
+E6B7BB 9359
+E6B885 90B4
+E6B887 8A89
+E6B888 8DCF
+E6B889 8FC2
+E6B88A 9FBB
+E6B88B 8F61
+E6B893 8C6B
+E6B895 9FBA
+E6B899 9FD0
+E6B89A 8F8D
+E6B89B 8CB8
+E6B89D 9FDF
+E6B89F 9FD9
+E6B8A0 8B94
+E6B8A1 936E
+E6B8A3 9FD4
+E6B8A4 9FDD
+E6B8A5 88AD
+E6B8A6 8951
+E6B8A9 89B7
+E6B8AB 9FD6
+E6B8AC 91AA
+E6B8AD 9FCD
+E6B8AE 9FCF
+E6B8AF 8D60
+E6B8B8 9FE0
+E6B8BA 9FDB
+E6B8BE 9FD3
+E6B983 9FDA
+E6B98A 96A9
+E6B98D 9FD8
+E6B98E 9FDC
+E6B996 8CCE
+E6B998 8FC3
+E6B99B 9258
+E6B99F 9FD2
+E6B9A7 974E
+E6B9AB 9FD5
+E6B9AE 9FCE
+E6B9AF 9392
+E6B9B2 9FD1
+E6B9B6 9FD7
+E6B9BE 9870
+E6B9BF 8EBC
+E6BA80 969E
+E6BA82 9FE1
+E6BA8C 94AC
+E6BA8F 9FED
+E6BA90 8CB9
+E6BA96 8F80
+E6BA98 9FE3
+E6BA9C 97AD
+E6BA9D 8D61
+E6BA9F 9FF0
+E6BAA2 88EC
+E6BAA5 9FEE
+E6BAAA 9FE2
+E6BAAF 9FE8
+E6BAB2 9FEA
+E6BAB6 976E
+E6BAB7 9FE5
+E6BABA 934D
+E6BABD 9FE7
+E6BB82 9FEF
+E6BB84 9FE9
+E6BB85 96C5
+E6BB89 9FE4
+E6BB8B 8EA0
+E6BB8C 9FFC
+E6BB91 8A8A
+E6BB93 9FE6
+E6BB94 9FEB
+E6BB95 9FEC
+E6BB9D 91EA
+E6BB9E 91D8
+E6BBAC 9FF4
+E6BBAF 9FFA
+E6BBB2 9FF8
+E6BBB4 9348
+E6BBB7 E042
+E6BBB8 9FF5
+E6BBBE 9FF6
+E6BBBF 9FDE
+E6BC81 8B99
+E6BC82 9559
+E6BC86 8EBD
+E6BC89 8D97
+E6BC8F 9852
+E6BC91 9FF2
+E6BC93 E041
+E6BC94 8989
+E6BC95 9186
+E6BCA0 9499
+E6BCA2 8ABF
+E6BCA3 97F8
+E6BCAB 969F
+E6BCAC 92D0
+E6BCB1 9FF9
+E6BCB2 9FFB
+E6BCB8 9151
+E6BCBE E040
+E6BCBF 9FF7
+E6BD81 9FF1
+E6BD85 8AC1
+E6BD94 8C89
+E6BD98 E04E
+E6BD9B E049
+E6BD9C 90F6
+E6BD9F 8A83
+E6BDA4 8F81
+E6BDA6 E052
+E6BDAD E04B
+E6BDAE 92AA
+E6BDAF E048
+E6BDB0 92D7
+E6BDB4 E06B
+E6BDB8 E045
+E6BDBA E044
+E6BDBC E04D
+E6BE80 E047
+E6BE81 E046
+E6BE82 E04C
+E6BE84 909F
+E6BE86 E043
+E6BE8E E04F
+E6BE91 E050
+E6BE97 8AC0
+E6BEA1 E055
+E6BEA3 E054
+E6BEA4 E056
+E6BEAA E059
+E6BEB1 9362
+E6BEB3 E053
+E6BEB9 E057
+E6BF80 8C83
+E6BF81 91F7
+E6BF82 E051
+E6BF83 945A
+E6BF86 E058
+E6BF94 E05D
+E6BF95 E05B
+E6BF98 E05E
+E6BF9B E061
+E6BF9F E05A
+E6BFA0 8D8A
+E6BFA1 9447
+E6BFA4 9FB7
+E6BFAB 9794
+E6BFAC E05C
+E6BFAE E060
+E6BFAF 91F3
+E6BFB1 E05F
+E6BFB3 E04A
+E6BFB6 E889
+E6BFBA E064
+E6BFBE E068
+E78081 E066
+E78089 E062
+E7808B E063
+E7808F E067
+E78091 E065
+E78095 956D
+E78098 E06D
+E7809A E06A
+E7809B E069
+E7809D E06C
+E7809E 93D2
+E7809F E06E
+E780A6 9295
+E780A7 91EB
+E780AC 90A3
+E780B0 E06F
+E780B2 E071
+E780BE E070
+E7818C 9FF3
+E78191 E072
+E78198 93E5
+E781A3 E073
+E781AB 89CE
+E781AF 9394
+E781B0 8A44
+E781B8 8B84
+E781BC 8EDC
+E781BD 8DD0
+E78289 9846
+E7828A 9086
+E7828E 898A
+E78292 E075
+E78299 E074
+E782AC E078
+E782AD 9259
+E782AE E07B
+E782AF E076
+E782B3 E07A
+E782B8 E079
+E782B9 935F
+E782BA 88D7
+E78388 97F3
+E7838B E07D
+E7838F 8947
+E78399 E080
+E7839D E07E
+E7839F E07C
+E783B1 E077
+E783B9 9642
+E783BD E082
+E78489 E081
+E78494 898B
+E78499 E084
+E7849A 95B0
+E7849C E083
+E784A1 96B3
+E784A6 8FC5
+E784B6 9152
+E784BC 8FC4
+E78589 97F9
+E7858C E08A
+E7858E 90F7
+E78595 E086
+E78596 E08B
+E78599 898C
+E785A2 E089
+E785A4 9481
+E785A5 E085
+E785A6 E088
+E785A7 8FC6
+E785A9 94CF
+E785AC E08C
+E785AE 8ECF
+E785BD 90F8
+E78684 E08F
+E78688 E087
+E7868A 8C46
+E7868F E08D
+E78694 976F
+E78695 E090
+E78699 EAA4
+E7869F 8F6E
+E786A8 E091
+E786AC E092
+E786B1 944D
+E786B9 E094
+E786BE E095
+E78783 9452
+E78788 9395
+E78789 E097
+E7878E E099
+E78790 97D3
+E78792 E096
+E78794 E098
+E78795 898D
+E78797 E093
+E7879F 9A7A
+E787A0 E09A
+E787A5 9187
+E787A6 8E57
+E787A7 E09C
+E787AC E09B
+E787AD 9043
+E787AE 99D7
+E787B5 E09D
+E787B9 E09F
+E787BB E08E
+E787BC E09E
+E787BF E0A0
+E78886 949A
+E7888D E0A1
+E78890 E0A2
+E7889B E0A3
+E788A8 E0A4
+E788AA 92DC
+E788AC E0A6
+E788AD E0A5
+E788B0 E0A7
+E788B2 E0A8
+E788B5 8EDD
+E788B6 9583
+E788BA 96EA
+E788BB E0A9
+E788BC E0AA
+E788BD 9175
+E788BE 8EA2
+E788BF E0AB
+E78980 E0AC
+E78986 E0AD
+E78987 95D0
+E78988 94C5
+E7898B E0AE
+E7898C 9476
+E78992 92AB
+E78998 E0AF
+E78999 89E5
+E7899B 8B8D
+E7899D 96C4
+E7899F 96B4
+E789A1 89B2
+E789A2 9853
+E789A7 9671
+E789A9 95A8
+E789B2 90B5
+E789B4 E0B0
+E789B9 93C1
+E789BD 8CA1
+E789BE E0B1
+E78A80 8DD2
+E78A81 E0B3
+E78A82 E0B2
+E78A87 E0B4
+E78A92 E0B5
+E78A96 E0B6
+E78AA0 8B5D
+E78AA2 E0B7
+E78AA7 E0B8
+E78AAC 8CA2
+E78AAF 94C6
+E78AB2 E0BA
+E78AB6 8FF3
+E78AB9 E0B9
+E78B82 8BB6
+E78B83 E0BB
+E78B84 E0BD
+E78B86 E0BC
+E78B8E E0BE
+E78B90 8CCF
+E78B92 E0BF
+E78B97 8BE7
+E78B99 915F
+E78B9B 8D9D
+E78BA0 E0C1
+E78BA1 E0C2
+E78BA2 E0C0
+E78BA9 8EEB
+E78BAC 93C6
+E78BAD 8BB7
+E78BB7 E0C4
+E78BB8 924B
+E78BB9 E0C3
+E78BBC 9854
+E78BBD 9482
+E78C8A E0C7
+E78C96 E0C9
+E78C97 E0C6
+E78C9B 96D2
+E78C9C E0C8
+E78C9D E0CA
+E78C9F 97C2
+E78CA5 E0CE
+E78CA9 E0CD
+E78CAA 9296
+E78CAB 944C
+E78CAE 8CA3
+E78CAF E0CC
+E78CB4 E0CB
+E78CB6 9750
+E78CB7 9751
+E78CBE E0CF
+E78CBF 898E
+E78D84 8D96
+E78D85 8E82
+E78D8E E0D0
+E78D8F E0D1
+E78D97 E0D3
+E78DA3 8F62
+E78DA8 E0D5
+E78DAA E0D4
+E78DB0 E0D6
+E78DB2 8A6C
+E78DB5 E0D8
+E78DB8 E0D7
+E78DBA E0DA
+E78DBB E0D9
+E78E84 8CBA
+E78E87 97A6
+E78E89 8BCA
+E78E8B 89A4
+E78E96 8BE8
+E78EA9 8ADF
+E78EB2 97E6
+E78EB3 E0DC
+E78EBB E0DE
+E78F80 E0DF
+E78F82 89CF
+E78F88 E0DB
+E78F8A 8E58
+E78F8D 92BF
+E78F8E E0DD
+E78F9E E0E2
+E78FA0 8EEC
+E78FA5 E0E0
+E78FAA 8C5D
+E78FAD 94C7
+E78FAE E0E1
+E78FB1 E0FC
+E78FB8 E0E7
+E78FBE 8CBB
+E79083 8B85
+E79085 E0E4
+E79086 979D
+E79089 97AE
+E790A2 91F4
+E790A5 E0E6
+E790B2 E0E8
+E790B3 97D4
+E790B4 8BD5
+E790B5 94FA
+E790B6 9469
+E790BA E0E9
+E790BF E0EB
+E79181 E0EE
+E79195 E0EA
+E79199 E0ED
+E7919A 8CE8
+E7919B 896C
+E7919C E0EF
+E7919E 9090
+E7919F E0EC
+E791A0 97DA
+E791A3 E0F2
+E791A4 EAA2
+E791A9 E0F0
+E791AA E0F3
+E791AF E0E5
+E791B0 E0F1
+E791B3 8DBA
+E791B6 E0F4
+E791BE E0F5
+E79283 979E
+E7928B E0F6
+E7929E E0F7
+E792A2 E0E3
+E792A7 E0F8
+E792B0 8AC2
+E792BD 8EA3
+E7938A E0F9
+E7938F E0FA
+E79394 E0FB
+E7939C 895A
+E793A0 E140
+E793A2 955A
+E793A3 E141
+E793A6 8AA2
+E793A7 E142
+E793A9 E143
+E793AE E144
+E793B0 E146
+E793B1 E147
+E793B2 E145
+E793B6 9572
+E793B7 E149
+E793B8 E148
+E79483 E14B
+E79484 E14A
+E79485 E14C
+E7948C E14D
+E7948D E14F
+E7948E E14E
+E79491 8D99
+E79493 E151
+E79495 E150
+E79498 8AC3
+E7949A 9072
+E7949C 935B
+E7949E E152
+E7949F 90B6
+E794A3 8E59
+E794A5 8999
+E794A6 E153
+E794A8 9770
+E794AB 95E1
+E794AC E154
+E794B0 9363
+E794B1 9752
+E794B2 8D62
+E794B3 905C
+E794B7 926A
+E794B8 99B2
+E794BA 92AC
+E794BB 89E6
+E794BC E155
+E79584 E156
+E79586 E15B
+E79589 E159
+E7958A E158
+E7958B 9DC0
+E7958C 8A45
+E7958D E157
+E7958F 88D8
+E79591 94A8
+E79594 94C8
+E79599 97AF
+E7959A E15C
+E7959B E15A
+E7959C 927B
+E7959D 90A4
+E795A0 94A9
+E795A2 954C
+E795A4 E15E
+E795A5 97AA
+E795A6 8C6C
+E795A7 E15F
+E795A9 E15D
+E795AA 94D4
+E795AB E160
+E795AD E161
+E795B0 88D9
+E795B3 8FF4
+E795B4 E166
+E795B6 E163
+E795B7 93EB
+E795B8 E162
+E795BF 8B45
+E79682 E169
+E79686 E164
+E79687 E165
+E79689 E168
+E7968A E167
+E7968B 9544
+E7968E 9161
+E7968F 9160
+E79691 8B5E
+E79694 E16A
+E7969A E16B
+E7969D E16C
+E796A3 E16E
+E796A5 E16D
+E796AB 8975
+E796B1 E176
+E796B2 94E6
+E796B3 E170
+E796B5 E172
+E796B8 E174
+E796B9 905D
+E796BC E175
+E796BD E173
+E796BE 8EBE
+E79782 E16F
+E79783 E171
+E79785 9561
+E79787 8FC7
+E7978A E178
+E7978D E177
+E79792 E179
+E79794 8EA4
+E79795 8DAD
+E79798 9397
+E79799 E17A
+E7979B 92C9
+E7979E E17C
+E797A2 979F
+E797A3 E17B
+E797A9 9189
+E797B0 E182
+E797B2 E184
+E797B3 E185
+E797B4 9273
+E797BA E183
+E797BC E180
+E797BE E17D
+E797BF E17E
+E79881 E181
+E79889 E188
+E7988B E186
+E7988D E187
+E7989F E189
+E798A0 E18B
+E798A1 E18C
+E798A2 E18D
+E798A4 E18E
+E798A7 E18A
+E798B0 E190
+E798B4 E18F
+E798BB E191
+E79982 97C3
+E79986 E194
+E79987 E192
+E79988 E193
+E7998C 8AE0
+E79992 96FC
+E79996 95C8
+E79998 E196
+E7999C E195
+E799A1 E197
+E799A2 E198
+E799A7 E19C
+E799A8 E199
+E799A9 E19A
+E799AA E19B
+E799AC E19D
+E799B0 E19E
+E799B2 E19F
+E799B6 E1A0
+E799B8 E1A1
+E799BA 94AD
+E799BB 936F
+E799BC E1A2
+E799BD 9492
+E799BE 9553
+E79A80 E1A3
+E79A83 E1A4
+E79A84 9349
+E79A86 8A46
+E79A87 8D63
+E79A88 E1A5
+E79A8B E1A6
+E79A8E E1A7
+E79A90 8E48
+E79A93 E1A9
+E79A96 E1A8
+E79A99 E1AA
+E79A9A E1AB
+E79AAE 94E7
+E79AB0 E1AC
+E79AB4 E1AD
+E79AB7 EA89
+E79AB8 E1AE
+E79AB9 E1AF
+E79ABA E1B0
+E79ABF 8E4D
+E79B82 E1B1
+E79B83 9475
+E79B86 967E
+E79B88 896D
+E79B8A 8976
+E79B8D E1B2
+E79B92 E1B4
+E79B96 E1B3
+E79B97 9390
+E79B9B 90B7
+E79B9C 9F58
+E79B9E E1B5
+E79B9F 96BF
+E79BA1 E1B6
+E79BA3 8AC4
+E79BA4 94D5
+E79BA5 E1B7
+E79BA7 E1B8
+E79BAA E1B9
+E79BAE 96DA
+E79BB2 96D3
+E79BB4 92BC
+E79BB8 918A
+E79BBB E1BB
+E79BBE 8F82
+E79C81 8FC8
+E79C84 E1BE
+E79C87 E1BD
+E79C88 E1BC
+E79C89 94FB
+E79C8B 8AC5
+E79C8C 8CA7
+E79C9B E1C4
+E79C9E E1C1
+E79C9F 905E
+E79CA0 96B0
+E79CA4 E1C0
+E79CA5 E1C2
+E79CA6 E1C3
+E79CA9 E1BF
+E79CB7 E1C5
+E79CB8 E1C6
+E79CBA 92AD
+E79CBC 8AE1
+E79D80 9285
+E79D87 E1C7
+E79D9A E1C8
+E79D9B E1CB
+E79DA1 9087
+E79DA3 93C2
+E79DA5 E1CC
+E79DA6 9672
+E79DA8 E1C9
+E79DAB E1CA
+E79DB9 E1CF
+E79DBE E1CE
+E79DBF E1CD
+E79E8B E1D1
+E79E8E E1D0
+E79E91 E1D2
+E79E9E E1D4
+E79EA0 E1D3
+E79EA5 95CB
+E79EAC 8F75
+E79EAD 97C4
+E79EB0 E1D5
+E79EB3 93B5
+E79EB6 E1D6
+E79EB9 E1D7
+E79EBB E1DB
+E79EBC E1D9
+E79EBD E1DA
+E79EBF E1D8
+E79F87 E1DC
+E79F8D E1DD
+E79F97 E1DE
+E79F9A E1DF
+E79F9B 96B5
+E79F9C E1E0
+E79FA2 96EE
+E79FA3 E1E1
+E79FA5 926D
+E79FA7 948A
+E79FA9 8BE9
+E79FAD 925A
+E79FAE E1E2
+E79FAF 8BB8
+E79FB3 90CE
+E79FBC E1E3
+E7A082 8DBB
+E7A08C E1E4
+E7A092 E1E5
+E7A094 8CA4
+E7A095 8DD3
+E7A0A0 E1E7
+E7A0A5 9375
+E7A0A6 8DD4
+E7A0A7 8B6D
+E7A0B2 9643
+E7A0B4 946A
+E7A0BA 9376
+E7A0BF 8D7B
+E7A185 E1E9
+E7A19D 8FC9
+E7A1AB 97B0
+E7A1AC 8D64
+E7A1AF 8CA5
+E7A1B2 94A1
+E7A1B4 E1EB
+E7A1BC E1ED
+E7A281 8CE9
+E7A286 E1EC
+E7A287 92F4
+E7A28C E1EF
+E7A28D 8A56
+E7A28E E1EA
+E7A291 94E8
+E7A293 894F
+E7A295 8DEA
+E7A297 9871
+E7A29A E1EE
+E7A2A3 E1F0
+E7A2A7 95C9
+E7A2A9 90D7
+E7A2AA E1F2
+E7A2AF E1F3
+E7A2B5 E1F1
+E7A2BA 8A6D
+E7A2BC E1F9
+E7A2BE E1F8
+E7A381 8EA5
+E7A385 E1FA
+E7A386 E1F5
+E7A38A E1FB
+E7A38B E1F6
+E7A390 94D6
+E7A391 E1F4
+E7A394 E1F7
+E7A39A E241
+E7A3A7 E240
+E7A3A8 9681
+E7A3AC E1FC
+E7A3AF 88E9
+E7A3B4 E243
+E7A3BD E242
+E7A481 8FCA
+E7A487 E244
+E7A48E 9162
+E7A491 E246
+E7A492 E245
+E7A499 E247
+E7A4A6 E1E6
+E7A4AA E1E8
+E7A4AB E249
+E7A4AC E248
+E7A4BA 8EA6
+E7A4BC 97E7
+E7A4BE 8ED0
+E7A580 E24A
+E7A581 8C56
+E7A587 8B5F
+E7A588 8B46
+E7A589 8E83
+E7A590 9753
+E7A593 E250
+E7A595 E24F
+E7A596 9163
+E7A597 E24C
+E7A59A E24E
+E7A59D 8F6A
+E7A59E 905F
+E7A59F E24D
+E7A5A0 E24B
+E7A5A2 9449
+E7A5A5 8FCB
+E7A5A8 955B
+E7A5AD 8DD5
+E7A5B7 9398
+E7A5BA E251
+E7A5BF E252
+E7A680 E268
+E7A681 8BD6
+E7A684 985C
+E7A685 9154
+E7A68A E253
+E7A68D 89D0
+E7A68E 92F5
+E7A68F 959F
+E7A69D E254
+E7A6A6 8B9A
+E7A6A7 E255
+E7A6AA E257
+E7A6AE E258
+E7A6B0 9448
+E7A6B3 E259
+E7A6B9 E25A
+E7A6BA E25B
+E7A6BD 8BD7
+E7A6BE 89D1
+E7A6BF 93C3
+E7A780 8F47
+E7A781 8E84
+E7A789 E25C
+E7A78B 8F48
+E7A791 89C8
+E7A792 9562
+E7A795 E25D
+E7A798 94E9
+E7A79F 9164
+E7A7A1 E260
+E7A7A3 E261
+E7A7A4 9489
+E7A7A6 9060
+E7A7A7 E25E
+E7A7A9 9281
+E7A7AC E25F
+E7A7B0 8FCC
+E7A7BB 88DA
+E7A880 8B48
+E7A888 E262
+E7A88B 92F6
+E7A88D E263
+E7A88E 90C5
+E7A894 96AB
+E7A897 9542
+E7A898 E264
+E7A899 E265
+E7A89A 9274
+E7A89C 97C5
+E7A89F E267
+E7A8A0 E266
+E7A8AE 8EED
+E7A8B1 E269
+E7A8B2 88EE
+E7A8B7 E26C
+E7A8BB E26A
+E7A8BC 89D2
+E7A8BD 8C6D
+E7A8BE E26B
+E7A8BF 8D65
+E7A980 8D92
+E7A982 95E4
+E7A983 E26D
+E7A986 9673
+E7A989 E26F
+E7A98D 90CF
+E7A98E 896E
+E7A98F 89B8
+E7A990 88AA
+E7A997 E26E
+E7A9A1 E270
+E7A9A2 E271
+E7A9A3 8FF5
+E7A9A9 E272
+E7A9AB 8A6E
+E7A9B0 E274
+E7A9B4 8C8A
+E7A9B6 8B86
+E7A9B9 E275
+E7A9BA 8BF3
+E7A9BD E276
+E7A9BF 90FA
+E7AA81 93CB
+E7AA83 90DE
+E7AA84 8DF3
+E7AA88 E277
+E7AA92 9282
+E7AA93 918B
+E7AA95 E279
+E7AA96 E27B
+E7AA97 E278
+E7AA98 E27A
+E7AA9F 8C41
+E7AAA9 E27C
+E7AAAA 8C45
+E7AAAE 8B87
+E7AAAF 9771
+E7AAB0 E27E
+E7AAB6 E280
+E7AABA 894D
+E7AABF E283
+E7AB83 8A96
+E7AB84 E282
+E7AB85 E281
+E7AB87 E285
+E7AB88 E27D
+E7AB8A E286
+E7AB8B 97A7
+E7AB8D E287
+E7AB8F E288
+E7AB92 9AF2
+E7AB93 E28A
+E7AB95 E289
+E7AB99 E28B
+E7AB9A E28C
+E7AB9C 97B3
+E7AB9D E28D
+E7AB9F E8ED
+E7ABA0 8FCD
+E7ABA1 E28E
+E7ABA2 E28F
+E7ABA3 8F76
+E7ABA5 93B6
+E7ABA6 E290
+E7ABAA 9247
+E7ABAD E291
+E7ABAF 925B
+E7ABB0 E292
+E7ABB6 8BA3
+E7ABB8 995E
+E7ABB9 927C
+E7ABBA 8EB1
+E7ABBF 8AC6
+E7AC82 E293
+E7AC84 E2A0
+E7AC86 E296
+E7AC88 8B88
+E7AC8A E295
+E7AC8B E2A2
+E7AC8F E294
+E7AC91 8FCE
+E7AC98 E298
+E7AC99 E299
+E7AC9B 934A
+E7AC9E E29A
+E7ACA0 8A7D
+E7ACA5 9079
+E7ACA6 9584
+E7ACA8 E29C
+E7ACAC 91E6
+E7ACB3 E297
+E7ACB5 E29B
+E7ACB6 E29D
+E7ACB9 8DF9
+E7AD85 E2A4
+E7AD86 954D
+E7AD88 94A4
+E7AD89 9399
+E7AD8B 8BD8
+E7AD8C E2A3
+E7AD8D E2A1
+E7AD8F 94B3
+E7AD90 E29E
+E7AD91 927D
+E7AD92 939B
+E7AD94 939A
+E7AD96 8DF4
+E7AD9D E2B6
+E7ADA5 E2A6
+E7ADA7 E2A8
+E7ADAC E2AB
+E7ADAE E2AC
+E7ADB0 E2A9
+E7ADB1 E2AA
+E7ADB4 E2A7
+E7ADB5 E2A5
+E7ADBA E29F
+E7AE86 95CD
+E7AE87 89D3
+E7AE8B E2B3
+E7AE8D E2B0
+E7AE8F E2B5
+E7AE92 E2B4
+E7AE94 9493
+E7AE95 96A5
+E7AE97 8E5A
+E7AE98 E2AE
+E7AE99 E2B7
+E7AE9A E2B2
+E7AE9C E2B1
+E7AE9D E2AD
+E7AE9F E2AF
+E7AEA1 8AC7
+E7AEAA 925C
+E7AEAD 90FB
+E7AEB1 94A0
+E7AEB4 E2BC
+E7AEB8 94A2
+E7AF80 90DF
+E7AF81 E2B9
+E7AF84 94CD
+E7AF86 E2BD
+E7AF87 95D1
+E7AF89 927A
+E7AF8B E2B8
+E7AF8C E2BA
+E7AF8F E2BB
+E7AF9D E2BE
+E7AFA0 8EC2
+E7AFA4 93C4
+E7AFA5 E2C3
+E7AFA6 E2C2
+E7AFA9 E2BF
+E7AFAD 9855
+E7AFB3 E2C8
+E7AFB6 E2CC
+E7AFB7 E2C9
+E7B080 E2C5
+E7B087 E2C6
+E7B08D E2CB
+E7B091 E2C0
+E7B092 99D3
+E7B093 E2C7
+E7B094 E2C1
+E7B097 E2CA
+E7B09F E2D0
+E7B0A1 8AC8
+E7B0A3 E2CD
+E7B0A7 E2CE
+E7B0AA E2CF
+E7B0AB E2D2
+E7B0B7 E2D1
+E7B0B8 94F4
+E7B0BD E2D3
+E7B0BE 97FA
+E7B0BF 95EB
+E7B180 E2D8
+E7B183 E2D5
+E7B18C E2D4
+E7B18D 90D0
+E7B18F E2D7
+E7B190 E2D9
+E7B194 E2D6
+E7B196 E2DD
+E7B198 E2DA
+E7B19F E2DB
+E7B1A0 E2C4
+E7B1A4 E2DC
+E7B1A5 E2DE
+E7B1AC E2DF
+E7B1B3 95C4
+E7B1B5 E2E0
+E7B1BE 96E0
+E7B281 8BCC
+E7B282 8C48
+E7B283 E2E1
+E7B289 95B2
+E7B28B 9088
+E7B28D 96AE
+E7B290 E2E2
+E7B292 97B1
+E7B295 9494
+E7B297 9165
+E7B298 9453
+E7B29B 8F6C
+E7B29F 88BE
+E7B2A1 E2E7
+E7B2A2 E2E5
+E7B2A4 E2E3
+E7B2A5 8A9F
+E7B2A7 8FCF
+E7B2A8 E2E8
+E7B2AB E2E6
+E7B2AD E2E4
+E7B2AE E2EC
+E7B2B1 E2EB
+E7B2B2 E2EA
+E7B2B3 E2E9
+E7B2B9 E2ED
+E7B2BD E2EE
+E7B2BE 90B8
+E7B380 E2EF
+E7B382 E2F1
+E7B385 E2F0
+E7B38A 8CD0
+E7B38E 9157
+E7B392 E2F3
+E7B396 939C
+E7B398 E2F2
+E7B39C E2F4
+E7B39E 95B3
+E7B39F 918C
+E7B3A0 8D66
+E7B3A2 E2F5
+E7B3A7 97C6
+E7B3AF E2F7
+E7B3B2 E2F8
+E7B3B4 E2F9
+E7B3B6 E2FA
+E7B3B8 8E85
+E7B3BA E2FB
+E7B3BB 8C6E
+E7B3BE 8B8A
+E7B480 8B49
+E7B482 E340
+E7B484 96F1
+E7B485 8D67
+E7B486 E2FC
+E7B48A E343
+E7B48B 96E4
+E7B48D 945B
+E7B490 9552
+E7B494 8F83
+E7B495 E342
+E7B497 8ED1
+E7B498 8D68
+E7B499 8E86
+E7B49A 8B89
+E7B49B 95B4
+E7B49C E341
+E7B4A0 9166
+E7B4A1 9661
+E7B4A2 8DF5
+E7B4AB 8E87
+E7B4AC 92DB
+E7B4AE E346
+E7B4AF 97DD
+E7B4B0 8DD7
+E7B4B2 E347
+E7B4B3 9061
+E7B4B5 E349
+E7B4B9 8FD0
+E7B4BA 8DAE
+E7B4BF E348
+E7B582 8F49
+E7B583 8CBC
+E7B584 9167
+E7B585 E344
+E7B586 E34A
+E7B58B E345
+E7B58C 8C6F
+E7B58E E34D
+E7B58F E351
+E7B590 8C8B
+E7B596 E34C
+E7B59B E355
+E7B59E 8D69
+E7B5A1 978D
+E7B5A2 88BA
+E7B5A3 E352
+E7B5A6 8B8B
+E7B5A8 E34F
+E7B5AE E350
+E7B5B1 939D
+E7B5B2 E34E
+E7B5B3 E34B
+E7B5B5 8A47
+E7B5B6 90E2
+E7B5B9 8CA6
+E7B5BD E357
+E7B689 E354
+E7B68F E356
+E7B693 E353
+E7B699 8C70
+E7B69A 91B1
+E7B69B E358
+E7B69C 918E
+E7B69F E365
+E7B6A2 E361
+E7B6A3 E35B
+E7B6AB E35F
+E7B6AC 8EF8
+E7B6AD 88DB
+E7B6AE E35A
+E7B6AF E362
+E7B6B0 E366
+E7B6B1 8D6A
+E7B6B2 96D4
+E7B6B4 92D4
+E7B6B5 E35C
+E7B6B8 E364
+E7B6BA E359
+E7B6BB 925D
+E7B6BD E35E
+E7B6BE 88BB
+E7B6BF 96C8
+E7B787 E35D
+E7B78A 8BD9
+E7B78B 94EA
+E7B78F 918D
+E7B791 97CE
+E7B792 8F8F
+E7B795 E38E
+E7B798 E367
+E7B79A 90FC
+E7B79C E363
+E7B79D E368
+E7B79E E36A
+E7B7A0 92F7
+E7B7A1 E36D
+E7B7A4 E369
+E7B7A8 95D2
+E7B7A9 8AC9
+E7B7AC 96C9
+E7B7AF 88DC
+E7B7B2 E36C
+E7B7B4 97FB
+E7B7BB E36B
+E7B881 898F
+E7B884 93EA
+E7B885 E36E
+E7B889 E375
+E7B88A E36F
+E7B88B E376
+E7B892 E372
+E7B89B 949B
+E7B89E 8EC8
+E7B89F E374
+E7B8A1 E371
+E7B8A2 E377
+E7B8A3 E370
+E7B8A6 8F63
+E7B8AB 9644
+E7B8AE 8F6B
+E7B8B1 E373
+E7B8B2 E380
+E7B8B5 E37B
+E7B8B7 E37E
+E7B8B9 E37C
+E7B8BA E381
+E7B8BB E37A
+E7B8BD E360
+E7B8BE 90D1
+E7B981 94C9
+E7B983 E37D
+E7B986 E378
+E7B98A 9140
+E7B98B 8C71
+E7B98D 8F4A
+E7B994 9044
+E7B995 9155
+E7B996 E384
+E7B999 E386
+E7B99A E387
+E7B99D E383
+E7B99E E385
+E7B9A6 E379
+E7B9A7 E382
+E7B9A9 E38A
+E7B9AA E389
+E7B9AD 969A
+E7B9B0 8C4A
+E7B9B9 E388
+E7B9BB E38C
+E7B9BC E38B
+E7B9BD E38F
+E7B9BF E391
+E7BA82 8E5B
+E7BA83 E38D
+E7BA88 E392
+E7BA89 E393
+E7BA8C E394
+E7BA8E E39A
+E7BA8F 935A
+E7BA90 E396
+E7BA92 E395
+E7BA93 E397
+E7BA94 E398
+E7BA96 E399
+E7BA9B E39B
+E7BA9C E39C
+E7BCB6 8ACA
+E7BCB8 E39D
+E7BCBA E39E
+E7BD85 E39F
+E7BD8C E3A0
+E7BD8D E3A1
+E7BD8E E3A2
+E7BD90 E3A3
+E7BD91 E3A4
+E7BD94 E3A6
+E7BD95 E3A5
+E7BD98 E3A7
+E7BD9F E3A8
+E7BDA0 E3A9
+E7BDA7 E3AC
+E7BDA8 E3AA
+E7BDA9 E3AB
+E7BDAA 8DDF
+E7BDAB 8C72
+E7BDAE 9275
+E7BDB0 94B1
+E7BDB2 8F90
+E7BDB5 946C
+E7BDB7 94EB
+E7BDB8 E3AD
+E7BDB9 9CEB
+E7BE82 E3AE
+E7BE83 E3B0
+E7BE85 9785
+E7BE86 E3AF
+E7BE87 E3B2
+E7BE88 E3B1
+E7BE8A 9772
+E7BE8C E3B3
+E7BE8E 94FC
+E7BE94 E3B4
+E7BE9A E3B7
+E7BE9D E3B6
+E7BE9E E3B5
+E7BEA3 E3B8
+E7BEA4 8C51
+E7BEA8 9141
+E7BEA9 8B60
+E7BEAE E3BC
+E7BEAF E3B9
+E7BEB2 E3BA
+E7BEB6 E3BD
+E7BEB8 E3BE
+E7BEB9 E3BB
+E7BEBD 8948
+E7BF81 89A5
+E7BF85 E3C0
+E7BF86 E3C1
+E7BF8A E3C2
+E7BF8C 9782
+E7BF92 8F4B
+E7BF94 E3C4
+E7BF95 E3C3
+E7BFA0 9089
+E7BFA1 E3C5
+E7BFA6 E3C6
+E7BFA9 E3C7
+E7BFAB 8AE3
+E7BFB0 8ACB
+E7BFB3 E3C8
+E7BFB9 E3C9
+E7BFBB 967C
+E7BFBC 9783
+E88080 9773
+E88081 9856
+E88083 8D6C
+E88084 E3CC
+E88085 8ED2
+E88086 E3CB
+E8808B E3CD
+E8808C 8EA7
+E88090 91CF
+E88092 E3CE
+E88095 8D6B
+E88097 96D5
+E88098 E3CF
+E88099 E3D0
+E8809C E3D1
+E880A1 E3D2
+E880A8 E3D3
+E880B3 8EA8
+E880B6 96EB
+E880BB E3D5
+E880BD 925E
+E880BF E3D4
+E88186 E3D7
+E8818A E3D6
+E88192 E3D8
+E88196 90B9
+E88198 E3D9
+E8819A E3DA
+E8819E 95B7
+E8819F E3DB
+E881A1 918F
+E881A2 E3DC
+E881A8 E3DD
+E881AF 97FC
+E881B0 E3E0
+E881B2 E3DF
+E881B3 E3DE
+E881B4 92AE
+E881B6 E3E1
+E881B7 9045
+E881B9 E3E2
+E881BD E3E3
+E881BE 9857
+E881BF E3E4
+E88284 E3E5
+E88285 E3E7
+E88286 E3E6
+E88287 94A3
+E88289 93F7
+E8828B 985D
+E8828C 94A7
+E88293 E3E9
+E88296 8FD1
+E88298 9549
+E8829A E3EA
+E8829B E3E8
+E8829D 8ACC
+E882A1 8CD2
+E882A2 8E88
+E882A5 94EC
+E882A9 8CA8
+E882AA 9662
+E882AC E3ED
+E882AD E3EB
+E882AF 8D6D
+E882B1 8D6E
+E882B2 88E7
+E882B4 8DE6
+E882BA 9478
+E88383 88DD
+E88384 E3F2
+E88386 925F
+E8838C 9477
+E8838E 91D9
+E88396 E3F4
+E88399 E3F0
+E8839A E3F3
+E8839B E3EE
+E8839D E3F1
+E8839E 9645
+E883A1 8CD3
+E883A4 88FB
+E883A5 E3EF
+E883AF E3F6
+E883B1 E3F7
+E883B4 93B7
+E883B8 8BB9
+E883BC E445
+E883BD 945C
+E88482 8E89
+E88485 8BBA
+E88486 90C6
+E88487 9865
+E88488 96AC
+E88489 E3F5
+E8848A 90D2
+E8849A 8B72
+E8849B E3F8
+E884A3 E3FA
+E884A9 E3F9
+E884AF E3FB
+E884B1 9245
+E884B3 945D
+E884B9 92AF
+E884BE E442
+E88586 E441
+E8858B E3FC
+E8858E 9074
+E88590 9585
+E88591 E444
+E88593 E443
+E88594 8D6F
+E88595 9872
+E8859F E454
+E885A5 E448
+E885A6 E449
+E885AB 8EEE
+E885AE E447
+E885B0 8D98
+E885B1 E446
+E885B4 E44A
+E885B8 92B0
+E885B9 95A0
+E885BA 9142
+E885BF 91DA
+E88680 E44E
+E88682 E44F
+E88683 E44B
+E88688 E44C
+E8868A E44D
+E8868F 8D70
+E88693 E455
+E88695 E451
+E8869A 9586
+E8869C 968C
+E8869D 9547
+E886A0 E450
+E886A3 E453
+E886A4 E452
+E886A8 9663
+E886A9 E456
+E886B0 E457
+E886B3 9156
+E886B5 E458
+E886B8 E45A
+E886BA E45E
+E886BD E45B
+E886BE E459
+E886BF 945E
+E88780 E45C
+E88782 E45D
+E88786 89B0
+E88788 E464
+E88789 E45F
+E8878D E460
+E88791 E461
+E88793 919F
+E88798 E463
+E88799 E462
+E8879A E465
+E8879F E466
+E887A0 E467
+E887A3 9062
+E887A5 89E7
+E887A7 E468
+E887A8 97D5
+E887AA 8EA9
+E887AD 8F4C
+E887B3 8E8A
+E887B4 9276
+E887BA E469
+E887BB E46A
+E887BC 8950
+E887BE E46B
+E88881 E46C
+E88882 E46D
+E88885 E46E
+E88887 E46F
+E88888 8BBB
+E88889 9DA8
+E8888A E470
+E8888C 90E3
+E8888D E471
+E8888E 8EC9
+E88890 E472
+E88892 98AE
+E88896 E473
+E88897 95DC
+E88898 8ADA
+E8889B 9143
+E8889C 8F77
+E8889E 9591
+E8889F 8F4D
+E888A9 E474
+E888AA 8D71
+E888AB E475
+E888AC 94CA
+E888AE E484
+E888B3 E477
+E888B5 91C7
+E888B6 9495
+E888B7 8CBD
+E888B8 E476
+E888B9 9144
+E88980 E478
+E88987 92F8
+E88998 E47A
+E88999 E479
+E8899A E47C
+E8899D E47B
+E8899F E47D
+E889A2 E480
+E889A4 E47E
+E889A6 8ACD
+E889A8 E481
+E889AA E482
+E889AB E483
+E889AE 8DAF
+E889AF 97C7
+E889B1 E485
+E889B2 9046
+E889B6 8990
+E889B7 E486
+E889B8 E487
+E889BE E488
+E88A8B 88F0
+E88A8D E489
+E88A92 E48A
+E88A99 9587
+E88A9D 8EC5
+E88A9F E48C
+E88AA5 8A48
+E88AA6 88B0
+E88AAB E48B
+E88AAC E48E
+E88AAD 946D
+E88AAF 9063
+E88AB1 89D4
+E88AB3 9646
+E88AB8 8C7C
+E88AB9 8BDA
+E88ABB E48D
+E88ABD 89E8
+E88B85 8AA1
+E88B91 8991
+E88B92 E492
+E88B93 97E8
+E88B94 91DB
+E88B97 9563
+E88B99 E49E
+E88B9B 89D5
+E88B9C E49C
+E88B9E E49A
+E88B9F E491
+E88BA1 E48F
+E88BA3 E490
+E88BA5 8EE1
+E88BA6 8BEA
+E88BA7 9297
+E88BAB 93CF
+E88BB1 8970
+E88BB3 E494
+E88BB4 E493
+E88BB9 E499
+E88BBA E495
+E88BBB E498
+E88C82 96CE
+E88C83 E497
+E88C84 89D6
+E88C85 8A9D
+E88C86 E49B
+E88C89 E49D
+E88C8E 8C73
+E88C96 E4A1
+E88C97 E4AA
+E88C98 E4AB
+E88C9C 88A9
+E88CA3 E4B2
+E88CA8 88EF
+E88CAB E4A9
+E88CAF E4A8
+E88CB1 E4A3
+E88CB2 E4A2
+E88CB4 E4A0
+E88CB5 E49F
+E88CB6 9283
+E88CB8 91F9
+E88CB9 E4A5
+E88D80 E4A4
+E88D85 E4A7
+E88D89 9190
+E88D8A 8C74
+E88D8F 8960
+E88D90 E4A6
+E88D92 8D72
+E88D98 9191
+E88DB3 E4B8
+E88DB5 E4B9
+E88DB7 89D7
+E88DBB 89AC
+E88DBC E4B6
+E88E85 E4AC
+E88E87 E4B4
+E88E89 E4BB
+E88E8A E4B5
+E88E8E E4B3
+E88E93 E496
+E88E96 E4B1
+E88E9A E4AD
+E88E9E 8ACE
+E88E9F E4AF
+E88EA0 E4BA
+E88EA2 E4B0
+E88EA8 E4BC
+E88EAA E4AE
+E88EAB 949C
+E88EB1 9789
+E88EB5 E4B7
+E88EBD E4CD
+E88F81 E4C5
+E88F85 909B
+E88F8A 8B65
+E88F8C 8BDB
+E88F8E E4C0
+E88F93 89D9
+E88F96 8FD2
+E88F98 E4C3
+E88F9C 8DD8
+E88F9F 9370
+E88FA0 E4C8
+E88FA9 95EC
+E88FAB E4BF
+E88FAF 89D8
+E88FB0 8CD4
+E88FB1 9548
+E88FB2 E4C9
+E88FB4 E4BD
+E88FB7 E4C6
+E88FBB E4D0
+E88FBD E4C1
+E89083 E4C2
+E89084 93B8
+E89087 E4C7
+E8908B E4C4
+E8908C 9647
+E8908D E4CA
+E8908E 88DE
+E89093 E4BE
+E890A0 E4CC
+E890A2 E4CB
+E890A9 948B
+E890AA E4D2
+E890AC E4DD
+E890B1 8A9E
+E890B5 E4E0
+E890B8 E4CE
+E890BC E4D3
+E890BD 978E
+E89186 E4DC
+E89189 9774
+E8918E 97A8
+E89197 9298
+E8919B 8A8B
+E891A1 9592
+E891A2 E4E2
+E891A3 939F
+E891A6 88AF
+E891A9 E4DB
+E891AB E4D7
+E891AC 9192
+E891AD E4D1
+E891AE E4D9
+E891AF E4DE
+E891B1 944B
+E891B5 88A8
+E891B7 E4D6
+E891B9 E4DF
+E891BA 9598
+E89282 E4DA
+E89284 E4D5
+E8928B 8FD3
+E89290 8F4E
+E89294 8EAA
+E89299 96D6
+E8929C 9566
+E8929F E4E5
+E892A1 E4EE
+E892AD E4D8
+E892B2 8A97
+E892B8 8FF6
+E892B9 E4E3
+E892BB E4E8
+E892BC 9193
+E892BF E4E4
+E89381 E4EB
+E89384 927E
+E89386 E4EC
+E89389 9775
+E8938A E4E1
+E8938B 8A57
+E8938D E4E7
+E89390 E4EA
+E89391 96AA
+E89396 E4ED
+E89399 E4E6
+E8939A E4E9
+E893AC 9648
+E893AE 9840
+E893B4 E4F1
+E893BC E4F8
+E893BF E4F0
+E89480 8EC1
+E89486 E4CF
+E89491 95CC
+E89493 96A0
+E89494 E4F7
+E89495 E4F6
+E89497 E4F2
+E89498 E4F3
+E8949A 8955
+E8949F E4F5
+E894A1 E4EF
+E894A6 92D3
+E894AC E4F4
+E894AD 88FC
+E894B5 91A0
+E894BD 95C1
+E89580 E4F9
+E89581 E540
+E89583 94D7
+E89588 E4FC
+E89589 8FD4
+E8958A 8EC7
+E8958B E542
+E8958E 8BBC
+E89595 E543
+E89597 9599
+E89598 E4FB
+E8959A E4D4
+E895A3 E4FA
+E895A8 986E
+E895A9 93A0
+E895AA 9593
+E895AD E54A
+E895B7 E550
+E895BE E551
+E89680 E544
+E89684 9496
+E89687 E54E
+E89688 E546
+E8968A E548
+E89690 E552
+E89691 E547
+E89694 E54B
+E89697 8992
+E89699 93E3
+E8969B E54C
+E8969C E54F
+E896A4 E545
+E896A6 9145
+E896A8 E549
+E896A9 8E46
+E896AA 9064
+E896AB 8C4F
+E896AC 96F2
+E896AE 96F7
+E896AF 8F92
+E896B9 E556
+E896BA E554
+E89781 986D
+E89789 E553
+E8978D 9795
+E8978F E555
+E89790 E557
+E89795 E558
+E8979C E55B
+E8979D E559
+E897A4 93A1
+E897A5 E55A
+E897A9 94CB
+E897AA E54D
+E897B7 8F93
+E897B9 E55C
+E897BA E561
+E897BB 9194
+E897BE E560
+E89882 E541
+E89886 E562
+E89887 9168
+E8988A E55D
+E8988B E55F
+E89893 E55E
+E89896 9F50
+E89897 9F41
+E8989A E564
+E898A2 E563
+E898AD 9796
+E898AF E1BA
+E898B0 E565
+E898BF E566
+E8998D E567
+E8998E 8CD5
+E89990 8B73
+E89994 E569
+E89995 997C
+E8999A 8B95
+E8999C 97B8
+E8999E 8BF1
+E8999F E56A
+E899A7 E56B
+E899AB 928E
+E899B1 E56C
+E899B9 93F8
+E899BB 88B8
+E89A8A 89E1
+E89A8B E571
+E89A8C E572
+E89A93 E56D
+E89A95 8E5C
+E89AA3 E56E
+E89AA4 9461
+E89AA9 E56F
+E89AAA E570
+E89AAB E57A
+E89AAF E574
+E89AB0 E577
+E89AB6 E573
+E89B84 E575
+E89B86 E576
+E89B87 8ED6
+E89B89 E578
+E89B8B 9260
+E89B8D 8C75
+E89B8E 8A61
+E89B94 E57B
+E89B99 8A5E
+E89B9B E581
+E89B9E E57C
+E89B9F E580
+E89BA4 94B8
+E89BA9 E57D
+E89BAC E57E
+E89BAD 9567
+E89BAE 94D8
+E89BAF E582
+E89BB8 91FB
+E89BB9 E58C
+E89BBB E588
+E89BBE 89E9
+E89C80 E586
+E89C82 9649
+E89C83 E587
+E89C86 E584
+E89C88 E585
+E89C89 E58A
+E89C8A E58D
+E89C8D E58B
+E89C91 E589
+E89C92 E583
+E89C98 9277
+E89C9A E594
+E89C9C 96A8
+E89CA5 E592
+E89CA9 E593
+E89CB4 E58E
+E89CB7 E590
+E89CBB E591
+E89CBF E58F
+E89D89 90E4
+E89D8B 9858
+E89D8C E598
+E89D8E E599
+E89D93 E59F
+E89D95 9049
+E89D97 E59B
+E89D99 E59E
+E89D9F E596
+E89DA0 E595
+E89DA3 E5A0
+E89DA6 89DA
+E89DA8 E59C
+E89DAA E5A1
+E89DAE E59D
+E89DB4 E59A
+E89DB6 92B1
+E89DB8 E597
+E89DBF 9488
+E89E82 E5A5
+E89E8D 975A
+E89E9F E5A4
+E89EA2 E5A3
+E89EAB E5AC
+E89EAF E5A6
+E89EB3 E5AE
+E89EBA 9786
+E89EBB E5B1
+E89EBD E5A8
+E89F80 E5A9
+E89F84 E5AD
+E89F86 E5B0
+E89F87 E5AF
+E89F8B E5A7
+E89F90 E5AA
+E89F92 E5BB
+E89FA0 E5B4
+E89FAF E5B2
+E89FB2 E5B3
+E89FB6 E5B8
+E89FB7 E5B9
+E89FB9 8A49
+E89FBB 8B61
+E89FBE E5B7
+E8A085 E5A2
+E8A08D E5B6
+E8A08E E5BA
+E8A08F E5B5
+E8A091 E5BC
+E8A095 E5BE
+E8A096 E5BD
+E8A0A1 E5C0
+E8A0A2 E5BF
+E8A0A3 E579
+E8A0A7 E5C4
+E8A0B1 E5C1
+E8A0B6 E5C2
+E8A0B9 E5C3
+E8A0BB E5C5
+E8A180 8C8C
+E8A182 E5C7
+E8A184 E5C6
+E8A186 8F4F
+E8A18C 8D73
+E8A18D 9FA5
+E8A192 E5C8
+E8A193 8F70
+E8A197 8A58
+E8A199 E5C9
+E8A19B 8971
+E8A19D 8FD5
+E8A19E E5CA
+E8A1A1 8D74
+E8A1A2 E5CB
+E8A1A3 88DF
+E8A1A8 955C
+E8A1AB E5CC
+E8A1B0 908A
+E8A1B2 E5D3
+E8A1B5 E5D0
+E8A1B7 928F
+E8A1BD E5D1
+E8A1BE E5CE
+E8A1BF 8BDC
+E8A281 E5CD
+E8A282 E5D4
+E8A288 8C55
+E8A28B 91DC
+E8A28D E5DA
+E8A292 E5D6
+E8A296 91B3
+E8A297 E5D5
+E8A299 E5D8
+E8A29E E5CF
+E8A2A2 E5D9
+E8A2A4 E5DB
+E8A2AB 94ED
+E8A2AE E5D7
+E8A2B0 E5DC
+E8A2B1 E5DE
+E8A2B4 8CD1
+E8A2B5 E5D2
+E8A2B7 88BF
+E8A2BF E5DD
+E8A381 8DD9
+E8A382 97F4
+E8A383 E5DF
+E8A384 E5E0
+E8A385 9195
+E8A38F 97A0
+E8A394 E5E1
+E8A395 9754
+E8A398 E5E2
+E8A399 E5E3
+E8A39C 95E2
+E8A39D E5E4
+E8A39F 8DBE
+E8A3A1 97A1
+E8A3A8 E5E9
+E8A3B2 E5EA
+E8A3B3 8FD6
+E8A3B4 E5E8
+E8A3B8 9787
+E8A3B9 E5E5
+E8A3BC E5E7
+E8A3BD 90BB
+E8A3BE 909E
+E8A482 E5E6
+E8A484 E5EB
+E8A487 95A1
+E8A48A E5ED
+E8A48C E5EC
+E8A490 8A8C
+E8A492 964A
+E8A493 E5EE
+E8A49D E5FA
+E8A49E E5F0
+E8A4A5 E5F1
+E8A4AA E5F2
+E8A4AB E5F3
+E8A4B6 E5F7
+E8A4B8 E5F8
+E8A4BB E5F6
+E8A581 E5F4
+E8A583 E5EF
+E8A584 E5F5
+E8A58C E5F9
+E8A58D E8B5
+E8A596 89A6
+E8A59E E5FC
+E8A59F 8BDD
+E8A5A0 E5FB
+E8A5A4 E641
+E8A5A6 E640
+E8A5AA E643
+E8A5AD E642
+E8A5AF E644
+E8A5B2 8F50
+E8A5B4 E645
+E8A5B7 E646
+E8A5BE E647
+E8A5BF 90BC
+E8A681 9776
+E8A683 E648
+E8A686 95A2
+E8A687 9465
+E8A688 E649
+E8A68A E64A
+E8A68B 8CA9
+E8A68F 8B4B
+E8A693 E64B
+E8A696 8E8B
+E8A697 9460
+E8A698 E64C
+E8A69A 8A6F
+E8A6A1 E64D
+E8A6A6 E64F
+E8A6A7 9797
+E8A6A9 E64E
+E8A6AA 9065
+E8A6AC E650
+E8A6AF E651
+E8A6B2 E652
+E8A6B3 8ACF
+E8A6BA E653
+E8A6BD E654
+E8A6BF E655
+E8A780 E656
+E8A792 8A70
+E8A79A E657
+E8A79C E658
+E8A79D E659
+E8A7A3 89F0
+E8A7A6 9047
+E8A7A7 E65A
+E8A7B4 E65B
+E8A7B8 E65C
+E8A880 8CBE
+E8A882 92F9
+E8A883 E65D
+E8A888 8C76
+E8A88A 9075
+E8A88C E660
+E8A88E 93A2
+E8A890 E65F
+E8A893 8C50
+E8A896 E65E
+E8A897 91F5
+E8A898 8B4C
+E8A89B E661
+E8A89D E662
+E8A89F 8FD7
+E8A8A3 8C8D
+E8A8A5 E663
+E8A8AA 964B
+E8A8AD 90DD
+E8A8B1 8B96
+E8A8B3 96F3
+E8A8B4 9169
+E8A8B6 E664
+E8A8BA 9066
+E8A8BB 9290
+E8A8BC 8FD8
+E8A981 E665
+E8A986 E668
+E8A988 E669
+E8A990 8DBC
+E8A991 91C0
+E8A992 E667
+E8A994 8FD9
+E8A995 955D
+E8A99B E666
+E8A99E 8E8C
+E8A9A0 8972
+E8A9A2 E66D
+E8A9A3 8C77
+E8A9A6 8E8E
+E8A9A9 8E8D
+E8A9AB 986C
+E8A9AC E66C
+E8A9AD E66B
+E8A9AE 9146
+E8A9B0 8B6C
+E8A9B1 9862
+E8A9B2 8A59
+E8A9B3 8FDA
+E8A9BC E66A
+E8AA82 E66F
+E8AA84 E670
+E8AA85 E66E
+E8AA87 8CD6
+E8AA89 975F
+E8AA8C 8E8F
+E8AA8D 9446
+E8AA91 E673
+E8AA93 90BE
+E8AA95 9261
+E8AA98 9755
+E8AA9A E676
+E8AA9E 8CEA
+E8AAA0 90BD
+E8AAA1 E672
+E8AAA3 E677
+E8AAA4 8CEB
+E8AAA5 E674
+E8AAA6 E675
+E8AAA8 E671
+E8AAAC 90E0
+E8AAAD 93C7
+E8AAB0 924E
+E8AAB2 89DB
+E8AAB9 94EE
+E8AABC 8B62
+E8AABF 92B2
+E8AB82 E67A
+E8AB84 E678
+E8AB87 926B
+E8AB8B 90BF
+E8AB8C 8AD0
+E8AB8D E679
+E8AB8F 907A
+E8AB92 97C8
+E8AB96 985F
+E8AB9A E67B
+E8AB9B E687
+E8AB9C 92B3
+E8AB9E E686
+E8ABA0 E683
+E8ABA1 E68B
+E8ABA2 E684
+E8ABA4 E680
+E8ABA6 92FA
+E8ABA7 E67E
+E8ABAB E67C
+E8ABAD 9740
+E8ABAE 8E90
+E8ABB1 E681
+E8ABB3 E67D
+E8ABB7 E685
+E8ABB8 8F94
+E8ABBA 8CBF
+E8ABBE 91F8
+E8AC80 9664
+E8AC81 8979
+E8AC82 88E0
+E8AC84 93A3
+E8AC87 E689
+E8AC8C E688
+E8AC8E 93E4
+E8AC90 E68D
+E8AC94 E682
+E8AC96 E68C
+E8AC97 E68E
+E8AC99 8CAA
+E8AC9A E68A
+E8AC9B 8D75
+E8AC9D 8ED3
+E8ACA0 E68F
+E8ACA1 9777
+E8ACA6 E692
+E8ACA8 E695
+E8ACAB E693
+E8ACAC 9554
+E8ACB3 E690
+E8ACB9 8BDE
+E8ACBE E694
+E8AD81 E696
+E8AD89 E69A
+E8AD8C E697
+E8AD8E E699
+E8AD8F E698
+E8AD96 E69B
+E8AD98 8EAF
+E8AD9A E69D
+E8AD9B E69C
+E8AD9C 9588
+E8AD9F E69F
+E8ADA6 8C78
+E8ADAB E69E
+E8ADAC E6A0
+E8ADAF E6A1
+E8ADB0 8B63
+E8ADB1 E3BF
+E8ADB2 8FF7
+E8ADB4 E6A2
+E8ADB7 8CEC
+E8ADBD E6A3
+E8AE80 E6A4
+E8AE83 8E5D
+E8AE8A 9DCC
+E8AE8C E6A5
+E8AE8E E6A6
+E8AE90 8F51
+E8AE92 E6A7
+E8AE93 E6A8
+E8AE96 E6A9
+E8AE99 E6AA
+E8AE9A E6AB
+E8B0B7 924A
+E8B0BA E6AC
+E8B0BF E6AE
+E8B181 E6AD
+E8B186 93A4
+E8B188 E6AF
+E8B18A 964C
+E8B18C E6B0
+E8B18E E6B1
+E8B190 E6B2
+E8B195 E6B3
+E8B19A 93D8
+E8B1A1 8FDB
+E8B1A2 E6B4
+E8B1AA 8D8B
+E8B1AB 98AC
+E8B1AC E6B5
+E8B1B8 E6B6
+E8B1B9 955E
+E8B1BA E6B7
+E8B1BC E6BF
+E8B282 E6B8
+E8B285 E6BA
+E8B289 E6B9
+E8B28A E6BB
+E8B28C 9665
+E8B28D E6BC
+E8B28E E6BD
+E8B294 E6BE
+E8B298 E6C0
+E8B29D 8A4C
+E8B29E 92E5
+E8B2A0 9589
+E8B2A1 8DE0
+E8B2A2 8D76
+E8B2A7 956E
+E8B2A8 89DD
+E8B2A9 94CC
+E8B2AA E6C3
+E8B2AB 8AD1
+E8B2AC 90D3
+E8B2AD E6C2
+E8B2AE E6C7
+E8B2AF 9299
+E8B2B0 96E1
+E8B2B2 E6C5
+E8B2B3 E6C6
+E8B2B4 8B4D
+E8B2B6 E6C8
+E8B2B7 9483
+E8B2B8 91DD
+E8B2BB 94EF
+E8B2BC 935C
+E8B2BD E6C4
+E8B2BF 9666
+E8B380 89EA
+E8B381 E6CA
+E8B382 9847
+E8B383 92C0
+E8B384 9864
+E8B387 8E91
+E8B388 E6C9
+E8B38A 91AF
+E8B38D E6DA
+E8B38E 9147
+E8B391 93F6
+E8B393 956F
+E8B39A E6CD
+E8B39B 8E5E
+E8B39C 8E92
+E8B39E 8FDC
+E8B3A0 9485
+E8B3A2 8CAB
+E8B3A3 E6CC
+E8B3A4 E6CB
+E8B3A6 958A
+E8B3AA 8EBF
+E8B3AD 9371
+E8B3BA E6CF
+E8B3BB E6D0
+E8B3BC 8D77
+E8B3BD E6CE
+E8B484 E6D1
+E8B485 E6D2
+E8B487 E6D4
+E8B488 91A1
+E8B48A E6D3
+E8B48B 8AE4
+E8B48D E6D6
+E8B48F E6D5
+E8B490 E6D7
+E8B493 E6D9
+E8B494 E6DB
+E8B496 E6DC
+E8B5A4 90D4
+E8B5A6 8ECD
+E8B5A7 E6DD
+E8B5AB 8A71
+E8B5AD E6DE
+E8B5B0 9196
+E8B5B1 E6DF
+E8B5B3 E6E0
+E8B5B4 958B
+E8B5B7 8B4E
+E8B681 E6E1
+E8B685 92B4
+E8B68A 897A
+E8B699 E6E2
+E8B6A3 8EEF
+E8B6A8 9096
+E8B6B3 91AB
+E8B6BA E6E5
+E8B6BE E6E4
+E8B782 E6E3
+E8B78B E6EB
+E8B78C E6E9
+E8B78F E6E6
+E8B796 E6E8
+E8B79A E6E7
+E8B79B E6EA
+E8B79D 8B97
+E8B79F E6EE
+E8B7A1 90D5
+E8B7A3 E6EF
+E8B7A8 8CD7
+E8B7AA E6EC
+E8B7AB E6ED
+E8B7AF 9848
+E8B7B3 92B5
+E8B7B5 9148
+E8B7BC E6F0
+E8B7BF E6F3
+E8B888 E6F1
+E8B889 E6F2
+E8B88A 9778
+E8B88F 93A5
+E8B890 E6F6
+E8B89D E6F4
+E8B89E E6F5
+E8B89F E6F7
+E8B8AA E748
+E8B8B0 E6FA
+E8B8B4 E6FB
+E8B8B5 E6F9
+E8B982 E6F8
+E8B984 92FB
+E8B987 E740
+E8B988 E744
+E8B989 E741
+E8B98A E6FC
+E8B98C E742
+E8B990 E743
+E8B995 E74A
+E8B999 E745
+E8B99F 90D6
+E8B9A0 E747
+E8B9A3 E749
+E8B9A4 E746
+E8B9B2 E74C
+E8B9B4 8F52
+E8B9B6 E74B
+E8B9BC E74D
+E8BA81 E74E
+E8BA84 E751
+E8BA85 E750
+E8BA87 E74F
+E8BA8A E753
+E8BA8B E752
+E8BA8D 96F4
+E8BA91 E755
+E8BA93 E754
+E8BA94 E756
+E8BA99 E757
+E8BAA1 E759
+E8BAAA E758
+E8BAAB 9067
+E8BAAC E75A
+E8BAAF 8BEB
+E8BAB0 E75B
+E8BAB1 E75D
+E8BABE E75E
+E8BB85 E75F
+E8BB86 E75C
+E8BB88 E760
+E8BB8A 8ED4
+E8BB8B E761
+E8BB8C 8B4F
+E8BB8D 8C52
+E8BB92 8CAC
+E8BB9B E762
+E8BB9F 93EE
+E8BBA2 935D
+E8BBA3 E763
+E8BBAB E766
+E8BBB8 8EB2
+E8BBBB E765
+E8BBBC E764
+E8BBBD 8C79
+E8BBBE E767
+E8BC83 8A72
+E8BC85 E769
+E8BC89 8DDA
+E8BC8A E768
+E8BC8C E771
+E8BC92 E76B
+E8BC93 E76D
+E8BC94 95E3
+E8BC95 E76A
+E8BC99 E76C
+E8BC9B E770
+E8BC9C E76E
+E8BC9D 8B50
+E8BC9F E76F
+E8BCA6 E772
+E8BCA9 9479
+E8BCAA 97D6
+E8BCAF 8F53
+E8BCB3 E773
+E8BCB8 9741
+E8BCB9 E775
+E8BCBB E774
+E8BCBE E778
+E8BCBF 9760
+E8BD82 E777
+E8BD84 8A8D
+E8BD85 E776
+E8BD86 E77B
+E8BD89 E77A
+E8BD8C E779
+E8BD8D 9351
+E8BD8E E77C
+E8BD97 E77D
+E8BD9C E77E
+E8BD9F 8D8C
+E8BDA1 8C44
+E8BDA2 E780
+E8BDA3 E781
+E8BDA4 E782
+E8BE9B 9068
+E8BE9C E783
+E8BE9E 8EAB
+E8BE9F E784
+E8BEA3 E785
+E8BEA7 999F
+E8BEA8 999E
+E8BEAD E786
+E8BEAE E390
+E8BEAF E787
+E8BEB0 9243
+E8BEB1 904A
+E8BEB2 945F
+E8BEB7 E788
+E8BEBA 95D3
+E8BEBB 92D2
+E8BEBC 8D9E
+E8BEBF 9248
+E8BF82 8949
+E8BF84 9698
+E8BF85 9076
+E8BF8E 8C7D
+E8BF91 8BDF
+E8BF94 95D4
+E8BF9A E789
+E8BFA2 E78B
+E8BFA5 E78A
+E8BFA6 89DE
+E8BFA9 93F4
+E8BFAA E78C
+E8BFAB 9497
+E8BFAD 9352
+E8BFAF E78D
+E8BFB0 8F71
+E8BFB4 E78F
+E8BFB7 96C0
+E8BFB8 E79E
+E8BFB9 E791
+E8BFBA E792
+E8BFBD 92C7
+E98080 91DE
+E98081 9197
+E98083 93A6
+E98085 E790
+E98086 8B74
+E9808B E799
+E9808D E796
+E9808E E7A3
+E9808F 93A7
+E98090 9280
+E98091 E793
+E98093 92FC
+E98094 9372
+E98095 E794
+E98096 E798
+E98097 9080
+E98099 9487
+E9809A 92CA
+E9809D 90C0
+E9809E E797
+E9809F 91AC
+E980A0 91A2
+E980A1 E795
+E980A2 88A7
+E980A3 9841
+E980A7 E79A
+E980AE 91DF
+E980B1 8F54
+E980B2 9069
+E980B5 E79C
+E980B6 E79B
+E980B8 88ED
+E980B9 E79D
+E980BC 954E
+E980BE E7A5
+E98181 93D9
+E98182 908B
+E98185 9278
+E98187 8BF6
+E98189 E7A4
+E9818A 9756
+E9818B 895E
+E9818D 95D5
+E9818E 89DF
+E9818F E79F
+E98190 E7A0
+E98191 E7A1
+E98192 E7A2
+E98193 93B9
+E98194 9242
+E98195 88E1
+E98196 E7A6
+E98198 E7A7
+E98199 EAA1
+E9819C 91BB
+E9819E E7A8
+E981A0 8993
+E981A1 916B
+E981A3 8CAD
+E981A5 9779
+E981A8 E7A9
+E981A9 934B
+E981AD 9198
+E981AE 8ED5
+E981AF E7AA
+E981B2 E7AD
+E981B5 8F85
+E981B6 E7AB
+E981B7 914A
+E981B8 9149
+E981BA 88E2
+E981BC 97C9
+E981BD E7AF
+E981BF 94F0
+E98280 E7B1
+E98281 E7B0
+E98282 E7AE
+E98283 E284
+E98284 8AD2
+E98287 E78E
+E98289 E7B3
+E9828A E7B2
+E9828F E7B4
+E98291 9757
+E982A3 93DF
+E982A6 964D
+E982A8 E7B5
+E982AA 8ED7
+E982AF E7B6
+E982B1 E7B7
+E982B5 E7B8
+E982B8 9340
+E98381 88E8
+E9838A 8D78
+E9838E 9859
+E9839B E7BC
+E983A1 8C53
+E983A2 E7B9
+E983A4 E7BA
+E983A8 9594
+E983AD 8A73
+E983B5 9758
+E983B7 8BBD
+E983BD 9373
+E98482 E7BD
+E98492 E7BE
+E98499 E7BF
+E984AD 9341
+E984B0 E7C1
+E984B2 E7C0
+E98589 93D1
+E9858A E7C2
+E9858B 8F55
+E9858C 8EDE
+E9858D 947A
+E9858E 9291
+E98592 8EF0
+E98594 908C
+E98596 E7C3
+E98598 E7C4
+E985A2 907C
+E985A3 E7C5
+E985A5 E7C6
+E985A9 E7C7
+E985AA 978F
+E985AC 8F56
+E985B2 E7C9
+E985B3 E7C8
+E985B5 8D79
+E985B7 8D93
+E985B8 8E5F
+E98682 E7CC
+E98687 8F86
+E98689 E7CB
+E9868B E7CA
+E9868D 91E7
+E98690 8CED
+E98692 90C1
+E98697 94AE
+E9869C 8F58
+E986A2 E7CD
+E986A4 8FDD
+E986AA E7D0
+E986AB E7CE
+E986AF E7CF
+E986B4 E7D2
+E986B5 E7D1
+E986B8 8FF8
+E986BA E7D3
+E98780 E7D4
+E98781 E7D5
+E98786 94CE
+E98787 8DD1
+E98788 8EDF
+E98789 E7D6
+E9878B E7D7
+E9878C 97A2
+E9878D 8F64
+E9878E 96EC
+E9878F 97CA
+E98790 E7D8
+E98791 8BE0
+E98796 E7D9
+E98798 9342
+E9879B E7DC
+E9879C 8A98
+E9879D 906A
+E9879F E7DA
+E987A1 E7DB
+E987A3 92DE
+E987A6 9674
+E987A7 8BFA
+E987B5 E7DE
+E987B6 E7DF
+E987BC E7DD
+E987BF E7E1
+E9888D 93DD
+E9888E 8A62
+E98891 E7E5
+E98894 E7E2
+E98895 E7E4
+E9889E E7E0
+E988A9 E86E
+E988AC E7E3
+E988B4 97E9
+E988B7 8CD8
+E988BF E7ED
+E98984 9353
+E98985 E7E8
+E98988 E7EB
+E98989 E7E9
+E9898B E7EE
+E98990 E7EF
+E98997 E7E7
+E9899A E7F4
+E9899B 8994
+E9899E E7E6
+E989A2 94AB
+E989A4 E7EA
+E989A6 8FDE
+E989B1 8D7A
+E989BE 9667
+E98A80 8BE2
+E98A83 8F65
+E98A85 93BA
+E98A91 914C
+E98A93 E7F2
+E98A95 E7EC
+E98A96 E7F1
+E98A98 96C1
+E98A9A 92B6
+E98A9B E7F3
+E98A9C E7F0
+E98AAD 914B
+E98AB7 E7F7
+E98AB9 E7F6
+E98B8F E7F5
+E98B92 964E
+E98BA4 8F9B
+E98BA9 E7F8
+E98BAA 95DD
+E98BAD 8973
+E98BB2 9565
+E98BB3 9292
+E98BB8 8B98
+E98BBA E7FA
+E98BBC 8D7C
+E98C86 8E4B
+E98C8F E7F9
+E98C90 908D
+E98C98 908E
+E98C99 E840
+E98C9A E842
+E98CA0 8FF9
+E98CA2 E841
+E98CA3 E843
+E98CA6 8BD1
+E98CA8 9564
+E98CAB 8EE0
+E98CAC 9842
+E98CAE E7FC
+E98CAF 8DF6
+E98CB2 985E
+E98CB5 E845
+E98CBA E844
+E98CBB E846
+E98D84 E7FB
+E98D8B 93E7
+E98D8D 9374
+E98D94 92D5
+E98D96 E84B
+E98D9B 9262
+E98D9C E847
+E98DA0 E848
+E98DAC 8C4C
+E98DAE E84A
+E98DB5 8CAE
+E98DBC E849
+E98DBE 8FDF
+E98E8C 8A99
+E98E94 E84F
+E98E96 8DBD
+E98E97 9199
+E98E9A 92C8
+E98EA7 8A5A
+E98EAC E84D
+E98EAD E84E
+E98EAE 92C1
+E98EB0 E84C
+E98EB9 E850
+E98F83 E856
+E98F88 E859
+E98F90 E858
+E98F91 934C
+E98F96 E851
+E98F97 E852
+E98F98 E855
+E98F9D E857
+E98FA1 8BBE
+E98FA4 E85A
+E98FA5 E854
+E98FA8 E853
+E99083 E85E
+E99087 E85F
+E99090 E860
+E99093 E85D
+E99094 E85C
+E99098 8FE0
+E99099 93A8
+E9909A E85B
+E990A1 E864
+E990AB E862
+E990B5 E863
+E990B6 E861
+E990B8 91F6
+E990BA E865
+E99181 E866
+E99184 E868
+E99191 8AD3
+E99192 E867
+E99193 96F8
+E9919A E873
+E9919B E869
+E9919E E86C
+E991A0 E86A
+E991A2 E86B
+E991AA E86D
+E991B0 E86F
+E991B5 E870
+E991B7 E871
+E991BC E874
+E991BD E872
+E991BE E875
+E991BF E877
+E99281 E876
+E995B7 92B7
+E99680 96E5
+E99682 E878
+E99683 914D
+E99687 E879
+E99689 95C2
+E9968A E87A
+E9968B 8A4A
+E9968F 895B
+E99691 8AD5
+E99693 8AD4
+E99694 E87B
+E99696 E87C
+E99698 E87D
+E99699 E87E
+E996A0 E880
+E996A2 8AD6
+E996A3 8A74
+E996A4 8D7D
+E996A5 94B4
+E996A7 E882
+E996A8 E881
+E996AD E883
+E996B2 897B
+E996B9 E886
+E996BB E885
+E996BC E884
+E996BE E887
+E99783 E88A
+E99787 88C5
+E9978A E888
+E9978C E88C
+E9978D E88B
+E99794 E88E
+E99795 E88D
+E99796 E88F
+E99798 93AC
+E9979C E890
+E997A1 E891
+E997A2 E893
+E997A5 E892
+E9989C 958C
+E998A1 E894
+E998A8 E895
+E998AA 8DE3
+E998AE E896
+E998AF E897
+E998B2 9668
+E998BB 916A
+E998BF 88A2
+E99980 91C9
+E99982 E898
+E99984 958D
+E9998B E89B
+E9998C E899
+E9998D 8D7E
+E9998F E89A
+E99990 8CC0
+E9999B 95C3
+E9999C E89D
+E9999D E89F
+E9999E E89E
+E9999F E8A0
+E999A2 8940
+E999A3 9077
+E999A4 8F9C
+E999A5 8AD7
+E999A6 E8A1
+E999AA 9486
+E999AC E8A3
+E999B0 8941
+E999B2 E8A2
+E999B3 92C2
+E999B5 97CB
+E999B6 93A9
+E999B7 E89C
+E999B8 97A4
+E999BA 8CAF
+E999BD 977A
+E99A85 8BF7
+E99A86 97B2
+E99A88 8C47
+E99A8A 91E0
+E99A8B E440
+E99A8D E8A4
+E99A8E 8A4B
+E99A8F 908F
+E99A94 8A75
+E99A95 E8A6
+E99A97 E8A7
+E99A98 E8A5
+E99A99 8C84
+E99A9B 8DDB
+E99A9C 8FE1
+E99AA0 8942
+E99AA3 97D7
+E99AA7 E8A9
+E99AA8 E7AC
+E99AAA E8A8
+E99AB0 E8AC
+E99AB1 E8AA
+E99AB2 E8AB
+E99AB4 E8AD
+E99AB6 E8AE
+E99AB7 97EA
+E99AB8 E8AF
+E99AB9 E8B0
+E99ABB 90C7
+E99ABC 94B9
+E99B80 909D
+E99B81 8AE5
+E99B84 9759
+E99B85 89EB
+E99B86 8F57
+E99B87 8CD9
+E99B89 E8B3
+E99B8B E8B2
+E99B8C 8E93
+E99B8D E8B4
+E99B8E E8B1
+E99B91 8E47
+E99B95 E8B8
+E99B96 E5AB
+E99B99 99D4
+E99B9B 9097
+E99B9C E8B6
+E99BA2 97A3
+E99BA3 93EF
+E99BA8 894A
+E99BAA 90E1
+E99BAB 8EB4
+E99BB0 95B5
+E99BB2 895F
+E99BB6 97EB
+E99BB7 978B
+E99BB9 E8B9
+E99BBB 9364
+E99C80 8EF9
+E99C84 E8BA
+E99C86 E8BB
+E99C87 906B
+E99C88 E8BC
+E99C8A 97EC
+E99C8D E8B7
+E99C8E E8BE
+E99C8F E8C0
+E99C91 E8BF
+E99C93 E8BD
+E99C96 E8C1
+E99C99 E8C2
+E99C9C 919A
+E99C9E 89E0
+E99CA4 E8C3
+E99CA7 96B6
+E99CAA E8C4
+E99CB0 E8C5
+E99CB2 9849
+E99CB8 9E50
+E99CB9 E8C6
+E99CBD E8C7
+E99CBE E8C8
+E99D82 E8CC
+E99D84 E8C9
+E99D86 E8CA
+E99D88 E8CB
+E99D89 E8CD
+E99D92 90C2
+E99D96 96F5
+E99D99 90C3
+E99D9C E8CE
+E99D9E 94F1
+E99DA0 E8CF
+E99DA1 EA72
+E99DA2 96CA
+E99DA4 E8D0
+E99DA6 E8D1
+E99DA8 E8D2
+E99DA9 8A76
+E99DAB E8D4
+E99DAD 9078
+E99DB1 E8D5
+E99DB4 8C43
+E99DB9 E8D6
+E99DBA E8DA
+E99DBC E8D8
+E99E81 E8D9
+E99E84 8A93
+E99E85 E8D7
+E99E86 E8DB
+E99E8B E8DC
+E99E8D 88C6
+E99E8F E8DD
+E99E90 E8DE
+E99E98 8FE2
+E99E9C E8DF
+E99EA0 8B66
+E99EA3 E8E2
+E99EA6 E8E1
+E99EA8 E8E0
+E99EAB E691
+E99EAD 95DA
+E99EB3 E8E3
+E99EB4 E8E4
+E99F83 E8E5
+E99F86 E8E6
+E99F88 E8E7
+E99F8B E8E8
+E99F93 8AD8
+E99F9C E8E9
+E99FAD E8EA
+E99FAE 9442
+E99FB2 E8EC
+E99FB3 89B9
+E99FB5 E8EF
+E99FB6 E8EE
+E99FBB 8943
+E99FBF 8BBF
+E9A081 95C5
+E9A082 92B8
+E9A083 8DA0
+E9A085 8D80
+E9A086 8F87
+E9A088 907B
+E9A08C E8F1
+E9A08F E8F0
+E9A090 9761
+E9A091 8AE6
+E9A092 94D0
+E9A093 93DA
+E9A097 909C
+E9A098 97CC
+E9A09A 8C7A
+E9A0A1 E8F4
+E9A0A4 E8F3
+E9A0AC 966A
+E9A0AD 93AA
+E9A0B4 896F
+E9A0B7 E8F5
+E9A0B8 E8F2
+E9A0BB 9570
+E9A0BC 978A
+E9A0BD E8F6
+E9A186 E8F7
+E9A18B E8F9
+E9A18C 91E8
+E9A18D 8A7A
+E9A18E 8A7B
+E9A18F E8F8
+E9A194 8AE7
+E9A195 8CB0
+E9A198 8AE8
+E9A19B 935E
+E9A19E 97DE
+E9A1A7 8CDA
+E9A1AB E8FA
+E9A1AF E8FB
+E9A1B0 E8FC
+E9A1B1 E940
+E9A1B3 E942
+E9A1B4 E941
+E9A2A8 9597
+E9A2AA E943
+E9A2AF E944
+E9A2B1 E945
+E9A2B6 E946
+E9A383 E948
+E9A384 E947
+E9A386 E949
+E9A39B 94F2
+E9A39C E3CA
+E9A39F 9048
+E9A3A2 8B51
+E9A3A9 E94A
+E9A3AB E94B
+E9A3AD 99AA
+E9A3AE 9F5A
+E9A3AF 94D1
+E9A3B2 88F9
+E9A3B4 88B9
+E9A3BC 8E94
+E9A3BD 964F
+E9A3BE 8FFC
+E9A483 E94C
+E9A485 96DD
+E9A489 E94D
+E9A48A 977B
+E9A48C 8961
+E9A490 8E60
+E9A492 E94E
+E9A493 89EC
+E9A494 E94F
+E9A498 E950
+E9A49D E952
+E9A49E E953
+E9A4A0 E955
+E9A4A1 E951
+E9A4A4 E954
+E9A4A8 8AD9
+E9A4AC E956
+E9A4AE E957
+E9A4BD E958
+E9A4BE E959
+E9A582 E95A
+E9A585 E95C
+E9A589 E95B
+E9A58B E95E
+E9A58C E961
+E9A590 E95D
+E9A591 E95F
+E9A592 E960
+E9A595 E962
+E9A597 8BC0
+E9A696 8EF1
+E9A697 E963
+E9A698 E964
+E9A699 8D81
+E9A6A5 E965
+E9A6A8 8A5D
+E9A6AC 946E
+E9A6AD E966
+E9A6AE E967
+E9A6B3 9279
+E9A6B4 93E9
+E9A6BC E968
+E9A781 949D
+E9A784 91CA
+E9A785 8977
+E9A786 8BEC
+E9A788 8BED
+E9A790 9293
+E9A791 E96D
+E9A792 8BEE
+E9A795 89ED
+E9A798 E96C
+E9A79B E96A
+E9A79D E96B
+E9A79F E969
+E9A7A2 E977
+E9A7AD E96E
+E9A7AE E96F
+E9A7B1 E970
+E9A7B2 E971
+E9A7B8 E973
+E9A7BB E972
+E9A7BF 8F78
+E9A881 E974
+E9A885 E976
+E9A88E 8B52
+E9A88F E975
+E9A892 919B
+E9A893 8CB1
+E9A899 E978
+E9A8A8 91CB
+E9A8AB E979
+E9A8B0 93AB
+E9A8B7 E97A
+E9A8BE E980
+E9A980 E97D
+E9A982 E97C
+E9A983 E97E
+E9A985 E97B
+E9A98D E982
+E9A995 E981
+E9A997 E984
+E9A99A 8BC1
+E9A99B E983
+E9A99F E985
+E9A9A2 E986
+E9A9A4 E988
+E9A9A5 E987
+E9A9A9 E989
+E9A9AA E98B
+E9A9AB E98A
+E9AAA8 8D9C
+E9AAAD E98C
+E9AAB0 E98D
+E9AAB8 8A5B
+E9AABC E98E
+E9AB80 E98F
+E9AB84 9091
+E9AB8F E990
+E9AB91 E991
+E9AB93 E992
+E9AB94 E993
+E9AB98 8D82
+E9AB9E E994
+E9AB9F E995
+E9ABA2 E996
+E9ABA3 E997
+E9ABA6 E998
+E9ABAA 94AF
+E9ABAB E99A
+E9ABAD 9545
+E9ABAE E99B
+E9ABAF E999
+E9ABB1 E99D
+E9ABB4 E99C
+E9ABB7 E99E
+E9ABBB E99F
+E9AC86 E9A0
+E9AC98 E9A1
+E9AC9A E9A2
+E9AC9F E9A3
+E9ACA2 E9A4
+E9ACA3 E9A5
+E9ACA5 E9A6
+E9ACA7 E9A7
+E9ACA8 E9A8
+E9ACA9 E9A9
+E9ACAA E9AA
+E9ACAE E9AB
+E9ACAF E9AC
+E9ACB1 9F54
+E9ACB2 E9AD
+E9ACBB E2F6
+E9ACBC 8B53
+E9AD81 8A40
+E9AD82 8DB0
+E9AD83 E9AF
+E9AD84 E9AE
+E9AD85 96A3
+E9AD8D E9B1
+E9AD8E E9B2
+E9AD8F E9B0
+E9AD91 E9B3
+E9AD94 9682
+E9AD98 E9B4
+E9AD9A 8B9B
+E9ADAF 9844
+E9ADB4 E9B5
+E9AE83 E9B7
+E9AE8E 88BC
+E9AE91 E9B8
+E9AE92 95A9
+E9AE93 E9B6
+E9AE96 E9B9
+E9AE97 E9BA
+E9AE9F E9BB
+E9AEA0 E9BC
+E9AEA8 E9BD
+E9AEAA 968E
+E9AEAB 8E4C
+E9AEAD 8DF8
+E9AEAE 914E
+E9AEB4 E9BE
+E9AEB9 E9C1
+E9AF80 E9BF
+E9AF86 E9C2
+E9AF89 8CEF
+E9AF8A E9C0
+E9AF8F E9C3
+E9AF91 E9C4
+E9AF92 E9C5
+E9AF94 E9C9
+E9AF96 8E49
+E9AF9B 91E2
+E9AFA1 E9CA
+E9AFA2 E9C7
+E9AFA3 E9C6
+E9AFA4 E9C8
+E9AFA8 8C7E
+E9AFB0 E9CE
+E9AFB1 E9CD
+E9AFB2 E9CC
+E9AFB5 88B1
+E9B084 E9D8
+E9B086 E9D4
+E9B088 E9D5
+E9B089 E9D1
+E9B08A E9D7
+E9B08C E9D3
+E9B08D 8A82
+E9B090 986B
+E9B092 E9D6
+E9B093 E9D2
+E9B094 E9D0
+E9B095 E9CF
+E9B09B E9DA
+E9B0A1 E9DD
+E9B0A4 E9DC
+E9B0A5 E9DB
+E9B0AD 9568
+E9B0AE E9D9
+E9B0AF 88F1
+E9B0B0 E9DE
+E9B0B2 E9E0
+E9B0B9 8A8F
+E9B0BA E9CB
+E9B0BB 8956
+E9B0BE E9E2
+E9B186 E9E1
+E9B187 E9DF
+E9B188 924C
+E9B192 9690
+E9B197 97D8
+E9B19A E9E3
+E9B1A0 E9E4
+E9B1A7 E9E5
+E9B1B6 E9E6
+E9B1B8 E9E7
+E9B3A5 92B9
+E9B3A7 E9E8
+E9B3A9 94B5
+E9B3AB E9ED
+E9B3AC E9E9
+E9B3B0 E9EA
+E9B3B3 9650
+E9B3B4 96C2
+E9B3B6 93CE
+E9B483 E9EE
+E9B486 E9EF
+E9B487 93BC
+E9B488 E9EC
+E9B489 E9EB
+E9B48E 89A8
+E9B492 E9F7
+E9B495 E9F6
+E9B49B 8995
+E9B49F E9F4
+E9B4A3 E9F3
+E9B4A6 E9F1
+E9B4A8 8A9B
+E9B4AA E9F0
+E9B4AB 8EB0
+E9B4AC 89A7
+E9B4BB 8D83
+E9B4BE E9FA
+E9B4BF E9F9
+E9B581 E9F8
+E9B584 E9F5
+E9B586 E9FB
+E9B588 E9FC
+E9B590 EA44
+E9B591 EA43
+E9B599 EA45
+E9B59C 894C
+E9B59D EA40
+E9B59E EA41
+E9B5A0 8D94
+E9B5A1 96B7
+E9B5A4 EA42
+E9B5AC 9651
+E9B5AF EA4A
+E9B5B2 EA46
+E9B5BA EA4B
+E9B687 EA48
+E9B689 EA47
+E9B68F 8C7B
+E9B69A EA4C
+E9B6A4 EA4D
+E9B6A9 EA4E
+E9B6AB EA49
+E9B6AF E9F2
+E9B6B2 EA4F
+E9B6B4 92DF
+E9B6B8 EA53
+E9B6BA EA54
+E9B6BB EA52
+E9B781 EA51
+E9B782 EA57
+E9B784 EA50
+E9B786 EA55
+E9B78F EA56
+E9B793 EA59
+E9B799 EA58
+E9B7A6 EA5B
+E9B7AD EA5C
+E9B7AF EA5D
+E9B7B2 9868
+E9B7B8 EA5A
+E9B7B9 91E9
+E9B7BA 8DEB
+E9B7BD EA5E
+E9B89A EA5F
+E9B89B EA60
+E9B89E EA61
+E9B9B5 EA62
+E9B9B8 8CB2
+E9B9B9 EA63
+E9B9BD EA64
+E9B9BF 8EAD
+E9BA81 EA65
+E9BA88 EA66
+E9BA8B EA67
+E9BA8C EA68
+E9BA91 EA6B
+E9BA92 EA69
+E9BA93 985B
+E9BA95 EA6A
+E9BA97 97ED
+E9BA9D EA6C
+E9BA9F 97D9
+E9BAA5 EA6D
+E9BAA6 949E
+E9BAA9 EA6E
+E9BAAA EA70
+E9BAAD EA71
+E9BAB8 EA6F
+E9BAB9 8D8D
+E9BABA 96CB
+E9BABB 9683
+E9BABC 9BF5
+E9BABE 9F80
+E9BABF 969B
+E9BB84 89A9
+E9BB8C EA73
+E9BB8D 8B6F
+E9BB8E EA74
+E9BB8F EA75
+E9BB90 EA76
+E9BB92 8D95
+E9BB94 EA77
+E9BB98 E0D2
+E9BB99 96D9
+E9BB9B 91E1
+E9BB9C EA78
+E9BB9D EA7A
+E9BB9E EA79
+E9BBA0 EA7B
+E9BBA5 EA7C
+E9BBA8 EA7D
+E9BBAF EA7E
+E9BBB4 EA80
+E9BBB6 EA81
+E9BBB7 EA82
+E9BBB9 EA83
+E9BBBB EA84
+E9BBBC EA85
+E9BBBD EA86
+E9BC87 EA87
+E9BC88 EA88
+E9BC8E 9343
+E9BC93 8CDB
+E9BC95 EA8A
+E9BCA0 916C
+E9BCA1 EA8B
+E9BCAC EA8C
+E9BCBB 9540
+E9BCBE EA8D
+E9BD8A EA8E
+E9BD8B E256
+E9BD8E E6D8
+E9BD8F E8EB
+E9BD92 EA8F
+E9BD94 EA90
+E9BD9F EA92
+E9BDA0 EA93
+E9BDA1 EA94
+E9BDA2 97EE
+E9BDA3 EA91
+E9BDA6 EA95
+E9BDA7 EA96
+E9BDAA EA98
+E9BDAC EA97
+E9BDB2 EA9A
+E9BDB6 EA9B
+E9BDB7 EA99
+E9BE8D 97B4
+E9BE95 EA9C
+E9BE9C EA9D
+E9BE9D E273
+E9BEA0 EA9E
+EFBC81 8149
+EFBC83 8194
+EFBC84 8190
+EFBC85 8193
+EFBC86 8195
+EFBC88 8169
+EFBC89 816A
+EFBC8A 8196
+EFBC8B 817B
+EFBC8C 8143
+EFBC8E 8144
+EFBC8F 815E
+EFBC90 824F
+EFBC91 8250
+EFBC92 8251
+EFBC93 8252
+EFBC94 8253
+EFBC95 8254
+EFBC96 8255
+EFBC97 8256
+EFBC98 8257
+EFBC99 8258
+EFBC9A 8146
+EFBC9B 8147
+EFBC9C 8183
+EFBC9D 8181
+EFBC9E 8184
+EFBC9F 8148
+EFBCA0 8197
+EFBCA1 8260
+EFBCA2 8261
+EFBCA3 8262
+EFBCA4 8263
+EFBCA5 8264
+EFBCA6 8265
+EFBCA7 8266
+EFBCA8 8267
+EFBCA9 8268
+EFBCAA 8269
+EFBCAB 826A
+EFBCAC 826B
+EFBCAD 826C
+EFBCAE 826D
+EFBCAF 826E
+EFBCB0 826F
+EFBCB1 8270
+EFBCB2 8271
+EFBCB3 8272
+EFBCB4 8273
+EFBCB5 8274
+EFBCB6 8275
+EFBCB7 8276
+EFBCB8 8277
+EFBCB9 8278
+EFBCBA 8279
+EFBCBB 816D
+EFBCBD 816E
+EFBCBE 814F
+EFBCBF 8151
+EFBD80 814D
+EFBD81 8281
+EFBD82 8282
+EFBD83 8283
+EFBD84 8284
+EFBD85 8285
+EFBD86 8286
+EFBD87 8287
+EFBD88 8288
+EFBD89 8289
+EFBD8A 828A
+EFBD8B 828B
+EFBD8C 828C
+EFBD8D 828D
+EFBD8E 828E
+EFBD8F 828F
+EFBD90 8290
+EFBD91 8291
+EFBD92 8292
+EFBD93 8293
+EFBD94 8294
+EFBD95 8295
+EFBD96 8296
+EFBD97 8297
+EFBD98 8298
+EFBD99 8299
+EFBD9A 829A
+EFBD9B 816F
+EFBD9C 8162
+EFBD9D 8170
+EFBDA1 A1
+EFBDA2 A2
+EFBDA3 A3
+EFBDA4 A4
+EFBDA5 A5
+EFBDA6 A6
+EFBDA7 A7
+EFBDA8 A8
+EFBDA9 A9
+EFBDAA AA
+EFBDAB AB
+EFBDAC AC
+EFBDAD AD
+EFBDAE AE
+EFBDAF AF
+EFBDB0 B0
+EFBDB1 B1
+EFBDB2 B2
+EFBDB3 B3
+EFBDB4 B4
+EFBDB5 B5
+EFBDB6 B6
+EFBDB7 B7
+EFBDB8 B8
+EFBDB9 B9
+EFBDBA BA
+EFBDBB BB
+EFBDBC BC
+EFBDBD BD
+EFBDBE BE
+EFBDBF BF
+EFBE80 C0
+EFBE81 C1
+EFBE82 C2
+EFBE83 C3
+EFBE84 C4
+EFBE85 C5
+EFBE86 C6
+EFBE87 C7
+EFBE88 C8
+EFBE89 C9
+EFBE8A CA
+EFBE8B CB
+EFBE8C CC
+EFBE8D CD
+EFBE8E CE
+EFBE8F CF
+EFBE90 D0
+EFBE91 D1
+EFBE92 D2
+EFBE93 D3
+EFBE94 D4
+EFBE95 D5
+EFBE96 D6
+EFBE97 D7
+EFBE98 D8
+EFBE99 D9
+EFBE9A DA
+EFBE9B DB
+EFBE9C DC
+EFBE9D DD
+EFBE9E DE
+EFBE9F DF
+EFBFA3 8150
+EFBFA5 818F
DROP TABLE t1;
#
# End of 5.5 tests
diff --git a/mysql-test/r/ctype_utf16.result b/mysql-test/r/ctype_utf16.result
new file mode 100644
index 00000000000..3c2fe316d71
--- /dev/null
+++ b/mysql-test/r/ctype_utf16.result
@@ -0,0 +1,1038 @@
+DROP TABLE IF EXISTS t1;
+#
+# Start of 5.5 tests
+#
+SET NAMES latin1;
+SET character_set_connection=utf16;
+select hex('a'), hex('a ');
+hex('a') hex('a ')
+0061 00610020
+select 'a' = 'a', 'a' = 'a ', 'a ' = 'a';
+'a' = 'a' 'a' = 'a ' 'a ' = 'a'
+1 1 1
+select 'a\0' = 'a', 'a\0' < 'a', 'a\0' > 'a';
+'a\0' = 'a' 'a\0' < 'a' 'a\0' > 'a'
+0 1 0
+select 'a' = 'a\0', 'a' < 'a\0', 'a' > 'a\0';
+'a' = 'a\0' 'a' < 'a\0' 'a' > 'a\0'
+0 0 1
+select 'a\0' = 'a ', 'a\0' < 'a ', 'a\0' > 'a ';
+'a\0' = 'a ' 'a\0' < 'a ' 'a\0' > 'a '
+0 1 0
+select 'a ' = 'a\0', 'a ' < 'a\0', 'a ' > 'a\0';
+'a ' = 'a\0' 'a ' < 'a\0' 'a ' > 'a\0'
+0 0 1
+select 'a a' > 'a', 'a \0' < 'a';
+'a a' > 'a' 'a \0' < 'a'
+1 1
+select binary 'a a' > 'a', binary 'a \0' > 'a', binary 'a\0' > 'a';
+binary 'a a' > 'a' binary 'a \0' > 'a' binary 'a\0' > 'a'
+1 1 1
+select hex(_utf16 0x44);
+hex(_utf16 0x44)
+00000044
+select hex(_utf16 0x3344);
+hex(_utf16 0x3344)
+3344
+select hex(_utf16 0x113344);
+hex(_utf16 0x113344)
+000000113344
+CREATE TABLE t1 (word VARCHAR(64), word2 CHAR(64)) CHARACTER SET utf16;
+INSERT INTO t1 VALUES (_koi8r 0xF2, _koi8r 0xF2), (X'2004',X'2004');
+SELECT hex(word) FROM t1 ORDER BY word;
+hex(word)
+0420
+2004
+SELECT hex(word2) FROM t1 ORDER BY word2;
+hex(word2)
+0420
+2004
+DELETE FROM t1;
+INSERT INTO t1 VALUES (X'042000200020',X'042000200020'), (X'200400200020', X'200400200020');
+SELECT hex(word) FROM t1 ORDER BY word;
+hex(word)
+042000200020
+200400200020
+SELECT hex(word2) FROM t1 ORDER BY word2;
+hex(word2)
+0420
+2004
+DROP TABLE t1;
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'0421'));
+hex(LPAD(_utf16 X'0420',10,_utf16 X'0421'))
+0421042104210421042104210421042104210420
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'04210422'));
+hex(LPAD(_utf16 X'0420',10,_utf16 X'04210422'))
+0421042204210422042104220421042204210420
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'042104220423'));
+hex(LPAD(_utf16 X'0420',10,_utf16 X'042104220423'))
+0421042204230421042204230421042204230420
+SELECT hex(LPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'));
+hex(LPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'))
+0420042104220423042404250426042704280429
+SELECT hex(LPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'));
+hex(LPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'))
+042104210421042104210421042104210421D800DC00
+SELECT hex(LPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'));
+hex(LPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'))
+D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC000421
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'0421'));
+hex(RPAD(_utf16 X'0420',10,_utf16 X'0421'))
+0420042104210421042104210421042104210421
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'04210422'));
+hex(RPAD(_utf16 X'0420',10,_utf16 X'04210422'))
+0420042104220421042204210422042104220421
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'042104220423'));
+hex(RPAD(_utf16 X'0420',10,_utf16 X'042104220423'))
+0420042104220423042104220423042104220423
+SELECT hex(RPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'));
+hex(RPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'))
+0420042104220423042404250426042704280429
+SELECT hex(RPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'));
+hex(RPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'))
+D800DC00042104210421042104210421042104210421
+SELECT hex(RPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'));
+hex(RPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'))
+0421D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00D800DC00
+CREATE TABLE t1 SELECT
+LPAD(_utf16 X'0420',10,_utf16 X'0421') l,
+RPAD(_utf16 X'0420',10,_utf16 X'0421') r;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `l` varchar(10) CHARACTER SET utf16 NOT NULL DEFAULT '',
+ `r` varchar(10) CHARACTER SET utf16 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(l), hex(r) from t1;
+hex(l) hex(r)
+0421042104210421042104210421042104210420 0420042104210421042104210421042104210421
+DROP TABLE t1;
+create table t1 (f1 char(30));
+insert into t1 values ("103000"), ("22720000"), ("3401200"), ("78000");
+select lpad(f1, 12, "-o-/") from t1;
+lpad(f1, 12, "-o-/")
+-o-/-o103000
+-o-/22720000
+-o-/-3401200
+-o-/-o-78000
+drop table t1;
+SET NAMES latin1;
+SET character_set_connection=utf16;
+select @@collation_connection;
+@@collation_connection
+utf16_general_ci
+create table t1 as select repeat(' ',10) as a union select null;
+alter table t1 add key(a);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(10) CHARACTER SET utf16 DEFAULT NULL,
+ KEY `a` (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+explain select * from t1 where a like 'abc%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 43 NULL 1 Using where; Using index
+explain select * from t1 where a like concat('abc','%');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 43 NULL 1 Using where; Using index
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+select 'AA' like 'AA';
+'AA' like 'AA'
+1
+select 'AA' like 'A%A';
+'AA' like 'A%A'
+1
+select 'AA' like 'A%%A';
+'AA' like 'A%%A'
+1
+select 'AA' like 'AA%';
+'AA' like 'AA%'
+1
+select 'AA' like '%AA%';
+'AA' like '%AA%'
+1
+select 'AA' like '%A';
+'AA' like '%A'
+1
+select 'AA' like '%AA';
+'AA' like '%AA'
+1
+select 'AA' like 'A%A%';
+'AA' like 'A%A%'
+1
+select 'AA' like '_%_%';
+'AA' like '_%_%'
+1
+select 'AA' like '%A%A';
+'AA' like '%A%A'
+1
+select 'AAA'like 'A%A%A';
+'AAA'like 'A%A%A'
+1
+select 'AZ' like 'AZ';
+'AZ' like 'AZ'
+1
+select 'AZ' like 'A%Z';
+'AZ' like 'A%Z'
+1
+select 'AZ' like 'A%%Z';
+'AZ' like 'A%%Z'
+1
+select 'AZ' like 'AZ%';
+'AZ' like 'AZ%'
+1
+select 'AZ' like '%AZ%';
+'AZ' like '%AZ%'
+1
+select 'AZ' like '%Z';
+'AZ' like '%Z'
+1
+select 'AZ' like '%AZ';
+'AZ' like '%AZ'
+1
+select 'AZ' like 'A%Z%';
+'AZ' like 'A%Z%'
+1
+select 'AZ' like '_%_%';
+'AZ' like '_%_%'
+1
+select 'AZ' like '%A%Z';
+'AZ' like '%A%Z'
+1
+select 'AZ' like 'A_';
+'AZ' like 'A_'
+1
+select 'AZ' like '_Z';
+'AZ' like '_Z'
+1
+select 'AMZ'like 'A%M%Z';
+'AMZ'like 'A%M%Z'
+1
+SET NAMES utf8;
+SET character_set_connection=utf16;
+CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf16);
+INSERT INTO t1 VALUES ('фыва'),('Фыва'),('фЫва'),('фыВа'),('фывÐ'),('ФЫВÐ');
+INSERT INTO t1 VALUES ('фывапролдж'),('Фывапролдж'),('фЫвапролдж'),('фыВапролдж');
+INSERT INTO t1 VALUES ('фывÐпролдж'),('фываПролдж'),('фывапРолдж'),('фывапрОлдж');
+INSERT INTO t1 VALUES ('фывапроЛдж'),('фывапролДж'),('фывапролдЖ'),('ФЫВÐПРОЛДЖ');
+SELECT * FROM t1 WHERE a LIKE '%фЫва%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE '%фЫв%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' COLLATE utf16_bin ORDER BY BINARY a;
+a
+фЫва
+фЫвапролдж
+DROP TABLE t1;
+CREATE TABLE t1 (word varchar(64) NOT NULL, PRIMARY KEY (word))
+ENGINE=MyISAM CHARACTER SET utf16;
+INSERT INTO t1 (word) VALUES ("cat");
+SELECT * FROM t1 WHERE word LIKE "c%";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE "ca_";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE "cat";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE _utf16 x'00630025';
+word
+cat
+SELECT * FROM t1 WHERE word LIKE _utf16 x'00630061005F';
+word
+cat
+DROP TABLE t1;
+select insert(_utf16 0x006100620063,10,2,_utf16 0x006400650066);
+insert(_utf16 0x006100620063,10,2,_utf16 0x006400650066)
+abc
+select insert(_utf16 0x006100620063,1,2,_utf16 0x006400650066);
+insert(_utf16 0x006100620063,1,2,_utf16 0x006400650066)
+defc
+SET NAMES latin1;
+CREATE TABLE t1 (
+word VARCHAR(64),
+bar INT(11) default 0,
+PRIMARY KEY (word))
+ENGINE=MyISAM
+CHARSET utf16
+COLLATE utf16_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT * FROM t1 ORDER BY word;
+word bar
+a 0
+aar 0
+aardvar 0
+aardvara 0
+aardvark 0
+aardvarz 0
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 258 NULL 6 Using index
+SELECT word FROM t1 ORDER by word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+CREATE TABLE t1 (
+word VARCHAR(64) ,
+PRIMARY KEY (word))
+ENGINE=MyISAM
+CHARSET utf16
+COLLATE utf16_general_ci;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY WORD;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 258 NULL 6 Using index
+SELECT * FROM t1 ORDER BY word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+CREATE TABLE t1 (
+word TEXT,
+bar INT(11) AUTO_INCREMENT,
+PRIMARY KEY (bar))
+ENGINE=MyISAM
+CHARSET utf16
+COLLATE utf16_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a" );
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT * FROM t1 ORDER BY word;
+word bar
+a 2
+aar 1
+aardvar 3
+aardvara 5
+aardvark 4
+aardvarz 6
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT word FROM t1 ORDER BY word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+SELECT hex(cast(0xAA as char character set utf16));
+hex(cast(0xAA as char character set utf16))
+000000AA
+SELECT hex(convert(0xAA using utf16));
+hex(convert(0xAA using utf16))
+000000AA
+CREATE TABLE t1 (a char(10) character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+0001
+0011
+0111
+1111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(10) character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+0001
+0011
+0111
+1111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a text character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+0001
+0011
+0111
+1111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a mediumtext character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+0001
+0011
+0111
+1111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a longtext character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+0001
+0011
+0111
+1111
+00011111
+DROP TABLE t1;
+create table t1(a char(1)) default charset utf16;
+insert into t1 values ('a'),('b'),('c');
+alter table t1 modify a char(5);
+select a, hex(a) from t1;
+a hex(a)
+a 0061
+b 0062
+c 0063
+drop table t1;
+set @ivar= 1234;
+set @str1 = 'select ?';
+set @str2 = convert(@str1 using utf16);
+prepare stmt1 from @str2;
+execute stmt1 using @ivar;
+?
+1234
+set names utf8;
+create table t1 (a enum('x','y','z') character set utf16);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('x','y','z') CHARACTER SET utf16 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 0078
+y 0079
+z 007A
+alter table t1 change a a enum('x','y','z','d','e','ä','ö','ü') character set utf16;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('x','y','z','d','e','ä','ö','ü') CHARACTER SET utf16 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('D');
+insert into t1 values ('E ');
+insert into t1 values ('ä');
+insert into t1 values ('ö');
+insert into t1 values ('ü');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 0078
+y 0079
+z 007A
+d 0064
+e 0065
+ä 00E4
+ö 00F6
+ü 00FC
+drop table t1;
+create table t1 (a set ('x','y','z','ä','ö','ü') character set utf16);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` set('x','y','z','ä','ö','ü') CHARACTER SET utf16 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+insert into t1 values ('x,y');
+insert into t1 values ('x,y,z,ä,ö,ü');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 0078
+y 0079
+x,y 0078002C0079
+z 007A
+x,y,z,ä,ö,ü 0078002C0079002C007A002C00E4002C00F6002C00FC
+drop table t1;
+create table t1(a enum('a','b','c')) default character set utf16;
+insert into t1 values('a'),('b'),('c');
+alter table t1 add b char(1);
+show warnings;
+Level Code Message
+select * from t1 order by a;
+a b
+a NULL
+b NULL
+c NULL
+drop table t1;
+SET NAMES latin1;
+SET collation_connection='utf16_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf16_general_ci 00610009
+utf16_general_ci 0061
+utf16_general_ci 00610020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf16_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+SET NAMES latin1;
+SET collation_connection='utf16_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf16_bin 00610009
+utf16_bin 0061
+utf16_bin 00610020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf16_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+select hex(substr(_utf16 0x00e400e50068,1));
+hex(substr(_utf16 0x00e400e50068,1))
+00E400E50068
+select hex(substr(_utf16 0x00e400e50068,2));
+hex(substr(_utf16 0x00e400e50068,2))
+00E50068
+select hex(substr(_utf16 0x00e400e50068,3));
+hex(substr(_utf16 0x00e400e50068,3))
+0068
+select hex(substr(_utf16 0x00e400e50068,-1));
+hex(substr(_utf16 0x00e400e50068,-1))
+0068
+select hex(substr(_utf16 0x00e400e50068,-2));
+hex(substr(_utf16 0x00e400e50068,-2))
+00E50068
+select hex(substr(_utf16 0x00e400e50068,-3));
+hex(substr(_utf16 0x00e400e50068,-3))
+00E400E50068
+select hex(substr(_utf16 0x00e400e5D800DC00,1));
+hex(substr(_utf16 0x00e400e5D800DC00,1))
+00E400E5D800DC00
+select hex(substr(_utf16 0x00e400e5D800DC00,2));
+hex(substr(_utf16 0x00e400e5D800DC00,2))
+00E5D800DC00
+select hex(substr(_utf16 0x00e400e5D800DC00,3));
+hex(substr(_utf16 0x00e400e5D800DC00,3))
+D800DC00
+select hex(substr(_utf16 0x00e400e5D800DC00,-1));
+hex(substr(_utf16 0x00e400e5D800DC00,-1))
+D800DC00
+select hex(substr(_utf16 0x00e400e5D800DC00,-2));
+hex(substr(_utf16 0x00e400e5D800DC00,-2))
+00E5D800DC00
+select hex(substr(_utf16 0x00e400e5D800DC00,-3));
+hex(substr(_utf16 0x00e400e5D800DC00,-3))
+00E400E5D800DC00
+SET NAMES latin1;
+create table t1 (utext varchar(20) character set utf16);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+utext
+lily
+river
+execute stmt using @param1;
+utext
+lily
+river
+select utext from t1 where utext like '%%';
+utext
+lily
+river
+drop table t1;
+deallocate prepare stmt;
+create table t1 (
+a char(10) character set utf16 not null,
+index a (a)
+) engine=myisam;
+insert into t1 values (repeat(0x201f, 10));
+insert into t1 values (repeat(0x2020, 10));
+insert into t1 values (repeat(0x2021, 10));
+explain select hex(a) from t1 order by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL a 40 NULL 3 Using index
+select hex(a) from t1 order by a;
+hex(a)
+201F201F201F201F201F201F201F201F201F201F
+2020202020202020202020202020202020202020
+2021202120212021202120212021202120212021
+alter table t1 drop index a;
+select hex(a) from t1 order by a;
+hex(a)
+201F201F201F201F201F201F201F201F201F201F
+2020202020202020202020202020202020202020
+2021202120212021202120212021202120212021
+drop table t1;
+CREATE TABLE t1 (
+status enum('active','passive') character set utf16 collate utf16_general_ci
+NOT NULL default 'passive'
+);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `status` enum('active','passive') CHARACTER SET utf16 NOT NULL DEFAULT 'passive'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 ADD a int NOT NULL AFTER status;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `status` enum('active','passive') CHARACTER SET utf16 NOT NULL DEFAULT 'passive',
+ `a` int(11) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE t1;
+End of 4.1 tests
+CREATE TABLE t1 (a varchar(64) character set utf16, b decimal(10,3));
+INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
+update t1 set b=a;
+SELECT *, hex(a) FROM t1;
+a b hex(a)
+1.1 1.100 0031002E0031
+2.1 2.100 0032002E0031
+DROP TABLE t1;
+create table t1 (utext varchar(20) character set utf16);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+utext
+lily
+river
+execute stmt using @param1;
+utext
+lily
+river
+select utext from t1 where utext like '%%';
+utext
+lily
+river
+drop table t1;
+deallocate prepare stmt;
+set names latin1;
+set character_set_connection=utf16;
+select soundex(''),soundex('he'),soundex('hello all folks'),soundex('#3556 in bugdb');
+soundex('') soundex('he') soundex('hello all folks') soundex('#3556 in bugdb')
+ H000 H4142 I51231
+select hex(soundex('')),hex(soundex('he')),hex(soundex('hello all folks')),hex(soundex('#3556 in bugdb'));
+hex(soundex('')) hex(soundex('he')) hex(soundex('hello all folks')) hex(soundex('#3556 in bugdb'))
+ 0048003000300030 00480034003100340032 004900350031003200330031
+select 'mood' sounds like 'mud';
+'mood' sounds like 'mud'
+1
+select hex(soundex(_utf16 0x041004110412));
+hex(soundex(_utf16 0x041004110412))
+0410003000300030
+select hex(soundex(_utf16 0x00BF00C0));
+hex(soundex(_utf16 0x00BF00C0))
+00C0003000300030
+set names latin1;
+create table t1(a blob, b text charset utf16);
+select data_type, character_octet_length, character_maximum_length
+from information_schema.columns where table_name='t1';
+data_type character_octet_length character_maximum_length
+blob 65535 65535
+text 65535 32767
+drop table t1;
+set names latin1;
+set collation_connection=utf16_general_ci;
+select position('bb' in 'abba');
+position('bb' in 'abba')
+2
+create table t1 (a varchar(10) character set utf16) engine=heap;
+insert into t1 values ('a'),('A'),('b'),('B');
+select * from t1 where a='a' order by binary a;
+a
+A
+a
+select hex(min(binary a)),count(*) from t1 group by a;
+hex(min(binary a)) count(*)
+0041 2
+0042 2
+drop table t1;
+select char_length('abcd'), octet_length('abcd');
+char_length('abcd') octet_length('abcd')
+4 8
+select char_length(_utf16 0xD800DC00), octet_length(_utf16 0xD800DC00);
+char_length(_utf16 0xD800DC00) octet_length(_utf16 0xD800DC00)
+1 4
+select char_length(_utf16 0xD87FDFFF), octet_length(_utf16 0xD87FDFFF);
+char_length(_utf16 0xD87FDFFF) octet_length(_utf16 0xD87FDFFF)
+1 4
+select left('abcd',2);
+left('abcd',2)
+ab
+select hex(left(_utf16 0xD800DC00D87FDFFF, 1));
+hex(left(_utf16 0xD800DC00D87FDFFF, 1))
+D800DC00
+select hex(right(_utf16 0xD800DC00D87FDFFF, 1));
+hex(right(_utf16 0xD800DC00D87FDFFF, 1))
+D87FDFFF
+create table t1 (a varchar(10) character set utf16);
+insert into t1 values (_utf16 0xD800);
+ERROR HY000: Invalid utf16 character string: 'D800'
+insert into t1 values (_utf16 0xDC00);
+ERROR HY000: Invalid utf16 character string: 'DC00'
+insert into t1 values (_utf16 0xD800D800);
+ERROR HY000: Invalid utf16 character string: 'D800D8'
+insert into t1 values (_utf16 0xD800E800);
+ERROR HY000: Invalid utf16 character string: 'D800E8'
+insert into t1 values (_utf16 0xD8000800);
+ERROR HY000: Invalid utf16 character string: 'D80008'
+insert into t1 values (_utf16 0xD800DC00);
+insert into t1 values (_utf16 0xD800DCFF);
+insert into t1 values (_utf16 0xDBFFDC00);
+insert into t1 values (_utf16 0xDBFFDCFF);
+select hex(a) from t1;
+hex(a)
+D800DC00
+D800DCFF
+DBFFDC00
+DBFFDCFF
+drop table t1;
+create table t1 (s1 varchar(50) character set ucs2);
+insert into t1 values (0xdf84);
+alter table t1 modify column s1 varchar(50) character set utf16;
+Warnings:
+Warning 1366 Incorrect string value: '\xDF\x84' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+003F
+drop table t1;
+create table t1 (s1 varchar(5) character set ucs2, s2 varchar(5) character set utf16);
+insert into t1 (s1) values (0xdf84);
+update t1 set s2 = s1;
+Warnings:
+Warning 1366 Incorrect string value: '\xDF\x84' for column 's2' at row 1
+select hex(s2) from t1;
+hex(s2)
+003F
+drop table t1;
+create table t1 (a char(10)) character set utf16;
+insert into t1 values ('a ');
+select hex(a) from t1;
+hex(a)
+0061
+drop table t1;
+select upper('abcd'), lower('ABCD');
+upper('abcd') lower('ABCD')
+ABCD abcd
+create table t1 (a varchar(10) character set utf16);
+insert into t1 values (123456);
+select a, hex(a) from t1;
+a hex(a)
+123456 003100320033003400350036
+drop table t1;
+select hex(soundex('a'));
+hex(soundex('a'))
+0041003000300030
+create table t1 (a enum ('a','b','c')) character set utf16;
+insert into t1 values ('1');
+select * from t1;
+a
+a
+drop table t1;
+set names latin1;
+select hex(conv(convert('123' using utf16), -10, 16));
+hex(conv(convert('123' using utf16), -10, 16))
+3742
+select hex(conv(convert('123' using utf16), 10, 16));
+hex(conv(convert('123' using utf16), 10, 16))
+3742
+set names latin1;
+set character_set_connection=utf16;
+select 1.1 + '1.2';
+1.1 + '1.2'
+2.3
+select 1.1 + '1.2xxx';
+1.1 + '1.2xxx'
+2.3
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: ''
+select left('aaa','1');
+left('aaa','1')
+a
+create table t1 (a int);
+insert into t1 values ('-1234.1e2');
+insert into t1 values ('-1234.1e2xxxx');
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+insert into t1 values ('-1234.1e2 ');
+select * from t1;
+a
+-123410
+-123410
+-123410
+drop table t1;
+create table t1 (a int);
+insert into t1 values ('1 ');
+insert into t1 values ('1 x');
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+1
+1
+drop table t1;
+create table t1 (a varchar(17000) character set utf16);
+Warnings:
+Note 1246 Converting column 'a' from VARCHAR to TEXT
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` mediumtext CHARACTER SET utf16
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(250) character set utf16 primary key);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(250) CHARACTER SET utf16 NOT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(334) character set utf16 primary key);
+ERROR 42000: Specified key was too long; max key length is 1000 bytes
+create table t1 (a char(1) character set utf16);
+insert into t1 values (0xD800DC00),(0xD800DCFF),(0xDB7FDC00),(0xDB7FDCFF);
+insert into t1 values (0x00C0), (0x00FF),(0xE000), (0xFFFF);
+select hex(a), hex(@a:=convert(a using utf8mb4)), hex(convert(@a using utf16)) from t1;
+hex(a) hex(@a:=convert(a using utf8mb4)) hex(convert(@a using utf16))
+D800DC00 F0908080 D800DC00
+D800DCFF F09083BF D800DCFF
+DB7FDC00 F3AFB080 DB7FDC00
+DB7FDCFF F3AFB3BF DB7FDCFF
+00C0 C380 00C0
+00FF C3BF 00FF
+E000 EE8080 E000
+FFFF EFBFBF FFFF
+drop table t1;
+set collation_connection=utf16_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf16 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf16 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names latin1;
+SET collation_connection=utf16_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',20) AS s1 LIMIT 0;
+SET timestamp=1216359724;
+INSERT INTO t1 VALUES (current_date);
+INSERT INTO t1 VALUES (current_time);
+INSERT INTO t1 VALUES (current_timestamp);
+SELECT s1, hex(s1) FROM t1;
+s1 hex(s1)
+2008-07-18 0032003000300038002D00300037002D00310038
+08:42:04 00300038003A00340032003A00300034
+2008-07-18 08:42:04 0032003000300038002D00300037002D00310038002000300038003A00340032003A00300034
+DROP TABLE t1;
+SET timestamp=0;
+SET NAMES latin1;
+SET collation_connection=utf16_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',2) as s1 LIMIT 0;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(2) CHARACTER SET utf16 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+INSERT INTO t1 VALUES ('ab'),('AE'),('ab'),('AE');
+SELECT * FROM t1 ORDER BY s1;
+s1
+ab
+ab
+AE
+AE
+SET max_sort_length=4;
+SELECT * FROM t1 ORDER BY s1;
+s1
+ab
+ab
+AE
+AE
+DROP TABLE t1;
+SET max_sort_length=DEFAULT;
+SET NAMES latin1;
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_utf16_uca.result b/mysql-test/r/ctype_utf16_uca.result
new file mode 100644
index 00000000000..d83ef2af09e
--- /dev/null
+++ b/mysql-test/r/ctype_utf16_uca.result
@@ -0,0 +1,2373 @@
+DROP TABLE IF EXISTS t1;
+#
+# Start of 5.5 tests
+#
+set names utf8;
+set collation_connection=utf16_unicode_ci;
+select hex('a'), hex('a ');
+hex('a') hex('a ')
+0061 00610020
+select 'a' = 'a', 'a' = 'a ', 'a ' = 'a';
+'a' = 'a' 'a' = 'a ' 'a ' = 'a'
+1 1 1
+select 'a\0' = 'a', 'a\0' < 'a', 'a\0' > 'a';
+'a\0' = 'a' 'a\0' < 'a' 'a\0' > 'a'
+1 0 0
+select 'a' = 'a\0', 'a' < 'a\0', 'a' > 'a\0';
+'a' = 'a\0' 'a' < 'a\0' 'a' > 'a\0'
+1 0 0
+select 'a\0' = 'a ', 'a\0' < 'a ', 'a\0' > 'a ';
+'a\0' = 'a ' 'a\0' < 'a ' 'a\0' > 'a '
+1 0 0
+select 'a ' = 'a\0', 'a ' < 'a\0', 'a ' > 'a\0';
+'a ' = 'a\0' 'a ' < 'a\0' 'a ' > 'a\0'
+1 0 0
+select 'a a' > 'a', 'a \0' < 'a';
+'a a' > 'a' 'a \0' < 'a'
+1 0
+select binary 'a a' > 'a', binary 'a \0' > 'a', binary 'a\0' > 'a';
+binary 'a a' > 'a' binary 'a \0' > 'a' binary 'a\0' > 'a'
+1 1 1
+select 'c' like '\_' as want0;
+want0
+0
+CREATE TABLE t (
+c char(20) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARACTER SET utf16 COLLATE utf16_unicode_ci;
+INSERT INTO t VALUES ('a'),('ab'),('aba');
+ALTER TABLE t ADD INDEX (c);
+SELECT c FROM t WHERE c LIKE 'a%';
+c
+a
+ab
+aba
+DROP TABLE t;
+create table t1 (c1 char(10) character set utf16 collate utf16_bin);
+insert into t1 values ('A'),('a');
+insert into t1 values ('B'),('b');
+insert into t1 values ('C'),('c');
+insert into t1 values ('D'),('d');
+insert into t1 values ('E'),('e');
+insert into t1 values ('F'),('f');
+insert into t1 values ('G'),('g');
+insert into t1 values ('H'),('h');
+insert into t1 values ('I'),('i');
+insert into t1 values ('J'),('j');
+insert into t1 values ('K'),('k');
+insert into t1 values ('L'),('l');
+insert into t1 values ('M'),('m');
+insert into t1 values ('N'),('n');
+insert into t1 values ('O'),('o');
+insert into t1 values ('P'),('p');
+insert into t1 values ('Q'),('q');
+insert into t1 values ('R'),('r');
+insert into t1 values ('S'),('s');
+insert into t1 values ('T'),('t');
+insert into t1 values ('U'),('u');
+insert into t1 values ('V'),('v');
+insert into t1 values ('W'),('w');
+insert into t1 values ('X'),('x');
+insert into t1 values ('Y'),('y');
+insert into t1 values ('Z'),('z');
+insert into t1 values (0x00e0),(0x00c0);
+insert into t1 values (0x00e1),(0x00c1);
+insert into t1 values (0x00e2),(0x00c2);
+insert into t1 values (0x00e3),(0x00c3);
+insert into t1 values (0x00e4),(0x00c4);
+insert into t1 values (0x00e5),(0x00c5);
+insert into t1 values (0x00e6),(0x00c6);
+insert into t1 values (0x00e7),(0x00c7);
+insert into t1 values (0x00e8),(0x00c8);
+insert into t1 values (0x00e9),(0x00c9);
+insert into t1 values (0x00ea),(0x00ca);
+insert into t1 values (0x00eb),(0x00cb);
+insert into t1 values (0x00ec),(0x00cc);
+insert into t1 values (0x00ed),(0x00cd);
+insert into t1 values (0x00ee),(0x00ce);
+insert into t1 values (0x00ef),(0x00cf);
+insert into t1 values (0x00f0),(0x00d0);
+insert into t1 values (0x00f1),(0x00d1);
+insert into t1 values (0x00f2),(0x00d2);
+insert into t1 values (0x00f3),(0x00d3);
+insert into t1 values (0x00f4),(0x00d4);
+insert into t1 values (0x00f5),(0x00d5);
+insert into t1 values (0x00f6),(0x00d6);
+insert into t1 values (0x00f7),(0x00d7);
+insert into t1 values (0x00f8),(0x00d8);
+insert into t1 values (0x00f9),(0x00d9);
+insert into t1 values (0x00fa),(0x00da);
+insert into t1 values (0x00fb),(0x00db);
+insert into t1 values (0x00fc),(0x00dc);
+insert into t1 values (0x00fd),(0x00dd);
+insert into t1 values (0x00fe),(0x00de);
+insert into t1 values (0x00ff),(0x00df);
+insert into t1 values (0x0100),(0x0101),(0x0102),(0x0103);
+insert into t1 values (0x0104),(0x0105),(0x0106),(0x0107);
+insert into t1 values (0x0108),(0x0109),(0x010a),(0x010b);
+insert into t1 values (0x010c),(0x010d),(0x010e),(0x010f);
+insert into t1 values (0x0110),(0x0111),(0x0112),(0x0113);
+insert into t1 values (0x0114),(0x0115),(0x0116),(0x0117);
+insert into t1 values (0x0118),(0x0119),(0x011a),(0x011b);
+insert into t1 values (0x011c),(0x011d),(0x011e),(0x011f);
+insert into t1 values (0x0120),(0x0121),(0x0122),(0x0123);
+insert into t1 values (0x0124),(0x0125),(0x0126),(0x0127);
+insert into t1 values (0x0128),(0x0129),(0x012a),(0x012b);
+insert into t1 values (0x012c),(0x012d),(0x012e),(0x012f);
+insert into t1 values (0x0130),(0x0131),(0x0132),(0x0133);
+insert into t1 values (0x0134),(0x0135),(0x0136),(0x0137);
+insert into t1 values (0x0138),(0x0139),(0x013a),(0x013b);
+insert into t1 values (0x013c),(0x013d),(0x013e),(0x013f);
+insert into t1 values (0x0140),(0x0141),(0x0142),(0x0143);
+insert into t1 values (0x0144),(0x0145),(0x0146),(0x0147);
+insert into t1 values (0x0148),(0x0149),(0x014a),(0x014b);
+insert into t1 values (0x014c),(0x014d),(0x014e),(0x014f);
+insert into t1 values (0x0150),(0x0151),(0x0152),(0x0153);
+insert into t1 values (0x0154),(0x0155),(0x0156),(0x0157);
+insert into t1 values (0x0158),(0x0159),(0x015a),(0x015b);
+insert into t1 values (0x015c),(0x015d),(0x015e),(0x015f);
+insert into t1 values (0x0160),(0x0161),(0x0162),(0x0163);
+insert into t1 values (0x0164),(0x0165),(0x0166),(0x0167);
+insert into t1 values (0x0168),(0x0169),(0x016a),(0x016b);
+insert into t1 values (0x016c),(0x016d),(0x016e),(0x016f);
+insert into t1 values (0x0170),(0x0171),(0x0172),(0x0173);
+insert into t1 values (0x0174),(0x0175),(0x0176),(0x0177);
+insert into t1 values (0x0178),(0x0179),(0x017a),(0x017b);
+insert into t1 values (0x017c),(0x017d),(0x017e),(0x017f);
+insert into t1 values (0x0180),(0x0181),(0x0182),(0x0183);
+insert into t1 values (0x0184),(0x0185),(0x0186),(0x0187);
+insert into t1 values (0x0188),(0x0189),(0x018a),(0x018b);
+insert into t1 values (0x018c),(0x018d),(0x018e),(0x018f);
+insert into t1 values (0x0190),(0x0191),(0x0192),(0x0193);
+insert into t1 values (0x0194),(0x0195),(0x0196),(0x0197);
+insert into t1 values (0x0198),(0x0199),(0x019a),(0x019b);
+insert into t1 values (0x019c),(0x019d),(0x019e),(0x019f);
+insert into t1 values (0x01a0),(0x01a1),(0x01a2),(0x01a3);
+insert into t1 values (0x01a4),(0x01a5),(0x01a6),(0x01a7);
+insert into t1 values (0x01a8),(0x01a9),(0x01aa),(0x01ab);
+insert into t1 values (0x01ac),(0x01ad),(0x01ae),(0x01af);
+insert into t1 values (0x01b0),(0x01b1),(0x01b2),(0x01b3);
+insert into t1 values (0x01b4),(0x01b5),(0x01b6),(0x01b7);
+insert into t1 values (0x01b8),(0x01b9),(0x01ba),(0x01bb);
+insert into t1 values (0x01bc),(0x01bd),(0x01be),(0x01bf);
+insert into t1 values (0x01c0),(0x01c1),(0x01c2),(0x01c3);
+insert into t1 values (0x01c4),(0x01c5),(0x01c6),(0x01c7);
+insert into t1 values (0x01c8),(0x01c9),(0x01ca),(0x01cb);
+insert into t1 values (0x01cc),(0x01cd),(0x01ce),(0x01cf);
+insert into t1 values (0x01d0),(0x01d1),(0x01d2),(0x01d3);
+insert into t1 values (0x01d4),(0x01d5),(0x01d6),(0x01d7);
+insert into t1 values (0x01d8),(0x01d9),(0x01da),(0x01db);
+insert into t1 values (0x01dc),(0x01dd),(0x01de),(0x01df);
+insert into t1 values (0x01e0),(0x01e1),(0x01e2),(0x01e3);
+insert into t1 values (0x01e4),(0x01e5),(0x01e6),(0x01e7);
+insert into t1 values (0x01e8),(0x01e9),(0x01ea),(0x01eb);
+insert into t1 values (0x01ec),(0x01ed),(0x01ee),(0x01ef);
+insert into t1 values (0x01f0),(0x01f1),(0x01f2),(0x01f3);
+insert into t1 values (0x01f4),(0x01f5),(0x01f6),(0x01f7);
+insert into t1 values (0x01f8),(0x01f9),(0x01fa),(0x01fb);
+insert into t1 values (0x01fc),(0x01fd),(0x01fe),(0x01ff);
+insert into t1 values ('AA'),('Aa'),('aa'),('aA');
+insert into t1 values ('CH'),('Ch'),('ch'),('cH');
+insert into t1 values ('DZ'),('Dz'),('dz'),('dZ');
+insert into t1 values ('IJ'),('Ij'),('ij'),('iJ');
+insert into t1 values ('LJ'),('Lj'),('lj'),('lJ');
+insert into t1 values ('LL'),('Ll'),('ll'),('lL');
+insert into t1 values ('NJ'),('Nj'),('nj'),('nJ');
+insert into t1 values ('OE'),('Oe'),('oe'),('oE');
+insert into t1 values ('SS'),('Ss'),('ss'),('sS');
+insert into t1 values ('RR'),('Rr'),('rr'),('rR');
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_unicode_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_icelandic_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÂÃàâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ãá
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+Ãð
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+EeÈÊËèêëĒēĔĕĖėĘęĚě
+Éé
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÌÎÃìîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Ãí
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÔÕòôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Óó
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÛÜùûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Úú
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÿŶŷŸ
+Ãý
+Ƴƴ
+ZzŹźŻżŽž
+Þþ
+ÄÆäæ
+ÖØöø
+Ã…Ã¥
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_latvian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+CHChcHch
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġǦǧǴǵ
+Ģģ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Yy
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkǨǩ
+Ķķ
+Ƙƙ
+LlĹ弾
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+Ļļ
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŇňǸǹ
+NJNjnJnjNJNjnj
+Ņņ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŘř
+RRRrrRrr
+Å–Å—
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+ÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_romanian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÃÄÅàáãäåĀÄÄ„Ä…ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ăă
+Ââ
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃìíïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Îî
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅÅ Å¡Å¿
+SSSssSssß
+Şş
+Æ©
+ƪ
+TtŤť
+ƾ
+Ţţ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_slovenian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+CHChcHch
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_polish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂăÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ä„Ä…
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĈĉĊċČÄ
+CHChcHch
+Ćć
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĚě
+Ęę
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ńń
+Æž
+ÅŠÅ‹
+OoÒÔÕÖòôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Óó
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsÅœÅŞşŠšſ
+SSSssSssß
+Śś
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŽž
+Źź
+Żż
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_estonian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÅàáâãåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdz
+DŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔòóôŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Zz
+Žž
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Õõ
+Ää
+Öö
+Üü
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ŹźŻż
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_spanish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ññ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_swedish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃàáâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃœÃüýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ã…Ã¥
+ÄÆäæ
+ÖØöø
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_turkish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcĆćĈĉĊċČÄ
+CHChcHch
+Çç
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĠġĢģǦǧǴǵ
+Ğğ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+Iı
+IJIj
+ƕǶ
+Ħħ
+iÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+iJijIJij
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Öö
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅÅ Å¡Å¿
+SSSssSssß
+Şş
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Üü
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_czech_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+CHChch
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗ
+RRRrrRrr
+Řř
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_danish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃàáâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+aA
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃœÃüýÿŰűŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+ÄÆäæ
+ÖØöøÅÅ‘
+AAAaaaÃ…Ã¥
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_lithuanian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CCHChcchÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IYiyÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+ÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_slovak_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÅàáâãåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ää
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+CHChch
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÕÖòóõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ôô
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_spanish2_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+cH
+CHChch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+lL
+LLLlll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ññ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_roman_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IJijÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJij
+IJij
+ı
+Æ—
+Æ–
+Ĵĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJlj
+LJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnj
+NJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+ÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+UVuv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_esperanto_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĊċČÄ
+CHChcHch
+Ĉĉ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgĞğĠġĢģǦǧǴǵ
+ÄœÄ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+Hh
+Ĥĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjÇ°
+Ĵĵ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŞşŠšſ
+SSSssSssß
+ÅœÅ
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ŭŭ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_hungarian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ÖöÅÅ‘
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŲųƯưǓǔǕǖǗǘǙǚǛǜ
+ÜüŰű
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+drop table t1;
+SET NAMES utf8;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_general_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_general_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (0x039C03C903B4);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_general_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_unicode_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (0x039C03C903B4);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_unicode_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_unicode_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (0x039C03C903B4);
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_unicode_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+SET NAMES utf8;
+SET @test_character_set='utf16';
+SET @test_collation='utf16_swedish_ci';
+SET @safe_character_set_server= @@character_set_server;
+SET @safe_collation_server= @@collation_server;
+SET @safe_character_set_client= @@character_set_client;
+SET @safe_character_set_results= @@character_set_results;
+SET character_set_server= @test_character_set;
+SET collation_server= @test_collation;
+CREATE DATABASE d1;
+USE d1;
+CREATE TABLE t1 (c CHAR(10), KEY(c));
+SHOW FULL COLUMNS FROM t1;
+Field Type Collation Null Key Default Extra Privileges Comment
+c char(10) utf16_swedish_ci YES MUL NULL
+INSERT INTO t1 VALUES ('aaa'),('aaaa'),('aaaaa');
+SELECT c as want3results FROM t1 WHERE c LIKE 'aaa%';
+want3results
+aaa
+aaaa
+aaaaa
+DROP TABLE t1;
+CREATE TABLE t1 (c1 varchar(15), KEY c1 (c1(2)));
+SHOW FULL COLUMNS FROM t1;
+Field Type Collation Null Key Default Extra Privileges Comment
+c1 varchar(15) utf16_swedish_ci YES MUL NULL
+INSERT INTO t1 VALUES ('location'),('loberge'),('lotre'),('boabab');
+SELECT c1 as want3results from t1 where c1 like 'l%';
+want3results
+location
+loberge
+lotre
+SELECT c1 as want3results from t1 where c1 like 'lo%';
+want3results
+location
+loberge
+lotre
+SELECT c1 as want1result from t1 where c1 like 'loc%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'loca%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locat%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locati%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locatio%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'location%';
+want1result
+location
+DROP TABLE t1;
+create table t1 (a set('a') not null);
+insert into t1 values (),();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
+select cast(a as char(1)) from t1;
+cast(a as char(1))
+
+
+select a sounds like a from t1;
+a sounds like a
+1
+1
+select 1 from t1 order by cast(a as char(1));
+1
+1
+1
+drop table t1;
+set names utf8;
+create table t1 (
+name varchar(10),
+level smallint unsigned);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `name` varchar(10) COLLATE utf16_swedish_ci DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf16 COLLATE=utf16_swedish_ci
+insert into t1 values ('string',1);
+select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
+concat(name,space(level)) concat(name, repeat(' ',level))
+string string
+drop table t1;
+DROP DATABASE d1;
+USE test;
+SET character_set_server= @safe_character_set_server;
+SET collation_server= @safe_collation_server;
+SET character_set_client= @safe_character_set_client;
+SET character_set_results= @safe_character_set_results;
+SET collation_connection='utf16_unicode_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf16_unicode_ci 00610009
+utf16_unicode_ci 0061
+utf16_unicode_ci 00610020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf16_unicode_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+End of 4.1 tests
+CREATE TABLE t1 (id int, a varchar(30) character set utf16);
+INSERT INTO t1 VALUES (1, 0x01310069), (2, 0x01310131);
+INSERT INTO t1 VALUES (3, 0x00690069), (4, 0x01300049);
+INSERT INTO t1 VALUES (5, 0x01300130), (6, 0x00490049);
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+a la l ll u lu
+ıi 4 ıi 4 II 4
+ıı 4 ıı 4 II 4
+ii 4 ii 4 II 4
+Ä°I 4 ii 4 Ä°I 4
+Ä°Ä° 4 ii 4 Ä°Ä° 4
+II 4 ii 4 II 4
+ALTER TABLE t1 MODIFY a VARCHAR(30) character set utf16 collate utf16_turkish_ci;
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+a la l ll u lu
+ıi 4 ıi 4 Iİ 4
+ıı 4 ıı 4 II 4
+ii 4 ii 4 Ä°Ä° 4
+İI 4 iı 4 İI 4
+Ä°Ä° 4 ii 4 Ä°Ä° 4
+II 4 ıı 4 II 4
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 text character set utf16 collate utf16_polish_ci NOT NULL
+) ENGINE=MyISAM;
+insert into t1 values (''),('a');
+SELECT COUNT(*), c1 FROM t1 GROUP BY c1;
+COUNT(*) c1
+1
+1 a
+DROP TABLE IF EXISTS t1;
+set collation_connection=utf16_unicode_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf16 COLLATE utf16_unicode_ci DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf16 COLLATE utf16_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_utf32.result b/mysql-test/r/ctype_utf32.result
new file mode 100644
index 00000000000..f0f10be9743
--- /dev/null
+++ b/mysql-test/r/ctype_utf32.result
@@ -0,0 +1,1052 @@
+DROP TABLE IF EXISTS t1;
+#
+# Start of 5.5 tests
+#
+SET NAMES latin1;
+SET character_set_connection=utf32;
+select hex('a'), hex('a ');
+hex('a') hex('a ')
+00000061 0000006100000020
+select 'a' = 'a', 'a' = 'a ', 'a ' = 'a';
+'a' = 'a' 'a' = 'a ' 'a ' = 'a'
+1 1 1
+select 'a\0' = 'a', 'a\0' < 'a', 'a\0' > 'a';
+'a\0' = 'a' 'a\0' < 'a' 'a\0' > 'a'
+0 1 0
+select 'a' = 'a\0', 'a' < 'a\0', 'a' > 'a\0';
+'a' = 'a\0' 'a' < 'a\0' 'a' > 'a\0'
+0 0 1
+select 'a\0' = 'a ', 'a\0' < 'a ', 'a\0' > 'a ';
+'a\0' = 'a ' 'a\0' < 'a ' 'a\0' > 'a '
+0 1 0
+select 'a ' = 'a\0', 'a ' < 'a\0', 'a ' > 'a\0';
+'a ' = 'a\0' 'a ' < 'a\0' 'a ' > 'a\0'
+0 0 1
+select 'a a' > 'a', 'a \0' < 'a';
+'a a' > 'a' 'a \0' < 'a'
+1 1
+select binary 'a a' > 'a', binary 'a \0' > 'a', binary 'a\0' > 'a';
+binary 'a a' > 'a' binary 'a \0' > 'a' binary 'a\0' > 'a'
+1 1 1
+select hex(_utf32 0x44);
+hex(_utf32 0x44)
+00000044
+select hex(_utf32 0x3344);
+hex(_utf32 0x3344)
+00003344
+select hex(_utf32 0x103344);
+hex(_utf32 0x103344)
+00103344
+select hex(_utf32 X'44');
+hex(_utf32 X'44')
+00000044
+select hex(_utf32 X'3344');
+hex(_utf32 X'3344')
+00003344
+select hex(_utf32 X'103344');
+hex(_utf32 X'103344')
+00103344
+CREATE TABLE t1 (word VARCHAR(64), word2 CHAR(64)) CHARACTER SET utf32;
+INSERT INTO t1 VALUES (_koi8r 0xF2, _koi8r 0xF2), (X'2004',X'2004');
+SELECT hex(word) FROM t1 ORDER BY word;
+hex(word)
+00000420
+00002004
+SELECT hex(word2) FROM t1 ORDER BY word2;
+hex(word2)
+00000420
+00002004
+DELETE FROM t1;
+INSERT INTO t1 VALUES
+(X'000004200000002000000020',X'000004200000002000000020'),
+(X'000020040000002000000020',X'000020040000002000000020');
+SELECT hex(word) FROM t1 ORDER BY word;
+hex(word)
+000004200000002000000020
+000020040000002000000020
+SELECT hex(word2) FROM t1 ORDER BY word2;
+hex(word2)
+00000420
+00002004
+DROP TABLE t1;
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'0421'));
+hex(LPAD(_utf32 X'0420',10,_utf32 X'0421'))
+00000421000004210000042100000421000004210000042100000421000004210000042100000420
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'));
+hex(LPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'))
+00000421000004220000042100000422000004210000042200000421000004220000042100000420
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'));
+hex(LPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'))
+00000421000004220000042300000421000004220000042300000421000004220000042300000420
+SELECT hex(LPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'));
+hex(LPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'))
+00000420000004210000042200000423000004240000042500000426000004270000042800000429
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'0421'));
+hex(RPAD(_utf32 X'0420',10,_utf32 X'0421'))
+00000420000004210000042100000421000004210000042100000421000004210000042100000421
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'));
+hex(RPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'))
+00000420000004210000042200000421000004220000042100000422000004210000042200000421
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'));
+hex(RPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'))
+00000420000004210000042200000423000004210000042200000423000004210000042200000423
+SELECT hex(RPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'));
+hex(RPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'))
+00000420000004210000042200000423000004240000042500000426000004270000042800000429
+CREATE TABLE t1 SELECT
+LPAD(_utf32 X'0420',10,_utf32 X'0421') l,
+RPAD(_utf32 X'0420',10,_utf32 X'0421') r;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `l` varchar(10) CHARACTER SET utf32 NOT NULL DEFAULT '',
+ `r` varchar(10) CHARACTER SET utf32 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select hex(l), hex(r) from t1;
+hex(l) hex(r)
+00000421000004210000042100000421000004210000042100000421000004210000042100000420 00000420000004210000042100000421000004210000042100000421000004210000042100000421
+DROP TABLE t1;
+create table t1 (f1 char(30));
+insert into t1 values ("103000"), ("22720000"), ("3401200"), ("78000");
+select lpad(f1, 12, "-o-/") from t1;
+lpad(f1, 12, "-o-/")
+-o-/-o103000
+-o-/22720000
+-o-/-3401200
+-o-/-o-78000
+drop table t1;
+SET NAMES latin1;
+SET character_set_connection=utf32;
+select @@collation_connection;
+@@collation_connection
+utf32_general_ci
+create table t1 as select repeat(' ',10) as a union select null;
+alter table t1 add key(a);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(10) CHARACTER SET utf32 DEFAULT NULL,
+ KEY `a` (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+explain select * from t1 where a like 'abc%';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 43 NULL 1 Using where; Using index
+explain select * from t1 where a like concat('abc','%');
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 43 NULL 1 Using where; Using index
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+select 'AA' like 'AA';
+'AA' like 'AA'
+1
+select 'AA' like 'A%A';
+'AA' like 'A%A'
+1
+select 'AA' like 'A%%A';
+'AA' like 'A%%A'
+1
+select 'AA' like 'AA%';
+'AA' like 'AA%'
+1
+select 'AA' like '%AA%';
+'AA' like '%AA%'
+1
+select 'AA' like '%A';
+'AA' like '%A'
+1
+select 'AA' like '%AA';
+'AA' like '%AA'
+1
+select 'AA' like 'A%A%';
+'AA' like 'A%A%'
+1
+select 'AA' like '_%_%';
+'AA' like '_%_%'
+1
+select 'AA' like '%A%A';
+'AA' like '%A%A'
+1
+select 'AAA'like 'A%A%A';
+'AAA'like 'A%A%A'
+1
+select 'AZ' like 'AZ';
+'AZ' like 'AZ'
+1
+select 'AZ' like 'A%Z';
+'AZ' like 'A%Z'
+1
+select 'AZ' like 'A%%Z';
+'AZ' like 'A%%Z'
+1
+select 'AZ' like 'AZ%';
+'AZ' like 'AZ%'
+1
+select 'AZ' like '%AZ%';
+'AZ' like '%AZ%'
+1
+select 'AZ' like '%Z';
+'AZ' like '%Z'
+1
+select 'AZ' like '%AZ';
+'AZ' like '%AZ'
+1
+select 'AZ' like 'A%Z%';
+'AZ' like 'A%Z%'
+1
+select 'AZ' like '_%_%';
+'AZ' like '_%_%'
+1
+select 'AZ' like '%A%Z';
+'AZ' like '%A%Z'
+1
+select 'AZ' like 'A_';
+'AZ' like 'A_'
+1
+select 'AZ' like '_Z';
+'AZ' like '_Z'
+1
+select 'AMZ'like 'A%M%Z';
+'AMZ'like 'A%M%Z'
+1
+SET NAMES utf8;
+SET character_set_connection=utf32;
+CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf32);
+INSERT INTO t1 VALUES ('фыва'),('Фыва'),('фЫва'),('фыВа'),('фывÐ'),('ФЫВÐ');
+INSERT INTO t1 VALUES ('фывапролдж'),('Фывапролдж'),('фЫвапролдж'),('фыВапролдж');
+INSERT INTO t1 VALUES ('фывÐпролдж'),('фываПролдж'),('фывапРолдж'),('фывапрОлдж');
+INSERT INTO t1 VALUES ('фывапроЛдж'),('фывапролДж'),('фывапролдЖ'),('ФЫВÐПРОЛДЖ');
+SELECT * FROM t1 WHERE a LIKE '%фЫва%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE '%фЫв%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' ORDER BY BINARY a;
+a
+ФЫВÐ
+ФЫВÐПРОЛДЖ
+Фыва
+Фывапролдж
+фЫва
+фЫвапролдж
+фыВа
+фыВапролдж
+фывÐ
+фывÐпролдж
+фыва
+фываПролдж
+фывапРолдж
+фывапрОлдж
+фывапроЛдж
+фывапролДж
+фывапролдЖ
+фывапролдж
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' COLLATE utf32_bin ORDER BY BINARY a;
+a
+фЫва
+фЫвапролдж
+DROP TABLE t1;
+CREATE TABLE t1 (word varchar(64) NOT NULL, PRIMARY KEY (word))
+ENGINE=MyISAM CHARACTER SET utf32;
+INSERT INTO t1 (word) VALUES ("cat");
+SELECT * FROM t1 WHERE word LIKE "c%";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE "ca_";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE "cat";
+word
+cat
+SELECT * FROM t1 WHERE word LIKE _utf32 x'0000006300000025';
+word
+cat
+SELECT * FROM t1 WHERE word LIKE _utf32 x'00000063000000610000005F';
+word
+cat
+DROP TABLE t1;
+select insert(_utf32 0x000000610000006200000063,10,2,_utf32 0x000000640000006500000066);
+insert(_utf32 0x000000610000006200000063,10,2,_utf32 0x000000640000006500000066)
+abc
+select insert(_utf32 0x000000610000006200000063,1,2,_utf32 0x000000640000006500000066);
+insert(_utf32 0x000000610000006200000063,1,2,_utf32 0x000000640000006500000066)
+defc
+SET NAMES latin1;
+CREATE TABLE t1 (
+word VARCHAR(64),
+bar INT(11) default 0,
+PRIMARY KEY (word))
+ENGINE=MyISAM
+CHARSET utf32
+COLLATE utf32_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT * FROM t1 ORDER BY word;
+word bar
+a 0
+aar 0
+aardvar 0
+aardvara 0
+aardvark 0
+aardvarz 0
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 258 NULL 6 Using index
+SELECT word FROM t1 ORDER by word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+CREATE TABLE t1 (
+word VARCHAR(64) ,
+PRIMARY KEY (word))
+ENGINE=MyISAM
+CHARSET utf32
+COLLATE utf32_general_ci;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY WORD;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 258 NULL 6 Using index
+SELECT * FROM t1 ORDER BY word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+CREATE TABLE t1 (
+word TEXT,
+bar INT(11) AUTO_INCREMENT,
+PRIMARY KEY (bar))
+ENGINE=MyISAM
+CHARSET utf32
+COLLATE utf32_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a" );
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT * FROM t1 ORDER BY word;
+word bar
+a 2
+aar 1
+aardvar 3
+aardvara 5
+aardvark 4
+aardvarz 6
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 6 Using filesort
+SELECT word FROM t1 ORDER BY word;
+word
+a
+aar
+aardvar
+aardvara
+aardvark
+aardvarz
+DROP TABLE t1;
+SELECT hex(cast(0xAA as char character set utf32));
+hex(cast(0xAA as char character set utf32))
+000000AA
+SELECT hex(convert(0xAA using utf32));
+hex(convert(0xAA using utf32))
+000000AA
+CREATE TABLE t1 (a char(10) character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+00000001
+00000011
+00000111
+00001111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a varchar(10) character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+00000001
+00000011
+00000111
+00001111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a text character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+00000001
+00000011
+00000111
+00001111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a mediumtext character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+00000001
+00000011
+00000111
+00001111
+00011111
+DROP TABLE t1;
+CREATE TABLE t1 (a longtext character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+HEX(a)
+00000001
+00000011
+00000111
+00001111
+00011111
+DROP TABLE t1;
+create table t1(a char(1)) default charset utf32;
+insert into t1 values ('a'),('b'),('c');
+alter table t1 modify a char(5);
+select a, hex(a) from t1;
+a hex(a)
+a 00000061
+b 00000062
+c 00000063
+drop table t1;
+set @ivar= 1234;
+set @str1 = 'select ?';
+set @str2 = convert(@str1 using utf32);
+prepare stmt1 from @str2;
+execute stmt1 using @ivar;
+?
+1234
+set names utf8;
+create table t1 (a enum('x','y','z') character set utf32);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('x','y','z') CHARACTER SET utf32 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 00000078
+y 00000079
+z 0000007A
+alter table t1 change a a enum('x','y','z','d','e','ä','ö','ü') character set utf32;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('x','y','z','d','e','ä','ö','ü') CHARACTER SET utf32 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('D');
+insert into t1 values ('E ');
+insert into t1 values ('ä');
+insert into t1 values ('ö');
+insert into t1 values ('ü');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 00000078
+y 00000079
+z 0000007A
+d 00000064
+e 00000065
+ä 000000E4
+ö 000000F6
+ü 000000FC
+drop table t1;
+create table t1 (a set ('x','y','z','ä','ö','ü') character set utf32);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` set('x','y','z','ä','ö','ü') CHARACTER SET utf32 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+insert into t1 values ('x,y');
+insert into t1 values ('x,y,z,ä,ö,ü');
+select a, hex(a) from t1 order by a;
+a hex(a)
+x 00000078
+y 00000079
+x,y 000000780000002C00000079
+z 0000007A
+x,y,z,ä,ö,ü 000000780000002C000000790000002C0000007A0000002C000000E40000002C000000F60000002C000000FC
+drop table t1;
+create table t1(a enum('a','b','c')) default character set utf32;
+insert into t1 values('a'),('b'),('c');
+alter table t1 add b char(1);
+show warnings;
+Level Code Message
+select * from t1 order by a;
+a b
+a NULL
+b NULL
+c NULL
+drop table t1;
+SET NAMES latin1;
+SET collation_connection='utf32_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf32_general_ci 0000006100000009
+utf32_general_ci 00000061
+utf32_general_ci 0000006100000020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf32_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+SET NAMES latin1;
+SET collation_connection='utf32_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf32_bin 0000006100000009
+utf32_bin 00000061
+utf32_bin 0000006100000020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf32_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+select hex(substr(_utf32 0x000000e4000000e500000068,1));
+hex(substr(_utf32 0x000000e4000000e500000068,1))
+000000E4000000E500000068
+select hex(substr(_utf32 0x000000e4000000e500000068,2));
+hex(substr(_utf32 0x000000e4000000e500000068,2))
+000000E500000068
+select hex(substr(_utf32 0x000000e4000000e500000068,3));
+hex(substr(_utf32 0x000000e4000000e500000068,3))
+00000068
+select hex(substr(_utf32 0x000000e4000000e500000068,-1));
+hex(substr(_utf32 0x000000e4000000e500000068,-1))
+00000068
+select hex(substr(_utf32 0x000000e4000000e500000068,-2));
+hex(substr(_utf32 0x000000e4000000e500000068,-2))
+000000E500000068
+select hex(substr(_utf32 0x000000e4000000e500000068,-3));
+hex(substr(_utf32 0x000000e4000000e500000068,-3))
+000000E4000000E500000068
+CREATE TABLE t1 (
+a varchar(250) NOT NULL default '',
+KEY a (a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf32 COLLATE utf32_general_ci;
+insert into t1 values (0x803d);
+insert into t1 values (0x005b);
+select hex(a) from t1;
+hex(a)
+0000005B
+0000803D
+drop table t1;
+create table t1 (utext varchar(20) character set utf32);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+utext
+lily
+river
+execute stmt using @param1;
+utext
+lily
+river
+select utext from t1 where utext like '%%';
+utext
+lily
+river
+drop table t1;
+deallocate prepare stmt;
+create table t1 (
+a char(10) character set utf32 not null,
+index a (a)
+) engine=myisam;
+insert into t1 values (repeat(0x0000201f, 10));
+insert into t1 values (repeat(0x00002020, 10));
+insert into t1 values (repeat(0x00002021, 10));
+explain select hex(a) from t1 order by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL a 40 NULL 3 Using index
+select hex(a) from t1 order by a;
+hex(a)
+0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F
+00002020000020200000202000002020000020200000202000002020000020200000202000002020
+00002021000020210000202100002021000020210000202100002021000020210000202100002021
+alter table t1 drop index a;
+select hex(a) from t1 order by a;
+hex(a)
+0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F0000201F
+00002020000020200000202000002020000020200000202000002020000020200000202000002020
+00002021000020210000202100002021000020210000202100002021000020210000202100002021
+drop table t1;
+CREATE TABLE t1 (
+status enum('active','passive') character set utf32 collate utf32_general_ci
+NOT NULL default 'passive'
+);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `status` enum('active','passive') CHARACTER SET utf32 NOT NULL DEFAULT 'passive'
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+ALTER TABLE t1 ADD a int NOT NULL AFTER status;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `status` enum('active','passive') CHARACTER SET utf32 NOT NULL DEFAULT 'passive',
+ `a` int(11) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE t1;
+End of 4.1 tests
+CREATE TABLE t1 (a varchar(64) character set utf32, b decimal(10,3));
+INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
+update t1 set b=a;
+SELECT *, hex(a) FROM t1;
+a b hex(a)
+1.1 1.100 000000310000002E00000031
+2.1 2.100 000000320000002E00000031
+DROP TABLE t1;
+create table t1 (utext varchar(20) character set utf32);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+utext
+lily
+river
+execute stmt using @param1;
+utext
+lily
+river
+select utext from t1 where utext like '%%';
+utext
+lily
+river
+drop table t1;
+deallocate prepare stmt;
+set names latin1;
+set character_set_connection=utf32;
+select soundex(''),soundex('he'),soundex('hello all folks'),soundex('#3556 in bugdb');
+soundex('') soundex('he') soundex('hello all folks') soundex('#3556 in bugdb')
+ H000 H4142 I51231
+select hex(soundex('')),hex(soundex('he')),hex(soundex('hello all folks')),hex(soundex('#3556 in bugdb'));
+hex(soundex('')) hex(soundex('he')) hex(soundex('hello all folks')) hex(soundex('#3556 in bugdb'))
+ 00000048000000300000003000000030 0000004800000034000000310000003400000032 000000490000003500000031000000320000003300000031
+select 'mood' sounds like 'mud';
+'mood' sounds like 'mud'
+1
+select hex(soundex(_utf32 0x000004100000041100000412));
+hex(soundex(_utf32 0x000004100000041100000412))
+00000410000000300000003000000030
+select hex(soundex(_utf32 0x000000BF000000C0));
+hex(soundex(_utf32 0x000000BF000000C0))
+000000C0000000300000003000000030
+set names latin1;
+create table t1(a blob, b text charset utf32);
+select data_type, character_octet_length, character_maximum_length
+from information_schema.columns where table_name='t1';
+data_type character_octet_length character_maximum_length
+blob 65535 65535
+text 65535 16383
+drop table t1;
+set names latin1;
+set collation_connection=utf32_general_ci;
+select position('bb' in 'abba');
+position('bb' in 'abba')
+2
+create table t1 (a varchar(10) character set utf32) engine=heap;
+insert into t1 values ('a'),('A'),('b'),('B');
+select * from t1 where a='a' order by binary a;
+a
+A
+a
+select hex(min(binary a)),count(*) from t1 group by a;
+hex(min(binary a)) count(*)
+00000041 2
+00000042 2
+drop table t1;
+select char_length('abcd'), octet_length('abcd');
+char_length('abcd') octet_length('abcd')
+4 16
+select left('abcd',2);
+left('abcd',2)
+ab
+create table t1 (a varchar(10) character set utf32);
+insert into t1 values (_utf32 0x0010FFFF);
+insert into t1 values (_utf32 0x00110000);
+ERROR HY000: Invalid utf32 character string: '001100'
+insert into t1 values (_utf32 0x00110101);
+ERROR HY000: Invalid utf32 character string: '001101'
+insert into t1 values (_utf32 0x01000101);
+ERROR HY000: Invalid utf32 character string: '010001'
+insert into t1 values (_utf32 0x11000101);
+ERROR HY000: Invalid utf32 character string: '110001'
+select hex(a) from t1;
+hex(a)
+0010FFFF
+drop table t1;
+create table t1 (utf32 varchar(2) character set utf32);
+Wrong character with pad
+insert into t1 values (0x110000);
+Warnings:
+Warning 1366 Incorrect string value: '\x11\x00\x00' for column 'utf32' at row 1
+Wrong chsaracter without pad
+insert into t1 values (0x00110000);
+Warnings:
+Warning 1366 Incorrect string value: '\x00\x11\x00\x00' for column 'utf32' at row 1
+Wrong character with pad followed by another wrong character
+insert into t1 values (0x11000000110000);
+Warnings:
+Warning 1366 Incorrect string value: '\x11\x00\x00\x00\x11\x00...' for column 'utf32' at row 1
+Good character with pad followed by bad character
+insert into t1 values (0x10000000110000);
+Warnings:
+Warning 1366 Incorrect string value: '\x00\x11\x00\x00' for column 'utf32' at row 1
+Good character without pad followed by bad character
+insert into t1 values (0x0010000000110000);
+Warnings:
+Warning 1366 Incorrect string value: '\x00\x11\x00\x00' for column 'utf32' at row 1
+Wrong character with the second byte higher than 0x10
+insert into t1 values (0x00800037);
+Warnings:
+Warning 1366 Incorrect string value: '\x00\x80\x007' for column 'utf32' at row 1
+Wrong character with pad with the second byte higher than 0x10
+insert into t1 values (0x00800037);
+Warnings:
+Warning 1366 Incorrect string value: '\x00\x80\x007' for column 'utf32' at row 1
+drop table t1;
+select _utf32'a' collate utf32_general_ci = 0xfffd;
+_utf32'a' collate utf32_general_ci = 0xfffd
+0
+select hex(concat(_utf32 0x0410 collate utf32_general_ci, 0x61));
+hex(concat(_utf32 0x0410 collate utf32_general_ci, 0x61))
+0000041000000061
+create table t1 (s1 varchar(5) character set utf32);
+insert into t1 values (0xfffd);
+select case when s1 = 0xfffd then 1 else 0 end from t1;
+case when s1 = 0xfffd then 1 else 0 end
+1
+select hex(s1) from t1 where s1 = 0xfffd;
+hex(s1)
+0000FFFD
+drop table t1;
+create table t1 (a char(10)) character set utf32;
+insert into t1 values ('a ');
+select hex(a) from t1;
+hex(a)
+00000061
+drop table t1;
+select upper('abcd'), lower('ABCD');
+upper('abcd') lower('ABCD')
+ABCD abcd
+create table t1 (a varchar(10) character set utf32);
+insert into t1 values (123456);
+select a, hex(a) from t1;
+a hex(a)
+123456 000000310000003200000033000000340000003500000036
+drop table t1;
+select hex(soundex('a'));
+hex(soundex('a'))
+00000041000000300000003000000030
+create table t1 (a enum ('a','b','c')) character set utf32;
+insert into t1 values ('1');
+select * from t1;
+a
+a
+drop table t1;
+set names latin1;
+select hex(conv(convert('123' using utf32), -10, 16));
+hex(conv(convert('123' using utf32), -10, 16))
+3742
+select hex(conv(convert('123' using utf32), 10, 16));
+hex(conv(convert('123' using utf32), 10, 16))
+3742
+set names latin1;
+set character_set_connection=utf32;
+select 1.1 + '1.2';
+1.1 + '1.2'
+2.3
+select 1.1 + '1.2xxx';
+1.1 + '1.2xxx'
+2.3
+Warnings:
+Warning 1292 Truncated incorrect DOUBLE value: ''
+select left('aaa','1');
+left('aaa','1')
+a
+create table t1 (a int);
+insert into t1 values ('-1234.1e2');
+insert into t1 values ('-1234.1e2xxxx');
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+insert into t1 values ('-1234.1e2 ');
+select * from t1;
+a
+-123410
+-123410
+-123410
+drop table t1;
+create table t1 (a int);
+insert into t1 values ('1 ');
+insert into t1 values ('1 x');
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+1
+1
+drop table t1;
+create table t1 (a varchar(17000) character set utf32);
+Warnings:
+Note 1246 Converting column 'a' from VARCHAR to TEXT
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` mediumtext CHARACTER SET utf32
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(250) character set utf32 primary key);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` varchar(250) CHARACTER SET utf32 NOT NULL,
+ PRIMARY KEY (`a`)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t1;
+create table t1 (a varchar(334) character set utf32 primary key);
+ERROR 42000: Specified key was too long; max key length is 1000 bytes
+create table t1 (a varchar(333) character set utf32, key(a));
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+insert into t1 values (repeat('a',333)), (repeat('b',333));
+flush tables;
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+SET collation_connection=utf32_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',20) AS s1 LIMIT 0;
+SET timestamp=1216359724;
+INSERT INTO t1 VALUES (current_date);
+INSERT INTO t1 VALUES (current_time);
+INSERT INTO t1 VALUES (current_timestamp);
+SELECT s1, hex(s1) FROM t1;
+s1 hex(s1)
+2008-07-18 000000320000003000000030000000380000002D00000030000000370000002D0000003100000038
+08:42:04 00000030000000380000003A00000034000000320000003A0000003000000034
+2008-07-18 08:42:04 000000320000003000000030000000380000002D00000030000000370000002D00000031000000380000002000000030000000380000003A00000034000000320000003A0000003000000034
+DROP TABLE t1;
+SET timestamp=0;
+SET NAMES latin1;
+set collation_connection=utf32_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf32 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf32 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names latin1;
+select hex(char(0x01 using utf32));
+hex(char(0x01 using utf32))
+00000001
+select hex(char(0x0102 using utf32));
+hex(char(0x0102 using utf32))
+00000102
+select hex(char(0x010203 using utf32));
+hex(char(0x010203 using utf32))
+00010203
+select hex(char(0x01020304 using utf32));
+hex(char(0x01020304 using utf32))
+
+Warnings:
+Warning 1300 Invalid utf32 character string: '010203'
+create table t1 (s1 varchar(1) character set utf32, s2 text character set utf32);
+create index i on t1 (s1);
+insert into t1 values (char(256 using utf32), char(256 using utf32));
+select hex(s1), hex(s2) from t1;
+hex(s1) hex(s2)
+00000100 00000100
+drop table t1;
+SET collation_connection=utf32_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',2) as s1 LIMIT 0;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(2) CHARACTER SET utf32 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+INSERT INTO t1 VALUES ('ab'),('AE'),('ab'),('AE');
+SELECT * FROM t1 ORDER BY s1;
+s1
+ab
+ab
+AE
+AE
+SET max_sort_length=4;
+SELECT * FROM t1 ORDER BY s1;
+s1
+ab
+ab
+AE
+AE
+DROP TABLE t1;
+SET max_sort_length=DEFAULT;
+SET NAMES latin1;
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_utf32_uca.result b/mysql-test/r/ctype_utf32_uca.result
new file mode 100644
index 00000000000..5006009fc9c
--- /dev/null
+++ b/mysql-test/r/ctype_utf32_uca.result
@@ -0,0 +1,2373 @@
+DROP TABLE IF EXISTS t1;
+#
+# Start of 5.5 tests
+#
+set names utf8;
+set collation_connection=utf32_unicode_ci;
+select hex('a'), hex('a ');
+hex('a') hex('a ')
+00000061 0000006100000020
+select 'a' = 'a', 'a' = 'a ', 'a ' = 'a';
+'a' = 'a' 'a' = 'a ' 'a ' = 'a'
+1 1 1
+select 'a\0' = 'a', 'a\0' < 'a', 'a\0' > 'a';
+'a\0' = 'a' 'a\0' < 'a' 'a\0' > 'a'
+1 0 0
+select 'a' = 'a\0', 'a' < 'a\0', 'a' > 'a\0';
+'a' = 'a\0' 'a' < 'a\0' 'a' > 'a\0'
+1 0 0
+select 'a\0' = 'a ', 'a\0' < 'a ', 'a\0' > 'a ';
+'a\0' = 'a ' 'a\0' < 'a ' 'a\0' > 'a '
+1 0 0
+select 'a ' = 'a\0', 'a ' < 'a\0', 'a ' > 'a\0';
+'a ' = 'a\0' 'a ' < 'a\0' 'a ' > 'a\0'
+1 0 0
+select 'a a' > 'a', 'a \0' < 'a';
+'a a' > 'a' 'a \0' < 'a'
+1 0
+select binary 'a a' > 'a', binary 'a \0' > 'a', binary 'a\0' > 'a';
+binary 'a a' > 'a' binary 'a \0' > 'a' binary 'a\0' > 'a'
+1 1 1
+select 'c' like '\_' as want0;
+want0
+0
+CREATE TABLE t (
+c char(20) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARACTER SET utf32 COLLATE=utf32_unicode_ci;
+INSERT INTO t VALUES ('a'),('ab'),('aba');
+ALTER TABLE t ADD INDEX (c);
+SELECT c FROM t WHERE c LIKE 'a%';
+c
+a
+ab
+aba
+DROP TABLE t;
+create table t1 (c1 char(10) character set utf32 collate utf32_bin);
+insert into t1 values ('A'),('a');
+insert into t1 values ('B'),('b');
+insert into t1 values ('C'),('c');
+insert into t1 values ('D'),('d');
+insert into t1 values ('E'),('e');
+insert into t1 values ('F'),('f');
+insert into t1 values ('G'),('g');
+insert into t1 values ('H'),('h');
+insert into t1 values ('I'),('i');
+insert into t1 values ('J'),('j');
+insert into t1 values ('K'),('k');
+insert into t1 values ('L'),('l');
+insert into t1 values ('M'),('m');
+insert into t1 values ('N'),('n');
+insert into t1 values ('O'),('o');
+insert into t1 values ('P'),('p');
+insert into t1 values ('Q'),('q');
+insert into t1 values ('R'),('r');
+insert into t1 values ('S'),('s');
+insert into t1 values ('T'),('t');
+insert into t1 values ('U'),('u');
+insert into t1 values ('V'),('v');
+insert into t1 values ('W'),('w');
+insert into t1 values ('X'),('x');
+insert into t1 values ('Y'),('y');
+insert into t1 values ('Z'),('z');
+insert into t1 values (_ucs2 0x00e0),(_ucs2 0x00c0);
+insert into t1 values (_ucs2 0x00e1),(_ucs2 0x00c1);
+insert into t1 values (_ucs2 0x00e2),(_ucs2 0x00c2);
+insert into t1 values (_ucs2 0x00e3),(_ucs2 0x00c3);
+insert into t1 values (_ucs2 0x00e4),(_ucs2 0x00c4);
+insert into t1 values (_ucs2 0x00e5),(_ucs2 0x00c5);
+insert into t1 values (_ucs2 0x00e6),(_ucs2 0x00c6);
+insert into t1 values (_ucs2 0x00e7),(_ucs2 0x00c7);
+insert into t1 values (_ucs2 0x00e8),(_ucs2 0x00c8);
+insert into t1 values (_ucs2 0x00e9),(_ucs2 0x00c9);
+insert into t1 values (_ucs2 0x00ea),(_ucs2 0x00ca);
+insert into t1 values (_ucs2 0x00eb),(_ucs2 0x00cb);
+insert into t1 values (_ucs2 0x00ec),(_ucs2 0x00cc);
+insert into t1 values (_ucs2 0x00ed),(_ucs2 0x00cd);
+insert into t1 values (_ucs2 0x00ee),(_ucs2 0x00ce);
+insert into t1 values (_ucs2 0x00ef),(_ucs2 0x00cf);
+insert into t1 values (_ucs2 0x00f0),(_ucs2 0x00d0);
+insert into t1 values (_ucs2 0x00f1),(_ucs2 0x00d1);
+insert into t1 values (_ucs2 0x00f2),(_ucs2 0x00d2);
+insert into t1 values (_ucs2 0x00f3),(_ucs2 0x00d3);
+insert into t1 values (_ucs2 0x00f4),(_ucs2 0x00d4);
+insert into t1 values (_ucs2 0x00f5),(_ucs2 0x00d5);
+insert into t1 values (_ucs2 0x00f6),(_ucs2 0x00d6);
+insert into t1 values (_ucs2 0x00f7),(_ucs2 0x00d7);
+insert into t1 values (_ucs2 0x00f8),(_ucs2 0x00d8);
+insert into t1 values (_ucs2 0x00f9),(_ucs2 0x00d9);
+insert into t1 values (_ucs2 0x00fa),(_ucs2 0x00da);
+insert into t1 values (_ucs2 0x00fb),(_ucs2 0x00db);
+insert into t1 values (_ucs2 0x00fc),(_ucs2 0x00dc);
+insert into t1 values (_ucs2 0x00fd),(_ucs2 0x00dd);
+insert into t1 values (_ucs2 0x00fe),(_ucs2 0x00de);
+insert into t1 values (_ucs2 0x00ff),(_ucs2 0x00df);
+insert into t1 values (_ucs2 0x0100),(_ucs2 0x0101),(_ucs2 0x0102),(_ucs2 0x0103);
+insert into t1 values (_ucs2 0x0104),(_ucs2 0x0105),(_ucs2 0x0106),(_ucs2 0x0107);
+insert into t1 values (_ucs2 0x0108),(_ucs2 0x0109),(_ucs2 0x010a),(_ucs2 0x010b);
+insert into t1 values (_ucs2 0x010c),(_ucs2 0x010d),(_ucs2 0x010e),(_ucs2 0x010f);
+insert into t1 values (_ucs2 0x0110),(_ucs2 0x0111),(_ucs2 0x0112),(_ucs2 0x0113);
+insert into t1 values (_ucs2 0x0114),(_ucs2 0x0115),(_ucs2 0x0116),(_ucs2 0x0117);
+insert into t1 values (_ucs2 0x0118),(_ucs2 0x0119),(_ucs2 0x011a),(_ucs2 0x011b);
+insert into t1 values (_ucs2 0x011c),(_ucs2 0x011d),(_ucs2 0x011e),(_ucs2 0x011f);
+insert into t1 values (_ucs2 0x0120),(_ucs2 0x0121),(_ucs2 0x0122),(_ucs2 0x0123);
+insert into t1 values (_ucs2 0x0124),(_ucs2 0x0125),(_ucs2 0x0126),(_ucs2 0x0127);
+insert into t1 values (_ucs2 0x0128),(_ucs2 0x0129),(_ucs2 0x012a),(_ucs2 0x012b);
+insert into t1 values (_ucs2 0x012c),(_ucs2 0x012d),(_ucs2 0x012e),(_ucs2 0x012f);
+insert into t1 values (_ucs2 0x0130),(_ucs2 0x0131),(_ucs2 0x0132),(_ucs2 0x0133);
+insert into t1 values (_ucs2 0x0134),(_ucs2 0x0135),(_ucs2 0x0136),(_ucs2 0x0137);
+insert into t1 values (_ucs2 0x0138),(_ucs2 0x0139),(_ucs2 0x013a),(_ucs2 0x013b);
+insert into t1 values (_ucs2 0x013c),(_ucs2 0x013d),(_ucs2 0x013e),(_ucs2 0x013f);
+insert into t1 values (_ucs2 0x0140),(_ucs2 0x0141),(_ucs2 0x0142),(_ucs2 0x0143);
+insert into t1 values (_ucs2 0x0144),(_ucs2 0x0145),(_ucs2 0x0146),(_ucs2 0x0147);
+insert into t1 values (_ucs2 0x0148),(_ucs2 0x0149),(_ucs2 0x014a),(_ucs2 0x014b);
+insert into t1 values (_ucs2 0x014c),(_ucs2 0x014d),(_ucs2 0x014e),(_ucs2 0x014f);
+insert into t1 values (_ucs2 0x0150),(_ucs2 0x0151),(_ucs2 0x0152),(_ucs2 0x0153);
+insert into t1 values (_ucs2 0x0154),(_ucs2 0x0155),(_ucs2 0x0156),(_ucs2 0x0157);
+insert into t1 values (_ucs2 0x0158),(_ucs2 0x0159),(_ucs2 0x015a),(_ucs2 0x015b);
+insert into t1 values (_ucs2 0x015c),(_ucs2 0x015d),(_ucs2 0x015e),(_ucs2 0x015f);
+insert into t1 values (_ucs2 0x0160),(_ucs2 0x0161),(_ucs2 0x0162),(_ucs2 0x0163);
+insert into t1 values (_ucs2 0x0164),(_ucs2 0x0165),(_ucs2 0x0166),(_ucs2 0x0167);
+insert into t1 values (_ucs2 0x0168),(_ucs2 0x0169),(_ucs2 0x016a),(_ucs2 0x016b);
+insert into t1 values (_ucs2 0x016c),(_ucs2 0x016d),(_ucs2 0x016e),(_ucs2 0x016f);
+insert into t1 values (_ucs2 0x0170),(_ucs2 0x0171),(_ucs2 0x0172),(_ucs2 0x0173);
+insert into t1 values (_ucs2 0x0174),(_ucs2 0x0175),(_ucs2 0x0176),(_ucs2 0x0177);
+insert into t1 values (_ucs2 0x0178),(_ucs2 0x0179),(_ucs2 0x017a),(_ucs2 0x017b);
+insert into t1 values (_ucs2 0x017c),(_ucs2 0x017d),(_ucs2 0x017e),(_ucs2 0x017f);
+insert into t1 values (_ucs2 0x0180),(_ucs2 0x0181),(_ucs2 0x0182),(_ucs2 0x0183);
+insert into t1 values (_ucs2 0x0184),(_ucs2 0x0185),(_ucs2 0x0186),(_ucs2 0x0187);
+insert into t1 values (_ucs2 0x0188),(_ucs2 0x0189),(_ucs2 0x018a),(_ucs2 0x018b);
+insert into t1 values (_ucs2 0x018c),(_ucs2 0x018d),(_ucs2 0x018e),(_ucs2 0x018f);
+insert into t1 values (_ucs2 0x0190),(_ucs2 0x0191),(_ucs2 0x0192),(_ucs2 0x0193);
+insert into t1 values (_ucs2 0x0194),(_ucs2 0x0195),(_ucs2 0x0196),(_ucs2 0x0197);
+insert into t1 values (_ucs2 0x0198),(_ucs2 0x0199),(_ucs2 0x019a),(_ucs2 0x019b);
+insert into t1 values (_ucs2 0x019c),(_ucs2 0x019d),(_ucs2 0x019e),(_ucs2 0x019f);
+insert into t1 values (_ucs2 0x01a0),(_ucs2 0x01a1),(_ucs2 0x01a2),(_ucs2 0x01a3);
+insert into t1 values (_ucs2 0x01a4),(_ucs2 0x01a5),(_ucs2 0x01a6),(_ucs2 0x01a7);
+insert into t1 values (_ucs2 0x01a8),(_ucs2 0x01a9),(_ucs2 0x01aa),(_ucs2 0x01ab);
+insert into t1 values (_ucs2 0x01ac),(_ucs2 0x01ad),(_ucs2 0x01ae),(_ucs2 0x01af);
+insert into t1 values (_ucs2 0x01b0),(_ucs2 0x01b1),(_ucs2 0x01b2),(_ucs2 0x01b3);
+insert into t1 values (_ucs2 0x01b4),(_ucs2 0x01b5),(_ucs2 0x01b6),(_ucs2 0x01b7);
+insert into t1 values (_ucs2 0x01b8),(_ucs2 0x01b9),(_ucs2 0x01ba),(_ucs2 0x01bb);
+insert into t1 values (_ucs2 0x01bc),(_ucs2 0x01bd),(_ucs2 0x01be),(_ucs2 0x01bf);
+insert into t1 values (_ucs2 0x01c0),(_ucs2 0x01c1),(_ucs2 0x01c2),(_ucs2 0x01c3);
+insert into t1 values (_ucs2 0x01c4),(_ucs2 0x01c5),(_ucs2 0x01c6),(_ucs2 0x01c7);
+insert into t1 values (_ucs2 0x01c8),(_ucs2 0x01c9),(_ucs2 0x01ca),(_ucs2 0x01cb);
+insert into t1 values (_ucs2 0x01cc),(_ucs2 0x01cd),(_ucs2 0x01ce),(_ucs2 0x01cf);
+insert into t1 values (_ucs2 0x01d0),(_ucs2 0x01d1),(_ucs2 0x01d2),(_ucs2 0x01d3);
+insert into t1 values (_ucs2 0x01d4),(_ucs2 0x01d5),(_ucs2 0x01d6),(_ucs2 0x01d7);
+insert into t1 values (_ucs2 0x01d8),(_ucs2 0x01d9),(_ucs2 0x01da),(_ucs2 0x01db);
+insert into t1 values (_ucs2 0x01dc),(_ucs2 0x01dd),(_ucs2 0x01de),(_ucs2 0x01df);
+insert into t1 values (_ucs2 0x01e0),(_ucs2 0x01e1),(_ucs2 0x01e2),(_ucs2 0x01e3);
+insert into t1 values (_ucs2 0x01e4),(_ucs2 0x01e5),(_ucs2 0x01e6),(_ucs2 0x01e7);
+insert into t1 values (_ucs2 0x01e8),(_ucs2 0x01e9),(_ucs2 0x01ea),(_ucs2 0x01eb);
+insert into t1 values (_ucs2 0x01ec),(_ucs2 0x01ed),(_ucs2 0x01ee),(_ucs2 0x01ef);
+insert into t1 values (_ucs2 0x01f0),(_ucs2 0x01f1),(_ucs2 0x01f2),(_ucs2 0x01f3);
+insert into t1 values (_ucs2 0x01f4),(_ucs2 0x01f5),(_ucs2 0x01f6),(_ucs2 0x01f7);
+insert into t1 values (_ucs2 0x01f8),(_ucs2 0x01f9),(_ucs2 0x01fa),(_ucs2 0x01fb);
+insert into t1 values (_ucs2 0x01fc),(_ucs2 0x01fd),(_ucs2 0x01fe),(_ucs2 0x01ff);
+insert into t1 values ('AA'),('Aa'),('aa'),('aA');
+insert into t1 values ('CH'),('Ch'),('ch'),('cH');
+insert into t1 values ('DZ'),('Dz'),('dz'),('dZ');
+insert into t1 values ('IJ'),('Ij'),('ij'),('iJ');
+insert into t1 values ('LJ'),('Lj'),('lj'),('lJ');
+insert into t1 values ('LL'),('Ll'),('ll'),('lL');
+insert into t1 values ('NJ'),('Nj'),('nj'),('nJ');
+insert into t1 values ('OE'),('Oe'),('oe'),('oE');
+insert into t1 values ('SS'),('Ss'),('ss'),('sS');
+insert into t1 values ('RR'),('Rr'),('rr'),('rR');
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_unicode_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_icelandic_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÂÃàâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ãá
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+Ãð
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+EeÈÊËèêëĒēĔĕĖėĘęĚě
+Éé
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÌÎÃìîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Ãí
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÔÕòôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Óó
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÛÜùûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Úú
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÿŶŷŸ
+Ãý
+Ƴƴ
+ZzŹźŻżŽž
+Þþ
+ÄÆäæ
+ÖØöø
+Ã…Ã¥
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_latvian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+CHChcHch
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġǦǧǴǵ
+Ģģ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Yy
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkǨǩ
+Ķķ
+Ƙƙ
+LlĹ弾
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+Ļļ
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŇňǸǹ
+NJNjnJnjNJNjnj
+Ņņ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŘř
+RRRrrRrr
+Å–Å—
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+ÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_romanian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÃÄÅàáãäåĀÄÄ„Ä…ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ăă
+Ââ
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃìíïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+Îî
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅÅ Å¡Å¿
+SSSssSssß
+Şş
+Æ©
+ƪ
+TtŤť
+ƾ
+Ţţ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_slovenian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+CHChcHch
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_polish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂăÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ä„Ä…
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĈĉĊċČÄ
+CHChcHch
+Ćć
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĚě
+Ęę
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ńń
+Æž
+ÅŠÅ‹
+OoÒÔÕÖòôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Óó
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsÅœÅŞşŠšſ
+SSSssSssß
+Śś
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŽž
+Źź
+Żż
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_estonian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÅàáâãåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdz
+DŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔòóôŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Zz
+Žž
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Õõ
+Ää
+Öö
+Üü
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ŹźŻż
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_spanish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ññ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_swedish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃàáâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃœÃüýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ã…Ã¥
+ÄÆäæ
+ÖØöø
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_turkish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcĆćĈĉĊċČÄ
+CHChcHch
+Çç
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĠġĢģǦǧǴǵ
+Ğğ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+Iı
+IJIj
+ƕǶ
+Ħħ
+iÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+iJijIJij
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Öö
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅÅ Å¡Å¿
+SSSssSssß
+Şş
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Üü
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_czech_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+CHChch
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗ
+RRRrrRrr
+Řř
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_danish_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃàáâãĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+aA
+ǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ǿǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃœÃüýÿŰűŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+ÄÆäæ
+ÖØöøÅÅ‘
+AAAaaaÃ…Ã¥
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_lithuanian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CCHChcchÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IYiyÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+ÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_slovak_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÅàáâãåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+Ää
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċ
+cH
+ÄŒÄ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+CHChch
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÕÖòóõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+Ôô
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşſ
+SSSssSssß
+Å Å¡
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻż
+Žž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_spanish2_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+cH
+CHChch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+lL
+LLLlll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Ññ
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_roman_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IJijÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJij
+IJij
+ı
+Æ—
+Æ–
+Ĵĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJlj
+LJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnj
+NJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+ÙÚÛÜùúûüŨũŪūŬŭŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ɯ
+Ʊ
+UVuv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_esperanto_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĊċČÄ
+CHChcHch
+Ĉĉ
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgĞğĠġĢģǦǧǴǵ
+ÄœÄ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+Hh
+Ĥĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjÇ°
+Ĵĵ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕÖòóôõöŌÅÅŽÅÅőƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŞşŠšſ
+SSSssSssß
+ÅœÅ
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛÜùúûüŨũŪūŮůŰűŲųƯưǓǔǕǖǗǘǙǚǛǜ
+Ŭŭ
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_hungarian_ci;
+group_concat(c1 order by binary c1 separator '')
+÷
+×
+AaÀÃÂÃÄÅàáâãäåĀÄĂ㥹ÇǎǞǟǠǡǺǻ
+AAAaaAaa
+ÆæǢǣǼǽ
+Bb
+Æ€
+Ƃƃ
+CcÇçĆćĈĉĊċČÄ
+CHChcHch
+Ƈƈ
+DdÄŽÄ
+DZDzdZdzDŽDždžDZDzdz
+ÄÄ‘
+Ɖ
+ÆŠ
+Ƌƌ
+Ãð
+EeÈÉÊËèéêëĒēĔĕĖėĘęĚě
+ÆŽÇ
+Ff
+Æ‘Æ’
+GgÄœÄĞğĠġĢģǦǧǴǵ
+Ǥǥ
+Æ“
+Æ”
+Ƣƣ
+HhĤĥ
+ƕǶ
+Ħħ
+IiÃŒÃÃŽÃìíîïĨĩĪīĬĭĮįİÇÇ
+IJIjiJijIJij
+ı
+Æ—
+Æ–
+JjĴĵǰ
+KkĶķǨǩ
+Ƙƙ
+LlĹĺĻļĽľ
+Ä¿Å€
+LJLjlJljLJLjlj
+LLLllLll
+ÅÅ‚
+Æš
+Æ›
+Mm
+NnÑñŃńŅņŇňǸǹ
+NJNjnJnjNJNjnj
+Æž
+ÅŠÅ‹
+OoÒÓÔÕòóôõŌÅÅŽÅƠơǑǒǪǫǬǭ
+OEOeoEoeÅ’Å“
+ÖöÅÅ‘
+ØøǾǿ
+Ɔ
+ÆŸ
+Pp
+Ƥƥ
+Qq
+ĸ
+RrŔŕŖŗŘř
+RRRrrRrr
+Ʀ
+SsŚśŜÅŞşŠšſ
+SSSssSssß
+Æ©
+ƪ
+TtŢţŤť
+ƾ
+Ŧŧ
+Æ«
+Ƭƭ
+Æ®
+UuÙÚÛùúûŨũŪūŬŭŮůŲųƯưǓǔǕǖǗǘǙǚǛǜ
+ÜüŰű
+Ɯ
+Ʊ
+Vv
+Ʋ
+WwŴŵ
+Xx
+YyÃýÿŶŷŸ
+Ƴƴ
+ZzŹźŻżŽž
+Ƶƶ
+ƷǮǯ
+Ƹƹ
+ƺ
+Þþ
+Æ¿Ç·
+Æ»
+Ƨƨ
+Ƽƽ
+Æ„Æ…
+ʼn
+Ç€
+Ç‚
+ǃ
+drop table t1;
+SET NAMES utf8;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_general_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025 COLLATE utf32_general_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (CONVERT(_ucs2 0x039C03C903B4 USING utf8));
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025
+COLLATE utf32_general_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025 COLLATE utf32_unicode_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B4);
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025
+COLLATE utf32_unicode_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+SELECT * FROM t1 WHERE c LIKE CONVERT(_ucs2 0x039C0025 USING utf32) COLLATE utf32_unicode_ci;
+c
+Μωδαί̈
+INSERT INTO t1 VALUES (CONVERT(_ucs2 0x039C03C903B4 USING utf8));
+SELECT * FROM t1 WHERE c LIKE CONVERT(_ucs2 0x039C0025 USING utf32)
+COLLATE utf32_unicode_ci ORDER BY c;
+c
+Μωδ
+Μωδαί̈
+DROP TABLE t1;
+SET NAMES utf8;
+SET @test_character_set='utf32';
+SET @test_collation='utf32_swedish_ci';
+SET @safe_character_set_server= @@character_set_server;
+SET @safe_collation_server= @@collation_server;
+SET @safe_character_set_client= @@character_set_client;
+SET @safe_character_set_results= @@character_set_results;
+SET character_set_server= @test_character_set;
+SET collation_server= @test_collation;
+CREATE DATABASE d1;
+USE d1;
+CREATE TABLE t1 (c CHAR(10), KEY(c));
+SHOW FULL COLUMNS FROM t1;
+Field Type Collation Null Key Default Extra Privileges Comment
+c char(10) utf32_swedish_ci YES MUL NULL
+INSERT INTO t1 VALUES ('aaa'),('aaaa'),('aaaaa');
+SELECT c as want3results FROM t1 WHERE c LIKE 'aaa%';
+want3results
+aaa
+aaaa
+aaaaa
+DROP TABLE t1;
+CREATE TABLE t1 (c1 varchar(15), KEY c1 (c1(2)));
+SHOW FULL COLUMNS FROM t1;
+Field Type Collation Null Key Default Extra Privileges Comment
+c1 varchar(15) utf32_swedish_ci YES MUL NULL
+INSERT INTO t1 VALUES ('location'),('loberge'),('lotre'),('boabab');
+SELECT c1 as want3results from t1 where c1 like 'l%';
+want3results
+location
+loberge
+lotre
+SELECT c1 as want3results from t1 where c1 like 'lo%';
+want3results
+location
+loberge
+lotre
+SELECT c1 as want1result from t1 where c1 like 'loc%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'loca%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locat%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locati%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'locatio%';
+want1result
+location
+SELECT c1 as want1result from t1 where c1 like 'location%';
+want1result
+location
+DROP TABLE t1;
+create table t1 (a set('a') not null);
+insert into t1 values (),();
+Warnings:
+Warning 1364 Field 'a' doesn't have a default value
+select cast(a as char(1)) from t1;
+cast(a as char(1))
+
+
+select a sounds like a from t1;
+a sounds like a
+1
+1
+select 1 from t1 order by cast(a as char(1));
+1
+1
+1
+drop table t1;
+set names utf8;
+create table t1 (
+name varchar(10),
+level smallint unsigned);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `name` varchar(10) COLLATE utf32_swedish_ci DEFAULT NULL,
+ `level` smallint(5) unsigned DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf32 COLLATE=utf32_swedish_ci
+insert into t1 values ('string',1);
+select concat(name,space(level)), concat(name, repeat(' ',level)) from t1;
+concat(name,space(level)) concat(name, repeat(' ',level))
+string string
+drop table t1;
+DROP DATABASE d1;
+USE test;
+SET character_set_server= @safe_character_set_server;
+SET collation_server= @safe_collation_server;
+SET character_set_client= @safe_character_set_client;
+SET character_set_results= @safe_character_set_results;
+SET collation_connection='utf32_unicode_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf32_unicode_ci 0000006100000009
+utf32_unicode_ci 00000061
+utf32_unicode_ci 0000006100000020
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf32_unicode_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+End of 4.1 tests
+CREATE TABLE t1 (id int, a varchar(30) character set utf32);
+INSERT INTO t1 VALUES (1, _ucs2 0x01310069), (2, _ucs2 0x01310131);
+INSERT INTO t1 VALUES (3, _ucs2 0x00690069), (4, _ucs2 0x01300049);
+INSERT INTO t1 VALUES (5, _ucs2 0x01300130), (6, _ucs2 0x00490049);
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+a la l ll u lu
+ıi 8 ıi 8 II 8
+ıı 8 ıı 8 II 8
+ii 8 ii 8 II 8
+Ä°I 8 ii 8 Ä°I 8
+Ä°Ä° 8 ii 8 Ä°Ä° 8
+II 8 ii 8 II 8
+ALTER TABLE t1 MODIFY a VARCHAR(30) character set utf32 collate utf32_turkish_ci;
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+a la l ll u lu
+ıi 8 ıi 8 Iİ 8
+ıı 8 ıı 8 II 8
+ii 8 ii 8 Ä°Ä° 8
+İI 8 iı 8 İI 8
+Ä°Ä° 8 ii 8 Ä°Ä° 8
+II 8 ıı 8 II 8
+DROP TABLE t1;
+CREATE TABLE t1 (
+c1 text character set utf32 collate utf32_polish_ci NOT NULL
+) ENGINE=MyISAM;
+insert into t1 values (''),('a');
+SELECT COUNT(*), c1 FROM t1 GROUP BY c1;
+COUNT(*) c1
+1
+1 a
+DROP TABLE IF EXISTS t1;
+set collation_connection=utf32_unicode_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf32 COLLATE utf32_unicode_ci DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf32 COLLATE utf32_unicode_ci DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/ctype_utf8.result b/mysql-test/r/ctype_utf8.result
index 55c32c6a1d4..03040d1676c 100644
--- a/mysql-test/r/ctype_utf8.result
+++ b/mysql-test/r/ctype_utf8.result
@@ -1899,6 +1899,20 @@ CONVERT(a, CHAR) CONVERT(b, CHAR)
DROP TABLE t1;
End of 5.0 tests
Start of 5.4 tests
+SET NAMES utf8mb3;
+SHOW VARIABLES LIKE 'character_set_results%';
+Variable_name Value
+character_set_results utf8
+CREATE TABLE t1 (a CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` char(1) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TABLE t1;
+SELECT _utf8mb3'test';
+test
+test
CREATE TABLE t1 (
clipid INT NOT NULL,
Tape TINYTEXT,
diff --git a/mysql-test/r/ctype_utf8mb4.result b/mysql-test/r/ctype_utf8mb4.result
new file mode 100644
index 00000000000..4de7a192546
--- /dev/null
+++ b/mysql-test/r/ctype_utf8mb4.result
@@ -0,0 +1,2478 @@
+drop table if exists t1,t2;
+#
+# Start of 5.5 tests
+#
+set names utf8mb4;
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+left(_utf8mb4 0xD0B0D0B1D0B2,1)
+а
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+right(_utf8mb4 0xD0B0D0B2D0B2,1)
+в
+select locate('he','hello');
+locate('he','hello')
+1
+select locate('he','hello',2);
+locate('he','hello',2)
+0
+select locate('lo','hello',2);
+locate('lo','hello',2)
+4
+select locate('HE','hello');
+locate('HE','hello')
+1
+select locate('HE','hello',2);
+locate('HE','hello',2)
+0
+select locate('LO','hello',2);
+locate('LO','hello',2)
+4
+select locate('HE','hello' collate utf8mb4_bin);
+locate('HE','hello' collate utf8mb4_bin)
+0
+select locate('HE','hello' collate utf8mb4_bin,2);
+locate('HE','hello' collate utf8mb4_bin,2)
+0
+select locate('LO','hello' collate utf8mb4_bin,2);
+locate('LO','hello' collate utf8mb4_bin,2)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin)
+0
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+length(_utf8mb4 0xD0B1) bit_length(_utf8mb4 0xD0B1) char_length(_utf8mb4 0xD0B1)
+2 16 1
+select 'a' like 'a';
+'a' like 'a'
+1
+select 'A' like 'a';
+'A' like 'a'
+1
+select 'A' like 'a' collate utf8mb4_bin;
+'A' like 'a' collate utf8mb4_bin
+0
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+_utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%')
+1
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+convert(_latin1'G?nter Andr?' using utf8mb4) like CONVERT(_latin1'G?NTER%' USING utf8mb4)
+1
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+SELECT 'a' = 'a ';
+'a' = 'a '
+1
+SELECT 'a\0' < 'a';
+'a\0' < 'a'
+1
+SELECT 'a\0' < 'a ';
+'a\0' < 'a '
+1
+SELECT 'a\t' < 'a';
+'a\t' < 'a'
+1
+SELECT 'a\t' < 'a ';
+'a\t' < 'a '
+1
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+'a' = 'a ' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+'a\0' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+'a\0' < 'a ' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+'a\t' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+'a\t' < 'a ' collate utf8mb4_bin
+1
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null);
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+hex(a) STRCMP(a,'a') STRCMP(a,'a ')
+61 0 0
+6100 -1 -1
+6109 -1 -1
+61 0 0
+DROP TABLE t1;
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
+this is a test
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+insert("aa",100,1,"b") insert("aa",1,3,"b")
+aa b
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+char_length(left(@a:='теÑÑ‚',5)) length(@a) @a
+4 8 теÑÑ‚
+create table t1 select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+date_format("2004-01-19 10:10:10", "%Y-%m-%d")
+2004-01-19
+drop table t1;
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1);
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+hex(s1)
+66E97672696572
+drop table t1;
+create table t1 (s1 char(20) character set koi8r);
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+hex(s1) s1
+E6C5D7D2C1CCD1 ФевралÑ
+E6C5D7 Фев
+F0CFCEC5C4C5CCD8CEC9CB Понедельник
+F0CEC4 Пнд
+drop table t1;
+set LC_TIME_NAMES='en_US';
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4);
+insert into t1 values (_koi8r'ÁÂ');
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+s1 hex(s1) char_length(s1) octet_length(s1)
+Á D0B0 1 2
+drop table t1;
+create table t1 (s1 tinytext character set utf8mb4);
+insert into t1 select repeat('a',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F
+D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+255 255
+254 127
+255 170
+255 170
+254 127
+drop table t1;
+create table t1 (s1 text character set utf8mb4);
+insert into t1 select repeat('a',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+65535 65535
+65534 32767
+65535 43690
+65535 43690
+65534 32767
+drop table t1;
+create table t1 (s1 char(10) character set utf8mb4);
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 varchar(10) character set utf8mb4);
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 text character set utf8mb4);
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (a text character set utf8mb4, primary key(a(371)));
+ERROR 42000: Specified key was too long; max key length is 1000 bytes
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+a a
+test test
+DROP TABLE t1;
+create table t1 (a char(255) character set utf8mb4);
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a != 'b';
+a
+drop table t1;
+set collation_connection=utf8mb4_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names utf8mb4;
+set names utf8mb4;
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci);
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4);
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('aaaa','проба') CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('проба');
+select * from t1;
+a
+проба
+create table t2 select ifnull(a,a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t2;
+ifnull(a,a)
+проба
+drop table t1;
+drop table t2;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10)));
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=innodb;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2)));
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=innodb;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=innodb;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10)));
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2)));
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=innodb;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=myisam;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=innodb;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using btree (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using hash (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=innodb;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+a
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+length(subject)
+432
+3
+SELECT length(subject) FROM t1 ORDER BY 1;
+length(subject)
+3
+432
+DROP TABLE t1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term TEXT NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(4))
+) ENGINE=MYISAM CHARSET=utf8mb4;
+INSERT INTO t1 SET list_id = 1, term = "letterc";
+INSERT INTO t1 SET list_id = 1, term = "letterb";
+INSERT INTO t1 SET list_id = 1, term = "lettera";
+INSERT INTO t1 SET list_id = 1, term = "letterd";
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
+id
+1
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
+id
+2
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
+id
+3
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
+id
+4
+DROP TABLE t1;
+SET NAMES latin1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term text NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(19))
+) ENGINE=MyISAM CHARSET=utf8mb4;
+INSERT INTO t1 set list_id = 1, term = "testétest";
+INSERT INTO t1 set list_id = 1, term = "testetest";
+INSERT INTO t1 set list_id = 1, term = "testètest";
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testétest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testètest");
+id term
+1 testétest
+2 testetest
+3 testètest
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (
+a int primary key,
+b varchar(6),
+index b3(b(3))
+) engine=innodb character set=utf8mb4;
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+alter table t1 engine=innodb;
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+drop table t1;
+create table t1 (
+a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+);
+create table t2 select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(5) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t2;
+drop table t1;
+select 'c' like '\_' as want0;
+want0
+0
+SELECT SUBSTR('ваÑÑ',-2);
+SUBSTR('ваÑÑ',-2)
+ÑÑ
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('TEST');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('test');
+id a
+1 Test
+drop table t1;
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)
+阅000
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB))
+E99885303030
+select soundex(_utf8mb4 0xD091D092D093);
+soundex(_utf8mb4 0xD091D092D093)
+Б000
+select hex(soundex(_utf8mb4 0xD091D092D093));
+hex(soundex(_utf8mb4 0xD091D092D093))
+D091303030
+SET collation_connection='utf8mb4_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_general_ci 6109
+utf8mb4_general_ci 61
+utf8mb4_general_ci 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8mb4_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
+SET collation_connection='utf8mb4_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_bin 6109
+utf8mb4_bin 61
+utf8mb4_bin 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+CREATE TABLE t1 (
+user varchar(255) NOT NULL default ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+CHARSET('a')
+utf8mb4
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+user c
+one <one>
+two <two>
+DROP TABLE t1;
+create table t1 (f1 varchar(1) not null) default charset utf8mb4;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+concat(concat(_latin1'->',f1),_latin1'<-')
+-><-
+-><-
+drop table t1;
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+convert(_koi8r'?' using utf8mb4) < convert(_koi8r'?' using utf8mb4)
+1
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+ifnull(a,'')
+test
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+h
++++
+NULL
+select ifnull(NULL, _utf8mb4'string');
+ifnull(NULL, _utf8mb4'string')
+string
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci);
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+s1
+I
+Y
+select * from t1 where 'K' > s1 and s1 = 'Y';
+s1
+I
+Y
+drop table t1;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci);
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+s1
+ch
+CH
+Ch
+select * from t1 where 'd' < s1 and s1 = 'CH';
+s1
+ch
+CH
+Ch
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+s1
+cH
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+s1
+cH
+drop table t1;
+create table t1 (a varchar(255)) default character set utf8mb4;
+insert into t1 values (1.0);
+drop table t1;
+create table t1 (
+id int not null,
+city varchar(20) not null,
+key (city(7),id)
+) character set=utf8mb4;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+id city
+2 Durban
+select * from t1 where city = 'Durban ';
+id city
+2 Durban
+drop table t1;
+create table t1 (x set('A', 'B') default 0) character set utf8mb4;
+ERROR 42000: Invalid default value for 'x'
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4;
+ERROR 42000: Invalid default value for 'x'
+SET NAMES UTF8;
+CREATE TABLE t1 (
+`id` int(20) NOT NULL auto_increment,
+`country` varchar(100) NOT NULL default '',
+`shortcode` varchar(100) NOT NULL default '',
+`operator` varchar(100) NOT NULL default '',
+`momid` varchar(30) NOT NULL default '',
+`keyword` varchar(160) NOT NULL default '',
+`content` varchar(160) NOT NULL default '',
+`second_token` varchar(160) default NULL,
+`gateway_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+`msisdn` varchar(15) NOT NULL default '',
+PRIMARY KEY (`id`),
+UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+KEY `IX_mobile_originated_message_keyword` (`keyword`),
+KEY `IX_mobile_originated_message_created` (`created`),
+KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+CREATE TABLE t2 (
+`msisdn` varchar(15) NOT NULL default '',
+`operator_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+content msisdn
+ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми 1234567890
+11 g 1234567890
+DROP TABLE t1,t2;
+create table t1 (a char(20) character set utf8mb4);
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1265 Data truncated for column 'a' at row 2
+select char_length(a), length(a), a from t1 order by a;
+char_length(a) length(a) a
+2 2 12
+2 4 ан
+drop table t1;
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+'andre%' like 'andreñ%' escape 'ñ'
+1
+set names utf8mb4;
+select 'a\\' like 'a\\';
+'a\\' like 'a\\'
+1
+select 'aa\\' like 'a%\\';
+'aa\\' like 'a%\\'
+1
+create table t1 (a char(10), key(a)) character set utf8mb4;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+CREATE TABLE t1 (
+a varchar(255) NOT NULL default '',
+KEY a (a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+hex(a)
+E880BD
+5B
+drop table t1;
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4;
+select * from t1 where find_in_set('-1', a);
+a
+drop table t1;
+create table t1 (a int);
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+char(a)
+0
+1
+2
+drop table t1;
+CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4);
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+CREATE TEMPORARY TABLE t2 SELECT COALESCE(t) AS bug FROM t1;
+SELECT LENGTH(bug) FROM t2;
+LENGTH(bug)
+100
+DROP TABLE t2;
+DROP TABLE t1;
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+item
+Cote d'Ivoire
+Cote d'Ivoire
+\
+\
+DROP TABLE t1;
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uU');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+before_delete_general_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+after_delete_general_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+before_delete_unicode_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+after_delete_unicode_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+before_delete_bin
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+after_delete_bin
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_general_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+gci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+gci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_unicode_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+uci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+uci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_bin;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+bin1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+bin2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+b int,
+f varchar(128) default 'XXX',
+INDEX (a(4))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+(1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+(4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+(7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+(10, 'eeeee', 40), (11, 'bbbbbb', 60);
+SELECT id, a, b FROM t1;
+id a b
+1 cccc 50
+2 cccc 70
+3 cccc 30
+4 cccc 30
+5 cccc 20
+6 bbbbbb 40
+7 dddd 30
+8 aaaa 10
+9 aaaa 50
+10 eeeee 40
+11 bbbbbb 60
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+id a b
+8 aaaa 10
+9 aaaa 50
+6 bbbbbb 40
+11 bbbbbb 60
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+id a
+6 bbbbbb
+11 bbbbbb
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+id a
+6 bbbbbb
+11 bbbbbb
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+('Käli Käli 2-4'), ('Käli Käli 2-4'),
+('Käli Käli 2+4'), ('Käli Käli 2+4'),
+('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+CREATE TABLE t2 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+INSERT INTO t2 VALUES
+('Kali Kali 2-4'), ('Kali Kali 2-4'),
+('Kali Kali 2+4'), ('Kali Kali 2+4'),
+('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+a
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+a
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 53 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a a 53 const 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 14 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 14 const 4 Using where; Using index
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a char(255) DEFAULT '',
+KEY(a(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+CREATE TABLE t1 (
+a char(255) DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+SET NAMES latin2;
+CREATE TABLE t1 (
+id int(11) NOT NULL default '0',
+tid int(11) NOT NULL default '0',
+val text NOT NULL,
+INDEX idx(tid, val(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(40988,72,'VOLNÝ ADSL'),(41009,72,'VOLNÝ ADSL'),
+(41032,72,'VOLNÝ ADSL'),(41038,72,'VOLNÝ ADSL'),
+(41063,72,'VOLNÝ ADSL'),(41537,72,'VOLNÝ ADSL Office'),
+(42141,72,'VOLNÝ ADSL'),(42565,72,'VOLNÝ ADSL Combi'),
+(42749,72,'VOLNÝ ADSL'),(44205,72,'VOLNÝ ADSL');
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNY ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE '%VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+ALTER TABLE t1 DROP KEY idx;
+ALTER TABLE t1 ADD KEY idx (tid,val(11));
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+DROP TABLE t1;
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+default charset=utf8mb4 collate=utf8mb4_unicode_ci;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+select distinct a from t1;
+a
+e
+explain select a from t1 group by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
+select a from t1 group by a;
+a
+e
+drop table t1;
+create table t1(a char(10)) default charset utf8mb4;
+insert into t1 values ('123'), ('456');
+explain
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+substr(Z.a,-1) a
+3 123
+6 456
+drop table t1;
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+Variable_name Value
+character_set_client utf8mb4
+character_set_connection latin1
+character_set_database latin1
+character_set_filesystem binary
+character_set_results utf8mb4
+character_set_server latin1
+character_set_system utf8
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+35
+36
+37
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE crashtest ALL NULL NULL NULL NULL 4 Using filesort
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+-1000
+35
+36
+37
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FFFFFC'
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+SELECT id FROM t1;
+id
+xxx
+aa
+yyy
+aa
+SELECT DISTINCT id FROM t1;
+id
+xxx
+aa
+yyy
+SELECT DISTINCT id FROM t1 ORDER BY id;
+id
+aa
+xxx
+yyy
+DROP TABLE t1;
+create table t1 (
+a varchar(26) not null
+) default character set utf8mb4;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+a
+abcdefghijklmnopqrstuvwxyz
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmnopqrst
+alter table t1 change a a char(15) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmno
+alter table t1 change a a char(10) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghij
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcde
+drop table t1;
+create table t1 (
+a varchar(4000) not null
+) default character set utf8mb4;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select length(a) from t1;
+length(a)
+3000
+drop table t1;
+set names utf8mb4;
+select hex(char(1 using utf8mb4));
+hex(char(1 using utf8mb4))
+01
+select char(0xd1,0x8f using utf8mb4);
+char(0xd1,0x8f using utf8mb4)
+select char(0xd18f using utf8mb4);
+char(0xd18f using utf8mb4)
+select char(53647 using utf8mb4);
+char(53647 using utf8mb4)
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select char(195 using utf8mb4);
+char(195 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C3'
+select char(196 using utf8mb4);
+char(196 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C4'
+select char(2557 using utf8mb4);
+char(2557 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FD'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select hex(convert(char(2557 using latin1) using utf8mb4));
+hex(convert(char(2557 using latin1) using utf8mb4))
+09C3BD
+select hex(char(195));
+hex(char(195))
+C3
+select hex(char(196));
+hex(char(196))
+C4
+select hex(char(2557));
+hex(char(2557))
+09FD
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4;
+create table t2 (a char(1)) default character set utf8mb4;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+a
+a
+ã‚
+i
+ã„
+drop table t1,t2;
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10));
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+a b
+bar kostja
+set @a:='kostja';
+execute my_stmt using @a;
+a b
+kostja bar
+set @a:=null;
+execute my_stmt using @a;
+a b
+drop table if exists t1;
+drop table if exists t1;
+drop view if exists v1, v2;
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+4 utf8mb4_general_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+coercibility(col1) collation(col1)
+2 utf8mb4_unicode_ci
+2 utf8mb4_unicode_ci
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+0 utf8mb4_swedish_ci
+drop view v1, v2;
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+concat(a, if(b>10, N'x', N'y'))
+ay
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y'))
+ay
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79))
+ay
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+concat(a, if(b>10, 'x' 'x', 'y' 'y'))
+ayy
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+CREATE TABLE t1 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+PRIMARY KEY (colA)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+CREATE TABLE t2 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+KEY bad (colA,colB(3))
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+colA colB colA colB
+1 foo 1 foo
+2 foo bar 2 foo bar
+DROP TABLE t1, t2;
+SELECT 'н1234567890' UNION SELECT _binary '1';
+н1234567890
+н1234567890
+1
+SELECT 'н1234567890' UNION SELECT 1;
+н1234567890
+н1234567890
+1
+SELECT '1' UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+SELECT 1 UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT);
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+SELECT c FROM t1 UNION SELECT b FROM t2;
+c
+н1234567890
+1
+SELECT c FROM t1 UNION SELECT i FROM t2;
+c
+н1234567890
+1
+SELECT b FROM t2 UNION SELECT c FROM t1;
+b
+1
+н1234567890
+SELECT i FROM t2 UNION SELECT c FROM t1;
+i
+1
+н1234567890
+DROP TABLE t1, t2;
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL);
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70002 1065
+70001 1085
+70000 1092
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70002 1065
+70001 1085
+70000 1092
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70002 1065
+70001 1085
+70000 1092
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70002 1065
+70001 1085
+70000 1092
+DROP TABLE t1;
+#
+# Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+predicted_order int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+predicted_order hex(utf8mb4_encoding)
+1 E0B7B4
+2 E0B685
+3 E0B686
+4 E0B687
+5 E0B688
+6 E0B689
+7 E0B68A
+8 E0B68B
+9 E0B68C
+10 E0B68D
+11 E0B68E
+12 E0B68F
+13 E0B690
+14 E0B691
+15 E0B692
+16 E0B693
+17 E0B694
+18 E0B695
+19 E0B696
+20 E0B682
+21 E0B683
+22 E0B69A
+23 E0B69AE0B78F
+24 E0B69AE0B790
+25 E0B69AE0B791
+26 E0B69AE0B792
+27 E0B69AE0B793
+28 E0B69AE0B794
+29 E0B69AE0B796
+30 E0B69AE0B798
+31 E0B69AE0B7B2
+32 E0B69AE0B79F
+33 E0B69AE0B7B3
+34 E0B69AE0B799
+35 E0B69AE0B79A
+36 E0B69AE0B79B
+37 E0B69AE0B79C
+38 E0B69AE0B79D
+39 E0B69AE0B79E
+40 E0B69AE0B78A
+41 E0B69B
+42 E0B69C
+43 E0B69D
+44 E0B69E
+45 E0B69F
+46 E0B6A0
+47 E0B6A1
+48 E0B6A2
+49 E0B6A3
+50 E0B6A5
+51 E0B6A4
+52 E0B6A6
+53 E0B6A7
+54 E0B6A8
+55 E0B6A9
+56 E0B6AA
+57 E0B6AB
+58 E0B6AC
+59 E0B6AD
+60 E0B6AE
+61 E0B6AF
+62 E0B6B0
+63 E0B6B1
+64 E0B6B3
+65 E0B6B4
+66 E0B6B5
+67 E0B6B6
+68 E0B6B7
+69 E0B6B8
+70 E0B6B9
+71 E0B6BA
+72 E0B6BB
+73 E0B6BBE0B78AE2808D
+74 E0B6BD
+75 E0B780
+76 E0B781
+77 E0B782
+78 E0B783
+79 E0B784
+80 E0B785
+81 E0B786
+82 E0B78F
+83 E0B790
+84 E0B791
+85 E0B792
+86 E0B793
+87 E0B794
+88 E0B796
+89 E0B798
+90 E0B7B2
+91 E0B79F
+92 E0B7B3
+93 E0B799
+94 E0B79A
+95 E0B79B
+96 E0B79C
+97 E0B79D
+98 E0B79E
+99 E0B78A
+100 E0B78AE2808DE0B6BA
+101 E0B78AE2808DE0B6BB
+DROP TABLE t1;
+#
+# Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+#
+create table t1 (utf8mb4 char(1) character set utf8mb4);
+Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x8F\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F0908080
+F0BFBFBF
+
+delete from t1;
+Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F2808080
+F2BFBFBF
+delete from t1;
+Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x90\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F4808080
+F48F8080
+
+drop table t1;
+#
+# Check strnxfrm() with odd length
+#
+set max_sort_length=5;
+select @@max_sort_length;
+@@max_sort_length
+5
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci);
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+a
+a
+b
+c
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+a
+a
+b
+c
+drop table t1;
+set max_sort_length=default;
+#
+# Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+#
+CREATE TABLE t1 (
+clipid INT NOT NULL,
+Tape TINYTEXT,
+PRIMARY KEY (clipid),
+KEY tape(Tape(255))
+) CHARACTER SET=utf8mb4;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+ALTER TABLE t1 ADD mos TINYINT DEFAULT 0 AFTER clipid;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `clipid` int(11) NOT NULL,
+ `mos` tinyint(4) DEFAULT '0',
+ `Tape` tinytext,
+ PRIMARY KEY (`clipid`),
+ KEY `tape` (`Tape`(250))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4
+DROP TABLE t1;
+#
+# Testing 4-byte values.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+(119070, x'f09d849e'),
+# HALF NOTE
+(119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+(119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+(120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+(120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+(1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+(917999, x'f3a087af');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+Warnings:
+Warning 1265 Data truncated for column 'utf8mb4_encoding' at row 1
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+u_decimal hex(utf8mb4_encoding)
+65131 EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+119040 F09D8480
+119070 F09D849E
+119134 F09D859E
+119247 F09D878F
+120607 F09D9C9F
+120735 F09D9E9F
+917999 F3A087AF
+1114111 F48FBFBF
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+Warnings:
+Warning 1366 Incorrect string value: '\xF5\x80\x80\x80' for column 'utf8mb4_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't1' AND column_name= 'utf8mb4_encoding';
+character_maximum_length character_octet_length
+10 40
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t2 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3;
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb3_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't2' AND column_name= 'utf8mb3_encoding';
+character_maximum_length character_octet_length
+10 30
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBD' for column 'utf8mb3_encoding' at row 1
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8'))
+F09D8480EA9DA8
+F09D849EEA9DA8
+F09D859EEA9DA8
+F09D878FEA9DA8
+F09D9C9FEA9DA8
+F09D9E9FEA9DA8
+F48FBFBFEA9DA8
+F3A087AFEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+EA9DA8
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding))
+F09D8480EA9DA8
+F09D8480EFB9AB
+F09D8480
+F09D849EEA9DA8
+F09D849EEFB9AB
+F09D849E
+F09D859EEA9DA8
+F09D859EEFB9AB
+F09D859E
+F09D878FEA9DA8
+F09D878FEFB9AB
+F09D878F
+F09D9C9FEA9DA8
+F09D9C9FEFB9AB
+F09D9C9F
+F09D9E9FEA9DA8
+F09D9E9FEFB9AB
+F09D9E9F
+F48FBFBFEA9DA8
+F48FBFBFEFB9AB
+F48FBFBF
+F3A087AFEA9DA8
+F3A087AFEFB9AB
+F3A087AF
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+EA9DA8
+EFB9AB
+
+SELECT count(*) FROM t1, t2
+WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+count(*)
+33
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x9D\x84\x80' for column 'utf8mb4_encoding' at row 1
+Warning 1366 Incorrect string value: '\xF0\x9D\x84\x9E' for column 'utf8mb4_encoding' at row 2
+Warning 1366 Incorrect string value: '\xF0\x9D\x85\x9E' for column 'utf8mb4_encoding' at row 3
+Warning 1366 Incorrect string value: '\xF0\x9D\x87\x8F' for column 'utf8mb4_encoding' at row 4
+Warning 1366 Incorrect string value: '\xF0\x9D\x9C\x9F' for column 'utf8mb4_encoding' at row 5
+Warning 1366 Incorrect string value: '\xF0\x9D\x9E\x9F' for column 'utf8mb4_encoding' at row 6
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb4_encoding' at row 7
+Warning 1366 Incorrect string value: '\xF3\xA0\x87\xAF' for column 'utf8mb4_encoding' at row 8
+Warning 1366 Incorrect string value: '\xF0\x9D\x84\x9E\xF0\x9D...' for column 'utf8mb4_encoding' at row 9
+Warning 1366 Incorrect string value: '\xF0\x9D\x84\x9E\xF0\x9D...' for column 'utf8mb4_encoding' at row 10
+Warning 1366 Incorrect string value: '\xF0\x9D\x84\x9E\xF0\x9D...' for column 'utf8mb4_encoding' at row 11
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+u_decimal hex(utf8mb4_encoding) utf8mb4_encoding
+119040 3F ?
+119070 3F ?
+119134 3F ?
+119247 3F ?
+120607 3F ?
+120735 3F ?
+1114111 3F ?
+917999 3F ?
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB ﹫?????﹫﹫?﹫
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+1114111
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+42856 EA9DA8
+65131 EFB9AB
+1114111
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+42856 EA9DA8
+65131 EFB9AB
+1114111
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+119040 3F
+119070 3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+1114111 3F
+917999 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+119070 3F3F3F3F3F3F3F3F3F3F
+1114111
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+119040 3F
+119070 3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+1114111 3F
+917999 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+119070 3F3F3F3F3F3F3F3F3F3F
+1114111
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+42856 EA9DA8
+65131 EFB9AB
+1114111
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t3 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8;
+INSERT INTO t3 SELECT * FROM t1;
+DROP TABLE IF EXISTS t4;
+CREATE TABLE t4 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+INSERT INTO t3 SELECT * FROM t2;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+#
+# Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+#
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+CHARSET(CONCAT(_utf8mb4'a',_utf8'b'))
+utf8mb4
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL);
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+CONCAT(utf8mb4, _utf8 x'ea9da8')
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL);
+INSERT INTO t2 VALUES (x'ea9da8');
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+HEX(CONCAT(utf8mb4, utf8mb3))
+EA9DA8EA9DA8
+F48FBFBFEA9DA8
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+CHARSET(CONCAT(utf8mb4, utf8mb3))
+utf8mb4
+CREATE TEMPORARY TABLE t3 AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TEMPORARY TABLE `t3` (
+ `utf8mb4` varchar(10) CHARACTER SET utf8mb4 NOT NULL,
+ `utf8mb3` varchar(10) CHARACTER SET utf8 NOT NULL,
+ `concat(utf8mb4,utf8mb3)` varchar(20) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TEMPORARY TABLE t3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+utf8mb4 utf8mb3
+ô¿¿ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+utf8mb4 utf8mb3
+ê¨ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+utf8mb4 utf8mb3
+DROP TABLE t1;
+DROP TABLE t2;
+#
+# Check that mixing utf8mb4 with an invalid utf8 constant returns error
+#
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4);
+INSERT INTO t1 VALUES (x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+DROP TABLE t1;
+#
+# Bug#51675 Server crashes on inserting 4 byte char.
+# after ALTER TABLE to 'utf8mb4'
+#
+SET NAMES utf8;
+CREATE TABLE t1 (
+subject varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
+p VARCHAR(15) CHARACTER SET utf8
+) DEFAULT CHARSET=latin1;
+ALTER TABLE t1 ADD INDEX (subject);
+ALTER TABLE t1
+DEFAULT CHARACTER SET utf8,
+MODIFY subject varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
+MODIFY p varchar(255) CHARACTER SET utf8;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
+ `p` varchar(255) DEFAULT NULL,
+ KEY `subject` (`subject`(250))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+INSERT INTO t1(subject) VALUES ('abcd');
+INSERT INTO t1(subject) VALUES(x'f0909080');
+DROP TABLE t1;
+CREATE TABLE t1 (a TEXT CHARACTER SET utf8mb4, FULLTEXT INDEX(a));
+INSERT INTO t1 VALUES (0xF0A08080 /* U+20000 */ );
+DROP TABLE t1;
+#
+# Bug #51676 Server crashes on SELECT, ORDER BY on 'utf8mb4' column
+#
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) DEFAULT CHARSET=latin1;
+INSERT INTO t1(subject) VALUES(0xF0909080);
+INSERT INTO t1(subject) VALUES(0x616263F0909080646566);
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `subject` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
+ `p` varchar(15) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+SELECT * FROM t1 ORDER BY 1;
+subject p
+abcð€def NULL
+ð€ NULL
+SELECT hex(subject), length(subject), char_length(subject), octet_length(subject) FROM t1 ORDER BY 1;
+hex(subject) length(subject) char_length(subject) octet_length(subject)
+616263F0909080646566 10 7 10
+F0909080 4 1 4
+SELECT subject FROM t1 ORDER BY 1;
+subject
+abcð€def
+ð€
+DROP TABLE t1;
+#
+# End of 5.5 tests
+#
+#
+# End of tests
+#
diff --git a/mysql-test/r/ctype_utf8mb4_heap.result b/mysql-test/r/ctype_utf8mb4_heap.result
new file mode 100644
index 00000000000..735e3ceda6d
--- /dev/null
+++ b/mysql-test/r/ctype_utf8mb4_heap.result
@@ -0,0 +1,2260 @@
+drop table if exists t1,t2;
+#
+# Start of 5.5 tests
+#
+set names utf8mb4;
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+left(_utf8mb4 0xD0B0D0B1D0B2,1)
+а
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+right(_utf8mb4 0xD0B0D0B2D0B2,1)
+в
+select locate('he','hello');
+locate('he','hello')
+1
+select locate('he','hello',2);
+locate('he','hello',2)
+0
+select locate('lo','hello',2);
+locate('lo','hello',2)
+4
+select locate('HE','hello');
+locate('HE','hello')
+1
+select locate('HE','hello',2);
+locate('HE','hello',2)
+0
+select locate('LO','hello',2);
+locate('LO','hello',2)
+4
+select locate('HE','hello' collate utf8mb4_bin);
+locate('HE','hello' collate utf8mb4_bin)
+0
+select locate('HE','hello' collate utf8mb4_bin,2);
+locate('HE','hello' collate utf8mb4_bin,2)
+0
+select locate('LO','hello' collate utf8mb4_bin,2);
+locate('LO','hello' collate utf8mb4_bin,2)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin)
+0
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+length(_utf8mb4 0xD0B1) bit_length(_utf8mb4 0xD0B1) char_length(_utf8mb4 0xD0B1)
+2 16 1
+select 'a' like 'a';
+'a' like 'a'
+1
+select 'A' like 'a';
+'A' like 'a'
+1
+select 'A' like 'a' collate utf8mb4_bin;
+'A' like 'a' collate utf8mb4_bin
+0
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+_utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%')
+1
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+convert(_latin1'G?nter Andr?' using utf8mb4) like CONVERT(_latin1'G?NTER%' USING utf8mb4)
+1
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+SELECT 'a' = 'a ';
+'a' = 'a '
+1
+SELECT 'a\0' < 'a';
+'a\0' < 'a'
+1
+SELECT 'a\0' < 'a ';
+'a\0' < 'a '
+1
+SELECT 'a\t' < 'a';
+'a\t' < 'a'
+1
+SELECT 'a\t' < 'a ';
+'a\t' < 'a '
+1
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+'a' = 'a ' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+'a\0' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+'a\0' < 'a ' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+'a\t' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+'a\t' < 'a ' collate utf8mb4_bin
+1
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null) ENGINE heap;
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+hex(a) STRCMP(a,'a') STRCMP(a,'a ')
+61 0 0
+61 0 0
+6100 -1 -1
+6109 -1 -1
+DROP TABLE t1;
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
+this is a test
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+insert("aa",100,1,"b") insert("aa",1,3,"b")
+aa b
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+char_length(left(@a:='теÑÑ‚',5)) length(@a) @a
+4 8 теÑÑ‚
+create table t1 ENGINE heap select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+select * from t1;
+date_format("2004-01-19 10:10:10", "%Y-%m-%d")
+2004-01-19
+drop table t1;
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1) engine heap;
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+hex(s1)
+66E97672696572
+drop table t1;
+create table t1 (s1 char(20) character set koi8r) engine heap;
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+hex(s1) s1
+E6C5D7 Фев
+E6C5D7D2C1CCD1 ФевралÑ
+F0CEC4 Пнд
+F0CFCEC5C4C5CCD8CEC9CB Понедельник
+drop table t1;
+set LC_TIME_NAMES='en_US';
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4) engine heap;
+insert into t1 values (_koi8r'ÁÂ');
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+s1 hex(s1) char_length(s1) octet_length(s1)
+Á D0B0 1 2
+drop table t1;
+create table t1 (s1 varchar(255) character set utf8mb4) engine heap;
+insert into t1 select repeat('a',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161
+61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61
+D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+255 255
+382 255
+383 255
+510 255
+510 255
+drop table t1;
+create table t1 (s1 varchar(255) character set utf8mb4) engine heap;
+insert into t1 select repeat('a',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+255 255
+382 255
+383 255
+510 255
+510 255
+drop table t1;
+create table t1 (s1 char(10) character set utf8mb4) engine heap;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 varchar(10) character set utf8mb4) engine heap;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+a a
+test test
+DROP TABLE t1;
+create table t1 (a char(255) character set utf8mb4) engine heap;
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a != 'b';
+a
+drop table t1;
+set collation_connection=utf8mb4_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names utf8mb4;
+set names utf8mb4;
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci) ENGINE heap;
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4) engine heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('aaaa','проба') CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('проба');
+select * from t1;
+a
+проба
+create table t2 engine heap select ifnull(a,a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+select * from t2;
+ifnull(a,a)
+проба
+drop table t1;
+drop table t2;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine heap;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=heap;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine heap;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=heap;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=heap;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10))) engine heap;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2))) engine heap;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=heap;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using btree (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using hash (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine= heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+a
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) ENGINE= heap DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+length(subject)
+3
+432
+SELECT length(subject) FROM t1 ORDER BY 1;
+length(subject)
+3
+432
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (
+a int primary key,
+b varchar(6),
+index b3(b(3))
+) engine=heap character set=utf8mb4;
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+alter table t1 engine=innodb;
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+drop table t1;
+create table t1 (
+a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+) engine heap;
+create table t2 engine heap select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(5) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+drop table t2;
+drop table t1;
+select 'c' like '\_' as want0;
+want0
+0
+SELECT SUBSTR('ваÑÑ',-2);
+SUBSTR('ваÑÑ',-2)
+ÑÑ
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci) engine heap;
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('TEST');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('test');
+id a
+1 Test
+drop table t1;
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)
+阅000
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB))
+E99885303030
+select soundex(_utf8mb4 0xD091D092D093);
+soundex(_utf8mb4 0xD091D092D093)
+Б000
+select hex(soundex(_utf8mb4 0xD091D092D093));
+hex(soundex(_utf8mb4 0xD091D092D093))
+D091303030
+SET collation_connection='utf8mb4_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_general_ci 6109
+utf8mb4_general_ci 61
+utf8mb4_general_ci 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8mb4_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
+SET collation_connection='utf8mb4_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_bin 6109
+utf8mb4_bin 61
+utf8mb4_bin 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+CREATE TABLE t1 (
+user varchar(255) NOT NULL default ''
+) ENGINE=heap DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+CHARSET('a')
+utf8mb4
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+user c
+one <one>
+two <two>
+DROP TABLE t1;
+create table t1 (f1 varchar(1) not null) default charset utf8mb4 engine heap;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+concat(concat(_latin1'->',f1),_latin1'<-')
+-><-
+-><-
+drop table t1;
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+convert(_koi8r'?' using utf8mb4) < convert(_koi8r'?' using utf8mb4)
+1
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4 engine heap;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+ifnull(a,'')
+test
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+h
++++
+NULL
+select ifnull(NULL, _utf8mb4'string');
+ifnull(NULL, _utf8mb4'string')
+string
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci) engine heap;
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+s1
+I
+Y
+select * from t1 where 'K' > s1 and s1 = 'Y';
+s1
+I
+Y
+drop table t1;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci) engine heap;
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where 'd' < s1 and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+s1
+cH
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+s1
+cH
+drop table t1;
+create table t1 (a varchar(255)) default character set utf8mb4 engine heap;
+insert into t1 values (1.0);
+drop table t1;
+create table t1 (
+id int not null,
+city varchar(20) not null,
+key (city(7),id)
+) character set=utf8mb4 engine heap;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+id city
+2 Durban
+select * from t1 where city = 'Durban ';
+id city
+2 Durban
+drop table t1;
+create table t1 (x set('A', 'B') default 0) character set utf8mb4 engine heap;
+ERROR 42000: Invalid default value for 'x'
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4 engine heap;
+ERROR 42000: Invalid default value for 'x'
+SET NAMES UTF8;
+CREATE TABLE t1 (
+`id` int(20) NOT NULL auto_increment,
+`country` varchar(100) NOT NULL default '',
+`shortcode` varchar(100) NOT NULL default '',
+`operator` varchar(100) NOT NULL default '',
+`momid` varchar(30) NOT NULL default '',
+`keyword` varchar(160) NOT NULL default '',
+`content` varchar(160) NOT NULL default '',
+`second_token` varchar(160) default NULL,
+`gateway_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+`msisdn` varchar(15) NOT NULL default '',
+PRIMARY KEY (`id`),
+UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+KEY `IX_mobile_originated_message_keyword` (`keyword`),
+KEY `IX_mobile_originated_message_created` (`created`),
+KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=heap DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+CREATE TABLE t2 (
+`msisdn` varchar(15) NOT NULL default '',
+`operator_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=heap DEFAULT CHARSET=utf8mb4;
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+content msisdn
+ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми 1234567890
+11 g 1234567890
+DROP TABLE t1,t2;
+create table t1 (a char(20) character set utf8mb4) engine heap;
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1265 Data truncated for column 'a' at row 2
+select char_length(a), length(a), a from t1 order by a;
+char_length(a) length(a) a
+2 2 12
+2 4 ан
+drop table t1;
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+'andre%' like 'andreñ%' escape 'ñ'
+1
+set names utf8mb4;
+select 'a\\' like 'a\\';
+'a\\' like 'a\\'
+1
+select 'aa\\' like 'a%\\';
+'aa\\' like 'a%\\'
+1
+create table t1 (a char(10), key(a)) character set utf8mb4 engine heap;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+CREATE TABLE t1 (
+a varchar(255) NOT NULL default '',
+KEY a (a)
+) ENGINE=heap DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+hex(a)
+5B
+E880BD
+drop table t1;
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4 engine heap;
+select * from t1 where find_in_set('-1', a);
+a
+drop table t1;
+create table t1 (a int) engine heap;
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+char(a)
+0
+1
+2
+drop table t1;
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+item
+Cote d'Ivoire
+Cote d'Ivoire
+\
+\
+DROP TABLE t1;
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=heap DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uU');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4) engine heap;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+before_delete_general_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+after_delete_general_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci) engine heap;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+before_delete_unicode_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+after_delete_unicode_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin) engine heap;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+before_delete_bin
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+after_delete_bin
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=heap default character set utf8mb4 collate utf8mb4_general_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+gci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+gci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=heap default character set utf8mb4 collate utf8mb4_unicode_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+uci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+uci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=heap default character set utf8mb4 collate utf8mb4_bin;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+bin1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+bin2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+b int,
+f varchar(128) default 'XXX',
+INDEX (a(4))
+) ENGINE=heap DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+(1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+(4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+(7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+(10, 'eeeee', 40), (11, 'bbbbbb', 60);
+SELECT id, a, b FROM t1;
+id a b
+1 cccc 50
+10 eeeee 40
+11 bbbbbb 60
+2 cccc 70
+3 cccc 30
+4 cccc 30
+5 cccc 20
+6 bbbbbb 40
+7 dddd 30
+8 aaaa 10
+9 aaaa 50
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+id a b
+11 bbbbbb 60
+6 bbbbbb 40
+8 aaaa 10
+9 aaaa 50
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+id a
+11 bbbbbb
+6 bbbbbb
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+id a
+6 bbbbbb
+11 bbbbbb
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=heap DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+('Käli Käli 2-4'), ('Käli Käli 2-4'),
+('Käli Käli 2+4'), ('Käli Käli 2+4'),
+('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+CREATE TABLE t2 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=heap DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+INSERT INTO t2 VALUES
+('Kali Kali 2-4'), ('Kali Kali 2-4'),
+('Kali Kali 2+4'), ('Kali Kali 2+4'),
+('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+a
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+a
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL a NULL NULL NULL 12 Using where
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a a 53 const 4 Using where
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ALL a NULL NULL NULL 12 Using where
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 14 const 4 Using where
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a char(255) DEFAULT '',
+KEY(a(10))
+) ENGINE=heap DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+CREATE TABLE t1 (
+a char(255) DEFAULT ''
+) ENGINE=heap DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+SET NAMES latin2;
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+default charset=utf8mb4 collate=utf8mb4_unicode_ci engine heap;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+SELECT COUNT(*) FROM (SELECT DISTINCT a FROM t1) AS t2;
+COUNT(*)
+1
+explain select a from t1 group by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
+SELECT COUNT(*) FROM (SELECT a FROM t1 GROUP BY a) AS t2;
+COUNT(*)
+1
+drop table t1;
+create table t1(a char(10)) default charset utf8mb4 engine heap;
+insert into t1 values ('123'), ('456');
+explain
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+substr(Z.a,-1) a
+3 123
+6 456
+drop table t1;
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+Variable_name Value
+character_set_client utf8mb4
+character_set_connection latin1
+character_set_database latin1
+character_set_filesystem binary
+character_set_results utf8mb4
+character_set_server latin1
+character_set_system utf8
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4 ENGINE heap;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+35
+36
+37
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE crashtest ALL NULL NULL NULL NULL 4 Using filesort
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+-1000
+35
+36
+37
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FFFFFC'
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+SELECT id FROM t1;
+id
+aa
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1;
+id
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1 ORDER BY id;
+id
+aa
+xxx
+yyy
+DROP TABLE t1;
+create table t1 (
+a varchar(26) not null
+) default character set utf8mb4 ENGINE heap;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+a
+abcdefghijklmnopqrstuvwxyz
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmnopqrst
+alter table t1 change a a char(15) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmno
+alter table t1 change a a char(10) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghij
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcde
+drop table t1;
+create table t1 (
+a varchar(4000) not null
+) default character set utf8mb4 engine heap;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select length(a) from t1;
+length(a)
+3000
+drop table t1;
+set names utf8mb4;
+select hex(char(1 using utf8mb4));
+hex(char(1 using utf8mb4))
+01
+select char(0xd1,0x8f using utf8mb4);
+char(0xd1,0x8f using utf8mb4)
+select char(0xd18f using utf8mb4);
+char(0xd18f using utf8mb4)
+select char(53647 using utf8mb4);
+char(53647 using utf8mb4)
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select char(195 using utf8mb4);
+char(195 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C3'
+select char(196 using utf8mb4);
+char(196 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C4'
+select char(2557 using utf8mb4);
+char(2557 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FD'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select hex(convert(char(2557 using latin1) using utf8mb4));
+hex(convert(char(2557 using latin1) using utf8mb4))
+09C3BD
+select hex(char(195));
+hex(char(195))
+C3
+select hex(char(196));
+hex(char(196))
+C4
+select hex(char(2557));
+hex(char(2557))
+09FD
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4 engine heap;
+create table t2 (a char(1)) default character set utf8mb4 engine heap;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+a
+a
+i
+ã‚
+ã„
+drop table t1,t2;
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10)) engine heap;
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+a b
+bar kostja
+set @a:='kostja';
+execute my_stmt using @a;
+a b
+kostja bar
+set @a:=null;
+execute my_stmt using @a;
+a b
+drop table if exists t1;
+drop table if exists t1;
+drop view if exists v1, v2;
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci) engine heap;
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+4 utf8mb4_general_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+coercibility(col1) collation(col1)
+2 utf8mb4_unicode_ci
+2 utf8mb4_unicode_ci
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+0 utf8mb4_swedish_ci
+drop view v1, v2;
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine heap;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+concat(a, if(b>10, N'x', N'y'))
+ay
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine heap;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y'))
+ay
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine heap;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79))
+ay
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine heap;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+concat(a, if(b>10, 'x' 'x', 'y' 'y'))
+ayy
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+CREATE TABLE t1 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+PRIMARY KEY (colA)
+) ENGINE=heap DEFAULT CHARSET=latin1;
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+CREATE TABLE t2 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+KEY bad (colA,colB(3))
+) ENGINE=heap DEFAULT CHARSET=latin1;
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+colA colB colA colB
+1 foo 1 foo
+2 foo bar 2 foo bar
+DROP TABLE t1, t2;
+SELECT 'н1234567890' UNION SELECT _binary '1';
+н1234567890
+н1234567890
+1
+SELECT 'н1234567890' UNION SELECT 1;
+н1234567890
+н1234567890
+1
+SELECT '1' UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+SELECT 1 UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4 ENGINE heap;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT) ENGINE heap;
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+SELECT c FROM t1 UNION SELECT b FROM t2;
+c
+н1234567890
+1
+SELECT c FROM t1 UNION SELECT i FROM t2;
+c
+н1234567890
+1
+SELECT b FROM t2 UNION SELECT c FROM t1;
+b
+1
+н1234567890
+SELECT i FROM t2 UNION SELECT c FROM t1;
+i
+1
+н1234567890
+DROP TABLE t1, t2;
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE heap;
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP TABLE t1;
+#
+# Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+predicted_order int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+predicted_order hex(utf8mb4_encoding)
+1 E0B7B4
+2 E0B685
+3 E0B686
+4 E0B687
+5 E0B688
+6 E0B689
+7 E0B68A
+8 E0B68B
+9 E0B68C
+10 E0B68D
+11 E0B68E
+12 E0B68F
+13 E0B690
+14 E0B691
+15 E0B692
+16 E0B693
+17 E0B694
+18 E0B695
+19 E0B696
+20 E0B682
+21 E0B683
+22 E0B69A
+23 E0B69AE0B78F
+24 E0B69AE0B790
+25 E0B69AE0B791
+26 E0B69AE0B792
+27 E0B69AE0B793
+28 E0B69AE0B794
+29 E0B69AE0B796
+30 E0B69AE0B798
+31 E0B69AE0B7B2
+32 E0B69AE0B79F
+33 E0B69AE0B7B3
+34 E0B69AE0B799
+35 E0B69AE0B79A
+36 E0B69AE0B79B
+37 E0B69AE0B79C
+38 E0B69AE0B79D
+39 E0B69AE0B79E
+40 E0B69AE0B78A
+41 E0B69B
+42 E0B69C
+43 E0B69D
+44 E0B69E
+45 E0B69F
+46 E0B6A0
+47 E0B6A1
+48 E0B6A2
+49 E0B6A3
+50 E0B6A5
+51 E0B6A4
+52 E0B6A6
+53 E0B6A7
+54 E0B6A8
+55 E0B6A9
+56 E0B6AA
+57 E0B6AB
+58 E0B6AC
+59 E0B6AD
+60 E0B6AE
+61 E0B6AF
+62 E0B6B0
+63 E0B6B1
+64 E0B6B3
+65 E0B6B4
+66 E0B6B5
+67 E0B6B6
+68 E0B6B7
+69 E0B6B8
+70 E0B6B9
+71 E0B6BA
+72 E0B6BB
+73 E0B6BBE0B78AE2808D
+74 E0B6BD
+75 E0B780
+76 E0B781
+77 E0B782
+78 E0B783
+79 E0B784
+80 E0B785
+81 E0B786
+82 E0B78F
+83 E0B790
+84 E0B791
+85 E0B792
+86 E0B793
+87 E0B794
+88 E0B796
+89 E0B798
+90 E0B7B2
+91 E0B79F
+92 E0B7B3
+93 E0B799
+94 E0B79A
+95 E0B79B
+96 E0B79C
+97 E0B79D
+98 E0B79E
+99 E0B78A
+100 E0B78AE2808DE0B6BA
+101 E0B78AE2808DE0B6BB
+DROP TABLE t1;
+#
+# Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+#
+create table t1 (utf8mb4 char(1) character set utf8mb4) engine heap;
+Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x8F\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F0908080
+F0BFBFBF
+delete from t1;
+Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F2808080
+F2BFBFBF
+delete from t1;
+Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x90\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F4808080
+F48F8080
+drop table t1;
+#
+# Check strnxfrm() with odd length
+#
+set max_sort_length=5;
+select @@max_sort_length;
+@@max_sort_length
+5
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci) engine heap;
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+a
+a
+b
+c
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+a
+a
+b
+c
+drop table t1;
+set max_sort_length=default;
+#
+# Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+#
+#
+# Testing 4-byte values.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE heap;
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+(119070, x'f09d849e'),
+# HALF NOTE
+(119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+(119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+(120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+(120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+(1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+(917999, x'f3a087af');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+Warnings:
+Warning 1265 Data truncated for column 'utf8mb4_encoding' at row 1
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+u_decimal hex(utf8mb4_encoding)
+1114111 F48FBFBF
+119040 F09D8480
+119070 F09D849E
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119134 F09D859E
+119247 F09D878F
+120607 F09D9C9F
+120735 F09D9E9F
+65131 EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+917999 F3A087AF
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+Warnings:
+Warning 1366 Incorrect string value: '\xF5\x80\x80\x80' for column 'utf8mb4_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't1' AND column_name= 'utf8mb4_encoding';
+character_maximum_length character_octet_length
+10 40
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t2 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3 ENGINE heap;
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb3_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't2' AND column_name= 'utf8mb3_encoding';
+character_maximum_length character_octet_length
+10 30
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBD' for column 'utf8mb3_encoding' at row 1
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8'))
+EA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+F09D8480EA9DA8
+F09D849EEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D859EEA9DA8
+F09D878FEA9DA8
+F09D9C9FEA9DA8
+F09D9E9FEA9DA8
+F3A087AFEA9DA8
+F48FBFBFEA9DA8
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding))
+
+EA9DA8
+EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEFB9AB
+F09D8480
+F09D8480EA9DA8
+F09D8480EFB9AB
+F09D849E
+F09D849EEA9DA8
+F09D849EEFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D859E
+F09D859EEA9DA8
+F09D859EEFB9AB
+F09D878F
+F09D878FEA9DA8
+F09D878FEFB9AB
+F09D9C9F
+F09D9C9FEA9DA8
+F09D9C9FEFB9AB
+F09D9E9F
+F09D9E9FEA9DA8
+F09D9E9FEFB9AB
+F3A087AF
+F3A087AFEA9DA8
+F3A087AFEFB9AB
+F48FBFBF
+F48FBFBFEA9DA8
+F48FBFBFEFB9AB
+SELECT count(*) FROM t1, t2
+WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+count(*)
+33
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) NOT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+u_decimal hex(utf8mb4_encoding) utf8mb4_encoding
+1114111
+1114111 3F ?
+119040 3F ?
+119070 3F ?
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119134 3F ?
+119247 3F ?
+120607 3F ?
+120735 3F ?
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB ﹫?????﹫﹫?﹫
+917999 3F ?
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8mb4
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MEMORY DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t3 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8 ENGINE heap;
+INSERT INTO t3 SELECT * FROM t1;
+DROP TABLE IF EXISTS t4;
+CREATE TABLE t4 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE heap;
+INSERT INTO t3 SELECT * FROM t2;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+#
+# Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+#
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+CHARSET(CONCAT(_utf8mb4'a',_utf8'b'))
+utf8mb4
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL) ENGINE heap;
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+CONCAT(utf8mb4, _utf8 x'ea9da8')
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL) ENGINE heap;
+INSERT INTO t2 VALUES (x'ea9da8');
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+HEX(CONCAT(utf8mb4, utf8mb3))
+EA9DA8EA9DA8
+F48FBFBFEA9DA8
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+CHARSET(CONCAT(utf8mb4, utf8mb3))
+utf8mb4
+CREATE TEMPORARY TABLE t3 ENGINE heap AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TEMPORARY TABLE `t3` (
+ `utf8mb4` varchar(10) CHARACTER SET utf8mb4 NOT NULL,
+ `utf8mb3` varchar(10) CHARACTER SET utf8 NOT NULL,
+ `concat(utf8mb4,utf8mb3)` varchar(20) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MEMORY DEFAULT CHARSET=latin1
+DROP TEMPORARY TABLE t3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+utf8mb4 utf8mb3
+ô¿¿ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+utf8mb4 utf8mb3
+ê¨ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+utf8mb4 utf8mb3
+DROP TABLE t1;
+DROP TABLE t2;
+#
+# Check that mixing utf8mb4 with an invalid utf8 constant returns error
+#
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4) ENGINE heap;
+INSERT INTO t1 VALUES (x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+DROP TABLE t1;
+#
+# End of 5.5 tests
+#
+#
+# End of tests
+#
diff --git a/mysql-test/r/ctype_utf8mb4_innodb.result b/mysql-test/r/ctype_utf8mb4_innodb.result
new file mode 100644
index 00000000000..f9b36baadf1
--- /dev/null
+++ b/mysql-test/r/ctype_utf8mb4_innodb.result
@@ -0,0 +1,2407 @@
+drop table if exists t1,t2;
+#
+# Start of 5.5 tests
+#
+set names utf8mb4;
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+left(_utf8mb4 0xD0B0D0B1D0B2,1)
+а
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+right(_utf8mb4 0xD0B0D0B2D0B2,1)
+в
+select locate('he','hello');
+locate('he','hello')
+1
+select locate('he','hello',2);
+locate('he','hello',2)
+0
+select locate('lo','hello',2);
+locate('lo','hello',2)
+4
+select locate('HE','hello');
+locate('HE','hello')
+1
+select locate('HE','hello',2);
+locate('HE','hello',2)
+0
+select locate('LO','hello',2);
+locate('LO','hello',2)
+4
+select locate('HE','hello' collate utf8mb4_bin);
+locate('HE','hello' collate utf8mb4_bin)
+0
+select locate('HE','hello' collate utf8mb4_bin,2);
+locate('HE','hello' collate utf8mb4_bin,2)
+0
+select locate('LO','hello' collate utf8mb4_bin,2);
+locate('LO','hello' collate utf8mb4_bin,2)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin)
+0
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+length(_utf8mb4 0xD0B1) bit_length(_utf8mb4 0xD0B1) char_length(_utf8mb4 0xD0B1)
+2 16 1
+select 'a' like 'a';
+'a' like 'a'
+1
+select 'A' like 'a';
+'A' like 'a'
+1
+select 'A' like 'a' collate utf8mb4_bin;
+'A' like 'a' collate utf8mb4_bin
+0
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+_utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%')
+1
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+convert(_latin1'G?nter Andr?' using utf8mb4) like CONVERT(_latin1'G?NTER%' USING utf8mb4)
+1
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+SELECT 'a' = 'a ';
+'a' = 'a '
+1
+SELECT 'a\0' < 'a';
+'a\0' < 'a'
+1
+SELECT 'a\0' < 'a ';
+'a\0' < 'a '
+1
+SELECT 'a\t' < 'a';
+'a\t' < 'a'
+1
+SELECT 'a\t' < 'a ';
+'a\t' < 'a '
+1
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+'a' = 'a ' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+'a\0' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+'a\0' < 'a ' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+'a\t' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+'a\t' < 'a ' collate utf8mb4_bin
+1
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null) ENGINE InnoDB;
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+hex(a) STRCMP(a,'a') STRCMP(a,'a ')
+61 0 0
+61 0 0
+6100 -1 -1
+6109 -1 -1
+DROP TABLE t1;
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
+this is a test
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+insert("aa",100,1,"b") insert("aa",1,3,"b")
+aa b
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+char_length(left(@a:='теÑÑ‚',5)) length(@a) @a
+4 8 теÑÑ‚
+create table t1 ENGINE InnoDB select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+select * from t1;
+date_format("2004-01-19 10:10:10", "%Y-%m-%d")
+2004-01-19
+drop table t1;
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1) engine InnoDB;
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+hex(s1)
+66E97672696572
+drop table t1;
+create table t1 (s1 char(20) character set koi8r) engine InnoDB;
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+hex(s1) s1
+E6C5D7 Фев
+E6C5D7D2C1CCD1 ФевралÑ
+F0CEC4 Пнд
+F0CFCEC5C4C5CCD8CEC9CB Понедельник
+drop table t1;
+set LC_TIME_NAMES='en_US';
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4) engine InnoDB;
+insert into t1 values (_koi8r'ÁÂ');
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+s1 hex(s1) char_length(s1) octet_length(s1)
+Á D0B0 1 2
+drop table t1;
+create table t1 (s1 tinytext character set utf8mb4) engine InnoDB;
+insert into t1 select repeat('a',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161
+61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F
+D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+254 127
+254 127
+255 170
+255 170
+255 255
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine InnoDB;
+insert into t1 select repeat('a',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+65534 32767
+65534 32767
+65535 43690
+65535 43690
+65535 65535
+drop table t1;
+create table t1 (s1 char(10) character set utf8mb4) engine InnoDB;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 varchar(10) character set utf8mb4) engine InnoDB;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine InnoDB;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (a text character set utf8mb4, primary key(a(371))) engine InnoDB;
+ERROR 42000: Specified key was too long; max key length is 767 bytes
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+a a
+test test
+DROP TABLE t1;
+create table t1 (a char(255) character set utf8mb4) engine InnoDB;
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a != 'b';
+a
+drop table t1;
+set collation_connection=utf8mb4_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names utf8mb4;
+set names utf8mb4;
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci) ENGINE InnoDB;
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4) engine InnoDB;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('aaaa','проба') CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+insert into t1 values ('проба');
+select * from t1;
+a
+проба
+create table t2 engine InnoDB select ifnull(a,a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+select * from t2;
+ifnull(a,a)
+проба
+drop table t1;
+drop table t2;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine InnoDB;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=InnoDB;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine InnoDB;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=InnoDB;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=InnoDB;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=InnoDB;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=InnoDB;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10))) engine InnoDB;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2))) engine InnoDB;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=InnoDB;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=InnoDB;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=InnoDB;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=InnoDB;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=InnoDB;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using btree (str(2))
+) engine=InnoDB;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using hash (str(2))
+) engine=InnoDB;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine= InnoDB;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+a
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) ENGINE= InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+length(subject)
+3
+432
+SELECT length(subject) FROM t1 ORDER BY 1;
+length(subject)
+3
+432
+DROP TABLE t1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term TEXT NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(4))
+) ENGINE=InnoDB CHARSET=utf8mb4;
+INSERT INTO t1 SET list_id = 1, term = "letterc";
+INSERT INTO t1 SET list_id = 1, term = "letterb";
+INSERT INTO t1 SET list_id = 1, term = "lettera";
+INSERT INTO t1 SET list_id = 1, term = "letterd";
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
+id
+1
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
+id
+2
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
+id
+3
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
+id
+4
+DROP TABLE t1;
+SET NAMES latin1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term text NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(19))
+) ENGINE=InnoDB CHARSET=utf8mb4;
+INSERT INTO t1 set list_id = 1, term = "testétest";
+INSERT INTO t1 set list_id = 1, term = "testetest";
+INSERT INTO t1 set list_id = 1, term = "testètest";
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testétest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testètest");
+id term
+1 testétest
+2 testetest
+3 testètest
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (
+a int primary key,
+b varchar(6),
+index b3(b(3))
+) engine=InnoDB character set=utf8mb4;
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+alter table t1 engine=innodb;
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+drop table t1;
+create table t1 (
+a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+) engine InnoDB;
+create table t2 engine InnoDB select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(5) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+drop table t2;
+drop table t1;
+select 'c' like '\_' as want0;
+want0
+0
+SELECT SUBSTR('ваÑÑ',-2);
+SUBSTR('ваÑÑ',-2)
+ÑÑ
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci) engine InnoDB;
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('TEST');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('test');
+id a
+1 Test
+drop table t1;
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)
+阅000
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB))
+E99885303030
+select soundex(_utf8mb4 0xD091D092D093);
+soundex(_utf8mb4 0xD091D092D093)
+Б000
+select hex(soundex(_utf8mb4 0xD091D092D093));
+hex(soundex(_utf8mb4 0xD091D092D093))
+D091303030
+SET collation_connection='utf8mb4_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_general_ci 6109
+utf8mb4_general_ci 61
+utf8mb4_general_ci 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8mb4_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
+SET collation_connection='utf8mb4_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_bin 6109
+utf8mb4_bin 61
+utf8mb4_bin 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+CREATE TABLE t1 (
+user varchar(255) NOT NULL default ''
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+CHARSET('a')
+utf8mb4
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+user c
+one <one>
+two <two>
+DROP TABLE t1;
+create table t1 (f1 varchar(1) not null) default charset utf8mb4 engine InnoDB;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+concat(concat(_latin1'->',f1),_latin1'<-')
+-><-
+-><-
+drop table t1;
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+convert(_koi8r'?' using utf8mb4) < convert(_koi8r'?' using utf8mb4)
+1
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4 engine InnoDB;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+ifnull(a,'')
+test
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+h
++++
+NULL
+select ifnull(NULL, _utf8mb4'string');
+ifnull(NULL, _utf8mb4'string')
+string
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci) engine InnoDB;
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+s1
+I
+Y
+select * from t1 where 'K' > s1 and s1 = 'Y';
+s1
+I
+Y
+drop table t1;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci) engine InnoDB;
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where 'd' < s1 and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+s1
+cH
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+s1
+cH
+drop table t1;
+create table t1 (a varchar(255)) default character set utf8mb4 engine InnoDB;
+insert into t1 values (1.0);
+drop table t1;
+create table t1 (
+id int not null,
+city varchar(20) not null,
+key (city(7),id)
+) character set=utf8mb4 engine InnoDB;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+id city
+2 Durban
+select * from t1 where city = 'Durban ';
+id city
+2 Durban
+drop table t1;
+create table t1 (x set('A', 'B') default 0) character set utf8mb4 engine InnoDB;
+ERROR 42000: Invalid default value for 'x'
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4 engine InnoDB;
+ERROR 42000: Invalid default value for 'x'
+SET NAMES UTF8;
+CREATE TABLE t1 (
+`id` int(20) NOT NULL auto_increment,
+`country` varchar(100) NOT NULL default '',
+`shortcode` varchar(100) NOT NULL default '',
+`operator` varchar(100) NOT NULL default '',
+`momid` varchar(30) NOT NULL default '',
+`keyword` varchar(160) NOT NULL default '',
+`content` varchar(160) NOT NULL default '',
+`second_token` varchar(160) default NULL,
+`gateway_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+`msisdn` varchar(15) NOT NULL default '',
+PRIMARY KEY (`id`),
+UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+KEY `IX_mobile_originated_message_keyword` (`keyword`),
+KEY `IX_mobile_originated_message_created` (`created`),
+KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+CREATE TABLE t2 (
+`msisdn` varchar(15) NOT NULL default '',
+`operator_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+content msisdn
+ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми 1234567890
+11 g 1234567890
+DROP TABLE t1,t2;
+create table t1 (a char(20) character set utf8mb4) engine InnoDB;
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1265 Data truncated for column 'a' at row 2
+select char_length(a), length(a), a from t1 order by a;
+char_length(a) length(a) a
+2 2 12
+2 4 ан
+drop table t1;
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+'andre%' like 'andreñ%' escape 'ñ'
+1
+set names utf8mb4;
+select 'a\\' like 'a\\';
+'a\\' like 'a\\'
+1
+select 'aa\\' like 'a%\\';
+'aa\\' like 'a%\\'
+1
+create table t1 (a char(10), key(a)) character set utf8mb4 engine InnoDB;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+CREATE TABLE t1 (
+a varchar(255) NOT NULL default '',
+KEY a (a)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 767 bytes
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+hex(a)
+5B
+E880BD
+drop table t1;
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4 engine InnoDB;
+select * from t1 where find_in_set('-1', a);
+a
+drop table t1;
+create table t1 (a int) engine InnoDB;
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+char(a)
+0
+1
+2
+drop table t1;
+CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4) ENGINE InnoDB;
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+CREATE TEMPORARY TABLE t2 ENGINE InnoDB SELECT COALESCE(t) AS bug FROM t1;
+SELECT LENGTH(bug) FROM t2;
+LENGTH(bug)
+100
+DROP TABLE t2;
+DROP TABLE t1;
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+item
+Cote d'Ivoire
+Cote d'Ivoire
+\
+\
+DROP TABLE t1;
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 767 bytes
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uU');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4) engine InnoDB;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+before_delete_general_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+after_delete_general_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci) engine InnoDB;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+before_delete_unicode_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+after_delete_unicode_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin) engine InnoDB;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+before_delete_bin
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+after_delete_bin
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=InnoDB default character set utf8mb4 collate utf8mb4_general_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+gci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+gci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=InnoDB default character set utf8mb4 collate utf8mb4_unicode_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+uci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+uci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=InnoDB default character set utf8mb4 collate utf8mb4_bin;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+bin1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+bin2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+b int,
+f varchar(128) default 'XXX',
+INDEX (a(4))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+(1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+(4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+(7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+(10, 'eeeee', 40), (11, 'bbbbbb', 60);
+SELECT id, a, b FROM t1;
+id a b
+1 cccc 50
+10 eeeee 40
+11 bbbbbb 60
+2 cccc 70
+3 cccc 30
+4 cccc 30
+5 cccc 20
+6 bbbbbb 40
+7 dddd 30
+8 aaaa 10
+9 aaaa 50
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+id a b
+11 bbbbbb 60
+6 bbbbbb 40
+8 aaaa 10
+9 aaaa 50
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+id a
+11 bbbbbb
+6 bbbbbb
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+id a
+6 bbbbbb
+11 bbbbbb
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+('Käli Käli 2-4'), ('Käli Käli 2-4'),
+('Käli Käli 2+4'), ('Käli Käli 2+4'),
+('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+CREATE TABLE t2 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+INSERT INTO t2 VALUES
+('Kali Kali 2-4'), ('Kali Kali 2-4'),
+('Kali Kali 2+4'), ('Kali Kali 2+4'),
+('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+a
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+a
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 53 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a a 53 const 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 14 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 14 const 4 Using where; Using index
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a char(255) DEFAULT '',
+KEY(a(10))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+CREATE TABLE t1 (
+a char(255) DEFAULT ''
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+SET NAMES latin2;
+CREATE TABLE t1 (
+id int(11) NOT NULL default '0',
+tid int(11) NOT NULL default '0',
+val text NOT NULL,
+INDEX idx(tid, val(10))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(40988,72,'VOLNÝ ADSL'),(41009,72,'VOLNÝ ADSL'),
+(41032,72,'VOLNÝ ADSL'),(41038,72,'VOLNÝ ADSL'),
+(41063,72,'VOLNÝ ADSL'),(41537,72,'VOLNÝ ADSL Office'),
+(42141,72,'VOLNÝ ADSL'),(42565,72,'VOLNÝ ADSL Combi'),
+(42749,72,'VOLNÝ ADSL'),(44205,72,'VOLNÝ ADSL');
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNY ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE '%VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+ALTER TABLE t1 DROP KEY idx;
+ALTER TABLE t1 ADD KEY idx (tid,val(11));
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+DROP TABLE t1;
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+default charset=utf8mb4 collate=utf8mb4_unicode_ci engine InnoDB;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+SELECT COUNT(*) FROM (SELECT DISTINCT a FROM t1) AS t2;
+COUNT(*)
+1
+explain select a from t1 group by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
+SELECT COUNT(*) FROM (SELECT a FROM t1 GROUP BY a) AS t2;
+COUNT(*)
+1
+drop table t1;
+create table t1(a char(10)) default charset utf8mb4 engine InnoDB;
+insert into t1 values ('123'), ('456');
+explain
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+substr(Z.a,-1) a
+3 123
+6 456
+drop table t1;
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+Variable_name Value
+character_set_client utf8mb4
+character_set_connection latin1
+character_set_database latin1
+character_set_filesystem binary
+character_set_results utf8mb4
+character_set_server latin1
+character_set_system utf8
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4 ENGINE InnoDB;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+35
+36
+37
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE crashtest ALL NULL NULL NULL NULL 4 Using filesort
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+-1000
+35
+36
+37
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FFFFFC'
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+SELECT id FROM t1;
+id
+aa
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1;
+id
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1 ORDER BY id;
+id
+aa
+xxx
+yyy
+DROP TABLE t1;
+create table t1 (
+a varchar(26) not null
+) default character set utf8mb4 ENGINE InnoDB;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+a
+abcdefghijklmnopqrstuvwxyz
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmnopqrst
+alter table t1 change a a char(15) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmno
+alter table t1 change a a char(10) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghij
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcde
+drop table t1;
+create table t1 (
+a varchar(4000) not null
+) default character set utf8mb4 engine InnoDB;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select length(a) from t1;
+length(a)
+3000
+drop table t1;
+set names utf8mb4;
+select hex(char(1 using utf8mb4));
+hex(char(1 using utf8mb4))
+01
+select char(0xd1,0x8f using utf8mb4);
+char(0xd1,0x8f using utf8mb4)
+select char(0xd18f using utf8mb4);
+char(0xd18f using utf8mb4)
+select char(53647 using utf8mb4);
+char(53647 using utf8mb4)
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select char(195 using utf8mb4);
+char(195 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C3'
+select char(196 using utf8mb4);
+char(196 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C4'
+select char(2557 using utf8mb4);
+char(2557 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FD'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select hex(convert(char(2557 using latin1) using utf8mb4));
+hex(convert(char(2557 using latin1) using utf8mb4))
+09C3BD
+select hex(char(195));
+hex(char(195))
+C3
+select hex(char(196));
+hex(char(196))
+C4
+select hex(char(2557));
+hex(char(2557))
+09FD
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4 engine InnoDB;
+create table t2 (a char(1)) default character set utf8mb4 engine InnoDB;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+a
+a
+i
+ã‚
+ã„
+drop table t1,t2;
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10)) engine InnoDB;
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+a b
+bar kostja
+set @a:='kostja';
+execute my_stmt using @a;
+a b
+kostja bar
+set @a:=null;
+execute my_stmt using @a;
+a b
+drop table if exists t1;
+drop table if exists t1;
+drop view if exists v1, v2;
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci) engine InnoDB;
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+4 utf8mb4_general_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+coercibility(col1) collation(col1)
+2 utf8mb4_unicode_ci
+2 utf8mb4_unicode_ci
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+0 utf8mb4_swedish_ci
+drop view v1, v2;
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine InnoDB;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+concat(a, if(b>10, N'x', N'y'))
+ay
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine InnoDB;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y'))
+ay
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine InnoDB;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79))
+ay
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine InnoDB;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+concat(a, if(b>10, 'x' 'x', 'y' 'y'))
+ayy
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+CREATE TABLE t1 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+PRIMARY KEY (colA)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+CREATE TABLE t2 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+KEY bad (colA,colB(3))
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+colA colB colA colB
+1 foo 1 foo
+2 foo bar 2 foo bar
+DROP TABLE t1, t2;
+SELECT 'н1234567890' UNION SELECT _binary '1';
+н1234567890
+н1234567890
+1
+SELECT 'н1234567890' UNION SELECT 1;
+н1234567890
+н1234567890
+1
+SELECT '1' UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+SELECT 1 UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4 ENGINE InnoDB;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT) ENGINE InnoDB;
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+SELECT c FROM t1 UNION SELECT b FROM t2;
+c
+н1234567890
+1
+SELECT c FROM t1 UNION SELECT i FROM t2;
+c
+н1234567890
+1
+SELECT b FROM t2 UNION SELECT c FROM t1;
+b
+1
+н1234567890
+SELECT i FROM t2 UNION SELECT c FROM t1;
+i
+1
+н1234567890
+DROP TABLE t1, t2;
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE InnoDB;
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP TABLE t1;
+#
+# Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+predicted_order int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+predicted_order hex(utf8mb4_encoding)
+1 E0B7B4
+2 E0B685
+3 E0B686
+4 E0B687
+5 E0B688
+6 E0B689
+7 E0B68A
+8 E0B68B
+9 E0B68C
+10 E0B68D
+11 E0B68E
+12 E0B68F
+13 E0B690
+14 E0B691
+15 E0B692
+16 E0B693
+17 E0B694
+18 E0B695
+19 E0B696
+20 E0B682
+21 E0B683
+22 E0B69A
+23 E0B69AE0B78F
+24 E0B69AE0B790
+25 E0B69AE0B791
+26 E0B69AE0B792
+27 E0B69AE0B793
+28 E0B69AE0B794
+29 E0B69AE0B796
+30 E0B69AE0B798
+31 E0B69AE0B7B2
+32 E0B69AE0B79F
+33 E0B69AE0B7B3
+34 E0B69AE0B799
+35 E0B69AE0B79A
+36 E0B69AE0B79B
+37 E0B69AE0B79C
+38 E0B69AE0B79D
+39 E0B69AE0B79E
+40 E0B69AE0B78A
+41 E0B69B
+42 E0B69C
+43 E0B69D
+44 E0B69E
+45 E0B69F
+46 E0B6A0
+47 E0B6A1
+48 E0B6A2
+49 E0B6A3
+50 E0B6A5
+51 E0B6A4
+52 E0B6A6
+53 E0B6A7
+54 E0B6A8
+55 E0B6A9
+56 E0B6AA
+57 E0B6AB
+58 E0B6AC
+59 E0B6AD
+60 E0B6AE
+61 E0B6AF
+62 E0B6B0
+63 E0B6B1
+64 E0B6B3
+65 E0B6B4
+66 E0B6B5
+67 E0B6B6
+68 E0B6B7
+69 E0B6B8
+70 E0B6B9
+71 E0B6BA
+72 E0B6BB
+73 E0B6BBE0B78AE2808D
+74 E0B6BD
+75 E0B780
+76 E0B781
+77 E0B782
+78 E0B783
+79 E0B784
+80 E0B785
+81 E0B786
+82 E0B78F
+83 E0B790
+84 E0B791
+85 E0B792
+86 E0B793
+87 E0B794
+88 E0B796
+89 E0B798
+90 E0B7B2
+91 E0B79F
+92 E0B7B3
+93 E0B799
+94 E0B79A
+95 E0B79B
+96 E0B79C
+97 E0B79D
+98 E0B79E
+99 E0B78A
+100 E0B78AE2808DE0B6BA
+101 E0B78AE2808DE0B6BB
+DROP TABLE t1;
+#
+# Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+#
+create table t1 (utf8mb4 char(1) character set utf8mb4) engine InnoDB;
+Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x8F\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F0908080
+F0BFBFBF
+delete from t1;
+Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F2808080
+F2BFBFBF
+delete from t1;
+Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x90\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F4808080
+F48F8080
+drop table t1;
+#
+# Check strnxfrm() with odd length
+#
+set max_sort_length=5;
+select @@max_sort_length;
+@@max_sort_length
+5
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci) engine InnoDB;
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+a
+a
+b
+c
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+a
+a
+b
+c
+drop table t1;
+set max_sort_length=default;
+#
+# Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+#
+CREATE TABLE t1 (
+clipid INT NOT NULL,
+Tape TINYTEXT,
+PRIMARY KEY (clipid),
+KEY tape(Tape(255))
+) CHARACTER SET=utf8mb4 ENGINE InnoDB;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 767 bytes
+ALTER TABLE t1 ADD mos TINYINT DEFAULT 0 AFTER clipid;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `clipid` int(11) NOT NULL,
+ `mos` tinyint(4) DEFAULT '0',
+ `Tape` tinytext,
+ PRIMARY KEY (`clipid`),
+ KEY `tape` (`Tape`(191))
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
+DROP TABLE t1;
+#
+# Testing 4-byte values.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE InnoDB;
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+(119070, x'f09d849e'),
+# HALF NOTE
+(119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+(119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+(120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+(120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+(1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+(917999, x'f3a087af');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+Warnings:
+Warning 1265 Data truncated for column 'utf8mb4_encoding' at row 1
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+u_decimal hex(utf8mb4_encoding)
+1114111 F48FBFBF
+119040 F09D8480
+119070 F09D849E
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119134 F09D859E
+119247 F09D878F
+120607 F09D9C9F
+120735 F09D9E9F
+65131 EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+917999 F3A087AF
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+Warnings:
+Warning 1366 Incorrect string value: '\xF5\x80\x80\x80' for column 'utf8mb4_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't1' AND column_name= 'utf8mb4_encoding';
+character_maximum_length character_octet_length
+10 40
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t2 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3 ENGINE InnoDB;
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb3_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't2' AND column_name= 'utf8mb3_encoding';
+character_maximum_length character_octet_length
+10 30
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBD' for column 'utf8mb3_encoding' at row 1
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8'))
+EA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+F09D8480EA9DA8
+F09D849EEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D859EEA9DA8
+F09D878FEA9DA8
+F09D9C9FEA9DA8
+F09D9E9FEA9DA8
+F3A087AFEA9DA8
+F48FBFBFEA9DA8
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding))
+
+EA9DA8
+EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEFB9AB
+F09D8480
+F09D8480EA9DA8
+F09D8480EFB9AB
+F09D849E
+F09D849EEA9DA8
+F09D849EEFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D859E
+F09D859EEA9DA8
+F09D859EEFB9AB
+F09D878F
+F09D878FEA9DA8
+F09D878FEFB9AB
+F09D9C9F
+F09D9C9FEA9DA8
+F09D9C9FEFB9AB
+F09D9E9F
+F09D9E9FEA9DA8
+F09D9E9FEFB9AB
+F3A087AF
+F3A087AFEA9DA8
+F3A087AFEFB9AB
+F48FBFBF
+F48FBFBFEA9DA8
+F48FBFBFEFB9AB
+SELECT count(*) FROM t1, t2
+WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+count(*)
+33
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+u_decimal hex(utf8mb4_encoding) utf8mb4_encoding
+1114111
+1114111 3F ?
+119040 3F ?
+119070 3F ?
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119134 3F ?
+119247 3F ?
+120607 3F ?
+120735 3F ?
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB ﹫?????﹫﹫?﹫
+917999 3F ?
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=InnoDB DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t3 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8 ENGINE InnoDB;
+INSERT INTO t3 SELECT * FROM t1;
+DROP TABLE IF EXISTS t4;
+CREATE TABLE t4 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE InnoDB;
+INSERT INTO t3 SELECT * FROM t2;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+#
+# Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+#
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+CHARSET(CONCAT(_utf8mb4'a',_utf8'b'))
+utf8mb4
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL) ENGINE InnoDB;
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+CONCAT(utf8mb4, _utf8 x'ea9da8')
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL) ENGINE InnoDB;
+INSERT INTO t2 VALUES (x'ea9da8');
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+HEX(CONCAT(utf8mb4, utf8mb3))
+EA9DA8EA9DA8
+F48FBFBFEA9DA8
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+CHARSET(CONCAT(utf8mb4, utf8mb3))
+utf8mb4
+CREATE TEMPORARY TABLE t3 ENGINE InnoDB AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TEMPORARY TABLE `t3` (
+ `utf8mb4` varchar(10) CHARACTER SET utf8mb4 NOT NULL,
+ `utf8mb3` varchar(10) CHARACTER SET utf8 NOT NULL,
+ `concat(utf8mb4,utf8mb3)` varchar(20) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=InnoDB DEFAULT CHARSET=latin1
+DROP TEMPORARY TABLE t3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+utf8mb4 utf8mb3
+ô¿¿ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+utf8mb4 utf8mb3
+ê¨ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+utf8mb4 utf8mb3
+DROP TABLE t1;
+DROP TABLE t2;
+#
+# Check that mixing utf8mb4 with an invalid utf8 constant returns error
+#
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4) ENGINE InnoDB;
+INSERT INTO t1 VALUES (x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+DROP TABLE t1;
+#
+# End of 5.5 tests
+#
+#
+# End of tests
+#
diff --git a/mysql-test/r/ctype_utf8mb4_myisam.result b/mysql-test/r/ctype_utf8mb4_myisam.result
new file mode 100644
index 00000000000..03f7358435d
--- /dev/null
+++ b/mysql-test/r/ctype_utf8mb4_myisam.result
@@ -0,0 +1,2407 @@
+drop table if exists t1,t2;
+#
+# Start of 5.5 tests
+#
+set names utf8mb4;
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+left(_utf8mb4 0xD0B0D0B1D0B2,1)
+а
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+right(_utf8mb4 0xD0B0D0B2D0B2,1)
+в
+select locate('he','hello');
+locate('he','hello')
+1
+select locate('he','hello',2);
+locate('he','hello',2)
+0
+select locate('lo','hello',2);
+locate('lo','hello',2)
+4
+select locate('HE','hello');
+locate('HE','hello')
+1
+select locate('HE','hello',2);
+locate('HE','hello',2)
+0
+select locate('LO','hello',2);
+locate('LO','hello',2)
+4
+select locate('HE','hello' collate utf8mb4_bin);
+locate('HE','hello' collate utf8mb4_bin)
+0
+select locate('HE','hello' collate utf8mb4_bin,2);
+locate('HE','hello' collate utf8mb4_bin,2)
+0
+select locate('LO','hello' collate utf8mb4_bin,2);
+locate('LO','hello' collate utf8mb4_bin,2)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin)
+0
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+length(_utf8mb4 0xD0B1) bit_length(_utf8mb4 0xD0B1) char_length(_utf8mb4 0xD0B1)
+2 16 1
+select 'a' like 'a';
+'a' like 'a'
+1
+select 'A' like 'a';
+'A' like 'a'
+1
+select 'A' like 'a' collate utf8mb4_bin;
+'A' like 'a' collate utf8mb4_bin
+0
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+_utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%')
+1
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+convert(_latin1'G?nter Andr?' using utf8mb4) like CONVERT(_latin1'G?NTER%' USING utf8mb4)
+1
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+SELECT 'a' = 'a ';
+'a' = 'a '
+1
+SELECT 'a\0' < 'a';
+'a\0' < 'a'
+1
+SELECT 'a\0' < 'a ';
+'a\0' < 'a '
+1
+SELECT 'a\t' < 'a';
+'a\t' < 'a'
+1
+SELECT 'a\t' < 'a ';
+'a\t' < 'a '
+1
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+'a' = 'a ' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+'a\0' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+'a\0' < 'a ' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+'a\t' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+'a\t' < 'a ' collate utf8mb4_bin
+1
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null) ENGINE MyISAM;
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+hex(a) STRCMP(a,'a') STRCMP(a,'a ')
+61 0 0
+61 0 0
+6100 -1 -1
+6109 -1 -1
+DROP TABLE t1;
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
+this is a test
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+insert("aa",100,1,"b") insert("aa",1,3,"b")
+aa b
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+char_length(left(@a:='теÑÑ‚',5)) length(@a) @a
+4 8 теÑÑ‚
+create table t1 ENGINE MyISAM select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t1;
+date_format("2004-01-19 10:10:10", "%Y-%m-%d")
+2004-01-19
+drop table t1;
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1) engine MyISAM;
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+hex(s1)
+66E97672696572
+drop table t1;
+create table t1 (s1 char(20) character set koi8r) engine MyISAM;
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+hex(s1) s1
+E6C5D7 Фев
+E6C5D7D2C1CCD1 ФевралÑ
+F0CEC4 Пнд
+F0CFCEC5C4C5CCD8CEC9CB Понедельник
+drop table t1;
+set LC_TIME_NAMES='en_US';
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4) engine MyISAM;
+insert into t1 values (_koi8r'ÁÂ');
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+s1 hex(s1) char_length(s1) octet_length(s1)
+Á D0B0 1 2
+drop table t1;
+create table t1 (s1 tinytext character set utf8mb4) engine MyISAM;
+insert into t1 select repeat('a',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161
+61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F
+D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+254 127
+254 127
+255 170
+255 170
+255 255
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine MyISAM;
+insert into t1 select repeat('a',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+65534 32767
+65534 32767
+65535 43690
+65535 43690
+65535 65535
+drop table t1;
+create table t1 (s1 char(10) character set utf8mb4) engine MyISAM;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 varchar(10) character set utf8mb4) engine MyISAM;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine MyISAM;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (a text character set utf8mb4, primary key(a(371))) engine MyISAM;
+ERROR 42000: Specified key was too long; max key length is 1000 bytes
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+a a
+test test
+DROP TABLE t1;
+create table t1 (a char(255) character set utf8mb4) engine MyISAM;
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a != 'b';
+a
+drop table t1;
+set collation_connection=utf8mb4_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names utf8mb4;
+set names utf8mb4;
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci) ENGINE MyISAM;
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4) engine MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('aaaa','проба') CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('проба');
+select * from t1;
+a
+проба
+create table t2 engine MyISAM select ifnull(a,a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+select * from t2;
+ifnull(a,a)
+проба
+drop table t1;
+drop table t2;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine MyISAM;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=MyISAM;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine MyISAM;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=MyISAM;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=MyISAM;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10))) engine MyISAM;
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+insert into t1 values ('aaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values ('aaaaaaaaaaaa');
+ERROR 23000: Duplicate entry 'aaaaaaaaaa' for key 'c'
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+c1
+1
+select c c2 from t1 where c='2';
+c2
+2
+select c c3 from t1 where c='3';
+c3
+3
+select c cx from t1 where c='x';
+cx
+x
+select c cy from t1 where c='y';
+cy
+y
+select c cz from t1 where c='z';
+cz
+z
+select c ca10 from t1 where c='aaaaaaaaaa';
+ca10
+aaaaaaaaaa
+select c cb20 from t1 where c=repeat('b',20);
+cb20
+bbbbbbbbbbbbbbbbbbbb
+drop table t1;
+create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2))) engine MyISAM;
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'aa' for key 'c'
+insert into t1 values ('b');
+insert into t1 values ('bb');
+insert into t1 values ('bbb');
+ERROR 23000: Duplicate entry 'bb' for key 'c'
+insert into t1 values ('а');
+insert into t1 values ('аа');
+insert into t1 values ('ааа');
+ERROR 23000: Duplicate entry 'аа' for key 'c'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'бб' for key 'c'
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+insert into t1 values ('ꪪꪪꪪ');
+ERROR 23000: Duplicate entry 'ꪪꪪ' for key 'c'
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING HASH
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=MyISAM;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `c` char(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL,
+ UNIQUE KEY `a` (`c`(1)) USING BTREE
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=MyISAM;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+insert into t1 values ('aa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('aaa');
+ERROR 23000: Duplicate entry 'a' for key 'a'
+insert into t1 values ('б');
+insert into t1 values ('бб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+insert into t1 values ('ббб');
+ERROR 23000: Duplicate entry 'б' for key 'a'
+select c as c_all from t1 order by c;
+c_all
+a
+b
+c
+d
+e
+f
+б
+select c as c_a from t1 where c='a';
+c_a
+a
+select c as c_a from t1 where c='б';
+c_a
+б
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=MyISAM;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=MyISAM;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using btree (str(2))
+) engine=MyISAM;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using hash (str(2))
+) engine=MyISAM;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine= MyISAM;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+a
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) ENGINE= MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+length(subject)
+3
+432
+SELECT length(subject) FROM t1 ORDER BY 1;
+length(subject)
+3
+432
+DROP TABLE t1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term TEXT NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(4))
+) ENGINE=MyISAM CHARSET=utf8mb4;
+INSERT INTO t1 SET list_id = 1, term = "letterc";
+INSERT INTO t1 SET list_id = 1, term = "letterb";
+INSERT INTO t1 SET list_id = 1, term = "lettera";
+INSERT INTO t1 SET list_id = 1, term = "letterd";
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
+id
+1
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
+id
+2
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
+id
+3
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
+id
+4
+DROP TABLE t1;
+SET NAMES latin1;
+CREATE TABLE t1 (
+id int unsigned NOT NULL auto_increment,
+list_id smallint unsigned NOT NULL,
+term text NOT NULL,
+PRIMARY KEY(id),
+INDEX(list_id, term(19))
+) ENGINE=MyISAM CHARSET=utf8mb4;
+INSERT INTO t1 set list_id = 1, term = "testétest";
+INSERT INTO t1 set list_id = 1, term = "testetest";
+INSERT INTO t1 set list_id = 1, term = "testètest";
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testétest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
+id term
+1 testétest
+2 testetest
+3 testètest
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testètest");
+id term
+1 testétest
+2 testetest
+3 testètest
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (
+a int primary key,
+b varchar(6),
+index b3(b(3))
+) engine=MyISAM character set=utf8mb4;
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+alter table t1 engine=innodb;
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+drop table t1;
+create table t1 (
+a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+) engine MyISAM;
+create table t2 engine MyISAM select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(5) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+drop table t2;
+drop table t1;
+select 'c' like '\_' as want0;
+want0
+0
+SELECT SUBSTR('ваÑÑ',-2);
+SUBSTR('ваÑÑ',-2)
+ÑÑ
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci) engine MyISAM;
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('TEST');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('test');
+id a
+1 Test
+drop table t1;
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)
+阅000
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB))
+E99885303030
+select soundex(_utf8mb4 0xD091D092D093);
+soundex(_utf8mb4 0xD091D092D093)
+Б000
+select hex(soundex(_utf8mb4 0xD091D092D093));
+hex(soundex(_utf8mb4 0xD091D092D093))
+D091303030
+SET collation_connection='utf8mb4_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_general_ci 6109
+utf8mb4_general_ci 61
+utf8mb4_general_ci 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8mb4_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
+SET collation_connection='utf8mb4_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_bin 6109
+utf8mb4_bin 61
+utf8mb4_bin 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+CREATE TABLE t1 (
+user varchar(255) NOT NULL default ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+CHARSET('a')
+utf8mb4
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+user c
+one <one>
+two <two>
+DROP TABLE t1;
+create table t1 (f1 varchar(1) not null) default charset utf8mb4 engine MyISAM;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+concat(concat(_latin1'->',f1),_latin1'<-')
+-><-
+-><-
+drop table t1;
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+convert(_koi8r'?' using utf8mb4) < convert(_koi8r'?' using utf8mb4)
+1
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4 engine MyISAM;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+ifnull(a,'')
+test
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+h
++++
+NULL
+select ifnull(NULL, _utf8mb4'string');
+ifnull(NULL, _utf8mb4'string')
+string
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci) engine MyISAM;
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+s1
+I
+Y
+select * from t1 where 'K' > s1 and s1 = 'Y';
+s1
+I
+Y
+drop table t1;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci) engine MyISAM;
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where 'd' < s1 and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+s1
+cH
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+s1
+cH
+drop table t1;
+create table t1 (a varchar(255)) default character set utf8mb4 engine MyISAM;
+insert into t1 values (1.0);
+drop table t1;
+create table t1 (
+id int not null,
+city varchar(20) not null,
+key (city(7),id)
+) character set=utf8mb4 engine MyISAM;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+id city
+2 Durban
+select * from t1 where city = 'Durban ';
+id city
+2 Durban
+drop table t1;
+create table t1 (x set('A', 'B') default 0) character set utf8mb4 engine MyISAM;
+ERROR 42000: Invalid default value for 'x'
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4 engine MyISAM;
+ERROR 42000: Invalid default value for 'x'
+SET NAMES UTF8;
+CREATE TABLE t1 (
+`id` int(20) NOT NULL auto_increment,
+`country` varchar(100) NOT NULL default '',
+`shortcode` varchar(100) NOT NULL default '',
+`operator` varchar(100) NOT NULL default '',
+`momid` varchar(30) NOT NULL default '',
+`keyword` varchar(160) NOT NULL default '',
+`content` varchar(160) NOT NULL default '',
+`second_token` varchar(160) default NULL,
+`gateway_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+`msisdn` varchar(15) NOT NULL default '',
+PRIMARY KEY (`id`),
+UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+KEY `IX_mobile_originated_message_keyword` (`keyword`),
+KEY `IX_mobile_originated_message_created` (`created`),
+KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+CREATE TABLE t2 (
+`msisdn` varchar(15) NOT NULL default '',
+`operator_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+content msisdn
+ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми 1234567890
+11 g 1234567890
+DROP TABLE t1,t2;
+create table t1 (a char(20) character set utf8mb4) engine MyISAM;
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1265 Data truncated for column 'a' at row 2
+select char_length(a), length(a), a from t1 order by a;
+char_length(a) length(a) a
+2 2 12
+2 4 ан
+drop table t1;
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+'andre%' like 'andreñ%' escape 'ñ'
+1
+set names utf8mb4;
+select 'a\\' like 'a\\';
+'a\\' like 'a\\'
+1
+select 'aa\\' like 'a%\\';
+'aa\\' like 'a%\\'
+1
+create table t1 (a char(10), key(a)) character set utf8mb4 engine MyISAM;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+CREATE TABLE t1 (
+a varchar(255) NOT NULL default '',
+KEY a (a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+hex(a)
+5B
+E880BD
+drop table t1;
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4 engine MyISAM;
+select * from t1 where find_in_set('-1', a);
+a
+drop table t1;
+create table t1 (a int) engine MyISAM;
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+char(a)
+0
+1
+2
+drop table t1;
+CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4) ENGINE MyISAM;
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+CREATE TEMPORARY TABLE t2 ENGINE MyISAM SELECT COALESCE(t) AS bug FROM t1;
+SELECT LENGTH(bug) FROM t2;
+LENGTH(bug)
+100
+DROP TABLE t2;
+DROP TABLE t1;
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+item
+Cote d'Ivoire
+Cote d'Ivoire
+\
+\
+DROP TABLE t1;
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uU');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4) engine MyISAM;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+before_delete_general_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+after_delete_general_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci) engine MyISAM;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+before_delete_unicode_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+after_delete_unicode_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin) engine MyISAM;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+before_delete_bin
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+after_delete_bin
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=MyISAM default character set utf8mb4 collate utf8mb4_general_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+gci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+gci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=MyISAM default character set utf8mb4 collate utf8mb4_unicode_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+uci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+uci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=MyISAM default character set utf8mb4 collate utf8mb4_bin;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+bin1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+bin2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+b int,
+f varchar(128) default 'XXX',
+INDEX (a(4))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+(1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+(4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+(7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+(10, 'eeeee', 40), (11, 'bbbbbb', 60);
+SELECT id, a, b FROM t1;
+id a b
+1 cccc 50
+10 eeeee 40
+11 bbbbbb 60
+2 cccc 70
+3 cccc 30
+4 cccc 30
+5 cccc 20
+6 bbbbbb 40
+7 dddd 30
+8 aaaa 10
+9 aaaa 50
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+id a b
+11 bbbbbb 60
+6 bbbbbb 40
+8 aaaa 10
+9 aaaa 50
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+id a
+11 bbbbbb
+6 bbbbbb
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+id a
+6 bbbbbb
+11 bbbbbb
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+('Käli Käli 2-4'), ('Käli Käli 2-4'),
+('Käli Käli 2+4'), ('Käli Käli 2+4'),
+('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+CREATE TABLE t2 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+INSERT INTO t2 VALUES
+('Kali Kali 2-4'), ('Kali Kali 2-4'),
+('Kali Kali 2+4'), ('Kali Kali 2+4'),
+('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+a
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+a
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 53 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a a 53 const 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 14 NULL 4 Using where; Using index
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 14 const 4 Using where; Using index
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a char(255) DEFAULT '',
+KEY(a(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+CREATE TABLE t1 (
+a char(255) DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+SET NAMES latin2;
+CREATE TABLE t1 (
+id int(11) NOT NULL default '0',
+tid int(11) NOT NULL default '0',
+val text NOT NULL,
+INDEX idx(tid, val(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(40988,72,'VOLNÝ ADSL'),(41009,72,'VOLNÝ ADSL'),
+(41032,72,'VOLNÝ ADSL'),(41038,72,'VOLNÝ ADSL'),
+(41063,72,'VOLNÝ ADSL'),(41537,72,'VOLNÝ ADSL Office'),
+(42141,72,'VOLNÝ ADSL'),(42565,72,'VOLNÝ ADSL Combi'),
+(42749,72,'VOLNÝ ADSL'),(44205,72,'VOLNÝ ADSL');
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNY ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+SELECT * FROM t1 WHERE tid=72 and val LIKE '%VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+ALTER TABLE t1 DROP KEY idx;
+ALTER TABLE t1 ADD KEY idx (tid,val(11));
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+id tid val
+40988 72 VOLNÝ ADSL
+41009 72 VOLNÝ ADSL
+41032 72 VOLNÝ ADSL
+41038 72 VOLNÝ ADSL
+41063 72 VOLNÝ ADSL
+42141 72 VOLNÝ ADSL
+42749 72 VOLNÝ ADSL
+44205 72 VOLNÝ ADSL
+DROP TABLE t1;
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+default charset=utf8mb4 collate=utf8mb4_unicode_ci engine MyISAM;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+SELECT COUNT(*) FROM (SELECT DISTINCT a FROM t1) AS t2;
+COUNT(*)
+1
+explain select a from t1 group by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
+SELECT COUNT(*) FROM (SELECT a FROM t1 GROUP BY a) AS t2;
+COUNT(*)
+1
+drop table t1;
+create table t1(a char(10)) default charset utf8mb4 engine MyISAM;
+insert into t1 values ('123'), ('456');
+explain
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+substr(Z.a,-1) a
+3 123
+6 456
+drop table t1;
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+Variable_name Value
+character_set_client utf8mb4
+character_set_connection latin1
+character_set_database latin1
+character_set_filesystem binary
+character_set_results utf8mb4
+character_set_server latin1
+character_set_system utf8
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4 ENGINE MyISAM;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+35
+36
+37
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE crashtest ALL NULL NULL NULL NULL 4 Using filesort
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+-1000
+35
+36
+37
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FFFFFC'
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+SELECT id FROM t1;
+id
+aa
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1;
+id
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1 ORDER BY id;
+id
+aa
+xxx
+yyy
+DROP TABLE t1;
+create table t1 (
+a varchar(26) not null
+) default character set utf8mb4 ENGINE MyISAM;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+a
+abcdefghijklmnopqrstuvwxyz
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmnopqrst
+alter table t1 change a a char(15) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmno
+alter table t1 change a a char(10) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghij
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcde
+drop table t1;
+create table t1 (
+a varchar(4000) not null
+) default character set utf8mb4 engine MyISAM;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select length(a) from t1;
+length(a)
+3000
+drop table t1;
+set names utf8mb4;
+select hex(char(1 using utf8mb4));
+hex(char(1 using utf8mb4))
+01
+select char(0xd1,0x8f using utf8mb4);
+char(0xd1,0x8f using utf8mb4)
+select char(0xd18f using utf8mb4);
+char(0xd18f using utf8mb4)
+select char(53647 using utf8mb4);
+char(53647 using utf8mb4)
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select char(195 using utf8mb4);
+char(195 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C3'
+select char(196 using utf8mb4);
+char(196 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C4'
+select char(2557 using utf8mb4);
+char(2557 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FD'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select hex(convert(char(2557 using latin1) using utf8mb4));
+hex(convert(char(2557 using latin1) using utf8mb4))
+09C3BD
+select hex(char(195));
+hex(char(195))
+C3
+select hex(char(196));
+hex(char(196))
+C4
+select hex(char(2557));
+hex(char(2557))
+09FD
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4 engine MyISAM;
+create table t2 (a char(1)) default character set utf8mb4 engine MyISAM;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+a
+a
+i
+ã‚
+ã„
+drop table t1,t2;
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10)) engine MyISAM;
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+a b
+bar kostja
+set @a:='kostja';
+execute my_stmt using @a;
+a b
+kostja bar
+set @a:=null;
+execute my_stmt using @a;
+a b
+drop table if exists t1;
+drop table if exists t1;
+drop view if exists v1, v2;
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci) engine MyISAM;
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+4 utf8mb4_general_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+coercibility(col1) collation(col1)
+2 utf8mb4_unicode_ci
+2 utf8mb4_unicode_ci
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+0 utf8mb4_swedish_ci
+drop view v1, v2;
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine MyISAM;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+concat(a, if(b>10, N'x', N'y'))
+ay
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine MyISAM;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y'))
+ay
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine MyISAM;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79))
+ay
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine MyISAM;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+concat(a, if(b>10, 'x' 'x', 'y' 'y'))
+ayy
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+CREATE TABLE t1 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+PRIMARY KEY (colA)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+CREATE TABLE t2 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+KEY bad (colA,colB(3))
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+colA colB colA colB
+1 foo 1 foo
+2 foo bar 2 foo bar
+DROP TABLE t1, t2;
+SELECT 'н1234567890' UNION SELECT _binary '1';
+н1234567890
+н1234567890
+1
+SELECT 'н1234567890' UNION SELECT 1;
+н1234567890
+н1234567890
+1
+SELECT '1' UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+SELECT 1 UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4 ENGINE MyISAM;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT) ENGINE MyISAM;
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+SELECT c FROM t1 UNION SELECT b FROM t2;
+c
+н1234567890
+1
+SELECT c FROM t1 UNION SELECT i FROM t2;
+c
+н1234567890
+1
+SELECT b FROM t2 UNION SELECT c FROM t1;
+b
+1
+н1234567890
+SELECT i FROM t2 UNION SELECT c FROM t1;
+i
+1
+н1234567890
+DROP TABLE t1, t2;
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE MyISAM;
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP TABLE t1;
+#
+# Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+predicted_order int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+predicted_order hex(utf8mb4_encoding)
+1 E0B7B4
+2 E0B685
+3 E0B686
+4 E0B687
+5 E0B688
+6 E0B689
+7 E0B68A
+8 E0B68B
+9 E0B68C
+10 E0B68D
+11 E0B68E
+12 E0B68F
+13 E0B690
+14 E0B691
+15 E0B692
+16 E0B693
+17 E0B694
+18 E0B695
+19 E0B696
+20 E0B682
+21 E0B683
+22 E0B69A
+23 E0B69AE0B78F
+24 E0B69AE0B790
+25 E0B69AE0B791
+26 E0B69AE0B792
+27 E0B69AE0B793
+28 E0B69AE0B794
+29 E0B69AE0B796
+30 E0B69AE0B798
+31 E0B69AE0B7B2
+32 E0B69AE0B79F
+33 E0B69AE0B7B3
+34 E0B69AE0B799
+35 E0B69AE0B79A
+36 E0B69AE0B79B
+37 E0B69AE0B79C
+38 E0B69AE0B79D
+39 E0B69AE0B79E
+40 E0B69AE0B78A
+41 E0B69B
+42 E0B69C
+43 E0B69D
+44 E0B69E
+45 E0B69F
+46 E0B6A0
+47 E0B6A1
+48 E0B6A2
+49 E0B6A3
+50 E0B6A5
+51 E0B6A4
+52 E0B6A6
+53 E0B6A7
+54 E0B6A8
+55 E0B6A9
+56 E0B6AA
+57 E0B6AB
+58 E0B6AC
+59 E0B6AD
+60 E0B6AE
+61 E0B6AF
+62 E0B6B0
+63 E0B6B1
+64 E0B6B3
+65 E0B6B4
+66 E0B6B5
+67 E0B6B6
+68 E0B6B7
+69 E0B6B8
+70 E0B6B9
+71 E0B6BA
+72 E0B6BB
+73 E0B6BBE0B78AE2808D
+74 E0B6BD
+75 E0B780
+76 E0B781
+77 E0B782
+78 E0B783
+79 E0B784
+80 E0B785
+81 E0B786
+82 E0B78F
+83 E0B790
+84 E0B791
+85 E0B792
+86 E0B793
+87 E0B794
+88 E0B796
+89 E0B798
+90 E0B7B2
+91 E0B79F
+92 E0B7B3
+93 E0B799
+94 E0B79A
+95 E0B79B
+96 E0B79C
+97 E0B79D
+98 E0B79E
+99 E0B78A
+100 E0B78AE2808DE0B6BA
+101 E0B78AE2808DE0B6BB
+DROP TABLE t1;
+#
+# Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+#
+create table t1 (utf8mb4 char(1) character set utf8mb4) engine MyISAM;
+Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x8F\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F0908080
+F0BFBFBF
+delete from t1;
+Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F2808080
+F2BFBFBF
+delete from t1;
+Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x90\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F4808080
+F48F8080
+drop table t1;
+#
+# Check strnxfrm() with odd length
+#
+set max_sort_length=5;
+select @@max_sort_length;
+@@max_sort_length
+5
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci) engine MyISAM;
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+a
+a
+b
+c
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+a
+a
+b
+c
+drop table t1;
+set max_sort_length=default;
+#
+# Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+#
+CREATE TABLE t1 (
+clipid INT NOT NULL,
+Tape TINYTEXT,
+PRIMARY KEY (clipid),
+KEY tape(Tape(255))
+) CHARACTER SET=utf8mb4 ENGINE MyISAM;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+ALTER TABLE t1 ADD mos TINYINT DEFAULT 0 AFTER clipid;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `clipid` int(11) NOT NULL,
+ `mos` tinyint(4) DEFAULT '0',
+ `Tape` tinytext,
+ PRIMARY KEY (`clipid`),
+ KEY `tape` (`Tape`(250))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4
+DROP TABLE t1;
+#
+# Testing 4-byte values.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE MyISAM;
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+(119070, x'f09d849e'),
+# HALF NOTE
+(119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+(119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+(120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+(120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+(1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+(917999, x'f3a087af');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+Warnings:
+Warning 1265 Data truncated for column 'utf8mb4_encoding' at row 1
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+u_decimal hex(utf8mb4_encoding)
+1114111 F48FBFBF
+119040 F09D8480
+119070 F09D849E
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119134 F09D859E
+119247 F09D878F
+120607 F09D9C9F
+120735 F09D9E9F
+65131 EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+917999 F3A087AF
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+Warnings:
+Warning 1366 Incorrect string value: '\xF5\x80\x80\x80' for column 'utf8mb4_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't1' AND column_name= 'utf8mb4_encoding';
+character_maximum_length character_octet_length
+10 40
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t2 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3 ENGINE MyISAM;
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb3_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't2' AND column_name= 'utf8mb3_encoding';
+character_maximum_length character_octet_length
+10 30
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBD' for column 'utf8mb3_encoding' at row 1
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8'))
+EA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+F09D8480EA9DA8
+F09D849EEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D859EEA9DA8
+F09D878FEA9DA8
+F09D9C9FEA9DA8
+F09D9E9FEA9DA8
+F3A087AFEA9DA8
+F48FBFBFEA9DA8
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding))
+
+EA9DA8
+EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEFB9AB
+F09D8480
+F09D8480EA9DA8
+F09D8480EFB9AB
+F09D849E
+F09D849EEA9DA8
+F09D849EEFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D859E
+F09D859EEA9DA8
+F09D859EEFB9AB
+F09D878F
+F09D878FEA9DA8
+F09D878FEFB9AB
+F09D9C9F
+F09D9C9FEA9DA8
+F09D9C9FEFB9AB
+F09D9E9F
+F09D9E9FEA9DA8
+F09D9E9FEFB9AB
+F3A087AF
+F3A087AFEA9DA8
+F3A087AFEFB9AB
+F48FBFBF
+F48FBFBFEA9DA8
+F48FBFBFEFB9AB
+SELECT count(*) FROM t1, t2
+WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+count(*)
+33
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+u_decimal hex(utf8mb4_encoding) utf8mb4_encoding
+1114111
+1114111 3F ?
+119040 3F ?
+119070 3F ?
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119134 3F ?
+119247 3F ?
+120607 3F ?
+120735 3F ?
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB ﹫?????﹫﹫?﹫
+917999 3F ?
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t3 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8 ENGINE MyISAM;
+INSERT INTO t3 SELECT * FROM t1;
+DROP TABLE IF EXISTS t4;
+CREATE TABLE t4 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE MyISAM;
+INSERT INTO t3 SELECT * FROM t2;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+#
+# Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+#
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+CHARSET(CONCAT(_utf8mb4'a',_utf8'b'))
+utf8mb4
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL) ENGINE MyISAM;
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+CONCAT(utf8mb4, _utf8 x'ea9da8')
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL) ENGINE MyISAM;
+INSERT INTO t2 VALUES (x'ea9da8');
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+HEX(CONCAT(utf8mb4, utf8mb3))
+EA9DA8EA9DA8
+F48FBFBFEA9DA8
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+CHARSET(CONCAT(utf8mb4, utf8mb3))
+utf8mb4
+CREATE TEMPORARY TABLE t3 ENGINE MyISAM AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+Table Create Table
+t3 CREATE TEMPORARY TABLE `t3` (
+ `utf8mb4` varchar(10) CHARACTER SET utf8mb4 NOT NULL,
+ `utf8mb3` varchar(10) CHARACTER SET utf8 NOT NULL,
+ `concat(utf8mb4,utf8mb3)` varchar(20) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+DROP TEMPORARY TABLE t3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+utf8mb4 utf8mb3
+ô¿¿ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+utf8mb4 utf8mb3
+ê¨ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+utf8mb4 utf8mb3
+DROP TABLE t1;
+DROP TABLE t2;
+#
+# Check that mixing utf8mb4 with an invalid utf8 constant returns error
+#
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4) ENGINE MyISAM;
+INSERT INTO t1 VALUES (x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+DROP TABLE t1;
+#
+# End of 5.5 tests
+#
+#
+# End of tests
+#
diff --git a/mysql-test/r/ctype_utf8mb4_ndb.result b/mysql-test/r/ctype_utf8mb4_ndb.result
new file mode 100644
index 00000000000..2a11c13ce57
--- /dev/null
+++ b/mysql-test/r/ctype_utf8mb4_ndb.result
@@ -0,0 +1,1876 @@
+drop table if exists t1,t2;
+#
+# Start of 5.5 tests
+#
+set names utf8mb4;
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+left(_utf8mb4 0xD0B0D0B1D0B2,1)
+а
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+right(_utf8mb4 0xD0B0D0B2D0B2,1)
+в
+select locate('he','hello');
+locate('he','hello')
+1
+select locate('he','hello',2);
+locate('he','hello',2)
+0
+select locate('lo','hello',2);
+locate('lo','hello',2)
+4
+select locate('HE','hello');
+locate('HE','hello')
+1
+select locate('HE','hello',2);
+locate('HE','hello',2)
+0
+select locate('LO','hello',2);
+locate('LO','hello',2)
+4
+select locate('HE','hello' collate utf8mb4_bin);
+locate('HE','hello' collate utf8mb4_bin)
+0
+select locate('HE','hello' collate utf8mb4_bin,2);
+locate('HE','hello' collate utf8mb4_bin,2)
+0
+select locate('LO','hello' collate utf8mb4_bin,2);
+locate('LO','hello' collate utf8mb4_bin,2)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2)
+2
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2)
+2
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin)
+0
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin)
+0
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+length(_utf8mb4 0xD0B1) bit_length(_utf8mb4 0xD0B1) char_length(_utf8mb4 0xD0B1)
+2 16 1
+select 'a' like 'a';
+'a' like 'a'
+1
+select 'A' like 'a';
+'A' like 'a'
+1
+select 'A' like 'a' collate utf8mb4_bin;
+'A' like 'a' collate utf8mb4_bin
+0
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+_utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%')
+1
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+convert(_latin1'G?nter Andr?' using utf8mb4) like CONVERT(_latin1'G?NTER%' USING utf8mb4)
+1
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+CONVERT(_koi8r'????' USING utf8mb4) LIKE CONVERT(_koi8r'????' USING utf8mb4)
+1
+SELECT 'a' = 'a ';
+'a' = 'a '
+1
+SELECT 'a\0' < 'a';
+'a\0' < 'a'
+1
+SELECT 'a\0' < 'a ';
+'a\0' < 'a '
+1
+SELECT 'a\t' < 'a';
+'a\t' < 'a'
+1
+SELECT 'a\t' < 'a ';
+'a\t' < 'a '
+1
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+'a' = 'a ' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+'a\0' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+'a\0' < 'a ' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+'a\t' < 'a' collate utf8mb4_bin
+1
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+'a\t' < 'a ' collate utf8mb4_bin
+1
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null) ENGINE ndb;
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+hex(a) STRCMP(a,'a') STRCMP(a,'a ')
+61 0 0
+61 0 0
+6100 -1 -1
+6109 -1 -1
+DROP TABLE t1;
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+insert('txs',2,1,'hi') insert('is ',4,0,'a') insert('txxxxt',2,4,'es')
+this is a test
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+insert("aa",100,1,"b") insert("aa",1,3,"b")
+aa b
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+char_length(left(@a:='теÑÑ‚',5)) length(@a) @a
+4 8 теÑÑ‚
+create table t1 ENGINE ndb select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `date_format("2004-01-19 10:10:10", "%Y-%m-%d")` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=latin1
+select * from t1;
+date_format("2004-01-19 10:10:10", "%Y-%m-%d")
+2004-01-19
+drop table t1;
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1) engine ndb;
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+hex(s1)
+66E97672696572
+drop table t1;
+create table t1 (s1 char(20) character set koi8r) engine ndb;
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+hex(s1) s1
+E6C5D7 Фев
+E6C5D7D2C1CCD1 ФевралÑ
+F0CEC4 Пнд
+F0CFCEC5C4C5CCD8CEC9CB Понедельник
+drop table t1;
+set LC_TIME_NAMES='en_US';
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4) engine ndb;
+insert into t1 values (_koi8r'ÁÂ');
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+s1 hex(s1) char_length(s1) octet_length(s1)
+Á D0B0 1 2
+drop table t1;
+create table t1 (s1 tinytext character set utf8mb4) engine ndb;
+Warnings:
+Warning 1478 Table storage engine 'ndbcluster' does not support the create option 'Binlog of table with BLOB attribute and no PK'
+insert into t1 select repeat('a',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',300);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161
+61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F
+D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61D18F61
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+D18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18FD18F
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+254 127
+254 127
+255 170
+255 170
+255 255
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine ndb;
+Warnings:
+Warning 1478 Table storage engine 'ndbcluster' does not support the create option 'Binlog of table with BLOB attribute and no PK'
+insert into t1 select repeat('a',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ñ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('aÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('Ña',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+insert into t1 select repeat('ÑÑ',66000);
+Warnings:
+Warning 1265 Data truncated for column 's1' at row 1
+select length(s1),char_length(s1) from t1;
+length(s1) char_length(s1)
+65534 32767
+65534 32767
+65535 43690
+65535 43690
+65535 65535
+drop table t1;
+create table t1 (s1 char(10) character set utf8mb4) engine ndb;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 varchar(10) character set utf8mb4) engine ndb;
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (s1 text character set utf8mb4) engine ndb;
+Warnings:
+Warning 1478 Table storage engine 'ndbcluster' does not support the create option 'Binlog of table with BLOB attribute and no PK'
+insert into t1 values (0x41FF);
+Warnings:
+Warning 1366 Incorrect string value: '\xFF' for column 's1' at row 1
+select hex(s1) from t1;
+hex(s1)
+41
+drop table t1;
+create table t1 (a text character set utf8mb4, primary key(a(371))) engine ndb;
+ERROR 42000: BLOB column 'a' can't be used in key specification with the used table type
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+a a
+test test
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+a a
+test test
+DROP TABLE t1;
+create table t1 (a char(255) character set utf8mb4) engine ndb;
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a = 'b';
+a
+b
+b
+select * from t1 where a = 'b' and a != 'b';
+a
+drop table t1;
+set collation_connection=utf8mb4_general_ci;
+drop table if exists t1;
+create table t1 as
+select repeat(' ', 64) as s1, repeat(' ',64) as s2
+union
+select null, null;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `s1` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL,
+ `s2` varchar(64) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=MyISAM DEFAULT CHARSET=latin1
+delete from t1;
+insert into t1 values('aaa','aaa');
+insert into t1 values('aaa|qqq','qqq');
+insert into t1 values('gheis','^[^a-dXYZ]+$');
+insert into t1 values('aab','^aa?b');
+insert into t1 values('Baaan','^Ba*n');
+insert into t1 values('aaa','qqq|aaa');
+insert into t1 values('qqq','qqq|aaa');
+insert into t1 values('bbb','qqq|aaa');
+insert into t1 values('bbb','qqq');
+insert into t1 values('aaa','aba');
+insert into t1 values(null,'abc');
+insert into t1 values('def',null);
+insert into t1 values(null,null);
+insert into t1 values('ghi','ghi[');
+select HIGH_PRIORITY s1 regexp s2 from t1;
+s1 regexp s2
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+NULL
+NULL
+NULL
+NULL
+drop table t1;
+set names utf8mb4;
+set names utf8mb4;
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+1
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]'
+0
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci) ENGINE ndb;
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4) engine ndb;
+show create table t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `a` enum('aaaa','проба') CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=latin1
+insert into t1 values ('проба');
+select * from t1;
+a
+проба
+create table t2 engine ndb select ifnull(a,a) from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `ifnull(a,a)` varchar(5) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=latin1
+select * from t2;
+ifnull(a,a)
+проба
+drop table t1;
+drop table t2;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=ndb;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str (str(2))
+) engine=ndb;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+create table t1 (
+str varchar(255) character set utf8mb4 not null,
+key str using btree (str(2))
+) engine=ndb;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+str
+str
+drop table t1;
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+a
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+p varchar(15) character set utf8mb4
+) ENGINE= ndb DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+length(subject)
+3
+432
+SELECT length(subject) FROM t1 ORDER BY 1;
+length(subject)
+3
+432
+DROP TABLE t1;
+set names utf8mb4;
+create table t1 (
+a int primary key,
+b varchar(6),
+index b3(b(3))
+) engine=ndb character set=utf8mb4;
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+alter table t1 engine=innodb;
+select * from t1 where b like 'foob%';
+a b
+2 foobar
+drop table t1;
+create table t1 (
+a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+) engine ndb;
+create table t2 engine ndb select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `a` varchar(5) CHARACTER SET utf8mb4 NOT NULL DEFAULT '',
+ `b` varchar(15) CHARACTER SET utf8mb4 NOT NULL DEFAULT ''
+) ENGINE=ndbcluster DEFAULT CHARSET=latin1
+drop table t2;
+drop table t1;
+select 'c' like '\_' as want0;
+want0
+0
+SELECT SUBSTR('ваÑÑ',-2);
+SUBSTR('ваÑÑ',-2)
+ÑÑ
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci) engine ndb;
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('TEST');
+id a
+1 Test
+select * from t1 where soundex(a) = soundex('test');
+id a
+1 Test
+drop table t1;
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB)
+阅000
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB))
+E99885303030
+select soundex(_utf8mb4 0xD091D092D093);
+soundex(_utf8mb4 0xD091D092D093)
+Б000
+select hex(soundex(_utf8mb4 0xD091D092D093));
+hex(soundex(_utf8mb4 0xD091D092D093))
+D091303030
+SET collation_connection='utf8mb4_general_ci';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_general_ci 6109
+utf8mb4_general_ci 61
+utf8mb4_general_ci 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_general_ci
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+drop table if exists t1;
+create table t1 as select repeat(' ', 64) as s1;
+select collation(s1) from t1;
+collation(s1)
+utf8mb4_general_ci
+delete from t1;
+insert into t1 values ('a'),('ae'),(_latin1 0xE4);
+insert into t1 values ('o'),('oe'),(_latin1 0xF6);
+insert into t1 values ('s'),('ss'),(_latin1 0xDF);
+insert into t1 values ('u'),('ue'),(_latin1 0xFC);
+select s1, hex(s1) from t1 order by s1, binary s1;
+s1 hex(s1)
+a 61
+ä C3A4
+ae 6165
+o 6F
+ö C3B6
+oe 6F65
+s 73
+ß C39F
+ss 7373
+u 75
+ü C3BC
+ue 7565
+select group_concat(s1 order by binary s1) from t1 group by s1;
+group_concat(s1 order by binary s1)
+a,ä
+ae
+o,ö
+oe
+s,ß
+ss
+u,ü
+ue
+drop table t1;
+SET collation_connection='utf8mb4_bin';
+create table t1 select repeat('a',4000) a;
+delete from t1;
+insert into t1 values ('a'), ('a '), ('a\t');
+select collation(a),hex(a) from t1 order by a;
+collation(a) hex(a)
+utf8mb4_bin 6109
+utf8mb4_bin 61
+utf8mb4_bin 6120
+drop table t1;
+select @@collation_connection;
+@@collation_connection
+utf8mb4_bin
+create table t1 ROW_FORMAT=DYNAMIC select repeat('a',50) as c1 ;
+insert into t1 values('abcdef');
+insert into t1 values('_bcdef');
+insert into t1 values('a_cdef');
+insert into t1 values('ab_def');
+insert into t1 values('abc_ef');
+insert into t1 values('abcd_f');
+insert into t1 values('abcde_');
+select c1 as c1u from t1 where c1 like 'ab\_def';
+c1u
+ab_def
+select c1 as c2h from t1 where c1 like 'ab#_def' escape '#';
+c2h
+ab_def
+drop table t1;
+CREATE TABLE t1 (
+user varchar(255) NOT NULL default ''
+) ENGINE=ndb DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+CHARSET('a')
+utf8mb4
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+user c
+one <one>
+two <two>
+DROP TABLE t1;
+create table t1 (f1 varchar(1) not null) default charset utf8mb4 engine ndb;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+concat(concat(_latin1'->',f1),_latin1'<-')
+-><-
+-><-
+drop table t1;
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+convert(_koi8r'?' using utf8mb4) < convert(_koi8r'?' using utf8mb4)
+1
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4 engine ndb;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+ifnull(a,'')
+test
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+h
++++
+NULL
+select ifnull(NULL, _utf8mb4'string');
+ifnull(NULL, _utf8mb4'string')
+string
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci) engine ndb;
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+s1
+I
+Y
+select * from t1 where 'K' > s1 and s1 = 'Y';
+s1
+I
+Y
+drop table t1;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci) engine ndb;
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where 'd' < s1 and s1 = 'CH';
+s1
+CH
+Ch
+ch
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+s1
+cH
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+s1
+cH
+drop table t1;
+create table t1 (a varchar(255)) default character set utf8mb4 engine ndb;
+insert into t1 values (1.0);
+drop table t1;
+create table t1 (
+id int not null,
+city varchar(20) not null,
+key (city(7),id)
+) character set=utf8mb4 engine ndb;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+id city
+2 Durban
+select * from t1 where city = 'Durban ';
+id city
+2 Durban
+drop table t1;
+create table t1 (x set('A', 'B') default 0) character set utf8mb4 engine ndb;
+ERROR 42000: Invalid default value for 'x'
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4 engine ndb;
+ERROR 42000: Invalid default value for 'x'
+SET NAMES UTF8;
+CREATE TABLE t1 (
+`id` int(20) NOT NULL auto_increment,
+`country` varchar(100) NOT NULL default '',
+`shortcode` varchar(100) NOT NULL default '',
+`operator` varchar(100) NOT NULL default '',
+`momid` varchar(30) NOT NULL default '',
+`keyword` varchar(160) NOT NULL default '',
+`content` varchar(160) NOT NULL default '',
+`second_token` varchar(160) default NULL,
+`gateway_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+`msisdn` varchar(15) NOT NULL default '',
+PRIMARY KEY (`id`),
+UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+KEY `IX_mobile_originated_message_keyword` (`keyword`),
+KEY `IX_mobile_originated_message_created` (`created`),
+KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+CREATE TABLE t2 (
+`msisdn` varchar(15) NOT NULL default '',
+`operator_id` int(11) NOT NULL default '0',
+`created` datetime NOT NULL default '0000-00-00 00:00:00',
+UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4;
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+content msisdn
+ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми 1234567890
+11 g 1234567890
+DROP TABLE t1,t2;
+create table t1 (a char(20) character set utf8mb4) engine ndb;
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+Warning 1265 Data truncated for column 'a' at row 2
+select char_length(a), length(a), a from t1 order by a;
+char_length(a) length(a) a
+2 2 12
+2 4 ан
+drop table t1;
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+'andre%' like 'andreñ%' escape 'ñ'
+1
+set names utf8mb4;
+select 'a\\' like 'a\\';
+'a\\' like 'a\\'
+1
+select 'aa\\' like 'a%\\';
+'aa\\' like 'a%\\'
+1
+create table t1 (a char(10), key(a)) character set utf8mb4 engine ndb;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+a
+abc
+abcd
+select * from t1 where a like concat("abc","%");
+a
+abc
+abcd
+select * from t1 where a like "ABC%";
+a
+abc
+abcd
+select * from t1 where a like "test%";
+a
+test
+select * from t1 where a like "te_t";
+a
+test
+select * from t1 where a like "%a%";
+a
+a
+abc
+abcd
+select * from t1 where a like "%abcd%";
+a
+abcd
+select * from t1 where a like "%abc\d%";
+a
+abcd
+drop table t1;
+CREATE TABLE t1 (
+a varchar(255) NOT NULL default '',
+KEY a (a)
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+hex(a)
+5B
+E880BD
+drop table t1;
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4 engine ndb;
+select * from t1 where find_in_set('-1', a);
+a
+drop table t1;
+create table t1 (a int) engine ndb;
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+char(a)
+0
+1
+2
+drop table t1;
+CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4) ENGINE ndb;
+Warnings:
+Warning 1478 Table storage engine 'ndbcluster' does not support the create option 'Binlog of table with BLOB attribute and no PK'
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+CREATE TABLE t2 ENGINE ndb SELECT COALESCE(t) AS bug FROM t1;
+Warnings:
+Warning 1478 Table storage engine 'ndbcluster' does not support the create option 'Binlog of table with BLOB attribute and no PK'
+SELECT LENGTH(bug) FROM t2;
+LENGTH(bug)
+100
+DROP TABLE t2;
+DROP TABLE t1;
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+item
+Cote d'Ivoire
+Cote d'Ivoire
+\
+\
+DROP TABLE t1;
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+Warnings:
+Note 1051 Unknown table 't1'
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=ndb DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uU');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uu');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check note The storage engine for the table doesn't support check
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4) engine ndb;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+before_delete_general_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+after_delete_general_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci) engine ndb;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+before_delete_unicode_ci
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+after_delete_unicode_ci
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin) engine ndb;
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+before_delete_bin
+ペテルグル
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+after_delete_bin
+ペテルグル
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=ndb default character set utf8mb4 collate utf8mb4_general_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+gci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+gci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=ndb default character set utf8mb4 collate utf8mb4_unicode_ci;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+uci1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+uci2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(30) not null primary key)
+engine=ndb default character set utf8mb4 collate utf8mb4_bin;
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+bin1
+ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+bin2
+ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã
+drop table t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+b int,
+f varchar(128) default 'XXX',
+INDEX (a(4))
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+(1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+(4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+(7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+(10, 'eeeee', 40), (11, 'bbbbbb', 60);
+SELECT id, a, b FROM t1;
+id a b
+1 cccc 50
+10 eeeee 40
+11 bbbbbb 60
+2 cccc 70
+3 cccc 30
+4 cccc 30
+5 cccc 20
+6 bbbbbb 40
+7 dddd 30
+8 aaaa 10
+9 aaaa 50
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+id a b
+11 bbbbbb 60
+6 bbbbbb 40
+8 aaaa 10
+9 aaaa 50
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+id a
+11 bbbbbb
+6 bbbbbb
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+id a
+6 bbbbbb
+11 bbbbbb
+DROP TABLE t1;
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+('Käli Käli 2-4'), ('Käli Käli 2-4'),
+('Käli Käli 2+4'), ('Käli Käli 2+4'),
+('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+CREATE TABLE t2 (
+a CHAR(13) DEFAULT '',
+INDEX(a)
+) ENGINE=ndb DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+INSERT INTO t2 VALUES
+('Kali Kali 2-4'), ('Kali Kali 2-4'),
+('Kali Kali 2+4'), ('Kali Kali 2+4'),
+('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+a
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+Käli Käli 2+4
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+a
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+Kali Kali 2+4
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range a a 53 NULL 10 Using where with pushed condition
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ref a a 53 const 10 Using where with pushed condition
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 range a a 14 NULL 10 Using where with pushed condition
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t2 ref a a 14 const 10 Using where with pushed condition
+DROP TABLE t1,t2;
+CREATE TABLE t1 (
+a char(255) DEFAULT '',
+KEY(a(10))
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+CREATE TABLE t1 (
+a char(255) DEFAULT ''
+) ENGINE=ndb DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+a
+Käli Käli 2-4
+Käli Käli 2-4
+DROP TABLE t1;
+SET NAMES latin2;
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+default charset=utf8mb4 collate=utf8mb4_unicode_ci engine ndb;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary
+SELECT COUNT(*) FROM (SELECT DISTINCT a FROM t1) AS t2;
+COUNT(*)
+1
+explain select a from t1 group by a;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 3 Using temporary; Using filesort
+SELECT COUNT(*) FROM (SELECT a FROM t1 GROUP BY a) AS t2;
+COUNT(*)
+1
+drop table t1;
+create table t1(a char(10)) default charset utf8mb4 engine ndb;
+insert into t1 values ('123'), ('456');
+explain
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE Y ALL NULL NULL NULL NULL 2 Using temporary; Using filesort
+1 SIMPLE Z ALL NULL NULL NULL NULL 2 Using where; Using join buffer
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+substr(Z.a,-1) a
+3 123
+6 456
+drop table t1;
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+Variable_name Value
+character_set_client utf8mb4
+character_set_connection latin1
+character_set_database latin1
+character_set_filesystem binary
+character_set_results utf8mb4
+character_set_server latin1
+character_set_system utf8
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4 ENGINE ndb;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+35
+36
+37
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE crashtest ALL NULL NULL NULL NULL 4 Using filesort
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+crash
+-1000
+35
+36
+37
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FFFFFC'
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+SELECT id FROM t1;
+id
+aa
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1;
+id
+aa
+xxx
+yyy
+SELECT DISTINCT id FROM t1 ORDER BY id;
+id
+aa
+xxx
+yyy
+DROP TABLE t1;
+create table t1 (
+a varchar(26) not null
+) default character set utf8mb4 ENGINE ndb;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+a
+abcdefghijklmnopqrstuvwxyz
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmnopqrst
+alter table t1 change a a char(15) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghijklmno
+alter table t1 change a a char(10) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcdefghij
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+Warnings:
+Warning 1265 Data truncated for column 'a' at row 1
+select * from t1;
+a
+abcde
+drop table t1;
+set names utf8mb4;
+select hex(char(1 using utf8mb4));
+hex(char(1 using utf8mb4))
+01
+select char(0xd1,0x8f using utf8mb4);
+char(0xd1,0x8f using utf8mb4)
+select char(0xd18f using utf8mb4);
+char(0xd18f using utf8mb4)
+select char(53647 using utf8mb4);
+char(53647 using utf8mb4)
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+char(0xff,0x8f using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select char(195 using utf8mb4);
+char(195 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C3'
+select char(196 using utf8mb4);
+char(196 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'C4'
+select char(2557 using utf8mb4);
+char(2557 using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FD'
+select convert(char(0xff,0x8f) using utf8mb4);
+convert(char(0xff,0x8f) using utf8mb4)
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF8F'
+select hex(convert(char(2557 using latin1) using utf8mb4));
+hex(convert(char(2557 using latin1) using utf8mb4))
+09C3BD
+select hex(char(195));
+hex(char(195))
+C3
+select hex(char(196));
+hex(char(196))
+C4
+select hex(char(2557));
+hex(char(2557))
+09FD
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4 engine ndb;
+create table t2 (a char(1)) default character set utf8mb4 engine ndb;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+a
+a
+i
+ã‚
+ã„
+drop table t1,t2;
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10)) engine ndb;
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+a b
+bar kostja
+set @a:='kostja';
+execute my_stmt using @a;
+a b
+kostja bar
+set @a:=null;
+execute my_stmt using @a;
+a b
+drop table if exists t1;
+drop table if exists t1;
+drop view if exists v1, v2;
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci) engine ndb;
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+4 utf8mb4_general_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+coercibility(col1) collation(col1)
+2 utf8mb4_unicode_ci
+2 utf8mb4_unicode_ci
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+coercibility(col1) collation(col1)
+0 utf8mb4_swedish_ci
+0 utf8mb4_swedish_ci
+drop view v1, v2;
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine ndb;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+concat(a, if(b>10, N'x', N'y'))
+ay
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine ndb;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y'))
+ay
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine ndb;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79))
+ay
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int) engine ndb;
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+concat(a, if(b>10, 'x' 'x', 'y' 'y'))
+ayy
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+ERROR HY000: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8mb4_general_ci,COERCIBLE) for operation 'concat'
+drop table t1;
+CREATE TABLE t1 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+PRIMARY KEY (colA)
+) ENGINE=ndb DEFAULT CHARSET=latin1;
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+CREATE TABLE t2 (
+colA int(11) NOT NULL,
+colB varchar(255) character set utf8mb4 NOT NULL,
+KEY bad (colA,colB(3))
+) ENGINE=ndb DEFAULT CHARSET=latin1;
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+colA colB colA colB
+1 foo 1 foo
+2 foo bar 2 foo bar
+DROP TABLE t1, t2;
+SELECT 'н1234567890' UNION SELECT _binary '1';
+н1234567890
+н1234567890
+1
+SELECT 'н1234567890' UNION SELECT 1;
+н1234567890
+н1234567890
+1
+SELECT '1' UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+SELECT 1 UNION SELECT 'н1234567890';
+1
+1
+н1234567890
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4 ENGINE ndb;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT) ENGINE ndb;
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+SELECT c FROM t1 UNION SELECT b FROM t2;
+c
+н1234567890
+1
+SELECT c FROM t1 UNION SELECT i FROM t2;
+c
+н1234567890
+1
+SELECT b FROM t2 UNION SELECT c FROM t1;
+b
+1
+н1234567890
+SELECT i FROM t2 UNION SELECT c FROM t1;
+i
+1
+н1234567890
+DROP TABLE t1, t2;
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+NULL
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+hex(char(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(convert(0xFF using utf8mb4));
+hex(convert(0xFF using utf8mb4))
+
+Warnings:
+Warning 1300 Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 0x616263FF);
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select hex(_utf8mb4 B'001111111111');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+select (_utf8mb4 X'616263FF');
+ERROR HY000: Invalid utf8mb4 character string: 'FF'
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL) ENGINE ndb;
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+CONVERT(a, CHAR) CONVERT(b, CHAR)
+70000 1092
+70001 1085
+70002 1065
+DROP TABLE t1;
+#
+# Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+predicted_order int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+predicted_order hex(utf8mb4_encoding)
+1 E0B7B4
+2 E0B685
+3 E0B686
+4 E0B687
+5 E0B688
+6 E0B689
+7 E0B68A
+8 E0B68B
+9 E0B68C
+10 E0B68D
+11 E0B68E
+12 E0B68F
+13 E0B690
+14 E0B691
+15 E0B692
+16 E0B693
+17 E0B694
+18 E0B695
+19 E0B696
+20 E0B682
+21 E0B683
+22 E0B69A
+23 E0B69AE0B78F
+24 E0B69AE0B790
+25 E0B69AE0B791
+26 E0B69AE0B792
+27 E0B69AE0B793
+28 E0B69AE0B794
+29 E0B69AE0B796
+30 E0B69AE0B798
+31 E0B69AE0B7B2
+32 E0B69AE0B79F
+33 E0B69AE0B7B3
+34 E0B69AE0B799
+35 E0B69AE0B79A
+36 E0B69AE0B79B
+37 E0B69AE0B79C
+38 E0B69AE0B79D
+39 E0B69AE0B79E
+40 E0B69AE0B78A
+41 E0B69B
+42 E0B69C
+43 E0B69D
+44 E0B69E
+45 E0B69F
+46 E0B6A0
+47 E0B6A1
+48 E0B6A2
+49 E0B6A3
+50 E0B6A5
+51 E0B6A4
+52 E0B6A6
+53 E0B6A7
+54 E0B6A8
+55 E0B6A9
+56 E0B6AA
+57 E0B6AB
+58 E0B6AC
+59 E0B6AD
+60 E0B6AE
+61 E0B6AF
+62 E0B6B0
+63 E0B6B1
+64 E0B6B3
+65 E0B6B4
+66 E0B6B5
+67 E0B6B6
+68 E0B6B7
+69 E0B6B8
+70 E0B6B9
+71 E0B6BA
+72 E0B6BB
+73 E0B6BBE0B78AE2808D
+74 E0B6BD
+75 E0B780
+76 E0B781
+77 E0B782
+78 E0B783
+79 E0B784
+80 E0B785
+81 E0B786
+82 E0B78F
+83 E0B790
+84 E0B791
+85 E0B792
+86 E0B793
+87 E0B794
+88 E0B796
+89 E0B798
+90 E0B7B2
+91 E0B79F
+92 E0B7B3
+93 E0B799
+94 E0B79A
+95 E0B79B
+96 E0B79C
+97 E0B79D
+98 E0B79E
+99 E0B78A
+100 E0B78AE2808DE0B6BA
+101 E0B78AE2808DE0B6BB
+DROP TABLE t1;
+#
+# Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+#
+create table t1 (utf8mb4 char(1) character set utf8mb4) engine ndb;
+Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF0\x8F\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F0908080
+F0BFBFBF
+delete from t1;
+Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+F2808080
+F2BFBFBF
+delete from t1;
+Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x90\x80\x80' for column 'utf8mb4' at row 1
+select hex(utf8mb4) from t1;
+hex(utf8mb4)
+
+F4808080
+F48F8080
+drop table t1;
+#
+# Check strnxfrm() with odd length
+#
+set max_sort_length=5;
+select @@max_sort_length;
+@@max_sort_length
+5
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci) engine ndb;
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+a
+a
+b
+c
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+a
+a
+b
+c
+drop table t1;
+set max_sort_length=default;
+#
+# Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+#
+#
+# Testing 4-byte values.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE ndb;
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+(119070, x'f09d849e'),
+# HALF NOTE
+(119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+(119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+(120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+(120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+(1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+(917999, x'f3a087af');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+Warnings:
+Warning 1265 Data truncated for column 'utf8mb4_encoding' at row 1
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+u_decimal hex(utf8mb4_encoding)
+1114111 F48FBFBF
+119040 F09D8480
+119070 F09D849E
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119070 F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+119134 F09D859E
+119247 F09D878F
+120607 F09D9C9F
+120735 F09D9E9F
+65131 EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+917999 F3A087AF
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+Warnings:
+Warning 1366 Incorrect string value: '\xF5\x80\x80\x80' for column 'utf8mb4_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't1' AND column_name= 'utf8mb4_encoding';
+character_maximum_length character_octet_length
+10 40
+DROP TABLE IF EXISTS t2;
+CREATE TABLE t2 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3 ENGINE ndb;
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBF' for column 'utf8mb3_encoding' at row 1
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+table_name= 't2' AND column_name= 'utf8mb3_encoding';
+character_maximum_length character_octet_length
+10 30
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+Warnings:
+Warning 1366 Incorrect string value: '\xF4\x8F\xBF\xBD' for column 'utf8mb3_encoding' at row 1
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8'))
+EA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+F09D8480EA9DA8
+F09D849EEA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D859EEA9DA8
+F09D878FEA9DA8
+F09D9C9FEA9DA8
+F09D9E9FEA9DA8
+F3A087AFEA9DA8
+F48FBFBFEA9DA8
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding))
+
+EA9DA8
+EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9AB
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEA9DA8
+EFB9ABF09D849EF09D859EF09D859EF09D8480F09D859FEFB9ABEFB9ABF09D85A0EFB9ABEFB9AB
+F09D8480
+F09D8480EA9DA8
+F09D8480EFB9AB
+F09D849E
+F09D849EEA9DA8
+F09D849EEFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EA9DA8
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D849EF09D859EF09D859EF09D8480F09D859FF09D859FF09D859FF09D85A0F09D85A0F09D8480EFB9AB
+F09D859E
+F09D859EEA9DA8
+F09D859EEFB9AB
+F09D878F
+F09D878FEA9DA8
+F09D878FEFB9AB
+F09D9C9F
+F09D9C9FEA9DA8
+F09D9C9FEFB9AB
+F09D9E9F
+F09D9E9FEA9DA8
+F09D9E9FEFB9AB
+F3A087AF
+F3A087AFEA9DA8
+F3A087AFEFB9AB
+F48FBFBF
+F48FBFBFEA9DA8
+F48FBFBFEFB9AB
+SELECT count(*) FROM t1, t2
+WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+count(*)
+33
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) NOT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+u_decimal hex(utf8mb4_encoding) utf8mb4_encoding
+1114111
+1114111 3F ?
+119040 3F ?
+119070 3F ?
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119070 3F3F3F3F3F3F3F3F3F3F ??????????
+119134 3F ?
+119247 3F ?
+120607 3F ?
+120735 3F ?
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB ﹫?????﹫﹫?﹫
+917999 3F ?
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8mb4
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) NOT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+Table Create Table
+t1 CREATE TABLE `t1` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb4_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+u_decimal hex(utf8mb4_encoding)
+1114111
+1114111 3F
+119040 3F
+119070 3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119070 3F3F3F3F3F3F3F3F3F3F
+119134 3F
+119247 3F
+120607 3F
+120735 3F
+65131 EFB9AB3F3F3F3F3FEFB9ABEFB9AB3FEFB9AB
+917999 3F
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+Table Create Table
+t2 CREATE TABLE `t2` (
+ `u_decimal` int(11) NOT NULL,
+ `utf8mb3_encoding` varchar(10) CHARACTER SET utf8mb4 DEFAULT NULL
+) ENGINE=ndbcluster DEFAULT CHARSET=utf8
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+u_decimal hex(utf8mb3_encoding)
+1114111
+42856 EA9DA8
+65131 EFB9AB
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t3 (
+u_decimal int NOT NULL,
+utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8 ENGINE ndb;
+INSERT INTO t3 SELECT * FROM t1;
+DROP TABLE IF EXISTS t4;
+CREATE TABLE t4 (
+u_decimal int NOT NULL,
+utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4 ENGINE ndb;
+INSERT INTO t3 SELECT * FROM t2;
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+#
+# Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+#
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+CHARSET(CONCAT(_utf8mb4'a',_utf8'b'))
+utf8mb4
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL) ENGINE ndb;
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+CONCAT(utf8mb4, _utf8 x'ea9da8')
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL) ENGINE ndb;
+INSERT INTO t2 VALUES (x'ea9da8');
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+HEX(CONCAT(utf8mb4, utf8mb3))
+EA9DA8EA9DA8
+F48FBFBFEA9DA8
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+CHARSET(CONCAT(utf8mb4, utf8mb3))
+utf8mb4
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+utf8mb4 utf8mb3
+ô¿¿ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+utf8mb4 utf8mb3
+ê¨ ê¨
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+utf8mb4 utf8mb3
+DROP TABLE t1;
+DROP TABLE t2;
+#
+# Check that mixing utf8mb4 with an invalid utf8 constant returns error
+#
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4) ENGINE ndb;
+INSERT INTO t1 VALUES (x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+ERROR HY000: Illegal mix of collations (utf8mb4_general_ci,COERCIBLE) and (utf8_general_ci,COERCIBLE) for operation 'concat'
+DROP TABLE t1;
+#
+# End of 5.5 tests
+#
+#
+# End of tests
+#
diff --git a/mysql-test/r/debug_sync.result b/mysql-test/r/debug_sync.result
index 8b46334204c..25fdf523200 100644
--- a/mysql-test/r/debug_sync.result
+++ b/mysql-test/r/debug_sync.result
@@ -263,7 +263,7 @@ DROP TABLE t1;
SET DEBUG_SYNC= 'RESET';
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (c1 INT);
-LOCK TABLE t1 WRITE;
+LOCK TABLE t1 READ;
connection con1
SET DEBUG_SYNC= 'wait_for_lock SIGNAL locked EXECUTE 2';
INSERT INTO t1 VALUES (1);
diff --git a/mysql-test/r/default.result b/mysql-test/r/default.result
index 5b0d82407a2..9afffe4c3bc 100644
--- a/mysql-test/r/default.result
+++ b/mysql-test/r/default.result
@@ -180,7 +180,6 @@ insert into bug20691 values (2, 3, 5, '0007-01-01', 11, 13, 17, '0019-01-01 00:0
insert into bug20691 values (DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, DEFAULT, 4);
Warnings:
Warning 1364 Field 'a' doesn't have a default value
-Warning 1364 Field 'b' doesn't have a default value
Warning 1364 Field 'c' doesn't have a default value
Warning 1364 Field 'd' doesn't have a default value
Warning 1364 Field 'e' doesn't have a default value
@@ -193,7 +192,7 @@ a b c d e f g h i x
two large 00:00:05 0007-01-01 11 13 17 0019-01-01 00:00:00 23 1
small 00:00:00 0000-00-00 0 0000-00-00 00:00:00 0 2
two large 00:00:05 0007-01-01 11 13 17 0019-01-01 00:00:00 23 3
- 00:00:00 0000-00-00 0 0000-00-00 00:00:00 0 4
+ small 00:00:00 0000-00-00 0 0000-00-00 00:00:00 0 4
drop table bug20691;
create table t1 (id int not null);
insert into t1 values(default);
diff --git a/mysql-test/r/delete.result b/mysql-test/r/delete.result
index d6eb1fbabe9..733614b765a 100644
--- a/mysql-test/r/delete.result
+++ b/mysql-test/r/delete.result
@@ -278,6 +278,18 @@ DELETE FROM t1 ORDER BY (f1(10)) LIMIT 1;
ERROR 42000: Incorrect number of arguments for FUNCTION test.f1; expected 0, got 1
DROP TABLE t1;
DROP FUNCTION f1;
+#
+# Bug #49552 : sql_buffer_result cause crash + not found records
+# in multitable delete/subquery
+#
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUES (1),(2),(3);
+SET SESSION SQL_BUFFER_RESULT=1;
+DELETE t1 FROM (SELECT SUM(a) a FROM t1) x,t1;
+SET SESSION SQL_BUFFER_RESULT=DEFAULT;
+SELECT * FROM t1;
+a
+DROP TABLE t1;
End of 5.0 tests
DROP DATABASE IF EXISTS db1;
DROP DATABASE IF EXISTS db2;
@@ -478,16 +490,4 @@ END |
DELETE IGNORE FROM t1;
ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
DROP TABLE t1;
-#
-# Bug #49552 : sql_buffer_result cause crash + not found records
-# in multitable delete/subquery
-#
-CREATE TABLE t1(a INT);
-INSERT INTO t1 VALUES (1),(2),(3);
-SET SESSION SQL_BUFFER_RESULT=1;
-DELETE t1 FROM (SELECT SUM(a) a FROM t1) x,t1;
-SET SESSION SQL_BUFFER_RESULT=DEFAULT;
-SELECT * FROM t1;
-a
-DROP TABLE t1;
End of 5.1 tests
diff --git a/mysql-test/r/drop.result b/mysql-test/r/drop.result
index ae75f21955e..17ec2b09a0a 100644
--- a/mysql-test/r/drop.result
+++ b/mysql-test/r/drop.result
@@ -79,8 +79,8 @@ drop table t1;
drop database if exists mysqltest;
drop table if exists t1;
create table t1 (i int);
-lock tables t1 read;
create database mysqltest;
+lock tables t1 read;
drop table t1;
show open tables;
drop database mysqltest;
diff --git a/mysql-test/r/drop_debug.result b/mysql-test/r/drop_debug.result
index 75346b88bc6..f2c89034451 100644
--- a/mysql-test/r/drop_debug.result
+++ b/mysql-test/r/drop_debug.result
@@ -7,12 +7,16 @@ DROP DATABASE IF EXISTS mysql_test;
CREATE DATABASE mysql_test;
CREATE TABLE mysql_test.t1(a INT);
+CREATE TABLE mysql_test.t2(b INT);
+CREATE TABLE mysql_test.t3(c INT);
SET SESSION DEBUG = "+d,bug43138";
DROP DATABASE mysql_test;
Warnings:
Error 1051 Unknown table 't1'
+Error 1051 Unknown table 't2'
+Error 1051 Unknown table 't3'
SET SESSION DEBUG = "-d,bug43138";
diff --git a/mysql-test/r/errors.result b/mysql-test/r/errors.result
index 79474b960f5..a3a8fe0b147 100644
--- a/mysql-test/r/errors.result
+++ b/mysql-test/r/errors.result
@@ -61,10 +61,10 @@ create table t1 (a int unique);
create table t2 (a int);
drop function if exists f1;
Warnings:
-Note 1305 FUNCTION f1 does not exist
+Note 1305 FUNCTION test.f1 does not exist
drop function if exists f2;
Warnings:
-Note 1305 FUNCTION f2 does not exist
+Note 1305 FUNCTION test.f2 does not exist
create function f1() returns int
begin
insert into t1 (a) values (1);
diff --git a/mysql-test/r/flush.result b/mysql-test/r/flush.result
index b978304f59d..3702443d04a 100644
--- a/mysql-test/r/flush.result
+++ b/mysql-test/r/flush.result
@@ -33,6 +33,9 @@ flush tables with read lock;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
lock table t1 read;
flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables;
+flush tables with read lock;
lock table t1 write;
ERROR HY000: Can't execute the query because you have a conflicting read lock
lock table t1 read;
@@ -46,6 +49,7 @@ flush tables with read lock;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
lock table t1 read, t2 read, t3 read;
flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
unlock tables;
drop table t1, t2, t3;
create table t1 (c1 int);
@@ -69,6 +73,7 @@ ERROR HY000: Can't execute the given command because you have active locked tabl
unlock tables;
lock tables t1 read;
flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
unlock tables;
drop table t1, t2;
set session low_priority_updates=default;
@@ -89,3 +94,143 @@ unlock tables;
set global general_log= @old_general_log;
set global read_only= @old_read_only;
End of 5.1 tests
+#
+# Additional test for bug #51136 "Crash in pthread_rwlock_rdlock
+# on TEMPORARY + HANDLER + LOCK + SP".
+# Also see the main test for this bug in include/handler.inc.
+#
+drop tables if exists t1, t2;
+create table t1 (i int);
+create temporary table t2 (j int);
+flush tables with read lock;
+lock table t2 read;
+# This commit should not release any MDL locks.
+commit;
+# The below statement crashed before the bug fix as it
+# has attempted to release global shared metadata lock
+# which was already released by commit.
+unlock tables;
+drop tables t1, t2;
+#
+# Tests for WL#5000 FLUSH TABLES|TABLE table_list WITH READ LOCK
+#
+# I. Check the incompatible changes in the grammar.
+#
+flush tables with read lock, hosts;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' hosts' at line 1
+flush privileges, tables;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'tables' at line 1
+flush privileges, tables with read lock;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'tables with read lock' at line 1
+flush privileges, tables;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'tables' at line 1
+flush tables with read lock, tables;
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' tables' at line 1
+show tables;
+Tables_in_test
+#
+# II. Check the allowed syntax.
+#
+drop table if exists t1, t2, t3;
+create table t1 (a int);
+create table t2 (a int);
+create table t3 (a int);
+lock table t1 read, t2 read;
+flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables;
+flush tables with read lock;
+flush tables t1, t2 with read lock;
+flush tables t1, t2 with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+flush tables with read lock;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+select * from t1;
+a
+select * from t2;
+a
+select * from t3;
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+insert into t1 (a) values (1);
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+insert into t2 (a) values (1);
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+insert into t3 (a) values (1);
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+lock table no_such_table read;
+ERROR 42S02: Table 'test.no_such_table' doesn't exist
+#
+# We implicitly left the locked tables
+# mode but still have the read lock.
+#
+insert into t2 (a) values (1);
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+unlock tables;
+insert into t1 (a) values (1);
+insert into t2 (a) values (1);
+flush table t1, t2 with read lock;
+select * from t1;
+a
+1
+select * from t2;
+a
+1
+select * from t3;
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+insert into t1 (a) values (2);
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+insert into t2 (a) values (2);
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+insert into t3 (a) values (2);
+ERROR HY000: Table 't3' was not locked with LOCK TABLES
+lock table no_such_table read;
+ERROR 42S02: Table 'test.no_such_table' doesn't exist
+insert into t3 (a) values (2);
+#
+# III. Concurrent tests.
+#
+# --> connection default
+#
+# Check that flush tables <list> with read lock
+# does not affect non-locked tables.
+#
+flush tables t1 with read lock;
+# --> connection con1;
+select * from t1;
+a
+1
+select * from t2;
+a
+1
+insert into t2 (a) values (3);
+# --> connection default;
+unlock tables;
+# --> connection con1
+drop table t1, t2, t3;
+#
+# Bug#51710 FLUSH TABLES <view> WITH READ LOCK kills the server
+#
+drop view if exists v1, v2, v3;
+drop table if exists t1, v1;
+create table t1 (a int);
+create view v1 as select 1;
+create view v2 as select * from t1;
+create view v3 as select * from v2;
+flush table v1, v2, v3 with read lock;
+ERROR HY000: 'test.v1' is not BASE TABLE
+flush table v1 with read lock;
+ERROR HY000: 'test.v1' is not BASE TABLE
+flush table v2 with read lock;
+ERROR HY000: 'test.v2' is not BASE TABLE
+flush table v3 with read lock;
+ERROR HY000: 'test.v3' is not BASE TABLE
+create temporary table v1 (a int);
+flush table v1 with read lock;
+ERROR HY000: 'test.v1' is not BASE TABLE
+drop view v1;
+create table v1 (a int);
+flush table v1 with read lock;
+drop temporary table v1;
+unlock tables;
+drop view v2, v3;
+drop table t1, v1;
diff --git a/mysql-test/r/flush_block_commit.result b/mysql-test/r/flush_block_commit.result
index d2197beaaab..7062d05c2d7 100644
--- a/mysql-test/r/flush_block_commit.result
+++ b/mysql-test/r/flush_block_commit.result
@@ -1,3 +1,4 @@
+# Save the initial number of concurrent sessions
# Establish connection con1 (user=root)
# Establish connection con2 (user=root)
# Establish connection con3 (user=root)
@@ -8,15 +9,17 @@ BEGIN;
INSERT INTO t1 VALUES(1);
# Switch to connection con2
FLUSH TABLES WITH READ LOCK;
-SELECT * FROM t1;
-a
# Switch to connection con1
+# Sending:
COMMIT;
# Switch to connection con2
+# Wait until COMMIT gets blocked.
+# Verify that 'con1' was blocked and data did not move.
SELECT * FROM t1;
a
UNLOCK TABLES;
# Switch to connection con1
+# Reaping COMMIT
# Switch to connection con1
BEGIN;
SELECT * FROM t1 FOR UPDATE;
@@ -32,6 +35,7 @@ COMMIT;
# Switch to connection con2
a
1
+COMMIT;
# Switch to connection con3
UNLOCK TABLES;
# Switch to connection con2
@@ -40,8 +44,6 @@ COMMIT;
BEGIN;
INSERT INTO t1 VALUES(10);
FLUSH TABLES WITH READ LOCK;
-COMMIT;
-UNLOCK TABLES;
# Switch to connection con2
FLUSH TABLES WITH READ LOCK;
UNLOCK TABLES;
@@ -53,5 +55,11 @@ a
SHOW CREATE DATABASE test;
Database Create Database
test CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET latin1 */
-DROP TABLE t1;
+COMMIT;
+# Cleanup
# Switch to connection default and close connections con1, con2, con3
+# We commit open transactions when we disconnect: only then we can
+# drop the table.
+DROP TABLE t1;
+# End of 4.1 tests
+# Wait till all disconnects are completed
diff --git a/mysql-test/r/flush_block_commit_notembedded.result b/mysql-test/r/flush_block_commit_notembedded.result
index 4348dbd67e5..6d8af3f5864 100644
--- a/mysql-test/r/flush_block_commit_notembedded.result
+++ b/mysql-test/r/flush_block_commit_notembedded.result
@@ -1,17 +1,20 @@
+# Save the initial number of concurrent sessions
# Establish connection con1 (user=root)
# Establish connection con2 (user=root)
# Switch to connection con1
CREATE TABLE t1 (a INT) ENGINE=innodb;
RESET MASTER;
SET AUTOCOMMIT=0;
-INSERT t1 VALUES (1);
+SELECT 1;
+1
+1
# Switch to connection con2
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 107
# Switch to connection con1
-COMMIT;
+INSERT INTO t1 VALUES (1);
# Switch to connection con2
SHOW MASTER STATUS;
File Position Binlog_Do_DB Binlog_Ignore_DB
@@ -20,4 +23,12 @@ UNLOCK TABLES;
# Switch to connection con1
DROP TABLE t1;
SET AUTOCOMMIT=1;
+create table t1 (a int) engine=innodb;
+flush tables with read lock;
+begin;
+insert into t1 values (1);;
+unlock tables;
+commit;
+drop table t1;
# Switch to connection default and close connections con1 and con2
+# Wait till all disconnects are completed
diff --git a/mysql-test/r/flush_table.result b/mysql-test/r/flush_table.result
index 8821bade6b4..2b0ee1cb205 100644
--- a/mysql-test/r/flush_table.result
+++ b/mysql-test/r/flush_table.result
@@ -3,21 +3,14 @@ create table t1 (a int not null auto_increment primary key);
insert into t1 values(0);
lock table t1 read;
flush table t1;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+unlock tables;
+lock table t1 write;
+flush table t1;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
unlock tables;
-lock table t1 read;
-lock table t1 read;
-flush table t1;
-select * from t1;
-a
-1
-unlock tables;
-select * from t1;
-a
-1
-unlock tables;
lock table t1 write;
lock table t1 read;
flush table t1;
@@ -26,7 +19,7 @@ a
1
unlock tables;
unlock tables;
-lock table t1 read;
+lock table t1 write;
lock table t1 write;
flush table t1;
select * from t1;
diff --git a/mysql-test/r/foreign_key.result b/mysql-test/r/foreign_key.result
index ece53db2e9a..a6577dd376b 100644
--- a/mysql-test/r/foreign_key.result
+++ b/mysql-test/r/foreign_key.result
@@ -13,3 +13,45 @@ foreign key (a,b) references t3 (c,d) on update set null);
create index a on t1 (a);
create unique index b on t1 (a,b);
drop table t1;
+drop table if exists t_34455;
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) match full match partial);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match partial)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) on delete set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a) on update set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 3
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a)
+on delete set default on delete set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete set default)' at line 4
+create table t_34455 (
+a int not null,
+foreign key (a) references t3 (a)
+on update set default on update set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update set default)' at line 4
+create table t_34455 (a int not null);
+alter table t_34455
+add foreign key (a) references t3 (a) match full match partial);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match partial)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a) on delete set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a) on update set default match full);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'match full)' at line 2
+alter table t_34455
+add foreign key (a) references t3 (a)
+on delete set default on delete set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'delete set default)' at line 3
+alter table t_34455
+add foreign key (a) references t3 (a)
+on update set default on update set default);
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update set default)' at line 3
+drop table t_34455;
diff --git a/mysql-test/r/fulltext.result b/mysql-test/r/fulltext.result
index d1c7e88dea7..1d9fa20f673 100644
--- a/mysql-test/r/fulltext.result
+++ b/mysql-test/r/fulltext.result
@@ -6,9 +6,9 @@ INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
('Function MATCH ... AGAINST()','is used to do a search'),
('Full-text search in MySQL', 'implements vector space model');
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
-t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
+t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
select * from t1 where MATCH(a,b) AGAINST ("collections");
a b
Only MyISAM tables support collections
@@ -242,9 +242,9 @@ match(ttxt.inhalt) against ('foobar');
id
3
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 1 tig 1 ticket A NULL NULL NULL YES BTREE
-t2 1 tix 1 inhalt NULL NULL NULL NULL YES FULLTEXT
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 1 tig 1 ticket A NULL NULL NULL YES BTREE
+t2 1 tix 1 inhalt NULL NULL NULL NULL YES FULLTEXT
show create table t2;
Table Create Table
t2 CREATE TABLE `t2` (
@@ -611,6 +611,26 @@ WHERE t3.a=t1.a AND MATCH(b2) AGAINST('scargill' IN BOOLEAN MODE)
count(*)
0
DROP TABLE t1,t2,t3;
+CREATE TABLE t1 (a VARCHAR(4), FULLTEXT(a));
+INSERT INTO t1 VALUES
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('awrd'),('cwrd'),
+('awrd');
+SELECT COUNT(*) FROM t1 WHERE MATCH(a) AGAINST("+awrd bwrd* +cwrd*" IN BOOLEAN MODE);
+COUNT(*)
+0
+DROP TABLE t1;
#
# Bug #49445: Assertion failed: 0, file .\item_row.cc, line 55 with
# fulltext search and row op
diff --git a/mysql-test/r/func_gconcat.result b/mysql-test/r/func_gconcat.result
index ebec186591d..2d2ca10f54b 100644
--- a/mysql-test/r/func_gconcat.result
+++ b/mysql-test/r/func_gconcat.result
@@ -625,7 +625,7 @@ insert into t1 values (1,repeat('a',255)),(2,repeat('b',255));
select f2,group_concat(f1) from t1 group by f2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t1 t1 f2 f2 253 255 255 Y 0 0 8
-def group_concat(f1) 253 400 1 Y 128 0 63
+def group_concat(f1) 253 400 1 Y 0 0 8
f2 group_concat(f1)
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 2
@@ -737,7 +737,7 @@ insert into t1 values (1,repeat('a',255)),(2,repeat('b',255));
select f2,group_concat(f1) from t1 group by f2;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
def test t1 t1 f2 f2 253 255 255 Y 0 0 8
-def group_concat(f1) 252 1024 1 Y 128 0 63
+def group_concat(f1) 252 1024 1 Y 0 0 8
f2 group_concat(f1)
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 1
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 2
@@ -986,6 +986,23 @@ GROUP BY t1.a
1
1
DROP TABLE t1, t2;
+CREATE TABLE t1 (f1 INT);
+INSERT INTO t1 VALUES (),();
+EXPLAIN EXTENDED SELECT 1 FROM
+(SELECT DISTINCT GROUP_CONCAT(td.f1) FROM t1,t1 AS td GROUP BY td.f1) AS d,t1;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY <derived2> system NULL NULL NULL NULL 1 100.00
+1 PRIMARY t1 ALL NULL NULL NULL NULL 2 100.00
+2 DERIVED t1 ALL NULL NULL NULL NULL 2 100.00 Using temporary; Using filesort; Distinct
+2 DERIVED td ALL NULL NULL NULL NULL 2 100.00 Distinct; Using join buffer
+Warnings:
+Note 1003 select 1 AS `1` from `test`.`t1`
+SELECT 1 FROM
+(SELECT DISTINCT GROUP_CONCAT(td.f1) FROM t1,t1 AS td GROUP BY td.f1) AS d,t1;
+1
+1
+1
+DROP TABLE t1;
End of 5.0 tests
DROP TABLE IF EXISTS t1, t2;
CREATE TABLE t1 (a VARCHAR(6), b INT);
diff --git a/mysql-test/r/func_str.result b/mysql-test/r/func_str.result
index 3d43cbbfd76..72cf1473594 100644
--- a/mysql-test/r/func_str.result
+++ b/mysql-test/r/func_str.result
@@ -761,7 +761,7 @@ latin2 latin2_general_ci 2
drop table t1;
select charset(null), collation(null), coercibility(null);
charset(null) collation(null) coercibility(null)
-binary binary 5
+binary binary 6
CREATE TABLE t1 (a int, b int);
CREATE TABLE t2 (a int, b int);
INSERT INTO t1 VALUES (1,1),(2,2);
@@ -777,7 +777,7 @@ a b a b
1 1 NULL NULL
2 2 2 2
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
-where coercibility(t2.a) = 2 order by t1.a,t2.a;
+where coercibility(t2.a) = 5 order by t1.a,t2.a;
a b a b
1 1 NULL NULL
2 2 2 2
@@ -1230,13 +1230,13 @@ create table t1 (i int);
insert into t1 values (1000000000),(1);
select lpad(i, 7, ' ') as t from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def t 253 7 7 Y 128 31 63
+def t 253 7 7 Y 0 31 8
t
1000000
1
select rpad(i, 7, ' ') as t from t1;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def t 253 7 7 Y 128 31 63
+def t 253 7 7 Y 0 31 8
t
1000000
1
diff --git a/mysql-test/r/func_time.result b/mysql-test/r/func_time.result
index 7bcaf5567cf..c3f210edee5 100644
--- a/mysql-test/r/func_time.result
+++ b/mysql-test/r/func_time.result
@@ -678,11 +678,6 @@ timestampadd(WEEK, 1, date)
select timestampadd(SQL_TSI_SECOND, 1, date) from t1;
timestampadd(SQL_TSI_SECOND, 1, date)
2003-01-02 00:00:01
-select timestampadd(SQL_TSI_FRAC_SECOND, 1, date) from t1;
-timestampadd(SQL_TSI_FRAC_SECOND, 1, date)
-2003-01-02 00:00:00.000001
-Warnings:
-Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
select timestampdiff(MONTH, '2001-02-01', '2001-05-01') as a;
a
3
@@ -713,11 +708,6 @@ a
select timestampdiff(SQL_TSI_SECOND, '2001-02-01 12:59:59', '2001-05-01 12:58:58') as a;
a
7689539
-select timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05-01 12:58:58.119999') as a;
-a
-7689538999999
-Warnings:
-Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
select timestampdiff(SQL_TSI_DAY, '1986-02-01', '1986-03-01') as a1,
timestampdiff(SQL_TSI_DAY, '1900-02-01', '1900-03-01') as a2,
timestampdiff(SQL_TSI_DAY, '1996-02-01', '1996-03-01') as a3,
@@ -1082,13 +1072,6 @@ week(20061108), week(20061108.01), week(20061108085411.000002);
isnull(week(now() + 0)) isnull(week(now() + 0.2)) week(20061108) week(20061108.01) week(20061108085411.000002)
0 0 45 45 45
End of 4.1 tests
-explain extended select timestampdiff(SQL_TSI_WEEK, '2001-02-01', '2001-05-01') as a1,
-timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05-01 12:58:58.119999') as a2;
-id select_type table type possible_keys key key_len ref rows filtered Extra
-1 SIMPLE NULL NULL NULL NULL NULL NULL NULL NULL No tables used
-Warnings:
-Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
-Note 1003 select timestampdiff(WEEK,'2001-02-01','2001-05-01') AS `a1`,timestampdiff(SECOND_FRAC,'2001-02-01 12:59:59.120000','2001-05-01 12:58:58.119999') AS `a2`
select time_format('100:00:00', '%H %k %h %I %l');
time_format('100:00:00', '%H %k %h %I %l')
100 100 04 04 4
@@ -1282,24 +1265,6 @@ DATE_ADD(20071108, INTERVAL 1 DAY)
select LAST_DAY('2007-12-06 08:59:19.05') - INTERVAL 1 SECOND;
LAST_DAY('2007-12-06 08:59:19.05') - INTERVAL 1 SECOND
2007-12-30 23:59:59
-SELECT TIMESTAMPADD(FRAC_SECOND, 1, '2008-02-18');
-TIMESTAMPADD(FRAC_SECOND, 1, '2008-02-18')
-2008-02-18 00:00:00.000001
-Warnings:
-Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
-SELECT TIMESTAMPDIFF(FRAC_SECOND, '2008-02-17', '2008-02-18');
-TIMESTAMPDIFF(FRAC_SECOND, '2008-02-17', '2008-02-18')
-86400000000
-Warnings:
-Warning 1287 The syntax 'FRAC_SECOND' is deprecated and will be removed in MySQL 6.2. Please use MICROSECOND instead
-SELECT DATE_ADD('2008-02-18', INTERVAL 1 FRAC_SECOND);
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND)' at line 1
-SELECT DATE_SUB('2008-02-18', INTERVAL 1 FRAC_SECOND);
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND)' at line 1
-SELECT '2008-02-18' + INTERVAL 1 FRAC_SECOND;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND' at line 1
-SELECT '2008-02-18' - INTERVAL 1 FRAC_SECOND;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FRAC_SECOND' at line 1
select date_add('1000-01-01 00:00:00', interval '1.03:02:01.05' day_microsecond);
date_add('1000-01-01 00:00:00', interval '1.03:02:01.05' day_microsecond)
1000-01-02 03:02:01.050000
diff --git a/mysql-test/r/gis.result b/mysql-test/r/gis.result
index 60e24819fa5..717dd33231e 100644
--- a/mysql-test/r/gis.result
+++ b/mysql-test/r/gis.result
@@ -1058,3 +1058,33 @@ SELECT Polygon(12345123,'');
Polygon(12345123,'')
NULL
End of 5.1 tests
+CREATE TABLE t1(
+col0 BINARY NOT NULL,
+col2 TIMESTAMP,
+SPATIAL INDEX i1 (col0)
+) ENGINE=MyISAM;
+ERROR 42000: A SPATIAL index may only contain a geometrical type column
+CREATE TABLE t1 (
+col0 BINARY NOT NULL,
+col2 TIMESTAMP
+) ENGINE=MyISAM;
+CREATE SPATIAL INDEX idx0 ON t1(col0);
+ERROR 42000: A SPATIAL index may only contain a geometrical type column
+ALTER TABLE t1 ADD SPATIAL INDEX i1 (col0);
+ERROR 42000: A SPATIAL index may only contain a geometrical type column
+CREATE TABLE t2 (
+col0 INTEGER NOT NULL,
+col1 POINT,
+col2 POINT
+);
+CREATE SPATIAL INDEX idx0 ON t2 (col1, col2);
+ERROR HY000: Incorrect arguments to SPATIAL INDEX
+CREATE TABLE t3 (
+col0 INTEGER NOT NULL,
+col1 POINT,
+col2 LINESTRING,
+SPATIAL INDEX i1 (col1, col2)
+);
+ERROR HY000: Incorrect arguments to SPATIAL INDEX
+DROP TABLE t1;
+DROP TABLE t2;
diff --git a/mysql-test/r/grant.result b/mysql-test/r/grant.result
index 542a056c68c..b182ee5656c 100644
--- a/mysql-test/r/grant.result
+++ b/mysql-test/r/grant.result
@@ -1231,7 +1231,7 @@ Warnings:
Note 1051 Unknown table 'test'
drop function if exists test_function;
Warnings:
-Note 1305 FUNCTION test_function does not exist
+Note 1305 FUNCTION test.test_function does not exist
drop view if exists v1;
Warnings:
Note 1051 Unknown table 'test.v1'
diff --git a/mysql-test/r/grant4.result b/mysql-test/r/grant4.result
index 28ad9d04151..d0b6627cd0b 100644
--- a/mysql-test/r/grant4.result
+++ b/mysql-test/r/grant4.result
@@ -87,15 +87,15 @@ use mysqltest_db1;
** Connect as restricted user mysqltest_u1.
** SELECT FROM INFORMATION_SCHEMA.STATISTICS will succeed because any privileges will do (authentication is enough).
SELECT * FROM INFORMATION_SCHEMA.STATISTICS WHERE table_name='t5';
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def mysqltest_db1 t5 1 mysqltest_db1 i 1 s1 A NULL NULL NULL YES BTREE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def mysqltest_db1 t5 1 mysqltest_db1 i 1 s1 A NULL NULL NULL YES BTREE
** SHOW INDEX FROM t5 will fail because we don't have any privileges on any column combination.
SHOW INDEX FROM t5;
ERROR 42000: SELECT command denied to user 'mysqltest_u1'@'localhost' for table 't5'
** SHOW INDEX FROM t6 will succeed because there exist a privilege on a column combination on t6.
SHOW INDEX FROM t6;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t6 1 i 1 s1 A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t6 1 i 1 s1 A NULL NULL NULL YES BTREE
** CHECK TABLE requires any privilege on any column combination and should succeed for t6:
CHECK TABLE t6;
Table Op Msg_type Msg_text
diff --git a/mysql-test/r/greedy_optimizer.result b/mysql-test/r/greedy_optimizer.result
index c0012c297d1..be4b06396a8 100644
--- a/mysql-test/r/greedy_optimizer.result
+++ b/mysql-test/r/greedy_optimizer.result
@@ -115,6 +115,8 @@ select @@optimizer_prune_level;
@@optimizer_prune_level
1
set optimizer_search_depth=63;
+Warnings:
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
select @@optimizer_search_depth;
@@optimizer_search_depth
63
diff --git a/mysql-test/r/group_by.result b/mysql-test/r/group_by.result
index e6063047ba4..36340de7de1 100644
--- a/mysql-test/r/group_by.result
+++ b/mysql-test/r/group_by.result
@@ -1704,3 +1704,91 @@ COUNT(i)
1
DROP TABLE t1;
SET @@sql_mode = @old_sql_mode;
+#
+# Bug #45640: optimizer bug produces wrong results
+#
+CREATE TABLE t1 (a INT, b INT);
+INSERT INTO t1 VALUES (4, 40), (1, 10), (2, 20), (2, 20), (3, 30);
+# should return 4 ordered records:
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa;
+aa COUNT(DISTINCT b)
+1 1
+2 1
+3 1
+4 1
+SELECT (SELECT (SELECT t1.a)) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa;
+aa COUNT(DISTINCT b)
+1 1
+2 1
+3 1
+4 1
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa+0;
+aa COUNT(DISTINCT b)
+1 1
+2 1
+3 1
+4 1
+# should return the same result in a reverse order:
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY -aa;
+aa COUNT(DISTINCT b)
+4 1
+3 1
+2 1
+1 1
+# execution plan should not use temporary table:
+EXPLAIN EXTENDED
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa+0;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 5 100.00 Using filesort
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1
+Note 1003 select (select `test`.`t1`.`a` AS `a`) AS `aa`,count(distinct `test`.`t1`.`b`) AS `COUNT(DISTINCT b)` from `test`.`t1` group by ((select `test`.`t1`.`a` AS `a`) + 0)
+EXPLAIN EXTENDED
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY -aa;
+id select_type table type possible_keys key key_len ref rows filtered Extra
+1 PRIMARY t1 ALL NULL NULL NULL NULL 5 100.00 Using filesort
+2 DEPENDENT SUBQUERY NULL NULL NULL NULL NULL NULL NULL NULL No tables used
+Warnings:
+Note 1276 Field or reference 'test.t1.a' of SELECT #2 was resolved in SELECT #1
+Note 1003 select (select `test`.`t1`.`a` AS `a`) AS `aa`,count(distinct `test`.`t1`.`b`) AS `COUNT(DISTINCT b)` from `test`.`t1` group by -((select `test`.`t1`.`a` AS `a`))
+# should return only one record
+SELECT (SELECT tt.a FROM t1 tt LIMIT 1) aa, COUNT(DISTINCT b) FROM t1
+GROUP BY aa;
+aa COUNT(DISTINCT b)
+4 4
+CREATE TABLE t2 SELECT DISTINCT a FROM t1;
+# originally reported queries (1st two columns of next two query
+# results should be same):
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT(DISTINCT b)
+FROM t1 GROUP BY aa, b;
+aa b COUNT(DISTINCT b)
+1 10 1
+2 20 1
+3 30 1
+4 40 1
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT( b)
+FROM t1 GROUP BY aa, b;
+aa b COUNT( b)
+1 10 1
+2 20 2
+3 30 1
+4 40 1
+# ORDER BY for sure:
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT(DISTINCT b)
+FROM t1 GROUP BY aa, b ORDER BY -aa, -b;
+aa b COUNT(DISTINCT b)
+4 40 1
+3 30 1
+2 20 1
+1 10 1
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT( b)
+FROM t1 GROUP BY aa, b ORDER BY -aa, -b;
+aa b COUNT( b)
+4 40 1
+3 30 1
+2 20 2
+1 10 1
+DROP TABLE t1, t2;
+#
+# End of 5.1 tests
diff --git a/mysql-test/r/group_min_max.result b/mysql-test/r/group_min_max.result
index ba1c2a79ad9..2f38e7b983b 100644
--- a/mysql-test/r/group_min_max.result
+++ b/mysql-test/r/group_min_max.result
@@ -2524,6 +2524,19 @@ SELECT a, MAX(b) FROM t WHERE b GROUP BY a;
a MAX(b)
2 1
DROP TABLE t;
+CREATE TABLE t1(a INT NOT NULL, b INT NOT NULL, KEY (b));
+INSERT INTO t1 VALUES(1,1),(2,1);
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+SELECT 1 AS c, b FROM t1 WHERE b IN (1,2) GROUP BY c, b;
+c b
+1 1
+SELECT a FROM t1 WHERE b=1;
+a
+1
+2
+DROP TABLE t1;
End of 5.1 tests
#
# WL#3220 (Loose index scan for COUNT DISTINCT)
@@ -2686,7 +2699,7 @@ a c COUNT(DISTINCT c, a, b)
1 1 1
1 1 1
1 1 1
-2 1 1
+1 1 1
2 1 1
2 1 1
2 1 1
@@ -2714,7 +2727,7 @@ id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 range NULL a 10 NULL 9 Using index for group-by
SELECT a, COUNT(DISTINCT b), SUM(DISTINCT b) FROM t2 GROUP BY a;
a COUNT(DISTINCT b) SUM(DISTINCT b)
-2 8 36
+1 8 36
2 8 36
EXPLAIN SELECT COUNT(DISTINCT b), SUM(DISTINCT b) FROM t2 GROUP BY a;
id select_type table type possible_keys key key_len ref rows Extra
@@ -2761,7 +2774,7 @@ SELECT 42 * (a + c + COUNT(DISTINCT c, a, b)) FROM t2 GROUP BY a, b, c;
126
126
126
-168
+126
168
168
168
@@ -2779,3 +2792,24 @@ SELECT (SUM(DISTINCT a) + MAX(b)) FROM t2 GROUP BY a;
10
DROP TABLE t1,t2;
# end of WL#3220 tests
+#
+# Bug#50539: Wrong result when loose index scan is used for an aggregate
+# function with distinct
+#
+CREATE TABLE t1 (
+f1 int(11) NOT NULL DEFAULT '0',
+f2 char(1) NOT NULL DEFAULT '',
+PRIMARY KEY (f1,f2)
+) ;
+insert into t1 values(1,'A'),(1 , 'B'), (1, 'C'), (2, 'A'),
+(3, 'A'), (3, 'B'), (3, 'C'), (3, 'D');
+SELECT f1, COUNT(DISTINCT f2) FROM t1 GROUP BY f1;
+f1 COUNT(DISTINCT f2)
+1 3
+2 1
+3 4
+explain SELECT f1, COUNT(DISTINCT f2) FROM t1 GROUP BY f1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 range NULL PRIMARY 5 NULL 9 Using index for group-by (scanning)
+drop table t1;
+# End of test#50539.
diff --git a/mysql-test/r/handler_innodb.result b/mysql-test/r/handler_innodb.result
index 957fc30acef..08d2fc58e8a 100644
--- a/mysql-test/r/handler_innodb.result
+++ b/mysql-test/r/handler_innodb.result
@@ -548,6 +548,7 @@ c1
1
connection: flush
flush tables;;
+connection: waiter
connection: default
handler t2 open;
handler t2 read first;
@@ -559,23 +560,36 @@ c1
handler t1 close;
handler t2 close;
drop table t1,t2;
-drop table if exists t1,t2;
+drop table if exists t1, t0;
create table t1 (c1 int);
connection: default
handler t1 open;
handler t1 read first;
c1
connection: flush
-rename table t1 to t2;;
+rename table t1 to t0;;
+connection: waiter
connection: default
-handler t2 open;
-handler t2 read first;
-c1
+#
+# RENAME placed two pending locks and waits.
+# When HANDLER t0 OPEN does open_tables(), it calls
+# mysql_ha_flush(), which in turn closes the open HANDLER for t1.
+# RENAME TABLE gets unblocked. If it gets scheduled quickly
+# and manages to complete before open_tables()
+# of HANDLER t0 OPEN, open_tables() and therefore the whole
+# HANDLER t0 OPEN succeeds. Otherwise open_tables()
+# notices a pending or active exclusive metadata lock on t2
+# and the whole HANDLER t0 OPEN fails with ER_LOCK_DEADLOCK
+# error.
+#
+handler t0 open;
+handler t0 close;
+connection: flush
handler t1 read next;
-ERROR 42S02: Table 'test.t1' doesn't exist
+ERROR 42S02: Unknown table 't1' in HANDLER
handler t1 close;
-handler t2 close;
-drop table t2;
+ERROR 42S02: Unknown table 't1' in HANDLER
+drop table t0;
drop table if exists t1;
create temporary table t1 (a int, b char(1), key a(a), key b(a,b));
insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
@@ -731,15 +745,968 @@ drop table t1;
handler t1 read a next;
ERROR 42S02: Unknown table 't1' in HANDLER
drop table if exists t1;
+# First test case which is supposed trigger the execution
+# path on which problem was discovered.
create table t1 (a int);
insert into t1 values (1);
handler t1 open;
+lock table t1 write;
alter table t1 engine=memory;
handler t1 read a next;
ERROR HY000: Table storage engine for 't1' doesn't have this option
handler t1 close;
+unlock tables;
+drop table t1;
+# Now test case which was reported originally but which no longer
+# triggers execution path which has caused the problem.
+create table t1 (a int, key(a));
+insert into t1 values (1);
+handler t1 open;
+alter table t1 engine=memory;
+# Since S metadata lock was already acquired at HANDLER OPEN time
+# and TL_READ lock requested by HANDLER READ is compatible with
+# ALTER's TL_WRITE_ALLOW_READ the below statement should succeed
+# without waiting. The old version of table should be used in it.
+handler t1 read a next;
+a
+1
+handler t1 close;
drop table t1;
USE information_schema;
HANDLER COLUMNS OPEN;
ERROR HY000: Incorrect usage of HANDLER OPEN and information_schema
USE test;
+#
+# Add test coverage for HANDLER and LOCK TABLES, HANDLER and DDL.
+#
+drop table if exists t1, t2, t3;
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 (a int, key a (a)) select * from t1;
+create temporary table t3 (a int, key a (a)) select * from t2;
+handler t1 open;
+handler t2 open;
+handler t3 open;
+#
+# No HANDLER sql is allowed under LOCK TABLES.
+# But it does not implicitly closes all handlers.
+#
+lock table t1 read;
+handler t1 open;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t1 read next;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t2 close;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t3 open;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# After UNLOCK TABLES handlers should be around and
+# we should be able to continue reading through them.
+unlock tables;
+handler t1 read next;
+a
+1
+handler t1 close;
+handler t2 read next;
+a
+1
+handler t2 close;
+handler t3 read next;
+a
+1
+handler t3 close;
+drop temporary table t3;
+#
+# Other operations that implicitly close handler:
+#
+# TRUNCATE
+#
+handler t1 open;
+truncate table t1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler t1 open;
+#
+# CREATE TRIGGER
+#
+create trigger t1_ai after insert on t1 for each row set @a=1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TRIGGER
+#
+handler t1 open;
+drop trigger t1_ai;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ALTER TABLE
+#
+handler t1 open;
+alter table t1 add column b int;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ANALYZE TABLE
+#
+handler t1 open;
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# OPTIMIZE TABLE
+#
+handler t1 open;
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
+test.t1 optimize status OK
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# REPAIR TABLE
+#
+handler t1 open;
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair note The storage engine for the table doesn't support repair
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TABLE, naturally.
+#
+handler t1 open;
+drop table t1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+create table t1 (a int, b int, key a (a)) select a from t2;
+#
+# RENAME TABLE, naturally
+#
+handler t1 open;
+rename table t1 to t3;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# CREATE TABLE (even with IF NOT EXISTS clause,
+# and the table exists).
+#
+handler t2 open;
+create table if not exists t2 (a int);
+Warnings:
+Note 1050 Table 't2' already exists
+handler t2 read next;
+ERROR 42S02: Unknown table 't2' in HANDLER
+rename table t3 to t1;
+drop table t2;
+#
+# FLUSH TABLE doesn't close the table but loses the position
+#
+handler t1 open;
+handler t1 read a prev;
+b a
+NULL 5
+flush table t1;
+handler t1 read a prev;
+b a
+NULL 5
+handler t1 close;
+#
+# FLUSH TABLES WITH READ LOCK behaves like FLUSH TABLE.
+#
+handler t1 open;
+handler t1 read a prev;
+b a
+NULL 5
+flush tables with read lock;
+handler t1 read a prev;
+b a
+NULL 5
+handler t1 close;
+unlock tables;
+#
+# Let us also check that these operations behave in similar
+# way under LOCK TABLES.
+#
+# TRUNCATE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+truncate table t1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler t1 open;
+#
+# CREATE TRIGGER under LOCK TABLES.
+#
+lock tables t1 write;
+create trigger t1_ai after insert on t1 for each row set @a=1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TRIGGER under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+drop trigger t1_ai;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ALTER TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+alter table t1 drop column b;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ANALYZE TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status OK
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# OPTIMIZE TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
+test.t1 optimize status OK
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# REPAIR TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair note The storage engine for the table doesn't support repair
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TABLE under LOCK TABLES, naturally.
+#
+handler t1 open;
+lock tables t1 write;
+drop table t1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+#
+# FLUSH TABLE doesn't close the table but loses the position
+#
+handler t1 open;
+handler t1 read a prev;
+a b
+5 NULL
+lock tables t1 write;
+flush table t1;
+unlock tables;
+handler t1 read a prev;
+a b
+5 NULL
+handler t1 close;
+#
+# Explore the effect of HANDLER locks on concurrent DDL
+#
+handler t1 open;
+# Establishing auxiliary connections con1, con2, con3
+# --> connection con1;
+# Sending:
+drop table t1 ;
+# We can't use connection 'default' as wait_condition will
+# autoclose handlers.
+# --> connection con2
+# Waitng for 'drop table t1' to get blocked...
+# --> connection default
+handler t1 read a prev;
+a b
+5 NULL
+handler t1 read a prev;
+a b
+4 NULL
+handler t1 close;
+# --> connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+#
+# Explore the effect of HANDLER locks in parallel with SELECT
+#
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+a
+1
+2
+3
+4
+5
+handler t1 open;
+handler t1 read a prev;
+a
+5
+handler t1 read a prev;
+a
+4
+handler t1 close;
+# --> connection con1;
+# Sending:
+drop table t1 ;
+# --> connection con2
+# Waiting for 'drop table t1' to get blocked...
+# --> connection default
+# We can still use the table, it's part of the transaction
+select * from t1;
+a
+1
+2
+3
+4
+5
+# Such are the circumstances that t1 is a part of transaction,
+# thus we can reopen it in the handler
+handler t1 open;
+# We can commit the transaction, it doesn't close the handler
+# and doesn't let DROP to proceed.
+commit;
+handler t1 read a prev;
+a
+5
+handler t1 read a prev;
+a
+4
+handler t1 read a prev;
+a
+3
+handler t1 close;
+# --> connection con1
+# Now drop can proceed
+# Reaping 'drop table t1'...
+# --> connection default
+#
+# Demonstrate that HANDLER locks and transaction locks
+# reside in the same context, and we don't back-off
+# when have transaction or handler locks.
+#
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t0 (a int, key a (a));
+insert into t0 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+a
+1
+2
+3
+4
+5
+# --> connection con2
+# Sending:
+rename table t0 to t3, t1 to t0, t3 to t1;
+# --> connection con1
+# Waiting for 'rename table ...' to get blocked...
+# --> connection default
+handler t0 open;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+select * from t0;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+handler t1 open;
+commit;
+handler t1 close;
+# --> connection con2
+# Reaping 'rename table ...'...
+# --> connection default
+handler t1 open;
+handler t1 read a prev;
+a
+5
+handler t1 close;
+drop table t0;
+#
+# Originally there was a deadlock error in this test.
+# With implementation of deadlock detector
+# we no longer deadlock, but block and wait on a lock.
+# The HANDLER is auto-closed as soon as the connection
+# sees a pending conflicting lock against it.
+#
+create table t2 (a int, key a (a));
+handler t1 open;
+# --> connection con1
+lock tables t2 read;
+# --> connection con2
+# Sending 'drop table t2'...
+drop table t2;
+# --> connection con1
+# Waiting for 'drop table t2' to get blocked...
+# --> connection default
+# Sending 'select * from t2'
+select * from t2;
+# --> connection con1
+# Waiting for 'select * from t2' to get blocked...
+unlock tables;
+# --> connection con2
+# Reaping 'drop table t2'...
+# --> connection default
+# Reaping 'select * from t2'
+ERROR 42S02: Table 'test.t2' doesn't exist
+handler t1 close;
+#
+# ROLLBACK TO SAVEPOINT releases transactional locks,
+# but has no effect on open HANDLERs
+#
+create table t2 like t1;
+create table t3 like t1;
+begin;
+# Have something before the savepoint
+select * from t3;
+a
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+a
+1
+handler t1 read a next;
+a
+2
+select * from t2;
+a
+# --> connection con1
+# Sending:
+drop table t1;
+# --> connection con2
+# Sending:
+drop table t2;
+# --> connection default
+# Let DROP TABLE statements sync in. We must use
+# a separate connection for that, because otherwise SELECT
+# will auto-close the HANDLERs, becaues there are pending
+# exclusive locks against them.
+# --> connection con3
+# Waiting for 'drop table t1' to get blocked...
+# Waiting for 'drop table t2' to get blocked...
+# Demonstrate that t2 lock was released and t2 was dropped
+# after ROLLBACK TO SAVEPOINT
+# --> connection default
+rollback to savepoint sv;
+# --> connection con2
+# Reaping 'drop table t2'...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t1 read a next;
+a
+3
+handler t1 read a next;
+a
+4
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t1 close;
+# connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+commit;
+drop table t3;
+#
+# A few special cases when using SAVEPOINT/ROLLBACK TO
+# SAVEPOINT and HANDLER.
+#
+# Show that rollback to the savepoint taken in the beginning
+# of the transaction doesn't release mdl lock on
+# the HANDLER that was opened later.
+#
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+begin;
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+a
+1
+handler t1 read a next;
+a
+2
+select * from t2;
+a
+# --> connection con1
+# Sending:
+drop table t1;
+# --> connection con2
+# Sending:
+drop table t2;
+# --> connection default
+# Let DROP TABLE statements sync in. We must use
+# a separate connection for that, because otherwise SELECT
+# will auto-close the HANDLERs, becaues there are pending
+# exclusive locks against them.
+# --> connection con3
+# Waiting for 'drop table t1' to get blocked...
+# Waiting for 'drop table t2' to get blocked...
+# Demonstrate that t2 lock was released and t2 was dropped
+# after ROLLBACK TO SAVEPOINT
+# --> connection default
+rollback to savepoint sv;
+# --> connection con2
+# Reaping 'drop table t2'...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t1 read a next;
+a
+3
+handler t1 read a next;
+a
+4
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t1 close;
+# connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+commit;
+#
+# Show that rollback to the savepoint taken in the beginning
+# of the transaction works properly (no valgrind warnins, etc),
+# even though it's done after the HANDLER mdl lock that was there
+# at the beginning is released and added again.
+#
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+create table t3 like t1;
+insert into t3 (a) select a from t1;
+begin;
+handler t1 open;
+savepoint sv;
+handler t1 read a first;
+a
+1
+select * from t2;
+a
+handler t1 close;
+handler t3 open;
+handler t3 read a first;
+a
+1
+rollback to savepoint sv;
+# --> connection con1
+drop table t1, t2;
+# Sending:
+drop table t3;
+# Let DROP TABLE statement sync in.
+# --> connection con2
+# Waiting for 'drop table t3' to get blocked...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t3 read a next;
+a
+2
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t3 close;
+# connection con1
+# Reaping 'drop table t3'...
+# --> connection default
+commit;
+#
+# If we have to wait on an exclusive locks while having
+# an open HANDLER, ER_LOCK_DEADLOCK is reported.
+#
+create table t1 (a int, key a(a));
+create table t2 like t1;
+handler t1 open;
+# --> connection con1
+lock table t1 write, t2 write;
+# --> connection default
+drop table t2;
+# --> connection con2
+# Waiting for 'drop table t2' to get blocked...
+# --> connection con1
+drop table t1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+unlock tables;
+# --> connection default
+# Demonstrate that there is no deadlock with FLUSH TABLE,
+# even though it is waiting for the other table to go away
+create table t2 like t1;
+# Sending:
+flush table t2;
+# --> connection con2
+drop table t1;
+# --> connection con1
+unlock tables;
+# --> connection default
+# Reaping 'flush table t2'...
+drop table t2;
+#
+# Bug #46224 HANDLER statements within a transaction might
+# lead to deadlocks
+#
+create table t1 (a int, key a(a));
+insert into t1 values (1), (2);
+# --> connection default
+begin;
+select * from t1;
+a
+1
+2
+handler t1 open;
+# --> connection con1
+# Sending:
+lock tables t1 write;
+# --> connection con2
+# Check that 'lock tables t1 write' waits until transaction which
+# has read from the table commits.
+# --> connection default
+# The below 'handler t1 read ...' should not be blocked as
+# 'lock tables t1 write' has not succeeded yet.
+handler t1 read a next;
+a
+1
+# Unblock 'lock tables t1 write'.
+commit;
+# --> connection con1
+# Reap 'lock tables t1 write'.
+# --> connection default
+# Sending:
+handler t1 read a next;
+# --> connection con1
+# Waiting for 'handler t1 read a next' to get blocked...
+# The below 'drop table t1' should be able to proceed without
+# waiting as it will force HANDLER to be closed.
+drop table t1;
+unlock tables;
+# --> connection default
+# Reaping 'handler t1 read a next'...
+ERROR 42S02: Table 'test.t1' doesn't exist
+handler t1 close;
+# --> connection con1
+# --> connection con2
+# --> connection con3
+#
+# A temporary table test.
+# Check that we don't loose positions of HANDLER opened
+# against a temporary table.
+#
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create temporary table t2 (a int, b int, key a (a));
+insert into t2 (a) select a from t1;
+handler t1 open;
+handler t1 read a next;
+a b
+1 NULL
+handler t2 open;
+handler t2 read a next;
+a b
+1 NULL
+flush table t1;
+handler t2 read a next;
+a b
+2 NULL
+# Sic: the position is lost
+handler t1 read a next;
+a b
+1 NULL
+select * from t1;
+a b
+1 NULL
+2 NULL
+3 NULL
+4 NULL
+5 NULL
+# Sic: the position is not lost
+handler t2 read a next;
+a b
+3 NULL
+select * from t2;
+ERROR HY000: Can't reopen table: 't2'
+handler t2 read a next;
+a b
+4 NULL
+drop table t1;
+drop temporary table t2;
+#
+# A test for lock_table_names()/unlock_table_names() function.
+# It should work properly in presence of open HANDLER.
+#
+create table t1 (a int, b int, key a (a));
+create table t2 like t1;
+create table t3 like t1;
+create table t4 like t1;
+handler t1 open;
+handler t2 open;
+rename table t4 to t5, t3 to t4, t5 to t3;
+handler t1 read first;
+a b
+handler t2 read first;
+a b
+drop table t1, t2, t3, t4;
+#
+# A test for FLUSH TABLES WITH READ LOCK and HANDLER statements.
+#
+set autocommit=0;
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+create table t2 like t1;
+insert into t2 (a, b) select a, b from t1;
+create table t3 like t1;
+insert into t3 (a, b) select a, b from t1;
+commit;
+flush tables with read lock;
+handler t1 open;
+lock table t1 read;
+handler t1 read next;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# This implicitly leaves LOCK TABLES but doesn't drop the GLR
+lock table not_exists_write read;
+ERROR 42S02: Table 'test.not_exists_write' doesn't exist
+# We still have the read lock.
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+handler t1 read next;
+a b
+1 1
+handler t1 close;
+handler t1 open;
+select a from t2;
+a
+1
+2
+3
+4
+5
+handler t1 read next;
+a b
+1 1
+flush tables with read lock;
+handler t2 open;
+flush tables with read lock;
+handler t1 read next;
+a b
+1 1
+select a from t3;
+a
+1
+2
+3
+4
+5
+handler t2 read next;
+a b
+1 1
+handler t1 close;
+rollback;
+handler t2 close;
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+commit;
+flush tables;
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+unlock tables;
+drop table t1;
+set autocommit=default;
+drop table t2, t3;
+#
+# HANDLER statement and operation-type aware metadata locks.
+# Check that when we clone a ticket for HANDLER we downrade
+# the lock.
+#
+# Establish an auxiliary connection con1.
+# -> connection default
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+begin;
+insert into t1 (a, b) values (6, 6);
+handler t1 open;
+handler t1 read a last;
+a b
+6 6
+insert into t1 (a, b) values (7, 7);
+handler t1 read a last;
+a b
+7 7
+commit;
+# -> connection con1
+# Demonstrate that the HANDLER doesn't hold MDL_SHARED_WRITE.
+lock table t1 write;
+unlock tables;
+# -> connection default
+handler t1 read a prev;
+a b
+6 6
+handler t1 close;
+# Cleanup.
+drop table t1;
+# -> connection con1
+# -> connection default
+#
+# A test for Bug#50555 "handler commands crash server in
+# my_hash_first()".
+#
+handler no_such_table read no_such_index first;
+ERROR 42S02: Unknown table 'no_such_table' in HANDLER
+handler no_such_table close;
+ERROR 42S02: Unknown table 'no_such_table' in HANDLER
+#
+# Bug#50907 Assertion `hash_tables->table->next == __null' on
+# HANDLER OPEN
+#
+DROP TABLE IF EXISTS t1, t2;
+CREATE TEMPORARY TABLE t1 (i INT);
+CREATE TEMPORARY TABLE t2 (i INT);
+HANDLER t2 OPEN;
+HANDLER t2 READ FIRST;
+i
+HANDLER t2 CLOSE;
+DROP TABLE t1, t2;
+#
+# Bug#50912 Assertion `ticket->m_type >= mdl_request->type'
+# failed on HANDLER + I_S
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id INT);
+HANDLER t1 OPEN;
+SELECT table_name, table_comment FROM information_schema.tables
+WHERE table_schema= 'test' AND table_name= 't1';
+table_name table_comment
+t1
+HANDLER t1 CLOSE;
+DROP TABLE t1;
+#
+# Test for bug #50908 "Assertion `handler_tables_hash.records == 0'
+# failed in enter_locked_tables_mode".
+#
+drop tables if exists t1, t2;
+drop function if exists f1;
+create table t1 (i int);
+insert into t1 values (1), (2);
+create table t2 (j int);
+insert into t2 values (1);
+create function f1() returns int return (select count(*) from t2);
+# Check that open HANDLER survives statement executed in
+# prelocked mode.
+handler t1 open;
+handler t1 read next;
+i
+1
+# The below statement were aborted due to an assertion failure.
+select f1() from t2;
+f1()
+1
+handler t1 read next;
+i
+2
+handler t1 close;
+# Check that the same happens under GLOBAL READ LOCK.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+i
+1
+select f1() from t2;
+f1()
+1
+handler t1 read next;
+i
+2
+unlock tables;
+handler t1 close;
+# Now, check that the same happens if LOCK TABLES is executed.
+handler t1 open;
+handler t1 read next;
+i
+1
+lock table t2 read;
+select * from t2;
+j
+1
+unlock tables;
+handler t1 read next;
+i
+2
+handler t1 close;
+# Finally, check scenario with GRL and LOCK TABLES.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+i
+1
+lock table t2 read;
+select * from t2;
+j
+1
+# This unlocks both tables and GRL.
+unlock tables;
+handler t1 read next;
+i
+2
+handler t1 close;
+# Clean-up.
+drop function f1;
+drop tables t1, t2;
+#
+# Test for bug #51136 "Crash in pthread_rwlock_rdlock on TEMPORARY +
+# HANDLER + LOCK + SP".
+# Also see additional coverage for this bug in flush.test.
+#
+drop tables if exists t1, t2;
+create table t1 (i int);
+create temporary table t2 (j int);
+handler t1 open;
+lock table t2 read;
+# This commit should not release any MDL locks.
+commit;
+unlock tables;
+# The below statement crashed before the bug fix as it
+# has attempted to release metadata lock which was
+# already released by commit.
+handler t1 close;
+drop tables t1, t2;
+#
+# Bug#51355 handler stmt cause assertion in
+# bool MDL_context::try_acquire_lock(MDL_request*)
+#
+DROP TABLE IF EXISTS t1;
+# Connection default
+CREATE TABLE t1(id INT, KEY id(id));
+HANDLER t1 OPEN;
+# Connection con51355
+# Sending:
+DROP TABLE t1;
+# Connection default
+# This I_S query will cause the handler table to be closed and
+# the metadata lock to be released. This will allow DROP TABLE
+# to proceed. Waiting for the table to be removed.
+# Connection con51355
+# Reaping: DROP TABLE t1
+# Connection default
+HANDLER t1 READ id NEXT;
+ERROR 42S02: Table 'test.t1' doesn't exist
+HANDLER t1 READ id NEXT;
+ERROR 42S02: Table 'test.t1' doesn't exist
+HANDLER t1 CLOSE;
+# Connection con51355
+# Connection default
diff --git a/mysql-test/r/handler_myisam.result b/mysql-test/r/handler_myisam.result
index 90a1bdfe6be..2625222ec1a 100644
--- a/mysql-test/r/handler_myisam.result
+++ b/mysql-test/r/handler_myisam.result
@@ -547,6 +547,7 @@ c1
1
connection: flush
flush tables;;
+connection: waiter
connection: default
handler t2 open;
handler t2 read first;
@@ -558,23 +559,36 @@ c1
handler t1 close;
handler t2 close;
drop table t1,t2;
-drop table if exists t1,t2;
+drop table if exists t1, t0;
create table t1 (c1 int);
connection: default
handler t1 open;
handler t1 read first;
c1
connection: flush
-rename table t1 to t2;;
+rename table t1 to t0;;
+connection: waiter
connection: default
-handler t2 open;
-handler t2 read first;
-c1
+#
+# RENAME placed two pending locks and waits.
+# When HANDLER t0 OPEN does open_tables(), it calls
+# mysql_ha_flush(), which in turn closes the open HANDLER for t1.
+# RENAME TABLE gets unblocked. If it gets scheduled quickly
+# and manages to complete before open_tables()
+# of HANDLER t0 OPEN, open_tables() and therefore the whole
+# HANDLER t0 OPEN succeeds. Otherwise open_tables()
+# notices a pending or active exclusive metadata lock on t2
+# and the whole HANDLER t0 OPEN fails with ER_LOCK_DEADLOCK
+# error.
+#
+handler t0 open;
+handler t0 close;
+connection: flush
handler t1 read next;
-ERROR 42S02: Table 'test.t1' doesn't exist
+ERROR 42S02: Unknown table 't1' in HANDLER
handler t1 close;
-handler t2 close;
-drop table t2;
+ERROR 42S02: Unknown table 't1' in HANDLER
+drop table t0;
drop table if exists t1;
create temporary table t1 (a int, b char(1), key a(a), key b(a,b));
insert into t1 values (0,"a"),(1,"b"),(2,"c"),(3,"d"),(4,"e"),
@@ -729,19 +743,970 @@ drop table t1;
handler t1 read a next;
ERROR 42S02: Unknown table 't1' in HANDLER
drop table if exists t1;
+# First test case which is supposed trigger the execution
+# path on which problem was discovered.
create table t1 (a int);
insert into t1 values (1);
handler t1 open;
+lock table t1 write;
alter table t1 engine=memory;
handler t1 read a next;
ERROR HY000: Table storage engine for 't1' doesn't have this option
handler t1 close;
+unlock tables;
+drop table t1;
+# Now test case which was reported originally but which no longer
+# triggers execution path which has caused the problem.
+create table t1 (a int, key(a));
+insert into t1 values (1);
+handler t1 open;
+alter table t1 engine=memory;
+# Since S metadata lock was already acquired at HANDLER OPEN time
+# and TL_READ lock requested by HANDLER READ is compatible with
+# ALTER's TL_WRITE_ALLOW_READ the below statement should succeed
+# without waiting. The old version of table should be used in it.
+handler t1 read a next;
+a
+1
+handler t1 close;
drop table t1;
USE information_schema;
HANDLER COLUMNS OPEN;
ERROR HY000: Incorrect usage of HANDLER OPEN and information_schema
USE test;
#
+# Add test coverage for HANDLER and LOCK TABLES, HANDLER and DDL.
+#
+drop table if exists t1, t2, t3;
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 (a int, key a (a)) select * from t1;
+create temporary table t3 (a int, key a (a)) select * from t2;
+handler t1 open;
+handler t2 open;
+handler t3 open;
+#
+# No HANDLER sql is allowed under LOCK TABLES.
+# But it does not implicitly closes all handlers.
+#
+lock table t1 read;
+handler t1 open;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t1 read next;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t2 close;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+handler t3 open;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# After UNLOCK TABLES handlers should be around and
+# we should be able to continue reading through them.
+unlock tables;
+handler t1 read next;
+a
+1
+handler t1 close;
+handler t2 read next;
+a
+1
+handler t2 close;
+handler t3 read next;
+a
+1
+handler t3 close;
+drop temporary table t3;
+#
+# Other operations that implicitly close handler:
+#
+# TRUNCATE
+#
+handler t1 open;
+truncate table t1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler t1 open;
+#
+# CREATE TRIGGER
+#
+create trigger t1_ai after insert on t1 for each row set @a=1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TRIGGER
+#
+handler t1 open;
+drop trigger t1_ai;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ALTER TABLE
+#
+handler t1 open;
+alter table t1 add column b int;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ANALYZE TABLE
+#
+handler t1 open;
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status Table is already up to date
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# OPTIMIZE TABLE
+#
+handler t1 open;
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# REPAIR TABLE
+#
+handler t1 open;
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TABLE, naturally.
+#
+handler t1 open;
+drop table t1;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+create table t1 (a int, b int, key a (a)) select a from t2;
+#
+# RENAME TABLE, naturally
+#
+handler t1 open;
+rename table t1 to t3;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# CREATE TABLE (even with IF NOT EXISTS clause,
+# and the table exists).
+#
+handler t2 open;
+create table if not exists t2 (a int);
+Warnings:
+Note 1050 Table 't2' already exists
+handler t2 read next;
+ERROR 42S02: Unknown table 't2' in HANDLER
+rename table t3 to t1;
+drop table t2;
+#
+# FLUSH TABLE doesn't close the table but loses the position
+#
+handler t1 open;
+handler t1 read a prev;
+b a
+NULL 5
+flush table t1;
+handler t1 read a prev;
+b a
+NULL 5
+handler t1 close;
+#
+# FLUSH TABLES WITH READ LOCK behaves like FLUSH TABLE.
+#
+handler t1 open;
+handler t1 read a prev;
+b a
+NULL 5
+flush tables with read lock;
+handler t1 read a prev;
+b a
+NULL 5
+handler t1 close;
+unlock tables;
+#
+# Let us also check that these operations behave in similar
+# way under LOCK TABLES.
+#
+# TRUNCATE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+truncate table t1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+handler t1 open;
+#
+# CREATE TRIGGER under LOCK TABLES.
+#
+lock tables t1 write;
+create trigger t1_ai after insert on t1 for each row set @a=1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TRIGGER under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+drop trigger t1_ai;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ALTER TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+alter table t1 drop column b;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# ANALYZE TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+analyze table t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status Table is already up to date
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# OPTIMIZE TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+optimize table t1;
+Table Op Msg_type Msg_text
+test.t1 optimize status OK
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# REPAIR TABLE under LOCK TABLES.
+#
+handler t1 open;
+lock tables t1 write;
+repair table t1;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+#
+# DROP TABLE under LOCK TABLES, naturally.
+#
+handler t1 open;
+lock tables t1 write;
+drop table t1;
+unlock tables;
+handler t1 read next;
+ERROR 42S02: Unknown table 't1' in HANDLER
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+#
+# FLUSH TABLE doesn't close the table but loses the position
+#
+handler t1 open;
+handler t1 read a prev;
+a b
+5 NULL
+lock tables t1 write;
+flush table t1;
+unlock tables;
+handler t1 read a prev;
+a b
+5 NULL
+handler t1 close;
+#
+# Explore the effect of HANDLER locks on concurrent DDL
+#
+handler t1 open;
+# Establishing auxiliary connections con1, con2, con3
+# --> connection con1;
+# Sending:
+drop table t1 ;
+# We can't use connection 'default' as wait_condition will
+# autoclose handlers.
+# --> connection con2
+# Waitng for 'drop table t1' to get blocked...
+# --> connection default
+handler t1 read a prev;
+a b
+5 NULL
+handler t1 read a prev;
+a b
+4 NULL
+handler t1 close;
+# --> connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+#
+# Explore the effect of HANDLER locks in parallel with SELECT
+#
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+a
+1
+2
+3
+4
+5
+handler t1 open;
+handler t1 read a prev;
+a
+5
+handler t1 read a prev;
+a
+4
+handler t1 close;
+# --> connection con1;
+# Sending:
+drop table t1 ;
+# --> connection con2
+# Waiting for 'drop table t1' to get blocked...
+# --> connection default
+# We can still use the table, it's part of the transaction
+select * from t1;
+a
+1
+2
+3
+4
+5
+# Such are the circumstances that t1 is a part of transaction,
+# thus we can reopen it in the handler
+handler t1 open;
+# We can commit the transaction, it doesn't close the handler
+# and doesn't let DROP to proceed.
+commit;
+handler t1 read a prev;
+a
+5
+handler t1 read a prev;
+a
+4
+handler t1 read a prev;
+a
+3
+handler t1 close;
+# --> connection con1
+# Now drop can proceed
+# Reaping 'drop table t1'...
+# --> connection default
+#
+# Demonstrate that HANDLER locks and transaction locks
+# reside in the same context, and we don't back-off
+# when have transaction or handler locks.
+#
+create table t1 (a int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t0 (a int, key a (a));
+insert into t0 (a) values (1), (2), (3), (4), (5);
+begin;
+select * from t1;
+a
+1
+2
+3
+4
+5
+# --> connection con2
+# Sending:
+rename table t0 to t3, t1 to t0, t3 to t1;
+# --> connection con1
+# Waiting for 'rename table ...' to get blocked...
+# --> connection default
+handler t0 open;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+select * from t0;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+handler t1 open;
+commit;
+handler t1 close;
+# --> connection con2
+# Reaping 'rename table ...'...
+# --> connection default
+handler t1 open;
+handler t1 read a prev;
+a
+5
+handler t1 close;
+drop table t0;
+#
+# Originally there was a deadlock error in this test.
+# With implementation of deadlock detector
+# we no longer deadlock, but block and wait on a lock.
+# The HANDLER is auto-closed as soon as the connection
+# sees a pending conflicting lock against it.
+#
+create table t2 (a int, key a (a));
+handler t1 open;
+# --> connection con1
+lock tables t2 read;
+# --> connection con2
+# Sending 'drop table t2'...
+drop table t2;
+# --> connection con1
+# Waiting for 'drop table t2' to get blocked...
+# --> connection default
+# Sending 'select * from t2'
+select * from t2;
+# --> connection con1
+# Waiting for 'select * from t2' to get blocked...
+unlock tables;
+# --> connection con2
+# Reaping 'drop table t2'...
+# --> connection default
+# Reaping 'select * from t2'
+ERROR 42S02: Table 'test.t2' doesn't exist
+handler t1 close;
+#
+# ROLLBACK TO SAVEPOINT releases transactional locks,
+# but has no effect on open HANDLERs
+#
+create table t2 like t1;
+create table t3 like t1;
+begin;
+# Have something before the savepoint
+select * from t3;
+a
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+a
+1
+handler t1 read a next;
+a
+2
+select * from t2;
+a
+# --> connection con1
+# Sending:
+drop table t1;
+# --> connection con2
+# Sending:
+drop table t2;
+# --> connection default
+# Let DROP TABLE statements sync in. We must use
+# a separate connection for that, because otherwise SELECT
+# will auto-close the HANDLERs, becaues there are pending
+# exclusive locks against them.
+# --> connection con3
+# Waiting for 'drop table t1' to get blocked...
+# Waiting for 'drop table t2' to get blocked...
+# Demonstrate that t2 lock was released and t2 was dropped
+# after ROLLBACK TO SAVEPOINT
+# --> connection default
+rollback to savepoint sv;
+# --> connection con2
+# Reaping 'drop table t2'...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t1 read a next;
+a
+3
+handler t1 read a next;
+a
+4
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t1 close;
+# connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+commit;
+drop table t3;
+#
+# A few special cases when using SAVEPOINT/ROLLBACK TO
+# SAVEPOINT and HANDLER.
+#
+# Show that rollback to the savepoint taken in the beginning
+# of the transaction doesn't release mdl lock on
+# the HANDLER that was opened later.
+#
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+begin;
+savepoint sv;
+handler t1 open;
+handler t1 read a first;
+a
+1
+handler t1 read a next;
+a
+2
+select * from t2;
+a
+# --> connection con1
+# Sending:
+drop table t1;
+# --> connection con2
+# Sending:
+drop table t2;
+# --> connection default
+# Let DROP TABLE statements sync in. We must use
+# a separate connection for that, because otherwise SELECT
+# will auto-close the HANDLERs, becaues there are pending
+# exclusive locks against them.
+# --> connection con3
+# Waiting for 'drop table t1' to get blocked...
+# Waiting for 'drop table t2' to get blocked...
+# Demonstrate that t2 lock was released and t2 was dropped
+# after ROLLBACK TO SAVEPOINT
+# --> connection default
+rollback to savepoint sv;
+# --> connection con2
+# Reaping 'drop table t2'...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t1 read a next;
+a
+3
+handler t1 read a next;
+a
+4
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t1 close;
+# connection con1
+# Reaping 'drop table t1'...
+# --> connection default
+commit;
+#
+# Show that rollback to the savepoint taken in the beginning
+# of the transaction works properly (no valgrind warnins, etc),
+# even though it's done after the HANDLER mdl lock that was there
+# at the beginning is released and added again.
+#
+create table t1 (a int, key a(a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create table t2 like t1;
+create table t3 like t1;
+insert into t3 (a) select a from t1;
+begin;
+handler t1 open;
+savepoint sv;
+handler t1 read a first;
+a
+1
+select * from t2;
+a
+handler t1 close;
+handler t3 open;
+handler t3 read a first;
+a
+1
+rollback to savepoint sv;
+# --> connection con1
+drop table t1, t2;
+# Sending:
+drop table t3;
+# Let DROP TABLE statement sync in.
+# --> connection con2
+# Waiting for 'drop table t3' to get blocked...
+# Demonstrate that ROLLBACK TO SAVEPOINT didn't release the handler
+# lock.
+# --> connection default
+handler t3 read a next;
+a
+2
+# Demonstrate that the drop will go through as soon as we close the
+# HANDLER
+handler t3 close;
+# connection con1
+# Reaping 'drop table t3'...
+# --> connection default
+commit;
+#
+# If we have to wait on an exclusive locks while having
+# an open HANDLER, ER_LOCK_DEADLOCK is reported.
+#
+create table t1 (a int, key a(a));
+create table t2 like t1;
+handler t1 open;
+# --> connection con1
+lock table t1 write, t2 write;
+# --> connection default
+drop table t2;
+# --> connection con2
+# Waiting for 'drop table t2' to get blocked...
+# --> connection con1
+drop table t1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+unlock tables;
+# --> connection default
+# Demonstrate that there is no deadlock with FLUSH TABLE,
+# even though it is waiting for the other table to go away
+create table t2 like t1;
+# Sending:
+flush table t2;
+# --> connection con2
+drop table t1;
+# --> connection con1
+unlock tables;
+# --> connection default
+# Reaping 'flush table t2'...
+drop table t2;
+#
+# Bug #46224 HANDLER statements within a transaction might
+# lead to deadlocks
+#
+create table t1 (a int, key a(a));
+insert into t1 values (1), (2);
+# --> connection default
+begin;
+select * from t1;
+a
+1
+2
+handler t1 open;
+# --> connection con1
+# Sending:
+lock tables t1 write;
+# --> connection con2
+# Check that 'lock tables t1 write' waits until transaction which
+# has read from the table commits.
+# --> connection default
+# The below 'handler t1 read ...' should not be blocked as
+# 'lock tables t1 write' has not succeeded yet.
+handler t1 read a next;
+a
+1
+# Unblock 'lock tables t1 write'.
+commit;
+# --> connection con1
+# Reap 'lock tables t1 write'.
+# --> connection default
+# Sending:
+handler t1 read a next;
+# --> connection con1
+# Waiting for 'handler t1 read a next' to get blocked...
+# The below 'drop table t1' should be able to proceed without
+# waiting as it will force HANDLER to be closed.
+drop table t1;
+unlock tables;
+# --> connection default
+# Reaping 'handler t1 read a next'...
+ERROR 42S02: Table 'test.t1' doesn't exist
+handler t1 close;
+# --> connection con1
+# --> connection con2
+# --> connection con3
+#
+# A temporary table test.
+# Check that we don't loose positions of HANDLER opened
+# against a temporary table.
+#
+create table t1 (a int, b int, key a (a));
+insert into t1 (a) values (1), (2), (3), (4), (5);
+create temporary table t2 (a int, b int, key a (a));
+insert into t2 (a) select a from t1;
+handler t1 open;
+handler t1 read a next;
+a b
+1 NULL
+handler t2 open;
+handler t2 read a next;
+a b
+1 NULL
+flush table t1;
+handler t2 read a next;
+a b
+2 NULL
+# Sic: the position is lost
+handler t1 read a next;
+a b
+1 NULL
+select * from t1;
+a b
+1 NULL
+2 NULL
+3 NULL
+4 NULL
+5 NULL
+# Sic: the position is not lost
+handler t2 read a next;
+a b
+3 NULL
+select * from t2;
+ERROR HY000: Can't reopen table: 't2'
+handler t2 read a next;
+a b
+4 NULL
+drop table t1;
+drop temporary table t2;
+#
+# A test for lock_table_names()/unlock_table_names() function.
+# It should work properly in presence of open HANDLER.
+#
+create table t1 (a int, b int, key a (a));
+create table t2 like t1;
+create table t3 like t1;
+create table t4 like t1;
+handler t1 open;
+handler t2 open;
+rename table t4 to t5, t3 to t4, t5 to t3;
+handler t1 read first;
+a b
+handler t2 read first;
+a b
+drop table t1, t2, t3, t4;
+#
+# A test for FLUSH TABLES WITH READ LOCK and HANDLER statements.
+#
+set autocommit=0;
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+create table t2 like t1;
+insert into t2 (a, b) select a, b from t1;
+create table t3 like t1;
+insert into t3 (a, b) select a, b from t1;
+commit;
+flush tables with read lock;
+handler t1 open;
+lock table t1 read;
+handler t1 read next;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# This implicitly leaves LOCK TABLES but doesn't drop the GLR
+lock table not_exists_write read;
+ERROR 42S02: Table 'test.not_exists_write' doesn't exist
+# We still have the read lock.
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+handler t1 read next;
+a b
+1 1
+handler t1 close;
+handler t1 open;
+select a from t2;
+a
+1
+2
+3
+4
+5
+handler t1 read next;
+a b
+1 1
+flush tables with read lock;
+handler t2 open;
+flush tables with read lock;
+handler t1 read next;
+a b
+1 1
+select a from t3;
+a
+1
+2
+3
+4
+5
+handler t2 read next;
+a b
+1 1
+handler t1 close;
+rollback;
+handler t2 close;
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+commit;
+flush tables;
+drop table t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+unlock tables;
+drop table t1;
+set autocommit=default;
+drop table t2, t3;
+#
+# HANDLER statement and operation-type aware metadata locks.
+# Check that when we clone a ticket for HANDLER we downrade
+# the lock.
+#
+# Establish an auxiliary connection con1.
+# -> connection default
+create table t1 (a int, b int, key a (a));
+insert into t1 (a, b) values (1, 1), (2, 1), (3, 2), (4, 2), (5, 5);
+begin;
+insert into t1 (a, b) values (6, 6);
+handler t1 open;
+handler t1 read a last;
+a b
+6 6
+insert into t1 (a, b) values (7, 7);
+handler t1 read a last;
+a b
+7 7
+commit;
+# -> connection con1
+# Demonstrate that the HANDLER doesn't hold MDL_SHARED_WRITE.
+lock table t1 write;
+unlock tables;
+# -> connection default
+handler t1 read a prev;
+a b
+6 6
+handler t1 close;
+# Cleanup.
+drop table t1;
+# -> connection con1
+# -> connection default
+#
+# A test for Bug#50555 "handler commands crash server in
+# my_hash_first()".
+#
+handler no_such_table read no_such_index first;
+ERROR 42S02: Unknown table 'no_such_table' in HANDLER
+handler no_such_table close;
+ERROR 42S02: Unknown table 'no_such_table' in HANDLER
+#
+# Bug#50907 Assertion `hash_tables->table->next == __null' on
+# HANDLER OPEN
+#
+DROP TABLE IF EXISTS t1, t2;
+CREATE TEMPORARY TABLE t1 (i INT);
+CREATE TEMPORARY TABLE t2 (i INT);
+HANDLER t2 OPEN;
+HANDLER t2 READ FIRST;
+i
+HANDLER t2 CLOSE;
+DROP TABLE t1, t2;
+#
+# Bug#50912 Assertion `ticket->m_type >= mdl_request->type'
+# failed on HANDLER + I_S
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id INT);
+HANDLER t1 OPEN;
+SELECT table_name, table_comment FROM information_schema.tables
+WHERE table_schema= 'test' AND table_name= 't1';
+table_name table_comment
+t1
+HANDLER t1 CLOSE;
+DROP TABLE t1;
+#
+# Test for bug #50908 "Assertion `handler_tables_hash.records == 0'
+# failed in enter_locked_tables_mode".
+#
+drop tables if exists t1, t2;
+drop function if exists f1;
+create table t1 (i int);
+insert into t1 values (1), (2);
+create table t2 (j int);
+insert into t2 values (1);
+create function f1() returns int return (select count(*) from t2);
+# Check that open HANDLER survives statement executed in
+# prelocked mode.
+handler t1 open;
+handler t1 read next;
+i
+1
+# The below statement were aborted due to an assertion failure.
+select f1() from t2;
+f1()
+1
+handler t1 read next;
+i
+2
+handler t1 close;
+# Check that the same happens under GLOBAL READ LOCK.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+i
+1
+select f1() from t2;
+f1()
+1
+handler t1 read next;
+i
+2
+unlock tables;
+handler t1 close;
+# Now, check that the same happens if LOCK TABLES is executed.
+handler t1 open;
+handler t1 read next;
+i
+1
+lock table t2 read;
+select * from t2;
+j
+1
+unlock tables;
+handler t1 read next;
+i
+2
+handler t1 close;
+# Finally, check scenario with GRL and LOCK TABLES.
+flush tables with read lock;
+handler t1 open;
+handler t1 read next;
+i
+1
+lock table t2 read;
+select * from t2;
+j
+1
+# This unlocks both tables and GRL.
+unlock tables;
+handler t1 read next;
+i
+2
+handler t1 close;
+# Clean-up.
+drop function f1;
+drop tables t1, t2;
+#
+# Test for bug #51136 "Crash in pthread_rwlock_rdlock on TEMPORARY +
+# HANDLER + LOCK + SP".
+# Also see additional coverage for this bug in flush.test.
+#
+drop tables if exists t1, t2;
+create table t1 (i int);
+create temporary table t2 (j int);
+handler t1 open;
+lock table t2 read;
+# This commit should not release any MDL locks.
+commit;
+unlock tables;
+# The below statement crashed before the bug fix as it
+# has attempted to release metadata lock which was
+# already released by commit.
+handler t1 close;
+drop tables t1, t2;
+#
+# Bug#51355 handler stmt cause assertion in
+# bool MDL_context::try_acquire_lock(MDL_request*)
+#
+DROP TABLE IF EXISTS t1;
+# Connection default
+CREATE TABLE t1(id INT, KEY id(id));
+HANDLER t1 OPEN;
+# Connection con51355
+# Sending:
+DROP TABLE t1;
+# Connection default
+# This I_S query will cause the handler table to be closed and
+# the metadata lock to be released. This will allow DROP TABLE
+# to proceed. Waiting for the table to be removed.
+# Connection con51355
+# Reaping: DROP TABLE t1
+# Connection default
+HANDLER t1 READ id NEXT;
+ERROR 42S02: Table 'test.t1' doesn't exist
+HANDLER t1 READ id NEXT;
+ERROR 42S02: Table 'test.t1' doesn't exist
+HANDLER t1 CLOSE;
+# Connection con51355
+# Connection default
+#
# BUG #46456: HANDLER OPEN + TRUNCATE + DROP (temporary) TABLE, crash
#
CREATE TABLE t1 AS SELECT 1 AS f1;
diff --git a/mysql-test/r/have_utf16.require b/mysql-test/r/have_utf16.require
new file mode 100644
index 00000000000..a1b5469cad7
--- /dev/null
+++ b/mysql-test/r/have_utf16.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+utf16_general_ci utf16 54 Yes Yes 1
diff --git a/mysql-test/r/have_utf32.require b/mysql-test/r/have_utf32.require
new file mode 100644
index 00000000000..710ddb8090c
--- /dev/null
+++ b/mysql-test/r/have_utf32.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+utf32_general_ci utf32 60 Yes Yes 1
diff --git a/mysql-test/r/have_utf8mb4.require b/mysql-test/r/have_utf8mb4.require
new file mode 100644
index 00000000000..1669b332d0d
--- /dev/null
+++ b/mysql-test/r/have_utf8mb4.require
@@ -0,0 +1,2 @@
+Collation Charset Id Default Compiled Sortlen
+utf8mb4_general_ci utf8mb4 45 Yes Yes 1
diff --git a/mysql-test/r/having.result b/mysql-test/r/having.result
index f0b934ebd3a..28e798f5475 100644
--- a/mysql-test/r/having.result
+++ b/mysql-test/r/having.result
@@ -430,4 +430,24 @@ SELECT b, COUNT(DISTINCT a) FROM t1 GROUP BY b HAVING b is NULL;
b COUNT(DISTINCT a)
NULL 1
DROP TABLE t1;
+#
+# Bug#50995 Having clause on subquery result produces incorrect results.
+#
+CREATE TABLE t1
+(
+id1 INT,
+id2 INT NOT NULL,
+INDEX id1(id2)
+);
+INSERT INTO t1 SET id1=1, id2=1;
+INSERT INTO t1 SET id1=2, id2=1;
+INSERT INTO t1 SET id1=3, id2=1;
+SELECT t1.id1,
+(SELECT 0 FROM DUAL
+WHERE t1.id1=t1.id1) AS amount FROM t1
+WHERE t1.id2 = 1
+HAVING amount > 0
+ORDER BY t1.id1;
+id1 amount
+DROP TABLE t1;
End of 5.0 tests
diff --git a/mysql-test/r/heap.result b/mysql-test/r/heap.result
index ddf675e2f73..05ddccfed0a 100644
--- a/mysql-test/r/heap.result
+++ b/mysql-test/r/heap.result
@@ -3,8 +3,8 @@ create table t1 (a int not null,b int not null, primary key (a)) engine=heap com
insert into t1 values(1,1),(2,2),(3,3),(4,4);
delete from t1 where a=1 or a=0;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a NULL 3 NULL NULL HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a NULL 3 NULL NULL HASH
select * from t1;
a b
2 2
diff --git a/mysql-test/r/heap_btree.result b/mysql-test/r/heap_btree.result
index 7ad0f212d99..d4fe382b0d4 100644
--- a/mysql-test/r/heap_btree.result
+++ b/mysql-test/r/heap_btree.result
@@ -3,8 +3,8 @@ create table t1 (a int not null,b int not null, primary key using BTREE (a)) eng
insert into t1 values(1,1),(2,2),(3,3),(4,4);
delete from t1 where a=1 or a=0;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A NULL NULL NULL BTREE
select * from t1;
a b
2 2
diff --git a/mysql-test/r/heap_hash.result b/mysql-test/r/heap_hash.result
index bae49af462f..7cc76611fb8 100644
--- a/mysql-test/r/heap_hash.result
+++ b/mysql-test/r/heap_hash.result
@@ -3,8 +3,8 @@ create table t1 (a int not null,b int not null, primary key using HASH (a)) engi
insert into t1 values(1,1),(2,2),(3,3),(4,4);
delete from t1 where a=1 or a=0;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a NULL 3 NULL NULL HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a NULL 3 NULL NULL HASH
select * from t1;
a b
2 2
@@ -327,15 +327,15 @@ explain select * from t1 ignore index (btree_idx) where name='matt';
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref heap_idx heap_idx 22 const 7 Using where
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id NULL 91 NULL NULL HASH
-t1 1 heap_idx 1 name NULL 13 NULL NULL HASH
-t1 1 btree_idx 1 name A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 id NULL 91 NULL NULL HASH
+t1 1 heap_idx 1 name NULL 13 NULL NULL HASH
+t1 1 btree_idx 1 name A NULL NULL NULL BTREE
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id NULL 91 NULL NULL HASH
-t1 1 heap_idx 1 name NULL 13 NULL NULL HASH
-t1 1 btree_idx 1 name A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 id NULL 91 NULL NULL HASH
+t1 1 heap_idx 1 name NULL 13 NULL NULL HASH
+t1 1 btree_idx 1 name A NULL NULL NULL BTREE
create table t3
(
a varchar(20) not null,
@@ -344,13 +344,13 @@ key (a,b)
) engine=heap;
insert into t3 select name, name from t1;
show index from t3;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t3 1 a 1 a NULL NULL NULL NULL HASH
-t3 1 a 2 b NULL 13 NULL NULL HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t3 1 a 1 a NULL NULL NULL NULL HASH
+t3 1 a 2 b NULL 13 NULL NULL HASH
show index from t3;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t3 1 a 1 a NULL NULL NULL NULL HASH
-t3 1 a 2 b NULL 13 NULL NULL HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t3 1 a 1 a NULL NULL NULL NULL HASH
+t3 1 a 2 b NULL 13 NULL NULL HASH
explain select * from t1 ignore key(btree_idx), t3 where t1.name='matt' and t3.a = concat('',t1.name) and t3.b=t1.name;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t1 ref heap_idx heap_idx 22 const 7 Using where
diff --git a/mysql-test/r/implicit_commit.result b/mysql-test/r/implicit_commit.result
new file mode 100644
index 00000000000..d568d05e7b7
--- /dev/null
+++ b/mysql-test/r/implicit_commit.result
@@ -0,0 +1,1066 @@
+SET GLOBAL EVENT_SCHEDULER = OFF;
+SET BINLOG_FORMAT = STATEMENT;
+CREATE DATABASE db1;
+USE db1;
+CREATE TABLE t1 (a INT, KEY a(a)) ENGINE=INNODB;
+INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
+CREATE TABLE t3 (a INT) ENGINE=MyISAM;
+INSERT INTO t3 SELECT * FROM t1;
+CREATE TABLE trans (a INT) ENGINE=INNODB;
+CREATE PROCEDURE test_if_commit()
+BEGIN
+ROLLBACK;
+SELECT IF (COUNT(*) > 0, "YES", "NO") AS "IMPLICIT COMMIT" FROM trans;
+DELETE FROM trans;
+COMMIT;
+END|
+SET AUTOCOMMIT = FALSE;
+#
+# SQLCOM_SELECT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+select 1 as res from t1 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_TABLE LIKE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create table t2 like t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SHOW_CREATE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create table t2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DROP_TABLE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop table t2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CREATE_TABLE TEMPORARY
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create temporary table t2 as select * from t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DROP_TABLE TEMPORARY
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop temporary table t2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_TABLE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create table t2 as select * from t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_UPDATE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+update t2 set a=a+1 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_INSERT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+insert into t2 set a=((1) in (select * from t1));
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_INSERT_SELECT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+insert into t2 select * from t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_REPLACE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+replace t2 set a=((1) in (select * from t1));
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_REPLACE_SELECT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+replace t2 select * from t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DELETE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+delete from t2 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DELETE_MULTI
+#
+INSERT INTO db1.trans (a) VALUES (1);
+delete t2, t3 from t2, t3 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_UPDATE_MULTI
+#
+select * from t2;
+a
+INSERT INTO db1.trans (a) VALUES (1);
+update t2, t3 set t3.a=t2.a, t2.a=null where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_LOAD
+#
+create table t4 (a varchar(100));
+INSERT INTO db1.trans (a) VALUES (1);
+load data infile '../../std_data/words.dat' into table t4;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+drop table t4;
+#
+# SQLCOM_SHOW_DATABASES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show databases where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_TABLES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show tables where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_FIELDS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show fields from t1 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_KEYS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show keys from t1 where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_VARIABLES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show variables where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STATUS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show status where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_ENGINE_MUTEX
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show engine all mutex;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_PROCESSLIST
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show processlist;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_ENGINE_LOGS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show engine all logs;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_ENGINE_STATUS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show engine all status;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_CHARSETS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show charset where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_COLLATIONS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show collation where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_TABLE_STATUS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show table status where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_TRIGGERS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show triggers where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_OPEN_TABLES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show open tables where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STATUS_PROC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show procedure status where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STATUS_FUNC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show function status where (1) in (select * from t1);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SET_OPTION
+#
+INSERT INTO db1.trans (a) VALUES (1);
+set @a=((1) in (select * from t1));
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DO
+#
+INSERT INTO db1.trans (a) VALUES (1);
+do ((1) in (select * from t1));
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CALL
+#
+create procedure p1(a int) begin end;
+INSERT INTO db1.trans (a) VALUES (1);
+call p1((1) in (select * from t1));
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+drop procedure p1;
+#
+# SQLCOM_CREATE_VIEW
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create view v1 as select * from t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_VIEW
+#
+INSERT INTO db1.trans (a) VALUES (1);
+alter view v1 as select 2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_DROP_VIEW
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop view v1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CREATE_INDEX
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create index idx1 on t1(a);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_DROP_INDEX
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop index idx1 on t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_TABLE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 add column b int;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 change b c int;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 drop column c;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_TABLE TEMPORARY
+#
+create temporary table t4 (a int);
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 add column b int;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 change b c int;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+alter table t1 drop column c;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+drop table t4;
+#
+# SQLCOM_TRUNCATE
+#
+insert into t2 select * from t1;
+INSERT INTO db1.trans (a) VALUES (1);
+truncate table t2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+insert into t2 select * from t1;
+#
+# SQLCOM_TRUNCATE TEMPORARY
+#
+create temporary table t4 as select * from t1;
+INSERT INTO db1.trans (a) VALUES (1);
+truncate table t4;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+drop temporary table t4;
+#
+# SQLCOM_SHOW_MASTER_STAT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show master status;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_SLAVE_STAT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show slave status;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_GRANT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+grant all on test.t1 to mysqltest_2@localhost with grant option;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_REVOKE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+revoke select on test.t1 from mysqltest_2@localhost;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_REVOKE_ALL
+#
+INSERT INTO db1.trans (a) VALUES (1);
+revoke all on test.t1 from mysqltest_2@localhost;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+drop user mysqltest_2@localhost;
+#
+# SQLCOM_SHOW_GRANTS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show grants;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+INSERT INTO db1.trans (a) VALUES (1);
+show grants for current_user();
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_LOCK_TABLES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+lock tables t1 write, trans write;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_UNLOCK_TABLES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+unlock tables;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CREATE_DB
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create database db2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CHANGE_DB
+#
+create table db2.t1 (a int);
+insert into db2.t1 values (1);
+commit;
+INSERT INTO db1.trans (a) VALUES (1);
+use db2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_CREATE_DB
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create database db2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_ALTER_DB
+#
+#
+# SQLCOM_ALTER_DB_UPGRADE
+#
+#
+# SQLCOM_DROP_DB
+#
+use db1;
+INSERT INTO db1.trans (a) VALUES (1);
+drop database db2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_REPAIR
+#
+INSERT INTO db1.trans (a) VALUES (1);
+repair table t2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+repair table t2 use_frm;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_OPTIMIZE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+optimize table t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CHECK
+#
+INSERT INTO db1.trans (a) VALUES (1);
+check table t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+check table t1 extended;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ASSIGN_TO_KEYCACHE
+#
+set global keycache.key_buffer_size=128*1024;
+INSERT INTO db1.trans (a) VALUES (1);
+cache index t3 in keycache;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+set global keycache.key_buffer_size=0;
+#
+# SQLCOM_PRELOAD_KEYS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+load index into cache t3;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_FLUSH
+#
+INSERT INTO db1.trans (a) VALUES (1);
+flush local privileges;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+flush privileges;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_KILL
+#
+#
+# SQLCOM_ANALYZE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+analyze table t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ROLLBACK
+#
+INSERT INTO db1.trans (a) VALUES (1);
+rollback;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_ROLLBACK_TO_SAVEPOINT
+#
+#
+# SQLCOM_COMMIT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+commit;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SAVEPOINT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+savepoint sp1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_RELEASE_SAVEPOINT
+#
+#
+# SQLCOM_SLAVE_START
+#
+#
+# SQLCOM_SLAVE_STOP
+#
+#
+# SQLCOM_BEGIN
+#
+INSERT INTO db1.trans (a) VALUES (1);
+begin;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CHANGE_MASTER
+#
+#
+# SQLCOM_RENAME_TABLE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+rename table t3 to t4;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+INSERT INTO db1.trans (a) VALUES (1);
+rename table t4 to t3;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_RESET
+#
+INSERT INTO db1.trans (a) VALUES (1);
+reset query cache;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_PURGE
+#
+#
+# SQLCOM_PURGE_BEFORE
+#
+#
+# SQLCOM_SHOW_BINLOGS
+#
+#
+# SQLCOM_HA_OPEN
+#
+INSERT INTO db1.trans (a) VALUES (1);
+handler t1 open as ha1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_HA_READ
+#
+INSERT INTO db1.trans (a) VALUES (1);
+handler ha1 read a first;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_HA_CLOSE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+handler ha1 close;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_SLAVE_HOSTS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show slave hosts;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_BINLOG_EVENTS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show binlog events;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_NEW_MASTER
+#
+#
+# SQLCOM_SHOW_WARNS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show warnings;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_EMPTY_QUERY
+#
+#
+# SQLCOM_SHOW_ERRORS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show errors;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STORAGE_ENGINES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show engines;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_PRIVILEGES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show privileges;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_HELP
+#
+INSERT INTO db1.trans (a) VALUES (1);
+help 'foo';
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_USER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create user trxusr1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_RENAME_USER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+rename user 'trxusr1' to 'trxusr2';
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_DROP_USER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop user trxusr2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CHECKSUM
+#
+INSERT INTO db1.trans (a) VALUES (1);
+checksum table t1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_PROCEDURE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create procedure p1(a int) begin end;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_PROCEDURE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+alter procedure p1 comment 'foobar';
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SHOW_CREATE_PROC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create procedure p1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STATUS_PROC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show procedure status;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_PROC_CODE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show procedure code p1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DROP_PROCEDURE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop procedure p1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_CREATE_FUNCTION
+#
+#
+# SQLCOM_DROP_FUNCTION
+#
+#
+# SQLCOM_CREATE_SPFUNCTION
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create function f1() returns int return 69;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_FUNCTION
+#
+INSERT INTO db1.trans (a) VALUES (1);
+alter function f1 comment 'comment';
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SHOW_CREATE_FUNC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create function f1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_STATUS_FUNC
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show function status like '%f%';
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_FUNC_CODE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show function code f1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_PREPARE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+prepare stmt1 from "insert into t1 values (5)";
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_EXECUTE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+execute stmt1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DEALLOCATE_PREPARE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+deallocate prepare stmt1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_TRIGGER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create trigger trg1 before insert on t1 for each row set @a:=1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SHOW_CREATE_TRIGGER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create trigger trg1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DROP_TRIGGER
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop trigger trg1;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_XA_START
+#
+#
+# SQLCOM_XA_END
+#
+#
+# SQLCOM_XA_PREPARE
+#
+#
+# SQLCOM_XA_COMMIT
+#
+#
+# SQLCOM_XA_ROLLBACK
+#
+#
+# SQLCOM_XA_RECOVER
+#
+#
+# SQLCOM_ALTER_TABLESPACE
+#
+#
+# SQLCOM_INSTALL_PLUGIN
+#
+#
+# SQLCOM_SHOW_PLUGINS
+#
+#
+# SQLCOM_UNINSTALL_PLUGIN
+#
+#
+# SQLCOM_SHOW_AUTHORS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show authors;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_BINLOG_BASE64_EVENT
+#
+#
+# SQLCOM_SHOW_CONTRIBUTORS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show contributors;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_CREATE_SERVER
+#
+#
+# SQLCOM_ALTER_SERVER
+#
+#
+# SQLCOM_DROP_SERVER
+#
+#
+# SQLCOM_CREATE_EVENT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+create event ev1 on schedule every 1 second do insert into t1 values (6);
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_ALTER_EVENT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+alter event ev1 rename to ev2 disable;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_SHOW_CREATE_EVENT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show create event ev2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_EVENTS
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show events;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_DROP_EVENT
+#
+INSERT INTO db1.trans (a) VALUES (1);
+drop event ev2;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+YES
+#
+# SQLCOM_BACKUP
+#
+#
+# SQLCOM_SHOW_ARCHIVE
+#
+#
+# SQLCOM_RESTORE
+#
+#
+# SQLCOM_BACKUP_TEST
+#
+#
+# SQLCOM_SHOW_PROFILE
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show profile memory;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+#
+# SQLCOM_SHOW_PROFILES
+#
+INSERT INTO db1.trans (a) VALUES (1);
+show profiles;
+CALL db1.test_if_commit();
+IMPLICIT COMMIT
+NO
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+USE test;
+DROP DATABASE db1;
+End of tests
diff --git a/mysql-test/r/information_schema.result b/mysql-test/r/information_schema.result
index 3041c195b59..86fa9d76864 100644
--- a/mysql-test/r/information_schema.result
+++ b/mysql-test/r/information_schema.result
@@ -169,11 +169,11 @@ table_name
t1
t4
select * from information_schema.STATISTICS where TABLE_SCHEMA = "mysqltest";
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def mysqltest t1 1 mysqltest string_data 1 b A NULL NULL NULL YES BTREE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def mysqltest t1 1 mysqltest string_data 1 b A NULL NULL NULL YES BTREE
show keys from t3 where Key_name = "a_data";
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t3 1 a_data 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t3 1 a_data 1 a A NULL NULL NULL YES BTREE
show tables like 't%';
Tables_in_test (t%)
t2
@@ -400,7 +400,7 @@ latin1_general_ci
latin1_general_cs
latin1_spanish_ci
show keys from v4;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
select * from information_schema.views where TABLE_NAME like "v%";
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME VIEW_DEFINITION CHECK_OPTION IS_UPDATABLE DEFINER SECURITY_TYPE CHARACTER_SET_CLIENT COLLATION_CONNECTION
def test v0 select `information_schema`.`schemata`.`SCHEMA_NAME` AS `c` from `information_schema`.`schemata` NONE NO root@localhost DEFINER latin1 latin1_swedish_ci
@@ -620,7 +620,7 @@ user
drop view v1;
create view vo as select 'a' union select 'a';
show index from vo;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
select * from information_schema.TABLE_CONSTRAINTS where
TABLE_NAME= "vo";
CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_SCHEMA TABLE_NAME CONSTRAINT_TYPE
@@ -1130,8 +1130,8 @@ describe t1;
Field Type Null Key Default Extra
f1 int(11) YES MUL NULL
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 f1 1 f1 A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 f1 1 f1 A NULL NULL NULL YES BTREE
drop table t1;
create table t1(f1 binary(32), f2 varbinary(64));
select character_maximum_length, character_octet_length
@@ -1533,9 +1533,9 @@ CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME UNIQUE_CONSTRAINT_CATALOG U
select * from information_schema.schemata where schema_name = NULL;
CATALOG_NAME SCHEMA_NAME DEFAULT_CHARACTER_SET_NAME DEFAULT_COLLATION_NAME SQL_PATH
select * from `information_schema`.`STATISTICS` where `TABLE_SCHEMA` = NULL;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
select * from `information_schema`.`STATISTICS` where `TABLE_NAME` = NULL;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
select * from information_schema.tables where table_schema = NULL;
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT
select * from information_schema.tables where table_catalog = NULL;
@@ -1682,6 +1682,57 @@ DROP USER nonpriv;
DROP TABLE db1.t1;
DROP DATABASE db1;
End of 5.1 tests.
+#
+# Additional test for WL#3726 "DDL locking for all metadata objects"
+# To avoid possible deadlocks process of filling of I_S tables should
+# use high-priority metadata lock requests when opening tables.
+# Below we just test that we really use high-priority lock request
+# since reproducing a deadlock will require much more complex test.
+#
+drop tables if exists t1, t2, t3;
+create table t1 (i int);
+create table t2 (j int primary key auto_increment);
+# Switching to connection 'con3726_1'
+lock table t2 read;
+# Switching to connection 'con3726_2'
+# RENAME below will be blocked by 'lock table t2 read' above but
+# will add two pending requests for exclusive metadata locks.
+rename table t2 to t3;
+# Switching to connection 'default'
+# These statements should not be blocked by pending lock requests
+select table_name, column_name, data_type from information_schema.columns
+where table_schema = 'test' and table_name in ('t1', 't2');
+table_name column_name data_type
+t1 i int
+t2 j int
+select table_name, auto_increment from information_schema.tables
+where table_schema = 'test' and table_name in ('t1', 't2');
+table_name auto_increment
+t1 NULL
+t2 1
+# Switching to connection 'con3726_1'
+unlock tables;
+# Switching to connection 'con3726_2'
+# Switching to connection 'default'
+drop tables t1, t3;
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE KEY_COLUMN_USAGE ALL NULL NULL NULL NULL NULL Open_full_table; Scanned all databases
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME='t1';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE PARTITIONS ALL NULL TABLE_NAME NULL NULL NULL Using where; Open_full_table; Scanned 1 database
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
+WHERE CONSTRAINT_SCHEMA='test';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE REFERENTIAL_CONSTRAINTS ALL NULL CONSTRAINT_SCHEMA NULL NULL NULL Using where; Open_full_table; Scanned 1 database
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
+WHERE TABLE_NAME='t1' and TABLE_SCHEMA='test';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE TABLE_CONSTRAINTS ALL NULL TABLE_SCHEMA,TABLE_NAME NULL NULL NULL Using where; Open_full_table; Scanned 0 databases
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
+WHERE EVENT_OBJECT_SCHEMA='test';
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE TRIGGERS ALL NULL EVENT_OBJECT_SCHEMA NULL NULL NULL Using where; Open_frm_only; Scanned 1 database
create table information_schema.t1 (f1 INT);
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
drop table information_schema.t1;
@@ -1720,28 +1771,10 @@ ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_
LOCK TABLES t1 READ, information_schema.tables READ;
ERROR 42000: Access denied for user 'root'@'localhost' to database 'information_schema'
DROP TABLE t1;
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE KEY_COLUMN_USAGE ALL NULL NULL NULL NULL NULL Open_full_table; Scanned all databases
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME='t1';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE PARTITIONS ALL NULL TABLE_NAME NULL NULL NULL Using where; Open_full_table; Scanned 1 database
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
-WHERE CONSTRAINT_SCHEMA='test';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE REFERENTIAL_CONSTRAINTS ALL NULL CONSTRAINT_SCHEMA NULL NULL NULL Using where; Open_full_table; Scanned 1 database
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
-WHERE TABLE_NAME='t1' and TABLE_SCHEMA='test';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE TABLE_CONSTRAINTS ALL NULL TABLE_SCHEMA,TABLE_NAME NULL NULL NULL Using where; Open_full_table; Scanned 0 databases
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
-WHERE EVENT_OBJECT_SCHEMA='test';
-id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE TRIGGERS ALL NULL EVENT_OBJECT_SCHEMA NULL NULL NULL Using where; Open_frm_only; Scanned 1 database
SELECT *
-FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
-LEFT JOIN INFORMATION_SCHEMA.COLUMNS
-USING (TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME)
-WHERE COLUMNS.TABLE_SCHEMA = 'test'
+FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+LEFT JOIN INFORMATION_SCHEMA.COLUMNS
+USING (TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME)
+WHERE COLUMNS.TABLE_SCHEMA = 'test'
AND COLUMNS.TABLE_NAME = 't1';
TABLE_SCHEMA TABLE_NAME COLUMN_NAME CONSTRAINT_CATALOG CONSTRAINT_SCHEMA CONSTRAINT_NAME TABLE_CATALOG ORDINAL_POSITION POSITION_IN_UNIQUE_CONSTRAINT REFERENCED_TABLE_SCHEMA REFERENCED_TABLE_NAME REFERENCED_COLUMN_NAME TABLE_CATALOG ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
diff --git a/mysql-test/r/innodb-lock.result b/mysql-test/r/innodb-lock.result
index 4ace4065c34..ab7e9aa7b25 100644
--- a/mysql-test/r/innodb-lock.result
+++ b/mysql-test/r/innodb-lock.result
@@ -25,6 +25,12 @@ id x
0 2
commit;
drop table t1;
+#
+# Old lock method (where LOCK TABLE was ignored by InnoDB) no longer
+# works due to fix for bugs #46272 "MySQL 5.4.4, new MDL: unnecessary
+# deadlock" and bug #37346 "innodb does not detect deadlock between
+# update and alter table".
+#
set @@innodb_table_locks=0;
create table t1 (id integer primary key, x integer) engine=INNODB;
insert into t1 values(0, 0),(1,1),(2,2);
@@ -32,26 +38,27 @@ commit;
SELECT * from t1 where id = 0 FOR UPDATE;
id x
0 0
+# Connection 'con2'.
set autocommit=0;
set @@innodb_table_locks=0;
-lock table t1 write;
-update t1 set x=10 where id = 2;
-SELECT * from t1 where id = 2;
-id x
-2 2
-UPDATE t1 set x=3 where id = 2;
-commit;
-SELECT * from t1;
+# The following statement should block because SQL-level lock
+# is taken on t1 which will wait until concurrent transaction
+# is commited.
+# Sending:
+lock table t1 write;;
+# Connection 'con1'.
+# Wait until LOCK TABLE is blocked on SQL-level lock.
+# We should be able to do UPDATEs and SELECTs within transaction.
+update t1 set x=1 where id = 0;
+select * from t1;
id x
-0 0
+0 1
1 1
-2 3
+2 2
+# Unblock LOCK TABLE.
commit;
+# Connection 'con2'.
+# Reap LOCK TABLE.
unlock tables;
-commit;
-select * from t1;
-id x
-0 0
-1 1
-2 10
+# Connection 'con1'.
drop table t1;
diff --git a/mysql-test/r/innodb.result b/mysql-test/r/innodb.result
index 6cee55482e3..4f2009764fc 100644
--- a/mysql-test/r/innodb.result
+++ b/mysql-test/r/innodb.result
@@ -2834,10 +2834,10 @@ t2 CREATE TABLE `t2` (
DROP TABLE t2,t1;
create table t1(a int not null, b int, c int, d int, primary key(a)) engine=innodb;
insert into t1(a) values (1),(2),(3);
+create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
commit;
set autocommit = 0;
update t1 set b = 5 where a = 2;
-create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
set autocommit = 0;
insert into t1(a) values (10),(20),(30),(40),(50),(60),(70),(80),(90),(100),
(11),(21),(31),(41),(51),(61),(71),(81),(91),(101),
@@ -2885,6 +2885,7 @@ insert into t2(a) values(8);
delete from t2 where a = 3;
update t4 set b = b + 1 where a = 3;
commit;
+commit;
drop trigger t1t;
drop trigger t2t;
drop trigger t3t;
diff --git a/mysql-test/r/innodb_mysql.result b/mysql-test/r/innodb_mysql.result
index 76ff2cfc0f3..96b75312516 100644
--- a/mysql-test/r/innodb_mysql.result
+++ b/mysql-test/r/innodb_mysql.result
@@ -1105,6 +1105,8 @@ CREATE PROCEDURE p1 ()
BEGIN
DECLARE i INT DEFAULT 50;
DECLARE cnt INT;
+# Continue even in the presence of ER_LOCK_DEADLOCK.
+DECLARE CONTINUE HANDLER FOR 1213 BEGIN END;
START TRANSACTION;
ALTER TABLE t1 ENGINE=InnoDB;
COMMIT;
@@ -1618,6 +1620,7 @@ a b
SELECT * FROM t1;
a b
1 init+con1+con2
+COMMIT;
# Switch to connection con1
# 3. test for updated key column:
TRUNCATE t1;
@@ -2273,6 +2276,28 @@ END|
DROP PROCEDURE p1;
DROP VIEW v1;
DROP TABLE t1,t2;
+#
+# Bug #49324: more valgrind errors in test_if_skip_sort_order
+#
+CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb ;
+#should not cause valgrind warnings
+SELECT 1 FROM t1 JOIN t1 a USING(a) GROUP BY t1.a,t1.a;
+1
+DROP TABLE t1;
+#
+# Bug#50843: Filesort used instead of clustered index led to
+# performance degradation.
+#
+create table t1(f1 int not null primary key, f2 int) engine=innodb;
+create table t2(f1 int not null, key (f1)) engine=innodb;
+insert into t1 values (1,1),(2,2),(3,3);
+insert into t2 values (1),(2),(3);
+explain select t1.* from t1 left join t2 using(f1) group by t1.f1;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 index NULL PRIMARY 4 NULL 3
+1 SIMPLE t2 ref f1 f1 4 test.t1.f1 1 Using index
+drop table t1,t2;
+#
End of 5.1 tests
#
# Test for bug #39932 "create table fails if column for FK is in different
@@ -2294,3 +2319,28 @@ t2 CREATE TABLE `t2` (
CONSTRAINT `x` FOREIGN KEY (`fk`) REFERENCES `t1` (`pk`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
drop table t2, t1;
+#
+# Bug#44613 SELECT statement inside FUNCTION takes a shared lock
+#
+DROP TABLE IF EXISTS t1;
+DROP FUNCTION IF EXISTS f1;
+CREATE TABLE t1(x INT PRIMARY KEY, y INT) ENGINE=innodb;
+INSERT INTO t1 VALUES (1, 0), (2, 0);
+CREATE FUNCTION f1(z INT) RETURNS INT READS SQL DATA
+RETURN (SELECT x FROM t1 WHERE x = z);
+# Connection default
+START TRANSACTION;
+SELECT f1(1);
+f1(1)
+1
+# Connection con2
+START TRANSACTION;
+SELECT f1(1);
+f1(1)
+1
+UPDATE t1 SET y = 1 WHERE x = 1;
+COMMIT;
+# Connection default
+COMMIT;
+DROP TABLE t1;
+DROP FUNCTION f1;
diff --git a/mysql-test/r/innodb_mysql_lock.result b/mysql-test/r/innodb_mysql_lock.result
new file mode 100644
index 00000000000..375ae8aeb12
--- /dev/null
+++ b/mysql-test/r/innodb_mysql_lock.result
@@ -0,0 +1,88 @@
+#
+# Bug #22876 Four-way deadlock
+#
+DROP TABLE IF EXISTS t1;
+# Connection 1
+set @@autocommit=0;
+CREATE TABLE t1(s1 INT UNIQUE) ENGINE=innodb;
+INSERT INTO t1 VALUES (1);
+# Connection 2
+set @@autocommit=0;
+INSERT INTO t1 VALUES (2);
+INSERT INTO t1 VALUES (1);
+# Connection 3
+set @@autocommit=0;
+DROP TABLE t1;
+# Connection 1
+# Connection 1 is now holding the lock.
+# Issuing insert from connection 1 while connection 2&3
+# is waiting for the lock should give a deadlock error.
+INSERT INTO t1 VALUES (2);
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Cleanup
+commit;
+set @@autocommit=1;
+commit;
+set @@autocommit=1;
+set @@autocommit=1;
+#
+# Test for bug #37346 "innodb does not detect deadlock between update
+# and alter table".
+#
+drop table if exists t1;
+create table t1 (c1 int primary key, c2 int, c3 int) engine=InnoDB;
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+begin;
+# Run statement which acquires X-lock on one of table's rows.
+update t1 set c3=c3+1 where c2=3;
+#
+# Switching to connection 'con37346'.
+# The below ALTER TABLE statement should wait till transaction
+# in connection 'default' is complete and then succeed.
+# It should not deadlock or fail with ER_LOCK_DEADLOCK error.
+# Sending:
+alter table t1 add column c4 int;;
+#
+# Switching to connection 'default'.
+# Wait until the above ALTER TABLE gets blocked because this
+# connection holds SW metadata lock on table to be altered.
+# The below statement should succeed. It should not
+# deadlock or end with ER_LOCK_DEADLOCK error.
+update t1 set c3=c3+1 where c2=4;
+# Unblock ALTER TABLE by committing transaction.
+commit;
+#
+# Switching to connection 'con37346'.
+# Reaping ALTER TABLE.
+#
+# Switching to connection 'default'.
+drop table t1;
+#
+# Bug #42147 Concurrent DML and LOCK TABLE ... READ for InnoDB
+# table cause warnings in errlog
+#
+#
+# Note that this test for now relies on a global suppression of
+# the warning "Found lock of type 6 that is write and read locked"
+# This suppression rule can be removed once Bug#42147 is properly
+# fixed. See bug page for more info.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (i INT) engine= innodb;
+# Connection 2
+# Get user-level lock
+SELECT get_lock('bug42147_lock', 60);
+get_lock('bug42147_lock', 60)
+1
+# Connection 1
+INSERT INTO t1 SELECT get_lock('bug42147_lock', 60);
+# Connection 2
+LOCK TABLES t1 READ;
+SELECT release_lock('bug42147_lock');
+release_lock('bug42147_lock')
+1
+# Connection 1
+# Connection 2
+UNLOCK TABLES;
+# Connection 1
+DROP TABLE t1;
diff --git a/mysql-test/r/innodb_mysql_sync.result b/mysql-test/r/innodb_mysql_sync.result
new file mode 100644
index 00000000000..039d8b74c07
--- /dev/null
+++ b/mysql-test/r/innodb_mysql_sync.result
@@ -0,0 +1,26 @@
+#
+# Bug 42074 concurrent optimize table and
+# alter table = Assertion failed: thd->is_error()
+#
+DROP TABLE IF EXISTS t1;
+# Create InnoDB table
+CREATE TABLE t1 (id INT) engine=innodb;
+# Connection 1
+# Start optimizing table
+SET DEBUG_SYNC='ha_admin_try_alter SIGNAL optimize_started WAIT_FOR table_altered';
+OPTIMIZE TABLE t1;
+# Connection 2
+# Change table to engine=memory
+SET DEBUG_SYNC='now WAIT_FOR optimize_started';
+ALTER TABLE t1 engine=memory;
+SET DEBUG_SYNC='now SIGNAL table_altered';
+# Connection 1
+# Complete optimization
+Table Op Msg_type Msg_text
+test.t1 optimize note Table does not support optimize, doing recreate + analyze instead
+test.t1 optimize error Got error -1 from storage engine
+test.t1 optimize status Operation failed
+Warnings:
+Error 1030 Got error -1 from storage engine
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
diff --git a/mysql-test/r/ipv4_as_ipv6_win.result b/mysql-test/r/ipv4_as_ipv6_win.result
deleted file mode 100644
index 45e23d4d7e6..00000000000
--- a/mysql-test/r/ipv4_as_ipv6_win.result
+++ /dev/null
@@ -1,32 +0,0 @@
-=============Test of '127.0.0.1' (IPv4) ===========================
-mysqld is alive
-CREATE USER testuser@'127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'127.0.0.1';
-SHOW GRANTS FOR testuser@'127.0.0.1';
-Grants for testuser@127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1'
-SET @nip= inet_aton('127.0.0.1');
-SELECT @nip;
-@nip
-2130706433
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-127.0.0.1
-SELECT USER();
-USER()
-root@127.0.0.1
-SELECT current_user();
-current_user()
-root@127.0.0.1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'127.0.0.1';
-RENAME USER testuser@'127.0.0.1' to testuser1@'127.0.0.1';
-SET PASSWORD FOR testuser1@'127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@127.0.0.1
-DROP USER testuser1@'127.0.0.1';
-=============Test of '::1' ========================
-connect (con1, ::1, root, , test, MASTER_MYPORT);
-Got one of the listed errors
diff --git a/mysql-test/r/ipv6.result b/mysql-test/r/ipv6.result
index 566938296a9..1ff51fcc831 100644
--- a/mysql-test/r/ipv6.result
+++ b/mysql-test/r/ipv6.result
@@ -86,179 +86,3 @@ SELECT USER();
USER()
root@localhost
DROP USER testuser1@'0:0:0:0:0:0:0:1';
-=============Test of '127.0.0.1' (IPv4) ===========================
-mysqld is alive
-CREATE USER testuser@'127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'127.0.0.1';
-SHOW GRANTS FOR testuser@'127.0.0.1';
-Grants for testuser@127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'127.0.0.1'
-SET @nip= inet_aton('127.0.0.1');
-SELECT @nip;
-@nip
-2130706433
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-127.0.0.1
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'127.0.0.1';
-RENAME USER testuser@'127.0.0.1' to testuser1@'127.0.0.1';
-SET PASSWORD FOR testuser1@'127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'127.0.0.1';
-=============Test of '0:0:0:0:0:FFFF:127.0.0.1' ===================
-mysqld is alive
-CREATE USER testuser@'0:0:0:0:0:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-Grants for testuser@0:0:0:0:0:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:FFFF:127.0.0.1'
-SET @nip= inet_aton('0:0:0:0:0:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0:0:0:0:FFFF:127.0.0.1';
-RENAME USER testuser@'0:0:0:0:0:FFFF:127.0.0.1' to testuser1@'0:0:0:0:0:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0:0:0:0:0:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0:0:0:0:0:FFFF:127.0.0.1';
-=============Test of '0000:0000:0000:0000:0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Grants for testuser@0000:0000:0000:0000:0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0000:0000:0000:0000:0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' to testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-=============Test of '0:0000:0000:0:0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-Grants for testuser@0:0000:0000:0:0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0:0000:0000:0:0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0000:0000:0:0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0:0000:0000:0:0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0:0000:0000:0:0000:FFFF:127.0.0.1' to testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0:0000:0000:0:0000:FFFF:127.0.0.1';
-=============Test of '0::0000:FFFF:127.0.0.1' ====
-mysqld is alive
-CREATE USER testuser@'0::0000:FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0::0000:FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'0::0000:FFFF:127.0.0.1';
-Grants for testuser@0::0000:FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'0::0000:FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0::0000:FFFF:127.0.0.1'
-SET @nip= inet_aton('0::0000:FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0::0000:FFFF:127.0.0.1';
-RENAME USER testuser@'0::0000:FFFF:127.0.0.1' to testuser1@'0::0000:FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'0::0000:FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'0::0000:FFFF:127.0.0.1';
-=============Test of '0:0:0:0:0:FFFF:127.0.0.1/96' ================
-=============Test of '::FFFF:127.0.0.1' ===========================
-mysqld is alive
-CREATE USER testuser@'::FFFF:127.0.0.1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'::FFFF:127.0.0.1';
-SHOW GRANTS FOR testuser@'::FFFF:127.0.0.1';
-Grants for testuser@::FFFF:127.0.0.1
-GRANT USAGE ON *.* TO 'testuser'@'::FFFF:127.0.0.1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::FFFF:127.0.0.1'
-SET @nip= inet_aton('::FFFF:127.0.0.1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@localhost
-SELECT current_user();
-current_user()
-root@localhost
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'::FFFF:127.0.0.1';
-RENAME USER testuser@'::FFFF:127.0.0.1' to testuser1@'::FFFF:127.0.0.1';
-SET PASSWORD FOR testuser1@'::FFFF:127.0.0.1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@localhost
-DROP USER testuser1@'::FFFF:127.0.0.1';
-=============Test of '::FFFF:127.0.0.1/96' ========================
diff --git a/mysql-test/r/ipv6_win.result b/mysql-test/r/ipv6_win.result
deleted file mode 100644
index 8082e8aa25e..00000000000
--- a/mysql-test/r/ipv6_win.result
+++ /dev/null
@@ -1,88 +0,0 @@
-=============Test of '::1' ========================================
-mysqld is alive
-CREATE USER testuser@'::1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'::1';
-SHOW GRANTS FOR testuser@'::1';
-Grants for testuser@::1
-GRANT USAGE ON *.* TO 'testuser'@'::1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'::1'
-SET @nip= inet_aton('::1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'::1';
-RENAME USER testuser@'::1' to testuser1@'::1';
-SET PASSWORD FOR testuser1@'::1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'::1';
-=============Test of '::1/128' ====================================
-=============Test of '0000:0000:0000:0000:0000:0000:0000:0001' ====
-mysqld is alive
-CREATE USER testuser@'0000:0000:0000:0000:0000:0000:0000:0001' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-SHOW GRANTS FOR testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-Grants for testuser@0000:0000:0000:0000:0000:0000:0000:0001
-GRANT USAGE ON *.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0000:0000:0000:0000:0000:0000:0000:0001'
-SET @nip= inet_aton('0000:0000:0000:0000:0000:0000:0000:0001');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0000:0000:0000:0000:0000:0000:0000:0001';
-RENAME USER testuser@'0000:0000:0000:0000:0000:0000:0000:0001' to testuser1@'0000:0000:0000:0000:0000:0000:0000:0001';
-SET PASSWORD FOR testuser1@'0000:0000:0000:0000:0000:0000:0000:0001' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'0000:0000:0000:0000:0000:0000:0000:0001';
-=============Test of '0:0:0:0:0:0:0:1' ============================
-mysqld is alive
-CREATE USER testuser@'0:0:0:0:0:0:0:1' identified by '1234';
-GRANT ALL ON test.* TO testuser@'0:0:0:0:0:0:0:1';
-SHOW GRANTS FOR testuser@'0:0:0:0:0:0:0:1';
-Grants for testuser@0:0:0:0:0:0:0:1
-GRANT USAGE ON *.* TO 'testuser'@'0:0:0:0:0:0:0:1' IDENTIFIED BY PASSWORD '*A4B6157319038724E3560894F7F932C8886EBFCF'
-GRANT ALL PRIVILEGES ON `test`.* TO 'testuser'@'0:0:0:0:0:0:0:1'
-SET @nip= inet_aton('0:0:0:0:0:0:0:1');
-SELECT @nip;
-@nip
-NULL
-SELECT inet_ntoa(@nip);
-inet_ntoa(@nip)
-NULL
-SELECT USER();
-USER()
-root@::1
-SELECT current_user();
-current_user()
-root@::1
-SHOW PROCESSLIST;
-REVOKE ALL ON test.* FROM testuser@'0:0:0:0:0:0:0:1';
-RENAME USER testuser@'0:0:0:0:0:0:0:1' to testuser1@'0:0:0:0:0:0:0:1';
-SET PASSWORD FOR testuser1@'0:0:0:0:0:0:0:1' = PASSWORD ('9876');
-SELECT USER();
-USER()
-root@::1
-DROP USER testuser1@'0:0:0:0:0:0:0:1';
diff --git a/mysql-test/r/join.result b/mysql-test/r/join.result
index d443e20df76..d1234ecbd56 100644
--- a/mysql-test/r/join.result
+++ b/mysql-test/r/join.result
@@ -1128,3 +1128,31 @@ EXECUTE stmt;
DEALLOCATE PREPARE stmt;
DROP VIEW v1;
DROP TABLE t1, t2;
+CREATE TABLE t1(a CHAR(9),b INT,KEY(b),KEY(a)) ENGINE=MYISAM;
+CREATE TABLE t2(a CHAR(9),b INT,KEY(b),KEY(a)) ENGINE=MYISAM;
+INSERT INTO t1 VALUES ('1',null),(null,null);
+INSERT INTO t2 VALUES ('1',null),(null,null);
+CREATE TABLE mm1(a CHAR(9),b INT,KEY(b),KEY(a))
+ENGINE=MERGE UNION=(t1,t2);
+SELECT t1.a FROM mm1,t1;
+a
+NULL
+1
+NULL
+1
+NULL
+1
+NULL
+1
+DROP TABLE t1, t2, mm1;
+#
+# Bug #50335: Assertion `!(order->used & map)' in eq_ref_table
+#
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, PRIMARY KEY (a,b));
+INSERT INTO t1 VALUES (0,0), (1,1);
+SELECT * FROM t1 STRAIGHT_JOIN t1 t2 ON t1.a=t2.a AND t1.a=t2.b ORDER BY t2.a, t1.a;
+a b a b
+0 0 0 0
+1 1 1 1
+DROP TABLE t1;
+End of 5.1 tests
diff --git a/mysql-test/r/key.result b/mysql-test/r/key.result
index 21fcfceff81..e63afeab126 100644
--- a/mysql-test/r/key.result
+++ b/mysql-test/r/key.result
@@ -148,12 +148,12 @@ a 2
drop table t1;
create table t1 (a int not null unique, b int unique, c int, d int not null primary key, key(c), e int not null unique);
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 d A 0 NULL NULL BTREE
-t1 0 a 1 a A 0 NULL NULL BTREE
-t1 0 e 1 e A 0 NULL NULL BTREE
-t1 0 b 1 b A NULL NULL NULL YES BTREE
-t1 1 c 1 c A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 d A 0 NULL NULL BTREE
+t1 0 a 1 a A 0 NULL NULL BTREE
+t1 0 e 1 e A 0 NULL NULL BTREE
+t1 0 b 1 b A NULL NULL NULL YES BTREE
+t1 1 c 1 c A NULL NULL NULL YES BTREE
drop table t1;
CREATE TABLE t1 (c CHAR(10) NOT NULL,i INT NOT NULL AUTO_INCREMENT,
UNIQUE (c,i));
diff --git a/mysql-test/r/kill.result b/mysql-test/r/kill.result
index 8b6830d4798..1f4f4bb32eb 100644
--- a/mysql-test/r/kill.result
+++ b/mysql-test/r/kill.result
@@ -138,4 +138,107 @@ KILL CONNECTION_ID();
# of close of the connection socket
SELECT 1;
Got one of the listed errors
+#
+# Additional test for WL#3726 "DDL locking for all metadata objects"
+# Check that DDL and DML statements waiting for metadata locks can
+# be killed. Note that we don't cover all situations here since it
+# can be tricky to write test case for some of them (e.g. REPAIR or
+# ALTER and other statements under LOCK TABLES).
+#
+drop tables if exists t1, t2, t3;
+create table t1 (i int primary key);
+# Test for RENAME TABLE
+# Switching to connection 'blocker'
+lock table t1 read;
+# Switching to connection 'ddl'
+rename table t1 to t2;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Test for DROP TABLE
+drop table t1;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Test for CREATE TRIGGER
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+#
+# Tests for various kinds of ALTER TABLE
+#
+# Full-blown ALTER which should copy table
+alter table t1 add column j int;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Two kinds of simple ALTER
+alter table t1 rename to t2;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+alter table t1 disable keys;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Fast ALTER
+alter table t1 alter column i set default 100;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Special case which is triggered only for MERGE tables.
+# Switching to connection 'blocker'
+unlock tables;
+create table t2 (i int primary key) engine=merge union=(t1);
+lock tables t2 read;
+# Switching to connection 'ddl'
+alter table t2 alter column i set default 100;
+# Switching to connection 'default'
+kill query ID;
+# Switching to connection 'ddl'
+ERROR 70100: Query execution was interrupted
+# Test for DML waiting for meta-data lock
+# Switching to connection 'blocker'
+unlock tables;
+drop table t2;
+create table t2 (k int);
+lock tables t1 read;
+# Switching to connection 'ddl'
+rename tables t1 to t3, t2 to t1;
+# Switching to connection 'dml'
+insert into t2 values (1);
+# Switching to connection 'default'
+kill query ID2;
+# Switching to connection 'dml'
+ERROR 70100: Query execution was interrupted
+# Switching to connection 'blocker'
+unlock tables;
+# Switching to connection 'ddl'
+# Test for DML waiting for tables to be flushed
+# Switching to connection 'blocker'
+lock tables t1 read;
+# Switching to connection 'ddl'
+# Let us mark locked table t1 as old
+flush tables;
+# Switching to connection 'dml'
+select * from t1;
+# Switching to connection 'default'
+kill query ID2;
+# Switching to connection 'dml'
+ERROR 70100: Query execution was interrupted
+# Switching to connection 'blocker'
+unlock tables;
+# Switching to connection 'ddl'
+# Cleanup.
+# Switching to connection 'default'
+drop table t3;
+drop table t1;
set @@global.concurrent_insert= @old_concurrent_insert;
diff --git a/mysql-test/r/locale.result b/mysql-test/r/locale.result
index af7f9e3c132..b52ed8070f9 100644
--- a/mysql-test/r/locale.result
+++ b/mysql-test/r/locale.result
@@ -51,7 +51,7 @@ DROP TABLE t1;
#
SET lc_messages=sr_YU;
Warnings:
-Warning 1287 'sr_YU' is deprecated; use 'sr_RS' instead
+Warning 1287 'sr_YU' is deprecated and will be removed in a future release. Please use sr_RS instead
SHOW VARIABLES LIKE 'lc_messages';
Variable_name Value
lc_messages sr_RS
diff --git a/mysql-test/r/lock.result b/mysql-test/r/lock.result
index 1f8f6aa04ae..c1e1ccb5bce 100644
--- a/mysql-test/r/lock.result
+++ b/mysql-test/r/lock.result
@@ -1,4 +1,4 @@
-drop table if exists t1,t2;
+drop table if exists t1,t2,t3;
CREATE TABLE t1 ( `id` int(11) NOT NULL default '0', `id2` int(11) NOT NULL default '0', `id3` int(11) NOT NULL default '0', `dummy1` char(30) default NULL, PRIMARY KEY (`id`,`id2`), KEY `index_id3` (`id3`)) ENGINE=MyISAM;
insert into t1 (id,id2) values (1,1),(1,2),(1,3);
LOCK TABLE t1 WRITE;
@@ -41,7 +41,7 @@ lock tables t1 write;
check table t2;
Table Op Msg_type Msg_text
test.t2 check Error Table 't2' was not locked with LOCK TABLES
-test.t2 check error Corrupt
+test.t2 check status Operation failed
insert into t1 select index1,nr from t1;
ERROR HY000: Table 't1' was not locked with LOCK TABLES
unlock tables;
@@ -128,13 +128,14 @@ select * from v_bug5719;
1
1
drop view v_bug5719;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
sic: did not left LOCK TABLES mode automatically
select * from t1;
ERROR HY000: Table 't1' was not locked with LOCK TABLES
unlock tables;
-create view v_bug5719 as select * from t1;
+create or replace view v_bug5719 as select * from t1;
lock tables v_bug5719 write;
select * from v_bug5719;
a
@@ -150,6 +151,12 @@ select * from t2;
a
select * from t3;
ERROR HY000: Table 't3' was not locked with LOCK TABLES
+Dropping of implicitly locked table is disallowed.
+drop table t1;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+unlock tables;
+Now let us also lock table explicitly and drop it.
+lock tables t1 write, v_bug5719 write;
drop table t1;
sic: left LOCK TABLES mode
@@ -200,3 +207,266 @@ ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
UNLOCK TABLES;
DROP TABLE t1,t2;
End of 5.1 tests.
+#
+# Ensure that FLUSH TABLES doesn't substitute a base locked table
+# with a temporary one.
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+lock table t1 write, t2 write;
+create temporary table t1 (a int);
+flush table t1;
+drop temporary table t1;
+select * from t1;
+a
+unlock tables;
+drop table t1, t2;
+#
+# Ensure that REPAIR .. USE_FRM works under LOCK TABLES.
+#
+drop table if exists t1, t2;
+create table t1 (a int);
+create table t2 (a int);
+lock table t1 write, t2 write;
+repair table t1 use_frm;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+repair table t1 use_frm;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+select * from t1;
+a
+select * from t2;
+a
+repair table t2 use_frm;
+Table Op Msg_type Msg_text
+test.t2 repair status OK
+repair table t2 use_frm;
+Table Op Msg_type Msg_text
+test.t2 repair status OK
+select * from t1;
+a
+unlock tables;
+drop table t1, t2;
+#
+# Ensure that mi_copy_status is called for two instances
+# of the same table when it is reopened after a flush.
+#
+drop table if exists t1;
+drop view if exists v1;
+create table t1 (c1 int);
+create view v1 as select * from t1;
+lock tables t1 write, v1 write;
+flush table t1;
+insert into t1 values (33);
+flush table t1;
+select * from t1;
+c1
+33
+unlock tables;
+drop table t1;
+drop view v1;
+#
+# WL#4284: Transactional DDL locking
+#
+drop table if exists t1;
+create table t1 (a int);
+set autocommit= 0;
+insert into t1 values (1);
+lock table t1 write;
+# Disconnect
+# Ensure that metadata locks will be released if there is an open
+# transaction (autocommit=off) in conjunction with lock tables.
+drop table t1;
+# Same problem but now for BEGIN
+drop table if exists t1;
+create table t1 (a int);
+begin;
+insert into t1 values (1);
+# Disconnect
+# Ensure that metadata locks held by the transaction are released.
+drop table t1;
+#
+# Coverage for situations when we try to execute DDL on tables
+# which are locked by LOCK TABLES only implicitly.
+#
+drop tables if exists t1, t2;
+drop view if exists v1;
+drop function if exists f1;
+create table t1 (i int);
+create table t2 (j int);
+#
+# Try to perform DDL on table which is locked through view.
+create view v1 as select * from t2;
+lock tables t1 write, v1 write;
+flush table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+drop table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+alter table t2 add column k int;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+# Repair produces error as part of its result set.
+repair table t2;
+Table Op Msg_type Msg_text
+test.t2 repair Error Table 't2' was locked with a READ lock and can't be updated
+test.t2 repair status Operation failed
+unlock tables;
+drop view v1;
+#
+# Now, try DDL on table which is locked through routine.
+create function f1 () returns int
+begin
+insert into t2 values (1);
+return 0;
+end|
+create view v1 as select f1() from t1;
+lock tables v1 read;
+flush table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+drop table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+alter table t2 add column k int;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+# Repair produces error as part of its result set.
+repair table t2;
+Table Op Msg_type Msg_text
+test.t2 repair Error Table 't2' was locked with a READ lock and can't be updated
+test.t2 repair status Operation failed
+unlock tables;
+drop view v1;
+drop function f1;
+#
+# Finally, try DDL on table which is locked thanks to trigger.
+create trigger t1_ai after insert on t1 for each row insert into t2 values (1);
+lock tables t1 write;
+flush table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+drop table t2;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+alter table t2 add column k int;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+ERROR HY000: Table 't2' was locked with a READ lock and can't be updated
+# Repair produces error as part of its result set.
+repair table t2;
+Table Op Msg_type Msg_text
+test.t2 repair Error Table 't2' was locked with a READ lock and can't be updated
+test.t2 repair status Operation failed
+unlock tables;
+drop trigger t1_ai;
+drop tables t1, t2;
+#
+# Bug#45035 " Altering table under LOCK TABLES results in
+# "Error 1213 Deadlock found..."
+#
+# When reopening tables under LOCK TABLES after ALTER TABLE,
+# 6.0 used to be taking thr_lock locks one by one, and
+# that would lead to a lock conflict.
+# Check that taking all locks at once works.
+#
+drop table if exists t1;
+create table t1 (i int);
+lock tables t1 write, t1 as a read, t1 as b read;
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+create temporary table t1 (i int);
+#
+# This is just for test coverage purposes,
+# when this is allowed, remove the --error.
+#
+lock tables t1 write, t1 as a read, t1 as b read;
+ERROR HY000: Can't reopen table: 't1'
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+#
+# Separate case for partitioned tables is important
+# because each partition has an own thr_lock object.
+#
+create table t1 (i int) partition by list (i)
+(partition p0 values in (1),
+partition p1 values in (2,3),
+partition p2 values in (4,5));
+lock tables t1 write, t1 as a read, t1 as b read;
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+#
+# Bug #43272 HANDLER SQL command does not work under LOCK TABLES
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a INT);
+LOCK TABLE t1 WRITE;
+# HANDLER commands are not allowed in LOCK TABLES mode
+HANDLER t1 OPEN;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+HANDLER t1 READ FIRST;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+HANDLER t1 CLOSE;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+UNLOCK TABLES;
+DROP TABLE t1;
+#
+# Bug#45066 FLUSH TABLES WITH READ LOCK deadlocks against
+# LOCK TABLE
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT);
+LOCK TABLE t1 READ;
+FLUSH TABLES;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+LOCK TABLE t1 WRITE;
+FLUSH TABLES;
+#
+# If you allow the next combination, you reintroduce bug Bug#45066
+#
+LOCK TABLE t1 READ;
+FLUSH TABLES WITH READ LOCK;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+LOCK TABLE t1 WRITE;
+FLUSH TABLES WITH READ LOCK;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+UNLOCK TABLES;
+DROP TABLE t1;
+#
+# Simplified test for bug #48538 "Assertion in thr_lock() on LOAD DATA
+# CONCURRENT INFILE".
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (f1 INT, f2 INT) ENGINE = MEMORY;
+CREATE TRIGGER t1_ai AFTER INSERT ON t1 FOR EACH ROW
+UPDATE LOW_PRIORITY t1 SET f2 = 7;
+# Statement below should fail with ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+# error instead of failing on assertion in table-level locking subsystem.
+INSERT INTO t1(f1) VALUES(0);
+ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
+DROP TABLE t1;
+#
+# Bug#43685 Lock table affects other non-related tables
+#
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (id INT);
+CREATE TABLE t2 (id INT);
+# Connection default
+LOCK TABLE t1 WRITE;
+ANALYZE TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 analyze status Table is already up to date
+# Connection con2
+LOCK TABLE t2 WRITE;
+# This used to hang until the first connection
+# unlocked t1.
+FLUSH TABLE t2;
+UNLOCK TABLES;
+# Connection default
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+#
+# End of 6.0 tests.
+#
diff --git a/mysql-test/r/lock_multi.result b/mysql-test/r/lock_multi.result
index 3f1165fd069..99e1f54e762 100644
--- a/mysql-test/r/lock_multi.result
+++ b/mysql-test/r/lock_multi.result
@@ -1,21 +1,39 @@
drop table if exists t1,t2;
create table t1(n int);
insert into t1 values (1);
-lock tables t1 write;
+select get_lock("mysqltest_lock", 100);
+get_lock("mysqltest_lock", 100)
+1
+update t1 set n = 2 and get_lock('mysqltest_lock', 100);
update low_priority t1 set n = 4;
select n from t1;
-unlock tables;
+select release_lock("mysqltest_lock");
+release_lock("mysqltest_lock")
+1
+select release_lock("mysqltest_lock");
+release_lock("mysqltest_lock")
+1
n
4
drop table t1;
create table t1(n int);
insert into t1 values (1);
-lock tables t1 read;
+select get_lock("mysqltest_lock", 100);
+get_lock("mysqltest_lock", 100)
+1
+select n from t1 where get_lock('mysqltest_lock', 100);
update low_priority t1 set n = 4;
select n from t1;
n
1
-unlock tables;
+select release_lock("mysqltest_lock");
+release_lock("mysqltest_lock")
+1
+n
+1
+select release_lock("mysqltest_lock");
+release_lock("mysqltest_lock")
+1
drop table t1;
create table t1 (a int, b int);
create table t2 (c int, d int);
@@ -35,6 +53,7 @@ create table t2 (a int);
lock table t1 write, t2 write;
insert t1 select * from t2;
drop table t2;
+unlock tables;
ERROR 42S02: Table 'test.t2' doesn't exist
drop table t1;
create table t1 (a int);
@@ -42,6 +61,7 @@ create table t2 (a int);
lock table t1 write, t2 write, t1 as t1_2 write, t2 as t2_2 write;
insert t1 select * from t2;
drop table t2;
+unlock tables;
ERROR 42S02: Table 'test.t2' doesn't exist
drop table t1;
End of 4.1 tests
@@ -72,9 +92,10 @@ CREATE TABLE t1 (c1 int);
LOCK TABLE t1 WRITE;
FLUSH TABLES WITH READ LOCK;
CREATE TABLE t2 (c1 int);
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
UNLOCK TABLES;
UNLOCK TABLES;
-DROP TABLE t1, t2;
+DROP TABLE t1;
CREATE TABLE t1 (c1 int);
LOCK TABLE t1 WRITE;
FLUSH TABLES WITH READ LOCK;
@@ -203,7 +224,7 @@ drop table if exists t1,t2;
create table t1 (a int);
flush status;
lock tables t1 read;
-insert into t1 values(1);;
+insert into t1 values(1);
unlock tables;
drop table t1;
select @tlwa < @tlwb;
@@ -219,3 +240,239 @@ flush tables with read lock;;
connection: default
flush tables;
drop table t1;
+#
+# Test for bug #46272 "MySQL 5.4.4, new MDL: unnecessary deadlock".
+#
+drop table if exists t1;
+create table t1 (c1 int primary key, c2 int, c3 int);
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+begin;
+update t1 set c3=c3+1 where c2=3;
+#
+# Switching to connection 'con46272'.
+# The below ALTER TABLE statement should wait till transaction
+# in connection 'default' is complete and then succeed.
+# It should not deadlock or fail with ER_LOCK_DEADLOCK error.
+# Sending:
+alter table t1 add column c4 int;;
+#
+# Switching to connection 'default'.
+# Wait until the above ALTER TABLE gets blocked because this
+# connection holds SW metadata lock on table to be altered.
+# The below statement should succeed. It should not
+# deadlock or end with ER_LOCK_DEADLOCK error.
+update t1 set c3=c3+1 where c2=4;
+# Unblock ALTER TABLE by committing transaction.
+commit;
+#
+# Switching to connection 'con46272'.
+# Reaping ALTER TABLE.
+#
+# Switching to connection 'default'.
+drop table t1;
+#
+# Bug#47249 assert in MDL_global_lock::is_lock_type_compatible
+#
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+#
+# Test 1: LOCK TABLES v1 WRITE, t1 READ;
+#
+# Thanks to the fact that we no longer allow DDL on tables
+# which are locked for write implicitly, the exact scenario
+# in which assert was failing is no longer repeatable.
+CREATE TABLE t1 ( f1 integer );
+CREATE VIEW v1 AS SELECT f1 FROM t1 ;
+LOCK TABLES v1 WRITE, t1 READ;
+FLUSH TABLE t1;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+UNLOCK TABLES;
+DROP TABLE t1;
+DROP VIEW v1;
+#
+# Test 2: LOCK TABLES t1 WRITE, v1 READ;
+#
+CREATE TABLE t1 ( f1 integer );
+CREATE VIEW v1 AS SELECT f1 FROM t1 ;
+# Connection 2
+LOCK TABLES t1 WRITE, v1 READ;
+FLUSH TABLE t1;
+# Connection 1
+LOCK TABLES t1 WRITE;
+FLUSH TABLE t1;
+DROP TABLE t1;
+DROP VIEW v1;
+#
+# Test for bug #50913 "Deadlock between open_and_lock_tables_derived
+# and MDL". Also see additional coverage in mdl_sync.test.
+#
+drop table if exists t1;
+drop view if exists v1;
+create table t1 (i int);
+create view v1 as select i from t1;
+begin;
+select * from t1;
+i
+# Switching to connection 'con50913'.
+# Sending:
+alter table t1 add column j int;
+# Switching to connection 'default'.
+# Wait until ALTER TABLE gets blocked.
+# The below statement should try to acquire SW lock on 't1'
+# and therefore should get ER_LOCK_DEADLOCK error. Before
+# bug fix it acquired SR lock and hung on thr_lock.c lock.
+delete a from t1 as a where i = 1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Unblock ALTER TABLE.
+commit;
+# Switching to connection 'con50913'.
+# Reaping ALTER TABLE;
+# Switching to connection 'default'.
+begin;
+select * from v1;
+i
+# Switching to connection 'con50913'.
+# Sending:
+alter table t1 drop column j;
+# Switching to connection 'default'.
+# Wait until ALTER TABLE gets blocked.
+# The below statement should try to acquire SW lock on 't1'
+# and therefore should get ER_LOCK_DEADLOCK error. Before
+# bug fix it acquired SR lock and hung on thr_lock.c lock.
+insert into v1 values (1);
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Unblock ALTER TABLE.
+commit;
+# Switching to connection 'con50913'.
+# Reaping ALTER TABLE;
+# Switching to connection 'default'.
+drop view v1;
+drop table t1;
+#
+# Bug#45225 Locking: hang if drop table with no timeout
+#
+# These tests also provide function coverage for the
+# lock_wait_timeout server variable.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id int);
+SET SESSION lock_wait_timeout= 1;
+#
+# Test 1: acquire exclusive lock
+#
+# Connection default
+START TRANSACTION;
+INSERT INTO t1 VALUES (1);
+# Connection 2
+DROP TABLE t1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection default
+COMMIT;
+#
+# Test 2: upgrade shared lock
+#
+# Connection default
+START TRANSACTION;
+SELECT * FROM t1;
+id
+1
+# Connection 2
+ALTER TABLE t1 RENAME TO t2;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection default
+COMMIT;
+#
+# Test 3: acquire shared lock
+#
+# Connection default
+LOCK TABLE t1 WRITE;
+# Connection 2
+INSERT INTO t1(id) VALUES (2);
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection default
+UNLOCK TABLES;
+#
+# Test 4: table level locks
+#
+# Connection default
+LOCK TABLE t1 READ;
+# Connection 2
+INSERT INTO t1(id) VALUES(4);
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection default
+UNLOCK TABLES;
+#
+# Test 5: Waiting on Table Definition Cache (TDC)
+#
+# Connection default
+LOCK TABLE t1 READ;
+# Connection con3
+# Sending:
+FLUSH TABLES;
+# Connection con2
+SELECT * FROM t1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection default
+UNLOCK TABLES;
+# Connection con3
+# Reaping: FLUSH TABLES
+#
+# Test 6: Timeouts in I_S queries
+#
+# Connection default
+CREATE TABLE t2 (id INT);
+LOCK TABLE t2 WRITE;
+# Connection con3
+# Sending:
+DROP TABLE t1, t2;
+# Connection con2
+SELECT table_name, table_comment FROM information_schema.tables
+WHERE table_schema= 'test' AND table_name= 't1';
+table_name table_comment
+t1 Lock wait timeout exceeded; try restarting transaction
+# Connection default
+UNLOCK TABLES;
+# Connection con3
+# Reaping: DROP TABLE t1, t2
+# Connection default
+# Cleanup
+#
+# Test for bug #51134 "Crash in MDL_lock::destroy on a concurrent
+# DDL workload".
+#
+drop tables if exists t1, t2, t3;
+create table t3 (i int);
+# Switching to connection 'con1'
+# Lock 't3' so upcoming RENAME is blocked.
+lock table t3 read;
+# Switching to connection 'con2'
+# Remember ID for this connection.
+# Start statement which will try to acquire two instances
+# of X metadata lock on the same object.
+# Sending:
+rename tables t1 to t2, t2 to t3;;
+# Switching to connection 'default'
+# Wait until RENAME TABLE is blocked on table 't3'.
+# Kill RENAME TABLE.
+kill query ID;
+# Switching to connection 'con2'
+# RENAME TABLE should be aborted but should not crash.
+ERROR 70100: Query execution was interrupted
+# Switching to connection 'con1'
+unlock tables;
+# Switching to connection 'default'
+drop table t3;
+#
+# Test for the bug where upgradable metadata locks was acquired
+# even if the table to altered was temporary.
+# Bug found while working on the related bug #51240.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (id INT);
+LOCK TABLE t1 WRITE;
+# Connection con1
+CREATE TEMPORARY TABLE t1 (id INT);
+ALTER TABLE t1 ADD COLUMN j INT;
+# Connection default
+UNLOCK TABLES;
+DROP TABLE t1;
diff --git a/mysql-test/r/lock_sync.result b/mysql-test/r/lock_sync.result
index fc4e8c850f6..49ef3bb1b37 100644
--- a/mysql-test/r/lock_sync.result
+++ b/mysql-test/r/lock_sync.result
@@ -6,6 +6,7 @@
# statements which tried to acquire stronger write lock (TL_WRITE,
# TL_WRITE_ALLOW_READ) on this table might have led to deadlock.
drop table if exists t1;
+drop view if exists v1;
# Create auxiliary connections used through the test.
# Reset DEBUG_SYNC facility before using it.
set debug_sync= 'RESET';
@@ -14,6 +15,9 @@ set debug_sync= 'RESET';
set @old_general_log = @@global.general_log;
set @@global.general_log= OFF;
create table t1 (i int) engine=InnoDB;
+# We have to use view in order to make LOCK TABLES avoid
+# acquiring SNRW metadata lock on table.
+create view v1 as select * from t1;
insert into t1 values (1);
# Prepare user lock which will be used for resuming execution of
# the first statement after it acquires TL_WRITE_ALLOW_WRITE lock.
@@ -36,7 +40,7 @@ select count(*) > 0 from t1 as a, t1 as b for update;;
# acquiring lock for the the first instance of 't1'.
set debug_sync= 'now WAIT_FOR parked';
# Send LOCK TABLE statement which will try to get TL_WRITE lock on 't1':
-lock table t1 write;;
+lock table v1 write;;
# Switch to connection 'default'.
# Wait until this LOCK TABLES statement starts waiting for table lock.
# Allow SELECT ... FOR UPDATE to resume.
@@ -56,6 +60,9 @@ release_lock("lock_bug45143_wait")
1
# Switch to connection 'con_bug45143_1'.
# Reap INSERT statement.
+# In Statement and Mixed replication mode we get here "Unsafe
+# for binlog" warnings. In row mode there are no warnings.
+# Hide the discrepancy.
# Switch to connection 'con_bug45143_3'.
# Reap LOCK TABLES statement.
unlock tables;
@@ -63,4 +70,25 @@ unlock tables;
# Do clean-up.
set debug_sync= 'RESET';
set @@global.general_log= @old_general_log;
+drop view v1;
drop table t1;
+#
+# Bug#50821 Deadlock between LOCK TABLES and ALTER TABLE
+#
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1(id INT);
+CREATE TABLE t2(id INT);
+# Connection con2
+START TRANSACTION;
+SELECT * FROM t1;
+id
+# Connection default
+# Sending:
+ALTER TABLE t1 ADD COLUMN j INT;
+# Connection con2
+# This used to cause a deadlock.
+INSERT INTO t2 SELECT * FROM t1;
+COMMIT;
+# Connection default
+# Reaping ALTER TABLE t1 ADD COLUMN j INT
+DROP TABLE t1, t2;
diff --git a/mysql-test/r/lowercase_table2.result b/mysql-test/r/lowercase_table2.result
index cf87fd1b5a4..b621a466a29 100644
--- a/mysql-test/r/lowercase_table2.result
+++ b/mysql-test/r/lowercase_table2.result
@@ -226,10 +226,9 @@ drop table t_bug44738_UPPERCASE;
create table t_bug44738_UPPERCASE (i int);
drop table t_bug44738_UPPERCASE;
# Finally, let us check that another issue which was exposed by
-# the original test case is solved. I.e. that fuse in CREATE TABLE
-# which ensures that table is not created if there is an entry for
-# it in TDC even though it was removed from disk uses normalized
-# version of the table name.
+# the original test case is solved. I.e. that the table is not
+# created if there is an entry for it in TDC even though it was
+# removed from disk.
create table t_bug44738_UPPERCASE (i int) engine = myisam;
# Load table definition in TDC.
select table_schema, table_name, table_comment from information_schema.tables
@@ -237,10 +236,13 @@ where table_schema = 'test' and table_name like 't_bug44738_%';
table_schema table_name table_comment
test t_bug44738_UPPERCASE
# Simulate manual removal of the table.
-# After manual removal of table still there should be an entry for table
-# in TDC so attempt to create table with the same name should fail.
+# Check that still there is an entry for table in TDC.
+show open tables like 't_bug44738_%';
+Database Table In_use Name_locked
+test t_bug44738_uppercase 0 0
+# So attempt to create table with the same name should fail.
create table t_bug44738_UPPERCASE (i int);
-ERROR 42S01: Table 't_bug44738_uppercase' already exists
+ERROR HY000: Can't find file: 't_bug44738_uppercase' (errno: 2)
# And should succeed after FLUSH TABLES.
flush tables;
create table t_bug44738_UPPERCASE (i int);
diff --git a/mysql-test/r/mdl_sync.result b/mysql-test/r/mdl_sync.result
new file mode 100644
index 00000000000..ff6daf6443e
--- /dev/null
+++ b/mysql-test/r/mdl_sync.result
@@ -0,0 +1,2377 @@
+SET DEBUG_SYNC= 'RESET';
+drop table if exists t1,t2,t3;
+create table t1 (i int);
+create table t2 (i int);
+connection: default
+lock tables t2 read;
+connection: con1
+set debug_sync='mdl_upgrade_shared_lock_to_exclusive SIGNAL parked WAIT_FOR go';
+alter table t1 rename t3;
+connection: default
+set debug_sync= 'now WAIT_FOR parked';
+connection: con2
+set debug_sync='mdl_acquire_lock_wait SIGNAL go';
+drop table t1,t2;
+connection: con1
+connection: default
+unlock tables;
+connection: con2
+ERROR 42S02: Unknown table 't1'
+drop table t3;
+SET DEBUG_SYNC= 'RESET';
+#
+# Basic test coverage for type-of-operation aware metadata locks.
+#
+drop table if exists t1, t2, t3;
+set debug_sync= 'RESET';
+create table t1 (c1 int);
+#
+# A) First let us check compatibility rules between differend kinds of
+# type-of-operation aware metadata locks.
+# Of course, these rules are already covered by the tests scattered
+# across the test suite. But it still makes sense to have one place
+# which covers all of them.
+#
+# 1) Acquire S (simple shared) lock on the table (by using HANDLER):
+#
+handler t1 open;
+#
+# Switching to connection 'mdl_con1'.
+# Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+0
+insert into t1 values (1), (1);
+# Check that SNW lock is compatible with it. To do this use ALTER TABLE
+# which will fail after opening the table and thus obtaining SNW metadata
+# lock.
+alter table t1 add primary key (c1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+# Check that SNRW lock is compatible with S lock.
+lock table t1 write;
+insert into t1 values (1);
+unlock tables;
+# Check that X lock is incompatible with S lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME is blocked because of S lock.
+#
+# Switching to connection 'default'.
+# Unblock RENAME TABLE.
+handler t1 close;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE.
+# Restore the original state of the things.
+rename table t2 to t1;
+#
+# Switching to connection 'default'.
+handler t1 open;
+#
+# Switching to connection 'mdl_con1'.
+# Check that upgrade from SNW to X is blocked by presence of S lock.
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER TABLE is blocked because of S lock.
+#
+# Switching to connection 'default'.
+# Unblock ALTER TABLE.
+handler t1 close;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+# Restore the original state of the things.
+alter table t1 drop column c2;
+#
+# Switching to connection 'default'.
+handler t1 open;
+#
+# Switching to connection 'mdl_con1'.
+# Check that upgrade from SNRW to X is blocked by presence of S lock.
+lock table t1 write;
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above upgrade of SNRW to X in ALTER TABLE is blocked
+# because of S lock.
+#
+# Switching to connection 'default'.
+# Unblock ALTER TABLE.
+handler t1 close;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+# Restore the original state of the things.
+alter table t1 drop column c2;
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+# 2) Acquire SH (shared high-priority) lock on the table.
+# We have to involve DEBUG_SYNC facility for this as usually
+# such kind of locks are short-lived.
+#
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+3
+insert into t1 values (1);
+# Check that SNW lock is compatible with it. To do this use ALTER TABLE
+# which will fail after opening the table and thus obtaining SNW metadata
+# lock.
+alter table t1 add primary key (c1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+# Check that SNRW lock is compatible with SH lock.
+lock table t1 write;
+delete from t1 limit 1;
+unlock tables;
+# Check that X lock is incompatible with SH lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME is blocked because of SH lock.
+# Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping SELECT ... FROM I_S.
+table_name table_type auto_increment table_comment
+t1 BASE TABLE NULL
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE.
+# Restore the original state of the things.
+rename table t2 to t1;
+#
+# Switching to connection 'default'.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that upgrade from SNW to X is blocked by presence of SH lock.
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER TABLE is blocked because of SH lock.
+# Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping SELECT ... FROM I_S.
+table_name table_type auto_increment table_comment
+t1 BASE TABLE NULL
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+# Restore the original state of the things.
+alter table t1 drop column c2;
+#
+# Switching to connection 'default'.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that upgrade from SNRW to X is blocked by presence of S lock.
+lock table t1 write;
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above upgrade of SNRW to X in ALTER TABLE is blocked
+# because of S lock.
+# Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping SELECT ... FROM I_S.
+table_name table_type auto_increment table_comment
+t1 BASE TABLE NULL
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+# Restore the original state of the things.
+alter table t1 drop column c2;
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+#
+# 3) Acquire SR lock on the table.
+#
+#
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+3
+insert into t1 values (1);
+# Check that SNW lock is compatible with it. To do this use ALTER TABLE
+# which will fail after opening the table and thus obtaining SNW metadata
+# lock.
+alter table t1 add primary key (c1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+# Check that SNRW lock is not compatible with SR lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'default'.
+# Check that the above LOCK TABLES is blocked because of SR lock.
+# Unblock LOCK TABLES.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLES.
+delete from t1 limit 1;
+unlock tables;
+#
+# Switching to connection 'default'.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Check that X lock is incompatible with SR lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME is blocked because of SR lock.
+#
+# Switching to connection 'default'.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE.
+# Restore the original state of the things.
+rename table t2 to t1;
+#
+# Switching to connection 'default'.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Check that upgrade from SNW to X is blocked by presence of SR lock.
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER TABLE is blocked because of SR lock.
+#
+# Switching to connection 'default'.
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+# Restore the original state of the things.
+alter table t1 drop column c2;
+#
+# There is no need to check that upgrade from SNRW to X is blocked
+# by presence of SR lock because SNRW is incompatible with SR anyway.
+#
+#
+# Switching to connection 'default'.
+#
+#
+# 4) Acquire SW lock on the table.
+#
+#
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'mdl_con1'.
+# Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+4
+insert into t1 values (1);
+# Check that SNW lock is not compatible with SW lock.
+# Again we use ALTER TABLE which fails after opening
+# the table to avoid upgrade of SNW -> X.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'default'.
+# Check that the above ALTER TABLE is blocked because of SW lock.
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'mdl_con1'.
+# Check that SNRW lock is not compatible with SW lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'default'.
+# Check that the above LOCK TABLES is blocked because of SW lock.
+# Unblock LOCK TABLES.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLES.
+delete from t1 limit 2;
+unlock tables;
+#
+# Switching to connection 'default'.
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'mdl_con1'.
+# Check that X lock is incompatible with SW lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME is blocked because of SW lock.
+#
+# Switching to connection 'default'.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE.
+# Restore the original state of the things.
+rename table t2 to t1;
+#
+# There is no need to check that upgrade from SNW/SNRW to X is
+# blocked by presence of SW lock because SNW/SNRW is incompatible
+# with SW anyway.
+#
+#
+# Switching to connection 'default'.
+#
+#
+# 5) Acquire SNW lock on the table. We have to use DEBUG_SYNC for
+# this, to prevent SNW from being immediately upgraded to X.
+#
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that S, SH and SR locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+5
+# Check that SW lock is incompatible with SNW lock.
+# Sending:
+delete from t1 limit 2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above DELETE is blocked because of SNW lock.
+# Unblock ALTER and thus DELETE.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con1'.
+# Reaping DELETE.
+#
+# Switching to connection 'default'.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that SNW lock is incompatible with SNW lock.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER is blocked because of SNW lock.
+# Unblock ALTERs.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping first ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con1'.
+# Reaping another ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that SNRW lock is incompatible with SNW lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above LOCK TABLES is blocked because of SNW lock.
+# Unblock ALTER and thus LOCK TABLES.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLES
+insert into t1 values (1);
+unlock tables;
+#
+# Switching to connection 'default'.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con1'.
+set debug_sync= 'now WAIT_FOR locked';
+# Check that X lock is incompatible with SNW lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME is blocked because of SNW lock.
+# Unblock ALTER and thus RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'default'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE
+# Revert back to original state of things.
+rename table t2 to t1;
+#
+# There is no need to check that upgrade from SNW/SNRW to X is
+# blocked by presence of another SNW lock because SNW/SNRW is
+# incompatible with SNW anyway.
+#
+# Switching to connection 'default'.
+#
+#
+# 6) Acquire SNRW lock on the table.
+#
+#
+lock table t1 write;
+#
+# Switching to connection 'mdl_con1'.
+# Check that S and SH locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+# Check that SR lock is incompatible with SNRW lock.
+# Sending:
+select count(*) from t1;;
+#
+# Switching to connection 'default'.
+# Check that the above SELECT is blocked because of SNRW lock.
+# Unblock SELECT.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping SELECT.
+count(*)
+4
+#
+# Switching to connection 'default'.
+lock table t1 write;
+#
+# Switching to connection 'mdl_con1'.
+# Check that SW lock is incompatible with SNRW lock.
+# Sending:
+delete from t1 limit 1;;
+#
+# Switching to connection 'default'.
+# Check that the above DELETE is blocked because of SNRW lock.
+# Unblock DELETE.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping DELETE.
+#
+# Switching to connection 'default'.
+lock table t1 write;
+#
+# Switching to connection 'mdl_con1'.
+# Check that SNW lock is incompatible with SNRW lock.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'default'.
+# Check that the above ALTER is blocked because of UNWR lock.
+# Unblock ALTER.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+lock table t1 write;
+#
+# Switching to connection 'mdl_con1'.
+# Check that SNRW lock is incompatible with SNRW lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'default'.
+# Check that the above LOCK TABLES is blocked because of SNRW lock.
+# Unblock waiting LOCK TABLES.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLES
+insert into t1 values (1);
+unlock tables;
+#
+# Switching to connection 'default'.
+lock table t1 write;
+#
+# Switching to connection 'mdl_con1'.
+# Check that X lock is incompatible with SNRW lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'default'.
+# Check that the above RENAME is blocked because of SNRW lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME TABLE
+# Revert back to original state of things.
+rename table t2 to t1;
+#
+# There is no need to check that upgrade from SNW/SNRW to X is
+# blocked by presence of another SNRW lock because SNW/SNRW is
+# incompatible with SNRW anyway.
+#
+# Switching to connection 'default'.
+#
+#
+# 7) Now do the same round of tests for X lock. We use additional
+# table to get long-lived lock of this type.
+#
+create table t2 (c1 int);
+#
+# Switching to connection 'mdl_con2'.
+# Take a lock on t2, so RENAME TABLE t1 TO t2 will get blocked
+# after acquiring X lock on t1.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that S lock in incompatible with X lock.
+# Sending:
+handler t1 open;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above HANDLER statement is blocked because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping HANDLER.
+handler t1 close;
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that SH lock in incompatible with X lock.
+# Sending:
+select column_name from information_schema.columns where table_schema='test' and table_name='t1';;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT ... FROM I_S ... statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping SELECT ... FROM I_S.
+column_name
+c1
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that SR lock in incompatible with X lock.
+# Sending:
+select count(*) from t1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping SELECT.
+count(*)
+4
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that SW lock in incompatible with X lock.
+# Sending:
+delete from t1 limit 1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above DELETE statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping DELETE.
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that SNW lock is incompatible with X lock.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that SNRW lock is incompatible with X lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above LOCK TABLE statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLE.
+unlock tables;
+#
+# Switching to connection 'mdl_con2'.
+# Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+#
+# Switching to connection 'default'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME has acquired X lock on t1 and is waiting for t2.
+# Check that X lock is incompatible with X lock.
+# Sending:
+rename table t1 to t3;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above RENAME statement is blocked
+# because of X lock.
+# Unblock RENAME TABLE
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping RENAME.
+rename table t3 to t1;
+#
+# B) Now let us test compatibility in cases when both locks
+# are pending. I.e. let us test rules for priorities between
+# different types of metadata locks.
+#
+#
+# Switching to connection 'mdl_con2'.
+#
+# 1) Check compatibility for pending SNW lock.
+#
+# Acquire SW lock in order to create pending SNW lock later.
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'default'.
+# Add pending SNW lock.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con1'.
+# Check that ALTER TABLE is waiting with pending SNW lock.
+# Check that S, SH and SR locks are compatible with pending SNW
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+select count(*) from t1;
+count(*)
+4
+# Check that SW is incompatible with pending SNW
+# Sending:
+delete from t1 limit 1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above DELETE is blocked because of pending SNW lock.
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping ALTER.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con1'.
+# Reaping DELETE.
+#
+# We can't do similar check for SNW, SNRW and X locks because
+# they will also be blocked by active SW lock.
+#
+#
+# Switching to connection 'mdl_con2'.
+#
+# 2) Check compatibility for pending SNRW lock.
+#
+# Acquire SR lock in order to create pending SNRW lock.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'default'.
+# Add pending SNRW lock.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that LOCK TABLE is waiting with pending SNRW lock.
+# Check that S and SH locks are compatible with pending SNRW
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+# Check that SR is incompatible with pending SNRW
+# Sending:
+select count(*) from t1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT is blocked because of pending SNRW lock.
+# Unblock LOCK TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping LOCK TABLE.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping SELECT.
+count(*)
+3
+# Restore pending SNRW lock.
+#
+# Switching to connection 'mdl_con2'.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'default'.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that LOCK TABLE is waiting with pending SNRW lock.
+# Check that SW is incompatible with pending SNRW
+# Sending:
+insert into t1 values (1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above INSERT is blocked because of pending SNRW lock.
+# Unblock LOCK TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping LOCK TABLE.
+unlock tables;
+#
+# Switching to connection 'mdl_con1'.
+# Reaping INSERT.
+# Restore pending SNRW lock.
+#
+# Switching to connection 'mdl_con2'.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'default'.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that LOCK TABLE is waiting with pending SNRW lock.
+# Check that SNW is compatible with pending SNRW
+# So ALTER TABLE statements are not starved by LOCK TABLEs.
+alter table t1 add primary key (c1);
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'mdl_con2'.
+# Unblock LOCK TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping LOCK TABLE.
+unlock tables;
+#
+# We can't do similar check for SNRW and X locks because
+# they will also be blocked by active SR lock.
+#
+#
+# Switching to connection 'mdl_con2'.
+#
+# 3) Check compatibility for pending X lock.
+#
+# Acquire SR lock in order to create pending X lock.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'default'.
+# Add pending X lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME TABLE is waiting with pending X lock.
+# Check that SH locks are compatible with pending X
+select column_name from information_schema.columns where
+table_schema='test' and table_name='t1';
+column_name
+c1
+# Check that S is incompatible with pending X
+# Sending:
+handler t1 open;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above HANDLER OPEN is blocked because of pending X lock.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping HANDLER t1 OPEN.
+handler t1 close;
+# Restore pending X lock.
+#
+# Switching to connection 'mdl_con2'.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'default'.
+# Add pending X lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME TABLE is waiting with pending X lock.
+# Check that SR is incompatible with pending X
+# Sending:
+select count(*) from t1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT is blocked because of pending X lock.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping SELECT.
+count(*)
+4
+# Restore pending X lock.
+#
+# Switching to connection 'mdl_con2'.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'default'.
+# Add pending X lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME TABLE is waiting with pending X lock.
+# Check that SW is incompatible with pending X
+# Sending:
+delete from t1 limit 1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above DELETE is blocked because of pending X lock.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping DELETE.
+# Restore pending X lock.
+#
+# Switching to connection 'mdl_con2'.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'default'.
+# Add pending X lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME TABLE is waiting with pending X lock.
+# Check that SNW is incompatible with pending X
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above ALTER TABLE is blocked because of pending X lock.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+# Restore pending X lock.
+#
+# Switching to connection 'mdl_con2'.
+handler t1 open;
+#
+# Switching to connection 'default'.
+# Add pending X lock.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that RENAME TABLE is waiting with pending X lock.
+# Check that SNRW is incompatible with pending X
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'mdl_con3'.
+# Check that the above LOCK TABLES is blocked because of pending X lock.
+#
+# Switching to connection 'mdl_con2'.
+# Unblock RENAME TABLE.
+handler t1 close;
+#
+# Switching to connection 'default'.
+# Reaping RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'mdl_con1'.
+# Reaping LOCK TABLES.
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+#
+# C) Now let us test how type-of-operation locks are handled in
+# transactional context. Obviously we are mostly interested
+# in conflicting types of locks.
+#
+#
+# 1) Let us check how various locks used within transactional
+# context interact with active/pending SNW lock.
+#
+# We start with case when we are acquiring lock on the table
+# which was not used in the transaction before.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create an active SNW lock on t2.
+# We have to use DEBUG_SYNC facility as otherwise SNW lock
+# will be immediately released (or upgraded to X lock).
+insert into t2 values (1), (1);
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t2 add primary key (c1);;
+#
+# Switching to connection 'default'.
+set debug_sync= 'now WAIT_FOR locked';
+# SR lock should be acquired without any waiting.
+select count(*) from t2;
+count(*)
+2
+commit;
+# Now let us check that we will wait in case of SW lock.
+begin;
+select count(*) from t1;
+count(*)
+3
+# Sending:
+insert into t2 values (1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above INSERT is blocked.
+# Unblock ALTER TABLE and thus INSERT.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+# Reap INSERT.
+commit;
+#
+# Now let us see what happens when we are acquiring lock on the table
+# which is already used in transaction.
+#
+# *) First, case when transaction which has SR lock on the table also
+# locked in SNW mode acquires yet another SR lock and then tries
+# to acquire SW lock.
+begin;
+select count(*) from t1;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create an active SNW lock on t1.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'default'.
+set debug_sync= 'now WAIT_FOR locked';
+# We should still be able to get SR lock without waiting.
+select count(*) from t1;
+count(*)
+3
+# Since the above ALTER TABLE is not upgrading SNW lock to X by waiting
+# for SW lock we won't create deadlock.
+# So the below INSERT should not end-up with ER_LOCK_DEADLOCK error.
+# Sending:
+insert into t1 values (1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above INSERT is blocked.
+# Unblock ALTER TABLE and thus INSERT.
+set debug_sync= 'now SIGNAL finish';
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+# Reap INSERT.
+commit;
+#
+# **) Now test in which transaction that has SW lock on the table
+# against which there is pending SNW lock acquires SR and SW
+# locks on this table.
+#
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'mdl_con1'.
+# Create pending SNW lock on t1.
+# Sending:
+alter table t1 add primary key (c1);;
+#
+# Switching to connection 'default'.
+# Wait until ALTER TABLE starts waiting for SNW lock.
+# We should still be able to get both SW and SR locks without waiting.
+select count(*) from t1;
+count(*)
+5
+delete from t1 limit 1;
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
+#
+# Switching to connection 'default'.
+#
+# 2) Now similar tests for active SNW lock which is being upgraded
+# to X lock.
+#
+# Again we start with case when we are acquiring lock on the
+# table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con2'.
+# Start transaction which will prevent SNW -> X upgrade from
+# completing immediately.
+begin;
+select count(*) from t2;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create SNW lock pending upgrade to X on t2.
+# Sending:
+alter table t2 add column c2 int;;
+#
+# Switching to connection 'default'.
+# Wait until ALTER TABLE starts waiting X lock.
+# Check that attempt to acquire SR lock on t2 causes waiting.
+# Sending:
+select count(*) from t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT is blocked.
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+#
+# Switching to connection 'default'.
+# Reap SELECT.
+count(*)
+3
+commit;
+# Do similar check for SW lock.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con2'.
+# Start transaction which will prevent SNW -> X upgrade from
+# completing immediately.
+begin;
+select count(*) from t2;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create SNW lock pending upgrade to X on t2.
+# Sending:
+alter table t2 drop column c2;;
+#
+# Switching to connection 'default'.
+# Wait until ALTER TABLE starts waiting X lock.
+# Check that attempt to acquire SW lock on t2 causes waiting.
+# Sending:
+insert into t2 values (1);;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above INSERT is blocked.
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+#
+# Switching to connection 'default'.
+# Reap INSERT.
+commit;
+#
+# Test for the case in which we are acquiring lock on the table
+# which is already used in transaction.
+#
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con1'.
+# Create SNW lock pending upgrade to X.
+# Sending:
+alter table t1 add column c2 int;;
+#
+# Switching to connection 'default'.
+# Wait until ALTER TABLE starts waiting X lock.
+# Check that transaction is still able to acquire SR lock.
+select count(*) from t1;
+count(*)
+4
+# Waiting trying to acquire SW lock will cause deadlock and
+# therefore should cause an error.
+delete from t1 limit 1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Unblock ALTER TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap ALTER TABLE.
+#
+# Switching to connection 'default'.
+#
+# 3) Check how various locks used within transactional context
+# interact with active/pending SNRW lock.
+#
+# Once again we start with case when we are acquiring lock on
+# the table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con1'.
+lock table t2 write;
+#
+# Switching to connection 'default'.
+# Attempt to acquire SR should be blocked. It should
+# not cause errors as it does not creates deadlock.
+# Sending:
+select count(*) from t2;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that the above SELECT is blocked
+# Unblock SELECT.
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reap SELECT.
+count(*)
+4
+commit;
+# Repeat the same test for SW lock.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con1'.
+lock table t2 write;
+#
+# Switching to connection 'default'.
+# Again attempt to acquire SW should be blocked and should
+# not cause any errors.
+# Sending:
+delete from t2 limit 1;;
+#
+# Switching to connection 'mdl_con1'.
+# Check that the above DELETE is blocked
+# Unblock DELETE.
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reap DELETE.
+commit;
+#
+# Now coverage for the case in which we are acquiring lock on
+# the table which is already used in transaction and against
+# which there is a pending SNRW lock request.
+#
+# *) Let us start with case when transaction has only a SR lock.
+#
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con1'.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'default'.
+# Wait until LOCK TABLE is blocked creating pending request for X lock.
+# Check that another instance of SR lock is granted without waiting.
+select count(*) from t1;
+count(*)
+4
+# Attempt to wait for SW lock will lead to deadlock, thus
+# the below statement should end with ER_LOCK_DEADLOCK error.
+delete from t1 limit 1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Unblock LOCK TABLES.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap LOCK TABLES.
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+# **) Now case when transaction has a SW lock.
+#
+begin;
+delete from t1 limit 1;
+#
+# Switching to connection 'mdl_con1'.
+# Sending:
+lock table t1 write;;
+#
+# Switching to connection 'default'.
+# Wait until LOCK TABLE is blocked creating pending request for X lock.
+# Check that both SR and SW locks are granted without waiting
+# and errors.
+select count(*) from t1;
+count(*)
+3
+insert into t1 values (1, 1);
+# Unblock LOCK TABLES.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap LOCK TABLES.
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+# 4) Check how various locks used within transactional context
+# interact with active/pending X lock.
+#
+# As usual we start with case when we are acquiring lock on
+# the table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con2'.
+# Start transaction which will prevent X lock from going away
+# immediately.
+begin;
+select count(*) from t2;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create pending X lock on t2.
+# Sending:
+rename table t2 to t3;;
+#
+# Switching to connection 'default'.
+# Wait until RENAME TABLE starts waiting with pending X lock.
+# Check that attempt to acquire SR lock on t2 causes waiting.
+# Sending:
+select count(*) from t2;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above SELECT is blocked.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap RENAME TABLE.
+#
+# Switching to connection 'default'.
+# Reap SELECT.
+ERROR 42S02: Table 'test.t2' doesn't exist
+commit;
+rename table t3 to t2;
+# The same test for SW lock.
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con2'.
+# Start transaction which will prevent X lock from going away
+# immediately.
+begin;
+select count(*) from t2;
+count(*)
+3
+#
+# Switching to connection 'mdl_con1'.
+# Create pending X lock on t2.
+# Sending:
+rename table t2 to t3;;
+#
+# Switching to connection 'default'.
+# Wait until RENAME TABLE starts waiting with pending X lock.
+# Check that attempt to acquire SW lock on t2 causes waiting.
+# Sending:
+delete from t2 limit 1;;
+#
+# Switching to connection 'mdl_con2'.
+# Check that the above DELETE is blocked.
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap RENAME TABLE.
+#
+# Switching to connection 'default'.
+# Reap DELETE.
+ERROR 42S02: Table 'test.t2' doesn't exist
+commit;
+rename table t3 to t2;
+#
+# Coverage for the case in which we are acquiring lock on
+# the table which is already used in transaction and against
+# which there is a pending X lock request.
+#
+# *) The first case is when transaction has only a SR lock.
+#
+begin;
+select count(*) from t1;
+count(*)
+4
+#
+# Switching to connection 'mdl_con1'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'default'.
+# Wait until RENAME TABLE is blocked creating pending request for X lock.
+# Check that another instance of SR lock is granted without waiting.
+select count(*) from t1;
+count(*)
+4
+# Attempt to wait for SW lock will lead to deadlock, thus
+# the below statement should end with ER_LOCK_DEADLOCK error.
+delete from t1 limit 1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'default'.
+#
+# **) The second case is when transaction has a SW lock.
+#
+begin;
+delete from t1 limit 1;
+#
+# Switching to connection 'mdl_con1'.
+# Sending:
+rename table t1 to t2;;
+#
+# Switching to connection 'default'.
+# Wait until RENAME TABLE is blocked creating pending request for X lock.
+# Check that both SR and SW locks are granted without waiting
+# and errors.
+select count(*) from t1;
+count(*)
+3
+insert into t1 values (1, 1);
+# Unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'mdl_con1'.
+# Reap RENAME TABLE.
+ERROR 42S01: Table 't2' already exists
+#
+# Switching to connection 'default'.
+# Clean-up.
+set debug_sync= 'RESET';
+drop table t1, t2;
+#
+# Additional coverage for some scenarios in which not quite
+# correct use of S metadata locks by HANDLER statement might
+# have caused deadlocks.
+#
+drop table if exists t1, t2;
+create table t1 (i int);
+create table t2 (j int);
+insert into t1 values (1);
+#
+# First, check scenario in which we upgrade SNRW lock to X lock
+# on a table while having HANDLER READ trying to acquire TL_READ
+# on the same table.
+#
+handler t1 open;
+#
+# Switching to connection 'handler_con1'.
+lock table t1 write;
+# Upgrade SNRW to X lock.
+# Sending:
+alter table t1 add column j int;;
+#
+# Switching to connection 'handler_con2'.
+# Wait until ALTER is blocked during upgrade.
+#
+# Switching to connection 'default'.
+# The below statement should not cause deadlock.
+handler t1 read first;;
+#
+# Switching to connection 'handler_con1'.
+# Reap ALTER TABLE.
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reap HANDLER READ.
+i j
+1 NULL
+handler t1 close;
+#
+# Now, check scenario in which upgrade of SNRW lock to X lock
+# can be blocked by HANDLER which is open in connection currently
+# waiting to get table-lock owned by connection doing upgrade.
+#
+handler t1 open;
+#
+# Switching to connection 'handler_con1'.
+lock table t1 write, t2 read;
+#
+# Switching to connection 'default'.
+# Execute statement which will be blocked on table-level lock
+# owned by connection 'handler_con1'.
+# Sending:
+insert into t2 values (1);;
+#
+# Switching to connection 'handler_con1'.
+# Wait until INSERT is blocked on table-level lock.
+# The below statement should not cause deadlock.
+alter table t1 drop column j;
+unlock tables;
+#
+# Switching to connection 'default'.
+# Reap INSERT.
+handler t1 close;
+#
+# Then, check the scenario in which upgrade of SNRW lock to X
+# lock is blocked by HANDLER which is open in connection currently
+# waiting to get SW lock on the same table.
+#
+handler t1 open;
+#
+# Switching to connection 'handler_con1'.
+lock table t1 write;
+#
+# Switching to connection 'default'.
+# The below insert should be blocked because active SNRW lock on 't1'.
+# Sending:
+insert into t1 values (1);;
+#
+# Switching to connection 'handler_con1'.
+# Wait until INSERT is blocked because of SNRW lock.
+# The below ALTER TABLE will be blocked because of presence of HANDLER.
+# Sending:
+alter table t1 add column j int;;
+#
+# Switching to connection 'default'.
+# INSERT should be chosen as victim for resolving deadlock.
+# Reaping INSERT.
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Close HANDLER to unblock ALTER TABLE.
+handler t1 close;
+#
+# Switching to connection 'handler_con1'.
+# Reaping ALTER TABLE.
+unlock tables;
+#
+# Switching to connection 'default'.
+#
+# Finally, test in which upgrade of SNRW lock to X lock is blocked
+# by HANDLER which is open in connection currently waiting to get
+# SR lock on the table on which lock is upgraded.
+#
+handler t1 open;
+#
+# Switching to connection 'handler_con1'.
+lock table t1 write, t2 write;
+#
+# Switching to connection 'default'.
+# The below insert should be blocked because active SNRW lock on 't1'.
+# Sending:
+insert into t2 values (1);;
+#
+# Switching to connection 'handler_con1'.
+# Wait until INSERT is blocked because of SNRW lock.
+# The below ALTER TABLE will be blocked because of presence of HANDLER.
+# Sending:
+alter table t1 drop column j;;
+#
+# Switching to connection 'default'.
+# INSERT should be chosen as victim for resolving deadlock.
+# Reaping INSERT.
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Close HANDLER to unblock ALTER TABLE.
+handler t1 close;
+#
+# Switching to connection 'handler_con1'.
+# Reaping ALTER TABLE.
+unlock tables;
+#
+# Switching to connection 'default'.
+# Clean-up.
+drop tables t1, t2;
+#
+# Test coverage for basic deadlock detection in metadata
+# locking subsystem.
+#
+drop tables if exists t0, t1, t2, t3, t4, t5;
+create table t1 (i int);
+create table t2 (j int);
+create table t3 (k int);
+create table t4 (k int);
+#
+# Test for the case in which no deadlock occurs.
+#
+#
+# Switching to connection 'deadlock_con1'.
+begin;
+insert into t1 values (1);
+#
+# Switching to connection 'deadlock_con2'.
+begin;
+insert into t2 values (1);
+#
+# Switching to connection 'default'.
+# Send:
+rename table t2 to t0, t3 to t2, t0 to t3;;
+#
+# Switching to connection 'deadlock_con1'.
+# Wait until the above RENAME TABLE is blocked because it has to wait
+# for 'deadlock_con2' which holds shared metadata lock on 't2'.
+# The below statement should wait for exclusive metadata lock
+# on 't2' to go away and should not produce ER_LOCK_DEADLOCK
+# as no deadlock is possible in this situation.
+# Send:
+select * from t2;;
+#
+# Switching to connection 'deadlock_con2'.
+# Wait until the above SELECT * FROM t2 is starts waiting
+# for an exclusive metadata lock to go away.
+#
+# Unblock RENAME TABLE by releasing shared metadata lock on t2.
+commit;
+#
+# Switching to connection 'default'.
+# Reap RENAME TABLE.
+#
+# Switching to connection 'deadlock_con1'.
+# Reap SELECT.
+k
+#
+# Switching to connection 'default'.
+#
+# Let us check that in the process of waiting for conflicting lock
+# on table 't2' to go away transaction in connection 'deadlock_con1'
+# has not released metadata lock on table 't1'.
+# Send:
+rename table t1 to t0, t3 to t1, t0 to t3;;
+#
+# Switching to connection 'deadlock_con1'.
+# Wait until the above RENAME TABLE is blocked because it has to wait
+# for 'deadlock_con1' which should still hold shared metadata lock on
+# table 't1'.
+# Commit transaction to unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reap RENAME TABLE.
+#
+# Test for case when deadlock occurs and should be detected immediately.
+#
+#
+# Switching to connection 'deadlock_con1'.
+begin;
+insert into t2 values (2);
+#
+# Switching to connection 'default'.
+# Send:
+rename table t2 to t0, t1 to t2, t0 to t1;;
+#
+# Switching to connection 'deadlock_con1'.
+# Wait until the above RENAME TABLE is blocked because it has to wait
+# for 'deadlock_con1' which holds shared metadata lock on 't2'.
+#
+# The below statement should not wait as doing so will cause deadlock.
+# Instead it should fail and emit ER_LOCK_DEADLOCK statement.
+select * from t1;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+#
+# Let us check that failure of the above statement has not released
+# metadata lock on table 't1', i.e. that RENAME TABLE is still blocked.
+# Commit transaction to unblock RENAME TABLE.
+commit;
+#
+# Switching to connection 'default'.
+# Reap RENAME TABLE.
+#
+# Test for the case in which deadlock also occurs but not immediately.
+#
+#
+# Switching to connection 'deadlock_con1'.
+begin;
+insert into t2 values (1);
+#
+# Switching to connection 'default'.
+lock table t1 write;
+#
+# Switching to connection 'deadlock_con1'.
+# The below SELECT statement should wait for metadata lock
+# on table 't1' and should not produce ER_LOCK_DEADLOCK
+# immediately as no deadlock is possible at the moment.
+select * from t1;;
+#
+# Switching to connection 'deadlock_con2'.
+# Wait until the above SELECT * FROM t1 is starts waiting
+# for an UNRW metadata lock to go away.
+# Send RENAME TABLE statement that will deadlock with the
+# SELECT statement and thus should abort the latter.
+rename table t1 to t0, t2 to t1, t0 to t2;;
+#
+# Switching to connection 'default'.
+# Wait till above RENAME TABLE is blocked while holding
+# pending X lock on t1.
+# Allow the above RENAME TABLE to acquire lock on t1 and
+# create pending lock on t2 thus creating deadlock.
+unlock tables;
+#
+# Switching to connection 'deadlock_con1'.
+# Since the latest RENAME TABLE entered in deadlock with SELECT
+# statement the latter should be aborted and emit ER_LOCK_DEADLOCK
+# error.
+# Reap SELECT * FROM t1.
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+#
+# Again let us check that failure of the SELECT statement has not
+# released metadata lock on table 't2', i.e. that the latest RENAME
+# is blocked.
+# Commit transaction to unblock this RENAME TABLE.
+commit;
+#
+# Switching to connection 'deadlock_con2'.
+# Reap RENAME TABLE ... .
+#
+# Switching to connection 'default'.
+drop tables t1, t2, t3, t4;
+#
+# Now, test case which shows that deadlock detection empiric
+# also takes into account requests for metadata lock upgrade.
+#
+create table t1 (i int);
+insert into t1 values (1);
+# Avoid race which occurs when SELECT in 'deadlock_con1' connection
+# accesses table before the above INSERT unlocks the table and thus
+# its result becomes visible to other connections.
+select * from t1;
+i
+1
+#
+# Switching to connection 'deadlock_con1'.
+begin;
+select * from t1;
+i
+1
+#
+# Switching to connection 'default'.
+# Send:
+alter table t1 add column j int, rename to t2;;
+#
+# Switching to connection 'deadlock_con1'.
+# Wait until the above ALTER TABLE ... RENAME acquires exclusive
+# metadata lock on 't2' and starts waiting for connection
+# 'deadlock_con1' which holds shared lock on 't1'.
+# The below statement should not wait as it will cause deadlock.
+# An appropriate error should be reported instead.
+select * from t2;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+# Again let us check that failure of the above statement has not
+# released all metadata locks in connection 'deadlock_con1' and
+# so ALTER TABLE ... RENAME is still blocked.
+# Commit transaction to unblock ALTER TABLE ... RENAME.
+commit;
+#
+# Switching to connection 'default'.
+# Reap ALTER TABLE ... RENAME.
+drop table t2;
+#
+# Test for bug #46748 "Assertion in MDL_context::wait_for_locks()
+# on INSERT + CREATE TRIGGER".
+#
+drop tables if exists t1, t2, t3, t4, t5;
+# Let us simulate scenario in which we open some tables from extended
+# part of prelocking set but then encounter conflicting metadata lock,
+# so have to back-off and wait for it to go away.
+create table t1 (i int);
+create table t2 (j int);
+create table t3 (k int);
+create table t4 (l int);
+create trigger t1_bi before insert on t1 for each row
+insert into t2 values (new.i);
+create trigger t2_bi before insert on t2 for each row
+insert into t3 values (new.j);
+#
+# Switching to connection 'con1root'.
+lock tables t4 read;
+#
+# Switching to connection 'con2root'.
+# Send :
+rename table t3 to t5, t4 to t3;;
+#
+# Switching to connection 'default'.
+# Wait until the above RENAME TABLE adds pending requests for exclusive
+# metadata lock on its tables and blocks due to 't4' being used by LOCK
+# TABLES.
+# Send :
+insert into t1 values (1);;
+#
+# Switching to connection 'con1root'.
+# Wait until INSERT statement waits due to encountering pending
+# exclusive metadata lock on 't3'.
+unlock tables;
+#
+# Switching to connection 'con2root'.
+# Reap RENAME TABLE.
+#
+# Switching to connection 'default'.
+# Reap INSERT.
+# Clean-up.
+drop tables t1, t2, t3, t5;
+#
+# Bug#42546 - Backup: RESTORE fails, thinking it finds an existing table
+#
+DROP TABLE IF EXISTS t1;
+set @save_log_output=@@global.log_output;
+set global log_output=file;
+#
+# Test 1: CREATE TABLE
+#
+# Connection 2
+# Start insert on the not-yet existing table
+# Wait after taking the MDL lock
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+INSERT INTO t1 VALUES(1,"def");
+# Connection 1
+SET DEBUG_SYNC= 'now WAIT_FOR locked';
+# Now INSERT has a MDL on the non-existent table t1.
+#
+# Continue the INSERT once CREATE waits for exclusive lock
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL finish';
+# Try to create that table.
+CREATE TABLE t1 (c1 INT, c2 VARCHAR(100), KEY(c1));
+# Connection 2
+# Insert fails
+ERROR 42S02: Table 'test.t1' doesn't exist
+# Connection 1
+SET DEBUG_SYNC= 'RESET';
+SHOW TABLES;
+Tables_in_test
+t1
+DROP TABLE IF EXISTS t1;
+#
+# Test 2: CREATE TABLE LIKE
+#
+CREATE TABLE t2 (c1 INT, c2 VARCHAR(100), KEY(c1));
+# Connection 2
+# Start insert on the not-yet existing table
+# Wait after taking the MDL
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+INSERT INTO t1 VALUES(1,"def");
+# Connection 1
+SET DEBUG_SYNC= 'now WAIT_FOR locked';
+# Now INSERT has a MDL on the non-existent table t1.
+#
+# Continue the INSERT once CREATE waits for exclusive lock
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL finish';
+# Try to create that table.
+CREATE TABLE t1 LIKE t2;
+# Connection 2
+# Insert fails
+ERROR 42S02: Table 'test.t1' doesn't exist
+# Connection 1
+SET DEBUG_SYNC= 'RESET';
+SHOW TABLES;
+Tables_in_test
+t1
+t2
+DROP TABLE t2;
+DROP TABLE IF EXISTS t1;
+set global log_output=@save_log_output;
+#
+# Bug #46044 "MDL deadlock on LOCK TABLE + CREATE TABLE HIGH_PRIORITY
+# FOR UPDATE"
+#
+drop tables if exists t1, t2;
+create table t1 (i int);
+# Let us check that we won't deadlock if during filling
+# of I_S table we encounter conflicting metadata lock
+# which owner is in its turn waiting for our connection.
+lock tables t1 read;
+# Switching to connection 'con46044'.
+# Sending:
+create table t2 select * from t1 for update;;
+# Switching to connection 'default'.
+# Waiting until CREATE TABLE ... SELECT ... is blocked.
+# First let us check that SHOW FIELDS/DESCRIBE doesn't
+# gets blocked and emits and error.
+show fields from t2;
+ERROR HY000: Table 'test'.'t2' was skipped since its definition is being modified by concurrent DDL statement
+# Now test for I_S query which reads only .FRMs.
+#
+# Query below should only emit a warning.
+select column_name from information_schema.columns
+where table_schema='test' and table_name='t2';
+column_name
+Warnings:
+Warning 1684 Table 'test'.'t2' was skipped since its definition is being modified by concurrent DDL statement
+# Finally, test for I_S query which does full-blown table open.
+#
+# Query below should not be blocked. Warning message should be
+# stored in the 'table_comment' column.
+select table_name, table_type, auto_increment, table_comment
+from information_schema.tables where table_schema='test' and table_name='t2';
+table_name table_type auto_increment table_comment
+t2 BASE TABLE NULL Table 'test'.'t2' was skipped since its definition is being modified by concurrent DDL statement
+# Switching to connection 'default'.
+unlock tables;
+# Switching to connection 'con46044'.
+# Reaping CREATE TABLE ... SELECT ... .
+drop table t2;
+#
+# Let us also check that queries to I_S wait for conflicting metadata
+# locks to go away instead of skipping table with a warning in cases
+# when deadlock is not possible. This is a nice thing from compatibility
+# and ease of use points of view.
+#
+# We check same three queries to I_S in this new situation.
+# Switching to connection 'con46044_2'.
+lock tables t1 read;
+# Switching to connection 'con46044'.
+# Sending:
+create table t2 select * from t1 for update;;
+# Switching to connection 'default'.
+# Waiting until CREATE TABLE ... SELECT ... is blocked.
+# Let us check that SHOW FIELDS/DESCRIBE gets blocked.
+# Sending:
+show fields from t2;;
+# Switching to connection 'con46044_2'.
+# Wait until SHOW FIELDS gets blocked.
+unlock tables;
+# Switching to connection 'con46044'.
+# Reaping CREATE TABLE ... SELECT ... .
+# Switching to connection 'default'.
+# Reaping SHOW FIELDS ...
+Field Type Null Key Default Extra
+i int(11) YES NULL
+drop table t2;
+# Switching to connection 'con46044_2'.
+lock tables t1 read;
+# Switching to connection 'con46044'.
+# Sending:
+create table t2 select * from t1 for update;;
+# Switching to connection 'default'.
+# Waiting until CREATE TABLE ... SELECT ... is blocked.
+# Check that I_S query which reads only .FRMs gets blocked.
+# Sending:
+select column_name from information_schema.columns where table_schema='test' and table_name='t2';;
+# Switching to connection 'con46044_2'.
+# Wait until SELECT COLUMN_NAME FROM I_S.COLUMNS gets blocked.
+unlock tables;
+# Switching to connection 'con46044'.
+# Reaping CREATE TABLE ... SELECT ... .
+# Switching to connection 'default'.
+# Reaping SELECT COLUMN_NAME FROM I_S.COLUMNS
+column_name
+i
+drop table t2;
+# Switching to connection 'con46044_2'.
+lock tables t1 read;
+# Switching to connection 'con46044'.
+# Sending:
+create table t2 select * from t1 for update;;
+# Switching to connection 'default'.
+# Waiting until CREATE TABLE ... SELECT ... is blocked.
+# Finally, check that I_S query which does full-blown table open
+# also gets blocked.
+# Sending:
+select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t2';;
+# Switching to connection 'con46044_2'.
+# Wait until SELECT ... FROM I_S.TABLES gets blocked.
+unlock tables;
+# Switching to connection 'con46044'.
+# Reaping CREATE TABLE ... SELECT ... .
+# Switching to connection 'default'.
+# Reaping SELECT ... FROM I_S.TABLES
+table_name table_type auto_increment table_comment
+t2 BASE TABLE NULL
+drop table t2;
+# Switching to connection 'default'.
+# Clean-up.
+drop table t1;
+#
+# Test for bug #46273 "MySQL 5.4.4 new MDL: Bug#989 is not fully fixed
+# in case of ALTER".
+#
+drop table if exists t1;
+set debug_sync= 'RESET';
+create table t1 (c1 int primary key, c2 int, c3 int);
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+begin;
+select * from t1 where c2 = 3;
+c1 c2 c3
+3 3 0
+#
+# Switching to connection 'con46273'.
+set debug_sync='after_lock_tables_takes_lock SIGNAL alter_table_locked WAIT_FOR alter_go';
+alter table t1 add column e int, rename to t2;;
+#
+# Switching to connection 'default'.
+set debug_sync='now WAIT_FOR alter_table_locked';
+set debug_sync='before_open_table_wait_refresh SIGNAL alter_go';
+# The below statement should get ER_LOCK_DEADLOCK error
+# (i.e. it should not allow ALTER to proceed, and then
+# fail due to 't1' changing its name to 't2').
+update t1 set c3=c3+1 where c2 = 3;
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+#
+# Let us check that failure of the above statement has not released
+# metadata lock on table 't1', i.e. that ALTER TABLE is still blocked.
+# Unblock ALTER TABLE by commiting transaction and thus releasing
+# metadata lock on 't1'.
+commit;
+#
+# Switching to connection 'con46273'.
+# Reap ALTER TABLE.
+#
+# Switching to connection 'default'.
+# Clean-up.
+set debug_sync= 'RESET';
+drop table t2;
+#
+# Test for bug #46673 "Deadlock between FLUSH TABLES WITH READ LOCK
+# and DML".
+#
+drop tables if exists t1;
+create table t1 (i int);
+# Switching to connection 'con46673'.
+begin;
+insert into t1 values (1);
+# Switching to connection 'default'.
+# Statement below should not get blocked. And if after some
+# changes to code it is there should not be a deadlock between
+# it and transaction from connection 'con46673'.
+flush tables with read lock;
+unlock tables;
+# Switching to connection 'con46673'.
+delete from t1 where i = 1;
+commit;
+# Switching to connection 'default'.
+# Clean-up
+drop table t1;
+#
+# Bug#48210 FLUSH TABLES WITH READ LOCK deadlocks
+# against concurrent CREATE PROCEDURE
+#
+# Test 1: CREATE PROCEDURE
+# Connection 1
+# Start CREATE PROCEDURE and open mysql.proc
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait';
+CREATE PROCEDURE p1() SELECT 1;
+# Connection 2
+SET DEBUG_SYNC= 'now WAIT_FOR table_opened';
+# Check that FLUSH must wait to get the GRL
+# and let CREATE PROCEDURE continue
+SET DEBUG_SYNC= 'wait_lock_global_read_lock SIGNAL grlwait';
+FLUSH TABLES WITH READ LOCK;
+# Connection 1
+# Connection 2
+UNLOCK TABLES;
+# Connection 1
+SET DEBUG_SYNC= 'RESET';
+# Test 2: DROP PROCEDURE
+# Start DROP PROCEDURE and open tables
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait';
+DROP PROCEDURE p1;
+# Connection 2
+SET DEBUG_SYNC= 'now WAIT_FOR table_opened';
+# Check that FLUSH must wait to get the GRL
+# and let DROP PROCEDURE continue
+SET DEBUG_SYNC= 'wait_lock_global_read_lock SIGNAL grlwait';
+FLUSH TABLES WITH READ LOCK;
+# Connection 1
+# Connection 2
+UNLOCK TABLES;
+# Connection 1
+SET DEBUG_SYNC= 'RESET';
+#
+# Bug#50786 Assertion `thd->mdl_context.trans_sentinel() == __null'
+# failed in open_ltable()
+#
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (i INT);
+CREATE TABLE t2 (i INT);
+SET @old_general_log= @@global.general_log;
+SET @@global.general_log= 1;
+SET @old_log_output= @@global.log_output;
+SET @@global.log_output= 'TABLE';
+SET @old_sql_log_off= @@session.sql_log_off;
+SET @@session.sql_log_off= 1;
+# connection: con1
+HANDLER t1 OPEN;
+# connection: con3
+SET @@session.sql_log_off= 1;
+# connection: con2
+SET DEBUG_SYNC= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+# Sending:
+SELECT 1;
+# connection: con3
+SET DEBUG_SYNC= 'now WAIT_FOR parked';
+# connection: con1
+# Sending:
+SELECT 1;
+# connection: con3
+# Sending:
+ALTER TABLE t1 ADD COLUMN j INT;
+# connection: default
+SET DEBUG_SYNC= 'now SIGNAL go';
+# connection: con1
+# Reaping SELECT 1
+1
+1
+HANDLER t1 CLOSE;
+# connection: con2
+# Reaping SELECT 1
+1
+1
+# connection: con3
+# Reaping ALTER TABLE t1 ADD COLUMN j INT
+# connection: default
+DROP TABLE t1, t2;
+SET DEBUG_SYNC= 'RESET';
+SET @@global.general_log= @old_general_log;
+SET @@global.log_output= @old_log_output;
+SET @@session.sql_log_off= @old_sql_log_off;
+#
+# Additional coverage for bug #50913 "Deadlock between
+# open_and_lock_tables_derived and MDL". The main test
+# case is in lock_multi.test
+#
+drop table if exists t1;
+set debug_sync= 'RESET';
+create table t1 (i int) engine=InnoDB;
+# Switching to connection 'con50913_1'.
+set debug_sync= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+# Sending:
+alter table t1 add column j int;
+# Switching to connection 'default'.
+# Wait until ALTER TABLE gets blocked on a sync point after
+# acquiring thr_lock.c lock.
+set debug_sync= 'now WAIT_FOR parked';
+# The below statement should wait on MDL lock and not deadlock on
+# thr_lock.c lock.
+# Sending:
+truncate table t1;
+# Switching to connection 'con50913_2'.
+# Wait until TRUNCATE TABLE is blocked on MDL lock.
+# Unblock ALTER TABLE.
+set debug_sync= 'now SIGNAL go';
+# Switching to connection 'con50913_1'.
+# Reaping ALTER TABLE.
+# Switching to connection 'default'.
+# Reaping TRUNCATE TABLE.
+set debug_sync= 'RESET';
+drop table t1;
+#
+# Test for bug #50998 "Deadlock in MDL code during test
+# rqg_mdl_stability".
+# Also provides coverage for the case when addition of
+# waiting statement adds several loops in the waiters
+# graph and therefore several searches for deadlock
+# should be performed.
+drop table if exists t1;
+set debug_sync= 'RESET';
+create table t1 (i int);
+# Switching to connection 'con1'.
+begin;
+select * from t1;
+i
+# Switching to connection 'con2'.
+begin;
+select * from t1;
+i
+# Switching to connection 'default'.
+# Start ALTER TABLE which will acquire SNW lock and
+# table lock and get blocked on sync point.
+set debug_sync= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+# Sending:
+alter table t1 add column j int;
+# Switching to connection 'con1'.
+# Wait until ALTER TABLE gets blocked on a sync point.
+set debug_sync= 'now WAIT_FOR parked';
+# Sending:
+insert into t1 values (1);
+# Switching to connection 'con2'.
+# Sending:
+insert into t1 values (1);
+# Switching to connection 'con3'.
+# Wait until both 'con1' and 'con2' are blocked trying to acquire
+# SW lock on the table.
+# Unblock ALTER TABLE. Since it will try to upgrade SNW to X lock
+# deadlock with two loops in waiting graph will occur. Both loops
+# should be found and DML statements in both 'con1' and 'con2'
+# should be aborted with ER_LOCK_DEADLOCK errors.
+set debug_sync= 'now SIGNAL go';
+# Switching to connection 'con1'.
+# Reaping INSERT. It should end with ER_LOCK_DEADLOCK error and
+# not wait indefinitely (as it happened before the bugfix).
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+commit;
+# Switching to connection 'con2'.
+# Reaping INSERT.
+ERROR 40001: Deadlock found when trying to get lock; try restarting transaction
+commit;
+# Switching to connection 'default'.
+# Reap ALTER TABLE.
+set debug_sync= 'RESET';
+drop table t1;
diff --git a/mysql-test/r/merge.result b/mysql-test/r/merge.result
index 83152a0dd8d..a77f3a75f16 100644
--- a/mysql-test/r/merge.result
+++ b/mysql-test/r/merge.result
@@ -578,23 +578,23 @@ select max(b) from t1 where a = 2;
max(b)
1
drop table t3,t1,t2;
-create table t1 (a int not null);
-create table t2 (a int not null);
-insert into t1 values (1);
-insert into t2 values (2);
-create temporary table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
-select * from t3;
+CREATE TABLE t1 (c1 INT NOT NULL);
+CREATE TABLE t2 (c1 INT NOT NULL);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+CREATE TEMPORARY TABLE t3 (c1 INT NOT NULL) ENGINE=MRG_MYISAM UNION=(t1,t2);
+SELECT * FROM t3;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
-create temporary table t4 (a int not null);
-create temporary table t5 (a int not null);
-insert into t4 values (1);
-insert into t5 values (2);
-create temporary table t6 (a int not null) ENGINE=MERGE UNION=(t4,t5);
-select * from t6;
-a
-1
-2
-drop table t6, t3, t1, t2, t4, t5;
+CREATE TEMPORARY TABLE t4 (c1 INT NOT NULL);
+CREATE TEMPORARY TABLE t5 (c1 INT NOT NULL);
+INSERT INTO t4 VALUES (4);
+INSERT INTO t5 VALUES (5);
+CREATE TEMPORARY TABLE t6 (c1 INT NOT NULL) ENGINE=MRG_MYISAM UNION=(t4,t5);
+SELECT * FROM t6;
+c1
+4
+5
+DROP TABLE t6, t3, t1, t2, t4, t5;
create temporary table t1 (a int not null);
create temporary table t2 (a int not null);
insert into t1 values (1);
@@ -753,10 +753,10 @@ a b c
1 1 1
1 1 0
show index from t3;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t3 1 a 1 a A NULL NULL NULL YES BTREE
-t3 1 a 2 b A NULL NULL NULL YES BTREE
-t3 1 a 3 c A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t3 1 a 1 a A NULL NULL NULL YES BTREE
+t3 1 a 2 b A NULL NULL NULL YES BTREE
+t3 1 a 3 c A NULL NULL NULL YES BTREE
drop table t1, t2, t3;
CREATE TABLE t1 ( a INT AUTO_INCREMENT PRIMARY KEY, b VARCHAR(10), UNIQUE (b) )
ENGINE=MyISAM;
@@ -1046,18 +1046,21 @@ c1
LOCK TABLE t1 WRITE, t2 WRITE, t3 WRITE;
INSERT INTO t1 VALUES (1);
TRUNCATE TABLE t3;
-ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3;
c1
-1
-2
+UNLOCK TABLES;
+SELECT * FROM t1;
+c1
+SELECT * FROM t2;
+c1
#
# Truncate child table under locked tables.
+LOCK TABLE t1 WRITE, t2 WRITE, t3 WRITE;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
TRUNCATE TABLE t1;
-ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3;
c1
-1
2
UNLOCK TABLES;
DROP TABLE t1, t2, t3;
@@ -1089,18 +1092,24 @@ INSERT INTO t1 VALUES (1);
CREATE TABLE t4 (c1 INT, INDEX(c1));
LOCK TABLE t4 WRITE;
TRUNCATE TABLE t3;
-ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3;
c1
-1
-2
+SELECT * FROM t1;
+c1
+SELECT * FROM t2;
+c1
#
# Truncate temporary child table under locked tables.
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
TRUNCATE TABLE t1;
-ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3;
c1
-1
+2
+SELECT * FROM t1;
+c1
+SELECT * FROM t2;
+c1
2
UNLOCK TABLES;
DROP TABLE t1, t2, t3, t4;
@@ -1149,7 +1158,8 @@ SHOW CREATE TABLE t3;
ERROR 42S02: Table 'test.t3' doesn't exist
DROP TABLE t1, t2;
#
-# CREATE ... LIKE
+# Bug#37371 "CREATE TABLE LIKE merge loses UNION parameter"
+# Demonstrate that this is no longer the case.
#
# 1. Create like.
CREATE TABLE t1 (c1 INT);
@@ -1164,26 +1174,26 @@ SHOW CREATE TABLE t4;
Table Create Table
t4 CREATE TABLE `t4` (
`c1` int(11) DEFAULT NULL
-) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
+) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`t1`,`t2`)
INSERT INTO t4 VALUES (4);
-ERROR HY000: Table 't4' is read only
DROP TABLE t4;
#
# 1. Create like with locked tables.
LOCK TABLES t3 WRITE, t2 WRITE, t1 WRITE;
CREATE TABLE t4 LIKE t3;
+ERROR HY000: Table 't4' was not locked with LOCK TABLES
SHOW CREATE TABLE t4;
ERROR HY000: Table 't4' was not locked with LOCK TABLES
INSERT INTO t4 VALUES (4);
ERROR HY000: Table 't4' was not locked with LOCK TABLES
-UNLOCK TABLES;
+CREATE TEMPORARY TABLE t4 LIKE t3;
SHOW CREATE TABLE t4;
-Table Create Table
-t4 CREATE TABLE `t4` (
- `c1` int(11) DEFAULT NULL
-) ENGINE=MRG_MyISAM DEFAULT CHARSET=latin1
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
INSERT INTO t4 VALUES (4);
-ERROR HY000: Table 't4' is read only
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+UNLOCK TABLES;
+INSERT INTO t4 VALUES (4);
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
DROP TABLE t4;
#
# Rename child.
@@ -1210,6 +1220,7 @@ c1
1
2
3
+4
RENAME TABLE t2 TO t5;
SELECT * FROM t3 ORDER BY c1;
ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
@@ -1219,6 +1230,7 @@ c1
1
2
3
+4
#
# 3. Normal rename with locked tables.
LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE;
@@ -1227,6 +1239,7 @@ c1
1
2
3
+4
RENAME TABLE t2 TO t5;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3 ORDER BY c1;
@@ -1234,6 +1247,7 @@ c1
1
2
3
+4
RENAME TABLE t5 TO t2;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3 ORDER BY c1;
@@ -1241,6 +1255,7 @@ c1
1
2
3
+4
UNLOCK TABLES;
#
# 4. Alter table rename.
@@ -1253,12 +1268,13 @@ c1
1
2
3
+4
#
# 5. Alter table rename with locked tables.
LOCK TABLES t1 WRITE, t2 WRITE, t3 WRITE;
ALTER TABLE t2 RENAME TO t5;
SELECT * FROM t3 ORDER BY c1;
-ERROR HY000: Table 't3' was not locked with LOCK TABLES
+ERROR HY000: Table 't2' was not locked with LOCK TABLES
ALTER TABLE t5 RENAME TO t2;
ERROR HY000: Table 't5' was not locked with LOCK TABLES
UNLOCK TABLES;
@@ -1268,6 +1284,7 @@ c1
1
2
3
+4
#
# Rename parent.
#
@@ -1278,6 +1295,7 @@ c1
1
2
3
+4
RENAME TABLE t3 TO t5;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3 ORDER BY c1;
@@ -1285,6 +1303,7 @@ c1
1
2
3
+4
RENAME TABLE t5 TO t3;
ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
SELECT * FROM t3 ORDER BY c1;
@@ -1292,6 +1311,7 @@ c1
1
2
3
+4
#
# 5. Alter table rename with locked tables.
ALTER TABLE t3 RENAME TO t5;
@@ -1306,6 +1326,7 @@ c1
1
2
3
+4
DROP TABLE t1, t2, t3;
#
# Drop locked tables.
@@ -1330,9 +1351,9 @@ LOCK TABLES t1 WRITE, t2 WRITE;
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
SELECT * FROM t2;
-ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
SELECT * FROM t1;
-ERROR 42S02: Table 'test.t1' doesn't exist
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
UNLOCK TABLES;
DROP TABLE t2;
#
@@ -2023,7 +2044,7 @@ CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=FIRST;
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_SCHEMA = 'test' and TABLE_NAME='tm1';
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT
-def test tm1 BASE TABLE NULL NULL NULL # # # # # # # # # # NULL # # Unable to open underlying table which is differently defined or of non-MyISAM ty
+def test tm1 BASE TABLE NULL NULL NULL # # # # # # # # # # NULL # # Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
DROP TABLE tm1;
CREATE TABLE t1(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
CREATE TABLE t2(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
@@ -2256,3 +2277,342 @@ deallocate prepare stmt;
#
drop table t_parent;
set @@global.table_definition_cache=@save_table_definition_cache;
+DROP DATABASE IF EXISTS mysql_test1;
+CREATE DATABASE mysql_test1;
+CREATE TABLE t1 ... DATA DIRECTORY=... INDEX DIRECTORY=...
+CREATE TABLE mysql_test1.t2 ... DATA DIRECTORY=... INDEX DIRECTORY=...
+CREATE TABLE m1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,mysql_test1.t2)
+INSERT_METHOD=LAST;
+INSERT INTO t1 VALUES (1);
+INSERT INTO mysql_test1.t2 VALUES (2);
+SELECT * FROM m1;
+c1
+1
+2
+DROP TABLE t1, mysql_test1.t2, m1;
+DROP DATABASE mysql_test1;
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c1 INT);
+INSERT INTO t1 (c1) VALUES (1);
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2) INSERT_METHOD=FIRST;
+CREATE TABLE t3 (c1 INT);
+INSERT INTO t3 (c1) VALUES (1);
+CREATE FUNCTION f1() RETURNS INT RETURN (SELECT MAX(c1) FROM t3);
+CREATE VIEW v1 AS SELECT foo.c1 c1, f1() c2, bar.c1 c3, f1() c4
+FROM tm1 foo, tm1 bar, t3;
+SELECT * FROM v1;
+c1 c2 c3 c4
+1 1 1 1
+DROP FUNCTION f1;
+DROP VIEW v1;
+DROP TABLE tm1, t1, t2, t3;
+CREATE TEMPORARY TABLE t1 (c1 INT);
+CREATE TEMPORARY TABLE t2 (c1 INT);
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2)
+INSERT_METHOD=FIRST;
+CREATE FUNCTION f1() RETURNS INT RETURN (SELECT MAX(c1) FROM tm1);
+INSERT INTO tm1 (c1) VALUES (1);
+SELECT f1() FROM (SELECT 1) AS c1;
+f1()
+1
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+CREATE TEMPORARY TABLE t1 (c1 INT);
+CREATE TEMPORARY TABLE t2 (c1 INT);
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2);
+INSERT INTO t1 (c1) VALUES (1);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+SELECT f1() FROM (SELECT 1 UNION SELECT 1) c1;
+f1()
+1
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2;
+CREATE TEMPORARY TABLE t1 (c1 INT);
+INSERT INTO t1 (c1) VALUES (1);
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1);
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+CREATE TEMPORARY TABLE t2 (c1 INT);
+ALTER TEMPORARY TABLE tm1 UNION=(t1,t2);
+INSERT INTO t2 (c1) VALUES (2);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+ERROR 0A000: ALTER VIEW is not allowed in stored procedures
+DROP TABLE tm1, t1;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+DROP TABLE tm1, t1;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+INSERT INTO tm1 VALUES (1);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+SELECT f1();
+f1()
+1
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+LOCK TABLE tm1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+UNLOCK TABLES;
+DROP TABLE tm1, t1;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+INSERT INTO tm1 VALUES (1);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+LOCK TABLE tm1 WRITE;
+SELECT f1();
+f1()
+1
+UNLOCK TABLES;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+CREATE TRIGGER t2_ai AFTER INSERT ON t2
+FOR EACH ROW INSERT INTO tm1 VALUES(11);
+LOCK TABLE t2 WRITE;
+INSERT INTO t2 VALUES (2);
+SELECT * FROM tm1;
+c1
+11
+SELECT * FROM t2;
+c1
+2
+UNLOCK TABLES;
+DROP TRIGGER t2_ai;
+DROP TABLE tm1, t1, t2;
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+DROP TABLE tm1, t1;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+INSERT INTO tm1 VALUES (1);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+SELECT f1();
+f1()
+1
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TABLE t9 (c1 INT) ENGINE=MyISAM;
+LOCK TABLE t9 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+UNLOCK TABLES;
+DROP TABLE tm1, t1, t9;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+INSERT INTO tm1 VALUES (1);
+RETURN (SELECT MAX(c1) FROM tm1);
+END|
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TABLE t9 (c1 INT) ENGINE=MyISAM;
+LOCK TABLE t9 WRITE;
+SELECT f1();
+f1()
+1
+UNLOCK TABLES;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t9;
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TRIGGER t2_ai AFTER INSERT ON t2
+FOR EACH ROW INSERT INTO tm1 VALUES(11);
+LOCK TABLE t2 WRITE;
+INSERT INTO t2 VALUES (2);
+SELECT * FROM tm1;
+c1
+11
+SELECT * FROM t2;
+c1
+2
+UNLOCK TABLES;
+DROP TRIGGER t2_ai;
+DROP TABLE tm1, t1, t2;
+#
+# Don't allow an update of a MERGE child in a trigger
+# if the table's already being modified by the main
+# statement.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TRIGGER tm1_ai AFTER INSERT ON tm1
+FOR EACH ROW INSERT INTO t1 VALUES(11);
+LOCK TABLE tm1 WRITE, t1 WRITE;
+INSERT INTO tm1 VALUES (1);
+ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
+SELECT * FROM tm1;
+c1
+1
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, tm1 WRITE;
+INSERT INTO tm1 VALUES (1);
+ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
+SELECT * FROM tm1;
+c1
+1
+1
+UNLOCK TABLES;
+DROP TRIGGER tm1_ai;
+DROP TABLE tm1, t1;
+#
+# Don't select MERGE child when trying to get a prelocked table.
+#
+# Due to a limitation demonstrated by the previous test
+# we can no longer use a write-locked prelocked table.
+# The test is kept for historical purposes.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+INSERT_METHOD=LAST;
+CREATE TRIGGER tm1_ai AFTER INSERT ON tm1
+FOR EACH ROW SELECT max(c1) FROM t1 INTO @var;
+LOCK TABLE tm1 WRITE, t1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, tm1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+c1
+1
+1
+UNLOCK TABLES;
+DROP TRIGGER tm1_ai;
+DROP TABLE tm1, t1;
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t3 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t4 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t5 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2,t3,t4,t5)
+INSERT_METHOD=LAST;
+CREATE TRIGGER t2_au AFTER UPDATE ON t2
+FOR EACH ROW SELECT MAX(c1) FROM t1 INTO @var;
+CREATE FUNCTION f1() RETURNS INT
+RETURN (SELECT MAX(c1) FROM t4);
+LOCK TABLE tm1 WRITE, t1 WRITE, t2 WRITE, t3 WRITE, t4 WRITE, t5 WRITE;
+INSERT INTO t1 VALUES(1);
+INSERT INTO t2 VALUES(2);
+INSERT INTO t3 VALUES(3);
+INSERT INTO t4 VALUES(4);
+INSERT INTO t5 VALUES(5);
+UPDATE t2, tm1 SET t2.c1=f1();
+FLUSH TABLES;
+FLUSH TABLES;
+UNLOCK TABLES;
+SELECT * FROM tm1;
+c1
+1
+4
+3
+4
+5
+DROP TRIGGER t2_au;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2, t3, t4, t5;
+#
+# Bug47098 assert in MDL_context::destroy on HANDLER
+# <damaged merge table> OPEN
+#
+# Test that merge tables are closed correctly when opened using
+# HANDLER ... OPEN.
+# The general case.
+DROP TABLE IF EXISTS t1, t2, t3;
+# Connection con1.
+CREATE TABLE t1 (c1 int);
+CREATE TABLE t2 (c1 int);
+CREATE TABLE t3 (c1 int) ENGINE = MERGE UNION (t1,t2);
+START TRANSACTION;
+HANDLER t3 OPEN;
+ERROR HY000: Table storage engine for 't3' doesn't have this option
+DROP TABLE t1, t2, t3;
+# Connection default.
+# Disconnecting con1, all mdl_tickets must have been released.
+# The bug-specific case.
+# Connection con1.
+CREATE TABLE t1 (c1 int);
+CREATE TABLE t2 (c1 int);
+CREATE TABLE t3 (c1 int) ENGINE = MERGE UNION (t1,t2);
+DROP TABLE t2;
+START TRANSACTION;
+HANDLER t3 OPEN;
+ERROR HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
+DROP TABLE t1, t3;
+# Connection default.
+# Disconnecting con1, all mdl_tickets must have been released.
+#
+# A test case for Bug#47648 main.merge fails sporadically
+#
+# Make sure we correctly maintain lex->query_tables_last_own.
+#
+create table t1 (c1 int not null);
+create table t2 (c1 int not null);
+create table t3 (c1 int not null);
+create function f1 () returns int return (select max(c1) from t3);
+create table t4 (c1 int not null) engine=merge union=(t1,t2) insert_method=last ;
+select * from t4 where c1 < f1();
+c1
+prepare stmt from "select * from t4 where c1 < f1()";
+execute stmt;
+c1
+execute stmt;
+c1
+execute stmt;
+c1
+drop function f1;
+execute stmt;
+ERROR 42000: FUNCTION test.f1 does not exist
+execute stmt;
+ERROR 42000: FUNCTION test.f1 does not exist
+drop table t4, t3, t2, t1;
+#
+# Bug#51240 ALTER TABLE of a locked MERGE table fails
+#
+DROP TABLE IF EXISTS m1, t1;
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE m1 (c1 INT) ENGINE=MRG_MyISAM UNION=(t1);
+LOCK TABLE m1 WRITE;
+ALTER TABLE m1 ADD INDEX (c1);
+UNLOCK TABLES;
+DROP TABLE m1, t1;
+End of 6.0 tests
diff --git a/mysql-test/r/merge_recover.result b/mysql-test/r/merge_recover.result
new file mode 100644
index 00000000000..871c12ca4c0
--- /dev/null
+++ b/mysql-test/r/merge_recover.result
@@ -0,0 +1,103 @@
+#
+# Test of MyISAM MRG tables with corrupted children.
+# Run with --myisam-recover=force option.
+#
+# Preparation: we need to make sure that the merge parent
+# is never left in the table cache when closed, since this may
+# have effect on merge children.
+# For that, we set the table cache to minimal size and populate it
+# in a concurrent connection.
+#
+# Switching to connection con1
+#
+#
+# Minimal values.
+#
+call mtr.add_suppression("Got an error from thread_id=.*ha_myisam.cc:");
+call mtr.add_suppression("MySQL thread id .*, query id .* localhost.*root Checking table");
+call mtr.add_suppression(" '\..test.t1'");
+set global table_open_cache=256;
+set global table_definition_cache=400;
+drop procedure if exists p_create;
+create procedure p_create()
+begin
+declare i int default 1;
+set @lock_table_stmt="lock table ";
+set @drop_table_stmt="drop table ";
+while i < @@global.table_definition_cache + 1 do
+set @table_name=concat("t_", i);
+set @opt_comma=if(i=1, "", ", ");
+set @lock_table_stmt=concat(@lock_table_stmt, @opt_comma,
+@table_name, " read");
+set @drop_table_stmt=concat(@drop_table_stmt, @opt_comma, @table_name);
+set @create_table_stmt=concat("create table if not exists ",
+@table_name, " (a int)");
+prepare stmt from @create_table_stmt;
+execute stmt;
+deallocate prepare stmt;
+set i= i+1;
+end while;
+end|
+call p_create();
+drop procedure p_create;
+#
+# Switching to connection 'default'
+#
+#
+# We have to disable the ps-protocol, to avoid
+# "Prepared statement needs to be re-prepared" errors
+# -- table def versions change all the time with full table cache.
+#
+drop table if exists t1, t1_mrg, t1_copy;
+#
+# Prepare a MERGE engine table, that refers to a corrupted
+# child.
+#
+create table t1 (a int, key(a)) engine=myisam;
+create table t1_mrg (a int) union (t1) engine=merge;
+#
+# Create a table with a corrupted index file:
+# save an old index file, insert more rows,
+# overwrite the new index file with the old one.
+#
+insert into t1 (a) values (1), (2), (3);
+flush table t1;
+insert into t1 (a) values (4), (5), (6);
+flush table t1;
+# check table is needed to mark the table as crashed.
+check table t1;
+Table Op Msg_type Msg_text
+test.t1 check warning Size of datafile is: 42 Should be: 21
+test.t1 check error Record-count is not ok; is 6 Should be: 3
+test.t1 check warning Found 6 key parts. Should be: 3
+test.t1 check error Corrupt
+#
+# At this point we have a merge table t1_mrg pointing to t1,
+# and t1 is corrupted, and will be auto-repaired at open.
+# Check that this doesn't lead to memory corruption.
+#
+select * from t1_mrg;
+a
+1
+2
+3
+4
+5
+6
+Warnings:
+Error 145 Table 't1' is marked as crashed and should be repaired
+Error 1194 Table 't1' is marked as crashed and should be repaired
+Error 1034 Number of rows changed from 3 to 6
+#
+# Cleanup
+#
+drop table t1, t1_mrg;
+#
+# Switching to connection con1
+#
+unlock tables;
+prepare stmt from @drop_table_stmt;
+execute stmt;
+deallocate prepare stmt;
+set @@global.table_definition_cache=default;
+set @@global.table_open_cache=default;
diff --git a/mysql-test/r/metadata.result b/mysql-test/r/metadata.result
index 58dd97ee9f3..5a200bb4783 100644
--- a/mysql-test/r/metadata.result
+++ b/mysql-test/r/metadata.result
@@ -126,7 +126,7 @@ renamed
1
select * from v3 where renamed=1 group by renamed;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
-def v3 v3 renamed renamed 8 12 0 Y 32896 0 63
+def v3 v3 renamed renamed 8 11 0 Y 32896 0 63
renamed
drop table t1;
drop view v1,v2,v3;
diff --git a/mysql-test/r/mix2_myisam.result b/mysql-test/r/mix2_myisam.result
index cabc4de8d21..944556bae21 100644
--- a/mysql-test/r/mix2_myisam.result
+++ b/mysql-test/r/mix2_myisam.result
@@ -169,10 +169,10 @@ optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id A # NULL NULL BTREE
-t1 1 parent_id 1 parent_id A # NULL NULL BTREE
-t1 1 level 1 level A # NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 id A # NULL NULL BTREE
+t1 1 parent_id 1 parent_id A # NULL NULL BTREE
+t1 1 level 1 level A # NULL NULL BTREE
drop table t1;
CREATE TABLE t1 (
gesuchnr int(11) DEFAULT '0' NOT NULL,
@@ -212,8 +212,8 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 skr 1 a A # NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 skr 1 a A # NULL NULL YES BTREE
drop table t1;
create table t1 (a int,b varchar(20),key(a)) engine=MyISAM;
insert into t1 values (1,""), (2,"testing");
@@ -257,13 +257,13 @@ drop table t1;
CREATE TABLE t1 (a int not null, b int not null,c int not null,
key(a),primary key(a,b), unique(c),key(a),unique(b)) ENGINE = MyISAM;
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A # NULL NULL BTREE
-t1 0 PRIMARY 2 b A # NULL NULL BTREE
-t1 0 c 1 c A # NULL NULL BTREE
-t1 0 b 1 b A # NULL NULL BTREE
-t1 1 a 1 a A # NULL NULL BTREE
-t1 1 a_2 1 a A # NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A # NULL NULL BTREE
+t1 0 PRIMARY 2 b A # NULL NULL BTREE
+t1 0 c 1 c A # NULL NULL BTREE
+t1 0 b 1 b A # NULL NULL BTREE
+t1 1 a 1 a A # NULL NULL BTREE
+t1 1 a_2 1 a A # NULL NULL BTREE
drop table t1;
create table t1 (col1 int not null, col2 char(4) not null, primary key(col1)) ENGINE = MEMORY;
alter table t1 engine=MyISAM;
@@ -635,8 +635,8 @@ optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A # NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A # NULL NULL BTREE
drop table t1;
create table t1 (i int, j int ) ENGINE=MyISAM;
insert into t1 values (1,2);
@@ -2063,6 +2063,7 @@ insert into t1(a) values (1),(2),(3);
commit;
set autocommit = 0;
update t1 set b = 5 where a = 2;
+commit;
create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
set autocommit = 0;
insert into t1(a) values (10),(20),(30),(40),(50),(60),(70),(80),(90),(100),
@@ -2105,6 +2106,7 @@ update t2 set b = b + 5 where a = 1;
update t3 set b = b + 5 where a = 1;
update t4 set b = b + 5 where a = 1;
insert into t5(a) values(20);
+commit;
set autocommit = 0;
insert into t1(a) values(7);
insert into t2(a) values(8);
diff --git a/mysql-test/r/multi_update.result b/mysql-test/r/multi_update.result
index 2513e94137f..aae7ee6d6e0 100644
--- a/mysql-test/r/multi_update.result
+++ b/mysql-test/r/multi_update.result
@@ -634,4 +634,15 @@ select count(*) from t3 /* must be 1 */;
count(*)
1
drop table t1, t2, t3;
+#
+# Bug#49534: multitable IGNORE update with sql_safe_updates error
+# causes debug assertion
+#
+CREATE TABLE t1( a INT, KEY( a ) );
+INSERT INTO t1 VALUES (1), (2), (3);
+SET SESSION sql_safe_updates = 1;
+# Must not cause failed assertion
+UPDATE IGNORE t1, t1 t1a SET t1.a = 1 WHERE t1a.a = 1;
+ERROR HY000: You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column
+DROP TABLE t1;
end of tests
diff --git a/mysql-test/r/myisam.result b/mysql-test/r/myisam.result
index fb053f32d43..df53b1d1480 100644
--- a/mysql-test/r/myisam.result
+++ b/mysql-test/r/myisam.result
@@ -38,16 +38,16 @@ optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
-t1 1 b 1 b A 1 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
+t1 1 b 1 b A 1 NULL NULL BTREE
optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize status Table is already up to date
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
-t1 1 b 1 b A 1 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
+t1 1 b 1 b A 1 NULL NULL BTREE
drop table t1;
create table t1 (a int not null, b int not null, c int not null, primary key (a),key(b)) engine=myisam;
insert into t1 values (3,3,3),(1,1,1),(2,2,2),(4,4,4);
@@ -336,13 +336,13 @@ optimize table t1;
Table Op Msg_type Msg_text
test.t1 optimize status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 b 1 b A 5 NULL NULL YES BTREE
-t1 1 c 1 c A 5 NULL NULL YES BTREE
-t1 1 a 1 a A 1 NULL NULL BTREE
-t1 1 a 2 b A 5 NULL NULL YES BTREE
-t1 1 c_2 1 c A 5 NULL NULL YES BTREE
-t1 1 c_2 2 a A 5 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 b 1 b A 5 NULL NULL YES BTREE
+t1 1 c 1 c A 5 NULL NULL YES BTREE
+t1 1 a 1 a A 1 NULL NULL BTREE
+t1 1 a 2 b A 5 NULL NULL YES BTREE
+t1 1 c_2 1 c A 5 NULL NULL YES BTREE
+t1 1 c_2 2 a A 5 NULL NULL BTREE
explain select * from t1,t2 where t1.a=t2.a;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE t2 ALL a NULL NULL NULL 2
@@ -575,29 +575,29 @@ Error 1146 Table 'test.t3' doesn't exist
drop table t1,t2;
create table t1 (a int, key (a));
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
alter table t1 disable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
create table t2 (a int);
set @@rand_seed1=31415926,@@rand_seed2=2718281828;
insert t1 select * from t2;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE disabled
alter table t1 enable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 1000 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 1000 NULL NULL YES BTREE
alter table t1 engine=heap;
alter table t1 disable keys;
Warnings:
Note 1031 Table storage engine for 't1' doesn't have this option
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a NULL 500 NULL NULL YES HASH
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a NULL 500 NULL NULL YES HASH
drop table t1,t2;
create table t1 ( a tinytext, b char(1), index idx (a(1),b) );
insert into t1 values (null,''), (null,'');
@@ -640,16 +640,16 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
insert into t1 values (11);
delete from t1 where a=11;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
set myisam_stats_method=nulls_equal;
show variables like 'myisam_stats_method';
Variable_name Value
@@ -660,16 +660,16 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
insert into t1 values (11);
delete from t1 where a=11;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
set myisam_stats_method=DEFAULT;
show variables like 'myisam_stats_method';
Variable_name Value
@@ -680,16 +680,16 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
insert into t1 values (11);
delete from t1 where a=11;
check table t1;
Table Op Msg_type Msg_text
test.t1 check status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
drop table t1;
set myisam_stats_method=nulls_ignored;
show variables like 'myisam_stats_method';
@@ -707,21 +707,21 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 2 NULL NULL YES BTREE
-t1 1 a 2 b A 4 NULL NULL YES BTREE
-t1 1 a 3 c A 4 NULL NULL YES BTREE
-t1 1 a 4 d A 4 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 2 NULL NULL YES BTREE
+t1 1 a 2 b A 4 NULL NULL YES BTREE
+t1 1 a 3 c A 4 NULL NULL YES BTREE
+t1 1 a 4 d A 4 NULL NULL YES BTREE
delete from t1;
analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 0 NULL NULL YES BTREE
-t1 1 a 2 b A 0 NULL NULL YES BTREE
-t1 1 a 3 c A 0 NULL NULL YES BTREE
-t1 1 a 4 d A 0 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 0 NULL NULL YES BTREE
+t1 1 a 2 b A 0 NULL NULL YES BTREE
+t1 1 a 3 c A 0 NULL NULL YES BTREE
+t1 1 a 4 d A 0 NULL NULL YES BTREE
set myisam_stats_method=DEFAULT;
drop table t1;
create table t1(
@@ -1738,13 +1738,13 @@ analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 8 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 8 NULL NULL YES BTREE
alter table t1 disable keys;
alter table t1 enable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 8 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 8 NULL NULL YES BTREE
drop table t1;
create table t1 (c1 int) engine=myisam pack_keys=0;
create table t2 (c1 int) engine=myisam pack_keys=1;
@@ -1870,6 +1870,19 @@ CHECKSUM TABLE t1 EXTENDED;
Table Checksum
test.t1 467455460
DROP TABLE t1;
+#
+# BUG#48438 - crash with error in unioned query against merge table and view...
+#
+SET GLOBAL table_open_cache=3;
+CREATE TABLE t1(a INT);
+SELECT 1 FROM t1 AS a1, t1 AS a2, t1 AS a3, t1 AS a4 FOR UPDATE;
+1
+SELECT TABLE_ROWS, DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES
+WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
+TABLE_ROWS DATA_LENGTH
+0 0
+DROP TABLE t1;
+SET GLOBAL table_open_cache=DEFAULT;
End of 5.0 tests
create table t1 (a int not null, key `a` (a) key_block_size=1024);
show create table t1;
@@ -2315,4 +2328,17 @@ CHECK TABLE t1;
Table Op Msg_type Msg_text
test.t1 check status OK
DROP TABLE t1;
+#
+# BUG#49628 - corrupt table after legal SQL, LONGTEXT column
+#
+CREATE TABLE t1(a INT, b LONGTEXT, UNIQUE(a));
+REPLACE INTO t1 VALUES
+(1, REPEAT('a', 129015)),(1, NULL),
+(2, NULL),(3, NULL),(4, NULL),(5, NULL),(6, NULL),(7, NULL),
+(1, REPEAT('b', 129016)),(1, NULL),
+(1, REPEAT('c', 129015)),(1, REPEAT('d', 129015));
+CHECK TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 check status OK
+DROP TABLE t1;
End of 5.1 tests
diff --git a/mysql-test/r/mysqlbinlog.result b/mysql-test/r/mysqlbinlog.result
index 097e51a78de..55e68e9f8f3 100644
--- a/mysql-test/r/mysqlbinlog.result
+++ b/mysql-test/r/mysqlbinlog.result
@@ -187,7 +187,7 @@ DELIMITER ;
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
---- --position --
+--- --start-position --
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
@@ -388,7 +388,7 @@ DELIMITER ;
ROLLBACK /* added by mysqlbinlog */;
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
---- --position --
+--- --start-position --
/*!40019 SET @@session.max_insert_delayed_threads=0*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
diff --git a/mysql-test/r/mysqlbinlog_row_innodb.result b/mysql-test/r/mysqlbinlog_row_innodb.result
index dd98a12a0de..00a3eb79b64 100644
--- a/mysql-test/r/mysqlbinlog_row_innodb.result
+++ b/mysql-test/r/mysqlbinlog_row_innodb.result
@@ -2405,10 +2405,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -2767,10 +2767,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -3020,10 +3020,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -3552,10 +3552,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
diff --git a/mysql-test/r/mysqlbinlog_row_myisam.result b/mysql-test/r/mysqlbinlog_row_myisam.result
index 87f9ab877e1..7b0112d0a91 100644
--- a/mysql-test/r/mysqlbinlog_row_myisam.result
+++ b/mysql-test/r/mysqlbinlog_row_myisam.result
@@ -2405,10 +2405,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -2773,10 +2773,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -3028,10 +3028,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
@@ -3568,10 +3568,10 @@ BEGIN
### @38='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
### @39='' /* STRING(3) meta=65027 nullable=1 is_null=0 */
### @40='' /* STRING(765) meta=57085 nullable=1 is_null=0 */
-### @41='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @41='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
### @42='' /* STRING(0) meta=65024 nullable=1 is_null=0 */
-### @43='\x00' /* STRING(2) meta=65026 nullable=1 is_null=0 */
-### @44='\x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00 \x00' /* STRING(510) meta=61182 nullable=1 is_null=0 */
+### @43='' /* STRING(2) meta=65026 nullable=1 is_null=0 */
+### @44='' /* STRING(510) meta=61182 nullable=1 is_null=0 */
### @45='' /* VARSTRING(0) meta=0 nullable=1 is_null=0 */
### @46='' /* VARSTRING(1) meta=1 nullable=1 is_null=0 */
### @47='' /* VARSTRING(255) meta=255 nullable=1 is_null=0 */
diff --git a/mysql-test/r/mysqld--help-notwin.result b/mysql-test/r/mysqld--help-notwin.result
index 7b2f4e670c8..64f8aa63a30 100644
--- a/mysql-test/r/mysqld--help-notwin.result
+++ b/mysql-test/r/mysqld--help-notwin.result
@@ -1,8 +1,8 @@
The following options may be given as the first argument:
---print-defaults Print the program argument list and exit
---no-defaults Don't read default options from any options file
---defaults-file=# Only read default options from the given file #
---defaults-extra-file=# Read this file after the global files are read
+--print-defaults Print the program argument list and exit.
+--no-defaults Don't read default options from any option file.
+--defaults-file=# Only read default options from the given file #.
+--defaults-extra-file=# Read this file after the global files are read.
--abort-slave-event-count=#
Option used by mysql-test for debugging and testing of
@@ -60,7 +60,7 @@ The following options may be given as the first argument:
NDBCLUSTER table
--binlog-ignore-db=name
Tells the master that updates to the given database
- should not be logged tothe binary log.
+ should not be logged to the binary log.
--binlog-row-event-max-size=#
The maximum size of a row-based binary log event in
bytes. Rows will be grouped into events smaller than this
@@ -90,19 +90,13 @@ The following options may be given as the first argument:
NEVER, AUTO, ALWAYS
--connect-timeout=# The number of seconds the mysqld server is waiting for a
connect packet before responding with 'Bad handshake'
- --console Write error output on screen; Don't remove the console
+ --console Write error output on screen; don't remove the console
window on windows.
--core-file Write core on errors.
-h, --datadir=name Path to the database root directory
--date-format=name The DATE format (ignored)
--datetime-format=name
The DATETIME format (ignored)
- -C, --default-character-set=name
- Set the default character set (deprecated option, use
- --character-set-server instead).
- --default-collation=name
- Set the default collation (deprecated option, use
- --collation-server instead).
--default-storage-engine=name
The default storage engine for new tables
--default-time-zone=name
@@ -111,10 +105,6 @@ The following options may be given as the first argument:
The default week format used by WEEK() functions
--delay-key-write[=name]
Type of DELAY_KEY_WRITE
- --delay-key-write-for-all-tables
- Don't flush key buffers between writes for any MyISAM
- table (Deprecated option, use --delay-key-write=all
- instead).
--delayed-insert-limit=#
After inserting delayed_insert_limit rows, the INSERT
DELAYED handler will check if there are any SELECT
@@ -134,7 +124,6 @@ The following options may be given as the first argument:
--div-precision-increment=#
Precision of the result of '/' operator will be increased
on that value
- --enable-locking Deprecated option, use --external-locking instead.
--engine-condition-pushdown
Push supported query conditions to the storage engine.
Deprecated, use --optimizer-switch instead.
@@ -143,7 +132,7 @@ The following options may be given as the first argument:
Enable the event scheduler. Possible values are ON, OFF,
and DISABLED (keep the event scheduler completely
deactivated, it cannot be activated run-time)
- -T, --exit-info[=#] Used for debugging; Use at your own risk!
+ -T, --exit-info[=#] Used for debugging. Use at your own risk.
--expire-logs-days=#
If non-zero, binary logs will be purged after
expire_logs_days days; possible purges happen at startup
@@ -168,7 +157,7 @@ The following options may be given as the first argument:
Number of best matches to use for query expansion
--ft-stopword-file=name
Use stopwords from this file instead of built-in list
- --gdb Set up signals usable for debugging
+ --gdb Set up signals usable for debugging.
--general-log Log connections and queries to a table or log file.
Defaults logging to a file hostname.log or a table
mysql.general_logif --log-output=TABLE is used
@@ -219,6 +208,9 @@ The following options may be given as the first argument:
the week.
--local-infile Enable LOAD DATA LOCAL INFILE
(Defaults to on; use --skip-local-infile to disable.)
+ --lock-wait-timeout=#
+ Timeout in seconds to wait for a lock before returning an
+ error.
-l, --log[=name] Log connections and queries to file (deprecated option,
use --general-log/--general-log-file instead).
--log-bin[=name] Log update queries in binary format. Optional (but
@@ -238,10 +230,6 @@ The following options may be given as the first argument:
can safely set this to TRUE
--log-error[=name] Error log file
--log-isam[=name] Log all MyISAM changes to file.
- -0, --log-long-format
- Log some extra information to update log. Please note
- that this option is deprecated; see --log-short-format
- option.
--log-output=name Syntax: log-output=value[,value...], where "value" could
be TABLE, FILE or NONE
--log-queries-not-using-indexes
@@ -266,11 +254,8 @@ The following options may be given as the first argument:
log if it is open.
--log-tc=name Path to transaction coordinator log (used for
transactions that affect more than one storage engine,
- when binary log is disabled)
+ when binary log is disabled).
--log-tc-size=# Size of transaction coordinator log.
- --log-update[=name] The update log is deprecated since version 5.0, is
- replaced by the binary log and this option justs turns on
- --log-bin instead.
-W, --log-warnings[=#]
Log some not critical warnings to the log file
--long-query-time=# Log all queries that have taken more than long_query_time
@@ -387,10 +372,11 @@ The following options may be given as the first argument:
--old-passwords Use old password encryption method (needed for 4.0 and
older clients)
--old-style-user-limits
- Enable old-style user limits (before 5.0.3 user resources
- were counted per each user+host vs. per account)
- --one-thread (deprecated): Only use one thread (for debugging under
- Linux). Use thread-handling=no-threads instead
+ Enable old-style user limits (before 5.0.3, user
+ resources were counted per each user+host vs. per
+ account).
+ --one-thread (Deprecated): Only use one thread (for debugging under
+ Linux). Use thread-handling=no-threads instead.
--open-files-limit=#
If this is not 0, then mysqld will use this value to
reserve file descriptors to use with setrlimit(). If this
@@ -411,8 +397,9 @@ The following options may be given as the first argument:
relation result in faster optimization, but may produce
very bad query plans. If set to 0, the system will
automatically pick a reasonable value; if set to 63, the
- optimizer will switch to the original find_best
- search(used for testing/comparison)
+ optimizer will switch to the original find_best search.
+ NOTE: The value 63 and its associated behaviour is
+ deprecated
--optimizer-switch=name
optimizer_switch=option=val[,option=val...], where option
is one of {index_merge, index_merge_union,
@@ -462,7 +449,7 @@ The following options may be given as the first argument:
(3306), whatever comes first
--port-open-timeout=#
Maximum time in seconds to wait for the port to become
- free. (Default: no wait)
+ free. (Default: No wait).
--preload-buffer-size=#
The size of the buffer that is allocated when preloading
indexes
@@ -497,9 +484,7 @@ The following options may be given as the first argument:
the SUPER privilege
--read-rnd-buffer-size=#
When reading rows in sorted order after a sort, the rows
- are read through this buffer to avoid a disk seeks. If
- not set, then it's set to the value of record_buffer
- --record-buffer=# Deprecated; use --read-buffer-size instead.
+ are read through this buffer to avoid a disk seeks
--relay-log=name The location and name to use for relay logs
--relay-log-index=name
The location and name to use for the file that keeps a
@@ -596,8 +581,6 @@ The following options may be given as the first argument:
--rpl-recovery-rank=#
Unused, will be removed
--safe-mode Skip some optimize stages (for testing).
- --safe-show-database
- Deprecated option; use GRANT SHOW DATABASES instead...
--safe-user-create Don't allow new user creation by the user who has no
write privileges to the mysql.user table.
--secure-auth Disallow authentication for accounts that have old
@@ -607,26 +590,20 @@ The following options may be given as the first argument:
files within specified directory
--server-id=# Uniquely identifies the server instance in the community
of replication partners
- -O, --set-variable=name
- Change the value of a variable. Please note that this
- option is deprecated;you can set variables directly with
- --variable-name=value.
--show-slave-auth-info
- Show user and password in SHOW SLAVE HOSTS on this master
+ Show user and password in SHOW SLAVE HOSTS on this
+ master.
--skip-grant-tables Start without grant tables. This gives all users FULL
- ACCESS to all tables!
+ ACCESS to all tables.
--skip-host-cache Don't cache host names.
- --skip-locking Deprecated option, use --skip-external-locking instead.
--skip-name-resolve Don't resolve hostnames. All hostnames are IP's or
'localhost'.
--skip-networking Don't allow connection with TCP/IP
- --skip-new Don't use new, possible wrong routines.
+ --skip-new Don't use new, possibly wrong routines.
--skip-show-database
Don't allow 'SHOW DATABASE' commands
--skip-slave-start If set, slave is not autostarted.
--skip-stack-trace Don't print a stack trace on failure.
- --skip-symlink Don't allow symlinking of tables. Deprecated option. Use
- --skip-symbolic-links instead.
--skip-thread-priority
Don't give threads different priorities. This option is
deprecated because it has no effect; the implied behavior
@@ -678,10 +655,6 @@ The following options may be given as the first argument:
--sporadic-binlog-dump-fail
Option used by mysql-test for debugging and testing of
replication.
- --sql-bin-update-same
- The update log is deprecated since version 5.0, is
- replaced by the binary log and this option does nothing
- anymore.
--sql-mode=name Syntax: sql-mode=mode[,mode[,mode...]]. See the manual
for the complete list of valid sql modes
-s, --symbolic-links
@@ -706,10 +679,6 @@ The following options may be given as the first argument:
--table-cache=# Deprecated; use --table-open-cache instead.
--table-definition-cache=#
The number of cached table definitions
- --table-lock-wait-timeout=#
- Timeout in seconds to wait for a table level lock before
- returning an error. Used only if the connection has
- active cursors
--table-open-cache=#
The number of cached open tables
--tc-heuristic-recover=name
@@ -745,15 +714,11 @@ The following options may be given as the first argument:
Prohibit update of a VIEW, which does not contain a key
of the underlying table and the query uses a LIMIT clause
(usually get from GUI tools)
- -s, --use-symbolic-links
- Enable symbolic link support. Deprecated option; use
- --symbolic-links instead.
-u, --user=name Run mysqld daemon as user.
- -v, --verbose Used with --help option for detailed help
+ -v, --verbose Used with --help option for detailed help.
-V, --version Output version information and exit.
--wait-timeout=# The number of seconds the server waits for activity on a
connection before closing it
- -W, --warnings[=#] Deprecated; use --log-warnings instead.
Variables (--variable-name=value)
abort-slave-event-count 0
@@ -781,8 +746,6 @@ connect-timeout 10
console FALSE
date-format %Y-%m-%d
datetime-format %Y-%m-%d %H:%i:%s
-default-character-set latin1
-default-collation latin1_swedish_ci
default-storage-engine MyISAM
default-time-zone (No default value)
default-week-format 0
@@ -792,7 +755,6 @@ delayed-insert-timeout 300
delayed-queue-size 1000
disconnect-slave-event-count 0
div-precision-increment 4
-enable-locking FALSE
engine-condition-pushdown TRUE
event-scheduler OFF
expire-logs-days 0
@@ -826,6 +788,7 @@ lc-messages en_US
lc-messages-dir MYSQL_SHAREDIR/
lc-time-names en_US
local-infile TRUE
+lock-wait-timeout 31536000
log-bin (No default value)
log-bin-index (No default value)
log-bin-trust-function-creators FALSE
@@ -839,7 +802,6 @@ log-slow-admin-statements FALSE
log-slow-slave-statements FALSE
log-tc tc.log
log-tc-size 24576
-log-update (No default value)
log-warnings 1
long-query-time 10
low-priority-updates FALSE
@@ -921,7 +883,6 @@ range-alloc-block-size 4096
read-buffer-size 131072
read-only FALSE
read-rnd-buffer-size 262144
-record-buffer 131072
relay-log (No default value)
relay-log-index (No default value)
relay-log-info-file relay-log.info
@@ -964,7 +925,6 @@ sync-relay-log-info 0
sysdate-is-now FALSE
table-cache 400
table-definition-cache 400
-table-lock-wait-timeout 50
table-open-cache 400
tc-heuristic-recover COMMIT
thread-cache-size 0
@@ -977,10 +937,8 @@ transaction-alloc-block-size 8192
transaction-isolation REPEATABLE-READ
transaction-prealloc-size 4096
updatable-views-with-limit YES
-use-symbolic-links FALSE
verbose TRUE
wait-timeout 28800
-warnings 1
To see what values a running MySQL server is using, type
'mysqladmin variables' instead of 'mysqld --verbose --help'.
diff --git a/mysql-test/r/mysqld--help-win.result b/mysql-test/r/mysqld--help-win.result
index d6236de2389..e51e0ed76b5 100644
--- a/mysql-test/r/mysqld--help-win.result
+++ b/mysql-test/r/mysqld--help-win.result
@@ -1,8 +1,8 @@
The following options may be given as the first argument:
---print-defaults Print the program argument list and exit
---no-defaults Don't read default options from any options file
---defaults-file=# Only read default options from the given file #
---defaults-extra-file=# Read this file after the global files are read
+--print-defaults Print the program argument list and exit.
+--no-defaults Don't read default options from any option file.
+--defaults-file=# Only read default options from the given file #.
+--defaults-extra-file=# Read this file after the global files are read.
--abort-slave-event-count=#
Option used by mysql-test for debugging and testing of
@@ -60,7 +60,7 @@ The following options may be given as the first argument:
NDBCLUSTER table
--binlog-ignore-db=name
Tells the master that updates to the given database
- should not be logged tothe binary log.
+ should not be logged to the binary log.
--binlog-row-event-max-size=#
The maximum size of a row-based binary log event in
bytes. Rows will be grouped into events smaller than this
@@ -90,19 +90,13 @@ The following options may be given as the first argument:
NEVER, AUTO, ALWAYS
--connect-timeout=# The number of seconds the mysqld server is waiting for a
connect packet before responding with 'Bad handshake'
- --console Write error output on screen; Don't remove the console
+ --console Write error output on screen; don't remove the console
window on windows.
--core-file Write core on errors.
-h, --datadir=name Path to the database root directory
--date-format=name The DATE format (ignored)
--datetime-format=name
The DATETIME format (ignored)
- -C, --default-character-set=name
- Set the default character set (deprecated option, use
- --character-set-server instead).
- --default-collation=name
- Set the default collation (deprecated option, use
- --collation-server instead).
--default-storage-engine=name
The default storage engine for new tables
--default-time-zone=name
@@ -111,10 +105,6 @@ The following options may be given as the first argument:
The default week format used by WEEK() functions
--delay-key-write[=name]
Type of DELAY_KEY_WRITE
- --delay-key-write-for-all-tables
- Don't flush key buffers between writes for any MyISAM
- table (Deprecated option, use --delay-key-write=all
- instead).
--delayed-insert-limit=#
After inserting delayed_insert_limit rows, the INSERT
DELAYED handler will check if there are any SELECT
@@ -134,7 +124,6 @@ The following options may be given as the first argument:
--div-precision-increment=#
Precision of the result of '/' operator will be increased
on that value
- --enable-locking Deprecated option, use --external-locking instead.
--engine-condition-pushdown
Push supported query conditions to the storage engine.
Deprecated, use --optimizer-switch instead.
@@ -143,7 +132,7 @@ The following options may be given as the first argument:
Enable the event scheduler. Possible values are ON, OFF,
and DISABLED (keep the event scheduler completely
deactivated, it cannot be activated run-time)
- -T, --exit-info[=#] Used for debugging; Use at your own risk!
+ -T, --exit-info[=#] Used for debugging. Use at your own risk.
--expire-logs-days=#
If non-zero, binary logs will be purged after
expire_logs_days days; possible purges happen at startup
@@ -168,7 +157,7 @@ The following options may be given as the first argument:
Number of best matches to use for query expansion
--ft-stopword-file=name
Use stopwords from this file instead of built-in list
- --gdb Set up signals usable for debugging
+ --gdb Set up signals usable for debugging.
--general-log Log connections and queries to a table or log file.
Defaults logging to a file hostname.log or a table
mysql.general_logif --log-output=TABLE is used
@@ -218,6 +207,9 @@ The following options may be given as the first argument:
the week.
--local-infile Enable LOAD DATA LOCAL INFILE
(Defaults to on; use --skip-local-infile to disable.)
+ --lock-wait-timeout=#
+ Timeout in seconds to wait for a lock before returning an
+ error.
-l, --log[=name] Log connections and queries to file (deprecated option,
use --general-log/--general-log-file instead).
--log-bin[=name] Log update queries in binary format. Optional (but
@@ -237,10 +229,6 @@ The following options may be given as the first argument:
can safely set this to TRUE
--log-error[=name] Error log file
--log-isam[=name] Log all MyISAM changes to file.
- -0, --log-long-format
- Log some extra information to update log. Please note
- that this option is deprecated; see --log-short-format
- option.
--log-output=name Syntax: log-output=value[,value...], where "value" could
be TABLE, FILE or NONE
--log-queries-not-using-indexes
@@ -265,11 +253,8 @@ The following options may be given as the first argument:
log if it is open.
--log-tc=name Path to transaction coordinator log (used for
transactions that affect more than one storage engine,
- when binary log is disabled)
+ when binary log is disabled).
--log-tc-size=# Size of transaction coordinator log.
- --log-update[=name] The update log is deprecated since version 5.0, is
- replaced by the binary log and this option justs turns on
- --log-bin instead.
-W, --log-warnings[=#]
Log some not critical warnings to the log file
--long-query-time=# Log all queries that have taken more than long_query_time
@@ -387,10 +372,11 @@ The following options may be given as the first argument:
--old-passwords Use old password encryption method (needed for 4.0 and
older clients)
--old-style-user-limits
- Enable old-style user limits (before 5.0.3 user resources
- were counted per each user+host vs. per account)
- --one-thread (deprecated): Only use one thread (for debugging under
- Linux). Use thread-handling=no-threads instead
+ Enable old-style user limits (before 5.0.3, user
+ resources were counted per each user+host vs. per
+ account).
+ --one-thread (Deprecated): Only use one thread (for debugging under
+ Linux). Use thread-handling=no-threads instead.
--open-files-limit=#
If this is not 0, then mysqld will use this value to
reserve file descriptors to use with setrlimit(). If this
@@ -411,8 +397,9 @@ The following options may be given as the first argument:
relation result in faster optimization, but may produce
very bad query plans. If set to 0, the system will
automatically pick a reasonable value; if set to 63, the
- optimizer will switch to the original find_best
- search(used for testing/comparison)
+ optimizer will switch to the original find_best search.
+ NOTE: The value 63 and its associated behaviour is
+ deprecated
--optimizer-switch=name
optimizer_switch=option=val[,option=val...], where option
is one of {index_merge, index_merge_union,
@@ -462,7 +449,7 @@ The following options may be given as the first argument:
(3306), whatever comes first
--port-open-timeout=#
Maximum time in seconds to wait for the port to become
- free. (Default: no wait)
+ free. (Default: No wait).
--preload-buffer-size=#
The size of the buffer that is allocated when preloading
indexes
@@ -497,9 +484,7 @@ The following options may be given as the first argument:
the SUPER privilege
--read-rnd-buffer-size=#
When reading rows in sorted order after a sort, the rows
- are read through this buffer to avoid a disk seeks. If
- not set, then it's set to the value of record_buffer
- --record-buffer=# Deprecated; use --read-buffer-size instead.
+ are read through this buffer to avoid a disk seeks
--relay-log=name The location and name to use for relay logs
--relay-log-index=name
The location and name to use for the file that keeps a
@@ -596,8 +581,6 @@ The following options may be given as the first argument:
--rpl-recovery-rank=#
Unused, will be removed
--safe-mode Skip some optimize stages (for testing).
- --safe-show-database
- Deprecated option; use GRANT SHOW DATABASES instead...
--safe-user-create Don't allow new user creation by the user who has no
write privileges to the mysql.user table.
--secure-auth Disallow authentication for accounts that have old
@@ -607,29 +590,23 @@ The following options may be given as the first argument:
files within specified directory
--server-id=# Uniquely identifies the server instance in the community
of replication partners
- -O, --set-variable=name
- Change the value of a variable. Please note that this
- option is deprecated;you can set variables directly with
- --variable-name=value.
--shared-memory Enable the shared memory
--shared-memory-base-name=name
Base name of shared memory
--show-slave-auth-info
- Show user and password in SHOW SLAVE HOSTS on this master
+ Show user and password in SHOW SLAVE HOSTS on this
+ master.
--skip-grant-tables Start without grant tables. This gives all users FULL
- ACCESS to all tables!
+ ACCESS to all tables.
--skip-host-cache Don't cache host names.
- --skip-locking Deprecated option, use --skip-external-locking instead.
--skip-name-resolve Don't resolve hostnames. All hostnames are IP's or
'localhost'.
--skip-networking Don't allow connection with TCP/IP
- --skip-new Don't use new, possible wrong routines.
+ --skip-new Don't use new, possibly wrong routines.
--skip-show-database
Don't allow 'SHOW DATABASE' commands
--skip-slave-start If set, slave is not autostarted.
--skip-stack-trace Don't print a stack trace on failure.
- --skip-symlink Don't allow symlinking of tables. Deprecated option. Use
- --skip-symbolic-links instead.
--skip-thread-priority
Don't give threads different priorities. This option is
deprecated because it has no effect; the implied behavior
@@ -681,10 +658,6 @@ The following options may be given as the first argument:
--sporadic-binlog-dump-fail
Option used by mysql-test for debugging and testing of
replication.
- --sql-bin-update-same
- The update log is deprecated since version 5.0, is
- replaced by the binary log and this option does nothing
- anymore.
--sql-mode=name Syntax: sql-mode=mode[,mode[,mode...]]. See the manual
for the complete list of valid sql modes
--standalone Dummy option to start as a standalone program (NT).
@@ -710,10 +683,6 @@ The following options may be given as the first argument:
--table-cache=# Deprecated; use --table-open-cache instead.
--table-definition-cache=#
The number of cached table definitions
- --table-lock-wait-timeout=#
- Timeout in seconds to wait for a table level lock before
- returning an error. Used only if the connection has
- active cursors
--table-open-cache=#
The number of cached open tables
--tc-heuristic-recover=name
@@ -749,15 +718,11 @@ The following options may be given as the first argument:
Prohibit update of a VIEW, which does not contain a key
of the underlying table and the query uses a LIMIT clause
(usually get from GUI tools)
- -s, --use-symbolic-links
- Enable symbolic link support. Deprecated option; use
- --symbolic-links instead.
-u, --user=name Run mysqld daemon as user.
- -v, --verbose Used with --help option for detailed help
+ -v, --verbose Used with --help option for detailed help.
-V, --version Output version information and exit.
--wait-timeout=# The number of seconds the server waits for activity on a
connection before closing it
- -W, --warnings[=#] Deprecated; use --log-warnings instead.
Variables (--variable-name=value)
abort-slave-event-count 0
@@ -785,8 +750,6 @@ connect-timeout 10
console FALSE
date-format %Y-%m-%d
datetime-format %Y-%m-%d %H:%i:%s
-default-character-set latin1
-default-collation latin1_swedish_ci
default-storage-engine MyISAM
default-time-zone (No default value)
default-week-format 0
@@ -796,7 +759,6 @@ delayed-insert-timeout 300
delayed-queue-size 1000
disconnect-slave-event-count 0
div-precision-increment 4
-enable-locking FALSE
engine-condition-pushdown TRUE
event-scheduler OFF
expire-logs-days 0
@@ -829,6 +791,7 @@ lc-messages en_US
lc-messages-dir MYSQL_SHAREDIR/
lc-time-names en_US
local-infile TRUE
+lock-wait-timeout 31536000
log-bin (No default value)
log-bin-index (No default value)
log-bin-trust-function-creators FALSE
@@ -842,7 +805,6 @@ log-slow-admin-statements FALSE
log-slow-slave-statements FALSE
log-tc tc.log
log-tc-size 24576
-log-update (No default value)
log-warnings 1
long-query-time 10
low-priority-updates FALSE
@@ -925,7 +887,6 @@ range-alloc-block-size 4096
read-buffer-size 131072
read-only FALSE
read-rnd-buffer-size 262144
-record-buffer 131072
relay-log (No default value)
relay-log-index (No default value)
relay-log-info-file relay-log.info
@@ -970,7 +931,6 @@ sync-relay-log-info 0
sysdate-is-now FALSE
table-cache 400
table-definition-cache 400
-table-lock-wait-timeout 50
table-open-cache 400
tc-heuristic-recover COMMIT
thread-cache-size 0
@@ -983,10 +943,8 @@ transaction-alloc-block-size 8192
transaction-isolation REPEATABLE-READ
transaction-prealloc-size 4096
updatable-views-with-limit YES
-use-symbolic-links FALSE
verbose TRUE
wait-timeout 28800
-warnings 1
To see what values a running MySQL server is using, type
'mysqladmin variables' instead of 'mysqld --verbose --help'.
diff --git a/mysql-test/r/mysqldump.result b/mysql-test/r/mysqldump.result
index 4724a111837..5bb0524e187 100644
--- a/mysql-test/r/mysqldump.result
+++ b/mysql-test/r/mysqldump.result
@@ -15,7 +15,7 @@ INSERT INTO t1 VALUES (1), (2);
<database name="test">
<table_structure name="t1">
<field Field="a" Type="int(11)" Null="YES" Key="MUL" Extra="" />
- <key Table="t1" Non_unique="1" Key_name="a" Seq_in_index="1" Column_name="a" Collation="A" Null="YES" Index_type="BTREE" Comment="" />
+ <key Table="t1" Non_unique="1" Key_name="a" Seq_in_index="1" Column_name="a" Collation="A" Null="YES" Index_type="BTREE" Comment="" Index_comment="" />
</table_structure>
<table_data name="t1">
<row>
@@ -3631,7 +3631,7 @@ CREATE TEMPORARY TABLE `TABLES` (
`TABLE_COLLATION` varchar(32) DEFAULT NULL,
`CHECKSUM` bigint(21) unsigned DEFAULT NULL,
`CREATE_OPTIONS` varchar(255) DEFAULT NULL,
- `TABLE_COMMENT` varchar(80) NOT NULL DEFAULT ''
+ `TABLE_COMMENT` varchar(2048) NOT NULL DEFAULT ''
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
#
diff --git a/mysql-test/r/mysqltest.result b/mysql-test/r/mysqltest.result
index 2e3a9489593..67c08b0ae97 100644
--- a/mysql-test/r/mysqltest.result
+++ b/mysql-test/r/mysqltest.result
@@ -147,9 +147,10 @@ hello
hello
;;;;;;;;
# MySQL: -- The
-mysqltest: At line 1: End of line junk detected: "6"
-mysqltest: At line 1: End of line junk detected: "6"
-mysqltest: At line 1: Missing delimiter
+mysqltest: At line 1: Extra argument '6' passed to 'sleep'
+mysqltest: At line 1: Extra argument '6' passed to 'sleep'
+mysqltest: At line 1: Extra argument 'A comment
+show status' passed to 'sleep'
mysqltest: At line 1: End of line junk detected: "sleep 7
# Another comment
"
@@ -216,6 +217,12 @@ source database
echo message echo message
mysqltest: At line 1: Missing argument in exec
+1
+1
+2
+2
+X
+3
MySQL
"MySQL"
MySQL: The
@@ -348,8 +355,10 @@ here is the sourced script
here is the sourced script
"hello"
"hello"
-mysqltest: At line 1: Missing argument to sleep
-mysqltest: At line 1: Missing argument to real_sleep
+mysqltest: At line 2: Invalid argument to sleep "xyz"
+mysqltest: At line 2: Invalid argument to real_sleep "xyz"
+mysqltest: At line 1: Missing required argument 'sleep_delay' to command 'sleep'
+mysqltest: At line 1: Missing required argument 'sleep_delay' to command 'real_sleep'
mysqltest: At line 1: Invalid argument to sleep "abc"
mysqltest: At line 1: Invalid argument to real_sleep "abc"
1
@@ -377,6 +386,10 @@ test
test2
test3
test4
+outer
+true-inner
+true-inner again
+true-outer
Counter is greater than 0, (counter=10)
Counter is not 0, (counter=0)
1
@@ -417,6 +430,9 @@ mysqltest: At line 1: Wrong number of arguments to replace_column in 'replace_co
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column a b'
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column a 1'
mysqltest: At line 1: Wrong column number to replace_column in 'replace_column 1 b c '
+select "LONG_STRING" as x;
+x
+LONG_STRING
mysqltest: At line 1: Invalid integer argument "10!"
mysqltest: At line 1: Invalid integer argument "a"
mysqltest: At line 1: Missing required argument 'connection name' to command 'connect'
@@ -523,7 +539,28 @@ a D
1 1
1 4
drop table t1;
+create table t1 ( f1 char(10));
+insert into t1 values ("Abcd");
+select * from t1;
+f1
+Abcd
+select * from t2;;
+ERROR 42S02: Table 'test.t2' doesn't exist
+select * from t1;
+f1
+Abcd
+select * from t1;;
+Result coming up
+f1
+Abcd
+select * from t1;;
+f1
+Abcd
+mysqltest: At line 2: Cannot run query on connection between send and reap
+select * from t1;;
+drop table t1;
mysqltest: At line 1: Missing required argument 'filename' to command 'remove_file'
+mysqltest: At line 1: Missing required argument 'directory' to command 'remove_files_wildcard'
mysqltest: At line 1: Missing required argument 'filename' to command 'write_file'
mysqltest: At line 1: End of file encountered before 'EOF' delimiter was found
Content for test_file1
@@ -553,6 +590,8 @@ hello
mysqltest: At line 1: Max delimiter length(16) exceeded
hello
hello
+val is 5
+val is 5
mysqltest: At line 1: test of die
Some output
create table t1( a int, b char(255), c timestamp);
@@ -680,6 +719,29 @@ INSERT INTO t1 SELECT f1 - 256 FROM t1;
INSERT INTO t1 SELECT f1 - 512 FROM t1;
SELECT * FROM t1;
DROP TABLE t1;
+select "500g blåbærsyltetøy" as "will be lower cased";
+will be lower cased
+500g blåbærsyltetøy
+SELECT "UPPER" AS "WILL NOT BE lower cased";
+WILL NOT BE lower cased
+UPPER
+UP
+SELECT 0 as "UP AGAIN";
+UP AGAIN
+0
+select "abcdef" as "uvwxyz";
+uvwxyz
+abcdef
+select "xyz" as name union select "abc" as name order by name desc;
+name
+abc
+xyz
+select 1 as "some new text";
+some new text
+1
+select 0 as "will not lower case ÄËÐ";
+will not lower case ÄËÐ
+0
CREATE TABLE t1(
a int, b varchar(255), c datetime
);
@@ -726,6 +788,8 @@ mysqltest: At line 1: change user failed: Access denied for user 'root'@'localho
file1.txt
file1.txt
file2.txt
+file11.txt
+dir-list.txt
SELECT 'c:\\a.txt' AS col;
col
z
diff --git a/mysql-test/r/named_pipe.result b/mysql-test/r/named_pipe.result
index 32e96fa27b7..86d549da07b 100644
--- a/mysql-test/r/named_pipe.result
+++ b/mysql-test/r/named_pipe.result
@@ -2084,10 +2084,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/no_binlog.result b/mysql-test/r/no_binlog.result
new file mode 100644
index 00000000000..6ae267664fd
--- /dev/null
+++ b/mysql-test/r/no_binlog.result
@@ -0,0 +1,2 @@
+SHOW BINARY LOGS;
+ERROR HY000: You are not using binary logging
diff --git a/mysql-test/r/not_embedded_server.result b/mysql-test/r/not_embedded_server.result
index 60c92bd0196..fac38624695 100644
--- a/mysql-test/r/not_embedded_server.result
+++ b/mysql-test/r/not_embedded_server.result
@@ -1,6 +1,16 @@
-select 1;
-1
-1
+call mtr.add_suppression("Can't open and lock privilege tables: Table 'host' was not locked with LOCK TABLES");
SHOW VARIABLES like 'slave_skip_errors';
Variable_name Value
slave_skip_errors OFF
+#
+# WL#4284: Transactional DDL locking
+#
+# FLUSH PRIVILEGES should not implicitly unlock locked tables.
+#
+drop table if exists t1;
+create table t1 (c1 int);
+lock tables t1 read;
+flush privileges;
+ERROR HY000: Table 'host' was not locked with LOCK TABLES
+unlock tables;
+drop table t1;
diff --git a/mysql-test/r/partition.result b/mysql-test/r/partition.result
index b72cc607fe2..9aa2dd418f8 100644
--- a/mysql-test/r/partition.result
+++ b/mysql-test/r/partition.result
@@ -69,14 +69,23 @@ partition by list (a)
partition p1 values in (2));
insert into t1 values (1,1),(2,1),(2,2),(2,3);
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A NULL NULL NULL YES BTREE
analyze table t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 1 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 1 NULL NULL YES BTREE
+drop table t1;
+create table t1 (a int)
+partition by hash (a);
+create index i on t1 (a);
+insert into t1 values (1);
+insert into t1 select * from t1;
+create index i on t1 (a);
+ERROR 42000: Duplicate key name 'i'
+create index i2 on t1 (a);
drop table t1;
CREATE TABLE t1 (a INT, FOREIGN KEY (a) REFERENCES t0 (a))
ENGINE=MyISAM
diff --git a/mysql-test/r/partition_column_prune.result b/mysql-test/r/partition_column_prune.result
index 82c49453d43..844429d24a6 100644
--- a/mysql-test/r/partition_column_prune.result
+++ b/mysql-test/r/partition_column_prune.result
@@ -56,11 +56,11 @@ insert into t1 values (2,5), (2,15), (2,25),
insert into t1 select * from t1;
explain partitions select * from t1 where a=2;
id select_type table partitions type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 p01,p02,p03,p11 ALL NULL NULL NULL NULL 13 Using where
+1 SIMPLE t1 p01,p02,p03,p11 ALL NULL NULL NULL NULL 8 Using where
explain partitions select * from t1 where a=4;
id select_type table partitions type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 p11,p12,p13,p21 ALL NULL NULL NULL NULL 16 Using where
+1 SIMPLE t1 p11,p12,p13,p21 ALL NULL NULL NULL NULL 14 Using where
explain partitions select * from t1 where a=2 and b < 22;
id select_type table partitions type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 p01,p02,p03 ALL NULL NULL NULL NULL 16 Using where
+1 SIMPLE t1 p01,p02,p03 ALL NULL NULL NULL NULL 14 Using where
drop table t1;
diff --git a/mysql-test/r/partition_debug_sync.result b/mysql-test/r/partition_debug_sync.result
new file mode 100644
index 00000000000..5ab1044934b
--- /dev/null
+++ b/mysql-test/r/partition_debug_sync.result
@@ -0,0 +1,65 @@
+DROP TABLE IF EXISTS t1, t2;
+SET DEBUG_SYNC= 'RESET';
+#
+# Bug#42438: Crash ha_partition::change_table_ptr
+# Test when remove partitioning is done while drop table is waiting
+# for the table.
+# After MDL was introduced, there is no longer any race, so test is done
+# by adding a small sleep to verify that the delete waits.
+# Con 1
+SET DEBUG_SYNC= 'RESET';
+CREATE TABLE t1
+(a INTEGER,
+b INTEGER NOT NULL,
+KEY (b))
+ENGINE = MYISAM
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (2),
+PARTITION p1 VALUES LESS THAN (20),
+PARTITION p2 VALUES LESS THAN (100),
+PARTITION p3 VALUES LESS THAN MAXVALUE ) */;
+SET SESSION debug= "+d,sleep_before_create_table_no_lock";
+SET DEBUG_SYNC= 'alter_table_before_create_table_no_lock SIGNAL removing_partitioning WAIT_FOR waiting_for_alter';
+SET DEBUG_SYNC= 'alter_table_before_main_binlog SIGNAL partitioning_removed';
+ALTER TABLE t1 REMOVE PARTITIONING;
+# Con default
+SET DEBUG_SYNC= 'now WAIT_FOR removing_partitioning';
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL waiting_for_alter';
+SET DEBUG_SYNC= 'rm_table_part2_before_delete_table WAIT_FOR partitioning_removed';
+DROP TABLE IF EXISTS t1;
+# Con 1
+SET SESSION debug= "-d,sleep_before_create_table_no_lock";
+SET DEBUG_SYNC= 'RESET';
+SET DEBUG_SYNC= 'RESET';
+#
+# Bug#42438: Crash ha_partition::change_table_ptr
+# Test when remove partitioning is failing due to drop table is already
+# in progress.
+# After MDL was introduced, there is no longer any race, so test is done
+# by adding a small sleep to verify that the alter waits.
+CREATE TABLE t2
+(a INTEGER,
+b INTEGER NOT NULL,
+KEY (b))
+ENGINE = MYISAM
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (2),
+PARTITION p1 VALUES LESS THAN (20),
+PARTITION p2 VALUES LESS THAN (100),
+PARTITION p3 VALUES LESS THAN MAXVALUE ) */;
+SET DEBUG_SYNC= 'open_tables_acquire_upgradable_mdl SIGNAL removing_partitions WAIT_FOR waiting_for_alter';
+SET DEBUG_SYNC= 'alter_table_before_rename_result_table WAIT_FOR delete_done';
+ALTER TABLE t2 REMOVE PARTITIONING;
+# Con default
+SET SESSION debug= "+d,sleep_before_part2_delete_table";
+SET DEBUG_SYNC= 'now WAIT_FOR removing_partitions';
+SET DEBUG_SYNC= 'rm_table_part2_before_delete_table SIGNAL waiting_for_alter';
+SET DEBUG_SYNC= 'rm_table_part2_before_binlog SIGNAL delete_done';
+DROP TABLE IF EXISTS t2;
+SET SESSION debug= "-d,sleep_before_part2_delete_table";
+# Con 1
+ERROR 42S02: Table 'test.t2' doesn't exist
+SET DEBUG_SYNC= 'RESET';
+# Con default
+SET DEBUG_SYNC= 'RESET';
+End of 5.1 tests
diff --git a/mysql-test/r/partition_innodb.result b/mysql-test/r/partition_innodb.result
index 186082c435f..d7145fcc604 100644
--- a/mysql-test/r/partition_innodb.result
+++ b/mysql-test/r/partition_innodb.result
@@ -304,47 +304,3 @@ CREATE TABLE t1 (a INT) ENGINE=InnoDB
PARTITION BY list(a) (PARTITION p1 VALUES IN (1));
CREATE INDEX i1 ON t1 (a);
DROP TABLE t1;
-#
-# Bug#47343: InnoDB fails to clean-up after lock wait timeout on
-# REORGANIZE PARTITION
-#
-CREATE TABLE t1 (
-a INT,
-b DATE NOT NULL,
-PRIMARY KEY (a, b)
-) ENGINE=InnoDB
-PARTITION BY RANGE (a) (
-PARTITION pMAX VALUES LESS THAN MAXVALUE
-) ;
-INSERT INTO t1 VALUES (1, '2001-01-01'), (2, '2002-02-02'), (3, '2003-03-03');
-START TRANSACTION;
-SELECT * FROM t1 FOR UPDATE;
-a b
-1 2001-01-01
-2 2002-02-02
-3 2003-03-03
-# Connection con1
-ALTER TABLE t1 REORGANIZE PARTITION pMAX INTO
-(PARTITION p3 VALUES LESS THAN (3),
-PARTITION pMAX VALUES LESS THAN MAXVALUE);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-SHOW WARNINGS;
-Level Code Message
-Error 1205 Lock wait timeout exceeded; try restarting transaction
-ALTER TABLE t1 REORGANIZE PARTITION pMAX INTO
-(PARTITION p3 VALUES LESS THAN (3),
-PARTITION pMAX VALUES LESS THAN MAXVALUE);
-ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-SHOW WARNINGS;
-Level Code Message
-Error 1205 Lock wait timeout exceeded; try restarting transaction
-t1.frm
-t1.par
-# Connection default
-SELECT * FROM t1;
-a b
-1 2001-01-01
-2 2002-02-02
-3 2003-03-03
-COMMIT;
-DROP TABLE t1;
diff --git a/mysql-test/r/partition_innodb_semi_consistent.result b/mysql-test/r/partition_innodb_semi_consistent.result
index 471da4c1c2e..48a1bb3d258 100644
--- a/mysql-test/r/partition_innodb_semi_consistent.result
+++ b/mysql-test/r/partition_innodb_semi_consistent.result
@@ -102,7 +102,7 @@ a b
# Switch to connection con1
# 3. test for updated key column:
TRUNCATE t1;
-TRUNCATE t2;
+DELETE FROM t2;
INSERT INTO t1 VALUES (1,'init');
BEGIN;
UPDATE t1 SET a = 2, b = CONCAT(b, '+con1') WHERE a = 1;
diff --git a/mysql-test/r/partition_pruning.result b/mysql-test/r/partition_pruning.result
index bd81e2b5d4f..ba18f7b9685 100644
--- a/mysql-test/r/partition_pruning.result
+++ b/mysql-test/r/partition_pruning.result
@@ -2570,7 +2570,7 @@ id select_type table partitions type possible_keys key key_len ref rows Extra
explain partitions
select * from t1 X, t1 Y where X.a = Y.a and (X.a=1 or X.a=2);
id select_type table partitions type possible_keys key key_len ref rows Extra
-1 SIMPLE X p1,p2 ALL a NULL NULL NULL 4 Using where
+1 SIMPLE X p1,p2 ALL a NULL NULL NULL 2 Using where
1 SIMPLE Y p1,p2 ref a a 4 test.X.a 2
drop table t1;
create table t1 (a int) partition by hash(a) partitions 20;
diff --git a/mysql-test/r/partition_sync.result b/mysql-test/r/partition_sync.result
index 31cf0569464..d48362cb57c 100644
--- a/mysql-test/r/partition_sync.result
+++ b/mysql-test/r/partition_sync.result
@@ -23,3 +23,35 @@ a
1
# Connection 1
DROP TABLE t1;
+#
+# Bug #46654 False deadlock on concurrent DML/DDL
+# with partitions, inconsistent behavior
+#
+DROP TABLE IF EXISTS tbl_with_partitions;
+CREATE TABLE tbl_with_partitions ( i INT )
+PARTITION BY HASH(i);
+INSERT INTO tbl_with_partitions VALUES (1);
+# Connection 3
+LOCK TABLE tbl_with_partitions READ;
+# Connection 1
+# Access table with disabled autocommit
+SET AUTOCOMMIT = 0;
+SELECT * FROM tbl_with_partitions;
+i
+1
+# Connection 2
+# Alter table, abort after prepare
+set session debug="+d,abort_copy_table";
+ALTER TABLE tbl_with_partitions ADD COLUMN f INT;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+# Connection 1
+# Try accessing the table after Alter aborted.
+# This used to give ER_LOCK_DEADLOCK.
+SELECT * FROM tbl_with_partitions;
+i
+1
+# Connection 3
+UNLOCK TABLES;
+# Connection 1
+# Cleanup
+DROP TABLE tbl_with_partitions;
diff --git a/mysql-test/r/perror-win.result b/mysql-test/r/perror-win.result
index 1d42235cc14..139b566757f 100644
--- a/mysql-test/r/perror-win.result
+++ b/mysql-test/r/perror-win.result
@@ -2,5 +2,6 @@ MySQL error code 150: Foreign key constraint is incorrectly formed
Win32 error code 150: System trace information was not specified in your CONFIG.SYS file, or tracing is disallowed.
OS error code 23: Too many open files in system
Win32 error code 23: Data error (cyclic redundancy check).
+MySQL error code 1062 (ER_DUP_ENTRY): Duplicate entry '%-.192s' for key %d
Win32 error code 1062: The service has not been started.
Illegal error code: 30000
diff --git a/mysql-test/r/perror.result b/mysql-test/r/perror.result
index 4946523bc42..74842b77ba1 100644
--- a/mysql-test/r/perror.result
+++ b/mysql-test/r/perror.result
@@ -1 +1,6 @@
Illegal error code: 10000
+MySQL error code 1062 (ER_DUP_ENTRY): Duplicate entry '%-.192s' for key %d
+MySQL error code 1076 (ER_READY): %s: ready for connections.
+Version: '%s' socket: '%s' port: %d
+MySQL error code 1459 (ER_TABLE_NEEDS_UPGRADE): Table upgrade required. Please do "REPAIR TABLE `%-.32s`" or dump/reload to fix it!
+MySQL error code 1461 (ER_MAX_PREPARED_STMT_COUNT_REACHED): Can't create more than max_prepared_stmt_count statements (current value: %lu)
diff --git a/mysql-test/r/ps.result b/mysql-test/r/ps.result
index c9628e43ddd..d7b2fa5820a 100644
--- a/mysql-test/r/ps.result
+++ b/mysql-test/r/ps.result
@@ -3152,5 +3152,29 @@ DROP PROCEDURE p1;
DROP PROCEDURE p2;
# End of WL#4435.
-
-End of 6.0 tests.
+#
+# WL#4284: Transactional DDL locking
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a INT);
+BEGIN;
+SELECT * FROM t1;
+a
+# Test that preparing a CREATE TABLE does not take a exclusive metdata lock.
+PREPARE stmt1 FROM "CREATE TABLE t1 AS SELECT 1";
+EXECUTE stmt1;
+ERROR 42S01: Table 't1' already exists
+DEALLOCATE PREPARE stmt1;
+DROP TABLE t1;
+#
+# WL#4284: Transactional DDL locking
+#
+# Test that metadata locks taken during prepare are released.
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 (a INT);
+BEGIN;
+PREPARE stmt1 FROM "SELECT * FROM t1";
+DROP TABLE t1;
+#
+# End of 6.0 tests.
diff --git a/mysql-test/r/ps_1general.result b/mysql-test/r/ps_1general.result
index 4f6e5238c3f..ae7185fe0f0 100644
--- a/mysql-test/r/ps_1general.result
+++ b/mysql-test/r/ps_1general.result
@@ -290,9 +290,9 @@ a int(11) NO PRI NULL
create index t2_idx on t2(b);
prepare stmt4 from ' show index from t2 from test ';
execute stmt4;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 a A 0 NULL NULL BTREE
-t2 1 t2_idx 1 b A NULL NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 a A 0 NULL NULL BTREE
+t2 1 t2_idx 1 b A NULL NULL NULL YES BTREE
prepare stmt4 from ' show table status from test like ''t2%'' ';
execute stmt4;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
diff --git a/mysql-test/r/ps_2myisam.result b/mysql-test/r/ps_2myisam.result
index 4f9444c1542..1eaa2e0d256 100644
--- a/mysql-test/r/ps_2myisam.result
+++ b/mysql-test/r/ps_2myisam.result
@@ -1788,11 +1788,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -1818,11 +1818,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -1929,10 +1929,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1976,10 +1976,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2026,10 +2026,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2066,10 +2066,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2114,10 +2114,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2158,10 +2158,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2204,10 +2204,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2242,10 +2242,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
diff --git a/mysql-test/r/ps_3innodb.result b/mysql-test/r/ps_3innodb.result
index 772a7462342..06e232fd9b0 100644
--- a/mysql-test/r/ps_3innodb.result
+++ b/mysql-test/r/ps_3innodb.result
@@ -1771,11 +1771,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -1801,11 +1801,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -1912,10 +1912,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1959,10 +1959,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2009,10 +2009,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2049,10 +2049,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2097,10 +2097,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2141,10 +2141,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2187,10 +2187,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2225,10 +2225,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
diff --git a/mysql-test/r/ps_4heap.result b/mysql-test/r/ps_4heap.result
index 84bf7a6fa00..1458f7d4514 100644
--- a/mysql-test/r/ps_4heap.result
+++ b/mysql-test/r/ps_4heap.result
@@ -1772,11 +1772,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -1802,11 +1802,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -1913,10 +1913,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1960,10 +1960,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2010,10 +2010,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2050,10 +2050,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2098,10 +2098,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2142,10 +2142,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2188,10 +2188,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2226,10 +2226,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
diff --git a/mysql-test/r/ps_5merge.result b/mysql-test/r/ps_5merge.result
index 61d2822fd5b..ad750cccd52 100644
--- a/mysql-test/r/ps_5merge.result
+++ b/mysql-test/r/ps_5merge.result
@@ -1708,11 +1708,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -1738,11 +1738,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -1849,10 +1849,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1896,10 +1896,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -1946,10 +1946,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1986,10 +1986,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2034,10 +2034,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2078,10 +2078,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2124,10 +2124,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2162,10 +2162,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -4730,11 +4730,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -4760,11 +4760,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -4871,10 +4871,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -4918,10 +4918,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -4968,10 +4968,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -5008,10 +5008,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -5056,10 +5056,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -5100,10 +5100,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -5146,10 +5146,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -5184,10 +5184,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
diff --git a/mysql-test/r/ps_ddl.result b/mysql-test/r/ps_ddl.result
index 375f31ef9c4..9752c5160a6 100644
--- a/mysql-test/r/ps_ddl.result
+++ b/mysql-test/r/ps_ddl.result
@@ -269,8 +269,6 @@ Part 7: TABLE -> TABLE (TRIGGER dependencies) transitions
=====================================================================
# Test 7-a: dependent PROCEDURE has changed
#
-# Note, this scenario is not supported, subject of Bug#12093
-#
create table t1 (a int);
create trigger t1_ai after insert on t1 for each row
call p1(new.a);
@@ -282,10 +280,9 @@ drop procedure p1;
create procedure p1 (a int) begin end;
set @var= 2;
execute stmt using @var;
-ERROR 42000: PROCEDURE test.p1 does not exist
# Cleanup
drop procedure p1;
-call p_verify_reprepare_count(0);
+call p_verify_reprepare_count(1);
SUCCESS
# Test 7-b: dependent FUNCTION has changed
@@ -361,11 +358,13 @@ set @var=8;
# XXX: bug, the SQL statement in the trigger is still
# pointing at table 't3', since the view was expanded
# at first statement execution.
+# Since the view definition is inlined in the statement
+# at prepare, changing the view definition does not cause
+# repreparation.
# Repreparation of the main statement doesn't cause repreparation
# of trigger statements.
execute stmt using @var;
-ERROR 42S02: Table 'test.t3' doesn't exist
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
SUCCESS
#
@@ -382,6 +381,7 @@ select * from t3;
a
6
7
+8
flush table t1;
set @var=9;
execute stmt using @var;
@@ -396,6 +396,7 @@ select * from t3;
a
6
7
+8
drop view v1;
drop table t1,t2,t3;
# Test 7-d: dependent TABLE has changed
@@ -707,6 +708,9 @@ deallocate prepare stmt;
=====================================================================
Part 16: VIEW -> TEMPORARY TABLE transitions
=====================================================================
+#
+# Test 1: Merged view
+#
create table t2 (a int);
insert into t2 (a) values (1);
create view t1 as select * from t2;
@@ -720,18 +724,74 @@ SUCCESS
create temporary table t1 (a int);
execute stmt;
a
-call p_verify_reprepare_count(1);
+1
+call p_verify_reprepare_count(0);
SUCCESS
drop view t1;
execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop table t2;
+drop temporary table t1;
+deallocate prepare stmt;
+#
+# Test 2: Materialized view
+#
+create table t2 (a int);
+insert into t2 (a) values (1);
+create algorithm = temptable view t1 as select * from t2;
+prepare stmt from "select * from t1";
+execute stmt;
+a
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create temporary table t1 (a int);
+execute stmt;
a
+1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view t1;
+execute stmt;
+ERROR 42S02: Table 'test.t1' doesn't exist
call p_verify_reprepare_count(0);
SUCCESS
drop table t2;
drop temporary table t1;
deallocate prepare stmt;
+#
+# Test 3: View referencing an Information schema table
+#
+create view t1 as select table_name from information_schema.views;
+prepare stmt from "select * from t1";
+execute stmt;
+table_name
+t1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+create temporary table t1 (a int);
+execute stmt;
+table_name
+t1
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop view t1;
+execute stmt;
+table_name
+call p_verify_reprepare_count(0);
+SUCCESS
+
+drop temporary table t1;
+deallocate prepare stmt;
=====================================================================
Part 17: VIEW -> VIEW (DDL) transitions
=====================================================================
@@ -1695,7 +1755,7 @@ SUCCESS
drop table t2;
create temporary table t2 (a int);
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
SUCCESS
execute stmt;
@@ -1711,7 +1771,7 @@ SUCCESS
drop table t2;
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
SUCCESS
drop table t2;
@@ -1755,21 +1815,21 @@ SUCCESS
drop table t1;
deallocate prepare stmt;
-# XXX: no validation of the first table in case of
-# CREATE TEMPORARY TABLE. This is a shortcoming of the current code,
-# but since validation is not strictly necessary, nothing is done
-# about it.
-# Will be fixed as part of work on Bug#21431 "Incomplete support of
-# temporary tables"
create table t1 (a int);
insert into t1 (a) values (1);
prepare stmt from "create temporary table if not exists t2 as select * from t1";
execute stmt;
drop table t2;
execute stmt;
+call p_verify_reprepare_count(0);
+SUCCESS
+
execute stmt;
Warnings:
Note 1050 Table 't2' already exists
+call p_verify_reprepare_count(1);
+SUCCESS
+
select * from t2;
a
1
@@ -1777,6 +1837,9 @@ a
execute stmt;
Warnings:
Note 1050 Table 't2' already exists
+call p_verify_reprepare_count(0);
+SUCCESS
+
select * from t2;
a
1
@@ -1790,7 +1853,7 @@ Note 1050 Table 't2' already exists
select * from t2;
a
1
-call p_verify_reprepare_count(0);
+call p_verify_reprepare_count(1);
SUCCESS
drop table t1;
@@ -2026,11 +2089,11 @@ drop table if exists t1;
create table t1 (a int);
prepare stmt from "show keys from t1 where (1) in (select * from t1)";
execute stmt;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
drop table t1;
create table t1 (x int);
execute stmt;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
drop table t1;
deallocate prepare stmt;
#
diff --git a/mysql-test/r/ps_ddl1.result b/mysql-test/r/ps_ddl1.result
index e41a72ceb96..87abcd90590 100644
--- a/mysql-test/r/ps_ddl1.result
+++ b/mysql-test/r/ps_ddl1.result
@@ -460,7 +460,7 @@ create schema mysqltest;
end|
execute stmt;
ERROR 42000: PROCEDURE test.p1 does not exist
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
SUCCESS
execute stmt;
diff --git a/mysql-test/r/query_cache.result b/mysql-test/r/query_cache.result
index eab0c51f974..112a86e0c88 100644
--- a/mysql-test/r/query_cache.result
+++ b/mysql-test/r/query_cache.result
@@ -1721,3 +1721,14 @@ SELECT SQL_CACHE * FROM t1 WHERE a IN
ERROR 42S22: Unknown column 'SQL_NO_CACHE' in 'field list'
DROP TABLE t1;
End of 5.1 tests
+#
+# Bug#51336 Assert in reload_acl_and_cache during RESET QUERY CACHE
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(id INT);
+START TRANSACTION;
+SELECT * FROM t1;
+id
+RESET QUERY CACHE;
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/r/read_only_innodb.result b/mysql-test/r/read_only_innodb.result
index 690de085bf9..13e5980f900 100644
--- a/mysql-test/r/read_only_innodb.result
+++ b/mysql-test/r/read_only_innodb.result
@@ -46,3 +46,174 @@ UNLOCK TABLES;
DROP TABLE t1;
DROP USER test@localhost;
echo End of 5.1 tests
+#
+# Bug#33669: Transactional temporary tables do not work under --read-only
+#
+DROP DATABASE IF EXISTS db1;
+# Setup user and tables
+CREATE USER bug33669@localhost;
+CREATE DATABASE db1;
+CREATE TABLE db1.t1 (a INT) ENGINE=INNODB;
+CREATE TABLE db1.t2 (a INT) ENGINE=INNODB;
+INSERT INTO db1.t1 VALUES (1);
+INSERT INTO db1.t2 VALUES (2);
+GRANT CREATE TEMPORARY TABLES, DROP, INSERT, DELETE, UPDATE,
+SELECT, LOCK TABLES ON db1.* TO bug33669@localhost;
+SET GLOBAL READ_ONLY = ON;
+# Connection con1 (user bug33669):
+
+# Create, insert and drop temporary table:
+
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+INSERT INTO temp VALUES (1);
+DROP TABLE temp;
+
+# Lock base tables and use temporary table:
+
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+LOCK TABLES t1 READ, t2 READ;
+SELECT * FROM t1;
+a
+1
+INSERT INTO temp values (1);
+SELECT * FROM t2;
+a
+2
+UNLOCK TABLES;
+DROP TABLE temp;
+
+# Transaction
+
+BEGIN;
+SELECT * FROM t1;
+a
+1
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+INSERT INTO t1 VALUES (1);
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+INSERT INTO temp VALUES (1);
+SELECT * FROM t2;
+a
+2
+ROLLBACK;
+SELECT * FROM temp;
+a
+DROP TABLE temp;
+
+# Lock base table as READ and temporary table as WRITE:
+
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+LOCK TABLES t1 READ, temp WRITE;
+SELECT * FROM t1;
+a
+1
+SELECT * FROM temp;
+a
+INSERT INTO t1 VALUES (1);
+ERROR HY000: The MySQL server is running with the --read-only option so it cannot execute this statement
+INSERT INTO temp VALUES (1);
+DROP TABLE temp;
+UNLOCK TABLES;
+
+# Lock temporary table that shadows a base table:
+
+CREATE TEMPORARY TABLE t1 (a INT) ENGINE=INNODB;
+LOCK TABLES t1 WRITE;
+DROP TABLE t1;
+SELECT * FROM t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+
+# INSERT SELECT from base table into temporary table:
+
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+BEGIN;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+a
+1
+10
+SELECT * FROM temp2 ORDER BY a;
+a
+2
+10
+ROLLBACK;
+SELECT * FROM temp1,temp2;
+a a
+LOCK TABLES t1 READ, t2 READ;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+a
+1
+10
+SELECT * FROM temp2 ORDER BY a;
+a
+2
+10
+UNLOCK TABLES;
+DELETE temp1, temp2 FROM temp1, temp2;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+a
+1
+10
+SELECT * FROM temp2 ORDER BY a;
+a
+2
+10
+DROP TABLE temp1, temp2;
+
+# INSERT and INSERT SELECT that uses subqueries:
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+INSERT INTO temp1 (a) VALUES ((SELECT MAX(a) FROM t1));
+LOCK TABLES t2 READ;
+INSERT INTO temp2 (a) VALUES ((SELECT MAX(a) FROM t2));
+UNLOCK TABLES;
+LOCK TABLES t1 READ, t2 READ;
+INSERT INTO temp1 SELECT * FROM t1 WHERE a < (SELECT MAX(a) FROM t2);
+INSERT INTO temp2 SELECT * FROM t2 WHERE a > (SELECT MAX(a) FROM t1);
+UNLOCK TABLES;
+INSERT INTO temp1 SELECT * FROM t1 WHERE a < (SELECT MAX(a) FROM t2);
+INSERT INTO temp2 SELECT * FROM t2 WHERE a > (SELECT MAX(a) FROM t1);
+SELECT * FROM temp1 ORDER BY a;
+a
+1
+1
+1
+SELECT * FROM temp2 ORDER BY a;
+a
+2
+2
+2
+DROP TABLE temp1, temp2;
+
+# Multiple table update:
+
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+INSERT INTO temp1 VALUES (1),(2);
+INSERT INTO temp2 VALUES (3),(4);
+UPDATE temp1,temp2 SET temp1.a = 5, temp2.a = 10;
+SELECT * FROM temp1, temp2;
+a a
+5 10
+5 10
+5 10
+5 10
+DROP TABLE temp1, temp2;
+
+# Disconnect and cleanup
+
+SET GLOBAL READ_ONLY = OFF;
+DROP USER bug33669@localhost;
+DROP DATABASE db1;
diff --git a/mysql-test/r/repair.result b/mysql-test/r/repair.result
index 5bb3dd76fed..1a98f2f0f36 100644
--- a/mysql-test/r/repair.result
+++ b/mysql-test/r/repair.result
@@ -13,16 +13,16 @@ create table t1(id int PRIMARY KEY, st varchar(10), KEY st_key(st));
insert into t1 values(1, "One");
alter table t1 disable keys;
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
-t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
+t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
repair table t1 extended;
Table Op Msg_type Msg_text
test.t1 repair status OK
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
-t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 id A 1 NULL NULL BTREE
+t1 1 st_key 1 st A NULL NULL NULL YES BTREE disabled
drop table t1;
repair table t1 use_frm;
Table Op Msg_type Msg_text
@@ -46,8 +46,8 @@ REPAIR TABLE t1;
Table Op Msg_type Msg_text
test.t1 repair status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
SET myisam_repair_threads=@@global.myisam_repair_threads;
DROP TABLE t1;
CREATE TABLE t1(a INT);
@@ -157,3 +157,29 @@ REPAIR TABLE tt1 USE_FRM;
Table Op Msg_type Msg_text
tt1 repair error Cannot repair temporary table from .frm file
DROP TABLE tt1;
+#
+# Bug #48248 assert in MDL_ticket::upgrade_shared_lock_to_exclusive
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a INT);
+LOCK TABLES t1 READ;
+REPAIR TABLE t1;
+Table Op Msg_type Msg_text
+test.t1 repair Error Table 't1' was locked with a READ lock and can't be updated
+test.t1 repair status Operation failed
+UNLOCK TABLES;
+DROP TABLE t1;
+#
+# Test for bug #50784 "MDL: Assertion `m_tickets.is_empty() ||
+# m_tickets.front() == m_trans_sentinel'"
+#
+drop tables if exists t1, t2;
+create table t1 (i int);
+create table t2 (j int);
+set @@autocommit= 0;
+repair table t1, t2;
+Table Op Msg_type Msg_text
+test.t1 repair status OK
+test.t2 repair status OK
+set @@autocommit= default;
+drop tables t1, t2;
diff --git a/mysql-test/r/schema.result b/mysql-test/r/schema.result
index 402d3e1d987..2919606d74a 100644
--- a/mysql-test/r/schema.result
+++ b/mysql-test/r/schema.result
@@ -12,3 +12,39 @@ mysql
performance_schema
test
drop schema foo;
+#
+# Bug #48940 MDL deadlocks against mysql_rm_db
+#
+DROP SCHEMA IF EXISTS schema1;
+# Connection default
+CREATE SCHEMA schema1;
+CREATE TABLE schema1.t1 (a INT);
+SET autocommit= FALSE;
+INSERT INTO schema1.t1 VALUES (1);
+# Connection 2
+DROP SCHEMA schema1;
+# Connection default
+ALTER SCHEMA schema1 DEFAULT CHARACTER SET utf8;
+Got one of the listed errors
+SET autocommit= TRUE;
+# Connection 2
+# Connection default
+#
+# Bug #49988 MDL deadlocks with mysql_create_db, reload_acl_and_cache
+#
+DROP SCHEMA IF EXISTS schema1;
+# Connection default
+CREATE SCHEMA schema1;
+CREATE TABLE schema1.t1 (id INT);
+LOCK TABLE schema1.t1 WRITE;
+# Connection con2
+DROP SCHEMA schema1;
+# Connection default
+# CREATE SCHEMA used to give a deadlock.
+# Now we prohibit CREATE SCHEMA in LOCK TABLES mode.
+CREATE SCHEMA IF NOT EXISTS schema1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+# UNLOCK TABLES so DROP SCHEMA can continue.
+UNLOCK TABLES;
+# Connection con2
+# Connection default
diff --git a/mysql-test/r/select.result b/mysql-test/r/select.result
index 65bd5183474..cc752c03a36 100644
--- a/mysql-test/r/select.result
+++ b/mysql-test/r/select.result
@@ -2086,10 +2086,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
DO 1;
DO benchmark(100,1+1),1,1;
diff --git a/mysql-test/r/shm.result b/mysql-test/r/shm.result
index c504fe222ef..4f57049406d 100644
--- a/mysql-test/r/shm.result
+++ b/mysql-test/r/shm.result
@@ -2084,10 +2084,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/show_check.result b/mysql-test/r/show_check.result
index 22b5b29a0c1..b6207d830d8 100644
--- a/mysql-test/r/show_check.result
+++ b/mysql-test/r/show_check.result
@@ -73,10 +73,11 @@ def information_schema STATISTICS STATISTICS PACKED Packed 253 10 0 Y 0 0 8
def information_schema STATISTICS STATISTICS NULLABLE Null 253 3 0 N 1 0 8
def information_schema STATISTICS STATISTICS INDEX_TYPE Index_type 253 16 5 N 1 0 8
def information_schema STATISTICS STATISTICS COMMENT Comment 253 16 0 Y 0 0 8
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
-t1 1 b 1 b A 1 NULL NULL BTREE
-t1 1 b 2 c A 5 NULL NULL BTREE
+def information_schema STATISTICS STATISTICS INDEX_COMMENT Index_comment 253 1024 0 N 1 0 8
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A 5 NULL NULL BTREE
+t1 1 b 1 b A 1 NULL NULL BTREE
+t1 1 b 2 c A 5 NULL NULL BTREE
insert into t1 values (5,5,5);
ERROR 23000: Duplicate entry '5' for key 'PRIMARY'
-- Here we enable metadata just to check that the collation of the
@@ -133,7 +134,7 @@ def information_schema TABLES TABLES CHECK_TIME Check_time 12 19 0 Y 128 0 63
def information_schema TABLES TABLES TABLE_COLLATION Collation 253 32 0 Y 0 0 8
def information_schema TABLES TABLES CHECKSUM Checksum 8 21 0 Y 32800 0 63
def information_schema TABLES TABLES CREATE_OPTIONS Create_options 253 255 0 Y 0 0 8
-def information_schema TABLES TABLES TABLE_COMMENT Comment 253 80 0 N 1 0 8
+def information_schema TABLES TABLES TABLE_COMMENT Comment 253 2048 0 N 1 0 8
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
show databases;
Catalog Database Table Table_alias Column Column_alias Type Length Max length Is_null Flags Decimals Charsetnr
@@ -163,11 +164,11 @@ def Msg_text 253 255 2 Y 0 31 8
Table Op Msg_type Msg_text
test.t1 analyze status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 f1 A 1 NULL NULL BTREE
-t1 0 PRIMARY 2 f2 A 3 NULL NULL BTREE
-t1 0 PRIMARY 3 f3 A 9 NULL NULL BTREE
-t1 0 PRIMARY 4 f4 A 18 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 f1 A 1 NULL NULL BTREE
+t1 0 PRIMARY 2 f2 A 3 NULL NULL BTREE
+t1 0 PRIMARY 3 f3 A 9 NULL NULL BTREE
+t1 0 PRIMARY 4 f4 A 18 NULL NULL BTREE
-- Here we enable metadata just to check that the collation of the
-- resultset is non-binary for string type. This should be changed
-- after Bug#29394 is implemented.
@@ -180,11 +181,11 @@ def Msg_text 253 255 2 Y 0 31 8
Table Op Msg_type Msg_text
test.t1 repair status OK
show index from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 f1 A 1 NULL NULL BTREE
-t1 0 PRIMARY 2 f2 A 3 NULL NULL BTREE
-t1 0 PRIMARY 3 f3 A 9 NULL NULL BTREE
-t1 0 PRIMARY 4 f4 A 18 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 f1 A 1 NULL NULL BTREE
+t1 0 PRIMARY 2 f2 A 3 NULL NULL BTREE
+t1 0 PRIMARY 3 f3 A 9 NULL NULL BTREE
+t1 0 PRIMARY 4 f4 A 18 NULL NULL BTREE
drop table t1;
create temporary table t1 (a int not null);
show create table t1;
@@ -639,8 +640,9 @@ def information_schema STATISTICS STATISTICS PACKED Packed 253 10 0 Y 0 0 63
def information_schema STATISTICS STATISTICS NULLABLE Null 253 3 0 N 1 0 63
def information_schema STATISTICS STATISTICS INDEX_TYPE Index_type 253 16 5 N 1 0 63
def information_schema STATISTICS STATISTICS COMMENT Comment 253 16 0 Y 0 0 63
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 field1 A 0 1000 NULL BTREE
+def information_schema STATISTICS STATISTICS INDEX_COMMENT Index_comment 253 1024 0 N 1 0 63
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 field1 A 0 1000 NULL BTREE
drop table t1;
create table t1 (
c1 int NOT NULL,
@@ -904,8 +906,9 @@ def information_schema STATISTICS STATISTICS PACKED Packed 253 30 0 Y 0 0 33
def information_schema STATISTICS STATISTICS NULLABLE Null 253 9 0 N 1 0 33
def information_schema STATISTICS STATISTICS INDEX_TYPE Index_type 253 48 5 N 1 0 33
def information_schema STATISTICS STATISTICS COMMENT Comment 253 48 0 Y 0 0 33
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 c A 0 NULL NULL BTREE
+def information_schema STATISTICS STATISTICS INDEX_COMMENT Index_comment 253 3072 0 N 1 0 33
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 c A 0 NULL NULL BTREE
----------------------------------------------------------------
SELECT
TABLE_CATALOG,
@@ -928,7 +931,7 @@ def information_schema TABLES TABLES ENGINE ENGINE 253 192 6 Y 0 0 33
def information_schema TABLES TABLES ROW_FORMAT ROW_FORMAT 253 30 5 Y 0 0 33
def information_schema TABLES TABLES TABLE_COLLATION TABLE_COLLATION 253 96 17 Y 0 0 33
def information_schema TABLES TABLES CREATE_OPTIONS CREATE_OPTIONS 253 765 0 Y 0 0 33
-def information_schema TABLES TABLES TABLE_COMMENT TABLE_COMMENT 253 240 0 N 1 0 33
+def information_schema TABLES TABLES TABLE_COMMENT TABLE_COMMENT 253 6144 0 N 1 0 33
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE ROW_FORMAT TABLE_COLLATION CREATE_OPTIONS TABLE_COMMENT
def test t1 BASE TABLE MyISAM Fixed latin1_swedish_ci
----------------------------------------------------------------
@@ -963,7 +966,7 @@ def information_schema COLUMNS COLUMNS COLUMN_TYPE COLUMN_TYPE 252 589815 7 N 17
def information_schema COLUMNS COLUMNS COLUMN_KEY COLUMN_KEY 253 9 3 N 1 0 33
def information_schema COLUMNS COLUMNS EXTRA EXTRA 253 81 0 N 1 0 33
def information_schema COLUMNS COLUMNS PRIVILEGES PRIVILEGES 253 240 31 N 1 0 33
-def information_schema COLUMNS COLUMNS COLUMN_COMMENT COLUMN_COMMENT 253 765 0 N 1 0 33
+def information_schema COLUMNS COLUMNS COLUMN_COMMENT COLUMN_COMMENT 253 3072 0 N 1 0 33
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENT
def test t1 c NULL NO int NULL NULL int(11) PRI select,insert,update,references
----------------------------------------------------------------
@@ -1295,7 +1298,7 @@ show columns from `a\b` from `mysqlttest\1`;
Field Type Null Key Default Extra
a int(11) YES NULL
show keys from `mysqlttest\1`.`a\b`;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
drop table `mysqlttest\1`.`a\b`;
drop database `mysqlttest\1`;
show engine foobar status;
diff --git a/mysql-test/r/show_profile.result b/mysql-test/r/show_profile.result
new file mode 100644
index 00000000000..67a07f6cfc9
--- /dev/null
+++ b/mysql-test/r/show_profile.result
@@ -0,0 +1,10 @@
+SET profiling = 1;
+SELECT 1;
+1
+1
+SHOW PROFILES;
+Query_ID Duration Query
+1 # SELECT 1
+SHOW PROFILE FOR QUERY 1;
+SHOW PROFILE CPU FOR QUERY 1;
+SET profiling = 0;
diff --git a/mysql-test/r/signal.result b/mysql-test/r/signal.result
index 7fb09b87778..410abffcdf0 100644
--- a/mysql-test/r/signal.result
+++ b/mysql-test/r/signal.result
@@ -2181,7 +2181,7 @@ drop procedure peter_p1 $$
drop procedure peter_p2 $$
drop procedure if exists peter_p3 $$
Warnings:
-Note 1305 PROCEDURE peter_p3 does not exist
+Note 1305 PROCEDURE test.peter_p3 does not exist
create procedure peter_p3()
begin
declare continue handler for sqlexception
diff --git a/mysql-test/r/sp-bugs.result b/mysql-test/r/sp-bugs.result
index 14c5311bbe5..2374b433fba 100644
--- a/mysql-test/r/sp-bugs.result
+++ b/mysql-test/r/sp-bugs.result
@@ -44,4 +44,33 @@ SELECT f2 ();
f2 ()
NULL
DROP SCHEMA testdb;
+USE test;
+#
+# Bug#50423: Crash on second call of a procedure dropping a trigger
+#
+DROP TABLE IF EXISTS t1;
+DROP TRIGGER IF EXISTS tr1;
+DROP PROCEDURE IF EXISTS p1;
+CREATE TABLE t1 (f1 INTEGER);
+CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
+CREATE PROCEDURE p1 () DROP TRIGGER tr1;
+CALL p1 ();
+CALL p1 ();
+ERROR HY000: Trigger does not exist
+DROP TABLE t1;
+DROP PROCEDURE p1;
+#
+# Bug#50423: Crash on second call of a procedure dropping a trigger
+#
+DROP TABLE IF EXISTS t1;
+DROP TRIGGER IF EXISTS tr1;
+DROP PROCEDURE IF EXISTS p1;
+CREATE TABLE t1 (f1 INTEGER);
+CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
+CREATE PROCEDURE p1 () DROP TRIGGER tr1;
+CALL p1 ();
+CALL p1 ();
+ERROR HY000: Trigger does not exist
+DROP TABLE t1;
+DROP PROCEDURE p1;
End of 5.1 tests
diff --git a/mysql-test/r/sp-destruct.result b/mysql-test/r/sp-destruct.result
index b6891df2420..a4933ee9800 100644
--- a/mysql-test/r/sp-destruct.result
+++ b/mysql-test/r/sp-destruct.result
@@ -116,3 +116,21 @@ ERROR HY000: Cannot load from mysql.proc. The table is probably corrupted
DROP TABLE mysql.proc;
RENAME TABLE proc_backup TO mysql.proc;
FLUSH TABLE mysql.proc;
+#
+# Bug#51376 Assert `! is_set()' failed in
+# Diagnostics_area::set_ok_status on DROP FUNCTION
+#
+DROP FUNCTION IF EXISTS f1;
+CREATE FUNCTION f1() RETURNS INT RETURN 1;
+# Backup the procs_priv table
+RENAME TABLE mysql.procs_priv TO procs_priv_backup;
+FLUSH TABLE mysql.procs_priv;
+DROP FUNCTION f1;
+ERROR 42S02: Table 'mysql.procs_priv' doesn't exist
+SHOW WARNINGS;
+Level Code Message
+Error 1146 Table 'mysql.procs_priv' doesn't exist
+Warning 1405 Failed to revoke all privileges to dropped routine
+# Restore the procs_priv table
+RENAME TABLE procs_priv_backup TO mysql.procs_priv;
+FLUSH TABLE mysql.procs_priv;
diff --git a/mysql-test/r/sp-error.result b/mysql-test/r/sp-error.result
index 00ae7dd4eca..0f658ee831e 100644
--- a/mysql-test/r/sp-error.result
+++ b/mysql-test/r/sp-error.result
@@ -46,7 +46,7 @@ call foo()|
ERROR 42000: PROCEDURE test.foo does not exist
drop procedure if exists foo|
Warnings:
-Note 1305 PROCEDURE foo does not exist
+Note 1305 PROCEDURE test.foo does not exist
show create procedure foo|
ERROR 42000: PROCEDURE foo does not exist
show create function foo|
@@ -512,7 +512,7 @@ select * from t1;
end|
lock table t1 read|
alter procedure bug9566 comment 'Some comment'|
-ERROR HY000: Table 'proc' was not locked with LOCK TABLES
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
unlock tables|
drop procedure bug9566|
drop procedure if exists bug7299|
@@ -1028,7 +1028,7 @@ drop table t1|
drop function bug_13627_f|
drop function if exists bug12329;
Warnings:
-Note 1305 FUNCTION bug12329 does not exist
+Note 1305 FUNCTION test.bug12329 does not exist
create table t1 as select 1 a;
create table t2 as select 1 a;
create function bug12329() returns int return (select a from t1);
@@ -1687,6 +1687,17 @@ NULL
SELECT non_existent (a) FROM t1 WHERE b = 999999;
ERROR 42000: FUNCTION test.non_existent does not exist
DROP TABLE t1;
+CREATE TABLE t1 ( f2 INTEGER, f3 INTEGER );
+INSERT INTO t1 VALUES ( 1, 1 );
+CREATE FUNCTION func_1 () RETURNS INTEGER
+BEGIN
+INSERT INTO t1 SELECT * FROM t1 ;
+RETURN 1 ;
+END|
+INSERT INTO t1 SELECT * FROM (SELECT 2 AS f1, 2 AS f2) AS A WHERE func_1() = 5;
+ERROR HY000: Can't update table 't1' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
+DROP FUNCTION func_1;
+DROP TABLE t1;
#
# Bug #47788: Crash in TABLE_LIST::hide_view_error on UPDATE + VIEW +
# SP + MERGE + ALTER
diff --git a/mysql-test/r/sp-lock.result b/mysql-test/r/sp-lock.result
new file mode 100644
index 00000000000..e9087f61807
--- /dev/null
+++ b/mysql-test/r/sp-lock.result
@@ -0,0 +1,697 @@
+#
+# Test coverage for changes performed by the fix
+# for Bug#30977 "Concurrent statement using stored function
+# and DROP FUNCTION breaks SBR.
+#
+#
+# 1) Verify that the preceding transaction is
+# (implicitly) committed before CREATE/ALTER/DROP
+# PROCEDURE. Note, that this is already tested
+# in implicit_commit.test, but here we use an alternative
+# approach.
+#
+# Start a transaction, create a savepoint,
+# then call a DDL operation on a procedure, and then check
+# that the savepoint is no longer present.
+drop table if exists t1;
+drop procedure if exists p1;
+drop procedure if exists p2;
+drop procedure if exists p3;
+drop procedure if exists p4;
+drop function if exists f1;
+create table t1 (a int);
+#
+# Test 'CREATE PROCEDURE'.
+#
+begin;
+savepoint sv;
+create procedure p1() begin end;
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# Test 'ALTER PROCEDURE'.
+#
+begin;
+savepoint sv;
+alter procedure p1 comment 'changed comment';
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# Test 'DROP PROCEDURE'.
+#
+begin;
+savepoint sv;
+drop procedure p1;
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# Test 'CREATE FUNCTION'.
+#
+begin;
+savepoint sv;
+create function f1() returns int return 1;
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# Test 'ALTER FUNCTION'.
+#
+begin;
+savepoint sv;
+alter function f1 comment 'new comment';
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# Test 'DROP FUNCTION'.
+#
+begin;
+savepoint sv;
+drop function f1;
+rollback to savepoint sv;
+ERROR 42000: SAVEPOINT sv does not exist
+#
+# 2) Verify that procedure DDL operations fail
+# under lock tables.
+#
+# Auxiliary routines to test ALTER.
+create procedure p1() begin end;
+create function f1() returns int return 1;
+lock table t1 write;
+create procedure p2() begin end;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter procedure p1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+drop procedure p1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+create function f2() returns int return 1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter function f1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+lock table t1 read;
+create procedure p2() begin end;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter procedure p1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+drop procedure p1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+create function f2() returns int return 1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter function f1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables;
+#
+# Even if we locked a temporary table.
+# Todo: this is a restriction we could possibly lift.
+#
+drop table t1;
+create temporary table t1 (a int);
+lock table t1 read;
+create procedure p2() begin end;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter procedure p1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+drop procedure p1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+create function f2() returns int return 1;
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+alter function f1 comment 'changed comment';
+ERROR HY000: Can't execute the given command because you have active locked tables or an active transaction
+unlock tables;
+drop function f1;
+drop procedure p1;
+drop temporary table t1;
+#
+# 3) Verify that CREATE/ALTER/DROP routine grab an
+# exclusive lock.
+#
+# For that, start a transaction, use a routine. In a concurrent
+# connection, try to drop or alter the routine. It should place
+# a pending or exclusive lock and block. In another concurrnet
+# connection, try to use the routine.
+# That should block on the pending exclusive lock.
+#
+# Establish helper connections.
+#
+# Test DROP PROCEDURE.
+#
+# --> connection default
+create procedure p1() begin end;
+create function f1() returns int
+begin
+call p1();
+return 1;
+end|
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'drop procedure p1'...
+drop procedure p1;
+# --> connection con2
+# Waitng for 'drop procedure t1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'drop procedure p1'...
+# --> connection con2
+# Reaping 'select f1()'
+ERROR 42000: PROCEDURE test.p1 does not exist
+# --> connection default
+#
+# Test CREATE PROCEDURE.
+#
+create procedure p1() begin end;
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'create procedure p1'...
+create procedure p1() begin end;
+# --> connection con2
+# Waitng for 'create procedure t1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'create procedure p1'...
+ERROR 42000: PROCEDURE p1 already exists
+# --> connection con2
+# Reaping 'select f1()'
+f1()
+1
+#
+# Test ALTER PROCEDURE.
+#
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'alter procedure p1'...
+alter procedure p1 contains sql;
+# --> connection con2
+# Waitng for 'alter procedure t1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'alter procedure p1'...
+# --> connection con2
+# Reaping 'select f1()'
+f1()
+1
+# --> connection default
+#
+# Test DROP FUNCTION.
+#
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'drop function f1'...
+drop function f1;
+# --> connection con2
+# Waitng for 'drop function f1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'drop function f1'...
+# --> connection con2
+# Reaping 'select f1()'
+ERROR 42000: FUNCTION test.f1 does not exist
+# --> connection default
+#
+# Test CREATE FUNCTION.
+#
+create function f1() returns int return 1;
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'create function f1'...
+create function f1() returns int return 2;
+# --> connection con2
+# Waitng for 'create function f1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'create function f1'...
+ERROR 42000: FUNCTION f1 already exists
+# --> connection con2
+# Reaping 'select f1()'
+f1()
+1
+# --> connection default
+#
+# Test ALTER FUNCTION.
+#
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'alter function f1'...
+alter function f1 contains sql;
+# --> connection con2
+# Waitng for 'alter function f1' to get blocked on MDL lock...
+# Demonstrate that there is a pending exclusive lock.
+# Sending 'select f1()'...
+select f1();
+# --> connection con3
+# Waitng for 'select f1()' to get blocked by a pending MDL lock...
+# --> connection default
+commit;
+# --> connection con1
+# Reaping 'alter function f1'...
+# --> connection con2
+# Reaping 'select f1()'
+f1()
+1
+# --> connection default
+drop function f1;
+drop procedure p1;
+#
+# 4) MDL lock should not be taken for
+# unrolled CALL statements.
+# The primary goal of metadata locks is a consistent binary log.
+# When a call statement is unrolled, it doesn't get to the
+# binary log, instead the statements that are contained
+# in the procedure body do. This can nest to any level.
+#
+create procedure p1() begin end;
+create procedure p2() begin end;
+create table t1 (a int);
+create procedure p3()
+begin
+call p1();
+call p1();
+call p2();
+end|
+create procedure p4()
+begin
+call p1();
+call p1();
+call p2();
+call p2();
+call p3();
+end|
+begin;
+select * from t1;
+a
+savepoint sv;
+call p4();
+# Prepared statement should not add any locks either.
+prepare stmt from "call p4()";
+execute stmt;
+execute stmt;
+# --> connection con1
+drop procedure p1;
+drop procedure p2;
+drop procedure p3;
+drop procedure p4;
+# --> connection default
+# This is to verify there was no implicit commit.
+rollback to savepoint sv;
+call p4();
+ERROR 42000: PROCEDURE test.p4 does not exist
+commit;
+drop table t1;
+#
+# 5) Locks should be taken on routines
+# used indirectly by views or triggers.
+#
+#
+# A function is used from a trigger.
+#
+create function f1() returns int return 1;
+create table t1 (a int);
+create table t2 (a int, b int);
+create trigger t1_ai after insert on t1 for each row
+insert into t2 (a, b) values (new.a, f1());
+begin;
+insert into t1 (a) values (1);
+# --> connection con1
+# Sending 'drop function f1'
+drop function f1;
+# --> connection con2
+# Waitng for 'drop function f1' to get blocked on MDL lock...
+# --> connnection default
+commit;
+# --> connection con1
+# Reaping 'drop function f1'...
+# --> connection default
+#
+# A function is used from a view.
+#
+create function f1() returns int return 1;
+create view v1 as select f1() as a;
+begin;
+select * from v1;
+a
+1
+# --> connection con1
+# Sending 'drop function f1'
+drop function f1;
+# --> connection con2
+# Waitng for 'drop function f1' to get blocked on MDL lock...
+# --> connnection default
+commit;
+# --> connection con1
+# Reaping 'drop function f1'...
+# --> connection default
+#
+# A procedure is used from a function.
+#
+create function f1() returns int
+begin
+declare v_out int;
+call p1(v_out);
+return v_out;
+end|
+create procedure p1(out v_out int) set v_out=3;
+begin;
+select * from v1;
+a
+3
+# --> connection con1
+# Sending 'drop procedure p1'
+drop procedure p1;
+# --> connection con2
+# Waitng for 'drop procedure p1' to get blocked on MDL lock...
+# --> connnection default
+commit;
+# --> connection con1
+# Reaping 'drop procedure p1'...
+# --> connection default
+#
+# Deep nesting: a function is used from a procedure used
+# from a function used from a view used in a trigger.
+#
+create function f2() returns int return 4;
+create procedure p1(out v_out int) set v_out=f2();
+drop trigger t1_ai;
+create trigger t1_ai after insert on t1 for each row
+insert into t2 (a, b) values (new.a, (select max(a) from v1));
+begin;
+insert into t1 (a) values (3);
+# --> connection con1
+# Sending 'drop function f2'
+drop function f2;
+# --> connection con2
+# Waitng for 'drop function f2' to get blocked on MDL lock...
+# --> connnection default
+commit;
+# --> connection con1
+# Reaping 'drop function f2'...
+# --> connection default
+drop view v1;
+drop function f1;
+drop procedure p1;
+drop table t1, t2;
+#
+# 6) Check that ER_LOCK_DEADLOCK is reported if
+# acquisition of a shared lock fails during a transaction or
+# we need to back off to flush the sp cache.
+#
+# Sic: now this situation does not require a back off since we
+# flush the cache on the fly.
+#
+create function f1() returns int return 7;
+create table t1 (a int);
+begin;
+select * from t1;
+a
+select f1();
+f1()
+7
+commit;
+drop table t1;
+drop function f1;
+#
+# 7) Demonstrate that under LOCK TABLES we accumulate locks
+# on stored routines, and release metadata locks in
+# ROLLBACK TO SAVEPOINT. That is done only for those stored
+# routines that are not part of LOCK TABLES prelocking list.
+# Those stored routines that are part of LOCK TABLES
+# prelocking list are implicitly locked when entering
+# LOCK TABLES, and ROLLBACK TO SAVEPOINT has no effect on
+# them.
+#
+create function f1() returns varchar(20) return "f1()";
+create function f2() returns varchar(20) return "f2()";
+create view v1 as select f1() as a;
+set @@session.autocommit=0;
+lock table v1 read;
+select * from v1;
+a
+f1()
+savepoint sv;
+select f2();
+f2()
+f2()
+# --> connection con1
+# Sending 'drop function f1'...
+drop function f1;
+# --> connection con2
+# Waitng for 'drop function f1' to get blocked on MDL lock...
+# Sending 'drop function f2'...
+drop function f2;
+# --> connection default
+# Waitng for 'drop function f2' to get blocked on MDL lock...
+rollback to savepoint sv;
+# --> connection con2
+# Reaping 'drop function f2'...
+# --> connection default
+unlock tables;
+# --> connection con1
+# Reaping 'drop function f1'...
+# --> connection default
+drop function f1;
+ERROR 42000: FUNCTION test.f1 does not exist
+drop function f2;
+ERROR 42000: FUNCTION test.f2 does not exist
+drop view v1;
+set @@session.autocommit=default;
+#
+# 8) Check the situation when we're preparing or executing a
+# prepared statement, and as part of that try to flush the
+# session sp cache. However, one of the procedures that
+# needs a flush is in use. Verify that there is no infinite
+# reprepare loop and no crash.
+#
+create function f1() returns int return 1;
+#
+# We just mention p1() in the body of f2() to make
+# sure that p1() metadata is validated when validating
+# 'select f2()'.
+# Recursion is not allowed in stored functions, so
+# an attempt to just invoke p1() from f2() which is in turn
+# called from p1() would have given a run-time error.
+#
+create function f2() returns int
+begin
+if @var is null then
+call p1();
+end if;
+return 1;
+end|
+create procedure p1()
+begin
+select f1() into @var;
+execute stmt;
+end|
+# --> connection con2
+prepare stmt from "select f2()";
+# --> connection default
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'alter function f1 ...'...
+alter function f1 comment "comment";
+# --> connection con2
+# Waitng for 'alter function f1 ...' to get blocked on MDL lock...
+# Sending 'call p1()'...
+call p1();
+# Waitng for 'call p1()' to get blocked on MDL lock on f1...
+# Let 'alter function f1 ...' go through...
+commit;
+# --> connection con1
+# Reaping 'alter function f1 ...'
+# --> connection con2
+# Reaping 'call p1()'...
+f2()
+1
+deallocate prepare stmt;
+# --> connection default
+drop function f1;
+drop function f2;
+drop procedure p1;
+#
+# 9) Check the situation when a stored function is invoked
+# from a stored procedure, and recursively invokes the
+# stored procedure that is in use. But for the second
+# invocation, a cache flush is requested. We can't
+# flush the procedure that's in use, and are forced
+# to use an old version. It is not a violation of
+# consistency, since we unroll top-level calls.
+# Just verify the code works.
+#
+create function f1() returns int return 1;
+begin;
+select f1();
+f1()
+1
+# --> connection con1
+# Sending 'alter function f1 ...'...
+alter function f1 comment "comment";
+# --> connection con2
+# Waitng for 'alter function f1 ...' to get blocked on MDL lock...
+#
+# We just mention p1() in the body of f2() to make
+# sure that p1() is prelocked for f2().
+# Recursion is not allowed in stored functions, so
+# an attempt to just invoke p1() from f2() which is in turn
+# called from p1() would have given a run-time error.
+#
+create function f2() returns int
+begin
+if @var is null then
+call p1();
+end if;
+return 1;
+end|
+create procedure p1()
+begin
+select f1() into @var;
+select f2() into @var;
+end|
+# Sending 'call p1()'...
+call p1();
+# Waitng for 'call p1()' to get blocked on MDL lock on f1...
+# Let 'alter function f1 ...' go through...
+commit;
+# --> connection con1
+# Reaping 'alter function f1 ...'
+# --> connection con2
+# Reaping 'call p1()'...
+# --> connection default
+drop function f1;
+drop function f2;
+drop procedure p1;
+#
+# 10) A select from information_schema.routines now
+# flushes the stored routines caches. Test that this
+# does not remove from the cache a stored routine
+# that is already prelocked.
+#
+create function f1() returns int return get_lock("30977", 100000);
+create function f2() returns int return 2;
+create function f3() returns varchar(255)
+begin
+declare res varchar(255);
+declare c cursor for select routine_name from
+information_schema.routines where routine_name='f1';
+select f1() into @var;
+open c;
+fetch c into res;
+close c;
+select f2() into @var;
+return res;
+end|
+# --> connection con1
+select get_lock("30977", 0);
+get_lock("30977", 0)
+1
+# --> connection default
+# Sending 'select f3()'...
+select f3();
+# --> connection con1
+# Waitng for 'select f3()' to get blocked on the user level lock...
+# Do something to change the cache version.
+create function f4() returns int return 4;
+drop function f4;
+select release_lock("30977");
+release_lock("30977")
+1
+# --> connection default
+# Reaping 'select f3()'...
+# Routine 'f2()' should exist and get executed successfully.
+f3()
+f1
+select @var;
+@var
+2
+drop function f1;
+drop function f2;
+drop function f3;
+# 11) Check the situation when the connection is flushing the
+# SP cache which contains a procedure that is being executed.
+#
+# Function f1() calls p1(). Procedure p1() has a DROP
+# VIEW statement, which, we know, invalidates the routines cache.
+# During cache flush p1() must not be flushed since it's in
+# use.
+#
+create function f1() returns int
+begin
+call p1();
+return 1;
+end|
+create procedure p1()
+begin
+create view v1 as select 1;
+drop view v1;
+select f1() into @var;
+set @exec_count=@exec_count+1;
+end|
+set @exec_count=0;
+call p1();
+ERROR HY000: Recursive limit 0 (as set by the max_sp_recursion_depth variable) was exceeded for routine p1
+select @exec_count;
+@exec_count
+0
+set @@session.max_sp_recursion_depth=5;
+set @exec_count=0;
+call p1();
+ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
+select @exec_count;
+@exec_count
+0
+drop procedure p1;
+drop function f1;
+set @@session.max_sp_recursion_depth=default;
+# --> connection con1
+# --> connection con2
+# --> connection con3
+# --> connection default
+#
+# End of 5.5 tests
+#
diff --git a/mysql-test/r/sp-threads.result b/mysql-test/r/sp-threads.result
index 953830ecc87..a14d099c673 100644
--- a/mysql-test/r/sp-threads.result
+++ b/mysql-test/r/sp-threads.result
@@ -35,7 +35,7 @@ call bug9486();
show processlist;
Id User Host db Command Time State Info
# root localhost test Sleep # NULL
-# root localhost test Query # Locked update t1, t2 set val= 1 where id1=id2
+# root localhost test Query # Waiting for table update t1, t2 set val= 1 where id1=id2
# root localhost test Query # NULL show processlist
# root localhost test Sleep # NULL
unlock tables;
diff --git a/mysql-test/r/sp-vars.result b/mysql-test/r/sp-vars.result
index f167986e82c..6f5b6dfb224 100644
--- a/mysql-test/r/sp-vars.result
+++ b/mysql-test/r/sp-vars.result
@@ -394,10 +394,10 @@ CASE expression tests.
DROP PROCEDURE IF EXISTS p1;
Warnings:
-Note 1305 PROCEDURE p1 does not exist
+Note 1305 PROCEDURE test.p1 does not exist
DROP PROCEDURE IF EXISTS p2;
Warnings:
-Note 1305 PROCEDURE p2 does not exist
+Note 1305 PROCEDURE test.p2 does not exist
DROP TABLE IF EXISTS t1;
Warnings:
Note 1051 Unknown table 't1'
diff --git a/mysql-test/r/sp.result b/mysql-test/r/sp.result
index 29af7a51283..cd7874be414 100644
--- a/mysql-test/r/sp.result
+++ b/mysql-test/r/sp.result
@@ -1083,11 +1083,9 @@ select f0()|
f0()
100
select * from v0|
-f0()
-100
+ERROR HY000: Table 'v0' was not locked with LOCK TABLES
select *, f0() from v0, (select 123) as d1|
-f0() 123 f0()
-100 123 100
+ERROR HY000: Table 'v0' was not locked with LOCK TABLES
select id, f3() from t1|
ERROR HY000: Table 't1' was not locked with LOCK TABLES
select f4()|
@@ -2406,7 +2404,7 @@ Level Code Message
Field Type Null Key Default Extra
id char(16) NO
data int(11) NO NULL
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
Database Table In_use Name_locked
Variable_name Value
Tables_in_test (foo)
@@ -2427,7 +2425,7 @@ Level Code Message
Field Type Null Key Default Extra
id char(16) NO
data int(11) NO NULL
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
Database Table In_use Name_locked
Variable_name Value
Tables_in_test (foo)
@@ -2697,10 +2695,10 @@ delete from t3|
insert into t3 values(1)|
drop procedure if exists bug7992_1|
Warnings:
-Note 1305 PROCEDURE bug7992_1 does not exist
+Note 1305 PROCEDURE test.bug7992_1 does not exist
drop procedure if exists bug7992_2|
Warnings:
-Note 1305 PROCEDURE bug7992_2 does not exist
+Note 1305 PROCEDURE test.bug7992_2 does not exist
create procedure bug7992_1()
begin
declare i int;
@@ -7149,3 +7147,62 @@ SELECT routine_comment FROM information_schema.routines WHERE routine_name = "p1
routine_comment
12345678901234567890123456789012345678901234567890123456789012345678901234567890
DROP PROCEDURE p1;
+#
+# Bug #47313 assert in check_key_in_view during CALL procedure
+#
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS t1, t2_unrelated;
+DROP PROCEDURE IF EXISTS p1;
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE VIEW t1 AS SELECT 10 AS f1;
+# t1 refers to the view
+CALL p1(1);
+ERROR HY000: The target table t1 of the INSERT is not insertable-into
+CREATE TEMPORARY TABLE t1 (f1 INT);
+# t1 still refers to the view since it was inlined
+CALL p1(2);
+ERROR HY000: The target table t1 of the INSERT is not insertable-into
+DROP VIEW t1;
+# t1 now refers to the temporary table
+CALL p1(3);
+# Check which values were inserted into the temp table.
+SELECT * FROM t1;
+f1
+3
+DROP TEMPORARY TABLE t1;
+DROP PROCEDURE p1;
+# Now test what happens if the sp cache is invalidated.
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE VIEW t1 AS SELECT 10 AS f1;
+CREATE VIEW v2_unrelated AS SELECT 1 AS r1;
+# Load the procedure into the sp cache
+CALL p1(4);
+ERROR HY000: The target table t1 of the INSERT is not insertable-into
+CREATE TEMPORARY TABLE t1 (f1 int);
+ALTER VIEW v2_unrelated AS SELECT 2 AS r1;
+# Alter view causes the sp cache to be invalidated.
+# Now t1 refers to the temporary table, not the view.
+CALL p1(5);
+# Check which values were inserted into the temp table.
+SELECT * FROM t1;
+f1
+5
+DROP TEMPORARY TABLE t1;
+DROP VIEW t1, v2_unrelated;
+DROP PROCEDURE p1;
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE TEMPORARY TABLE t1 (f1 INT);
+# t1 refers to the temporary table
+CALL p1(6);
+CREATE VIEW t1 AS SELECT 10 AS f1;
+# Create view causes the sp cache to be invalidated.
+# t1 still refers to the temporary table since it shadows the view.
+CALL p1(7);
+DROP VIEW t1;
+# Check which values were inserted into the temp table.
+SELECT * FROM t1;
+f1
+6
+7
+DROP TEMPORARY TABLE t1;
+DROP PROCEDURE p1;
diff --git a/mysql-test/r/sp_notembedded.result b/mysql-test/r/sp_notembedded.result
index 228fe008447..e4170cc3a49 100644
--- a/mysql-test/r/sp_notembedded.result
+++ b/mysql-test/r/sp_notembedded.result
@@ -21,11 +21,11 @@ end|
call bug4902_2()|
show warnings|
Level Code Message
-Note 1305 PROCEDURE bug4902_2 does not exist
+Note 1305 PROCEDURE test.bug4902_2 does not exist
call bug4902_2()|
show warnings|
Level Code Message
-Note 1305 PROCEDURE bug4902_2 does not exist
+Note 1305 PROCEDURE test.bug4902_2 does not exist
drop procedure bug4902_2|
drop table if exists t1|
create table t1 (
@@ -270,6 +270,17 @@ SELECT RELEASE_LOCK('Bug44521');
RELEASE_LOCK('Bug44521')
1
DROP PROCEDURE p;
+CREATE TABLE t1(a int);
+INSERT INTO t1 VALUES (1);
+CREATE FUNCTION f1 (inp TEXT) RETURNS INT NO SQL RETURN sleep(60);
+CREATE VIEW v1 AS SELECT f1('a') FROM t1;
+SELECT * FROM v1;;
+SELECT * FROM v1;
+ERROR 70100: Query execution was interrupted
+ERROR 70100: Query execution was interrupted
+DROP VIEW v1;
+DROP TABLE t1;
+DROP FUNCTION f1;
# ------------------------------------------------------------------
# -- End of 5.1 tests
# ------------------------------------------------------------------
diff --git a/mysql-test/r/ssl.result b/mysql-test/r/ssl.result
index 9ad515a53a3..3ecc36f5f45 100644
--- a/mysql-test/r/ssl.result
+++ b/mysql-test/r/ssl.result
@@ -2087,10 +2087,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/ssl_compress.result b/mysql-test/r/ssl_compress.result
index 1bd427a65e2..1e21dab265e 100644
--- a/mysql-test/r/ssl_compress.result
+++ b/mysql-test/r/ssl_compress.result
@@ -2090,10 +2090,10 @@ fld6 char(4) latin1_swedish_ci NO #
show full columns from t2 from test like 's%';
Field Type Collation Null Key Default Extra Privileges Comment
show keys from t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
-t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
-t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 auto A 1199 NULL NULL BTREE
+t2 0 fld1 1 fld1 A 1199 NULL NULL BTREE
+t2 1 fld3 1 fld3 A NULL NULL NULL BTREE
drop table t4, t3, t2, t1;
CREATE TABLE t1 (
cont_nr int(11) NOT NULL auto_increment,
diff --git a/mysql-test/r/strict.result b/mysql-test/r/strict.result
index bdb7576f95e..a835f021d3a 100644
--- a/mysql-test/r/strict.result
+++ b/mysql-test/r/strict.result
@@ -1183,7 +1183,7 @@ drop table t1;
create table t1 (col1 tinyint);
drop procedure if exists t1;
Warnings:
-Note 1305 PROCEDURE t1 does not exist
+Note 1305 PROCEDURE test.t1 does not exist
create procedure t1 () begin declare exit handler for sqlexception
select'a'; insert into t1 values (200); end;|
call t1();
@@ -1304,8 +1304,42 @@ set @@sql_mode= @org_mode;
set @@sql_mode='traditional';
create table t1 (i int)
comment '123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*123456789*';
-ERROR HY000: Comment for table 't1' is too long (max = 60)
+ERROR HY000: Comment for table 't1' is too long (max = 2048)
create table t1 (
i int comment
'123456789*123456789*123456789*123456789*
@@ -1314,8 +1348,28 @@ i int comment
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
-ERROR HY000: Comment for field 'i' is too long (max = 255)
+ERROR HY000: Comment for field 'i' is too long (max = 1024)
set @@sql_mode= @org_mode;
create table t1
(i int comment
@@ -1325,9 +1379,29 @@ create table t1
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
Warnings:
-Warning 1629 Comment for field 'i' is too long (max = 255)
+Warning 1629 Comment for field 'i' is too long (max = 1024)
select column_name, column_comment from information_schema.columns where
table_schema = 'test' and table_name = 't1';
column_name column_comment
@@ -1337,6 +1411,24 @@ i 123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*12345
drop table t1;
set names utf8;
create table t1 (i int)
diff --git a/mysql-test/r/subselect.result b/mysql-test/r/subselect.result
index cd7af9651b9..640cc4f1452 100644
--- a/mysql-test/r/subselect.result
+++ b/mysql-test/r/subselect.result
@@ -4886,4 +4886,16 @@ FROM t1,t1 a
);
1
DROP TABLE t1;
+#
+# Bug #45989 take 2 : memory leak after explain encounters an
+# error in the query
+#
+CREATE TABLE t1(a LONGTEXT);
+INSERT INTO t1 VALUES (repeat('a',@@global.max_allowed_packet));
+INSERT INTO t1 VALUES (repeat('b',@@global.max_allowed_packet));
+EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
+(SELECT DISTINCTROW a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1
+WHERE t1.a = d1.a;
+ERROR 42S22: Unknown column 'd1.a' in 'where clause'
+DROP TABLE t1;
End of 5.1 tests.
diff --git a/mysql-test/r/trigger.result b/mysql-test/r/trigger.result
index 47b50b233b3..5c63604a325 100644
--- a/mysql-test/r/trigger.result
+++ b/mysql-test/r/trigger.result
@@ -2162,3 +2162,23 @@ Warning 1265 Data truncated for column 'trg2' at row 1
DROP TRIGGER trg1;
DROP TRIGGER trg2;
DROP TABLE t1;
+#
+# Bug #46747 "Crash in MDL_ticket::upgrade_shared_lock_to_exclusive
+# on TRIGGER + TEMP table".
+#
+drop trigger if exists t1_bi;
+drop temporary table if exists t1;
+drop table if exists t1;
+create table t1 (i int);
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+# Create temporary table which shadows base table with trigger.
+create temporary table t1 (j int);
+# Dropping of trigger should succeed.
+drop trigger t1_bi;
+select trigger_name from information_schema.triggers
+where event_object_schema = 'test' and event_object_table = 't1';
+trigger_name
+# Clean-up.
+drop temporary table t1;
+drop table t1;
+End of 6.0 tests.
diff --git a/mysql-test/r/truncate.result b/mysql-test/r/truncate.result
index b194f9b7dc6..8f237c81e75 100644
--- a/mysql-test/r/truncate.result
+++ b/mysql-test/r/truncate.result
@@ -1,4 +1,4 @@
-drop table if exists t1;
+drop table if exists t1, t2;
create table t1 (a integer, b integer,c1 CHAR(10));
insert into t1 (a) values (1),(2);
truncate table t1;
@@ -60,3 +60,102 @@ truncate table v1;
ERROR 42S02: Table 'test.v1' doesn't exist
drop view v1;
drop table t1;
+#
+# Bug#20667 - Truncate table fails for a write locked table
+#
+CREATE TABLE t1 (c1 INT);
+LOCK TABLE t1 WRITE;
+INSERT INTO t1 VALUES (1);
+SELECT * FROM t1;
+c1
+1
+TRUNCATE TABLE t1;
+SELECT * FROM t1;
+c1
+UNLOCK TABLES;
+LOCK TABLE t1 READ;
+TRUNCATE TABLE t1;
+ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
+UNLOCK TABLES;
+CREATE TABLE t2 (c1 INT);
+LOCK TABLE t2 WRITE;
+TRUNCATE TABLE t1;
+ERROR HY000: Table 't1' was not locked with LOCK TABLES
+UNLOCK TABLES;
+CREATE VIEW v1 AS SELECT t1.c1 FROM t1,t2 WHERE t1.c1 = t2.c1;
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t2 VALUES (1), (3), (4);
+SELECT * FROM v1;
+c1
+1
+3
+TRUNCATE v1;
+ERROR 42S02: Table 'test.v1' doesn't exist
+SELECT * FROM v1;
+c1
+1
+3
+LOCK TABLE t1 WRITE;
+SELECT * FROM v1;
+ERROR HY000: Table 'v1' was not locked with LOCK TABLES
+TRUNCATE v1;
+ERROR 42S02: Table 'test.v1' doesn't exist
+SELECT * FROM v1;
+ERROR HY000: Table 'v1' was not locked with LOCK TABLES
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, t2 WRITE;
+SELECT * FROM v1;
+ERROR HY000: Table 'v1' was not locked with LOCK TABLES
+TRUNCATE v1;
+ERROR 42S02: Table 'test.v1' doesn't exist
+SELECT * FROM v1;
+ERROR HY000: Table 'v1' was not locked with LOCK TABLES
+UNLOCK TABLES;
+LOCK TABLE v1 WRITE;
+SELECT * FROM v1;
+c1
+1
+3
+TRUNCATE v1;
+ERROR 42S02: Table 'test.v1' doesn't exist
+SELECT * FROM v1;
+c1
+1
+3
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, t2 WRITE, v1 WRITE;
+SELECT * FROM v1;
+c1
+1
+3
+TRUNCATE v1;
+ERROR 42S02: Table 'test.v1' doesn't exist
+SELECT * FROM v1;
+c1
+1
+3
+UNLOCK TABLES;
+DROP VIEW v1;
+DROP TABLE t1, t2;
+CREATE PROCEDURE p1() SET @a = 5;
+TRUNCATE p1;
+ERROR 42S02: Table 'test.p1' doesn't exist
+SHOW CREATE PROCEDURE p1;
+Procedure sql_mode Create Procedure character_set_client collation_connection Database Collation
+p1 CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
+SET @a = 5 latin1 latin1_swedish_ci latin1_swedish_ci
+DROP PROCEDURE p1;
+#
+# Bug#46452 Crash in MDL, HANDLER OPEN + TRUNCATE TABLE
+#
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1 AS SELECT 1 AS f1;
+HANDLER t1 OPEN;
+# Here comes the crash.
+TRUNCATE t1;
+# Currently TRUNCATE, just like other DDL, implicitly closes
+# open HANDLER table.
+HANDLER t1 READ FIRST;
+ERROR 42S02: Unknown table 't1' in HANDLER
+DROP TABLE t1;
+# End of 6.0 tests
diff --git a/mysql-test/r/truncate_coverage.result b/mysql-test/r/truncate_coverage.result
new file mode 100644
index 00000000000..7a5021f55e2
--- /dev/null
+++ b/mysql-test/r/truncate_coverage.result
@@ -0,0 +1,73 @@
+SET DEBUG_SYNC='RESET';
+DROP TABLE IF EXISTS t1;
+#
+# Bug#20667 - Truncate table fails for a write locked table
+#
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# connection con1
+HANDLER t1 OPEN;
+#
+# connection default
+LOCK TABLE t1 WRITE;
+SET DEBUG_SYNC='mdl_upgrade_shared_lock_to_exclusive SIGNAL waiting';
+TRUNCATE TABLE t1;
+#
+# connection con2
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+KILL QUERY @id;
+#
+# connection con1
+# Release shared metadata lock by closing HANDLER.
+HANDLER t1 CLOSE;
+#
+# connection default
+ERROR 70100: Query execution was interrupted
+UNLOCK TABLES;
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# connection con1
+HANDLER t1 OPEN;
+#
+# connection default
+LOCK TABLE t1 WRITE;
+SET DEBUG_SYNC='mdl_upgrade_shared_lock_to_exclusive SIGNAL waiting';
+TRUNCATE TABLE t1;
+#
+# connection con2
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+#
+# connection con1
+HANDLER t1 CLOSE;
+#
+# connection default
+ERROR 42S02: Table 'test.t1' doesn't exist
+UNLOCK TABLES;
+DROP TABLE t1;
+ERROR 42S02: Unknown table 't1'
+SET DEBUG_SYNC='RESET';
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# connection con1
+START TRANSACTION;
+INSERT INTO t1 VALUES (2);
+#
+# connection default
+SET DEBUG_SYNC='mdl_acquire_lock_wait SIGNAL waiting';
+TRUNCATE TABLE t1;
+#
+# connection con1
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+KILL QUERY @id;
+COMMIT;
+#
+# connection default
+ERROR 70100: Query execution was interrupted
+UNLOCK TABLES;
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
diff --git a/mysql-test/r/type_bit.result b/mysql-test/r/type_bit.result
index e8c8c6c65a4..f2f21b90e06 100644
--- a/mysql-test/r/type_bit.result
+++ b/mysql-test/r/type_bit.result
@@ -785,4 +785,19 @@ t1 CREATE TABLE `t1` (
KEY `a` (`a`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
+#
+# Bug#50591 bit(31) causes Duplicate entry '1-NULL' for key 'group_key'
+#
+CREATE TABLE t1(a INT, b BIT(7) NOT NULL);
+INSERT INTO t1 VALUES (NULL, 0),(NULL, 0);
+SELECT SUM(a) FROM t1 GROUP BY b, a;
+SUM(a)
+NULL
+DROP TABLE t1;
+CREATE TABLE t1(a INT, b BIT(7) NOT NULL, c BIT(8) NOT NULL);
+INSERT INTO t1 VALUES (NULL, 0, 0),(NULL, 0, 0);
+SELECT SUM(a) FROM t1 GROUP BY c, b, a;
+SUM(a)
+NULL
+DROP TABLE t1;
End of 5.1 tests
diff --git a/mysql-test/r/type_datetime.result b/mysql-test/r/type_datetime.result
index 054fda90c02..b5d16316c92 100644
--- a/mysql-test/r/type_datetime.result
+++ b/mysql-test/r/type_datetime.result
@@ -449,11 +449,11 @@ f4 datetime YES NULL
create table t5 as select coalesce(f1,f3) as f4 from t1;
desc t5;
Field Type Null Key Default Extra
-f4 varbinary(20) YES NULL
+f4 varchar(20) YES NULL
create table t6 as select coalesce(f2,f3) as f4 from t1;
desc t6;
Field Type Null Key Default Extra
-f4 varbinary(20) YES NULL
+f4 varchar(20) YES NULL
create table t7 as select coalesce(makedate(1997,1),f2) as f4 from t1;
desc t7;
Field Type Null Key Default Extra
diff --git a/mysql-test/r/type_ranges.result b/mysql-test/r/type_ranges.result
index 5e915fbfa2d..ac3d52b9ead 100644
--- a/mysql-test/r/type_ranges.result
+++ b/mysql-test/r/type_ranges.result
@@ -68,21 +68,21 @@ longblob_col longblob NULL NO NULL #
options enum('one','two','tree') latin1_swedish_ci NO MUL NULL #
flags set('one','two','tree') latin1_swedish_ci NO #
show keys from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 auto A 0 NULL NULL BTREE
-t1 1 utiny 1 utiny A NULL NULL NULL BTREE
-t1 1 tiny 1 tiny A NULL NULL NULL BTREE
-t1 1 short 1 short A NULL NULL NULL BTREE
-t1 1 any_name 1 medium A NULL NULL NULL BTREE
-t1 1 longlong 1 longlong A NULL NULL NULL BTREE
-t1 1 real_float 1 real_float A NULL NULL NULL BTREE
-t1 1 ushort 1 ushort A NULL NULL NULL BTREE
-t1 1 umedium 1 umedium A NULL NULL NULL BTREE
-t1 1 ulong 1 ulong A NULL NULL NULL BTREE
-t1 1 ulonglong 1 ulonglong A NULL NULL NULL BTREE
-t1 1 ulonglong 2 ulong A NULL NULL NULL BTREE
-t1 1 options 1 options A NULL NULL NULL BTREE
-t1 1 options 2 flags A NULL NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 auto A 0 NULL NULL BTREE
+t1 1 utiny 1 utiny A NULL NULL NULL BTREE
+t1 1 tiny 1 tiny A NULL NULL NULL BTREE
+t1 1 short 1 short A NULL NULL NULL BTREE
+t1 1 any_name 1 medium A NULL NULL NULL BTREE
+t1 1 longlong 1 longlong A NULL NULL NULL BTREE
+t1 1 real_float 1 real_float A NULL NULL NULL BTREE
+t1 1 ushort 1 ushort A NULL NULL NULL BTREE
+t1 1 umedium 1 umedium A NULL NULL NULL BTREE
+t1 1 ulong 1 ulong A NULL NULL NULL BTREE
+t1 1 ulonglong 1 ulonglong A NULL NULL NULL BTREE
+t1 1 ulonglong 2 ulong A NULL NULL NULL BTREE
+t1 1 options 1 options A NULL NULL NULL BTREE
+t1 1 options 2 flags A NULL NULL NULL BTREE
CREATE UNIQUE INDEX test on t1 ( auto ) ;
CREATE INDEX test2 on t1 ( ulonglong,ulong) ;
CREATE INDEX test3 on t1 ( medium ) ;
@@ -271,7 +271,7 @@ drop table t2;
create table t2 (primary key (auto)) select auto+1 as auto,1 as t1, 'a' as t2, repeat('a',256) as t3, binary repeat('b',256) as t4, repeat('a',4096) as t5, binary repeat('b',4096) as t6, '' as t7, binary '' as t8 from t1;
show full columns from t2;
Field Type Collation Null Key Default Extra Privileges Comment
-auto bigint(12) unsigned NULL NO PRI 0 #
+auto int(6) unsigned NULL NO PRI 0 #
t1 int(1) NULL NO 0 #
t2 varchar(1) latin1_swedish_ci NO #
t3 varchar(256) latin1_swedish_ci NO #
diff --git a/mysql-test/r/type_timestamp.result b/mysql-test/r/type_timestamp.result
index fd13f53d02b..672b4d423a3 100644
--- a/mysql-test/r/type_timestamp.result
+++ b/mysql-test/r/type_timestamp.result
@@ -503,3 +503,19 @@ f1 f2-f3
5 0
DROP TABLE t1;
End of 5.0 tests
+
+Bug#50888 valgrind warnings in Field_timestamp::val_str
+
+SET TIMESTAMP=0;
+CREATE TABLE t1(a timestamp);
+INSERT INTO t1 VALUES ('2008-02-23 09:23:45'), ('2010-03-05 11:08:02');
+FLUSH TABLES t1;
+SELECT MAX(a) FROM t1;
+MAX(a)
+2010-03-05 11:08:02
+SELECT a FROM t1;
+a
+2008-02-23 09:23:45
+2010-03-05 11:08:02
+DROP TABLE t1;
+End of Bug#50888
diff --git a/mysql-test/r/udf.result b/mysql-test/r/udf.result
index fbf87b2e4cc..4ddf427df8c 100644
--- a/mysql-test/r/udf.result
+++ b/mysql-test/r/udf.result
@@ -392,6 +392,52 @@ a
4
DROP FUNCTION sequence;
DROP TABLE t1,t2;
+drop function if exists test.metaphon;
+drop function if exists metaphon;
+CREATE FUNCTION metaphon RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
+select metaphon("Hello");
+metaphon("Hello")
+HL
+drop function if exists test.metaphon;
+Warnings:
+Note 1305 FUNCTION test.metaphon does not exist
+select metaphon("Hello");
+metaphon("Hello")
+HL
+drop function metaphon;
+CREATE FUNCTION test.metaphon(a TEXT) RETURNS TEXT return "This is a SF";
+create database db_31767;
+use db_31767;
+CREATE FUNCTION metaphon RETURNS STRING SONAME "UDF_EXAMPLE_LIB";
+use test;
+select metaphon("Hello");
+metaphon("Hello")
+HL
+select test.metaphon("Hello");
+test.metaphon("Hello")
+This is a SF
+drop function metaphon;
+select metaphon("Hello");
+metaphon("Hello")
+This is a SF
+drop function metaphon;
+use db_31767;
+drop database db_31767;
+drop function if exists no_such_func;
+Warnings:
+Note 1305 FUNCTION (UDF) no_such_func does not exist
+drop function no_such_func;
+ERROR 42000: FUNCTION (UDF) no_such_func does not exist
+drop function if exists test.no_such_func;
+Warnings:
+Note 1305 FUNCTION test.no_such_func does not exist
+drop function test.no_such_func;
+ERROR 42000: FUNCTION test.no_such_func does not exist
+drop procedure if exists no_such_proc;
+ERROR 3D000: No database selected
+drop procedure no_such_proc;
+ERROR 3D000: No database selected
+use test;
#
# Bug#46259: 5.0.83 -> 5.1.36, query doesn't work
#
diff --git a/mysql-test/r/union.result b/mysql-test/r/union.result
index 71f7547386f..2d0914474a4 100644
--- a/mysql-test/r/union.result
+++ b/mysql-test/r/union.result
@@ -554,7 +554,7 @@ aa
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `a` varbinary(2) NOT NULL DEFAULT ''
+ `a` varchar(2) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT 12 as a UNION select 12.2 as a;
@@ -655,7 +655,7 @@ f
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `f` varbinary(12) DEFAULT NULL
+ `f` varchar(12) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT y from t2 UNION select da from t2;
@@ -666,7 +666,7 @@ y
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `y` varbinary(10) DEFAULT NULL
+ `y` varchar(10) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT y from t2 UNION select dt from t2;
@@ -677,7 +677,7 @@ y
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `y` varbinary(19) DEFAULT NULL
+ `y` varchar(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT da from t2 UNION select dt from t2;
@@ -699,7 +699,7 @@ testc
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `dt` varbinary(19) DEFAULT NULL
+ `dt` varchar(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT dt from t2 UNION select sv from t2;
@@ -710,7 +710,7 @@ testv
show create table t1;
Table Create Table
t1 CREATE TABLE `t1` (
- `dt` varbinary(19) DEFAULT NULL
+ `dt` varchar(19) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1
drop table t1;
create table t1 SELECT sc from t2 UNION select sv from t2;
diff --git a/mysql-test/r/variables.result b/mysql-test/r/variables.result
index a8437961117..b46f7c3bada 100644
--- a/mysql-test/r/variables.result
+++ b/mysql-test/r/variables.result
@@ -569,9 +569,6 @@ set sql_big_tables=1;
set sql_buffer_result=1;
set sql_log_bin=1;
set sql_log_off=1;
-set sql_log_update=1;
-Warnings:
-Note 1315 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored. This option will be removed in MySQL 5.6.
set sql_low_priority_updates=1;
set sql_quote_show_create=1;
set sql_safe_updates=1;
@@ -1066,11 +1063,9 @@ set global default_storage_engine =@my_storage_engine;
set global thread_cache_size =@my_thread_cache_size;
set global max_allowed_packet =@my_max_allowed_packet;
set global join_buffer_size =@my_join_buffer_size;
-show global variables where Variable_name='table_definition_cache' or
-Variable_name='table_lock_wait_timeout';
+show global variables where Variable_name='table_definition_cache';
Variable_name Value
table_definition_cache #
-table_lock_wait_timeout #
# --
# -- Bug#34820: log_output can be set to illegal value.
diff --git a/mysql-test/r/variables+c.result b/mysql-test/r/variables_community.result
index 7a2976d1267..7a2976d1267 100644
--- a/mysql-test/r/variables+c.result
+++ b/mysql-test/r/variables_community.result
diff --git a/mysql-test/r/view.result b/mysql-test/r/view.result
index a54db7240a4..52f88a00d22 100644
--- a/mysql-test/r/view.result
+++ b/mysql-test/r/view.result
@@ -839,7 +839,7 @@ ERROR HY000: View 'test.v1' references invalid table(s) or column(s) or function
show table status;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
t1 MyISAM 10 Fixed 0 0 0 # 1024 0 NULL # # NULL latin1_swedish_ci NULL
-v1 NULL NULL NULL NULL NULL NULL # NULL NULL NULL # # NULL NULL NULL NULL View 'test.v1' references invalid table(s) or column(s) or function(s) or define
+v1 NULL NULL NULL NULL NULL NULL # NULL NULL NULL # # NULL NULL NULL NULL View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
drop view v1;
drop table t1;
create view v1 as select 99999999999999999999999999999999999999999999999999999 as col1;
@@ -1102,10 +1102,8 @@ select * from v1;
a
select * from t2;
ERROR HY000: Table 't2' was not locked with LOCK TABLES
-drop view v1;
-drop table t1, t2;
-ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
unlock tables;
+drop view v1;
drop table t1, t2;
create table t1 (a int);
create view v1 as select * from t1 where a < 2 with check option;
@@ -1957,15 +1955,15 @@ CHECK TABLE v1, v2, v3, v4, v5, v6;
Table Op Msg_type Msg_text
test.v1 check Error FUNCTION test.f1 does not exist
test.v1 check Error View 'test.v1' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
-test.v1 check error Corrupt
+test.v1 check status Operation failed
test.v2 check status OK
test.v3 check Error FUNCTION test.f1 does not exist
test.v3 check Error View 'test.v3' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
-test.v3 check error Corrupt
+test.v3 check status Operation failed
test.v4 check status OK
test.v5 check Error FUNCTION test.f1 does not exist
test.v5 check Error View 'test.v5' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them
-test.v5 check error Corrupt
+test.v5 check status Operation failed
test.v6 check status OK
create function f1 () returns int return (select max(col1) from t1);
DROP TABLE t1;
@@ -2088,7 +2086,7 @@ CREATE TABLE t1 ( bug_table_seq INTEGER NOT NULL);
CREATE OR REPLACE VIEW v1 AS SELECT * from t1;
DROP PROCEDURE IF EXISTS p1;
Warnings:
-Note 1305 PROCEDURE p1 does not exist
+Note 1305 PROCEDURE test.p1 does not exist
CREATE PROCEDURE p1 ( )
BEGIN
DO (SELECT @next := IFNULL(max(bug_table_seq),0) + 1 FROM v1);
@@ -3687,7 +3685,7 @@ c1 c2
2 2
CREATE VIEW v1 AS SELECT c1, c2 FROM t1;
SHOW INDEX FROM v1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
SELECT * FROM v1 USE INDEX (PRIMARY) WHERE c1=2;
ERROR 42000: Key 'PRIMARY' doesn't exist in table 'v1'
SELECT * FROM v1 FORCE INDEX (PRIMARY) WHERE c1=2;
@@ -3958,6 +3956,36 @@ CREATE VIEW v1 AS SELECT a FROM t1;
ALTER TABLE v1;
DROP VIEW v1;
DROP TABLE t1;
+#
+# Bug#48449: hang on show create view after upgrading when
+# view contains function of view
+#
+DROP VIEW IF EXISTS v1,v2;
+DROP TABLE IF EXISTS t1,t2;
+DROP FUNCTION IF EXISTS f1;
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a INT);
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+SELECT a FROM v2 INTO @a;
+RETURN @a;
+END//
+# Trigger pre-locking when opening v2.
+CREATE VIEW v1 AS SELECT f1() FROM t1;
+SHOW CREATE VIEW v1;
+View Create View character_set_client collation_connection
+v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `f1`() AS `f1()` from `t1` latin1 latin1_swedish_ci
+Warnings:
+Note 1599 View `test`.`v2` has no creation context
+DROP VIEW v1,v2;
+DROP TABLE t1,t2;
+DROP FUNCTION f1;
+CREATE TABLE t1(f1 INT);
+INSERT INTO t1 VALUES ();
+CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE
+ROW(1,1) >= ROW(1, (SELECT 1 FROM t1 WHERE f1 >= ANY ( SELECT '1' )));
+DROP VIEW v1;
+DROP TABLE t1;
# -----------------------------------------------------------------
# -- End of 5.1 tests.
# -----------------------------------------------------------------
@@ -3974,3 +4002,68 @@ create view v_9801 as
select sum(s1) from t_9801 group by s1 with rollup with check option;
ERROR HY000: CHECK OPTION on non-updatable view 'test.v_9801'
drop table t_9801;
+#
+# Bug #47335 assert in get_table_share
+#
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+CREATE TEMPORARY TABLE t1 (id INT);
+ALTER VIEW t1 AS SELECT 1 AS f1;
+ERROR 42S02: Table 'test.t1' doesn't exist
+DROP TABLE t1;
+CREATE VIEW v1 AS SELECT 1 AS f1;
+CREATE TEMPORARY TABLE v1 (id INT);
+ALTER VIEW v1 AS SELECT 2 AS f1;
+DROP TABLE v1;
+SELECT * FROM v1;
+f1
+2
+DROP VIEW v1;
+#
+# Bug #47635 assert in start_waiting_global_read_lock
+# during CREATE VIEW
+#
+DROP TABLE IF EXISTS t1, t2;
+DROP VIEW IF EXISTS t2;
+CREATE TABLE t1 (f1 integer);
+CREATE TEMPORARY TABLE IF NOT EXISTS t1 (f1 integer);
+CREATE TEMPORARY TABLE t2 (f1 integer);
+DROP TABLE t1;
+FLUSH TABLES WITH READ LOCK;
+CREATE VIEW t2 AS SELECT * FROM t1;
+ERROR HY000: Can't execute the query because you have a conflicting read lock
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+#
+# Bug#48315 Metadata lock is not taken for merged views that
+# use an INFORMATION_SCHEMA table
+#
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+DROP PROCEDURE IF EXISTS p1;
+# Connection default
+CREATE VIEW v1 AS SELECT schema_name FROM information_schema.schemata;
+CREATE TABLE t1 (str VARCHAR(50));
+CREATE PROCEDURE p1() INSERT INTO t1 SELECT * FROM v1;
+# CALL p1() so the view is merged.
+CALL p1();
+# Connection 3
+LOCK TABLE t1 READ;
+# Connection default
+# Try to CALL p1() again, this time it should block for t1.
+# Sending:
+CALL p1();
+# Connection 2
+# ... then try to drop the view. This should block.
+# Sending:
+DROP VIEW v1;
+# Connection 3
+# Now allow CALL p1() to complete
+UNLOCK TABLES;
+# Connection default
+# Reaping: CALL p1()
+# Connection 2
+# Reaping: DROP VIEW v1
+# Connection default
+DROP PROCEDURE p1;
+DROP TABLE t1;
diff --git a/mysql-test/r/view_grant.result b/mysql-test/r/view_grant.result
index 65fbf2d87b6..1412df20012 100644
--- a/mysql-test/r/view_grant.result
+++ b/mysql-test/r/view_grant.result
@@ -779,9 +779,9 @@ GRANT CREATE VIEW ON db26813.v2 TO u26813@localhost;
GRANT DROP, CREATE VIEW ON db26813.v3 TO u26813@localhost;
GRANT SELECT ON db26813.t1 TO u26813@localhost;
ALTER VIEW v1 AS SELECT f2 FROM t1;
-ERROR 42000: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
+ERROR 42000: CREATE VIEW command denied to user 'u26813'@'localhost' for table 'v1'
ALTER VIEW v2 AS SELECT f2 FROM t1;
-ERROR 42000: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
+ERROR 42000: DROP command denied to user 'u26813'@'localhost' for table 'v2'
ALTER VIEW v3 AS SELECT f2 FROM t1;
ERROR 42000: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
SHOW CREATE VIEW v3;
@@ -1237,3 +1237,14 @@ SELECT a FROM v2;
a
DROP USER mysqluser1;
DROP DATABASE mysqltest1;
+USE test;
+#
+# Bug#47734: Assertion failed: ! is_set() when locking a view with non-existing definer
+#
+DROP VIEW IF EXISTS v1;
+CREATE DEFINER=`unknown`@`unknown` SQL SECURITY DEFINER VIEW v1 AS SELECT 1;
+Warnings:
+Note 1449 The user specified as a definer ('unknown'@'unknown') does not exist
+LOCK TABLES v1 READ;
+ERROR HY000: The user specified as a definer ('unknown'@'unknown') does not exist
+DROP VIEW v1;
diff --git a/mysql-test/r/warnings.result b/mysql-test/r/warnings.result
index 8e70ea8b53d..70b54ffceaf 100644
--- a/mysql-test/r/warnings.result
+++ b/mysql-test/r/warnings.result
@@ -228,13 +228,13 @@ INSERT INTO t2 VALUES ( 'a`', 'a`' );
INSERT INTO t3 VALUES ( 'a`', 'a`', '1000-01-1' );
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE test.sp1 does not exist
DROP PROCEDURE IF EXISTS sp2;
Warnings:
-Note 1305 PROCEDURE sp2 does not exist
+Note 1305 PROCEDURE test.sp2 does not exist
DROP PROCEDURE IF EXISTS sp3;
Warnings:
-Note 1305 PROCEDURE sp3 does not exist
+Note 1305 PROCEDURE test.sp3 does not exist
CREATE PROCEDURE sp1()
BEGIN
DECLARE x NUMERIC ZEROFILL;
diff --git a/mysql-test/std_data/Index.xml b/mysql-test/std_data/Index.xml
index e4964a33419..27358fefd54 100644
--- a/mysql-test/std_data/Index.xml
+++ b/mysql-test/std_data/Index.xml
@@ -33,6 +33,36 @@
</collation>
</charset>
+
+ <charset name="utf8mb4">
+ <collation name="utf8mb4_test_ci" id="326">
+ <rules>
+ <reset>a</reset>
+ <s>b</s>
+ </rules>
+ </collation>
+ </charset>
+
+ <charset name="utf16">
+ <collation name="utf16_test_ci" id="327">
+ <rules>
+ <reset>a</reset>
+ <s>b</s>
+ </rules>
+ </collation>
+ </charset>
+
+
+ <charset name="utf32">
+ <collation name="utf32_test_ci" id="391">
+ <rules>
+ <reset>a</reset>
+ <s>b</s>
+ </rules>
+ </collation>
+ </charset>
+
+
<charset name="ucs2">
<collation name="ucs2_test_ci" id="358">
<rules>
diff --git a/mysql-test/std_data/bug48449.frm b/mysql-test/std_data/bug48449.frm
new file mode 100644
index 00000000000..b6a717427aa
--- /dev/null
+++ b/mysql-test/std_data/bug48449.frm
@@ -0,0 +1,12 @@
+TYPE=VIEW
+query=select `test`.`t2`.`a` AS `a` from `test`.`t2`
+md5=5e6eaf216e7b016fcedfd4e1113517af
+updatable=1
+algorithm=0
+definer_user=root
+definer_host=localhost
+suid=2
+with_check_option=0
+timestamp=2010-01-01 15:00:00
+create-version=1
+source=select * from t2
diff --git a/mysql-test/suite/binlog/r/binlog_format_switch_in_tmp_table.result b/mysql-test/suite/binlog/r/binlog_format_switch_in_tmp_table.result
new file mode 100644
index 00000000000..f886ccb134d
--- /dev/null
+++ b/mysql-test/suite/binlog/r/binlog_format_switch_in_tmp_table.result
@@ -0,0 +1,78 @@
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+CREATE TABLE t1 (a VARCHAR(100));
+CREATE TEMPORARY TABLE t2 (a VARCHAR(100));
+# Test allow switching @@SESSION.binlog_format from MIXED to STATEMENT
+# when there are open temp tables and we are logging in statement based format.
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+STATEMENT
+# Test allow switching @@SESSION.binlog_format from STATEMENT to
+# STATEMENT when there are open temp tables.
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+STATEMENT
+INSERT INTO t1 VALUES ('statement based');
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+STATEMENT
+# Test allow switching @@SESSION.binlog_format from STATEMENT to
+# MIXED when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+# Test allow switching @@SESSION.binlog_format from MIXED to MIXED
+# when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+INSERT INTO t2 VALUES (UUID());
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+# Test forbit switching @@SESSION.binlog_format from MIXED to STATEMENT
+# when there are open temp tables and we are logging in row based format.
+SET SESSION binlog_format = STATEMENT;
+ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+ROW
+INSERT INTO t1 VALUES ('row based');
+# Test allow switching @@SESSION.binlog_format from ROW to MIXED
+# when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+MIXED
+INSERT INTO t1 VALUES ('row based');
+# Test allow switching @@SESSION.binlog_format from MIXED to ROW
+# when there are open temp tables.
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+ROW
+# Test allow switching @@SESSION.binlog_format from ROW to ROW
+# when there are open temp tables.
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+ROW
+INSERT INTO t1 VALUES ('row based');
+# Test forbit switching @@SESSION.binlog_format from ROW to STATEMENT
+# when there are open temp tables.
+SET SESSION binlog_format = STATEMENT;
+ERROR HY000: Cannot switch out of the row-based binary log format when the session has open temporary tables
+SELECT @@SESSION.binlog_format;
+@@SESSION.binlog_format
+ROW
+DROP TEMPORARY TABLE t2;
+DROP TABLE t1;
diff --git a/mysql-test/suite/binlog/r/binlog_row_drop_tbl.result b/mysql-test/suite/binlog/r/binlog_row_drop_tbl.result
new file mode 100644
index 00000000000..8b32e9e5a45
--- /dev/null
+++ b/mysql-test/suite/binlog/r/binlog_row_drop_tbl.result
@@ -0,0 +1,16 @@
+DROP TABLE IF EXISTS t1;
+RESET MASTER;
+CREATE TABLE t1 (a INT);
+SET AUTOCOMMIT=OFF;
+BEGIN;
+INSERT INTO t1 VALUES(1);
+DROP TABLE t1;;
+COMMIT;
+show binlog events from <binlog_start>;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1 (a INT)
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # use `test`; DROP TABLE t1
diff --git a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
index e0cb1b695be..a4db4d65b07 100644
--- a/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
+++ b/mysql-test/suite/binlog/r/binlog_row_mix_innodb_myisam.result
@@ -241,6 +241,7 @@ select (@after:=unix_timestamp())*0;
select (@after-@before) >= 2;
(@after-@before) >= 2
1
+commit;
drop table t1,t2;
commit;
begin;
@@ -744,8 +745,9 @@ ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=3
-master-bin.000001 # Query # # use `test`; insert into t2 values (bug27417(2))
+master-bin.000001 # Table_map # # table_id: # (test.t2)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 3 */;
count(*)
@@ -761,8 +763,9 @@ count(*)
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=4
-master-bin.000001 # Query # # use `test`; delete from t2 where a=bug27417(3)
+master-bin.000001 # Table_map # # table_id: # (test.t2)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 5 */;
count(*)
@@ -784,6 +787,10 @@ insert into t2 values (bug27417(1));
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -795,6 +802,10 @@ insert into t2 select bug27417(1) union select bug27417(2);
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 2 */;
count(*)
2
@@ -806,8 +817,11 @@ ERROR 23000: Duplicate entry '4' for key 'b'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
-master-bin.000001 # Intvar # # INSERT_ID=4
-master-bin.000001 # Query # # use `test`; update t3 set b=b+bug27417(1)
+master-bin.000001 # Table_map # # table_id: # (test.t3)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: #
+master-bin.000001 # Update_rows # # table_id: #
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 2 */;
count(*)
@@ -821,6 +835,10 @@ UPDATE t4,t3 SET t4.a=t3.a + bug27417(1) /* top level non-ta table */;
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 4 */;
count(*)
4
@@ -834,7 +852,7 @@ UPDATE t3,t4 SET t3.a=t4.a + bug27417(1);
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
select count(*) from t1 /* must be 1 */;
count(*)
-1
+2
drop table t4;
delete from t1;
delete from t2;
@@ -848,6 +866,11 @@ delete from t2;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t3)
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -864,6 +887,10 @@ delete t2.* from t2,t5 where t2.a=t5.a + 1;
ERROR 23000: Duplicate entry '1' for key 'PRIMARY'
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
select count(*) from t1 /* must be 1 */;
count(*)
1
@@ -881,6 +908,10 @@ count(*)
2
show binlog events from <binlog_start>;
Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Table_map # # table_id: # (test.t1)
+master-bin.000001 # Write_rows # # table_id: # flags: STMT_END_F
+master-bin.000001 # Query # # COMMIT
drop trigger trg_del_t2;
drop table t1,t2,t3,t4,t5;
drop function bug27417;
diff --git a/mysql-test/suite/binlog/r/binlog_stm_blackhole.result b/mysql-test/suite/binlog/r/binlog_stm_blackhole.result
index 4c1b423720e..9d944b349fd 100644
--- a/mysql-test/suite/binlog/r/binlog_stm_blackhole.result
+++ b/mysql-test/suite/binlog/r/binlog_stm_blackhole.result
@@ -63,9 +63,9 @@ INSERT INTO t1 VALUES('MySQL has now support', 'for full-text search'),
('Function MATCH ... AGAINST()','is used to do a search'),
('Full-text search in MySQL', 'implements vector space model');
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
-t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a NULL NULL NULL NULL YES FULLTEXT
+t1 1 a 2 b NULL NULL NULL NULL YES FULLTEXT
select * from t1 where MATCH(a,b) AGAINST ("collections");
a b
Only MyISAM tables support collections
diff --git a/mysql-test/suite/binlog/r/binlog_stm_drop_tbl.result b/mysql-test/suite/binlog/r/binlog_stm_drop_tbl.result
new file mode 100644
index 00000000000..260092e5561
--- /dev/null
+++ b/mysql-test/suite/binlog/r/binlog_stm_drop_tbl.result
@@ -0,0 +1,15 @@
+DROP TABLE IF EXISTS t1;
+RESET MASTER;
+CREATE TABLE t1 (a INT);
+SET AUTOCOMMIT=OFF;
+BEGIN;
+INSERT INTO t1 VALUES(1);
+DROP TABLE t1;;
+COMMIT;
+show binlog events from <binlog_start>;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1 (a INT)
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES(1)
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # use `test`; DROP TABLE t1
diff --git a/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result b/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
index 11525df9c24..fab65bfb973 100644
--- a/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
+++ b/mysql-test/suite/binlog/r/binlog_stm_mix_innodb_myisam.result
@@ -229,6 +229,7 @@ select (@after:=unix_timestamp())*0;
select (@after-@before) >= 2;
(@after-@before) >= 2
1
+commit;
drop table t1,t2;
commit;
begin;
@@ -519,10 +520,10 @@ end|
reset master;
insert into t2 values (bug27417(1));
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
insert into t2 select bug27417(2);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
reset master;
insert into t2 values (bug27417(2));
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
@@ -542,7 +543,7 @@ count(*)
2
delete from t2 where a=bug27417(3);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t2 /* nothing got deleted */;
count(*)
2
@@ -559,7 +560,7 @@ count(*)
delete t2 from t2 where t2.a=bug27417(100) /* must not affect t2 */;
affected rows: 0
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t1 /* must be 7 */;
count(*)
7
@@ -783,10 +784,10 @@ end|
reset master;
insert into t2 values (bug27417(1));
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
insert into t2 select bug27417(2);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
reset master;
insert into t2 values (bug27417(2));
ERROR 23000: Duplicate entry '2' for key 'PRIMARY'
@@ -805,7 +806,7 @@ count(*)
2
delete from t2 where a=bug27417(3);
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t2 /* nothing got deleted */;
count(*)
2
@@ -821,7 +822,7 @@ count(*)
delete t2 from t2 where t2.a=bug27417(100) /* must not affect t2 */;
affected rows: 0
Warnings:
-Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement updates two AUTO_INCREMENT columns. This is unsafe because the generated value cannot be predicted by slave.
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
select count(*) from t1 /* must be 7 */;
count(*)
7
diff --git a/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result b/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
index c2445aa1d1a..e8fd7b82bc4 100644
--- a/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
+++ b/mysql-test/suite/binlog/r/binlog_stm_unsafe_warning.result
@@ -1,5 +1,6 @@
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a LIMIT clause. This is unsafe because the set of rows included cannot be predicted. .*");
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a system function whose value may differ on slave. .*");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column");
### NOT filtered database => assertion: warnings ARE shown
DROP TABLE IF EXISTS t1;
CREATE TABLE t1 (a int, b int, primary key (a));
@@ -50,3 +51,29 @@ SET GLOBAL log_warnings = @old_log_warnings;
# Count the number of times the "Unsafe" message was printed
# to the error log.
Occurrences: 1
+DROP TABLE IF EXISTS t1, t2;
+CREATE TABLE t1 (a int);
+CREATE TABLE t2 (a int auto_increment primary key, b int);
+CREATE TRIGGER tr_bug50192 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t2 (b) VALUES (1);
+CREATE FUNCTION sf_bug50192() RETURNS INTEGER
+BEGIN
+INSERT INTO t2(b) VALUES(2);
+RETURN 1;
+END |
+INSERT INTO t1 VALUES (0);
+Warnings:
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SHOW WARNINGS;
+Level Code Message
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SELECT sf_bug50192();
+sf_bug50192()
+1
+Warnings:
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+SHOW WARNINGS;
+Level Code Message
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column which is unsafe to binlog in STATEMENT format because slave may execute it non-deterministically.
+DROP FUNCTION sf_bug50192;
+DROP TRIGGER tr_bug50192;
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/binlog/r/binlog_stm_user_variables.result b/mysql-test/suite/binlog/r/binlog_stm_user_variables.result
new file mode 100644
index 00000000000..92a74f63ad9
--- /dev/null
+++ b/mysql-test/suite/binlog/r/binlog_stm_user_variables.result
@@ -0,0 +1,157 @@
+RESET MASTER;
+SET @positive= 18446744073709551615;
+SET @negative= -9223372036854775808;
+CREATE TABLE t1 (`tinyint` TINYINT,
+`smallint` SMALLINT,
+`mediumint` MEDIUMINT,
+`integer` INTEGER,
+`bigint` BIGINT,
+`utinyint` TINYINT UNSIGNED,
+`usmallint` SMALLINT UNSIGNED,
+`umediumint` MEDIUMINT UNSIGNED,
+`uinteger` INTEGER UNSIGNED,
+`ubigint` BIGINT UNSIGNED,
+`double` DOUBLE,
+`float` FLOAT,
+`real` REAL(30,2),
+`decimal` DECIMAL(30,2)) ENGINE = MyISAM;
+### insert max unsigned
+### a) declarative
+INSERT INTO t1 VALUES (18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615,18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615);;
+TRUNCATE t1;
+### b) user var
+INSERT INTO t1 VALUES (@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive);
+## assertion: checks that User_var_log_event::pack_info
+## correctly displays the binlog content by taking into
+## account the unsigned_flag
+show binlog events from <binlog_start>;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1 (`tinyint` TINYINT,
+`smallint` SMALLINT,
+`mediumint` MEDIUMINT,
+`integer` INTEGER,
+`bigint` BIGINT,
+`utinyint` TINYINT UNSIGNED,
+`usmallint` SMALLINT UNSIGNED,
+`umediumint` MEDIUMINT UNSIGNED,
+`uinteger` INTEGER UNSIGNED,
+`ubigint` BIGINT UNSIGNED,
+`double` DOUBLE,
+`float` FLOAT,
+`real` REAL(30,2),
+`decimal` DECIMAL(30,2)) ENGINE = MyISAM
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615,18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615)
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # use `test`; TRUNCATE t1
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # User var # # @`positive`=18446744073709551615
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive)
+master-bin.000001 # Query # # COMMIT
+### insert min signed
+### a) declarative
+INSERT INTO t1 VALUES (-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808,-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808);;
+TRUNCATE t1;
+### b) user var
+INSERT INTO t1 VALUES (@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative);
+## assertion: checks that User_var_log_event::pack_info
+## correctly displays the binlog content by taking into
+## account the unsigned_flag
+show binlog events from <binlog_start>;
+Log_name Pos Event_type Server_id End_log_pos Info
+master-bin.000001 # Query # # use `test`; CREATE TABLE t1 (`tinyint` TINYINT,
+`smallint` SMALLINT,
+`mediumint` MEDIUMINT,
+`integer` INTEGER,
+`bigint` BIGINT,
+`utinyint` TINYINT UNSIGNED,
+`usmallint` SMALLINT UNSIGNED,
+`umediumint` MEDIUMINT UNSIGNED,
+`uinteger` INTEGER UNSIGNED,
+`ubigint` BIGINT UNSIGNED,
+`double` DOUBLE,
+`float` FLOAT,
+`real` REAL(30,2),
+`decimal` DECIMAL(30,2)) ENGINE = MyISAM
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615,18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615)
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # use `test`; TRUNCATE t1
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # User var # # @`positive`=18446744073709551615
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive)
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808,-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808)
+master-bin.000001 # Query # # COMMIT
+master-bin.000001 # Query # # use `test`; TRUNCATE t1
+master-bin.000001 # Query # # BEGIN
+master-bin.000001 # User var # # @`negative`=-9223372036854775808
+master-bin.000001 # Query # # use `test`; INSERT INTO t1 VALUES (@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative)
+master-bin.000001 # Query # # COMMIT
+DROP TABLE t1;
diff --git a/mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test b/mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test
deleted file mode 100644
index 19137066429..00000000000
--- a/mysql-test/suite/binlog/t/binlog_auto_increment_bug33029.test
+++ /dev/null
@@ -1,74 +0,0 @@
-# BUG#33029 5.0 to 5.1 replication fails on dup key when inserting
-# using a trig in SP
-
-# For all 5.0 up to 5.0.58 exclusive, and 5.1 up to 5.1.12 exclusive,
-# if one statement in a SP generated AUTO_INCREMENT value by the top
-# statement, all statements after it would be considered generated
-# AUTO_INCREMENT value by the top statement, and a erroneous INSERT_ID
-# value might be associated with these statement, which could cause
-# duplicate entry error and stop the slave.
-
-# Test if the slave can replicate from such a buggy master
-
-# The bug33029-slave-relay-bin.000001 file is the
-# slave-replay-bin.000003 file generated by run the
-# rpl_auto_increment_bug33029.test with clean up statements at the end
-# of the test case removed on a buggy 5.0 server
-
-source include/have_log_bin.inc;
-
-# Need to restore this at the end; CHANGE MASTER modifies it (see the
-# manual for CHANGE MASTER).
-SET @old_relay_log_purge= @@global.relay_log_purge;
-
-let $MYSQLD_DATADIR= `select @@datadir`;
-
-copy_file $MYSQL_TEST_DIR/std_data/bug33029-slave-relay-bin.000001 $MYSQLD_DATADIR/slave-relay-bin.000001;
-
-
-# After patch for BUG#12190, the filename used in CHANGE MASTER
-# RELAY_LOG_FILE will be automatically added the directory of the
-# relay log before comparison, thus we need to added the directory
-# part (./ on unix .\ on windows) when faking the relay-log-bin.index.
-disable_query_log;
-if (`select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows") = 0`)
-{
- eval select './slave-relay-bin.000001\n' into dumpfile '$MYSQLD_DATADIR/slave-relay-bin.index';
-}
-
-if (`select convert(@@version_compile_os using latin1) IN ("Win32","Win64","Windows") != 0`)
-{
- eval select '.\\\\slave-relay-bin.000001\n' into dumpfile '$MYSQLD_DATADIR/slave-relay-bin.index';
-}
-enable_query_log;
-
-change master to
- MASTER_HOST='dummy.localdomain',
- RELAY_LOG_FILE='slave-relay-bin.000001',
- RELAY_LOG_POS=4;
-
-start slave sql_thread;
-disable_result_log;
-select MASTER_POS_WAIT('master-bin.000001', 3776);
-enable_result_log;
-
-echo # Result on slave;
-SELECT * FROM t1;
-SELECT * FROM t2;
-
-# clean up
-disable_warnings;
-DROP TABLE IF EXISTS t1, t2;
-DROP PROCEDURE IF EXISTS p1;
-DROP PROCEDURE IF EXISTS p2;
-DROP FUNCTION IF EXISTS f1;
-DROP TRIGGER IF EXISTS tr1;
-enable_warnings;
-
-stop slave sql_thread;
-reset slave;
-source include/wait_for_slave_sql_to_stop.inc;
-remove_file $MYSQLD_DATADIR/slave-relay-bin.000001;
-remove_file $MYSQLD_DATADIR/slave-relay-bin.index;
-
-SET @@global.relay_log_purge= @old_relay_log_purge;
diff --git a/mysql-test/suite/binlog/t/binlog_format_switch_in_tmp_table.test b/mysql-test/suite/binlog/t/binlog_format_switch_in_tmp_table.test
new file mode 100644
index 00000000000..6868506008c
--- /dev/null
+++ b/mysql-test/suite/binlog/t/binlog_format_switch_in_tmp_table.test
@@ -0,0 +1,76 @@
+#
+# Bug #45855 row events in binlog after switch from binlog_fmt=mix to stmt with open tmp tbl
+# Bug #45856 can't switch from binlog_format=row to mix with open tmp tbl
+# This test verfies if the program will generate ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
+# error and forbid switching @@SESSION.binlog_format from MIXED or ROW to
+# STATEMENT when there are open temp tables and we are logging in row format.
+# There is no error in any other case.
+#
+
+source include/have_binlog_format_mixed.inc;
+
+SELECT @@SESSION.binlog_format;
+CREATE TABLE t1 (a VARCHAR(100));
+CREATE TEMPORARY TABLE t2 (a VARCHAR(100));
+
+--echo # Test allow switching @@SESSION.binlog_format from MIXED to STATEMENT
+--echo # when there are open temp tables and we are logging in statement based format.
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+
+--echo # Test allow switching @@SESSION.binlog_format from STATEMENT to
+--echo # STATEMENT when there are open temp tables.
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+
+INSERT INTO t1 VALUES ('statement based');
+SELECT @@SESSION.binlog_format;
+--echo # Test allow switching @@SESSION.binlog_format from STATEMENT to
+--echo # MIXED when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+
+--echo # Test allow switching @@SESSION.binlog_format from MIXED to MIXED
+--echo # when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+
+INSERT INTO t2 VALUES (UUID());
+SELECT @@SESSION.binlog_format;
+
+--echo # Test forbit switching @@SESSION.binlog_format from MIXED to STATEMENT
+--echo # when there are open temp tables and we are logging in row based format.
+--ERROR ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+
+INSERT INTO t1 VALUES ('row based');
+--echo # Test allow switching @@SESSION.binlog_format from ROW to MIXED
+--echo # when there are open temp tables.
+SET SESSION binlog_format = MIXED;
+SELECT @@SESSION.binlog_format;
+
+INSERT INTO t1 VALUES ('row based');
+--echo # Test allow switching @@SESSION.binlog_format from MIXED to ROW
+--echo # when there are open temp tables.
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+
+--echo # Test allow switching @@SESSION.binlog_format from ROW to ROW
+--echo # when there are open temp tables.
+SET SESSION binlog_format = ROW;
+SELECT @@SESSION.binlog_format;
+
+INSERT INTO t1 VALUES ('row based');
+--echo # Test forbit switching @@SESSION.binlog_format from ROW to STATEMENT
+--echo # when there are open temp tables.
+--ERROR ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
+SET SESSION binlog_format = STATEMENT;
+SELECT @@SESSION.binlog_format;
+
+DROP TEMPORARY TABLE t2;
+DROP TABLE t1;
+
diff --git a/mysql-test/suite/binlog/t/binlog_row_binlog-master.opt b/mysql-test/suite/binlog/t/binlog_row_binlog-master.opt
index ad2c6a647b5..f8e46a44854 100644
--- a/mysql-test/suite/binlog/t/binlog_row_binlog-master.opt
+++ b/mysql-test/suite/binlog/t/binlog_row_binlog-master.opt
@@ -1 +1 @@
--O max_binlog_size=4096
+--max_binlog_size=4096
diff --git a/mysql-test/suite/binlog/t/binlog_row_drop_tbl.test b/mysql-test/suite/binlog/t/binlog_row_drop_tbl.test
new file mode 100644
index 00000000000..06854900612
--- /dev/null
+++ b/mysql-test/suite/binlog/t/binlog_row_drop_tbl.test
@@ -0,0 +1,5 @@
+# This is a wrapper for drop_table.test so that the same test case can be used
+# For both statement and row based bin logs
+
+-- source include/have_binlog_format_row.inc
+-- source extra/binlog_tests/drop_table.test
diff --git a/mysql-test/suite/binlog/t/binlog_stm_binlog-master.opt b/mysql-test/suite/binlog/t/binlog_stm_binlog-master.opt
index ad2c6a647b5..f8e46a44854 100644
--- a/mysql-test/suite/binlog/t/binlog_stm_binlog-master.opt
+++ b/mysql-test/suite/binlog/t/binlog_stm_binlog-master.opt
@@ -1 +1 @@
--O max_binlog_size=4096
+--max_binlog_size=4096
diff --git a/mysql-test/suite/binlog/t/binlog_stm_drop_tbl.test b/mysql-test/suite/binlog/t/binlog_stm_drop_tbl.test
new file mode 100644
index 00000000000..f2b07bb69f6
--- /dev/null
+++ b/mysql-test/suite/binlog/t/binlog_stm_drop_tbl.test
@@ -0,0 +1,5 @@
+# This is a wrapper for drop_table.test so that the same test case can be used
+# For both statement and row based bin logs
+
+-- source include/have_binlog_format_mixed_or_statement.inc
+-- source extra/binlog_tests/drop_table.test
diff --git a/mysql-test/suite/binlog/t/binlog_stm_row.test b/mysql-test/suite/binlog/t/binlog_stm_row.test
index 71444a04c6f..8ac1bb1acbe 100644
--- a/mysql-test/suite/binlog/t/binlog_stm_row.test
+++ b/mysql-test/suite/binlog/t/binlog_stm_row.test
@@ -60,7 +60,7 @@ let $wait_condition=
--echo # con1
let $wait_condition=
SELECT COUNT(*) = 1 FROM information_schema.processlist WHERE
- state = "Locked" and info = "INSERT INTO t2 VALUES (3)";
+ state = "Table lock" and info = "INSERT INTO t2 VALUES (3)";
--source include/wait_condition.inc
SELECT RELEASE_LOCK('Bug#34306');
--connection con2
diff --git a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
index 35235ce951a..874bb015a07 100644
--- a/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
+++ b/mysql-test/suite/binlog/t/binlog_stm_unsafe_warning.test
@@ -27,6 +27,7 @@
-- source include/have_binlog_format_statement.inc
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a LIMIT clause. This is unsafe because the set of rows included cannot be predicted. .*");
call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a system function whose value may differ on slave. .*");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement invokes a trigger or a stored function that inserts into AUTO_INCREMENT column");
-- echo ### NOT filtered database => assertion: warnings ARE shown
@@ -117,3 +118,34 @@ perl;
print "Occurrences: $count\n";
close(FILE);
EOF
+
+# bug#50192: diplaying the unsafe warning comes out to the user warning stack
+
+-- disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+-- enable_warnings
+
+CREATE TABLE t1 (a int);
+CREATE TABLE t2 (a int auto_increment primary key, b int);
+CREATE TRIGGER tr_bug50192 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t2 (b) VALUES (1);
+
+DELIMITER |;
+
+CREATE FUNCTION sf_bug50192() RETURNS INTEGER
+BEGIN
+ INSERT INTO t2(b) VALUES(2);
+ RETURN 1;
+END |
+
+DELIMITER ;|
+
+INSERT INTO t1 VALUES (0);
+SHOW WARNINGS;
+SELECT sf_bug50192();
+SHOW WARNINGS;
+
+# cleanup
+
+DROP FUNCTION sf_bug50192;
+DROP TRIGGER tr_bug50192;
+DROP TABLE t1, t2;
diff --git a/mysql-test/suite/binlog/t/binlog_stm_user_variables.test b/mysql-test/suite/binlog/t/binlog_stm_user_variables.test
new file mode 100644
index 00000000000..4bed6db6269
--- /dev/null
+++ b/mysql-test/suite/binlog/t/binlog_stm_user_variables.test
@@ -0,0 +1,87 @@
+-- source include/have_binlog_format_statement.inc
+RESET MASTER;
+#
+# BUG#49562: SBR out of sync when using numeric data types + user variable
+#
+
+-- let $max_unsigned_long= 18446744073709551615
+-- let $min_signed_long= -9223372036854775808
+-- eval SET @positive= $max_unsigned_long
+-- eval SET @negative= $min_signed_long
+
+CREATE TABLE t1 (`tinyint` TINYINT,
+ `smallint` SMALLINT,
+ `mediumint` MEDIUMINT,
+ `integer` INTEGER,
+ `bigint` BIGINT,
+ `utinyint` TINYINT UNSIGNED,
+ `usmallint` SMALLINT UNSIGNED,
+ `umediumint` MEDIUMINT UNSIGNED,
+ `uinteger` INTEGER UNSIGNED,
+ `ubigint` BIGINT UNSIGNED,
+ `double` DOUBLE,
+ `float` FLOAT,
+ `real` REAL(30,2),
+ `decimal` DECIMAL(30,2)) ENGINE = MyISAM;
+
+-- echo ### insert max unsigned
+-- echo ### a) declarative
+-- disable_warnings
+-- eval INSERT INTO t1 VALUES ($max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long,$max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long);
+-- enable_warnings
+TRUNCATE t1;
+
+-- echo ### b) user var
+-- disable_warnings
+INSERT INTO t1 VALUES (@positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive);
+-- enable_warnings
+
+-- echo ## assertion: checks that User_var_log_event::pack_info
+-- echo ## correctly displays the binlog content by taking into
+-- echo ## account the unsigned_flag
+-- source include/show_binlog_events.inc
+
+-- echo ### insert min signed
+-- echo ### a) declarative
+-- disable_warnings
+-- eval INSERT INTO t1 VALUES ($min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long,$min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long);
+-- enable_warnings
+TRUNCATE t1;
+
+-- echo ### b) user var
+-- disable_warnings
+INSERT INTO t1 VALUES (@negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative);
+-- enable_warnings
+
+-- echo ## assertion: checks that User_var_log_event::pack_info
+-- echo ## correctly displays the binlog content by taking into
+-- echo ## account the unsigned_flag
+-- source include/show_binlog_events.inc
+
+DROP TABLE t1;
diff --git a/mysql-test/suite/funcs_1/datadict/processlist_val.inc b/mysql-test/suite/funcs_1/datadict/processlist_val.inc
index c34fb626bcd..9c6bd585fde 100644
--- a/mysql-test/suite/funcs_1/datadict/processlist_val.inc
+++ b/mysql-test/suite/funcs_1/datadict/processlist_val.inc
@@ -367,13 +367,13 @@ echo
;
connection default;
echo
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
;
let $wait_condition= SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST
- WHERE INFO IS NOT NULL AND STATE = 'Locked';
+ WHERE INFO IS NOT NULL AND STATE = 'Waiting for table';
--source include/wait_condition.inc
#
-# Expect to see the state 'Locked' for the third connection because the SELECT
+# Expect to see the state 'Waiting for table' for the third connection because the SELECT
# collides with the WRITE TABLE LOCK.
--replace_column 1 <ID> 3 <HOST_NAME> 6 <TIME>
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
@@ -422,10 +422,10 @@ echo
;
connection default;
echo
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
;
let $wait_condition= SELECT COUNT(*) FROM INFORMATION_SCHEMA.PROCESSLIST
- WHERE INFO IS NOT NULL AND STATE = 'Locked';
+ WHERE INFO IS NOT NULL AND STATE = 'Waiting for table';
--source include/wait_condition.inc
echo
# Expect result:
diff --git a/mysql-test/suite/funcs_1/r/is_columns.result b/mysql-test/suite/funcs_1/r/is_columns.result
index 479bc0a647a..7508ae5c992 100644
--- a/mysql-test/suite/funcs_1/r/is_columns.result
+++ b/mysql-test/suite/funcs_1/r/is_columns.result
@@ -46,7 +46,7 @@ COLUMN_TYPE longtext NO NULL
COLUMN_KEY varchar(3) NO
EXTRA varchar(27) NO
PRIVILEGES varchar(80) NO
-COLUMN_COMMENT varchar(255) NO
+COLUMN_COMMENT varchar(1024) NO
SHOW CREATE TABLE information_schema.COLUMNS;
Table Create Table
COLUMNS CREATE TEMPORARY TABLE `COLUMNS` (
@@ -68,7 +68,7 @@ COLUMNS CREATE TEMPORARY TABLE `COLUMNS` (
`COLUMN_KEY` varchar(3) NOT NULL DEFAULT '',
`EXTRA` varchar(27) NOT NULL DEFAULT '',
`PRIVILEGES` varchar(80) NOT NULL DEFAULT '',
- `COLUMN_COMMENT` varchar(255) NOT NULL DEFAULT ''
+ `COLUMN_COMMENT` varchar(1024) NOT NULL DEFAULT ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8
SHOW COLUMNS FROM information_schema.COLUMNS;
Field Type Null Key Default Extra
@@ -90,7 +90,7 @@ COLUMN_TYPE longtext NO NULL
COLUMN_KEY varchar(3) NO
EXTRA varchar(27) NO
PRIVILEGES varchar(80) NO
-COLUMN_COMMENT varchar(255) NO
+COLUMN_COMMENT varchar(1024) NO
SELECT table_catalog, table_schema, table_name, column_name
FROM information_schema.columns WHERE table_catalog IS NULL OR table_catalog <> 'def';
table_catalog table_schema table_name column_name
diff --git a/mysql-test/suite/funcs_1/r/is_columns_is.result b/mysql-test/suite/funcs_1/r/is_columns_is.result
index a460e694aac..0088b21ee04 100644
--- a/mysql-test/suite/funcs_1/r/is_columns_is.result
+++ b/mysql-test/suite/funcs_1/r/is_columns_is.result
@@ -19,7 +19,7 @@ def information_schema COLUMNS CHARACTER_MAXIMUM_LENGTH 9 NULL YES bigint NULL N
def information_schema COLUMNS CHARACTER_OCTET_LENGTH 10 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema COLUMNS CHARACTER_SET_NAME 13 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
def information_schema COLUMNS COLLATION_NAME 14 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
-def information_schema COLUMNS COLUMN_COMMENT 19 NO varchar 255 765 NULL NULL utf8 utf8_general_ci varchar(255) select
+def information_schema COLUMNS COLUMN_COMMENT 19 NO varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select
def information_schema COLUMNS COLUMN_DEFAULT 6 NULL YES longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext select
def information_schema COLUMNS COLUMN_KEY 16 NO varchar 3 9 NULL NULL utf8 utf8_general_ci varchar(3) select
def information_schema COLUMNS COLUMN_NAME 4 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
@@ -242,6 +242,7 @@ def information_schema STATISTICS CARDINALITY 10 NULL YES bigint NULL NULL 19 0
def information_schema STATISTICS COLLATION 9 NULL YES varchar 1 3 NULL NULL utf8 utf8_general_ci varchar(1) select
def information_schema STATISTICS COLUMN_NAME 8 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema STATISTICS COMMENT 15 NULL YES varchar 16 48 NULL NULL utf8 utf8_general_ci varchar(16) select
+def information_schema STATISTICS INDEX_COMMENT 16 NO varchar 1024 3072 NULL NULL utf8 utf8_general_ci varchar(1024) select
def information_schema STATISTICS INDEX_NAME 6 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema STATISTICS INDEX_SCHEMA 5 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema STATISTICS INDEX_TYPE 14 NO varchar 16 48 NULL NULL utf8 utf8_general_ci varchar(16) select
@@ -267,7 +268,7 @@ def information_schema TABLES MAX_DATA_LENGTH 11 NULL YES bigint NULL NULL 19 0
def information_schema TABLES ROW_FORMAT 7 NULL YES varchar 10 30 NULL NULL utf8 utf8_general_ci varchar(10) select
def information_schema TABLES TABLE_CATALOG 1 NO varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
def information_schema TABLES TABLE_COLLATION 18 NULL YES varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
-def information_schema TABLES TABLE_COMMENT 21 NO varchar 80 240 NULL NULL utf8 utf8_general_ci varchar(80) select
+def information_schema TABLES TABLE_COMMENT 21 NO varchar 2048 6144 NULL NULL utf8 utf8_general_ci varchar(2048) select
def information_schema TABLES TABLE_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
def information_schema TABLES TABLE_ROWS 8 NULL YES bigint NULL NULL 19 0 NULL NULL bigint(21) unsigned select
def information_schema TABLES TABLE_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
@@ -419,7 +420,7 @@ NULL information_schema COLUMNS NUMERIC_SCALE bigint NULL NULL NULL NULL bigint(
3.0000 information_schema COLUMNS COLUMN_KEY varchar 3 9 utf8 utf8_general_ci varchar(3)
3.0000 information_schema COLUMNS EXTRA varchar 27 81 utf8 utf8_general_ci varchar(27)
3.0000 information_schema COLUMNS PRIVILEGES varchar 80 240 utf8 utf8_general_ci varchar(80)
-3.0000 information_schema COLUMNS COLUMN_COMMENT varchar 255 765 utf8 utf8_general_ci varchar(255)
+3.0000 information_schema COLUMNS COLUMN_COMMENT varchar 1024 3072 utf8 utf8_general_ci varchar(1024)
3.0000 information_schema COLUMN_PRIVILEGES GRANTEE varchar 81 243 utf8 utf8_general_ci varchar(81)
3.0000 information_schema COLUMN_PRIVILEGES TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512)
3.0000 information_schema COLUMN_PRIVILEGES TABLE_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64)
@@ -639,6 +640,7 @@ NULL information_schema STATISTICS SUB_PART bigint NULL NULL NULL NULL bigint(3)
3.0000 information_schema STATISTICS NULLABLE varchar 3 9 utf8 utf8_general_ci varchar(3)
3.0000 information_schema STATISTICS INDEX_TYPE varchar 16 48 utf8 utf8_general_ci varchar(16)
3.0000 information_schema STATISTICS COMMENT varchar 16 48 utf8 utf8_general_ci varchar(16)
+3.0000 information_schema STATISTICS INDEX_COMMENT varchar 1024 3072 utf8 utf8_general_ci varchar(1024)
3.0000 information_schema TABLES TABLE_CATALOG varchar 512 1536 utf8 utf8_general_ci varchar(512)
3.0000 information_schema TABLES TABLE_SCHEMA varchar 64 192 utf8 utf8_general_ci varchar(64)
3.0000 information_schema TABLES TABLE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64)
@@ -659,7 +661,7 @@ NULL information_schema TABLES CHECK_TIME datetime NULL NULL NULL NULL datetime
3.0000 information_schema TABLES TABLE_COLLATION varchar 32 96 utf8 utf8_general_ci varchar(32)
NULL information_schema TABLES CHECKSUM bigint NULL NULL NULL NULL bigint(21) unsigned
3.0000 information_schema TABLES CREATE_OPTIONS varchar 255 765 utf8 utf8_general_ci varchar(255)
-3.0000 information_schema TABLES TABLE_COMMENT varchar 80 240 utf8 utf8_general_ci varchar(80)
+3.0000 information_schema TABLES TABLE_COMMENT varchar 2048 6144 utf8 utf8_general_ci varchar(2048)
3.0000 information_schema TABLESPACES TABLESPACE_NAME varchar 64 192 utf8 utf8_general_ci varchar(64)
3.0000 information_schema TABLESPACES ENGINE varchar 64 192 utf8 utf8_general_ci varchar(64)
3.0000 information_schema TABLESPACES TABLESPACE_TYPE varchar 64 192 utf8 utf8_general_ci varchar(64)
diff --git a/mysql-test/suite/funcs_1/r/is_statistics.result b/mysql-test/suite/funcs_1/r/is_statistics.result
index cbb794a9a91..873b328dc2d 100644
--- a/mysql-test/suite/funcs_1/r/is_statistics.result
+++ b/mysql-test/suite/funcs_1/r/is_statistics.result
@@ -43,6 +43,7 @@ PACKED varchar(10) YES NULL
NULLABLE varchar(3) NO
INDEX_TYPE varchar(16) NO
COMMENT varchar(16) YES NULL
+INDEX_COMMENT varchar(1024) NO
SHOW CREATE TABLE information_schema.STATISTICS;
Table Create Table
STATISTICS CREATE TEMPORARY TABLE `STATISTICS` (
@@ -60,7 +61,8 @@ STATISTICS CREATE TEMPORARY TABLE `STATISTICS` (
`PACKED` varchar(10) DEFAULT NULL,
`NULLABLE` varchar(3) NOT NULL DEFAULT '',
`INDEX_TYPE` varchar(16) NOT NULL DEFAULT '',
- `COMMENT` varchar(16) DEFAULT NULL
+ `COMMENT` varchar(16) DEFAULT NULL,
+ `INDEX_COMMENT` varchar(1024) NOT NULL DEFAULT ''
) ENGINE=MEMORY DEFAULT CHARSET=utf8
SHOW COLUMNS FROM information_schema.STATISTICS;
Field Type Null Key Default Extra
@@ -79,6 +81,7 @@ PACKED varchar(10) YES NULL
NULLABLE varchar(3) NO
INDEX_TYPE varchar(16) NO
COMMENT varchar(16) YES NULL
+INDEX_COMMENT varchar(1024) NO
SELECT table_catalog, table_schema, table_name, index_schema, index_name
FROM information_schema.statistics WHERE table_catalog IS NOT NULL;
table_catalog table_schema table_name index_schema index_name
@@ -157,17 +160,17 @@ ENGINE = MEMORY;
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict t2 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict t2 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict t2 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict t2 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
GRANT USAGE ON *.* TO 'testuser1'@'localhost'
@@ -178,7 +181,7 @@ GRANT USAGE ON *.* TO 'testuser2'@'localhost'
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
GRANT USAGE ON *.* TO 'testuser1'@'localhost'
@@ -188,7 +191,7 @@ ERROR 42000: Access denied for user 'testuser1'@'localhost' to database 'mysql'
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
SHOW GRANTS FOR 'testuser1'@'localhost';
ERROR 42000: Access denied for user 'testuser2'@'localhost' to database 'mysql'
SHOW GRANTS FOR 'testuser2'@'localhost';
@@ -200,17 +203,17 @@ GRANT SELECT(f1,f5) ON db_datadict_2.t3 TO 'testuser1'@'localhost';
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict t2 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict t2 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict t2 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict t2 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t4 1 db_datadict_2 f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t4 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
GRANT USAGE ON *.* TO 'testuser1'@'localhost'
@@ -223,13 +226,13 @@ GRANT USAGE ON *.* TO 'testuser2'@'localhost'
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
-def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def db_datadict t1 1 db_datadict f2_ind 1 f2 NULL 0 NULL NULL YES HASH
+def db_datadict t1 0 db_datadict PRIMARY 1 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
GRANT USAGE ON *.* TO 'testuser1'@'localhost'
@@ -241,7 +244,7 @@ ERROR 42000: Access denied for user 'testuser1'@'localhost' to database 'mysql'
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
SHOW GRANTS FOR 'testuser1'@'localhost';
ERROR 42000: Access denied for user 'testuser2'@'localhost' to database 'mysql'
SHOW GRANTS FOR 'testuser2'@'localhost';
@@ -257,11 +260,11 @@ GRANT SELECT (f5, f1) ON `db_datadict_2`.`t3` TO 'testuser1'@'localhost'
SELECT * FROM information_schema.statistics
WHERE table_schema LIKE 'db_datadict%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
-def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
-def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
-def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 1 f2 NULL NULL NULL NULL YES HASH
+def db_datadict_2 t3 1 db_datadict_2 f2f1_ind 2 f1 NULL 0 NULL NULL HASH
+def db_datadict_2 t3 0 db_datadict_2 f5 1 f5 NULL 0 NULL NULL YES HASH
+def db_datadict_2 t3 0 db_datadict_2 PRIMARY 1 f1 NULL 0 NULL NULL HASH
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
GRANT USAGE ON *.* TO 'testuser1'@'localhost'
@@ -291,9 +294,9 @@ ALTER TABLE test.t1_1 ADD PRIMARY KEY (f1,f3);
SELECT * FROM information_schema.statistics
WHERE table_name LIKE 't1_%'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def test t1_1 0 test PRIMARY 1 f1 A NULL NULL NULL BTREE
-def test t1_1 0 test PRIMARY 2 f3 A 0 NULL NULL BTREE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def test t1_1 0 test PRIMARY 1 f1 A NULL NULL NULL BTREE
+def test t1_1 0 test PRIMARY 2 f3 A 0 NULL NULL BTREE
ALTER TABLE test.t1_1 DROP PRIMARY KEY;
SELECT table_name FROM information_schema.statistics
WHERE table_name LIKE 't1_%';
@@ -301,27 +304,27 @@ table_name
ALTER TABLE test.t1_1 ADD PRIMARY KEY (f1);
SELECT * FROM information_schema.statistics
WHERE table_name LIKE 't1_%';
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def test t1_1 0 test PRIMARY 1 f1 A 0 NULL NULL BTREE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def test t1_1 0 test PRIMARY 1 f1 A 0 NULL NULL BTREE
ALTER TABLE test.t1_1 ADD INDEX (f4);
CREATE INDEX f3_f1 ON test.t1_1 (f3,f1);
CREATE UNIQUE INDEX f4x_uni ON test.t1_1 (f4x);
CREATE INDEX f2_hash USING HASH ON test.t1_2 (f2);
CREATE INDEX f1_idx ON test.t1_2 (f1) COMMENT = 'COMMENT';
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'COMMENT = 'COMMENT'' at line 1
+ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'COMMENT'' at line 1
CREATE INDEX not_null ON test.t1_1 (f3x);
CREATE INDEX f2_prefix ON test.t1_1 (f2(20));
SELECT * FROM information_schema.statistics
WHERE table_name LIKE 't1_%' AND index_name <> 'PRIMARY'
ORDER BY table_schema,table_name,index_name,seq_in_index,column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def test t1_1 1 test f2_prefix 1 f2 A NULL 20 NULL YES BTREE
-def test t1_1 1 test f3_f1 1 f3 A NULL NULL NULL BTREE
-def test t1_1 1 test f3_f1 2 f1 A NULL NULL NULL BTREE
-def test t1_1 1 test f4 1 f4 A NULL NULL NULL YES BTREE
-def test t1_1 0 test f4x_uni 1 f4x A NULL NULL NULL YES BTREE
-def test t1_1 1 test not_null 1 f3x A NULL NULL NULL YES BTREE
-def test t1_2 1 test f2_hash 1 f2 NULL 0 NULL NULL YES HASH
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def test t1_1 1 test f2_prefix 1 f2 A NULL 20 NULL YES BTREE
+def test t1_1 1 test f3_f1 1 f3 A NULL NULL NULL BTREE
+def test t1_1 1 test f3_f1 2 f1 A NULL NULL NULL BTREE
+def test t1_1 1 test f4 1 f4 A NULL NULL NULL YES BTREE
+def test t1_1 0 test f4x_uni 1 f4x A NULL NULL NULL YES BTREE
+def test t1_1 1 test not_null 1 f3x A NULL NULL NULL YES BTREE
+def test t1_2 1 test f2_hash 1 f2 NULL 0 NULL NULL YES HASH
DROP TABLE test.t1_2;
SELECT DISTINCT table_name FROM information_schema.statistics
WHERE table_name = 't1_1';
diff --git a/mysql-test/suite/funcs_1/r/is_statistics_is.result b/mysql-test/suite/funcs_1/r/is_statistics_is.result
index 165c1ee08e2..f04a5e4c515 100644
--- a/mysql-test/suite/funcs_1/r/is_statistics_is.result
+++ b/mysql-test/suite/funcs_1/r/is_statistics_is.result
@@ -6,12 +6,12 @@ GRANT SELECT ON db_datadict.* TO testuser1@localhost;
SELECT * FROM information_schema.statistics
WHERE table_schema = 'information_schema'
ORDER BY table_schema, table_name, index_name, seq_in_index, column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
# Establish connection testuser1 (user=testuser1)
SELECT * FROM information_schema.statistics
WHERE table_schema = 'information_schema'
ORDER BY table_schema, table_name, index_name, seq_in_index, column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
# Switch to connection default and close connection testuser1
DROP USER testuser1@localhost;
DROP DATABASE db_datadict;
diff --git a/mysql-test/suite/funcs_1/r/is_statistics_mysql.result b/mysql-test/suite/funcs_1/r/is_statistics_mysql.result
index 24cf07939b5..a1fa0cac9f2 100644
--- a/mysql-test/suite/funcs_1/r/is_statistics_mysql.result
+++ b/mysql-test/suite/funcs_1/r/is_statistics_mysql.result
@@ -6,60 +6,60 @@ GRANT SELECT ON db_datadict.* TO testuser1@localhost;
SELECT * FROM information_schema.statistics
WHERE table_schema = 'mysql'
ORDER BY table_schema, table_name, index_name, seq_in_index, column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
-def mysql columns_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql columns_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
-def mysql columns_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
-def mysql columns_priv 0 mysql PRIMARY 4 Table_name A #CARD# NULL NULL BTREE
-def mysql columns_priv 0 mysql PRIMARY 5 Column_name A #CARD# NULL NULL BTREE
-def mysql db 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql db 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
-def mysql db 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
-def mysql db 1 mysql User 1 User A #CARD# NULL NULL BTREE
-def mysql event 0 mysql PRIMARY 1 db A #CARD# NULL NULL BTREE
-def mysql event 0 mysql PRIMARY 2 name A #CARD# NULL NULL BTREE
-def mysql func 0 mysql PRIMARY 1 name A #CARD# NULL NULL BTREE
-def mysql help_category 0 mysql name 1 name A #CARD# NULL NULL BTREE
-def mysql help_category 0 mysql PRIMARY 1 help_category_id A #CARD# NULL NULL BTREE
-def mysql help_keyword 0 mysql name 1 name A #CARD# NULL NULL BTREE
-def mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A #CARD# NULL NULL BTREE
-def mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A #CARD# NULL NULL BTREE
-def mysql help_relation 0 mysql PRIMARY 2 help_topic_id A #CARD# NULL NULL BTREE
-def mysql help_topic 0 mysql name 1 name A #CARD# NULL NULL BTREE
-def mysql help_topic 0 mysql PRIMARY 1 help_topic_id A #CARD# NULL NULL BTREE
-def mysql host 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql host 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
-def mysql ndb_binlog_index 0 mysql PRIMARY 1 epoch A #CARD# NULL NULL BTREE
-def mysql plugin 0 mysql PRIMARY 1 name A #CARD# NULL NULL BTREE
-def mysql proc 0 mysql PRIMARY 1 db A #CARD# NULL NULL BTREE
-def mysql proc 0 mysql PRIMARY 2 name A #CARD# NULL NULL BTREE
-def mysql proc 0 mysql PRIMARY 3 type A #CARD# NULL NULL BTREE
-def mysql procs_priv 1 mysql Grantor 1 Grantor A #CARD# NULL NULL BTREE
-def mysql procs_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql procs_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
-def mysql procs_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
-def mysql procs_priv 0 mysql PRIMARY 4 Routine_name A #CARD# NULL NULL BTREE
-def mysql procs_priv 0 mysql PRIMARY 5 Routine_type A #CARD# NULL NULL BTREE
-def mysql servers 0 mysql PRIMARY 1 Server_name A #CARD# NULL NULL BTREE
-def mysql tables_priv 1 mysql Grantor 1 Grantor A #CARD# NULL NULL BTREE
-def mysql tables_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql tables_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
-def mysql tables_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
-def mysql tables_priv 0 mysql PRIMARY 4 Table_name A #CARD# NULL NULL BTREE
-def mysql time_zone 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
-def mysql time_zone_leap_second 0 mysql PRIMARY 1 Transition_time A #CARD# NULL NULL BTREE
-def mysql time_zone_name 0 mysql PRIMARY 1 Name A #CARD# NULL NULL BTREE
-def mysql time_zone_transition 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
-def mysql time_zone_transition 0 mysql PRIMARY 2 Transition_time A #CARD# NULL NULL BTREE
-def mysql time_zone_transition_type 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
-def mysql time_zone_transition_type 0 mysql PRIMARY 2 Transition_type_id A #CARD# NULL NULL BTREE
-def mysql user 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
-def mysql user 0 mysql PRIMARY 2 User A #CARD# NULL NULL BTREE
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
+def mysql columns_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql columns_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
+def mysql columns_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
+def mysql columns_priv 0 mysql PRIMARY 4 Table_name A #CARD# NULL NULL BTREE
+def mysql columns_priv 0 mysql PRIMARY 5 Column_name A #CARD# NULL NULL BTREE
+def mysql db 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql db 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
+def mysql db 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
+def mysql db 1 mysql User 1 User A #CARD# NULL NULL BTREE
+def mysql event 0 mysql PRIMARY 1 db A #CARD# NULL NULL BTREE
+def mysql event 0 mysql PRIMARY 2 name A #CARD# NULL NULL BTREE
+def mysql func 0 mysql PRIMARY 1 name A #CARD# NULL NULL BTREE
+def mysql help_category 0 mysql name 1 name A #CARD# NULL NULL BTREE
+def mysql help_category 0 mysql PRIMARY 1 help_category_id A #CARD# NULL NULL BTREE
+def mysql help_keyword 0 mysql name 1 name A #CARD# NULL NULL BTREE
+def mysql help_keyword 0 mysql PRIMARY 1 help_keyword_id A #CARD# NULL NULL BTREE
+def mysql help_relation 0 mysql PRIMARY 1 help_keyword_id A #CARD# NULL NULL BTREE
+def mysql help_relation 0 mysql PRIMARY 2 help_topic_id A #CARD# NULL NULL BTREE
+def mysql help_topic 0 mysql name 1 name A #CARD# NULL NULL BTREE
+def mysql help_topic 0 mysql PRIMARY 1 help_topic_id A #CARD# NULL NULL BTREE
+def mysql host 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql host 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
+def mysql ndb_binlog_index 0 mysql PRIMARY 1 epoch A #CARD# NULL NULL BTREE
+def mysql plugin 0 mysql PRIMARY 1 name A #CARD# NULL NULL BTREE
+def mysql proc 0 mysql PRIMARY 1 db A #CARD# NULL NULL BTREE
+def mysql proc 0 mysql PRIMARY 2 name A #CARD# NULL NULL BTREE
+def mysql proc 0 mysql PRIMARY 3 type A #CARD# NULL NULL BTREE
+def mysql procs_priv 1 mysql Grantor 1 Grantor A #CARD# NULL NULL BTREE
+def mysql procs_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql procs_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
+def mysql procs_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
+def mysql procs_priv 0 mysql PRIMARY 4 Routine_name A #CARD# NULL NULL BTREE
+def mysql procs_priv 0 mysql PRIMARY 5 Routine_type A #CARD# NULL NULL BTREE
+def mysql servers 0 mysql PRIMARY 1 Server_name A #CARD# NULL NULL BTREE
+def mysql tables_priv 1 mysql Grantor 1 Grantor A #CARD# NULL NULL BTREE
+def mysql tables_priv 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql tables_priv 0 mysql PRIMARY 2 Db A #CARD# NULL NULL BTREE
+def mysql tables_priv 0 mysql PRIMARY 3 User A #CARD# NULL NULL BTREE
+def mysql tables_priv 0 mysql PRIMARY 4 Table_name A #CARD# NULL NULL BTREE
+def mysql time_zone 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
+def mysql time_zone_leap_second 0 mysql PRIMARY 1 Transition_time A #CARD# NULL NULL BTREE
+def mysql time_zone_name 0 mysql PRIMARY 1 Name A #CARD# NULL NULL BTREE
+def mysql time_zone_transition 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
+def mysql time_zone_transition 0 mysql PRIMARY 2 Transition_time A #CARD# NULL NULL BTREE
+def mysql time_zone_transition_type 0 mysql PRIMARY 1 Time_zone_id A #CARD# NULL NULL BTREE
+def mysql time_zone_transition_type 0 mysql PRIMARY 2 Transition_type_id A #CARD# NULL NULL BTREE
+def mysql user 0 mysql PRIMARY 1 Host A #CARD# NULL NULL BTREE
+def mysql user 0 mysql PRIMARY 2 User A #CARD# NULL NULL BTREE
# Establish connection testuser1 (user=testuser1)
SELECT * FROM information_schema.statistics
WHERE table_schema = 'mysql'
ORDER BY table_schema, table_name, index_name, seq_in_index, column_name;
-TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT
+TABLE_CATALOG TABLE_SCHEMA TABLE_NAME NON_UNIQUE INDEX_SCHEMA INDEX_NAME SEQ_IN_INDEX COLUMN_NAME COLLATION CARDINALITY SUB_PART PACKED NULLABLE INDEX_TYPE COMMENT INDEX_COMMENT
# Switch to connection default and close connection testuser1
DROP USER testuser1@localhost;
DROP DATABASE db_datadict;
diff --git a/mysql-test/suite/funcs_1/r/is_table_constraints.result b/mysql-test/suite/funcs_1/r/is_table_constraints.result
index 154b72cb862..7f1c83a8ea5 100644
--- a/mysql-test/suite/funcs_1/r/is_table_constraints.result
+++ b/mysql-test/suite/funcs_1/r/is_table_constraints.result
@@ -110,16 +110,16 @@ def db_datadict my_idx2 db_datadict t1 UNIQUE
def db_datadict PRIMARY db_datadict t1 PRIMARY KEY
def db_datadict PRIMARY db_datadict t2 PRIMARY KEY
SHOW INDEXES FROM db_datadict.t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
-t1 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
-t1 0 my_idx1 1 f6 ### ### ### ### ### ### ###
-t1 0 my_idx1 2 f1 ### ### ### ### ### ### ###
-t1 0 my_idx2 1 f3 ### ### ### ### ### ### ###
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
+t1 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
+t1 0 my_idx1 1 f6 ### ### ### ### ### ### ###
+t1 0 my_idx1 2 f1 ### ### ### ### ### ### ###
+t1 0 my_idx2 1 f3 ### ### ### ### ### ### ###
SHOW INDEXES FROM db_datadict.t2;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t2 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
-t2 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t2 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
+t2 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
# Establish connection testuser1 (user=testuser1)
SHOW GRANTS FOR 'testuser1'@'localhost';
Grants for testuser1@localhost
@@ -133,12 +133,12 @@ def db_datadict my_idx1 db_datadict t1 UNIQUE
def db_datadict my_idx2 db_datadict t1 UNIQUE
def db_datadict PRIMARY db_datadict t1 PRIMARY KEY
SHOW INDEXES FROM db_datadict.t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
-t1 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
-t1 0 my_idx1 1 f6 ### ### ### ### ### ### ###
-t1 0 my_idx1 2 f1 ### ### ### ### ### ### ###
-t1 0 my_idx2 1 f3 ### ### ### ### ### ### ###
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 f1 ### ### ### ### ### ### ###
+t1 0 PRIMARY 2 f2 ### ### ### ### ### ### ###
+t1 0 my_idx1 1 f6 ### ### ### ### ### ### ###
+t1 0 my_idx1 2 f1 ### ### ### ### ### ### ###
+t1 0 my_idx2 1 f3 ### ### ### ### ### ### ###
SHOW INDEXES FROM db_datadict.t2;
ERROR 42000: SELECT command denied to user 'testuser1'@'localhost' for table 't2'
# Switch to connection default and close connection testuser1
diff --git a/mysql-test/suite/funcs_1/r/is_tables.result b/mysql-test/suite/funcs_1/r/is_tables.result
index 3974d684942..1b4ad503b29 100644
--- a/mysql-test/suite/funcs_1/r/is_tables.result
+++ b/mysql-test/suite/funcs_1/r/is_tables.result
@@ -48,7 +48,7 @@ CHECK_TIME datetime YES NULL
TABLE_COLLATION varchar(32) YES NULL
CHECKSUM bigint(21) unsigned YES NULL
CREATE_OPTIONS varchar(255) YES NULL
-TABLE_COMMENT varchar(80) NO
+TABLE_COMMENT varchar(2048) NO
SHOW CREATE TABLE information_schema.TABLES;
Table Create Table
TABLES CREATE TEMPORARY TABLE `TABLES` (
@@ -72,7 +72,7 @@ TABLES CREATE TEMPORARY TABLE `TABLES` (
`TABLE_COLLATION` varchar(32) DEFAULT NULL,
`CHECKSUM` bigint(21) unsigned DEFAULT NULL,
`CREATE_OPTIONS` varchar(255) DEFAULT NULL,
- `TABLE_COMMENT` varchar(80) NOT NULL DEFAULT ''
+ `TABLE_COMMENT` varchar(2048) NOT NULL DEFAULT ''
) ENGINE=MEMORY DEFAULT CHARSET=utf8
SHOW COLUMNS FROM information_schema.TABLES;
Field Type Null Key Default Extra
@@ -96,7 +96,7 @@ CHECK_TIME datetime YES NULL
TABLE_COLLATION varchar(32) YES NULL
CHECKSUM bigint(21) unsigned YES NULL
CREATE_OPTIONS varchar(255) YES NULL
-TABLE_COMMENT varchar(80) NO
+TABLE_COMMENT varchar(2048) NO
SELECT table_catalog, table_schema, table_name
FROM information_schema.tables WHERE table_catalog IS NULL OR table_catalog <> 'def';
table_catalog table_schema table_name
diff --git a/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result b/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
index b0cae801fd6..5f79fd04a90 100644
--- a/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
+++ b/mysql-test/suite/funcs_1/r/processlist_val_no_prot.result
@@ -193,11 +193,11 @@ LOCK TABLE test.t1 WRITE;
SELECT COUNT(*) FROM test.t1;
# ----- switch to connection default (user = root) -----
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
ID USER HOST DB COMMAND TIME STATE INFO
-<ID> test_user <HOST_NAME> information_schema Query <TIME> Locked SELECT COUNT(*) FROM test.t1
+<ID> test_user <HOST_NAME> information_schema Query <TIME> Waiting for table SELECT COUNT(*) FROM test.t1
<ID> test_user <HOST_NAME> information_schema Sleep <TIME> NULL
<ID> root <HOST_NAME> information_schema Query <TIME> executing SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
UNLOCK TABLES;
@@ -221,7 +221,7 @@ LOCK TABLE test.t1 WRITE;
SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1;
# ----- switch to connection default (user = root) -----
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
# Expect result:
# Statement Content of INFO
diff --git a/mysql-test/suite/funcs_1/r/processlist_val_ps.result b/mysql-test/suite/funcs_1/r/processlist_val_ps.result
index 4e4cfa57e36..bb8e25c87ab 100644
--- a/mysql-test/suite/funcs_1/r/processlist_val_ps.result
+++ b/mysql-test/suite/funcs_1/r/processlist_val_ps.result
@@ -193,11 +193,11 @@ LOCK TABLE test.t1 WRITE;
SELECT COUNT(*) FROM test.t1;
# ----- switch to connection default (user = root) -----
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;
ID USER HOST DB COMMAND TIME STATE INFO
-<ID> test_user <HOST_NAME> information_schema Query <TIME> Locked SELECT COUNT(*) FROM test.t1
+<ID> test_user <HOST_NAME> information_schema Query <TIME> Waiting for table SELECT COUNT(*) FROM test.t1
<ID> test_user <HOST_NAME> information_schema Sleep <TIME> NULL
<ID> root <HOST_NAME> information_schema Execute <TIME> executing SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST
UNLOCK TABLES;
@@ -221,7 +221,7 @@ LOCK TABLE test.t1 WRITE;
SELECT count(*),'BEGIN-This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.This is the representative of a very long statement.-END' AS "Long string" FROM test.t1;
# ----- switch to connection default (user = root) -----
-# Poll till INFO is no more NULL and State = 'Locked'.
+# Poll till INFO is no more NULL and State = 'Waiting for table'.
# Expect result:
# Statement Content of INFO
diff --git a/mysql-test/suite/funcs_1/r/storedproc.result b/mysql-test/suite/funcs_1/r/storedproc.result
index f08c52322f3..1b18298d2f3 100644
--- a/mysql-test/suite/funcs_1/r/storedproc.result
+++ b/mysql-test/suite/funcs_1/r/storedproc.result
@@ -145,7 +145,7 @@ END//
ERROR 42000: Too big precision 256 specified for column ''. Maximum is 65.
DROP PROCEDURE IF EXISTS sp1//
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( f1 DECIMAL(66, 30) )
LANGUAGE SQL NOT DETERMINISTIC SQL SECURITY INVOKER COMMENT 'this is simple'
BEGIN
@@ -155,7 +155,7 @@ END//
ERROR 42000: Too big precision 66 specified for column ''. Maximum is 65.
DROP PROCEDURE IF EXISTS sp1//
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
DROP TABLE IF EXISTS t1_aux;
DROP PROCEDURE IF EXISTS sproc_1;
DROP FUNCTION IF EXISTS func_1;
@@ -1826,7 +1826,7 @@ Note 1051 Unknown table 't1'
create table mysql.t1( f1 char );
DROP PROCEDURE IF EXISTS sp11;
Warnings:
-Note 1305 PROCEDURE sp11 does not exist
+Note 1305 PROCEDURE db_storedproc.sp11 does not exist
CREATE PROCEDURE sp11() insert into mysql.t1 values('a');
SELECT security_type from mysql.proc where specific_name='sp11';
security_type
@@ -1893,7 +1893,7 @@ alter proc
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp11;
Warnings:
-Note 1305 PROCEDURE sp11 does not exist
+Note 1305 PROCEDURE db_storedproc.sp11 does not exist
CREATE PROCEDURE sp11()
SELECT * from t1;
SELECT comment from mysql.proc where specific_name='sp11';
@@ -1911,7 +1911,7 @@ alter function
--------------------------------------------------------------------------------
DROP FUNCTION IF EXISTS fn12;
Warnings:
-Note 1305 FUNCTION fn12 does not exist
+Note 1305 FUNCTION db_storedproc.fn12 does not exist
CREATE FUNCTION fn12() returns int
return 100;
SELECT comment from mysql.proc where specific_name='fn12';
@@ -3115,7 +3115,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 char ) returns char
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3124,7 +3124,7 @@ return f1;
ERROR 42000: This version of MySQL doesn't yet support 'return value collation'
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 char ascii ) returns char ascii
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3134,21 +3134,21 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 char binary not null ) returns char binary not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns char binary not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 char ascii not null ) returns char ascii not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns char ascii not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 tinytext ) returns tinytext
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3167,28 +3167,28 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 text not null ) returns text not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns text not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 mediumtext not null ) returns mediumtext not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns mediumtext not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 longtext not null ) returns longtext not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns longtext not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 tinyblob ) returns tinyblob
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3207,28 +3207,28 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 blob not null ) returns blob not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns blob not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 mediumblob not null ) returns mediumblob not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns mediumblob not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 longblob not null ) returns longblob not null
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'not null ) returns longblob not null
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 binary ) returns binary
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3238,7 +3238,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 tinyint ) returns tinyint
return f1;
DROP FUNCTION IF EXISTS fn1;
@@ -3383,21 +3383,21 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 year(f1 4) ) returns year(4)
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'f1 4) ) returns year(4)
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 enum(f1 "1enum", "2enum") ) returns enum("1enum", "2enum")
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'f1 "1enum", "2enum") ) returns enum("1enum", "2enum")
return f1' at line 1
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(f1 set(f1 "1set", "2set") ) returns set("1set", "2set")
return f1;
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'f1 "1set", "2set") ) returns set("1set", "2set")
@@ -3410,7 +3410,7 @@ appropriate error message
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp16;
Warnings:
-Note 1305 PROCEDURE sp16 does not exist
+Note 1305 PROCEDURE db_storedproc.sp16 does not exist
CALL sp16( 'xyz' );
ERROR 42000: PROCEDURE db_storedproc.sp16 does not exist
CREATE DATABASE db1;
@@ -3434,10 +3434,10 @@ function with the same name, even in the same database
USE db_storedproc;
DROP FUNCTION IF EXISTS sp1;
Warnings:
-Note 1305 FUNCTION sp1 does not exist
+Note 1305 FUNCTION db_storedproc.sp1 does not exist
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1 ()
BEGIN
declare x enum( 'db1', 'test' ) default 'test';
@@ -3481,10 +3481,10 @@ a function with the same name, in the same database
USE db_storedproc;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
DROP FUNCTION IF EXISTS sp1;
Warnings:
-Note 1305 FUNCTION sp1 does not exist
+Note 1305 FUNCTION db_storedproc.sp1 does not exist
set @x=null;
set @y=null;
CREATE PROCEDURE sp1()
@@ -3557,16 +3557,16 @@ SET @x = NULL;
SET @y = NULL;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
DROP FUNCTION IF EXISTS sp1;
Warnings:
-Note 1305 FUNCTION sp1 does not exist
+Note 1305 FUNCTION db_storedproc.sp1 does not exist
DROP PROCEDURE IF EXISTS db_storedproc_3122.sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc_3122.sp1 does not exist
DROP FUNCTION IF EXISTS db_storedproc_3122.sp1;
Warnings:
-Note 1305 FUNCTION sp1 does not exist
+Note 1305 FUNCTION db_storedproc_3122.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
SET @x = 1;
@@ -3666,7 +3666,7 @@ DROP DATABASE IF EXISTS db1;
CREATE DATABASE db1;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1 () set @x=1;
CREATE PROCEDURE sp1 () set @x=2;
ERROR 42000: PROCEDURE sp1 already exists
@@ -3705,7 +3705,7 @@ Note 1008 Can't drop database 'db1'; database doesn't exist
CREATE DATABASE db1;
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1 () returns int return 1;
CREATE FUNCTION fn1 () returns int return 2;
ERROR 42000: FUNCTION fn1 already exists
@@ -3739,7 +3739,7 @@ set @x=null;
set @y=null;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1 () set @x= 1;
DROP DATABASE IF EXISTS test3124;
Warnings:
@@ -3768,7 +3768,7 @@ providing each resides in different databases.
USE db_storedproc;
DROP FUNCTION IF EXISTS f1;
Warnings:
-Note 1305 FUNCTION f1 does not exist
+Note 1305 FUNCTION db_storedproc.f1 does not exist
CREATE FUNCTION f1 () returns int return 1;
DROP DATABASE IF EXISTS test3125;
Warnings:
@@ -8699,7 +8699,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare require char;
@@ -8708,7 +8708,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare restrict char;
@@ -8717,7 +8717,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare return char;
@@ -8726,7 +8726,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare revoke char;
@@ -8735,7 +8735,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare right char;
@@ -8744,7 +8744,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare rlike char;
@@ -8753,7 +8753,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare schema char;
@@ -8762,7 +8762,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare schemas char;
@@ -8771,7 +8771,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare second_microsecond char;
@@ -8780,7 +8780,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare SELECT char;
@@ -8789,7 +8789,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sensitive char;
@@ -8798,7 +8798,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare separator char;
@@ -8807,7 +8807,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare set char;
@@ -8816,7 +8816,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare show char;
@@ -8825,7 +8825,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare smallint char;
@@ -8834,7 +8834,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare spatial char;
@@ -8843,7 +8843,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare specific char;
@@ -8852,7 +8852,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sql char;
@@ -8861,7 +8861,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sqlexception char;
@@ -8870,7 +8870,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sqlstate char;
@@ -8879,7 +8879,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sqlwarning char;
@@ -8888,7 +8888,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sql_big_result char;
@@ -8897,7 +8897,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sql_calc_found_rows char;
@@ -8906,7 +8906,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare sql_small_result char;
@@ -8915,7 +8915,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare ssl char;
@@ -8924,7 +8924,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare starting char;
@@ -8933,7 +8933,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare straight_join char;
@@ -8942,7 +8942,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare table char;
@@ -8951,7 +8951,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare terminated char;
@@ -8960,7 +8960,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare then char;
@@ -8969,7 +8969,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare tinyblob char;
@@ -8978,7 +8978,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare tinyint char;
@@ -8987,7 +8987,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare tinytext char;
@@ -8996,7 +8996,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare to char;
@@ -9005,7 +9005,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare trailing char;
@@ -9014,7 +9014,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare trigger char;
@@ -9023,7 +9023,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare true char;
@@ -9032,7 +9032,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare undo char;
@@ -9041,7 +9041,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare union char;
@@ -9050,7 +9050,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare unique char;
@@ -9059,7 +9059,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare unlock char;
@@ -9068,7 +9068,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare unsigned char;
@@ -9077,7 +9077,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare update char;
@@ -9086,7 +9086,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare usage char;
@@ -9095,7 +9095,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare use char;
@@ -9104,7 +9104,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare using char;
@@ -9113,7 +9113,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare utc_date char;
@@ -9122,7 +9122,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare utc_time char;
@@ -9131,7 +9131,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare utc_timestamp char;
@@ -9140,7 +9140,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare values char;
@@ -9149,7 +9149,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare varbinary char;
@@ -9158,7 +9158,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare varchar char;
@@ -9167,7 +9167,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare varcharacter char;
@@ -9176,7 +9176,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare varying char;
@@ -9185,7 +9185,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare when char;
@@ -9194,7 +9194,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare where char;
@@ -9203,7 +9203,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare while char;
@@ -9212,7 +9212,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare with char;
@@ -9221,7 +9221,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare write char;
@@ -9230,7 +9230,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xor char;
@@ -9239,7 +9239,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare year_month char;
@@ -9248,7 +9248,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare zerofill char;
@@ -9263,7 +9263,7 @@ Ensure that every possible type of condition may be declared for a stored proced
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare cond1 condition for sqlstate 'HY000';
@@ -9328,7 +9328,7 @@ CALL sp1();
DROP PROCEDURE sp1;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare @x char;
@@ -9337,7 +9337,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare x char1;
@@ -9346,7 +9346,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare accessible condition for sqlstate '02000';
@@ -9356,7 +9356,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for add set @var' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare add condition for sqlstate '02000';
@@ -9367,7 +9367,7 @@ declare exit handler for add set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare all condition for sqlstate '02000';
@@ -9378,7 +9378,7 @@ declare exit handler for all set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare alter condition for sqlstate '02000';
@@ -9388,7 +9388,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for alter set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare analyze condition for sqlstate '02000';
@@ -9398,7 +9398,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for analyze set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare and condition for sqlstate '02000';
@@ -9409,7 +9409,7 @@ declare exit handler for and set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare as condition for sqlstate '02000';
@@ -9420,7 +9420,7 @@ declare exit handler for as set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare asc condition for sqlstate '02000';
@@ -9431,7 +9431,7 @@ declare exit handler for asc set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare asensitive condition for sqlstate '02000';
@@ -9441,7 +9441,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for asensitive s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare before condition for sqlstate '02000';
@@ -9451,7 +9451,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for before set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare between condition for sqlstate '02000';
@@ -9461,7 +9461,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for between set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare bigint condition for sqlstate '02000';
@@ -9471,7 +9471,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for bigint set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare binary condition for sqlstate '02000';
@@ -9481,7 +9481,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for binary set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare blob condition for sqlstate '02000';
@@ -9491,7 +9491,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for blob set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare both condition for sqlstate '02000';
@@ -9501,7 +9501,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for both set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare by condition for sqlstate '02000';
@@ -9512,7 +9512,7 @@ declare exit handler for by set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare call condition for sqlstate '02000';
@@ -9522,7 +9522,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for CALL set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cascade condition for sqlstate '02000';
@@ -9532,7 +9532,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for cascade set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare case condition for sqlstate '02000';
@@ -9542,7 +9542,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for case set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare change condition for sqlstate '02000';
@@ -9552,7 +9552,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for change set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare char condition for sqlstate '02000';
@@ -9562,7 +9562,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for char set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare character condition for sqlstate '02000';
@@ -9572,7 +9572,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for character set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare check condition for sqlstate '02000';
@@ -9582,7 +9582,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for check set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare collate condition for sqlstate '02000';
@@ -9592,7 +9592,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for collate set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare column condition for sqlstate '02000';
@@ -9602,7 +9602,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for column set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare condition condition for sqlstate '02000';
@@ -9612,7 +9612,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for condition set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare connection condition for sqlstate '02000';
@@ -9628,7 +9628,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for constraint s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare continue condition for sqlstate '02000';
@@ -9638,7 +9638,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for continue set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare convert condition for sqlstate '02000';
@@ -9648,7 +9648,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for convert set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare create condition for sqlstate '02000';
@@ -9658,7 +9658,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for create set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cross condition for sqlstate '02000';
@@ -9668,7 +9668,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for cross set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_date condition for sqlstate '02000';
@@ -9678,7 +9678,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for current_da' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_time condition for sqlstate '02000';
@@ -9688,7 +9688,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for current_ti' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_timestamp condition for sqlstate '02000';
@@ -9698,7 +9698,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for curre' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_user condition for sqlstate '02000';
@@ -9708,7 +9708,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for current_us' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cursor condition for sqlstate '02000';
@@ -9718,7 +9718,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for cursor set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare database condition for sqlstate '02000';
@@ -9728,7 +9728,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for database set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare databases condition for sqlstate '02000';
@@ -9738,7 +9738,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for databases set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_hour condition for sqlstate '02000';
@@ -9748,7 +9748,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for day_hour set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_microsecond condition for sqlstate '02000';
@@ -9758,7 +9758,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for day_mic' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_minute condition for sqlstate '02000';
@@ -9768,7 +9768,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for day_minute s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_second condition for sqlstate '02000';
@@ -9778,7 +9778,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for day_second s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare dec condition for sqlstate '02000';
@@ -9789,7 +9789,7 @@ declare exit handler for dec set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare decimal condition for sqlstate '02000';
@@ -9799,7 +9799,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for decimal set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare declare condition for sqlstate '02000';
@@ -9809,7 +9809,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for declare set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare default condition for sqlstate '02000';
@@ -9819,7 +9819,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for default set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare delayed condition for sqlstate '02000';
@@ -9829,7 +9829,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for delayed set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare delete condition for sqlstate '02000';
@@ -9839,7 +9839,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for delete set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare desc condition for sqlstate '02000';
@@ -9849,7 +9849,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for desc set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare describe condition for sqlstate '02000';
@@ -9859,7 +9859,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for describe set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare deterministic condition for sqlstate '02000';
@@ -9869,7 +9869,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for determini' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare distinct condition for sqlstate '02000';
@@ -9879,7 +9879,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for distinct set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare distinctrow condition for sqlstate '02000';
@@ -9889,7 +9889,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for distinctrow' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare div condition for sqlstate '02000';
@@ -9900,7 +9900,7 @@ declare exit handler for div set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare double condition for sqlstate '02000';
@@ -9910,7 +9910,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for double set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare drop condition for sqlstate '02000';
@@ -9920,7 +9920,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for drop set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare dual condition for sqlstate '02000';
@@ -9930,7 +9930,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for dual set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare each condition for sqlstate '02000';
@@ -9940,7 +9940,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for each set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare else condition for sqlstate '02000';
@@ -9950,7 +9950,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for else set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare elseif condition for sqlstate '02000';
@@ -9960,7 +9960,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for elseif set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare enclosed condition for sqlstate '02000';
@@ -9970,7 +9970,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for enclosed set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare escaped condition for sqlstate '02000';
@@ -9980,7 +9980,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for escaped set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare exists condition for sqlstate '02000';
@@ -9990,7 +9990,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for exists set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare exit condition for sqlstate '02000';
@@ -10001,7 +10001,7 @@ declare exit handler for exit set @var2 = 1;
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare explain condition for sqlstate '02000';
@@ -10011,7 +10011,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for explain set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare false condition for sqlstate '02000';
@@ -10021,7 +10021,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for false set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare fetch condition for sqlstate '02000';
@@ -10031,7 +10031,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for fetch set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float condition for sqlstate '02000';
@@ -10041,7 +10041,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for float set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float4 condition for sqlstate '02000';
@@ -10051,7 +10051,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for add set @var2 = ' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float8 condition for sqlstate '02000';
@@ -10061,7 +10061,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for add set @var2 = ' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare for condition for sqlstate '02000';
@@ -10072,7 +10072,7 @@ declare exit handler for for set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare force condition for sqlstate '02000';
@@ -10082,7 +10082,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for force set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare foreign condition for sqlstate '02000';
@@ -10092,7 +10092,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for foreign set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare from condition for sqlstate '02000';
@@ -10102,7 +10102,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for from set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare fulltext condition for sqlstate '02000';
@@ -10112,7 +10112,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for fulltext set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare grant condition for sqlstate '02000';
@@ -10122,7 +10122,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for grant set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare group condition for sqlstate '02000';
@@ -10132,7 +10132,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for group set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare having condition for sqlstate '02000';
@@ -10142,7 +10142,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for having set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare high_priority condition for sqlstate '02000';
@@ -10152,7 +10152,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for high_prio' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_microsecond condition for sqlstate '02000';
@@ -10162,7 +10162,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for hour_m' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_minute condition for sqlstate '02000';
@@ -10172,7 +10172,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for hour_minute' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_second condition for sqlstate '02000';
@@ -10182,7 +10182,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for hour_second' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare if condition for sqlstate '02000';
@@ -10193,7 +10193,7 @@ declare exit handler for if set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare ignore condition for sqlstate '02000';
@@ -10203,7 +10203,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for ignore set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare in condition for sqlstate '02000';
@@ -10214,7 +10214,7 @@ declare exit handler for in set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare index condition for sqlstate '02000';
@@ -10224,7 +10224,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for index set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare infile condition for sqlstate '02000';
@@ -10234,7 +10234,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for infile set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare inner condition for sqlstate '02000';
@@ -10244,7 +10244,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for inner set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare inout condition for sqlstate '02000';
@@ -10254,7 +10254,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for inout set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare insensitive condition for sqlstate '02000';
@@ -10264,7 +10264,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for insensitive' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare insert condition for sqlstate '02000';
@@ -10274,7 +10274,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for insert set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int condition for sqlstate '02000';
@@ -10285,7 +10285,7 @@ declare exit handler for int set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int1 condition for sqlstate '02000';
@@ -10295,7 +10295,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int2 condition for sqlstate '02000';
@@ -10305,7 +10305,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int3 condition for sqlstate '02000';
@@ -10315,7 +10315,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int4 condition for sqlstate '02000';
@@ -10325,7 +10325,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int8 condition for sqlstate '02000';
@@ -10335,7 +10335,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1;' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare integer condition for sqlstate '02000';
@@ -10345,7 +10345,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for integer set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare interval condition for sqlstate '02000';
@@ -10355,7 +10355,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for interval set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare into condition for sqlstate '02000';
@@ -10365,7 +10365,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for into set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare is condition for sqlstate '02000';
@@ -10376,7 +10376,7 @@ declare exit handler for is set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare iterate condition for sqlstate '02000';
@@ -10386,7 +10386,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for iterate set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare join condition for sqlstate '02000';
@@ -10396,7 +10396,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for join set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare key condition for sqlstate '02000';
@@ -10407,7 +10407,7 @@ declare exit handler for key set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare keys condition for sqlstate '02000';
@@ -10417,7 +10417,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for keys set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare kill condition for sqlstate '02000';
@@ -10427,7 +10427,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for kill set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare leading condition for sqlstate '02000';
@@ -10437,7 +10437,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for leading set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare leave condition for sqlstate '02000';
@@ -10447,7 +10447,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for leave set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare left condition for sqlstate '02000';
@@ -10457,7 +10457,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for left set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare like condition for sqlstate '02000';
@@ -10467,7 +10467,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for like set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare limit condition for sqlstate '02000';
@@ -10477,7 +10477,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for limit set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare linear condition for sqlstate '02000';
@@ -10487,7 +10487,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = ' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare lines condition for sqlstate '02000';
@@ -10497,7 +10497,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for lines set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare load condition for sqlstate '02000';
@@ -10507,7 +10507,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for load set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare localtime condition for sqlstate '02000';
@@ -10517,7 +10517,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for localtime set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare localtimestamp condition for sqlstate '02000';
@@ -10527,7 +10527,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for localtim' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare lock condition for sqlstate '02000';
@@ -10537,7 +10537,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for lock set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare long condition for sqlstate '02000';
@@ -10547,7 +10547,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for long set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare longblob condition for sqlstate '02000';
@@ -10557,7 +10557,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for longblob set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare longtext condition for sqlstate '02000';
@@ -10567,7 +10567,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for longtext set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare loop condition for sqlstate '02000';
@@ -10577,7 +10577,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for loop set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare low_priority condition for sqlstate '02000';
@@ -10587,7 +10587,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for low_priori' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare master_ssl_verify_server_cert condition for sqlstate '02000';
@@ -10597,7 +10597,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handl' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare match condition for sqlstate '02000';
@@ -10607,7 +10607,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for match set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumblob condition for sqlstate '02000';
@@ -10617,7 +10617,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for mediumblob s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumint condition for sqlstate '02000';
@@ -10627,7 +10627,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for mediumint set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumtext condition for sqlstate '02000';
@@ -10637,7 +10637,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for mediumtext s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare middleint condition for sqlstate '02000';
@@ -10647,7 +10647,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for middleint set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare minute_microsecond condition for sqlstate '02000';
@@ -10657,7 +10657,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for minu' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare minute_second condition for sqlstate '02000';
@@ -10667,7 +10667,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for minute_se' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mod condition for sqlstate '02000';
@@ -10678,7 +10678,7 @@ declare exit handler for mod set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare modifies condition for sqlstate '02000';
@@ -10688,7 +10688,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for modifies set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare natural condition for sqlstate '02000';
@@ -10698,7 +10698,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for natural set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare not condition for sqlstate '02000';
@@ -10709,7 +10709,7 @@ declare exit handler for not set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare no_write_to_binlog condition for sqlstate '02000';
@@ -10719,7 +10719,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for no_w' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare null condition for sqlstate '02000';
@@ -10729,7 +10729,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for null set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare numeric condition for sqlstate '02000';
@@ -10739,7 +10739,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for numeric set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare on condition for sqlstate '02000';
@@ -10750,7 +10750,7 @@ declare exit handler for on set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare optimize condition for sqlstate '02000';
@@ -10760,7 +10760,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for optimize set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare option condition for sqlstate '02000';
@@ -10770,7 +10770,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for option set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare optionally condition for sqlstate '02000';
@@ -10780,7 +10780,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for optionally s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare or condition for sqlstate '02000';
@@ -10791,7 +10791,7 @@ declare exit handler for or set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare order condition for sqlstate '02000';
@@ -10801,7 +10801,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for order set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare out condition for sqlstate '02000';
@@ -10812,7 +10812,7 @@ declare exit handler for out set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare outer condition for sqlstate '02000';
@@ -10822,7 +10822,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for outer set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare outfile condition for sqlstate '02000';
@@ -10832,7 +10832,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for outfile set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare precision condition for sqlstate '02000';
@@ -10842,7 +10842,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for precision set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare primary condition for sqlstate '02000';
@@ -10852,7 +10852,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for primary set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare procedure condition for sqlstate '02000';
@@ -10862,7 +10862,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for procedure set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare purge condition for sqlstate '02000';
@@ -10872,7 +10872,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for purge set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare range condition for sqlstate '02000';
@@ -10882,7 +10882,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read condition for sqlstate '02000';
@@ -10892,7 +10892,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for read set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare reads condition for sqlstate '02000';
@@ -10902,7 +10902,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for reads set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read_only condition for sqlstate '02000';
@@ -10912,7 +10912,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 4
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read_write condition for sqlstate '02000';
@@ -10922,7 +10922,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare real condition for sqlstate '02000';
@@ -10932,7 +10932,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for real set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare references condition for sqlstate '02000';
@@ -10942,7 +10942,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for references s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare regexp condition for sqlstate '02000';
@@ -10952,7 +10952,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for regexp set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare release condition for sqlstate '02000';
@@ -10962,7 +10962,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for int set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare rename condition for sqlstate '02000';
@@ -10972,7 +10972,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for rename set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare repeat condition for sqlstate '02000';
@@ -10982,7 +10982,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for repeat set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare replace condition for sqlstate '02000';
@@ -10992,7 +10992,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for replace set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare require condition for sqlstate '02000';
@@ -11002,7 +11002,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for require set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare restrict condition for sqlstate '02000';
@@ -11012,7 +11012,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for restrict set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare return condition for sqlstate '02000';
@@ -11022,7 +11022,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for return set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare revoke condition for sqlstate '02000';
@@ -11032,7 +11032,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for revoke set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare right condition for sqlstate '02000';
@@ -11042,7 +11042,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for right set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare rlike condition for sqlstate '02000';
@@ -11052,7 +11052,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for rlike set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare schema condition for sqlstate '02000';
@@ -11062,7 +11062,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for schema set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare schemas condition for sqlstate '02000';
@@ -11072,7 +11072,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for schemas set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare second_microsecond condition for sqlstate '02000';
@@ -11082,7 +11082,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for seco' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare select condition for sqlstate '02000';
@@ -11092,7 +11092,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for SELECT set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sensitive condition for sqlstate '02000';
@@ -11102,7 +11102,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sensitive set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare separator condition for sqlstate '02000';
@@ -11112,7 +11112,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for separator set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare set condition for sqlstate '02000';
@@ -11123,7 +11123,7 @@ declare exit handler for set set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare show condition for sqlstate '02000';
@@ -11133,7 +11133,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for show set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare smallint condition for sqlstate '02000';
@@ -11143,7 +11143,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for smallint set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare spatial condition for sqlstate '02000';
@@ -11153,7 +11153,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for spatial set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare specific condition for sqlstate '02000';
@@ -11163,7 +11163,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for specific set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql condition for sqlstate '02000';
@@ -11174,7 +11174,7 @@ declare exit handler for sql set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlexception condition for sqlstate '02000';
@@ -11184,7 +11184,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sqlexcepti' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlstate condition for sqlstate '02000';
@@ -11194,7 +11194,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sqlstate set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlwarning condition for sqlstate '02000';
@@ -11204,7 +11204,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sqlwarning s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_big_result condition for sqlstate '02000';
@@ -11214,7 +11214,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sql_big_' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_calc_found_rows condition for sqlstate '02000';
@@ -11224,7 +11224,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sql' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_small_result condition for sqlstate '02000';
@@ -11234,7 +11234,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for sql_sm' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare ssl condition for sqlstate '02000';
@@ -11245,7 +11245,7 @@ declare exit handler for ssl set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare starting condition for sqlstate '02000';
@@ -11255,7 +11255,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for starting set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare straight_join condition for sqlstate '02000';
@@ -11265,7 +11265,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for straight_' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare table condition for sqlstate '02000';
@@ -11275,7 +11275,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for table set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare terminated condition for sqlstate '02000';
@@ -11285,7 +11285,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for terminated s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare then condition for sqlstate '02000';
@@ -11295,7 +11295,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for then set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinyblob condition for sqlstate '02000';
@@ -11305,7 +11305,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for tinyblob set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinyint condition for sqlstate '02000';
@@ -11315,7 +11315,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for tinyint set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinytext condition for sqlstate '02000';
@@ -11325,7 +11325,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for tinytext set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare to condition for sqlstate '02000';
@@ -11336,7 +11336,7 @@ declare exit handler for to set @var2 = 1;
EN' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare trailing condition for sqlstate '02000';
@@ -11346,7 +11346,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for trailing set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare trigger condition for sqlstate '02000';
@@ -11356,7 +11356,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for trigger set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare true condition for sqlstate '02000';
@@ -11366,7 +11366,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for true set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare undo condition for sqlstate '02000';
@@ -11376,7 +11376,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for undo set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare union condition for sqlstate '02000';
@@ -11386,7 +11386,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for union set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unique condition for sqlstate '02000';
@@ -11396,7 +11396,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for unique set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unlock condition for sqlstate '02000';
@@ -11406,7 +11406,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for unlock set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unsigned condition for sqlstate '02000';
@@ -11416,7 +11416,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for unsigned set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare update condition for sqlstate '02000';
@@ -11426,7 +11426,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for update set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare usage condition for sqlstate '02000';
@@ -11436,7 +11436,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for usage set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare use condition for sqlstate '02000';
@@ -11447,7 +11447,7 @@ declare exit handler for USE set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare using condition for sqlstate '02000';
@@ -11457,7 +11457,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for using set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_date condition for sqlstate '02000';
@@ -11467,7 +11467,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for utc_date set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_time condition for sqlstate '02000';
@@ -11477,7 +11477,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for utc_time set @' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_timestamp condition for sqlstate '02000';
@@ -11487,7 +11487,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for utc_times' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare values condition for sqlstate '02000';
@@ -11497,7 +11497,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for values set @var2' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varbinary condition for sqlstate '02000';
@@ -11507,7 +11507,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for varbinary set' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varchar condition for sqlstate '02000';
@@ -11517,7 +11517,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for varchar set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varcharacter condition for sqlstate '02000';
@@ -11527,7 +11527,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for varcharact' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varying condition for sqlstate '02000';
@@ -11537,7 +11537,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for varying set @va' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare when condition for sqlstate '02000';
@@ -11547,7 +11547,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for when set @var2 = 1' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare where condition for sqlstate '02000';
@@ -11557,7 +11557,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for where set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare while condition for sqlstate '02000';
@@ -11567,7 +11567,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for while set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare with condition for sqlstate '02000';
@@ -11578,7 +11578,7 @@ declare exit handler for with set @var2 = 1;
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare write condition for sqlstate '02000';
@@ -11588,7 +11588,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for write set @var2 =' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare xor condition for sqlstate '02000';
@@ -11599,7 +11599,7 @@ declare exit handler for xor set @var2 = 1;
' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare year_month condition for sqlstate '02000';
@@ -11609,7 +11609,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
declare exit handler for year_month s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare zerofill condition for sqlstate '02000';
@@ -11625,7 +11625,7 @@ a stored procedure (continue- handler_type ).
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare continue handler for sqlstate '23000' set @x2 = 1;
@@ -11639,7 +11639,7 @@ CALL sp1();
DROP PROCEDURE sp1;
DROP PROCEDURE IF EXISTS handler1;
Warnings:
-Note 1305 PROCEDURE handler1 does not exist
+Note 1305 PROCEDURE db_storedproc.handler1 does not exist
CREATE PROCEDURE handler1()
BEGIN
declare undo handler for sqlstate '23000' set @x2 = 1;
@@ -11654,7 +11654,7 @@ set @x = 1;
insert into t values ' at line 3
DROP PROCEDURE IF EXISTS handler1;
Warnings:
-Note 1305 PROCEDURE handler1 does not exist
+Note 1305 PROCEDURE db_storedproc.handler1 does not exist
CREATE PROCEDURE handler1()
BEGIN
declare continueinv handler for sqlstate '2300' set @x2 = 1;
@@ -11670,7 +11670,7 @@ insert into t values (1);
s' at line 3
DROP PROCEDURE IF EXISTS handler1;
Warnings:
-Note 1305 PROCEDURE handler1 does not exist
+Note 1305 PROCEDURE db_storedproc.handler1 does not exist
CREATE PROCEDURE handler1()
BEGIN
declare undoinv handler for sqlstate '2300' set @x2 = 1;
@@ -11686,7 +11686,7 @@ insert into t values (1);
s' at line 3
DROP PROCEDURE IF EXISTS handler1;
Warnings:
-Note 1305 PROCEDURE handler1 does not exist
+Note 1305 PROCEDURE db_storedproc.handler1 does not exist
CREATE PROCEDURE handler1 ()
BEGIN
declare exitinv handler for sqlstate '2300' set @x2 = 1;
@@ -11702,7 +11702,7 @@ insert into t values (1);
s' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare accessible handler for sqlstate '02000' set @var2 = 1;
@@ -11711,7 +11711,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare add handler for sqlstate '02000' set @var2 = 1;
@@ -11720,7 +11720,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare all handler for sqlstate '02000' set @var2 = 1;
@@ -11729,7 +11729,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare alter handler for sqlstate '02000' set @var2 = 1;
@@ -11738,7 +11738,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare analyze handler for sqlstate '02000' set @var2 = 1;
@@ -11747,7 +11747,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare and handler for sqlstate '02000' set @var2 = 1;
@@ -11756,7 +11756,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare as handler for sqlstate '02000' set @var2 = 1;
@@ -11765,7 +11765,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare asc handler for sqlstate '02000' set @var2 = 1;
@@ -11774,7 +11774,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare asensitive handler for sqlstate '02000' set @var2 = 1;
@@ -11783,7 +11783,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare before handler for sqlstate '02000' set @var2 = 1;
@@ -11792,7 +11792,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare between handler for sqlstate '02000' set @var2 = 1;
@@ -11801,7 +11801,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare bigint handler for sqlstate '02000' set @var2 = 1;
@@ -11810,7 +11810,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare binary handler for sqlstate '02000' set @var2 = 1;
@@ -11819,7 +11819,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare blob handler for sqlstate '02000' set @var2 = 1;
@@ -11828,7 +11828,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare both handler for sqlstate '02000' set @var2 = 1;
@@ -11837,7 +11837,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare by handler for sqlstate '02000' set @var2 = 1;
@@ -11846,7 +11846,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare call handler for sqlstate '02000' set @var2 = 1;
@@ -11855,7 +11855,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cascade handler for sqlstate '02000' set @var2 = 1;
@@ -11864,7 +11864,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare case handler for sqlstate '02000' set @var2 = 1;
@@ -11873,7 +11873,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare change handler for sqlstate '02000' set @var2 = 1;
@@ -11882,7 +11882,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare char handler for sqlstate '02000' set @var2 = 1;
@@ -11891,7 +11891,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare character handler for sqlstate '02000' set @var2 = 1;
@@ -11900,7 +11900,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare check handler for sqlstate '02000' set @var2 = 1;
@@ -11909,7 +11909,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare collate handler for sqlstate '02000' set @var2 = 1;
@@ -11918,7 +11918,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare column handler for sqlstate '02000' set @var2 = 1;
@@ -11927,7 +11927,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare condition handler for sqlstate '02000' set @var2 = 1;
@@ -11936,7 +11936,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare constraint handler for sqlstate '02000' set @var2 = 1;
@@ -11945,7 +11945,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare continue handler for sqlstate '02000' set @var2 = 1;
@@ -11959,7 +11959,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare create handler for sqlstate '02000' set @var2 = 1;
@@ -11968,7 +11968,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cross handler for sqlstate '02000' set @var2 = 1;
@@ -11977,7 +11977,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_date handler for sqlstate '02000' set @var2 = 1;
@@ -11986,7 +11986,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_time handler for sqlstate '02000' set @var2 = 1;
@@ -11995,7 +11995,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_timestamp handler for sqlstate '02000' set @var2 = 1;
@@ -12004,7 +12004,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare current_user handler for sqlstate '02000' set @var2 = 1;
@@ -12013,7 +12013,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare cursor handler for sqlstate '02000' set @var2 = 1;
@@ -12022,7 +12022,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare database handler for sqlstate '02000' set @var2 = 1;
@@ -12031,7 +12031,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare databases handler for sqlstate '02000' set @var2 = 1;
@@ -12040,7 +12040,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_hour handler for sqlstate '02000' set @var2 = 1;
@@ -12049,7 +12049,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_microsecond handler for sqlstate '02000' set @var2 = 1;
@@ -12058,7 +12058,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_minute handler for sqlstate '02000' set @var2 = 1;
@@ -12067,7 +12067,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare day_second handler for sqlstate '02000' set @var2 = 1;
@@ -12076,7 +12076,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare dec handler for sqlstate '02000' set @var2 = 1;
@@ -12085,7 +12085,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare decimal handler for sqlstate '02000' set @var2 = 1;
@@ -12094,7 +12094,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare declare handler for sqlstate '02000' set @var2 = 1;
@@ -12103,7 +12103,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare default handler for sqlstate '02000' set @var2 = 1;
@@ -12112,7 +12112,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare delayed handler for sqlstate '02000' set @var2 = 1;
@@ -12121,7 +12121,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare delete handler for sqlstate '02000' set @var2 = 1;
@@ -12130,7 +12130,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare desc handler for sqlstate '02000' set @var2 = 1;
@@ -12139,7 +12139,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare describe handler for sqlstate '02000' set @var2 = 1;
@@ -12148,7 +12148,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare deterministic handler for sqlstate '02000' set @var2 = 1;
@@ -12157,7 +12157,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare distinct handler for sqlstate '02000' set @var2 = 1;
@@ -12166,7 +12166,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare distinctrow handler for sqlstate '02000' set @var2 = 1;
@@ -12175,7 +12175,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare div handler for sqlstate '02000' set @var2 = 1;
@@ -12184,7 +12184,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare double handler for sqlstate '02000' set @var2 = 1;
@@ -12193,7 +12193,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare drop handler for sqlstate '02000' set @var2 = 1;
@@ -12202,7 +12202,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare dual handler for sqlstate '02000' set @var2 = 1;
@@ -12211,7 +12211,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare each handler for sqlstate '02000' set @var2 = 1;
@@ -12220,7 +12220,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare else handler for sqlstate '02000' set @var2 = 1;
@@ -12229,7 +12229,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare elseif handler for sqlstate '02000' set @var2 = 1;
@@ -12238,7 +12238,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare enclosed handler for sqlstate '02000' set @var2 = 1;
@@ -12247,7 +12247,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare escaped handler for sqlstate '02000' set @var2 = 1;
@@ -12256,7 +12256,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare exists handler for sqlstate '02000' set @var2 = 1;
@@ -12265,7 +12265,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare exit handler for sqlstate '02000' set @var2 = 1;
@@ -12279,7 +12279,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare false handler for sqlstate '02000' set @var2 = 1;
@@ -12288,7 +12288,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare fetch handler for sqlstate '02000' set @var2 = 1;
@@ -12297,7 +12297,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float handler for sqlstate '02000' set @var2 = 1;
@@ -12306,7 +12306,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float4 handler for sqlstate '02000' set @var2 = 1;
@@ -12315,7 +12315,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare float8 handler for sqlstate '02000' set @var2 = 1;
@@ -12324,7 +12324,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare for handler for sqlstate '02000' set @var2 = 1;
@@ -12333,7 +12333,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare force handler for sqlstate '02000' set @var2 = 1;
@@ -12342,7 +12342,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare foreign handler for sqlstate '02000' set @var2 = 1;
@@ -12351,7 +12351,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare from handler for sqlstate '02000' set @var2 = 1;
@@ -12360,7 +12360,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare fulltext handler for sqlstate '02000' set @var2 = 1;
@@ -12369,7 +12369,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare grant handler for sqlstate '02000' set @var2 = 1;
@@ -12378,7 +12378,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare group handler for sqlstate '02000' set @var2 = 1;
@@ -12387,7 +12387,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare having handler for sqlstate '02000' set @var2 = 1;
@@ -12396,7 +12396,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare high_priority handler for sqlstate '02000' set @var2 = 1;
@@ -12405,7 +12405,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_microsecond handler for sqlstate '02000' set @var2 = 1;
@@ -12414,7 +12414,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_minute handler for sqlstate '02000' set @var2 = 1;
@@ -12423,7 +12423,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare hour_second handler for sqlstate '02000' set @var2 = 1;
@@ -12432,7 +12432,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare if handler for sqlstate '02000' set @var2 = 1;
@@ -12441,7 +12441,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare ignore handler for sqlstate '02000' set @var2 = 1;
@@ -12450,7 +12450,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare in handler for sqlstate '02000' set @var2 = 1;
@@ -12459,7 +12459,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare index handler for sqlstate '02000' set @var2 = 1;
@@ -12468,7 +12468,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare infile handler for sqlstate '02000' set @var2 = 1;
@@ -12477,7 +12477,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare inner handler for sqlstate '02000' set @var2 = 1;
@@ -12486,7 +12486,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare inout handler for sqlstate '02000' set @var2 = 1;
@@ -12495,7 +12495,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare insensitive handler for sqlstate '02000' set @var2 = 1;
@@ -12504,7 +12504,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare insert handler for sqlstate '02000' set @var2 = 1;
@@ -12513,7 +12513,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int handler for sqlstate '02000' set @var2 = 1;
@@ -12522,7 +12522,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int1 handler for sqlstate '02000' set @var2 = 1;
@@ -12531,7 +12531,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int2 handler for sqlstate '02000' set @var2 = 1;
@@ -12540,7 +12540,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int3 handler for sqlstate '02000' set @var2 = 1;
@@ -12549,7 +12549,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int4 handler for sqlstate '02000' set @var2 = 1;
@@ -12558,7 +12558,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare int8 handler for sqlstate '02000' set @var2 = 1;
@@ -12567,7 +12567,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare integer handler for sqlstate '02000' set @var2 = 1;
@@ -12576,7 +12576,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare interval handler for sqlstate '02000' set @var2 = 1;
@@ -12585,7 +12585,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare into handler for sqlstate '02000' set @var2 = 1;
@@ -12594,7 +12594,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare is handler for sqlstate '02000' set @var2 = 1;
@@ -12603,7 +12603,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare iterate handler for sqlstate '02000' set @var2 = 1;
@@ -12612,7 +12612,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare join handler for sqlstate '02000' set @var2 = 1;
@@ -12621,7 +12621,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare key handler for sqlstate '02000' set @var2 = 1;
@@ -12630,7 +12630,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare keys handler for sqlstate '02000' set @var2 = 1;
@@ -12639,7 +12639,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare kill handler for sqlstate '02000' set @var2 = 1;
@@ -12648,7 +12648,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare leading handler for sqlstate '02000' set @var2 = 1;
@@ -12657,7 +12657,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare leave handler for sqlstate '02000' set @var2 = 1;
@@ -12666,7 +12666,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare left handler for sqlstate '02000' set @var2 = 1;
@@ -12675,7 +12675,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare like handler for sqlstate '02000' set @var2 = 1;
@@ -12684,7 +12684,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare limit handler for sqlstate '02000' set @var2 = 1;
@@ -12693,7 +12693,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare linear handler for sqlstate '02000' set @var2 = 1;
@@ -12702,7 +12702,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare lines handler for sqlstate '02000' set @var2 = 1;
@@ -12711,7 +12711,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare load handler for sqlstate '02000' set @var2 = 1;
@@ -12720,7 +12720,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare localtime handler for sqlstate '02000' set @var2 = 1;
@@ -12729,7 +12729,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare localtimestamp handler for sqlstate '02000' set @var2 = 1;
@@ -12738,7 +12738,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare lock handler for sqlstate '02000' set @var2 = 1;
@@ -12747,7 +12747,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare long handler for sqlstate '02000' set @var2 = 1;
@@ -12756,7 +12756,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare longblob handler for sqlstate '02000' set @var2 = 1;
@@ -12765,7 +12765,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare longtext handler for sqlstate '02000' set @var2 = 1;
@@ -12774,7 +12774,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare loop handler for sqlstate '02000' set @var2 = 1;
@@ -12783,7 +12783,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare low_priority handler for sqlstate '02000' set @var2 = 1;
@@ -12792,7 +12792,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare master_ssl_verify_server_cert handler for sqlstate '02000' set @var2 = 1;
@@ -12801,7 +12801,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare match handler for sqlstate '02000' set @var2 = 1;
@@ -12810,7 +12810,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumblob handler for sqlstate '02000' set @var2 = 1;
@@ -12819,7 +12819,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumint handler for sqlstate '02000' set @var2 = 1;
@@ -12828,7 +12828,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mediumtext handler for sqlstate '02000' set @var2 = 1;
@@ -12837,7 +12837,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare middleint handler for sqlstate '02000' set @var2 = 1;
@@ -12846,7 +12846,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare minute_microsecond handler for sqlstate '02000' set @var2 = 1;
@@ -12855,7 +12855,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare minute_second handler for sqlstate '02000' set @var2 = 1;
@@ -12864,7 +12864,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare mod handler for sqlstate '02000' set @var2 = 1;
@@ -12873,7 +12873,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare modifies handler for sqlstate '02000' set @var2 = 1;
@@ -12882,7 +12882,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare natural handler for sqlstate '02000' set @var2 = 1;
@@ -12891,7 +12891,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare not handler for sqlstate '02000' set @var2 = 1;
@@ -12900,7 +12900,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare no_write_to_binlog handler for sqlstate '02000' set @var2 = 1;
@@ -12909,7 +12909,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare null handler for sqlstate '02000' set @var2 = 1;
@@ -12918,7 +12918,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare numeric handler for sqlstate '02000' set @var2 = 1;
@@ -12927,7 +12927,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare on handler for sqlstate '02000' set @var2 = 1;
@@ -12936,7 +12936,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare optimize handler for sqlstate '02000' set @var2 = 1;
@@ -12945,7 +12945,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare option handler for sqlstate '02000' set @var2 = 1;
@@ -12954,7 +12954,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare optionally handler for sqlstate '02000' set @var2 = 1;
@@ -12963,7 +12963,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare or handler for sqlstate '02000' set @var2 = 1;
@@ -12972,7 +12972,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare order handler for sqlstate '02000' set @var2 = 1;
@@ -12981,7 +12981,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare out handler for sqlstate '02000' set @var2 = 1;
@@ -12990,7 +12990,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare outer handler for sqlstate '02000' set @var2 = 1;
@@ -12999,7 +12999,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare outfile handler for sqlstate '02000' set @var2 = 1;
@@ -13008,7 +13008,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare precision handler for sqlstate '02000' set @var2 = 1;
@@ -13017,7 +13017,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare primary handler for sqlstate '02000' set @var2 = 1;
@@ -13026,7 +13026,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare privileges handler for sqlstate '02000' set @var2 = 1;
@@ -13035,7 +13035,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare procedure handler for sqlstate '02000' set @var2 = 1;
@@ -13044,7 +13044,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare purge handler for sqlstate '02000' set @var2 = 1;
@@ -13053,7 +13053,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare range handler for sqlstate '02000' set @var2 = 1;
@@ -13062,7 +13062,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read handler for sqlstate '02000' set @var2 = 1;
@@ -13071,7 +13071,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare reads handler for sqlstate '02000' set @var2 = 1;
@@ -13080,7 +13080,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read_only handler for sqlstate '02000' set @var2 = 1;
@@ -13089,7 +13089,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare read_write handler for sqlstate '02000' set @var2 = 1;
@@ -13098,7 +13098,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare real handler for sqlstate '02000' set @var2 = 1;
@@ -13107,7 +13107,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare references handler for sqlstate '02000' set @var2 = 1;
@@ -13116,7 +13116,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare regexp handler for sqlstate '02000' set @var2 = 1;
@@ -13125,7 +13125,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare release handler for sqlstate '02000' set @var2 = 1;
@@ -13134,7 +13134,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare rename handler for sqlstate '02000' set @var2 = 1;
@@ -13143,7 +13143,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare repeat handler for sqlstate '02000' set @var2 = 1;
@@ -13152,7 +13152,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare replace handler for sqlstate '02000' set @var2 = 1;
@@ -13161,7 +13161,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare require handler for sqlstate '02000' set @var2 = 1;
@@ -13170,7 +13170,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare restrict handler for sqlstate '02000' set @var2 = 1;
@@ -13179,7 +13179,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare return handler for sqlstate '02000' set @var2 = 1;
@@ -13188,7 +13188,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare revoke handler for sqlstate '02000' set @var2 = 1;
@@ -13197,7 +13197,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare right handler for sqlstate '02000' set @var2 = 1;
@@ -13206,7 +13206,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare rlike handler for sqlstate '02000' set @var2 = 1;
@@ -13215,7 +13215,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare schema handler for sqlstate '02000' set @var2 = 1;
@@ -13224,7 +13224,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare schemas handler for sqlstate '02000' set @var2 = 1;
@@ -13233,7 +13233,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare second_microsecond handler for sqlstate '02000' set @var2 = 1;
@@ -13242,7 +13242,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare select handler for sqlstate '02000' set @var2 = 1;
@@ -13251,7 +13251,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sensitive handler for sqlstate '02000' set @var2 = 1;
@@ -13260,7 +13260,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare separator handler for sqlstate '02000' set @var2 = 1;
@@ -13269,7 +13269,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare set handler for sqlstate '02000' set @var2 = 1;
@@ -13278,7 +13278,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare show handler for sqlstate '02000' set @var2 = 1;
@@ -13287,7 +13287,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare smallint handler for sqlstate '02000' set @var2 = 1;
@@ -13296,7 +13296,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare spatial handler for sqlstate '02000' set @var2 = 1;
@@ -13305,7 +13305,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare specific handler for sqlstate '02000' set @var2 = 1;
@@ -13314,7 +13314,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql handler for sqlstate '02000' set @var2 = 1;
@@ -13323,7 +13323,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlexception handler for sqlstate '02000' set @var2 = 1;
@@ -13332,7 +13332,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlstate handler for sqlstate '02000' set @var2 = 1;
@@ -13341,7 +13341,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sqlwarning handler for sqlstate '02000' set @var2 = 1;
@@ -13350,7 +13350,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_big_result handler for sqlstate '02000' set @var2 = 1;
@@ -13359,7 +13359,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_calc_found_rows handler for sqlstate '02000' set @var2 = 1;
@@ -13368,7 +13368,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare sql_small_result handler for sqlstate '02000' set @var2 = 1;
@@ -13377,7 +13377,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare ssl handler for sqlstate '02000' set @var2 = 1;
@@ -13386,7 +13386,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare starting handler for sqlstate '02000' set @var2 = 1;
@@ -13395,7 +13395,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare straight_join handler for sqlstate '02000' set @var2 = 1;
@@ -13404,7 +13404,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare table handler for sqlstate '02000' set @var2 = 1;
@@ -13413,7 +13413,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare terminated handler for sqlstate '02000' set @var2 = 1;
@@ -13422,7 +13422,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare then handler for sqlstate '02000' set @var2 = 1;
@@ -13431,7 +13431,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinyblob handler for sqlstate '02000' set @var2 = 1;
@@ -13440,7 +13440,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinyint handler for sqlstate '02000' set @var2 = 1;
@@ -13449,7 +13449,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare tinytext handler for sqlstate '02000' set @var2 = 1;
@@ -13458,7 +13458,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare to handler for sqlstate '02000' set @var2 = 1;
@@ -13467,7 +13467,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare trailing handler for sqlstate '02000' set @var2 = 1;
@@ -13476,7 +13476,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare trigger handler for sqlstate '02000' set @var2 = 1;
@@ -13485,7 +13485,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare true handler for sqlstate '02000' set @var2 = 1;
@@ -13494,7 +13494,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare undo handler for sqlstate '02000' set @var2 = 1;
@@ -13503,7 +13503,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare union handler for sqlstate '02000' set @var2 = 1;
@@ -13512,7 +13512,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unique handler for sqlstate '02000' set @var2 = 1;
@@ -13521,7 +13521,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unlock handler for sqlstate '02000' set @var2 = 1;
@@ -13530,7 +13530,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare unsigned handler for sqlstate '02000' set @var2 = 1;
@@ -13539,7 +13539,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare update handler for sqlstate '02000' set @var2 = 1;
@@ -13548,7 +13548,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare usage handler for sqlstate '02000' set @var2 = 1;
@@ -13557,7 +13557,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare use handler for sqlstate '02000' set @var2 = 1;
@@ -13566,7 +13566,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare using handler for sqlstate '02000' set @var2 = 1;
@@ -13575,7 +13575,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_date handler for sqlstate '02000' set @var2 = 1;
@@ -13584,7 +13584,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_time handler for sqlstate '02000' set @var2 = 1;
@@ -13593,7 +13593,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare utc_timestamp handler for sqlstate '02000' set @var2 = 1;
@@ -13602,7 +13602,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare values handler for sqlstate '02000' set @var2 = 1;
@@ -13611,7 +13611,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varbinary handler for sqlstate '02000' set @var2 = 1;
@@ -13620,7 +13620,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varchar handler for sqlstate '02000' set @var2 = 1;
@@ -13629,7 +13629,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varcharacter handler for sqlstate '02000' set @var2 = 1;
@@ -13638,7 +13638,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare varying handler for sqlstate '02000' set @var2 = 1;
@@ -13647,7 +13647,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare when handler for sqlstate '02000' set @var2 = 1;
@@ -13656,7 +13656,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare where handler for sqlstate '02000' set @var2 = 1;
@@ -13665,7 +13665,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare while handler for sqlstate '02000' set @var2 = 1;
@@ -13674,7 +13674,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare with handler for sqlstate '02000' set @var2 = 1;
@@ -13683,7 +13683,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare write handler for sqlstate '02000' set @var2 = 1;
@@ -13692,7 +13692,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare xor handler for sqlstate '02000' set @var2 = 1;
@@ -13701,7 +13701,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare year_month handler for sqlstate '02000' set @var2 = 1;
@@ -13710,7 +13710,7 @@ ERROR 42000: You have an error in your SQL syntax; check the manual that corresp
END' at line 3
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare zerofill handler for sqlstate '02000' set @var2 = 1;
@@ -13765,7 +13765,7 @@ SET @x = 0;
SET @y = 0;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
SET @start_global_value = @@GLOBAL.sort_buffer_size;
CREATE PROCEDURE sp1()
BEGIN
@@ -13813,7 +13813,7 @@ Testcase 4.2.30:
set @xx=0;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx int;
@@ -13844,7 +13844,7 @@ Testcase 4.2.31 - a:
set @xx=0;
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx char;
@@ -13863,7 +13863,7 @@ Testcase 4.2.31 - b:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx float;
@@ -13891,7 +13891,7 @@ Testcase 4.2.31 - c:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx datetime;
@@ -13919,7 +13919,7 @@ Testcase 4.2.31 - d:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx varchar(20);
@@ -13935,7 +13935,7 @@ Testcase 4.2.31 - e:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare xx tinyint;
@@ -13963,7 +13963,7 @@ Testcase 4.2.37:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare x integer; declare y integer;
@@ -14365,7 +14365,7 @@ Testcase 4.2.38:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare notable condition for sqlstate '42S02';
@@ -14383,7 +14383,7 @@ Testcase 4.2.39:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare cond1 condition for sqlstate '42000';
@@ -14397,7 +14397,7 @@ Testcase 4.2.41:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare cond1 condition for sqlstate '1';
@@ -14536,7 +14536,7 @@ END//
ERROR 42000: Duplicate handler declared in the same block
DROP PROCEDURE IF EXISTS handler1;
Warnings:
-Note 1305 PROCEDURE handler1 does not exist
+Note 1305 PROCEDURE db_storedproc.handler1 does not exist
CREATE PROCEDURE handler1 ()
BEGIN
declare mycondition condition for sqlstate '23000';
@@ -14742,7 +14742,7 @@ Testcase 4.2.57:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -14772,7 +14772,7 @@ Testcase 4.2.59:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -14827,7 +14827,7 @@ Testcase 4.2.60:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -14877,7 +14877,7 @@ Testcase 4.2.62:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -14944,7 +14944,7 @@ Testcase 4.2.63:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1()
BEGIN
declare done int default 0;
@@ -14993,7 +14993,7 @@ Testcase 4.2.64:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -15019,7 +15019,7 @@ Testcase 4.2.65:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -15045,7 +15045,7 @@ Testcase 4.2.66:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -15075,7 +15075,7 @@ Testcase 4.2.67:
--------------------------------------------------------------------------------
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -15105,7 +15105,7 @@ create table temp1( f1 char(20), f2 char(20), f3 int, f4 char(20) );
create table temp2( f1 char(20), f2 char(20), f3 int, f4 char(20) );
DROP PROCEDURE IF EXISTS sp1;
Warnings:
-Note 1305 PROCEDURE sp1 does not exist
+Note 1305 PROCEDURE db_storedproc.sp1 does not exist
CREATE PROCEDURE sp1( )
BEGIN
declare done int default 0;
@@ -22636,7 +22636,7 @@ Testcase 4.9.6:
--------------------------------------------------------------------------------
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
CREATE FUNCTION fn1(i1 longtext) returns longtext
BEGIN
SELECT * from t9 limit 0, 100;
@@ -22645,7 +22645,7 @@ END//
ERROR 0A000: Not allowed to return a result set from a function
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
drop table IF EXISTS res_t9;
Warnings:
Note 1051 Unknown table 'res_t9'
@@ -22660,7 +22660,7 @@ END//
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
drop table IF EXISTS res_t9;
CREATE FUNCTION fn1(i1 longtext) returns longtext
BEGIN
@@ -22671,7 +22671,7 @@ END//
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
drop table IF EXISTS res_t9;
Warnings:
Note 1051 Unknown table 'res_t9'
@@ -22685,7 +22685,7 @@ END//
ERROR HY000: Explicit or implicit commit is not allowed in stored function or trigger.
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
drop table IF EXISTS res_t9;
create table res_t9 (f1 int, f2 char(25), f3 int);
insert into res_t9 values (10, 'abc', 20);
@@ -22699,7 +22699,7 @@ ERROR HY000: Explicit or implicit commit is not allowed in stored function or tr
drop table res_t9;
DROP FUNCTION IF EXISTS fn1;
Warnings:
-Note 1305 FUNCTION fn1 does not exist
+Note 1305 FUNCTION db_storedproc.fn1 does not exist
Testcase 4.9.7:
--------------------------------------------------------------------------------
@@ -22722,8 +22722,8 @@ END//
CALL sp6 (10, 20, 30, 40, 50);
f1 f2 f3
10 30 50
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-res_t9 1 index_1 1 f1 A NULL 5 NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+res_t9 1 index_1 1 f1 A NULL 5 NULL YES BTREE
DROP PROCEDURE sp6;
drop table res_t9;
diff --git a/mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result b/mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result
new file mode 100644
index 00000000000..81de6e228e0
--- /dev/null
+++ b/mysql-test/suite/large_tests/r/rpl_slave_net_timeout.result
@@ -0,0 +1,25 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+set @save_general_log = @@global.general_log;
+set @save_log_output = @@global.log_output;
+set @save_slave_net_timeout = @@global.slave_net_timeout;
+set @@global.general_log = ON;
+set @@global.log_output = 'table,file';
+include/stop_slave.inc
+set @@global.slave_net_timeout = @@global.net_read_timeout * 2;
+change master to master_host = '127.0.0.1',master_port = MASTER_PORT,
+master_user = 'root', master_heartbeat_period = 0;
+include/start_slave.inc
+include/stop_slave.inc
+select event_time from (select event_time from mysql.general_log as t_1 where command_type like 'Connect' order by event_time desc limit 2) as t_2 order by event_time desc limit 1 into @ts_last;
+select event_time from (select event_time from mysql.general_log as t_1 where command_type like 'Connect' order by event_time desc limit 2) as t_2 order by event_time asc limit 1 into @ts_prev;
+select @result as 'Must be 1';
+Must be 1
+1
+set @@global.general_log = @save_general_log;
+set @@global.log_output = @save_log_output;
+set @@global.slave_net_timeout = @save_slave_net_timeout;
diff --git a/mysql-test/suite/large_tests/t/rpl_slave_net_timeout-slave.opt b/mysql-test/suite/large_tests/t/rpl_slave_net_timeout-slave.opt
new file mode 100644
index 00000000000..281566c9ad9
--- /dev/null
+++ b/mysql-test/suite/large_tests/t/rpl_slave_net_timeout-slave.opt
@@ -0,0 +1 @@
+--net_read_timeout=5
diff --git a/mysql-test/suite/large_tests/t/rpl_slave_net_timeout.test b/mysql-test/suite/large_tests/t/rpl_slave_net_timeout.test
new file mode 100644
index 00000000000..9a2cdc3b596
--- /dev/null
+++ b/mysql-test/suite/large_tests/t/rpl_slave_net_timeout.test
@@ -0,0 +1,81 @@
+#
+# Testing reconnecting by slave as specified by `slave_net_timeout'
+#
+# Bug #50296 Slave reconnects earlier than the prescribed slave_net_timeout value
+#
+--source include/have_csv.inc
+--source include/master-slave.inc
+
+
+# save global env
+connection master;
+set @save_general_log = @@global.general_log;
+set @save_log_output = @@global.log_output;
+
+connection slave;
+set @save_slave_net_timeout = @@global.slave_net_timeout;
+
+connection master;
+set @@global.general_log = ON;
+set @@global.log_output = 'table,file';
+
+connection slave;
+--source include/stop_slave.inc
+--disable_warnings
+set @@global.slave_net_timeout = @@global.net_read_timeout * 2;
+--enable_warnings
+let $idle_time=`select @@global.slave_net_timeout * 2`;
+
+#
+# if heartbeat is disabled then reconnecting to the idle master
+# should happen with `slave_net_timeout' period.
+# Since it's the real time that is measured, `slave_net_timeout'
+# merely guarantees that reconnecting can *not* happen earlier of a value specified.
+# That is there can't an exact estimate for how many time it will happen.
+#
+# The following lines verify that having idle master
+# for more than 2 * slave_net_timeout seconds and
+# slave.net_read_timeout < slave_net_timeout
+# won't cause reconnecting by the slave within at least
+# slave_net_timeout interval.
+--replace_result $MASTER_MYPORT MASTER_PORT
+eval change master to master_host = '127.0.0.1',master_port = $MASTER_MYPORT,
+master_user = 'root', master_heartbeat_period = 0;
+
+let $slave_net_timeout = `select @@global.slave_net_timeout`;
+
+--source include/start_slave.inc
+
+--disable_query_log
+--disable_result_log
+eval select 'master is idle for ', sleep($idle_time);
+--enable_result_log
+--enable_query_log
+
+--source include/stop_slave.inc
+
+# querying general-log
+
+connection master;
+
+# In particular the last reconnection timestamp must be greater or equal to
+# the previous one + slave_net_timeout
+
+select event_time from (select event_time from mysql.general_log as t_1 where command_type like 'Connect' order by event_time desc limit 2) as t_2 order by event_time desc limit 1 into @ts_last;
+select event_time from (select event_time from mysql.general_log as t_1 where command_type like 'Connect' order by event_time desc limit 2) as t_2 order by event_time asc limit 1 into @ts_prev;
+
+--disable_query_log
+eval select time_to_sec(@ts_last) - $slave_net_timeout >= time_to_sec(@ts_prev) into @result;
+--enable_query_log
+
+select @result as 'Must be 1';
+
+# cleanup
+
+# restore global env
+connection master;
+set @@global.general_log = @save_general_log;
+set @@global.log_output = @save_log_output;
+connection slave;
+set @@global.slave_net_timeout = @save_slave_net_timeout;
+
diff --git a/mysql-test/suite/ndb/r/ndb_alter_table3.result b/mysql-test/suite/ndb/r/ndb_alter_table3.result
index ee7c9b1c7b0..bf80d95bf82 100644
--- a/mysql-test/suite/ndb/r/ndb_alter_table3.result
+++ b/mysql-test/suite/ndb/r/ndb_alter_table3.result
@@ -4,18 +4,18 @@ engine=ndb;
insert into t1 values (1,'one','one'), (2,'two','two'), (3,'three','three');
create index c on t1(c);
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 3 NULL NULL BTREE
-t1 1 b 1 b A 3 NULL NULL YES BTREE
-t1 1 c 1 c A 3 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A 3 NULL NULL BTREE
+t1 1 b 1 b A 3 NULL NULL YES BTREE
+t1 1 c 1 c A 3 NULL NULL YES BTREE
select * from t1 where c = 'two';
a b c
2 two two
alter table t1 drop index c;
show indexes from t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 a A 3 NULL NULL BTREE
-t1 1 b 1 b A 3 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 a A 3 NULL NULL BTREE
+t1 1 b 1 b A 3 NULL NULL YES BTREE
select * from t1 where c = 'two';
a b c
2 two two
diff --git a/mysql-test/suite/ndb/r/ndb_basic.result b/mysql-test/suite/ndb/r/ndb_basic.result
index cbc320908ac..8cb86fb4c2b 100644
--- a/mysql-test/suite/ndb/r/ndb_basic.result
+++ b/mysql-test/suite/ndb/r/ndb_basic.result
@@ -39,12 +39,12 @@ attr2 INT,
attr3 VARCHAR(10)
) ENGINE=ndbcluster;
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 pk1 A 0 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 pk1 A 0 NULL NULL BTREE
INSERT INTO t1 VALUES (9410,9412, NULL, '9412'), (9411,9413, 17, '9413');
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 0 PRIMARY 1 pk1 A 2 NULL NULL BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 0 PRIMARY 1 pk1 A 2 NULL NULL BTREE
SELECT pk1 FROM t1 ORDER BY pk1;
pk1
9410
@@ -787,6 +787,7 @@ f1 f2 f3
222222 bbbbbb 2
drop table t1;
Illegal ndb error code: 1186
+MySQL error code 1186 (ER_FLUSH_MASTER_BINLOG_CLOSED): Binlog closed, cannot RESET MASTER
CREATE TABLE t1 (
a VARBINARY(40) NOT NULL,
b VARCHAR (256) CHARACTER SET UTF8 NOT NULL,
diff --git a/mysql-test/suite/ndb/r/ndb_dd_ddl.result b/mysql-test/suite/ndb/r/ndb_dd_ddl.result
index 2ea073d87cd..35516efb48c 100644
--- a/mysql-test/suite/ndb/r/ndb_dd_ddl.result
+++ b/mysql-test/suite/ndb/r/ndb_dd_ddl.result
@@ -308,7 +308,7 @@ ENGINE = NDB;
DROP USER mysqltest_u1@localhost;
DROP USER mysqltest_u2@localhost;
-DROP DATABASE IF EXISTS mysqltest2;
+DROP DATABASE mysqltest2;
# -----------------------------------------------------------------
# End 6.0 test
diff --git a/mysql-test/suite/ndb/r/ndb_index_ordered.result b/mysql-test/suite/ndb/r/ndb_index_ordered.result
index a29b5343d7c..c99db354314 100644
--- a/mysql-test/suite/ndb/r/ndb_index_ordered.result
+++ b/mysql-test/suite/ndb/r/ndb_index_ordered.result
@@ -637,21 +637,6 @@ select count(*)- 4 from t1 use index (v) where v > 0000965.00042;
count(*)- 4
0
drop table t1;
-create table t1(a int primary key, b int not null, index(b));
-insert into t1 values (1,1), (2,2);
-set autocommit=0;
-begin;
-select count(*) from t1;
-count(*)
-2
-ALTER TABLE t1 ADD COLUMN c int;
-select a from t1 where b = 2;
-a
-2
-show tables;
-Tables_in_test
-t1
-drop table t1;
create table t1 (a int, c varchar(10),
primary key using hash (a), index(c)) engine=ndb;
insert into t1 (a, c) values (1,'aaa'),(3,'bbb');
diff --git a/mysql-test/suite/ndb/r/ps_7ndb.result b/mysql-test/suite/ndb/r/ps_7ndb.result
index fcb2d641cf0..cab660e391c 100644
--- a/mysql-test/suite/ndb/r/ps_7ndb.result
+++ b/mysql-test/suite/ndb/r/ps_7ndb.result
@@ -1771,11 +1771,11 @@ t5 CREATE TABLE `t5` (
`const06` varchar(10) NOT NULL DEFAULT '',
`param06` longtext,
`const07` date DEFAULT NULL,
- `param07` longblob,
+ `param07` longtext,
`const08` varchar(19) NOT NULL DEFAULT '',
`param08` longtext,
`const09` datetime DEFAULT NULL,
- `param09` longblob,
+ `param09` longtext,
`const10` int(10) NOT NULL DEFAULT '0',
`param10` bigint(20) DEFAULT NULL,
`const11` int(4) DEFAULT NULL,
@@ -1801,11 +1801,11 @@ def test t5 t5 param05 param05 252 4294967295 3 Y 144 0 63
def test t5 t5 const06 const06 253 10 10 N 1 0 8
def test t5 t5 param06 param06 252 4294967295 10 Y 16 0 8
def test t5 t5 const07 const07 10 10 10 Y 128 0 63
-def test t5 t5 param07 param07 252 4294967295 10 Y 144 0 63
+def test t5 t5 param07 param07 252 4294967295 10 Y 16 0 8
def test t5 t5 const08 const08 253 19 19 N 1 0 8
def test t5 t5 param08 param08 252 4294967295 19 Y 16 0 8
def test t5 t5 const09 const09 12 19 19 Y 128 0 63
-def test t5 t5 param09 param09 252 4294967295 19 Y 144 0 63
+def test t5 t5 param09 param09 252 4294967295 19 Y 16 0 8
def test t5 t5 const10 const10 3 10 9 N 32769 0 63
def test t5 t5 param10 param10 8 20 9 Y 32768 0 63
def test t5 t5 const11 const11 3 4 4 Y 32768 0 63
@@ -1912,10 +1912,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -1959,10 +1959,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2009,10 +2009,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2049,10 +2049,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2097,10 +2097,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2141,10 +2141,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
@@ -2187,10 +2187,10 @@ def @arg09 5 23 1 Y 32896 31 63
def @arg10 5 23 1 Y 32896 31 63
def @arg11 246 83 6 Y 32896 30 63
def @arg12 246 83 6 Y 32896 30 63
-def @arg13 251 16777216 10 Y 128 31 63
-def @arg14 251 16777216 19 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 8 Y 128 31 63
+def @arg13 251 16777216 10 Y 0 31 8
+def @arg14 251 16777216 19 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 8 Y 0 31 8
def @arg17 8 20 4 Y 32928 0 63
def @arg18 8 20 1 Y 32896 0 63
def @arg19 8 20 1 Y 32896 0 63
@@ -2225,10 +2225,10 @@ def @arg09 5 23 0 Y 32896 31 63
def @arg10 5 23 0 Y 32896 31 63
def @arg11 246 83 0 Y 32896 30 63
def @arg12 246 83 0 Y 32896 30 63
-def @arg13 251 16777216 0 Y 128 31 63
-def @arg14 251 16777216 0 Y 128 31 63
-def @arg15 251 16777216 19 Y 128 31 63
-def @arg16 251 16777216 0 Y 128 31 63
+def @arg13 251 16777216 0 Y 0 31 8
+def @arg14 251 16777216 0 Y 0 31 8
+def @arg15 251 16777216 19 Y 0 31 8
+def @arg16 251 16777216 0 Y 0 31 8
def @arg17 8 20 0 Y 32928 0 63
def @arg18 8 20 0 Y 32896 0 63
def @arg19 8 20 0 Y 32896 0 63
diff --git a/mysql-test/suite/ndb/t/disabled.def b/mysql-test/suite/ndb/t/disabled.def
index 0fc9a5d3ad6..4c5c792f4ef 100644
--- a/mysql-test/suite/ndb/t/disabled.def
+++ b/mysql-test/suite/ndb/t/disabled.def
@@ -10,6 +10,9 @@
#
##############################################################################
-ndb_partition_error2 : Bug#40989 ndb_partition_error2 needs maintenance
+ndb_partition_error2 : Bug#40989 ndb_partition_error2 needs maintenance
+ndb_condition_pushdown : Bug#49746 2010-02-08 alik ndb_condition_pushdown fails in mysql-next-mr
+
# the below testcase have been reworked to avoid the bug, test contains comment, keep bug open
+ndb_alter_table3 : Bug#45621 2009-06-10 alik A few test files are disabled due to WL#4284
diff --git a/mysql-test/suite/ndb/t/ndb_dd_ddl.test b/mysql-test/suite/ndb/t/ndb_dd_ddl.test
index 48d7b77c412..ca39be87c94 100644
--- a/mysql-test/suite/ndb/t/ndb_dd_ddl.test
+++ b/mysql-test/suite/ndb/t/ndb_dd_ddl.test
@@ -462,7 +462,7 @@ ENGINE = NDB;
DROP USER mysqltest_u1@localhost;
DROP USER mysqltest_u2@localhost;
-DROP DATABASE IF EXISTS mysqltest2;
+DROP DATABASE mysqltest2;
--echo
--echo # -----------------------------------------------------------------
diff --git a/mysql-test/suite/ndb/t/ndb_index_ordered.test b/mysql-test/suite/ndb/t/ndb_index_ordered.test
index 782f17ca5b2..c8dfc1de59f 100644
--- a/mysql-test/suite/ndb/t/ndb_index_ordered.test
+++ b/mysql-test/suite/ndb/t/ndb_index_ordered.test
@@ -333,21 +333,29 @@ select count(*)- 4 from t1 use index (v) where v > 0000965.00042;
drop table t1;
+#
+# Disabled due to WL#4284
+#
+# Needs to be reworked. It's not possible anymore to do a non-fast alter table
+# on a table that is being used by a pending transaction (transaction holds a
+# metadata lock on the table).
+#
# bug#7798
-create table t1(a int primary key, b int not null, index(b));
-insert into t1 values (1,1), (2,2);
-connect (con1,localhost,root,,test);
-connect (con2,localhost,root,,test);
-connection con1;
-set autocommit=0;
-begin;
-select count(*) from t1;
-connection con2;
-ALTER TABLE t1 ADD COLUMN c int;
-connection con1;
-select a from t1 where b = 2;
-show tables;
-drop table t1;
+# create table t1(a int primary key, b int not null, c int, index(b));
+# insert into t1 values (1,1,1), (2,2,2);
+# connect (con1,localhost,root,,test);
+# connect (con2,localhost,root,,test);
+# connection con1;
+# set autocommit=0;
+# begin;
+# select count(*) from t1;
+# connection con2;
+# ALTER TABLE t1 ADD COLUMN c int
+# connection con1;
+# select a from t1 where b = 2;
+# show tables;
+# drop table t1;
+#
# mysqld 5.0.13 crash, no bug#
create table t1 (a int, c varchar(10),
diff --git a/mysql-test/suite/parts/r/partition_innodb_status_file.result b/mysql-test/suite/parts/r/partition_innodb_status_file.result
new file mode 100644
index 00000000000..29b5a3b3766
--- /dev/null
+++ b/mysql-test/suite/parts/r/partition_innodb_status_file.result
@@ -0,0 +1,14 @@
+CREATE TABLE t1 (a INT) ENGINE = InnoDB PARTITION BY HASH(a);
+INSERT INTO t1 VALUES (0), (1), (2);
+START TRANSACTION;
+UPDATE t1 SET a = 5 WHERE a = 1;
+# Connection con1
+# InnoDB lock timeout and monitor thread runs every 15 seconds
+SET innodb_lock_wait_timeout = 20;
+START TRANSACTION;
+UPDATE t1 SET a = 3 WHERE a = 1;
+ERROR HY000: Lock wait timeout exceeded; try restarting transaction
+COMMIT;
+# Connection default
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/suite/parts/r/partition_special_innodb.result b/mysql-test/suite/parts/r/partition_special_innodb.result
index 26c1ac9356c..a9c5b2e766e 100644
--- a/mysql-test/suite/parts/r/partition_special_innodb.result
+++ b/mysql-test/suite/parts/r/partition_special_innodb.result
@@ -212,11 +212,7 @@ SET autocommit=OFF;
START TRANSACTION;
INSERT INTO t1 VALUES (NULL, 'first row t2');
SET autocommit=OFF;
+SET SESSION lock_wait_timeout= 1;
ALTER TABLE t1 AUTO_INCREMENT = 10;
ERROR HY000: Lock wait timeout exceeded; try restarting transaction
-INSERT INTO t1 VALUES (NULL, 'second row t2');
-SELECT a,b FROM t1 ORDER BY a;
-a b
-1 first row t2
-2 second row t2
DROP TABLE t1;
diff --git a/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt b/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt
new file mode 100644
index 00000000000..779962e8fca
--- /dev/null
+++ b/mysql-test/suite/parts/t/partition_innodb_status_file-master.opt
@@ -0,0 +1 @@
+--innodb-status-file=1
diff --git a/mysql-test/suite/parts/t/partition_innodb_status_file.test b/mysql-test/suite/parts/t/partition_innodb_status_file.test
new file mode 100644
index 00000000000..f066ce5d485
--- /dev/null
+++ b/mysql-test/suite/parts/t/partition_innodb_status_file.test
@@ -0,0 +1,20 @@
+--source include/have_innodb.inc
+--source include/have_partition.inc
+
+CREATE TABLE t1 (a INT) ENGINE = InnoDB PARTITION BY HASH(a);
+INSERT INTO t1 VALUES (0), (1), (2);
+START TRANSACTION;
+UPDATE t1 SET a = 5 WHERE a = 1;
+connect (con1, localhost, root,,);
+--echo # Connection con1
+--echo # InnoDB lock timeout and monitor thread runs every 15 seconds
+SET innodb_lock_wait_timeout = 20;
+START TRANSACTION;
+--error ER_LOCK_WAIT_TIMEOUT
+UPDATE t1 SET a = 3 WHERE a = 1;
+COMMIT;
+disconnect con1;
+connection default;
+--echo # Connection default
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/suite/parts/t/partition_special_innodb.test b/mysql-test/suite/parts/t/partition_special_innodb.test
index eac19f6d588..833e489558e 100644
--- a/mysql-test/suite/parts/t/partition_special_innodb.test
+++ b/mysql-test/suite/parts/t/partition_special_innodb.test
@@ -68,12 +68,10 @@ INSERT INTO t1 VALUES (NULL, 'first row t2');
--connection con2
SET autocommit=OFF;
+SET SESSION lock_wait_timeout= 1;
--error ER_LOCK_WAIT_TIMEOUT
ALTER TABLE t1 AUTO_INCREMENT = 10;
---connection con1
-INSERT INTO t1 VALUES (NULL, 'second row t2');
-SELECT a,b FROM t1 ORDER BY a;
--disconnect con2
--disconnect con1
--connection default
diff --git a/mysql-test/suite/perfschema/r/aggregate.result b/mysql-test/suite/perfschema/r/aggregate.result
index 598f9297cc5..197378ca38f 100644
--- a/mysql-test/suite/perfschema/r/aggregate.result
+++ b/mysql-test/suite/perfschema/r/aggregate.result
@@ -16,6 +16,7 @@ b CHAR(100) DEFAULT 'initial value')
ENGINE=MyISAM;
insert into t1 (id) values (1), (2), (3), (4), (5), (6), (7), (8);
update performance_schema.SETUP_INSTRUMENTS SET enabled = 'NO';
+update performance_schema.SETUP_CONSUMERS set enabled = 'NO';
set @dump_all=FALSE;
"Verifying file aggregate consistency"
SELECT EVENT_NAME, e.COUNT_READ, SUM(i.COUNT_READ)
@@ -51,14 +52,14 @@ SELECT EVENT_NAME, e.SUM_TIMER_WAIT, SUM(i.SUM_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(i.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(i.SUM_TIMER_WAIT))
OR @dump_all;
EVENT_NAME SUM_TIMER_WAIT SUM(i.SUM_TIMER_WAIT)
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(i.MIN_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(i.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(i.MIN_TIMER_WAIT))
AND (MIN(i.MIN_TIMER_WAIT) != 0)
OR @dump_all;
EVENT_NAME MIN_TIMER_WAIT MIN(i.MIN_TIMER_WAIT)
@@ -66,7 +67,7 @@ SELECT EVENT_NAME, e.MAX_TIMER_WAIT, MAX(i.MAX_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(i.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(i.MAX_TIMER_WAIT))
OR @dump_all;
EVENT_NAME MAX_TIMER_WAIT MAX(i.MAX_TIMER_WAIT)
"Verifying waits aggregate consistency (thread)"
@@ -75,7 +76,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(t.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(t.SUM_TIMER_WAIT))
OR @dump_all;
EVENT_NAME SUM_TIMER_WAIT SUM(t.SUM_TIMER_WAIT)
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(t.MIN_TIMER_WAIT)
@@ -83,7 +84,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(t.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(t.MIN_TIMER_WAIT))
AND (MIN(t.MIN_TIMER_WAIT) != 0)
OR @dump_all;
EVENT_NAME MIN_TIMER_WAIT MIN(t.MIN_TIMER_WAIT)
@@ -92,7 +93,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(t.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(t.MAX_TIMER_WAIT))
OR @dump_all;
EVENT_NAME MAX_TIMER_WAIT MAX(t.MAX_TIMER_WAIT)
update performance_schema.SETUP_CONSUMERS set enabled = 'YES';
diff --git a/mysql-test/suite/perfschema/r/dml_mutex_instances.result b/mysql-test/suite/perfschema/r/dml_mutex_instances.result
index 655ca811c06..862123b3450 100644
--- a/mysql-test/suite/perfschema/r/dml_mutex_instances.result
+++ b/mysql-test/suite/perfschema/r/dml_mutex_instances.result
@@ -1,6 +1,6 @@
select * from performance_schema.MUTEX_INSTANCES limit 1;
NAME OBJECT_INSTANCE_BEGIN LOCKED_BY_THREAD_ID
-# # NULL
+# # #
select * from performance_schema.MUTEX_INSTANCES
where name='FOO';
NAME OBJECT_INSTANCE_BEGIN LOCKED_BY_THREAD_ID
diff --git a/mysql-test/suite/perfschema/r/dml_rwlock_instances.result b/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
index 62b5fbeaa8a..686007e58e9 100644
--- a/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
+++ b/mysql-test/suite/perfschema/r/dml_rwlock_instances.result
@@ -1,6 +1,6 @@
select * from performance_schema.RWLOCK_INSTANCES limit 1;
NAME OBJECT_INSTANCE_BEGIN WRITE_LOCKED_BY_THREAD_ID READ_LOCKED_BY_COUNT
-# # NULL 0
+# # # #
select * from performance_schema.RWLOCK_INSTANCES
where name='FOO';
NAME OBJECT_INSTANCE_BEGIN WRITE_LOCKED_BY_THREAD_ID READ_LOCKED_BY_COUNT
diff --git a/mysql-test/suite/perfschema/r/dml_setup_instruments.result b/mysql-test/suite/perfschema/r/dml_setup_instruments.result
index be7d8825364..448aaa7400f 100644
--- a/mysql-test/suite/perfschema/r/dml_setup_instruments.result
+++ b/mysql-test/suite/perfschema/r/dml_setup_instruments.result
@@ -25,9 +25,10 @@ wait/synch/rwlock/sql/LOCK_system_variables_hash YES YES
wait/synch/rwlock/sql/LOCK_sys_init_connect YES YES
wait/synch/rwlock/sql/LOCK_sys_init_slave YES YES
wait/synch/rwlock/sql/LOGGER::LOCK_logger YES YES
+wait/synch/rwlock/sql/MDL_context::waiting_for_lock YES YES
+wait/synch/rwlock/sql/MDL_lock::rwlock YES YES
wait/synch/rwlock/sql/Query_cache_query::lock YES YES
wait/synch/rwlock/sql/THR_LOCK_servers YES YES
-wait/synch/rwlock/sql/THR_LOCK_udf YES YES
select * from performance_schema.SETUP_INSTRUMENTS
where name like 'Wait/Synch/Cond/sql/%'
and name not in (
diff --git a/mysql-test/suite/perfschema/r/misc.result b/mysql-test/suite/perfschema/r/misc.result
index d944b4b1d3d..3c0a4a58e08 100644
--- a/mysql-test/suite/perfschema/r/misc.result
+++ b/mysql-test/suite/perfschema/r/misc.result
@@ -11,3 +11,17 @@ create table test.t1 like performance_schema.EVENTS_WAITS_CURRENT;
ERROR HY000: Invalid performance_schema usage.
create table performance_schema.t1(a int);
ERROR 42000: CREATE command denied to user 'root'@'localhost' for table 't1'
+drop table if exists test.ghost;
+create table test.ghost (a int, b int);
+alter table test.ghost add index index_a(a);
+alter table test.ghost add index index_b(b);
+insert into test.ghost values (1, 3);
+insert into test.ghost values (2, 4);
+select * from test.ghost;
+a b
+1 3
+2 4
+drop table test.ghost;
+select * from performance_schema.FILE_INSTANCES
+where file_name like "%ghost%";
+FILE_NAME EVENT_NAME OPEN_COUNT
diff --git a/mysql-test/suite/perfschema/r/pfs_upgrade.result b/mysql-test/suite/perfschema/r/pfs_upgrade.result
new file mode 100644
index 00000000000..5d444cddc39
--- /dev/null
+++ b/mysql-test/suite/perfschema/r/pfs_upgrade.result
@@ -0,0 +1,153 @@
+drop table if exists test.user_table;
+drop procedure if exists test.user_proc;
+drop function if exists test.user_func;
+drop event if exists test.user_event;
+"Testing mysql_upgrade with TABLE performance_schema.user_table"
+create table test.user_table(a int);
+use performance_schema;
+show tables like "user_table";
+Tables_in_performance_schema (user_table)
+user_table
+ERROR 1644 (HY000) at line 178: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 203: Table 'COND_INSTANCES' already exists
+ERROR 1050 (42S01) at line 233: Table 'EVENTS_WAITS_CURRENT' already exists
+ERROR 1050 (42S01) at line 247: Table 'EVENTS_WAITS_HISTORY' already exists
+ERROR 1050 (42S01) at line 261: Table 'EVENTS_WAITS_HISTORY_LONG' already exists
+ERROR 1050 (42S01) at line 281: Table 'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 302: Table 'EVENTS_WAITS_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 323: Table 'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 340: Table 'FILE_INSTANCES' already exists
+ERROR 1050 (42S01) at line 359: Table 'FILE_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 379: Table 'FILE_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 396: Table 'MUTEX_INSTANCES' already exists
+ERROR 1050 (42S01) at line 414: Table 'PERFORMANCE_TIMERS' already exists
+ERROR 1050 (42S01) at line 431: Table 'PROCESSLIST' already exists
+ERROR 1050 (42S01) at line 449: Table 'RWLOCK_INSTANCES' already exists
+ERROR 1050 (42S01) at line 465: Table 'SETUP_CONSUMERS' already exists
+ERROR 1050 (42S01) at line 482: Table 'SETUP_INSTRUMENTS' already exists
+ERROR 1050 (42S01) at line 502: Table 'SETUP_OBJECTS' already exists
+ERROR 1050 (42S01) at line 518: Table 'SETUP_TIMERS' already exists
+FATAL ERROR: Upgrade failed
+show tables like "user_table";
+Tables_in_performance_schema (user_table)
+user_table
+use test;
+drop table test.user_table;
+"Testing mysql_upgrade with VIEW performance_schema.user_view"
+create view test.user_view as select "Not supposed to be here";
+use performance_schema;
+show tables like "user_view";
+Tables_in_performance_schema (user_view)
+user_view
+ERROR 1644 (HY000) at line 178: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 203: Table 'COND_INSTANCES' already exists
+ERROR 1050 (42S01) at line 233: Table 'EVENTS_WAITS_CURRENT' already exists
+ERROR 1050 (42S01) at line 247: Table 'EVENTS_WAITS_HISTORY' already exists
+ERROR 1050 (42S01) at line 261: Table 'EVENTS_WAITS_HISTORY_LONG' already exists
+ERROR 1050 (42S01) at line 281: Table 'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 302: Table 'EVENTS_WAITS_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 323: Table 'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 340: Table 'FILE_INSTANCES' already exists
+ERROR 1050 (42S01) at line 359: Table 'FILE_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 379: Table 'FILE_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 396: Table 'MUTEX_INSTANCES' already exists
+ERROR 1050 (42S01) at line 414: Table 'PERFORMANCE_TIMERS' already exists
+ERROR 1050 (42S01) at line 431: Table 'PROCESSLIST' already exists
+ERROR 1050 (42S01) at line 449: Table 'RWLOCK_INSTANCES' already exists
+ERROR 1050 (42S01) at line 465: Table 'SETUP_CONSUMERS' already exists
+ERROR 1050 (42S01) at line 482: Table 'SETUP_INSTRUMENTS' already exists
+ERROR 1050 (42S01) at line 502: Table 'SETUP_OBJECTS' already exists
+ERROR 1050 (42S01) at line 518: Table 'SETUP_TIMERS' already exists
+FATAL ERROR: Upgrade failed
+show tables like "user_view";
+Tables_in_performance_schema (user_view)
+user_view
+use test;
+drop view test.user_view;
+"Testing mysql_upgrade with PROCEDURE performance_schema.user_proc"
+create procedure test.user_proc()
+select "Not supposed to be here";
+update mysql.proc set db='performance_schema' where name='user_proc';
+ERROR 1644 (HY000) at line 178: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 203: Table 'COND_INSTANCES' already exists
+ERROR 1050 (42S01) at line 233: Table 'EVENTS_WAITS_CURRENT' already exists
+ERROR 1050 (42S01) at line 247: Table 'EVENTS_WAITS_HISTORY' already exists
+ERROR 1050 (42S01) at line 261: Table 'EVENTS_WAITS_HISTORY_LONG' already exists
+ERROR 1050 (42S01) at line 281: Table 'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 302: Table 'EVENTS_WAITS_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 323: Table 'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 340: Table 'FILE_INSTANCES' already exists
+ERROR 1050 (42S01) at line 359: Table 'FILE_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 379: Table 'FILE_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 396: Table 'MUTEX_INSTANCES' already exists
+ERROR 1050 (42S01) at line 414: Table 'PERFORMANCE_TIMERS' already exists
+ERROR 1050 (42S01) at line 431: Table 'PROCESSLIST' already exists
+ERROR 1050 (42S01) at line 449: Table 'RWLOCK_INSTANCES' already exists
+ERROR 1050 (42S01) at line 465: Table 'SETUP_CONSUMERS' already exists
+ERROR 1050 (42S01) at line 482: Table 'SETUP_INSTRUMENTS' already exists
+ERROR 1050 (42S01) at line 502: Table 'SETUP_OBJECTS' already exists
+ERROR 1050 (42S01) at line 518: Table 'SETUP_TIMERS' already exists
+FATAL ERROR: Upgrade failed
+select name from mysql.proc where db='performance_schema';
+name
+user_proc
+update mysql.proc set db='test' where name='user_proc';
+drop procedure test.user_proc;
+"Testing mysql_upgrade with FUNCTION performance_schema.user_func"
+create function test.user_func() returns integer
+return 0;
+update mysql.proc set db='performance_schema' where name='user_func';
+ERROR 1644 (HY000) at line 178: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 203: Table 'COND_INSTANCES' already exists
+ERROR 1050 (42S01) at line 233: Table 'EVENTS_WAITS_CURRENT' already exists
+ERROR 1050 (42S01) at line 247: Table 'EVENTS_WAITS_HISTORY' already exists
+ERROR 1050 (42S01) at line 261: Table 'EVENTS_WAITS_HISTORY_LONG' already exists
+ERROR 1050 (42S01) at line 281: Table 'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 302: Table 'EVENTS_WAITS_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 323: Table 'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 340: Table 'FILE_INSTANCES' already exists
+ERROR 1050 (42S01) at line 359: Table 'FILE_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 379: Table 'FILE_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 396: Table 'MUTEX_INSTANCES' already exists
+ERROR 1050 (42S01) at line 414: Table 'PERFORMANCE_TIMERS' already exists
+ERROR 1050 (42S01) at line 431: Table 'PROCESSLIST' already exists
+ERROR 1050 (42S01) at line 449: Table 'RWLOCK_INSTANCES' already exists
+ERROR 1050 (42S01) at line 465: Table 'SETUP_CONSUMERS' already exists
+ERROR 1050 (42S01) at line 482: Table 'SETUP_INSTRUMENTS' already exists
+ERROR 1050 (42S01) at line 502: Table 'SETUP_OBJECTS' already exists
+ERROR 1050 (42S01) at line 518: Table 'SETUP_TIMERS' already exists
+FATAL ERROR: Upgrade failed
+select name from mysql.proc where db='performance_schema';
+name
+user_func
+update mysql.proc set db='test' where name='user_func';
+drop function test.user_func;
+"Testing mysql_upgrade with EVENT performance_schema.user_event"
+create event test.user_event on schedule every 1 day do
+select "not supposed to be here";
+update mysql.event set db='performance_schema' where name='user_event';
+ERROR 1644 (HY000) at line 178: Unexpected content found in the performance_schema database.
+ERROR 1050 (42S01) at line 203: Table 'COND_INSTANCES' already exists
+ERROR 1050 (42S01) at line 233: Table 'EVENTS_WAITS_CURRENT' already exists
+ERROR 1050 (42S01) at line 247: Table 'EVENTS_WAITS_HISTORY' already exists
+ERROR 1050 (42S01) at line 261: Table 'EVENTS_WAITS_HISTORY_LONG' already exists
+ERROR 1050 (42S01) at line 281: Table 'EVENTS_WAITS_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 302: Table 'EVENTS_WAITS_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 323: Table 'EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 340: Table 'FILE_INSTANCES' already exists
+ERROR 1050 (42S01) at line 359: Table 'FILE_SUMMARY_BY_EVENT_NAME' already exists
+ERROR 1050 (42S01) at line 379: Table 'FILE_SUMMARY_BY_INSTANCE' already exists
+ERROR 1050 (42S01) at line 396: Table 'MUTEX_INSTANCES' already exists
+ERROR 1050 (42S01) at line 414: Table 'PERFORMANCE_TIMERS' already exists
+ERROR 1050 (42S01) at line 431: Table 'PROCESSLIST' already exists
+ERROR 1050 (42S01) at line 449: Table 'RWLOCK_INSTANCES' already exists
+ERROR 1050 (42S01) at line 465: Table 'SETUP_CONSUMERS' already exists
+ERROR 1050 (42S01) at line 482: Table 'SETUP_INSTRUMENTS' already exists
+ERROR 1050 (42S01) at line 502: Table 'SETUP_OBJECTS' already exists
+ERROR 1050 (42S01) at line 518: Table 'SETUP_TIMERS' already exists
+FATAL ERROR: Upgrade failed
+select name from mysql.event where db='performance_schema';
+name
+user_event
+update mysql.event set db='test' where name='user_event';
+drop event test.user_event;
diff --git a/mysql-test/suite/perfschema/t/aggregate.test b/mysql-test/suite/perfschema/t/aggregate.test
index 7c01bdd0a4b..0fa4651ecda 100644
--- a/mysql-test/suite/perfschema/t/aggregate.test
+++ b/mysql-test/suite/perfschema/t/aggregate.test
@@ -1,4 +1,4 @@
-# Copyright (C) 2009 Sun Microsystems, Inc
+# Copyright (C) 2009-2010 Sun Microsystems, Inc
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -50,6 +50,8 @@ insert into t1 (id) values (1), (2), (3), (4), (5), (6), (7), (8);
# Stop recording data, so the select below don't add noise.
update performance_schema.SETUP_INSTRUMENTS SET enabled = 'NO';
+# Disable all consumers, for long standing waits
+update performance_schema.SETUP_CONSUMERS set enabled = 'NO';
# Helper to debug
set @dump_all=FALSE;
@@ -132,14 +134,14 @@ SELECT EVENT_NAME, e.SUM_TIMER_WAIT, SUM(i.SUM_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(i.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(i.SUM_TIMER_WAIT))
OR @dump_all;
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(i.MIN_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(i.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(i.MIN_TIMER_WAIT))
AND (MIN(i.MIN_TIMER_WAIT) != 0)
OR @dump_all;
@@ -147,7 +149,7 @@ SELECT EVENT_NAME, e.MAX_TIMER_WAIT, MAX(i.MAX_TIMER_WAIT)
FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_INSTANCE AS i USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(i.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(i.MAX_TIMER_WAIT))
OR @dump_all;
--echo "Verifying waits aggregate consistency (thread)"
@@ -157,7 +159,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.SUM_TIMER_WAIT <> SUM(t.SUM_TIMER_WAIT))
+HAVING (e.SUM_TIMER_WAIT < SUM(t.SUM_TIMER_WAIT))
OR @dump_all;
SELECT EVENT_NAME, e.MIN_TIMER_WAIT, MIN(t.MIN_TIMER_WAIT)
@@ -165,7 +167,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MIN_TIMER_WAIT <> MIN(t.MIN_TIMER_WAIT))
+HAVING (e.MIN_TIMER_WAIT > MIN(t.MIN_TIMER_WAIT))
AND (MIN(t.MIN_TIMER_WAIT) != 0)
OR @dump_all;
@@ -174,7 +176,7 @@ FROM performance_schema.EVENTS_WAITS_SUMMARY_BY_EVENT_NAME AS e
JOIN performance_schema.EVENTS_WAITS_SUMMARY_BY_THREAD_BY_EVENT_NAME AS t
USING (EVENT_NAME)
GROUP BY EVENT_NAME
-HAVING (e.MAX_TIMER_WAIT <> MAX(t.MAX_TIMER_WAIT))
+HAVING (e.MAX_TIMER_WAIT < MAX(t.MAX_TIMER_WAIT))
OR @dump_all;
diff --git a/mysql-test/suite/perfschema/t/dml_mutex_instances.test b/mysql-test/suite/perfschema/t/dml_mutex_instances.test
index e3062c7b34c..0971c664eb8 100644
--- a/mysql-test/suite/perfschema/t/dml_mutex_instances.test
+++ b/mysql-test/suite/perfschema/t/dml_mutex_instances.test
@@ -18,7 +18,7 @@
--source include/not_embedded.inc
--source include/have_perfschema.inc
---replace_column 1 # 2 #
+--replace_column 1 # 2 # 3 #
select * from performance_schema.MUTEX_INSTANCES limit 1;
select * from performance_schema.MUTEX_INSTANCES
diff --git a/mysql-test/suite/perfschema/t/dml_rwlock_instances.test b/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
index 251168237eb..33a42450681 100644
--- a/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
+++ b/mysql-test/suite/perfschema/t/dml_rwlock_instances.test
@@ -18,7 +18,7 @@
--source include/not_embedded.inc
--source include/have_perfschema.inc
---replace_column 1 # 2 #
+--replace_column 1 # 2 # 3 # 4 #
select * from performance_schema.RWLOCK_INSTANCES limit 1;
select * from performance_schema.RWLOCK_INSTANCES
diff --git a/mysql-test/suite/perfschema/t/misc.test b/mysql-test/suite/perfschema/t/misc.test
index d9b97d8441e..749eccca793 100644
--- a/mysql-test/suite/perfschema/t/misc.test
+++ b/mysql-test/suite/perfschema/t/misc.test
@@ -55,3 +55,24 @@ create table test.t1 like performance_schema.EVENTS_WAITS_CURRENT;
--error ER_TABLEACCESS_DENIED_ERROR
create table performance_schema.t1(a int);
+#
+# Bug#51447 performance schema evil twin files
+#
+
+--disable_warnings
+drop table if exists test.ghost;
+--enable_warnings
+
+create table test.ghost (a int, b int);
+alter table test.ghost add index index_a(a);
+alter table test.ghost add index index_b(b);
+insert into test.ghost values (1, 3);
+insert into test.ghost values (2, 4);
+select * from test.ghost;
+
+drop table test.ghost;
+
+# Shoud return nothing
+select * from performance_schema.FILE_INSTANCES
+ where file_name like "%ghost%";
+
diff --git a/mysql-test/suite/perfschema/t/pfs_upgrade.test b/mysql-test/suite/perfschema/t/pfs_upgrade.test
new file mode 100644
index 00000000000..4902dc73e8a
--- /dev/null
+++ b/mysql-test/suite/perfschema/t/pfs_upgrade.test
@@ -0,0 +1,138 @@
+# Copyright (C) 2010 Oracle and/or its affiliates. All rights reserved.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+# Tests for PERFORMANCE_SCHEMA
+# Make sure mysql_upgrade does not destroy data in a 'performance_schema'
+# database.
+#
+
+--source include/not_embedded.inc
+--source include/have_perfschema.inc
+--source include/have_lowercase0.inc
+
+--disable_warnings
+drop table if exists test.user_table;
+drop procedure if exists test.user_proc;
+drop function if exists test.user_func;
+drop event if exists test.user_event;
+--enable_warnings
+
+--echo "Testing mysql_upgrade with TABLE performance_schema.user_table"
+
+create table test.user_table(a int);
+
+let $MYSQLD_DATADIR= `SELECT @@datadir`;
+--copy_file $MYSQLD_DATADIR/test/user_table.frm $MYSQLD_DATADIR/performance_schema/user_table.frm
+
+# Make sure the table is visible
+use performance_schema;
+show tables like "user_table";
+
+--error 1
+--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Verify that mysql_upgrade complained about the performance_schema
+--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Make sure the table is still visible
+show tables like "user_table";
+
+use test;
+
+--remove_file $MYSQLD_DATADIR/performance_schema/user_table.frm
+drop table test.user_table;
+
+--echo "Testing mysql_upgrade with VIEW performance_schema.user_view"
+
+create view test.user_view as select "Not supposed to be here";
+
+let $MYSQLD_DATADIR= `SELECT @@datadir`;
+--copy_file $MYSQLD_DATADIR/test/user_view.frm $MYSQLD_DATADIR/performance_schema/user_view.frm
+
+# Make sure the view is visible
+use performance_schema;
+show tables like "user_view";
+
+--error 1
+--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Verify that mysql_upgrade complained about the performance_schema
+--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Make sure the view is still visible
+show tables like "user_view";
+
+use test;
+
+--remove_file $MYSQLD_DATADIR/performance_schema/user_view.frm
+drop view test.user_view;
+
+--echo "Testing mysql_upgrade with PROCEDURE performance_schema.user_proc"
+
+create procedure test.user_proc()
+ select "Not supposed to be here";
+
+update mysql.proc set db='performance_schema' where name='user_proc';
+
+--error 1
+--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Verify that mysql_upgrade complained about the performance_schema
+--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+select name from mysql.proc where db='performance_schema';
+
+update mysql.proc set db='test' where name='user_proc';
+drop procedure test.user_proc;
+
+--echo "Testing mysql_upgrade with FUNCTION performance_schema.user_func"
+
+create function test.user_func() returns integer
+ return 0;
+
+update mysql.proc set db='performance_schema' where name='user_func';
+
+--error 1
+--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Verify that mysql_upgrade complained about the performance_schema
+--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+select name from mysql.proc where db='performance_schema';
+
+update mysql.proc set db='test' where name='user_func';
+drop function test.user_func;
+
+--echo "Testing mysql_upgrade with EVENT performance_schema.user_event"
+
+create event test.user_event on schedule every 1 day do
+ select "not supposed to be here";
+
+update mysql.event set db='performance_schema' where name='user_event';
+
+--error 1
+--exec $MYSQL_UPGRADE --skip-verbose > $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out 2> $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+# Verify that mysql_upgrade complained about the performance_schema
+--cat_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
+select name from mysql.event where db='performance_schema';
+
+update mysql.event set db='test' where name='user_event';
+drop event test.user_event;
+
+--remove_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.out
+--remove_file $MYSQLTEST_VARDIR/tmp/pfs_upgrade.err
+
diff --git a/mysql-test/suite/binlog/r/binlog_auto_increment_bug33029.result b/mysql-test/suite/rpl/r/rpl_binlog_auto_inc_bug33029.result
index 8226469fcf7..f0fdd5eaa1f 100644
--- a/mysql-test/suite/binlog/r/binlog_auto_increment_bug33029.result
+++ b/mysql-test/suite/rpl/r/rpl_binlog_auto_inc_bug33029.result
@@ -1,8 +1,4 @@
-SET @old_relay_log_purge= @@global.relay_log_purge;
-change master to
-MASTER_HOST='dummy.localdomain',
-RELAY_LOG_FILE='slave-relay-bin.000001',
-RELAY_LOG_POS=4;
+Setting up fake replication from MYSQL_TEST_DIR/std_data/bug33029-slave-relay-bin.000001
start slave sql_thread;
select MASTER_POS_WAIT('master-bin.000001', 3776);
# Result on slave
@@ -38,5 +34,4 @@ DROP PROCEDURE IF EXISTS p2;
DROP FUNCTION IF EXISTS f1;
DROP TRIGGER IF EXISTS tr1;
stop slave sql_thread;
-reset slave;
-SET @@global.relay_log_purge= @old_relay_log_purge;
+Cleaning up after setup_fake_relay_log.inc
diff --git a/mysql-test/suite/rpl/r/rpl_do_grant.result b/mysql-test/suite/rpl/r/rpl_do_grant.result
index 65c60acc651..9eecc1bab3f 100644
--- a/mysql-test/suite/rpl/r/rpl_do_grant.result
+++ b/mysql-test/suite/rpl/r/rpl_do_grant.result
@@ -89,6 +89,7 @@ show grants for rpl_do_grant2@localhost;
ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost'
show grants for rpl_do_grant2@localhost;
ERROR 42000: There is no such grant defined for user 'rpl_do_grant2' on host 'localhost'
+call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
DROP DATABASE IF EXISTS bug42217_db;
CREATE DATABASE bug42217_db;
GRANT CREATE ROUTINE ON bug42217_db.* TO 'create_rout_db'@'localhost'
@@ -166,9 +167,12 @@ DROP FUNCTION upgrade_del_func;
DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
DROP USER 'create_rout_db'@'localhost';
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
-USE mtr;
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
######## BUG#49119 #######
### i) test case from the 'how to repeat section'
stop slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix.result b/mysql-test/suite/rpl/r/rpl_ip_mix.result
index 11aa5a46cfa..ddd7a008a97 100644
--- a/mysql-test/suite/rpl/r/rpl_ip_mix.result
+++ b/mysql-test/suite/rpl/r/rpl_ip_mix.result
@@ -46,102 +46,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,0:0:0:0:0:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,0::0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,::FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0::0000:FFFF:127.0.0.1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,::1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
@@ -152,11 +56,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix2.result b/mysql-test/suite/rpl/r/rpl_ip_mix2.result
index e5cc3e1621d..e1011bf85ee 100644
--- a/mysql-test/suite/rpl/r/rpl_ip_mix2.result
+++ b/mysql-test/suite/rpl/r/rpl_ip_mix2.result
@@ -14,22 +14,6 @@ Master-Host: ::1
disconnect slave;
disconnect master;
connection default;
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
@@ -62,102 +46,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0::0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0::0000:FFFF:127.0.0.1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,::1,root,,test,SLAVE_MYPORT);
@@ -168,11 +56,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result b/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result
deleted file mode 100644
index c7cec70ed6c..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ip_mix2_win.result
+++ /dev/null
@@ -1,84 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: No such row
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:0:0:1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ip_mix_win.result b/mysql-test/suite/rpl/r/rpl_ip_mix_win.result
deleted file mode 100644
index a1d11e109e5..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ip_mix_win.result
+++ /dev/null
@@ -1,84 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: No such row
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: ::1
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,0:0:0:0:0:0:0:1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 0:0:0:0:0:0:0:1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
index 4168cff1e97..0393cfa483c 100644
--- a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
+++ b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6.result
@@ -88,7 +88,7 @@ Master-Host: ::FFFF:127.0.0.1
disconnect slave;
disconnect master;
connection default;
-#################### IP: ::1 ###########################
+#################### IP: ::FFFF:127.0.0.1 ###########################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
connection master;
@@ -99,12 +99,12 @@ master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
Master-Host: ::FFFF:127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
change master to master_host='::FFFF:127.0.0.1';
Master-Host: ::FFFF:127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
+change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
+Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
disconnect slave;
disconnect master;
connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result b/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result
deleted file mode 100644
index a1e48ea6610..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ipv4_as_ipv6_win.result
+++ /dev/null
@@ -1,35 +0,0 @@
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv6.result b/mysql-test/suite/rpl/r/rpl_ipv6.result
index f46e60548a6..6ae946d197b 100644
--- a/mysql-test/suite/rpl/r/rpl_ipv6.result
+++ b/mysql-test/suite/rpl/r/rpl_ipv6.result
@@ -43,96 +43,6 @@ Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
disconnect master;
connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:FFFF:127.0.0.1 ###########################
-connect (master,0:0:0:0:0:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0:0:0:0:FFFF:127.0.0.1';
-Master-Host: 0:0:0:0:0:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:FFFF:127.0.0.1 ###########################
-connect (master,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0000:0000:0000:0000:0000:FFFF:127.0.0.1';
-Master-Host: 0000:0000:0000:0000:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0000:0000:0:0000:FFFF:127.0.0.1 ###########################
-connect (master,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0:0000:0000:0:0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
-Master-Host: 0:0000:0000:0:0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0::0000:FFFF:127.0.0.1 ###########################
-connect (master,0::0000:FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,0::0000:FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0::0000:FFFF:127.0.0.1';
-Master-Host: 0::0000:FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::FFFF:127.0.0.1 ###########################
-connect (master,::FFFF:127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,::FFFF:127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
#################### IP: ::1 mix #######################
connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
@@ -143,11 +53,11 @@ File Position Binlog_Do_DB Binlog_Ignore_DB
master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
connection slave;
reset slave;
-Master-Host: ::FFFF:127.0.0.1
+Master-Host: 0:0:0:0:0:0:0:1
change master to master_host='::1';
Master-Host: ::1
-change master to master_host='::FFFF:127.0.0.1';
-Master-Host: ::FFFF:127.0.0.1
+change master to master_host='127.0.0.1';
+Master-Host: 127.0.0.1
change master to master_host='0:0:0:0:0:0:0:1';
Master-Host: 0:0:0:0:0:0:0:1
disconnect slave;
diff --git a/mysql-test/suite/rpl/r/rpl_ipv6_win.result b/mysql-test/suite/rpl/r/rpl_ipv6_win.result
deleted file mode 100644
index 79dc8422161..00000000000
--- a/mysql-test/suite/rpl/r/rpl_ipv6_win.result
+++ /dev/null
@@ -1,80 +0,0 @@
-#################### IP: ::1 ###########################
-connect (master,::1,root,,test,MASTER_MYPORT);
-connect (slave,::1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='::1';
-Master-Host: ::1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0000:0000:0000:0000:0000:0000:0000:0001 ###########################
-connect (master,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,MASTER_MYPORT);
-connect (slave,0000:0000:0000:0000:0000:0000:0000:0001,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0000:0000:0000:0000:0000:0000:0000:0001';
-Master-Host: 0000:0000:0000:0000:0000:0000:0000:0001
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 0:0:0:0:0:0:0:1 ###########################
-connect (master,0:0:0:0:0:0:0:1,root,,test,MASTER_MYPORT);
-connect (slave,0:0:0:0:0:0:0:1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: 127.0.0.1 ###########################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-disconnect slave;
-disconnect master;
-connection default;
-#################### IP: ::1 mix #######################
-connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connection master;
-reset master;
-show master status;
-File Position Binlog_Do_DB Binlog_Ignore_DB
-master-bin.000001 # <Binlog_Do_DB> <Binlog_Ignore_DB>
-connection slave;
-reset slave;
-Master-Host: 127.0.0.1
-change master to master_host='::1';
-Master-Host: ::1
-change master to master_host='127.0.0.1';
-Master-Host: 127.0.0.1
-change master to master_host='0:0:0:0:0:0:0:1';
-Master-Host: 0:0:0:0:0:0:0:1
-disconnect slave;
-disconnect master;
-connection default;
diff --git a/mysql-test/suite/rpl/r/rpl_mixed_row_innodb.result b/mysql-test/suite/rpl/r/rpl_mixed_row_innodb.result
index a4894631087..68b981ad70f 100644
--- a/mysql-test/suite/rpl/r/rpl_mixed_row_innodb.result
+++ b/mysql-test/suite/rpl/r/rpl_mixed_row_innodb.result
@@ -82,3 +82,48 @@ FLUSH LOGS;
FLUSH LOGS;
DROP DATABASE mysqltest1;
End of 5.1 tests
+#
+# Bug#39675 rename tables on innodb tables with pending
+# transactions causes slave data issue.
+#
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t1 (
+id INT PRIMARY KEY auto_increment,
+b INT DEFAULT NULL
+) ENGINE=InnoDB;
+CREATE TABLE t2 (
+id INT PRIMARY KEY auto_increment,
+b INT DEFAULT NULL
+) ENGINE=InnoDB;
+INSERT INTO t1 (b) VALUES (1),(2),(3);
+BEGIN;
+INSERT INTO t1(b) VALUES (4);
+-------- switch to master1 --------
+RENAME TABLE t1 TO t3, t2 TO t1;;
+-------- switch to master --------
+COMMIT;
+-------- switch to master1 --------
+-------- switch to master --------
+SELECT * FROM t1;
+id b
+SELECT * FROM t3;
+id b
+1 1
+2 2
+3 3
+4 4
+-------- switch to slave --------
+SELECT * FROM t1;
+id b
+SELECT * FROM t3;
+id b
+1 1
+2 2
+3 3
+4 4
+-------- switch to master --------
+DROP TABLE t1;
+DROP TABLE t3;
+End of 6.0 tests
diff --git a/mysql-test/suite/rpl/r/rpl_row_utf16.result b/mysql-test/suite/rpl/r/rpl_row_utf16.result
new file mode 100644
index 00000000000..f7e66dd92ee
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_row_utf16.result
@@ -0,0 +1,23 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+CREATE TABLE t1(c1 CHAR(10) CHARACTER SET utf16 DEFAULT 'ola');
+INSERT INTO t1 VALUES ('abc');
+INSERT INTO t1 VALUES ();
+#### ON MASTER
+SELECT c1, hex(c1) from t1;
+c1 abc
+hex(c1) 006100620063
+c1 ola
+hex(c1) 006F006C0061
+#### ON SLAVE
+SELECT c1, hex(c1) FROM t1;
+c1 abc
+hex(c1) 006100620063
+c1 ola
+hex(c1) 006F006C0061
+Comparing tables master:test.t1 and slave:test.t1
+DROP TABLE t1;
diff --git a/mysql-test/suite/rpl/r/rpl_row_utf32.result b/mysql-test/suite/rpl/r/rpl_row_utf32.result
new file mode 100644
index 00000000000..e07db9c9e48
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_row_utf32.result
@@ -0,0 +1,25 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+SET SQL_LOG_BIN=0;
+CREATE TABLE t1 (c1 char(255) DEFAULT NULL, KEY c1 (c1)) DEFAULT CHARSET=utf32;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+SET SQL_LOG_BIN=1;
+SET @saved_slave_type_conversions= @@global.slave_type_conversions;
+include/stop_slave.inc
+SET GLOBAL SLAVE_TYPE_CONVERSIONS='ALL_NON_LOSSY';
+include/start_slave.inc
+SET SQL_LOG_BIN=0;
+CREATE TABLE t1 ( c1 varchar(255) DEFAULT NULL, KEY c1 (c1)) DEFAULT CHARSET=utf32;
+Warnings:
+Warning 1071 Specified key was too long; max key length is 1000 bytes
+SET SQL_LOG_BIN=1;
+INSERT INTO t1(c1) VALUES ('insert into t1');
+DROP TABLE t1;
+SET GLOBAL SLAVE_TYPE_CONVERSIONS= @saved_slave_type_conversions;
+include/stop_slave.inc
+include/start_slave.inc
diff --git a/mysql-test/suite/rpl/r/rpl_semi_sync.result b/mysql-test/suite/rpl/r/rpl_semi_sync.result
index 1e220b28d78..74eb14d33e0 100644
--- a/mysql-test/suite/rpl/r/rpl_semi_sync.result
+++ b/mysql-test/suite/rpl/r/rpl_semi_sync.result
@@ -120,8 +120,27 @@ min(a)
select max(a) from t1;
max(a)
300
+
+# BUG#50157
+# semi-sync replication crashes when replicating a transaction which
+# include 'CREATE TEMPORARY TABLE `MyISAM_t` SELECT * FROM `Innodb_t` ;
+[ on master ]
+SET SESSION AUTOCOMMIT= 0;
+CREATE TABLE t2(c1 INT) ENGINE=innodb;
+BEGIN;
+
+# Even though it is in a transaction, this statement is binlogged into binlog
+# file immediately.
+CREATE TEMPORARY TABLE t3 SELECT c1 FROM t2 where 1=1;
+
+# These statements will not be binlogged until the transaction is committed
+INSERT INTO t2 VALUES(11);
+INSERT INTO t2 VALUES(22);
+COMMIT;
+DROP TABLE t2, t3;
+SET SESSION AUTOCOMMIT= 1;
#
-# Test semi-sync master will switch OFF after one transacton
+# Test semi-sync master will switch OFF after one transaction
# timeout waiting for slave reply.
#
include/stop_slave.inc
@@ -135,7 +154,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 0
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
show status like 'Rpl_semi_sync_master_clients';
Variable_name Value
Rpl_semi_sync_master_clients 1
@@ -150,7 +169,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 1
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
insert into t1 values (100);
[ master status should be OFF ]
show status like 'Rpl_semi_sync_master_status';
@@ -161,7 +180,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
#
# Test semi-sync status on master will be ON again when slave catches up
#
@@ -194,7 +213,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
show status like 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 301
+Rpl_semi_sync_master_yes_tx 304
show status like 'Rpl_semi_sync_master_clients';
Variable_name Value
Rpl_semi_sync_master_clients 1
@@ -213,7 +232,7 @@ Variable_name Value
Rpl_semi_sync_master_no_tx 302
SHOW STATUS LIKE 'Rpl_semi_sync_master_yes_tx';
Variable_name Value
-Rpl_semi_sync_master_yes_tx 302
+Rpl_semi_sync_master_yes_tx 305
FLUSH NO_WRITE_TO_BINLOG STATUS;
[ Semi-sync master status variables after FLUSH STATUS ]
SHOW STATUS LIKE 'Rpl_semi_sync_master_no_tx';
diff --git a/mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result b/mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result
index 880fc9e8569..85fbcb69760 100644
--- a/mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result
+++ b/mysql-test/suite/rpl/r/rpl_slave_load_remove_tmpfile.result
@@ -10,47 +10,7 @@ insert into t1(b) values (1);
insert into t1(b) values (2);
load data infile '../../std_data/rpl_loaddata.dat' into table t1;
commit;
-show slave status;
-Slave_IO_State #
-Master_Host 127.0.0.1
-Master_User root
-Master_Port MASTER_MYPORT
-Connect_Retry 1
-Master_Log_File master-bin.000001
-Read_Master_Log_Pos #
-Relay_Log_File #
-Relay_Log_Pos #
-Relay_Master_Log_File master-bin.000001
-Slave_IO_Running Yes
-Slave_SQL_Running No
-Replicate_Do_DB
-Replicate_Ignore_DB
-Replicate_Do_Table
-Replicate_Ignore_Table
-Replicate_Wild_Do_Table
-Replicate_Wild_Ignore_Table
-Last_Errno 9
-Last_Error Error in Begin_load_query event: write to '../../tmp/SQL_LOAD.data' failed
-Skip_Counter 0
-Exec_Master_Log_Pos #
-Relay_Log_Space #
-Until_Condition None
-Until_Log_File
-Until_Log_Pos 0
-Master_SSL_Allowed No
-Master_SSL_CA_File
-Master_SSL_CA_Path
-Master_SSL_Cert
-Master_SSL_Cipher
-Master_SSL_Key
-Seconds_Behind_Master #
-Master_SSL_Verify_Server_Cert No
-Last_IO_Errno #
-Last_IO_Error #
-Last_SQL_Errno 9
-Last_SQL_Error Error in Begin_load_query event: write to '../../tmp/SQL_LOAD.data' failed
-Replicate_Ignore_Server_Ids
-Master_Server_Id 1
drop table t1;
drop table t1;
-call mtr.add_suppression("Slave: Error writing file 'UNKNOWN' .Errcode: 9. Error_code: 3");
+call mtr.add_suppression("Slave: Can't get stat of .*");
+call mtr.add_suppression("Slave: File.* not found.*");
diff --git a/mysql-test/suite/rpl/r/rpl_slave_skip.result b/mysql-test/suite/rpl/r/rpl_slave_skip.result
index 963b4d471dd..24000df40d2 100644
--- a/mysql-test/suite/rpl/r/rpl_slave_skip.result
+++ b/mysql-test/suite/rpl/r/rpl_slave_skip.result
@@ -118,7 +118,7 @@ Master_User root
Master_Port MASTER_PORT
Connect_Retry 1
Master_Log_File master-bin.000001
-Read_Master_Log_Pos 386
+Read_Master_Log_Pos 387
Relay_Log_File #
Relay_Log_Pos #
Relay_Master_Log_File master-bin.000001
@@ -133,7 +133,7 @@ Replicate_Wild_Ignore_Table
Last_Errno 0
Last_Error
Skip_Counter 0
-Exec_Master_Log_Pos 386
+Exec_Master_Log_Pos 387
Relay_Log_Space #
Until_Condition None
Until_Log_File
diff --git a/mysql-test/suite/rpl/r/rpl_slow_query_log.result b/mysql-test/suite/rpl/r/rpl_slow_query_log.result
index fd6a2c5d7c4..a4479f0c544 100644
--- a/mysql-test/suite/rpl/r/rpl_slow_query_log.result
+++ b/mysql-test/suite/rpl/r/rpl_slow_query_log.result
@@ -46,3 +46,46 @@ include/stop_slave.inc
SET GLOBAL long_query_time= @old_long_query_time;
SET GLOBAL log_output= @old_log_output;
include/start_slave.inc
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+SET @old_log_output= @@log_output;
+SET GLOBAL log_output= 'TABLE';
+SET GLOBAL long_query_time= 2;
+SET @old_long_query_time= @@long_query_time;
+SET SESSION long_query_time= 2;
+TRUNCATE mysql.slow_log;
+include/stop_slave.inc
+SET @old_log_output= @@log_output;
+SET GLOBAL log_output= 'TABLE';
+SET @old_long_query_time= @@long_query_time;
+SET GLOBAL long_query_time= 2;
+TRUNCATE mysql.slow_log;
+include/start_slave.inc
+CREATE TABLE t1 (a int, b int);
+********************************************************************
+**** INSERT one row that exceeds long_query_time
+**** Outcome: query ends up in both master and slave slow log
+********************************************************************
+INSERT INTO t1 values(1, sleep(3));
+### Assertion is good. Both Master and Slave exhibit the
+### same number of queries in slow log: 1
+TRUNCATE mysql.slow_log;
+TRUNCATE mysql.slow_log;
+********************************************************************
+**** Now do inserts again, but first add an index to the table.
+**** Outcome: Note that the slave contains the same one entry (as
+**** the master does) whereas before the patch it did not.
+********************************************************************
+ALTER TABLE t1 ADD INDEX id1(a);
+INSERT INTO t1 values(1, sleep(3));
+### Assertion is good. Both Master and Slave exhibit the
+### same number of queries in slow log: 1
+SET @@global.log_output= @old_log_output;
+SET @@global.long_query_time= @old_long_query_time;
+DROP TABLE t1;
+SET @@global.log_output= @old_log_output;
+SET @@global.long_query_time= @old_long_query_time;
diff --git a/mysql-test/suite/rpl/r/rpl_sp.result b/mysql-test/suite/rpl/r/rpl_sp.result
index 21910302f3a..7f810c5c128 100644
--- a/mysql-test/suite/rpl/r/rpl_sp.result
+++ b/mysql-test/suite/rpl/r/rpl_sp.result
@@ -1187,4 +1187,47 @@ drop procedure mysqltestbug36570_p1;
drop procedure ` mysqltestbug36570_p2`;
drop function mysqltestbug36570_f1;
End of 5.0 tests
-End of 5.1 tests
+# End of 5.1 tests
+#
+# Test Bug#30977 Concurrent statement using stored
+# function and DROP FUNCTION breaks SBR.
+#
+# Demonstrate that stored function DDL can not go through,
+# or, worse yet, make its way into the binary log, while
+# the stored function is in use.
+# For that, try to insert a result of a stored function
+# into a table. Block the insert in the beginning, waiting
+# on a table lock. While insert is blocked, attempt to
+# drop the routine. Verify that this attempt
+# blocks and waits for INSERT to complete. Commit and
+# reap the chain of events. Master and slave must contain
+# identical data. Statements in the binrary log must be
+# consistent with data in the table.
+#
+# --> connection default
+drop table if exists t1, t2;
+drop function if exists t1;
+create table t1 (a int);
+create table t2 (a int) as select 1 as a;
+create function f1() returns int deterministic return (select max(a) from t2);
+lock table t2 write;
+# --> connection master
+# Sending 'insert into t1 (a) values (f1())'...
+insert into t1 (a) values (f1());
+# Waitng for 'insert into t1 ...' to get blocked on table lock...
+# Sending 'drop function f1'. It will abort the table lock wait.
+drop function f1;
+# --> connection default
+# Now let's let 'insert' go through...
+unlock tables;
+# --> connection con1
+# Reaping 'insert into t1 (a) values (f1())'...
+ERROR 42000: FUNCTION test.f1 does not exist
+select * from t1;
+a
+select * from t1;
+a
+drop table t1, t2;
+drop function f1;
+ERROR 42000: FUNCTION test.f1 does not exist
+# End of 5.5 tests.
diff --git a/mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result b/mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result
index fd0b962b106..0df07959146 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_implicit_commit_binlog.result
@@ -213,7 +213,7 @@ Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `test`; INSERT INTO tt_1(ddl_case) VALUES (26)
master-bin.000001 # Xid # # COMMIT /* XID */
-master-bin.000001 # Query # # use `test`; ALTER DEFINER=`root`@`localhost` EVENT evt COMMENT 'evt'
+master-bin.000001 # Query # # use `test`; ALTER EVENT evt COMMENT 'evt'
-e-e-e-e-e-e-e-e-e-e-e- >> << -e-e-e-e-e-e-e-e-e-e-e-
-b-b-b-b-b-b-b-b-b-b-b- >> << -b-b-b-b-b-b-b-b-b-b-b-
diff --git a/mysql-test/suite/rpl/r/rpl_stm_innodb.result b/mysql-test/suite/rpl/r/rpl_stm_innodb.result
index 457ad3340b4..c2cce22e3ee 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_innodb.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_innodb.result
@@ -82,3 +82,48 @@ FLUSH LOGS;
FLUSH LOGS;
DROP DATABASE mysqltest1;
End of 5.1 tests
+#
+# Bug#39675 rename tables on innodb tables with pending
+# transactions causes slave data issue.
+#
+DROP TABLE IF EXISTS t1;
+DROP TABLE IF EXISTS t2;
+DROP TABLE IF EXISTS t3;
+CREATE TABLE t1 (
+id INT PRIMARY KEY auto_increment,
+b INT DEFAULT NULL
+) ENGINE=InnoDB;
+CREATE TABLE t2 (
+id INT PRIMARY KEY auto_increment,
+b INT DEFAULT NULL
+) ENGINE=InnoDB;
+INSERT INTO t1 (b) VALUES (1),(2),(3);
+BEGIN;
+INSERT INTO t1(b) VALUES (4);
+-------- switch to master1 --------
+RENAME TABLE t1 TO t3, t2 TO t1;;
+-------- switch to master --------
+COMMIT;
+-------- switch to master1 --------
+-------- switch to master --------
+SELECT * FROM t1;
+id b
+SELECT * FROM t3;
+id b
+1 1
+2 2
+3 3
+4 4
+-------- switch to slave --------
+SELECT * FROM t1;
+id b
+SELECT * FROM t3;
+id b
+1 1
+2 2
+3 3
+4 4
+-------- switch to master --------
+DROP TABLE t1;
+DROP TABLE t3;
+End of 6.0 tests
diff --git a/mysql-test/suite/rpl/r/rpl_stm_loadfile.result b/mysql-test/suite/rpl/r/rpl_stm_loadfile.result
index 1dd0805f4d3..3551e38d5ef 100644
--- a/mysql-test/suite/rpl/r/rpl_stm_loadfile.result
+++ b/mysql-test/suite/rpl/r/rpl_stm_loadfile.result
@@ -17,6 +17,8 @@ INSERT INTO test.t1 VALUES(2,'test');
UPDATE test.t1 SET blob_column=LOAD_FILE('../../std_data/words2.dat') WHERE a=2;
end|
CALL test.p1();
+Warnings:
+Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statement uses a system function whose value may differ on slave.
SELECT * FROM test.t1 ORDER BY blob_column;
a blob_column
1 abase
diff --git a/mysql-test/suite/rpl/r/rpl_stm_user_variables.result b/mysql-test/suite/rpl/r/rpl_stm_user_variables.result
new file mode 100644
index 00000000000..5e758fc02f3
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_stm_user_variables.result
@@ -0,0 +1,208 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+SET @positive= 18446744073709551615;
+SET @negative= -9223372036854775808;
+CREATE TABLE t1 (`tinyint` TINYINT,
+`smallint` SMALLINT,
+`mediumint` MEDIUMINT,
+`integer` INTEGER,
+`bigint` BIGINT,
+`utinyint` TINYINT UNSIGNED,
+`usmallint` SMALLINT UNSIGNED,
+`umediumint` MEDIUMINT UNSIGNED,
+`uinteger` INTEGER UNSIGNED,
+`ubigint` BIGINT UNSIGNED,
+`double` DOUBLE,
+`float` FLOAT,
+`real` REAL(30,2),
+`decimal` DECIMAL(30,2)) ENGINE = MyISAM;
+### insert max unsigned
+### a) declarative
+INSERT INTO t1 VALUES (18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615,18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615, 18446744073709551615);;
+#########################################
+#### [ on master ]
+SELECT * FROM t1;
+tinyint 127
+smallint 32767
+mediumint 8388607
+integer 2147483647
+bigint 9223372036854775807
+utinyint 255
+usmallint 65535
+umediumint 16777215
+uinteger 4294967295
+ubigint 18446744073709551615
+double 1.8446744073709552e19
+float 1.84467e19
+real 18446744073709552000.00
+decimal 18446744073709551615.00
+#### [ on slave ]
+SELECT * FROM t1;
+tinyint 127
+smallint 32767
+mediumint 8388607
+integer 2147483647
+bigint 9223372036854775807
+utinyint 255
+usmallint 65535
+umediumint 16777215
+uinteger 4294967295
+ubigint 18446744073709551615
+double 1.8446744073709552e19
+float 1.84467e19
+real 18446744073709552000.00
+decimal 18446744073709551615.00
+#########################################
+## assertion: master and slave tables are in sync
+Comparing tables master:test.t1 and slave:test.t1
+TRUNCATE t1;
+### b) user var
+INSERT INTO t1 VALUES (@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive,
+@positive);
+#########################################
+#### [ on master ]
+SELECT * FROM t1;
+tinyint 127
+smallint 32767
+mediumint 8388607
+integer 2147483647
+bigint 9223372036854775807
+utinyint 255
+usmallint 65535
+umediumint 16777215
+uinteger 4294967295
+ubigint 18446744073709551615
+double 1.8446744073709552e19
+float 1.84467e19
+real 18446744073709552000.00
+decimal 18446744073709551615.00
+#### [ on slave ]
+SELECT * FROM t1;
+tinyint 127
+smallint 32767
+mediumint 8388607
+integer 2147483647
+bigint 9223372036854775807
+utinyint 255
+usmallint 65535
+umediumint 16777215
+uinteger 4294967295
+ubigint 18446744073709551615
+double 1.8446744073709552e19
+float 1.84467e19
+real 18446744073709552000.00
+decimal 18446744073709551615.00
+#########################################
+## assertion: master and slave tables are in sync
+Comparing tables master:test.t1 and slave:test.t1
+TRUNCATE t1;
+### insert min signed
+### a) declarative
+INSERT INTO t1 VALUES (-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808,-9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808, -9223372036854775808);;
+#########################################
+#### [ on master ]
+SELECT * FROM t1;
+tinyint -128
+smallint -32768
+mediumint -8388608
+integer -2147483648
+bigint -9223372036854775808
+utinyint 0
+usmallint 0
+umediumint 0
+uinteger 0
+ubigint 0
+double -9.223372036854776e18
+float -9.22337e18
+real -9223372036854776000.00
+decimal -9223372036854775808.00
+#### [ on slave ]
+SELECT * FROM t1;
+tinyint -128
+smallint -32768
+mediumint -8388608
+integer -2147483648
+bigint -9223372036854775808
+utinyint 0
+usmallint 0
+umediumint 0
+uinteger 0
+ubigint 0
+double -9.223372036854776e18
+float -9.22337e18
+real -9223372036854776000.00
+decimal -9223372036854775808.00
+#########################################
+## assertion: master and slave tables are in sync
+Comparing tables master:test.t1 and slave:test.t1
+TRUNCATE t1;
+### b) user var
+INSERT INTO t1 VALUES (@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative,
+@negative);
+#########################################
+#### [ on master ]
+SELECT * FROM t1;
+tinyint -128
+smallint -32768
+mediumint -8388608
+integer -2147483648
+bigint -9223372036854775808
+utinyint 0
+usmallint 0
+umediumint 0
+uinteger 0
+ubigint 0
+double -9.223372036854776e18
+float -9.22337e18
+real -9223372036854776000.00
+decimal -9223372036854775808.00
+#### [ on slave ]
+SELECT * FROM t1;
+tinyint -128
+smallint -32768
+mediumint -8388608
+integer -2147483648
+bigint -9223372036854775808
+utinyint 0
+usmallint 0
+umediumint 0
+uinteger 0
+ubigint 0
+double -9.223372036854776e18
+float -9.22337e18
+real -9223372036854776000.00
+decimal -9223372036854775808.00
+#########################################
+## assertion: master and slave tables are in sync
+Comparing tables master:test.t1 and slave:test.t1
+TRUNCATE t1;
+## check: contents of both tables master's and slave's
+DROP TABLE t1;
diff --git a/mysql-test/suite/rpl/r/rpl_trigger.result b/mysql-test/suite/rpl/r/rpl_trigger.result
index 3d7757613a7..01d886c4709 100644
--- a/mysql-test/suite/rpl/r/rpl_trigger.result
+++ b/mysql-test/suite/rpl/r/rpl_trigger.result
@@ -893,8 +893,6 @@ s
@
root@localhost
DROP TRIGGER trg1;
-Warnings:
-Warning 1454 No definer attribute for trigger 'test'.'trg1'. The trigger will be activated under the authorization of the invoker, which may have insufficient privileges. Please recreate the trigger.
DROP TABLE t1;
DROP TABLE t2;
STOP SLAVE;
diff --git a/mysql-test/suite/rpl/r/rpl_view_multi.result b/mysql-test/suite/rpl/r/rpl_view_multi.result
new file mode 100644
index 00000000000..b3f10584a24
--- /dev/null
+++ b/mysql-test/suite/rpl/r/rpl_view_multi.result
@@ -0,0 +1,90 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+#
+# Bug #25144 "replication / binlog with view breaks".
+# Statements that used views didn't ensure that view were not modified
+# during their execution. Indeed this led to incorrect binary log with
+# statement based logging and as result to broken replication.
+#
+drop tables if exists t1, t2;
+drop view if exists v1;
+# Syncing slave with master and switching to connection 'slave'
+# Switching to connection 'master'
+create table t1 (i int);
+create table t2 (i int);
+create view v1 as select * from t1;
+# First we try to concurrently execute statement that uses view
+# and statement that drops it. We use "user" locks as means to
+# suspend execution of first statement once it opens our view.
+select get_lock("lock_bg25144", 1);
+get_lock("lock_bg25144", 1)
+1
+# Switching to connection 'master1'
+insert into v1 values (get_lock("lock_bg25144", 100));
+# Switching to connection 'master2'
+drop view v1;
+# Switching to connection 'master'
+select release_lock("lock_bg25144");
+release_lock("lock_bg25144")
+1
+# Switching to connection 'master1'
+select release_lock("lock_bg25144");
+release_lock("lock_bg25144")
+1
+# Switching to connection 'master2'
+# Switching to connection 'master'
+# Check that insertion through view did happen.
+select * from t1;
+i
+1
+# Syncing slave with master and switching to connection 'slave'
+# Check that slave was able to replicate this sequence
+# which means that we got correct binlog order.
+select * from t1;
+i
+1
+# Switching to connection 'master'
+# Now we will repeat the test by trying concurrently execute
+# statement that uses a view and statement that alters it.
+create view v1 as select * from t1;
+select get_lock("lock_bg25144", 1);
+get_lock("lock_bg25144", 1)
+1
+# Switching to connection 'master1'
+insert into v1 values (get_lock("lock_bg25144", 100));
+# Switching to connection 'master2'
+alter view v1 as select * from t2;
+# Switching to connection 'master'
+select release_lock("lock_bg25144");
+release_lock("lock_bg25144")
+1
+# Switching to connection 'master1'
+select release_lock("lock_bg25144");
+release_lock("lock_bg25144")
+1
+# Switching to connection 'master2'
+# Switching to connection 'master'
+# Second insertion should go to t1 as well.
+select * from t1;
+i
+1
+1
+select * from t2;
+i
+# Syncing slave with master and switching to connection 'slave'
+# Now let us check that statements were logged in proper order
+# So we have same result on slave.
+select * from t1;
+i
+1
+1
+select * from t2;
+i
+# Switching to connection 'master'
+drop table t1, t2;
+drop view v1;
+# Syncing slave with master and switching to connection 'slave'
diff --git a/mysql-test/suite/rpl/t/disabled.def b/mysql-test/suite/rpl/t/disabled.def
index a5017b1a02c..873b8c314e8 100644
--- a/mysql-test/suite/rpl/t/disabled.def
+++ b/mysql-test/suite/rpl/t/disabled.def
@@ -12,3 +12,5 @@
rpl_row_create_table : Bug#45576 2009-12-01 joro rpl_row_create_table fails on PB2
rpl_spec_variables : BUG#47661 2009-10-27 jasonh rpl_spec_variables fails on PB2 hpux
+rpl_failed_optimize : WL#4284: Can't optimize table used by a pending transaction (there is metadata lock on the table).
+rpl_read_only : WL#4284: Setting Read only won't succeed until all metadata locks are released.
diff --git a/mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt b/mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029-master.opt
index 74e71a8e558..74e71a8e558 100644
--- a/mysql-test/suite/binlog/t/binlog_auto_increment_bug33029-master.opt
+++ b/mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029-master.opt
diff --git a/mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029.test b/mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029.test
new file mode 100644
index 00000000000..dbdd96347a2
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_binlog_auto_inc_bug33029.test
@@ -0,0 +1,42 @@
+# BUG#33029 5.0 to 5.1 replication fails on dup key when inserting
+# using a trig in SP
+
+# For all 5.0 up to 5.0.58 exclusive, and 5.1 up to 5.1.12 exclusive,
+# if one statement in a SP generated AUTO_INCREMENT value by the top
+# statement, all statements after it would be considered generated
+# AUTO_INCREMENT value by the top statement, and a erroneous INSERT_ID
+# value might be associated with these statement, which could cause
+# duplicate entry error and stop the slave.
+
+# Test if the slave can replicate from such a buggy master
+
+# The bug33029-slave-relay-bin.000001 file is the
+# slave-replay-bin.000003 file generated by run the
+# rpl_auto_increment_bug33029.test with clean up statements at the end
+# of the test case removed on a buggy 5.0 server
+
+source include/have_log_bin.inc;
+
+let $fake_relay_log= $MYSQL_TEST_DIR/std_data/bug33029-slave-relay-bin.000001;
+source include/setup_fake_relay_log.inc;
+
+start slave sql_thread;
+disable_result_log;
+select MASTER_POS_WAIT('master-bin.000001', 3776);
+enable_result_log;
+
+echo # Result on slave;
+SELECT * FROM t1;
+SELECT * FROM t2;
+
+# clean up
+disable_warnings;
+DROP TABLE IF EXISTS t1, t2;
+DROP PROCEDURE IF EXISTS p1;
+DROP PROCEDURE IF EXISTS p2;
+DROP FUNCTION IF EXISTS f1;
+DROP TRIGGER IF EXISTS tr1;
+enable_warnings;
+
+stop slave sql_thread;
+source include/cleanup_fake_relay_log.inc;
diff --git a/mysql-test/suite/rpl/t/rpl_do_grant.test b/mysql-test/suite/rpl/t/rpl_do_grant.test
index f43ac3cf340..e3d7784429e 100644
--- a/mysql-test/suite/rpl/t/rpl_do_grant.test
+++ b/mysql-test/suite/rpl/t/rpl_do_grant.test
@@ -112,6 +112,9 @@ show grants for rpl_do_grant2@localhost;
# BUG42217 mysql.procs_priv does not get replicated
#####################################################
connection master;
+call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+sync_slave_with_master;
+connection master;
--disable_warnings
DROP DATABASE IF EXISTS bug42217_db;
@@ -201,12 +204,19 @@ USE bug42217_db;
DROP FUNCTION upgrade_del_func;
DROP FUNCTION upgrade_alter_func;
DROP DATABASE bug42217_db;
+-- sync_slave_with_master
+-- connection master
+
+# user was already dropped in the slave before
+# so no need to wait for the slave to replicate
+# this statement (if it did and we later synced
+# the slave it would end up in an error anyway)
DROP USER 'create_rout_db'@'localhost';
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
-connection slave;
-USE mtr;
-call mtr.add_suppression("Slave: Operation DROP USER failed for 'create_rout_db'@'localhost' Error_code: 1396");
+# finish entire clean up (remove binlogs)
+# so that we leave a pristine environment for the
+# following tests
+-- source include/master-slave-reset.inc
# BUG#49119: Master crashes when executing 'REVOKE ... ON
# {PROCEDURE|FUNCTION} FROM ...'
diff --git a/mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt b/mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt
index 95bca94fd3a..ad7fd508afe 100644
--- a/mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt
+++ b/mysql-test/suite/rpl/t/rpl_flushlog_loop-master.opt
@@ -1 +1 @@
--O max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/mysqld.1/data/relay-log
+--max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/mysqld.1/data/relay-log
diff --git a/mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt b/mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt
index e2aa63225a3..c8d2f85bcb7 100644
--- a/mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt
+++ b/mysql-test/suite/rpl/t/rpl_flushlog_loop-slave.opt
@@ -1 +1 @@
--O max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/mysqld.2/data/relay-log
+--max_binlog_size=1M --relay-log=$MYSQLTEST_VARDIR/mysqld.2/data/relay-log
diff --git a/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test b/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
index fca8646dd05..838938388db 100644
--- a/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
+++ b/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
@@ -382,7 +382,7 @@ let $slave_param_comparison= =;
let $rcvd_heartbeats_before= query_get_value(SHOW STATUS LIKE 'slave_received_heartbeats', Value, 1);
# Flush logs every 0.1 second during 5 sec
--disable_query_log
-let $i=50;
+let $i=100;
while ($i) {
FLUSH LOGS;
dec $i;
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix.test b/mysql-test/suite/rpl/t/rpl_ip_mix.test
index 68aa2fc87a9..0852b3f4ff7 100644
--- a/mysql-test/suite/rpl/t/rpl_ip_mix.test
+++ b/mysql-test/suite/rpl/t/rpl_ip_mix.test
@@ -7,8 +7,6 @@
# (see corresponding cnf file)
#
--source include/check_ipv6.inc
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
--source include/have_log_bin.inc
let $IPv6= ::1;
@@ -27,38 +25,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,$IPv6,root,,test,MASTER_MYPORT);
@@ -78,7 +44,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2.test b/mysql-test/suite/rpl/t/rpl_ip_mix2.test
index d6435d710c1..11c648dece5 100644
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2.test
+++ b/mysql-test/suite/rpl/t/rpl_ip_mix2.test
@@ -19,17 +19,11 @@ disconnect checkcon123456789;
--enable_abort_on_error
--enable_query_log
# end check
-
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
--source include/have_log_bin.inc
let $IPv6= ::1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix2.inc
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
let $IPv6= ::1/128;
#--echo #################### IP: $IPv6 ###########################
@@ -43,38 +37,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ip_mix2.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
@@ -94,7 +56,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf b/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf
deleted file mode 100644
index 306df437bcc..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= 0.0.0.0
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= ::
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test b/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test
deleted file mode 100644
index f9a2022ddd4..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix2_win.test
+++ /dev/null
@@ -1,78 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, master: --bind-address=0.0.0.0, slave: --bind-address=::
-# (see corresponding cnf file)
-#
-# Check if ipv6 is available. If not, server is crashing (see BUG#48915).
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,::1,root,,test,$SLAVE_MYPORT);
-if($mysql_errno)
-{
-skip wrong IP for slave;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix2.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix2.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,$IPv6,root,,test,SLAVE_MYPORT);
-connect (slave,$IPv6,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf b/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf
deleted file mode 100644
index 00e2637d822..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= ::
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= 0.0.0.0
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ip_mix_win.test b/mysql-test/suite/rpl/t/rpl_ip_mix_win.test
deleted file mode 100644
index 7d78f71bd1b..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ip_mix_win.test
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, master: --bind-address=::, slave: --bind-address=0.0.0.0
-# (see corresponding cnf file)
-#
---source include/check_ipv6.inc
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ip_mix.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ip_mix.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,$IPv6,root,,test,MASTER_MYPORT);
-connect (master,$IPv6,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
index f4e5ad6af7b..ecd5a754fdc 100644
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
+++ b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6.test
@@ -6,22 +6,7 @@
# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding cnf file)
# for master and slave
#
-# Check if ipv4 is available.
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,127.0.0.1,root,,test);
-if($mysql_errno)
-{
-skip wrong IP;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
+--source include/have_ipv4_mapped.inc
--source include/have_log_bin.inc
let $IPv6= 127.0.0.1;
@@ -56,7 +41,7 @@ let $IPv6= ::FFFF:127.0.0.1;
#--echo #################### IP: $IPv6 ###########################
#--source include/rpl_ipv6.inc
-let $IPv6= ::1;
+let $IPv6= ::FFFF:127.0.0.1;
--echo #################### IP: $IPv6 ###########################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
@@ -75,10 +60,10 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
+eval change master to master_host='0:0000:0000:0:0000:FFFF:127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
--echo disconnect slave;
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf
deleted file mode 100644
index b646a4088ff..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= 0.0.0.0
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= 0.0.0.0
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test b/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test
deleted file mode 100644
index db786536c2d..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv4_as_ipv6_win.test
+++ /dev/null
@@ -1,63 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv4 (127.0.0.1) in ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding cnf file)
-# for master and slave
-#
-# Check if ipv4 is available.
---disable_query_log
---disable_abort_on_error
-connect (checkcon123456789,127.0.0.1,root,,test);
-if($mysql_errno)
-{
-skip wrong IP;
-}
-connection default;
-disconnect checkcon123456789;
---enable_abort_on_error
---enable_query_log
-# end check
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6.test b/mysql-test/suite/rpl/t/rpl_ipv6.test
index 71fedcb4208..3eceedfd7a4 100644
--- a/mysql-test/suite/rpl/t/rpl_ipv6.test
+++ b/mysql-test/suite/rpl/t/rpl_ipv6.test
@@ -27,38 +27,6 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--echo #################### IP: $IPv6 ###########################
--source include/rpl_ipv6.inc
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-#let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
-let $IPv6= ::FFFF:127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-#let $IPv6= ::FFFF:127.0.0.1/96;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
let $IPv6= ::1;
--echo #################### IP: $IPv6 mix #######################
--echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
@@ -78,7 +46,7 @@ let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
eval change master to master_host='$IPv6';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
-eval change master to master_host='::FFFF:127.0.0.1';
+eval change master to master_host='127.0.0.1';
let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
--echo Master-Host: $master_host
eval change master to master_host='0:0:0:0:0:0:0:1';
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf b/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf
deleted file mode 100644
index c657e7c5115..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv6_win.cnf
+++ /dev/null
@@ -1,56 +0,0 @@
-# Use default setting for mysqld processes
-!include include/default_mysqld.cnf
-!include include/default_client.cnf
-
-[mysqld.1]
-
-# Run the master.sh script before starting this process
-#!run-master-sh
-
-log-bin= master-bin
-
-loose-innodb
-
-skip-name-resolve
-bind-address= ::
-
-
-[mysqld.2]
-# Run the slave.sh script before starting this process
-#!run-slave-sh
-
-# Append <testname>-slave.opt file to the list of argument used when
-# starting the mysqld
-#!use-slave-opt
-
-log-bin= slave-bin
-relay-log= slave-relay-bin
-
-init-rpl-role= slave
-log-slave-updates
-master-retry-count= 10
-
-# Values reported by slave when it connect to master
-# and shows up in SHOW SLAVE STATUS;
-report-host= localhost
-report-port= @mysqld.2.port
-report-user= root
-
-skip-slave-start
-skip-name-resolve
-bind-address= ::
-
-# Directory where slaves find the dumps generated by "load data"
-# on the server. The path need to have constant length otherwise
-# test results will vary, thus a relative path is used.
-slave-load-tmpdir= ../../tmp
-
-loose-innodb
-
-[ENV]
-MASTER_MYPORT= @mysqld.1.port
-MASTER_MYSOCK= @mysqld.1.socket
-
-SLAVE_MYPORT= @mysqld.2.port
-SLAVE_MYSOCK= @mysqld.2.socket
-
diff --git a/mysql-test/suite/rpl/t/rpl_ipv6_win.test b/mysql-test/suite/rpl/t/rpl_ipv6_win.test
deleted file mode 100644
index 7c9d437541a..00000000000
--- a/mysql-test/suite/rpl/t/rpl_ipv6_win.test
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format, especially "change master host=..."
-# Options: --skip-name-resolve, --bind-address=:: (see corresponding cnf file)
-# for master and slave.
-#
---source include/check_ipv6.inc
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
---source include/have_log_bin.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1/128;
-#--echo #################### IP: $IPv6 ###########################
-#--source include/rpl_ipv6.inc
-
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 0:0:0:0:0:0:0:1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= 127.0.0.1;
---echo #################### IP: $IPv6 ###########################
---source include/rpl_ipv6.inc
-
-let $IPv6= ::1;
---echo #################### IP: $IPv6 mix #######################
---echo connect (master,127.0.0.1,root,,test,MASTER_MYPORT);
-connect (master,127.0.0.1,root,,test,$MASTER_MYPORT);
---echo connect (slave,127.0.0.1,root,,test,SLAVE_MYPORT);
-connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT);
---echo connection master;
-connection master;
-reset master;
-source include/show_master_status.inc;
-save_master_pos;
---echo connection slave;
-connection slave;
-reset slave;
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='$IPv6';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='127.0.0.1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
-eval change master to master_host='0:0:0:0:0:0:0:1';
-let $master_host= query_get_value(SHOW SLAVE STATUS, Master_Host, 1);
---echo Master-Host: $master_host
---echo disconnect slave;
-disconnect slave;
---echo disconnect master;
-disconnect master;
---echo connection default;
-connection default;
---exit
diff --git a/mysql-test/suite/rpl/t/rpl_killed_ddl.test b/mysql-test/suite/rpl/t/rpl_killed_ddl.test
index 61b882efcf3..22bf194cc08 100644
--- a/mysql-test/suite/rpl/t/rpl_killed_ddl.test
+++ b/mysql-test/suite/rpl/t/rpl_killed_ddl.test
@@ -139,7 +139,8 @@ disable_warnings;
######## DATABASE ########
-let $diff_statement= SHOW DATABASES LIKE 'd%';
+let $diff_statement= SELECT schema_name FROM information_schema.schemata
+ WHERE schema_name LIKE 'd%' ORDER BY schema_name;
send CREATE DATABASE d2;
source include/kill_query_and_diff_master_slave.inc;
@@ -158,7 +159,9 @@ source include/kill_query_and_diff_master_slave.inc;
######## EVENT ########
-let $diff_statement= SELECT event_name, event_body, execute_at FROM information_schema.events where event_name like 'e%';
+let $diff_statement= SELECT event_name, event_body, execute_at
+ FROM information_schema.events where event_name like 'e%'
+ ORDER BY event_name;
send CREATE EVENT e2
ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
diff --git a/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test b/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
index d3ee2766314..63e65834e5b 100644
--- a/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
+++ b/mysql-test/suite/rpl/t/rpl_loaddata_symlink.test
@@ -4,6 +4,7 @@
# if the path of the load data file is a symbolic link.
#
--source include/master-slave.inc
+--source include/not_windows.inc
--source include/have_binlog_format_statement.inc
create table t1(a int not null auto_increment, b int, primary key(a) );
diff --git a/mysql-test/suite/rpl/t/rpl_packet-master.opt b/mysql-test/suite/rpl/t/rpl_packet-master.opt
index 42d4f94c999..412bc079caa 100644
--- a/mysql-test/suite/rpl/t/rpl_packet-master.opt
+++ b/mysql-test/suite/rpl/t/rpl_packet-master.opt
@@ -1 +1 @@
--O max_allowed_packet=1024 -O net_buffer_length=1024
+--max_allowed_packet=1024 --net_buffer_length=1024
diff --git a/mysql-test/suite/rpl/t/rpl_packet-slave.opt b/mysql-test/suite/rpl/t/rpl_packet-slave.opt
index 42d4f94c999..412bc079caa 100644
--- a/mysql-test/suite/rpl/t/rpl_packet-slave.opt
+++ b/mysql-test/suite/rpl/t/rpl_packet-slave.opt
@@ -1 +1 @@
--O max_allowed_packet=1024 -O net_buffer_length=1024
+--max_allowed_packet=1024 --net_buffer_length=1024
diff --git a/mysql-test/suite/rpl/t/rpl_relayrotate-slave.opt b/mysql-test/suite/rpl/t/rpl_relayrotate-slave.opt
index e5b24dd9413..5cdfe28dd79 100644
--- a/mysql-test/suite/rpl/t/rpl_relayrotate-slave.opt
+++ b/mysql-test/suite/rpl/t/rpl_relayrotate-slave.opt
@@ -1,2 +1,2 @@
--O max_relay_log_size=16384
+--max_relay_log_size=16384
--log-warnings
diff --git a/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test b/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test
index 9a645baead0..ebb8bb6c718 100644
--- a/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test
+++ b/mysql-test/suite/rpl/t/rpl_row_mysqlbinlog.test
@@ -161,14 +161,14 @@ connection master;
remove_file $MYSQLTEST_VARDIR/tmp/master.sql;
-# this test for position option
+# this test for start-position option
# By setting this position to 416, we should only get the create of t3
--disable_query_log
select "--- Test 2 position test --" as "";
--enable_query_log
let $MYSQLD_DATADIR= `select @@datadir;`;
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
---exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --position=417 --stop-position=570 $MYSQLD_DATADIR/master-bin.000001
+--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --start-position=417 --stop-position=570 $MYSQLD_DATADIR/master-bin.000001
# These are tests for remote binlog.
# They should return the same as previous test.
@@ -266,7 +266,7 @@ let $MYSQLD_DATADIR= `select @@datadir;`;
select "--- Test 7 reading stdin w/position --" as "";
--enable_query_log
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
---exec $MYSQL_BINLOG --short-form --position=417 --stop-position=570 - < $MYSQLD_DATADIR/master-bin.000001
+--exec $MYSQL_BINLOG --short-form --start-position=417 --stop-position=570 - < $MYSQLD_DATADIR/master-bin.000001
# Bug#16217 (mysql client did not know how not switch its internal charset)
--disable_query_log
diff --git a/mysql-test/suite/rpl/t/rpl_row_utf16.test b/mysql-test/suite/rpl/t/rpl_row_utf16.test
new file mode 100644
index 00000000000..b8f7b724ea1
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_row_utf16.test
@@ -0,0 +1,26 @@
+-- source include/master-slave.inc
+-- source include/have_binlog_format_row.inc
+-- source include/have_utf16.inc
+
+#
+# BUG#51716: Char column with utf16 character set gives wrong padding on slave
+#
+
+CREATE TABLE t1(c1 CHAR(10) CHARACTER SET utf16 DEFAULT 'ola');
+INSERT INTO t1 VALUES ('abc'); # explicit value is inserted and encoded correctly
+INSERT INTO t1 VALUES (); # default value is inserted and encoded correctly
+
+-- echo #### ON MASTER
+--query_vertical SELECT c1, hex(c1) from t1
+
+-- sync_slave_with_master
+
+-- echo #### ON SLAVE
+--query_vertical SELECT c1, hex(c1) FROM t1
+
+# assertion: tables don't differ
+-- let $diff_table_1=master:test.t1
+-- let $diff_table_2=slave:test.t1
+-- source include/diff_tables.inc
+
+DROP TABLE t1;
diff --git a/mysql-test/suite/rpl/t/rpl_row_utf32.test b/mysql-test/suite/rpl/t/rpl_row_utf32.test
new file mode 100644
index 00000000000..44ca4b345c0
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_row_utf32.test
@@ -0,0 +1,44 @@
+-- source include/master-slave.inc
+-- source include/have_binlog_format_row.inc
+-- source include/have_utf32.inc
+
+#
+# BUG#51787 Assertion `(n % 4) == 0' on slave upon INSERT into a table with UTF32
+#
+
+SET SQL_LOG_BIN=0;
+CREATE TABLE t1 (c1 char(255) DEFAULT NULL, KEY c1 (c1)) DEFAULT CHARSET=utf32;
+SET SQL_LOG_BIN=1;
+
+-- connection slave
+
+SET @saved_slave_type_conversions= @@global.slave_type_conversions;
+
+#
+# Force test to cover conversion execution path in the
+# slave, which also makes use of sql_type method, thence
+# can ultimately trigger the assertion.
+#
+-- source include/stop_slave.inc
+SET GLOBAL SLAVE_TYPE_CONVERSIONS='ALL_NON_LOSSY';
+-- source include/start_slave.inc
+
+SET SQL_LOG_BIN=0;
+CREATE TABLE t1 ( c1 varchar(255) DEFAULT NULL, KEY c1 (c1)) DEFAULT CHARSET=utf32;
+SET SQL_LOG_BIN=1;
+
+-- connection master
+
+INSERT INTO t1(c1) VALUES ('insert into t1');
+DROP TABLE t1;
+
+--sync_slave_with_master
+
+# assertion: the slave woul hit an/several assertions:
+# before and during slave conversion procedure
+# Now that is fixed, it wont.
+
+SET GLOBAL SLAVE_TYPE_CONVERSIONS= @saved_slave_type_conversions;
+-- source include/stop_slave.inc
+-- source include/start_slave.inc
+-- connection master
diff --git a/mysql-test/suite/rpl/t/rpl_semi_sync.test b/mysql-test/suite/rpl/t/rpl_semi_sync.test
index 4900acc1e91..b04541aba21 100644
--- a/mysql-test/suite/rpl/t/rpl_semi_sync.test
+++ b/mysql-test/suite/rpl/t/rpl_semi_sync.test
@@ -11,6 +11,7 @@ disable_query_log;
connection master;
call mtr.add_suppression("Timeout waiting for reply of binlog");
call mtr.add_suppression("Read semi-sync reply");
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT.");
connection slave;
call mtr.add_suppression("Master server does not support semi-sync");
call mtr.add_suppression("Semi-sync slave .* reply");
@@ -193,8 +194,38 @@ select count(distinct a) from t1;
select min(a) from t1;
select max(a) from t1;
+--echo
+--echo # BUG#50157
+--echo # semi-sync replication crashes when replicating a transaction which
+--echo # include 'CREATE TEMPORARY TABLE `MyISAM_t` SELECT * FROM `Innodb_t` ;
+
+connection master;
+echo [ on master ];
+SET SESSION AUTOCOMMIT= 0;
+CREATE TABLE t2(c1 INT) ENGINE=innodb;
+sync_slave_with_master;
+
+connection master;
+BEGIN;
+--echo
+--echo # Even though it is in a transaction, this statement is binlogged into binlog
+--echo # file immediately.
+--disable_warnings
+CREATE TEMPORARY TABLE t3 SELECT c1 FROM t2 where 1=1;
+--enable_warnings
+--echo
+--echo # These statements will not be binlogged until the transaction is committed
+INSERT INTO t2 VALUES(11);
+INSERT INTO t2 VALUES(22);
+COMMIT;
+
+DROP TABLE t2, t3;
+SET SESSION AUTOCOMMIT= 1;
+sync_slave_with_master;
+
+
--echo #
---echo # Test semi-sync master will switch OFF after one transacton
+--echo # Test semi-sync master will switch OFF after one transaction
--echo # timeout waiting for slave reply.
--echo #
connection slave;
diff --git a/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test b/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
index 437e1ebb92d..b85ed18ab51 100644
--- a/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
+++ b/mysql-test/suite/rpl/t/rpl_slave_load_remove_tmpfile.test
@@ -33,10 +33,17 @@ commit;
connection slave;
source include/wait_for_slave_sql_to_stop.inc;
---replace_result $MASTER_MYPORT MASTER_MYPORT
---replace_column 1 # 7 # 8 # 9 # 22 # 23 # 33 # 35 # 36 #
---replace_regex /SQL_LOAD-[0-9]-[0-9]-[0-9]*/SQL_LOAD/
-query_vertical show slave status;
+--let $error= query_get_value(SHOW SLAVE STATUS, Last_Errno, 1)
+# windows and linux different error numbers here:
+# Windows:
+# - Last_Errno 29 (File not found)
+# Unix like OS:
+# - Last_Errno 13 (Can't stat file)
+--let $assertion= `SELECT $error=29 OR $error=13`
+if (!$assertion)
+{
+ --echo UNEXPECTED ERROR NUMBER: $error
+}
##########################################################################
# Clean up
@@ -49,4 +56,5 @@ connection slave;
drop table t1;
-call mtr.add_suppression("Slave: Error writing file 'UNKNOWN' .Errcode: 9. Error_code: 3");
+call mtr.add_suppression("Slave: Can't get stat of .*");
+call mtr.add_suppression("Slave: File.* not found.*");
diff --git a/mysql-test/suite/rpl/t/rpl_slow_query_log.test b/mysql-test/suite/rpl/t/rpl_slow_query_log.test
index c310d6a8a4f..6b97969d4c8 100644
--- a/mysql-test/suite/rpl/t/rpl_slow_query_log.test
+++ b/mysql-test/suite/rpl/t/rpl_slow_query_log.test
@@ -191,3 +191,119 @@ source include/start_slave.inc;
disconnect extra;
disconnect extra2;
+
+#
+# BUG#50620: Adding an index to a table prevents slave from logging into slow log
+#
+
+-- source include/master-slave-reset.inc
+
+-- connection master
+SET @old_log_output= @@log_output;
+SET GLOBAL log_output= 'TABLE';
+SET GLOBAL long_query_time= 2;
+SET @old_long_query_time= @@long_query_time;
+SET SESSION long_query_time= 2;
+TRUNCATE mysql.slow_log;
+-- connection slave
+
+-- source include/stop_slave.inc
+SET @old_log_output= @@log_output;
+SET GLOBAL log_output= 'TABLE';
+SET @old_long_query_time= @@long_query_time;
+SET GLOBAL long_query_time= 2;
+TRUNCATE mysql.slow_log;
+-- source include/start_slave.inc
+
+let $slow_query= INSERT INTO t1 values(1, sleep(3));
+
+-- connection master
+CREATE TABLE t1 (a int, b int);
+
+-- echo ********************************************************************
+-- echo **** INSERT one row that exceeds long_query_time
+-- echo **** Outcome: query ends up in both master and slave slow log
+-- echo ********************************************************************
+
+-- disable_warnings
+-- eval $slow_query
+-- enable_warnings
+
+let $master_slow_query= `SELECT count(*) = 1 FROM mysql.slow_log WHERE sql_text like '$slow_query'`;
+-- sync_slave_with_master
+let $slave_slow_query= `SELECT count(*) = 1 FROM mysql.slow_log WHERE sql_text like '$slow_query'`;
+
+if (`SELECT $master_slow_query != $slave_slow_query`)
+{
+ -- connection master
+ -- echo ***********************************************
+ -- echo ** DUMPING MASTER SLOW LOG CONTENTS
+ -- echo ***********************************************
+ SELECT * FROM mysql.slow_log;
+
+ -- connection slave
+ -- echo ***********************************************
+ -- echo ** DUMPING SLAVE SLOW LOG CONTENTS
+ -- echo ***********************************************
+ SELECT * FROM mysql.slow_log;
+
+ -- die "Assertion failed! Master and slave slow log contents differ. Bailing out!"
+}
+
+if (`SELECT $master_slow_query = $slave_slow_query`)
+{
+ -- echo ### Assertion is good. Both Master and Slave exhibit the
+ -- echo ### same number of queries in slow log: $master_slow_query
+}
+
+TRUNCATE mysql.slow_log;
+-- connection master
+TRUNCATE mysql.slow_log;
+
+-- echo ********************************************************************
+-- echo **** Now do inserts again, but first add an index to the table.
+-- echo **** Outcome: Note that the slave contains the same one entry (as
+-- echo **** the master does) whereas before the patch it did not.
+-- echo ********************************************************************
+
+ALTER TABLE t1 ADD INDEX id1(a);
+
+-- disable_warnings
+-- eval $slow_query
+-- enable_warnings
+
+let $master_slow_query= `SELECT count(*) = 1 FROM mysql.slow_log WHERE sql_text like '$slow_query'`;
+-- sync_slave_with_master
+let $slave_slow_query= `SELECT count(*) = 1 FROM mysql.slow_log WHERE sql_text like '$slow_query'`;
+
+if (`SELECT $master_slow_query != $slave_slow_query`)
+{
+ -- connection master
+ -- echo ***********************************************
+ -- echo ** DUMPING MASTER SLOW LOG CONTENTS
+ -- echo ***********************************************
+ SELECT * FROM mysql.slow_log;
+
+ -- connection slave
+ -- echo ***********************************************
+ -- echo ** DUMPING SLAVE SLOW LOG CONTENTS
+ -- echo ***********************************************
+ SELECT * FROM mysql.slow_log;
+
+ -- die "Assertion failed! Master and slave slow log contents differ. Bailing out!"
+}
+
+if (`SELECT $master_slow_query = $slave_slow_query`)
+{
+ -- echo ### Assertion is good. Both Master and Slave exhibit the
+ -- echo ### same number of queries in slow log: $master_slow_query
+}
+
+-- connection master
+SET @@global.log_output= @old_log_output;
+SET @@global.long_query_time= @old_long_query_time;
+DROP TABLE t1;
+
+-- sync_slave_with_master
+SET @@global.log_output= @old_log_output;
+SET @@global.long_query_time= @old_long_query_time;
diff --git a/mysql-test/suite/rpl/t/rpl_sp.test b/mysql-test/suite/rpl/t/rpl_sp.test
index 96a41d9a9ad..362bfa17ef3 100644
--- a/mysql-test/suite/rpl/t/rpl_sp.test
+++ b/mysql-test/suite/rpl/t/rpl_sp.test
@@ -621,7 +621,66 @@ drop procedure mysqltestbug36570_p1;
drop procedure ` mysqltestbug36570_p2`;
drop function mysqltestbug36570_f1;
--echo End of 5.0 tests
---echo End of 5.1 tests
+--echo # End of 5.1 tests
+--echo #
+--echo # Test Bug#30977 Concurrent statement using stored
+--echo # function and DROP FUNCTION breaks SBR.
+--echo #
+--echo # Demonstrate that stored function DDL can not go through,
+--echo # or, worse yet, make its way into the binary log, while
+--echo # the stored function is in use.
+--echo # For that, try to insert a result of a stored function
+--echo # into a table. Block the insert in the beginning, waiting
+--echo # on a table lock. While insert is blocked, attempt to
+--echo # drop the routine. Verify that this attempt
+--echo # blocks and waits for INSERT to complete. Commit and
+--echo # reap the chain of events. Master and slave must contain
+--echo # identical data. Statements in the binrary log must be
+--echo # consistent with data in the table.
+--echo #
+--echo # --> connection default
+connection default;
+--disable_warnings
+drop table if exists t1, t2;
+drop function if exists t1;
+--enable_warnings
+create table t1 (a int);
+create table t2 (a int) as select 1 as a;
+create function f1() returns int deterministic return (select max(a) from t2);
+lock table t2 write;
+--echo # --> connection master
+connection master;
+--echo # Sending 'insert into t1 (a) values (f1())'...
+--send insert into t1 (a) values (f1())
+connection master1;
+--echo # Waitng for 'insert into t1 ...' to get blocked on table lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='insert into t1 (a) values (f1())';
+--source include/wait_condition.inc
+--echo # Sending 'drop function f1'. It will abort the table lock wait.
+drop function f1;
+--echo # --> connection default
+connection default;
+--echo # Now let's let 'insert' go through...
+unlock tables;
+--echo # --> connection con1
+connection master;
+--echo # Reaping 'insert into t1 (a) values (f1())'...
+--error ER_SP_DOES_NOT_EXIST
+--reap
+connection master;
+select * from t1;
+sync_slave_with_master;
+connection slave;
+select * from t1;
+# Cleanup
+connection master;
+drop table t1, t2;
+--error ER_SP_DOES_NOT_EXIST
+drop function f1;
+
+--echo # End of 5.5 tests.
+
# Cleanup
sync_slave_with_master;
diff --git a/mysql-test/suite/rpl/t/rpl_stm_user_variables.test b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test
new file mode 100644
index 00000000000..c58acdcb084
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_stm_user_variables.test
@@ -0,0 +1,141 @@
+#
+# BUG#49562: SBR out of sync when using numeric data types + user variable
+#
+
+-- source include/master-slave.inc
+-- source include/have_binlog_format_statement.inc
+
+## Setup user variables for several numeric types, so that we get
+## coverage on the User_var_log_event different val types
+
+-- let $max_unsigned_long= 18446744073709551615
+-- let $min_signed_long= -9223372036854775808
+-- eval SET @positive= $max_unsigned_long
+-- eval SET @negative= $min_signed_long
+
+CREATE TABLE t1 (`tinyint` TINYINT,
+ `smallint` SMALLINT,
+ `mediumint` MEDIUMINT,
+ `integer` INTEGER,
+ `bigint` BIGINT,
+ `utinyint` TINYINT UNSIGNED,
+ `usmallint` SMALLINT UNSIGNED,
+ `umediumint` MEDIUMINT UNSIGNED,
+ `uinteger` INTEGER UNSIGNED,
+ `ubigint` BIGINT UNSIGNED,
+ `double` DOUBLE,
+ `float` FLOAT,
+ `real` REAL(30,2),
+ `decimal` DECIMAL(30,2)) ENGINE = MyISAM;
+
+-- disable_warnings
+
+-- echo ### insert max unsigned
+-- echo ### a) declarative
+-- eval INSERT INTO t1 VALUES ($max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long,$max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long, $max_unsigned_long);
+
+-- echo #########################################
+-- echo #### [ on master ]
+-- query_vertical SELECT * FROM t1
+-- sync_slave_with_master
+-- echo #### [ on slave ]
+-- query_vertical SELECT * FROM t1
+-- echo #########################################
+-- connection master
+-- echo ## assertion: master and slave tables are in sync
+-- let $diff_table_1=master:test.t1
+-- let $diff_table_2=slave:test.t1
+-- source include/diff_tables.inc
+-- connection master
+TRUNCATE t1;
+
+-- echo ### b) user var
+INSERT INTO t1 VALUES (@positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive,
+ @positive);
+
+-- echo #########################################
+-- echo #### [ on master ]
+-- query_vertical SELECT * FROM t1
+-- sync_slave_with_master
+-- echo #### [ on slave ]
+-- query_vertical SELECT * FROM t1
+-- echo #########################################
+-- connection master
+-- echo ## assertion: master and slave tables are in sync
+-- let $diff_table_1=master:test.t1
+-- let $diff_table_2=slave:test.t1
+-- source include/diff_tables.inc
+-- connection master
+TRUNCATE t1;
+
+
+-- echo ### insert min signed
+-- echo ### a) declarative
+-- eval INSERT INTO t1 VALUES ($min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long,$min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long, $min_signed_long);
+
+-- echo #########################################
+-- echo #### [ on master ]
+-- query_vertical SELECT * FROM t1
+-- sync_slave_with_master
+-- echo #### [ on slave ]
+-- query_vertical SELECT * FROM t1
+-- echo #########################################
+-- connection master
+-- echo ## assertion: master and slave tables are in sync
+-- let $diff_table_1=master:test.t1
+-- let $diff_table_2=slave:test.t1
+-- source include/diff_tables.inc
+-- connection master
+TRUNCATE t1;
+
+-- echo ### b) user var
+INSERT INTO t1 VALUES (@negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative,
+ @negative);
+
+-- echo #########################################
+-- echo #### [ on master ]
+-- query_vertical SELECT * FROM t1
+-- sync_slave_with_master
+-- echo #### [ on slave ]
+-- query_vertical SELECT * FROM t1
+-- echo #########################################
+-- connection master
+
+-- echo ## assertion: master and slave tables are in sync
+-- let $diff_table_1=master:test.t1
+-- let $diff_table_2=slave:test.t1
+-- source include/diff_tables.inc
+-- connection master
+TRUNCATE t1;
+
+-- echo ## check: contents of both tables master's and slave's
+-- enable_warnings
+
+## cleanup
+-- connection master
+DROP TABLE t1;
+-- sync_slave_with_master
diff --git a/mysql-test/suite/rpl/t/rpl_sync.test b/mysql-test/suite/rpl/t/rpl_sync.test
index 80b6a144187..48c8dc02efb 100644
--- a/mysql-test/suite/rpl/t/rpl_sync.test
+++ b/mysql-test/suite/rpl/t/rpl_sync.test
@@ -64,8 +64,15 @@ stop slave IO_THREAD;
source include/wait_for_slave_io_to_stop.inc;
let $file= query_get_value("SHOW SLAVE STATUS", Relay_Log_File, 1);
---replace_result $MYSQLD_SLAVE_DATADIR MYSQLD_SLAVE_DATADIR
---exec echo "failure" > $MYSQLD_SLAVE_DATADIR/$file
+
+--let FILE_TO_CORRUPT= $MYSQLD_SLAVE_DATADIR/$file
+perl;
+$file= $ENV{'FILE_TO_CORRUPT'};
+open(FILE, ">$file") || die "Unable to open $file.";
+truncate(FILE,0);
+print FILE "failure";
+close ($file);
+EOF
--exec echo "restart" > $MYSQLTEST_VARDIR/tmp/mysqld.2.expect
SET SESSION debug="d,crash_before_rotate_relaylog";
@@ -102,9 +109,6 @@ insert into t1(a) values(8);
insert into t1(a) values(9);
connection slave;
---replace_result $MYSQLD_SLAVE_DATADIR MYSQLD_SLAVE_DATADIR
---exec cat $MYSQLD_SLAVE_DATADIR/master.backup > $MYSQLD_SLAVE_DATADIR/master.info
-
let MYSQLD_SLAVE_DATADIR=`select @@datadir`;
--perl
diff --git a/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test b/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
index 56924a2efe9..b3efb578b68 100644
--- a/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
+++ b/mysql-test/suite/rpl/t/rpl_tmp_table_and_DDL.test
@@ -10,4 +10,5 @@ source include/have_binlog_format_row.inc;
LET $ENGINE_TYPE= MyISAM;
source extra/rpl_tests/rpl_tmp_table_and_DDL.test;
+sync_slave_with_master;
diff --git a/mysql-test/suite/rpl/t/rpl_view_multi.test b/mysql-test/suite/rpl/t/rpl_view_multi.test
new file mode 100644
index 00000000000..90942f00ba7
--- /dev/null
+++ b/mysql-test/suite/rpl/t/rpl_view_multi.test
@@ -0,0 +1,145 @@
+#
+# This file contains test cases for bugs which involve views, several
+# concurren connections and manifest themselves as wrong binary log
+# sequence which results in broken replication. In principle we are
+# mostly interested in SBR here but this test will also work with RBR.
+#
+--source include/master-slave.inc
+
+--echo #
+--echo # Bug #25144 "replication / binlog with view breaks".
+--echo # Statements that used views didn't ensure that view were not modified
+--echo # during their execution. Indeed this led to incorrect binary log with
+--echo # statement based logging and as result to broken replication.
+--echo #
+#
+# Suppress "unsafe" warnings.
+#
+disable_query_log;
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT");
+enable_query_log;
+
+
+--disable_warnings
+drop tables if exists t1, t2;
+drop view if exists v1;
+--enable_warnings
+--echo # Syncing slave with master and switching to connection 'slave'
+--sync_slave_with_master
+
+connect (master2,127.0.0.1,root,,test,$MASTER_MYPORT,);
+
+--echo # Switching to connection 'master'
+connection master;
+create table t1 (i int);
+create table t2 (i int);
+create view v1 as select * from t1;
+
+--echo # First we try to concurrently execute statement that uses view
+--echo # and statement that drops it. We use "user" locks as means to
+--echo # suspend execution of first statement once it opens our view.
+select get_lock("lock_bg25144", 1);
+
+--echo # Switching to connection 'master1'
+connection master1;
+--send insert into v1 values (get_lock("lock_bg25144", 100))
+
+--echo # Switching to connection 'master2'
+connection master2;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "User lock" and info like "insert into v1 %lock_bg25144%";
+--source include/wait_condition.inc
+--send drop view v1
+
+--echo # Switching to connection 'master'
+connection master;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "drop view v1";
+--source include/wait_condition.inc
+
+select release_lock("lock_bg25144");
+
+--echo # Switching to connection 'master1'
+connection master1;
+--disable_warnings
+--reap
+--enable_warnings
+select release_lock("lock_bg25144");
+
+--echo # Switching to connection 'master2'
+connection master2;
+--reap
+
+--echo # Switching to connection 'master'
+connection master;
+--echo # Check that insertion through view did happen.
+select * from t1;
+--echo # Syncing slave with master and switching to connection 'slave'
+--sync_slave_with_master
+--echo # Check that slave was able to replicate this sequence
+--echo # which means that we got correct binlog order.
+select * from t1;
+
+--echo # Switching to connection 'master'
+connection master;
+--echo # Now we will repeat the test by trying concurrently execute
+--echo # statement that uses a view and statement that alters it.
+create view v1 as select * from t1;
+
+select get_lock("lock_bg25144", 1);
+
+--echo # Switching to connection 'master1'
+connection master1;
+--send insert into v1 values (get_lock("lock_bg25144", 100))
+
+--echo # Switching to connection 'master2'
+connection master2;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "User lock" and info like "insert into v1 %lock_bg25144%";
+--source include/wait_condition.inc
+--send alter view v1 as select * from t2
+
+--echo # Switching to connection 'master'
+connection master;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter view v1 as select * from t2";
+--source include/wait_condition.inc
+
+select release_lock("lock_bg25144");
+
+--echo # Switching to connection 'master1'
+connection master1;
+--disable_warnings
+--reap
+--enable_warnings
+select release_lock("lock_bg25144");
+
+--echo # Switching to connection 'master2'
+connection master2;
+--reap
+
+--echo # Switching to connection 'master'
+connection master;
+
+--echo # Second insertion should go to t1 as well.
+select * from t1;
+select * from t2;
+
+--echo # Syncing slave with master and switching to connection 'slave'
+--sync_slave_with_master
+--echo # Now let us check that statements were logged in proper order
+--echo # So we have same result on slave.
+select * from t1;
+select * from t2;
+
+--echo # Switching to connection 'master'
+connection master;
+drop table t1, t2;
+drop view v1;
+--echo # Syncing slave with master and switching to connection 'slave'
+--sync_slave_with_master
diff --git a/mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result b/mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result
index 35f54455179..ecf2159e5db 100644
--- a/mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result
+++ b/mysql-test/suite/rpl_ndb/r/rpl_ndb_binlog_format_errors.result
@@ -43,11 +43,11 @@ SELECT * FROM t /* Should be empty */;
a
* Modify both row-only and stmt-only table
CREATE TRIGGER trig_2 AFTER INSERT ON t_stmt FOR EACH ROW BEGIN INSERT INTO t_row VALUES(1); END;
+ERROR HY000: Cannot execute statement: binlogging impossible since BINLOG_FORMAT = ROW and at least one table uses a storage engine limited to statement-logging.
INSERT INTO t_stmt VALUES (1);
-ERROR HY000: Cannot execute statement: binlogging impossible since both row-incapable engines and statement-incapable engines are involved.
+ERROR HY000: Cannot execute statement: binlogging impossible since BINLOG_FORMAT = ROW and at least one table uses a storage engine limited to statement-logging.
SELECT * FROM t_stmt /* should be empty */;
a
-DROP TRIGGER trig_2;
* Stmt-only table and binlog_format=row
INSERT INTO t_stmt VALUES (1);
ERROR HY000: Cannot execute statement: binlogging impossible since BINLOG_FORMAT = ROW and at least one table uses a storage engine limited to statement-logging.
diff --git a/mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result b/mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result
index 467a9435104..c906f00bd40 100644
--- a/mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result
+++ b/mysql-test/suite/rpl_ndb/r/rpl_ndb_dd_partitions.result
@@ -524,7 +524,7 @@ id hex(b1) vc bc d f total y t
--- Check Update on slave ---
SELECT id,hex(b1),vc,bc,d,f,total,y,t FROM t1 WHERE id = 412;
id hex(b1) vc bc d f total y t
-412 1 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2005-11-14
+412 0 Testing MySQL databases is a cool Must make it bug free for the customer 654321.4321 15.21 0 1965 2006-02-22
--- Remove a record from t1 on master ---
DELETE FROM t1 WHERE id = 42;
--- Show current count on master for t1 ---
diff --git a/mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result b/mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result
index e668b57293e..3f3be8a05a8 100644
--- a/mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result
+++ b/mysql-test/suite/rpl_ndb/r/rpl_ndb_ddl.result
@@ -878,11 +878,11 @@ TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-------- switch to master -------
SHOW INDEX FROM mysqltest1.t6;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-------- switch to slave --------
SHOW INDEX FROM mysqltest1.t6;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
-------- switch to master -------
@@ -927,13 +927,13 @@ TEST-INFO: SLAVE: The INSERT is committed (Succeeded)
-------- switch to master -------
SHOW INDEX FROM mysqltest1.t5;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t5 1 my_idx5 1 f1 A 0 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t5 1 my_idx5 1 f1 A 0 NULL NULL YES BTREE
-------- switch to slave --------
SHOW INDEX FROM mysqltest1.t5;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t5 1 my_idx5 1 f1 A 0 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t5 1 my_idx5 1 f1 A 0 NULL NULL YES BTREE
-------- switch to master -------
diff --git a/mysql-test/suite/rpl_ndb/t/rpl_ndb_binlog_format_errors.test b/mysql-test/suite/rpl_ndb/t/rpl_ndb_binlog_format_errors.test
index 5bf3d39750b..ddad6519b5f 100644
--- a/mysql-test/suite/rpl_ndb/t/rpl_ndb_binlog_format_errors.test
+++ b/mysql-test/suite/rpl_ndb/t/rpl_ndb_binlog_format_errors.test
@@ -97,11 +97,11 @@ SELECT * FROM t_self_logging /* Should be empty */;
SELECT * FROM t /* Should be empty */;
--echo * Modify both row-only and stmt-only table
+--error ER_BINLOG_ROW_MODE_AND_STMT_ENGINE
--eval CREATE TRIGGER trig_2 AFTER INSERT ON t_stmt FOR EACH ROW BEGIN INSERT INTO t_row VALUES(1); END
---error ER_BINLOG_ROW_ENGINE_AND_STMT_ENGINE
+--error ER_BINLOG_ROW_MODE_AND_STMT_ENGINE
INSERT INTO t_stmt VALUES (1);
SELECT * FROM t_stmt /* should be empty */;
-DROP TRIGGER trig_2;
--echo * Stmt-only table and binlog_format=row
--error ER_BINLOG_ROW_MODE_AND_STMT_ENGINE
diff --git a/mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate-slave.opt b/mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate-slave.opt
index cf4319f2b40..2211d2dbb2d 100644
--- a/mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate-slave.opt
+++ b/mysql-test/suite/rpl_ndb/t/rpl_ndb_relayrotate-slave.opt
@@ -1,3 +1,3 @@
--O max_relay_log_size=16384
+--max_relay_log_size=16384
--loose-innodb
--log-warnings
diff --git a/mysql-test/suite/sys_vars/r/autocommit_func.result b/mysql-test/suite/sys_vars/r/autocommit_func.result
index 8fe7c0bc90e..13115ca81ef 100644
--- a/mysql-test/suite/sys_vars/r/autocommit_func.result
+++ b/mysql-test/suite/sys_vars/r/autocommit_func.result
@@ -103,6 +103,8 @@ id name
2 Record_2
4 Record_4
5 Record_5
+## Commit changes
+COMMIT;
## Dropping table t1 ##
DROP table t1;
## Disconnecting both connections ##
diff --git a/mysql-test/suite/sys_vars/r/character_set_client_basic.result b/mysql-test/suite/sys_vars/r/character_set_client_basic.result
index 78993015a24..ed3612627e6 100644
--- a/mysql-test/suite/sys_vars/r/character_set_client_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_set_client_basic.result
@@ -162,8 +162,16 @@ SET @@character_set_client = utf8;
SELECT @@character_set_client;
@@character_set_client
utf8
+SET @@character_set_client = utf8mb4;
+SELECT @@character_set_client;
+@@character_set_client
+utf8mb4
SET @@character_set_client = ucs2;
ERROR 42000: Variable 'character_set_client' can't be set to the value of 'ucs2'
+SET @@character_set_client = utf16;
+ERROR 42000: Variable 'character_set_client' can't be set to the value of 'utf16'
+SET @@character_set_client = utf32;
+ERROR 42000: Variable 'character_set_client' can't be set to the value of 'utf32'
SET @@character_set_client = cp866;
SELECT @@character_set_client;
@@character_set_client
@@ -422,7 +430,7 @@ ERROR 42000: Unknown character set: '100'
SET @total_charset = (SELECT count(*) FROM INFORMATION_SCHEMA.CHARACTER_SETS);
SELECT @total_charset;
@total_charset
-36
+39
'#--------------------FN_DYNVARS_010_10-------------------------#'
SET @@character_set_client = abc;
ERROR 42000: Unknown character set: 'abc'
diff --git a/mysql-test/suite/sys_vars/r/character_set_connection_basic.result b/mysql-test/suite/sys_vars/r/character_set_connection_basic.result
index dd1052d27ef..feb9073e175 100644
--- a/mysql-test/suite/sys_vars/r/character_set_connection_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_set_connection_basic.result
@@ -424,7 +424,7 @@ ERROR 42000: Unknown character set: '100'
SET @total_charset = (SELECT count(*) FROM INFORMATION_SCHEMA.CHARACTER_SETS);
SELECT @total_charset;
@total_charset
-36
+39
'#--------------------FN_DYNVARS_011_10-------------------------#'
SET @@character_set_connection = abc;
ERROR 42000: Unknown character set: 'abc'
diff --git a/mysql-test/suite/sys_vars/r/character_set_database_basic.result b/mysql-test/suite/sys_vars/r/character_set_database_basic.result
index 9aa449816f5..669af6a610c 100644
--- a/mysql-test/suite/sys_vars/r/character_set_database_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_set_database_basic.result
@@ -424,7 +424,7 @@ ERROR 42000: Unknown character set: '100'
SET @total_charset = (SELECT count(*) FROM INFORMATION_SCHEMA.CHARACTER_SETS);
SELECT @total_charset;
@total_charset
-36
+39
'#--------------------FN_DYNVARS_012_10-------------------------#'
SET @@character_set_database = "grek";
ERROR 42000: Unknown character set: 'grek'
diff --git a/mysql-test/suite/sys_vars/r/character_set_filesystem_basic.result b/mysql-test/suite/sys_vars/r/character_set_filesystem_basic.result
index e33df353c74..e8d41d99437 100644
--- a/mysql-test/suite/sys_vars/r/character_set_filesystem_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_set_filesystem_basic.result
@@ -402,7 +402,7 @@ ERROR 42000: Unknown character set: '100'
SET @total_charset = (SELECT count(*) FROM INFORMATION_SCHEMA.CHARACTER_SETS);
SELECT @total_charset;
@total_charset
-36
+39
'#--------------------FN_DYNVARS_008_10-------------------------#'
SET @@character_set_filesystem = abc;
ERROR 42000: Unknown character set: 'abc'
diff --git a/mysql-test/suite/sys_vars/r/character_set_results_basic.result b/mysql-test/suite/sys_vars/r/character_set_results_basic.result
index 0b59f60cd45..6b50f128af8 100644
--- a/mysql-test/suite/sys_vars/r/character_set_results_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_set_results_basic.result
Binary files differ
diff --git a/mysql-test/suite/sys_vars/r/character_sets_dir_basic.result b/mysql-test/suite/sys_vars/r/character_sets_dir_basic.result
index 0ee774c1e9d..c04e5dac199 100644
--- a/mysql-test/suite/sys_vars/r/character_sets_dir_basic.result
+++ b/mysql-test/suite/sys_vars/r/character_sets_dir_basic.result
@@ -1,20 +1,20 @@
select @@global.character_sets_dir;
@@global.character_sets_dir
-MYSQL_SHAREDIR/charsets/
+MYSQL_CHARSETSDIR/
select @@session.character_sets_dir;
ERROR HY000: Variable 'character_sets_dir' is a GLOBAL variable
show global variables like 'character_sets_dir';
Variable_name Value
-character_sets_dir MYSQL_SHAREDIR/charsets/
+character_sets_dir MYSQL_CHARSETSDIR/
show session variables like 'character_sets_dir';
Variable_name Value
-character_sets_dir MYSQL_SHAREDIR/charsets/
+character_sets_dir MYSQL_CHARSETSDIR/
select * from information_schema.global_variables where variable_name='character_sets_dir';
VARIABLE_NAME VARIABLE_VALUE
-CHARACTER_SETS_DIR MYSQL_SHAREDIR/charsets/
+CHARACTER_SETS_DIR MYSQL_CHARSETSDIR/
select * from information_schema.session_variables where variable_name='character_sets_dir';
VARIABLE_NAME VARIABLE_VALUE
-CHARACTER_SETS_DIR MYSQL_SHAREDIR/charsets/
+CHARACTER_SETS_DIR MYSQL_CHARSETSDIR/
set global character_sets_dir="foo";
ERROR HY000: Variable 'character_sets_dir' is a read only variable
set session character_sets_dir="foo";
diff --git a/mysql-test/suite/sys_vars/r/concurrent_insert_func.result b/mysql-test/suite/sys_vars/r/concurrent_insert_func.result
index de4ddbb5a04..0b5b342e134 100644
--- a/mysql-test/suite/sys_vars/r/concurrent_insert_func.result
+++ b/mysql-test/suite/sys_vars/r/concurrent_insert_func.result
@@ -37,9 +37,9 @@ INSERT INTO t1(name) VALUES('Record_7');
connection default;
## show processlist info and state ##
SELECT state,info FROM INFORMATION_SCHEMA.PROCESSLIST
-WHERE state= "Locked" AND info LIKE "INSERT INTO t1%";
+WHERE state= "Table lock" AND info LIKE "INSERT INTO t1%";
state info
-Locked INSERT INTO t1(name) VALUES('Record_7')
+Table lock INSERT INTO t1(name) VALUES('Record_7')
## table contents befor UNLOCK ##
SELECT * FROM t1;
name
diff --git a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
index 0496efa4296..eeb7a28c816 100644
--- a/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
+++ b/mysql-test/suite/sys_vars/r/delayed_insert_limit_func.result
@@ -4,6 +4,7 @@ Creating connection con0
Creating connection con1
SET @global_delayed_insert_limit = @@GLOBAL.delayed_insert_limit;
CREATE TABLE t1 (a VARCHAR(100),b VARCHAR(100),c VARCHAR(100));
+CREATE VIEW v1 as select * from t1;
'#--------------------FN_DYNVARS_25_01-------------------------#'
SET GLOBAL delayed_insert_limit = 14;
INSERT INTO t1 VALUES('1','1','1');
@@ -12,7 +13,7 @@ INSERT INTO t1 VALUES('3','1','1');
INSERT INTO t1 VALUES('4','1','1');
INSERT INTO t1 VALUES('5','1','1');
INSERT INTO t1 VALUES('6','1','1');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
INSERT DELAYED INTO t1 VALUES('7','1','1');
INSERT DELAYED INTO t1 VALUES('8','1','1');
@@ -70,8 +71,10 @@ SELECT COUNT(*) FROM t1;
COUNT(*)
43
DROP TABLE t1;
+DROP VIEW v1;
'#--------------------FN_DYNVARS_25_02-------------------------#'
CREATE TABLE t1 (a VARCHAR(100));
+CREATE VIEW v1 AS SELECT * FROM t1;
SET GLOBAL delayed_insert_limit = 20;
INSERT INTO t1 VALUES('1');
INSERT INTO t1 VALUES('2');
@@ -79,7 +82,7 @@ INSERT INTO t1 VALUES('3');
INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
Asynchronous execute
INSERT DELAYED INTO t1 VALUES('7');
@@ -100,21 +103,22 @@ INSERT DELAYED INTO t1 VALUES('21');
INSERT DELAYED INTO t1 VALUES('22');|
** Connection con0 **
Asynchronous execute
-SELECT COUNT(*) = 22 FROM t1;
+SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
** Connection default **
** Wait till con0 is blocked **
UNLOCK TABLES;
** Connection con1 **
** Connection con0 **
Asynchronous "reap" result
-COUNT(*) = 22
+COUNT(*) BETWEEN 6 AND 22
1
** Connection default**
Checking if the delayed insert gives the same result afterwards
-SELECT COUNT(*) = 22 FROM t1;
-COUNT(*) = 22
+SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
+COUNT(*) BETWEEN 6 AND 22
1
** Connection default**
DROP TABLE t1;
+DROP VIEW v1;
SET @@GLOBAL.delayed_insert_limit = @global_delayed_insert_limit;
Disconnecting from con1, con0
diff --git a/mysql-test/suite/sys_vars/r/innodb_adaptive_flushing_basic.result b/mysql-test/suite/sys_vars/r/innodb_adaptive_flushing_basic.result
new file mode 100644
index 00000000000..418a693d319
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_adaptive_flushing_basic.result
@@ -0,0 +1,92 @@
+SET @start_global_value = @@global.innodb_adaptive_flushing;
+SELECT @start_global_value;
+@start_global_value
+1
+Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_flushing in (0, 1);
+@@global.innodb_adaptive_flushing in (0, 1)
+1
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+1
+select @@session.innodb_adaptive_flushing;
+ERROR HY000: Variable 'innodb_adaptive_flushing' is a GLOBAL variable
+show global variables like 'innodb_adaptive_flushing';
+Variable_name Value
+innodb_adaptive_flushing ON
+show session variables like 'innodb_adaptive_flushing';
+Variable_name Value
+innodb_adaptive_flushing ON
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+set global innodb_adaptive_flushing='OFF';
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+0
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING OFF
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING OFF
+set @@global.innodb_adaptive_flushing=1;
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+set global innodb_adaptive_flushing=0;
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+0
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING OFF
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING OFF
+set @@global.innodb_adaptive_flushing='ON';
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+set session innodb_adaptive_flushing='OFF';
+ERROR HY000: Variable 'innodb_adaptive_flushing' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_adaptive_flushing='ON';
+ERROR HY000: Variable 'innodb_adaptive_flushing' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_adaptive_flushing=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_adaptive_flushing'
+set global innodb_adaptive_flushing=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_adaptive_flushing'
+set global innodb_adaptive_flushing=2;
+ERROR 42000: Variable 'innodb_adaptive_flushing' can't be set to the value of '2'
+NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_adaptive_flushing=-3;
+select @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_FLUSHING ON
+set global innodb_adaptive_flushing='AUTO';
+ERROR 42000: Variable 'innodb_adaptive_flushing' can't be set to the value of 'AUTO'
+SET @@global.innodb_adaptive_flushing = @start_global_value;
+SELECT @@global.innodb_adaptive_flushing;
+@@global.innodb_adaptive_flushing
+1
diff --git a/mysql-test/suite/sys_vars/r/innodb_adaptive_hash_index_basic.result b/mysql-test/suite/sys_vars/r/innodb_adaptive_hash_index_basic.result
new file mode 100644
index 00000000000..bc908090627
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_adaptive_hash_index_basic.result
@@ -0,0 +1,92 @@
+SET @start_global_value = @@global.innodb_adaptive_hash_index;
+SELECT @start_global_value;
+@start_global_value
+1
+Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_hash_index in (0, 1);
+@@global.innodb_adaptive_hash_index in (0, 1)
+1
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+1
+select @@session.innodb_adaptive_hash_index;
+ERROR HY000: Variable 'innodb_adaptive_hash_index' is a GLOBAL variable
+show global variables like 'innodb_adaptive_hash_index';
+Variable_name Value
+innodb_adaptive_hash_index ON
+show session variables like 'innodb_adaptive_hash_index';
+Variable_name Value
+innodb_adaptive_hash_index ON
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+set global innodb_adaptive_hash_index='OFF';
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+0
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX OFF
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX OFF
+set @@global.innodb_adaptive_hash_index=1;
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+set global innodb_adaptive_hash_index=0;
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+0
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX OFF
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX OFF
+set @@global.innodb_adaptive_hash_index='ON';
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+set session innodb_adaptive_hash_index='OFF';
+ERROR HY000: Variable 'innodb_adaptive_hash_index' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_adaptive_hash_index='ON';
+ERROR HY000: Variable 'innodb_adaptive_hash_index' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_adaptive_hash_index=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_adaptive_hash_index'
+set global innodb_adaptive_hash_index=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_adaptive_hash_index'
+set global innodb_adaptive_hash_index=2;
+ERROR 42000: Variable 'innodb_adaptive_hash_index' can't be set to the value of '2'
+NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_adaptive_hash_index=-3;
+select @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+1
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_ADAPTIVE_HASH_INDEX ON
+set global innodb_adaptive_hash_index='AUTO';
+ERROR 42000: Variable 'innodb_adaptive_hash_index' can't be set to the value of 'AUTO'
+SET @@global.innodb_adaptive_hash_index = @start_global_value;
+SELECT @@global.innodb_adaptive_hash_index;
+@@global.innodb_adaptive_hash_index
+1
diff --git a/mysql-test/suite/sys_vars/r/innodb_change_buffering_basic.result b/mysql-test/suite/sys_vars/r/innodb_change_buffering_basic.result
new file mode 100644
index 00000000000..70b0425ce6f
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_change_buffering_basic.result
@@ -0,0 +1,63 @@
+SET @start_global_value = @@global.innodb_change_buffering;
+SELECT @start_global_value;
+@start_global_value
+inserts
+Valid values are 'inserts' and 'none'
+select @@global.innodb_change_buffering in ('inserts', 'none');
+@@global.innodb_change_buffering in ('inserts', 'none')
+1
+select @@global.innodb_change_buffering;
+@@global.innodb_change_buffering
+inserts
+select @@session.innodb_change_buffering;
+ERROR HY000: Variable 'innodb_change_buffering' is a GLOBAL variable
+show global variables like 'innodb_change_buffering';
+Variable_name Value
+innodb_change_buffering inserts
+show session variables like 'innodb_change_buffering';
+Variable_name Value
+innodb_change_buffering inserts
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING inserts
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING inserts
+set global innodb_change_buffering='none';
+select @@global.innodb_change_buffering;
+@@global.innodb_change_buffering
+none
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING none
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING none
+set @@global.innodb_change_buffering='inserts';
+select @@global.innodb_change_buffering;
+@@global.innodb_change_buffering
+inserts
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING inserts
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_CHANGE_BUFFERING inserts
+set session innodb_change_buffering='some';
+ERROR HY000: Variable 'innodb_change_buffering' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_change_buffering='some';
+ERROR HY000: Variable 'innodb_change_buffering' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_change_buffering=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering'
+set global innodb_change_buffering=1;
+ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering'
+set global innodb_change_buffering=-2;
+ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering'
+set global innodb_change_buffering=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_change_buffering'
+set global innodb_change_buffering='some';
+ERROR 42000: Variable 'innodb_change_buffering' can't be set to the value of 'some'
+SET @@global.innodb_change_buffering = @start_global_value;
+SELECT @@global.innodb_change_buffering;
+@@global.innodb_change_buffering
+inserts
diff --git a/mysql-test/suite/sys_vars/r/innodb_file_format_basic.result b/mysql-test/suite/sys_vars/r/innodb_file_format_basic.result
new file mode 100644
index 00000000000..58e009ea705
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_file_format_basic.result
@@ -0,0 +1,59 @@
+SET @start_global_value = @@global.innodb_file_format;
+SELECT @start_global_value;
+@start_global_value
+Antelope
+Valid values are 'Antelope' and 'Barracuda'
+select @@global.innodb_file_format in ('Antelope', 'Barracuda');
+@@global.innodb_file_format in ('Antelope', 'Barracuda')
+1
+select @@global.innodb_file_format;
+@@global.innodb_file_format
+Antelope
+select @@session.innodb_file_format;
+ERROR HY000: Variable 'innodb_file_format' is a GLOBAL variable
+show global variables like 'innodb_file_format';
+Variable_name Value
+innodb_file_format Antelope
+show session variables like 'innodb_file_format';
+Variable_name Value
+innodb_file_format Antelope
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Antelope
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Antelope
+set global innodb_file_format='Antelope';
+select @@global.innodb_file_format;
+@@global.innodb_file_format
+Antelope
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Antelope
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Antelope
+set @@global.innodb_file_format='Barracuda';
+select @@global.innodb_file_format;
+@@global.innodb_file_format
+Barracuda
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Barracuda
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT Barracuda
+set session innodb_file_format='Salmon';
+ERROR HY000: Variable 'innodb_file_format' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_file_format='Salmon';
+ERROR HY000: Variable 'innodb_file_format' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_file_format=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format'
+set global innodb_file_format=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format'
+set global innodb_file_format='Salmon';
+ERROR 42000: Variable 'innodb_file_format' can't be set to the value of 'Salmon'
+SET @@global.innodb_file_format = @start_global_value;
+SELECT @@global.innodb_file_format;
+@@global.innodb_file_format
+Antelope
diff --git a/mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result b/mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result
new file mode 100644
index 00000000000..29be30cf096
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_file_format_check_basic.result
@@ -0,0 +1,59 @@
+SET @start_global_value = @@global.innodb_file_format_check;
+SELECT @start_global_value;
+@start_global_value
+Antelope
+Valid values are 'Antelope' and 'Barracuda'
+select @@global.innodb_file_format_check in ('Antelope', 'Barracuda');
+@@global.innodb_file_format_check in ('Antelope', 'Barracuda')
+1
+select @@global.innodb_file_format_check;
+@@global.innodb_file_format_check
+Antelope
+select @@session.innodb_file_format_check;
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable
+show global variables like 'innodb_file_format_check';
+Variable_name Value
+innodb_file_format_check Antelope
+show session variables like 'innodb_file_format_check';
+Variable_name Value
+innodb_file_format_check Antelope
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Antelope
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Antelope
+set global innodb_file_format_check='Antelope';
+select @@global.innodb_file_format_check;
+@@global.innodb_file_format_check
+Antelope
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Antelope
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Antelope
+set @@global.innodb_file_format_check='Barracuda';
+select @@global.innodb_file_format_check;
+@@global.innodb_file_format_check
+Barracuda
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Barracuda
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_FILE_FORMAT_CHECK Barracuda
+set session innodb_file_format_check='Salmon';
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_file_format_check='Salmon';
+ERROR HY000: Variable 'innodb_file_format_check' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_file_format_check=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format_check'
+set global innodb_file_format_check=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_file_format_check'
+set global innodb_file_format_check='Salmon';
+ERROR 42000: Variable 'innodb_file_format_check' can't be set to the value of 'Salmon'
+SET @@global.innodb_file_format_check = @start_global_value;
+SELECT @@global.innodb_file_format_check;
+@@global.innodb_file_format_check
+Antelope
diff --git a/mysql-test/suite/sys_vars/r/innodb_io_capacity_basic.result b/mysql-test/suite/sys_vars/r/innodb_io_capacity_basic.result
new file mode 100644
index 00000000000..25058bc6f09
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_io_capacity_basic.result
@@ -0,0 +1,69 @@
+SET @start_global_value = @@global.innodb_io_capacity;
+SELECT @start_global_value;
+@start_global_value
+200
+Valid value 100 or more
+select @@global.innodb_io_capacity > 99;
+@@global.innodb_io_capacity > 99
+1
+select @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+200
+select @@session.innodb_io_capacity;
+ERROR HY000: Variable 'innodb_io_capacity' is a GLOBAL variable
+show global variables like 'innodb_io_capacity';
+Variable_name Value
+innodb_io_capacity 200
+show session variables like 'innodb_io_capacity';
+Variable_name Value
+innodb_io_capacity 200
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 200
+select * from information_schema.session_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 200
+set global innodb_io_capacity=123;
+select @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+123
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 123
+select * from information_schema.session_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 123
+set session innodb_io_capacity=444;
+ERROR HY000: Variable 'innodb_io_capacity' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_io_capacity=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_io_capacity'
+set global innodb_io_capacity=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_io_capacity'
+set global innodb_io_capacity="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_io_capacity'
+set global innodb_io_capacity=7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_io_capacity value: '7'
+select @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+100
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 100
+set global innodb_io_capacity=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_io_capacity value: '-7'
+select @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+100
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_IO_CAPACITY 100
+set global innodb_io_capacity=100;
+select @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+100
+SET @@global.innodb_io_capacity = @start_global_value;
+SELECT @@global.innodb_io_capacity;
+@@global.innodb_io_capacity
+200
diff --git a/mysql-test/suite/sys_vars/r/innodb_old_blocks_pct_basic.result b/mysql-test/suite/sys_vars/r/innodb_old_blocks_pct_basic.result
new file mode 100644
index 00000000000..bbcc2dabb22
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_old_blocks_pct_basic.result
@@ -0,0 +1,82 @@
+SET @start_global_value = @@global.innodb_old_blocks_pct;
+SELECT @start_global_value;
+@start_global_value
+37
+Valid values are between 5 and 95
+select @@global.innodb_old_blocks_pct between 5 and 95;
+@@global.innodb_old_blocks_pct between 5 and 95
+1
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+37
+select @@session.innodb_old_blocks_pct;
+ERROR HY000: Variable 'innodb_old_blocks_pct' is a GLOBAL variable
+show global variables like 'innodb_old_blocks_pct';
+Variable_name Value
+innodb_old_blocks_pct 37
+show session variables like 'innodb_old_blocks_pct';
+Variable_name Value
+innodb_old_blocks_pct 37
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 37
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 37
+set global innodb_old_blocks_pct=10;
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+10
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 10
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 10
+set session innodb_old_blocks_pct=1;
+ERROR HY000: Variable 'innodb_old_blocks_pct' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_old_blocks_pct=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_pct'
+set global innodb_old_blocks_pct=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_pct'
+set global innodb_old_blocks_pct="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_pct'
+set global innodb_old_blocks_pct=4;
+Warnings:
+Warning 1292 Truncated incorrect innodb_old_blocks_pct value: '4'
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+5
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 5
+set global innodb_old_blocks_pct=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_old_blocks_pct value: '-7'
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+5
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 5
+set global innodb_old_blocks_pct=96;
+Warnings:
+Warning 1292 Truncated incorrect innodb_old_blocks_pct value: '96'
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+95
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_PCT 95
+set global innodb_old_blocks_pct=5;
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+5
+set global innodb_old_blocks_pct=95;
+select @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+95
+SET @@global.innodb_old_blocks_pct = @start_global_value;
+SELECT @@global.innodb_old_blocks_pct;
+@@global.innodb_old_blocks_pct
+37
diff --git a/mysql-test/suite/sys_vars/r/innodb_old_blocks_time_basic.result b/mysql-test/suite/sys_vars/r/innodb_old_blocks_time_basic.result
new file mode 100644
index 00000000000..a285cc14a01
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_old_blocks_time_basic.result
@@ -0,0 +1,56 @@
+SET @start_global_value = @@global.innodb_old_blocks_time;
+SELECT @start_global_value;
+@start_global_value
+0
+Valid values are zero or above
+select @@global.innodb_old_blocks_time >=0;
+@@global.innodb_old_blocks_time >=0
+1
+select @@global.innodb_old_blocks_time;
+@@global.innodb_old_blocks_time
+0
+select @@session.innodb_old_blocks_time;
+ERROR HY000: Variable 'innodb_old_blocks_time' is a GLOBAL variable
+show global variables like 'innodb_old_blocks_time';
+Variable_name Value
+innodb_old_blocks_time 0
+show session variables like 'innodb_old_blocks_time';
+Variable_name Value
+innodb_old_blocks_time 0
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_TIME 0
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_time';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_TIME 0
+set global innodb_old_blocks_time=10;
+select @@global.innodb_old_blocks_time;
+@@global.innodb_old_blocks_time
+10
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_TIME 10
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_time';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_TIME 10
+set session innodb_old_blocks_time=1;
+ERROR HY000: Variable 'innodb_old_blocks_time' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_old_blocks_time=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_time'
+set global innodb_old_blocks_time=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_time'
+set global innodb_old_blocks_time="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_old_blocks_time'
+set global innodb_old_blocks_time=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_old_blocks_time value: '-7'
+select @@global.innodb_old_blocks_time;
+@@global.innodb_old_blocks_time
+0
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_OLD_BLOCKS_TIME 0
+SET @@global.innodb_old_blocks_time = @start_global_value;
+SELECT @@global.innodb_old_blocks_time;
+@@global.innodb_old_blocks_time
+0
diff --git a/mysql-test/suite/sys_vars/r/innodb_read_ahead_threshold_basic.result b/mysql-test/suite/sys_vars/r/innodb_read_ahead_threshold_basic.result
new file mode 100644
index 00000000000..65a1a8e319f
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_read_ahead_threshold_basic.result
@@ -0,0 +1,73 @@
+SET @start_global_value = @@global.innodb_read_ahead_threshold;
+SELECT @start_global_value;
+@start_global_value
+56
+Valid values are between 0 and 64
+select @@global.innodb_read_ahead_threshold between 0 and 64;
+@@global.innodb_read_ahead_threshold between 0 and 64
+1
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+56
+select @@session.innodb_read_ahead_threshold;
+ERROR HY000: Variable 'innodb_read_ahead_threshold' is a GLOBAL variable
+show global variables like 'innodb_read_ahead_threshold';
+Variable_name Value
+innodb_read_ahead_threshold 56
+show session variables like 'innodb_read_ahead_threshold';
+Variable_name Value
+innodb_read_ahead_threshold 56
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 56
+select * from information_schema.session_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 56
+set global innodb_read_ahead_threshold=10;
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+10
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 10
+select * from information_schema.session_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 10
+set session innodb_read_ahead_threshold=1;
+ERROR HY000: Variable 'innodb_read_ahead_threshold' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_read_ahead_threshold=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_read_ahead_threshold'
+set global innodb_read_ahead_threshold=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_read_ahead_threshold'
+set global innodb_read_ahead_threshold="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_read_ahead_threshold'
+set global innodb_read_ahead_threshold=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_read_ahead_threshold value: '-7'
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+0
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 0
+set global innodb_read_ahead_threshold=96;
+Warnings:
+Warning 1292 Truncated incorrect innodb_read_ahead_threshold value: '96'
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+64
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_AHEAD_THRESHOLD 64
+set global innodb_read_ahead_threshold=0;
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+0
+set global innodb_read_ahead_threshold=64;
+select @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+64
+SET @@global.innodb_read_ahead_threshold = @start_global_value;
+SELECT @@global.innodb_read_ahead_threshold;
+@@global.innodb_read_ahead_threshold
+56
diff --git a/mysql-test/suite/sys_vars/r/innodb_read_io_threads_basic.result b/mysql-test/suite/sys_vars/r/innodb_read_io_threads_basic.result
new file mode 100644
index 00000000000..f43fa81c0d0
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_read_io_threads_basic.result
@@ -0,0 +1,21 @@
+select @@global.innodb_read_io_threads;
+@@global.innodb_read_io_threads
+2
+select @@session.innodb_read_io_threads;
+ERROR HY000: Variable 'innodb_read_io_threads' is a GLOBAL variable
+show global variables like 'innodb_read_io_threads';
+Variable_name Value
+innodb_read_io_threads 2
+show session variables like 'innodb_read_io_threads';
+Variable_name Value
+innodb_read_io_threads 2
+select * from information_schema.global_variables where variable_name='innodb_read_io_threads';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_IO_THREADS 2
+select * from information_schema.session_variables where variable_name='innodb_read_io_threads';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_READ_IO_THREADS 2
+set global innodb_read_io_threads=1;
+ERROR HY000: Variable 'innodb_read_io_threads' is a read only variable
+set session innodb_read_io_threads=1;
+ERROR HY000: Variable 'innodb_read_io_threads' is a read only variable
diff --git a/mysql-test/suite/sys_vars/r/innodb_replication_delay_basic.result b/mysql-test/suite/sys_vars/r/innodb_replication_delay_basic.result
new file mode 100644
index 00000000000..fa00baa218e
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_replication_delay_basic.result
@@ -0,0 +1,56 @@
+SET @start_global_value = @@global.innodb_replication_delay;
+SELECT @start_global_value;
+@start_global_value
+0
+Valid values are zero or above
+select @@global.innodb_replication_delay >=0;
+@@global.innodb_replication_delay >=0
+1
+select @@global.innodb_replication_delay;
+@@global.innodb_replication_delay
+0
+select @@session.innodb_replication_delay;
+ERROR HY000: Variable 'innodb_replication_delay' is a GLOBAL variable
+show global variables like 'innodb_replication_delay';
+Variable_name Value
+innodb_replication_delay 0
+show session variables like 'innodb_replication_delay';
+Variable_name Value
+innodb_replication_delay 0
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_REPLICATION_DELAY 0
+select * from information_schema.session_variables where variable_name='innodb_replication_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_REPLICATION_DELAY 0
+set global innodb_replication_delay=10;
+select @@global.innodb_replication_delay;
+@@global.innodb_replication_delay
+10
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_REPLICATION_DELAY 10
+select * from information_schema.session_variables where variable_name='innodb_replication_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_REPLICATION_DELAY 10
+set session innodb_replication_delay=1;
+ERROR HY000: Variable 'innodb_replication_delay' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_replication_delay=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_replication_delay'
+set global innodb_replication_delay=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_replication_delay'
+set global innodb_replication_delay="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_replication_delay'
+set global innodb_replication_delay=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_replication_delay value: '-7'
+select @@global.innodb_replication_delay;
+@@global.innodb_replication_delay
+0
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_REPLICATION_DELAY 0
+SET @@global.innodb_replication_delay = @start_global_value;
+SELECT @@global.innodb_replication_delay;
+@@global.innodb_replication_delay
+0
diff --git a/mysql-test/suite/sys_vars/r/innodb_spin_wait_delay_basic.result b/mysql-test/suite/sys_vars/r/innodb_spin_wait_delay_basic.result
new file mode 100644
index 00000000000..05672cbb966
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_spin_wait_delay_basic.result
@@ -0,0 +1,56 @@
+SET @start_global_value = @@global.innodb_spin_wait_delay;
+SELECT @start_global_value;
+@start_global_value
+6
+Valid values are zero or above
+select @@global.innodb_spin_wait_delay >=0;
+@@global.innodb_spin_wait_delay >=0
+1
+select @@global.innodb_spin_wait_delay;
+@@global.innodb_spin_wait_delay
+6
+select @@session.innodb_spin_wait_delay;
+ERROR HY000: Variable 'innodb_spin_wait_delay' is a GLOBAL variable
+show global variables like 'innodb_spin_wait_delay';
+Variable_name Value
+innodb_spin_wait_delay 6
+show session variables like 'innodb_spin_wait_delay';
+Variable_name Value
+innodb_spin_wait_delay 6
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_SPIN_WAIT_DELAY 6
+select * from information_schema.session_variables where variable_name='innodb_spin_wait_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_SPIN_WAIT_DELAY 6
+set global innodb_spin_wait_delay=10;
+select @@global.innodb_spin_wait_delay;
+@@global.innodb_spin_wait_delay
+10
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_SPIN_WAIT_DELAY 10
+select * from information_schema.session_variables where variable_name='innodb_spin_wait_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_SPIN_WAIT_DELAY 10
+set session innodb_spin_wait_delay=1;
+ERROR HY000: Variable 'innodb_spin_wait_delay' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_spin_wait_delay=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_spin_wait_delay'
+set global innodb_spin_wait_delay=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_spin_wait_delay'
+set global innodb_spin_wait_delay="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_spin_wait_delay'
+set global innodb_spin_wait_delay=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_spin_wait_delay value: '-7'
+select @@global.innodb_spin_wait_delay;
+@@global.innodb_spin_wait_delay
+0
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_SPIN_WAIT_DELAY 0
+SET @@global.innodb_spin_wait_delay = @start_global_value;
+SELECT @@global.innodb_spin_wait_delay;
+@@global.innodb_spin_wait_delay
+6
diff --git a/mysql-test/suite/sys_vars/r/innodb_stats_on_metadata_basic.result b/mysql-test/suite/sys_vars/r/innodb_stats_on_metadata_basic.result
new file mode 100644
index 00000000000..d3410d7b9c1
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_stats_on_metadata_basic.result
@@ -0,0 +1,92 @@
+SET @start_global_value = @@global.innodb_stats_on_metadata;
+SELECT @start_global_value;
+@start_global_value
+1
+Valid values are 'ON' and 'OFF'
+select @@global.innodb_stats_on_metadata in (0, 1);
+@@global.innodb_stats_on_metadata in (0, 1)
+1
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+1
+select @@session.innodb_stats_on_metadata;
+ERROR HY000: Variable 'innodb_stats_on_metadata' is a GLOBAL variable
+show global variables like 'innodb_stats_on_metadata';
+Variable_name Value
+innodb_stats_on_metadata ON
+show session variables like 'innodb_stats_on_metadata';
+Variable_name Value
+innodb_stats_on_metadata ON
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+set global innodb_stats_on_metadata='OFF';
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+0
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA OFF
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA OFF
+set @@global.innodb_stats_on_metadata=1;
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+1
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+set global innodb_stats_on_metadata=0;
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+0
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA OFF
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA OFF
+set @@global.innodb_stats_on_metadata='ON';
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+1
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+set session innodb_stats_on_metadata='OFF';
+ERROR HY000: Variable 'innodb_stats_on_metadata' is a GLOBAL variable and should be set with SET GLOBAL
+set @@session.innodb_stats_on_metadata='ON';
+ERROR HY000: Variable 'innodb_stats_on_metadata' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_stats_on_metadata=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_on_metadata'
+set global innodb_stats_on_metadata=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_on_metadata'
+set global innodb_stats_on_metadata=2;
+ERROR 42000: Variable 'innodb_stats_on_metadata' can't be set to the value of '2'
+NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_stats_on_metadata=-3;
+select @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+1
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_ON_METADATA ON
+set global innodb_stats_on_metadata='AUTO';
+ERROR 42000: Variable 'innodb_stats_on_metadata' can't be set to the value of 'AUTO'
+SET @@global.innodb_stats_on_metadata = @start_global_value;
+SELECT @@global.innodb_stats_on_metadata;
+@@global.innodb_stats_on_metadata
+1
diff --git a/mysql-test/suite/sys_vars/r/innodb_stats_sample_pages_basic.result b/mysql-test/suite/sys_vars/r/innodb_stats_sample_pages_basic.result
new file mode 100644
index 00000000000..153ae95a4fe
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_stats_sample_pages_basic.result
@@ -0,0 +1,56 @@
+SET @start_global_value = @@global.innodb_stats_sample_pages;
+SELECT @start_global_value;
+@start_global_value
+8
+Valid values are one or above
+select @@global.innodb_stats_sample_pages >=1;
+@@global.innodb_stats_sample_pages >=1
+1
+select @@global.innodb_stats_sample_pages;
+@@global.innodb_stats_sample_pages
+8
+select @@session.innodb_stats_sample_pages;
+ERROR HY000: Variable 'innodb_stats_sample_pages' is a GLOBAL variable
+show global variables like 'innodb_stats_sample_pages';
+Variable_name Value
+innodb_stats_sample_pages 8
+show session variables like 'innodb_stats_sample_pages';
+Variable_name Value
+innodb_stats_sample_pages 8
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_SAMPLE_PAGES 8
+select * from information_schema.session_variables where variable_name='innodb_stats_sample_pages';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_SAMPLE_PAGES 8
+set global innodb_stats_sample_pages=10;
+select @@global.innodb_stats_sample_pages;
+@@global.innodb_stats_sample_pages
+10
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_SAMPLE_PAGES 10
+select * from information_schema.session_variables where variable_name='innodb_stats_sample_pages';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_SAMPLE_PAGES 10
+set session innodb_stats_sample_pages=1;
+ERROR HY000: Variable 'innodb_stats_sample_pages' is a GLOBAL variable and should be set with SET GLOBAL
+set global innodb_stats_sample_pages=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_sample_pages'
+set global innodb_stats_sample_pages=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_sample_pages'
+set global innodb_stats_sample_pages="foo";
+ERROR 42000: Incorrect argument type to variable 'innodb_stats_sample_pages'
+set global innodb_stats_sample_pages=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_stats_sample_pages value: '-7'
+select @@global.innodb_stats_sample_pages;
+@@global.innodb_stats_sample_pages
+1
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STATS_SAMPLE_PAGES 1
+SET @@global.innodb_stats_sample_pages = @start_global_value;
+SELECT @@global.innodb_stats_sample_pages;
+@@global.innodb_stats_sample_pages
+8
diff --git a/mysql-test/suite/sys_vars/r/innodb_strict_mode_basic.result b/mysql-test/suite/sys_vars/r/innodb_strict_mode_basic.result
new file mode 100644
index 00000000000..200f9166215
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_strict_mode_basic.result
@@ -0,0 +1,120 @@
+SET @start_global_value = @@global.innodb_strict_mode;
+SELECT @start_global_value;
+@start_global_value
+0
+Valid values are 'ON' and 'OFF'
+select @@global.innodb_strict_mode in (0, 1);
+@@global.innodb_strict_mode in (0, 1)
+1
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+0
+select @@session.innodb_strict_mode in (0, 1);
+@@session.innodb_strict_mode in (0, 1)
+1
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+0
+show global variables like 'innodb_strict_mode';
+Variable_name Value
+innodb_strict_mode OFF
+show session variables like 'innodb_strict_mode';
+Variable_name Value
+innodb_strict_mode OFF
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+set global innodb_strict_mode='OFF';
+set session innodb_strict_mode='OFF';
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+0
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+0
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+set @@global.innodb_strict_mode=1;
+set @@session.innodb_strict_mode=1;
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+1
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+1
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+set global innodb_strict_mode=0;
+set session innodb_strict_mode=0;
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+0
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+0
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE OFF
+set @@global.innodb_strict_mode='ON';
+set @@session.innodb_strict_mode='ON';
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+1
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+1
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+set global innodb_strict_mode=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_strict_mode'
+set session innodb_strict_mode=1.1;
+ERROR 42000: Incorrect argument type to variable 'innodb_strict_mode'
+set global innodb_strict_mode=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_strict_mode'
+set session innodb_strict_mode=1e1;
+ERROR 42000: Incorrect argument type to variable 'innodb_strict_mode'
+set global innodb_strict_mode=2;
+ERROR 42000: Variable 'innodb_strict_mode' can't be set to the value of '2'
+set session innodb_strict_mode=2;
+ERROR 42000: Variable 'innodb_strict_mode' can't be set to the value of '2'
+set global innodb_strict_mode='AUTO';
+ERROR 42000: Variable 'innodb_strict_mode' can't be set to the value of 'AUTO'
+set session innodb_strict_mode='AUTO';
+ERROR 42000: Variable 'innodb_strict_mode' can't be set to the value of 'AUTO'
+NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_strict_mode=-3;
+set session innodb_strict_mode=-7;
+select @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+1
+select @@session.innodb_strict_mode;
+@@session.innodb_strict_mode
+1
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_STRICT_MODE ON
+SET @@global.innodb_strict_mode = @start_global_value;
+SELECT @@global.innodb_strict_mode;
+@@global.innodb_strict_mode
+0
diff --git a/mysql-test/suite/sys_vars/r/innodb_thread_sleep_delay_basic.result b/mysql-test/suite/sys_vars/r/innodb_thread_sleep_delay_basic.result
index 979bfd930ca..fb7093ec3b3 100644
--- a/mysql-test/suite/sys_vars/r/innodb_thread_sleep_delay_basic.result
+++ b/mysql-test/suite/sys_vars/r/innodb_thread_sleep_delay_basic.result
@@ -1,84 +1,56 @@
-SET @global_start_value = @@global.innodb_thread_sleep_delay;
-SELECT @global_start_value;
-@global_start_value
+SET @start_global_value = @@global.innodb_thread_sleep_delay;
+SELECT @start_global_value;
+@start_global_value
10000
-'#--------------------FN_DYNVARS_046_01------------------------#'
-SET @@global.innodb_thread_sleep_delay = 0;
-SET @@global.innodb_thread_sleep_delay = DEFAULT;
-SELECT @@global.innodb_thread_sleep_delay;
+Valid values are zero or above
+select @@global.innodb_thread_sleep_delay >=0;
+@@global.innodb_thread_sleep_delay >=0
+1
+select @@global.innodb_thread_sleep_delay;
@@global.innodb_thread_sleep_delay
10000
-'#---------------------FN_DYNVARS_046_02-------------------------#'
-SET innodb_thread_sleep_delay = 1;
+select @@session.innodb_thread_sleep_delay;
+ERROR HY000: Variable 'innodb_thread_sleep_delay' is a GLOBAL variable
+show global variables like 'innodb_thread_sleep_delay';
+Variable_name Value
+innodb_thread_sleep_delay 10000
+show session variables like 'innodb_thread_sleep_delay';
+Variable_name Value
+innodb_thread_sleep_delay 10000
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_THREAD_SLEEP_DELAY 10000
+select * from information_schema.session_variables where variable_name='innodb_thread_sleep_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_THREAD_SLEEP_DELAY 10000
+set global innodb_thread_sleep_delay=10;
+select @@global.innodb_thread_sleep_delay;
+@@global.innodb_thread_sleep_delay
+10
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_THREAD_SLEEP_DELAY 10
+select * from information_schema.session_variables where variable_name='innodb_thread_sleep_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_THREAD_SLEEP_DELAY 10
+set session innodb_thread_sleep_delay=1;
ERROR HY000: Variable 'innodb_thread_sleep_delay' is a GLOBAL variable and should be set with SET GLOBAL
-SELECT @@innodb_thread_sleep_delay;
-@@innodb_thread_sleep_delay
-10000
-SELECT local.innodb_thread_sleep_delay;
-ERROR 42S02: Unknown table 'local' in field list
-SET global innodb_thread_sleep_delay = 0;
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-0
-'#--------------------FN_DYNVARS_046_03------------------------#'
-SET @@global.innodb_thread_sleep_delay = 0;
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-0
-SET @@global.innodb_thread_sleep_delay = 1;
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-1
-SET @@global.innodb_thread_sleep_delay = 4294967295;
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-4294967295
-'#--------------------FN_DYNVARS_046_04-------------------------#'
-SET @@global.innodb_thread_sleep_delay = -1;
-SELECT @@global.innodb_autoextend_increment;
-@@global.innodb_autoextend_increment
-8
-SET @@global.innodb_thread_sleep_delay = "T";
+set global innodb_thread_sleep_delay=1.1;
ERROR 42000: Incorrect argument type to variable 'innodb_thread_sleep_delay'
-SELECT @@global.innodb_autoextend_increment;
-@@global.innodb_autoextend_increment
-8
-SET @@global.innodb_thread_sleep_delay = "Y";
+set global innodb_thread_sleep_delay=1e1;
ERROR 42000: Incorrect argument type to variable 'innodb_thread_sleep_delay'
-SELECT @@global.innodb_autoextend_increment;
-@@global.innodb_autoextend_increment
-8
-SET @@global.innodb_thread_sleep_delay = 1001;
-SELECT @@global.innodb_autoextend_increment;
-@@global.innodb_autoextend_increment
-8
-'#----------------------FN_DYNVARS_046_05------------------------#'
-SELECT @@global.innodb_thread_sleep_delay = VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_thread_sleep_delay';
-@@global.innodb_thread_sleep_delay = VARIABLE_VALUE
-1
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-1001
-SELECT VARIABLE_VALUE FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='innodb_thread_sleep_delay';
-VARIABLE_VALUE
-1001
-'#---------------------FN_DYNVARS_046_06-------------------------#'
-SET @@global.innodb_thread_sleep_delay = OFF;
+set global innodb_thread_sleep_delay="foo";
ERROR 42000: Incorrect argument type to variable 'innodb_thread_sleep_delay'
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-1001
-SET @@global.innodb_thread_sleep_delay = ON;
-ERROR 42000: Incorrect argument type to variable 'innodb_thread_sleep_delay'
-SELECT @@global.innodb_thread_sleep_delay;
+set global innodb_thread_sleep_delay=-7;
+Warnings:
+Warning 1292 Truncated incorrect innodb_thread_sleep_delay value: '-7'
+select @@global.innodb_thread_sleep_delay;
@@global.innodb_thread_sleep_delay
-1001
-'#---------------------FN_DYNVARS_046_07----------------------#'
-SET @@global.innodb_thread_sleep_delay = TRUE;
-SELECT @@global.innodb_thread_sleep_delay;
-@@global.innodb_thread_sleep_delay
-1
-SET @@global.innodb_thread_sleep_delay = FALSE;
+0
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_THREAD_SLEEP_DELAY 0
+SET @@global.innodb_thread_sleep_delay = @start_global_value;
SELECT @@global.innodb_thread_sleep_delay;
@@global.innodb_thread_sleep_delay
-0
+10000
diff --git a/mysql-test/suite/sys_vars/r/innodb_use_sys_malloc_basic.result b/mysql-test/suite/sys_vars/r/innodb_use_sys_malloc_basic.result
new file mode 100644
index 00000000000..0c2685b1a49
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_use_sys_malloc_basic.result
@@ -0,0 +1,25 @@
+Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_flushing in (0, 1);
+@@global.innodb_adaptive_flushing in (0, 1)
+1
+select @@global.innodb_use_sys_malloc;
+@@global.innodb_use_sys_malloc
+1
+select @@session.innodb_use_sys_malloc;
+ERROR HY000: Variable 'innodb_use_sys_malloc' is a GLOBAL variable
+show global variables like 'innodb_use_sys_malloc';
+Variable_name Value
+innodb_use_sys_malloc ON
+show session variables like 'innodb_use_sys_malloc';
+Variable_name Value
+innodb_use_sys_malloc ON
+select * from information_schema.global_variables where variable_name='innodb_use_sys_malloc';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_USE_SYS_MALLOC ON
+select * from information_schema.session_variables where variable_name='innodb_use_sys_malloc';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_USE_SYS_MALLOC ON
+set global innodb_use_sys_malloc=1;
+ERROR HY000: Variable 'innodb_use_sys_malloc' is a read only variable
+set session innodb_use_sys_malloc=1;
+ERROR HY000: Variable 'innodb_use_sys_malloc' is a read only variable
diff --git a/mysql-test/suite/sys_vars/r/innodb_version_basic.result b/mysql-test/suite/sys_vars/r/innodb_version_basic.result
new file mode 100644
index 00000000000..759b5048512
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_version_basic.result
@@ -0,0 +1,17 @@
+select @@global.innodb_version;
+@@global.innodb_version
+x.y.z
+select @@session.innodb_version;
+ERROR HY000: Variable 'innodb_version' is a GLOBAL variable
+show global variables like 'innodb_version' disabled so to not change with every version;
+show session variables like 'innodb_version' disabled so to not change with every version;
+select VARIABLE_VALUE=@@global.innodb_version from information_schema.global_variables where variable_name='innodb_version';
+VARIABLE_VALUE=@@global.innodb_version
+1
+select VARIABLE_VALUE=@@global.innodb_version from information_schema.session_variables where variable_name='innodb_version';
+VARIABLE_VALUE=@@global.innodb_version
+1
+set global innodb_version=1;
+ERROR HY000: Variable 'innodb_version' is a read only variable
+set session innodb_version=1;
+ERROR HY000: Variable 'innodb_version' is a read only variable
diff --git a/mysql-test/suite/sys_vars/r/innodb_write_io_threads_basic.result b/mysql-test/suite/sys_vars/r/innodb_write_io_threads_basic.result
new file mode 100644
index 00000000000..a363f4292dd
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/innodb_write_io_threads_basic.result
@@ -0,0 +1,21 @@
+select @@global.innodb_write_io_threads;
+@@global.innodb_write_io_threads
+2
+select @@session.innodb_write_io_threads;
+ERROR HY000: Variable 'innodb_write_io_threads' is a GLOBAL variable
+show global variables like 'innodb_write_io_threads';
+Variable_name Value
+innodb_write_io_threads 2
+show session variables like 'innodb_write_io_threads';
+Variable_name Value
+innodb_write_io_threads 2
+select * from information_schema.global_variables where variable_name='innodb_write_io_threads';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_WRITE_IO_THREADS 2
+select * from information_schema.session_variables where variable_name='innodb_write_io_threads';
+VARIABLE_NAME VARIABLE_VALUE
+INNODB_WRITE_IO_THREADS 2
+set global innodb_write_io_threads=1;
+ERROR HY000: Variable 'innodb_write_io_threads' is a read only variable
+set session innodb_write_io_threads=1;
+ERROR HY000: Variable 'innodb_write_io_threads' is a read only variable
diff --git a/mysql-test/suite/sys_vars/r/last_insert_id_basic.result b/mysql-test/suite/sys_vars/r/last_insert_id_basic.result
index c29a313b9e7..a4ae20dbabb 100644
--- a/mysql-test/suite/sys_vars/r/last_insert_id_basic.result
+++ b/mysql-test/suite/sys_vars/r/last_insert_id_basic.result
@@ -13,12 +13,24 @@ VARIABLE_NAME VARIABLE_VALUE
select * from information_schema.session_variables where variable_name='last_insert_id';
VARIABLE_NAME VARIABLE_VALUE
LAST_INSERT_ID 0
-set session last_insert_id=1;
+set global last_insert_id=99;
+ERROR HY000: Variable 'last_insert_id' is a SESSION variable and can't be used with SET GLOBAL
+set session last_insert_id=42;
+select @@global.last_insert_id;
+ERROR HY000: Variable 'last_insert_id' is a SESSION variable
select @@session.last_insert_id;
@@session.last_insert_id
-1
-set global last_insert_id=1;
-ERROR HY000: Variable 'last_insert_id' is a SESSION variable and can't be used with SET GLOBAL
+42
+show global variables like 'last_insert_id';
+Variable_name Value
+show session variables like 'last_insert_id';
+Variable_name Value
+last_insert_id 42
+select * from information_schema.global_variables where variable_name='last_insert_id';
+VARIABLE_NAME VARIABLE_VALUE
+select * from information_schema.session_variables where variable_name='last_insert_id';
+VARIABLE_NAME VARIABLE_VALUE
+LAST_INSERT_ID 42
set session last_insert_id=1.1;
ERROR 42000: Incorrect argument type to variable 'last_insert_id'
set session last_insert_id=1e1;
diff --git a/mysql-test/suite/sys_vars/r/lc_messages_basic.result b/mysql-test/suite/sys_vars/r/lc_messages_basic.result
index e765dd53516..b9350828dba 100644
--- a/mysql-test/suite/sys_vars/r/lc_messages_basic.result
+++ b/mysql-test/suite/sys_vars/r/lc_messages_basic.result
@@ -29,13 +29,19 @@ select @@session.lc_messages;
@@session.lc_messages
ja_JP
set global lc_messages="en_US";
+set session lc_messages="en_GB";
select @@global.lc_messages;
@@global.lc_messages
en_US
-set session lc_messages="en_GB";
select @@session.lc_messages;
@@session.lc_messages
en_GB
+select * from information_schema.global_variables where variable_name='lc_messages';
+VARIABLE_NAME VARIABLE_VALUE
+LC_MESSAGES en_US
+select * from information_schema.session_variables where variable_name='lc_messages';
+VARIABLE_NAME VARIABLE_VALUE
+LC_MESSAGES en_GB
set global lc_messages=1.1;
ERROR 42000: Incorrect argument type to variable 'lc_messages'
set global lc_messages=1e1;
diff --git a/mysql-test/suite/sys_vars/r/lc_time_names_basic.result b/mysql-test/suite/sys_vars/r/lc_time_names_basic.result
index 39e93a6f76c..3f19c7dda15 100644
--- a/mysql-test/suite/sys_vars/r/lc_time_names_basic.result
+++ b/mysql-test/suite/sys_vars/r/lc_time_names_basic.result
@@ -460,7 +460,7 @@ SELECT @@session.lc_time_names;
sq_AL
SET @@session.lc_time_names=sr_YU;
Warnings:
-Warning 1287 'sr_YU' is deprecated; use 'sr_RS' instead
+Warning 1287 'sr_YU' is deprecated and will be removed in a future release. Please use sr_RS instead
SELECT @@session.lc_time_names;
@@session.lc_time_names
sr_RS
@@ -907,7 +907,7 @@ SELECT @@global.lc_time_names;
sq_AL
SET @@global.lc_time_names=sr_YU;
Warnings:
-Warning 1287 'sr_YU' is deprecated; use 'sr_RS' instead
+Warning 1287 'sr_YU' is deprecated and will be removed in a future release. Please use sr_RS instead
SELECT @@global.lc_time_names;
@@global.lc_time_names
sr_RS
diff --git a/mysql-test/suite/sys_vars/r/lock_wait_timeout_basic.result b/mysql-test/suite/sys_vars/r/lock_wait_timeout_basic.result
new file mode 100644
index 00000000000..6d1e8d3bb59
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/lock_wait_timeout_basic.result
@@ -0,0 +1,177 @@
+SET @start_global_value = @@global.lock_wait_timeout;
+SELECT @start_global_value;
+@start_global_value
+31536000
+SET @start_session_value = @@session.lock_wait_timeout;
+SELECT @start_session_value;
+@start_session_value
+31536000
+'#--------------------FN_DYNVARS_002_01-------------------------#'
+SET @@global.lock_wait_timeout = 100;
+SET @@global.lock_wait_timeout = DEFAULT;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = 200;
+SET @@session.lock_wait_timeout = DEFAULT;
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
+'#--------------------FN_DYNVARS_002_02-------------------------#'
+SET @@global.lock_wait_timeout = @start_global_value;
+SELECT @@global.lock_wait_timeout = 31536000;
+@@global.lock_wait_timeout = 31536000
+1
+SET @@session.lock_wait_timeout = @start_session_value;
+SELECT @@session.lock_wait_timeout = 31536000;
+@@session.lock_wait_timeout = 31536000
+1
+'#--------------------FN_DYNVARS_002_03-------------------------#'
+SET @@global.lock_wait_timeout = 1;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+1
+SET @@global.lock_wait_timeout = 60020;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+60020
+SET @@global.lock_wait_timeout = 65535;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+65535
+'#--------------------FN_DYNVARS_002_04-------------------------#'
+SET @@session.lock_wait_timeout = 1;
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+1
+SET @@session.lock_wait_timeout = 50050;
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+50050
+SET @@session.lock_wait_timeout = 65535;
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+65535
+'#------------------FN_DYNVARS_002_05-----------------------#'
+SET @@global.lock_wait_timeout = 0;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '0'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+1
+SET @@global.lock_wait_timeout = -1024;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '-1024'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+1
+SET @@global.lock_wait_timeout = 31536001;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '31536001'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@global.lock_wait_timeout = ON;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@global.lock_wait_timeout = OFF;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@global.lock_wait_timeout = test;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = 0;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '0'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+1
+SET @@session.lock_wait_timeout = -2;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '-2'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+1
+SET @@session.lock_wait_timeout = 31537000;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '31537000'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = ON;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = OFF;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = test;
+ERROR 42000: Incorrect argument type to variable 'lock_wait_timeout'
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
+'#------------------FN_DYNVARS_002_06-----------------------#'
+SELECT @@global.lock_wait_timeout = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lock_wait_timeout';
+@@global.lock_wait_timeout = VARIABLE_VALUE
+1
+'#------------------FN_DYNVARS_002_07-----------------------#'
+SELECT @@session.lock_wait_timeout = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
+WHERE VARIABLE_NAME='lock_wait_timeout';
+@@session.lock_wait_timeout = VARIABLE_VALUE
+1
+'#------------------FN_DYNVARS_002_08-----------------------#'
+SET @@global.lock_wait_timeout = TRUE;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+1
+SET @@global.lock_wait_timeout = FALSE;
+Warnings:
+Warning 1292 Truncated incorrect lock_wait_timeout value: '0'
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+1
+'#---------------------FN_DYNVARS_001_09----------------------#'
+SET @@global.lock_wait_timeout = 10;
+SET @@session.lock_wait_timeout = 11;
+SELECT @@lock_wait_timeout = @@global.lock_wait_timeout;
+@@lock_wait_timeout = @@global.lock_wait_timeout
+0
+'#---------------------FN_DYNVARS_001_10----------------------#'
+SET @@lock_wait_timeout = 100;
+SELECT @@lock_wait_timeout = @@local.lock_wait_timeout;
+@@lock_wait_timeout = @@local.lock_wait_timeout
+1
+SELECT @@local.lock_wait_timeout = @@session.lock_wait_timeout;
+@@local.lock_wait_timeout = @@session.lock_wait_timeout
+1
+'#---------------------FN_DYNVARS_001_11----------------------#'
+SET lock_wait_timeout = 1;
+SELECT @@lock_wait_timeout;
+@@lock_wait_timeout
+1
+SELECT local.lock_wait_timeout;
+ERROR 42S02: Unknown table 'local' in field list
+SELECT session.lock_wait_timeout;
+ERROR 42S02: Unknown table 'session' in field list
+SELECT lock_wait_timeout = @@session.lock_wait_timeout;
+ERROR 42S22: Unknown column 'lock_wait_timeout' in 'field list'
+SET @@global.lock_wait_timeout = @start_global_value;
+SELECT @@global.lock_wait_timeout;
+@@global.lock_wait_timeout
+31536000
+SET @@session.lock_wait_timeout = @start_session_value;
+SELECT @@session.lock_wait_timeout;
+@@session.lock_wait_timeout
+31536000
diff --git a/mysql-test/suite/sys_vars/r/log_error_func.result b/mysql-test/suite/sys_vars/r/log_error_func.result
new file mode 100644
index 00000000000..c787c5ceb4f
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/log_error_func.result
@@ -0,0 +1,6 @@
+select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
+(@err_log:=variable_value)*0
+0
+select instr(@err_log, "some_random_name5435413.err")>0;
+instr(@err_log, "some_random_name5435413.err")>0
+1
diff --git a/mysql-test/suite/sys_vars/r/log_error_func2.result b/mysql-test/suite/sys_vars/r/log_error_func2.result
new file mode 100644
index 00000000000..82720035886
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/log_error_func2.result
@@ -0,0 +1,6 @@
+select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
+(@err_log:=variable_value)*0
+0
+select instr(@err_log, ".err")>0;
+instr(@err_log, ".err")>0
+1
diff --git a/mysql-test/suite/sys_vars/r/log_error_func3.result b/mysql-test/suite/sys_vars/r/log_error_func3.result
new file mode 100644
index 00000000000..ff1908defd1
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/log_error_func3.result
@@ -0,0 +1,3 @@
+select variable_value from information_schema.global_variables where variable_name="log_error";
+variable_value
+
diff --git a/mysql-test/suite/sys_vars/r/log_slow_queries_basic.result b/mysql-test/suite/sys_vars/r/log_slow_queries_basic.result
index ca530ebb41a..1748406b74b 100644
--- a/mysql-test/suite/sys_vars/r/log_slow_queries_basic.result
+++ b/mysql-test/suite/sys_vars/r/log_slow_queries_basic.result
@@ -65,12 +65,22 @@ Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed i
SELECT @@global.log_slow_queries;
@@global.log_slow_queries
0
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
+IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+1
SET @@global.log_slow_queries = 1;
Warnings:
Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '@@slow_query_log' instead
SELECT @@global.log_slow_queries;
@@global.log_slow_queries
1
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
+IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+1
'#---------------------FN_DYNVARS_004_07----------------------#'
SET @@global.log_slow_queries = TRUE;
Warnings:
@@ -78,12 +88,22 @@ Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed i
SELECT @@global.log_slow_queries;
@@global.log_slow_queries
1
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
+IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+1
SET @@global.log_slow_queries = FALSE;
Warnings:
Warning 1287 The syntax '@@log_slow_queries' is deprecated and will be removed in MySQL 7.0. Please use '@@slow_query_log' instead
SELECT @@global.log_slow_queries;
@@global.log_slow_queries
0
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
+IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+1
'#---------------------FN_DYNVARS_004_08----------------------#'
SET @@global.log_slow_queries = ON;
Warnings:
diff --git a/mysql-test/suite/sys_vars/r/lower_case_file_system_basic.result b/mysql-test/suite/sys_vars/r/lower_case_file_system_basic.result
index 0488ed30dc0..4ecd81685c5 100644
--- a/mysql-test/suite/sys_vars/r/lower_case_file_system_basic.result
+++ b/mysql-test/suite/sys_vars/r/lower_case_file_system_basic.result
@@ -3,18 +3,19 @@ select @@global.lower_case_file_system=2;
0
select @@session.lower_case_file_system;
ERROR HY000: Variable 'lower_case_file_system' is a GLOBAL variable
-show global variables like 'lower_case_file_system';
-Variable_name Value
-lower_case_file_system #
-show session variables like 'lower_case_file_system';
-Variable_name Value
-lower_case_file_system #
-select * from information_schema.global_variables where variable_name='lower_case_file_system';
-VARIABLE_NAME VARIABLE_VALUE
-LOWER_CASE_FILE_SYSTEM #
-select * from information_schema.session_variables where variable_name='lower_case_file_system';
-VARIABLE_NAME VARIABLE_VALUE
-LOWER_CASE_FILE_SYSTEM #
+SELECT @@global.lower_case_file_system in (0,1);
+@@global.lower_case_file_system in (0,1)
+1
+SELECT IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_file_system';
+IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+1
+SELECT IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
+WHERE VARIABLE_NAME='lower_case_file_system';
+IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+1
set global lower_case_file_system=1;
ERROR HY000: Variable 'lower_case_file_system' is a read only variable
set session lower_case_file_system=1;
diff --git a/mysql-test/suite/sys_vars/r/lower_case_table_names_basic.result b/mysql-test/suite/sys_vars/r/lower_case_table_names_basic.result
index d7dc6d69e30..cae6ecb215c 100644
--- a/mysql-test/suite/sys_vars/r/lower_case_table_names_basic.result
+++ b/mysql-test/suite/sys_vars/r/lower_case_table_names_basic.result
@@ -3,18 +3,19 @@ select @@global.lower_case_table_names=20;
0
select @@session.lower_case_table_names;
ERROR HY000: Variable 'lower_case_table_names' is a GLOBAL variable
-show global variables like 'lower_case_table_names';
-Variable_name Value
-lower_case_table_names #
-show session variables like 'lower_case_table_names';
-Variable_name Value
-lower_case_table_names #
-select * from information_schema.global_variables where variable_name='lower_case_table_names';
-VARIABLE_NAME VARIABLE_VALUE
-LOWER_CASE_TABLE_NAMES #
-select * from information_schema.session_variables where variable_name='lower_case_table_names';
-VARIABLE_NAME VARIABLE_VALUE
-LOWER_CASE_TABLE_NAMES #
+SELECT @@global.lower_case_table_names in (0,1,2);
+@@global.lower_case_table_names in (0,1,2)
+1
+SELECT @@global.lower_case_table_names = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_table_names';
+@@global.lower_case_table_names = VARIABLE_VALUE
+1
+SELECT @@global.lower_case_table_names = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_table_names';
+@@global.lower_case_table_names = VARIABLE_VALUE
+1
set global lower_case_table_names=1;
ERROR HY000: Variable 'lower_case_table_names' is a read only variable
set session lower_case_table_names=1;
diff --git a/mysql-test/suite/sys_vars/r/max_join_size_basic.result b/mysql-test/suite/sys_vars/r/max_join_size_basic.result
index 5cebefe9ea3..acf9f123238 100644
--- a/mysql-test/suite/sys_vars/r/max_join_size_basic.result
+++ b/mysql-test/suite/sys_vars/r/max_join_size_basic.result
@@ -21,13 +21,25 @@ select * from information_schema.session_variables where variable_name='max_join
VARIABLE_NAME VARIABLE_VALUE
MAX_JOIN_SIZE 18446744073709551615
set global max_join_size=10;
+set session max_join_size=20;
select @@global.max_join_size;
@@global.max_join_size
10
-set session max_join_size=20;
select @@session.max_join_size;
@@session.max_join_size
20
+show global variables like 'max_join_size';
+Variable_name Value
+max_join_size 10
+show session variables like 'max_join_size';
+Variable_name Value
+max_join_size 20
+select * from information_schema.global_variables where variable_name='max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 10
+select * from information_schema.session_variables where variable_name='max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+MAX_JOIN_SIZE 20
set global max_join_size=1.1;
ERROR 42000: Incorrect argument type to variable 'max_join_size'
set global max_join_size=1e1;
diff --git a/mysql-test/suite/sys_vars/r/max_prepared_stmt_count_func.result b/mysql-test/suite/sys_vars/r/max_prepared_stmt_count_func.result
index 562ef63f811..d71bdc0984f 100644
--- a/mysql-test/suite/sys_vars/r/max_prepared_stmt_count_func.result
+++ b/mysql-test/suite/sys_vars/r/max_prepared_stmt_count_func.result
@@ -66,7 +66,7 @@ SET GLOBAL max_prepared_stmt_count=3;
** Creating procedure **
DROP PROCEDURE IF EXISTS sp_checkstmts;
Warnings:
-Note 1305 PROCEDURE sp_checkstmts does not exist
+Note 1305 PROCEDURE test.sp_checkstmts does not exist
CREATE PROCEDURE sp_checkstmts ()
BEGIN
PREPARE newstmt from "SELECT * FROM information_schema.CHARACTER_SETS C";
diff --git a/mysql-test/suite/sys_vars/r/myisam_stats_method_func.result b/mysql-test/suite/sys_vars/r/myisam_stats_method_func.result
index 55d91b7417d..5efdeeedc4b 100644
--- a/mysql-test/suite/sys_vars/r/myisam_stats_method_func.result
+++ b/mysql-test/suite/sys_vars/r/myisam_stats_method_func.result
@@ -21,16 +21,16 @@ ANALYZE TABLE t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
INSERT INTO t1 VALUES (11);
DELETE FROM t1 WHERE a = 11;
CHECK TABLE t1;
Table Op Msg_type Msg_text
test.t1 check status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 10 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 10 NULL NULL YES BTREE
'Set nulls to be equal'
SET myisam_stats_method = nulls_equal;
INSERT INTO t1 VALUES (11);
@@ -39,16 +39,16 @@ ANALYZE TABLE t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
INSERT INTO t1 VALUES (11);
DELETE FROM t1 WHERE a = 11;
CHECK TABLE t1;
Table Op Msg_type Msg_text
test.t1 check status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 5 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 5 NULL NULL YES BTREE
'Set nulls to be ignored'
SET myisam_stats_method = nulls_ignored;
SHOW VARIABLES LIKE 'myisam_stats_method';
@@ -67,21 +67,21 @@ ANALYZE TABLE t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 2 NULL NULL YES BTREE
-t1 1 a 2 b A 4 NULL NULL YES BTREE
-t1 1 a 3 c A 4 NULL NULL YES BTREE
-t1 1 a 4 d A 4 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 2 NULL NULL YES BTREE
+t1 1 a 2 b A 4 NULL NULL YES BTREE
+t1 1 a 3 c A 4 NULL NULL YES BTREE
+t1 1 a 4 d A 4 NULL NULL YES BTREE
DELETE FROM t1;
ANALYZE TABLE t1;
Table Op Msg_type Msg_text
test.t1 analyze status OK
SHOW INDEX FROM t1;
-Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment
-t1 1 a 1 a A 0 NULL NULL YES BTREE
-t1 1 a 2 b A 0 NULL NULL YES BTREE
-t1 1 a 3 c A 0 NULL NULL YES BTREE
-t1 1 a 4 d A 0 NULL NULL YES BTREE
+Table Non_unique Key_name Seq_in_index Column_name Collation Cardinality Sub_part Packed Null Index_type Comment Index_comment
+t1 1 a 1 a A 0 NULL NULL YES BTREE
+t1 1 a 2 b A 0 NULL NULL YES BTREE
+t1 1 a 3 c A 0 NULL NULL YES BTREE
+t1 1 a 4 d A 0 NULL NULL YES BTREE
SET myisam_stats_method = DEFAULT;
DROP TABLE t1;
SET @@global.myisam_stats_method= @start_value;
diff --git a/mysql-test/suite/sys_vars/r/old_alter_table_basic.result b/mysql-test/suite/sys_vars/r/old_alter_table_basic.result
index 0619235b8e0..5cc17917242 100644
--- a/mysql-test/suite/sys_vars/r/old_alter_table_basic.result
+++ b/mysql-test/suite/sys_vars/r/old_alter_table_basic.result
@@ -21,13 +21,25 @@ select * from information_schema.session_variables where variable_name='old_alte
VARIABLE_NAME VARIABLE_VALUE
OLD_ALTER_TABLE OFF
set global old_alter_table=1;
+set session old_alter_table=ON;
select @@global.old_alter_table;
@@global.old_alter_table
1
-set session old_alter_table=ON;
select @@session.old_alter_table;
@@session.old_alter_table
1
+show global variables like 'old_alter_table';
+Variable_name Value
+old_alter_table ON
+show session variables like 'old_alter_table';
+Variable_name Value
+old_alter_table ON
+select * from information_schema.global_variables where variable_name='old_alter_table';
+VARIABLE_NAME VARIABLE_VALUE
+OLD_ALTER_TABLE ON
+select * from information_schema.session_variables where variable_name='old_alter_table';
+VARIABLE_NAME VARIABLE_VALUE
+OLD_ALTER_TABLE ON
set global old_alter_table=1.1;
ERROR 42000: Incorrect argument type to variable 'old_alter_table'
set global old_alter_table=1e1;
diff --git a/mysql-test/suite/sys_vars/r/optimizer_search_depth_basic.result b/mysql-test/suite/sys_vars/r/optimizer_search_depth_basic.result
index 4d94fb02be7..de448d3e2fc 100644
--- a/mysql-test/suite/sys_vars/r/optimizer_search_depth_basic.result
+++ b/mysql-test/suite/sys_vars/r/optimizer_search_depth_basic.result
@@ -10,6 +10,7 @@ SELECT @start_session_value;
SET @@global.optimizer_search_depth = 100;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '100'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SET @@global.optimizer_search_depth = DEFAULT;
SELECT @@global.optimizer_search_depth;
@@global.optimizer_search_depth
@@ -17,6 +18,7 @@ SELECT @@global.optimizer_search_depth;
SET @@session.optimizer_search_depth = 200;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '200'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SET @@session.optimizer_search_depth = DEFAULT;
SELECT @@session.optimizer_search_depth;
@@session.optimizer_search_depth
@@ -44,6 +46,8 @@ SELECT @@global.optimizer_search_depth;
@@global.optimizer_search_depth
62
SET @@global.optimizer_search_depth = 63;
+Warnings:
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@global.optimizer_search_depth;
@@global.optimizer_search_depth
63
@@ -61,6 +65,8 @@ SELECT @@session.optimizer_search_depth;
@@session.optimizer_search_depth
62
SET @@session.optimizer_search_depth = 63;
+Warnings:
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@session.optimizer_search_depth;
@@session.optimizer_search_depth
63
@@ -68,6 +74,7 @@ SELECT @@session.optimizer_search_depth;
SET @@global.optimizer_search_depth = 64;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '64'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@global.optimizer_search_depth;
@@global.optimizer_search_depth
63
@@ -80,6 +87,7 @@ SELECT @@global.optimizer_search_depth;
SET @@global.optimizer_search_depth = 65536;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '65536'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@global.optimizer_search_depth;
@@global.optimizer_search_depth
63
@@ -96,6 +104,7 @@ SELECT @@global.optimizer_search_depth;
SET @@session.optimizer_search_depth = 64;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '64'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@session.optimizer_search_depth;
@@session.optimizer_search_depth
63
@@ -110,6 +119,7 @@ ERROR 42000: Incorrect argument type to variable 'optimizer_search_depth'
SET @@session.optimizer_search_depth = 65550;
Warnings:
Warning 1292 Truncated incorrect optimizer_search_depth value: '65550'
+Warning 1287 'optimizer-search-depth=63' is deprecated and will be removed in a future release. Please use a search depth less than 63 instead
SELECT @@session.optimizer_search_depth;
@@session.optimizer_search_depth
63
diff --git a/mysql-test/suite/sys_vars/r/optimizer_switch_basic.result b/mysql-test/suite/sys_vars/r/optimizer_switch_basic.result
index 2d648259a26..acc8cd699f8 100644
--- a/mysql-test/suite/sys_vars/r/optimizer_switch_basic.result
+++ b/mysql-test/suite/sys_vars/r/optimizer_switch_basic.result
@@ -21,21 +21,33 @@ select * from information_schema.session_variables where variable_name='optimize
VARIABLE_NAME VARIABLE_VALUE
OPTIMIZER_SWITCH index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,engine_condition_pushdown=on
set global optimizer_switch=10;
+set session optimizer_switch=5;
select @@global.optimizer_switch;
@@global.optimizer_switch
index_merge=off,index_merge_union=on,index_merge_sort_union=off,index_merge_intersection=on,engine_condition_pushdown=off
-set session optimizer_switch=5;
select @@session.optimizer_switch;
@@session.optimizer_switch
index_merge=on,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=off,engine_condition_pushdown=off
set global optimizer_switch="index_merge_sort_union=on";
+set session optimizer_switch="index_merge=off";
select @@global.optimizer_switch;
@@global.optimizer_switch
index_merge=off,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,engine_condition_pushdown=off
-set session optimizer_switch="index_merge=off";
select @@session.optimizer_switch;
@@session.optimizer_switch
index_merge=off,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=off,engine_condition_pushdown=off
+show global variables like 'optimizer_switch';
+Variable_name Value
+optimizer_switch index_merge=off,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,engine_condition_pushdown=off
+show session variables like 'optimizer_switch';
+Variable_name Value
+optimizer_switch index_merge=off,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=off,engine_condition_pushdown=off
+select * from information_schema.global_variables where variable_name='optimizer_switch';
+VARIABLE_NAME VARIABLE_VALUE
+OPTIMIZER_SWITCH index_merge=off,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,engine_condition_pushdown=off
+select * from information_schema.session_variables where variable_name='optimizer_switch';
+VARIABLE_NAME VARIABLE_VALUE
+OPTIMIZER_SWITCH index_merge=off,index_merge_union=off,index_merge_sort_union=on,index_merge_intersection=off,engine_condition_pushdown=off
set session optimizer_switch="default";
select @@session.optimizer_switch;
@@session.optimizer_switch
diff --git a/mysql-test/suite/sys_vars/r/profiling_basic.result b/mysql-test/suite/sys_vars/r/profiling_basic.result
index 26704b6b725..4f987d690ba 100644
--- a/mysql-test/suite/sys_vars/r/profiling_basic.result
+++ b/mysql-test/suite/sys_vars/r/profiling_basic.result
@@ -21,13 +21,45 @@ select * from information_schema.session_variables where variable_name='profilin
VARIABLE_NAME VARIABLE_VALUE
PROFILING OFF
set global profiling=1;
+set session profiling=ON;
select @@global.profiling;
@@global.profiling
1
-set session profiling=ON;
select @@session.profiling;
@@session.profiling
1
+show global variables like 'profiling';
+Variable_name Value
+profiling ON
+show session variables like 'profiling';
+Variable_name Value
+profiling ON
+select * from information_schema.global_variables where variable_name='profiling';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING ON
+select * from information_schema.session_variables where variable_name='profiling';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING ON
+set global profiling=0;
+set session profiling=OFF;
+select @@global.profiling;
+@@global.profiling
+0
+select @@session.profiling;
+@@session.profiling
+0
+show global variables like 'profiling';
+Variable_name Value
+profiling OFF
+show session variables like 'profiling';
+Variable_name Value
+profiling OFF
+select * from information_schema.global_variables where variable_name='profiling';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING OFF
+select * from information_schema.session_variables where variable_name='profiling';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING OFF
set global profiling=1.1;
ERROR 42000: Incorrect argument type to variable 'profiling'
set global profiling=1e1;
diff --git a/mysql-test/suite/sys_vars/r/profiling_history_size_basic.result b/mysql-test/suite/sys_vars/r/profiling_history_size_basic.result
index be92d075326..396d280ad18 100644
--- a/mysql-test/suite/sys_vars/r/profiling_history_size_basic.result
+++ b/mysql-test/suite/sys_vars/r/profiling_history_size_basic.result
@@ -21,13 +21,25 @@ select * from information_schema.session_variables where variable_name='profilin
VARIABLE_NAME VARIABLE_VALUE
PROFILING_HISTORY_SIZE 15
set global profiling_history_size=10;
+set session profiling_history_size=20;
select @@global.profiling_history_size;
@@global.profiling_history_size
10
-set session profiling_history_size=20;
select @@session.profiling_history_size;
@@session.profiling_history_size
20
+show global variables like 'profiling_history_size';
+Variable_name Value
+profiling_history_size 10
+show session variables like 'profiling_history_size';
+Variable_name Value
+profiling_history_size 20
+select * from information_schema.global_variables where variable_name='profiling_history_size';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING_HISTORY_SIZE 10
+select * from information_schema.session_variables where variable_name='profiling_history_size';
+VARIABLE_NAME VARIABLE_VALUE
+PROFILING_HISTORY_SIZE 20
set global profiling_history_size=1.1;
ERROR 42000: Incorrect argument type to variable 'profiling_history_size'
set global profiling_history_size=1e1;
diff --git a/mysql-test/suite/sys_vars/r/pseudo_thread_id_basic.result b/mysql-test/suite/sys_vars/r/pseudo_thread_id_basic.result
index e6619e206f1..ee6169a9e35 100644
--- a/mysql-test/suite/sys_vars/r/pseudo_thread_id_basic.result
+++ b/mysql-test/suite/sys_vars/r/pseudo_thread_id_basic.result
@@ -1,22 +1,29 @@
select @@global.pseudo_thread_id;
ERROR HY000: Variable 'pseudo_thread_id' is a SESSION variable
-select @@session.pseudo_thread_id=0;
-@@session.pseudo_thread_id=0
-0
+select @@session.pseudo_thread_id between 1 and 10000;
+@@session.pseudo_thread_id between 1 and 10000
+1
+should be empty
show global variables like 'pseudo_thread_id';
Variable_name Value
show session variables like 'pseudo_thread_id';
Variable_name Value
pseudo_thread_id #
+should be empty
select * from information_schema.global_variables where variable_name='pseudo_thread_id';
VARIABLE_NAME VARIABLE_VALUE
-select * from information_schema.session_variables where variable_name='pseudo_thread_id';
-VARIABLE_NAME VARIABLE_VALUE
-PSEUDO_THREAD_ID #
-set session pseudo_thread_id=1;
+select @@session.pseudo_thread_id = variable_value from information_schema.session_variables where variable_name='pseudo_thread_id';
+@@session.pseudo_thread_id = variable_value
+1
+set session pseudo_thread_id=42;
select @@session.pseudo_thread_id;
@@session.pseudo_thread_id
-1
+42
+select * from information_schema.global_variables where variable_name='pseudo_thread_id';
+VARIABLE_NAME VARIABLE_VALUE
+select variable_value from information_schema.session_variables where variable_name='pseudo_thread_id';
+variable_value
+42
set global pseudo_thread_id=1;
ERROR HY000: Variable 'pseudo_thread_id' is a SESSION variable and can't be used with SET GLOBAL
set session pseudo_thread_id=1.1;
diff --git a/mysql-test/suite/sys_vars/r/query_cache_wlock_invalidate_func.result b/mysql-test/suite/sys_vars/r/query_cache_wlock_invalidate_func.result
index 6b90b61a035..abb8fdcd2a0 100644
--- a/mysql-test/suite/sys_vars/r/query_cache_wlock_invalidate_func.result
+++ b/mysql-test/suite/sys_vars/r/query_cache_wlock_invalidate_func.result
@@ -11,6 +11,7 @@ CREATE TABLE t1(id int, value varchar(10));
INSERT INTO t1 VALUES(1, 'val1');
INSERT INTO t1 VALUES(2, 'val2');
INSERT INTO t1 VALUES(3, 'val3');
+CREATE VIEW v1 AS SELECT * FROM t1;
SET GLOBAL query_cache_size = 131072;
FLUSHING CACHE
SET GLOBAL query_cache_size = 0;
@@ -32,11 +33,11 @@ SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
Qcache_queries_in_cache 1
1 Expected
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
UNLOCK TABLES;
SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
-Qcache_queries_in_cache 0
+Qcache_queries_in_cache 1
0 Expected
'#----------------------------FN_DYNVARS_136_02-----------------------#'
SELECT * FROM t1;
@@ -48,12 +49,13 @@ id value
2 val2
3 val3
** Connection con0 **
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
** Asynchronous Execution **
SELECT * FROM t1;
** Connection con0 **
wait until table is locked
+Timeout in wait_condition.inc for SELECT count(*) > 0 FROM information_schema.processlist WHERE state= 'Table lock'
UNLOCK TABLES;
** Connection con1 **
** Asynchronous Result **
@@ -77,7 +79,7 @@ SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
Qcache_queries_in_cache 1
1 Expected
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
UNLOCK TABLES;
SHOW STATUS LIKE 'Qcache_queries_in_cache';
Variable_name Value
@@ -100,7 +102,7 @@ id value
2 val2
3 val3
** Connection con0 **
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
** Should not be blocked **
SELECT * FROM t1;
@@ -163,3 +165,4 @@ SET @@GLOBAL.query_cache_type = @old_cache_type;
** Connection default **
Disconnecting Connections con0, con1
DROP TABLE t1;
+DROP VIEW v1;
diff --git a/mysql-test/suite/sys_vars/r/rand_seed1_basic.result b/mysql-test/suite/sys_vars/r/rand_seed1_basic.result
index 7b92d533c9e..155d7169168 100644
--- a/mysql-test/suite/sys_vars/r/rand_seed1_basic.result
+++ b/mysql-test/suite/sys_vars/r/rand_seed1_basic.result
@@ -17,6 +17,11 @@ set session rand_seed1=1;
select @@session.rand_seed1;
@@session.rand_seed1
0
+select * from information_schema.global_variables where variable_name='rand_seed1';
+VARIABLE_NAME VARIABLE_VALUE
+select * from information_schema.session_variables where variable_name='rand_seed1';
+VARIABLE_NAME VARIABLE_VALUE
+RAND_SEED1 0
set global rand_seed1=1;
ERROR HY000: Variable 'rand_seed1' is a SESSION variable and can't be used with SET GLOBAL
set session rand_seed1=1.1;
diff --git a/mysql-test/suite/sys_vars/r/rand_seed2_basic.result b/mysql-test/suite/sys_vars/r/rand_seed2_basic.result
index 3d84aa3e37e..4974d8a53a3 100644
--- a/mysql-test/suite/sys_vars/r/rand_seed2_basic.result
+++ b/mysql-test/suite/sys_vars/r/rand_seed2_basic.result
@@ -17,6 +17,11 @@ set session rand_seed2=1;
select @@session.rand_seed2;
@@session.rand_seed2
0
+select * from information_schema.global_variables where variable_name='rand_seed2';
+VARIABLE_NAME VARIABLE_VALUE
+select * from information_schema.session_variables where variable_name='rand_seed2';
+VARIABLE_NAME VARIABLE_VALUE
+RAND_SEED2 0
set global rand_seed2=1;
ERROR HY000: Variable 'rand_seed2' is a SESSION variable and can't be used with SET GLOBAL
set session rand_seed2=1.1;
diff --git a/mysql-test/suite/sys_vars/r/relay_log_recovery_basic.result b/mysql-test/suite/sys_vars/r/relay_log_recovery_basic.result
index 97b991ce65b..af3b51bcffe 100644
--- a/mysql-test/suite/sys_vars/r/relay_log_recovery_basic.result
+++ b/mysql-test/suite/sys_vars/r/relay_log_recovery_basic.result
@@ -23,10 +23,22 @@ set global relay_log_recovery=1;
select @@global.relay_log_recovery;
@@global.relay_log_recovery
1
+select * from information_schema.global_variables where variable_name='relay_log_recovery';
+VARIABLE_NAME VARIABLE_VALUE
+RELAY_LOG_RECOVERY ON
+select * from information_schema.session_variables where variable_name='relay_log_recovery';
+VARIABLE_NAME VARIABLE_VALUE
+RELAY_LOG_RECOVERY ON
set global relay_log_recovery=OFF;
select @@global.relay_log_recovery;
@@global.relay_log_recovery
0
+select * from information_schema.global_variables where variable_name='relay_log_recovery';
+VARIABLE_NAME VARIABLE_VALUE
+RELAY_LOG_RECOVERY OFF
+select * from information_schema.session_variables where variable_name='relay_log_recovery';
+VARIABLE_NAME VARIABLE_VALUE
+RELAY_LOG_RECOVERY OFF
set session relay_log_recovery=1;
ERROR HY000: Variable 'relay_log_recovery' is a GLOBAL variable and should be set with SET GLOBAL
set global relay_log_recovery=1.1;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_enabled_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_enabled_basic.result
new file mode 100644
index 00000000000..ad3ca0de0fa
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_enabled_basic.result
@@ -0,0 +1,73 @@
+INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
+select @@global.rpl_semi_sync_master_enabled;
+@@global.rpl_semi_sync_master_enabled
+0
+SET @start_global_value = @@global.rpl_semi_sync_master_enabled;
+select @@global.rpl_semi_sync_master_enabled in (0,1);
+@@global.rpl_semi_sync_master_enabled in (0,1)
+1
+select @@session.rpl_semi_sync_master_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_master_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled OFF
+show session variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled OFF
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED OFF
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED OFF
+set global rpl_semi_sync_master_enabled=0;
+set session rpl_semi_sync_master_enabled=0;
+ERROR HY000: Variable 'rpl_semi_sync_master_enabled' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_enabled;
+@@global.rpl_semi_sync_master_enabled
+0
+select @@session.rpl_semi_sync_master_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_master_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled OFF
+show session variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled OFF
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED OFF
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED OFF
+set global rpl_semi_sync_master_enabled=1;
+set session rpl_semi_sync_master_enabled=1;
+ERROR HY000: Variable 'rpl_semi_sync_master_enabled' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_enabled;
+@@global.rpl_semi_sync_master_enabled
+-1
+select @@session.rpl_semi_sync_master_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_master_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled ON
+show session variables like 'rpl_semi_sync_master_enabled';
+Variable_name Value
+rpl_semi_sync_master_enabled ON
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED ON
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_ENABLED ON
+set global rpl_semi_sync_master_enabled=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_enabled'
+set global rpl_semi_sync_master_enabled=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_enabled'
+set global rpl_semi_sync_master_enabled="some text";
+ERROR 42000: Variable 'rpl_semi_sync_master_enabled' can't be set to the value of 'some text'
+SET @@global.rpl_semi_sync_master_enabled = @start_global_value;
+select @@global.rpl_semi_sync_master_enabled;
+@@global.rpl_semi_sync_master_enabled
+0
+UNINSTALL PLUGIN rpl_semi_sync_master;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_timeout_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_timeout_basic.result
new file mode 100644
index 00000000000..e77bcc1c12a
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_timeout_basic.result
@@ -0,0 +1,54 @@
+INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
+select @@global.rpl_semi_sync_master_timeout;
+@@global.rpl_semi_sync_master_timeout
+10000
+SET @start_global_value = @@global.rpl_semi_sync_master_timeout;
+Assuming value will not be more then 100 sec
+select @@global.rpl_semi_sync_master_timeout between 1 and 100000;
+@@global.rpl_semi_sync_master_timeout between 1 and 100000
+1
+select @@session.rpl_semi_sync_master_timeout;
+ERROR HY000: Variable 'rpl_semi_sync_master_timeout' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_timeout';
+Variable_name Value
+rpl_semi_sync_master_timeout 10000
+show session variables like 'rpl_semi_sync_master_timeout';
+Variable_name Value
+rpl_semi_sync_master_timeout 10000
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_timeout';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TIMEOUT 10000
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_timeout';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TIMEOUT 10000
+set global rpl_semi_sync_master_timeout=42;
+set session rpl_semi_sync_master_timeout=99;
+ERROR HY000: Variable 'rpl_semi_sync_master_timeout' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_timeout;
+@@global.rpl_semi_sync_master_timeout
+42
+select @@session.rpl_semi_sync_master_timeout;
+ERROR HY000: Variable 'rpl_semi_sync_master_timeout' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_timeout';
+Variable_name Value
+rpl_semi_sync_master_timeout 42
+show session variables like 'rpl_semi_sync_master_timeout';
+Variable_name Value
+rpl_semi_sync_master_timeout 42
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_timeout';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TIMEOUT 42
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_timeout';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TIMEOUT 42
+set global rpl_semi_sync_master_timeout=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_timeout'
+set global rpl_semi_sync_master_timeout=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_timeout'
+set global rpl_semi_sync_master_timeout="some text";
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_timeout'
+SET @@global.rpl_semi_sync_master_timeout = @start_global_value;
+select @@global.rpl_semi_sync_master_timeout;
+@@global.rpl_semi_sync_master_timeout
+10000
+UNINSTALL PLUGIN rpl_semi_sync_master;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_trace_level_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_trace_level_basic.result
new file mode 100644
index 00000000000..55df5f57d9e
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_trace_level_basic.result
@@ -0,0 +1,72 @@
+INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
+select @@global.rpl_semi_sync_master_trace_level;
+@@global.rpl_semi_sync_master_trace_level
+32
+SET @start_global_value = @@global.rpl_semi_sync_master_trace_level;
+select @@global.rpl_semi_sync_master_trace_level in (1,16,32,64);
+@@global.rpl_semi_sync_master_trace_level in (1,16,32,64)
+1
+select @@session.rpl_semi_sync_master_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_master_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 32
+show session variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 32
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 32
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 32
+set global rpl_semi_sync_master_trace_level=16;
+set session rpl_semi_sync_master_trace_level=99;
+ERROR HY000: Variable 'rpl_semi_sync_master_trace_level' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_trace_level;
+@@global.rpl_semi_sync_master_trace_level
+16
+select @@session.rpl_semi_sync_master_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_master_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 16
+show session variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 16
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 16
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 16
+NOTE: Value can also be set to values that are combinations of values
+set global rpl_semi_sync_master_trace_level=42;
+select @@global.rpl_semi_sync_master_trace_level;
+@@global.rpl_semi_sync_master_trace_level
+42
+select @@session.rpl_semi_sync_master_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_master_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 42
+show session variables like 'rpl_semi_sync_master_trace_level';
+Variable_name Value
+rpl_semi_sync_master_trace_level 42
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 42
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_TRACE_LEVEL 42
+set global rpl_semi_sync_master_trace_level=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_trace_level'
+set global rpl_semi_sync_master_trace_level=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_trace_level'
+set global rpl_semi_sync_master_trace_level="some text";
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_trace_level'
+SET @@global.rpl_semi_sync_master_trace_level = @start_global_value;
+select @@global.rpl_semi_sync_master_trace_level;
+@@global.rpl_semi_sync_master_trace_level
+32
+UNINSTALL PLUGIN rpl_semi_sync_master;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_wait_no_slave_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_wait_no_slave_basic.result
new file mode 100644
index 00000000000..3d951b499ed
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_master_wait_no_slave_basic.result
@@ -0,0 +1,73 @@
+INSTALL PLUGIN rpl_semi_sync_master SONAME 'semisync_master.so';
+select @@global.rpl_semi_sync_master_wait_no_slave;
+@@global.rpl_semi_sync_master_wait_no_slave
+1
+SET @start_global_value = @@global.rpl_semi_sync_master_wait_no_slave;
+select @@global.rpl_semi_sync_master_wait_no_slave in (0,1);
+@@global.rpl_semi_sync_master_wait_no_slave in (0,1)
+1
+select @@session.rpl_semi_sync_master_wait_no_slave;
+ERROR HY000: Variable 'rpl_semi_sync_master_wait_no_slave' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave ON
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave ON
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE ON
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE ON
+set global rpl_semi_sync_master_wait_no_slave=0;
+set session rpl_semi_sync_master_wait_no_slave=0;
+ERROR HY000: Variable 'rpl_semi_sync_master_wait_no_slave' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_wait_no_slave;
+@@global.rpl_semi_sync_master_wait_no_slave
+0
+select @@session.rpl_semi_sync_master_wait_no_slave;
+ERROR HY000: Variable 'rpl_semi_sync_master_wait_no_slave' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave OFF
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave OFF
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE OFF
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE OFF
+set global rpl_semi_sync_master_wait_no_slave=1;
+set session rpl_semi_sync_master_wait_no_slave=1;
+ERROR HY000: Variable 'rpl_semi_sync_master_wait_no_slave' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_master_wait_no_slave;
+@@global.rpl_semi_sync_master_wait_no_slave
+1
+select @@session.rpl_semi_sync_master_wait_no_slave;
+ERROR HY000: Variable 'rpl_semi_sync_master_wait_no_slave' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave ON
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+Variable_name Value
+rpl_semi_sync_master_wait_no_slave ON
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE ON
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_MASTER_WAIT_NO_SLAVE ON
+set global rpl_semi_sync_master_wait_no_slave=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_wait_no_slave'
+set global rpl_semi_sync_master_wait_no_slave=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_master_wait_no_slave'
+set global rpl_semi_sync_master_wait_no_slave="some text";
+ERROR 42000: Variable 'rpl_semi_sync_master_wait_no_slave' can't be set to the value of 'some text'
+SET @@global.rpl_semi_sync_master_wait_no_slave = @start_global_value;
+select @@global.rpl_semi_sync_master_wait_no_slave;
+@@global.rpl_semi_sync_master_wait_no_slave
+1
+UNINSTALL PLUGIN rpl_semi_sync_master;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_enabled_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_enabled_basic.result
new file mode 100644
index 00000000000..25688f55ecd
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_enabled_basic.result
@@ -0,0 +1,73 @@
+INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
+select @@global.rpl_semi_sync_slave_enabled;
+@@global.rpl_semi_sync_slave_enabled
+0
+SET @start_global_value = @@global.rpl_semi_sync_slave_enabled;
+select @@global.rpl_semi_sync_slave_enabled in (0,1);
+@@global.rpl_semi_sync_slave_enabled in (0,1)
+1
+select @@session.rpl_semi_sync_slave_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_slave_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled OFF
+show session variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled OFF
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED OFF
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED OFF
+set global rpl_semi_sync_slave_enabled=0;
+set session rpl_semi_sync_slave_enabled=0;
+ERROR HY000: Variable 'rpl_semi_sync_slave_enabled' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_slave_enabled;
+@@global.rpl_semi_sync_slave_enabled
+0
+select @@session.rpl_semi_sync_slave_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_slave_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled OFF
+show session variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled OFF
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED OFF
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED OFF
+set global rpl_semi_sync_slave_enabled=1;
+set session rpl_semi_sync_slave_enabled=1;
+ERROR HY000: Variable 'rpl_semi_sync_slave_enabled' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_slave_enabled;
+@@global.rpl_semi_sync_slave_enabled
+-1
+select @@session.rpl_semi_sync_slave_enabled;
+ERROR HY000: Variable 'rpl_semi_sync_slave_enabled' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled ON
+show session variables like 'rpl_semi_sync_slave_enabled';
+Variable_name Value
+rpl_semi_sync_slave_enabled ON
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED ON
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_ENABLED ON
+set global rpl_semi_sync_slave_enabled=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_slave_enabled'
+set global rpl_semi_sync_slave_enabled=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_slave_enabled'
+set global rpl_semi_sync_slave_enabled="some text";
+ERROR 42000: Variable 'rpl_semi_sync_slave_enabled' can't be set to the value of 'some text'
+SET @@global.rpl_semi_sync_slave_enabled = @start_global_value;
+select @@global.rpl_semi_sync_slave_enabled;
+@@global.rpl_semi_sync_slave_enabled
+0
+UNINSTALL PLUGIN rpl_semi_sync_slave;
diff --git a/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_trace_level_basic.result b/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_trace_level_basic.result
new file mode 100644
index 00000000000..f7796309aea
--- /dev/null
+++ b/mysql-test/suite/sys_vars/r/rpl_semi_sync_slave_trace_level_basic.result
@@ -0,0 +1,72 @@
+INSTALL PLUGIN rpl_semi_sync_slave SONAME 'semisync_slave.so';
+select @@global.rpl_semi_sync_slave_trace_level;
+@@global.rpl_semi_sync_slave_trace_level
+32
+SET @start_global_value = @@global.rpl_semi_sync_slave_trace_level;
+select @@global.rpl_semi_sync_slave_trace_level in (1,16,32,64);
+@@global.rpl_semi_sync_slave_trace_level in (1,16,32,64)
+1
+select @@session.rpl_semi_sync_slave_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_slave_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 32
+show session variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 32
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 32
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 32
+set global rpl_semi_sync_slave_trace_level=16;
+set session rpl_semi_sync_slave_trace_level=99;
+ERROR HY000: Variable 'rpl_semi_sync_slave_trace_level' is a GLOBAL variable and should be set with SET GLOBAL
+select @@global.rpl_semi_sync_slave_trace_level;
+@@global.rpl_semi_sync_slave_trace_level
+16
+select @@session.rpl_semi_sync_slave_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_slave_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 16
+show session variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 16
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 16
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 16
+NOTE: Value can also be set to values that are combinations of values
+set global rpl_semi_sync_slave_trace_level=42;
+select @@global.rpl_semi_sync_slave_trace_level;
+@@global.rpl_semi_sync_slave_trace_level
+42
+select @@session.rpl_semi_sync_slave_trace_level;
+ERROR HY000: Variable 'rpl_semi_sync_slave_trace_level' is a GLOBAL variable
+show global variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 42
+show session variables like 'rpl_semi_sync_slave_trace_level';
+Variable_name Value
+rpl_semi_sync_slave_trace_level 42
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 42
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+VARIABLE_NAME VARIABLE_VALUE
+RPL_SEMI_SYNC_SLAVE_TRACE_LEVEL 42
+set global rpl_semi_sync_slave_trace_level=1.1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_slave_trace_level'
+set global rpl_semi_sync_slave_trace_level=1e1;
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_slave_trace_level'
+set global rpl_semi_sync_slave_trace_level="some text";
+ERROR 42000: Incorrect argument type to variable 'rpl_semi_sync_slave_trace_level'
+SET @@global.rpl_semi_sync_slave_trace_level = @start_global_value;
+select @@global.rpl_semi_sync_slave_trace_level;
+@@global.rpl_semi_sync_slave_trace_level
+32
+UNINSTALL PLUGIN rpl_semi_sync_slave;
diff --git a/mysql-test/suite/sys_vars/r/slow_query_log_func.result b/mysql-test/suite/sys_vars/r/slow_query_log_func.result
index d5485e2e6d7..eb7efe4a004 100644
--- a/mysql-test/suite/sys_vars/r/slow_query_log_func.result
+++ b/mysql-test/suite/sys_vars/r/slow_query_log_func.result
@@ -20,5 +20,21 @@ sleep(2)
SELECT count(*) > 0 FROM mysql.slow_log;
count(*) > 0
1
+'Bug#47905 stored procedures not logged correctly to slow query log'
+TRUNCATE mysql.slow_log;
+CREATE PROCEDURE p_test()
+BEGIN
+select sleep(2);
+select 1;
+END//
+CALL p_test();
+sleep(2)
+0
+1
+1
+SELECT count(*) > 0 FROM mysql.slow_log;
+count(*) > 0
+1
+DROP PROCEDURE p_test;
SET @@global.log_output = @global_log_output;
SET @global.slow_query_log = @global_slow_query_log;
diff --git a/mysql-test/suite/sys_vars/r/sql_log_update_basic.result b/mysql-test/suite/sys_vars/r/sql_log_update_basic.result
deleted file mode 100644
index b6329b2820c..00000000000
--- a/mysql-test/suite/sys_vars/r/sql_log_update_basic.result
+++ /dev/null
@@ -1,46 +0,0 @@
-SET @start_global_value = @@global.sql_log_update;
-SELECT @start_global_value;
-@start_global_value
-1
-select @@global.sql_log_update;
-@@global.sql_log_update
-1
-select @@session.sql_log_update;
-@@session.sql_log_update
-1
-show global variables like 'sql_log_update';
-Variable_name Value
-sql_log_update ON
-show session variables like 'sql_log_update';
-Variable_name Value
-sql_log_update ON
-select * from information_schema.global_variables where variable_name='sql_log_update';
-VARIABLE_NAME VARIABLE_VALUE
-SQL_LOG_UPDATE ON
-select * from information_schema.session_variables where variable_name='sql_log_update';
-VARIABLE_NAME VARIABLE_VALUE
-SQL_LOG_UPDATE ON
-set global sql_log_update=1;
-Warnings:
-Note 1315 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored. This option will be removed in MySQL 5.6.
-select @@global.sql_log_update;
-@@global.sql_log_update
-1
-set session sql_log_update=ON;
-Warnings:
-Note 1315 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored. This option will be removed in MySQL 5.6.
-select @@session.sql_log_update;
-@@session.sql_log_update
-1
-set global sql_log_update=1.1;
-ERROR 42000: Incorrect argument type to variable 'sql_log_update'
-set global sql_log_update=1e1;
-ERROR 42000: Incorrect argument type to variable 'sql_log_update'
-set global sql_log_update="foo";
-ERROR 42000: Variable 'sql_log_update' can't be set to the value of 'foo'
-SET @@global.sql_log_update = @start_global_value;
-Warnings:
-Note 1315 The update log is deprecated and replaced by the binary log; SET SQL_LOG_UPDATE has been ignored. This option will be removed in MySQL 5.6.
-SELECT @@global.sql_log_update;
-@@global.sql_log_update
-1
diff --git a/mysql-test/suite/sys_vars/r/sql_low_priority_updates_func.result b/mysql-test/suite/sys_vars/r/sql_low_priority_updates_func.result
index 584ca4c6f8f..fe76c2c4b96 100644
--- a/mysql-test/suite/sys_vars/r/sql_low_priority_updates_func.result
+++ b/mysql-test/suite/sys_vars/r/sql_low_priority_updates_func.result
@@ -6,6 +6,7 @@
SET @global_low_priority_updates = @@GLOBAL.low_priority_updates;
SET @session_low_priority_updates = @@SESSION.low_priority_updates;
CREATE TABLE t1 (a varchar(100));
+create view v1 as select * from t1;
'#--------------------FN_DYNVARS_160_01-------------------------#'
** Connection con0 **
SET SESSION low_priority_updates = ON;
@@ -19,7 +20,7 @@ INSERT INTO t1 VALUES('3');
INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
** Asynchronous Execution **
UPDATE t1 SET a = CONCAT(a,"-updated");|
@@ -55,7 +56,7 @@ INSERT INTO t1 VALUES('3');
INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
** Connection con1 **
** Asynchronous Execution **
UPDATE t1 SET a = CONCAT(a,"-updated");|
@@ -107,6 +108,7 @@ SELECT @@SESSION.low_priority_updates;
Disconnecting Connections con_int1, con_int2
** Connection default **
Disconnecting Connections con0, con1
+drop view v1;
DROP TABLE t1;
SET @@GLOBAL.low_priority_updates = @global_low_priority_updates;
SET @@SESSION.low_priority_updates = @session_low_priority_updates;
diff --git a/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result b/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
index 8aaea049b94..8ec2a60887f 100644
--- a/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
+++ b/mysql-test/suite/sys_vars/r/sql_max_join_size_basic.result
@@ -23,15 +23,27 @@ SQL_MAX_JOIN_SIZE 18446744073709551615
set global sql_max_join_size=10;
Warnings:
Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
-select @@global.sql_max_join_size;
-@@global.sql_max_join_size
-10
set session sql_max_join_size=20;
Warnings:
Warning 1287 The syntax '@@sql_max_join_size' is deprecated and will be removed in MySQL 7.0.
+select @@global.sql_max_join_size;
+@@global.sql_max_join_size
+10
select @@session.sql_max_join_size;
@@session.sql_max_join_size
20
+show global variables like 'sql_max_join_size';
+Variable_name Value
+sql_max_join_size 10
+show session variables like 'sql_max_join_size';
+Variable_name Value
+sql_max_join_size 20
+select * from information_schema.global_variables where variable_name='sql_max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_MAX_JOIN_SIZE 10
+select * from information_schema.session_variables where variable_name='sql_max_join_size';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_MAX_JOIN_SIZE 20
set global sql_max_join_size=1.1;
ERROR 42000: Incorrect argument type to variable 'sql_max_join_size'
set global sql_max_join_size=1e1;
diff --git a/mysql-test/suite/sys_vars/r/sql_select_limit_basic.result b/mysql-test/suite/sys_vars/r/sql_select_limit_basic.result
index c601fa148ce..78119cd9dff 100644
--- a/mysql-test/suite/sys_vars/r/sql_select_limit_basic.result
+++ b/mysql-test/suite/sys_vars/r/sql_select_limit_basic.result
@@ -21,13 +21,25 @@ select * from information_schema.session_variables where variable_name='sql_sele
VARIABLE_NAME VARIABLE_VALUE
SQL_SELECT_LIMIT 18446744073709551615
set global sql_select_limit=10;
+set session sql_select_limit=20;
select @@global.sql_select_limit;
@@global.sql_select_limit
10
-set session sql_select_limit=20;
select @@session.sql_select_limit;
@@session.sql_select_limit
20
+show global variables like 'sql_select_limit';
+Variable_name Value
+sql_select_limit 10
+show session variables like 'sql_select_limit';
+Variable_name Value
+sql_select_limit 20
+select * from information_schema.global_variables where variable_name='sql_select_limit';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_SELECT_LIMIT 10
+select * from information_schema.session_variables where variable_name='sql_select_limit';
+VARIABLE_NAME VARIABLE_VALUE
+SQL_SELECT_LIMIT 20
set global sql_select_limit=1.1;
ERROR 42000: Incorrect argument type to variable 'sql_select_limit'
set global sql_select_limit=1e1;
diff --git a/mysql-test/suite/sys_vars/r/table_lock_wait_timeout_basic.result b/mysql-test/suite/sys_vars/r/table_lock_wait_timeout_basic.result
deleted file mode 100644
index 68c36242cc1..00000000000
--- a/mysql-test/suite/sys_vars/r/table_lock_wait_timeout_basic.result
+++ /dev/null
@@ -1,98 +0,0 @@
-SET @start_value = @@global.table_lock_wait_timeout;
-SELECT @start_value;
-@start_value
-50
-'#--------------------FN_DYNVARS_001_01------------------------#'
-SET @@global.table_lock_wait_timeout = 99;
-SET @@global.table_lock_wait_timeout = DeFAULT;
-SELECT @@global.table_lock_wait_timeout;
-@@global.table_lock_wait_timeout
-50
-'#---------------------FN_DYNVARS_001_02-------------------------#'
-SET @@global.table_lock_wait_timeout =Default;
-SELECT @@global.table_lock_wait_timeout = 50;
-@@global.table_lock_wait_timeout = 50
-1
-'#--------------------FN_DYNVARS_001_03------------------------#'
-SET @@global.table_lock_wait_timeout = 8;
-SELECT @@global.table_lock_wait_timeout ;
-@@global.table_lock_wait_timeout
-8
-SET @@global.table_lock_wait_timeout = 1;
-SELECT @@global.table_lock_wait_timeout ;
-@@global.table_lock_wait_timeout
-1
-SET @@global.table_lock_wait_timeout = 1073741824;
-SELECT @@global.table_lock_wait_timeout ;
-@@global.table_lock_wait_timeout
-1073741824
-SET @@global.table_lock_wait_timeout = 18000;
-SELECT @@global.table_lock_wait_timeout ;
-@@global.table_lock_wait_timeout
-18000
-SET @@global.table_lock_wait_timeout = 65535;
-SELECT @@global.table_lock_wait_timeout ;
-@@global.table_lock_wait_timeout
-65535
-'#--------------------FN_DYNVARS_001_04-------------------------#'
-SET @@global.table_lock_wait_timeout = -1;
-Warnings:
-Warning 1292 Truncated incorrect table_lock_wait_timeout value: '-1'
-SET @@global.table_lock_wait_timeout= 100000000000;
-Warnings:
-Warning 1292 Truncated incorrect table_lock_wait_timeout value: '100000000000'
-SET @@global.table_lock_wait_timeout= -1024;
-Warnings:
-Warning 1292 Truncated incorrect table_lock_wait_timeout value: '-1024'
-SET @@global.table_lock_wait_timeout= 0;
-Warnings:
-Warning 1292 Truncated incorrect table_lock_wait_timeout value: '0'
-SET @@global.table_lock_wait_timeout= 10000.01;
-ERROR 42000: Incorrect argument type to variable 'table_lock_wait_timeout'
-SET @@global.table_lock_wait_timeout= ON;
-ERROR 42000: Incorrect argument type to variable 'table_lock_wait_timeout'
-SET @@global.table_lock_wait_timeout= 'test';
-ERROR 42000: Incorrect argument type to variable 'table_lock_wait_timeout'
-SET @@global.table_lock_wait_timeout= '';
-ERROR 42000: Incorrect argument type to variable 'table_lock_wait_timeout'
-'#-------------------FN_DYNVARS_001_05----------------------------#'
-SET @@session.table_lock_wait_timeout= 0;
-ERROR HY000: Variable 'table_lock_wait_timeout' is a GLOBAL variable and should be set with SET GLOBAL
-SELECT @@table_lock_wait_timeout;
-@@table_lock_wait_timeout
-1
-'#----------------------FN_DYNVARS_001_06------------------------#'
-SELECT @@global.table_lock_wait_timeout= VARIABLE_VALUE
-FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
-WHERE VARIABLE_NAME='table_lock_wait_timeout';
-@@global.table_lock_wait_timeout= VARIABLE_VALUE
-1
-'#---------------------FN_DYNVARS_001_09----------------------#'
-SET @@global.table_lock_wait_timeout= TRUE;
-SELECT @@global.table_lock_wait_timeout;
-@@global.table_lock_wait_timeout
-1
-SET @@global.table_lock_wait_timeout= FALSE;
-Warnings:
-Warning 1292 Truncated incorrect table_lock_wait_timeout value: '0'
-SELECT @@global.table_lock_wait_timeout;
-@@global.table_lock_wait_timeout
-1
-'#---------------------FN_DYNVARS_001_10----------------------#'
-SET @@global.table_lock_wait_timeout= 10;
-SELECT @@table_lock_wait_timeout= @@global.table_lock_wait_timeout;
-@@table_lock_wait_timeout= @@global.table_lock_wait_timeout
-1
-'#---------------------FN_DYNVARS_001_11----------------------#'
-SET table_lock_wait_timeout= 8;
-ERROR HY000: Variable 'table_lock_wait_timeout' is a GLOBAL variable and should be set with SET GLOBAL
-SET global.table_lock_wait_timeout= 10;
-ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table_lock_wait_timeout= 10' at line 1
-SELECT global.table_lock_wait_timeout;
-ERROR 42S02: Unknown table 'global' in field list
-SELECT table_lock_wait_timeout= @@session.table_lock_wait_timeout;
-ERROR 42S22: Unknown column 'table_lock_wait_timeout' in 'field list'
-SET @@global.table_lock_wait_timeout= @start_value;
-SELECT @@global.table_lock_wait_timeout;
-@@global.table_lock_wait_timeout
-50
diff --git a/mysql-test/suite/sys_vars/r/thread_cache_size_basic.result b/mysql-test/suite/sys_vars/r/thread_cache_size_basic.result
index 1c802f1afdd..83501ca929b 100644
--- a/mysql-test/suite/sys_vars/r/thread_cache_size_basic.result
+++ b/mysql-test/suite/sys_vars/r/thread_cache_size_basic.result
@@ -23,6 +23,12 @@ set global thread_cache_size=1;
select @@global.thread_cache_size;
@@global.thread_cache_size
1
+select * from information_schema.global_variables where variable_name='thread_cache_size';
+VARIABLE_NAME VARIABLE_VALUE
+THREAD_CACHE_SIZE 1
+select * from information_schema.session_variables where variable_name='thread_cache_size';
+VARIABLE_NAME VARIABLE_VALUE
+THREAD_CACHE_SIZE 1
set session thread_cache_size=1;
ERROR HY000: Variable 'thread_cache_size' is a GLOBAL variable and should be set with SET GLOBAL
set global thread_cache_size=1.1;
diff --git a/mysql-test/suite/sys_vars/t/all_vars-master.opt b/mysql-test/suite/sys_vars/t/all_vars-master.opt
new file mode 100644
index 00000000000..3eec696ce86
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/all_vars-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT --loose-innodb
diff --git a/mysql-test/suite/sys_vars/t/all_vars.test b/mysql-test/suite/sys_vars/t/all_vars.test
index 6a18b5e3d37..e9e7e16687a 100644
--- a/mysql-test/suite/sys_vars/t/all_vars.test
+++ b/mysql-test/suite/sys_vars/t/all_vars.test
@@ -15,6 +15,25 @@
--source include/not_embedded.inc
+# 2010-01-28 OBN Added support to load 'innodb' and 'semisync' if possible.
+# As we need to have there variables loaded if the components exist but do
+# not want the test skiped if they are not, we cannot use the 'have_xxx' mecanizm.
+# Added an 'all_vars-master.opt' file that includes
+# "$SEMISYNC_PLUGIN_OPT --loose-innodb" (see $SEMISYNC_PLUGIN_OPT setting in mysql-test-run.pl)
+# and logic similar to 'include/have_semisync_plugin.inc' that will load semisync plugin
+if (`SELECT @@have_dynamic_loading = 'YES' AND LENGTH('$SEMISYNC_MASTER_PLUGIN') > 0`)
+{
+ --disable_query_log
+ # The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+ --replace_regex /\.dll/.so/
+ eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
+ --replace_regex /\.dll/.so/
+ eval INSTALL PLUGIN rpl_semi_sync_slave SONAME '$SEMISYNC_SLAVE_PLUGIN';
+ --enable_query_log
+}
+
+
+
#
# This test verifies that *all* system variables are tested
# by the sys_vars suite. For every system variable
@@ -58,3 +77,12 @@ select variable_name as `There should be *no* variables listed below:` from t2
drop table t1;
drop table t2;
+
+# Unloading the semisync plugins in case they were loaded
+if (`SELECT @@have_dynamic_loading = 'YES' AND LENGTH('$SEMISYNC_MASTER_PLUGIN') > 0`)
+{
+ --disable_query_log
+ UNINSTALL PLUGIN rpl_semi_sync_master;
+ UNINSTALL PLUGIN rpl_semi_sync_slave;
+ --enable_query_log
+}
diff --git a/mysql-test/suite/sys_vars/t/autocommit_func.test b/mysql-test/suite/sys_vars/t/autocommit_func.test
index 06193448588..10c763ca58e 100644
--- a/mysql-test/suite/sys_vars/t/autocommit_func.test
+++ b/mysql-test/suite/sys_vars/t/autocommit_func.test
@@ -152,6 +152,10 @@ SELECT * from t1;
CONNECTION test_con2;
SELECT * from t1;
+--echo ## Commit changes
+CONNECTION test_con1;
+COMMIT;
+
--echo ## Dropping table t1 ##
DROP table t1;
diff --git a/mysql-test/suite/sys_vars/t/character_set_client_basic.test b/mysql-test/suite/sys_vars/t/character_set_client_basic.test
index 26912e89509..7b3d36fb16f 100644
--- a/mysql-test/suite/sys_vars/t/character_set_client_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_set_client_basic.test
@@ -27,6 +27,9 @@
--source include/have_sjis.inc
--source include/have_utf8.inc
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--source include/load_sysvars.inc
###################################################
@@ -163,9 +166,15 @@ SET @@character_set_client = armscii8;
SELECT @@character_set_client;
SET @@character_set_client = utf8;
SELECT @@character_set_client;
+SET @@character_set_client = utf8mb4;
+SELECT @@character_set_client;
--error ER_WRONG_VALUE_FOR_VAR
SET @@character_set_client = ucs2;
+--error ER_WRONG_VALUE_FOR_VAR
+SET @@character_set_client = utf16;
+--error ER_WRONG_VALUE_FOR_VAR
+SET @@character_set_client = utf32;
SET @@character_set_client = cp866;
SELECT @@character_set_client;
diff --git a/mysql-test/suite/sys_vars/t/character_set_connection_basic.test b/mysql-test/suite/sys_vars/t/character_set_connection_basic.test
index 1a51843e0e8..e402dbb0ff5 100644
--- a/mysql-test/suite/sys_vars/t/character_set_connection_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_set_connection_basic.test
@@ -27,6 +27,9 @@
--source include/have_sjis.inc
--source include/have_utf8.inc
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--source include/load_sysvars.inc
###################################################
diff --git a/mysql-test/suite/sys_vars/t/character_set_database_basic.test b/mysql-test/suite/sys_vars/t/character_set_database_basic.test
index 07b4b31b25c..4e650dc6139 100644
--- a/mysql-test/suite/sys_vars/t/character_set_database_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_set_database_basic.test
@@ -27,6 +27,9 @@
--source include/have_sjis.inc
--source include/have_utf8.inc
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--source include/load_sysvars.inc
###################################################
diff --git a/mysql-test/suite/sys_vars/t/character_set_filesystem_basic.test b/mysql-test/suite/sys_vars/t/character_set_filesystem_basic.test
index 928d02ee46b..6bb2de35429 100644
--- a/mysql-test/suite/sys_vars/t/character_set_filesystem_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_set_filesystem_basic.test
@@ -27,6 +27,9 @@
--source include/have_sjis.inc
--source include/have_utf8.inc
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--source include/load_sysvars.inc
diff --git a/mysql-test/suite/sys_vars/t/character_set_results_basic.test b/mysql-test/suite/sys_vars/t/character_set_results_basic.test
index 98635c00287..1bede9e493c 100644
--- a/mysql-test/suite/sys_vars/t/character_set_results_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_set_results_basic.test
@@ -27,6 +27,9 @@
--source include/have_sjis.inc
--source include/have_utf8.inc
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--source include/load_sysvars.inc
################################################
diff --git a/mysql-test/suite/sys_vars/t/character_sets_dir_basic.test b/mysql-test/suite/sys_vars/t/character_sets_dir_basic.test
index 30befb5b0f1..3d9de961530 100644
--- a/mysql-test/suite/sys_vars/t/character_sets_dir_basic.test
+++ b/mysql-test/suite/sys_vars/t/character_sets_dir_basic.test
@@ -1,17 +1,17 @@
#
# show the global and session values;
#
---replace_result $MYSQL_SHAREDIR MYSQL_SHAREDIR
+--replace_result $MYSQL_CHARSETSDIR MYSQL_CHARSETSDIR
select @@global.character_sets_dir;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@session.character_sets_dir;
---replace_result $MYSQL_SHAREDIR MYSQL_SHAREDIR
+--replace_result $MYSQL_CHARSETSDIR MYSQL_CHARSETSDIR
show global variables like 'character_sets_dir';
---replace_result $MYSQL_SHAREDIR MYSQL_SHAREDIR
+--replace_result $MYSQL_CHARSETSDIR MYSQL_CHARSETSDIR
show session variables like 'character_sets_dir';
---replace_result $MYSQL_SHAREDIR MYSQL_SHAREDIR
+--replace_result $MYSQL_CHARSETSDIR MYSQL_CHARSETSDIR
select * from information_schema.global_variables where variable_name='character_sets_dir';
---replace_result $MYSQL_SHAREDIR MYSQL_SHAREDIR
+--replace_result $MYSQL_CHARSETSDIR MYSQL_CHARSETSDIR
select * from information_schema.session_variables where variable_name='character_sets_dir';
#
diff --git a/mysql-test/suite/sys_vars/t/concurrent_insert_func.test b/mysql-test/suite/sys_vars/t/concurrent_insert_func.test
index 1a600ffd7f6..018247df3ff 100644
--- a/mysql-test/suite/sys_vars/t/concurrent_insert_func.test
+++ b/mysql-test/suite/sys_vars/t/concurrent_insert_func.test
@@ -98,12 +98,12 @@ INSERT INTO t1(name) VALUES('Record_7');
connection default;
# wait until INSERT will be locked (low performance)
let $wait_condition= SELECT COUNT(*) = 1 FROM INFORMATION_SCHEMA.PROCESSLIST
- WHERE state= "Locked" AND info LIKE "INSERT INTO t1%";
+ WHERE state= "Table lock" AND info LIKE "INSERT INTO t1%";
--source include/wait_condition.inc
--echo ## show processlist info and state ##
SELECT state,info FROM INFORMATION_SCHEMA.PROCESSLIST
-WHERE state= "Locked" AND info LIKE "INSERT INTO t1%";
+WHERE state= "Table lock" AND info LIKE "INSERT INTO t1%";
--echo ## table contents befor UNLOCK ##
SELECT * FROM t1;
UNLOCK TABLES;
diff --git a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
index 88f247135c8..60092dbb8e8 100644
--- a/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
+++ b/mysql-test/suite/sys_vars/t/delayed_insert_limit_func.test
@@ -46,6 +46,7 @@ SET @global_delayed_insert_limit = @@GLOBAL.delayed_insert_limit;
#
CREATE TABLE t1 (a VARCHAR(100),b VARCHAR(100),c VARCHAR(100));
+CREATE VIEW v1 as select * from t1;
--echo '#--------------------FN_DYNVARS_25_01-------------------------#'
@@ -60,7 +61,7 @@ INSERT INTO t1 VALUES('4','1','1');
INSERT INTO t1 VALUES('5','1','1');
INSERT INTO t1 VALUES('6','1','1');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -122,7 +123,7 @@ connection default;
--echo ** Wait till con0 is blocked **
let $wait_condition=
SELECT COUNT(*) = 1 FROM information_schema.processlist
- WHERE state = 'Locked' AND info = '$my_select';
+ WHERE state = 'Table lock' AND info = '$my_select';
--source include/wait_condition.inc
UNLOCK TABLES;
@@ -153,6 +154,7 @@ let $wait_condition= SELECT count(*) = 43 FROM t1;
SELECT COUNT(*) FROM t1;
DROP TABLE t1;
+DROP VIEW v1;
--echo '#--------------------FN_DYNVARS_25_02-------------------------#'
@@ -160,6 +162,7 @@ DROP TABLE t1;
# delayed_insert_limit is bigger than the number of inserted rows
CREATE TABLE t1 (a VARCHAR(100));
+CREATE VIEW v1 AS SELECT * FROM t1;
SET GLOBAL delayed_insert_limit = 20;
@@ -170,7 +173,7 @@ INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -205,7 +208,9 @@ let $wait_condition=
WHERE variable_name like 'Not_flushed_delayed_rows';
--source include/wait_condition.inc
--echo Asynchronous execute
-let $my_select= SELECT COUNT(*) = 22 FROM t1;
+# Due to performance and server behaveiour the test observes values between 6 and 22.
+# In any case the value must not be outside of that range.
+let $my_select= SELECT COUNT(*) BETWEEN 6 AND 22 FROM t1;
send;
eval $my_select;
@@ -214,7 +219,7 @@ connection default;
--echo ** Wait till con0 is blocked **
let $wait_condition=
SELECT COUNT(*) = 1 FROM information_schema.processlist
- WHERE state = 'Locked' AND info = '$my_select';
+ WHERE state = 'Table lock' AND info = '$my_select';
--source include/wait_condition.inc
UNLOCK TABLES;
@@ -240,6 +245,7 @@ eval $my_select;
--echo ** Connection default**
connection default;
DROP TABLE t1;
+DROP VIEW v1;
SET @@GLOBAL.delayed_insert_limit = @global_delayed_insert_limit;
--echo Disconnecting from con1, con0
diff --git a/mysql-test/suite/sys_vars/t/innodb_adaptive_flushing_basic.test b/mysql-test/suite/sys_vars/t/innodb_adaptive_flushing_basic.test
new file mode 100644
index 00000000000..236b652f9c6
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_adaptive_flushing_basic.test
@@ -0,0 +1,70 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_adaptive_flushing;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_flushing in (0, 1);
+select @@global.innodb_adaptive_flushing;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_adaptive_flushing;
+show global variables like 'innodb_adaptive_flushing';
+show session variables like 'innodb_adaptive_flushing';
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+
+#
+# show that it's writable
+#
+set global innodb_adaptive_flushing='OFF';
+select @@global.innodb_adaptive_flushing;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+set @@global.innodb_adaptive_flushing=1;
+select @@global.innodb_adaptive_flushing;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+set global innodb_adaptive_flushing=0;
+select @@global.innodb_adaptive_flushing;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+set @@global.innodb_adaptive_flushing='ON';
+select @@global.innodb_adaptive_flushing;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+--error ER_GLOBAL_VARIABLE
+set session innodb_adaptive_flushing='OFF';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_adaptive_flushing='ON';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_adaptive_flushing=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_adaptive_flushing=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_adaptive_flushing=2;
+--echo NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_adaptive_flushing=-3;
+select @@global.innodb_adaptive_flushing;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_flushing';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_flushing';
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_adaptive_flushing='AUTO';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_adaptive_flushing = @start_global_value;
+SELECT @@global.innodb_adaptive_flushing;
diff --git a/mysql-test/suite/sys_vars/t/innodb_adaptive_hash_index_basic.test b/mysql-test/suite/sys_vars/t/innodb_adaptive_hash_index_basic.test
new file mode 100644
index 00000000000..d6d48ab460c
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_adaptive_hash_index_basic.test
@@ -0,0 +1,70 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_adaptive_hash_index;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_hash_index in (0, 1);
+select @@global.innodb_adaptive_hash_index;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_adaptive_hash_index;
+show global variables like 'innodb_adaptive_hash_index';
+show session variables like 'innodb_adaptive_hash_index';
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+
+#
+# show that it's writable
+#
+set global innodb_adaptive_hash_index='OFF';
+select @@global.innodb_adaptive_hash_index;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+set @@global.innodb_adaptive_hash_index=1;
+select @@global.innodb_adaptive_hash_index;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+set global innodb_adaptive_hash_index=0;
+select @@global.innodb_adaptive_hash_index;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+set @@global.innodb_adaptive_hash_index='ON';
+select @@global.innodb_adaptive_hash_index;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+--error ER_GLOBAL_VARIABLE
+set session innodb_adaptive_hash_index='OFF';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_adaptive_hash_index='ON';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_adaptive_hash_index=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_adaptive_hash_index=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_adaptive_hash_index=2;
+--echo NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_adaptive_hash_index=-3;
+select @@global.innodb_adaptive_hash_index;
+select * from information_schema.global_variables where variable_name='innodb_adaptive_hash_index';
+select * from information_schema.session_variables where variable_name='innodb_adaptive_hash_index';
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_adaptive_hash_index='AUTO';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_adaptive_hash_index = @start_global_value;
+SELECT @@global.innodb_adaptive_hash_index;
diff --git a/mysql-test/suite/sys_vars/t/innodb_change_buffering_basic.test b/mysql-test/suite/sys_vars/t/innodb_change_buffering_basic.test
new file mode 100644
index 00000000000..65e36aa9cb3
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_change_buffering_basic.test
@@ -0,0 +1,59 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_change_buffering;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'inserts' and 'none'
+select @@global.innodb_change_buffering in ('inserts', 'none');
+select @@global.innodb_change_buffering;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_change_buffering;
+show global variables like 'innodb_change_buffering';
+show session variables like 'innodb_change_buffering';
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+
+#
+# show that it's writable
+#
+set global innodb_change_buffering='none';
+select @@global.innodb_change_buffering;
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+set @@global.innodb_change_buffering='inserts';
+select @@global.innodb_change_buffering;
+select * from information_schema.global_variables where variable_name='innodb_change_buffering';
+select * from information_schema.session_variables where variable_name='innodb_change_buffering';
+--error ER_GLOBAL_VARIABLE
+set session innodb_change_buffering='some';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_change_buffering='some';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_change_buffering=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_change_buffering=1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_change_buffering=-2;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_change_buffering=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_change_buffering='some';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_change_buffering = @start_global_value;
+SELECT @@global.innodb_change_buffering;
diff --git a/mysql-test/suite/sys_vars/t/innodb_file_format_basic.test b/mysql-test/suite/sys_vars/t/innodb_file_format_basic.test
new file mode 100644
index 00000000000..bfc092f2f05
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_file_format_basic.test
@@ -0,0 +1,55 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_file_format;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'Antelope' and 'Barracuda'
+select @@global.innodb_file_format in ('Antelope', 'Barracuda');
+select @@global.innodb_file_format;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_file_format;
+show global variables like 'innodb_file_format';
+show session variables like 'innodb_file_format';
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+
+#
+# show that it's writable
+#
+set global innodb_file_format='Antelope';
+select @@global.innodb_file_format;
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+set @@global.innodb_file_format='Barracuda';
+select @@global.innodb_file_format;
+select * from information_schema.global_variables where variable_name='innodb_file_format';
+select * from information_schema.session_variables where variable_name='innodb_file_format';
+--error ER_GLOBAL_VARIABLE
+set session innodb_file_format='Salmon';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_file_format='Salmon';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_file_format=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_file_format=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_file_format='Salmon';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_file_format = @start_global_value;
+SELECT @@global.innodb_file_format;
diff --git a/mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test b/mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test
new file mode 100644
index 00000000000..4c60957561c
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_file_format_check_basic.test
@@ -0,0 +1,55 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_file_format_check;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'Antelope' and 'Barracuda'
+select @@global.innodb_file_format_check in ('Antelope', 'Barracuda');
+select @@global.innodb_file_format_check;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_file_format_check;
+show global variables like 'innodb_file_format_check';
+show session variables like 'innodb_file_format_check';
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+
+#
+# show that it's writable
+#
+set global innodb_file_format_check='Antelope';
+select @@global.innodb_file_format_check;
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+set @@global.innodb_file_format_check='Barracuda';
+select @@global.innodb_file_format_check;
+select * from information_schema.global_variables where variable_name='innodb_file_format_check';
+select * from information_schema.session_variables where variable_name='innodb_file_format_check';
+--error ER_GLOBAL_VARIABLE
+set session innodb_file_format_check='Salmon';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_file_format_check='Salmon';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_file_format_check=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_file_format_check=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_file_format_check='Salmon';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_file_format_check = @start_global_value;
+SELECT @@global.innodb_file_format_check;
diff --git a/mysql-test/suite/sys_vars/t/innodb_io_capacity_basic.test b/mysql-test/suite/sys_vars/t/innodb_io_capacity_basic.test
new file mode 100644
index 00000000000..3f00b50cf08
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_io_capacity_basic.test
@@ -0,0 +1,58 @@
+
+
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_io_capacity;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid value 100 or more
+select @@global.innodb_io_capacity > 99;
+select @@global.innodb_io_capacity;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_io_capacity;
+show global variables like 'innodb_io_capacity';
+show session variables like 'innodb_io_capacity';
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+select * from information_schema.session_variables where variable_name='innodb_io_capacity';
+
+#
+# show that it's writable
+#
+set global innodb_io_capacity=123;
+select @@global.innodb_io_capacity;
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+select * from information_schema.session_variables where variable_name='innodb_io_capacity';
+--error ER_GLOBAL_VARIABLE
+set session innodb_io_capacity=444;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_io_capacity=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_io_capacity=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_io_capacity="foo";
+
+set global innodb_io_capacity=7;
+select @@global.innodb_io_capacity;
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+set global innodb_io_capacity=-7;
+select @@global.innodb_io_capacity;
+select * from information_schema.global_variables where variable_name='innodb_io_capacity';
+
+#
+# min/max values
+#
+set global innodb_io_capacity=100;
+select @@global.innodb_io_capacity;
+
+SET @@global.innodb_io_capacity = @start_global_value;
+SELECT @@global.innodb_io_capacity;
diff --git a/mysql-test/suite/sys_vars/t/innodb_old_blocks_pct_basic.test b/mysql-test/suite/sys_vars/t/innodb_old_blocks_pct_basic.test
new file mode 100644
index 00000000000..0dcef3bb09f
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_old_blocks_pct_basic.test
@@ -0,0 +1,63 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_old_blocks_pct;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are between 5 and 95
+select @@global.innodb_old_blocks_pct between 5 and 95;
+select @@global.innodb_old_blocks_pct;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_old_blocks_pct;
+show global variables like 'innodb_old_blocks_pct';
+show session variables like 'innodb_old_blocks_pct';
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_pct';
+
+#
+# show that it's writable
+#
+set global innodb_old_blocks_pct=10;
+select @@global.innodb_old_blocks_pct;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_pct';
+--error ER_GLOBAL_VARIABLE
+set session innodb_old_blocks_pct=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_pct=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_pct=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_pct="foo";
+
+set global innodb_old_blocks_pct=4;
+select @@global.innodb_old_blocks_pct;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+set global innodb_old_blocks_pct=-7;
+select @@global.innodb_old_blocks_pct;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+set global innodb_old_blocks_pct=96;
+select @@global.innodb_old_blocks_pct;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_pct';
+
+#
+# min/max values
+#
+set global innodb_old_blocks_pct=5;
+select @@global.innodb_old_blocks_pct;
+set global innodb_old_blocks_pct=95;
+select @@global.innodb_old_blocks_pct;
+
+SET @@global.innodb_old_blocks_pct = @start_global_value;
+SELECT @@global.innodb_old_blocks_pct;
diff --git a/mysql-test/suite/sys_vars/t/innodb_old_blocks_time_basic.test b/mysql-test/suite/sys_vars/t/innodb_old_blocks_time_basic.test
new file mode 100644
index 00000000000..3efec2bbf15
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_old_blocks_time_basic.test
@@ -0,0 +1,52 @@
+
+#
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_old_blocks_time;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are zero or above
+select @@global.innodb_old_blocks_time >=0;
+select @@global.innodb_old_blocks_time;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_old_blocks_time;
+show global variables like 'innodb_old_blocks_time';
+show session variables like 'innodb_old_blocks_time';
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_time';
+
+#
+# show that it's writable
+#
+set global innodb_old_blocks_time=10;
+select @@global.innodb_old_blocks_time;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+select * from information_schema.session_variables where variable_name='innodb_old_blocks_time';
+--error ER_GLOBAL_VARIABLE
+set session innodb_old_blocks_time=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_time=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_time=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_old_blocks_time="foo";
+
+set global innodb_old_blocks_time=-7;
+select @@global.innodb_old_blocks_time;
+select * from information_schema.global_variables where variable_name='innodb_old_blocks_time';
+
+#
+# cleanup
+#
+SET @@global.innodb_old_blocks_time = @start_global_value;
+SELECT @@global.innodb_old_blocks_time;
diff --git a/mysql-test/suite/sys_vars/t/innodb_read_ahead_threshold_basic.test b/mysql-test/suite/sys_vars/t/innodb_read_ahead_threshold_basic.test
new file mode 100644
index 00000000000..1298a28b3d3
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_read_ahead_threshold_basic.test
@@ -0,0 +1,60 @@
+
+
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_read_ahead_threshold;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are between 0 and 64
+select @@global.innodb_read_ahead_threshold between 0 and 64;
+select @@global.innodb_read_ahead_threshold;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_read_ahead_threshold;
+show global variables like 'innodb_read_ahead_threshold';
+show session variables like 'innodb_read_ahead_threshold';
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+select * from information_schema.session_variables where variable_name='innodb_read_ahead_threshold';
+
+#
+# show that it's writable
+#
+set global innodb_read_ahead_threshold=10;
+select @@global.innodb_read_ahead_threshold;
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+select * from information_schema.session_variables where variable_name='innodb_read_ahead_threshold';
+--error ER_GLOBAL_VARIABLE
+set session innodb_read_ahead_threshold=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_read_ahead_threshold=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_read_ahead_threshold=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_read_ahead_threshold="foo";
+
+set global innodb_read_ahead_threshold=-7;
+select @@global.innodb_read_ahead_threshold;
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+set global innodb_read_ahead_threshold=96;
+select @@global.innodb_read_ahead_threshold;
+select * from information_schema.global_variables where variable_name='innodb_read_ahead_threshold';
+
+#
+# min/max values
+#
+set global innodb_read_ahead_threshold=0;
+select @@global.innodb_read_ahead_threshold;
+set global innodb_read_ahead_threshold=64;
+select @@global.innodb_read_ahead_threshold;
+
+SET @@global.innodb_read_ahead_threshold = @start_global_value;
+SELECT @@global.innodb_read_ahead_threshold;
diff --git a/mysql-test/suite/sys_vars/t/innodb_read_io_threads_basic.test b/mysql-test/suite/sys_vars/t/innodb_read_io_threads_basic.test
new file mode 100644
index 00000000000..14426395d6c
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_read_io_threads_basic.test
@@ -0,0 +1,26 @@
+
+#
+# 2010-01-27 OBN - Added (this variable is also covered in innodb_file_io_threads_basic.test)
+#
+
+--source include/have_innodb.inc
+
+#
+# show the global and session values;
+#
+select @@global.innodb_read_io_threads;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_read_io_threads;
+show global variables like 'innodb_read_io_threads';
+show session variables like 'innodb_read_io_threads';
+select * from information_schema.global_variables where variable_name='innodb_read_io_threads';
+select * from information_schema.session_variables where variable_name='innodb_read_io_threads';
+
+#
+# show that it's read-only
+#
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set global innodb_read_io_threads=1;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set session innodb_read_io_threads=1;
+
diff --git a/mysql-test/suite/sys_vars/t/innodb_replication_delay_basic.test b/mysql-test/suite/sys_vars/t/innodb_replication_delay_basic.test
new file mode 100644
index 00000000000..e495de46611
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_replication_delay_basic.test
@@ -0,0 +1,52 @@
+
+#
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_replication_delay;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are zero or above
+select @@global.innodb_replication_delay >=0;
+select @@global.innodb_replication_delay;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_replication_delay;
+show global variables like 'innodb_replication_delay';
+show session variables like 'innodb_replication_delay';
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+select * from information_schema.session_variables where variable_name='innodb_replication_delay';
+
+#
+# show that it's writable
+#
+set global innodb_replication_delay=10;
+select @@global.innodb_replication_delay;
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+select * from information_schema.session_variables where variable_name='innodb_replication_delay';
+--error ER_GLOBAL_VARIABLE
+set session innodb_replication_delay=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_replication_delay=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_replication_delay=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_replication_delay="foo";
+
+set global innodb_replication_delay=-7;
+select @@global.innodb_replication_delay;
+select * from information_schema.global_variables where variable_name='innodb_replication_delay';
+
+#
+# cleanup
+#
+SET @@global.innodb_replication_delay = @start_global_value;
+SELECT @@global.innodb_replication_delay;
diff --git a/mysql-test/suite/sys_vars/t/innodb_spin_wait_delay_basic.test b/mysql-test/suite/sys_vars/t/innodb_spin_wait_delay_basic.test
new file mode 100644
index 00000000000..8f2eee08b6a
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_spin_wait_delay_basic.test
@@ -0,0 +1,52 @@
+
+#
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_spin_wait_delay;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are zero or above
+select @@global.innodb_spin_wait_delay >=0;
+select @@global.innodb_spin_wait_delay;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_spin_wait_delay;
+show global variables like 'innodb_spin_wait_delay';
+show session variables like 'innodb_spin_wait_delay';
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+select * from information_schema.session_variables where variable_name='innodb_spin_wait_delay';
+
+#
+# show that it's writable
+#
+set global innodb_spin_wait_delay=10;
+select @@global.innodb_spin_wait_delay;
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+select * from information_schema.session_variables where variable_name='innodb_spin_wait_delay';
+--error ER_GLOBAL_VARIABLE
+set session innodb_spin_wait_delay=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_spin_wait_delay=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_spin_wait_delay=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_spin_wait_delay="foo";
+
+set global innodb_spin_wait_delay=-7;
+select @@global.innodb_spin_wait_delay;
+select * from information_schema.global_variables where variable_name='innodb_spin_wait_delay';
+
+#
+# cleanup
+#
+SET @@global.innodb_spin_wait_delay = @start_global_value;
+SELECT @@global.innodb_spin_wait_delay;
diff --git a/mysql-test/suite/sys_vars/t/innodb_stats_on_metadata_basic.test b/mysql-test/suite/sys_vars/t/innodb_stats_on_metadata_basic.test
new file mode 100644
index 00000000000..e6d59997ac6
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_stats_on_metadata_basic.test
@@ -0,0 +1,70 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_stats_on_metadata;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are 'ON' and 'OFF'
+select @@global.innodb_stats_on_metadata in (0, 1);
+select @@global.innodb_stats_on_metadata;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_stats_on_metadata;
+show global variables like 'innodb_stats_on_metadata';
+show session variables like 'innodb_stats_on_metadata';
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+
+#
+# show that it's writable
+#
+set global innodb_stats_on_metadata='OFF';
+select @@global.innodb_stats_on_metadata;
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+set @@global.innodb_stats_on_metadata=1;
+select @@global.innodb_stats_on_metadata;
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+set global innodb_stats_on_metadata=0;
+select @@global.innodb_stats_on_metadata;
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+set @@global.innodb_stats_on_metadata='ON';
+select @@global.innodb_stats_on_metadata;
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+--error ER_GLOBAL_VARIABLE
+set session innodb_stats_on_metadata='OFF';
+--error ER_GLOBAL_VARIABLE
+set @@session.innodb_stats_on_metadata='ON';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_stats_on_metadata=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_stats_on_metadata=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_stats_on_metadata=2;
+--echo NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_stats_on_metadata=-3;
+select @@global.innodb_stats_on_metadata;
+select * from information_schema.global_variables where variable_name='innodb_stats_on_metadata';
+select * from information_schema.session_variables where variable_name='innodb_stats_on_metadata';
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_stats_on_metadata='AUTO';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_stats_on_metadata = @start_global_value;
+SELECT @@global.innodb_stats_on_metadata;
diff --git a/mysql-test/suite/sys_vars/t/innodb_stats_sample_pages_basic.test b/mysql-test/suite/sys_vars/t/innodb_stats_sample_pages_basic.test
new file mode 100644
index 00000000000..2c91f11405d
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_stats_sample_pages_basic.test
@@ -0,0 +1,52 @@
+
+#
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_stats_sample_pages;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are one or above
+select @@global.innodb_stats_sample_pages >=1;
+select @@global.innodb_stats_sample_pages;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_stats_sample_pages;
+show global variables like 'innodb_stats_sample_pages';
+show session variables like 'innodb_stats_sample_pages';
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+select * from information_schema.session_variables where variable_name='innodb_stats_sample_pages';
+
+#
+# show that it's writable
+#
+set global innodb_stats_sample_pages=10;
+select @@global.innodb_stats_sample_pages;
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+select * from information_schema.session_variables where variable_name='innodb_stats_sample_pages';
+--error ER_GLOBAL_VARIABLE
+set session innodb_stats_sample_pages=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_stats_sample_pages=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_stats_sample_pages=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_stats_sample_pages="foo";
+
+set global innodb_stats_sample_pages=-7;
+select @@global.innodb_stats_sample_pages;
+select * from information_schema.global_variables where variable_name='innodb_stats_sample_pages';
+
+#
+# cleanup
+#
+SET @@global.innodb_stats_sample_pages = @start_global_value;
+SELECT @@global.innodb_stats_sample_pages;
diff --git a/mysql-test/suite/sys_vars/t/innodb_strict_mode_basic.test b/mysql-test/suite/sys_vars/t/innodb_strict_mode_basic.test
new file mode 100644
index 00000000000..53fbdca2d32
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_strict_mode_basic.test
@@ -0,0 +1,84 @@
+
+
+# 2010-01-25 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_strict_mode;
+SELECT @start_global_value;
+
+#
+# exists as global and session
+#
+--echo Valid values are 'ON' and 'OFF'
+select @@global.innodb_strict_mode in (0, 1);
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode in (0, 1);
+select @@session.innodb_strict_mode;
+show global variables like 'innodb_strict_mode';
+show session variables like 'innodb_strict_mode';
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+
+#
+# show that it's writable
+#
+set global innodb_strict_mode='OFF';
+set session innodb_strict_mode='OFF';
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode;
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+set @@global.innodb_strict_mode=1;
+set @@session.innodb_strict_mode=1;
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode;
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+set global innodb_strict_mode=0;
+set session innodb_strict_mode=0;
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode;
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+set @@global.innodb_strict_mode='ON';
+set @@session.innodb_strict_mode='ON';
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode;
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_strict_mode=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set session innodb_strict_mode=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_strict_mode=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set session innodb_strict_mode=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_strict_mode=2;
+--error ER_WRONG_VALUE_FOR_VAR
+set session innodb_strict_mode=2;
+--error ER_WRONG_VALUE_FOR_VAR
+set global innodb_strict_mode='AUTO';
+--error ER_WRONG_VALUE_FOR_VAR
+set session innodb_strict_mode='AUTO';
+--echo NOTE: The following should fail with ER_WRONG_VALUE_FOR_VAR (BUG#50643)
+set global innodb_strict_mode=-3;
+set session innodb_strict_mode=-7;
+select @@global.innodb_strict_mode;
+select @@session.innodb_strict_mode;
+select * from information_schema.global_variables where variable_name='innodb_strict_mode';
+select * from information_schema.session_variables where variable_name='innodb_strict_mode';
+
+#
+# Cleanup
+#
+
+SET @@global.innodb_strict_mode = @start_global_value;
+SELECT @@global.innodb_strict_mode;
diff --git a/mysql-test/suite/sys_vars/t/innodb_table_locks_func.test b/mysql-test/suite/sys_vars/t/innodb_table_locks_func.test
index 6638a20c926..330addd6b3b 100644
--- a/mysql-test/suite/sys_vars/t/innodb_table_locks_func.test
+++ b/mysql-test/suite/sys_vars/t/innodb_table_locks_func.test
@@ -78,6 +78,7 @@ COMMIT;
--echo 'CONNECTION con2'
CONNECTION con2;
+reap;
UNLOCK tables;
DROP TABLE t1;
diff --git a/mysql-test/suite/sys_vars/t/innodb_thread_sleep_delay_basic.test b/mysql-test/suite/sys_vars/t/innodb_thread_sleep_delay_basic.test
new file mode 100644
index 00000000000..7156f309a64
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_thread_sleep_delay_basic.test
@@ -0,0 +1,52 @@
+
+#
+# 2010-01-27 - Added
+#
+
+--source include/have_innodb.inc
+
+SET @start_global_value = @@global.innodb_thread_sleep_delay;
+SELECT @start_global_value;
+
+#
+# exists as global only
+#
+--echo Valid values are zero or above
+select @@global.innodb_thread_sleep_delay >=0;
+select @@global.innodb_thread_sleep_delay;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_thread_sleep_delay;
+show global variables like 'innodb_thread_sleep_delay';
+show session variables like 'innodb_thread_sleep_delay';
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+select * from information_schema.session_variables where variable_name='innodb_thread_sleep_delay';
+
+#
+# show that it's writable
+#
+set global innodb_thread_sleep_delay=10;
+select @@global.innodb_thread_sleep_delay;
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+select * from information_schema.session_variables where variable_name='innodb_thread_sleep_delay';
+--error ER_GLOBAL_VARIABLE
+set session innodb_thread_sleep_delay=1;
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_thread_sleep_delay=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_thread_sleep_delay=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global innodb_thread_sleep_delay="foo";
+
+set global innodb_thread_sleep_delay=-7;
+select @@global.innodb_thread_sleep_delay;
+select * from information_schema.global_variables where variable_name='innodb_thread_sleep_delay';
+
+#
+# cleanup
+#
+SET @@global.innodb_thread_sleep_delay = @start_global_value;
+SELECT @@global.innodb_thread_sleep_delay;
diff --git a/mysql-test/suite/sys_vars/t/innodb_use_sys_malloc_basic.test b/mysql-test/suite/sys_vars/t/innodb_use_sys_malloc_basic.test
new file mode 100644
index 00000000000..21f3e904547
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_use_sys_malloc_basic.test
@@ -0,0 +1,28 @@
+
+#
+# 2010-01-27 OBN - Added
+#
+
+--source include/have_innodb.inc
+
+#
+# show the global and session values;
+#
+--echo Valid values are 'ON' and 'OFF'
+select @@global.innodb_adaptive_flushing in (0, 1);
+select @@global.innodb_use_sys_malloc;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_use_sys_malloc;
+show global variables like 'innodb_use_sys_malloc';
+show session variables like 'innodb_use_sys_malloc';
+select * from information_schema.global_variables where variable_name='innodb_use_sys_malloc';
+select * from information_schema.session_variables where variable_name='innodb_use_sys_malloc';
+
+#
+# show that it's read-only
+#
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set global innodb_use_sys_malloc=1;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set session innodb_use_sys_malloc=1;
+
diff --git a/mysql-test/suite/sys_vars/t/innodb_version_basic.test b/mysql-test/suite/sys_vars/t/innodb_version_basic.test
new file mode 100644
index 00000000000..6ee2adf6cf9
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_version_basic.test
@@ -0,0 +1,28 @@
+
+#
+# 2010-01-27 OBN - Added
+#
+
+--source include/have_innodb.inc
+
+#
+# show the global and session values;
+#
+--let $inno_ver= `select @@global.innodb_version`
+--replace_result $inno_ver x.y.z
+select @@global.innodb_version;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_version;
+--echo show global variables like 'innodb_version' disabled so to not change with every version;
+--echo show session variables like 'innodb_version' disabled so to not change with every version;
+select VARIABLE_VALUE=@@global.innodb_version from information_schema.global_variables where variable_name='innodb_version';
+select VARIABLE_VALUE=@@global.innodb_version from information_schema.session_variables where variable_name='innodb_version';
+
+#
+# show that it's read-only
+#
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set global innodb_version=1;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set session innodb_version=1;
+
diff --git a/mysql-test/suite/sys_vars/t/innodb_write_io_threads_basic.test b/mysql-test/suite/sys_vars/t/innodb_write_io_threads_basic.test
new file mode 100644
index 00000000000..8efa6576a66
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/innodb_write_io_threads_basic.test
@@ -0,0 +1,26 @@
+
+#
+# 2010-01-27 OBN - Added (this variable is also covered in innodb_file_io_threads_basic.test)
+#
+
+--source include/have_innodb.inc
+
+#
+# show the global and session values;
+#
+select @@global.innodb_write_io_threads;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.innodb_write_io_threads;
+show global variables like 'innodb_write_io_threads';
+show session variables like 'innodb_write_io_threads';
+select * from information_schema.global_variables where variable_name='innodb_write_io_threads';
+select * from information_schema.session_variables where variable_name='innodb_write_io_threads';
+
+#
+# show that it's read-only
+#
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set global innodb_write_io_threads=1;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+set session innodb_write_io_threads=1;
+
diff --git a/mysql-test/suite/sys_vars/t/last_insert_id_basic.test b/mysql-test/suite/sys_vars/t/last_insert_id_basic.test
index a2e0116f11d..ca971c660ca 100644
--- a/mysql-test/suite/sys_vars/t/last_insert_id_basic.test
+++ b/mysql-test/suite/sys_vars/t/last_insert_id_basic.test
@@ -2,6 +2,8 @@
#
# exists as a session only
#
+# 2010-01-20 OBN - Added check for variable value matching I_S tables
+#
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@global.last_insert_id;
select @@session.last_insert_id;
@@ -13,10 +15,16 @@ select * from information_schema.session_variables where variable_name='last_ins
#
# show that it's writable
#
-set session last_insert_id=1;
-select @@session.last_insert_id;
--error ER_LOCAL_VARIABLE
-set global last_insert_id=1;
+set global last_insert_id=99;
+set session last_insert_id=42;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@global.last_insert_id;
+select @@session.last_insert_id;
+show global variables like 'last_insert_id';
+show session variables like 'last_insert_id';
+select * from information_schema.global_variables where variable_name='last_insert_id';
+select * from information_schema.session_variables where variable_name='last_insert_id';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/lc_messages_basic.test b/mysql-test/suite/sys_vars/t/lc_messages_basic.test
index f8a25738285..a76381e8cb4 100644
--- a/mysql-test/suite/sys_vars/t/lc_messages_basic.test
+++ b/mysql-test/suite/sys_vars/t/lc_messages_basic.test
@@ -1,3 +1,8 @@
+#
+# 2010-01-20 OBN - Added check for variable value matching I_S tables
+#
+
+
SET @start_global_value = @@global.lc_messages;
SELECT @start_global_value;
@@ -19,9 +24,11 @@ select @@global.lc_messages;
set session lc_messages=2;
select @@session.lc_messages;
set global lc_messages="en_US";
-select @@global.lc_messages;
set session lc_messages="en_GB";
+select @@global.lc_messages;
select @@session.lc_messages;
+select * from information_schema.global_variables where variable_name='lc_messages';
+select * from information_schema.session_variables where variable_name='lc_messages';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/lock_wait_timeout_basic.test b/mysql-test/suite/sys_vars/t/lock_wait_timeout_basic.test
new file mode 100644
index 00000000000..770bda0e053
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/lock_wait_timeout_basic.test
@@ -0,0 +1,213 @@
+############## mysql-test\t\lock_wait_timeout_basic.test #######################
+# #
+# Variable Name: lock_wait_timeout #
+# Scope: GLOBAL & SESSION #
+# Access Type: Dynamic #
+# Data Type: Numeric #
+# Default Value: 1 #
+# Range: 1 - 31536000 #
+# #
+# #
+# Creation Date: 2010-02-08 #
+# Author: Jon Olav Hauglid #
+# #
+# Description: Test Cases of Dynamic System Variable "lock_wait_timeout" #
+# that checks behavior of this variable in the following ways #
+# * Default Value #
+# * Valid & Invalid values #
+# * Scope & Access method #
+# * Data Integrity #
+# #
+# Reference: http://dev.mysql.com/doc/refman/5.5/en/ #
+# server-system-variables.html#option_mysqld_lock-wait-timeout #
+# #
+################################################################################
+
+--source include/load_sysvars.inc
+
+#####################################################################
+# START OF lock_wait_timeout TESTS #
+#####################################################################
+
+#############################################################
+# Save initial value #
+#############################################################
+
+SET @start_global_value = @@global.lock_wait_timeout;
+SELECT @start_global_value;
+SET @start_session_value = @@session.lock_wait_timeout;
+SELECT @start_session_value;
+
+
+--echo '#--------------------FN_DYNVARS_002_01-------------------------#'
+#####################################################################
+# Display the DEFAULT value of lock_wait_timeout #
+#####################################################################
+
+SET @@global.lock_wait_timeout = 100;
+SET @@global.lock_wait_timeout = DEFAULT;
+SELECT @@global.lock_wait_timeout;
+
+SET @@session.lock_wait_timeout = 200;
+SET @@session.lock_wait_timeout = DEFAULT;
+SELECT @@session.lock_wait_timeout;
+
+
+--echo '#--------------------FN_DYNVARS_002_02-------------------------#'
+#####################################################################
+# Check the DEFAULT value of lock_wait_timeout #
+#####################################################################
+
+SET @@global.lock_wait_timeout = @start_global_value;
+SELECT @@global.lock_wait_timeout = 31536000;
+SET @@session.lock_wait_timeout = @start_session_value;
+SELECT @@session.lock_wait_timeout = 31536000;
+
+
+--echo '#--------------------FN_DYNVARS_002_03-------------------------#'
+###############################################################################
+# Change the value of lock_wait_timeout to a valid value for GLOBAL Scope #
+###############################################################################
+
+SET @@global.lock_wait_timeout = 1;
+SELECT @@global.lock_wait_timeout;
+SET @@global.lock_wait_timeout = 60020;
+SELECT @@global.lock_wait_timeout;
+SET @@global.lock_wait_timeout = 65535;
+SELECT @@global.lock_wait_timeout;
+
+
+--echo '#--------------------FN_DYNVARS_002_04-------------------------#'
+###############################################################################
+# Change the value of lock_wait_timeout to a valid value for SESSION Scope #
+###############################################################################
+
+SET @@session.lock_wait_timeout = 1;
+SELECT @@session.lock_wait_timeout;
+SET @@session.lock_wait_timeout = 50050;
+SELECT @@session.lock_wait_timeout;
+SET @@session.lock_wait_timeout = 65535;
+SELECT @@session.lock_wait_timeout;
+
+
+--echo '#------------------FN_DYNVARS_002_05-----------------------#'
+#################################################################
+# Change the value of lock_wait_timeout to an invalid value #
+#################################################################
+# for global scope
+SET @@global.lock_wait_timeout = 0;
+SELECT @@global.lock_wait_timeout;
+SET @@global.lock_wait_timeout = -1024;
+SELECT @@global.lock_wait_timeout;
+SET @@global.lock_wait_timeout = 31536001;
+SELECT @@global.lock_wait_timeout;
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@global.lock_wait_timeout = ON;
+SELECT @@global.lock_wait_timeout;
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@global.lock_wait_timeout = OFF;
+SELECT @@global.lock_wait_timeout;
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@global.lock_wait_timeout = test;
+SELECT @@global.lock_wait_timeout;
+# for session scope
+SET @@session.lock_wait_timeout = 0;
+SELECT @@session.lock_wait_timeout;
+SET @@session.lock_wait_timeout = -2;
+SELECT @@session.lock_wait_timeout;
+SET @@session.lock_wait_timeout = 31537000;
+SELECT @@session.lock_wait_timeout;
+
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@session.lock_wait_timeout = ON;
+SELECT @@session.lock_wait_timeout;
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@session.lock_wait_timeout = OFF;
+SELECT @@session.lock_wait_timeout;
+--Error ER_WRONG_TYPE_FOR_VAR
+SET @@session.lock_wait_timeout = test;
+SELECT @@session.lock_wait_timeout;
+
+
+
+--echo '#------------------FN_DYNVARS_002_06-----------------------#'
+####################################################################
+# Check if the value in GLOBAL Table matches value in variable #
+####################################################################
+
+SELECT @@global.lock_wait_timeout = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lock_wait_timeout';
+
+
+--echo '#------------------FN_DYNVARS_002_07-----------------------#'
+####################################################################
+# Check if the value in SESSION Table matches value in variable #
+####################################################################
+
+SELECT @@session.lock_wait_timeout = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
+WHERE VARIABLE_NAME='lock_wait_timeout';
+
+
+--echo '#------------------FN_DYNVARS_002_08-----------------------#'
+####################################################################
+# Check if TRUE and FALSE values can be used on variable #
+####################################################################
+
+SET @@global.lock_wait_timeout = TRUE;
+SELECT @@global.lock_wait_timeout;
+SET @@global.lock_wait_timeout = FALSE;
+SELECT @@global.lock_wait_timeout;
+
+
+--echo '#---------------------FN_DYNVARS_001_09----------------------#'
+###############################################################################
+# Check if global and session variables are independant of each other #
+###############################################################################
+
+SET @@global.lock_wait_timeout = 10;
+SET @@session.lock_wait_timeout = 11;
+SELECT @@lock_wait_timeout = @@global.lock_wait_timeout;
+
+
+--echo '#---------------------FN_DYNVARS_001_10----------------------#'
+##############################################################################
+# Check if accessing variable with SESSION,LOCAL and without SCOPE points #
+# to same session variable #
+##############################################################################
+
+SET @@lock_wait_timeout = 100;
+SELECT @@lock_wait_timeout = @@local.lock_wait_timeout;
+SELECT @@local.lock_wait_timeout = @@session.lock_wait_timeout;
+
+
+--echo '#---------------------FN_DYNVARS_001_11----------------------#'
+###############################################################################
+# Check if lock_wait_timeout can be accessed with and without @@ sign #
+###############################################################################
+
+SET lock_wait_timeout = 1;
+SELECT @@lock_wait_timeout;
+--Error ER_UNKNOWN_TABLE
+SELECT local.lock_wait_timeout;
+--Error ER_UNKNOWN_TABLE
+SELECT session.lock_wait_timeout;
+--Error ER_BAD_FIELD_ERROR
+SELECT lock_wait_timeout = @@session.lock_wait_timeout;
+
+
+####################################
+# Restore initial value #
+####################################
+
+SET @@global.lock_wait_timeout = @start_global_value;
+SELECT @@global.lock_wait_timeout;
+SET @@session.lock_wait_timeout = @start_session_value;
+SELECT @@session.lock_wait_timeout;
+
+
+###################################################
+# END OF lock_wait_timeout TESTS #
+###################################################
+
diff --git a/mysql-test/suite/sys_vars/t/log_error_func.cnf b/mysql-test/suite/sys_vars/t/log_error_func.cnf
new file mode 100644
index 00000000000..7a030b5518d
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/log_error_func.cnf
@@ -0,0 +1,5 @@
+# Use default setting for mysqld processes
+!include include/default_mysqld.cnf
+
+[mysqld.1]
+log-error=some_random_name5435413
diff --git a/mysql-test/suite/sys_vars/t/log_error_func.test b/mysql-test/suite/sys_vars/t/log_error_func.test
new file mode 100644
index 00000000000..1cd45a54ff7
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/log_error_func.test
@@ -0,0 +1,20 @@
+# Test for BUG#51215 "log-error partially works with version 5.5"
+# when --log-error is used without argument
+
+# check displayed value. We can check only the base name, the rest
+# depends on paths, symbolic links, --vardir, etc...
+select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
+select instr(@err_log, "some_random_name5435413.err")>0;
+
+# Check file's existence. The displayed value may be relative or not.
+let $err_log=`select @err_log`;
+let $err_log_relative=`select instr(@err_log, ".")=1`;
+if ($err_log_relative)
+{
+ let $MYSQLD_DATADIR= `SELECT @@datadir`;
+ file_exists $MYSQLD_DATADIR/$err_log;
+}
+if (!$err_log_relative)
+{
+ file_exists $err_log;
+}
diff --git a/mysql-test/suite/sys_vars/t/log_error_func2.cnf b/mysql-test/suite/sys_vars/t/log_error_func2.cnf
new file mode 100644
index 00000000000..ff7e8f7a101
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/log_error_func2.cnf
@@ -0,0 +1,5 @@
+# Use default setting for mysqld processes
+!include include/default_mysqld.cnf
+
+[mysqld.1]
+log-error
diff --git a/mysql-test/suite/sys_vars/t/log_error_func2.test b/mysql-test/suite/sys_vars/t/log_error_func2.test
new file mode 100644
index 00000000000..e9f91e9c032
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/log_error_func2.test
@@ -0,0 +1,20 @@
+# Test for BUG#51215 "log-error partially works with version 5.5"
+# when --log-error is used without argument
+
+# check displayed value. We can check only the suffix, because
+# the rest depends on paths, symbolic links, --vardir, etc...
+select (@err_log:=variable_value)*0 from information_schema.global_variables where variable_name="log_error";
+select instr(@err_log, ".err")>0;
+
+# Check file's existence. The displayed value may be relative or not.
+let $err_log=`select @err_log`;
+let $err_log_relative=`select instr(@err_log, ".")=1`;
+if ($err_log_relative)
+{
+ let $MYSQLD_DATADIR= `SELECT @@datadir`;
+ file_exists $MYSQLD_DATADIR/$err_log;
+}
+if (!$err_log_relative)
+{
+ file_exists $err_log;
+}
diff --git a/mysql-test/suite/sys_vars/t/log_error_func3.test b/mysql-test/suite/sys_vars/t/log_error_func3.test
new file mode 100644
index 00000000000..c6b076f39fb
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/log_error_func3.test
@@ -0,0 +1,5 @@
+# Test for BUG#51215 "log-error partially works with version 5.5"
+# when --log-error is not used
+
+# check displayed value. Should be empty.
+select variable_value from information_schema.global_variables where variable_name="log_error";
diff --git a/mysql-test/suite/sys_vars/t/log_slow_queries_basic.test b/mysql-test/suite/sys_vars/t/log_slow_queries_basic.test
index 95dda5b73c9..22fe4dfaa6e 100644
--- a/mysql-test/suite/sys_vars/t/log_slow_queries_basic.test
+++ b/mysql-test/suite/sys_vars/t/log_slow_queries_basic.test
@@ -11,7 +11,7 @@
# Creation Date: 2008-03-16 #
# Author: Salman Rawala #
# #
-# Description: Test Cases of Dynamic System Variable "log_slow_queries" #
+# Description: Test Cases of Dynamic System Variable "log_slow_queries" #
# that checks behavior of this variable in the following ways #
# * Default Value #
# * Valid & Invalid values #
@@ -21,6 +21,10 @@
# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
# server-options.html#option_mysqld_event-scheduler #
# #
+# #
+# 2010-01-20 OBN - Added check for variable value matching I_S tables after #
+# variable value change #
+# #
################################################################################
--source include/load_sysvars.inc
@@ -116,8 +120,14 @@ WHERE VARIABLE_NAME='log_slow_queries';
SET @@global.log_slow_queries = 0;
SELECT @@global.log_slow_queries;
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
SET @@global.log_slow_queries = 1;
SELECT @@global.log_slow_queries;
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
--echo '#---------------------FN_DYNVARS_004_07----------------------#'
###################################################################
@@ -126,8 +136,14 @@ SELECT @@global.log_slow_queries;
SET @@global.log_slow_queries = TRUE;
SELECT @@global.log_slow_queries;
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
SET @@global.log_slow_queries = FALSE;
SELECT @@global.log_slow_queries;
+SELECT IF(@@global.log_slow_queries, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='log_slow_queries';
--echo '#---------------------FN_DYNVARS_004_08----------------------#'
##############################################################################
diff --git a/mysql-test/suite/sys_vars/t/lower_case_file_system_basic.test b/mysql-test/suite/sys_vars/t/lower_case_file_system_basic.test
index 6c15f188880..6c2af693128 100644
--- a/mysql-test/suite/sys_vars/t/lower_case_file_system_basic.test
+++ b/mysql-test/suite/sys_vars/t/lower_case_file_system_basic.test
@@ -1,17 +1,25 @@
#
# only global
#
+# 2010-01-20 OBN - Modified to include check for valid values
+# - Added check for variable value matching I_S tables
+#
select @@global.lower_case_file_system=2;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@session.lower_case_file_system;
---replace_column 2 #
-show global variables like 'lower_case_file_system';
---replace_column 2 #
-show session variables like 'lower_case_file_system';
---replace_column 2 #
-select * from information_schema.global_variables where variable_name='lower_case_file_system';
---replace_column 2 #
-select * from information_schema.session_variables where variable_name='lower_case_file_system';
+
+# Show variable has a valid value
+SELECT @@global.lower_case_file_system in (0,1);
+
+# Show that value of the variable matches the value in the GLOBAL I_S table
+SELECT IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_file_system';
+
+# Show that value of the variable matches the value in the SESSION I_S table
+SELECT IF(@@global.lower_case_file_system, "ON", "OFF") = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.SESSION_VARIABLES
+WHERE VARIABLE_NAME='lower_case_file_system';
#
# show that it's read-only
diff --git a/mysql-test/suite/sys_vars/t/lower_case_table_names_basic.test b/mysql-test/suite/sys_vars/t/lower_case_table_names_basic.test
index 8d6a3bb5ca6..eaa6c95974e 100644
--- a/mysql-test/suite/sys_vars/t/lower_case_table_names_basic.test
+++ b/mysql-test/suite/sys_vars/t/lower_case_table_names_basic.test
@@ -1,17 +1,26 @@
#
# only global
#
+# 2010-01-20 OBN - Modified to include check for valid values
+# - Added check for variable value matching I_S tables
+#
+
select @@global.lower_case_table_names=20;
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@session.lower_case_table_names;
---replace_column 2 #
-show global variables like 'lower_case_table_names';
---replace_column 2 #
-show session variables like 'lower_case_table_names';
---replace_column 2 #
-select * from information_schema.global_variables where variable_name='lower_case_table_names';
---replace_column 2 #
-select * from information_schema.session_variables where variable_name='lower_case_table_names';
+
+# Show variable has a valid value
+SELECT @@global.lower_case_table_names in (0,1,2);
+
+# Show that value of the variable matches the value in the GLOBAL I_S table
+SELECT @@global.lower_case_table_names = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_table_names';
+
+# Show that value of the variable matches the value in the SESSION I_S table
+SELECT @@global.lower_case_table_names = VARIABLE_VALUE
+FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
+WHERE VARIABLE_NAME='lower_case_table_names';
#
# show that it's read-only
diff --git a/mysql-test/suite/sys_vars/t/max_join_size_basic.test b/mysql-test/suite/sys_vars/t/max_join_size_basic.test
index 7566ab11520..bbe13457ee7 100644
--- a/mysql-test/suite/sys_vars/t/max_join_size_basic.test
+++ b/mysql-test/suite/sys_vars/t/max_join_size_basic.test
@@ -1,3 +1,11 @@
+
+
+#
+# 2010-01-20 - OBN - Added check for variable value sameas I_S table
+# after variable value change
+#
+
+
SET @start_global_value = @@global.max_join_size;
SELECT @start_global_value;
@@ -15,9 +23,13 @@ select * from information_schema.session_variables where variable_name='max_join
# show that it's writable
#
set global max_join_size=10;
-select @@global.max_join_size;
set session max_join_size=20;
+select @@global.max_join_size;
select @@session.max_join_size;
+show global variables like 'max_join_size';
+show session variables like 'max_join_size';
+select * from information_schema.global_variables where variable_name='max_join_size';
+select * from information_schema.session_variables where variable_name='max_join_size';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/old_alter_table_basic.test b/mysql-test/suite/sys_vars/t/old_alter_table_basic.test
index 32d0f45ad25..cce180fea67 100644
--- a/mysql-test/suite/sys_vars/t/old_alter_table_basic.test
+++ b/mysql-test/suite/sys_vars/t/old_alter_table_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-20 OBN - added check of I_S values after variable value changed
+#
+
SET @start_global_value = @@global.old_alter_table;
SELECT @start_global_value;
@@ -15,9 +20,13 @@ select * from information_schema.session_variables where variable_name='old_alte
# show that it's writable
#
set global old_alter_table=1;
-select @@global.old_alter_table;
set session old_alter_table=ON;
+select @@global.old_alter_table;
select @@session.old_alter_table;
+show global variables like 'old_alter_table';
+show session variables like 'old_alter_table';
+select * from information_schema.global_variables where variable_name='old_alter_table';
+select * from information_schema.session_variables where variable_name='old_alter_table';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/optimizer_switch_basic.test b/mysql-test/suite/sys_vars/t/optimizer_switch_basic.test
index 32a77c90b34..4267b3726aa 100644
--- a/mysql-test/suite/sys_vars/t/optimizer_switch_basic.test
+++ b/mysql-test/suite/sys_vars/t/optimizer_switch_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-20 OBN Added check for I_S values after variable value changed
+#
+
SET @start_global_value = @@global.optimizer_switch;
SELECT @start_global_value;
@@ -15,13 +20,17 @@ select * from information_schema.session_variables where variable_name='optimize
# show that it's writable
#
set global optimizer_switch=10;
-select @@global.optimizer_switch;
set session optimizer_switch=5;
+select @@global.optimizer_switch;
select @@session.optimizer_switch;
set global optimizer_switch="index_merge_sort_union=on";
-select @@global.optimizer_switch;
set session optimizer_switch="index_merge=off";
+select @@global.optimizer_switch;
select @@session.optimizer_switch;
+show global variables like 'optimizer_switch';
+show session variables like 'optimizer_switch';
+select * from information_schema.global_variables where variable_name='optimizer_switch';
+select * from information_schema.session_variables where variable_name='optimizer_switch';
set session optimizer_switch="default";
select @@session.optimizer_switch;
diff --git a/mysql-test/suite/sys_vars/t/profiling_basic.test b/mysql-test/suite/sys_vars/t/profiling_basic.test
index aef56e50900..da54d5a207d 100644
--- a/mysql-test/suite/sys_vars/t/profiling_basic.test
+++ b/mysql-test/suite/sys_vars/t/profiling_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-20 OBN - Added check for I_S values after variable value change
+#
+
--source include/have_profiling.inc
SET @start_global_value = @@global.profiling;
@@ -17,9 +22,21 @@ select * from information_schema.session_variables where variable_name='profilin
# show that it's writable
#
set global profiling=1;
-select @@global.profiling;
set session profiling=ON;
+select @@global.profiling;
+select @@session.profiling;
+show global variables like 'profiling';
+show session variables like 'profiling';
+select * from information_schema.global_variables where variable_name='profiling';
+select * from information_schema.session_variables where variable_name='profiling';
+set global profiling=0;
+set session profiling=OFF;
+select @@global.profiling;
select @@session.profiling;
+show global variables like 'profiling';
+show session variables like 'profiling';
+select * from information_schema.global_variables where variable_name='profiling';
+select * from information_schema.session_variables where variable_name='profiling';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/profiling_history_size_basic.test b/mysql-test/suite/sys_vars/t/profiling_history_size_basic.test
index 01d3533be3d..26fdc55328b 100644
--- a/mysql-test/suite/sys_vars/t/profiling_history_size_basic.test
+++ b/mysql-test/suite/sys_vars/t/profiling_history_size_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-20 OBN Added check for variable and I_S values after incorrect change attempt
+#
+
--source include/have_profiling.inc
SET @start_global_value = @@global.profiling_history_size;
@@ -17,9 +22,13 @@ select * from information_schema.session_variables where variable_name='profilin
# show that it's writable
#
set global profiling_history_size=10;
-select @@global.profiling_history_size;
set session profiling_history_size=20;
+select @@global.profiling_history_size;
select @@session.profiling_history_size;
+show global variables like 'profiling_history_size';
+show session variables like 'profiling_history_size';
+select * from information_schema.global_variables where variable_name='profiling_history_size';
+select * from information_schema.session_variables where variable_name='profiling_history_size';
#
# incorrect assignments
diff --git a/mysql-test/suite/sys_vars/t/pseudo_thread_id_basic.test b/mysql-test/suite/sys_vars/t/pseudo_thread_id_basic.test
index a948f2a8ff0..fef3e906869 100644
--- a/mysql-test/suite/sys_vars/t/pseudo_thread_id_basic.test
+++ b/mysql-test/suite/sys_vars/t/pseudo_thread_id_basic.test
@@ -2,21 +2,37 @@
#
# exists as a session only
#
+# 2010-01-20 OBN - Added check for session I_S values being equal to variable value
+# - Added check for session variable value being numberic
+#
+
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@global.pseudo_thread_id;
-select @@session.pseudo_thread_id=0;
+
+# Check the variable has a valid numeric value (assumed to be less then 10000)
+select @@session.pseudo_thread_id between 1 and 10000;
+
+--echo should be empty
show global variables like 'pseudo_thread_id';
+
+# Check that shows returns a value (can't confirm the actual one)
--replace_column 2 #
show session variables like 'pseudo_thread_id';
+
+# Global I_S variable is empty
+--echo should be empty
select * from information_schema.global_variables where variable_name='pseudo_thread_id';
---replace_column 2 #
-select * from information_schema.session_variables where variable_name='pseudo_thread_id';
+
+# Check that I_S value is same as variable
+select @@session.pseudo_thread_id = variable_value from information_schema.session_variables where variable_name='pseudo_thread_id';
#
# show that it's writable
#
-set session pseudo_thread_id=1;
+set session pseudo_thread_id=42;
select @@session.pseudo_thread_id;
+select * from information_schema.global_variables where variable_name='pseudo_thread_id';
+select variable_value from information_schema.session_variables where variable_name='pseudo_thread_id';
--error ER_LOCAL_VARIABLE
set global pseudo_thread_id=1;
diff --git a/mysql-test/suite/sys_vars/t/query_cache_wlock_invalidate_func.test b/mysql-test/suite/sys_vars/t/query_cache_wlock_invalidate_func.test
index e5ced59d175..a72d73105a6 100644
--- a/mysql-test/suite/sys_vars/t/query_cache_wlock_invalidate_func.test
+++ b/mysql-test/suite/sys_vars/t/query_cache_wlock_invalidate_func.test
@@ -60,6 +60,8 @@ INSERT INTO t1 VALUES(1, 'val1');
INSERT INTO t1 VALUES(2, 'val2');
INSERT INTO t1 VALUES(3, 'val3');
+CREATE VIEW v1 AS SELECT * FROM t1;
+
#
# Clearing the query cache and setting up cache size
#
@@ -99,7 +101,7 @@ SELECT * FROM t1;
SHOW STATUS LIKE 'Qcache_queries_in_cache';
--echo 1 Expected
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
UNLOCK TABLES;
@@ -127,7 +129,7 @@ SELECT * FROM t1;
--echo ** Connection con0 **
connection con0;
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -139,7 +141,7 @@ send SELECT * FROM t1;
connection con0;
--echo wait until table is locked
-let $wait_condition= SELECT count(*) > 0 FROM information_schema.processlist WHERE state= 'Locked';
+let $wait_condition= SELECT count(*) > 0 FROM information_schema.processlist WHERE state= 'Table lock';
--source include/wait_condition.inc
UNLOCK TABLES;
@@ -175,7 +177,7 @@ SELECT * FROM t1;
SHOW STATUS LIKE 'Qcache_queries_in_cache';
--echo 1 Expected
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
UNLOCK TABLES;
@@ -199,7 +201,7 @@ SELECT * FROM t1;
--echo ** Connection con0 **
connection con0;
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -281,6 +283,7 @@ disconnect con0;
disconnect con1;
DROP TABLE t1;
+DROP VIEW v1;
--enable_ps_protocol
diff --git a/mysql-test/suite/sys_vars/t/rand_seed1_basic.test b/mysql-test/suite/sys_vars/t/rand_seed1_basic.test
index 79c946a3d2f..3745d2fcb1e 100644
--- a/mysql-test/suite/sys_vars/t/rand_seed1_basic.test
+++ b/mysql-test/suite/sys_vars/t/rand_seed1_basic.test
@@ -2,6 +2,8 @@
#
# exists as a session only
#
+# 2010-01-20 OBN - Added check for I_S value after variable value change
+#
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@global.rand_seed1;
select @@session.rand_seed1;
@@ -11,10 +13,12 @@ select * from information_schema.global_variables where variable_name='rand_seed
select * from information_schema.session_variables where variable_name='rand_seed1';
#
-# show that it's writable
+# show that it's writable (note value can be set but not read - returned value is zero)
#
set session rand_seed1=1;
select @@session.rand_seed1;
+select * from information_schema.global_variables where variable_name='rand_seed1';
+select * from information_schema.session_variables where variable_name='rand_seed1';
--error ER_LOCAL_VARIABLE
set global rand_seed1=1;
diff --git a/mysql-test/suite/sys_vars/t/rand_seed2_basic.test b/mysql-test/suite/sys_vars/t/rand_seed2_basic.test
index 18e2a62557c..7a5abcd340b 100644
--- a/mysql-test/suite/sys_vars/t/rand_seed2_basic.test
+++ b/mysql-test/suite/sys_vars/t/rand_seed2_basic.test
@@ -2,6 +2,9 @@
#
# exists as a session only
#
+#
+# 2010-01-20 OBN - Added check for I_S value after variable value change
+#
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
select @@global.rand_seed2;
select @@session.rand_seed2;
@@ -11,10 +14,12 @@ select * from information_schema.global_variables where variable_name='rand_seed
select * from information_schema.session_variables where variable_name='rand_seed2';
#
-# show that it's writable
+# show that it's writable (note value can be set but not read - returned value is zero)
#
set session rand_seed2=1;
select @@session.rand_seed2;
+select * from information_schema.global_variables where variable_name='rand_seed2';
+select * from information_schema.session_variables where variable_name='rand_seed2';
--error ER_LOCAL_VARIABLE
set global rand_seed2=1;
diff --git a/mysql-test/suite/sys_vars/t/relay_log_recovery_basic.test b/mysql-test/suite/sys_vars/t/relay_log_recovery_basic.test
index 57c28468bd1..a6f218a59ae 100644
--- a/mysql-test/suite/sys_vars/t/relay_log_recovery_basic.test
+++ b/mysql-test/suite/sys_vars/t/relay_log_recovery_basic.test
@@ -1,3 +1,9 @@
+
+
+#
+# 2010-01-10 - Added check for I_S values aver variable value change
+#
+
--source include/not_embedded.inc
SET @start_global_value = @@global.relay_log_recovery;
@@ -19,8 +25,12 @@ select * from information_schema.session_variables where variable_name='relay_lo
#
set global relay_log_recovery=1;
select @@global.relay_log_recovery;
+select * from information_schema.global_variables where variable_name='relay_log_recovery';
+select * from information_schema.session_variables where variable_name='relay_log_recovery';
set global relay_log_recovery=OFF;
select @@global.relay_log_recovery;
+select * from information_schema.global_variables where variable_name='relay_log_recovery';
+select * from information_schema.session_variables where variable_name='relay_log_recovery';
--error ER_GLOBAL_VARIABLE
set session relay_log_recovery=1;
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic.test
new file mode 100644
index 00000000000..43954d6441d
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_enabled_basic.test
@@ -0,0 +1,65 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
+select @@global.rpl_semi_sync_master_enabled;
+SET @start_global_value = @@global.rpl_semi_sync_master_enabled;
+
+select @@global.rpl_semi_sync_master_enabled in (0,1);
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_enabled;
+show global variables like 'rpl_semi_sync_master_enabled';
+show session variables like 'rpl_semi_sync_master_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_master_enabled=0;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_enabled=0;
+select @@global.rpl_semi_sync_master_enabled;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_enabled;
+show global variables like 'rpl_semi_sync_master_enabled';
+show session variables like 'rpl_semi_sync_master_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+set global rpl_semi_sync_master_enabled=1;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_enabled=1;
+select @@global.rpl_semi_sync_master_enabled;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_enabled;
+show global variables like 'rpl_semi_sync_master_enabled';
+show session variables like 'rpl_semi_sync_master_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_enabled';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_enabled=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_enabled=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global rpl_semi_sync_master_enabled="some text";
+
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_master_enabled = @start_global_value;
+select @@global.rpl_semi_sync_master_enabled;
+UNINSTALL PLUGIN rpl_semi_sync_master;
+
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic.test
new file mode 100644
index 00000000000..0d085412a00
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_timeout_basic.test
@@ -0,0 +1,55 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
+select @@global.rpl_semi_sync_master_timeout;
+SET @start_global_value = @@global.rpl_semi_sync_master_timeout;
+
+--echo Assuming value will not be more then 100 sec
+select @@global.rpl_semi_sync_master_timeout between 1 and 100000;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_timeout;
+show global variables like 'rpl_semi_sync_master_timeout';
+show session variables like 'rpl_semi_sync_master_timeout';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_timeout';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_timeout';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_master_timeout=42;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_timeout=99;
+select @@global.rpl_semi_sync_master_timeout;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_timeout;
+show global variables like 'rpl_semi_sync_master_timeout';
+show session variables like 'rpl_semi_sync_master_timeout';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_timeout';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_timeout';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_timeout=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_timeout=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_timeout="some text";
+
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_master_timeout = @start_global_value;
+select @@global.rpl_semi_sync_master_timeout;
+UNINSTALL PLUGIN rpl_semi_sync_master;
+
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic.test
new file mode 100644
index 00000000000..c3f538f8dba
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_trace_level_basic.test
@@ -0,0 +1,63 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
+select @@global.rpl_semi_sync_master_trace_level;
+SET @start_global_value = @@global.rpl_semi_sync_master_trace_level;
+
+select @@global.rpl_semi_sync_master_trace_level in (1,16,32,64);
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_trace_level;
+show global variables like 'rpl_semi_sync_master_trace_level';
+show session variables like 'rpl_semi_sync_master_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_master_trace_level=16;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_trace_level=99;
+select @@global.rpl_semi_sync_master_trace_level;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_trace_level;
+show global variables like 'rpl_semi_sync_master_trace_level';
+show session variables like 'rpl_semi_sync_master_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+
+--echo NOTE: Value can also be set to values that are combinations of values
+set global rpl_semi_sync_master_trace_level=42;
+select @@global.rpl_semi_sync_master_trace_level;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_trace_level;
+show global variables like 'rpl_semi_sync_master_trace_level';
+show session variables like 'rpl_semi_sync_master_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_trace_level';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_trace_level=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_trace_level=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_trace_level="some text";
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_master_trace_level = @start_global_value;
+select @@global.rpl_semi_sync_master_trace_level;
+UNINSTALL PLUGIN rpl_semi_sync_master;
+
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic.test
new file mode 100644
index 00000000000..1db772dec61
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_master_wait_no_slave_basic.test
@@ -0,0 +1,65 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN';
+select @@global.rpl_semi_sync_master_wait_no_slave;
+SET @start_global_value = @@global.rpl_semi_sync_master_wait_no_slave;
+
+select @@global.rpl_semi_sync_master_wait_no_slave in (0,1);
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_wait_no_slave;
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_master_wait_no_slave=0;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_wait_no_slave=0;
+select @@global.rpl_semi_sync_master_wait_no_slave;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_wait_no_slave;
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+set global rpl_semi_sync_master_wait_no_slave=1;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_master_wait_no_slave=1;
+select @@global.rpl_semi_sync_master_wait_no_slave;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_master_wait_no_slave;
+show global variables like 'rpl_semi_sync_master_wait_no_slave';
+show session variables like 'rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_master_wait_no_slave';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_wait_no_slave=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_master_wait_no_slave=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global rpl_semi_sync_master_wait_no_slave="some text";
+
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_master_wait_no_slave = @start_global_value;
+select @@global.rpl_semi_sync_master_wait_no_slave;
+UNINSTALL PLUGIN rpl_semi_sync_master;
+
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic.test
new file mode 100644
index 00000000000..565139456db
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_enabled_basic.test
@@ -0,0 +1,66 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_slave SONAME '$SEMISYNC_SLAVE_PLUGIN';
+select @@global.rpl_semi_sync_slave_enabled;
+SET @start_global_value = @@global.rpl_semi_sync_slave_enabled;
+
+select @@global.rpl_semi_sync_slave_enabled in (0,1);
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_enabled;
+show global variables like 'rpl_semi_sync_slave_enabled';
+show session variables like 'rpl_semi_sync_slave_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_slave_enabled=0;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_slave_enabled=0;
+select @@global.rpl_semi_sync_slave_enabled;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_enabled;
+show global variables like 'rpl_semi_sync_slave_enabled';
+show session variables like 'rpl_semi_sync_slave_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+set global rpl_semi_sync_slave_enabled=1;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_slave_enabled=1;
+select @@global.rpl_semi_sync_slave_enabled;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_enabled;
+show global variables like 'rpl_semi_sync_slave_enabled';
+show session variables like 'rpl_semi_sync_slave_enabled';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_enabled';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_enabled';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_slave_enabled=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_slave_enabled=1e1;
+--error ER_WRONG_VALUE_FOR_VAR
+set global rpl_semi_sync_slave_enabled="some text";
+--error ER_WRONG_VALUE_FOR_VAR
+
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_slave_enabled = @start_global_value;
+select @@global.rpl_semi_sync_slave_enabled;
+UNINSTALL PLUGIN rpl_semi_sync_slave;
+
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic-master.opt b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic-master.opt
new file mode 100644
index 00000000000..58029d28ace
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic-master.opt
@@ -0,0 +1 @@
+$SEMISYNC_PLUGIN_OPT
diff --git a/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic.test b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic.test
new file mode 100644
index 00000000000..ac88593f02f
--- /dev/null
+++ b/mysql-test/suite/sys_vars/t/rpl_semi_sync_slave_trace_level_basic.test
@@ -0,0 +1,63 @@
+
+#
+# exists as a global only
+#
+# 2010-01-21 OBN - Added
+#
+source include/not_embedded.inc;
+source include/have_semisync_plugin.inc;
+# The following is to prevent a mis-match on windows that has the name of of the lib ending with 'dll'
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN rpl_semi_sync_slave SONAME '$SEMISYNC_SLAVE_PLUGIN';
+select @@global.rpl_semi_sync_slave_trace_level;
+SET @start_global_value = @@global.rpl_semi_sync_slave_trace_level;
+
+select @@global.rpl_semi_sync_slave_trace_level in (1,16,32,64);
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_trace_level;
+show global variables like 'rpl_semi_sync_slave_trace_level';
+show session variables like 'rpl_semi_sync_slave_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+
+#
+# show that it's writable
+#
+set global rpl_semi_sync_slave_trace_level=16;
+--error ER_GLOBAL_VARIABLE
+set session rpl_semi_sync_slave_trace_level=99;
+select @@global.rpl_semi_sync_slave_trace_level;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_trace_level;
+show global variables like 'rpl_semi_sync_slave_trace_level';
+show session variables like 'rpl_semi_sync_slave_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+
+--echo NOTE: Value can also be set to values that are combinations of values
+set global rpl_semi_sync_slave_trace_level=42;
+select @@global.rpl_semi_sync_slave_trace_level;
+--error ER_INCORRECT_GLOBAL_LOCAL_VAR
+select @@session.rpl_semi_sync_slave_trace_level;
+show global variables like 'rpl_semi_sync_slave_trace_level';
+show session variables like 'rpl_semi_sync_slave_trace_level';
+select * from information_schema.global_variables where variable_name='rpl_semi_sync_slave_trace_level';
+select * from information_schema.session_variables where variable_name='rpl_semi_sync_slave_trace_level';
+
+#
+# incorrect types
+#
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_slave_trace_level=1.1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_slave_trace_level=1e1;
+--error ER_WRONG_TYPE_FOR_VAR
+set global rpl_semi_sync_slave_trace_level="some text";
+
+#
+# Cleanup
+#
+SET @@global.rpl_semi_sync_slave_trace_level = @start_global_value;
+select @@global.rpl_semi_sync_slave_trace_level;
+UNINSTALL PLUGIN rpl_semi_sync_slave;
+
diff --git a/mysql-test/suite/sys_vars/t/shared_memory_base_name_basic.test b/mysql-test/suite/sys_vars/t/shared_memory_base_name_basic.test
index 591f3cec5e5..24418a78687 100644
--- a/mysql-test/suite/sys_vars/t/shared_memory_base_name_basic.test
+++ b/mysql-test/suite/sys_vars/t/shared_memory_base_name_basic.test
@@ -1,4 +1,5 @@
--source include/windows.inc
+--source include/not_embedded.inc
#
# only global
#
diff --git a/mysql-test/suite/sys_vars/t/shared_memory_basic.test b/mysql-test/suite/sys_vars/t/shared_memory_basic.test
index ff2c5fad81d..57be4ef7ecd 100644
--- a/mysql-test/suite/sys_vars/t/shared_memory_basic.test
+++ b/mysql-test/suite/sys_vars/t/shared_memory_basic.test
@@ -1,4 +1,5 @@
--source include/windows.inc
+--source include/not_embedded.inc
#
# only global
#
diff --git a/mysql-test/suite/sys_vars/t/slow_query_log_func.test b/mysql-test/suite/sys_vars/t/slow_query_log_func.test
index d2653f89de4..250d5210c46 100644
--- a/mysql-test/suite/sys_vars/t/slow_query_log_func.test
+++ b/mysql-test/suite/sys_vars/t/slow_query_log_func.test
@@ -31,6 +31,27 @@ SELECT sleep(2);
SELECT count(*) > 0 FROM mysql.slow_log;
+
+#==========================================================================
+--echo 'Bug#47905 stored procedures not logged correctly to slow query log'
+#==========================================================================
+# assumes logging to table turned on with long_query_time=1 as above
+
+TRUNCATE mysql.slow_log;
+
+DELIMITER //;
+CREATE PROCEDURE p_test()
+BEGIN
+ select sleep(2);
+ select 1;
+END//
+DELIMITER ;//
+
+CALL p_test();
+SELECT count(*) > 0 FROM mysql.slow_log;
+DROP PROCEDURE p_test;
+
+
#restore
SET @@global.log_output = @global_log_output;
SET @global.slow_query_log = @global_slow_query_log;
diff --git a/mysql-test/suite/sys_vars/t/sql_log_update_basic.test b/mysql-test/suite/sys_vars/t/sql_log_update_basic.test
deleted file mode 100644
index c48840d4a81..00000000000
--- a/mysql-test/suite/sys_vars/t/sql_log_update_basic.test
+++ /dev/null
@@ -1,35 +0,0 @@
---source include/have_profiling.inc
-
-SET @start_global_value = @@global.sql_log_update;
-SELECT @start_global_value;
-
-#
-# exists as global and session
-#
-select @@global.sql_log_update;
-select @@session.sql_log_update;
-show global variables like 'sql_log_update';
-show session variables like 'sql_log_update';
-select * from information_schema.global_variables where variable_name='sql_log_update';
-select * from information_schema.session_variables where variable_name='sql_log_update';
-
-#
-# show that it's writable
-#
-set global sql_log_update=1;
-select @@global.sql_log_update;
-set session sql_log_update=ON;
-select @@session.sql_log_update;
-
-#
-# incorrect types
-#
---error ER_WRONG_TYPE_FOR_VAR
-set global sql_log_update=1.1;
---error ER_WRONG_TYPE_FOR_VAR
-set global sql_log_update=1e1;
---error ER_WRONG_VALUE_FOR_VAR
-set global sql_log_update="foo";
-
-SET @@global.sql_log_update = @start_global_value;
-SELECT @@global.sql_log_update;
diff --git a/mysql-test/suite/sys_vars/t/sql_low_priority_updates_func.test b/mysql-test/suite/sys_vars/t/sql_low_priority_updates_func.test
index 2ef6e34b0b3..03f56f1fe16 100644
--- a/mysql-test/suite/sys_vars/t/sql_low_priority_updates_func.test
+++ b/mysql-test/suite/sys_vars/t/sql_low_priority_updates_func.test
@@ -46,6 +46,7 @@ SET @session_low_priority_updates = @@SESSION.low_priority_updates;
#
CREATE TABLE t1 (a varchar(100));
+create view v1 as select * from t1;
--echo '#--------------------FN_DYNVARS_160_01-------------------------#'
#
@@ -69,7 +70,7 @@ INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -85,7 +86,7 @@ delimiter ;|
--echo ** Connection con0 **
connection con0;
-let $wait_condition = SELECT COUNT(*) > 0 FROM information_schema.processlist WHERE state='Locked' AND info LIKE 'UPDATE t1 SET a = CONCAT(a,"-updated")';
+let $wait_condition = SELECT COUNT(*) > 0 FROM information_schema.processlist WHERE state='Table lock' AND info LIKE 'UPDATE t1 SET a = CONCAT(a,"-updated")';
--source include/wait_condition.inc
--echo ** Asynchronous Execution **
@@ -101,7 +102,7 @@ delimiter ;|
--echo ** Connection default **
connection default;
-let $wait_condition= SELECT count(*) = 2 FROM information_schema.processlist WHERE state LIKE 'Locked';
+let $wait_condition= SELECT count(*) = 2 FROM information_schema.processlist WHERE state LIKE 'Table lock';
--source include/wait_condition.inc
UNLOCK TABLES;
@@ -127,6 +128,7 @@ connection con0;
SET SESSION low_priority_updates = OFF;
--echo ** Connection con1 **
connection con1;
+reap;
SET SESSION low_priority_updates = OFF;
--echo ** Connection default**
connection default;
@@ -139,7 +141,7 @@ INSERT INTO t1 VALUES('4');
INSERT INTO t1 VALUES('5');
INSERT INTO t1 VALUES('6');
-LOCK TABLE t1 WRITE;
+LOCK TABLE v1 WRITE;
--echo ** Connection con1 **
connection con1;
@@ -155,7 +157,7 @@ delimiter ;|
--echo ** Connection con0 **
connection con0;
-let $wait_condition = SELECT COUNT(*) > 0 FROM information_schema.processlist WHERE state='Locked' AND info LIKE 'UPDATE t1 SET a = CONCAT(a,"-updated")';
+let $wait_condition = SELECT COUNT(*) > 0 FROM information_schema.processlist WHERE state='Table lock' AND info LIKE 'UPDATE t1 SET a = CONCAT(a,"-updated")';
--source include/wait_condition.inc
--echo ** Asynchronous Execution **
@@ -171,7 +173,7 @@ delimiter ;|
--echo ** Connection default **
connection default;
-let $wait_condition= SELECT count(*) = 2 FROM information_schema.processlist WHERE state LIKE 'Locked';
+let $wait_condition= SELECT count(*) = 2 FROM information_schema.processlist WHERE state LIKE 'Table lock';
--source include/wait_condition.inc
UNLOCK TABLES;
@@ -238,6 +240,7 @@ connection default;
disconnect con0;
disconnect con1;
+drop view v1;
DROP TABLE t1;
SET @@GLOBAL.low_priority_updates = @global_low_priority_updates;
diff --git a/mysql-test/suite/sys_vars/t/sql_max_join_size_basic.test b/mysql-test/suite/sys_vars/t/sql_max_join_size_basic.test
index bafa11379aa..9a72846b29c 100644
--- a/mysql-test/suite/sys_vars/t/sql_max_join_size_basic.test
+++ b/mysql-test/suite/sys_vars/t/sql_max_join_size_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-20 OBN - Added check of I_S values after variable value change
+#
+
SET @start_global_value = @@global.sql_max_join_size;
SELECT @start_global_value;
@@ -15,9 +20,13 @@ select * from information_schema.session_variables where variable_name='sql_max_
# show that it's writable
#
set global sql_max_join_size=10;
-select @@global.sql_max_join_size;
set session sql_max_join_size=20;
+select @@global.sql_max_join_size;
select @@session.sql_max_join_size;
+show global variables like 'sql_max_join_size';
+show session variables like 'sql_max_join_size';
+select * from information_schema.global_variables where variable_name='sql_max_join_size';
+select * from information_schema.session_variables where variable_name='sql_max_join_size';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/sql_select_limit_basic.test b/mysql-test/suite/sys_vars/t/sql_select_limit_basic.test
index 0b941d25f42..c6bc5962205 100644
--- a/mysql-test/suite/sys_vars/t/sql_select_limit_basic.test
+++ b/mysql-test/suite/sys_vars/t/sql_select_limit_basic.test
@@ -1,3 +1,8 @@
+
+#
+# 2010-01-10 OBN - Added check for I_S values after change of variable value
+#
+
SET @start_global_value = @@global.sql_select_limit;
SELECT @start_global_value;
@@ -15,9 +20,13 @@ select * from information_schema.session_variables where variable_name='sql_sele
# show that it's writable
#
set global sql_select_limit=10;
-select @@global.sql_select_limit;
set session sql_select_limit=20;
+select @@global.sql_select_limit;
select @@session.sql_select_limit;
+show global variables like 'sql_select_limit';
+show session variables like 'sql_select_limit';
+select * from information_schema.global_variables where variable_name='sql_select_limit';
+select * from information_schema.session_variables where variable_name='sql_select_limit';
#
# incorrect types
diff --git a/mysql-test/suite/sys_vars/t/table_lock_wait_timeout_basic.test b/mysql-test/suite/sys_vars/t/table_lock_wait_timeout_basic.test
deleted file mode 100644
index f33e5660c5d..00000000000
--- a/mysql-test/suite/sys_vars/t/table_lock_wait_timeout_basic.test
+++ /dev/null
@@ -1,171 +0,0 @@
-############## mysql-test\t\table_lock_wait_timeout_basic.test ################
-# #
-# Variable Name: table_lock_wait _timeout #
-# Scope: GLOBAL #
-# Access Type: Dynamic #
-# Data Type: numeric #
-# Default Value: 50 #
-# Range: 1-1073741824 #
-# #
-# #
-# Creation Date: 2008-02-14 #
-# Author: Salman #
-# #
-# Description: Test Cases of Dynamic System Variable table_lock_wait_timeout #
-# that checks the behavior of this variable in the following ways#
-# * Default Value #
-# * Valid & Invalid values #
-# * Scope & Access method #
-# * Data Integrity #
-# #
-# Reference: http://dev.mysql.com/doc/refman/5.1/en/ #
-# server-system-variables.html#option_mysqld_table_lock_wait_timeout #
-# #
-###############################################################################
-
---source include/load_sysvars.inc
-########################################################################
-# START OF table_lock_wait_timeout TESTS #
-########################################################################
-
-
-##########################################################################
-# Saving initial value of table_lock_wait_timeout in a temporary variable#
-##########################################################################
-
-SET @start_value = @@global.table_lock_wait_timeout;
-SELECT @start_value;
-
-
---echo '#--------------------FN_DYNVARS_001_01------------------------#'
-########################################################################
-# Display the DEFAULT value of table_lock_wait_timeout #
-########################################################################
-
-SET @@global.table_lock_wait_timeout = 99;
-SET @@global.table_lock_wait_timeout = DeFAULT;
-SELECT @@global.table_lock_wait_timeout;
-
-
---echo '#---------------------FN_DYNVARS_001_02-------------------------#'
-###############################################
-# Verify default value of variable #
-###############################################
-
-SET @@global.table_lock_wait_timeout =Default;
-SELECT @@global.table_lock_wait_timeout = 50;
-
---echo '#--------------------FN_DYNVARS_001_03------------------------#'
-########################################################################
-# Change the value of table_lock_wait_timeout to a valid value #
-########################################################################
-
-
-SET @@global.table_lock_wait_timeout = 8;
-SELECT @@global.table_lock_wait_timeout ;
-
-SET @@global.table_lock_wait_timeout = 1;
-SELECT @@global.table_lock_wait_timeout ;
-SET @@global.table_lock_wait_timeout = 1073741824;
-SELECT @@global.table_lock_wait_timeout ;
-SET @@global.table_lock_wait_timeout = 18000;
-SELECT @@global.table_lock_wait_timeout ;
-SET @@global.table_lock_wait_timeout = 65535;
-SELECT @@global.table_lock_wait_timeout ;
-
-
-
---echo '#--------------------FN_DYNVARS_001_04-------------------------#'
-#########################################################################
-# Change the value of table_lock_wait_timeout to invalid value #
-#########################################################################
-
-SET @@global.table_lock_wait_timeout = -1;
-
-SET @@global.table_lock_wait_timeout= 100000000000;
-
-SET @@global.table_lock_wait_timeout= -1024;
-
-SET @@global.table_lock_wait_timeout= 0;
-
---Error ER_WRONG_TYPE_FOR_VAR
-SET @@global.table_lock_wait_timeout= 10000.01;
-
---Error ER_WRONG_TYPE_FOR_VAR
-SET @@global.table_lock_wait_timeout= ON;
---Error ER_WRONG_TYPE_FOR_VAR
-SET @@global.table_lock_wait_timeout= 'test';
-
---Error ER_WRONG_TYPE_FOR_VAR
-SET @@global.table_lock_wait_timeout= '';
-
-
---echo '#-------------------FN_DYNVARS_001_05----------------------------#'
-###########################################################################
-# Test if accessing session table_lock_wait_timeout gives error #
-###########################################################################
-
---Error ER_GLOBAL_VARIABLE
-SET @@session.table_lock_wait_timeout= 0;
-SELECT @@table_lock_wait_timeout;
-
-
---echo '#----------------------FN_DYNVARS_001_06------------------------#'
-##############################################################################
-# Check if the value in GLOBAL & SESSION Tables matches values in variable #
-##############################################################################
-
-SELECT @@global.table_lock_wait_timeout= VARIABLE_VALUE
-FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES
-WHERE VARIABLE_NAME='table_lock_wait_timeout';
-
-
---echo '#---------------------FN_DYNVARS_001_09----------------------#'
-###################################################################
-# Check if TRUE and FALSE values can be used on variable #
-###################################################################
-
-SET @@global.table_lock_wait_timeout= TRUE;
-SELECT @@global.table_lock_wait_timeout;
-
-SET @@global.table_lock_wait_timeout= FALSE;
-SELECT @@global.table_lock_wait_timeout;
-
-
---echo '#---------------------FN_DYNVARS_001_10----------------------#'
-###############################################################################
-# Check if accessing variable without SCOPE points to same global variable #
-###############################################################################
-
-SET @@global.table_lock_wait_timeout= 10;
-SELECT @@table_lock_wait_timeout= @@global.table_lock_wait_timeout;
-
-
---echo '#---------------------FN_DYNVARS_001_11----------------------#'
-###############################################################################
-# Check if table_lock_wait_timeout can be accessed with and without @@ sign #
-###############################################################################
-
---Error ER_GLOBAL_VARIABLE
-SET table_lock_wait_timeout= 8;
---Error ER_PARSE_ERROR
-SET global.table_lock_wait_timeout= 10;
---Error ER_UNKNOWN_TABLE
-SELECT global.table_lock_wait_timeout;
---Error ER_BAD_FIELD_ERROR
-SELECT table_lock_wait_timeout= @@session.table_lock_wait_timeout;
-
-
-##############################
-# Restore initial value #
-##############################
-
-SET @@global.table_lock_wait_timeout= @start_value;
-SELECT @@global.table_lock_wait_timeout;
-
-
-########################################################################
-# END OF table_lock_wait_timeout TESTS #
-########################################################################
-
-
diff --git a/mysql-test/suite/sys_vars/t/thread_cache_size_basic.test b/mysql-test/suite/sys_vars/t/thread_cache_size_basic.test
index 48a4c0797e5..22aaff6d426 100644
--- a/mysql-test/suite/sys_vars/t/thread_cache_size_basic.test
+++ b/mysql-test/suite/sys_vars/t/thread_cache_size_basic.test
@@ -1,4 +1,8 @@
+#
+# 2010-01-20 OBN - Added check of I_S values after variable value change
+#
+
SET @start_global_value = @@global.thread_cache_size;
SELECT @start_global_value;
@@ -18,6 +22,8 @@ select * from information_schema.session_variables where variable_name='thread_c
#
set global thread_cache_size=1;
select @@global.thread_cache_size;
+select * from information_schema.global_variables where variable_name='thread_cache_size';
+select * from information_schema.session_variables where variable_name='thread_cache_size';
--error ER_GLOBAL_VARIABLE
set session thread_cache_size=1;
diff --git a/mysql-test/t/alter_table.test b/mysql-test/t/alter_table.test
index 2bfe6dbaa62..54c662bccf2 100644
--- a/mysql-test/t/alter_table.test
+++ b/mysql-test/t/alter_table.test
@@ -1089,3 +1089,31 @@ ALTER TABLE t1
ADD i INT UNSIGNED NOT NULL AUTO_INCREMENT,
AUTO_INCREMENT = 1;
DROP TABLE t1;
+
+
+#
+# Bug#50542 5.5.x doesn't check length of key prefixes:
+# corruption and crash results
+#
+# This case is related to Bug#31031 (above)
+# A statement where the index key is larger/wider than
+# the column type, should cause an error
+#
+--error ER_WRONG_SUB_KEY
+CREATE TABLE t1 (a CHAR(1), PRIMARY KEY (a(255)));
+
+# Test other variants of creating indices
+CREATE TABLE t1 (a CHAR(1));
+# ALTER TABLE
+--error ER_WRONG_SUB_KEY
+ALTER TABLE t1 ADD PRIMARY KEY (a(20));
+--error ER_WRONG_SUB_KEY
+ALTER TABLE t1 ADD KEY (a(20));
+# CREATE INDEX
+--error ER_WRONG_SUB_KEY
+CREATE UNIQUE INDEX i1 ON t1 (a(20));
+--error ER_WRONG_SUB_KEY
+CREATE INDEX i2 ON t1 (a(20));
+# cleanup
+DROP TABLE t1;
+
diff --git a/mysql-test/t/archive.test b/mysql-test/t/archive.test
index 5de34ec6db8..12dd4635b47 100644
--- a/mysql-test/t/archive.test
+++ b/mysql-test/t/archive.test
@@ -1658,3 +1658,14 @@ INSERT INTO t1 (col1, col2) VALUES (1, "value");
REPAIR TABLE t1;
DROP TABLE t1;
remove_file $MYSQLD_DATADIR/test/t1.ARM;
+
+--echo #
+--echo # BUG#48757 - missing .ARZ file causes server crash
+--echo #
+CREATE TABLE t1(a INT) ENGINE=ARCHIVE;
+FLUSH TABLE t1;
+--remove_file $MYSQLD_DATADIR/test/t1.ARZ
+--error ER_FILE_NOT_FOUND
+SELECT * FROM t1;
+--error ER_BAD_TABLE_ERROR
+DROP TABLE t1;
diff --git a/mysql-test/t/bigint.test b/mysql-test/t/bigint.test
index 5a589816dcd..e19bba971f9 100644
--- a/mysql-test/t/bigint.test
+++ b/mysql-test/t/bigint.test
@@ -327,3 +327,38 @@ drop table t1;
create table t1 select -9223372036854775809 bi;
describe t1;
drop table t1;
+
+--echo #
+--echo # Bug #45360: wrong results
+--echo #
+
+CREATE TABLE t1 (id INT AUTO_INCREMENT PRIMARY KEY,
+ a BIGINT(20) UNSIGNED,
+ b VARCHAR(20));
+
+INSERT INTO t1 (a) VALUES
+ (0),
+ (CAST(0x7FFFFFFFFFFFFFFF AS UNSIGNED)),
+ (CAST(0x8000000000000000 AS UNSIGNED)),
+ (CAST(0xFFFFFFFFFFFFFFFF AS UNSIGNED));
+
+UPDATE t1 SET b = a;
+
+let $n = `SELECT MAX(id) FROM t1`;
+while($n) {
+ let $x = `SELECT a FROM t1 WHERE id = $n`;
+ dec $n;
+ let $hex = `SELECT HEX($x)`;
+ echo # $hex;
+
+ --disable_result_log
+ eval EXPLAIN EXTENDED SELECT 1 FROM t1 WHERE a = $x AND TRIM(a) = b;
+ --enable_result_log
+ SHOW WARNINGS;
+}
+
+DROP TABLE t1;
+
+--echo # End of 5.1 tests
+
+
diff --git a/mysql-test/t/bug39022.test b/mysql-test/t/bug39022.test
new file mode 100644
index 00000000000..268b207e0e5
--- /dev/null
+++ b/mysql-test/t/bug39022.test
@@ -0,0 +1,63 @@
+-- source include/have_log_bin.inc
+-- source include/have_innodb.inc
+-- source include/not_binlog_format_row.inc
+
+--echo #
+--echo # Bug #39022: Mysql randomly crashing in lock_sec_rec_cons_read_sees
+--echo #
+
+CREATE TABLE t1(a TINYINT NOT NULL,b TINYINT,PRIMARY KEY(b)) ENGINE=innodb;
+CREATE TABLE t2(d TINYINT NOT NULL,UNIQUE KEY(d)) ENGINE=innodb;
+INSERT INTO t1 VALUES (13,0),(8,1),(9,2),(6,3),
+(11,5),(11,6),(7,7),(7,8),(4,9),(6,10),(3,11),(11,12),
+(12,13),(7,14);
+INSERT INTO t2 VALUES (0),(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),
+(11),(12),(13),(14);
+
+connect (thread1, localhost, root,,);
+connect (thread2, localhost, root,,);
+
+connection thread1;
+--echo # in thread1
+START TRANSACTION;
+
+connection thread2;
+--echo # in thread2
+REPLACE INTO t2 VALUES (-17);
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d);
+
+connection thread1;
+--echo # in thread1
+REPLACE INTO t1(a,b) VALUES (67,20);
+
+connection thread2;
+--echo # in thread2
+COMMIT;
+START TRANSACTION;
+REPLACE INTO t1(a,b) VALUES (65,-50);
+REPLACE INTO t2 VALUES (-91);
+send;
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d); #waits
+
+connection thread1;
+--echo # in thread1
+
+--echo # should not crash
+--error ER_LOCK_DEADLOCK
+SELECT d FROM t2,t1 WHERE d=(SELECT MAX(a) FROM t1 WHERE t1.a > t2.d); #crashes
+
+connection thread2;
+--echo # in thread2
+REAP;
+
+disconnect thread2;
+--source include/wait_until_disconnected.inc
+
+connection thread1;
+--echo # in thread1;
+disconnect thread1;
+--source include/wait_until_disconnected.inc
+
+connection default;
+
+DROP TABLE t1,t2;
diff --git a/mysql-test/t/bug47671-master.opt b/mysql-test/t/bug47671-master.opt
index 0afdf49e022..ad54fbc3467 100644
--- a/mysql-test/t/bug47671-master.opt
+++ b/mysql-test/t/bug47671-master.opt
@@ -1 +1 @@
---default-character-set=utf8 --skip-character-set-client-handshake
+--character-set-server=utf8 --skip-character-set-client-handshake
diff --git a/mysql-test/t/cache_innodb-master.opt b/mysql-test/t/cache_innodb-master.opt
index 5f0ebff98f6..6672b4ddce1 100644
--- a/mysql-test/t/cache_innodb-master.opt
+++ b/mysql-test/t/cache_innodb-master.opt
@@ -1 +1 @@
---set-variable=query_cache_size=1M
+--query_cache_size=1M
diff --git a/mysql-test/t/comment_column.test b/mysql-test/t/comment_column.test
new file mode 100644
index 00000000000..90976d143b5
--- /dev/null
+++ b/mysql-test/t/comment_column.test
@@ -0,0 +1,130 @@
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+ALTER TABLE t1 ADD COLUMN c8 INTEGER COMMENT 'ABCdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+ALTER TABLE t1 ADD COLUMN c9 INTEGER COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+ALTER TABLE t1 ADD COLUMN c10 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+ALTER TABLE t1 MODIFY COLUMN c8 CHAR(10);
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+ALTER TABLE t1 CHANGE COLUMN c9 c9_1 INTEGER COMMENT '1234567890';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+ALTER TABLE t1 DROP COLUMN c1;
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+# comment overflow(warning)
+ALTER TABLE t1 ADD COLUMN c11 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+# comment overflow(error)
+set sql_mode='TRADITIONAL';
+--error ER_TOO_LONG_FIELD_COMMENT
+ALTER TABLE t1 ADD COLUMN c12 INTEGER COMMENT 'ABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdABCDEfghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+set sql_mode='';
+ALTER TABLE t1 ADD COLUMN c12 CHAR(100) COMMENT 'ABCDefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+# comment overflow(warning)
+drop table t1;
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdaBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+# comment overflow(error)
+DROP TABLE t1;
+set sql_mode='TRADITIONAL';
+--error ER_TOO_LONG_FIELD_COMMENT
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdaBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+# bug#48077
+SET sql_mode='';
+CREATE TABLE t1_toupg (c1 INT, c2 VARCHAR(10) COMMENT
+'01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234')
+COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+# Alter the existing table, change comment
+ALTER TABLE t1_toupg COMMENT='012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012301234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+# Alter existing table, add new column with comment
+ALTER TABLE t1_toupg ADD c3 TIMESTAMP COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+# Alter existing table, add index with comment
+ALTER TABLE t1_toupg ADD INDEX i1(c1) COMMENT '01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+# Add index with comment using CREATE INDEX
+CREATE INDEX i2 ON t1_toupg(c2) COMMENT '01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234';
+drop table t1_toupg;
+
+
diff --git a/mysql-test/t/comment_column2.test b/mysql-test/t/comment_column2.test
new file mode 100644
index 00000000000..ea66ab3b066
--- /dev/null
+++ b/mysql-test/t/comment_column2.test
@@ -0,0 +1,172 @@
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+create table t1 (
+c1 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c2 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c3 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c4 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c5 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c6 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c7 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c8 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c9 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c10 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c11 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c12 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c13 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c14 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c15 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c16 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c17 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c18 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c19 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c20 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c21 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c22 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c23 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c24 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c25 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c26 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c27 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c28 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c29 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c30 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c31 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c32 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c33 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c34 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c35 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c36 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c37 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c38 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c39 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c40 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c41 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c42 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c43 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c44 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c45 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c46 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c47 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c48 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c49 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c50 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij');
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+ALTER TABLE t1 ADD COLUMN c51 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',ADD COLUMN c52 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+ALTER TABLE t1 ADD COLUMN c53 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c54 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c55 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c56 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c57 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c58 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c59 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c60 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c61 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c62 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+
+ALTER TABLE t1 ADD COLUMN c63 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+--error 1117
+ALTER TABLE t1 ADD COLUMN c64 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+
+
+
+drop table t1;
+--error 1117
+create table t1 (
+c1 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c2 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c3 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c4 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c5 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c6 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c7 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c8 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c9 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c10 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c11 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c12 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c13 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c14 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c15 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c16 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c17 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c18 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c19 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c20 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c21 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c22 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c23 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c24 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c25 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c26 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c27 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c28 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c29 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c30 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c31 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c32 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c33 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c34 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c35 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c36 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c37 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c38 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c39 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c40 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c41 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c42 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c43 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c44 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c45 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c46 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c47 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c48 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c49 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c50 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c51 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c52 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c53 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c54 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c55 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c56 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c57 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c58 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c59 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c60 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c61 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c62 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c63 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c64 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij',
+c65 INTEGER COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghij')
+;
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+
+
diff --git a/mysql-test/t/comment_index.test b/mysql-test/t/comment_index.test
new file mode 100644
index 00000000000..7857d54080e
--- /dev/null
+++ b/mysql-test/t/comment_index.test
@@ -0,0 +1,100 @@
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'Abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', c2 INTEGER COMMENT 'aBcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd',c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, c8 VARCHAR(100), c9 CHAR(50), c10 DATETIME, c11 DATETIME, c12 DATETIME,c13 DATETIME, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='ABCDEFGHIJabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+CREATE INDEX i4 ON t1(c4) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+ALTER TABLE t1 ADD INDEX (c6) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+DROP INDEX i1 ON t1;
+ALTER TABLE t1 DROP INDEX i2, DROP INDEX i4;
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+ALTER TABLE t1 ADD INDEX i8(c8) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd', ADD INDEX i10(c10) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+# multicolumn index
+CREATE INDEX i1_3 ON t1(c1,c2,c3) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+# comment overflow(warning)
+CREATE INDEX i11 ON t1(c11) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+ALTER TABLE t1 ADD INDEX (c13) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+
+# comment overflow(error)
+set sql_mode='TRADITIONAL';
+--error ER_TOO_LONG_INDEX_COMMENT
+ALTER TABLE t1 ADD INDEX i12 (c12) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+
+set sql_mode='TRADITIONAL';
+--error ER_TOO_LONG_INDEX_COMMENT
+CREATE INDEX i12 ON t1(c12) COMMENT 'abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+SELECT comment,index_comment,char_length(index_comment) FROM information_schema.statistics WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+
+drop table t1;
diff --git a/mysql-test/t/comment_table.test b/mysql-test/t/comment_table.test
new file mode 100644
index 00000000000..2a85fbac571
--- /dev/null
+++ b/mysql-test/t/comment_table.test
@@ -0,0 +1,55 @@
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+#1024 bytes
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+drop table t1;
+
+#1025 bytes
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+drop table t1;
+set sql_mode='TRADITIONAL';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+drop table t1;
+
+
+#2048 bytes
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcd';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+let $ENGINE=`select variable_value from information_schema.global_variables where variable_name='STORAGE_ENGINE'`;
+--replace_result $ENGINE ENGINE
+SHOW CREATE TABLE t1;
+drop table t1;
+
+
+#2049 bytes(warning)
+SET SQL_MODE='';
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
+drop table t1;
+SET SQL_MODE='TRADITIONAL';
+
+--error ER_TOO_LONG_TABLE_COMMENT
+create table t1 (c1 VARCHAR(10) NOT NULL COMMENT 'c1 comment', c2 INTEGER,c3 INTEGER COMMENT '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789', c4 INTEGER, c5 INTEGER, c6 INTEGER, c7 INTEGER, INDEX i1 (c1) COMMENT 'i1 comment',INDEX i2(c2)
+) COMMENT='abcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcdefghijabcde';
+SELECT table_comment,char_length(table_comment) FROM information_schema.tables WHERE table_name='t1';
+SELECT column_comment,char_length(column_comment) FROM information_schema.columns WHERE table_name='t1';
diff --git a/mysql-test/t/constraints.test b/mysql-test/t/constraints.test
index ed268ab5846..70a95e5f16e 100644
--- a/mysql-test/t/constraints.test
+++ b/mysql-test/t/constraints.test
@@ -10,7 +10,7 @@ create table t1 (a int check (a>0));
insert into t1 values (1);
insert into t1 values (0);
drop table t1;
-create table t1 (a int ,b int, check a>b);
+create table t1 (a int, b int, check (a>b));
insert into t1 values (1,0);
insert into t1 values (0,1);
drop table t1;
@@ -29,3 +29,45 @@ show create table t1;
drop table t1;
# End of 4.1 tests
+
+#
+# Bug#35578 (Parser allows useless/illegal CREATE TABLE syntax)
+#
+
+--disable_warnings
+drop table if exists t_illegal;
+--enable_warnings
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, check a>b);
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, constraint abc check a>b);
+
+--error ER_PARSE_ERROR
+create table t_illegal (a int, b int, constraint abc);
+
+#
+# Bug#11714 (Non-sensical ALTER TABLE ADD CONSTRAINT allowed)
+#
+
+--disable_warnings
+drop table if exists t_11714;
+--enable_warnings
+
+create table t_11714(a int, b int);
+
+--error ER_PARSE_ERROR
+alter table t_11714 add constraint cons1;
+
+drop table t_11714;
+
+#
+# Bug#38696 (CREATE TABLE ... CHECK ... allows illegal syntax)
+
+--error ER_PARSE_ERROR
+CREATE TABLE t_illegal (col_1 INT CHECK something (whatever));
+
+--error ER_PARSE_ERROR
+CREATE TABLE t_illegal (col_1 INT CHECK something);
+
diff --git a/mysql-test/t/count_distinct2-master.opt b/mysql-test/t/count_distinct2-master.opt
index d81cc55090d..2fa4c2b903d 100644
--- a/mysql-test/t/count_distinct2-master.opt
+++ b/mysql-test/t/count_distinct2-master.opt
@@ -1 +1 @@
---set-variable=max_heap_table_size=16384
+--max_heap_table_size=16384
diff --git a/mysql-test/t/create.test b/mysql-test/t/create.test
index 6c4048a7739..e0a6fde1381 100644
--- a/mysql-test/t/create.test
+++ b/mysql-test/t/create.test
@@ -683,8 +683,8 @@ drop table t1;
# Error during open_and_lock_tables() of tables
--error ER_NO_SUCH_TABLE
create table t1 select * from t2;
-# Rather special error which also caught during open tables pahse
---error ER_UPDATE_TABLE_USED
+# A special case which is also caught during open tables pahse
+--error ER_NO_SUCH_TABLE
create table t1 select * from t1;
# Error which happens before select_create::prepare()
--error ER_CANT_AGGREGATE_2COLLATIONS
@@ -706,6 +706,10 @@ create table t1 (i int);
create table t1 select 1 as i;
create table if not exists t1 select 1 as i;
select * from t1;
+# Error which is detected after successfull table open.
+--error ER_UPDATE_TABLE_USED
+create table if not exists t1 select * from t1;
+select * from t1;
# Error before select_create::prepare()
--error ER_CANT_AGGREGATE_2COLLATIONS
create table t1 select coalesce('a' collate latin1_swedish_ci,'b' collate latin1_bin);
@@ -1634,3 +1638,33 @@ END ;|
DROP TABLE t1;
DROP TABLE B;
+
+
+--echo #
+--echo # Bug #47107 assert in notify_shared_lock on incorrect
+--echo # CREATE TABLE , HANDLER
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1(f1 integer);
+
+--echo # The following CREATE TABLEs before gave an assert.
+
+HANDLER t1 OPEN AS A;
+--error ER_TABLE_EXISTS_ERROR
+CREATE TABLE t1 SELECT 1 AS f2;
+
+HANDLER t1 OPEN AS A;
+--error ER_TABLE_EXISTS_ERROR
+CREATE TABLE t1(f1 integer);
+
+CREATE TABLE t2(f1 integer);
+HANDLER t1 OPEN AS A;
+--error ER_TABLE_EXISTS_ERROR
+CREATE TABLE t1 LIKE t2;
+
+DROP TABLE t2;
+DROP TABLE t1;
diff --git a/mysql-test/t/csv.test b/mysql-test/t/csv.test
index ea949f463c9..609a49c7634 100644
--- a/mysql-test/t/csv.test
+++ b/mysql-test/t/csv.test
@@ -1807,17 +1807,17 @@ unlock tables;
drop table t1;
#
-# Bug#41441 repair csv table crashes debug server
-#
-# Note: The test should be removed after Bug#33717 is fixed
+# Bug#33717 INSERT...(default) fails for enum. Crashes CSV tables, loads spaces for MyISAM
+#
+CREATE TABLE t1 (e enum('foo','bar') NOT NULL) ENGINE = CSV;
+INSERT INTO t1 VALUES();
+INSERT INTO t1 VALUES(default);
+INSERT INTO t1 VALUES(0);
+INSERT INTO t1 VALUES(3);
+INSERT INTO t1 VALUES(-1);
+SELECT * FROM t1;
+DROP TABLE t1;
-create table t1(a enum ('a') not null) engine=csv;
-insert into t1 values (2);
---error ER_CRASHED_ON_USAGE
-select * from t1 limit 1;
-repair table t1;
-select * from t1 limit 1;
-drop table t1;
#
# Bug #40814 CSV engine does not parse \X characters when they occur in unquoted fields
diff --git a/mysql-test/t/ctype_binary.test b/mysql-test/t/ctype_binary.test
new file mode 100644
index 00000000000..8b57854de83
--- /dev/null
+++ b/mysql-test/t/ctype_binary.test
@@ -0,0 +1,12 @@
+
+set names binary;
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+--source include/ctype_numconv.inc
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_cp1251.test b/mysql-test/t/ctype_cp1251.test
index b6a1cfc3f98..4dfb0be3892 100644
--- a/mysql-test/t/ctype_cp1251.test
+++ b/mysql-test/t/ctype_cp1251.test
@@ -58,3 +58,13 @@ SHOW CREATE TABLE t1;
DROP TABLE t1;
# End of 4.1 tests
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+--source include/ctype_numconv.inc
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_cp932_binlog_stm.test b/mysql-test/t/ctype_cp932_binlog_stm.test
index ba329f3127a..ec0da34ddd0 100644
--- a/mysql-test/t/ctype_cp932_binlog_stm.test
+++ b/mysql-test/t/ctype_cp932_binlog_stm.test
@@ -109,9 +109,24 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test cp932->Unicode conversion
+--echo #
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+
DROP TABLE t1;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test Unicode->cp932 conversion
+--echo #
+--source include/ctype_utf8_table.inc
+SELECT HEX(a), HEX(CONVERT(a using cp932)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+DROP TABLE t1;
+
--echo #
diff --git a/mysql-test/t/ctype_eucjpms.test b/mysql-test/t/ctype_eucjpms.test
index 799c8c1796f..a330925327c 100644
--- a/mysql-test/t/ctype_eucjpms.test
+++ b/mysql-test/t/ctype_eucjpms.test
@@ -461,9 +461,26 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test sjis->Unicode conversion
+--echo #
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+
DROP TABLE t1;
--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test Unicode->sjis conversion
+--echo #
+--source include/ctype_utf8_table.inc
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+DROP TABLE t1;
+
+
+
+--echo #
--echo # End of 5.5 tests
--echo #
diff --git a/mysql-test/t/ctype_latin1.test b/mysql-test/t/ctype_latin1.test
index b12436f77ba..1733ee299d1 100644
--- a/mysql-test/t/ctype_latin1.test
+++ b/mysql-test/t/ctype_latin1.test
@@ -127,3 +127,14 @@ DROP TABLE `abcÿdef`;
select hex(cast(_ascii 0x7f as char(1) character set latin1));
--echo End of 5.0 tests
+
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+--source include/ctype_numconv.inc
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_latin1_de-master.opt b/mysql-test/t/ctype_latin1_de-master.opt
index 79fdb1c63dc..0c072424de9 100644
--- a/mysql-test/t/ctype_latin1_de-master.opt
+++ b/mysql-test/t/ctype_latin1_de-master.opt
@@ -1 +1 @@
---default-character-set=latin1 --default-collation=latin1_german2_ci
+--character-set-server=latin1 --collation-server=latin1_german2_ci
diff --git a/mysql-test/t/ctype_ldml.test b/mysql-test/t/ctype_ldml.test
index 99d9cd5a866..d2f06a84a8c 100644
--- a/mysql-test/t/ctype_ldml.test
+++ b/mysql-test/t/ctype_ldml.test
@@ -1,4 +1,7 @@
--source include/have_ucs2.inc
+--source include/have_utf8mb4.inc
+--source include/have_utf16.inc
+--source include/have_utf32.inc
--disable_warnings
drop table if exists t1;
@@ -40,6 +43,24 @@ insert into t1 values ('a');
select * from t1 where c1='b';
drop table t1;
+show collation like 'utf8mb4_test_ci';
+create table t1 (c1 char(1) character set utf8mb4 collate utf8mb4_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+drop table t1;
+
+show collation like 'utf16_test_ci';
+create table t1 (c1 char(1) character set utf16 collate utf16_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+drop table t1;
+
+show collation like 'utf32_test_ci';
+create table t1 (c1 char(1) character set utf32 collate utf32_test_ci);
+insert into t1 values ('a');
+select * from t1 where c1='b';
+drop table t1;
+
#
# Bug#41084 full-text index added to custom UCA collation not working
diff --git a/mysql-test/t/ctype_many.test b/mysql-test/t/ctype_many.test
index 0903c3dd7fa..67726c53585 100644
--- a/mysql-test/t/ctype_many.test
+++ b/mysql-test/t/ctype_many.test
@@ -1,4 +1,7 @@
-- source include/have_ucs2.inc
+-- source include/have_utf8mb4.inc
+-- source include/have_utf16.inc
+-- source include/have_utf32.inc
--disable_warnings
DROP TABLE IF EXISTS t1;
@@ -211,3 +214,73 @@ SELECT min(comment),count(*) FROM t1 GROUP BY ucs2_f;
DROP TABLE t1;
# End of 4.1 tests
+
+
+--echo #
+--echo # WL#1213 Implement 4-byte UTF8, UTF16 and UTF32
+--echo # Testing that only utf8mb4 is superset for utf8
+--echo # No other Unicode character set pairs have superset/subset relations
+--echo #
+
+CREATE TABLE t1 (
+ utf8 CHAR CHARACTER SET utf8,
+ utf8mb4 CHAR CHARACTER SET utf8mb4,
+ ucs2 CHAR CHARACTER SET ucs2,
+ utf16 CHAR CHARACTER SET utf16,
+ utf32 CHAR CHARACTER SET utf32
+);
+INSERT INTO t1 VALUES ('','','','','');
+
+# utf8mb4 is superset only for utf8
+SELECT CHARSET(CONCAT(utf8, utf8mb4)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8, ucs2)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8, utf16)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8, utf32)) FROM t1;
+
+
+# utf8mb4 is superset only for utf8
+SELECT CHARSET(CONCAT(utf8mb4, utf8)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8mb4, ucs2)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8mb4, utf16)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf8mb4, utf32)) FROM t1;
+
+
+# ucs2 is not a superset for the other Unicode character sets
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(ucs2, utf8)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(ucs2, utf8mb4)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(ucs2, utf16)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(ucs2, utf32)) FROM t1;
+
+
+# utf16 is not a superset for the other Unicode character sets
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf16, utf8)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf16, ucs2)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf16, utf8mb4)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf16, utf32)) FROM t1;
+
+
+# utf32 is not a superset for the other Unicode character sets
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf32, utf8)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf32, ucs2)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf32, utf8mb4)) FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CHARSET(CONCAT(utf32, utf16)) FROM t1;
+
+DROP TABLE t1;
diff --git a/mysql-test/t/ctype_sjis.test b/mysql-test/t/ctype_sjis.test
index 5f0a403c933..103039d0323 100644
--- a/mysql-test/t/ctype_sjis.test
+++ b/mysql-test/t/ctype_sjis.test
@@ -160,9 +160,23 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test sjis->Unicode conversion
+--echo #
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+
DROP TABLE t1;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test Unicode->sjis conversion
+--echo #
+--source include/ctype_utf8_table.inc
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+DROP TABLE t1;
--echo #
diff --git a/mysql-test/t/ctype_ucs.test b/mysql-test/t/ctype_ucs.test
index 310576b9478..8d4b478e68d 100644
--- a/mysql-test/t/ctype_ucs.test
+++ b/mysql-test/t/ctype_ucs.test
@@ -733,3 +733,17 @@ SELECT HEX(DAYNAME(19700101));
SET character_set_connection=latin1;
--echo End of 5.0 tests
+
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+SET NAMES latin1;
+SET collation_connection=ucs2_general_ci;
+--source include/ctype_numconv.inc
+SET NAMES latin1;
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_ucs2_def-master.opt b/mysql-test/t/ctype_ucs2_def-master.opt
index 84d2a52b639..711ec42bd8a 100644
--- a/mysql-test/t/ctype_ucs2_def-master.opt
+++ b/mysql-test/t/ctype_ucs2_def-master.opt
@@ -1 +1 @@
---default-collation=ucs2_unicode_ci --default-character-set=ucs2,latin1
+--collation-server=ucs2_unicode_ci --character-set-server=ucs2,latin1
diff --git a/mysql-test/t/ctype_ujis.test b/mysql-test/t/ctype_ujis.test
index 68b56118a21..78701127ec3 100644
--- a/mysql-test/t/ctype_ujis.test
+++ b/mysql-test/t/ctype_ujis.test
@@ -1291,9 +1291,26 @@ SELECT * FROM t1
WHERE HEX(CAST(UPPER(a) AS CHAR CHARACTER SET utf8)) <>
HEX(UPPER(CAST(a AS CHAR CHARACTER SET utf8))) ORDER BY code;
+--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test sjis->Unicode conversion
+--echo #
+SELECT HEX(a), HEX(CONVERT(a USING utf8)) as b FROM t1
+WHERE a<>'' HAVING b<>'3F' ORDER BY code;
+
DROP TABLE t1;
--echo #
+--echo # WL#3090 Japanese Character Set adjustments
+--echo # Test Unicode->sjis conversion
+--echo #
+--source include/ctype_utf8_table.inc
+SELECT HEX(a), HEX(CONVERT(a using sjis)) as b FROM t1 HAVING b<>'3F' ORDER BY BINARY a;
+DROP TABLE t1;
+
+
+
+--echo #
--echo # End of 5.5 tests
--echo #
diff --git a/mysql-test/t/ctype_utf16.test b/mysql-test/t/ctype_utf16.test
new file mode 100644
index 00000000000..b997bde6e7c
--- /dev/null
+++ b/mysql-test/t/ctype_utf16.test
@@ -0,0 +1,733 @@
+-- source include/have_utf16.inc
+-- source include/have_utf8mb4.inc
+
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+SET NAMES latin1;
+SET character_set_connection=utf16;
+select hex('a'), hex('a ');
+-- source include/endspace.inc
+
+
+# Check that incomplete utf16 characters in HEX notation
+# are left-padded with zeros
+#
+select hex(_utf16 0x44);
+select hex(_utf16 0x3344);
+select hex(_utf16 0x113344);
+
+
+# Check that 0x20 is only trimmed when it is
+# a part of real SPACE character, not just a part
+# of a multibyte sequence.
+# Note, CYRILLIC LETTER ER is used as an example, which
+# is stored as 0x0420 in utf16, thus contains 0x20 in the
+# low byte. The second character is THREE-PER-M, U+2004,
+# which contains 0x20 in the high byte.
+
+CREATE TABLE t1 (word VARCHAR(64), word2 CHAR(64)) CHARACTER SET utf16;
+INSERT INTO t1 VALUES (_koi8r 0xF2, _koi8r 0xF2), (X'2004',X'2004');
+SELECT hex(word) FROM t1 ORDER BY word;
+SELECT hex(word2) FROM t1 ORDER BY word2;
+DELETE FROM t1;
+
+#
+# Check that real spaces are correctly trimmed.
+#
+INSERT INTO t1 VALUES (X'042000200020',X'042000200020'), (X'200400200020', X'200400200020');
+SELECT hex(word) FROM t1 ORDER BY word;
+SELECT hex(word2) FROM t1 ORDER BY word2;
+DROP TABLE t1;
+
+
+#
+# Check LPAD/RPAD
+#
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'0421'));
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'04210422'));
+SELECT hex(LPAD(_utf16 X'0420',10,_utf16 X'042104220423'));
+SELECT hex(LPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'));
+SELECT hex(LPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'));
+SELECT hex(LPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'));
+
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'0421'));
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'04210422'));
+SELECT hex(RPAD(_utf16 X'0420',10,_utf16 X'042104220423'));
+SELECT hex(RPAD(_utf16 X'0420042104220423042404250426042704280429042A042B',10,_utf16 X'042104220423'));
+SELECT hex(RPAD(_utf16 X'D800DC00', 10, _utf16 X'0421'));
+SELECT hex(RPAD(_utf16 X'0421', 10, _utf16 X'D800DC00'));
+
+CREATE TABLE t1 SELECT
+LPAD(_utf16 X'0420',10,_utf16 X'0421') l,
+RPAD(_utf16 X'0420',10,_utf16 X'0421') r;
+SHOW CREATE TABLE t1;
+select hex(l), hex(r) from t1;
+DROP TABLE t1;
+
+create table t1 (f1 char(30));
+insert into t1 values ("103000"), ("22720000"), ("3401200"), ("78000");
+select lpad(f1, 12, "-o-/") from t1;
+drop table t1;
+
+######################################################
+#
+# Test of like
+#
+
+SET NAMES latin1;
+SET character_set_connection=utf16;
+--source include/ctype_like.inc
+
+SET NAMES utf8;
+SET character_set_connection=utf16;
+CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf16);
+INSERT INTO t1 VALUES ('фыва'),('Фыва'),('фЫва'),('фыВа'),('фывÐ'),('ФЫВÐ');
+INSERT INTO t1 VALUES ('фывапролдж'),('Фывапролдж'),('фЫвапролдж'),('фыВапролдж');
+INSERT INTO t1 VALUES ('фывÐпролдж'),('фываПролдж'),('фывапРолдж'),('фывапрОлдж');
+INSERT INTO t1 VALUES ('фывапроЛдж'),('фывапролДж'),('фывапролдЖ'),('ФЫВÐПРОЛДЖ');
+SELECT * FROM t1 WHERE a LIKE '%фЫва%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE '%фЫв%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' COLLATE utf16_bin ORDER BY BINARY a;
+DROP TABLE t1;
+
+CREATE TABLE t1 (word varchar(64) NOT NULL, PRIMARY KEY (word))
+ENGINE=MyISAM CHARACTER SET utf16;
+INSERT INTO t1 (word) VALUES ("cat");
+SELECT * FROM t1 WHERE word LIKE "c%";
+SELECT * FROM t1 WHERE word LIKE "ca_";
+SELECT * FROM t1 WHERE word LIKE "cat";
+SELECT * FROM t1 WHERE word LIKE _utf16 x'00630025'; # "c%"
+SELECT * FROM t1 WHERE word LIKE _utf16 x'00630061005F'; # "ca_"
+DROP TABLE t1;
+
+
+#
+# Check that INSERT() works fine.
+# This invokes charpos() function.
+select insert(_utf16 0x006100620063,10,2,_utf16 0x006400650066);
+select insert(_utf16 0x006100620063,1,2,_utf16 0x006400650066);
+
+########################################################
+#
+# Bug 1264
+#
+# Description:
+#
+# When using a ucs2 table in MySQL,
+# either with ucs2_general_ci or ucs2_bin collation,
+# words are returned in an incorrect order when using ORDER BY
+# on an _indexed_ CHAR or VARCHAR column. They are sorted with
+# the longest word *first* instead of last. I.E. The word "aardvark"
+# is in the results before the word "a".
+#
+# If there is no index for the column, the problem does not occur.
+#
+# Interestingly, if there is no second column, the words are returned
+# in the correct order.
+#
+# According to EXPLAIN, it looks like when the output includes columns that
+# are not part of the index sorted on, it does a filesort, which fails.
+# Using a straight index yields correct results.
+
+SET NAMES latin1;
+
+#
+# Two fields, index
+#
+
+CREATE TABLE t1 (
+ word VARCHAR(64),
+ bar INT(11) default 0,
+ PRIMARY KEY (word))
+ ENGINE=MyISAM
+ CHARSET utf16
+ COLLATE utf16_general_ci ;
+
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+SELECT * FROM t1 ORDER BY word;
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+SELECT word FROM t1 ORDER by word;
+DROP TABLE t1;
+
+
+#
+# One field, index
+#
+
+CREATE TABLE t1 (
+ word VARCHAR(64) ,
+ PRIMARY KEY (word))
+ ENGINE=MyISAM
+ CHARSET utf16
+ COLLATE utf16_general_ci;
+
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY WORD;
+SELECT * FROM t1 ORDER BY word;
+DROP TABLE t1;
+
+
+#
+# Two fields, no index
+#
+
+CREATE TABLE t1 (
+ word TEXT,
+ bar INT(11) AUTO_INCREMENT,
+ PRIMARY KEY (bar))
+ ENGINE=MyISAM
+ CHARSET utf16
+ COLLATE utf16_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a" );
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+SELECT * FROM t1 ORDER BY word;
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+SELECT word FROM t1 ORDER BY word;
+DROP TABLE t1;
+
+#
+# END OF Bug 1264 test
+#
+########################################################
+
+
+#
+# Check alignment for from-binary-conversion with CAST and CONVERT
+#
+SELECT hex(cast(0xAA as char character set utf16));
+SELECT hex(convert(0xAA using utf16));
+
+#
+# Check alignment for string types
+#
+CREATE TABLE t1 (a char(10) character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a varchar(10) character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a text character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a mediumtext character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a longtext character set utf16);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+##
+## Bug #5024 Server crashes with queries on fields
+## with certain charset/collation settings
+##
+##
+#create table t1 (s1 char character set utf16 collate utf16_czech_ci);
+#insert into t1 values ('0'),('1'),('2'),('a'),('b'),('c');
+#select s1 from t1 where s1 > 'a' order by s1;
+#drop table t1;
+#
+
+#
+# Bug #5081 : UCS2 fields are filled with '0x2020'
+# after extending field length
+#
+create table t1(a char(1)) default charset utf16;
+insert into t1 values ('a'),('b'),('c');
+alter table t1 modify a char(5);
+select a, hex(a) from t1;
+drop table t1;
+
+#
+# Check prepare statement from an UTF16 string
+#
+set @ivar= 1234;
+set @str1 = 'select ?';
+set @str2 = convert(@str1 using utf16);
+prepare stmt1 from @str2;
+execute stmt1 using @ivar;
+
+#
+# Check that utf16 works with ENUM and SET type
+#
+set names utf8;
+create table t1 (a enum('x','y','z') character set utf16);
+show create table t1;
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+select a, hex(a) from t1 order by a;
+alter table t1 change a a enum('x','y','z','d','e','ä','ö','ü') character set utf16;
+show create table t1;
+insert into t1 values ('D');
+insert into t1 values ('E ');
+insert into t1 values ('ä');
+insert into t1 values ('ö');
+insert into t1 values ('ü');
+select a, hex(a) from t1 order by a;
+drop table t1;
+
+create table t1 (a set ('x','y','z','ä','ö','ü') character set utf16);
+show create table t1;
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+insert into t1 values ('x,y');
+insert into t1 values ('x,y,z,ä,ö,ü');
+select a, hex(a) from t1 order by a;
+drop table t1;
+
+#
+# Bug#7302 UCS2 data in ENUM fields get truncated when new column is added
+#
+create table t1(a enum('a','b','c')) default character set utf16;
+insert into t1 values('a'),('b'),('c');
+alter table t1 add b char(1);
+show warnings;
+select * from t1 order by a;
+drop table t1;
+
+SET NAMES latin1;
+SET collation_connection='utf16_general_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+SET NAMES latin1;
+SET collation_connection='utf16_bin';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+#
+# Bug#10344 Some string functions fail for UCS2
+#
+select hex(substr(_utf16 0x00e400e50068,1));
+select hex(substr(_utf16 0x00e400e50068,2));
+select hex(substr(_utf16 0x00e400e50068,3));
+select hex(substr(_utf16 0x00e400e50068,-1));
+select hex(substr(_utf16 0x00e400e50068,-2));
+select hex(substr(_utf16 0x00e400e50068,-3));
+select hex(substr(_utf16 0x00e400e5D800DC00,1));
+select hex(substr(_utf16 0x00e400e5D800DC00,2));
+select hex(substr(_utf16 0x00e400e5D800DC00,3));
+select hex(substr(_utf16 0x00e400e5D800DC00,-1));
+select hex(substr(_utf16 0x00e400e5D800DC00,-2));
+select hex(substr(_utf16 0x00e400e5D800DC00,-3));
+
+SET NAMES latin1;
+
+##
+## Bug#8235
+##
+## This bug also helped to find another problem that
+## INSERT of a UCS2 string containing a negative number
+## into a unsigned int column didn't produce warnings.
+## This test covers both problems.
+##
+##SET collation_connection='ucs2_swedish_ci';
+##CREATE TABLE t1 (Field1 int(10) default '0');
+### no warnings, negative numbers are allowed
+##INSERT INTO t1 VALUES ('-1');
+##SELECT * FROM t1;
+##DROP TABLE t1;
+##CREATE TABLE t1 (Field1 int(10) unsigned default '0');
+### this should generate a "Data truncated" warning
+##INSERT INTO t1 VALUES ('-1');
+##DROP TABLE t1;
+##SET NAMES latin1;
+
+###
+### Bug #14583 Bug on query using a LIKE on indexed field with ucs2_bin collation
+###
+##--disable_warnings
+##create table t1(f1 varchar(5) CHARACTER SET utf16 COLLATE utf16_bin NOT NULL) engine=InnoDB;
+##--enable_warnings
+##insert into t1 values('a');
+##create index t1f1 on t1(f1);
+##select f1 from t1 where f1 like 'a%';
+##drop table t1;
+
+#
+# Bug#9442 Set parameter make query fail if column character set is UCS2
+#
+create table t1 (utext varchar(20) character set utf16);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+execute stmt using @param1;
+select utext from t1 where utext like '%%';
+drop table t1;
+deallocate prepare stmt;
+
+#
+# Bug#22052 Trailing spaces are not removed from UNICODE fields in an index
+#
+create table t1 (
+ a char(10) character set utf16 not null,
+ index a (a)
+) engine=myisam;
+insert into t1 values (repeat(0x201f, 10));
+insert into t1 values (repeat(0x2020, 10));
+insert into t1 values (repeat(0x2021, 10));
+# make sure "index read" is used
+explain select hex(a) from t1 order by a;
+select hex(a) from t1 order by a;
+alter table t1 drop index a;
+select hex(a) from t1 order by a;
+drop table t1;
+
+##
+## Bug #20076: server crashes for a query with GROUP BY if MIN/MAX aggregation
+## over a 'ucs2' field uses a temporary table
+##
+##CREATE TABLE t1 (id int, s char(5) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci);
+##INSERT INTO t1 VALUES (1, 'ZZZZZ'), (1, 'ZZZ'), (2, 'ZZZ'), (2, 'ZZZZZ');
+##SELECT id, MIN(s) FROM t1 GROUP BY id;
+##DROP TABLE t1;
+
+###
+### Bug #20536: md5() with GROUP BY and UCS2 return different results on myisam/innodb
+###
+##
+##--disable_warnings
+##drop table if exists bug20536;
+##--enable_warnings
+##
+##set names latin1;
+##create table bug20536 (id bigint not null auto_increment primary key, name
+##varchar(255) character set ucs2 not null);
+##insert into `bug20536` (`id`,`name`) values (1, _latin1 x'7465737431'), (2, "'test\\_2'");
+##select md5(name) from bug20536;
+##select sha1(name) from bug20536;
+##select make_set(3, name, upper(name)) from bug20536;
+##select export_set(5, name, upper(name)) from bug20536;
+##select export_set(5, name, upper(name), ",", 5) from bug20536;
+
+#
+# Bug #20108: corrupted default enum value for a ucs2 field
+#
+
+CREATE TABLE t1 (
+ status enum('active','passive') character set utf16 collate utf16_general_ci
+ NOT NULL default 'passive'
+);
+SHOW CREATE TABLE t1;
+ALTER TABLE t1 ADD a int NOT NULL AFTER status;
+SHOW CREATE TABLE t1;
+DROP TABLE t1;
+
+##CREATE TABLE t2 (
+## status enum('active','passive') collate ucs2_turkish_ci
+## NOT NULL default 'passive'
+##);
+##SHOW CREATE TABLE t2;
+##ALTER TABLE t2 ADD a int NOT NULL AFTER status;
+##DROP TABLE t2;
+
+
+--echo End of 4.1 tests
+
+#
+# Conversion from an UTF16 string to a decimal column
+#
+CREATE TABLE t1 (a varchar(64) character set utf16, b decimal(10,3));
+INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
+update t1 set b=a;
+SELECT *, hex(a) FROM t1;
+DROP TABLE t1;
+
+#
+# Bug#9442 Set parameter make query fail if column character set is UCS2
+#
+create table t1 (utext varchar(20) character set utf16);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+execute stmt using @param1;
+select utext from t1 where utext like '%%';
+drop table t1;
+deallocate prepare stmt;
+
+#
+# Bug#22638 SOUNDEX broken for international characters
+#
+set names latin1;
+set character_set_connection=utf16;
+select soundex(''),soundex('he'),soundex('hello all folks'),soundex('#3556 in bugdb');
+select hex(soundex('')),hex(soundex('he')),hex(soundex('hello all folks')),hex(soundex('#3556 in bugdb'));
+select 'mood' sounds like 'mud';
+# Cyrillic A, BE, VE
+select hex(soundex(_utf16 0x041004110412));
+# Make sure that "U+00BF INVERTED QUESTION MARK" is not considered as letter
+select hex(soundex(_utf16 0x00BF00C0));
+set names latin1;
+
+#
+# Bug #14290: character_maximum_length for text fields
+#
+create table t1(a blob, b text charset utf16);
+select data_type, character_octet_length, character_maximum_length
+ from information_schema.columns where table_name='t1';
+drop table t1;
+
+
+set names latin1;
+set collation_connection=utf16_general_ci;
+#
+# Testing cs->coll->instr()
+#
+select position('bb' in 'abba');
+
+#
+# Testing cs->coll->hash_sort()
+#
+create table t1 (a varchar(10) character set utf16) engine=heap;
+insert into t1 values ('a'),('A'),('b'),('B');
+select * from t1 where a='a' order by binary a;
+select hex(min(binary a)),count(*) from t1 group by a;
+drop table t1;
+
+#
+# Testing cs->cset->numchars()
+#
+select char_length('abcd'), octet_length('abcd');
+select char_length(_utf16 0xD800DC00), octet_length(_utf16 0xD800DC00);
+select char_length(_utf16 0xD87FDFFF), octet_length(_utf16 0xD87FDFFF);
+
+#
+# Testing cs->cset->charpos()
+#
+select left('abcd',2);
+select hex(left(_utf16 0xD800DC00D87FDFFF, 1));
+select hex(right(_utf16 0xD800DC00D87FDFFF, 1));
+
+#
+# Testing cs->cset->well_formed_length()
+#
+create table t1 (a varchar(10) character set utf16);
+# Bad sequences
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf16 0xD800);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf16 0xDC00);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf16 0xD800D800);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf16 0xD800E800);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf16 0xD8000800);
+# Good sequences
+insert into t1 values (_utf16 0xD800DC00);
+insert into t1 values (_utf16 0xD800DCFF);
+insert into t1 values (_utf16 0xDBFFDC00);
+insert into t1 values (_utf16 0xDBFFDCFF);
+select hex(a) from t1;
+drop table t1;
+
+#
+# Bug#32393 Character sets: illegal characters in utf16 columns
+#
+# Tests that cs->cset->wc_mb() doesn't accept surrogate parts
+#
+# via alter
+#
+create table t1 (s1 varchar(50) character set ucs2);
+insert into t1 values (0xdf84);
+alter table t1 modify column s1 varchar(50) character set utf16;
+select hex(s1) from t1;
+drop table t1;
+#
+# via update
+#
+create table t1 (s1 varchar(5) character set ucs2, s2 varchar(5) character set utf16);
+insert into t1 (s1) values (0xdf84);
+update t1 set s2 = s1;
+select hex(s2) from t1;
+drop table t1;
+
+
+
+#
+# Testing cs->cset->lengthsp()
+#
+create table t1 (a char(10)) character set utf16;
+insert into t1 values ('a ');
+select hex(a) from t1;
+drop table t1;
+
+#
+# Testing cs->cset->caseup() and cs->cset->casedn()
+#
+select upper('abcd'), lower('ABCD');
+
+#
+# TODO: str_to_datetime() is broken and doesn't work with ucs2 and utf16
+# Testing cs->cset->snprintf()
+#
+#create table t1 (a date);
+#insert into t1 values ('2007-09-16');
+#select * from t1;
+#drop table t1;
+
+#
+# Testing cs->cset->l10tostr
+# !!! Not used in the code
+
+#
+# Testing cs->cset->ll10tostr
+#
+create table t1 (a varchar(10) character set utf16);
+insert into t1 values (123456);
+select a, hex(a) from t1;
+drop table t1;
+
+
+# Testing cs->cset->fill
+# SOUNDEX fills strings with DIGIT ZERO up to four characters
+select hex(soundex('a'));
+
+#
+# Testing cs->cset->strntol
+# !!! Not used in the code
+
+#
+# Testing cs->cset->strntoul
+#
+create table t1 (a enum ('a','b','c')) character set utf16;
+insert into t1 values ('1');
+select * from t1;
+drop table t1;
+
+#
+# Testing cs->cset->strntoll and cs->cset->strntoull
+#
+set names latin1;
+select hex(conv(convert('123' using utf16), -10, 16));
+select hex(conv(convert('123' using utf16), 10, 16));
+
+#
+# Testing cs->cset->strntod
+#
+set names latin1;
+set character_set_connection=utf16;
+select 1.1 + '1.2';
+select 1.1 + '1.2xxx';
+
+# Testing strntoll10_utf16
+# Testing cs->cset->strtoll10
+select left('aaa','1');
+
+#
+# Testing cs->cset->strntoull10rnd
+#
+create table t1 (a int);
+insert into t1 values ('-1234.1e2');
+insert into t1 values ('-1234.1e2xxxx');
+insert into t1 values ('-1234.1e2 ');
+select * from t1;
+drop table t1;
+
+#
+# Testing cs->cset->scan
+#
+create table t1 (a int);
+insert into t1 values ('1 ');
+insert into t1 values ('1 x');
+select * from t1;
+drop table t1;
+
+#
+# Testing auto-conversion to TEXT
+#
+create table t1 (a varchar(17000) character set utf16);
+show create table t1;
+drop table t1;
+
+#
+# Testing that maximim possible key length is 1000 bytes
+#
+create table t1 (a varchar(250) character set utf16 primary key);
+show create table t1;
+drop table t1;
+--error ER_TOO_LONG_KEY
+create table t1 (a varchar(334) character set utf16 primary key);
+
+#
+# Conversion to utf8
+#
+create table t1 (a char(1) character set utf16);
+insert into t1 values (0xD800DC00),(0xD800DCFF),(0xDB7FDC00),(0xDB7FDCFF);
+insert into t1 values (0x00C0), (0x00FF),(0xE000), (0xFFFF);
+select hex(a), hex(@a:=convert(a using utf8mb4)), hex(convert(@a using utf16)) from t1;
+drop table t1;
+
+#
+# Test basic regex functionality
+#
+set collation_connection=utf16_general_ci;
+--source include/ctype_regex.inc
+set names latin1;
+
+#
+# Test how character set works with date/time
+#
+SET collation_connection=utf16_general_ci;
+--source include/ctype_datetime.inc
+SET NAMES latin1;
+
+#
+# Bug#33073 Character sets: ordering fails with utf32
+#
+SET collation_connection=utf16_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',2) as s1 LIMIT 0;
+SHOW CREATE TABLE t1;
+INSERT INTO t1 VALUES ('ab'),('AE'),('ab'),('AE');
+SELECT * FROM t1 ORDER BY s1;
+SET max_sort_length=4;
+SELECT * FROM t1 ORDER BY s1;
+DROP TABLE t1;
+SET max_sort_length=DEFAULT;
+SET NAMES latin1;
+
+
+#
+## TODO: add tests for all engines
+#
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_utf16_uca.test b/mysql-test/t/ctype_utf16_uca.test
new file mode 100644
index 00000000000..5314777c6f4
--- /dev/null
+++ b/mysql-test/t/ctype_utf16_uca.test
@@ -0,0 +1,290 @@
+-- source include/have_utf16.inc
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+set names utf8;
+set collation_connection=utf16_unicode_ci;
+select hex('a'), hex('a ');
+-- source include/endspace.inc
+
+#
+# Bug #6787 LIKE not working properly with _ and utf8 data
+#
+select 'c' like '\_' as want0;
+
+#
+# Bug #5679 utf8_unicode_ci LIKE--trailing % doesn't equal zero characters
+#
+CREATE TABLE t (
+ c char(20) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARACTER SET utf16 COLLATE utf16_unicode_ci;
+INSERT INTO t VALUES ('a'),('ab'),('aba');
+ALTER TABLE t ADD INDEX (c);
+SELECT c FROM t WHERE c LIKE 'a%';
+DROP TABLE t;
+
+
+create table t1 (c1 char(10) character set utf16 collate utf16_bin);
+
+#
+# Basic Latin
+#
+insert into t1 values ('A'),('a');
+insert into t1 values ('B'),('b');
+insert into t1 values ('C'),('c');
+insert into t1 values ('D'),('d');
+insert into t1 values ('E'),('e');
+insert into t1 values ('F'),('f');
+insert into t1 values ('G'),('g');
+insert into t1 values ('H'),('h');
+insert into t1 values ('I'),('i');
+insert into t1 values ('J'),('j');
+insert into t1 values ('K'),('k');
+insert into t1 values ('L'),('l');
+insert into t1 values ('M'),('m');
+insert into t1 values ('N'),('n');
+insert into t1 values ('O'),('o');
+insert into t1 values ('P'),('p');
+insert into t1 values ('Q'),('q');
+insert into t1 values ('R'),('r');
+insert into t1 values ('S'),('s');
+insert into t1 values ('T'),('t');
+insert into t1 values ('U'),('u');
+insert into t1 values ('V'),('v');
+insert into t1 values ('W'),('w');
+insert into t1 values ('X'),('x');
+insert into t1 values ('Y'),('y');
+insert into t1 values ('Z'),('z');
+
+#
+# Latin1 suppliment
+#
+insert into t1 values (0x00e0),(0x00c0);
+insert into t1 values (0x00e1),(0x00c1);
+insert into t1 values (0x00e2),(0x00c2);
+insert into t1 values (0x00e3),(0x00c3);
+insert into t1 values (0x00e4),(0x00c4);
+insert into t1 values (0x00e5),(0x00c5);
+insert into t1 values (0x00e6),(0x00c6);
+insert into t1 values (0x00e7),(0x00c7);
+insert into t1 values (0x00e8),(0x00c8);
+insert into t1 values (0x00e9),(0x00c9);
+insert into t1 values (0x00ea),(0x00ca);
+insert into t1 values (0x00eb),(0x00cb);
+insert into t1 values (0x00ec),(0x00cc);
+insert into t1 values (0x00ed),(0x00cd);
+insert into t1 values (0x00ee),(0x00ce);
+insert into t1 values (0x00ef),(0x00cf);
+
+insert into t1 values (0x00f0),(0x00d0);
+insert into t1 values (0x00f1),(0x00d1);
+insert into t1 values (0x00f2),(0x00d2);
+insert into t1 values (0x00f3),(0x00d3);
+insert into t1 values (0x00f4),(0x00d4);
+insert into t1 values (0x00f5),(0x00d5);
+insert into t1 values (0x00f6),(0x00d6);
+insert into t1 values (0x00f7),(0x00d7);
+insert into t1 values (0x00f8),(0x00d8);
+insert into t1 values (0x00f9),(0x00d9);
+insert into t1 values (0x00fa),(0x00da);
+insert into t1 values (0x00fb),(0x00db);
+insert into t1 values (0x00fc),(0x00dc);
+insert into t1 values (0x00fd),(0x00dd);
+insert into t1 values (0x00fe),(0x00de);
+insert into t1 values (0x00ff),(0x00df);
+
+#
+# Latin extended-A, 0100-017F
+#
+insert into t1 values (0x0100),(0x0101),(0x0102),(0x0103);
+insert into t1 values (0x0104),(0x0105),(0x0106),(0x0107);
+insert into t1 values (0x0108),(0x0109),(0x010a),(0x010b);
+insert into t1 values (0x010c),(0x010d),(0x010e),(0x010f);
+insert into t1 values (0x0110),(0x0111),(0x0112),(0x0113);
+insert into t1 values (0x0114),(0x0115),(0x0116),(0x0117);
+insert into t1 values (0x0118),(0x0119),(0x011a),(0x011b);
+insert into t1 values (0x011c),(0x011d),(0x011e),(0x011f);
+insert into t1 values (0x0120),(0x0121),(0x0122),(0x0123);
+insert into t1 values (0x0124),(0x0125),(0x0126),(0x0127);
+insert into t1 values (0x0128),(0x0129),(0x012a),(0x012b);
+insert into t1 values (0x012c),(0x012d),(0x012e),(0x012f);
+insert into t1 values (0x0130),(0x0131),(0x0132),(0x0133);
+insert into t1 values (0x0134),(0x0135),(0x0136),(0x0137);
+insert into t1 values (0x0138),(0x0139),(0x013a),(0x013b);
+insert into t1 values (0x013c),(0x013d),(0x013e),(0x013f);
+insert into t1 values (0x0140),(0x0141),(0x0142),(0x0143);
+insert into t1 values (0x0144),(0x0145),(0x0146),(0x0147);
+insert into t1 values (0x0148),(0x0149),(0x014a),(0x014b);
+insert into t1 values (0x014c),(0x014d),(0x014e),(0x014f);
+insert into t1 values (0x0150),(0x0151),(0x0152),(0x0153);
+insert into t1 values (0x0154),(0x0155),(0x0156),(0x0157);
+insert into t1 values (0x0158),(0x0159),(0x015a),(0x015b);
+insert into t1 values (0x015c),(0x015d),(0x015e),(0x015f);
+insert into t1 values (0x0160),(0x0161),(0x0162),(0x0163);
+insert into t1 values (0x0164),(0x0165),(0x0166),(0x0167);
+insert into t1 values (0x0168),(0x0169),(0x016a),(0x016b);
+insert into t1 values (0x016c),(0x016d),(0x016e),(0x016f);
+insert into t1 values (0x0170),(0x0171),(0x0172),(0x0173);
+insert into t1 values (0x0174),(0x0175),(0x0176),(0x0177);
+insert into t1 values (0x0178),(0x0179),(0x017a),(0x017b);
+insert into t1 values (0x017c),(0x017d),(0x017e),(0x017f);
+
+#
+# Latin extended-B, 0180-024F
+#
+insert into t1 values (0x0180),(0x0181),(0x0182),(0x0183);
+insert into t1 values (0x0184),(0x0185),(0x0186),(0x0187);
+insert into t1 values (0x0188),(0x0189),(0x018a),(0x018b);
+insert into t1 values (0x018c),(0x018d),(0x018e),(0x018f);
+insert into t1 values (0x0190),(0x0191),(0x0192),(0x0193);
+insert into t1 values (0x0194),(0x0195),(0x0196),(0x0197);
+insert into t1 values (0x0198),(0x0199),(0x019a),(0x019b);
+insert into t1 values (0x019c),(0x019d),(0x019e),(0x019f);
+insert into t1 values (0x01a0),(0x01a1),(0x01a2),(0x01a3);
+insert into t1 values (0x01a4),(0x01a5),(0x01a6),(0x01a7);
+insert into t1 values (0x01a8),(0x01a9),(0x01aa),(0x01ab);
+insert into t1 values (0x01ac),(0x01ad),(0x01ae),(0x01af);
+insert into t1 values (0x01b0),(0x01b1),(0x01b2),(0x01b3);
+insert into t1 values (0x01b4),(0x01b5),(0x01b6),(0x01b7);
+insert into t1 values (0x01b8),(0x01b9),(0x01ba),(0x01bb);
+insert into t1 values (0x01bc),(0x01bd),(0x01be),(0x01bf);
+insert into t1 values (0x01c0),(0x01c1),(0x01c2),(0x01c3);
+insert into t1 values (0x01c4),(0x01c5),(0x01c6),(0x01c7);
+insert into t1 values (0x01c8),(0x01c9),(0x01ca),(0x01cb);
+insert into t1 values (0x01cc),(0x01cd),(0x01ce),(0x01cf);
+insert into t1 values (0x01d0),(0x01d1),(0x01d2),(0x01d3);
+insert into t1 values (0x01d4),(0x01d5),(0x01d6),(0x01d7);
+insert into t1 values (0x01d8),(0x01d9),(0x01da),(0x01db);
+insert into t1 values (0x01dc),(0x01dd),(0x01de),(0x01df);
+insert into t1 values (0x01e0),(0x01e1),(0x01e2),(0x01e3);
+insert into t1 values (0x01e4),(0x01e5),(0x01e6),(0x01e7);
+insert into t1 values (0x01e8),(0x01e9),(0x01ea),(0x01eb);
+insert into t1 values (0x01ec),(0x01ed),(0x01ee),(0x01ef);
+insert into t1 values (0x01f0),(0x01f1),(0x01f2),(0x01f3);
+insert into t1 values (0x01f4),(0x01f5),(0x01f6),(0x01f7);
+insert into t1 values (0x01f8),(0x01f9),(0x01fa),(0x01fb);
+insert into t1 values (0x01fc),(0x01fd),(0x01fe),(0x01ff);
+
+
+insert into t1 values ('AA'),('Aa'),('aa'),('aA');
+insert into t1 values ('CH'),('Ch'),('ch'),('cH');
+insert into t1 values ('DZ'),('Dz'),('dz'),('dZ');
+insert into t1 values ('IJ'),('Ij'),('ij'),('iJ');
+insert into t1 values ('LJ'),('Lj'),('lj'),('lJ');
+insert into t1 values ('LL'),('Ll'),('ll'),('lL');
+insert into t1 values ('NJ'),('Nj'),('nj'),('nJ');
+insert into t1 values ('OE'),('Oe'),('oe'),('oE');
+insert into t1 values ('SS'),('Ss'),('ss'),('sS');
+insert into t1 values ('RR'),('Rr'),('rr'),('rR');
+
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_unicode_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_icelandic_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_latvian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_romanian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_slovenian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_polish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_estonian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_spanish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_swedish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_turkish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_czech_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_danish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_lithuanian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_slovak_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_spanish2_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_roman_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_esperanto_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf16_hungarian_ci;
+
+drop table t1;
+
+#
+# Bug#5324
+#
+SET NAMES utf8;
+
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_general_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+#Check one row
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_general_ci;
+INSERT INTO t1 VALUES (0x039C03C903B4);
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_general_ci ORDER BY c;
+DROP TABLE t1;
+
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+#Check one row
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_unicode_ci;
+INSERT INTO t1 VALUES (0x039C03C903B4);
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_unicode_ci ORDER BY c;
+DROP TABLE t1;
+
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf16 COLLATE utf16_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (0x039C03C903B403B11F770308);
+#Check one row row
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025 COLLATE utf16_unicode_ci;
+INSERT INTO t1 VALUES (0x039C03C903B4);
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE _utf16 0x039C0025
+COLLATE utf16_unicode_ci ORDER BY c;
+DROP TABLE t1;
+
+
+SET NAMES utf8;
+SET @test_character_set='utf16';
+SET @test_collation='utf16_swedish_ci';
+-- source include/ctype_common.inc
+
+
+SET collation_connection='utf16_unicode_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+--echo End of 4.1 tests
+
+#
+# Check UPPER/LOWER changing length
+#
+# Result shorter than argument
+CREATE TABLE t1 (id int, a varchar(30) character set utf16);
+INSERT INTO t1 VALUES (1, 0x01310069), (2, 0x01310131);
+INSERT INTO t1 VALUES (3, 0x00690069), (4, 0x01300049);
+INSERT INTO t1 VALUES (5, 0x01300130), (6, 0x00490049);
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+ALTER TABLE t1 MODIFY a VARCHAR(30) character set utf16 collate utf16_turkish_ci;
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+DROP TABLE t1;
+
+#
+# Bug #27079 Crash while grouping empty ucs2 strings
+#
+CREATE TABLE t1 (
+ c1 text character set utf16 collate utf16_polish_ci NOT NULL
+) ENGINE=MyISAM;
+insert into t1 values (''),('a');
+SELECT COUNT(*), c1 FROM t1 GROUP BY c1;
+DROP TABLE IF EXISTS t1;
+
+
+#
+# Test basic regex functionality
+#
+set collation_connection=utf16_unicode_ci;
+--source include/ctype_regex.inc
+
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_utf32.test b/mysql-test/t/ctype_utf32.test
new file mode 100644
index 00000000000..f1e17532b88
--- /dev/null
+++ b/mysql-test/t/ctype_utf32.test
@@ -0,0 +1,784 @@
+-- source include/have_utf32.inc
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+SET NAMES latin1;
+SET character_set_connection=utf32;
+select hex('a'), hex('a ');
+-- source include/endspace.inc
+
+#
+# Check that incomplete utf32 characters in HEX notation
+# are left-padded with zeros
+#
+select hex(_utf32 0x44);
+select hex(_utf32 0x3344);
+select hex(_utf32 0x103344);
+
+select hex(_utf32 X'44');
+select hex(_utf32 X'3344');
+select hex(_utf32 X'103344');
+
+
+#
+# Check that 0x20 is only trimmed when it is
+# a part of real SPACE character, not just a part
+# of a multibyte sequence.
+# Note, CYRILLIC LETTER ER is used as an example, which
+# is stored as 0x0420 in UCS2, thus contains 0x20 in the
+# low byte. The second character is THREE-PER-M, U+2004,
+# which contains 0x20 in the high byte.
+#
+
+CREATE TABLE t1 (word VARCHAR(64), word2 CHAR(64)) CHARACTER SET utf32;
+INSERT INTO t1 VALUES (_koi8r 0xF2, _koi8r 0xF2), (X'2004',X'2004');
+SELECT hex(word) FROM t1 ORDER BY word;
+SELECT hex(word2) FROM t1 ORDER BY word2;
+DELETE FROM t1;
+
+#
+# Check that real spaces are correctly trimmed.
+#
+
+INSERT INTO t1 VALUES
+ (X'000004200000002000000020',X'000004200000002000000020'),
+ (X'000020040000002000000020',X'000020040000002000000020');
+SELECT hex(word) FROM t1 ORDER BY word;
+SELECT hex(word2) FROM t1 ORDER BY word2;
+DROP TABLE t1;
+
+#
+# Check LPAD/RPAD
+#
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'0421'));
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'));
+SELECT hex(LPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'));
+SELECT hex(LPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'));
+
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'0421'));
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'0000042100000422'));
+SELECT hex(RPAD(_utf32 X'0420',10,_utf32 X'000004210000042200000423'));
+SELECT hex(RPAD(_utf32 X'000004200000042100000422000004230000042400000425000004260000042700000428000004290000042A0000042B',10,_utf32 X'000004210000042200000423'));
+
+CREATE TABLE t1 SELECT
+LPAD(_utf32 X'0420',10,_utf32 X'0421') l,
+RPAD(_utf32 X'0420',10,_utf32 X'0421') r;
+SHOW CREATE TABLE t1;
+select hex(l), hex(r) from t1;
+DROP TABLE t1;
+
+create table t1 (f1 char(30));
+insert into t1 values ("103000"), ("22720000"), ("3401200"), ("78000");
+select lpad(f1, 12, "-o-/") from t1;
+drop table t1;
+
+######################################################
+#
+# Test of like
+#
+
+SET NAMES latin1;
+SET character_set_connection=utf32;
+--source include/ctype_like.inc
+
+SET NAMES utf8;
+SET character_set_connection=utf32;
+CREATE TABLE t1 (a VARCHAR(10) CHARACTER SET utf32);
+INSERT INTO t1 VALUES ('фыва'),('Фыва'),('фЫва'),('фыВа'),('фывÐ'),('ФЫВÐ');
+INSERT INTO t1 VALUES ('фывапролдж'),('Фывапролдж'),('фЫвапролдж'),('фыВапролдж');
+INSERT INTO t1 VALUES ('фывÐпролдж'),('фываПролдж'),('фывапРолдж'),('фывапрОлдж');
+INSERT INTO t1 VALUES ('фывапроЛдж'),('фывапролДж'),('фывапролдЖ'),('ФЫВÐПРОЛДЖ');
+SELECT * FROM t1 WHERE a LIKE '%фЫва%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE '%фЫв%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' ORDER BY BINARY a;
+SELECT * FROM t1 WHERE a LIKE 'фЫва%' COLLATE utf32_bin ORDER BY BINARY a;
+DROP TABLE t1;
+
+CREATE TABLE t1 (word varchar(64) NOT NULL, PRIMARY KEY (word))
+ENGINE=MyISAM CHARACTER SET utf32;
+INSERT INTO t1 (word) VALUES ("cat");
+SELECT * FROM t1 WHERE word LIKE "c%";
+SELECT * FROM t1 WHERE word LIKE "ca_";
+SELECT * FROM t1 WHERE word LIKE "cat";
+SELECT * FROM t1 WHERE word LIKE _utf32 x'0000006300000025'; # "c%"
+SELECT * FROM t1 WHERE word LIKE _utf32 x'00000063000000610000005F'; # "ca_"
+DROP TABLE t1;
+
+
+#
+# Check that INSERT() works fine.
+# This invokes charpos() function.
+select insert(_utf32 0x000000610000006200000063,10,2,_utf32 0x000000640000006500000066);
+select insert(_utf32 0x000000610000006200000063,1,2,_utf32 0x000000640000006500000066);
+
+#######################################################
+
+#
+# Bug 1264
+#
+# Description:
+#
+# When using a ucs2 table in MySQL,
+# either with ucs2_general_ci or ucs2_bin collation,
+# words are returned in an incorrect order when using ORDER BY
+# on an _indexed_ CHAR or VARCHAR column. They are sorted with
+# the longest word *first* instead of last. I.E. The word "aardvark"
+# is in the results before the word "a".
+#
+# If there is no index for the column, the problem does not occur.
+#
+# Interestingly, if there is no second column, the words are returned
+# in the correct order.
+#
+# According to EXPLAIN, it looks like when the output includes columns that
+# are not part of the index sorted on, it does a filesort, which fails.
+# Using a straight index yields correct results.
+
+SET NAMES latin1;
+
+#
+# Two fields, index
+#
+
+CREATE TABLE t1 (
+ word VARCHAR(64),
+ bar INT(11) default 0,
+ PRIMARY KEY (word))
+ ENGINE=MyISAM
+ CHARSET utf32
+ COLLATE utf32_general_ci ;
+
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+SELECT * FROM t1 ORDER BY word;
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+SELECT word FROM t1 ORDER by word;
+DROP TABLE t1;
+
+
+#
+# One field, index
+#
+
+CREATE TABLE t1 (
+ word VARCHAR(64) ,
+ PRIMARY KEY (word))
+ ENGINE=MyISAM
+ CHARSET utf32
+ COLLATE utf32_general_ci;
+
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a");
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY WORD;
+SELECT * FROM t1 ORDER BY word;
+DROP TABLE t1;
+
+
+#
+# Two fields, no index
+#
+
+CREATE TABLE t1 (
+ word TEXT,
+ bar INT(11) AUTO_INCREMENT,
+ PRIMARY KEY (bar))
+ ENGINE=MyISAM
+ CHARSET utf32
+ COLLATE utf32_general_ci ;
+INSERT INTO t1 (word) VALUES ("aar");
+INSERT INTO t1 (word) VALUES ("a" );
+INSERT INTO t1 (word) VALUES ("aardvar");
+INSERT INTO t1 (word) VALUES ("aardvark");
+INSERT INTO t1 (word) VALUES ("aardvara");
+INSERT INTO t1 (word) VALUES ("aardvarz");
+EXPLAIN SELECT * FROM t1 ORDER BY word;
+SELECT * FROM t1 ORDER BY word;
+EXPLAIN SELECT word FROM t1 ORDER BY word;
+SELECT word FROM t1 ORDER BY word;
+DROP TABLE t1;
+
+#
+# END OF Bug 1264 test
+#
+########################################################
+
+
+#
+# Check alignment for from-binary-conversion with CAST and CONVERT
+#
+SELECT hex(cast(0xAA as char character set utf32));
+SELECT hex(convert(0xAA using utf32));
+
+#
+# Check alignment for string types
+#
+CREATE TABLE t1 (a char(10) character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a varchar(10) character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a text character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a mediumtext character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+CREATE TABLE t1 (a longtext character set utf32);
+INSERT INTO t1 VALUES (0x1),(0x11),(0x111),(0x1111),(0x11111);
+SELECT HEX(a) FROM t1;
+DROP TABLE t1;
+
+##
+## Bug #5024 Server crashes with queries on fields
+## with certain charset/collation settings
+##
+#
+#create table t1 (s1 char character set `ucs2` collate `ucs2_czech_ci`);
+#insert into t1 values ('0'),('1'),('2'),('a'),('b'),('c');
+#select s1 from t1 where s1 > 'a' order by s1;
+#drop table t1;
+
+#
+# Bug #5081 : UCS2 fields are filled with '0x2020'
+# after extending field length
+#
+create table t1(a char(1)) default charset utf32;
+insert into t1 values ('a'),('b'),('c');
+alter table t1 modify a char(5);
+select a, hex(a) from t1;
+drop table t1;
+
+#
+# Check prepare statement from an UTF32 string
+#
+set @ivar= 1234;
+set @str1 = 'select ?';
+set @str2 = convert(@str1 using utf32);
+prepare stmt1 from @str2;
+execute stmt1 using @ivar;
+
+#
+# Check that utf32 works with ENUM and SET type
+#
+set names utf8;
+create table t1 (a enum('x','y','z') character set utf32);
+show create table t1;
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+select a, hex(a) from t1 order by a;
+alter table t1 change a a enum('x','y','z','d','e','ä','ö','ü') character set utf32;
+show create table t1;
+insert into t1 values ('D');
+insert into t1 values ('E ');
+insert into t1 values ('ä');
+insert into t1 values ('ö');
+insert into t1 values ('ü');
+select a, hex(a) from t1 order by a;
+drop table t1;
+
+create table t1 (a set ('x','y','z','ä','ö','ü') character set utf32);
+show create table t1;
+insert into t1 values ('x');
+insert into t1 values ('y');
+insert into t1 values ('z');
+insert into t1 values ('x,y');
+insert into t1 values ('x,y,z,ä,ö,ü');
+select a, hex(a) from t1 order by a;
+drop table t1;
+
+#
+# Bug#7302 UCS2 data in ENUM fields get truncated when new column is added
+#
+create table t1(a enum('a','b','c')) default character set utf32;
+insert into t1 values('a'),('b'),('c');
+alter table t1 add b char(1);
+show warnings;
+select * from t1 order by a;
+drop table t1;
+
+SET NAMES latin1;
+SET collation_connection='utf32_general_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+SET NAMES latin1;
+SET collation_connection='utf32_bin';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+#
+# Bug#10344 Some string functions fail for UCS2
+#
+select hex(substr(_utf32 0x000000e4000000e500000068,1));
+select hex(substr(_utf32 0x000000e4000000e500000068,2));
+select hex(substr(_utf32 0x000000e4000000e500000068,3));
+select hex(substr(_utf32 0x000000e4000000e500000068,-1));
+select hex(substr(_utf32 0x000000e4000000e500000068,-2));
+select hex(substr(_utf32 0x000000e4000000e500000068,-3));
+
+#SET NAMES latin1;
+#
+# Bug#8235
+#
+# This bug also helped to find another problem that
+# INSERT of a UCS2 string containing a negative number
+# into a unsigned int column didn't produce warnings.
+# This test covers both problems.
+#
+#SET collation_connection='ucs2_swedish_ci';
+#CREATE TABLE t1 (Field1 int(10) default '0');
+## no warnings, negative numbers are allowed
+#INSERT INTO t1 VALUES ('-1');
+#SELECT * FROM t1;
+#DROP TABLE t1;
+#CREATE TABLE t1 (Field1 int(10) unsigned default '0');
+## this should generate a "Data truncated" warning
+#INSERT INTO t1 VALUES ('-1');
+#DROP TABLE t1;
+#SET NAMES latin1;
+
+#
+##
+## Bug#18691 Converting number to UNICODE string returns invalid result
+##
+#SELECT CONVERT(103, CHAR(50) UNICODE);
+#SELECT CONVERT(103.0, CHAR(50) UNICODE);
+#SELECT CONVERT(-103, CHAR(50) UNICODE);
+#SELECT CONVERT(-103.0, CHAR(50) UNICODE);
+
+#
+# Bug#9557 MyISAM utf8 table crash
+#
+CREATE TABLE t1 (
+ a varchar(250) NOT NULL default '',
+ KEY a (a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf32 COLLATE utf32_general_ci;
+insert into t1 values (0x803d);
+insert into t1 values (0x005b);
+select hex(a) from t1;
+drop table t1;
+
+##
+## Bug #14583 Bug on query using a LIKE on indexed field with ucs2_bin collation
+##
+#--disable_warnings
+#create table t1(f1 varchar(5) CHARACTER SET utf32 COLLATE utf32_bin NOT NULL) engine=InnoDB;
+#--enable_warnings
+#insert into t1 values('a');
+#create index t1f1 on t1(f1);
+#select f1 from t1 where f1 like 'a%';
+#drop table t1;
+
+#
+# Bug#9442 Set parameter make query fail if column character set is UCS2
+#
+create table t1 (utext varchar(20) character set utf32);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+execute stmt using @param1;
+select utext from t1 where utext like '%%';
+drop table t1;
+deallocate prepare stmt;
+
+#
+# Bug#22052 Trailing spaces are not removed from UNICODE fields in an index
+#
+create table t1 (
+ a char(10) character set utf32 not null,
+ index a (a)
+) engine=myisam;
+insert into t1 values (repeat(0x0000201f, 10));
+insert into t1 values (repeat(0x00002020, 10));
+insert into t1 values (repeat(0x00002021, 10));
+# make sure "index read" is used
+explain select hex(a) from t1 order by a;
+select hex(a) from t1 order by a;
+alter table t1 drop index a;
+select hex(a) from t1 order by a;
+drop table t1;
+
+#
+# Bug #20076: server crashes for a query with GROUP BY if MIN/MAX aggregation
+# over a 'ucs2' field uses a temporary table
+#
+#CREATE TABLE t1 (id int, s char(5) CHARACTER SET ucs2 COLLATE ucs2_unicode_ci);
+#INSERT INTO t1 VALUES (1, 'ZZZZZ'), (1, 'ZZZ'), (2, 'ZZZ'), (2, 'ZZZZZ');
+#SELECT id, MIN(s) FROM t1 GROUP BY id;
+#DROP TABLE t1;
+
+##
+## Bug #20536: md5() with GROUP BY and UCS2 return different results on myisam/innodb
+##
+#
+#--disable_warnings
+#drop table if exists bug20536;
+#--enable_warnings
+#
+#set names latin1;
+#create table bug20536 (id bigint not null auto_increment primary key, name
+#varchar(255) character set ucs2 not null);
+#insert into `bug20536` (`id`,`name`) values (1, _latin1 x'7465737431'), (2, "'test\\_2'");
+#select md5(name) from bug20536;
+#select sha1(name) from bug20536;
+#select make_set(3, name, upper(name)) from bug20536;
+#select export_set(5, name, upper(name)) from bug20536;
+#select export_set(5, name, upper(name), ",", 5) from bug20536;
+
+#
+# Bug #20108: corrupted default enum value for a ucs2 field
+#
+
+CREATE TABLE t1 (
+ status enum('active','passive') character set utf32 collate utf32_general_ci
+ NOT NULL default 'passive'
+);
+SHOW CREATE TABLE t1;
+ALTER TABLE t1 ADD a int NOT NULL AFTER status;
+SHOW CREATE TABLE t1;
+DROP TABLE t1;
+
+#CREATE TABLE t2 (
+# status enum('active','passive') collate ucs2_turkish_ci
+# NOT NULL default 'passive'
+#);
+#SHOW CREATE TABLE t2;
+#ALTER TABLE t2 ADD a int NOT NULL AFTER status;
+#DROP TABLE t2;
+
+
+## Some broken functions: add these tests just to document current behavior.
+#
+## PASSWORD and OLD_PASSWORD don't work with UCS2 strings, but to fix it would
+## not be backwards compatible in all cases, so it's best to leave it alone
+#select password(name) from bug20536;
+#select old_password(name) from bug20536;
+#
+## Disable test case as encrypt relies on 'crypt' function.
+## "decrypt" is noramlly tested in func_crypt.test which have a
+## "have_crypt.inc" test
+#--disable_parsing
+## ENCRYPT relies on OS function crypt() which takes a NUL-terminated string; it
+## doesn't return good results for strings with embedded 0 bytes. It won't be
+## fixed unless we choose to re-implement the crypt() function ourselves to take
+## an extra size_t string_length argument.
+#select encrypt(name, 'SALT') from bug20536;
+#--enable_parsing
+#
+## QUOTE doesn't work with UCS2 data. It would require a total rewrite
+## of Item_func_quote::val_str(), which isn't worthwhile until UCS2 is
+## supported fully as a client character set.
+#select quote(name) from bug20536;
+#
+#drop table bug20536;
+#
+--echo End of 4.1 tests
+
+
+#
+# Conversion from an UTF32 string to a decimal column
+#
+CREATE TABLE t1 (a varchar(64) character set utf32, b decimal(10,3));
+INSERT INTO t1 VALUES ("1.1", 0), ("2.1", 0);
+update t1 set b=a;
+SELECT *, hex(a) FROM t1;
+DROP TABLE t1;
+
+#
+# Bug#9442 Set parameter make query fail if column character set is UCS2
+#
+create table t1 (utext varchar(20) character set utf32);
+insert into t1 values ("lily");
+insert into t1 values ("river");
+prepare stmt from 'select utext from t1 where utext like ?';
+set @param1='%%';
+execute stmt using @param1;
+execute stmt using @param1;
+select utext from t1 where utext like '%%';
+drop table t1;
+deallocate prepare stmt;
+
+#
+# Bug#22638 SOUNDEX broken for international characters
+#
+set names latin1;
+set character_set_connection=utf32;
+select soundex(''),soundex('he'),soundex('hello all folks'),soundex('#3556 in bugdb');
+select hex(soundex('')),hex(soundex('he')),hex(soundex('hello all folks')),hex(soundex('#3556 in bugdb'));
+select 'mood' sounds like 'mud';
+# Cyrillic A, BE, VE
+select hex(soundex(_utf32 0x000004100000041100000412));
+# Make sure that "U+00BF INVERTED QUESTION MARK" is not considered as letter
+select hex(soundex(_utf32 0x000000BF000000C0));
+set names latin1;
+
+#
+# Bug #14290: character_maximum_length for text fields
+#
+create table t1(a blob, b text charset utf32);
+select data_type, character_octet_length, character_maximum_length
+ from information_schema.columns where table_name='t1';
+drop table t1;
+
+
+set names latin1;
+set collation_connection=utf32_general_ci;
+#
+# Testing cs->coll->instr()
+#
+select position('bb' in 'abba');
+
+#
+# Testing cs->coll->hash_sort()
+#
+create table t1 (a varchar(10) character set utf32) engine=heap;
+insert into t1 values ('a'),('A'),('b'),('B');
+select * from t1 where a='a' order by binary a;
+select hex(min(binary a)),count(*) from t1 group by a;
+drop table t1;
+
+#
+# Testing cs->cset->numchars()
+#
+select char_length('abcd'), octet_length('abcd');
+
+#
+# Testing cs->cset->charpos()
+#
+select left('abcd',2);
+
+#
+# Testing cs->cset->well_formed_length()
+#
+create table t1 (a varchar(10) character set utf32);
+insert into t1 values (_utf32 0x0010FFFF);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf32 0x00110000);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf32 0x00110101);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf32 0x01000101);
+--error ER_INVALID_CHARACTER_STRING
+insert into t1 values (_utf32 0x11000101);
+select hex(a) from t1;
+drop table t1;
+
+#
+# Bug#32914 Character sets: illegal characters in utf8 and utf32 columns
+#
+create table t1 (utf32 varchar(2) character set utf32);
+--echo Wrong character with pad
+insert into t1 values (0x110000);
+--echo Wrong chsaracter without pad
+insert into t1 values (0x00110000);
+--echo Wrong character with pad followed by another wrong character
+insert into t1 values (0x11000000110000);
+--echo Good character with pad followed by bad character
+insert into t1 values (0x10000000110000);
+--echo Good character without pad followed by bad character
+insert into t1 values (0x0010000000110000);
+--echo Wrong character with the second byte higher than 0x10
+insert into t1 values (0x00800037);
+--echo Wrong character with pad with the second byte higher than 0x10
+insert into t1 values (0x00800037);
+drop table t1;
+
+#
+# Bug#32394 Character sets: crash if comparison with 0xfffd
+#
+select _utf32'a' collate utf32_general_ci = 0xfffd;
+select hex(concat(_utf32 0x0410 collate utf32_general_ci, 0x61));
+create table t1 (s1 varchar(5) character set utf32);
+insert into t1 values (0xfffd);
+select case when s1 = 0xfffd then 1 else 0 end from t1;
+select hex(s1) from t1 where s1 = 0xfffd;
+drop table t1;
+
+#
+# Testing cs->cset->lengthsp()
+#
+create table t1 (a char(10)) character set utf32;
+insert into t1 values ('a ');
+select hex(a) from t1;
+drop table t1;
+
+#
+# Testing cs->cset->caseup() and cs->cset->casedn()
+#
+select upper('abcd'), lower('ABCD');
+
+#
+# TODO: str_to_datetime() is broken and doesn't work with ucs2 and utf32
+# Testing cs->cset->snprintf()
+#
+#create table t1 (a date);
+#insert into t1 values ('2007-09-16');
+#select * from t1;
+#drop table t1;
+
+#
+# Testing cs->cset->l10tostr
+# !!! Not used in the code
+
+#
+# Testing cs->cset->ll10tostr
+#
+create table t1 (a varchar(10) character set utf32);
+insert into t1 values (123456);
+select a, hex(a) from t1;
+drop table t1;
+
+#
+# Testing cs->cset->fill
+# SOUNDEX fills strings with DIGIT ZERO up to four characters
+select hex(soundex('a'));
+
+#
+# Testing cs->cset->strntol
+# !!! Not used in the code
+
+#
+# Testing cs->cset->strntoul
+#
+create table t1 (a enum ('a','b','c')) character set utf32;
+insert into t1 values ('1');
+select * from t1;
+drop table t1;
+
+#
+# Testing cs->cset->strntoll and cs->cset->strntoull
+#
+set names latin1;
+select hex(conv(convert('123' using utf32), -10, 16));
+select hex(conv(convert('123' using utf32), 10, 16));
+
+#
+# Testing cs->cset->strntod
+#
+set names latin1;
+set character_set_connection=utf32;
+select 1.1 + '1.2';
+select 1.1 + '1.2xxx';
+
+# Testing strntoll10_utf32
+# Testing cs->cset->strtoll10
+select left('aaa','1');
+
+#
+# Testing cs->cset->strntoull10rnd
+#
+create table t1 (a int);
+insert into t1 values ('-1234.1e2');
+insert into t1 values ('-1234.1e2xxxx');
+insert into t1 values ('-1234.1e2 ');
+select * from t1;
+drop table t1;
+
+#
+# Testing cs->cset->scan
+#
+create table t1 (a int);
+insert into t1 values ('1 ');
+insert into t1 values ('1 x');
+select * from t1;
+drop table t1;
+
+#
+# Testing auto-conversion to TEXT
+#
+create table t1 (a varchar(17000) character set utf32);
+show create table t1;
+drop table t1;
+
+#
+# Testing that maximim possible key length is 1332 bytes
+#
+create table t1 (a varchar(250) character set utf32 primary key);
+show create table t1;
+drop table t1;
+--error ER_TOO_LONG_KEY
+create table t1 (a varchar(334) character set utf32 primary key);
+
+#
+# Testing mi_check with long key values
+#
+create table t1 (a varchar(333) character set utf32, key(a));
+insert into t1 values (repeat('a',333)), (repeat('b',333));
+flush tables;
+check table t1;
+drop table t1;
+
+#
+# Test how character set works with date/time
+#
+SET collation_connection=utf32_general_ci;
+--source include/ctype_datetime.inc
+SET NAMES latin1;
+
+#
+# Test basic regex functionality
+#
+set collation_connection=utf32_general_ci;
+--source include/ctype_regex.inc
+set names latin1;
+
+
+# TODO: add tests for all engines
+
+#
+# Bug #36418 Character sets: crash if char(256 using utf32)
+#
+select hex(char(0x01 using utf32));
+select hex(char(0x0102 using utf32));
+select hex(char(0x010203 using utf32));
+select hex(char(0x01020304 using utf32));
+create table t1 (s1 varchar(1) character set utf32, s2 text character set utf32);
+create index i on t1 (s1);
+insert into t1 values (char(256 using utf32), char(256 using utf32));
+select hex(s1), hex(s2) from t1;
+drop table t1;
+
+
+#
+# Bug#33073 Character sets: ordering fails with utf32
+#
+SET collation_connection=utf32_general_ci;
+CREATE TABLE t1 AS SELECT repeat('a',2) as s1 LIMIT 0;
+SHOW CREATE TABLE t1;
+INSERT INTO t1 VALUES ('ab'),('AE'),('ab'),('AE');
+SELECT * FROM t1 ORDER BY s1;
+SET max_sort_length=4;
+SELECT * FROM t1 ORDER BY s1;
+DROP TABLE t1;
+SET max_sort_length=DEFAULT;
+SET NAMES latin1;
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_utf32_uca.test b/mysql-test/t/ctype_utf32_uca.test
new file mode 100644
index 00000000000..9386cc9e65e
--- /dev/null
+++ b/mysql-test/t/ctype_utf32_uca.test
@@ -0,0 +1,291 @@
+-- source include/have_ucs2.inc
+-- source include/have_utf32.inc
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+set names utf8;
+set collation_connection=utf32_unicode_ci;
+select hex('a'), hex('a ');
+-- source include/endspace.inc
+
+#
+# Bug #6787 LIKE not working properly with _ and utf8 data
+#
+select 'c' like '\_' as want0;
+
+#
+# Bug #5679 utf8_unicode_ci LIKE--trailing % doesn't equal zero characters
+#
+CREATE TABLE t (
+ c char(20) NOT NULL
+) ENGINE=MyISAM DEFAULT CHARACTER SET utf32 COLLATE=utf32_unicode_ci;
+INSERT INTO t VALUES ('a'),('ab'),('aba');
+ALTER TABLE t ADD INDEX (c);
+SELECT c FROM t WHERE c LIKE 'a%';
+DROP TABLE t;
+
+
+create table t1 (c1 char(10) character set utf32 collate utf32_bin);
+
+#
+# Basic Latin
+#
+insert into t1 values ('A'),('a');
+insert into t1 values ('B'),('b');
+insert into t1 values ('C'),('c');
+insert into t1 values ('D'),('d');
+insert into t1 values ('E'),('e');
+insert into t1 values ('F'),('f');
+insert into t1 values ('G'),('g');
+insert into t1 values ('H'),('h');
+insert into t1 values ('I'),('i');
+insert into t1 values ('J'),('j');
+insert into t1 values ('K'),('k');
+insert into t1 values ('L'),('l');
+insert into t1 values ('M'),('m');
+insert into t1 values ('N'),('n');
+insert into t1 values ('O'),('o');
+insert into t1 values ('P'),('p');
+insert into t1 values ('Q'),('q');
+insert into t1 values ('R'),('r');
+insert into t1 values ('S'),('s');
+insert into t1 values ('T'),('t');
+insert into t1 values ('U'),('u');
+insert into t1 values ('V'),('v');
+insert into t1 values ('W'),('w');
+insert into t1 values ('X'),('x');
+insert into t1 values ('Y'),('y');
+insert into t1 values ('Z'),('z');
+
+#
+# Latin1 suppliment
+#
+insert into t1 values (_ucs2 0x00e0),(_ucs2 0x00c0);
+insert into t1 values (_ucs2 0x00e1),(_ucs2 0x00c1);
+insert into t1 values (_ucs2 0x00e2),(_ucs2 0x00c2);
+insert into t1 values (_ucs2 0x00e3),(_ucs2 0x00c3);
+insert into t1 values (_ucs2 0x00e4),(_ucs2 0x00c4);
+insert into t1 values (_ucs2 0x00e5),(_ucs2 0x00c5);
+insert into t1 values (_ucs2 0x00e6),(_ucs2 0x00c6);
+insert into t1 values (_ucs2 0x00e7),(_ucs2 0x00c7);
+insert into t1 values (_ucs2 0x00e8),(_ucs2 0x00c8);
+insert into t1 values (_ucs2 0x00e9),(_ucs2 0x00c9);
+insert into t1 values (_ucs2 0x00ea),(_ucs2 0x00ca);
+insert into t1 values (_ucs2 0x00eb),(_ucs2 0x00cb);
+insert into t1 values (_ucs2 0x00ec),(_ucs2 0x00cc);
+insert into t1 values (_ucs2 0x00ed),(_ucs2 0x00cd);
+insert into t1 values (_ucs2 0x00ee),(_ucs2 0x00ce);
+insert into t1 values (_ucs2 0x00ef),(_ucs2 0x00cf);
+
+insert into t1 values (_ucs2 0x00f0),(_ucs2 0x00d0);
+insert into t1 values (_ucs2 0x00f1),(_ucs2 0x00d1);
+insert into t1 values (_ucs2 0x00f2),(_ucs2 0x00d2);
+insert into t1 values (_ucs2 0x00f3),(_ucs2 0x00d3);
+insert into t1 values (_ucs2 0x00f4),(_ucs2 0x00d4);
+insert into t1 values (_ucs2 0x00f5),(_ucs2 0x00d5);
+insert into t1 values (_ucs2 0x00f6),(_ucs2 0x00d6);
+insert into t1 values (_ucs2 0x00f7),(_ucs2 0x00d7);
+insert into t1 values (_ucs2 0x00f8),(_ucs2 0x00d8);
+insert into t1 values (_ucs2 0x00f9),(_ucs2 0x00d9);
+insert into t1 values (_ucs2 0x00fa),(_ucs2 0x00da);
+insert into t1 values (_ucs2 0x00fb),(_ucs2 0x00db);
+insert into t1 values (_ucs2 0x00fc),(_ucs2 0x00dc);
+insert into t1 values (_ucs2 0x00fd),(_ucs2 0x00dd);
+insert into t1 values (_ucs2 0x00fe),(_ucs2 0x00de);
+insert into t1 values (_ucs2 0x00ff),(_ucs2 0x00df);
+
+#
+# Latin extended-A, 0100-017F
+#
+insert into t1 values (_ucs2 0x0100),(_ucs2 0x0101),(_ucs2 0x0102),(_ucs2 0x0103);
+insert into t1 values (_ucs2 0x0104),(_ucs2 0x0105),(_ucs2 0x0106),(_ucs2 0x0107);
+insert into t1 values (_ucs2 0x0108),(_ucs2 0x0109),(_ucs2 0x010a),(_ucs2 0x010b);
+insert into t1 values (_ucs2 0x010c),(_ucs2 0x010d),(_ucs2 0x010e),(_ucs2 0x010f);
+insert into t1 values (_ucs2 0x0110),(_ucs2 0x0111),(_ucs2 0x0112),(_ucs2 0x0113);
+insert into t1 values (_ucs2 0x0114),(_ucs2 0x0115),(_ucs2 0x0116),(_ucs2 0x0117);
+insert into t1 values (_ucs2 0x0118),(_ucs2 0x0119),(_ucs2 0x011a),(_ucs2 0x011b);
+insert into t1 values (_ucs2 0x011c),(_ucs2 0x011d),(_ucs2 0x011e),(_ucs2 0x011f);
+insert into t1 values (_ucs2 0x0120),(_ucs2 0x0121),(_ucs2 0x0122),(_ucs2 0x0123);
+insert into t1 values (_ucs2 0x0124),(_ucs2 0x0125),(_ucs2 0x0126),(_ucs2 0x0127);
+insert into t1 values (_ucs2 0x0128),(_ucs2 0x0129),(_ucs2 0x012a),(_ucs2 0x012b);
+insert into t1 values (_ucs2 0x012c),(_ucs2 0x012d),(_ucs2 0x012e),(_ucs2 0x012f);
+insert into t1 values (_ucs2 0x0130),(_ucs2 0x0131),(_ucs2 0x0132),(_ucs2 0x0133);
+insert into t1 values (_ucs2 0x0134),(_ucs2 0x0135),(_ucs2 0x0136),(_ucs2 0x0137);
+insert into t1 values (_ucs2 0x0138),(_ucs2 0x0139),(_ucs2 0x013a),(_ucs2 0x013b);
+insert into t1 values (_ucs2 0x013c),(_ucs2 0x013d),(_ucs2 0x013e),(_ucs2 0x013f);
+insert into t1 values (_ucs2 0x0140),(_ucs2 0x0141),(_ucs2 0x0142),(_ucs2 0x0143);
+insert into t1 values (_ucs2 0x0144),(_ucs2 0x0145),(_ucs2 0x0146),(_ucs2 0x0147);
+insert into t1 values (_ucs2 0x0148),(_ucs2 0x0149),(_ucs2 0x014a),(_ucs2 0x014b);
+insert into t1 values (_ucs2 0x014c),(_ucs2 0x014d),(_ucs2 0x014e),(_ucs2 0x014f);
+insert into t1 values (_ucs2 0x0150),(_ucs2 0x0151),(_ucs2 0x0152),(_ucs2 0x0153);
+insert into t1 values (_ucs2 0x0154),(_ucs2 0x0155),(_ucs2 0x0156),(_ucs2 0x0157);
+insert into t1 values (_ucs2 0x0158),(_ucs2 0x0159),(_ucs2 0x015a),(_ucs2 0x015b);
+insert into t1 values (_ucs2 0x015c),(_ucs2 0x015d),(_ucs2 0x015e),(_ucs2 0x015f);
+insert into t1 values (_ucs2 0x0160),(_ucs2 0x0161),(_ucs2 0x0162),(_ucs2 0x0163);
+insert into t1 values (_ucs2 0x0164),(_ucs2 0x0165),(_ucs2 0x0166),(_ucs2 0x0167);
+insert into t1 values (_ucs2 0x0168),(_ucs2 0x0169),(_ucs2 0x016a),(_ucs2 0x016b);
+insert into t1 values (_ucs2 0x016c),(_ucs2 0x016d),(_ucs2 0x016e),(_ucs2 0x016f);
+insert into t1 values (_ucs2 0x0170),(_ucs2 0x0171),(_ucs2 0x0172),(_ucs2 0x0173);
+insert into t1 values (_ucs2 0x0174),(_ucs2 0x0175),(_ucs2 0x0176),(_ucs2 0x0177);
+insert into t1 values (_ucs2 0x0178),(_ucs2 0x0179),(_ucs2 0x017a),(_ucs2 0x017b);
+insert into t1 values (_ucs2 0x017c),(_ucs2 0x017d),(_ucs2 0x017e),(_ucs2 0x017f);
+
+#
+# Latin extended-B, 0180-024F
+#
+insert into t1 values (_ucs2 0x0180),(_ucs2 0x0181),(_ucs2 0x0182),(_ucs2 0x0183);
+insert into t1 values (_ucs2 0x0184),(_ucs2 0x0185),(_ucs2 0x0186),(_ucs2 0x0187);
+insert into t1 values (_ucs2 0x0188),(_ucs2 0x0189),(_ucs2 0x018a),(_ucs2 0x018b);
+insert into t1 values (_ucs2 0x018c),(_ucs2 0x018d),(_ucs2 0x018e),(_ucs2 0x018f);
+insert into t1 values (_ucs2 0x0190),(_ucs2 0x0191),(_ucs2 0x0192),(_ucs2 0x0193);
+insert into t1 values (_ucs2 0x0194),(_ucs2 0x0195),(_ucs2 0x0196),(_ucs2 0x0197);
+insert into t1 values (_ucs2 0x0198),(_ucs2 0x0199),(_ucs2 0x019a),(_ucs2 0x019b);
+insert into t1 values (_ucs2 0x019c),(_ucs2 0x019d),(_ucs2 0x019e),(_ucs2 0x019f);
+insert into t1 values (_ucs2 0x01a0),(_ucs2 0x01a1),(_ucs2 0x01a2),(_ucs2 0x01a3);
+insert into t1 values (_ucs2 0x01a4),(_ucs2 0x01a5),(_ucs2 0x01a6),(_ucs2 0x01a7);
+insert into t1 values (_ucs2 0x01a8),(_ucs2 0x01a9),(_ucs2 0x01aa),(_ucs2 0x01ab);
+insert into t1 values (_ucs2 0x01ac),(_ucs2 0x01ad),(_ucs2 0x01ae),(_ucs2 0x01af);
+insert into t1 values (_ucs2 0x01b0),(_ucs2 0x01b1),(_ucs2 0x01b2),(_ucs2 0x01b3);
+insert into t1 values (_ucs2 0x01b4),(_ucs2 0x01b5),(_ucs2 0x01b6),(_ucs2 0x01b7);
+insert into t1 values (_ucs2 0x01b8),(_ucs2 0x01b9),(_ucs2 0x01ba),(_ucs2 0x01bb);
+insert into t1 values (_ucs2 0x01bc),(_ucs2 0x01bd),(_ucs2 0x01be),(_ucs2 0x01bf);
+insert into t1 values (_ucs2 0x01c0),(_ucs2 0x01c1),(_ucs2 0x01c2),(_ucs2 0x01c3);
+insert into t1 values (_ucs2 0x01c4),(_ucs2 0x01c5),(_ucs2 0x01c6),(_ucs2 0x01c7);
+insert into t1 values (_ucs2 0x01c8),(_ucs2 0x01c9),(_ucs2 0x01ca),(_ucs2 0x01cb);
+insert into t1 values (_ucs2 0x01cc),(_ucs2 0x01cd),(_ucs2 0x01ce),(_ucs2 0x01cf);
+insert into t1 values (_ucs2 0x01d0),(_ucs2 0x01d1),(_ucs2 0x01d2),(_ucs2 0x01d3);
+insert into t1 values (_ucs2 0x01d4),(_ucs2 0x01d5),(_ucs2 0x01d6),(_ucs2 0x01d7);
+insert into t1 values (_ucs2 0x01d8),(_ucs2 0x01d9),(_ucs2 0x01da),(_ucs2 0x01db);
+insert into t1 values (_ucs2 0x01dc),(_ucs2 0x01dd),(_ucs2 0x01de),(_ucs2 0x01df);
+insert into t1 values (_ucs2 0x01e0),(_ucs2 0x01e1),(_ucs2 0x01e2),(_ucs2 0x01e3);
+insert into t1 values (_ucs2 0x01e4),(_ucs2 0x01e5),(_ucs2 0x01e6),(_ucs2 0x01e7);
+insert into t1 values (_ucs2 0x01e8),(_ucs2 0x01e9),(_ucs2 0x01ea),(_ucs2 0x01eb);
+insert into t1 values (_ucs2 0x01ec),(_ucs2 0x01ed),(_ucs2 0x01ee),(_ucs2 0x01ef);
+insert into t1 values (_ucs2 0x01f0),(_ucs2 0x01f1),(_ucs2 0x01f2),(_ucs2 0x01f3);
+insert into t1 values (_ucs2 0x01f4),(_ucs2 0x01f5),(_ucs2 0x01f6),(_ucs2 0x01f7);
+insert into t1 values (_ucs2 0x01f8),(_ucs2 0x01f9),(_ucs2 0x01fa),(_ucs2 0x01fb);
+insert into t1 values (_ucs2 0x01fc),(_ucs2 0x01fd),(_ucs2 0x01fe),(_ucs2 0x01ff);
+
+
+insert into t1 values ('AA'),('Aa'),('aa'),('aA');
+insert into t1 values ('CH'),('Ch'),('ch'),('cH');
+insert into t1 values ('DZ'),('Dz'),('dz'),('dZ');
+insert into t1 values ('IJ'),('Ij'),('ij'),('iJ');
+insert into t1 values ('LJ'),('Lj'),('lj'),('lJ');
+insert into t1 values ('LL'),('Ll'),('ll'),('lL');
+insert into t1 values ('NJ'),('Nj'),('nj'),('nJ');
+insert into t1 values ('OE'),('Oe'),('oe'),('oE');
+insert into t1 values ('SS'),('Ss'),('ss'),('sS');
+insert into t1 values ('RR'),('Rr'),('rr'),('rR');
+
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_unicode_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_icelandic_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_latvian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_romanian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_slovenian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_polish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_estonian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_spanish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_swedish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_turkish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_czech_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_danish_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_lithuanian_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_slovak_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_spanish2_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_roman_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_esperanto_ci;
+select group_concat(c1 order by binary c1 separator '') from t1 group by c1 collate utf32_hungarian_ci;
+
+drop table t1;
+
+#
+# Bug#5324
+#
+SET NAMES utf8;
+#test1
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_general_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+#Check one row
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025 COLLATE utf32_general_ci;
+INSERT INTO t1 VALUES (CONVERT(_ucs2 0x039C03C903B4 USING utf8));
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025
+COLLATE utf32_general_ci ORDER BY c;
+DROP TABLE t1;
+#test2
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+#Check one row
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025 COLLATE utf32_unicode_ci;
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B4);
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE _utf32 0x0000039C00000025
+COLLATE utf32_unicode_ci ORDER BY c;
+DROP TABLE t1;
+#test 3
+CREATE TABLE t1 (c varchar(200) CHARACTER SET utf32 COLLATE utf32_unicode_ci NOT NULL, INDEX (c));
+INSERT INTO t1 VALUES (_ucs2 0x039C03C903B403B11F770308);
+#Check one row row
+SELECT * FROM t1 WHERE c LIKE CONVERT(_ucs2 0x039C0025 USING utf32) COLLATE utf32_unicode_ci;
+INSERT INTO t1 VALUES (CONVERT(_ucs2 0x039C03C903B4 USING utf8));
+#Check two rows
+SELECT * FROM t1 WHERE c LIKE CONVERT(_ucs2 0x039C0025 USING utf32)
+COLLATE utf32_unicode_ci ORDER BY c;
+DROP TABLE t1;
+
+
+SET NAMES utf8;
+SET @test_character_set='utf32';
+SET @test_collation='utf32_swedish_ci';
+-- source include/ctype_common.inc
+
+
+SET collation_connection='utf32_unicode_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+--echo End of 4.1 tests
+
+#
+# Check UPPER/LOWER changing length
+#
+# Result shorter than argument
+CREATE TABLE t1 (id int, a varchar(30) character set utf32);
+INSERT INTO t1 VALUES (1, _ucs2 0x01310069), (2, _ucs2 0x01310131);
+INSERT INTO t1 VALUES (3, _ucs2 0x00690069), (4, _ucs2 0x01300049);
+INSERT INTO t1 VALUES (5, _ucs2 0x01300130), (6, _ucs2 0x00490049);
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+ALTER TABLE t1 MODIFY a VARCHAR(30) character set utf32 collate utf32_turkish_ci;
+SELECT a, length(a) la, @l:=lower(a) l, length(@l) ll, @u:=upper(a) u, length(@u) lu
+FROM t1 ORDER BY id;
+DROP TABLE t1;
+
+#
+# Bug #27079 Crash while grouping empty ucs2 strings
+#
+CREATE TABLE t1 (
+ c1 text character set utf32 collate utf32_polish_ci NOT NULL
+) ENGINE=MyISAM;
+insert into t1 values (''),('a');
+SELECT COUNT(*), c1 FROM t1 GROUP BY c1;
+DROP TABLE IF EXISTS t1;
+
+
+#
+# Test basic regex functionality
+#
+set collation_connection=utf32_unicode_ci;
+--source include/ctype_regex.inc
+
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/ctype_utf8.test b/mysql-test/t/ctype_utf8.test
index 1a560554d3d..201e96b0b09 100644
--- a/mysql-test/t/ctype_utf8.test
+++ b/mysql-test/t/ctype_utf8.test
@@ -1440,6 +1440,17 @@ DROP TABLE t1;
--echo Start of 5.4 tests
+
+#
+# WL#1213: utf8mb3 is an alias for utf8
+#
+SET NAMES utf8mb3;
+SHOW VARIABLES LIKE 'character_set_results%';
+CREATE TABLE t1 (a CHAR CHARACTER SET utf8mb3 COLLATE utf8mb3_bin);
+SHOW CREATE TABLE t1;
+DROP TABLE t1;
+SELECT _utf8mb3'test';
+
#
# Bug#26180: Can't add columns to tables created with utf8 text indexes
#
diff --git a/mysql-test/t/ctype_utf8mb4.test b/mysql-test/t/ctype_utf8mb4.test
new file mode 100644
index 00000000000..f396d36e5b0
--- /dev/null
+++ b/mysql-test/t/ctype_utf8mb4.test
@@ -0,0 +1,1798 @@
+--source include/have_utf8mb4.inc
+
+#
+# Tests with the utf8mb4 character set
+#
+
+--source include/have_innodb.inc
+
+--disable_warnings
+drop table if exists t1,t2;
+--enable_warnings
+
+--echo #
+--echo # Start of 5.5 tests
+--echo #
+
+set names utf8mb4;
+
+select left(_utf8mb4 0xD0B0D0B1D0B2,1);
+select right(_utf8mb4 0xD0B0D0B2D0B2,1);
+
+select locate('he','hello');
+select locate('he','hello',2);
+select locate('lo','hello',2);
+select locate('HE','hello');
+select locate('HE','hello',2);
+select locate('LO','hello',2);
+select locate('HE','hello' collate utf8mb4_bin);
+select locate('HE','hello' collate utf8mb4_bin,2);
+select locate('LO','hello' collate utf8mb4_bin,2);
+
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D0B1D0B2);
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2);
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2);
+select locate(_utf8mb4 0xD091, _utf8mb4 0xD0B0D0B1D0B2 collate utf8mb4_bin);
+select locate(_utf8mb4 0xD0B1, _utf8mb4 0xD0B0D091D0B2 collate utf8mb4_bin);
+
+select length(_utf8mb4 0xD0B1), bit_length(_utf8mb4 0xD0B1), char_length(_utf8mb4 0xD0B1);
+
+select 'a' like 'a';
+select 'A' like 'a';
+select 'A' like 'a' collate utf8mb4_bin;
+select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD0B1,_utf8mb4 '%');
+
+# Bug #6040: can't retrieve records with umlaut
+# characters in case insensitive manner.
+# Case insensitive search LIKE comparison
+# was broken for multibyte characters:
+select convert(_latin1'Günter André' using utf8mb4) like CONVERT(_latin1'GÜNTER%' USING utf8mb4);
+select CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4) LIKE CONVERT(_koi8r'÷áóñ' USING utf8mb4);
+select CONVERT(_koi8r'÷áóñ' USING utf8mb4) LIKE CONVERT(_koi8r'×ÁÓÑ' USING utf8mb4);
+
+#
+# Check the following:
+# "a" == "a "
+# "a\0" < "a"
+# "a\0" < "a "
+
+SELECT 'a' = 'a ';
+SELECT 'a\0' < 'a';
+SELECT 'a\0' < 'a ';
+SELECT 'a\t' < 'a';
+SELECT 'a\t' < 'a ';
+
+#
+# The same for binary collation
+#
+SELECT 'a' = 'a ' collate utf8mb4_bin;
+SELECT 'a\0' < 'a' collate utf8mb4_bin;
+SELECT 'a\0' < 'a ' collate utf8mb4_bin;
+SELECT 'a\t' < 'a' collate utf8mb4_bin;
+SELECT 'a\t' < 'a ' collate utf8mb4_bin;
+
+CREATE TABLE t1 (a char(10) character set utf8mb4 not null);
+INSERT INTO t1 VALUES ('a'),('a\0'),('a\t'),('a ');
+SELECT hex(a),STRCMP(a,'a'), STRCMP(a,'a ') FROM t1;
+DROP TABLE t1;
+
+#
+# Fix this, it should return 1:
+#
+#select _utf8mb4 0xD0B0D0B1D0B2 like concat(_utf8mb4'%',_utf8mb4 0xD091,_utf8mb4 '%');
+#
+
+#
+# Bug 2367: INSERT() behaviour is different for different charsets.
+#
+select insert('txs',2,1,'hi'),insert('is ',4,0,'a'),insert('txxxxt',2,4,'es');
+select insert("aa",100,1,"b"),insert("aa",1,3,"b");
+
+#
+# LELF() didn't work well with utf8mb4 in some cases too.
+#
+select char_length(left(@a:='теÑÑ‚',5)), length(@a), @a;
+
+
+#
+# CREATE ... SELECT
+#
+create table t1 select date_format("2004-01-19 10:10:10", "%Y-%m-%d");
+show create table t1;
+select * from t1;
+drop table t1;
+
+#
+# Bug#22646 LC_TIME_NAMES: Assignment to non-UTF8 target fails
+#
+set names utf8mb4;
+set LC_TIME_NAMES='fr_FR';
+create table t1 (s1 char(20) character set latin1);
+insert into t1 values (date_format('2004-02-02','%M'));
+select hex(s1) from t1;
+drop table t1;
+create table t1 (s1 char(20) character set koi8r);
+set LC_TIME_NAMES='ru_RU';
+insert into t1 values (date_format('2004-02-02','%M'));
+insert into t1 values (date_format('2004-02-02','%b'));
+insert into t1 values (date_format('2004-02-02','%W'));
+insert into t1 values (date_format('2004-02-02','%a'));
+select hex(s1), s1 from t1;
+drop table t1;
+set LC_TIME_NAMES='en_US';
+
+
+#
+# Bug #2366 Wrong utf8mb4 behaviour when data is truncated
+#
+set names koi8r;
+create table t1 (s1 char(1) character set utf8mb4);
+insert into t1 values (_koi8r'ÁÂ');
+select s1,hex(s1),char_length(s1),octet_length(s1) from t1;
+drop table t1;
+
+create table t1 (s1 tinytext character set utf8mb4);
+insert into t1 select repeat('a',300);
+insert into t1 select repeat('Ñ',300);
+insert into t1 select repeat('aÑ',300);
+insert into t1 select repeat('Ña',300);
+insert into t1 select repeat('ÑÑ',300);
+select hex(s1) from t1;
+select length(s1),char_length(s1) from t1;
+drop table t1;
+
+create table t1 (s1 text character set utf8mb4);
+insert into t1 select repeat('a',66000);
+insert into t1 select repeat('Ñ',66000);
+insert into t1 select repeat('aÑ',66000);
+insert into t1 select repeat('Ña',66000);
+insert into t1 select repeat('ÑÑ',66000);
+select length(s1),char_length(s1) from t1;
+drop table t1;
+
+#
+# Bug #2368 Multibyte charsets do not check that incoming data is well-formed
+#
+create table t1 (s1 char(10) character set utf8mb4);
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+
+create table t1 (s1 varchar(10) character set utf8mb4);
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+
+create table t1 (s1 text character set utf8mb4);
+insert into t1 values (0x41FF);
+select hex(s1) from t1;
+drop table t1;
+
+#
+# Bug 2699
+# UTF8 breaks primary keys for cols > 333 characters
+#
+--error 1071
+create table t1 (a text character set utf8mb4, primary key(a(371)));
+
+
+#
+# Bug 2959
+# UTF8 charset breaks joins with mixed column/string constant
+#
+CREATE TABLE t1 ( a varchar(10) ) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES ( 'test' );
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a;
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = 'test' and b.a = 'test';
+SELECT a.a, b.a FROM t1 a, t1 b WHERE a.a = b.a and a.a = 'test';
+DROP TABLE t1;
+
+create table t1 (a char(255) character set utf8mb4);
+insert into t1 values('b'),('b');
+select * from t1 where a = 'b';
+select * from t1 where a = 'b' and a = 'b';
+select * from t1 where a = 'b' and a != 'b';
+drop table t1;
+
+#
+# Testing regexp
+#
+set collation_connection=utf8mb4_general_ci;
+--source include/ctype_regex.inc
+set names utf8mb4;
+
+#
+# Bug #3928 regexp [[:>:]] and UTF-8
+#
+set names utf8mb4;
+
+# This should return TRUE
+select 'ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select ' ваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select ' ваÑÑ ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+
+# This should return FALSE
+select 'ваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'zваÑÑ' rlike '[[:<:]]ваÑÑ[[:>:]]';
+select 'zваÑÑz' rlike '[[:<:]]ваÑÑ[[:>:]]';
+
+#
+# Bug #4555
+# ALTER TABLE crashes mysqld with enum column collated utf8mb4_unicode_ci
+#
+CREATE TABLE t1 (a enum ('Y', 'N') DEFAULT 'N' COLLATE utf8mb4_unicode_ci);
+ALTER TABLE t1 ADD COLUMN b CHAR(20);
+DROP TABLE t1;
+
+# Customer Support Center issue # 3299
+# ENUM and SET multibyte fields computed their length wronly
+# when converted into a char field
+set names utf8mb4;
+create table t1 (a enum('aaaa','проба') character set utf8mb4);
+show create table t1;
+insert into t1 values ('проба');
+select * from t1;
+create table t2 select ifnull(a,a) from t1;
+show create table t2;
+select * from t2;
+drop table t1;
+drop table t2;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: keys with prefix compression, case insensitive collation.
+#
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10)));
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# InnoDB: keys with prefix compression, case insensitive collation.
+#
+--disable_warnings
+create table t1 (c varchar(30) character set utf8mb4, unique(c(10))) engine=innodb;
+--enable_warnings
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: fixed length keys, case insensitive collation
+#
+create table t1 (c char(3) character set utf8mb4, unique (c(2)));
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# InnoDB: fixed length keys, case insensitive collation
+#
+--disable_warnings
+create table t1 (c char(3) character set utf8mb4, unique (c(2))) engine=innodb;
+--enable_warnings
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+HASH, case insensitive collation
+#
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+BTREE, case insensitive collation
+#
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check BDB, case insensitive collation
+#
+--disable_warnings
+create table t1 (
+c char(10) character set utf8mb4,
+unique key a (c(1))
+) engine=innodb;
+--enable_warnings
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: keys with prefix compression, binary collation.
+#
+create table t1 (c varchar(30) character set utf8mb4 collate utf8mb4_bin, unique(c(10)));
+insert into t1 values ('1'),('2'),('3'),('x'),('y'),('z');
+insert into t1 values ('aaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaaaaaaaaaaa');
+insert into t1 values (repeat('b',20));
+select c c1 from t1 where c='1';
+select c c2 from t1 where c='2';
+select c c3 from t1 where c='3';
+select c cx from t1 where c='x';
+select c cy from t1 where c='y';
+select c cz from t1 where c='z';
+select c ca10 from t1 where c='aaaaaaaaaa';
+select c cb20 from t1 where c=repeat('b',20);
+drop table t1;
+
+#
+# Bug 4521: unique key prefix interacts poorly with utf8mb4
+# MYISAM: fixed length keys, binary collation
+#
+create table t1 (c char(3) character set utf8mb4 collate utf8mb4_bin, unique (c(2)));
+insert into t1 values ('1'),('2'),('3'),('4'),('x'),('y'),('z');
+insert into t1 values ('a');
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('b');
+insert into t1 values ('bb');
+--error ER_DUP_ENTRY
+insert into t1 values ('bbb');
+insert into t1 values ('а');
+insert into t1 values ('аа');
+--error ER_DUP_ENTRY
+insert into t1 values ('ааа');
+insert into t1 values ('б');
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+insert into t1 values ('ꪪ');
+insert into t1 values ('ꪪꪪ');
+--error ER_DUP_ENTRY
+insert into t1 values ('ꪪꪪꪪ');
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+HASH, binary collation
+#
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using hash (c(1))
+) engine=heap;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check HEAP+BTREE, binary collation
+#
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a using btree (c(1))
+) engine=heap;
+show create table t1;
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+#
+# Bug 4531: unique key prefix interacts poorly with utf8mb4
+# Check BDB, binary collation
+#
+--disable_warnings
+create table t1 (
+c char(10) character set utf8mb4 collate utf8mb4_bin,
+unique key a (c(1))
+) engine=innodb;
+--enable_warnings
+insert into t1 values ('a'),('b'),('c'),('d'),('e'),('f');
+--error ER_DUP_ENTRY
+insert into t1 values ('aa');
+--error ER_DUP_ENTRY
+insert into t1 values ('aaa');
+insert into t1 values ('б');
+--error ER_DUP_ENTRY
+insert into t1 values ('бб');
+--error ER_DUP_ENTRY
+insert into t1 values ('ббб');
+select c as c_all from t1 order by c;
+select c as c_a from t1 where c='a';
+select c as c_a from t1 where c='б';
+drop table t1;
+
+
+# Bug#4594: column index make = failed for gbk, but like works
+# Check MYISAM
+#
+create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine=myisam;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# Bug#4594: column index make = failed for gbk, but like works
+# Check InnoDB
+#
+--disable_warnings
+create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine=innodb;
+--enable_warnings
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for HEAP+BTREE
+#
+
+create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str using btree (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for HEAP+HASH
+#
+
+create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str using hash (str(2))
+) engine=heap;
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+# the same for BDB
+#
+
+--disable_warnings
+create table t1 (
+ str varchar(255) character set utf8mb4 not null,
+ key str (str(2))
+) engine=innodb;
+--enable_warnings
+INSERT INTO t1 VALUES ('str');
+INSERT INTO t1 VALUES ('str2');
+select * from t1 where str='str';
+drop table t1;
+
+#
+# Bug #5397: Crash with varchar binary and LIKE
+#
+CREATE TABLE t1 (a varchar(32) BINARY) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES ('test');
+SELECT a FROM t1 WHERE a LIKE '%te';
+DROP TABLE t1;
+
+#
+# Bug #5723: length(<varchar utf8mb4 field>) returns varying results
+#
+--disable_warnings
+SET NAMES utf8mb4;
+--disable_warnings
+CREATE TABLE t1 (
+ subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+ p varchar(15) character set utf8mb4
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t1 VALUES ('è°·å·ä¿ŠäºŒã¨ç”³ã—ã¾ã™ãŒã€ã‚¤ãƒ³ã‚¿ãƒ¼ãƒãƒƒãƒˆäºˆç´„ã®ä¼šå“¡ç™»éŒ²ã‚’ã—ã¾ã—ãŸã¨ã“ã‚ã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’é–“é•ãˆã¦ã—ã¾ã„会員IDãŒå—ã‘å–ã‚‹ã“ã¨ãŒå‡ºæ¥ã¾ã›ã‚“ã§ã—ãŸã€‚é–“é•ãˆã‚¢ãƒ‰ãƒ¬ã‚¹ã¯tani-shun@n.vodafone.ne.jpを書ãè¾¼ã¿ã¾ã—ãŸã€‚ã©ã†ã™ã‚Œã°ã‚ˆã„ã§ã™ã‹ï¼Ÿ ãã®ä»–ã€ä½æ‰€ç­‰ã¯é–“é•ãˆã‚ã‚Šã¾ã›ã‚“。連絡ãã ã•ã„。よã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚m(__)m','040312-000057');
+INSERT INTO t1 VALUES ('aaa','bbb');
+SELECT length(subject) FROM t1;
+SELECT length(subject) FROM t1 ORDER BY 1;
+DROP TABLE t1;
+
+#
+# Bug #5832 SELECT doesn't return records in some cases
+#
+CREATE TABLE t1 (
+ id int unsigned NOT NULL auto_increment,
+ list_id smallint unsigned NOT NULL,
+ term TEXT NOT NULL,
+ PRIMARY KEY(id),
+ INDEX(list_id, term(4))
+) ENGINE=MYISAM CHARSET=utf8mb4;
+INSERT INTO t1 SET list_id = 1, term = "letterc";
+INSERT INTO t1 SET list_id = 1, term = "letterb";
+INSERT INTO t1 SET list_id = 1, term = "lettera";
+INSERT INTO t1 SET list_id = 1, term = "letterd";
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterc");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterb");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "lettera");
+SELECT id FROM t1 WHERE (list_id = 1) AND (term = "letterd");
+DROP TABLE t1;
+
+
+#
+# Bug #6043 erratic searching for diacriticals in indexed MyISAM UTF-8 table
+#
+SET NAMES latin1;
+CREATE TABLE t1 (
+ id int unsigned NOT NULL auto_increment,
+ list_id smallint unsigned NOT NULL,
+ term text NOT NULL,
+ PRIMARY KEY(id),
+ INDEX(list_id, term(19))
+) ENGINE=MyISAM CHARSET=utf8mb4;
+INSERT INTO t1 set list_id = 1, term = "testétest";
+INSERT INTO t1 set list_id = 1, term = "testetest";
+INSERT INTO t1 set list_id = 1, term = "testètest";
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testétest");
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testetest");
+SELECT id, term FROM t1 where (list_id = 1) AND (term = "testètest");
+DROP TABLE t1;
+
+#
+# Bug #6019 SELECT tries to use too short prefix index on utf8mb4 data
+#
+set names utf8mb4;
+--disable_warnings
+create table t1 (
+ a int primary key,
+ b varchar(6),
+ index b3(b(3))
+) engine=innodb character set=utf8mb4;
+--enable_warnings
+insert into t1 values(1,'foo'),(2,'foobar');
+select * from t1 where b like 'foob%';
+--disable_warnings
+alter table t1 engine=innodb;
+--enable_warnings
+select * from t1 where b like 'foob%';
+drop table t1;
+
+#
+# Test for calculate_interval_lengths() function
+#
+create table t1 (
+ a enum('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта',
+ b set('петÑ','ваÑÑ','анюта') character set utf8mb4 not null default 'анюта'
+);
+create table t2 select concat(a,_utf8mb4'') as a, concat(b,_utf8mb4'')as b from t1;
+show create table t2;
+drop table t2;
+drop table t1;
+
+#
+# Bug #6787 LIKE not working properly with _ and utf8mb4 data
+#
+select 'c' like '\_' as want0;
+
+#
+# SUBSTR with negative offset didn't work with multi-byte strings
+#
+SELECT SUBSTR('ваÑÑ',-2);
+
+
+#
+# Bug #7730 Server crash using soundex on an utf8mb4 table
+#
+create table t1 (id integer, a varchar(100) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values (1, 'Test');
+select * from t1 where soundex(a) = soundex('Test');
+select * from t1 where soundex(a) = soundex('TEST');
+select * from t1 where soundex(a) = soundex('test');
+drop table t1;
+
+#
+# Bug#22638 SOUNDEX broken for international characters
+#
+select soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB);
+select hex(soundex(_utf8mb4 0xE99885E8A788E99A8FE697B6E69BB4E696B0E79A84E696B0E997BB));
+select soundex(_utf8mb4 0xD091D092D093);
+select hex(soundex(_utf8mb4 0xD091D092D093));
+
+
+SET collation_connection='utf8mb4_general_ci';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+-- source include/ctype_german.inc
+SET collation_connection='utf8mb4_bin';
+-- source include/ctype_filesort.inc
+-- source include/ctype_like_escape.inc
+
+#
+# Bug #7874 CONCAT() gives wrong results mixing
+# latin1 field and utf8mb4 string literals
+#
+CREATE TABLE t1 (
+ user varchar(255) NOT NULL default ''
+) ENGINE=MyISAM DEFAULT CHARSET=latin1;
+INSERT INTO t1 VALUES ('one'),('two');
+SELECT CHARSET('a');
+SELECT user, CONCAT('<', user, '>') AS c FROM t1;
+DROP TABLE t1;
+
+#
+# Bug#8785
+# the same problem with the above, but with nested CONCATs
+#
+create table t1 (f1 varchar(1) not null) default charset utf8mb4;
+insert into t1 values (''), ('');
+select concat(concat(_latin1'->',f1),_latin1'<-') from t1;
+drop table t1;
+
+#
+# Bug#8385: utf8mb4_general_ci treats Cyrillic letters I and SHORT I as the same
+#
+select convert(_koi8r'É' using utf8mb4) < convert(_koi8r'Ê' using utf8mb4);
+
+#
+# Bugs#5980: NULL requires a characterset in a union
+#
+set names latin1;
+create table t1 (a varchar(10)) character set utf8mb4;
+insert into t1 values ('test');
+select ifnull(a,'') from t1;
+drop table t1;
+select repeat(_utf8mb4'+',3) as h union select NULL;
+select ifnull(NULL, _utf8mb4'string');
+
+#
+# Bug#9509 Optimizer: wrong result after AND with comparisons
+#
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_lithuanian_ci);
+insert into t1 values ('I'),('K'),('Y');
+select * from t1 where s1 < 'K' and s1 = 'Y';
+select * from t1 where 'K' > s1 and s1 = 'Y';
+drop table t1;
+
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_czech_ci);
+insert into t1 values ('c'),('d'),('h'),('ch'),('CH'),('cH'),('Ch'),('i');
+select * from t1 where s1 > 'd' and s1 = 'CH';
+select * from t1 where 'd' < s1 and s1 = 'CH';
+select * from t1 where s1 = 'cH' and s1 <> 'ch';
+select * from t1 where 'cH' = s1 and s1 <> 'ch';
+drop table t1;
+
+#
+# Bug#10714: Inserting double value into utf8mb4 column crashes server
+#
+create table t1 (a varchar(255)) default character set utf8mb4;
+insert into t1 values (1.0);
+drop table t1;
+
+#
+# Bug#10253 compound index length and utf8mb4 char set
+# produces invalid query results
+#
+create table t1 (
+ id int not null,
+ city varchar(20) not null,
+ key (city(7),id)
+) character set=utf8mb4;
+insert into t1 values (1,'Durban North');
+insert into t1 values (2,'Durban');
+select * from t1 where city = 'Durban';
+select * from t1 where city = 'Durban ';
+drop table t1;
+
+#
+# Bug #11819 CREATE TABLE with a SET DEFAULT 0 and UTF8 crashes server.
+#
+--error 1067
+create table t1 (x set('A', 'B') default 0) character set utf8mb4;
+--error 1067
+create table t1 (x enum('A', 'B') default 0) character set utf8mb4;
+
+
+#
+# Test for bug #11167: join for utf8mb4 varchar value longer than 255 bytes
+#
+
+SET NAMES UTF8;
+
+CREATE TABLE t1 (
+ `id` int(20) NOT NULL auto_increment,
+ `country` varchar(100) NOT NULL default '',
+ `shortcode` varchar(100) NOT NULL default '',
+ `operator` varchar(100) NOT NULL default '',
+ `momid` varchar(30) NOT NULL default '',
+ `keyword` varchar(160) NOT NULL default '',
+ `content` varchar(160) NOT NULL default '',
+ `second_token` varchar(160) default NULL,
+ `gateway_id` int(11) NOT NULL default '0',
+ `created` datetime NOT NULL default '0000-00-00 00:00:00',
+ `msisdn` varchar(15) NOT NULL default '',
+ PRIMARY KEY (`id`),
+ UNIQUE KEY `MSCCSPK_20030521130957121` (`momid`),
+ KEY `IX_mobile_originated_message_keyword` (`keyword`),
+ KEY `IX_mobile_originated_message_created` (`created`),
+ KEY `IX_mobile_originated_message_support` (`msisdn`,`momid`,`keyword`,`gateway_id`,`created`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+
+INSERT INTO t1 VALUES
+(1,'blah','464','aaa','fkc1c9ilc20x0hgae7lx6j09','ERR','ERR Имри.Ðфимим.Ðеимимримдмримрмрирор имримримримр имридм ирбднримрфмририримрфмфмим.Ðд.Д имдимримрад.Ðдимримримрмдиримримримр м.Дадимфшьмримд им.Ðдимимрн имадми','ИМРИ.ÐФИМИМ.ÐЕИМИМРИМДМРИМРМРИРОР',3,'2005-06-01 17:30:43','1234567890'),
+(2,'blah','464','aaa','haxpl2ilc20x00bj4tt2m5ti','11','11 g','G',3,'2005-06-02 22:43:10','1234567890');
+
+--disable_warnings
+CREATE TABLE t2 (
+ `msisdn` varchar(15) NOT NULL default '',
+ `operator_id` int(11) NOT NULL default '0',
+ `created` datetime NOT NULL default '0000-00-00 00:00:00',
+ UNIQUE KEY `PK_user` (`msisdn`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
+--enable_warnings
+
+INSERT INTO t2 VALUES ('1234567890',2,'2005-05-24 13:53:25');
+
+SELECT content, t2.msisdn FROM t1, t2 WHERE t1.msisdn = '1234567890';
+
+DROP TABLE t1,t2;
+
+#
+# Bug#11591: CHAR column with utf8mb4 does not work properly
+# (more chars than expected)
+#
+create table t1 (a char(20) character set utf8mb4);
+insert into t1 values ('123456'),('андрей');
+alter table t1 modify a char(2) character set utf8mb4;
+select char_length(a), length(a), a from t1 order by a;
+drop table t1;
+
+#
+# Bugs#12611
+# ESCAPE + LIKE do not work when the escape char is a multibyte one
+#
+set names utf8mb4;
+select 'andre%' like 'andreñ%' escape 'ñ';
+
+#
+# Bugs#11754: SET NAMES utf8mb4 followed by SELECT "A\\" LIKE "A\\" returns 0
+#
+set names utf8mb4;
+select 'a\\' like 'a\\';
+select 'aa\\' like 'a%\\';
+
+create table t1 (a char(10), key(a)) character set utf8mb4;
+insert into t1 values ("a"),("abc"),("abcd"),("hello"),("test");
+select * from t1 where a like "abc%";
+select * from t1 where a like concat("abc","%");
+select * from t1 where a like "ABC%";
+select * from t1 where a like "test%";
+select * from t1 where a like "te_t";
+select * from t1 where a like "%a%";
+select * from t1 where a like "%abcd%";
+select * from t1 where a like "%abc\d%";
+drop table t1;
+
+
+#
+# Bug#9557 MyISAM utf8mb4 table crash
+#
+CREATE TABLE t1 (
+ a varchar(255) NOT NULL default '',
+ KEY a (a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;
+insert into t1 values (_utf8mb4 0xe880bd);
+insert into t1 values (_utf8mb4 0x5b);
+select hex(a) from t1;
+drop table t1;
+
+#
+# Bug#13751 find_in_set: Illegal mix of collations
+#
+set names 'latin1';
+create table t1 (a varchar(255)) default charset=utf8mb4;
+select * from t1 where find_in_set('-1', a);
+drop table t1;
+
+#
+# Bug#13233: select distinct char(column) fails with utf8mb4
+#
+create table t1 (a int);
+insert into t1 values (48),(49),(50);
+set names utf8mb4;
+select distinct char(a) from t1;
+drop table t1;
+
+#
+# Bug#15581: COALESCE function truncates mutli-byte TINYTEXT values
+#
+CREATE TABLE t1 (t TINYTEXT CHARACTER SET utf8mb4);
+INSERT INTO t1 VALUES(REPEAT('a', 100));
+CREATE TEMPORARY TABLE t2 SELECT COALESCE(t) AS bug FROM t1;
+SELECT LENGTH(bug) FROM t2;
+DROP TABLE t2;
+DROP TABLE t1;
+
+#
+# Bug#17313: N'xxx' and _utf8mb4'xxx' are not equivalent
+#
+CREATE TABLE t1 (item varchar(255)) default character set utf8mb4;
+INSERT INTO t1 VALUES (N'\\');
+INSERT INTO t1 VALUES (_utf8mb4'\\');
+INSERT INTO t1 VALUES (N'Cote d\'Ivoire');
+INSERT INTO t1 VALUES (_utf8mb4'Cote d\'Ivoire');
+SELECT item FROM t1 ORDER BY item;
+DROP TABLE t1;
+
+#
+# Bug#17705: Corruption of compressed index when index length changes between
+# 254 and 256
+#
+
+SET NAMES utf8mb4;
+DROP TABLE IF EXISTS t1;
+CREATE TABLE t1(a VARCHAR(255), KEY(a)) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb');
+INSERT INTO t1 VALUES('uu');
+check table t1;
+INSERT INTO t1 VALUES('uU');
+check table t1;
+INSERT INTO t1 VALUES('uu');
+check table t1;
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+INSERT INTO t1 VALUES('UuABC');
+check table t1;
+INSERT INTO t1 VALUES('uuABC');
+check table t1;
+alter table t1 add b int;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',2);
+delete from t1 where b=1;
+INSERT INTO t1 VALUES('UUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',1);
+check table t1;
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+INSERT INTO t1 VALUES('uuABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',4);
+delete from t1 where b=3;
+INSERT INTO t1 VALUES('uUABCDEFGHIGKLMNOPRSTUVWXYZ̈bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb',3);
+check table t1;
+drop table t1;
+
+#
+# Bug#20471 LIKE search fails with indexed utf8mb4 char column
+#
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_general_ci from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_general_ci from t1 where s1 like 'ペテ%';
+drop table t1;
+
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_unicode_ci from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_unicode_ci from t1 where s1 like 'ペテ%';
+drop table t1;
+
+set names utf8mb4;
+create table t1 (s1 char(5) character set utf8mb4 collate utf8mb4_bin);
+insert into t1 values
+('a'),('b'),(null),('ペテルグル'),('ü'),('Y');
+create index it1 on t1 (s1);
+select s1 as before_delete_bin from t1 where s1 like 'ペテ%';
+delete from t1 where s1 = 'Y';
+select s1 as after_delete_bin from t1 where s1 like 'ペテ%';
+drop table t1;
+
+# additional tests from duplicate bug#20744 MySQL return no result
+
+set names utf8mb4;
+--disable_warnings
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_general_ci;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as gci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as gci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+set names utf8mb4;
+--disable_warnings
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_unicode_ci;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as uci1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as uci2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+set names utf8mb4;
+--disable_warnings
+create table t1 (a varchar(30) not null primary key)
+engine=innodb default character set utf8mb4 collate utf8mb4_bin;
+--enable_warnings
+insert into t1 values ('ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã');
+insert into t1 values ('ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ');
+select a as bin1 from t1 where a like 'ã•ã—ã™ã›ãã‹ããã‘ã“ã‚ã„ã†ãˆãŠ%';
+select a as bin2 from t1 where a like 'ã‚ã„ã†ãˆãŠã‹ããã‘ã“ã•ã—ã™ã›ã';
+drop table t1;
+
+
+
+#
+# Bug#14896: Comparison with a key in a partial index over mb chararacter field
+#
+
+SET NAMES utf8mb4;
+CREATE TABLE t1 (id int PRIMARY KEY,
+ a varchar(16) collate utf8mb4_unicode_ci NOT NULL default '',
+ b int,
+ f varchar(128) default 'XXX',
+ INDEX (a(4))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
+INSERT INTO t1(id, a, b) VALUES
+ (1, 'cccc', 50), (2, 'cccc', 70), (3, 'cccc', 30),
+ (4, 'cccc', 30), (5, 'cccc', 20), (6, 'bbbbbb', 40),
+ (7, 'dddd', 30), (8, 'aaaa', 10), (9, 'aaaa', 50),
+ (10, 'eeeee', 40), (11, 'bbbbbb', 60);
+
+SELECT id, a, b FROM t1;
+
+SELECT id, a, b FROM t1 WHERE a BETWEEN 'aaaa' AND 'bbbbbb';
+
+SELECT id, a FROM t1 WHERE a='bbbbbb';
+SELECT id, a FROM t1 WHERE a='bbbbbb' ORDER BY b;
+
+DROP TABLE t1;
+
+#
+# Bug#16674: LIKE predicate for a utf8mb4 character set column
+#
+
+SET NAMES utf8mb4;
+
+CREATE TABLE t1 (
+ a CHAR(13) DEFAULT '',
+ INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES
+ ('Käli Käli 2-4'), ('Käli Käli 2-4'),
+ ('Käli Käli 2+4'), ('Käli Käli 2+4'),
+ ('Käli Käli 2-6'), ('Käli Käli 2-6');
+INSERT INTO t1 SELECT * FROM t1;
+
+CREATE TABLE t2 (
+ a CHAR(13) DEFAULT '',
+ INDEX(a)
+) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;
+
+INSERT INTO t2 VALUES
+ ('Kali Kali 2-4'), ('Kali Kali 2-4'),
+ ('Kali Kali 2+4'), ('Kali Kali 2+4'),
+ ('Kali Kali 2-6'), ('Kali Kali 2-6');
+INSERT INTO t2 SELECT * FROM t2;
+
+SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+
+EXPLAIN SELECT a FROM t1 WHERE a LIKE 'Käli Käli 2+4';
+EXPLAIN SELECT a FROM t1 WHERE a = 'Käli Käli 2+4';
+EXPLAIN SELECT a FROM t2 WHERE a LIKE 'Kali Kali 2+4';
+EXPLAIN SELECT a FROM t2 WHERE a = 'Kali Kali 2+4';
+
+DROP TABLE t1,t2;
+
+CREATE TABLE t1 (
+ a char(255) DEFAULT '',
+ KEY(a(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+DROP TABLE t1;
+
+CREATE TABLE t1 (
+ a char(255) DEFAULT ''
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+INSERT INTO t1 VALUES ('Käli Käli 2-4');
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+ALTER TABLE t1 ADD KEY (a(10));
+SELECT * FROM t1 WHERE a LIKE 'Käli Käli 2%';
+DROP TABLE t1;
+
+#
+# Bug#18359: LIKE predicate for a 'utf8mb4' text column with a partial index
+# (see bug #16674 as well)
+#
+
+SET NAMES latin2;
+
+CREATE TABLE t1 (
+ id int(11) NOT NULL default '0',
+ tid int(11) NOT NULL default '0',
+ val text NOT NULL,
+ INDEX idx(tid, val(10))
+) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4;
+
+INSERT INTO t1 VALUES
+ (40988,72,'VOLNÝ ADSL'),(41009,72,'VOLNÝ ADSL'),
+ (41032,72,'VOLNÝ ADSL'),(41038,72,'VOLNÝ ADSL'),
+ (41063,72,'VOLNÝ ADSL'),(41537,72,'VOLNÝ ADSL Office'),
+ (42141,72,'VOLNÝ ADSL'),(42565,72,'VOLNÝ ADSL Combi'),
+ (42749,72,'VOLNÝ ADSL'),(44205,72,'VOLNÝ ADSL');
+
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNY ADSL';
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+SELECT * FROM t1 WHERE tid=72 and val LIKE '%VOLNÝ ADSL';
+
+ALTER TABLE t1 DROP KEY idx;
+ALTER TABLE t1 ADD KEY idx (tid,val(11));
+
+SELECT * FROM t1 WHERE tid=72 and val LIKE 'VOLNÝ ADSL';
+
+DROP TABLE t1;
+
+#
+# Bug 20709: problem with utf8mb4 fields in temporary tables
+#
+
+create table t1(a char(200) collate utf8mb4_unicode_ci NOT NULL default '')
+ default charset=utf8mb4 collate=utf8mb4_unicode_ci;
+insert into t1 values (unhex('65')), (unhex('C3A9')), (unhex('65'));
+explain select distinct a from t1;
+select distinct a from t1;
+explain select a from t1 group by a;
+select a from t1 group by a;
+drop table t1;
+
+#
+# Bug #20204: "order by" changes the results returned
+#
+
+create table t1(a char(10)) default charset utf8mb4;
+insert into t1 values ('123'), ('456');
+explain
+ select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+select substr(Z.a,-1), Z.a from t1 as Y join t1 as Z on Y.a=Z.a order by 1;
+drop table t1;
+
+#
+# Bug #34349: Passing invalid parameter to CHAR() in an ORDER BY causes
+# MySQL to hang
+#
+
+SET CHARACTER SET utf8mb4;
+SHOW VARIABLES LIKE 'character\_set\_%';
+CREATE DATABASE crashtest DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
+USE crashtest;
+CREATE TABLE crashtest (crash char(10)) DEFAULT CHARSET=utf8mb4;
+INSERT INTO crashtest VALUES ('35'), ('36'), ('37');
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+INSERT INTO crashtest VALUES ('-1000');
+EXPLAIN SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+SELECT * FROM crashtest ORDER BY CHAR(crash USING utf8mb4);
+DROP TABLE crashtest;
+DROP DATABASE crashtest;
+USE test;
+SET CHARACTER SET default;
+
+# End of 4.1 tests
+
+#
+# Test for bug #11484: wrong results for a DISTINCT varchar column in uft8.
+#
+
+CREATE TABLE t1(id varchar(20) NOT NULL) DEFAULT CHARSET=utf8mb4;
+INSERT INTO t1 VALUES ('xxx'), ('aa'), ('yyy'), ('aa');
+
+SELECT id FROM t1;
+SELECT DISTINCT id FROM t1;
+SELECT DISTINCT id FROM t1 ORDER BY id;
+
+DROP TABLE t1;
+
+#
+# Bug#20095 Changing length of VARCHAR field with UTF8
+# collation does not truncate values
+#
+create table t1 (
+ a varchar(26) not null
+) default character set utf8mb4;
+insert into t1 (a) values ('abcdefghijklmnopqrstuvwxyz');
+select * from t1;
+# varchar to varchar
+alter table t1 change a a varchar(20) character set utf8mb4 not null;
+select * from t1;
+# varchar to char
+alter table t1 change a a char(15) character set utf8mb4 not null;
+select * from t1;
+# char to char
+alter table t1 change a a char(10) character set utf8mb4 not null;
+select * from t1;
+# char to varchar
+alter table t1 change a a varchar(5) character set utf8mb4 not null;
+select * from t1;
+drop table t1;
+
+#
+# Check that do_varstring2_mb produces a warning
+#
+create table t1 (
+ a varchar(4000) not null
+) default character set utf8mb4;
+insert into t1 values (repeat('a',4000));
+alter table t1 change a a varchar(3000) character set utf8mb4 not null;
+select length(a) from t1;
+drop table t1;
+
+
+#
+# Bug#10504: Character set does not support traditional mode
+# Bug#14146: CHAR(...USING ...) and CONVERT(CHAR(...) USING...)
+# produce different results
+#
+set names utf8mb4;
+# correct value
+select hex(char(1 using utf8mb4));
+select char(0xd1,0x8f using utf8mb4);
+select char(0xd18f using utf8mb4);
+select char(53647 using utf8mb4);
+# incorrect value: return with warning
+select char(0xff,0x8f using utf8mb4);
+select convert(char(0xff,0x8f) using utf8mb4);
+# incorrect value in strict mode: return NULL with "Error" level warning
+set sql_mode=traditional;
+select char(0xff,0x8f using utf8mb4);
+select char(195 using utf8mb4);
+select char(196 using utf8mb4);
+select char(2557 using utf8mb4);
+select convert(char(0xff,0x8f) using utf8mb4);
+
+#
+# Check convert + char + using
+#
+select hex(convert(char(2557 using latin1) using utf8mb4));
+
+#
+# char() without USING returns "binary" by default, any argument is ok
+#
+select hex(char(195));
+select hex(char(196));
+select hex(char(2557));
+
+
+
+#
+# Bug#12891: UNION doesn't return DISTINCT result for multi-byte characters
+#
+set names utf8mb4;
+create table t1 (a char(1)) default character set utf8mb4;
+create table t2 (a char(1)) default character set utf8mb4;
+insert into t1 values('a'),('a'),(0xE38182),(0xE38182);
+insert into t1 values('i'),('i'),(0xE38184),(0xE38184);
+select * from t1 union distinct select * from t2;
+drop table t1,t2;
+
+
+#
+# Bug#12371: executing prepared statement fails (illegal mix of collations)
+#
+set names utf8mb4;
+create table t1 (a char(10), b varchar(10));
+insert into t1 values ('bar','kostja');
+insert into t1 values ('kostja','bar');
+prepare my_stmt from "select * from t1 where a=?";
+set @a:='bar';
+execute my_stmt using @a;
+set @a:='kostja';
+execute my_stmt using @a;
+set @a:=null;
+execute my_stmt using @a;
+drop table if exists t1;
+
+
+#
+# Bug#21505 Create view - illegal mix of collation for operation 'UNION'
+#
+--disable_warnings
+drop table if exists t1;
+drop view if exists v1, v2;
+--enable_warnings
+set names utf8mb4;
+create table t1(col1 varchar(12) character set utf8mb4 collate utf8mb4_unicode_ci);
+insert into t1 values('t1_val');
+create view v1 as select 'v1_val' as col1;
+select coercibility(col1), collation(col1) from v1;
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1)from v2;
+drop view v1, v2;
+create view v1 as select 'v1_val' collate utf8mb4_swedish_ci as col1;
+select coercibility(col1), collation(col1) from v1;
+create view v2 as select col1 from v1 union select col1 from t1;
+select coercibility(col1), collation(col1) from v2;
+drop view v1, v2;
+drop table t1;
+
+#
+# Check conversion of NCHAR strings to subset (e.g. latin1).
+# Conversion is possible if string repertoire is ASCII.
+# Conversion is not possible if the string have extended characters
+#
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, N'x', N'y')) from t1;
+--error 1267
+select concat(a, if(b>10, N'æ', N'ß')) from t1;
+drop table t1;
+
+# Conversion tests for character set introducers
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4'x', _utf8mb4'y')) from t1;
+--error 1267
+select concat(a, if(b>10, _utf8mb4'æ', _utf8mb4'ß')) from t1;
+drop table t1;
+
+# Conversion tests for introducer + HEX string
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, _utf8mb4 0x78, _utf8mb4 0x79)) from t1;
+--error 1267
+select concat(a, if(b>10, _utf8mb4 0xC3A6, _utf8mb4 0xC3AF)) from t1;
+drop table t1;
+
+# Conversion tests for "text_literal TEXT_STRING_literal" syntax structure
+set names utf8mb4;
+create table t1 (a varchar(10) character set latin1, b int);
+insert into t1 values ('a',1);
+select concat(a, if(b>10, 'x' 'x', 'y' 'y')) from t1;
+--error 1267
+select concat(a, if(b>10, 'x' 'æ', 'y' 'ß')) from t1;
+drop table t1;
+
+
+#
+# Bug#19960: Inconsistent results when joining
+# InnoDB tables using partial UTF8 indexes
+#
+--disable_warnings
+CREATE TABLE t1 (
+ colA int(11) NOT NULL,
+ colB varchar(255) character set utf8mb4 NOT NULL,
+ PRIMARY KEY (colA)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t1 (colA, colB) VALUES (1, 'foo'), (2, 'foo bar');
+--disable_warnings
+CREATE TABLE t2 (
+ colA int(11) NOT NULL,
+ colB varchar(255) character set utf8mb4 NOT NULL,
+ KEY bad (colA,colB(3))
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+--enable_warnings
+INSERT INTO t2 (colA, colB) VALUES (1, 'foo'),(2, 'foo bar');
+SELECT * FROM t1 JOIN t2 ON t1.colA=t2.colA AND t1.colB=t2.colB
+WHERE t1.colA < 3;
+DROP TABLE t1, t2;
+
+#
+# Bug#29205: truncation of UTF8 values when the UNION statement
+# forces collation to the binary charset
+#
+
+SELECT 'н1234567890' UNION SELECT _binary '1';
+SELECT 'н1234567890' UNION SELECT 1;
+
+SELECT '1' UNION SELECT 'н1234567890';
+SELECT 1 UNION SELECT 'н1234567890';
+
+CREATE TABLE t1 (c VARCHAR(11)) CHARACTER SET utf8mb4;
+CREATE TABLE t2 (b CHAR(1) CHARACTER SET binary, i INT);
+
+INSERT INTO t1 (c) VALUES ('н1234567890');
+INSERT INTO t2 (b, i) VALUES ('1', 1);
+
+SELECT c FROM t1 UNION SELECT b FROM t2;
+SELECT c FROM t1 UNION SELECT i FROM t2;
+
+SELECT b FROM t2 UNION SELECT c FROM t1;
+SELECT i FROM t2 UNION SELECT c FROM t1;
+
+DROP TABLE t1, t2;
+
+#
+# Bug#30982: CHAR(..USING..) can return a not-well-formed string
+# Bug #30986: Character set introducer followed by a HEX string can return bad result
+#
+set sql_mode=traditional;
+select hex(char(0xFF using utf8mb4));
+select hex(convert(0xFF using utf8mb4));
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 0x616263FF);
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 X'616263FF');
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 B'001111111111');
+--error ER_INVALID_CHARACTER_STRING
+select (_utf8mb4 X'616263FF');
+set sql_mode=default;
+select hex(char(0xFF using utf8mb4));
+select hex(convert(0xFF using utf8mb4));
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 0x616263FF);
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 X'616263FF');
+--error ER_INVALID_CHARACTER_STRING
+select hex(_utf8mb4 B'001111111111');
+--error ER_INVALID_CHARACTER_STRING
+select (_utf8mb4 X'616263FF');
+
+#
+# Bug #36772: When using UTF8, CONVERT with GROUP BY returns truncated results
+#
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL);
+INSERT INTO t1 VALUES (70000, 1092), (70001, 1085), (70002, 1065);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1;
+ALTER TABLE t1 ADD UNIQUE (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+DROP INDEX b ON t1;
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) FROM t1 GROUP BY b;
+ALTER TABLE t1 ADD INDEX (b);
+SELECT CONVERT(a, CHAR), CONVERT(b, CHAR) from t1 GROUP BY b;
+DROP TABLE t1;
+
+--echo #
+--echo # Bug#26474: Add Sinhala script (Sri Lanka) collation to MySQL
+--echo #
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+CREATE TABLE t1 (
+ predicted_order int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+INSERT INTO t1 VALUES (19, x'E0B696'), (30, x'E0B69AE0B798'), (61, x'E0B6AF'), (93, x'E0B799'), (52, x'E0B6A6'), (73, x'E0B6BBE0B78AE2808D'), (3, x'E0B686'), (56, x'E0B6AA'), (55, x'E0B6A9'), (70, x'E0B6B9'), (94, x'E0B79A'), (80, x'E0B785'), (25, x'E0B69AE0B791'), (48, x'E0B6A2'), (13, x'E0B690'), (86, x'E0B793'), (91, x'E0B79F'), (81, x'E0B786'), (79, x'E0B784'), (14, x'E0B691'), (99, x'E0B78A'), (8, x'E0B68B'), (68, x'E0B6B7'), (22, x'E0B69A'), (16, x'E0B693'), (33, x'E0B69AE0B7B3'), (38, x'E0B69AE0B79D'), (21, x'E0B683'), (11, x'E0B68E'), (77, x'E0B782'), (40, x'E0B69AE0B78A'), (101, x'E0B78AE2808DE0B6BB'), (35, x'E0B69AE0B79A'), (1, x'E0B7B4'), (9, x'E0B68C'), (96, x'E0B79C'), (6, x'E0B689'), (95, x'E0B79B'), (88, x'E0B796'), (64, x'E0B6B3'), (26, x'E0B69AE0B792'), (82, x'E0B78F'), (28, x'E0B69AE0B794'), (39, x'E0B69AE0B79E'), (97, x'E0B79D'), (2, x'E0B685'), (75, x'E0B780'), (34, x'E0B69AE0B799'), (69, x'E0B6B8'), (83, x'E0B790'), (18, x'E0B695'), (90, x'E0B7B2'), (17, x'E0B694'), (72, x'E0B6BB'), (66, x'E0B6B5'), (59, x'E0B6AD'), (44, x'E0B69E'), (15, x'E0B692'), (23, x'E0B69AE0B78F'), (65, x'E0B6B4'), (42, x'E0B69C'), (63, x'E0B6B1'), (85, x'E0B792'), (47, x'E0B6A1'), (49, x'E0B6A3'), (92, x'E0B7B3'), (78, x'E0B783'), (36, x'E0B69AE0B79B'), (4, x'E0B687'), (24, x'E0B69AE0B790'), (87, x'E0B794'), (37, x'E0B69AE0B79C'), (32, x'E0B69AE0B79F'), (29, x'E0B69AE0B796'), (43, x'E0B69D'), (62, x'E0B6B0'), (100, x'E0B78AE2808DE0B6BA'), (60, x'E0B6AE'), (45, x'E0B69F'), (12, x'E0B68F'), (46, x'E0B6A0'), (50, x'E0B6A5'), (51, x'E0B6A4'), (5, x'E0B688'), (76, x'E0B781'), (89, x'E0B798'), (74, x'E0B6BD'), (10, x'E0B68D'), (57, x'E0B6AB'), (71, x'E0B6BA'), (58, x'E0B6AC'), (27, x'E0B69AE0B793'), (54, x'E0B6A8'), (84, x'E0B791'), (31, x'E0B69AE0B7B2'), (98, x'E0B79E'), (53, x'E0B6A7'), (41, x'E0B69B'), (67, x'E0B6B6'), (7, x'E0B68A'), (20, x'E0B682');
+SELECT predicted_order, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_sinhala_ci;
+DROP TABLE t1;
+
+--echo #
+--echo # Bug#32914 Character sets: illegal characters in utf8mb4 and utf32 columns
+--echo #
+create table t1 (utf8mb4 char(1) character set utf8mb4);
+--echo Testing [F0][90..BF][80..BF][80..BF]
+insert into t1 values (0xF0908080);
+insert into t1 values (0xF0BFBFBF);
+insert into t1 values (0xF08F8080);
+select hex(utf8mb4) from t1;
+delete from t1;
+
+--echo Testing [F2..F3][80..BF][80..BF][80..BF]
+insert into t1 values (0xF2808080);
+insert into t1 values (0xF2BFBFBF);
+select hex(utf8mb4) from t1;
+delete from t1;
+
+--echo Testing [F4][80..8F][80..BF][80..BF]
+insert into t1 values (0xF4808080);
+insert into t1 values (0xF48F8080);
+insert into t1 values (0xF4908080);
+select hex(utf8mb4) from t1;
+drop table t1;
+
+
+--echo #
+--echo # Check strnxfrm() with odd length
+--echo #
+set max_sort_length=5;
+select @@max_sort_length;
+create table t1 (a varchar(128) character set utf8mb4 collate utf8mb4_general_ci);
+insert into t1 values ('a'),('b'),('c');
+select * from t1 order by a;
+alter table t1 modify a varchar(128) character set utf8mb4 collate utf8mb4_bin;
+select * from t1 order by a;
+drop table t1;
+set max_sort_length=default;
+
+--echo #
+--echo # Bug#26180: Can't add columns to tables created with utf8mb4 text indexes
+--echo #
+CREATE TABLE t1 (
+ clipid INT NOT NULL,
+ Tape TINYTEXT,
+ PRIMARY KEY (clipid),
+ KEY tape(Tape(255))
+) CHARACTER SET=utf8mb4;
+ALTER TABLE t1 ADD mos TINYINT DEFAULT 0 AFTER clipid;
+SHOW CREATE TABLE t1;
+DROP TABLE t1;
+
+
+#--echo #
+#--echo # Check that supplementary characters are not allowed in identifiers
+#--echo #
+# TODO: activate this when system_charset_info is changed to utf8mb4
+#--error 1300
+#CREATE DATABASE `ð€€`;
+#--error 1300
+#CREATE TABLE `ð€€` (a int);
+#--error 1166
+#CREATE TABLE test.t1 SELECT 'ð€€';
+#--error 1300
+#CREATE USER `ð€€`;
+
+--echo #
+--echo # Testing 4-byte values.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+CREATE TABLE t1 (
+ u_decimal int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+# Source of the following values: http://www.fileformat.info/info/unicode/block/index.htm
+# SINGLE BARLINE
+INSERT INTO t1 VALUES (119040, x'f09d8480'),
+# G CLEF
+ (119070, x'f09d849e'),
+# HALF NOTE
+ (119134, x'f09d859e'),
+# MUSICAL SYMBOL CROIX
+ (119247, x'f09d878f'),
+# MATHEMATICAL BOLD ITALIC CAPITAL DELTA
+ (120607, x'f09d9c9f'),
+# SANS-SERIF BOLD ITALIC CAPITAL PI
+ (120735, x'f09d9e9f'),
+# <Plane 16 Private Use, Last> (last 4 byte character)
+ (1114111, x'f48fbfbf'),
+# VARIATION SELECTOR-256
+ (917999, x'f3a087af');
+# All from musical chars
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480');
+# Mix of 3-byte and 4-byte chars
+INSERT INTO t1 VALUES (65131, x'efb9abf09d849ef09d859ef09d859ef09d8480f09d859fefb9abefb9abf09d85a0efb9ab');
+# All from musical chars, but 11 instead of 10 chars. truncated
+INSERT INTO t1 VALUES (119070, x'f09d849ef09d859ef09d859ef09d8480f09d859ff09d859ff09d859ff09d85a0f09d85a0f09d8480f09d85a0');
+
+SELECT u_decimal, hex(utf8mb4_encoding) FROM t1 ORDER BY utf8mb4_encoding COLLATE utf8mb4_general_ci, BINARY utf8mb4_encoding;
+
+# First invalid 4 byte value
+INSERT INTO t1 VALUES (1114111, x'f5808080');
+
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+ table_name= 't1' AND column_name= 'utf8mb4_encoding';
+
+--disable_warnings
+DROP TABLE IF EXISTS t2;
+--enable_warnings
+CREATE TABLE t2 (
+ u_decimal int NOT NULL,
+ utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb3;
+# LATIN CAPITAL LETTER VEND
+INSERT INTO t2 VALUES (42856, x'ea9da8');
+# SMALL COMMERCIAL AT
+INSERT INTO t2 VALUES (65131, x'efb9ab');
+# <Plane 16 Private Use, Last> (last 4 byte character)
+INSERT INTO t2 VALUES (1114111, x'f48fbfbf');
+
+SELECT character_maximum_length, character_octet_length FROM information_schema.columns WHERE
+ table_name= 't2' AND column_name= 'utf8mb3_encoding';
+
+# Update a 3-byte char col with a 4-byte char, error
+UPDATE t2 SET utf8mb3_encoding= x'f48fbfbd' where u_decimal= 42856;
+
+# Update to a 3-byte char casted to 4-byte, error?
+UPDATE t2 SET utf8mb3_encoding= _utf8mb4 x'ea9da8' where u_decimal= 42856;
+
+# Returns utfmb4
+SELECT HEX(CONCAT(utf8mb4_encoding, _utf8 x'ea9da8')) FROM t1;
+SELECT HEX(CONCAT(utf8mb4_encoding, utf8mb3_encoding)) FROM t1,t2;
+
+#--error ER_INVALID_CHARACTER_STRING
+#SELECT CONCAT(_utf8 utf8mb4_encoding, _utf8 '|') FROM t1;
+#--error ER_INVALID_CHARACTER_STRING
+#SELECT CONCAT(_utf8mb3 utf8mb4_encoding, _utf8 '|') FROM t1;
+
+SELECT count(*) FROM t1, t2
+ WHERE t1.utf8mb4_encoding > t2.utf8mb3_encoding;
+
+# Alter from 4-byte charset to 3-byte charset, error
+ALTER TABLE t1 CONVERT TO CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+SELECT u_decimal,hex(utf8mb4_encoding),utf8mb4_encoding FROM t1;
+
+# Alter table from utf8 to utf8mb4
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+# Alter table back from utf8mb4 to utf8
+ALTER TABLE t2 CONVERT TO CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t2;
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+# ALter of utf8mb4 column to utf8
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb3;
+SHOW CREATE TABLE t1;
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+
+# ALter of utf8 column to utf8mb4
+ALTER TABLE t1 MODIFY utf8mb4_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t1;
+SELECT u_decimal,hex(utf8mb4_encoding) FROM t1;
+
+# ALter of utf8 column to utf8mb4
+ALTER TABLE t2 MODIFY utf8mb3_encoding VARCHAR(10) CHARACTER SET utf8mb4;
+SHOW CREATE TABLE t2;
+SELECT u_decimal,hex(utf8mb3_encoding) FROM t2;
+
+--disable_warnings
+DROP TABLE IF EXISTS t3;
+--enable_warnings
+CREATE TABLE t3 (
+ u_decimal int NOT NULL,
+ utf8mb3_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8;
+
+# Insert select utf8mb4 (4-byte) into utf8 (3-byte), error
+#--error ER_INVALID_CHARACTER_STRING
+INSERT INTO t3 SELECT * FROM t1;
+
+--disable_warnings
+DROP TABLE IF EXISTS t4;
+--enable_warnings
+CREATE TABLE t4 (
+ u_decimal int NOT NULL,
+ utf8mb4_encoding VARCHAR(10) NOT NULL
+) CHARACTER SET utf8mb4;
+
+# Insert select utf8 (3-byte) into utf8mb4 (4-byte)
+INSERT INTO t3 SELECT * FROM t2;
+
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+DROP TABLE t4;
+
+--echo #
+--echo # Testing that mixing utf8 and utf8mb4 collations returns utf8mb4
+--echo #
+SELECT CHARSET(CONCAT(_utf8mb4'a',_utf8'b'));
+
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4 NOT NULL);
+INSERT INTO t1 VALUES (x'ea9da8'),(x'f48fbfbf');
+SELECT CONCAT(utf8mb4, _utf8 x'ea9da8') FROM t1 LIMIT 0;
+
+CREATE TABLE t2 (utf8mb3 VARCHAR(10) CHARACTER SET utf8mb3 NOT NULL);
+INSERT INTO t2 VALUES (x'ea9da8');
+
+SELECT HEX(CONCAT(utf8mb4, utf8mb3)) FROM t1,t2 ORDER BY 1;
+SELECT CHARSET(CONCAT(utf8mb4, utf8mb3)) FROM t1, t2 LIMIT 1;
+
+CREATE TEMPORARY TABLE t3 AS SELECT *, concat(utf8mb4,utf8mb3) FROM t1, t2;
+SHOW CREATE TABLE t3;
+DROP TEMPORARY TABLE t3;
+
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 > t2.utf8mb3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 = t2.utf8mb3;
+SELECT * FROM t1, t2 WHERE t1.utf8mb4 < t2.utf8mb3;
+
+DROP TABLE t1;
+DROP TABLE t2;
+
+--echo #
+--echo # Check that mixing utf8mb4 with an invalid utf8 constant returns error
+--echo #
+# This should perhaps be changed to return ER_INVALID_CHARACTER_STRING
+CREATE TABLE t1 (utf8mb4 VARCHAR(10) CHARACTER SET utf8mb4);
+INSERT INTO t1 VALUES (x'f48fbfbf');
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CONCAT(utf8mb4, _utf8 '¿') FROM t1;
+--error ER_CANT_AGGREGATE_2COLLATIONS
+SELECT CONCAT('a', _utf8 '¿') FROM t1;
+DROP TABLE t1;
+
+
+--echo #
+--echo # Bug#51675 Server crashes on inserting 4 byte char.
+--echo # after ALTER TABLE to 'utf8mb4'
+--echo #
+SET NAMES utf8;
+CREATE TABLE t1 (
+ subject varchar(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci,
+ p VARCHAR(15) CHARACTER SET utf8
+) DEFAULT CHARSET=latin1;
+
+# Alter old table, add index
+ALTER TABLE t1 ADD INDEX (subject);
+
+# Alter old 'utf8' table to new 'utf8mb4'
+ALTER TABLE t1
+ DEFAULT CHARACTER SET utf8,
+ MODIFY subject varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci,
+ MODIFY p varchar(255) CHARACTER SET utf8;
+SHOW CREATE TABLE t1;
+
+INSERT INTO t1(subject) VALUES ('abcd');
+# Insert 4 byte characters
+INSERT INTO t1(subject) VALUES(x'f0909080');
+DROP TABLE t1;
+
+#
+# Make sure fulltext does not crash on supplementary characters
+#
+CREATE TABLE t1 (a TEXT CHARACTER SET utf8mb4, FULLTEXT INDEX(a));
+INSERT INTO t1 VALUES (0xF0A08080 /* U+20000 */ );
+DROP TABLE t1;
+
+--echo #
+--echo # Bug #51676 Server crashes on SELECT, ORDER BY on 'utf8mb4' column
+--echo #
+SET NAMES utf8mb4;
+CREATE TABLE t1 (
+ subject varchar(255) character set utf8mb4 collate utf8mb4_unicode_ci,
+ p varchar(15) character set utf8mb4
+) DEFAULT CHARSET=latin1;
+# Insert 4 byte characters
+# 4byte character
+INSERT INTO t1(subject) VALUES(0xF0909080);
+# mix of 3 byte & 4 byte
+INSERT INTO t1(subject) VALUES(0x616263F0909080646566);
+SHOW CREATE TABLE t1;
+SELECT * FROM t1 ORDER BY 1;
+SELECT hex(subject), length(subject), char_length(subject), octet_length(subject) FROM t1 ORDER BY 1;
+SELECT subject FROM t1 ORDER BY 1;
+DROP TABLE t1;
+
+--echo #
+--echo # End of 5.5 tests
+--echo #
+
+--echo #
+--echo # End of tests
+--echo #
diff --git a/mysql-test/t/ctype_utf8mb4_heap.test b/mysql-test/t/ctype_utf8mb4_heap.test
new file mode 100644
index 00000000000..5611ea9746f
--- /dev/null
+++ b/mysql-test/t/ctype_utf8mb4_heap.test
@@ -0,0 +1,6 @@
+--source include/have_utf8mb4.inc
+
+let $engine= heap;
+let $is_heap= 1;
+--source include/ctype_utf8mb4.inc
+
diff --git a/mysql-test/t/ctype_utf8mb4_innodb.test b/mysql-test/t/ctype_utf8mb4_innodb.test
new file mode 100644
index 00000000000..3bf0612a1ab
--- /dev/null
+++ b/mysql-test/t/ctype_utf8mb4_innodb.test
@@ -0,0 +1,6 @@
+--source include/have_utf8mb4.inc
+--source include/have_innodb.inc
+
+let $engine= InnoDB;
+--source include/ctype_utf8mb4.inc
+
diff --git a/mysql-test/t/ctype_utf8mb4_myisam.test b/mysql-test/t/ctype_utf8mb4_myisam.test
new file mode 100644
index 00000000000..e7ec43633f9
--- /dev/null
+++ b/mysql-test/t/ctype_utf8mb4_myisam.test
@@ -0,0 +1,5 @@
+--source include/have_utf8mb4.inc
+
+let $engine= MyISAM;
+--source include/ctype_utf8mb4.inc
+
diff --git a/mysql-test/t/ctype_utf8mb4_ndb.test b/mysql-test/t/ctype_utf8mb4_ndb.test
new file mode 100644
index 00000000000..fba0ae918a1
--- /dev/null
+++ b/mysql-test/t/ctype_utf8mb4_ndb.test
@@ -0,0 +1,7 @@
+--source include/have_utf8mb4.inc
+--source include/have_ndb.inc
+
+let $engine= ndb;
+let $is_ndb= 1;
+--source include/ctype_utf8mb4.inc
+
diff --git a/mysql-test/t/debug_sync.test b/mysql-test/t/debug_sync.test
index 514e471b603..ebeeec61632 100644
--- a/mysql-test/t/debug_sync.test
+++ b/mysql-test/t/debug_sync.test
@@ -390,7 +390,7 @@ DROP TABLE IF EXISTS t1;
#
# Test.
CREATE TABLE t1 (c1 INT);
-LOCK TABLE t1 WRITE;
+LOCK TABLE t1 READ;
--echo connection con1
connect (con1,localhost,root,,);
# Retain action after use. First used by general_log.
diff --git a/mysql-test/t/delayed.test b/mysql-test/t/delayed.test
index d1e9bc154f5..142f1b241d6 100644
--- a/mysql-test/t/delayed.test
+++ b/mysql-test/t/delayed.test
@@ -307,7 +307,7 @@ connection update;
connection default;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where command = "Delayed insert" and state = "upgrading lock";
+ where command = "Delayed insert" and state = "Table lock";
--source include/wait_condition.inc
connect (select,localhost,root,,);
--echo connection: select
diff --git a/mysql-test/t/delete.test b/mysql-test/t/delete.test
index 3b73a47534e..acd67e0e766 100644
--- a/mysql-test/t/delete.test
+++ b/mysql-test/t/delete.test
@@ -291,6 +291,21 @@ DELETE FROM t1 ORDER BY (f1(10)) LIMIT 1;
DROP TABLE t1;
DROP FUNCTION f1;
+
+--echo #
+--echo # Bug #49552 : sql_buffer_result cause crash + not found records
+--echo # in multitable delete/subquery
+--echo #
+
+CREATE TABLE t1(a INT);
+INSERT INTO t1 VALUES (1),(2),(3);
+SET SESSION SQL_BUFFER_RESULT=1;
+DELETE t1 FROM (SELECT SUM(a) a FROM t1) x,t1;
+
+SET SESSION SQL_BUFFER_RESULT=DEFAULT;
+SELECT * FROM t1;
+DROP TABLE t1;
+
--echo End of 5.0 tests
#
@@ -513,18 +528,4 @@ DELETE IGNORE FROM t1;
DROP TABLE t1;
---echo #
---echo # Bug #49552 : sql_buffer_result cause crash + not found records
---echo # in multitable delete/subquery
---echo #
-
-CREATE TABLE t1(a INT);
-INSERT INTO t1 VALUES (1),(2),(3);
-SET SESSION SQL_BUFFER_RESULT=1;
-DELETE t1 FROM (SELECT SUM(a) a FROM t1) x,t1;
-
-SET SESSION SQL_BUFFER_RESULT=DEFAULT;
-SELECT * FROM t1;
-DROP TABLE t1;
-
--echo End of 5.1 tests
diff --git a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
index 97237d5da73..3b34ef368e1 100644
--- a/mysql-test/t/disabled.def
+++ b/mysql-test/t/disabled.def
@@ -10,7 +10,8 @@
#
##############################################################################
kill : Bug#37780 2008-12-03 HHunger need some changes to be robust enough for pushbuild.
-query_cache_28249 : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadicallyr
+query_cache_28249 : Bug#43861 2009-03-25 main.query_cache_28249 fails sporadically
+sp_sync : Bug#48157 2010-02-06 5.5-m3 demands a differnt solution
innodb-autoinc : Bug#49267 2009-12-02 test fails on windows because of different case mode
innodb : Bug#49396 2009-12-03 test fails in embedded mode
plugin_load : Bug#42144 2009-12-21 alik plugin_load fails
diff --git a/mysql-test/t/drop.test b/mysql-test/t/drop.test
index 4aeb7165bcb..5ef4a28b202 100644
--- a/mysql-test/t/drop.test
+++ b/mysql-test/t/drop.test
@@ -100,8 +100,8 @@ drop database if exists mysqltest;
drop table if exists t1;
--enable_warnings
create table t1 (i int);
-lock tables t1 read;
create database mysqltest;
+lock tables t1 read;
connect (addconroot1, localhost, root,,);
--send drop table t1
connect (addconroot2, localhost, root,,);
diff --git a/mysql-test/t/drop_debug.test b/mysql-test/t/drop_debug.test
index 97ee5847d0a..63c85d9246b 100644
--- a/mysql-test/t/drop_debug.test
+++ b/mysql-test/t/drop_debug.test
@@ -17,11 +17,14 @@ DROP DATABASE IF EXISTS mysql_test;
--echo
CREATE DATABASE mysql_test;
CREATE TABLE mysql_test.t1(a INT);
+CREATE TABLE mysql_test.t2(b INT);
+CREATE TABLE mysql_test.t3(c INT);
--echo
SET SESSION DEBUG = "+d,bug43138";
--echo
+--sorted_result
DROP DATABASE mysql_test;
--echo
diff --git a/mysql-test/t/flush.test b/mysql-test/t/flush.test
index f27d4cf2fad..0d406338394 100644
--- a/mysql-test/t/flush.test
+++ b/mysql-test/t/flush.test
@@ -68,10 +68,13 @@ drop table t1;
create table t1 (c1 int);
lock table t1 write;
# Cannot get the global read lock with write locked tables.
---error 1192
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
flush tables with read lock;
lock table t1 read;
-# Can get the global read lock with read locked tables.
+# Cannot get the global read lock with read locked tables.
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+flush tables with read lock;
+unlock tables;
flush tables with read lock;
--error 1223
lock table t1 write;
@@ -84,12 +87,12 @@ create table t2 (c1 int);
create table t3 (c1 int);
lock table t1 read, t2 read, t3 write;
# Cannot get the global read lock with write locked tables.
---error 1192
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
flush tables with read lock;
lock table t1 read, t2 read, t3 read;
-# Can get the global read lock with read locked tables.
+# Cannot get the global read lock with read locked tables.
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
flush tables with read lock;
-# Release all table locks and the global read lock.
unlock tables;
drop table t1, t2, t3;
@@ -157,6 +160,7 @@ flush tables with read lock;
unlock tables;
lock tables t1 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
flush tables with read lock;
unlock tables;
@@ -199,3 +203,155 @@ set global general_log= @old_general_log;
set global read_only= @old_read_only;
--echo End of 5.1 tests
+
+
+--echo #
+--echo # Additional test for bug #51136 "Crash in pthread_rwlock_rdlock
+--echo # on TEMPORARY + HANDLER + LOCK + SP".
+--echo # Also see the main test for this bug in include/handler.inc.
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+--enable_warnings
+create table t1 (i int);
+create temporary table t2 (j int);
+flush tables with read lock;
+lock table t2 read;
+--echo # This commit should not release any MDL locks.
+commit;
+--echo # The below statement crashed before the bug fix as it
+--echo # has attempted to release global shared metadata lock
+--echo # which was already released by commit.
+unlock tables;
+drop tables t1, t2;
+
+
+
+--echo #
+--echo # Tests for WL#5000 FLUSH TABLES|TABLE table_list WITH READ LOCK
+--echo #
+--echo # I. Check the incompatible changes in the grammar.
+--echo #
+--error ER_PARSE_ERROR
+flush tables with read lock, hosts;
+--error ER_PARSE_ERROR
+flush privileges, tables;
+--error ER_PARSE_ERROR
+flush privileges, tables with read lock;
+--error ER_PARSE_ERROR
+flush privileges, tables;
+--error ER_PARSE_ERROR
+flush tables with read lock, tables;
+show tables;
+--echo #
+--echo # II. Check the allowed syntax.
+--echo #
+--disable_warnings
+drop table if exists t1, t2, t3;
+--enable_warnings
+create table t1 (a int);
+create table t2 (a int);
+create table t3 (a int);
+lock table t1 read, t2 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+flush tables with read lock;
+unlock tables;
+flush tables with read lock;
+flush tables t1, t2 with read lock;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+flush tables t1, t2 with read lock;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+flush tables with read lock;
+select * from t1;
+select * from t2;
+--error ER_TABLE_NOT_LOCKED
+select * from t3;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+insert into t1 (a) values (1);
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+insert into t2 (a) values (1);
+--error ER_TABLE_NOT_LOCKED
+insert into t3 (a) values (1);
+--error ER_NO_SUCH_TABLE
+lock table no_such_table read;
+--echo #
+--echo # We implicitly left the locked tables
+--echo # mode but still have the read lock.
+--echo #
+--error ER_CANT_UPDATE_WITH_READLOCK
+insert into t2 (a) values (1);
+unlock tables;
+insert into t1 (a) values (1);
+insert into t2 (a) values (1);
+flush table t1, t2 with read lock;
+select * from t1;
+select * from t2;
+--error ER_TABLE_NOT_LOCKED
+select * from t3;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+insert into t1 (a) values (2);
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+insert into t2 (a) values (2);
+--error ER_TABLE_NOT_LOCKED
+insert into t3 (a) values (2);
+--error ER_NO_SUCH_TABLE
+lock table no_such_table read;
+insert into t3 (a) values (2);
+
+
+--echo #
+--echo # III. Concurrent tests.
+--echo #
+connect (con1,localhost,root,,);
+--echo # --> connection default
+--echo #
+--echo # Check that flush tables <list> with read lock
+--echo # does not affect non-locked tables.
+connection default;
+--echo #
+flush tables t1 with read lock;
+--echo # --> connection con1;
+connection con1;
+select * from t1;
+select * from t2;
+insert into t2 (a) values (3);
+--echo # --> connection default;
+connection default;
+unlock tables;
+--echo # --> connection con1
+connection con1;
+disconnect con1;
+--source include/wait_until_disconnected.inc
+connection default;
+drop table t1, t2, t3;
+
+--echo #
+--echo # Bug#51710 FLUSH TABLES <view> WITH READ LOCK kills the server
+--echo #
+--disable_warnings
+drop view if exists v1, v2, v3;
+drop table if exists t1, v1;
+--enable_warnings
+create table t1 (a int);
+create view v1 as select 1;
+create view v2 as select * from t1;
+create view v3 as select * from v2;
+
+--error ER_WRONG_OBJECT
+flush table v1, v2, v3 with read lock;
+--error ER_WRONG_OBJECT
+flush table v1 with read lock;
+--error ER_WRONG_OBJECT
+flush table v2 with read lock;
+--error ER_WRONG_OBJECT
+flush table v3 with read lock;
+create temporary table v1 (a int);
+--error ER_WRONG_OBJECT
+flush table v1 with read lock;
+drop view v1;
+create table v1 (a int);
+flush table v1 with read lock;
+drop temporary table v1;
+unlock tables;
+drop view v2, v3;
+drop table t1, v1;
diff --git a/mysql-test/t/flush_block_commit.test b/mysql-test/t/flush_block_commit.test
index 74892def63f..0b3bede1684 100644
--- a/mysql-test/t/flush_block_commit.test
+++ b/mysql-test/t/flush_block_commit.test
@@ -6,7 +6,7 @@
# And it requires InnoDB
--source include/have_innodb.inc
-# Save the initial number of concurrent sessions
+--echo # Save the initial number of concurrent sessions
--source include/count_sessions.inc
--echo # Establish connection con1 (user=root)
@@ -30,18 +30,24 @@ INSERT INTO t1 VALUES(1);
--echo # Switch to connection con2
connection con2;
FLUSH TABLES WITH READ LOCK;
-SELECT * FROM t1;
--echo # Switch to connection con1
connection con1;
-send COMMIT; # blocked by con2
-sleep 1;
+--echo # Sending:
+--send COMMIT
--echo # Switch to connection con2
connection con2;
-SELECT * FROM t1; # verify con1 was blocked and data did not move
+--echo # Wait until COMMIT gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for release of readlock" and info = "COMMIT";
+--source include/wait_condition.inc
+--echo # Verify that 'con1' was blocked and data did not move.
+SELECT * FROM t1;
UNLOCK TABLES;
--echo # Switch to connection con1
connection con1;
-reap;
+--echo # Reaping COMMIT
+--reap
# No deadlock ?
@@ -63,6 +69,7 @@ COMMIT; # should not be blocked by con3
--echo # Switch to connection con2
connection con2;
reap;
+COMMIT;
--echo # Switch to connection con3
connection con3;
reap;
@@ -79,8 +86,6 @@ connection con1;
BEGIN;
INSERT INTO t1 VALUES(10);
FLUSH TABLES WITH READ LOCK;
-COMMIT;
-UNLOCK TABLES;
--echo # Switch to connection con2
connection con2;
FLUSH TABLES WITH READ LOCK; # bug caused hang here
@@ -91,19 +96,21 @@ UNLOCK TABLES;
BEGIN;
SELECT * FROM t1;
SHOW CREATE DATABASE test;
-
-DROP TABLE t1;
+COMMIT;
-# Cleanup
+--echo # Cleanup
--echo # Switch to connection default and close connections con1, con2, con3
connection default;
disconnect con1;
disconnect con2;
disconnect con3;
-# End of 4.1 tests
+--echo # We commit open transactions when we disconnect: only then we can
+--echo # drop the table.
+DROP TABLE t1;
+--echo # End of 4.1 tests
-# Wait till all disconnects are completed
+--echo # Wait till all disconnects are completed
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/flush_block_commit_notembedded.test b/mysql-test/t/flush_block_commit_notembedded.test
index aea38250218..d7ffbd475b4 100644
--- a/mysql-test/t/flush_block_commit_notembedded.test
+++ b/mysql-test/t/flush_block_commit_notembedded.test
@@ -9,7 +9,7 @@
--source include/have_log_bin.inc
--source include/have_innodb.inc
-# Save the initial number of concurrent sessions
+--echo # Save the initial number of concurrent sessions
--source include/count_sessions.inc
@@ -24,14 +24,14 @@ connection con1;
CREATE TABLE t1 (a INT) ENGINE=innodb;
RESET MASTER;
SET AUTOCOMMIT=0;
-INSERT t1 VALUES (1);
+SELECT 1;
--echo # Switch to connection con2
connection con2;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
--echo # Switch to connection con1
connection con1;
-send COMMIT;
+send INSERT INTO t1 VALUES (1);
--echo # Switch to connection con2
connection con2;
sleep 1;
@@ -43,11 +43,30 @@ reap;
DROP TABLE t1;
SET AUTOCOMMIT=1;
+# GLR blocks new transactions
+create table t1 (a int) engine=innodb;
+connection con1;
+flush tables with read lock;
+connection con2;
+begin;
+--send insert into t1 values (1);
+connection con1;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for release of readlock" and
+ info = "insert into t1 values (1)";
+--source include/wait_condition.inc
+unlock tables;
+connection con2;
+--reap
+commit;
+drop table t1;
+
--echo # Switch to connection default and close connections con1 and con2
connection default;
disconnect con1;
disconnect con2;
-# Wait till all disconnects are completed
+--echo # Wait till all disconnects are completed
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/flush_table.test b/mysql-test/t/flush_table.test
index 50e7e91419a..e4fc1b0c39f 100644
--- a/mysql-test/t/flush_table.test
+++ b/mysql-test/t/flush_table.test
@@ -15,30 +15,21 @@ insert into t1 values(0);
# Test for with read lock + flush
lock table t1 read;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
flush table t1;
-check table t1;
unlock tables;
-# Test for with 2 read lock in different thread + flush
+# Test for with write lock + flush
-lock table t1 read;
-connect (locker,localhost,root,,test);
-connection locker;
-lock table t1 read;
-connection default;
-send flush table t1;
-connection locker;
---sleep 2
-select * from t1;
-unlock tables;
-connection default;
-reap;
-select * from t1;
+lock table t1 write;
+flush table t1;
+check table t1;
unlock tables;
# Test for with a write lock and a waiting read lock + flush
lock table t1 write;
+connect (locker,localhost,root,,test);
connection locker;
send lock table t1 read;
connection default;
@@ -51,9 +42,9 @@ reap;
unlock tables;
connection default;
-# Test for with a read lock and a waiting write lock + flush
+# Test for with a write lock and a waiting write lock + flush
-lock table t1 read;
+lock table t1 write;
connection locker;
send lock table t1 write;
connection default;
diff --git a/mysql-test/t/foreign_key.test b/mysql-test/t/foreign_key.test
index 0a3708e6dc8..2a6ab01f511 100644
--- a/mysql-test/t/foreign_key.test
+++ b/mysql-test/t/foreign_key.test
@@ -23,3 +23,75 @@ create unique index b on t1 (a,b);
drop table t1;
# End of 4.1 tests
+
+#
+# Bug#34455 (Ambiguous foreign keys syntax is accepted)
+#
+
+--disable_warnings
+drop table if exists t_34455;
+--enable_warnings
+
+# 2 match clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) match full match partial);
+
+# match after on delete, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) on delete set default match full);
+
+# match after on update, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a) on update set default match full);
+
+# 2 on delete clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a)
+ on delete set default on delete set default);
+
+# 2 on update clauses, illegal
+--error ER_PARSE_ERROR
+create table t_34455 (
+ a int not null,
+ foreign key (a) references t3 (a)
+ on update set default on update set default);
+
+create table t_34455 (a int not null);
+
+# 2 match clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) match full match partial);
+
+# match after on delete, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) on delete set default match full);
+
+# match after on update, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a) on update set default match full);
+
+# 2 on delete clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a)
+ on delete set default on delete set default);
+
+# 2 on update clauses, illegal
+--error ER_PARSE_ERROR
+alter table t_34455
+ add foreign key (a) references t3 (a)
+ on update set default on update set default);
+
+drop table t_34455;
+
diff --git a/mysql-test/t/fulltext.test b/mysql-test/t/fulltext.test
index c95bc213dec..97a1b5e39dc 100644
--- a/mysql-test/t/fulltext.test
+++ b/mysql-test/t/fulltext.test
@@ -553,6 +553,27 @@ SELECT count(*) FROM t1 WHERE
DROP TABLE t1,t2,t3;
+#
+# BUG#50351 - ft_min_word_len=2 Causes query to hang
+#
+CREATE TABLE t1 (a VARCHAR(4), FULLTEXT(a));
+INSERT INTO t1 VALUES
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),
+('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('cwrd'),('awrd'),('cwrd'),
+('awrd');
+SELECT COUNT(*) FROM t1 WHERE MATCH(a) AGAINST("+awrd bwrd* +cwrd*" IN BOOLEAN MODE);
+DROP TABLE t1;
--echo #
--echo # Bug #49445: Assertion failed: 0, file .\item_row.cc, line 55 with
diff --git a/mysql-test/t/func_gconcat.test b/mysql-test/t/func_gconcat.test
index 71d3d5a140b..0b4f0be114c 100644
--- a/mysql-test/t/func_gconcat.test
+++ b/mysql-test/t/func_gconcat.test
@@ -693,6 +693,21 @@ SELECT 1 FROM t1 WHERE t1.a NOT IN
DROP TABLE t1, t2;
+#
+# Bug #49487: crash with explain extended and group_concat in a derived table
+#
+
+CREATE TABLE t1 (f1 INT);
+INSERT INTO t1 VALUES (),();
+
+EXPLAIN EXTENDED SELECT 1 FROM
+ (SELECT DISTINCT GROUP_CONCAT(td.f1) FROM t1,t1 AS td GROUP BY td.f1) AS d,t1;
+
+SELECT 1 FROM
+ (SELECT DISTINCT GROUP_CONCAT(td.f1) FROM t1,t1 AS td GROUP BY td.f1) AS d,t1;
+
+DROP TABLE t1;
+
--echo End of 5.0 tests
#
diff --git a/mysql-test/t/func_str.test b/mysql-test/t/func_str.test
index a570e70d81d..556a19efce5 100644
--- a/mysql-test/t/func_str.test
+++ b/mysql-test/t/func_str.test
@@ -442,7 +442,7 @@ where collation(t2.a) = _utf8'binary' order by t1.a,t2.a;
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
where charset(t2.a) = _utf8'binary' order by t1.a,t2.a;
select t1.*,t2.* from t1 left join t2 on (t1.b=t2.b)
-where coercibility(t2.a) = 2 order by t1.a,t2.a;
+where coercibility(t2.a) = 5 order by t1.a,t2.a;
DROP TABLE t1, t2;
#
diff --git a/mysql-test/t/func_time.test b/mysql-test/t/func_time.test
index 95b8a8ec38d..219a857a597 100644
--- a/mysql-test/t/func_time.test
+++ b/mysql-test/t/func_time.test
@@ -345,10 +345,6 @@ select date_add(date,INTERVAL "1" QUARTER) from t1;
select timestampadd(MINUTE, 1, date) from t1;
select timestampadd(WEEK, 1, date) from t1;
select timestampadd(SQL_TSI_SECOND, 1, date) from t1;
-# mysqltest.c discards an expected 'deprecated' warning on prepare stage
---disable_ps_protocol
-select timestampadd(SQL_TSI_FRAC_SECOND, 1, date) from t1;
---enable_ps_protocol
select timestampdiff(MONTH, '2001-02-01', '2001-05-01') as a;
select timestampdiff(YEAR, '2002-05-01', '2001-01-01') as a;
@@ -360,10 +356,6 @@ select timestampdiff(SQL_TSI_HOUR, '2001-02-01', '2001-05-01') as a;
select timestampdiff(SQL_TSI_DAY, '2001-02-01', '2001-05-01') as a;
select timestampdiff(SQL_TSI_MINUTE, '2001-02-01 12:59:59', '2001-05-01 12:58:59') as a;
select timestampdiff(SQL_TSI_SECOND, '2001-02-01 12:59:59', '2001-05-01 12:58:58') as a;
-# mysqltest.c discards an expected 'deprecated' warning on prepare stage
---disable_ps_protocol
-select timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05-01 12:58:58.119999') as a;
---enable_ps_protocol
select timestampdiff(SQL_TSI_DAY, '1986-02-01', '1986-03-01') as a1,
timestampdiff(SQL_TSI_DAY, '1900-02-01', '1900-03-01') as a2,
@@ -602,9 +594,6 @@ select isnull(week(now() + 0)), isnull(week(now() + 0.2)),
--echo End of 4.1 tests
-explain extended select timestampdiff(SQL_TSI_WEEK, '2001-02-01', '2001-05-01') as a1,
- timestampdiff(SQL_TSI_FRAC_SECOND, '2001-02-01 12:59:59.120000', '2001-05-01 12:58:58.119999') as a2;
-
#
# Bug #10590: %h, %I, and %l format specifies should all return results in
# the 0-11 range
@@ -797,27 +786,11 @@ select DATE_ADD(20071108, INTERVAL 1 DAY);
select LAST_DAY('2007-12-06 08:59:19.05') - INTERVAL 1 SECOND;
-#
# Bug#33834: FRAC_SECOND: Applicability not clear in documentation
#
-# Show that he use of FRAC_SECOND, for anything other than
-# TIMESTAMPADD / TIMESTAMPDIFF, is a server error.
-
-# mysqltest.c discards an expected 'deprecated' warning on prepare stage
---disable_ps_protocol
-SELECT TIMESTAMPADD(FRAC_SECOND, 1, '2008-02-18');
-SELECT TIMESTAMPDIFF(FRAC_SECOND, '2008-02-17', '2008-02-18');
---enable_ps_protocol
-
---error ER_PARSE_ERROR
-SELECT DATE_ADD('2008-02-18', INTERVAL 1 FRAC_SECOND);
---error ER_PARSE_ERROR
-SELECT DATE_SUB('2008-02-18', INTERVAL 1 FRAC_SECOND);
-
---error ER_PARSE_ERROR
-SELECT '2008-02-18' + INTERVAL 1 FRAC_SECOND;
---error ER_PARSE_ERROR
-SELECT '2008-02-18' - INTERVAL 1 FRAC_SECOND;
+# Test case removed since FRAC_SECOND was deprecated and
+# removed as part of WL#5154
+#
#
# Bug #36466:
diff --git a/mysql-test/t/gis.test b/mysql-test/t/gis.test
index 70d73234ea8..1aeb2fa5b14 100644
--- a/mysql-test/t/gis.test
+++ b/mysql-test/t/gis.test
@@ -726,3 +726,48 @@ SELECT Polygon(1234512,'');
SELECT Polygon(12345123,'');
--echo End of 5.1 tests
+
+#
+# Bug #50574 5.5.x allows spatial indexes on non-spatial
+# columns, causing crashes!
+#
+--error ER_SPATIAL_MUST_HAVE_GEOM_COL
+CREATE TABLE t1(
+ col0 BINARY NOT NULL,
+ col2 TIMESTAMP,
+ SPATIAL INDEX i1 (col0)
+) ENGINE=MyISAM;
+
+# Test other ways to add indices
+CREATE TABLE t1 (
+ col0 BINARY NOT NULL,
+ col2 TIMESTAMP
+) ENGINE=MyISAM;
+
+--error ER_SPATIAL_MUST_HAVE_GEOM_COL
+CREATE SPATIAL INDEX idx0 ON t1(col0);
+
+--error ER_SPATIAL_MUST_HAVE_GEOM_COL
+ALTER TABLE t1 ADD SPATIAL INDEX i1 (col0);
+
+CREATE TABLE t2 (
+ col0 INTEGER NOT NULL,
+ col1 POINT,
+ col2 POINT
+);
+
+--error ER_WRONG_ARGUMENTS
+CREATE SPATIAL INDEX idx0 ON t2 (col1, col2);
+
+--error ER_WRONG_ARGUMENTS
+CREATE TABLE t3 (
+ col0 INTEGER NOT NULL,
+ col1 POINT,
+ col2 LINESTRING,
+ SPATIAL INDEX i1 (col1, col2)
+);
+
+# cleanup
+DROP TABLE t1;
+DROP TABLE t2;
+
diff --git a/mysql-test/t/group_by.test b/mysql-test/t/group_by.test
index 7ed8dfe5784..4f92ff65177 100644
--- a/mysql-test/t/group_by.test
+++ b/mysql-test/t/group_by.test
@@ -1159,3 +1159,53 @@ SELECT COUNT(i) FROM t1 WHERE i > 1;
DROP TABLE t1;
SET @@sql_mode = @old_sql_mode;
+--echo #
+--echo # Bug #45640: optimizer bug produces wrong results
+--echo #
+
+CREATE TABLE t1 (a INT, b INT);
+INSERT INTO t1 VALUES (4, 40), (1, 10), (2, 20), (2, 20), (3, 30);
+
+--echo # should return 4 ordered records:
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa;
+
+SELECT (SELECT (SELECT t1.a)) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa;
+
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa+0;
+
+--echo # should return the same result in a reverse order:
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY -aa;
+
+--echo # execution plan should not use temporary table:
+EXPLAIN EXTENDED
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY aa+0;
+
+EXPLAIN EXTENDED
+SELECT (SELECT t1.a) aa, COUNT(DISTINCT b) FROM t1 GROUP BY -aa;
+
+--echo # should return only one record
+SELECT (SELECT tt.a FROM t1 tt LIMIT 1) aa, COUNT(DISTINCT b) FROM t1
+ GROUP BY aa;
+
+CREATE TABLE t2 SELECT DISTINCT a FROM t1;
+
+--echo # originally reported queries (1st two columns of next two query
+--echo # results should be same):
+
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT(DISTINCT b)
+ FROM t1 GROUP BY aa, b;
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT( b)
+ FROM t1 GROUP BY aa, b;
+
+--echo # ORDER BY for sure:
+
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT(DISTINCT b)
+ FROM t1 GROUP BY aa, b ORDER BY -aa, -b;
+SELECT (SELECT t2.a FROM t2 WHERE t2.a = t1.a) aa, b, COUNT( b)
+ FROM t1 GROUP BY aa, b ORDER BY -aa, -b;
+
+DROP TABLE t1, t2;
+
+--echo #
+
+--echo # End of 5.1 tests
diff --git a/mysql-test/t/group_min_max.test b/mysql-test/t/group_min_max.test
index 0e6fef9b855..81274b04bcd 100644
--- a/mysql-test/t/group_min_max.test
+++ b/mysql-test/t/group_min_max.test
@@ -1044,6 +1044,16 @@ SELECT a, MAX(b) FROM t WHERE b GROUP BY a;
DROP TABLE t;
+#
+# BUG#49902 - SELECT returns incorrect results
+#
+CREATE TABLE t1(a INT NOT NULL, b INT NOT NULL, KEY (b));
+INSERT INTO t1 VALUES(1,1),(2,1);
+ANALYZE TABLE t1;
+SELECT 1 AS c, b FROM t1 WHERE b IN (1,2) GROUP BY c, b;
+SELECT a FROM t1 WHERE b=1;
+DROP TABLE t1;
+
--echo End of 5.1 tests
@@ -1166,3 +1176,22 @@ SELECT (SUM(DISTINCT a) + MAX(b)) FROM t2 GROUP BY a;
DROP TABLE t1,t2;
--echo # end of WL#3220 tests
+
+--echo #
+--echo # Bug#50539: Wrong result when loose index scan is used for an aggregate
+--echo # function with distinct
+--echo #
+CREATE TABLE t1 (
+ f1 int(11) NOT NULL DEFAULT '0',
+ f2 char(1) NOT NULL DEFAULT '',
+ PRIMARY KEY (f1,f2)
+) ;
+insert into t1 values(1,'A'),(1 , 'B'), (1, 'C'), (2, 'A'),
+(3, 'A'), (3, 'B'), (3, 'C'), (3, 'D');
+
+SELECT f1, COUNT(DISTINCT f2) FROM t1 GROUP BY f1;
+explain SELECT f1, COUNT(DISTINCT f2) FROM t1 GROUP BY f1;
+
+drop table t1;
+--echo # End of test#50539.
+
diff --git a/mysql-test/t/having.test b/mysql-test/t/having.test
index af9af4fe1fc..185ca4bdddb 100644
--- a/mysql-test/t/having.test
+++ b/mysql-test/t/having.test
@@ -442,4 +442,30 @@ INSERT INTO t1 VALUES (1, 1), (2,2), (3, NULL);
SELECT b, COUNT(DISTINCT a) FROM t1 GROUP BY b HAVING b is NULL;
DROP TABLE t1;
+
+--echo #
+--echo # Bug#50995 Having clause on subquery result produces incorrect results.
+--echo #
+
+CREATE TABLE t1
+(
+ id1 INT,
+ id2 INT NOT NULL,
+ INDEX id1(id2)
+);
+
+INSERT INTO t1 SET id1=1, id2=1;
+INSERT INTO t1 SET id1=2, id2=1;
+INSERT INTO t1 SET id1=3, id2=1;
+
+SELECT t1.id1,
+(SELECT 0 FROM DUAL
+ WHERE t1.id1=t1.id1) AS amount FROM t1
+WHERE t1.id2 = 1
+HAVING amount > 0
+ORDER BY t1.id1;
+
+DROP TABLE t1;
+
+
--echo End of 5.0 tests
diff --git a/mysql-test/t/implicit_commit.test b/mysql-test/t/implicit_commit.test
new file mode 100644
index 00000000000..b10788bd891
--- /dev/null
+++ b/mysql-test/t/implicit_commit.test
@@ -0,0 +1,1166 @@
+source include/have_innodb.inc;
+source include/not_embedded.inc;
+
+SET GLOBAL EVENT_SCHEDULER = OFF;
+SET BINLOG_FORMAT = STATEMENT;
+
+LET $OLD_DB= `SELECT DATABASE()`;
+
+CREATE DATABASE db1;
+USE db1;
+CREATE TABLE t1 (a INT, KEY a(a)) ENGINE=INNODB;
+INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
+CREATE TABLE t3 (a INT) ENGINE=MyISAM;
+INSERT INTO t3 SELECT * FROM t1;
+CREATE TABLE trans (a INT) ENGINE=INNODB;
+
+DELIMITER |;
+
+CREATE PROCEDURE test_if_commit()
+BEGIN
+ ROLLBACK;
+ SELECT IF (COUNT(*) > 0, "YES", "NO") AS "IMPLICIT COMMIT" FROM trans;
+ DELETE FROM trans;
+ COMMIT;
+END|
+
+DELIMITER ;|
+
+SET AUTOCOMMIT = FALSE;
+
+--echo #
+--echo # SQLCOM_SELECT
+--echo #
+
+let $statement=
+ select 1 as res from t1 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_TABLE LIKE
+--echo #
+
+let $statement=
+ create table t2 like t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE
+--echo #
+
+let $statement=
+ show create table t2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_TABLE
+--echo #
+
+let $statement=
+ drop table t2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_TABLE TEMPORARY
+--echo #
+
+let $statement=
+ create temporary table t2 as select * from t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_TABLE TEMPORARY
+--echo #
+
+let $statement=
+ drop temporary table t2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_TABLE
+--echo #
+
+let $statement=
+ create table t2 as select * from t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_UPDATE
+--echo #
+
+let $statement=
+ update t2 set a=a+1 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_INSERT
+--echo #
+
+let $statement=
+ insert into t2 set a=((1) in (select * from t1));
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_INSERT_SELECT
+--echo #
+
+let $statement=
+ insert into t2 select * from t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_REPLACE
+--echo #
+
+let $statement=
+ replace t2 set a=((1) in (select * from t1));
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_REPLACE_SELECT
+--echo #
+
+let $statement=
+ replace t2 select * from t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DELETE
+--echo #
+
+let $statement=
+ delete from t2 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DELETE_MULTI
+--echo #
+
+let $statement=
+ delete t2, t3 from t2, t3 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_UPDATE_MULTI
+--echo #
+
+select * from t2;
+let $statement=
+ update t2, t3 set t3.a=t2.a, t2.a=null where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_LOAD
+--echo #
+
+create table t4 (a varchar(100));
+
+let $statement=
+ load data infile '../../std_data/words.dat' into table t4;
+source include/implicit_commit_helper.inc;
+
+drop table t4;
+
+--echo #
+--echo # SQLCOM_SHOW_DATABASES
+--echo #
+
+let $statement=
+ show databases where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_TABLES
+--echo #
+
+let $statement=
+ show tables where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_FIELDS
+--echo #
+
+let $statement=
+ show fields from t1 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_KEYS
+--echo #
+
+let $statement=
+ show keys from t1 where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_VARIABLES
+--echo #
+
+let $statement=
+ show variables where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STATUS
+--echo #
+
+let $statement=
+ show status where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_ENGINE_MUTEX
+--echo #
+
+let $statement=
+ show engine all mutex;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_PROCESSLIST
+--echo #
+
+let $statement=
+ show processlist;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_ENGINE_LOGS
+--echo #
+
+let $statement=
+ show engine all logs;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_ENGINE_STATUS
+--echo #
+
+let $statement=
+ show engine all status;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CHARSETS
+--echo #
+
+let $statement=
+ show charset where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_COLLATIONS
+--echo #
+
+let $statement=
+ show collation where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_TABLE_STATUS
+--echo #
+
+let $statement=
+ show table status where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_TRIGGERS
+--echo #
+
+let $statement=
+ show triggers where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_OPEN_TABLES
+--echo #
+
+let $statement=
+ show open tables where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STATUS_PROC
+--echo #
+
+let $statement=
+ show procedure status where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STATUS_FUNC
+--echo #
+
+let $statement=
+ show function status where (1) in (select * from t1);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SET_OPTION
+--echo #
+
+let $statement=
+ set @a=((1) in (select * from t1));
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DO
+--echo #
+
+let $statement=
+ do ((1) in (select * from t1));
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CALL
+--echo #
+
+create procedure p1(a int) begin end;
+
+let $statement=
+ call p1((1) in (select * from t1));
+source include/implicit_commit_helper.inc;
+
+drop procedure p1;
+
+--echo #
+--echo # SQLCOM_CREATE_VIEW
+--echo #
+
+let $statement=
+ create view v1 as select * from t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_VIEW
+--echo #
+
+let $statement=
+ alter view v1 as select 2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_VIEW
+--echo #
+
+let $statement=
+ drop view v1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_INDEX
+--echo #
+
+let $statement=
+ create index idx1 on t1(a);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_INDEX
+--echo #
+
+let $statement=
+ drop index idx1 on t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_TABLE
+--echo #
+
+let $statement=
+ alter table t1 add column b int;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ alter table t1 change b c int;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ alter table t1 drop column c;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_TABLE TEMPORARY
+--echo #
+
+create temporary table t4 (a int);
+
+let $statement=
+ alter table t1 add column b int;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ alter table t1 change b c int;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ alter table t1 drop column c;
+source include/implicit_commit_helper.inc;
+
+drop table t4;
+
+--echo #
+--echo # SQLCOM_TRUNCATE
+--echo #
+
+insert into t2 select * from t1;
+let $statement=
+ truncate table t2;
+source include/implicit_commit_helper.inc;
+insert into t2 select * from t1;
+
+--echo #
+--echo # SQLCOM_TRUNCATE TEMPORARY
+--echo #
+
+create temporary table t4 as select * from t1;
+let $statement=
+ truncate table t4;
+source include/implicit_commit_helper.inc;
+drop temporary table t4;
+
+--echo #
+--echo # SQLCOM_SHOW_MASTER_STAT
+--echo #
+
+let $statement=
+ show master status;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_SLAVE_STAT
+--echo #
+
+let $statement=
+ show slave status;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_GRANT
+--echo #
+
+let $statement=
+ grant all on test.t1 to mysqltest_2@localhost with grant option;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_REVOKE
+--echo #
+let $statement=
+ revoke select on test.t1 from mysqltest_2@localhost;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_REVOKE_ALL
+--echo #
+
+let $statement=
+ revoke all on test.t1 from mysqltest_2@localhost;
+source include/implicit_commit_helper.inc;
+
+drop user mysqltest_2@localhost;
+
+--echo #
+--echo # SQLCOM_SHOW_GRANTS
+--echo #
+
+let $statement=
+ show grants;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ show grants for current_user();
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_LOCK_TABLES
+--echo #
+
+let $statement=
+ lock tables t1 write, trans write;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_UNLOCK_TABLES
+--echo #
+
+let $statement=
+ unlock tables;
+source include/implicit_commit_helper.inc;
+
+#
+# Missing test for lock tables transactional.
+#
+
+--echo #
+--echo # SQLCOM_CREATE_DB
+--echo #
+
+let $statement=
+ create database db2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CHANGE_DB
+--echo #
+
+create table db2.t1 (a int);
+insert into db2.t1 values (1);
+commit;
+
+let $statement=
+ use db2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE_DB
+--echo #
+
+let $statement=
+ show create database db2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_DB
+--echo #
+
+#let $statement=
+# alter database db2 character set koi8r;
+#source include/implicit_commit_helper.inc;
+
+#let $statement=
+# alter database db2 collate cp1251_general_cs;
+#source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_DB_UPGRADE
+--echo #
+
+#let $statement=
+# alter database `#mysql50#db3` upgrade data directory name;
+#source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_DB
+--echo #
+
+use db1;
+
+let $statement=
+ drop database db2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_REPAIR
+--echo #
+
+let $statement=
+ repair table t2;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ repair table t2 use_frm;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_OPTIMIZE
+--echo #
+
+let $statement=
+ optimize table t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CHECK
+--echo #
+
+let $statement=
+ check table t1;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ check table t1 extended;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ASSIGN_TO_KEYCACHE
+--echo #
+
+set global keycache.key_buffer_size=128*1024;
+
+let $statement=
+ cache index t3 in keycache;
+source include/implicit_commit_helper.inc;
+
+set global keycache.key_buffer_size=0;
+
+--echo #
+--echo # SQLCOM_PRELOAD_KEYS
+--echo #
+
+let $statement=
+ load index into cache t3;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_FLUSH
+--echo #
+
+let $statement=
+ flush local privileges;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ flush privileges;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_KILL
+--echo #
+
+--echo #
+--echo # SQLCOM_ANALYZE
+--echo #
+
+let $statement=
+ analyze table t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ROLLBACK
+--echo #
+
+let $statement=
+ rollback;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ROLLBACK_TO_SAVEPOINT
+--echo #
+
+
+--echo #
+--echo # SQLCOM_COMMIT
+--echo #
+
+let $statement=
+ commit;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SAVEPOINT
+--echo #
+
+let $statement=
+ savepoint sp1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_RELEASE_SAVEPOINT
+--echo #
+
+--echo #
+--echo # SQLCOM_SLAVE_START
+--echo #
+
+--echo #
+--echo # SQLCOM_SLAVE_STOP
+--echo #
+
+--echo #
+--echo # SQLCOM_BEGIN
+--echo #
+
+let $statement=
+ begin;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CHANGE_MASTER
+--echo #
+
+--echo #
+--echo # SQLCOM_RENAME_TABLE
+--echo #
+
+let $statement=
+ rename table t3 to t4;
+source include/implicit_commit_helper.inc;
+
+let $statement=
+ rename table t4 to t3;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_RESET
+--echo #
+
+let $statement=
+ reset query cache;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_PURGE
+--echo #
+
+--echo #
+--echo # SQLCOM_PURGE_BEFORE
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_BINLOGS
+--echo #
+
+--echo #
+--echo # SQLCOM_HA_OPEN
+--echo #
+
+let $statement=
+ handler t1 open as ha1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_HA_READ
+--echo #
+
+let $statement=
+ handler ha1 read a first;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_HA_CLOSE
+--echo #
+
+let $statement=
+ handler ha1 close;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_SLAVE_HOSTS
+--echo #
+
+let $statement=
+ show slave hosts;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_BINLOG_EVENTS
+--echo #
+
+let $statement=
+ show binlog events;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_NEW_MASTER
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_WARNS
+--echo #
+
+let $statement=
+ show warnings;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_EMPTY_QUERY
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_ERRORS
+--echo #
+
+let $statement=
+ show errors;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STORAGE_ENGINES
+--echo #
+
+let $statement=
+ show engines;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_PRIVILEGES
+--echo #
+
+let $statement=
+ show privileges;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_HELP
+--echo #
+
+let $statement=
+ help 'foo';
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_USER
+--echo #
+
+let $statement=
+ create user trxusr1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_RENAME_USER
+--echo #
+
+let $statement=
+ rename user 'trxusr1' to 'trxusr2';
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_USER
+--echo #
+
+let $statement=
+ drop user trxusr2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CHECKSUM
+--echo #
+
+let $statement=
+ checksum table t1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_PROCEDURE
+--echo #
+
+let $statement=
+ create procedure p1(a int) begin end;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_PROCEDURE
+--echo #
+
+let $statement=
+ alter procedure p1 comment 'foobar';
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE_PROC
+--echo #
+
+let $statement=
+ show create procedure p1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STATUS_PROC
+--echo #
+
+let $statement=
+ show procedure status;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_PROC_CODE
+--echo #
+
+#
+# Available only on servers with debugging support.
+#
+
+--disable_abort_on_error
+let $statement=
+ show procedure code p1;
+source include/implicit_commit_helper.inc;
+--enable_abort_on_error
+
+--echo #
+--echo # SQLCOM_DROP_PROCEDURE
+--echo #
+
+let $statement=
+ drop procedure p1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_FUNCTION
+--echo #
+
+--echo #
+--echo # SQLCOM_DROP_FUNCTION
+--echo #
+
+--echo #
+--echo # SQLCOM_CREATE_SPFUNCTION
+--echo #
+
+let $statement=
+ create function f1() returns int return 69;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_FUNCTION
+--echo #
+
+let $statement=
+ alter function f1 comment 'comment';
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE_FUNC
+--echo #
+
+let $statement=
+ show create function f1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_STATUS_FUNC
+--echo #
+
+let $statement=
+ show function status like '%f%';
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_FUNC_CODE
+--echo #
+
+#
+# Available only on servers with debugging support.
+#
+
+--disable_abort_on_error
+let $statement=
+ show function code f1;
+source include/implicit_commit_helper.inc;
+--enable_abort_on_error
+
+--echo #
+--echo # SQLCOM_PREPARE
+--echo #
+
+let $statement=
+ prepare stmt1 from "insert into t1 values (5)";
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_EXECUTE
+--echo #
+
+let $statement=
+ execute stmt1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DEALLOCATE_PREPARE
+--echo #
+
+let $statement=
+ deallocate prepare stmt1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_TRIGGER
+--echo #
+
+let $statement=
+ create trigger trg1 before insert on t1 for each row set @a:=1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE_TRIGGER
+--echo #
+
+let $statement=
+ show create trigger trg1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_TRIGGER
+--echo #
+
+let $statement=
+ drop trigger trg1;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_XA_START
+--echo #
+
+--echo #
+--echo # SQLCOM_XA_END
+--echo #
+
+--echo #
+--echo # SQLCOM_XA_PREPARE
+--echo #
+
+--echo #
+--echo # SQLCOM_XA_COMMIT
+--echo #
+
+--echo #
+--echo # SQLCOM_XA_ROLLBACK
+--echo #
+
+--echo #
+--echo # SQLCOM_XA_RECOVER
+--echo #
+
+--echo #
+--echo # SQLCOM_ALTER_TABLESPACE
+--echo #
+
+--echo #
+--echo # SQLCOM_INSTALL_PLUGIN
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_PLUGINS
+--echo #
+
+--echo #
+--echo # SQLCOM_UNINSTALL_PLUGIN
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_AUTHORS
+--echo #
+
+let $statement=
+ show authors;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_BINLOG_BASE64_EVENT
+--echo #
+
+--echo #
+--echo # SQLCOM_SHOW_CONTRIBUTORS
+--echo #
+
+let $statement=
+ show contributors;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_CREATE_SERVER
+--echo #
+
+--echo #
+--echo # SQLCOM_ALTER_SERVER
+--echo #
+
+--echo #
+--echo # SQLCOM_DROP_SERVER
+--echo #
+
+--echo #
+--echo # SQLCOM_CREATE_EVENT
+--echo #
+
+let $statement=
+ create event ev1 on schedule every 1 second do insert into t1 values (6);
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_ALTER_EVENT
+--echo #
+
+let $statement=
+ alter event ev1 rename to ev2 disable;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_CREATE_EVENT
+--echo #
+
+let $statement=
+ show create event ev2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_EVENTS
+--echo #
+
+let $statement=
+ show events;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_DROP_EVENT
+--echo #
+
+let $statement=
+ drop event ev2;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_BACKUP
+--echo #
+
+#create database backup_db;
+#
+#let $statement=
+# backup database db1 to 'backup_db1.ba';
+#source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_ARCHIVE
+--echo #
+
+#
+# --error ER_NOT_ALLOWED_COMMAND
+#
+#let $statement=
+# show backup 'backup_db1.ba';
+#source include/implicit_commit_helper.inc;
+#
+
+--echo #
+--echo # SQLCOM_RESTORE
+--echo #
+
+#let $statement=
+# restore from 'backup_db1.ba';
+#source include/implicit_commit_helper.inc;
+
+#--remove_file $MYSQLTEST_VARDIR/master-data/backup_db1.ba
+#
+#drop database backup_db;
+
+--echo #
+--echo # SQLCOM_BACKUP_TEST
+--echo #
+
+# BACKUP_TEST
+
+--echo #
+--echo # SQLCOM_SHOW_PROFILE
+--echo #
+
+let $statement=
+ show profile memory;
+source include/implicit_commit_helper.inc;
+
+--echo #
+--echo # SQLCOM_SHOW_PROFILES
+--echo #
+
+let $statement=
+ show profiles;
+source include/implicit_commit_helper.inc;
+
+DROP TABLE t1;
+DROP TABLE t2;
+DROP TABLE t3;
+eval USE $OLD_DB;
+DROP DATABASE db1;
+
+--echo End of tests
diff --git a/mysql-test/t/information_schema.test b/mysql-test/t/information_schema.test
index cec93aeb0cb..456cacf2fe1 100644
--- a/mysql-test/t/information_schema.test
+++ b/mysql-test/t/information_schema.test
@@ -544,6 +544,7 @@ AND table_name not like 'ndb%' AND table_name not like 'innodb_%'
GROUP BY TABLE_SCHEMA;
+
#
# TRIGGERS table test
#
@@ -914,8 +915,8 @@ DROP PROCEDURE p1;
DROP USER mysql_bug20230@localhost;
#
-# Bug#2123 query with a simple non-correlated subquery over
-# INFORMARTION_SCHEMA.TABLES
+# Bug#21231 query with a simple non-correlated subquery over
+# INFORMARTION_SCHEMA.TABLES
#
SELECT MAX(table_name) FROM information_schema.tables WHERE table_schema IN ('mysql', 'INFORMATION_SCHEMA', 'test');
@@ -1418,9 +1419,66 @@ DROP DATABASE db1;
--echo End of 5.1 tests.
+--echo #
+--echo # Additional test for WL#3726 "DDL locking for all metadata objects"
+--echo # To avoid possible deadlocks process of filling of I_S tables should
+--echo # use high-priority metadata lock requests when opening tables.
+--echo # Below we just test that we really use high-priority lock request
+--echo # since reproducing a deadlock will require much more complex test.
+--echo #
+--disable_warnings
+drop tables if exists t1, t2, t3;
+--enable_warnings
+create table t1 (i int);
+create table t2 (j int primary key auto_increment);
+connect (con3726_1,localhost,root,,test);
+--echo # Switching to connection 'con3726_1'
+connection con3726_1;
+lock table t2 read;
+connect (con3726_2,localhost,root,,test);
+--echo # Switching to connection 'con3726_2'
+connection con3726_2;
+--echo # RENAME below will be blocked by 'lock table t2 read' above but
+--echo # will add two pending requests for exclusive metadata locks.
+--send rename table t2 to t3
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info like "rename table t2 to t3";
+--source include/wait_condition.inc
+--echo # These statements should not be blocked by pending lock requests
+select table_name, column_name, data_type from information_schema.columns
+ where table_schema = 'test' and table_name in ('t1', 't2');
+select table_name, auto_increment from information_schema.tables
+ where table_schema = 'test' and table_name in ('t1', 't2');
+--echo # Switching to connection 'con3726_1'
+connection con3726_1;
+unlock tables;
+--echo # Switching to connection 'con3726_2'
+connection con3726_2;
+--reap
+--echo # Switching to connection 'default'
+connection default;
+disconnect con3726_1;
+disconnect con3726_2;
+drop tables t1, t3;
+
+#
+# Bug#39270 I_S optimization algorithm does not work properly in some cases
+#
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME='t1';
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
+ WHERE CONSTRAINT_SCHEMA='test';
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
+ WHERE TABLE_NAME='t1' and TABLE_SCHEMA='test';
+EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
+ WHERE EVENT_OBJECT_SCHEMA='test';
+
#
# Bug#24062 Incorrect error msg after execute DROP TABLE IF EXISTS on information_schema
-#
+#
--error ER_DBACCESS_DENIED_ERROR
create table information_schema.t1 (f1 INT);
--error ER_DBACCESS_DENIED_ERROR
@@ -1456,27 +1514,18 @@ DROP TABLE t1, information_schema.tables;
LOCK TABLES t1 READ, information_schema.tables READ;
DROP TABLE t1;
-#
-# Bug#39270 I_S optimization algorithm does not work properly in some cases
-#
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.PARTITIONS WHERE TABLE_NAME='t1';
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
- WHERE CONSTRAINT_SCHEMA='test';
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
- WHERE TABLE_NAME='t1' and TABLE_SCHEMA='test';
-EXPLAIN SELECT * FROM INFORMATION_SCHEMA.TRIGGERS
- WHERE EVENT_OBJECT_SCHEMA='test';
+# Wait till all disconnects are completed
+--source include/wait_until_count_sessions.inc
#
-# Bug #43834 Assertion in Natural_join_column::db_name() on an I_S query
+# Bug #43834 Assertion in Natural_join_column::db_name() on an I_S query
#
+
SELECT *
-FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
-LEFT JOIN INFORMATION_SCHEMA.COLUMNS
-USING (TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME)
-WHERE COLUMNS.TABLE_SCHEMA = 'test'
-AND COLUMNS.TABLE_NAME = 't1';
+FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE
+LEFT JOIN INFORMATION_SCHEMA.COLUMNS
+USING (TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME)
+WHERE COLUMNS.TABLE_SCHEMA = 'test'
+AND COLUMNS.TABLE_NAME = 't1';
+
-# Wait till all disconnects are completed
---source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/init_connect-master.opt b/mysql-test/t/init_connect-master.opt
index 108a8687aa2..db17a49c058 100644
--- a/mysql-test/t/init_connect-master.opt
+++ b/mysql-test/t/init_connect-master.opt
@@ -1 +1 @@
---set-variable=init_connect="set @a='a\\0c'"
+--init_connect="set @a='a\\0c'"
diff --git a/mysql-test/t/innodb-lock.test b/mysql-test/t/innodb-lock.test
index eacf7e562be..d2f630ccaba 100644
--- a/mysql-test/t/innodb-lock.test
+++ b/mysql-test/t/innodb-lock.test
@@ -56,9 +56,12 @@ commit;
drop table t1;
-#
-# Try with old lock method (where LOCK TABLE is ignored by InnoDB)
-#
+--echo #
+--echo # Old lock method (where LOCK TABLE was ignored by InnoDB) no longer
+--echo # works due to fix for bugs #46272 "MySQL 5.4.4, new MDL: unnecessary
+--echo # deadlock" and bug #37346 "innodb does not detect deadlock between
+--echo # update and alter table".
+--echo #
set @@innodb_table_locks=0;
@@ -67,36 +70,38 @@ insert into t1 values(0, 0),(1,1),(2,2);
commit;
SELECT * from t1 where id = 0 FOR UPDATE;
+--echo # Connection 'con2'.
connection con2;
set autocommit=0;
set @@innodb_table_locks=0;
-# The following statement should work becase innodb doesn't check table locks
-lock table t1 write;
+--echo # The following statement should block because SQL-level lock
+--echo # is taken on t1 which will wait until concurrent transaction
+--echo # is commited.
+--echo # Sending:
+--send lock table t1 write;
+--echo # Connection 'con1'.
connection con1;
+--echo # Wait until LOCK TABLE is blocked on SQL-level lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # We should be able to do UPDATEs and SELECTs within transaction.
+update t1 set x=1 where id = 0;
+select * from t1;
+--echo # Unblock LOCK TABLE.
+commit;
-# This will be locked by MySQL
---send
-update t1 set x=10 where id = 2;
---sleep 2
-
+--echo # Connection 'con2'.
connection con2;
-
-# Note that we will get a deadlock if we try to select any rows marked
-# for update by con1 !
-
-SELECT * from t1 where id = 2;
-UPDATE t1 set x=3 where id = 2;
-commit;
-SELECT * from t1;
-commit;
+--echo # Reap LOCK TABLE.
+--reap
unlock tables;
+--echo # Connection 'con1'.
connection con1;
-reap;
-commit;
-select * from t1;
drop table t1;
# End of 4.1 tests
diff --git a/mysql-test/t/innodb.test b/mysql-test/t/innodb.test
index 075058d42c2..c4380ff8f43 100644
--- a/mysql-test/t/innodb.test
+++ b/mysql-test/t/innodb.test
@@ -1854,16 +1854,15 @@ connect (b,localhost,root,,);
connection a;
create table t1(a int not null, b int, c int, d int, primary key(a)) engine=innodb;
insert into t1(a) values (1),(2),(3);
+delimiter |;
+create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
+delimiter ;|
commit;
connection b;
set autocommit = 0;
update t1 set b = 5 where a = 2;
connection a;
-delimiter |;
-create trigger t1t before insert on t1 for each row begin set NEW.b = NEW.a * 10 + 5, NEW.c = NEW.a / 10; end |
-delimiter ;|
set autocommit = 0;
-connection a;
insert into t1(a) values (10),(20),(30),(40),(50),(60),(70),(80),(90),(100),
(11),(21),(31),(41),(51),(61),(71),(81),(91),(101),
(12),(22),(32),(42),(52),(62),(72),(82),(92),(102),
@@ -1927,6 +1926,9 @@ insert into t2(a) values(8);
delete from t2 where a = 3;
update t4 set b = b + 1 where a = 3;
commit;
+connection a;
+commit;
+connection b;
drop trigger t1t;
drop trigger t2t;
drop trigger t3t;
diff --git a/mysql-test/t/innodb_mysql.test b/mysql-test/t/innodb_mysql.test
index 3cd7b40f4ab..b5dec54bed2 100644
--- a/mysql-test/t/innodb_mysql.test
+++ b/mysql-test/t/innodb_mysql.test
@@ -536,6 +536,28 @@ DROP PROCEDURE p1;
DROP VIEW v1;
DROP TABLE t1,t2;
+
+--echo #
+--echo # Bug #49324: more valgrind errors in test_if_skip_sort_order
+--echo #
+CREATE TABLE t1 (a INT PRIMARY KEY) ENGINE=innodb ;
+--echo #should not cause valgrind warnings
+SELECT 1 FROM t1 JOIN t1 a USING(a) GROUP BY t1.a,t1.a;
+DROP TABLE t1;
+
+--echo #
+--echo # Bug#50843: Filesort used instead of clustered index led to
+--echo # performance degradation.
+--echo #
+create table t1(f1 int not null primary key, f2 int) engine=innodb;
+create table t2(f1 int not null, key (f1)) engine=innodb;
+insert into t1 values (1,1),(2,2),(3,3);
+insert into t2 values (1),(2),(3);
+explain select t1.* from t1 left join t2 using(f1) group by t1.f1;
+drop table t1,t2;
+--echo #
+
+
--echo End of 5.1 tests
@@ -555,3 +577,42 @@ create table t2 (fk int, key x (fk),
constraint x foreign key (FK) references t1 (PK)) engine=InnoDB;
show create table t2;
drop table t2, t1;
+
+
+--echo #
+--echo # Bug#44613 SELECT statement inside FUNCTION takes a shared lock
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP FUNCTION IF EXISTS f1;
+--enable_warnings
+
+CREATE TABLE t1(x INT PRIMARY KEY, y INT) ENGINE=innodb;
+INSERT INTO t1 VALUES (1, 0), (2, 0);
+
+CREATE FUNCTION f1(z INT) RETURNS INT READS SQL DATA
+ RETURN (SELECT x FROM t1 WHERE x = z);
+
+--echo # Connection default
+START TRANSACTION;
+SELECT f1(1);
+
+--echo # Connection con2
+--disable_query_log
+connect (con2, localhost, root);
+--enable_query_log
+START TRANSACTION;
+SELECT f1(1);
+# This next statement used to block.
+UPDATE t1 SET y = 1 WHERE x = 1;
+
+COMMIT;
+
+disconnect con2;
+--source include/wait_until_disconnected.inc
+--echo # Connection default
+connection default;
+COMMIT;
+DROP TABLE t1;
+DROP FUNCTION f1;
diff --git a/mysql-test/t/innodb_mysql_lock-master.opt b/mysql-test/t/innodb_mysql_lock-master.opt
new file mode 100644
index 00000000000..0041949b829
--- /dev/null
+++ b/mysql-test/t/innodb_mysql_lock-master.opt
@@ -0,0 +1 @@
+--innodb_lock_wait_timeout=300
diff --git a/mysql-test/t/innodb_mysql_lock.test b/mysql-test/t/innodb_mysql_lock.test
new file mode 100644
index 00000000000..6469ef2d229
--- /dev/null
+++ b/mysql-test/t/innodb_mysql_lock.test
@@ -0,0 +1,175 @@
+-- source include/have_innodb.inc
+
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
+--echo #
+--echo # Bug #22876 Four-way deadlock
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+connect (con1,localhost,root,,);
+connect (con2,localhost,root,,);
+connect (con3,localhost,root,,);
+
+--echo # Connection 1
+connection con1;
+set @@autocommit=0;
+CREATE TABLE t1(s1 INT UNIQUE) ENGINE=innodb;
+INSERT INTO t1 VALUES (1);
+
+--echo # Connection 2
+connection con2;
+set @@autocommit=0;
+INSERT INTO t1 VALUES (2);
+--send INSERT INTO t1 VALUES (1)
+
+--echo # Connection 3
+connection con3;
+set @@autocommit=0;
+--send DROP TABLE t1
+
+--echo # Connection 1
+connection con1;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE info = "INSERT INTO t1 VALUES (1)" and
+ state = "update";
+--source include/wait_condition.inc
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE info = "DROP TABLE t1" and
+ state = "Waiting for table";
+--source include/wait_condition.inc
+--echo # Connection 1 is now holding the lock.
+--echo # Issuing insert from connection 1 while connection 2&3
+--echo # is waiting for the lock should give a deadlock error.
+--error ER_LOCK_DEADLOCK
+INSERT INTO t1 VALUES (2);
+
+--echo # Cleanup
+connection con2;
+--reap
+commit;
+set @@autocommit=1;
+connection con1;
+commit;
+set @@autocommit=1;
+connection con3;
+--reap
+set @@autocommit=1;
+connection default;
+
+disconnect con1;
+disconnect con3;
+
+
+--echo #
+--echo # Test for bug #37346 "innodb does not detect deadlock between update
+--echo # and alter table".
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (c1 int primary key, c2 int, c3 int) engine=InnoDB;
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+begin;
+--echo # Run statement which acquires X-lock on one of table's rows.
+update t1 set c3=c3+1 where c2=3;
+
+--echo #
+--echo # Switching to connection 'con37346'.
+connect (con37346,localhost,root,,test,,);
+connection con37346;
+--echo # The below ALTER TABLE statement should wait till transaction
+--echo # in connection 'default' is complete and then succeed.
+--echo # It should not deadlock or fail with ER_LOCK_DEADLOCK error.
+--echo # Sending:
+--send alter table t1 add column c4 int;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until the above ALTER TABLE gets blocked because this
+--echo # connection holds SW metadata lock on table to be altered.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c4 int";
+--source include/wait_condition.inc
+
+--echo # The below statement should succeed. It should not
+--echo # deadlock or end with ER_LOCK_DEADLOCK error.
+update t1 set c3=c3+1 where c2=4;
+
+--echo # Unblock ALTER TABLE by committing transaction.
+commit;
+
+--echo #
+--echo # Switching to connection 'con37346'.
+connection con37346;
+--echo # Reaping ALTER TABLE.
+--reap
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+disconnect con37346;
+drop table t1;
+
+
+--echo #
+--echo # Bug #42147 Concurrent DML and LOCK TABLE ... READ for InnoDB
+--echo # table cause warnings in errlog
+--echo #
+
+--echo #
+--echo # Note that this test for now relies on a global suppression of
+--echo # the warning "Found lock of type 6 that is write and read locked"
+--echo # This suppression rule can be removed once Bug#42147 is properly
+--echo # fixed. See bug page for more info.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (i INT) engine= innodb;
+
+--echo # Connection 2
+--echo # Get user-level lock
+connection con2;
+SELECT get_lock('bug42147_lock', 60);
+
+--echo # Connection 1
+connection default;
+--send INSERT INTO t1 SELECT get_lock('bug42147_lock', 60)
+
+--echo # Connection 2
+connection con2;
+let $wait_condition=
+ SELECT COUNT(*) > 0 FROM information_schema.processlist
+ WHERE state = 'User lock'
+ AND info = 'INSERT INTO t1 SELECT get_lock(\'bug42147_lock\', 60)';
+--source include/wait_condition.inc
+LOCK TABLES t1 READ;
+SELECT release_lock('bug42147_lock');
+
+--echo # Connection 1
+connection default;
+--reap
+
+--echo # Connection 2
+connection con2;
+UNLOCK TABLES;
+
+--echo # Connection 1
+connection default;
+disconnect con2;
+DROP TABLE t1;
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/innodb_mysql_sync.test b/mysql-test/t/innodb_mysql_sync.test
new file mode 100644
index 00000000000..3f061e30293
--- /dev/null
+++ b/mysql-test/t/innodb_mysql_sync.test
@@ -0,0 +1,48 @@
+#
+# Test file for InnoDB tests that require the debug sync facility
+#
+--source include/have_innodb.inc
+--source include/have_debug_sync.inc
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
+
+--echo #
+--echo # Bug 42074 concurrent optimize table and
+--echo # alter table = Assertion failed: thd->is_error()
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo # Create InnoDB table
+CREATE TABLE t1 (id INT) engine=innodb;
+connect (con2, localhost, root);
+
+--echo # Connection 1
+--echo # Start optimizing table
+connection default;
+SET DEBUG_SYNC='ha_admin_try_alter SIGNAL optimize_started WAIT_FOR table_altered';
+--send OPTIMIZE TABLE t1
+
+--echo # Connection 2
+--echo # Change table to engine=memory
+connection con2;
+SET DEBUG_SYNC='now WAIT_FOR optimize_started';
+ALTER TABLE t1 engine=memory;
+SET DEBUG_SYNC='now SIGNAL table_altered';
+
+--echo # Connection 1
+--echo # Complete optimization
+connection default;
+--reap
+
+disconnect con2;
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
+
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/insert_notembedded.test b/mysql-test/t/insert_notembedded.test
index 2950acff3cc..510dc56e8f7 100644
--- a/mysql-test/t/insert_notembedded.test
+++ b/mysql-test/t/insert_notembedded.test
@@ -174,7 +174,7 @@ connection default;
# we must wait till the insert opens and locks the table
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and id = $ID;
+ where state = "Table lock" and id = $ID;
--source include/wait_condition.inc
connect (select,localhost,root,,);
--echo connection: select
diff --git a/mysql-test/t/ipv4_as_ipv6.test b/mysql-test/t/ipv4_as_ipv6.test
index 4f4e68e8bfc..ace3c286643 100644
--- a/mysql-test/t/ipv4_as_ipv6.test
+++ b/mysql-test/t/ipv4_as_ipv6.test
@@ -5,8 +5,7 @@
# Test of ipv4 (127.0.0.1) in ipv6 format
# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding opt file).
#
-# Can't be tested with windows due to mixed format like 0::0000:FFFF:127.0.0.1
---source include/not_windows.inc
+--source include/have_ipv4_mapped.inc
# Can't be tested with embedded server
--source include/not_embedded.inc
diff --git a/mysql-test/t/ipv4_as_ipv6_win-master.opt b/mysql-test/t/ipv4_as_ipv6_win-master.opt
deleted file mode 100644
index f55a8e9209d..00000000000
--- a/mysql-test/t/ipv4_as_ipv6_win-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---skip-name-resolve --bind-address=0.0.0.0
diff --git a/mysql-test/t/ipv4_as_ipv6_win.test b/mysql-test/t/ipv4_as_ipv6_win.test
deleted file mode 100644
index 04f908a119d..00000000000
--- a/mysql-test/t/ipv4_as_ipv6_win.test
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv4 (127.0.0.1) in ipv6 format
-# Options: --skip-name-resolve, --bind-address=0.0.0.0 (see corresponding opt file).
-#
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
-# Can't be tested with embedded server
---source include/not_embedded.inc
-
-# Save the initial number of concurrent sessions
---source include/count_sessions.inc
-
-echo =============Test of '127.0.0.1' (IPv4) ===========================;
-let $IPv6= 127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::1' ========================;
-let $IPv6= ::1;
---echo connect (con1, $IPv6, root, , test, MASTER_MYPORT);
---disable_query_log
---error 2003,2006
-connect (con1, $IPv6, root, , test, $MASTER_MYPORT);
---enable_query_log
-connection default;
-
-# Wait till all disconnects are completed
---source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/ipv6.test b/mysql-test/t/ipv6.test
index a1515e9d533..5c08cde3746 100644
--- a/mysql-test/t/ipv6.test
+++ b/mysql-test/t/ipv6.test
@@ -6,9 +6,6 @@
# Options: --skip-name-resolve, --bind-address=:: (see corresponding opt file).
#
--source include/check_ipv6.inc
-
-# Can't be tested with windows due to the mixed format like 0:0:0:0:0:FFFF:127.0.0.1
---source include/not_windows.inc
# Can't be tested with embedded server
--source include/not_embedded.inc
@@ -35,45 +32,5 @@ let $IPv6= 0:0:0:0:0:0:0:1;
--source include/ipv6_clients.inc
--source include/ipv6.inc
-echo =============Test of '127.0.0.1' (IPv4) ===========================;
-let $IPv6= 127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:FFFF:127.0.0.1' ===================;
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0000:0000:0000:0000:0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0000:0000:0000:0000:0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0000:0000:0:0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0:0000:0000:0:0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0::0000:FFFF:127.0.0.1' ====;
-let $IPv6= 0::0000:FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:FFFF:127.0.0.1/96' ================;
-let $IPv6= 0:0:0:0:0:FFFF:127.0.0.1/96;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
-echo =============Test of '::FFFF:127.0.0.1' ===========================;
-let $IPv6= ::FFFF:127.0.0.1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::FFFF:127.0.0.1/96' ========================;
-let $IPv6= ::FFFF:127.0.0.1/96;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
# Wait till all disconnects are completed
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/ipv6_win-master.opt b/mysql-test/t/ipv6_win-master.opt
deleted file mode 100644
index d705811808c..00000000000
--- a/mysql-test/t/ipv6_win-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---skip-name-resolve --bind-address=::
diff --git a/mysql-test/t/ipv6_win.test b/mysql-test/t/ipv6_win.test
deleted file mode 100644
index 86d867cc448..00000000000
--- a/mysql-test/t/ipv6_win.test
+++ /dev/null
@@ -1,39 +0,0 @@
-# Copyright (C) 2009 SUN Microsystems
-# All rights reserved. Use is subject to license terms.
-# Author: Horst Hunger
-# Nov. 19, 2009
-# Test of ipv6 format
-# Options: --skip-name-resolve, --bind-address=:: (see corresponding opt file).
-#
---source include/check_ipv6.inc
-
-# For windows due to missing the mixed format like 0::0000:FFFF:127.0.0.1
---source include/windows.inc
-# Can't be tested with embedded server
---source include/not_embedded.inc
-
-# Save the initial number of concurrent sessions
---source include/count_sessions.inc
-
-echo =============Test of '::1' ========================================;
-let $IPv6= ::1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '::1/128' ====================================;
-let $IPv6= ::1/128;
-#--source include/ipv6_clients.inc
-#--source include/ipv6.inc
-
-echo =============Test of '0000:0000:0000:0000:0000:0000:0000:0001' ====;
-let $IPv6= 0000:0000:0000:0000:0000:0000:0000:0001;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-echo =============Test of '0:0:0:0:0:0:0:1' ============================;
-let $IPv6= 0:0:0:0:0:0:0:1;
---source include/ipv6_clients.inc
---source include/ipv6.inc
-
-# Wait till all disconnects are completed
---source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/join.test b/mysql-test/t/join.test
index dbf36dedec8..761121313e5 100644
--- a/mysql-test/t/join.test
+++ b/mysql-test/t/join.test
@@ -804,3 +804,28 @@ DEALLOCATE PREPARE stmt;
DROP VIEW v1;
DROP TABLE t1, t2;
+
+#
+# Bug#45195 valgrind warnings about uninitialized values in store_record_in_cache()
+#
+CREATE TABLE t1(a CHAR(9),b INT,KEY(b),KEY(a)) ENGINE=MYISAM;
+CREATE TABLE t2(a CHAR(9),b INT,KEY(b),KEY(a)) ENGINE=MYISAM;
+INSERT INTO t1 VALUES ('1',null),(null,null);
+INSERT INTO t2 VALUES ('1',null),(null,null);
+CREATE TABLE mm1(a CHAR(9),b INT,KEY(b),KEY(a))
+ENGINE=MERGE UNION=(t1,t2);
+SELECT t1.a FROM mm1,t1;
+DROP TABLE t1, t2, mm1;
+
+--echo #
+--echo # Bug #50335: Assertion `!(order->used & map)' in eq_ref_table
+--echo #
+
+CREATE TABLE t1 (a INT NOT NULL, b INT NOT NULL, PRIMARY KEY (a,b));
+INSERT INTO t1 VALUES (0,0), (1,1);
+
+SELECT * FROM t1 STRAIGHT_JOIN t1 t2 ON t1.a=t2.a AND t1.a=t2.b ORDER BY t2.a, t1.a;
+
+DROP TABLE t1;
+
+--echo End of 5.1 tests
diff --git a/mysql-test/t/kill.test b/mysql-test/t/kill.test
index 02b033df2e5..b91feb3a1d5 100644
--- a/mysql-test/t/kill.test
+++ b/mysql-test/t/kill.test
@@ -329,6 +329,243 @@ KILL CONNECTION_ID();
SELECT 1;
--connection default
+--echo #
+--echo # Additional test for WL#3726 "DDL locking for all metadata objects"
+--echo # Check that DDL and DML statements waiting for metadata locks can
+--echo # be killed. Note that we don't cover all situations here since it
+--echo # can be tricky to write test case for some of them (e.g. REPAIR or
+--echo # ALTER and other statements under LOCK TABLES).
+--echo #
+--disable_warnings
+drop tables if exists t1, t2, t3;
+--enable_warnings
+
+create table t1 (i int primary key);
+connect (blocker, localhost, root, , );
+connect (dml, localhost, root, , );
+connect (ddl, localhost, root, , );
+
+--echo # Test for RENAME TABLE
+--echo # Switching to connection 'blocker'
+connection blocker;
+lock table t1 read;
+--echo # Switching to connection 'ddl'
+connection ddl;
+let $ID= `select connection_id()`;
+--send rename table t1 to t2
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo # Test for DROP TABLE
+--send drop table t1
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "drop table t1";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo # Test for CREATE TRIGGER
+--send create trigger t1_bi before insert on t1 for each row set @a:=1
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "create trigger t1_bi before insert on t1 for each row set @a:=1";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo #
+--echo # Tests for various kinds of ALTER TABLE
+--echo #
+--echo # Full-blown ALTER which should copy table
+--send alter table t1 add column j int
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter table t1 add column j int";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo # Two kinds of simple ALTER
+--send alter table t1 rename to t2
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter table t1 rename to t2";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+--send alter table t1 disable keys
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter table t1 disable keys";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+--echo # Fast ALTER
+--send alter table t1 alter column i set default 100
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter table t1 alter column i set default 100";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+--echo # Special case which is triggered only for MERGE tables.
+--echo # Switching to connection 'blocker'
+connection blocker;
+unlock tables;
+create table t2 (i int primary key) engine=merge union=(t1);
+lock tables t2 read;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--send alter table t2 alter column i set default 100
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "alter table t2 alter column i set default 100";
+--source include/wait_condition.inc
+--replace_result $ID ID
+eval kill query $ID;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo # Test for DML waiting for meta-data lock
+--echo # Switching to connection 'blocker'
+connection blocker;
+unlock tables;
+drop table t2;
+create table t2 (k int);
+lock tables t1 read;
+--echo # Switching to connection 'ddl'
+connection ddl;
+# Let us add pending exclusive metadata lock on t2
+--send rename tables t1 to t3, t2 to t1
+--echo # Switching to connection 'dml'
+connection dml;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "rename tables t1 to t3, t2 to t1";
+--source include/wait_condition.inc
+let $ID2= `select connection_id()`;
+--send insert into t2 values (1)
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+--replace_result $ID2 ID2
+eval kill query $ID2;
+--echo # Switching to connection 'dml'
+connection dml;
+--error ER_QUERY_INTERRUPTED
+--reap
+--echo # Switching to connection 'blocker'
+connection blocker;
+unlock tables;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--reap
+
+--echo # Test for DML waiting for tables to be flushed
+--echo # Switching to connection 'blocker'
+connection blocker;
+lock tables t1 read;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--echo # Let us mark locked table t1 as old
+--send flush tables
+--echo # Switching to connection 'dml'
+connection dml;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Flushing tables" and
+ info = "flush tables";
+--source include/wait_condition.inc
+--send select * from t1
+--echo # Switching to connection 'default'
+connection default;
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info = "select * from t1";
+--source include/wait_condition.inc
+--replace_result $ID2 ID2
+eval kill query $ID2;
+--echo # Switching to connection 'dml'
+connection dml;
+--error ER_QUERY_INTERRUPTED
+--reap
+--echo # Switching to connection 'blocker'
+connection blocker;
+unlock tables;
+--echo # Switching to connection 'ddl'
+connection ddl;
+--reap
+
+--echo # Cleanup.
+--echo # Switching to connection 'default'
+connection default;
+drop table t3;
+drop table t1;
+
###########################################################################
# Restore global concurrent_insert value. Keep in the end of the test file.
diff --git a/mysql-test/t/lock.test b/mysql-test/t/lock.test
index 04994e3e48f..eda3e8451dd 100644
--- a/mysql-test/t/lock.test
+++ b/mysql-test/t/lock.test
@@ -2,8 +2,11 @@
# Testing of table locking
#
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
--disable_warnings
-drop table if exists t1,t2;
+drop table if exists t1,t2,t3;
--enable_warnings
CREATE TABLE t1 ( `id` int(11) NOT NULL default '0', `id2` int(11) NOT NULL default '0', `id3` int(11) NOT NULL default '0', `dummy1` char(30) default NULL, PRIMARY KEY (`id`,`id2`), KEY `index_id3` (`id3`)) ENGINE=MyISAM;
insert into t1 (id,id2) values (1,1),(1,2),(1,3);
@@ -178,6 +181,7 @@ select * from t2;
--error ER_TABLE_NOT_LOCKED
select * from t3;
select * from v_bug5719;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
drop view v_bug5719;
--echo
--echo sic: did not left LOCK TABLES mode automatically
@@ -185,7 +189,7 @@ drop view v_bug5719;
--error ER_TABLE_NOT_LOCKED
select * from t1;
unlock tables;
-create view v_bug5719 as select * from t1;
+create or replace view v_bug5719 as select * from t1;
lock tables v_bug5719 write;
select * from v_bug5719;
--echo
@@ -198,6 +202,12 @@ select * from t1;
select * from t2;
--error ER_TABLE_NOT_LOCKED
select * from t3;
+--echo Dropping of implicitly locked table is disallowed.
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+drop table t1;
+unlock tables;
+--echo Now let us also lock table explicitly and drop it.
+lock tables t1 write, v_bug5719 write;
drop table t1;
--echo
--echo sic: left LOCK TABLES mode
@@ -251,3 +261,324 @@ UNLOCK TABLES;
DROP TABLE t1,t2;
--echo End of 5.1 tests.
+
+--echo #
+--echo # Ensure that FLUSH TABLES doesn't substitute a base locked table
+--echo # with a temporary one.
+--echo #
+
+--disable_warnings
+drop table if exists t1, t2;
+--enable_warnings
+create table t1 (a int);
+create table t2 (a int);
+lock table t1 write, t2 write;
+create temporary table t1 (a int);
+flush table t1;
+drop temporary table t1;
+select * from t1;
+unlock tables;
+drop table t1, t2;
+
+--echo #
+--echo # Ensure that REPAIR .. USE_FRM works under LOCK TABLES.
+--echo #
+
+--disable_warnings
+drop table if exists t1, t2;
+--enable_warnings
+create table t1 (a int);
+create table t2 (a int);
+lock table t1 write, t2 write;
+repair table t1 use_frm;
+repair table t1 use_frm;
+select * from t1;
+select * from t2;
+repair table t2 use_frm;
+repair table t2 use_frm;
+select * from t1;
+unlock tables;
+drop table t1, t2;
+
+--echo #
+--echo # Ensure that mi_copy_status is called for two instances
+--echo # of the same table when it is reopened after a flush.
+--echo #
+--disable_warnings
+drop table if exists t1;
+drop view if exists v1;
+--enable_warnings
+create table t1 (c1 int);
+create view v1 as select * from t1;
+lock tables t1 write, v1 write;
+flush table t1;
+insert into t1 values (33);
+flush table t1;
+select * from t1;
+unlock tables;
+drop table t1;
+drop view v1;
+
+--echo #
+--echo # WL#4284: Transactional DDL locking
+--echo #
+
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (a int);
+connect(con1,localhost,root,,);
+set autocommit= 0;
+insert into t1 values (1);
+lock table t1 write;
+--echo # Disconnect
+--echo # Ensure that metadata locks will be released if there is an open
+--echo # transaction (autocommit=off) in conjunction with lock tables.
+disconnect con1;
+connection default;
+drop table t1;
+
+--echo # Same problem but now for BEGIN
+
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (a int);
+connect(con1,localhost,root,,);
+begin;
+insert into t1 values (1);
+--echo # Disconnect
+--echo # Ensure that metadata locks held by the transaction are released.
+disconnect con1;
+connection default;
+drop table t1;
+
+
+--echo #
+--echo # Coverage for situations when we try to execute DDL on tables
+--echo # which are locked by LOCK TABLES only implicitly.
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+drop view if exists v1;
+drop function if exists f1;
+--enable_warnings
+create table t1 (i int);
+create table t2 (j int);
+--echo #
+--echo # Try to perform DDL on table which is locked through view.
+create view v1 as select * from t2;
+lock tables t1 write, v1 write;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+flush table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+drop table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+alter table t2 add column k int;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+--echo # Repair produces error as part of its result set.
+repair table t2;
+unlock tables;
+drop view v1;
+--echo #
+--echo # Now, try DDL on table which is locked through routine.
+delimiter |;
+create function f1 () returns int
+begin
+ insert into t2 values (1);
+ return 0;
+end|
+delimiter ;|
+create view v1 as select f1() from t1;
+lock tables v1 read;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+flush table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+drop table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+alter table t2 add column k int;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+--echo # Repair produces error as part of its result set.
+repair table t2;
+unlock tables;
+drop view v1;
+drop function f1;
+--echo #
+--echo # Finally, try DDL on table which is locked thanks to trigger.
+create trigger t1_ai after insert on t1 for each row insert into t2 values (1);
+lock tables t1 write;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+flush table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+drop table t2;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+alter table t2 add column k int;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+create trigger t2_bi before insert on t2 for each row set @a:=1;
+--echo # Repair produces error as part of its result set.
+repair table t2;
+unlock tables;
+drop trigger t1_ai;
+drop tables t1, t2;
+
+
+--echo #
+--echo # Bug#45035 " Altering table under LOCK TABLES results in
+--echo # "Error 1213 Deadlock found..."
+--echo #
+--echo # When reopening tables under LOCK TABLES after ALTER TABLE,
+--echo # 6.0 used to be taking thr_lock locks one by one, and
+--echo # that would lead to a lock conflict.
+--echo # Check that taking all locks at once works.
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (i int);
+lock tables t1 write, t1 as a read, t1 as b read;
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+create temporary table t1 (i int);
+--echo #
+--echo # This is just for test coverage purposes,
+--echo # when this is allowed, remove the --error.
+--echo #
+--error ER_CANT_REOPEN_TABLE
+lock tables t1 write, t1 as a read, t1 as b read;
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+--echo #
+--echo # Separate case for partitioned tables is important
+--echo # because each partition has an own thr_lock object.
+--echo #
+create table t1 (i int) partition by list (i)
+ (partition p0 values in (1),
+ partition p1 values in (2,3),
+ partition p2 values in (4,5));
+lock tables t1 write, t1 as a read, t1 as b read;
+alter table t1 add column j int;
+unlock tables;
+drop table t1;
+
+
+--echo #
+--echo # Bug #43272 HANDLER SQL command does not work under LOCK TABLES
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (a INT);
+LOCK TABLE t1 WRITE;
+
+--echo # HANDLER commands are not allowed in LOCK TABLES mode
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+HANDLER t1 OPEN;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+HANDLER t1 READ FIRST;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+HANDLER t1 CLOSE;
+
+UNLOCK TABLES;
+DROP TABLE t1;
+
+
+--echo #
+--echo # Bug#45066 FLUSH TABLES WITH READ LOCK deadlocks against
+--echo # LOCK TABLE
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1(a INT);
+
+LOCK TABLE t1 READ;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+FLUSH TABLES;
+
+LOCK TABLE t1 WRITE;
+FLUSH TABLES;
+
+--echo #
+--echo # If you allow the next combination, you reintroduce bug Bug#45066
+--echo #
+LOCK TABLE t1 READ;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+FLUSH TABLES WITH READ LOCK;
+
+LOCK TABLE t1 WRITE;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+FLUSH TABLES WITH READ LOCK;
+
+UNLOCK TABLES;
+DROP TABLE t1;
+
+
+--echo #
+--echo # Simplified test for bug #48538 "Assertion in thr_lock() on LOAD DATA
+--echo # CONCURRENT INFILE".
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (f1 INT, f2 INT) ENGINE = MEMORY;
+CREATE TRIGGER t1_ai AFTER INSERT ON t1 FOR EACH ROW
+ UPDATE LOW_PRIORITY t1 SET f2 = 7;
+
+--echo # Statement below should fail with ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+--echo # error instead of failing on assertion in table-level locking subsystem.
+--error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+INSERT INTO t1(f1) VALUES(0);
+
+DROP TABLE t1;
+
+
+--echo #
+--echo # Bug#43685 Lock table affects other non-related tables
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+--enable_warnings
+
+connect (con2, localhost, root);
+CREATE TABLE t1 (id INT);
+CREATE TABLE t2 (id INT);
+
+--echo # Connection default
+connection default;
+LOCK TABLE t1 WRITE;
+ANALYZE TABLE t1;
+
+--echo # Connection con2
+connection con2;
+LOCK TABLE t2 WRITE;
+--echo # This used to hang until the first connection
+--echo # unlocked t1.
+FLUSH TABLE t2;
+
+UNLOCK TABLES;
+
+--echo # Connection default
+connection default;
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+disconnect con2;
+
+
+--echo #
+--echo # End of 6.0 tests.
+--echo #
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/lock_multi.test b/mysql-test/t/lock_multi.test
index 5670276ee2e..6983947d1c4 100644
--- a/mysql-test/t/lock_multi.test
+++ b/mysql-test/t/lock_multi.test
@@ -8,31 +8,44 @@ drop table if exists t1,t2;
# Test to see if select will get the lock ahead of low priority update
connect (locker,localhost,root,,);
+connect (locker2,localhost,root,,);
connect (reader,localhost,root,,);
connect (writer,localhost,root,,);
connection locker;
create table t1(n int);
insert into t1 values (1);
-lock tables t1 write;
+connection locker2;
+select get_lock("mysqltest_lock", 100);
+connection locker;
+send
+update t1 set n = 2 and get_lock('mysqltest_lock', 100);
connection writer;
+# Wait till above update gets blocked on a user lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "User lock" and info = "update t1 set n = 2 and get_lock('mysqltest_lock', 100)";
+--source include/wait_condition.inc
send
update low_priority t1 set n = 4;
connection reader;
# Sleep a bit till the update of connection writer is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "update low_priority t1 set n = 4";
+ where state = "Table lock" and info = "update low_priority t1 set n = 4";
--source include/wait_condition.inc
send
select n from t1;
-connection locker;
+connection locker2;
# Sleep a bit till the select of connection reader is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "select n from t1";
+ where state = "Table lock" and info = "select n from t1";
--source include/wait_condition.inc
-unlock tables;
+select release_lock("mysqltest_lock");
+connection locker;
+reap;
+select release_lock("mysqltest_lock");
connection writer;
reap;
connection reader;
@@ -42,19 +55,31 @@ drop table t1;
connection locker;
create table t1(n int);
insert into t1 values (1);
-lock tables t1 read;
+connection locker2;
+select get_lock("mysqltest_lock", 100);
+connection locker;
+send
+select n from t1 where get_lock('mysqltest_lock', 100);
connection writer;
+# Wait till above select gets blocked on a user lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "User lock" and info = "select n from t1 where get_lock('mysqltest_lock', 100)";
+--source include/wait_condition.inc
send
update low_priority t1 set n = 4;
connection reader;
# Sleep a bit till the update of connection writer is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "update low_priority t1 set n = 4";
+ where state = "Table lock" and info = "update low_priority t1 set n = 4";
--source include/wait_condition.inc
select n from t1;
+connection locker2;
+select release_lock("mysqltest_lock");
connection locker;
-unlock tables;
+reap;
+select release_lock("mysqltest_lock");
connection writer;
reap;
drop table t1;
@@ -95,9 +120,10 @@ insert t1 select * from t2;
connection locker;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "insert t1 select * from t2";
+ where state = "Waiting for table" and info = "insert t1 select * from t2";
--source include/wait_condition.inc
drop table t2;
+unlock tables;
connection reader;
--error ER_NO_SUCH_TABLE
reap;
@@ -119,9 +145,10 @@ connection locker;
# Sleep a bit till the insert of connection reader is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "insert t1 select * from t2";
+ where state = "Waiting for table" and info = "insert t1 select * from t2";
--source include/wait_condition.inc
drop table t2;
+unlock tables;
connection reader;
--error ER_NO_SUCH_TABLE
reap;
@@ -163,8 +190,8 @@ SELECT user.Select_priv FROM user, db WHERE user.user = db.user LIMIT 1;
connection locker;
# Sleep a bit till the select of connection reader is in work and hangs
let $wait_condition=
- select count(*) = 1 from information_schema.processlist
- where state = "Waiting for table" and info =
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Waiting for table" AND info =
"SELECT user.Select_priv FROM user, db WHERE user.user = db.user LIMIT 1";
--source include/wait_condition.inc
# Make test case independent from earlier grants.
@@ -196,9 +223,10 @@ connection writer;
# Sleep a bit till the flush of connection locker is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables" and info = "FLUSH TABLES WITH READ LOCK";
+ where state = "Waiting for table" and info = "FLUSH TABLES WITH READ LOCK";
--source include/wait_condition.inc
# This must not block.
+--error ER_TABLE_NOT_LOCKED
CREATE TABLE t2 (c1 int);
UNLOCK TABLES;
#
@@ -208,7 +236,7 @@ reap;
UNLOCK TABLES;
#
connection default;
-DROP TABLE t1, t2;
+DROP TABLE t1;
#
# Test if CREATE TABLE SELECT with LOCK TABLE deadlocks.
#
@@ -226,7 +254,7 @@ connection writer;
# Sleep a bit till the flush of connection locker is in work and hangs
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables" and info = "FLUSH TABLES WITH READ LOCK";
+ where state = "Waiting for table" and info = "FLUSH TABLES WITH READ LOCK";
--source include/wait_condition.inc
--error ER_TABLE_NOT_LOCKED
CREATE TABLE t2 AS SELECT * FROM t1;
@@ -298,7 +326,7 @@ connection reader;
# Wait till connection writer is blocked
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "alter table t1 auto_increment=0";
+ where state = "Waiting for table" and info = "alter table t1 auto_increment=0";
--source include/wait_condition.inc
send
alter table t1 auto_increment=0;
@@ -306,7 +334,7 @@ connection locker;
# Wait till connection reader is blocked
let $wait_condition=
select count(*) = 2 from information_schema.processlist
- where state = "Locked" and info = "alter table t1 auto_increment=0";
+ where state = "Waiting for table" and info = "alter table t1 auto_increment=0";
--source include/wait_condition.inc
unlock tables;
connection writer;
@@ -337,10 +365,10 @@ connection con2;
send flush tables with read lock;
connection con5;
--echo # con5
-let $show_statement= SHOW PROCESSLIST;
-let $field= State;
-let $condition= = 'Flushing tables';
---source include/wait_show_condition.inc
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "flush tables with read lock";
+--source include/wait_condition.inc
--echo # global read lock is taken
connection con3;
--echo # con3
@@ -461,16 +489,16 @@ update t1 set i= 10;
connection reader;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "update t1 set i= 10";
+ where state = "Table lock" and info = "update t1 set i= 10";
--source include/wait_condition.inc
send
select * from t1;
connection default;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "select * from t1";
+ where state = "Table lock" and info = "select * from t1";
--source include/wait_condition.inc
-let $ID= `select id from information_schema.processlist where state = "Locked" and info = "update t1 set i= 10"`;
+let $ID= `select id from information_schema.processlist where state = "Table lock" and info = "update t1 set i= 10"`;
--replace_result $ID ID
eval kill query $ID;
connection reader;
@@ -501,6 +529,7 @@ drop table t1;
# Disconnect sessions used in many subtests above
disconnect locker;
+disconnect locker2;
disconnect reader;
disconnect writer;
@@ -528,7 +557,7 @@ connection default;
--echo connection: default
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
alter table t1 add column j int;
connect (insert,localhost,root,,test,,);
@@ -536,7 +565,7 @@ connection insert;
--echo connection: insert
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
--send insert into t1 values (1,2);
--echo connection: default
@@ -586,18 +615,14 @@ connection default;
--echo connection: default
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
flush tables;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
unlock tables;
-let $wait_condition=
- select count(*) = 0 from information_schema.processlist
- where state = "Flushing tables";
---source include/wait_condition.inc
connection flush;
--reap
connection default;
@@ -617,11 +642,11 @@ lock tables t1 read;
let $tlwa= `show status like 'Table_locks_waited'`;
connect (waiter,localhost,root,,);
connection waiter;
---send insert into t1 values(1);
+send insert into t1 values(1);
connection default;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and info = "insert into t1 values(1)";
+ where state = "Table lock" and info = "insert into t1 values(1)";
--source include/wait_condition.inc
let $tlwb= `show status like 'Table_locks_waited'`;
unlock tables;
@@ -658,21 +683,440 @@ connection default;
--echo connection: default
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
flush tables;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
drop table t1;
-let $wait_condition=
- select count(*) = 0 from information_schema.processlist
- where state = "Flushing tables";
---source include/wait_condition.inc
connection flush;
--reap
connection default;
disconnect flush;
+
+
+--echo #
+--echo # Test for bug #46272 "MySQL 5.4.4, new MDL: unnecessary deadlock".
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (c1 int primary key, c2 int, c3 int);
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+begin;
+update t1 set c3=c3+1 where c2=3;
+
+--echo #
+--echo # Switching to connection 'con46272'.
+connect (con46272,localhost,root,,test,,);
+connection con46272;
+--echo # The below ALTER TABLE statement should wait till transaction
+--echo # in connection 'default' is complete and then succeed.
+--echo # It should not deadlock or fail with ER_LOCK_DEADLOCK error.
+--echo # Sending:
+--send alter table t1 add column c4 int;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until the above ALTER TABLE gets blocked because this
+--echo # connection holds SW metadata lock on table to be altered.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c4 int";
+--source include/wait_condition.inc
+
+--echo # The below statement should succeed. It should not
+--echo # deadlock or end with ER_LOCK_DEADLOCK error.
+update t1 set c3=c3+1 where c2=4;
+
+--echo # Unblock ALTER TABLE by committing transaction.
+commit;
+
+--echo #
+--echo # Switching to connection 'con46272'.
+connection con46272;
+--echo # Reaping ALTER TABLE.
+--reap
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+disconnect con46272;
+drop table t1;
+
+
+--echo #
+--echo # Bug#47249 assert in MDL_global_lock::is_lock_type_compatible
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+--enable_warnings
+
+--echo #
+--echo # Test 1: LOCK TABLES v1 WRITE, t1 READ;
+--echo #
+--echo # Thanks to the fact that we no longer allow DDL on tables
+--echo # which are locked for write implicitly, the exact scenario
+--echo # in which assert was failing is no longer repeatable.
+
+CREATE TABLE t1 ( f1 integer );
+CREATE VIEW v1 AS SELECT f1 FROM t1 ;
+
+LOCK TABLES v1 WRITE, t1 READ;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+FLUSH TABLE t1;
+UNLOCK TABLES;
+
+# Cleanup
+DROP TABLE t1;
+DROP VIEW v1;
+
+--echo #
+--echo # Test 2: LOCK TABLES t1 WRITE, v1 READ;
+--echo #
+
+CREATE TABLE t1 ( f1 integer );
+CREATE VIEW v1 AS SELECT f1 FROM t1 ;
+
+--echo # Connection 2
+connect (con2,localhost,root);
+LOCK TABLES t1 WRITE, v1 READ;
+FLUSH TABLE t1;
+disconnect con2;
+--source include/wait_until_disconnected.inc
+
+--echo # Connection 1
+connection default;
+LOCK TABLES t1 WRITE;
+FLUSH TABLE t1; # Assertion happened here
+
+# Cleanup
+DROP TABLE t1;
+DROP VIEW v1;
+
+
+--echo #
+--echo # Test for bug #50913 "Deadlock between open_and_lock_tables_derived
+--echo # and MDL". Also see additional coverage in mdl_sync.test.
+--echo #
+--disable_warnings
+drop table if exists t1;
+drop view if exists v1;
+--enable_warnings
+connect (con50913,localhost,root);
+connection default;
+create table t1 (i int);
+create view v1 as select i from t1;
+begin;
+select * from t1;
+
+--echo # Switching to connection 'con50913'.
+connection con50913;
+--echo # Sending:
+--send alter table t1 add column j int
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column j int";
+--source include/wait_condition.inc
+--echo # The below statement should try to acquire SW lock on 't1'
+--echo # and therefore should get ER_LOCK_DEADLOCK error. Before
+--echo # bug fix it acquired SR lock and hung on thr_lock.c lock.
+--error ER_LOCK_DEADLOCK
+delete a from t1 as a where i = 1;
+--echo # Unblock ALTER TABLE.
+commit;
+
+--echo # Switching to connection 'con50913'.
+connection con50913;
+--echo # Reaping ALTER TABLE;
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+begin;
+select * from v1;
+
+--echo # Switching to connection 'con50913'.
+connection con50913;
+--echo # Sending:
+--send alter table t1 drop column j
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 drop column j";
+--source include/wait_condition.inc
+--echo # The below statement should try to acquire SW lock on 't1'
+--echo # and therefore should get ER_LOCK_DEADLOCK error. Before
+--echo # bug fix it acquired SR lock and hung on thr_lock.c lock.
+--error ER_LOCK_DEADLOCK
+insert into v1 values (1);
+--echo # Unblock ALTER TABLE.
+commit;
+
+--echo # Switching to connection 'con50913'.
+connection con50913;
+--echo # Reaping ALTER TABLE;
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+disconnect con50913;
+drop view v1;
+drop table t1;
+
+
+--echo #
+--echo # Bug#45225 Locking: hang if drop table with no timeout
+--echo #
+--echo # These tests also provide function coverage for the
+--echo # lock_wait_timeout server variable.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (id int);
+
+connect(con2, localhost, root,,);
+SET SESSION lock_wait_timeout= 1;
+
+--echo #
+--echo # Test 1: acquire exclusive lock
+--echo #
+
+--echo # Connection default
+connection default;
+START TRANSACTION;
+INSERT INTO t1 VALUES (1);
+
+--echo # Connection 2
+connection con2;
+--error ER_LOCK_WAIT_TIMEOUT
+DROP TABLE t1;
+
+--echo # Connection default
+connection default;
+COMMIT;
+
+--echo #
+--echo # Test 2: upgrade shared lock
+--echo #
+
+--echo # Connection default
+connection default;
+START TRANSACTION;
+SELECT * FROM t1;
+
+--echo # Connection 2
+connection con2;
+--error ER_LOCK_WAIT_TIMEOUT
+ALTER TABLE t1 RENAME TO t2;
+
+--echo # Connection default
+connection default;
+COMMIT;
+
+--echo #
+--echo # Test 3: acquire shared lock
+--echo #
+
+--echo # Connection default
+connection default;
+LOCK TABLE t1 WRITE;
+
+--echo # Connection 2
+connection con2;
+--error ER_LOCK_WAIT_TIMEOUT
+INSERT INTO t1(id) VALUES (2);
+
+--echo # Connection default
+connection default;
+UNLOCK TABLES;
+
+--echo #
+--echo # Test 4: table level locks
+--echo #
+
+--echo # Connection default
+connection default;
+LOCK TABLE t1 READ;
+
+--echo # Connection 2
+connection con2;
+--error ER_LOCK_WAIT_TIMEOUT
+INSERT INTO t1(id) VALUES(4);
+
+--echo # Connection default
+connection default;
+UNLOCK TABLES;
+
+--echo #
+--echo # Test 5: Waiting on Table Definition Cache (TDC)
+--echo #
+
+connect(con3, localhost, root);
+
+--echo # Connection default
+connection default;
+LOCK TABLE t1 READ;
+
+--echo # Connection con3
+connection con3;
+--echo # Sending:
+--send FLUSH TABLES
+
+--echo # Connection con2
+connection con2;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Flushing tables" AND info = "FLUSH TABLES";
+--source include/wait_condition.inc
+--error ER_LOCK_WAIT_TIMEOUT
+SELECT * FROM t1;
+
+--echo # Connection default
+connection default;
+UNLOCK TABLES;
+
+--echo # Connection con3
+connection con3;
+--echo # Reaping: FLUSH TABLES
+--reap
+
+--echo #
+--echo # Test 6: Timeouts in I_S queries
+--echo #
+
+--echo # Connection default
+connection default;
+CREATE TABLE t2 (id INT);
+LOCK TABLE t2 WRITE;
+
+--echo # Connection con3
+connection con3;
+--echo # Sending:
+--send DROP TABLE t1, t2
+
+--echo # Connection con2
+connection con2;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Waiting for table" AND info = "DROP TABLE t1, t2";
+--source include/wait_condition.inc
+# Note: This query causes two timeouts.
+# 1: try_acquire_high_prio_shared_mdl_lock on t1
+# 2: recover_from_failed_open on t1
+SELECT table_name, table_comment FROM information_schema.tables
+ WHERE table_schema= 'test' AND table_name= 't1';
+
+--echo # Connection default
+connection default;
+UNLOCK TABLES;
+
+--echo # Connection con3
+connection con3;
+--echo # Reaping: DROP TABLE t1, t2
+--reap
+
+--echo # Connection default
+connection default;
+--echo # Cleanup
+disconnect con2;
+disconnect con3;
+
+
+--echo #
+--echo # Test for bug #51134 "Crash in MDL_lock::destroy on a concurrent
+--echo # DDL workload".
+--echo #
+--disable_warnings
+drop tables if exists t1, t2, t3;
+--enable_warnings
+connect (con1, localhost, root, , );
+connect (con2, localhost, root, , );
+connection default;
+create table t3 (i int);
+
+--echo # Switching to connection 'con1'
+connection con1;
+--echo # Lock 't3' so upcoming RENAME is blocked.
+lock table t3 read;
+
+--echo # Switching to connection 'con2'
+connection con2;
+--echo # Remember ID for this connection.
+let $ID= `select connection_id()`;
+--echo # Start statement which will try to acquire two instances
+--echo # of X metadata lock on the same object.
+--echo # Sending:
+--send rename tables t1 to t2, t2 to t3;
+
+--echo # Switching to connection 'default'
+connection default;
+--echo # Wait until RENAME TABLE is blocked on table 't3'.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename tables t1 to t2, t2 to t3";
+--source include/wait_condition.inc
+--echo # Kill RENAME TABLE.
+--replace_result $ID ID
+eval kill query $ID;
+
+--echo # Switching to connection 'con2'
+connection con2;
+--echo # RENAME TABLE should be aborted but should not crash.
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--echo # Switching to connection 'con1'
+connection con1;
+unlock tables;
+
+--echo # Switching to connection 'default'
+connection default;
+disconnect con1;
+disconnect con2;
+drop table t3;
+
+
+--echo #
+--echo # Test for the bug where upgradable metadata locks was acquired
+--echo # even if the table to altered was temporary.
+--echo # Bug found while working on the related bug #51240.
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 (id INT);
+LOCK TABLE t1 WRITE;
+
+--echo # Connection con1
+connect (con1, localhost, root);
+CREATE TEMPORARY TABLE t1 (id INT);
+# This alter should not block and timeout.
+ALTER TABLE t1 ADD COLUMN j INT;
+
+--echo # Connection default
+connection default;
+disconnect con1;
+UNLOCK TABLES;
+DROP TABLE t1;
+
+
# Wait till all disconnects are completed
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/lock_sync.test b/mysql-test/t/lock_sync.test
index 73289685114..97388e9c176 100644
--- a/mysql-test/t/lock_sync.test
+++ b/mysql-test/t/lock_sync.test
@@ -4,6 +4,10 @@
--source include/have_debug_sync.inc
# We need InnoDB to be able use TL_WRITE_ALLOW_WRITE type of locks in our tests.
--source include/have_innodb.inc
+# The test for Bug#50821 requires binary logging turned on.
+# With binary logging on, sub-queries in DML statements acquire
+# TL_READ_NO_INSERT which was needed to reproduce this deadlock bug.
+--source include/have_log_bin.inc
# Until bug#41971 'Thread state on embedded server is always "Writing to net"'
# is fixed this test can't be run on embedded version of server.
--source include/not_embedded.inc
@@ -19,8 +23,16 @@
--echo # (TL_WRITE_ALLOW_WRITE) on several instances of the same table and
--echo # statements which tried to acquire stronger write lock (TL_WRITE,
--echo # TL_WRITE_ALLOW_READ) on this table might have led to deadlock.
+#
+# Suppress warnings for INSERTs that use get_lock().
+#
+disable_query_log;
+call mtr.add_suppression("Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT");
+enable_query_log;
+
--disable_warnings
drop table if exists t1;
+drop view if exists v1;
--enable_warnings
--echo # Create auxiliary connections used through the test.
connect (con_bug45143_1,localhost,root,,test,,);
@@ -35,6 +47,9 @@ set @old_general_log = @@global.general_log;
set @@global.general_log= OFF;
create table t1 (i int) engine=InnoDB;
+--echo # We have to use view in order to make LOCK TABLES avoid
+--echo # acquiring SNRW metadata lock on table.
+create view v1 as select * from t1;
insert into t1 values (1);
--echo # Prepare user lock which will be used for resuming execution of
--echo # the first statement after it acquires TL_WRITE_ALLOW_WRITE lock.
@@ -65,14 +80,14 @@ connection con_bug45143_3;
--echo # acquiring lock for the the first instance of 't1'.
set debug_sync= 'now WAIT_FOR parked';
--echo # Send LOCK TABLE statement which will try to get TL_WRITE lock on 't1':
---send lock table t1 write;
+--send lock table v1 write;
--echo # Switch to connection 'default'.
connection default;
--echo # Wait until this LOCK TABLES statement starts waiting for table lock.
let $wait_condition= select count(*)= 1 from information_schema.processlist
- where state= 'Locked' and
- info='lock table t1 write';
+ where state= 'Table lock' and
+ info='lock table v1 write';
--source include/wait_condition.inc
--echo # Allow SELECT ... FOR UPDATE to resume.
--echo # Since it already has TL_WRITE_ALLOW_WRITE lock on the first instance
@@ -94,7 +109,13 @@ select release_lock("lock_bug45143_wait");
--echo # Switch to connection 'con_bug45143_1'.
connection con_bug45143_1;
--echo # Reap INSERT statement.
+--echo # In Statement and Mixed replication mode we get here "Unsafe
+--echo # for binlog" warnings. In row mode there are no warnings.
+--echo # Hide the discrepancy.
+--disable_warnings
--reap
+--enable_warnings
+
--echo # Switch to connection 'con_bug45143_3'.
connection con_bug45143_3;
@@ -110,9 +131,53 @@ disconnect con_bug45143_2;
disconnect con_bug45143_3;
set debug_sync= 'RESET';
set @@global.general_log= @old_general_log;
+drop view v1;
drop table t1;
+--echo #
+--echo # Bug#50821 Deadlock between LOCK TABLES and ALTER TABLE
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+--enable_warnings
+
+CREATE TABLE t1(id INT);
+CREATE TABLE t2(id INT);
+
+--echo # Connection con2
+connect (con2, localhost, root);
+START TRANSACTION;
+SELECT * FROM t1;
+
+--echo # Connection default
+connection default;
+--echo # Sending:
+--send ALTER TABLE t1 ADD COLUMN j INT
+
+--echo # Connection con2
+connection con2;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Waiting for table"
+ AND info = "ALTER TABLE t1 ADD COLUMN j INT";
+--source include/wait_condition.inc
+
+--echo # This used to cause a deadlock.
+INSERT INTO t2 SELECT * FROM t1;
+
+COMMIT;
+
+--echo # Connection default
+connection default;
+--echo # Reaping ALTER TABLE t1 ADD COLUMN j INT
+--reap
+
+DROP TABLE t1, t2;
+disconnect con2;
+
+
# Check that all connections opened by test cases in this file are really
# gone so execution of other tests won't be affected by their presence.
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/lowercase_table2.test b/mysql-test/t/lowercase_table2.test
index 92add60616a..b8c7f532cde 100644
--- a/mysql-test/t/lowercase_table2.test
+++ b/mysql-test/t/lowercase_table2.test
@@ -201,10 +201,9 @@ create table t_bug44738_UPPERCASE (i int);
drop table t_bug44738_UPPERCASE;
--echo # Finally, let us check that another issue which was exposed by
---echo # the original test case is solved. I.e. that fuse in CREATE TABLE
---echo # which ensures that table is not created if there is an entry for
---echo # it in TDC even though it was removed from disk uses normalized
---echo # version of the table name.
+--echo # the original test case is solved. I.e. that the table is not
+--echo # created if there is an entry for it in TDC even though it was
+--echo # removed from disk.
create table t_bug44738_UPPERCASE (i int) engine = myisam;
--echo # Load table definition in TDC.
select table_schema, table_name, table_comment from information_schema.tables
@@ -214,9 +213,10 @@ let $MYSQLD_DATADIR= `select @@datadir`;
--remove_file $MYSQLD_DATADIR/test/t_bug44738_UPPERCASE.frm
--remove_file $MYSQLD_DATADIR/test/t_bug44738_UPPERCASE.MYD
--remove_file $MYSQLD_DATADIR/test/t_bug44738_UPPERCASE.MYI
---echo # After manual removal of table still there should be an entry for table
---echo # in TDC so attempt to create table with the same name should fail.
---error ER_TABLE_EXISTS_ERROR
+--echo # Check that still there is an entry for table in TDC.
+show open tables like 't_bug44738_%';
+--echo # So attempt to create table with the same name should fail.
+--error ER_FILE_NOT_FOUND
create table t_bug44738_UPPERCASE (i int);
--echo # And should succeed after FLUSH TABLES.
flush tables;
diff --git a/mysql-test/t/mdl_sync.test b/mysql-test/t/mdl_sync.test
new file mode 100644
index 00000000000..b9a9241ce32
--- /dev/null
+++ b/mysql-test/t/mdl_sync.test
@@ -0,0 +1,3468 @@
+#
+# We need the Debug Sync Facility.
+#
+--source include/have_debug_sync.inc
+
+# We need InnoDB tables for some of the tests.
+--source include/have_innodb.inc
+
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
+
+# Clean up resources used in this test case.
+--disable_warnings
+SET DEBUG_SYNC= 'RESET';
+--enable_warnings
+
+#
+# Test the case of when a exclusive lock request waits for a
+# shared lock being upgraded to a exclusive lock.
+#
+
+connect (con1,localhost,root,,test,,);
+connect (con2,localhost,root,,test,,);
+connect (con3,localhost,root,,test,,);
+
+connection default;
+
+--disable_warnings
+drop table if exists t1,t2,t3;
+--enable_warnings
+
+create table t1 (i int);
+create table t2 (i int);
+
+--echo connection: default
+lock tables t2 read;
+
+connection con1;
+--echo connection: con1
+set debug_sync='mdl_upgrade_shared_lock_to_exclusive SIGNAL parked WAIT_FOR go';
+--send alter table t1 rename t3
+
+connection default;
+--echo connection: default
+set debug_sync= 'now WAIT_FOR parked';
+
+connection con2;
+--echo connection: con2
+set debug_sync='mdl_acquire_lock_wait SIGNAL go';
+--send drop table t1,t2
+
+connection con1;
+--echo connection: con1
+--reap
+
+connection default;
+--echo connection: default
+unlock tables;
+
+connection con2;
+--echo connection: con2
+--error ER_BAD_TABLE_ERROR
+--reap
+
+connection default;
+drop table t3;
+
+disconnect con1;
+disconnect con2;
+disconnect con3;
+
+# Clean up resources used in this test case.
+--disable_warnings
+SET DEBUG_SYNC= 'RESET';
+--enable_warnings
+
+
+--echo #
+--echo # Basic test coverage for type-of-operation aware metadata locks.
+--echo #
+--disable_warnings
+drop table if exists t1, t2, t3;
+--enable_warnings
+connect(mdl_con1,localhost,root,,);
+connect(mdl_con2,localhost,root,,);
+connect(mdl_con3,localhost,root,,);
+connection default;
+set debug_sync= 'RESET';
+create table t1 (c1 int);
+
+--echo #
+--echo # A) First let us check compatibility rules between differend kinds of
+--echo # type-of-operation aware metadata locks.
+--echo # Of course, these rules are already covered by the tests scattered
+--echo # across the test suite. But it still makes sense to have one place
+--echo # which covers all of them.
+--echo #
+
+--echo # 1) Acquire S (simple shared) lock on the table (by using HANDLER):
+--echo #
+handler t1 open;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+insert into t1 values (1), (1);
+--echo # Check that SNW lock is compatible with it. To do this use ALTER TABLE
+--echo # which will fail after opening the table and thus obtaining SNW metadata
+--echo # lock.
+--error ER_DUP_ENTRY
+alter table t1 add primary key (c1);
+--echo # Check that SNRW lock is compatible with S lock.
+lock table t1 write;
+insert into t1 values (1);
+unlock tables;
+--echo # Check that X lock is incompatible with S lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME is blocked because of S lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock RENAME TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE.
+--reap
+--echo # Restore the original state of the things.
+rename table t2 to t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+handler t1 open;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that upgrade from SNW to X is blocked by presence of S lock.
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER TABLE is blocked because of S lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock ALTER TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+--echo # Restore the original state of the things.
+alter table t1 drop column c2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+handler t1 open;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that upgrade from SNRW to X is blocked by presence of S lock.
+lock table t1 write;
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above upgrade of SNRW to X in ALTER TABLE is blocked
+--echo # because of S lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock ALTER TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+--echo # Restore the original state of the things.
+alter table t1 drop column c2;
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # 2) Acquire SH (shared high-priority) lock on the table.
+--echo # We have to involve DEBUG_SYNC facility for this as usually
+--echo # such kind of locks are short-lived.
+--echo #
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+insert into t1 values (1);
+--echo # Check that SNW lock is compatible with it. To do this use ALTER TABLE
+--echo # which will fail after opening the table and thus obtaining SNW metadata
+--echo # lock.
+--error ER_DUP_ENTRY
+alter table t1 add primary key (c1);
+--echo # Check that SNRW lock is compatible with SH lock.
+lock table t1 write;
+delete from t1 limit 1;
+unlock tables;
+--echo # Check that X lock is incompatible with SH lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME is blocked because of SH lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SELECT ... FROM I_S.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE.
+--reap
+--echo # Restore the original state of the things.
+rename table t2 to t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that upgrade from SNW to X is blocked by presence of SH lock.
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER TABLE is blocked because of SH lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SELECT ... FROM I_S.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+--echo # Restore the original state of the things.
+alter table t1 drop column c2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--send select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t1';
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that upgrade from SNRW to X is blocked by presence of S lock.
+lock table t1 write;
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above upgrade of SNRW to X in ALTER TABLE is blocked
+--echo # because of S lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SELECT ... FROM I_S.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+--echo # Restore the original state of the things.
+alter table t1 drop column c2;
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo #
+--echo # 3) Acquire SR lock on the table.
+--echo #
+--echo #
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+insert into t1 values (1);
+--echo # Check that SNW lock is compatible with it. To do this use ALTER TABLE
+--echo # which will fail after opening the table and thus obtaining SNW metadata
+--echo # lock.
+--error ER_DUP_ENTRY
+alter table t1 add primary key (c1);
+--echo # Check that SNRW lock is not compatible with SR lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above LOCK TABLES is blocked because of SR lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Unblock LOCK TABLES.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLES.
+--reap
+delete from t1 limit 1;
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that X lock is incompatible with SR lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME is blocked because of SR lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE.
+--reap
+--echo # Restore the original state of the things.
+rename table t2 to t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that upgrade from SNW to X is blocked by presence of SR lock.
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER TABLE is blocked because of SR lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+--echo # Restore the original state of the things.
+alter table t1 drop column c2;
+--echo #
+--echo # There is no need to check that upgrade from SNRW to X is blocked
+--echo # by presence of SR lock because SNRW is incompatible with SR anyway.
+--echo #
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo #
+--echo # 4) Acquire SW lock on the table.
+--echo #
+--echo #
+begin;
+insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that S, SH, SR and SW locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+insert into t1 values (1);
+--echo # Check that SNW lock is not compatible with SW lock.
+--echo # Again we use ALTER TABLE which fails after opening
+--echo # the table to avoid upgrade of SNW -> X.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above ALTER TABLE is blocked because of SW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+begin;
+insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that SNRW lock is not compatible with SW lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above LOCK TABLES is blocked because of SW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Unblock LOCK TABLES.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLES.
+--reap
+delete from t1 limit 2;
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+begin;
+insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that X lock is incompatible with SW lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME is blocked because of SW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE.
+--reap
+--echo # Restore the original state of the things.
+rename table t2 to t1;
+--echo #
+--echo # There is no need to check that upgrade from SNW/SNRW to X is
+--echo # blocked by presence of SW lock because SNW/SNRW is incompatible
+--echo # with SW anyway.
+--echo #
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo #
+--echo # 5) Acquire SNW lock on the table. We have to use DEBUG_SYNC for
+--echo # this, to prevent SNW from being immediately upgraded to X.
+--echo #
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that S, SH and SR locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+--echo # Check that SW lock is incompatible with SNW lock.
+--echo # Sending:
+--send delete from t1 limit 2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above DELETE is blocked because of SNW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "delete from t1 limit 2";
+--source include/wait_condition.inc
+--echo # Unblock ALTER and thus DELETE.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping DELETE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that SNW lock is incompatible with SNW lock.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER is blocked because of SNW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTERs.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping first ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping another ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that SNRW lock is incompatible with SNW lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above LOCK TABLES is blocked because of SNW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Unblock ALTER and thus LOCK TABLES.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLES
+--reap
+insert into t1 values (1);
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # Check that X lock is incompatible with SNW lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME is blocked because of SNW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Unblock ALTER and thus RENAME TABLE.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE
+--reap
+--echo # Revert back to original state of things.
+rename table t2 to t1;
+--echo #
+--echo # There is no need to check that upgrade from SNW/SNRW to X is
+--echo # blocked by presence of another SNW lock because SNW/SNRW is
+--echo # incompatible with SNW anyway.
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo #
+--echo # 6) Acquire SNRW lock on the table.
+--echo #
+--echo #
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that S and SH locks are compatible with it.
+handler t1 open;
+handler t1 close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+--echo # Check that SR lock is incompatible with SNRW lock.
+--echo # Sending:
+--send select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above SELECT is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "select count(*) from t1";
+--source include/wait_condition.inc
+--echo # Unblock SELECT.
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping SELECT.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that SW lock is incompatible with SNRW lock.
+--echo # Sending:
+--send delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above DELETE is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "delete from t1 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock DELETE.
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping DELETE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that SNW lock is incompatible with SNRW lock.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above ALTER is blocked because of UNWR lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER.
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that SNRW lock is incompatible with SNRW lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above LOCK TABLES is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Unblock waiting LOCK TABLES.
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLES
+--reap
+insert into t1 values (1);
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that X lock is incompatible with SNRW lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Check that the above RENAME is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME TABLE
+--reap
+--echo # Revert back to original state of things.
+rename table t2 to t1;
+--echo #
+--echo # There is no need to check that upgrade from SNW/SNRW to X is
+--echo # blocked by presence of another SNRW lock because SNW/SNRW is
+--echo # incompatible with SNRW anyway.
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo #
+--echo # 7) Now do the same round of tests for X lock. We use additional
+--echo # table to get long-lived lock of this type.
+--echo #
+create table t2 (c1 int);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Take a lock on t2, so RENAME TABLE t1 TO t2 will get blocked
+--echo # after acquiring X lock on t1.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that S lock in incompatible with X lock.
+--echo # Sending:
+--send handler t1 open;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above HANDLER statement is blocked because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "handler t1 open";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping HANDLER.
+--reap
+handler t1 close;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SH lock in incompatible with X lock.
+--echo # Sending:
+--send select column_name from information_schema.columns where table_schema='test' and table_name='t1';
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT ... FROM I_S ... statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info like "select column_name from information_schema.columns%";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping SELECT ... FROM I_S.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SR lock in incompatible with X lock.
+--echo # Sending:
+--send select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t1";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping SELECT.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SW lock in incompatible with X lock.
+--echo # Sending:
+--send delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above DELETE statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "delete from t1 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping DELETE.
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SNW lock is incompatible with X lock.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SNRW lock is incompatible with X lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above LOCK TABLE statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Prepare for blocking RENAME TABLE.
+lock tables t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME has acquired X lock on t1 and is waiting for t2.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that X lock is incompatible with X lock.
+--echo # Sending:
+--send rename table t1 to t3;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above RENAME statement is blocked
+--echo # because of X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t3";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping RENAME.
+--reap
+rename table t3 to t1;
+
+--echo #
+--echo # B) Now let us test compatibility in cases when both locks
+--echo # are pending. I.e. let us test rules for priorities between
+--echo # different types of metadata locks.
+--echo #
+
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo #
+--echo # 1) Check compatibility for pending SNW lock.
+--echo #
+--echo # Acquire SW lock in order to create pending SNW lock later.
+begin;
+insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending SNW lock.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that ALTER TABLE is waiting with pending SNW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Check that S, SH and SR locks are compatible with pending SNW
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+select count(*) from t1;
+--echo # Check that SW is incompatible with pending SNW
+--echo # Sending:
+--send delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above DELETE is blocked because of pending SNW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "delete from t1 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping ALTER.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping DELETE.
+--reap
+--echo #
+--echo # We can't do similar check for SNW, SNRW and X locks because
+--echo # they will also be blocked by active SW lock.
+--echo #
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo #
+--echo # 2) Check compatibility for pending SNRW lock.
+--echo #
+--echo # Acquire SR lock in order to create pending SNRW lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending SNRW lock.
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that LOCK TABLE is waiting with pending SNRW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Check that S and SH locks are compatible with pending SNRW
+handler t1 open t;
+handler t close;
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+--echo # Check that SR is incompatible with pending SNRW
+--echo # Sending:
+--send select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT is blocked because of pending SNRW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t1";
+--source include/wait_condition.inc
+--echo # Unblock LOCK TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping LOCK TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping SELECT.
+--reap
+--echo # Restore pending SNRW lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that LOCK TABLE is waiting with pending SNRW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Check that SW is incompatible with pending SNRW
+--echo # Sending:
+--send insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above INSERT is blocked because of pending SNRW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "insert into t1 values (1)";
+--source include/wait_condition.inc
+--echo # Unblock LOCK TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping LOCK TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping INSERT.
+--reap
+--echo # Restore pending SNRW lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that LOCK TABLE is waiting with pending SNRW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Check that SNW is compatible with pending SNRW
+--echo # So ALTER TABLE statements are not starved by LOCK TABLEs.
+--error ER_DUP_ENTRY
+alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Unblock LOCK TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping LOCK TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # We can't do similar check for SNRW and X locks because
+--echo # they will also be blocked by active SR lock.
+--echo #
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo #
+--echo # 3) Check compatibility for pending X lock.
+--echo #
+--echo # Acquire SR lock in order to create pending X lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending X lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME TABLE is waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SH locks are compatible with pending X
+select column_name from information_schema.columns where
+ table_schema='test' and table_name='t1';
+--echo # Check that S is incompatible with pending X
+--echo # Sending:
+--send handler t1 open;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above HANDLER OPEN is blocked because of pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "handler t1 open";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping HANDLER t1 OPEN.
+--reap
+handler t1 close;
+--echo # Restore pending X lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending X lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME TABLE is waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SR is incompatible with pending X
+--echo # Sending:
+--send select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT is blocked because of pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t1";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping SELECT.
+--reap
+--echo # Restore pending X lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending X lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME TABLE is waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SW is incompatible with pending X
+--echo # Sending:
+--send delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above DELETE is blocked because of pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "delete from t1 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping DELETE.
+--reap
+--echo # Restore pending X lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending X lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME TABLE is waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SNW is incompatible with pending X
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above ALTER TABLE is blocked because of pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo # Restore pending X lock.
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+handler t1 open;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Add pending X lock.
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that RENAME TABLE is waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that SNRW is incompatible with pending X
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'mdl_con3'.
+connection mdl_con3;
+--echo # Check that the above LOCK TABLES is blocked because of pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Unblock RENAME TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reaping LOCK TABLES.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+
+--echo #
+--echo #
+--echo # C) Now let us test how type-of-operation locks are handled in
+--echo # transactional context. Obviously we are mostly interested
+--echo # in conflicting types of locks.
+--echo #
+
+--echo #
+--echo # 1) Let us check how various locks used within transactional
+--echo # context interact with active/pending SNW lock.
+--echo #
+--echo # We start with case when we are acquiring lock on the table
+--echo # which was not used in the transaction before.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create an active SNW lock on t2.
+--echo # We have to use DEBUG_SYNC facility as otherwise SNW lock
+--echo # will be immediately released (or upgraded to X lock).
+insert into t2 values (1), (1);
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t2 add primary key (c1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # SR lock should be acquired without any waiting.
+select count(*) from t2;
+commit;
+--echo # Now let us check that we will wait in case of SW lock.
+begin;
+select count(*) from t1;
+--echo # Sending:
+--send insert into t2 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above INSERT is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE and thus INSERT.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap INSERT.
+--reap
+commit;
+--echo #
+--echo # Now let us see what happens when we are acquiring lock on the table
+--echo # which is already used in transaction.
+--echo #
+--echo # *) First, case when transaction which has SR lock on the table also
+--echo # locked in SNW mode acquires yet another SR lock and then tries
+--echo # to acquire SW lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create an active SNW lock on t1.
+set debug_sync= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync= 'now WAIT_FOR locked';
+--echo # We should still be able to get SR lock without waiting.
+select count(*) from t1;
+--echo # Since the above ALTER TABLE is not upgrading SNW lock to X by waiting
+--echo # for SW lock we won't create deadlock.
+--echo # So the below INSERT should not end-up with ER_LOCK_DEADLOCK error.
+--echo # Sending:
+--send insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above INSERT is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "insert into t1 values (1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE and thus INSERT.
+set debug_sync= 'now SIGNAL finish';
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap INSERT.
+--reap
+commit;
+--echo #
+--echo # **) Now test in which transaction that has SW lock on the table
+--echo # against which there is pending SNW lock acquires SR and SW
+--echo # locks on this table.
+--echo #
+begin;
+insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create pending SNW lock on t1.
+--echo # Sending:
+--send alter table t1 add primary key (c1);
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE starts waiting for SNW lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t1 add primary key (c1)";
+--source include/wait_condition.inc
+--echo # We should still be able to get both SW and SR locks without waiting.
+select count(*) from t1;
+delete from t1 limit 1;
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--error ER_DUP_ENTRY
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # 2) Now similar tests for active SNW lock which is being upgraded
+--echo # to X lock.
+--echo #
+--echo # Again we start with case when we are acquiring lock on the
+--echo # table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Start transaction which will prevent SNW -> X upgrade from
+--echo # completing immediately.
+begin;
+select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create SNW lock pending upgrade to X on t2.
+--echo # Sending:
+--send alter table t2 add column c2 int;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE starts waiting X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t2 add column c2 int";
+--source include/wait_condition.inc
+--echo # Check that attempt to acquire SR lock on t2 causes waiting.
+--echo # Sending:
+--send select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t2";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap SELECT.
+--reap
+commit;
+--echo # Do similar check for SW lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Start transaction which will prevent SNW -> X upgrade from
+--echo # completing immediately.
+begin;
+select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create SNW lock pending upgrade to X on t2.
+--echo # Sending:
+--send alter table t2 drop column c2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE starts waiting X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t2 drop column c2";
+--source include/wait_condition.inc
+--echo # Check that attempt to acquire SW lock on t2 causes waiting.
+--echo # Sending:
+--send insert into t2 values (1);
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above INSERT is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap INSERT.
+--reap
+commit;
+--echo #
+--echo # Test for the case in which we are acquiring lock on the table
+--echo # which is already used in transaction.
+--echo #
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create SNW lock pending upgrade to X.
+--echo # Sending:
+--send alter table t1 add column c2 int;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE starts waiting X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "alter table t1 add column c2 int";
+--source include/wait_condition.inc
+--echo # Check that transaction is still able to acquire SR lock.
+select count(*) from t1;
+--echo # Waiting trying to acquire SW lock will cause deadlock and
+--echo # therefore should cause an error.
+--error ER_LOCK_DEADLOCK
+delete from t1 limit 1;
+--echo # Unblock ALTER TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap ALTER TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # 3) Check how various locks used within transactional context
+--echo # interact with active/pending SNRW lock.
+--echo #
+--echo # Once again we start with case when we are acquiring lock on
+--echo # the table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+lock table t2 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Attempt to acquire SR should be blocked. It should
+--echo # not cause errors as it does not creates deadlock.
+--echo # Sending:
+--send select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that the above SELECT is blocked
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t2";
+--source include/wait_condition.inc
+--echo # Unblock SELECT.
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap SELECT.
+--reap
+commit;
+--echo # Repeat the same test for SW lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+lock table t2 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Again attempt to acquire SW should be blocked and should
+--echo # not cause any errors.
+--echo # Sending:
+--send delete from t2 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Check that the above DELETE is blocked
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "delete from t2 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock DELETE.
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap DELETE.
+--reap
+commit;
+--echo #
+--echo # Now coverage for the case in which we are acquiring lock on
+--echo # the table which is already used in transaction and against
+--echo # which there is a pending SNRW lock request.
+--echo #
+--echo # *) Let us start with case when transaction has only a SR lock.
+--echo #
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until LOCK TABLE is blocked creating pending request for X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Check that another instance of SR lock is granted without waiting.
+select count(*) from t1;
+--echo # Attempt to wait for SW lock will lead to deadlock, thus
+--echo # the below statement should end with ER_LOCK_DEADLOCK error.
+--error ER_LOCK_DEADLOCK
+delete from t1 limit 1;
+--echo # Unblock LOCK TABLES.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap LOCK TABLES.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # **) Now case when transaction has a SW lock.
+--echo #
+begin;
+delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Sending:
+--send lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until LOCK TABLE is blocked creating pending request for X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "lock table t1 write";
+--source include/wait_condition.inc
+--echo # Check that both SR and SW locks are granted without waiting
+--echo # and errors.
+select count(*) from t1;
+insert into t1 values (1, 1);
+--echo # Unblock LOCK TABLES.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap LOCK TABLES.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # 4) Check how various locks used within transactional context
+--echo # interact with active/pending X lock.
+--echo #
+--echo # As usual we start with case when we are acquiring lock on
+--echo # the table which was not used in the transaction before.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Start transaction which will prevent X lock from going away
+--echo # immediately.
+begin;
+select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create pending X lock on t2.
+--echo # Sending:
+--send rename table t2 to t3;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until RENAME TABLE starts waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t2 to t3";
+--source include/wait_condition.inc
+--echo # Check that attempt to acquire SR lock on t2 causes waiting.
+--echo # Sending:
+--send select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above SELECT is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "select count(*) from t2";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap RENAME TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap SELECT.
+--error ER_NO_SUCH_TABLE
+--reap
+commit;
+rename table t3 to t2;
+--echo # The same test for SW lock.
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Start transaction which will prevent X lock from going away
+--echo # immediately.
+begin;
+select count(*) from t2;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Create pending X lock on t2.
+--echo # Sending:
+--send rename table t2 to t3;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until RENAME TABLE starts waiting with pending X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t2 to t3";
+--source include/wait_condition.inc
+--echo # Check that attempt to acquire SW lock on t2 causes waiting.
+--echo # Sending:
+--send delete from t2 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con2'.
+connection mdl_con2;
+--echo # Check that the above DELETE is blocked.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "delete from t2 limit 1";
+--source include/wait_condition.inc
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap RENAME TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap DELETE.
+--error ER_NO_SUCH_TABLE
+--reap
+commit;
+rename table t3 to t2;
+--echo #
+--echo # Coverage for the case in which we are acquiring lock on
+--echo # the table which is already used in transaction and against
+--echo # which there is a pending X lock request.
+--echo #
+--echo # *) The first case is when transaction has only a SR lock.
+--echo #
+begin;
+select count(*) from t1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until RENAME TABLE is blocked creating pending request for X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that another instance of SR lock is granted without waiting.
+select count(*) from t1;
+--echo # Attempt to wait for SW lock will lead to deadlock, thus
+--echo # the below statement should end with ER_LOCK_DEADLOCK error.
+--error ER_LOCK_DEADLOCK
+delete from t1 limit 1;
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # **) The second case is when transaction has a SW lock.
+--echo #
+begin;
+delete from t1 limit 1;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Sending:
+--send rename table t1 to t2;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until RENAME TABLE is blocked creating pending request for X lock.
+let $wait_condition=
+select count(*) = 1 from information_schema.processlist
+where state = "Waiting for table" and info = "rename table t1 to t2";
+--source include/wait_condition.inc
+--echo # Check that both SR and SW locks are granted without waiting
+--echo # and errors.
+select count(*) from t1;
+insert into t1 values (1, 1);
+--echo # Unblock RENAME TABLE.
+commit;
+--echo #
+--echo # Switching to connection 'mdl_con1'.
+connection mdl_con1;
+--echo # Reap RENAME TABLE.
+--error ER_TABLE_EXISTS_ERROR
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+
+--echo # Clean-up.
+disconnect mdl_con1;
+disconnect mdl_con2;
+disconnect mdl_con3;
+set debug_sync= 'RESET';
+drop table t1, t2;
+
+
+--echo #
+--echo # Additional coverage for some scenarios in which not quite
+--echo # correct use of S metadata locks by HANDLER statement might
+--echo # have caused deadlocks.
+--echo #
+--disable_warnings
+drop table if exists t1, t2;
+--enable_warnings
+connect(handler_con1,localhost,root,,);
+connect(handler_con2,localhost,root,,);
+connection default;
+create table t1 (i int);
+create table t2 (j int);
+insert into t1 values (1);
+
+--echo #
+--echo # First, check scenario in which we upgrade SNRW lock to X lock
+--echo # on a table while having HANDLER READ trying to acquire TL_READ
+--echo # on the same table.
+--echo #
+handler t1 open;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+lock table t1 write;
+--echo # Upgrade SNRW to X lock.
+--echo # Sending:
+--send alter table t1 add column j int;
+--echo #
+--echo # Switching to connection 'handler_con2'.
+connection handler_con2;
+--echo # Wait until ALTER is blocked during upgrade.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column j int";
+--source include/wait_condition.inc
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # The below statement should not cause deadlock.
+--send handler t1 read first;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Reap ALTER TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap HANDLER READ.
+--reap
+handler t1 close;
+
+--echo #
+--echo # Now, check scenario in which upgrade of SNRW lock to X lock
+--echo # can be blocked by HANDLER which is open in connection currently
+--echo # waiting to get table-lock owned by connection doing upgrade.
+--echo #
+handler t1 open;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+lock table t1 write, t2 read;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Execute statement which will be blocked on table-level lock
+--echo # owned by connection 'handler_con1'.
+--echo # Sending:
+--send insert into t2 values (1);
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Wait until INSERT is blocked on table-level lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+--echo # The below statement should not cause deadlock.
+alter table t1 drop column j;
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap INSERT.
+--reap
+handler t1 close;
+
+--echo #
+--echo # Then, check the scenario in which upgrade of SNRW lock to X
+--echo # lock is blocked by HANDLER which is open in connection currently
+--echo # waiting to get SW lock on the same table.
+--echo #
+handler t1 open;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+lock table t1 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # The below insert should be blocked because active SNRW lock on 't1'.
+--echo # Sending:
+--send insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Wait until INSERT is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "insert into t1 values (1)";
+--source include/wait_condition.inc
+--echo # The below ALTER TABLE will be blocked because of presence of HANDLER.
+--echo # Sending:
+--send alter table t1 add column j int;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # INSERT should be chosen as victim for resolving deadlock.
+--echo # Reaping INSERT.
+--error ER_LOCK_DEADLOCK
+--reap
+--echo # Close HANDLER to unblock ALTER TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+
+--echo #
+--echo # Finally, test in which upgrade of SNRW lock to X lock is blocked
+--echo # by HANDLER which is open in connection currently waiting to get
+--echo # SR lock on the table on which lock is upgraded.
+--echo #
+handler t1 open;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+lock table t1 write, t2 write;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # The below insert should be blocked because active SNRW lock on 't1'.
+--echo # Sending:
+--send insert into t2 values (1);
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Wait until INSERT is blocked because of SNRW lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "insert into t2 values (1)";
+--source include/wait_condition.inc
+--echo # The below ALTER TABLE will be blocked because of presence of HANDLER.
+--echo # Sending:
+--send alter table t1 drop column j;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # INSERT should be chosen as victim for resolving deadlock.
+--echo # Reaping INSERT.
+--error ER_LOCK_DEADLOCK
+--reap
+--echo # Close HANDLER to unblock ALTER TABLE.
+handler t1 close;
+--echo #
+--echo # Switching to connection 'handler_con1'.
+connection handler_con1;
+--echo # Reaping ALTER TABLE.
+--reap
+unlock tables;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+
+--echo # Clean-up.
+disconnect handler_con1;
+disconnect handler_con2;
+drop tables t1, t2;
+
+
+--echo #
+--echo # Test coverage for basic deadlock detection in metadata
+--echo # locking subsystem.
+--echo #
+--disable_warnings
+drop tables if exists t0, t1, t2, t3, t4, t5;
+--enable_warnings
+
+connect(deadlock_con1,localhost,root,,);
+connect(deadlock_con2,localhost,root,,);
+connect(deadlock_con3,localhost,root,,);
+connection default;
+create table t1 (i int);
+create table t2 (j int);
+create table t3 (k int);
+create table t4 (k int);
+
+--echo #
+--echo # Test for the case in which no deadlock occurs.
+--echo #
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+begin;
+insert into t1 values (1);
+
+--echo #
+--echo # Switching to connection 'deadlock_con2'.
+connection deadlock_con2;
+begin;
+insert into t2 values (1);
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Send:
+--send rename table t2 to t0, t3 to t2, t0 to t3;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Wait until the above RENAME TABLE is blocked because it has to wait
+--echo # for 'deadlock_con2' which holds shared metadata lock on 't2'.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t2 to t0, t3 to t2, t0 to t3";
+--source include/wait_condition.inc
+--echo # The below statement should wait for exclusive metadata lock
+--echo # on 't2' to go away and should not produce ER_LOCK_DEADLOCK
+--echo # as no deadlock is possible in this situation.
+--echo # Send:
+--send select * from t2;
+
+--echo #
+--echo # Switching to connection 'deadlock_con2'.
+connection deadlock_con2;
+--echo # Wait until the above SELECT * FROM t2 is starts waiting
+--echo # for an exclusive metadata lock to go away.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "select * from t2";
+--source include/wait_condition.inc
+--echo #
+--echo # Unblock RENAME TABLE by releasing shared metadata lock on t2.
+commit;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap RENAME TABLE.
+--reap
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Reap SELECT.
+--reap
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo #
+--echo # Let us check that in the process of waiting for conflicting lock
+--echo # on table 't2' to go away transaction in connection 'deadlock_con1'
+--echo # has not released metadata lock on table 't1'.
+--echo # Send:
+--send rename table t1 to t0, t3 to t1, t0 to t3;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Wait until the above RENAME TABLE is blocked because it has to wait
+--echo # for 'deadlock_con1' which should still hold shared metadata lock on
+--echo # table 't1'.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t0, t3 to t1, t0 to t3";
+--source include/wait_condition.inc
+--echo # Commit transaction to unblock RENAME TABLE.
+commit;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap RENAME TABLE.
+--reap
+
+--echo #
+--echo # Test for case when deadlock occurs and should be detected immediately.
+--echo #
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+begin;
+insert into t2 values (2);
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Send:
+--send rename table t2 to t0, t1 to t2, t0 to t1;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Wait until the above RENAME TABLE is blocked because it has to wait
+--echo # for 'deadlock_con1' which holds shared metadata lock on 't2'.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t2 to t0, t1 to t2, t0 to t1";
+--source include/wait_condition.inc
+--echo #
+--echo # The below statement should not wait as doing so will cause deadlock.
+--echo # Instead it should fail and emit ER_LOCK_DEADLOCK statement.
+--error ER_LOCK_DEADLOCK
+select * from t1;
+
+--echo #
+--echo # Let us check that failure of the above statement has not released
+--echo # metadata lock on table 't1', i.e. that RENAME TABLE is still blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t2 to t0, t1 to t2, t0 to t1";
+--source include/wait_condition.inc
+--echo # Commit transaction to unblock RENAME TABLE.
+commit;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap RENAME TABLE.
+--reap
+
+--echo #
+--echo # Test for the case in which deadlock also occurs but not immediately.
+--echo #
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+begin;
+insert into t2 values (1);
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+lock table t1 write;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # The below SELECT statement should wait for metadata lock
+--echo # on table 't1' and should not produce ER_LOCK_DEADLOCK
+--echo # immediately as no deadlock is possible at the moment.
+--send select * from t1;
+
+--echo #
+--echo # Switching to connection 'deadlock_con2'.
+connection deadlock_con2;
+--echo # Wait until the above SELECT * FROM t1 is starts waiting
+--echo # for an UNRW metadata lock to go away.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "select * from t1";
+--source include/wait_condition.inc
+
+--echo # Send RENAME TABLE statement that will deadlock with the
+--echo # SELECT statement and thus should abort the latter.
+--send rename table t1 to t0, t2 to t1, t0 to t2;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait till above RENAME TABLE is blocked while holding
+--echo # pending X lock on t1.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t0, t2 to t1, t0 to t2";
+--source include/wait_condition.inc
+--echo # Allow the above RENAME TABLE to acquire lock on t1 and
+--echo # create pending lock on t2 thus creating deadlock.
+unlock tables;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Since the latest RENAME TABLE entered in deadlock with SELECT
+--echo # statement the latter should be aborted and emit ER_LOCK_DEADLOCK
+--echo # error.
+--echo # Reap SELECT * FROM t1.
+--error ER_LOCK_DEADLOCK
+--reap
+
+--echo #
+--echo # Again let us check that failure of the SELECT statement has not
+--echo # released metadata lock on table 't2', i.e. that the latest RENAME
+--echo # is blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "rename table t1 to t0, t2 to t1, t0 to t2";
+--source include/wait_condition.inc
+--echo # Commit transaction to unblock this RENAME TABLE.
+commit;
+
+--echo #
+--echo # Switching to connection 'deadlock_con2'.
+connection deadlock_con2;
+--echo # Reap RENAME TABLE ... .
+--reap;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+
+drop tables t1, t2, t3, t4;
+
+--echo #
+--echo # Now, test case which shows that deadlock detection empiric
+--echo # also takes into account requests for metadata lock upgrade.
+--echo #
+create table t1 (i int);
+insert into t1 values (1);
+--echo # Avoid race which occurs when SELECT in 'deadlock_con1' connection
+--echo # accesses table before the above INSERT unlocks the table and thus
+--echo # its result becomes visible to other connections.
+select * from t1;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+begin;
+select * from t1;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Send:
+--send alter table t1 add column j int, rename to t2;
+
+--echo #
+--echo # Switching to connection 'deadlock_con1'.
+connection deadlock_con1;
+--echo # Wait until the above ALTER TABLE ... RENAME acquires exclusive
+--echo # metadata lock on 't2' and starts waiting for connection
+--echo # 'deadlock_con1' which holds shared lock on 't1'.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column j int, rename to t2";
+--source include/wait_condition.inc
+
+--echo # The below statement should not wait as it will cause deadlock.
+--echo # An appropriate error should be reported instead.
+--error ER_LOCK_DEADLOCK
+select * from t2;
+
+--echo # Again let us check that failure of the above statement has not
+--echo # released all metadata locks in connection 'deadlock_con1' and
+--echo # so ALTER TABLE ... RENAME is still blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column j int, rename to t2";
+--source include/wait_condition.inc
+
+--echo # Commit transaction to unblock ALTER TABLE ... RENAME.
+commit;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap ALTER TABLE ... RENAME.
+--reap
+
+drop table t2;
+
+disconnect deadlock_con1;
+disconnect deadlock_con2;
+disconnect deadlock_con3;
+
+
+--echo #
+--echo # Test for bug #46748 "Assertion in MDL_context::wait_for_locks()
+--echo # on INSERT + CREATE TRIGGER".
+--echo #
+--disable_warnings
+drop tables if exists t1, t2, t3, t4, t5;
+--enable_warnings
+--echo # Let us simulate scenario in which we open some tables from extended
+--echo # part of prelocking set but then encounter conflicting metadata lock,
+--echo # so have to back-off and wait for it to go away.
+connect (con1root,localhost,root,,test,,);
+connect (con2root,localhost,root,,test,,);
+connection default;
+create table t1 (i int);
+create table t2 (j int);
+create table t3 (k int);
+create table t4 (l int);
+create trigger t1_bi before insert on t1 for each row
+ insert into t2 values (new.i);
+create trigger t2_bi before insert on t2 for each row
+ insert into t3 values (new.j);
+--echo #
+--echo # Switching to connection 'con1root'.
+connection con1root;
+lock tables t4 read;
+--echo #
+--echo # Switching to connection 'con2root'.
+connection con2root;
+--echo # Send :
+--send rename table t3 to t5, t4 to t3;
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until the above RENAME TABLE adds pending requests for exclusive
+--echo # metadata lock on its tables and blocks due to 't4' being used by LOCK
+--echo # TABLES.
+let $wait_condition= select count(*)= 1 from information_schema.processlist
+ where state= 'Waiting for table' and
+ info='rename table t3 to t5, t4 to t3';
+--source include/wait_condition.inc
+--echo # Send :
+--send insert into t1 values (1);
+--echo #
+--echo # Switching to connection 'con1root'.
+connection con1root;
+--echo # Wait until INSERT statement waits due to encountering pending
+--echo # exclusive metadata lock on 't3'.
+let $wait_condition= select count(*)= 1 from information_schema.processlist
+ where state= 'Waiting for table' and
+ info='insert into t1 values (1)';
+--source include/wait_condition.inc
+unlock tables;
+--echo #
+--echo # Switching to connection 'con2root'.
+connection con2root;
+--echo # Reap RENAME TABLE.
+--reap
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap INSERT.
+--reap
+--echo # Clean-up.
+disconnect con1root;
+disconnect con2root;
+drop tables t1, t2, t3, t5;
+
+
+--echo #
+--echo # Bug#42546 - Backup: RESTORE fails, thinking it finds an existing table
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+set @save_log_output=@@global.log_output;
+set global log_output=file;
+
+connect(con2, localhost, root,,);
+
+--echo #
+--echo # Test 1: CREATE TABLE
+--echo #
+
+--echo # Connection 2
+connection con2;
+--echo # Start insert on the not-yet existing table
+--echo # Wait after taking the MDL lock
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--send INSERT INTO t1 VALUES(1,"def")
+
+--echo # Connection 1
+connection default;
+SET DEBUG_SYNC= 'now WAIT_FOR locked';
+--echo # Now INSERT has a MDL on the non-existent table t1.
+
+--echo #
+--echo # Continue the INSERT once CREATE waits for exclusive lock
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL finish';
+--echo # Try to create that table.
+--send CREATE TABLE t1 (c1 INT, c2 VARCHAR(100), KEY(c1))
+
+--echo # Connection 2
+--echo # Insert fails
+connection con2;
+--error ER_NO_SUCH_TABLE
+--reap
+
+--echo # Connection 1
+connection default;
+--reap;
+SET DEBUG_SYNC= 'RESET';
+SHOW TABLES;
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Test 2: CREATE TABLE LIKE
+--echo #
+
+CREATE TABLE t2 (c1 INT, c2 VARCHAR(100), KEY(c1));
+
+--echo # Connection 2
+connection con2;
+--echo # Start insert on the not-yet existing table
+--echo # Wait after taking the MDL
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL locked WAIT_FOR finish';
+--send INSERT INTO t1 VALUES(1,"def")
+
+--echo # Connection 1
+connection default;
+SET DEBUG_SYNC= 'now WAIT_FOR locked';
+--echo # Now INSERT has a MDL on the non-existent table t1.
+
+--echo #
+--echo # Continue the INSERT once CREATE waits for exclusive lock
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL finish';
+--echo # Try to create that table.
+--send CREATE TABLE t1 LIKE t2
+
+--echo # Connection 2
+--echo # Insert fails
+connection con2;
+--error ER_NO_SUCH_TABLE
+--reap
+
+--echo # Connection 1
+connection default;
+--reap
+SET DEBUG_SYNC= 'RESET';
+SHOW TABLES;
+
+DROP TABLE t2;
+disconnect con2;
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+set global log_output=@save_log_output;
+
+
+--echo #
+--echo # Bug #46044 "MDL deadlock on LOCK TABLE + CREATE TABLE HIGH_PRIORITY
+--echo # FOR UPDATE"
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+--enable_warnings
+connect (con46044, localhost, root,,);
+connect (con46044_2, localhost, root,,);
+connection default;
+create table t1 (i int);
+
+--echo # Let us check that we won't deadlock if during filling
+--echo # of I_S table we encounter conflicting metadata lock
+--echo # which owner is in its turn waiting for our connection.
+lock tables t1 read;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Sending:
+--send create table t2 select * from t1 for update;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Waiting until CREATE TABLE ... SELECT ... is blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "create table t2 select * from t1 for update";
+--source include/wait_condition.inc
+
+--echo # First let us check that SHOW FIELDS/DESCRIBE doesn't
+--echo # gets blocked and emits and error.
+--error ER_WARN_I_S_SKIPPED_TABLE
+show fields from t2;
+
+--echo # Now test for I_S query which reads only .FRMs.
+--echo #
+--echo # Query below should only emit a warning.
+select column_name from information_schema.columns
+ where table_schema='test' and table_name='t2';
+
+--echo # Finally, test for I_S query which does full-blown table open.
+--echo #
+--echo # Query below should not be blocked. Warning message should be
+--echo # stored in the 'table_comment' column.
+select table_name, table_type, auto_increment, table_comment
+ from information_schema.tables where table_schema='test' and table_name='t2';
+
+--echo # Switching to connection 'default'.
+connection default;
+unlock tables;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Reaping CREATE TABLE ... SELECT ... .
+--reap
+drop table t2;
+
+--echo #
+--echo # Let us also check that queries to I_S wait for conflicting metadata
+--echo # locks to go away instead of skipping table with a warning in cases
+--echo # when deadlock is not possible. This is a nice thing from compatibility
+--echo # and ease of use points of view.
+--echo #
+--echo # We check same three queries to I_S in this new situation.
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+lock tables t1 read;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Sending:
+--send create table t2 select * from t1 for update;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Waiting until CREATE TABLE ... SELECT ... is blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "create table t2 select * from t1 for update";
+--source include/wait_condition.inc
+
+--echo # Let us check that SHOW FIELDS/DESCRIBE gets blocked.
+--echo # Sending:
+--send show fields from t2;
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+--echo # Wait until SHOW FIELDS gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "show fields from t2";
+--source include/wait_condition.inc
+
+unlock tables;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Reaping CREATE TABLE ... SELECT ... .
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SHOW FIELDS ...
+--reap
+drop table t2;
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+lock tables t1 read;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Sending:
+--send create table t2 select * from t1 for update;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Waiting until CREATE TABLE ... SELECT ... is blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "create table t2 select * from t1 for update";
+--source include/wait_condition.inc
+
+--echo # Check that I_S query which reads only .FRMs gets blocked.
+--echo # Sending:
+--send select column_name from information_schema.columns where table_schema='test' and table_name='t2';
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+--echo # Wait until SELECT COLUMN_NAME FROM I_S.COLUMNS gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info like "select column_name from information_schema.columns%";
+--source include/wait_condition.inc
+
+unlock tables;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Reaping CREATE TABLE ... SELECT ... .
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SELECT COLUMN_NAME FROM I_S.COLUMNS
+--reap
+drop table t2;
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+lock tables t1 read;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Sending:
+--send create table t2 select * from t1 for update;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Waiting until CREATE TABLE ... SELECT ... is blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Table lock" and info = "create table t2 select * from t1 for update";
+--source include/wait_condition.inc
+
+--echo # Finally, check that I_S query which does full-blown table open
+--echo # also gets blocked.
+--echo # Sending:
+--send select table_name, table_type, auto_increment, table_comment from information_schema.tables where table_schema='test' and table_name='t2';
+
+--echo # Switching to connection 'con46044_2'.
+connection con46044_2;
+--echo # Wait until SELECT ... FROM I_S.TABLES gets blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and
+ info like "select table_name, table_type, auto_increment, table_comment from information_schema.tables%";
+--source include/wait_condition.inc
+
+unlock tables;
+
+--echo # Switching to connection 'con46044'.
+connection con46044;
+--echo # Reaping CREATE TABLE ... SELECT ... .
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping SELECT ... FROM I_S.TABLES
+--reap
+drop table t2;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Clean-up.
+disconnect con46044;
+disconnect con46044_2;
+drop table t1;
+
+
+--echo #
+--echo # Test for bug #46273 "MySQL 5.4.4 new MDL: Bug#989 is not fully fixed
+--echo # in case of ALTER".
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+set debug_sync= 'RESET';
+connect (con46273,localhost,root,,test,,);
+connection default;
+create table t1 (c1 int primary key, c2 int, c3 int);
+insert into t1 values (1,1,0),(2,2,0),(3,3,0),(4,4,0),(5,5,0);
+
+begin;
+select * from t1 where c2 = 3;
+
+--echo #
+--echo # Switching to connection 'con46273'.
+connection con46273;
+set debug_sync='after_lock_tables_takes_lock SIGNAL alter_table_locked WAIT_FOR alter_go';
+--send alter table t1 add column e int, rename to t2;
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+set debug_sync='now WAIT_FOR alter_table_locked';
+set debug_sync='before_open_table_wait_refresh SIGNAL alter_go';
+--echo # The below statement should get ER_LOCK_DEADLOCK error
+--echo # (i.e. it should not allow ALTER to proceed, and then
+--echo # fail due to 't1' changing its name to 't2').
+--error ER_LOCK_DEADLOCK
+update t1 set c3=c3+1 where c2 = 3;
+
+--echo #
+--echo # Let us check that failure of the above statement has not released
+--echo # metadata lock on table 't1', i.e. that ALTER TABLE is still blocked.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "alter table t1 add column e int, rename to t2";
+--source include/wait_condition.inc
+
+--echo # Unblock ALTER TABLE by commiting transaction and thus releasing
+--echo # metadata lock on 't1'.
+commit;
+
+--echo #
+--echo # Switching to connection 'con46273'.
+connection con46273;
+--echo # Reap ALTER TABLE.
+--reap
+
+--echo #
+--echo # Switching to connection 'default'.
+connection default;
+disconnect con46273;
+--echo # Clean-up.
+set debug_sync= 'RESET';
+drop table t2;
+
+
+--echo #
+--echo # Test for bug #46673 "Deadlock between FLUSH TABLES WITH READ LOCK
+--echo # and DML".
+--echo #
+--disable_warnings
+drop tables if exists t1;
+--enable_warnings
+connect (con46673, localhost, root,,);
+connection default;
+create table t1 (i int);
+
+--echo # Switching to connection 'con46673'.
+connection con46673;
+begin;
+insert into t1 values (1);
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Statement below should not get blocked. And if after some
+--echo # changes to code it is there should not be a deadlock between
+--echo # it and transaction from connection 'con46673'.
+flush tables with read lock;
+unlock tables;
+
+--echo # Switching to connection 'con46673'.
+connection con46673;
+delete from t1 where i = 1;
+commit;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Clean-up
+disconnect con46673;
+drop table t1;
+
+
+--echo #
+--echo # Bug#48210 FLUSH TABLES WITH READ LOCK deadlocks
+--echo # against concurrent CREATE PROCEDURE
+--echo #
+
+connect (con2, localhost, root);
+
+--echo # Test 1: CREATE PROCEDURE
+
+--echo # Connection 1
+connection default;
+--echo # Start CREATE PROCEDURE and open mysql.proc
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait';
+--send CREATE PROCEDURE p1() SELECT 1
+
+--echo # Connection 2
+connection con2;
+SET DEBUG_SYNC= 'now WAIT_FOR table_opened';
+--echo # Check that FLUSH must wait to get the GRL
+--echo # and let CREATE PROCEDURE continue
+SET DEBUG_SYNC= 'wait_lock_global_read_lock SIGNAL grlwait';
+--send FLUSH TABLES WITH READ LOCK
+
+--echo # Connection 1
+connection default;
+--reap
+
+--echo # Connection 2
+connection con2;
+--reap
+UNLOCK TABLES;
+
+--echo # Connection 1
+connection default;
+SET DEBUG_SYNC= 'RESET';
+
+--echo # Test 2: DROP PROCEDURE
+
+connection default;
+--echo # Start DROP PROCEDURE and open tables
+SET DEBUG_SYNC= 'after_open_table_mdl_shared SIGNAL table_opened WAIT_FOR grlwait';
+--send DROP PROCEDURE p1
+
+--echo # Connection 2
+connection con2;
+SET DEBUG_SYNC= 'now WAIT_FOR table_opened';
+--echo # Check that FLUSH must wait to get the GRL
+--echo # and let DROP PROCEDURE continue
+SET DEBUG_SYNC= 'wait_lock_global_read_lock SIGNAL grlwait';
+--send FLUSH TABLES WITH READ LOCK
+
+--echo # Connection 1
+connection default;
+--reap
+
+--echo # Connection 2
+connection con2;
+--reap
+UNLOCK TABLES;
+
+--echo # Connection 1
+connection default;
+SET DEBUG_SYNC= 'RESET';
+
+disconnect con2;
+
+
+--echo #
+--echo # Bug#50786 Assertion `thd->mdl_context.trans_sentinel() == __null'
+--echo # failed in open_ltable()
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+--enable_warnings
+
+connect (con1,localhost,root);
+connect (con2,localhost,root);
+connect (con3,localhost,root);
+connection default;
+
+CREATE TABLE t1 (i INT);
+CREATE TABLE t2 (i INT);
+
+SET @old_general_log= @@global.general_log;
+SET @@global.general_log= 1;
+
+SET @old_log_output= @@global.log_output;
+SET @@global.log_output= 'TABLE';
+
+SET @old_sql_log_off= @@session.sql_log_off;
+SET @@session.sql_log_off= 1;
+
+--echo # connection: con1
+connection con1;
+HANDLER t1 OPEN;
+
+--echo # connection: con3
+connection con3;
+SET @@session.sql_log_off= 1;
+
+--echo # connection: con2
+connection con2;
+SET DEBUG_SYNC= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+
+# The below statement will block on the debug sync point
+# after it gets write lock on mysql.general_log table.
+--echo # Sending:
+--send SELECT 1
+
+--echo # connection: con3
+connection con3;
+SET DEBUG_SYNC= 'now WAIT_FOR parked';
+
+--echo # connection: con1
+connection con1;
+# This statement will block in open_ltable() when
+# trying to write into mysql.general_log.
+--echo # Sending:
+--send SELECT 1
+
+--echo # connection: con3
+connection con3;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Table lock" and info = "SELECT 1";
+--source include/wait_condition.inc
+# The ALTER below will try to abort the statement in connection con1,
+# since the latter waits on a table-level lock while having a HANDLER
+# open. This will cause mysql_lock_tables() in con1 fail which before
+# triggered the assert.
+--echo # Sending:
+--send ALTER TABLE t1 ADD COLUMN j INT
+
+--echo # connection: default
+connection default;
+let $wait_condition=
+ SELECT COUNT(*) = 1 FROM information_schema.processlist
+ WHERE state = "Waiting for table"
+ AND info = "ALTER TABLE t1 ADD COLUMN j INT";
+--source include/wait_condition.inc
+SET DEBUG_SYNC= 'now SIGNAL go';
+
+--echo # connection: con1
+connection con1;
+--echo # Reaping SELECT 1
+--reap
+HANDLER t1 CLOSE;
+
+--echo # connection: con2
+connection con2;
+--echo # Reaping SELECT 1
+--reap
+
+--echo # connection: con3
+connection con3;
+--echo # Reaping ALTER TABLE t1 ADD COLUMN j INT
+--reap
+
+--echo # connection: default
+connection default;
+DROP TABLE t1, t2;
+SET DEBUG_SYNC= 'RESET';
+disconnect con1;
+disconnect con2;
+disconnect con3;
+SET @@global.general_log= @old_general_log;
+SET @@global.log_output= @old_log_output;
+SET @@session.sql_log_off= @old_sql_log_off;
+
+
+--echo #
+--echo # Additional coverage for bug #50913 "Deadlock between
+--echo # open_and_lock_tables_derived and MDL". The main test
+--echo # case is in lock_multi.test
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+set debug_sync= 'RESET';
+connect (con50913_1,localhost,root);
+connect (con50913_2,localhost,root);
+connection default;
+create table t1 (i int) engine=InnoDB;
+
+--echo # Switching to connection 'con50913_1'.
+connection con50913_1;
+set debug_sync= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+--echo # Sending:
+--send alter table t1 add column j int
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Wait until ALTER TABLE gets blocked on a sync point after
+--echo # acquiring thr_lock.c lock.
+set debug_sync= 'now WAIT_FOR parked';
+--echo # The below statement should wait on MDL lock and not deadlock on
+--echo # thr_lock.c lock.
+--echo # Sending:
+--send truncate table t1
+
+--echo # Switching to connection 'con50913_2'.
+connection con50913_2;
+--echo # Wait until TRUNCATE TABLE is blocked on MDL lock.
+let $wait_condition=
+ select count(*) = 1 from information_schema.processlist
+ where state = "Waiting for table" and info = "truncate table t1";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE.
+set debug_sync= 'now SIGNAL go';
+
+--echo # Switching to connection 'con50913_1'.
+connection con50913_1;
+--echo # Reaping ALTER TABLE.
+--reap
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reaping TRUNCATE TABLE.
+--reap
+disconnect con50913_1;
+disconnect con50913_2;
+set debug_sync= 'RESET';
+drop table t1;
+
+
+--echo #
+--echo # Test for bug #50998 "Deadlock in MDL code during test
+--echo # rqg_mdl_stability".
+--echo # Also provides coverage for the case when addition of
+--echo # waiting statement adds several loops in the waiters
+--echo # graph and therefore several searches for deadlock
+--echo # should be performed.
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+set debug_sync= 'RESET';
+connect (con1,localhost,root);
+connect (con2,localhost,root);
+connect (con3,localhost,root);
+connection default;
+create table t1 (i int);
+
+--echo # Switching to connection 'con1'.
+connection con1;
+begin;
+select * from t1;
+
+--echo # Switching to connection 'con2'.
+connection con2;
+begin;
+select * from t1;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Start ALTER TABLE which will acquire SNW lock and
+--echo # table lock and get blocked on sync point.
+set debug_sync= 'thr_multi_lock_after_thr_lock SIGNAL parked WAIT_FOR go';
+--echo # Sending:
+--send alter table t1 add column j int
+
+--echo # Switching to connection 'con1'.
+connection con1;
+--echo # Wait until ALTER TABLE gets blocked on a sync point.
+set debug_sync= 'now WAIT_FOR parked';
+--echo # Sending:
+--send insert into t1 values (1)
+
+--echo # Switching to connection 'con2'.
+connection con2;
+--echo # Sending:
+--send insert into t1 values (1)
+
+--echo # Switching to connection 'con3'.
+connection con3;
+--echo # Wait until both 'con1' and 'con2' are blocked trying to acquire
+--echo # SW lock on the table.
+let $wait_condition=
+ select count(*) = 2 from information_schema.processlist
+ where state = "Waiting for table" and info = "insert into t1 values (1)";
+--source include/wait_condition.inc
+--echo # Unblock ALTER TABLE. Since it will try to upgrade SNW to X lock
+--echo # deadlock with two loops in waiting graph will occur. Both loops
+--echo # should be found and DML statements in both 'con1' and 'con2'
+--echo # should be aborted with ER_LOCK_DEADLOCK errors.
+set debug_sync= 'now SIGNAL go';
+
+--echo # Switching to connection 'con1'.
+connection con1;
+--echo # Reaping INSERT. It should end with ER_LOCK_DEADLOCK error and
+--echo # not wait indefinitely (as it happened before the bugfix).
+--error ER_LOCK_DEADLOCK
+--reap
+commit;
+
+--echo # Switching to connection 'con2'.
+connection con2;
+--echo # Reaping INSERT.
+--error ER_LOCK_DEADLOCK
+--reap
+commit;
+
+--echo # Switching to connection 'default'.
+connection default;
+--echo # Reap ALTER TABLE.
+--reap
+
+disconnect con1;
+disconnect con2;
+disconnect con3;
+connection default;
+set debug_sync= 'RESET';
+drop table t1;
+
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/merge-big.test b/mysql-test/t/merge-big.test
index b687973c9d1..33bd93791f1 100644
--- a/mysql-test/t/merge-big.test
+++ b/mysql-test/t/merge-big.test
@@ -51,7 +51,7 @@ connection default;
#--sleep 8
#SELECT ID,STATE,INFO FROM INFORMATION_SCHEMA.PROCESSLIST;
let $wait_condition= SELECT 1 FROM INFORMATION_SCHEMA.PROCESSLIST
- WHERE ID = $con1_id AND STATE = 'Locked';
+ WHERE ID = $con1_id AND STATE = 'Table lock';
--source include/wait_condition.inc
#SELECT NOW();
--echo # Kick INSERT out of thr_multi_lock().
@@ -61,7 +61,7 @@ FLUSH TABLES;
#--sleep 8
#SELECT ID,STATE,INFO FROM INFORMATION_SCHEMA.PROCESSLIST;
let $wait_condition= SELECT 1 FROM INFORMATION_SCHEMA.PROCESSLIST
- WHERE ID = $con1_id AND STATE = 'Waiting for table';
+ WHERE ID = $con1_id AND STATE = 'Table lock';
--source include/wait_condition.inc
#SELECT NOW();
--echo # Unlock and close table and wait for con1 to close too.
diff --git a/mysql-test/t/merge.test b/mysql-test/t/merge.test
index 63ad5a1e97c..4035752b72d 100644
--- a/mysql-test/t/merge.test
+++ b/mysql-test/t/merge.test
@@ -216,20 +216,20 @@ drop table t3,t1,t2;
#
# temporary merge tables
#
-create table t1 (a int not null);
-create table t2 (a int not null);
-insert into t1 values (1);
-insert into t2 values (2);
-create temporary table t3 (a int not null) ENGINE=MERGE UNION=(t1,t2);
+CREATE TABLE t1 (c1 INT NOT NULL);
+CREATE TABLE t2 (c1 INT NOT NULL);
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
+CREATE TEMPORARY TABLE t3 (c1 INT NOT NULL) ENGINE=MRG_MYISAM UNION=(t1,t2);
--error ER_WRONG_MRG_TABLE
-select * from t3;
-create temporary table t4 (a int not null);
-create temporary table t5 (a int not null);
-insert into t4 values (1);
-insert into t5 values (2);
-create temporary table t6 (a int not null) ENGINE=MERGE UNION=(t4,t5);
-select * from t6;
-drop table t6, t3, t1, t2, t4, t5;
+SELECT * FROM t3;
+CREATE TEMPORARY TABLE t4 (c1 INT NOT NULL);
+CREATE TEMPORARY TABLE t5 (c1 INT NOT NULL);
+INSERT INTO t4 VALUES (4);
+INSERT INTO t5 VALUES (5);
+CREATE TEMPORARY TABLE t6 (c1 INT NOT NULL) ENGINE=MRG_MYISAM UNION=(t4,t5);
+SELECT * FROM t6;
+DROP TABLE t6, t3, t1, t2, t4, t5;
#
# Bug#19627 - temporary merge table locking
# MERGE table and its children must match in temporary type.
@@ -556,7 +556,7 @@ CREATE TABLE t1(a INT);
SELECT * FROM tm1;
CHECK TABLE tm1;
CREATE TABLE t2(a BLOB);
---error 1168
+--error ER_WRONG_MRG_TABLE
SELECT * FROM tm1;
CHECK TABLE tm1;
ALTER TABLE t2 MODIFY a INT;
@@ -675,12 +675,16 @@ SELECT * FROM t3;
--echo # Truncate MERGE table under locked tables.
LOCK TABLE t1 WRITE, t2 WRITE, t3 WRITE;
INSERT INTO t1 VALUES (1);
---error ER_LOCK_OR_ACTIVE_TRANSACTION
TRUNCATE TABLE t3;
SELECT * FROM t3;
+UNLOCK TABLES;
+SELECT * FROM t1;
+SELECT * FROM t2;
--echo #
--echo # Truncate child table under locked tables.
---error ER_LOCK_OR_ACTIVE_TRANSACTION
+LOCK TABLE t1 WRITE, t2 WRITE, t3 WRITE;
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
TRUNCATE TABLE t1;
SELECT * FROM t3;
UNLOCK TABLES;
@@ -706,14 +710,18 @@ SELECT * FROM t3;
INSERT INTO t1 VALUES (1);
CREATE TABLE t4 (c1 INT, INDEX(c1));
LOCK TABLE t4 WRITE;
---error ER_LOCK_OR_ACTIVE_TRANSACTION
TRUNCATE TABLE t3;
SELECT * FROM t3;
+SELECT * FROM t1;
+SELECT * FROM t2;
--echo #
--echo # Truncate temporary child table under locked tables.
---error ER_LOCK_OR_ACTIVE_TRANSACTION
+INSERT INTO t1 VALUES (1);
+INSERT INTO t2 VALUES (2);
TRUNCATE TABLE t1;
SELECT * FROM t3;
+SELECT * FROM t1;
+SELECT * FROM t2;
UNLOCK TABLES;
DROP TABLE t1, t2, t3, t4;
@@ -846,7 +854,8 @@ SHOW CREATE TABLE t3;
DROP TABLE t1, t2;
#
--echo #
---echo # CREATE ... LIKE
+--echo # Bug#37371 "CREATE TABLE LIKE merge loses UNION parameter"
+--echo # Demonstrate that this is no longer the case.
--echo #
--echo # 1. Create like.
CREATE TABLE t1 (c1 INT);
@@ -858,20 +867,24 @@ INSERT INTO t2 VALUES (2);
INSERT INTO t3 VALUES (3);
CREATE TABLE t4 LIKE t3;
SHOW CREATE TABLE t4;
---error ER_OPEN_AS_READONLY
INSERT INTO t4 VALUES (4);
DROP TABLE t4;
--echo #
--echo # 1. Create like with locked tables.
LOCK TABLES t3 WRITE, t2 WRITE, t1 WRITE;
+--error ER_TABLE_NOT_LOCKED
CREATE TABLE t4 LIKE t3;
--error ER_TABLE_NOT_LOCKED
SHOW CREATE TABLE t4;
--error ER_TABLE_NOT_LOCKED
INSERT INTO t4 VALUES (4);
-UNLOCK TABLES;
+CREATE TEMPORARY TABLE t4 LIKE t3;
+--error ER_WRONG_MRG_TABLE
SHOW CREATE TABLE t4;
---error ER_OPEN_AS_READONLY
+--error ER_WRONG_MRG_TABLE
+INSERT INTO t4 VALUES (4);
+UNLOCK TABLES;
+--error ER_WRONG_MRG_TABLE
INSERT INTO t4 VALUES (4);
DROP TABLE t4;
#
@@ -969,9 +982,9 @@ CREATE TABLE t2 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1)
LOCK TABLES t1 WRITE, t2 WRITE;
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
---error 1168
+--error ER_TABLE_NOT_LOCKED
SELECT * FROM t2;
---error ER_NO_SUCH_TABLE
+--error ER_TABLE_NOT_LOCKED
SELECT * FROM t1;
UNLOCK TABLES;
DROP TABLE t2;
@@ -1407,6 +1420,7 @@ FLUSH TABLES m1, t1;
UNLOCK TABLES;
DROP TABLE t1, m1;
+
#
# Bug#35068 - Assertion fails when reading from i_s.tables
# and there is incorrect merge table
@@ -1694,3 +1708,405 @@ while ($1)
--enable_query_log
drop table t_parent;
set @@global.table_definition_cache=@save_table_definition_cache;
+
+#
+# WL#4144 - Lock MERGE engine children
+#
+# Test DATA/INDEX DIRECTORY
+#
+--disable_warnings
+DROP DATABASE IF EXISTS mysql_test1;
+--enable_warnings
+CREATE DATABASE mysql_test1;
+--disable_query_log
+# data/index directory don't work in HAVE_purify builds. Disable
+# build-dependent warnings.
+--disable_warnings
+--echo CREATE TABLE t1 ... DATA DIRECTORY=... INDEX DIRECTORY=...
+eval CREATE TABLE t1 (c1 INT)
+ DATA DIRECTORY='$MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY='$MYSQLTEST_VARDIR/tmp';
+--echo CREATE TABLE mysql_test1.t2 ... DATA DIRECTORY=... INDEX DIRECTORY=...
+eval CREATE TABLE mysql_test1.t2 (c1 INT)
+ DATA DIRECTORY='$MYSQLTEST_VARDIR/tmp'
+ INDEX DIRECTORY='$MYSQLTEST_VARDIR/tmp';
+--enable_query_log
+--enable_warnings
+CREATE TABLE m1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,mysql_test1.t2)
+ INSERT_METHOD=LAST;
+INSERT INTO t1 VALUES (1);
+INSERT INTO mysql_test1.t2 VALUES (2);
+SELECT * FROM m1;
+#--copy_file $MYSQLTEST_VARDIR/master-data/test/m1.MRG /tmp/mysql-test-m1.MRG
+DROP TABLE t1, mysql_test1.t2, m1;
+DROP DATABASE mysql_test1;
+#
+# Review detected Crash #1. Detaching main tables while in sub statement.
+#
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE t2 (c1 INT);
+INSERT INTO t1 (c1) VALUES (1);
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2) INSERT_METHOD=FIRST;
+CREATE TABLE t3 (c1 INT);
+INSERT INTO t3 (c1) VALUES (1);
+CREATE FUNCTION f1() RETURNS INT RETURN (SELECT MAX(c1) FROM t3);
+CREATE VIEW v1 AS SELECT foo.c1 c1, f1() c2, bar.c1 c3, f1() c4
+ FROM tm1 foo, tm1 bar, t3;
+SELECT * FROM v1;
+DROP FUNCTION f1;
+DROP VIEW v1;
+DROP TABLE tm1, t1, t2, t3;
+#
+# Review detected Crash #2. Trying to attach temporary table twice.
+#
+CREATE TEMPORARY TABLE t1 (c1 INT);
+CREATE TEMPORARY TABLE t2 (c1 INT);
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2)
+ INSERT_METHOD=FIRST;
+CREATE FUNCTION f1() RETURNS INT RETURN (SELECT MAX(c1) FROM tm1);
+INSERT INTO tm1 (c1) VALUES (1);
+SELECT f1() FROM (SELECT 1) AS c1;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2;
+#
+# Review suggested test. DDL in a stored function.
+#
+DELIMITER |;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ CREATE TEMPORARY TABLE t1 (c1 INT);
+ CREATE TEMPORARY TABLE t2 (c1 INT);
+ CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2);
+ INSERT INTO t1 (c1) VALUES (1);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+SELECT f1() FROM (SELECT 1 UNION SELECT 1) c1;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2;
+#
+CREATE TEMPORARY TABLE t1 (c1 INT);
+INSERT INTO t1 (c1) VALUES (1);
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1);
+DELIMITER |;
+--error ER_SP_BADSTATEMENT
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ CREATE TEMPORARY TABLE t2 (c1 INT);
+ ALTER TEMPORARY TABLE tm1 UNION=(t1,t2);
+ INSERT INTO t2 (c1) VALUES (2);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+DROP TABLE tm1, t1;
+#
+# Base table. No LOCK TABLES, no functions/triggers.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+DROP TABLE tm1, t1;
+#
+# Base table. No LOCK TABLES, sub-statement that is run inside a function.
+#
+DELIMITER |;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ INSERT INTO tm1 VALUES (1);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+SELECT f1();
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+#
+# Base table. LOCK TABLES, no functions/triggers.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+LOCK TABLE tm1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+DROP TABLE tm1, t1;
+#
+# Base table. LOCK TABLES, sub-statement that is run inside a function.
+#
+DELIMITER |;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ INSERT INTO tm1 VALUES (1);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+LOCK TABLE tm1 WRITE;
+SELECT f1();
+UNLOCK TABLES;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+#
+# Base table. LOCK TABLES statement that locks a table that has a trigger
+# that inserts into a merge table, so an attempt is made to lock tables
+# of a sub-statement.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=LAST;
+CREATE TRIGGER t2_ai AFTER INSERT ON t2
+ FOR EACH ROW INSERT INTO tm1 VALUES(11);
+LOCK TABLE t2 WRITE;
+INSERT INTO t2 VALUES (2);
+SELECT * FROM tm1;
+SELECT * FROM t2;
+UNLOCK TABLES;
+DROP TRIGGER t2_ai;
+DROP TABLE tm1, t1, t2;
+#
+# Temporary. No LOCK TABLES, no functions/triggers.
+#
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+DROP TABLE tm1, t1;
+#
+# Temporary. No LOCK TABLES, sub-statement that is run inside a function.
+#
+DELIMITER |;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ INSERT INTO tm1 VALUES (1);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+SELECT f1();
+DROP FUNCTION f1;
+DROP TABLE tm1, t1;
+#
+# Temporary. LOCK TABLES, no functions/triggers.
+#
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+CREATE TABLE t9 (c1 INT) ENGINE=MyISAM;
+LOCK TABLE t9 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+DROP TABLE tm1, t1, t9;
+#
+# Temporary. LOCK TABLES, sub-statement that is run inside a function.
+#
+DELIMITER |;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ INSERT INTO tm1 VALUES (1);
+ RETURN (SELECT MAX(c1) FROM tm1);
+END|
+DELIMITER ;|
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+CREATE TABLE t9 (c1 INT) ENGINE=MyISAM;
+LOCK TABLE t9 WRITE;
+SELECT f1();
+UNLOCK TABLES;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t9;
+#
+# Temporary. LOCK TABLES statement that locks a table that has a trigger
+# that inserts into a merge table, so an attempt is made to lock tables
+# of a sub-statement.
+#
+CREATE TEMPORARY TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TEMPORARY TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TRIGGER t2_ai AFTER INSERT ON t2
+ FOR EACH ROW INSERT INTO tm1 VALUES(11);
+LOCK TABLE t2 WRITE;
+INSERT INTO t2 VALUES (2);
+SELECT * FROM tm1;
+SELECT * FROM t2;
+UNLOCK TABLES;
+DROP TRIGGER t2_ai;
+DROP TABLE tm1, t1, t2;
+--echo #
+--echo # Don't allow an update of a MERGE child in a trigger
+--echo # if the table's already being modified by the main
+--echo # statement.
+--echo #
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+CREATE TRIGGER tm1_ai AFTER INSERT ON tm1
+ FOR EACH ROW INSERT INTO t1 VALUES(11);
+LOCK TABLE tm1 WRITE, t1 WRITE;
+--error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, tm1 WRITE;
+--error ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+DROP TRIGGER tm1_ai;
+DROP TABLE tm1, t1;
+
+--echo #
+--echo # Don't select MERGE child when trying to get a prelocked table.
+--echo #
+--echo # Due to a limitation demonstrated by the previous test
+--echo # we can no longer use a write-locked prelocked table.
+--echo # The test is kept for historical purposes.
+--echo #
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1)
+ INSERT_METHOD=LAST;
+CREATE TRIGGER tm1_ai AFTER INSERT ON tm1
+ FOR EACH ROW SELECT max(c1) FROM t1 INTO @var;
+LOCK TABLE tm1 WRITE, t1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+LOCK TABLE t1 WRITE, tm1 WRITE;
+INSERT INTO tm1 VALUES (1);
+SELECT * FROM tm1;
+UNLOCK TABLES;
+DROP TRIGGER tm1_ai;
+DROP TABLE tm1, t1;
+
+# Don't resurrect chopped off prelocked tables.
+# The problem is not visible by test results; only by debugging.
+#
+CREATE TABLE t1 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t2 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t3 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t4 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE t5 (c1 INT) ENGINE=MyISAM;
+CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1,t2,t3,t4,t5)
+ INSERT_METHOD=LAST;
+CREATE TRIGGER t2_au AFTER UPDATE ON t2
+ FOR EACH ROW SELECT MAX(c1) FROM t1 INTO @var;
+CREATE FUNCTION f1() RETURNS INT
+ RETURN (SELECT MAX(c1) FROM t4);
+LOCK TABLE tm1 WRITE, t1 WRITE, t2 WRITE, t3 WRITE, t4 WRITE, t5 WRITE;
+INSERT INTO t1 VALUES(1);
+INSERT INTO t2 VALUES(2);
+INSERT INTO t3 VALUES(3);
+INSERT INTO t4 VALUES(4);
+INSERT INTO t5 VALUES(5);
+ connect (con1,localhost,root,,);
+ send UPDATE t2, tm1 SET t2.c1=f1();
+connection default;
+# Force reopen in other thread.
+#sleep 1;
+FLUSH TABLES;
+#sleep 1;
+FLUSH TABLES;
+#sleep 1;
+UNLOCK TABLES;
+ connection con1;
+ reap;
+ disconnect con1;
+connection default;
+SELECT * FROM tm1;
+DROP TRIGGER t2_au;
+DROP FUNCTION f1;
+DROP TABLE tm1, t1, t2, t3, t4, t5;
+
+--echo #
+--echo # Bug47098 assert in MDL_context::destroy on HANDLER
+--echo # <damaged merge table> OPEN
+--echo #
+--echo # Test that merge tables are closed correctly when opened using
+--echo # HANDLER ... OPEN.
+--echo # The general case.
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2, t3;
+--enable_warnings
+--echo # Connection con1.
+connect (con1,localhost,root,,);
+CREATE TABLE t1 (c1 int);
+CREATE TABLE t2 (c1 int);
+CREATE TABLE t3 (c1 int) ENGINE = MERGE UNION (t1,t2);
+START TRANSACTION;
+--error ER_ILLEGAL_HA
+HANDLER t3 OPEN;
+DROP TABLE t1, t2, t3;
+--echo # Connection default.
+connection default;
+--echo # Disconnecting con1, all mdl_tickets must have been released.
+disconnect con1;
+--echo # The bug-specific case.
+--echo # Connection con1.
+connect (con1,localhost,root,,);
+CREATE TABLE t1 (c1 int);
+CREATE TABLE t2 (c1 int);
+CREATE TABLE t3 (c1 int) ENGINE = MERGE UNION (t1,t2);
+DROP TABLE t2;
+START TRANSACTION;
+--error ER_WRONG_MRG_TABLE
+HANDLER t3 OPEN;
+DROP TABLE t1, t3;
+--echo # Connection default.
+connection default;
+--echo # Disconnecting con1, all mdl_tickets must have been released.
+disconnect con1;
+
+--echo #
+--echo # A test case for Bug#47648 main.merge fails sporadically
+--echo #
+--echo # Make sure we correctly maintain lex->query_tables_last_own.
+--echo #
+create table t1 (c1 int not null);
+create table t2 (c1 int not null);
+create table t3 (c1 int not null);
+
+create function f1 () returns int return (select max(c1) from t3);
+
+create table t4 (c1 int not null) engine=merge union=(t1,t2) insert_method=last ;
+
+select * from t4 where c1 < f1();
+prepare stmt from "select * from t4 where c1 < f1()";
+execute stmt;
+execute stmt;
+execute stmt;
+drop function f1;
+--error ER_SP_DOES_NOT_EXIST
+execute stmt;
+--error ER_SP_DOES_NOT_EXIST
+execute stmt;
+drop table t4, t3, t2, t1;
+
+
+--echo #
+--echo # Bug#51240 ALTER TABLE of a locked MERGE table fails
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS m1, t1;
+--enable_warnings
+
+CREATE TABLE t1 (c1 INT);
+CREATE TABLE m1 (c1 INT) ENGINE=MRG_MyISAM UNION=(t1);
+LOCK TABLE m1 WRITE;
+# This used to cause an error.
+ALTER TABLE m1 ADD INDEX (c1);
+
+UNLOCK TABLES;
+DROP TABLE m1, t1;
+
+
+--echo End of 6.0 tests
+
diff --git a/mysql-test/t/merge_recover-master.opt b/mysql-test/t/merge_recover-master.opt
new file mode 100644
index 00000000000..875a25ad513
--- /dev/null
+++ b/mysql-test/t/merge_recover-master.opt
@@ -0,0 +1 @@
+--myisam-recover=force
diff --git a/mysql-test/t/merge_recover.test b/mysql-test/t/merge_recover.test
new file mode 100644
index 00000000000..f2cb204eeb6
--- /dev/null
+++ b/mysql-test/t/merge_recover.test
@@ -0,0 +1,113 @@
+--echo #
+--echo # Test of MyISAM MRG tables with corrupted children.
+--echo # Run with --myisam-recover=force option.
+--echo #
+--echo # Preparation: we need to make sure that the merge parent
+--echo # is never left in the table cache when closed, since this may
+--echo # have effect on merge children.
+--echo # For that, we set the table cache to minimal size and populate it
+--echo # in a concurrent connection.
+connect(con1,localhost,root,,test,,);
+--echo #
+--echo # Switching to connection con1
+--echo #
+connection con1;
+--echo #
+--echo # Minimal values.
+--echo #
+
+call mtr.add_suppression("Got an error from thread_id=.*ha_myisam.cc:");
+call mtr.add_suppression("MySQL thread id .*, query id .* localhost.*root Checking table");
+call mtr.add_suppression(" '\..test.t1'");
+
+set global table_open_cache=256;
+set global table_definition_cache=400;
+--disable_warnings
+drop procedure if exists p_create;
+--enable_warnings
+delimiter |;
+create procedure p_create()
+begin
+ declare i int default 1;
+ set @lock_table_stmt="lock table ";
+ set @drop_table_stmt="drop table ";
+ while i < @@global.table_definition_cache + 1 do
+ set @table_name=concat("t_", i);
+ set @opt_comma=if(i=1, "", ", ");
+ set @lock_table_stmt=concat(@lock_table_stmt, @opt_comma,
+ @table_name, " read");
+ set @drop_table_stmt=concat(@drop_table_stmt, @opt_comma, @table_name);
+ set @create_table_stmt=concat("create table if not exists ",
+ @table_name, " (a int)");
+ prepare stmt from @create_table_stmt;
+ execute stmt;
+ deallocate prepare stmt;
+ set i= i+1;
+ end while;
+end|
+delimiter ;|
+call p_create();
+drop procedure p_create;
+--disable_query_log
+let $lock=`select @lock_table_stmt`;
+eval $lock;
+--enable_query_log
+--echo #
+--echo # Switching to connection 'default'
+--echo #
+connection default;
+--echo #
+--echo # We have to disable the ps-protocol, to avoid
+--echo # "Prepared statement needs to be re-prepared" errors
+--echo # -- table def versions change all the time with full table cache.
+--echo #
+--disable_ps_protocol
+--disable_warnings
+drop table if exists t1, t1_mrg, t1_copy;
+--enable_warnings
+let $MYSQLD_DATADIR=`select @@datadir`;
+--echo #
+--echo # Prepare a MERGE engine table, that refers to a corrupted
+--echo # child.
+--echo #
+create table t1 (a int, key(a)) engine=myisam;
+create table t1_mrg (a int) union (t1) engine=merge;
+--echo #
+--echo # Create a table with a corrupted index file:
+--echo # save an old index file, insert more rows,
+--echo # overwrite the new index file with the old one.
+--echo #
+insert into t1 (a) values (1), (2), (3);
+flush table t1;
+--copy_file $MYSQLD_DATADIR/test/t1.MYI $MYSQLD_DATADIR/test/t1_copy.MYI
+insert into t1 (a) values (4), (5), (6);
+flush table t1;
+--remove_file $MYSQLD_DATADIR/test/t1.MYI
+--copy_file $MYSQLD_DATADIR/test/t1_copy.MYI $MYSQLD_DATADIR/test/t1.MYI
+--remove_file $MYSQLD_DATADIR/test/t1_copy.MYI
+--echo # check table is needed to mark the table as crashed.
+check table t1;
+--echo #
+--echo # At this point we have a merge table t1_mrg pointing to t1,
+--echo # and t1 is corrupted, and will be auto-repaired at open.
+--echo # Check that this doesn't lead to memory corruption.
+--echo #
+--replace_regex /'.*[\/\\]/'/
+select * from t1_mrg;
+--echo #
+--echo # Cleanup
+--echo #
+drop table t1, t1_mrg;
+--echo #
+--echo # Switching to connection con1
+--echo #
+connection con1;
+unlock tables;
+prepare stmt from @drop_table_stmt;
+execute stmt;
+deallocate prepare stmt;
+set @@global.table_definition_cache=default;
+set @@global.table_open_cache=default;
+disconnect con1;
+connection default;
+--enable_ps_protocol
diff --git a/mysql-test/t/multi_update-master.opt b/mysql-test/t/multi_update-master.opt
index 9f1a29461ff..da78f987af3 100644
--- a/mysql-test/t/multi_update-master.opt
+++ b/mysql-test/t/multi_update-master.opt
@@ -1 +1 @@
---set-variable=tmp_table_size=1024
+--tmp_table_size=1024
diff --git a/mysql-test/t/multi_update.test b/mysql-test/t/multi_update.test
index fc37fd6a27d..0db6c44873d 100644
--- a/mysql-test/t/multi_update.test
+++ b/mysql-test/t/multi_update.test
@@ -474,7 +474,8 @@ drop table t1,t2;
#
# Test alter table and a concurrent multi update
-# (This will force update to reopen tables)
+# (Before we have introduced data-lock-aware metadata locks
+# this test case forced update to reopen tables).
#
create table t1 (a int, b int);
@@ -494,9 +495,9 @@ send alter table t1 add column c int default 100 after a;
connect (updater,localhost,root,,test);
connection updater;
# Wait till "alter table t1 ..." of session changer is in work.
-# = There is one session is in state "Locked".
+# = There is one session waiting.
let $wait_condition= select count(*)= 1 from information_schema.processlist
- where state= 'Locked';
+ where state= 'Waiting for table';
--source include/wait_condition.inc
send update t1, v1 set t1.b=t1.a+t1.b+v1.b where t1.a=v1.a;
@@ -505,9 +506,9 @@ connection locker;
# - "alter table t1 ..." of session changer and
# - "update t1, v1 ..." of session updater
# are in work.
-# = There are two session is in state "Locked".
+# = There are two session waiting.
let $wait_condition= select count(*)= 2 from information_schema.processlist
- where state= 'Locked';
+ where state= 'Waiting for table';
--source include/wait_condition.inc
unlock tables;
@@ -637,5 +638,17 @@ drop table t1, t2, t3;
# Add further tests from here
#
+--echo #
+--echo # Bug#49534: multitable IGNORE update with sql_safe_updates error
+--echo # causes debug assertion
+--echo #
+CREATE TABLE t1( a INT, KEY( a ) );
+INSERT INTO t1 VALUES (1), (2), (3);
+SET SESSION sql_safe_updates = 1;
+--echo # Must not cause failed assertion
+--error ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE
+UPDATE IGNORE t1, t1 t1a SET t1.a = 1 WHERE t1a.a = 1;
+DROP TABLE t1;
+
--echo end of tests
diff --git a/mysql-test/t/multi_update2-master.opt b/mysql-test/t/multi_update2-master.opt
index 9f1a29461ff..da78f987af3 100644
--- a/mysql-test/t/multi_update2-master.opt
+++ b/mysql-test/t/multi_update2-master.opt
@@ -1 +1 @@
---set-variable=tmp_table_size=1024
+--tmp_table_size=1024
diff --git a/mysql-test/t/multi_update_tiny_hash-master.opt b/mysql-test/t/multi_update_tiny_hash-master.opt
index d81cc55090d..2fa4c2b903d 100644
--- a/mysql-test/t/multi_update_tiny_hash-master.opt
+++ b/mysql-test/t/multi_update_tiny_hash-master.opt
@@ -1 +1 @@
---set-variable=max_heap_table_size=16384
+--max_heap_table_size=16384
diff --git a/mysql-test/t/myisam.test b/mysql-test/t/myisam.test
index 8d9e98be8ea..47f53cac9ee 100644
--- a/mysql-test/t/myisam.test
+++ b/mysql-test/t/myisam.test
@@ -1200,6 +1200,17 @@ CHECKSUM TABLE t1 EXTENDED;
DROP TABLE t1;
+--echo #
+--echo # BUG#48438 - crash with error in unioned query against merge table and view...
+--echo #
+SET GLOBAL table_open_cache=3;
+CREATE TABLE t1(a INT);
+SELECT 1 FROM t1 AS a1, t1 AS a2, t1 AS a3, t1 AS a4 FOR UPDATE;
+SELECT TABLE_ROWS, DATA_LENGTH FROM INFORMATION_SCHEMA.TABLES
+ WHERE TABLE_SCHEMA='test' AND TABLE_NAME='t1';
+DROP TABLE t1;
+SET GLOBAL table_open_cache=DEFAULT;
+
--echo End of 5.0 tests
@@ -1565,5 +1576,18 @@ SET myisam_sort_buffer_size=@@global.myisam_sort_buffer_size;
CHECK TABLE t1;
DROP TABLE t1;
+
+--echo #
+--echo # BUG#49628 - corrupt table after legal SQL, LONGTEXT column
+--echo #
+CREATE TABLE t1(a INT, b LONGTEXT, UNIQUE(a));
+REPLACE INTO t1 VALUES
+(1, REPEAT('a', 129015)),(1, NULL),
+(2, NULL),(3, NULL),(4, NULL),(5, NULL),(6, NULL),(7, NULL),
+(1, REPEAT('b', 129016)),(1, NULL),
+(1, REPEAT('c', 129015)),(1, REPEAT('d', 129015));
+CHECK TABLE t1;
+DROP TABLE t1;
+
--echo End of 5.1 tests
diff --git a/mysql-test/t/mysqlbinlog.test b/mysql-test/t/mysqlbinlog.test
index 55593bed124..f8172696215 100644
--- a/mysql-test/t/mysqlbinlog.test
+++ b/mysql-test/t/mysqlbinlog.test
@@ -65,13 +65,13 @@ select "--- --database --" as "";
--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/
--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --database=nottest $MYSQLD_DATADIR/master-bin.000001 2> /dev/null
-# this test for position option
+# this test for start-position option
--disable_query_log
-select "--- --position --" as "";
+select "--- --start-position --" as "";
--enable_query_log
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/
---exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --position=1074 $MYSQLD_DATADIR/master-bin.000002
+--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --start-position=1074 $MYSQLD_DATADIR/master-bin.000002
# These are tests for remote binlog.
# They should return the same as previous test.
@@ -103,11 +103,11 @@ select "--- --database --" as "";
# Strangely but this works
--disable_query_log
-select "--- --position --" as "";
+select "--- --start-position --" as "";
--enable_query_log
--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/
---exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --position=1074 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
+--exec $MYSQL_BINLOG --short-form --local-load=$MYSQLTEST_VARDIR/tmp/ --read-from-remote-server --start-position=1074 --user=root --host=127.0.0.1 --port=$MASTER_MYPORT master-bin.000002
# Bug#7853 mysqlbinlog does not accept input from stdin
@@ -120,7 +120,7 @@ select "--- reading stdin --" as "";
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
--replace_regex /SQL_LOAD_MB-[0-9]-[0-9]/SQL_LOAD_MB-#-#/
---exec $MYSQL_BINLOG --short-form --position=79 - < $MYSQL_TEST_DIR/std_data/trunc_binlog.000001
+--exec $MYSQL_BINLOG --short-form --start-position=79 - < $MYSQL_TEST_DIR/std_data/trunc_binlog.000001
drop table t1,t2;
#
diff --git a/mysql-test/t/mysqltest.test b/mysql-test/t/mysqltest.test
index bcf33aa8c27..25293ff29e7 100644
--- a/mysql-test/t/mysqltest.test
+++ b/mysql-test/t/mysqltest.test
@@ -605,6 +605,15 @@ echo ;
--error 1
--exec echo "--exec " | $MYSQL_TEST 2>&1
+# Multi-line exec
+exec $MYSQL
+ test -e "select 1";
+exec $MYSQL test -e "select
+ 2";
+let $query = select 3
+ as X;
+exec $MYSQL test -e "$query";
+
# ----------------------------------------------------------------------------
# Test let command
# ----------------------------------------------------------------------------
@@ -911,6 +920,28 @@ sleep 0.5;
sleep 1;
real_sleep 1;
+# Parameter from variable, legal and illegal
+let $sleep_var= 0.1;
+sleep $sleep_var;
+let $sleep_var= 1;
+--real_sleep $sleep_var
+
+--write_file $MYSQL_TMP_DIR/sleep.inc
+let $sleep_var= xyz;
+--sleep $sleep_var
+EOF
+--error 1
+--exec $MYSQL_TEST < $MYSQL_TMP_DIR/sleep.inc 2>&1
+--remove_file $MYSQL_TMP_DIR/sleep.inc
+
+--write_file $MYSQL_TMP_DIR/sleep.inc
+let $sleep_var= xyz;
+real_sleep $sleep_var;
+EOF
+--error 1
+--exec $MYSQL_TEST < $MYSQL_TMP_DIR/sleep.inc 2>&1
+--remove_file $MYSQL_TMP_DIR/sleep.inc
+
# Missing parameter
--error 1
--exec echo "sleep ;" | $MYSQL_TEST 2>&1
@@ -1006,6 +1037,37 @@ echo test3stop
--delimiter ;
echo test4;
+# ----------------------------------------------------------------------------
+# Test that delimiter within if() works in in various combinations
+# ----------------------------------------------------------------------------
+
+if (0)
+{
+ delimiter ||;
+ echo false-inner||
+ if (0)
+ {
+ delimiter *||
+ echo false-innerer*
+ delimiter ||*
+ }
+ echo false-inner again||
+}
+echo outer;
+if (1)
+{
+ delimiter /;
+ echo true-inner/
+ if (0)
+ {
+ delimiter %/
+ echo true-innerer%
+ }
+ echo true-inner again/
+}
+echo true-outer/
+delimiter ;/
+
# ----------------------------------------------------------------------------
# Test if
@@ -1285,6 +1347,17 @@ select "a" as col1, "c" as col2;
--error 1
--exec echo "--replace_column 1 b c " | $MYSQL_TEST 2>&1
+let $long_rep= 1234567890123456789012345678901234567890;
+let $long_rep= $long_rep,$long_rep;
+let $long_rep= $long_rep,$long_rep;
+let $long_rep= $long_rep,$long_rep;
+let $long_rep= $long_rep,$long_rep;
+let $long_rep= $long_rep,$long_rep;
+
+# This tests from strings > 1024 (here 1311)
+
+--replace_result $long_rep LONG_STRING
+eval select "$long_rep" as x;
# ----------------------------------------------------------------------------
# Test sync_with_master
@@ -1606,6 +1679,57 @@ select * from t1;
drop table t1;
# ----------------------------------------------------------------------------
+# Tests of send
+# ----------------------------------------------------------------------------
+
+create table t1 ( f1 char(10));
+insert into t1 values ("Abcd");
+
+# 1. Basic test
+
+send select * from t1;
+reap;
+
+# 2. Test with error
+
+--send select * from t2;
+--error ER_NO_SUCH_TABLE
+--reap
+
+# 3. test send of next stmt
+
+--send
+select * from t1;
+--reap
+
+# 4. Non-query stmt betwen send and reap allowed
+
+--send select * from t1;
+--sleep 0.05
+--echo Result coming up
+--reap
+
+# 5. Test of send_eval
+
+--let $my_stmt= select * from t1;
+--send_eval $my_stmt
+--reap
+
+# 6. Test that mysqltest does not allow query stmt between send and reap
+# Untestable directly as it causes mysqltest to fail
+
+--write_file $MYSQLTEST_VARDIR/tmp/mysqltest.in
+--send select * from t1;
+select 1;
+--reap
+EOF
+--error 1
+--exec $MYSQL_TEST < $MYSQLTEST_VARDIR/tmp/mysqltest.in 2>&1
+remove_file $MYSQLTEST_VARDIR/tmp/mysqltest.in;
+
+drop table t1;
+
+# ----------------------------------------------------------------------------
# test for remove_file
# ----------------------------------------------------------------------------
@@ -1616,6 +1740,19 @@ drop table t1;
remove_file non_existing_file;
# ----------------------------------------------------------------------------
+# test for remove_files_wildcard
+# ----------------------------------------------------------------------------
+
+--error 1
+--exec echo "remove_files_wildcard ;" | $MYSQL_TEST 2>&1
+
+--error 1
+remove_files_wildcard non_existing_dir;
+
+--error 1
+remove_files_wildcard non_existing_dir non_existing_file;
+
+# ----------------------------------------------------------------------------
# test for write_file
# ----------------------------------------------------------------------------
--error 1
@@ -1905,6 +2042,20 @@ perl;
print "hello\n";
EOF
+# Test perl within while, also with if being false first iteration
+let $outer= 3;
+let $ifval= 0;
+while ($outer) {
+ if ($ifval) {
+ perl UNTIL;
+ my $val= 5;
+ print "val is $val\n";
+UNTIL
+ }
+ inc $ifval;
+ dec $outer;
+}
+
# ----------------------------------------------------------------------------
# test for die
# ----------------------------------------------------------------------------
@@ -2045,6 +2196,44 @@ INSERT INTO t1 SELECT f1 - 512 FROM t1;
SELECT * FROM t1;
--enable_result_log
DROP TABLE t1;
+
+# ----------------------------------------------------------------------------
+# test for lowercase_result
+# ----------------------------------------------------------------------------
+
+# 1. Basic test
+--lowercase_result
+SELECT "500g BLÅBÆRSYLTETØY" AS "WILL BE lower cased";
+
+# 2. test that it does not apply to next statement
+SELECT "UPPER" AS "WILL NOT BE lower cased";
+
+# 3. test that it does not affect non-SQL or the following statement
+--lowercase_result
+--echo UP
+SELECT 0 as "UP AGAIN";
+
+# 4. test that it works with eval and variables
+let $lower_stmt=SELECT "ABCdef" AS "uvwXYZ";
+--lowercase_result
+eval $lower_stmt;
+
+# 5. test that it works in combination with sort
+sorted_result;
+lowercase_result;
+SELECT "Xyz" AS Name UNION SELECT "Abc" as Name ORDER BY Name DESC;
+
+# 6. Test combination with replace, and that lower casing is done first
+--lowercase_result
+--replace_result old new
+SELECT 1 as "SOME OLD TEXT";
+
+# 7. Test missing lower casing of "unknown" characters
+--character_set utf8
+--lowercase_result
+SELECT 0 as "WILL NOT lower case ÄËÐ";
+--character_set latin1
+
# ----------------------------------------------------------------------------
# Some coverage tests
# ----------------------------------------------------------------------------
@@ -2230,9 +2419,14 @@ rmdir $MYSQLTEST_VARDIR/tmp/testdir;
cat_file $MYSQLTEST_VARDIR/tmp/testdir/file3.txt;
-remove_file $MYSQLTEST_VARDIR/tmp/testdir/file1.txt;
-remove_file $MYSQLTEST_VARDIR/tmp/testdir/file2.txt;
-remove_file $MYSQLTEST_VARDIR/tmp/testdir/file3.txt;
+list_files_write_file $MYSQLTEST_VARDIR/tmp/testdir/file11.txt $MYSQLTEST_VARDIR/tmp/testdir file?.txt;
+remove_files_wildcard $MYSQLTEST_VARDIR/tmp/testdir file?.txt;
+list_files_write_file $MYSQLTEST_VARDIR/tmp/testdir/dir-list.txt $MYSQLTEST_VARDIR/tmp/testdir file*.txt;
+cat_file $MYSQLTEST_VARDIR/tmp/testdir/dir-list.txt;
+remove_files_wildcard $MYSQLTEST_VARDIR/tmp/testdir file*.txt;
+list_files $MYSQLTEST_VARDIR/tmp/testdir;
+remove_files_wildcard $MYSQLTEST_VARDIR/tmp/testdir;
+list_files $MYSQLTEST_VARDIR/tmp/testdir;
rmdir $MYSQLTEST_VARDIR/tmp/testdir;
#
diff --git a/mysql-test/t/no_binlog.test b/mysql-test/t/no_binlog.test
new file mode 100644
index 00000000000..fa9c87079de
--- /dev/null
+++ b/mysql-test/t/no_binlog.test
@@ -0,0 +1,6 @@
+-- source include/not_embedded.inc
+
+# BUG#50780: 'show binary logs' debug assertion when binary logging is disabled
+
+-- error ER_NO_BINARY_LOGGING
+SHOW BINARY LOGS;
diff --git a/mysql-test/t/not_embedded_server.test b/mysql-test/t/not_embedded_server.test
index fa2b659ec57..917d5871682 100644
--- a/mysql-test/t/not_embedded_server.test
+++ b/mysql-test/t/not_embedded_server.test
@@ -4,12 +4,6 @@
-- source include/not_embedded.inc
-#
-# Produce output
-#
-
-select 1;
-
# The following fails sporadically because 'check-testcase' runs
# queries before this test and there is no way to guarantee that any
# previous process finishes. The purpose of the test is not clearly
@@ -36,6 +30,8 @@ select 1;
#execute stmt1;
#deallocate prepare stmt1;
+call mtr.add_suppression("Can't open and lock privilege tables: Table 'host' was not locked with LOCK TABLES");
+
#
# Bug#43835: SHOW VARIABLES does not include 0 for slave_skip_errors
#
@@ -43,3 +39,18 @@ select 1;
SHOW VARIABLES like 'slave_skip_errors';
# End of 5.1 tests
+
+--echo #
+--echo # WL#4284: Transactional DDL locking
+--echo #
+--echo # FLUSH PRIVILEGES should not implicitly unlock locked tables.
+--echo #
+--disable_warnings
+drop table if exists t1;
+--enable_warnings
+create table t1 (c1 int);
+lock tables t1 read;
+--error ER_TABLE_NOT_LOCKED
+flush privileges;
+unlock tables;
+drop table t1;
diff --git a/mysql-test/t/order_fill_sortbuf-master.opt b/mysql-test/t/order_fill_sortbuf-master.opt
index 9aa3cc76221..7b6ade99226 100644
--- a/mysql-test/t/order_fill_sortbuf-master.opt
+++ b/mysql-test/t/order_fill_sortbuf-master.opt
@@ -1 +1 @@
---set-variable=sort_buffer=32804
+--sort_buffer=32804
diff --git a/mysql-test/t/partition.test b/mysql-test/t/partition.test
index 1904b4cb805..18b7e0d343b 100644
--- a/mysql-test/t/partition.test
+++ b/mysql-test/t/partition.test
@@ -95,6 +95,19 @@ show indexes from t1;
drop table t1;
#
+# Bug#40181: hang if create index
+#
+create table t1 (a int)
+partition by hash (a);
+create index i on t1 (a);
+insert into t1 values (1);
+insert into t1 select * from t1;
+--error ER_DUP_KEYNAME
+create index i on t1 (a);
+create index i2 on t1 (a);
+drop table t1;
+
+#
# Bug#36001: Partitions: spelling and using some error messages
#
--error ER_FOREIGN_KEY_ON_PARTITIONED
diff --git a/mysql-test/t/partition_debug_sync.test b/mysql-test/t/partition_debug_sync.test
new file mode 100644
index 00000000000..9165006f537
--- /dev/null
+++ b/mysql-test/t/partition_debug_sync.test
@@ -0,0 +1,89 @@
+#--disable_abort_on_error
+#
+# Test for the partition storage engine which require DEBUG_SYNC feature to
+# Created by Mattias Jonsson
+#
+--source include/have_partition.inc
+--source include/have_debug_sync.inc
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+SET DEBUG_SYNC= 'RESET';
+--enable_warnings
+
+--echo #
+--echo # Bug#42438: Crash ha_partition::change_table_ptr
+--echo # Test when remove partitioning is done while drop table is waiting
+--echo # for the table.
+--echo # After MDL was introduced, there is no longer any race, so test is done
+--echo # by adding a small sleep to verify that the delete waits.
+connect(con1, localhost, root,,);
+--echo # Con 1
+SET DEBUG_SYNC= 'RESET';
+CREATE TABLE t1
+(a INTEGER,
+ b INTEGER NOT NULL,
+ KEY (b))
+ENGINE = MYISAM
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (2),
+ PARTITION p1 VALUES LESS THAN (20),
+ PARTITION p2 VALUES LESS THAN (100),
+ PARTITION p3 VALUES LESS THAN MAXVALUE ) */;
+SET SESSION debug= "+d,sleep_before_create_table_no_lock";
+SET DEBUG_SYNC= 'alter_table_before_create_table_no_lock SIGNAL removing_partitioning WAIT_FOR waiting_for_alter';
+SET DEBUG_SYNC= 'alter_table_before_main_binlog SIGNAL partitioning_removed';
+--send ALTER TABLE t1 REMOVE PARTITIONING
+connection default;
+--echo # Con default
+SET DEBUG_SYNC= 'now WAIT_FOR removing_partitioning';
+SET DEBUG_SYNC= 'mdl_acquire_lock_wait SIGNAL waiting_for_alter';
+SET DEBUG_SYNC= 'rm_table_part2_before_delete_table WAIT_FOR partitioning_removed';
+DROP TABLE IF EXISTS t1;
+--echo # Con 1
+connection con1;
+--reap
+SET SESSION debug= "-d,sleep_before_create_table_no_lock";
+connection default;
+SET DEBUG_SYNC= 'RESET';
+connection con1;
+SET DEBUG_SYNC= 'RESET';
+
+--echo #
+--echo # Bug#42438: Crash ha_partition::change_table_ptr
+--echo # Test when remove partitioning is failing due to drop table is already
+--echo # in progress.
+--echo # After MDL was introduced, there is no longer any race, so test is done
+--echo # by adding a small sleep to verify that the alter waits.
+CREATE TABLE t2
+(a INTEGER,
+ b INTEGER NOT NULL,
+ KEY (b))
+ENGINE = MYISAM
+/*!50100 PARTITION BY RANGE (a)
+(PARTITION p0 VALUES LESS THAN (2),
+ PARTITION p1 VALUES LESS THAN (20),
+ PARTITION p2 VALUES LESS THAN (100),
+ PARTITION p3 VALUES LESS THAN MAXVALUE ) */;
+SET DEBUG_SYNC= 'open_tables_acquire_upgradable_mdl SIGNAL removing_partitions WAIT_FOR waiting_for_alter';
+SET DEBUG_SYNC= 'alter_table_before_rename_result_table WAIT_FOR delete_done';
+--send ALTER TABLE t2 REMOVE PARTITIONING
+connection default;
+--echo # Con default
+SET SESSION debug= "+d,sleep_before_part2_delete_table";
+SET DEBUG_SYNC= 'now WAIT_FOR removing_partitions';
+SET DEBUG_SYNC= 'rm_table_part2_before_delete_table SIGNAL waiting_for_alter';
+SET DEBUG_SYNC= 'rm_table_part2_before_binlog SIGNAL delete_done';
+DROP TABLE IF EXISTS t2;
+SET SESSION debug= "-d,sleep_before_part2_delete_table";
+--echo # Con 1
+connection con1;
+--error ER_NO_SUCH_TABLE
+--reap
+SET DEBUG_SYNC= 'RESET';
+disconnect con1;
+connection default;
+--echo # Con default
+SET DEBUG_SYNC= 'RESET';
+
+--echo End of 5.1 tests
diff --git a/mysql-test/t/partition_innodb-master.opt b/mysql-test/t/partition_innodb-master.opt
deleted file mode 100644
index 462f8fbe828..00000000000
--- a/mysql-test/t/partition_innodb-master.opt
+++ /dev/null
@@ -1 +0,0 @@
---innodb_lock_wait_timeout=1
diff --git a/mysql-test/t/partition_innodb.test b/mysql-test/t/partition_innodb.test
index a910bbb001e..a2764766c4e 100644
--- a/mysql-test/t/partition_innodb.test
+++ b/mysql-test/t/partition_innodb.test
@@ -350,6 +350,7 @@ DROP TABLE t1;
# Before the fix it should show extra file like #sql-2405_2.par
--list_files $MYSQLD_DATADIR/test/ *
+--disable_parsing
--echo #
--echo # Bug#47343: InnoDB fails to clean-up after lock wait timeout on
--echo # REORGANIZE PARTITION
@@ -390,3 +391,4 @@ connection default;
SELECT * FROM t1;
COMMIT;
DROP TABLE t1;
+--enable_parsing
diff --git a/mysql-test/t/partition_innodb_semi_consistent.test b/mysql-test/t/partition_innodb_semi_consistent.test
index 6a6a7cf958e..294521a45d5 100644
--- a/mysql-test/t/partition_innodb_semi_consistent.test
+++ b/mysql-test/t/partition_innodb_semi_consistent.test
@@ -157,7 +157,7 @@ connection con1;
--echo # 3. test for updated key column:
TRUNCATE t1;
-TRUNCATE t2;
+DELETE FROM t2;
INSERT INTO t1 VALUES (1,'init');
@@ -187,6 +187,7 @@ SELECT * FROM t1;
--echo # Switch to connection con2
connection con2;
+reap;
SELECT * FROM t1;
connection default;
diff --git a/mysql-test/t/partition_sync.test b/mysql-test/t/partition_sync.test
index a732b35b8b9..85eb33ebb6b 100644
--- a/mysql-test/t/partition_sync.test
+++ b/mysql-test/t/partition_sync.test
@@ -1,4 +1,5 @@
--source include/have_partition.inc
+--source include/have_debug.inc
# Save the initial number of concurrent sessions.
--source include/count_sessions.inc
@@ -36,6 +37,57 @@ disconnect con1;
DROP TABLE t1;
+--echo #
+--echo # Bug #46654 False deadlock on concurrent DML/DDL
+--echo # with partitions, inconsistent behavior
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS tbl_with_partitions;
+--enable_warnings
+
+CREATE TABLE tbl_with_partitions ( i INT )
+ PARTITION BY HASH(i);
+INSERT INTO tbl_with_partitions VALUES (1);
+
+connect(con2,localhost,root);
+connect(con3,localhost,root);
+
+--echo # Connection 3
+connection con3;
+LOCK TABLE tbl_with_partitions READ;
+
+--echo # Connection 1
+--echo # Access table with disabled autocommit
+connection default;
+SET AUTOCOMMIT = 0;
+SELECT * FROM tbl_with_partitions;
+
+--echo # Connection 2
+--echo # Alter table, abort after prepare
+connection con2;
+set session debug="+d,abort_copy_table";
+--error ER_LOCK_WAIT_TIMEOUT
+ALTER TABLE tbl_with_partitions ADD COLUMN f INT;
+
+--echo # Connection 1
+--echo # Try accessing the table after Alter aborted.
+--echo # This used to give ER_LOCK_DEADLOCK.
+connection default;
+SELECT * FROM tbl_with_partitions;
+
+--echo # Connection 3
+connection con3;
+UNLOCK TABLES;
+
+--echo # Connection 1
+--echo # Cleanup
+connection default;
+disconnect con2;
+disconnect con3;
+DROP TABLE tbl_with_partitions;
+
+
# Check that all connections opened by test cases in this file are really
# gone so execution of other tests won't be affected by their presence.
--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/perror.test b/mysql-test/t/perror.test
index a4b99d8aa22..2b9907c0542 100644
--- a/mysql-test/t/perror.test
+++ b/mysql-test/t/perror.test
@@ -1,3 +1,4 @@
+--source include/not_windows.inc
#
# Check if the variable MY_PERROR is set
#
@@ -17,3 +18,17 @@ enable_query_log;
# As there is no error code defined for 10000, expect error
--error 1
--exec $MY_PERROR 10000 2>&1
+
+#
+# Bug#10143 (Perror not showing error description)
+#
+
+# test reported case
+--exec $MY_PERROR 1062 2>&1
+
+# test errors that contain characters to escape in the text.
+--exec $MY_PERROR 1076 2>&1
+--exec $MY_PERROR 1459 2>&1
+--exec $MY_PERROR 1461 2>&1
+
+
diff --git a/mysql-test/t/ps-master.opt b/mysql-test/t/ps-master.opt
index 31c287d2bb5..1deeb6c9c63 100644
--- a/mysql-test/t/ps-master.opt
+++ b/mysql-test/t/ps-master.opt
@@ -1 +1 @@
---log-output=table,file --log-slow-queries --log-long-format --log-queries-not-using-indexes
+--log-output=table,file --log-slow-queries --log-queries-not-using-indexes
diff --git a/mysql-test/t/ps.test b/mysql-test/t/ps.test
index 6b12832b17b..dcea4d9828b 100644
--- a/mysql-test/t/ps.test
+++ b/mysql-test/t/ps.test
@@ -3267,7 +3267,44 @@ DROP PROCEDURE p2;
###########################################################################
---echo
---echo End of 6.0 tests.
+
+--echo #
+--echo # WL#4284: Transactional DDL locking
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+CREATE TABLE t1 (a INT);
+BEGIN;
+SELECT * FROM t1;
+--echo # Test that preparing a CREATE TABLE does not take a exclusive metdata lock.
+PREPARE stmt1 FROM "CREATE TABLE t1 AS SELECT 1";
+--error ER_TABLE_EXISTS_ERROR
+EXECUTE stmt1;
+DEALLOCATE PREPARE stmt1;
+DROP TABLE t1;
+
+--echo #
+--echo # WL#4284: Transactional DDL locking
+--echo #
+--echo # Test that metadata locks taken during prepare are released.
+--echo #
+
+connect(con1,localhost,root,,);
+connection default;
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+CREATE TABLE t1 (a INT);
+connection con1;
+BEGIN;
+PREPARE stmt1 FROM "SELECT * FROM t1";
+connection default;
+DROP TABLE t1;
+disconnect con1;
+
+--echo #
+--echo # End of 6.0 tests.
###########################################################################
diff --git a/mysql-test/t/ps_ddl.test b/mysql-test/t/ps_ddl.test
index 1543c757908..3803a0daf52 100644
--- a/mysql-test/t/ps_ddl.test
+++ b/mysql-test/t/ps_ddl.test
@@ -278,8 +278,6 @@ deallocate prepare stmt;
--echo # Test 7-a: dependent PROCEDURE has changed
--echo #
---echo # Note, this scenario is not supported, subject of Bug#12093
---echo #
create table t1 (a int);
create trigger t1_ai after insert on t1 for each row
@@ -291,11 +289,10 @@ execute stmt using @var;
drop procedure p1;
create procedure p1 (a int) begin end;
set @var= 2;
---error ER_SP_DOES_NOT_EXIST
execute stmt using @var;
--echo # Cleanup
drop procedure p1;
-call p_verify_reprepare_count(0);
+call p_verify_reprepare_count(1);
--echo # Test 7-b: dependent FUNCTION has changed
--echo #
@@ -355,11 +352,13 @@ set @var=8;
--echo # XXX: bug, the SQL statement in the trigger is still
--echo # pointing at table 't3', since the view was expanded
--echo # at first statement execution.
+--echo # Since the view definition is inlined in the statement
+--echo # at prepare, changing the view definition does not cause
+--echo # repreparation.
--echo # Repreparation of the main statement doesn't cause repreparation
--echo # of trigger statements.
---error ER_NO_SUCH_TABLE
execute stmt using @var;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
--echo #
--echo # Sic: the insert went into t3, even though the view now
--echo # points at t2. This is because neither the merged view
@@ -642,6 +641,9 @@ deallocate prepare stmt;
--echo Part 16: VIEW -> TEMPORARY TABLE transitions
--echo =====================================================================
+--echo #
+--echo # Test 1: Merged view
+--echo #
create table t2 (a int);
insert into t2 (a) values (1);
create view t1 as select * from t2;
@@ -651,9 +653,39 @@ execute stmt;
call p_verify_reprepare_count(0);
create temporary table t1 (a int);
+# t1 still refers to the view - no reprepare has been done.
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
+
+drop view t1;
+# t1 still refers to the, now deleted, view - no reprepare has been done.
+--error ER_NO_SUCH_TABLE
+execute stmt;
+call p_verify_reprepare_count(0);
+
+drop table t2;
+drop temporary table t1;
+deallocate prepare stmt;
+
+--echo #
+--echo # Test 2: Materialized view
+--echo #
+create table t2 (a int);
+insert into t2 (a) values (1);
+create algorithm = temptable view t1 as select * from t2;
+
+prepare stmt from "select * from t1";
+execute stmt;
+call p_verify_reprepare_count(0);
+
+create temporary table t1 (a int);
+# t1 still refers to the view - no reprepare has been done.
+execute stmt;
+call p_verify_reprepare_count(0);
+
drop view t1;
+# t1 still refers to the, now deleted, view - no reprepare has been done.
+--error ER_NO_SUCH_TABLE
execute stmt;
call p_verify_reprepare_count(0);
@@ -661,6 +693,28 @@ drop table t2;
drop temporary table t1;
deallocate prepare stmt;
+--echo #
+--echo # Test 3: View referencing an Information schema table
+--echo #
+create view t1 as select table_name from information_schema.views;
+
+prepare stmt from "select * from t1";
+execute stmt;
+call p_verify_reprepare_count(0);
+
+create temporary table t1 (a int);
+# t1 has been substituted with a reference to the IS table
+execute stmt;
+call p_verify_reprepare_count(0);
+
+drop view t1;
+# Since the IS table has been substituted in, the statement still works
+execute stmt;
+call p_verify_reprepare_count(0);
+
+drop temporary table t1;
+deallocate prepare stmt;
+
--echo =====================================================================
--echo Part 17: VIEW -> VIEW (DDL) transitions
--echo =====================================================================
@@ -1447,7 +1501,7 @@ drop table t2;
create temporary table t2 (a int);
# Temporary table and base table are not in the same name space.
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
--error ER_TABLE_EXISTS_ERROR
execute stmt;
call p_verify_reprepare_count(1);
@@ -1457,7 +1511,7 @@ execute stmt;
call p_verify_reprepare_count(0);
drop table t2;
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
drop table t2;
# View with name of table to be created exists
# Attention:
@@ -1494,27 +1548,24 @@ execute stmt;
call p_verify_reprepare_count(0);
drop table t1;
deallocate prepare stmt;
---echo # XXX: no validation of the first table in case of
---echo # CREATE TEMPORARY TABLE. This is a shortcoming of the current code,
---echo # but since validation is not strictly necessary, nothing is done
---echo # about it.
---echo # Will be fixed as part of work on Bug#21431 "Incomplete support of
---echo # temporary tables"
create table t1 (a int);
insert into t1 (a) values (1);
prepare stmt from "create temporary table if not exists t2 as select * from t1";
execute stmt;
drop table t2;
execute stmt;
+call p_verify_reprepare_count(0);
execute stmt;
+call p_verify_reprepare_count(1);
select * from t2;
execute stmt;
+call p_verify_reprepare_count(0);
select * from t2;
drop table t2;
create temporary table t2 (a varchar(10));
execute stmt;
select * from t2;
-call p_verify_reprepare_count(0);
+call p_verify_reprepare_count(1);
drop table t1;
create table t1 (x int);
execute stmt;
diff --git a/mysql-test/t/ps_ddl1.test b/mysql-test/t/ps_ddl1.test
index 379ed576b5f..0145d445a14 100644
--- a/mysql-test/t/ps_ddl1.test
+++ b/mysql-test/t/ps_ddl1.test
@@ -363,7 +363,7 @@ end|
delimiter ;|
--error ER_SP_DOES_NOT_EXIST
execute stmt;
-call p_verify_reprepare_count(1);
+call p_verify_reprepare_count(0);
--error ER_SP_DOES_NOT_EXIST
execute stmt;
call p_verify_reprepare_count(0);
diff --git a/mysql-test/t/query_cache.test b/mysql-test/t/query_cache.test
index 993f231759b..ce49ca89eca 100644
--- a/mysql-test/t/query_cache.test
+++ b/mysql-test/t/query_cache.test
@@ -1363,3 +1363,22 @@ SELECT SQL_CACHE * FROM t1 WHERE a IN
DROP TABLE t1;
--echo End of 5.1 tests
+
+
+--echo #
+--echo # Bug#51336 Assert in reload_acl_and_cache during RESET QUERY CACHE
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1(id INT);
+
+START TRANSACTION;
+SELECT * FROM t1;
+# This caused an assert
+RESET QUERY CACHE;
+
+COMMIT;
+DROP TABLE t1;
diff --git a/mysql-test/t/query_cache_28249.test b/mysql-test/t/query_cache_28249.test
index 390a1ce6e3d..c95d7553988 100644
--- a/mysql-test/t/query_cache_28249.test
+++ b/mysql-test/t/query_cache_28249.test
@@ -58,18 +58,18 @@ connection user3;
# Typical information_schema.processlist content after sufficient sleep time
# ID USER COMMAND TIME STATE INFO
# ....
-# 2 root Query 5 Locked SELECT *, (SELECT COUNT(*) FROM t2) FROM t1
+# 2 root Query 5 Table lock SELECT *, (SELECT COUNT(*) FROM t2) FROM t1
# ....
# XXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
# The values marked with 'X' must be reached.
--echo # Poll till the select of connection user1 is blocked by the write lock on t1.
let $wait_condition= SELECT COUNT(*) = 1 FROM information_schema.processlist
-WHERE state = 'Locked'
+WHERE state = 'Table lock'
AND info = '$select_for_qc';
--source include/wait_condition.inc
eval
SELECT user,command,state,info FROM information_schema.processlist
-WHERE state = 'Locked'
+WHERE state = 'Table lock'
AND info = '$select_for_qc';
INSERT INTO t1 VALUES (4);
diff --git a/mysql-test/t/read_only_innodb.test b/mysql-test/t/read_only_innodb.test
index f8c25fdee1d..3bb626f2ca7 100644
--- a/mysql-test/t/read_only_innodb.test
+++ b/mysql-test/t/read_only_innodb.test
@@ -33,7 +33,7 @@ set global read_only=1;
connection con1;
select @@global.read_only;
select * from table_11733 ;
--- error ER_OPTION_PREVENTS_STATEMENT
+--error ER_OPTION_PREVENTS_STATEMENT
COMMIT;
connection default;
@@ -83,3 +83,149 @@ DROP USER test@localhost;
disconnect con1;
--echo echo End of 5.1 tests
+
+--echo #
+--echo # Bug#33669: Transactional temporary tables do not work under --read-only
+--echo #
+
+--disable_warnings
+DROP DATABASE IF EXISTS db1;
+--enable_warnings
+
+--echo # Setup user and tables
+CREATE USER bug33669@localhost;
+CREATE DATABASE db1;
+CREATE TABLE db1.t1 (a INT) ENGINE=INNODB;
+CREATE TABLE db1.t2 (a INT) ENGINE=INNODB;
+INSERT INTO db1.t1 VALUES (1);
+INSERT INTO db1.t2 VALUES (2);
+GRANT CREATE TEMPORARY TABLES, DROP, INSERT, DELETE, UPDATE,
+ SELECT, LOCK TABLES ON db1.* TO bug33669@localhost;
+SET GLOBAL READ_ONLY = ON;
+connect(con1,localhost,bug33669,,db1);
+--echo # Connection con1 (user bug33669):
+
+--echo
+--echo # Create, insert and drop temporary table:
+--echo
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+INSERT INTO temp VALUES (1);
+DROP TABLE temp;
+
+--echo
+--echo # Lock base tables and use temporary table:
+--echo
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+LOCK TABLES t1 READ, t2 READ;
+SELECT * FROM t1;
+INSERT INTO temp values (1);
+SELECT * FROM t2;
+UNLOCK TABLES;
+DROP TABLE temp;
+
+--echo
+--echo # Transaction
+--echo
+BEGIN;
+SELECT * FROM t1;
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+--error ER_OPTION_PREVENTS_STATEMENT
+INSERT INTO t1 VALUES (1);
+INSERT INTO temp VALUES (1);
+SELECT * FROM t2;
+ROLLBACK;
+SELECT * FROM temp;
+DROP TABLE temp;
+
+--echo
+--echo # Lock base table as READ and temporary table as WRITE:
+--echo
+CREATE TEMPORARY TABLE temp (a INT) ENGINE=INNODB;
+LOCK TABLES t1 READ, temp WRITE;
+SELECT * FROM t1;
+SELECT * FROM temp;
+--error ER_OPTION_PREVENTS_STATEMENT
+INSERT INTO t1 VALUES (1);
+INSERT INTO temp VALUES (1);
+DROP TABLE temp;
+UNLOCK TABLES;
+
+--echo
+--echo # Lock temporary table that shadows a base table:
+--echo
+CREATE TEMPORARY TABLE t1 (a INT) ENGINE=INNODB;
+LOCK TABLES t1 WRITE;
+DROP TABLE t1;
+--error ER_TABLE_NOT_LOCKED
+SELECT * FROM t1;
+
+--echo
+--echo # INSERT SELECT from base table into temporary table:
+--echo
+
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+BEGIN;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+SELECT * FROM temp2 ORDER BY a;
+ROLLBACK;
+SELECT * FROM temp1,temp2;
+LOCK TABLES t1 READ, t2 READ;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+SELECT * FROM temp2 ORDER BY a;
+UNLOCK TABLES;
+DELETE temp1, temp2 FROM temp1, temp2;
+INSERT INTO temp1 VALUES (10);
+INSERT INTO temp2 VALUES (10);
+INSERT INTO temp1 SELECT * FROM t1;
+INSERT INTO temp2 SELECT * FROM t2;
+SELECT * FROM temp1 ORDER BY a;
+SELECT * FROM temp2 ORDER BY a;
+DROP TABLE temp1, temp2;
+
+--echo
+--echo # INSERT and INSERT SELECT that uses subqueries:
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+INSERT INTO temp1 (a) VALUES ((SELECT MAX(a) FROM t1));
+LOCK TABLES t2 READ;
+INSERT INTO temp2 (a) VALUES ((SELECT MAX(a) FROM t2));
+UNLOCK TABLES;
+LOCK TABLES t1 READ, t2 READ;
+INSERT INTO temp1 SELECT * FROM t1 WHERE a < (SELECT MAX(a) FROM t2);
+INSERT INTO temp2 SELECT * FROM t2 WHERE a > (SELECT MAX(a) FROM t1);
+UNLOCK TABLES;
+INSERT INTO temp1 SELECT * FROM t1 WHERE a < (SELECT MAX(a) FROM t2);
+INSERT INTO temp2 SELECT * FROM t2 WHERE a > (SELECT MAX(a) FROM t1);
+SELECT * FROM temp1 ORDER BY a;
+SELECT * FROM temp2 ORDER BY a;
+DROP TABLE temp1, temp2;
+
+--echo
+--echo # Multiple table update:
+--echo
+
+CREATE TEMPORARY TABLE temp1 (a INT) ENGINE=INNODB;
+CREATE TEMPORARY TABLE temp2 LIKE temp1;
+INSERT INTO temp1 VALUES (1),(2);
+INSERT INTO temp2 VALUES (3),(4);
+UPDATE temp1,temp2 SET temp1.a = 5, temp2.a = 10;
+SELECT * FROM temp1, temp2;
+DROP TABLE temp1, temp2;
+
+--echo
+--echo # Disconnect and cleanup
+--echo
+disconnect con1;
+connection default;
+SET GLOBAL READ_ONLY = OFF;
+DROP USER bug33669@localhost;
+DROP DATABASE db1;
diff --git a/mysql-test/t/repair.test b/mysql-test/t/repair.test
index eb2ca7992a6..3c55f06ff4c 100644
--- a/mysql-test/t/repair.test
+++ b/mysql-test/t/repair.test
@@ -158,3 +158,33 @@ CREATE TEMPORARY TABLE tt1 (c1 INT);
REPAIR TABLE tt1 USE_FRM;
DROP TABLE tt1;
+
+--echo #
+--echo # Bug #48248 assert in MDL_ticket::upgrade_shared_lock_to_exclusive
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1(a INT);
+LOCK TABLES t1 READ;
+REPAIR TABLE t1;
+
+UNLOCK TABLES;
+DROP TABLE t1;
+
+
+--echo #
+--echo # Test for bug #50784 "MDL: Assertion `m_tickets.is_empty() ||
+--echo # m_tickets.front() == m_trans_sentinel'"
+--echo #
+--disable_warnings
+drop tables if exists t1, t2;
+--enable_warnings
+create table t1 (i int);
+create table t2 (j int);
+set @@autocommit= 0;
+repair table t1, t2;
+set @@autocommit= default;
+drop tables t1, t2;
diff --git a/mysql-test/t/schema.test b/mysql-test/t/schema.test
index a08d9b38935..f106b9e4865 100644
--- a/mysql-test/t/schema.test
+++ b/mysql-test/t/schema.test
@@ -4,6 +4,9 @@
# Drop mysqltest1 database, as it can left from the previous tests.
#
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
--disable_warnings
drop database if exists mysqltest1;
--enable_warnings
@@ -12,3 +15,93 @@ create schema foo;
show create schema foo;
show schemas;
drop schema foo;
+
+
+--echo #
+--echo # Bug #48940 MDL deadlocks against mysql_rm_db
+--echo #
+
+--disable_warnings
+DROP SCHEMA IF EXISTS schema1;
+--enable_warnings
+
+connect(con2, localhost, root);
+
+--echo # Connection default
+connection default;
+
+CREATE SCHEMA schema1;
+CREATE TABLE schema1.t1 (a INT);
+
+SET autocommit= FALSE;
+INSERT INTO schema1.t1 VALUES (1);
+
+--echo # Connection 2
+connection con2;
+--send DROP SCHEMA schema1
+
+--echo # Connection default
+connection default;
+let $wait_condition= SELECT COUNT(*)= 1 FROM information_schema.processlist
+ WHERE state= 'Waiting for table'
+ AND info='DROP SCHEMA schema1';
+--source include/wait_condition.inc
+# Listing the error twice to prevent result diffences based on filename
+--error 1,1
+ALTER SCHEMA schema1 DEFAULT CHARACTER SET utf8;
+SET autocommit= TRUE;
+
+--echo # Connection 2
+connection con2;
+--reap
+
+--echo # Connection default
+connection default;
+disconnect con2;
+
+
+--echo #
+--echo # Bug #49988 MDL deadlocks with mysql_create_db, reload_acl_and_cache
+--echo #
+
+--disable_warnings
+DROP SCHEMA IF EXISTS schema1;
+--enable_warnings
+
+connect (con2, localhost, root);
+
+--echo # Connection default
+connection default;
+CREATE SCHEMA schema1;
+CREATE TABLE schema1.t1 (id INT);
+LOCK TABLE schema1.t1 WRITE;
+
+--echo # Connection con2
+connection con2;
+--send DROP SCHEMA schema1
+
+--echo # Connection default
+connection default;
+let $wait_condition=SELECT COUNT(*)=1 FROM information_schema.processlist
+ WHERE state='Waiting for table' and info='DROP SCHEMA schema1';
+--source include/wait_condition.inc
+
+--echo # CREATE SCHEMA used to give a deadlock.
+--echo # Now we prohibit CREATE SCHEMA in LOCK TABLES mode.
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+CREATE SCHEMA IF NOT EXISTS schema1;
+
+--echo # UNLOCK TABLES so DROP SCHEMA can continue.
+UNLOCK TABLES;
+
+--echo # Connection con2
+connection con2;
+--reap
+
+--echo # Connection default
+connection default;
+disconnect con2;
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/show_check-master.opt b/mysql-test/t/show_check-master.opt
index aab832e2848..108caf42203 100644
--- a/mysql-test/t/show_check-master.opt
+++ b/mysql-test/t/show_check-master.opt
@@ -1 +1 @@
---log-output=table,file --log-slow-queries --log-long-format --log-queries-not-using-indexes --myisam-recover=""
+--log-output=table,file --log-slow-queries --log-queries-not-using-indexes --myisam-recover=""
diff --git a/mysql-test/t/show_profile.test b/mysql-test/t/show_profile.test
new file mode 100644
index 00000000000..c20b29c40bf
--- /dev/null
+++ b/mysql-test/t/show_profile.test
@@ -0,0 +1,18 @@
+#
+# Test for show profiles
+# No meaningful check is possible.
+# So it only checks that SET profiling is possible and
+# that SHOW PROFILES, SHOW PROFILE FOR QUERY and SHOW PROFILE CPU FOR QUERY
+# do not cause syntax errors. It also increases code coverage for sql_profile.cc
+
+--source include/have_profiling.inc
+SET profiling = 1;
+SELECT 1;
+--replace_column 2 #
+SHOW PROFILES;
+--disable_result_log
+SHOW PROFILE FOR QUERY 1;
+SHOW PROFILE CPU FOR QUERY 1;
+--enable_result_log
+SET profiling = 0;
+
diff --git a/mysql-test/t/sp-bugs.test b/mysql-test/t/sp-bugs.test
index 7b94e65a5e9..8aa0791e265 100644
--- a/mysql-test/t/sp-bugs.test
+++ b/mysql-test/t/sp-bugs.test
@@ -57,5 +57,48 @@ SELECT f2 ();
DROP SCHEMA testdb;
+USE test;
+
+--echo #
+--echo # Bug#50423: Crash on second call of a procedure dropping a trigger
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP TRIGGER IF EXISTS tr1;
+DROP PROCEDURE IF EXISTS p1;
+--enable_warnings
+
+CREATE TABLE t1 (f1 INTEGER);
+CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
+CREATE PROCEDURE p1 () DROP TRIGGER tr1;
+
+CALL p1 ();
+--error ER_TRG_DOES_NOT_EXIST
+CALL p1 ();
+
+DROP TABLE t1;
+DROP PROCEDURE p1;
+
+--echo #
+--echo # Bug#50423: Crash on second call of a procedure dropping a trigger
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP TRIGGER IF EXISTS tr1;
+DROP PROCEDURE IF EXISTS p1;
+--enable_warnings
+
+CREATE TABLE t1 (f1 INTEGER);
+CREATE TRIGGER tr1 BEFORE INSERT ON t1 FOR EACH ROW SET @aux = 1;
+CREATE PROCEDURE p1 () DROP TRIGGER tr1;
+
+CALL p1 ();
+--error ER_TRG_DOES_NOT_EXIST
+CALL p1 ();
+
+DROP TABLE t1;
+DROP PROCEDURE p1;
--echo End of 5.1 tests
diff --git a/mysql-test/t/sp-destruct.test b/mysql-test/t/sp-destruct.test
index 720c24b2c24..b7090c01f1e 100644
--- a/mysql-test/t/sp-destruct.test
+++ b/mysql-test/t/sp-destruct.test
@@ -197,3 +197,28 @@ SHOW PROCEDURE STATUS;
DROP TABLE mysql.proc;
RENAME TABLE proc_backup TO mysql.proc;
FLUSH TABLE mysql.proc;
+
+
+--echo #
+--echo # Bug#51376 Assert `! is_set()' failed in
+--echo # Diagnostics_area::set_ok_status on DROP FUNCTION
+--echo #
+
+--disable_warnings
+DROP FUNCTION IF EXISTS f1;
+--enable_warnings
+
+CREATE FUNCTION f1() RETURNS INT RETURN 1;
+
+--echo # Backup the procs_priv table
+RENAME TABLE mysql.procs_priv TO procs_priv_backup;
+FLUSH TABLE mysql.procs_priv;
+
+# DROP FUNCTION used to cause an assert.
+--error ER_NO_SUCH_TABLE
+DROP FUNCTION f1;
+SHOW WARNINGS;
+
+--echo # Restore the procs_priv table
+RENAME TABLE procs_priv_backup TO mysql.procs_priv;
+FLUSH TABLE mysql.procs_priv;
diff --git a/mysql-test/t/sp-error.test b/mysql-test/t/sp-error.test
index e33adf56284..c8b2595e23d 100644
--- a/mysql-test/t/sp-error.test
+++ b/mysql-test/t/sp-error.test
@@ -723,7 +723,7 @@ lock table t1 read|
# This should fail since we forgot to lock mysql.proc for writing
# explicitly, and we can't open mysql.proc for _writing_ if there
# are locked tables.
---error 1100
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
alter procedure bug9566 comment 'Some comment'|
unlock tables|
# This should succeed
@@ -2490,6 +2490,35 @@ SELECT AVG (a) FROM t1 WHERE b = 999999;
SELECT non_existent (a) FROM t1 WHERE b = 999999;
DROP TABLE t1;
+
+#
+# Bug #46374 crash, INSERT INTO t1 uses function, function modifies t1
+#
+CREATE TABLE t1 ( f2 INTEGER, f3 INTEGER );
+INSERT INTO t1 VALUES ( 1, 1 );
+
+delimiter |;
+
+CREATE FUNCTION func_1 () RETURNS INTEGER
+BEGIN
+ INSERT INTO t1 SELECT * FROM t1 ;
+ RETURN 1 ;
+END|
+
+delimiter ;|
+
+# The bug caused the following INSERT statement to trigger
+# an assertion. Error 1442 is the correct response
+#
+--error 1442
+INSERT INTO t1 SELECT * FROM (SELECT 2 AS f1, 2 AS f2) AS A WHERE func_1() = 5;
+
+# Cleanup
+DROP FUNCTION func_1;
+DROP TABLE t1;
+
+
+
--echo #
--echo # Bug #47788: Crash in TABLE_LIST::hide_view_error on UPDATE + VIEW +
--echo # SP + MERGE + ALTER
@@ -2513,3 +2542,4 @@ DROP VIEW v1;
DROP TABLE t1;
--echo End of 5.1 tests
+
diff --git a/mysql-test/t/sp-lock.test b/mysql-test/t/sp-lock.test
new file mode 100644
index 00000000000..0b31eabb0f1
--- /dev/null
+++ b/mysql-test/t/sp-lock.test
@@ -0,0 +1,898 @@
+# Copyright (C) 2009 Sun Microsystems, Inc
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+#
+# Metadata lock handling for stored procedures and
+# functions.
+#
+--echo #
+--echo # Test coverage for changes performed by the fix
+--echo # for Bug#30977 "Concurrent statement using stored function
+--echo # and DROP FUNCTION breaks SBR.
+--echo #
+
+--echo #
+--echo # 1) Verify that the preceding transaction is
+--echo # (implicitly) committed before CREATE/ALTER/DROP
+--echo # PROCEDURE. Note, that this is already tested
+--echo # in implicit_commit.test, but here we use an alternative
+--echo # approach.
+--echo #
+
+--echo # Start a transaction, create a savepoint,
+--echo # then call a DDL operation on a procedure, and then check
+--echo # that the savepoint is no longer present.
+
+--disable_warnings
+drop table if exists t1;
+drop procedure if exists p1;
+drop procedure if exists p2;
+drop procedure if exists p3;
+drop procedure if exists p4;
+drop function if exists f1;
+--enable_warnings
+create table t1 (a int);
+--echo #
+--echo # Test 'CREATE PROCEDURE'.
+--echo #
+begin;
+savepoint sv;
+create procedure p1() begin end;
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+--echo #
+--echo # Test 'ALTER PROCEDURE'.
+--echo #
+begin;
+savepoint sv;
+alter procedure p1 comment 'changed comment';
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+--echo #
+--echo # Test 'DROP PROCEDURE'.
+--echo #
+begin;
+savepoint sv;
+drop procedure p1;
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+--echo #
+--echo # Test 'CREATE FUNCTION'.
+--echo #
+begin;
+savepoint sv;
+create function f1() returns int return 1;
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+--echo #
+--echo # Test 'ALTER FUNCTION'.
+--echo #
+begin;
+savepoint sv;
+alter function f1 comment 'new comment';
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+--echo #
+--echo # Test 'DROP FUNCTION'.
+--echo #
+begin;
+savepoint sv;
+drop function f1;
+--error ER_SP_DOES_NOT_EXIST
+rollback to savepoint sv;
+
+--echo #
+--echo # 2) Verify that procedure DDL operations fail
+--echo # under lock tables.
+--echo #
+--echo # Auxiliary routines to test ALTER.
+create procedure p1() begin end;
+create function f1() returns int return 1;
+
+lock table t1 write;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create procedure p2() begin end;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter procedure p1 comment 'changed comment';
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+drop procedure p1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create function f2() returns int return 1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter function f1 comment 'changed comment';
+lock table t1 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create procedure p2() begin end;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter procedure p1 comment 'changed comment';
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+drop procedure p1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create function f2() returns int return 1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter function f1 comment 'changed comment';
+unlock tables;
+--echo #
+--echo # Even if we locked a temporary table.
+--echo # Todo: this is a restriction we could possibly lift.
+--echo #
+drop table t1;
+create temporary table t1 (a int);
+lock table t1 read;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create procedure p2() begin end;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter procedure p1 comment 'changed comment';
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+drop procedure p1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+create function f2() returns int return 1;
+--error ER_LOCK_OR_ACTIVE_TRANSACTION
+alter function f1 comment 'changed comment';
+unlock tables;
+
+drop function f1;
+drop procedure p1;
+drop temporary table t1;
+
+--echo #
+--echo # 3) Verify that CREATE/ALTER/DROP routine grab an
+--echo # exclusive lock.
+--echo #
+--echo # For that, start a transaction, use a routine. In a concurrent
+--echo # connection, try to drop or alter the routine. It should place
+--echo # a pending or exclusive lock and block. In another concurrnet
+--echo # connection, try to use the routine.
+--echo # That should block on the pending exclusive lock.
+--echo #
+--echo # Establish helper connections.
+connect(con1, localhost, root,,);
+connect(con2, localhost, root,,);
+connect(con3, localhost, root,,);
+
+--echo #
+--echo # Test DROP PROCEDURE.
+--echo #
+--echo # --> connection default
+connection default;
+create procedure p1() begin end;
+delimiter |;
+create function f1() returns int
+begin
+ call p1();
+ return 1;
+end|
+delimiter ;|
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop procedure p1'...
+send drop procedure p1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop procedure t1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop procedure p1';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop procedure p1'...
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+--error ER_SP_DOES_NOT_EXIST
+reap;
+--echo # --> connection default
+connection default;
+
+--echo #
+--echo # Test CREATE PROCEDURE.
+--echo #
+create procedure p1() begin end;
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'create procedure p1'...
+send create procedure p1() begin end;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'create procedure t1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='create procedure p1() begin end';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'create procedure p1'...
+--error ER_SP_ALREADY_EXISTS
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+reap;
+connection default;
+
+--echo #
+--echo # Test ALTER PROCEDURE.
+--echo #
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'alter procedure p1'...
+send alter procedure p1 contains sql;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'alter procedure t1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='alter procedure p1 contains sql';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'alter procedure p1'...
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+reap;
+--echo # --> connection default
+connection default;
+
+--echo #
+--echo # Test DROP FUNCTION.
+--echo #
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop function f1'...
+send drop function f1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f1';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop function f1'...
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+--error ER_SP_DOES_NOT_EXIST
+reap;
+--echo # --> connection default
+connection default;
+
+--echo #
+--echo # Test CREATE FUNCTION.
+--echo #
+create function f1() returns int return 1;
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'create function f1'...
+send create function f1() returns int return 2;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'create function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='create function f1() returns int return 2';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'create function f1'...
+--error ER_SP_ALREADY_EXISTS
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+reap;
+--echo # --> connection default
+connection default;
+
+--echo #
+--echo # Test ALTER FUNCTION.
+--echo #
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'alter function f1'...
+send alter function f1 contains sql;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'alter function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='alter function f1 contains sql';
+--source include/wait_condition.inc
+--echo # Demonstrate that there is a pending exclusive lock.
+--echo # Sending 'select f1()'...
+send select f1();
+--echo # --> connection con3
+connection con3;
+--echo # Waitng for 'select f1()' to get blocked by a pending MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1()';
+--echo # --> connection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'alter function f1'...
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'select f1()'
+reap;
+--echo # --> connection default
+connection default;
+drop function f1;
+drop procedure p1;
+
+--echo #
+--echo # 4) MDL lock should not be taken for
+--echo # unrolled CALL statements.
+--echo # The primary goal of metadata locks is a consistent binary log.
+--echo # When a call statement is unrolled, it doesn't get to the
+--echo # binary log, instead the statements that are contained
+--echo # in the procedure body do. This can nest to any level.
+--echo #
+create procedure p1() begin end;
+create procedure p2() begin end;
+create table t1 (a int);
+delimiter |;
+create procedure p3()
+begin
+ call p1();
+ call p1();
+ call p2();
+end|
+create procedure p4()
+begin
+ call p1();
+ call p1();
+ call p2();
+ call p2();
+ call p3();
+end|
+delimiter ;|
+begin;
+select * from t1;
+savepoint sv;
+call p4();
+--echo # Prepared statement should not add any locks either.
+prepare stmt from "call p4()";
+execute stmt;
+execute stmt;
+--echo # --> connection con1
+connection con1;
+drop procedure p1;
+drop procedure p2;
+drop procedure p3;
+drop procedure p4;
+--echo # --> connection default
+connection default;
+--echo # This is to verify there was no implicit commit.
+rollback to savepoint sv;
+--error ER_SP_DOES_NOT_EXIST
+call p4();
+commit;
+drop table t1;
+
+--echo #
+--echo # 5) Locks should be taken on routines
+--echo # used indirectly by views or triggers.
+--echo #
+--echo #
+--echo # A function is used from a trigger.
+--echo #
+create function f1() returns int return 1;
+create table t1 (a int);
+create table t2 (a int, b int);
+create trigger t1_ai after insert on t1 for each row
+ insert into t2 (a, b) values (new.a, f1());
+begin;
+insert into t1 (a) values (1);
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop function f1'
+send drop function f1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f1';
+--source include/wait_condition.inc
+--echo # --> connnection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop function f1'...
+reap;
+--echo # --> connection default
+connection default;
+--echo #
+--echo # A function is used from a view.
+--echo #
+create function f1() returns int return 1;
+create view v1 as select f1() as a;
+begin;
+select * from v1;
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop function f1'
+send drop function f1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f1';
+--source include/wait_condition.inc
+--echo # --> connnection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop function f1'...
+reap;
+--echo # --> connection default
+connection default;
+--echo #
+--echo # A procedure is used from a function.
+--echo #
+delimiter |;
+create function f1() returns int
+begin
+ declare v_out int;
+ call p1(v_out);
+ return v_out;
+end|
+delimiter ;|
+create procedure p1(out v_out int) set v_out=3;
+begin;
+select * from v1;
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop procedure p1'
+send drop procedure p1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop procedure p1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop procedure p1';
+--source include/wait_condition.inc
+--echo # --> connnection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop procedure p1'...
+reap;
+--echo # --> connection default
+connection default;
+
+--echo #
+--echo # Deep nesting: a function is used from a procedure used
+--echo # from a function used from a view used in a trigger.
+--echo #
+create function f2() returns int return 4;
+create procedure p1(out v_out int) set v_out=f2();
+drop trigger t1_ai;
+create trigger t1_ai after insert on t1 for each row
+ insert into t2 (a, b) values (new.a, (select max(a) from v1));
+begin;
+insert into t1 (a) values (3);
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop function f2'
+send drop function f2;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop function f2' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f2';
+--source include/wait_condition.inc
+--echo # --> connnection default
+connection default;
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop function f2'...
+reap;
+--echo # --> connection default
+connection default;
+
+drop view v1;
+drop function f1;
+drop procedure p1;
+drop table t1, t2;
+
+--echo #
+--echo # 6) Check that ER_LOCK_DEADLOCK is reported if
+--echo # acquisition of a shared lock fails during a transaction or
+--echo # we need to back off to flush the sp cache.
+--echo #
+--echo # Sic: now this situation does not require a back off since we
+--echo # flush the cache on the fly.
+--echo #
+create function f1() returns int return 7;
+create table t1 (a int);
+begin;
+select * from t1;
+# Used to have a back-off here, with optional ER_LOCK_DEADLOCK
+#--error ER_LOCK_DEADLOCK
+select f1();
+commit;
+drop table t1;
+drop function f1;
+
+--echo #
+--echo # 7) Demonstrate that under LOCK TABLES we accumulate locks
+--echo # on stored routines, and release metadata locks in
+--echo # ROLLBACK TO SAVEPOINT. That is done only for those stored
+--echo # routines that are not part of LOCK TABLES prelocking list.
+--echo # Those stored routines that are part of LOCK TABLES
+--echo # prelocking list are implicitly locked when entering
+--echo # LOCK TABLES, and ROLLBACK TO SAVEPOINT has no effect on
+--echo # them.
+--echo #
+create function f1() returns varchar(20) return "f1()";
+create function f2() returns varchar(20) return "f2()";
+create view v1 as select f1() as a;
+set @@session.autocommit=0;
+lock table v1 read;
+select * from v1;
+savepoint sv;
+select f2();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'drop function f1'...
+send drop function f1;
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'drop function f1' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f1';
+--source include/wait_condition.inc
+--echo # Sending 'drop function f2'...
+send drop function f2;
+--echo # --> connection default
+connection default;
+--echo # Waitng for 'drop function f2' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='drop function f2';
+--source include/wait_condition.inc
+rollback to savepoint sv;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'drop function f2'...
+reap;
+--echo # --> connection default
+connection default;
+unlock tables;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'drop function f1'...
+reap;
+--echo # --> connection default
+connection default;
+--error ER_SP_DOES_NOT_EXIST
+drop function f1;
+--error ER_SP_DOES_NOT_EXIST
+drop function f2;
+drop view v1;
+set @@session.autocommit=default;
+
+--echo #
+--echo # 8) Check the situation when we're preparing or executing a
+--echo # prepared statement, and as part of that try to flush the
+--echo # session sp cache. However, one of the procedures that
+--echo # needs a flush is in use. Verify that there is no infinite
+--echo # reprepare loop and no crash.
+--echo #
+create function f1() returns int return 1;
+delimiter |;
+--echo #
+--echo # We just mention p1() in the body of f2() to make
+--echo # sure that p1() metadata is validated when validating
+--echo # 'select f2()'.
+--echo # Recursion is not allowed in stored functions, so
+--echo # an attempt to just invoke p1() from f2() which is in turn
+--echo # called from p1() would have given a run-time error.
+--echo #
+create function f2() returns int
+begin
+ if @var is null then
+ call p1();
+ end if;
+ return 1;
+end|
+create procedure p1()
+begin
+ select f1() into @var;
+ execute stmt;
+end|
+delimiter ;|
+--echo # --> connection con2
+connection con2;
+prepare stmt from "select f2()";
+--echo # --> connection default
+connection default;
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'alter function f1 ...'...
+send alter function f1 comment "comment";
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'alter function f1 ...' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info like 'alter function f1 comment%';
+--source include/wait_condition.inc
+--echo # Sending 'call p1()'...
+send call p1();
+connection default;
+--echo # Waitng for 'call p1()' to get blocked on MDL lock on f1...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1() into @var';
+--source include/wait_condition.inc
+--echo # Let 'alter function f1 ...' go through...
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'alter function f1 ...'
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'call p1()'...
+reap;
+deallocate prepare stmt;
+--echo # --> connection default
+connection default;
+drop function f1;
+drop function f2;
+drop procedure p1;
+
+--echo #
+--echo # 9) Check the situation when a stored function is invoked
+--echo # from a stored procedure, and recursively invokes the
+--echo # stored procedure that is in use. But for the second
+--echo # invocation, a cache flush is requested. We can't
+--echo # flush the procedure that's in use, and are forced
+--echo # to use an old version. It is not a violation of
+--echo # consistency, since we unroll top-level calls.
+--echo # Just verify the code works.
+--echo #
+create function f1() returns int return 1;
+begin;
+select f1();
+--echo # --> connection con1
+connection con1;
+--echo # Sending 'alter function f1 ...'...
+send alter function f1 comment "comment";
+--echo # --> connection con2
+connection con2;
+--echo # Waitng for 'alter function f1 ...' to get blocked on MDL lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info like 'alter function f1 comment%';
+--source include/wait_condition.inc
+delimiter |;
+--echo #
+--echo # We just mention p1() in the body of f2() to make
+--echo # sure that p1() is prelocked for f2().
+--echo # Recursion is not allowed in stored functions, so
+--echo # an attempt to just invoke p1() from f2() which is in turn
+--echo # called from p1() would have given a run-time error.
+--echo #
+create function f2() returns int
+begin
+ if @var is null then
+ call p1();
+ end if;
+ return 1;
+end|
+create procedure p1()
+begin
+ select f1() into @var;
+ select f2() into @var;
+end|
+delimiter ;|
+--echo # Sending 'call p1()'...
+send call p1();
+connection default;
+--echo # Waitng for 'call p1()' to get blocked on MDL lock on f1...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='Waiting for table' and info='select f1() into @var';
+--source include/wait_condition.inc
+--echo # Let 'alter function f1 ...' go through...
+commit;
+--echo # --> connection con1
+connection con1;
+--echo # Reaping 'alter function f1 ...'
+reap;
+--echo # --> connection con2
+connection con2;
+--echo # Reaping 'call p1()'...
+reap;
+--echo # --> connection default
+connection default;
+drop function f1;
+drop function f2;
+drop procedure p1;
+
+--echo #
+--echo # 10) A select from information_schema.routines now
+--echo # flushes the stored routines caches. Test that this
+--echo # does not remove from the cache a stored routine
+--echo # that is already prelocked.
+--echo #
+create function f1() returns int return get_lock("30977", 100000);
+create function f2() returns int return 2;
+delimiter |;
+create function f3() returns varchar(255)
+begin
+ declare res varchar(255);
+ declare c cursor for select routine_name from
+ information_schema.routines where routine_name='f1';
+ select f1() into @var;
+ open c;
+ fetch c into res;
+ close c;
+ select f2() into @var;
+ return res;
+end|
+delimiter ;|
+--echo # --> connection con1
+connection con1;
+select get_lock("30977", 0);
+--echo # --> connection default
+connection default;
+--echo # Sending 'select f3()'...
+send select f3();
+--echo # --> connection con1
+connection con1;
+--echo # Waitng for 'select f3()' to get blocked on the user level lock...
+let $wait_condition=select count(*)=1 from information_schema.processlist
+where state='User lock' and info='select f1() into @var';
+--source include/wait_condition.inc
+--echo # Do something to change the cache version.
+create function f4() returns int return 4;
+drop function f4;
+select release_lock("30977");
+--echo # --> connection default
+connection default;
+--echo # Reaping 'select f3()'...
+--echo # Routine 'f2()' should exist and get executed successfully.
+reap;
+select @var;
+drop function f1;
+drop function f2;
+drop function f3;
+
+
+--echo # 11) Check the situation when the connection is flushing the
+--echo # SP cache which contains a procedure that is being executed.
+--echo #
+--echo # Function f1() calls p1(). Procedure p1() has a DROP
+--echo # VIEW statement, which, we know, invalidates the routines cache.
+--echo # During cache flush p1() must not be flushed since it's in
+--echo # use.
+--echo #
+delimiter |;
+create function f1() returns int
+begin
+ call p1();
+ return 1;
+end|
+create procedure p1()
+begin
+ create view v1 as select 1;
+ drop view v1;
+ select f1() into @var;
+ set @exec_count=@exec_count+1;
+end|
+delimiter ;|
+set @exec_count=0;
+--error ER_SP_RECURSION_LIMIT
+call p1();
+select @exec_count;
+set @@session.max_sp_recursion_depth=5;
+set @exec_count=0;
+--error ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG
+call p1();
+select @exec_count;
+drop procedure p1;
+drop function f1;
+set @@session.max_sp_recursion_depth=default;
+
+--echo # --> connection con1
+connection con1;
+disconnect con1;
+--source include/wait_until_disconnected.inc
+--echo # --> connection con2
+connection con2;
+disconnect con2;
+--source include/wait_until_disconnected.inc
+--echo # --> connection con3
+connection con3;
+disconnect con3;
+--source include/wait_until_disconnected.inc
+--echo # --> connection default
+connection default;
+--echo #
+--echo # End of 5.5 tests
+--echo #
diff --git a/mysql-test/t/sp.test b/mysql-test/t/sp.test
index 8ec551227eb..b4727ad3df7 100644
--- a/mysql-test/t/sp.test
+++ b/mysql-test/t/sp.test
@@ -1308,9 +1308,11 @@ select f3()|
select id, f3() from t1 as t11 order by id|
# Degenerate cases work too :)
select f0()|
+# But these should not (particularly views should be locked explicitly).
+--error ER_TABLE_NOT_LOCKED
select * from v0|
+--error ER_TABLE_NOT_LOCKED
select *, f0() from v0, (select 123) as d1|
-# But these should not !
--error ER_TABLE_NOT_LOCKED
select id, f3() from t1|
--error ER_TABLE_NOT_LOCKED
@@ -8516,3 +8518,84 @@ SELECT routine_comment FROM information_schema.routines WHERE routine_name = "p1
DROP PROCEDURE p1;
+
+--echo #
+--echo # Bug #47313 assert in check_key_in_view during CALL procedure
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS t1, t2_unrelated;
+DROP PROCEDURE IF EXISTS p1;
+--enable_warnings
+
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE VIEW t1 AS SELECT 10 AS f1;
+
+--echo # t1 refers to the view
+--error ER_NON_INSERTABLE_TABLE
+CALL p1(1);
+
+CREATE TEMPORARY TABLE t1 (f1 INT);
+
+--echo # t1 still refers to the view since it was inlined
+--error ER_NON_INSERTABLE_TABLE
+CALL p1(2);
+
+DROP VIEW t1;
+
+--echo # t1 now refers to the temporary table
+CALL p1(3);
+
+--echo # Check which values were inserted into the temp table.
+SELECT * FROM t1;
+
+DROP TEMPORARY TABLE t1;
+DROP PROCEDURE p1;
+
+--echo # Now test what happens if the sp cache is invalidated.
+
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE VIEW t1 AS SELECT 10 AS f1;
+CREATE VIEW v2_unrelated AS SELECT 1 AS r1;
+
+--echo # Load the procedure into the sp cache
+--error ER_NON_INSERTABLE_TABLE
+CALL p1(4);
+
+CREATE TEMPORARY TABLE t1 (f1 int);
+
+ALTER VIEW v2_unrelated AS SELECT 2 AS r1;
+
+--echo # Alter view causes the sp cache to be invalidated.
+--echo # Now t1 refers to the temporary table, not the view.
+CALL p1(5);
+
+--echo # Check which values were inserted into the temp table.
+SELECT * FROM t1;
+
+DROP TEMPORARY TABLE t1;
+DROP VIEW t1, v2_unrelated;
+DROP PROCEDURE p1;
+
+CREATE PROCEDURE p1(IN x INT) INSERT INTO t1 VALUES (x);
+CREATE TEMPORARY TABLE t1 (f1 INT);
+
+--echo # t1 refers to the temporary table
+CALL p1(6);
+
+CREATE VIEW t1 AS SELECT 10 AS f1;
+
+--echo # Create view causes the sp cache to be invalidated.
+--echo # t1 still refers to the temporary table since it shadows the view.
+CALL p1(7);
+
+DROP VIEW t1;
+
+--echo # Check which values were inserted into the temp table.
+SELECT * FROM t1;
+
+DROP TEMPORARY TABLE t1;
+DROP PROCEDURE p1;
+
+
diff --git a/mysql-test/t/sp_notembedded.test b/mysql-test/t/sp_notembedded.test
index f593e184ad2..83accecabb5 100644
--- a/mysql-test/t/sp_notembedded.test
+++ b/mysql-test/t/sp_notembedded.test
@@ -322,7 +322,7 @@ set session low_priority_updates=on;
connection rl_wait;
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Locked" and
+ where state = "Table lock" and
info = "update t1 set value='updated' where value='old'";
--source include/wait_condition.inc
@@ -413,6 +413,43 @@ let $wait_condition=
--source include/wait_condition.inc
DROP PROCEDURE p;
+#
+# Bug#47736 killing a select from a view when the view is processing a function, asserts
+#
+CREATE TABLE t1(a int);
+INSERT INTO t1 VALUES (1);
+CREATE FUNCTION f1 (inp TEXT) RETURNS INT NO SQL RETURN sleep(60);
+CREATE VIEW v1 AS SELECT f1('a') FROM t1;
+
+--connect (con1, localhost, root,,)
+--let $ID_1= `SELECT connection_id()`
+--send SELECT * FROM v1;
+
+--connect (con2, localhost, root,,)
+--let $ID_2= `SELECT connection_id()`
+--send SELECT * FROM v1
+
+--connection default
+--disable_query_log
+--eval KILL QUERY $ID_2
+--eval KILL QUERY $ID_1
+--enable_query_log
+
+--connection con1
+--error ER_QUERY_INTERRUPTED
+--reap
+--connection con2
+--error ER_QUERY_INTERRUPTED
+--reap
+
+--connection default
+DROP VIEW v1;
+DROP TABLE t1;
+DROP FUNCTION f1;
+--disconnect con1
+--disconnect con2
+
+
--echo # ------------------------------------------------------------------
--echo # -- End of 5.1 tests
--echo # ------------------------------------------------------------------
diff --git a/mysql-test/t/sp_sync.test b/mysql-test/t/sp_sync.test
index f9dae17b039..519a9211206 100644
--- a/mysql-test/t/sp_sync.test
+++ b/mysql-test/t/sp_sync.test
@@ -34,7 +34,7 @@ SET DEBUG_SYNC = 'multi_update_reopen_tables SIGNAL parked WAIT_FOR go';
connection con1;
let $wait_condition= SELECT 1 FROM information_schema.processlist WHERE ID = $ID AND
-state = "Locked";
+state = "Waiting for table";
--source include/wait_condition.inc
DROP TABLE t1, t2;
SET DEBUG_SYNC = 'now WAIT_FOR parked';
diff --git a/mysql-test/t/status.test b/mysql-test/t/status.test
index f951218f5c8..cca54f6c762 100644
--- a/mysql-test/t/status.test
+++ b/mysql-test/t/status.test
@@ -58,7 +58,7 @@ let $ID= `select connection_id()`;
connection con2;
--echo # Switched to connection: con2
# wait for the other query to start executing
-let $wait_condition= select 1 from INFORMATION_SCHEMA.PROCESSLIST where ID = $ID and STATE = "Locked";
+let $wait_condition= select 1 from INFORMATION_SCHEMA.PROCESSLIST where ID = $ID and STATE = "Table lock";
--source include/wait_condition.inc
unlock tables;
diff --git a/mysql-test/t/strict.test b/mysql-test/t/strict.test
index 5779ea97bc2..d1e136bf5fa 100644
--- a/mysql-test/t/strict.test
+++ b/mysql-test/t/strict.test
@@ -1166,6 +1166,40 @@ set @@sql_mode='traditional';
--error ER_TOO_LONG_TABLE_COMMENT
create table t1 (i int)
comment '123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*123456789*';
--error ER_TOO_LONG_FIELD_COMMENT
create table t1 (
@@ -1176,6 +1210,26 @@ i int comment
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
set @@sql_mode= @org_mode;
create table t1
@@ -1186,6 +1240,26 @@ create table t1
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
+ 123456789*123456789*123456789*123456789*
123456789*123456789*123456789*123456789*');
select column_name, column_comment from information_schema.columns where
diff --git a/mysql-test/t/subselect.test b/mysql-test/t/subselect.test
index bb4e7d623f8..50f2644ff9e 100644
--- a/mysql-test/t/subselect.test
+++ b/mysql-test/t/subselect.test
@@ -3820,4 +3820,21 @@ SELECT 1 FROM t1 WHERE a <> SOME
);
DROP TABLE t1;
+--echo #
+--echo # Bug #45989 take 2 : memory leak after explain encounters an
+--echo # error in the query
+--echo #
+
+CREATE TABLE t1(a LONGTEXT);
+INSERT INTO t1 VALUES (repeat('a',@@global.max_allowed_packet));
+INSERT INTO t1 VALUES (repeat('b',@@global.max_allowed_packet));
+
+--error ER_BAD_FIELD_ERROR
+EXPLAIN EXTENDED SELECT DISTINCT 1 FROM t1,
+(SELECT DISTINCTROW a AS away FROM t1 GROUP BY a WITH ROLLUP) AS d1
+WHERE t1.a = d1.a;
+
+DROP TABLE t1;
+
+
--echo End of 5.1 tests.
diff --git a/mysql-test/t/trigger.test b/mysql-test/t/trigger.test
index f3b9d6bb91e..7ff61bd96e1 100644
--- a/mysql-test/t/trigger.test
+++ b/mysql-test/t/trigger.test
@@ -2489,3 +2489,28 @@ DROP TRIGGER trg1;
DROP TRIGGER trg2;
DROP TABLE t1;
+
+--echo #
+--echo # Bug #46747 "Crash in MDL_ticket::upgrade_shared_lock_to_exclusive
+--echo # on TRIGGER + TEMP table".
+--echo #
+
+--disable_warnings
+drop trigger if exists t1_bi;
+drop temporary table if exists t1;
+drop table if exists t1;
+--enable_warnings
+
+create table t1 (i int);
+create trigger t1_bi before insert on t1 for each row set @a:=1;
+--echo # Create temporary table which shadows base table with trigger.
+create temporary table t1 (j int);
+--echo # Dropping of trigger should succeed.
+drop trigger t1_bi;
+select trigger_name from information_schema.triggers
+ where event_object_schema = 'test' and event_object_table = 't1';
+--echo # Clean-up.
+drop temporary table t1;
+drop table t1;
+
+--echo End of 6.0 tests.
diff --git a/mysql-test/t/trigger_notembedded.test b/mysql-test/t/trigger_notembedded.test
index 7a7e6c6bc85..8a570a7e87d 100644
--- a/mysql-test/t/trigger_notembedded.test
+++ b/mysql-test/t/trigger_notembedded.test
@@ -896,7 +896,7 @@ connection default;
--echo connection: default
let $wait_condition=
select count(*) = 1 from information_schema.processlist
- where state = "Flushing tables";
+ where state = "Waiting for table";
--source include/wait_condition.inc
create trigger t1_bi before insert on t1 for each row begin end;
unlock tables;
diff --git a/mysql-test/t/truncate.test b/mysql-test/t/truncate.test
index ba5364bd324..cdfa448f78a 100644
--- a/mysql-test/t/truncate.test
+++ b/mysql-test/t/truncate.test
@@ -2,7 +2,7 @@
# Test of truncate
#
--disable_warnings
-drop table if exists t1;
+drop table if exists t1, t2;
--enable_warnings
create table t1 (a integer, b integer,c1 CHAR(10));
@@ -69,3 +69,97 @@ drop table t1;
# End of 5.0 tests
+--echo #
+--echo # Bug#20667 - Truncate table fails for a write locked table
+--echo #
+CREATE TABLE t1 (c1 INT);
+LOCK TABLE t1 WRITE;
+INSERT INTO t1 VALUES (1);
+SELECT * FROM t1;
+TRUNCATE TABLE t1;
+SELECT * FROM t1;
+UNLOCK TABLES;
+#
+LOCK TABLE t1 READ;
+--error ER_TABLE_NOT_LOCKED_FOR_WRITE
+TRUNCATE TABLE t1;
+UNLOCK TABLES;
+#
+CREATE TABLE t2 (c1 INT);
+LOCK TABLE t2 WRITE;
+--error ER_TABLE_NOT_LOCKED
+TRUNCATE TABLE t1;
+UNLOCK TABLES;
+#
+CREATE VIEW v1 AS SELECT t1.c1 FROM t1,t2 WHERE t1.c1 = t2.c1;
+INSERT INTO t1 VALUES (1), (2), (3);
+INSERT INTO t2 VALUES (1), (3), (4);
+SELECT * FROM v1;
+--error ER_NO_SUCH_TABLE
+TRUNCATE v1;
+SELECT * FROM v1;
+#
+LOCK TABLE t1 WRITE;
+--error ER_TABLE_NOT_LOCKED
+SELECT * FROM v1;
+--error ER_NO_SUCH_TABLE
+TRUNCATE v1;
+--error ER_TABLE_NOT_LOCKED
+SELECT * FROM v1;
+UNLOCK TABLES;
+#
+LOCK TABLE t1 WRITE, t2 WRITE;
+--error ER_TABLE_NOT_LOCKED
+SELECT * FROM v1;
+--error ER_NO_SUCH_TABLE
+TRUNCATE v1;
+--error ER_TABLE_NOT_LOCKED
+SELECT * FROM v1;
+UNLOCK TABLES;
+#
+LOCK TABLE v1 WRITE;
+SELECT * FROM v1;
+--error ER_NO_SUCH_TABLE
+TRUNCATE v1;
+SELECT * FROM v1;
+UNLOCK TABLES;
+#
+LOCK TABLE t1 WRITE, t2 WRITE, v1 WRITE;
+SELECT * FROM v1;
+--error ER_NO_SUCH_TABLE
+TRUNCATE v1;
+SELECT * FROM v1;
+UNLOCK TABLES;
+#
+DROP VIEW v1;
+DROP TABLE t1, t2;
+#
+CREATE PROCEDURE p1() SET @a = 5;
+--error ER_NO_SUCH_TABLE
+TRUNCATE p1;
+SHOW CREATE PROCEDURE p1;
+DROP PROCEDURE p1;
+
+--echo #
+--echo # Bug#46452 Crash in MDL, HANDLER OPEN + TRUNCATE TABLE
+--echo #
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+CREATE TABLE t1 AS SELECT 1 AS f1;
+
+HANDLER t1 OPEN;
+--echo # Here comes the crash.
+TRUNCATE t1;
+
+--echo # Currently TRUNCATE, just like other DDL, implicitly closes
+--echo # open HANDLER table.
+--error ER_UNKNOWN_TABLE
+HANDLER t1 READ FIRST;
+
+# Cleanup
+DROP TABLE t1;
+
+--echo # End of 6.0 tests
+
diff --git a/mysql-test/t/truncate_coverage.test b/mysql-test/t/truncate_coverage.test
new file mode 100644
index 00000000000..b7c08b03c8b
--- /dev/null
+++ b/mysql-test/t/truncate_coverage.test
@@ -0,0 +1,164 @@
+#
+# Code coverage testing of TRUNCATE TABLE.
+#
+# Ingo Struewing, 2009-07-20
+#
+
+--source include/have_debug_sync.inc
+SET DEBUG_SYNC='RESET';
+
+--let $MYSQLD_DATADIR= `SELECT @@datadir`
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+--enable_warnings
+
+--echo #
+--echo # Bug#20667 - Truncate table fails for a write locked table
+--echo #
+########
+# Attack wait_while_table_is_used(). Kill query while trying to
+# upgrade MDL.
+#
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# Acquire a shared metadata lock on table by opening HANDLER for it and wait.
+# TRUNCATE shall block on this metadata lock.
+# We can't use normal DML as such statements would also block LOCK TABLES.
+#
+--echo #
+--echo # connection con1
+--connect (con1, localhost, root,,)
+HANDLER t1 OPEN;
+#
+# Get connection id of default connection.
+# Lock the table and start TRUNCATE, which will block on MDL upgrade.
+#
+--echo #
+--echo # connection default
+--connection default
+let $ID= `SELECT @id := CONNECTION_ID()`;
+LOCK TABLE t1 WRITE;
+SET DEBUG_SYNC='mdl_upgrade_shared_lock_to_exclusive SIGNAL waiting';
+send TRUNCATE TABLE t1;
+#
+# Get the default connection ID into a variable in an invisible statement.
+# Kill the TRUNCATE query. This shall result in an error return
+# from wait_while_table_is_used().
+#
+--echo #
+--echo # connection con2
+--connect (con2, localhost, root,,)
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+let $invisible_assignment_in_select = `SELECT @id := $ID`;
+KILL QUERY @id;
+--disconnect con2
+--echo #
+--echo # connection con1
+--connection con1
+--echo # Release shared metadata lock by closing HANDLER.
+HANDLER t1 CLOSE;
+--disconnect con1
+--echo #
+--echo # connection default
+--connection default
+--error ER_QUERY_INTERRUPTED
+reap;
+UNLOCK TABLES;
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
+########
+# Attack reopen_tables(). Remove form file.
+#
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# Acquire a shared metadata lock on table by opening HANDLER for it and wait.
+# TRUNCATE shall block on this metadata lock.
+# We can't use normal DML as such statements would also block LOCK TABLES.
+#
+--echo #
+--echo # connection con1
+--connect (con1, localhost, root,,)
+HANDLER t1 OPEN;
+#
+# Lock the table and start TRUNCATE, which will block on MDL upgrade.
+#
+--echo #
+--echo # connection default
+--connection default
+LOCK TABLE t1 WRITE;
+SET DEBUG_SYNC='mdl_upgrade_shared_lock_to_exclusive SIGNAL waiting';
+send TRUNCATE TABLE t1;
+#
+# Remove datafile.
+# Commit to let TRUNCATE continue.
+#
+--echo #
+--echo # connection con2
+--connect (con2, localhost, root,,)
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+--remove_file $MYSQLD_DATADIR/test/t1.frm
+--disconnect con2
+--echo #
+--echo # connection con1
+--connection con1
+HANDLER t1 CLOSE;
+--disconnect con1
+--echo #
+--echo # connection default
+--connection default
+--error ER_NO_SUCH_TABLE
+reap;
+UNLOCK TABLES;
+--error ER_BAD_TABLE_ERROR
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
+########
+# Attack acquire_exclusive_locks(). Hold a global read lock.
+# Non-LOCK TABLE case.
+#
+CREATE TABLE t1 (c1 INT);
+INSERT INTO t1 VALUES (1);
+#
+# Start a transaction and execute a DML in it. Since 5.4.4 this leaves
+# a shared meta data lock (MDL) behind. TRUNCATE shall block on it.
+#
+--echo #
+--echo # connection con1
+--connect (con1, localhost, root,,)
+START TRANSACTION;
+INSERT INTO t1 VALUES (2);
+#
+# Get connection id of default connection.
+# Start TRUNCATE, which will block on acquire_exclusive_locks().
+#
+--echo #
+--echo # connection default
+--connection default
+let $ID= `SELECT @id := CONNECTION_ID()`;
+SET DEBUG_SYNC='mdl_acquire_lock_wait SIGNAL waiting';
+send TRUNCATE TABLE t1;
+#
+# Get the default connection ID into a variable in an invisible statement.
+# Kill the TRUNCATE query. This shall result in an error return
+# from wait_while_table_is_used().
+#
+--echo #
+--echo # connection con1
+--connection con1
+SET DEBUG_SYNC='now WAIT_FOR waiting';
+let $invisible_assignment_in_select = `SELECT @id := $ID`;
+KILL QUERY @id;
+COMMIT;
+--disconnect con1
+--echo #
+--echo # connection default
+--connection default
+--error ER_QUERY_INTERRUPTED
+reap;
+UNLOCK TABLES;
+DROP TABLE t1;
+SET DEBUG_SYNC='RESET';
+
diff --git a/mysql-test/t/type_bit.test b/mysql-test/t/type_bit.test
index 530389b3ab9..8bedf9357ef 100644
--- a/mysql-test/t/type_bit.test
+++ b/mysql-test/t/type_bit.test
@@ -425,4 +425,17 @@ select hex(a) from t1;
show create table t1;
drop table t1;
+--echo #
+--echo # Bug#50591 bit(31) causes Duplicate entry '1-NULL' for key 'group_key'
+--echo #
+CREATE TABLE t1(a INT, b BIT(7) NOT NULL);
+INSERT INTO t1 VALUES (NULL, 0),(NULL, 0);
+SELECT SUM(a) FROM t1 GROUP BY b, a;
+DROP TABLE t1;
+
+CREATE TABLE t1(a INT, b BIT(7) NOT NULL, c BIT(8) NOT NULL);
+INSERT INTO t1 VALUES (NULL, 0, 0),(NULL, 0, 0);
+SELECT SUM(a) FROM t1 GROUP BY c, b, a;
+DROP TABLE t1;
+
--echo End of 5.1 tests
diff --git a/mysql-test/t/type_timestamp.test b/mysql-test/t/type_timestamp.test
index 2a49e0def1a..5c3a759b589 100644
--- a/mysql-test/t/type_timestamp.test
+++ b/mysql-test/t/type_timestamp.test
@@ -346,3 +346,17 @@ SELECT f1,f2-f3 FROM t1;
DROP TABLE t1;
--echo End of 5.0 tests
+
+--echo
+--echo Bug#50888 valgrind warnings in Field_timestamp::val_str
+--echo
+
+SET TIMESTAMP=0;
+CREATE TABLE t1(a timestamp);
+INSERT INTO t1 VALUES ('2008-02-23 09:23:45'), ('2010-03-05 11:08:02');
+FLUSH TABLES t1;
+SELECT MAX(a) FROM t1;
+SELECT a FROM t1;
+DROP TABLE t1;
+
+--echo End of Bug#50888
diff --git a/mysql-test/t/udf.test b/mysql-test/t/udf.test
index 7e383ce69fa..9bf872fa466 100644
--- a/mysql-test/t/udf.test
+++ b/mysql-test/t/udf.test
@@ -436,6 +436,75 @@ SELECT * FROM t2 WHERE a = sequence();
DROP FUNCTION sequence;
DROP TABLE t1,t2;
+#
+# Bug#31767 (DROP FUNCTION name resolution)
+#
+
+--disable_warnings
+drop function if exists test.metaphon;
+drop function if exists metaphon;
+--enable_warnings
+
+--replace_result $UDF_EXAMPLE_LIB UDF_EXAMPLE_LIB
+eval CREATE FUNCTION metaphon RETURNS STRING SONAME "$UDF_EXAMPLE_LIB";
+
+select metaphon("Hello");
+
+# The UDF should not be dropped
+drop function if exists test.metaphon;
+
+select metaphon("Hello");
+
+drop function metaphon;
+
+CREATE FUNCTION test.metaphon(a TEXT) RETURNS TEXT return "This is a SF";
+
+create database db_31767;
+use db_31767;
+
+--replace_result $UDF_EXAMPLE_LIB UDF_EXAMPLE_LIB
+eval CREATE FUNCTION metaphon RETURNS STRING SONAME "$UDF_EXAMPLE_LIB";
+
+use test;
+
+# Uses the UDF
+select metaphon("Hello");
+
+# Uses the SF
+select test.metaphon("Hello");
+
+# Should drop the UDF, resolving the name the same way select does.
+drop function metaphon;
+
+# Should call the SF
+select metaphon("Hello");
+
+# Drop the SF
+drop function metaphon;
+
+# Change the current database to none.
+use db_31767;
+drop database db_31767;
+
+drop function if exists no_such_func;
+
+--error ER_SP_DOES_NOT_EXIST
+drop function no_such_func;
+
+drop function if exists test.no_such_func;
+
+--error ER_SP_DOES_NOT_EXIST
+drop function test.no_such_func;
+
+--error ER_NO_DB_ERROR
+drop procedure if exists no_such_proc;
+
+--error ER_NO_DB_ERROR
+drop procedure no_such_proc;
+
+use test;
+
+
--echo #
--echo # Bug#46259: 5.0.83 -> 5.1.36, query doesn't work
--echo #
diff --git a/mysql-test/t/union-master.opt b/mysql-test/t/union-master.opt
index 3eb98fc3d6b..c852f488260 100644
--- a/mysql-test/t/union-master.opt
+++ b/mysql-test/t/union-master.opt
@@ -1 +1 @@
---log-slow-queries --log-long-format --log-queries-not-using-indexes
+--log-slow-queries --log-queries-not-using-indexes
diff --git a/mysql-test/t/variables.test b/mysql-test/t/variables.test
index d4b88fc6f9c..39fa78ef370 100644
--- a/mysql-test/t/variables.test
+++ b/mysql-test/t/variables.test
@@ -346,7 +346,6 @@ set sql_big_tables=1;
set sql_buffer_result=1;
set sql_log_bin=1;
set sql_log_off=1;
-set sql_log_update=1;
set sql_low_priority_updates=1;
set sql_quote_show_create=1;
set sql_safe_updates=1;
@@ -830,8 +829,8 @@ set global join_buffer_size =@my_join_buffer_size;
# Bug#28580 Repeatation of status variables
#
--replace_column 2 #
-show global variables where Variable_name='table_definition_cache' or
-Variable_name='table_lock_wait_timeout';
+show global variables where Variable_name='table_definition_cache';
+# Note: table_lock_wait_timeout no longer exists. See bug#45225.
###########################################################################
diff --git a/mysql-test/t/variables+c.test b/mysql-test/t/variables_community.test
index aa4bc6c631c..aa4bc6c631c 100644
--- a/mysql-test/t/variables+c.test
+++ b/mysql-test/t/variables_community.test
diff --git a/mysql-test/t/view.test b/mysql-test/t/view.test
index 4515f26bc52..d1a4d78e58f 100644
--- a/mysql-test/t/view.test
+++ b/mysql-test/t/view.test
@@ -1,3 +1,4 @@
+
--disable_warnings
drop table if exists t1,t2,t3,t4,t9,`t1a``b`,v1,v2,v3,v4,v5,v6;
drop view if exists t1,t2,`t1a``b`,v1,v2,v3,v4,v5,v6;
@@ -5,6 +6,9 @@ drop database if exists mysqltest;
--enable_warnings
use test;
+# Save the initial number of concurrent sessions.
+--source include/count_sessions.inc
+
#
# some basic test of views and its functionality
#
@@ -1016,10 +1020,8 @@ lock tables t1 read, v1 read;
select * from v1;
-- error ER_TABLE_NOT_LOCKED
select * from t2;
-drop view v1;
---error ER_TABLE_NOT_LOCKED_FOR_WRITE
-drop table t1, t2;
unlock tables;
+drop view v1;
drop table t1, t2;
#
@@ -3904,6 +3906,52 @@ ALTER TABLE v1;
DROP VIEW v1;
DROP TABLE t1;
+--echo #
+--echo # Bug#48449: hang on show create view after upgrading when
+--echo # view contains function of view
+--echo #
+
+--disable_warnings
+DROP VIEW IF EXISTS v1,v2;
+DROP TABLE IF EXISTS t1,t2;
+DROP FUNCTION IF EXISTS f1;
+--enable_warnings
+
+CREATE TABLE t1 (a INT);
+CREATE TABLE t2 (a INT);
+
+delimiter //;
+CREATE FUNCTION f1() RETURNS INT
+BEGIN
+ SELECT a FROM v2 INTO @a;
+ RETURN @a;
+END//
+delimiter ;//
+
+--echo # Trigger pre-locking when opening v2.
+CREATE VIEW v1 AS SELECT f1() FROM t1;
+
+let $MYSQLD_DATADIR= `SELECT @@datadir`;
+copy_file std_data/bug48449.frm $MYSQLD_DATADIR/test/v2.frm;
+
+SHOW CREATE VIEW v1;
+
+DROP VIEW v1,v2;
+DROP TABLE t1,t2;
+DROP FUNCTION f1;
+
+
+#
+# Bug#48294 assertion when creating a view based on some row() construct in select query
+#
+CREATE TABLE t1(f1 INT);
+INSERT INTO t1 VALUES ();
+
+CREATE VIEW v1 AS SELECT 1 FROM t1 WHERE
+ROW(1,1) >= ROW(1, (SELECT 1 FROM t1 WHERE f1 >= ANY ( SELECT '1' )));
+
+DROP VIEW v1;
+DROP TABLE t1;
--echo # -----------------------------------------------------------------
--echo # -- End of 5.1 tests.
@@ -3934,3 +3982,121 @@ create view v_9801 as
drop table t_9801;
+--echo #
+--echo # Bug #47335 assert in get_table_share
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+--enable_warnings
+
+CREATE TEMPORARY TABLE t1 (id INT);
+--error ER_NO_SUCH_TABLE
+ALTER VIEW t1 AS SELECT 1 AS f1;
+DROP TABLE t1;
+
+CREATE VIEW v1 AS SELECT 1 AS f1;
+CREATE TEMPORARY TABLE v1 (id INT);
+ALTER VIEW v1 AS SELECT 2 AS f1;
+DROP TABLE v1;
+SELECT * FROM v1;
+DROP VIEW v1;
+
+
+--echo #
+--echo # Bug #47635 assert in start_waiting_global_read_lock
+--echo # during CREATE VIEW
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1, t2;
+DROP VIEW IF EXISTS t2;
+--enable_warnings
+
+CREATE TABLE t1 (f1 integer);
+CREATE TEMPORARY TABLE IF NOT EXISTS t1 (f1 integer);
+CREATE TEMPORARY TABLE t2 (f1 integer);
+DROP TABLE t1;
+FLUSH TABLES WITH READ LOCK;
+--error ER_CANT_UPDATE_WITH_READLOCK
+CREATE VIEW t2 AS SELECT * FROM t1;
+
+UNLOCK TABLES;
+DROP TABLE t1, t2;
+
+
+--echo #
+--echo # Bug#48315 Metadata lock is not taken for merged views that
+--echo # use an INFORMATION_SCHEMA table
+--echo #
+
+--disable_warnings
+DROP TABLE IF EXISTS t1;
+DROP VIEW IF EXISTS v1;
+DROP PROCEDURE IF EXISTS p1;
+--enable_warnings
+
+connect (con2, localhost, root);
+connect (con3, localhost, root);
+
+--echo # Connection default
+connection default;
+
+CREATE VIEW v1 AS SELECT schema_name FROM information_schema.schemata;
+CREATE TABLE t1 (str VARCHAR(50));
+CREATE PROCEDURE p1() INSERT INTO t1 SELECT * FROM v1;
+
+--echo # CALL p1() so the view is merged.
+CALL p1();
+
+--echo # Connection 3
+connection con3;
+LOCK TABLE t1 READ;
+
+--echo # Connection default
+connection default;
+--echo # Try to CALL p1() again, this time it should block for t1.
+--echo # Sending:
+--send CALL p1()
+
+--echo # Connection 2
+connection con2;
+let $wait_condition=
+ SELECT COUNT(*) = 1 from information_schema.processlist
+ WHERE state = "Table lock" AND info = "INSERT INTO t1 SELECT * FROM v1";
+--source include/wait_condition.inc
+--echo # ... then try to drop the view. This should block.
+--echo # Sending:
+--send DROP VIEW v1
+
+--echo # Connection 3
+connection con3;
+let $wait_condition=
+ SELECT COUNT(*) = 1 from information_schema.processlist
+ WHERE state = "Waiting for table" AND info = "DROP VIEW v1";
+--source include/wait_condition.inc
+--echo # Now allow CALL p1() to complete
+UNLOCK TABLES;
+
+--echo # Connection default
+connection default;
+--echo # Reaping: CALL p1()
+--reap
+
+--echo # Connection 2
+connection con2;
+--echo # Reaping: DROP VIEW v1
+--reap
+
+--echo # Connection default
+connection default;
+DROP PROCEDURE p1;
+DROP TABLE t1;
+disconnect con2;
+disconnect con3;
+
+
+# Check that all connections opened by test cases in this file are really
+# gone so execution of other tests won't be affected by their presence.
+--source include/wait_until_count_sessions.inc
diff --git a/mysql-test/t/view_grant.test b/mysql-test/t/view_grant.test
index f01edb1e499..3ccef94d7ea 100644
--- a/mysql-test/t/view_grant.test
+++ b/mysql-test/t/view_grant.test
@@ -1047,9 +1047,9 @@ GRANT SELECT ON db26813.t1 TO u26813@localhost;
connect (u1,localhost,u26813,,db26813);
connection u1;
---error ER_SPECIFIC_ACCESS_DENIED_ERROR
+--error ER_TABLEACCESS_DENIED_ERROR
ALTER VIEW v1 AS SELECT f2 FROM t1;
---error ER_SPECIFIC_ACCESS_DENIED_ERROR
+--error ER_TABLEACCESS_DENIED_ERROR
ALTER VIEW v2 AS SELECT f2 FROM t1;
--error ER_SPECIFIC_ACCESS_DENIED_ERROR
ALTER VIEW v3 AS SELECT f2 FROM t1;
@@ -1532,3 +1532,17 @@ SELECT a FROM v2;
--disconnect mysqluser1
DROP USER mysqluser1;
DROP DATABASE mysqltest1;
+USE test;
+
+--echo #
+--echo # Bug#47734: Assertion failed: ! is_set() when locking a view with non-existing definer
+--echo #
+
+--disable_warnings
+DROP VIEW IF EXISTS v1;
+--enable_warnings
+
+CREATE DEFINER=`unknown`@`unknown` SQL SECURITY DEFINER VIEW v1 AS SELECT 1;
+--error ER_NO_SUCH_USER
+LOCK TABLES v1 READ;
+DROP VIEW v1;
diff --git a/mysql-test/t/xa.test b/mysql-test/t/xa.test
index f84d822170f..0f705ae20c6 100644
--- a/mysql-test/t/xa.test
+++ b/mysql-test/t/xa.test
@@ -76,9 +76,10 @@ xa rollback 'testa','testb';
xa start 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz';
select * from t1;
-drop table t1;
disconnect con1;
+connection default;
+drop table t1;
#
# Bug#28323: Server crashed in xid cache operations