From: Luis Soares Date: May 5 2011 10:49pm Subject: bzr commit into mysql-5.1 branch (luis.soares:3683) Bug#55229 Bug#11762616 List-Archive: http://lists.mysql.com/commits/136772 X-Bug: 55229,11762616 Message-Id: <201105052250.p45Mo6vE001858@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============7233795886155427716==" --===============7233795886155427716== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/lsoares/Workspace/bzr/work/bugfixing/push/mysql-5.1/ based on revid:luis.soares@stripped 3683 Luis Soares 2011-05-05 BUG#11762616: BUG#55229: 'POSTION' Fix for all "postion" in Oracle files (s/postion/position). Updated the copyright notices where needed. modified: client/mysqltest.cc extra/replace.c mysql-test/suite/rpl/r/rpl_server_id2.result mysql-test/suite/rpl/t/rpl_row_until.test mysql-test/suite/rpl/t/rpl_server_id2.test sql/handler.h sql/slave.cc storage/archive/ha_archive.cc storage/ndb/src/kernel/blocks/lgman.cpp vio/viosocket.c === modified file 'client/mysqltest.cc' --- a/client/mysqltest.cc 2011-04-07 18:12:54 +0000 +++ b/client/mysqltest.cc 2011-05-05 22:49:57 +0000 @@ -9739,7 +9739,7 @@ int find_set(REP_SETS *sets,REP_SET *fin return i; } } - return i; /* return new postion */ + return i; /* return new position */ } /* find if there is a found_set with same table_offset & found_offset @@ -9759,7 +9759,7 @@ int find_found(FOUND_SET *found_set,uint found_set[i].table_offset=table_offset; found_set[i].found_offset=found_offset; found_sets++; - return -i-2; /* return new postion */ + return -i-2; /* return new position */ } /* Return 1 if regexp starts with \b or ends with \b*/ === modified file 'extra/replace.c' --- a/extra/replace.c 2010-07-02 18:30:47 +0000 +++ b/extra/replace.c 2011-05-05 22:49:57 +0000 @@ -1,17 +1,19 @@ -/* Copyright (C) 2000 MySQL AB +/* Copyright (c) 2000, 2011, 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 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 + 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 */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA */ /* Replace strings in textfile @@ -819,7 +821,7 @@ static short find_set(REP_SETS *sets,REP return (short) i; } } - return (short) i; /* return new postion */ + return (short) i; /* return new position */ } @@ -842,7 +844,7 @@ static short find_found(FOUND_SET *found found_set[i].table_offset=table_offset; found_set[i].found_offset=found_offset; found_sets++; - return (short) (-i-2); /* return new postion */ + return (short) (-i-2); /* return new position */ } /* Return 1 if regexp starts with \b or ends with \b*/ === modified file 'mysql-test/suite/rpl/r/rpl_server_id2.result' --- a/mysql-test/suite/rpl/r/rpl_server_id2.result 2010-12-19 17:07:28 +0000 +++ b/mysql-test/suite/rpl/r/rpl_server_id2.result 2011-05-05 22:49:57 +0000 @@ -19,7 +19,7 @@ change master to master_port=MASTER_PORT start slave until master_log_file='master-bin.000001', master_log_pos=UNTIL_POS; include/wait_for_slave_io_to_start.inc include/wait_for_slave_sql_to_stop.inc -*** checking until postion execution: must be only t1 in the list *** +*** checking until position execution: must be only t1 in the list *** show tables; Tables_in_test t1 === modified file 'mysql-test/suite/rpl/t/rpl_row_until.test' --- a/mysql-test/suite/rpl/t/rpl_row_until.test 2010-12-19 17:07:28 +0000 +++ b/mysql-test/suite/rpl/t/rpl_row_until.test 2011-05-05 22:49:57 +0000 @@ -9,29 +9,29 @@ connection master; CREATE TABLE t1(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY); INSERT INTO t1 VALUES (1),(2),(3),(4); DROP TABLE t1; -# Save master log postion for query DROP TABLE t1 +# Save master log position for query DROP TABLE t1 save_master_pos; let $master_pos_drop_t1= query_get_value(SHOW BINLOG EVENTS, Pos, 7); let $master_log_file= query_get_value(SHOW BINLOG EVENTS, Log_name, 7); CREATE TABLE t2(n INT NOT NULL AUTO_INCREMENT PRIMARY KEY); -# Save master log postion for query CREATE TABLE t2 +# Save master log position for query CREATE TABLE t2 save_master_pos; let $master_pos_create_t2= query_get_value(SHOW BINLOG EVENTS, Pos, 8); INSERT INTO t2 VALUES (1),(2); save_master_pos; -# Save master log postion for query INSERT INTO t2 VALUES (1),(2); +# Save master log position for query INSERT INTO t2 VALUES (1),(2); let $master_pos_insert1_t2= query_get_value(SHOW BINLOG EVENTS, End_log_pos, 12); sync_slave_with_master; -# Save relay log postion for query INSERT INTO t2 VALUES (1),(2); +# Save relay log position for query INSERT INTO t2 VALUES (1),(2); let $relay_pos_insert1_t2= query_get_value(show slave status, Relay_Log_Pos, 1); connection master; INSERT INTO t2 VALUES (3),(4); DROP TABLE t2; -# Save master log postion for query INSERT INTO t2 VALUES (1),(2); +# Save master log position for query INSERT INTO t2 VALUES (1),(2); let $master_pos_drop_t2= query_get_value(SHOW BINLOG EVENTS, End_log_pos, 17); sync_slave_with_master; === modified file 'mysql-test/suite/rpl/t/rpl_server_id2.test' --- a/mysql-test/suite/rpl/t/rpl_server_id2.test 2010-12-19 17:07:28 +0000 +++ b/mysql-test/suite/rpl/t/rpl_server_id2.test 2011-05-05 22:49:57 +0000 @@ -47,7 +47,7 @@ eval start slave until master_log_file=' --source include/wait_for_slave_io_to_start.inc --source include/wait_for_slave_sql_to_stop.inc ---echo *** checking until postion execution: must be only t1 in the list *** +--echo *** checking until position execution: must be only t1 in the list *** show tables; # cleanup === modified file 'sql/handler.h' --- a/sql/handler.h 2011-04-20 16:00:50 +0000 +++ b/sql/handler.h 2011-05-05 22:49:57 +0000 @@ -1,18 +1,19 @@ -/* Copyright 2000-2008 MySQL AB, 2008 Sun Microsystems, Inc. +/* Copyright (c) 2000, 2011, 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 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 + 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 */ - + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA */ /* Definitions for parameters to do with handler-routines */ @@ -56,7 +57,7 @@ a table with rnd_next() - We will see all rows (including deleted ones) - Row positions are 'table->s->db_record_offset' apart - If this flag is not set, filesort will do a postion() call for each matched + If this flag is not set, filesort will do a position() call for each matched row to be able to find the row later. */ #define HA_REC_NOT_IN_SEQ (1 << 3) === modified file 'sql/slave.cc' --- a/sql/slave.cc 2011-01-24 03:48:54 +0000 +++ b/sql/slave.cc 2011-05-05 22:49:57 +0000 @@ -97,7 +97,7 @@ static const char *reconnect_messages[SL registration on master", "Reconnecting after a failed registration on master", "failed registering on master, reconnecting to try again, \ -log '%s' at postion %s", +log '%s' at position %s", "COM_REGISTER_SLAVE", "Slave I/O thread killed during or after reconnect" }, @@ -105,7 +105,7 @@ log '%s' at postion %s", "Waiting to reconnect after a failed binlog dump request", "Slave I/O thread killed while retrying master dump", "Reconnecting after a failed binlog dump request", - "failed dump request, reconnecting to try again, log '%s' at postion %s", + "failed dump request, reconnecting to try again, log '%s' at position %s", "COM_BINLOG_DUMP", "Slave I/O thread killed during or after reconnect" }, @@ -114,7 +114,7 @@ log '%s' at postion %s", "Slave I/O thread killed while waiting to reconnect after a failed read", "Reconnecting after a failed master event read", "Slave I/O thread: Failed reading log event, reconnecting to retry, \ -log '%s' at postion %s", +log '%s' at position %s", "", "Slave I/O thread killed during or after a reconnect done to recover from \ failed read" === modified file 'storage/archive/ha_archive.cc' --- a/storage/archive/ha_archive.cc 2010-03-25 19:57:06 +0000 +++ b/storage/archive/ha_archive.cc 2011-05-05 22:49:57 +0000 @@ -1,17 +1,19 @@ -/* Copyright (C) 2003 MySQL AB +/* Copyright (c) 2003, 2011, 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 */ + 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., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA */ #ifdef USE_PRAGMA_IMPLEMENTATION #pragma implementation // gcc: Class implementation @@ -864,7 +866,7 @@ int ha_archive::write_row(uchar *buf) */ azflush(&(share->archive_write), Z_SYNC_FLUSH); /* - Set the position of the local read thread to the beginning postion. + Set the position of the local read thread to the beginning position. */ if (read_data_header(&archive)) { === modified file 'storage/ndb/src/kernel/blocks/lgman.cpp' --- a/storage/ndb/src/kernel/blocks/lgman.cpp 2008-02-08 14:17:45 +0000 +++ b/storage/ndb/src/kernel/blocks/lgman.cpp 2011-05-05 22:49:57 +0000 @@ -1,17 +1,19 @@ -/* Copyright (C) 2003 MySQL AB +/* Copyright (c) 2003, 2011, 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 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 + 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 */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA */ #include "lgman.hpp" #include "diskpage.hpp" @@ -2501,7 +2503,7 @@ Lgman::init_run_undo_log(Signal* signal) sendSignal(reference(), GSN_CONTINUEB, signal, 2, JBB); /** - * Insert in correct postion in list of logfile_group's + * Insert in correct position in list of logfile_group's */ Ptr pos; for(tmp.first(pos); !pos.isNull(); tmp.next(pos)) === modified file 'vio/viosocket.c' --- a/vio/viosocket.c 2009-11-20 12:09:50 +0000 +++ b/vio/viosocket.c 2011-05-05 22:49:57 +0000 @@ -1,17 +1,19 @@ -/* Copyright (C) 2000 MySQL AB +/* Copyright (c) 2000, 2011, 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 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 + 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 */ + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA + 02110-1301 USA */ /* Note that we can't have assertion on file descriptors; The reason for @@ -548,7 +550,7 @@ size_t vio_read_shared_memory(Vio * vio, { size_t length; size_t remain_local; - char *current_postion; + char *current_position; HANDLE events[2]; DBUG_ENTER("vio_read_shared_memory"); @@ -556,7 +558,7 @@ size_t vio_read_shared_memory(Vio * vio, size)); remain_local = size; - current_postion=buf; + current_position=buf; events[0]= vio->event_server_wrote; events[1]= vio->event_conn_closed; @@ -590,11 +592,11 @@ size_t vio_read_shared_memory(Vio * vio, if (length > remain_local) length = remain_local; - memcpy(current_postion,vio->shared_memory_pos,length); + memcpy(current_position,vio->shared_memory_pos,length); vio->shared_memory_remain-=length; vio->shared_memory_pos+=length; - current_postion+=length; + current_position+=length; remain_local-=length; if (!vio->shared_memory_remain) @@ -614,7 +616,7 @@ size_t vio_write_shared_memory(Vio * vio { size_t length, remain, sz; HANDLE pos; - const uchar *current_postion; + const uchar *current_position; HANDLE events[2]; DBUG_ENTER("vio_write_shared_memory"); @@ -622,7 +624,7 @@ size_t vio_write_shared_memory(Vio * vio size)); remain = size; - current_postion = buf; + current_position = buf; events[0]= vio->event_server_read; events[1]= vio->event_conn_closed; @@ -640,9 +642,9 @@ size_t vio_write_shared_memory(Vio * vio int4store(vio->handle_map,sz); pos = vio->handle_map + 4; - memcpy(pos,current_postion,sz); + memcpy(pos,current_position,sz); remain-=sz; - current_postion+=sz; + current_position+=sz; if (!SetEvent(vio->event_client_wrote)) DBUG_RETURN((size_t) -1); } --===============7233795886155427716== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/luis.soares@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: luis.soares@stripped # target_branch: file:///home/lsoares/Workspace/bzr/work/bugfixing\ # /push/mysql-5.1/ # testament_sha1: dcc3f0e23d1d39a2a0d8805dc14fccbfc2a9fea2 # timestamp: 2011-05-05 23:50:03 +0100 # base_revision_id: luis.soares@stripped\ # 6ob90n7suxsoizvs # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWceOe0cACdxfgHQwWv///3/n 36C////wYBIfV5ofOquL07w22JFAUO2Cl7wPaa80o9DRQVtj3e7e3Zr29dbz3vPT10MJFEVP0SeU 0/QFPxTRPETanqbKeRPKfqmRpppoYhkAkqeoNAmmmgepqepppPUG9U9E9Rppppp6TI9TQAAcAwjC aYhgEAyAGEaZMmEYCGgkRAgo1PJpD00noUZDJiAAABoAAIpTJoEDUp4MhPRqehGjJGJ6QBptTJ6j JjUCSQEACGhoEyniJqYqftVMwpmkMgDQZEojJMLmDBkt3LjppEOu1cHaIjus/m0WZUBB5/BhSKYl h0g4nb3+PV4/g7P3Ds/Xb7M79DopoFietFSwNxC/5HMGgLnkiKJJBYwK2lNS+20+cPlfckgKap5u 6z72lZcVvKLzQo4r52y0TkFD0Yil88qXreKhgMXpJfQDzdkAFQBNIbSKoYEA0MGj84V3LVd614Is 5piJl3kRCkegR3opQ0m0DaBsQmxzsR+4hG/UINICyHwCFwZ1Pw8bTVixxzapfFpypS4ao3o5Iwde cYcTMziM3Olgi2tZ0CkhNZnERDIwQLJFazh6s5nTQKTLl0cRFnk7UpSlsrVpV3nE3iEZzBZtnTz/ kj1ciatCeHYkaU40mm1NKbU3EgGrvW1yMrEv41sSSTSEz+JNCcy+tNxPsuGxO/24KcD8dkvV4qRr 3xkixDkeyeYQ/hGpHn+iH7hvrPU8ddVTbZMkk4bPC2dafTGiX115/ZKfnyUlyn1HssTBLNCSLY0S a2+IB31Ih5LhEaQxorq4oc6CIyOKKqRE1+IZmhJWcMrwbUpXjglXhRMQ1BlUtTJxWprxI+bJEwQw vSKNgq0P0vCFeKHbo0tqomJxDgiOUSWS80a6OSGLRCGiWet13N/38GDBXpLyjAxuzfn2yuSO8XLY i37nsmn2TKpcgBZaPi0ljYhVo7iK1LwsKIXaoBkTRdba56aEdcMasYwxf7SdKPpAgDC0XmCsH0X3 6nBfojyjBExGCHOY/Fbh5ZQjvsNQx4YLicYtGPUhBHshkMOsadefyHCtsx3tXt8oQALjuzVzfEjH HiVF4xatu94HyYgFJkUD4Gr6VF5qvnYwODHjBH7EcUT3YaU1sMcRnC4Fg4QDK3arcfrt8qxrRaro IPGhyp7jrNYlvJnEziSw7BOUsAPA0eBi7Wl4wYEsFRiUnDuoEoqVgvRdCGXFBNCBsWGEJnb3UaJo O4DUCggSCERnikjmX3GaJpgwWuYE85HpIqEhcsdxWqQmDKlkhWIhZVNTM24WlYMXR2SUzbsFcM4m CiqhxIoLC0fKOWiisuWQhFVTqKbHjgkKZKUIS0vNjclgU6JJIvL1ZeyoakVnQfpJY5G715ujJDEl sNpsZU+nMyzoTgUYI1enZ1M2p5vzofvkeqNWp2wcWIiOsBWuSoXjDXRJSwM6oiukGI8lkOYdoTVG Op2Libn4Eyk+dJtw85yJ3TLCajiRnmKTmbMReOLCQ5jDUZiLC6BQScNtgRHXwU/Lt8XQEGWuyDXd tids7260l1rms0VN/iWwVFIMaAaGJLQzy41k0OeGTYhEOVrOY+EGM5jyaQs24n7ygnQTyC8YqUNY 1o8BepxlEk1A/lxKPyIWmRMoNq2BIY1OgYWYllpzrQqdthYYDjgXkxh9ZJ9Z+ZSfmTNdx4dmAr2K TTXlWd+1hDikxTv2rJJUI2ooOtRc1SxibdRbgRiahiJgWG+RxrIFdbFJdaQNIDxzddO0zhIrKGcQ Kh2Y2o6vyLS8qGKjkPNgZkTadR2o3FR4OR0VZgbtA2UYp6HhcRzdc5mnEbNzyOkxTaILaYWqpxCu ZIfImiBmeYk7bguKSkr+ChXhSMebBxWbapUFF5ysZxOiFxhUVBTAlWpJoHAcpUDhCgZBFIogMaG2 oiVGZIsMSZqoOx+8s77hj6n6DjWtWFWrTGLpBXAi0VfE2Tm5ITUmZOmaJBGV+owdGV0kr8bF54nT sLmDXrLETh5Lth0fmghUrSN5Mk8kuOSBZGXI4l5vOJnO15XndYJibnMzFpC0ZTIcSBvG7gL1JnEw Kn+9FLx5hXwdnbpxojiDDpuNHKD5+h181lNMiuk2PGCoOJB7TKDDkciemlAWVnqNkRxfxNeyRSbC 4eo4RLjcU1a8IgsajJCMxGslK8/hJs48lfYVGIjVpqLtapyUD7jHh4GzhwO+yazl1bphOLy46QFQ 8JXqYnnnaCygiTMaA1A1NLlmPIdx8oFRcMPwJnsXRGOJLA48XlhWQsKCMTe7D1GNm0hgGbgduzBR HjjAtD4AUthiaxxWXzxNuRZ6njobGqHVAKZ5NhovQ6Hik8jGPpjuODMznOXEcQhw3D95GMVMNxI6 FarokRKRtCnm+Zs7vIkyZcQNg84lpOom8g1vKEhbrGwyyM+7dXTLeaSS684PnJzcCkzNE899tO0g 3NWlpQW2QUZjFQ0zIpnXABRcKk1FEmrHJpCiiBIofJUmMtXZnGJEwKsaSBG0iMPM96jr4FerJGVY NXuxENU6XdHNOKJF7SCd3dIjJCvdUmjJmb1hawQ44xjwcMiOipGpIqMsZ2DY2xjQ2gnHUMAkVfA5 vWJh1c+uHXb50XXm+idyYp7l+r807p/VPD3p+s04NSQQkLEER8F7Z1wlyR4JA5cDMld2dJPe9yWq 5YEZEC/RLx9SSGrHwTKk1sShmTFmDjAn+XpW1pDHesSZbmCbo71w3Qlad9QMkuSe+mPhoSubCQ7y SSxN5mlVwnzgGu9oki3PNLqkrYSKxhd1yGBFaI0U5mQ7GJn6V1NvFq0iIRHsgQr4N0QE2XVBSpik BHqagdS2+Ydezd+B0EZLQkc5zFonOXOxOdZl6TnHO7SctJzcZyowDzKSjh9iyGbFYVbnKhVuSQTE JOUjcCfZ0ERaiiC6hJe3g6e151SJZcfZRLAqrXYJhWlrOsSjyb7Mb/bI0/8G1SVap/CJUd8dKK67 pApgnkTHwjciFhD2lXoCWDQpHtYbd954n7J3p4OkTuMaHuSIHqSPY9yIVGYx8igo5KrC2ouIe3zL qTuYHse/jydlWNcpmOoBdjIF55GHYg2dBn494w+Wg5x0mc4yadGBTsEWF1eSCP6SoqExgjFZnMuN 2h6jzA6MbuhSRLD1N/U7bRVmSV5XoehSqt3z1kDr30QmNx4NpLSueVLHvAKvFE9kCTshWqHTvCht swbY27sijyFC4s7z5bPiTobCAPIyoG6CGFtEW+M/RbRZHfiPcWRLD5TKwXvugWAriu8n0O8EIiio oKzLtSIsb5F44KSPMiMPgihs+1BeUpHoihErD/ilP6n0OxHVoP4D7MS2rqeR+PcewEPMUIhAbhck QTCRSTtQ17gV1JkmhyLXIlGM0cE4VKcwCOcNu41mw9bDp16Wffpp8/jnBYXES8p1lxcPNyOYjgI4 EmW9hOz3JDCUF2LDnUcrB0RuB6RHnX6D+jItpsNIo71lX0PBmaoAHwiREb64UcWhM+x6nsS5NR8j dr4PwvaP/ridlvMmRvB3LpMoPVptUKMA6yA4g4ktY5pUHMtPLNZ4zQ1NCITZI+aK7L6UOBK9kQx7 kSbCHxXOm3ddOQFR2chZBveRQjtVZ68ksWS/c+7zX1BDtY/YbDoPOZ9ZHOPv5kcyg9zSZOwoKio4 PLT8PweTPMeWRsby8LCiOlSpeUoZvATsE6tgNyayofkUHyeI17xyJI9EjiYxl0O3koQ7uUrYyLEd 8TM5QcpY8DkfZiABbXWOSMcjz1OReu2JUl/9+M9us+5YcjqVfhvRezvu5h5vPUBbyolHaJHryJjn ECEeu1yQHpFRRR6HDfP8xNdQFTOPgsrUvkNFeELoYAK46AL57fVCFSSJOKsuhceY5IcKpyX6Azny 7BydFSJ1y37i3DyKaD3pUnLlU09FqcPjVL5sl4Oo/HiTL1ghkRpQuGcnnL8ZfTvRmUJZIYSG2xDE NwvObTccDsLde3kxNKAS6EZoUOofTXRTVY6S5Rml/VQsCXJlOS0TL0vOayERvJH24lqnmR5FH2vb 2v+klws2mw7gKjQifd9URiRqn5lnzNkEKA4907wjCEz3tJMdIWJMtY5yMlmiCzDiDmQR7QuYNATM spJ9pVW5FQhhAMJG2u+olw4cmmkyS+RGdKe1QiKOJbt+Ygx/NGa7UUL4rDYp9lGL8RcZ8q/U3pDE R7fIqeQ0F5UILwEzXxKXCDyCBsBo1GsvoEdZyS4RxhL+c5CxitHFp77a0ivIgMjZ2PqfB0Kz9hVp +2g5svbUrRga+BNJpQ4gI7yJ2smrEoYbSqqpOf0HpUiRoEi/iOntS9TIjkEx45skgODDDDOsguSY 8xlNG6J1adCcPORoVlYK9pDAi1DKkYFWythNRNxmk2kHLzbFOPiNZg9cwJVKhoI0WcRmEnDRKIVr STTrVDIAGVIEZx68bp4FmYpVWmHMV3yr/dI8yXJulSQPCnOgFquM2wzYH20ZOPRkhZMfqjqPLHcE fzyr+4h1r3L6fkvYrL7sOziBO9V3NpsNw1HoMDVZ2dkhIBtMTt92jOp5sx4o2PMespPOUiWdbnlr 03UmxHFAINcsbKz79zcLCWG3ScZKKOh4OBttHOF1LCIS8V7/jf9u2o3sdF1AXdIgeut6OXpy3o0G CoDhohEwjlpQFg+0VQBPS+Ep/NHL1Kb8aLQ4MKt7kYd7XFcHIsF0R/YPgkrAgHb1k5IsJ6WANvbU poOYzhwDw8o0T0malPYW5nXarSSKAJO/aXc0r2dveqhtmwGGHGub0A0ShN9hCR5juIRrUNNvqqTV DA8iGlQiFEX+FKTdESJHAlw82Oia8lBKWl9hxLEWOtLQXKnW6opEaBaeTDUOEXQSCO56M5NneiJC 2PSFYEYRYGLgtmQoBKa0j0qeS9fsiNLbbbbbbiIiI3cDBDNvlrbicJFUheANC3XoxQbmj6CPwmCi v6UfrId+vI6I2FOMkPHcIRg5fGWEKBT7vHH6Ii+TBsNZB64JZHk5RuwpEHIEUrIk6WnO4fSjdk1E 3DTnRKOQugWlAREHoRl3FRIIfExzVNnkjibqUBewUIZOwHD0NnrtUkRZJUrHgbD3zfIUiitHBGEA TyuwDYkQYrMhO+5t9DUbi129JkZMXdeLMPKTGQdugEnqgsYqZsHKMRCKkuqc+BvH8R5zAcA4mxfH g4UTYWn5Fa3EzcajjPPMd+IghxSdryMhxTIZzqLsp0x5YMEdvpMC3s9eHdzxQDRNcQFVvXBI1SOQ zFQC5kEQeXHIpjEw3aGx482l7HE0x15sbywyyATFyiJFJgZJRRhr06GCMvWBQYai41GEdSnA7GNM RrN5tRzpFgb0FmmZfwHbDb8F8TqON5YdThCzkAnbCdZlK3D7kiJgknmISNbTEeKzhHn/F3JFOFCQ x457Rw== --===============7233795886155427716==--