From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 8636 invoked from network); 8 Aug 2022 02:35:34 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 8 Aug 2022 02:35:34 -0000 Content-Type: multipart/mixed; boundary="===============7737598229144830336==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_go=3A_update_to_1=2E19=2C_add_tests?= To: ml@inbox.vuxu.org From: subnut Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 08 Aug 2022 04:35:33 +0200 List-Id: Message-ID: <20220808023533.b8hlK7oxLdEj8kuFgONuRipyXWzPxCWspXGwgad2qo4@z> GitHub notification mails are now in MIME to allow UTF8. --===============7737598229144830336== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc3VibnV0IGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9zdWJu dXQvdm9pZC1wYWNrYWdlcyBnbzEuMTkKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9wdWxsLzM4NTEwCgpnbzogdXBkYXRlIHRvIDEuMTksIGFkZCB0ZXN0cwpTdXBl cnNlZGVzICMzODQ3NA0KU3VwZXJzZWRlcyAjMzgzODUNCg0KPCEtLSBVbmNvbW1lbnQgcmVsZXZh bnQgc2VjdGlvbnMgYW5kIGRlbGV0ZSBvcHRpb25zIHdoaWNoIGFyZSBub3QgYXBwbGljYWJsZSAt LT4NCg0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRoZSBjaGFuZ2VzIGlu IHRoaXMgUFI6ICoqWUVTKioNCg0KPCEtLQ0KIyMjIyBOZXcgcGFja2FnZQ0KLSBUaGlzIG5ldyBw YWNrYWdlIGNvbmZvcm1zIHRvIHRoZSBbcXVhbGl0eSByZXF1aXJlbWVudHNdKGh0dHBzOi8vZ2l0 aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvTWFudWFsLm1kI3F1 YWxpdHktcmVxdWlyZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0tPg0KDQo8IS0tIE5vdGU6IElm IHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4gMiBob3VycywgcGxlYXNlIGFk ZCBjaSBza2lwIHRhZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5HLm1kI2NvbnRpbnVvdXMt aW50ZWdyYXRpb24NCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRpdmUgYnVpbGQgYW5kLCBpZiBz dXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCklnbm9yZSB0aGlzIHNlY3Rpb24g aWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCiMjIyMgTG9jYWwgYnVpbGQgdGVz dGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3IgbXkgbmF0aXZlIGFyY2hpdGVjdHVy ZSwgKHg4Nl82NC1nbGliYykNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIHRoZXNlIGFy Y2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1aWxkcyk6DQogIC0gaTY4Ni1n bGliYw0KPCEtLQ0KICAtIGFhcmNoNjQtbXVzbA0KICAtIGFybXY3bA0KICAtIGFybXY2bC1tdXNs DQotLT4NCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzM4NTEwLnBhdGNoIGlzIGF0dGFjaGVk --===============7737598229144830336== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-go1.19-38510.patch" RnJvbSBhMzZhYzM2ZmUzNzA1NmI3MGYyYzAxNjU5OGE2NTAxYTA2ZjY1NzI5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdWJoYWRpdHlhIE5hdGggPHNuMDMuZ2VuZXJhbEBnbWFpbC5j b20+CkRhdGU6IFNhdCwgNiBBdWcgMjAyMiAxNToxMjowMiArMDUzMApTdWJqZWN0OiBbUEFUQ0hd IGdvOiB1cGRhdGUgdG8gMS4xOSwgYWRkIHRlc3RzCgotLS0KIHNyY3BrZ3MvZ28vcGF0Y2hlcy9m aXgtMzJiaXQtdGVzdHMucGF0Y2ggfCAgMTMgKysKIHNyY3BrZ3MvZ28vcGF0Y2hlcy9maXgtbXVz bC10ZXN0cy5wYXRjaCAgfCAgMjkgKysrKysKIHNyY3BrZ3MvZ28vcGF0Y2hlcy9maXgtdGVzdHMu cGF0Y2ggICAgICAgfCAxNTAgKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ28vdGVt cGxhdGUgICAgICAgICAgICAgICAgICAgICAgfCAgMjkgKysrKy0KIDQgZmlsZXMgY2hhbmdlZCwg MjE4IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9nby9wYXRjaGVzL2ZpeC0zMmJpdC10ZXN0cy5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZ28vcGF0Y2hlcy9maXgtbXVzbC10ZXN0cy5wYXRjaAogY3JlYXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvZ28vcGF0Y2hlcy9maXgtdGVzdHMucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2dvL3BhdGNoZXMvZml4LTMyYml0LXRlc3RzLnBhdGNoIGIvc3JjcGtncy9nby9wYXRjaGVz L2ZpeC0zMmJpdC10ZXN0cy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAuLmY1ZDgwODNiMTlmMAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ28vcGF0Y2hl cy9maXgtMzJiaXQtdGVzdHMucGF0Y2gKQEAgLTAsMCArMSwxMyBAQAorRml4ZXMgZ28xLjE5IGVy cm9yIG9uIGk2ODYgLSAKKyAgICBydW50aW1lL2NnbygudGV4dCk6IHVua25vd24gc3ltYm9sIF9f c3RhY2tfY2hrX2ZhaWxfbG9jYWwgaW4gcGNyZWwKKworLS0tIGEvZ28vc3JjL2NtZC9nby9zY3Jp cHRfdGVzdC5nbworKysrIGIvZ28vc3JjL2NtZC9nby9zY3JpcHRfdGVzdC5nbworQEAgLTE0OCw2 ICsxNDgsNyBAQCB2YXIgZXh0cmFFbnZLZXlzID0gW11zdHJpbmd7CisgCSJHT19URVNUSU5HX0dP VE9PTFMiLCAvLyBmb3IgZ2NjZ28gdGVzdGluZworIAkiR0NDR08iLCAgICAgICAgICAgICAgLy8g Zm9yIGdjY2dvIHRlc3RpbmcKKyAJIkdDQ0dPVE9PTERJUiIsICAgICAgIC8vIGZvciBnY2NnbyB0 ZXN0aW5nCisrCSJDR09fQ0ZMQUdTIiwgICAgICAgICAvLyBmb3Igd29ya2luZyBhcm91bmQgZ28x LjE5ICJ1bmtub3duIHN5bWJvbCBfX3N0YWNrX2Noa19mYWlsX2xvY2FsIiBlcnJvciBvbiB4ODYK KyB9CisgCisgLy8gc2V0dXAgc2V0cyB1cCB0aGUgdGVzdCBleGVjdXRpb24gdGVtcG9yYXJ5IGRp cmVjdG9yeSBhbmQgZW52aXJvbm1lbnQuCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dvL3BhdGNoZXMv Zml4LW11c2wtdGVzdHMucGF0Y2ggYi9zcmNwa2dzL2dvL3BhdGNoZXMvZml4LW11c2wtdGVzdHMu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5mNzBjYjQ1Njg1 N2IKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dvL3BhdGNoZXMvZml4LW11c2wtdGVzdHMu cGF0Y2gKQEAgLTAsMCArMSwyOSBAQAorVGhlc2UgdGVzdHMgZmFpbCBvbiBtdXNsIGJlY2F1c2Ug L3Byb2MvLi4vc3RhdHVzIGRvZXNuJ3QgY29udGFpbiB0aGUgIkdyb3VwcyIKK2ZpZWxkLCBiZWNh dXNlIG11c2wgbGFja3MgdGhlIGdldGdyb3VwcygpIHN5c2NhbGwuCisKKy0tLSBhL2dvL3NyYy9z eXNjYWxsL3N5c2NhbGxfbGludXhfdGVzdC5nbworKysrIGIvZ28vc3JjL3N5c2NhbGwvc3lzY2Fs bF9saW51eF90ZXN0LmdvCitAQCAtNTMwLDEwICs1MzAsNiBAQCBmdW5jIFRlc3RTZXR1aWRFdGMo dCAqdGVzdGluZy5UKSB7CisgCQl7Y2FsbDogIlNldGdpZCgxKSIsIGZuOiBmdW5jKCkgZXJyb3Ig eyByZXR1cm4gc3lzY2FsbC5TZXRnaWQoMSkgfSwgZmlsdGVyOiAiR2lkOiIsIGV4cGVjdDogIlx0 MVx0MVx0MVx0MSJ9LAorIAkJe2NhbGw6ICJTZXRnaWQoMCkiLCBmbjogZnVuYygpIGVycm9yIHsg cmV0dXJuIHN5c2NhbGwuU2V0Z2lkKDApIH0sIGZpbHRlcjogIkdpZDoiLCBleHBlY3Q6ICJcdDBc dDBcdDBcdDAifSwKKyAKKy0JCXtjYWxsOiAiU2V0Z3JvdXBzKFtdaW50ezAsMSwyLDN9KSIsIGZu OiBmdW5jKCkgZXJyb3IgeyByZXR1cm4gc3lzY2FsbC5TZXRncm91cHMoW11pbnR7MCwgMSwgMiwg M30pIH0sIGZpbHRlcjogIkdyb3VwczoiLCBleHBlY3Q6ICJcdDAgMSAyIDMifSwKKy0JCXtjYWxs OiAiU2V0Z3JvdXBzKG5pbCkiLCBmbjogZnVuYygpIGVycm9yIHsgcmV0dXJuIHN5c2NhbGwuU2V0 Z3JvdXBzKG5pbCkgfSwgZmlsdGVyOiAiR3JvdXBzOiIsIGV4cGVjdDogIiJ9LAorLQkJe2NhbGw6 ICJTZXRncm91cHMoW11pbnR7MH0pIiwgZm46IGZ1bmMoKSBlcnJvciB7IHJldHVybiBzeXNjYWxs LlNldGdyb3VwcyhbXWludHswfSkgfSwgZmlsdGVyOiAiR3JvdXBzOiIsIGV4cGVjdDogIlx0MCJ9 LAorLQorIAkJe2NhbGw6ICJTZXRyZWdpZCgxMDEsMCkiLCBmbjogZnVuYygpIGVycm9yIHsgcmV0 dXJuIHN5c2NhbGwuU2V0cmVnaWQoMTAxLCAwKSB9LCBmaWx0ZXI6ICJHaWQ6IiwgZXhwZWN0OiAi XHQxMDFcdDBcdDBcdDAifSwKKyAJCXtjYWxsOiAiU2V0cmVnaWQoMCwxMDIpIiwgZm46IGZ1bmMo KSBlcnJvciB7IHJldHVybiBzeXNjYWxsLlNldHJlZ2lkKDAsIDEwMikgfSwgZmlsdGVyOiAiR2lk OiIsIGV4cGVjdDogIlx0MFx0MTAyXHQxMDJcdDEwMiJ9LAorIAkJe2NhbGw6ICJTZXRyZWdpZCgw LDApIiwgZm46IGZ1bmMoKSBlcnJvciB7IHJldHVybiBzeXNjYWxsLlNldHJlZ2lkKDAsIDApIH0s IGZpbHRlcjogIkdpZDoiLCBleHBlY3Q6ICJcdDBcdDBcdDBcdDAifSwKKy0tLSBhL2dvL21pc2Mv Y2dvL3Rlc3QvaXNzdWUxNDM1LmdvCisrKysgYi9nby9taXNjL2Nnby90ZXN0L2lzc3VlMTQzNS5n bworQEAgLTE2NSwxMCArMTY1LDYgQEAgZnVuYyB0ZXN0MTQzNSh0ICp0ZXN0aW5nLlQpIHsKKyAJ CXtjYWxsOiAiU2V0Z2lkKDEpIiwgZm46IGZ1bmMoKSBlcnJvciB7IHJldHVybiBzeXNjYWxsLlNl dGdpZCgxKSB9LCBmaWx0ZXI6ICJHaWQ6IiwgZXhwZWN0OiAiXHQxXHQxXHQxXHQxIn0sCisgCQl7 Y2FsbDogIlNldGdpZCgwKSIsIGZuOiBmdW5jKCkgZXJyb3IgeyByZXR1cm4gc3lzY2FsbC5TZXRn aWQoMCkgfSwgZmlsdGVyOiAiR2lkOiIsIGV4cGVjdDogIlx0MFx0MFx0MFx0MCJ9LAorIAorLQkJ e2NhbGw6ICJTZXRncm91cHMoW11pbnR7MCwxLDIsM30pIiwgZm46IGZ1bmMoKSBlcnJvciB7IHJl dHVybiBzeXNjYWxsLlNldGdyb3VwcyhbXWludHswLCAxLCAyLCAzfSkgfSwgZmlsdGVyOiAiR3Jv dXBzOiIsIGV4cGVjdDogIlx0MCAxIDIgMyJ9LAorLQkJe2NhbGw6ICJTZXRncm91cHMobmlsKSIs IGZuOiBmdW5jKCkgZXJyb3IgeyByZXR1cm4gc3lzY2FsbC5TZXRncm91cHMobmlsKSB9LCBmaWx0 ZXI6ICJHcm91cHM6IiwgZXhwZWN0OiAiIn0sCistCQl7Y2FsbDogIlNldGdyb3VwcyhbXWludHsw fSkiLCBmbjogZnVuYygpIGVycm9yIHsgcmV0dXJuIHN5c2NhbGwuU2V0Z3JvdXBzKFtdaW50ezB9 KSB9LCBmaWx0ZXI6ICJHcm91cHM6IiwgZXhwZWN0OiAiXHQwIn0sCistCisgCQl7Y2FsbDogIlNl dHJlZ2lkKDEwMSwwKSIsIGZuOiBmdW5jKCkgZXJyb3IgeyByZXR1cm4gc3lzY2FsbC5TZXRyZWdp ZCgxMDEsIDApIH0sIGZpbHRlcjogIkdpZDoiLCBleHBlY3Q6ICJcdDEwMVx0MFx0MFx0MCJ9LAor IAkJe2NhbGw6ICJTZXRyZWdpZCgwLDEwMikiLCBmbjogZnVuYygpIGVycm9yIHsgcmV0dXJuIHN5 c2NhbGwuU2V0cmVnaWQoMCwgMTAyKSB9LCBmaWx0ZXI6ICJHaWQ6IiwgZXhwZWN0OiAiXHQwXHQx MDJcdDEwMlx0MTAyIn0sCisgCQl7Y2FsbDogIlNldHJlZ2lkKDAsMCkiLCBmbjogZnVuYygpIGVy cm9yIHsgcmV0dXJuIHN5c2NhbGwuU2V0cmVnaWQoMCwgMCkgfSwgZmlsdGVyOiAiR2lkOiIsIGV4 cGVjdDogIlx0MFx0MFx0MFx0MCJ9LApkaWZmIC0tZ2l0IGEvc3JjcGtncy9nby9wYXRjaGVzL2Zp eC10ZXN0cy5wYXRjaCBiL3NyY3BrZ3MvZ28vcGF0Y2hlcy9maXgtdGVzdHMucGF0Y2gKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5jOTM0MTU2MTE0MTMKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2dvL3BhdGNoZXMvZml4LXRlc3RzLnBhdGNoCkBAIC0wLDAgKzEs MTUwIEBACitJbnNpZGUgdXNlciBuYW1lc3BhY2VzLCBpZiBHSUQgPT0gT1ZFUkZMT1dHSUQgKDY1 NTM0KSwgdGhlbiBjaG93biB3b24ndCB3b3JrLgoraHR0cHM6Ly9naXRodWIuY29tL2dvbGFuZy9n by9pc3N1ZXMvNDI1MjUKKworLS0tIGEvZ28vc3JjL29zL29zX3VuaXhfdGVzdC5nbworKysrIGIv Z28vc3JjL29zL29zX3VuaXhfdGVzdC5nbworQEAgLTM5LDE0NCArMzksNiBAQCBmdW5jIGNoZWNr VWlkR2lkKHQgKnRlc3RpbmcuVCwgcGF0aCBzdHJpbmcsIHVpZCwgZ2lkIGludCkgeworIAl9Cisg fQorIAorLWZ1bmMgVGVzdENob3duKHQgKnRlc3RpbmcuVCkgeworLQkvLyBVc2UgVGVtcERpcigp IHRvIG1ha2Ugc3VyZSB3ZSdyZSBvbiBhIGxvY2FsIGZpbGUgc3lzdGVtLAorLQkvLyBzbyB0aGF0 IHRoZSBncm91cCBpZHMgcmV0dXJuZWQgYnkgR2V0Z3JvdXBzIHdpbGwgYmUgYWxsb3dlZAorLQkv LyBvbiB0aGUgZmlsZS4gT24gTkZTLCB0aGUgR2V0Z3JvdXBzIGdyb3VwcyBhcmUKKy0JLy8gYmFz aWNhbGx5IHVzZWxlc3MuCistCWYgOj0gbmV3RmlsZSgiVGVzdENob3duIiwgdCkKKy0JZGVmZXIg UmVtb3ZlKGYuTmFtZSgpKQorLQlkZWZlciBmLkNsb3NlKCkKKy0JZGlyLCBlcnIgOj0gZi5TdGF0 KCkKKy0JaWYgZXJyICE9IG5pbCB7CistCQl0LkZhdGFsZigic3RhdCAlczogJXMiLCBmLk5hbWUo KSwgZXJyKQorLQl9CistCistCS8vIENhbid0IGNoYW5nZSB1aWQgdW5sZXNzIHJvb3QsIGJ1dCBj YW4gdHJ5CistCS8vIGNoYW5naW5nIHRoZSBncm91cCBpZC4gRmlyc3QgdHJ5IG91ciBjdXJyZW50 IGdyb3VwLgorLQlnaWQgOj0gR2V0Z2lkKCkKKy0JdC5Mb2coImdpZDoiLCBnaWQpCistCWlmIGVy ciA9IENob3duKGYuTmFtZSgpLCAtMSwgZ2lkKTsgZXJyICE9IG5pbCB7CistCQl0LkZhdGFsZigi Y2hvd24gJXMgLTEgJWQ6ICVzIiwgZi5OYW1lKCksIGdpZCwgZXJyKQorLQl9CistCXN5cyA6PSBk aXIuU3lzKCkuKCpzeXNjYWxsLlN0YXRfdCkKKy0JY2hlY2tVaWRHaWQodCwgZi5OYW1lKCksIGlu dChzeXMuVWlkKSwgZ2lkKQorLQorLQkvLyBUaGVuIHRyeSBhbGwgdGhlIGF1eGlsaWFyeSBncm91 cHMuCistCWdyb3VwcywgZXJyIDo9IEdldGdyb3VwcygpCistCWlmIGVyciAhPSBuaWwgeworLQkJ dC5GYXRhbGYoImdldGdyb3VwczogJXMiLCBlcnIpCistCX0KKy0JdC5Mb2coImdyb3VwczogIiwg Z3JvdXBzKQorLQlmb3IgXywgZyA6PSByYW5nZSBncm91cHMgeworLQkJaWYgZXJyID0gQ2hvd24o Zi5OYW1lKCksIC0xLCBnKTsgZXJyICE9IG5pbCB7CistCQkJdC5GYXRhbGYoImNob3duICVzIC0x ICVkOiAlcyIsIGYuTmFtZSgpLCBnLCBlcnIpCistCQl9CistCQljaGVja1VpZEdpZCh0LCBmLk5h bWUoKSwgaW50KHN5cy5VaWQpLCBnKQorLQorLQkJLy8gY2hhbmdlIGJhY2sgdG8gZ2lkIHRvIHRl c3QgZmQuQ2hvd24KKy0JCWlmIGVyciA9IGYuQ2hvd24oLTEsIGdpZCk7IGVyciAhPSBuaWwgewor LQkJCXQuRmF0YWxmKCJmY2hvd24gJXMgLTEgJWQ6ICVzIiwgZi5OYW1lKCksIGdpZCwgZXJyKQor LQkJfQorLQkJY2hlY2tVaWRHaWQodCwgZi5OYW1lKCksIGludChzeXMuVWlkKSwgZ2lkKQorLQl9 CistfQorLQorLWZ1bmMgVGVzdEZpbGVDaG93bih0ICp0ZXN0aW5nLlQpIHsKKy0JLy8gVXNlIFRl bXBEaXIoKSB0byBtYWtlIHN1cmUgd2UncmUgb24gYSBsb2NhbCBmaWxlIHN5c3RlbSwKKy0JLy8g c28gdGhhdCB0aGUgZ3JvdXAgaWRzIHJldHVybmVkIGJ5IEdldGdyb3VwcyB3aWxsIGJlIGFsbG93 ZWQKKy0JLy8gb24gdGhlIGZpbGUuIE9uIE5GUywgdGhlIEdldGdyb3VwcyBncm91cHMgYXJlCist CS8vIGJhc2ljYWxseSB1c2VsZXNzLgorLQlmIDo9IG5ld0ZpbGUoIlRlc3RGaWxlQ2hvd24iLCB0 KQorLQlkZWZlciBSZW1vdmUoZi5OYW1lKCkpCistCWRlZmVyIGYuQ2xvc2UoKQorLQlkaXIsIGVy ciA6PSBmLlN0YXQoKQorLQlpZiBlcnIgIT0gbmlsIHsKKy0JCXQuRmF0YWxmKCJzdGF0ICVzOiAl cyIsIGYuTmFtZSgpLCBlcnIpCistCX0KKy0KKy0JLy8gQ2FuJ3QgY2hhbmdlIHVpZCB1bmxlc3Mg cm9vdCwgYnV0IGNhbiB0cnkKKy0JLy8gY2hhbmdpbmcgdGhlIGdyb3VwIGlkLiBGaXJzdCB0cnkg b3VyIGN1cnJlbnQgZ3JvdXAuCistCWdpZCA6PSBHZXRnaWQoKQorLQl0LkxvZygiZ2lkOiIsIGdp ZCkKKy0JaWYgZXJyID0gZi5DaG93bigtMSwgZ2lkKTsgZXJyICE9IG5pbCB7CistCQl0LkZhdGFs ZigiZmNob3duICVzIC0xICVkOiAlcyIsIGYuTmFtZSgpLCBnaWQsIGVycikKKy0JfQorLQlzeXMg Oj0gZGlyLlN5cygpLigqc3lzY2FsbC5TdGF0X3QpCistCWNoZWNrVWlkR2lkKHQsIGYuTmFtZSgp LCBpbnQoc3lzLlVpZCksIGdpZCkKKy0KKy0JLy8gVGhlbiB0cnkgYWxsIHRoZSBhdXhpbGlhcnkg Z3JvdXBzLgorLQlncm91cHMsIGVyciA6PSBHZXRncm91cHMoKQorLQlpZiBlcnIgIT0gbmlsIHsK Ky0JCXQuRmF0YWxmKCJnZXRncm91cHM6ICVzIiwgZXJyKQorLQl9CistCXQuTG9nKCJncm91cHM6 ICIsIGdyb3VwcykKKy0JZm9yIF8sIGcgOj0gcmFuZ2UgZ3JvdXBzIHsKKy0JCWlmIGVyciA9IGYu Q2hvd24oLTEsIGcpOyBlcnIgIT0gbmlsIHsKKy0JCQl0LkZhdGFsZigiZmNob3duICVzIC0xICVk OiAlcyIsIGYuTmFtZSgpLCBnLCBlcnIpCistCQl9CistCQljaGVja1VpZEdpZCh0LCBmLk5hbWUo KSwgaW50KHN5cy5VaWQpLCBnKQorLQorLQkJLy8gY2hhbmdlIGJhY2sgdG8gZ2lkIHRvIHRlc3Qg ZmQuQ2hvd24KKy0JCWlmIGVyciA9IGYuQ2hvd24oLTEsIGdpZCk7IGVyciAhPSBuaWwgeworLQkJ CXQuRmF0YWxmKCJmY2hvd24gJXMgLTEgJWQ6ICVzIiwgZi5OYW1lKCksIGdpZCwgZXJyKQorLQkJ fQorLQkJY2hlY2tVaWRHaWQodCwgZi5OYW1lKCksIGludChzeXMuVWlkKSwgZ2lkKQorLQl9Cist fQorLQorLWZ1bmMgVGVzdExjaG93bih0ICp0ZXN0aW5nLlQpIHsKKy0JLy8gVXNlIFRlbXBEaXIo KSB0byBtYWtlIHN1cmUgd2UncmUgb24gYSBsb2NhbCBmaWxlIHN5c3RlbSwKKy0JLy8gc28gdGhh dCB0aGUgZ3JvdXAgaWRzIHJldHVybmVkIGJ5IEdldGdyb3VwcyB3aWxsIGJlIGFsbG93ZWQKKy0J Ly8gb24gdGhlIGZpbGUuIE9uIE5GUywgdGhlIEdldGdyb3VwcyBncm91cHMgYXJlCistCS8vIGJh c2ljYWxseSB1c2VsZXNzLgorLQlmIDo9IG5ld0ZpbGUoIlRlc3RMY2hvd24iLCB0KQorLQlkZWZl ciBSZW1vdmUoZi5OYW1lKCkpCistCWRlZmVyIGYuQ2xvc2UoKQorLQlkaXIsIGVyciA6PSBmLlN0 YXQoKQorLQlpZiBlcnIgIT0gbmlsIHsKKy0JCXQuRmF0YWxmKCJzdGF0ICVzOiAlcyIsIGYuTmFt ZSgpLCBlcnIpCistCX0KKy0KKy0JbGlua25hbWUgOj0gZi5OYW1lKCkgKyAiMiIKKy0JaWYgZXJy IDo9IFN5bWxpbmsoZi5OYW1lKCksIGxpbmtuYW1lKTsgZXJyICE9IG5pbCB7CistCQlpZiBydW50 aW1lLkdPT1MgPT0gImFuZHJvaWQiICYmIElzUGVybWlzc2lvbihlcnIpIHsKKy0JCQl0LlNraXAo InNraXBwaW5nIHRlc3Qgb24gQW5kcm9pZDsgcGVybWlzc2lvbiBlcnJvciBjcmVhdGluZyBzeW1s aW5rIikKKy0JCX0KKy0JCXQuRmF0YWxmKCJsaW5rICVzIC0+ICVzOiAldiIsIGYuTmFtZSgpLCBs aW5rbmFtZSwgZXJyKQorLQl9CistCWRlZmVyIFJlbW92ZShsaW5rbmFtZSkKKy0KKy0JLy8gQ2Fu J3QgY2hhbmdlIHVpZCB1bmxlc3Mgcm9vdCwgYnV0IGNhbiB0cnkKKy0JLy8gY2hhbmdpbmcgdGhl IGdyb3VwIGlkLiBGaXJzdCB0cnkgb3VyIGN1cnJlbnQgZ3JvdXAuCistCWdpZCA6PSBHZXRnaWQo KQorLQl0LkxvZygiZ2lkOiIsIGdpZCkKKy0JaWYgZXJyID0gTGNob3duKGxpbmtuYW1lLCAtMSwg Z2lkKTsgZXJyICE9IG5pbCB7CistCQlpZiBlcnIsIG9rIDo9IGVyci4oKlBhdGhFcnJvcik7IG9r ICYmIGVyci5FcnIgPT0gc3lzY2FsbC5FTk9TWVMgeworLQkJCXQuU2tpcCgibGNob3duIGlzIHVu YXZhaWxhYmxlIikKKy0JCX0KKy0JCXQuRmF0YWxmKCJsY2hvd24gJXMgLTEgJWQ6ICVzIiwgbGlu a25hbWUsIGdpZCwgZXJyKQorLQl9CistCXN5cyA6PSBkaXIuU3lzKCkuKCpzeXNjYWxsLlN0YXRf dCkKKy0JY2hlY2tVaWRHaWQodCwgbGlua25hbWUsIGludChzeXMuVWlkKSwgZ2lkKQorLQorLQkv LyBUaGVuIHRyeSBhbGwgdGhlIGF1eGlsaWFyeSBncm91cHMuCistCWdyb3VwcywgZXJyIDo9IEdl dGdyb3VwcygpCistCWlmIGVyciAhPSBuaWwgeworLQkJdC5GYXRhbGYoImdldGdyb3VwczogJXMi LCBlcnIpCistCX0KKy0JdC5Mb2coImdyb3VwczogIiwgZ3JvdXBzKQorLQlmb3IgXywgZyA6PSBy YW5nZSBncm91cHMgeworLQkJaWYgZXJyID0gTGNob3duKGxpbmtuYW1lLCAtMSwgZyk7IGVyciAh PSBuaWwgeworLQkJCXQuRmF0YWxmKCJsY2hvd24gJXMgLTEgJWQ6ICVzIiwgbGlua25hbWUsIGcs IGVycikKKy0JCX0KKy0JCWNoZWNrVWlkR2lkKHQsIGxpbmtuYW1lLCBpbnQoc3lzLlVpZCksIGcp CistCistCQkvLyBDaGVjayB0aGF0IGxpbmsgdGFyZ2V0J3MgZ2lkIGlzIHVuY2hhbmdlZC4KKy0J CWNoZWNrVWlkR2lkKHQsIGYuTmFtZSgpLCBpbnQoc3lzLlVpZCksIGludChzeXMuR2lkKSkKKy0J fQorLX0KKy0KKyAvLyBJc3N1ZSAxNjkxOTogUmVhZGRpciBtdXN0IHJldHVybiBhIG5vbi1lbXB0 eSBzbGljZSBvciBhbiBlcnJvci4KKyBmdW5jIFRlc3RSZWFkZGlyUmVtb3ZlUmFjZSh0ICp0ZXN0 aW5nLlQpIHsKKyAJb2xkU3RhdCA6PSAqTHN0YXRQCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dvL3Rl bXBsYXRlIGIvc3JjcGtncy9nby90ZW1wbGF0ZQppbmRleCAyZGI2NGI3OTVlZDguLmE1ZmNlMGYx NTNiNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nby90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dvL3Rl bXBsYXRlCkBAIC0xLDE3ICsxLDE4IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbycKIHBrZ25h bWU9Z28KLXZlcnNpb249MS4xOC4zCit2ZXJzaW9uPTEuMTkKIHJldmlzaW9uPTEKIGNyZWF0ZV93 cmtzcmM9eWVzCiBidWlsZF93cmtzcmM9Z28KIGhvc3RtYWtlZGVwZW5kcz0iZ28xLjEyLWJvb3Rz dHJhcCIKK2NoZWNrZGVwZW5kcz0iaWFuYS1ldGMgY2xhbmcgZ2NjLWZvcnRyYW4iCiBzaG9ydF9k ZXNjPSJHbyBQcm9ncmFtbWluZyBMYW5ndWFnZSIKIG1haW50YWluZXI9Ik1pY2hhZWwgQWxkcmlk Z2UgPG1hbGRyaWRnZUB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkJTRC0zLUNsYXVzZSIKIGhv bWVwYWdlPSJodHRwczovL2dvLmRldi8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vZ28uZGV2L2RvYy9k ZXZlbC9yZWxlYXNlLmh0bWwiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ28uZGV2L2RsL2dvJHt2ZXJz aW9ufS5zcmMudGFyLmd6IgotY2hlY2tzdW09MDAxMjM4NmRkY2JiNWYzMzUwZTQwN2M2Nzk5MjM4 MTFkYmQyODNmY2RjNDIxNzI0OTMxNjE0YTg0MmVjYmMyZAorY2hlY2tzdW09OTQxOWNjNzBkYzVh MjUyM2YyOWE3NzA1M2NhZmZmNjU4ZWQyMWVmMzU2MWQ5YjZiMDIwMjgwZWJjZWFiMjhiOQogbm9z dHJpcD15ZXMKIG5vdmVyaWZ5cmRlcHM9eWVzCiAKQEAgLTMxLDExICszMiwyNCBAQCBpZiBbICIk Q1JPU1NfQlVJTEQiIF07IHRoZW4KIAlmaQogZmkKIAorIyBXb3JrYXJvdW5kIGZvciBnby0xLjE5 IGNvbXBpbGF0aW9uIGVycm9yIG9uIGk2ODYKKyMgICBydW50aW1lL2NnbygudGV4dCk6IHVua25v d24gc3ltYm9sIF9fc3RhY2tfY2hrX2ZhaWxfbG9jYWwgaW4gcGNyZWwKK2lmIFsgIiRYQlBTX01B Q0hJTkUiID0gaTY4NiBdOyB0aGVuCisJZXhwb3J0IENHT19DRkxBR1M9Ii1mbm8tc3RhY2stcHJv dGVjdG9yIgorZmkKKworcG9zdF9leHRyYWN0KCkgeworCWlmIFsgIiQoZGYgLiAtLW91dHB1dD1m c3R5cGUgfCB0YWlsIC0xKSIgPSB6ZnMgXTsgdGhlbgorCQkjIGh0dHBzOi8vZ2l0aHViLmNvbS9n b2xhbmcvZ28vaXNzdWVzLzM5OTA1CisJCXJtIC12IGdvL3NyYy9jbWQvbGluay9pbnRlcm5hbC9s ZC9mYWxsb2NhdGVfdGVzdC5nbworCWZpCit9CisKIGRvX2J1aWxkKCkgewogCXVuc2V0IEdDQyBD QyBDWFggTEQgQ0ZMQUdTCiAJIyBGSVhNRTogd29yayBhcm91bmQgbGVha2luZyBnbyBidWlsZC1z dHlsZSB2YXJzIHdoZW4gYnVpbHQgYXMgYQogCSMgZGVwZW5kZW5jeQotCXVuc2V0IENHT19DWFhG TEFHUyBDR09fQ0ZMQUdTIENHT19FTkFCTEVECisJdW5zZXQgQ0dPX0NYWEZMQUdTIENHT19FTkFC TEVEICMgQ0dPX0NGTEFHUwogCiAJZXhwb3J0IEdPUk9PVF9CT09UU1RSQVA9Ii91c3IvbGliL2dv MS4xMiIKIAlleHBvcnQgR09ST09UPSRQV0QKQEAgLTQ3LDYgKzYxLDE1IEBAIGRvX2J1aWxkKCkg ewogCWJhc2ggbWFrZS5iYXNoIC12CiB9CiAKK2RvX2NoZWNrKCkgeworCWlmIFsgIiRYQlBTX0xJ QkMiID0gbXVzbCBdOyB0aGVuCisJCSMgaHR0cHM6Ly9naXRodWIuY29tL2dvbGFuZy9nby9pc3N1 ZXMvMzk4NTcKKwkJLi9iaW4vZ28gdG9vbCBkaXN0IHRlc3QgLXYgLXJ1biAiIV5jZ29fdGVzdCQi CisJZWxzZQorCQkuL2Jpbi9nbyB0b29sIGRpc3QgdGVzdCAtdgorCWZpCit9CisKIGRvX2luc3Rh bGwoKSB7CiAJbG9jYWwgYmluZGlyCiAK --===============7737598229144830336==--