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: Elliott Sales de Andrade To: git-commits@fedoraproject.org Subject: [rpms/xeus] epel10: Backport fixes to messages to match schemas Date: Sat, 11 Jul 2026 22:28:04 GMT Message-ID: <178380888428.1.4996355678603457155.rpms-xeus-bf8ade803c5a@fedoraproject.org> List-ID: X-Git-Repo: rpms/xeus X-Git-Branch: epel10 X-Git-Rev: bf8ade803c5a8670fdd7817a009bc3071b0d170a QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMveGV1cwpCcmFuY2gg OiBlcGVsMTAKQ29tbWl0IDogYmY4YWRlODAzYzVhODY3MGZkZDc4MTdhMDA5YmMzMDcxYjBkMTcw YQpBdXRob3IgOiBFbGxpb3R0IFNhbGVzIGRlIEFuZHJhZGUgPHF1YW50dW0uYW5hbHlzdEBnbWFp bC5jb20+CkRhdGUgICA6IDIwMjItMTAtMTdUMDU6MzY6MjItMDQ6MDAKU3RhdHMgIDogKzEzMDgv LTEgaW4gNCBmaWxlKHMpClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3Jw bXMveGV1cy9jL2JmOGFkZTgwM2M1YTg2NzBmZGQ3ODE3YTAwOWJjMzA3MWIwZDE3MGE/YnJhbmNo PWVwZWwxMAoKTG9nOgpCYWNrcG9ydCBmaXhlcyB0byBtZXNzYWdlcyB0byBtYXRjaCBzY2hlbWFz CgotLS0KZGlmZiAtLWdpdCBhLzAwMDEtc3dpdGNoZWQtZnJvbS1ndGVzdC10by1kb2N0ZXN0LTI5 Mi5wYXRjaCBiLzAwMDEtc3dpdGNoZWQtZnJvbS1ndGVzdC10by1kb2N0ZXN0LTI5Mi5wYXRjaApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNmFlY2FjCi0tLSAvZGV2L251bGwK KysrIGIvMDAwMS1zd2l0Y2hlZC1mcm9tLWd0ZXN0LXRvLWRvY3Rlc3QtMjkyLnBhdGNoCkBAIC0w LDAgKzEsNTIzIEBACitGcm9tIDg5NjRlZjMwMzU0ZjU5YzE5ZWQ1ZjcyM2M1NzkzNTBlYjI0OWMw YmEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUaG9yc3RlbiBCZWllciA8ZGVydGhv cnN0ZW5iZWllckBnbWFpbC5jb20+CitEYXRlOiBUdWUsIDIxIFNlcCAyMDIxIDEzOjMzOjM5ICsw MjAwCitTdWJqZWN0OiBbUEFUQ0ggMS8zXSBzd2l0Y2hlZCBmcm9tIGd0ZXN0IHRvIGRvY3Rlc3Qg KCMyOTIpCisKK1N3aXRjaHRlZCB0byBkb2N0ZXN0CisKK1NpZ25lZC1vZmYtYnk6IEVsbGlvdHQg U2FsZXMgZGUgQW5kcmFkZSA8cXVhbnR1bS5hbmFseXN0QGdtYWlsLmNvbT4KKy0tLQorIC5hcHB2 ZXlvci55bWwgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDQgKy0KKyAuYXp1cmUtcGlw ZWxpbmVzL3VuaXgtYnVpbGQueW1sICAgICAgICAgIHwgICAyICstCisgQ01ha2VMaXN0cy50eHQg ICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMyArLQorIGVudmlyb25tZW50LWRldi55bWwg ICAgICAgICAgICAgICAgICAgICAgfCAgIDEgKworIHRlc3QvQ01ha2VMaXN0cy50eHQgICAgICAg ICAgICAgICAgICAgICAgfCAgNTUgKy0tLS0tLS0tLQorIHRlc3QvY29weUdUZXN0LmNtYWtlLmlu ICAgICAgICAgICAgICAgICAgfCAgMjMgLS0tLQorIHRlc3QvZG93bmxvYWRHVGVzdC5jbWFrZS5p biAgICAgICAgICAgICAgfCAgMjQgLS0tLS0KKyB0ZXN0L3Rlc3RfbWFpbi5jcHAgICAgICAgICAg ICAgICAgICAgICAgIHwgICAyICsKKyB0ZXN0L3Rlc3RfdW5pdF9rZXJuZWwuY3BwICAgICAgICAg ICAgICAgIHwgIDM2ICsrKystLS0KKyB0ZXN0L3Rlc3RfeGluX21lbW9yeV9oaXN0b3J5X21hbmFn ZXIuY3BwIHwgMTMwICsrKysrKysrKysrKy0tLS0tLS0tLS0tCisgMTAgZmlsZXMgY2hhbmdlZCwg OTggaW5zZXJ0aW9ucygrKSwgMTgyIGRlbGV0aW9ucygtKQorIGRlbGV0ZSBtb2RlIDEwMDY0NCB0 ZXN0L2NvcHlHVGVzdC5jbWFrZS5pbgorIGRlbGV0ZSBtb2RlIDEwMDY0NCB0ZXN0L2Rvd25sb2Fk R1Rlc3QuY21ha2UuaW4KKyBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC90ZXN0X21haW4uY3BwCisK K2RpZmYgLS1naXQgYS8uYXBwdmV5b3IueW1sIGIvLmFwcHZleW9yLnltbAoraW5kZXggZTY1OTZl OC4uYTRkODM5MyAxMDA2NDQKKy0tLSBhLy5hcHB2ZXlvci55bWwKKysrKyBiLy5hcHB2ZXlvci55 bWwKK0BAIC0yOSwxMiArMjksMTIgQEAgaW5zdGFsbDoKKyAgIC0gY29uZGEgdXBkYXRlIC1xIGNv bmRhCisgICAtIGNvbmRhIGluZm8gLWEKKyAgIC0gY29uZGEgaW5zdGFsbCBtYW1iYSAtYyBjb25k YS1mb3JnZQorLSAgLSBtYW1iYSBpbnN0YWxsIGNtYWtlIGNwcHptcT00LjcuMSB6ZXJvbXE9NC4z LjIgeHRsPTAuNyBubG9obWFubl9qc29uIE9wZW5TU0w9MSAtYyBjb25kYS1mb3JnZQorKyAgLSBt YW1iYSBpbnN0YWxsIGNtYWtlIGNwcHptcT00LjcuMSB6ZXJvbXE9NC4zLjIgeHRsPTAuNyBubG9o bWFubl9qc29uIE9wZW5TU0w9MSBkb2N0ZXN0IC1jIGNvbmRhLWZvcmdlCisgICAtIG1hbWJhIGlu c3RhbGwgcHl0ZXN0IGp1cHl0ZXJfa2VybmVsX3Rlc3Q9MC4zLjAgLWMgY29uZGEtZm9yZ2UKKyAg ICMgQnVpbGQKKyAgIC0gbWtkaXIgYnVpbGQKKyAgIC0gY2QgYnVpbGQKKy0gIC0gY21ha2UgLUcg Ik5NYWtlIE1ha2VmaWxlcyIgLUQgQ01BS0VfSU5TVEFMTF9QUkVGSVg9JU1JTklDT05EQSVcXExJ QlJBUlkgLUQgWEVVU19ET1dOTE9BRF9HVEVTVD1PTiAtRGd0ZXN0X2ZvcmNlX3NoYXJlZF9jcnQ9 T04gLi4KKysgIC0gY21ha2UgLUcgIk5NYWtlIE1ha2VmaWxlcyIgLUQgQ01BS0VfSU5TVEFMTF9Q UkVGSVg9JU1JTklDT05EQSVcXExJQlJBUlkgLUQgWEVVU19CVUlMRF9URVNUUz1PTiAgLi4KKyAg IC0gbm1ha2UgaW5zdGFsbAorICAgIyBCdWlsZCBleGFtcGxlCisgICAtIGNkIC4uXGV4YW1wbGUK K2RpZmYgLS1naXQgYS8uYXp1cmUtcGlwZWxpbmVzL3VuaXgtYnVpbGQueW1sIGIvLmF6dXJlLXBp cGVsaW5lcy91bml4LWJ1aWxkLnltbAoraW5kZXggNzMzOTcyYi4uY2ZlNTU2YiAxMDA2NDQKKy0t LSBhLy5henVyZS1waXBlbGluZXMvdW5peC1idWlsZC55bWwKKysrKyBiLy5henVyZS1waXBlbGlu ZXMvdW5peC1idWlsZC55bWwKK0BAIC0yNSw3ICsyNSw3IEBAIHN0ZXBzOgorICAgICAgIGlmIFtb ICQoeGV1c19idWlsZF9zaGFyZWRfbGliKSA9PSAnMCcgXV07IHRoZW4KKyAgICAgICAgIENNQUtF X0VYVFJBX0FSR1M9IiRDTUFLRV9FWFRSQV9BUkdTIC1EWEVVU19CVUlMRF9TSEFSRURfTElCUz1P RkYiOworICAgICAgIGZpCistICAgICAgY21ha2UgLURDTUFLRV9JTlNUQUxMX1BSRUZJWD0kQ09O REFfUFJFRklYIC1EWEVVU19ET1dOTE9BRF9HVEVTVD1PTiAtRENNQUtFX0lOU1RBTExfTElCRElS PWxpYiAtRENNQUtFX0NfQ09NUElMRVI9JENDIC1EQ01BS0VfQ1hYX0NPTVBJTEVSPSRDWFggJENN QUtFX0VYVFJBX0FSR1MgJChCdWlsZC5Tb3VyY2VzRGlyZWN0b3J5KQorKyAgICAgIGNtYWtlIC1E Q01BS0VfSU5TVEFMTF9QUkVGSVg9JENPTkRBX1BSRUZJWCAtRFhFVVNfQlVJTERfVEVTVFM9T04g LURDTUFLRV9JTlNUQUxMX0xJQkRJUj1saWIgLURDTUFLRV9DX0NPTVBJTEVSPSRDQyAtRENNQUtF X0NYWF9DT01QSUxFUj0kQ1hYICRDTUFLRV9FWFRSQV9BUkdTICQoQnVpbGQuU291cmNlc0RpcmVj dG9yeSkKKyAgICAgZGlzcGxheU5hbWU6IENvbmZpZ3VyZSB4ZXVzCisgICAgIHdvcmtpbmdEaXJl Y3Rvcnk6ICQoQnVpbGQuQmluYXJpZXNEaXJlY3RvcnkpCisgCitkaWZmIC0tZ2l0IGEvQ01ha2VM aXN0cy50eHQgYi9DTWFrZUxpc3RzLnR4dAoraW5kZXggNDFlNjY5Mi4uNWNkMmFhYiAxMDA2NDQK Ky0tLSBhL0NNYWtlTGlzdHMudHh0CisrKysgYi9DTWFrZUxpc3RzLnR4dAorQEAgLTU1LDcgKzU1 LDYgQEAgb3B0aW9uKFhFVVNfU1RBVElDX0RFUEVOREVOQ0lFUyAibGluayBzdGF0aWNhbGx5IHdp dGggeGV1cyBkZXBlbmRlbmNpZXMiIE9GRikKKyAKKyAjIFRlc3Qgb3B0aW9ucworIG9wdGlvbihY RVVTX0JVSUxEX1RFU1RTICJ4ZXVzIHRlc3Qgc3VpdGUiIE9GRikKKy1vcHRpb24oWEVVU19ET1dO TE9BRF9HVEVTVCAiYnVpbGQgZ3Rlc3QgZnJvbSBkb3dubG9hZGVkIHNvdXJjZXMiIE9GRikKKyAK KyAjIFN0YXRpYyBidWlsZCBjb25maWd1cmF0aW9uCisgIyA9PT09PT09PT09PT09PT09PT09PT09 PT09PQorQEAgLTM1Miw3ICszNTEsNyBAQCBlbmRpZiAoKQorIAorIGluY2x1ZGUoQ1Rlc3QpCisg CistaWYoWEVVU19ET1dOTE9BRF9HVEVTVCBPUiBHVEVTVF9TUkNfRElSIE9SIFhFVVNfQlVJTERf VEVTVFMpCisraWYoWEVVU19CVUlMRF9URVNUUykKKyAgICAgc2V0KEJVSUxEX1RFU1RJTkcgT04p CisgICAgIG1lc3NhZ2UoU1RBVFVTICJ0ZXN0cyBlbmFibGVkIikKKyBlbHNlICgpCitkaWZmIC0t Z2l0IGEvZW52aXJvbm1lbnQtZGV2LnltbCBiL2Vudmlyb25tZW50LWRldi55bWwKK2luZGV4IGE2 YzY4OGEuLmQxMDlhZGQgMTAwNjQ0CistLS0gYS9lbnZpcm9ubWVudC1kZXYueW1sCisrKysgYi9l bnZpcm9ubWVudC1kZXYueW1sCitAQCAtMTQsNSArMTQsNiBAQCBkZXBlbmRlbmNpZXM6CisgICAt IGxpYm9wZW5zc2wtc3RhdGljPTEKKyAgIC0gbmxvaG1hbm5fanNvbgorICAgIyBUZXN0IGRlcGVu ZGVuY2llcworKyAgLSBkb2N0ZXN0ID49IDIuNC42CisgICAtIHB5dGVzdAorICAgLSBqdXB5dGVy X2tlcm5lbF90ZXN0PTAuMy4wCitkaWZmIC0tZ2l0IGEvdGVzdC9DTWFrZUxpc3RzLnR4dCBiL3Rl c3QvQ01ha2VMaXN0cy50eHQKK2luZGV4IDYxYWFhZGUuLmIyNGEzZTUgMTAwNjQ0CistLS0gYS90 ZXN0L0NNYWtlTGlzdHMudHh0CisrKysgYi90ZXN0L0NNYWtlTGlzdHMudHh0CitAQCAtNDgsNDQg KzQ4LDE1IEBAIGlmKENNQUtFX0NYWF9DT01QSUxFUl9JRCBNQVRDSEVTIE1TVkMpCisgICAgIHNl dChDTUFLRV9FWEVfTElOS0VSX0ZMQUdTIC9NQU5JRkVTVDpOTykKKyBlbmRpZigpCisgCistaWYo WEVVU19ET1dOTE9BRF9HVEVTVCBPUiBHVEVTVF9TUkNfRElSKQorLSAgICBpZihYRVVTX0RPV05M T0FEX0dURVNUKQorLSAgICAgICAgIyBEb3dubG9hZCBhbmQgdW5wYWNrIGdvb2dsZXRlc3QgYXQg Y29uZmlndXJlIHRpbWUKKy0gICAgICAgIGNvbmZpZ3VyZV9maWxlKGRvd25sb2FkR1Rlc3QuY21h a2UuaW4gZ29vZ2xldGVzdC1kb3dubG9hZC9DTWFrZUxpc3RzLnR4dCkKKy0gICAgZWxzZSgpCist ICAgICAgICAjIENvcHkgbG9jYWwgc291cmNlIG9mIGdvb2dsZXRlc3QgYXQgY29uZmlndXJlIHRp bWUKKy0gICAgICAgIGNvbmZpZ3VyZV9maWxlKGNvcHlHVGVzdC5jbWFrZS5pbiBnb29nbGV0ZXN0 LWRvd25sb2FkL0NNYWtlTGlzdHMudHh0KQorLSAgICBlbmRpZigpCistICAgIGV4ZWN1dGVfcHJv Y2VzcyhDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUcgIiR7Q01BS0VfR0VORVJBVE9SfSIgLgor LSAgICAgICAgICAgICAgICAgICAgUkVTVUxUX1ZBUklBQkxFIHJlc3VsdAorLSAgICAgICAgICAg ICAgICAgICAgV09SS0lOR19ESVJFQ1RPUlkgJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dv b2dsZXRlc3QtZG93bmxvYWQgKQorLSAgICBpZihyZXN1bHQpCistICAgICAgICBtZXNzYWdlKEZB VEFMX0VSUk9SICJDTWFrZSBzdGVwIGZvciBnb29nbGV0ZXN0IGZhaWxlZDogJHtyZXN1bHR9IikK Ky0gICAgZW5kaWYoKQorLSAgICBleGVjdXRlX3Byb2Nlc3MoQ09NTUFORCAke0NNQUtFX0NPTU1B TkR9IC0tYnVpbGQgLgorLSAgICAgICAgICAgICAgICAgICAgUkVTVUxUX1ZBUklBQkxFIHJlc3Vs dAorLSAgICAgICAgICAgICAgICAgICAgV09SS0lOR19ESVJFQ1RPUlkgJHtDTUFLRV9DVVJSRU5U X0JJTkFSWV9ESVJ9L2dvb2dsZXRlc3QtZG93bmxvYWQgKQorLSAgICBpZihyZXN1bHQpCistICAg ICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJCdWlsZCBzdGVwIGZvciBnb29nbGV0ZXN0IGZhaWxl ZDogJHtyZXN1bHR9IikKKy0gICAgZW5kaWYoKQorIAorLSAgICAjIEFkZCBnb29nbGV0ZXN0IGRp cmVjdGx5IHRvIG91ciBidWlsZC4gVGhpcyBkZWZpbmVzCistICAgICMgdGhlIGd0ZXN0IGFuZCBn dGVzdF9tYWluIHRhcmdldHMuCistICAgIGFkZF9zdWJkaXJlY3RvcnkoJHtDTUFLRV9DVVJSRU5U X0JJTkFSWV9ESVJ9L2dvb2dsZXRlc3Qtc3JjCistICAgICAgICAgICAgICAgICAgICAgJHtDTUFL RV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dvb2dsZXRlc3QtYnVpbGQgRVhDTFVERV9GUk9NX0FMTCkK KytmaW5kX3BhY2thZ2UoZG9jdGVzdCBSRVFVSVJFRCkKKyAKKy0gICAgc2V0KEdURVNUX0lOQ0xV REVfRElSUyAiJHtndGVzdF9TT1VSQ0VfRElSfS9pbmNsdWRlIikKKy0gICAgc2V0KEdURVNUX0JP VEhfTElCUkFSSUVTICBndGVzdF9tYWluIGd0ZXN0KQorLWVsc2UoKQorLSAgICBmaW5kX3BhY2th Z2UoR1Rlc3QgUkVRVUlSRUQpCistZW5kaWYoKQorIAorIGZpbmRfcGFja2FnZShUaHJlYWRzKQor IAorLWZpbmRfcHJvZ3JhbShQWVRFU1QKKy0gICAgTkFNRVMgcHl0ZXN0LTMgcHl0ZXN0IHB5LnRl c3QtMyBweS50ZXN0KQorK2ZpbmRfcHJvZ3JhbShQWVRFU1QgIAorKyAgICBOQU1FUyBweXRlc3Qt MyBweXRlc3QgcHkudGVzdC0zIHB5LnRlc3QgUkVRVUlSRUQpCisgCistaW5jbHVkZV9kaXJlY3Rv cmllcygke0dURVNUX0lOQ0xVREVfRElSU30pCisgCisgc2V0KFhFVVNfVEVTVFMKKyAgICAgdGVz dF94aW5fbWVtb3J5X2hpc3RvcnlfbWFuYWdlci5jcHAKK0BAIC0xMTMsMjcgKzg0LDExIEBAIGVu ZGlmICgpCisgZm9yZWFjaChmaWxlbmFtZSBJTiBMSVNUUyBYRVVTX1RFU1RTKQorICAgICBnZXRf ZmlsZW5hbWVfY29tcG9uZW50KHRhcmdldG5hbWUgJHtmaWxlbmFtZX0gTkFNRV9XRSkKKyAKKy0g ICAgYWRkX2V4ZWN1dGFibGUoJHt0YXJnZXRuYW1lfSAke2ZpbGVuYW1lfSkKKy0gICAgdGFyZ2V0 X2xpbmtfbGlicmFyaWVzKCR7dGFyZ2V0bmFtZX0gUFJJVkFURSAke3hldXNfVEFSR0VUfSAke0dU RVNUX0JPVEhfTElCUkFSSUVTfSBUaHJlYWRzOjpUaHJlYWRzICR7bmxvaG1hbm5fanNvbl9UQVJH RVR9KQorLSAgICAKKysgICAgYWRkX2V4ZWN1dGFibGUoJHt0YXJnZXRuYW1lfSB0ZXN0X21haW4u Y3BwICR7ZmlsZW5hbWV9KQorKyAgICB0YXJnZXRfbGlua19saWJyYXJpZXMoJHt0YXJnZXRuYW1l fSBQUklWQVRFICR7eGV1c19UQVJHRVR9IGRvY3Rlc3Q6OmRvY3Rlc3QgVGhyZWFkczo6VGhyZWFk cyAke25sb2htYW5uX2pzb25fVEFSR0VUfSkKKyAgICAgYWRkX3Rlc3QoTkFNRSAke3RhcmdldG5h bWV9IENPTU1BTkQgJHt0YXJnZXRuYW1lfSkKKyBlbmRmb3JlYWNoKCkKKyAKKy1pZihYRVVTX0RP V05MT0FEX0dURVNUIE9SIEdURVNUX1NSQ19ESVIpCistICAgICMgaHR0cHM6Ly9naXRodWIuY29t L2p1cHl0ZXIteGV1cy94ZXVzL3B1bGwvMTI2CistICAgICMgVGhpcyBzaG91bGQgcmVhbGx5IGp1 c3QgYmUgcG9zdCBndGVzdCBhbmQgZ3Rlc3RfbWFpbiB0YXJnZXRzLCBidXQgQ01ha2UKKy0gICAg IyB3b24ndCBhbGxvdyB1cyB0byBkbyB0aGF0LiBTbyBkbyBpdCBhZnRlciB0aGUgbGFzdCB0ZXN0 ICh3aGljaCBkZXBlbmRzIG9uCistICAgICMgdGhvc2UgYW55d2F5LikKKy0gICAgaWYgKFhFVVNf QlVJTERfU0hBUkVEX0xJQlMpCistICAgICAgICBhZGRfY3VzdG9tX2NvbW1hbmQoCistICAgICAg ICAgICAgVEFSR0VUICR7dGFyZ2V0bmFtZX0gUE9TVF9CVUlMRAorLSAgICAgICAgICAgIENPTU1B TkQgJHtDTUFLRV9DT01NQU5EfSAtRSBjb3B5ICIkPFRBUkdFVF9GSUxFOmd0ZXN0PiIgIiR7Q01B S0VfQ1VSUkVOVF9CSU5BUllfRElSfS8iKQorLQorLSAgICAgICAgYWRkX2N1c3RvbV9jb21tYW5k KAorLSAgICAgICAgICAgIFRBUkdFVCAke3RhcmdldG5hbWV9IFBPU1RfQlVJTEQKKy0gICAgICAg ICAgICBDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUUgY29weSAiJDxUQVJHRVRfRklMRTpndGVz dF9tYWluPiIgIiR7Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElSfS8iKQorLSAgICBlbmRpZiAoKQor LWVuZGlmKCkKKyAKKyAjIFRlc3Rfa2VybmVsIHRlc3RzCisgIyA9PT09PT09PT09PT09PT09PQor ZGlmZiAtLWdpdCBhL3Rlc3QvY29weUdUZXN0LmNtYWtlLmluIGIvdGVzdC9jb3B5R1Rlc3QuY21h a2UuaW4KK2RlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMWU1ZDNlZC4uMDAwMDAwMAor LS0tIGEvdGVzdC9jb3B5R1Rlc3QuY21ha2UuaW4KKysrKyAvZGV2L251bGwKK0BAIC0xLDIzICsw LDAgQEAKKy0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCistIyBDb3B5cmlnaHQgKGMpIDIwMTYsIEpvaGFu IE1hYmlsbGUsIFN5bHZhaW4gQ29ybGF5IGFuZCBXb2xmIFZvbGxwcmVjaHQgICAgIworLSMgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICMKKy0jIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgQlNE IDMtQ2xhdXNlIExpY2Vuc2UuICAgICAgICAgICAgICAgICAjCistIyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IworLSMgVGhlIGZ1bGwgbGljZW5zZSBpcyBpbiB0aGUgZmlsZSBMSUNFTlNFLCBkaXN0cmlidXRl ZCB3aXRoIHRoaXMgc29mdHdhcmUuICMKKy0jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCistCistY21ha2Vf bWluaW11bV9yZXF1aXJlZChWRVJTSU9OIDIuOC4yKQorLQorLXByb2plY3QoZ29vZ2xldGVzdC1k b3dubG9hZCBOT05FKQorLQorLWluY2x1ZGUoRXh0ZXJuYWxQcm9qZWN0KQorLUV4dGVybmFsUHJv amVjdF9BZGQoZ29vZ2xldGVzdAorLSAgICBVUkwgICAgICAgICAgICAgICAiJHtHVEVTVF9TUkNf RElSfSIKKy0gICAgU09VUkNFX0RJUiAgICAgICAgIiR7Q01BS0VfQ1VSUkVOVF9CSU5BUllfRElS fS9nb29nbGV0ZXN0LXNyYyIKKy0gICAgQklOQVJZX0RJUiAgICAgICAgIiR7Q01BS0VfQ1VSUkVO VF9CSU5BUllfRElSfS9nb29nbGV0ZXN0LWJ1aWxkIgorLSAgICBDT05GSUdVUkVfQ09NTUFORCAi IgorLSAgICBCVUlMRF9DT01NQU5EICAgICAiIgorLSAgICBJTlNUQUxMX0NPTU1BTkQgICAiIgor LSAgICBURVNUX0NPTU1BTkQgICAgICAiIgorLSkKKy0KK2RpZmYgLS1naXQgYS90ZXN0L2Rvd25s b2FkR1Rlc3QuY21ha2UuaW4gYi90ZXN0L2Rvd25sb2FkR1Rlc3QuY21ha2UuaW4KK2RlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggODUyZDQzYy4uMDAwMDAwMAorLS0tIGEvdGVzdC9kb3du bG9hZEdUZXN0LmNtYWtlLmluCisrKysgL2Rldi9udWxsCitAQCAtMSwyNCArMCwwIEBACistIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIworLSMgQ29weXJpZ2h0IChjKSAyMDE2LCBKb2hhbiBNYWJpbGxlLCBT eWx2YWluIENvcmxheSBhbmQgV29sZiBWb2xscHJlY2h0ICAgICMKKy0jICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjCistIyBEaXN0cmlidXRlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEJTRCAzLUNsYXVzZSBM aWNlbnNlLiAgICAgICAgICAgICAgICAgIworLSMgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMKKy0jIFRoZSBm dWxsIGxpY2Vuc2UgaXMgaW4gdGhlIGZpbGUgTElDRU5TRSwgZGlzdHJpYnV0ZWQgd2l0aCB0aGlz IHNvZnR3YXJlLiAjCistIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworLQorLWNtYWtlX21pbmltdW1fcmVx dWlyZWQoVkVSU0lPTiAyLjguMikKKy0KKy1wcm9qZWN0KGdvb2dsZXRlc3QtZG93bmxvYWQgTk9O RSkKKy0KKy1pbmNsdWRlKEV4dGVybmFsUHJvamVjdCkKKy1FeHRlcm5hbFByb2plY3RfQWRkKGdv b2dsZXRlc3QKKy0gICAgR0lUX1JFUE9TSVRPUlkgICAgaHR0cHM6Ly9naXRodWIuY29tL2dvb2ds ZS9nb29nbGV0ZXN0LmdpdAorLSAgICBHSVRfVEFHICAgICAgICAgICByZWxlYXNlLTEuMTAuMAor LSAgICBTT1VSQ0VfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFSWV9ESVJ9L2dvb2ds ZXRlc3Qtc3JjIgorLSAgICBCSU5BUllfRElSICAgICAgICAiJHtDTUFLRV9DVVJSRU5UX0JJTkFS WV9ESVJ9L2dvb2dsZXRlc3QtYnVpbGQiCistICAgIENPTkZJR1VSRV9DT01NQU5EICIiCistICAg IEJVSUxEX0NPTU1BTkQgICAgICIiCistICAgIElOU1RBTExfQ09NTUFORCAgICIiCistICAgIFRF U1RfQ09NTUFORCAgICAgICIiCistKQorLQorZGlmZiAtLWdpdCBhL3Rlc3QvdGVzdF9tYWluLmNw cCBiL3Rlc3QvdGVzdF9tYWluLmNwcAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAw MDAuLjg0Njg0YzAKKy0tLSAvZGV2L251bGwKKysrKyBiL3Rlc3QvdGVzdF9tYWluLmNwcAorQEAg LTAsMCArMSwyIEBACisrI2RlZmluZSBET0NURVNUX0NPTkZJR19JTVBMRU1FTlRfV0lUSF9NQUlO CisrI2luY2x1ZGUgImRvY3Rlc3QvZG9jdGVzdC5oIgorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm aWxlCitkaWZmIC0tZ2l0IGEvdGVzdC90ZXN0X3VuaXRfa2VybmVsLmNwcCBiL3Rlc3QvdGVzdF91 bml0X2tlcm5lbC5jcHAKK2luZGV4IDc0YjlmMDcuLmVlODcwOWIgMTAwNjQ0CistLS0gYS90ZXN0 L3Rlc3RfdW5pdF9rZXJuZWwuY3BwCisrKysgYi90ZXN0L3Rlc3RfdW5pdF9rZXJuZWwuY3BwCitA QCAtNiw5ICs2LDEwIEBACisgKiBUaGUgZnVsbCBsaWNlbnNlIGlzIGluIHRoZSBmaWxlIExJQ0VO U0UsIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb2Z0d2FyZS4gKgorICoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovCisgCistI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiCisrI2luY2x1ZGUgImRvY3Rlc3QvZG9j dGVzdC5oIgorIAorICNpbmNsdWRlIDxzdHJpbmc+CisrI2luY2x1ZGUgPGlvc3RyZWFtPgorIAor ICNpbmNsdWRlICJubG9obWFubi9qc29uLmhwcCIKKyAKK0BAIC0yMCw0OCArMjEsNTEgQEAgbmFt ZXNwYWNlIG5sID0gbmxvaG1hbm47CisgCisgbmFtZXNwYWNlIHhldXMKKyB7CistICAgIFRFU1Qo a2VybmVsLCBnZXRfdXNlcm5hbWUpCisrICAgIFRFU1RfU1VJVEUoImtlcm5lbCIpIHsKKysKKysg ICAgVEVTVF9DQVNFKCJnZXRfdXNlcm5hbWUiKQorICAgICB7CisgICAgICAgICBzdGQ6OnN0cmlu ZyB1c2VybmFtZTsKKyAgICAgICAgIHVzZXJuYW1lID0gZ2V0X3VzZXJfbmFtZSgpOworLSAgICAg ICAgRVhQRUNUX05FKHVzZXJuYW1lLCAidW5zcGVjaWZpZWQgdXNlciIpOworKyAgICAgICAgUkVR VUlSRV9ORSh1c2VybmFtZSwgInVuc3BlY2lmaWVkIHVzZXIiKTsKKyAgICAgfQorIAorLSAgICBU RVNUKGtlcm5lbCwgZmluZF9mcmVlX3BvcnQpCisrICAgIFRFU1RfQ0FTRSgiZmluZF9mcmVlX3Bv cnQiKQorICAgICB7CisgICAgICAgICBzdGQ6OnN0cmluZyBwb3J0ID0gZmluZF9mcmVlX3BvcnQo KTsKKy0gICAgICAgIEVYUEVDVF9ORShwb3J0LCAiIik7CistICAgICAgICBFWFBFQ1RfRVEocG9y dC5sZW5ndGgoKSwgc3RkOjpzaXplX3QoNSkpOworKyAgICAgICAgUkVRVUlSRV9ORShwb3J0LCAi Iik7CisrICAgICAgICBSRVFVSVJFX0VRKHBvcnQubGVuZ3RoKCksIHN0ZDo6c2l6ZV90KDUpKTsK KyAgICAgfQorIAorLSAgICBURVNUKGtlcm5lbCwgdGVtcF9kaXJlY3RvcnlfcGF0aCkKKysgICAg VEVTVF9DQVNFKCJ0ZW1wX2RpcmVjdG9yeV9wYXRoIikKKyAgICAgeworICAgICAgICAgc3RkOjpz dHJpbmcgcGF0aCA9IGdldF90ZW1wX2RpcmVjdG9yeV9wYXRoKCk7CisgICAgICAgICBzdGQ6OmNv dXQgPDwgIlRlbXBvcmFyeSBkaXJlY3RvcnkgcGF0aDogIiA8PCBwYXRoIDw8IHN0ZDo6ZW5kbDsK Ky0gICAgICAgIEVYUEVDVF9ORShwYXRoLCAiIik7CistICAgICAgICBFWFBFQ1RfTkUocGF0aC5i YWNrKCksICcvJyk7CistICAgICAgICBFWFBFQ1RfTkUocGF0aC5iYWNrKCksICdcXCcpOworKyAg ICAgICAgUkVRVUlSRV9ORShwYXRoLCAiIik7CisrICAgICAgICBSRVFVSVJFX05FKHBhdGguYmFj aygpLCAnLycpOworKyAgICAgICAgUkVRVUlSRV9ORShwYXRoLmJhY2soKSwgJ1xcJyk7CisgICAg IH0KKyAKKy0gICAgVEVTVChrZXJuZWwsIGNyZWF0ZV9kaXJlY3RvcnkpCisrICAgIFRFU1RfQ0FT RSgiY3JlYXRlX2RpcmVjdG9yeSIpCisgICAgIHsKKyAgICAgICAgIHN0ZDo6c3RyaW5nIHRlbXBf cGF0aCA9IGdldF90ZW1wX2RpcmVjdG9yeV9wYXRoKCk7CisgICAgICAgICBzdGQ6OnN0cmluZyBw YXRoID0gdGVtcF9wYXRoICsgIi9pbnRlcm1lZGlhdGUvbG9ncyI7CisgICAgICAgICBib29sIHJl cyA9IGNyZWF0ZV9kaXJlY3RvcnkocGF0aCk7CistICAgICAgICBFWFBFQ1RfVFJVRShyZXMpOwor KyAgICAgICAgUkVRVUlSRV9VTkFSWShyZXMpOworICAgICB9CisgCistICAgIFRFU1Qoa2VybmVs LCBnZXRfY3VycmVudF9waWQpCisrICAgIFRFU1RfQ0FTRSgiZ2V0X2N1cnJlbnRfcGlkIikKKyAg ICAgeworICAgICAgICAgaW50IHBpZCA9IGdldF9jdXJyZW50X3BpZCgpOworLSAgICAgICAgRVhQ RUNUX05FKHBpZCwgLTEpOworKyAgICAgICAgUkVRVUlSRV9ORShwaWQsIC0xKTsKKyAgICAgfQor IAorLSAgICBURVNUKGtlcm5lbCwgZ2V0X3RtcF9oYXNoX3NlZWQpCisrICAgIFRFU1RfQ0FTRSgi Z2V0X3RtcF9oYXNoX3NlZWQiKQorICAgICB7CisgICAgICAgICBzaXplX3QgaHMgPSBnZXRfdG1w X2hhc2hfc2VlZCgpOworICAgICAgICAgc2l6ZV90IGV4cGVjdGVkID0gc3RhdGljX2Nhc3Q8c3Rk OjpzaXplX3Q+KDB4YzcwZjY5MDdVTCk7CistICAgICAgICBFWFBFQ1RfRVEoaHMsIGV4cGVjdGVk KTsKKysgICAgICAgIFJFUVVJUkVfRVEoaHMsIGV4cGVjdGVkKTsKKysgICAgfQorICAgICB9Cisg fQorIAorZGlmZiAtLWdpdCBhL3Rlc3QvdGVzdF94aW5fbWVtb3J5X2hpc3RvcnlfbWFuYWdlci5j cHAgYi90ZXN0L3Rlc3RfeGluX21lbW9yeV9oaXN0b3J5X21hbmFnZXIuY3BwCitpbmRleCBkZjIy NzVhLi5hMjA0Y2ExIDEwMDY0NAorLS0tIGEvdGVzdC90ZXN0X3hpbl9tZW1vcnlfaGlzdG9yeV9t YW5hZ2VyLmNwcAorKysrIGIvdGVzdC90ZXN0X3hpbl9tZW1vcnlfaGlzdG9yeV9tYW5hZ2VyLmNw cAorQEAgLTYsNyArNiw3IEBACisgKiBUaGUgZnVsbCBsaWNlbnNlIGlzIGluIHRoZSBmaWxlIExJ Q0VOU0UsIGRpc3RyaWJ1dGVkIHdpdGggdGhpcyBzb2Z0d2FyZS4gKgorICoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKiovCisgCistI2luY2x1ZGUgImd0ZXN0L2d0ZXN0LmgiCisrI2luY2x1ZGUgImRvY3Rlc3Qv ZG9jdGVzdC5oIgorIAorICNpbmNsdWRlIDx2ZWN0b3I+CisgI2luY2x1ZGUgPGFycmF5PgorQEAg LTIzLDcgKzIzLDggQEAgbmFtZXNwYWNlIHhldXMKKyAgICAgdXNpbmcgaGlzdG9yeV9tYW5hZ2Vy X3B0ciA9IHN0ZDo6dW5pcXVlX3B0cjx4aGlzdG9yeV9tYW5hZ2VyPjsKKyAgICAgdXNpbmcgaGlz dG9yeV90eXBlID0gc3RkOjp2ZWN0b3I8c3RkOjphcnJheTxzdGQ6OnN0cmluZywgMz4+OworIAor LSAgICBURVNUKHhpbl9tZW1vcnlfaGlzdG9yeV9tYW5hZ2VyLCBnZXRfdGFpbCkKKysgICAgVEVT VF9TVUlURSgieGluX21lbW9yeV9oaXN0b3J5X21hbmFnZXIiKXsKKysgICAgVEVTVF9DQVNFKCJn ZXRfdGFpbCIpCisgICAgIHsKKyAgICAgICAgIGhpc3RvcnlfbWFuYWdlcl9wdHIgaGlzdCA9IHhl dXM6Om1ha2VfaW5fbWVtb3J5X2hpc3RvcnlfbWFuYWdlcigpOworICAgICAgICAgaGlzdC0+c3Rv cmVfaW5wdXRzKDAsIDEsICJwcmludCgzKSIpOworQEAgLTMyLDI5ICszMywyOSBAQCBuYW1lc3Bh Y2UgeGV1cworICAgICAgICAgaGlzdC0+c3RvcmVfaW5wdXRzKDAsIDQsICJhIik7CisgCisgICAg ICAgICBubDo6anNvbiB0YWlsMSA9IGhpc3QtPmdldF90YWlsKDEwMDAsIHRydWUsIGZhbHNlKTsK Ky0gICAgICAgIEFTU0VSVF9FUSh0YWlsMVsic3RhdHVzIl0sICJvayIpOworKyAgICAgICAgUkVR VUlSRV9FUSh0YWlsMVsic3RhdHVzIl0sICJvayIpOworICAgICAgICAgYXV0byBoaXN0b3J5MSA9 IHRhaWwxWyJoaXN0b3J5Il0uZ2V0PGhpc3RvcnlfdHlwZT4oKTsKKy0gICAgICAgIEFTU0VSVF9F UShoaXN0b3J5MS5zaXplKCksIHN0ZDo6c2l6ZV90KDQpKTsKKy0gICAgICAgIEFTU0VSVF9FUSho aXN0b3J5MVswXVsxXSwgIjEiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5MVswXVsyXSwg InByaW50KDMpIik7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTFbMV1bMV0sICIyIik7Cist ICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTFbMV1bMl0sICJhID0gMyIpOworLSAgICAgICAgQVNT RVJUX0VRKGhpc3RvcnkxWzJdWzFdLCAiMyIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3Rvcnkx WzJdWzJdLCAicHJpbnQoYSkiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5MVszXVsxXSwg IjQiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5MVszXVsyXSwgImEiKTsKKysgICAgICAg IFJFUVVJUkVfRVEoaGlzdG9yeTEuc2l6ZSgpLCBzdGQ6OnNpemVfdCg0KSk7CisrICAgICAgICBS RVFVSVJFX0VRKGhpc3RvcnkxWzBdWzFdLCAiMSIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0 b3J5MVswXVsyXSwgInByaW50KDMpIik7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3RvcnkxWzFd WzFdLCAiMiIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MVsxXVsyXSwgImEgPSAzIik7 CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3RvcnkxWzJdWzFdLCAiMyIpOworKyAgICAgICAgUkVR VUlSRV9FUShoaXN0b3J5MVsyXVsyXSwgInByaW50KGEpIik7CisrICAgICAgICBSRVFVSVJFX0VR KGhpc3RvcnkxWzNdWzFdLCAiNCIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MVszXVsy XSwgImEiKTsKKyAKKyAgICAgICAgIG5sOjpqc29uIHRhaWwyID0gaGlzdC0+Z2V0X3RhaWwoMiwg dHJ1ZSwgZmFsc2UpOworLSAgICAgICAgQVNTRVJUX0VRKHRhaWwyWyJzdGF0dXMiXSwgIm9rIik7 CisrICAgICAgICBSRVFVSVJFX0VRKHRhaWwyWyJzdGF0dXMiXSwgIm9rIik7CisgICAgICAgICBh dXRvIGhpc3RvcnkyID0gdGFpbDJbImhpc3RvcnkiXS5nZXQ8aGlzdG9yeV90eXBlPigpOworLSAg ICAgICAgQVNTRVJUX0VRKGhpc3RvcnkyLnNpemUoKSwgc3RkOjpzaXplX3QoMikpOworLSAgICAg ICAgQVNTRVJUX0VRKGhpc3RvcnkyWzBdWzFdLCAiMyIpOworLSAgICAgICAgQVNTRVJUX0VRKGhp c3RvcnkyWzBdWzJdLCAicHJpbnQoYSkiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5Mlsx XVsxXSwgIjQiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5MlsxXVsyXSwgImEiKTsKKysg ICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTIuc2l6ZSgpLCBzdGQ6OnNpemVfdCgyKSk7CisrICAg ICAgICBSRVFVSVJFX0VRKGhpc3RvcnkyWzBdWzFdLCAiMyIpOworKyAgICAgICAgUkVRVUlSRV9F UShoaXN0b3J5MlswXVsyXSwgInByaW50KGEpIik7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3Rv cnkyWzFdWzFdLCAiNCIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MlsxXVsyXSwgImEi KTsKKyAgICAgfQorIAorLSAgICBURVNUKHhpbl9tZW1vcnlfaGlzdG9yeV9tYW5hZ2VyLCBnZXRf cmFuZ2UpCisrICAgIFRFU1RfQ0FTRSgiZ2V0X3JhbmdlIikKKyAgICAgeworICAgICAgICAgaGlz dG9yeV9tYW5hZ2VyX3B0ciBoaXN0ID0geGV1czo6bWFrZV9pbl9tZW1vcnlfaGlzdG9yeV9tYW5h Z2VyKCk7CisgICAgICAgICBoaXN0LT5zdG9yZV9pbnB1dHMoMCwgMSwgInByaW50KDMpIik7CitA QCAtNjMsMjYgKzY0LDI2IEBAIG5hbWVzcGFjZSB4ZXVzCisgICAgICAgICBoaXN0LT5zdG9yZV9p bnB1dHMoMCwgNCwgImEiKTsKKyAKKyAgICAgICAgIG5sOjpqc29uIHJhbmdlMSA9IGhpc3QtPmdl dF9yYW5nZSgwLCAxLCAyLCB0cnVlLCBmYWxzZSk7CistICAgICAgICBBU1NFUlRfRVEocmFuZ2Ux WyJzdGF0dXMiXSwgIm9rIik7CisrICAgICAgICBSRVFVSVJFX0VRKHJhbmdlMVsic3RhdHVzIl0s ICJvayIpOworICAgICAgICAgYXV0byBoaXN0b3J5MSA9IHJhbmdlMVsiaGlzdG9yeSJdLmdldDxo aXN0b3J5X3R5cGU+KCk7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTEuc2l6ZSgpLCBzdGQ6 OnNpemVfdCgxKSk7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTFbMF1bMV0sICIyIik7Cist ICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTFbMF1bMl0sICJhID0gMyIpOworKyAgICAgICAgUkVR VUlSRV9FUShoaXN0b3J5MS5zaXplKCksIHN0ZDo6c2l6ZV90KDEpKTsKKysgICAgICAgIFJFUVVJ UkVfRVEoaGlzdG9yeTFbMF1bMV0sICIyIik7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3Rvcnkx WzBdWzJdLCAiYSA9IDMiKTsKKyAKKyAgICAgICAgIG5sOjpqc29uIHJhbmdlMiA9IGhpc3QtPmdl dF9yYW5nZSgwLCAxLCAzLCB0cnVlLCBmYWxzZSk7CistICAgICAgICBBU1NFUlRfRVEocmFuZ2Uy WyJzdGF0dXMiXSwgIm9rIik7CisrICAgICAgICBSRVFVSVJFX0VRKHJhbmdlMlsic3RhdHVzIl0s ICJvayIpOworICAgICAgICAgYXV0byBoaXN0b3J5MiA9IHJhbmdlMlsiaGlzdG9yeSJdLmdldDxo aXN0b3J5X3R5cGU+KCk7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTIuc2l6ZSgpLCBzdGQ6 OnNpemVfdCgyKSk7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTJbMF1bMV0sICIyIik7Cist ICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTJbMF1bMl0sICJhID0gMyIpOworLSAgICAgICAgQVNT RVJUX0VRKGhpc3RvcnkyWzFdWzFdLCAiMyIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3Rvcnky WzFdWzJdLCAicHJpbnQoYSkiKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTIuc2l6ZSgp LCBzdGQ6OnNpemVfdCgyKSk7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3RvcnkyWzBdWzFdLCAi MiIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MlswXVsyXSwgImEgPSAzIik7CisrICAg ICAgICBSRVFVSVJFX0VRKGhpc3RvcnkyWzFdWzFdLCAiMyIpOworKyAgICAgICAgUkVRVUlSRV9F UShoaXN0b3J5MlsxXVsyXSwgInByaW50KGEpIik7CisgCisgICAgICAgICBubDo6anNvbiByYW5n ZTMgPSBoaXN0LT5nZXRfcmFuZ2UoMCwgMTAwMCwgMiwgdHJ1ZSwgZmFsc2UpOworLSAgICAgICAg QVNTRVJUX0VRKHJhbmdlM1sic3RhdHVzIl0sICJlcnJvciIpOworKyAgICAgICAgUkVRVUlSRV9F UShyYW5nZTNbInN0YXR1cyJdLCAiZXJyb3IiKTsKKyAgICAgfQorIAorLSAgICBURVNUKHhpbl9t ZW1vcnlfaGlzdG9yeV9tYW5hZ2VyLCBzZWFyY2gpCisrICAgIFRFU1RfQ0FTRSgic2VhcmNoIikK KyAgICAgeworICAgICAgICAgaGlzdG9yeV9tYW5hZ2VyX3B0ciBoaXN0ID0geGV1czo6bWFrZV9p bl9tZW1vcnlfaGlzdG9yeV9tYW5hZ2VyKCk7CisgICAgICAgICBoaXN0LT5zdG9yZV9pbnB1dHMo MCwgMSwgInByaW50KDM2KSIpOworQEAgLTkxLDU1ICs5Miw1NiBAQCBuYW1lc3BhY2UgeGV1cwor ICAgICAgICAgaGlzdC0+c3RvcmVfaW5wdXRzKDAsIDQsICJhIik7CisgCisgICAgICAgICBubDo6 anNvbiBzZWFyY2gxID0gaGlzdC0+c2VhcmNoKCJwcmludCoiLCB0cnVlLCBmYWxzZSwgMTAsIGZh bHNlKTsKKy0gICAgICAgIEFTU0VSVF9FUShzZWFyY2gxWyJzdGF0dXMiXSwgIm9rIik7CisrICAg ICAgICBSRVFVSVJFX0VRKHNlYXJjaDFbInN0YXR1cyJdLCAib2siKTsKKyAgICAgICAgIGF1dG8g aGlzdG9yeTEgPSBzZWFyY2gxWyJoaXN0b3J5Il0uZ2V0PGhpc3RvcnlfdHlwZT4oKTsKKy0gICAg ICAgIEFTU0VSVF9FUShoaXN0b3J5MS5zaXplKCksIHN0ZDo6c2l6ZV90KDIpKTsKKy0gICAgICAg IEFTU0VSVF9FUShoaXN0b3J5MVswXVsxXSwgIjEiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0 b3J5MVswXVsyXSwgInByaW50KDM2KSIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3RvcnkxWzFd WzFdLCAiMyIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3RvcnkxWzFdWzJdLCAicHJpbnQoYSki KTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTEuc2l6ZSgpLCBzdGQ6OnNpemVfdCgyKSk7 CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3RvcnkxWzBdWzFdLCAiMSIpOworKyAgICAgICAgUkVR VUlSRV9FUShoaXN0b3J5MVswXVsyXSwgInByaW50KDM2KSIpOworKyAgICAgICAgUkVRVUlSRV9F UShoaXN0b3J5MVsxXVsxXSwgIjMiKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTFbMV1b Ml0sICJwcmludChhKSIpOworIAorICAgICAgICAgbmw6Ompzb24gc2VhcmNoMiA9IGhpc3QtPnNl YXJjaCgicHJpbnQoKikiLCB0cnVlLCBmYWxzZSwgMTAsIGZhbHNlKTsKKy0gICAgICAgIEFTU0VS VF9FUShzZWFyY2gyWyJzdGF0dXMiXSwgIm9rIik7CisrICAgICAgICBSRVFVSVJFX0VRKHNlYXJj aDJbInN0YXR1cyJdLCAib2siKTsKKyAgICAgICAgIGF1dG8gaGlzdG9yeTIgPSBzZWFyY2gyWyJo aXN0b3J5Il0uZ2V0PGhpc3RvcnlfdHlwZT4oKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5 Mi5zaXplKCksIHN0ZDo6c2l6ZV90KDIpKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5Mlsw XVsxXSwgIjEiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5MlswXVsyXSwgInByaW50KDM2 KSIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3RvcnkyWzFdWzFdLCAiMyIpOworLSAgICAgICAg QVNTRVJUX0VRKGhpc3RvcnkyWzFdWzJdLCAicHJpbnQoYSkiKTsKKysgICAgICAgIFJFUVVJUkVf RVEoaGlzdG9yeTIuc2l6ZSgpLCBzdGQ6OnNpemVfdCgyKSk7CisrICAgICAgICBSRVFVSVJFX0VR KGhpc3RvcnkyWzBdWzFdLCAiMSIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MlswXVsy XSwgInByaW50KDM2KSIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5MlsxXVsxXSwgIjMi KTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTJbMV1bMl0sICJwcmludChhKSIpOworIAor ICAgICAgICAgbmw6Ompzb24gc2VhcmNoMyA9IGhpc3QtPnNlYXJjaCgicHJpbnQoPykiLCB0cnVl LCBmYWxzZSwgMTAsIGZhbHNlKTsKKy0gICAgICAgIEFTU0VSVF9FUShzZWFyY2gzWyJzdGF0dXMi XSwgIm9rIik7CisrICAgICAgICBSRVFVSVJFX0VRKHNlYXJjaDNbInN0YXR1cyJdLCAib2siKTsK KyAgICAgICAgIGF1dG8gaGlzdG9yeTMgPSBzZWFyY2gzWyJoaXN0b3J5Il0uZ2V0PGhpc3Rvcnlf dHlwZT4oKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5My5zaXplKCksIHN0ZDo6c2l6ZV90 KDEpKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5M1swXVsxXSwgIjMiKTsKKy0gICAgICAg IEFTU0VSVF9FUShoaXN0b3J5M1swXVsyXSwgInByaW50KGEpIik7CisrICAgICAgICBSRVFVSVJF X0VRKGhpc3RvcnkzLnNpemUoKSwgc3RkOjpzaXplX3QoMSkpOworKyAgICAgICAgUkVRVUlSRV9F UShoaXN0b3J5M1swXVsxXSwgIjMiKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTNbMF1b Ml0sICJwcmludChhKSIpOworIAorICAgICAgICAgbmw6Ompzb24gc2VhcmNoNCA9IGhpc3QtPnNl YXJjaCgicHJpbnQqIiwgdHJ1ZSwgZmFsc2UsIDEsIGZhbHNlKTsKKy0gICAgICAgIEFTU0VSVF9F UShzZWFyY2g0WyJzdGF0dXMiXSwgIm9rIik7CisrICAgICAgICBSRVFVSVJFX0VRKHNlYXJjaDRb InN0YXR1cyJdLCAib2siKTsKKyAgICAgICAgIGF1dG8gaGlzdG9yeTQgPSBzZWFyY2g0WyJoaXN0 b3J5Il0uZ2V0PGhpc3RvcnlfdHlwZT4oKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5NC5z aXplKCksIHN0ZDo6c2l6ZV90KDEpKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5NFswXVsx XSwgIjMiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5NFswXVsyXSwgInByaW50KGEpIik7 CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3Rvcnk0LnNpemUoKSwgc3RkOjpzaXplX3QoMSkpOwor KyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5NFswXVsxXSwgIjMiKTsKKysgICAgICAgIFJFUVVJ UkVfRVEoaGlzdG9yeTRbMF1bMl0sICJwcmludChhKSIpOworIAorICAgICAgICAgaGlzdC0+c3Rv cmVfaW5wdXRzKDAsIDMsICJwcmludChhKSIpOworICAgICAgICAgbmw6Ompzb24gc2VhcmNoNSA9 IGhpc3QtPnNlYXJjaCgicHJpbnQqIiwgdHJ1ZSwgZmFsc2UsIDEwLCBmYWxzZSk7CistICAgICAg ICBBU1NFUlRfRVEoc2VhcmNoNVsic3RhdHVzIl0sICJvayIpOworKyAgICAgICAgUkVRVUlSRV9F UShzZWFyY2g1WyJzdGF0dXMiXSwgIm9rIik7CisgICAgICAgICBhdXRvIGhpc3Rvcnk1ID0gc2Vh cmNoNVsiaGlzdG9yeSJdLmdldDxoaXN0b3J5X3R5cGU+KCk7CistICAgICAgICBBU1NFUlRfRVEo aGlzdG9yeTUuc2l6ZSgpLCBzdGQ6OnNpemVfdCgzKSk7CistICAgICAgICBBU1NFUlRfRVEoaGlz dG9yeTJbMF1bMV0sICIxIik7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTJbMF1bMl0sICJw cmludCgzNikiKTsKKy0gICAgICAgIEFTU0VSVF9FUShoaXN0b3J5NVsxXVsxXSwgIjMiKTsKKy0g ICAgICAgIEFTU0VSVF9FUShoaXN0b3J5NVsxXVsyXSwgInByaW50KGEpIik7CistICAgICAgICBB U1NFUlRfRVEoaGlzdG9yeTVbMl1bMV0sICIzIik7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9y eTVbMl1bMl0sICJwcmludChhKSIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5NS5zaXpl KCksIHN0ZDo6c2l6ZV90KDMpKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTJbMF1bMV0s ICIxIik7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3RvcnkyWzBdWzJdLCAicHJpbnQoMzYpIik7 CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3Rvcnk1WzFdWzFdLCAiMyIpOworKyAgICAgICAgUkVR VUlSRV9FUShoaXN0b3J5NVsxXVsyXSwgInByaW50KGEpIik7CisrICAgICAgICBSRVFVSVJFX0VR KGhpc3Rvcnk1WzJdWzFdLCAiMyIpOworKyAgICAgICAgUkVRVUlSRV9FUShoaXN0b3J5NVsyXVsy XSwgInByaW50KGEpIik7CisgCisgICAgICAgICBubDo6anNvbiBzZWFyY2g2ID0gaGlzdC0+c2Vh cmNoKCJwcmludCoiLCB0cnVlLCBmYWxzZSwgMTAsIHRydWUpOworLSAgICAgICAgQVNTRVJUX0VR KHNlYXJjaDZbInN0YXR1cyJdLCAib2siKTsKKysgICAgICAgIFJFUVVJUkVfRVEoc2VhcmNoNlsi c3RhdHVzIl0sICJvayIpOworICAgICAgICAgYXV0byBoaXN0b3J5NiA9IHNlYXJjaDZbImhpc3Rv cnkiXS5nZXQ8aGlzdG9yeV90eXBlPigpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3RvcnkyWzBd WzFdLCAiMSIpOworLSAgICAgICAgQVNTRVJUX0VRKGhpc3RvcnkyWzBdWzJdLCAicHJpbnQoMzYp Iik7CistICAgICAgICBBU1NFUlRfRVEoaGlzdG9yeTVbMV1bMV0sICIzIik7CistICAgICAgICBB U1NFUlRfRVEoaGlzdG9yeTVbMV1bMl0sICJwcmludChhKSIpOworKyAgICAgICAgUkVRVUlSRV9F UShoaXN0b3J5MlswXVsxXSwgIjEiKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTJbMF1b Ml0sICJwcmludCgzNikiKTsKKysgICAgICAgIFJFUVVJUkVfRVEoaGlzdG9yeTVbMV1bMV0sICIz Iik7CisrICAgICAgICBSRVFVSVJFX0VRKGhpc3Rvcnk1WzFdWzJdLCAicHJpbnQoYSkiKTsKKysg ICAgfQorICAgICB9CisgfQorLS0gCisyLjM2LjEKKwoKZGlmZiAtLWdpdCBhLzAwMDItTmV2ZXIt ZGVsZXRlLWNvbnRleHQtYmVmb3JlLXNvY2tldHMucGF0Y2ggYi8wMDAyLU5ldmVyLWRlbGV0ZS1j b250ZXh0LWJlZm9yZS1zb2NrZXRzLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLjc3NTUxZTUKLS0tIC9kZXYvbnVsbAorKysgYi8wMDAyLU5ldmVyLWRlbGV0ZS1jb250 ZXh0LWJlZm9yZS1zb2NrZXRzLnBhdGNoCkBAIC0wLDAgKzEsNjYgQEAKK0Zyb20gMjA2ZjU0ZWE1 NGMwYTUzNTVhZGIxNTMxZTBkNTIzNTAxYWE5YzJiOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK K0Zyb206IEpvaGFuIE1hYmlsbGUgPGpvaGFuLm1hYmlsbGVAZ21haWwuY29tPgorRGF0ZTogRnJp LCAyNCBTZXAgMjAyMSAwMDo0ODoyNiArMDIwMAorU3ViamVjdDogW1BBVENIIDIvM10gTmV2ZXIg ZGVsZXRlIGNvbnRleHQgYmVmb3JlIHNvY2tldHMKKworU2lnbmVkLW9mZi1ieTogRWxsaW90dCBT YWxlcyBkZSBBbmRyYWRlIDxxdWFudHVtLmFuYWx5c3RAZ21haWwuY29tPgorLS0tCisgaW5jbHVk ZS94ZXVzL3hrZXJuZWwuaHBwIHwgNSArKysrLQorIHNyYy94a2VybmVsLmNwcCAgICAgICAgICB8 IDQgKystLQorIDIgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygt KQorCitkaWZmIC0tZ2l0IGEvaW5jbHVkZS94ZXVzL3hrZXJuZWwuaHBwIGIvaW5jbHVkZS94ZXVz L3hrZXJuZWwuaHBwCitpbmRleCA0ZWYwZGQzLi5kMzJjMDdlIDEwMDY0NAorLS0tIGEvaW5jbHVk ZS94ZXVzL3hrZXJuZWwuaHBwCisrKysgYi9pbmNsdWRlL3hldXMveGtlcm5lbC5ocHAKK0BAIC04 NCwxMyArODQsMTYgQEAgbmFtZXNwYWNlIHhldXMKKyAgICAgICAgIHN0ZDo6c3RyaW5nIG1fa2Vy bmVsX2lkOworICAgICAgICAgc3RkOjpzdHJpbmcgbV9zZXNzaW9uX2lkOworICAgICAgICAgc3Rk OjpzdHJpbmcgbV91c2VyX25hbWU7CisrICAgICAgICAvLyBUaGUgY29udGV4dCBtdXN0IGJlIGRl Y2xhcmVkIGJlZm9yZSBhbnkgb3RoZXIKKysgICAgICAgIC8vIG1pZGRsZXdhcmUgY29tcG9uZW50 IHNpbmNlIGl0IG11c3QgYmUgZGVzdHJveWVkCisrICAgICAgICAvLyBsYXN0CisrICAgICAgICBj b250ZXh0X3B0ciBwX2NvbnRleHQ7CisgICAgICAgICBpbnRlcnByZXRlcl9wdHIgcF9pbnRlcnBy ZXRlcjsKKyAgICAgICAgIGhpc3RvcnlfbWFuYWdlcl9wdHIgcF9oaXN0b3J5X21hbmFnZXI7Cisg ICAgICAgICBsb2dnZXJfcHRyIHBfbG9nZ2VyOworICAgICAgICAgc2VydmVyX3B0ciBwX3NlcnZl cjsKKyAgICAgICAgIGRlYnVnZ2VyX2J1aWxkZXIgbV9kZWJ1Z2dlcl9idWlsZGVyOworICAgICAg ICAgZGVidWdnZXJfcHRyIHBfZGVidWdnZXI7CistICAgICAgICBjb250ZXh0X3B0ciBwX2NvbnRl eHQ7CisgICAgICAgICBrZXJuZWxfY29yZV9wdHIgcF9jb3JlOworICAgICAgICAgbmw6Ompzb24g bV9kZWJ1Z2dlcl9jb25maWc7CisgICAgICAgICBubDo6anNvbjo6ZXJyb3JfaGFuZGxlcl90IG1f ZXJyb3JfaGFuZGxlcjsKK2RpZmYgLS1naXQgYS9zcmMveGtlcm5lbC5jcHAgYi9zcmMveGtlcm5l bC5jcHAKK2luZGV4IDJiZGE4YWYuLmM4ZTI2M2EgMTAwNjQ0CistLS0gYS9zcmMveGtlcm5lbC5j cHAKKysrKyBiL3NyYy94a2VybmVsLmNwcAorQEAgLTgyLDExICs4MiwxMSBAQCBuYW1lc3BhY2Ug eGV1cworICAgICAgICAgICAgICAgICAgICAgIG5sOjpqc29uOjplcnJvcl9oYW5kbGVyX3QgZWgp CisgICAgICAgICA6IG1fY29uZmlnKGNvbmZpZykKKyAgICAgICAgICwgbV91c2VyX25hbWUodXNl cl9uYW1lKQorKyAgICAgICAgLCBwX2NvbnRleHQoc3RkOjptb3ZlKGNvbnRleHQpKQorICAgICAg ICAgLCBwX2ludGVycHJldGVyKHN0ZDo6bW92ZShpbnRlcnByZXRlcikpCisgICAgICAgICAsIHBf aGlzdG9yeV9tYW5hZ2VyKHN0ZDo6bW92ZShoaXN0b3J5X21hbmFnZXIpKQorICAgICAgICAgLCBw X2xvZ2dlcihzdGQ6Om1vdmUobG9nZ2VyKSkKKyAgICAgICAgICwgbV9kZWJ1Z2dlcl9idWlsZGVy KGRidWlsZGVyKQorLSAgICAgICAgLCBwX2NvbnRleHQoc3RkOjptb3ZlKGNvbnRleHQpKQorICAg ICAgICAgLCBtX2RlYnVnZ2VyX2NvbmZpZyhkZWJ1Z2dlcl9jb25maWcpCisgICAgICAgICAsIG1f ZXJyb3JfaGFuZGxlcihlaCkKKyAgICAgeworQEAgLTEwMywxMSArMTAzLDExIEBAIG5hbWVzcGFj ZSB4ZXVzCisgICAgICAgICAgICAgICAgICAgICAgbmw6Ompzb24gZGVidWdnZXJfY29uZmlnLAor ICAgICAgICAgICAgICAgICAgICAgIG5sOjpqc29uOjplcnJvcl9oYW5kbGVyX3QgZWgpCisgICAg ICAgICA6IG1fdXNlcl9uYW1lKHVzZXJfbmFtZSkKKysgICAgICAgICwgcF9jb250ZXh0KHN0ZDo6 bW92ZShjb250ZXh0KSkKKyAgICAgICAgICwgcF9pbnRlcnByZXRlcihzdGQ6Om1vdmUoaW50ZXJw cmV0ZXIpKQorICAgICAgICAgLCBwX2hpc3RvcnlfbWFuYWdlcihzdGQ6Om1vdmUoaGlzdG9yeV9t YW5hZ2VyKSkKKyAgICAgICAgICwgcF9sb2dnZXIoc3RkOjptb3ZlKGxvZ2dlcikpCisgICAgICAg ICAsIG1fZGVidWdnZXJfYnVpbGRlcihkYnVpbGRlcikKKy0gICAgICAgICwgcF9jb250ZXh0KHN0 ZDo6bW92ZShjb250ZXh0KSkKKyAgICAgICAgICwgbV9kZWJ1Z2dlcl9jb25maWcoZGVidWdnZXJf Y29uZmlnKQorICAgICAgICAgLCBtX2Vycm9yX2hhbmRsZXIoZWgpCisgICAgIHsKKy0tIAorMi4z Ni4xCisKCmRpZmYgLS1naXQgYS8wMDAzLUZpeC1ub24tc3RhbmRhcmQtbWVzc2FnZXMucGF0Y2gg Yi8wMDAzLUZpeC1ub24tc3RhbmRhcmQtbWVzc2FnZXMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMC4uNGM1ZmM1ZAotLS0gL2Rldi9udWxsCisrKyBiLzAwMDMtRml4LW5v bi1zdGFuZGFyZC1tZXNzYWdlcy5wYXRjaApAQCAtMCwwICsxLDcwNyBAQAorRnJvbSAyNzFjM2Ux YzRjMTM0MzM2MzIzYjk3OWI2YjBkNWQ3MDJlMGJhYTM4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogTWFyaWFuYSBNZWlyZWxlcyA8bWFyaWFuYUBwc3ljaG9uYXV0Z2lybC5zcGFjZT4K K0RhdGU6IEZyaSwgMjQgU2VwIDIwMjEgMDc6MzA6NTYgKzAwMDAKK1N1YmplY3Q6IFtQQVRDSCAz LzNdIEZpeCBub24tc3RhbmRhcmQgbWVzc2FnZXMKKworU2lnbmVkLW9mZi1ieTogRWxsaW90dCBT YWxlcyBkZSBBbmRyYWRlIDxxdWFudHVtLmFuYWx5c3RAZ21haWwuY29tPgorLS0tCisgQ01ha2VM aXN0cy50eHQgICAgICAgICAgICAgICAgICAgICB8ICAgNCArLQorIGV4YW1wbGUvc3JjL2N1c3Rv bV9pbnRlcnByZXRlci5jcHAgfCAgNjEgKysrKy0tLS0tLS0tCisgaW5jbHVkZS94ZXVzL3hoZWxw ZXIuaHBwICAgICAgICAgICB8ICA3MiArKysrKysrKysrKysrKworIHNyYy94aGVscGVyLmNwcCAg ICAgICAgICAgICAgICAgICAgfCAxNTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKyB0 ZXN0L0NNYWtlTGlzdHMudHh0ICAgICAgICAgICAgICAgIHwgICAzICstCisgdGVzdC90ZXN0X2lu dGVycHJldGVyLmNwcCAgICAgICAgICB8ICA3OCArKysrKystLS0tLS0tLS0KKyB0ZXN0L3Rlc3Rf dW5pdF9rZXJuZWwuY3BwICAgICAgICAgIHwgMTI3ICsrKysrKysrKysrKysrKy0tLS0tLS0tCisg NyBmaWxlcyBjaGFuZ2VkLCAzNjcgaW5zZXJ0aW9ucygrKSwgMTMzIGRlbGV0aW9ucygtKQorIGNy ZWF0ZSBtb2RlIDEwMDY0NCBpbmNsdWRlL3hldXMveGhlbHBlci5ocHAKKyBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjL3hoZWxwZXIuY3BwCisKK2RpZmYgLS1naXQgYS9DTWFrZUxpc3RzLnR4dCBiL0NN YWtlTGlzdHMudHh0CitpbmRleCA1Y2QyYWFiLi5iOTY4YWJiIDEwMDY0NAorLS0tIGEvQ01ha2VM aXN0cy50eHQKKysrKyBiL0NNYWtlTGlzdHMudHh0CitAQCAtMTMzLDYgKzEzMyw3IEBAIHNldChY RVVTX0hFQURFUlMKKyAgICAgJHtYRVVTX0lOQ0xVREVfRElSfS94ZXVzL3hrZXJuZWxfY29uZmln dXJhdGlvbi5ocHAKKyAgICAgJHtYRVVTX0lOQ0xVREVfRElSfS94ZXVzL3hsb2dnZXIuaHBwCisg ICAgICR7WEVVU19JTkNMVURFX0RJUn0veGV1cy94bWVzc2FnZS5ocHAKKysgICAgJHtYRVVTX0lO Q0xVREVfRElSfS94ZXVzL3hoZWxwZXIuaHBwCisgICAgICR7WEVVU19JTkNMVURFX0RJUn0veGV1 cy94bWlkZGxld2FyZS5ocHAKKyAgICAgJHtYRVVTX0lOQ0xVREVfRElSfS94ZXVzL3hzZXJ2ZXIu aHBwCisgICAgICR7WEVVU19JTkNMVURFX0RJUn0veGV1cy94c2VydmVyX2NvbnRyb2xfbWFpbi5o cHAKK0BAIC0xNjgsNiArMTY5LDcgQEAgc2V0KFhFVVNfU09VUkNFUworICAgICAke1hFVVNfU09V UkNFX0RJUn0veGxvZ2dlcl9pbXBsLmhwcAorICAgICAke1hFVVNfU09VUkNFX0RJUn0veGxvZ2dl cl9pbXBsLmNwcAorICAgICAke1hFVVNfU09VUkNFX0RJUn0veG1lc3NhZ2UuY3BwCisrICAgICR7 WEVVU19TT1VSQ0VfRElSfS94aGVscGVyLmNwcAorICAgICAke1hFVVNfU09VUkNFX0RJUn0veG1v Y2tfaW50ZXJwcmV0ZXIuY3BwCisgICAgICR7WEVVU19TT1VSQ0VfRElSfS94bW9ja19pbnRlcnBy ZXRlci5ocHAKKyAgICAgJHtYRVVTX1NPVVJDRV9ESVJ9L3htaWRkbGV3YXJlLmNwcAorQEAgLTM1 MSw3ICszNTMsNyBAQCBlbmRpZiAoKQorIAorIGluY2x1ZGUoQ1Rlc3QpCisgCistaWYoWEVVU19C VUlMRF9URVNUUykKKytpZihYRVVTX0RPV05MT0FEX0dURVNUIE9SIEdURVNUX1NSQ19ESVIgT1Ig WEVVU19CVUlMRF9URVNUUykKKyAgICAgc2V0KEJVSUxEX1RFU1RJTkcgT04pCisgICAgIG1lc3Nh Z2UoU1RBVFVTICJ0ZXN0cyBlbmFibGVkIikKKyBlbHNlICgpCitkaWZmIC0tZ2l0IGEvZXhhbXBs ZS9zcmMvY3VzdG9tX2ludGVycHJldGVyLmNwcCBiL2V4YW1wbGUvc3JjL2N1c3RvbV9pbnRlcnBy ZXRlci5jcHAKK2luZGV4IGNhYWQzNzUuLmUyZGJmY2EgMTAwNjQ0CistLS0gYS9leGFtcGxlL3Ny Yy9jdXN0b21faW50ZXJwcmV0ZXIuY3BwCisrKysgYi9leGFtcGxlL3NyYy9jdXN0b21faW50ZXJw cmV0ZXIuY3BwCitAQCAtMTAsNyArMTAsNyBAQAorICNpbmNsdWRlIDxpb3N0cmVhbT4KKyAKKyAj aW5jbHVkZSAibmxvaG1hbm4vanNvbi5ocHAiCistCisrI2luY2x1ZGUgInhldXMveGhlbHBlci5o cHAiCisgI2luY2x1ZGUgImN1c3RvbV9pbnRlcnByZXRlci5ocHAiCisgCisgbmFtZXNwYWNlIG5s ID0gbmxvaG1hbm47CitAQCAtNDQsOSArNDQsNyBAQCBuYW1lc3BhY2UgY3VzdG9tCisgICAgICAg ICAvLyBwdWJsaXNoX2V4ZWN1dGlvbl9lcnJvcihlcnJvcl9uYW1lLCBlcnJvcl92YWx1ZSwgZXJy b3JfdHJhY2ViYWNrKTsKKyAgICAgICAgIHB1Ymxpc2hfZXhlY3V0aW9uX2Vycm9yKCJUeXBlRXJy b3IiLCAiMTIzIiwgeyIhQCMkIiwgIiooKiJ9KTsKKyAKKy0gICAgICAgIG5sOjpqc29uIHJlc3Vs dDsKKy0gICAgICAgIHJlc3VsdFsic3RhdHVzIl0gPSAib2siOworLSAgICAgICAgcmV0dXJuIHJl c3VsdDsKKysgICAgICAgIHJldHVybiB4ZXVzOjpjcmVhdGVfc3VjY2Vzc2Z1bF9yZXBseSgpOwor ICAgICB9CisgCisgICAgIHZvaWQgY3VzdG9tX2ludGVycHJldGVyOjpjb25maWd1cmVfaW1wbCgp CitAQCAtNTcsMjYgKzU1LDE2IEBAIG5hbWVzcGFjZSBjdXN0b20KKyAgICAgbmw6Ompzb24gY3Vz dG9tX2ludGVycHJldGVyOjpjb21wbGV0ZV9yZXF1ZXN0X2ltcGwoY29uc3Qgc3RkOjpzdHJpbmcm IGNvZGUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGludCBjdXJzb3JfcG9zKQorICAgICB7CistICAgICAgICBubDo6anNvbiByZXN1bHQ7 CistCisgICAgICAgICAvLyBDb2RlIHN0YXJ0cyB3aXRoICdIJywgaXQgY291bGQgYmUgdGhlIGZv bGxvd2luZyBjb21wbGV0aW9uCisgICAgICAgICBpZiAoY29kZVswXSA9PSAnSCcpCisgICAgICAg ICB7CistICAgICAgICAgICAgcmVzdWx0WyJzdGF0dXMiXSA9ICJvayI7CistICAgICAgICAgICAg cmVzdWx0WyJtYXRjaGVzIl0gPSB7IkhlbGxvIiwgIkhleSIsICJIb3dkeSJ9OworLSAgICAgICAg ICAgIHJlc3VsdFsiY3Vyc29yX3N0YXJ0Il0gPSA1OworLSAgICAgICAgICAgIHJlc3VsdFsiY3Vy c29yX2VuZCJdID0gY3Vyc29yX3BvczsKKysgICAgICAgICAgICByZXR1cm4geGV1czo6Y3JlYXRl X2NvbXBsZXRlX3JlcGx5KHsiSGVsbG8iLCAiSGV5IiwgIkhvd2R5In0sIDUsIGN1cnNvcl9wb3Mp OworICAgICAgICAgfQorICAgICAgICAgLy8gTm8gY29tcGxldGlvbiByZXN1bHQKKyAgICAgICAg IGVsc2UKKyAgICAgICAgIHsKKy0gICAgICAgICAgICByZXN1bHRbInN0YXR1cyJdID0gIm9rIjsK Ky0gICAgICAgICAgICByZXN1bHRbIm1hdGNoZXMiXSA9IG5sOjpqc29uOjphcnJheSgpOworLSAg ICAgICAgICAgIHJlc3VsdFsiY3Vyc29yX3N0YXJ0Il0gPSBjdXJzb3JfcG9zOworLSAgICAgICAg ICAgIHJlc3VsdFsiY3Vyc29yX2VuZCJdID0gY3Vyc29yX3BvczsKKysgICAgICAgICAgICByZXR1 cm4geGV1czo6Y3JlYXRlX2NvbXBsZXRlX3JlcGx5KHt9LCBjdXJzb3JfcG9zLCBjdXJzb3JfcG9z KTsKKyAgICAgICAgIH0KKy0KKy0gICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgIH0KKyAKKyAg ICAgbmw6Ompzb24gY3VzdG9tX2ludGVycHJldGVyOjppbnNwZWN0X3JlcXVlc3RfaW1wbChjb25z dCBzdGQ6OnN0cmluZyYgY29kZSwKK0BAIC04Nyw0OCArNzUsMzMgQEAgbmFtZXNwYWNlIGN1c3Rv bQorIAorICAgICAgICAgaWYgKGNvZGUuY29tcGFyZSgicHJpbnQiKSA9PSAwKQorICAgICAgICAg eworLSAgICAgICAgICAgIHJlc3VsdFsiZm91bmQiXSA9IHRydWU7CistICAgICAgICAgICAgcmVz dWx0WyJ0ZXh0L3BsYWluIl0gPSAiUHJpbnQgb2JqZWN0cyB0byB0aGUgdGV4dCBzdHJlYW0gZmls ZSwgWy4uLl0iOworKyAgICAgICAgICAgIHJldHVybiB4ZXVzOjpjcmVhdGVfaW5zcGVjdF9yZXBs eSh0cnVlLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 InRleHQvcGxhaW4iLCAiUHJpbnQgb2JqZWN0cyB0byB0aGUgdGV4dCBzdHJlYW0gZmlsZSwgWy4u Ll0ifSk7CisgICAgICAgICB9CisgICAgICAgICBlbHNlCisgICAgICAgICB7CistICAgICAgICAg ICAgcmVzdWx0WyJmb3VuZCJdID0gZmFsc2U7CisrICAgICAgICAgICAgcmV0dXJuIHhldXM6OmNy ZWF0ZV9pbnNwZWN0X3JlcGx5KCk7CisgICAgICAgICB9CistCistICAgICAgICByZXN1bHRbInN0 YXR1cyJdID0gIm9rIjsKKy0gICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgIH0KKyAKKyAgICAg bmw6Ompzb24gY3VzdG9tX2ludGVycHJldGVyOjppc19jb21wbGV0ZV9yZXF1ZXN0X2ltcGwoY29u c3Qgc3RkOjpzdHJpbmcmIC8qY29kZSovKQorICAgICB7CistICAgICAgICBubDo6anNvbiByZXN1 bHQ7CistCistICAgICAgICAvLyBpZiAoaXNfY29tcGxldGUoY29kZSkpCistICAgICAgICAvLyB7 CistICAgICAgICAgICAgcmVzdWx0WyJzdGF0dXMiXSA9ICJjb21wbGV0ZSI7CistICAgICAgICAv LyB9CistICAgICAgICAvLyBlbHNlCistICAgICAgICAvLyB7CistICAgICAgICAvLyAgICByZXN1 bHRbInN0YXR1cyJdID0gImluY29tcGxldGUiOworLSAgICAgICAgLy8gICAgcmVzdWx0WyJpbmRl bnQiXSA9IDQ7CistICAgICAgICAvL30KKy0KKy0gICAgICAgIHJldHVybiByZXN1bHQ7CisrICAg ICAgICByZXR1cm4geGV1czo6Y3JlYXRlX2lzX2NvbXBsZXRlX3JlcGx5KCJjb21wbGV0ZSIpOwor ICAgICB9CisgCisgICAgIG5sOjpqc29uIGN1c3RvbV9pbnRlcnByZXRlcjo6a2VybmVsX2luZm9f cmVxdWVzdF9pbXBsKCkKKyAgICAgeworLSAgICAgICAgbmw6Ompzb24gcmVzdWx0OworLSAgICAg ICAgcmVzdWx0WyJpbXBsZW1lbnRhdGlvbiJdID0gIm15X2tlcm5lbCI7CistICAgICAgICByZXN1 bHRbImltcGxlbWVudGF0aW9uX3ZlcnNpb24iXSA9ICIwLjEuMCI7CistICAgICAgICByZXN1bHRb Imxhbmd1YWdlX2luZm8iXVsibmFtZSJdID0gInB5dGhvbiI7CistICAgICAgICByZXN1bHRbImxh bmd1YWdlX2luZm8iXVsidmVyc2lvbiJdID0gIjMuNyI7CistICAgICAgICByZXN1bHRbImxhbmd1 YWdlX2luZm8iXVsibWltZXR5cGUiXSA9ICJ0ZXh0L3gtcHl0aG9uIjsKKy0gICAgICAgIHJlc3Vs dFsibGFuZ3VhZ2VfaW5mbyJdWyJmaWxlX2V4dGVuc2lvbiJdID0gIi5weSI7CistICAgICAgICBy ZXR1cm4gcmVzdWx0OworKyAgICAgICAgcmV0dXJuIHhldXM6OmNyZWF0ZV9pbmZvX3JlcGx5KCIi LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJteV9rZXJuZWwiLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIwLjEuMCIsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInB5dGhvbiIsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIjMuNyIsCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgInRleHQveC1weXRob24iLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICIucHkiKTsKKyAgICAgfQorIAorLSAgICB2b2lkIGN1c3RvbV9p bnRlcnByZXRlcjo6c2h1dGRvd25fcmVxdWVzdF9pbXBsKCkgeworKyAgICB2b2lkIGN1c3RvbV9p bnRlcnByZXRlcjo6c2h1dGRvd25fcmVxdWVzdF9pbXBsKCkKKysgICAgeworICAgICAgICAgc3Rk Ojpjb3V0IDw8ICJCeWUhISIgPDwgc3RkOjplbmRsOworICAgICB9CisgCitkaWZmIC0tZ2l0IGEv aW5jbHVkZS94ZXVzL3hoZWxwZXIuaHBwIGIvaW5jbHVkZS94ZXVzL3hoZWxwZXIuaHBwCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMC4uNTg0YzE1MAorLS0tIC9kZXYvbnVsbAor KysrIGIvaW5jbHVkZS94ZXVzL3hoZWxwZXIuaHBwCitAQCAtMCwwICsxLDcyIEBACisrLyoqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKgorKyogQ29weXJpZ2h0IChjKSAyMDE2LCBKb2hhbiBNYWJpbGxlLCBTeWx2 YWluIENvcmxheSwgTWFydGluIFJlbm91ICAgICAgICAgICoKKysqIENvcHlyaWdodCAoYykgMjAx NiwgUXVhbnRTdGFjayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAq CisrKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKgorKyogRGlzdHJpYnV0ZWQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBCU0QgMy1DbGF1c2UgTGljZW5zZS4gICAgICAgICAgICAgICAgICoKKysqICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAqCisrKiBUaGUgZnVsbCBsaWNlbnNlIGlzIGluIHRoZSBmaWxlIExJQ0VOU0UsIGRp c3RyaWJ1dGVkIHdpdGggdGhpcyBzb2Z0d2FyZS4gKgorKyoqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisr CisrI2lmbmRlZiBYRVVTX0hFTFBFUl9IUFAKKysjZGVmaW5lIFhFVVNfSEVMUEVSX0hQUAorKwor KyNpbmNsdWRlIDxpb3N0cmVhbT4KKysjaW5jbHVkZSA8c3RyaW5nPgorKyNpbmNsdWRlIDx2ZWN0 b3I+CisrCisrI2luY2x1ZGUgInhldXMveGV1cy5ocHAiCisrI2luY2x1ZGUgInhldXMveGtlcm5l bF9jb25maWd1cmF0aW9uLmhwcCIKKysKKysjaW5jbHVkZSAibmxvaG1hbm4vanNvbi5ocHAiCisr CisrbmFtZXNwYWNlIG5sID0gbmxvaG1hbm47CisrCisrbmFtZXNwYWNlIHhldXMKKyt7CisrICAg IFhFVVNfQVBJIHN0ZDo6c3RyaW5nIHByaW50X3N0YXJ0aW5nX21lc3NhZ2UoY29uc3QgeGNvbmZp Z3VyYXRpb24mIGNvbmZpZyk7CisrCisrICAgIFhFVVNfQVBJIHN0ZDo6c3RyaW5nIGV4dHJhY3Rf ZmlsZW5hbWUoaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSk7CisrCisrICAgIFhFVVNfQVBJIGJvb2wg c2hvdWxkX3ByaW50X3ZlcnNpb24oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSk7CisrCisrICAgIFhF VVNfQVBJCisrICAgIG5sOjpqc29uIGNyZWF0ZV9lcnJvcl9yZXBseShjb25zdCBzdGQ6OnN0cmlu ZyYgZW5hbWUgPSBzdGQ6OnN0cmluZygpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3Qgc3RkOjpzdHJpbmcmIGV2YWx1ZSA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBubDo6anNvbiYgdHJhY2VfYmFjayA9IG5sOjpq c29uOjphcnJheSgpKTsKKysKKysgICAgWEVVU19BUEkKKysgICAgbmw6Ompzb24gY3JlYXRlX3N1 Y2Nlc3NmdWxfcmVwbHkoY29uc3Qgbmw6Ompzb24mIHBheWxvYWQgPSBubDo6anNvbjo6YXJyYXko KSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgbmw6Ompzb24m IHVzZXJfZXhwcmVzc2lvbnMgPSBubDo6anNvbjo6b2JqZWN0KCkpOworKworKyAgICBYRVVTX0FQ SQorKyAgICBubDo6anNvbiBjcmVhdGVfY29tcGxldGVfcmVwbHkoY29uc3Qgbmw6Ompzb24mIG1h dGNoZXMsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBpbnQmIGN1 cnNvcl9zdGFydCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGlu dCYgY3Vyc29yX2VuZCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IG5sOjpqc29uJiBtZXRhZGF0YSA9IG5sOjpqc29uOjpvYmplY3QoKSk7CisrCisrICAgIFhFVVNf QVBJCisrICAgIG5sOjpqc29uIGNyZWF0ZV9pbnNwZWN0X3JlcGx5KGNvbnN0IGJvb2wgZm91bmQg PSBmYWxzZSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgbmw6Ompz b24mIGRhdGEgPSBubDo6anNvbjo6b2JqZWN0KCksCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IG5sOjpqc29uJiBtZXRhZGF0YSA9IG5sOjpqc29uOjpvYmplY3QoKSk7 CisrCisrICAgIFhFVVNfQVBJCisrICAgIG5sOjpqc29uIGNyZWF0ZV9pc19jb21wbGV0ZV9yZXBs eShjb25zdCBzdGQ6OnN0cmluZyYgc3RhdHVzID0gc3RkOjpzdHJpbmcoKSwKKysgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbmRlbnQgPSBz dGQ6OnN0cmluZygiIikpOworKworKyAgICBYRVVTX0FQSQorKyAgICBubDo6anNvbiBjcmVhdGVf aW5mb19yZXBseShjb25zdCBzdGQ6OnN0cmluZyYgcHJvdG9jb2xfdmVyc2lvbiA9IHN0ZDo6c3Ry aW5nKCksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5n JiBpbXBsZW1lbnRhdGlvbiA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbXBsZW1lbnRhdGlvbl92ZXJzaW9uID0gc3Rk OjpzdHJpbmcoKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpz dHJpbmcmIGxhbmd1YWdlX25hbWUgPSBzdGQ6OnN0cmluZygpLAorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyYgbGFuZ3VhZ2VfdmVyc2lvbiA9IHN0ZDo6 c3RyaW5nKCksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3Ry aW5nJiBsYW5ndWFnZV9taW1ldHlwZSA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBsYW5ndWFnZV9maWxlX2V4dGVuc2lv biA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0 IHN0ZDo6c3RyaW5nJiBweWdtZW50c19sZXhlciA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBsYW5ndWFnZV9jb2RlbWly cm9yX21vZGUgPSBzdGQ6OnN0cmluZygpLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBzdGQ6OnN0cmluZyYgbGFuZ3VhZ2VfbmJjb252ZXJ0X2V4cG9ydGVyID0gc3RkOjpz dHJpbmcoKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJp bmcmIGJhbm5lciA9IHN0ZDo6c3RyaW5nKCksCisrICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbnN0IGJvb2wgZGVidWdnZXIgPSBmYWxzZSwKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3Qgbmw6Ompzb24mIGhlbHBfbGlua3MgPSBubDo6anNvbjo6YXJyYXkoKSk7 CisrfQorKworKyNlbmRpZgorZGlmZiAtLWdpdCBhL3NyYy94aGVscGVyLmNwcCBiL3NyYy94aGVs cGVyLmNwcAorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAuLjc1MjZmMGQKKy0t LSAvZGV2L251bGwKKysrKyBiL3NyYy94aGVscGVyLmNwcAorQEAgLTAsMCArMSwxNTUgQEAKKysj aW5jbHVkZSA8c3RyaW5nPgorKyNpbmNsdWRlIDx2ZWN0b3I+CisrCisrI2luY2x1ZGUgIm5sb2ht YW5uL2pzb24uaHBwIgorKworKyNpbmNsdWRlICJ4ZXVzL3hoZWxwZXIuaHBwIgorKworK25hbWVz cGFjZSBubCA9IG5sb2htYW5uOworKworK25hbWVzcGFjZSB4ZXVzCisreworKyAgICBzdGQ6OnN0 cmluZyBwcmludF9zdGFydGluZ19tZXNzYWdlKGNvbnN0IHhjb25maWd1cmF0aW9uJiBjb25maWcp CisrICAgIHsKKysgICAgICAgIHN0ZDo6c3RyaW5nIGtlcm5lbF9pbmZvOworKyAgICAgICAga2Vy bmVsX2luZm8gPSAiU3RhcnRpbmcga2VybmVsLi4uXG5cbiIKKysgICAgICAgICAgICAiSWYgeW91 IHdhbnQgdG8gY29ubmVjdCB0byB0aGlzIGtlcm5lbCBmcm9tIGFuIG90aGVyIGNsaWVudCwganVz dCBjb3B5IgorKyAgICAgICAgICAgICIgYW5kIHBhc3RlIHRoZSBmb2xsb3dpbmcgY29udGVudCBp bnNpZGUgb2YgYSBga2VybmVsLmpzb25gIGZpbGUuIEFuZCB0aGVuIHJ1biBmb3IgZXhhbXBsZTpc blxuIgorKyAgICAgICAgICAgICIjIGp1cHl0ZXIgY29uc29sZSAtLWV4aXN0aW5nIGtlcm5lbC5q c29uXG5cbiIKKysgICAgICAgICAgICAia2VybmVsLmpzb25cbmBgYFxue1xuIgorKyAgICAgICAg ICAgICIgICAgXCJ0cmFuc3BvcnRcIjogXCIiICsgY29uZmlnLm1fdHJhbnNwb3J0ICsgIlwiLFxu IgorKyAgICAgICAgICAgICIgICAgXCJpcFwiOiBcIiIgKyBjb25maWcubV9pcCArICJcIixcbiIK KysgICAgICAgICAgICAiICAgIFwiY29udHJvbF9wb3J0XCI6ICIgKyBjb25maWcubV9jb250cm9s X3BvcnQgKyAiLFxuIgorKyAgICAgICAgICAgICIgICAgXCJzaGVsbF9wb3J0XCI6ICIgKyBjb25m aWcubV9zaGVsbF9wb3J0ICsgIixcbiIKKysgICAgICAgICAgICAiICAgIFwic3RkaW5fcG9ydFwi OiAiICsgY29uZmlnLm1fc3RkaW5fcG9ydCArICIsXG4iCisrICAgICAgICAgICAgIiAgICBcImlv cHViX3BvcnRcIjogIiArIGNvbmZpZy5tX2lvcHViX3BvcnQgKyAiLFxuIgorKyAgICAgICAgICAg ICIgICAgXCJoYl9wb3J0XCI6ICIgKyBjb25maWcubV9oYl9wb3J0ICsgIixcbiIKKysgICAgICAg ICAgICAiICAgIFwic2lnbmF0dXJlX3NjaGVtZVwiOiBcIiIgKyBjb25maWcubV9zaWduYXR1cmVf c2NoZW1lICsgIlwiLFxuIgorKyAgICAgICAgICAgICIgICAgXCJrZXlcIjogXCIiICsgY29uZmln Lm1fa2V5ICsgIlwiXG4iCisrICAgICAgICAgICAgIn1cbmBgYCI7CisrICAgICAgICByZXR1cm4g a2VybmVsX2luZm87CisrICAgIH0KKysKKysgICAgc3RkOjpzdHJpbmcgZXh0cmFjdF9maWxlbmFt ZShpbnQgYXJnYywgY2hhciogYXJndltdKQorKyAgICB7CisrICAgICAgICBzdGQ6OnN0cmluZyBy ZXMgPSAiIjsKKysgICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgYXJnYzsgKytpKQorKyAgICAg ICAgeworKyAgICAgICAgICAgIGlmICgoc3RkOjpzdHJpbmcoYXJndltpXSkgPT0gIi1mIikgJiYg KGkgKyAxIDwgYXJnYykpCisrICAgICAgICAgICAgeworKyAgICAgICAgICAgICAgICByZXMgPSBh cmd2W2kgKyAxXTsKKysgICAgICAgICAgICAgICAgZm9yKGludCBqID0gaTsgaiA8IGFyZ2MgLSAy OyArK2opCisrICAgICAgICAgICAgICAgIHsKKysgICAgICAgICAgICAgICAgICAgIGFyZ3Zbal0g ID0gYXJndltqICsgMl07CisrICAgICAgICAgICAgICAgIH0KKysgICAgICAgICAgICAgICAgYXJn YyAtPSAyOworKyAgICAgICAgICAgICAgICBicmVhazsKKysgICAgICAgICAgICB9CisrICAgICAg ICB9CisrICAgICAgICByZXR1cm4gcmVzOworKyAgICB9CisrCisrICAgIGJvb2wgc2hvdWxkX3By aW50X3ZlcnNpb24oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKKysgICAgeworKyAgICAgICAgZm9y IChpbnQgaSA9IDA7IGkgPCBhcmdjOyArK2kpCisrICAgICAgICB7CisrICAgICAgICAgICAgaWYg KHN0ZDo6c3RyaW5nKGFyZ3ZbaV0pID09ICItLXZlcnNpb24iKQorKyAgICAgICAgICAgIHsKKysg ICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CisrICAgICAgICAgICAgfQorKyAgICAgICAgfQor KyAgICAgICAgcmV0dXJuIGZhbHNlOworKyAgICB9CisrCisrICAgIC8vIEhlbHBlcnMgdGhhdCBj cmVhdGUgcmVwbGllcyB0byB0aGUgc2VydmVyCisrICAgIG5sOjpqc29uIGNyZWF0ZV9lcnJvcl9y ZXBseShjb25zdCBzdGQ6OnN0cmluZyYgZXZhbHVlLAorKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGVuYW1lLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3Qgbmw6Ompzb24mIHRyYWNlX2JhY2spCisrICAgIHsKKysgICAgICAg IG5sOjpqc29uIGtlcm5lbF9yZXM7CisrICAgICAgICBrZXJuZWxfcmVzWyJzdGF0dXMiXSA9ICJl cnJvciI7CisrICAgICAgICBrZXJuZWxfcmVzWyJlbmFtZSJdID0gZW5hbWU7CisrICAgICAgICBr ZXJuZWxfcmVzWyJldmFsdWUiXSA9IGV2YWx1ZTsKKysgICAgICAgIGtlcm5lbF9yZXNbInRyYWNl YmFjayJdID0gdHJhY2VfYmFjazsKKysgICAgICAgIHJldHVybiBrZXJuZWxfcmVzOworKyAgICB9 CisrCisrICAgIG5sOjpqc29uIGNyZWF0ZV9zdWNjZXNzZnVsX3JlcGx5KGNvbnN0IG5sOjpqc29u JiBwYXlsb2FkLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBu bDo6anNvbiYgdXNlcl9leHByZXNzaW9ucykKKysgICAgeworKyAgICAgICAgbmw6Ompzb24ga2Vy bmVsX3JlczsKKysgICAgICAgIGtlcm5lbF9yZXNbInN0YXR1cyJdID0gIm9rIjsKKysgICAgICAg IGtlcm5lbF9yZXNbInBheWxvYWQiXSA9IHBheWxvYWQ7CisrICAgICAgICBrZXJuZWxfcmVzWyJ1 c2VyX2V4cHJlc3Npb25zIl0gPSB1c2VyX2V4cHJlc3Npb25zOworKyAgICAgICAgcmV0dXJuIGtl cm5lbF9yZXM7CisrICAgIH0KKysKKysgICAgbmw6Ompzb24gY3JlYXRlX2NvbXBsZXRlX3JlcGx5 KGNvbnN0IG5sOjpqc29uJiBtYXRjaGVzLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgaW50JiBjdXJzb3Jfc3RhcnQsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBpbnQmIGN1cnNvcl9lbmQsCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBjb25zdCBubDo6anNvbiYgbWV0YWRhdGEpCisrICAgIHsKKysgICAgICAg IG5sOjpqc29uIGtlcm5lbF9yZXM7CisrICAgICAgICBrZXJuZWxfcmVzWyJzdGF0dXMiXSA9ICJv ayI7CisrICAgICAgICBrZXJuZWxfcmVzWyJtYXRjaGVzIl0gPSBtYXRjaGVzOworKyAgICAgICAg a2VybmVsX3Jlc1siY3Vyc29yX3N0YXJ0Il0gPSBjdXJzb3Jfc3RhcnQ7CisrICAgICAgICBrZXJu ZWxfcmVzWyJjdXJzb3JfZW5kIl0gPSBjdXJzb3JfZW5kOworKyAgICAgICAga2VybmVsX3Jlc1si bWV0YWRhdGEiXSA9IG1ldGFkYXRhOworKyAgICAgICAgcmV0dXJuIGtlcm5lbF9yZXM7CisrICAg IH0KKysKKysgICAgbmw6Ompzb24gY3JlYXRlX2luc3BlY3RfcmVwbHkoY29uc3QgYm9vbCBmb3Vu ZCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgbmw6Ompzb24mIGRh dGEsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG5sOjpqc29uJiBt ZXRhZGF0YSkKKysgICAgeworKyAgICAgICAgbmw6Ompzb24ga2VybmVsX3JlczsKKysgICAgICAg IGtlcm5lbF9yZXNbInN0YXR1cyJdID0gIm9rIjsKKysgICAgICAgIGtlcm5lbF9yZXNbImZvdW5k Il0gPSBmb3VuZDsKKysgICAgICAgIGtlcm5lbF9yZXNbImRhdGEiXSA9IGRhdGE7CisrICAgICAg ICBrZXJuZWxfcmVzWyJtZXRhZGF0YSJdID0gbWV0YWRhdGE7CisrICAgICAgICByZXR1cm4ga2Vy bmVsX3JlczsKKysgICAgfQorKworKyAgICBubDo6anNvbiBjcmVhdGVfaXNfY29tcGxldGVfcmVw bHkoY29uc3Qgc3RkOjpzdHJpbmcmIHN0YXR1cywKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbmRlbnQpCisrICAgIHsKKysgICAgICAg IG5sOjpqc29uIGtlcm5lbF9yZXM7CisrICAgICAgICBrZXJuZWxfcmVzWyJzdGF0dXMiXSA9IHN0 YXR1czsKKysgICAgICAgIGtlcm5lbF9yZXNbImluZGVudCJdID0gaW5kZW50OworKyAgICAgICAg cmV0dXJuIGtlcm5lbF9yZXM7CisrICAgIH0KKysKKysgICAgbmw6Ompzb24gY3JlYXRlX2luZm9f cmVwbHkoY29uc3Qgc3RkOjpzdHJpbmcmIHByb3RvY29sX3ZlcnNpb24sCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZDo6c3RyaW5nJiBpbXBsZW1lbnRhdGlvbiwKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGltcGxlbWVu dGF0aW9uX3ZlcnNpb24sCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0 ZDo6c3RyaW5nJiBsYW5ndWFnZV9uYW1lLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBjb25zdCBzdGQ6OnN0cmluZyYgbGFuZ3VhZ2VfdmVyc2lvbiwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGxhbmd1YWdlX21pbWV0eXBlLAorKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGQ6OnN0cmluZyYgbGFuZ3VhZ2Vf ZmlsZV9leHRlbnNpb24sCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0 ZDo6c3RyaW5nJiBsYW5ndWFnZV9weWdtZW50c19sZXhlciwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGxhbmd1YWdlX2NvZGVtaXJyb3JfbW9kZSwK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RkOjpzdHJpbmcmIGxhbmd1 YWdlX25iY29udmVydF9leHBvcnRlciwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgc3RkOjpzdHJpbmcmIGJhbm5lciwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29uc3QgYm9vbCBkZWJ1Z2dlciwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3Qgbmw6Ompzb24mIGhlbHBfbGlua3MpCisrICAgIHsKKysgICAgICAgIG5sOjpqc29uIGtl cm5lbF9yZXM7CisrICAgICAgICBrZXJuZWxfcmVzWyJzdGF0dXMiXSA9ICJvayI7CisrICAgICAg ICBrZXJuZWxfcmVzWyJwcm90b2NvbF92ZXJzaW9uIl0gPSBwcm90b2NvbF92ZXJzaW9uOworKyAg ICAgICAga2VybmVsX3Jlc1siaW1wbGVtZW50YXRpb24iXSA9IGltcGxlbWVudGF0aW9uOworKyAg ICAgICAga2VybmVsX3Jlc1siaW1wbGVtZW50YXRpb25fdmVyc2lvbiJdID0gaW1wbGVtZW50YXRp b25fdmVyc2lvbjsKKysgICAgICAgIGtlcm5lbF9yZXNbImxhbmd1YWdlX2luZm8iXVsibmFtZSJd ID0gbGFuZ3VhZ2VfbmFtZTsKKysgICAgICAgIGtlcm5lbF9yZXNbImxhbmd1YWdlX2luZm8iXVsi dmVyc2lvbiJdID0gbGFuZ3VhZ2VfdmVyc2lvbjsKKysgICAgICAgIGtlcm5lbF9yZXNbImxhbmd1 YWdlX2luZm8iXVsibWltZXR5cGUiXSA9IGxhbmd1YWdlX21pbWV0eXBlOworKyAgICAgICAga2Vy bmVsX3Jlc1sibGFuZ3VhZ2VfaW5mbyJdWyJmaWxlX2V4dGVuc2lvbiJdID0gbGFuZ3VhZ2VfZmls ZV9leHRlbnNpb247CisrICAgICAgICBrZXJuZWxfcmVzWyJsYW5ndWFnZV9pbmZvIl1bInB5Z21l bnRzX2xleGVyIl0gPSBsYW5ndWFnZV9weWdtZW50c19sZXhlcjsKKysgICAgICAgIGtlcm5lbF9y ZXNbImxhbmd1YWdlX2luZm8iXVsiY29kZW1pcnJvcl9tb2RlIl0gPSBsYW5ndWFnZV9jb2RlbWly cm9yX21vZGU7CisrICAgICAgICBrZXJuZWxfcmVzWyJsYW5ndWFnZV9pbmZvIl1bIm5iY29udmVy dF9leHBvcnRlciJdID0gbGFuZ3VhZ2VfbmJjb252ZXJ0X2V4cG9ydGVyOworKyAgICAgICAga2Vy bmVsX3Jlc1siYmFubmVyIl0gPSBiYW5uZXI7CisrICAgICAgICBrZXJuZWxfcmVzWyJkZWJ1Z2dl ciJdID0gZGVidWdnZXI7CisrICAgICAgICBrZXJuZWxfcmVzWyJoZWxwX2xpbmtzIl0gPSBoZWxw X2xpbmtzOworKyAgICAgICAgcmV0dXJuIGtlcm5lbF9yZXM7CisrICAgIH0KKysKKyt9CisrCitk aWZmIC0tZ2l0IGEvdGVzdC9DTWFrZUxpc3RzLnR4dCBiL3Rlc3QvQ01ha2VMaXN0cy50eHQKK2lu ZGV4IGIyNGEzZTUuLjE3NmVmMmEgMTAwNjQ0CistLS0gYS90ZXN0L0NNYWtlTGlzdHMudHh0Cisr KysgYi90ZXN0L0NNYWtlTGlzdHMudHh0CitAQCAtODQsNyArODQsNyBAQCBlbmRpZiAoKQorIGZv cmVhY2goZmlsZW5hbWUgSU4gTElTVFMgWEVVU19URVNUUykKKyAgICAgZ2V0X2ZpbGVuYW1lX2Nv bXBvbmVudCh0YXJnZXRuYW1lICR7ZmlsZW5hbWV9IE5BTUVfV0UpCisgCistICAgIGFkZF9leGVj dXRhYmxlKCR7dGFyZ2V0bmFtZX0gdGVzdF9tYWluLmNwcCAke2ZpbGVuYW1lfSkKKysgICAgYWRk X2V4ZWN1dGFibGUoJHt0YXJnZXRuYW1lfSB0ZXN0X21haW4uY3BwICR7ZmlsZW5hbWV9IHRlc3Rf aW50ZXJwcmV0ZXIuY3BwKQorICAgICB0YXJnZXRfbGlua19saWJyYXJpZXMoJHt0YXJnZXRuYW1l fSBQUklWQVRFICR7eGV1c19UQVJHRVR9IGRvY3Rlc3Q6OmRvY3Rlc3QgVGhyZWFkczo6VGhyZWFk cyAke25sb2htYW5uX2pzb25fVEFSR0VUfSkKKyAgICAgYWRkX3Rlc3QoTkFNRSAke3RhcmdldG5h bWV9IENPTU1BTkQgJHt0YXJnZXRuYW1lfSkKKyBlbmRmb3JlYWNoKCkKK0BAIC0xNzksMyArMTc5 LDQgQEAgYWRkX3Rlc3QoTkFNRSB0ZXN0X2tlcm5lbF9zaGVsbAorIHNldF90ZXN0c19wcm9wZXJ0 aWVzKHRlc3Rfa2VybmVsX3NoZWxsCisgICAgIFBST1BFUlRJRVMKKyAgICAgRU5WSVJPTk1FTlQg IkpVUFlURVJfUEFUSD0ke0NNQUtFX0NVUlJFTlRfQklOQVJZX0RJUn0iKQorKworZGlmZiAtLWdp dCBhL3Rlc3QvdGVzdF9pbnRlcnByZXRlci5jcHAgYi90ZXN0L3Rlc3RfaW50ZXJwcmV0ZXIuY3Bw CitpbmRleCBkZDc0OTFlLi5mMDFhYWM5IDEwMDY0NAorLS0tIGEvdGVzdC90ZXN0X2ludGVycHJl dGVyLmNwcAorKysrIGIvdGVzdC90ZXN0X2ludGVycHJldGVyLmNwcAorQEAgLTExLDYgKzExLDgg QEAKKyAjaW5jbHVkZSAibmxvaG1hbm4vanNvbi5ocHAiCisgCisgI2luY2x1ZGUgInRlc3RfaW50 ZXJwcmV0ZXIuaHBwIgorKworKyNpbmNsdWRlICJ4ZXVzL3hoZWxwZXIuaHBwIgorICNpbmNsdWRl ICJ4ZXVzL3hndWlkLmhwcCIKKyAKKyBuYW1lc3BhY2UgbmwgPSBubG9obWFubjsKK0BAIC0zNCw4 ICszNiw2IEBAIG5hbWVzcGFjZSB0ZXN0X2tlcm5lbAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBubDo6anNvbiAvKiB1c2VyX2V4cHJlc3Npb25z ICovLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBib29sIC8qIGFsbG93X3N0ZGluICovKQorICAgICB7CistICAgICAgICBubDo6anNvbiBrZXJu ZWxfcmVzOworLQorICAgICAgICAgaWYgKGNvZGUuY29tcGFyZSgiaGVsbG8sIHdvcmxkIikgPT0g MCkKKyAgICAgICAgIHsKKyAgICAgICAgICAgICBwdWJsaXNoX3N0cmVhbSgic3Rkb3V0IiwgY29k ZSk7CitAQCAtNDksNjIgKzQ5LDQ0IEBAIG5hbWVzcGFjZSB0ZXN0X2tlcm5lbAorICAgICAgICAg aWYgKGNvZGUuY29tcGFyZSgiPyIpID09IDApCisgICAgICAgICB7CisgICAgICAgICAgICAgc3Rk OjpzdHJpbmcgaHRtbF9jb250ZW50ID0gUiIoPGlmcmFtZSBjbGFzcz0ieHB5dC1pZnJhbWUtcGFn ZXIiIHNyYz0iCistICAgICAgICAgICAgICAgIGh0dHBzOi8veGV1cy5yZWFkdGhlZG9jcy5pbyI+ PC9pZnJhbWU+KSI7CistCistICAgICAgICAgICAga2VybmVsX3Jlc1sic3RhdHVzIl0gPSAib2si OworLSAgICAgICAgICAgIGtlcm5lbF9yZXNbInBheWxvYWQiXSA9IG5sOjpqc29uOjphcnJheSgp OworLSAgICAgICAgICAgIGtlcm5lbF9yZXNbInBheWxvYWQiXVswXSA9IG5sOjpqc29uOjpvYmpl Y3QoeworLSAgICAgICAgICAgICAgICB7ImRhdGEiLCB7CistICAgICAgICAgICAgICAgICAgICB7 InRleHQvcGxhaW4iLCAiaHR0cHM6Ly94ZXVzLnJlYWR0aGVkb2NzLmlvIn0sCistICAgICAgICAg ICAgICAgICAgICB7InRleHQvaHRtbCIsIGh0bWxfY29udGVudH19CistICAgICAgICAgICAgICAg IH0sCistICAgICAgICAgICAgICAgIHsic291cmNlIiwgInBhZ2UifSwKKy0gICAgICAgICAgICAg ICAgeyJzdGFydCIsIDB9CistICAgICAgICAgICAgfSk7CistICAgICAgICAgICAga2VybmVsX3Jl c1sidXNlcl9leHByZXNzaW9ucyJdID0gbmw6Ompzb246Om9iamVjdCgpOworLQorLSAgICAgICAg ICAgIHJldHVybiBrZXJuZWxfcmVzOworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgaHR0cHM6Ly94ZXVzLnJlYWR0aGVkb2NzLmlvIj48L2lmcmFtZT4pIjsKKysK KysgICAgICAgICAgICBhdXRvIHBheWxvYWQgPSBubDo6anNvbjo6YXJyYXkoKTsKKysgICAgICAg ICAgICBwYXlsb2FkWzBdID0gbmw6Ompzb246Om9iamVjdCh7CisrICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHsiZGF0YSIsIHsKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsi dGV4dC9wbGFpbiIsICJodHRwczovL3hldXMucmVhZHRoZWRvY3MuaW8ifSwKKysgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHsidGV4dC9odG1sIiwgaHRtbF9jb250ZW50fX0KKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfSwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg eyJzb3VyY2UiLCAicGFnZSJ9LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICB7InN0YXJ0 IiwgMH0KKysgICAgICAgICAgICAgICAgICAgICAgICB9KTsKKysKKysgICAgICAgICAgICByZXR1 cm4geGV1czo6Y3JlYXRlX3N1Y2Nlc3NmdWxfcmVwbHkocGF5bG9hZCk7CisgICAgICAgICB9Cisg CisgICAgICAgICBubDo6anNvbiBwdWJfZGF0YTsKKyAgICAgICAgIHB1Yl9kYXRhWyJ0ZXh0L3Bs YWluIl0gPSBjb2RlOworLSAgICAgICAgcHVibGlzaF9leGVjdXRpb25fcmVzdWx0KGV4ZWN1dGlv bl9jb3VudGVyLCBzdGQ6Om1vdmUocHViX2RhdGEpLCBubDo6anNvbigpKTsKKysgICAgICAgIHB1 Ymxpc2hfZXhlY3V0aW9uX3Jlc3VsdChleGVjdXRpb25fY291bnRlciwgc3RkOjptb3ZlKHB1Yl9k YXRhKSwgbmw6Ompzb246Om9iamVjdCgpKTsKKyAKKy0gICAgICAgIGtlcm5lbF9yZXNbInN0YXR1 cyJdID0gIm9rIjsKKy0gICAgICAgIGtlcm5lbF9yZXNbInBheWxvYWQiXSA9IG5sOjpqc29uOjph cnJheSgpOworLSAgICAgICAga2VybmVsX3Jlc1sidXNlcl9leHByZXNzaW9ucyJdID0gbmw6Ompz b246Om9iamVjdCgpOworLQorLSAgICAgICAgcmV0dXJuIGtlcm5lbF9yZXM7CisrICAgICAgICBy ZXR1cm4geGV1czo6Y3JlYXRlX3N1Y2Nlc3NmdWxfcmVwbHkoKTsKKyAgICAgfQorIAorICAgICBu bDo6anNvbiB0ZXN0X2ludGVycHJldGVyOjpjb21wbGV0ZV9yZXF1ZXN0X2ltcGwoY29uc3Qgc3Rk OjpzdHJpbmcmIC8qIGNvZGUgKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnQgLyogY3Vyc29yX3BvcyAqLykKKyAgICAgeworLSAgICAg ICAgbmw6Ompzb24gcmVzdWx0OworLSAgICAgICAgcmVzdWx0WyJzdGF0dXMiXSA9ICJvayI7Cist ICAgICAgICByZXN1bHRbIm1hdGNoZXMiXSA9IHsiYS50ZXN0MSIsICJhLnRlc3QyIn07CistICAg ICAgICByZXN1bHRbImN1cnNvcl9zdGFydCJdID0gMjsKKy0gICAgICAgIHJlc3VsdFsiY3Vyc29y X2VuZCJdID0gNjsKKy0KKy0gICAgICAgIHJldHVybiByZXN1bHQ7CisrICAgICAgICByZXR1cm4g eGV1czo6Y3JlYXRlX2NvbXBsZXRlX3JlcGx5KHsiYS50ZXN0MSIsICJhLnRlc3QyIn0sIDIsIDYp OworICAgICB9CisgCisgICAgIG5sOjpqc29uIHRlc3RfaW50ZXJwcmV0ZXI6Omluc3BlY3RfcmVx dWVzdF9pbXBsKGNvbnN0IHN0ZDo6c3RyaW5nJiAvKiBjb2RlICovLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgLyogY3Vyc29yX3BvcyAq LywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg aW50IC8qIGRldGFpbF9sZXZlbCAqLykKKyAgICAgeworLSAgICAgICAgbmw6Ompzb24gcmVzdWx0 OworLSAgICAgICAgcmVzdWx0WyJzdGF0dXMiXSA9ICJvayI7CistICAgICAgICByZXN1bHRbImZv dW5kIl0gPSB0cnVlOworLSAgICAgICAgcmVzdWx0WyJkYXRhIl0gPSB7eyJ0ZXh0L3BsYWluIiwg IiJ9fTsKKy0gICAgICAgIHJlc3VsdFsibWV0YWRhdGEiXSA9IHt7InRleHQvcGxhaW4iLCAiIn19 OworLSAgICAgICAgcmV0dXJuIHJlc3VsdDsKKysgICAgICAgIHJldHVybiB4ZXVzOjpjcmVhdGVf aW5zcGVjdF9yZXBseSh0cnVlLCB7eyJ0ZXh0L3BsYWluIiwgIiJ9fSwge3sidGV4dC9wbGFpbiIs ICIifX0pOworICAgICB9CisgCisgICAgIG5sOjpqc29uIHRlc3RfaW50ZXJwcmV0ZXI6OmlzX2Nv bXBsZXRlX3JlcXVlc3RfaW1wbChjb25zdCBzdGQ6OnN0cmluZyYgY29kZSkKKyAgICAgeworLSAg ICAgICAgbmw6Ompzb24gcmVzdWx0OworLSAgICAgICAgcmVzdWx0WyJzdGF0dXMiXSA9IGNvZGU7 CisrICAgICAgICBubDo6anNvbiByZXN1bHQgPSB4ZXVzOjpjcmVhdGVfaXNfY29tcGxldGVfcmVw bHkoY29kZSk7CisgICAgICAgICBpZiAoY29kZS5jb21wYXJlKCJpbmNvbXBsZXRlIikgPT0gMCkK KyAgICAgICAgIHsKKyAgICAgICAgICAgICByZXN1bHRbImluZGVudCJdID0gIiAgICI7CitAQCAt MTE0LDE1ICs5NiwxNyBAQCBuYW1lc3BhY2UgdGVzdF9rZXJuZWwKKyAKKyAgICAgbmw6Ompzb24g dGVzdF9pbnRlcnByZXRlcjo6a2VybmVsX2luZm9fcmVxdWVzdF9pbXBsKCkKKyAgICAgeworLSAg ICAgICAgbmw6Ompzb24gcmVzdWx0OworLSAgICAgICAgcmVzdWx0WyJpbXBsZW1lbnRhdGlvbiJd ID0gImNwcF90ZXN0IjsKKy0gICAgICAgIHJlc3VsdFsiaW1wbGVtZW50YXRpb25fdmVyc2lvbiJd ID0gIjEuMC4wIjsKKy0gICAgICAgIHJlc3VsdFsiYmFubmVyIl0gPSAidGVzdF9rZXJuZWwiOwor LSAgICAgICAgcmVzdWx0WyJsYW5ndWFnZV9pbmZvIl1bIm5hbWUiXSA9ICJjcHAiOworLSAgICAg ICAgcmVzdWx0WyJsYW5ndWFnZV9pbmZvIl1bInZlcnNpb24iXSA9ICIxNC4wLjAiOworLSAgICAg ICAgcmVzdWx0WyJsYW5ndWFnZV9pbmZvIl1bIm1pbWV0eXBlIl0gPSAidGV4dC94LWMrK3NyYyI7 CistICAgICAgICByZXN1bHRbImxhbmd1YWdlX2luZm8iXVsiZmlsZV9leHRlbnNpb24iXSA9ICIu Y3BwIjsKKy0gICAgICAgIHJldHVybiByZXN1bHQ7CisrICAgICAgICByZXR1cm4geGV1czo6Y3Jl YXRlX2luZm9fcmVwbHkoIiIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgImNwcF90ZXN0IiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi MS4wLjAiLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjcHAiLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIxNC4wLjAiLAorKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0ZXh0L3gtYysrc3JjIiwKKysgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLmNwcCIsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIiIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIiIsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRlc3Rfa2Vy bmVsIik7CisgICAgIH0KKyAKKyAgICAgdm9pZCB0ZXN0X2ludGVycHJldGVyOjpzaHV0ZG93bl9y ZXF1ZXN0X2ltcGwoKQorZGlmZiAtLWdpdCBhL3Rlc3QvdGVzdF91bml0X2tlcm5lbC5jcHAgYi90 ZXN0L3Rlc3RfdW5pdF9rZXJuZWwuY3BwCitpbmRleCBlZTg3MDliLi43ODliYmM5IDEwMDY0NAor LS0tIGEvdGVzdC90ZXN0X3VuaXRfa2VybmVsLmNwcAorKysrIGIvdGVzdC90ZXN0X3VuaXRfa2Vy bmVsLmNwcAorQEAgLTksNjMgKzksMTEwIEBACisgI2luY2x1ZGUgImRvY3Rlc3QvZG9jdGVzdC5o IgorIAorICNpbmNsdWRlIDxzdHJpbmc+CistI2luY2x1ZGUgPGlvc3RyZWFtPgorKyNpbmNsdWRl IDxtZW1vcnk+CisgCisgI2luY2x1ZGUgIm5sb2htYW5uL2pzb24uaHBwIgorIAorKyNpbmNsdWRl ICJ0ZXN0X2ludGVycHJldGVyLmhwcCIKKysKKyAjaW5jbHVkZSAieGV1cy94a2VybmVsLmhwcCIK KyAjaW5jbHVkZSAieGV1cy94bWlkZGxld2FyZS5ocHAiCisgI2luY2x1ZGUgInhldXMveHN5c3Rl bS5ocHAiCisrI2luY2x1ZGUgInhldXMveGV1c19jb250ZXh0LmhwcCIKKysjaW5jbHVkZSAieGV1 cy94aGVscGVyLmhwcCIKKysjaW5jbHVkZSAieGV1cy94a2VybmVsX2NvbmZpZ3VyYXRpb24uaHBw IgorKyNpbmNsdWRlICJ4ZXVzL3hzZXJ2ZXJfem1xLmhwcCIKKyAKKyBuYW1lc3BhY2UgbmwgPSBu bG9obWFubjsKKyAKKyBuYW1lc3BhY2UgeGV1cworIHsKKy0gICAgVEVTVF9TVUlURSgia2VybmVs IikgeworLQorLSAgICBURVNUX0NBU0UoImdldF91c2VybmFtZSIpCisrICAgIFRFU1RfU1VJVEUo Imtlcm5lbCIpCisgICAgIHsKKy0gICAgICAgIHN0ZDo6c3RyaW5nIHVzZXJuYW1lOworLSAgICAg ICAgdXNlcm5hbWUgPSBnZXRfdXNlcl9uYW1lKCk7CistICAgICAgICBSRVFVSVJFX05FKHVzZXJu YW1lLCAidW5zcGVjaWZpZWQgdXNlciIpOworLSAgICB9CisrICAgICAgICBURVNUX0NBU0UoInBy aW50X3N0YXJ0aW5nX21lc3NhZ2UiKQorKyAgICAgICAgeworKyAgICAgICAgICAgIGF1dG8gY29u dGV4dCA9IG1ha2VfY29udGV4dDx6bXE6OmNvbnRleHRfdD4oKTsKKyAKKy0gICAgVEVTVF9DQVNF KCJmaW5kX2ZyZWVfcG9ydCIpCistICAgIHsKKy0gICAgICAgIHN0ZDo6c3RyaW5nIHBvcnQgPSBm aW5kX2ZyZWVfcG9ydCgpOworLSAgICAgICAgUkVRVUlSRV9ORShwb3J0LCAiIik7CistICAgICAg ICBSRVFVSVJFX0VRKHBvcnQubGVuZ3RoKCksIHN0ZDo6c2l6ZV90KDUpKTsKKy0gICAgfQorKyAg ICAgICAgICAgIHVzaW5nIGludGVycHJldGVyX3B0ciA9IHN0ZDo6dW5pcXVlX3B0cjx0ZXN0X2tl cm5lbDo6dGVzdF9pbnRlcnByZXRlcj47CisrICAgICAgICAgICAgaW50ZXJwcmV0ZXJfcHRyIGlu dGVycHJldGVyID0gaW50ZXJwcmV0ZXJfcHRyKG5ldyB0ZXN0X2tlcm5lbDo6dGVzdF9pbnRlcnBy ZXRlcigpKTsKKysgICAgICAgICAgICB4a2VybmVsIGtlcm5lbChnZXRfdXNlcl9uYW1lKCksCisr ICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZDo6bW92ZShjb250ZXh0KSwKKysgICAgICAgICAg ICAgICAgICAgICAgICAgc3RkOjptb3ZlKGludGVycHJldGVyKSwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgbWFrZV94c2VydmVyX3ptcSk7CisrICAgICAgICAgICAgc3RkOjpzdHJpbmcga2Vy bmVsX2NvbmZpZyA9IHByaW50X3N0YXJ0aW5nX21lc3NhZ2Uoa2VybmVsLmdldF9jb25maWcoKSk7 CisrICAgICAgICAgICAgc3RkOjpjb3V0IDw8IGtlcm5lbF9jb25maWcgPDwgc3RkOjplbmRsOwor KyAgICAgICAgICAgIHNpemVfdCBwb3MgPSBrZXJuZWxfY29uZmlnLmZpbmQoIlN0YXJ0aW5nIGtl cm5lbC4uLlxuIgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IlxuIgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIklmIHlv dSB3YW50IHRvIGNvbm5lY3QgdG8gdGhpcyBrZXJuZWwgZnJvbSBhbiBvdGhlciBjbGllbnQsIGp1 c3QgY29weSBhbmQgcGFzdGUgdGhlIGZvbGxvd2luZyBjb250ZW50IGluc2lkZSBvZiBhIGBrZXJu ZWwuanNvbmAgZmlsZS4gQW5kIHRoZW4gcnVuIGZvciBleGFtcGxlOlxuIgorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIlxuIgorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIiMganVweXRlciBjb25zb2xlIC0tZXhpc3Rpbmcg a2VybmVsLmpzb25cbiIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJcbiIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJr ZXJuZWwuanNvblxuIgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgImBgYFxuIgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IntcbiIKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIgICAg XCJ0cmFuc3BvcnRcIjogXCJ0Y3BcIixcbiIpOworKyAgICAgICAgICAgIFJFUVVJUkVfTkUocG9z LCBzdGQ6OnN0cmluZzo6bnBvcyk7CisrICAgICAgICB9CisgCistICAgIFRFU1RfQ0FTRSgidGVt cF9kaXJlY3RvcnlfcGF0aCIpCistICAgIHsKKy0gICAgICAgIHN0ZDo6c3RyaW5nIHBhdGggPSBn ZXRfdGVtcF9kaXJlY3RvcnlfcGF0aCgpOworLSAgICAgICAgc3RkOjpjb3V0IDw8ICJUZW1wb3Jh cnkgZGlyZWN0b3J5IHBhdGg6ICIgPDwgcGF0aCA8PCBzdGQ6OmVuZGw7CistICAgICAgICBSRVFV SVJFX05FKHBhdGgsICIiKTsKKy0gICAgICAgIFJFUVVJUkVfTkUocGF0aC5iYWNrKCksICcvJyk7 CistICAgICAgICBSRVFVSVJFX05FKHBhdGguYmFjaygpLCAnXFwnKTsKKy0gICAgfQorKyAgICAg ICAgVEVTVF9DQVNFKCJleHRyYWN0X2ZpbGVuYW1lIikKKysgICAgICAgIHsKKysgICAgICAgICAg ICBjaGFyKiBhcmd2WzJdOworKyAgICAgICAgICAgIGFyZ3ZbMF0gPSAoY2hhciopIi1mIjsKKysg ICAgICAgICAgICBhcmd2WzFdID0gKGNoYXIqKSJjb25uZWN0aW9uLmpzb24iOworKyAgICAgICAg ICAgIHN0ZDo6c3RyaW5nIGZpbGVfbmFtZSA9IGV4dHJhY3RfZmlsZW5hbWUoMywgYXJndik7Cisr ICAgICAgICAgICAgUkVRVUlSRV9FUShmaWxlX25hbWUsICJjb25uZWN0aW9uLmpzb24iKTsKKysg ICAgICAgIH0KKyAKKy0gICAgVEVTVF9DQVNFKCJjcmVhdGVfZGlyZWN0b3J5IikKKy0gICAgewor LSAgICAgICAgc3RkOjpzdHJpbmcgdGVtcF9wYXRoID0gZ2V0X3RlbXBfZGlyZWN0b3J5X3BhdGgo KTsKKy0gICAgICAgIHN0ZDo6c3RyaW5nIHBhdGggPSB0ZW1wX3BhdGggKyAiL2ludGVybWVkaWF0 ZS9sb2dzIjsKKy0gICAgICAgIGJvb2wgcmVzID0gY3JlYXRlX2RpcmVjdG9yeShwYXRoKTsKKy0g ICAgICAgIFJFUVVJUkVfVU5BUlkocmVzKTsKKy0gICAgfQorKyAgICAgICAgVEVTVF9DQVNFKCJz aG91bGRfcHJpbnRfdmVyc2lvbiIpCisrICAgICAgICB7CisrICAgICAgICAgICAgY2hhciogYXJn dlsyXTsKKysgICAgICAgICAgICBhcmd2WzBdID0gKGNoYXIqKSItLXZlcnNpb24iOworKyAgICAg ICAgICAgIFJFUVVJUkVfRVEoc2hvdWxkX3ByaW50X3ZlcnNpb24oMSwgYXJndiksIHRydWUpOwor KyAgICAgICAgfQorIAorLSAgICBURVNUX0NBU0UoImdldF9jdXJyZW50X3BpZCIpCistICAgIHsK Ky0gICAgICAgIGludCBwaWQgPSBnZXRfY3VycmVudF9waWQoKTsKKy0gICAgICAgIFJFUVVJUkVf TkUocGlkLCAtMSk7CistICAgIH0KKysgICAgICAgIFRFU1RfQ0FTRSgiZ2V0X3VzZXJuYW1lIikK KysgICAgICAgIHsKKysgICAgICAgICAgICBzdGQ6OnN0cmluZyB1c2VybmFtZTsKKysgICAgICAg ICAgICB1c2VybmFtZSA9IGdldF91c2VyX25hbWUoKTsKKysgICAgICAgICAgICBSRVFVSVJFX05F KHVzZXJuYW1lLCAidW5zcGVjaWZpZWQgdXNlciIpOworKyAgICAgICAgfQorIAorLSAgICBURVNU X0NBU0UoImdldF90bXBfaGFzaF9zZWVkIikKKy0gICAgeworLSAgICAgICAgc2l6ZV90IGhzID0g Z2V0X3RtcF9oYXNoX3NlZWQoKTsKKy0gICAgICAgIHNpemVfdCBleHBlY3RlZCA9IHN0YXRpY19j YXN0PHN0ZDo6c2l6ZV90PigweGM3MGY2OTA3VUwpOworLSAgICAgICAgUkVRVUlSRV9FUShocywg ZXhwZWN0ZWQpOworLSAgICB9CisrICAgICAgICBURVNUX0NBU0UoImZpbmRfZnJlZV9wb3J0IikK KysgICAgICAgIHsKKysgICAgICAgICAgICBzdGQ6OnN0cmluZyBwb3J0ID0gZmluZF9mcmVlX3Bv cnQoKTsKKysgICAgICAgICAgICBSRVFVSVJFX05FKHBvcnQsICIiKTsKKysgICAgICAgICAgICBS RVFVSVJFX0VRKHBvcnQubGVuZ3RoKCksIHN0ZDo6c2l6ZV90KDUpKTsKKysgICAgICAgIH0KKysK KysgICAgICAgIFRFU1RfQ0FTRSgidGVtcF9kaXJlY3RvcnlfcGF0aCIpCisrICAgICAgICB7Cisr ICAgICAgICAgICAgc3RkOjpzdHJpbmcgcGF0aCA9IGdldF90ZW1wX2RpcmVjdG9yeV9wYXRoKCk7 CisrICAgICAgICAgICAgc3RkOjpjb3V0IDw8ICJUZW1wb3JhcnkgZGlyZWN0b3J5IHBhdGg6ICIg PDwgcGF0aCA8PCBzdGQ6OmVuZGw7CisrICAgICAgICAgICAgUkVRVUlSRV9ORShwYXRoLCAiIik7 CisrICAgICAgICAgICAgUkVRVUlSRV9ORShwYXRoLmJhY2soKSwgJy8nKTsKKysgICAgICAgICAg ICBSRVFVSVJFX05FKHBhdGguYmFjaygpLCAnXFwnKTsKKysgICAgICAgIH0KKysKKysgICAgICAg IFRFU1RfQ0FTRSgiY3JlYXRlX2RpcmVjdG9yeSIpCisrICAgICAgICB7CisrICAgICAgICAgICAg c3RkOjpzdHJpbmcgdGVtcF9wYXRoID0gZ2V0X3RlbXBfZGlyZWN0b3J5X3BhdGgoKTsKKysgICAg ICAgICAgICBzdGQ6OnN0cmluZyBwYXRoID0gdGVtcF9wYXRoICsgIi9pbnRlcm1lZGlhdGUvbG9n cyI7CisrICAgICAgICAgICAgYm9vbCByZXMgPSBjcmVhdGVfZGlyZWN0b3J5KHBhdGgpOworKyAg ICAgICAgICAgIFJFUVVJUkVfRVEocmVzLCB0cnVlKTsKKysgICAgICAgIH0KKysKKysgICAgICAg IFRFU1RfQ0FTRSgiZ2V0X2N1cnJlbnRfcGlkIikKKysgICAgICAgIHsKKysgICAgICAgICAgICBp bnQgcGlkID0gZ2V0X2N1cnJlbnRfcGlkKCk7CisrICAgICAgICAgICAgUkVRVUlSRV9ORShwaWQs IC0xKTsKKysgICAgICAgIH0KKysKKysgICAgICAgIFRFU1RfQ0FTRSgiZ2V0X3RtcF9oYXNoX3Nl ZWQiKQorKyAgICAgICAgeworKyAgICAgICAgICAgIHNpemVfdCBocyA9IGdldF90bXBfaGFzaF9z ZWVkKCk7CisrICAgICAgICAgICAgc2l6ZV90IGV4cGVjdGVkID0gc3RhdGljX2Nhc3Q8c3RkOjpz aXplX3Q+KDB4YzcwZjY5MDdVTCk7CisrICAgICAgICAgICAgUkVRVUlSRV9FUShocywgZXhwZWN0 ZWQpOworKyAgICAgICAgfQorICAgICB9CisgfQorIAorLS0gCisyLjM2LjEKKwoKZGlmZiAtLWdp dCBhL3hldXMuc3BlYyBiL3hldXMuc3BlYwppbmRleCA1YzU1MWM2Li44MzQ2YTBhIDEwMDY0NAot LS0gYS94ZXVzLnNwZWMKKysrIGIveGV1cy5zcGVjCkBAIC02LDE0ICs2LDI1IEBAIFN1bW1hcnk6 ICAgICAgICBDKysgaW1wbGVtZW50YXRpb24gb2YgdGhlIEp1cHl0ZXIga2VybmVsIHByb3RvY29s CiBMaWNlbnNlOiAgICAgICAgQlNECiBVUkw6ICAgICAgICAgICAgaHR0cHM6Ly9naXRodWIuY29t L2p1cHl0ZXIteGV1cy94ZXVzCiBTb3VyY2UwOiAgICAgICAgaHR0cHM6Ly9naXRodWIuY29tL2p1 cHl0ZXIteGV1cy94ZXVzL2FyY2hpdmUvJXt2ZXJzaW9ufS8le25hbWV9LSV7dmVyc2lvbn0udGFy Lmd6CisjIEJhY2twb3J0IHRvIG1ha2UgZnVydGhlciBiYWNrcG9ydHMgZWFzaWVyCisjIGh0dHBz Oi8vZ2l0aHViLmNvbS9qdXB5dGVyLXhldXMveGV1cy9wdWxsLzI5MgorUGF0Y2g6ICAgICAgICAg IDAwMDEtc3dpdGNoZWQtZnJvbS1ndGVzdC10by1kb2N0ZXN0LTI5Mi5wYXRjaAorIyBodHRwczov L2dpdGh1Yi5jb20vanVweXRlci14ZXVzL3hldXMvcHVsbC8yOTgKK1BhdGNoOiAgICAgICAgICAw MDAyLU5ldmVyLWRlbGV0ZS1jb250ZXh0LWJlZm9yZS1zb2NrZXRzLnBhdGNoCisjIEJhY2twb3J0 IGEgcmVmYWN0b3IgdGhhdCBvbmx5IGFkZHMgQVBJLCBidXQgbGVhdmUgb3V0IHRoZSBkb2N1bWVu dGF0aW9uCisjIGNoYW5nZXMsIHBsdXMgYSBmZXcgbGF0ZXIgYnVnIGZpeGVzLgorIyBodHRwczov L2dpdGh1Yi5jb20vanVweXRlci14ZXVzL3hldXMvcHVsbC8yODUKKyMgaHR0cHM6Ly9naXRodWIu Y29tL2p1cHl0ZXIteGV1cy94ZXVzL3B1bGwvMzE0CisjIGh0dHBzOi8vZ2l0aHViLmNvbS9qdXB5 dGVyLXhldXMveGV1cy9wdWxsLzMxNQorUGF0Y2g6ICAgICAgICAgIDAwMDMtRml4LW5vbi1zdGFu ZGFyZC1tZXNzYWdlcy5wYXRjaAogCiBCdWlsZFJlcXVpcmVzOiAgY21ha2UgPj0gMy44CiBCdWls ZFJlcXVpcmVzOiAgY21ha2UoY3Bwem1xKSA+PSA0LjMuMAogQnVpbGRSZXF1aXJlczogIGNtYWtl KG5sb2htYW5uX2pzb24pID49IDMuMi4wCiBCdWlsZFJlcXVpcmVzOiAgY21ha2UoeHRsKSA+PSAw LjcKK0J1aWxkUmVxdWlyZXM6ICBkb2N0ZXN0LWRldmVsCiBCdWlsZFJlcXVpcmVzOiAgZG94eWdl bgogQnVpbGRSZXF1aXJlczogIGdjYy1jKysKLUJ1aWxkUmVxdWlyZXM6ICBndGVzdC1kZXZlbAog QnVpbGRSZXF1aXJlczogIGxpYnV1aWQtZGV2ZWwKIEJ1aWxkUmVxdWlyZXM6ICBtYWtlCiBCdWls ZFJlcXVpcmVzOiAgb3BlbnNzbC1kZXZlbCA+PSAxLjAuMQo=