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: =?utf-8?q?Miro_Hron=C4=8Dok_=3Cmiro=40hroncok=2Ecz=3E?= To: git-commits@fedoraproject.org Subject: [rpms/pyproject-rpm-macros] f43: %pyproject_save_files: Implement support for multi-package specfiles Date: Fri, 10 Jul 2026 10:50:03 GMT Message-ID: <178368060394.1.3249187335542452799.rpms-pyproject-rpm-macros-44cabdfd5727@fedoraproject.org> List-ID: X-Git-Repo: rpms/pyproject-rpm-macros X-Git-Branch: f43 X-Git-Rev: 44cabdfd5727635e77b75ca331b98023f7674493 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvcHlwcm9qZWN0LXJwbS1tYWNyb3MKICAgICAgICAgICAgQnJhbmNoIDogZjQz CiAgICAgICAgICAgIENvbW1pdCA6IDQ0Y2FiZGZkNTcyNzYzNWU3N2I3NWNhMzMxYjk4MDIzZjc2 NzQ0OTMKICAgICAgICAgICAgQXV0aG9yIDogTWlybyBIcm9uxI1vayA8bWlyb0Bocm9uY29rLmN6 PgogICAgICAgICAgICBEYXRlICAgOiAyMDI2LTA3LTA5VDEyOjE4OjU4KzAyOjAwCiAgICAgICAg ICAgIFN0YXRzICA6ICsyNTgvLTU1IGluIDYgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBo dHRwczovL3NyYy5mZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL3B5cHJvamVjdC1ycG0tbWFjcm9zL2Mv NDRjYWJkZmQ1NzI3NjM1ZTc3Yjc1Y2EzMzFiOTgwMjNmNzY3NDQ5Mz9icmFuY2g9ZjQzCgogICAg ICAgICAgICBMb2c6CiAgICAgICAgICAgICVweXByb2plY3Rfc2F2ZV9maWxlczogSW1wbGVtZW50 IHN1cHBvcnQgZm9yIG11bHRpLXBhY2thZ2Ugc3BlY2ZpbGVzCgpUaGlzIGFkZHMgYSBuZXcgLUQv LS1kaXN0LW5hbWUgb3B0aW9uIGZvcjoKCiAtICVweXByb2plY3Rfc2F2ZV9maWxlcwogLSAlcHlw cm9qZWN0X2ZpbGVzCiAtICVweXByb2plY3RfY2hlY2tfaW1wb3J0CiAtICVweXByb2plY3RfZXh0 cmFzX3N1YnBrZwoKQW5kIGFsbG93cyB0aGUgdXNlIG9mIGFsbCBvZiB0aG9zZSBpbiBtdWx0aS1w YWNrYWdlIHNwZWMgZmlsZXMuClNlZSBSRUFETUUubWQgY2hhbmdlcyBmb3IgdXNhZ2UuCgpBc3Np c3RlZC1CeTogQ2xhdWRlIE9wdXMgNC42CgpNYW55IHVzZWZ1bCBzdWdnZXN0aW9ucyBieSBNYXh3 ZWxsIEcgPG1heHdlbGxAZ3RteC5tZT4gYW5kIEthcm9saW5hIFN1cm1hIDxrc3VybWFAcmVkaGF0 LmNvbT4uCgotLS0KZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZAppbmRleCA4MTJm OTU5Li5hNjU0ZDgzIDEwMDY0NAotLS0gYS9SRUFETUUubWQKKysrIGIvUkVBRE1FLm1kCkBAIC0x OTAsMTEgKzE5MCwxNCBAQCBJcyByb3VnaGx5IGVxdWl2YWxlbnQgdG86CiAKIElmIHlvdSB1c2Ug YCVweXByb2plY3Rfd2hlZWxgIHRvIGJ1aWxkIG11bHRpcGxlIHdoZWVscywgZm9yIGV4YW1wbGUg bGlrZSB0aGlzOgogCi0gICAgJXB5cHJvamVjdF93aGVlbCAtZCBwcm9qZWN0X2EKLSAgICAlcHlw cm9qZWN0X3doZWVsIC1kIHByb2plY3RfYgorICAgICVweXByb2plY3Rfd2hlZWwgLS1kaXJlY3Rv cnkgZGlyZWN0b3J5MS8KKyAgICAlcHlwcm9qZWN0X3doZWVsIC0tZGlyZWN0b3J5IGRpcmVjdG9y eTIvCiAKIFlvdSBzdGlsbCBvbmx5IGNhbGwgYCVweXByb2plY3RfaW5zdGFsbGAgb25jZSBhbmQg aXQgd2lsbCBpbnN0YWxsIGFsbCBzdWNoIHdoZWVscy4KLVN1cHBvcnQgZm9yIGAlcHlwcm9qZWN0 X3NhdmVfZmlsZXNgIHdpdGggbXVsdGlwbGUgd2hlZWxzIGlzIG5vdCBpbXBsZW1lbnRlZC4KK1Rv IHVzZSBgJXB5cHJvamVjdF9zYXZlX2ZpbGVzYCAoYW5kIG9wdGlvbmFsbHkgYCVweXByb2plY3Rf Y2hlY2tfaW1wb3J0YCkgd2l0aCBtdWx0aXBsZSB3aGVlbHMsCit1c2UgdGhlIGAtRGAvYC0tZGlz dC1uYW1lYCBvcHRpb24gdG8gc2VsZWN0IGEgc3BlY2lmaWMgcGFja2FnZSwKK2ZvciBkZXRhaWxz LCBzZWUgKkdlbmVyYXRpbmcgdGhlICVmaWxlcyBzZWN0aW9uKgorKGFuZCAqUGVyZm9ybWluZyBh biBpbXBvcnQgY2hlY2sgb24gYWxsIGltcG9ydGFibGUgbW9kdWxlcyopLgogCiBJZiB5b3UgdXNl IGAlcHlwcm9qZWN0X2J1aWxkcmVxdWlyZXMgLWQgLi4uYCBmb3IgbXVsdGlwbGUgY28tZGVwZW5k ZW50IHBhY2thZ2VzCiBpbiBvbmUgc3BlYyBmaWxlLCBpdCB3aWxsIGNyZWF0ZSBvbmUgb3IgbW9y ZSBidWlsZCB0aW1lIGRlcGVuZGVuY2llcwpAQCAtNDEzLDYgKzQxNiwxNyBAQCBJZiB5b3Ugd2lz aCB0byByZW5hbWUsIHJlbW92ZSBvciBvdGhlcndpc2UgY2hhbmdlIHRoZSBpbnN0YWxsZWQgZmls ZXMgb2YgYSBwYWNrYQogSWYgcG9zc2libGUsIHJlbW92ZS9yZW5hbWUgc3VjaCBmaWxlcyBpbiBg JXByZXBgLgogSWYgbm90IHBvc3NpYmxlLCBhdm9pZCB1c2luZyBgJXB5cHJvamVjdF9zYXZlX2Zp bGVzYCBvciBlZGl0L3JlcGxhY2UgYCV7cHlwcm9qZWN0X2ZpbGVzfWAuCiAKK1doZW4gcHJvY2Vz c2luZyBmaWxlcyBmcm9tIG11bHRpcGxlIFB5dGhvbiBwYWNrYWdlcworKG1vc3QgbGlrZWx5IGFz IGEgcmVzdWx0IG9mIG11bHRpcGxlIGAlcHlwcm9qZWN0X3doZWVsYCBpbnZvY2F0aW9ucyksCit1 c2UgdGhlIGAtRGAvYC0tZGlzdC1uYW1lYCBvcHRpb24gdG8gc2VsZWN0IGEgc3BlY2lmaWMgcGFj a2FnZQoraW4gYCVweXByb2plY3Rfc2F2ZV9maWxlc2AgYW5kIGAle3B5cHJvamVjdF9maWxlc31g OgorCisgICAgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC0tZGlzdC1uYW1lIHBhY2thZ2VfYSBtb2R1 bGVfZ2xvYl9hLi4uCisgICAgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC0tZGlzdC1uYW1lIHBhY2th Z2VfYiBtb2R1bGVfZ2xvYl9iLi4uCisKKyAgICAlZmlsZXMgLW4gcHl0aG9uMy1wYWNrYWdlLWEg LWYgJXtweXByb2plY3RfZmlsZXMgLUQgcGFja2FnZV9hfQorICAgICVmaWxlcyAtbiBweXRob24z LXBhY2thZ2UtYiAtZiAle3B5cHJvamVjdF9maWxlcyAtRCBwYWNrYWdlX2J9CisKIAogUGVyZm9y bWluZyBhbiBpbXBvcnQgY2hlY2sgb24gYWxsIGltcG9ydGFibGUgbW9kdWxlcwogLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtNDYwLDYgKzQ3 NCwxNSBAQCBUaGUgYCVweXByb2plY3RfY2hlY2tfaW1wb3J0YCBtYWNybyBhbHNvIGFjY2VwdHMg cG9zaXRpb25hbCBhcmd1bWVudHMgd2l0aAogYWRkaXRpb25hbCBxdWFsaWZpZWQgbW9kdWxlIG5h bWVzIHRvIGNoZWNrLCB1c2VmdWwgZm9yIGV4YW1wbGUgaWYgc29tZSBtb2R1bGVzIGFyZSBpbnN0 YWxsZWQgbWFudWFsbHkuCiBOb3RlIHRoYXQgZmlsdGVyaW5nIGJ5IGAtdGAvYC0tdG9wLWxldmVs LW9ubHlgL2AtZWAvYC0tZXhjbHVkZWAgYWxzbyBhcHBsaWVzIHRvIHRoZSBwb3NpdGlvbmFsIGFy Z3VtZW50cy4KIAorV2hlbiBsaXN0aW5nIGZpbGVzIGZyb20gbXVsdGlwbGUgUHl0aG9uIHBhY2th Z2VzIHZpYSBgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC1EYC9gLS1kaXN0LW5hbWVgLAorcGFzcyBg LURgL2AtLWRpc3QtbmFtZWAgdG8gYCVweXByb2plY3RfY2hlY2tfaW1wb3J0YCBhcyB3ZWxsLgor CisgICAgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC0tZGlzdC1uYW1lIHBhY2thZ2VfYSBtb2R1bGVf Z2xvYl9hLi4uCisgICAgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC0tZGlzdC1uYW1lIHBhY2thZ2Vf YiBtb2R1bGVfZ2xvYl9iLi4uCisKKyAgICAlcHlwcm9qZWN0X2NoZWNrX2ltcG9ydCAtLWRpc3Qt bmFtZSBwYWNrYWdlX2EKKyAgICAlcHlwcm9qZWN0X2NoZWNrX2ltcG9ydCAtLWRpc3QtbmFtZSBw YWNrYWdlX2IKKwogQW5vdGhlciBtYWNybywgYCVfcHlwcm9qZWN0X2NoZWNrX2ltcG9ydF9hbGxv d19ub19tb2R1bGVzYCBhbGxvd3MgdG8gcGFzcyB0aGUgaW1wb3J0IGNoZWNrLAogZXZlbiBpZiBu byBQeXRob24gbW9kdWxlcyBhcmUgZGV0ZWN0ZWQgaW4gdGhlIHBhY2thZ2UuCiBUaGlzIG1heSBi ZSBhIHZhbGlkIGNhc2UgZm9yIHBhY2thZ2VzIGNvbnRhaW5pbmcgZS5nLiB0eXBpbmcgc3R1YnMu CkBAIC00OTYsNiArNTE5LDEzIEBAIFRoZXNlIGFyZ3VtZW50cyBhcmUgc3RpbGwgcmVxdWlyZWQ6 CiAqIFBvc2l0aW9uYWwgYXJndW1lbnRzOiB0aGUgZXh0cmEgbmFtZShzKS4KICAgTXVsdGlwbGUg c3VicGFja2FnZXMgYXJlIGdlbmVyYXRlZCB3aGVuIG11bHRpcGxlIG5hbWVzIGFyZSBwcm92aWRl ZC4KIAorV2hlbiBwcm9jZXNzaW5nIGZpbGVzIGZyb20gbXVsdGlwbGUgUHl0aG9uIHBhY2thZ2Vz Cisoc2VlICpHZW5lcmF0aW5nIHRoZSAlZmlsZXMgc2VjdGlvbiogZm9yIGRldGFpbHMpLAorcGFz cyBgLURgIHRvIGAlcHlwcm9qZWN0X2V4dHJhc19zdWJwa2dgIGFzIHdlbGw6CisKKyAgICAlcHlw cm9qZWN0X2V4dHJhc19zdWJwa2cgLW4gcHl0aG9uMy1wYWNrYWdlLWEgLUQgcGFja2FnZV9hIGV4 dHJhMQorICAgICVweXByb2plY3RfZXh0cmFzX3N1YnBrZyAtbiBweXRob24zLXBhY2thZ2UtYiAt RCBwYWNrYWdlX2IgZXh0cmEyCisKIAogUHJvdmlzaW9uYWw6IERlY2xhcmF0aXZlIEJ1aWxkc3lz dGVtIChSUE0gNC4yMCspCiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KQEAgLTYwMywxOSArNjMzLDIxIEBAIEhlcmUgaXMgYSBjb21wbGV0ZSByZWZlcmVu Y2Ugb2YgYWxsIG9wdGlvbnM6CiAKICMjIyBgJXB5cHJvamVjdF9zYXZlX2ZpbGVzYAogCi18IFNo b3J0IHwgTG9uZyAgICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfAotfC0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18 LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwKLXwgYC1s YCAgfCBgLS1hc3NlcnQtbGljZW5zZWAgICAgfCBGYWlsIHdoZW4gbm8gTGljZW5zZS1GaWxlIChQ RVAgNjM5KSBpcyBmb3VuZCAgICB8Ci18IGAtTGAgIHwgYC0tbm8tYXNzZXJ0LWxpY2Vuc2VgIHwg RG9uJ3QgZmFpbCBvbiBtaXNzaW5nIExpY2Vuc2UtRmlsZSAoZGVmYXVsdCkgICAgfAotfCBgLU1g ICB8IGAtLWFsbG93LW5vLW1vZHVsZXNgICB8IEFsbG93IG5vIG1vZHVsZSBnbG9icyAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKLXwgYC1hYCAgfCBgLS1hdXRvYCAgICAgICAgICAgICAgfCBJ bmNsdWRlIG5vbi1tb2R1bGUgZmlsZXMgKHNhbWUgYXMgYCthdXRvYCkgICAgICB8Cit8IFNob3J0 ICAgICAgfCBMb25nICAgICAgICAgICAgICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wtLS0tLS0tLS0tLS18LS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorfCBgLWxgICAgICAgIHwgYC0tYXNzZXJ0LWxp Y2Vuc2VgICAgICB8IEZhaWwgd2hlbiBubyBMaWNlbnNlLUZpbGUgKFBFUCA2MzkpIGlzIGZvdW5k ICAgICAgICAgICAgICAgICB8Cit8IGAtTGAgICAgICAgfCBgLS1uby1hc3NlcnQtbGljZW5zZWAg IHwgRG9uJ3QgZmFpbCBvbiBtaXNzaW5nIExpY2Vuc2UtRmlsZSAoZGVmYXVsdCkgICAgICAgICAg ICAgICAgIHwKK3wgYC1NYCAgICAgICB8IGAtLWFsbG93LW5vLW1vZHVsZXNgICAgfCBBbGxvdyBu byBtb2R1bGUgZ2xvYnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAor fCBgLUQgTkFNRWAgIHwgYC0tZGlzdC1uYW1lIE5BTUVgICAgICB8IFNhdmUgZmlsZXMgZm9yIGEg c3BlY2lmaWMgZGlzdHJpYnV0aW9uIHBhY2thZ2UgKG11bHRpLXdoZWVsKSB8Cit8IGAtYWAgICAg ICAgfCBgLS1hdXRvYCAgICAgICAgICAgICAgIHwgSW5jbHVkZSBub24tbW9kdWxlIGZpbGVzIChz YW1lIGFzIGArYXV0b2ApICAgICAgICAgICAgICAgICAgIHwKIAogIyMjIGAlcHlwcm9qZWN0X2No ZWNrX2ltcG9ydGAKIAotfCBTaG9ydCAgICAgfCBMb25nICAgICAgICAgICAgICAgfCBEZXNjcmlw dGlvbiAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwtLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0t LS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18Ci18IGAtZSBHTE9C YCB8IGAtLWV4Y2x1ZGUgR0xPQmAgICB8IEV4Y2x1ZGUgbW9kdWxlIG5hbWVzIG1hdGNoaW5nIGds b2IgfAotfCBgLXRgICAgICAgfCBgLS10b3AtbGV2ZWwtb25seWAgfCBPbmx5IGNoZWNrIHRvcC1s ZXZlbCBtb2R1bGVzICAgICAgIHwKK3wgU2hvcnQgICAgIHwgTG9uZyAgICAgICAgICAgICAgICAg IHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8 LS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorfCBgLWUgR0xPQmAgfCBgLS1leGNsdWRl IEdMT0JgICAgICAgfCBFeGNsdWRlIG1vZHVsZSBuYW1lcyBtYXRjaGluZyBnbG9iICAgICAgICAg ICAgICAgIHwKK3wgYC1EIE5BTUVgIHwgYC0tZGlzdC1uYW1lIE5BTUVgICAgIHwgQ2hlY2sgaW1w b3J0cyBmb3IgYSBzcGVjaWZpYyBkaXN0cmlidXRpb24gcGFja2FnZSB8Cit8IGAtdGAgICAgICB8 IGAtLXRvcC1sZXZlbC1vbmx5YCAgICB8IE9ubHkgY2hlY2sgdG9wLWxldmVsIG1vZHVsZXMgICAg ICAgICAgICAgICAgICAgICAgfAogCiAjIyMgYCV0b3hgCiAKCmRpZmYgLS1naXQgYS9tYWNyb3Mu cHlwcm9qZWN0IGIvbWFjcm9zLnB5cHJvamVjdAppbmRleCA0ZmNmZGUzLi5jZTMwNjVkIDEwMDY0 NAotLS0gYS9tYWNyb3MucHlwcm9qZWN0CisrKyBiL21hY3Jvcy5weXByb2plY3QKQEAgLTIwLDkg KzIwLDI4IEBACiAKICMgJSVfcHlwcm9qZWN0X2ZpbGVzX3ByZWZpeCBkZWZpbmVkIGluIHNycG0g bWFjcm9zCiAKLSVweXByb2plY3RfZmlsZXMgJXtfYnVpbGRkaXJ9LyV7X3B5cHJvamVjdF9maWxl c19wcmVmaXh9LXB5cHJvamVjdC1maWxlcwotJV9weXByb2plY3RfbW9kdWxlcyAle19idWlsZGRp cn0vJXtfcHlwcm9qZWN0X2ZpbGVzX3ByZWZpeH0tcHlwcm9qZWN0LW1vZHVsZXMKLSVfcHlwcm9q ZWN0X2dob3N0X2Rpc3RpbmZvICV7X2J1aWxkZGlyfS8le19weXByb2plY3RfZmlsZXNfcHJlZml4 fS1weXByb2plY3QtZ2hvc3QtZGlzdGluZm8KKyMgUEVQIDUwMyBuYW1lIG5vcm1hbGl6YXRpb246 IGxvd2VyY2FzZSwgb25lIG9yIG1vcmUgWy1fLl0g4oaSIHNpbmdsZSAtCislX19weXByb2plY3Rf bm9ybWFsaXplX25hbWUoLSkgJXtsdWE6cHJpbnQoKHJwbS5leHBhbmQoIiUxIik6bG93ZXIoKTpn c3ViKCJbJS1fLl0rIiwgIi0iKSkpfQorCislX3B5cHJvamVjdF9maWxlc19iYXNlICV7X2J1aWxk ZGlyfS8le19weXByb2plY3RfZmlsZXNfcHJlZml4fS1weXByb2plY3QtZmlsZXMKKyVfcHlwcm9q ZWN0X21vZHVsZXNfYmFzZSAle19idWlsZGRpcn0vJXtfcHlwcm9qZWN0X2ZpbGVzX3ByZWZpeH0t cHlwcm9qZWN0LW1vZHVsZXMKKyVfcHlwcm9qZWN0X2dob3N0X2Rpc3RpbmZvX2Jhc2UgJXtfYnVp bGRkaXJ9LyV7X3B5cHJvamVjdF9maWxlc19wcmVmaXh9LXB5cHJvamVjdC1naG9zdC1kaXN0aW5m bworCislcHlwcm9qZWN0X2ZpbGVzKC0pICV7bHVhOgorcmVxdWlyZSgiZmVkb3JhLnJwbS5weXBy b2plY3RfZ2V0b3B0IikuZ2V0b3B0KHsKKyAgICB7c2hvcnQ9IkQiLCBsb25nPSJkaXN0LW5hbWUi LCB2YWx1ZT10cnVlfSwKK30pfSV7X3B5cHJvamVjdF9maWxlc19iYXNlfSV7P19fcHlwcm9qZWN0 X29wdF9EOi0le19fcHlwcm9qZWN0X25vcm1hbGl6ZV9uYW1lICV7X19weXByb2plY3Rfb3B0X0R9 fX0KKworJV9weXByb2plY3RfbW9kdWxlcygtKSAle2x1YToKK3JlcXVpcmUoImZlZG9yYS5ycG0u cHlwcm9qZWN0X2dldG9wdCIpLmdldG9wdCh7CisgICAge3Nob3J0PSJEIiwgbG9uZz0iZGlzdC1u YW1lIiwgdmFsdWU9dHJ1ZX0sCit9KX0le19weXByb2plY3RfbW9kdWxlc19iYXNlfSV7P19fcHlw cm9qZWN0X29wdF9EOi0le19fcHlwcm9qZWN0X25vcm1hbGl6ZV9uYW1lICV7X19weXByb2plY3Rf b3B0X0R9fX0KKworJV9weXByb2plY3RfZ2hvc3RfZGlzdGluZm8oLSkgJXtsdWE6CityZXF1aXJl KCJmZWRvcmEucnBtLnB5cHJvamVjdF9nZXRvcHQiKS5nZXRvcHQoeworICAgIHtzaG9ydD0iRCIs IGxvbmc9ImRpc3QtbmFtZSIsIHZhbHVlPXRydWV9LAorfSl9JXtfcHlwcm9qZWN0X2dob3N0X2Rp c3RpbmZvX2Jhc2V9JXs/X19weXByb2plY3Rfb3B0X0Q6LSV7X19weXByb2plY3Rfbm9ybWFsaXpl X25hbWUgJXtfX3B5cHJvamVjdF9vcHRfRH19fQorCiAlX3B5cHJvamVjdF9yZWNvcmQgJXtfYnVp bGRkaXJ9LyV7X3B5cHJvamVjdF9maWxlc19wcmVmaXh9LXB5cHJvamVjdC1yZWNvcmQKICVfcHlw cm9qZWN0X2J1aWxkcmVxdWlyZXMgJXtfYnVpbGRkaXJ9LyV7X3B5cHJvamVjdF9maWxlc19wcmVm aXh9LXB5cHJvamVjdC1idWlsZHJlcXVpcmVzCiAjICUlX3B5cHJvamVjdF9kZXBfb3ZlcnJpZGVz IGRlZmluZWQgaW4gc3JwbSBtYWNyb3MKQEAgLTk1LDcgKzExNCw3IEBAIGlmIFsgLWQgJXtidWls ZHJvb3R9JXtfYmluZGlyfSBdOyB0aGVuCiAgICVweTNfc2hlYmFuZ19maXggJXtidWlsZHJvb3R9 JXtfYmluZGlyfS8qCiAgIHJtIC1yZnYgJXtidWlsZHJvb3R9JXtfYmluZGlyfS9fX3B5Y2FjaGVf XwogZmkKLXJtIC1mICV7X3B5cHJvamVjdF9naG9zdF9kaXN0aW5mb30KK3JtIC1mICV7X3B5cHJv amVjdF9naG9zdF9kaXN0aW5mb19iYXNlfQogc2l0ZV9kaXJzPSgpCiAjIFByb2Nlc3MgJSV7cHl0 aG9uM19zaXRlbGlifSBpZiBleGlzdHMKIGlmIFsgLWQgJXtidWlsZHJvb3R9JXtweXRob24zX3Np dGVsaWJ9IF07IHRoZW4KQEAgLTEwOCw3ICsxMjcsMTIgQEAgZmkKICMgUHJvY2VzcyBhbGwgKi5k aXN0LWluZm8gZGlycyBpbiBzaXRlbGliL3NpdGVhcmNoCiBmb3Igc2l0ZV9kaXIgaW4gJHtzaXRl X2RpcnNbQF19OyBkbwogICBmb3IgZGlzdGluZm8gaW4gJXtidWlsZHJvb3R9JHNpdGVfZGlyLyou ZGlzdC1pbmZvOyBkbwotICAgIGVjaG8gIiVnaG9zdCAlZGlyICR7ZGlzdGluZm8jJXtidWlsZHJv b3R9fSIgPj4gJXtfcHlwcm9qZWN0X2dob3N0X2Rpc3RpbmZvfQorICAgIGVjaG8gIiVnaG9zdCAl ZGlyICR7ZGlzdGluZm8jJXtidWlsZHJvb3R9fSIgPj4gJXtfcHlwcm9qZWN0X2dob3N0X2Rpc3Rp bmZvX2Jhc2V9CisgICAgX25vcm1hbGl6ZWQ9JChQWVRIT05QQVRIPSV7X3JwbWNvbmZpZ2Rpcn0v cmVkaGF0IFxcCisgICAgICAle19fcHl0aG9uM30gLXNCYyBcXAorICAgICAgImltcG9ydCBzeXM7 IGZyb20gcHlwcm9qZWN0X3NhdmVfZmlsZXMgaW1wb3J0IGNhbm9uaWNhbF9uYW1lX2Zyb21fZGlz dGluZm87IHByaW50KGNhbm9uaWNhbF9uYW1lX2Zyb21fZGlzdGluZm8oc3lzLmFyZ3ZbMV0pKSIg XFwKKyAgICAgICIkKGJhc2VuYW1lICR7ZGlzdGluZm99KSIpCisgICAgZWNobyAiJWdob3N0ICVk aXIgJHtkaXN0aW5mbyMle2J1aWxkcm9vdH19IiA+PiAiJXtfcHlwcm9qZWN0X2dob3N0X2Rpc3Rp bmZvX2Jhc2V9LSR7X25vcm1hbGl6ZWR9IgogICAgIHNlZCAtaSAncy9waXAvcnBtLycgJHtkaXN0 aW5mb30vSU5TVEFMTEVSCiAgICAgUFlUSE9OUEFUSD0le19ycG1jb25maWdkaXJ9L3JlZGhhdCBc XAogICAgICAgJXtfX3B5dGhvbjN9IC1CICV7X3JwbWNvbmZpZ2Rpcn0vcmVkaGF0L3B5cHJvamVj dF9wcmVwcm9jZXNzX3JlY29yZC5weSBcXApAQCAtMTIyLDE2ICsxNDYsMTcgQEAgZm9yIHNpdGVf ZGlyIGluICR7c2l0ZV9kaXJzW0BdfTsgZG8KICAgICBmaQogICBkb25lCiBkb25lCi1saW5lcz0k KHdjIC1sICV7X3B5cHJvamVjdF9naG9zdF9kaXN0aW5mb30gfCBjdXQgLWYxIC1kIiAiKQorbGlu ZXM9JCh3YyAtbCAle19weXByb2plY3RfZ2hvc3RfZGlzdGluZm9fYmFzZX0gfCBjdXQgLWYxIC1k IiAiKQogaWYgWyAkbGluZXMgLW5lIDEgXTsgdGhlbgotICBlY2hvIC1lICJcXG5cXG5XQVJOSU5H OiAlJSUlcHlwcm9qZWN0X2V4dHJhc19zdWJwa2cgd29uJ3Qgd29yayB3aXRob3V0IGV4cGxpY2l0 IC1pIG9yIC1GLCBmb3VuZCAkbGluZXMgZGlzdC1pbmZvIGRpcmVjdG9yaWVzLlxcblxcbiIgPiYy Ci0gIHJtICV7X3B5cHJvamVjdF9naG9zdF9kaXN0aW5mb30gICMgYW55IGF0dGVtcHQgdG8gdXNl IHRoaXMgd2lsbCBmYWlsCisgIGVjaG8gLWUgIiUlJSVweXByb2plY3RfZXh0cmFzX3N1YnBrZyB3 aWxsIHJlcXVpcmUgLUQgPG5hbWU+IG9yIGV4cGxpY2l0IC1pLy1GIHdpdGggbXVsdGlwbGUgZGlz dC1pbmZvIGRpcmVjdG9yaWVzIChmb3VuZCAkbGluZXMpLiIgPiYyCisgIHJtICV7X3B5cHJvamVj dF9naG9zdF9kaXN0aW5mb19iYXNlfSAgIyBhbnkgYXR0ZW1wdCB0byB1c2UgdGhpcyB3aWxsIGZh aWwKIGZpCiB9CiAKIAogIyBOb3RlOiB0aGUgdGhyZWUgdGltZXMgbmVzdGVkIHF1ZXN0aW9ubWFy a2VkIC1pIC1mIC1GIHBhdHRlcm4gbWVhbnM6IElmIG5vbmUgb2YgdGhvc2Ugb3B0aW9ucyB3YXMg dXNlZCAtLSBpbiB0aGF0IGNhc2UsIHdlIGluamVjdCBvdXIgb3duIC1mCi0lcHlwcm9qZWN0X2V4 dHJhc19zdWJwa2cobjppOmY6RmFBKSAle2V4cGFuZDolez9weXRob25fZXh0cmFzX3N1YnBrZzol e3B5dGhvbl9leHRyYXNfc3VicGtnJXshPy1pOiV7IT8tZjoleyE/LUY6IC1mICV7X3B5cHJvamVj dF9naG9zdF9kaXN0aW5mb319fX0gJSoqfX19CisjIC1EIHNlbGVjdHMgdGhlIHBlci1wYWNrYWdl IGdob3N0IGRpc3RpbmZvIGZpbGUgZm9yIG11bHRpLXdoZWVsIGluc3RhbGxzCislcHlwcm9qZWN0 X2V4dHJhc19zdWJwa2cobjppOmY6RmFBRDopICV7ZXhwYW5kOiV7P3B5dGhvbl9leHRyYXNfc3Vi cGtnOiV7cHl0aG9uX2V4dHJhc19zdWJwa2cleyE/LWk6JXshPy1mOiV7IT8tRjogLWYgJXtfcHlw cm9qZWN0X2dob3N0X2Rpc3RpbmZvICV7Py1EfX19fX0gJXs/LW59ICV7Py1pfSAlez8tZn0gJXs/ LUZ9ICV7Py1hfSAlez8tQX0gJSp9fX0KIAogCiAjIEVzY2FwaW5nIHNoZWxsLWdsb2JzLCBwZXJj ZW50YWdlIHNpZ25zIGFuZCBzcGFjZXMgd2FzIHJld29ya2VkIGluIFJQTSA0LjE5KwpAQCAtMTQ0 LDEyICsxNjksMTMgQEAgZmkKICAgICB7c2hvcnQ9IkwiLCBsb25nPSJuby1hc3NlcnQtbGljZW5z ZSJ9LAogICAgIHtzaG9ydD0iTSIsIGxvbmc9ImFsbG93LW5vLW1vZHVsZXMifSwKICAgICB7c2hv cnQ9ImEiLCBsb25nPSJhdXRvIn0sCisgICAge3Nob3J0PSJEIiwgbG9uZz0iZGlzdC1uYW1lIiwg dmFsdWU9dHJ1ZX0sCiB9KX1cCiAle2V4cGFuZDpcXFwKICV7ZXhwcjp2IjAlez9ycG12ZXJzaW9u fSIgPj0gdiI0LjE4LjkwIiA/ICJSUE1fRklMRVNfRVNDQVBFPTQuMTkiIDogIlJQTV9GSUxFU19F U0NBUEU9NC4xOCIgfSBcXAogJXtfX3B5dGhvbjN9ICV7X3JwbWNvbmZpZ2Rpcn0vcmVkaGF0L3B5 cHJvamVjdF9zYXZlX2ZpbGVzLnB5IFxcCi0gIC0tb3V0cHV0LWZpbGVzICIle3B5cHJvamVjdF9m aWxlc30iIFxcCi0gIC0tb3V0cHV0LW1vZHVsZXMgIiV7X3B5cHJvamVjdF9tb2R1bGVzfSIgXFwK KyAgLS1vdXRwdXQtZmlsZXMgIiV7cHlwcm9qZWN0X2ZpbGVzICV7P19fcHlwcm9qZWN0X29wdF9E Oi1EICV7X19weXByb2plY3Rfb3B0X0R9fX0iIFxcCisgIC0tb3V0cHV0LW1vZHVsZXMgIiV7X3B5 cHJvamVjdF9tb2R1bGVzICV7P19fcHlwcm9qZWN0X29wdF9EOi1EICV7X19weXByb2plY3Rfb3B0 X0R9fX0iIFxcCiAgIC0tYnVpbGRyb290ICIle2J1aWxkcm9vdH0iIFxcCiAgIC0tc2l0ZWxpYiAi JXtweXRob24zX3NpdGVsaWJ9IiBcXAogICAtLXNpdGVhcmNoICIle3B5dGhvbjNfc2l0ZWFyY2h9 IiBcXApAQCAtMTYyLDIzICsxODgsMzIgQEAgZmkKICVweXByb2plY3RfY2hlY2tfaW1wb3J0KC0p IFwKICV7bHVhOnJlcXVpcmUoImZlZG9yYS5ycG0ucHlwcm9qZWN0X2dldG9wdCIpLmdldG9wdCh7 CiAgICAge3Nob3J0PSJlIiwgbG9uZz0iZXhjbHVkZSIsIHZhbHVlPXRydWUsIHNlcGFyYXRvcj0i IC1lICJ9LAorICAgIHtzaG9ydD0iRCIsIGxvbmc9ImRpc3QtbmFtZSIsIHZhbHVlPXRydWV9LAog ICAgIHtzaG9ydD0idCIsIGxvbmc9InRvcC1sZXZlbC1vbmx5In0sCiB9KX1cCiAle2V4cGFuZDpc XFwKLWlmIFsgISAtZiAiJXtfcHlwcm9qZWN0X21vZHVsZXN9IiBdOyB0aGVuCi0gIGVjaG8gJ0VS Uk9SOiAlJSUlcHlwcm9qZWN0X2NoZWNrX2ltcG9ydCBvbmx5IHdvcmtzIHdoZW4gJSUlJXB5cHJv amVjdF9zYXZlX2ZpbGVzIGlzIHVzZWQnID4mMgoraWYgWyAhIC1mICIle19weXByb2plY3RfbW9k dWxlcyAlez9fX3B5cHJvamVjdF9vcHRfRDotRCAle19fcHlwcm9qZWN0X29wdF9EfX19IiBdOyB0 aGVuCisgIF9tb2R1bGVzX2dsb2I9KCAle19weXByb2plY3RfbW9kdWxlc19iYXNlfS0qICkKKyAg aWYgWyAtZSAiJHtfbW9kdWxlc19nbG9iWzBdfSIgXTsgdGhlbgorICAgIF9hdmFpbGFibGU9JChw cmludGYgJyUlc1xuJyAiJHtfbW9kdWxlc19nbG9iW0BdfSIgfCBzZWQgJ3N8LiotcHlwcm9qZWN0 LW1vZHVsZXMtfHwnIHwgdHIgJ1xuJyAnICcpCisgICAgZWNobyAiRVJST1I6ICUlJSVweXByb2pl Y3RfY2hlY2tfaW1wb3J0IHJlcXVpcmVzIC1EIDxuYW1lPiB3aGVuICUlJSVweXByb2plY3Rfc2F2 ZV9maWxlcyB3YXMgY2FsbGVkIHdpdGggLUQiID4mMgorICAgIGVjaG8gIkF2YWlsYWJsZSAtRCB2 YWx1ZXM6ICR7X2F2YWlsYWJsZX0iID4mMgorICBlbHNlCisgICAgZWNobyAnRVJST1I6ICUlJSVw eXByb2plY3RfY2hlY2tfaW1wb3J0IG9ubHkgd29ya3Mgd2hlbiAlJSUlcHlwcm9qZWN0X3NhdmVf ZmlsZXMgaXMgdXNlZCcgPiYyCisgIGZpCiAgIGV4aXQgMQogZmkKLSVweTNfY2hlY2tfaW1wb3J0 IC1mICIle19weXByb2plY3RfbW9kdWxlc30iICV7P19fcHlwcm9qZWN0X29wdF9lOi1lICV7X19w eXByb2plY3Rfb3B0X2V9fSAlez9fX3B5cHJvamVjdF9vcHRfdDotdH0gJXs/X19weXByb2plY3Rf cG9zaXRpb25hbF9hcmdzfQorJXB5M19jaGVja19pbXBvcnQgLWYgIiV7X3B5cHJvamVjdF9tb2R1 bGVzICV7P19fcHlwcm9qZWN0X29wdF9EOi1EICV7X19weXByb2plY3Rfb3B0X0R9fX0iICV7P19f cHlwcm9qZWN0X29wdF9lOi1lICV7X19weXByb2plY3Rfb3B0X2V9fSAlez9fX3B5cHJvamVjdF9v cHRfdDotdH0gJXs/X19weXByb2plY3RfcG9zaXRpb25hbF9hcmdzfQogfQogCiAKICVfcHlwcm9q ZWN0X2NoZWNrX2ltcG9ydF9hbGxvd19ub19tb2R1bGVzKC0pIFwKICV7bHVhOnJlcXVpcmUoImZl ZG9yYS5ycG0ucHlwcm9qZWN0X2dldG9wdCIpLmdldG9wdCh7CiAgICAge3Nob3J0PSJlIiwgbG9u Zz0iZXhjbHVkZSIsIHZhbHVlPXRydWUsIHNlcGFyYXRvcj0iIC1lICJ9LAorICAgIHtzaG9ydD0i RCIsIGxvbmc9ImRpc3QtbmFtZSIsIHZhbHVlPXRydWV9LAogICAgIHtzaG9ydD0idCIsIGxvbmc9 InRvcC1sZXZlbC1vbmx5In0sCiB9KX1cCi1pZiBbIC16ICIkKGNhdCAle19weXByb2plY3RfbW9k dWxlc30pIiBdOyB0aGVuXAoraWYgWyAteiAiJChjYXQgJXtfcHlwcm9qZWN0X21vZHVsZXMgJXs/ X19weXByb2plY3Rfb3B0X0Q6LUQgJXtfX3B5cHJvamVjdF9vcHRfRH19fSkiIF07IHRoZW5cCiAg IGVjaG8gIk5vIG1vZHVsZXMgdG8gY2hlY2sgZm91bmQsIGV4aXRpbmcgY2hlY2siXAogZWxzZVwK ICAgJXB5cHJvamVjdF9jaGVja19pbXBvcnQgJXs/Kip9XAoKZGlmZiAtLWdpdCBhL3B5cHJvamVj dC1ycG0tbWFjcm9zLnNwZWMgYi9weXByb2plY3QtcnBtLW1hY3Jvcy5zcGVjCmluZGV4IDdjMjJk YzQuLjU4Y2U3MDIgMTAwNjQ0Ci0tLSBhL3B5cHJvamVjdC1ycG0tbWFjcm9zLnNwZWMKKysrIGIv cHlwcm9qZWN0LXJwbS1tYWNyb3Muc3BlYwpAQCAtMTQsNyArMTQsNyBAQCBMaWNlbnNlOiAgICAg ICAgTUlUCiAjICAgSW5jcmVtZW50IFkgYW5kIHJlc2V0IFogd2hlbiBuZXcgbWFjcm9zIG9yIGZl YXR1cmVzIGFyZSBhZGRlZAogIyAgIEluY3JlbWVudCBaIHdoZW4gdGhpcyBpcyBhIGJ1Z2ZpeCBv ciBhIGNvc21ldGljIGNoYW5nZQogIyBEcm9wcGluZyBzdXBwb3J0IGZvciBFT0wgRmVkb3JhcyBp cyAqbm90KiBjb25zaWRlcmVkIGEgYnJlYWtpbmcgY2hhbmdlCi1WZXJzaW9uOiAgICAgICAgMS4y Mi4yCitWZXJzaW9uOiAgICAgICAgMS4yMy4wCiBSZWxlYXNlOiAgICAgICAgMSV7P2Rpc3R9CiAK ICMgTWFjcm8gZmlsZXMKQEAgLTE3OSw2ICsxNzksOSBAQCBleHBvcnQgSE9TVE5BTUU9InJwbWJ1 aWxkIiAgIyB0byBzcGVlZHVwIHRveCBpbiBuZXR3b3JrLWxlc3MgbW9jaywgc2VlIHJoYnojMTg1 NgogCiAKICVjaGFuZ2Vsb2cKKyogTW9uIE1heSAxOCAyMDI2IE1pcm8gSHJvbsSNb2sgPG1ocm9u Y29rQHJlZGhhdC5jb20+IC0gMS4yMy4wLTEKKy0gJSVweXByb2plY3Rfc2F2ZV9maWxlczogSW1w bGVtZW50IHN1cHBvcnQgZm9yIG11bHRpLXBhY2thZ2Ugc3BlY2ZpbGVzCisKICogVGh1IE1heSAx NCAyMDI2IE1pcm8gSHJvbsSNb2sgPG1ocm9uY29rQHJlZGhhdC5jb20+IC0gMS4yMi4yLTEKIC0g JSVweXByb2plY3RfYnVpbGRyZXF1aXJlczogRml4ICJSZXF1aXJlbWVudCBzYXRpc2ZpZWQvbm90 IHNhdGlzZmllZCIgbWVzc2FnZXMgdG8gc2hvdyBvdmVycmlkZGVuIGNvbnN0cmFpbnRzIGZyb20g JSVweXByb2plY3RfcGF0Y2hfZGVwZW5kZW5jeQogLSAlJXB5cHJvamVjdF9idWlsZHJlcXVpcmVz OiBTdG9wIHVzaW5nIGRlcHJlY2F0ZWQgYXJncGFyc2UuRmlsZVR5cGUKCmRpZmYgLS1naXQgYS9w eXByb2plY3Rfc2F2ZV9maWxlcy5weSBiL3B5cHJvamVjdF9zYXZlX2ZpbGVzLnB5CmluZGV4IDQ2 ZmJiZGEuLmY1ZGY5NjMgMTAwNjQ0Ci0tLSBhL3B5cHJvamVjdF9zYXZlX2ZpbGVzLnB5CisrKyBi L3B5cHJvamVjdF9zYXZlX2ZpbGVzLnB5CkBAIC04LDYgKzgsNyBAQCBmcm9tIGNvbGxlY3Rpb25z IGltcG9ydCBkZWZhdWx0ZGljdAogZnJvbSBrZXl3b3JkIGltcG9ydCBpc2tleXdvcmQKIGZyb20g cGF0aGxpYiBpbXBvcnQgUG9zaXhQYXRoLCBQdXJlUG9zaXhQYXRoCiBmcm9tIGltcG9ydGxpYi5t ZXRhZGF0YSBpbXBvcnQgRGlzdHJpYnV0aW9uCitmcm9tIHBhY2thZ2luZy51dGlscyBpbXBvcnQg Y2Fub25pY2FsaXplX25hbWUKIAogCiAjIEZyb20gUlBNJ3MgYnVpbGQvZmlsZXMuYyBzdHJ0b2tX aXRoUXVvdGVzIGRlbGltIGFyZ3VtZW50CkBAIC00NSw2ICs0NiwyNCBAQCBNQU5ESVJTID0gWwog XQogCiAKK2RlZiBjYW5vbmljYWxfbmFtZV9mcm9tX2Rpc3RpbmZvKGRpc3RpbmZvX2Rpcl9uYW1l KToKKyAgICAiIiJFeHRyYWN0IHRoZSBjYW5vbmljYWxpemVkIGRpc3RyaWJ1dGlvbiBuYW1lIGZy b20gYSAuZGlzdC1pbmZvIGRpcmVjdG9yeSBuYW1lLgorCisgICAgRXhhbXBsZXM6CisKKyAgICAg ICAgPj4+IGNhbm9uaWNhbF9uYW1lX2Zyb21fZGlzdGluZm8oJ01hcmt1cFNhZmUtMi4wLjEuZGlz dC1pbmZvJykKKyAgICAgICAgJ21hcmt1cHNhZmUnCisKKyAgICAgICAgPj4+IGNhbm9uaWNhbF9u YW1lX2Zyb21fZGlzdGluZm8oJ3RsZHItMC41LmRpc3QtaW5mbycpCisgICAgICAgICd0bGRyJwor CisgICAgICAgID4+PiBjYW5vbmljYWxfbmFtZV9mcm9tX2Rpc3RpbmZvKCdNeS5QYWNrYWdlX25h bWUtMS4wLmRpc3QtaW5mbycpCisgICAgICAgICdteS1wYWNrYWdlLW5hbWUnCisgICAgIiIiCisg ICAgcmF3ID0gZGlzdGluZm9fZGlyX25hbWUucmVtb3Zlc3VmZml4KCcuZGlzdC1pbmZvJykucnNw bGl0KCctJywgMSlbMF0KKyAgICByZXR1cm4gY2Fub25pY2FsaXplX25hbWUocmF3KQorCisKIGNs YXNzIEJ1aWxkcm9vdFBhdGgoUHVyZVBvc2l4UGF0aCk6CiAgICAgIiIiCiAgICAgVGhpcyBwYXRo IHJlcHJlc2VudHMgYSBwYXRoIGluIGEgYnVpbGRyb290LgpAQCAtNzYwLDE1ICs3NzksMzEgQEAg ZGVmIHBhcnNlX3ZhcmFyZ3ModmFyYXJncyk6CiAgICAgcmV0dXJuIGdsb2JzLCBpbmNsdWRlX2F1 dG8KIAogCi1kZWYgbG9hZF9wYXJzZWRfcmVjb3JkKHB5cHJvamVjdF9yZWNvcmQpOgorZGVmIGxv YWRfcGFyc2VkX3JlY29yZChweXByb2plY3RfcmVjb3JkLCBkaXN0X25hbWU9Tm9uZSk6CiAgICAg cGFyc2VkX3JlY29yZCA9IHt9CiAgICAgd2l0aCBvcGVuKHB5cHJvamVjdF9yZWNvcmQpIGFzIHB5 cHJvamVjdF9yZWNvcmRfZmlsZToKICAgICAgICAgY29udGVudCA9IGpzb24ubG9hZChweXByb2pl Y3RfcmVjb3JkX2ZpbGUpCiAKLSAgICBpZiBsZW4oY29udGVudCkgPiAxOgotICAgICAgICByYWlz ZSBGaWxlRXhpc3RzRXJyb3IoIiVweXByb2plY3RfaW5zdGFsbCBoYXMgZm91bmQgbW9yZSB0aGFu IG9uZSAqLmRpc3QtaW5mby9SRUNPUkQgZmlsZS4gIgotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIkN1cnJlbnRseSwgJXB5cHJvamVjdF9zYXZlX2ZpbGVzIHN1cHBvcnRzIG9ubHkgb25l IHdoZWVsIOKGkiBvbmUgZmlsZSBsaXN0IG1hcHBpbmcuICIKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJGZWVsIGZyZWUgdG8gb3BlbiBhIGJ1Z3ppbGxhIGZvciBweXByb2plY3QtcnBt LW1hY3JvcyBhbmQgZGVzY3JpYmUgeW91ciB1c2VjYXNlLiIpCisgICAgIyBNYXAgZWFjaCByZWNv cmQgcGF0aCB0byBpdHMgY2Fub25pY2FsIGRpc3QgbmFtZQorICAgIGRpc3RfbmFtZXMgPSB7cnA6 IGNhbm9uaWNhbF9uYW1lX2Zyb21fZGlzdGluZm8oQnVpbGRyb290UGF0aChycCkucGFyZW50Lm5h bWUpCisgICAgICAgICAgICAgICAgICBmb3IgcnAgaW4gY29udGVudH0KKyAgICBhdmFpbGFibGUg PSBzb3J0ZWQoZGlzdF9uYW1lcy52YWx1ZXMoKSkgICMgdXNlZCBpbiBlcnJvciBtZXNzYWdlcwor CisgICAgaWYgZGlzdF9uYW1lOgorICAgICAgICBub3JtYWxpemVkX3RhcmdldCA9IGNhbm9uaWNh bGl6ZV9uYW1lKGRpc3RfbmFtZSkKKyAgICAgICAgY29udGVudCA9IHtycDogZmlsZXMgZm9yIHJw LCBmaWxlcyBpbiBjb250ZW50Lml0ZW1zKCkKKyAgICAgICAgICAgICAgICAgICBpZiBkaXN0X25h bWVzW3JwXSA9PSBub3JtYWxpemVkX3RhcmdldH0KKyAgICAgICAgaWYgbm90IGNvbnRlbnQ6Cisg ICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKAorICAgICAgICAgICAgICAgIGYiTm8gZGlzdC1p bmZvIGZvdW5kIG1hdGNoaW5nIGRpc3QgbmFtZSAne2Rpc3RfbmFtZX0nLiAiCisgICAgICAgICAg ICAgICAgZiJBdmFpbGFibGU6IHsnLCAnLmpvaW4oYXZhaWxhYmxlKX0iCisgICAgICAgICAgICAp CisgICAgZWxpZiBsZW4oY29udGVudCkgPiAxOgorICAgICAgICByYWlzZSBWYWx1ZUVycm9yKAor ICAgICAgICAgICAgIiVweXByb2plY3RfaW5zdGFsbCBoYXMgZm91bmQgbW9yZSB0aGFuIG9uZSAq LmRpc3QtaW5mby9SRUNPUkQgZmlsZS4gIgorICAgICAgICAgICAgIlVzZSAlcHlwcm9qZWN0X3Nh dmVfZmlsZXMgLUQgPG5hbWU+IHRvIHNlbGVjdCBhIHBhY2thZ2UuICIKKyAgICAgICAgICAgIGYi QXZhaWxhYmxlOiB7JywgJy5qb2luKGF2YWlsYWJsZSl9IgorICAgICAgICApCiAKICAgICAjIFJl ZGVmaW5lIHN0cmluZ3Mgc3RvcmVkIGluIEpTT04gdG8gQnVpbGRSb290UGF0aHMKICAgICBmb3Ig cmVjb3JkX3BhdGgsIGZpbGVzIGluIGNvbnRlbnQuaXRlbXMoKToKQEAgLTc4NiwxMiArODIxLDEy IEBAIGRlZiBkaXN0X21ldGFkYXRhKGJ1aWxkcm9vdCwgcmVjb3JkX3BhdGgpOgogICAgIHJldHVy biBkaXN0Lm1ldGFkYXRhCiAKIAotZGVmIHB5cHJvamVjdF9zYXZlX2ZpbGVzX2FuZF9tb2R1bGVz KGJ1aWxkcm9vdCwgc2l0ZWxpYiwgc2l0ZWFyY2gsIHB5dGhvbl92ZXJzaW9uLCBweXByb2plY3Rf cmVjb3JkLCBwcmVmaXgsIGFzc2VydF9saWNlbnNlLCBhbGxvd19ub19tb2R1bGVzLCBhdXRvLCB2 YXJhcmdzKToKK2RlZiBweXByb2plY3Rfc2F2ZV9maWxlc19hbmRfbW9kdWxlcyhidWlsZHJvb3Qs IHNpdGVsaWIsIHNpdGVhcmNoLCBweXRob25fdmVyc2lvbiwgcHlwcm9qZWN0X3JlY29yZCwgcHJl Zml4LCBhc3NlcnRfbGljZW5zZSwgYWxsb3dfbm9fbW9kdWxlcywgYXV0bywgdmFyYXJncywgZGlz dF9uYW1lPU5vbmUpOgogICAgICIiIgogICAgIFRha2VzIGFyZ3VtZW50cyBmcm9tIHRoZSAle3B5 cHJvamVjdF9zYXZlX2ZpbGVzfSBtYWNybwogCi0gICAgUmV0dXJucyB0dXBsZTogbGlzdCBvZiBw YXRocyBmb3IgdGhlICVmaWxlcyBzZWN0aW9uIGFuZCBsaXN0IG9mIG1vZHVsZSBuYW1lcwotICAg IGZvciB0aGUgJWNoZWNrIHNlY3Rpb24KKyAgICBSZXR1cm5zIHR1cGxlOiBsaXN0IG9mIHBhdGhz IGZvciB0aGUgJWZpbGVzIHNlY3Rpb24sIGxpc3Qgb2YgbW9kdWxlIG5hbWVzCisgICAgZm9yIHRo ZSAlY2hlY2sgc2VjdGlvbiwgYW5kIGxpc3Qgb2YgcmVjb3JkIHBhdGhzIChCdWlsZHJvb3RQYXRo cykKIAogICAgIFJhaXNlcyBWYWx1ZUVycm9yIHdoZW4gYXNzZXJ0X2xpY2Vuc2UgaXMgdHJ1ZSBh bmQgbm8gTGljZW5zZS1GaWxlIChQRVAgNjM5KQogICAgIGlzIGZvdW5kLgpAQCAtODExLDcgKzg0 Niw3IEBAIGRlZiBweXByb2plY3Rfc2F2ZV9maWxlc19hbmRfbW9kdWxlcyhidWlsZHJvb3QsIHNp dGVsaWIsIHNpdGVhcmNoLCBweXRob25fdmVyc2lvCiAgICAgICAgIHJhaXNlIFZhbHVlRXJyb3Io CiAgICAgICAgICAgICAiJXB5cHJvamVjdF9zYXZlX2ZpbGVzIC1NIGNhbm5vdCBiZSB1c2VkIHRv Z2V0aGVyIHdpdGggbW9kdWxlIGdsb2JzLiIKICAgICAgICAgKQotICAgIHBhcnNlZF9yZWNvcmRz ID0gbG9hZF9wYXJzZWRfcmVjb3JkKHB5cHJvamVjdF9yZWNvcmQpCisgICAgcGFyc2VkX3JlY29y ZHMgPSBsb2FkX3BhcnNlZF9yZWNvcmQocHlwcm9qZWN0X3JlY29yZCwgZGlzdF9uYW1lKQogCiAg ICAgZmluYWxfZmlsZV9saXN0ID0gW10KICAgICBmaW5hbF9tb2R1bGVfbGlzdCA9IFtdCkBAIC04 NDIsMTEgKzg3NywxMSBAQCBkZWYgcHlwcm9qZWN0X3NhdmVfZmlsZXNfYW5kX21vZHVsZXMoYnVp bGRyb290LCBzaXRlbGliLCBzaXRlYXJjaCwgcHl0aG9uX3ZlcnNpbwogICAgICAgICAgICAgImFu ZCBpbmNsdWRlIHRoZSAlbGljZW5zZSBmaWxlIGluICVmaWxlcyBtYW51YWxseS4iCiAgICAgICAg ICkKIAotICAgIHJldHVybiBmaW5hbF9maWxlX2xpc3QsIGZpbmFsX21vZHVsZV9saXN0CisgICAg cmV0dXJuIGZpbmFsX2ZpbGVfbGlzdCwgZmluYWxfbW9kdWxlX2xpc3QsIGxpc3QocGFyc2VkX3Jl Y29yZHMpCiAKIAogZGVmIG1haW4oY2xpX2FyZ3MpOgotICAgIGZpbGVfc2VjdGlvbiwgbW9kdWxl X25hbWVzID0gcHlwcm9qZWN0X3NhdmVfZmlsZXNfYW5kX21vZHVsZXMoCisgICAgZmlsZV9zZWN0 aW9uLCBtb2R1bGVfbmFtZXMsIHJlY29yZF9wYXRocyA9IHB5cHJvamVjdF9zYXZlX2ZpbGVzX2Fu ZF9tb2R1bGVzKAogICAgICAgICBjbGlfYXJncy5idWlsZHJvb3QsCiAgICAgICAgIGNsaV9hcmdz LnNpdGVsaWIsCiAgICAgICAgIGNsaV9hcmdzLnNpdGVhcmNoLApAQCAtODU3LDEwICs4OTIsMjQg QEAgZGVmIG1haW4oY2xpX2FyZ3MpOgogICAgICAgICBjbGlfYXJncy5hbGxvd19ub19tb2R1bGVz LAogICAgICAgICBjbGlfYXJncy5hdXRvLAogICAgICAgICBjbGlfYXJncy52YXJhcmdzLAorICAg ICAgICBjbGlfYXJncy5kaXN0X25hbWUsCiAgICAgKQogCi0gICAgY2xpX2FyZ3Mub3V0cHV0X2Zp bGVzLndyaXRlX3RleHQoIlxuIi5qb2luKGZpbGVfc2VjdGlvbikgKyAiXG4iLCBlbmNvZGluZz0i dXRmLTgiKQotICAgIGNsaV9hcmdzLm91dHB1dF9tb2R1bGVzLndyaXRlX3RleHQoIlxuIi5qb2lu KG1vZHVsZV9uYW1lcykgKyAiXG4iLCBlbmNvZGluZz0idXRmLTgiKQorICAgIGZpbGVzX3RleHQg PSAiXG4iLmpvaW4oZmlsZV9zZWN0aW9uKSArICJcbiIKKyAgICBtb2R1bGVzX3RleHQgPSAiXG4i LmpvaW4obW9kdWxlX25hbWVzKSArICJcbiIKKworICAgIGNsaV9hcmdzLm91dHB1dF9maWxlcy53 cml0ZV90ZXh0KGZpbGVzX3RleHQsIGVuY29kaW5nPSJ1dGYtOCIpCisgICAgY2xpX2FyZ3Mub3V0 cHV0X21vZHVsZXMud3JpdGVfdGV4dChtb2R1bGVzX3RleHQsIGVuY29kaW5nPSJ1dGYtOCIpCisK KyAgICAjIFdoZW4gbm8gLUQgd2FzIGdpdmVuLCBhbHNvIHdyaXRlIHRvIHRoZSBuYW1lZCBwYXRo IChkZXJpdmVkIGZyb20gZGlzdC1pbmZvKQorICAgICMgc28gdGhhdCAle3B5cHJvamVjdF9maWxl cyAtRCBuYW1lfSB3b3JrcyBldmVuIHdpdGhvdXQgLUQgaW4gJXB5cHJvamVjdF9zYXZlX2ZpbGVz CisgICAgaWYgbm90IGNsaV9hcmdzLmRpc3RfbmFtZToKKyAgICAgICAgcmVjb3JkX3BhdGggPSBy ZWNvcmRfcGF0aHNbMF0KKyAgICAgICAgbm9ybWFsaXplZCA9IGNhbm9uaWNhbF9uYW1lX2Zyb21f ZGlzdGluZm8ocmVjb3JkX3BhdGgucGFyZW50Lm5hbWUpCisgICAgICAgIG5hbWVkX2ZpbGVzID0g UG9zaXhQYXRoKGYie2NsaV9hcmdzLm91dHB1dF9maWxlc30te25vcm1hbGl6ZWR9IikKKyAgICAg ICAgbmFtZWRfbW9kdWxlcyA9IFBvc2l4UGF0aChmIntjbGlfYXJncy5vdXRwdXRfbW9kdWxlc30t e25vcm1hbGl6ZWR9IikKKyAgICAgICAgbmFtZWRfZmlsZXMud3JpdGVfdGV4dChmaWxlc190ZXh0 LCBlbmNvZGluZz0idXRmLTgiKQorICAgICAgICBuYW1lZF9tb2R1bGVzLndyaXRlX3RleHQobW9k dWxlc190ZXh0LCBlbmNvZGluZz0idXRmLTgiKQogCiAKIGRlZiBhcmdwYXJzZXIoKToKQEAgLTg5 OCw2ICs5NDcsMTAgQEAgZGVmIGFyZ3BhcnNlcigpOgogICAgICAgICBoZWxwPSJEb24ndCBmYWls IHdoZW4gbm8gZ2xvYnMgYXJlIHByb3ZpZGVkLCBvbmx5IGluY2x1ZGUgbm9uLW1vZHVsZXMgZGF0 YSBpbiB0aGUgZ2VuZXJhdGVkIGZpbGVsaXN0LiIsCiAgICAgKQogICAgIHBhcnNlci5hZGRfYXJn dW1lbnQoCisgICAgICAgICItRCIsICItLWRpc3QtbmFtZSIsIHR5cGU9c3RyLCBkZWZhdWx0PU5v bmUsCisgICAgICAgIGhlbHA9IlNhdmUgZmlsZXMgZm9yIGEgc3BlY2lmaWMgZGlzdHJpYnV0aW9u IHBhY2thZ2UgKGZvciBtdWx0aS13aGVlbCBpbnN0YWxscykuIiwKKyAgICApCisgICAgcGFyc2Vy LmFkZF9hcmd1bWVudCgKICAgICAgICAgIi1hIiwgIi0tYXV0byIsIGFjdGlvbj0ic3RvcmVfdHJ1 ZSIsIGRlZmF1bHQ9RmFsc2UsCiAgICAgICAgIGhlbHA9IkluY2x1ZGUgYWxsIG5vbi1tb2R1bGUs IG5vbi1zaXRlbGliIGZpbGVzIChzYW1lIGFzICthdXRvKS4iLAogICAgICkKCmRpZmYgLS1naXQg YS90ZXN0X3B5cHJvamVjdF9zYXZlX2ZpbGVzLnB5IGIvdGVzdF9weXByb2plY3Rfc2F2ZV9maWxl cy5weQppbmRleCA1ZWU1ODkzLi4wNDg2MjAxIDEwMDc1NQotLS0gYS90ZXN0X3B5cHJvamVjdF9z YXZlX2ZpbGVzLnB5CisrKyBiL3Rlc3RfcHlwcm9qZWN0X3NhdmVfZmlsZXMucHkKQEAgLTYsNyAr Niw3IEBAIGZyb20gcHByaW50IGltcG9ydCBwcHJpbnQKIAogZnJvbSBweXByb2plY3RfcHJlcHJv Y2Vzc19yZWNvcmQgaW1wb3J0IHBhcnNlX3JlY29yZCwgcmVhZF9yZWNvcmQsIHNhdmVfcGFyc2Vk X3JlY29yZAogCi1mcm9tIHB5cHJvamVjdF9zYXZlX2ZpbGVzIGltcG9ydCBhcmdwYXJzZXIsIGdl bmVyYXRlX2ZpbGVfbGlzdCwgQnVpbGRyb290UGF0aAorZnJvbSBweXByb2plY3Rfc2F2ZV9maWxl cyBpbXBvcnQgYXJncGFyc2VyLCBjYW5vbmljYWxfbmFtZV9mcm9tX2Rpc3RpbmZvLCBnZW5lcmF0 ZV9maWxlX2xpc3QsIEJ1aWxkcm9vdFBhdGgKIGZyb20gcHlwcm9qZWN0X3NhdmVfZmlsZXMgaW1w b3J0IG1haW4gYXMgc2F2ZV9maWxlc19tYWluCiBmcm9tIHB5cHJvamVjdF9zYXZlX2ZpbGVzIGlt cG9ydCBtb2R1bGVfbmFtZXNfZnJvbV9wYXRoCiAKQEAgLTI0MiwxMiArMjQyLDEyIEBAIGRlZiB0 ZXN0X2NsaV9ub19weXByb2plY3RfcmVjb3JkKHRtcF9wYXRoLCBweXByb2plY3RfcmVjb3JkKToK IGRlZiB0ZXN0X2NsaV90b29fbWFueV9SRUNPUkRTKHRsZHJfcm9vdCwgb3V0cHV0X2ZpbGVzLCBv dXRwdXRfbW9kdWxlcywgcHlwcm9qZWN0X3JlY29yZCk6CiAgICAgIyBUd28gY2FsbHMgdG8gc2lt dWxhdGUgaG93ICVweXByb2plY3RfaW5zdGFsbCBwcm9jZXNzIG1vcmUgdGhhbiBvbmUgUkVDT1JE IGZpbGUKICAgICBwcmVwYXJlX3B5cHJvamVjdF9yZWNvcmQodGxkcl9yb290LAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb250ZW50PSgiZm9vL2Jhci9kaXN0LWluZm8vUkVDT1JEIiwg W10pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50PSgiZm9vL2Jhci0xLjAu ZGlzdC1pbmZvL1JFQ09SRCIsIFtdKSkKICAgICBwcmVwYXJlX3B5cHJvamVjdF9yZWNvcmQodGxk cl9yb290LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50PSgiZm9vL2Jhei9k aXN0LWluZm8vUkVDT1JEIiwgW10pKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250 ZW50PSgiZm9vL2Jhei0yLjAuZGlzdC1pbmZvL1JFQ09SRCIsIFtdKSkKICAgICBjbGlfYXJncyA9 IGFyZ3BhcnNlcigpLnBhcnNlX2FyZ3MoWypkZWZhdWx0X29wdGlvbnMob3V0cHV0X2ZpbGVzLCBv dXRwdXRfbW9kdWxlcywgdGxkcl9yb290LCBweXByb2plY3RfcmVjb3JkKSwgInRsZHIqIl0pCiAK LSAgICB3aXRoIHB5dGVzdC5yYWlzZXMoRmlsZUV4aXN0c0Vycm9yKToKKyAgICB3aXRoIHB5dGVz dC5yYWlzZXMoVmFsdWVFcnJvciwgbWF0Y2g9IlVzZSAlcHlwcm9qZWN0X3NhdmVfZmlsZXMgLUQi KToKICAgICAgICAgc2F2ZV9maWxlc19tYWluKGNsaV9hcmdzKQogCiAKQEAgLTI3NywzICsyNzcs NjYgQEAgZGVmIHRlc3RfY2xpX2JhZF9uYW1lc3BhY2UodGxkcl9yb290LCBvdXRwdXRfZmlsZXMs IG91dHB1dF9tb2R1bGVzLCBweXByb2plY3RfcmUKIAogICAgIHdpdGggcHl0ZXN0LnJhaXNlcyhW YWx1ZUVycm9yKToKICAgICAgICAgc2F2ZV9maWxlc19tYWluKGNsaV9hcmdzKQorCisKK2RlZiB0 ZXN0X2Nhbm9uaWNhbF9uYW1lX2Zyb21fZGlzdGluZm8oKToKKyAgICBhc3NlcnQgY2Fub25pY2Fs X25hbWVfZnJvbV9kaXN0aW5mbygiTWFya3VwU2FmZS0yLjAuMS5kaXN0LWluZm8iKSA9PSAibWFy a3Vwc2FmZSIKKyAgICBhc3NlcnQgY2Fub25pY2FsX25hbWVfZnJvbV9kaXN0aW5mbygidGxkci0w LjUuZGlzdC1pbmZvIikgPT0gInRsZHIiCisgICAgYXNzZXJ0IGNhbm9uaWNhbF9uYW1lX2Zyb21f ZGlzdGluZm8oIm15X3BhY2thZ2UtMS4wLjAuZGlzdC1pbmZvIikgPT0gIm15LXBhY2thZ2UiCisg ICAgYXNzZXJ0IGNhbm9uaWNhbF9uYW1lX2Zyb21fZGlzdGluZm8oInpvcGUuZXZlbnQtMS4wLmRp c3QtaW5mbyIpID09ICJ6b3BlLWV2ZW50IgorCisKK2RlZiB0ZXN0X2NsaV93aXRoX2Rpc3RfbmFt ZSh0bGRyX3Jvb3QsIHB5cHJvamVjdF9yZWNvcmQpOgorICAgIG91dHB1dF9maWxlcyA9IHRsZHJf cm9vdCAvICJmaWxlcyIKKyAgICBvdXRwdXRfbW9kdWxlcyA9IHRsZHJfcm9vdCAvICJtb2R1bGVz IgorICAgIGNsaV9hcmdzID0gYXJncGFyc2VyKCkucGFyc2VfYXJncyhbCisgICAgICAgICpkZWZh dWx0X29wdGlvbnMob3V0cHV0X2ZpbGVzLCBvdXRwdXRfbW9kdWxlcywgdGxkcl9yb290LCBweXBy b2plY3RfcmVjb3JkKSwKKyAgICAgICAgIi1EIiwgInRsZHIiLAorICAgICAgICAidGxkcioiLAor ICAgIF0pCisgICAgc2F2ZV9maWxlc19tYWluKGNsaV9hcmdzKQorICAgIGFzc2VydCBvdXRwdXRf ZmlsZXMuZXhpc3RzKCkKKyAgICBhc3NlcnQgInRsZHIiIGluIG91dHB1dF9maWxlcy5yZWFkX3Rl eHQoKQorICAgIGFzc2VydCBvdXRwdXRfbW9kdWxlcy5leGlzdHMoKQorCisKK2RlZiB0ZXN0X2Ns aV93aXRoX2Rpc3RfbmFtZV9jYXNlX2luc2Vuc2l0aXZlKHRsZHJfcm9vdCwgcHlwcm9qZWN0X3Jl Y29yZCk6CisgICAgb3V0cHV0X2ZpbGVzID0gdGxkcl9yb290IC8gImZpbGVzIgorICAgIG91dHB1 dF9tb2R1bGVzID0gdGxkcl9yb290IC8gIm1vZHVsZXMiCisgICAgY2xpX2FyZ3MgPSBhcmdwYXJz ZXIoKS5wYXJzZV9hcmdzKFsKKyAgICAgICAgKmRlZmF1bHRfb3B0aW9ucyhvdXRwdXRfZmlsZXMs IG91dHB1dF9tb2R1bGVzLCB0bGRyX3Jvb3QsIHB5cHJvamVjdF9yZWNvcmQpLAorICAgICAgICAi LUQiLCAiVExEUiIsCisgICAgICAgICJ0bGRyKiIsCisgICAgXSkKKyAgICBzYXZlX2ZpbGVzX21h aW4oY2xpX2FyZ3MpCisgICAgYXNzZXJ0IG91dHB1dF9maWxlcy5leGlzdHMoKQorCisKK2RlZiB0 ZXN0X2NsaV9kaXN0X25hbWVfbm90X2ZvdW5kKHRsZHJfcm9vdCwgcHlwcm9qZWN0X3JlY29yZCk6 CisgICAgb3V0cHV0X2ZpbGVzID0gdGxkcl9yb290IC8gImZpbGVzIgorICAgIG91dHB1dF9tb2R1 bGVzID0gdGxkcl9yb290IC8gIm1vZHVsZXMiCisgICAgY2xpX2FyZ3MgPSBhcmdwYXJzZXIoKS5w YXJzZV9hcmdzKFsKKyAgICAgICAgKmRlZmF1bHRfb3B0aW9ucyhvdXRwdXRfZmlsZXMsIG91dHB1 dF9tb2R1bGVzLCB0bGRyX3Jvb3QsIHB5cHJvamVjdF9yZWNvcmQpLAorICAgICAgICAiLUQiLCAi bm9uZXhpc3RlbnQiLAorICAgICAgICAidGxkcioiLAorICAgIF0pCisgICAgd2l0aCBweXRlc3Qu cmFpc2VzKFZhbHVlRXJyb3IsIG1hdGNoPSJObyBkaXN0LWluZm8gZm91bmQgbWF0Y2hpbmciKToK KyAgICAgICAgc2F2ZV9maWxlc19tYWluKGNsaV9hcmdzKQorCisKK2RlZiB0ZXN0X2NsaV9zaW5n bGVfcmVjb3JkX25hbWVkX291dHB1dCh0bGRyX3Jvb3QsIHB5cHJvamVjdF9yZWNvcmQpOgorICAg IG91dHB1dF9maWxlcyA9IHRsZHJfcm9vdCAvICJmaWxlcyIKKyAgICBvdXRwdXRfbW9kdWxlcyA9 IHRsZHJfcm9vdCAvICJtb2R1bGVzIgorICAgIGNsaV9hcmdzID0gYXJncGFyc2VyKCkucGFyc2Vf YXJncyhbCisgICAgICAgICpkZWZhdWx0X29wdGlvbnMob3V0cHV0X2ZpbGVzLCBvdXRwdXRfbW9k dWxlcywgdGxkcl9yb290LCBweXByb2plY3RfcmVjb3JkKSwKKyAgICAgICAgInRsZHIqIiwKKyAg ICBdKQorICAgIHNhdmVfZmlsZXNfbWFpbihjbGlfYXJncykKKyAgICAjIFdpdGhvdXQgLUQsIGJh c2Ugb3V0cHV0IHNob3VsZCBleGlzdAorICAgIGFzc2VydCBvdXRwdXRfZmlsZXMuZXhpc3RzKCkK KyAgICAjIE5hbWVkIG91dHB1dCAoZGVyaXZlZCBmcm9tIGRpc3QtaW5mbykgc2hvdWxkIGFsc28g ZXhpc3QKKyAgICBuYW1lZF9maWxlcyA9IHRsZHJfcm9vdCAvICJmaWxlcy10bGRyIgorICAgIG5h bWVkX21vZHVsZXMgPSB0bGRyX3Jvb3QgLyAibW9kdWxlcy10bGRyIgorICAgIGFzc2VydCBuYW1l ZF9maWxlcy5leGlzdHMoKQorICAgIGFzc2VydCBuYW1lZF9tb2R1bGVzLmV4aXN0cygpCisgICAg YXNzZXJ0IG91dHB1dF9maWxlcy5yZWFkX3RleHQoKSA9PSBuYW1lZF9maWxlcy5yZWFkX3RleHQo KQoKZGlmZiAtLWdpdCBhL3Rlc3RzL2RvdWJsZS1pbnN0YWxsLnNwZWMgYi90ZXN0cy9kb3VibGUt aW5zdGFsbC5zcGVjCmluZGV4IDEzZmUzM2QuLjNiZWY4MTkgMTAwNjQ0Ci0tLSBhL3Rlc3RzL2Rv dWJsZS1pbnN0YWxsLnNwZWMKKysrIGIvdGVzdHMvZG91YmxlLWluc3RhbGwuc3BlYwpAQCAtMTQs NyArMTQsMjMgQEAgQnVpbGRSZXF1aXJlczogIHB5dGhvbjMtZGV2ZWwKICVkZXNjcmlwdGlvbgog VGhpcyBwYWNrYWdlIHRlc3RzIHRoYXQgd2UgY2FuIGJ1aWxkIGFuZCBpbnN0YWxsIDIgd2hlZWxz IGF0IG9uY2UuCiBPbmUgb2YgdGhlbSBpcyAibm9hcmNoIiBhbmQgb25lIGhhcyBhbiBleHRlbnNp b24gbW9kdWxlLgotVGhpcyBhbHNvIHRlc3RzIHRoZSAtZCBvcHRpb24gZm9yICUlcHlwcm9qZWN0 X2J1aWxkcmVxdWlyZXMvJSVweXByb2plY3Rfd2hlZWwuCitUaGlzIGFsc28gdGVzdHMgdGhlIC1k IG9wdGlvbiBmb3IgJSVweXByb2plY3RfYnVpbGRyZXF1aXJlcy8lJXB5cHJvamVjdF93aGVlbAor YW5kIHRoZSAtRCBvcHRpb24gZm9yICUlcHlwcm9qZWN0X3NhdmVfZmlsZXMvJSVweXByb2plY3Rf Y2hlY2tfaW1wb3J0LgorCisKKyVwYWNrYWdlIC1uIHB5dGhvbjMtZG91YmxlLW1hcmt1cHNhZmUK K1N1bW1hcnk6ICAgICAgICBNYXJrdXBTYWZlIGZyb20gZG91YmxlLWluc3RhbGwgdGVzdAorCisl ZGVzY3JpcHRpb24gLW4gcHl0aG9uMy1kb3VibGUtbWFya3Vwc2FmZQorTWFya3VwU2FmZSBzdWJw YWNrYWdlLgorCisKKyVwYWNrYWdlIC1uIHB5dGhvbjMtZG91YmxlLXRsZHIKK1N1bW1hcnk6ICAg ICAgICB0bGRyIGZyb20gZG91YmxlLWluc3RhbGwgdGVzdAorQnVpbGRBcmNoOiAgICAgIG5vYXJj aAorCislZGVzY3JpcHRpb24gLW4gcHl0aG9uMy1kb3VibGUtdGxkcgordGxkciBzdWJwYWNrYWdl LgogCiAKICVwcmVwCkBAIC0yNSw3ICs0MSw3IEBAIHRhciB4ZiAle1NPVVJDRTJ9CiAKICVnZW5l cmF0ZV9idWlsZHJlcXVpcmVzCiAlcHlwcm9qZWN0X2J1aWxkcmVxdWlyZXMgLS1uby1ydW50aW1l IC0tZGlyZWN0b3J5IG1hcmt1cHNhZmUtJXttYXJrdXBzYWZlX3ZlcnNpb259Ci0lcHlwcm9qZWN0 X2J1aWxkcmVxdWlyZXMgLS1uby1ydW50aW1lIC0tZGlyZWN0b3J5IHRsZHItJXt0bGRyX3ZlcnNp b259CislcHlwcm9qZWN0X2J1aWxkcmVxdWlyZXMgLS1kaXJlY3RvcnkgdGxkci0le3RsZHJfdmVy c2lvbn0KIAogCiAlYnVpbGQKQEAgLTM5LDcgKzU1LDggQEAgc2V0IC1vIHBpcGVmYWlsCiAjIFRo aXMgc2hvdWxkIGluc3RhbGwgYm90aCB0aGUgd2hlZWxzOgogJXB5cHJvamVjdF9pbnN0YWxsCiAp IDI+JjEgfCB0ZWUgaW5zdGFsbC5sb2cKLSNweXByb2plY3Rfc2F2ZV9maWxlcyBpcyBub3QgcG9z c2libGUgd2l0aCAyIGRpc3QtaW5mb3MKKyVweXByb2plY3Rfc2F2ZV9maWxlcyAtLWRpc3QtbmFt ZSBtYXJrdXBzYWZlIG1hcmt1cHNhZmUKKyVweXByb2plY3Rfc2F2ZV9maWxlcyAtRCB0bGRyIHRs ZHIgK2F1dG8KIAogCiAlY2hlY2sKQEAgLTU2LDExICs3MywxMSBAQCBjZCAuLgogIyBJbnRlcm5h bCByZWdyZXNzaW9uIGNoZWNrIGZvciAlJXB5cHJvamVjdF9pbnN0YWxsIHdpdGggbXVsdGlwbGUg d2hlZWxzCiBncmVwICdiaW5hcnkgb3BlcmF0b3IgZXhwZWN0ZWQnIGluc3RhbGwubG9nICYmIGV4 aXQgMSB8fCB0cnVlCiBncmVwICd0b28gbWFueSBhcmd1bWVudHMnIGluc3RhbGwubG9nICYmIGV4 aXQgMSB8fCB0cnVlCisjIENoZWNrIHRoYXQgJSVweXByb2plY3RfY2hlY2tfaW1wb3J0IC1EIHdv cmtzCislcHlwcm9qZWN0X2NoZWNrX2ltcG9ydCAtRCBtYXJrdXBzYWZlCislcHlwcm9qZWN0X2No ZWNrX2ltcG9ydCAtRCB0bGRyCisKIAorJWZpbGVzIC1uIHB5dGhvbjMtZG91YmxlLW1hcmt1cHNh ZmUgLWYgJXtweXByb2plY3RfZmlsZXMgLUQgbWFya3Vwc2FmZX0KIAotJWZpbGVzCi0le19iaW5k aXJ9L3RsZHIqCi0lcHljYWNoZWQgJXtweXRob24zX3NpdGVsaWJ9L3RsZHIucHkKLSV7cHl0aG9u M19zaXRlbGlifS90bGRyLSV7dGxkcl92ZXJzaW9ufS5kaXN0LWluZm8vCi0le3B5dGhvbjNfc2l0 ZWFyY2h9L1tNbV1hcmt1cFtTc11hZmUtJXttYXJrdXBzYWZlX3ZlcnNpb259LmRpc3QtaW5mby8K LSV7cHl0aG9uM19zaXRlYXJjaH0vbWFya3Vwc2FmZS8KKyVmaWxlcyAtbiBweXRob24zLWRvdWJs ZS10bGRyIC1mICV7cHlwcm9qZWN0X2ZpbGVzIC0tZGlzdC1uYW1lIHRsZHJ9Cg==