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: Petr Lautrbach To: git-commits@fedoraproject.org Subject: [tests/selinux] pr775-checkpolicy-revdeps: Add tests from https://src.fedoraproject.org/rpms/libselinux/blob/master/f/tests Date: Fri, 11 Sep 2026 13:17:12 GMT Message-ID: <178913263211.1.18142702891004135010.tests-selinux-b8d8ea341ad5@fedoraproject.org> List-ID: X-Git-Repo: tests/selinux X-Git-Branch: pr775-checkpolicy-revdeps X-Git-Rev: b8d8ea341ad54f8f6b2a1402deaa8d21fb4322cc QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHRlc3RzL3NlbGludXgKQnJh bmNoIDogcHI3NzUtY2hlY2twb2xpY3ktcmV2ZGVwcwpDb21taXQgOiBiOGQ4ZWEzNDFhZDU0Zjhm NmIyYTE0MDJkZWFhOGQyMWZiNDMyMmNjCkF1dGhvciA6IFBldHIgTGF1dHJiYWNoIDxwbGF1dHJi YUByZWRoYXQuY29tPgpEYXRlICAgOiAyMDE4LTAyLTE0VDEzOjM5OjMwKzAxOjAwClN0YXRzICA6 ICszNTEzLy0wIGluIDQwIGZpbGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVj dC5vcmcvdGVzdHMvc2VsaW51eC9jL2I4ZDhlYTM0MWFkNTRmOGY2YjJhMTQwMmRlYWE4ZDIxZmI0 MzIyY2M/YnJhbmNoPXByNzc1LWNoZWNrcG9saWN5LXJldmRlcHMKCkxvZzoKQWRkIHRlc3RzIGZy b20gaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9saWJzZWxpbnV4L2Jsb2IvbWFz dGVyL2YvdGVzdHMKCi0tLQpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9nZXRzZWJvb2wvTWFrZWZp bGUgYi9saWJzZWxpbnV4L2dldHNlYm9vbC9NYWtlZmlsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwLi42ZGMxMWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9nZXRz ZWJvb2wvTWFrZWZpbGUKQEAgLTAsMCArMSw2NCBAQAorIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIE1h a2VmaWxlIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvZ2V0c2Vib29sCisjICAgRGVzY3Jp cHRpb246IERvZXMgZ2V0c2Vib29sIHdvcmsgYXMgZXhwZWN0ZWQ/CisjICAgQXV0aG9yOiBNaWxv cyBNYWxpayA8bW1hbGlrQHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgQ29w eXJpZ2h0IChjKSAyMDE3IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIGNvcHlyaWdodGVkIG1h dGVyaWFsIGlzIG1hZGUgYXZhaWxhYmxlIHRvIGFueW9uZSB3aXNoaW5nCisjICAgdG8gdXNlLCBt b2RpZnksIGNvcHksIG9yIHJlZGlzdHJpYnV0ZSBpdCBzdWJqZWN0IHRvIHRoZSB0ZXJtcworIyAg IGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9u IDIuCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg aXQgd2lsbCBiZQorIyAgIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQKKyMgICB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklU TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjICAgUFVSUE9TRS4gU2VlIHRoZSBHTlUgR2VuZXJhbCBQ dWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBzaG91bGQgaGF2ZSBy ZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworIyAgIExpY2Vuc2UgYWxv bmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyMgICBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAor IyAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitleHBv cnQgVEVTVD0vQ29yZU9TL2xpYnNlbGludXgvU2FuaXR5L2dldHNlYm9vbAorZXhwb3J0IFRFU1RW RVJTSU9OPTEuMAorCitCVUlMVF9GSUxFUz0KKworRklMRVM9JChNRVRBREFUQSkgcnVudGVzdC5z aCBNYWtlZmlsZSBQVVJQT1NFCisKKy5QSE9OWTogYWxsIGluc3RhbGwgZG93bmxvYWQgY2xlYW4K KworcnVuOiAkKEZJTEVTKSBidWlsZAorCS4vcnVudGVzdC5zaAorCitidWlsZDogJChCVUlMVF9G SUxFUykKKwl0ZXN0IC14IHJ1bnRlc3Quc2ggfHwgY2htb2QgYSt4IHJ1bnRlc3Quc2gKKworY2xl YW46CisJcm0gLWYgKn4gJChCVUlMVF9GSUxFUykKKworaW5jbHVkZSAvdXNyL3NoYXJlL3JodHMv bGliL3JodHMtbWFrZS5pbmNsdWRlCisKKyQoTUVUQURBVEEpOiBNYWtlZmlsZQorCUBlY2hvICJP d25lcjogICAgICAgICAgIE1pbG9zIE1hbGlrIDxtbWFsaWtAcmVkaGF0LmNvbT4iID4gJChNRVRB REFUQSkKKwlAZWNobyAiTmFtZTogICAgICAgICAgICAkKFRFU1QpIiA+PiAkKE1FVEFEQVRBKQor CUBlY2hvICJUZXN0VmVyc2lvbjogICAgICQoVEVTVFZFUlNJT04pIiA+PiAkKE1FVEFEQVRBKQor CUBlY2hvICJQYXRoOiAgICAgICAgICAgICQoVEVTVF9ESVIpIiA+PiAkKE1FVEFEQVRBKQorCUBl Y2hvICJEZXNjcmlwdGlvbjogICAgIERvZXMgZ2V0c2Vib29sIHdvcmsgYXMgZXhwZWN0ZWQ/IiA+ PiAkKE1FVEFEQVRBKQorCUBlY2hvICJUeXBlOiAgICAgICAgICAgIFNhbml0eSIgPj4gJChNRVRB REFUQSkKKwlAZWNobyAiVGVzdFRpbWU6ICAgICAgICA1bSIgPj4gJChNRVRBREFUQSkKKwlAZWNo byAiUnVuRm9yOiAgICAgICAgICBsaWJzZWxpbnV4IiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJS ZXF1aXJlczogICAgICAgIGxpYnNlbGludXgiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlByaW9y aXR5OiAgICAgICAgTm9ybWFsIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJMaWNlbnNlOiAgICAg ICAgIEdQTHYyIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJDb25maWRlbnRpYWw6ICAgIG5vIiA+ PiAkKE1FVEFEQVRBKQorCUBlY2hvICJEZXN0cnVjdGl2ZTogICAgIG5vIiA+PiAkKE1FVEFEQVRB KQorCUBlY2hvICJSZWxlYXNlczogICAgICAgIC1SSEVMNCAtUkhFTENsaWVudDUgLVJIRUxTZXJ2 ZXI1IiA+PiAkKE1FVEFEQVRBKQorCisJcmh0cy1saW50ICQoTUVUQURBVEEpCisKCmRpZmYgLS1n aXQgYS9saWJzZWxpbnV4L2dldHNlYm9vbC9QVVJQT1NFIGIvbGlic2VsaW51eC9nZXRzZWJvb2wv UFVSUE9TRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNmFmM2U0Ci0tLSAv ZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9nZXRzZWJvb2wvUFVSUE9TRQpAQCAtMCwwICsxLDUg QEAKK1BVUlBPU0Ugb2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9nZXRzZWJvb2wKK0F1dGhv cjogTWlsb3MgTWFsaWsgPG1tYWxpa0ByZWRoYXQuY29tPgorCitEb2VzIGdldHNlYm9vbCB3b3Jr IGFzIGV4cGVjdGVkPworCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9nZXRzZWJvb2wvcnVudGVz dC5zaCBiL2xpYnNlbGludXgvZ2V0c2Vib29sL3J1bnRlc3Quc2gKbmV3IGZpbGUgbW9kZSAxMDA3 NTUKaW5kZXggMDAwMDAwMC4uZGU2NGE2ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgv Z2V0c2Vib29sL3J1bnRlc3Quc2gKQEAgLTAsMCArMSw2OCBAQAorIyEvYmluL2Jhc2gKKyMgdmlt OiBkaWN0Kz0vdXNyL3NoYXJlL2JlYWtlcmxpYi9kaWN0aW9uYXJ5LnZpbSBjcHQ9Lix3LGIsdSx0 LGksaworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIHJ1bnRlc3Quc2ggb2YgL0NvcmVPUy9saWJzZWxp bnV4L1Nhbml0eS9nZXRzZWJvb2wKKyMgICBEZXNjcmlwdGlvbjogRG9lcyBnZXRzZWJvb2wgd29y ayBhcyBleHBlY3RlZD8KKyMgICBBdXRob3I6IE1pbG9zIE1hbGlrIDxtbWFsaWtAcmVkaGF0LmNv bT4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBDb3B5cmlnaHQgKGMpIDIwMTcgUmVkIEhhdCwg SW5jLgorIworIyAgIFRoaXMgY29weXJpZ2h0ZWQgbWF0ZXJpYWwgaXMgbWFkZSBhdmFpbGFibGUg dG8gYW55b25lIHdpc2hpbmcKKyMgICB0byB1c2UsIG1vZGlmeSwgY29weSwgb3IgcmVkaXN0cmli dXRlIGl0IHN1YmplY3QgdG8gdGhlIHRlcm1zCisjICAgYW5kIGNvbmRpdGlvbnMgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMi4KKyMKKyMgICBUaGlzIHByb2dyYW0g aXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlCisjICAgdXNlZnVsLCBi dXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZAorIyAgIHdh cnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyMg ICBQVVJQT1NFLiBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRl dGFpbHMuCisjCisjICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljCisjICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYg bm90LCB3cml0ZSB0byB0aGUgRnJlZQorIyAgIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4sIDUx IEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisjICAgQm9zdG9uLCBNQSAwMjExMC0xMzAx LCBVU0EuCisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKKyMgSW5jbHVkZSBCZWFrZXIgZW52aXJvbm1lbnQK Ky4gL3Vzci9zaGFyZS9iZWFrZXJsaWIvYmVha2VybGliLnNoIHx8IGV4aXQgMQorCitQQUNLQUdF PSJsaWJzZWxpbnV4IgoraWYgcmxJc1JIRUwgNSA2IDsgdGhlbgorICAgIFNFTElOVVhfRlNfTU9V TlQ9Ii9zZWxpbnV4IgorZWxzZSAjIFJIRUwtNyBhbmQgYWJvdmUKKyAgICBTRUxJTlVYX0ZTX01P VU5UPSIvc3lzL2ZzL3NlbGludXgiCitmaQorCitybEpvdXJuYWxTdGFydAorICAgIHJsUGhhc2VT dGFydFNldHVwCisgICAgICAgIHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0KKyAgICAgICAgcmxBc3Nl cnRScG0gJHtQQUNLQUdFfS11dGlscworICAgICAgICBybFJ1biAiZ2V0c2Vib29sIiAwLDEKKyAg ICAgICAgT1VUUFVUX0ZJTEU9YG1rdGVtcGAKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNl U3RhcnRUZXN0IAorICAgICAgICBybFJ1biAiZ2V0c2Vib29sIC1hIgorICAgICAgICBybFJ1biAi dW1vdW50ICR7U0VMSU5VWF9GU19NT1VOVH0iCisgICAgICAgIHJsUnVuICJnZXRzZWJvb2wgLWEg Mj4mMSB8IHRlZSAke09VVFBVVF9GSUxFfSIKKyAgICAgICAgcmxBc3NlcnRHcmVwICJzZWxpbnV4 LipkaXNhYmxlZCIgJHtPVVRQVVRfRklMRX0gLWkKKyAgICAgICAgcmxSdW4gIm1vdW50IC10IHNl bGludXhmcyBub25lICR7U0VMSU5VWF9GU19NT1VOVH0iCisgICAgICAgIHJsUnVuICJta2RpciBi b29sZWFucyIKKyAgICAgICAgcmxSdW4gIm1vdW50IC0tYmluZCAuL2Jvb2xlYW5zICR7U0VMSU5V WF9GU19NT1VOVH0vYm9vbGVhbnMiCisgICAgICAgIHJsUnVuICJnZXRzZWJvb2wgLWEgMj4mMSB8 IHRlZSAke09VVFBVVF9GSUxFfSIKKyAgICAgICAgcmxBc3NlcnRHcmVwICJ1bmFibGUgdG8gZ2V0 IGJvb2xlYW4gbmFtZS4qbm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeSIgJHtPVVRQVVRfRklMRX0g LWkKKyAgICAgICAgcmxSdW4gImdldHNlYm9vbCB4ZW5fdXNlX25mcyAyPiYxIHwgdGVlICR7T1VU UFVUX0ZJTEV9IgorICAgICAgICBybEFzc2VydEdyZXAgImVycm9yIGdldHRpbmcgYWN0aXZlIHZh bHVlIGZvciIgJHtPVVRQVVRfRklMRX0gLWkKKyAgICAgICAgcmxSdW4gInVtb3VudCAke1NFTElO VVhfRlNfTU9VTlR9L2Jvb2xlYW5zIgorICAgICAgICBybFJ1biAicm1kaXIgYm9vbGVhbnMiCisg ICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0Q2xlYW51cAorICAgICAgICBybSAtZiAk e09VVFBVVF9GSUxFfQorICAgIHJsUGhhc2VFbmQKK3JsSm91cm5hbFByaW50VGV4dAorcmxKb3Vy bmFsRW5kCisKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3JlYWxwYXRoX25vdF9maW5hbC1mdW5j dGlvbi9NYWtlZmlsZSBiL2xpYnNlbGludXgvcmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9uL01h a2VmaWxlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmIwYWY4OTEKLS0tIC9k ZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3JlYWxwYXRoX25vdF9maW5hbC1mdW5jdGlvbi9NYWtl ZmlsZQpAQCAtMCwwICsxLDYzIEBACisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgTWFrZWZpbGUgb2Yg L0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9yZWFscGF0aF9ub3RfZmluYWwtZnVuY3Rpb24KKyMg ICBEZXNjcmlwdGlvbjogVGVzdCByZWFscGF0aF9ub3RfZmluYWwgZnVuY3Rpb24KKyMgICBBdXRo b3I6IEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMK KyMgICBDb3B5cmlnaHQgKGMpIDIwMTYgUmVkIEhhdCwgSW5jLgorIworIyAgIFRoaXMgcHJvZ3Jh bSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyMgICBt b2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSBhcworIyAgIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRo ZXIgdmVyc2lvbiAyIG9mCisjICAgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZQorIyAgIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQKKyMgICB3YXJyYW50eSBvZiBNRVJDSEFOVEFC SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjICAgUFVSUE9TRS4gIFNlZSB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgICBZb3Ug c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZQorIyAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3QsIHNlZSBodHRwOi8vd3d3 LmdudS5vcmcvbGljZW5zZXMvLgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCitleHBvcnQgVEVTVD0vQ29y ZU9TL2xpYnNlbGludXgvU2FuaXR5L3JlYWxwYXRoX25vdF9maW5hbC1mdW5jdGlvbgorZXhwb3J0 IFRFU1RWRVJTSU9OPTEuMAorCitCVUlMVF9GSUxFUz0KKworRklMRVM9JChNRVRBREFUQSkgcnVu dGVzdC5zaCBNYWtlZmlsZSBQVVJQT1NFIHRlc3QqLmMKKworLlBIT05ZOiBhbGwgaW5zdGFsbCBk b3dubG9hZCBjbGVhbgorCitydW46ICQoRklMRVMpIGJ1aWxkCisJLi9ydW50ZXN0LnNoCisKK2J1 aWxkOiAkKEJVSUxUX0ZJTEVTKQorCXRlc3QgLXggcnVudGVzdC5zaCB8fCBjaG1vZCBhK3ggcnVu dGVzdC5zaAorCitjbGVhbjoKKwlybSAtZiAqfiAkKEJVSUxUX0ZJTEVTKQorCisKK2luY2x1ZGUg L3Vzci9zaGFyZS9yaHRzL2xpYi9yaHRzLW1ha2UuaW5jbHVkZQorCiskKE1FVEFEQVRBKTogTWFr ZWZpbGUKKwlAZWNobyAiT3duZXI6ICAgICAgICAgICBKYW4gWmFyc2t5IDxqemFyc2t5QHJlZGhh dC5jb20+IiA+ICQoTUVUQURBVEEpCisJQGVjaG8gIk5hbWU6ICAgICAgICAgICAgJChURVNUKSIg Pj4gJChNRVRBREFUQSkKKwlAZWNobyAiVGVzdFZlcnNpb246ICAgICAkKFRFU1RWRVJTSU9OKSIg Pj4gJChNRVRBREFUQSkKKwlAZWNobyAiUGF0aDogICAgICAgICAgICAkKFRFU1RfRElSKSIgPj4g JChNRVRBREFUQSkKKwlAZWNobyAiRGVzY3JpcHRpb246ICAgICBUZXN0IHJlYWxwYXRoX25vdF9m aW5hbCBmdW5jdGlvbiIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiVHlwZTogICAgICAgICAgICBT YW5pdHkiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlRlc3RUaW1lOiAgICAgICAgNW0iID4+ICQo TUVUQURBVEEpCisJQGVjaG8gIlJ1bkZvcjogICAgICAgICAgbGlic2VsaW51eCIgPj4gJChNRVRB REFUQSkKKwlAZWNobyAiUmVxdWlyZXM6ICAgICAgICBsaWJzZWxpbnV4IGxpYnNlbGludXgtZGV2 ZWwgZ2xpYmMgZ2NjIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJQcmlvcml0eTogICAgICAgIE5v cm1hbCIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiTGljZW5zZTogICAgICAgICBHUEx2MisiID4+ ICQoTUVUQURBVEEpCisJQGVjaG8gIkNvbmZpZGVudGlhbDogICAgbm8iID4+ICQoTUVUQURBVEEp CisJQGVjaG8gIkRlc3RydWN0aXZlOiAgICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJl bGVhc2VzOiAgICAgICAgLVJIRUw0IC1SSEVMQ2xpZW50NSAtUkhFTFNlcnZlcjUgLVJIRUw2IiA+ PiAkKE1FVEFEQVRBKQorCisJcmh0cy1saW50ICQoTUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGli c2VsaW51eC9yZWFscGF0aF9ub3RfZmluYWwtZnVuY3Rpb24vUFVSUE9TRSBiL2xpYnNlbGludXgv cmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9uL1BVUlBPU0UKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMC4uODMwNWQ3MAotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgvcmVh bHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9uL1BVUlBPU0UKQEAgLTAsMCArMSwzIEBACitQVVJQT1NF IG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvcmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9u CitEZXNjcmlwdGlvbjogVGVzdCByZWFscGF0aF9ub3RfZmluYWwgZnVuY3Rpb24KK0F1dGhvcjog SmFuIFphcnNreSA8anphcnNreUByZWRoYXQuY29tPgoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgv cmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9uL3J1bnRlc3Quc2ggYi9saWJzZWxpbnV4L3JlYWxw YXRoX25vdF9maW5hbC1mdW5jdGlvbi9ydW50ZXN0LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1Cmlu ZGV4IDAwMDAwMDAuLmU1ZTI0NzYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3JlYWxw YXRoX25vdF9maW5hbC1mdW5jdGlvbi9ydW50ZXN0LnNoCkBAIC0wLDAgKzEsNjYgQEAKKyMhL2Jp bi9iYXNoCisjIHZpbTogZGljdCs9L3Vzci9zaGFyZS9iZWFrZXJsaWIvZGljdGlvbmFyeS52aW0g Y3B0PS4sdyxiLHUsdCxpLGsKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBydW50ZXN0LnNoIG9mIC9D b3JlT1MvbGlic2VsaW51eC9TYW5pdHkvcmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0aW9uCisjICAg RGVzY3JpcHRpb246IFRlc3QgcmVhbHBhdGhfbm90X2ZpbmFsIGZ1bmN0aW9uCisjICAgQXV0aG9y OiBKYW4gWmFyc2t5IDxqemFyc2t5QHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisj ICAgQ29weXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisjICAgbW9k aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMKKyMgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVy IHZlcnNpb24gMiBvZgorIyAgIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBs YXRlciB2ZXJzaW9uLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUg aG9wZSB0aGF0IGl0IHdpbGwgYmUKKyMgICB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5U WTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkCisjICAgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklM SVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyAgIFBVUlBPU0UuICBTZWUgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjICAgWW91IHNo b3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UKKyMgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5n bnUub3JnL2xpY2Vuc2VzLy4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworIyBJbmNsdWRlIEJlYWtlciBl bnZpcm9ubWVudAorLiAvdXNyL3NoYXJlL2JlYWtlcmxpYi9iZWFrZXJsaWIuc2ggfHwgZXhpdCAx CisKK1BBQ0tBR0U9ImxpYnNlbGludXgiCisKK3JsSm91cm5hbFN0YXJ0CisgICAgcmxQaGFzZVN0 YXJ0U2V0dXAKKyAgICAgICAgcmxBc3NlcnRScG0gJHtQQUNLQUdFfQorICAgICAgICBybEFzc2Vy dFJwbSAke1BBQ0tBR0V9LWRldmVsCisgICAgICAgIHJsQXNzZXJ0UnBtICJnbGliYyIKKyAgICAg ICAgcmxBc3NlcnRScG0gImdjYyIKKworICAgICAgICBybFJ1biAtbCAiZ2NjIHRlc3QuYyAtbyB0 ZXN0IC1sc2VsaW51eCAtV2FsbCAtV2V4dHJhIC1zdGQ9Yzk5IgorICAgIHJsUGhhc2VFbmQKKwor ICAgIHJsUGhhc2VTdGFydFRlc3QKKyAgICAgICAgIyBzeW50YXg6IC4vdGVzdCBuYW1lIFtyZXNv bHZlZF9wYXRoXQorICAgICAgICBybFJ1biAiLi90ZXN0IE5VTEwiIDEzOQorICAgICAgICBybFJ1 biAiLi90ZXN0IC9zb21lZGlyL3NvbWVmaWxlIE5VTEwiIDI1NQorICAgICAgICBybFJ1biAiLi90 ZXN0IE5VTEwgTlVMTCIgMTM5CisKKyAgICAgICAgcmxSdW4gIi4vdGVzdCAvdG1wIHwgdGVlIG91 dHB1dCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3JlYWxwYXRoX25vdF9maW5hbDogL3RtcCcgb3V0 cHV0IgorCisgICAgICAgIHJsUnVuICIuL3Rlc3QgLy90bXAgfCB0ZWUgb3V0cHV0IgorICAgICAg ICBybFJ1biAiZ3JlcCAtRSAncmVhbHBhdGhfbm90X2ZpbmFsOiAvdG1wfHJlYWxwYXRoX25vdF9m aW5hbDogLy90bXAnIG91dHB1dCIKKworICAgICAgICBybFJ1biAiLi90ZXN0IC8vL3RtcCB8IHRl ZSBvdXRwdXQiCisgICAgICAgIHJsUnVuICJncmVwIC1FICdyZWFscGF0aF9ub3RfZmluYWw6IC90 bXB8cmVhbHBhdGhfbm90X2ZpbmFsOiAvL3RtcCcgb3V0cHV0IgorICAgICAgICAKKyAgICAgICAg cmxSdW4gIi4vdGVzdCAvLy8vdG1wIHwgdGVlIG91dHB1dCIKKyAgICAgICAgcmxSdW4gImdyZXAg LUUgJ3JlYWxwYXRoX25vdF9maW5hbDogL3RtcHxyZWFscGF0aF9ub3RfZmluYWw6IC8vdG1wJyBv dXRwdXQiCisgICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0Q2xlYW51cAorICAgICAg ICBybFJ1biAicm0gLWYgdGVzdCBvdXRwdXQiCisgICAgcmxQaGFzZUVuZAorcmxKb3VybmFsUHJp bnRUZXh0CitybEpvdXJuYWxFbmQKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3JlYWxwYXRoX25v dF9maW5hbC1mdW5jdGlvbi90ZXN0LmMgYi9saWJzZWxpbnV4L3JlYWxwYXRoX25vdF9maW5hbC1m dW5jdGlvbi90ZXN0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTgzM2Fj ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgvcmVhbHBhdGhfbm90X2ZpbmFsLWZ1bmN0 aW9uL3Rlc3QuYwpAQCAtMCwwICsxLDQ0IEBACisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRl IDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2lu Y2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgorI2luY2x1ZGUgPGxpbnV4L2xpbWl0cy5oPgorCitp bnQgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KSB7CisgICAgaWYgKGFyZ2MgPCAyKSB7Cisg ICAgICAgIHByaW50ZigiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAgICAg cmV0dXJuIC0xOworICAgIH0KKworICAgIGNoYXIgKm5hbWU7CisKKyAgICBpZiAoc3RyY21wKGFy Z3ZbMV0sICJOVUxMIikgPT0gMCkgeworICAgICAgICBuYW1lID0gTlVMTDsKKyAgICB9CisgICAg ZWxzZSB7CisgICAgICAgIG5hbWUgPSBhcmd2WzFdOworICAgIH0KKworICAgIGNoYXIgKnJlc29s dmVkX3BhdGg7CisKKyAgICBpZiAoYXJnYyA9PSAzICYmIChzdHJjbXAoYXJndlsxXSwgIk5VTEwi KSA9PSAwKSkgeworICAgICAgICByZXNvbHZlZF9wYXRoID0gTlVMTDsKKyAgICB9CisgICAgZWxz ZSB7CisgICAgICAgIHJlc29sdmVkX3BhdGggPSBtYWxsb2MoUEFUSF9NQVgpOworCisgICAgICAg IGlmIChyZXNvbHZlZF9wYXRoID09IE5VTEwpIHsKKyAgICAgICAgICAgIHByaW50ZigiRXJyb3Ig d2hpbGUgYWxsb2NhdGluZyBtZW1vcnlcbiIpOworICAgICAgICB9CisgICAgfQorCisgICAgcHJp bnRmKCJFeGVjdXRpbmc6IHJlYWxwYXRoX25vdF9maW5hbCglcywgcmVzb2x2ZWRfcGF0aClcbiIs IG5hbWUpOworCisgICAgaW50IHJlc3VsdCA9IHJlYWxwYXRoX25vdF9maW5hbChuYW1lLCByZXNv bHZlZF9wYXRoKTsKKworICAgIHByaW50ZigicmVhbHBhdGhfbm90X2ZpbmFsOiAlc1xuIiwgcmVz b2x2ZWRfcGF0aCk7CisKKyAgICBmcmVlKHJlc29sdmVkX3BhdGgpOworICAgIHJldHVybiByZXN1 bHQ7Cit9CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy9NYWtlZmls ZSBiL2xpYnNlbGludXgvc2VsYWJlbC1mdW5jdGlvbnMvTWFrZWZpbGUKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uNDYxMTJlZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGlu dXgvc2VsYWJlbC1mdW5jdGlvbnMvTWFrZWZpbGUKQEAgLTAsMCArMSw2MyBAQAorIyB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgorIworIyAgIE1ha2VmaWxlIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2VsYWJl bC1mdW5jdGlvbnMKKyMgICBEZXNjcmlwdGlvbjogVGVzdCBzZWxhYmVsIGZ1bmN0aW9ucworIyAg IEF1dGhvcjogSmFuIFphcnNreSA8anphcnNreUByZWRoYXQuY29tPgorIworIyB+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgorIworIyAgIENvcHlyaWdodCAoYykgMjAxNiBSZWQgSGF0LCBJbmMuCisjCisjICAgVGhpcyBw cm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgor IyAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzCisjICAgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IGVpdGhlciB2ZXJzaW9uIDIgb2YKKyMgICB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9u KSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlCisjICAgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZAorIyAgIHdhcnJhbnR5IG9mIE1FUkNI QU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyMgICBQVVJQT1NFLiAgU2Vl IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyAg IFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlCisjICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIGh0dHA6 Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uCisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKK2V4cG9ydCBURVNU PS9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2VsYWJlbC1mdW5jdGlvbnMKK2V4cG9ydCBURVNU VkVSU0lPTj0xLjAKKworQlVJTFRfRklMRVM9CisKK0ZJTEVTPSQoTUVUQURBVEEpIHJ1bnRlc3Qu c2ggTWFrZWZpbGUgUFVSUE9TRSB0ZXN0XyouYworCisuUEhPTlk6IGFsbCBpbnN0YWxsIGRvd25s b2FkIGNsZWFuCisKK3J1bjogJChGSUxFUykgYnVpbGQKKwkuL3J1bnRlc3Quc2gKKworYnVpbGQ6 ICQoQlVJTFRfRklMRVMpCisJdGVzdCAteCBydW50ZXN0LnNoIHx8IGNobW9kIGEreCBydW50ZXN0 LnNoCisKK2NsZWFuOgorCXJtIC1mICp+ICQoQlVJTFRfRklMRVMpCisKKworaW5jbHVkZSAvdXNy L3NoYXJlL3JodHMvbGliL3JodHMtbWFrZS5pbmNsdWRlCisKKyQoTUVUQURBVEEpOiBNYWtlZmls ZQorCUBlY2hvICJPd25lcjogICAgICAgICAgIEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNv bT4iID4gJChNRVRBREFUQSkKKwlAZWNobyAiTmFtZTogICAgICAgICAgICAkKFRFU1QpIiA+PiAk KE1FVEFEQVRBKQorCUBlY2hvICJUZXN0VmVyc2lvbjogICAgICQoVEVTVFZFUlNJT04pIiA+PiAk KE1FVEFEQVRBKQorCUBlY2hvICJQYXRoOiAgICAgICAgICAgICQoVEVTVF9ESVIpIiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJEZXNjcmlwdGlvbjogICAgIFRlc3Qgc2VsYWJlbCBmdW5jdGlvbnMi ID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlR5cGU6ICAgICAgICAgICAgU2FuaXR5IiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJUZXN0VGltZTogICAgICAgIDVtIiA+PiAkKE1FVEFEQVRBKQorCUBl Y2hvICJSdW5Gb3I6ICAgICAgICAgIGxpYnNlbGludXgiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlJlcXVpcmVzOiAgICAgICAgbGlic2VsaW51eCBsaWJzZWxpbnV4LWRldmVsIGdsaWJjIGdjYyIg Pj4gJChNRVRBREFUQSkKKwlAZWNobyAiUHJpb3JpdHk6ICAgICAgICBOb3JtYWwiID4+ICQoTUVU QURBVEEpCisJQGVjaG8gIkxpY2Vuc2U6ICAgICAgICAgR1BMdjIrIiA+PiAkKE1FVEFEQVRBKQor CUBlY2hvICJDb25maWRlbnRpYWw6ICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJEZXN0 cnVjdGl2ZTogICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJSZWxlYXNlczogICAgICAg IC1SSEVMNCAtUkhFTENsaWVudDUgLVJIRUxTZXJ2ZXI1IiA+PiAkKE1FVEFEQVRBKQorCisJcmh0 cy1saW50ICQoTUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0 aW9ucy9QVVJQT1NFIGIvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy9QVVJQT1NFCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhMDc2NDMKLS0tIC9kZXYvbnVsbAorKysg Yi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25zL1BVUlBPU0UKQEAgLTAsMCArMSwzIEBACitQ VVJQT1NFIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2VsYWJlbC1mdW5jdGlvbnMKK0Rl c2NyaXB0aW9uOiBUZXN0IHNlbGFiZWwgZnVuY3Rpb25zCitBdXRob3I6IEphbiBaYXJza3kgPGp6 YXJza3lAcmVkaGF0LmNvbT4KCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rp b25zL3J1bnRlc3Quc2ggYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25zL3J1bnRlc3Quc2gK bmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uNjRkNTkzZgotLS0gL2Rldi9udWxs CisrKyBiL2xpYnNlbGludXgvc2VsYWJlbC1mdW5jdGlvbnMvcnVudGVzdC5zaApAQCAtMCwwICsx LDg1OCBAQAorIyEvYmluL2Jhc2gKKyMgdmltOiBkaWN0Kz0vdXNyL3NoYXJlL2JlYWtlcmxpYi9k aWN0aW9uYXJ5LnZpbSBjcHQ9Lix3LGIsdSx0LGksaworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIHJ1 bnRlc3Quc2ggb2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxhYmVsLWZ1bmN0aW9ucwor IyAgIERlc2NyaXB0aW9uOiBUZXN0IHNlbGFiZWwgZnVuY3Rpb25zCisjICAgQXV0aG9yOiBKYW4g WmFyc2t5IDxqemFyc2t5QHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgQ29w eXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMgZnJl ZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisjICAgbW9kaWZ5IGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKKyMg ICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNp b24gMiBvZgorIyAgIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUKKyMgICB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkCisjICAgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9y IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyAgIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjICAgWW91IHNob3VsZCBo YXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMg ICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3Jn L2xpY2Vuc2VzLy4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworIyBJbmNsdWRlIEJlYWtlciBlbnZpcm9u bWVudAorLiAvdXNyL2Jpbi9yaHRzLWVudmlyb25tZW50LnNoIHx8IGV4aXQgMQorLiAvdXNyL3No YXJlL2JlYWtlcmxpYi9iZWFrZXJsaWIuc2ggfHwgZXhpdCAxCisKK1BBQ0tBR0U9ImxpYnNlbGlu dXgiCisKK3JsSm91cm5hbFN0YXJ0CisgICAgcmxQaGFzZVN0YXJ0U2V0dXAKKyAgICAgICAgcmxB c3NlcnRScG0gJHtQQUNLQUdFfQorICAgICAgICBybEFzc2VydFJwbSAke1BBQ0tBR0V9LWRldmVs CisgICAgICAgIHJsQXNzZXJ0UnBtICJnbGliYyIKKyAgICAgICAgcmxBc3NlcnRScG0gImdjYyIK KworICAgICAgICBpZiBybElzUkhFTCA2OyB0aGVuCisgICAgICAgICAgICBybFJ1biAtbCAiZ2Nj IHRlc3Rfb3Blbi5jIC1vIHRlc3Rfb3BlbiAtbHNlbGludXggLVdhbGwgLVdleHRyYSAtc3RkPWM5 OSAtRFJIRUw2IgorICAgICAgICAgICAgcmxSdW4gLWwgImdjYyB0ZXN0X2xvb2t1cC5jIC1vIHRl c3RfbG9va3VwIC1sc2VsaW51eCAtV2FsbCAtV2V4dHJhIC1zdGQ9Yzk5IC1EUkhFTDYiCisgICAg ICAgICAgICBybFJ1biAtbCAiZ2NjIHRlc3Rfc3RhdHMuYyAtbyB0ZXN0X3N0YXRzIC1sc2VsaW51 eCAtV2FsbCAtV2V4dHJhIC1zdGQ9Yzk5IC1EUkhFTDYiCisgICAgICAgIGVsc2UKKyAgICAgICAg ICAgIHJsUnVuIC1sICJnY2MgdGVzdF9vcGVuLmMgLW8gdGVzdF9vcGVuIC1sc2VsaW51eCAtV2Fs bCAtV2V4dHJhIC1zdGQ9Yzk5IgorICAgICAgICAgICAgcmxSdW4gLWwgImdjYyB0ZXN0X2xvb2t1 cC5jIC1vIHRlc3RfbG9va3VwIC1sc2VsaW51eCAtV2FsbCAtV2V4dHJhIC1zdGQ9Yzk5IgorICAg ICAgICAgICAgcmxSdW4gLWwgImdjYyB0ZXN0X3BhcnRpYWwuYyAtbyB0ZXN0X3BhcnRpYWwgLWxz ZWxpbnV4IC1XYWxsIC1XZXh0cmEgLXN0ZD1jOTkiCisgICAgICAgICAgICBybFJ1biAtbCAiZ2Nj IHRlc3RfYmVzdC5jIC1vIHRlc3RfYmVzdCAtbHNlbGludXggLVdhbGwgLVdleHRyYSAtc3RkPWM5 OSIKKyAgICAgICAgICAgIHJsUnVuIC1sICJnY2MgdGVzdF9zdGF0cy5jIC1vIHRlc3Rfc3RhdHMg LWxzZWxpbnV4IC1XYWxsIC1XZXh0cmEgLXN0ZD1jOTkiCisgICAgICAgICAgICBybFJ1biAtbCAi Z2NjIHRlc3RfZGlnZXN0LmMgLW8gdGVzdF9kaWdlc3QgLWxzZWxpbnV4IC1XYWxsIC1XZXh0cmEg LXN0ZD1jOTkiCisgICAgICAgIGZpCisKKyAgICAgICAgcmxSdW4gIlRtcERpcj1cJChta3RlbXAg LWQpIiAwICJDcmVhdGluZyB0bXAgZGlyZWN0b3J5IgorICAgIHJsUGhhc2VFbmQKKworICAgIHJs UGhhc2VTdGFydFRlc3QgInNlbGFiZWxfb3BlbiIKKyAgICAgICAgIyBzeW50YXg6IC4vdGVzdF9v cGVuIEJBQ0tFTkQgT1BUX1BBVEggT1BUX1NVQlNFVCBPUFRfVkFMSURBVEUgT1BUX0JBU0VPTkxZ IFtub3B0XQorCisgICAgICAgIHJsTG9nSW5mbyAiTm9ybWFsIHJ1biIKKyAgICAgICAgcmxSdW4g Ii4vdGVzdF9vcGVuIENUWF9GSUxFIE5VTEwgTlVMTCAwIDAiCisKKyAgICAgICAgcmxMb2dJbmZv ICJCYWNrZW5kcyIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9NRURJQSBOVUxMIE5V TEwgMCAwIiAwCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfWCBOVUxMIE5VTEwgMCAw IiAwCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfREIgTlVMTCBOVUxMIDAgMCIgMAor ICAgICAgICBpZiBybElzUkhFTCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAgICAg ICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDAgMCIg MAorICAgICAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIDUgTlVMTCBOVUxMIDAgMCIgMjIKKyAg ICAgICAgZmkKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIDIxNDc0ODM2NDcgTlVMTCBOVUxM IDAgMCIgMjIKKworICAgICAgICBybExvZ0luZm8gIlBhcmFtZXRlciBub3B0IgorICAgICAgICBy bFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgTlVMTCBOVUxMIDAgMCAyMTQ3NDgzNjQ3IiAyMiwx MzkKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9NRURJQSBOVUxMIE5VTEwgMCAwIDIx NDc0ODM2NDciIDIyLDEzOQorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX1ggTlVMTCBO VUxMIDAgMCAyMTQ3NDgzNjQ3IiAyMiwxMzkKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENU WF9EQiBOVUxMIE5VTEwgMCAwIDIxNDc0ODM2NDciIDIyLDEzOQorICAgICAgICBpZiBybElzUkhF TCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAgICAgICAgICAgcmxSdW4gIi4vdGVz dF9vcGVuIENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDAgMCAyMTQ3NDgzNjQ3IiAyMiwxMzkK KyAgICAgICAgZmkKKworICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgTlVMTCBO VUxMIDAgMCAxIgorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX01FRElBIE5VTEwgTlVM TCAwIDAgMSIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9YIE5VTEwgTlVMTCAwIDAg MSIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9EQiBOVUxMIE5VTEwgMCAwIDEiCisg ICAgICAgIGlmIHJsSXNSSEVMICI3IiB8fCBybElzRmVkb3JhICI8MjYiOyB0aGVuCisgICAgICAg ICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0FORFJPSURfUFJPUCBOVUxMIE5VTEwgMCAwIDEi CisgICAgICAgIGZpCisKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9GSUxFIE5VTEwg TlVMTCAwIDAgMCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9NRURJQSBOVUxMIE5V TEwgMCAwIDAiCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfWCBOVUxMIE5VTEwgMCAw IDAiCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfREIgTlVMTCBOVUxMIDAgMCAwIgor ICAgICAgICBpZiBybElzUkhFTCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAgICAg ICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDAgMCAw IgorICAgICAgICBmaQorCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfRklMRSBOVUxM IE5VTEwgMCAwIC0xIiAyMiwxMzkKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9NRURJ QSBOVUxMIE5VTEwgMCAwIC0xIiAyMiwxMzkKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENU WF9YIE5VTEwgTlVMTCAwIDAgLTEiIDIyLDEzOQorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4g Q1RYX0RCIE5VTEwgTlVMTCAwIDAgLTEiIDIyLDEzOQorICAgICAgICBpZiBybElzUkhFTCAiNyIg fHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAgICAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVu IENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDAgMCAtMSIgMjIsMTM5CisgICAgICAgIGZpCisK KyAgICAgICAgcmxMb2dJbmZvICJQYXRoIG9wdGlvbiIKKyAgICAgICAgcmxSdW4gImNhdCA+ICRU bXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK0VPRiIKKworICAgICAgICBybFJ1biAiLi90ZXN0X29w ZW4gQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCIKKyAgICAgICAgcmxSdW4g Ii4vdGVzdF9vcGVuIENUWF9NRURJQSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIgorICAg ICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAg MCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRz IE5VTEwgMCAwIgorICAgICAgICBpZiBybElzUkhFTCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2Ijsg dGhlbgorICAgICAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9BTkRST0lEX1BST1AgJFRt cERpci9teV9jb250ZXh0cyBOVUxMIDAgMCIKKyAgICAgICAgZmkKKworICAgICAgICBybFJ1biAi Li90ZXN0X29wZW4gQ1RYX0ZJTEUgL25vbmV4aXN0ZW50IE5VTEwgMCAwIiAyCisgICAgICAgIHJs UnVuICIuL3Rlc3Rfb3BlbiBDVFhfTUVESUEgL25vbmV4aXN0ZW50IE5VTEwgMCAwIiAyCisgICAg ICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfWCAvbm9uZXhpc3RlbnQgTlVMTCAwIDAiIDIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9EQiAvbm9uZXhpc3RlbnQgTlVMTCAwIDAiIDIK KyAgICAgICAgaWYgcmxJc1JIRUwgIjciIHx8IHJsSXNGZWRvcmEgIjwyNiI7IHRoZW4KKyAgICAg ICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfQU5EUk9JRF9QUk9QIC9ub25leGlzdGVudCBO VUxMIDAgMCIgMgorICAgICAgICBmaQorCisgICAgICAgIHJsTG9nSW5mbyAiU3Vic2V0IG9wdGlv biIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9GSUxFIE5VTEwgL2V0YyAwIDAiCisK KyAgICAgICAgcmxMb2dJbmZvICJCYXNlb25seSBvcHRpb24iCisgICAgICAgIHJsUnVuICIuL3Rl c3Rfb3BlbiBDVFhfRklMRSBOVUxMIE5VTEwgMCAxIgorCisgICAgICAgIHJsTG9nSW5mbyAiVmFs aWRhdGUgb3B0aW9uIgorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgTlVMTCBO VUxMIDEgMCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9NRURJQSBOVUxMIE5VTEwg MSAwIgorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX1ggTlVMTCBOVUxMIDEgMCIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9EQiBOVUxMIE5VTEwgMSAwIgorICAgICAgICBp ZiBybElzUkhFTCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAgICAgICAgICAgcmxS dW4gIi4vdGVzdF9vcGVuIENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDEgMCIKKyAgICAgICAg ZmkKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJzZWxhYmVsX2xvb2t1 cCBhbmQgc2VsYWJlbF9sb29rdXBfcmF3IgorICAgICAgICBybExvZ0luZm8gIkhhbmRsZSIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgTlVMTCBOVUxMIDAgMCBzb21lX2lu cHV0IDAgbm9oYW5kbGUiIDEzOQorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfTUVE SUEgTlVMTCBOVUxMIDAgMCBzb21lX2lucHV0IDAgbm9oYW5kbGUiIDEzOQorICAgICAgICBybFJ1 biAiLi90ZXN0X2xvb2t1cCBDVFhfWCBOVUxMIE5VTEwgMCAwIHNvbWVfaW5wdXQgMCBub2hhbmRs ZSIgMTM5CisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiBOVUxMIE5VTEwgMCAw IHNvbWVfaW5wdXQgMCBub2hhbmRsZSIgMTM5CisgICAgICAgIGlmIHJsSXNSSEVMICI3IiB8fCBy bElzRmVkb3JhICI8MjYiOyB0aGVuCisgICAgICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBD VFhfQU5EUk9JRF9QUk9QIE5VTEwgTlVMTCAwIDAgc29tZV9pbnB1dCAwIG5vaGFuZGxlIiAxMzkK KyAgICAgICAgZmkKKworICAgICAgICBybExvZ0luZm8gIlBhdGgiCisgICAgICAgIGlmIHJsSXNS SEVMIDY7IHRoZW4KKyAgICAgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9GSUxFIE5V TEwgTlVMTCAwIDAgTlVMTCAwIiAyLDEzOQorICAgICAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29r dXAgQ1RYX01FRElBIE5VTEwgTlVMTCAwIDAgTlVMTCAwIiAyLDEzOQorICAgICAgICAgICAgcmxS dW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggTlVMTCBOVUxMIDAgMCBOVUxMIDAiIDIsMTM5CisgICAg ICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgTlVMTCBOVUxMIDAgMCBOVUxMIDAi IDIsMTM5CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENU WF9GSUxFIE5VTEwgTlVMTCAwIDAgTlVMTCAwIiAyMgorICAgICAgICAgICAgcmxSdW4gIi4vdGVz dF9sb29rdXAgQ1RYX01FRElBIE5VTEwgTlVMTCAwIDAgTlVMTCAwIiAyMgorICAgICAgICAgICAg cmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggTlVMTCBOVUxMIDAgMCBOVUxMIDAiIDIyCisgICAg ICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgTlVMTCBOVUxMIDAgMCBOVUxMIDAi IDIyCisgICAgICAgICAgICAjIEFORFJPSURfUFJPUCBiYWNrZW5kIGRvZXMgbm90IHNldCBoYW5k bGUgYW5kIHJldHVybnMgTlVMTCBhcyBoYW5kbGUKKyAgICAgICAgICAgICMgKHNlZSB0ZXN0X2xv b2t1cC5jIGZvciBoYW5kbGluZyBOVUxMIGhhbmRsZSkKKyAgICAgICAgICAgIHJsUnVuICIuL3Rl c3RfbG9va3VwIENUWF9BTkRST0lEX1BST1AgTlVMTCBOVUxMIDAgMCBOVUxMIDAiIDI1NQorICAg ICAgICBmaQorICAgIHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VTdGFydFRlc3QgInZhbGlkYXRl IG9wdGlvbiIKKyAgICAgICAgcmxMb2dJbmZvICJJbnZhbGlkIGVudHJpZXMiCisgICAgICAgIHJs UnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitFT0YiCisgICAgICAgIHJsUnVu ICIuL3Rlc3Rfb3BlbiBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4o dGVlIG91dHB1dCA+JjIpIiAwCisgICAgICAgIHJsUnVuICJncmVwICdsaW5lJyBvdXRwdXQiIDEK KworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorb25lCitF T0YiCisgICAgICAgIGlmIHJsSXNSSEVMIDY7IHRoZW4KKyAgICAgICAgICAgIHJsUnVuICIuL3Rl c3Rfb3BlbiBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4odGVlIG91 dHB1dCA+JjIpIiAwCisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3Bl biBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4odGVlIG91dHB1dCA+ JjIpIiAyMgorICAgICAgICBmaQorICAgICAgICBybFJ1biAiZ3JlcCAnbGluZSAxIGlzIG1pc3Np bmcgZmllbGRzJyBvdXRwdXQiCisgICAgICAgIAorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERp ci9teV9jb250ZXh0cyA8PEVPRgorJFRtcERpciBteV91c2VyX3U6bXlfcm9sZV9yOm15X3R5cGVf dDpzMAorRU9GIgorICAgICAgICBpZiBybElzRmVkb3JhICI8MjciIHx8IHJsSXNSSEVMICI8PTci OyB0aGVuCisgICAgICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgJFRtcERpci9t eV9jb250ZXh0cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMAorICAgICAgICBlbHNl CisgICAgICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgJFRtcERpci9teV9jb250 ZXh0cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMjIKKyAgICAgICAgZmkKKyAgICAg ICAgcmxSdW4gImdyZXAgJ2xpbmUgMSBoYXMgaW52YWxpZCBjb250ZXh0IG15X3VzZXJfdTpteV9y b2xlX3I6bXlfdHlwZV90OnMwJyBvdXRwdXQiCisgICAgICAgIAorICAgICAgICBybFJ1biAiY2F0 ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorJFRtcERpciBpbnZhbGlkX2ZpbGVfdHlwZSBz eXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMAorRU9GIgorICAgICAgICBpZiBybElzUkhFTCA2OyB0 aGVuCisgICAgICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgJFRtcERpci9teV9j b250ZXh0cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMAorICAgICAgICBlbHNlCisg ICAgICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0 cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMjIKKyAgICAgICAgZmkKKyAgICAgICAg cmxSdW4gImdyZXAgJ2xpbmUgMSBoYXMgaW52YWxpZCBmaWxlIHR5cGUgaW52YWxpZF9maWxlX3R5 cGUnIG91dHB1dCIKKyAgICAgICAgCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2Nv bnRleHRzIDw8RU9GCiskVG1wRGlyIDw8bm9uZT4+CitFT0YiCisgICAgICAgIHJsUnVuICIuL3Rl c3Rfb3BlbiBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4odGVlIG91 dHB1dCA+JjIpIiAwCisgICAgICAgIHJsUnVuICJncmVwICdsaW5lIDEnIG91dHB1dCIgMQorICAg ICAgICAKKyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKyMk VG1wRGlyIHN5c3RlbV91Om9iamVjdF9yOnZhcl90OnMwCiskVG1wRGlyIHN5c3RlbV91Om9iamVj dF9yOnZhcl90OnMwIAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUg JFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMAorICAg ICAgICBybFJ1biAiZ3JlcCAnTXVsdGlwbGUgc2FtZSBzcGVjaWZpY2F0aW9ucycgb3V0cHV0IiAx CisKKyAgICAgICAgcmxMb2dJbmZvICJUd28gc2FtZSBydWxlcyBmb3IgdGhlIHNhbWUgcGF0aCIK KyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKyRUbXBEaXIg c3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAKKyRUbXBEaXIgc3lzdGVtX3U6b2JqZWN0X3I6dmFy X3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9vcGVuIENUWF9GSUxFICRUbXBEaXIv bXlfY29udGV4dHMgTlVMTCAxIDAgMj4gPih0ZWUgb3V0cHV0ID4mMikiIDIyCisgICAgICAgIHJs UnVuICJncmVwICdNdWx0aXBsZSBzYW1lIHNwZWNpZmljYXRpb25zJyBvdXRwdXQiCisKKyAgICAg ICAgcmxMb2dJbmZvICJUd28gZGlmZmVyZW50IHJ1bGVzIGZvciB0aGUgc2FtZSBwYXRoIgorICAg ICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorJFRtcERpciBzeXN0 ZW1fdTpvYmplY3RfcjpiaW5fdDpzMAorJFRtcERpciBzeXN0ZW1fdTpvYmplY3Rfcjp1c3JfdDpz MAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X29wZW4gQ1RYX0ZJTEUgJFRtcERpci9teV9j b250ZXh0cyBOVUxMIDEgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMjIKKyAgICAgICAgcmxSdW4g ImdyZXAgJ011bHRpcGxlIGRpZmZlcmVudCBzcGVjaWZpY2F0aW9ucycgb3V0cHV0IgorCisgICAg ICAgIHJsTG9nSW5mbyAiVHdvIGRpZmZlcmVudCBydWxlcyBmb3Igc2FtZSBwYXRoIGJ1dCB3aXRo IGRpZmZlcmVudCBmaWxlIHR5cGUiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2Nv bnRleHRzIDw8RU9GCiskVG1wRGlyIC0tIHN5c3RlbV91Om9iamVjdF9yOmJpbl90OnMwCiskVG1w RGlyIC1kIHN5c3RlbV91Om9iamVjdF9yOnVzcl90OnMwCitFT0YiCisgICAgICAgIHJsUnVuICIu L3Rlc3Rfb3BlbiBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4odGVl IG91dHB1dCA+JjIpIiAwCisgICAgICAgIHJsUnVuICJncmVwICdNdWx0aXBsZSBkaWZmZXJlbnQg c3BlY2lmaWNhdGlvbnMnIG91dHB1dCIgMQorCisgICAgICAgIHJsTG9nSW5mbyAiVHdvIGRpZmZl cmVudCBydWxlcyBmb3Igc2FtZSBwYXRoIG9uZSBnZW5lcmFsIGFuZCBvbmUgd2l0aCBmaWxlIHR5 cGUiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCiskVG1w RGlyIHN5c3RlbV91Om9iamVjdF9yOmJpbl90OnMwCiskVG1wRGlyIC0tIHN5c3RlbV91Om9iamVj dF9yOnVzcl90OnMwCitFT0YiCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfb3BlbiBDVFhfRklMRSAk VG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIDI+ID4odGVlIG91dHB1dCA+JjIpIiAyMgorICAg ICAgICBybFJ1biAiZ3JlcCAnTXVsdGlwbGUgZGlmZmVyZW50IHNwZWNpZmljYXRpb25zJyBvdXRw dXQiCisgICAgcmxQaGFzZUVuZAorCisgICAgaWYgcmxJc1JIRUwgIj49NyIgfHwgcmxJc0ZlZG9y YTsgdGhlbgorICAgIHJsUGhhc2VTdGFydFRlc3QgImZpbGUgY29udGV4dHMgZmlsZXMiCisgICAg ICAgIHJsTG9nSW5mbyAic3VicyBmaWxlIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9t eV9jb250ZXh0cyA8PEVPRgorJFRtcERpciBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMAorRU9G IgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cy5zdWJzIDw8RU9GCisv c29tZXBhdGggJFRtcERpcgorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhf RklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lcGF0aCAwIHwgdGVlIG91dHB1 dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVt X3U6b2JqZWN0X3I6dmFyX3Q6czAnIG91dHB1dCIgMAorICAgICAgICBybFJ1biAicm0gLWYgJFRt cERpci9teV9jb250ZXh0cy5zdWJzIgorICAgICAgICAKKyAgICAgICAgcmxMb2dJbmZvICJzdWJz X2Rpc3QgZmlsZSIKKyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxF T0YKKyRUbXBEaXIgc3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAKK0VPRiIKKyAgICAgICAgcmxS dW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMuc3Vic19kaXN0IDw8RU9GCisvc29tZXBhdGgg JFRtcERpcgorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1w RGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lcGF0aCAwIHwgdGVlIG91dHB1dCIgMAorICAg ICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0 X3I6dmFyX3Q6czAnIG91dHB1dCIgMAorICAgICAgICBybFJ1biAicm0gLWYgJFRtcERpci9teV9j b250ZXh0cy5zdWJzX2Rpc3QiCisKKyAgICAgICAgcmxMb2dJbmZvICJsb2NhbCBmaWxlIgorICAg ICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorRU9GIgorICAgICAg ICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cy5sb2NhbCA8PEVPRgorJFRtcERpciBz eXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xv b2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwICRUbXBEaXIgMCB8IHRl ZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6 IHN5c3RlbV91Om9iamVjdF9yOnZhcl90OnMwJyBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gInJt IC1mICRUbXBEaXIvbXlfY29udGV4dHMubG9jYWwiCisKKyAgICAgICAgcmxMb2dJbmZvICJob21l ZGlycyBmaWxlIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVP RgorRU9GIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cy5ob21lZGly cyA8PEVPRgorJFRtcERpciBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMAorRU9GIgorICAgICAg ICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwg MCAwICRUbXBEaXIgMCB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFi ZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnZhcl90OnMwJyBvdXRwdXQiIDAK KyAgICAgICAgcmxSdW4gInJtIC1mICRUbXBEaXIvbXlfY29udGV4dHMuaG9tZWRpcnMiCisKKyAg ICAgICAgcmxMb2dJbmZvICJOb3JtYWwgcnVuIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1 cCBDVFhfRklMRSBOVUxMIE5VTEwgMCAwIC9ub25leGlzdGVudCAwIHwgdGVlIG91dHB1dCIgMCBc CisgICAgICAgICAgICAiUnVuIHNlbGFiZWxfbG9va3VwIgorICAgICAgICBybFJ1biAiZ3JlcCAn c2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6ZXRjX3J1bnRpbWVfdDpz MCcgb3V0cHV0IiAwIFwKKyAgICAgICAgICAgICJDaGVjayBjb250ZXh0IHJldHVybmVkIGJ5IHNl bGFiZWxfbG9va3VwIgorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXBfcmF3IGNv bnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOmV0Y19ydW50aW1lX3Q6czAnIG91dHB1dCIgMCBcCisg ICAgICAgICAgICAiQ2hlY2sgY29udGV4dCByZXR1cm5lZCBieSBzZWxhYmVsX2xvb2t1cF9yYXci CisKKyAgICAgICAgcmxMb2dJbmZvICJDb250ZXh0IGlzIDw8bm9uZT4+IgorICAgICAgICBybFJ1 biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSBOVUxMIE5VTEwgMCAwIC90bXAvc29tZWZpbGUgMCAy PiA+KHRlZSBvdXRwdXQgPiYyKSIgMiBcCisgICAgICAgICAgICAiUnVuIHNlbGFiZWxfbG9va3Vw IG9uIGZpbGUgd2l0aCBkZWZhdWx0IGNvbnRleHQgPDxub25lPj4iCisgICAgICAgIHJsUnVuICJn cmVwICdzZWxhYmVsX2xvb2t1cCAtIEVSUk9SOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5JyBv dXRwdXQiIDAKKyAgICBybFBoYXNlRW5kCisgICAgZmkKKworICAgIHJsUGhhc2VTdGFydFRlc3Qg Im1lZGlhIGNvbnRleHRzIGZpbGVzIgorICAgICAgICBybExvZ0luZm8gIlZhbGlkIGVudHJpZXMi CisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitmbG9wcHkg c3lzdGVtX3U6b2JqZWN0X3I6dG1wX3Q6czAKK2Nkcm9tIHN5c3RlbV91Om9iamVjdF9yOnZhcl90 OnMwCitFT0YiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9NRURJQSAkVG1wRGly L215X2NvbnRleHRzIE5VTEwgMSAwIGZsb3BweSAwIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBy bFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dG1w X3Q6czAnIG91dHB1dCIKKworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0 cyA8PEVPRgorZmxvcHB5IHN5c3RlbV91Om9iamVjdF9yOnRtcF90OnMwCitmbG9wcHkgc3lzdGVt X3U6b2JqZWN0X3I6dmFyX3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAg Q1RYX01FRElBICRUbXBEaXIvbXlfY29udGV4dHMgTlVMTCAxIDAgZmxvcHB5IDAgfCB0ZWUgb3V0 cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0 ZW1fdTpvYmplY3Rfcjp0bXBfdDpzMCcgb3V0cHV0IgorCisgICAgICAgIHJsTG9nSW5mbyAiTm8g ZW50cmllcyIKKyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YK K0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX01FRElBICRUbXBEaXIvbXlf Y29udGV4dHMgTlVMTCAxIDAgZmxvcHB5IDAgMj4gPih0ZWUgb3V0cHV0ID4mMikiIDIKKyAgICAg ICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIC0gRVJST1I6IE5vIHN1Y2ggZmlsZSBvciBk aXJlY3RvcnknIG91dHB1dCIKKworICAgICAgICBybExvZ0luZm8gIkludmFsaWQgZW50cmllcyIK KyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK2Zsb3BweQor RU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfTUVESUEgJFRtcERpci9teV9j b250ZXh0cyBOVUxMIDEgMCBmbG9wcHkgMCAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMgorICAgICAg ICBybFJ1biAiZ3JlcCAnbGluZSAxIGlzIG1pc3NpbmcgZmllbGRzJyBvdXRwdXQiCisKKyAgICAg ICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK2Zsb3BweSBzb21lX3U6 c29tZV9yOnNvbWVfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhf TUVESUEgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBmbG9wcHkgMCAyPiA+KHRlZSBvdXRw dXQgPiYyKSIgMjIKKyAgICAgICAgcmxSdW4gImdyZXAgJ2hhcyBpbnZhbGlkIGNvbnRleHQgc29t ZV91OnNvbWVfcjpzb21lX3Q6czAnIG91dHB1dCIKKworIyAgICAgICAgZGVmYXVsdENvbnRleHQ9 JChjYXQgL2V0Yy9zZWxpbnV4L3RhcmdldGVkL2NvbnRleHRzL3JlbW92YWJsZV9jb250ZXh0KQor CisjICAgICAgICBybExvZ0luZm8gImVtcHR5IGNvbnRleHRzIGZpbGUiCisjICAgICAgICBybFJ1 biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorI0VPRiIKKyMgICAgICAgIHJsUnVu ICIuL3Rlc3RfbG9va3VwIENUWF9NRURJQSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIGZs b3BweSAwIHwgdGVlIG91dHB1dCIgMAorIyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9v a3VwIGNvbnRleHQ6ICRkZWZhdWx0Q29udGV4dCcgb3V0cHV0IiAwCisKKyMgICAgICAgIHJsTG9n SW5mbyAiaW52YWxpZCBjb250ZXh0cyBmaWxlIgorIyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBE aXIvbXlfY29udGV4dHMgPDxFT0YKKyNzb21lX3JlbW92YWJsZSBzb21lX3U6c29tZV9yOnNvbWVf dDpzMAorI0VPRiIKKyMgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9NRURJQSAkVG1w RGlyL215X2NvbnRleHRzIE5VTEwgMSAwIGZsb3BweSAwIHwgdGVlIG91dHB1dCIgMAorIyAgICAg ICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6ICRkZWZhdWx0Q29udGV4dCcg b3V0cHV0IiAwCisKKyAgICAgICAgcmxMb2dJbmZvICJDVFhfTUVESUEgYmFja2VuZCIKKyAgICAg ICAgIyBzeW50YXg6IC4vdGVzdF9sb29rdXAgQ1RYX01FRElBIE9QVF9QQVRIIE5VTEwgT1BUX1ZB TElEQVRFIDAgcGF0aCAwCisKKyAgICAgICAgcmxMb2dJbmZvICJOb3JtYWwgcnVuIgorICAgICAg ICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfTUVESUEgTlVMTCBOVUxMIDAgMCBmbG9wcHkgMCB8 IHRlZSBvdXRwdXQiIDAgXAorICAgICAgICAgICAgIlJ1biBzZWxhYmVsX2xvb2t1cCIKKyAgICAg ICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9y OnJlbW92YWJsZV9kZXZpY2VfdDpzMCcgb3V0cHV0IiAwIFwKKyAgICAgICAgICAgICJDaGVjayBj b250ZXh0IHJldHVybmVkIGJ5IHNlbGFiZWxfbG9va3VwIgorICAgICAgICBybFJ1biAiZ3JlcCAn c2VsYWJlbF9sb29rdXBfcmF3IGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnJlbW92YWJsZV9k ZXZpY2VfdDpzMCcgb3V0cHV0IiAwIFwKKyAgICAgICAgICAgICJDaGVjayBjb250ZXh0IHJldHVy bmVkIGJ5IHNlbGFiZWxfbG9va3VwX3JhdyIKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNl U3RhcnRUZXN0ICJ4IGNvbnRleHRzIGZpbGVzIgorICAgICAgICBybExvZ0luZm8gIlZhbGlkIGVu dHJpZXMiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitj bGllbnQgKiBzeXN0ZW1fdTpvYmplY3Rfcjp0bXBfdDpzMAorc2VsZWN0aW9uIFBSSU1BUlkgc3lz dGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29r dXAgQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBQUklNQVJZIFhfU0VMTiB8IHRl ZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6 IHN5c3RlbV91Om9iamVjdF9yOnZhcl90OnMwJyBvdXRwdXQiCisKKyAgICAgICAgcmxMb2dJbmZv ICJDb21tZW50cyBhbmQgZW1wdHkgbGluZXMiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGly L215X2NvbnRleHRzIDw8RU9GCisjIHNvbWUgY29tbWVudAorY2xpZW50ICogc3lzdGVtX3U6b2Jq ZWN0X3I6dG1wX3Q6czAKKworc2VsZWN0aW9uIFBSSU1BUlkgc3lzdGVtX3U6b2JqZWN0X3I6dmFy X3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9t eV9jb250ZXh0cyBOVUxMIDEgMCBQUklNQVJZIFhfU0VMTiB8IHRlZSBvdXRwdXQiIDAKKyAgICAg ICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9y OnZhcl90OnMwJyBvdXRwdXQiCisKKyAgICAgICAgcmxMb2dJbmZvICJPYmplY3QgbmFtZXMiCisg ICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitwcm9wZXJ0eSAq IHN5c3RlbV91Om9iamVjdF9yOnRtcF90OnMwCitzZWxlY3Rpb24gKiBzeXN0ZW1fdTpvYmplY3Rf cjp2YXJfdDpzMAorZXh0ZW5zaW9uICogc3lzdGVtX3U6b2JqZWN0X3I6dXNyX3Q6czAKK2V2ZW50 ICogc3lzdGVtX3U6b2JqZWN0X3I6bWFuX3Q6czAKK2NsaWVudCAqIHN5c3RlbV91Om9iamVjdF9y OmxpYl90OnMwCitwb2x5X3Byb3BlcnR5ICogc3lzdGVtX3U6b2JqZWN0X3I6YmluX3Q6czAKK3Bv bHlfc2VsZWN0aW9uICogc3lzdGVtX3U6b2JqZWN0X3I6cmVtb3RlX3Q6czAKK0VPRiIKKyAgICAg ICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEg MCAnKicgWF9QUk9QIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJl bF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dG1wX3Q6czAnIG91dHB1dCIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyBOVUxM IDEgMCAnKicgWF9TRUxOIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2Vs YWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAnIG91dHB1dCIK KyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyBO VUxMIDEgMCAnKicgWF9FWFQgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdz ZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3Rfcjp1c3JfdDpzMCcgb3V0cHV0 IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1wRGlyL215X2NvbnRleHRz IE5VTEwgMSAwICcqJyBYX0VWRU5UIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3Jl cCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6bWFuX3Q6czAnIG91 dHB1dCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9teV9jb250 ZXh0cyBOVUxMIDEgMCAnKicgWF9DTElFTlQgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVu ICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3RfcjpsaWJfdDpz MCcgb3V0cHV0IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1wRGlyL215 X2NvbnRleHRzIE5VTEwgMSAwICcqJyBYX1BPTFlQUk9QIHwgdGVlIG91dHB1dCIgMAorICAgICAg ICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6 YmluX3Q6czAnIG91dHB1dCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRt cERpci9teV9jb250ZXh0cyBOVUxMIDEgMCAnKicgWF9QT0xZU0VMTiB8IHRlZSBvdXRwdXQiIDAK KyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9i amVjdF9yOnJlbW90ZV90OnMwJyBvdXRwdXQiCisKKyAgICAgICAgcmxMb2dJbmZvICJFbXB0eSBm aWxlIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorRU9G IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1wRGlyL215X2NvbnRleHRz IE5VTEwgMSAwIFBSSU1BUlkgWF9TRUxOIiAyCisKKyAgICAgICAgcmxMb2dJbmZvICJJbnZhbGlk IGVudHJpZXMiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9G Citwcm9wZXJ0eQorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1w RGlyL215X2NvbnRleHRzIE5VTEwgMSAwIFBSSU1BUlkgWF9TRUxOIDI+ID4odGVlIG91dHB1dCA+ JjIpIiAyCisgICAgICAgIHJsUnVuICJncmVwICdsaW5lIDEgaXMgbWlzc2luZyBmaWVsZHMnIG91 dHB1dCIKKworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgor cHJvcGVydHkgKgorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1w RGlyL215X2NvbnRleHRzIE5VTEwgMSAwIFBSSU1BUlkgWF9TRUxOIDI+ID4odGVlIG91dHB1dCA+ JjIpIiAyCisgICAgICAgIHJsUnVuICJncmVwICdsaW5lIDEgaXMgbWlzc2luZyBmaWVsZHMnIG91 dHB1dCIKKworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgor c29tZV9wcm9wZXJ0eSAqIHN5c3RlbV91Om9iamVjdF9yOnRtcF90OnMwCitFT0YiCisgICAgICAg IHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9YICRUbXBEaXIvbXlfY29udGV4dHMgTlVMTCAxIDAg UFJJTUFSWSBYX1NFTE4gMj4gPih0ZWUgb3V0cHV0ID4mMikiIDIKKyAgICAgICAgcmxSdW4gImdy ZXAgJ2xpbmUgMSBoYXMgaW52YWxpZCBvYmplY3QgdHlwZSBzb21lX3Byb3BlcnR5JyBvdXRwdXQi CisKKyAgICAgICAgcmxMb2dJbmZvICJXaWxkY2FyZCBtYXRjaGluZyIKKyAgICAgICAgcmxSdW4g ImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK3Byb3BlcnR5ICogc3lzdGVtX3U6b2Jq ZWN0X3I6dG1wX3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1gg JFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBTT01FX1BST1BFUlRZIFhfUFJPUCB8IHRlZSBv dXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5 c3RlbV91Om9iamVjdF9yOnRtcF90OnMwJyBvdXRwdXQiCisKKyAgICAgICAgcmxSdW4gImNhdCA+ ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK3Byb3BlcnR5IENVVF9CVUZGRVIwIHN5c3RlbV91 Om9iamVjdF9yOnRtcF90OnMwCitwcm9wZXJ0eSAqIHN5c3RlbV91Om9iamVjdF9yOnVzcl90OnMw Citwcm9wZXJ0eSBDVVRfQlVGRkVSMSBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMAorRU9GIgor ICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfWCAkVG1wRGlyL215X2NvbnRleHRzIE5V TEwgMSAwIENVVF9CVUZGRVIwIFhfUFJPUCB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4g ImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnRtcF90OnMw JyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9YICRUbXBEaXIvbXlf Y29udGV4dHMgTlVMTCAxIDAgQ1VUX0JVRkZFUjEgWF9QUk9QIHwgdGVlIG91dHB1dCIgMAorICAg ICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0 X3I6dXNyX3Q6czAnIG91dHB1dCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1gg JFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBDVVRfQlVGRkVSMiBYX1BST1AgfCB0ZWUgb3V0 cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0 ZW1fdTpvYmplY3Rfcjp1c3JfdDpzMCcgb3V0cHV0IgorCisgICAgICAgIHJsTG9nSW5mbyAiU3Vi c3RpdHV0aW9uIG1hdGNoaW5nIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250 ZXh0cyA8PEVPRgorcHJvcGVydHkgQ1VUX0JVRkZFUj8gc3lzdGVtX3U6b2JqZWN0X3I6dG1wX3Q6 czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggJFRtcERpci9teV9j b250ZXh0cyBOVUxMIDEgMCBDVVRfQlVGRkVSMyBYX1BST1AgfCB0ZWUgb3V0cHV0IiAwCisgICAg ICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3Rf cjp0bXBfdDpzMCcgb3V0cHV0IgorCisgICAgICAgIHJsTG9nSW5mbyAiTm9ybWFsIHJ1biIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX1ggTlVMTCBOVUxMIDAgMCBhc2RmIFhfQ0xJ RU5UIHwgdGVlIG91dHB1dCIgMCBcCisgICAgICAgICAgICAiUnVuIHNlbGFiZWxfbG9va3VwIgor ICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2Jq ZWN0X3I6cmVtb3RlX3Q6czAnIG91dHB1dCIgMCBcCisgICAgICAgICAgICAiQ2hlY2sgY29udGV4 dCByZXR1cm5lZCBieSBzZWxhYmVsX2xvb2t1cCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFi ZWxfbG9va3VwX3JhdyBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3RfcjpyZW1vdGVfdDpzMCcgb3V0 cHV0IiAwIFwKKyAgICAgICAgICAgICJDaGVjayBjb250ZXh0IHJldHVybmVkIGJ5IHNlbGFiZWxf bG9va3VwX3JhdyIKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJkYiBj b250ZXh0cyBmaWxlcyIKKyAgICAgICAgcmxMb2dJbmZvICJWYWxpZCBlbnRyaWVzIgorICAgICAg ICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorZGJfZGF0YWJhc2UgICAg IG15X2RhdGFiYXNlICAgICBzeXN0ZW1fdTpvYmplY3RfcjpzZXBnc3FsX2RiX3Q6czAKK2RiX3Nj aGVtYSAgICAgICBteV9zY2hlbWEgICAgICAgc3lzdGVtX3U6b2JqZWN0X3I6c2VwZ3NxbF9zY2hl bWFfdDpzMAorZGJfdmlldyAgICAgICAgIG15X3ZpZXcgICAgICAgICBzeXN0ZW1fdTpvYmplY3Rf cjpzZXBnc3FsX3ZpZXdfdDpzMAorZGJfdGFibGUgICAgICAgIG15X3RhYmxlICAgICAgICBzeXN0 ZW1fdTpvYmplY3RfcjpzZXBnc3FsX3RhYmxlX3Q6czAKK2RiX2NvbHVtbiAgICAgICBteV9jb2x1 bW4gICAgICAgc3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAKK2RiX3R1cGxlICAgICAgICBteV90 dXBsZSAgICAgICAgc3lzdGVtX3U6b2JqZWN0X3I6dG1wX3Q6czAKK2RiX3Byb2NlZHVyZSAgICBt eV9wcm9jZWR1cmUgICAgc3lzdGVtX3U6b2JqZWN0X3I6c2VwZ3NxbF9wcm9jX2V4ZWNfdDpzMAor ZGJfc2VxdWVuY2UgICAgIG15X3NlcXVlbmNlICAgICBzeXN0ZW1fdTpvYmplY3RfcjpzZXBnc3Fs X3NlcV90OnMwCitkYl9ibG9iICAgICAgICAgbXlfYmxvYiAgICAgICAgIHN5c3RlbV91Om9iamVj dF9yOnNlcGdzcWxfYmxvYl90OnMwCitFT0YiCisgICAgICAgIGlmIHJsSXNSSEVMICI+PTciIHx8 IHJsSXNGZWRvcmE7IHRoZW4KKyAgICAgICAgICAgIHJsUnVuICJjYXQgPj4gJFRtcERpci9teV9j b250ZXh0cyA8PEVPRgorZGJfbGFuZ3VhZ2UgICAgIG15X2xhbmd1YWdlICAgICBzeXN0ZW1fdTpv YmplY3RfcjpzZXBnc3FsX2xhbmdfdDpzMAorZGJfZXhjZXB0aW9uICAgIG15X2V4Y2VwdGlvbiAg ICBzeXN0ZW1fdTpvYmplY3Rfcjp1c3JfdDpzMAorZGJfZGF0YXR5cGUgICAgIG15X2RhdGF0eXBl ICAgICBzeXN0ZW1fdTpvYmplY3RfcjpiaW5fdDpzMAorRU9GIgorICAgICAgICBmaQorCisgICAg ICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwg MSAwIG15X2RhdGFiYXNlIERCX0RBVEFCQVNFIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1 biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6c2VwZ3Nx bF9kYl90OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAk VG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15X3NjaGVtYSBEQl9TQ0hFTUEgfCB0ZWUgb3V0 cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0 ZW1fdTpvYmplY3RfcjpzZXBnc3FsX3NjaGVtYV90OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVu ICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15X3Zp ZXcgREJfVklFVyB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxf bG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnNlcGdzcWxfdmlld190OnMwJyBvdXRw dXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRl eHRzIE5VTEwgMSAwIG15X3RhYmxlIERCX1RBQkxFIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBy bFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6c2Vw Z3NxbF90YWJsZV90OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENU WF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15X2NvbHVtbiBEQl9DT0xVTU4gfCB0 ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0 OiBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMCcgb3V0cHV0IgorICAgICAgICBybFJ1biAiLi90 ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBteV90dXBsZSBE Ql9UVVBMRSB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9v a3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnRtcF90OnMwJyBvdXRwdXQiCisgICAgICAg IHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAw IG15X3Byb2NlZHVyZSBEQl9QUk9DRURVUkUgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVu ICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3RfcjpzZXBnc3Fs X3Byb2NfZXhlY190OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENU WF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15X3NlcXVlbmNlIERCX1NFUVVFTkNF IHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29u dGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6c2VwZ3NxbF9zZXFfdDpzMCcgb3V0cHV0IgorICAgICAg ICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEg MCBteV9ibG9iIERCX0JMT0IgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdz ZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3RfcjpzZXBnc3FsX2Jsb2JfdDpz MCcgb3V0cHV0IgorCisgICAgICAgIGlmIHJsSXNSSEVMICI+PTciIHx8IHJsSXNGZWRvcmE7IHRo ZW4KKyAgICAgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2Nv bnRleHRzIE5VTEwgMSAwIG15X2xhbmd1YWdlIERCX0xBTkdVQUdFIHwgdGVlIG91dHB1dCIgMAor ICAgICAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91 Om9iamVjdF9yOnNlcGdzcWxfbGFuZ190OnMwJyBvdXRwdXQiCisgICAgICAgICAgICBybFJ1biAi Li90ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDEgMCBteV9leGNl cHRpb24gREJfRVhDRVBUSU9OIHwgdGVlIG91dHB1dCIgMAorICAgICAgICAgICAgcmxSdW4gImdy ZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnVzcl90OnMwJyBv dXRwdXQiCisgICAgICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERpci9t eV9jb250ZXh0cyBOVUxMIDEgMCBteV9kYXRhdHlwZSBEQl9EQVRBVFlQRSB8IHRlZSBvdXRwdXQi IDAKKyAgICAgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0 ZW1fdTpvYmplY3RfcjpiaW5fdDpzMCcgb3V0cHV0IgorICAgICAgICBmaQorCisgICAgICAgIHJs TG9nSW5mbyAiQ29tbWVudHMgYW5kIGVtcHR5IGxpbmVzIgorICAgICAgICBybFJ1biAiY2F0ID4g JFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorIyBzb21ldGhpbmcKKworZGJfZGF0YWJhc2UgICAg IG15X2RhdGFiYXNlICAgICBzeXN0ZW1fdTpvYmplY3RfcjpzZXBnc3FsX2RiX3Q6czAKK0VPRiIK KyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0RCICRUbXBEaXIvbXlfY29udGV4dHMg TlVMTCAxIDAgbXlfZGF0YWJhc2UgREJfREFUQUJBU0UgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAg IHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3Rfcjpz ZXBnc3FsX2RiX3Q6czAnIG91dHB1dCIKKworICAgICAgICBybExvZ0luZm8gIldpbGRjYXJkIG1h dGNoaW5nIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgor ZGJfZGF0YWJhc2UgICAgIG15X2RhdGFiYXNlICAgICBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpz MAorZGJfZGF0YWJhc2UgICAgIG15X2RhdGFiYXNlKiAgICBzeXN0ZW1fdTpvYmplY3RfcjpiaW5f dDpzMAorZGJfZGF0YWJhc2UgICAgICogICAgICAgICAgICAgICBzeXN0ZW1fdTpvYmplY3Rfcjp1 c3JfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERp ci9teV9jb250ZXh0cyBOVUxMIDEgMCBteV9kYXRhYmFzZSBEQl9EQVRBQkFTRSB8IHRlZSBvdXRw dXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3Rl bV91Om9iamVjdF9yOnZhcl90OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9v a3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15X2RhdGFiYXNlX2FzZGYg REJfREFUQUJBU0UgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVs X2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3RfcjpiaW5fdDpzMCcgb3V0cHV0IgorICAg ICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfREIgJFRtcERpci9teV9jb250ZXh0cyBOVUxM IDEgMCBteV9hc2RmIERCX0RBVEFCQVNFIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAi Z3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dXNyX3Q6czAn IG91dHB1dCIKKworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVP RgorZGJfZGF0YWJhc2UgICAgICogICAgICAgc3lzdGVtX3U6b2JqZWN0X3I6dXNyX3Q6czAKK2Ri X2RhdGFiYXNlICAgICBteV8qICAgIHN5c3RlbV91Om9iamVjdF9yOmJpbl90OnMwCitFT0YiCisg ICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5V TEwgMSAwIG15X2RhdGFiYXNlIERCX0RBVEFCQVNFIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBy bFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dXNy X3Q6czAnIG91dHB1dCIKKworICAgICAgICBybExvZ0luZm8gIkVtcHR5IGZpbGUiCisgICAgICAg IHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitFT0YiCisgICAgICAgIHJs UnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMSAwIG15 X2RhdGFiYXNlIERCX0RBVEFCQVNFICIgMgorCisgICAgICAgIHJsTG9nSW5mbyAiSW52YWxpZCBl bnRyaWVzIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgor b25lCitFT0YiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9EQiAkVG1wRGlyL215 X2NvbnRleHRzIE5VTEwgMCAwIG15X2RhdGFiYXNlIERCX0RBVEFCQVNFIDI+ID4odGVlIG91dHB1 dCA+JjIpIiAyCisgICAgICAgIHJsUnVuICJncmVwICdsaW5lIDEgaGFzIGludmFsaWQgZm9ybWF0 JyBvdXRwdXQiCisKKyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxF T0YKK29uZSB0d28KK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0RCICRU bXBEaXIvbXlfY29udGV4dHMgTlVMTCAwIDAgbXlfZGF0YWJhc2UgREJfREFUQUJBU0UgMj4gPih0 ZWUgb3V0cHV0ID4mMikiIDIKKyAgICAgICAgcmxSdW4gImdyZXAgJ2xpbmUgMSBoYXMgaW52YWxp ZCBmb3JtYXQnIG91dHB1dCIKKworICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250 ZXh0cyA8PEVPRgorb25lIHR3byB0aHJlZQorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xv b2t1cCBDVFhfREIgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCBteV9kYXRhYmFzZSBEQl9E QVRBQkFTRSAyPiA+KHRlZSBvdXRwdXQgPiYyKSIgMgorICAgICAgICBybFJ1biAiZ3JlcCAnbGlu ZSAxIGhhcyBpbnZhbGlkIG9iamVjdCB0eXBlIG9uZScgb3V0cHV0IgorCisgICAgICAgIHJsUnVu ICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitvbmUgdHdvIHRocmVlIGZvdXIKK0VP RiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0RCICRUbXBEaXIvbXlfY29udGV4 dHMgTlVMTCAwIDAgbXlfZGF0YWJhc2UgREJfREFUQUJBU0UgMj4gPih0ZWUgb3V0cHV0ID4mMiki IDIKKyAgICAgICAgcmxSdW4gImdyZXAgJ2xpbmUgMSBoYXMgaW52YWxpZCBmb3JtYXQnIG91dHB1 dCIKKworICAgICAgICBybExvZ0luZm8gIk5vcm1hbCBydW4iCisgICAgICAgIHJsUnVuICIuL3Rl c3RfbG9va3VwIENUWF9EQiBOVUxMIE5VTEwgMCAwIG15X2RhdGFiYXNlIERCX0RBVEFCQVNFIHwg dGVlIG91dHB1dCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6 IHN5c3RlbV91Om9iamVjdF9yOnNlcGdzcWxfZGJfdDpzMCcgb3V0cHV0IgorICAgICAgICBybFJ1 biAiZ3JlcCAnc2VsYWJlbF9sb29rdXBfcmF3IGNvbnRleHQ6IHN5c3RlbV91Om9iamVjdF9yOnNl cGdzcWxfZGJfdDpzMCcgb3V0cHV0IgorICAgIHJsUGhhc2VFbmQKKworICAgIGlmIHJsSXNSSEVM ICI+PTciIHx8IHJsSXNGZWRvcmE7IHRoZW4KKyAgICBybFBoYXNlU3RhcnRUZXN0ICJiYXNlb25s eSBvcHRpb24iCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9G CiskVG1wRGlyLiogc3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAKK0VPRiIKKyAgICAgICAgcmxS dW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMuc3VicyA8PEVPRgorL3NvbWVwYXRoICRUbXBE aXIKK0VPRiIKKyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMubG9jYWwg PDxFT0YKKyRUbXBEaXIvbG9jYWwgc3lzdGVtX3U6b2JqZWN0X3I6YmluX3Q6czAKK0VPRiIKKyAg ICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMuaG9tZWRpcnMgPDxFT0YKKyRU bXBEaXIvaG9tZWRpcnMgc3lzdGVtX3U6b2JqZWN0X3I6dXNyX3Q6czAKK0VPRiIKKworICAgICAg ICAjIHdpdGhvdXQgYmFzZW9ubHkgb3B0aW9uLCB0aGUgcnVsZSBpbiBteV9jb250ZXh0cyB3aWxs IGJlIG92ZXJyaWRkZW4KKyAgICAgICAgIyBieSBhIHJ1bGUgaW4gbXlfY29udGV4dHMubG9jYWwg ZmlsZQorICAgICAgICAjIC5zdWJzIGZpbGUgc2hvdWxkIHdvcmsgZXZlbiB3aXRoIGJhc2Vvbmx5 IG9wdGlvbgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215 X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lcGF0aC9sb2NhbCAwIHwgdGVlIG91dHB1dCIgMCBcCisg ICAgICAgICAgICAiUnVubmluZyBzZWxhYmVsX29wZW4gd2l0aG91dCBiYXNlb25seSBvcHRpb24i CisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpv YmplY3RfcjpiaW5fdDpzMCcgb3V0cHV0IiAwCisKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29r dXAgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMSAvc29tZXBhdGgvbG9jYWwg MCB8IHRlZSBvdXRwdXQiIDAgXAorICAgICAgICAgICAgIlJ1bm5pbmcgc2VsYWJlbF9vcGVuIHdp dGggYmFzZW9ubHkgb3B0aW9uIgorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAg Y29udGV4dDogc3lzdGVtX3U6b2JqZWN0X3I6dmFyX3Q6czAnIG91dHB1dCIgMAorCisgICAgICAg ICMgd2l0aG91dCBiYXNlb25seSBvcHRpb24sIHRoZSBydWxlIGluIG15X2NvbnRleHRzIHdpbGwg YmUgb3ZlcnJpZGRlbgorICAgICAgICAjIGJ5IGEgcnVsZSBpbiBteV9jb250ZXh0cy5ob21lZGly cyBmaWxlCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9GSUxFICRUbXBEaXIvbXlf Y29udGV4dHMgTlVMTCAwIDAgL3NvbWVwYXRoL2hvbWVkaXJzIDAgfCB0ZWUgb3V0cHV0IiAwIFwK KyAgICAgICAgICAgICJSdW5uaW5nIHNlbGFiZWxfb3BlbiB3aXRob3V0IGJhc2Vvbmx5IG9wdGlv biIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHN5c3RlbV91 Om9iamVjdF9yOnVzcl90OnMwJyBvdXRwdXQiIDAKKworICAgICAgICBybFJ1biAiLi90ZXN0X2xv b2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAxIC9zb21lcGF0aC9ob21l ZGlycyAwIHwgdGVlIG91dHB1dCIgMCBcCisgICAgICAgICAgICAiUnVubmluZyBzZWxhYmVsX29w ZW4gd2l0aCBiYXNlb25seSBvcHRpb24iCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xv b2t1cCBjb250ZXh0OiBzeXN0ZW1fdTpvYmplY3Rfcjp2YXJfdDpzMCcgb3V0cHV0IiAwCisKKyAg ICAgICAgcmxSdW4gInJtIC1mICRUbXBEaXIvbXlfY29udGV4dHMuc3VicyIKKyAgICAgICAgcmxS dW4gInJtIC1mICRUbXBEaXIvbXlfY29udGV4dHMubG9jYWwiCisgICAgICAgIHJsUnVuICJybSAt ZiAkVG1wRGlyL215X2NvbnRleHRzLmhvbWVkaXJzIgorICAgIHJsUGhhc2VFbmQKKyAgICBmaQor CisgICAgcmxQaGFzZVN0YXJ0VGVzdCAic2VsYWJlbF9sb29rdXAgYWR2YW5jZWQgdGVzdHMiCisg ICAgICAgIHJsTG9nSW5mbyAiQ3VzdG9tIGZpbGUgY29udGV4dHMgZmlsZSIKKyAgICAgICAgcmxS dW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKyRUbXBEaXIgbXlfdXNlcl91Om15 X3JvbGVfcjpteV90eXBlX3Q6czAKK0VPRiIKKworICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1 cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwICRUbXBEaXIgMCB8IHRlZSBv dXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IG15 X3VzZXJfdTpteV9yb2xlX3I6bXlfdHlwZV90OnMwJyBvdXRwdXQiIDAKKworICAgICAgICBybExv Z0luZm8gIlJ1bGVzIGZvciBkaWZmZXJlbnQgZmlsZSB0eXBlcyIKKyAgICAgICAgcmxSdW4gImNh dCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKyRUbXBEaXIgLS0gdXNlcl91OnJvbGVfcjpy ZWd1bGFyX3R5cGVfdDpzMAorJFRtcERpciAtYiB1c2VyX3U6cm9sZV9yOmJsb2NrX3R5cGVfdDpz MAorJFRtcERpciAtYyB1c2VyX3U6cm9sZV9yOmNoYXJfdHlwZV90OnMwCiskVG1wRGlyIC1kIHVz ZXJfdTpyb2xlX3I6ZGlyX3R5cGVfdDpzMAorJFRtcERpciAtcCB1c2VyX3U6cm9sZV9yOnBpcGVf dHlwZV90OnMwCiskVG1wRGlyIC1sIHVzZXJfdTpyb2xlX3I6c3ltbGlua190eXBlX3Q6czAKKyRU bXBEaXIgLXMgdXNlcl91OnJvbGVfcjpzb2NrZXRfdHlwZV90OnMwCitFT0YiCisKKyAgICAgICAg cmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAg MCAkVG1wRGlyIDAwMTAwMDAgfCB0ZWUgb3V0cHV0IgorICAgICAgICBybFJ1biAiZ3JlcCAnc2Vs YWJlbF9sb29rdXAgY29udGV4dDogdXNlcl91OnJvbGVfcjpwaXBlX3R5cGVfdDpzMCcgb3V0cHV0 IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRl eHRzIE5VTEwgMCAwICRUbXBEaXIgMDAyMDAwMCB8IHRlZSBvdXRwdXQiCisgICAgICAgIHJsUnVu ICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiB1c2VyX3U6cm9sZV9yOmNoYXJfdHlwZV90 OnMwJyBvdXRwdXQiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9GSUxFICRUbXBE aXIvbXlfY29udGV4dHMgTlVMTCAwIDAgJFRtcERpciAwMDQwMDAwIHwgdGVlIG91dHB1dCIKKyAg ICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfbG9va3VwIGNvbnRleHQ6IHVzZXJfdTpyb2xlX3I6 ZGlyX3R5cGVfdDpzMCcgb3V0cHV0IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhf RklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwICRUbXBEaXIgMDA2MDAwMCB8IHRlZSBv dXRwdXQiCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiB1c2Vy X3U6cm9sZV9yOmJsb2NrX3R5cGVfdDpzMCcgb3V0cHV0IgorICAgICAgICBybFJ1biAiLi90ZXN0 X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwICRUbXBEaXIgMDEw MDAwMCB8IHRlZSBvdXRwdXQiCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBj b250ZXh0OiB1c2VyX3U6cm9sZV9yOnJlZ3VsYXJfdHlwZV90OnMwJyBvdXRwdXQiCisgICAgICAg IHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9GSUxFICRUbXBEaXIvbXlfY29udGV4dHMgTlVMTCAw IDAgJFRtcERpciAwMTIwMDAwIHwgdGVlIG91dHB1dCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3Nl bGFiZWxfbG9va3VwIGNvbnRleHQ6IHVzZXJfdTpyb2xlX3I6c3ltbGlua190eXBlX3Q6czAnIG91 dHB1dCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgJFRtcERpci9teV9j b250ZXh0cyBOVUxMIDAgMCAkVG1wRGlyIDAxNDAwMDAgfCB0ZWUgb3V0cHV0IgorICAgICAgICBy bFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogdXNlcl91OnJvbGVfcjpzb2NrZXRf dHlwZV90OnMwJyBvdXRwdXQiCisgICAgcmxQaGFzZUVuZAorCisgICAgaWYgcmxJc1JIRUwgIj49 NyIgfHwgcmxJc0ZlZG9yYTsgdGhlbgorICAgIHJsUGhhc2VTdGFydFRlc3QgInNlbGFiZWxfcGFy dGlhbF9tYXRjaCIKKyAgICAgICAgIyBzeW50YXg6IC4vdGVzdF9wYXJ0aWFsIEJBQ0tFTkQgT1BU X1BBVEggT1BUX1NVQlNFVCBPUFRfVkFMSURBVEUgT1BUX0JBU0VPTkxZIHBhdGggW25vaGFuZGxl XQorCisgICAgICAgIHJsTG9nSW5mbyAibm9uc3VwcG9ydGluZyBiYWNrZW5kcyIKKyAgICAgICAg cmxSdW4gIi4vdGVzdF9wYXJ0aWFsIENUWF9NRURJQSBOVUxMIE5VTEwgMCAwIC9zb21lZGlyIHwg dGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9wYXJ0aWFsX21hdGNo OiB0cnVlJyBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9wYXJ0aWFsIENUWF9EQiBO VUxMIE5VTEwgMCAwIC9zb21lZGlyIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3Jl cCAnc2VsYWJlbF9wYXJ0aWFsX21hdGNoOiB0cnVlJyBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4g Ii4vdGVzdF9wYXJ0aWFsIENUWF9YIE5VTEwgTlVMTCAwIDAgL3NvbWVkaXIgfCB0ZWUgb3V0cHV0 IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX3BhcnRpYWxfbWF0Y2g6IHRydWUnIG91 dHB1dCIgMAorCisgICAgICAgIHJsTG9nSW5mbyAibnVsbCBhcyBoYW5kbGUiCisgICAgICAgIHJs UnVuICIuL3Rlc3RfcGFydGlhbCBDVFhfRklMRSBOVUxMIE5VTEwgMCAwIC9zb21lZGlyIG5vaGFu ZGxlIiAyMiwxMzkKKyAgICAgICAgCisgICAgICAgIHJsTG9nSW5mbyAibm9uZXhpc3RpbmcgZW50 cnkiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCitFT0Yi CisgICAgICAgIHJsUnVuICIuL3Rlc3RfbG9va3VwIENUWF9GSUxFICRUbXBEaXIvbXlfY29udGV4 dHMgTlVMTCAwIDAgL3NvbWVkaXIgMCIgMgorCisgICAgICAgIHJsUnVuICIuL3Rlc3RfcGFydGlh bCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lZGlyIHwgdGVlIG91 dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9wYXJ0aWFsX21hdGNoOiBmYWxz ZScgb3V0cHV0IiAwCisKKyAgICAgICAgcmxMb2dJbmZvICJmdWxsIG1hdGNoIgorICAgICAgICBy bFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorL3NvbWVkaXIgdXNlcl91OnJv bGVfcjp0eXBlX3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJ TEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIHwgdGVlIG91dHB1dCIg MAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogdXNlcl91OnJv bGVfcjp0eXBlX3Q6czAnIG91dHB1dCIKKworICAgICAgICBybFJ1biAiLi90ZXN0X3BhcnRpYWwg Q1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciB8IHRlZSBvdXRw dXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFiZWxfcGFydGlhbF9tYXRjaDogdHJ1ZScg b3V0cHV0IiAwCisKKyAgICAgICAgcmxMb2dJbmZvICJwYXJ0aWFsIG1hdGNoIgorICAgICAgICBy bFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorL3NvbWVkaXI0MiB1c2VyX3U6 cm9sZV9yOnR5cGVfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhf RklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lZGlyIDAiIDIKKworICAgICAg ICBybFJ1biAiLi90ZXN0X3BhcnRpYWwgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxM IDAgMCAvc29tZWRpciB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGFi ZWxfcGFydGlhbF9tYXRjaDogdHJ1ZScgb3V0cHV0IiAwCisgICAgcmxQaGFzZUVuZAorICAgIGZp CisKKyAgICBpZiBybElzUkhFTCAiPj03IiB8fCBybElzRmVkb3JhOyB0aGVuCisgICAgcmxQaGFz ZVN0YXJ0VGVzdCAic2VsYWJlbF9iZXN0X21hdGNoIgorICAgICAgICAjIHN5bnRheDogLi90ZXN0 X2Jlc3QgQkFDS0VORCBPUFRfUEFUSCBPUFRfU1VCU0VUIE9QVF9WQUxJREFURSBPUFRfQkFTRU9O TFkgcGF0aCBtb2RlIFtub2hhbmRsZV0KKworICAgICAgICBybExvZ0luZm8gIm5vbnN1cHBvcnRl ZCBiYWNrZW5kcyIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9iZXN0IENUWF9NRURJQSBOVUxMIE5V TEwgMCAwIC9zb21lZGlyIDAiIDk1CisgICAgICAgIHJsUnVuICIuL3Rlc3RfYmVzdCBDVFhfREIg TlVMTCBOVUxMIDAgMCAvc29tZWRpciAwIiA5NQorICAgICAgICBybFJ1biAiLi90ZXN0X2Jlc3Qg Q1RYX1ggTlVMTCBOVUxMIDAgMCAvc29tZWRpciAwIiA5NQorCisgICAgICAgIHJsTG9nSW5mbyAi bnVsbCBhcyBoYW5kbGUiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfYmVzdCBDVFhfRklMRSBOVUxM IE5VTEwgMCAwIC9zb21lZGlyIDAgbm9oYW5kbGUiIDIyLDEzOQorCisgICAgICAgIHJsTG9nSW5m byAibnVsbCBhcyBrZXkiCisgICAgICAgIHJsUnVuICIuL3Rlc3RfYmVzdCBDVFhfRklMRSBOVUxM IE5VTEwgMCAwIE5VTEwgMCIgMjIKKworICAgICAgICBybExvZ0luZm8gIm5vbmV4aXN0aW5nIGVu dHJ5IgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorRU9G IgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRl eHRzIE5VTEwgMCAwIC9zb21lZGlyIDAiIDIKKworICAgICAgICBybFJ1biAiLi90ZXN0X2Jlc3Qg Q1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIiAyCisKKyAg ICAgICAgcmxMb2dJbmZvICJleGFjdCBtYXRjaCB3aXRob3V0IGFsaWFzZXMiCisgICAgICAgIHJs UnVuICJjYXQgPiAkVG1wRGlyL215X2NvbnRleHRzIDw8RU9GCisvc29tZWRpciB1c2VyX3U6cm9s ZV9yOnR5cGVfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklM RSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lZGlyIDAgfCB0ZWUgb3V0cHV0IiAw CisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBjb250ZXh0OiB1c2VyX3U6cm9s ZV9yOnR5cGVfdDpzMCcgb3V0cHV0IgorCisgICAgICAgICMgc2FtZSBhcyBzZWxhYmVsX2xvb2t1 cAorICAgICAgICBybFJ1biAiLi90ZXN0X2Jlc3QgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0 cyBOVUxMIDAgMCAvc29tZWRpciAwIHwgdGVlIG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3Jl cCAnc2VsYWJlbF9sb29rdXBfYmVzdF9tYXRjaCBjb250ZXh0OiB1c2VyX3U6cm9sZV9yOnR5cGVf dDpzMCcgb3V0cHV0IgorCisgICAgICAgIHJsTG9nSW5mbyAicmVnZXggbWF0Y2ggd2l0aG91dCBh bGlhc2VzIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgor L3NvbWUuKiB1c2VyX3U6cm9sZV9yOnR5cGVfdDpzMAorRU9GIgorICAgICAgICBybFJ1biAiLi90 ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwgMCAwIC9zb21lZGly IDAgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxhYmVsX2xvb2t1cCBj b250ZXh0OiB1c2VyX3U6cm9sZV9yOnR5cGVfdDpzMCcgb3V0cHV0IgorCisgICAgICAgICMgc2Ft ZSBhcyBzZWxhYmVsX2xvb2t1cAorICAgICAgICBybFJ1biAiLi90ZXN0X2Jlc3QgQ1RYX0ZJTEUg JFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIHwgdGVlIG91dHB1dCIgMAor ICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXBfYmVzdF9tYXRjaCBjb250ZXh0OiB1 c2VyX3U6cm9sZV9yOnR5cGVfdDpzMCcgb3V0cHV0IgorCisgICAgICAgIHJsTG9nSW5mbyAiZXhh Y3QgbWF0Y2ggd2l0aCBleGFjdGx5IG1hdGNoaW5nIGFsaWFzIgorICAgICAgICBybFJ1biAiY2F0 ID4gJFRtcERpci9teV9jb250ZXh0cyA8PEVPRgorL3NvbWVkaXIgdXNlcl91OnJvbGVfcjpvcmln X3Q6czAKKy9zb21lc3ltbGluayB1c2VyX3U6cm9sZV9yOmxpbmtfdDpzMAorRU9GIgorICAgICAg ICBybFJ1biAiLi90ZXN0X2xvb2t1cCBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIE5VTEwg MCAwIC9zb21lZGlyIDAgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdzZWxh YmVsX2xvb2t1cCBjb250ZXh0OiB1c2VyX3U6cm9sZV9yOm9yaWdfdDpzMCcgb3V0cHV0IgorCisg ICAgICAgICMgb3JpZ2luYWwgY29udGV4dCBzaG91bGQgYmUgY2hvc2VuIHdoZW4gZm91bmQKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9iZXN0IENUWF9GSUxFICRUbXBEaXIvbXlfY29udGV4dHMgTlVM TCAwIDAgL3NvbWVkaXIgMCAvc29tZXN5bWxpbmsgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJs UnVuICJncmVwICdzZWxhYmVsX2xvb2t1cF9iZXN0X21hdGNoIGNvbnRleHQ6IHVzZXJfdTpyb2xl X3I6b3JpZ190OnMwJyBvdXRwdXQiCisKKyAgICAgICAgcmxMb2dJbmZvICJubyBtYXRjaCB3aXRo IGV4YWN0bHkgbWF0Y2hpbmcgYWxpYXMiCisgICAgICAgIHJsUnVuICJjYXQgPiAkVG1wRGlyL215 X2NvbnRleHRzIDw8RU9GCisvc29tZXN5bWxpbmsgdXNlcl91OnJvbGVfcjp0eXBlX3Q6czAKK0VP RiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250 ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIiAyCisKKyAgICAgICAgIyB3aGVuIHRoZXJlIGlzIG5v IGNvbnRleHQgZm9yIHBhdGgsIGFsaWFzIGNvbnRleHQgc2hvdWxkIGJlIGNob3NlbgorICAgICAg ICBybFJ1biAiLi90ZXN0X2Jlc3QgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAg MCAvc29tZWRpciAwIC9zb21lc3ltbGluayB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4g ImdyZXAgJ3NlbGFiZWxfbG9va3VwX2Jlc3RfbWF0Y2ggY29udGV4dDogdXNlcl91OnJvbGVfcjp0 eXBlX3Q6czAnIG91dHB1dCIKKworICAgICAgICBybExvZ0luZm8gIm5vIG1hdGNoIHdpdGggbXVs dGlwbGUgZXhhY3RseSBtYXRjaGluZyBhbGlhc2VzIgorICAgICAgICBybFJ1biAiY2F0ID4gJFRt cERpci9teV9jb250ZXh0cyA8PEVPRgorL2ZpcnN0c3ltbGluayB1c2VyX3U6cm9sZV9yOmZpcnN0 X3Q6czAKKy9zZWNvbmRzeW1saW5rIHVzZXJfdTpyb2xlX3I6c2Vjb25kX3Q6czAKK0VPRiIKKyAg ICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBO VUxMIDAgMCAvc29tZWRpciAwIiAyCisKKyAgICAgICAgIyB3aXRoIG5vIGNvbnRleHQgZm9yIHBh dGggYW5kIG11bHRpcGxlIGFsaWFzZXMsIGZpcnN0IGV4YWN0IG1hdGNoIHNob3VsZCBiZSBjaG9z ZW4KKyAgICAgICAgcmxSdW4gIi4vdGVzdF9iZXN0IENUWF9GSUxFICRUbXBEaXIvbXlfY29udGV4 dHMgTlVMTCAwIDAgL3NvbWVkaXIgMCAvZmlyc3RzeW1saW5rIC9zZWNvbmRzeW1saW5rIHwgdGVl IG91dHB1dCIgMAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXBfYmVzdF9tYXRj aCBjb250ZXh0OiB1c2VyX3U6cm9sZV9yOmZpcnN0X3Q6czAnIG91dHB1dCIKKworICAgICAgICBy bExvZ0luZm8gIm5vIG1hdGNoIHdpdGggbXVsdGlwbGUgcmVnZXggbWF0Y2hpbmcgYWxpYXNlcyIK KyAgICAgICAgcmxSdW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKy9zaG9ydC4q IHVzZXJfdTpyb2xlX3I6c2hvcnRfdDpzMAorL3Zlcnlsb25nLiogdXNlcl91OnJvbGVfcjpsb25n X3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJTEUgJFRtcERp ci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIiAyCisKKyAgICAgICAgIyB3aXRoIG5v IGNvbnRleHQgZm9yIHBhdGggYW5kIG11bHRpcGxlIHJlZ2V4IGFsaWFzZXMsIG1hdGNoIHdpdGgg bG9uZ2VzdCBwcmVmaXggc2hvdWxkIGJlIGNob3NlbgorICAgICAgICBybFJ1biAiLi90ZXN0X2Jl c3QgQ1RYX0ZJTEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIC9zaG9y dHN5bWxpbmsgL3Zlcnlsb25nc3ltbGluayB8IHRlZSBvdXRwdXQiIDAKKyAgICAgICAgcmxSdW4g ImdyZXAgJ3NlbGFiZWxfbG9va3VwX2Jlc3RfbWF0Y2ggY29udGV4dDogdXNlcl91OnJvbGVfcjps b25nX3Q6czAnIG91dHB1dCIKKworICAgICAgICBybExvZ0luZm8gInJlZ2V4IG1hdGNoIHdpdGgg bXVsdGlwbGUgcmVnZXggbWF0Y2hpbmcgYWxpYXNlcyIKKyAgICAgICAgcmxSdW4gImNhdCA+ICRU bXBEaXIvbXlfY29udGV4dHMgPDxFT0YKKy9zb21lLiogdXNlcl91OnJvbGVfcjpvcmlnX3Q6czAK Ky9zaG9ydC4qIHVzZXJfdTpyb2xlX3I6c2hvcnRfdDpzMAorL3Zlcnlsb25nLiogdXNlcl91OnJv bGVfcjpsb25nX3Q6czAKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9sb29rdXAgQ1RYX0ZJ TEUgJFRtcERpci9teV9jb250ZXh0cyBOVUxMIDAgMCAvc29tZWRpciAwIHwgdGVlIG91dHB1dCIg MAorICAgICAgICBybFJ1biAiZ3JlcCAnc2VsYWJlbF9sb29rdXAgY29udGV4dDogdXNlcl91OnJv bGVfcjpvcmlnX3Q6czAnIG91dHB1dCIKKworICAgICAgICAjIHdpdGggcmVnZXggbWF0Y2hpbmcg Y29udGV4dCBmb3IgcGF0aCBhbmQgbXVsdGlwbGUgcmVnZXggYWxpYXNlcywgbWF0Y2ggd2l0aCBs b25nZXN0IHByZWZpeCBzaG91bGQgYmUgY2hvc2VuCisgICAgICAgICMgKGFtb25nIGJvdGggb3Jp Z2luYWwgcGF0aCBhbmQgYWxpYXNlcykKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9iZXN0IENUWF9G SUxFICRUbXBEaXIvbXlfY29udGV4dHMgTlVMTCAwIDAgL3NvbWVkaXIgMCAvc2hvcnRzeW1saW5r IC92ZXJ5bG9uZ3N5bWxpbmsgfCB0ZWUgb3V0cHV0IiAwCisgICAgICAgIHJsUnVuICJncmVwICdz ZWxhYmVsX2xvb2t1cF9iZXN0X21hdGNoIGNvbnRleHQ6IHVzZXJfdTpyb2xlX3I6bG9uZ190OnMw JyBvdXRwdXQiCisgICAgcmxQaGFzZUVuZAorICAgIGZpCisKKyAgICBybFBoYXNlU3RhcnRUZXN0 ICJzZWxhYmVsX3N0YXRzIgorICAgICAgICAjIHN5bnRheDogLi90ZXN0X3N0YXRzIEJBQ0tFTkQg T1BUX1BBVEggT1BUX1ZBTElEQVRFIFtub2hhbmRsZV0KKworICAgICAgICBybExvZ0luZm8gImNh bGxpbmcgc2VsYWJlbF90ZXN0IC0gbm90IGNoZWNraW5nIG91dHB1dCIKKyAgICAgICAgcmxSdW4g ImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK0VPRiIKKyAgICAgICAgcmxSdW4gIi4v dGVzdF9zdGF0cyBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIDAiIDAKKyAgICAgICAgcmxS dW4gIi4vdGVzdF9zdGF0cyBDVFhfTUVESUEgJFRtcERpci9teV9jb250ZXh0cyAwIiAwCisgICAg ICAgIHJsUnVuICIuL3Rlc3Rfc3RhdHMgQ1RYX1ggJFRtcERpci9teV9jb250ZXh0cyAwIiAwCisg ICAgICAgIHJsUnVuICIuL3Rlc3Rfc3RhdHMgQ1RYX0RCICRUbXBEaXIvbXlfY29udGV4dHMgMCIg MAorICAgICAgICBpZiBybElzUkhFTCAiNyIgfHwgcmxJc0ZlZG9yYSAiPDI2IjsgdGhlbgorICAg ICAgICAgICAgcmxSdW4gIi4vdGVzdF9zdGF0cyBDVFhfQU5EUk9JRF9QUk9QICRUbXBEaXIvbXlf Y29udGV4dHMgMCIgMAorICAgICAgICBmaQorICAgICAgICAKKyAgICAgICAgcmxSdW4gIi4vdGVz dF9zdGF0cyBDVFhfRklMRSAkVG1wRGlyL215X2NvbnRleHRzIDAgbm9oYW5kbGUiIDEzOQorICAg IHJsUGhhc2VFbmQKKworICAgIGlmIHJsSXNSSEVMICI+PTciIHx8IHJsSXNGZWRvcmE7IHRoZW4K KyAgICBybFBoYXNlU3RhcnRUZXN0ICJzZWxhYmVsX2RpZ2VzdCIKKyAgICAgICAgIyBzeW50YXg6 IC4vdGVzdF9kaWdlc3QgQkFDS0VORCBPUFRfUEFUSCBPUFRfVkFMSURBVEUgT1BUX0RJR0VTVCBb bm9oYW5kbGVdCisKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9kaWdlc3QgQ1RYX0ZJTEUgTlVMTCAw IDAiIDIyCisgICAgICAgIHJsUnVuICIuL3Rlc3RfZGlnZXN0IENUWF9GSUxFIE5VTEwgMCAwIG5v aGFuZGxlIiAxMzkKKworICAgICAgICBybFJ1biAiLi90ZXN0X2RpZ2VzdCBDVFhfRklMRSBOVUxM IDAgMSIgMAorICAgICAgICBybFJ1biAiLi90ZXN0X2RpZ2VzdCBDVFhfTUVESUEgTlVMTCAwIDEi IDAKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9kaWdlc3QgQ1RYX1ggTlVMTCAwIDEiIDAKKyAgICAg ICAgcmxSdW4gIi4vdGVzdF9kaWdlc3QgQ1RYX0RCIE5VTEwgMCAxIiAwCisKKyAgICAgICAgcmxS dW4gImNhdCA+ICRUbXBEaXIvbXlfY29udGV4dHMgPDxFT0YKK0VPRiIKKyAgICAgICAgaWYgcmxJ c1JIRUwgIjciIHx8IHJsSXNGZWRvcmEgIjwyNiI7IHRoZW4KKyAgICAgICAgICAgIHJsUnVuICIu L3Rlc3RfZGlnZXN0IENUWF9BTkRST0lEX1BST1AgJFRtcERpci9teV9jb250ZXh0cyAwIDEiIDAK KyAgICAgICAgZmkKKyAgICBybFBoYXNlRW5kCisgICAgZmkKKworICAgIHJsUGhhc2VTdGFydENs ZWFudXAKKyAgICAgICAgcmxSdW4gInJtIC1yICRUbXBEaXIiIDAgIlJlbW92aW5nIHRtcCBkaXJl Y3RvcnkiCisgICAgICAgIHJsUnVuICJybSAtZiB0ZXN0X29wZW4gdGVzdF9sb29rdXAgdGVzdF9w YXJ0aWFsIHRlc3RfYmVzdCB0ZXN0X3N0YXRzIHRlc3RfZGlnZXN0IG91dHB1dCIKKyAgICBybFBo YXNlRW5kCitybEpvdXJuYWxQcmludFRleHQKK3JsSm91cm5hbEVuZAoKZGlmZiAtLWdpdCBhL2xp YnNlbGludXgvc2VsYWJlbC1mdW5jdGlvbnMvdGVzdF9iZXN0LmMgYi9saWJzZWxpbnV4L3NlbGFi ZWwtZnVuY3Rpb25zL3Rlc3RfYmVzdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLjdlY2E0ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rp b25zL3Rlc3RfYmVzdC5jCkBAIC0wLDAgKzEsMTU5IEBACisjaW5jbHVkZSA8c3RkaW8uaD4KKyNp bmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpbnQu aD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgorI2lu Y2x1ZGUgPHNlbGludXgvbGFiZWwuaD4KKworaW50IG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJn dikKK3sKKyAgICBzdHJ1Y3Qgc2VsYWJlbF9oYW5kbGUgKmhuZCA9IE5VTEw7CisgICAgdW5zaWdu ZWQgaW50IGJhY2tlbmQgPSAwOworCisgICAgc3RydWN0IHNlbGludXhfb3B0IHNlbGFiZWxfb3B0 aW9uIFtdID0geworICAgICAgICB7IFNFTEFCRUxfT1BUX1BBVEgsIE5VTEwgfSwKKyAgICAgICAg eyBTRUxBQkVMX09QVF9TVUJTRVQsIE5VTEwgfSwKKyAgICAgICAgeyBTRUxBQkVMX09QVF9WQUxJ REFURSwgKGNoYXIgKikgMSB9LAorICAgICAgICB7IFNFTEFCRUxfT1BUX0JBU0VPTkxZLCAoY2hh ciAqKSAxIH0KKyAgICB9OworCisgICAgaWYgKGFyZ2MgPCA4KSB7CisgICAgICAgIGZwcmludGYo c3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAgICAgcmV0dXJu IDI1NTsKKyAgICB9CisKKyAgICAvLyBzZXQgYmFja2VuZAorICAgIGlmIChzdHJjbXAoYXJndlsx XSwgIkNUWF9GSUxFIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX0ZJTEU7 CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfTUVESUEiKSA9PSAwKQorICAgICAg ICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfTUVESUE7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3Zb MV0sICJDVFhfWCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NUWF9YOworICAg IGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX0RCIikgPT0gMCkKKyAgICAgICAgYmFja2Vu ZCA9IFNFTEFCRUxfQ1RYX0RCOworI2lmbmRlZiBSSEVMNgorICAgIGVsc2UgaWYgKHN0cmNtcChh cmd2WzFdLCAiQ1RYX0FORFJPSURfUFJPUCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxB QkVMX0NUWF9BTkRST0lEX1BST1A7CisjZW5kaWYKKyAgICBlbHNlCisgICAgICAgIGJhY2tlbmQg PSBzdHJ0b3VsKGFyZ3ZbMV0sIE5VTEwsIDEwKTsKKworICAgIGlmICgoYXJnYyA9PSA5KSAmJiAo c3RyY21wKGFyZ3ZbOF0sICJub2hhbmRsZSIpID09IDApKSB7CisgICAgICAgIGhuZCA9IE5VTEw7 CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvLyBzZXQgZmlsZSBjb250ZXh0cyBwYXRoCisg ICAgICAgIGlmIChzdHJjbXAoYXJndlsyXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgICAgICBz ZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7 CisgICAgICAgICAgICBzZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IGFyZ3ZbMl07CisgICAgICAg IH0KKworICAgICAgICAvLyBzZXQgc3Vic2V0CisgICAgICAgIGlmIChzdHJjbXAoYXJndlszXSwg Ik5VTEwiKSA9PSAwKSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlvblsxXS52YWx1ZSA9IE5V TEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlv blsxXS52YWx1ZSA9IGFyZ3ZbM107CisgICAgICAgIH0KKworICAgICAgICAvLyBzZXQgdmFsaWRh dGUKKyAgICAgICAgaWYgKHN0cmNtcChhcmd2WzRdLCAiMCIpID09IDApIHsKKyAgICAgICAgICAg IHNlbGFiZWxfb3B0aW9uWzJdLnZhbHVlID0gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBlbHNl IHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzJdLnZhbHVlID0gKGNoYXIgKikgMTsKKyAg ICAgICAgfQorCisgICAgICAgIC8vIHNldCBiYXNlb25seQorICAgICAgICBpZiAoc3RyY21wKGFy Z3ZbNV0sICIwIikgPT0gMCkgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bM10udmFsdWUg PSBOVUxMOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgc2VsYWJlbF9v cHRpb25bM10udmFsdWUgPSAoY2hhciAqKSAxOworICAgICAgICB9CisKKyAgICAgICAgcHJpbnRm KCJzZWxhYmVsX29wdGlvbnM6ICIpOyAKKyAgICAgICAgcHJpbnRmKCJTRUxBQkVMX09QVF9QQVRI ID0gJXMsICIsIHNlbGFiZWxfb3B0aW9uWzBdLnZhbHVlKTsKKyAgICAgICAgcHJpbnRmKCJTRUxB QkVMX09QVF9TVUJTRVQgPSAlcywgIiwgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUpOworICAgICAg ICBwcmludGYoIlNFTEFCRUxfT1BUX1ZBTElEQVRFID0gJWxkLCAiLCAobG9uZyBpbnQpKGludHB0 cl90KSBzZWxhYmVsX29wdGlvblsyXS52YWx1ZSk7CisgICAgICAgIHByaW50ZigiU0VMQUJFTF9P UFRfQkFTRU9OTFkgPSAlbGRcbiIsIChsb25nIGludCkoaW50cHRyX3QpIHNlbGFiZWxfb3B0aW9u WzNdLnZhbHVlKTsKKworICAgICAgICBwcmludGYoIkV4ZWN1dGluZzogc2VsYWJlbF9vcGVuKFNF TEFCRUxfJXMsICZzZWxhYmVsX29wdGlvbiwgNClcbiIsIGFyZ3ZbMV0pOworCisgICAgICAgIGVy cm5vID0gMDsKKworICAgICAgICBpZiAoKGhuZCA9IHNlbGFiZWxfb3BlbihiYWNrZW5kLCBzZWxh YmVsX29wdGlvbiwgNCkpID09IE5VTEwpIHsKKyAgICAgICAgICAgIHBlcnJvcigic2VsYWJlbF9v cGVuIC0gRVJST1IiKTsKKyAgICAgICAgICAgIHJldHVybiAyNTU7CisgICAgICAgIH0KKyAgICB9 CisKKyAgICBpbnQgcmVzdWx0OworICAgIHNlY3VyaXR5X2NvbnRleHRfdCBzZWxhYmVsX2NvbnRl eHQ7CisgICAgY2hhciAqcGF0aDsKKworICAgIGlmIChzdHJjbXAoYXJndls2XSwgIk5VTEwiKSA9 PSAwKSB7CisgICAgICAgIHBhdGggPSBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAg cGF0aCA9IGFyZ3ZbNl07CisgICAgfQorCisgICAgLy8gbm90aWNlIHRoZSBiYXNlIDgKKyAgICBp bnQgbW9kZSA9IHN0cnRvbChhcmd2WzddLCBOVUxMLCA4KTsKKworICAgIGludCBhbGlhc19jbnQg PSBhcmdjLTg7CisgICAgY29uc3QgY2hhciAqKmFsaWFzZXMgPSBtYWxsb2MoKGFsaWFzX2NudCAr IDEpKnNpemVvZihjb25zdCBjaGFyICopKTsKKworICAgIGlmIChhbGlhc2VzID09IE5VTEwpCisg ICAgICAgIHJldHVybiAyNTU7CisKKyAgICBwcmludGYoImFsaWFzZXM6Iik7CisKKyAgICBmb3Ig KGludCBpID0gMDsgaSA8IGFsaWFzX2NudDsgaSsrKSB7CisgICAgICAgIGFsaWFzZXNbaV0gPSBh cmd2WzggKyBpXTsKKyAgICAgICAgcHJpbnRmKCIgJXMiLCBhcmd2WzggKyBpXSk7CisgICAgfQor CisgICAgcHJpbnRmKCJcbiIpOworCisgICAgYWxpYXNlc1thbGlhc19jbnRdID0gTlVMTDsKKwor ICAgIHByaW50ZigiRXhlY3V0aW5nOiBzZWxhYmVsX2xvb2t1cF9iZXN0X21hdGNoKGhuZCwgJnNl bGFiZWxfY29udGV4dCwgJXMsIGFsaWFzZXMsICVkKVxuIiwgcGF0aCwgbW9kZSk7CisKKyAgICBl cnJubyA9IDA7CisgICAgaW50IGUxID0gMCwgZTIgPSAwOworCisgICAgaWYgKChyZXN1bHQgPSBz ZWxhYmVsX2xvb2t1cF9iZXN0X21hdGNoKGhuZCwgJnNlbGFiZWxfY29udGV4dCwgcGF0aCwgYWxp YXNlcywgbW9kZSkpID09IC0xKSB7CisgICAgICAgIGUxID0gZXJybm87CisgICAgICAgIHBlcnJv cigic2VsYWJlbF9sb29rdXBfYmVzdF9tYXRjaCAtIEVSUk9SIik7CisgICAgfQorICAgIGVsc2Ug eworICAgICAgICBwcmludGYoInNlbGFiZWxfbG9va3VwX2Jlc3RfbWF0Y2ggY29udGV4dDogJXNc biIsIHNlbGFiZWxfY29udGV4dCk7CisgICAgICAgIGZyZWVjb24oc2VsYWJlbF9jb250ZXh0KTsK KyAgICB9CisKKyAgICBwcmludGYoIkV4ZWN1dGluZzogc2VsYWJlbF9sb29rdXBfYmVzdF9tYXRj aF9yYXcoaG5kLCAmc2VsYWJlbF9jb250ZXh0LCAlcywgYWxpYXNlcywgJWQpXG4iLCBwYXRoLCBt b2RlKTsKKworICAgIGVycm5vID0gMDsKKworICAgIGlmICgocmVzdWx0ID0gc2VsYWJlbF9sb29r dXBfYmVzdF9tYXRjaF9yYXcoaG5kLCAmc2VsYWJlbF9jb250ZXh0LCBwYXRoLCBhbGlhc2VzLCBt b2RlKSkgPT0gLTEpIHsKKyAgICAgICAgZTIgPSBlcnJubzsKKyAgICAgICAgcGVycm9yKCJzZWxh YmVsX2xvb2t1cF9iZXN0X21hdGNoX3JhdyAtIEVSUk9SIik7CisgICAgfQorICAgIGVsc2Ugewor ICAgICAgICBwcmludGYoInNlbGFiZWxfbG9va3VwX2Jlc3RfbWF0Y2hfcmF3IGNvbnRleHQ6ICVz XG4iLCBzZWxhYmVsX2NvbnRleHQpOworICAgICAgICBmcmVlY29uKHNlbGFiZWxfY29udGV4dCk7 CisgICAgfQorCisgICAgaWYgKGhuZCAhPSBOVUxMKQorICAgICAgICBzZWxhYmVsX2Nsb3NlKGhu ZCk7CisKKyAgICBpZiAoZTEgPT0gZTIpCisgICAgICAgIHJldHVybiBlMTsKKyAgICBlbHNlCisg ICAgICAgIHJldHVybiAyNTU7Cit9CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxhYmVsLWZ1 bmN0aW9ucy90ZXN0X2RpZ2VzdC5jIGIvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy90ZXN0 X2RpZ2VzdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2ODFmN2IKLS0t IC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25zL3Rlc3RfZGlnZXN0 LmMKQEAgLTAsMCArMSwxMjEgQEAKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxp Yi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUg PGVycm5vLmg+CisjaW5jbHVkZSA8c2VsaW51eC9zZWxpbnV4Lmg+CisjaW5jbHVkZSA8c2VsaW51 eC9sYWJlbC5oPgorCitpbnQgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgIHN0 cnVjdCBzZWxhYmVsX2hhbmRsZSAqaG5kID0gTlVMTDsKKyAgICB1bnNpZ25lZCBpbnQgYmFja2Vu ZCA9IDA7CisKKyAgICBzdHJ1Y3Qgc2VsaW51eF9vcHQgc2VsYWJlbF9vcHRpb24gW10gPSB7Cisg ICAgICAgIHsgU0VMQUJFTF9PUFRfUEFUSCwgTlVMTCB9LAorICAgICAgICB7IFNFTEFCRUxfT1BU X1ZBTElEQVRFLCAoY2hhciAqKSAxIH0sCisgICAgICAgIHsgU0VMQUJFTF9PUFRfRElHRVNULCAo Y2hhciAqKSAxIH0KKyAgICB9OworCisgICAgaWYgKGFyZ2MgPCA1KSB7CisgICAgICAgIGZwcmlu dGYoc3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAgICAgcmV0 dXJuIDI1NTsKKyAgICB9CisKKyAgICAvLyBzZXQgYmFja2VuZAorICAgIGlmIChzdHJjbXAoYXJn dlsxXSwgIkNUWF9GSUxFIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX0ZJ TEU7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfTUVESUEiKSA9PSAwKQorICAg ICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfTUVESUE7CisgICAgZWxzZSBpZiAoc3RyY21wKGFy Z3ZbMV0sICJDVFhfWCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NUWF9YOwor ICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX0RCIikgPT0gMCkKKyAgICAgICAgYmFj a2VuZCA9IFNFTEFCRUxfQ1RYX0RCOworI2lmbmRlZiBSSEVMNgorICAgIGVsc2UgaWYgKHN0cmNt cChhcmd2WzFdLCAiQ1RYX0FORFJPSURfUFJPUCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBT RUxBQkVMX0NUWF9BTkRST0lEX1BST1A7CisjZW5kaWYKKyAgICBlbHNlCisgICAgICAgIGJhY2tl bmQgPSBzdHJ0b3VsKGFyZ3ZbMV0sIE5VTEwsIDEwKTsKKworCisgICAgaWYgKChhcmdjID09IDYp ICYmIChzdHJjbXAoYXJndls1XSwgIm5vaGFuZGxlIikgPT0gMCkpIHsKKyAgICAgICAgaG5kID0g TlVMTDsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIC8vIHNldCBmaWxlIGNvbnRleHRzIHBh dGgKKyAgICAgICAgaWYgKHN0cmNtcChhcmd2WzJdLCAiTlVMTCIpID09IDApIHsKKyAgICAgICAg ICAgIHNlbGFiZWxfb3B0aW9uWzBdLnZhbHVlID0gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBl bHNlIHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzBdLnZhbHVlID0gYXJndlsyXTsKKyAg ICAgICAgfQorCisgICAgICAgIC8vIHNldCB2YWxpZGF0ZQorICAgICAgICBpZiAoc3RyY21wKGFy Z3ZbM10sICIwIikgPT0gMCkgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUg PSBOVUxMOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgc2VsYWJlbF9v cHRpb25bMV0udmFsdWUgPSAoY2hhciAqKSAxOworICAgICAgICB9CisKKyAgICAgICAgLy8gc2V0 IGRpZ2VzdAorICAgICAgICBpZiAoc3RyY21wKGFyZ3ZbNF0sICIwIikgPT0gMCkgeworICAgICAg ICAgICAgc2VsYWJlbF9vcHRpb25bMl0udmFsdWUgPSBOVUxMOworICAgICAgICB9CisgICAgICAg IGVsc2UgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bMl0udmFsdWUgPSAoY2hhciAqKSAx OworICAgICAgICB9CisKKyAgICAgICAgcHJpbnRmKCJzZWxhYmVsX29wdGlvbnM6ICIpOyAKKyAg ICAgICAgcHJpbnRmKCJTRUxBQkVMX09QVF9QQVRIID0gJXMsICIsIHNlbGFiZWxfb3B0aW9uWzBd LnZhbHVlKTsKKyAgICAgICAgcHJpbnRmKCJTRUxBQkVMX09QVF9WQUxJREFURSA9ICVsZCwgIiwg KGxvbmcgaW50KShpbnRwdHJfdCkgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUpOworICAgICAgICBw cmludGYoIlNFTEFCRUxfT1BUX0RJR0VTVCA9ICVsZCwgIiwgKGxvbmcgaW50KShpbnRwdHJfdCkg c2VsYWJlbF9vcHRpb25bMl0udmFsdWUpOworCisgICAgICAgIHByaW50ZigiRXhlY3V0aW5nOiBz ZWxhYmVsX29wZW4oU0VMQUJFTF8lcywgJnNlbGFiZWxfb3B0aW9uLCAzKVxuIiwgYXJndlsxXSk7 CisKKyAgICAgICAgZXJybm8gPSAwOworCisgICAgICAgIGlmICgoaG5kID0gc2VsYWJlbF9vcGVu KGJhY2tlbmQsIHNlbGFiZWxfb3B0aW9uLCAzKSkgPT0gTlVMTCkgeworICAgICAgICAgICAgcGVy cm9yKCJzZWxhYmVsX29wZW4gLSBFUlJPUiIpOworICAgICAgICAgICAgcmV0dXJuIDI1NTsKKyAg ICAgICAgfQorICAgIH0KKworICAgIHVuc2lnbmVkIGNoYXIgKmRpZ2VzdDsKKyAgICBzaXplX3Qg ZGlnZXN0X2xlbjsKKyAgICBjaGFyICoqc3BlY2ZpbGVzOworICAgIHNpemVfdCBudW1fc3BlY2Zp bGVzOworICAgIGludCByZXN1bHQsIGUgPSAwOworCisgICAgcHJpbnRmKCJFeGVjdXRpbmc6IHNl bGFiZWxfZGlnZXN0KGhuZCwgZGlnZXN0LCBkaWdlc3RfbGVuLCBzcGVjZmlsZXMsIG51bV9zcGVj ZmlsZXMpXG4iKTsKKyAgICAKKyAgICBlcnJubyA9IDA7CisgICAgCisgICAgaWYgKChyZXN1bHQg PSBzZWxhYmVsX2RpZ2VzdChobmQsICZkaWdlc3QsICZkaWdlc3RfbGVuLCAmc3BlY2ZpbGVzLCAm bnVtX3NwZWNmaWxlcykpID09IC0xKSB7CisgICAgICAgIGUgPSBlcnJubzsKKyAgICAgICAgcGVy cm9yKCJzZWxhYmVsX2RpZ2VzdCAtIEVSUk9SIik7CisgICAgfQorICAgIGVsc2UgeworICAgICAg ICBwcmludGYoImRpZ2VzdF9sZW46ICVsdVxuIiwgZGlnZXN0X2xlbik7CisKKyAgICAgICAgcHJp bnRmKCJkaWdlc3Q6ICIpOworCisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgZGlnZXN0 X2xlbjsgaSsrKQorICAgICAgICAgICAgcHJpbnRmKCIlMngiLCBkaWdlc3RbaV0pOworCisgICAg ICAgIHByaW50ZigiXG4iKTsKKworICAgICAgICBwcmludGYoIm51bV9zcGVjZmlsZXM6ICVsdVxu IiwgbnVtX3NwZWNmaWxlcyk7CisKKyAgICAgICAgcHJpbnRmKCJzcGVjZmlsZXM6XG4iKTsKKwor ICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG51bV9zcGVjZmlsZXM7IGkrKykKKyAgICAg ICAgICAgIHByaW50Zigic3BlY2ZpbGU6ICVzXG4iLCBzcGVjZmlsZXNbaV0pOworICAgIH0KKwor ICAgIGlmIChobmQgIT0gTlVMTCkKKyAgICAgICAgc2VsYWJlbF9jbG9zZShobmQpOworCisgICAg cmV0dXJuIGU7Cit9CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy90 ZXN0X2xvb2t1cC5jIGIvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy90ZXN0X2xvb2t1cC5j Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlMGNhYWEKLS0tIC9kZXYvbnVs bAorKysgYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25zL3Rlc3RfbG9va3VwLmMKQEAgLTAs MCArMSwxODkgQEAKKyNpbmNsdWRlIDxzdGRpby5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2lu Y2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGludC5oPgorI2luY2x1ZGUgPGVycm5vLmg+ CisjaW5jbHVkZSA8c2VsaW51eC9zZWxpbnV4Lmg+CisjaW5jbHVkZSA8c2VsaW51eC9sYWJlbC5o PgorCitpbnQgbWFpbiAoaW50IGFyZ2MsIGNoYXIgKiphcmd2KQoreworICAgIHN0cnVjdCBzZWxh YmVsX2hhbmRsZSAqaG5kID0gTlVMTDsKKyAgICB1bnNpZ25lZCBpbnQgYmFja2VuZCA9IDA7CisK KyAgICBzdHJ1Y3Qgc2VsaW51eF9vcHQgc2VsYWJlbF9vcHRpb24gW10gPSB7CisgICAgICAgIHsg U0VMQUJFTF9PUFRfUEFUSCwgTlVMTCB9LAorICAgICAgICB7IFNFTEFCRUxfT1BUX1NVQlNFVCwg TlVMTCB9LAorICAgICAgICB7IFNFTEFCRUxfT1BUX1ZBTElEQVRFLCAoY2hhciAqKSAxIH0sCisg ICAgICAgIHsgU0VMQUJFTF9PUFRfQkFTRU9OTFksIChjaGFyICopIDEgfQorICAgIH07CisKKyAg ICBpZiAoYXJnYyA8IDgpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJJbnZhbGlkIG51bWJl ciBvZiBhcmd1bWVudHNcbiIpOworICAgICAgICByZXR1cm4gMjU1OworICAgIH0KKworICAgIC8v IHNldCBiYWNrZW5kCisgICAgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX0ZJTEUiKSA9PSAwKQor ICAgICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfRklMRTsKKyAgICBlbHNlIGlmIChzdHJjbXAo YXJndlsxXSwgIkNUWF9NRURJQSIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NU WF9NRURJQTsKKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsxXSwgIkNUWF9YIikgPT0gMCkKKyAg ICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX1g7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3Zb MV0sICJDVFhfREIiKSA9PSAwKQorICAgICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfREI7Cisj aWZuZGVmIFJIRUw2CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfQU5EUk9JRF9Q Uk9QIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX0FORFJPSURfUFJPUDsK KyNlbmRpZgorICAgIGVsc2UKKyAgICAgICAgYmFja2VuZCA9IHN0cnRvdWwoYXJndlsxXSwgTlVM TCwgMTApOworCisKKyAgICBpZiAoKGFyZ2MgPT0gOSkgJiYgKHN0cmNtcChhcmd2WzhdLCAibm9o YW5kbGUiKSA9PSAwKSkgeworICAgICAgICBobmQgPSBOVUxMOworICAgIH0KKyAgICBlbHNlIHsK KyAgICAgICAgLy8gc2V0IGZpbGUgY29udGV4dHMgcGF0aAorICAgICAgICBpZiAoc3RyY21wKGFy Z3ZbMl0sICJOVUxMIikgPT0gMCkgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bMF0udmFs dWUgPSBOVUxMOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgc2VsYWJl bF9vcHRpb25bMF0udmFsdWUgPSBhcmd2WzJdOworICAgICAgICB9CisKKyAgICAgICAgLy8gc2V0 IHN1YnNldAorICAgICAgICBpZiAoc3RyY21wKGFyZ3ZbM10sICJOVUxMIikgPT0gMCkgeworICAg ICAgICAgICAgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUgPSBOVUxMOworICAgICAgICB9CisgICAg ICAgIGVsc2UgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUgPSBhcmd2WzNd OworICAgICAgICB9CisKKyAgICAgICAgLy8gc2V0IHZhbGlkYXRlCisgICAgICAgIGlmIChzdHJj bXAoYXJndls0XSwgIjAiKSA9PSAwKSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlvblsyXS52 YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBzZWxh YmVsX29wdGlvblsyXS52YWx1ZSA9IChjaGFyICopIDE7CisgICAgICAgIH0KKworICAgICAgICAv LyBzZXQgYmFzZW9ubHkKKyAgICAgICAgaWYgKHN0cmNtcChhcmd2WzVdLCAiMCIpID09IDApIHsK KyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzNdLnZhbHVlID0gTlVMTDsKKyAgICAgICAgfQor ICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzNdLnZhbHVlID0gKGNo YXIgKikgMTsKKyAgICAgICAgfQorCisgICAgICAgIHByaW50Zigic2VsYWJlbF9vcHRpb25zOiAi KTsgCisgICAgICAgIHByaW50ZigiU0VMQUJFTF9PUFRfUEFUSCA9ICVzLCAiLCBzZWxhYmVsX29w dGlvblswXS52YWx1ZSk7CisgICAgICAgIHByaW50ZigiU0VMQUJFTF9PUFRfU1VCU0VUID0gJXMs ICIsIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlKTsKKyAgICAgICAgcHJpbnRmKCJTRUxBQkVMX09Q VF9WQUxJREFURSA9ICVsZCwgIiwgKGxvbmcgaW50KShpbnRwdHJfdCkgc2VsYWJlbF9vcHRpb25b Ml0udmFsdWUpOworICAgICAgICBwcmludGYoIlNFTEFCRUxfT1BUX0JBU0VPTkxZID0gJWxkXG4i LCAobG9uZyBpbnQpKGludHB0cl90KSBzZWxhYmVsX29wdGlvblszXS52YWx1ZSk7CisKKyAgICAg ICAgcHJpbnRmKCJFeGVjdXRpbmc6IHNlbGFiZWxfb3BlbihTRUxBQkVMXyVzLCAmc2VsYWJlbF9v cHRpb24sIDQpXG4iLCBhcmd2WzFdKTsKKworICAgICAgICBlcnJubyA9IDA7CisKKyAgICAgICAg aWYgKChobmQgPSBzZWxhYmVsX29wZW4oYmFja2VuZCwgc2VsYWJlbF9vcHRpb24sIDQpKSA9PSBO VUxMKSB7CisgICAgICAgICAgICBwZXJyb3IoInNlbGFiZWxfb3BlbiAtIEVSUk9SIik7CisgICAg ICAgICAgICByZXR1cm4gMjU1OworICAgICAgICB9CisgICAgfQorCisgICAgaW50IHJlc3VsdDsK KyAgICBzZWN1cml0eV9jb250ZXh0X3Qgc2VsYWJlbF9jb250ZXh0OworICAgIGNoYXIgKnBhdGg7 CisgICAgaW50IG1vZGU7CisgICAgCisgICAgaWYgKHN0cmNtcChhcmd2WzddLCAiWF9QUk9QIikg PT0gMCkKKyAgICAgICAgbW9kZSA9IFNFTEFCRUxfWF9QUk9QOworICAgIGVsc2UgaWYgKHN0cmNt cChhcmd2WzddLCAiWF9TRUxOIikgPT0gMCkKKyAgICAgICAgbW9kZSA9IFNFTEFCRUxfWF9TRUxO OworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzddLCAiWF9FWFQiKSA9PSAwKQorICAgICAgICBt b2RlID0gU0VMQUJFTF9YX0VYVDsKKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndls3XSwgIlhfRVZF TlQiKSA9PSAwKQorICAgICAgICBtb2RlID0gU0VMQUJFTF9YX0VWRU5UOworICAgIGVsc2UgaWYg KHN0cmNtcChhcmd2WzddLCAiWF9DTElFTlQiKSA9PSAwKQorICAgICAgICBtb2RlID0gU0VMQUJF TF9YX0NMSUVOVDsKKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndls3XSwgIlhfUE9MWVBST1AiKSA9 PSAwKQorICAgICAgICBtb2RlID0gU0VMQUJFTF9YX1BPTFlQUk9QOworICAgIGVsc2UgaWYgKHN0 cmNtcChhcmd2WzddLCAiWF9QT0xZU0VMTiIpID09IDApCisgICAgICAgIG1vZGUgPSBTRUxBQkVM X1hfUE9MWVNFTE47CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbN10sICJEQl9EQVRBQkFTRSIp ID09IDApCisgICAgICAgIG1vZGUgPSBTRUxBQkVMX0RCX0RBVEFCQVNFOworICAgIGVsc2UgaWYg KHN0cmNtcChhcmd2WzddLCAiREJfU0NIRU1BIikgPT0gMCkKKyAgICAgICAgbW9kZSA9IFNFTEFC RUxfREJfU0NIRU1BOworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzddLCAiREJfVklFVyIpID09 IDApCisgICAgICAgIG1vZGUgPSBTRUxBQkVMX0RCX1ZJRVc7CisgICAgZWxzZSBpZiAoc3RyY21w KGFyZ3ZbN10sICJEQl9UQUJMRSIpID09IDApCisgICAgICAgIG1vZGUgPSBTRUxBQkVMX0RCX1RB QkxFOworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzddLCAiREJfQ09MVU1OIikgPT0gMCkKKyAg ICAgICAgbW9kZSA9IFNFTEFCRUxfREJfQ09MVU1OOworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2 WzddLCAiREJfVFVQTEUiKSA9PSAwKQorICAgICAgICBtb2RlID0gU0VMQUJFTF9EQl9UVVBMRTsK KyAgICBlbHNlIGlmIChzdHJjbXAoYXJndls3XSwgIkRCX1BST0NFRFVSRSIpID09IDApCisgICAg ICAgIG1vZGUgPSBTRUxBQkVMX0RCX1BST0NFRFVSRTsKKyAgICBlbHNlIGlmIChzdHJjbXAoYXJn dls3XSwgIkRCX1NFUVVFTkNFIikgPT0gMCkKKyAgICAgICAgbW9kZSA9IFNFTEFCRUxfREJfU0VR VUVOQ0U7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbN10sICJEQl9CTE9CIikgPT0gMCkKKyAg ICAgICAgbW9kZSA9IFNFTEFCRUxfREJfQkxPQjsKKyNpZm5kZWYgUkhFTDYKKyAgICBlbHNlIGlm IChzdHJjbXAoYXJndls3XSwgIkRCX0xBTkdVQUdFIikgPT0gMCkKKyAgICAgICAgbW9kZSA9IFNF TEFCRUxfREJfTEFOR1VBR0U7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbN10sICJEQl9FWENF UFRJT04iKSA9PSAwKQorICAgICAgICBtb2RlID0gU0VMQUJFTF9EQl9FWENFUFRJT047CisgICAg ZWxzZSBpZiAoc3RyY21wKGFyZ3ZbN10sICJEQl9EQVRBVFlQRSIpID09IDApCisgICAgICAgIG1v ZGUgPSBTRUxBQkVMX0RCX0RBVEFUWVBFOworI2VuZGlmCisgICAgZWxzZQorICAgICAgICAvLyBu b3RpY2UgdGhlIGJhc2UgOAorICAgICAgICBtb2RlID0gc3RydG9sKGFyZ3ZbN10sIE5VTEwsIDgp OworICAgIAorICAgIGludCBlMSA9IDAsIGUyID0gMDsKKworICAgIGlmIChzdHJjbXAoYXJndls2 XSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgIHBhdGggPSBOVUxMOworICAgIH0KKyAgICBlbHNl IGlmIChzdHJjbXAoYXJndls2XSwgIicqJyIpID09IDApIHsKKyAgICAgICAgcGF0aCA9ICIqIjsK KyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHBhdGggPSBhcmd2WzZdOworICAgIH0KKworICAg IHByaW50ZigiRXhlY3V0aW5nOiBzZWxhYmVsX2xvb2t1cChobmQsICZzZWxhYmVsX2NvbnRleHQs ICVzLCAlZClcbiIsIHBhdGgsIG1vZGUpOworCisgICAgZXJybm8gPSAwOworICAgIAorICAgIGlm ICgocmVzdWx0ID0gc2VsYWJlbF9sb29rdXAoaG5kLCAmc2VsYWJlbF9jb250ZXh0LCBwYXRoLCBt b2RlKSkgPT0gLTEpIHsKKyAgICAgICAgZTEgPSBlcnJubzsKKyAgICAgICAgcGVycm9yKCJzZWxh YmVsX2xvb2t1cCAtIEVSUk9SIik7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBwcmludGYo InNlbGFiZWxfbG9va3VwIGNvbnRleHQ6ICVzXG4iLCBzZWxhYmVsX2NvbnRleHQpOworICAgICAg ICBmcmVlY29uKHNlbGFiZWxfY29udGV4dCk7CisgICAgfQorCisgICAgcHJpbnRmKCJFeGVjdXRp bmc6IHNlbGFiZWxfbG9va3VwX3JhdyhobmQsICZzZWxhYmVsX2NvbnRleHQsICVzLCAlZClcbiIs IHBhdGgsIG1vZGUpOworCisgICAgZXJybm8gPSAwOworICAgIAorICAgIGlmICgocmVzdWx0ID0g c2VsYWJlbF9sb29rdXBfcmF3KGhuZCwgJnNlbGFiZWxfY29udGV4dCwgcGF0aCwgbW9kZSkpID09 IC0xKSB7CisgICAgICAgIGUyID0gZXJybm87CisgICAgICAgIHBlcnJvcigic2VsYWJlbF9sb29r dXBfcmF3IC0gRVJST1IiKTsKKyAgICB9CisgICAgZWxzZSB7CisgICAgICAgIHByaW50Zigic2Vs YWJlbF9sb29rdXBfcmF3IGNvbnRleHQ6ICVzXG4iLCBzZWxhYmVsX2NvbnRleHQpOworICAgICAg ICBmcmVlY29uKHNlbGFiZWxfY29udGV4dCk7CisgICAgfQorCisgICAgaWYgKGhuZCAhPSBOVUxM KQorICAgICAgICBzZWxhYmVsX2Nsb3NlKGhuZCk7CisKKyAgICBpZiAoZTEgPT0gZTIpCisgICAg ICAgIHJldHVybiBlMTsKKyAgICBlbHNlCisgICAgICAgIHJldHVybiAyNTU7Cit9CgpkaWZmIC0t Z2l0IGEvbGlic2VsaW51eC9zZWxhYmVsLWZ1bmN0aW9ucy90ZXN0X29wZW4uYyBiL2xpYnNlbGlu dXgvc2VsYWJlbC1mdW5jdGlvbnMvdGVzdF9vcGVuLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uODdmNjFlZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgvc2VsYWJl bC1mdW5jdGlvbnMvdGVzdF9vcGVuLmMKQEAgLTAsMCArMSwxMDAgQEAKKyNpbmNsdWRlIDxzdGRp by5oPgorI2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUg PHN0ZGludC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c2VsaW51eC9zZWxpbnV4 Lmg+CisjaW5jbHVkZSA8c2VsaW51eC9sYWJlbC5oPgorCitpbnQgbWFpbiAoaW50IGFyZ2MsIGNo YXIgKiphcmd2KQoreworICAgIHN0cnVjdCBzZWxhYmVsX2hhbmRsZSAqaG5kID0gTlVMTDsKKyAg ICBpbnQgbm9wdCA9IDA7CisgICAgdW5zaWduZWQgaW50IGJhY2tlbmQgPSAwOworCisgICAgc3Ry dWN0IHNlbGludXhfb3B0IHNlbGFiZWxfb3B0aW9uIFtdID0geworICAgICAgICB7IFNFTEFCRUxf T1BUX1BBVEgsIE5VTEwgfSwKKyAgICAgICAgeyBTRUxBQkVMX09QVF9TVUJTRVQsIE5VTEwgfSwK KyAgICAgICAgeyBTRUxBQkVMX09QVF9WQUxJREFURSwgKGNoYXIgKikgMSB9LAorICAgICAgICB7 IFNFTEFCRUxfT1BUX0JBU0VPTkxZLCAoY2hhciAqKSAxIH0KKyAgICB9OworCisgICAgaWYgKGFy Z2MgPCA2KSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJn dW1lbnRzXG4iKTsKKyAgICAgICAgcmV0dXJuIDI1NTsKKyAgICB9CisKKyAgICAvLyBzZXQgYmFj a2VuZAorICAgIGlmIChzdHJjbXAoYXJndlsxXSwgIkNUWF9GSUxFIikgPT0gMCkKKyAgICAgICAg YmFja2VuZCA9IFNFTEFCRUxfQ1RYX0ZJTEU7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0s ICJDVFhfTUVESUEiKSA9PSAwKQorICAgICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfTUVESUE7 CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfWCIpID09IDApCisgICAgICAgIGJh Y2tlbmQgPSBTRUxBQkVMX0NUWF9YOworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RY X0RCIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX0RCOworI2lmbmRlZiBS SEVMNgorICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX0FORFJPSURfUFJPUCIpID09 IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NUWF9BTkRST0lEX1BST1A7CisjZW5kaWYK KyAgICBlbHNlCisgICAgICAgIGJhY2tlbmQgPSBzdHJ0b3VsKGFyZ3ZbMV0sIE5VTEwsIDEwKTsK KworICAgIC8vIHNldCBmaWxlIGNvbnRleHRzIHBhdGgKKyAgICBpZiAoc3RyY21wKGFyZ3ZbMl0s ICJOVUxMIikgPT0gMCkgeworICAgICAgICBzZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IE5VTEw7 CisJfQorCWVsc2UgeworICAgICAgICBzZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IGFyZ3ZbMl07 CisJfQorCisgICAgLy8gc2V0IHN1YnNldAorICAgIGlmIChzdHJjbXAoYXJndlszXSwgIk5VTEwi KSA9PSAwKSB7CisgICAgICAgIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlID0gTlVMTDsKKwl9CisJ ZWxzZSB7CisgICAgICAgIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlID0gYXJndlszXTsKKwl9CisK KyAgICAvLyBzZXQgdmFsaWRhdGUKKyAgICBpZiAoc3RyY21wKGFyZ3ZbNF0sICIwIikgPT0gMCkg eworICAgICAgICBzZWxhYmVsX29wdGlvblsyXS52YWx1ZSA9IE5VTEw7CisJfQorCWVsc2Ugewor ICAgICAgICBzZWxhYmVsX29wdGlvblsyXS52YWx1ZSA9IChjaGFyICopIDE7CisJfQorCisgICAg Ly8gc2V0IGJhc2Vvbmx5CisgICAgaWYgKHN0cmNtcChhcmd2WzVdLCAiMCIpID09IDApIHsKKyAg ICAgICAgc2VsYWJlbF9vcHRpb25bM10udmFsdWUgPSBOVUxMOworCX0KKwllbHNlIHsKKyAgICAg ICAgc2VsYWJlbF9vcHRpb25bM10udmFsdWUgPSAoY2hhciAqKSAxOworCX0KKworICAgIGlmIChh cmdjID09IDcpIHsKKyAgICAgICAgbm9wdCA9IHN0cnRvbChhcmd2WzZdLCBOVUxMLCAxMCk7Cisg ICAgfQorICAgIGVsc2UgeworICAgICAgICBub3B0ID0gNDsKKyAgICB9CisKKyAgICBwcmludGYo InNlbGFiZWxfb3B0aW9uczogIik7IAorICAgIHByaW50ZigiU0VMQUJFTF9PUFRfUEFUSCA9ICVz LCAiLCBzZWxhYmVsX29wdGlvblswXS52YWx1ZSk7CisgICAgcHJpbnRmKCJTRUxBQkVMX09QVF9T VUJTRVQgPSAlcywgIiwgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUpOworICAgIHByaW50ZigiU0VM QUJFTF9PUFRfVkFMSURBVEUgPSAlbGQsICIsIChsb25nIGludCkoaW50cHRyX3QpIHNlbGFiZWxf b3B0aW9uWzJdLnZhbHVlKTsKKyAgICBwcmludGYoIlNFTEFCRUxfT1BUX0JBU0VPTkxZID0gJWxk XG4iLCAobG9uZyBpbnQpKGludHB0cl90KSBzZWxhYmVsX29wdGlvblszXS52YWx1ZSk7CisKKyAg ICBwcmludGYoIkV4ZWN1dGluZzogc2VsYWJlbF9vcGVuKFNFTEFCRUxfJXMsICZzZWxhYmVsX29w dGlvbiwgJWQpXG5cbiIsIGFyZ3ZbMV0sIG5vcHQpOworCisgICAgZXJybm8gPSAwOworCisgICAg aWYgKChobmQgPSBzZWxhYmVsX29wZW4oYmFja2VuZCwgc2VsYWJlbF9vcHRpb24sIG5vcHQpKSA9 PSBOVUxMKSB7CisgICAgICAgIGludCBlID0gZXJybm87CisgICAgICAgIHBlcnJvcigic2VsYWJl bF9vcGVuIC0gRVJST1IiKTsKKyAgICAgICAgcmV0dXJuIGU7CisgICAgfQorCisgICAgc2VsYWJl bF9jbG9zZShobmQpOworICAgIHJldHVybiAwOworfQoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgv c2VsYWJlbC1mdW5jdGlvbnMvdGVzdF9wYXJ0aWFsLmMgYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVu Y3Rpb25zL3Rlc3RfcGFydGlhbC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LjQ1MTNjZmEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25z L3Rlc3RfcGFydGlhbC5jCkBAIC0wLDAgKzEsMTE1IEBACisjaW5jbHVkZSA8c3RkaW8uaD4KKyNp bmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpbnQu aD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgorI2lu Y2x1ZGUgPHNlbGludXgvbGFiZWwuaD4KKworaW50IG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJn dikKK3sKKyAgICBzdHJ1Y3Qgc2VsYWJlbF9oYW5kbGUgKmhuZCA9IE5VTEw7CisgICAgdW5zaWdu ZWQgaW50IGJhY2tlbmQgPSAwOworCisgICAgc3RydWN0IHNlbGludXhfb3B0IHNlbGFiZWxfb3B0 aW9uIFtdID0geworICAgICAgICB7IFNFTEFCRUxfT1BUX1BBVEgsIE5VTEwgfSwKKyAgICAgICAg eyBTRUxBQkVMX09QVF9TVUJTRVQsIE5VTEwgfSwKKyAgICAgICAgeyBTRUxBQkVMX09QVF9WQUxJ REFURSwgKGNoYXIgKikgMSB9LAorICAgICAgICB7IFNFTEFCRUxfT1BUX0JBU0VPTkxZLCAoY2hh ciAqKSAxIH0KKyAgICB9OworCisgICAgaWYgKGFyZ2MgPCA3KSB7CisgICAgICAgIGZwcmludGYo c3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAgICAgcmV0dXJu IDI1NTsKKyAgICB9CisKKyAgICAvLyBzZXQgYmFja2VuZAorICAgIGlmIChzdHJjbXAoYXJndlsx XSwgIkNUWF9GSUxFIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNFTEFCRUxfQ1RYX0ZJTEU7 CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfTUVESUEiKSA9PSAwKQorICAgICAg ICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfTUVESUE7CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3Zb MV0sICJDVFhfWCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NUWF9YOworICAg IGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX0RCIikgPT0gMCkKKyAgICAgICAgYmFja2Vu ZCA9IFNFTEFCRUxfQ1RYX0RCOworI2lmbmRlZiBSSEVMNgorICAgIGVsc2UgaWYgKHN0cmNtcChh cmd2WzFdLCAiQ1RYX0FORFJPSURfUFJPUCIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxB QkVMX0NUWF9BTkRST0lEX1BST1A7CisjZW5kaWYKKyAgICBlbHNlCisgICAgICAgIGJhY2tlbmQg PSBzdHJ0b3VsKGFyZ3ZbMV0sIE5VTEwsIDEwKTsKKworICAgIGlmICgoYXJnYyA9PSA4KSAmJiAo c3RyY21wKGFyZ3ZbN10sICJub2hhbmRsZSIpID09IDApKSB7CisgICAgICAgIGhuZCA9IE5VTEw7 CisgICAgfQorICAgIGVsc2UgeworICAgICAgICAvLyBzZXQgZmlsZSBjb250ZXh0cyBwYXRoCisg ICAgICAgIGlmIChzdHJjbXAoYXJndlsyXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgICAgICBz ZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7 CisgICAgICAgICAgICBzZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IGFyZ3ZbMl07CisgICAgICAg IH0KKworICAgICAgICAvLyBzZXQgc3Vic2V0CisgICAgICAgIGlmIChzdHJjbXAoYXJndlszXSwg Ik5VTEwiKSA9PSAwKSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlvblsxXS52YWx1ZSA9IE5V TEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlv blsxXS52YWx1ZSA9IGFyZ3ZbM107CisgICAgICAgIH0KKworICAgICAgICAvLyBzZXQgdmFsaWRh dGUKKyAgICAgICAgaWYgKHN0cmNtcChhcmd2WzRdLCAiMCIpID09IDApIHsKKyAgICAgICAgICAg IHNlbGFiZWxfb3B0aW9uWzJdLnZhbHVlID0gTlVMTDsKKyAgICAgICAgfQorICAgICAgICBlbHNl IHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzJdLnZhbHVlID0gKGNoYXIgKikgMTsKKyAg ICAgICAgfQorCisgICAgICAgIC8vIHNldCBiYXNlb25seQorICAgICAgICBpZiAoc3RyY21wKGFy Z3ZbNV0sICIwIikgPT0gMCkgeworICAgICAgICAgICAgc2VsYWJlbF9vcHRpb25bM10udmFsdWUg PSBOVUxMOworICAgICAgICB9CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgc2VsYWJlbF9v cHRpb25bM10udmFsdWUgPSAoY2hhciAqKSAxOworICAgICAgICB9CisKKyAgICAgICAgcHJpbnRm KCJzZWxhYmVsX29wdGlvbnM6ICIpOyAKKyAgICAgICAgcHJpbnRmKCJTRUxBQkVMX09QVF9QQVRI ID0gJXMsICIsIHNlbGFiZWxfb3B0aW9uWzBdLnZhbHVlKTsKKyAgICAgICAgcHJpbnRmKCJTRUxB QkVMX09QVF9TVUJTRVQgPSAlcywgIiwgc2VsYWJlbF9vcHRpb25bMV0udmFsdWUpOworICAgICAg ICBwcmludGYoIlNFTEFCRUxfT1BUX1ZBTElEQVRFID0gJWxkLCAiLCAobG9uZyBpbnQpKGludHB0 cl90KSBzZWxhYmVsX29wdGlvblsyXS52YWx1ZSk7CisgICAgICAgIHByaW50ZigiU0VMQUJFTF9P UFRfQkFTRU9OTFkgPSAlbGRcbiIsIChsb25nIGludCkoaW50cHRyX3QpIHNlbGFiZWxfb3B0aW9u WzNdLnZhbHVlKTsKKworICAgICAgICBwcmludGYoIkV4ZWN1dGluZzogc2VsYWJlbF9vcGVuKFNF TEFCRUxfJXMsICZzZWxhYmVsX29wdGlvbiwgNClcbiIsIGFyZ3ZbMV0pOworCisgICAgICAgIGVy cm5vID0gMDsKKworICAgICAgICBpZiAoKGhuZCA9IHNlbGFiZWxfb3BlbihiYWNrZW5kLCBzZWxh YmVsX29wdGlvbiwgNCkpID09IE5VTEwpIHsKKyAgICAgICAgICAgIGludCBlID0gZXJybm87Cisg ICAgICAgICAgICBwZXJyb3IoInNlbGFiZWxfb3BlbiAtIEVSUk9SIik7CisgICAgICAgICAgICBy ZXR1cm4gZTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNoYXIgKnBhdGg7CisKKyAgICBpZiAo c3RyY21wKGFyZ3ZbNl0sICJOVUxMIikgPT0gMCkgeworICAgICAgICBwYXRoID0gTlVMTDsKKyAg ICB9CisgICAgZWxzZSB7CisgICAgICAgIHBhdGggPSBhcmd2WzZdOworICAgIH0KKworICAgIHBy aW50ZigiRXhlY3V0aW5nOiBzZWxhYmVsX3BhcnRpYWxfbWF0Y2goaG5kLCAlcylcbiIsIHBhdGgp OworCisgICAgZXJybm8gPSAwOworICAgIAorICAgIGlmIChzZWxhYmVsX3BhcnRpYWxfbWF0Y2go aG5kLCBwYXRoKSkKKyAgICAgICAgcHJpbnRmKCJzZWxhYmVsX3BhcnRpYWxfbWF0Y2g6IHRydWVc biIpOworICAgIGVsc2UKKyAgICAgICAgcHJpbnRmKCJzZWxhYmVsX3BhcnRpYWxfbWF0Y2g6IGZh bHNlXG4iKTsKKworICAgIHNlbGFiZWxfY2xvc2UoaG5kKTsKKyAgICByZXR1cm4gMDsKK30KCmRp ZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGFiZWwtZnVuY3Rpb25zL3Rlc3Rfc3RhdHMuYyBiL2xp YnNlbGludXgvc2VsYWJlbC1mdW5jdGlvbnMvdGVzdF9zdGF0cy5jCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLmIwNDhiOTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4 L3NlbGFiZWwtZnVuY3Rpb25zL3Rlc3Rfc3RhdHMuYwpAQCAtMCwwICsxLDgzIEBACisjaW5jbHVk ZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNp bmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxlcnJuby5oPgorI2luY2x1ZGUgPHNlbGludXgv c2VsaW51eC5oPgorI2luY2x1ZGUgPHNlbGludXgvbGFiZWwuaD4KKworaW50IG1haW4gKGludCBh cmdjLCBjaGFyICoqYXJndikKK3sKKyAgICBzdHJ1Y3Qgc2VsYWJlbF9oYW5kbGUgKmhuZCA9IE5V TEw7CisgICAgdW5zaWduZWQgaW50IGJhY2tlbmQgPSAwOworCisgICAgc3RydWN0IHNlbGludXhf b3B0IHNlbGFiZWxfb3B0aW9uIFtdID0geworICAgICAgICB7IFNFTEFCRUxfT1BUX1BBVEgsIE5V TEwgfSwKKyAgICAgICAgeyBTRUxBQkVMX09QVF9WQUxJREFURSwgKGNoYXIgKikgMSB9CisgICAg fTsKKworICAgIGlmIChhcmdjIDwgNCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkludmFs aWQgbnVtYmVyIG9mIGFyZ3VtZW50c1xuIik7CisgICAgICAgIHJldHVybiAyNTU7CisgICAgfQor CisgICAgLy8gc2V0IGJhY2tlbmQKKyAgICBpZiAoc3RyY21wKGFyZ3ZbMV0sICJDVFhfRklMRSIp ID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NUWF9GSUxFOworICAgIGVsc2UgaWYg KHN0cmNtcChhcmd2WzFdLCAiQ1RYX01FRElBIikgPT0gMCkKKyAgICAgICAgYmFja2VuZCA9IFNF TEFCRUxfQ1RYX01FRElBOworICAgIGVsc2UgaWYgKHN0cmNtcChhcmd2WzFdLCAiQ1RYX1giKSA9 PSAwKQorICAgICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfWDsKKyAgICBlbHNlIGlmIChzdHJj bXAoYXJndlsxXSwgIkNUWF9EQiIpID09IDApCisgICAgICAgIGJhY2tlbmQgPSBTRUxBQkVMX0NU WF9EQjsKKyNpZm5kZWYgUkhFTDYKKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsxXSwgIkNUWF9B TkRST0lEX1BST1AiKSA9PSAwKQorICAgICAgICBiYWNrZW5kID0gU0VMQUJFTF9DVFhfQU5EUk9J RF9QUk9QOworI2VuZGlmCisgICAgZWxzZQorICAgICAgICBiYWNrZW5kID0gc3RydG91bChhcmd2 WzFdLCBOVUxMLCAxMCk7CisKKworICAgIGlmICgoYXJnYyA9PSA1KSAmJiAoc3RyY21wKGFyZ3Zb NF0sICJub2hhbmRsZSIpID09IDApKSB7CisgICAgICAgIGhuZCA9IE5VTEw7CisgICAgfQorICAg IGVsc2UgeworICAgICAgICAvLyBzZXQgZmlsZSBjb250ZXh0cyBwYXRoCisgICAgICAgIGlmIChz dHJjbXAoYXJndlsyXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgICAgICBzZWxhYmVsX29wdGlv blswXS52YWx1ZSA9IE5VTEw7CisgICAgICAgIH0KKyAgICAgICAgZWxzZSB7CisgICAgICAgICAg ICBzZWxhYmVsX29wdGlvblswXS52YWx1ZSA9IGFyZ3ZbMl07CisgICAgICAgIH0KKworICAgICAg ICAvLyBzZXQgdmFsaWRhdGUKKyAgICAgICAgaWYgKHN0cmNtcChhcmd2WzNdLCAiMCIpID09IDAp IHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlID0gTlVMTDsKKyAgICAgICAg fQorICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlID0g KGNoYXIgKikgMTsKKyAgICAgICAgfQorCisgICAgICAgIHByaW50Zigic2VsYWJlbF9vcHRpb25z OiAiKTsgCisgICAgICAgIHByaW50ZigiU0VMQUJFTF9PUFRfUEFUSCA9ICVzLCAiLCBzZWxhYmVs X29wdGlvblswXS52YWx1ZSk7CisgICAgICAgIHByaW50ZigiU0VMQUJFTF9PUFRfVkFMSURBVEUg PSAlbGQsICIsIChsb25nIGludCkoaW50cHRyX3QpIHNlbGFiZWxfb3B0aW9uWzFdLnZhbHVlKTsK KworICAgICAgICBwcmludGYoIkV4ZWN1dGluZzogc2VsYWJlbF9vcGVuKFNFTEFCRUxfJXMsICZz ZWxhYmVsX29wdGlvbiwgMilcbiIsIGFyZ3ZbMV0pOworCisgICAgICAgIGVycm5vID0gMDsKKwor ICAgICAgICBpZiAoKGhuZCA9IHNlbGFiZWxfb3BlbihiYWNrZW5kLCBzZWxhYmVsX29wdGlvbiwg MikpID09IE5VTEwpIHsKKyAgICAgICAgICAgIHBlcnJvcigic2VsYWJlbF9vcGVuIC0gRVJST1Ii KTsKKyAgICAgICAgICAgIHJldHVybiAyNTU7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBwcmlu dGYoIkV4ZWN1dGluZzogc2VsYWJlbF9zdGF0cyhobmQpXG4iKTsKKyAgICAKKyAgICBzZWxhYmVs X3N0YXRzKGhuZCk7CisKKyAgICBpZiAoaG5kICE9IE5VTEwpCisgICAgICAgIHNlbGFiZWxfY2xv c2UoaG5kKTsKKworICAgIHJldHVybiAwOworfQoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgvc2Vs aW51eF9ib29sZWFuX3N1Yi1mdW5jdGlvbi9NYWtlZmlsZSBiL2xpYnNlbGludXgvc2VsaW51eF9i b29sZWFuX3N1Yi1mdW5jdGlvbi9NYWtlZmlsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5lNzAxNTIwCi0tLSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9zZWxpbnV4X2Jv b2xlYW5fc3ViLWZ1bmN0aW9uL01ha2VmaWxlCkBAIC0wLDAgKzEsNjMgQEAKKyMgfn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn4KKyMKKyMgICBNYWtlZmlsZSBvZiAvQ29yZU9TL2xpYnNlbGludXgvU2FuaXR5L3NlbGludXhf Ym9vbGVhbl9zdWItZnVuY3Rpb24KKyMgICBEZXNjcmlwdGlvbjogVGVzdCBzZWxpbnV4X2Jvb2xl YW5fc3ViIGZ1bmN0aW9uCisjICAgQXV0aG9yOiBKYW4gWmFyc2t5IDxqemFyc2t5QHJlZGhhdC5j b20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgQ29weXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQs IEluYy4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yCisjICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMKKyMgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMiBvZgorIyAgIHRoZSBMaWNlbnNl LCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyAgIFRoaXMgcHJv Z3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUKKyMgICB1c2Vm dWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkCisj ICAgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB UgorIyAgIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt b3JlIGRldGFpbHMuCisjCisjICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh bS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy4KKyMKKyMgfn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KKworZXhwb3J0IFRFU1Q9L0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X2Jv b2xlYW5fc3ViLWZ1bmN0aW9uCitleHBvcnQgVEVTVFZFUlNJT049MS4wCisKK0JVSUxUX0ZJTEVT PQorCitGSUxFUz0kKE1FVEFEQVRBKSBydW50ZXN0LnNoIE1ha2VmaWxlIFBVUlBPU0UgdGVzdCou YworCisuUEhPTlk6IGFsbCBpbnN0YWxsIGRvd25sb2FkIGNsZWFuCisKK3J1bjogJChGSUxFUykg YnVpbGQKKwkuL3J1bnRlc3Quc2gKKworYnVpbGQ6ICQoQlVJTFRfRklMRVMpCisJdGVzdCAteCBy dW50ZXN0LnNoIHx8IGNobW9kIGEreCBydW50ZXN0LnNoCisKK2NsZWFuOgorCXJtIC1mICp+ICQo QlVJTFRfRklMRVMpCisKKworaW5jbHVkZSAvdXNyL3NoYXJlL3JodHMvbGliL3JodHMtbWFrZS5p bmNsdWRlCisKKyQoTUVUQURBVEEpOiBNYWtlZmlsZQorCUBlY2hvICJPd25lcjogICAgICAgICAg IEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4iID4gJChNRVRBREFUQSkKKwlAZWNobyAi TmFtZTogICAgICAgICAgICAkKFRFU1QpIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJUZXN0VmVy c2lvbjogICAgICQoVEVTVFZFUlNJT04pIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJQYXRoOiAg ICAgICAgICAgICQoVEVTVF9ESVIpIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJEZXNjcmlwdGlv bjogICAgIFRlc3Qgc2VsaW51eF9ib29sZWFuX3N1YiBmdW5jdGlvbiIgPj4gJChNRVRBREFUQSkK KwlAZWNobyAiVHlwZTogICAgICAgICAgICBTYW5pdHkiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlRlc3RUaW1lOiAgICAgICAgNW0iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJ1bkZvcjogICAg ICAgICAgbGlic2VsaW51eCIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiUmVxdWlyZXM6ICAgICAg ICBsaWJzZWxpbnV4IGxpYnNlbGludXgtZGV2ZWwgZ2xpYmMgZ2NjIiA+PiAkKE1FVEFEQVRBKQor CUBlY2hvICJQcmlvcml0eTogICAgICAgIE5vcm1hbCIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAi TGljZW5zZTogICAgICAgICBHUEx2MisiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkNvbmZpZGVu dGlhbDogICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkRlc3RydWN0aXZlOiAgICAgbm8i ID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJlbGVhc2VzOiAgICAgICAgLVJIRUw0IC1SSEVMQ2xp ZW50NSAtUkhFTFNlcnZlcjUgLVJIRUw2IiA+PiAkKE1FVEFEQVRBKQorCisJcmh0cy1saW50ICQo TUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X2Jvb2xlYW5fc3ViLWZ1 bmN0aW9uL1BVUlBPU0UgYi9saWJzZWxpbnV4L3NlbGludXhfYm9vbGVhbl9zdWItZnVuY3Rpb24v UFVSUE9TRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODllOGU3Ci0tLSAv ZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9zZWxpbnV4X2Jvb2xlYW5fc3ViLWZ1bmN0aW9uL1BV UlBPU0UKQEAgLTAsMCArMSwzIEBACitQVVJQT1NFIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5p dHkvc2VsaW51eF9ib29sZWFuX3N1Yi1mdW5jdGlvbgorRGVzY3JpcHRpb246IFRlc3Qgc2VsaW51 eF9ib29sZWFuX3N1YiBmdW5jdGlvbgorQXV0aG9yOiBKYW4gWmFyc2t5IDxqemFyc2t5QHJlZGhh dC5jb20+CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X2Jvb2xlYW5fc3ViLWZ1bmN0 aW9uL3J1bnRlc3Quc2ggYi9saWJzZWxpbnV4L3NlbGludXhfYm9vbGVhbl9zdWItZnVuY3Rpb24v cnVudGVzdC5zaApuZXcgZmlsZSBtb2RlIDEwMDc1NQppbmRleCAwMDAwMDAwLi42MzUzOWM3Ci0t LSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9zZWxpbnV4X2Jvb2xlYW5fc3ViLWZ1bmN0aW9u L3J1bnRlc3Quc2gKQEAgLTAsMCArMSw3OCBAQAorIyEvYmluL2Jhc2gKKyMgdmltOiBkaWN0Kz0v dXNyL3NoYXJlL2JlYWtlcmxpYi9kaWN0aW9uYXJ5LnZpbSBjcHQ9Lix3LGIsdSx0LGksaworIyB+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgorIworIyAgIHJ1bnRlc3Quc2ggb2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0 eS9zZWxpbnV4X2Jvb2xlYW5fc3ViLWZ1bmN0aW9uCisjICAgRGVzY3JpcHRpb246IFRlc3Qgc2Vs aW51eF9ib29sZWFuX3N1YiBmdW5jdGlvbgorIyAgIEF1dGhvcjogSmFuIFphcnNreSA8anphcnNr eUByZWRoYXQuY29tPgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIENvcHlyaWdodCAoYykgMjAx NiBSZWQgSGF0LCBJbmMuCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorIyAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVy bXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzCisjICAgcHVibGlzaGVkIGJ5 IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDIgb2YKKyMgICB0 aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMg ICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJl CisjICAgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZAorIyAgIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBB IFBBUlRJQ1VMQVIKKyMgICBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh IGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjICAgYWxvbmcgd2l0aCB0 aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uCisj CisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+CisKKyMgSW5jbHVkZSBCZWFrZXIgZW52aXJvbm1lbnQKKy4gL3Vzci9z aGFyZS9iZWFrZXJsaWIvYmVha2VybGliLnNoIHx8IGV4aXQgMQorCitQQUNLQUdFPSJsaWJzZWxp bnV4IgorCitybEpvdXJuYWxTdGFydAorICAgIHJsUGhhc2VTdGFydFNldHVwCisgICAgICAgIHJs QXNzZXJ0UnBtICR7UEFDS0FHRX0KKyAgICAgICAgcmxBc3NlcnRScG0gJHtQQUNLQUdFfS1kZXZl bAorICAgICAgICBybEFzc2VydFJwbSAiZ2xpYmMiCisgICAgICAgIHJsQXNzZXJ0UnBtICJnY2Mi CisKKyAgICAgICAgcmxSdW4gLWwgImdjYyB0ZXN0LmMgLW8gdGVzdCAtbHNlbGludXggLVdhbGwg LVdleHRyYSAtc3RkPWM5OSIKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0 CisgICAgICAgIHJsUnVuICIuL3Rlc3QgTlVMTCB8IHRlZSBvdXRwdXQiCisgICAgICAgIHJsUnVu ICJncmVwICdzZWxpbnV4X2Jvb2xlYW5fc3ViOiAobnVsbCknIG91dHB1dCIKKworICAgICAgICBy bFJ1biAiLi90ZXN0IG15X25vbmV4aXN0aW5nX3JlY29yZCB8IHRlZSBvdXRwdXQiCisgICAgICAg IHJsUnVuICJncmVwICdzZWxpbnV4X2Jvb2xlYW5fc3ViOiBteV9ub25leGlzdGluZ19yZWNvcmQn IG91dHB1dCIKKyAgICAKKyAgICAgICAgcG9saWN5X3R5cGU9IiQoZ3JlcCAtRSAnXlNFTElOVVhU WVBFPScgL2V0Yy9zZWxpbnV4L2NvbmZpZyB8IGN1dCAtYzEzLSB8IHRyICdbOnVwcGVyOl0nICdb Omxvd2VyOl0nIHwgdHIgLWQgJyAnKSIKKyAgICAgICAgbGluZTE9IiQoY2F0IC9ldGMvc2VsaW51 eC8kcG9saWN5X3R5cGUvYm9vbGVhbnMuc3Vic19kaXN0IHwgaGVhZCAtbiAxKSIKKyAgICAgICAg bGluZTI9IiQoY2F0IC9ldGMvc2VsaW51eC8kcG9saWN5X3R5cGUvYm9vbGVhbnMuc3Vic19kaXN0 IHwgaGVhZCAtbiA3IHwgdGFpbCAtbiAxKSIKKyAgICAgICAgbGluZTM9IiQoY2F0IC9ldGMvc2Vs aW51eC8kcG9saWN5X3R5cGUvYm9vbGVhbnMuc3Vic19kaXN0IHwgdGFpbCAtbiAxKSIKKworICAg ICAgICBpbnB1dD0iJChlY2hvICRsaW5lMSB8IGF3ayAneyBwcmludCAkMSB9JykiCisgICAgICAg IG91dHB1dD0iJChlY2hvICRsaW5lMSB8IGF3ayAneyBwcmludCAkMiB9JykiCisKKyAgICAgICAg cmxSdW4gIi4vdGVzdCAkaW5wdXQgfCB0ZWUgb3V0cHV0IgorICAgICAgICBybFJ1biAiZ3JlcCAn c2VsaW51eF9ib29sZWFuX3N1YjogJG91dHB1dCcgb3V0cHV0IgorCisgICAgICAgIGlucHV0PSIk KGVjaG8gJGxpbmUyIHwgYXdrICd7IHByaW50ICQxIH0nKSIKKyAgICAgICAgb3V0cHV0PSIkKGVj aG8gJGxpbmUyIHwgYXdrICd7IHByaW50ICQyIH0nKSIKKworICAgICAgICBybFJ1biAiLi90ZXN0 ICRpbnB1dCB8IHRlZSBvdXRwdXQiCisgICAgICAgIHJsUnVuICJncmVwICdzZWxpbnV4X2Jvb2xl YW5fc3ViOiAkb3V0cHV0JyBvdXRwdXQiCisKKyAgICAgICAgaW5wdXQ9IiQoZWNobyAkbGluZTMg fCBhd2sgJ3sgcHJpbnQgJDEgfScpIgorICAgICAgICBvdXRwdXQ9IiQoZWNobyAkbGluZTMgfCBh d2sgJ3sgcHJpbnQgJDIgfScpIgorCisgICAgICAgIHJsUnVuICIuL3Rlc3QgJGlucHV0IHwgdGVl IG91dHB1dCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ3NlbGludXhfYm9vbGVhbl9zdWI6ICRvdXRw dXQnIG91dHB1dCIKKyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRDbGVhbnVwCisg ICAgICAgIHJsUnVuICJybSAtZiB0ZXN0IG91dHB1dCIKKyAgICBybFBoYXNlRW5kCitybEpvdXJu YWxQcmludFRleHQKK3JsSm91cm5hbEVuZAoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgvc2VsaW51 eF9ib29sZWFuX3N1Yi1mdW5jdGlvbi90ZXN0LmMgYi9saWJzZWxpbnV4L3NlbGludXhfYm9vbGVh bl9zdWItZnVuY3Rpb24vdGVzdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LmY2NDc5YjgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGludXhfYm9vbGVhbl9z dWItZnVuY3Rpb24vdGVzdC5jCkBAIC0wLDAgKzEsMzEgQEAKKyNpbmNsdWRlIDxzdGRpby5oPgor I2luY2x1ZGUgPHN0ZGxpYi5oPgorI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1ZGUgPHN0ZGlu dC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8c2VsaW51eC9zZWxpbnV4Lmg+CisK K2ludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKKyAgICBpZiAoYXJnYyA8IDIpIHsK KyAgICAgICAgcHJpbnRmKCJJbnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHMiKTsKKyAgICAgICAg cmV0dXJuIC0xOworICAgIH0KKworICAgIGNoYXIgKmJvb2xlYW5fbmFtZTsKKworICAgIGlmIChz dHJjbXAoYXJndlsxXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgIGJvb2xlYW5fbmFtZSA9IE5V TEw7CisgICAgfQorICAgIGVsc2UgeworICAgICAgICBib29sZWFuX25hbWUgPSBhcmd2WzFdOwor ICAgIH0KKworICAgIHByaW50ZigiRXhlY3V0aW5nOiBzZWxpbnV4X2Jvb2xlYW5fc3ViKCVzKVxu IiwgYm9vbGVhbl9uYW1lKTsKKworICAgIGNoYXIgKnJlc3VsdCA9IHNlbGludXhfYm9vbGVhbl9z dWIoYm9vbGVhbl9uYW1lKTsKKworICAgIHByaW50Zigic2VsaW51eF9ib29sZWFuX3N1YjogJXNc biIsIHJlc3VsdCk7CisKKyAgICBmcmVlKHJlc3VsdCk7CisgICAgcmV0dXJuIDA7Cit9CgpkaWZm IC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24tZnVuY3Rpb25zL01ha2VmaWxl IGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24tZnVuY3Rpb25zL01ha2VmaWxlCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYzMWY1YTgKLS0tIC9kZXYvbnVsbAorKysg Yi9saWJzZWxpbnV4L3NlbGludXhfcmVzdG9yZWNvbi1mdW5jdGlvbnMvTWFrZWZpbGUKQEAgLTAs MCArMSw2MyBAQAorIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIE1ha2VmaWxlIG9mIC9Db3JlT1MvbGli c2VsaW51eC9TYW5pdHkvc2VsaW51eF9yZXN0b3JlY29uLWZ1bmN0aW9ucworIyAgIERlc2NyaXB0 aW9uOiBUZXN0IGZ1bmN0aW9ucyBpbiBzZWxpbnV4X3Jlc3RvcmVjb24uYworIyAgIEF1dGhvcjog SmFuIFphcnNreSA8anphcnNreUByZWRoYXQuY29tPgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAg IENvcHlyaWdodCAoYykgMjAxNiBSZWQgSGF0LCBJbmMuCisjCisjICAgVGhpcyBwcm9ncmFtIGlz IGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorIyAgIG1vZGlm eSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFz CisjICAgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2 ZXJzaW9uIDIgb2YKKyMgICB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlCisjICAgdXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7 IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZAorIyAgIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElU WSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyMgICBQVVJQT1NFLiAgU2VlIHRoZSBHTlUg R2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBzaG91 bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNl CisjICAgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251 Lm9yZy9saWNlbnNlcy8uCisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKK2V4cG9ydCBURVNUPS9Db3JlT1Mv bGlic2VsaW51eC9TYW5pdHkvc2VsaW51eF9yZXN0b3JlY29uLWZ1bmN0aW9ucworZXhwb3J0IFRF U1RWRVJTSU9OPTEuMAorCitCVUlMVF9GSUxFUz0KKworRklMRVM9JChNRVRBREFUQSkgcnVudGVz dC5zaCBNYWtlZmlsZSBQVVJQT1NFIHRlc3RfcmVzdG9yZWNvbi5jIHRlc3RfZXhjbHVkZV9saXN0 LmMgdGVzdF9zZWhhbmRsZS5jCisKKy5QSE9OWTogYWxsIGluc3RhbGwgZG93bmxvYWQgY2xlYW4K KworcnVuOiAkKEZJTEVTKSBidWlsZAorCS4vcnVudGVzdC5zaAorCitidWlsZDogJChCVUlMVF9G SUxFUykKKwl0ZXN0IC14IHJ1bnRlc3Quc2ggfHwgY2htb2QgYSt4IHJ1bnRlc3Quc2gKKworY2xl YW46CisJcm0gLWYgKn4gJChCVUlMVF9GSUxFUykKKworCitpbmNsdWRlIC91c3Ivc2hhcmUvcmh0 cy9saWIvcmh0cy1tYWtlLmluY2x1ZGUKKworJChNRVRBREFUQSk6IE1ha2VmaWxlCisJQGVjaG8g Ik93bmVyOiAgICAgICAgICAgSmFuIFphcnNreSA8anphcnNreUByZWRoYXQuY29tPiIgPiAkKE1F VEFEQVRBKQorCUBlY2hvICJOYW1lOiAgICAgICAgICAgICQoVEVTVCkiID4+ICQoTUVUQURBVEEp CisJQGVjaG8gIlRlc3RWZXJzaW9uOiAgICAgJChURVNUVkVSU0lPTikiID4+ICQoTUVUQURBVEEp CisJQGVjaG8gIlBhdGg6ICAgICAgICAgICAgJChURVNUX0RJUikiID4+ICQoTUVUQURBVEEpCisJ QGVjaG8gIkRlc2NyaXB0aW9uOiAgICAgVGVzdCBmdW5jdGlvbnMgaW4gc2VsaW51eF9yZXN0b3Jl Y29uLmMiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlR5cGU6ICAgICAgICAgICAgU2FuaXR5IiA+ PiAkKE1FVEFEQVRBKQorCUBlY2hvICJUZXN0VGltZTogICAgICAgIDVtIiA+PiAkKE1FVEFEQVRB KQorCUBlY2hvICJSdW5Gb3I6ICAgICAgICAgIGxpYnNlbGludXgiID4+ICQoTUVUQURBVEEpCisJ QGVjaG8gIlJlcXVpcmVzOiAgICAgICAgbGlic2VsaW51eCBsaWJzZWxpbnV4LWRldmVsIGdsaWJj IHN0cmFjZSIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiUHJpb3JpdHk6ICAgICAgICBOb3JtYWwi ID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkxpY2Vuc2U6ICAgICAgICAgR1BMdjIrIiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJDb25maWRlbnRpYWw6ICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBl Y2hvICJEZXN0cnVjdGl2ZTogICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJSZWxlYXNl czogICAgICAgIC1SSEVMNCAtUkhFTENsaWVudDUgLVJIRUxTZXJ2ZXI1IiA+PiAkKE1FVEFEQVRB KQorCisJcmh0cy1saW50ICQoTUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxp bnV4X3Jlc3RvcmVjb24tZnVuY3Rpb25zL1BVUlBPU0UgYi9saWJzZWxpbnV4L3NlbGludXhfcmVz dG9yZWNvbi1mdW5jdGlvbnMvUFVSUE9TRQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi44YTJmN2JhCi0tLSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3Rv cmVjb24tZnVuY3Rpb25zL1BVUlBPU0UKQEAgLTAsMCArMSwzIEBACitQVVJQT1NFIG9mIC9Db3Jl T1MvbGlic2VsaW51eC9TYW5pdHkvc2VsaW51eF9yZXN0b3JlY29uLWZ1bmN0aW9ucworRGVzY3Jp cHRpb246IFRlc3QgZnVuY3Rpb25zIGluIHNlbGludXhfcmVzdG9yZWNvbi5jCitBdXRob3I6IEph biBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4KCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3Nl bGludXhfcmVzdG9yZWNvbi1mdW5jdGlvbnMvcnVudGVzdC5zaCBiL2xpYnNlbGludXgvc2VsaW51 eF9yZXN0b3JlY29uLWZ1bmN0aW9ucy9ydW50ZXN0LnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1Cmlu ZGV4IDAwMDAwMDAuLjVhNTE5OTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGlu dXhfcmVzdG9yZWNvbi1mdW5jdGlvbnMvcnVudGVzdC5zaApAQCAtMCwwICsxLDM2NyBAQAorIyEv YmluL2Jhc2gKKyMgdmltOiBkaWN0Kz0vdXNyL3NoYXJlL2JlYWtlcmxpYi9kaWN0aW9uYXJ5LnZp bSBjcHQ9Lix3LGIsdSx0LGksaworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIHJ1bnRlc3Quc2ggb2Yg L0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X3Jlc3RvcmVjb24tZnVuY3Rpb25zCisj ICAgRGVzY3JpcHRpb246IFRlc3QgZnVuY3Rpb25zIGluIHNlbGludXhfcmVzdG9yZWNvbi5jCisj ICAgQXV0aG9yOiBKYW4gWmFyc2t5IDxqemFyc2t5QHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+CisjCisjICAgQ29weXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlz IHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29y CisjICAgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgYXMKKyMgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgZWl0aGVyIHZlcnNpb24gMiBvZgorIyAgIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRp b24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUKKyMgICB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkCisjICAgd2FycmFudHkgb2YgTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyAgIFBVUlBPU0UuICBT ZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisj ICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2UKKyMgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0 cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworIyBJbmNsdWRl IEJlYWtlciBlbnZpcm9ubWVudAorLiAvdXNyL2Jpbi9yaHRzLWVudmlyb25tZW50LnNoIHx8IGV4 aXQgMQorLiAvdXNyL3NoYXJlL2JlYWtlcmxpYi9iZWFrZXJsaWIuc2ggfHwgZXhpdCAxCisKK1BB Q0tBR0U9ImxpYnNlbGludXgiCisKK2Z1bmN0aW9uIGNyZWF0ZVRlc3RGaWxlcyB7CisgICAgcmxM b2dJbmZvICJDcmVhdGluZyB0ZXN0aW5nIGZpbGVzIgorCisgICAgVG1wRGlyPSIvaG9tZS91c2Vy L3Rlc3RkaXIiCisgICAgcmxSdW4gIm1rZGlyICRUbXBEaXIiCisKKyAgICBybFJ1biAicHVzaGQg JFRtcERpciIKKworICAgIHJsUnVuICJta2RpciAtcCBhL2IiCisKKyAgICBybFJ1biAidG91Y2gg YWZpbGUiCisgICAgcmxSdW4gInRvdWNoIGEvYmZpbGUiCisgICAgcmxSdW4gInRvdWNoIGEvYi9j ZmlsZSIKKyAgICAKKyAgICBybFJ1biAicG9wZCIKK30KKworZnVuY3Rpb24gY2hhbmdlQ29udGV4 dCB7CisgICAgcmxMb2dJbmZvICJDaGFuZ2luZyBjb250ZXh0IG9mIHRlc3RpbmcgZmlsZXMiCisK KyAgICBybFJ1biAicHVzaGQgJFRtcERpciIKKworICAgIHJsUnVuICJjaGNvbiAtdCB2YXJfbG9n X3QgLiIgCisgICAgcmxSdW4gImNoY29uIC10IHZhcl9sb2dfdCBhIgorICAgIHJsUnVuICJjaGNv biAtdCB2YXJfbG9nX3QgYS9iIgorICAgIHJsUnVuICJjaGNvbiAtdCB2YXJfbG9nX3QgYWZpbGUi CisgICAgcmxSdW4gImNoY29uIC10IHZhcl9sb2dfdCBhL2JmaWxlIgorICAgIHJsUnVuICJjaGNv biAtdCB2YXJfbG9nX3QgYS9iL2NmaWxlIgorICAgIAorICAgIHJsUnVuICJwb3BkIgorfQorCitm dW5jdGlvbiBkZWxldGVUZXN0RmlsZXMgeworICAgIHJsTG9nSW5mbyAiRGVsZXRpbmcgdGVzdGlu ZyBmaWxlcyIKKworICAgIHJsUnVuICJybSAtcmYgJFRtcERpciIKK30KKworcmxKb3VybmFsU3Rh cnQKKyAgICBybFBoYXNlU3RhcnRTZXR1cAorICAgICAgICBybEFzc2VydFJwbSAke1BBQ0tBR0V9 CisgICAgICAgIHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0tZGV2ZWwKKyAgICAgICAgcmxBc3NlcnRS cG0gImdsaWJjIgorICAgICAgICBybEFzc2VydFJwbSAic3RyYWNlIgorCisgICAgICAgIHJsUnVu IC1sICJnY2MgdGVzdF9yZXN0b3JlY29uLmMgLW8gdGVzdF9yZXN0b3JlY29uIC1sc2VsaW51eCAt cGVkYW50aWMgLVdhbGwgLVdleHRyYSAtc3RkPWM5OSIKKyAgICAgICAgcmxSdW4gLWwgImdjYyB0 ZXN0X2V4Y2x1ZGVfbGlzdC5jIC1vIHRlc3RfZXhjbHVkZV9saXN0IC1sc2VsaW51eCAtcGVkYW50 aWMgLVdhbGwgLVdleHRyYSAtc3RkPWM5OSIKKyAgICAgICAgcmxSdW4gLWwgImdjYyB0ZXN0X3Nl aGFuZGxlLmMgLW8gdGVzdF9zZWhhbmRsZSAtbHNlbGludXggLXBlZGFudGljIC1XYWxsIC1XZXh0 cmEgLXN0ZD1jOTkiCisKKyAgICAgICAgcmxSdW4gInVzZXJhZGQgdXNlciIKKyAgICBybFBoYXNl RW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJ0ZXN0IGNhbGwiCisgICAgICAgIGNyZWF0ZVRl c3RGaWxlcworCisgICAgICAgIHJsUnVuICIuL3Rlc3RfcmVzdG9yZWNvbiAkVG1wRGlyIiAwICJD YWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbiIKKworICAgICAgICBkZWxldGVUZXN0RmlsZXMKKyAg ICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJ0ZXN0IGNhbGwgd2l0aCBmbGFn cyIKKyAgICAgICAgY3JlYXRlVGVzdEZpbGVzCisKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9yZXN0 b3JlY29uICRUbXBEaXIgSUdOT1JFX0RJR0VTVCBJR05PUkVfRElHRVNUIE5PQ0hBTkdFIFZFUkJP U0UgUFJPR1JFU1MgUkVDVVJTRSBcCisgICAgICAgICAgICBTRVRfU1BFQ0ZJTEVfQ1RYIFJFQUxQ QVRIIFhERVYiIDAgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIHdpdGggYWxsIGZsYWdzIgor CisgICAgICAgIGRlbGV0ZVRlc3RGaWxlcworICAgIHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VT dGFydFRlc3QgImludmFsaWQgcGF0aCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9yZXN0b3JlY29u IEVNUFRZIiAyNTUgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIHdpdGggZW1wdHkgcGF0aCIK KworICAgICAgICAjIHNob3VsZCBwcm9iYWJseSByZXR1cm4gYm90aCAxMzkgKHNlZ2ZhdWx0KSBv ciAyNTUsIGJ1dCBpdCBpcyBub3Qgc28gaW1wb3J0YW50CisgICAgICAgIHJsUnVuICIuL3Rlc3Rf cmVzdG9yZWNvbiBOVUxMIiAxMzksMjU1ICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbiB3aXRo IG51bGwgYXMgcGF0aCIKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9yZXN0b3JlY29uIE5VTEwgUkVB TFBBVEgiIDEzOSwyNTUgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIHdpdGggbnVsbCBhcyBw YXRoIGFuZCBSRUFMUEFUSCBmbGFnIgorICAgICAgICAKKyAgICAgICAgcmxSdW4gIi4vdGVzdF9y ZXN0b3JlY29uIC9ub25leGlzdGVudCIgMjU1ICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbiB3 aXRoIG5vbmV4aXN0aW5nIHBhdGgiCisgICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0 VGVzdCAibm8gZmxhZ3MiCisgICAgICAgIGNyZWF0ZVRlc3RGaWxlcworICAgICAgICBjaGFuZ2VD b250ZXh0CisKKyAgICAgICAgcmxSdW4gInN0cmFjZSAtb3N0cmFjZS5vdXQgLXMgNjQgLi90ZXN0 X3Jlc3RvcmVjb24gJFRtcERpciIgMCAiQ2FsbGluZyBzZWxpbnV4X3Jlc3RvcmVjb24iCisKKyAg ICAgICAgcmxMb2dJbmZvICJDaGVja2luZyBsZ2V0eGF0dHIgY2FsbHMiCisgICAgICAgIHJsUnVu ICJncmVwIGxnZXR4YXR0ciBzdHJhY2Uub3V0IHwgZ3JlcCBzZWN1cml0eS5zZWxpbnV4ID4gc3Ry YWNlX3hhdHRyLm91dCIKKworICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyXFxcIlwi ICAgICAgICAgICAgIHN0cmFjZV94YXR0ci5vdXQgfCBncmVwIHZhcl9sb2dfdCIKKyAgICAgICAg cmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hXFxcIlwiICAgICAgICAgICBzdHJhY2VfeGF0dHIu b3V0IHwgZ3JlcCB2YXJfbG9nX3QiIDEKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERp ci9hZmlsZVxcXCJcIiAgICAgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3JlcCB2YXJfbG9nX3QiIDEK KyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hL2JcXFwiXCIgICAgICAgICBzdHJh Y2VfeGF0dHIub3V0IHwgZ3JlcCB2YXJfbG9nX3QiIDEKKyAgICAgICAgcmxSdW4gImdyZXAgXCJc XFwiJFRtcERpci9hL2JmaWxlXFxcIlwiICAgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3JlcCB2YXJf bG9nX3QiIDEKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hL2IvY2ZpbGVcXFwi XCIgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3JlcCB2YXJfbG9nX3QiIDEKKyAgICAgICAgCisgICAg ICAgIHJsTG9nSW5mbyAiQ2hlY2tpbmcgbHNldHhhdHRyIGNhbGxzIgorICAgICAgICBybFJ1biAi Z3JlcCBsc2V0eGF0dHIgc3RyYWNlLm91dCB8IGdyZXAgc2VjdXJpdHkuc2VsaW51eCA+IHN0cmFj ZV94YXR0ci5vdXQiCisKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpclxcXCJcIiAg ICAgICAgICAgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3JlcCB1c2VyX2hvbWVfdCIKKyAgICAgICAg cmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hXFxcIlwiICAgICAgICAgICBzdHJhY2VfeGF0dHIu b3V0IHwgZ3JlcCB1c2VyX2hvbWVfdCIgMQorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1w RGlyL2FmaWxlXFxcIlwiICAgICAgIHN0cmFjZV94YXR0ci5vdXQgfCBncmVwIHVzZXJfaG9tZV90 IiAxCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iXFxcIlwiICAgICAgICAg c3RyYWNlX3hhdHRyLm91dCB8IGdyZXAgdXNlcl9ob21lX3QiIDEKKyAgICAgICAgcmxSdW4gImdy ZXAgXCJcXFwiJFRtcERpci9hL2JmaWxlXFxcIlwiICAgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3Jl cCB1c2VyX2hvbWVfdCIgMQorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2EvYi9j ZmlsZVxcXCJcIiAgIHN0cmFjZV94YXR0ci5vdXQgfCBncmVwIHVzZXJfaG9tZV90IiAxCisKKyAg ICAgICAgcmxSdW4gInJtIC1mIHN0cmFjZS5vdXQiCisgICAgICAgIHJsUnVuICJybSAtZiBzdHJh Y2VfeGF0dHIub3V0IgorCisgICAgICAgIGRlbGV0ZVRlc3RGaWxlcworICAgIHJsUGhhc2VFbmQK KworICAgIHJsUGhhc2VTdGFydFRlc3QgIlJFQ1VSU0UgZmxhZyIKKyAgICAgICAgY3JlYXRlVGVz dEZpbGVzCisgICAgICAgIGNoYW5nZUNvbnRleHQKKworICAgICAgICBybFJ1biAic3RyYWNlIC1v c3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfcmVzdG9yZWNvbiAkVG1wRGlyIFJFQ1VSU0UiIDAgIkNh bGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIHdpdGggUkVDVVJTRSBmbGFnIgorCisgICAgICAgIHJs TG9nSW5mbyAiQ2hlY2tpbmcgbGdldHhhdHRyIGNhbGxzIgorICAgICAgICBybFJ1biAiZ3JlcCBs Z2V0eGF0dHIgc3RyYWNlLm91dCB8IGdyZXAgc2VjdXJpdHkuc2VsaW51eCA+IHN0cmFjZV94YXR0 ci5vdXQiCisKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpclxcXCJcIiAgICAgICAg ICAgICBzdHJhY2VfeGF0dHIub3V0IHwgZ3JlcCB2YXJfbG9nX3QiCisgICAgICAgIHJsUnVuICJn cmVwIFwiXFxcIiRUbXBEaXIvYVxcXCJcIiAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCB8IGdy ZXAgdmFyX2xvZ190IgorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2FmaWxlXFxc IlwiICAgICAgIHN0cmFjZV94YXR0ci5vdXQgfCBncmVwIHZhcl9sb2dfdCIKKyAgICAgICAgcmxS dW4gImdyZXAgXCJcXFwiJFRtcERpci9hL2JcXFwiXCIgICAgICAgICBzdHJhY2VfeGF0dHIub3V0 IHwgZ3JlcCB2YXJfbG9nX3QiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9i ZmlsZVxcXCJcIiAgICAgc3RyYWNlX3hhdHRyLm91dCB8IGdyZXAgdmFyX2xvZ190IgorICAgICAg ICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2EvYi9jZmlsZVxcXCJcIiAgIHN0cmFjZV94YXR0 ci5vdXQgfCBncmVwIHZhcl9sb2dfdCIKKworICAgICAgICBybExvZ0luZm8gIkNoZWNraW5nIGxz ZXR4YXR0ciBjYWxscyIKKyAgICAgICAgcmxSdW4gImdyZXAgbHNldHhhdHRyIHN0cmFjZS5vdXQg fCBncmVwIHNlY3VyaXR5LnNlbGludXggPiBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgIHJs UnVuICJncmVwIFwiXFxcIiRUbXBEaXJcXFwiXCIgICAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91 dCB8IGdyZXAgdXNlcl9ob21lX3QiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIv YVxcXCJcIiAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCB8IGdyZXAgdXNlcl9ob21lX3QiCisg ICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYWZpbGVcXFwiXCIgICAgICAgc3RyYWNl X3hhdHRyLm91dCB8IGdyZXAgdXNlcl9ob21lX3QiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxc IiRUbXBEaXIvYS9iXFxcIlwiICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCB8IGdyZXAgdXNlcl9o b21lX3QiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iZmlsZVxcXCJcIiAg ICAgc3RyYWNlX3hhdHRyLm91dCB8IGdyZXAgdXNlcl9ob21lX3QiCisgICAgICAgIHJsUnVuICJn cmVwIFwiXFxcIiRUbXBEaXIvYS9iL2NmaWxlXFxcIlwiICAgc3RyYWNlX3hhdHRyLm91dCB8IGdy ZXAgdXNlcl9ob21lX3QiCisKKyAgICAgICAgcmxSdW4gInJtIC1mIHN0cmFjZS5vdXQiCisgICAg ICAgIHJsUnVuICJybSAtZiBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgIGRlbGV0ZVRlc3RG aWxlcworICAgIHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VTdGFydFRlc3QgIk5PQ0hBTkdFIGZs YWciCisgICAgICAgIGNyZWF0ZVRlc3RGaWxlcworICAgICAgICBjaGFuZ2VDb250ZXh0CisKKyAg ICAgICAgcmxSdW4gInN0cmFjZSAtb3N0cmFjZS5vdXQgLXMgNjQgLi90ZXN0X3Jlc3RvcmVjb24g JFRtcERpciBSRUNVUlNFIE5PQ0hBTkdFIiAwICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbiB3 aXRoIE5PQ0hBTkdFIGZsYWciCisKKyAgICAgICAgcmxMb2dJbmZvICJDaGVja2luZyBsc2V0eGF0 dHIgY2FsbHMiCisgICAgICAgIHJsUnVuICJncmVwIGxzZXR4YXR0ciBzdHJhY2Uub3V0IiAxCisK KyAgICAgICAgcmxSdW4gInJtIC1mIHN0cmFjZS5vdXQiCisKKyAgICAgICAgZGVsZXRlVGVzdEZp bGVzCisgICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0VGVzdCAiL3N5cyBkaXJlY3Rv cnkiCisgICAgICAgICMgZGlyZWN0b3J5IHRoYXQgc3VwcG9ydHMgc2VjdXJpdHkucmVzdG9yZWNv bl9sYXN0IHhhdHRyCisgICAgICAgIHJsUnVuICJzdHJhY2UgLW9zdHJhY2Uub3V0IC1zIDY0IC4v dGVzdF9yZXN0b3JlY29uIC92YXIvbG9nIFJFQ1VSU0UgTk9DSEFOR0UiIDAgIkNhbGxpbmcgc2Vs aW51eF9yZXN0b3JlY29uIG9uIC90bXAiCisKKyAgICAgICAgcmxSdW4gImdyZXAgc2VjdXJpdHku cmVzdG9yZWNvbl9sYXN0IHN0cmFjZS5vdXQiIDAKKworICAgICAgICAjIGRpcmVjdG9yeSB0aGF0 IGRvZXMgbm90IHN1cHBvcnRzIHNlY3VyaXR5LnJlc3RvcmVjb25fbGFzdCB4YXR0cgorICAgICAg ICBybFJ1biAic3RyYWNlIC1vc3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfcmVzdG9yZWNvbiAvc3lz IFJFQ1VSU0UgTk9DSEFOR0UiIDAgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIG9uIC9zeXMi CisKKyAgICAgICAgcmxSdW4gImdyZXAgc2VjdXJpdHkucmVzdG9yZWNvbl9sYXN0IHN0cmFjZS5v dXQiIDEKKworICAgICAgICBybFJ1biAicm0gLWYgc3RyYWNlLm91dCIKKyAgICBybFBoYXNlRW5k CisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJubyBJR05PUkVfRElHRVNUIGZsYWciCisgICAgICAg IGNyZWF0ZVRlc3RGaWxlcworCisgICAgICAgICMgcnVuIHJlc3RvcmVjb24gZmlyc3QgdGltZQor ICAgICAgICBybFJ1biAic3RyYWNlIC1vc3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfcmVzdG9yZWNv biAkVG1wRGlyIFJFQ1VSU0UiIDAgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIGZvciB0aGUg Zmlyc3QgdGltZSIKKworICAgICAgICBybExvZ0luZm8gIkNoZWNraW5nIGxnZXR4YXR0ciBjYWxs cyIKKyAgICAgICAgcmxSdW4gImdyZXAgbGdldHhhdHRyIHN0cmFjZS5vdXQgfCBncmVwIHNlY3Vy aXR5LnNlbGludXggPiBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgIHJsUnVuICJncmVwIFwi XFxcIiRUbXBEaXJcXFwiXCIgICAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAg cmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hXFxcIlwiICAgICAgICAgICBzdHJhY2VfeGF0dHIu b3V0IgorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2FmaWxlXFxcIlwiICAgICAg IHN0cmFjZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9i XFxcIlwiICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJc XFwiJFRtcERpci9hL2JmaWxlXFxcIlwiICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAgICBy bFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2EvYi9jZmlsZVxcXCJcIiAgIHN0cmFjZV94YXR0ci5v dXQiCisKKyAgICAgICAgIyBydW4gcmVzdG9yZWNvbiBzZWNvbmQgdGltZQorICAgICAgICBybFJ1 biAic3RyYWNlIC1vc3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfcmVzdG9yZWNvbiAkVG1wRGlyIFJF Q1VSU0UiIDAgIkNhbGxpbmcgc2VsaW51eF9yZXN0b3JlY29uIGZvciB0aGUgc2Vjb25kIHRpbWUi CisKKyAgICAgICAgcmxMb2dJbmZvICJDaGVja2luZyBsZ2V0eGF0dHIgY2FsbHMiCisgICAgICAg IHJsUnVuICJncmVwIGxnZXR4YXR0ciBzdHJhY2Uub3V0IHwgZ3JlcCBzZWN1cml0eS5zZWxpbnV4 IiAxCisKKyAgICAgICAgcmxSdW4gInJtIC1mIHN0cmFjZS5vdXQiCisgICAgICAgIHJsUnVuICJy bSAtZiBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgIGRlbGV0ZVRlc3RGaWxlcworICAgIHJs UGhhc2VFbmQKKworICAgIHJsUGhhc2VTdGFydFRlc3QgIklHTk9SRV9ESUdFU1QgZmxhZyIKKyAg ICAgICAgY3JlYXRlVGVzdEZpbGVzCisKKyAgICAgICAgIyBydW4gcmVzdG9yZWNvbiBmaXJzdCB0 aW1lCisgICAgICAgIHJsUnVuICJzdHJhY2UgLW9zdHJhY2Uub3V0IC1zIDY0IC4vdGVzdF9yZXN0 b3JlY29uICRUbXBEaXIgUkVDVVJTRSIgMCAiQ2FsbGluZyBzZWxpbnV4X3Jlc3RvcmVjb24gZm9y IHRoZSBmaXJzdCB0aW1lIgorCisgICAgICAgIHJsTG9nSW5mbyAiQ2hlY2tpbmcgbGdldHhhdHRy IGNhbGxzIgorICAgICAgICBybFJ1biAiZ3JlcCBsZ2V0eGF0dHIgc3RyYWNlLm91dCB8IGdyZXAg c2VjdXJpdHkuc2VsaW51eCA+IHN0cmFjZV94YXR0ci5vdXQiCisKKyAgICAgICAgcmxSdW4gImdy ZXAgXCJcXFwiJFRtcERpclxcXCJcIiAgICAgICAgICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAg ICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2FcXFwiXCIgICAgICAgICAgIHN0cmFjZV94 YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYWZpbGVcXFwiXCIg ICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERp ci9hL2JcXFwiXCIgICAgICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAgICBybFJ1biAiZ3Jl cCBcIlxcXCIkVG1wRGlyL2EvYmZpbGVcXFwiXCIgICAgIHN0cmFjZV94YXR0ci5vdXQiCisgICAg ICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iL2NmaWxlXFxcIlwiICAgc3RyYWNlX3hh dHRyLm91dCIKKworICAgICAgICAjIHJ1biByZXN0b3JlY29uIHNlY29uZCB0aW1lCisgICAgICAg IHJsUnVuICJzdHJhY2UgLW9zdHJhY2Uub3V0IC1zIDY0IC4vdGVzdF9yZXN0b3JlY29uICRUbXBE aXIgUkVDVVJTRSBJR05PUkVfRElHRVNUIiAwICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbiBm b3IgdGhlIHNlY29uZCB0aW1lIgorCisgICAgICAgIHJsTG9nSW5mbyAiQ2hlY2tpbmcgbGdldHhh dHRyIGNhbGxzIgorICAgICAgICBybFJ1biAiZ3JlcCBsZ2V0eGF0dHIgc3RyYWNlLm91dCB8IGdy ZXAgc2VjdXJpdHkuc2VsaW51eCA+IHN0cmFjZV94YXR0ci5vdXQiCisKKyAgICAgICAgcmxSdW4g ImdyZXAgXCJcXFwiJFRtcERpclxcXCJcIiAgICAgICAgICAgICBzdHJhY2VfeGF0dHIub3V0Igor ICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2FcXFwiXCIgICAgICAgICAgIHN0cmFj ZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYWZpbGVcXFwi XCIgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRt cERpci9hL2JcXFwiXCIgICAgICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAgICBybFJ1biAi Z3JlcCBcIlxcXCIkVG1wRGlyL2EvYmZpbGVcXFwiXCIgICAgIHN0cmFjZV94YXR0ci5vdXQiCisg ICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iL2NmaWxlXFxcIlwiICAgc3RyYWNl X3hhdHRyLm91dCIKKworICAgICAgICBybFJ1biAicm0gLWYgc3RyYWNlLm91dCIKKyAgICAgICAg cmxSdW4gInJtIC1mIHN0cmFjZV94YXR0ci5vdXQiCisKKyAgICAgICAgZGVsZXRlVGVzdEZpbGVz CisgICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0VGVzdCAic2VsaW51eF9yZXN0b3Jl Y29uX3NldF9leGNsdWRlX2xpc3QiCisgICAgICAgIGNyZWF0ZVRlc3RGaWxlcworCisgICAgICAg ICMgZW1wdHkgZXhjbHVkZSBsaXN0CisgICAgICAgIHJsUnVuICJzdHJhY2UgLW9zdHJhY2Uub3V0 IC1zIDY0IC4vdGVzdF9leGNsdWRlX2xpc3QgRU1QVFkgJFRtcERpciIgMCAiQ2FsbGluZyBzZWxp bnV4X3Jlc3RvcmVjb25fc2V0X2V4Y2x1ZGVfbGlzdCB3aXRoIGVtcHR5IGxpc3QiCisKKyAgICAg ICAgcmxMb2dJbmZvICJDaGVja2luZyBsZ2V0eGF0dHIgY2FsbHMiCisgICAgICAgIHJsUnVuICJn cmVwIGxnZXR4YXR0ciBzdHJhY2Uub3V0IHwgZ3JlcCBzZWN1cml0eS5zZWxpbnV4ID4gc3RyYWNl X3hhdHRyLm91dCIKKworICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyXFxcIlwiICAg ICAgICAgICAgIHN0cmFjZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRU bXBEaXIvYVxcXCJcIiAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4g ImdyZXAgXCJcXFwiJFRtcERpci9hZmlsZVxcXCJcIiAgICAgICBzdHJhY2VfeGF0dHIub3V0Igor ICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2EvYlxcXCJcIiAgICAgICAgIHN0cmFj ZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iZmlsZVxc XCJcIiAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRt cERpci9hL2IvY2ZpbGVcXFwiXCIgICBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgICMgbnVs bCBhcyBsaXN0CisgICAgICAgIGlmIHJsSXNGZWRvcmEgIj49MjYiOyB0aGVuCisgICAgICAgICAg ICBybFJ1biAic3RyYWNlIC1vc3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfZXhjbHVkZV9saXN0IE5V TEwgJFRtcERpciIgMTM5ICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbl9zZXRfZXhjbHVkZV9s aXN0IHdpdGggbnVsbCBhcyBsaXN0IgorICAgICAgICBlbHNlCisgICAgICAgICAgICBybFJ1biAi c3RyYWNlIC1vc3RyYWNlLm91dCAtcyA2NCAuL3Rlc3RfZXhjbHVkZV9saXN0IE5VTEwgJFRtcERp ciIgMCAiQ2FsbGluZyBzZWxpbnV4X3Jlc3RvcmVjb25fc2V0X2V4Y2x1ZGVfbGlzdCB3aXRoIG51 bGwgYXMgbGlzdCIKKworICAgICAgICAgICAgcmxMb2dJbmZvICJDaGVja2luZyBsZ2V0eGF0dHIg Y2FsbHMiCisgICAgICAgICAgICBybFJ1biAiZ3JlcCBsZ2V0eGF0dHIgc3RyYWNlLm91dCB8IGdy ZXAgc2VjdXJpdHkuc2VsaW51eCA+IHN0cmFjZV94YXR0ci5vdXQiCisKKyAgICAgICAgICAgIHJs UnVuICJncmVwIFwiXFxcIiRUbXBEaXJcXFwiXCIgICAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91 dCIKKyAgICAgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYVxcXCJcIiAgICAgICAg ICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBE aXIvYWZpbGVcXFwiXCIgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgICAgIHJsUnVu ICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iXFxcIlwiICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIK KyAgICAgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iZmlsZVxcXCJcIiAgICAg c3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIv YS9iL2NmaWxlXFxcIlwiICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgZmkKKworICAgICAg ICAjIGV4Y2x1ZGUgJFRtcERpci9hCisgICAgICAgIHJsUnVuICJzdHJhY2UgLW9zdHJhY2Uub3V0 IC1zIDY0IC4vdGVzdF9leGNsdWRlX2xpc3QgJFRtcERpci9hICRUbXBEaXIiIDAgIkNhbGxpbmcg c2VsaW51eF9yZXN0b3JlY29uX3NldF9leGNsdWRlX2xpc3QiCisKKyAgICAgICAgcmxMb2dJbmZv ICJDaGVja2luZyBsZ2V0eGF0dHIgY2FsbHMiCisgICAgICAgIHJsUnVuICJncmVwIGxnZXR4YXR0 ciBzdHJhY2Uub3V0IHwgZ3JlcCBzZWN1cml0eS5zZWxpbnV4ID4gc3RyYWNlX3hhdHRyLm91dCIK KworICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyXFxcIlwiICAgICAgICAgICAgIHN0 cmFjZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYVxcXCJc IiAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIgMQorICAgICAgICBybFJ1biAiZ3JlcCBcIlxc XCIkVG1wRGlyL2FmaWxlXFxcIlwiICAgICAgIHN0cmFjZV94YXR0ci5vdXQiCisgICAgICAgIHJs UnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iXFxcIlwiICAgICAgICAgc3RyYWNlX3hhdHRyLm91 dCIgMQorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2EvYmZpbGVcXFwiXCIgICAg IHN0cmFjZV94YXR0ci5vdXQiIDEKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9h L2IvY2ZpbGVcXFwiXCIgICBzdHJhY2VfeGF0dHIub3V0IiAxCisKKyAgICAgICAgcmxSdW4gInJt IC1mIHN0cmFjZS5vdXQiCisgICAgICAgIHJsUnVuICJybSAtZiBzdHJhY2VfeGF0dHIub3V0Igor CisgICAgICAgIGRlbGV0ZVRlc3RGaWxlcworICAgIHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VT dGFydFRlc3QgInNlbGludXhfcmVzdG9yZWNvbl9zZXRfc2VoYW5kbGUiCisgICAgICAgIGNyZWF0 ZVRlc3RGaWxlcworCisgICAgICAgICMgbnVsbCBzZWhhbmRsZQorICAgICAgICBybFJ1biAiLi90 ZXN0X3NlaGFuZGxlIE5VTEwgJFRtcERpciIgMTM5LDI1NSAiQ2FsbGluZyBzZWxpbnV4X3Jlc3Rv cmVjb25fc2V0X3NlaGFuZGxlIHdpdGggbnVsbCBoYW5kbGUiCisKKyAgICAgICAgIyBpbnZhbGlk IHNlaGFuZGxlCisgICAgICAgIHJsUnVuICIuL3Rlc3Rfc2VoYW5kbGUgSU5WQUxJRCAkVG1wRGly IiAxMzksMjU1ICJDYWxsaW5nIHNlbGludXhfcmVzdG9yZWNvbl9zZXRfc2VoYW5kbGUgd2l0aCBp bnZhbGlkIGhhbmRsZSIKKworICAgICAgICAjIGRlZmF1bHQgc2VoYW5kbGUKKyAgICAgICAgcmxS dW4gInN0cmFjZSAtb3N0cmFjZS5vdXQgLXMgNjQgLi90ZXN0X3NlaGFuZGxlIERFRkFVTFQgJFRt cERpciIgMCAiQ2FsbGluZyBzZWxpbnV4X3Jlc3RvcmVjb25fc2V0X3NlaGFuZGxlIHdpdGggZGVm YXVsdCBoYW5kbGUiCisKKyAgICAgICAgcmxMb2dJbmZvICJDaGVja2luZyBsZ2V0eGF0dHIgY2Fs bHMiCisgICAgICAgIHJsUnVuICJncmVwIGxnZXR4YXR0ciBzdHJhY2Uub3V0IHwgZ3JlcCBzZWN1 cml0eS5zZWxpbnV4ID4gc3RyYWNlX3hhdHRyLm91dCIKKworICAgICAgICBybFJ1biAiZ3JlcCBc IlxcXCIkVG1wRGlyXFxcIlwiICAgICAgICAgICAgIHN0cmFjZV94YXR0ci5vdXQiCisgICAgICAg IHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYVxcXCJcIiAgICAgICAgICAgc3RyYWNlX3hhdHRy Lm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hZmlsZVxcXCJcIiAgICAg ICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAgICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2Ev YlxcXCJcIiAgICAgICAgIHN0cmFjZV94YXR0ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwi XFxcIiRUbXBEaXIvYS9iZmlsZVxcXCJcIiAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAg cmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9hL2IvY2ZpbGVcXFwiXCIgICBzdHJhY2VfeGF0dHIu b3V0IgorCisgICAgICAgICMgY3VzdG9tIHNlaGFuZGxlCisgICAgICAgIHJsUnVuICJzdHJhY2Ug LW9zdHJhY2Uub3V0IC1zIDY0IC4vdGVzdF9zZWhhbmRsZSBDVVNUT00gJFRtcERpciIgMCAiQ2Fs bGluZyBzZWxpbnV4X3Jlc3RvcmVjb25fc2V0X3NlaGFuZGxlIHdpdGggY3VzdG9tIGhhbmRsZSIK KworICAgICAgICBybExvZ0luZm8gIkNoZWNraW5nIGxnZXR4YXR0ciBjYWxscyIKKyAgICAgICAg cmxSdW4gImdyZXAgbGdldHhhdHRyIHN0cmFjZS5vdXQgfCBncmVwIHNlY3VyaXR5LnNlbGludXgg PiBzdHJhY2VfeGF0dHIub3V0IgorCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXJc XFwiXCIgICAgICAgICAgICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAg XCJcXFwiJFRtcERpci9hXFxcIlwiICAgICAgICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAg ICBybFJ1biAiZ3JlcCBcIlxcXCIkVG1wRGlyL2FmaWxlXFxcIlwiICAgICAgIHN0cmFjZV94YXR0 ci5vdXQiCisgICAgICAgIHJsUnVuICJncmVwIFwiXFxcIiRUbXBEaXIvYS9iXFxcIlwiICAgICAg ICAgc3RyYWNlX3hhdHRyLm91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgXCJcXFwiJFRtcERpci9h L2JmaWxlXFxcIlwiICAgICBzdHJhY2VfeGF0dHIub3V0IgorICAgICAgICBybFJ1biAiZ3JlcCBc IlxcXCIkVG1wRGlyL2EvYi9jZmlsZVxcXCJcIiAgIHN0cmFjZV94YXR0ci5vdXQiCisKKyAgICAg ICAgcmxSdW4gInJtIC1mIHN0cmFjZS5vdXQiCisgICAgICAgIHJsUnVuICJybSAtZiBzdHJhY2Vf eGF0dHIub3V0IgorCisgICAgICAgIGRlbGV0ZVRlc3RGaWxlcworICAgIHJsUGhhc2VFbmQKKwor ICAgIHJsUGhhc2VTdGFydENsZWFudXAKKyAgICAgICAgcmxSdW4gInJtIC1mIHRlc3RfcmVzdG9y ZWNvbiB0ZXN0X2V4Y2x1ZGVfbGlzdCB0ZXN0X3NlaGFuZGxlIgorCisgICAgICAgIHJsUnVuICJ1 c2VyZGVsIC1yIHVzZXIiCisgICAgcmxQaGFzZUVuZAorcmxKb3VybmFsUHJpbnRUZXh0CitybEpv dXJuYWxFbmQKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGludXhfcmVzdG9yZWNvbi1mdW5j dGlvbnMvdGVzdF9leGNsdWRlX2xpc3QuYyBiL2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29u LWZ1bmN0aW9ucy90ZXN0X2V4Y2x1ZGVfbGlzdC5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAuLjc3NmViNWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGludXhf cmVzdG9yZWNvbi1mdW5jdGlvbnMvdGVzdF9leGNsdWRlX2xpc3QuYwpAQCAtMCwwICsxLDU1IEBA CisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4KKyNpbmNsdWRlIDxzdHJp bmcuaD4KKyNpbmNsdWRlIDxzZWxpbnV4L3NlbGludXguaD4KKyNpbmNsdWRlIDxzZWxpbnV4L2Nv bnRleHQuaD4KKyNpbmNsdWRlIDxzZWxpbnV4L2xhYmVsLmg+CisjaW5jbHVkZSA8c2VsaW51eC9y ZXN0b3JlY29uLmg+CisKK2ludCBtYWluKGludCBhcmdjLCBjaGFyICoqYXJndikgeworICAgIGNo YXIgKnBhdGggPSBOVUxMOworICAgIGNvbnN0IGNoYXIgKipsaXN0ID0gTlVMTDsKKyAgICB1bnNp Z25lZCBpbnQgZmxhZ3MgPSAwOworCisgICAgaWYgKGFyZ2MgPCAzKSB7CisgICAgICAgIGZwcmlu dGYoc3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAgICAgcmV0 dXJuIDE7CisgICAgfQorICAgIAorICAgIC8vIHNldCByZXN0b3JlY29uIHBhdGgKKyAgICBpZiAo c3RyY21wKGFyZ3ZbMl0sICJFTVBUWSIpID09IDApIHsKKyAgICAgICAgcGF0aCA9ICIiOworICAg IH0KKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsyXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAg IHBhdGggPSBOVUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgcGF0aCA9IGFyZ3ZbMl07 CisgICAgfQorCisgICAgLy8gc2V0IHJlc3RvcmVjb24gZmxhZ3MKKyAgICBmbGFncyB8PSBTRUxJ TlVYX1JFU1RPUkVDT05fUkVDVVJTRTsKKyAgICBmbGFncyB8PSBTRUxJTlVYX1JFU1RPUkVDT05f SUdOT1JFX0RJR0VTVDsKKworICAgIC8vIHNldCBleGNsdWRlIGxpc3QKKyAgICBpZiAoc3RyY21w KGFyZ3ZbMV0sICJOVUxMIikgPT0gMCkgeworICAgICAgICBsaXN0ID0gTlVMTDsKKyAgICB9Cisg ICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJFTVBUWSIpID09IDApIHsKKyAgICAgICAgbGlz dCA9IG1hbGxvYyhzaXplb2YoY2hhciopKTsKKyAgICAgICAgbGlzdFswXSA9IE5VTEw7CisgICAg fQorICAgIGVsc2UgeworICAgICAgICBsaXN0ID0gbWFsbG9jKDIqc2l6ZW9mKGNoYXIqKSk7Cisg ICAgICAgIGxpc3RbMF0gPSBhcmd2WzFdOworICAgICAgICBsaXN0WzFdID0gTlVMTDsKKyAgICB9 CisKKyAgICBwcmludGYoIlJ1bm5pbmcgc2VsaW51eF9yZXN0b3JlY29uX3NldF9leGNsdWRlX2xp c3QoKTtcbiIpOworCisgICAgc2VsaW51eF9yZXN0b3JlY29uX3NldF9leGNsdWRlX2xpc3QobGlz dCk7CisKKyAgICBwcmludGYoIlJ1bm5pbmcgc2VsaW51eF9yZXN0b3JlY29uKFwiJXNcIiwgJSMw OHgpO1xuIiwgcGF0aCwgZmxhZ3MpOworCisgICAgcmV0dXJuIHNlbGludXhfcmVzdG9yZWNvbihw YXRoLCBmbGFncyk7Cit9CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVj b24tZnVuY3Rpb25zL3Rlc3RfcmVzdG9yZWNvbi5jIGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3Rv cmVjb24tZnVuY3Rpb25zL3Rlc3RfcmVzdG9yZWNvbi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAuLjAzNjAwYWMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGlu dXhfcmVzdG9yZWNvbi1mdW5jdGlvbnMvdGVzdF9yZXN0b3JlY29uLmMKQEAgLTAsMCArMSw1NyBA QAorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c2Vs aW51eC9zZWxpbnV4Lmg+CisjaW5jbHVkZSA8c2VsaW51eC9jb250ZXh0Lmg+CisjaW5jbHVkZSA8 c2VsaW51eC9sYWJlbC5oPgorI2luY2x1ZGUgPHNlbGludXgvcmVzdG9yZWNvbi5oPgorCitpbnQg bWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKKyAgICB1bnNpZ25lZCBpbnQgZmxhZ3MgPSAw OworICAgIGNoYXIgKnBhdGggPSBOVUxMOworCisgICAgaWYgKGFyZ2MgPCAyKSB7CisgICAgICAg IGZwcmludGYoc3RkZXJyLCAiSW52YWxpZCBudW1iZXIgb2YgYXJndW1lbnRzXG4iKTsKKyAgICAg ICAgcmV0dXJuIDE7CisgICAgfQorCisgICAgLy8gc2V0IHBhdGgKKyAgICBpZiAoc3RyY21wKGFy Z3ZbMV0sICJFTVBUWSIpID09IDApIHsKKyAgICAgICAgcGF0aCA9ICIiOworICAgIH0KKyAgICBl bHNlIGlmIChzdHJjbXAoYXJndlsxXSwgIk5VTEwiKSA9PSAwKSB7CisgICAgICAgIHBhdGggPSBO VUxMOworICAgIH0KKyAgICBlbHNlIHsKKyAgICAgICAgcGF0aCA9IGFyZ3ZbMV07CisgICAgfQor ICAgIAorICAgIC8vIHNldCBmbGFncyAoaWYgYW55KQorICAgIGlmIChhcmdjID49IDMpIHsKKyAg ICAgICAgZm9yIChpbnQgaSA9IDI7IGkgPCBhcmdjOyBpKyspCisgICAgICAgICAgICBpZiAoc3Ry Y21wKGFyZ3ZbaV0sICJJR05PUkVfRElHRVNUIikgPT0gMCkKKyAgICAgICAgICAgICAgICBmbGFn cyB8PSBTRUxJTlVYX1JFU1RPUkVDT05fSUdOT1JFX0RJR0VTVDsKKyAgICAgICAgICAgIGVsc2Ug aWYgKHN0cmNtcChhcmd2W2ldLCAiTk9DSEFOR0UiKSA9PSAwKQorICAgICAgICAgICAgICAgIGZs YWdzIHw9IFNFTElOVVhfUkVTVE9SRUNPTl9OT0NIQU5HRTsKKyAgICAgICAgICAgIGVsc2UgaWYg KHN0cmNtcChhcmd2W2ldLCAiVkVSQk9TRSIpID09IDApCisgICAgICAgICAgICAgICAgZmxhZ3Mg fD0gU0VMSU5VWF9SRVNUT1JFQ09OX1ZFUkJPU0U7CisgICAgICAgICAgICBlbHNlIGlmIChzdHJj bXAoYXJndltpXSwgIlBST0dSRVNTIikgPT0gMCkKKyAgICAgICAgICAgICAgICBmbGFncyB8PSBT RUxJTlVYX1JFU1RPUkVDT05fUFJPR1JFU1M7CisgICAgICAgICAgICBlbHNlIGlmIChzdHJjbXAo YXJndltpXSwgIlJFQ1VSU0UiKSA9PSAwKQorICAgICAgICAgICAgICAgIGZsYWdzIHw9IFNFTElO VVhfUkVTVE9SRUNPTl9SRUNVUlNFOworICAgICAgICAgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3Zb aV0sICJTRVRfU1BFQ0ZJTEVfQ1RYIikgPT0gMCkKKyAgICAgICAgICAgICAgICBmbGFncyB8PSBT RUxJTlVYX1JFU1RPUkVDT05fU0VUX1NQRUNGSUxFX0NUWDsKKyAgICAgICAgICAgIGVsc2UgaWYg KHN0cmNtcChhcmd2W2ldLCAiUkVBTFBBVEgiKSA9PSAwKQorICAgICAgICAgICAgICAgIGZsYWdz IHw9IFNFTElOVVhfUkVTVE9SRUNPTl9SRUFMUEFUSDsKKyAgICAgICAgICAgIGVsc2UgaWYgKHN0 cmNtcChhcmd2W2ldLCAiWERFViIpID09IDApCisgICAgICAgICAgICAgICAgZmxhZ3MgfD0gU0VM SU5VWF9SRVNUT1JFQ09OX1hERVY7CisgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAg ICBmcHJpbnRmKHN0ZGVyciwgIkludmFsaWQgZmxhZyAlc1xuIiwgYXJndltpXSk7CisgICAgICAg ICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgICAgICB9CisKKyAgICB9CisKKyAgICBwcmludGYo IlJ1bm5pbmcgc2VsaW51eF9yZXN0b3JlY29uKFwiJXNcIiwgJSMwOHgpO1xuIiwgcGF0aCwgZmxh Z3MpOworCisgICAgcmV0dXJuIHNlbGludXhfcmVzdG9yZWNvbihwYXRoLCBmbGFncyk7Cit9Cgpk aWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24tZnVuY3Rpb25zL3Rlc3Rf c2VoYW5kbGUuYyBiL2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29uLWZ1bmN0aW9ucy90ZXN0 X3NlaGFuZGxlLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzk1NDE4MAot LS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29uLWZ1bmN0aW9u cy90ZXN0X3NlaGFuZGxlLmMKQEAgLTAsMCArMSw2NCBAQAorI2luY2x1ZGUgPHN0ZGlvLmg+Cisj aW5jbHVkZSA8c3RkbGliLmg+CisjaW5jbHVkZSA8c3RyaW5nLmg+CisjaW5jbHVkZSA8c2VsaW51 eC9zZWxpbnV4Lmg+CisjaW5jbHVkZSA8c2VsaW51eC9jb250ZXh0Lmg+CisjaW5jbHVkZSA8c2Vs aW51eC9sYWJlbC5oPgorI2luY2x1ZGUgPHNlbGludXgvcmVzdG9yZWNvbi5oPgorCitpbnQgbWFp bihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKKyAgICBzdHJ1Y3Qgc2VsYWJlbF9oYW5kbGUgKmhu ZGwgPSBOVUxMOworICAgIGNoYXIgKnBhdGggPSBOVUxMOworICAgIHVuc2lnbmVkIGludCBmbGFn cyA9IDA7CisKKyAgICBpZiAoYXJnYyA8IDMpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJJ bnZhbGlkIG51bWJlciBvZiBhcmd1bWVudHNcbiIpOworICAgICAgICByZXR1cm4gMTsKKyAgICB9 CisKKyAgICAvLyBzZXQgcmVzdG9yZWNvbiBwYXRoCisgICAgaWYgKHN0cmNtcChhcmd2WzJdLCAi RU1QVFkiKSA9PSAwKSB7CisgICAgICAgIHBhdGggPSAiIjsKKyAgICB9CisgICAgZWxzZSBpZiAo c3RyY21wKGFyZ3ZbMl0sICJOVUxMIikgPT0gMCkgeworICAgICAgICBwYXRoID0gTlVMTDsKKyAg ICB9CisgICAgZWxzZSB7CisgICAgICAgIHBhdGggPSBhcmd2WzJdOworICAgIH0KKworICAgIC8v IHNldCByZXN0b3JlY29uIGZsYWdzCisgICAgZmxhZ3MgfD0gU0VMSU5VWF9SRVNUT1JFQ09OX1JF Q1VSU0U7CisgICAgZmxhZ3MgfD0gU0VMSU5VWF9SRVNUT1JFQ09OX0lHTk9SRV9ESUdFU1Q7CisK KyAgICAvLyBzZXQgc2VoYW5kbGUKKyAgICBpZiAoc3RyY21wKGFyZ3ZbMV0sICJERUZBVUxUIikg PT0gMCkgeworICAgICAgICBobmRsID0gc2VsaW51eF9yZXN0b3JlY29uX2RlZmF1bHRfaGFuZGxl KCk7CisKKyAgICAgICAgaWYgKGhuZGwgPT0gTlVMTCkgeworICAgICAgICAgICAgcmV0dXJuIDE7 CisgICAgICAgIH0KKyAgICB9CisgICAgZWxzZSBpZiAoc3RyY21wKGFyZ3ZbMV0sICJJTlZBTElE IikgPT0gMCkgeworICAgICAgICBobmRsID0gKHN0cnVjdCBzZWxhYmVsX2hhbmRsZSAqKSAxOwor ICAgIH0KKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsxXSwgIk5VTEwiKSA9PSAwKSB7CisgICAg ICAgIGhuZGwgPSBOVUxMOworICAgIH0KKyAgICBlbHNlIGlmIChzdHJjbXAoYXJndlsxXSwgIkNV U1RPTSIpID09IDApIHsKKyAgICAgICAgc3RydWN0IHNlbGludXhfb3B0IG9wdGlvbnNbXSA9IHsK KyAgICAgICAgICAgIHsgU0VMQUJFTF9PUFRfRElHRVNULCAoY2hhciAqKTEgfSwKKyAgICAgICAg ICAgIHsgU0VMQUJFTF9PUFRfQkFTRU9OTFksIChjaGFyICopMSB9CisgICAgICAgIH07CisKKyAg ICAgICAgaG5kbCA9IHNlbGFiZWxfb3BlbihTRUxBQkVMX0NUWF9GSUxFLCBvcHRpb25zLCAyKTsK KyAgICB9CisKKyAgICBwcmludGYoIlJ1bm5pbmcgc2VsaW51eF9yZXN0b3JlY29uX3NldF9zZWhh bmRsZSgpO1xuIik7CisKKyAgICBzZWxpbnV4X3Jlc3RvcmVjb25fc2V0X3NlaGFuZGxlKGhuZGwp OworCisgICAgcHJpbnRmKCJSdW5uaW5nIHNlbGludXhfcmVzdG9yZWNvbihcIiVzXCIsICUjMDh4 KTtcbiIsIHBhdGgsIGZsYWdzKTsKKworICAgIHJldHVybiBzZWxpbnV4X3Jlc3RvcmVjb24ocGF0 aCwgZmxhZ3MpOworfQoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29u L01ha2VmaWxlIGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24vTWFrZWZpbGUKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDkwMzc4NwotLS0gL2Rldi9udWxsCisrKyBi L2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29uL01ha2VmaWxlCkBAIC0wLDAgKzEsNjQgQEAK KyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBNYWtlZmlsZSBvZiAvQ29yZU9TL2xpYnNlbGludXgvU2Fu aXR5L3NlbGludXhfcmVzdG9yZWNvbgorIyAgIERlc2NyaXB0aW9uOiBEb2VzIHNlbGludXhfcmVz dG9yZWNvbiB3b3JrIGNvcnJlY3RseT8KKyMgICBBdXRob3I6IE1pbG9zIE1hbGlrIDxtbWFsaWtA cmVkaGF0LmNvbT4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBDb3B5cmlnaHQgKGMpIDIwMTYg UmVkIEhhdCwgSW5jLgorIworIyAgIFRoaXMgY29weXJpZ2h0ZWQgbWF0ZXJpYWwgaXMgbWFkZSBh dmFpbGFibGUgdG8gYW55b25lIHdpc2hpbmcKKyMgICB0byB1c2UsIG1vZGlmeSwgY29weSwgb3Ig cmVkaXN0cmlidXRlIGl0IHN1YmplY3QgdG8gdGhlIHRlcm1zCisjICAgYW5kIGNvbmRpdGlvbnMg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24gMi4KKyMKKyMgICBUaGlz IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlCisjICAg dXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZAorIyAgIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIKKyMgICBQVVJQT1NFLiBTZWUgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZv ciBtb3JlIGRldGFpbHMuCisjCisjICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBv ZiB0aGUgR05VIEdlbmVyYWwgUHVibGljCisjICAgTGljZW5zZSBhbG9uZyB3aXRoIHRoaXMgcHJv Z3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZQorIyAgIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCwgRmlmdGggRmxvb3IsCisjICAgQm9zdG9uLCBNQSAw MjExMC0xMzAxLCBVU0EuCisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisKK2V4cG9ydCBURVNUPS9Db3JlT1Mv bGlic2VsaW51eC9TYW5pdHkvc2VsaW51eF9yZXN0b3JlY29uCitleHBvcnQgVEVTVFZFUlNJT049 MS4wCisKK0JVSUxUX0ZJTEVTPQorCitGSUxFUz0kKE1FVEFEQVRBKSBydW50ZXN0LnNoIE1ha2Vm aWxlIFBVUlBPU0UKKworLlBIT05ZOiBhbGwgaW5zdGFsbCBkb3dubG9hZCBjbGVhbgorCitydW46 ICQoRklMRVMpIGJ1aWxkCisJLi9ydW50ZXN0LnNoCisKK2J1aWxkOiAkKEJVSUxUX0ZJTEVTKQor CXRlc3QgLXggcnVudGVzdC5zaCB8fCBjaG1vZCBhK3ggcnVudGVzdC5zaAorCitjbGVhbjoKKwly bSAtZiAqfiAkKEJVSUxUX0ZJTEVTKQorCitpbmNsdWRlIC91c3Ivc2hhcmUvcmh0cy9saWIvcmh0 cy1tYWtlLmluY2x1ZGUKKworJChNRVRBREFUQSk6IE1ha2VmaWxlCisJQGVjaG8gIk93bmVyOiAg ICAgICAgICAgTWlsb3MgTWFsaWsgPG1tYWxpa0ByZWRoYXQuY29tPiIgPiAkKE1FVEFEQVRBKQor CUBlY2hvICJOYW1lOiAgICAgICAgICAgICQoVEVTVCkiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlRlc3RWZXJzaW9uOiAgICAgJChURVNUVkVSU0lPTikiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlBhdGg6ICAgICAgICAgICAgJChURVNUX0RJUikiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkRl c2NyaXB0aW9uOiAgICAgRG9lcyBzZWxpbnV4X3Jlc3RvcmVjb24gd29yayBjb3JyZWN0bHk/IiA+ PiAkKE1FVEFEQVRBKQorCUBlY2hvICJUeXBlOiAgICAgICAgICAgIFNhbml0eSIgPj4gJChNRVRB REFUQSkKKwlAZWNobyAiVGVzdFRpbWU6ICAgICAgICAxMG0iID4+ICQoTUVUQURBVEEpCisJQGVj aG8gIlJ1bkZvcjogICAgICAgICAgbGlic2VsaW51eCIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAi UmVxdWlyZXM6ICAgICAgICBsaWJzZWxpbnV4IGxpYnNlbGludXgtdXRpbHMgYXR0ciIgPj4gJChN RVRBREFUQSkKKwlAZWNobyAiUHJpb3JpdHk6ICAgICAgICBOb3JtYWwiID4+ICQoTUVUQURBVEEp CisJQGVjaG8gIkxpY2Vuc2U6ICAgICAgICAgR1BMdjIiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IkNvbmZpZGVudGlhbDogICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkRlc3RydWN0aXZl OiAgICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJlbGVhc2VzOiAgICAgICAgLVJIRUw0 IC1SSEVMNiAtUkhFTENsaWVudDUgLVJIRUxTZXJ2ZXI1IiA+PiAkKE1FVEFEQVRBKQorCisJcmh0 cy1saW50ICQoTUVUQURBVEEpCisKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGludXhfcmVz dG9yZWNvbi9QVVJQT1NFIGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24vUFVSUE9TRQpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZWUxN2UxCi0tLSAvZGV2L251bGwK KysrIGIvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24vUFVSUE9TRQpAQCAtMCwwICsxLDUg QEAKK1BVUlBPU0Ugb2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X3Jlc3RvcmVj b24KK0F1dGhvcjogTWlsb3MgTWFsaWsgPG1tYWxpa0ByZWRoYXQuY29tPgorCitEb2VzIHNlbGlu dXhfcmVzdG9yZWNvbiB3b3JrIGNvcnJlY3RseT8gVGhlIHByb2dyYW0gd2FzIGFkZGVkIGluIFJI RUwtNy4zLgorCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Jlc3RvcmVjb24vcnVu dGVzdC5zaCBiL2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29uL3J1bnRlc3Quc2gKbmV3IGZp bGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uMDViODEzYgotLS0gL2Rldi9udWxsCisrKyBi L2xpYnNlbGludXgvc2VsaW51eF9yZXN0b3JlY29uL3J1bnRlc3Quc2gKQEAgLTAsMCArMSw3NyBA QAorIyEvYmluL2Jhc2gKKyMgdmltOiBkaWN0Kz0vdXNyL3NoYXJlL2JlYWtlcmxpYi9kaWN0aW9u YXJ5LnZpbSBjcHQ9Lix3LGIsdSx0LGksaworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIHJ1bnRlc3Qu c2ggb2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X3Jlc3RvcmVjb24KKyMgICBE ZXNjcmlwdGlvbjogRG9lcyBzZWxpbnV4X3Jlc3RvcmVjb24gd29yayBjb3JyZWN0bHk/CisjICAg QXV0aG9yOiBNaWxvcyBNYWxpayA8bW1hbGlrQHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ CisjCisjICAgQ29weXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIGNv cHlyaWdodGVkIG1hdGVyaWFsIGlzIG1hZGUgYXZhaWxhYmxlIHRvIGFueW9uZSB3aXNoaW5nCisj ICAgdG8gdXNlLCBtb2RpZnksIGNvcHksIG9yIHJlZGlzdHJpYnV0ZSBpdCBzdWJqZWN0IHRvIHRo ZSB0ZXJtcworIyAgIGFuZCBjb25kaXRpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSB2ZXJzaW9uIDIuCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRo ZSBob3BlIHRoYXQgaXQgd2lsbCBiZQorIyAgIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJB TlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQKKyMgICB3YXJyYW50eSBvZiBNRVJDSEFOVEFC SUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjICAgUFVSUE9TRS4gU2VlIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBz aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYworIyAg IExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZy ZWUKKyMgICBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZp ZnRoIEZsb29yLAorIyAgIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgorIworIyB+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgorCisjIEluY2x1ZGUgQmVha2VyIGVudmlyb25tZW50CisuIC91c3Ivc2hhcmUvYmVha2Vy bGliL2JlYWtlcmxpYi5zaCB8fCBleGl0IDEKKworUEFDS0FHRT0ibGlic2VsaW51eCIKKworcmxK b3VybmFsU3RhcnQKKyAgICBybFBoYXNlU3RhcnRTZXR1cAorICAgICAgICBybEFzc2VydFJwbSAk e1BBQ0tBR0V9CisgICAgICAgIHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0tdXRpbHMKKyAgICBybFBo YXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRUZXN0ICJ2YWxpZCBvcHRpb25zIC8gY29tYmluYXRp b25zIgorICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29uIC0taGVscCIgMC0yNTUKKyAg ICAgICAgZm9yIENVUl9ESVIgaW4gL2Jvb3QgL2V0YyAvb3B0IC9yb290IC91c3IgL3ZhciA7IGRv CisgICAgICAgICAgICBybFJ1biAic2V0ZmF0dHIgLXggc2VjdXJpdHkucmVzdG9yZWNvbl9sYXN0 ICR7Q1VSX0RJUn0iIDAsMQorICAgICAgICAgICAgcmxSdW4gImdldGZhdHRyIC1tIC4gLWQgJHtD VVJfRElSfSB8IGdyZXAgc2VjdXJpdHkucmVzdG9yZWNvbl9sYXN0PSIgMQorICAgICAgICAgICAg cmxSdW4gInNlbGludXhfcmVzdG9yZWNvbiAtUiAtZCAtQyAke0NVUl9ESVJ9IDI+JjEgfCBncmVw IC1pIFwidXBkYXRlZCBkaWdlc3QgZm9yLioke0NVUl9ESVJ9XCIiIDEKKyAgICAgICAgICAgIHJs UnVuICJnZXRmYXR0ciAtbSAuIC1kICR7Q1VSX0RJUn0gfCBncmVwIHNlY3VyaXR5LnJlc3RvcmVj b25fbGFzdD0iCisgICAgICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29uIC1SIC12IC1k IC1DICR7Q1VSX0RJUn0gMj4mMSB8IGdyZXAgLWkgXCJ1cGRhdGVkIGRpZ2VzdCBmb3IuKiR7Q1VS X0RJUn1cIiIKKyAgICAgICAgZG9uZQorICAgICAgICBybFJ1biAiY2hjb24gLXUgdW5jb25maW5l ZF91IC9yb290IgorICAgICAgICBybFJ1biAibHMgLWRaIC9yb290IHwgZ3JlcCB1bmNvbmZpbmVk X3U6IgorICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29uIC1SIC12IC1kIC1DIC9yb290 IDI+JjEgfCBncmVwIC1pIHJlbGFiZWxlZCIgMQorICAgICAgICBybFJ1biAibHMgLWRaIC9yb290 IHwgZ3JlcCB1bmNvbmZpbmVkX3U6IgorICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29u IC1SIC12IC1kIC1DIC1GIC9yb290IDI+JjEgfCBncmVwIC1pIHJlbGFiZWxlZCIKKyAgICAgICAg cmxSdW4gImxzIC1kWiAvcm9vdCB8IGdyZXAgc3lzdGVtX3U6IgorICAgIHJsUGhhc2VFbmQKKwor ICAgIHJsUGhhc2VTdGFydFRlc3QgImludmFsaWQgb3B0aW9ucyAvIGNvbWJpbmF0aW9ucyIKKyAg ICAgICAgcmxSdW4gInNlbGludXhfcmVzdG9yZWNvbiAtdiAtUCAyPiYxIHwgZ3JlcCAtaSBcIm11 dHVhbGx5IGV4Y2x1c2l2ZVwiIgorICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29uIC1m IDI+JjEgfCBncmVwIC1pIFwib3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50XCIiCisgICAgICAg IHJsUnVuICJzZWxpbnV4X3Jlc3RvcmVjb24gLXAgMj4mMSB8IGdyZXAgLWkgXCJvcHRpb24gcmVx dWlyZXMgYW4gYXJndW1lbnRcIiIKKyAgICAgICAgcmxSdW4gInNlbGludXhfcmVzdG9yZWNvbiAv bm9uLWV4aXN0ZW50IDI+JjEgfCBncmVwIC1pIFwiTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeVwi IgorICAgIHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VTdGFydFRlc3QKKyAgICAgICAgT1VUUFVU X0ZJTEU9YG1rdGVtcGAKKyAgICAgICAgcmxSdW4gInNlbGludXhfcmVzdG9yZWNvbiAtUiAtdiAt QyAvcm9vdCAyPiYxIHwgdGVlICR7T1VUUFVUX0ZJTEV9IgorICAgICAgICBybFJ1biAiZ3JlcCAt cSAtZSAvc3lzL2ZzL3NlbGludXgvIC1lIC9zeXMva2VybmVsL3NlY3VyaXR5LyAke09VVFBVVF9G SUxFfSIgMQorICAgICAgICBybFJ1biAic2VsaW51eF9yZXN0b3JlY29uIC1SIC12IC1DIC1yIC9y b290IDI+JjEgfCB0ZWUgJHtPVVRQVVRfRklMRX0iCisgICAgICAgIHJsUnVuICJncmVwIC1xIC1l IC9zeXMvZnMvc2VsaW51eC8gLWUgL3N5cy9rZXJuZWwvc2VjdXJpdHkvICR7T1VUUFVUX0ZJTEV9 IiAxCisgICAgICAgIHJtIC1mICR7T1VUUFVUX0ZJTEV9CisgICAgcmxQaGFzZUVuZAorCisgICAg cmxQaGFzZVN0YXJ0Q2xlYW51cAorICAgIHJsUGhhc2VFbmQKK3JsSm91cm5hbFByaW50VGV4dAor cmxKb3VybmFsRW5kCisKCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGludXhfc2VzdGF0dXMt ZnVuY3Rpb25zL01ha2VmaWxlIGIvbGlic2VsaW51eC9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9u cy9NYWtlZmlsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kM2FkOWU4Ci0t LSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51eC9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9ucy9N YWtlZmlsZQpAQCAtMCwwICsxLDYzIEBACisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgTWFrZWZpbGUg b2YgL0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9ucwor IyAgIERlc2NyaXB0aW9uOiBUZXN0IHNlc3RhdHVzLmMgZnVuY3Rpb25zCisjICAgQXV0aG9yOiBK YW4gWmFyc2t5IDxqemFyc2t5QHJlZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAg Q29weXJpZ2h0IChjKSAyMDE2IFJlZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIHByb2dyYW0gaXMg ZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisjICAgbW9kaWZ5 IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMK KyMgICBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZl cnNpb24gMiBvZgorIyAgIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSB0aGF0IGl0IHdpbGwgYmUKKyMgICB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkCisjICAgd2FycmFudHkgb2YgTUVSQ0hBTlRBQklMSVRZ IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyAgIFBVUlBPU0UuICBTZWUgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjICAgWW91IHNob3Vs ZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UK KyMgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLy4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKworZXhwb3J0IFRFU1Q9L0NvcmVPUy9s aWJzZWxpbnV4L1Nhbml0eS9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9ucworZXhwb3J0IFRFU1RW RVJTSU9OPTEuMAorCitCVUlMVF9GSUxFUz0KKworRklMRVM9JChNRVRBREFUQSkgcnVudGVzdC5z aCBNYWtlZmlsZSBQVVJQT1NFIHRlc3QuYworCisuUEhPTlk6IGFsbCBpbnN0YWxsIGRvd25sb2Fk IGNsZWFuCisKK3J1bjogJChGSUxFUykgYnVpbGQKKwkuL3J1bnRlc3Quc2gKKworYnVpbGQ6ICQo QlVJTFRfRklMRVMpCisJdGVzdCAteCBydW50ZXN0LnNoIHx8IGNobW9kIGEreCBydW50ZXN0LnNo CisKK2NsZWFuOgorCXJtIC1mICp+ICQoQlVJTFRfRklMRVMpCisKKworaW5jbHVkZSAvdXNyL3No YXJlL3JodHMvbGliL3JodHMtbWFrZS5pbmNsdWRlCisKKyQoTUVUQURBVEEpOiBNYWtlZmlsZQor CUBlY2hvICJPd25lcjogICAgICAgICAgIEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4i ID4gJChNRVRBREFUQSkKKwlAZWNobyAiTmFtZTogICAgICAgICAgICAkKFRFU1QpIiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJUZXN0VmVyc2lvbjogICAgICQoVEVTVFZFUlNJT04pIiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJQYXRoOiAgICAgICAgICAgICQoVEVTVF9ESVIpIiA+PiAkKE1FVEFE QVRBKQorCUBlY2hvICJEZXNjcmlwdGlvbjogICAgIFRlc3Qgc2VzdGF0dXMuYyBmdW5jdGlvbnMi ID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlR5cGU6ICAgICAgICAgICAgU2FuaXR5IiA+PiAkKE1F VEFEQVRBKQorCUBlY2hvICJUZXN0VGltZTogICAgICAgIDVtIiA+PiAkKE1FVEFEQVRBKQorCUBl Y2hvICJSdW5Gb3I6ICAgICAgICAgIGxpYnNlbGludXgiID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlJlcXVpcmVzOiAgICAgICAgbGlic2VsaW51eCBsaWJzZWxpbnV4LWRldmVsIGdsaWJjIiA+PiAk KE1FVEFEQVRBKQorCUBlY2hvICJQcmlvcml0eTogICAgICAgIE5vcm1hbCIgPj4gJChNRVRBREFU QSkKKwlAZWNobyAiTGljZW5zZTogICAgICAgICBHUEx2MisiID4+ICQoTUVUQURBVEEpCisJQGVj aG8gIkNvbmZpZGVudGlhbDogICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIkRlc3RydWN0 aXZlOiAgICAgbm8iID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJlbGVhc2VzOiAgICAgICAgLVJI RUw0IC1SSEVMQ2xpZW50NSAtUkhFTFNlcnZlcjUgLVJIRUw2IiA+PiAkKE1FVEFEQVRBKQorCisJ cmh0cy1saW50ICQoTUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Nl c3RhdHVzLWZ1bmN0aW9ucy9QVVJQT1NFIGIvbGlic2VsaW51eC9zZWxpbnV4X3Nlc3RhdHVzLWZ1 bmN0aW9ucy9QVVJQT1NFCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmM2Mzgz NjQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJzZWxpbnV4L3NlbGludXhfc2VzdGF0dXMtZnVuY3Rp b25zL1BVUlBPU0UKQEAgLTAsMCArMSwzIEBACitQVVJQT1NFIG9mIC9Db3JlT1MvbGlic2VsaW51 eC9TYW5pdHkvc2VsaW51eF9zZXN0YXR1cy1mdW5jdGlvbnMKK0Rlc2NyaXB0aW9uOiBUZXN0IHNl c3RhdHVzLmMgZnVuY3Rpb25zCitBdXRob3I6IEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNv bT4KCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4L3NlbGludXhfc2VzdGF0dXMtZnVuY3Rpb25zL3J1 bnRlc3Quc2ggYi9saWJzZWxpbnV4L3NlbGludXhfc2VzdGF0dXMtZnVuY3Rpb25zL3J1bnRlc3Qu c2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4uYTg5ZDY0NAotLS0gL2Rldi9u dWxsCisrKyBiL2xpYnNlbGludXgvc2VsaW51eF9zZXN0YXR1cy1mdW5jdGlvbnMvcnVudGVzdC5z aApAQCAtMCwwICsxLDY1IEBACisjIS9iaW4vYmFzaAorIyB2aW06IGRpY3QrPS91c3Ivc2hhcmUv YmVha2VybGliL2RpY3Rpb25hcnkudmltIGNwdD0uLHcsYix1LHQsaSxrCisjIH5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ CisjCisjICAgcnVudGVzdC5zaCBvZiAvQ29yZU9TL2xpYnNlbGludXgvU2FuaXR5L3NlbGludXhf c2VzdGF0dXMtZnVuY3Rpb25zCisjICAgRGVzY3JpcHRpb246IFRlc3Qgc2VzdGF0dXMuYyBmdW5j dGlvbnMKKyMgICBBdXRob3I6IEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4KKyMKKyMg fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KKyMKKyMgICBDb3B5cmlnaHQgKGMpIDIwMTYgUmVkIEhhdCwgSW5jLgorIwor IyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBp dCBhbmQvb3IKKyMgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBhcworIyAgIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAyIG9mCisjICAgdGhlIExpY2Vuc2UsIG9yIChhdCB5 b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGRp c3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZQorIyAgIHVzZWZ1bCwgYnV0IFdJ VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQKKyMgICB3YXJyYW50 eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisjICAgUFVS UE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWls cy4KKyMKKyMgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMgTGljZW5zZQorIyAgIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiBJZiBub3Qs IHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLgorIworIyB+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisj IEluY2x1ZGUgQmVha2VyIGVudmlyb25tZW50CisuIC91c3Ivc2hhcmUvYmVha2VybGliL2JlYWtl cmxpYi5zaCB8fCBleGl0IDEKKworUEFDS0FHRT0ibGlic2VsaW51eCIKKworcmxKb3VybmFsU3Rh cnQKKyAgICBybFBoYXNlU3RhcnRTZXR1cAorICAgICAgICBybEFzc2VydFJwbSAke1BBQ0tBR0V9 CisgICAgICAgIHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0tZGV2ZWwKKyAgICAgICAgcmxBc3NlcnRS cG0gImdsaWJjIgorCisgICAgICAgIHJsUnVuIC1sICJnY2MgdGVzdC5jIC1vIHRlc3QgLWxzZWxp bnV4IC1wZWRhbnRpYyAtV2FsbCAtV2V4dHJhIC1zdGQ9Yzk5IgorICAgIHJsUGhhc2VFbmQKKwor ICAgIHJsUGhhc2VTdGFydFRlc3QKKyAgICAgICAgcmxSdW4gIi4vdGVzdCA+IHJlcy50eHQiCisg ICAgICAgIHJsUnVuIC1sICJjYXQgcmVzLnR4dCIKKworICAgICAgICBTRUxJTlVYX01OVD0kKGNh dCAvcHJvYy9tb3VudHMgfCBncmVwIHNlbGludXggfCBjdXQgLWQgIiAiIC1mIDIpCisKKyAgICAg ICAgcmxSdW4gImdyZXAgXCIoYmVmb3JlIG9wZW4pIHNlbGludXhfc3RhdHVzX2dldGVuZm9yY2Ug LTFcIiByZXMudHh0IgorICAgICAgICBybFJ1biAiZ3JlcCBcIihiZWZvcmUgb3Blbikgc2VsaW51 eF9zdGF0dXNfcG9saWN5bG9hZCAtMVwiIHJlcy50eHQiCisgICAgICAgIHJsUnVuICJncmVwIFwi KGJlZm9yZSBvcGVuKSBzZWxpbnV4X3N0YXR1c19kZW55X3Vua25vd24gLTFcIiByZXMudHh0Igor ICAgICAgICBybFJ1biAiZ3JlcCBcIihiZWZvcmUgb3Blbikgc2VsaW51eF9zdGF0dXNfdXBkYXRl ZCAtMVwiIHJlcy50eHQiCisgICAgICAgIAorICAgICAgICBybFJ1biAiZ3JlcCBcInNlbGludXhf c3RhdHVzX29wZW4gMFwiIHJlcy50eHQiCisgICAgICAgIHJsUnVuICJncmVwIFwic2VsaW51eF9z dGF0dXNfZ2V0ZW5mb3JjZSAkKGNhdCAkU0VMSU5VWF9NTlQvZW5mb3JjZSlcIiByZXMudHh0Igor ICAgICAgICBybFJ1biAiZ3JlcCAtRSBcInNlbGludXhfc3RhdHVzX3BvbGljeWxvYWQgWzAtOV1c IiByZXMudHh0IgorICAgICAgICBybFJ1biAiZ3JlcCBcInNlbGludXhfc3RhdHVzX2RlbnlfdW5r bm93biAkKGNhdCAkU0VMSU5VWF9NTlQvZGVueV91bmtub3duKVwiIHJlcy50eHQiCisgICAgICAg IHJsUnVuICJncmVwIFwic2VsaW51eF9zdGF0dXNfdXBkYXRlZCAwXCIgcmVzLnR4dCIKKyAgICAg ICAgcmxSdW4gImdyZXAgXCJzZWxpbnV4X3N0YXR1c19jbG9zZSB2b2lkXCIgcmVzLnR4dCIKKyAg ICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRDbGVhbnVwCisgICAgICAgIHJsUnVuICJy bSAtZiB0ZXN0IgorICAgIHJsUGhhc2VFbmQKK3JsSm91cm5hbFByaW50VGV4dAorcmxKb3VybmFs RW5kCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9ucy90 ZXN0LmMgYi9saWJzZWxpbnV4L3NlbGludXhfc2VzdGF0dXMtZnVuY3Rpb25zL3Rlc3QuYwpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NzMzZWI4Ci0tLSAvZGV2L251bGwKKysr IGIvbGlic2VsaW51eC9zZWxpbnV4X3Nlc3RhdHVzLWZ1bmN0aW9ucy90ZXN0LmMKQEAgLTAsMCAr MSwzOCBAQAorI2luY2x1ZGUgPHN0ZGlvLmg+CisjaW5jbHVkZSA8c2VsaW51eC9zZWxpbnV4Lmg+ IAorI2luY2x1ZGUgPHNlbGludXgvYXZjLmg+IAorCitpbnQgbWFpbihfX2F0dHJpYnV0ZV9fKCh1 bnVzZWQpKSBpbnQgYXJnYywgX19hdHRyaWJ1dGVfXygodW51c2VkKSkgY2hhciAqKmFyZ3YpIHsK KyAgICBwcmludGYoIihiZWZvcmUgb3Blbikgc2VsaW51eF9zdGF0dXNfZ2V0ZW5mb3JjZSAlZFxu IiwKKyAgICAgICAgc2VsaW51eF9zdGF0dXNfZ2V0ZW5mb3JjZSgpKTsKKworICAgIHByaW50Zigi KGJlZm9yZSBvcGVuKSBzZWxpbnV4X3N0YXR1c19wb2xpY3lsb2FkICVkXG4iLAorICAgICAgICBz ZWxpbnV4X3N0YXR1c19wb2xpY3lsb2FkKCkpOworCisgICAgcHJpbnRmKCIoYmVmb3JlIG9wZW4p IHNlbGludXhfc3RhdHVzX2RlbnlfdW5rbm93biAlZFxuIiwKKyAgICAgICAgc2VsaW51eF9zdGF0 dXNfZGVueV91bmtub3duKCkpOworCisgICAgcHJpbnRmKCIoYmVmb3JlIG9wZW4pIHNlbGludXhf c3RhdHVzX3VwZGF0ZWQgJWRcbiIsCisgICAgICAgIHNlbGludXhfc3RhdHVzX3VwZGF0ZWQoKSk7 CisKKworICAgIHByaW50Zigic2VsaW51eF9zdGF0dXNfb3BlbiAlZFxuIiwKKyAgICAgICAgc2Vs aW51eF9zdGF0dXNfb3BlbigxKSk7CisKKyAgICBwcmludGYoInNlbGludXhfc3RhdHVzX2dldGVu Zm9yY2UgJWRcbiIsCisgICAgICAgIHNlbGludXhfc3RhdHVzX2dldGVuZm9yY2UoKSk7CisKKyAg ICBwcmludGYoInNlbGludXhfc3RhdHVzX3BvbGljeWxvYWQgJWRcbiIsCisgICAgICAgIHNlbGlu dXhfc3RhdHVzX3BvbGljeWxvYWQoKSk7CisKKyAgICBwcmludGYoInNlbGludXhfc3RhdHVzX2Rl bnlfdW5rbm93biAlZFxuIiwKKyAgICAgICAgc2VsaW51eF9zdGF0dXNfZGVueV91bmtub3duKCkp OworCisgICAgcHJpbnRmKCJzZWxpbnV4X3N0YXR1c191cGRhdGVkICVkXG4iLAorICAgICAgICBz ZWxpbnV4X3N0YXR1c191cGRhdGVkKCkpOworCisgICAgcHJpbnRmKCJzZWxpbnV4X3N0YXR1c19j bG9zZSB2b2lkXG4iKTsKKyAgICBzZWxpbnV4X3N0YXR1c19jbG9zZSgpOworCisgICAgcmV0dXJu IDA7Cit9CgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3NldF9jYWxsYmFjay9NYWtl ZmlsZSBiL2xpYnNlbGludXgvc2VsaW51eF9zZXRfY2FsbGJhY2svTWFrZWZpbGUKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGE0Mzg1OAotLS0gL2Rldi9udWxsCisrKyBiL2xp YnNlbGludXgvc2VsaW51eF9zZXRfY2FsbGJhY2svTWFrZWZpbGUKQEAgLTAsMCArMSw2MyBAQAor IyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fgorIworIyAgIE1ha2VmaWxlIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5p dHkvc2VsaW51eF9zZXRfY2FsbGJhY2sKKyMgICBEZXNjcmlwdGlvbjogVGVzdCBzZWxpbnV4X3Nl dF9jYWxsYmFjayBmdW5jdGlvbgorIyAgIEF1dGhvcjogSmFuIFphcnNreSA8anphcnNreUByZWRo YXQuY29tPgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorIworIyAgIENvcHlyaWdodCAoYykgMjAxNiBSZWQg SGF0LCBJbmMuCisjCisjICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4g cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorIyAgIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzCisjICAgcHVibGlzaGVkIGJ5IHRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDIgb2YKKyMgICB0aGUgTGlj ZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKyMKKyMgICBUaGlz IHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlCisjICAg dXNlZnVsLCBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZAorIyAgIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIKKyMgICBQVVJQT1NFLiAgU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBm b3IgbW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkg b2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjICAgYWxvbmcgd2l0aCB0aGlzIHBy b2dyYW0uIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uCisjCisjIH5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+CisKK2V4cG9ydCBURVNUPS9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2VsaW51 eF9zZXRfY2FsbGJhY2sKK2V4cG9ydCBURVNUVkVSU0lPTj0xLjAKKworQlVJTFRfRklMRVM9CisK K0ZJTEVTPSQoTUVUQURBVEEpIHJ1bnRlc3Quc2ggTWFrZWZpbGUgUFVSUE9TRSB0ZXN0XyouYwor CisuUEhPTlk6IGFsbCBpbnN0YWxsIGRvd25sb2FkIGNsZWFuCisKK3J1bjogJChGSUxFUykgYnVp bGQKKwkuL3J1bnRlc3Quc2ggdGVzdF8qLmMKKworYnVpbGQ6ICQoQlVJTFRfRklMRVMpCisJdGVz dCAteCBydW50ZXN0LnNoIHx8IGNobW9kIGEreCBydW50ZXN0LnNoCisKK2NsZWFuOgorCXJtIC1m ICp+ICQoQlVJTFRfRklMRVMpCisKKworaW5jbHVkZSAvdXNyL3NoYXJlL3JodHMvbGliL3JodHMt bWFrZS5pbmNsdWRlCisKKyQoTUVUQURBVEEpOiBNYWtlZmlsZQorCUBlY2hvICJPd25lcjogICAg ICAgICAgIEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4iID4gJChNRVRBREFUQSkKKwlA ZWNobyAiTmFtZTogICAgICAgICAgICAkKFRFU1QpIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJU ZXN0VmVyc2lvbjogICAgICQoVEVTVFZFUlNJT04pIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJQ YXRoOiAgICAgICAgICAgICQoVEVTVF9ESVIpIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJEZXNj cmlwdGlvbjogICAgIFRlc3Qgc2VsaW51eF9zZXRfY2FsbGJhY2sgZnVuY3Rpb24iID4+ICQoTUVU QURBVEEpCisJQGVjaG8gIlR5cGU6ICAgICAgICAgICAgU2FuaXR5IiA+PiAkKE1FVEFEQVRBKQor CUBlY2hvICJUZXN0VGltZTogICAgICAgIDVtIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJSdW5G b3I6ICAgICAgICAgIGxpYnNlbGludXgiID4+ICQoTUVUQURBVEEpCisJQGVjaG8gIlJlcXVpcmVz OiAgICAgICAgbGlic2VsaW51eCBnY2MgZ2xpYmMgbGlic2VsaW51eC1kZXZlbCIgPj4gJChNRVRB REFUQSkKKwlAZWNobyAiUHJpb3JpdHk6ICAgICAgICBOb3JtYWwiID4+ICQoTUVUQURBVEEpCisJ QGVjaG8gIkxpY2Vuc2U6ICAgICAgICAgR1BMdjIrIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJD b25maWRlbnRpYWw6ICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJEZXN0cnVjdGl2ZTog ICAgIG5vIiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJSZWxlYXNlczogICAgICAgIC1SSEVMNCAt UkhFTENsaWVudDUgLVJIRUxTZXJ2ZXI1IiA+PiAkKE1FVEFEQVRBKQorCisJcmh0cy1saW50ICQo TUVUQURBVEEpCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZWxpbnV4X3NldF9jYWxsYmFjay9Q VVJQT1NFIGIvbGlic2VsaW51eC9zZWxpbnV4X3NldF9jYWxsYmFjay9QVVJQT1NFCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQyOGIzMDcKLS0tIC9kZXYvbnVsbAorKysgYi9s aWJzZWxpbnV4L3NlbGludXhfc2V0X2NhbGxiYWNrL1BVUlBPU0UKQEAgLTAsMCArMSwzIEBACitQ VVJQT1NFIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2VsaW51eF9zZXRfY2FsbGJhY2sK K0Rlc2NyaXB0aW9uOiBUZXN0IHNlbGludXhfc2V0X2NhbGxiYWNrIGZ1bmN0aW9uCitBdXRob3I6 IEphbiBaYXJza3kgPGp6YXJza3lAcmVkaGF0LmNvbT4KCmRpZmYgLS1naXQgYS9saWJzZWxpbnV4 L3NlbGludXhfc2V0X2NhbGxiYWNrL3J1bnRlc3Quc2ggYi9saWJzZWxpbnV4L3NlbGludXhfc2V0 X2NhbGxiYWNrL3J1bnRlc3Quc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMC4u ZDQzMjQ5NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYnNlbGludXgvc2VsaW51eF9zZXRfY2FsbGJh Y2svcnVudGVzdC5zaApAQCAtMCwwICsxLDYwIEBACisjIS9iaW4vYmFzaAorIyB2aW06IGRpY3Qr PS91c3Ivc2hhcmUvYmVha2VybGliL2RpY3Rpb25hcnkudmltIGNwdD0uLHcsYix1LHQsaSxrCisj IH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+CisjCisjICAgcnVudGVzdC5zaCBvZiAvQ29yZU9TL2xpYnNlbGludXgvU2Fu aXR5L3NlbGludXhfc2V0X2NhbGxiYWNrCisjICAgRGVzY3JpcHRpb246IFRlc3Qgc2VsaW51eF9z ZXRfY2FsbGJhY2sgZnVuY3Rpb24KKyMgICBBdXRob3I6IEphbiBaYXJza3kgPGp6YXJza3lAcmVk aGF0LmNvbT4KKyMKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBDb3B5cmlnaHQgKGMpIDIwMTYgUmVk IEhhdCwgSW5jLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IKKyMgICBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcworIyAgIHB1Ymxpc2hlZCBieSB0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAyIG9mCisjICAgdGhlIExp Y2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjICAgVGhp cyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZQorIyAg IHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxp ZWQKKyMgICB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJU SUNVTEFSCisjICAgUFVSUE9TRS4gIFNlZSB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug Zm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5 IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorIyAgIGFsb25nIHdpdGggdGhpcyBw cm9ncmFtLiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLgorIworIyB+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fgorCisjIEluY2x1ZGUgQmVha2VyIGVudmlyb25tZW50CisuIC91c3Ivc2hhcmUv YmVha2VybGliL2JlYWtlcmxpYi5zaCB8fCBleGl0IDEKKworUEFDS0FHRT0ibGlic2VsaW51eCIK KworcmxKb3VybmFsU3RhcnQKKyAgICBybFBoYXNlU3RhcnRTZXR1cAorICAgICAgICBybEFzc2Vy dFJwbSAke1BBQ0tBR0V9CisgICAgICAgIHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0tZGV2ZWwKKyAg ICAgICAgcmxBc3NlcnRScG0gImdsaWJjIgorICAgICAgICBybEFzc2VydFJwbSAiZ2NjIgorCisg ICAgICAgIHJsUnVuIC1sICJnY2MgdGVzdF9jYWxsYmFjay5jIC1vIHRlc3RfY2FsbGJhY2sgLWxz ZWxpbnV4IC1XYWxsIC1XZXh0cmEgLVduby11bnVzZWQtcGFyYW1ldGVyIC1zdGQ9Yzk5IgorICAg IHJsUGhhc2VFbmQKKworICAgIHJsUGhhc2VTdGFydFRlc3QKKyAgICAgICAgcmxSdW4gIi4vdGVz dF9jYWxsYmFjayA+IG91dCAyPiBlcnIiCisKKyAgICAgICAgcmxSdW4gImNhdCBvdXQiCisgICAg ICAgIHJsUnVuICJjYXQgZXJyIgorCisgICAgICAgIHJsUnVuICJncmVwICdmdW5jdGlvbiBteV9s b2cnIG91dCIKKyAgICAgICAgcmxSdW4gImdyZXAgJ2Z1bmN0aW9uIG15X2F1ZGl0JyBvdXQiCisg ICAgICAgIHJsUnVuICJncmVwICdmdW5jdGlvbiBteV92YWxpZGF0ZScgb3V0IgorICAgICAgICBy bFJ1biAiZ3JlcCAnZnVuY3Rpb24gbXlfc2V0ZW5mb3JjZScgb3V0IgorICAgICAgICBybFJ1biAi Z3JlcCAnZnVuY3Rpb24gbXlfcG9saWN5bG9hZCcgb3V0IgorICAgIHJsUGhhc2VFbmQKKworICAg IHJsUGhhc2VTdGFydENsZWFudXAKKyAgICAgICAgcmxSdW4gInJtIC1mIHRlc3RfY2FsbGJhY2sg b3V0IGVyciIKKyAgICBybFBoYXNlRW5kCitybEpvdXJuYWxQcmludFRleHQKK3JsSm91cm5hbEVu ZAoKZGlmZiAtLWdpdCBhL2xpYnNlbGludXgvc2VsaW51eF9zZXRfY2FsbGJhY2svdGVzdF9jYWxs YmFjay5jIGIvbGlic2VsaW51eC9zZWxpbnV4X3NldF9jYWxsYmFjay90ZXN0X2NhbGxiYWNrLmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjQwYmQxMQotLS0gL2Rldi9udWxs CisrKyBiL2xpYnNlbGludXgvc2VsaW51eF9zZXRfY2FsbGJhY2svdGVzdF9jYWxsYmFjay5jCkBA IC0wLDAgKzEsMTI3IEBACisjaW5jbHVkZSA8c3RkaW8uaD4KKyNpbmNsdWRlIDxzdGRsaWIuaD4K KyNpbmNsdWRlIDxzdHJpbmcuaD4KKyNpbmNsdWRlIDxzdGRpbnQuaD4KKyNpbmNsdWRlIDxlcnJu by5oPgorI2luY2x1ZGUgPHNlbGludXgvc2VsaW51eC5oPgorI2luY2x1ZGUgPHNlbGludXgvYXZj Lmg+CisjaW5jbHVkZSA8c2VsaW51eC9sYWJlbC5oPgorCitpbnQgdmFsaWRhdGVfY291bnRlciA9 IDA7CisKK2ludCBteV9sb2coaW50IHR5cGUsIGNvbnN0IGNoYXIgKmZtdCwgLi4uKSB7CisgICAg cHJpbnRmKCJmdW5jdGlvbiBteV9sb2csIHR5cGU6ICVkLCBmbXQ6ICVzXG4iLCB0eXBlLCBmbXQp OworICAgIHJldHVybiAwOworfQorCitpbnQgbXlfYXVkaXQodm9pZCAqYXVkaXRkYXRhLCBzZWN1 cml0eV9jbGFzc190IGNscywgY2hhciAqbXNnYnVmLCBzaXplX3QgbXNnYnVmc2l6ZSkgeworICAg IHByaW50ZigiZnVuY3Rpb24gbXlfYXVkaXQsIGF1ZGl0ZGF0YTogJXAsIGNsczogJXUsIG1zZ2J1 ZjogJXMsIG1zZ2J1ZnNpemU6ICVsdVxuIiwgYXVkaXRkYXRhLCBjbHMsIG1zZ2J1ZiwgbXNnYnVm c2l6ZSk7CisgICAgcmV0dXJuIDA7Cit9CisKK2ludCBteV92YWxpZGF0ZShjaGFyICoqY3R4KSB7 CisgICAgaWYgKHZhbGlkYXRlX2NvdW50ZXIrKyA9PSAwKQorICAgICAgICBwcmludGYoImZ1bmN0 aW9uIG15X3ZhbGlkYXRlLCBjdHg6ICVwXG4iLCAodm9pZCAqKSBjdHgpOworCisgICAgcmV0dXJu IDA7Cit9CisKK2ludCBteV9zZXRlbmZvcmNlKGludCBlbmZvcmNpbmcpIHsKKyAgICBwcmludGYo ImZ1bmN0aW9uIG15X3NldGVuZm9yY2UsIGVuZm9yY2luZzogJWRcbiIsIGVuZm9yY2luZyk7Cisg ICAgcmV0dXJuIDA7Cit9CisKK2ludCBteV9wb2xpY3lsb2FkKGludCBzZXFubykgeworICAgIHBy aW50ZigiZnVuY3Rpb24gbXlfcG9saWN5bG9hZCwgc2Vxbm86ICVkXG4iLCBzZXFubyk7CisgICAg cmV0dXJuIDA7Cit9CisKK2ludCBtYWluIChpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKKyAgICBp bnQgZXhpdF9jb2RlID0gMDsKKworICAgIC8vIExPRworICAgIHByaW50Zigic2V0dGluZyBMT0cg Y2FsbGJhY2tcbiIpOworICAgIHNlbGludXhfc2V0X2NhbGxiYWNrKFNFTElOVVhfQ0JfTE9HLCAo dW5pb24gc2VsaW51eF9jYWxsYmFjaykgbXlfbG9nKTsKKyAgICAKKyAgICBpZiAoc2VsaW51eF9n ZXRfY2FsbGJhY2soU0VMSU5VWF9DQl9MT0cpLmZ1bmNfbG9nICE9IG15X2xvZykgeworICAgICAg ICBwcmludGYoIkVSUk9SOiBzZWxpbnV4X2dldF9jYWxsYmFjaygpIGRvZXMgbm90IG1hdGNoXG4i KTsKKyAgICAgICAgZXhpdF9jb2RlID0gMTsKKyAgICB9CisKKyAgICAvLyBBVURJVAorICAgIHBy aW50Zigic2V0dGluZyBBVURJVCBjYWxsYmFja1xuIik7CisgICAgc2VsaW51eF9zZXRfY2FsbGJh Y2soU0VMSU5VWF9DQl9BVURJVCwgKHVuaW9uIHNlbGludXhfY2FsbGJhY2spIG15X2F1ZGl0KTsK KyAgICAKKyAgICBpZiAoc2VsaW51eF9nZXRfY2FsbGJhY2soU0VMSU5VWF9DQl9BVURJVCkuZnVu Y19hdWRpdCAhPSBteV9hdWRpdCkgeworICAgICAgICBwcmludGYoIkVSUk9SOiBzZWxpbnV4X2dl dF9jYWxsYmFjaygpIGRvZXMgbm90IG1hdGNoXG4iKTsKKyAgICAgICAgZXhpdF9jb2RlID0gMTsK KyAgICB9CisKKyAgICBwcmludGYoImNhbGxpbmcgYXZjX2F1ZGl0IHRvIGNhbGwgYXVkaXQgYW5k IGxvZyBmdW5jdGlvbnNcbiIpOworICAgIAorICAgIGF2Y19pbml0KCIiLCBOVUxMLCBOVUxMLCBO VUxMLCBOVUxMKTsKKyAgICAKKyAgICBzdHJ1Y3Qgc2VjdXJpdHlfaWQgc3NpZCA9IHsgImFzZGYi LCA1IH07CisgICAgc3RydWN0IHNlY3VyaXR5X2lkIHRzaWQgPSB7ICJhc2RmIiwgNSB9OworICAg IHN0cnVjdCBhdl9kZWNpc2lvbiBhdmQgPSB7IDEsIDAsIDEsIDAsIDAsIDAgfTsKKworICAgIGF2 Y19hdWRpdCgmc3NpZCwgJnRzaWQsIDAsIDEsICZhdmQsIDAsIE5VTEwpOworCisgICAgLy8gVkFM SURBVEUKKyAgICBwcmludGYoInNldHRpbmcgVkFMSURBVEUgY2FsbGJhY2tcbiIpOworICAgIHNl bGludXhfc2V0X2NhbGxiYWNrKFNFTElOVVhfQ0JfVkFMSURBVEUsICh1bmlvbiBzZWxpbnV4X2Nh bGxiYWNrKSBteV92YWxpZGF0ZSk7CisgICAgCisgICAgaWYgKHNlbGludXhfZ2V0X2NhbGxiYWNr KFNFTElOVVhfQ0JfVkFMSURBVEUpLmZ1bmNfdmFsaWRhdGUgIT0gbXlfdmFsaWRhdGUpIHsKKyAg ICAgICAgcHJpbnRmKCJFUlJPUjogc2VsaW51eF9nZXRfY2FsbGJhY2soKSBkb2VzIG5vdCBtYXRj aFxuIik7CisgICAgICAgIGV4aXRfY29kZSA9IDE7CisgICAgfQorCisgICAgc3RydWN0IHNlbGFi ZWxfaGFuZGxlICpobmQgPSBOVUxMOworICAgIHN0cnVjdCBzZWxpbnV4X29wdCBzZWxhYmVsX29w dGlvbiBbXSA9IHsKKyAgICAgICAgeyBTRUxBQkVMX09QVF9WQUxJREFURSwgKGNoYXIgKikgMSB9 CisgICAgfTsKKworICAgIGhuZCA9IHNlbGFiZWxfb3BlbihTRUxBQkVMX0NUWF9GSUxFLCBzZWxh YmVsX29wdGlvbiwgMSk7CisgICAgc2VsYWJlbF9jbG9zZShobmQpOworICAgIAorICAgIC8vIFNF VEVORk9SQ0UKKyAgICBwcmludGYoInNldHRpbmcgU0VURU5GT1JDRSBjYWxsYmFja1xuIik7Cisg ICAgc2VsaW51eF9zZXRfY2FsbGJhY2soU0VMSU5VWF9DQl9TRVRFTkZPUkNFLCAodW5pb24gc2Vs aW51eF9jYWxsYmFjaykgbXlfc2V0ZW5mb3JjZSk7CisgICAgCisgICAgaWYgKHNlbGludXhfZ2V0 X2NhbGxiYWNrKFNFTElOVVhfQ0JfU0VURU5GT1JDRSkuZnVuY19zZXRlbmZvcmNlICE9IG15X3Nl dGVuZm9yY2UpIHsKKyAgICAgICAgcHJpbnRmKCJFUlJPUjogc2VsaW51eF9nZXRfY2FsbGJhY2so KSBkb2VzIG5vdCBtYXRjaFxuIik7CisgICAgICAgIGV4aXRfY29kZSA9IDE7CisgICAgfQorCisg ICAgaW50IGVuZm9yY2luZyA9IHNlY3VyaXR5X2dldGVuZm9yY2UoKTsKKworICAgIHByaW50Zigi Y2FsbGluZyBzZWN1cml0eV9zZXRlbmZvcmNlIHRvIGNhbGwgc2V0ZW5mb3JjZSBmdW5jdGlvblxu Iik7CisKKyAgICBpZiAoZW5mb3JjaW5nID09IDEpIHsKKyAgICAgICAgc2VjdXJpdHlfc2V0ZW5m b3JjZSgwKTsKKyAgICAgICAgc2VjdXJpdHlfc2V0ZW5mb3JjZSgxKTsKKyAgICB9CisgICAgZWxz ZSB7CisgICAgICAgIHNlY3VyaXR5X3NldGVuZm9yY2UoMSk7CisgICAgICAgIHNlY3VyaXR5X3Nl dGVuZm9yY2UoMCk7CisgICAgfQorCisgICAgLy8gdHJpZ2dlcnMgY2FsbGJhY2tzCisgICAgYXZj X2hhc19wZXJtX25vYXVkaXQoJnNzaWQsICZ0c2lkLCAwLCAxLCBOVUxMLCAmYXZkKTsKKyAgICAK KyAgICAvLyBQT0xJQ1lMT0FECisgICAgcHJpbnRmKCJzZXR0aW5nIFBPTElDWUxPQUQgY2FsbGJh Y2tcbiIpOworICAgIHNlbGludXhfc2V0X2NhbGxiYWNrKFNFTElOVVhfQ0JfUE9MSUNZTE9BRCwg KHVuaW9uIHNlbGludXhfY2FsbGJhY2spIG15X3BvbGljeWxvYWQpOworICAgIAorICAgIGlmIChz ZWxpbnV4X2dldF9jYWxsYmFjayhTRUxJTlVYX0NCX1BPTElDWUxPQUQpLmZ1bmNfcG9saWN5bG9h ZCAhPSBteV9wb2xpY3lsb2FkKSB7CisgICAgICAgIHByaW50ZigiRVJST1I6IHNlbGludXhfZ2V0 X2NhbGxiYWNrKCkgZG9lcyBub3QgbWF0Y2hcbiIpOworICAgICAgICBleGl0X2NvZGUgPSAxOwor ICAgIH0KKworICAgIHNlbGludXhfbWtsb2FkX3BvbGljeSgxKTsKKworICAgIC8vIHRyaWdnZXJz IGNhbGxiYWNrcworICAgIGF2Y19oYXNfcGVybV9ub2F1ZGl0KCZzc2lkLCAmdHNpZCwgMCwgMSwg TlVMTCwgJmF2ZCk7CisKKyAgICByZXR1cm4gZXhpdF9jb2RlOworfQoKZGlmZiAtLWdpdCBhL2xp YnNlbGludXgvc2V0ZW5mb3JjZS9NYWtlZmlsZSBiL2xpYnNlbGludXgvc2V0ZW5mb3JjZS9NYWtl ZmlsZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTAzNjVhCi0tLSAvZGV2 L251bGwKKysrIGIvbGlic2VsaW51eC9zZXRlbmZvcmNlL01ha2VmaWxlCkBAIC0wLDAgKzEsNjQg QEAKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBNYWtlZmlsZSBvZiAvQ29yZU9TL2xpYnNlbGludXgv U2FuaXR5L3NldGVuZm9yY2UKKyMgICBEZXNjcmlwdGlvbjogRG9lcyBzZXRlbmZvcmNlIHdvcmsg YXMgZXhwZWN0ZWQ/IERvZXMgaXQgcHJvZHVjZSBjb3JyZWN0IGF1ZGl0IG1lc3NhZ2VzPworIyAg IEF1dGhvcjogTWlsb3MgTWFsaWsgPG1tYWxpa0ByZWRoYXQuY29tPgorIworIyB+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgorIworIyAgIENvcHlyaWdodCAoYykgMjAxNiBSZWQgSGF0LCBJbmMuCisjCisjICAgVGhpcyBj b3B5cmlnaHRlZCBtYXRlcmlhbCBpcyBtYWRlIGF2YWlsYWJsZSB0byBhbnlvbmUgd2lzaGluZwor IyAgIHRvIHVzZSwgbW9kaWZ5LCBjb3B5LCBvciByZWRpc3RyaWJ1dGUgaXQgc3ViamVjdCB0byB0 aGUgdGVybXMKKyMgICBhbmQgY29uZGl0aW9ucyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExp Y2Vuc2UgdmVyc2lvbiAyLgorIworIyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUKKyMgICB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkCisjICAgd2FycmFudHkgb2YgTUVSQ0hBTlRB QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyAgIFBVUlBPU0UuIFNlZSB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgICBZb3Ug c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMKKyMg ICBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBG cmVlCisjICAgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBG aWZ0aCBGbG9vciwKKyMgICBCb3N0b24sIE1BIDAyMTEwLTEzMDEsIFVTQS4KKyMKKyMgfn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn4KKworZXhwb3J0IFRFU1Q9L0NvcmVPUy9saWJzZWxpbnV4L1Nhbml0eS9zZXRlbmZvcmNl CitleHBvcnQgVEVTVFZFUlNJT049MS4wCisKK0JVSUxUX0ZJTEVTPQorCitGSUxFUz0kKE1FVEFE QVRBKSBydW50ZXN0LnNoIE1ha2VmaWxlIFBVUlBPU0UKKworLlBIT05ZOiBhbGwgaW5zdGFsbCBk b3dubG9hZCBjbGVhbgorCitydW46ICQoRklMRVMpIGJ1aWxkCisJLi9ydW50ZXN0LnNoCisKK2J1 aWxkOiAkKEJVSUxUX0ZJTEVTKQorCXRlc3QgLXggcnVudGVzdC5zaCB8fCBjaG1vZCBhK3ggcnVu dGVzdC5zaAorCitjbGVhbjoKKwlybSAtZiAqfiAkKEJVSUxUX0ZJTEVTKQorCitpbmNsdWRlIC91 c3Ivc2hhcmUvcmh0cy9saWIvcmh0cy1tYWtlLmluY2x1ZGUKKworJChNRVRBREFUQSk6IE1ha2Vm aWxlCisJQGVjaG8gIk93bmVyOiAgICAgICAgICAgTWlsb3MgTWFsaWsgPG1tYWxpa0ByZWRoYXQu Y29tPiIgPiAkKE1FVEFEQVRBKQorCUBlY2hvICJOYW1lOiAgICAgICAgICAgICQoVEVTVCkiID4+ ICQoTUVUQURBVEEpCisJQGVjaG8gIlRlc3RWZXJzaW9uOiAgICAgJChURVNUVkVSU0lPTikiID4+ ICQoTUVUQURBVEEpCisJQGVjaG8gIlBhdGg6ICAgICAgICAgICAgJChURVNUX0RJUikiID4+ICQo TUVUQURBVEEpCisJQGVjaG8gIkRlc2NyaXB0aW9uOiAgICAgRG9lcyBzZXRlbmZvcmNlIHdvcmsg YXMgZXhwZWN0ZWQ/IERvZXMgaXQgcHJvZHVjZSBjb3JyZWN0IGF1ZGl0IG1lc3NhZ2VzPyIgPj4g JChNRVRBREFUQSkKKwlAZWNobyAiVHlwZTogICAgICAgICAgICBTYW5pdHkiID4+ICQoTUVUQURB VEEpCisJQGVjaG8gIlRlc3RUaW1lOiAgICAgICAgNW0iID4+ICQoTUVUQURBVEEpCisJQGVjaG8g IlJ1bkZvcjogICAgICAgICAgbGlic2VsaW51eCIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiUmVx dWlyZXM6ICAgICAgICBhdWRpdCBsaWJzZWxpbnV4IGxpYnNlbGludXgtdXRpbHMgZTJmc3Byb2dz IiA+PiAkKE1FVEFEQVRBKQorCUBlY2hvICJQcmlvcml0eTogICAgICAgIE5vcm1hbCIgPj4gJChN RVRBREFUQSkKKwlAZWNobyAiTGljZW5zZTogICAgICAgICBHUEx2MiIgPj4gJChNRVRBREFUQSkK KwlAZWNobyAiQ29uZmlkZW50aWFsOiAgICBubyIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiRGVz dHJ1Y3RpdmU6ICAgICBubyIgPj4gJChNRVRBREFUQSkKKwlAZWNobyAiUmVsZWFzZXM6ICAgICAg ICAtUkhFTDQgLVJIRUxDbGllbnQ1IC1SSEVMU2VydmVyNSIgPj4gJChNRVRBREFUQSkKKworCXJo dHMtbGludCAkKE1FVEFEQVRBKQorCgpkaWZmIC0tZ2l0IGEvbGlic2VsaW51eC9zZXRlbmZvcmNl L1BVUlBPU0UgYi9saWJzZWxpbnV4L3NldGVuZm9yY2UvUFVSUE9TRQpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5kZThhNzdlCi0tLSAvZGV2L251bGwKKysrIGIvbGlic2VsaW51 eC9zZXRlbmZvcmNlL1BVUlBPU0UKQEAgLTAsMCArMSw1IEBACitQVVJQT1NFIG9mIC9Db3JlT1Mv bGlic2VsaW51eC9TYW5pdHkvc2V0ZW5mb3JjZQorQXV0aG9yOiBNaWxvcyBNYWxpayA8bW1hbGlr QHJlZGhhdC5jb20+CisKK0RvZXMgc2V0ZW5mb3JjZSB3b3JrIGFzIGV4cGVjdGVkPyBEb2VzIGl0 IHByb2R1Y2UgY29ycmVjdCBhdWRpdCBtZXNzYWdlcz8KKwoKZGlmZiAtLWdpdCBhL2xpYnNlbGlu dXgvc2V0ZW5mb3JjZS9ydW50ZXN0LnNoIGIvbGlic2VsaW51eC9zZXRlbmZvcmNlL3J1bnRlc3Qu c2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTM3OGVhZQotLS0gL2Rldi9u dWxsCisrKyBiL2xpYnNlbGludXgvc2V0ZW5mb3JjZS9ydW50ZXN0LnNoCkBAIC0wLDAgKzEsODgg QEAKKyMhL2Jpbi9iYXNoCisjIHZpbTogZGljdCs9L3Vzci9zaGFyZS9iZWFrZXJsaWIvZGljdGlv bmFyeS52aW0gY3B0PS4sdyxiLHUsdCxpLGsKKyMgfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KKyMKKyMgICBydW50ZXN0 LnNoIG9mIC9Db3JlT1MvbGlic2VsaW51eC9TYW5pdHkvc2V0ZW5mb3JjZQorIyAgIERlc2NyaXB0 aW9uOiBEb2VzIHNldGVuZm9yY2Ugd29yayBhcyBleHBlY3RlZD8gRG9lcyBpdCBwcm9kdWNlIGNv cnJlY3QgYXVkaXQgbWVzc2FnZXM/CisjICAgQXV0aG9yOiBNaWxvcyBNYWxpayA8bW1hbGlrQHJl ZGhhdC5jb20+CisjCisjIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CisjCisjICAgQ29weXJpZ2h0IChjKSAyMDE2IFJl ZCBIYXQsIEluYy4KKyMKKyMgICBUaGlzIGNvcHlyaWdodGVkIG1hdGVyaWFsIGlzIG1hZGUgYXZh aWxhYmxlIHRvIGFueW9uZSB3aXNoaW5nCisjICAgdG8gdXNlLCBtb2RpZnksIGNvcHksIG9yIHJl ZGlzdHJpYnV0ZSBpdCBzdWJqZWN0IHRvIHRoZSB0ZXJtcworIyAgIGFuZCBjb25kaXRpb25zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDIuCisjCisjICAgVGhpcyBw cm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZQorIyAgIHVz ZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQK KyMgICB3YXJyYW50eSBvZiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNV TEFSCisjICAgUFVSUE9TRS4gU2VlIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig bW9yZSBkZXRhaWxzLgorIworIyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYworIyAgIExpY2Vuc2UgYWxvbmcgd2l0aCB0aGlzIHByb2dy YW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUKKyMgICBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorIyAgIEJvc3RvbiwgTUEgMDIx MTAtMTMwMSwgVVNBLgorIworIyB+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgorCisjIEluY2x1ZGUgQmVha2VyIGVudmly b25tZW50CisuIC91c3Ivc2hhcmUvYmVha2VybGliL2JlYWtlcmxpYi5zaCB8fCBleGl0IDEKKwor UEFDS0FHRT0ibGlic2VsaW51eCIKK2lmIHJsSXNSSEVMIDUgNiA7IHRoZW4KKyAgICBTRUxJTlVY X0ZTX01PVU5UPSIvc2VsaW51eCIKK2Vsc2UgIyBSSEVMLTcgYW5kIGFib3ZlCisgICAgU0VMSU5V WF9GU19NT1VOVD0iL3N5cy9mcy9zZWxpbnV4IgorZmkKKworcmxKb3VybmFsU3RhcnQKKyAgICBy bFBoYXNlU3RhcnRTZXR1cAorICAgICAgICBybEFzc2VydFJwbSAke1BBQ0tBR0V9CisgICAgICAg IHJsQXNzZXJ0UnBtICR7UEFDS0FHRX0tdXRpbHMKKyAgICAgICAgcmxSdW4gInNldGVuZm9yY2Ug LS1oZWxwIiAwLDEKKyAgICAgICAgT1VUUFVUX0ZJTEU9YG1rdGVtcGAKKyAgICAgICAgZXhwb3J0 IExDX0FMTD1lbl9VUy51dGY4CisgICAgcmxQaGFzZUVuZAorCisgICAgcmxQaGFzZVN0YXJ0VGVz dCAiYmFzaWMgdXNlIgorICAgICAgICBTVEFSVF9EQVRFX1RJTUU9YGRhdGUgIislbS8lZC8lWSAl VCJgCisgICAgICAgIHNsZWVwIDEKKyAgICAgICAgcmxSdW4gInNldGVuZm9yY2UgMSIKKyAgICAg ICAgcmxSdW4gImdyZXAgMSAke1NFTElOVVhfRlNfTU9VTlR9L2VuZm9yY2UiCisgICAgICAgIHJs UnVuICJzZXRlbmZvcmNlIDAiCisgICAgICAgIHJsUnVuICJncmVwIDAgJHtTRUxJTlVYX0ZTX01P VU5UfS9lbmZvcmNlIgorICAgICAgICBybFJ1biAic2V0ZW5mb3JjZSAxIgorICAgICAgICBzbGVl cCA1CisgICAgICAgIHJsUnVuICJhdXNlYXJjaCAtLWlucHV0LWxvZ3MgLW0gTUFDX1NUQVRVUyAt aSAtdHMgJHtTVEFSVF9EQVRFX1RJTUV9IHwgZ3JlcCAndHlwZT1NQUNfU1RBVFVTLiplbmZvcmNp bmc9MS4qb2xkX2VuZm9yY2luZz0wJyIKKyAgICAgICAgcmxSdW4gImF1c2VhcmNoIC0taW5wdXQt bG9ncyAtbSBNQUNfU1RBVFVTIC1pIC10cyAke1NUQVJUX0RBVEVfVElNRX0gfCBncmVwICd0eXBl PU1BQ19TVEFUVVMuKmVuZm9yY2luZz0wLipvbGRfZW5mb3JjaW5nPTEnIgorICAgICAgICBpZiBy bElzUkhFTCA7IHRoZW4KKyAgICAgICAgICAgIHJsUnVuICJhdXNlYXJjaCAtLWlucHV0LWxvZ3Mg LW0gTUFDX1NUQVRVUyAtaSAtdHMgJHtTVEFSVF9EQVRFX1RJTUV9IHwgZ3JlcCAndHlwZT1TWVND QUxMLipjb21tPXNldGVuZm9yY2UnIgorICAgICAgICBmaQorICAgIHJsUGhhc2VFbmQKKworICAg IHJsUGhhc2VTdGFydFRlc3QgImV4dHJlbWUgY2FzZXMiCisgICAgICAgIHJsUnVuICJ1bW91bnQg JHtTRUxJTlVYX0ZTX01PVU5UfSIKKyAgICAgICAgZm9yIE9QVElPTiBpbiAxIDAgRW5mb3JjaW5n IFBlcm1pc3NpdmUgOyBkbworICAgICAgICAgICAgcmxSdW4gInNldGVuZm9yY2UgJHtPUFRJT059 IDI+JjEgfCB0ZWUgJHtPVVRQVVRfRklMRX0iCisgICAgICAgICAgICBybEFzc2VydEdyZXAgInNl bGludXguKmRpc2FibGVkIiAke09VVFBVVF9GSUxFfSAtaQorICAgICAgICBkb25lCisgICAgICAg IHJsUnVuICJtb3VudCAtdCBzZWxpbnV4ZnMgbm9uZSAke1NFTElOVVhfRlNfTU9VTlR9IgorICAg ICAgICBybFJ1biAidG91Y2ggLi9lbmZvcmNlIgorICAgICAgICBybFJ1biAiY2hhdHRyICtpIC4v ZW5mb3JjZSIKKyAgICAgICAgcmxSdW4gIm1vdW50IC0tYmluZCAuL2VuZm9yY2UgJHtTRUxJTlVY X0ZTX01PVU5UfS9lbmZvcmNlIgorICAgICAgICBmb3IgT1BUSU9OIGluIDEgMCBFbmZvcmNpbmcg UGVybWlzc2l2ZSA7IGRvCisgICAgICAgICAgICBybFJ1biAic2V0ZW5mb3JjZSAke09QVElPTn0g Mj4mMSB8IHRlZSAke09VVFBVVF9GSUxFfSIKKyAgICAgICAgICAgIHJsQXNzZXJ0R3JlcCAic2V0 ZW5mb3JjZS4qZmFpbGVkIiAke09VVFBVVF9GSUxFfSAtaQorICAgICAgICBkb25lCisgICAgICAg IHJsUnVuICJ1bW91bnQgJHtTRUxJTlVYX0ZTX01PVU5UfS9lbmZvcmNlIgorICAgICAgICBybFJ1 biAiY2hhdHRyIC1pIC4vZW5mb3JjZSIKKyAgICAgICAgcmxSdW4gInJtIC1mIC4vZW5mb3JjZSIK KyAgICBybFBoYXNlRW5kCisKKyAgICBybFBoYXNlU3RhcnRDbGVhbnVwCisgICAgICAgIHJtIC1m ICR7T1VUUFVUX0ZJTEV9CisgICAgcmxQaGFzZUVuZAorcmxKb3VybmFsUHJpbnRUZXh0CitybEpv dXJuYWxFbmQKKwo=