From: Reggie Burnett Date: May 24 2011 1:43am Subject: bzr commit into connector-net-6.0 branch (reggie.burnett:875) List-Archive: http://lists.mysql.com/commits/137910 Message-Id: <201105240143.p4O1hZcS003359@acsmt357.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0922394907==" --===============0922394907== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline I0F0IGZpbGU6Ly8vQzovVXNlcnMvUmVnZ2llL3dvcmsvY29ubmVjdG9yLW5ldC82LjAvIGJhc2Vk IG9uIHJldmlkOmp1bGlvLmNhc2FsQG9yYWNsZS5jb20tMjAxMTA1MTExOTUwMTYtYXhzcG93Y2Uw empsZm0zbgoKICA4NzUgUmVnZ2llIEJ1cm5ldHQJMjAxMS0wNS0yMwogICAgICBhZGRlZCB0aGUg YWJpbGl0eSB0byByYWlzZSBhIGpvaW4gb24gdGhlIHJpZ2h0IHNpZGUgb2YgYSBqb2luIHRvIGEg ZGVyaXZlZCB0YWJsZSBpbiBFRiBjb2RlIGdlbmVyYXRpb24KCiAgICBtb2RpZmllZDoKICAgICAg Q0hBTkdFUwogICAgICBNeVNxbC5EYXRhLkVudGl0eS9Qcm92aWRlci9GcmFnbWVudHMvSW5wdXRG cmFnbWVudC5jcwogICAgICBNeVNxbC5EYXRhLkVudGl0eS9Qcm92aWRlci9GcmFnbWVudHMvU3Fs RnJhZ21lbnQuY3MKICAgICAgTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvR2VuZXJhdG9ycy9T cWxHZW5lcmF0b3IuY3MKICAgICAgTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvU3RhdGVtZW50 cy9TZWxlY3RTdGF0ZW1lbnQuY3MKICAgICAgTXlTcWwuRGF0YS5FbnRpdHkvVGVzdHMvSm9pblRl c3RzLmNzCiAgICAgIE15U3FsLkRhdGEuRW50aXR5L1Rlc3RzL1Byb3BlcnRpZXMvU1FMU3ludGF4 LkRlc2lnbmVyLmNzCiAgICAgIE15U3FsLkRhdGEuRW50aXR5L1Rlc3RzL1Byb3BlcnRpZXMvU1FM U3ludGF4LnJlc3gKPT09IG1vZGlmaWVkIGZpbGUgJ0NIQU5HRVMnCj09PSBtb2RpZmllZCBmaWxl ICdDSEFOR0VTJwotLS0gYS9DSEFOR0VTCTIwMTEtMDUtMTEgMTk6NTA6MTYgKzAwMDAKKysrIGIv Q0hBTkdFUwkyMDExLTA1LTI0IDAxOjQzOjMxICswMDAwCkBAIC0zNyw2ICszNyw3IEBACiAtIElu dHJvZHVjZWQgYSBuZXcgdW5pdCB0ZXN0IHRvIGVuc3VyZSBhIGNvbW1pdCB3aWxsIG5vdCB0aW1l b3V0IGFmdGVyIGEgaGVhdmx5IGxvYWQgb2YgaW5zZXJ0cyAoTXlTUUwgYnVnICM1ODAwNCkuDQog LSBGaXhlZCBNeVNxbFByb3ZpZGVyTWFuaWZlc3QuR2V0U3RvcmVTY2hlbWFEZXNjcmlwdGlvbigp IHRvIHJldHVybiB0aGUgY29ycmVjdCBzY2hlbWEgZGVmaW5pdGlvbiBkZXBlbmRpbmcNCiAgIG9u IHRoZSBzZXJ2ZXIgdmVyc2lvbi4NCistIGFkZGVkIHRoZSBhYmlsaXR5IHRvIHJhaXNlIGEgam9p biBvbiB0aGUgcmlnaHQgc2lkZSBvZiBhIGpvaW4gdG8gYSBkZXJpdmVkIHRhYmxlIGluIEVGIGNv ZGUgZ2VuZXJhdGlvbg0KIA0KIFZlcnNpb24gNi4wLjcNCiAtIEZpeCBhdXRob3JpemF0aW9uIHBv cHVwIGFmdGVyIG1vZGlmeWluZyBzdG9yZWQgcHJvY2VkdXJlIGluIFZTIChCdWcgIzQ0NzE1KQ0K Cj09PSBtb2RpZmllZCBmaWxlICdNeVNxbC5EYXRhLkVudGl0eS9Qcm92aWRlci9GcmFnbWVudHMv SW5wdXRGcmFnbWVudC5jcycKLS0tIGEvTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvRnJhZ21l bnRzL0lucHV0RnJhZ21lbnQuY3MJMjAxMS0wMy0wMyAxNzo1NDo0MyArMDAwMAorKysgYi9NeVNx bC5EYXRhLkVudGl0eS9Qcm92aWRlci9GcmFnbWVudHMvSW5wdXRGcmFnbWVudC5jcwkyMDExLTA1 LTI0IDAxOjQzOjMxICswMDAwCkBAIC0yNSw3ICsyNSw3IEBACiANCiBuYW1lc3BhY2UgTXlTcWwu RGF0YS5FbnRpdHkNCiB7DQotICAgIGFic3RyYWN0IGNsYXNzIElucHV0RnJhZ21lbnQgOiBTcWxG cmFnbWVudCANCisgICAgYWJzdHJhY3QgY2xhc3MgSW5wdXRGcmFnbWVudCA6IFNxbEZyYWdtZW50 DQogICAgIHsNCiAgICAgICAgIC8vIG5vdCBhbGwgaW5wdXQgY2xhc3NlcyB3aWxsIHN1cHBvcnQg dHdvIGlucHV0cyBidXQgdW5pb24gYW5kIGpvaW4gZG8NCiAgICAgICAgIC8vIGluIGNhc2VzIHdo ZXJlIG9ubHkgb25lIGlucHV0IGlzIHVzZWQsIExlZnQgaXMgaXQNCkBAIC03Myw1ICs3MywxNCBA QAogICAgICAgICAgICAgICAgIChJc1dyYXBwZWQgJiYgISh0aGlzIGlzIEpvaW5GcmFnbWVudCkp KQ0KICAgICAgICAgICAgICAgICBzcWwuQXBwZW5kRm9ybWF0KCIgQVMgezB9IiwgUXVvdGVJZGVu dGlmaWVyKE5hbWUpKTsNCiAgICAgICAgIH0NCisNCisgICAgICAgIHB1YmxpYyBDb2x1bW5GcmFn bWVudCBHZXRDb2x1bW5Gcm9tUHJvcGVydGllcyhQcm9wZXJ0eUZyYWdtZW50IHByb3BlcnRpZXMp DQorICAgICAgICB7DQorICAgICAgICAgICAgQ29sdW1uRnJhZ21lbnQgY29sID0gTGVmdC5HZXRD b2x1bW5Gcm9tUHJvcGVydGllcyhwcm9wZXJ0aWVzKTsNCisgICAgICAgICAgICBpZiAoY29sID09 IG51bGwpDQorICAgICAgICAgICAgICAgIGNvbCA9IFJpZ2h0LkdldENvbHVtbkZyb21Qcm9wZXJ0 aWVzKHByb3BlcnRpZXMpOw0KKyAgICAgICAgICAgIHJldHVybiBjb2w7DQorICAgICAgICB9DQog ICAgIH0NCiB9DQorDQoKPT09IG1vZGlmaWVkIGZpbGUgJ015U3FsLkRhdGEuRW50aXR5L1Byb3Zp ZGVyL0ZyYWdtZW50cy9TcWxGcmFnbWVudC5jcycKLS0tIGEvTXlTcWwuRGF0YS5FbnRpdHkvUHJv dmlkZXIvRnJhZ21lbnRzL1NxbEZyYWdtZW50LmNzCTIwMTEtMDQtMjAgMTg6MzY6MjEgKzAwMDAK KysrIGIvTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvRnJhZ21lbnRzL1NxbEZyYWdtZW50LmNz CTIwMTEtMDUtMjQgMDE6NDM6MzEgKzAwMDAKQEAgLTE2MSw2ICsxNjEsMTggQEAKICAgICAgICAg ICAgIGNmLkxpdGVyYWwgPSBMaXRlcmFsOw0KICAgICAgICAgICAgIHJldHVybiBjZjsNCiAgICAg ICAgIH0NCisNCisgICAgICAgIHB1YmxpYyBvdmVycmlkZSBib29sIEVxdWFscyhvYmplY3Qgb2Jq KQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGlmICghKG9iaiBpcyBDb2x1bW5GcmFnbWVudCkp IHJldHVybiBmYWxzZTsNCisgICAgICAgICAgICBDb2x1bW5GcmFnbWVudCBjb2x1bW4gPSBvYmog YXMgQ29sdW1uRnJhZ21lbnQ7DQorICAgICAgICAgICAgaWYgKGNvbHVtbi5Qcm9wZXJ0eUZyYWdt ZW50ICE9IG51bGwgJiYgUHJvcGVydHlGcmFnbWVudCAhPSBudWxsKQ0KKyAgICAgICAgICAgICAg ICByZXR1cm4gY29sdW1uLlByb3BlcnR5RnJhZ21lbnQuRXF1YWxzKFByb3BlcnR5RnJhZ21lbnQp Ow0KKyAgICAgICAgICAgIGlmIChjb2x1bW4uVGFibGVOYW1lICE9IFRhYmxlTmFtZSkgcmV0dXJu IGZhbHNlOw0KKyAgICAgICAgICAgIGlmIChjb2x1bW4uQ29sdW1uTmFtZSAhPSBDb2x1bW5OYW1l KSByZXR1cm4gZmFsc2U7DQorICAgICAgICAgICAgaWYgKGNvbHVtbi5Db2x1bW5BbGlhcyAhPSBD b2x1bW5BbGlhcykgcmV0dXJuIGZhbHNlOw0KKyAgICAgICAgICAgIHJldHVybiB0cnVlOw0KKyAg ICAgICAgfQ0KICAgICB9DQogDQogICAgIGludGVybmFsIGNsYXNzIEV4aXN0c0ZyYWdtZW50IDog TmVnYXRhYmxlRnJhZ21lbnQNCkBAIC0yOTgsNiArMzEwLDMzIEBACiAgICAgICAgIHsNCiAgICAg ICAgICAgICBnZXQgeyByZXR1cm4gUHJvcGVydGllcy5Db3VudCA9PSAwID8gbnVsbCA6IFByb3Bl cnRpZXNbUHJvcGVydGllcy5Db3VudCAtIDFdOyB9DQogICAgICAgICB9DQorDQorICAgICAgICBw dWJsaWMgdm9pZCBUcmltKHN0cmluZyBuYW1lKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIGlu dCBpbmRleCA9IFByb3BlcnRpZXMuTGFzdEluZGV4T2YobmFtZSk7DQorICAgICAgICAgICAgUHJv cGVydGllcy5SZW1vdmVSYW5nZShpbmRleCArIDEsIFByb3BlcnRpZXMuQ291bnQgLSBpbmRleCAt IDEpOw0KKyAgICAgICAgfQ0KKw0KKyAgICAgICAgcHVibGljIG92ZXJyaWRlIGJvb2wgRXF1YWxz KG9iamVjdCBvYmopDQorICAgICAgICB7DQorICAgICAgICAgICAgaWYgKCEob2JqIGlzIFByb3Bl cnR5RnJhZ21lbnQpKSByZXR1cm4gZmFsc2U7DQorICAgICAgICAgICAgUHJvcGVydHlGcmFnbWVu dCBwcm9wID0gb2JqIGFzIFByb3BlcnR5RnJhZ21lbnQ7DQorICAgICAgICAgICAgRGVidWcuQXNz ZXJ0KFByb3BlcnRpZXMgIT0gbnVsbCAmJiAgcHJvcC5Qcm9wZXJ0aWVzICE9IG51bGwpOw0KKw0K KyAgICAgICAgICAgIGludCBhSW5kZXggPSBQcm9wZXJ0aWVzLkNvdW50IC0gMTsNCisgICAgICAg ICAgICBpbnQgYkluZGV4ID0gcHJvcC5Qcm9wZXJ0aWVzLkNvdW50IC0gMTsNCisgICAgICAgICAg ICB3aGlsZSAoYUluZGV4ID49IDAgJiYgYkluZGV4ID49IDApDQorICAgICAgICAgICAgICAgIGlm IChTdHJpbmcuQ29tcGFyZShQcm9wZXJ0aWVzW2FJbmRleC0tXSwgcHJvcC5Qcm9wZXJ0aWVzW2JJ bmRleC0tXSwgdHJ1ZSkgIT0gMCkgcmV0dXJuIGZhbHNlOw0KKyAgICAgICAgICAgIHJldHVybiB0 cnVlOw0KKyAgICAgICAgfQ0KKw0KKyAgICAgICAgcHVibGljIFByb3BlcnR5RnJhZ21lbnQgQ2xv bmUoKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIFByb3BlcnR5RnJhZ21lbnQgbmV3UEYgPSBu ZXcgUHJvcGVydHlGcmFnbWVudCgpOw0KKyAgICAgICAgICAgIGZvcmVhY2ggKHN0cmluZyBwcm9w IGluIFByb3BlcnRpZXMpDQorICAgICAgICAgICAgICAgIG5ld1BGLlByb3BlcnRpZXMuQWRkKHBy b3ApOw0KKyAgICAgICAgICAgIHJldHVybiBuZXdQRjsNCisgICAgICAgIH0NCiAgICAgfQ0KIA0K ICAgICBpbnRlcm5hbCBjbGFzcyBTb3J0RnJhZ21lbnQgOiBTcWxGcmFnbWVudA0KQEAgLTMzNCw1 ICszNzMsMTYgQEAKICAgICAgICAgICAgIHNxbC5BcHBlbmQoRGlzdGluY3QgPyAiIFVOSU9OIERJ U1RJTkNUICIgOiAiIFVOSU9OIEFMTCAiKTsNCiAgICAgICAgICAgICBSaWdodC5Xcml0ZVNxbChz cWwpOw0KICAgICAgICAgfQ0KKw0KKyAgICAgICAgcHVibGljIGJvb2wgSGFzRGlmZmVyZW50TmFt ZUZvckNvbHVtbihDb2x1bW5GcmFnbWVudCBjb2x1bW4pDQorICAgICAgICB7DQorICAgICAgICAg ICAgRGVidWcuQXNzZXJ0KExlZnQgaXMgU2VsZWN0U3RhdGVtZW50KTsNCisgICAgICAgICAgICBE ZWJ1Zy5Bc3NlcnQoUmlnaHQgaXMgU2VsZWN0U3RhdGVtZW50KTsNCisgICAgICAgICAgICBpZiAo KExlZnQgYXMgU2VsZWN0U3RhdGVtZW50KS5IYXNEaWZmZXJlbnROYW1lRm9yQ29sdW1uKGNvbHVt bikpDQorICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOw0KKyAgICAgICAgICAgIHJldHVybiAo UmlnaHQgYXMgU2VsZWN0U3RhdGVtZW50KS5IYXNEaWZmZXJlbnROYW1lRm9yQ29sdW1uKGNvbHVt bik7DQorICAgICAgICB9DQogICAgIH0NCisNCisNCiB9DQoKPT09IG1vZGlmaWVkIGZpbGUgJ015 U3FsLkRhdGEuRW50aXR5L1Byb3ZpZGVyL0dlbmVyYXRvcnMvU3FsR2VuZXJhdG9yLmNzJwotLS0g YS9NeVNxbC5EYXRhLkVudGl0eS9Qcm92aWRlci9HZW5lcmF0b3JzL1NxbEdlbmVyYXRvci5jcwky MDExLTA0LTIwIDE4OjM2OjIxICswMDAwCisrKyBiL015U3FsLkRhdGEuRW50aXR5L1Byb3ZpZGVy L0dlbmVyYXRvcnMvU3FsR2VuZXJhdG9yLmNzCTIwMTEtMDUtMjQgMDE6NDM6MzEgKzAwMDAKQEAg LTgxLDEyICs4MSwyNiBAQAogDQogICAgICAgICAgICAgQ29sdW1uRnJhZ21lbnQgY29sdW1uID0g bmV3IENvbHVtbkZyYWdtZW50KG51bGwsIGZyYWdtZW50Lkxhc3RQcm9wZXJ0eSk7DQogICAgICAg ICAgICAgY29sdW1uLlByb3BlcnR5RnJhZ21lbnQgPSBmcmFnbWVudDsNCi0gICAgICAgICAgICBj b2x1bW4uVGFibGVOYW1lID0gRmluZElucHV0RnJvbVByb3BlcnRpZXMoZnJhZ21lbnQpOw0KLQ0K KyAgICAgICAgICAgIElucHV0RnJhZ21lbnQgaW5wdXQgPSBGaW5kSW5wdXRGcm9tUHJvcGVydGll cyhmcmFnbWVudCk7DQorICAgICAgICAgICAgaWYgKGlucHV0ICE9IG51bGwpDQorICAgICAgICAg ICAgICAgIGNvbHVtbi5UYWJsZU5hbWUgPSBpbnB1dC5OYW1lOw0KKw0KKyAgICAgICAgICAgIC8v IG5vdyB3ZSBuZWVkIHRvIGNoZWNrIGlmIG91ciBjb2x1bW4gbmFtZSB3YXMgcG9zc2libHkgcmVu YW1lZA0KKyAgICAgICAgICAgIGlmIChpbnB1dCBpcyBUYWJsZUZyYWdtZW50KSByZXR1cm4gY29s dW1uOw0KKw0KKyAgICAgICAgICAgIFNlbGVjdFN0YXRlbWVudCBzZWxlY3QgPSBpbnB1dCBhcyBT ZWxlY3RTdGF0ZW1lbnQ7DQorICAgICAgICAgICAgVW5pb25GcmFnbWVudCB1bmlvbiA9IGlucHV0 IGFzIFVuaW9uRnJhZ21lbnQ7DQorDQorICAgICAgICAgICAgaWYgKHNlbGVjdCAhPSBudWxsKQ0K KyAgICAgICAgICAgICAgICBzZWxlY3QuSGFzRGlmZmVyZW50TmFtZUZvckNvbHVtbihjb2x1bW4p Ow0KKyAgICAgICAgICAgIGVsc2UgaWYgKHVuaW9uICE9IG51bGwpDQorICAgICAgICAgICAgICAg IHVuaW9uLkhhc0RpZmZlcmVudE5hbWVGb3JDb2x1bW4oY29sdW1uKTsNCisNCisgICAgICAgICAg ICAvLyBpbnB1dCBpcyBhIHRhYmxlLCBzZWxlY3RzdGF0ZW1lbnQsIG9yIHVuaW9uc3RhdGVtZW50 DQogICAgICAgICAgICAgcmV0dXJuIGNvbHVtbjsNCiAgICAgICAgIH0NCiANCi0gICAgICAgIHBy aXZhdGUgc3RyaW5nIEZpbmRJbnB1dEZyb21Qcm9wZXJ0aWVzKFByb3BlcnR5RnJhZ21lbnQgZnJh Z21lbnQpDQorICAgICAgICBwcml2YXRlIElucHV0RnJhZ21lbnQgRmluZElucHV0RnJvbVByb3Bl cnRpZXMoUHJvcGVydHlGcmFnbWVudCBmcmFnbWVudCkNCiAgICAgICAgIHsNCiAgICAgICAgICAg ICBEZWJ1Zy5Bc3NlcnQoZnJhZ21lbnQgIT0gbnVsbCk7DQogICAgICAgICAgICAgUHJvcGVydHlG cmFnbWVudCBwcm9wZXJ0eUZyYWdtZW50ID0gZnJhZ21lbnQgYXMgUHJvcGVydHlGcmFnbWVudDsN CkBAIC05OSwxMiArMTEzLDEzIEBACiAgICAgICAgICAgICAgICAgICAgIHN0cmluZyByZWZlcmVu Y2UgPSBwcm9wZXJ0eUZyYWdtZW50LlByb3BlcnRpZXNbeF07DQogICAgICAgICAgICAgICAgICAg ICBJbnB1dEZyYWdtZW50IGlucHV0ID0gc2NvcGUuR2V0RnJhZ21lbnQocmVmZXJlbmNlKTsNCiAg ICAgICAgICAgICAgICAgICAgIGlmIChpbnB1dCA9PSBudWxsKSBjb250aW51ZTsNCi0gICAgICAg ICAgICAgICAgICAgIGlmIChpbnB1dC5TY29wZWQpIHJldHVybiBpbnB1dC5OYW1lOw0KKyAgICAg ICAgICAgICAgICAgICAgaWYgKGlucHV0LlNjb3BlZCkgcmV0dXJuIGlucHV0Ow0KICAgICAgICAg ICAgICAgICAgICAgaWYgKGlucHV0IGlzIFNlbGVjdFN0YXRlbWVudCkNCi0gICAgICAgICAgICAg ICAgICAgICAgICByZXR1cm4gKGlucHV0IGFzIFNlbGVjdFN0YXRlbWVudCkuRnJvbS5OYW1lOw0K KyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoaW5wdXQgYXMgU2VsZWN0U3RhdGVtZW50 KS5Gcm9tOw0KICAgICAgICAgICAgICAgICAgICAgY29udGludWU7DQogICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICB9DQorICAgICAgICAgICAgRGVidWcuRmFpbCgiU2hvdWxkIGhhdmUg Zm91bmQgYW4gaW5wdXQiKTsNCiAgICAgICAgICAgICByZXR1cm4gbnVsbDsNCiAgICAgICAgIH0N CiANCgo9PT0gbW9kaWZpZWQgZmlsZSAnTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvU3RhdGVt ZW50cy9TZWxlY3RTdGF0ZW1lbnQuY3MnCi0tLSBhL015U3FsLkRhdGEuRW50aXR5L1Byb3ZpZGVy L1N0YXRlbWVudHMvU2VsZWN0U3RhdGVtZW50LmNzCTIwMTEtMDQtMjAgMTg6MzY6MjEgKzAwMDAK KysrIGIvTXlTcWwuRGF0YS5FbnRpdHkvUHJvdmlkZXIvU3RhdGVtZW50cy9TZWxlY3RTdGF0ZW1l bnQuY3MJMjAxMS0wNS0yNCAwMTo0MzozMSArMDAwMApAQCAtMzEsNiArMzEsNyBAQAogICAgIGNs YXNzIFNlbGVjdFN0YXRlbWVudCA6IElucHV0RnJhZ21lbnQgDQogICAgIHsNCiAgICAgICAgIHBy aXZhdGUgRGljdGlvbmFyeTxzdHJpbmcsIENvbHVtbkZyYWdtZW50PiBjb2x1bW5IYXNoOw0KKyAg ICAgICAgcHJpdmF0ZSBib29sIGhhc1JlbmFtZWRDb2x1bW5zOw0KIA0KICAgICAgICAgcHVibGlj IFNlbGVjdFN0YXRlbWVudCgpIDogYmFzZShudWxsKQ0KICAgICAgICAgew0KQEAgLTEzMCw3ICsx MzEsNyBAQAogICAgICAgICB2b2lkIEFkZERlZmF1bHRDb2x1bW5zKCkNCiAgICAgICAgIHsNCiAv LyAgICAgICAgICAgIExpc3Q8UHJvcGVydHlGcmFnbWVudD4gcHJvcGVydGllcyA9IEdldENvbHVt blByb3BlcnRpZXNGcm9tSW5wdXQoRnJvbSk7DQotICAgICAgICAgICAgQWRkRGVmYXVsdENvbHVt bnNGb3JGcmFnbWVudChGcm9tKTsNCisgICAgICAgICAgICBBZGREZWZhdWx0Q29sdW1uc0ZvckZy YWdtZW50KEZyb20sIG51bGwpOw0KICAgICAgICAgfQ0KIA0KICAgICAgICAgLy9wcml2YXRlIExp c3Q8UHJvcGVydHlGcmFnbWVudD4gR2V0Q29sdW1uUHJvcGVydGllc0Zyb21JbnB1dChJbnB1dEZy YWdtZW50IGlucHV0KQ0KQEAgLTEzOCwxOCArMTM5LDIyIEBACiAgICAgICAgIC8vICAgIGlmIChp bnB1dCBpcyBUYWJsZUZyYWdtZW50KQ0KICAgICAgICAgLy99DQogDQotICAgICAgICB2b2lkIEFk ZERlZmF1bHRDb2x1bW5zRm9yRnJhZ21lbnQoSW5wdXRGcmFnbWVudCBpbnB1dCkNCisgICAgICAg IHZvaWQgQWRkRGVmYXVsdENvbHVtbnNGb3JGcmFnbWVudChJbnB1dEZyYWdtZW50IGlucHV0LCBQ cm9wZXJ0eUZyYWdtZW50IHRyYWlsKQ0KICAgICAgICAgew0KKyAgICAgICAgICAgIGlmICh0cmFp bCA9PSBudWxsKQ0KKyAgICAgICAgICAgICAgICB0cmFpbCA9IG5ldyBQcm9wZXJ0eUZyYWdtZW50 KCk7DQogICAgICAgICAgICAgaWYgKGlucHV0IGlzIFRhYmxlRnJhZ21lbnQpDQogICAgICAgICAg ICAgew0KLSAgICAgICAgICAgICAgICBBZGREZWZhdWx0Q29sdW1uc0ZvclRhYmxlKGlucHV0IGFz IFRhYmxlRnJhZ21lbnQpOw0KKyAgICAgICAgICAgICAgICBBZGREZWZhdWx0Q29sdW1uc0ZvclRh YmxlKGlucHV0IGFzIFRhYmxlRnJhZ21lbnQsIHRyYWlsKTsNCiAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgZWxzZSBpZiAoaW5wdXQgaXMgSm9pbkZyYWdtZW50IHx8IGlucHV0IGlzIFVuaW9u RnJhZ21lbnQpDQogICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgICB0cmFpbC5Qcm9wZXJ0 aWVzLkFkZChpbnB1dC5OYW1lKTsNCiAgICAgICAgICAgICAgICAgaWYgKGlucHV0LkxlZnQgIT0g bnVsbCkNCi0gICAgICAgICAgICAgICAgICAgIEFkZERlZmF1bHRDb2x1bW5zRm9yRnJhZ21lbnQo aW5wdXQuTGVmdCk7DQorICAgICAgICAgICAgICAgICAgICBBZGREZWZhdWx0Q29sdW1uc0ZvckZy YWdtZW50KGlucHV0LkxlZnQsIHRyYWlsKTsNCisgICAgICAgICAgICAgICAgdHJhaWwuVHJpbShp bnB1dC5OYW1lKTsNCiAgICAgICAgICAgICAgICAgaWYgKGlucHV0LlJpZ2h0ICE9IG51bGwpDQot ICAgICAgICAgICAgICAgIEFkZERlZmF1bHRDb2x1bW5zRm9yRnJhZ21lbnQoaW5wdXQuUmlnaHQp Ow0KKyAgICAgICAgICAgICAgICBBZGREZWZhdWx0Q29sdW1uc0ZvckZyYWdtZW50KGlucHV0LlJp Z2h0LCB0cmFpbCk7DQogDQogICAgICAgICAgICAgICAgIC8vIGlmIHRoaXMgaW5wdXQgaXMgc2Nv cGVkLCB0aGVuIGl0IGlzIHRoZSBiYXNlIHRhYmxlbmFtZSBmb3IgdGhlIGNvbHVtbnMNCiAgICAg ICAgICAgICAgICAgaWYgKGlucHV0LlNjb3BlZCkNCkBAIC0xNjYsMTQgKzE3MSwxOSBAQAogICAg ICAgICAgICAgICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEV4Y2VwdGlvbigpOw0KICAgICAg ICAgfQ0KIA0KLSAgICAgICAgdm9pZCBBZGREZWZhdWx0Q29sdW1uc0ZvclRhYmxlKFRhYmxlRnJh Z21lbnQgdGFibGUpDQorICAgICAgICB2b2lkIEFkZERlZmF1bHRDb2x1bW5zRm9yVGFibGUoVGFi bGVGcmFnbWVudCB0YWJsZSwgUHJvcGVydHlGcmFnbWVudCB0cmFpbCkNCiAgICAgICAgIHsNCisg ICAgICAgICAgICB0cmFpbC5Qcm9wZXJ0aWVzLkFkZCh0YWJsZS5OYW1lKTsNCiAgICAgICAgICAg ICBpZiAoY29sdW1uSGFzaCA9PSBudWxsKQ0KICAgICAgICAgICAgICAgICBjb2x1bW5IYXNoID0g bmV3IERpY3Rpb25hcnk8c3RyaW5nLCBDb2x1bW5GcmFnbWVudD4oKTsNCiANCiAgICAgICAgICAg ICBmb3JlYWNoIChFZG1Qcm9wZXJ0eSBwcm9wZXJ0eSBpbiBNZXRhZGF0YS5HZXRQcm9wZXJ0aWVz KHRhYmxlLlR5cGUuRWRtVHlwZSkpDQogICAgICAgICAgICAgew0KKyAgICAgICAgICAgICAgICBQ cm9wZXJ0eUZyYWdtZW50IHByb3BzID0gdHJhaWwuQ2xvbmUoKTsNCisgICAgICAgICAgICAgICAg cHJvcHMuUHJvcGVydGllcy5BZGQocHJvcGVydHkuTmFtZSk7DQorDQogICAgICAgICAgICAgICAg IENvbHVtbkZyYWdtZW50IGNvbCA9IG5ldyBDb2x1bW5GcmFnbWVudCh0YWJsZS5OYW1lLCBwcm9w ZXJ0eS5OYW1lKTsNCisgICAgICAgICAgICAgICAgY29sLlByb3BlcnR5RnJhZ21lbnQgPSBwcm9w czsNCiAgICAgICAgICAgICAgICAgaWYgKHRhYmxlLkNvbHVtbnMgPT0gbnVsbCkNCiAgICAgICAg ICAgICAgICAgICAgIHRhYmxlLkNvbHVtbnMgPSBuZXcgTGlzdDxDb2x1bW5GcmFnbWVudD4oKTsN CiAgICAgICAgICAgICAgICAgdGFibGUuQ29sdW1ucy5BZGQoY29sKTsNCkBAIC0xOTEsNiArMjAx LDcgQEAKICAgICAgICAgcHJpdmF0ZSBzdHJpbmcgTWFrZUNvbHVtbk5hbWVVbmlxdWUoc3RyaW5n IGJhc2VOYW1lKQ0KICAgICAgICAgew0KICAgICAgICAgICAgIGludCBpID0gMTsNCisgICAgICAg ICAgICBoYXNSZW5hbWVkQ29sdW1ucyA9IHRydWU7DQogICAgICAgICAgICAgd2hpbGUgKHRydWUp DQogICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICBzdHJpbmcgbmFtZSA9IFN0cmluZy5G b3JtYXQoInswfXsxfSIsIGJhc2VOYW1lLCBpKTsNCkBAIC0xOTksNiArMjEwLDE5IEBACiAgICAg ICAgICAgICB9DQogICAgICAgICB9DQogDQorICAgICAgICBwdWJsaWMgYm9vbCBIYXNEaWZmZXJl bnROYW1lRm9yQ29sdW1uKENvbHVtbkZyYWdtZW50IGNvbHVtbikNCisgICAgICAgIHsNCisgICAg ICAgICAgICBpZiAoIWhhc1JlbmFtZWRDb2x1bW5zKSByZXR1cm4gZmFsc2U7DQorICAgICAgICAg ICAgZm9yZWFjaCAoQ29sdW1uRnJhZ21lbnQgYyBpbiBDb2x1bW5zKQ0KKyAgICAgICAgICAgIHsN CisgICAgICAgICAgICAgICAgaWYgKCFjLkVxdWFscyhjb2x1bW4pKSBjb250aW51ZTsNCisgICAg ICAgICAgICAgICAgaWYgKFN0cmluZy5Jc051bGxPckVtcHR5KGMuQ29sdW1uQWxpYXMpKSByZXR1 cm4gZmFsc2U7DQorICAgICAgICAgICAgICAgIGNvbHVtbi5Db2x1bW5OYW1lID0gYy5Db2x1bW5B bGlhczsNCisgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7DQorICAgICAgICAgICAgfQ0KKyAg ICAgICAgICAgIHJldHVybiBmYWxzZTsNCisgICAgICAgIH0NCisNCiAgICAgICAgIHB1YmxpYyBi b29sIElzQ29tcGF0aWJsZShEYkV4cHJlc3Npb25LaW5kIGV4cHJlc3Npb25LaW5kKQ0KICAgICAg ICAgew0KICAgICAgICAgICAgIHN3aXRjaCAoZXhwcmVzc2lvbktpbmQpDQoKPT09IG1vZGlmaWVk IGZpbGUgJ015U3FsLkRhdGEuRW50aXR5L1Rlc3RzL0pvaW5UZXN0cy5jcycKLS0tIGEvTXlTcWwu RGF0YS5FbnRpdHkvVGVzdHMvSm9pblRlc3RzLmNzCTIwMTEtMDQtMjAgMTg6MzY6MjEgKzAwMDAK KysrIGIvTXlTcWwuRGF0YS5FbnRpdHkvVGVzdHMvSm9pblRlc3RzLmNzCTIwMTEtMDUtMjQgMDE6 NDM6MzEgKzAwMDAKQEAgLTExOCwyMCArMTE4LDUxIEBACiAgICAgICAgIH0NCiANCiAgICAgICAg IFtUZXN0XQ0KKyAgICAgICAgcHVibGljIHZvaWQgSm9pbk9mVW5pb25zT25SaWdodFNpZGVvZkpv aW4oKQ0KKyAgICAgICAgew0KKyAgICAgICAgICAgIHVzaW5nICh0ZXN0RW50aXRpZXMgY29udGV4 dCA9IG5ldyB0ZXN0RW50aXRpZXMoKSkNCisgICAgICAgICAgICB7DQorICAgICAgICAgICAgICAg IHN0cmluZyBlU3FsID0gQCJTRUxFQ1QgYy5JZCwgYy5OYW1lLCBhLklkLCBhLk5hbWUsIGIuSWQs IGIuTmFtZSBGUk9NDQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0RW50aXRp ZXMuQ29tcGFuaWVzIEFTIGMgSk9JTiAodGVzdEVudGl0aWVzLkF1dGhvcnMgQVMgYQ0KKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgSk9JTiB0ZXN0RW50aXRpZXMuQm9va3MgQVMgYiBP TiBhLklkID0gYi5JZCkgT04gYy5JZCA9IGEuSWQiOw0KKyAgICAgICAgICAgICAgICBPYmplY3RR dWVyeTxDb21wYW55PiBxdWVyeSA9IGNvbnRleHQuQ3JlYXRlUXVlcnk8Q29tcGFueT4oZVNxbCk7 DQorICAgICAgICAgICAgICAgIHN0cmluZyBzPSBxdWVyeS5Ub1RyYWNlU3RyaW5nKCk7DQorDQor DQorICAgICAgICAgICAgICAgIC8vdmFyIGoxID0gZnJvbSBzdG9yZSBpbiBjb250ZXh0LlN0b3Jl cw0KKyAgICAgICAgICAgICAgICAvLyAgICAgICAgIGpvaW4gdG95IGluIGNvbnRleHQuVG95cw0K KyAgICAgICAgICAgICAgICAvLyAgICAgICAgIG9uIHN0b3JlLklkIGVxdWFscyB0b3kuSWQNCisg ICAgICAgICAgICAgICAgLy8gICAgICAgICBzZWxlY3QgbmV3IHsgc3RvcmUuSWQsIHN0b3JlLk5h bWUgfTsNCisgICAgICAgICAgICAgICAgLy92YXIgajIgPSBmcm9tIGEgaW4gY29udGV4dC5BdXRo b3JzDQorICAgICAgICAgICAgICAgIC8vICAgICAgICAgam9pbiBwIGluIGNvbnRleHQuUHVibGlz aGVycw0KKyAgICAgICAgICAgICAgICAvLyAgICAgICAgIG9uIGEuSWQgZXF1YWxzIHAuaWQNCisg ICAgICAgICAgICAgICAgLy8gICAgICAgICBzZWxlY3QgbmV3IHsgYS5JZCwgYS5OYW1lIH07DQor ICAgICAgICAgICAgICAgIC8vdmFyIHUxID0gajEuVW5pb24oajIpOw0KKyAgICAgICAgICAgICAg ICAvL3ZhciBxID0gZnJvbSBib29rIGluIGNvbnRleHQuQm9va3MNCisgICAgICAgICAgICAgICAg Ly8gICAgICAgIGpvaW4gdSBpbiBqMS5VbmlvbihqMikNCisgICAgICAgICAgICAgICAgLy8gICAg ICAgIG9uIGJvb2suSWQgZXF1YWxzIHUuSWQNCisgICAgICAgICAgICAgICAgLy8gICAgICAgIHNl bGVjdCBib29rOw0KKyAgICAgICAgICAgICAgICAvL3N0cmluZyBzcWwgPSBxLlRvVHJhY2VTdHJp bmcoKTsNCisgICAgICAgICAgICAgICAgLy9DaGVja1NxbChzcWwsIFNRTFN5bnRheC5Kb2luT25S aWdodFNpZGVBc0Rlcml2ZWRUYWJsZSk7DQorICAgICAgICAgICAgfQ0KKyAgICAgICAgfQ0KKw0K KyAgICAgICAgW1Rlc3RdDQogICAgICAgICBwdWJsaWMgdm9pZCBKb2luT25SaWdodFNpZGVOYW1l Q2xhc2goKQ0KICAgICAgICAgew0KLQ0KICAgICAgICAgICAgIHVzaW5nICh0ZXN0RW50aXRpZXMg Y29udGV4dCA9IG5ldyB0ZXN0RW50aXRpZXMoKSkNCiAgICAgICAgICAgICB7DQotICAgICAgICAg ICAgICAgIHZhciBpbm5lciA9IGZyb20gYSBpbiBjb250ZXh0LkF1dGhvcnMgam9pbiBzIGluIGNv bnRleHQuU3RvcmVzIG9uIGEuSWQgZXF1YWxzIHMuSWQgc2VsZWN0IGE7DQotICAgICAgICAgICAg ICAgIHZhciBvdXRlciA9IGZyb20gbyBpbiBjb250ZXh0Lk9yZGVycyBqb2luIGkgaW4gaW5uZXIg b24gby5JZCBlcXVhbHMgaS5JZCBzZWxlY3QgbzsNCi0gICAgICAgICAgICAgICAgc3RyaW5nIHNx bCA9IG91dGVyLlRvVHJhY2VTdHJpbmcoKTsNCisgICAgICAgICAgICAgICAgc3RyaW5nIGVTcWwg PSBAIlNFTEVDVCBjLklkLCBjLk5hbWUsIGEuSWQsIGEuTmFtZSwgYi5JZCwgYi5OYW1lIEZST00N CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RFbnRpdGllcy5Db21wYW5pZXMg QVMgYyBKT0lOICh0ZXN0RW50aXRpZXMuQXV0aG9ycyBBUyBhDQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBKT0lOIHRlc3RFbnRpdGllcy5Cb29rcyBBUyBiIE9OIGEuSWQgPSBiLklk KSBPTiBjLklkID0gYS5JZCI7DQorICAgICAgICAgICAgICAgIE9iamVjdFF1ZXJ5PERiRGF0YVJl Y29yZD4gcXVlcnkgPSBjb250ZXh0LkNyZWF0ZVF1ZXJ5PERiRGF0YVJlY29yZD4oZVNxbCk7DQor ICAgICAgICAgICAgICAgIHN0cmluZyBzcWwgPSBxdWVyeS5Ub1RyYWNlU3RyaW5nKCk7DQogICAg ICAgICAgICAgICAgIENoZWNrU3FsKHNxbCwgU1FMU3ludGF4LkpvaW5PblJpZ2h0U2lkZU5hbWVD bGFzaCk7DQotICAgICAgICAgICAgICAgIGZvcmVhY2ggKE9yZGVyIG8gaW4gb3V0ZXIpDQorICAg ICAgICAgICAgICAgIGZvcmVhY2ggKERiRGF0YVJlY29yZCByZWNvcmQgaW4gcXVlcnkpDQogICAg ICAgICAgICAgICAgIHsNCi0gICAgICAgICAgICAgICAgICAgIGRvdWJsZSBkID0gby5GcmVpZ2h0 Ow0KKyAgICAgICAgICAgICAgICAgICAgQXNzZXJ0LkFyZUVxdWFsKDYsIHJlY29yZC5GaWVsZENv dW50KTsNCiAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgIH0NCi0gICAgICAgIH0NCisg ICAgICAgfQ0KICAgICB9DQogfQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKCj09PSBtb2Rp ZmllZCBmaWxlICdNeVNxbC5EYXRhLkVudGl0eS9UZXN0cy9Qcm9wZXJ0aWVzL1NRTFN5bnRheC5E ZXNpZ25lci5jcycKLS0tIGEvTXlTcWwuRGF0YS5FbnRpdHkvVGVzdHMvUHJvcGVydGllcy9TUUxT eW50YXguRGVzaWduZXIuY3MJMjAxMS0wNC0yMCAxODozNjoyMSArMDAwMAorKysgYi9NeVNxbC5E YXRhLkVudGl0eS9UZXN0cy9Qcm9wZXJ0aWVzL1NRTFN5bnRheC5EZXNpZ25lci5jcwkyMDExLTA1 LTI0IDAxOjQzOjMxICswMDAwCkBAIC0xLDcgKzEsNyBAQAogw6/Cu8K/Ly8tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCiAvLyA8YXV0by1nZW5lcmF0ZWQ+DQogLy8gICAgIFRoaXMgY29kZSB3YXMgZ2Vu ZXJhdGVkIGJ5IGEgdG9vbC4NCi0vLyAgICAgUnVudGltZSBWZXJzaW9uOjIuMC41MDcyNy41NDIw DQorLy8gICAgIFJ1bnRpbWUgVmVyc2lvbjoyLjAuNTA3MjcuNDk1OQ0KIC8vDQogLy8gICAgIENo YW5nZXMgdG8gdGhpcyBmaWxlIG1heSBjYXVzZSBpbmNvcnJlY3QgYmVoYXZpb3IgYW5kIHdpbGwg YmUgbG9zdCBpZg0KIC8vICAgICB0aGUgY29kZSBpcyByZWdlbmVyYXRlZC4NCkBAIC0yMjAsMTkg KzIyMCwyMSBAQAogICAgICAgICAvLy8gICBMb29rcyB1cCBhIGxvY2FsaXplZCBzdHJpbmcgc2lt aWxhciB0byBTRUxFQ1QNCiAgICAgICAgIC8vLzEgQVMgQzEsIA0KICAgICAgICAgLy8vRXh0ZW50 MS5JZCwgDQotICAgICAgICAvLy9FeHRlbnQxLkZyZWlnaHQsIA0KLSAgICAgICAgLy8vRXh0ZW50 MS5TdG9yZUlkDQotICAgICAgICAvLy9GUk9NIE9yZGVycyBBUyBFeHRlbnQxIElOTkVSIEpPSU4g KFNFTEVDVA0KKyAgICAgICAgLy8vRXh0ZW50MS5OYW1lLCANCisgICAgICAgIC8vL0pvaW4xLklk IEFTIElkMSwgDQorICAgICAgICAvLy9Kb2luMS5OYW1lIEFTIE5hbWUxLCANCisgICAgICAgIC8v L0pvaW4xLklkMSBBUyBJZDIsIA0KKyAgICAgICAgLy8vSm9pbjEuTmFtZTEgQVMgTmFtZTINCisg ICAgICAgIC8vL0ZST00gQ29tcGFuaWVzIEFTIEV4dGVudDEgSU5ORVIgSk9JTiAoU0VMRUNUDQog ICAgICAgICAvLy9FeHRlbnQyLklkLCANCiAgICAgICAgIC8vL0V4dGVudDIuTmFtZSwgDQogICAg ICAgICAvLy9FeHRlbnQyLkFnZSwgDQogICAgICAgICAvLy9FeHRlbnQzLklkIEFTIElkMSwgDQog ICAgICAgICAvLy9FeHRlbnQzLk5hbWUgQVMgTmFtZTEsIA0KLSAgICAgICAgLy8vRXh0ZW50My5B ZGRyZXNzLCANCi0gICAgICAgIC8vL0V4dGVudDMuQ2l0eSwgDQotICAgICAgICAvLy9FeHRlbnQz LlN0YXRlLCANCi0gICAgICAgIC8vL0V4dGVudDMuWmlwQ29kZQ0KLSAgICAgICAgLy8vRlJPTSBB dXRob3JzIEFTIEV4dGVudDIgSU5ORVIgSk9JTiBTdG9yZXMgQVMgRXh0ZW50MyBPTiAoRXh0ZW50 Mi5JZCA9IEV4dGVudDMuSWQpIE9SICgoRXh0ZW50Mi5JZCBJUyAgTlVMTCkgQU5EIChFeHRlbnQz LklkIElTICBOVUxMKSkpIEFTIEpvaW4xIE9OIChFeHRlbnQxLklkID0gSm9pbjEuSWQpIE9SICgo RXh0ZW50MS5JZCBJUyAgTlVMTCkgQU5EIChKb2luMS5JZCBJUyAgTlVMTCkpLg0KKyAgICAgICAg Ly8vRXh0ZW50My5QYWdlcywgDQorICAgICAgICAvLy9FeHRlbnQzLkF1dGhvcl9pZCwgDQorICAg ICAgICAvLy9FeHRlbnQzLlB1Ymxpc2hlcl9pZA0KKyAgICAgICAgLy8vRlJPTSBBdXRob3JzIEFT IEV4dGVudDIgSU5ORVIgSk9JTiBCb29rcyBBUyBFeHRlbnQzIE9OIEV4dGVudDIuSWQgPSBFeHRl bnQzLklkKSBBUyBKb2luMSBPTiBFeHRlbnQxLklkID0gSm9pbjEuSWQuDQogICAgICAgICAvLy8g PC9zdW1tYXJ5Pg0KICAgICAgICAgaW50ZXJuYWwgc3RhdGljIHN0cmluZyBKb2luT25SaWdodFNp ZGVOYW1lQ2xhc2ggew0KICAgICAgICAgICAgIGdldCB7DQpAQCAtNjA4LDYgKzYxMCwxNSBAQAog ICAgICAgICB9DQogICAgICAgICANCiAgICAgICAgIC8vLyA8c3VtbWFyeT4NCisgICAgICAgIC8v LyAgIExvb2tzIHVwIGEgbG9jYWxpemVkIHN0cmluZyBzaW1pbGFyIHRvIC4NCisgICAgICAgIC8v LyA8L3N1bW1hcnk+DQorICAgICAgICBpbnRlcm5hbCBzdGF0aWMgc3RyaW5nIFN0cmluZzEgew0K KyAgICAgICAgICAgIGdldCB7DQorICAgICAgICAgICAgICAgIHJldHVybiBSZXNvdXJjZU1hbmFn ZXIuR2V0U3RyaW5nKCJTdHJpbmcxIiwgcmVzb3VyY2VDdWx0dXJlKTsNCisgICAgICAgICAgICB9 DQorICAgICAgICB9DQorICAgICAgICANCisgICAgICAgIC8vLyA8c3VtbWFyeT4NCiAgICAgICAg IC8vLyAgIExvb2tzIHVwIGEgbG9jYWxpemVkIHN0cmluZyBzaW1pbGFyIHRvIFNFTEVDVA0KICAg ICAgICAgLy8vR3JvdXBCeTEuQTEgQVMgQzENCiAgICAgICAgIC8vL0ZST00gKFNFTEVDVA0KCj09 PSBtb2RpZmllZCBmaWxlICdNeVNxbC5EYXRhLkVudGl0eS9UZXN0cy9Qcm9wZXJ0aWVzL1NRTFN5 bnRheC5yZXN4JwotLS0gYS9NeVNxbC5EYXRhLkVudGl0eS9UZXN0cy9Qcm9wZXJ0aWVzL1NRTFN5 bnRheC5yZXN4CTIwMTEtMDQtMjAgMTg6MzY6MjEgKzAwMDAKKysrIGIvTXlTcWwuRGF0YS5FbnRp dHkvVGVzdHMvUHJvcGVydGllcy9TUUxTeW50YXgucmVzeAkyMDExLTA1LTI0IDAxOjQzOjMxICsw MDAwCkBAIC0yMjQsMTkgKzIyNCwyMSBAQAogICAgIDx2YWx1ZT5TRUxFQ1QNCiAxIEFTIEMxLCAN CiBFeHRlbnQxLklkLCANCi1FeHRlbnQxLkZyZWlnaHQsIA0KLUV4dGVudDEuU3RvcmVJZA0KLUZS T00gT3JkZXJzIEFTIEV4dGVudDEgSU5ORVIgSk9JTiAoU0VMRUNUDQorRXh0ZW50MS5OYW1lLCAN CitKb2luMS5JZCBBUyBJZDEsIA0KK0pvaW4xLk5hbWUgQVMgTmFtZTEsIA0KK0pvaW4xLklkMSBB UyBJZDIsIA0KK0pvaW4xLk5hbWUxIEFTIE5hbWUyDQorRlJPTSBDb21wYW5pZXMgQVMgRXh0ZW50 MSBJTk5FUiBKT0lOIChTRUxFQ1QNCiBFeHRlbnQyLklkLCANCiBFeHRlbnQyLk5hbWUsIA0KIEV4 dGVudDIuQWdlLCANCiBFeHRlbnQzLklkIEFTIElkMSwgDQogRXh0ZW50My5OYW1lIEFTIE5hbWUx LCANCi1FeHRlbnQzLkFkZHJlc3MsIA0KLUV4dGVudDMuQ2l0eSwgDQotRXh0ZW50My5TdGF0ZSwg DQotRXh0ZW50My5aaXBDb2RlDQotRlJPTSBBdXRob3JzIEFTIEV4dGVudDIgSU5ORVIgSk9JTiBT dG9yZXMgQVMgRXh0ZW50MyBPTiAoRXh0ZW50Mi5JZCA9IEV4dGVudDMuSWQpIE9SICgoRXh0ZW50 Mi5JZCBJUyAgTlVMTCkgQU5EIChFeHRlbnQzLklkIElTICBOVUxMKSkpIEFTIEpvaW4xIE9OIChF eHRlbnQxLklkID0gSm9pbjEuSWQpIE9SICgoRXh0ZW50MS5JZCBJUyAgTlVMTCkgQU5EIChKb2lu MS5JZCBJUyAgTlVMTCkpPC92YWx1ZT4NCitFeHRlbnQzLlBhZ2VzLCANCitFeHRlbnQzLkF1dGhv cl9pZCwgDQorRXh0ZW50My5QdWJsaXNoZXJfaWQNCitGUk9NIEF1dGhvcnMgQVMgRXh0ZW50MiBJ Tk5FUiBKT0lOIEJvb2tzIEFTIEV4dGVudDMgT04gRXh0ZW50Mi5JZCA9IEV4dGVudDMuSWQpIEFT IEpvaW4xIE9OIEV4dGVudDEuSWQgPSBKb2luMS5JZDwvdmFsdWU+DQogICA8L2RhdGE+DQogICA8 ZGF0YSBuYW1lPSJNYXhJblN1YlF1ZXJ5MSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQogICAgIDx2 YWx1ZT5TRUxFQ1QNCkBAIC00OTEsNiArNDkzLDkgQEAKICBPUkRFUiBCWSANCiBQcm9qZWN0MS5O YW1lIERFU0MgTElNSVQgMiwyPC92YWx1ZT4NCiAgIDwvZGF0YT4NCisgIDxkYXRhIG5hbWU9IlN0 cmluZzEiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KKyAgICA8dmFsdWUgLz4NCisgIDwvZGF0YT4N CiAgIDxkYXRhIG5hbWU9IlN1bVNpbXBsZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+DQogICAgIDx2 YWx1ZT5TRUxFQ1QNCiBHcm91cEJ5MS5BMSBBUyBDMQ0KCg== --===============0922394907== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/reggie.burnett@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: reggie.burnett@stripped\ # m22q1irn80u6lo0b # target_branch: file:///C:/Users/Reggie/work/connector-net/6.0/ # testament_sha1: f2b8a714fbf9c8b67a201ce39c51f85eb7476913 # timestamp: 2011-05-23 20:43:33 -0500 # base_revision_id: julio.casal@stripped\ # axspowce0zjlfm3n # # Begin bundle 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 --===============0922394907==--