From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Jan Kratochvil To: git-commits@fedoraproject.org Subject: [rpms/gdb] gdb-17.2-rebase-f44: Permit passing pointers as address number even for C++ methods (Keith Seitz). Date: Sat, 27 Jun 2026 23:55:53 GMT Message-ID: <178260455342.1.12663869104939941594.rpms-gdb-979799fd0b72@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: gdb-17.2-rebase-f44 X-Git-Rev: 979799fd0b72b505a4a2d555c838c06aa9c4e3f0 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGdkYi0xNy4yLXJlYmFzZS1mNDQKQ29tbWl0IDogOTc5Nzk5ZmQwYjcyYjUwNWE0YTJkNTU1Yzgz OGMwNmFhOWM0ZTNmMApBdXRob3IgOiBKYW4gS3JhdG9jaHZpbCA8amFuLmtyYXRvY2h2aWxAcmVk aGF0LmNvbT4KRGF0ZSAgIDogMjAxMi0wOS0yN1QyMjozODo1NCswMjowMApTdGF0cyAgOiArMTAx MC8tMSBpbiAyIGZpbGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcv cnBtcy9nZGIvYy85Nzk3OTlmZDBiNzJiNTA1YTRhMmQ1NTVjODM4YzA2YWE5YzRlM2YwP2JyYW5j aD1nZGItMTcuMi1yZWJhc2UtZjQ0CgpMb2c6ClBlcm1pdCBwYXNzaW5nIHBvaW50ZXJzIGFzIGFk ZHJlc3MgbnVtYmVyIGV2ZW4gZm9yIEMrKyBtZXRob2RzIChLZWl0aCBTZWl0eikuCgotLS0KZGlm ZiAtLWdpdCBhL2dkYi1jaGVjay10eXBlLnBhdGNoIGIvZ2RiLWNoZWNrLXR5cGUucGF0Y2gKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmI0NDA2NQotLS0gL2Rldi9udWxsCisr KyBiL2dkYi1jaGVjay10eXBlLnBhdGNoCkBAIC0wLDAgKzEsMTAwMiBAQAoraHR0cDovL3NvdXJj ZXdhcmUub3JnL21sL2dkYi1jdnMvMjAxMi0wOC9tc2cwMDEzMy5odG1sCisKKyMjIyBzcmMvZ2Ri L0NoYW5nZUxvZwkyMDEyLzA4LzE3IDAzOjA2OjEwCTEuMTQ1OTkKKyMjIyBzcmMvZ2RiL0NoYW5n ZUxvZwkyMDEyLzA4LzE3IDE3OjM2OjU2CTEuMTQ2MDAKKyMjIC0xLDMgKzEsNDggQEAKKysyMDEy LTA4LTE3ICBLZWl0aCBTZWl0eiAgPGtlaXRoc0ByZWRoYXQuY29tPgorKworKwlQUiBjKysvMTMz NTYKKysJKiBnZGJ0eXBlcy5jIChzdHJpY3RfdHlwZV9jaGVja2luZyk6IE5ldyB2YXJpYWJsZS4K KysJKHNob3dfc3RyaWN0X3R5cGVfY2hlY2tpbmcpOiBOZXcgZnVuY3Rpb24uCisrCShyYW5rX29u ZV90eXBlKTogUmV0dXJuIE5TX1BPSU5URVJfSU5URUdFUl9DT05WRVJTSU9OX0JBRE5FU1MKKysJ aWYgc3RyaWN0IHR5cGUgY2hlY2tpbmcgaXMgZGlzYWJsZWQuCisrCShfaW5pdGlhbGl6ZV9nZGJ0 eXBlcyk6IEFkZCAiY2hlY2sgdHlwZSIgc3ViY29tbWFuZC4KKysJKiBnZGJ0eXBlcy5oIChOU19J TlRFR0VSX1BPSU5URVJfQ09OVkVSU0lPTl9CQURORVNTKTogTmV3IHN0cnVjdC4KKysKKysyMDEy LTA4LTE3ICBLZWl0aCBTZWl0eiAgPGtlaXRoc0ByZWRoYXQuY29tPgorKworKwkqIGxhbmd1YWdl LmggKHR5cGVfbW9kZSk6IFJlbW92ZS4KKysJKHR5cGVfY2hlY2spOiBSZW1vdmUuCisrCShzdHJ1 Y3QgbGFuZ3VhZ2VfZGVmbik6IFJlbW92ZSBsYV90eXBlX2NoZWNrLgorKwkoU1RSSUNUX1RZUEUp OiBSZW1vdmUgdW51c2VkIG1hY3JvLgorKwkodHlwZV9lcnJvcik6IFJlbW92ZS4KKysJKiBsYW5n dWFnZS5jIChzZXRfdHlwZV9yYW5nZV9jYXNlKTogUmVuYW1lZCB0byAuLi4KKysJKHNldF9yYW5n ZV9jYXNlKTogLi4uIHRoaXMuICBVcGRhdGUgYWxsIGNhbGxlcnMuCisrCVJlbW92ZSB0eXBlX21v ZGUvdHlwZV9jaGVjay4KKysJKHR5cGVfbW9kZSk6IFJlbW92ZS4KKysJKHR5cGVfY2hlY2spOiBS ZW1vdmUuCisrCShzaG93X3R5cGVfY29tbWFuZCk6IFJlbW92ZS4KKysJKHNldF90eXBlX2NvbW1h bmQpOiBSZW1vdmUuCisrCShsYW5ndWFnZV9pbmZvKTogUmVtb3ZlIHR5cGUgY2hlY2tpbmcgb3V0 cHV0LgorKwkodHlwZV9lcnJvcik6IFJlbW92ZSB1bnVzZWQgZnVuY3Rpb24uCisrCShyYW5nZV9l cnJvcik6IFVwZGF0ZSBjb21tZW50LgorKwkodW5rbm93bl9sYW5ndWFnZV9kZWZuKTogUmVtb3Zl IGxhX3R5cGVfY2hlY2suCisrCShhdXRvX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4KKysJKGxv Y2FsX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4KKysJKF9pbml0aWFsaXplX2xhbmd1YWdlKTog UmVtb3ZlICJjaGVjayB0eXBlIiBzdWJjb21tYW5kLgorKwkqIGFkYS1sYW5nLmMgKGFkYV9sYW5n dWFnZV9kZWZuKTogUmVtb3ZlIGxhX3R5cGVfY2hlY2suCisrCSogYy1sYW5nLmMgKGNfbGFuZ3Vh Z2VfZGVmbik6IExpa2V3aXNlLgorKwkoY3BsdXNfbGFuZ3VhZ2VfZGVmbik6IExpa2V3aXNlLgor KwkoYXNtX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4KKysJKG1pbmltYWxfbGFuZ3VhZ2VfZGVm bik6IExpa2V3aXNlLgorKwkqIGQtbGFuZy5jIChkX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4K KysJKiBmLWxhbmcuYyAoZl9sYW5ndWFnZV9kZWZuKTogTGlrZXdpc2UuCisrCSogZ28tbGFuZy5j IChnb19sYW5ndWFnZV9kZWZuKTogTGlrZXdpc2UuCisrCSoganYtbGFuZy5jIChqYXZhX2xhbmd1 YWdlX2RlZm4pOiBMaWtld2lzZS4KKysJKiBtMi1sYW5nLmMgKG0yX2xhbmd1YWdlX2RlZm4pOiBM aWtld2lzZS4KKysJKiBvYmpjLWxhbmcuYyAob2JqY19sYW5ndWFnZV9kZWZuKTogTGlrZXdpc2Uu CisrCSogb3BlbmNsLWxhbmcuYyAob3BlbmNsX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4KKysJ KiBwLWxhbmcuYyAocGFzY2FsX2xhbmd1YWdlX2RlZm4pOiBMaWtld2lzZS4KKysKKyAyMDEyLTA4 LTE2ICBNaWtlIEZyeXNpbmdlciAgPHZhcGllckBnZW50b28ub3JnPgorIAorIAkqIGluZmNtZC5j IChfaW5pdGlhbGl6ZV9pbmZjbWQpOiBSZW1vdmUgdHJhaWxpbmcgKSBpbiBuZXh0IGhlbHAgdGV4 dC4KK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2dkYnR5cGVzLmMKKz09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K Ky0tLSBnZGItNy41LjAuMjAxMjA5MjYub3JpZy9nZGIvZ2RidHlwZXMuYwkyMDEyLTA5LTI3IDIy OjE0OjIxLjAwMDAwMDAwMCArMDIwMAorKysrIGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvZ2RidHlw ZXMuYwkyMDEyLTA5LTI3IDIyOjE1OjA1LjgwNzcwNjEwNSArMDIwMAorQEAgLTYyLDYgKzYyLDcg QEAgY29uc3Qgc3RydWN0IHJhbmsgQkFTRV9DT05WRVJTSU9OX0JBRE5FUworIGNvbnN0IHN0cnVj dCByYW5rIFJFRkVSRU5DRV9DT05WRVJTSU9OX0JBRE5FU1MgPSB7MiwwfTsKKyBjb25zdCBzdHJ1 Y3QgcmFuayBOVUxMX1BPSU5URVJfQ09OVkVSU0lPTl9CQURORVNTID0gezIsMH07CisgY29uc3Qg c3RydWN0IHJhbmsgTlNfUE9JTlRFUl9DT05WRVJTSU9OX0JBRE5FU1MgPSB7MTAsMH07CisrY29u c3Qgc3RydWN0IHJhbmsgTlNfSU5URUdFUl9QT0lOVEVSX0NPTlZFUlNJT05fQkFETkVTUyA9IHsz LDB9OworIAorIC8qIEZsb2F0Zm9ybWF0IHBhaXJzLiAgKi8KKyBjb25zdCBzdHJ1Y3QgZmxvYXRm b3JtYXQgKmZsb2F0Zm9ybWF0c19pZWVlX2hhbGZbQkZEX0VORElBTl9VTktOT1dOXSA9IHsKK0BA IC0xMzQsNiArMTM1LDE5IEBAIHNob3dfb3ZlcmxvYWRfZGVidWcgKHN0cnVjdCB1aV9maWxlICpm aWwKKyAJCSAgICB2YWx1ZSk7CisgfQorIAorKy8qIEEgZmxhZyB0byBlbmFibGUgc3RyaWN0IHR5 cGUgY2hlY2tpbmcuICAqLworKworK3N0YXRpYyBpbnQgc3RyaWN0X3R5cGVfY2hlY2tpbmcgPSAx OworKworKy8qIEEgZnVuY3Rpb24gdG8gc2hvdyB0aGUgc3RhdHVzIG9mIHN0cmljdCB0eXBlIGNo ZWNraW5nLiAgKi8KKysKKytzdGF0aWMgdm9pZAorK3Nob3dfc3RyaWN0X3R5cGVfY2hlY2tpbmcg KHN0cnVjdCB1aV9maWxlICpmaWxlLCBpbnQgZnJvbV90dHksCisrCQkJICAgc3RydWN0IGNtZF9s aXN0X2VsZW1lbnQgKmMsIGNvbnN0IGNoYXIgKnZhbHVlKQorK3sKKysgIGZwcmludGZfZmlsdGVy ZWQgKGZpbGUsIF8oIlN0cmljdCB0eXBlIGNoZWNraW5nIGlzICVzLlxuIiksIHZhbHVlKTsKKyt9 CisrCisgc3RydWN0IGV4dHJhCisgICB7CisgICAgIGNoYXIgc3RyWzEyOF07CitAQCAtMjY0OSwx MiArMjY2MywyMCBAQCByYW5rX29uZV90eXBlIChzdHJ1Y3QgdHlwZSAqcGFybSwgc3RydWN0Cisg CWNhc2UgVFlQRV9DT0RFX0ZVTkM6CisgCSAgcmV0dXJuIHJhbmtfb25lX3R5cGUgKFRZUEVfVEFS R0VUX1RZUEUgKHBhcm0pLCBhcmcsIE5VTEwpOworIAljYXNlIFRZUEVfQ09ERV9JTlQ6CistCSAg aWYgKHZhbHVlICE9IE5VTEwgJiYgVFlQRV9DT0RFICh2YWx1ZV90eXBlICh2YWx1ZSkpID09IFRZ UEVfQ09ERV9JTlQKKy0JICAgICAgJiYgdmFsdWVfYXNfbG9uZyAodmFsdWUpID09IDApCisrCSAg aWYgKHZhbHVlICE9IE5VTEwgJiYgVFlQRV9DT0RFICh2YWx1ZV90eXBlICh2YWx1ZSkpID09IFRZ UEVfQ09ERV9JTlQpCisgCSAgICB7CistCSAgICAgIC8qIE51bGwgcG9pbnRlciBjb252ZXJzaW9u OiBhbGxvdyBpdCB0byBiZSBjYXN0IHRvIGEgcG9pbnRlci4KKy0JCSBbNC4xMC4xIG9mIEMrKyBz dGFuZGFyZCBkcmFmdCBuMzI5MF0gICovCistCSAgICAgIHJldHVybiBOVUxMX1BPSU5URVJfQ09O VkVSU0lPTl9CQURORVNTOworKwkgICAgICBpZiAodmFsdWVfYXNfbG9uZyAodmFsdWUpID09IDAp CisrCQl7CisrCQkgIC8qIE51bGwgcG9pbnRlciBjb252ZXJzaW9uOiBhbGxvdyBpdCB0byBiZSBj YXN0IHRvIGEgcG9pbnRlci4KKysJCSAgICAgWzQuMTAuMSBvZiBDKysgc3RhbmRhcmQgZHJhZnQg bjMyOTBdICAqLworKwkJICByZXR1cm4gTlVMTF9QT0lOVEVSX0NPTlZFUlNJT05fQkFETkVTUzsK KysJCX0KKysJICAgICAgZWxzZQorKwkJeworKwkJICAvKiBJZiB0eXBlIGNoZWNraW5nIGlzIGRp c2FibGVkLCBhbGxvdyB0aGUgY29udmVyc2lvbi4gICovCisrCQkgIGlmICghc3RyaWN0X3R5cGVf Y2hlY2tpbmcpCisrCQkgICAgcmV0dXJuIE5TX0lOVEVHRVJfUE9JTlRFUl9DT05WRVJTSU9OX0JB RE5FU1M7CisrCQl9CisgCSAgICB9CisgCSAgLyogZmFsbCB0aHJvdWdoICAqLworIAljYXNlIFRZ UEVfQ09ERV9FTlVNOgorQEAgLTQ2MzcsNCArNDY1OSwxMyBAQCBfaW5pdGlhbGl6ZV9nZGJ0eXBl cyAodm9pZCkKKyAJCQkgICBOVUxMLCBOVUxMLAorIAkJCSAgIHNob3dfb3BhcXVlX3R5cGVfcmVz b2x1dGlvbiwKKyAJCQkgICAmc2V0bGlzdCwgJnNob3dsaXN0KTsKKysKKysgIC8qIEFkZCBhbiBv cHRpb24gdG8gcGVybWl0IG5vbi1zdHJpY3QgdHlwZSBjaGVja2luZy4gICovCisrICBhZGRfc2V0 c2hvd19ib29sZWFuX2NtZCAoInR5cGUiLCBjbGFzc19zdXBwb3J0LAorKwkJCSAgICZzdHJpY3Rf dHlwZV9jaGVja2luZywKKysJCQkgICBfKCJTZXQgc3RyaWN0IHR5cGUgY2hlY2tpbmcuIiksCisr CQkJICAgXygiU2hvdyBzdHJpY3QgdHlwZSBjaGVja2luZy4iKSwKKysJCQkgICBOVUxMLCBOVUxM LAorKwkJCSAgIHNob3dfc3RyaWN0X3R5cGVfY2hlY2tpbmcsCisrCQkJICAgJnNldGNoZWNrbGlz dCwgJnNob3djaGVja2xpc3QpOworIH0KK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2dk YnR5cGVzLmgKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy41LjAuMjAxMjA5MjYub3JpZy9nZGIvZ2Ri dHlwZXMuaAkyMDEyLTA5LTI3IDIyOjE0OjIzLjAwMDAwMDAwMCArMDIwMAorKysrIGdkYi03LjUu MC4yMDEyMDkyNi9nZGIvZ2RidHlwZXMuaAkyMDEyLTA5LTI3IDIyOjE0OjQwLjY5MDY5NTA1OSAr MDIwMAorQEAgLTE3NDUsNiArMTc0NSw5IEBAIGV4dGVybiBjb25zdCBzdHJ1Y3QgcmFuayBOVUxM X1BPSU5URVJfQ08KKyAvKiBDb252ZXJ0aW5nIGEgcG9pbnRlciB0byBhbiBpbnQgaXMgdXN1YWxs eSBPSy4gICovCisgZXh0ZXJuIGNvbnN0IHN0cnVjdCByYW5rIE5TX1BPSU5URVJfQ09OVkVSU0lP Tl9CQURORVNTOworIAorKy8qIEJhZG5lc3Mgb2YgY29udmVydGluZyBhIChub24temVybykgaW50 ZWdlciBjb25zdGFudAorKyAgIHRvIGEgcG9pbnRlci4gICovCisrZXh0ZXJuIGNvbnN0IHN0cnVj dCByYW5rIE5TX0lOVEVHRVJfUE9JTlRFUl9DT05WRVJTSU9OX0JBRE5FU1M7CisgCisgZXh0ZXJu IHN0cnVjdCByYW5rIHN1bV9yYW5rcyAoc3RydWN0IHJhbmsgYSwgc3RydWN0IHJhbmsgYik7Cisg ZXh0ZXJuIGludCBjb21wYXJlX3JhbmtzIChzdHJ1Y3QgcmFuayBhLCBzdHJ1Y3QgcmFuayBiKTsK K0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2xhbmd1YWdlLmgKKz09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0t LSBnZGItNy41LjAuMjAxMjA5MjYub3JpZy9nZGIvbGFuZ3VhZ2UuaAkyMDEyLTA2LTEzIDE3OjQ3 OjE0LjAwMDAwMDAwMCArMDIwMAorKysrIGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvbGFuZ3VhZ2Uu aAkyMDEyLTA5LTI3IDIyOjE0OjQwLjgzNDY5NTEyMSArMDIwMAorQEAgLTU1LDI3ICs1NSw2IEBA IGV4dGVybiBlbnVtIHJhbmdlX2NoZWNrCisgICB9CisgcmFuZ2VfY2hlY2s7CisgCistLyogdHlw ZV9tb2RlID09CistICAgdHlwZV9tb2RlX2F1dG86ICAgdHlwZV9jaGVjayBzZXQgYXV0b21hdGlj YWxseSB0byBkZWZhdWx0IG9mIGxhbmd1YWdlLgorLSAgIHR5cGVfbW9kZV9tYW51YWw6IHR5cGVf Y2hlY2sgc2V0IG1hbnVhbGx5IGJ5IHVzZXIuICAqLworLQorLWV4dGVybiBlbnVtIHR5cGVfbW9k ZQorLSAgeworLSAgICB0eXBlX21vZGVfYXV0bywgdHlwZV9tb2RlX21hbnVhbAorLSAgfQorLXR5 cGVfbW9kZTsKKy0KKy0vKiB0eXBlX2NoZWNrID09CistICAgdHlwZV9jaGVja19vbjogICAgVHlw ZXMgYXJlIGNoZWNrZWQgaW4gR0RCIGV4cHJlc3Npb25zLCBwcm9kdWNpbmcgZXJyb3JzLgorLSAg IHR5cGVfY2hlY2tfd2FybjogIFR5cGVzIGFyZSBjaGVja2VkLCBwcm9kdWNpbmcgd2FybmluZ3Mu CistICAgdHlwZV9jaGVja19vZmY6ICAgVHlwZXMgYXJlIG5vdCBjaGVja2VkIGluIEdEQiBleHBy ZXNzaW9ucy4gICovCistCistZXh0ZXJuIGVudW0gdHlwZV9jaGVjaworLSAgeworLSAgICB0eXBl X2NoZWNrX29mZiwgdHlwZV9jaGVja193YXJuLCB0eXBlX2NoZWNrX29uCistICB9CistdHlwZV9j aGVjazsKKy0KKyAvKiBjYXNlX21vZGUgPT0KKyAgICBjYXNlX21vZGVfYXV0bzogICBjYXNlX3Nl bnNpdGl2aXR5IHNldCB1cG9uIHNlbGVjdGlvbiBvZiBzY29wZS4KKyAgICBjYXNlX21vZGVfbWFu dWFsOiBjYXNlX3NlbnNpdGl2aXR5IHNldCBvbmx5IGJ5IHVzZXIuICAqLworQEAgLTE2MiwxMCAr MTQxLDYgQEAgc3RydWN0IGxhbmd1YWdlX2RlZm4KKyAKKyAgICAgZW51bSByYW5nZV9jaGVjayBs YV9yYW5nZV9jaGVjazsKKyAKKy0gICAgLyogRGVmYXVsdCB0eXBlIGNoZWNraW5nLiAgKi8KKy0K Ky0gICAgZW51bSB0eXBlX2NoZWNrIGxhX3R5cGVfY2hlY2s7CistCisgICAgIC8qIERlZmF1bHQg Y2FzZSBzZW5zaXRpdml0eS4gICovCisgICAgIGVudW0gY2FzZV9zZW5zaXRpdml0eSBsYV9jYXNl X3NlbnNpdGl2aXR5OworIAorQEAgLTQyMiw5ICszOTcsNiBAQCBzdHJ1Y3QgdHlwZSAqbGFuZ3Vh Z2VfbG9va3VwX3ByaW1pdGl2ZV90CisgLyogVGhlc2UgbWFjcm9zIGRlZmluZSB0aGUgYmVoYXZp b3VyIG9mIHRoZSBleHByZXNzaW9uIAorICAgIGV2YWx1YXRvci4gICovCisgCistLyogU2hvdWxk IHdlIHN0cmljdGx5IHR5cGUgY2hlY2sgZXhwcmVzc2lvbnM/ICAqLworLSNkZWZpbmUgU1RSSUNU X1RZUEUgKHR5cGVfY2hlY2sgIT0gdHlwZV9jaGVja19vZmYpCistCisgLyogU2hvdWxkIHdlIHJh bmdlIGNoZWNrIHZhbHVlcyBhZ2FpbnN0IHRoZSBkb21haW4gb2YgdGhlaXIgdHlwZT8gICovCisg I2RlZmluZSBSQU5HRV9DSEVDSyAocmFuZ2VfY2hlY2sgIT0gcmFuZ2VfY2hlY2tfb2ZmKQorIAor QEAgLTQ5Niw4ICs0NjgsNiBAQCBleHRlcm4gdm9pZCBiaW5vcF90eXBlX2NoZWNrIChzdHJ1Y3Qg dmFsCisgCisgLyogRXJyb3IgbWVzc2FnZXMgKi8KKyAKKy1leHRlcm4gdm9pZCB0eXBlX2Vycm9y IChjb25zdCBjaGFyICosIC4uLikgQVRUUklCVVRFX1BSSU5URiAoMSwgMik7CistCisgZXh0ZXJu IHZvaWQgcmFuZ2VfZXJyb3IgKGNvbnN0IGNoYXIgKiwgLi4uKSBBVFRSSUJVVEVfUFJJTlRGICgx LCAyKTsKKyAKKyAvKiBEYXRhOiAgRG9lcyB0aGlzIHZhbHVlIHJlcHJlc2VudCAidHJ1dGgiIHRv IHRoZSBjdXJyZW50IGxhbmd1YWdlPyAgKi8KK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2Ri L2xhbmd1YWdlLmMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy41LjAuMjAxMjA5MjYub3JpZy9nZGIv bGFuZ3VhZ2UuYwkyMDEyLTAzLTAyIDIwOjI5OjAxLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03 LjUuMC4yMDEyMDkyNi9nZGIvbGFuZ3VhZ2UuYwkyMDEyLTA5LTI3IDIyOjE0OjQwLjkyMjY5NTE2 MiArMDIwMAorQEAgLTU1LDcgKzU1LDcgQEAgc3RhdGljIHZvaWQgc2hvd19jaGVjayAoY2hhciAq LCBpbnQpOworIAorIHN0YXRpYyB2b2lkIHNldF9jaGVjayAoY2hhciAqLCBpbnQpOworIAorLXN0 YXRpYyB2b2lkIHNldF90eXBlX3JhbmdlX2Nhc2UgKHZvaWQpOworK3N0YXRpYyB2b2lkIHNldF9y YW5nZV9jYXNlICh2b2lkKTsKKyAKKyBzdGF0aWMgdm9pZCB1bmtfbGFuZ19lbWl0X2NoYXIgKGlu dCBjLCBzdHJ1Y3QgdHlwZSAqdHlwZSwKKyAJCQkJc3RydWN0IHVpX2ZpbGUgKnN0cmVhbSwgaW50 IHF1b3Rlcik7CitAQCAtODEsOCArODEsNiBAQCBleHRlcm4gY29uc3Qgc3RydWN0IGxhbmd1YWdl X2RlZm4gdW5rbm93CisgCisgZW51bSByYW5nZV9tb2RlIHJhbmdlX21vZGUgPSByYW5nZV9tb2Rl X2F1dG87CisgZW51bSByYW5nZV9jaGVjayByYW5nZV9jaGVjayA9IHJhbmdlX2NoZWNrX29mZjsK Ky1lbnVtIHR5cGVfbW9kZSB0eXBlX21vZGUgPSB0eXBlX21vZGVfYXV0bzsKKy1lbnVtIHR5cGVf Y2hlY2sgdHlwZV9jaGVjayA9IHR5cGVfY2hlY2tfb2ZmOworIGVudW0gY2FzZV9tb2RlIGNhc2Vf bW9kZSA9IGNhc2VfbW9kZV9hdXRvOworIGVudW0gY2FzZV9zZW5zaXRpdml0eSBjYXNlX3NlbnNp dGl2aXR5ID0gY2FzZV9zZW5zaXRpdmVfb247CisgCitAQCAtMTc0LDcgKzE3Miw3IEBAIHNldF9s YW5ndWFnZV9jb21tYW5kIChjaGFyICppZ25vcmUsIGludAorIAkgICAgICAvKiBFbnRlciBtYW51 YWwgbW9kZS4gIFNldCB0aGUgc3BlY2lmaWVkIGxhbmd1YWdlLiAgKi8KKyAJICAgICAgbGFuZ3Vh Z2VfbW9kZSA9IGxhbmd1YWdlX21vZGVfbWFudWFsOworIAkgICAgICBjdXJyZW50X2xhbmd1YWdl ID0gbGFuZ3VhZ2VzW2ldOworLQkgICAgICBzZXRfdHlwZV9yYW5nZV9jYXNlICgpOworKwkgICAg ICBzZXRfcmFuZ2VfY2FzZSAoKTsKKyAJICAgICAgZXhwZWN0ZWRfbGFuZ3VhZ2UgPSBjdXJyZW50 X2xhbmd1YWdlOworIAkgICAgICByZXR1cm47CisgCSAgICB9CitAQCAtMTg2LDc5ICsxODQsNiBA QCBzZXRfbGFuZ3VhZ2VfY29tbWFuZCAoY2hhciAqaWdub3JlLCBpbnQKKyAJCSAgbGFuZ3VhZ2Up OworIH0KKyAKKy0vKiBTaG93IGNvbW1hbmQuICBEaXNwbGF5IGEgd2FybmluZyBpZiB0aGUgdHlw ZSBzZXR0aW5nIGRvZXMKKy0gICBub3QgbWF0Y2ggdGhlIGN1cnJlbnQgbGFuZ3VhZ2UuICAqLwor LXN0YXRpYyB2b2lkCistc2hvd190eXBlX2NvbW1hbmQgKHN0cnVjdCB1aV9maWxlICpmaWxlLCBp bnQgZnJvbV90dHksCistCQkgICBzdHJ1Y3QgY21kX2xpc3RfZWxlbWVudCAqYywgY29uc3QgY2hh ciAqdmFsdWUpCisteworLSAgaWYgKHR5cGVfbW9kZSA9PSB0eXBlX21vZGVfYXV0bykKKy0gICAg eworLSAgICAgIGNoYXIgKnRtcCA9IE5VTEw7CistCistICAgICAgc3dpdGNoICh0eXBlX2NoZWNr KQorLQl7CistCWNhc2UgdHlwZV9jaGVja19vbjoKKy0JICB0bXAgPSAib24iOworLQkgIGJyZWFr OworLQljYXNlIHR5cGVfY2hlY2tfb2ZmOgorLQkgIHRtcCA9ICJvZmYiOworLQkgIGJyZWFrOwor LQljYXNlIHR5cGVfY2hlY2tfd2FybjoKKy0JICB0bXAgPSAid2FybiI7CistCSAgYnJlYWs7Cist CWRlZmF1bHQ6CistCSAgaW50ZXJuYWxfZXJyb3IgKF9fRklMRV9fLCBfX0xJTkVfXywKKy0JCQkg ICJVbnJlY29nbml6ZWQgdHlwZSBjaGVjayBzZXR0aW5nLiIpOworLQl9CistCistICAgICAgZnBy aW50Zl9maWx0ZXJlZCAoZ2RiX3N0ZG91dCwKKy0JCQlfKCJUeXBlIGNoZWNraW5nIGlzIFwiYXV0 bzsgY3VycmVudGx5ICVzXCIuXG4iKSwKKy0JCQl0bXApOworLSAgICB9CistICBlbHNlCistICAg IGZwcmludGZfZmlsdGVyZWQgKGdkYl9zdGRvdXQsIF8oIlR5cGUgY2hlY2tpbmcgaXMgXCIlc1wi LlxuIiksCistCQkgICAgICB2YWx1ZSk7CistCistICAgaWYgKHR5cGVfY2hlY2sgIT0gY3VycmVu dF9sYW5ndWFnZS0+bGFfdHlwZV9jaGVjaykKKy0gICAgd2FybmluZyAoXygidGhlIGN1cnJlbnQg dHlwZSBjaGVjayBzZXR0aW5nIgorLQkgICAgICAgIiBkb2VzIG5vdCBtYXRjaCB0aGUgbGFuZ3Vh Z2UuXG4iKSk7CistfQorLQorLS8qIFNldCBjb21tYW5kLiAgQ2hhbmdlIHRoZSBzZXR0aW5nIGZv ciB0eXBlIGNoZWNraW5nLiAgKi8KKy1zdGF0aWMgdm9pZAorLXNldF90eXBlX2NvbW1hbmQgKGNo YXIgKmlnbm9yZSwgaW50IGZyb21fdHR5LCBzdHJ1Y3QgY21kX2xpc3RfZWxlbWVudCAqYykKKy17 CistICBpZiAoc3RyY21wICh0eXBlLCAib24iKSA9PSAwKQorLSAgICB7CistICAgICAgdHlwZV9j aGVjayA9IHR5cGVfY2hlY2tfb247CistICAgICAgdHlwZV9tb2RlID0gdHlwZV9tb2RlX21hbnVh bDsKKy0gICAgfQorLSAgZWxzZSBpZiAoc3RyY21wICh0eXBlLCAid2FybiIpID09IDApCistICAg IHsKKy0gICAgICB0eXBlX2NoZWNrID0gdHlwZV9jaGVja193YXJuOworLSAgICAgIHR5cGVfbW9k ZSA9IHR5cGVfbW9kZV9tYW51YWw7CistICAgIH0KKy0gIGVsc2UgaWYgKHN0cmNtcCAodHlwZSwg Im9mZiIpID09IDApCistICAgIHsKKy0gICAgICB0eXBlX2NoZWNrID0gdHlwZV9jaGVja19vZmY7 CistICAgICAgdHlwZV9tb2RlID0gdHlwZV9tb2RlX21hbnVhbDsKKy0gICAgfQorLSAgZWxzZSBp ZiAoc3RyY21wICh0eXBlLCAiYXV0byIpID09IDApCistICAgIHsKKy0gICAgICB0eXBlX21vZGUg PSB0eXBlX21vZGVfYXV0bzsKKy0gICAgICBzZXRfdHlwZV9yYW5nZV9jYXNlICgpOworLSAgICAg IHJldHVybjsKKy0gICAgfQorLSAgZWxzZQorLSAgICBpbnRlcm5hbF9lcnJvciAoX19GSUxFX18s IF9fTElORV9fLAorLQkJICAgIF8oIlVucmVjb2duaXplZCB0eXBlIGNoZWNrIHNldHRpbmc6IFwi JXNcIiIpLCB0eXBlKTsKKy0KKy0gIGlmICh0eXBlX2NoZWNrICE9IGN1cnJlbnRfbGFuZ3VhZ2Ut PmxhX3R5cGVfY2hlY2spCistICAgIHdhcm5pbmcgKF8oInRoZSBjdXJyZW50IHR5cGUgY2hlY2sg c2V0dGluZyIKKy0JICAgICAgICIgZG9lcyBub3QgbWF0Y2ggdGhlIGxhbmd1YWdlLlxuIikpOwor LX0KKy0KKyAvKiBTaG93IGNvbW1hbmQuICBEaXNwbGF5IGEgd2FybmluZyBpZiB0aGUgcmFuZ2Ug c2V0dGluZyBkb2VzCisgICAgbm90IG1hdGNoIHRoZSBjdXJyZW50IGxhbmd1YWdlLiAgKi8KKyBz dGF0aWMgdm9pZAorQEAgLTMyMCw3ICsyNDUsNyBAQCBzZXRfcmFuZ2VfY29tbWFuZCAoY2hhciAq aWdub3JlLCBpbnQgZnJvCisgICBlbHNlIGlmIChzdHJjbXAgKHJhbmdlLCAiYXV0byIpID09IDAp CisgICAgIHsKKyAgICAgICByYW5nZV9tb2RlID0gcmFuZ2VfbW9kZV9hdXRvOworLSAgICAgIHNl dF90eXBlX3JhbmdlX2Nhc2UgKCk7CisrICAgICAgc2V0X3JhbmdlX2Nhc2UgKCk7CisgICAgICAg cmV0dXJuOworICAgICB9CisgICBlbHNlCitAQCAtMzg5LDcgKzMxNCw3IEBAIHNldF9jYXNlX2Nv bW1hbmQgKGNoYXIgKmlnbm9yZSwgaW50IGZyb20KKyAgICBlbHNlIGlmIChzdHJjbXAgKGNhc2Vf c2Vuc2l0aXZlLCAiYXV0byIpID09IDApCisgICAgICB7CisgICAgICAgIGNhc2VfbW9kZSA9IGNh c2VfbW9kZV9hdXRvOworLSAgICAgICBzZXRfdHlwZV9yYW5nZV9jYXNlICgpOworKyAgICAgICBz ZXRfcmFuZ2VfY2FzZSAoKTsKKyAgICAgICAgcmV0dXJuOworICAgICAgfQorICAgIGVsc2UKK0BA IC00MDksMTQgKzMzNCwxMSBAQCBzZXRfY2FzZV9jb21tYW5kIChjaGFyICppZ25vcmUsIGludCBm cm9tCisgICAgSWYgU0hPVyBpcyBub24temVybywgdGhlbiBwcmludCBvdXQgdGhlIGN1cnJlbnQg bGFuZ3VhZ2UsCisgICAgdHlwZSBhbmQgcmFuZ2UgY2hlY2tpbmcgc3RhdHVzLiAgKi8KKyBzdGF0 aWMgdm9pZAorLXNldF90eXBlX3JhbmdlX2Nhc2UgKHZvaWQpCisrc2V0X3JhbmdlX2Nhc2UgKHZv aWQpCisgeworICAgaWYgKHJhbmdlX21vZGUgPT0gcmFuZ2VfbW9kZV9hdXRvKQorICAgICByYW5n ZV9jaGVjayA9IGN1cnJlbnRfbGFuZ3VhZ2UtPmxhX3JhbmdlX2NoZWNrOworIAorLSAgaWYgKHR5 cGVfbW9kZSA9PSB0eXBlX21vZGVfYXV0bykKKy0gICAgdHlwZV9jaGVjayA9IGN1cnJlbnRfbGFu Z3VhZ2UtPmxhX3R5cGVfY2hlY2s7CistCisgICBpZiAoY2FzZV9tb2RlID09IGNhc2VfbW9kZV9h dXRvKQorICAgICBjYXNlX3NlbnNpdGl2aXR5ID0gY3VycmVudF9sYW5ndWFnZS0+bGFfY2FzZV9z ZW5zaXRpdml0eTsKKyB9CitAQCAtNDM3LDcgKzM1OSw3IEBAIHNldF9sYW5ndWFnZSAoZW51bSBs YW5ndWFnZSBsYW5nKQorICAgICAgIGlmIChsYW5ndWFnZXNbaV0tPmxhX2xhbmd1YWdlID09IGxh bmcpCisgCXsKKyAJICBjdXJyZW50X2xhbmd1YWdlID0gbGFuZ3VhZ2VzW2ldOworLQkgIHNldF90 eXBlX3JhbmdlX2Nhc2UgKCk7CisrCSAgc2V0X3JhbmdlX2Nhc2UgKCk7CisgCSAgYnJlYWs7Cisg CX0KKyAgICAgfQorQEAgLTQ2MSw4ICszODMsNiBAQCBsYW5ndWFnZV9pbmZvIChpbnQgcXVpZXRs eSkKKyAKKyAgIGlmICghcXVpZXRseSkKKyAgICAgeworLSAgICAgIHByaW50Zl91bmZpbHRlcmVk IChfKCJUeXBlIGNoZWNraW5nOiAgICAgJXNcbiIpLCB0eXBlKTsKKy0gICAgICBzaG93X3R5cGVf Y29tbWFuZCAoTlVMTCwgMSwgTlVMTCwgTlVMTCk7CisgICAgICAgcHJpbnRmX3VuZmlsdGVyZWQg KF8oIlJhbmdlIGNoZWNraW5nOiAgICAlc1xuIiksIHJhbmdlKTsKKyAgICAgICBzaG93X3Jhbmdl X2NvbW1hbmQgKE5VTEwsIDEsIE5VTEwsIE5VTEwpOworICAgICAgIHByaW50Zl91bmZpbHRlcmVk IChfKCJDYXNlIHNlbnNpdGl2aXR5OiAgJXNcbiIpLCBjYXNlX3NlbnNpdGl2ZSk7CitAQCAtNTAw LDM4ICs0MjAsMTEgQEAgdmFsdWVfdHJ1ZSAoc3RydWN0IHZhbHVlICp2YWwpCisgICAgZXJyb3Ig bWVzc2FnZXMgdGhhdCBvY2N1ciBkdXJpbmcgdHlwZS0gYW5kIHJhbmdlLQorICAgIGNoZWNraW5n LiAgKi8KKyAKKy0vKiBUaGVzZSBhcmUgY2FsbGVkIHdoZW4gYSBsYW5ndWFnZSBmYWlscyBhIHR5 cGUtIG9yIHJhbmdlLWNoZWNrLiAgVGhlCisrLyogVGhpcyBpcyBjYWxsZWQgd2hlbiBhIGxhbmd1 YWdlIGZhaWxzIGEgcmFuZ2UtY2hlY2suICBUaGUKKyAgICBmaXJzdCBhcmd1bWVudCBzaG91bGQg YmUgYSBwcmludGYoKS1zdHlsZSBmb3JtYXQgc3RyaW5nLCBhbmQgdGhlCistICAgcmVzdCBvZiB0 aGUgYXJndW1lbnRzIHNob3VsZCBiZSBpdHMgYXJndW1lbnRzLiAgSWYKKy0gICBbdHlwZXxyYW5n ZV1fY2hlY2sgaXMgW3R5cGV8cmFuZ2VdX2NoZWNrX29uLCBhbiBlcnJvciBpcyBwcmludGVkOwor LSAgIGlmIFt0eXBlfHJhbmdlXV9jaGVja193YXJuLCBhIHdhcm5pbmc7IG90aGVyd2lzZSBqdXN0 IHRoZQorLSAgIG1lc3NhZ2UuICAqLworLQorLXZvaWQKKy10eXBlX2Vycm9yIChjb25zdCBjaGFy ICpzdHJpbmcsLi4uKQorLXsKKy0gIHZhX2xpc3QgYXJnczsKKy0KKy0gIHZhX3N0YXJ0IChhcmdz LCBzdHJpbmcpOworLSAgc3dpdGNoICh0eXBlX2NoZWNrKQorLSAgICB7CistICAgIGNhc2UgdHlw ZV9jaGVja193YXJuOgorLSAgICAgIHZ3YXJuaW5nIChzdHJpbmcsIGFyZ3MpOworLSAgICAgIGJy ZWFrOworLSAgICBjYXNlIHR5cGVfY2hlY2tfb246CistICAgICAgdmVycm9yIChzdHJpbmcsIGFy Z3MpOworLSAgICAgIGJyZWFrOworLSAgICBjYXNlIHR5cGVfY2hlY2tfb2ZmOgorLSAgICAgIC8q IEZJWE1FOiBjYWduZXkvMjAwMi0wMS0zMDogU2hvdWxkIHRoaXMgZnVuY3Rpb24gcHJpbnQgYW55 dGhpbmcKKy0gICAgICAgICB3aGVuIHR5cGUgZXJyb3IgaXMgb2ZmPyAgKi8KKy0gICAgICB2ZnBy aW50Zl9maWx0ZXJlZCAoZ2RiX3N0ZGVyciwgc3RyaW5nLCBhcmdzKTsKKy0gICAgICBmcHJpbnRm X2ZpbHRlcmVkIChnZGJfc3RkZXJyLCAiXG4iKTsKKy0gICAgICBicmVhazsKKy0gICAgZGVmYXVs dDoKKy0gICAgICBpbnRlcm5hbF9lcnJvciAoX19GSUxFX18sIF9fTElORV9fLCBfKCJiYWQgc3dp dGNoIikpOworLSAgICB9CistICB2YV9lbmQgKGFyZ3MpOworLX0KKysgICByZXN0IG9mIHRoZSBh cmd1bWVudHMgc2hvdWxkIGJlIGl0cyBhcmd1bWVudHMuICBJZiByYW5nZV9jaGVjayBpcworKyAg IHJhbmdlX2NoZWNrX29uLCBhbiBlcnJvciBpcyBwcmludGVkOyAgaWYgcmFuZ2VfY2hlY2tfd2Fy biwgYSB3YXJuaW5nOworKyAgIG90aGVyd2lzZSBqdXN0IHRoZSBtZXNzYWdlLiAgKi8KKyAKKyB2 b2lkCisgcmFuZ2VfZXJyb3IgKGNvbnN0IGNoYXIgKnN0cmluZywuLi4pCitAQCAtOTAyLDcgKzc5 NSw2IEBAIGNvbnN0IHN0cnVjdCBsYW5ndWFnZV9kZWZuIHVua25vd25fbGFuZ3UKKyAgICJ1bmtu b3duIiwKKyAgIGxhbmd1YWdlX3Vua25vd24sCisgICByYW5nZV9jaGVja19vZmYsCistICB0eXBl X2NoZWNrX29mZiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29uLAorICAgYXJyYXlfcm93X21ham9yLAor ICAgbWFjcm9fZXhwYW5zaW9uX25vLAorQEAgLTk0Niw3ICs4MzgsNiBAQCBjb25zdCBzdHJ1Y3Qg bGFuZ3VhZ2VfZGVmbiBhdXRvX2xhbmd1YWdlCisgICAiYXV0byIsCisgICBsYW5ndWFnZV9hdXRv LAorICAgcmFuZ2VfY2hlY2tfb2ZmLAorLSAgdHlwZV9jaGVja19vZmYsCisgICBjYXNlX3NlbnNp dGl2ZV9vbiwKKyAgIGFycmF5X3Jvd19tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9ubywKK0BA IC05ODgsNyArODc5LDYgQEAgY29uc3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4gbG9jYWxfbGFuZ3Vh ZworICAgImxvY2FsIiwKKyAgIGxhbmd1YWdlX2F1dG8sCisgICByYW5nZV9jaGVja19vZmYsCist ICB0eXBlX2NoZWNrX29mZiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29uLAorICAgYXJyYXlfcm93X21h am9yLAorICAgbWFjcm9fZXhwYW5zaW9uX25vLAorQEAgLTExMzUsMTMgKzEwMjUsNiBAQCBfaW5p dGlhbGl6ZV9sYW5ndWFnZSAodm9pZCkKKyAgIGFkZF9hbGlhc19jbWQgKCJjIiwgImNoZWNrIiwg bm9fY2xhc3MsIDEsICZzaG93bGlzdCk7CisgICBhZGRfYWxpYXNfY21kICgiY2giLCAiY2hlY2si LCBub19jbGFzcywgMSwgJnNob3dsaXN0KTsKKyAKKy0gIGFkZF9zZXRzaG93X2VudW1fY21kICgi dHlwZSIsIGNsYXNzX3N1cHBvcnQsIHR5cGVfb3JfcmFuZ2VfbmFtZXMsICZ0eXBlLAorLQkJCV8o IlNldCB0eXBlIGNoZWNraW5nLiAgKG9uL3dhcm4vb2ZmL2F1dG8pIiksCistCQkJXygiU2hvdyB0 eXBlIGNoZWNraW5nLiAgKG9uL3dhcm4vb2ZmL2F1dG8pIiksCistCQkJTlVMTCwgc2V0X3R5cGVf Y29tbWFuZCwKKy0JCQlzaG93X3R5cGVfY29tbWFuZCwKKy0JCQkmc2V0Y2hlY2tsaXN0LCAmc2hv d2NoZWNrbGlzdCk7CistCisgICBhZGRfc2V0c2hvd19lbnVtX2NtZCAoInJhbmdlIiwgY2xhc3Nf c3VwcG9ydCwgdHlwZV9vcl9yYW5nZV9uYW1lcywKKyAJCQkmcmFuZ2UsCisgCQkJXygiU2V0IHJh bmdlIGNoZWNraW5nLiAgKG9uL3dhcm4vb2ZmL2F1dG8pIiksCitJbmRleDogZ2RiLTcuNS4wLjIw MTIwOTI2L2dkYi9hZGEtbGFuZy5jCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuNS4wLjIwMTIwOTI2 Lm9yaWcvZ2RiL2FkYS1sYW5nLmMJMjAxMi0wOS0yNyAyMjoxNDoxNy4wMDAwMDAwMDAgKzAyMDAK KysrKyBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2FkYS1sYW5nLmMJMjAxMi0wOS0yNyAyMjoxNDo0 MS4xMTI2OTUyNDUgKzAyMDAKK0BAIC0xMjUwMyw3ICsxMjUwMyw2IEBAIGNvbnN0IHN0cnVjdCBs YW5ndWFnZV9kZWZuIGFkYV9sYW5ndWFnZV8KKyAgICJhZGEiLCAgICAgICAgICAgICAgICAgICAg ICAgIC8qIExhbmd1YWdlIG5hbWUgKi8KKyAgIGxhbmd1YWdlX2FkYSwKKyAgIHJhbmdlX2NoZWNr X29mZiwKKy0gIHR5cGVfY2hlY2tfb2ZmLAorICAgY2FzZV9zZW5zaXRpdmVfb24sICAgICAgICAg ICAgLyogWWVzLCBBZGEgaXMgY2FzZS1pbnNlbnNpdGl2ZSwgYnV0CisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0aGF0J3Mgbm90IHF1aXRlIHdoYXQgdGhpcyBtZWFucy4gICov CisgICBhcnJheV9yb3dfbWFqb3IsCitJbmRleDogZ2RiLTcuNS4wLjIwMTIwOTI2L2dkYi9jLWxh bmcuYworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUuMC4yMDEyMDkyNi5vcmlnL2dkYi9jLWxhbmcu YwkyMDEyLTA3LTA2IDA3OjQ2OjA0LjAwMDAwMDAwMCArMDIwMAorKysrIGdkYi03LjUuMC4yMDEy MDkyNi9nZGIvYy1sYW5nLmMJMjAxMi0wOS0yNyAyMjoxNDo0MS4xNDE2OTUyNTcgKzAyMDAKK0BA IC04MzEsNyArODMxLDYgQEAgY29uc3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4gY19sYW5ndWFnZV9k ZQorICAgImMiLAkJCQkvKiBMYW5ndWFnZSBuYW1lICovCisgICBsYW5ndWFnZV9jLAorICAgcmFu Z2VfY2hlY2tfb2ZmLAorLSAgdHlwZV9jaGVja19vZmYsCisgICBjYXNlX3NlbnNpdGl2ZV9vbiwK KyAgIGFycmF5X3Jvd19tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9jLAorQEAgLTk1NSw3ICs5 NTQsNiBAQCBjb25zdCBzdHJ1Y3QgbGFuZ3VhZ2VfZGVmbiBjcGx1c19sYW5ndWFnCisgICAiYysr IiwJCQkvKiBMYW5ndWFnZSBuYW1lICovCisgICBsYW5ndWFnZV9jcGx1cywKKyAgIHJhbmdlX2No ZWNrX29mZiwKKy0gIHR5cGVfY2hlY2tfb2ZmLAorICAgY2FzZV9zZW5zaXRpdmVfb24sCisgICBh cnJheV9yb3dfbWFqb3IsCisgICBtYWNyb19leHBhbnNpb25fYywKK0BAIC05OTcsNyArOTk1LDYg QEAgY29uc3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4gYXNtX2xhbmd1YWdlXworICAgImFzbSIsCQkJ LyogTGFuZ3VhZ2UgbmFtZSAqLworICAgbGFuZ3VhZ2VfYXNtLAorICAgcmFuZ2VfY2hlY2tfb2Zm LAorLSAgdHlwZV9jaGVja19vZmYsCisgICBjYXNlX3NlbnNpdGl2ZV9vbiwKKyAgIGFycmF5X3Jv d19tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9jLAorQEAgLTEwNDQsNyArMTA0MSw2IEBAIGNv bnN0IHN0cnVjdCBsYW5ndWFnZV9kZWZuIG1pbmltYWxfbGFuZ3UKKyAgICJtaW5pbWFsIiwJCQkv KiBMYW5ndWFnZSBuYW1lICovCisgICBsYW5ndWFnZV9taW5pbWFsLAorICAgcmFuZ2VfY2hlY2tf b2ZmLAorLSAgdHlwZV9jaGVja19vZmYsCisgICBjYXNlX3NlbnNpdGl2ZV9vbiwKKyAgIGFycmF5 X3Jvd19tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9jLAorSW5kZXg6IGdkYi03LjUuMC4yMDEy MDkyNi9nZGIvZC1sYW5nLmMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy41LjAuMjAxMjA5MjYub3Jp Zy9nZGIvZC1sYW5nLmMJMjAxMi0wMy0xNSAxNTowNjoyMC4wMDAwMDAwMDAgKzAxMDAKKysrKyBn ZGItNy41LjAuMjAxMjA5MjYvZ2RiL2QtbGFuZy5jCTIwMTItMDktMjcgMjI6MTQ6NDEuMTQzNjk1 MjU3ICswMjAwCitAQCAtMjQwLDcgKzI0MCw2IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbGFuZ3Vh Z2VfZGVmbiBkX2xhbmcKKyAgICJkIiwKKyAgIGxhbmd1YWdlX2QsCisgICByYW5nZV9jaGVja19v ZmYsCistICB0eXBlX2NoZWNrX29mZiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29uLAorICAgYXJyYXlf cm93X21ham9yLAorICAgbWFjcm9fZXhwYW5zaW9uX2MsCitJbmRleDogZ2RiLTcuNS4wLjIwMTIw OTI2L2dkYi9mLWxhbmcuYworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUuMC4yMDEyMDkyNi5vcmln L2dkYi9mLWxhbmcuYwkyMDEyLTA5LTI3IDIyOjE0OjIzLjAwMDAwMDAwMCArMDIwMAorKysrIGdk Yi03LjUuMC4yMDEyMDkyNi9nZGIvZi1sYW5nLmMJMjAxMi0wOS0yNyAyMjoxNDo0MS4xNTE2OTUy NjAgKzAyMDAKK0BAIC0yNjAsNyArMjYwLDYgQEAgY29uc3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4g Zl9sYW5ndWFnZV9kZQorICAgImZvcnRyYW4iLAorICAgbGFuZ3VhZ2VfZm9ydHJhbiwKKyAgIHJh bmdlX2NoZWNrX29uLAorLSAgdHlwZV9jaGVja19vbiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29mZiwK KyAgIGFycmF5X2NvbHVtbl9tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9ubywKK0luZGV4OiBn ZGItNy41LjAuMjAxMjA5MjYvZ2RiL2dvLWxhbmcuYworPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUu MC4yMDEyMDkyNi5vcmlnL2dkYi9nby1sYW5nLmMJMjAxMi0wNC0yNSAxNjowNzoyMC4wMDAwMDAw MDAgKzAyMDAKKysrKyBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2dvLWxhbmcuYwkyMDEyLTA5LTI3 IDIyOjE0OjQxLjE1MjY5NTI2MSArMDIwMAorQEAgLTU2Miw3ICs1NjIsNiBAQCBzdGF0aWMgY29u c3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4gZ29fbGFuCisgICAiZ28iLAorICAgbGFuZ3VhZ2VfZ28s CisgICByYW5nZV9jaGVja19vZmYsCistICB0eXBlX2NoZWNrX29mZiwKKyAgIGNhc2Vfc2Vuc2l0 aXZlX29uLAorICAgYXJyYXlfcm93X21ham9yLAorICAgbWFjcm9fZXhwYW5zaW9uX25vLAorSW5k ZXg6IGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvanYtbGFuZy5jCis9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2Ri LTcuNS4wLjIwMTIwOTI2Lm9yaWcvZ2RiL2p2LWxhbmcuYwkyMDEyLTA5LTI3IDIyOjE0OjIzLjAw MDAwMDAwMCArMDIwMAorKysrIGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvanYtbGFuZy5jCTIwMTIt MDktMjcgMjI6MTQ6NDEuMTU0Njk1MjYzICswMjAwCitAQCAtMTE2OSw3ICsxMTY5LDYgQEAgY29u c3Qgc3RydWN0IGxhbmd1YWdlX2RlZm4gamF2YV9sYW5ndWFnZQorICAgImphdmEiLAkJCS8qIExh bmd1YWdlIG5hbWUgKi8KKyAgIGxhbmd1YWdlX2phdmEsCisgICByYW5nZV9jaGVja19vZmYsCist ICB0eXBlX2NoZWNrX29mZiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29uLAorICAgYXJyYXlfcm93X21h am9yLAorICAgbWFjcm9fZXhwYW5zaW9uX25vLAorSW5kZXg6IGdkYi03LjUuMC4yMDEyMDkyNi9n ZGIvbTItbGFuZy5jCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuNS4wLjIwMTIwOTI2Lm9yaWcvZ2Ri L20yLWxhbmcuYwkyMDEyLTAzLTAyIDIwOjI5OjAxLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03 LjUuMC4yMDEyMDkyNi9nZGIvbTItbGFuZy5jCTIwMTItMDktMjcgMjI6MTQ6NDEuMTYxNjk1MjY2 ICswMjAwCitAQCAtMzcwLDcgKzM3MCw2IEBAIGNvbnN0IHN0cnVjdCBsYW5ndWFnZV9kZWZuIG0y X2xhbmd1YWdlX2QKKyAgICJtb2R1bGEtMiIsCisgICBsYW5ndWFnZV9tMiwKKyAgIHJhbmdlX2No ZWNrX29uLAorLSAgdHlwZV9jaGVja19vbiwKKyAgIGNhc2Vfc2Vuc2l0aXZlX29uLAorICAgYXJy YXlfcm93X21ham9yLAorICAgbWFjcm9fZXhwYW5zaW9uX25vLAorSW5kZXg6IGdkYi03LjUuMC4y MDEyMDkyNi9nZGIvb2JqYy1sYW5nLmMKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBnZGItNy41LjAuMjAxMjA5 MjYub3JpZy9nZGIvb2JqYy1sYW5nLmMJMjAxMi0wMy0wMiAyMDoyOTowMS4wMDAwMDAwMDAgKzAx MDAKKysrKyBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL29iamMtbGFuZy5jCTIwMTItMDktMjcgMjI6 MTQ6NDEuMTYzNjk1MjY4ICswMjAwCitAQCAtNTA5LDcgKzUwOSw2IEBAIGNvbnN0IHN0cnVjdCBs YW5ndWFnZV9kZWZuIG9iamNfbGFuZ3VhZ2UKKyAgICJvYmplY3RpdmUtYyIsCQkvKiBMYW5ndWFn ZSBuYW1lICovCisgICBsYW5ndWFnZV9vYmpjLAorICAgcmFuZ2VfY2hlY2tfb2ZmLAorLSAgdHlw ZV9jaGVja19vZmYsCisgICBjYXNlX3NlbnNpdGl2ZV9vbiwKKyAgIGFycmF5X3Jvd19tYWpvciwK KyAgIG1hY3JvX2V4cGFuc2lvbl9jLAorSW5kZXg6IGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvb3Bl bmNsLWxhbmcuYworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUuMC4yMDEyMDkyNi5vcmlnL2dkYi9v cGVuY2wtbGFuZy5jCTIwMTItMDMtMDIgMjA6Mjk6MDEuMDAwMDAwMDAwICswMTAwCisrKysgZ2Ri LTcuNS4wLjIwMTIwOTI2L2dkYi9vcGVuY2wtbGFuZy5jCTIwMTItMDktMjcgMjI6MTQ6NDEuMTY1 Njk1MjY4ICswMjAwCitAQCAtOTkzLDcgKzk5Myw2IEBAIGNvbnN0IHN0cnVjdCBsYW5ndWFnZV9k ZWZuIG9wZW5jbF9sYW5ndWEKKyAgICJvcGVuY2wiLAkJCS8qIExhbmd1YWdlIG5hbWUgKi8KKyAg IGxhbmd1YWdlX29wZW5jbCwKKyAgIHJhbmdlX2NoZWNrX29mZiwKKy0gIHR5cGVfY2hlY2tfb2Zm LAorICAgY2FzZV9zZW5zaXRpdmVfb24sCisgICBhcnJheV9yb3dfbWFqb3IsCisgICBtYWNyb19l eHBhbnNpb25fYywKK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL3AtbGFuZy5jCis9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09CistLS0gZ2RiLTcuNS4wLjIwMTIwOTI2Lm9yaWcvZ2RiL3AtbGFuZy5jCTIwMTItMDMt MDIgMjA6Mjk6MDEuMDAwMDAwMDAwICswMTAwCisrKysgZ2RiLTcuNS4wLjIwMTIwOTI2L2dkYi9w LWxhbmcuYwkyMDEyLTA5LTI3IDIyOjE0OjQxLjE3MDY5NTI3MCArMDIwMAorQEAgLTQyOSw3ICs0 MjksNiBAQCBjb25zdCBzdHJ1Y3QgbGFuZ3VhZ2VfZGVmbiBwYXNjYWxfbGFuZ3VhCisgICAicGFz Y2FsIiwJCQkvKiBMYW5ndWFnZSBuYW1lICovCisgICBsYW5ndWFnZV9wYXNjYWwsCisgICByYW5n ZV9jaGVja19vbiwKKy0gIHR5cGVfY2hlY2tfb24sCisgICBjYXNlX3NlbnNpdGl2ZV9vbiwKKyAg IGFycmF5X3Jvd19tYWpvciwKKyAgIG1hY3JvX2V4cGFuc2lvbl9ubywKK0luZGV4OiBnZGItNy41 LjAuMjAxMjA5MjYvZ2RiL2RvYy9nZGIudGV4aW5mbworPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUu MC4yMDEyMDkyNi5vcmlnL2dkYi9kb2MvZ2RiLnRleGluZm8JMjAxMi0wOS0yNyAyMjoxNDoyMy4w MDAwMDAwMDAgKzAyMDAKKysrKyBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL2RvYy9nZGIudGV4aW5m bwkyMDEyLTA5LTI3IDIyOjE0OjQxLjE4ODY5NTI3OSArMDIwMAorQEAgLTEyNjQ4LDI5ICsxMjY0 OCwxOCBAQCBMaXN0IGFsbCB0aGUgZmlsZW5hbWUgZXh0ZW5zaW9ucyBhbmQgdGhlCisgQG5vZGUg Q2hlY2tzCisgQHNlY3Rpb24gVHlwZSBhbmQgUmFuZ2UgQ2hlY2tpbmcKKyAKKy1AcXVvdGF0aW9u CistQGVtcGh7V2FybmluZzp9IEluIHRoaXMgcmVsZWFzZSwgdGhlIEB2YWx1ZXtHREJOfSBjb21t YW5kcyBmb3IgdHlwZSBhbmQgcmFuZ2UKKy1jaGVja2luZyBhcmUgaW5jbHVkZWQsIGJ1dCB0aGV5 IGRvIG5vdCB5ZXQgaGF2ZSBhbnkgZWZmZWN0LiAgVGhpcworLXNlY3Rpb24gZG9jdW1lbnRzIHRo ZSBpbnRlbmRlZCBmYWNpbGl0aWVzLgorLUBlbmQgcXVvdGF0aW9uCistQGMgRklYTUUgcmVtb3Zl IHdhcm5pbmcgd2hlbiB0eXBlL3JhbmdlIGNvZGUgYWRkZWQKKy0KKyBTb21lIGxhbmd1YWdlcyBh cmUgZGVzaWduZWQgdG8gZ3VhcmQgeW91IGFnYWluc3QgbWFraW5nIHNlZW1pbmdseSBjb21tb24K KyBlcnJvcnMgdGhyb3VnaCBhIHNlcmllcyBvZiBjb21waWxlLSBhbmQgcnVuLXRpbWUgY2hlY2tz LiAgVGhlc2UgaW5jbHVkZQorLWNoZWNraW5nIHRoZSB0eXBlIG9mIGFyZ3VtZW50cyB0byBmdW5j dGlvbnMgYW5kIG9wZXJhdG9ycywgYW5kIG1ha2luZworK2NoZWNraW5nIHRoZSB0eXBlIG9mIGFy Z3VtZW50cyB0byBmdW5jdGlvbnMgYW5kIG9wZXJhdG9ycyBhbmQgbWFraW5nCisgc3VyZSBtYXRo ZW1hdGljYWwgb3ZlcmZsb3dzIGFyZSBjYXVnaHQgYXQgcnVuIHRpbWUuICBDaGVja3Mgc3VjaCBh cworIHRoZXNlIGhlbHAgdG8gZW5zdXJlIGEgcHJvZ3JhbSdzIGNvcnJlY3RuZXNzIG9uY2UgaXQg aGFzIGJlZW4gY29tcGlsZWQKKy1ieSBlbGltaW5hdGluZyB0eXBlIG1pc21hdGNoZXMsIGFuZCBw cm92aWRpbmcgYWN0aXZlIGNoZWNrcyBmb3IgcmFuZ2UKKytieSBlbGltaW5hdGluZyB0eXBlIG1p c21hdGNoZXMgYW5kIHByb3ZpZGluZyBhY3RpdmUgY2hlY2tzIGZvciByYW5nZQorIGVycm9ycyB3 aGVuIHlvdXIgcHJvZ3JhbSBpcyBydW5uaW5nLgorIAorLUB2YWx1ZXtHREJOfSBjYW4gY2hlY2sg Zm9yIGNvbmRpdGlvbnMgbGlrZSB0aGUgYWJvdmUgaWYgeW91IHdpc2guCistQWx0aG91Z2ggQHZh bHVle0dEQk59IGRvZXMgbm90IGNoZWNrIHRoZSBzdGF0ZW1lbnRzIGluIHlvdXIgcHJvZ3JhbSwK Ky1pdCBjYW4gY2hlY2sgZXhwcmVzc2lvbnMgZW50ZXJlZCBkaXJlY3RseSBpbnRvIEB2YWx1ZXtH REJOfSBmb3IKKy1ldmFsdWF0aW9uIHZpYSB0aGUgQGNvZGV7cHJpbnR9IGNvbW1hbmQsIGZvciBl eGFtcGxlLiAgQXMgd2l0aCB0aGUKKy13b3JraW5nIGxhbmd1YWdlLCBAdmFsdWV7R0RCTn0gY2Fu IGFsc28gZGVjaWRlIHdoZXRoZXIgb3Igbm90IHRvIGNoZWNrCistYXV0b21hdGljYWxseSBiYXNl ZCBvbiB5b3VyIHByb2dyYW0ncyBzb3VyY2UgbGFuZ3VhZ2UuCistQHhyZWZ7U3VwcG9ydGVkIExh bmd1YWdlcywgLFN1cHBvcnRlZCBMYW5ndWFnZXN9LCBmb3IgdGhlIGRlZmF1bHQKKy1zZXR0aW5n cyBvZiBzdXBwb3J0ZWQgbGFuZ3VhZ2VzLgorK0J5IGRlZmF1bHQgQHZhbHVle0dEQk59IGNoZWNr cyBmb3IgdGhlc2UgZXJyb3JzIGFjY29yZGluZyB0byB0aGUKKytydWxlcyBvZiB0aGUgY3VycmVu dCBzb3VyY2UgbGFuZ3VhZ2UuICBBbHRob3VnaCBAdmFsdWV7R0RCTn0gZG9lcyBub3QgY2hlY2sK Kyt0aGUgc3RhdGVtZW50cyBpbiB5b3VyIHByb2dyYW0sIGl0IGNhbiBjaGVjayBleHByZXNzaW9u cyBlbnRlcmVkIGRpcmVjdGx5CisraW50byBAdmFsdWV7R0RCTn0gZm9yIGV2YWx1YXRpb24gdmlh IHRoZSBAY29kZXtwcmludH0gY29tbWFuZCwgZm9yIGV4YW1wbGUuCisgCisgQG1lbnUKKyAqIFR5 cGUgQ2hlY2tpbmc6OiAgICAgICAgICAgICAgIEFuIG92ZXJ2aWV3IG9mIHR5cGUgY2hlY2tpbmcK K0BAIC0xMjY4Miw2OSArMTI2NzEsNTEgQEAgc2V0dGluZ3Mgb2Ygc3VwcG9ydGVkIGxhbmd1YWdl cy4KKyBAbm9kZSBUeXBlIENoZWNraW5nCisgQHN1YnNlY3Rpb24gQW4gT3ZlcnZpZXcgb2YgVHlw ZSBDaGVja2luZworIAorLVNvbWUgbGFuZ3VhZ2VzLCBzdWNoIGFzIE1vZHVsYS0yLCBhcmUgc3Ry b25nbHkgdHlwZWQsIG1lYW5pbmcgdGhhdCB0aGUKKytTb21lIGxhbmd1YWdlcywgc3VjaCBhcyBD IGFuZCBDQHR7Kyt9LCBhcmUgc3Ryb25nbHkgdHlwZWQsIG1lYW5pbmcgdGhhdCB0aGUKKyBhcmd1 bWVudHMgdG8gb3BlcmF0b3JzIGFuZCBmdW5jdGlvbnMgaGF2ZSB0byBiZSBvZiB0aGUgY29ycmVj dCB0eXBlLAorIG90aGVyd2lzZSBhbiBlcnJvciBvY2N1cnMuICBUaGVzZSBjaGVja3MgcHJldmVu dCB0eXBlIG1pc21hdGNoCisgZXJyb3JzIGZyb20gZXZlciBjYXVzaW5nIGFueSBydW4tdGltZSBw cm9ibGVtcy4gIEZvciBleGFtcGxlLAorIAorIEBzbWFsbGV4YW1wbGUKKy0xICsgMiBAcmVzdWx0 e30gMworK2ludCBrbGFzczo6bXlfbWV0aG9kKGNoYXIgKmIpIEB7IHJldHVybiAgYiA/IDEgOiAy OyBAfQorKworKyhAdmFsdWV7R0RCUH0pIHByaW50IG9iai5teV9tZXRob2QgKDApCisrJDEgPSAy CisgQGV4ZGVudCBidXQKKy1AZXJyb3J7fSAxICsgMi4zCisrKEB2YWx1ZXtHREJQfSkgcHJpbnQg b2JqLm15X21ldGhvZCAoMHgxMjM0KQorK0Nhbm5vdCByZXNvbHZlIG1ldGhvZCBrbGFzczo6bXlf bWV0aG9kIHRvIGFueSBvdmVybG9hZGVkIGluc3RhbmNlCisgQGVuZCBzbWFsbGV4YW1wbGUKKyAK Ky1UaGUgc2Vjb25kIGV4YW1wbGUgZmFpbHMgYmVjYXVzZSB0aGUgQGNvZGV7Q0FSRElOQUx9IDEg aXMgbm90CistdHlwZS1jb21wYXRpYmxlIHdpdGggdGhlIEBjb2Rle1JFQUx9IDIuMy4KKytUaGUg c2Vjb25kIGV4YW1wbGUgZmFpbHMgYmVjYXVzZSBpbiBDQHR7Kyt9IHRoZSBpbnRlZ2VyIGNvbnN0 YW50CisrQHNhbXB7MHgxMjM0fSBpcyBub3QgdHlwZS1jb21wYXRpYmxlIHdpdGggdGhlIHBvaW50 ZXIgcGFyYW1ldGVyIHR5cGUuCisgCistRm9yIHRoZSBleHByZXNzaW9ucyB5b3UgdXNlIGluIEB2 YWx1ZXtHREJOfSBjb21tYW5kcywgeW91IGNhbiB0ZWxsIHRoZQorLUB2YWx1ZXtHREJOfSB0eXBl IGNoZWNrZXIgdG8gc2tpcCBjaGVja2luZzsKKytGb3IgdGhlIGV4cHJlc3Npb25zIHlvdSB1c2Ug aW4gQHZhbHVle0dEQk59IGNvbW1hbmRzLCB5b3UgY2FuIHRlbGwKKytAdmFsdWV7R0RCTn0gdG8g bm90IGVuZm9yY2Ugc3RyaWN0IHR5cGUgY2hlY2tpbmcgb3IKKyB0byB0cmVhdCBhbnkgbWlzbWF0 Y2hlcyBhcyBlcnJvcnMgYW5kIGFiYW5kb24gdGhlIGV4cHJlc3Npb247Cistb3IgdG8gb25seSBp c3N1ZSB3YXJuaW5ncyB3aGVuIHR5cGUgbWlzbWF0Y2hlcyBvY2N1ciwKKy1idXQgZXZhbHVhdGUg dGhlIGV4cHJlc3Npb24gYW55d2F5LiAgV2hlbiB5b3UgY2hvb3NlIHRoZSBsYXN0IG9mCistdGhl c2UsIEB2YWx1ZXtHREJOfSBldmFsdWF0ZXMgZXhwcmVzc2lvbnMgbGlrZSB0aGUgc2Vjb25kIGV4 YW1wbGUgYWJvdmUsIGJ1dAorLWFsc28gaXNzdWVzIGEgd2FybmluZy4KKytXaGVuIHR5cGUgY2hl Y2tpbmcgaXMgZGlzYWJsZWQsIEB2YWx1ZXtHREJOfSBzdWNjZXNzZnVsbHkgZXZhbHVhdGVzCisr ZXhwcmVzc2lvbnMgbGlrZSB0aGUgc2Vjb25kIGV4YW1wbGUgYWJvdmUuCisgCistRXZlbiBpZiB5 b3UgdHVybiB0eXBlIGNoZWNraW5nIG9mZiwgdGhlcmUgbWF5IGJlIG90aGVyIHJlYXNvbnMKKytF dmVuIGlmIHR5cGUgY2hlY2tpbmcgaXMgb2ZmLCB0aGVyZSBtYXkgYmUgb3RoZXIgcmVhc29ucwor IHJlbGF0ZWQgdG8gdHlwZSB0aGF0IHByZXZlbnQgQHZhbHVle0dEQk59IGZyb20gZXZhbHVhdGlu ZyBhbiBleHByZXNzaW9uLgorIEZvciBpbnN0YW5jZSwgQHZhbHVle0dEQk59IGRvZXMgbm90IGtu b3cgaG93IHRvIGFkZCBhbiBAY29kZXtpbnR9IGFuZAorIGEgQGNvZGV7c3RydWN0IGZvb30uICBU aGVzZSBwYXJ0aWN1bGFyIHR5cGUgZXJyb3JzIGhhdmUgbm90aGluZyB0byBkbworLXdpdGggdGhl IGxhbmd1YWdlIGluIHVzZSwgYW5kIHVzdWFsbHkgYXJpc2UgZnJvbSBleHByZXNzaW9ucywgc3Vj aCBhcworLXRoZSBvbmUgZGVzY3JpYmVkIGFib3ZlLCB3aGljaCBtYWtlIGxpdHRsZSBzZW5zZSB0 byBldmFsdWF0ZSBhbnl3YXkuCistCistRWFjaCBsYW5ndWFnZSBkZWZpbmVzIHRvIHdoYXQgZGVn cmVlIGl0IGlzIHN0cmljdCBhYm91dCB0eXBlLiAgRm9yCistaW5zdGFuY2UsIGJvdGggTW9kdWxh LTIgYW5kIEMgcmVxdWlyZSB0aGUgYXJndW1lbnRzIHRvIGFyaXRobWV0aWNhbAorLW9wZXJhdG9y cyB0byBiZSBudW1iZXJzLiAgSW4gQywgZW51bWVyYXRlZCB0eXBlcyBhbmQgcG9pbnRlcnMgY2Fu IGJlCistcmVwcmVzZW50ZWQgYXMgbnVtYmVycywgc28gdGhhdCB0aGV5IGFyZSB2YWxpZCBhcmd1 bWVudHMgdG8gbWF0aGVtYXRpY2FsCistb3BlcmF0b3JzLiAgQHhyZWZ7U3VwcG9ydGVkIExhbmd1 YWdlcywgLFN1cHBvcnRlZCBMYW5ndWFnZXN9LCBmb3IgZnVydGhlcgorLWRldGFpbHMgb24gc3Bl Y2lmaWMgbGFuZ3VhZ2VzLgorK3dpdGggdGhlIGxhbmd1YWdlIGluIHVzZSBhbmQgdXN1YWxseSBh cmlzZSBmcm9tIGV4cHJlc3Npb25zIHdoaWNoIG1ha2UKKytsaXR0bGUgc2Vuc2UgdG8gZXZhbHVh dGUgYW55d2F5LgorIAorLUB2YWx1ZXtHREJOfSBwcm92aWRlcyBzb21lIGFkZGl0aW9uYWwgY29t bWFuZHMgZm9yIGNvbnRyb2xsaW5nIHRoZSB0eXBlIGNoZWNrZXI6CisrQHZhbHVle0dEQk59IHBy b3ZpZGVzIHNvbWUgYWRkaXRpb25hbCBjb21tYW5kcyBmb3IgY29udHJvbGxpbmcgdHlwZSBjaGVj a2luZzoKKyAKKyBAa2luZGV4IHNldCBjaGVjayB0eXBlCisgQGtpbmRleCBzaG93IGNoZWNrIHR5 cGUKKyBAdGFibGUgQGNvZGUKKy1AaXRlbSBzZXQgY2hlY2sgdHlwZSBhdXRvCistU2V0IHR5cGUg Y2hlY2tpbmcgb24gb3Igb2ZmIGJhc2VkIG9uIHRoZSBjdXJyZW50IHdvcmtpbmcgbGFuZ3VhZ2Uu CistQHhyZWZ7U3VwcG9ydGVkIExhbmd1YWdlcywgLFN1cHBvcnRlZCBMYW5ndWFnZXN9LCBmb3Ig dGhlIGRlZmF1bHQgc2V0dGluZ3MgZm9yCistZWFjaCBsYW5ndWFnZS4KKy0KKyBAaXRlbSBzZXQg Y2hlY2sgdHlwZSBvbgorIEBpdGVteCBzZXQgY2hlY2sgdHlwZSBvZmYKKy1TZXQgdHlwZSBjaGVj a2luZyBvbiBvciBvZmYsIG92ZXJyaWRpbmcgdGhlIGRlZmF1bHQgc2V0dGluZyBmb3IgdGhlCist Y3VycmVudCB3b3JraW5nIGxhbmd1YWdlLiAgSXNzdWUgYSB3YXJuaW5nIGlmIHRoZSBzZXR0aW5n IGRvZXMgbm90CistbWF0Y2ggdGhlIGxhbmd1YWdlIGRlZmF1bHQuICBJZiBhbnkgdHlwZSBtaXNt YXRjaGVzIG9jY3VyIGluCisrU2V0IHN0cmljdCB0eXBlIGNoZWNraW5nIG9uIG9yIG9mZi4gIElm IGFueSB0eXBlIG1pc21hdGNoZXMgb2NjdXIgaW4KKyBldmFsdWF0aW5nIGFuIGV4cHJlc3Npb24g d2hpbGUgdHlwZSBjaGVja2luZyBpcyBvbiwgQHZhbHVle0dEQk59IHByaW50cyBhCisgbWVzc2Fn ZSBhbmQgYWJvcnRzIGV2YWx1YXRpb24gb2YgdGhlIGV4cHJlc3Npb24uCisgCistQGl0ZW0gc2V0 IGNoZWNrIHR5cGUgd2FybgorLUNhdXNlIHRoZSB0eXBlIGNoZWNrZXIgdG8gaXNzdWUgd2Fybmlu Z3MsIGJ1dCB0byBhbHdheXMgYXR0ZW1wdCB0bworLWV2YWx1YXRlIHRoZSBleHByZXNzaW9uLiAg RXZhbHVhdGluZyB0aGUgZXhwcmVzc2lvbiBtYXkgc3RpbGwKKy1iZSBpbXBvc3NpYmxlIGZvciBv dGhlciByZWFzb25zLiAgRm9yIGV4YW1wbGUsIEB2YWx1ZXtHREJOfSBjYW5ub3QgYWRkCistbnVt YmVycyBhbmQgc3RydWN0dXJlcy4KKy0KKy1AaXRlbSBzaG93IHR5cGUKKy1TaG93IHRoZSBjdXJy ZW50IHNldHRpbmcgb2YgdGhlIHR5cGUgY2hlY2tlciwgYW5kIHdoZXRoZXIgb3Igbm90IEB2YWx1 ZXtHREJOfQorLWlzIHNldHRpbmcgaXQgYXV0b21hdGljYWxseS4KKytAaXRlbSBzaG93IGNoZWNr IHR5cGUKKytTaG93IHRoZSBjdXJyZW50IHNldHRpbmcgb2YgdHlwZSBjaGVja2luZyBhbmQgd2hl dGhlciBAdmFsdWV7R0RCTn0KKytpcyBlbmZvcmNpbmcgc3RyaWN0IHR5cGUgY2hlY2tpbmcgcnVs ZXMuCisgQGVuZCB0YWJsZQorIAorIEBjaW5kZXggcmFuZ2UgY2hlY2tpbmcKK0BAIC0xMzE5NSw4 ICsxMzE2Niw4IEBAIHNwZWNpZmljYXRpb24uCisgCisgQGNpbmRleCBDIGFuZCBDQHR7Kyt9IGRl ZmF1bHRzCisgCistSWYgeW91IGFsbG93IEB2YWx1ZXtHREJOfSB0byBzZXQgdHlwZSBhbmQgcmFu Z2UgY2hlY2tpbmcgYXV0b21hdGljYWxseSwgdGhleQorLWJvdGggZGVmYXVsdCB0byBAY29kZXtv ZmZ9IHdoZW5ldmVyIHRoZSB3b3JraW5nIGxhbmd1YWdlIGNoYW5nZXMgdG8KKytJZiB5b3UgYWxs b3cgQHZhbHVle0dEQk59IHRvIHNldCByYW5nZSBjaGVja2luZyBhdXRvbWF0aWNhbGx5LCBpdAor K2RlZmF1bHRzIHRvIEBjb2Rle29mZn0gd2hlbmV2ZXIgdGhlIHdvcmtpbmcgbGFuZ3VhZ2UgY2hh bmdlcyB0bworIEMgb3IgQ0B0eysrfS4gIFRoaXMgaGFwcGVucyByZWdhcmRsZXNzIG9mIHdoZXRo ZXIgeW91IG9yIEB2YWx1ZXtHREJOfQorIHNlbGVjdHMgdGhlIHdvcmtpbmcgbGFuZ3VhZ2UuCisg CitAQCAtMTMyMDcsMzcgKzEzMTc4LDE1IEBAIHRoZXNlIGZpbGVzLCBpdCBzZXRzIHRoZSB3b3Jr aW5nIGxhbmd1YWcKKyBAeHJlZntBdXRvbWF0aWNhbGx5LCAsSGF2aW5nIEB2YWx1ZXtHREJOfSBJ bmZlciB0aGUgU291cmNlIExhbmd1YWdlfSwKKyBmb3IgZnVydGhlciBkZXRhaWxzLgorIAorLUBj IFR5cGUgY2hlY2tpbmcgaXMgKGEpIHByaW1hcmlseSBtb3RpdmF0ZWQgYnkgTW9kdWxhLTIsIGFu ZCAoYikKKy1AYyB1bmltcGxlbWVudGVkLiAgSWYgKGIpIGNoYW5nZXMsIGl0IG1pZ2h0IG1ha2Ug c2Vuc2UgdG8gbGV0IHRoaXMgbm9kZQorLUBjIGFwcGVhciBldmVuIGlmIE1vZC0yIGRvZXMgbm90 LCBidXQgbWVhbndoaWxlIGlnbm9yZSBpdC4gcm9sYW5kIDE2anVsOTMuCistCisgQG5vZGUgQyBD aGVja3MKKyBAc3Vic3Vic2VjdGlvbiBDIGFuZCBDQHR7Kyt9IFR5cGUgYW5kIFJhbmdlIENoZWNr cworIAorIEBjaW5kZXggQyBhbmQgQ0B0eysrfSBjaGVja3MKKyAKKy1CeSBkZWZhdWx0LCB3aGVu IEB2YWx1ZXtHREJOfSBwYXJzZXMgQyBvciBDQHR7Kyt9IGV4cHJlc3Npb25zLCB0eXBlIGNoZWNr aW5nCistaXMgbm90IHVzZWQuICBIb3dldmVyLCBpZiB5b3UgdHVybiB0eXBlIGNoZWNraW5nIG9u LCBAdmFsdWV7R0RCTn0KKy1jb25zaWRlcnMgdHdvIHZhcmlhYmxlcyB0eXBlIGVxdWl2YWxlbnQg aWY6CistCistQGl0ZW1pemUgQGJ1bGxldAorLUBpdGVtCistVGhlIHR3byB2YXJpYWJsZXMgYXJl IHN0cnVjdHVyZWQgYW5kIGhhdmUgdGhlIHNhbWUgc3RydWN0dXJlLCB1bmlvbiwgb3IKKy1lbnVt ZXJhdGVkIHRhZy4KKy0KKy1AaXRlbQorLVRoZSB0d28gdmFyaWFibGVzIGhhdmUgdGhlIHNhbWUg dHlwZSBuYW1lLCBvciB0eXBlcyB0aGF0IGhhdmUgYmVlbgorLWRlY2xhcmVkIGVxdWl2YWxlbnQg dGhyb3VnaCBAY29kZXt0eXBlZGVmfS4KKy0KKy1AaWdub3JlCistQGMgbGVhdmluZyB0aGlzIG91 dCBiZWNhdXNlIG5laXRoZXIgSiBHaWxtb3JlIG5vciBSIFBlc2NoIHVuZGVyc3RhbmQgaXQuCist QGMgRklYTUUtLWJlZXJzPworLUBpdGVtCistVGhlIHR3byBAY29kZXtzdHJ1Y3R9LCBAY29kZXt1 bmlvbn0sIG9yIEBjb2Rle2VudW19IHZhcmlhYmxlcyBhcmUKKy1kZWNsYXJlZCBpbiB0aGUgc2Ft ZSBkZWNsYXJhdGlvbi4gIChOb3RlOiB0aGlzIG1heSBub3QgYmUgdHJ1ZSBmb3IgYWxsIEMKKy1j b21waWxlcnMuKQorLUBlbmQgaWdub3JlCistQGVuZCBpdGVtaXplCisrQnkgZGVmYXVsdCwgd2hl biBAdmFsdWV7R0RCTn0gcGFyc2VzIEMgb3IgQ0B0eysrfSBleHByZXNzaW9ucywgc3RyaWN0IHR5 cGUKKytjaGVja2luZyBpcyB1c2VkLiAgSG93ZXZlciwgaWYgeW91IHR1cm4gdHlwZSBjaGVja2lu ZyBvZmYsIEB2YWx1ZXtHREJOfQorK3dpbGwgYWxsb3cgY2VydGFpbiBub24tc3RhbmRhcmQgY29u dmVyc2lvbnMsIHN1Y2ggYXMgcHJvbW90aW5nIGludGVnZXIKKytjb25zdGFudHMgdG8gcG9pbnRl cnMuCisgCisgUmFuZ2UgY2hlY2tpbmcsIGlmIHR1cm5lZCBvbiwgaXMgZG9uZSBvbiBtYXRoZW1h dGljYWwgb3BlcmF0aW9ucy4gIEFycmF5CisgaW5kaWNlcyBhcmUgbm90IGNoZWNrZWQsIHNpbmNl IHRoZXkgYXJlIG9mdGVuIHVzZWQgdG8gaW5kZXggYSBwb2ludGVyCitJbmRleDogZ2RiLTcuNS4w LjIwMTIwOTI2L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvZGVmYXVsdC5leHAKKz09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K Ky0tLSBnZGItNy41LjAuMjAxMjA5MjYub3JpZy9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2RlZmF1 bHQuZXhwCTIwMTItMDQtMjcgMjI6NTI6MDYuMDAwMDAwMDAwICswMjAwCisrKysgZ2RiLTcuNS4w LjIwMTIwOTI2L2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvZGVmYXVsdC5leHAJMjAxMi0wOS0yNyAy MjoxNDo0MS4zMTI2OTUzMzMgKzAyMDAKK0BAIC00OTUsMTIgKzQ5NSwxMyBAQCBnZGJfdGVzdCAi c2VjdGlvbiIgIk11c3Qgc3BlY2lmeSBzZWN0aW9uCisgZ2RiX3Rlc3QgInNldCBhbm5vdGF0ZSIg IkFyZ3VtZW50IHJlcXVpcmVkIC5pbnRlZ2VyIHRvIHNldCBpdCB0by4qIiAic2V0IGFubm90YXRl IgorICN0ZXN0IHNldCBhcmdzCisgZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgYXJncyIgInNldCBh cmdzIgorLSN0ZXN0IHNldCBjaGVjayAiYyIgYWJicmV2aWF0aW9uCistZ2RiX3Rlc3QgInNldCBj IiAiXCJzZXQgY2hlY2tcIiBtdXN0IGJlIGZvbGxvd2VkIGJ5IHRoZSBuYW1lIG9mIGEgY2hlY2sg c3ViY29tbWFuZC4oXFteXHJcblxdKlxbXHJcblxdKStMaXN0IG9mIHNldCBjaGVjayBzdWJjb21t YW5kczooXFteXHJcblxdKlxbXHJcblxdKStzZXQgY2hlY2sgcmFuZ2UgLS0gU2V0IHJhbmdlIGNo ZWNraW5nKFxbXlxyXG5cXSpcW1xyXG5cXSkrc2V0IGNoZWNrIHR5cGUgLS0gU2V0IHR5cGUgY2hl Y2tpbmcoXFteXHJcblxdKlxbXHJcblxdKStUeXBlIFwiaGVscCBzZXQgY2hlY2tcIiBmb2xsb3dl ZCBieSBzZXQgY2hlY2sgc3ViY29tbWFuZCBuYW1lIGZvciBmdWxsIGRvY3VtZW50YXRpb24uKFxb XlxyXG5cXSpcW1xyXG5cXSkrQ29tbWFuZCBuYW1lIGFiYnJldmlhdGlvbnMgYXJlIGFsbG93ZWQg aWYgdW5hbWJpZ3VvdXMuIiAic2V0IGNoZWNrIFwiY1wiIGFiYnJldmlhdGlvbiIKKy0jdGVzdCBz ZXQgY2hlY2sgImNoIiBhYmJyZXZpYXRpb24KKy1nZGJfdGVzdCAic2V0IGNoIiAiXCJzZXQgY2hl Y2tcIiBtdXN0IGJlIGZvbGxvd2VkIGJ5IHRoZSBuYW1lIG9mIGEgY2hlY2sgc3ViY29tbWFuZC4o XFteXHJcblxdKlxbXHJcblxdKStMaXN0IG9mIHNldCBjaGVjayBzdWJjb21tYW5kczooXFteXHJc blxdKlxbXHJcblxdKStzZXQgY2hlY2sgcmFuZ2UgLS0gU2V0IHJhbmdlIGNoZWNraW5nKFxbXlxy XG5cXSpcW1xyXG5cXSkrc2V0IGNoZWNrIHR5cGUgLS0gU2V0IHR5cGUgY2hlY2tpbmcoXFteXHJc blxdKlxbXHJcblxdKStUeXBlIFwiaGVscCBzZXQgY2hlY2tcIiBmb2xsb3dlZCBieSBzZXQgY2hl Y2sgc3ViY29tbWFuZCBuYW1lIGZvciBmdWxsIGRvY3VtZW50YXRpb24uKFxbXlxyXG5cXSpcW1xy XG5cXSkrQ29tbWFuZCBuYW1lIGFiYnJldmlhdGlvbnMgYXJlIGFsbG93ZWQgaWYgdW5hbWJpZ3Vv dXMuIiAic2V0IGNoZWNrIFwiY2hcIiBhYmJyZXZpYXRpb24iCistI3Rlc3Qgc2V0IGNoZWNrCist Z2RiX3Rlc3QgInNldCBjaGVjayIgIlwic2V0IGNoZWNrXCIgbXVzdCBiZSBmb2xsb3dlZCBieSB0 aGUgbmFtZSBvZiBhIGNoZWNrIHN1YmNvbW1hbmQuKFxbXlxyXG5cXSpcW1xyXG5cXSkrTGlzdCBv ZiBzZXQgY2hlY2sgc3ViY29tbWFuZHM6KFxbXlxyXG5cXSpcW1xyXG5cXSkrc2V0IGNoZWNrIHJh bmdlIC0tIFNldCByYW5nZSBjaGVja2luZyhcW15cclxuXF0qXFtcclxuXF0pK3NldCBjaGVjayB0 eXBlIC0tIFNldCB0eXBlIGNoZWNraW5nKFxbXlxyXG5cXSpcW1xyXG5cXSkrVHlwZSBcImhlbHAg c2V0IGNoZWNrXCIgZm9sbG93ZWQgYnkgc2V0IGNoZWNrIHN1YmNvbW1hbmQgbmFtZSBmb3IgZnVs bCBkb2N1bWVudGF0aW9uLihcW15cclxuXF0qXFtcclxuXF0pK0NvbW1hbmQgbmFtZSBhYmJyZXZp YXRpb25zIGFyZSBhbGxvd2VkIGlmIHVuYW1iaWd1b3VzLiIgInNldCBjaGVjayIKKysKKysjIFRl c3Qgc2V0IGNoZWNrIGFiYnJldmlhdGlvbnMKKytmb3JlYWNoIHggeyJjIiAiY2giICJjaGVjayJ9 IHsKKysgICAgZ2RiX3Rlc3QgInNldCAkeCIgIlwic2V0IGNoZWNrXCIgbXVzdCBiZSBmb2xsb3dl ZCBieSB0aGUgbmFtZSBvZiBhIGNoZWNrIHN1YmNvbW1hbmQuKFxbXlxyXG5cXSpcW1xyXG5cXSkr TGlzdCBvZiBzZXQgY2hlY2sgc3ViY29tbWFuZHM6KFxbXlxyXG5cXSpcW1xyXG5cXSkrc2V0IGNo ZWNrIHJhbmdlIC0tIFNldCByYW5nZSBjaGVja2luZyhcW15cclxuXF0qXFtcclxuXF0pK3NldCBj aGVjayB0eXBlIC0tIFNldCBzdHJpY3QgdHlwZSBjaGVja2luZyhcW15cclxuXF0qXFtcclxuXF0p K1R5cGUgXCJoZWxwIHNldCBjaGVja1wiIGZvbGxvd2VkIGJ5IHNldCBjaGVjayBzdWJjb21tYW5k IG5hbWUgZm9yIGZ1bGwgZG9jdW1lbnRhdGlvbi4oXFteXHJcblxdKlxbXHJcblxdKStDb21tYW5k IG5hbWUgYWJicmV2aWF0aW9ucyBhcmUgYWxsb3dlZCBpZiB1bmFtYmlndW91cy4iIFwKKysJInNl dCBjaGVjayBcIiR4XCIgYWJicmV2aWF0aW9uIgorK30KKysKKyAjdGVzdCBzZXQgY2hlY2sgcmFu Z2UKKyBnZGJfdGVzdCAic2V0IGNoZWNrIHJhbmdlIiAiLioiICJzZXQgY2hlY2sgcmFuZ2UiCisg I3Rlc3Qgc2V0IGNoZWNrIHR5cGUKK0BAIC01NzcsMTYgKzU3OCwxNyBAQCBnZGJfdGVzdCAic2hl bGwgZWNobyBIaSBkYWQhIiAiSGkgZGFkISIKKyBnZGJfdGVzdCAic2hvdyBhbm5vdGF0ZSIgIkFu bm90YXRpb25fbGV2ZWwgaXMgMC4iIAkgInNob3cgYW5ub3RhdGUiCisgI3Rlc3Qgc2hvdyBhcmdz CisgZ2RiX3Rlc3QgInNob3cgYXJncyIgIkFyZ3VtZW50IGxpc3QgdG8gZ2l2ZSBwcm9ncmFtIGJl aW5nIGRlYnVnZ2VkIHdoZW4gaXQgaXMgc3RhcnRlZCBpcyBcIlwiLiIgInNob3cgYXJncyIKKy0j dGVzdCBzaG93IGNoZWNrICJjIiBhYmJyZXZpYXRpb24KKy1nZGJfdGVzdCAic2hvdyBjIiAicmFu Z2U6ICAqUmFuZ2UgY2hlY2tpbmcgaXMgXCJhdXRvOyBjdXJyZW50bHkgb2ZmXCIuKFxbXlxyXG5c XSpcW1xyXG5cXSkrdHlwZTogICpUeXBlIGNoZWNraW5nIGlzIFwiYXV0bzsgY3VycmVudGx5IG9m ZlwiLioiICJzaG93IGNoZWNrIFwiY1wiIGFiYnJldmlhdGlvbiIKKy0jdGVzdCBzaG93IGNoZWNr ICJjaCIgYWJicmV2aWF0aW9uCistZ2RiX3Rlc3QgInNob3cgY2giICJyYW5nZTogKlJhbmdlIGNo ZWNraW5nIGlzIFwiYXV0bzsgY3VycmVudGx5IG9mZlwiLihcW15cclxuXF0qXFtcclxuXF0pK3R5 cGU6ICAqVHlwZSBjaGVja2luZyBpcyBcImF1dG87IGN1cnJlbnRseSBvZmZcIi4iICJzaG93IGNo ZWNrIFwiY2hcIiBhYmJyZXZpYXRpb24iCistI3Rlc3Qgc2hvdyBjaGVjaworLWdkYl90ZXN0ICJz aG93IGNoZWNrIiAicmFuZ2U6ICAqUmFuZ2UgY2hlY2tpbmcgaXMgXCJhdXRvOyBjdXJyZW50bHkg b2ZmXCIuKFxbXlxyXG5cXSpcW1xyXG5cXSkrdHlwZTogICpUeXBlIGNoZWNraW5nIGlzIFwiYXV0 bzsgY3VycmVudGx5IG9mZlwiLiIgInNob3cgY2hlY2siCisrCisrIyB0ZXN0IHNob3cgY2hlY2sg YWJicmV2aWF0aW9ucworK2ZvcmVhY2ggeCB7ImMiICJjaCIgImNoZWNrIn0geworKyAgICBnZGJf dGVzdCAic2hvdyAkeCIgInJhbmdlOiAgKlJhbmdlIGNoZWNraW5nIGlzIFwiYXV0bzsgY3VycmVu dGx5IG9mZlwiLihcW15cclxuXF0qXFtcclxuXF0pK3R5cGU6ICAqU3RyaWN0IHR5cGUgY2hlY2tp bmcgaXMgb25cLi4qIiBcCisrCSJzaG93IGNoZWNrIFwiJHhcIiBhYmJyZXZpYXRpb24iCisrfQor KworICN0ZXN0IHNob3cgY2hlY2sgcmFuZ2UKKyBnZGJfdGVzdCAic2hvdyBjaGVjayByYW5nZSIg IlJhbmdlIGNoZWNraW5nIGlzIFwiYXV0bzsgY3VycmVudGx5IG9mZlwiLiIgInNob3cgY2hlY2sg cmFuZ2UiCisgI3Rlc3Qgc2hvdyBjaGVjayB0eXBlCistZ2RiX3Rlc3QgInNob3cgY2hlY2sgdHlw ZSIgIlR5cGUgY2hlY2tpbmcgaXMgXCJhdXRvOyBjdXJyZW50bHkgb2ZmXCIuIiAic2hvdyBjaGVj ayB0eXBlIgorK2dkYl90ZXN0ICJzaG93IGNoZWNrIHR5cGUiICJTdHJpY3QgdHlwZSBjaGVja2lu ZyBpcyBvblwuIiAic2hvdyBjaGVjayB0eXBlIgorICN0ZXN0IHNob3cgY29tbWFuZHMKKyBnZGJf dGVzdCAic2hvdyBjb21tYW5kcyIgIi4qIiAic2hvdyBjb21tYW5kcyIKKyAjdGVzdCBzaG93IGNv bXBsYWludHMKK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFz ZS9oZWxwLmV4cAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUuMC4yMDEyMDkyNi5vcmlnL2dkYi90 ZXN0c3VpdGUvZ2RiLmJhc2UvaGVscC5leHAJMjAxMi0wNy0wMiAxOTo1MzoxOS4wMDAwMDAwMDAg KzAyMDAKKysrKyBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9oZWxw LmV4cAkyMDEyLTA5LTI3IDIyOjE0OjQxLjMxNTY5NTMzMyArMDIwMAorQEAgLTM3NiwyMiArMzc2 LDI2IEBAIGdkYl90ZXN0ICJoZWxwIHNlY3Rpb24iICJDaGFuZ2UgdGhlIGJhc2UKKyBnZGJfdGVz dCAiaGVscCBzZXQgYW5ub3RhdGUiICJTZXQgYW5ub3RhdGlvbl9sZXZlbFwuXFtcclxuXF0rMCA9 PSBub3JtYWw7ICAgICAxID09IGZ1bGxuYW1lIFxcKGZvciB1c2Ugd2hlbiBydW5uaW5nIHVuZGVy IGVtYWNzXFwpXFtcclxuXF0rMiA9PSBvdXRwdXQgYW5ub3RhdGVkIHN1aXRhYmx5IGZvciB1c2Ug YnkgcHJvZ3JhbXMgdGhhdCBjb250cm9sIEdEQlwuIiAiaGVscCBzZXQgYW5ub3RhdGUiCisgIyB0 ZXN0IGhlbHAgc2V0IGFyZ3MKKyBnZGJfdGVzdCAiaGVscCBzZXQgYXJncyIgIlNldCBhcmd1bWVu dCBsaXN0IHRvIGdpdmUgcHJvZ3JhbSBiZWluZyBkZWJ1Z2dlZCB3aGVuIGl0IGlzIHN0YXJ0ZWRc LlxbXHJcblxdK0ZvbGxvdyB0aGlzIGNvbW1hbmQgd2l0aCBhbnkgbnVtYmVyIG9mIGFyZ3MsIHRv IGJlIHBhc3NlZCB0byB0aGUgcHJvZ3JhbVwuIgorLSMgdGVzdCBoZWxwIHNldCBjaGVjayAiYyIg YWJicmV2aWF0aW9uCistdGVzdF9wcmVmaXhfY29tbWFuZF9oZWxwIHsic2V0IGMiICJzZXQgY2hl Y2sifSB7CistICAgICJTZXQgdGhlIHN0YXR1cyBvZiB0aGUgdHlwZS9yYW5nZSBjaGVja2VyXC5c W1xyXG5cXSsiCistfSAiaGVscCBzZXQgY2hlY2sgXCJjXCIgYWJicmV2aWF0aW9uIgorLSMgdGVz dCBoZWxwIHNldCBjaGVjayAiY2giIGFiYnJldmlhdGlvbgorLXRlc3RfcHJlZml4X2NvbW1hbmRf aGVscCB7InNldCBjaCIgInNldCBjaGVjayJ9IHsKKy0gICAgIlNldCB0aGUgc3RhdHVzIG9mIHRo ZSB0eXBlL3JhbmdlIGNoZWNrZXJcLlxbXHJcblxdKyIKKy19ICJoZWxwIHNldCBjaGVjayBcImNo XCIgYWJicmV2aWF0aW9uIgorLSMgdGVzdCBoZWxwIHNldCBjaGVjaworKworKyMgVGVzdCBoZWxw IHNldCBjaGVjayBhYmJyZXZpYXRpb25zCisrZm9yZWFjaCB4IHsiYyIgImNoIn0geworKyAgICB0 ZXN0X3ByZWZpeF9jb21tYW5kX2hlbHAgW2xpc3QgInNldCAkeCIgInNldCBjaGVjayJdIHsKKysJ IlNldCB0aGUgc3RhdHVzIG9mIHRoZSB0eXBlL3JhbmdlIGNoZWNrZXJcLlxbXHJcblxdKyIKKysg ICAgfSAiaGVscCBzZXQgY2hlY2sgXCIkeFwiIGFiYnJldmlhdGlvbiIKKyt9CisrCisrIyBUZXN0 IGhlbHAgc2V0IGNoZWNrCisgdGVzdF9wcmVmaXhfY29tbWFuZF9oZWxwIHsic2V0IGNoZWNrIn0g eworICAgICAiU2V0IHRoZSBzdGF0dXMgb2YgdGhlIHR5cGUvcmFuZ2UgY2hlY2tlclwuXFtcclxu XF0rIgorIH0KKysKKyAjIHRlc3QgaGVscCBzZXQgY2hlY2sgcmFuZ2UKKyBnZGJfdGVzdCAiaGVs cCBzZXQgY2hlY2sgcmFuZ2UiICJTZXQgcmFuZ2UgY2hlY2tpbmdcLiAgXFwob24vd2Fybi9vZmYv YXV0b1xcKSIgImhlbHAgc2V0IGNoZWNrIHJhbmdlIgorLSMgdGVzdCBoZWxwIHNldCBjaGVjayB0 eXBlCistZ2RiX3Rlc3QgImhlbHAgc2V0IGNoZWNrIHR5cGUiICJTZXQgdHlwZSBjaGVja2luZ1wu ICBcXChvbi93YXJuL29mZi9hdXRvXFwpLiIgImhlbHAgc2V0IGNoZWNrIHR5cGUiCisrCisrIyBU ZXN0IGhlbHAgc2V0IGNoZWNrIHR5cGUKKytnZGJfdGVzdCAiaGVscCBzZXQgY2hlY2sgdHlwZSIg IlNldCBzdHJpY3QgdHlwZSBjaGVja2luZ1wuIiBcCisrICAgICJoZWxwIHNldCBjaGVjayB0eXBl IgorKworICMgdGVzdCBoZWxwIHNldCBjb21wbGFpbnRzCisgZ2RiX3Rlc3QgImhlbHAgc2V0IGNv bXBsYWludHMiICJTZXQgbWF4IG51bWJlciBvZiBjb21wbGFpbnRzIGFib3V0IGluY29ycmVjdCBz eW1ib2xzXC4iICJoZWxwIHNldCBjb21wbGFpbnRzIgorICMgdGVzdCBoZWxwIHNldCBjb25maXJt CitAQCAtNDg3LDE4ICs0OTEsMjUgQEAgZ2RiX3Rlc3QgImhlbHAgc2hlbGwiICJFeGVjdXRlIHRo ZSByZXN0CisgZ2RiX3Rlc3QgImhlbHAgc2hvdyBhbm5vdGF0ZSIgIlNob3cgYW5ub3RhdGlvbl9s ZXZlbFwuXFtcclxuXF0rMCA9PSBub3JtYWw7ICAgICAxID09IGZ1bGxuYW1lIFxcKGZvciB1c2Ug d2hlbiBydW5uaW5nIHVuZGVyIGVtYWNzXFwpXFtcclxuXF0rMiA9PSBvdXRwdXQgYW5ub3RhdGVk IHN1aXRhYmx5IGZvciB1c2UgYnkgcHJvZ3JhbXMgdGhhdCBjb250cm9sIEdEQlwuIiAiaGVscCBz aG93IGFubm90YXRlIgorICMgdGVzdCBoZWxwIHNob3cgYXJncworIGdkYl90ZXN0ICJoZWxwIHNo b3cgYXJncyIgIlNob3cgYXJndW1lbnQgbGlzdCB0byBnaXZlIHByb2dyYW0gYmVpbmcgZGVidWdn ZWQgd2hlbiBpdCBpcyBzdGFydGVkXC5cW1xyXG5cXStGb2xsb3cgdGhpcyBjb21tYW5kIHdpdGgg YW55IG51bWJlciBvZiBhcmdzLCB0byBiZSBwYXNzZWQgdG8gdGhlIHByb2dyYW1cLiIKKy0jIHRl c3QgaGVscCBzaG93IGNoZWNrICJjIiBhYmJyZXZpYXRpb24KKy10ZXN0X3ByZWZpeF9jb21tYW5k X2hlbHAgeyJzaG93IGMiICJzaG93IGNoZWNrIn0geworLSAgICAiU2hvdyB0aGUgc3RhdHVzIG9m IHRoZSB0eXBlL3JhbmdlIGNoZWNrZXJcLlxbXHJcblxdKyIKKy19ICJoZWxwIHNob3cgY2hlY2sg XCJjXCIgYWJicmV2aWF0aW9uIgorKworKyMgVGVzdCBoZWxwIHNob3cgY2hlY2sgYWJicmV2aWF0 aW9ucworK2ZvcmVhY2ggeCB7ImMiICJjaGVjayJ9IHsKKysgICAgdGVzdF9wcmVmaXhfY29tbWFu ZF9oZWxwIFtsaXN0ICJzaG93ICR4IiAic2hvdyBjaGVjayJdIHsKKysJIlNob3cgdGhlIHN0YXR1 cyBvZiB0aGUgdHlwZS9yYW5nZSBjaGVja2VyXC5cW1xyXG5cXSsiCisrICAgIH0gImhlbHAgc2hv dyBjaGVjayBcIiR4XCIgYWJicmV2aWF0aW9uIgorK30KKysKKyAjIHRlc3QgaGVscCBzaG93IGNo ZWNrCisgdGVzdF9wcmVmaXhfY29tbWFuZF9oZWxwIHsic2hvdyBjaGVjayJ9IHsKKyAgICAgIlNo b3cgdGhlIHN0YXR1cyBvZiB0aGUgdHlwZS9yYW5nZSBjaGVja2VyXC5cW1xyXG5cXSsiCisgfQor ICMgdGVzdCBoZWxwIHNob3cgY2hlY2sgcmFuZ2UKKyBnZGJfdGVzdCAiaGVscCBzaG93IGNoZWNr IHJhbmdlIiAiU2hvdyByYW5nZSBjaGVja2luZ1wuICBcXChvbi93YXJuL29mZi9hdXRvXFwpIiAi aGVscCBzaG93IGNoZWNrIHJhbmdlIgorKworICMgdGVzdCBoZWxwIHNob3cgY2hlY2sgdHlwZQor LWdkYl90ZXN0ICJoZWxwIHNob3cgY2hlY2sgdHlwZSIgIlNob3cgdHlwZSBjaGVja2luZ1wuICBc XChvbi93YXJuL29mZi9hdXRvXFwpIiAiaGVscCBzaG93IGNoZWNrIHR5cGUiCisrZ2RiX3Rlc3Qg ImhlbHAgc2hvdyBjaGVjayB0eXBlIiAiU2hvdyBzdHJpY3QgdHlwZSBjaGVja2luZ1wuIiBcCisr ICAgICJoZWxwIHNob3cgY2hlY2sgdHlwZSIKKysKKyAjIHRlc3QgaGVscCBzaG93IGNvbW1hbmRz CisgZ2RiX3Rlc3QgImhlbHAgc2hvdyBjb21tYW5kcyIgIlNob3cgdGhlIGhpc3Rvcnkgb2YgY29t bWFuZHMgeW91IHR5cGVkXC5cW1xyXG5cXStZb3UgY2FuIHN1cHBseSBhIGNvbW1hbmQgbnVtYmVy IHRvIHN0YXJ0IHdpdGgsIG9yIGEgYFxbK1xdJyB0byBzdGFydCBhZnRlclxbXHJcblxdK3RoZSBw cmV2aW91cyBjb21tYW5kIG51bWJlciBzaG93blwuIiAiaGVscCBzaG93IGNvbW1hbmRzIgorICMg dGVzdCBoZWxwIHNob3cgY29tcGxhaW50cworSW5kZXg6IGdkYi03LjUuMC4yMDEyMDkyNi9nZGIv dGVzdHN1aXRlL2dkYi5iYXNlL3NldHNob3cuZXhwCis9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuNS4w LjIwMTIwOTI2Lm9yaWcvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9zZXRzaG93LmV4cAkyMDEyLTAz LTEzIDIyOjAyOjQwLjAwMDAwMDAwMCArMDEwMAorKysrIGdkYi03LjUuMC4yMDEyMDkyNi9nZGIv dGVzdHN1aXRlL2dkYi5iYXNlL3NldHNob3cuZXhwCTIwMTItMDktMjcgMjI6MTQ6NDEuMzIwNjk1 MzM2ICswMjAwCitAQCAtMTEwLDE5ICsxMTAsMjIgQEAgZ2RiX3Rlc3QgInNob3cgY2hlY2sgcmFu Z2UiICJSYW5nZSBjaGVjaworICN0ZXN0IHNldCBjaGVjayByYW5nZSBhdXRvCisgZ2RiX3Rlc3Rf bm9fb3V0cHV0ICJzZXQgY2hlY2sgcmFuZ2UgYXV0byIgInNldCBjaGVjayByYW5nZSBhdXRvIiAK KyAjdGVzdCBzaG93IGNoZWNrIHJhbmdlIGF1dG8KKy1nZGJfdGVzdCAic2hvdyBjaGVjayByYW5n ZSIgIlJhbmdlIGNoZWNraW5nIGlzIFwiYXV0bzsgY3VycmVudGx5IC4qIiAic2hvdyBjaGVjayBy YW5nZSAoYXV0bykiIAorLSN0ZXN0IHNldCBjaGVjayB0eXBlIG9uCistZ2RiX3Rlc3QgInNldCBj aGVjayB0eXBlIG9uIiAiLioiICJzZXQgY2hlY2sgdHlwZSBvbiIgCistI3Rlc3Qgc2hvdyBjaGVj ayB0eXBlIG9uCistZ2RiX3Rlc3QgInNob3cgY2hlY2sgdHlwZSIgIlR5cGUgY2hlY2tpbmcgaXMg XCJvblwiLi4qIiAic2hvdyBjaGVjayB0eXBlIChvbikiIAorLSN0ZXN0IHNldCBjaGVjayB0eXBl IG9mZiB3aXRoIHRyYWlsaW5nIHNwYWNlCistZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgY2hlY2sg dHlwZSBvZmYgIiAic2V0IGNoZWNrIHR5cGUgb2ZmIiAKKy0jdGVzdCBzaG93IGNoZWNrIHR5cGUg b2ZmCistZ2RiX3Rlc3QgInNob3cgY2hlY2sgdHlwZSIgIlR5cGUgY2hlY2tpbmcgaXMgXCJvZmZc Ii4uKiIgInNob3cgY2hlY2sgdHlwZSAob2ZmKSIgCistI3Rlc3Qgc2V0IGNoZWNrIHR5cGUgYXV0 bworLWdkYl90ZXN0X25vX291dHB1dCAic2V0IGNoZWNrIHR5cGUgYXV0byIgInNldCBjaGVjayB0 eXBlIGF1dG8iIAorLSN0ZXN0IHNob3cgY2hlY2sgdHlwZQorLWdkYl90ZXN0ICJzaG93IGNoZWNr IHR5cGUiICJUeXBlIGNoZWNraW5nIGlzIFwiYXV0bzsgY3VycmVudGx5IC4qIiAic2hvdyBjaGVj ayB0eXBlIChhdXRvKSIgCisrZ2RiX3Rlc3QgInNob3cgY2hlY2sgcmFuZ2UiICJSYW5nZSBjaGVj a2luZyBpcyBcImF1dG87IGN1cnJlbnRseSAuKiIgInNob3cgY2hlY2sgcmFuZ2UgKGF1dG8pIgor KworKyMgVGVzdCBzZXQgY2hlY2sgdHlwZSBvbgorK2dkYl90ZXN0ICJzZXQgY2hlY2sgdHlwZSBv biIgIi4qIiAic2V0IGNoZWNrIHR5cGUgb24iCisrCisrIyBUZXN0IHNob3cgY2hlY2sgdHlwZSBv bgorK2dkYl90ZXN0ICJzaG93IGNoZWNrIHR5cGUiICJTdHJpY3QgdHlwZSBjaGVja2luZyBpcyBv blwuLioiIFwKKysgICAgInNob3cgY2hlY2sgdHlwZSAob24pIgorKworKyMgVGVzdCBzZXQgY2hl Y2sgdHlwZSBvZmYgd2l0aCB0cmFpbGluZyBzcGFjZQorK2dkYl90ZXN0X25vX291dHB1dCAic2V0 IGNoZWNrIHR5cGUgb2ZmICIgInNldCBjaGVjayB0eXBlIG9mZiIKKysKKysjIFRlc3Qgc2hvdyBj aGVjayB0eXBlIG9mZgorK2dkYl90ZXN0ICJzaG93IGNoZWNrIHR5cGUiICJTdHJpY3QgdHlwZSBj aGVja2luZyBpcyBvZmZcLi4qIiBcCisrICAgICJzaG93IGNoZWNrIHR5cGUgKG9mZikiCisrCisg I3Rlc3Qgc2V0IGNvbXBsYWludHMgMTAwCisgZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJzZXQgY29tcGxh aW50cyAxMDAiICJzZXQgY29tcGxhaW50cyAxMDAiIAorICN0ZXN0IHNob3cgY29tcGxhaW50cyAx MDAKK0luZGV4OiBnZGItNy41LjAuMjAxMjA5MjYvZ2RiL3Rlc3RzdWl0ZS9nZGIuY3AvY29udmVy dHMuZXhwCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09CistLS0gZ2RiLTcuNS4wLjIwMTIwOTI2Lm9yaWcvZ2RiL3Rlc3Rz dWl0ZS9nZGIuY3AvY29udmVydHMuZXhwCTIwMTItMDctMTAgMTc6MTg6MTguMDAwMDAwMDAwICsw MjAwCisrKysgZ2RiLTcuNS4wLjIwMTIwOTI2L2dkYi90ZXN0c3VpdGUvZ2RiLmNwL2NvbnZlcnRz LmV4cAkyMDEyLTA5LTI3IDIyOjE0OjQxLjMyMTY5NTMzNyArMDIwMAorQEAgLTcwLDkgKzcwLDM3 IEBAIGdkYl90ZXN0X211bHRpcGxlICJwIGZvbzNfMSAoMCwgMCkiICR0IHsKKyAgICAgcGFzcyAk dAorICAgfQorIH0KKysKKyBnZGJfdGVzdCAicCBmb28zXzEgKDAsIDEpIiBcCisgICAgICJDYW5u b3QgcmVzb2x2ZSBmdW5jdGlvbiBmb28zXzEgdG8gYW55IG92ZXJsb2FkZWQgaW5zdGFuY2UiCisg Z2RiX3Rlc3QgInAgZm9vM18xICgwLCAoY29uc3QgY2hhcioqKSAxKSIgIiA9IDMxIgorIGdkYl90 ZXN0ICJwIGZvbzNfMiAoMCwgMCkiICI9IDMyIgorIGdkYl90ZXN0ICJwIGZvbzNfMiAoMCwgKGNo YXIgY29uc3QqKikgMCkiICIgPSAzMjAiCisgCisrIyBUZXN0IGZvciBzdHJpY3QgdHlwZSBjaGVj a2luZworK3NldCBlcnJvcl9zdHIgIkNhbm5vdCByZXNvbHZlIGZ1bmN0aW9uICVzIHRvIGFueSBv dmVybG9hZGVkIGluc3RhbmNlIgorK2dkYl90ZXN0ICJzaG93IGNoZWNrIHR5cGUiICJTdHJpY3Qg dHlwZSBjaGVja2luZyBpcyBvblwuIgorK2dkYl90ZXN0ICJwIGZvbzFfdHlwZV9jaGVjayAoMTIz KSIgW2Zvcm1hdCAkZXJyb3Jfc3RyICJmb28xX3R5cGVfY2hlY2siXQorK2dkYl90ZXN0ICJwIGZv bzJfdHlwZV9jaGVjayAoMCwgMSkiIFtmb3JtYXQgJGVycm9yX3N0ciAiZm9vMl90eXBlX2NoZWNr Il0KKytnZGJfdGVzdCAicCBmb28yX3R5cGVfY2hlY2sgKDEsIDApIiBbZm9ybWF0ICRlcnJvcl9z dHIgImZvbzJfdHlwZV9jaGVjayJdCisrZ2RiX3Rlc3QgInAgZm9vMl90eXBlX2NoZWNrICgxLCAx KSIgW2Zvcm1hdCAkZXJyb3Jfc3RyICJmb28yX3R5cGVfY2hlY2siXQorK2dkYl90ZXN0ICJwIGZv bzNfdHlwZV9jaGVjayAoMCwgMCwgMSkiIFtmb3JtYXQgJGVycm9yX3N0ciAiZm9vM190eXBlX2No ZWNrIl0KKytnZGJfdGVzdCAicCBmb28zX3R5cGVfY2hlY2sgKDAsIDEsIDApIiBbZm9ybWF0ICRl cnJvcl9zdHIgImZvbzNfdHlwZV9jaGVjayJdCisrZ2RiX3Rlc3QgInAgZm9vM190eXBlX2NoZWNr ICgxLCAwLCAwKSIgW2Zvcm1hdCAkZXJyb3Jfc3RyICJmb28zX3R5cGVfY2hlY2siXQorK2dkYl90 ZXN0ICJwIGZvbzNfdHlwZV9jaGVjayAoMCwgMSwgMSkiIFtmb3JtYXQgJGVycm9yX3N0ciAiZm9v M190eXBlX2NoZWNrIl0KKytnZGJfdGVzdCAicCBmb28zX3R5cGVfY2hlY2sgKDEsIDEsIDApIiBb Zm9ybWF0ICRlcnJvcl9zdHIgImZvbzNfdHlwZV9jaGVjayJdCisrZ2RiX3Rlc3QgInAgZm9vM190 eXBlX2NoZWNrICgxLCAxLCAxKSIgW2Zvcm1hdCAkZXJyb3Jfc3RyICJmb28zX3R5cGVfY2hlY2si XQorKworK2dkYl90ZXN0X25vX291dHB1dCAic2V0IGNoZWNrIHR5cGUgb2ZmIgorK2dkYl90ZXN0 ICJzaG93IGNoZWNrIHR5cGUiICJTdHJpY3QgdHlwZSBjaGVja2luZyBpcyBvZmZcLiIKKytnZGJf dGVzdCAicCBmb28xX3R5cGVfY2hlY2sgKDEyMykiICIgPSAxMDAwIgorK2dkYl90ZXN0ICJwIGZv bzJfdHlwZV9jaGVjayAoMCwgMSkiICIgPSAxMDAxIgorK2dkYl90ZXN0ICJwIGZvbzJfdHlwZV9j aGVjayAoMSwgMCkiICIgPSAxMDAxIgorK2dkYl90ZXN0ICJwIGZvbzJfdHlwZV9jaGVjayAoMSwg MSkiICIgPSAxMDAxIgorK2dkYl90ZXN0ICJwIGZvbzNfdHlwZV9jaGVjayAoMCwgMCwgMSkiICIg PSAxMDAyIgorK2dkYl90ZXN0ICJwIGZvbzNfdHlwZV9jaGVjayAoMCwgMSwgMCkiICIgPSAxMDAy IgorK2dkYl90ZXN0ICJwIGZvbzNfdHlwZV9jaGVjayAoMSwgMCwgMCkiICIgPSAxMDAyIgorK2dk Yl90ZXN0ICJwIGZvbzNfdHlwZV9jaGVjayAoMCwgMSwgMSkiICIgPSAxMDAyIgorK2dkYl90ZXN0 ICJwIGZvbzNfdHlwZV9jaGVjayAoMSwgMSwgMCkiICIgPSAxMDAyIgorK2dkYl90ZXN0ICJwIGZv bzNfdHlwZV9jaGVjayAoMSwgMSwgMSkiICIgPSAxMDAyIgorK2dkYl90ZXN0ICJwIGZvbzNfMiAo MSwxKSIgIiA9IDMyIgorSW5kZXg6IGdkYi03LjUuMC4yMDEyMDkyNi9nZGIvdGVzdHN1aXRlL2dk Yi5jcC9jb252ZXJ0cy5jYworPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGdkYi03LjUuMC4yMDEyMDkyNi5vcmln L2dkYi90ZXN0c3VpdGUvZ2RiLmNwL2NvbnZlcnRzLmNjCTIwMTEtMTAtMTQgMjI6MjI6NTAuMDAw MDAwMDAwICswMjAwCisrKysgZ2RiLTcuNS4wLjIwMTIwOTI2L2dkYi90ZXN0c3VpdGUvZ2RiLmNw L2NvbnZlcnRzLmNjCTIwMTItMDktMjcgMjI6MTQ6NDEuMzIyNjk1MzM3ICswMjAwCitAQCAtMjcs NiArMjcsMTAgQEAgaW50IGZvbzNfMSAoaW50IGEsIGNvbnN0IGNoYXIgKipiKSB7IHJldAorIGlu dCBmb28zXzIgKGludCBhLCBpbnQgYikgeyByZXR1cm4gMzI7IH0KKyBpbnQgZm9vM18yIChpbnQg YSwgY29uc3QgY2hhciAqKmIpIHsgcmV0dXJuIDMyMDsgfQorIAorK2ludCBmb28xX3R5cGVfY2hl Y2sgKGNoYXIgKmEpIHsgcmV0dXJuIDEwMDA7IH0KKytpbnQgZm9vMl90eXBlX2NoZWNrIChjaGFy ICphLCBjaGFyICpiKSB7IHJldHVybiAxMDAxOyB9CisraW50IGZvbzNfdHlwZV9jaGVjayAoY2hh ciAqYSwgY2hhciAqYiwgY2hhciAqYykgeyByZXR1cm4gMTAwMjsgfQorKworIGludCBtYWluKCkK KyB7CisgCitAQCAtNjIsNSArNjYsOSBAQCBpbnQgbWFpbigpCisgICBmb28zXzIgKDAsIHN0YXRp Y19jYXN0PGNoYXIgY29uc3QqKj4gKDApKTsKKyAgIGZvbzNfMiAoMCwgMCk7CisgCisrICBmb28x X3R5cGVfY2hlY2sgKGEpOworKyAgZm9vMl90eXBlX2NoZWNrIChhLCBhKTsKKysgIGZvbzNfdHlw ZV9jaGVjayAoYSwgYSwgYSk7CisrCisgICByZXR1cm4gMDsgICAgICAgICAgLy8gZW5kIG9mIG1h aW4KKyB9CgpkaWZmIC0tZ2l0IGEvZ2RiLnNwZWMgYi9nZGIuc3BlYwppbmRleCA3NWY5MjI4Li41 NDg4MzM3IDEwMDY0NAotLS0gYS9nZGIuc3BlYworKysgYi9nZGIuc3BlYwpAQCAtMzQsNyArMzQs NyBAQCBWZXJzaW9uOiA3LjUuMC4yMDEyMDkyNgogCiAjIFRoZSByZWxlYXNlIGFsd2F5cyBjb250 YWlucyBhIGxlYWRpbmcgcmVzZXJ2ZWQgbnVtYmVyLCBzdGFydCBpdCBhdCAxLgogIyBgdXBzdHJl YW0nIGlzIG5vdCBhIHBhcnQgb2YgYG5hbWUnIHRvIHN0YXkgZnVsbHkgcnBtIGRlcGVuZGVuY2ll cyBjb21wYXRpYmxlIGZvciB0aGUgdGVzdGluZy4KLVJlbGVhc2U6IDIzJXs/ZGlzdH0KK1JlbGVh c2U6IDI0JXs/ZGlzdH0KIAogTGljZW5zZTogR1BMdjMrIGFuZCBHUEx2Mysgd2l0aCBleGNlcHRp b25zIGFuZCBHUEx2MisgYW5kIEdQTHYyKyB3aXRoIGV4Y2VwdGlvbnMgYW5kIEdQTCsgYW5kIExH UEx2MisgYW5kIEJTRCBhbmQgUHVibGljIERvbWFpbgogR3JvdXA6IERldmVsb3BtZW50L0RlYnVn Z2VycwpAQCAtNTcxLDYgKzU3MSw5IEBAIFBhdGNoNzI1OiBnZGItc3RlcC1zeW1sZXNzLnBhdGNo CiAjIEZpeCBjcmFzaCBwcmludGluZyBjbGFzc2VzIChCWiA4NDkzNTcsIFRvbSBUcm9tZXkpLgog UGF0Y2g3MjY6IGdkYi1wcmludC1jbGFzcy5wYXRjaAogCisjIFBlcm1pdCBwYXNzaW5nIHBvaW50 ZXJzIGFzIGFkZHJlc3MgbnVtYmVyIGV2ZW4gZm9yIEMrKyBtZXRob2RzIChLZWl0aCBTZWl0eiku CitQYXRjaDcyODogZ2RiLWNoZWNrLXR5cGUucGF0Y2gKKwogJWlmIDAleyE/cmhlbDoxfSB8fCAw JXs/cmhlbH0gPiA2CiAjIFJMX1NUQVRFX0ZFRE9SQV9HREIgd291bGQgbm90IGJlIGZvdW5kIGZv cjoKICMgUGF0Y2g2NDI6IGdkYi1yZWFkbGluZTYyLWFzay1tb3JlLXJoLnBhdGNoCkBAIC04ODEs NiArODg0LDcgQEAgcm0gLWYgZ2RiL2p2LWV4cC5jIGdkYi9tMi1leHAuYyBnZGIvb2JqYy1leHAu YyBnZGIvcC1leHAuYyBnZGIvZ28tZXhwLmMKICVwYXRjaDcxNiAtcDEKICVwYXRjaDcyNSAtcDEK ICVwYXRjaDcyNiAtcDEKKyVwYXRjaDcyOCAtcDEKIAogJXBhdGNoMzkzIC1wMQogJWlmIDAleyE/ ZWw1OjF9IHx8IDAlez9zY2w6MX0KQEAgLTEzNzcsNiArMTM4MSw5IEBAIGZpCiAlZW5kaWYgIyAw JXshP2VsNToxfSB8fCAiJXtfdGFyZ2V0X2NwdX0iID09ICJub2FyY2giCiAKICVjaGFuZ2Vsb2cK KyogVGh1IFNlcCAyNyAyMDEyIEphbiBLcmF0b2NodmlsIDxqYW4ua3JhdG9jaHZpbEByZWRoYXQu Y29tPiAtIDcuNS0yNC5mYzE4CistIFBlcm1pdCBwYXNzaW5nIHBvaW50ZXJzIGFzIGFkZHJlc3Mg bnVtYmVyIGV2ZW4gZm9yIEMrKyBtZXRob2RzIChLZWl0aCBTZWl0eikuCisKICogVGh1IFNlcCAy NyAyMDEyIEphbiBLcmF0b2NodmlsIDxqYW4ua3JhdG9jaHZpbEByZWRoYXQuY29tPiAtIDcuNS0y My5mYzE4CiAtIEZpeCBjcmFzaCBwcmludGluZyBjbGFzc2VzIChCWiA4NDkzNTcsIFRvbSBUcm9t ZXkpLgogCg==