From: marko.makela Date: October 19 2010 9:22am Subject: bzr push into mysql-trunk-innodb branch (marko.makela:3251 to 3252) List-Archive: http://lists.mysql.com/commits/121079 Message-Id: <201010190922.o9J80DAA008905@rcsinet13.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0821114059==" --===============0821114059== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline IDMyNTIgTWFya28gTcOka2Vsw6QJMjAxMC0xMC0xOSBbbWVyZ2VdCiAgICAgIE1lcmdlIGZyb20g bXlzcWwtNS41LWlubm9kYgoKICAgIG1vZGlmaWVkOgogICAgICBzdG9yYWdlL2lubm9iYXNlL2lu Y2x1ZGUvb3Mwc3luYy5oCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2UvaW5jbHVkZS9zcnYwc3J2LmgK ICAgICAgc3RvcmFnZS9pbm5vYmFzZS9sb2cvbG9nMGxvZy5jCiAgICAgIHN0b3JhZ2UvaW5ub2Jh c2Uvb3Mvb3Mwc3luYy5jCiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2Uvc3J2L3NydjBzcnYuYwogMzI1 MSBWYXNpbCBEaW1vdgkyMDEwLTEwLTE5IFttZXJnZV0KICAgICAgTWVyZ2UgbXlzcWwtNS41LWlu bm9kYiAtPiBteXNxbC10cnVuay1pbm5vZGIKCiAgICBhZGRlZDoKICAgICAgbXlzcWwtdGVzdC9z dWl0ZS9pbm5vZGIvci9pbm5vZGJfYnVnNTY2MzIucmVzdWx0CiAgICAgIG15c3FsLXRlc3Qvc3Vp dGUvaW5ub2RiL3QvaW5ub2RiX2J1ZzU2NjMyLnRlc3QKICAgIG1vZGlmaWVkOgogICAgICBzdG9y YWdlL2lubm9iYXNlL2hhbmRsZXIvaGFfaW5ub2RiLmNjCj09PSBtb2RpZmllZCBmaWxlICdzdG9y YWdlL2lubm9iYXNlL2luY2x1ZGUvb3Mwc3luYy5oJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2lu Y2x1ZGUvb3Mwc3luYy5oCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEwMTkwODM2 MTgtenNhc2FkbnpjaDRvdTR2bAorKysgYi9zdG9yYWdlL2lubm9iYXNlL2luY2x1ZGUvb3Mwc3lu Yy5oCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMDE5MDkxMjQyLWhhaXM5NDZr Mnk1OHZoMGgKQEAgLTc2LDYgKzc2LDEyIEBAIHN0cnVjdCBvc19ldmVudF9zdHJ1Y3QgewogCQkJ CQkvKiE8IGxpc3Qgb2YgYWxsIGNyZWF0ZWQgZXZlbnRzICovCiB9OwogCisvKiogRGVub3RlcyBh biBpbmZpbml0ZSBkZWxheSBmb3Igb3NfZXZlbnRfd2FpdF90aW1lKCkgKi8KKyNkZWZpbmUgT1Nf U1lOQ19JTkZJTklURV9USU1FICAgVUxJTlRfVU5ERUZJTkVECisKKy8qKiBSZXR1cm4gdmFsdWUg b2Ygb3NfZXZlbnRfd2FpdF90aW1lKCkgd2hlbiB0aGUgdGltZSBpcyBleGNlZWRlZCAqLworI2Rl ZmluZSBPU19TWU5DX1RJTUVfRVhDRUVERUQgICAxCisKIC8qKiBPcGVyYXRpbmcgc3lzdGVtIG11 dGV4ICovCiB0eXBlZGVmIHN0cnVjdCBvc19tdXRleF9zdHJ1Y3QJb3NfbXV0ZXhfc3RyX3Q7CiAv KiogT3BlcmF0aW5nIHN5c3RlbSBtdXRleCBoYW5kbGUgKi8KQEAgLTE3Myw3ICsxNzksMjMgQEAg b3NfZXZlbnRfd2FpdF9sb3coCiAJCQkJCW9zX2V2ZW50X3Jlc2V0KCkuICovCiAKICNkZWZpbmUg b3NfZXZlbnRfd2FpdChldmVudCkgb3NfZXZlbnRfd2FpdF9sb3coZXZlbnQsIDApCisjZGVmaW5l IG9zX2V2ZW50X3dhaXRfdGltZShlLCB0KSBvc19ldmVudF93YWl0X3RpbWVfbG93KGV2ZW50LCB0 LCAwKQogCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKi8vKioKK1dhaXRzIGZvciBhbiBldmVudCBvYmplY3QgdW50aWwgaXQgaXMgaW4g dGhlIHNpZ25hbGVkIHN0YXRlIG9yCithIHRpbWVvdXQgaXMgZXhjZWVkZWQuIEluIFVuaXggdGhl IHRpbWVvdXQgaXMgYWx3YXlzIGluZmluaXRlLgorQHJldHVybgkwIGlmIHN1Y2Nlc3MsIE9TX1NZ TkNfVElNRV9FWENFRURFRCBpZiB0aW1lb3V0IHdhcyBleGNlZWRlZCAqLworVU5JVl9JTlRFUk4K K3VsaW50Citvc19ldmVudF93YWl0X3RpbWVfbG93KAorLyo9PT09PT09PT09PT09PT09PT09Ki8K Kwlvc19ldmVudF90CWV2ZW50LAkJCS8qITwgaW46IGV2ZW50IHRvIHdhaXQgKi8KKwl1bGludAkJ dGltZV9pbl91c2VjLAkJLyohPCBpbjogdGltZW91dCBpbgorCQkJCQkJbWljcm9zZWNvbmRzLCBv cgorCQkJCQkJT1NfU1lOQ19JTkZJTklURV9USU1FICovCisJaWJfaW50NjRfdAlyZXNldF9zaWdf Y291bnQpOwkvKiE8IGluOiB6ZXJvIG9yIHRoZSB2YWx1ZQorCQkJCQkJcmV0dXJuZWQgYnkgcHJl dmlvdXMgY2FsbCBvZgorCQkJCQkJb3NfZXZlbnRfcmVzZXQoKS4gKi8KIC8qKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBDcmVhdGVz IGFuIG9wZXJhdGluZyBzeXN0ZW0gbXV0ZXggc2VtYXBob3JlLiBCZWNhdXNlIHRoZXNlIGFyZSBz bG93LCB0aGUKIG11dGV4IHNlbWFwaG9yZSBvZiBJbm5vREIgaXRzZWxmIChtdXRleF90KSBzaG91 bGQgYmUgdXNlZCB3aGVyZSBwb3NzaWJsZS4KCj09PSBtb2RpZmllZCBmaWxlICdzdG9yYWdlL2lu bm9iYXNlL2luY2x1ZGUvc3J2MHNydi5oJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2luY2x1ZGUv c3J2MHNydi5oCXJldmlkOnZhc2lsLmRpbW92QG9yYWNsZS5jb20tMjAxMDEwMTkwODM2MTgtenNh c2FkbnpjaDRvdTR2bAorKysgYi9zdG9yYWdlL2lubm9iYXNlL2luY2x1ZGUvc3J2MHNydi5oCXJl dmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29tLTIwMTAxMDE5MDkxMjQyLWhhaXM5NDZrMnk1OHZo MGgKQEAgLTU3LDYgKzU3LDE1IEBAIGV4dGVybiBjb25zdCBjaGFyCXNydl9teXNxbDUwX3RhYmxl X25hbWUKIHRocmVhZCBzdGFydHMgcnVubmluZyAqLwogZXh0ZXJuIG9zX2V2ZW50X3QJc3J2X2xv Y2tfdGltZW91dF90aHJlYWRfZXZlbnQ7CiAKKy8qIFRoZSBtb25pdG9yIHRocmVhZCB3YWl0cyBv biB0aGlzIGV2ZW50LiAqLworZXh0ZXJuIG9zX2V2ZW50X3QJc3J2X21vbml0b3JfZXZlbnQ7CisK Ky8qIFRoZSBsb2NrIHRpbWVvdXQgdGhyZWFkIHdhaXRzIG9uIHRoaXMgZXZlbnQuICovCitleHRl cm4gb3NfZXZlbnRfdAlzcnZfdGltZW91dF9ldmVudDsKKworLyogVGhlIGVycm9yIG1vbml0b3Ig dGhyZWFkIHdhaXRzIG9uIHRoaXMgZXZlbnQuICovCitleHRlcm4gb3NfZXZlbnRfdAlzcnZfZXJy b3JfZXZlbnQ7CisKIC8qIElmIHRoZSBsYXN0IGRhdGEgZmlsZSBpcyBhdXRvLWV4dGVuZGVkLCB3 ZSBhZGQgdGhpcyBtYW55IHBhZ2VzIHRvIGl0CiBhdCBhIHRpbWUgKi8KICNkZWZpbmUgU1JWX0FV VE9fRVhURU5EX0lOQ1JFTUVOVAlcCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFz ZS9sb2cvbG9nMGxvZy5jJwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL2xvZy9sb2cwbG9nLmMJcmV2 aWQ6dmFzaWwuZGltb3ZAb3JhY2xlLmNvbS0yMDEwMTAxOTA4MzYxOC16c2FzYWRuemNoNG91NHZs CisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2UvbG9nL2xvZzBsb2cuYwlyZXZpZDptYXJrby5tYWtlbGFA b3JhY2xlLmNvbS0yMDEwMTAxOTA5MTI0Mi1oYWlzOTQ2azJ5NTh2aDBoCkBAIC0zMTM3LDE0ICsz MTM3LDE3IEBAIGxvb3A6CiAJcHJvY2VlZCB3aXRob3V0IHdhaXRpbmcgZm9yIG1vbml0b3IgdGhy ZWFkcy4gKi8KIAogCWlmIChzcnZfZmFzdF9zaHV0ZG93biA8IDIKLQkgICAmJiAoc3J2X2Vycm9y X21vbml0b3JfYWN0aXZlCi0JICAgICAgfHwgc3J2X2xvY2tfdGltZW91dF9hY3RpdmUgfHwgc3J2 X21vbml0b3JfYWN0aXZlKSkgewotCQljb25zdCBjaGFyKgl0aHJlYWRfYWN0aXZlID0gTlVMTDsK KwkgICAgJiYgKHNydl9lcnJvcl9tb25pdG9yX2FjdGl2ZQorCQl8fCBzcnZfbG9ja190aW1lb3V0 X2FjdGl2ZQorCQl8fCBzcnZfbW9uaXRvcl9hY3RpdmUpKSB7CisKKwkJbXV0ZXhfZXhpdCgma2Vy bmVsX211dGV4KTsKIAogCQkvKiBQcmludCBhIG1lc3NhZ2UgZXZlcnkgNjAgc2Vjb25kcyBpZiB3 ZSBhcmUgd2FpdGluZwogCQlmb3IgdGhlIG1vbml0b3IgdGhyZWFkIHRvIGV4aXQuIE1hc3RlciBh bmQgd29ya2VyIHRocmVhZHMKIAkJY2hlY2sgd2lsbCBiZSBkb25lIGxhdGVyLiAqLwogCQlpZiAo c3J2X3ByaW50X3ZlcmJvc2VfbG9nICYmIGNvdW50ID4gNjAwKSB7CisJCQljb25zdCBjaGFyKgl0 aHJlYWRfYWN0aXZlID0gTlVMTDsKIAogCQkJaWYgKHNydl9lcnJvcl9tb25pdG9yX2FjdGl2ZSkg ewogCQkJCXRocmVhZF9hY3RpdmUgPSAic3J2X2Vycm9yX21vbml0b3JfdGhyZWFkIjsKQEAgLTMx NTMsMTcgKzMxNTYsMTkgQEAgbG9vcDoKIAkJCX0gZWxzZSBpZiAoc3J2X21vbml0b3JfYWN0aXZl KSB7CiAJCQkJdGhyZWFkX2FjdGl2ZSA9ICJzcnZfbW9uaXRvcl90aHJlYWQiOwogCQkJfQotCQl9 CiAKLQkJbXV0ZXhfZXhpdCgma2VybmVsX211dGV4KTsKLQotCQlpZiAodGhyZWFkX2FjdGl2ZSkg ewotCQkJdXRfcHJpbnRfdGltZXN0YW1wKHN0ZGVycik7Ci0JCQlmcHJpbnRmKHN0ZGVyciwgIiAg SW5ub0RCOiBXYWl0aW5nIGZvciAlcyAiCi0JCQkJInRvIGV4aXRcbiIsIHRocmVhZF9hY3RpdmUp OwotCQkJY291bnQgPSAwOworCQkJaWYgKHRocmVhZF9hY3RpdmUpIHsKKwkJCQl1dF9wcmludF90 aW1lc3RhbXAoc3RkZXJyKTsKKwkJCQlmcHJpbnRmKHN0ZGVyciwgIiAgSW5ub0RCOiBXYWl0aW5n IGZvciAlcyAiCisJCQkJCSJ0byBleGl0XG4iLCB0aHJlYWRfYWN0aXZlKTsKKwkJCQljb3VudCA9 IDA7CisJCQl9CiAJCX0KIAorCQlvc19ldmVudF9zZXQoc3J2X2Vycm9yX2V2ZW50KTsKKwkJb3Nf ZXZlbnRfc2V0KHNydl9tb25pdG9yX2V2ZW50KTsKKwkJb3NfZXZlbnRfc2V0KHNydl90aW1lb3V0 X2V2ZW50KTsKKwogCQlnb3RvIGxvb3A7CiAJfQogCkBAIC0zMTk5LDYgKzMyMDQsOCBAQCBsb29w OgogCiAJCWxvZ19idWZmZXJfZmx1c2hfdG9fZGlzaygpOwogCisJCW11dGV4X2V4aXQoJmtlcm5l bF9tdXRleCk7CisKIAkJcmV0dXJuOyAvKiBXZSBTS0lQIEFMTCBUSEUgUkVTVCAhISAqLwogCX0K IAoKPT09IG1vZGlmaWVkIGZpbGUgJ3N0b3JhZ2UvaW5ub2Jhc2Uvb3Mvb3Mwc3luYy5jJwotLS0g YS9zdG9yYWdlL2lubm9iYXNlL29zL29zMHN5bmMuYwlyZXZpZDp2YXNpbC5kaW1vdkBvcmFjbGUu Y29tLTIwMTAxMDE5MDgzNjE4LXpzYXNhZG56Y2g0b3U0dmwKKysrIGIvc3RvcmFnZS9pbm5vYmFz ZS9vcy9vczBzeW5jLmMJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5jb20tMjAxMDEwMTkwOTEy NDItaGFpczk0NmsyeTU4dmgwaApAQCAtNzIsNiArNzIsOSBAQCBVTklWX0lOVEVSTiB1bGludAlv c19ldmVudF9jb3VudAkJPSAwOwogVU5JVl9JTlRFUk4gdWxpbnQJb3NfbXV0ZXhfY291bnQJCT0g MDsKIFVOSVZfSU5URVJOIHVsaW50CW9zX2Zhc3RfbXV0ZXhfY291bnQJPSAwOwogCisvKiBUaGUg bnVtYmVyIG9mIG1pY3Jvc2VjbmRzIGluIGEgc2Vjb25kLiAqLworc3RhdGljIGNvbnN0IHVsaW50 IE1JQ1JPU0VDU19JTl9BX1NFQ09ORCA9IDEwMDAwMDA7CisKIC8qIEJlY2F1c2UgYSBtdXRleCBp cyBlbWJlZGRlZCBpbnNpZGUgYW4gZXZlbnQgYW5kIHRoZXJlIGlzIGFuCiBldmVudCBlbWJlZGRl ZCBpbnNpZGUgYSBtdXRleCwgb24gZnJlZSwgdGhpcyBnZW5lcmF0ZXMgYSByZWN1cnNpdmUgY2Fs bC4KIFRoaXMgdmVyc2lvbiBvZiB0aGUgZnJlZSBldmVudCBmdW5jdGlvbiBkb2Vzbid0IGFjcXVp cmUgdGhlIGdsb2JhbCBsb2NrICovCkBAIC0xMjIsNiArMTI1LDQ3IEBAIG9zX2NvbmRfaW5pdCgK IH0KIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKi8vKioKK0RvIGEgdGltZWQgd2FpdCBvbiBjb25kaXRpb24gdmFyaWFibGUuCitAcmV0 dXJuIFRSVUUgaWYgdGltZWQgb3V0LCBGQUxTRSBvdGhlcndpc2UgKi8KK1VOSVZfSU5MSU5FCitp Ym9vbAorb3NfY29uZF93YWl0X3RpbWVkKAorLyo9PT09PT09PT09PT09PT0qLworCW9zX2NvbmRf dCoJCWNvbmQsCQkvKiE8IGluOiBjb25kaXRpb24gdmFyaWFibGUuICovCisJb3NfZmFzdF9tdXRl eF90KgltdXRleCwJCS8qITwgaW46IGZhc3QgbXV0ZXggKi8KKyNpZm5kZWYgX19XSU5fXworCWNv bnN0IHN0cnVjdCB0aW1lc3BlYyoJYWJzdGltZQkJLyohPCBpbjogdGltZW91dCAqLworI2Vsc2UK Kwl1bGludAkJCXRpbWVfaW5fbXMJLyohPCBpbjogdGltZW91dCBpbgorCQkJCQkJbWlsbGlzZWNv bmRzICovCisjZW5kaWYgLyogIV9fV0lOX18gKi8KKykKK3sKKyNpZmRlZiBfX1dJTl9fCisJQk9P TAkJCXJldDsKKworCXV0X2Eoc2xlZXBfY29uZGl0aW9uX3ZhcmlhYmxlICE9IE5VTEwpOworCisJ cmV0ID0gc2xlZXBfY29uZGl0aW9uX3ZhcmlhYmxlKGNvbmQsIG11dGV4LCB0aW1lX2luX21zKTsK KworCWlmICghcmV0ICYmIEdldExhc3RFcnJvcigpID09IFdBSVRfVElNRU9VVCkgeworCQlyZXR1 cm4oVFJVRSk7CisJfQorCisJdXRfYShyZXQpOworCisJcmV0dXJuKEZBTFNFKTsKKyNlbHNlCisJ aW50CXJldDsKKworCXJldCA9IHB0aHJlYWRfY29uZF90aW1lZHdhaXQoY29uZCwgbXV0ZXgsIGFi c3RpbWUpOworCisJdXRfYShyZXQgPT0gMCB8fCByZXQgPT0gRVRJTUVET1VUKTsKKworCXJldHVy bihyZXQgPT0gRVRJTUVET1VUKTsKKyNlbmRpZgorfQorLyoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIFdhaXQgb24gY29uZGl0aW9u IHZhcmlhYmxlICovCiBVTklWX0lOTElORQogdm9pZApAQCAtNTcyLDYgKzYxNiwxMTMgQEAgb3Nf ZXZlbnRfd2FpdF9sb3coCiAJfQogfQogCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKK1dhaXRzIGZvciBhbiBldmVudCBvYmpl Y3QgdW50aWwgaXQgaXMgaW4gdGhlIHNpZ25hbGVkIHN0YXRlIG9yCithIHRpbWVvdXQgaXMgZXhj ZWVkZWQuCitAcmV0dXJuCTAgaWYgc3VjY2VzcywgT1NfU1lOQ19USU1FX0VYQ0VFREVEIGlmIHRp bWVvdXQgd2FzIGV4Y2VlZGVkICovCitVTklWX0lOVEVSTgordWxpbnQKK29zX2V2ZW50X3dhaXRf dGltZV9sb3coCisvKj09PT09PT09PT09PT09PT09PT0qLworCW9zX2V2ZW50X3QJZXZlbnQsCQkJ LyohPCBpbjogZXZlbnQgdG8gd2FpdCAqLworCXVsaW50CQl0aW1lX2luX3VzZWMsCQkvKiE8IGlu OiB0aW1lb3V0IGluCisJCQkJCQltaWNyb3NlY29uZHMsIG9yCisJCQkJCQlPU19TWU5DX0lORklO SVRFX1RJTUUgKi8KKwlpYl9pbnQ2NF90CXJlc2V0X3NpZ19jb3VudCkJLyohPCBpbjogemVybyBv ciB0aGUgdmFsdWUKKwkJCQkJCXJldHVybmVkIGJ5IHByZXZpb3VzIGNhbGwgb2YKKwkJCQkJCW9z X2V2ZW50X3Jlc2V0KCkuICovCisKK3sKKwlpYm9vbAkJdGltZWRfb3V0OworCWliX2ludDY0X3QJ b2xkX3NpZ25hbF9jb3VudDsKKworI2lmZGVmIF9fV0lOX18KKwlEV09SRAkJdGltZV9pbl9tcyA9 IHRpbWVfaW5fdXNlYyAvIDEwMDA7CisKKwlpZiAoIXNydl91c2VfbmF0aXZlX2NvbmRpdGlvbnMp IHsKKwkJRFdPUkQJZXJyOworCisJCXV0X2EoZXZlbnQpOworCisJCWlmICh0aW1lX2luX21zICE9 IE9TX1NZTkNfSU5GSU5JVEVfVElNRSkgeworCQkJZXJyID0gV2FpdEZvclNpbmdsZU9iamVjdChl dmVudC0+aGFuZGxlLCB0aW1lX2luX21zKTsKKwkJfSBlbHNlIHsKKwkJCWVyciA9IFdhaXRGb3JT aW5nbGVPYmplY3QoZXZlbnQtPmhhbmRsZSwgSU5GSU5JVEUpOworCQl9CisKKwkJaWYgKGVyciA9 PSBXQUlUX09CSkVDVF8wKSB7CisJCQlyZXR1cm4oMCk7CisJCX0gZWxzZSBpZiAoZXJyID09IFdB SVRfVElNRU9VVCkgeworCQkJcmV0dXJuKE9TX1NZTkNfVElNRV9FWENFRURFRCk7CisJCX0KKwor CQl1dF9lcnJvcjsKKwkJLyogRHVtbXkgdmFsdWUgdG8gZWxpbWluYXRlIGNvbXBpbGVyIHdhcm5p bmcuICovCisJCXJldHVybig0Mik7CisJfSBlbHNlIHsKKwkJdXRfYShzbGVlcF9jb25kaXRpb25f dmFyaWFibGUgIT0gTlVMTCk7CisJfQorI2Vsc2UKKwlzdHJ1Y3QgdGltZXZhbAl0djsKKwl1bGlu dAkJc2VjOworCXVsaW50CQl1c2VjOworCWludAkJcmV0OworCXN0cnVjdCB0aW1lc3BlYwlhYnN0 aW1lOworCisJcmV0ID0gdXRfdXNlY3RpbWUoJnNlYywgJnVzZWMpOworCXV0X2EocmV0ID09IDAp OworCisJdHYudHZfc2VjID0gc2VjOworCXR2LnR2X3VzZWMgPSB1c2VjOworCisJdHYudHZfdXNl YyArPSB0aW1lX2luX3VzZWM7CisKKwlpZiAoKHVsaW50KSB0di50dl91c2VjID4gTUlDUk9TRUNT X0lOX0FfU0VDT05EKSB7CisJCXR2LnR2X3NlYyArPSB0aW1lX2luX3VzZWMgLyBNSUNST1NFQ1Nf SU5fQV9TRUNPTkQ7CisJCXR2LnR2X3VzZWMgJT0gTUlDUk9TRUNTX0lOX0FfU0VDT05EOworCX0K KworCS8qIENvbnZlcnQgdG8gbmFubyBzZWNvbmRzLiBXZSBpZ25vcmUgb3ZlcmZsb3cuICovCisJ YWJzdGltZS50dl9zZWMgID0gdHYudHZfc2VjOworCWFic3RpbWUudHZfbnNlYyA9IHR2LnR2X3Vz ZWMgKiAxMDAwOworI2VuZGlmIC8qIF9fV0lOX18gKi8KKworCW9zX2Zhc3RfbXV0ZXhfbG9jaygm ZXZlbnQtPm9zX211dGV4KTsKKworCWlmIChyZXNldF9zaWdfY291bnQpIHsKKwkJb2xkX3NpZ25h bF9jb3VudCA9IHJlc2V0X3NpZ19jb3VudDsKKwl9IGVsc2UgeworCQlvbGRfc2lnbmFsX2NvdW50 ID0gZXZlbnQtPnNpZ25hbF9jb3VudDsKKwl9CisKKwlkbyB7CisJCWlmIChldmVudC0+aXNfc2V0 ID09IFRSVUUKKwkJICAgIHx8IGV2ZW50LT5zaWduYWxfY291bnQgIT0gb2xkX3NpZ25hbF9jb3Vu dCkgeworCisJCQlicmVhazsKKwkJfQorCisJCXRpbWVkX291dCA9IG9zX2NvbmRfd2FpdF90aW1l ZCgKKwkJCSZldmVudC0+Y29uZF92YXIsICZldmVudC0+b3NfbXV0ZXgsCisjaWZuZGVmIF9fV0lO X18KKwkJCSZhYnN0aW1lCisjZWxzZQorCQkJdGltZV9pbl9tcworI2VuZGlmIC8qICFfX1dJTl9f ICovCisJCSk7CisKKwl9IHdoaWxlICghdGltZWRfb3V0KTsKKworCW9zX2Zhc3RfbXV0ZXhfdW5s b2NrKCZldmVudC0+b3NfbXV0ZXgpOworCisJaWYgKHNydl9zaHV0ZG93bl9zdGF0ZSA9PSBTUlZf U0hVVERPV05fRVhJVF9USFJFQURTKSB7CisKKwkJb3NfdGhyZWFkX2V4aXQoTlVMTCk7CisJfQor CisJcmV0dXJuKHRpbWVkX291dCA/IE9TX1NZTkNfVElNRV9FWENFRURFRCA6IDApOworfQorCiAv KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Ly8qKgogQ3JlYXRlcyBhbiBvcGVyYXRpbmcgc3lzdGVtIG11dGV4IHNlbWFwaG9yZS4gQmVjYXVz ZSB0aGVzZSBhcmUgc2xvdywgdGhlCiBtdXRleCBzZW1hcGhvcmUgb2YgSW5ub0RCIGl0c2VsZiAo bXV0ZXhfdCkgc2hvdWxkIGJlIHVzZWQgd2hlcmUgcG9zc2libGUuCgo9PT0gbW9kaWZpZWQgZmls ZSAnc3RvcmFnZS9pbm5vYmFzZS9zcnYvc3J2MHNydi5jJwotLS0gYS9zdG9yYWdlL2lubm9iYXNl L3Nydi9zcnYwc3J2LmMJcmV2aWQ6dmFzaWwuZGltb3ZAb3JhY2xlLmNvbS0yMDEwMTAxOTA4MzYx OC16c2FzYWRuemNoNG91NHZsCisrKyBiL3N0b3JhZ2UvaW5ub2Jhc2Uvc3J2L3NydjBzcnYuYwly ZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEwMTAxOTA5MTI0Mi1oYWlzOTQ2azJ5NTh2 aDBoCkBAIC02OTgsNiArNjk4LDEyIEBAIHN0cnVjdCBzcnZfc2xvdF9zdHJ1Y3R7CiAvKiBUYWJs ZSBmb3IgTXlTUUwgdGhyZWFkcyB3aGVyZSB0aGV5IHdpbGwgYmUgc3VzcGVuZGVkIHRvIHdhaXQg Zm9yIGxvY2tzICovCiBVTklWX0lOVEVSTiBzcnZfc2xvdF90KglzcnZfbXlzcWxfdGFibGUgPSBO VUxMOwogCitVTklWX0lOVEVSTiBvc19ldmVudF90CXNydl90aW1lb3V0X2V2ZW50OworCitVTklW X0lOVEVSTiBvc19ldmVudF90CXNydl9tb25pdG9yX2V2ZW50OworCitVTklWX0lOVEVSTiBvc19l dmVudF90CXNydl9lcnJvcl9ldmVudDsKKwogVU5JVl9JTlRFUk4gb3NfZXZlbnRfdAlzcnZfbG9j a190aW1lb3V0X3RocmVhZF9ldmVudDsKIAogVU5JVl9JTlRFUk4gc3J2X3N5c190KglzcnZfc3lz CT0gTlVMTDsKQEAgLTEwMTUsNiArMTAyMSwxMiBAQCBzcnZfaW5pdCh2b2lkKQogCQl1dF9hKHNs b3QtPmV2ZW50KTsKIAl9CiAKKwlzcnZfZXJyb3JfZXZlbnQgPSBvc19ldmVudF9jcmVhdGUoTlVM TCk7CisKKwlzcnZfdGltZW91dF9ldmVudCA9IG9zX2V2ZW50X2NyZWF0ZShOVUxMKTsKKworCXNy dl9tb25pdG9yX2V2ZW50ID0gb3NfZXZlbnRfY3JlYXRlKE5VTEwpOworCiAJc3J2X2xvY2tfdGlt ZW91dF90aHJlYWRfZXZlbnQgPSBvc19ldmVudF9jcmVhdGUoTlVMTCk7CiAKIAlmb3IgKGkgPSAw OyBpIDwgU1JWX01BU1RFUiArIDE7IGkrKykgewpAQCAtMjA0MSw2ICsyMDUzLDcgQEAgc3J2X21v bml0b3JfdGhyZWFkKAogCQkJLyohPCBpbjogYSBkdW1teSBwYXJhbWV0ZXIgcmVxdWlyZWQgYnkK IAkJCW9zX3RocmVhZF9jcmVhdGUgKi8KIHsKKwlpYl9pbnQ2NF90CXNpZ19jb3VudDsKIAlkb3Vi bGUJCXRpbWVfZWxhcHNlZDsKIAl0aW1lX3QJCWN1cnJlbnRfdGltZTsKIAl0aW1lX3QJCWxhc3Rf dGFibGVfbW9uaXRvcl90aW1lOwpAQCAtMjA1OSwyNiArMjA3MiwyOCBAQCBzcnZfbW9uaXRvcl90 aHJlYWQoCiAjZW5kaWYKIAogCVVUX05PVF9VU0VEKGFyZyk7Ci0Jc3J2X2xhc3RfbW9uaXRvcl90 aW1lID0gdGltZShOVUxMKTsKLQlsYXN0X3RhYmxlX21vbml0b3JfdGltZSA9IHRpbWUoTlVMTCk7 Ci0JbGFzdF90YWJsZXNwYWNlX21vbml0b3JfdGltZSA9IHRpbWUoTlVMTCk7Ci0JbGFzdF9tb25p dG9yX3RpbWUgPSB0aW1lKE5VTEwpOworCXNydl9sYXN0X21vbml0b3JfdGltZSA9IHV0X3RpbWUo KTsKKwlsYXN0X3RhYmxlX21vbml0b3JfdGltZSA9IHV0X3RpbWUoKTsKKwlsYXN0X3RhYmxlc3Bh Y2VfbW9uaXRvcl90aW1lID0gdXRfdGltZSgpOworCWxhc3RfbW9uaXRvcl90aW1lID0gdXRfdGlt ZSgpOwogCW11dGV4X3NraXBwZWQgPSAwOwogCWxhc3Rfc3J2X3ByaW50X21vbml0b3IgPSBzcnZf cHJpbnRfaW5ub2RiX21vbml0b3I7CiBsb29wOgogCXNydl9tb25pdG9yX2FjdGl2ZSA9IFRSVUU7 CiAKIAkvKiBXYWtlIHVwIGV2ZXJ5IDUgc2Vjb25kcyB0byBzZWUgaWYgd2UgbmVlZCB0byBwcmlu dAotCW1vbml0b3IgaW5mb3JtYXRpb24uICovCisJbW9uaXRvciBpbmZvcm1hdGlvbiBvciBpZiBz aWduYWxsZWQgYXQgc2h1dGRvd24uICovCiAKLQlvc190aHJlYWRfc2xlZXAoNTAwMDAwMCk7CisJ c2lnX2NvdW50ID0gb3NfZXZlbnRfcmVzZXQoc3J2X21vbml0b3JfZXZlbnQpOwogCi0JY3VycmVu dF90aW1lID0gdGltZShOVUxMKTsKKwlvc19ldmVudF93YWl0X3RpbWVfbG93KHNydl9tb25pdG9y X2V2ZW50LCA1MDAwMDAwLCBzaWdfY291bnQpOworCisJY3VycmVudF90aW1lID0gdXRfdGltZSgp OwogCiAJdGltZV9lbGFwc2VkID0gZGlmZnRpbWUoY3VycmVudF90aW1lLCBsYXN0X21vbml0b3Jf dGltZSk7CiAKIAlpZiAodGltZV9lbGFwc2VkID4gMTUpIHsKLQkJbGFzdF9tb25pdG9yX3RpbWUg PSB0aW1lKE5VTEwpOworCQlsYXN0X21vbml0b3JfdGltZSA9IHV0X3RpbWUoKTsKIAogCQlpZiAo c3J2X3ByaW50X2lubm9kYl9tb25pdG9yKSB7CiAJCQkvKiBSZXNldCBtdXRleF9za2lwcGVkIGNv dW50ZXIgZXZlcnl0aW1lCkBAIC0yMTIyLDcgKzIxMzcsNyBAQCBsb29wOgogCQlpZiAoc3J2X3By aW50X2lubm9kYl90YWJsZXNwYWNlX21vbml0b3IKIAkJICAgICYmIGRpZmZ0aW1lKGN1cnJlbnRf dGltZSwKIAkJCQlsYXN0X3RhYmxlc3BhY2VfbW9uaXRvcl90aW1lKSA+IDYwKSB7Ci0JCQlsYXN0 X3RhYmxlc3BhY2VfbW9uaXRvcl90aW1lID0gdGltZShOVUxMKTsKKwkJCWxhc3RfdGFibGVzcGFj ZV9tb25pdG9yX3RpbWUgPSB1dF90aW1lKCk7CiAKIAkJCWZwdXRzKCI9PT09PT09PT09PT09PT09 PT09PT09PT0iCiAJCQkgICAgICAiPT09PT09PT09PT09PT09PT09PT09PT09XG4iLApAQCAtMjE0 OCw3ICsyMTYzLDcgQEAgbG9vcDoKIAkJaWYgKHNydl9wcmludF9pbm5vZGJfdGFibGVfbW9uaXRv cgogCQkgICAgJiYgZGlmZnRpbWUoY3VycmVudF90aW1lLCBsYXN0X3RhYmxlX21vbml0b3JfdGlt ZSkgPiA2MCkgewogCi0JCQlsYXN0X3RhYmxlX21vbml0b3JfdGltZSA9IHRpbWUoTlVMTCk7CisJ CQlsYXN0X3RhYmxlX21vbml0b3JfdGltZSA9IHV0X3RpbWUoKTsKIAogCQkJZnB1dHMoIj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiIsCiAJCQkgICAgICBzdGRl cnIpOwpAQCAtMjIwOCwxNiArMjIyMywyMCBAQCBzcnZfbG9ja190aW1lb3V0X3RocmVhZCgKIAlp Ym9vbAkJc29tZV93YWl0czsKIAlkb3VibGUJCXdhaXRfdGltZTsKIAl1bGludAkJaTsKKwlpYl9p bnQ2NF90CXNpZ19jb3VudDsKIAogI2lmZGVmIFVOSVZfUEZTX1RIUkVBRAogCXBmc19yZWdpc3Rl cl90aHJlYWQoc3J2X2xvY2tfdGltZW91dF90aHJlYWRfa2V5KTsKICNlbmRpZgogCiBsb29wOgor CiAJLyogV2hlbiBzb21lb25lIGlzIHdhaXRpbmcgZm9yIGEgbG9jaywgd2Ugd2FrZSB1cCBldmVy eSBzZWNvbmQKIAlhbmQgY2hlY2sgaWYgYSB0aW1lb3V0IGhhcyBwYXNzZWQgZm9yIGEgbG9jayB3 YWl0ICovCiAKLQlvc190aHJlYWRfc2xlZXAoMTAwMDAwMCk7CisJc2lnX2NvdW50ID0gb3NfZXZl bnRfcmVzZXQoc3J2X3RpbWVvdXRfZXZlbnQpOworCisJb3NfZXZlbnRfd2FpdF90aW1lX2xvdyhz cnZfdGltZW91dF9ldmVudCwgMTAwMDAwMCwgc2lnX2NvdW50KTsKIAogCXNydl9sb2NrX3RpbWVv dXRfYWN0aXZlID0gVFJVRTsKIApAQCAtMjMxMyw2ICsyMzMyLDcgQEAgc3J2X2Vycm9yX21vbml0 b3JfdGhyZWFkKAogCXVsaW50CQlmYXRhbF9jbnQJPSAwOwogCWliX3VpbnQ2NF90CW9sZF9sc247 CiAJaWJfdWludDY0X3QJbmV3X2xzbjsKKwlpYl9pbnQ2NF90CXNpZ19jb3VudDsKIAogCW9sZF9s c24gPSBzcnZfc3RhcnRfbHNuOwogCkBAIC0yMzg4LDcgKzI0MDgsOSBAQCBsb29wOgogCiAJZmZs dXNoKHN0ZGVycik7CiAKLQlvc190aHJlYWRfc2xlZXAoMTAwMDAwMCk7CisJc2lnX2NvdW50ID0g b3NfZXZlbnRfcmVzZXQoc3J2X2Vycm9yX2V2ZW50KTsKKworCW9zX2V2ZW50X3dhaXRfdGltZV9s b3coc3J2X2Vycm9yX2V2ZW50LCAxMDAwMDAwLCBzaWdfY291bnQpOwogCiAJaWYgKHNydl9zaHV0 ZG93bl9zdGF0ZSA8IFNSVl9TSFVURE9XTl9DTEVBTlVQKSB7CiAKQEAgLTI3MDEsNiArMjcyMywy MSBAQCBsb29wOgogCWZvciAoaSA9IDA7IGkgPCAxMDsgaSsrKSB7CiAJCXVsaW50CWN1cl90aW1l ID0gdXRfdGltZV9tcygpOwogCisJCS8qIEFMVEVSIFRBQkxFIGluIE15U1FMIHJlcXVpcmVzIG9u IFVuaXggdGhhdCB0aGUgdGFibGUgaGFuZGxlcgorCQljYW4gZHJvcCB0YWJsZXMgbGF6aWx5IGFm dGVyIHRoZXJlIG5vIGxvbmdlciBhcmUgU0VMRUNUCisJCXF1ZXJpZXMgdG8gdGhlbS4gKi8KKwor CQlzcnZfbWFpbl90aHJlYWRfb3BfaW5mbyA9ICJkb2luZyBiYWNrZ3JvdW5kIGRyb3AgdGFibGVz IjsKKworCQlyb3dfZHJvcF90YWJsZXNfZm9yX215c3FsX2luX2JhY2tncm91bmQoKTsKKworCQlz cnZfbWFpbl90aHJlYWRfb3BfaW5mbyA9ICIiOworCisJCWlmIChzcnZfZmFzdF9zaHV0ZG93biAm JiBzcnZfc2h1dGRvd25fc3RhdGUgPiAwKSB7CisKKwkJCWdvdG8gYmFja2dyb3VuZF9sb29wOwor CQl9CisKIAkJYnVmX2dldF90b3RhbF9zdGF0KCZidWZfc3RhdCk7CiAKIAkJbl9pb3Nfb2xkID0g bG9nX3N5cy0+bl9sb2dfaW9zICsgYnVmX3N0YXQubl9wYWdlc19yZWFkCkBAIC0yNzA5LDcgKzI3 NDYsOCBAQCBsb29wOgogCQlzcnZfbWFpbl90aHJlYWRfb3BfaW5mbyA9ICJzbGVlcGluZyI7CiAJ CXNydl9tYWluXzFfc2Vjb25kX2xvb3BzKys7CiAKLQkJaWYgKG5leHRfaXRyX3RpbWUgPiBjdXJf dGltZSkgeworCQlpZiAobmV4dF9pdHJfdGltZSA+IGN1cl90aW1lCisJCSAgICAmJiBzcnZfc2h1 dGRvd25fc3RhdGUgPT0gU1JWX1NIVVRET1dOX05PTkUpIHsKIAogCQkJLyogR2V0IHNsZWVwIGlu dGVydmFsIGluIG1pY3JvIHNlY29uZHMuIFdlIHVzZQogCQkJdXRfbWluKCkgdG8gYXZvaWQgbG9u ZyBzbGVlcCBpbiBjYXNlIG9mCkBAIC0yNzIzLDIxICsyNzYxLDYgQEAgbG9vcDoKIAkJLyogRWFj aCBpdGVyYXRpb24gc2hvdWxkIGhhcHBlbiBhdCAxIHNlY29uZCBpbnRlcnZhbC4gKi8KIAkJbmV4 dF9pdHJfdGltZSA9IHV0X3RpbWVfbXMoKSArIDEwMDA7CiAKLQkJLyogQUxURVIgVEFCTEUgaW4g TXlTUUwgcmVxdWlyZXMgb24gVW5peCB0aGF0IHRoZSB0YWJsZSBoYW5kbGVyCi0JCWNhbiBkcm9w IHRhYmxlcyBsYXppbHkgYWZ0ZXIgdGhlcmUgbm8gbG9uZ2VyIGFyZSBTRUxFQ1QKLQkJcXVlcmll cyB0byB0aGVtLiAqLwotCi0JCXNydl9tYWluX3RocmVhZF9vcF9pbmZvID0gImRvaW5nIGJhY2tn cm91bmQgZHJvcCB0YWJsZXMiOwotCi0JCXJvd19kcm9wX3RhYmxlc19mb3JfbXlzcWxfaW5fYmFj a2dyb3VuZCgpOwotCi0JCXNydl9tYWluX3RocmVhZF9vcF9pbmZvID0gIiI7Ci0KLQkJaWYgKHNy dl9mYXN0X3NodXRkb3duICYmIHNydl9zaHV0ZG93bl9zdGF0ZSA+IDApIHsKLQotCQkJZ290byBi YWNrZ3JvdW5kX2xvb3A7Ci0JCX0KLQogCQkvKiBGbHVzaCBsb2dzIGlmIG5lZWRlZCAqLwogCQlz cnZfc3luY19sb2dfYnVmZmVyX2luX2JhY2tncm91bmQoKTsKIApAQCAtMjkyOSw3ICsyOTUyLDkg QEAgYmFja2dyb3VuZF9sb29wOgogCQlNeVNRTCB0cmllcyB0byBkcm9wIGEgdGFibGUgd2hpbGUg dGhlcmUgYXJlIHN0aWxsIG9wZW4gaGFuZGxlcwogCQl0byBpdCBhbmQgd2UgaGFkIHRvIHB1dCBp dCB0byB0aGUgYmFja2dyb3VuZCBkcm9wIHF1ZXVlLikgKi8KIAotCQlvc190aHJlYWRfc2xlZXAo MTAwMDAwKTsKKwkJaWYgKHNydl9zaHV0ZG93bl9zdGF0ZSA9PSBTUlZfU0hVVERPV05fTk9ORSkg eworCQkJb3NfdGhyZWFkX3NsZWVwKDEwMDAwMCk7CisJCX0KIAl9CiAKIAlpZiAoc3J2X25fcHVy Z2VfdGhyZWFkcyA9PSAwKSB7Cgo= --===============0821114059== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/marko.makela@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: marko.makela@stripped # target_branch: file:///home/marko/innobase/dev/mysql2a/5.6-innodb/ # testament_sha1: 77f8d1a063aa8dcc44a4cbf42be9509e6855bc8e # timestamp: 2010-10-19 12:22:48 +0300 # source_branch: file:///home/marko/innobase/dev/mysql2a/5.5-innodb/ # base_revision_id: vasil.dimov@stripped\ # zsasadnzch4ou4vl # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWbsO5lkADYVflHA4+3/////3 v+S////+BAAIAGAWHByb72u3nWx6e3eZrpT3YbZ6cSClEpTxe2akwsoqtjSlrKCUg9HXZi2vbqhV dBCSQjUZMmRM00mahphAJNNoyaaQ0MnqZBoA9IBKENAQIJopk8iaaMmjRpoABoADQA0ZA0yJqMiU 0G1DQ2oaZoh6hpkA0AAAAAaYSakhHpFI021JtMk8p6Joyb1T1Nk1Bk0aDTIek0PUaABxoaBo0yNN GmQGJggABoDQGmQGBMgSJAgCATQIyaTyCMlPMKjah6ZqR6QAA9R6hoMIvVgwKGSBlJOoMDvp0IYD MKHypazsoKgojIuNFKUlG2xbnSmGDAREFA6Pd3fSYmN6PNYKiZ3KsQYqxiquNS1qiAyipVMpERlR RoaFEtYClM2FDFZEGKMuf11v1NU/A6Z5+C/auUUE1LHs6+1FMb1nWybPA2rhTyWo4BhI4hwP8WtW KaQpenDuMGrDCJLaJaACWapOjI4m5BIyC5IZHScfSwLJjakVApJVVCmaqoWVVTeTi1OLWu3Kat/g 1XkwY69bRZhoIdQwt0ewcPpQRV5Y21eWlV5cNUHcbnVVa4DjNPlfftpuVILCu3O+/ji7Kzmp06W1 WhXqPMSBYjSMGUZtHJqG74QGzOlZiyygiJ48JEspz5qlrYbDtiGHHQrHBItGcJVpSqxllc0XR4Xu aY2bTW+mXDv+wkyaNnYuZJcqNtb9fK7WUYrhu1cp1PxkZlVDpU8KoU7vaNRbCwVOHjjp5HxImFTX vUa5sIUB7ZikakJTFBUVRWQdyvnd27zviBmZC4N6YmGQTk5e4M8uzVO/bsc82OaSV49TNFLGc+IQ Ru46cotWDLqeHEOHQhiJBEF7S4LqL1BvqwrJgIEwkQ5k33O6BvitqWBdnsTJ5q15X9xiaxWtUjes avNZrIneBaDDyaSwVG8vKoby5qbjBqIU1FdbNv9YZYza4cMOQbuS4oAQQyaQ1Pg0LO75cT1oM+1o YaI3+G6/PwXnqhm9eApfBUfe1JBmxBD0H09EJvi7S48RV7effWkEkcl4yrm/Lmu7ypbwBIkVPNvm BOLiGcTRv5Yj5VMuyet0kd6bRuniENmq81DwkYa9DwfnP774hPJxyxSHG8lSxExUdmJ/Btu7OvW9 mcU0EcDD9z6ZgtZf8a37dqg1de+OrEO2alShUn5DMEPay5SxyOF2nAmsEUjbDUIGqTy26QdjplIo lXbhsxY52RhCRnyUsVQ3avRK9Wo2DDTVRScHZIe4TwxObb4GuTlbV3Q+YRIk4Ov/mo3Eo0LizY22 zAn9/ZX4116uwBHozplMqxI/Gn1JLiEDgYV4MIOFWDgvGwPpczeotHMNqNsJqjn1c62woFyYlhlg iHZBISM9YDgOKFnEQEEggp1IE4TqZtOGgHDQJ8WWV11H0nYF4q0rjIUu6r8bl6PfZ999HX7CAo9Y L8+qVK3Igwuuli9PJfM5MhtpIYoR+f0IQiSmoKnbneO8iaNm0pUg+xQk3Ol7pjSJL0AhdHeWiR/Y kvM/pYAKEGoSUVEvAmXe6y9x8CU71t4s93rjZl4matD5nnx2MemDkhr49+mqKKKKKMANkSEEhVhR iu37klQmBbuQl1B5L2hECPQpAacz7+vrbGNutwjnjmiIhHBHXd92P9NDMbwSQdF0KjLNDYpITFgZ PTHmMq+p2syhfIahWlgIwovq7hlQGCEwSJlDpElLJqgMQizCBIvi/tlfqkj7grcy7HGSMZlwknRk EE2pUsX3zrd4IQiClSRgnHuc9BEwXM3qVuiMoCoazMuGlCoqnKCAPiS1Dwvk5VVDcJK0S4RRK/G4 FqBbTgg3VhCtBBi0ceE5J0hbGm9u0u386IssGibSSN7U2gRIqSI454FJ0/KC89HgG2hisRyJkCS/ gTLhIw6jHMS65mpfvu9bjD2Yz5WrMZkUrRW5T0e8ehVHBMSGECVETqM2PkY4fE3ksHF6by2YRHCI +x3pG4ff9wiJFyxR4qjeKSRuSZS6q7MiQQaVzDIoiFQZBDCS1WWBmKzHlM+3e1WJneGPOeM9qblS UhIYlO6LvAEKoWEjKZg02pORwOBKRkWkWZja09lFiOVYqNdjk2YiFxJciwShIoMyGmA7YIBPiDI0 sawHM1VGiB4vLKV5Ozxg4uwTLjGDoKFc0kph0WSWIeQxjBjBjBjP4iBaheS3bdDE5kowPCvDI49g RNQoLRmac0zInJ8mfHMHGFrJatSwlVURCs1ggWIsEU5gnBKHHYKk1IyhgloSwpanIzJVzshoLCpc qk6aBtQyEQhna1U6wiJmbPFaq/quyN7NgkuksRLaZm0gKBQJLQ7rjgaHcbspF+7HXjvidxdGjHSc zBDTdyhHKBIndCS5NcMZQu9k3GM3QfszREgUxzBOEZbiUg0wddwrfeXuug5BgBWrvlEbQNYGVqsG 9HkaKYBNAQcSZQ6egREYoalg14zFjkiRBTM7aeVNNUxemM21NoKQhs8Vzala0ebiv2V3dJ3q143W xiJZpZikl66guvmqljTeV2OIrwc3DTZluTOHp+Yhdc1EKX1WeeFOhx0aSk52ktbxJZmp9YlVVa49 4ZcApnPI6zUOsIhyEROe1cZ72XMVt7xgq5vBqwmu7fdugpe99SNI9myGcLY3EoU7moNcPYEkPGy1 6ryDR39LqgXES5kbtIwuJ1UQsOs5oWkhnTeJLYc5kxmByEuxQRDwYrWO9WvDXTW85wHFlKD1MllT QdyCbBw1J5GZaDTERJGUcneEyF2eEcmjDNmpkdpRESO6LTejVVoXc5yOpmTkpGZwNwiYcMhaGeux y0NAkVKnHzCRdpPg5beE4nnlS0yUzdGt3CHA7mJJq5ul5TISUBaVAgkuisFhjYQMqcQ1IU1JItLD AuQWtku80694wrPfGhkcSRkuvQ8Nhe6mvRktwbzIhbekpBPU2m04HI4EGoyRod3et6gmJciTigO5 xOTlpOTkQ5LgJLAjVIGQMS47weBaL6ExES1gfhAod4RGR9usXhU38ypfbNqo0bZdRWlHbcEcRo0u lyOmxjzDiFC9Fy3Hq568uoRpYy4EI0aIe7hCzNxI4jqWkntuKAriBJlw6Al5IkNNxLkksQ5Jl2qP E9R7TN3ialVxNssKi9hXSl8qJi8LCzZBOZJUFXwpk85De5gj5IiInJgWbSVKQnoEJumZ0igQ7wRB AMZ5kSgCERcqpDXtW494ia8faMB1wkuQLVsc463CQ5HMksi9Xf4r4k/pCV3FlHgrBIkVa/f8/Hlz avB/cKD1Ak54GWTzmEwRtn5EIhm5Y4ltX/3b9VHs/jKZfSeW+ALfrbgjRGB/yiVpGIsjkKSJB6p/ S/BHcJFBglSt6uCEKjPJODkMJ7BvpTIyWsOFFd7aPG+lCqWwC8q9CFgjtGdKP2QZhdWBpECewYuV hpwG1NKEuYKDDKThe+cZE1RajfPDPC2k+T0YQgpFNfsKwvhBy9rk5BeCCB/YWftJYEjKyaxDgmRh GS81jhfULTDknCVu8WocFQsKyhVSotxJWHkLegjrslxyCqHmH7CuCRTtCamglUGVQ7SaJLh8S5k6 ycpQ+DvUzxTg+044ooKs0zzvwyOZGIKOkJPRnUxcAuCIiImozqQ1HmJjaSaLpexKM0CsVEuTMzcJ ljloJgTHlwCrElAhgCQTSFH0kSWzo1poyEwRJgwRX95eKV0BYY1KkKEELadRwF9Amew+x5UAvoEk 89yPSYzzh7vaGZJfcXo5z3u8PLA+BlZMl6/0zOWQ4FELkgVoHCsTCG4U6J78RWZqCa4aS+h+Bmkj sEvSH4DBNsYaVSXh4COjaQ3hQ8RYoPVBOu/ucRxOvxsEJyMHYySwhjUZBF3bwpwMEZpRxWFDGNPH M+M0dd/BY7eElWtuw2GmQe54wVEpNmtFpNhhOFvrSRsCgSXFUHtNpwqkJnV9D5m5C2mJeeUxarhs E0vaCAYXSBQi4FaJLM1XTszHIGiktJwmOhiM0TmJAgJKLzAeAziEi48xmJLEMhSOovOK5QJLMmJK 7MmTh+BgkCkIBSDBWS9SJ9MTKdStrJ5tKgMOShLZBNm9CE7Bp6vjMeyepmIxbBiWt0JA3BmihVRj mBa6YE30tQy1VCkDb6eXaM7vWcrvqDzDMRmRkhci8SxJGdx1F4kYIoygeQQSFga9odRefoJL8O4k dAKpkh4d4+f6riJFZa/YayCSZ8Q2guIQ4Q9aOa8dLJCmOCMWDMZZNFGHn4Hnj7VCjsUSkBoDyPs2 e+h8YvEQ7/hfQueNxhKbCzvdnZlaLuDrYFUi9YxmDj1OJwhCgYiuKaNR03BtCpgaJA/NrxyMzX2J quqYPIMGgYPX6y4NvuEMRqbhoN44zOLEUSN6SYsZN8ukFzaOJ6Zgm1AMF/mD5K2PIxxczKAqcICl GF3IcvRonRUTZXHLJSKQNRgHCFUQ037KjRO4ovxlgz5JJh29oIWzLBbydeEntCESCALEmEp8yQTi fXnuys+ngeUz+i7bIsUTpNxMOx9AE+szw02/XAyEEHA4jRIDagYftAQvyaCeSzBmxhqNR+5pqaJC AqIOvJaAqIoOchI1qY8hUgN8HDhZJWADWHMSnKazcueBIbjcVbQpgFwkrGZdiPA9QKVCgL+oRuEZ CMVvONSFNGjXyJfKX13CRkfKxSwug8WEME8UK2UoQDRJI7fEPiHIYDF4DR4iULyO709h9vfWYC4C XuOH40PZZfiDEc9Y+TGwDueSUjzoEdk0/R1i5pUpLqPJdvA7xIZSp5XhxYEKBfyEAmYUL2MghKOE dW4SVlN0qEIu+F1AicQVpaxkX/gC1pKheaJmiOspNdluUmLTCgWO1gZgwCvHv9p3mw0DrAGjUsvX u7E0aCXcvF63AEyg/mMmYFkNTjQk9IMbxaDCggS1CJ7ZusN2Ri8JJjebsEm7aXG1yS8euAYkluU6 nU4BxrDM3kKyRoEhG8CyFvTQNc0xFiYFhWgAz7hR04hxMkhnSM3JApCMvSQImZ5lBe+6tUbVfl50 GGC7h3OZps4M8RfWJh+BSaXluyzAwg0BZIzpwQhP4QYHBJdX+BqJojy7BaYoV7QGQhoBVGLb/co+ oqRZ9lTQAkIvV4K3poKrVmgk1W5TR7mjIMG2QQrex4fIARRoGV2cjfTMhJPz9ysIkIbGKYNKF4No M0iWVgWJIFvCwQkogXaZhCVE+tqofVoSHj7qCsxNUukaloJpB/eZCS+Ke8oQgWOHpDdl8LYsBb4U ILzGIVQVTKigiEKJRQoMSSUwHBAoYlfAp3IF6lvXv6f3wqPcR4yRaqSmYG1DiLweILJaMBcStG1C F20OUhUMmEhyEbhr4ZAwwmjvGN5q6pUzDZHctYsWLHdKlKqqI4VJxECIBssT4LEyIdwQTcvtQ94Z ZDQSHAvuTh5LGWnb/QqBwBHE6d4xDucAdAis+KUPqAxKqq+/zzmmuwv9gxDEtlwKZQ3y0XPD6YGz qyKz3Gokfad6yx1R0brbSGuIMgab8GUi2svCYHdE13kho0MgZsnD5aIAXOtqzh6EKStSApmEsWax GLnaHg5PHsOWtMlqLTOVkQW0yQ8XwsexUQHnEjgKiqmIc2cu2+yvN4jeWoH130p297Ab7KmhAG+J JPeLRcam/WrjfpvZHF4gwpggxZyKO1xVCtTBUmsgSoiOqKkiEgLNUnCwVj1rnY0Czq1lyY2njCPn KLtyjXa9FW38tQqih5LAd9WYEMlQvGVGF64TcloIxAJCNpuYJ/Osz0EBmHJHbqJG0m8EQ2iCdO8R G4iNREoqonbzDo2sYKFmFjwuPEUuKSwhsj5GQmiBGgLIWCG0DWPE56TIYptpRHbAqESIp2Tih4Lj YpImUtcMmQKujSKyhYDJtTaEemKSGMRcX3k3QCiaTEfGgpSAkIlQIESAkDoYgJCqYGm4jMQmElyQ vDQwdJY3yp5qgrwRoY3SSVGLfxj06IgzKvaXmtW0FdsKFrMzM2wI4EYyrbtWwkEBHYUnSNV6iYET yfJnNqqQZAGYocK8SUhaTEoOKFQRZmGbsEZcRQu7AcHIULKAenwbAjEU5qTJj876gyElz/nNqSJg jA8Ze/r4edCixO8D1M3PB0AJCY2L85oKpe0FoIMAGCx6TqEid4iiEQhpDR2XhkDPMI8yC1BAHIUP tEucxB8VnKVUuWsYqMgUIPNOF6Sy2TAjQYBk1+mUCFr5cMqYEycFAFEGwS/Twmv4cu0EzXGiPCMV BIxmchRUWKRC42E3iLS+7rGESMmZH/FmT/xdyRThQkLsO5lk --===============0821114059==--