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: Pavel Valena To: git-commits@fedoraproject.org Subject: [rpms/dracut] rawhide: Upgrade to dracut 111 Date: Sun, 09 Aug 2026 20:08:34 GMT Message-ID: <178630611438.1.10520719413752541584.rpms-dracut-97095b621a3a@fedoraproject.org> List-ID: X-Git-Repo: rpms/dracut X-Git-Branch: rawhide X-Git-Rev: 97095b621a3a1dbf4b63108064abc9477128989c ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZHJhY3V0CiAgICAgICAgICAgIEJyYW5jaCA6IHJhd2hpZGUKICAgICAgICAg ICAgQ29tbWl0IDogOTcwOTViNjIxYTNhMWRiZjRiNjMxMDgwNjRhYmM5NDc3MTI4OTg5YwogICAg ICAgICAgICBBdXRob3IgOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KICAgICAg ICAgICAgRGF0ZSAgIDogMjAyNi0wNy0zMVQxMDo0MDowOCswMjowMAogICAgICAgICAgICBTdGF0 cyAgOiArMjEyMC8tMjIxNiBpbiAyMSBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBz Oi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvZHJhY3V0L2MvOTcwOTViNjIxYTNhMWRiZjRi NjMxMDgwNjRhYmM5NDc3MTI4OTg5Yz9icmFuY2g9cmF3aGlkZQoKICAgICAgICAgICAgTG9nOgog ICAgICAgICAgICBVcGdyYWRlIHRvIGRyYWN1dCAxMTEKCkZyb20tc291cmNlLWdpdC1jb21taXQ6 IGFiNTJlMGU0OTVjMGY5ZWIyYmVkNmFhNjE3YzUxNGE1ZGI0MDllZjYKCi0tLQpkaWZmIC0tZ2l0 IGEvMDAwMS1yZXZlcnQtZml4LWluc3RhbGwuZC1jb3JyZWN0bHktaW5zdGFsbC1wcmUtZ2VubmVk LWltLnBhdGNoIGIvMDAwMS1yZXZlcnQtZml4LWluc3RhbGwuZC1jb3JyZWN0bHktaW5zdGFsbC1w cmUtZ2VubmVkLWltLnBhdGNoCmluZGV4IDk4MTVhNzYuLmMxMmE1ZjYgMTAwNjQ0Ci0tLSBhLzAw MDEtcmV2ZXJ0LWZpeC1pbnN0YWxsLmQtY29ycmVjdGx5LWluc3RhbGwtcHJlLWdlbm5lZC1pbS5w YXRjaAorKysgYi8wMDAxLXJldmVydC1maXgtaW5zdGFsbC5kLWNvcnJlY3RseS1pbnN0YWxsLXBy ZS1nZW5uZWQtaW0ucGF0Y2gKQEAgLTEsNyArMSw3IEBACi1Gcm9tIGE1NmQ3MDZkNTQwMDdjZTY1 MTQxNWVlZGM4OTUwZmRjZmY2ZjA4YmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tIGE1 MGRmNThlZTljMWQ5ZmQyODE5ZDZkZjczMDE5OWM1MjE0ZDUwNzYgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCiBGcm9tOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KIERhdGU6IFdl ZCwgMTIgSnVuIDIwMjQgMDY6MzA6NDIgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSCAxLzddIHJldmVy dDogImZpeChpbnN0YWxsLmQpOiBjb3JyZWN0bHkgaW5zdGFsbCBwcmUtZ2VubmVkCitTdWJqZWN0 OiBbUEFUQ0ggMDEvMTJdIHJldmVydDogImZpeChpbnN0YWxsLmQpOiBjb3JyZWN0bHkgaW5zdGFs bCBwcmUtZ2VubmVkCiAgaW1hZ2UgYW5kIGRpZSBpZiBubyBhcmdzIgogCiByZXZlcnQ6ICJmaXgo aW5zdGFsbC5kKTogc2ltcGxpZnkgYW5kIHVzZSB3aGF0IGtlcm5lbC1pbnN0YWxsIGdpdmVzIHVz IgpAQCAtMjM0LDUgKzIzNCw1IEBAIGluZGV4IGY0OWQ3YTc3Li42N2MxY2ZjMSAxMDA3NTUKICAg ICAgc3VmZml4PSQxCiAgICAgIHNoaWZ0CiAtLSAKLTIuNTIuMAorMi41NS4wCiAKCmRpZmYgLS1n aXQgYS8wMDAyLWZlYXQta2VybmVsLWluc3RhbGwtZG8tbm90aGluZy13aGVuLUtFUk5FTF9JTlNU QUxMX0kucGF0Y2ggYi8wMDAyLWZlYXQta2VybmVsLWluc3RhbGwtZG8tbm90aGluZy13aGVuLUtF Uk5FTF9JTlNUQUxMX0kucGF0Y2gKaW5kZXggOTZiMmVmYi4uZDQ2MjNjOCAxMDA2NDQKLS0tIGEv MDAwMi1mZWF0LWtlcm5lbC1pbnN0YWxsLWRvLW5vdGhpbmctd2hlbi1LRVJORUxfSU5TVEFMTF9J LnBhdGNoCisrKyBiLzAwMDItZmVhdC1rZXJuZWwtaW5zdGFsbC1kby1ub3RoaW5nLXdoZW4tS0VS TkVMX0lOU1RBTExfSS5wYXRjaApAQCAtMSw3ICsxLDcgQEAKLUZyb20gMDExYjQ1NmMyYjg3M2Ri NDQzN2U3MGU2NjdkOGMzMmY0ZGUwYjE2NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20g YmZiYTEwNjBlN2E5OTI5MzZiNTJkZGQ0OTkxNTk2MzQ0MmE4MDgzMSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKIEZyb206ID0/VVRGLTg/cT9aYmlnbmlldz0yMEo9QzQ9OTlkcnplamV3c2tpLVN6 bWVrPz0gPHpieXN6ZWtAaW4ud2F3LnBsPgogRGF0ZTogVHVlLCAxOCBKYW4gMjAyMiAxODowODo0 MiArMDEwMAotU3ViamVjdDogW1BBVENIIDIvN10gZmVhdChrZXJuZWwtaW5zdGFsbCk6IGRvIG5v dGhpbmcgd2hlbgorU3ViamVjdDogW1BBVENIIDAyLzEyXSBmZWF0KGtlcm5lbC1pbnN0YWxsKTog ZG8gbm90aGluZyB3aGVuCiAgJEtFUk5FTF9JTlNUQUxMX0lOSVRSRF9HRU5FUkFUT1Igc2F5cyBz bwogCiBkcmFjdXQgbWF5IGJlIGluc3RhbGxlZCB3aXRob3V0IGJlaW5nIGFjdHVhbGx5IHVzZWQu IFRoaXMgaXMgdmVyeSBjb21tb24gaW4KQEAgLTY4LDUgKzY4LDUgQEAgaW5kZXggNjdjMWNmYzEu LjdhMDMwMzhmIDEwMDc1NQogICAgICBzdWZmaXg9JDEKICAgICAgc2hpZnQKIC0tIAotMi41Mi4w CisyLjU1LjAKIAoKZGlmZiAtLWdpdCBhLzAwMDMtZml4LWtlcm5lbC1pbnN0YWxsLWRvLW5vdC1n ZW5lcmF0ZS1hbi1pbml0cmQtd2hlbi1vbi5wYXRjaCBiLzAwMDMtZml4LWtlcm5lbC1pbnN0YWxs LWRvLW5vdC1nZW5lcmF0ZS1hbi1pbml0cmQtd2hlbi1vbi5wYXRjaAppbmRleCAzYWZiZTE3Li41 NzRhYzRjIDEwMDY0NAotLS0gYS8wMDAzLWZpeC1rZXJuZWwtaW5zdGFsbC1kby1ub3QtZ2VuZXJh dGUtYW4taW5pdHJkLXdoZW4tb24ucGF0Y2gKKysrIGIvMDAwMy1maXgta2VybmVsLWluc3RhbGwt ZG8tbm90LWdlbmVyYXRlLWFuLWluaXRyZC13aGVuLW9uLnBhdGNoCkBAIC0xLDcgKzEsNyBAQAot RnJvbSBkZmViYzliZTU4OGRiM2Q1ZTVhNjBhYmZkOTEwNGZhZjA1ZTMxZGE2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQorRnJvbSAzZDJjZjVhZTc4MTk1ZDQ0NWMyMjU4NjYzNDYwZjBkYTg3ZmRh NzYzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogPT9VVEYtOD9xP1piaWduaWV3PTIw Sj1DND05OWRyemVqZXdza2ktU3ptZWs/PSA8emJ5c3pla0Bpbi53YXcucGw+CiBEYXRlOiBUdWUs IDE4IEphbiAyMDIyIDE4OjU4OjU4ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0ggMy83XSBmaXgoa2Vy bmVsLWluc3RhbGwpOiBkbyBub3QgZ2VuZXJhdGUgYW4gaW5pdHJkIHdoZW4gb25lCitTdWJqZWN0 OiBbUEFUQ0ggMDMvMTJdIGZpeChrZXJuZWwtaW5zdGFsbCk6IGRvIG5vdCBnZW5lcmF0ZSBhbiBp bml0cmQgd2hlbiBvbmUKICB3YXMgc3BlY2lmaWVkCiAKIEFjY29yZGluZyB0byB0aGUgc3lub3Bz aXMsIGtlcm5lbC1pbnN0YWxsIGNhbiBiZSBjYWxsZWQgd2l0aCBhbgpAQCAtMzUsNSArMzUsNSBA QCBpbmRleCAzZjk2MWIxMS4uMDc2YjRmNWUgMTAwNzU1CiAgICAgICAgICAgICAgSU1BR0VfUFJF R0VORVJBVEVEPSR7S0VSTkVMX0lNQUdFJS8qfS91a2kuZWZpCiAgICAgICAgICBlbHNlCiAtLSAK LTIuNTIuMAorMi41NS4wCiAKCmRpZmYgLS1naXQgYS8wMDA0LXJldmVydC1maXgtcmVzY3VlLW1h a2UtcmVzY3VlLWFsd2F5cy1uby1ob3N0b25seS5wYXRjaCBiLzAwMDQtcmV2ZXJ0LWZpeC1yZXNj dWUtbWFrZS1yZXNjdWUtYWx3YXlzLW5vLWhvc3Rvbmx5LnBhdGNoCmluZGV4IDNlOWQzM2EuLmIy NmNlNmEgMTAwNjQ0Ci0tLSBhLzAwMDQtcmV2ZXJ0LWZpeC1yZXNjdWUtbWFrZS1yZXNjdWUtYWx3 YXlzLW5vLWhvc3Rvbmx5LnBhdGNoCisrKyBiLzAwMDQtcmV2ZXJ0LWZpeC1yZXNjdWUtbWFrZS1y ZXNjdWUtYWx3YXlzLW5vLWhvc3Rvbmx5LnBhdGNoCkBAIC0xLDcgKzEsNyBAQAotRnJvbSBjMTY4 ZGNmMTk4NzM3ZGZlYjUwMTFkZjJlOWQ0MjdmZDI1M2VhY2Q2IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQorRnJvbSA2NTRiODNkMjY5YzE5Y2ExZGZmMzlmODM5NDdhYWU4ZDVlZGJkOTNiIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogUGF2ZWwgVmFsZW5hIDxwdmFsZW5hQHJlZGhhdC5j b20+CiBEYXRlOiBXZWQsIDI5IEphbiAyMDI1IDIwOjI1OjAzICswMTAwCi1TdWJqZWN0OiBbUEFU Q0ggNC83XSByZXZlcnQ6ICJmaXgocmVzY3VlKTogbWFrZSByZXNjdWUgYWx3YXlzIG5vLWhvc3Rv bmx5IgorU3ViamVjdDogW1BBVENIIDA0LzEyXSByZXZlcnQ6ICJmaXgocmVzY3VlKTogbWFrZSBy ZXNjdWUgYWx3YXlzIG5vLWhvc3Rvbmx5IgogCiBUaGlzIHBhcnRseSByZXZlcnRzIGNvbW1pdCAy MjRjMDA5MTRiZmI0YmExZGVlNDhlMDk0ZWJiMTM3ZmFjZmQ1OTQ3LgogLS0tCkBAIC0yNCw1ICsy NCw1IEBAIGluZGV4IDdhMDMwMzhmLi5mMGNjYjg1NCAxMDA3NTUKICAgICAgICAgICAgICAgICAg LS1rdmVyICIkS0VSTkVMX1ZFUlNJT04iIFwKICAgICAgICAgICAgICAgICAgIiRCT09UX0RJUl9B QlMvJElOSVRSRCIKIC0tIAotMi41Mi4wCisyLjU1LjAKIAoKZGlmZiAtLWdpdCBhLzAwMDUtZmVh dC1hZGQtb3BlbnNzbC1tb2R1bGUucGF0Y2ggYi8wMDA1LWZlYXQtYWRkLW9wZW5zc2wtbW9kdWxl LnBhdGNoCmluZGV4IDAxYmE3ZjAuLjdlN2VhZmMgMTAwNjQ0Ci0tLSBhLzAwMDUtZmVhdC1hZGQt b3BlbnNzbC1tb2R1bGUucGF0Y2gKKysrIGIvMDAwNS1mZWF0LWFkZC1vcGVuc3NsLW1vZHVsZS5w YXRjaApAQCAtMSw3ICsxLDcgQEAKLUZyb20gNzQxN2QyYjA0NGVmNDU1ZDhiNmMzNjBlN2MxYmNk NzE1NThiNTk1MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb20gYjAyYWVlNTFmNzRjYzk0 OWJkM2VlNzRhNjEwYTQzNWU3YTY5MmJlNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKIEZyb206 IFBhdmVsIFZhbGVuYSA8cHZhbGVuYUByZWRoYXQuY29tPgogRGF0ZTogTW9uLCAyMCBKYW4gMjAy NSAxNDoxNjozOCArMDEwMAotU3ViamVjdDogW1BBVENIIDUvN10gZmVhdDogYWRkIG9wZW5zc2wg bW9kdWxlCitTdWJqZWN0OiBbUEFUQ0ggMDUvMTJdIGZlYXQ6IGFkZCBvcGVuc3NsIG1vZHVsZQog CiArIGZpeChvc3NsKTogYnVpbGQgZmFpbHVyZSBiZWxsb3cgcmVzb2x2ZWQKIApAQCAtNjgsMTAg KzY4LDEwIEBAIGFuZCBhbHNvIGZpeCBDRkxBR1MgaW4gY2FzZSBvZiBzdGQ9Yzk5LgogIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmMvb3NzbC90ZXN0cy9maWxlcy9wcm92aWRlcnMuY25mLmV4cGVjdGVk CiAKIGRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01ha2VmaWxlCi1pbmRleCAyNGUyZmI2Mi4uMTJm MDAxZDMgMTAwNjQ0CitpbmRleCBkN2NhYjY4MS4uZWU2ZmYyMjkgMTAwNjQ0CiAtLS0gYS9NYWtl ZmlsZQogKysrIGIvTWFrZWZpbGUKLUBAIC02Niw3ICs2Niw3IEBAIG1hbnBhZ2VzID0gJChtYW4x cGFnZXMpICQobWFuNXBhZ2VzKSAkKG1hbjdwYWdlcykgJChtYW44cGFnZXMpCitAQCAtNjMsNyAr NjMsNyBAQCBtYW5wYWdlcyA9ICQobWFuMXBhZ2VzKSAkKG1hbjVwYWdlcykgJChtYW43cGFnZXMp ICQobWFuOHBhZ2VzKQogIAogIC5QSE9OWTogaW5zdGFsbCBjbGVhbiBkaXN0Y2xlYW4gYXJjaGl2 ZSB0ZXN0IGFsbCBjaGVjayBBVVRIT1JTIENPTlRSSUJVVE9SUyBkb2MKICAKQEAgLTgwLDcgKzgw LDcgQEAgaW5kZXggMjRlMmZiNjIuLjEyZjAwMWQzIDEwMDY0NAogIAogICUubyA6ICUuYwogIAkk KENDKSAtYyAkKENGTEFHUykgJChDUFBGTEFHUykgJChLTU9EX0NGTEFHUykgJChTWVNURU1EX0NG TEFHUykgJChpZiAkKFNZU1RFTURfTElCUyksLURIQVZFX1NZU1RFTUQpICQ8IC1vICRACi1AQCAt MTA0LDYgKzEwNCwxNSBAQCB1dGlsL3V0aWw6ICQoVVRJTF9PQkpFQ1RTKQorQEAgLTEwMSw2ICsx MDEsMTUgQEAgdXRpbC91dGlsOiAkKFVUSUxfT0JKRUNUUykKICBkcmFjdXQtdXRpbDogc3JjL3V0 aWwvdXRpbAogIAljcCAtYSAkPCAkQAogIApAQCAtOTYsNyArOTYsNyBAQCBpbmRleCAyNGUyZmI2 Mi4uMTJmMDAxZDMgMTAwNjQ0CiAgLlBIT05ZOiBpbmRlbnQtYwogIGluZGVudC1jOgogIAlhc3R5 bGUgLW4gLS1xdWlldCAtLW9wdGlvbnM9LmFzdHlsZXJjICQod2lsZGNhcmQgKi5bY2hdICovKi5b Y2hdIHNyYy8qLyouW2NoXSkKLUBAIC0yNTcsMTUgKzI2NiwyMSBAQCBlbmRpZgorQEAgLTI1Mywx NSArMjYyLDIxIEBAIGVuZGlmCiAgCQlsbiAtc2YgLi4vZHJhY3V0LWluaXRxdWV1ZS5zZXJ2aWNl IFwKICAJCSQoREVTVERJUikkKHN5c3RlbWRzeXN0ZW11bml0ZGlyKS9pbml0cmQudGFyZ2V0Lndh bnRzL2RyYWN1dC1pbml0cXVldWUuc2VydmljZTsgXAogIAlmaQpAQCAtMTIxLDcgKzEyMSw3IEBA IGluZGV4IDI0ZTJmYjYyLi4xMmYwMDFkMyAxMDA2NDQKICBpZmVxICgkKGVuYWJsZV9kcmFjdXRf Y3BpbykseWVzKQogIAlpbnN0YWxsIC1tIDA3NTUgZHJhY3V0LWNwaW8gJChERVNURElSKSQocGtn bGliZGlyKS9kcmFjdXQtY3BpbwogIGVuZGlmCi1AQCAtMzA1LDcgKzMyMCw5IEBAIGNsZWFuOgor QEAgLTMwNCw3ICszMTksOSBAQCBjbGVhbjoKICAJJChSTSkgZHJhY3V0LnBjCiAgCSQoUk0pIGRy YWN1dC1jcGlvIHNyYy9kcmFjdXQtY3Bpby90YXJnZXQvcmVsZWFzZS9kcmFjdXQtY3BpbyoKICAJ JChSTSkgLXJmIGJ1aWxkLyBkb2Nfc2l0ZS9tb2R1bGVzL1JPT1QvcGFnZXMvbWFuLyoKQEAgLTEw NDIsNSArMTA0Miw1IEBAIGluZGV4IDAwMDAwMDAwLi4yM2IxYjdkZQogKy91c3IvbGliNjQvb3Nz bC1tb2R1bGVzL3BrY3MxMS5zbwogKy91c3IvbGliNjQvb3NzbC1tb2R1bGVzL29xc3Byb3ZpZGVy LnNvLjAuNi4wCiAtLSAKLTIuNTIuMAorMi41NS4wCiAKCmRpZmYgLS1naXQgYS8wMDA2LWZpeC1v c3NsLWlnbm9yZS1jb21waWxlci13YXJuaW5ncy5wYXRjaCBiLzAwMDYtZml4LW9zc2wtaWdub3Jl LWNvbXBpbGVyLXdhcm5pbmdzLnBhdGNoCmluZGV4IDJhOTIyMWQuLjE4MjY2OWIgMTAwNjQ0Ci0t LSBhLzAwMDYtZml4LW9zc2wtaWdub3JlLWNvbXBpbGVyLXdhcm5pbmdzLnBhdGNoCisrKyBiLzAw MDYtZml4LW9zc2wtaWdub3JlLWNvbXBpbGVyLXdhcm5pbmdzLnBhdGNoCkBAIC0xLDcgKzEsNyBA QAotRnJvbSBjNGE1Y2FhNzk1OTgzZTY4NjdhMjUzYWU3OTY1ZmJlYzdkYmFhNmU2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbSA1NWU1NTA5OWQ3N2IwZTkwNGM0YWMwM2EzYWMxNTAxOGY5 NDRhOTgwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQogRnJvbTogUGF2ZWwgVmFsZW5hIDxwdmFs ZW5hQHJlZGhhdC5jb20+CiBEYXRlOiBXZWQsIDIgQXByIDIwMjUgMTA6NDU6NTEgKzAyMDAKLVN1 YmplY3Q6IFtQQVRDSCA2LzddIGZpeChvc3NsKTogaWdub3JlIGNvbXBpbGVyIHdhcm5pbmdzCitT dWJqZWN0OiBbUEFUQ0ggMDYvMTJdIGZpeChvc3NsKTogaWdub3JlIGNvbXBpbGVyIHdhcm5pbmdz CiAKIGBgYAogc3JjL29zc2wtZmlsZXMuYzozNzo4OiBlcnJvcjogdHlwZSBxdWFsaWZpZXJzIGln bm9yZWQgb24gZnVuY3Rpb24gcmV0dXJuIHR5cGUgWy1XZXJyb3I9aWdub3JlZC1xdWFsaWZpZXJz XQpAQCAtMjgsNSArMjgsNSBAQCBpbmRleCA4NmNmMTRiMy4uMmU3NmQ1MmEgMTAwNjQ0CiAgCiAg VEVTVFNfQ09ORklHID0gJCh3aWxkY2FyZCB0ZXN0cy9jb25maWcvKi5jbmYpCiAtLSAKLTIuNTIu MAorMi41NS4wCiAKCmRpZmYgLS1naXQgYS8wMDA3LVJldmVydC1mZWF0LWZpcHMtaW5jbHVkZS1v cGVuc3NsLXMtZmlwcy5zby1hbmQtb3BlbnMucGF0Y2ggYi8wMDA3LVJldmVydC1mZWF0LWZpcHMt aW5jbHVkZS1vcGVuc3NsLXMtZmlwcy5zby1hbmQtb3BlbnMucGF0Y2gKaW5kZXggMWYyMTBkYS4u YzMxNmIxZSAxMDA2NDQKLS0tIGEvMDAwNy1SZXZlcnQtZmVhdC1maXBzLWluY2x1ZGUtb3BlbnNz bC1zLWZpcHMuc28tYW5kLW9wZW5zLnBhdGNoCisrKyBiLzAwMDctUmV2ZXJ0LWZlYXQtZmlwcy1p bmNsdWRlLW9wZW5zc2wtcy1maXBzLnNvLWFuZC1vcGVucy5wYXRjaApAQCAtMSw3ICsxLDcgQEAK LUZyb20gOTdhZTYxZGMxZTJiNGNhMzEzYzI4ZjM5ZGNjOThjMDFkYTAzYmVhZiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKK0Zyb20gYzA0MDRhYjU3YTg2MGY5ODA2OGMxOTg4YTljY2E1ZjJkZDgx ODZmMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKIEZyb206IFBhdmVsIFZhbGVuYSA8cHZhbGVu YUByZWRoYXQuY29tPgogRGF0ZTogRnJpLCA0IEp1bCAyMDI1IDAyOjUxOjE1ICswMjAwCi1TdWJq ZWN0OiBbUEFUQ0ggNy83XSBSZXZlcnQgImZlYXQoZmlwcyk6IGluY2x1ZGUgb3BlbnNzbCdzIGZp cHMuc28gYW5kCitTdWJqZWN0OiBbUEFUQ0ggMDcvMTJdIFJldmVydCAiZmVhdChmaXBzKTogaW5j bHVkZSBvcGVuc3NsJ3MgZmlwcy5zbyBhbmQKICBvcGVuc3NsLmNuZiIKIAogVGhpcyByZXZlcnRz IGNvbW1pdCA5N2M1ZDQzY2ViOWQ2NWJjMDk3MGYxZTdhZDQ0YmM0M2JjOTNmYzI2LgpAQCAtNDks NSArNDksNSBAQCBpbmRleCBlZTlhZGNmMC4uMDAwMDAwMDAKIC1bZGVmYXVsdF9zZWN0XQogLWFj dGl2YXRlID0gMQogLS0gCi0yLjUyLjAKKzIuNTUuMAogCgpkaWZmIC0tZ2l0IGEvMDAwOC1maXgt bmV0d29yay1sZWdhY3ktcmVtb3ZlLW5ldHdvcmstbGVnYWN5LWNvbXBsZXRlbHktLnBhdGNoIGIv MDAwOC1maXgtbmV0d29yay1sZWdhY3ktcmVtb3ZlLW5ldHdvcmstbGVnYWN5LWNvbXBsZXRlbHkt LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdiNWMxYjAKLS0tIC9k ZXYvbnVsbAorKysgYi8wMDA4LWZpeC1uZXR3b3JrLWxlZ2FjeS1yZW1vdmUtbmV0d29yay1sZWdh Y3ktY29tcGxldGVseS0ucGF0Y2gKQEAgLTAsMCArMSwxNzc5IEBACitGcm9tIGE5OGQ2N2JiZTRi MzYzMzAzYTg3NjBmYjVjZmFjNDViNDlkOGExOGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitG cm9tOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgNyBNYXkg MjAyNiAwMDo0MDozMSArMDIwMAorU3ViamVjdDogW1BBVENIIDA4LzEyXSBmaXgobmV0d29yay1s ZWdhY3kpOiByZW1vdmUgbmV0d29yay1sZWdhY3kgY29tcGxldGVseQorIGZyb20gdGhlIGNvZGVi YXNlCisKKyhUbyBub3QgcmVseSBzb2xlbHkgb24gYSBkcmFjdXQuc3BlYyBmaWxlLikKKy0tLQor IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2RoY2xpZW50LXNjcmlwdC5zaCB8IDMwNSAtLS0t LS0tLS0tCisgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvZGhjbGllbnQuY29uZiAgICAgIHwg IDExIC0KKyBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNwLW11bHRpLnNoICAgICAgfCAx MzMgLS0tLS0KKyBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9pZnVwLnNoICAgICAgICAgICAg fCA1NjIgLS0tLS0tLS0tLS0tLS0tLS0tCisgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kva2ls bC1kaGNsaWVudC5zaCAgIHwgIDE1IC0KKyBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9tb2R1 bGUtc2V0dXAuc2ggICAgfCAgOTAgLS0tCisgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvbmV0 LWdlbnJ1bGVzLnNoICAgIHwgMTI1IC0tLS0KKyBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9w YXJzZS1ib25kLnNoICAgICAgfCAgNzYgLS0tCisgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kv cGFyc2UtYnJpZGdlLnNoICAgIHwgIDQ5IC0tCisgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kv cGFyc2UtaWJmdC5zaCAgICAgIHwgIDEwIC0KKyBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9w YXJzZS1pZm5hbWUuc2ggICAgfCAgMjQgLQorIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3Bh cnNlLWlwLW9wdHMuc2ggICB8IDE1MSAtLS0tLQorIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L3BhcnNlLXRlYW0uc2ggICAgICB8ICA2NiAtLQorIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L3BhcnNlLXZsYW4uc2ggICAgICB8ICAzNyAtLQorIDE0IGZpbGVzIGNoYW5nZWQsIDE2NTQgZGVs ZXRpb25zKC0pCisgZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L2RoY2xpZW50LXNjcmlwdC5zaAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBtb2R1bGVzLmQvMzVuZXR3 b3JrLWxlZ2FjeS9kaGNsaWVudC5jb25mCisgZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVsZXMuZC8z NW5ldHdvcmstbGVnYWN5L2RoY3AtbXVsdGkuc2gKKyBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxl cy5kLzM1bmV0d29yay1sZWdhY3kvaWZ1cC5zaAorIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVz LmQvMzVuZXR3b3JrLWxlZ2FjeS9raWxsLWRoY2xpZW50LnNoCisgZGVsZXRlIG1vZGUgMTAwNzU1 IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L21vZHVsZS1zZXR1cC5zaAorIGRlbGV0ZSBtb2Rl IDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9uZXQtZ2VucnVsZXMuc2gKKyBkZWxl dGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYm9uZC5zaAor IGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1icmlk Z2Uuc2gKKyBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFy c2UtaWJmdC5zaAorIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2Fj eS9wYXJzZS1pZm5hbWUuc2gKKyBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29y ay1sZWdhY3kvcGFyc2UtaXAtb3B0cy5zaAorIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQv MzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS10ZWFtLnNoCisgZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVs ZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLXZsYW4uc2gKKworZGlmZiAtLWdpdCBhL21vZHVs ZXMuZC8zNW5ldHdvcmstbGVnYWN5L2RoY2xpZW50LXNjcmlwdC5zaCBiL21vZHVsZXMuZC8zNW5l dHdvcmstbGVnYWN5L2RoY2xpZW50LXNjcmlwdC5zaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1 CitpbmRleCAwY2IwMGFiNC4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVn YWN5L2RoY2xpZW50LXNjcmlwdC5zaAorKysrIC9kZXYvbnVsbAorQEAgLTEsMzA1ICswLDAgQEAK Ky0jIS9iaW4vc2gKKy0KKy1QQVRIPS91c3Ivc2JpbjovdXNyL2Jpbjovc2JpbjovYmluCistCist Y29tbWFuZCAtdiBnZXRhcmcgPiAvZGV2L251bGwgfHwgLiAvbGliL2RyYWN1dC1saWIuc2gKKy1j b21tYW5kIC12IGlwX3RvX3ZhciA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxpYi5zaAorLQor LSMgV2UgYWxyZWFkeSBuZWVkIGEgc2V0IG5ldGlmIGhlcmUKKy1uZXRpZj0kaW50ZXJmYWNlCist Cistc2V0dXBfaW50ZXJmYWNlKCkgeworLSAgICBpcD0kbmV3X2lwX2FkZHJlc3MKKy0gICAgbXR1 PSRuZXdfaW50ZXJmYWNlX210dQorLSAgICBtYXNrPSRuZXdfc3VibmV0X21hc2sKKy0gICAgYmNh c3Q9JG5ld19icm9hZGNhc3RfYWRkcmVzcworLSAgICBndz0ke25ld19yb3V0ZXJzJSUsKn0KKy0g ICAgZG9tYWluPSRuZXdfZG9tYWluX25hbWUKKy0gICAgIyBnZXQgcmlkIG9mIGNvbnRyb2wgY2hh cnMKKy0gICAgc2VhcmNoPSQocHJpbnRmIC0tICIlcyIgIiRuZXdfZG9tYWluX3NlYXJjaCIgfCB0 ciAtZCAnWzpjbnRybDpdJykKKy0gICAgbmFtZXNydj0kbmV3X2RvbWFpbl9uYW1lX3NlcnZlcnMK Ky0gICAgaG9zdG5hbWU9JG5ld19ob3N0X25hbWUKKy0gICAgWyAtbiAiJG5ld19kaGNwX2xlYXNl X3RpbWUiIF0gJiYgbGVhc2VfdGltZT0kbmV3X2RoY3BfbGVhc2VfdGltZQorLSAgICBbIC1uICIk bmV3X21heF9saWZlIiBdICYmIGxlYXNlX3RpbWU9JG5ld19tYXhfbGlmZQorLSAgICBwcmVmZXJy ZWRfbGZ0PSRsZWFzZV90aW1lCistICAgIFsgLW4gIiRuZXdfcHJlZmVycmVkX2xpZmUiIF0gJiYg cHJlZmVycmVkX2xmdD0kbmV3X3ByZWZlcnJlZF9saWZlCistCistICAgICMgc2hlbGxjaGVjayBk aXNhYmxlPVNDMTA5MAorLSAgICBbIC1mIC90bXAvbmV0LiIkbmV0aWYiLm92ZXJyaWRlIF0gJiYg LiAvdG1wL25ldC4iJG5ldGlmIi5vdmVycmlkZQorLQorLSAgICAjIFRha2VuIGZyb20gZGViaWFu IGRoY2xpZW50LXNjcmlwdDoKKy0gICAgIyBUaGUgNTc2IE1UVSBpcyBvbmx5IHVzZWQgZm9yIFgu MjUgYW5kIGRpYWx1cCBjb25uZWN0aW9ucworLSAgICAjIHdoZXJlIHRoZSBhZG1pbiB3YW50cyBs b3cgbGF0ZW5jeS4gIFN1Y2ggYSBsb3cgTVRVIGNhbiBjYXVzZQorLSAgICAjIHByb2JsZW1zIHdp dGggVURQIHRyYWZmaWMsIGFtb25nIG90aGVyIHRoaW5ncy4gIEFzIHN1Y2gsCistICAgICMgZGlz YWxsb3cgTVRVcyBmcm9tIDU3NiBhbmQgYmVsb3cgYnkgZGVmYXVsdCwgc28gdGhhdCBicm9rZW4K Ky0gICAgIyBNVFVzIGFyZSBpZ25vcmVkLCBidXQgaGlnaGVyIHN0dWZmIGlzIGFsbG93ZWQgKDE0 OTIsIDE1MDAsIGV0YykuCistICAgIGlmIFsgLW4gIiRtdHUiIF0gJiYgWyAiJG10dSIgLWd0IDU3 NiBdOyB0aGVuCistICAgICAgICBpZiAhIGlwIGxpbmsgc2V0ICIkbmV0aWYiIG10dSAiJG10dSI7 IHRoZW4KKy0gICAgICAgICAgICBpcCBsaW5rIHNldCAiJG5ldGlmIiBkb3duCistICAgICAgICAg ICAgaXAgbGluayBzZXQgIiRuZXRpZiIgbXR1ICIkbXR1IgorLSAgICAgICAgICAgIGxpbmt1cCAi JG5ldGlmIgorLSAgICAgICAgZmkKKy0gICAgZmkKKy0KKy0gICAgaXAgYWRkciBhZGQgIiRpcCIk e21hc2s6Ky8kbWFza30gJHtiY2FzdDorYnJvYWRjYXN0ICRiY2FzdH0gZGV2ICIkbmV0aWYiIFwK Ky0gICAgICAgICR7bGVhc2VfdGltZTordmFsaWRfbGZ0ICRsZWFzZV90aW1lfSBcCistICAgICAg ICAke3ByZWZlcnJlZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJyZWRfbGZ0fX0KKy0KKy0g ICAgaWYgWyAtbiAiJGd3IiBdOyB0aGVuCistICAgICAgICBpZiBbICIkbWFzayIgPSAiMjU1LjI1 NS4yNTUuMjU1IiBdOyB0aGVuCistICAgICAgICAgICAgIyBwb2ludC10by1wb2ludCBjb25uZWN0 aW9uID0+IHNldCBleHBsaWNpdCByb3V0ZSB0byBnYXRld2F5CistICAgICAgICAgICAgZWNobyBp cCByb3V0ZSBhZGQgIiRndyIgZGV2ICIkbmV0aWYiID4gL3RtcC9uZXQuIiRuZXRpZiIuZ3cKKy0g ICAgICAgIGZpCistCistICAgICAgICBlY2hvICIkZ3ciIHwgeworLSAgICAgICAgICAgIElGUz0n ICcgcmVhZCAtciBtYWluX2d3IG90aGVyX2d3CistICAgICAgICAgICAgZWNobyBpcCByb3V0ZSBy ZXBsYWNlIGRlZmF1bHQgdmlhICIkbWFpbl9ndyIgZGV2ICIkbmV0aWYiID4+IC90bXAvbmV0LiIk bmV0aWYiLmd3CistICAgICAgICAgICAgaWYgWyAtbiAiJG90aGVyX2d3IiBdOyB0aGVuCistICAg ICAgICAgICAgICAgIGZvciBnIGluICRvdGhlcl9ndzsgZG8KKy0gICAgICAgICAgICAgICAgICAg IGVjaG8gaXAgcm91dGUgYWRkIGRlZmF1bHQgdmlhICIkZyIgZGV2ICIkbmV0aWYiID4+IC90bXAv bmV0LiIkbmV0aWYiLmd3CistICAgICAgICAgICAgICAgIGRvbmUKKy0gICAgICAgICAgICBmaQor LSAgICAgICAgfQorLSAgICBmaQorLQorLSAgICBpZiBnZXRhcmdib29sIDEgcmQucGVlcmRuczsg dGhlbgorLSAgICAgICAgWyAtbiAiJHtzZWFyY2h9JHtkb21haW59IiBdICYmIGVjaG8gInNlYXJj aCAkc2VhcmNoICRkb21haW4iID4gL3RtcC9uZXQuIiRuZXRpZiIucmVzb2x2LmNvbmYKKy0gICAg ICAgIGlmIFsgLW4gIiRuYW1lc3J2IiBdOyB0aGVuCistICAgICAgICAgICAgZm9yIHMgaW4gJG5h bWVzcnY7IGRvCistICAgICAgICAgICAgICAgIGVjaG8gbmFtZXNlcnZlciAiJHMiCistICAgICAg ICAgICAgZG9uZQorLSAgICAgICAgZmkgPj4gL3RtcC9uZXQuIiRuZXRpZiIucmVzb2x2LmNvbmYK Ky0gICAgZmkKKy0gICAgIyBOb3RlOiBob3N0bmFtZSBjYW4gYmUgZnFkbiBPUiBzaG9ydCBob3N0 bmFtZSwgc28gY2hvcCBvZmYgYW55CistICAgICMgdHJhaWxpbmcgZG9tYWluIG5hbWUgYW5kIGV4 cGxpY2l0bHkgYWRkIGFueSBkb21haW4gaWYgc2V0LgorLSAgICBbIC1uICIkaG9zdG5hbWUiIF0g JiYgZWNobyAiZWNobyAke2hvc3RuYW1lJS4iJGRvbWFpbiJ9JHtkb21haW46Ky4kZG9tYWlufSA+ IC9wcm9jL3N5cy9rZXJuZWwvaG9zdG5hbWUiID4gL3RtcC9uZXQuIiRuZXRpZiIuaG9zdG5hbWUK Ky19CistCistc2V0dXBfaW50ZXJmYWNlNigpIHsKKy0gICAgZG9tYWluPSRuZXdfZG9tYWluX25h bWUKKy0gICAgIyBnZXQgcmlkIG9mIGNvbnRyb2wgY2hhcnMKKy0gICAgc2VhcmNoPSQocHJpbnRm IC0tICIlcyIgIiRuZXdfZGhjcDZfZG9tYWluX3NlYXJjaCIgfCB0ciAtZCAnWzpjbnRybDpdJykK Ky0gICAgbmFtZXNydj0kbmV3X2RoY3A2X25hbWVfc2VydmVycworLSAgICBob3N0bmFtZT0kbmV3 X2hvc3RfbmFtZQorLSAgICBbIC1uICIkbmV3X2RoY3BfbGVhc2VfdGltZSIgXSAmJiBsZWFzZV90 aW1lPSRuZXdfZGhjcF9sZWFzZV90aW1lCistICAgIFsgLW4gIiRuZXdfbWF4X2xpZmUiIF0gJiYg bGVhc2VfdGltZT0kbmV3X21heF9saWZlCistICAgIHByZWZlcnJlZF9sZnQ9JGxlYXNlX3RpbWUK Ky0gICAgWyAtbiAiJG5ld19wcmVmZXJyZWRfbGlmZSIgXSAmJiBwcmVmZXJyZWRfbGZ0PSRuZXdf cHJlZmVycmVkX2xpZmUKKy0KKy0gICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCistICAg IFsgLWYgL3RtcC9uZXQuIiRuZXRpZiIub3ZlcnJpZGUgXSAmJiAuIC90bXAvbmV0LiIkbmV0aWYi Lm92ZXJyaWRlCistCistICAgIGlwIC02IGFkZHIgYWRkICIke25ld19pcDZfYWRkcmVzc30iLyIk e25ld19pcDZfcHJlZml4bGVufSIgXAorLSAgICAgICAgZGV2ICIke25ldGlmfSIgc2NvcGUgZ2xv YmFsIFwKKy0gICAgICAgICR7bGVhc2VfdGltZTordmFsaWRfbGZ0ICRsZWFzZV90aW1lfSBcCist ICAgICAgICAke3ByZWZlcnJlZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJyZWRfbGZ0fX0K Ky0KKy0gICAgaWYgZ2V0YXJnYm9vbCAxIHJkLnBlZXJkbnM7IHRoZW4KKy0gICAgICAgIFsgLW4g IiR7c2VhcmNofSR7ZG9tYWlufSIgXSAmJiBlY2hvICJzZWFyY2ggJHNlYXJjaCAkZG9tYWluIiA+ IC90bXAvbmV0LiIkbmV0aWYiLnJlc29sdi5jb25mCistICAgICAgICBpZiBbIC1uICIkbmFtZXNy diIgXTsgdGhlbgorLSAgICAgICAgICAgIGZvciBzIGluICRuYW1lc3J2OyBkbworLSAgICAgICAg ICAgICAgICBlY2hvIG5hbWVzZXJ2ZXIgIiRzIgorLSAgICAgICAgICAgIGRvbmUKKy0gICAgICAg IGZpID4+IC90bXAvbmV0LiIkbmV0aWYiLnJlc29sdi5jb25mCistICAgIGZpCistCistICAgICMg Tm90ZTogaG9zdG5hbWUgY2FuIGJlIGZxZG4gT1Igc2hvcnQgaG9zdG5hbWUsIHNvIGNob3Agb2Zm IGFueQorLSAgICAjIHRyYWlsaW5nIGRvbWFpbiBuYW1lIGFuZCBleHBsaWNpdGx5IGFkZCBhbnkg ZG9tYWluIGlmIHNldC4KKy0gICAgWyAtbiAiJGhvc3RuYW1lIiBdICYmIGVjaG8gImVjaG8gJHto b3N0bmFtZSUuIiRkb21haW4ifSR7ZG9tYWluOisuJGRvbWFpbn0gPiAvcHJvYy9zeXMva2VybmVs L2hvc3RuYW1lIiA+IC90bXAvbmV0LiIkbmV0aWYiLmhvc3RuYW1lCistfQorLQorLXBhcnNlX29w dGlvbl8xMjEoKSB7CistICAgICMgUkZDIDM0NDIgY2xhc3NsZXNzIHN0YXRpYyByb3V0ZXMgZm9y bWF0OgorLSAgICAjIEVhY2ggcm91dGUgaXM6IDxtYXNrX3dpZHRoPiA8ZGVzdF9vY3RldHMuLi4+ IDxnYXRld2F5XzRfb2N0ZXRzPgorLSAgICAjIG1hc2tfd2lkdGggZGV0ZXJtaW5lcyBob3cgbWFu eSBkZXN0aW5hdGlvbiBvY3RldHMgZm9sbG93ICgwLTQpCistICAgICMKKy0gICAgIyBUaGlzIHZl cnNpb24gdmFsaWRhdGVzIGFyZ3VtZW50cyBiZWZvcmUgb3BlcmF0aW9ucyB0byBwcmV2ZW50Cist ICAgICMgImludGVnZXIgZXhwcmVzc2lvbiBleHBlY3RlZCIgYW5kICJzaGlmdCBjb3VudCBvdXQg b2YgcmFuZ2UiIGVycm9ycy4KKy0KKy0gICAgd2hpbGUgWyAkIyAtZ2UgNSBdOyBkbworLSAgICAg ICAgbWFzaz0iJDEiCistCistICAgICAgICAjIFZhbGlkYXRlIG1hc2sgaXMgYSBudW1iZXIgYmV0 d2VlbiAwLTMyCistICAgICAgICBjYXNlICIkbWFzayIgaW4KKy0gICAgICAgICAgICAnJyB8ICpb ITAtOV0qKSByZXR1cm4gMCA7OworLSAgICAgICAgZXNhYworLSAgICAgICAgaWYgWyAiJG1hc2si IC1sdCAwIF0gMj4gL2Rldi9udWxsIHx8IFsgIiRtYXNrIiAtZ3QgMzIgXSAyPiAvZGV2L251bGw7 IHRoZW4KKy0gICAgICAgICAgICByZXR1cm4gMAorLSAgICAgICAgZmkKKy0gICAgICAgIHNoaWZ0 CistCistICAgICAgICAjIENhbGN1bGF0ZSBob3cgbWFueSBkZXN0aW5hdGlvbiBhZGRyZXNzIGJ5 dGVzIHdlIG5lZWQgYmFzZWQgb24gbWFzaworLSAgICAgICAgaWYgWyAiJG1hc2siIC1ndCAyNCBd OyB0aGVuCistICAgICAgICAgICAgbmVlZF9kZXN0PTQKKy0gICAgICAgIGVsaWYgWyAiJG1hc2si IC1ndCAxNiBdOyB0aGVuCistICAgICAgICAgICAgbmVlZF9kZXN0PTMKKy0gICAgICAgIGVsaWYg WyAiJG1hc2siIC1ndCA4IF07IHRoZW4KKy0gICAgICAgICAgICBuZWVkX2Rlc3Q9MgorLSAgICAg ICAgZWxpZiBbICIkbWFzayIgLWd0IDAgXTsgdGhlbgorLSAgICAgICAgICAgIG5lZWRfZGVzdD0x CistICAgICAgICBlbHNlCistICAgICAgICAgICAgbmVlZF9kZXN0PTAKKy0gICAgICAgIGZpCist CistICAgICAgICAjIFdlIG5lZWQ6IGRlc3RpbmF0aW9uIGJ5dGVzICsgNCBnYXRld2F5IGJ5dGVz CistICAgICAgICBuZWVkX3RvdGFsPSQoKG5lZWRfZGVzdCArIDQpKQorLSAgICAgICAgaWYgWyAk IyAtbHQgJG5lZWRfdG90YWwgXTsgdGhlbgorLSAgICAgICAgICAgIHJldHVybiAwCistICAgICAg ICBmaQorLQorLSAgICAgICAgIyBDaGVjayBpZiBkZXN0aW5hdGlvbiBpcyBtdWx0aWNhc3QgKDIy NC4wLjAuMCAtIDIzOS4yNTUuMjU1LjI1NSkKKy0gICAgICAgIG11bHRpY2FzdD0wCistICAgICAg ICBpZiBbICRuZWVkX2Rlc3QgLWdlIDEgXTsgdGhlbgorLSAgICAgICAgICAgIGNhc2UgIiQxIiBp bgorLSAgICAgICAgICAgICAgICAnJyB8ICpbITAtOV0qKSByZXR1cm4gMCA7OworLSAgICAgICAg ICAgIGVzYWMKKy0gICAgICAgICAgICBpZiBbICIkMSIgLWdlIDIyNCBdIDI+IC9kZXYvbnVsbCAm JiBbICIkMSIgLWx0IDI0MCBdIDI+IC9kZXYvbnVsbDsgdGhlbgorLSAgICAgICAgICAgICAgICBt dWx0aWNhc3Q9MQorLSAgICAgICAgICAgIGZpCistICAgICAgICBmaQorLQorLSAgICAgICAgIyBC dWlsZCBkZXN0aW5hdGlvbiBhZGRyZXNzIGJhc2VkIG9uIG1hc2sgd2lkdGgKKy0gICAgICAgIGlm IFsgIiRtYXNrIiAtZ3QgMjQgXTsgdGhlbgorLSAgICAgICAgICAgIGRlc3RpbmF0aW9uPSIkMS4k Mi4kMy4kNC8kbWFzayIKKy0gICAgICAgICAgICBzaGlmdCA0CistICAgICAgICBlbGlmIFsgIiRt YXNrIiAtZ3QgMTYgXTsgdGhlbgorLSAgICAgICAgICAgIGRlc3RpbmF0aW9uPSIkMS4kMi4kMy4w LyRtYXNrIgorLSAgICAgICAgICAgIHNoaWZ0IDMKKy0gICAgICAgIGVsaWYgWyAiJG1hc2siIC1n dCA4IF07IHRoZW4KKy0gICAgICAgICAgICBkZXN0aW5hdGlvbj0iJDEuJDIuMC4wLyRtYXNrIgor LSAgICAgICAgICAgIHNoaWZ0IDIKKy0gICAgICAgIGVsaWYgWyAiJG1hc2siIC1ndCAwIF07IHRo ZW4KKy0gICAgICAgICAgICBkZXN0aW5hdGlvbj0iJDEuMC4wLjAvJG1hc2siCistICAgICAgICAg ICAgc2hpZnQgMQorLSAgICAgICAgZWxzZQorLSAgICAgICAgICAgIGRlc3RpbmF0aW9uPSIwLjAu MC4wLyRtYXNrIgorLSAgICAgICAgZmkKKy0KKy0gICAgICAgICMgUmVhZCBnYXRld2F5IChhbHdh eXMgNCBieXRlcykKKy0gICAgICAgIGlmIFsgJCMgLWx0IDQgXTsgdGhlbgorLSAgICAgICAgICAg IHJldHVybiAwCistICAgICAgICBmaQorLSAgICAgICAgZ2F0ZXdheT0iJDEuJDIuJDMuJDQiCist ICAgICAgICBzaGlmdCA0CistCistICAgICAgICAjIEJ1aWxkIGFuZCBlbWl0IHRoZSByb3V0ZSBj b21tYW5kCistICAgICAgICBpZiBbICRtdWx0aWNhc3QgLWVxIDEgXSB8fCBbICIkZ2F0ZXdheSIg PSAiMC4wLjAuMCIgXTsgdGhlbgorLSAgICAgICAgICAgIHRlbXBfcmVzdWx0PSIkZGVzdGluYXRp b24gZGV2ICRpbnRlcmZhY2UiCistICAgICAgICBlbHNlCistICAgICAgICAgICAgdGVtcF9yZXN1 bHQ9IiRkZXN0aW5hdGlvbiB2aWEgJGdhdGV3YXkgZGV2ICRpbnRlcmZhY2UiCistICAgICAgICBm aQorLQorLSAgICAgICAgZWNobyAiL3NiaW4vaXAgcm91dGUgcmVwbGFjZSAkdGVtcF9yZXN1bHQi CistICAgIGRvbmUKKy19CistCistY2FzZSAkcmVhc29uIGluCistICAgIFBSRUlOSVQpCistICAg ICAgICBlY2hvICJkaGNwOiBQUkVJTklUICRuZXRpZiB1cCIKKy0gICAgICAgIGxpbmt1cCAiJG5l dGlmIgorLSAgICAgICAgOzsKKy0KKy0gICAgUFJFSU5JVDYpCistICAgICAgICBlY2hvICJkaGNw OiBQUkVJTklUNiAkbmV0aWYgdXAiCistICAgICAgICBsaW5rdXAgIiRuZXRpZiIKKy0gICAgICAg IHdhaXRfZm9yX2lwdjZfZGFkX2xpbmsgIiRuZXRpZiIKKy0gICAgICAgIDs7CistCistICAgIEJP VU5EKQorLSAgICAgICAgZWNobyAiZGhjcDogQk9VTkQgc2V0dGluZyB1cCAkbmV0aWYiCistICAg ICAgICB1bnNldCBsYXllcjIKKy0gICAgICAgIGlmIFsgLWYgL3N5cy9jbGFzcy9uZXQvIiRuZXRp ZiIvZGV2aWNlL2xheWVyMiBdOyB0aGVuCistICAgICAgICAgICAgcmVhZCAtciBsYXllcjIgPCAv c3lzL2NsYXNzL25ldC8iJG5ldGlmIi9kZXZpY2UvbGF5ZXIyCistICAgICAgICBmaQorLSAgICAg ICAgaWYgWyAiJGxheWVyMiIgIT0gIjAiIF07IHRoZW4KKy0gICAgICAgICAgICBpZiBjb21tYW5k IC12IGFycGluZzIgPiAvZGV2L251bGw7IHRoZW4KKy0gICAgICAgICAgICAgICAgaWYgYXJwaW5n MiAtcSAtQyAxIC1jIDIgLUkgIiRuZXRpZiIgLTAgIiRuZXdfaXBfYWRkcmVzcyI7IHRoZW4KKy0g ICAgICAgICAgICAgICAgICAgIHdhcm4gIkR1cGxpY2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAk bmV3X2lwX2FkZHJlc3Mgd2hpbGUgZG9pbmcgZGhjcC4gcmV0cnlpbmciCistICAgICAgICAgICAg ICAgICAgICBleGl0IDEKKy0gICAgICAgICAgICAgICAgZmkKKy0gICAgICAgICAgICBlbHNlCist ICAgICAgICAgICAgICAgIGlmICEgYXJwaW5nIC1mIC1xIC1EIC1jIDIgLUkgIiRuZXRpZiIgIiRu ZXdfaXBfYWRkcmVzcyI7IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgIHdhcm4gIkR1cGxpY2F0 ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkbmV3X2lwX2FkZHJlc3Mgd2hpbGUgZG9pbmcgZGhjcC4g cmV0cnlpbmciCistICAgICAgICAgICAgICAgICAgICBleGl0IDEKKy0gICAgICAgICAgICAgICAg ZmkKKy0gICAgICAgICAgICBmaQorLSAgICAgICAgZmkKKy0gICAgICAgIHVuc2V0IGxheWVyMgor LSAgICAgICAgc2V0dXBfaW50ZXJmYWNlCistICAgICAgICBzZXQgfCB3aGlsZSByZWFkIC1yIGxp bmUgfHwgWyAtbiAiJGxpbmUiIF07IGRvCistICAgICAgICAgICAgWyAiJHtsaW5lI25ld199IiA9 ICIkbGluZSIgXSAmJiBjb250aW51ZQorLSAgICAgICAgICAgIGVjaG8gIiRsaW5lIgorLSAgICAg ICAgZG9uZSA+IC90bXAvZGhjbGllbnQuIiRuZXRpZiIuZGhjcG9wdHMKKy0KKy0gICAgICAgIHsK Ky0gICAgICAgICAgICBlY2hvICcuIC9saWIvbmV0LWxpYi5zaCcKKy0gICAgICAgICAgICBlY2hv ICJzZXR1cF9uZXQgJG5ldGlmIgorLSAgICAgICAgICAgIGlmIFsgLW4gIiRuZXdfY2xhc3NsZXNz X3N0YXRpY19yb3V0ZXMiIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgT0xESUZTPSIkSUZTIgor LSAgICAgICAgICAgICAgICBJRlM9Ii4kSUZTIgorLSAgICAgICAgICAgICAgICBwYXJzZV9vcHRp b25fMTIxICIkbmV3X2NsYXNzbGVzc19zdGF0aWNfcm91dGVzIgorLSAgICAgICAgICAgICAgICBJ RlM9IiRPTERJRlMiCistICAgICAgICAgICAgZmkKKy0gICAgICAgICAgICBlY2hvICJzb3VyY2Vf aG9vayBpbml0cXVldWUvb25saW5lICRuZXRpZiIKKy0gICAgICAgICAgICBbIC1lIC90bXAvbmV0 LiIkbmV0aWYiLm1hbnVhbHVwIF0gfHwgZWNobyAiL3NiaW4vbmV0cm9vdCAkbmV0aWYiCistICAg ICAgICAgICAgZWNobyAicm0gLWYgLS0gJGhvb2tkaXIvaW5pdHF1ZXVlL3NldHVwX25ldF8kbmV0 aWYuc2giCistICAgICAgICB9ID4gIiRob29rZGlyIi9pbml0cXVldWUvc2V0dXBfbmV0XyIkbmV0 aWYiLnNoCistCistICAgICAgICBlY2hvICJbIC1mIC90bXAvbmV0LiRuZXRpZi5kaWQtc2V0dXAg XSIgPiAiJGhvb2tkaXIiL2luaXRxdWV1ZS9maW5pc2hlZC9kaGNsaWVudC0iJG5ldGlmIi5zaAor LSAgICAgICAgOiA+IC90bXAvbmV0LiIkbmV0aWYiLnVwCistICAgICAgICBpZiBbIC1lIC9zeXMv Y2xhc3MvbmV0LyIke25ldGlmfSIvYWRkcmVzcyBdOyB0aGVuCistICAgICAgICAgICAgOiA+ICIv dG1wL25ldC4kKGNhdCAvc3lzL2NsYXNzL25ldC8iJHtuZXRpZn0iL2FkZHJlc3MpLnVwIgorLSAg ICAgICAgZmkKKy0KKy0gICAgICAgIDs7CistCistICAgIFJFTkVXIHwgUkVCSU5EKQorLSAgICAg ICAgdW5zZXQgbGVhc2VfdGltZQorLSAgICAgICAgWyAtbiAiJG5ld19kaGNwX2xlYXNlX3RpbWUi IF0gJiYgbGVhc2VfdGltZT0kbmV3X2RoY3BfbGVhc2VfdGltZQorLSAgICAgICAgWyAtbiAiJG5l d19tYXhfbGlmZSIgXSAmJiBsZWFzZV90aW1lPSRuZXdfbWF4X2xpZmUKKy0gICAgICAgIHByZWZl cnJlZF9sZnQ9JGxlYXNlX3RpbWUKKy0gICAgICAgIFsgLW4gIiRuZXdfcHJlZmVycmVkX2xpZmUi IF0gJiYgcHJlZmVycmVkX2xmdD0kbmV3X3ByZWZlcnJlZF9saWZlCistICAgICAgICBpcCAtNCBh ZGRyIGNoYW5nZSAiJHtuZXdfaXBfYWRkcmVzc30iLyIke25ld19zdWJuZXRfbWFza30iIGJyb2Fk Y2FzdCAiJHtuZXdfYnJvYWRjYXN0X2FkZHJlc3N9IiBkZXYgIiR7aW50ZXJmYWNlfSIgXAorLSAg ICAgICAgICAgICR7bGVhc2VfdGltZTordmFsaWRfbGZ0ICRsZWFzZV90aW1lfSAke3ByZWZlcnJl ZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJyZWRfbGZ0fX0gXAorLSAgICAgICAgICAgID4g L2Rldi9udWxsIDI+JjEKKy0gICAgICAgIDs7CistCistICAgIEJPVU5ENikKKy0gICAgICAgIGVj aG8gImRoY3A6IEJPVU5ENiBzZXR0aW5nIHVwICRuZXRpZiIKKy0gICAgICAgIHNldHVwX2ludGVy ZmFjZTYKKy0KKy0gICAgICAgIHNldCB8IHdoaWxlIHJlYWQgLXIgbGluZSB8fCBbIC1uICIkbGlu ZSIgXTsgZG8KKy0gICAgICAgICAgICBbICIke2xpbmUjbmV3X30iID0gIiRsaW5lIiBdICYmIGNv bnRpbnVlCistICAgICAgICAgICAgZWNobyAiJGxpbmUiCistICAgICAgICBkb25lID4gL3RtcC9k aGNsaWVudC4iJG5ldGlmIi5kaGNwb3B0cworLQorLSAgICAgICAgeworLSAgICAgICAgICAgIGVj aG8gJy4gL2xpYi9uZXQtbGliLnNoJworLSAgICAgICAgICAgIGVjaG8gInNldHVwX25ldCAkbmV0 aWYiCistICAgICAgICAgICAgZWNobyAic291cmNlX2hvb2sgaW5pdHF1ZXVlL29ubGluZSAkbmV0 aWYiCistICAgICAgICAgICAgWyAtZSAvdG1wL25ldC4iJG5ldGlmIi5tYW51YWx1cCBdIHx8IGVj aG8gIi9zYmluL25ldHJvb3QgJG5ldGlmIgorLSAgICAgICAgICAgIGVjaG8gInJtIC1mIC0tICRo b29rZGlyL2luaXRxdWV1ZS9zZXR1cF9uZXRfJG5ldGlmLnNoIgorLSAgICAgICAgfSA+ICIkaG9v a2RpciIvaW5pdHF1ZXVlL3NldHVwX25ldF8iJG5ldGlmIi5zaAorLQorLSAgICAgICAgZWNobyAi WyAtZiAvdG1wL25ldC4kbmV0aWYuZGlkLXNldHVwIF0iID4gIiRob29rZGlyIi9pbml0cXVldWUv ZmluaXNoZWQvZGhjbGllbnQtIiRuZXRpZiIuc2gKKy0gICAgICAgIDogPiAvdG1wL25ldC4iJG5l dGlmIi51cAorLSAgICAgICAgaWYgWyAtZSAvc3lzL2NsYXNzL25ldC8iJHtuZXRpZn0iL2FkZHJl c3MgXTsgdGhlbgorLSAgICAgICAgICAgIDogPiAiL3RtcC9uZXQuJChjYXQgL3N5cy9jbGFzcy9u ZXQvIiR7bmV0aWZ9Ii9hZGRyZXNzKS51cCIKKy0gICAgICAgIGZpCistICAgICAgICA7OworLQor LSAgICBSRU5FVzYgfCBSRUJJTkQ2KQorLSAgICAgICAgdW5zZXQgbGVhc2VfdGltZQorLSAgICAg ICAgWyAtbiAiJG5ld19kaGNwX2xlYXNlX3RpbWUiIF0gJiYgbGVhc2VfdGltZT0kbmV3X2RoY3Bf bGVhc2VfdGltZQorLSAgICAgICAgWyAtbiAiJG5ld19tYXhfbGlmZSIgXSAmJiBsZWFzZV90aW1l PSRuZXdfbWF4X2xpZmUKKy0gICAgICAgIHByZWZlcnJlZF9sZnQ9JGxlYXNlX3RpbWUKKy0gICAg ICAgIFsgLW4gIiRuZXdfcHJlZmVycmVkX2xpZmUiIF0gJiYgcHJlZmVycmVkX2xmdD0kbmV3X3By ZWZlcnJlZF9saWZlCistICAgICAgICBpcCAtNiBhZGRyIGNoYW5nZSAiJHtuZXdfaXA2X2FkZHJl c3N9Ii8iJHtuZXdfaXA2X3ByZWZpeGxlbn0iIGRldiAiJHtpbnRlcmZhY2V9IiBzY29wZSBnbG9i YWwgXAorLSAgICAgICAgICAgICR7bGVhc2VfdGltZTordmFsaWRfbGZ0ICRsZWFzZV90aW1lfSAk e3ByZWZlcnJlZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJyZWRfbGZ0fX0gXAorLSAgICAg ICAgICAgID4gL2Rldi9udWxsIDI+JjEKKy0gICAgICAgIDs7CistCistICAgICopIGVjaG8gImRo Y3A6ICRyZWFzb24iIDs7CistZXNhYworLQorLWV4aXQgMAorZGlmZiAtLWdpdCBhL21vZHVsZXMu ZC8zNW5ldHdvcmstbGVnYWN5L2RoY2xpZW50LmNvbmYgYi9tb2R1bGVzLmQvMzVuZXR3b3JrLWxl Z2FjeS9kaGNsaWVudC5jb25mCitkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IGZmZDI0 ZWY2Li4wMDAwMDAwMAorLS0tIGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvZGhjbGllbnQu Y29uZgorKysrIC9kZXYvbnVsbAorQEAgLTEsMTEgKzAsMCBAQAorLQorLW9wdGlvbiBjbGFzc2xl c3Mtc3RhdGljLXJvdXRlcyBjb2RlIDEyMSA9IGFycmF5IG9mIHVuc2lnbmVkIGludGVnZXIgODsK Ky0KKy1zZW5kIGRoY3AtY2xpZW50LWlkZW50aWZpZXIgPSBoYXJkd2FyZTsKKy0KKy1yZXF1ZXN0 IHN1Ym5ldC1tYXNrLCBicm9hZGNhc3QtYWRkcmVzcywgdGltZS1vZmZzZXQsIHJvdXRlcnMsCist ICAgICAgICBkb21haW4tbmFtZSwgZG9tYWluLW5hbWUtc2VydmVycywgZG9tYWluLXNlYXJjaCwg aG9zdC1uYW1lLAorLSAgICAgICAgcm9vdC1wYXRoLCBpbnRlcmZhY2UtbXR1LCBjbGFzc2xlc3Mt c3RhdGljLXJvdXRlcywKKy0gICAgICAgIG5ldGJpb3MtbmFtZS1zZXJ2ZXJzLCBuZXRiaW9zLXNj b3BlLCBudHAtc2VydmVycywKKy0gICAgICAgIGRoY3A2LmRvbWFpbi1zZWFyY2gsIGRoY3A2LmZx ZG4sCistICAgICAgICBkaGNwNi5uYW1lLXNlcnZlcnMsIGRoY3A2LnNudHAtc2VydmVyczsKK2Rp ZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNwLW11bHRpLnNoIGIvbW9k dWxlcy5kLzM1bmV0d29yay1sZWdhY3kvZGhjcC1tdWx0aS5zaAorZGVsZXRlZCBmaWxlIG1vZGUg MTAwNzU1CitpbmRleCAxYzVlZTczMy4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdv cmstbGVnYWN5L2RoY3AtbXVsdGkuc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDEzMyArMCwwIEBA CistIyEvYmluL3NoCistIyAtKi0gbW9kZTogc2hlbGwtc2NyaXB0OyBpbmRlbnQtdGFicy1tb2Rl OiBuaWw7IHNoLWJhc2ljLW9mZnNldDogNDsgLSotCistIyBleDogdHM9OCBzdz00IHN0cz00IGV0 IGZpbGV0eXBlPXNoCistIworLVBBVEg9L3Vzci9zYmluOi91c3IvYmluOi9zYmluOi9iaW4KKy0K Ky0jIEZpbGUgdG8gc3RhcnQgZGhjbGllbnQgcmVxdWVzdHMgb24gZGlmZmVyZW50IGludGVyZmFj ZXMgaW4gcGFyYWxsZWwKKy0KKy1jb21tYW5kIC12IGdldGFyZyA+IC9kZXYvbnVsbCB8fCAuIC9s aWIvZHJhY3V0LWxpYi5zaAorLS4gL2xpYi9uZXQtbGliLnNoCistCistbmV0aWY9JDEKKy1kb192 bGFuPSQyCistYXJnPSQzCistCistIyBSdW4gZGhjbGllbnQgaW4gcGFyYWxsZWwKKy1kb19kaGNs aWVudCgpIHsKKy0gICAgbG9jYWwgX0NPVU5UPTAKKy0gICAgbG9jYWwgX3RpbWVvdXQKKy0gICAg bG9jYWwgX0RIQ1BSRVRSWQorLSAgICBfdGltZW91dD0kKGdldGFyZyByZC5uZXQudGltZW91dC5k aGNwPSkKKy0gICAgX0RIQ1BSRVRSWT0kKGdldGFyZ251bSAxIDEgMTAwMDAwMDAwMCByZC5uZXQu ZGhjcC5yZXRyeT0pCistCistICAgIGlmIFsgLW4gIiRfdGltZW91dCIgXTsgdGhlbgorLSAgICAg ICAgaWYgISAoZGhjbGllbnQgLS1oZWxwIDI+JjEgfCBncmVwIC1xcyAtRiAtLSAnLS10aW1lb3V0 Jyk7IHRoZW4KKy0gICAgICAgICAgICB3YXJuICJyZC5uZXQudGltZW91dC5kaGNwIGhhcyBubyBl ZmZlY3QgYmVjYXVzZSBkaGNsaWVudCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIC0tdGltZW91dCBv cHRpb24iCistICAgICAgICAgICAgdW5zZXQgX3RpbWVvdXQKKy0gICAgICAgIGZpCistICAgIGZp CistCistICAgIHdoaWxlIFsgJF9DT1VOVCAtbHQgIiRfREhDUFJFVFJZIiBdOyBkbworLSAgICAg ICAgaW5mbyAiU3RhcnRpbmcgZGhjcCBmb3IgaW50ZXJmYWNlICRuZXRpZiIKKy0gICAgICAgIGRo Y2xpZW50ICIkYXJnIiBcCistICAgICAgICAgICAgJHtfdGltZW91dDorLS10aW1lb3V0ICIkX3Rp bWVvdXQifSBcCistICAgICAgICAgICAgLXEgXAorLSAgICAgICAgICAgIC0xIFwKKy0gICAgICAg ICAgICAtY2YgL2V0Yy9kaGNsaWVudC5jb25mIFwKKy0gICAgICAgICAgICAtcGYgL3RtcC9kaGNs aWVudC4iJG5ldGlmIi5waWQgXAorLSAgICAgICAgICAgIC1sZiAvdG1wL2RoY2xpZW50LiIkbmV0 aWYiLmxlYXNlIFwKKy0gICAgICAgICAgICAiJG5ldGlmIiAmCistICAgICAgICB3YWl0ICQhIDI+ IC9kZXYvbnVsbAorLQorLSAgICAgICAgIyB3YWl0IHdpbGwgcmV0dXJuIHRoZSByZXR1cm4gdmFs dWUgb2YgZGhjbGllbnQKKy0gICAgICAgIHJldHY9JD8KKy0KKy0gICAgICAgICMgZGhjbGllbnQg YW5kIGhlbmNlIHdhaXQgcmV0dXJuZWQgc3VjY2VzcywgMC4KKy0gICAgICAgIGlmIFsgJHJldHYg LWVxIDAgXTsgdGhlbgorLSAgICAgICAgICAgIHJldHVybiAwCistICAgICAgICBmaQorLQorLSAg ICAgICAgIyBJZiBkaGNsaWVudCBleGl0ZWQgYmVmb3JlIHdhaXQgd2FzIGNhbGxlZCwgb3IgaXQg d2FzIGtpbGxlZCBieQorLSAgICAgICAgIyBhbm90aGVyIHRocmVhZCBmb3IgaW50ZXJmYWNlIHdo b3NlIERIQ1Agc3VjY2VlZGVkLCB0aGVuIGl0IHdpbGwgbm90CistICAgICAgICAjIGZpbmQgdGhl IHByb2Nlc3Mgd2l0aCB0aGF0IHBpZCBhbmQgcmV0dXJuIGVycm9yIGNvZGUgMTI3LiBJbiB0aGF0 CistICAgICAgICAjIGNhc2Ugd2UgbmVlZCB0byBjaGVjayBpZiAvdG1wL2RoY2xpZW50LiRuZXRp Zi5sZWFzZSBleGlzdHMuIElmIGl0CistICAgICAgICAjIGRvZXMsIGl0IG1lYW5zIGRoY2xpZW50 IGZpbmlzaGVkIGV4ZWN1dGluZyBiZWZvcmUgd2FpdCB3YXMgY2FsbGVkLAorLSAgICAgICAgIyBh bmQgaXQgd2FzIHN1Y2Nlc3NmdWwgKHJldHVybiAwKS4gSWYgL3RtcC9kaGNsaWVudC4kbmV0aWYu bGVhc2UKKy0gICAgICAgICMgZG9lcyBub3QgZXhpc3QsIHRoZW4gaXQgbWVhbnMgZGhjbGllbnQg d2FzIGtpbGxlZCBieSBhbm90aGVyIHRocmVhZAorLSAgICAgICAgIyBvciBpdCBmaW5pc2hlZCBl eGVjdXRpb24gYnV0IGZhaWxlZCBkaGNwIG9uIHRoYXQgaW50ZXJmYWNlLgorLQorLSAgICAgICAg aWYgWyAkcmV0diAtZXEgMTI3IF07IHRoZW4KKy0gICAgICAgICAgICByZWFkIC1yIHBpZCA8IC90 bXAvZGhjbGllbnQuIiRuZXRpZiIucGlkCistICAgICAgICAgICAgaW5mbyAiUElEICRwaWQgd2Fz IG5vdCBmb3VuZCBieSB3YWl0IGZvciAkbmV0aWYiCistICAgICAgICAgICAgaWYgWyAtZSAvdG1w L2RoY2xpZW50LiIkbmV0aWYiLmxlYXNlIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgaW5mbyAi UElEICRwaWQgbm90IGZvdW5kIGJ1dCBESENQIHN1Y2Nlc3NmdWwgb24gJG5ldGlmIgorLSAgICAg ICAgICAgICAgICByZXR1cm4gMAorLSAgICAgICAgICAgIGZpCistICAgICAgICBmaQorLQorLSAg ICAgICAgX0NPVU5UPSQoKF9DT1VOVCArIDEpKQorLSAgICAgICAgWyAkX0NPVU5UIC1sdCAiJF9E SENQUkVUUlkiIF0gJiYgc2xlZXAgMQorLSAgICBkb25lCistICAgIHdhcm4gImRoY3AgZm9yIGlu dGVyZmFjZSAkbmV0aWYgZmFpbGVkIgorLSAgICAjIG51a2UgdGhvc2UgZmlsZXMgc2luY2Ugd2Ug ZmFpbGVkOyB3ZSBtaWdodCByZXRyeSBkaGNwIGFnYWluIGlmIGl0J3MgZS5nLgorLSAgICAjIGBp cD1kaGNwLGRoY3A2YCBhbmQgd2UgY2hlY2sgZm9yIHRoZSBQSUQgZmlsZSBlYXJsaWVyCistICAg IHJtIC1mIC90bXAvZGhjbGllbnQuIiRuZXRpZiIucGlkIC90bXAvZGhjbGllbnQuIiRuZXRpZiIu bGVhc2UKKy0gICAgcmV0dXJuIDEKKy19CistCistZG9fZGhjbGllbnQKKy1yZXQ9JD8KKy0KKy0j IHNldHVwIG5hbWVzZXJ2ZXIKKy1mb3IgcyBpbiAiJGRuczEiICIkZG5zMiIgJChnZXRhcmdzIG5h bWVzZXJ2ZXIpOyBkbworLSAgICBbIC1uICIkcyIgXSB8fCBjb250aW51ZQorLSAgICBlY2hvIG5h bWVzZXJ2ZXIgIiRzIiA+PiAvdG1wL25ldC4iJG5ldGlmIi5yZXNvbHYuY29uZgorLWRvbmUKKy0K Ky1pZiBbICRyZXQgLWVxIDAgXTsgdGhlbgorLSAgICA6ID4gL3RtcC9uZXQuIiR7bmV0aWZ9Ii51 cAorLQorLSAgICBpZiBbIC16ICIkZG9fdmxhbiIgXSAmJiBbIC1lIC9zeXMvY2xhc3MvbmV0LyIk e25ldGlmfSIvYWRkcmVzcyBdOyB0aGVuCistICAgICAgICA6ID4gIi90bXAvbmV0LiQoY2F0IC9z eXMvY2xhc3MvbmV0LyIke25ldGlmfSIvYWRkcmVzcykudXAiCistICAgIGZpCistCistICAgICMg Q2hlY2sgaWYgREhDUCBhbHNvIHN1Y2NlZWRlZCBvbiBhbm90aGVyIGludGVyZmFjZSBiZWZvcmUg dGhpcyBvbmUuCistICAgICMgV2Ugd2lsbCBhbHdheXMgdXNlIHRoZSBmaXJzdCBvbmUgb24gd2hp Y2ggREhDUCBzdWNjZWVkZWQsIGJ5IHVzaW5nCistICAgICMgYSBjb21tb24gZmlsZSAkSUZORVRG SUxFLCB0byBzeW5jaHJvbml6ZSBiZXR3ZWVuIHRocmVhZHMuCistICAgICMgQ29uc2lkZXIgdGhl IHJhY2UgY29uZGl0aW9uIGluIHdoaWNoIG11bHRpcGxlIHRocmVhZHMKKy0gICAgIyBjb3JyZXNw b25kaW5nIHRvIGRpZmZlcmVudCBpbnRlcmZhY2VzIG1heSB0cnkgdG8gcmVhZCAkSUZORVRGSUxF CistICAgICMgYW5kIGZpbmQgaXQgZG9lcyBub3QgZXhpc3Q7IHRoZXkgbWF5IGFsbCBlbmQgdXAg dGhpbmtpbmcgdGhleSBhcmUgdGhlCistICAgICMgZmlyc3QgdG8gc3VjY2VlZCAoaGVuY2UgbW9y ZSB0aGFuIG9uZSB0aHJlYWQgbWF5IGVuZCB1cCB3cml0aW5nIHRvCistICAgICMgJElGTkVURklM RSkuIFRvIHRha2UgY2FyZSBvZiB0aGlzLCBpbnN0ZWFkIG9mIGNoZWNraW5nIGlmICRJRk5FVEZJ TEUKKy0gICAgIyBleGlzdHMgdG8gZGV0ZXJtaW5lIGlmIHdlIGFyZSB0aGUgZmlyc3QsIHdlIGNy ZWF0ZSBhIHN5bWJvbGljIGxpbmsKKy0gICAgIyBpbiAkSUZORVRGSUxFLCBwb2ludGluZyB0byB0 aGUgaW50ZXJmYWNlIG5hbWUgKCRuZXRpZiksIHRodXMgc3RvcmluZworLSAgICAjIHRoZSBpbnRl cmZhY2UgbmFtZSBpbiB0aGUgbGluayBwb2ludGVyLgorLSAgICAjIENyZWF0aW5nIGEgbGluayB3 aWxsIGZhaWwsIGlmIHRoZSBsaW5rIGFscmVhZHkgZXhpc3RzLCBoZW5jZSBrZXJuZWwKKy0gICAg IyB3aWxsIHRha2UgY2FyZSBvZiBhbGxvd2luZyBvbmx5IGZpcnN0IHRocmVhZCB0byBjcmVhdGUg bGluaywgd2hpY2gKKy0gICAgIyB0YWtlcyBjYXJlIG9mIHRoZSByYWNlIGNvbmRpdGlvbiBmb3Ig dXMuIFN1YnNlcXVlbnQgdGhyZWFkcyB3aWxsIGZhaWwuCistICAgICMgQWxzbywgdGhlIGxpbmsg cG9pbnRzIHRvIHRoZSBpbnRlcmZhY2UgbmFtZSwgd2hpY2ggd2lsbCB0ZWxsIHVzIHdoaWNoCist ICAgICMgaW50ZXJmYWNlIHN1Y2NlZWRlZC4KKy0KKy0gICAgaWYgbG4gLXMgIiRuZXRpZiIgIiRJ Rk5FVEZJTEUiIDI+IC9kZXYvbnVsbDsgdGhlbgorLSAgICAgICAgaW50Zj0kKHJlYWRsaW5rICIk SUZORVRGSUxFIikKKy0gICAgICAgIGlmIFsgLWUgL3RtcC9kaGNsaWVudC4iJGludGYiLmxlYXNl IF07IHRoZW4KKy0gICAgICAgICAgICBpbmZvICJESENQIHN1Y2Nlc3NmdWwgb24gaW50ZXJmYWNl ICRpbnRmIgorLSAgICAgICAgICAgICMgS2lsbCBhbGwgZXhpc3RpbmcgZGhjbGllbnQgY2FsbHMg Zm9yIG90aGVyIGludGVyZmFjZXMsIHNpbmNlIHdlCistICAgICAgICAgICAgIyBhbHJlYWR5IGdv dCBvbmUgc3VjY2Vzc2Z1bCBpbnRlcmZhY2UKKy0KKy0gICAgICAgICAgICByZWFkIC1yIG5waWQg PCAvdG1wL2RoY2xpZW50LiIkbmV0aWYiLnBpZAorLSAgICAgICAgICAgIHBpZGxpc3Q9JChwZ3Jl cCBkaGNsaWVudCkKKy0gICAgICAgICAgICBmb3IgcGlkIGluICRwaWRsaXN0OyBkbworLSAgICAg ICAgICAgICAgICBbICIkcGlkIiAtZXEgIiRucGlkIiBdICYmIGNvbnRpbnVlCistICAgICAgICAg ICAgICAgIGtpbGwgLTkgIiRwaWQiID4gL2Rldi9udWxsIDI+JjEKKy0gICAgICAgICAgICBkb25l CistICAgICAgICBlbHNlCistICAgICAgICAgICAgZWNobyAiRVJST1IhICRJRk5FVEZJTEUgZXhp c3RzIGJ1dCAvdG1wL2RoY2xpZW50LiRpbnRmLmxlYXNlIGRvZXMgbm90IGV4aXN0ISEhIgorLSAg ICAgICAgZmkKKy0gICAgZWxzZQorLSAgICAgICAgaW5mbyAiREhDUCBzdWNjZXNzIG9uICRuZXRp ZiwgYW5kIGFsc28gb24gJGludGYiCistICAgICAgICBleGl0IDAKKy0gICAgZmkKKy0gICAgZXhp dCAkcmV0CistZmkKK2RpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9pZnVw LnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvaWZ1cC5zaAorZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNzU1CitpbmRleCBiMmVkNDYwNy4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5l dHdvcmstbGVnYWN5L2lmdXAuc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDU2MiArMCwwIEBACist IyEvYmluL3NoCistIworLSMgV2UgZG9uJ3QgbmVlZCB0byBjaGVjayBmb3IgaXA9IGVycm9ycyBo ZXJlLCB0aGF0IGlzIGhhbmRsZWQgYnkgdGhlCistIyBjbWRsaW5lIHBhcnNlciBzY3JpcHQKKy0j CistIyB3aXRob3V0ICQyIG1lYW5zIHRoaXMgaXMgZm9yIHJlYWwgbmV0cm9vdCBjYXNlCistIyBv ciBpdCBpcyBmb3IgbWFudWFsbHkgYnJpbmcgdXAgbmV0d29yayBpZS4gZm9yIGtkdW1wIHNjcCB2 bWNvcmUKKy1QQVRIPS91c3Ivc2JpbjovdXNyL2Jpbjovc2JpbjovYmluCistCistY29tbWFuZCAt diBnZXRhcmcgPiAvZGV2L251bGwgfHwgLiAvbGliL2RyYWN1dC1saWIuc2gKKy1jb21tYW5kIC12 IGlwX3RvX3ZhciA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxpYi5zaAorLQorLSMgSHVoPyBO byAkMT8KKy1bIC16ICIkMSIgXSAmJiBleGl0IDEKKy0KKy0jICRuZXRpZiByZWFkcyBlYXNpZXIg dGhhbiAkMQorLW5ldGlmPSQxCistCistIyBsb29wYmFjayBpcyBhbHdheXMgaGFuZGxlZCB0aGUg c2FtZSB3YXkKKy1pZiBbICIkbmV0aWYiID0gImxvIiBdOyB0aGVuCistICAgIGlwIGxpbmsgc2V0 IGxvIHVwCistICAgIGlwIGFkZHIgYWRkIDEyNy4wLjAuMS84IGRldiBsbworLSAgICBleGl0IDAK Ky1maQorLQorLWRvX2RoY3BfcGFyYWxsZWwoKSB7CistICAgICMgZGhjbGllbnQtc2NyaXB0IHdp bGwgbWFyayB0aGUgbmV0aWYgdXAgYW5kIGdlbmVyYXRlIHRoZSBvbmxpbmUKKy0gICAgIyBldmVu dCBmb3IgbmZzcm9vdAorLSAgICAjIFhYWCBhZGQgLVYgdmVuZG9yIGNsYXNzIGFuZCBvcHRpb24g cGFyc2luZyBwZXIga2VybmVsCistCistICAgIFsgLWUgIi90bXAvZGhjbGllbnQuJG5ldGlmLnBp ZCIgXSAmJiByZXR1cm4gMAorLQorLSAgICBpZiAhIGlmYWNlX2hhc19jYXJyaWVyICIkbmV0aWYi OyB0aGVuCistICAgICAgICB3YXJuICJObyBjYXJyaWVyIGRldGVjdGVkIG9uIGludGVyZmFjZSAk bmV0aWYiCistICAgICAgICByZXR1cm4gMQorLSAgICBmaQorLQorLSAgICBib290aW50Zj0kKHJl YWRsaW5rICIkSUZORVRGSUxFIikKKy0gICAgaWYgWyAtbiAiJGJvb3RpbnRmIiBdICYmIFsgLWUg Ii90bXAvZGhjbGllbnQuJHtib290aW50Zn0ubGVhc2UiIF07IHRoZW4KKy0gICAgICAgIGluZm8g IkRIQ1AgYWxyZWFkeSBzdWNjZWVkZWQgZm9yICRib290aW50ZiwgZXhpdGluZyBmb3IgJG5ldGlm IgorLSAgICAgICAgcmV0dXJuIDEKKy0gICAgZmkKKy0KKy0gICAgaWYgWyAhIC1lIC9ydW4vTmV0 d29ya01hbmFnZXIvY29uZi5kLzEwLWRyYWN1dC1kaGNsaWVudC5jb25mIF07IHRoZW4KKy0gICAg ICAgIG1rZGlyIC1wIC9ydW4vTmV0d29ya01hbmFnZXIvY29uZi5kCistICAgICAgICBlY2hvICdb bWFpbl0nID4gL3J1bi9OZXR3b3JrTWFuYWdlci9jb25mLmQvMTAtZHJhY3V0LWRoY2xpZW50LmNv bmYKKy0gICAgICAgIGVjaG8gJ2RoY3A9ZGhjbGllbnQnID4+IC9ydW4vTmV0d29ya01hbmFnZXIv Y29uZi5kLzEwLWRyYWN1dC1kaGNsaWVudC5jb25mCistICAgIGZpCistCistICAgIC9zYmluL2Ro Y3AtbXVsdGkuc2ggIiRuZXRpZiIgIiRET19WTEFOIiAiJEAiICYKKy0gICAgcmV0dXJuIDAKKy19 CistCistIyBSdW4gZGhjbGllbnQKKy1kb19kaGNwKCkgeworLSAgICAjIGRoY2xpZW50LXNjcmlw dCB3aWxsIG1hcmsgdGhlIG5ldGlmIHVwIGFuZCBnZW5lcmF0ZSB0aGUgb25saW5lCistICAgICMg ZXZlbnQgZm9yIG5mc3Jvb3QKKy0gICAgIyBYWFggYWRkIC1WIHZlbmRvciBjbGFzcyBhbmQgb3B0 aW9uIHBhcnNpbmcgcGVyIGtlcm5lbAorLQorLSAgICBsb2NhbCBfQ09VTlQKKy0gICAgbG9jYWwg X3RpbWVvdXQKKy0gICAgbG9jYWwgX0RIQ1BSRVRSWQorLQorLSAgICBfQ09VTlQ9MAorLSAgICBf dGltZW91dD0kKGdldGFyZyByZC5uZXQudGltZW91dC5kaGNwPSkKKy0gICAgX0RIQ1BSRVRSWT0k KGdldGFyZ251bSAxIDEgMTAwMDAwMDAwMCByZC5uZXQuZGhjcC5yZXRyeT0pCistCistICAgIFsg LWUgIi90bXAvZGhjbGllbnQuJHtuZXRpZn0ucGlkIiBdICYmIHJldHVybiAwCistCistICAgIGlm ICEgaWZhY2VfaGFzX2NhcnJpZXIgIiRuZXRpZiI7IHRoZW4KKy0gICAgICAgIHdhcm4gIk5vIGNh cnJpZXIgZGV0ZWN0ZWQgb24gaW50ZXJmYWNlICRuZXRpZiIKKy0gICAgICAgIHJldHVybiAxCist ICAgIGZpCistCistICAgIGlmIFsgLW4gIiRfdGltZW91dCIgXTsgdGhlbgorLSAgICAgICAgaWYg ISAoZGhjbGllbnQgLS1oZWxwIDI+JjEgfCBncmVwIC1xcyAtRiAtLSAnLS10aW1lb3V0Jyk7IHRo ZW4KKy0gICAgICAgICAgICB3YXJuICJyZC5uZXQudGltZW91dC5kaGNwIGhhcyBubyBlZmZlY3Qg YmVjYXVzZSBkaGNsaWVudCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhlIC0tdGltZW91dCBvcHRpb24i CistICAgICAgICAgICAgdW5zZXQgX3RpbWVvdXQKKy0gICAgICAgIGZpCistICAgIGZpCistCist ICAgIGlmIFsgISAtZSAvcnVuL05ldHdvcmtNYW5hZ2VyL2NvbmYuZC8xMC1kcmFjdXQtZGhjbGll bnQuY29uZiBdOyB0aGVuCistICAgICAgICBta2RpciAtcCAvcnVuL05ldHdvcmtNYW5hZ2VyL2Nv bmYuZAorLSAgICAgICAgZWNobyAnW21haW5dJyA+IC9ydW4vTmV0d29ya01hbmFnZXIvY29uZi5k LzEwLWRyYWN1dC1kaGNsaWVudC5jb25mCistICAgICAgICBlY2hvICdkaGNwPWRoY2xpZW50JyA+ PiAvcnVuL05ldHdvcmtNYW5hZ2VyL2NvbmYuZC8xMC1kcmFjdXQtZGhjbGllbnQuY29uZgorLSAg ICBmaQorLQorLSAgICB3aGlsZSBbICIkX0NPVU5UIiAtbHQgIiRfREhDUFJFVFJZIiBdOyBkbwor LSAgICAgICAgaW5mbyAiU3RhcnRpbmcgZGhjcCBmb3IgaW50ZXJmYWNlICRuZXRpZiIKKy0gICAg ICAgIGRoY2xpZW50ICIkQCIgXAorLSAgICAgICAgICAgICR7X3RpbWVvdXQ6Ky0tdGltZW91dCAi JF90aW1lb3V0In0gXAorLSAgICAgICAgICAgIC1xIFwKKy0gICAgICAgICAgICAtMSBcCistICAg ICAgICAgICAgLWNmIC9ldGMvZGhjbGllbnQuY29uZiBcCistICAgICAgICAgICAgLXBmICIvdG1w L2RoY2xpZW50LiR7bmV0aWZ9LnBpZCIgXAorLSAgICAgICAgICAgIC1sZiAiL3RtcC9kaGNsaWVu dC4ke25ldGlmfS5sZWFzZSIgXAorLSAgICAgICAgICAgICIkbmV0aWYiIFwKKy0gICAgICAgICAg ICAmJiByZXR1cm4gMAorLSAgICAgICAgX0NPVU5UPSQoKF9DT1VOVCArIDEpKQorLSAgICAgICAg WyAiJF9DT1VOVCIgLWx0ICIkX0RIQ1BSRVRSWSIgXSAmJiBzbGVlcCAxCistICAgIGRvbmUKKy0g ICAgd2FybiAiZGhjcCBmb3IgaW50ZXJmYWNlICRuZXRpZiBmYWlsZWQiCistICAgICMgbnVrZSB0 aG9zZSBmaWxlcyBzaW5jZSB3ZSBmYWlsZWQ7IHdlIG1pZ2h0IHJldHJ5IGRoY3AgYWdhaW4gaWYg aXQncyBlLmcuCistICAgICMgYGlwPWRoY3AsZGhjcDZgIGFuZCB3ZSBjaGVjayBmb3IgdGhlIFBJ RCBmaWxlIGF0IHRoZSB0b3AKKy0gICAgcm0gLWYgL3RtcC9kaGNsaWVudC4iJG5ldGlmIi5waWQg L3RtcC9kaGNsaWVudC4iJG5ldGlmIi5sZWFzZQorLSAgICByZXR1cm4gMQorLX0KKy0KKy1sb2Fk X2lwdjYoKSB7CistICAgIFsgLWQgL3Byb2Mvc3lzL25ldC9pcHY2IF0gJiYgcmV0dXJuCistICAg IG1vZHByb2JlIGlwdjYKKy0gICAgaT0wCistICAgIHdoaWxlIFsgISAtZCAvcHJvYy9zeXMvbmV0 L2lwdjYgXTsgZG8KKy0gICAgICAgIGk9JCgoaSArIDEpKQorLSAgICAgICAgWyAkaSAtZ3QgMTAg XSAmJiBicmVhaworLSAgICAgICAgc2xlZXAgMC4xCistICAgIGRvbmUKKy19CistCistZG9faXB2 NmF1dG8oKSB7CistICAgIGxvY2FsIHJldAorLSAgICBsb2FkX2lwdjYKKy0gICAgZWNobyAwID4g L3Byb2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9mb3J3YXJkaW5nCistICAgIGVjaG8g MSA+IC9wcm9jL3N5cy9uZXQvaXB2Ni9jb25mLyIke25ldGlmfSIvYWNjZXB0X3JhCistICAgIGVj aG8gMSA+IC9wcm9jL3N5cy9uZXQvaXB2Ni9jb25mLyIke25ldGlmfSIvYWNjZXB0X3JlZGlyZWN0 cworLSAgICBsaW5rdXAgIiRuZXRpZiIKKy0gICAgd2FpdF9mb3JfaXB2Nl9hdXRvICIkbmV0aWYi CistICAgIHJldD0kPworLQorLSAgICBbIC1uICIkaG9zdG5hbWUiIF0gJiYgZWNobyAiZWNobyAk aG9zdG5hbWUgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1lIiA+ICIvdG1wL25ldC4ke25ldGlm fS5ob3N0bmFtZSIKKy0KKy0gICAgcmV0dXJuICIkcmV0IgorLX0KKy0KKy1kb19pcHY2bGluaygp IHsKKy0gICAgbG9jYWwgcmV0CistICAgIGxvYWRfaXB2NgorLSAgICBlY2hvIDAgPiAvcHJvYy9z eXMvbmV0L2lwdjYvY29uZi8iJHtuZXRpZn0iL2ZvcndhcmRpbmcKKy0gICAgZWNobyAwID4gL3By b2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9hY2NlcHRfcmEKKy0gICAgZWNobyAwID4g L3Byb2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9hY2NlcHRfcmVkaXJlY3RzCistICAg IGxpbmt1cCAiJG5ldGlmIgorLQorLSAgICBbIC1uICIkaG9zdG5hbWUiIF0gJiYgZWNobyAiZWNo byAkaG9zdG5hbWUgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1lIiA+ICIvdG1wL25ldC4ke25l dGlmfS5ob3N0bmFtZSIKKy0KKy0gICAgcmV0dXJuICIkcmV0IgorLX0KKy0KKy0jIEhhbmRsZSBz dGF0aWMgaXAgY29uZmlndXJhdGlvbgorLWRvX3N0YXRpYygpIHsKKy0gICAgc3RyZ2xvYmluICIk aXAiICcqOio6KicgJiYgbG9hZF9pcHY2CistCistICAgIGlmICEgaWZhY2VfaGFzX2NhcnJpZXIg IiRuZXRpZiI7IHRoZW4KKy0gICAgICAgIHdhcm4gIk5vIGNhcnJpZXIgZGV0ZWN0ZWQgb24gaW50 ZXJmYWNlICRuZXRpZiIKKy0gICAgICAgIHJldHVybiAxCistICAgIGVsaWYgISBsaW5rdXAgIiRu ZXRpZiI7IHRoZW4KKy0gICAgICAgIHdhcm4gIkNvdWxkIG5vdCBicmluZyBpbnRlcmZhY2UgJG5l dGlmIHVwISIKKy0gICAgICAgIHJldHVybiAxCistICAgIGZpCistCistICAgIGlwIHJvdXRlIGdl dCAiJGlwIiAyPiAvZGV2L251bGwgfCB7CistICAgICAgICByZWFkIC1yIGEgcmVzdAorLSAgICAg ICAgaWYgWyAiJGEiID0gImxvY2FsIiBdOyB0aGVuCistICAgICAgICAgICAgd2FybiAiTm90IGFz c2lnbmluZyAkaXAgdG8gaW50ZXJmYWNlICRuZXRpZiwgY2F1c2UgaXQgaXMgYWxyZWFkeSBhc3Np Z25lZCEiCistICAgICAgICAgICAgcmV0dXJuIDEKKy0gICAgICAgIGZpCistICAgICAgICByZXR1 cm4gMAorLSAgICB9IHx8IHJldHVybiAxCistCistICAgIFsgLW4gIiRtYWNhZGRyIiBdICYmIGlw IGxpbmsgc2V0IGFkZHJlc3MgIiRtYWNhZGRyIiBkZXYgIiRuZXRpZiIKKy0gICAgWyAtbiAiJG10 dSIgXSAmJiBpcCBsaW5rIHNldCBtdHUgIiRtdHUiIGRldiAiJG5ldGlmIgorLSAgICBpZiBzdHJn bG9iaW4gIiRpcCIgJyo6KjoqJzsgdGhlbgorLSAgICAgICAgIyBub3RlIG5vIGlwIGFkZHIgZmx1 c2ggZm9yIGlwdjYKKy0gICAgICAgIGlwIGFkZHIgYWRkICIkaXAvJG1hc2siICR7c3J2OitwZWVy ICIkc3J2In0gZGV2ICIkbmV0aWYiCistICAgICAgICBlY2hvIDAgPiAvcHJvYy9zeXMvbmV0L2lw djYvY29uZi8iJHtuZXRpZn0iL2ZvcndhcmRpbmcKKy0gICAgICAgIGVjaG8gMSA+IC9wcm9jL3N5 cy9uZXQvaXB2Ni9jb25mLyIke25ldGlmfSIvYWNjZXB0X3JhCistICAgICAgICBlY2hvIDEgPiAv cHJvYy9zeXMvbmV0L2lwdjYvY29uZi8iJHtuZXRpZn0iL2FjY2VwdF9yZWRpcmVjdHMKKy0gICAg ICAgIHdhaXRfZm9yX2lwdjZfZGFkICIkbmV0aWYiCistICAgIGVsc2UKKy0gICAgICAgIGlmIFsg LXogIiRzcnYiIF07IHRoZW4KKy0gICAgICAgICAgICBpZiBjb21tYW5kIC12IGFycGluZzIgPiAv ZGV2L251bGw7IHRoZW4KKy0gICAgICAgICAgICAgICAgaWYgYXJwaW5nMiAtcSAtQyAxIC1jIDIg LUkgIiRuZXRpZiIgLTAgIiRpcCI7IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgIHdhcm4gIkR1 cGxpY2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkaXAgZm9yIGludGVyZmFjZSAkbmV0aWYuIgor LSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEKKy0gICAgICAgICAgICAgICAgZmkKKy0gICAg ICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgIGlmICEgYXJwaW5nIC1mIC1xIC1EIC1jIDIg LUkgIiRuZXRpZiIgIiRpcCI7IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgIHdhcm4gIkR1cGxp Y2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkaXAgZm9yIGludGVyZmFjZSAkbmV0aWYuIgorLSAg ICAgICAgICAgICAgICAgICAgcmV0dXJuIDEKKy0gICAgICAgICAgICAgICAgZmkKKy0gICAgICAg ICAgICBmaQorLSAgICAgICAgZmkKKy0gICAgICAgIGlwIGFkZHIgZmx1c2ggZGV2ICIkbmV0aWYi CistICAgICAgICBpcCBhZGRyIGFkZCAiJGlwLyRtYXNrIiAke3NydjorcGVlciAiJHNydiJ9IGJy ZCArIGRldiAiJG5ldGlmIgorLSAgICBmaQorLQorLSAgICBbIC1uICIkZ3ciIF0gJiYgZWNobyAi aXAgcm91dGUgcmVwbGFjZSBkZWZhdWx0IHZpYSAnJGd3JyBkZXYgJyRuZXRpZiciID4gIi90bXAv bmV0LiRuZXRpZi5ndyIKKy0gICAgWyAtbiAiJGhvc3RuYW1lIiBdICYmIGVjaG8gImVjaG8gJyRo b3N0bmFtZScgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1lIiA+ICIvdG1wL25ldC4kbmV0aWYu aG9zdG5hbWUiCistCistICAgIHJldHVybiAwCistfQorLQorLWdldF92aWQoKSB7CistICAgIGNh c2UgIiQxIiBpbgorLSAgICAgICAgdmxhbiopCistICAgICAgICAgICAgZWNobyAiJHsxI3ZsYW59 IgorLSAgICAgICAgICAgIDs7CistICAgICAgICAqLiopCistICAgICAgICAgICAgZWNobyAiJHsx IyMqLn0iCistICAgICAgICAgICAgOzsKKy0gICAgZXNhYworLX0KKy0KKy0jIGNoZWNrLCBpZiB3 ZSBuZWVkIFZMQU4ncyBmb3IgdGhpcyBpbnRlcmZhY2UKKy1pZiBbIC16ICIkRE9fVkxBTl9QSFki IF0gJiYgWyAtZSAiL3RtcC92bGFuLiR7bmV0aWZ9LnBoeSIgXTsgdGhlbgorLSAgICB1bnNldCBE T19WTEFOCistICAgIE5PX0FVVE9fREhDUD15ZXMgRE9fVkxBTl9QSFk9eWVzIGlmdXAgIiRuZXRp ZiIKKy0gICAgbW9kcHJvYmUgLWIgLXEgODAyMXEKKy0KKy0gICAgZm9yIGkgaW4gL3RtcC92bGFu LiouIiR7bmV0aWZ9IjsgZG8KKy0gICAgICAgIFsgLWUgIiRpIiBdIHx8IGNvbnRpbnVlCistICAg ICAgICB1bnNldCB2bGFubmFtZQorLSAgICAgICAgdW5zZXQgcGh5ZGV2aWNlCistICAgICAgICAj IHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKKy0gICAgICAgIC4gIiRpIgorLSAgICAgICAgaWYg WyAtbiAiJHZsYW5uYW1lIiBdOyB0aGVuCistICAgICAgICAgICAgbGlua3VwICIkcGh5ZGV2aWNl IgorLSAgICAgICAgICAgIGlwIGxpbmsgYWRkIGRldiAiJHZsYW5uYW1lIiBsaW5rICIkcGh5ZGV2 aWNlIiB0eXBlIHZsYW4gaWQgIiQoZ2V0X3ZpZCAiJHZsYW5uYW1lIikiCistICAgICAgICAgICAg aWZ1cCAiJHZsYW5uYW1lIgorLSAgICAgICAgZmkKKy0gICAgZG9uZQorLSAgICBleGl0IDAKKy1m aQorLQorLSMgQ2hlY2ssIGlmIGludGVyZmFjZSBpcyBWTEFOIGludGVyZmFjZQorLWlmICEgWyAt ZSAiL3RtcC92bGFuLiR7bmV0aWZ9LnBoeSIgXTsgdGhlbgorLSAgICBmb3IgaSBpbiAiL3RtcC92 bGFuLiR7bmV0aWZ9Ii4qOyBkbworLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKKy0g ICAgICAgIGV4cG9ydCBET19WTEFOPXllcworLSAgICAgICAgYnJlYWsKKy0gICAgZG9uZQorLWZp CistCistIyBicmlkZ2UgdGhpcyBpbnRlcmZhY2U/CistaWYgWyAteiAiJE5PX0JSSURHRV9NQVNU RVIiIF07IHRoZW4KKy0gICAgZm9yIGkgaW4gL3RtcC9icmlkZ2UuKi5pbmZvOyBkbworLSAgICAg ICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKKy0gICAgICAgIHVuc2V0IGJyaWRnZXNsYXZlcwor LSAgICAgICAgdW5zZXQgYnJpZGdlbmFtZQorLSAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9 U0MxMDkwCistICAgICAgICAuICIkaSIKKy0gICAgICAgIGZvciBldGhuYW1lIGluICRicmlkZ2Vz bGF2ZXM7IGRvCistICAgICAgICAgICAgWyAiJG5ldGlmIiAhPSAiJGV0aG5hbWUiIF0gJiYgY29u dGludWUKKy0KKy0gICAgICAgICAgICBOT19CUklER0VfTUFTVEVSPXllcyBOT19BVVRPX0RIQ1A9 eWVzIGlmdXAgIiRldGhuYW1lIgorLSAgICAgICAgICAgIGxpbmt1cCAiJGV0aG5hbWUiCistICAg ICAgICAgICAgaWYgWyAhIC1lICIvdG1wL2JyaWRnZS4kYnJpZGdlbmFtZS51cCIgXTsgdGhlbgor LSAgICAgICAgICAgICAgICBpcCBsaW5rIGFkZCBuYW1lICIkYnJpZGdlbmFtZSIgdHlwZSBicmlk Z2UKKy0gICAgICAgICAgICAgICAgZWNobyAwID4gIi9zeXMvZGV2aWNlcy92aXJ0dWFsL25ldC8k YnJpZGdlbmFtZS9icmlkZ2UvZm9yd2FyZF9kZWxheSIKKy0gICAgICAgICAgICAgICAgOiA+ICIv dG1wL2JyaWRnZS4kYnJpZGdlbmFtZS51cCIKKy0gICAgICAgICAgICBmaQorLSAgICAgICAgICAg IGlwIGxpbmsgc2V0IGRldiAiJGV0aG5hbWUiIG1hc3RlciAiJGJyaWRnZW5hbWUiCistICAgICAg ICAgICAgaWZ1cCAiJGJyaWRnZW5hbWUiCistICAgICAgICAgICAgZXhpdCAwCistICAgICAgICBk b25lCistICAgIGRvbmUKKy1maQorLQorLSMgZW5zbGF2ZSB0aGlzIGludGVyZmFjZSB0byBib25k PworLWlmIFsgLXogIiROT19CT05EX01BU1RFUiIgXTsgdGhlbgorLSAgICBmb3IgaSBpbiAvdG1w L2JvbmQuKi5pbmZvOyBkbworLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKKy0gICAg ICAgIHVuc2V0IGJvbmRzbGF2ZXMKKy0gICAgICAgIHVuc2V0IGJvbmRuYW1lCistICAgICAgICAj IHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKKy0gICAgICAgIC4gIiRpIgorLSAgICAgICAgZm9y IHRlc3RzbGF2ZSBpbiAkYm9uZHNsYXZlczsgZG8KKy0gICAgICAgICAgICBbICIkbmV0aWYiICE9 ICIkdGVzdHNsYXZlIiBdICYmIGNvbnRpbnVlCistCistICAgICAgICAgICAgIyBhbHJlYWR5IHNl dHVwCistICAgICAgICAgICAgWyAtZSAiL3RtcC9ib25kLiRib25kbmFtZS51cCIgXSAmJiBleGl0 IDAKKy0KKy0gICAgICAgICAgICAjIHdhaXQgZm9yIGFsbCBzbGF2ZXMgdG8gc2hvdyB1cAorLSAg ICAgICAgICAgIGZvciBzbGF2ZSBpbiAkYm9uZHNsYXZlczsgZG8KKy0gICAgICAgICAgICAgICAg IyB0cnkgdG8gY3JlYXRlIHRoZSBzbGF2ZSAobWF5YmUgdmxhbiBvciBicmlkZ2UpCistICAgICAg ICAgICAgICAgIE5PX0JPTkRfTUFTVEVSPXllcyBOT19BVVRPX0RIQ1A9eWVzIGlmdXAgIiRzbGF2 ZSIKKy0KKy0gICAgICAgICAgICAgICAgaWYgISBpcCBsaW5rIHNob3cgZGV2ICIkc2xhdmUiID4g L2Rldi9udWxsIDI+JjE7IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgICMgd2FpdCBmb3IgdGhl IGxhc3Qgc2xhdmUgdG8gc2hvdyB1cAorLSAgICAgICAgICAgICAgICAgICAgZXhpdCAwCistICAg ICAgICAgICAgICAgIGZpCistICAgICAgICAgICAgZG9uZQorLQorLSAgICAgICAgICAgIG1vZHBy b2JlIC1xIC1iIGJvbmRpbmcKKy0gICAgICAgICAgICBlY2hvICIrJGJvbmRuYW1lIiA+IC9zeXMv Y2xhc3MvbmV0L2JvbmRpbmdfbWFzdGVycyAyPiAvZGV2L251bGwKKy0gICAgICAgICAgICBpcCBs aW5rIHNldCAiJGJvbmRuYW1lIiBkb3duCistCistICAgICAgICAgICAgIyBTdG9sZW4gZnJvbSBp ZnVwLWV0aAorLSAgICAgICAgICAgICMgYWRkIHRoZSBiaXRzIHRvIHNldHVwIGRyaXZlciBwYXJh bWV0ZXJzIGhlcmUKKy0gICAgICAgICAgICBmb3IgYXJnIGluICRib25kb3B0aW9uczsgZG8KKy0g ICAgICAgICAgICAgICAga2V5PSR7YXJnJSU9Kn0KKy0gICAgICAgICAgICAgICAgdmFsdWU9JHth cmcjIyo9fQorLSAgICAgICAgICAgICAgICAjICV7dmFsdWU6MDoxfSBpcyByZXBsYWNlZCB3aXRo IG5vbi1iYXNoIHNwZWNpZmljIGNvbnN0cnVjdAorLSAgICAgICAgICAgICAgICBpZiBbICIke2tl eX0iID0gImFycF9pcF90YXJnZXQiIF0gJiYgWyAiJHsjdmFsdWV9IiAhPSAiMCIgXSAmJiBbICIr JHt2YWx1ZSUlKyp9IiAhPSAiKyIgXTsgdGhlbgorLSAgICAgICAgICAgICAgICAgICAgT0xESUZT PSRJRlMKKy0gICAgICAgICAgICAgICAgICAgIElGUz0nLCcKKy0gICAgICAgICAgICAgICAgICAg IGZvciBhcnBfaXAgaW4gJHZhbHVlOyBkbworLSAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8g IiskYXJwX2lwIiA+ICIvc3lzL2NsYXNzL25ldC8ke2JvbmRuYW1lfS9ib25kaW5nLyRrZXkiCist ICAgICAgICAgICAgICAgICAgICBkb25lCistICAgICAgICAgICAgICAgICAgICBJRlM9JE9MRElG UworLSAgICAgICAgICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgICAgICBlY2hvICIkdmFs dWUiID4gIi9zeXMvY2xhc3MvbmV0LyR7Ym9uZG5hbWV9L2JvbmRpbmcvJGtleSIKKy0gICAgICAg ICAgICAgICAgZmkKKy0gICAgICAgICAgICBkb25lCistCistICAgICAgICAgICAgbGlua3VwICIk Ym9uZG5hbWUiCistCistICAgICAgICAgICAgZm9yIHNsYXZlIGluICRib25kc2xhdmVzOyBkbwor LSAgICAgICAgICAgICAgICBjYXQgIi9zeXMvY2xhc3MvbmV0LyRzbGF2ZS9hZGRyZXNzIiA+ICIv dG1wL25ldC4ke2JvbmRuYW1lfS4ke3NsYXZlfS5od2FkZHIiCistICAgICAgICAgICAgICAgIGlw IGxpbmsgc2V0ICIkc2xhdmUiIGRvd24KKy0gICAgICAgICAgICAgICAgZWNobyAiKyRzbGF2ZSIg PiAiL3N5cy9jbGFzcy9uZXQvJGJvbmRuYW1lL2JvbmRpbmcvc2xhdmVzIgorLSAgICAgICAgICAg ICAgICBsaW5rdXAgIiRzbGF2ZSIKKy0gICAgICAgICAgICBkb25lCistCistICAgICAgICAgICAg IyBTZXQgbXR1IG9uIGJvbmQgbWFzdGVyCistICAgICAgICAgICAgWyAtbiAiJGJvbmRtdHUiIF0g JiYgaXAgbGluayBzZXQgbXR1ICIkYm9uZG10dSIgZGV2ICIkYm9uZG5hbWUiCistCistICAgICAg ICAgICAgIyBhZGQgdGhlIGJpdHMgdG8gc2V0dXAgdGhlIG5lZWRlZCBwb3N0IGVuc2xhdmVtZW50 IHBhcmFtZXRlcnMKKy0gICAgICAgICAgICBmb3IgYXJnIGluICRib25kb3B0aW9uczsgZG8KKy0g ICAgICAgICAgICAgICAga2V5PSR7YXJnJSU9Kn0KKy0gICAgICAgICAgICAgICAgdmFsdWU9JHth cmcjIyo9fQorLSAgICAgICAgICAgICAgICBpZiBbICIke2tleX0iID0gInByaW1hcnkiIF07IHRo ZW4KKy0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiR2YWx1ZSIgPiAiL3N5cy9jbGFzcy9uZXQv JHtib25kbmFtZX0vYm9uZGluZy8ka2V5IgorLSAgICAgICAgICAgICAgICBmaQorLSAgICAgICAg ICAgIGRvbmUKKy0KKy0gICAgICAgICAgICA6ID4gIi90bXAvYm9uZC4kYm9uZG5hbWUudXAiCist CistICAgICAgICAgICAgTk9fQk9ORF9NQVNURVI9eWVzIGlmdXAgIiRib25kbmFtZSIKKy0gICAg ICAgICAgICBleGl0ICQ/CistICAgICAgICBkb25lCistICAgIGRvbmUKKy1maQorLQorLWlmIFsg LXogIiROT19URUFNX01BU1RFUiIgXTsgdGhlbgorLSAgICBmb3IgaSBpbiAvdG1wL3RlYW0uKi5p bmZvOyBkbworLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKKy0gICAgICAgIHVuc2V0 IHRlYW1tYXN0ZXIKKy0gICAgICAgIHVuc2V0IHRlYW1zbGF2ZXMKKy0gICAgICAgICMgc2hlbGxj aGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgLiAiJGkiCistICAgICAgICBmb3IgdGVzdHNs YXZlIGluICR0ZWFtc2xhdmVzOyBkbworLSAgICAgICAgICAgIFsgIiRuZXRpZiIgIT0gIiR0ZXN0 c2xhdmUiIF0gJiYgY29udGludWUKKy0KKy0gICAgICAgICAgICBbIC1lICIvdG1wL3RlYW0uJHRl YW1tYXN0ZXIudXAiIF0gJiYgZXhpdCAwCistCistICAgICAgICAgICAgIyB3YWl0IGZvciBhbGwg c2xhdmVzIHRvIHNob3cgdXAKKy0gICAgICAgICAgICBmb3Igc2xhdmUgaW4gJHRlYW1zbGF2ZXM7 IGRvCistICAgICAgICAgICAgICAgICMgdHJ5IHRvIGNyZWF0ZSB0aGUgc2xhdmUgKG1heWJlIHZs YW4gb3IgYnJpZGdlKQorLSAgICAgICAgICAgICAgICBOT19URUFNX01BU1RFUj15ZXMgTk9fQVVU T19ESENQPXllcyBpZnVwICIkc2xhdmUiCistCistICAgICAgICAgICAgICAgIGlmICEgaXAgbGlu ayBzaG93IGRldiAiJHNsYXZlIiA+IC9kZXYvbnVsbCAyPiYxOyB0aGVuCistICAgICAgICAgICAg ICAgICAgICAjIHdhaXQgZm9yIHRoZSBsYXN0IHNsYXZlIHRvIHNob3cgdXAKKy0gICAgICAgICAg ICAgICAgICAgIGV4aXQgMAorLSAgICAgICAgICAgICAgICBmaQorLSAgICAgICAgICAgIGRvbmUK Ky0KKy0gICAgICAgICAgICBpZiBbICEgLWUgIi90bXAvdGVhbS4kdGVhbW1hc3Rlci51cCIgXTsg dGhlbgorLSAgICAgICAgICAgICAgICAjIFdlIHNoYWxsIG9ubHkgYnJpbmcgdXAgdGhvc2UgX2Nh bl8gY29tZSB1cAorLSAgICAgICAgICAgICAgICAjIGluIGNhc2Ugb2Ygc29tZSBzbGF2ZSBpcyBn b25lIGluIGFjdGl2ZS1iYWNrdXAgbW9kZQorLSAgICAgICAgICAgICAgICB3b3JraW5nX3NsYXZl cz0iIgorLSAgICAgICAgICAgICAgICBmb3Igc2xhdmUgaW4gJHRlYW1zbGF2ZXM7IGRvCistICAg ICAgICAgICAgICAgICAgICB0ZWFtZGN0bCAiJHt0ZWFtbWFzdGVyfSIgcG9ydCBwcmVzZW50ICIk e3NsYXZlfSIgMj4gL2Rldi9udWxsIFwKKy0gICAgICAgICAgICAgICAgICAgICAgICAmJiBjb250 aW51ZQorLSAgICAgICAgICAgICAgICAgICAgaXAgbGluayBzZXQgZGV2ICIkc2xhdmUiIHVwIDI+ IC9kZXYvbnVsbAorLSAgICAgICAgICAgICAgICAgICAgaWYgd2FpdF9mb3JfaWZfdXAgIiRzbGF2 ZSI7IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgICAgICB3b3JraW5nX3NsYXZlcz0iJHdvcmtp bmdfc2xhdmVzJHNsYXZlICIKKy0gICAgICAgICAgICAgICAgICAgIGZpCistICAgICAgICAgICAg ICAgIGRvbmUKKy0gICAgICAgICAgICAgICAgIyBEbyBub3QgYWRkIHNsYXZlcyBub3cKKy0gICAg ICAgICAgICAgICAgdGVhbWQgLWQgLVUgLW4gLU4gLXQgIiR0ZWFtbWFzdGVyIiAtZiAiL2V0Yy90 ZWFtZC8ke3RlYW1tYXN0ZXJ9LmNvbmYiCistICAgICAgICAgICAgICAgIGZvciBzbGF2ZSBpbiAk d29ya2luZ19zbGF2ZXM7IGRvCistICAgICAgICAgICAgICAgICAgICAjIHRlYW0gcmVxdWlyZXMg dGhlIHNsYXZlcyB0byBiZSBkb3duIGJlZm9yZSBqb2luaW5nIHRlYW0KKy0gICAgICAgICAgICAg ICAgICAgIGlwIGxpbmsgc2V0IGRldiAiJHNsYXZlIiBkb3duCistICAgICAgICAgICAgICAgICAg ICAoCistICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQgVEVBTV9QT1JUX0NPTkZJRworLSAg ICAgICAgICAgICAgICAgICAgICAgIHJlYWQgLXIgX2h3YWRkciA8ICIvc3lzL2NsYXNzL25ldC8k c2xhdmUvYWRkcmVzcyIKKy0gICAgICAgICAgICAgICAgICAgICAgICBfc3ViY2hhbm5lbHM9JChp ZmFjZV9nZXRfc3ViY2hhbm5lbHMgIiRzbGF2ZSIpCistICAgICAgICAgICAgICAgICAgICAgICAg aWYgWyAtbiAiJF9od2FkZHIiIF0gJiYgWyAtZSAiL2V0Yy9zeXNjb25maWcvbmV0d29yay1zY3Jp cHRzL21hYy0ke19od2FkZHJ9LmNvbmYiIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC4gIi9ldGMvc3lzY29uZmlnL25ldHdvcmstc2NyaXB0cy9tYWMtJHtfaHdhZGRyfS5j b25mIgorLSAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgWyAtbiAiJF9zdWJjaGFubmVscyIg XSAmJiBbIC1lICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvY2N3LSR7X3N1YmNoYW5u ZWxzfS5jb25mIiBdOyB0aGVuCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgc2hlbGxj aGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAuICIvZXRj L3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvY2N3LSR7X3N1YmNoYW5uZWxzfS5jb25mIgorLSAg ICAgICAgICAgICAgICAgICAgICAgIGVsaWYgWyAtZSAiL2V0Yy9zeXNjb25maWcvbmV0d29yay1z Y3JpcHRzL2lmY2ZnLSR7c2xhdmV9IiBdOyB0aGVuCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAuICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvaWZjZmctJHtzbGF2ZX0iCist ICAgICAgICAgICAgICAgICAgICAgICAgZmkKKy0KKy0gICAgICAgICAgICAgICAgICAgICAgICBp ZiBbIC1uICIke1RFQU1fUE9SVF9DT05GSUd9IiBdOyB0aGVuCistICAgICAgICAgICAgICAgICAg ICAgICAgICAgIC91c3IvYmluL3RlYW1kY3RsICIke3RlYW1tYXN0ZXJ9IiBwb3J0IGNvbmZpZyB1 cGRhdGUgIiR7c2xhdmV9IiAiJHtURUFNX1BPUlRfQ09ORklHfSIKKy0gICAgICAgICAgICAgICAg ICAgICAgICBmaQorLSAgICAgICAgICAgICAgICAgICAgKQorLSAgICAgICAgICAgICAgICAgICAg dGVhbWRjdGwgIiR0ZWFtbWFzdGVyIiBwb3J0IGFkZCAiJHNsYXZlIgorLSAgICAgICAgICAgICAg ICBkb25lCistCistICAgICAgICAgICAgICAgIGlwIGxpbmsgc2V0IGRldiAiJHRlYW1tYXN0ZXIi IHVwCistCistICAgICAgICAgICAgICAgIDogPiAiL3RtcC90ZWFtLiR0ZWFtbWFzdGVyLnVwIgor LSAgICAgICAgICAgICAgICBOT19URUFNX01BU1RFUj15ZXMgaWZ1cCAiJHRlYW1tYXN0ZXIiCist ICAgICAgICAgICAgICAgIGV4aXQgJD8KKy0gICAgICAgICAgICBmaQorLSAgICAgICAgZG9uZQor LSAgICBkb25lCistZmkKKy0KKy0jIGFsbCBzeW50aGV0aWMgaW50ZXJmYWNlcyBkb25lLi4gbm93 IGNoZWNrIGlmIHRoZSBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlCistaWYgISBpcCBsaW5rIHNob3cg ZGV2ICIkbmV0aWYiID4gL2Rldi9udWxsIDI+JjE7IHRoZW4KKy0gICAgZXhpdCAxCistZmkKKy0K Ky0jIGRpc2FibGUgbWFudWFsIGlmdXAgd2hpbGUgbmV0cm9vdCBpcyBzZXQgZm9yIHNpbXBsaWZ5 aW5nIG91ciBsb2dpYworLSMgaW4gbmV0cm9vdCBjYXNlIHdlIHByZWZlciBuZXRyb290IHRvIGJy aW5ndXAgJG5ldGlmIGF1dG9tYXRpY2FsbHkKKy1bIC1uICIkMiIgXSAmJiBbICIkMiIgPSAiLW0i IF0gJiYgWyAteiAiJG5ldHJvb3QiIF0gJiYgbWFudWFsdXA9IiQyIgorLQorLWlmIFsgLW4gIiRt YW51YWx1cCIgXTsgdGhlbgorLSAgICA6ID4gIi90bXAvbmV0LiRuZXRpZi5tYW51YWx1cCIKKy0g ICAgcm0gLWYgIi90bXAvbmV0LiR7bmV0aWZ9LmRpZC1zZXR1cCIKKy1lbHNlCistICAgIFsgLWUg Ii90bXAvbmV0LiR7bmV0aWZ9LmRpZC1zZXR1cCIgXSAmJiBleGl0IDAKKy0gICAgWyAteiAiJERP X1ZMQU4iIF0gXAorLSAgICAgICAgJiYgWyAtZSAiL3N5cy9jbGFzcy9uZXQvJG5ldGlmL2FkZHJl c3MiIF0gXAorLSAgICAgICAgJiYgWyAtZSAiL3RtcC9uZXQuJChjYXQgIi9zeXMvY2xhc3MvbmV0 LyRuZXRpZi9hZGRyZXNzIikuZGlkLXNldHVwIiBdICYmIGV4aXQgMAorLWZpCistCistIyBTcGVj aWZpYyBjb25maWd1cmF0aW9uLCBzcGluIHRocm91Z2ggdGhlIGtlcm5lbCBjb21tYW5kIGxpbmUK Ky0jIGxvb2tpbmcgZm9yIGlwPSBsaW5lcworLWZvciBwIGluICQoZ2V0YXJncyBpcD0pOyBkbwor LSAgICBpcF90b192YXIgIiRwIgorLSAgICAjIHNraXAgaWJmdAorLSAgICBbICIkYXV0b2NvbmYi ID0gImliZnQiIF0gJiYgY29udGludWUKKy0KKy0gICAgY2FzZSAiJGRldiIgaW4KKy0gICAgICAg ID8/Oj8/Oj8/Oj8/Oj8/Oj8/KSAjIE1BQyBhZGRyZXNzCistICAgICAgICAgICAgX2Rldj0kKGlm YWNlX2Zvcl9tYWMgIiRkZXYiKQorLSAgICAgICAgICAgIFsgLW4gIiRfZGV2IiBdICYmIGRldj0i JF9kZXYiCistICAgICAgICAgICAgOzsKKy0gICAgICAgID8/LT8/LT8/LT8/LT8/LT8/KSAjIE1B QyBhZGRyZXNzIGluIEJPT1RJRiBmb3JtCistICAgICAgICAgICAgX2Rldj0kKGlmYWNlX2Zvcl9t YWMgIiQoZml4X2Jvb3RpZiAiJGRldiIpIikKKy0gICAgICAgICAgICBbIC1uICIkX2RldiIgXSAm JiBkZXY9IiRfZGV2IgorLSAgICAgICAgICAgIDs7CistICAgIGVzYWMKKy0KKy0gICAgIyBJZiB0 aGlzIG9wdGlvbiBpc24ndCBkaXJlY3RlZCBhdCBvdXIgaW50ZXJmYWNlLCBza2lwIGl0CistICAg IGlmIFsgLW4gIiRkZXYiIF07IHRoZW4KKy0gICAgICAgIGlmIFsgIiRkZXYiICE9ICIkbmV0aWYi IF07IHRoZW4KKy0gICAgICAgICAgICBbICEgLWUgIi9zeXMvY2xhc3MvbmV0LyRkZXYiIF0gXAor LSAgICAgICAgICAgICAgICAmJiB3YXJuICJOZXR3b3JrIGludGVyZmFjZSAnJGRldicgZG9lcyBu b3QgZXhpc3QhIgorLSAgICAgICAgICAgIGNvbnRpbnVlCistICAgICAgICBmaQorLSAgICBlbHNl CistICAgICAgICBpZmFjZV9pc19lbnNsYXZlZCAiJG5ldGlmIiAmJiBjb250aW51ZQorLSAgICBm aQorLQorLSAgICAjIFN0b3JlIGNvbmZpZyBmb3IgbGF0ZXIgdXNlCistICAgIGZvciBpIGluIGlw IHNydiBndyBtYXNrIGhvc3RuYW1lIG1hY2FkZHIgbXR1IGRuczEgZG5zMjsgZG8KKy0gICAgICAg IGV2YWwgJ1sgIiQnJGknIiBdICYmIGVjaG8gJyRpJz0iJCckaSciJworLSAgICBkb25lID4gIi90 bXAvbmV0LiRuZXRpZi5vdmVycmlkZSIKKy0KKy0gICAgZm9yIGF1dG9vcHQgaW4gJChzdHJfcmVw bGFjZSAiJGF1dG9jb25mIiAiLCIgIiAiKTsgZG8KKy0gICAgICAgIGNhc2UgJGF1dG9vcHQgaW4K Ky0gICAgICAgICAgICBkaGNwIHwgb24gfCBhbnkpCistICAgICAgICAgICAgICAgIGRvX2RoY3Ag LTQKKy0gICAgICAgICAgICAgICAgOzsKKy0gICAgICAgICAgICBzaW5nbGUtZGhjcCkKKy0gICAg ICAgICAgICAgICAgZG9fZGhjcF9wYXJhbGxlbCAtNAorLSAgICAgICAgICAgICAgICBleGl0IDAK Ky0gICAgICAgICAgICAgICAgOzsKKy0gICAgICAgICAgICBkaGNwNikKKy0gICAgICAgICAgICAg ICAgbG9hZF9pcHY2CistICAgICAgICAgICAgICAgIGRvX2RoY3AgLTYKKy0gICAgICAgICAgICAg ICAgOzsKKy0gICAgICAgICAgICBhdXRvNikKKy0gICAgICAgICAgICAgICAgZG9faXB2NmF1dG8K Ky0gICAgICAgICAgICAgICAgOzsKKy0gICAgICAgICAgICBlaXRoZXI2KQorLSAgICAgICAgICAg ICAgICBkb19pcHY2YXV0byB8fCBkb19kaGNwIC02CistICAgICAgICAgICAgICAgIDs7CistICAg ICAgICAgICAgbGluazYpCistICAgICAgICAgICAgICAgIGRvX2lwdjZsaW5rCistICAgICAgICAg ICAgICAgIDs7CistICAgICAgICAgICAgKikKKy0gICAgICAgICAgICAgICAgZG9fc3RhdGljCist ICAgICAgICAgICAgICAgIDs7CistICAgICAgICBlc2FjCistICAgIGRvbmUKKy0gICAgcmV0PSQ/ CistCistICAgICMgc2V0dXAgbmFtZXNlcnZlcgorLSAgICBmb3IgcyBpbiAiJGRuczEiICIkZG5z MiIgJChnZXRhcmdzIG5hbWVzZXJ2ZXIpOyBkbworLSAgICAgICAgWyAtbiAiJHMiIF0gfHwgY29u dGludWUKKy0gICAgICAgIGVjaG8gIm5hbWVzZXJ2ZXIgJHMiID4+ICIvdG1wL25ldC4kbmV0aWYu cmVzb2x2LmNvbmYiCistICAgIGRvbmUKKy0KKy0gICAgaWYgWyAkcmV0IC1lcSAwIF07IHRoZW4K Ky0gICAgICAgIDogPiAiL3RtcC9uZXQuJHtuZXRpZn0udXAiCistCistICAgICAgICBpZiBbIC16 ICIkRE9fVkxBTiIgXSAmJiBbIC1lICIvc3lzL2NsYXNzL25ldC8ke25ldGlmfS9hZGRyZXNzIiBd OyB0aGVuCistICAgICAgICAgICAgOiA+ICIvdG1wL25ldC4kKGNhdCAiL3N5cy9jbGFzcy9uZXQv JHtuZXRpZn0vYWRkcmVzcyIpLnVwIgorLSAgICAgICAgZmkKKy0KKy0gICAgICAgICMgYW5kIGZp bmFsbHksIGZpbmlzaCBpbnRlcmZhY2Ugc2V0IHVwIGlmIHRoZXJlIGlzbid0IGFscmVhZHkgYSBz Y3JpcHQKKy0gICAgICAgICMgdG8gZG8gc28gKHdoaWNoIGlzIHRoZSBjYXNlIGluIHRoZSBkaGNw IHBhdGgpCistICAgICAgICBpZiBbICEgLWUgIiRob29rZGlyL2luaXRxdWV1ZS9zZXR1cF9uZXRf JG5ldGlmLnNoIiBdOyB0aGVuCistICAgICAgICAgICAgc2V0dXBfbmV0ICIkbmV0aWYiCistICAg ICAgICAgICAgc291cmNlX2hvb2sgaW5pdHF1ZXVlL29ubGluZSAiJG5ldGlmIgorLSAgICAgICAg ICAgIGlmIFsgLXogIiRtYW51YWx1cCIgXTsgdGhlbgorLSAgICAgICAgICAgICAgICAvc2Jpbi9u ZXRyb290ICIkbmV0aWYiCistICAgICAgICAgICAgZmkKKy0gICAgICAgIGZpCistCistICAgICAg ICBleGl0ICRyZXQKKy0gICAgZmkKKy1kb25lCistCistIyBubyBpcCBvcHRpb24gZGlyZWN0ZWQg YXQgb3VyIGludGVyZmFjZT8KKy1pZiBbIC16ICIkTk9fQVVUT19ESENQIiBdICYmIFsgISAtZSAi L3RtcC9uZXQuJHtuZXRpZn0udXAiIF07IHRoZW4KKy0gICAgcmV0PTEKKy0gICAgaWYgWyAtZSAv dG1wL25ldC5ib290ZGV2IF07IHRoZW4KKy0gICAgICAgIHJlYWQgLXIgQk9PVERFViA8IC90bXAv bmV0LmJvb3RkZXYKKy0gICAgICAgIGlmIFsgIiRuZXRpZiIgPSAiJEJPT1RERVYiIF0gfHwgWyAi JEJPT1RERVYiID0gIiQoY2F0ICIvc3lzL2NsYXNzL25ldC8ke25ldGlmfS9hZGRyZXNzIikiIF07 IHRoZW4KKy0gICAgICAgICAgICBkb19kaGNwCistICAgICAgICAgICAgcmV0PSQ/CistICAgICAg ICBmaQorLSAgICBlbHNlCistICAgICAgICAjIE5vIGlwIGxpbmVzLCBubyBib290ZGV2IC0+IGRl ZmF1bHQgdG8gZGhjcAorLSAgICAgICAgaXA9JChnZXRhcmcgaXApCistCistICAgICAgICBpZiBn ZXRhcmdzICdpcD1kaGNwNicgPiAvZGV2L251bGwgfHwgWyAteiAiJGlwIiBdICYmIFsgIiRuZXRy b290IiA9ICJkaGNwNiIgXTsgdGhlbgorLSAgICAgICAgICAgIGxvYWRfaXB2NgorLSAgICAgICAg ICAgIGRvX2RoY3AgLTYKKy0gICAgICAgICAgICByZXQ9JD8KKy0gICAgICAgIGZpCistICAgICAg ICBpZiBnZXRhcmdzICdpcD1kaGNwJyA+IC9kZXYvbnVsbCB8fCBbIC16ICIkaXAiIF0gJiYgWyAi JG5ldHJvb3QiICE9ICJkaGNwNiIgXTsgdGhlbgorLSAgICAgICAgICAgIGRvX2RoY3AgLTQKKy0g ICAgICAgICAgICByZXQ9JD8KKy0gICAgICAgIGZpCistICAgIGZpCistCistICAgIGZvciBzIGlu ICQoZ2V0YXJncyBuYW1lc2VydmVyKTsgZG8KKy0gICAgICAgIFsgLW4gIiRzIiBdIHx8IGNvbnRp bnVlCistICAgICAgICBlY2hvICJuYW1lc2VydmVyICRzIiA+PiAiL3RtcC9uZXQuJG5ldGlmLnJl c29sdi5jb25mIgorLSAgICBkb25lCistCistICAgIGlmIFsgIiRyZXQiIC1lcSAwIF0gJiYgWyAt biAiJChscyAiL3RtcC9sZWFzZWluZm8uJHtuZXRpZn0iKiAyPiAvZGV2L251bGwpIiBdOyB0aGVu CistICAgICAgICA6ID4gIi90bXAvbmV0LiR7bmV0aWZ9LmRpZC1zZXR1cCIKKy0gICAgICAgIGlm IFsgLWUgIi9zeXMvY2xhc3MvbmV0LyR7bmV0aWZ9L2FkZHJlc3MiIF07IHRoZW4KKy0gICAgICAg ICAgICA6ID4gIi90bXAvbmV0LiQoY2F0ICIvc3lzL2NsYXNzL25ldC8ke25ldGlmfS9hZGRyZXNz IikuZGlkLXNldHVwIgorLSAgICAgICAgZmkKKy0gICAgZmkKKy1maQorLQorLWV4aXQgMAorZGlm ZiAtLWdpdCBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2tpbGwtZGhjbGllbnQuc2ggYi9t b2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9raWxsLWRoY2xpZW50LnNoCitkZWxldGVkIGZpbGUg bW9kZSAxMDA3NTUKK2luZGV4IDllZDYxNWZkLi4wMDAwMDAwMAorLS0tIGEvbW9kdWxlcy5kLzM1 bmV0d29yay1sZWdhY3kva2lsbC1kaGNsaWVudC5zaAorKysrIC9kZXYvbnVsbAorQEAgLTEsMTUg KzAsMCBAQAorLSMhL2Jpbi9zaAorLQorLWZvciBmIGluIC90bXAvZGhjbGllbnQuKi5waWQ7IGRv CistICAgIFsgLWUgIiRmIiBdIHx8IGNvbnRpbnVlCistICAgIHJlYWQgLXIgUElEIDwgIiRmIgor LSAgICBraWxsICIkUElEIiA+IC9kZXYvbnVsbCAyPiYxCistZG9uZQorLQorLXNsZWVwIDAuMQor LQorLWZvciBmIGluIC90bXAvZGhjbGllbnQuKi5waWQ7IGRvCistICAgIFsgLWUgIiRmIiBdIHx8 IGNvbnRpbnVlCistICAgIHJlYWQgLXIgUElEIDwgIiRmIgorLSAgICBraWxsIC05ICIkUElEIiA+ IC9kZXYvbnVsbCAyPiYxCistZG9uZQorZGlmZiAtLWdpdCBhL21vZHVsZXMuZC8zNW5ldHdvcmst bGVnYWN5L21vZHVsZS1zZXR1cC5zaCBiL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L21vZHVs ZS1zZXR1cC5zaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCA0NjNiMmI5OC4uMDAw MDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L21vZHVsZS1zZXR1cC5zaAor KysrIC9kZXYvbnVsbAorQEAgLTEsOTAgKzAsMCBAQAorLSMhL2Jpbi9iYXNoCistCistIyBjYWxs ZWQgYnkgZHJhY3V0CistY2hlY2soKSB7CistICAgIHJlcXVpcmVfYmluYXJpZXMgaXAgZGhjbGll bnQgc2VkIGF3ayBncmVwIHBncmVwIHRyIGV4cHIgfHwgcmV0dXJuIDEKKy0gICAgcmVxdWlyZV9h bnlfYmluYXJ5IGFycGluZyBhcnBpbmcyIHx8IHJldHVybiAxCistCistICAgIHJldHVybiAyNTUK Ky19CistCistIyBjYWxsZWQgYnkgZHJhY3V0CistZGVwZW5kcygpIHsKKy0gICAgZWNobyBuZXQt bGliIGtlcm5lbC1uZXR3b3JrLW1vZHVsZXMgaW5pdHF1ZXVlCistICAgIHJldHVybiAwCistfQor LQorLSMgY2FsbGVkIGJ5IGRyYWN1dAorLWluc3RhbGwoKSB7CistICAgICMgQWRkaW5nIGRlZmF1 bHQgbGluayBhbmQgKGlmIGV4aXN0cykgOTgtZGVmYXVsdC1tYWMtbm9uZS5saW5rCistICAgIGlm IGRyYWN1dF9tb2R1bGVfaW5jbHVkZWQgInN5c3RlbWQiOyB0aGVuCistICAgICAgICBpbnN0X211 bHRpcGxlIC1vIFwKKy0gICAgICAgICAgICAiJHtzeXN0ZW1kbmV0d29ya30vOTktZGVmYXVsdC5s aW5rIiBcCistICAgICAgICAgICAgIiR7c3lzdGVtZG5ldHdvcmt9Lzk4LWRlZmF1bHQtbWFjLW5v bmUubGluayIKKy0gICAgICAgIFtbICRob3N0b25seSBdXSAmJiBpbnN0X211bHRpcGxlIC1IIC1v ICIke3N5c3RlbWRuZXR3b3JrY29uZmRpcn0vKi5saW5rIgorLSAgICBmaQorLQorLSAgICBpbnN0 X211bHRpcGxlIGlwIGRoY2xpZW50IHNlZCBhd2sgZ3JlcCBwZ3JlcCB0ciBleHByCistCistICAg IGluc3RfbXVsdGlwbGUgLW8gYXJwaW5nIGFycGluZzIKKy0gICAgc3Ryc3RyICIkKGFycGluZyAy PiYxKSIgIkFSUGluZyAyIiAmJiBtdiAiJGluaXRkaXIvYmluL2FycGluZyIgIiRpbml0ZGlyL2Jp bi9hcnBpbmcyIgorLQorLSAgICBpbnN0X211bHRpcGxlIC1vIHBpbmcgcGluZzYKKy0gICAgaW5z dF9tdWx0aXBsZSAtbyB0ZWFtZCB0ZWFtZGN0bCB0ZWFtbmwKKy0gICAgaW5zdF9zaW1wbGUgL2V0 Yy9saWJubC9jbGFzc2lkCistICAgIGluc3Rfc2NyaXB0ICIkbW9kZGlyL2lmdXAuc2giICIvc2Jp bi9pZnVwIgorLSAgICBpbnN0X3NjcmlwdCAiJG1vZGRpci9kaGNwLW11bHRpLnNoIiAiL3NiaW4v ZGhjcC1tdWx0aS5zaCIKKy0gICAgaW5zdF9zY3JpcHQgIiRtb2RkaXIvZGhjbGllbnQtc2NyaXB0 LnNoIiAiL3NiaW4vZGhjbGllbnQtc2NyaXB0IgorLSAgICBpbnN0X3NpbXBsZSAtSCAiL2V0Yy9k aGNsaWVudC5jb25mIgorLSAgICBjYXQgIiRtb2RkaXIvZGhjbGllbnQuY29uZiIgPj4gIiR7aW5p dGRpcn0vZXRjL2RoY2xpZW50LmNvbmYiCistICAgIGluc3RfaG9vayBwcmUtdWRldiA2MCAiJG1v ZGRpci9uZXQtZ2VucnVsZXMuc2giCistICAgIGluc3RfaG9vayBjbWRsaW5lIDkyICIkbW9kZGly L3BhcnNlLWliZnQuc2giCistICAgIGluc3RfaG9vayBjbWRsaW5lIDk1ICIkbW9kZGlyL3BhcnNl LXZsYW4uc2giCistICAgIGluc3RfaG9vayBjbWRsaW5lIDk2ICIkbW9kZGlyL3BhcnNlLWJvbmQu c2giCistICAgIGluc3RfaG9vayBjbWRsaW5lIDk2ICIkbW9kZGlyL3BhcnNlLXRlYW0uc2giCist ICAgIGluc3RfaG9vayBjbWRsaW5lIDk3ICIkbW9kZGlyL3BhcnNlLWJyaWRnZS5zaCIKKy0gICAg aW5zdF9ob29rIGNtZGxpbmUgOTggIiRtb2RkaXIvcGFyc2UtaXAtb3B0cy5zaCIKKy0gICAgaW5z dF9ob29rIGNtZGxpbmUgOTkgIiRtb2RkaXIvcGFyc2UtaWZuYW1lLnNoIgorLSAgICBpbnN0X2hv b2sgY2xlYW51cCAxMCAiJG1vZGRpci9raWxsLWRoY2xpZW50LnNoIgorLQorLSAgICAjIGluc3Rh bGwgYWxsIGNvbmZpZyBmaWxlcyBmb3IgdGVhbWluZworLSAgICB1bnNldCBURUFNX01BU1RFUgor LSAgICB1bnNldCBURUFNX0NPTkZJRworLSAgICB1bnNldCBURUFNX1BPUlRfQ09ORklHCistICAg IHVuc2V0IEhXQUREUgorLSAgICB1bnNldCBTVUJDSEFOTkVMUworLSAgICBmb3IgaSBpbiAvZXRj L3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvaWZjZmctKjsgZG8KKy0gICAgICAgIFsgLWUgIiRp IiBdIHx8IGNvbnRpbnVlCistICAgICAgICBjYXNlICIkaSIgaW4KKy0gICAgICAgICAgICAqfiB8 ICouYmFrIHwgKi5vcmlnIHwgKi5ycG1uZXcgfCAqLnJwbW9yaWcgfCAqLnJwbXNhdmUpCistICAg ICAgICAgICAgICAgIGNvbnRpbnVlCistICAgICAgICAgICAgICAgIDs7CistICAgICAgICBlc2Fj CistICAgICAgICAoCistICAgICAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCist ICAgICAgICAgICAgLiAiJGkiCistICAgICAgICAgICAgaWYgISBbICIke09OQk9PVH0iID0gIm5v IiBdIHx8IFsgIiR7T05CT09UfSIgPSAiTk8iIF0gXAorLSAgICAgICAgICAgICAgICAmJiBbIC1u ICIke1RFQU1fTUFTVEVSfSR7VEVBTV9DT05GSUd9JHtURUFNX1BPUlRfQ09ORklHfSIgXTsgdGhl bgorLSAgICAgICAgICAgICAgICBpZiBbIC1uICIkVEVBTV9DT05GSUciIF0gJiYgWyAtbiAiJERF VklDRSIgXTsgdGhlbgorLSAgICAgICAgICAgICAgICAgICAgbWtkaXIgLXAgIiRpbml0ZGlyIi9l dGMvdGVhbWQKKy0gICAgICAgICAgICAgICAgICAgIHByaW50ZiAtLSAiJXMiICIkVEVBTV9DT05G SUciID4gIiRpbml0ZGlyL2V0Yy90ZWFtZC8ke0RFVklDRX0uY29uZiIKKy0gICAgICAgICAgICAg ICAgZWxpZiBbIC1uICIkVEVBTV9QT1JUX0NPTkZJRyIgXTsgdGhlbgorLSAgICAgICAgICAgICAg ICAgICAgaW5zdF9zaW1wbGUgIiRpIgorLQorLSAgICAgICAgICAgICAgICAgICAgSFdBRERSPSIk KGVjaG8gIiRIV0FERFIiIHwgc2VkICd5L0FCQ0RFRi9hYmNkZWYvJykiCistICAgICAgICAgICAg ICAgICAgICBpZiBbIC1uICIkSFdBRERSIiBdOyB0aGVuCistICAgICAgICAgICAgICAgICAgICAg ICAgbG5fciAiJGkiICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvbWFjLSR7SFdBRERS fS5jb25mIgorLSAgICAgICAgICAgICAgICAgICAgZmkKKy0KKy0gICAgICAgICAgICAgICAgICAg IFNVQkNIQU5ORUxTPSIkKGVjaG8gIiRTVUJDSEFOTkVMUyIgfCBzZWQgJ3kvQUJDREVGL2FiY2Rl Zi8nKSIKKy0gICAgICAgICAgICAgICAgICAgIGlmIFsgLW4gIiRTVUJDSEFOTkVMUyIgXTsgdGhl bgorLSAgICAgICAgICAgICAgICAgICAgICAgIGxuX3IgIiRpIiAiL2V0Yy9zeXNjb25maWcvbmV0 d29yay1zY3JpcHRzL2Njdy0ke1NVQkNIQU5ORUxTfS5jb25mIgorLSAgICAgICAgICAgICAgICAg ICAgZmkKKy0gICAgICAgICAgICAgICAgZmkKKy0gICAgICAgICAgICBmaQorLSAgICAgICAgKQor LSAgICBkb25lCistCistICAgIGluc3RfbGliZGlyX2ZpbGUgeyJ0bHMvJERSQUNVVF9BUkNILyIs dGxzLywiJERSQUNVVF9BUkNILyIsfSJsaWJuc3NfZG5zLnNvLioiIFwKKy0gICAgICAgIHsidGxz LyREUkFDVVRfQVJDSC8iLHRscy8sIiREUkFDVVRfQVJDSC8iLH0ibGlibnNzX21kbnM0X21pbmlt YWwuc28uKiIKKy19CitkaWZmIC0tZ2l0IGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvbmV0 LWdlbnJ1bGVzLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvbmV0LWdlbnJ1bGVzLnNo CitkZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKK2luZGV4IGNkNWE2NjlhLi4wMDAwMDAwMAorLS0t IGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvbmV0LWdlbnJ1bGVzLnNoCisrKysgL2Rldi9u dWxsCitAQCAtMSwxMjUgKzAsMCBAQAorLSMhL2Jpbi9zaAorLQorLWdldGFyZ2Jvb2wgMCByZC5u ZWVkbmV0ICYmIE5FRURORVQ9MQorLQorLSMgRG9uJ3QgY29udGludWUgaWYgd2UgZG9uJ3QgbmVl ZCBuZXR3b3JrCistaWYgWyAteiAiJG5ldHJvb3QiIF0gJiYgWyAhIC1lICIvdG1wL25ldC5pZmFj ZXMiIF0gJiYgWyAiJE5FRURORVQiICE9ICIxIiBdOyB0aGVuCistICAgIHJldHVybgorLWZpCist CistY29tbWFuZCAtdiBmaXhfYm9vdGlmID4gL2Rldi9udWxsIHx8IC4gL2xpYi9uZXQtbGliLnNo CistCistIyBXcml0ZSB1ZGV2IHJ1bGVzCisteworLSAgICAjIGJyaWRnZTogYXR0ZW1wdCBvbmx5 IHRoZSBkZWZpbmVkIGludGVyZmFjZQorLSAgICBmb3IgaSBpbiAvdG1wL2JyaWRnZS4qLmluZm87 IGRvCistICAgICAgICBbIC1lICIkaSIgXSB8fCBjb250aW51ZQorLSAgICAgICAgdW5zZXQgYnJp ZGdlc2xhdmVzCistICAgICAgICB1bnNldCBicmlkZ2VuYW1lCistICAgICAgICAjIHNoZWxsY2hl Y2sgZGlzYWJsZT1TQzEwOTAKKy0gICAgICAgIC4gIiRpIgorLSAgICAgICAgUkFXX0lGQUNFUz0i JFJBV19JRkFDRVMgJGJyaWRnZXNsYXZlcyIKKy0gICAgICAgIE1BU1RFUl9JRkFDRVM9IiRNQVNU RVJfSUZBQ0VTICRicmlkZ2VuYW1lIgorLSAgICBkb25lCistCistICAgICMgYm9uZDogYXR0ZW1w dCBvbmx5IHRoZSBkZWZpbmVkIGludGVyZmFjZSAob3ZlcnJpZGUgYnJpZGdlIGRlZmluZXMpCist ICAgIGZvciBpIGluIC90bXAvYm9uZC4qLmluZm87IGRvCistICAgICAgICBbIC1lICIkaSIgXSB8 fCBjb250aW51ZQorLSAgICAgICAgdW5zZXQgYm9uZHNsYXZlcworLSAgICAgICAgdW5zZXQgYm9u ZG5hbWUKKy0gICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgLiAi JGkiCistICAgICAgICAjIEl0IGlzIGVub3VnaCB0byBmaXJlIHVwIG9ubHkgb25lCistICAgICAg ICBSQVdfSUZBQ0VTPSIkUkFXX0lGQUNFUyAkYm9uZHNsYXZlcyIKKy0gICAgICAgIE1BU1RFUl9J RkFDRVM9IiRNQVNURVJfSUZBQ0VTICR7Ym9uZG5hbWV9IgorLSAgICBkb25lCistCistICAgIGZv ciBpIGluIC90bXAvdGVhbS4qLmluZm87IGRvCistICAgICAgICBbIC1lICIkaSIgXSB8fCBjb250 aW51ZQorLSAgICAgICAgdW5zZXQgdGVhbXNsYXZlcworLSAgICAgICAgdW5zZXQgdGVhbW1hc3Rl cgorLSAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCistICAgICAgICAuICIkaSIK Ky0gICAgICAgIFJBV19JRkFDRVM9IiRSQVdfSUZBQ0VTICR7dGVhbXNsYXZlc30iCistICAgICAg ICBNQVNURVJfSUZBQ0VTPSIkTUFTVEVSX0lGQUNFUyAke3RlYW1tYXN0ZXJ9IgorLSAgICBkb25l CistCistICAgIGZvciBpIGluIC90bXAvdmxhbi4qLnBoeTsgZG8KKy0gICAgICAgIFsgLWUgIiRp IiBdIHx8IGNvbnRpbnVlCistICAgICAgICB1bnNldCBwaHlkZXZpY2UKKy0gICAgICAgICMgc2hl bGxjaGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgLiAiJGkiCistICAgICAgICBSQVdfSUZB Q0VTPSIkUkFXX0lGQUNFUyAkcGh5ZGV2aWNlIgorLSAgICAgICAgZm9yIGogaW4gL3RtcC92bGFu LioiLiR7cGh5ZGV2aWNlfSI7IGRvCistICAgICAgICAgICAgWyAtZSAiJGoiIF0gfHwgY29udGlu dWUKKy0gICAgICAgICAgICB1bnNldCB2bGFubmFtZQorLSAgICAgICAgICAgICMgc2hlbGxjaGVj ayBkaXNhYmxlPVNDMTA5MAorLSAgICAgICAgICAgIC4gIiRqIgorLSAgICAgICAgICAgIE1BU1RF Ul9JRkFDRVM9IiRNQVNURVJfSUZBQ0VTICR7dmxhbm5hbWV9IgorLSAgICAgICAgZG9uZQorLSAg ICBkb25lCistCistICAgIE1BU1RFUl9JRkFDRVM9IiQodHJpbSAiJE1BU1RFUl9JRkFDRVMiKSIK Ky0gICAgUkFXX0lGQUNFUz0iJCh0cmltICIkUkFXX0lGQUNFUyIpIgorLQorLSAgICBpZiBbIC16 ICIkSUZBQ0VTIiBdOyB0aGVuCistICAgICAgICBbIC1lIC90bXAvbmV0LmlmYWNlcyBdICYmIHJl YWQgLXIgSUZBQ0VTIDwgL3RtcC9uZXQuaWZhY2VzCistICAgIGZpCistCistICAgIGlmIFsgLWUg L3RtcC9uZXQuYm9vdGRldiBdOyB0aGVuCistICAgICAgICByZWFkIC1yIGJvb3RkZXYgPCAvdG1w L25ldC5ib290ZGV2CistICAgIGZpCistCistICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMjAx NgorLSAgICBpZnVwPScvc2Jpbi9pZnVwICRuYW1lJworLQorLSAgICBydW5jbWQ9IlJVTis9XCIv c2Jpbi9pbml0cXVldWUgLS1uYW1lIGlmdXAtXCRuYW1lIC0tdW5pcXVlIC0tb25ldGltZSAkaWZ1 cFwiIgorLQorLSAgICAjIFdlIGhhdmUgc29tZSBzcGVjaWZpYyBpbnRlcmZhY2VzIHRvIGhhbmRs ZQorLSAgICBpZiBbIC1uICIke1JBV19JRkFDRVN9JHtJRkFDRVN9IiBdOyB0aGVuCistICAgICAg ICBlY2hvICdTVUJTWVNURU0hPSJuZXQiLCBHT1RPPSJuZXRfZW5kIicKKy0gICAgICAgIGVjaG8g J0FDVElPTiE9ImFkZHxjaGFuZ2V8bW92ZSIsIEdPVE89Im5ldF9lbmQiJworLSAgICAgICAgZm9y IGlmYWNlIGluICRJRkFDRVMgJFJBV19JRkFDRVM7IGRvCistICAgICAgICAgICAgY2FzZSAiJGlm YWNlIiBpbgorLSAgICAgICAgICAgICAgICA/Pzo/Pzo/Pzo/Pzo/Pzo/PykgIyBNQUMgYWRkcmVz cworLSAgICAgICAgICAgICAgICAgICAgY29uZD0iQVRUUnthZGRyZXNzfT09XCIkaWZhY2VcIiIK Ky0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiRjb25kLCAkcnVuY21kLCBHT1RPPVwibmV0X2Vu ZFwiIgorLSAgICAgICAgICAgICAgICAgICAgOzsKKy0gICAgICAgICAgICAgICAgPz8tPz8tPz8t Pz8tPz8tPz8pICMgTUFDIGFkZHJlc3MgaW4gQk9PVElGIGZvcm0KKy0gICAgICAgICAgICAgICAg ICAgIGNvbmQ9IkFUVFJ7YWRkcmVzc309PVwiJChmaXhfYm9vdGlmICIkaWZhY2UiKVwiIgorLSAg ICAgICAgICAgICAgICAgICAgZWNobyAiJGNvbmQsICRydW5jbWQsIEdPVE89XCJuZXRfZW5kXCIi CistICAgICAgICAgICAgICAgICAgICA7OworLSAgICAgICAgICAgICAgICAqKSAjIGFuIGludGVy ZmFjZSBuYW1lCistICAgICAgICAgICAgICAgICAgICBjb25kPSJFTlZ7SU5URVJGQUNFfT09XCIk aWZhY2VcIiIKKy0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiRjb25kLCAkcnVuY21kLCBHT1RP PVwibmV0X2VuZFwiIgorLSAgICAgICAgICAgICAgICAgICAgY29uZD0iTkFNRT09XCIkaWZhY2Vc IiIKKy0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiRjb25kLCAkcnVuY21kLCBHT1RPPVwibmV0 X2VuZFwiIgorLSAgICAgICAgICAgICAgICAgICAgOzsKKy0gICAgICAgICAgICBlc2FjCistICAg ICAgICAgICAgIyBUaGUgR09UTyBwcmV2ZW50cyB1cyBmcm9tIHRyeWluZyB0byBpZnVwIHRoZSBz YW1lIGRldmljZSB0d2ljZQorLSAgICAgICAgZG9uZQorLSAgICAgICAgZWNobyAnTEFCRUw9Im5l dF9lbmQiJworLQorLSAgICAgICAgZm9yIGlmYWNlIGluICRJRkFDRVM7IGRvCistICAgICAgICAg ICAgaWYgWyAiJGJvb3RkZXYiID0gIiRpZmFjZSIgXSB8fCBbICIkTkVFRE5FVCIgPSAiMSIgXTsg dGhlbgorLSAgICAgICAgICAgICAgICBpZiBbIC1uICIkbmV0cm9vdCIgXSAmJiBbIC1uICIke0RS QUNVVF9TWVNURU1ELX0iIF07IHRoZW4KKy0gICAgICAgICAgICAgICAgICAgIGVjaG8gInN5c3Rl bWN0bCBpcy1hY3RpdmUgaW5pdHJkLXJvb3QtZGV2aWNlLnRhcmdldCB8fCBbIC1mIC90bXAvbmV0 LiR7aWZhY2V9LmRpZC1zZXR1cCBdIgorLSAgICAgICAgICAgICAgICBlbHNlCistICAgICAgICAg ICAgICAgICAgICBlY2hvICJbIC1mIC90bXAvbmV0LiR7aWZhY2V9LmRpZC1zZXR1cCBdIgorLSAg ICAgICAgICAgICAgICBmaSA+ICIkaG9va2RpciIvaW5pdHF1ZXVlL2ZpbmlzaGVkL3dhaXQtIiRp ZmFjZSIuc2gKKy0gICAgICAgICAgICBmaQorLSAgICAgICAgZG9uZQorLSAgICAjIERlZmF1bHQ6 IFdlIGRvbid0IGtub3cgdGhlIGludGVyZmFjZSB0byB1c2UsIGhhbmRsZSBhbGwKKy0gICAgIyBG aXhtZTogd2FpdGluZyBmb3IgdGhlIGludGVyZmFjZSBhcyB3ZWxsLgorLSAgICBlbHNlCistICAg ICAgICBjb25kPSdBQ1RJT049PSJhZGQiLCBTVUJTWVNURU09PSJuZXQiLCBFTlZ7REVWVFlQRX0h PSJ3bGFufHd3YW4iJworLSAgICAgICAgIyBpZiB5b3UgY2hhbmdlIHRoZSBuYW1lIG9mICI5MS1k ZWZhdWx0LW5ldC5ydWxlcyIsIGFsc28gY2hhbmdlIG1vZHVsZXMuZC9bMC05XVswLTldY21zL2Nt c3NldHVwLnNoCistICAgICAgICBlY2hvICIkY29uZCwgJHJ1bmNtZCIgPiAvZXRjL3VkZXYvcnVs ZXMuZC85MS1kZWZhdWx0LW5ldC5ydWxlcworLSAgICAgICAgaWYgWyAiJE5FRURORVQiID0gIjEi IF07IHRoZW4KKy0gICAgICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzIwMTYKKy0gICAg ICAgICAgICBlY2hvICdmb3IgaSBpbiAvdG1wL25ldC4qLmRpZC1zZXR1cDsgZG8gWyAtZiAiJGki IF0gICYmIGV4aXQgMDsgZG9uZTsgZXhpdCAxJyA+ICIkaG9va2RpciIvaW5pdHF1ZXVlL2Zpbmlz aGVkL3dhaXQtbmV0d29yay5zaAorLSAgICAgICAgZmkKKy0gICAgZmkKKy0KKy0gICAgIyBpZiB5 b3UgY2hhbmdlIHRoZSBuYW1lIG9mICI5MC1uZXQucnVsZXMiLCBhbHNvIGNoYW5nZSBtb2R1bGVz LmQvWzAtOV1bMC05XWNtcy9jbXNzZXR1cC5zaAorLX0gPiAvZXRjL3VkZXYvcnVsZXMuZC85MC1u ZXQucnVsZXMKK2RpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1i b25kLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYm9uZC5zaAorZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCBiYTMwYTNiYy4uMDAwMDAwMDAKKy0tLSBhL21vZHVs ZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWJvbmQuc2gKKysrKyAvZGV2L251bGwKK0BAIC0x LDc2ICswLDAgQEAKKy0jIS9iaW4vc2gKKy0jCistIyBGb3JtYXQ6CistIyAgICAgICBib25kPTxi b25kbmFtZT5bOjxib25kc2xhdmVzPls6PG9wdGlvbnM+Wzo8bXR1Pl1dXQorLSMKKy0jICAgICAg IGJvbmRzbGF2ZXMgaXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwaHlzaWNhbCAoZXRoZXJu ZXQpIGludGVyZmFjZXMKKy0jICAgICAgIG9wdGlvbnMgaXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlz dCBvbiBib25kaW5nIG9wdGlvbnMgKG1vZGluZm8gYm9uZGluZyBmb3IgZGV0YWlscykgaW4gZm9y bWF0IGNvbXBhdGlibGUgd2l0aCBpbml0c2NyaXB0cworLSMgICAgICAgaWYgb3B0aW9ucyBpbmNs dWRlIG11bHRpLXZhbHVlZCBhcnBfaXBfdGFyZ2V0IG9wdGlvbiwgdGhlbiBpdHMgdmFsdWVzIHNo b3VsZCBiZSBzZXBhcmF0ZWQgYnkgc2VtaWNvbG9uLgorLSMKKy0jICAgICAgIGJvbmQgd2l0aG91 dCBwYXJhbWV0ZXJzIGFzc3VtZXMgYm9uZD1ib25kMDpldGgwLGV0aDE6bW9kZT1iYWxhbmNlLXJy CistIworLSMgICAgICAgaWYgdGhlIG10dSBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgc2V0IG9u IHRoZSBib25kIG1hc3RlcgorLSMKKy0KKy0jIFdlIHRyYW5zbGF0ZSBsaXN0IG9mIHNsYXZlcyB0 byBzcGFjZS1zZXBhcmF0ZWQgaGVyZSB0byBtYWtlIGl0IGVhc2llciB0byBsb29wIG92ZXIgdGhl bSBpbiBpZnVwCistIyBEaXR0byBmb3IgYm9uZGluZyBvcHRpb25zCistcGFyc2Vib25kKCkgewor LSAgICBsb2NhbCB2PSIkezF9IjoKKy0gICAgc2V0IC0tCistICAgIHdoaWxlIFsgLW4gIiR2IiBd OyBkbworLSAgICAgICAgc2V0IC0tICIkQCIgIiR7diUlOip9IgorLSAgICAgICAgdj0ke3YjKjp9 CistICAgIGRvbmUKKy0KKy0gICAgY2FzZSAkIyBpbgorLSAgICAgICAgMCkKKy0gICAgICAgICAg ICBib25kbmFtZT1ib25kMAorLSAgICAgICAgICAgIGJvbmRzbGF2ZXM9ImV0aDAgZXRoMSIKKy0g ICAgICAgICAgICA7OworLSAgICAgICAgMSkKKy0gICAgICAgICAgICBib25kbmFtZT0kMQorLSAg ICAgICAgICAgIGJvbmRzbGF2ZXM9ImV0aDAgZXRoMSIKKy0gICAgICAgICAgICA7OworLSAgICAg ICAgMikKKy0gICAgICAgICAgICBib25kbmFtZT0kMQorLSAgICAgICAgICAgIGJvbmRzbGF2ZXM9 JChzdHJfcmVwbGFjZSAiJDIiICIsIiAiICIpCistICAgICAgICAgICAgOzsKKy0gICAgICAgIDMp CistICAgICAgICAgICAgYm9uZG5hbWU9JDEKKy0gICAgICAgICAgICBib25kc2xhdmVzPSQoc3Ry X3JlcGxhY2UgIiQyIiAiLCIgIiAiKQorLSAgICAgICAgICAgIGJvbmRvcHRpb25zPSQoc3RyX3Jl cGxhY2UgIiQzIiAiLCIgIiAiKQorLSAgICAgICAgICAgIDs7CistICAgICAgICA0KQorLSAgICAg ICAgICAgIGJvbmRuYW1lPSQxCistICAgICAgICAgICAgYm9uZHNsYXZlcz0kKHN0cl9yZXBsYWNl ICIkMiIgIiwiICIgIikKKy0gICAgICAgICAgICBib25kb3B0aW9ucz0kKHN0cl9yZXBsYWNlICIk MyIgIiwiICIgIikKKy0gICAgICAgICAgICBib25kbXR1PSQ0CistICAgICAgICAgICAgOzsKKy0g ICAgICAgICopIGRpZSAiYm9uZD0gcmVxdWlyZXMgemVybyB0byBmb3VyIHBhcmFtZXRlcnMiIDs7 CistICAgIGVzYWMKKy19CistCistIyBQYXJzZSBib25kIGZvciBib25kbmFtZSwgYm9uZHNsYXZl cywgYm9uZG1vZGUsIGJvbmRvcHRpb25zIGFuZCBib25kbXR1CistZm9yIGJvbmQgaW4gJChnZXRh cmdzIGJvbmQ9KTsgZG8KKy0gICAgdW5zZXQgYm9uZG5hbWUKKy0gICAgdW5zZXQgYm9uZHNsYXZl cworLSAgICB1bnNldCBib25kb3B0aW9ucworLSAgICB1bnNldCBib25kbXR1CistICAgIGlmIFsg IiRib25kIiAhPSAiYm9uZCIgXTsgdGhlbgorLSAgICAgICAgcGFyc2Vib25kICIkYm9uZCIKKy0g ICAgZmkKKy0gICAgIyBTaW1wbGUgZGVmYXVsdCBib25kCistICAgIGlmIFsgLXogIiRib25kbmFt ZSIgXTsgdGhlbgorLSAgICAgICAgYm9uZG5hbWU9Ym9uZDAKKy0gICAgICAgIGJvbmRzbGF2ZXM9 ImV0aDAgZXRoMSIKKy0gICAgZmkKKy0gICAgIyBNYWtlIGl0IHN1aXRhYmxlIGZvciBpbml0c2Ny aXB0cyBleHBvcnQKKy0gICAgYm9uZG9wdGlvbnM9JChzdHJfcmVwbGFjZSAiJGJvbmRvcHRpb25z IiAiOyIgIiwiKQorLQorLSAgICB7CistICAgICAgICBlY2hvICJib25kbmFtZT0kYm9uZG5hbWUi CistICAgICAgICBlY2hvICJib25kc2xhdmVzPVwiJGJvbmRzbGF2ZXNcIiIKKy0gICAgICAgIGVj aG8gImJvbmRvcHRpb25zPVwiJGJvbmRvcHRpb25zXCIiCistICAgICAgICBlY2hvICJib25kbXR1 PVwiJGJvbmRtdHVcIiIKKy0gICAgfSA+ICIvdG1wL2JvbmQuJHtib25kbmFtZX0uaW5mbyIKKy1k b25lCitkaWZmIC0tZ2l0IGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdl LnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdlLnNoCitkZWxldGVk IGZpbGUgbW9kZSAxMDA3NTUKK2luZGV4IGQzMzFmOWQ3Li4wMDAwMDAwMAorLS0tIGEvbW9kdWxl cy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdlLnNoCisrKysgL2Rldi9udWxsCitAQCAt MSw0OSArMCwwIEBACistIyEvYmluL3NoCistIworLSMgRm9ybWF0OgorLSMgICAgICAgYnJpZGdl PTxicmlkZ2VuYW1lPjo8YnJpZGdlc2xhdmVzPgorLSMKKy0jICAgICAgIDxicmlkZ2VzbGF2ZXM+ IGlzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGh5c2ljYWwgKGV0aGVybmV0KSBpbnRlcmZh Y2VzCistIyAgICAgICBicmlkZ2Ugd2l0aG91dCBwYXJhbWV0ZXJzIGFzc3VtZXMgYnJpZGdlPWJy MDpldGgwCistIworLQorLXBhcnNlYnJpZGdlKCkgeworLSAgICBsb2NhbCB2PSIkezF9IjoKKy0g ICAgc2V0IC0tCistICAgIHdoaWxlIFsgLW4gIiR2IiBdOyBkbworLSAgICAgICAgc2V0IC0tICIk QCIgIiR7diUlOip9IgorLSAgICAgICAgdj0ke3YjKjp9CistICAgIGRvbmUKKy0gICAgY2FzZSAk IyBpbgorLSAgICAgICAgMCkKKy0gICAgICAgICAgICBicmlkZ2VuYW1lPWJyMAorLSAgICAgICAg ICAgIGJyaWRnZXNsYXZlcz0kaWZhY2UKKy0gICAgICAgICAgICA7OworLSAgICAgICAgMSkgZGll ICJicmlkZ2U9IHJlcXVpcmVzIHR3byBwYXJhbWV0ZXJzIiA7OworLSAgICAgICAgMikKKy0gICAg ICAgICAgICBicmlkZ2VuYW1lPSQxCistICAgICAgICAgICAgYnJpZGdlc2xhdmVzPSQoc3RyX3Jl cGxhY2UgIiQyIiAiLCIgIiAiKQorLSAgICAgICAgICAgIDs7CistICAgICAgICAqKSBkaWUgImJy aWRnZT0gcmVxdWlyZXMgdHdvIHBhcmFtZXRlcnMiIDs7CistICAgIGVzYWMKKy19CistCistIyBQ YXJzZSBicmlkZ2UgZm9yIGJyaWRnZW5hbWUgYW5kIGJyaWRnZXNsYXZlcworLWZvciBicmlkZ2Ug aW4gJChnZXRhcmdzIGJyaWRnZT0pOyBkbworLSAgICB1bnNldCBicmlkZ2VuYW1lCistICAgIHVu c2V0IGJyaWRnZXNsYXZlcworLSAgICBpZmFjZT1ldGgwCistICAgICMgUmVhZCBicmlkZ2U9IHBh cmFtZXRlcnMgaWYgdGhleSBleGlzdAorLSAgICBpZiBbICIkYnJpZGdlIiAhPSAiYnJpZGdlIiBd OyB0aGVuCistICAgICAgICBwYXJzZWJyaWRnZSAiJGJyaWRnZSIKKy0gICAgZmkKKy0gICAgIyBT aW1wbGUgZGVmYXVsdCBicmlkZ2UKKy0gICAgaWYgWyAteiAiJGJyaWRnZW5hbWUiIF07IHRoZW4K Ky0gICAgICAgIGJyaWRnZW5hbWU9YnIwCistICAgICAgICBicmlkZ2VzbGF2ZXM9JGlmYWNlCist ICAgIGZpCistICAgIHsKKy0gICAgICAgIGVjaG8gImJyaWRnZW5hbWU9JGJyaWRnZW5hbWUiCist ICAgICAgICBlY2hvICJicmlkZ2VzbGF2ZXM9XCIkYnJpZGdlc2xhdmVzXCIiCistICAgIH0gPiAi L3RtcC9icmlkZ2UuJHticmlkZ2VuYW1lfS5pbmZvIgorLWRvbmUKK2RpZmYgLS1naXQgYS9tb2R1 bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pYmZ0LnNoIGIvbW9kdWxlcy5kLzM1bmV0d29y ay1sZWdhY3kvcGFyc2UtaWJmdC5zaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCAx OTM3ZjEzOC4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNl LWliZnQuc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDEwICswLDAgQEAKKy0jIS9iaW4vc2gKKy0K Ky1jb21tYW5kIC12IGdldGFyZyA+IC9kZXYvbnVsbCB8fCAuIC9saWIvZHJhY3V0LWxpYi5zaAor LWNvbW1hbmQgLXYgaWJmdF90b19jbWRsaW5lID4gL2Rldi9udWxsIHx8IC4gL2xpYi9uZXQtbGli LnNoCistCistaWYgZ2V0YXJnYm9vbCAwIHJkLmlzY3NpLmliZnQgLWQgImlwPWliZnQiOyB0aGVu CistICAgIG1vZHByb2JlIC1iIC1xIGlzY3NpX2Jvb3Rfc3lzZnMgMj4gL2Rldi9udWxsCistICAg IG1vZHByb2JlIC1iIC1xIGlzY3NpX2liZnQKKy0gICAgaWJmdF90b19jbWRsaW5lCistZmkKK2Rp ZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pZm5hbWUuc2ggYi9t b2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pZm5hbWUuc2gKK2RlbGV0ZWQgZmlsZSBt b2RlIDEwMDc1NQoraW5kZXggYmU3YjZhZDYuLjAwMDAwMDAwCistLS0gYS9tb2R1bGVzLmQvMzVu ZXR3b3JrLWxlZ2FjeS9wYXJzZS1pZm5hbWUuc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDI0ICsw LDAgQEAKKy0jIS9iaW4vc2gKKy0jCistIyBGb3JtYXQ6CistIyAgICAgICBpZm5hbWU9PGludGVy ZmFjZT46PG1hYz4KKy0jCistIyBOb3RlIGxldHRlcnMgaW4gdGhlIG1hY2FkZHJlc3MgbXVzdCBi ZSBsb3dlcmNhc2UhCistIworLSMgRXhhbXBsZXM6CistIyBpZm5hbWU9ZXRoMDo0YTozZjo0Yzow NDpmODpkNworLSMKKy0jIE5vdGUgd2hlbiB1c2luZyBpZm5hbWU9IHRvIGdldCBwZXJzaXN0ZW50 IGludGVyZmFjZSBuYW1lcywgeW91IG11c3Qgc3BlY2lmeQorLSMgYW4gaWZuYW1lPSBhcmd1bWVu dCBmb3IgZWFjaCBpbnRlcmZhY2UgdXNlZCBpbiBhbiBpcD0gb3IgZmNvZT0gYXJndW1lbnQKKy0K Ky0jIGNoZWNrIGlmIHRoZXJlIGFyZSBhbnkgaWZuYW1lIHBhcmFtZXRlcnMKKy1pZiAhIGdldGFy ZyBpZm5hbWU9ID4gL2Rldi9udWxsOyB0aGVuCistICAgIHJldHVybgorLWZpCistCistY29tbWFu ZCAtdiBwYXJzZV9pZm5hbWVfb3B0cyA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxpYi5zaAor LQorLSMgQ2hlY2sgaWZuYW1lPSBsaW5lcworLWZvciBwIGluICQoZ2V0YXJncyBpZm5hbWU9KTsg ZG8KKy0gICAgcGFyc2VfaWZuYW1lX29wdHMgIiRwIgorLWRvbmUKK2RpZmYgLS1naXQgYS9tb2R1 bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pcC1vcHRzLnNoIGIvbW9kdWxlcy5kLzM1bmV0 d29yay1sZWdhY3kvcGFyc2UtaXAtb3B0cy5zaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Citp bmRleCBlZWE3MWU0MC4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L3BhcnNlLWlwLW9wdHMuc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDE1MSArMCwwIEBACistIyEv YmluL3NoCistIworLSMgRm9ybWF0OgorLSMgICAgICAgaXA9W2RoY3B8b258YW55fHNpbmdsZS1k aGNwXQorLSMKKy0jICAgICAgIGlwPTxpbnRlcmZhY2U+OltkaGNwfG9ufGFueV1bOls8bXR1Pl1b OjxtYWNhZGRyPl1dCistIworLSMgICAgICAgaXA9PGNsaWVudC1JUC1udW1iZXI+OjxzZXJ2ZXIt SVAtbnVtYmVyPjo8Z2F0ZXdheS1JUC1udW1iZXI+OjxuZXRtYXNrPjo8Y2xpZW50LWhvc3RuYW1l Pjo8aW50ZXJmYWNlPjp7ZGhjcHxvbnxhbnl8bm9uZXxvZmZ9WzpbPG10dT5dWzo8bWFjYWRkcj5d XQorLSMKKy0jIFdoZW4gc3VwcGx5aW5nIG1vcmUgdGhhbiBvbmx5IGlwPSBsaW5lLCA8aW50ZXJm YWNlPiBpcyBtYW5kYXRvcnkgYW5kCistIyBib290ZGV2PSBtdXN0IGNvbnRhaW4gdGhlIG5hbWUg b2YgdGhlIHByaW1hcnkgaW50ZXJmYWNlIHRvIHVzZSBmb3IKKy0jIHJvdXRpbmcsZG5zLGRoY3At b3B0aW9ucyxldGMuCistIworLQorLSMgd2UgcmVhbGx5IG5lZWQgdG8gdXNlIGBleHByIHN1YnN0 cmAgd2l0aCBkYXNoCistIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MyMDAzIGRpc2FibGU9U0MyMzA4 CistCistY29tbWFuZCAtdiBnZXRhcmcgPiAvZGV2L251bGwgfHwgLiAvbGliL2RyYWN1dC1saWIu c2gKKy0KKy1pZiBbIC1uICIkbmV0cm9vdCIgXSAmJiBbIC16ICIkKGdldGFyZyBpcD0pIiBdICYm IFsgLXogIiQoZ2V0YXJnIEJPT1RJRj0pIiBdOyB0aGVuCistICAgICMgTm8gaXA9IGFyZ3VtZW50 KHMpIGZvciBuZXRyb290IHByb3ZpZGVkLCBkZWZhdWx0aW5nIHRvIERIQ1AKKy0gICAgcmV0dXJu CistZmkKKy0KKy0jIENvdW50IGlwPSBsaW5lcyB0byBkZWNpZGUgd2hldGhlciB3ZSBuZWVkIGJv b3RkZXY9IG9yIG5vdAorLWlmIFsgLXogIiRORUVEQk9PVERFViIgXTsgdGhlbgorLSAgICBjb3Vu dD0wCistICAgIGZvciBwIGluICQoZ2V0YXJncyBpcD0pOyBkbworLSAgICAgICAgY2FzZSAiJHAi IGluCistICAgICAgICAgICAgaWJmdCkKKy0gICAgICAgICAgICAgICAgY29udGludWUKKy0gICAg ICAgICAgICAgICAgOzsKKy0gICAgICAgIGVzYWMKKy0gICAgICAgIGNvdW50PSQoKGNvdW50ICsg MSkpCistICAgIGRvbmUKKy0gICAgWyAkY291bnQgLWd0IDEgXSAmJiBORUVEQk9PVERFVj0xCist ZmkKKy11bnNldCBjb3VudAorLQorLSMgSWYgbmVlZGVkLCBjaGVjayBpZiBib290ZGV2PSBjb250 YWlucyBhbnl0aGluZyB1c2FibGUKKy1CT09UREVWPSQoZ2V0YXJnIGJvb3RkZXY9KQorLQorLWlm IFsgLW4gIiRORUVEQk9PVERFViIgXSAmJiBnZXRhcmdib29sIDEgcmQubmVlZG5ldDsgdGhlbgor LSAgICAjWyAteiAiJEJPT1RERVYiIF0gJiYgd2FybiAiUGxlYXNlIHN1cHBseSBib290ZGV2IGFy Z3VtZW50IGZvciBtdWx0aXBsZSBpcD0gbGluZXMiCistICAgIGVjaG8gInJkLm5lZWRuZXQ9MSIg PiAvZXRjL2NtZGxpbmUuZC8yMC1kcmFjdXQtbmVlZG5ldC5jb25mCistICAgIGluZm8gIk11bHRp cGxlIGlwPSBhcmd1bWVudHM6IGFzc3VtaW5nIHJkLm5lZWRuZXQ9MSIKKy1lbHNlCistICAgIHVu c2V0IE5FRURCT09UREVWCistZmkKKy0KKy0jIENoZWNrIGlwPSBsaW5lcworLSMgWFhYIFdvdWxk IGJlIG5pY2UgaWYgd2UgY291bGQgZXJyb3JjaGVjayBpcCBhZGRyZXNzZXMgaGVyZSBhcyB3ZWxs CistZm9yIHAgaW4gJChnZXRhcmdzIGlwPSk7IGRvCistICAgIGlwX3RvX3ZhciAiJHAiCistCist ICAgICMgbWFrZSBmaXJzdCBkZXZpY2Ugc3BlY2lmaWVkIHRoZSBCT09UREVWCistICAgIGlmIFsg LW4gIiRORUVEQk9PVERFViIgXSAmJiBbIC16ICIkQk9PVERFViIgXSAmJiBbIC1uICIkZGV2IiBd OyB0aGVuCistICAgICAgICBCT09UREVWPSIkZGV2IgorLSAgICAgICAgaW5mbyAiU2V0dGluZyBi b290ZGV2IHRvICckQk9PVERFViciCistICAgIGZpCistCistICAgICMgc2tpcCBpYmZ0IHNpbmNl IHdlIGRpZCBpdCBhYm92ZQorLSAgICBbICIkYXV0b2NvbmYiID0gImliZnQiIF0gJiYgY29udGlu dWUKKy0KKy0gICAgIyBFbXB0eSBhdXRvY29uZiBkZWZhdWx0cyB0byAnZGhjcCcKKy0gICAgaWYg WyAteiAiJGF1dG9jb25mIiBdOyB0aGVuCistICAgICAgICB3YXJuICJFbXB0eSBhdXRvY29uZiB2 YWx1ZXMgZGVmYXVsdCB0byBkaGNwIgorLSAgICAgICAgYXV0b2NvbmY9ImRoY3AiCistICAgIGZp CistCistICAgICMgRXJyb3IgY2hlY2tpbmcgZm9yIGF1dG9jb25mIGluIGNvbWJpbmF0aW9uIHdp dGggb3RoZXIgdmFsdWVzCistICAgIGZvciBhdXRvb3B0IGluICQoc3RyX3JlcGxhY2UgIiRhdXRv Y29uZiIgIiwiICIgIik7IGRvCistICAgICAgICBjYXNlICRhdXRvb3B0IGluCistICAgICAgICAg ICAgZXJyb3IpIGRpZSAiRXJyb3IgcGFyc2luZyBvcHRpb24gJ2lwPSRwJyIgOzsKKy0gICAgICAg ICAgICBib290cCB8IHJhcnAgfCBib3RoKSBkaWUgIlNvcnJ5LCBpcD0kYXV0b29wdCBpcyBjdXJy ZW50bHkgdW5zdXBwb3J0ZWQiIDs7CistICAgICAgICAgICAgbm9uZSB8IG9mZikKKy0gICAgICAg ICAgICAgICAgWyAteiAiJGlwIiBdIFwKKy0gICAgICAgICAgICAgICAgICAgICYmIGRpZSAiRm9y IGFyZ3VtZW50ICdpcD0kcCdcblZhbHVlICckYXV0b29wdCcgd2l0aG91dCBzdGF0aWMgY29uZmln dXJhdGlvbiBkb2VzIG5vdCBtYWtlIHNlbnNlIgorLSAgICAgICAgICAgICAgICBbIC16ICIkbWFz ayIgXSBcCistICAgICAgICAgICAgICAgICAgICAmJiBkaWUgIlNvcnJ5LCBhdXRvbWF0aWMgY2Fs Y3VsYXRpb24gb2YgbmV0bWFzayBpcyBub3QgeWV0IHN1cHBvcnRlZCIKKy0gICAgICAgICAgICAg ICAgOzsKKy0gICAgICAgICAgICBhdXRvNiB8IGxpbms2KSA7OworLSAgICAgICAgICAgIGVpdGhl cjYpIDs7CistICAgICAgICAgICAgZGhjcCB8IGRoY3A2IHwgb24gfCBhbnkgfCBzaW5nbGUtZGhj cCkKKy0gICAgICAgICAgICAgICAgWyAtbiAiJE5FRURCT09UREVWIiBdICYmIFsgLXogIiRkZXYi IF0gXAorLSAgICAgICAgICAgICAgICAgICAgJiYgZGllICJTb3JyeSwgJ2lwPSRwJyBkb2VzIG5v dCBtYWtlIHNlbnNlIGZvciBtdWx0aXBsZSBpbnRlcmZhY2UgY29uZmlndXJhdGlvbnMiCistICAg ICAgICAgICAgICAgIFsgLW4gIiRpcCIgXSBcCistICAgICAgICAgICAgICAgICAgICAmJiBkaWUg IkZvciBhcmd1bWVudCAnaXA9JHAnXG5Tb3JyeSwgc2V0dGluZyBjbGllbnQtaXAgZG9lcyBub3Qg bWFrZSBzZW5zZSBmb3IgJyRhdXRvb3B0JyIKKy0gICAgICAgICAgICAgICAgOzsKKy0gICAgICAg ICAgICAqKSBkaWUgIkZvciBhcmd1bWVudCAnaXA9JHAnXG5Tb3JyeSwgdW5rbm93biB2YWx1ZSAn JGF1dG9vcHQnIiA7OworLSAgICAgICAgZXNhYworLSAgICBkb25lCistCistICAgIGlmIFsgLW4g IiRkZXYiIF07IHRoZW4KKy0gICAgICAgICMgV2UgZG9uJ3QgbGlrZSBkdXBsaWNhdGUgZGV2aWNl IGNvbmZpZ3MKKy0gICAgICAgIGlmIFsgLW4gIiRJRkFDRVMiIF07IHRoZW4KKy0gICAgICAgICAg ICBmb3IgaSBpbiAkSUZBQ0VTOyBkbworLSAgICAgICAgICAgICAgICBbICIkZGV2IiA9ICIkaSIg XSAmJiBkaWUgIkZvciBhcmd1bWVudCAnaXA9JHAnXG5EdXBsaWNhdGlvbiBjb25maWd1cmF0aW9u cyBmb3IgJyRkZXYnIgorLSAgICAgICAgICAgIGRvbmUKKy0gICAgICAgIGZpCistICAgICAgICAj IElGQUNFUyBsaXN0IGZvciBsYXRlciB1c2UKKy0gICAgICAgIElGQUNFUz0iJElGQUNFUyAkZGV2 IgorLQorLSAgICAgICAgIyBJbnRlcmZhY2Ugc2hvdWxkIGV4aXN0CistICAgICAgICBpZiBbICEg LWUgIi9zeXMvY2xhc3MvbmV0LyRkZXYiIF07IHRoZW4KKy0gICAgICAgICAgICB3YXJuICJOZXR3 b3JrIGludGVyZmFjZSAnJGRldicgZG9lcyBub3QgZXhpc3QiCistICAgICAgICBmaQorLSAgICBm aQorLQorLSAgICAjIERvIHdlIG5lZWQgdG8gY2hlY2sgZm9yIHNwZWNpZmljIG9wdGlvbnM/Cist ICAgIGlmIFsgLW4gIiRORUVEREhDUCIgXSB8fCBbIC1uICIkREhDUE9SU0VSVkVSIiBdOyB0aGVu CistICAgICAgICAjIENvcnJlY3QgZGV2aWNlPyAoRW1wdHkgaXMgb2sgYXMgd2VsbCkKKy0gICAg ICAgIFsgIiRkZXYiID0gIiRCT09UREVWIiBdIHx8IGNvbnRpbnVlCistICAgICAgICAjIFNlcnZl ci1pcCBpcyB0aGVyZT8KKy0gICAgICAgIFsgLW4gIiRESENQT1JTRVJWRVIiIF0gJiYgWyAtbiAi JHNydiIgXSAmJiBjb250aW51ZQorLSAgICAgICAgIyBkaGNwPyAoSXQncyBzaW1wbGVyIHRvIGNo ZWNrIGZvciBhIHNldCBpcC4gQ2hlY2tzIGFib3ZlIGVuc3VyZSB0aGF0IGlmCistICAgICAgICAj IGlwIGlzIHRoZXJlLCB3ZSdyZSBzdGF0aWMKKy0gICAgICAgIFsgLXogIiRpcCIgXSAmJiBjb250 aW51ZQorLSAgICAgICAgIyBOb3QgZ29vZCEKKy0gICAgICAgIGRpZSAiU2VydmVyLWlwIG9yIGRo Y3AgZm9yIG5ldGJvb3QgbmVlZGVkLCBidXQgY3VycmVudCBhcmd1bWVudHMgc2F5IG90aGVyd2lz ZSIKKy0gICAgZmkKKy0KKy0gICAgaWYgc3RyX3N0YXJ0cyAiJGRldiIgImVueCIgJiYgWyAkeyNk ZXZ9IC1lcSAxNSBdOyB0aGVuCistICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzIwMDMK Ky0gICAgICAgIHByaW50ZiAtLSAiaWZuYW1lPSVzOiVzOiVzOiVzOiVzOiVzOiVzXG4iIFwKKy0g ICAgICAgICAgICAiJGRldiIgXAorLSAgICAgICAgICAgICIkKGV4cHIgc3Vic3RyICIkZGV2IiAz IDIpIiBcCistICAgICAgICAgICAgIiQoZXhwciBzdWJzdHIgIiRkZXYiIDUgMikiIFwKKy0gICAg ICAgICAgICAiJChleHByIHN1YnN0ciAiJGRldiIgNyAyKSIgXAorLSAgICAgICAgICAgICIkKGV4 cHIgc3Vic3RyICIkZGV2IiA5IDIpIiBcCistICAgICAgICAgICAgIiQoZXhwciBzdWJzdHIgIiRk ZXYiIDExIDIpIiBcCistICAgICAgICAgICAgIiQoZXhwciBzdWJzdHIgIiRkZXYiIDEzIDIpIiBc CistICAgICAgICAgICAgPj4gL2V0Yy9jbWRsaW5lLmQvMjAtZW54LmNvbmYKKy0gICAgZmkKKy1k b25lCistCistIyBwdXQgQk9PVElGIGluIElGQUNFUyB0byBtYWtlIHN1cmUgaXQgY29tZXMgdXAK Ky1pZiBnZXRhcmdib29sIDEgInJkLmJvb3RpZiIgJiYgQk9PVElGPSIkKGdldGFyZyBCT09USUY9 KSI7IHRoZW4KKy0gICAgQk9PVERFVj0kKGZpeF9ib290aWYgIiRCT09USUYiKQorLSAgICBJRkFD RVM9IiRCT09UREVWICRJRkFDRVMiCistZmkKKy0KKy0jIFRoaXMgZW5zdXJlcyB0aGF0IEJPT1RE RVYgaXMgYWx3YXlzIGZpcnN0IGluIElGQUNFUworLWlmIFsgLW4gIiRCT09UREVWIiBdICYmIFsg LW4gIiRJRkFDRVMiIF07IHRoZW4KKy0gICAgSUZBQ0VTPSIke0lGQUNFUyUiJEJPT1RERVYiKn0g JHtJRkFDRVMjKiIkQk9PVERFViJ9IgorLSAgICBJRkFDRVM9IiRCT09UREVWICRJRkFDRVMiCist ZmkKKy0KKy0jIFN0b3JlIEJPT1RERVYgYW5kIElGQUNFUyBmb3IgbGF0ZXIgdXNlCistWyAtbiAi JEJPT1RERVYiIF0gJiYgZWNobyAiJEJPT1RERVYiID4gL3RtcC9uZXQuYm9vdGRldgorLVsgLW4g IiRJRkFDRVMiIF0gJiYgZWNobyAiJElGQUNFUyIgPiAvdG1wL25ldC5pZmFjZXMKK2RpZmYgLS1n aXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS10ZWFtLnNoIGIvbW9kdWxlcy5k LzM1bmV0d29yay1sZWdhY3kvcGFyc2UtdGVhbS5zaAorZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1 CitpbmRleCA4M2JhZGM5OS4uMDAwMDAwMDAKKy0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVn YWN5L3BhcnNlLXRlYW0uc2gKKysrKyAvZGV2L251bGwKK0BAIC0xLDY2ICswLDAgQEAKKy0jIS9i aW4vc2gKKy0jCistIyBGb3JtYXQ6CistIyAgICAgICB0ZWFtPTx0ZWFtbWFzdGVyPjo8dGVhbXNs YXZlcz5bOjx0ZWFtcnVubmVyPl0KKy0jCistIyAgICAgICB0ZWFtc2xhdmVzIGlzIGEgY29tbWEt c2VwYXJhdGVkIGxpc3Qgb2YgcGh5c2ljYWwgKGV0aGVybmV0KSBpbnRlcmZhY2VzCistIyAgICAg ICB0ZWFtcnVubmVyIGlzIHRoZSBydW5uZXIgdHlwZSB0byBiZSB1c2VkIChzZWUgdGVhbWQuY29u Zig1KSk7IGRlZmF1bHRzIHRvIGFjdGl2ZWJhY2t1cAorLSMKKy0jICAgICAgIHRlYW0gd2l0aG91 dCBwYXJhbWV0ZXJzIGFzc3VtZXMgdGVhbT10ZWFtMDpldGgwLGV0aDE6YWN0aXZlYmFja3VwCist IworLQorLXBhcnNldGVhbSgpIHsKKy0gICAgbG9jYWwgdj0iJHsxfSI6CistICAgIHNldCAtLQor LSAgICB3aGlsZSBbIC1uICIkdiIgXTsgZG8KKy0gICAgICAgIHNldCAtLSAiJEAiICIke3YlJToq fSIKKy0gICAgICAgIHY9JHt2Iyo6fQorLSAgICBkb25lCistCistICAgIGNhc2UgJCMgaW4KKy0g ICAgICAgIDApCistICAgICAgICAgICAgdGVhbW1hc3Rlcj10ZWFtMAorLSAgICAgICAgICAgIHRl YW1zbGF2ZXM9ImV0aDAgZXRoMSIKKy0gICAgICAgICAgICB0ZWFtcnVubmVyPSJhY3RpdmViYWNr dXAiCistICAgICAgICAgICAgOzsKKy0gICAgICAgIDEpCistICAgICAgICAgICAgdGVhbW1hc3Rl cj0kMQorLSAgICAgICAgICAgIHRlYW1zbGF2ZXM9ImV0aDAgZXRoMSIKKy0gICAgICAgICAgICB0 ZWFtcnVubmVyPSJhY3RpdmViYWNrdXAiCistICAgICAgICAgICAgOzsKKy0gICAgICAgIDIpCist ICAgICAgICAgICAgdGVhbW1hc3Rlcj0kMQorLSAgICAgICAgICAgIHRlYW1zbGF2ZXM9JChzdHJf cmVwbGFjZSAiJDIiICIsIiAiICIpCistICAgICAgICAgICAgdGVhbXJ1bm5lcj0iYWN0aXZlYmFj a3VwIgorLSAgICAgICAgICAgIDs7CistICAgICAgICAzKQorLSAgICAgICAgICAgIHRlYW1tYXN0 ZXI9JDEKKy0gICAgICAgICAgICB0ZWFtc2xhdmVzPSQoc3RyX3JlcGxhY2UgIiQyIiAiLCIgIiAi KQorLSAgICAgICAgICAgIHRlYW1ydW5uZXI9JDMKKy0gICAgICAgICAgICA7OworLSAgICAgICAg KikgZGllICJ0ZWFtPSByZXF1aXJlcyB6ZXJvIHRvIHRocmVlIHBhcmFtZXRlcnMiIDs7CistICAg IGVzYWMKKy0gICAgcmV0dXJuIDAKKy19CistCistZm9yIHRlYW0gaW4gJChnZXRhcmdzIHRlYW0p OyBkbworLSAgICBbICIkdGVhbSIgPSAidGVhbSIgXSAmJiBjb250aW51ZQorLQorLSAgICB1bnNl dCB0ZWFtbWFzdGVyCistICAgIHVuc2V0IHRlYW1zbGF2ZXMKKy0gICAgdW5zZXQgdGVhbXJ1bm5l cgorLQorLSAgICBwYXJzZXRlYW0gIiR0ZWFtIiB8fCBjb250aW51ZQorLQorLSAgICB7CistICAg ICAgICBlY2hvICJ0ZWFtbWFzdGVyPSR0ZWFtbWFzdGVyIgorLSAgICAgICAgZWNobyAidGVhbXNs YXZlcz1cIiR0ZWFtc2xhdmVzXCIiCistICAgICAgICBlY2hvICJ0ZWFtcnVubmVyPVwiJHRlYW1y dW5uZXJcIiIKKy0gICAgfSA+IC90bXAvdGVhbS4iJHt0ZWFtbWFzdGVyfSIuaW5mbworLQorLSAg ICBpZiAhIFsgLWUgL2V0Yy90ZWFtZC8iJHt0ZWFtbWFzdGVyfSIuY29uZiBdOyB0aGVuCistICAg ICAgICB3YXJuICJUZWFtIG1hc3RlciAkdGVhbW1hc3RlciBzcGVjaWZpZWQsIGJ1dCBubyAvZXRj L3RlYW1kLyR0ZWFtbWFzdGVyLmNvbmYgcHJlc2VudC4gVXNpbmcgJHRlYW1ydW5uZXIuIgorLSAg ICAgICAgbWtkaXIgLXAgL2V0Yy90ZWFtZAorLSAgICAgICAgcHJpbnRmIC0tICIlcyIgIntcInJ1 bm5lclwiOiB7XCJuYW1lXCI6IFwiJHRlYW1ydW5uZXJcIn0sIFwibGlua193YXRjaFwiOiB7XCJu YW1lXCI6IFwiZXRodG9vbFwifX0iID4gIi90bXAvJHt0ZWFtbWFzdGVyfS5jb25mIgorLSAgICBm aQorLWRvbmUKK2RpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS12 bGFuLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2Utdmxhbi5zaAorZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNzU1CitpbmRleCBjMjNmODMzMS4uMDAwMDAwMDAKKy0tLSBhL21vZHVs ZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLXZsYW4uc2gKKysrKyAvZGV2L251bGwKK0BAIC0x LDM3ICswLDAgQEAKKy0jIS9iaW4vc2gKKy0jCistIyBGb3JtYXQ6CistIwl2bGFuPTx2bGFubmFt ZT46PHBoeWRldmljZT4KKy0jCistCistcGFyc2V2bGFuKCkgeworLSAgICBsb2NhbCB2PSIkezF9 IjoKKy0gICAgc2V0IC0tCistICAgIHdoaWxlIFsgLW4gIiR2IiBdOyBkbworLSAgICAgICAgc2V0 IC0tICIkQCIgIiR7diUlOip9IgorLSAgICAgICAgdj0ke3YjKjp9CistICAgIGRvbmUKKy0KKy0g ICAgdW5zZXQgdmxhbm5hbWUgcGh5ZGV2aWNlCistICAgIGNhc2UgJCMgaW4KKy0gICAgICAgIDIp CistICAgICAgICAgICAgdmxhbm5hbWU9JDEKKy0gICAgICAgICAgICBwaHlkZXZpY2U9JDIKKy0g ICAgICAgICAgICA7OworLSAgICAgICAgKikgZGllICJ2bGFuPSByZXF1aXJlcyB0d28gcGFyYW1l dGVycyIgOzsKKy0gICAgZXNhYworLX0KKy0KKy1mb3IgdmxhbiBpbiAkKGdldGFyZ3Mgdmxhbj0p OyBkbworLSAgICB1bnNldCB2bGFubmFtZQorLSAgICB1bnNldCBwaHlkZXZpY2UKKy0gICAgaWYg WyAhICIkdmxhbiIgPSAidmxhbiIgXTsgdGhlbgorLSAgICAgICAgcGFyc2V2bGFuICIkdmxhbiIK Ky0gICAgZmkKKy0KKy0gICAgZWNobyAicGh5ZGV2aWNlPVwiJHBoeWRldmljZVwiIiA+IC90bXAv dmxhbi4iJHtwaHlkZXZpY2V9Ii5waHkKKy0gICAgeworLSAgICAgICAgZWNobyAidmxhbm5hbWU9 XCIkdmxhbm5hbWVcIiIKKy0gICAgICAgIGVjaG8gInBoeWRldmljZT1cIiRwaHlkZXZpY2VcIiIK Ky0gICAgfSA+IC90bXAvdmxhbi4iJHt2bGFubmFtZX0iLiIke3BoeWRldmljZX0iCistZG9uZQor LS0gCisyLjU1LjAKKwoKZGlmZiAtLWdpdCBhLzAwMDgtZml4LXN5c3RlbWQtY3J5cHRzZXR1cC1s b2FkLWxpYmNyeXB0c2V0dXAtdmlhLWRsb3Blbi5wYXRjaCBiLzAwMDgtZml4LXN5c3RlbWQtY3J5 cHRzZXR1cC1sb2FkLWxpYmNyeXB0c2V0dXAtdmlhLWRsb3Blbi5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggZTlhNmFmMy4uMDAwMDAwMAotLS0gYS8wMDA4LWZpeC1zeXN0ZW1k LWNyeXB0c2V0dXAtbG9hZC1saWJjcnlwdHNldHVwLXZpYS1kbG9wZW4ucGF0Y2gKKysrIC9kZXYv bnVsbApAQCAtMSw1OSArMCwwIEBACi1Gcm9tIDc2MzI5NmQ2NDIzY2FkMDkxYjMzMjkxY2VlOGUz NGMyYWVhM2QwY2EgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBBbnRvbmlvIEFsdmFy ZXogRmVpam9vIDxhbnRvbmlvLmZlaWpvb0BzdXNlLmNvbT4KLURhdGU6IFRodSwgMjMgQXByIDIw MjYgMTA6MTg6NTkgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSCA4LzhdIGZpeChzeXN0ZW1kLWNyeXB0 c2V0dXApOiBsb2FkIGxpYmNyeXB0c2V0dXAgdmlhIGRsb3BlbgotCi1UaGUgYHN5c3RlbWQtY3J5 cHRzZXR1cGAgYmluYXJ5IG5vIGxvbmdlciBkZXBlbmRzIG9uIGBsaWJjcnlwdHNldHVwYCwgYW5k IHRoZXJlCi1pcyBubyBvdGhlciBiaW5hcnkgaW5zdGFsbGVkIHdpdGggdGhlIGBzeXN0ZW1kLWNy eXB0c2V0dXBgIG9yIGBjcnlwdGAgbW9kdWxlcwotdGhhdCBpbnN0YWxscyBpdC4KLQotYGBgCi1z d2l0Y2hfcm9vdDovcm9vdCMgc3lzdGVtZC1jcnlwdHNldHVwIC0tdmVyc2lvbiB8IGhlYWQgLTEK LXN5c3RlbWQgMjYxICgyNjF+ZGV2ZWwrZ2l0MjAyNjA0MjMuNDNkYWI1ZWE4KQotc3dpdGNoX3Jv b3Q6L3Jvb3QjIHN5c3RlbWQtY3J5cHRzZXR1cCBoZWxwCi1TaGFyZWQgbGlicmFyeSAnbGliY3J5 cHRzZXR1cC5zby4xMicgaXMgbm90IGF2YWlsYWJsZTogbGliY3J5cHRzZXR1cC5zby4xMjogY2Fu bm90IG9wZW4gc2hhcmVkIG9iamVjdCBmaWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5Ci1z d2l0Y2hfcm9vdDovcm9vdCMgZWNobyAkPwotMQotYGBgCi0KLVJlcXVpcmVkIHNpbmNlIGh0dHBz Oi8vZ2l0aHViLmNvbS9zeXN0ZW1kL3N5c3RlbWQvY29tbWl0LzQzZGFiNWVhODc5N2U0NWUwNzAy ZjhlZTg5Y2RmMjVlNTc3YTY1MmIKLQotKGNoZXJyeSBwaWNrZWQgZnJvbSBjb21taXQgNjBhNWUw MzQ2MDRkOTc0MGQ0NjA4ODFmZjFkMDM3OTRiOWE5YjA4YSkKLQotUmVzb2x2ZXM6IHJoYnojMjQ4 MTc0OAotLS0tCi0gbW9kdWxlcy5kLzExc3lzdGVtZC1jcnlwdHNldHVwL21vZHVsZS1zZXR1cC5z aCB8IDExICsrKysrKysrKysrCi0gMSBmaWxlIGNoYW5nZWQsIDExIGluc2VydGlvbnMoKykKLQot ZGlmZiAtLWdpdCBhL21vZHVsZXMuZC8xMXN5c3RlbWQtY3J5cHRzZXR1cC9tb2R1bGUtc2V0dXAu c2ggYi9tb2R1bGVzLmQvMTFzeXN0ZW1kLWNyeXB0c2V0dXAvbW9kdWxlLXNldHVwLnNoCi1pbmRl eCA2YmIwYTQyZi4uMDljMjA4MmYgMTAwNzU1Ci0tLS0gYS9tb2R1bGVzLmQvMTFzeXN0ZW1kLWNy eXB0c2V0dXAvbW9kdWxlLXNldHVwLnNoCi0rKysgYi9tb2R1bGVzLmQvMTFzeXN0ZW1kLWNyeXB0 c2V0dXAvbW9kdWxlLXNldHVwLnNoCi1AQCAtNDIsNiArNDIsMTEgQEAgZGVwZW5kcygpIHsKLSAg ICAgcmV0dXJuIDAKLSB9Ci0gCi0rIyBjYWxsZWQgYnkgZHJhY3V0Ci0rY29uZmlnKCkgewotKyAg ICBhZGRfZGxvcGVuX2ZlYXR1cmVzKz0iIGxpYnN5c3RlbWQtc2hhcmVkLSouc286Y3J5cHRzZXR1 cCAiCi0rfQotKwotICMgY2FsbGVkIGJ5IGRyYWN1dAotIGluc3RhbGwoKSB7Ci0gICAgICMgdGhl IGNyeXB0c2V0dXAgdGFyZ2V0cyBhcmUgYWxyZWFkeSBwdWxsZWQgaW4gYnkgMDBzeXN0ZW1kLCBi dXQgbm90Ci1AQCAtNTYsNiArNjEsMTIgQEAgaW5zdGFsbCgpIHsKLSAgICAgICAgICIkc3lzdGVt ZHN5c3RlbXVuaXRkaXIiL3JlbW90ZS1jcnlwdHNldHVwLnRhcmdldCBcCi0gICAgICAgICAiJHN5 c3RlbWRzeXN0ZW11bml0ZGlyIi9pbml0cmQtcm9vdC1kZXZpY2UudGFyZ2V0LndhbnRzL3JlbW90 ZS1jcnlwdHNldHVwLnRhcmdldAotIAotKyAgICAjIEluc3RhbGwgcmVxdWlyZWQgbGlicmFyaWVz LgotKyAgICBpZiBbWyAhICRVU0VfU1lTVEVNRF9ETE9QRU5fREVQUyBdXTsgdGhlbgotKyAgICAg ICAgaW5zdF9saWJkaXJfZmlsZSBcCi0rICAgICAgICAgICAgeyJ0bHMvJERSQUNVVF9BUkNILyIs dGxzLywiJERSQUNVVF9BUkNILyIsfSJsaWJjcnlwdHNldHVwLnNvLioiCi0rICAgIGZpCi0rCi0g ICAgIGlmIFtbICRob3N0b25seSBdXSAmJiBbWyAtZiAkaW5pdGRpci9ldGMvY3J5cHR0YWIgXV07 IHRoZW4KLSAgICAgICAgICMgZm9yIGVhY2ggZW50cnkgaW4gL2V0Yy9jcnlwdHRhYiBjaGVjayBp ZiB0aGUga2V5IGZpbGUgaXMgYmFja2VkIGJ5IGEgc29ja2V0IHVuaXQgYW5kIGlmIHNvLAotICAg ICAgICAgIyBpbmNsdWRlIGl0IGFsb25nIHdpdGggaXRzIGNvcnJlc3BvbmRpbmcgc2VydmljZSB1 bml0LgotLS0gCi0yLjU0LjAKLQoKZGlmZiAtLWdpdCBhLzAwMDktZmVhdC1zeXN0ZW1kLXN5c2V4 dC1pbmNsdWRlLXN5c3RlbWQtc3lzLWNvbmYtZXh0LXN5cy5wYXRjaCBiLzAwMDktZmVhdC1zeXN0 ZW1kLXN5c2V4dC1pbmNsdWRlLXN5c3RlbWQtc3lzLWNvbmYtZXh0LXN5cy5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmExODI0NS4uMDAwMDAwMAotLS0gYS8wMDA5LWZlYXQt c3lzdGVtZC1zeXNleHQtaW5jbHVkZS1zeXN0ZW1kLXN5cy1jb25mLWV4dC1zeXMucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSw3MSArMCwwIEBACi1Gcm9tIDM3NzFmNTJkZjE3ZDBmODAyMDVhMTFj ZjBjM2JkMzc1ZjQ5MjNkOTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBWaXRhbHkg S3V6bmV0c292IDx2a3V6bmV0c0ByZWRoYXQuY29tPgotRGF0ZTogRnJpLCAxMCBBcHIgMjAyNiAx NDo1NTozMCArMDIwMAotU3ViamVjdDogW1BBVENIIDkvOV0gZmVhdChzeXN0ZW1kLXN5c2V4dCk6 IGluY2x1ZGUKLSBzeXN0ZW1kLXtzeXMsY29uZn1leHQtc3lzcm9vdCBzZXJ2aWNlcwotCi1zeXN0 ZW1kIHYyNjEgaW50cm9kdWNlcyBhIHBhaXIgb2YgbmV3IHN5c3RlbWQte3N5cyxjb25mfWV4dC1z eXNyb290IHNlcnZpY2VzCi10aGF0IGFyZSB1c2VkIHRvIG1lcmdlIHN5c3RlbSBhbmQgY29uZmln dXJhdGlvbiBleHRlbnNpb25zIGZvciB0aGUgbWFpbiBzeXN0ZW0KLWZyb20gdGhlIGluaXRyYW1m cy4gVGhpcyBhbGxvd3MgdGhlIGV4dGVuc2lvbnMgdG8gdXBkYXRlIGFueSBwYXJ0IG9mIHRoZSBt YWluCi1zeXN0ZW0sIGluY2x1ZGluZyBzZXJ2aWNlcyB0aGF0IHJ1biBkdXJpbmcgZWFybHkgYm9v dC4KLQotSW5jbHVkZSB0aGVzZSBzZXJ2aWNlcyBpbiB0aGUgaW5pdHJhbWZzLiBzeXN0ZW1kIGVu YWJsZXMgdGhlbSBieQotZGVmYXVsdCAodGhyb3VnaCA5MC1zeXN0ZW1kLWluaXRyZC5wcmVzZXQp LCBidXQgZHJhY3V0IGRvZXMgbm90IHlldCBzdXBwb3J0Ci1zeXN0ZW1kIHByZXNldHMsIHNvIHRo ZXNlIHNlcnZpY2VzIGFyZSBlbmFibGVkIG1hbnVhbGx5LiBJZiB0aGUgbmV3bHkKLWludHJvZHVj ZWQgbG9naWMgaXMgdW5kZXNpcmFibGUgZm9yIGFueSByZWFzb24sIHN5c3RlbWQgcHJvdmlkZXMg dGhlCi0nc3lzdGVtZC57c3lzLGNvbmZ9ZXh0PScga2VybmVsIGNvbW1hbmQtbGluZSBvcHRpb25z LCBtZWFuaW5nIGRyYWN1dCBkb2VzIG5vdAotbmVlZCBpdHMgb3duLgotCi0oY2hlcnJ5IHBpY2tl ZCBmcm9tIGNvbW1pdCA0MjA5NzdmODI0NjdkMDQ4OTI3YTgyYmY5NjI1MTMyZjc5ZTAyOGNkKQot LS0tCi0gbW9kdWxlcy5kLzExc3lzdGVtZC1zeXNleHQvbW9kdWxlLXNldHVwLnNoIHwgMTkgKysr KysrKysrKysrKysrLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCAxNSBpbnNlcnRpb25zKCspLCA0IGRl bGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvbW9kdWxlcy5kLzExc3lzdGVtZC1zeXNleHQvbW9k dWxlLXNldHVwLnNoIGIvbW9kdWxlcy5kLzExc3lzdGVtZC1zeXNleHQvbW9kdWxlLXNldHVwLnNo Ci1pbmRleCBmZDI2ZmQ2MS4uZjBhZjk3NzQgMTAwNzU1Ci0tLS0gYS9tb2R1bGVzLmQvMTFzeXN0 ZW1kLXN5c2V4dC9tb2R1bGUtc2V0dXAuc2gKLSsrKyBiL21vZHVsZXMuZC8xMXN5c3RlbWQtc3lz ZXh0L21vZHVsZS1zZXR1cC5zaAotQEAgLTQ0LDE3ICs0NCwyNCBAQCBpbnN0YWxsKCkgewotICAg ICAgICAgIi91c3IvbGliL2V4dGVuc2lvbi1yZWxlYXNlLmQvZXh0ZW5zaW9uLXJlbGVhc2UuKiIg XAotICAgICAgICAgIiRzeXN0ZW1kc3lzdGVtdW5pdGRpciIvc3lzdGVtZC1jb25mZXh0JHtfc3Vm Zml4fS5zZXJ2aWNlIFwKLSAgICAgICAgICIkc3lzdGVtZHN5c3RlbXVuaXRkaXIvc3lzdGVtZC1j b25mZXh0JHtfc3VmZml4fS5zZXJ2aWNlLmQvKi5jb25mIiBcCi0rICAgICAgICAiJHN5c3RlbWRz eXN0ZW11bml0ZGlyIi9zeXN0ZW1kLWNvbmZleHQtc3lzcm9vdC5zZXJ2aWNlIFwKLSsgICAgICAg ICIkc3lzdGVtZHN5c3RlbXVuaXRkaXIvc3lzdGVtZC1jb25mZXh0LXN5c3Jvb3Quc2VydmljZS5k LyouY29uZiIgXAotICAgICAgICAgIiRzeXN0ZW1kc3lzdGVtdW5pdGRpciIvc3lzdGVtZC1zeXNl eHQke19zdWZmaXh9LnNlcnZpY2UgXAotICAgICAgICAgIiRzeXN0ZW1kc3lzdGVtdW5pdGRpci9z eXN0ZW1kLXN5c2V4dCR7X3N1ZmZpeH0uc2VydmljZS5kLyouY29uZiIgXAotKyAgICAgICAgIiRz eXN0ZW1kc3lzdGVtdW5pdGRpciIvc3lzdGVtZC1zeXNleHQtc3lzcm9vdC5zZXJ2aWNlIFwKLSsg ICAgICAgICIkc3lzdGVtZHN5c3RlbXVuaXRkaXIvc3lzdGVtZC1zeXNleHQtc3lzcm9vdC5zZXJ2 aWNlLmQvKi5jb25mIiBcCi0gICAgICAgICAiJHN5c3RlbWRzeXN0ZW11bml0ZGlyIi9pbml0cmQu dGFyZ2V0LndhbnRzL3N5c3RlbWQtY29uZmV4dCR7X3N1ZmZpeH0uc2VydmljZSBcCi0gICAgICAg ICAiJHN5c3RlbWRzeXN0ZW11bml0ZGlyIi9pbml0cmQudGFyZ2V0LndhbnRzL3N5c3RlbWQtc3lz ZXh0JHtfc3VmZml4fS5zZXJ2aWNlIFwKLSAgICAgICAgIHN5c3RlbWQtY29uZmV4dCBzeXN0ZW1k LXN5c2V4dAotIAotLSAgICAjIEVuYWJsZSBzeXN0ZW1kIHR5cGUgdW5pdChzKSBmb3Igc3lzdGVt ZCA8IHYyNTggd2hpY2ggZG9lc24ndCBzaGlwCi0tICAgICMgaW5pdHJkLnRhcmdldC53YW50cyBz eW1saW5rcy4KLSsgICAgIyBFbmFibGUgc3lzdGVtZC17Y29uZmV4dCwgc3lzZXh0fSBzeXN0ZW1k IHR5cGUgdW5pdChzKSBmb3Igc3lzdGVtZCA8IHYyNTgKLSsgICAgIyB3aGljaCBkb2Vzbid0IHNo aXAgaW5pdHJkLnRhcmdldC53YW50cyBzeW1saW5rcyBhbmQgc3lzdGVtZC17Y29uZmV4dCxzeXNl eHR9LXN5c3Jvb3Quc2VydmljZQotKyAgICAjIHdoaWNoIGFyZSBlbmFibGVkIHRocm91Z2ggc3lz dGVtZC1pbml0cmQucHJlc2V0LgotICAgICBmb3IgaSBpbiBcCi0gICAgICAgICBzeXN0ZW1kLWNv bmZleHQuc2VydmljZSBcCi0tICAgICAgICBzeXN0ZW1kLXN5c2V4dC5zZXJ2aWNlOyBkbwotKyAg ICAgICAgc3lzdGVtZC1zeXNleHQuc2VydmljZSBcCi0rICAgICAgICBzeXN0ZW1kLWNvbmZleHQt c3lzcm9vdC5zZXJ2aWNlIFwKLSsgICAgICAgIHN5c3RlbWQtc3lzZXh0LXN5c3Jvb3Quc2Vydmlj ZTsgZG8KLSAgICAgICAgIGlmIFtbIC1lICIkaW5pdGRpciRzeXN0ZW1kc3lzdGVtdW5pdGRpciIv IiRpIiBdXTsgdGhlbgotICAgICAgICAgICAgICRTWVNURU1DVEwgLXEgLS1yb290ICIkaW5pdGRp ciIgZW5hYmxlICIkaSIKLSAgICAgICAgIGZpCi1AQCAtNjcsNyArNzQsMTEgQEAgaW5zdGFsbCgp IHsKLSAgICAgICAgICAgICAiJHN5c3RlbWRzeXN0ZW1jb25mZGlyIi9zeXN0ZW1kLWNvbmZleHQk e19zdWZmaXh9LnNlcnZpY2UgXAotICAgICAgICAgICAgICIkc3lzdGVtZHN5c3RlbWNvbmZkaXIv c3lzdGVtZC1jb25mZXh0JHtfc3VmZml4fS5zZXJ2aWNlLmQvKi5jb25mIiBcCi0gICAgICAgICAg ICAgIiRzeXN0ZW1kc3lzdGVtY29uZmRpciIvc3lzdGVtZC1zeXNleHQke19zdWZmaXh9LnNlcnZp Y2UgXAotLSAgICAgICAgICAgICIkc3lzdGVtZHN5c3RlbWNvbmZkaXIvc3lzdGVtZC1zeXNleHQk e19zdWZmaXh9LnNlcnZpY2UuZC8qLmNvbmYiCi0rICAgICAgICAgICAgIiRzeXN0ZW1kc3lzdGVt Y29uZmRpci9zeXN0ZW1kLXN5c2V4dCR7X3N1ZmZpeH0uc2VydmljZS5kLyouY29uZiIgXAotKyAg ICAgICAgICAgICIkc3lzdGVtZHN5c3RlbWNvbmZkaXIiL3N5c3RlbWQtY29uZmV4dC1zeXNyb290 LnNlcnZpY2UgXAotKyAgICAgICAgICAgICIkc3lzdGVtZHN5c3RlbWNvbmZkaXIvc3lzdGVtZC1j b25mZXh0LXN5c3Jvb3Quc2VydmljZS5kLyouY29uZiIgXAotKyAgICAgICAgICAgICIkc3lzdGVt ZHN5c3RlbWNvbmZkaXIiL3N5c3RlbWQtc3lzZXh0LXN5c3Jvb3Quc2VydmljZSBcCi0rICAgICAg ICAgICAgIiRzeXN0ZW1kc3lzdGVtY29uZmRpci9zeXN0ZW1kLXN5c2V4dC1zeXNyb290LnNlcnZp Y2UuZC8qLmNvbmYiCi0gICAgIGZpCi0gCi0gfQotLS0gCi0yLjU0LjAKLQoKZGlmZiAtLWdpdCBh LzAwMDktZml4LWlzY3NpLXJlcGxhY2UtZWNoby13cml0ZXMtd2l0aC1wcmludGYtdG8tcHJldmVu dC5wYXRjaCBiLzAwMDktZml4LWlzY3NpLXJlcGxhY2UtZWNoby13cml0ZXMtd2l0aC1wcmludGYt dG8tcHJldmVudC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44NmU5 YjJjCi0tLSAvZGV2L251bGwKKysrIGIvMDAwOS1maXgtaXNjc2ktcmVwbGFjZS1lY2hvLXdyaXRl cy13aXRoLXByaW50Zi10by1wcmV2ZW50LnBhdGNoCkBAIC0wLDAgKzEsOTcgQEAKK0Zyb20gYWFk ZWE0OGFkNWI0NmUyNWI3NThjYjQxOWViMDg1NTMzZjlmYTMxZiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKK0Zyb206IFBhdmVsIFZhbGVuYSA8cHZhbGVuYUByZWRoYXQuY29tPgorRGF0ZTogVGh1 LCA3IE1heSAyMDI2IDAwOjQ1OjMxICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMDkvMTJdIGZpeChp c2NzaSk6IHJlcGxhY2UgYGVjaG9gIHdyaXRlcyB3aXRoIGBwcmludGZgIHRvCisgcHJldmVudCB2 YXJpYWJsZSBpbmplY3Rpb24KK01JTUUtVmVyc2lvbjogMS4wCitDb250ZW50LVR5cGU6IHRleHQv cGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKKwor VXNlIHByaW50ZiB3aXRoIGV4cGxpY2l0IHZhcmlhYmxlIGVzY2FwaW5nIGAlcWAgZm9yIHNoZWxs IHNjcmlwdHM6CisgIC0gbW91bnQtbHVuLnNoIGhvb2tkaXIgc2NyaXB0IChpc2NzaV9sdW4gdmFy aWFibGUpCisgIC0gdWRldiBydWxlIChpc2NzaV9sdW4gc2FuaXRpemVkIHZpYSB0ciAtZCAnIicp CisgIC0gaW5pdGlhdG9ybmFtZS5pc2NzaSAoc291cmNlZCBhcyBzaGVsbCBhdCBpc2NzaXJvb3Qu c2g6MTYxLTE2MykKKworTm90ZTogaW5pdGlhdG9ybmFtZS5pc2NzaSBpcyBhbHNvIHJlYWQgYnkg aXNjc2lkIGFzIHBsYWluIHRleHQgKG5vCitzaGVsbCB1bnF1b3RpbmcpLiBGb3IgdmFsaWQgSVFO cyAoW2EtejAtOS46Xy1dKSwgJXEgaXMgYSBuby1vcCwgc28KK2lzY3NpZCBzZWVzIHRoZSB2YWx1 ZSB1bmNoYW5nZWQuIEZvciBtYWxpY2lvdXMgdmFsdWVzIHdpdGggc3BlY2lhbAorY2hhcmFjdGVy cywgJXEgd291bGQgcHJvZHVjZSBzaGVsbCBlc2NhcGluZyB0aGF0IGlzY3NpZCByZWFkcworbGl0 ZXJhbGx5IOKAlCBicmVha2luZyB0aGUgY29ubmVjdGlvbiByYXRoZXIgdGhhbiBhbGxvd2luZyBp bmplY3Rpb24uCistLS0KKyBtb2R1bGVzLmQvNzRpc2NzaS9pc2NzaXJvb3Quc2ggICAgICAgfCAx MCArKysrKy0tLS0tCisgbW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNjc2lyb290LnNoIHwgIDQg KystLQorIDIgZmlsZXMgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQor CitkaWZmIC0tZ2l0IGEvbW9kdWxlcy5kLzc0aXNjc2kvaXNjc2lyb290LnNoIGIvbW9kdWxlcy5k Lzc0aXNjc2kvaXNjc2lyb290LnNoCitpbmRleCA1MGIxMDI1OS4uNTAwMzBlMjAgMTAwNzU1Cist LS0gYS9tb2R1bGVzLmQvNzRpc2NzaS9pc2NzaXJvb3Quc2gKKysrKyBiL21vZHVsZXMuZC83NGlz Y3NpL2lzY3Npcm9vdC5zaAorQEAgLTE0NCw3ICsxNDQsNyBAQCBoYW5kbGVfbmV0cm9vdCgpIHsK KyAKKyAgICAgaWYgWyAteiAiJGlzY3NpX2luaXRpYXRvciIgXSAmJiBbIC1mIC9zeXMvZmlybXdh cmUvaWJmdC9pbml0aWF0b3IvaW5pdGlhdG9yLW5hbWUgXSAmJiAhIFsgLWYgL3RtcC9pc2NzaV9z ZXRfaW5pdGlhdG9yIF07IHRoZW4KKyAgICAgICAgIGlzY3NpX2luaXRpYXRvcj0kKHdoaWxlIHJl YWQgLXIgbGluZSB8fCBbIC1uICIkbGluZSIgXTsgZG8gZWNobyAiJGxpbmUiOyBkb25lIDwgL3N5 cy9maXJtd2FyZS9pYmZ0L2luaXRpYXRvci9pbml0aWF0b3ItbmFtZSkKKy0gICAgICAgIGVjaG8g IkluaXRpYXRvck5hbWU9JGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNj c2kKKysgICAgICAgIHByaW50ZiAnSW5pdGlhdG9yTmFtZT0lcVxuJyAiJGlzY3NpX2luaXRpYXRv ciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kKKyAgICAgICAgIHJtIC1mIC9ldGMvaXNjc2kv aW5pdGlhdG9ybmFtZS5pc2NzaQorICAgICAgICAgbWtkaXIgLXAgL2V0Yy9pc2NzaQorICAgICAg ICAgbG4gLWZzIC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaSAvZXRjL2lzY3NpL2luaXRpYXRvcm5h bWUuaXNjc2kKK0BAIC0xNjUsNyArMTY1LDcgQEAgaGFuZGxlX25ldHJvb3QoKSB7CisgCisgICAg IGlmIFsgLXogIiRpc2NzaV9pbml0aWF0b3IiIF07IHRoZW4KKyAgICAgICAgIGlzY3NpX2luaXRp YXRvcj0kKGlzY3NpLWluYW1lKQorLSAgICAgICAgZWNobyAiSW5pdGlhdG9yTmFtZT0kaXNjc2lf aW5pdGlhdG9yIiA+IC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaQorKyAgICAgICAgcHJpbnRmICdJ bml0aWF0b3JOYW1lPSVxXG4nICIkaXNjc2lfaW5pdGlhdG9yIiA+IC9ydW4vaW5pdGlhdG9ybmFt ZS5pc2NzaQorICAgICAgICAgcm0gLWYgL2V0Yy9pc2NzaS9pbml0aWF0b3JuYW1lLmlzY3NpCisg ICAgICAgICBta2RpciAtcCAvZXRjL2lzY3NpCisgICAgICAgICBsbiAtZnMgL3J1bi9pbml0aWF0 b3JuYW1lLmlzY3NpIC9ldGMvaXNjc2kvaW5pdGlhdG9ybmFtZS5pc2NzaQorQEAgLTE4OSw3ICsx ODksNyBAQCBoYW5kbGVfbmV0cm9vdCgpIHsKKyAgICAgICAgIGlzY3NpX2x1bj0wCisgICAgIGZp CisgCistICAgIGVjaG8gIkluaXRpYXRvck5hbWU9JGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2lu aXRpYXRvcm5hbWUuaXNjc2kKKysgICAgcHJpbnRmICdJbml0aWF0b3JOYW1lPSVxXG4nICIkaXNj c2lfaW5pdGlhdG9yIiA+IC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaQorICAgICBsbiAtZnMgL3J1 bi9pbml0aWF0b3JuYW1lLmlzY3NpIC9kZXYvLmluaXRpYXRvcm5hbWUuaXNjc2kKKyAgICAgaWYg ISBbIC1lIC9ldGMvaXNjc2kvaW5pdGlhdG9ybmFtZS5pc2NzaSBdOyB0aGVuCisgICAgICAgICBt a2RpciAtcCAvZXRjL2lzY3NpCitAQCAtMjEwLDE0ICsyMTAsMTQgQEAgaGFuZGxlX25ldHJvb3Qo KSB7CisgCisgICAgIGlmIFsgIiRyb290IiA9ICJkaGNwIiBdIHx8IFsgIiRuZXRyb290IiA9ICJk aGNwIiBdOyB0aGVuCisgICAgICAgICAjIGlmIHJvb3QgaXMgbm90IHNwZWNpZmllZCB0cnkgdG8g bW91bnQgdGhlIHdob2xlIGlTQ1NJIExVTgorLSAgICAgICAgcHJpbnRmICdTWU1MSU5LPT0iZGlz ay9ieS1wYXRoLyotaXNjc2ktKi0lcyIsIFNZTUxJTksrPSJyb290IlxuJyAiJGlzY3NpX2x1biIg Pj4gL2V0Yy91ZGV2L3J1bGVzLmQvOTktaXNjc2ktcm9vdC5ydWxlcworKyAgICAgICAgcHJpbnRm ICdTWU1MSU5LPT0iZGlzay9ieS1wYXRoLyotaXNjc2ktKi0lcyIsIFNZTUxJTksrPSJyb290Ilxu JyAiJChwcmludGYgJyVzJyAiJGlzY3NpX2x1biIgfCB0ciAtZCAnIicpIiA+PiAvZXRjL3VkZXYv cnVsZXMuZC85OS1pc2NzaS1yb290LnJ1bGVzCisgICAgICAgICB1ZGV2YWRtIGNvbnRyb2wgLS1y ZWxvYWQKKyAgICAgICAgIHdyaXRlX2ZzX3RhYiAvZGV2L3Jvb3QKKyAgICAgICAgIHdhaXRfZm9y X2RldiAtbiAvZGV2L3Jvb3QKKyAKKyAgICAgICAgICMgaW5zdGFsbCBtb3VudCBzY3JpcHQKKyAg ICAgICAgIFsgLXogIiR7RFJBQ1VUX1NZU1RFTUQtfSIgXSBcCistICAgICAgICAgICAgJiYgZWNo byAiaXNjc2lfbHVuPSRpc2NzaV9sdW4gLiAvYmluL21vdW50LWx1bi5zaCAiID4gIiRob29rZGly Ii9tb3VudC8wMS0kJC1pc2NzaS5zaAorKyAgICAgICAgICAgICYmIHByaW50ZiAnaXNjc2lfbHVu PSVxIC4gL2Jpbi9tb3VudC1sdW4uc2hcbicgIiRpc2NzaV9sdW4iID4gIiRob29rZGlyIi9tb3Vu dC8wMS0kJC1pc2NzaS5zaAorICAgICBmaQorIAorICAgICBpZiBzdHJnbG9iaW4gIiRpc2NzaV90 YXJnZXRfaXAiICcqOio6KicgJiYgISBzdHJnbG9iaW4gIiRpc2NzaV90YXJnZXRfaXAiICdbJzsg dGhlbgorZGlmZiAtLWdpdCBhL21vZHVsZXMuZC83NGlzY3NpL3BhcnNlLWlzY3Npcm9vdC5zaCBi L21vZHVsZXMuZC83NGlzY3NpL3BhcnNlLWlzY3Npcm9vdC5zaAoraW5kZXggMGIxMmQzNWIuLjk1 ODYwODA0IDEwMDc1NQorLS0tIGEvbW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNjc2lyb290LnNo CisrKysgYi9tb2R1bGVzLmQvNzRpc2NzaS9wYXJzZS1pc2NzaXJvb3Quc2gKK0BAIC0xMTEsNyAr MTExLDcgQEAgZmkKKyAKKyBpZiBhcmc9JChnZXRhcmcgcmQuaXNjc2kuaW5pdGlhdG9yIC1kIGlz Y3NpX2luaXRpYXRvcj0pICYmIFsgLW4gIiRhcmciIF0gJiYgISBbIC1mIC9ydW4vaW5pdGlhdG9y bmFtZS5pc2NzaSBdOyB0aGVuCisgICAgIGlzY3NpX2luaXRpYXRvcj0kYXJnCistICAgIGVjaG8g IkluaXRpYXRvck5hbWU9JGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNj c2kKKysgICAgcHJpbnRmICdJbml0aWF0b3JOYW1lPSVxXG4nICIkaXNjc2lfaW5pdGlhdG9yIiA+ IC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaQorICAgICBsbiAtZnMgL3J1bi9pbml0aWF0b3JuYW1l LmlzY3NpIC9kZXYvLmluaXRpYXRvcm5hbWUuaXNjc2kKKyAgICAgcm0gLWYgL2V0Yy9pc2NzaS9p bml0aWF0b3JuYW1lLmlzY3NpCisgICAgIG1rZGlyIC1wIC9ldGMvaXNjc2kKK0BAIC0xMjcsNyAr MTI3LDcgQEAgZmkKKyBpZiBbIC16ICIkaXNjc2lfaW5pdGlhdG9yIiBdICYmIFsgLWYgL3N5cy9m aXJtd2FyZS9pYmZ0L2luaXRpYXRvci9pbml0aWF0b3ItbmFtZSBdICYmICEgWyAtZiAvdG1wL2lz Y3NpX3NldF9pbml0aWF0b3IgXTsgdGhlbgorICAgICBpc2NzaV9pbml0aWF0b3I9JCh3aGlsZSBy ZWFkIC1yIGxpbmUgfHwgWyAtbiAiJGxpbmUiIF07IGRvIGVjaG8gIiRsaW5lIjsgZG9uZSA8IC9z eXMvZmlybXdhcmUvaWJmdC9pbml0aWF0b3IvaW5pdGlhdG9yLW5hbWUpCisgICAgIGlmIFsgLW4g IiRpc2NzaV9pbml0aWF0b3IiIF07IHRoZW4KKy0gICAgICAgIGVjaG8gIkluaXRpYXRvck5hbWU9 JGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kKKysgICAgICAgIHBy aW50ZiAnSW5pdGlhdG9yTmFtZT0lcVxuJyAiJGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRp YXRvcm5hbWUuaXNjc2kKKyAgICAgICAgIHJtIC1mIC9ldGMvaXNjc2kvaW5pdGlhdG9ybmFtZS5p c2NzaQorICAgICAgICAgbWtkaXIgLXAgL2V0Yy9pc2NzaQorICAgICAgICAgbG4gLWZzIC9ydW4v aW5pdGlhdG9ybmFtZS5pc2NzaSAvZXRjL2lzY3NpL2luaXRpYXRvcm5hbWUuaXNjc2kKKy0tIAor Mi41NS4wCisKCmRpZmYgLS1naXQgYS8wMDEwLWZpeC1iYXNlLWVzY2FwZS1hcmd1bWVudHMtaW4t aW5pdHF1ZXVlLWhvb2stc2NyaXB0LWcucGF0Y2ggYi8wMDEwLWZpeC1iYXNlLWVzY2FwZS1hcmd1 bWVudHMtaW4taW5pdHF1ZXVlLWhvb2stc2NyaXB0LWcucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMC4uMGQxY2RlOQotLS0gL2Rldi9udWxsCisrKyBiLzAwMTAtZml4LWJh c2UtZXNjYXBlLWFyZ3VtZW50cy1pbi1pbml0cXVldWUtaG9vay1zY3JpcHQtZy5wYXRjaApAQCAt MCwwICsxLDcxIEBACitGcm9tIGIyYWVmYjE5ZDU5NmE2NGQ0ODFiOWJkOTE2YjA1M2FiZjgxMDM3 YzcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFA cmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgMTQgTWF5IDIwMjYgMTQ6MjA6MTcgKzAyMDAKK1N1Ympl Y3Q6IFtQQVRDSCAxMC8xMl0gZml4KGJhc2UpOiBlc2NhcGUgYXJndW1lbnRzIGluIGluaXRxdWV1 ZSBob29rIHNjcmlwdAorIGdlbmVyYXRpb24KK01JTUUtVmVyc2lvbjogMS4wCitDb250ZW50LVR5 cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6 IDhiaXQKKworaW5pdHF1ZXVlLnNoIHdyaXRlcyBhcmd1bWVudHMgZGlyZWN0bHkgaW50byBnZW5l cmF0ZWQgaG9vayBzY3JpcHRzCit2aWEgYGVjaG8gIiRleGUiICIkQCJgLiBUaGVzZSBzY3JpcHRz IGFyZSBsYXRlciBzb3VyY2VkIGJ5CitkcmFjdXQtaW5pdHF1ZXVlLnNoLCBzbyBzaGVsbCBtZXRh Y2hhcmFjdGVycyBpbiBhcmd1bWVudHMgKGUuZy4KK0RIQ1AtZGVyaXZlZCAkbmV0cm9vdCBwYXNz ZWQgZnJvbSBwYXJzZS1pc2NzaXJvb3Quc2gpIGV4ZWN1dGUgYXMKK3Jvb3QgaW4gaW5pdHJhbWZz LgorCitSZXBsYWNlIGBlY2hvYCB3aXRoIGBwcmludGYgJyVxJ2AgdG8gc2hlbGwtZXNjYXBlIGFs bCBhcmd1bWVudHMKK2JlZm9yZSB3cml0aW5nIHRoZW0gaW50byB0aGUgaG9vayBzY3JpcHQsIHBy ZXZlbnRpbmcgY29tbWFuZAoraW5qZWN0aW9uIHZpYSBESENQLWNvbnRyb2xsZWQgbmV0cm9vdCB2 YWx1ZXMuCisKK1JlbW92ZSB0aGUgZnJhZ2lsZSBlbWJlZGRlZCBzaW5nbGUtcXVvdGUgd3JhcHBp bmcgKCInJHZhciciKSBmcm9tCitwYXJzZS1pc2NzaXJvb3Quc2ggY2FsbCBzaXRlcyAobGluZXMg OTAsIDEwMikg4oCUIHRob3NlIHJlbGllZCBvbgorZWNobyB3cml0aW5nIHF1b3RlcyB2ZXJiYXRp bSBmb3IgdGhlIHNoZWxsIHRvIHN0cmlwIHdoZW4gc291cmNpbmcuCitXaXRoIHByaW50ZiAnJXEn LCBpbml0cXVldWUgbm93IGhhbmRsZXMgZXNjYXBpbmcgY2VudHJhbGx5LCBzbyB0aGUKK21hbnVh bCB3cmFwcGluZyBpcyBubyBsb25nZXIgbmVlZGVkIGFuZCB3b3VsZCBjYXVzZSBsaXRlcmFsIHF1 b3RlCitjaGFyYWN0ZXJzIHRvIGxlYWsgaW50byBpc2NzaXJvb3QgYXJndW1lbnRzLgorCitDby1B dXRob3JlZC1CeTogQ2xhdWRlIE9wdXMgNC42IDxub3JlcGx5QGFudGhyb3BpYy5jb20+CistLS0K KyBtb2R1bGVzLmQvNzRpc2NzaS9wYXJzZS1pc2NzaXJvb3Quc2ggfCA0ICsrLS0KKyBtb2R1bGVz LmQvNzdpbml0cXVldWUvaW5pdHF1ZXVlLnNoICAgfCAzICsrLQorIDIgZmlsZXMgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvbW9kdWxlcy5k Lzc0aXNjc2kvcGFyc2UtaXNjc2lyb290LnNoIGIvbW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNj c2lyb290LnNoCitpbmRleCA5NTg2MDgwNC4uYjg3ZjE5YTEgMTAwNzU1CistLS0gYS9tb2R1bGVz LmQvNzRpc2NzaS9wYXJzZS1pc2NzaXJvb3Quc2gKKysrKyBiL21vZHVsZXMuZC83NGlzY3NpL3Bh cnNlLWlzY3Npcm9vdC5zaAorQEAgLTg5LDcgKzg5LDcgQEAgaWYgWyAtbiAiJGlzY3NpX2Zpcm13 YXJlIiBdOyB0aGVuCisgICAgIGVjaG8gIiR7RFJBQ1VUX1NZU1RFTUQrc3lzdGVtY3RsIGlzLWFj dGl2ZSBpbml0cmQtcm9vdC1kZXZpY2UudGFyZ2V0IHx8IH1bIC1mICcvdG1wL2lzY3Npc3RhcnRl ZC1maXJtd2FyZScgXSIgPiAiJGhvb2tkaXIiL2luaXRxdWV1ZS9maW5pc2hlZC9pc2NzaV9zdGFy dGVkLnNoCisgICAgIC9zYmluL2luaXRxdWV1ZSAtLXVuaXF1ZSAtLW9ubGluZSAvc2Jpbi9pc2Nz aXJvb3Qgb25saW5lICJpc2NzaToiICIkTkVXUk9PVCIKKyAgICAgL3NiaW4vaW5pdHF1ZXVlIC0t dW5pcXVlIC0tb25ldGltZSAtLXRpbWVvdXQgL3NiaW4vaXNjc2lyb290IHRpbWVvdXQgImlzY3Np OiIgIiRORVdST09UIgorLSAgICAvc2Jpbi9pbml0cXVldWUgLS11bmlxdWUgLS1vbmV0aW1lIC0t c2V0dGxlZCAvc2Jpbi9pc2NzaXJvb3Qgb25saW5lICJpc2NzaToiICInJE5FV1JPT1QnIgorKyAg ICAvc2Jpbi9pbml0cXVldWUgLS11bmlxdWUgLS1vbmV0aW1lIC0tc2V0dGxlZCAvc2Jpbi9pc2Nz aXJvb3Qgb25saW5lICJpc2NzaToiICIkTkVXUk9PVCIKKyBmaQorIAorICMgSVNDU0kgYWN0dWFs bHkgc3VwcG9ydGVkPworQEAgLTEwNSw3ICsxMDUsNyBAQCBtb2Rwcm9iZSAtYiAtcSBiZTJpc2Nz aQorIAorIGlmIFsgLW4gIiRuZXRyb290IiBdICYmIFsgIiRyb290IiAhPSAiL2Rldi9yb290IiBd ICYmIFsgIiRyb290IiAhPSAiZGhjcCIgXTsgdGhlbgorICAgICBpZiAhIGdldGFyZ2Jvb2wgMSBy ZC5uZWVkbmV0ID4gL2Rldi9udWxsIHx8ICEgZ2V0YXJnICJpcD0iOyB0aGVuCistICAgICAgICAv c2Jpbi9pbml0cXVldWUgLS11bmlxdWUgLS1vbmV0aW1lIC0tc2V0dGxlZCAvc2Jpbi9pc2NzaXJv b3QgZHVtbXkgIickbmV0cm9vdCciICInJE5FV1JPT1QnIgorKyAgICAgICAgL3NiaW4vaW5pdHF1 ZXVlIC0tdW5pcXVlIC0tb25ldGltZSAtLXNldHRsZWQgL3NiaW4vaXNjc2lyb290IGR1bW15ICIk bmV0cm9vdCIgIiRORVdST09UIgorICAgICBmaQorIGZpCisgCitkaWZmIC0tZ2l0IGEvbW9kdWxl cy5kLzc3aW5pdHF1ZXVlL2luaXRxdWV1ZS5zaCBiL21vZHVsZXMuZC83N2luaXRxdWV1ZS9pbml0 cXVldWUuc2gKK2luZGV4IDQ2YTAwZDJhLi4xY2FhNTI3MyAxMDA3NTUKKy0tLSBhL21vZHVsZXMu ZC83N2luaXRxdWV1ZS9pbml0cXVldWUuc2gKKysrKyBiL21vZHVsZXMuZC83N2luaXRxdWV1ZS9p bml0cXVldWUuc2gKK0BAIC02NCw3ICs2NCw4IEBAIGZpCisgICAgICMgc2hlbGxjaGVjayBkaXNh YmxlPVNDMjAxNgorICAgICBbIC1uICIkb25ldGltZSIgXSAmJiBlY2hvICdbIC1lICIkam9iIiBd ICYmIHJtIC1mIC0tICIkam9iIicKKyAgICAgWyAtbiAiJGVudiIgXSAmJiBlY2hvICIkZW52Igor LSAgICBlY2hvICIkZXhlIiAiJEAiCisrICAgIHByaW50ZiAnJXEgJyAiJGV4ZSIgIiRAIgorKyAg ICBwcmludGYgJ1xuJworIH0gPiAiL3RtcC8kJC0ke2pvYn0uc2giCisgCisgbXYgLWYgIi90bXAv JCQtJHtqb2J9LnNoIiAiJGhvb2tkaXIvaW5pdHF1ZXVlJHtxbmFtZX0vJHtqb2J9LnNoIgorLS0g CisyLjU1LjAKKwoKZGlmZiAtLWdpdCBhLzAwMTAtZml4LW5ldHdvcmstbGVnYWN5LXJlbW92ZS1u ZXR3b3JrLWxlZ2FjeS1jb21wbGV0ZWx5LS5wYXRjaCBiLzAwMTAtZml4LW5ldHdvcmstbGVnYWN5 LXJlbW92ZS1uZXR3b3JrLWxlZ2FjeS1jb21wbGV0ZWx5LS5wYXRjaApkZWxldGVkIGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMTBjM2IwMi4uMDAwMDAwMAotLS0gYS8wMDEwLWZpeC1uZXR3b3JrLWxl Z2FjeS1yZW1vdmUtbmV0d29yay1sZWdhY3ktY29tcGxldGVseS0ucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSwxNzUzICswLDAgQEAKLUZyb20gMmI2MzAyZDU0OTY1ZGQzNTQ3NjhlNWY4NTA5YTVl OWViNTg1Mzc1NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFBhdmVsIFZhbGVuYSA8 cHZhbGVuYUByZWRoYXQuY29tPgotRGF0ZTogVGh1LCA3IE1heSAyMDI2IDAwOjQwOjMxICswMjAw Ci1TdWJqZWN0OiBbUEFUQ0ggMTAvMTRdIGZpeChuZXR3b3JrLWxlZ2FjeSk6IHJlbW92ZSBuZXR3 b3JrLWxlZ2FjeSBjb21wbGV0ZWx5Ci0gZnJvbSB0aGUgY29kZWJhc2UKLQotKFRvIG5vdCByZWx5 IHNvbGVseSBvbiBhIGRyYWN1dC5zcGVjIGZpbGUuKQotLS0tCi0gbW9kdWxlcy5kLzM1bmV0d29y ay1sZWdhY3kvZGhjbGllbnQtc2NyaXB0LnNoIHwgMjc1IC0tLS0tLS0tLQotIG1vZHVsZXMuZC8z NW5ldHdvcmstbGVnYWN5L2RoY2xpZW50LmNvbmYgICAgICB8ICAxMSAtCi0gbW9kdWxlcy5kLzM1 bmV0d29yay1sZWdhY3kvZGhjcC1tdWx0aS5zaCAgICAgIHwgMTMzIC0tLS0tCi0gbW9kdWxlcy5k LzM1bmV0d29yay1sZWdhY3kvaWZ1cC5zaCAgICAgICAgICAgIHwgNTYyIC0tLS0tLS0tLS0tLS0t LS0tLQotIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2tpbGwtZGhjbGllbnQuc2ggICB8ICAx NSAtCi0gbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvbW9kdWxlLXNldHVwLnNoICAgIHwgIDk0 IC0tLQotIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L25ldC1nZW5ydWxlcy5zaCAgICB8IDEy NSAtLS0tCi0gbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYm9uZC5zaCAgICAgIHwg IDc2IC0tLQotIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWJyaWRnZS5zaCAgICB8 ICA0OSAtLQotIG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWliZnQuc2ggICAgICB8 ICAxMCAtCi0gbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtaWZuYW1lLnNoICAgIHwg IDI0IC0KLSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pcC1vcHRzLnNoICAgfCAx NTEgLS0tLS0KLSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS10ZWFtLnNoICAgICAg fCAgNjYgLS0KLSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS12bGFuLnNoICAgICAg fCAgMzcgLS0KLSAxNCBmaWxlcyBjaGFuZ2VkLCAxNjI4IGRlbGV0aW9ucygtKQotIGRlbGV0ZSBt b2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNsaWVudC1zY3JpcHQuc2gK LSBkZWxldGUgbW9kZSAxMDA2NDQgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvZGhjbGllbnQu Y29uZgotIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNw LW11bHRpLnNoCi0gZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L2lmdXAuc2gKLSBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kv a2lsbC1kaGNsaWVudC5zaAotIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3Jr LWxlZ2FjeS9tb2R1bGUtc2V0dXAuc2gKLSBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1 bmV0d29yay1sZWdhY3kvbmV0LWdlbnJ1bGVzLnNoCi0gZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVs ZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWJvbmQuc2gKLSBkZWxldGUgbW9kZSAxMDA3NTUg bW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdlLnNoCi0gZGVsZXRlIG1vZGUg MTAwNzU1IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWliZnQuc2gKLSBkZWxldGUg bW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtaWZuYW1lLnNoCi0g ZGVsZXRlIG1vZGUgMTAwNzU1IG1vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWlwLW9w dHMuc2gKLSBkZWxldGUgbW9kZSAxMDA3NTUgbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFy c2UtdGVhbS5zaAotIGRlbGV0ZSBtb2RlIDEwMDc1NSBtb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2Fj eS9wYXJzZS12bGFuLnNoCi0KLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2Fj eS9kaGNsaWVudC1zY3JpcHQuc2ggYi9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNsaWVu dC1zY3JpcHQuc2gKLWRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQotaW5kZXggNjc1MWYyZDYuLjAw MDAwMDAwCi0tLS0gYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNsaWVudC1zY3JpcHQu c2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDI3NSArMCwwIEBACi0tIyEvYmluL3NoCi0tCi0tUEFU SD0vdXNyL3NiaW46L3Vzci9iaW46L3NiaW46L2JpbgotLQotLWNvbW1hbmQgLXYgZ2V0YXJnID4g L2Rldi9udWxsIHx8IC4gL2xpYi9kcmFjdXQtbGliLnNoCi0tY29tbWFuZCAtdiBpcF90b192YXIg PiAvZGV2L251bGwgfHwgLiAvbGliL25ldC1saWIuc2gKLS0KLS0jIFdlIGFscmVhZHkgbmVlZCBh IHNldCBuZXRpZiBoZXJlCi0tbmV0aWY9JGludGVyZmFjZQotLQotLXNldHVwX2ludGVyZmFjZSgp IHsKLS0gICAgaXA9JG5ld19pcF9hZGRyZXNzCi0tICAgIG10dT0kbmV3X2ludGVyZmFjZV9tdHUK LS0gICAgbWFzaz0kbmV3X3N1Ym5ldF9tYXNrCi0tICAgIGJjYXN0PSRuZXdfYnJvYWRjYXN0X2Fk ZHJlc3MKLS0gICAgZ3c9JHtuZXdfcm91dGVycyUlLCp9Ci0tICAgIGRvbWFpbj0kbmV3X2RvbWFp bl9uYW1lCi0tICAgICMgZ2V0IHJpZCBvZiBjb250cm9sIGNoYXJzCi0tICAgIHNlYXJjaD0kKHBy aW50ZiAtLSAiJXMiICIkbmV3X2RvbWFpbl9zZWFyY2giIHwgdHIgLWQgJ1s6Y250cmw6XScpCi0t ICAgIG5hbWVzcnY9JG5ld19kb21haW5fbmFtZV9zZXJ2ZXJzCi0tICAgIGhvc3RuYW1lPSRuZXdf aG9zdF9uYW1lCi0tICAgIFsgLW4gIiRuZXdfZGhjcF9sZWFzZV90aW1lIiBdICYmIGxlYXNlX3Rp bWU9JG5ld19kaGNwX2xlYXNlX3RpbWUKLS0gICAgWyAtbiAiJG5ld19tYXhfbGlmZSIgXSAmJiBs ZWFzZV90aW1lPSRuZXdfbWF4X2xpZmUKLS0gICAgcHJlZmVycmVkX2xmdD0kbGVhc2VfdGltZQot LSAgICBbIC1uICIkbmV3X3ByZWZlcnJlZF9saWZlIiBdICYmIHByZWZlcnJlZF9sZnQ9JG5ld19w cmVmZXJyZWRfbGlmZQotLQotLSAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAg WyAtZiAvdG1wL25ldC4iJG5ldGlmIi5vdmVycmlkZSBdICYmIC4gL3RtcC9uZXQuIiRuZXRpZiIu b3ZlcnJpZGUKLS0KLS0gICAgIyBUYWtlbiBmcm9tIGRlYmlhbiBkaGNsaWVudC1zY3JpcHQ6Ci0t ICAgICMgVGhlIDU3NiBNVFUgaXMgb25seSB1c2VkIGZvciBYLjI1IGFuZCBkaWFsdXAgY29ubmVj dGlvbnMKLS0gICAgIyB3aGVyZSB0aGUgYWRtaW4gd2FudHMgbG93IGxhdGVuY3kuICBTdWNoIGEg bG93IE1UVSBjYW4gY2F1c2UKLS0gICAgIyBwcm9ibGVtcyB3aXRoIFVEUCB0cmFmZmljLCBhbW9u ZyBvdGhlciB0aGluZ3MuICBBcyBzdWNoLAotLSAgICAjIGRpc2FsbG93IE1UVXMgZnJvbSA1NzYg YW5kIGJlbG93IGJ5IGRlZmF1bHQsIHNvIHRoYXQgYnJva2VuCi0tICAgICMgTVRVcyBhcmUgaWdu b3JlZCwgYnV0IGhpZ2hlciBzdHVmZiBpcyBhbGxvd2VkICgxNDkyLCAxNTAwLCBldGMpLgotLSAg ICBpZiBbIC1uICIkbXR1IiBdICYmIFsgIiRtdHUiIC1ndCA1NzYgXTsgdGhlbgotLSAgICAgICAg aWYgISBpcCBsaW5rIHNldCAiJG5ldGlmIiBtdHUgIiRtdHUiOyB0aGVuCi0tICAgICAgICAgICAg aXAgbGluayBzZXQgIiRuZXRpZiIgZG93bgotLSAgICAgICAgICAgIGlwIGxpbmsgc2V0ICIkbmV0 aWYiIG10dSAiJG10dSIKLS0gICAgICAgICAgICBsaW5rdXAgIiRuZXRpZiIKLS0gICAgICAgIGZp Ci0tICAgIGZpCi0tCi0tICAgIGlwIGFkZHIgYWRkICIkaXAiJHttYXNrOisvJG1hc2t9ICR7YmNh c3Q6K2Jyb2FkY2FzdCAkYmNhc3R9IGRldiAiJG5ldGlmIiBcCi0tICAgICAgICAke2xlYXNlX3Rp bWU6K3ZhbGlkX2xmdCAkbGVhc2VfdGltZX0gXAotLSAgICAgICAgJHtwcmVmZXJyZWRfbGZ0Oitw cmVmZXJyZWRfbGZ0ICR7cHJlZmVycmVkX2xmdH19Ci0tCi0tICAgIGlmIFsgLW4gIiRndyIgXTsg dGhlbgotLSAgICAgICAgaWYgWyAiJG1hc2siID0gIjI1NS4yNTUuMjU1LjI1NSIgXTsgdGhlbgot LSAgICAgICAgICAgICMgcG9pbnQtdG8tcG9pbnQgY29ubmVjdGlvbiA9PiBzZXQgZXhwbGljaXQg cm91dGUgdG8gZ2F0ZXdheQotLSAgICAgICAgICAgIGVjaG8gaXAgcm91dGUgYWRkICIkZ3ciIGRl diAiJG5ldGlmIiA+IC90bXAvbmV0LiIkbmV0aWYiLmd3Ci0tICAgICAgICBmaQotLQotLSAgICAg ICAgZWNobyAiJGd3IiB8IHsKLS0gICAgICAgICAgICBJRlM9JyAnIHJlYWQgLXIgbWFpbl9ndyBv dGhlcl9ndwotLSAgICAgICAgICAgIGVjaG8gaXAgcm91dGUgcmVwbGFjZSBkZWZhdWx0IHZpYSAi JG1haW5fZ3ciIGRldiAiJG5ldGlmIiA+PiAvdG1wL25ldC4iJG5ldGlmIi5ndwotLSAgICAgICAg ICAgIGlmIFsgLW4gIiRvdGhlcl9ndyIgXTsgdGhlbgotLSAgICAgICAgICAgICAgICBmb3IgZyBp biAkb3RoZXJfZ3c7IGRvCi0tICAgICAgICAgICAgICAgICAgICBlY2hvIGlwIHJvdXRlIGFkZCBk ZWZhdWx0IHZpYSAiJGciIGRldiAiJG5ldGlmIiA+PiAvdG1wL25ldC4iJG5ldGlmIi5ndwotLSAg ICAgICAgICAgICAgICBkb25lCi0tICAgICAgICAgICAgZmkKLS0gICAgICAgIH0KLS0gICAgZmkK LS0KLS0gICAgaWYgZ2V0YXJnYm9vbCAxIHJkLnBlZXJkbnM7IHRoZW4KLS0gICAgICAgIFsgLW4g IiR7c2VhcmNofSR7ZG9tYWlufSIgXSAmJiBlY2hvICJzZWFyY2ggJHNlYXJjaCAkZG9tYWluIiA+ IC90bXAvbmV0LiIkbmV0aWYiLnJlc29sdi5jb25mCi0tICAgICAgICBpZiBbIC1uICIkbmFtZXNy diIgXTsgdGhlbgotLSAgICAgICAgICAgIGZvciBzIGluICRuYW1lc3J2OyBkbwotLSAgICAgICAg ICAgICAgICBlY2hvIG5hbWVzZXJ2ZXIgIiRzIgotLSAgICAgICAgICAgIGRvbmUKLS0gICAgICAg IGZpID4+IC90bXAvbmV0LiIkbmV0aWYiLnJlc29sdi5jb25mCi0tICAgIGZpCi0tICAgICMgTm90 ZTogaG9zdG5hbWUgY2FuIGJlIGZxZG4gT1Igc2hvcnQgaG9zdG5hbWUsIHNvIGNob3Agb2ZmIGFu eQotLSAgICAjIHRyYWlsaW5nIGRvbWFpbiBuYW1lIGFuZCBleHBsaWNpdGx5IGFkZCBhbnkgZG9t YWluIGlmIHNldC4KLS0gICAgWyAtbiAiJGhvc3RuYW1lIiBdICYmIGVjaG8gImVjaG8gJHtob3N0 bmFtZSUuIiRkb21haW4ifSR7ZG9tYWluOisuJGRvbWFpbn0gPiAvcHJvYy9zeXMva2VybmVsL2hv c3RuYW1lIiA+IC90bXAvbmV0LiIkbmV0aWYiLmhvc3RuYW1lCi0tfQotLQotLXNldHVwX2ludGVy ZmFjZTYoKSB7Ci0tICAgIGRvbWFpbj0kbmV3X2RvbWFpbl9uYW1lCi0tICAgICMgZ2V0IHJpZCBv ZiBjb250cm9sIGNoYXJzCi0tICAgIHNlYXJjaD0kKHByaW50ZiAtLSAiJXMiICIkbmV3X2RoY3A2 X2RvbWFpbl9zZWFyY2giIHwgdHIgLWQgJ1s6Y250cmw6XScpCi0tICAgIG5hbWVzcnY9JG5ld19k aGNwNl9uYW1lX3NlcnZlcnMKLS0gICAgaG9zdG5hbWU9JG5ld19ob3N0X25hbWUKLS0gICAgWyAt biAiJG5ld19kaGNwX2xlYXNlX3RpbWUiIF0gJiYgbGVhc2VfdGltZT0kbmV3X2RoY3BfbGVhc2Vf dGltZQotLSAgICBbIC1uICIkbmV3X21heF9saWZlIiBdICYmIGxlYXNlX3RpbWU9JG5ld19tYXhf bGlmZQotLSAgICBwcmVmZXJyZWRfbGZ0PSRsZWFzZV90aW1lCi0tICAgIFsgLW4gIiRuZXdfcHJl ZmVycmVkX2xpZmUiIF0gJiYgcHJlZmVycmVkX2xmdD0kbmV3X3ByZWZlcnJlZF9saWZlCi0tCi0t ICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotLSAgICBbIC1mIC90bXAvbmV0LiIkbmV0 aWYiLm92ZXJyaWRlIF0gJiYgLiAvdG1wL25ldC4iJG5ldGlmIi5vdmVycmlkZQotLQotLSAgICBp cCAtNiBhZGRyIGFkZCAiJHtuZXdfaXA2X2FkZHJlc3N9Ii8iJHtuZXdfaXA2X3ByZWZpeGxlbn0i IFwKLS0gICAgICAgIGRldiAiJHtuZXRpZn0iIHNjb3BlIGdsb2JhbCBcCi0tICAgICAgICAke2xl YXNlX3RpbWU6K3ZhbGlkX2xmdCAkbGVhc2VfdGltZX0gXAotLSAgICAgICAgJHtwcmVmZXJyZWRf bGZ0OitwcmVmZXJyZWRfbGZ0ICR7cHJlZmVycmVkX2xmdH19Ci0tCi0tICAgIGlmIGdldGFyZ2Jv b2wgMSByZC5wZWVyZG5zOyB0aGVuCi0tICAgICAgICBbIC1uICIke3NlYXJjaH0ke2RvbWFpbn0i IF0gJiYgZWNobyAic2VhcmNoICRzZWFyY2ggJGRvbWFpbiIgPiAvdG1wL25ldC4iJG5ldGlmIi5y ZXNvbHYuY29uZgotLSAgICAgICAgaWYgWyAtbiAiJG5hbWVzcnYiIF07IHRoZW4KLS0gICAgICAg ICAgICBmb3IgcyBpbiAkbmFtZXNydjsgZG8KLS0gICAgICAgICAgICAgICAgZWNobyBuYW1lc2Vy dmVyICIkcyIKLS0gICAgICAgICAgICBkb25lCi0tICAgICAgICBmaSA+PiAvdG1wL25ldC4iJG5l dGlmIi5yZXNvbHYuY29uZgotLSAgICBmaQotLQotLSAgICAjIE5vdGU6IGhvc3RuYW1lIGNhbiBi ZSBmcWRuIE9SIHNob3J0IGhvc3RuYW1lLCBzbyBjaG9wIG9mZiBhbnkKLS0gICAgIyB0cmFpbGlu ZyBkb21haW4gbmFtZSBhbmQgZXhwbGljaXRseSBhZGQgYW55IGRvbWFpbiBpZiBzZXQuCi0tICAg IFsgLW4gIiRob3N0bmFtZSIgXSAmJiBlY2hvICJlY2hvICR7aG9zdG5hbWUlLiIkZG9tYWluIn0k e2RvbWFpbjorLiRkb21haW59ID4gL3Byb2Mvc3lzL2tlcm5lbC9ob3N0bmFtZSIgPiAvdG1wL25l dC4iJG5ldGlmIi5ob3N0bmFtZQotLX0KLS0KLS1wYXJzZV9vcHRpb25fMTIxKCkgewotLSAgICB3 aGlsZSBbICQjIC1uZSAwIF07IGRvCi0tICAgICAgICBtYXNrPSIkMSIKLS0gICAgICAgIHNoaWZ0 Ci0tCi0tICAgICAgICAjIElzIHRoZSBkZXN0aW5hdGlvbiBhIG11bHRpY2FzdCBncm91cD8KLS0g ICAgICAgIGlmIFsgIiQxIiAtZ2UgMjI0IF0gJiYgWyAiJDEiIC1sdCAyNDAgXTsgdGhlbgotLSAg ICAgICAgICAgIG11bHRpY2FzdD0xCi0tICAgICAgICBlbHNlCi0tICAgICAgICAgICAgbXVsdGlj YXN0PTAKLS0gICAgICAgIGZpCi0tCi0tICAgICAgICAjIFBhcnNlIHRoZSBhcmd1bWVudHMgaW50 byBhIENJRFIgbmV0L21hc2sgc3RyaW5nCi0tICAgICAgICBpZiBbICIkbWFzayIgLWd0IDI0IF07 IHRoZW4KLS0gICAgICAgICAgICBkZXN0aW5hdGlvbj0iJDEuJDIuJDMuJDQvJG1hc2siCi0tICAg ICAgICAgICAgc2hpZnQKLS0gICAgICAgICAgICBzaGlmdAotLSAgICAgICAgICAgIHNoaWZ0Ci0t ICAgICAgICAgICAgc2hpZnQKLS0gICAgICAgIGVsaWYgWyAiJG1hc2siIC1ndCAxNiBdOyB0aGVu Ci0tICAgICAgICAgICAgZGVzdGluYXRpb249IiQxLiQyLiQzLjAvJG1hc2siCi0tICAgICAgICAg ICAgc2hpZnQKLS0gICAgICAgICAgICBzaGlmdAotLSAgICAgICAgICAgIHNoaWZ0Ci0tICAgICAg ICBlbGlmIFsgIiRtYXNrIiAtZ3QgOCBdOyB0aGVuCi0tICAgICAgICAgICAgZGVzdGluYXRpb249 IiQxLiQyLjAuMC8kbWFzayIKLS0gICAgICAgICAgICBzaGlmdAotLSAgICAgICAgICAgIHNoaWZ0 Ci0tICAgICAgICBlbGlmIFsgIiRtYXNrIiAtZ3QgMCBdOyB0aGVuCi0tICAgICAgICAgICAgZGVz dGluYXRpb249IiQxLjAuMC4wLyRtYXNrIgotLSAgICAgICAgICAgIHNoaWZ0Ci0tICAgICAgICBl bHNlCi0tICAgICAgICAgICAgZGVzdGluYXRpb249IjAuMC4wLjAvJG1hc2siCi0tICAgICAgICBm aQotLQotLSAgICAgICAgIyBSZWFkIHRoZSBnYXRld2F5Ci0tICAgICAgICBnYXRld2F5PSIkMS4k Mi4kMy4kNCIKLS0gICAgICAgIHNoaWZ0Ci0tICAgICAgICBzaGlmdAotLSAgICAgICAgc2hpZnQK LS0gICAgICAgIHNoaWZ0Ci0tCi0tICAgICAgICAjIE11bHRpY2FzdCByb3V0aW5nIG9uIExpbnV4 Ci0tICAgICAgICAjICAtIElmIHlvdSBzZXQgYSBuZXh0LWhvcCBhZGRyZXNzIGZvciBhIG11bHRp Y2FzdCBncm91cCwgdGhpcyBicmVha3Mgd2l0aCBDaXNjbyBzd2l0Y2hlcwotLSAgICAgICAgIyAg LSBJZiB5b3Ugc2ltcGx5IGxlYXZlIGl0IGxpbmstbG9jYWwgYW5kIGF0dGFjaCBpdCB0byBhbiBp bnRlcmZhY2UsIGl0IHdvcmtzIGZpbmUuCi0tICAgICAgICBpZiBbICRtdWx0aWNhc3QgLWVxIDEg XSB8fCBbICIkZ2F0ZXdheSIgPSAiMC4wLjAuMCIgXTsgdGhlbgotLSAgICAgICAgICAgIHRlbXBf cmVzdWx0PSIkZGVzdGluYXRpb24gZGV2ICRpbnRlcmZhY2UiCi0tICAgICAgICBlbHNlCi0tICAg ICAgICAgICAgdGVtcF9yZXN1bHQ9IiRkZXN0aW5hdGlvbiB2aWEgJGdhdGV3YXkgZGV2ICRpbnRl cmZhY2UiCi0tICAgICAgICBmaQotLQotLSAgICAgICAgZWNobyAiL3NiaW4vaXAgcm91dGUgcmVw bGFjZSAkdGVtcF9yZXN1bHQiCi0tICAgIGRvbmUKLS19Ci0tCi0tY2FzZSAkcmVhc29uIGluCi0t ICAgIFBSRUlOSVQpCi0tICAgICAgICBlY2hvICJkaGNwOiBQUkVJTklUICRuZXRpZiB1cCIKLS0g ICAgICAgIGxpbmt1cCAiJG5ldGlmIgotLSAgICAgICAgOzsKLS0KLS0gICAgUFJFSU5JVDYpCi0t ICAgICAgICBlY2hvICJkaGNwOiBQUkVJTklUNiAkbmV0aWYgdXAiCi0tICAgICAgICBsaW5rdXAg IiRuZXRpZiIKLS0gICAgICAgIHdhaXRfZm9yX2lwdjZfZGFkX2xpbmsgIiRuZXRpZiIKLS0gICAg ICAgIDs7Ci0tCi0tICAgIEJPVU5EKQotLSAgICAgICAgZWNobyAiZGhjcDogQk9VTkQgc2V0dGlu ZyB1cCAkbmV0aWYiCi0tICAgICAgICB1bnNldCBsYXllcjIKLS0gICAgICAgIGlmIFsgLWYgL3N5 cy9jbGFzcy9uZXQvIiRuZXRpZiIvZGV2aWNlL2xheWVyMiBdOyB0aGVuCi0tICAgICAgICAgICAg cmVhZCAtciBsYXllcjIgPCAvc3lzL2NsYXNzL25ldC8iJG5ldGlmIi9kZXZpY2UvbGF5ZXIyCi0t ICAgICAgICBmaQotLSAgICAgICAgaWYgWyAiJGxheWVyMiIgIT0gIjAiIF07IHRoZW4KLS0gICAg ICAgICAgICBpZiBjb21tYW5kIC12IGFycGluZzIgPiAvZGV2L251bGw7IHRoZW4KLS0gICAgICAg ICAgICAgICAgaWYgYXJwaW5nMiAtcSAtQyAxIC1jIDIgLUkgIiRuZXRpZiIgLTAgIiRuZXdfaXBf YWRkcmVzcyI7IHRoZW4KLS0gICAgICAgICAgICAgICAgICAgIHdhcm4gIkR1cGxpY2F0ZSBhZGRy ZXNzIGRldGVjdGVkIGZvciAkbmV3X2lwX2FkZHJlc3Mgd2hpbGUgZG9pbmcgZGhjcC4gcmV0cnlp bmciCi0tICAgICAgICAgICAgICAgICAgICBleGl0IDEKLS0gICAgICAgICAgICAgICAgZmkKLS0g ICAgICAgICAgICBlbHNlCi0tICAgICAgICAgICAgICAgIGlmICEgYXJwaW5nIC1mIC1xIC1EIC1j IDIgLUkgIiRuZXRpZiIgIiRuZXdfaXBfYWRkcmVzcyI7IHRoZW4KLS0gICAgICAgICAgICAgICAg ICAgIHdhcm4gIkR1cGxpY2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkbmV3X2lwX2FkZHJlc3Mg d2hpbGUgZG9pbmcgZGhjcC4gcmV0cnlpbmciCi0tICAgICAgICAgICAgICAgICAgICBleGl0IDEK LS0gICAgICAgICAgICAgICAgZmkKLS0gICAgICAgICAgICBmaQotLSAgICAgICAgZmkKLS0gICAg ICAgIHVuc2V0IGxheWVyMgotLSAgICAgICAgc2V0dXBfaW50ZXJmYWNlCi0tICAgICAgICBzZXQg fCB3aGlsZSByZWFkIC1yIGxpbmUgfHwgWyAtbiAiJGxpbmUiIF07IGRvCi0tICAgICAgICAgICAg WyAiJHtsaW5lI25ld199IiA9ICIkbGluZSIgXSAmJiBjb250aW51ZQotLSAgICAgICAgICAgIGVj aG8gIiRsaW5lIgotLSAgICAgICAgZG9uZSA+IC90bXAvZGhjbGllbnQuIiRuZXRpZiIuZGhjcG9w dHMKLS0KLS0gICAgICAgIHsKLS0gICAgICAgICAgICBlY2hvICcuIC9saWIvbmV0LWxpYi5zaCcK LS0gICAgICAgICAgICBlY2hvICJzZXR1cF9uZXQgJG5ldGlmIgotLSAgICAgICAgICAgIGlmIFsg LW4gIiRuZXdfY2xhc3NsZXNzX3N0YXRpY19yb3V0ZXMiIF07IHRoZW4KLS0gICAgICAgICAgICAg ICAgT0xESUZTPSIkSUZTIgotLSAgICAgICAgICAgICAgICBJRlM9Ii4kSUZTIgotLSAgICAgICAg ICAgICAgICBwYXJzZV9vcHRpb25fMTIxICIkbmV3X2NsYXNzbGVzc19zdGF0aWNfcm91dGVzIgot LSAgICAgICAgICAgICAgICBJRlM9IiRPTERJRlMiCi0tICAgICAgICAgICAgZmkKLS0gICAgICAg ICAgICBlY2hvICJzb3VyY2VfaG9vayBpbml0cXVldWUvb25saW5lICRuZXRpZiIKLS0gICAgICAg ICAgICBbIC1lIC90bXAvbmV0LiIkbmV0aWYiLm1hbnVhbHVwIF0gfHwgZWNobyAiL3NiaW4vbmV0 cm9vdCAkbmV0aWYiCi0tICAgICAgICAgICAgZWNobyAicm0gLWYgLS0gJGhvb2tkaXIvaW5pdHF1 ZXVlL3NldHVwX25ldF8kbmV0aWYuc2giCi0tICAgICAgICB9ID4gIiRob29rZGlyIi9pbml0cXVl dWUvc2V0dXBfbmV0XyIkbmV0aWYiLnNoCi0tCi0tICAgICAgICBlY2hvICJbIC1mIC90bXAvbmV0 LiRuZXRpZi5kaWQtc2V0dXAgXSIgPiAiJGhvb2tkaXIiL2luaXRxdWV1ZS9maW5pc2hlZC9kaGNs aWVudC0iJG5ldGlmIi5zaAotLSAgICAgICAgOiA+IC90bXAvbmV0LiIkbmV0aWYiLnVwCi0tICAg ICAgICBpZiBbIC1lIC9zeXMvY2xhc3MvbmV0LyIke25ldGlmfSIvYWRkcmVzcyBdOyB0aGVuCi0t ICAgICAgICAgICAgOiA+ICIvdG1wL25ldC4kKGNhdCAvc3lzL2NsYXNzL25ldC8iJHtuZXRpZn0i L2FkZHJlc3MpLnVwIgotLSAgICAgICAgZmkKLS0KLS0gICAgICAgIDs7Ci0tCi0tICAgIFJFTkVX IHwgUkVCSU5EKQotLSAgICAgICAgdW5zZXQgbGVhc2VfdGltZQotLSAgICAgICAgWyAtbiAiJG5l d19kaGNwX2xlYXNlX3RpbWUiIF0gJiYgbGVhc2VfdGltZT0kbmV3X2RoY3BfbGVhc2VfdGltZQot LSAgICAgICAgWyAtbiAiJG5ld19tYXhfbGlmZSIgXSAmJiBsZWFzZV90aW1lPSRuZXdfbWF4X2xp ZmUKLS0gICAgICAgIHByZWZlcnJlZF9sZnQ9JGxlYXNlX3RpbWUKLS0gICAgICAgIFsgLW4gIiRu ZXdfcHJlZmVycmVkX2xpZmUiIF0gJiYgcHJlZmVycmVkX2xmdD0kbmV3X3ByZWZlcnJlZF9saWZl Ci0tICAgICAgICBpcCAtNCBhZGRyIGNoYW5nZSAiJHtuZXdfaXBfYWRkcmVzc30iLyIke25ld19z dWJuZXRfbWFza30iIGJyb2FkY2FzdCAiJHtuZXdfYnJvYWRjYXN0X2FkZHJlc3N9IiBkZXYgIiR7 aW50ZXJmYWNlfSIgXAotLSAgICAgICAgICAgICR7bGVhc2VfdGltZTordmFsaWRfbGZ0ICRsZWFz ZV90aW1lfSAke3ByZWZlcnJlZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJyZWRfbGZ0fX0g XAotLSAgICAgICAgICAgID4gL2Rldi9udWxsIDI+JjEKLS0gICAgICAgIDs7Ci0tCi0tICAgIEJP VU5ENikKLS0gICAgICAgIGVjaG8gImRoY3A6IEJPVU5ENiBzZXR0aW5nIHVwICRuZXRpZiIKLS0g ICAgICAgIHNldHVwX2ludGVyZmFjZTYKLS0KLS0gICAgICAgIHNldCB8IHdoaWxlIHJlYWQgLXIg bGluZSB8fCBbIC1uICIkbGluZSIgXTsgZG8KLS0gICAgICAgICAgICBbICIke2xpbmUjbmV3X30i ID0gIiRsaW5lIiBdICYmIGNvbnRpbnVlCi0tICAgICAgICAgICAgZWNobyAiJGxpbmUiCi0tICAg ICAgICBkb25lID4gL3RtcC9kaGNsaWVudC4iJG5ldGlmIi5kaGNwb3B0cwotLQotLSAgICAgICAg ewotLSAgICAgICAgICAgIGVjaG8gJy4gL2xpYi9uZXQtbGliLnNoJwotLSAgICAgICAgICAgIGVj aG8gInNldHVwX25ldCAkbmV0aWYiCi0tICAgICAgICAgICAgZWNobyAic291cmNlX2hvb2sgaW5p dHF1ZXVlL29ubGluZSAkbmV0aWYiCi0tICAgICAgICAgICAgWyAtZSAvdG1wL25ldC4iJG5ldGlm Ii5tYW51YWx1cCBdIHx8IGVjaG8gIi9zYmluL25ldHJvb3QgJG5ldGlmIgotLSAgICAgICAgICAg IGVjaG8gInJtIC1mIC0tICRob29rZGlyL2luaXRxdWV1ZS9zZXR1cF9uZXRfJG5ldGlmLnNoIgot LSAgICAgICAgfSA+ICIkaG9va2RpciIvaW5pdHF1ZXVlL3NldHVwX25ldF8iJG5ldGlmIi5zaAot LQotLSAgICAgICAgZWNobyAiWyAtZiAvdG1wL25ldC4kbmV0aWYuZGlkLXNldHVwIF0iID4gIiRo b29rZGlyIi9pbml0cXVldWUvZmluaXNoZWQvZGhjbGllbnQtIiRuZXRpZiIuc2gKLS0gICAgICAg IDogPiAvdG1wL25ldC4iJG5ldGlmIi51cAotLSAgICAgICAgaWYgWyAtZSAvc3lzL2NsYXNzL25l dC8iJHtuZXRpZn0iL2FkZHJlc3MgXTsgdGhlbgotLSAgICAgICAgICAgIDogPiAiL3RtcC9uZXQu JChjYXQgL3N5cy9jbGFzcy9uZXQvIiR7bmV0aWZ9Ii9hZGRyZXNzKS51cCIKLS0gICAgICAgIGZp Ci0tICAgICAgICA7OwotLQotLSAgICBSRU5FVzYgfCBSRUJJTkQ2KQotLSAgICAgICAgdW5zZXQg bGVhc2VfdGltZQotLSAgICAgICAgWyAtbiAiJG5ld19kaGNwX2xlYXNlX3RpbWUiIF0gJiYgbGVh c2VfdGltZT0kbmV3X2RoY3BfbGVhc2VfdGltZQotLSAgICAgICAgWyAtbiAiJG5ld19tYXhfbGlm ZSIgXSAmJiBsZWFzZV90aW1lPSRuZXdfbWF4X2xpZmUKLS0gICAgICAgIHByZWZlcnJlZF9sZnQ9 JGxlYXNlX3RpbWUKLS0gICAgICAgIFsgLW4gIiRuZXdfcHJlZmVycmVkX2xpZmUiIF0gJiYgcHJl ZmVycmVkX2xmdD0kbmV3X3ByZWZlcnJlZF9saWZlCi0tICAgICAgICBpcCAtNiBhZGRyIGNoYW5n ZSAiJHtuZXdfaXA2X2FkZHJlc3N9Ii8iJHtuZXdfaXA2X3ByZWZpeGxlbn0iIGRldiAiJHtpbnRl cmZhY2V9IiBzY29wZSBnbG9iYWwgXAotLSAgICAgICAgICAgICR7bGVhc2VfdGltZTordmFsaWRf bGZ0ICRsZWFzZV90aW1lfSAke3ByZWZlcnJlZF9sZnQ6K3ByZWZlcnJlZF9sZnQgJHtwcmVmZXJy ZWRfbGZ0fX0gXAotLSAgICAgICAgICAgID4gL2Rldi9udWxsIDI+JjEKLS0gICAgICAgIDs7Ci0t Ci0tICAgICopIGVjaG8gImRoY3A6ICRyZWFzb24iIDs7Ci0tZXNhYwotLQotLWV4aXQgMAotZGlm ZiAtLWdpdCBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2RoY2xpZW50LmNvbmYgYi9tb2R1 bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9kaGNsaWVudC5jb25mCi1kZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKLWluZGV4IGZmZDI0ZWY2Li4wMDAwMDAwMAotLS0tIGEvbW9kdWxlcy5kLzM1bmV0d29y ay1sZWdhY3kvZGhjbGllbnQuY29uZgotKysrIC9kZXYvbnVsbAotQEAgLTEsMTEgKzAsMCBAQAot LQotLW9wdGlvbiBjbGFzc2xlc3Mtc3RhdGljLXJvdXRlcyBjb2RlIDEyMSA9IGFycmF5IG9mIHVu c2lnbmVkIGludGVnZXIgODsKLS0KLS1zZW5kIGRoY3AtY2xpZW50LWlkZW50aWZpZXIgPSBoYXJk d2FyZTsKLS0KLS1yZXF1ZXN0IHN1Ym5ldC1tYXNrLCBicm9hZGNhc3QtYWRkcmVzcywgdGltZS1v ZmZzZXQsIHJvdXRlcnMsCi0tICAgICAgICBkb21haW4tbmFtZSwgZG9tYWluLW5hbWUtc2VydmVy cywgZG9tYWluLXNlYXJjaCwgaG9zdC1uYW1lLAotLSAgICAgICAgcm9vdC1wYXRoLCBpbnRlcmZh Y2UtbXR1LCBjbGFzc2xlc3Mtc3RhdGljLXJvdXRlcywKLS0gICAgICAgIG5ldGJpb3MtbmFtZS1z ZXJ2ZXJzLCBuZXRiaW9zLXNjb3BlLCBudHAtc2VydmVycywKLS0gICAgICAgIGRoY3A2LmRvbWFp bi1zZWFyY2gsIGRoY3A2LmZxZG4sCi0tICAgICAgICBkaGNwNi5uYW1lLXNlcnZlcnMsIGRoY3A2 LnNudHAtc2VydmVyczsKLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9k aGNwLW11bHRpLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvZGhjcC1tdWx0aS5zaAot ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCAxYzVlZTczMy4uMDAwMDAwMDAKLS0tLSBh L21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2RoY3AtbXVsdGkuc2gKLSsrKyAvZGV2L251bGwK LUBAIC0xLDEzMyArMCwwIEBACi0tIyEvYmluL3NoCi0tIyAtKi0gbW9kZTogc2hlbGwtc2NyaXB0 OyBpbmRlbnQtdGFicy1tb2RlOiBuaWw7IHNoLWJhc2ljLW9mZnNldDogNDsgLSotCi0tIyBleDog dHM9OCBzdz00IHN0cz00IGV0IGZpbGV0eXBlPXNoCi0tIwotLVBBVEg9L3Vzci9zYmluOi91c3Iv YmluOi9zYmluOi9iaW4KLS0KLS0jIEZpbGUgdG8gc3RhcnQgZGhjbGllbnQgcmVxdWVzdHMgb24g ZGlmZmVyZW50IGludGVyZmFjZXMgaW4gcGFyYWxsZWwKLS0KLS1jb21tYW5kIC12IGdldGFyZyA+ IC9kZXYvbnVsbCB8fCAuIC9saWIvZHJhY3V0LWxpYi5zaAotLS4gL2xpYi9uZXQtbGliLnNoCi0t Ci0tbmV0aWY9JDEKLS1kb192bGFuPSQyCi0tYXJnPSQzCi0tCi0tIyBSdW4gZGhjbGllbnQgaW4g cGFyYWxsZWwKLS1kb19kaGNsaWVudCgpIHsKLS0gICAgbG9jYWwgX0NPVU5UPTAKLS0gICAgbG9j YWwgX3RpbWVvdXQKLS0gICAgbG9jYWwgX0RIQ1BSRVRSWQotLSAgICBfdGltZW91dD0kKGdldGFy ZyByZC5uZXQudGltZW91dC5kaGNwPSkKLS0gICAgX0RIQ1BSRVRSWT0kKGdldGFyZ251bSAxIDEg MTAwMDAwMDAwMCByZC5uZXQuZGhjcC5yZXRyeT0pCi0tCi0tICAgIGlmIFsgLW4gIiRfdGltZW91 dCIgXTsgdGhlbgotLSAgICAgICAgaWYgISAoZGhjbGllbnQgLS1oZWxwIDI+JjEgfCBncmVwIC1x cyAtRiAtLSAnLS10aW1lb3V0Jyk7IHRoZW4KLS0gICAgICAgICAgICB3YXJuICJyZC5uZXQudGlt ZW91dC5kaGNwIGhhcyBubyBlZmZlY3QgYmVjYXVzZSBkaGNsaWVudCBkb2VzIG5vdCBpbXBsZW1l bnQgdGhlIC0tdGltZW91dCBvcHRpb24iCi0tICAgICAgICAgICAgdW5zZXQgX3RpbWVvdXQKLS0g ICAgICAgIGZpCi0tICAgIGZpCi0tCi0tICAgIHdoaWxlIFsgJF9DT1VOVCAtbHQgIiRfREhDUFJF VFJZIiBdOyBkbwotLSAgICAgICAgaW5mbyAiU3RhcnRpbmcgZGhjcCBmb3IgaW50ZXJmYWNlICRu ZXRpZiIKLS0gICAgICAgIGRoY2xpZW50ICIkYXJnIiBcCi0tICAgICAgICAgICAgJHtfdGltZW91 dDorLS10aW1lb3V0ICIkX3RpbWVvdXQifSBcCi0tICAgICAgICAgICAgLXEgXAotLSAgICAgICAg ICAgIC0xIFwKLS0gICAgICAgICAgICAtY2YgL2V0Yy9kaGNsaWVudC5jb25mIFwKLS0gICAgICAg ICAgICAtcGYgL3RtcC9kaGNsaWVudC4iJG5ldGlmIi5waWQgXAotLSAgICAgICAgICAgIC1sZiAv dG1wL2RoY2xpZW50LiIkbmV0aWYiLmxlYXNlIFwKLS0gICAgICAgICAgICAiJG5ldGlmIiAmCi0t ICAgICAgICB3YWl0ICQhIDI+IC9kZXYvbnVsbAotLQotLSAgICAgICAgIyB3YWl0IHdpbGwgcmV0 dXJuIHRoZSByZXR1cm4gdmFsdWUgb2YgZGhjbGllbnQKLS0gICAgICAgIHJldHY9JD8KLS0KLS0g ICAgICAgICMgZGhjbGllbnQgYW5kIGhlbmNlIHdhaXQgcmV0dXJuZWQgc3VjY2VzcywgMC4KLS0g ICAgICAgIGlmIFsgJHJldHYgLWVxIDAgXTsgdGhlbgotLSAgICAgICAgICAgIHJldHVybiAwCi0t ICAgICAgICBmaQotLQotLSAgICAgICAgIyBJZiBkaGNsaWVudCBleGl0ZWQgYmVmb3JlIHdhaXQg d2FzIGNhbGxlZCwgb3IgaXQgd2FzIGtpbGxlZCBieQotLSAgICAgICAgIyBhbm90aGVyIHRocmVh ZCBmb3IgaW50ZXJmYWNlIHdob3NlIERIQ1Agc3VjY2VlZGVkLCB0aGVuIGl0IHdpbGwgbm90Ci0t ICAgICAgICAjIGZpbmQgdGhlIHByb2Nlc3Mgd2l0aCB0aGF0IHBpZCBhbmQgcmV0dXJuIGVycm9y IGNvZGUgMTI3LiBJbiB0aGF0Ci0tICAgICAgICAjIGNhc2Ugd2UgbmVlZCB0byBjaGVjayBpZiAv dG1wL2RoY2xpZW50LiRuZXRpZi5sZWFzZSBleGlzdHMuIElmIGl0Ci0tICAgICAgICAjIGRvZXMs IGl0IG1lYW5zIGRoY2xpZW50IGZpbmlzaGVkIGV4ZWN1dGluZyBiZWZvcmUgd2FpdCB3YXMgY2Fs bGVkLAotLSAgICAgICAgIyBhbmQgaXQgd2FzIHN1Y2Nlc3NmdWwgKHJldHVybiAwKS4gSWYgL3Rt cC9kaGNsaWVudC4kbmV0aWYubGVhc2UKLS0gICAgICAgICMgZG9lcyBub3QgZXhpc3QsIHRoZW4g aXQgbWVhbnMgZGhjbGllbnQgd2FzIGtpbGxlZCBieSBhbm90aGVyIHRocmVhZAotLSAgICAgICAg IyBvciBpdCBmaW5pc2hlZCBleGVjdXRpb24gYnV0IGZhaWxlZCBkaGNwIG9uIHRoYXQgaW50ZXJm YWNlLgotLQotLSAgICAgICAgaWYgWyAkcmV0diAtZXEgMTI3IF07IHRoZW4KLS0gICAgICAgICAg ICByZWFkIC1yIHBpZCA8IC90bXAvZGhjbGllbnQuIiRuZXRpZiIucGlkCi0tICAgICAgICAgICAg aW5mbyAiUElEICRwaWQgd2FzIG5vdCBmb3VuZCBieSB3YWl0IGZvciAkbmV0aWYiCi0tICAgICAg ICAgICAgaWYgWyAtZSAvdG1wL2RoY2xpZW50LiIkbmV0aWYiLmxlYXNlIF07IHRoZW4KLS0gICAg ICAgICAgICAgICAgaW5mbyAiUElEICRwaWQgbm90IGZvdW5kIGJ1dCBESENQIHN1Y2Nlc3NmdWwg b24gJG5ldGlmIgotLSAgICAgICAgICAgICAgICByZXR1cm4gMAotLSAgICAgICAgICAgIGZpCi0t ICAgICAgICBmaQotLQotLSAgICAgICAgX0NPVU5UPSQoKF9DT1VOVCArIDEpKQotLSAgICAgICAg WyAkX0NPVU5UIC1sdCAiJF9ESENQUkVUUlkiIF0gJiYgc2xlZXAgMQotLSAgICBkb25lCi0tICAg IHdhcm4gImRoY3AgZm9yIGludGVyZmFjZSAkbmV0aWYgZmFpbGVkIgotLSAgICAjIG51a2UgdGhv c2UgZmlsZXMgc2luY2Ugd2UgZmFpbGVkOyB3ZSBtaWdodCByZXRyeSBkaGNwIGFnYWluIGlmIGl0 J3MgZS5nLgotLSAgICAjIGBpcD1kaGNwLGRoY3A2YCBhbmQgd2UgY2hlY2sgZm9yIHRoZSBQSUQg ZmlsZSBlYXJsaWVyCi0tICAgIHJtIC1mIC90bXAvZGhjbGllbnQuIiRuZXRpZiIucGlkIC90bXAv ZGhjbGllbnQuIiRuZXRpZiIubGVhc2UKLS0gICAgcmV0dXJuIDEKLS19Ci0tCi0tZG9fZGhjbGll bnQKLS1yZXQ9JD8KLS0KLS0jIHNldHVwIG5hbWVzZXJ2ZXIKLS1mb3IgcyBpbiAiJGRuczEiICIk ZG5zMiIgJChnZXRhcmdzIG5hbWVzZXJ2ZXIpOyBkbwotLSAgICBbIC1uICIkcyIgXSB8fCBjb250 aW51ZQotLSAgICBlY2hvIG5hbWVzZXJ2ZXIgIiRzIiA+PiAvdG1wL25ldC4iJG5ldGlmIi5yZXNv bHYuY29uZgotLWRvbmUKLS0KLS1pZiBbICRyZXQgLWVxIDAgXTsgdGhlbgotLSAgICA6ID4gL3Rt cC9uZXQuIiR7bmV0aWZ9Ii51cAotLQotLSAgICBpZiBbIC16ICIkZG9fdmxhbiIgXSAmJiBbIC1l IC9zeXMvY2xhc3MvbmV0LyIke25ldGlmfSIvYWRkcmVzcyBdOyB0aGVuCi0tICAgICAgICA6ID4g Ii90bXAvbmV0LiQoY2F0IC9zeXMvY2xhc3MvbmV0LyIke25ldGlmfSIvYWRkcmVzcykudXAiCi0t ICAgIGZpCi0tCi0tICAgICMgQ2hlY2sgaWYgREhDUCBhbHNvIHN1Y2NlZWRlZCBvbiBhbm90aGVy IGludGVyZmFjZSBiZWZvcmUgdGhpcyBvbmUuCi0tICAgICMgV2Ugd2lsbCBhbHdheXMgdXNlIHRo ZSBmaXJzdCBvbmUgb24gd2hpY2ggREhDUCBzdWNjZWVkZWQsIGJ5IHVzaW5nCi0tICAgICMgYSBj b21tb24gZmlsZSAkSUZORVRGSUxFLCB0byBzeW5jaHJvbml6ZSBiZXR3ZWVuIHRocmVhZHMuCi0t ICAgICMgQ29uc2lkZXIgdGhlIHJhY2UgY29uZGl0aW9uIGluIHdoaWNoIG11bHRpcGxlIHRocmVh ZHMKLS0gICAgIyBjb3JyZXNwb25kaW5nIHRvIGRpZmZlcmVudCBpbnRlcmZhY2VzIG1heSB0cnkg dG8gcmVhZCAkSUZORVRGSUxFCi0tICAgICMgYW5kIGZpbmQgaXQgZG9lcyBub3QgZXhpc3Q7IHRo ZXkgbWF5IGFsbCBlbmQgdXAgdGhpbmtpbmcgdGhleSBhcmUgdGhlCi0tICAgICMgZmlyc3QgdG8g c3VjY2VlZCAoaGVuY2UgbW9yZSB0aGFuIG9uZSB0aHJlYWQgbWF5IGVuZCB1cCB3cml0aW5nIHRv Ci0tICAgICMgJElGTkVURklMRSkuIFRvIHRha2UgY2FyZSBvZiB0aGlzLCBpbnN0ZWFkIG9mIGNo ZWNraW5nIGlmICRJRk5FVEZJTEUKLS0gICAgIyBleGlzdHMgdG8gZGV0ZXJtaW5lIGlmIHdlIGFy ZSB0aGUgZmlyc3QsIHdlIGNyZWF0ZSBhIHN5bWJvbGljIGxpbmsKLS0gICAgIyBpbiAkSUZORVRG SUxFLCBwb2ludGluZyB0byB0aGUgaW50ZXJmYWNlIG5hbWUgKCRuZXRpZiksIHRodXMgc3Rvcmlu ZwotLSAgICAjIHRoZSBpbnRlcmZhY2UgbmFtZSBpbiB0aGUgbGluayBwb2ludGVyLgotLSAgICAj IENyZWF0aW5nIGEgbGluayB3aWxsIGZhaWwsIGlmIHRoZSBsaW5rIGFscmVhZHkgZXhpc3RzLCBo ZW5jZSBrZXJuZWwKLS0gICAgIyB3aWxsIHRha2UgY2FyZSBvZiBhbGxvd2luZyBvbmx5IGZpcnN0 IHRocmVhZCB0byBjcmVhdGUgbGluaywgd2hpY2gKLS0gICAgIyB0YWtlcyBjYXJlIG9mIHRoZSBy YWNlIGNvbmRpdGlvbiBmb3IgdXMuIFN1YnNlcXVlbnQgdGhyZWFkcyB3aWxsIGZhaWwuCi0tICAg ICMgQWxzbywgdGhlIGxpbmsgcG9pbnRzIHRvIHRoZSBpbnRlcmZhY2UgbmFtZSwgd2hpY2ggd2ls bCB0ZWxsIHVzIHdoaWNoCi0tICAgICMgaW50ZXJmYWNlIHN1Y2NlZWRlZC4KLS0KLS0gICAgaWYg bG4gLXMgIiRuZXRpZiIgIiRJRk5FVEZJTEUiIDI+IC9kZXYvbnVsbDsgdGhlbgotLSAgICAgICAg aW50Zj0kKHJlYWRsaW5rICIkSUZORVRGSUxFIikKLS0gICAgICAgIGlmIFsgLWUgL3RtcC9kaGNs aWVudC4iJGludGYiLmxlYXNlIF07IHRoZW4KLS0gICAgICAgICAgICBpbmZvICJESENQIHN1Y2Nl c3NmdWwgb24gaW50ZXJmYWNlICRpbnRmIgotLSAgICAgICAgICAgICMgS2lsbCBhbGwgZXhpc3Rp bmcgZGhjbGllbnQgY2FsbHMgZm9yIG90aGVyIGludGVyZmFjZXMsIHNpbmNlIHdlCi0tICAgICAg ICAgICAgIyBhbHJlYWR5IGdvdCBvbmUgc3VjY2Vzc2Z1bCBpbnRlcmZhY2UKLS0KLS0gICAgICAg ICAgICByZWFkIC1yIG5waWQgPCAvdG1wL2RoY2xpZW50LiIkbmV0aWYiLnBpZAotLSAgICAgICAg ICAgIHBpZGxpc3Q9JChwZ3JlcCBkaGNsaWVudCkKLS0gICAgICAgICAgICBmb3IgcGlkIGluICRw aWRsaXN0OyBkbwotLSAgICAgICAgICAgICAgICBbICIkcGlkIiAtZXEgIiRucGlkIiBdICYmIGNv bnRpbnVlCi0tICAgICAgICAgICAgICAgIGtpbGwgLTkgIiRwaWQiID4gL2Rldi9udWxsIDI+JjEK LS0gICAgICAgICAgICBkb25lCi0tICAgICAgICBlbHNlCi0tICAgICAgICAgICAgZWNobyAiRVJS T1IhICRJRk5FVEZJTEUgZXhpc3RzIGJ1dCAvdG1wL2RoY2xpZW50LiRpbnRmLmxlYXNlIGRvZXMg bm90IGV4aXN0ISEhIgotLSAgICAgICAgZmkKLS0gICAgZWxzZQotLSAgICAgICAgaW5mbyAiREhD UCBzdWNjZXNzIG9uICRuZXRpZiwgYW5kIGFsc28gb24gJGludGYiCi0tICAgICAgICBleGl0IDAK LS0gICAgZmkKLS0gICAgZXhpdCAkcmV0Ci0tZmkKLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVu ZXR3b3JrLWxlZ2FjeS9pZnVwLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvaWZ1cC5z aAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCBiMmVkNDYwNy4uMDAwMDAwMDAKLS0t LSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2lmdXAuc2gKLSsrKyAvZGV2L251bGwKLUBA IC0xLDU2MiArMCwwIEBACi0tIyEvYmluL3NoCi0tIwotLSMgV2UgZG9uJ3QgbmVlZCB0byBjaGVj ayBmb3IgaXA9IGVycm9ycyBoZXJlLCB0aGF0IGlzIGhhbmRsZWQgYnkgdGhlCi0tIyBjbWRsaW5l IHBhcnNlciBzY3JpcHQKLS0jCi0tIyB3aXRob3V0ICQyIG1lYW5zIHRoaXMgaXMgZm9yIHJlYWwg bmV0cm9vdCBjYXNlCi0tIyBvciBpdCBpcyBmb3IgbWFudWFsbHkgYnJpbmcgdXAgbmV0d29yayBp ZS4gZm9yIGtkdW1wIHNjcCB2bWNvcmUKLS1QQVRIPS91c3Ivc2JpbjovdXNyL2Jpbjovc2Jpbjov YmluCi0tCi0tY29tbWFuZCAtdiBnZXRhcmcgPiAvZGV2L251bGwgfHwgLiAvbGliL2RyYWN1dC1s aWIuc2gKLS1jb21tYW5kIC12IGlwX3RvX3ZhciA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxp Yi5zaAotLQotLSMgSHVoPyBObyAkMT8KLS1bIC16ICIkMSIgXSAmJiBleGl0IDEKLS0KLS0jICRu ZXRpZiByZWFkcyBlYXNpZXIgdGhhbiAkMQotLW5ldGlmPSQxCi0tCi0tIyBsb29wYmFjayBpcyBh bHdheXMgaGFuZGxlZCB0aGUgc2FtZSB3YXkKLS1pZiBbICIkbmV0aWYiID0gImxvIiBdOyB0aGVu Ci0tICAgIGlwIGxpbmsgc2V0IGxvIHVwCi0tICAgIGlwIGFkZHIgYWRkIDEyNy4wLjAuMS84IGRl diBsbwotLSAgICBleGl0IDAKLS1maQotLQotLWRvX2RoY3BfcGFyYWxsZWwoKSB7Ci0tICAgICMg ZGhjbGllbnQtc2NyaXB0IHdpbGwgbWFyayB0aGUgbmV0aWYgdXAgYW5kIGdlbmVyYXRlIHRoZSBv bmxpbmUKLS0gICAgIyBldmVudCBmb3IgbmZzcm9vdAotLSAgICAjIFhYWCBhZGQgLVYgdmVuZG9y IGNsYXNzIGFuZCBvcHRpb24gcGFyc2luZyBwZXIga2VybmVsCi0tCi0tICAgIFsgLWUgIi90bXAv ZGhjbGllbnQuJG5ldGlmLnBpZCIgXSAmJiByZXR1cm4gMAotLQotLSAgICBpZiAhIGlmYWNlX2hh c19jYXJyaWVyICIkbmV0aWYiOyB0aGVuCi0tICAgICAgICB3YXJuICJObyBjYXJyaWVyIGRldGVj dGVkIG9uIGludGVyZmFjZSAkbmV0aWYiCi0tICAgICAgICByZXR1cm4gMQotLSAgICBmaQotLQot LSAgICBib290aW50Zj0kKHJlYWRsaW5rICIkSUZORVRGSUxFIikKLS0gICAgaWYgWyAtbiAiJGJv b3RpbnRmIiBdICYmIFsgLWUgIi90bXAvZGhjbGllbnQuJHtib290aW50Zn0ubGVhc2UiIF07IHRo ZW4KLS0gICAgICAgIGluZm8gIkRIQ1AgYWxyZWFkeSBzdWNjZWVkZWQgZm9yICRib290aW50Ziwg ZXhpdGluZyBmb3IgJG5ldGlmIgotLSAgICAgICAgcmV0dXJuIDEKLS0gICAgZmkKLS0KLS0gICAg aWYgWyAhIC1lIC9ydW4vTmV0d29ya01hbmFnZXIvY29uZi5kLzEwLWRyYWN1dC1kaGNsaWVudC5j b25mIF07IHRoZW4KLS0gICAgICAgIG1rZGlyIC1wIC9ydW4vTmV0d29ya01hbmFnZXIvY29uZi5k Ci0tICAgICAgICBlY2hvICdbbWFpbl0nID4gL3J1bi9OZXR3b3JrTWFuYWdlci9jb25mLmQvMTAt ZHJhY3V0LWRoY2xpZW50LmNvbmYKLS0gICAgICAgIGVjaG8gJ2RoY3A9ZGhjbGllbnQnID4+IC9y dW4vTmV0d29ya01hbmFnZXIvY29uZi5kLzEwLWRyYWN1dC1kaGNsaWVudC5jb25mCi0tICAgIGZp Ci0tCi0tICAgIC9zYmluL2RoY3AtbXVsdGkuc2ggIiRuZXRpZiIgIiRET19WTEFOIiAiJEAiICYK LS0gICAgcmV0dXJuIDAKLS19Ci0tCi0tIyBSdW4gZGhjbGllbnQKLS1kb19kaGNwKCkgewotLSAg ICAjIGRoY2xpZW50LXNjcmlwdCB3aWxsIG1hcmsgdGhlIG5ldGlmIHVwIGFuZCBnZW5lcmF0ZSB0 aGUgb25saW5lCi0tICAgICMgZXZlbnQgZm9yIG5mc3Jvb3QKLS0gICAgIyBYWFggYWRkIC1WIHZl bmRvciBjbGFzcyBhbmQgb3B0aW9uIHBhcnNpbmcgcGVyIGtlcm5lbAotLQotLSAgICBsb2NhbCBf Q09VTlQKLS0gICAgbG9jYWwgX3RpbWVvdXQKLS0gICAgbG9jYWwgX0RIQ1BSRVRSWQotLQotLSAg ICBfQ09VTlQ9MAotLSAgICBfdGltZW91dD0kKGdldGFyZyByZC5uZXQudGltZW91dC5kaGNwPSkK LS0gICAgX0RIQ1BSRVRSWT0kKGdldGFyZ251bSAxIDEgMTAwMDAwMDAwMCByZC5uZXQuZGhjcC5y ZXRyeT0pCi0tCi0tICAgIFsgLWUgIi90bXAvZGhjbGllbnQuJHtuZXRpZn0ucGlkIiBdICYmIHJl dHVybiAwCi0tCi0tICAgIGlmICEgaWZhY2VfaGFzX2NhcnJpZXIgIiRuZXRpZiI7IHRoZW4KLS0g ICAgICAgIHdhcm4gIk5vIGNhcnJpZXIgZGV0ZWN0ZWQgb24gaW50ZXJmYWNlICRuZXRpZiIKLS0g ICAgICAgIHJldHVybiAxCi0tICAgIGZpCi0tCi0tICAgIGlmIFsgLW4gIiRfdGltZW91dCIgXTsg dGhlbgotLSAgICAgICAgaWYgISAoZGhjbGllbnQgLS1oZWxwIDI+JjEgfCBncmVwIC1xcyAtRiAt LSAnLS10aW1lb3V0Jyk7IHRoZW4KLS0gICAgICAgICAgICB3YXJuICJyZC5uZXQudGltZW91dC5k aGNwIGhhcyBubyBlZmZlY3QgYmVjYXVzZSBkaGNsaWVudCBkb2VzIG5vdCBpbXBsZW1lbnQgdGhl IC0tdGltZW91dCBvcHRpb24iCi0tICAgICAgICAgICAgdW5zZXQgX3RpbWVvdXQKLS0gICAgICAg IGZpCi0tICAgIGZpCi0tCi0tICAgIGlmIFsgISAtZSAvcnVuL05ldHdvcmtNYW5hZ2VyL2NvbmYu ZC8xMC1kcmFjdXQtZGhjbGllbnQuY29uZiBdOyB0aGVuCi0tICAgICAgICBta2RpciAtcCAvcnVu L05ldHdvcmtNYW5hZ2VyL2NvbmYuZAotLSAgICAgICAgZWNobyAnW21haW5dJyA+IC9ydW4vTmV0 d29ya01hbmFnZXIvY29uZi5kLzEwLWRyYWN1dC1kaGNsaWVudC5jb25mCi0tICAgICAgICBlY2hv ICdkaGNwPWRoY2xpZW50JyA+PiAvcnVuL05ldHdvcmtNYW5hZ2VyL2NvbmYuZC8xMC1kcmFjdXQt ZGhjbGllbnQuY29uZgotLSAgICBmaQotLQotLSAgICB3aGlsZSBbICIkX0NPVU5UIiAtbHQgIiRf REhDUFJFVFJZIiBdOyBkbwotLSAgICAgICAgaW5mbyAiU3RhcnRpbmcgZGhjcCBmb3IgaW50ZXJm YWNlICRuZXRpZiIKLS0gICAgICAgIGRoY2xpZW50ICIkQCIgXAotLSAgICAgICAgICAgICR7X3Rp bWVvdXQ6Ky0tdGltZW91dCAiJF90aW1lb3V0In0gXAotLSAgICAgICAgICAgIC1xIFwKLS0gICAg ICAgICAgICAtMSBcCi0tICAgICAgICAgICAgLWNmIC9ldGMvZGhjbGllbnQuY29uZiBcCi0tICAg ICAgICAgICAgLXBmICIvdG1wL2RoY2xpZW50LiR7bmV0aWZ9LnBpZCIgXAotLSAgICAgICAgICAg IC1sZiAiL3RtcC9kaGNsaWVudC4ke25ldGlmfS5sZWFzZSIgXAotLSAgICAgICAgICAgICIkbmV0 aWYiIFwKLS0gICAgICAgICAgICAmJiByZXR1cm4gMAotLSAgICAgICAgX0NPVU5UPSQoKF9DT1VO VCArIDEpKQotLSAgICAgICAgWyAiJF9DT1VOVCIgLWx0ICIkX0RIQ1BSRVRSWSIgXSAmJiBzbGVl cCAxCi0tICAgIGRvbmUKLS0gICAgd2FybiAiZGhjcCBmb3IgaW50ZXJmYWNlICRuZXRpZiBmYWls ZWQiCi0tICAgICMgbnVrZSB0aG9zZSBmaWxlcyBzaW5jZSB3ZSBmYWlsZWQ7IHdlIG1pZ2h0IHJl dHJ5IGRoY3AgYWdhaW4gaWYgaXQncyBlLmcuCi0tICAgICMgYGlwPWRoY3AsZGhjcDZgIGFuZCB3 ZSBjaGVjayBmb3IgdGhlIFBJRCBmaWxlIGF0IHRoZSB0b3AKLS0gICAgcm0gLWYgL3RtcC9kaGNs aWVudC4iJG5ldGlmIi5waWQgL3RtcC9kaGNsaWVudC4iJG5ldGlmIi5sZWFzZQotLSAgICByZXR1 cm4gMQotLX0KLS0KLS1sb2FkX2lwdjYoKSB7Ci0tICAgIFsgLWQgL3Byb2Mvc3lzL25ldC9pcHY2 IF0gJiYgcmV0dXJuCi0tICAgIG1vZHByb2JlIGlwdjYKLS0gICAgaT0wCi0tICAgIHdoaWxlIFsg ISAtZCAvcHJvYy9zeXMvbmV0L2lwdjYgXTsgZG8KLS0gICAgICAgIGk9JCgoaSArIDEpKQotLSAg ICAgICAgWyAkaSAtZ3QgMTAgXSAmJiBicmVhawotLSAgICAgICAgc2xlZXAgMC4xCi0tICAgIGRv bmUKLS19Ci0tCi0tZG9faXB2NmF1dG8oKSB7Ci0tICAgIGxvY2FsIHJldAotLSAgICBsb2FkX2lw djYKLS0gICAgZWNobyAwID4gL3Byb2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9mb3J3 YXJkaW5nCi0tICAgIGVjaG8gMSA+IC9wcm9jL3N5cy9uZXQvaXB2Ni9jb25mLyIke25ldGlmfSIv YWNjZXB0X3JhCi0tICAgIGVjaG8gMSA+IC9wcm9jL3N5cy9uZXQvaXB2Ni9jb25mLyIke25ldGlm fSIvYWNjZXB0X3JlZGlyZWN0cwotLSAgICBsaW5rdXAgIiRuZXRpZiIKLS0gICAgd2FpdF9mb3Jf aXB2Nl9hdXRvICIkbmV0aWYiCi0tICAgIHJldD0kPwotLQotLSAgICBbIC1uICIkaG9zdG5hbWUi IF0gJiYgZWNobyAiZWNobyAkaG9zdG5hbWUgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1lIiA+ ICIvdG1wL25ldC4ke25ldGlmfS5ob3N0bmFtZSIKLS0KLS0gICAgcmV0dXJuICIkcmV0IgotLX0K LS0KLS1kb19pcHY2bGluaygpIHsKLS0gICAgbG9jYWwgcmV0Ci0tICAgIGxvYWRfaXB2NgotLSAg ICBlY2hvIDAgPiAvcHJvYy9zeXMvbmV0L2lwdjYvY29uZi8iJHtuZXRpZn0iL2ZvcndhcmRpbmcK LS0gICAgZWNobyAwID4gL3Byb2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9hY2NlcHRf cmEKLS0gICAgZWNobyAwID4gL3Byb2Mvc3lzL25ldC9pcHY2L2NvbmYvIiR7bmV0aWZ9Ii9hY2Nl cHRfcmVkaXJlY3RzCi0tICAgIGxpbmt1cCAiJG5ldGlmIgotLQotLSAgICBbIC1uICIkaG9zdG5h bWUiIF0gJiYgZWNobyAiZWNobyAkaG9zdG5hbWUgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1l IiA+ICIvdG1wL25ldC4ke25ldGlmfS5ob3N0bmFtZSIKLS0KLS0gICAgcmV0dXJuICIkcmV0Igot LX0KLS0KLS0jIEhhbmRsZSBzdGF0aWMgaXAgY29uZmlndXJhdGlvbgotLWRvX3N0YXRpYygpIHsK LS0gICAgc3RyZ2xvYmluICIkaXAiICcqOio6KicgJiYgbG9hZF9pcHY2Ci0tCi0tICAgIGlmICEg aWZhY2VfaGFzX2NhcnJpZXIgIiRuZXRpZiI7IHRoZW4KLS0gICAgICAgIHdhcm4gIk5vIGNhcnJp ZXIgZGV0ZWN0ZWQgb24gaW50ZXJmYWNlICRuZXRpZiIKLS0gICAgICAgIHJldHVybiAxCi0tICAg IGVsaWYgISBsaW5rdXAgIiRuZXRpZiI7IHRoZW4KLS0gICAgICAgIHdhcm4gIkNvdWxkIG5vdCBi cmluZyBpbnRlcmZhY2UgJG5ldGlmIHVwISIKLS0gICAgICAgIHJldHVybiAxCi0tICAgIGZpCi0t Ci0tICAgIGlwIHJvdXRlIGdldCAiJGlwIiAyPiAvZGV2L251bGwgfCB7Ci0tICAgICAgICByZWFk IC1yIGEgcmVzdAotLSAgICAgICAgaWYgWyAiJGEiID0gImxvY2FsIiBdOyB0aGVuCi0tICAgICAg ICAgICAgd2FybiAiTm90IGFzc2lnbmluZyAkaXAgdG8gaW50ZXJmYWNlICRuZXRpZiwgY2F1c2Ug aXQgaXMgYWxyZWFkeSBhc3NpZ25lZCEiCi0tICAgICAgICAgICAgcmV0dXJuIDEKLS0gICAgICAg IGZpCi0tICAgICAgICByZXR1cm4gMAotLSAgICB9IHx8IHJldHVybiAxCi0tCi0tICAgIFsgLW4g IiRtYWNhZGRyIiBdICYmIGlwIGxpbmsgc2V0IGFkZHJlc3MgIiRtYWNhZGRyIiBkZXYgIiRuZXRp ZiIKLS0gICAgWyAtbiAiJG10dSIgXSAmJiBpcCBsaW5rIHNldCBtdHUgIiRtdHUiIGRldiAiJG5l dGlmIgotLSAgICBpZiBzdHJnbG9iaW4gIiRpcCIgJyo6KjoqJzsgdGhlbgotLSAgICAgICAgIyBu b3RlIG5vIGlwIGFkZHIgZmx1c2ggZm9yIGlwdjYKLS0gICAgICAgIGlwIGFkZHIgYWRkICIkaXAv JG1hc2siICR7c3J2OitwZWVyICIkc3J2In0gZGV2ICIkbmV0aWYiCi0tICAgICAgICBlY2hvIDAg PiAvcHJvYy9zeXMvbmV0L2lwdjYvY29uZi8iJHtuZXRpZn0iL2ZvcndhcmRpbmcKLS0gICAgICAg IGVjaG8gMSA+IC9wcm9jL3N5cy9uZXQvaXB2Ni9jb25mLyIke25ldGlmfSIvYWNjZXB0X3JhCi0t ICAgICAgICBlY2hvIDEgPiAvcHJvYy9zeXMvbmV0L2lwdjYvY29uZi8iJHtuZXRpZn0iL2FjY2Vw dF9yZWRpcmVjdHMKLS0gICAgICAgIHdhaXRfZm9yX2lwdjZfZGFkICIkbmV0aWYiCi0tICAgIGVs c2UKLS0gICAgICAgIGlmIFsgLXogIiRzcnYiIF07IHRoZW4KLS0gICAgICAgICAgICBpZiBjb21t YW5kIC12IGFycGluZzIgPiAvZGV2L251bGw7IHRoZW4KLS0gICAgICAgICAgICAgICAgaWYgYXJw aW5nMiAtcSAtQyAxIC1jIDIgLUkgIiRuZXRpZiIgLTAgIiRpcCI7IHRoZW4KLS0gICAgICAgICAg ICAgICAgICAgIHdhcm4gIkR1cGxpY2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkaXAgZm9yIGlu dGVyZmFjZSAkbmV0aWYuIgotLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEKLS0gICAgICAg ICAgICAgICAgZmkKLS0gICAgICAgICAgICBlbHNlCi0tICAgICAgICAgICAgICAgIGlmICEgYXJw aW5nIC1mIC1xIC1EIC1jIDIgLUkgIiRuZXRpZiIgIiRpcCI7IHRoZW4KLS0gICAgICAgICAgICAg ICAgICAgIHdhcm4gIkR1cGxpY2F0ZSBhZGRyZXNzIGRldGVjdGVkIGZvciAkaXAgZm9yIGludGVy ZmFjZSAkbmV0aWYuIgotLSAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDEKLS0gICAgICAgICAg ICAgICAgZmkKLS0gICAgICAgICAgICBmaQotLSAgICAgICAgZmkKLS0gICAgICAgIGlwIGFkZHIg Zmx1c2ggZGV2ICIkbmV0aWYiCi0tICAgICAgICBpcCBhZGRyIGFkZCAiJGlwLyRtYXNrIiAke3Ny djorcGVlciAiJHNydiJ9IGJyZCArIGRldiAiJG5ldGlmIgotLSAgICBmaQotLQotLSAgICBbIC1u ICIkZ3ciIF0gJiYgZWNobyAiaXAgcm91dGUgcmVwbGFjZSBkZWZhdWx0IHZpYSAnJGd3JyBkZXYg JyRuZXRpZiciID4gIi90bXAvbmV0LiRuZXRpZi5ndyIKLS0gICAgWyAtbiAiJGhvc3RuYW1lIiBd ICYmIGVjaG8gImVjaG8gJyRob3N0bmFtZScgPiAvcHJvYy9zeXMva2VybmVsL2hvc3RuYW1lIiA+ ICIvdG1wL25ldC4kbmV0aWYuaG9zdG5hbWUiCi0tCi0tICAgIHJldHVybiAwCi0tfQotLQotLWdl dF92aWQoKSB7Ci0tICAgIGNhc2UgIiQxIiBpbgotLSAgICAgICAgdmxhbiopCi0tICAgICAgICAg ICAgZWNobyAiJHsxI3ZsYW59IgotLSAgICAgICAgICAgIDs7Ci0tICAgICAgICAqLiopCi0tICAg ICAgICAgICAgZWNobyAiJHsxIyMqLn0iCi0tICAgICAgICAgICAgOzsKLS0gICAgZXNhYwotLX0K LS0KLS0jIGNoZWNrLCBpZiB3ZSBuZWVkIFZMQU4ncyBmb3IgdGhpcyBpbnRlcmZhY2UKLS1pZiBb IC16ICIkRE9fVkxBTl9QSFkiIF0gJiYgWyAtZSAiL3RtcC92bGFuLiR7bmV0aWZ9LnBoeSIgXTsg dGhlbgotLSAgICB1bnNldCBET19WTEFOCi0tICAgIE5PX0FVVE9fREhDUD15ZXMgRE9fVkxBTl9Q SFk9eWVzIGlmdXAgIiRuZXRpZiIKLS0gICAgbW9kcHJvYmUgLWIgLXEgODAyMXEKLS0KLS0gICAg Zm9yIGkgaW4gL3RtcC92bGFuLiouIiR7bmV0aWZ9IjsgZG8KLS0gICAgICAgIFsgLWUgIiRpIiBd IHx8IGNvbnRpbnVlCi0tICAgICAgICB1bnNldCB2bGFubmFtZQotLSAgICAgICAgdW5zZXQgcGh5 ZGV2aWNlCi0tICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgICAgIC4g IiRpIgotLSAgICAgICAgaWYgWyAtbiAiJHZsYW5uYW1lIiBdOyB0aGVuCi0tICAgICAgICAgICAg bGlua3VwICIkcGh5ZGV2aWNlIgotLSAgICAgICAgICAgIGlwIGxpbmsgYWRkIGRldiAiJHZsYW5u YW1lIiBsaW5rICIkcGh5ZGV2aWNlIiB0eXBlIHZsYW4gaWQgIiQoZ2V0X3ZpZCAiJHZsYW5uYW1l IikiCi0tICAgICAgICAgICAgaWZ1cCAiJHZsYW5uYW1lIgotLSAgICAgICAgZmkKLS0gICAgZG9u ZQotLSAgICBleGl0IDAKLS1maQotLQotLSMgQ2hlY2ssIGlmIGludGVyZmFjZSBpcyBWTEFOIGlu dGVyZmFjZQotLWlmICEgWyAtZSAiL3RtcC92bGFuLiR7bmV0aWZ9LnBoeSIgXTsgdGhlbgotLSAg ICBmb3IgaSBpbiAiL3RtcC92bGFuLiR7bmV0aWZ9Ii4qOyBkbwotLSAgICAgICAgWyAtZSAiJGki IF0gfHwgY29udGludWUKLS0gICAgICAgIGV4cG9ydCBET19WTEFOPXllcwotLSAgICAgICAgYnJl YWsKLS0gICAgZG9uZQotLWZpCi0tCi0tIyBicmlkZ2UgdGhpcyBpbnRlcmZhY2U/Ci0taWYgWyAt eiAiJE5PX0JSSURHRV9NQVNURVIiIF07IHRoZW4KLS0gICAgZm9yIGkgaW4gL3RtcC9icmlkZ2Uu Ki5pbmZvOyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKLS0gICAgICAgIHVu c2V0IGJyaWRnZXNsYXZlcwotLSAgICAgICAgdW5zZXQgYnJpZGdlbmFtZQotLSAgICAgICAgIyBz aGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCi0tICAgICAgICAuICIkaSIKLS0gICAgICAgIGZvciBl dGhuYW1lIGluICRicmlkZ2VzbGF2ZXM7IGRvCi0tICAgICAgICAgICAgWyAiJG5ldGlmIiAhPSAi JGV0aG5hbWUiIF0gJiYgY29udGludWUKLS0KLS0gICAgICAgICAgICBOT19CUklER0VfTUFTVEVS PXllcyBOT19BVVRPX0RIQ1A9eWVzIGlmdXAgIiRldGhuYW1lIgotLSAgICAgICAgICAgIGxpbmt1 cCAiJGV0aG5hbWUiCi0tICAgICAgICAgICAgaWYgWyAhIC1lICIvdG1wL2JyaWRnZS4kYnJpZGdl bmFtZS51cCIgXTsgdGhlbgotLSAgICAgICAgICAgICAgICBpcCBsaW5rIGFkZCBuYW1lICIkYnJp ZGdlbmFtZSIgdHlwZSBicmlkZ2UKLS0gICAgICAgICAgICAgICAgZWNobyAwID4gIi9zeXMvZGV2 aWNlcy92aXJ0dWFsL25ldC8kYnJpZGdlbmFtZS9icmlkZ2UvZm9yd2FyZF9kZWxheSIKLS0gICAg ICAgICAgICAgICAgOiA+ICIvdG1wL2JyaWRnZS4kYnJpZGdlbmFtZS51cCIKLS0gICAgICAgICAg ICBmaQotLSAgICAgICAgICAgIGlwIGxpbmsgc2V0IGRldiAiJGV0aG5hbWUiIG1hc3RlciAiJGJy aWRnZW5hbWUiCi0tICAgICAgICAgICAgaWZ1cCAiJGJyaWRnZW5hbWUiCi0tICAgICAgICAgICAg ZXhpdCAwCi0tICAgICAgICBkb25lCi0tICAgIGRvbmUKLS1maQotLQotLSMgZW5zbGF2ZSB0aGlz IGludGVyZmFjZSB0byBib25kPwotLWlmIFsgLXogIiROT19CT05EX01BU1RFUiIgXTsgdGhlbgot LSAgICBmb3IgaSBpbiAvdG1wL2JvbmQuKi5pbmZvOyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0g fHwgY29udGludWUKLS0gICAgICAgIHVuc2V0IGJvbmRzbGF2ZXMKLS0gICAgICAgIHVuc2V0IGJv bmRuYW1lCi0tICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgICAgIC4g IiRpIgotLSAgICAgICAgZm9yIHRlc3RzbGF2ZSBpbiAkYm9uZHNsYXZlczsgZG8KLS0gICAgICAg ICAgICBbICIkbmV0aWYiICE9ICIkdGVzdHNsYXZlIiBdICYmIGNvbnRpbnVlCi0tCi0tICAgICAg ICAgICAgIyBhbHJlYWR5IHNldHVwCi0tICAgICAgICAgICAgWyAtZSAiL3RtcC9ib25kLiRib25k bmFtZS51cCIgXSAmJiBleGl0IDAKLS0KLS0gICAgICAgICAgICAjIHdhaXQgZm9yIGFsbCBzbGF2 ZXMgdG8gc2hvdyB1cAotLSAgICAgICAgICAgIGZvciBzbGF2ZSBpbiAkYm9uZHNsYXZlczsgZG8K LS0gICAgICAgICAgICAgICAgIyB0cnkgdG8gY3JlYXRlIHRoZSBzbGF2ZSAobWF5YmUgdmxhbiBv ciBicmlkZ2UpCi0tICAgICAgICAgICAgICAgIE5PX0JPTkRfTUFTVEVSPXllcyBOT19BVVRPX0RI Q1A9eWVzIGlmdXAgIiRzbGF2ZSIKLS0KLS0gICAgICAgICAgICAgICAgaWYgISBpcCBsaW5rIHNo b3cgZGV2ICIkc2xhdmUiID4gL2Rldi9udWxsIDI+JjE7IHRoZW4KLS0gICAgICAgICAgICAgICAg ICAgICMgd2FpdCBmb3IgdGhlIGxhc3Qgc2xhdmUgdG8gc2hvdyB1cAotLSAgICAgICAgICAgICAg ICAgICAgZXhpdCAwCi0tICAgICAgICAgICAgICAgIGZpCi0tICAgICAgICAgICAgZG9uZQotLQot LSAgICAgICAgICAgIG1vZHByb2JlIC1xIC1iIGJvbmRpbmcKLS0gICAgICAgICAgICBlY2hvICIr JGJvbmRuYW1lIiA+IC9zeXMvY2xhc3MvbmV0L2JvbmRpbmdfbWFzdGVycyAyPiAvZGV2L251bGwK LS0gICAgICAgICAgICBpcCBsaW5rIHNldCAiJGJvbmRuYW1lIiBkb3duCi0tCi0tICAgICAgICAg ICAgIyBTdG9sZW4gZnJvbSBpZnVwLWV0aAotLSAgICAgICAgICAgICMgYWRkIHRoZSBiaXRzIHRv IHNldHVwIGRyaXZlciBwYXJhbWV0ZXJzIGhlcmUKLS0gICAgICAgICAgICBmb3IgYXJnIGluICRi b25kb3B0aW9uczsgZG8KLS0gICAgICAgICAgICAgICAga2V5PSR7YXJnJSU9Kn0KLS0gICAgICAg ICAgICAgICAgdmFsdWU9JHthcmcjIyo9fQotLSAgICAgICAgICAgICAgICAjICV7dmFsdWU6MDox fSBpcyByZXBsYWNlZCB3aXRoIG5vbi1iYXNoIHNwZWNpZmljIGNvbnN0cnVjdAotLSAgICAgICAg ICAgICAgICBpZiBbICIke2tleX0iID0gImFycF9pcF90YXJnZXQiIF0gJiYgWyAiJHsjdmFsdWV9 IiAhPSAiMCIgXSAmJiBbICIrJHt2YWx1ZSUlKyp9IiAhPSAiKyIgXTsgdGhlbgotLSAgICAgICAg ICAgICAgICAgICAgT0xESUZTPSRJRlMKLS0gICAgICAgICAgICAgICAgICAgIElGUz0nLCcKLS0g ICAgICAgICAgICAgICAgICAgIGZvciBhcnBfaXAgaW4gJHZhbHVlOyBkbwotLSAgICAgICAgICAg ICAgICAgICAgICAgIGVjaG8gIiskYXJwX2lwIiA+ICIvc3lzL2NsYXNzL25ldC8ke2JvbmRuYW1l fS9ib25kaW5nLyRrZXkiCi0tICAgICAgICAgICAgICAgICAgICBkb25lCi0tICAgICAgICAgICAg ICAgICAgICBJRlM9JE9MRElGUwotLSAgICAgICAgICAgICAgICBlbHNlCi0tICAgICAgICAgICAg ICAgICAgICBlY2hvICIkdmFsdWUiID4gIi9zeXMvY2xhc3MvbmV0LyR7Ym9uZG5hbWV9L2JvbmRp bmcvJGtleSIKLS0gICAgICAgICAgICAgICAgZmkKLS0gICAgICAgICAgICBkb25lCi0tCi0tICAg ICAgICAgICAgbGlua3VwICIkYm9uZG5hbWUiCi0tCi0tICAgICAgICAgICAgZm9yIHNsYXZlIGlu ICRib25kc2xhdmVzOyBkbwotLSAgICAgICAgICAgICAgICBjYXQgIi9zeXMvY2xhc3MvbmV0LyRz bGF2ZS9hZGRyZXNzIiA+ICIvdG1wL25ldC4ke2JvbmRuYW1lfS4ke3NsYXZlfS5od2FkZHIiCi0t ICAgICAgICAgICAgICAgIGlwIGxpbmsgc2V0ICIkc2xhdmUiIGRvd24KLS0gICAgICAgICAgICAg ICAgZWNobyAiKyRzbGF2ZSIgPiAiL3N5cy9jbGFzcy9uZXQvJGJvbmRuYW1lL2JvbmRpbmcvc2xh dmVzIgotLSAgICAgICAgICAgICAgICBsaW5rdXAgIiRzbGF2ZSIKLS0gICAgICAgICAgICBkb25l Ci0tCi0tICAgICAgICAgICAgIyBTZXQgbXR1IG9uIGJvbmQgbWFzdGVyCi0tICAgICAgICAgICAg WyAtbiAiJGJvbmRtdHUiIF0gJiYgaXAgbGluayBzZXQgbXR1ICIkYm9uZG10dSIgZGV2ICIkYm9u ZG5hbWUiCi0tCi0tICAgICAgICAgICAgIyBhZGQgdGhlIGJpdHMgdG8gc2V0dXAgdGhlIG5lZWRl ZCBwb3N0IGVuc2xhdmVtZW50IHBhcmFtZXRlcnMKLS0gICAgICAgICAgICBmb3IgYXJnIGluICRi b25kb3B0aW9uczsgZG8KLS0gICAgICAgICAgICAgICAga2V5PSR7YXJnJSU9Kn0KLS0gICAgICAg ICAgICAgICAgdmFsdWU9JHthcmcjIyo9fQotLSAgICAgICAgICAgICAgICBpZiBbICIke2tleX0i ID0gInByaW1hcnkiIF07IHRoZW4KLS0gICAgICAgICAgICAgICAgICAgIGVjaG8gIiR2YWx1ZSIg PiAiL3N5cy9jbGFzcy9uZXQvJHtib25kbmFtZX0vYm9uZGluZy8ka2V5IgotLSAgICAgICAgICAg ICAgICBmaQotLSAgICAgICAgICAgIGRvbmUKLS0KLS0gICAgICAgICAgICA6ID4gIi90bXAvYm9u ZC4kYm9uZG5hbWUudXAiCi0tCi0tICAgICAgICAgICAgTk9fQk9ORF9NQVNURVI9eWVzIGlmdXAg IiRib25kbmFtZSIKLS0gICAgICAgICAgICBleGl0ICQ/Ci0tICAgICAgICBkb25lCi0tICAgIGRv bmUKLS1maQotLQotLWlmIFsgLXogIiROT19URUFNX01BU1RFUiIgXTsgdGhlbgotLSAgICBmb3Ig aSBpbiAvdG1wL3RlYW0uKi5pbmZvOyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGlu dWUKLS0gICAgICAgIHVuc2V0IHRlYW1tYXN0ZXIKLS0gICAgICAgIHVuc2V0IHRlYW1zbGF2ZXMK LS0gICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotLSAgICAgICAgLiAiJGkiCi0t ICAgICAgICBmb3IgdGVzdHNsYXZlIGluICR0ZWFtc2xhdmVzOyBkbwotLSAgICAgICAgICAgIFsg IiRuZXRpZiIgIT0gIiR0ZXN0c2xhdmUiIF0gJiYgY29udGludWUKLS0KLS0gICAgICAgICAgICBb IC1lICIvdG1wL3RlYW0uJHRlYW1tYXN0ZXIudXAiIF0gJiYgZXhpdCAwCi0tCi0tICAgICAgICAg ICAgIyB3YWl0IGZvciBhbGwgc2xhdmVzIHRvIHNob3cgdXAKLS0gICAgICAgICAgICBmb3Igc2xh dmUgaW4gJHRlYW1zbGF2ZXM7IGRvCi0tICAgICAgICAgICAgICAgICMgdHJ5IHRvIGNyZWF0ZSB0 aGUgc2xhdmUgKG1heWJlIHZsYW4gb3IgYnJpZGdlKQotLSAgICAgICAgICAgICAgICBOT19URUFN X01BU1RFUj15ZXMgTk9fQVVUT19ESENQPXllcyBpZnVwICIkc2xhdmUiCi0tCi0tICAgICAgICAg ICAgICAgIGlmICEgaXAgbGluayBzaG93IGRldiAiJHNsYXZlIiA+IC9kZXYvbnVsbCAyPiYxOyB0 aGVuCi0tICAgICAgICAgICAgICAgICAgICAjIHdhaXQgZm9yIHRoZSBsYXN0IHNsYXZlIHRvIHNo b3cgdXAKLS0gICAgICAgICAgICAgICAgICAgIGV4aXQgMAotLSAgICAgICAgICAgICAgICBmaQot LSAgICAgICAgICAgIGRvbmUKLS0KLS0gICAgICAgICAgICBpZiBbICEgLWUgIi90bXAvdGVhbS4k dGVhbW1hc3Rlci51cCIgXTsgdGhlbgotLSAgICAgICAgICAgICAgICAjIFdlIHNoYWxsIG9ubHkg YnJpbmcgdXAgdGhvc2UgX2Nhbl8gY29tZSB1cAotLSAgICAgICAgICAgICAgICAjIGluIGNhc2Ug b2Ygc29tZSBzbGF2ZSBpcyBnb25lIGluIGFjdGl2ZS1iYWNrdXAgbW9kZQotLSAgICAgICAgICAg ICAgICB3b3JraW5nX3NsYXZlcz0iIgotLSAgICAgICAgICAgICAgICBmb3Igc2xhdmUgaW4gJHRl YW1zbGF2ZXM7IGRvCi0tICAgICAgICAgICAgICAgICAgICB0ZWFtZGN0bCAiJHt0ZWFtbWFzdGVy fSIgcG9ydCBwcmVzZW50ICIke3NsYXZlfSIgMj4gL2Rldi9udWxsIFwKLS0gICAgICAgICAgICAg ICAgICAgICAgICAmJiBjb250aW51ZQotLSAgICAgICAgICAgICAgICAgICAgaXAgbGluayBzZXQg ZGV2ICIkc2xhdmUiIHVwIDI+IC9kZXYvbnVsbAotLSAgICAgICAgICAgICAgICAgICAgaWYgd2Fp dF9mb3JfaWZfdXAgIiRzbGF2ZSI7IHRoZW4KLS0gICAgICAgICAgICAgICAgICAgICAgICB3b3Jr aW5nX3NsYXZlcz0iJHdvcmtpbmdfc2xhdmVzJHNsYXZlICIKLS0gICAgICAgICAgICAgICAgICAg IGZpCi0tICAgICAgICAgICAgICAgIGRvbmUKLS0gICAgICAgICAgICAgICAgIyBEbyBub3QgYWRk IHNsYXZlcyBub3cKLS0gICAgICAgICAgICAgICAgdGVhbWQgLWQgLVUgLW4gLU4gLXQgIiR0ZWFt bWFzdGVyIiAtZiAiL2V0Yy90ZWFtZC8ke3RlYW1tYXN0ZXJ9LmNvbmYiCi0tICAgICAgICAgICAg ICAgIGZvciBzbGF2ZSBpbiAkd29ya2luZ19zbGF2ZXM7IGRvCi0tICAgICAgICAgICAgICAgICAg ICAjIHRlYW0gcmVxdWlyZXMgdGhlIHNsYXZlcyB0byBiZSBkb3duIGJlZm9yZSBqb2luaW5nIHRl YW0KLS0gICAgICAgICAgICAgICAgICAgIGlwIGxpbmsgc2V0IGRldiAiJHNsYXZlIiBkb3duCi0t ICAgICAgICAgICAgICAgICAgICAoCi0tICAgICAgICAgICAgICAgICAgICAgICAgdW5zZXQgVEVB TV9QT1JUX0NPTkZJRwotLSAgICAgICAgICAgICAgICAgICAgICAgIHJlYWQgLXIgX2h3YWRkciA8 ICIvc3lzL2NsYXNzL25ldC8kc2xhdmUvYWRkcmVzcyIKLS0gICAgICAgICAgICAgICAgICAgICAg ICBfc3ViY2hhbm5lbHM9JChpZmFjZV9nZXRfc3ViY2hhbm5lbHMgIiRzbGF2ZSIpCi0tICAgICAg ICAgICAgICAgICAgICAgICAgaWYgWyAtbiAiJF9od2FkZHIiIF0gJiYgWyAtZSAiL2V0Yy9zeXNj b25maWcvbmV0d29yay1zY3JpcHRzL21hYy0ke19od2FkZHJ9LmNvbmYiIF07IHRoZW4KLS0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCi0tICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC4gIi9ldGMvc3lzY29uZmlnL25ldHdvcmstc2NyaXB0 cy9tYWMtJHtfaHdhZGRyfS5jb25mIgotLSAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgWyAt biAiJF9zdWJjaGFubmVscyIgXSAmJiBbIC1lICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlw dHMvY2N3LSR7X3N1YmNoYW5uZWxzfS5jb25mIiBdOyB0aGVuCi0tICAgICAgICAgICAgICAgICAg ICAgICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAuICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvY2N3LSR7X3N1YmNo YW5uZWxzfS5jb25mIgotLSAgICAgICAgICAgICAgICAgICAgICAgIGVsaWYgWyAtZSAiL2V0Yy9z eXNjb25maWcvbmV0d29yay1zY3JpcHRzL2lmY2ZnLSR7c2xhdmV9IiBdOyB0aGVuCi0tICAgICAg ICAgICAgICAgICAgICAgICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAuICIvZXRjL3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMv aWZjZmctJHtzbGF2ZX0iCi0tICAgICAgICAgICAgICAgICAgICAgICAgZmkKLS0KLS0gICAgICAg ICAgICAgICAgICAgICAgICBpZiBbIC1uICIke1RFQU1fUE9SVF9DT05GSUd9IiBdOyB0aGVuCi0t ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC91c3IvYmluL3RlYW1kY3RsICIke3RlYW1tYXN0 ZXJ9IiBwb3J0IGNvbmZpZyB1cGRhdGUgIiR7c2xhdmV9IiAiJHtURUFNX1BPUlRfQ09ORklHfSIK LS0gICAgICAgICAgICAgICAgICAgICAgICBmaQotLSAgICAgICAgICAgICAgICAgICAgKQotLSAg ICAgICAgICAgICAgICAgICAgdGVhbWRjdGwgIiR0ZWFtbWFzdGVyIiBwb3J0IGFkZCAiJHNsYXZl IgotLSAgICAgICAgICAgICAgICBkb25lCi0tCi0tICAgICAgICAgICAgICAgIGlwIGxpbmsgc2V0 IGRldiAiJHRlYW1tYXN0ZXIiIHVwCi0tCi0tICAgICAgICAgICAgICAgIDogPiAiL3RtcC90ZWFt LiR0ZWFtbWFzdGVyLnVwIgotLSAgICAgICAgICAgICAgICBOT19URUFNX01BU1RFUj15ZXMgaWZ1 cCAiJHRlYW1tYXN0ZXIiCi0tICAgICAgICAgICAgICAgIGV4aXQgJD8KLS0gICAgICAgICAgICBm aQotLSAgICAgICAgZG9uZQotLSAgICBkb25lCi0tZmkKLS0KLS0jIGFsbCBzeW50aGV0aWMgaW50 ZXJmYWNlcyBkb25lLi4gbm93IGNoZWNrIGlmIHRoZSBpbnRlcmZhY2UgaXMgYXZhaWxhYmxlCi0t aWYgISBpcCBsaW5rIHNob3cgZGV2ICIkbmV0aWYiID4gL2Rldi9udWxsIDI+JjE7IHRoZW4KLS0g ICAgZXhpdCAxCi0tZmkKLS0KLS0jIGRpc2FibGUgbWFudWFsIGlmdXAgd2hpbGUgbmV0cm9vdCBp cyBzZXQgZm9yIHNpbXBsaWZ5aW5nIG91ciBsb2dpYwotLSMgaW4gbmV0cm9vdCBjYXNlIHdlIHBy ZWZlciBuZXRyb290IHRvIGJyaW5ndXAgJG5ldGlmIGF1dG9tYXRpY2FsbHkKLS1bIC1uICIkMiIg XSAmJiBbICIkMiIgPSAiLW0iIF0gJiYgWyAteiAiJG5ldHJvb3QiIF0gJiYgbWFudWFsdXA9IiQy IgotLQotLWlmIFsgLW4gIiRtYW51YWx1cCIgXTsgdGhlbgotLSAgICA6ID4gIi90bXAvbmV0LiRu ZXRpZi5tYW51YWx1cCIKLS0gICAgcm0gLWYgIi90bXAvbmV0LiR7bmV0aWZ9LmRpZC1zZXR1cCIK LS1lbHNlCi0tICAgIFsgLWUgIi90bXAvbmV0LiR7bmV0aWZ9LmRpZC1zZXR1cCIgXSAmJiBleGl0 IDAKLS0gICAgWyAteiAiJERPX1ZMQU4iIF0gXAotLSAgICAgICAgJiYgWyAtZSAiL3N5cy9jbGFz cy9uZXQvJG5ldGlmL2FkZHJlc3MiIF0gXAotLSAgICAgICAgJiYgWyAtZSAiL3RtcC9uZXQuJChj YXQgIi9zeXMvY2xhc3MvbmV0LyRuZXRpZi9hZGRyZXNzIikuZGlkLXNldHVwIiBdICYmIGV4aXQg MAotLWZpCi0tCi0tIyBTcGVjaWZpYyBjb25maWd1cmF0aW9uLCBzcGluIHRocm91Z2ggdGhlIGtl cm5lbCBjb21tYW5kIGxpbmUKLS0jIGxvb2tpbmcgZm9yIGlwPSBsaW5lcwotLWZvciBwIGluICQo Z2V0YXJncyBpcD0pOyBkbwotLSAgICBpcF90b192YXIgIiRwIgotLSAgICAjIHNraXAgaWJmdAot LSAgICBbICIkYXV0b2NvbmYiID0gImliZnQiIF0gJiYgY29udGludWUKLS0KLS0gICAgY2FzZSAi JGRldiIgaW4KLS0gICAgICAgID8/Oj8/Oj8/Oj8/Oj8/Oj8/KSAjIE1BQyBhZGRyZXNzCi0tICAg ICAgICAgICAgX2Rldj0kKGlmYWNlX2Zvcl9tYWMgIiRkZXYiKQotLSAgICAgICAgICAgIFsgLW4g IiRfZGV2IiBdICYmIGRldj0iJF9kZXYiCi0tICAgICAgICAgICAgOzsKLS0gICAgICAgID8/LT8/ LT8/LT8/LT8/LT8/KSAjIE1BQyBhZGRyZXNzIGluIEJPT1RJRiBmb3JtCi0tICAgICAgICAgICAg X2Rldj0kKGlmYWNlX2Zvcl9tYWMgIiQoZml4X2Jvb3RpZiAiJGRldiIpIikKLS0gICAgICAgICAg ICBbIC1uICIkX2RldiIgXSAmJiBkZXY9IiRfZGV2IgotLSAgICAgICAgICAgIDs7Ci0tICAgIGVz YWMKLS0KLS0gICAgIyBJZiB0aGlzIG9wdGlvbiBpc24ndCBkaXJlY3RlZCBhdCBvdXIgaW50ZXJm YWNlLCBza2lwIGl0Ci0tICAgIGlmIFsgLW4gIiRkZXYiIF07IHRoZW4KLS0gICAgICAgIGlmIFsg IiRkZXYiICE9ICIkbmV0aWYiIF07IHRoZW4KLS0gICAgICAgICAgICBbICEgLWUgIi9zeXMvY2xh c3MvbmV0LyRkZXYiIF0gXAotLSAgICAgICAgICAgICAgICAmJiB3YXJuICJOZXR3b3JrIGludGVy ZmFjZSAnJGRldicgZG9lcyBub3QgZXhpc3QhIgotLSAgICAgICAgICAgIGNvbnRpbnVlCi0tICAg ICAgICBmaQotLSAgICBlbHNlCi0tICAgICAgICBpZmFjZV9pc19lbnNsYXZlZCAiJG5ldGlmIiAm JiBjb250aW51ZQotLSAgICBmaQotLQotLSAgICAjIFN0b3JlIGNvbmZpZyBmb3IgbGF0ZXIgdXNl Ci0tICAgIGZvciBpIGluIGlwIHNydiBndyBtYXNrIGhvc3RuYW1lIG1hY2FkZHIgbXR1IGRuczEg ZG5zMjsgZG8KLS0gICAgICAgIGV2YWwgJ1sgIiQnJGknIiBdICYmIGVjaG8gJyRpJz0iJCckaSci JwotLSAgICBkb25lID4gIi90bXAvbmV0LiRuZXRpZi5vdmVycmlkZSIKLS0KLS0gICAgZm9yIGF1 dG9vcHQgaW4gJChzdHJfcmVwbGFjZSAiJGF1dG9jb25mIiAiLCIgIiAiKTsgZG8KLS0gICAgICAg IGNhc2UgJGF1dG9vcHQgaW4KLS0gICAgICAgICAgICBkaGNwIHwgb24gfCBhbnkpCi0tICAgICAg ICAgICAgICAgIGRvX2RoY3AgLTQKLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICBz aW5nbGUtZGhjcCkKLS0gICAgICAgICAgICAgICAgZG9fZGhjcF9wYXJhbGxlbCAtNAotLSAgICAg ICAgICAgICAgICBleGl0IDAKLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICBkaGNw NikKLS0gICAgICAgICAgICAgICAgbG9hZF9pcHY2Ci0tICAgICAgICAgICAgICAgIGRvX2RoY3Ag LTYKLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICBhdXRvNikKLS0gICAgICAgICAg ICAgICAgZG9faXB2NmF1dG8KLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICBlaXRo ZXI2KQotLSAgICAgICAgICAgICAgICBkb19pcHY2YXV0byB8fCBkb19kaGNwIC02Ci0tICAgICAg ICAgICAgICAgIDs7Ci0tICAgICAgICAgICAgbGluazYpCi0tICAgICAgICAgICAgICAgIGRvX2lw djZsaW5rCi0tICAgICAgICAgICAgICAgIDs7Ci0tICAgICAgICAgICAgKikKLS0gICAgICAgICAg ICAgICAgZG9fc3RhdGljCi0tICAgICAgICAgICAgICAgIDs7Ci0tICAgICAgICBlc2FjCi0tICAg IGRvbmUKLS0gICAgcmV0PSQ/Ci0tCi0tICAgICMgc2V0dXAgbmFtZXNlcnZlcgotLSAgICBmb3Ig cyBpbiAiJGRuczEiICIkZG5zMiIgJChnZXRhcmdzIG5hbWVzZXJ2ZXIpOyBkbwotLSAgICAgICAg WyAtbiAiJHMiIF0gfHwgY29udGludWUKLS0gICAgICAgIGVjaG8gIm5hbWVzZXJ2ZXIgJHMiID4+ ICIvdG1wL25ldC4kbmV0aWYucmVzb2x2LmNvbmYiCi0tICAgIGRvbmUKLS0KLS0gICAgaWYgWyAk cmV0IC1lcSAwIF07IHRoZW4KLS0gICAgICAgIDogPiAiL3RtcC9uZXQuJHtuZXRpZn0udXAiCi0t Ci0tICAgICAgICBpZiBbIC16ICIkRE9fVkxBTiIgXSAmJiBbIC1lICIvc3lzL2NsYXNzL25ldC8k e25ldGlmfS9hZGRyZXNzIiBdOyB0aGVuCi0tICAgICAgICAgICAgOiA+ICIvdG1wL25ldC4kKGNh dCAiL3N5cy9jbGFzcy9uZXQvJHtuZXRpZn0vYWRkcmVzcyIpLnVwIgotLSAgICAgICAgZmkKLS0K LS0gICAgICAgICMgYW5kIGZpbmFsbHksIGZpbmlzaCBpbnRlcmZhY2Ugc2V0IHVwIGlmIHRoZXJl IGlzbid0IGFscmVhZHkgYSBzY3JpcHQKLS0gICAgICAgICMgdG8gZG8gc28gKHdoaWNoIGlzIHRo ZSBjYXNlIGluIHRoZSBkaGNwIHBhdGgpCi0tICAgICAgICBpZiBbICEgLWUgIiRob29rZGlyL2lu aXRxdWV1ZS9zZXR1cF9uZXRfJG5ldGlmLnNoIiBdOyB0aGVuCi0tICAgICAgICAgICAgc2V0dXBf bmV0ICIkbmV0aWYiCi0tICAgICAgICAgICAgc291cmNlX2hvb2sgaW5pdHF1ZXVlL29ubGluZSAi JG5ldGlmIgotLSAgICAgICAgICAgIGlmIFsgLXogIiRtYW51YWx1cCIgXTsgdGhlbgotLSAgICAg ICAgICAgICAgICAvc2Jpbi9uZXRyb290ICIkbmV0aWYiCi0tICAgICAgICAgICAgZmkKLS0gICAg ICAgIGZpCi0tCi0tICAgICAgICBleGl0ICRyZXQKLS0gICAgZmkKLS1kb25lCi0tCi0tIyBubyBp cCBvcHRpb24gZGlyZWN0ZWQgYXQgb3VyIGludGVyZmFjZT8KLS1pZiBbIC16ICIkTk9fQVVUT19E SENQIiBdICYmIFsgISAtZSAiL3RtcC9uZXQuJHtuZXRpZn0udXAiIF07IHRoZW4KLS0gICAgcmV0 PTEKLS0gICAgaWYgWyAtZSAvdG1wL25ldC5ib290ZGV2IF07IHRoZW4KLS0gICAgICAgIHJlYWQg LXIgQk9PVERFViA8IC90bXAvbmV0LmJvb3RkZXYKLS0gICAgICAgIGlmIFsgIiRuZXRpZiIgPSAi JEJPT1RERVYiIF0gfHwgWyAiJEJPT1RERVYiID0gIiQoY2F0ICIvc3lzL2NsYXNzL25ldC8ke25l dGlmfS9hZGRyZXNzIikiIF07IHRoZW4KLS0gICAgICAgICAgICBkb19kaGNwCi0tICAgICAgICAg ICAgcmV0PSQ/Ci0tICAgICAgICBmaQotLSAgICBlbHNlCi0tICAgICAgICAjIE5vIGlwIGxpbmVz LCBubyBib290ZGV2IC0+IGRlZmF1bHQgdG8gZGhjcAotLSAgICAgICAgaXA9JChnZXRhcmcgaXAp Ci0tCi0tICAgICAgICBpZiBnZXRhcmdzICdpcD1kaGNwNicgPiAvZGV2L251bGwgfHwgWyAteiAi JGlwIiBdICYmIFsgIiRuZXRyb290IiA9ICJkaGNwNiIgXTsgdGhlbgotLSAgICAgICAgICAgIGxv YWRfaXB2NgotLSAgICAgICAgICAgIGRvX2RoY3AgLTYKLS0gICAgICAgICAgICByZXQ9JD8KLS0g ICAgICAgIGZpCi0tICAgICAgICBpZiBnZXRhcmdzICdpcD1kaGNwJyA+IC9kZXYvbnVsbCB8fCBb IC16ICIkaXAiIF0gJiYgWyAiJG5ldHJvb3QiICE9ICJkaGNwNiIgXTsgdGhlbgotLSAgICAgICAg ICAgIGRvX2RoY3AgLTQKLS0gICAgICAgICAgICByZXQ9JD8KLS0gICAgICAgIGZpCi0tICAgIGZp Ci0tCi0tICAgIGZvciBzIGluICQoZ2V0YXJncyBuYW1lc2VydmVyKTsgZG8KLS0gICAgICAgIFsg LW4gIiRzIiBdIHx8IGNvbnRpbnVlCi0tICAgICAgICBlY2hvICJuYW1lc2VydmVyICRzIiA+PiAi L3RtcC9uZXQuJG5ldGlmLnJlc29sdi5jb25mIgotLSAgICBkb25lCi0tCi0tICAgIGlmIFsgIiRy ZXQiIC1lcSAwIF0gJiYgWyAtbiAiJChscyAiL3RtcC9sZWFzZWluZm8uJHtuZXRpZn0iKiAyPiAv ZGV2L251bGwpIiBdOyB0aGVuCi0tICAgICAgICA6ID4gIi90bXAvbmV0LiR7bmV0aWZ9LmRpZC1z ZXR1cCIKLS0gICAgICAgIGlmIFsgLWUgIi9zeXMvY2xhc3MvbmV0LyR7bmV0aWZ9L2FkZHJlc3Mi IF07IHRoZW4KLS0gICAgICAgICAgICA6ID4gIi90bXAvbmV0LiQoY2F0ICIvc3lzL2NsYXNzL25l dC8ke25ldGlmfS9hZGRyZXNzIikuZGlkLXNldHVwIgotLSAgICAgICAgZmkKLS0gICAgZmkKLS1m aQotLQotLWV4aXQgMAotZGlmZiAtLWdpdCBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L2tp bGwtZGhjbGllbnQuc2ggYi9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9raWxsLWRoY2xpZW50 LnNoCi1kZWxldGVkIGZpbGUgbW9kZSAxMDA3NTUKLWluZGV4IDllZDYxNWZkLi4wMDAwMDAwMAot LS0tIGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kva2lsbC1kaGNsaWVudC5zaAotKysrIC9k ZXYvbnVsbAotQEAgLTEsMTUgKzAsMCBAQAotLSMhL2Jpbi9zaAotLQotLWZvciBmIGluIC90bXAv ZGhjbGllbnQuKi5waWQ7IGRvCi0tICAgIFsgLWUgIiRmIiBdIHx8IGNvbnRpbnVlCi0tICAgIHJl YWQgLXIgUElEIDwgIiRmIgotLSAgICBraWxsICIkUElEIiA+IC9kZXYvbnVsbCAyPiYxCi0tZG9u ZQotLQotLXNsZWVwIDAuMQotLQotLWZvciBmIGluIC90bXAvZGhjbGllbnQuKi5waWQ7IGRvCi0t ICAgIFsgLWUgIiRmIiBdIHx8IGNvbnRpbnVlCi0tICAgIHJlYWQgLXIgUElEIDwgIiRmIgotLSAg ICBraWxsIC05ICIkUElEIiA+IC9kZXYvbnVsbCAyPiYxCi0tZG9uZQotZGlmZiAtLWdpdCBhL21v ZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L21vZHVsZS1zZXR1cC5zaCBiL21vZHVsZXMuZC8zNW5l dHdvcmstbGVnYWN5L21vZHVsZS1zZXR1cC5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1p bmRleCBkNzE2MmFkNS4uMDAwMDAwMDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5 L21vZHVsZS1zZXR1cC5zaAotKysrIC9kZXYvbnVsbAotQEAgLTEsOTQgKzAsMCBAQAotLSMhL2Jp bi9iYXNoCi0tCi0tIyBjYWxsZWQgYnkgZHJhY3V0Ci0tY2hlY2soKSB7Ci0tICAgIHJlcXVpcmVf YmluYXJpZXMgaXAgZGhjbGllbnQgc2VkIGF3ayBncmVwIHBncmVwIHRyIGV4cHIgfHwgcmV0dXJu IDEKLS0gICAgcmVxdWlyZV9hbnlfYmluYXJ5IGFycGluZyBhcnBpbmcyIHx8IHJldHVybiAxCi0t Ci0tICAgIHJldHVybiAyNTUKLS19Ci0tCi0tIyBjYWxsZWQgYnkgZHJhY3V0Ci0tZGVwZW5kcygp IHsKLS0gICAgZWNobyBuZXQtbGliIGtlcm5lbC1uZXR3b3JrLW1vZHVsZXMgaW5pdHF1ZXVlCi0t ICAgIHJldHVybiAwCi0tfQotLQotLSMgY2FsbGVkIGJ5IGRyYWN1dAotLWluc3RhbGwoKSB7Ci0t ICAgIGxvY2FsIF9hcmNoCi0tCi0tICAgICMgQWRkaW5nIGRlZmF1bHQgbGluayBhbmQgKGlmIGV4 aXN0cykgOTgtZGVmYXVsdC1tYWMtbm9uZS5saW5rCi0tICAgIGlmIGRyYWN1dF9tb2R1bGVfaW5j bHVkZWQgInN5c3RlbWQiOyB0aGVuCi0tICAgICAgICBpbnN0X211bHRpcGxlIC1vIFwKLS0gICAg ICAgICAgICAiJHtzeXN0ZW1kbmV0d29ya30vOTktZGVmYXVsdC5saW5rIiBcCi0tICAgICAgICAg ICAgIiR7c3lzdGVtZG5ldHdvcmt9Lzk4LWRlZmF1bHQtbWFjLW5vbmUubGluayIKLS0gICAgICAg IFtbICRob3N0b25seSBdXSAmJiBpbnN0X211bHRpcGxlIC1IIC1vICIke3N5c3RlbWRuZXR3b3Jr Y29uZmRpcn0vKi5saW5rIgotLSAgICBmaQotLQotLSAgICBpbnN0X211bHRpcGxlIGlwIGRoY2xp ZW50IHNlZCBhd2sgZ3JlcCBwZ3JlcCB0ciBleHByCi0tCi0tICAgIGluc3RfbXVsdGlwbGUgLW8g YXJwaW5nIGFycGluZzIKLS0gICAgc3Ryc3RyICIkKGFycGluZyAyPiYxKSIgIkFSUGluZyAyIiAm JiBtdiAiJGluaXRkaXIvYmluL2FycGluZyIgIiRpbml0ZGlyL2Jpbi9hcnBpbmcyIgotLQotLSAg ICBpbnN0X211bHRpcGxlIC1vIHBpbmcgcGluZzYKLS0gICAgaW5zdF9tdWx0aXBsZSAtbyB0ZWFt ZCB0ZWFtZGN0bCB0ZWFtbmwKLS0gICAgaW5zdF9zaW1wbGUgL2V0Yy9saWJubC9jbGFzc2lkCi0t ICAgIGluc3Rfc2NyaXB0ICIkbW9kZGlyL2lmdXAuc2giICIvc2Jpbi9pZnVwIgotLSAgICBpbnN0 X3NjcmlwdCAiJG1vZGRpci9kaGNwLW11bHRpLnNoIiAiL3NiaW4vZGhjcC1tdWx0aS5zaCIKLS0g ICAgaW5zdF9zY3JpcHQgIiRtb2RkaXIvZGhjbGllbnQtc2NyaXB0LnNoIiAiL3NiaW4vZGhjbGll bnQtc2NyaXB0IgotLSAgICBpbnN0X3NpbXBsZSAtSCAiL2V0Yy9kaGNsaWVudC5jb25mIgotLSAg ICBjYXQgIiRtb2RkaXIvZGhjbGllbnQuY29uZiIgPj4gIiR7aW5pdGRpcn0vZXRjL2RoY2xpZW50 LmNvbmYiCi0tICAgIGluc3RfaG9vayBwcmUtdWRldiA2MCAiJG1vZGRpci9uZXQtZ2VucnVsZXMu c2giCi0tICAgIGluc3RfaG9vayBjbWRsaW5lIDkyICIkbW9kZGlyL3BhcnNlLWliZnQuc2giCi0t ICAgIGluc3RfaG9vayBjbWRsaW5lIDk1ICIkbW9kZGlyL3BhcnNlLXZsYW4uc2giCi0tICAgIGlu c3RfaG9vayBjbWRsaW5lIDk2ICIkbW9kZGlyL3BhcnNlLWJvbmQuc2giCi0tICAgIGluc3RfaG9v ayBjbWRsaW5lIDk2ICIkbW9kZGlyL3BhcnNlLXRlYW0uc2giCi0tICAgIGluc3RfaG9vayBjbWRs aW5lIDk3ICIkbW9kZGlyL3BhcnNlLWJyaWRnZS5zaCIKLS0gICAgaW5zdF9ob29rIGNtZGxpbmUg OTggIiRtb2RkaXIvcGFyc2UtaXAtb3B0cy5zaCIKLS0gICAgaW5zdF9ob29rIGNtZGxpbmUgOTkg IiRtb2RkaXIvcGFyc2UtaWZuYW1lLnNoIgotLSAgICBpbnN0X2hvb2sgY2xlYW51cCAxMCAiJG1v ZGRpci9raWxsLWRoY2xpZW50LnNoIgotLQotLSAgICAjIGluc3RhbGwgYWxsIGNvbmZpZyBmaWxl cyBmb3IgdGVhbWluZwotLSAgICB1bnNldCBURUFNX01BU1RFUgotLSAgICB1bnNldCBURUFNX0NP TkZJRwotLSAgICB1bnNldCBURUFNX1BPUlRfQ09ORklHCi0tICAgIHVuc2V0IEhXQUREUgotLSAg ICB1bnNldCBTVUJDSEFOTkVMUwotLSAgICBmb3IgaSBpbiAvZXRjL3N5c2NvbmZpZy9uZXR3b3Jr LXNjcmlwdHMvaWZjZmctKjsgZG8KLS0gICAgICAgIFsgLWUgIiRpIiBdIHx8IGNvbnRpbnVlCi0t ICAgICAgICBjYXNlICIkaSIgaW4KLS0gICAgICAgICAgICAqfiB8ICouYmFrIHwgKi5vcmlnIHwg Ki5ycG1uZXcgfCAqLnJwbW9yaWcgfCAqLnJwbXNhdmUpCi0tICAgICAgICAgICAgICAgIGNvbnRp bnVlCi0tICAgICAgICAgICAgICAgIDs7Ci0tICAgICAgICBlc2FjCi0tICAgICAgICAoCi0tICAg ICAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCi0tICAgICAgICAgICAgLiAiJGki Ci0tICAgICAgICAgICAgaWYgISBbICIke09OQk9PVH0iID0gIm5vIiBdIHx8IFsgIiR7T05CT09U fSIgPSAiTk8iIF0gXAotLSAgICAgICAgICAgICAgICAmJiBbIC1uICIke1RFQU1fTUFTVEVSfSR7 VEVBTV9DT05GSUd9JHtURUFNX1BPUlRfQ09ORklHfSIgXTsgdGhlbgotLSAgICAgICAgICAgICAg ICBpZiBbIC1uICIkVEVBTV9DT05GSUciIF0gJiYgWyAtbiAiJERFVklDRSIgXTsgdGhlbgotLSAg ICAgICAgICAgICAgICAgICAgbWtkaXIgLXAgIiRpbml0ZGlyIi9ldGMvdGVhbWQKLS0gICAgICAg ICAgICAgICAgICAgIHByaW50ZiAtLSAiJXMiICIkVEVBTV9DT05GSUciID4gIiRpbml0ZGlyL2V0 Yy90ZWFtZC8ke0RFVklDRX0uY29uZiIKLS0gICAgICAgICAgICAgICAgZWxpZiBbIC1uICIkVEVB TV9QT1JUX0NPTkZJRyIgXTsgdGhlbgotLSAgICAgICAgICAgICAgICAgICAgaW5zdF9zaW1wbGUg IiRpIgotLQotLSAgICAgICAgICAgICAgICAgICAgSFdBRERSPSIkKGVjaG8gIiRIV0FERFIiIHwg c2VkICd5L0FCQ0RFRi9hYmNkZWYvJykiCi0tICAgICAgICAgICAgICAgICAgICBpZiBbIC1uICIk SFdBRERSIiBdOyB0aGVuCi0tICAgICAgICAgICAgICAgICAgICAgICAgbG5fciAiJGkiICIvZXRj L3N5c2NvbmZpZy9uZXR3b3JrLXNjcmlwdHMvbWFjLSR7SFdBRERSfS5jb25mIgotLSAgICAgICAg ICAgICAgICAgICAgZmkKLS0KLS0gICAgICAgICAgICAgICAgICAgIFNVQkNIQU5ORUxTPSIkKGVj aG8gIiRTVUJDSEFOTkVMUyIgfCBzZWQgJ3kvQUJDREVGL2FiY2RlZi8nKSIKLS0gICAgICAgICAg ICAgICAgICAgIGlmIFsgLW4gIiRTVUJDSEFOTkVMUyIgXTsgdGhlbgotLSAgICAgICAgICAgICAg ICAgICAgICAgIGxuX3IgIiRpIiAiL2V0Yy9zeXNjb25maWcvbmV0d29yay1zY3JpcHRzL2Njdy0k e1NVQkNIQU5ORUxTfS5jb25mIgotLSAgICAgICAgICAgICAgICAgICAgZmkKLS0gICAgICAgICAg ICAgICAgZmkKLS0gICAgICAgICAgICBmaQotLSAgICAgICAgKQotLSAgICBkb25lCi0tCi0tICAg IF9hcmNoPSR7RFJBQ1VUX0FSQ0g6LSQodW5hbWUgLW0pfQotLQotLSAgICBpbnN0X2xpYmRpcl9m aWxlIHsidGxzLyRfYXJjaC8iLHRscy8sIiRfYXJjaC8iLH0ibGlibnNzX2Rucy5zby4qIiBcCi0t ICAgICAgICB7InRscy8kX2FyY2gvIix0bHMvLCIkX2FyY2gvIix9ImxpYm5zc19tZG5zNF9taW5p bWFsLnNvLioiCi0tfQotZGlmZiAtLWdpdCBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L25l dC1nZW5ydWxlcy5zaCBiL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L25ldC1nZW5ydWxlcy5z aAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCAxM2JjY2VkMy4uMDAwMDAwMDAKLS0t LSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L25ldC1nZW5ydWxlcy5zaAotKysrIC9kZXYv bnVsbAotQEAgLTEsMTI1ICswLDAgQEAKLS0jIS9iaW4vc2gKLS0KLS1nZXRhcmdib29sIDAgcmQu bmVlZG5ldCAmJiBORUVETkVUPTEKLS0KLS0jIERvbid0IGNvbnRpbnVlIGlmIHdlIGRvbid0IG5l ZWQgbmV0d29yawotLWlmIFsgLXogIiRuZXRyb290IiBdICYmIFsgISAtZSAiL3RtcC9uZXQuaWZh Y2VzIiBdICYmIFsgIiRORUVETkVUIiAhPSAiMSIgXTsgdGhlbgotLSAgICByZXR1cm4KLS1maQot LQotLWNvbW1hbmQgLXYgZml4X2Jvb3RpZiA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxpYi5z aAotLQotLSMgV3JpdGUgdWRldiBydWxlcwotLXsKLS0gICAgIyBicmlkZ2U6IGF0dGVtcHQgb25s eSB0aGUgZGVmaW5lZCBpbnRlcmZhY2UKLS0gICAgZm9yIGkgaW4gL3RtcC9icmlkZ2UuKi5pbmZv OyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29udGludWUKLS0gICAgICAgIHVuc2V0IGJy aWRnZXNsYXZlcwotLSAgICAgICAgdW5zZXQgYnJpZGdlbmFtZQotLSAgICAgICAgIyBzaGVsbGNo ZWNrIGRpc2FibGU9U0MxMDkwCi0tICAgICAgICAuICIkaSIKLS0gICAgICAgIFJBV19JRkFDRVM9 IiRSQVdfSUZBQ0VTICRicmlkZ2VzbGF2ZXMiCi0tICAgICAgICBNQVNURVJfSUZBQ0VTPSIkTUFT VEVSX0lGQUNFUyAkYnJpZGdlbmFtZSIKLS0gICAgZG9uZQotLQotLSAgICAjIGJvbmQ6IGF0dGVt cHQgb25seSB0aGUgZGVmaW5lZCBpbnRlcmZhY2UgKG92ZXJyaWRlIGJyaWRnZSBkZWZpbmVzKQot LSAgICBmb3IgaSBpbiAvdG1wL2JvbmQuKi5pbmZvOyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0g fHwgY29udGludWUKLS0gICAgICAgIHVuc2V0IGJvbmRzbGF2ZXMKLS0gICAgICAgIHVuc2V0IGJv bmRuYW1lCi0tICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgICAgIC4g IiRpIgotLSAgICAgICAgIyBJdCBpcyBlbm91Z2ggdG8gZmlyZSB1cCBvbmx5IG9uZQotLSAgICAg ICAgUkFXX0lGQUNFUz0iJFJBV19JRkFDRVMgJGJvbmRzbGF2ZXMiCi0tICAgICAgICBNQVNURVJf SUZBQ0VTPSIkTUFTVEVSX0lGQUNFUyAke2JvbmRuYW1lfSIKLS0gICAgZG9uZQotLQotLSAgICBm b3IgaSBpbiAvdG1wL3RlYW0uKi5pbmZvOyBkbwotLSAgICAgICAgWyAtZSAiJGkiIF0gfHwgY29u dGludWUKLS0gICAgICAgIHVuc2V0IHRlYW1zbGF2ZXMKLS0gICAgICAgIHVuc2V0IHRlYW1tYXN0 ZXIKLS0gICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotLSAgICAgICAgLiAiJGki Ci0tICAgICAgICBSQVdfSUZBQ0VTPSIkUkFXX0lGQUNFUyAke3RlYW1zbGF2ZXN9IgotLSAgICAg ICAgTUFTVEVSX0lGQUNFUz0iJE1BU1RFUl9JRkFDRVMgJHt0ZWFtbWFzdGVyfSIKLS0gICAgZG9u ZQotLQotLSAgICBmb3IgaSBpbiAvdG1wL3ZsYW4uKi5waHk7IGRvCi0tICAgICAgICBbIC1lICIk aSIgXSB8fCBjb250aW51ZQotLSAgICAgICAgdW5zZXQgcGh5ZGV2aWNlCi0tICAgICAgICAjIHNo ZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgICAgIC4gIiRpIgotLSAgICAgICAgUkFXX0lG QUNFUz0iJFJBV19JRkFDRVMgJHBoeWRldmljZSIKLS0gICAgICAgIGZvciBqIGluIC90bXAvdmxh bi4qIi4ke3BoeWRldmljZX0iOyBkbwotLSAgICAgICAgICAgIFsgLWUgIiRqIiBdIHx8IGNvbnRp bnVlCi0tICAgICAgICAgICAgdW5zZXQgdmxhbm5hbWUKLS0gICAgICAgICAgICAjIHNoZWxsY2hl Y2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgICAgICAgICAuICIkaiIKLS0gICAgICAgICAgICBNQVNU RVJfSUZBQ0VTPSIkTUFTVEVSX0lGQUNFUyAke3ZsYW5uYW1lfSIKLS0gICAgICAgIGRvbmUKLS0g ICAgZG9uZQotLQotLSAgICBNQVNURVJfSUZBQ0VTPSIkKHRyaW0gIiRNQVNURVJfSUZBQ0VTIiki Ci0tICAgIFJBV19JRkFDRVM9IiQodHJpbSAiJFJBV19JRkFDRVMiKSIKLS0KLS0gICAgaWYgWyAt eiAiJElGQUNFUyIgXTsgdGhlbgotLSAgICAgICAgWyAtZSAvdG1wL25ldC5pZmFjZXMgXSAmJiBy ZWFkIC1yIElGQUNFUyA8IC90bXAvbmV0LmlmYWNlcwotLSAgICBmaQotLQotLSAgICBpZiBbIC1l IC90bXAvbmV0LmJvb3RkZXYgXTsgdGhlbgotLSAgICAgICAgcmVhZCAtciBib290ZGV2IDwgL3Rt cC9uZXQuYm9vdGRldgotLSAgICBmaQotLQotLSAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzIw MTYKLS0gICAgaWZ1cD0nL3NiaW4vaWZ1cCAkbmFtZScKLS0KLS0gICAgcnVuY21kPSJSVU4rPVwi L3NiaW4vaW5pdHF1ZXVlIC0tbmFtZSBpZnVwLVwkbmFtZSAtLXVuaXF1ZSAtLW9uZXRpbWUgJGlm dXBcIiIKLS0KLS0gICAgIyBXZSBoYXZlIHNvbWUgc3BlY2lmaWMgaW50ZXJmYWNlcyB0byBoYW5k bGUKLS0gICAgaWYgWyAtbiAiJHtSQVdfSUZBQ0VTfSR7SUZBQ0VTfSIgXTsgdGhlbgotLSAgICAg ICAgZWNobyAnU1VCU1lTVEVNIT0ibmV0IiwgR09UTz0ibmV0X2VuZCInCi0tICAgICAgICBlY2hv ICdBQ1RJT04hPSJhZGR8Y2hhbmdlfG1vdmUiLCBHT1RPPSJuZXRfZW5kIicKLS0gICAgICAgIGZv ciBpZmFjZSBpbiAkSUZBQ0VTICRSQVdfSUZBQ0VTOyBkbwotLSAgICAgICAgICAgIGNhc2UgIiRp ZmFjZSIgaW4KLS0gICAgICAgICAgICAgICAgPz86Pz86Pz86Pz86Pz86Pz8pICMgTUFDIGFkZHJl c3MKLS0gICAgICAgICAgICAgICAgICAgIGNvbmQ9IkFUVFJ7YWRkcmVzc309PVwiJGlmYWNlXCIi Ci0tICAgICAgICAgICAgICAgICAgICBlY2hvICIkY29uZCwgJHJ1bmNtZCwgR09UTz1cIm5ldF9l bmRcIiIKLS0gICAgICAgICAgICAgICAgICAgIDs7Ci0tICAgICAgICAgICAgICAgID8/LT8/LT8/ LT8/LT8/LT8/KSAjIE1BQyBhZGRyZXNzIGluIEJPT1RJRiBmb3JtCi0tICAgICAgICAgICAgICAg ICAgICBjb25kPSJBVFRSe2FkZHJlc3N9PT1cIiQoZml4X2Jvb3RpZiAiJGlmYWNlIilcIiIKLS0g ICAgICAgICAgICAgICAgICAgIGVjaG8gIiRjb25kLCAkcnVuY21kLCBHT1RPPVwibmV0X2VuZFwi IgotLSAgICAgICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICAgICAgKikgIyBhbiBpbnRl cmZhY2UgbmFtZQotLSAgICAgICAgICAgICAgICAgICAgY29uZD0iRU5We0lOVEVSRkFDRX09PVwi JGlmYWNlXCIiCi0tICAgICAgICAgICAgICAgICAgICBlY2hvICIkY29uZCwgJHJ1bmNtZCwgR09U Tz1cIm5ldF9lbmRcIiIKLS0gICAgICAgICAgICAgICAgICAgIGNvbmQ9Ik5BTUU9PVwiJGlmYWNl XCIiCi0tICAgICAgICAgICAgICAgICAgICBlY2hvICIkY29uZCwgJHJ1bmNtZCwgR09UTz1cIm5l dF9lbmRcIiIKLS0gICAgICAgICAgICAgICAgICAgIDs7Ci0tICAgICAgICAgICAgZXNhYwotLSAg ICAgICAgICAgICMgVGhlIEdPVE8gcHJldmVudHMgdXMgZnJvbSB0cnlpbmcgdG8gaWZ1cCB0aGUg c2FtZSBkZXZpY2UgdHdpY2UKLS0gICAgICAgIGRvbmUKLS0gICAgICAgIGVjaG8gJ0xBQkVMPSJu ZXRfZW5kIicKLS0KLS0gICAgICAgIGZvciBpZmFjZSBpbiAkSUZBQ0VTOyBkbwotLSAgICAgICAg ICAgIGlmIFsgIiRib290ZGV2IiA9ICIkaWZhY2UiIF0gfHwgWyAiJE5FRURORVQiID0gIjEiIF07 IHRoZW4KLS0gICAgICAgICAgICAgICAgaWYgWyAtbiAiJG5ldHJvb3QiIF0gJiYgWyAtbiAiJHtE UkFDVVRfU1lTVEVNRC19IiBdOyB0aGVuCi0tICAgICAgICAgICAgICAgICAgICBlY2hvICJzeXN0 ZW1jdGwgaXMtYWN0aXZlIGluaXRyZC1yb290LWRldmljZS50YXJnZXQgfHwgWyAtZiAvdG1wL25l dC4ke2lmYWNlfS5kaWQtc2V0dXAgXSIKLS0gICAgICAgICAgICAgICAgZWxzZQotLSAgICAgICAg ICAgICAgICAgICAgZWNobyAiWyAtZiAvdG1wL25ldC4ke2lmYWNlfS5kaWQtc2V0dXAgXSIKLS0g ICAgICAgICAgICAgICAgZmkgPiAiJGhvb2tkaXIiL2luaXRxdWV1ZS9maW5pc2hlZC93YWl0LSIk aWZhY2UiLnNoCi0tICAgICAgICAgICAgZmkKLS0gICAgICAgIGRvbmUKLS0gICAgIyBEZWZhdWx0 OiBXZSBkb24ndCBrbm93IHRoZSBpbnRlcmZhY2UgdG8gdXNlLCBoYW5kbGUgYWxsCi0tICAgICMg Rml4bWU6IHdhaXRpbmcgZm9yIHRoZSBpbnRlcmZhY2UgYXMgd2VsbC4KLS0gICAgZWxzZQotLSAg ICAgICAgY29uZD0nQUNUSU9OPT0iYWRkIiwgU1VCU1lTVEVNPT0ibmV0IiwgRU5We0RFVlRZUEV9 IT0id2xhbnx3d2FuIicKLS0gICAgICAgICMgaWYgeW91IGNoYW5nZSB0aGUgbmFtZSBvZiAiOTEt ZGVmYXVsdC1uZXQucnVsZXMiLCBhbHNvIGNoYW5nZSBtb2R1bGVzLmQvODBjbXMvY21zc2V0dXAu c2gKLS0gICAgICAgIGVjaG8gIiRjb25kLCAkcnVuY21kIiA+IC9ldGMvdWRldi9ydWxlcy5kLzkx LWRlZmF1bHQtbmV0LnJ1bGVzCi0tICAgICAgICBpZiBbICIkTkVFRE5FVCIgPSAiMSIgXTsgdGhl bgotLSAgICAgICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMjAxNgotLSAgICAgICAgICAg IGVjaG8gJ2ZvciBpIGluIC90bXAvbmV0LiouZGlkLXNldHVwOyBkbyBbIC1mICIkaSIgXSAgJiYg ZXhpdCAwOyBkb25lOyBleGl0IDEnID4gIiRob29rZGlyIi9pbml0cXVldWUvZmluaXNoZWQvd2Fp dC1uZXR3b3JrLnNoCi0tICAgICAgICBmaQotLSAgICBmaQotLQotLSAgICAjIGlmIHlvdSBjaGFu Z2UgdGhlIG5hbWUgb2YgIjkwLW5ldC5ydWxlcyIsIGFsc28gY2hhbmdlIG1vZHVsZXMuZC84MGNt cy9jbXNzZXR1cC5zaAotLX0gPiAvZXRjL3VkZXYvcnVsZXMuZC85MC1uZXQucnVsZXMKLWRpZmYg LS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1ib25kLnNoIGIvbW9kdWxl cy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYm9uZC5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAw NzU1Ci1pbmRleCBiYTMwYTNiYy4uMDAwMDAwMDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmst bGVnYWN5L3BhcnNlLWJvbmQuc2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDc2ICswLDAgQEAKLS0j IS9iaW4vc2gKLS0jCi0tIyBGb3JtYXQ6Ci0tIyAgICAgICBib25kPTxib25kbmFtZT5bOjxib25k c2xhdmVzPls6PG9wdGlvbnM+Wzo8bXR1Pl1dXQotLSMKLS0jICAgICAgIGJvbmRzbGF2ZXMgaXMg YSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwaHlzaWNhbCAoZXRoZXJuZXQpIGludGVyZmFjZXMK LS0jICAgICAgIG9wdGlvbnMgaXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvbiBib25kaW5nIG9w dGlvbnMgKG1vZGluZm8gYm9uZGluZyBmb3IgZGV0YWlscykgaW4gZm9ybWF0IGNvbXBhdGlibGUg d2l0aCBpbml0c2NyaXB0cwotLSMgICAgICAgaWYgb3B0aW9ucyBpbmNsdWRlIG11bHRpLXZhbHVl ZCBhcnBfaXBfdGFyZ2V0IG9wdGlvbiwgdGhlbiBpdHMgdmFsdWVzIHNob3VsZCBiZSBzZXBhcmF0 ZWQgYnkgc2VtaWNvbG9uLgotLSMKLS0jICAgICAgIGJvbmQgd2l0aG91dCBwYXJhbWV0ZXJzIGFz c3VtZXMgYm9uZD1ib25kMDpldGgwLGV0aDE6bW9kZT1iYWxhbmNlLXJyCi0tIwotLSMgICAgICAg aWYgdGhlIG10dSBpcyBzcGVjaWZpZWQsIGl0IHdpbGwgYmUgc2V0IG9uIHRoZSBib25kIG1hc3Rl cgotLSMKLS0KLS0jIFdlIHRyYW5zbGF0ZSBsaXN0IG9mIHNsYXZlcyB0byBzcGFjZS1zZXBhcmF0 ZWQgaGVyZSB0byBtYWtlIGl0IGVhc2llciB0byBsb29wIG92ZXIgdGhlbSBpbiBpZnVwCi0tIyBE aXR0byBmb3IgYm9uZGluZyBvcHRpb25zCi0tcGFyc2Vib25kKCkgewotLSAgICBsb2NhbCB2PSIk ezF9IjoKLS0gICAgc2V0IC0tCi0tICAgIHdoaWxlIFsgLW4gIiR2IiBdOyBkbwotLSAgICAgICAg c2V0IC0tICIkQCIgIiR7diUlOip9IgotLSAgICAgICAgdj0ke3YjKjp9Ci0tICAgIGRvbmUKLS0K LS0gICAgY2FzZSAkIyBpbgotLSAgICAgICAgMCkKLS0gICAgICAgICAgICBib25kbmFtZT1ib25k MAotLSAgICAgICAgICAgIGJvbmRzbGF2ZXM9ImV0aDAgZXRoMSIKLS0gICAgICAgICAgICA7Owot LSAgICAgICAgMSkKLS0gICAgICAgICAgICBib25kbmFtZT0kMQotLSAgICAgICAgICAgIGJvbmRz bGF2ZXM9ImV0aDAgZXRoMSIKLS0gICAgICAgICAgICA7OwotLSAgICAgICAgMikKLS0gICAgICAg ICAgICBib25kbmFtZT0kMQotLSAgICAgICAgICAgIGJvbmRzbGF2ZXM9JChzdHJfcmVwbGFjZSAi JDIiICIsIiAiICIpCi0tICAgICAgICAgICAgOzsKLS0gICAgICAgIDMpCi0tICAgICAgICAgICAg Ym9uZG5hbWU9JDEKLS0gICAgICAgICAgICBib25kc2xhdmVzPSQoc3RyX3JlcGxhY2UgIiQyIiAi LCIgIiAiKQotLSAgICAgICAgICAgIGJvbmRvcHRpb25zPSQoc3RyX3JlcGxhY2UgIiQzIiAiLCIg IiAiKQotLSAgICAgICAgICAgIDs7Ci0tICAgICAgICA0KQotLSAgICAgICAgICAgIGJvbmRuYW1l PSQxCi0tICAgICAgICAgICAgYm9uZHNsYXZlcz0kKHN0cl9yZXBsYWNlICIkMiIgIiwiICIgIikK LS0gICAgICAgICAgICBib25kb3B0aW9ucz0kKHN0cl9yZXBsYWNlICIkMyIgIiwiICIgIikKLS0g ICAgICAgICAgICBib25kbXR1PSQ0Ci0tICAgICAgICAgICAgOzsKLS0gICAgICAgICopIGRpZSAi Ym9uZD0gcmVxdWlyZXMgemVybyB0byBmb3VyIHBhcmFtZXRlcnMiIDs7Ci0tICAgIGVzYWMKLS19 Ci0tCi0tIyBQYXJzZSBib25kIGZvciBib25kbmFtZSwgYm9uZHNsYXZlcywgYm9uZG1vZGUsIGJv bmRvcHRpb25zIGFuZCBib25kbXR1Ci0tZm9yIGJvbmQgaW4gJChnZXRhcmdzIGJvbmQ9KTsgZG8K LS0gICAgdW5zZXQgYm9uZG5hbWUKLS0gICAgdW5zZXQgYm9uZHNsYXZlcwotLSAgICB1bnNldCBi b25kb3B0aW9ucwotLSAgICB1bnNldCBib25kbXR1Ci0tICAgIGlmIFsgIiRib25kIiAhPSAiYm9u ZCIgXTsgdGhlbgotLSAgICAgICAgcGFyc2Vib25kICIkYm9uZCIKLS0gICAgZmkKLS0gICAgIyBT aW1wbGUgZGVmYXVsdCBib25kCi0tICAgIGlmIFsgLXogIiRib25kbmFtZSIgXTsgdGhlbgotLSAg ICAgICAgYm9uZG5hbWU9Ym9uZDAKLS0gICAgICAgIGJvbmRzbGF2ZXM9ImV0aDAgZXRoMSIKLS0g ICAgZmkKLS0gICAgIyBNYWtlIGl0IHN1aXRhYmxlIGZvciBpbml0c2NyaXB0cyBleHBvcnQKLS0g ICAgYm9uZG9wdGlvbnM9JChzdHJfcmVwbGFjZSAiJGJvbmRvcHRpb25zIiAiOyIgIiwiKQotLQot LSAgICB7Ci0tICAgICAgICBlY2hvICJib25kbmFtZT0kYm9uZG5hbWUiCi0tICAgICAgICBlY2hv ICJib25kc2xhdmVzPVwiJGJvbmRzbGF2ZXNcIiIKLS0gICAgICAgIGVjaG8gImJvbmRvcHRpb25z PVwiJGJvbmRvcHRpb25zXCIiCi0tICAgICAgICBlY2hvICJib25kbXR1PVwiJGJvbmRtdHVcIiIK LS0gICAgfSA+ICIvdG1wL2JvbmQuJHtib25kbmFtZX0uaW5mbyIKLS1kb25lCi1kaWZmIC0tZ2l0 IGEvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdlLnNoIGIvbW9kdWxlcy5k LzM1bmV0d29yay1sZWdhY3kvcGFyc2UtYnJpZGdlLnNoCi1kZWxldGVkIGZpbGUgbW9kZSAxMDA3 NTUKLWluZGV4IGQzMzFmOWQ3Li4wMDAwMDAwMAotLS0tIGEvbW9kdWxlcy5kLzM1bmV0d29yay1s ZWdhY3kvcGFyc2UtYnJpZGdlLnNoCi0rKysgL2Rldi9udWxsCi1AQCAtMSw0OSArMCwwIEBACi0t IyEvYmluL3NoCi0tIwotLSMgRm9ybWF0OgotLSMgICAgICAgYnJpZGdlPTxicmlkZ2VuYW1lPjo8 YnJpZGdlc2xhdmVzPgotLSMKLS0jICAgICAgIDxicmlkZ2VzbGF2ZXM+IGlzIGEgY29tbWEtc2Vw YXJhdGVkIGxpc3Qgb2YgcGh5c2ljYWwgKGV0aGVybmV0KSBpbnRlcmZhY2VzCi0tIyAgICAgICBi cmlkZ2Ugd2l0aG91dCBwYXJhbWV0ZXJzIGFzc3VtZXMgYnJpZGdlPWJyMDpldGgwCi0tIwotLQot LXBhcnNlYnJpZGdlKCkgewotLSAgICBsb2NhbCB2PSIkezF9IjoKLS0gICAgc2V0IC0tCi0tICAg IHdoaWxlIFsgLW4gIiR2IiBdOyBkbwotLSAgICAgICAgc2V0IC0tICIkQCIgIiR7diUlOip9Igot LSAgICAgICAgdj0ke3YjKjp9Ci0tICAgIGRvbmUKLS0gICAgY2FzZSAkIyBpbgotLSAgICAgICAg MCkKLS0gICAgICAgICAgICBicmlkZ2VuYW1lPWJyMAotLSAgICAgICAgICAgIGJyaWRnZXNsYXZl cz0kaWZhY2UKLS0gICAgICAgICAgICA7OwotLSAgICAgICAgMSkgZGllICJicmlkZ2U9IHJlcXVp cmVzIHR3byBwYXJhbWV0ZXJzIiA7OwotLSAgICAgICAgMikKLS0gICAgICAgICAgICBicmlkZ2Vu YW1lPSQxCi0tICAgICAgICAgICAgYnJpZGdlc2xhdmVzPSQoc3RyX3JlcGxhY2UgIiQyIiAiLCIg IiAiKQotLSAgICAgICAgICAgIDs7Ci0tICAgICAgICAqKSBkaWUgImJyaWRnZT0gcmVxdWlyZXMg dHdvIHBhcmFtZXRlcnMiIDs7Ci0tICAgIGVzYWMKLS19Ci0tCi0tIyBQYXJzZSBicmlkZ2UgZm9y IGJyaWRnZW5hbWUgYW5kIGJyaWRnZXNsYXZlcwotLWZvciBicmlkZ2UgaW4gJChnZXRhcmdzIGJy aWRnZT0pOyBkbwotLSAgICB1bnNldCBicmlkZ2VuYW1lCi0tICAgIHVuc2V0IGJyaWRnZXNsYXZl cwotLSAgICBpZmFjZT1ldGgwCi0tICAgICMgUmVhZCBicmlkZ2U9IHBhcmFtZXRlcnMgaWYgdGhl eSBleGlzdAotLSAgICBpZiBbICIkYnJpZGdlIiAhPSAiYnJpZGdlIiBdOyB0aGVuCi0tICAgICAg ICBwYXJzZWJyaWRnZSAiJGJyaWRnZSIKLS0gICAgZmkKLS0gICAgIyBTaW1wbGUgZGVmYXVsdCBi cmlkZ2UKLS0gICAgaWYgWyAteiAiJGJyaWRnZW5hbWUiIF07IHRoZW4KLS0gICAgICAgIGJyaWRn ZW5hbWU9YnIwCi0tICAgICAgICBicmlkZ2VzbGF2ZXM9JGlmYWNlCi0tICAgIGZpCi0tICAgIHsK LS0gICAgICAgIGVjaG8gImJyaWRnZW5hbWU9JGJyaWRnZW5hbWUiCi0tICAgICAgICBlY2hvICJi cmlkZ2VzbGF2ZXM9XCIkYnJpZGdlc2xhdmVzXCIiCi0tICAgIH0gPiAiL3RtcC9icmlkZ2UuJHti cmlkZ2VuYW1lfS5pbmZvIgotLWRvbmUKLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3Jr LWxlZ2FjeS9wYXJzZS1pYmZ0LnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2Ut aWJmdC5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCAxOTM3ZjEzOC4uMDAwMDAw MDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWliZnQuc2gKLSsrKyAv ZGV2L251bGwKLUBAIC0xLDEwICswLDAgQEAKLS0jIS9iaW4vc2gKLS0KLS1jb21tYW5kIC12IGdl dGFyZyA+IC9kZXYvbnVsbCB8fCAuIC9saWIvZHJhY3V0LWxpYi5zaAotLWNvbW1hbmQgLXYgaWJm dF90b19jbWRsaW5lID4gL2Rldi9udWxsIHx8IC4gL2xpYi9uZXQtbGliLnNoCi0tCi0taWYgZ2V0 YXJnYm9vbCAwIHJkLmlzY3NpLmliZnQgLWQgImlwPWliZnQiOyB0aGVuCi0tICAgIG1vZHByb2Jl IC1iIC1xIGlzY3NpX2Jvb3Rfc3lzZnMgMj4gL2Rldi9udWxsCi0tICAgIG1vZHByb2JlIC1iIC1x IGlzY3NpX2liZnQKLS0gICAgaWJmdF90b19jbWRsaW5lCi0tZmkKLWRpZmYgLS1naXQgYS9tb2R1 bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS1pZm5hbWUuc2ggYi9tb2R1bGVzLmQvMzVuZXR3 b3JrLWxlZ2FjeS9wYXJzZS1pZm5hbWUuc2gKLWRlbGV0ZWQgZmlsZSBtb2RlIDEwMDc1NQotaW5k ZXggYmU3YjZhZDYuLjAwMDAwMDAwCi0tLS0gYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9w YXJzZS1pZm5hbWUuc2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDI0ICswLDAgQEAKLS0jIS9iaW4v c2gKLS0jCi0tIyBGb3JtYXQ6Ci0tIyAgICAgICBpZm5hbWU9PGludGVyZmFjZT46PG1hYz4KLS0j Ci0tIyBOb3RlIGxldHRlcnMgaW4gdGhlIG1hY2FkZHJlc3MgbXVzdCBiZSBsb3dlcmNhc2UhCi0t IwotLSMgRXhhbXBsZXM6Ci0tIyBpZm5hbWU9ZXRoMDo0YTozZjo0YzowNDpmODpkNwotLSMKLS0j IE5vdGUgd2hlbiB1c2luZyBpZm5hbWU9IHRvIGdldCBwZXJzaXN0ZW50IGludGVyZmFjZSBuYW1l cywgeW91IG11c3Qgc3BlY2lmeQotLSMgYW4gaWZuYW1lPSBhcmd1bWVudCBmb3IgZWFjaCBpbnRl cmZhY2UgdXNlZCBpbiBhbiBpcD0gb3IgZmNvZT0gYXJndW1lbnQKLS0KLS0jIGNoZWNrIGlmIHRo ZXJlIGFyZSBhbnkgaWZuYW1lIHBhcmFtZXRlcnMKLS1pZiAhIGdldGFyZyBpZm5hbWU9ID4gL2Rl di9udWxsOyB0aGVuCi0tICAgIHJldHVybgotLWZpCi0tCi0tY29tbWFuZCAtdiBwYXJzZV9pZm5h bWVfb3B0cyA+IC9kZXYvbnVsbCB8fCAuIC9saWIvbmV0LWxpYi5zaAotLQotLSMgQ2hlY2sgaWZu YW1lPSBsaW5lcwotLWZvciBwIGluICQoZ2V0YXJncyBpZm5hbWU9KTsgZG8KLS0gICAgcGFyc2Vf aWZuYW1lX29wdHMgIiRwIgotLWRvbmUKLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3Jr LWxlZ2FjeS9wYXJzZS1pcC1vcHRzLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdhY3kvcGFy c2UtaXAtb3B0cy5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCBlZWE3MWU0MC4u MDAwMDAwMDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLWlwLW9wdHMu c2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDE1MSArMCwwIEBACi0tIyEvYmluL3NoCi0tIwotLSMg Rm9ybWF0OgotLSMgICAgICAgaXA9W2RoY3B8b258YW55fHNpbmdsZS1kaGNwXQotLSMKLS0jICAg ICAgIGlwPTxpbnRlcmZhY2U+OltkaGNwfG9ufGFueV1bOls8bXR1Pl1bOjxtYWNhZGRyPl1dCi0t IwotLSMgICAgICAgaXA9PGNsaWVudC1JUC1udW1iZXI+OjxzZXJ2ZXItSVAtbnVtYmVyPjo8Z2F0 ZXdheS1JUC1udW1iZXI+OjxuZXRtYXNrPjo8Y2xpZW50LWhvc3RuYW1lPjo8aW50ZXJmYWNlPjp7 ZGhjcHxvbnxhbnl8bm9uZXxvZmZ9WzpbPG10dT5dWzo8bWFjYWRkcj5dXQotLSMKLS0jIFdoZW4g c3VwcGx5aW5nIG1vcmUgdGhhbiBvbmx5IGlwPSBsaW5lLCA8aW50ZXJmYWNlPiBpcyBtYW5kYXRv cnkgYW5kCi0tIyBib290ZGV2PSBtdXN0IGNvbnRhaW4gdGhlIG5hbWUgb2YgdGhlIHByaW1hcnkg aW50ZXJmYWNlIHRvIHVzZSBmb3IKLS0jIHJvdXRpbmcsZG5zLGRoY3Atb3B0aW9ucyxldGMuCi0t IwotLQotLSMgd2UgcmVhbGx5IG5lZWQgdG8gdXNlIGBleHByIHN1YnN0cmAgd2l0aCBkYXNoCi0t IyBzaGVsbGNoZWNrIGRpc2FibGU9U0MyMDAzIGRpc2FibGU9U0MyMzA4Ci0tCi0tY29tbWFuZCAt diBnZXRhcmcgPiAvZGV2L251bGwgfHwgLiAvbGliL2RyYWN1dC1saWIuc2gKLS0KLS1pZiBbIC1u ICIkbmV0cm9vdCIgXSAmJiBbIC16ICIkKGdldGFyZyBpcD0pIiBdICYmIFsgLXogIiQoZ2V0YXJn IEJPT1RJRj0pIiBdOyB0aGVuCi0tICAgICMgTm8gaXA9IGFyZ3VtZW50KHMpIGZvciBuZXRyb290 IHByb3ZpZGVkLCBkZWZhdWx0aW5nIHRvIERIQ1AKLS0gICAgcmV0dXJuCi0tZmkKLS0KLS0jIENv dW50IGlwPSBsaW5lcyB0byBkZWNpZGUgd2hldGhlciB3ZSBuZWVkIGJvb3RkZXY9IG9yIG5vdAot LWlmIFsgLXogIiRORUVEQk9PVERFViIgXTsgdGhlbgotLSAgICBjb3VudD0wCi0tICAgIGZvciBw IGluICQoZ2V0YXJncyBpcD0pOyBkbwotLSAgICAgICAgY2FzZSAiJHAiIGluCi0tICAgICAgICAg ICAgaWJmdCkKLS0gICAgICAgICAgICAgICAgY29udGludWUKLS0gICAgICAgICAgICAgICAgOzsK LS0gICAgICAgIGVzYWMKLS0gICAgICAgIGNvdW50PSQoKGNvdW50ICsgMSkpCi0tICAgIGRvbmUK LS0gICAgWyAkY291bnQgLWd0IDEgXSAmJiBORUVEQk9PVERFVj0xCi0tZmkKLS11bnNldCBjb3Vu dAotLQotLSMgSWYgbmVlZGVkLCBjaGVjayBpZiBib290ZGV2PSBjb250YWlucyBhbnl0aGluZyB1 c2FibGUKLS1CT09UREVWPSQoZ2V0YXJnIGJvb3RkZXY9KQotLQotLWlmIFsgLW4gIiRORUVEQk9P VERFViIgXSAmJiBnZXRhcmdib29sIDEgcmQubmVlZG5ldDsgdGhlbgotLSAgICAjWyAteiAiJEJP T1RERVYiIF0gJiYgd2FybiAiUGxlYXNlIHN1cHBseSBib290ZGV2IGFyZ3VtZW50IGZvciBtdWx0 aXBsZSBpcD0gbGluZXMiCi0tICAgIGVjaG8gInJkLm5lZWRuZXQ9MSIgPiAvZXRjL2NtZGxpbmUu ZC8yMC1kcmFjdXQtbmVlZG5ldC5jb25mCi0tICAgIGluZm8gIk11bHRpcGxlIGlwPSBhcmd1bWVu dHM6IGFzc3VtaW5nIHJkLm5lZWRuZXQ9MSIKLS1lbHNlCi0tICAgIHVuc2V0IE5FRURCT09UREVW Ci0tZmkKLS0KLS0jIENoZWNrIGlwPSBsaW5lcwotLSMgWFhYIFdvdWxkIGJlIG5pY2UgaWYgd2Ug Y291bGQgZXJyb3JjaGVjayBpcCBhZGRyZXNzZXMgaGVyZSBhcyB3ZWxsCi0tZm9yIHAgaW4gJChn ZXRhcmdzIGlwPSk7IGRvCi0tICAgIGlwX3RvX3ZhciAiJHAiCi0tCi0tICAgICMgbWFrZSBmaXJz dCBkZXZpY2Ugc3BlY2lmaWVkIHRoZSBCT09UREVWCi0tICAgIGlmIFsgLW4gIiRORUVEQk9PVERF ViIgXSAmJiBbIC16ICIkQk9PVERFViIgXSAmJiBbIC1uICIkZGV2IiBdOyB0aGVuCi0tICAgICAg ICBCT09UREVWPSIkZGV2IgotLSAgICAgICAgaW5mbyAiU2V0dGluZyBib290ZGV2IHRvICckQk9P VERFViciCi0tICAgIGZpCi0tCi0tICAgICMgc2tpcCBpYmZ0IHNpbmNlIHdlIGRpZCBpdCBhYm92 ZQotLSAgICBbICIkYXV0b2NvbmYiID0gImliZnQiIF0gJiYgY29udGludWUKLS0KLS0gICAgIyBF bXB0eSBhdXRvY29uZiBkZWZhdWx0cyB0byAnZGhjcCcKLS0gICAgaWYgWyAteiAiJGF1dG9jb25m IiBdOyB0aGVuCi0tICAgICAgICB3YXJuICJFbXB0eSBhdXRvY29uZiB2YWx1ZXMgZGVmYXVsdCB0 byBkaGNwIgotLSAgICAgICAgYXV0b2NvbmY9ImRoY3AiCi0tICAgIGZpCi0tCi0tICAgICMgRXJy b3IgY2hlY2tpbmcgZm9yIGF1dG9jb25mIGluIGNvbWJpbmF0aW9uIHdpdGggb3RoZXIgdmFsdWVz Ci0tICAgIGZvciBhdXRvb3B0IGluICQoc3RyX3JlcGxhY2UgIiRhdXRvY29uZiIgIiwiICIgIik7 IGRvCi0tICAgICAgICBjYXNlICRhdXRvb3B0IGluCi0tICAgICAgICAgICAgZXJyb3IpIGRpZSAi RXJyb3IgcGFyc2luZyBvcHRpb24gJ2lwPSRwJyIgOzsKLS0gICAgICAgICAgICBib290cCB8IHJh cnAgfCBib3RoKSBkaWUgIlNvcnJ5LCBpcD0kYXV0b29wdCBpcyBjdXJyZW50bHkgdW5zdXBwb3J0 ZWQiIDs7Ci0tICAgICAgICAgICAgbm9uZSB8IG9mZikKLS0gICAgICAgICAgICAgICAgWyAteiAi JGlwIiBdIFwKLS0gICAgICAgICAgICAgICAgICAgICYmIGRpZSAiRm9yIGFyZ3VtZW50ICdpcD0k cCdcblZhbHVlICckYXV0b29wdCcgd2l0aG91dCBzdGF0aWMgY29uZmlndXJhdGlvbiBkb2VzIG5v dCBtYWtlIHNlbnNlIgotLSAgICAgICAgICAgICAgICBbIC16ICIkbWFzayIgXSBcCi0tICAgICAg ICAgICAgICAgICAgICAmJiBkaWUgIlNvcnJ5LCBhdXRvbWF0aWMgY2FsY3VsYXRpb24gb2YgbmV0 bWFzayBpcyBub3QgeWV0IHN1cHBvcnRlZCIKLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAg ICAgICBhdXRvNiB8IGxpbms2KSA7OwotLSAgICAgICAgICAgIGVpdGhlcjYpIDs7Ci0tICAgICAg ICAgICAgZGhjcCB8IGRoY3A2IHwgb24gfCBhbnkgfCBzaW5nbGUtZGhjcCkKLS0gICAgICAgICAg ICAgICAgWyAtbiAiJE5FRURCT09UREVWIiBdICYmIFsgLXogIiRkZXYiIF0gXAotLSAgICAgICAg ICAgICAgICAgICAgJiYgZGllICJTb3JyeSwgJ2lwPSRwJyBkb2VzIG5vdCBtYWtlIHNlbnNlIGZv ciBtdWx0aXBsZSBpbnRlcmZhY2UgY29uZmlndXJhdGlvbnMiCi0tICAgICAgICAgICAgICAgIFsg LW4gIiRpcCIgXSBcCi0tICAgICAgICAgICAgICAgICAgICAmJiBkaWUgIkZvciBhcmd1bWVudCAn aXA9JHAnXG5Tb3JyeSwgc2V0dGluZyBjbGllbnQtaXAgZG9lcyBub3QgbWFrZSBzZW5zZSBmb3Ig JyRhdXRvb3B0JyIKLS0gICAgICAgICAgICAgICAgOzsKLS0gICAgICAgICAgICAqKSBkaWUgIkZv ciBhcmd1bWVudCAnaXA9JHAnXG5Tb3JyeSwgdW5rbm93biB2YWx1ZSAnJGF1dG9vcHQnIiA7Owot LSAgICAgICAgZXNhYwotLSAgICBkb25lCi0tCi0tICAgIGlmIFsgLW4gIiRkZXYiIF07IHRoZW4K LS0gICAgICAgICMgV2UgZG9uJ3QgbGlrZSBkdXBsaWNhdGUgZGV2aWNlIGNvbmZpZ3MKLS0gICAg ICAgIGlmIFsgLW4gIiRJRkFDRVMiIF07IHRoZW4KLS0gICAgICAgICAgICBmb3IgaSBpbiAkSUZB Q0VTOyBkbwotLSAgICAgICAgICAgICAgICBbICIkZGV2IiA9ICIkaSIgXSAmJiBkaWUgIkZvciBh cmd1bWVudCAnaXA9JHAnXG5EdXBsaWNhdGlvbiBjb25maWd1cmF0aW9ucyBmb3IgJyRkZXYnIgot LSAgICAgICAgICAgIGRvbmUKLS0gICAgICAgIGZpCi0tICAgICAgICAjIElGQUNFUyBsaXN0IGZv ciBsYXRlciB1c2UKLS0gICAgICAgIElGQUNFUz0iJElGQUNFUyAkZGV2IgotLQotLSAgICAgICAg IyBJbnRlcmZhY2Ugc2hvdWxkIGV4aXN0Ci0tICAgICAgICBpZiBbICEgLWUgIi9zeXMvY2xhc3Mv bmV0LyRkZXYiIF07IHRoZW4KLS0gICAgICAgICAgICB3YXJuICJOZXR3b3JrIGludGVyZmFjZSAn JGRldicgZG9lcyBub3QgZXhpc3QiCi0tICAgICAgICBmaQotLSAgICBmaQotLQotLSAgICAjIERv IHdlIG5lZWQgdG8gY2hlY2sgZm9yIHNwZWNpZmljIG9wdGlvbnM/Ci0tICAgIGlmIFsgLW4gIiRO RUVEREhDUCIgXSB8fCBbIC1uICIkREhDUE9SU0VSVkVSIiBdOyB0aGVuCi0tICAgICAgICAjIENv cnJlY3QgZGV2aWNlPyAoRW1wdHkgaXMgb2sgYXMgd2VsbCkKLS0gICAgICAgIFsgIiRkZXYiID0g IiRCT09UREVWIiBdIHx8IGNvbnRpbnVlCi0tICAgICAgICAjIFNlcnZlci1pcCBpcyB0aGVyZT8K LS0gICAgICAgIFsgLW4gIiRESENQT1JTRVJWRVIiIF0gJiYgWyAtbiAiJHNydiIgXSAmJiBjb250 aW51ZQotLSAgICAgICAgIyBkaGNwPyAoSXQncyBzaW1wbGVyIHRvIGNoZWNrIGZvciBhIHNldCBp cC4gQ2hlY2tzIGFib3ZlIGVuc3VyZSB0aGF0IGlmCi0tICAgICAgICAjIGlwIGlzIHRoZXJlLCB3 ZSdyZSBzdGF0aWMKLS0gICAgICAgIFsgLXogIiRpcCIgXSAmJiBjb250aW51ZQotLSAgICAgICAg IyBOb3QgZ29vZCEKLS0gICAgICAgIGRpZSAiU2VydmVyLWlwIG9yIGRoY3AgZm9yIG5ldGJvb3Qg bmVlZGVkLCBidXQgY3VycmVudCBhcmd1bWVudHMgc2F5IG90aGVyd2lzZSIKLS0gICAgZmkKLS0K LS0gICAgaWYgc3RyX3N0YXJ0cyAiJGRldiIgImVueCIgJiYgWyAkeyNkZXZ9IC1lcSAxNSBdOyB0 aGVuCi0tICAgICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzIwMDMKLS0gICAgICAgIHByaW50 ZiAtLSAiaWZuYW1lPSVzOiVzOiVzOiVzOiVzOiVzOiVzXG4iIFwKLS0gICAgICAgICAgICAiJGRl diIgXAotLSAgICAgICAgICAgICIkKGV4cHIgc3Vic3RyICIkZGV2IiAzIDIpIiBcCi0tICAgICAg ICAgICAgIiQoZXhwciBzdWJzdHIgIiRkZXYiIDUgMikiIFwKLS0gICAgICAgICAgICAiJChleHBy IHN1YnN0ciAiJGRldiIgNyAyKSIgXAotLSAgICAgICAgICAgICIkKGV4cHIgc3Vic3RyICIkZGV2 IiA5IDIpIiBcCi0tICAgICAgICAgICAgIiQoZXhwciBzdWJzdHIgIiRkZXYiIDExIDIpIiBcCi0t ICAgICAgICAgICAgIiQoZXhwciBzdWJzdHIgIiRkZXYiIDEzIDIpIiBcCi0tICAgICAgICAgICAg Pj4gL2V0Yy9jbWRsaW5lLmQvMjAtZW54LmNvbmYKLS0gICAgZmkKLS1kb25lCi0tCi0tIyBwdXQg Qk9PVElGIGluIElGQUNFUyB0byBtYWtlIHN1cmUgaXQgY29tZXMgdXAKLS1pZiBnZXRhcmdib29s IDEgInJkLmJvb3RpZiIgJiYgQk9PVElGPSIkKGdldGFyZyBCT09USUY9KSI7IHRoZW4KLS0gICAg Qk9PVERFVj0kKGZpeF9ib290aWYgIiRCT09USUYiKQotLSAgICBJRkFDRVM9IiRCT09UREVWICRJ RkFDRVMiCi0tZmkKLS0KLS0jIFRoaXMgZW5zdXJlcyB0aGF0IEJPT1RERVYgaXMgYWx3YXlzIGZp cnN0IGluIElGQUNFUwotLWlmIFsgLW4gIiRCT09UREVWIiBdICYmIFsgLW4gIiRJRkFDRVMiIF07 IHRoZW4KLS0gICAgSUZBQ0VTPSIke0lGQUNFUyUiJEJPT1RERVYiKn0gJHtJRkFDRVMjKiIkQk9P VERFViJ9IgotLSAgICBJRkFDRVM9IiRCT09UREVWICRJRkFDRVMiCi0tZmkKLS0KLS0jIFN0b3Jl IEJPT1RERVYgYW5kIElGQUNFUyBmb3IgbGF0ZXIgdXNlCi0tWyAtbiAiJEJPT1RERVYiIF0gJiYg ZWNobyAiJEJPT1RERVYiID4gL3RtcC9uZXQuYm9vdGRldgotLVsgLW4gIiRJRkFDRVMiIF0gJiYg ZWNobyAiJElGQUNFUyIgPiAvdG1wL25ldC5pZmFjZXMKLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQv MzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS10ZWFtLnNoIGIvbW9kdWxlcy5kLzM1bmV0d29yay1sZWdh Y3kvcGFyc2UtdGVhbS5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAwNzU1Ci1pbmRleCA4M2JhZGM5 OS4uMDAwMDAwMDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmstbGVnYWN5L3BhcnNlLXRlYW0u c2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDY2ICswLDAgQEAKLS0jIS9iaW4vc2gKLS0jCi0tIyBG b3JtYXQ6Ci0tIyAgICAgICB0ZWFtPTx0ZWFtbWFzdGVyPjo8dGVhbXNsYXZlcz5bOjx0ZWFtcnVu bmVyPl0KLS0jCi0tIyAgICAgICB0ZWFtc2xhdmVzIGlzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qg b2YgcGh5c2ljYWwgKGV0aGVybmV0KSBpbnRlcmZhY2VzCi0tIyAgICAgICB0ZWFtcnVubmVyIGlz IHRoZSBydW5uZXIgdHlwZSB0byBiZSB1c2VkIChzZWUgdGVhbWQuY29uZig1KSk7IGRlZmF1bHRz IHRvIGFjdGl2ZWJhY2t1cAotLSMKLS0jICAgICAgIHRlYW0gd2l0aG91dCBwYXJhbWV0ZXJzIGFz c3VtZXMgdGVhbT10ZWFtMDpldGgwLGV0aDE6YWN0aXZlYmFja3VwCi0tIwotLQotLXBhcnNldGVh bSgpIHsKLS0gICAgbG9jYWwgdj0iJHsxfSI6Ci0tICAgIHNldCAtLQotLSAgICB3aGlsZSBbIC1u ICIkdiIgXTsgZG8KLS0gICAgICAgIHNldCAtLSAiJEAiICIke3YlJToqfSIKLS0gICAgICAgIHY9 JHt2Iyo6fQotLSAgICBkb25lCi0tCi0tICAgIGNhc2UgJCMgaW4KLS0gICAgICAgIDApCi0tICAg ICAgICAgICAgdGVhbW1hc3Rlcj10ZWFtMAotLSAgICAgICAgICAgIHRlYW1zbGF2ZXM9ImV0aDAg ZXRoMSIKLS0gICAgICAgICAgICB0ZWFtcnVubmVyPSJhY3RpdmViYWNrdXAiCi0tICAgICAgICAg ICAgOzsKLS0gICAgICAgIDEpCi0tICAgICAgICAgICAgdGVhbW1hc3Rlcj0kMQotLSAgICAgICAg ICAgIHRlYW1zbGF2ZXM9ImV0aDAgZXRoMSIKLS0gICAgICAgICAgICB0ZWFtcnVubmVyPSJhY3Rp dmViYWNrdXAiCi0tICAgICAgICAgICAgOzsKLS0gICAgICAgIDIpCi0tICAgICAgICAgICAgdGVh bW1hc3Rlcj0kMQotLSAgICAgICAgICAgIHRlYW1zbGF2ZXM9JChzdHJfcmVwbGFjZSAiJDIiICIs IiAiICIpCi0tICAgICAgICAgICAgdGVhbXJ1bm5lcj0iYWN0aXZlYmFja3VwIgotLSAgICAgICAg ICAgIDs7Ci0tICAgICAgICAzKQotLSAgICAgICAgICAgIHRlYW1tYXN0ZXI9JDEKLS0gICAgICAg ICAgICB0ZWFtc2xhdmVzPSQoc3RyX3JlcGxhY2UgIiQyIiAiLCIgIiAiKQotLSAgICAgICAgICAg IHRlYW1ydW5uZXI9JDMKLS0gICAgICAgICAgICA7OwotLSAgICAgICAgKikgZGllICJ0ZWFtPSBy ZXF1aXJlcyB6ZXJvIHRvIHRocmVlIHBhcmFtZXRlcnMiIDs7Ci0tICAgIGVzYWMKLS0gICAgcmV0 dXJuIDAKLS19Ci0tCi0tZm9yIHRlYW0gaW4gJChnZXRhcmdzIHRlYW0pOyBkbwotLSAgICBbICIk dGVhbSIgPSAidGVhbSIgXSAmJiBjb250aW51ZQotLQotLSAgICB1bnNldCB0ZWFtbWFzdGVyCi0t ICAgIHVuc2V0IHRlYW1zbGF2ZXMKLS0gICAgdW5zZXQgdGVhbXJ1bm5lcgotLQotLSAgICBwYXJz ZXRlYW0gIiR0ZWFtIiB8fCBjb250aW51ZQotLQotLSAgICB7Ci0tICAgICAgICBlY2hvICJ0ZWFt bWFzdGVyPSR0ZWFtbWFzdGVyIgotLSAgICAgICAgZWNobyAidGVhbXNsYXZlcz1cIiR0ZWFtc2xh dmVzXCIiCi0tICAgICAgICBlY2hvICJ0ZWFtcnVubmVyPVwiJHRlYW1ydW5uZXJcIiIKLS0gICAg fSA+IC90bXAvdGVhbS4iJHt0ZWFtbWFzdGVyfSIuaW5mbwotLQotLSAgICBpZiAhIFsgLWUgL2V0 Yy90ZWFtZC8iJHt0ZWFtbWFzdGVyfSIuY29uZiBdOyB0aGVuCi0tICAgICAgICB3YXJuICJUZWFt IG1hc3RlciAkdGVhbW1hc3RlciBzcGVjaWZpZWQsIGJ1dCBubyAvZXRjL3RlYW1kLyR0ZWFtbWFz dGVyLmNvbmYgcHJlc2VudC4gVXNpbmcgJHRlYW1ydW5uZXIuIgotLSAgICAgICAgbWtkaXIgLXAg L2V0Yy90ZWFtZAotLSAgICAgICAgcHJpbnRmIC0tICIlcyIgIntcInJ1bm5lclwiOiB7XCJuYW1l XCI6IFwiJHRlYW1ydW5uZXJcIn0sIFwibGlua193YXRjaFwiOiB7XCJuYW1lXCI6IFwiZXRodG9v bFwifX0iID4gIi90bXAvJHt0ZWFtbWFzdGVyfS5jb25mIgotLSAgICBmaQotLWRvbmUKLWRpZmYg LS1naXQgYS9tb2R1bGVzLmQvMzVuZXR3b3JrLWxlZ2FjeS9wYXJzZS12bGFuLnNoIGIvbW9kdWxl cy5kLzM1bmV0d29yay1sZWdhY3kvcGFyc2Utdmxhbi5zaAotZGVsZXRlZCBmaWxlIG1vZGUgMTAw NzU1Ci1pbmRleCBjMjNmODMzMS4uMDAwMDAwMDAKLS0tLSBhL21vZHVsZXMuZC8zNW5ldHdvcmst bGVnYWN5L3BhcnNlLXZsYW4uc2gKLSsrKyAvZGV2L251bGwKLUBAIC0xLDM3ICswLDAgQEAKLS0j IS9iaW4vc2gKLS0jCi0tIyBGb3JtYXQ6Ci0tIwl2bGFuPTx2bGFubmFtZT46PHBoeWRldmljZT4K LS0jCi0tCi0tcGFyc2V2bGFuKCkgewotLSAgICBsb2NhbCB2PSIkezF9IjoKLS0gICAgc2V0IC0t Ci0tICAgIHdoaWxlIFsgLW4gIiR2IiBdOyBkbwotLSAgICAgICAgc2V0IC0tICIkQCIgIiR7diUl Oip9IgotLSAgICAgICAgdj0ke3YjKjp9Ci0tICAgIGRvbmUKLS0KLS0gICAgdW5zZXQgdmxhbm5h bWUgcGh5ZGV2aWNlCi0tICAgIGNhc2UgJCMgaW4KLS0gICAgICAgIDIpCi0tICAgICAgICAgICAg dmxhbm5hbWU9JDEKLS0gICAgICAgICAgICBwaHlkZXZpY2U9JDIKLS0gICAgICAgICAgICA7Owot LSAgICAgICAgKikgZGllICJ2bGFuPSByZXF1aXJlcyB0d28gcGFyYW1ldGVycyIgOzsKLS0gICAg ZXNhYwotLX0KLS0KLS1mb3IgdmxhbiBpbiAkKGdldGFyZ3Mgdmxhbj0pOyBkbwotLSAgICB1bnNl dCB2bGFubmFtZQotLSAgICB1bnNldCBwaHlkZXZpY2UKLS0gICAgaWYgWyAhICIkdmxhbiIgPSAi dmxhbiIgXTsgdGhlbgotLSAgICAgICAgcGFyc2V2bGFuICIkdmxhbiIKLS0gICAgZmkKLS0KLS0g ICAgZWNobyAicGh5ZGV2aWNlPVwiJHBoeWRldmljZVwiIiA+IC90bXAvdmxhbi4iJHtwaHlkZXZp Y2V9Ii5waHkKLS0gICAgewotLSAgICAgICAgZWNobyAidmxhbm5hbWU9XCIkdmxhbm5hbWVcIiIK LS0gICAgICAgIGVjaG8gInBoeWRldmljZT1cIiRwaHlkZXZpY2VcIiIKLS0gICAgfSA+IC90bXAv dmxhbi4iJHt2bGFubmFtZX0iLiIke3BoeWRldmljZX0iCi0tZG9uZQotLS0gCi0yLjU0LjAKLQoK ZGlmZiAtLWdpdCBhLzAwMTEtZml4LWlzY3NpLXJlcGxhY2UtZWNoby13cml0ZXMtd2l0aC1wcmlu dGYtdG8tcHJldmVudC5wYXRjaCBiLzAwMTEtZml4LWlzY3NpLXJlcGxhY2UtZWNoby13cml0ZXMt d2l0aC1wcmludGYtdG8tcHJldmVudC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggZGRkY2VhZC4uMDAwMDAwMAotLS0gYS8wMDExLWZpeC1pc2NzaS1yZXBsYWNlLWVjaG8td3Jp dGVzLXdpdGgtcHJpbnRmLXRvLXByZXZlbnQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5NyAr MCwwIEBACi1Gcm9tIDEzNzA3NmUyOTE4NTE4ZTAyYTU0ZDg4ZTYwNDU5MzBlZTEwMjQ5ODMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0 LmNvbT4KLURhdGU6IFRodSwgNyBNYXkgMjAyNiAwMDo0NTozMSArMDIwMAotU3ViamVjdDogW1BB VENIIDExLzE0XSBmaXgoaXNjc2kpOiByZXBsYWNlIGBlY2hvYCB3cml0ZXMgd2l0aCBgcHJpbnRm YCB0bwotIHByZXZlbnQgdmFyaWFibGUgaW5qZWN0aW9uCi1NSU1FLVZlcnNpb246IDEuMAotQ29u dGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVu Y29kaW5nOiA4Yml0Ci0KLVVzZSBwcmludGYgd2l0aCBleHBsaWNpdCB2YXJpYWJsZSBlc2NhcGlu ZyBgJXFgIGZvciBzaGVsbCBzY3JpcHRzOgotICAtIG1vdW50LWx1bi5zaCBob29rZGlyIHNjcmlw dCAoaXNjc2lfbHVuIHZhcmlhYmxlKQotICAtIHVkZXYgcnVsZSAoaXNjc2lfbHVuIHNhbml0aXpl ZCB2aWEgdHIgLWQgJyInKQotICAtIGluaXRpYXRvcm5hbWUuaXNjc2kgKHNvdXJjZWQgYXMgc2hl bGwgYXQgaXNjc2lyb290LnNoOjE2MS0xNjMpCi0KLU5vdGU6IGluaXRpYXRvcm5hbWUuaXNjc2kg aXMgYWxzbyByZWFkIGJ5IGlzY3NpZCBhcyBwbGFpbiB0ZXh0IChubwotc2hlbGwgdW5xdW90aW5n KS4gRm9yIHZhbGlkIElRTnMgKFthLXowLTkuOl8tXSksICVxIGlzIGEgbm8tb3AsIHNvCi1pc2Nz aWQgc2VlcyB0aGUgdmFsdWUgdW5jaGFuZ2VkLiBGb3IgbWFsaWNpb3VzIHZhbHVlcyB3aXRoIHNw ZWNpYWwKLWNoYXJhY3RlcnMsICVxIHdvdWxkIHByb2R1Y2Ugc2hlbGwgZXNjYXBpbmcgdGhhdCBp c2NzaWQgcmVhZHMKLWxpdGVyYWxseSDigJQgYnJlYWtpbmcgdGhlIGNvbm5lY3Rpb24gcmF0aGVy IHRoYW4gYWxsb3dpbmcgaW5qZWN0aW9uLgotLS0tCi0gbW9kdWxlcy5kLzc0aXNjc2kvaXNjc2ly b290LnNoICAgICAgIHwgMTAgKysrKystLS0tLQotIG1vZHVsZXMuZC83NGlzY3NpL3BhcnNlLWlz Y3Npcm9vdC5zaCB8ICA0ICsrLS0KLSAyIGZpbGVzIGNoYW5nZWQsIDcgaW5zZXJ0aW9ucygrKSwg NyBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21vZHVsZXMuZC83NGlzY3NpL2lzY3Npcm9v dC5zaCBiL21vZHVsZXMuZC83NGlzY3NpL2lzY3Npcm9vdC5zaAotaW5kZXggNTBiMTAyNTkuLjUw MDMwZTIwIDEwMDc1NQotLS0tIGEvbW9kdWxlcy5kLzc0aXNjc2kvaXNjc2lyb290LnNoCi0rKysg Yi9tb2R1bGVzLmQvNzRpc2NzaS9pc2NzaXJvb3Quc2gKLUBAIC0xNDQsNyArMTQ0LDcgQEAgaGFu ZGxlX25ldHJvb3QoKSB7Ci0gCi0gICAgIGlmIFsgLXogIiRpc2NzaV9pbml0aWF0b3IiIF0gJiYg WyAtZiAvc3lzL2Zpcm13YXJlL2liZnQvaW5pdGlhdG9yL2luaXRpYXRvci1uYW1lIF0gJiYgISBb IC1mIC90bXAvaXNjc2lfc2V0X2luaXRpYXRvciBdOyB0aGVuCi0gICAgICAgICBpc2NzaV9pbml0 aWF0b3I9JCh3aGlsZSByZWFkIC1yIGxpbmUgfHwgWyAtbiAiJGxpbmUiIF07IGRvIGVjaG8gIiRs aW5lIjsgZG9uZSA8IC9zeXMvZmlybXdhcmUvaWJmdC9pbml0aWF0b3IvaW5pdGlhdG9yLW5hbWUp Ci0tICAgICAgICBlY2hvICJJbml0aWF0b3JOYW1lPSRpc2NzaV9pbml0aWF0b3IiID4gL3J1bi9p bml0aWF0b3JuYW1lLmlzY3NpCi0rICAgICAgICBwcmludGYgJ0luaXRpYXRvck5hbWU9JXFcbicg IiRpc2NzaV9pbml0aWF0b3IiID4gL3J1bi9pbml0aWF0b3JuYW1lLmlzY3NpCi0gICAgICAgICBy bSAtZiAvZXRjL2lzY3NpL2luaXRpYXRvcm5hbWUuaXNjc2kKLSAgICAgICAgIG1rZGlyIC1wIC9l dGMvaXNjc2kKLSAgICAgICAgIGxuIC1mcyAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kgL2V0Yy9p c2NzaS9pbml0aWF0b3JuYW1lLmlzY3NpCi1AQCAtMTY1LDcgKzE2NSw3IEBAIGhhbmRsZV9uZXRy b290KCkgewotIAotICAgICBpZiBbIC16ICIkaXNjc2lfaW5pdGlhdG9yIiBdOyB0aGVuCi0gICAg ICAgICBpc2NzaV9pbml0aWF0b3I9JChpc2NzaS1pbmFtZSkKLS0gICAgICAgIGVjaG8gIkluaXRp YXRvck5hbWU9JGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kKLSsg ICAgICAgIHByaW50ZiAnSW5pdGlhdG9yTmFtZT0lcVxuJyAiJGlzY3NpX2luaXRpYXRvciIgPiAv cnVuL2luaXRpYXRvcm5hbWUuaXNjc2kKLSAgICAgICAgIHJtIC1mIC9ldGMvaXNjc2kvaW5pdGlh dG9ybmFtZS5pc2NzaQotICAgICAgICAgbWtkaXIgLXAgL2V0Yy9pc2NzaQotICAgICAgICAgbG4g LWZzIC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaSAvZXRjL2lzY3NpL2luaXRpYXRvcm5hbWUuaXNj c2kKLUBAIC0xODksNyArMTg5LDcgQEAgaGFuZGxlX25ldHJvb3QoKSB7Ci0gICAgICAgICBpc2Nz aV9sdW49MAotICAgICBmaQotIAotLSAgICBlY2hvICJJbml0aWF0b3JOYW1lPSRpc2NzaV9pbml0 aWF0b3IiID4gL3J1bi9pbml0aWF0b3JuYW1lLmlzY3NpCi0rICAgIHByaW50ZiAnSW5pdGlhdG9y TmFtZT0lcVxuJyAiJGlzY3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kK LSAgICAgbG4gLWZzIC9ydW4vaW5pdGlhdG9ybmFtZS5pc2NzaSAvZGV2Ly5pbml0aWF0b3JuYW1l LmlzY3NpCi0gICAgIGlmICEgWyAtZSAvZXRjL2lzY3NpL2luaXRpYXRvcm5hbWUuaXNjc2kgXTsg dGhlbgotICAgICAgICAgbWtkaXIgLXAgL2V0Yy9pc2NzaQotQEAgLTIxMCwxNCArMjEwLDE0IEBA IGhhbmRsZV9uZXRyb290KCkgewotIAotICAgICBpZiBbICIkcm9vdCIgPSAiZGhjcCIgXSB8fCBb ICIkbmV0cm9vdCIgPSAiZGhjcCIgXTsgdGhlbgotICAgICAgICAgIyBpZiByb290IGlzIG5vdCBz cGVjaWZpZWQgdHJ5IHRvIG1vdW50IHRoZSB3aG9sZSBpU0NTSSBMVU4KLS0gICAgICAgIHByaW50 ZiAnU1lNTElOSz09ImRpc2svYnktcGF0aC8qLWlzY3NpLSotJXMiLCBTWU1MSU5LKz0icm9vdCJc bicgIiRpc2NzaV9sdW4iID4+IC9ldGMvdWRldi9ydWxlcy5kLzk5LWlzY3NpLXJvb3QucnVsZXMK LSsgICAgICAgIHByaW50ZiAnU1lNTElOSz09ImRpc2svYnktcGF0aC8qLWlzY3NpLSotJXMiLCBT WU1MSU5LKz0icm9vdCJcbicgIiQocHJpbnRmICclcycgIiRpc2NzaV9sdW4iIHwgdHIgLWQgJyIn KSIgPj4gL2V0Yy91ZGV2L3J1bGVzLmQvOTktaXNjc2ktcm9vdC5ydWxlcwotICAgICAgICAgdWRl dmFkbSBjb250cm9sIC0tcmVsb2FkCi0gICAgICAgICB3cml0ZV9mc190YWIgL2Rldi9yb290Ci0g ICAgICAgICB3YWl0X2Zvcl9kZXYgLW4gL2Rldi9yb290Ci0gCi0gICAgICAgICAjIGluc3RhbGwg bW91bnQgc2NyaXB0Ci0gICAgICAgICBbIC16ICIke0RSQUNVVF9TWVNURU1ELX0iIF0gXAotLSAg ICAgICAgICAgICYmIGVjaG8gImlzY3NpX2x1bj0kaXNjc2lfbHVuIC4gL2Jpbi9tb3VudC1sdW4u c2ggIiA+ICIkaG9va2RpciIvbW91bnQvMDEtJCQtaXNjc2kuc2gKLSsgICAgICAgICAgICAmJiBw cmludGYgJ2lzY3NpX2x1bj0lcSAuIC9iaW4vbW91bnQtbHVuLnNoXG4nICIkaXNjc2lfbHVuIiA+ ICIkaG9va2RpciIvbW91bnQvMDEtJCQtaXNjc2kuc2gKLSAgICAgZmkKLSAKLSAgICAgaWYgc3Ry Z2xvYmluICIkaXNjc2lfdGFyZ2V0X2lwIiAnKjoqOionICYmICEgc3RyZ2xvYmluICIkaXNjc2lf dGFyZ2V0X2lwIiAnWyc7IHRoZW4KLWRpZmYgLS1naXQgYS9tb2R1bGVzLmQvNzRpc2NzaS9wYXJz ZS1pc2NzaXJvb3Quc2ggYi9tb2R1bGVzLmQvNzRpc2NzaS9wYXJzZS1pc2NzaXJvb3Quc2gKLWlu ZGV4IDBiMTJkMzViLi45NTg2MDgwNCAxMDA3NTUKLS0tLSBhL21vZHVsZXMuZC83NGlzY3NpL3Bh cnNlLWlzY3Npcm9vdC5zaAotKysrIGIvbW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNjc2lyb290 LnNoCi1AQCAtMTExLDcgKzExMSw3IEBAIGZpCi0gCi0gaWYgYXJnPSQoZ2V0YXJnIHJkLmlzY3Np LmluaXRpYXRvciAtZCBpc2NzaV9pbml0aWF0b3I9KSAmJiBbIC1uICIkYXJnIiBdICYmICEgWyAt ZiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kgXTsgdGhlbgotICAgICBpc2NzaV9pbml0aWF0b3I9 JGFyZwotLSAgICBlY2hvICJJbml0aWF0b3JOYW1lPSRpc2NzaV9pbml0aWF0b3IiID4gL3J1bi9p bml0aWF0b3JuYW1lLmlzY3NpCi0rICAgIHByaW50ZiAnSW5pdGlhdG9yTmFtZT0lcVxuJyAiJGlz Y3NpX2luaXRpYXRvciIgPiAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kKLSAgICAgbG4gLWZzIC9y dW4vaW5pdGlhdG9ybmFtZS5pc2NzaSAvZGV2Ly5pbml0aWF0b3JuYW1lLmlzY3NpCi0gICAgIHJt IC1mIC9ldGMvaXNjc2kvaW5pdGlhdG9ybmFtZS5pc2NzaQotICAgICBta2RpciAtcCAvZXRjL2lz Y3NpCi1AQCAtMTI3LDcgKzEyNyw3IEBAIGZpCi0gaWYgWyAteiAiJGlzY3NpX2luaXRpYXRvciIg XSAmJiBbIC1mIC9zeXMvZmlybXdhcmUvaWJmdC9pbml0aWF0b3IvaW5pdGlhdG9yLW5hbWUgXSAm JiAhIFsgLWYgL3RtcC9pc2NzaV9zZXRfaW5pdGlhdG9yIF07IHRoZW4KLSAgICAgaXNjc2lfaW5p dGlhdG9yPSQod2hpbGUgcmVhZCAtciBsaW5lIHx8IFsgLW4gIiRsaW5lIiBdOyBkbyBlY2hvICIk bGluZSI7IGRvbmUgPCAvc3lzL2Zpcm13YXJlL2liZnQvaW5pdGlhdG9yL2luaXRpYXRvci1uYW1l KQotICAgICBpZiBbIC1uICIkaXNjc2lfaW5pdGlhdG9yIiBdOyB0aGVuCi0tICAgICAgICBlY2hv ICJJbml0aWF0b3JOYW1lPSRpc2NzaV9pbml0aWF0b3IiID4gL3J1bi9pbml0aWF0b3JuYW1lLmlz Y3NpCi0rICAgICAgICBwcmludGYgJ0luaXRpYXRvck5hbWU9JXFcbicgIiRpc2NzaV9pbml0aWF0 b3IiID4gL3J1bi9pbml0aWF0b3JuYW1lLmlzY3NpCi0gICAgICAgICBybSAtZiAvZXRjL2lzY3Np L2luaXRpYXRvcm5hbWUuaXNjc2kKLSAgICAgICAgIG1rZGlyIC1wIC9ldGMvaXNjc2kKLSAgICAg ICAgIGxuIC1mcyAvcnVuL2luaXRpYXRvcm5hbWUuaXNjc2kgL2V0Yy9pc2NzaS9pbml0aWF0b3Ju YW1lLmlzY3NpCi0tLSAKLTIuNTQuMAotCgpkaWZmIC0tZ2l0IGEvMDAxMS1maXgtbmV0LWxpYi13 YXJuLW9uLXN1c3BpY2lvdXMtc2hlbGwtbWV0YWNoYXJhY3RlcnMtLnBhdGNoIGIvMDAxMS1maXgt bmV0LWxpYi13YXJuLW9uLXN1c3BpY2lvdXMtc2hlbGwtbWV0YWNoYXJhY3RlcnMtLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3NDAwMTYKLS0tIC9kZXYvbnVsbAor KysgYi8wMDExLWZpeC1uZXQtbGliLXdhcm4tb24tc3VzcGljaW91cy1zaGVsbC1tZXRhY2hhcmFj dGVycy0ucGF0Y2gKQEAgLTAsMCArMSw0NiBAQAorRnJvbSA0NGQ5Yjg5MDRhOTczNzMxYzUyOWVj MmMwMTc3M2IzYWE3MDhhY2QwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogUGF2ZWwg VmFsZW5hIDxwdmFsZW5hQHJlZGhhdC5jb20+CitEYXRlOiBUaHUsIDE0IE1heSAyMDI2IDE0OjI1 OjA3ICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMTEvMTJdIGZpeChuZXQtbGliKTogd2FybiBvbiBz dXNwaWNpb3VzIHNoZWxsIG1ldGFjaGFyYWN0ZXJzCisgaW4gaG9zdG5hbWUgZmlsZQorTUlNRS1W ZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOAorQ29u dGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitzZXR1cF9uZXQoKSBzb3VyY2VzIC90bXAv bmV0LiRuZXRpZi5ob3N0bmFtZSBhcyBzaGVsbCwgd2hpY2ggaXMgd3JpdHRlbgorYnkgZGhjbGll bnQtc2NyaXB0LnNoIG9yIGlmdXAuc2guIEFkZCBhIGRlZmVuc2l2ZSBjaGVjayB0aGF0IHdhcm5z IGlmCit0aGUgZmlsZSBjb250YWlucyBzaGVsbCBtZXRhY2hhcmFjdGVycyAoJCwgYCwgOywgJiwg fCwgKCkgdGhhdCBzaG91bGQKK25ldmVyIGFwcGVhciBpbiBhIGxlZ2l0aW1hdGUgaG9zdG5hbWUs IGluZGljYXRpbmcgcG9zc2libGUgREhDUC1iYXNlZAorY29tbWFuZCBpbmplY3Rpb24gYXR0ZW1w dHMuCisKK1RoZSBmaWxlIGlzIHN0aWxsIHNvdXJjZWQgZm9yIGNvbXBhdGliaWxpdHkg4oCUIHRo ZSB3cml0ZXItc2lkZSBmaXgKKyhwcmludGYgJyVxJykgYWxyZWFkeSBwcmV2ZW50cyBleGVjdXRp b24gb2YgaW5qZWN0ZWQgY29udGVudC4KKworQ28tQXV0aG9yZWQtQnk6IENsYXVkZSBPcHVzIDQu NiA8bm9yZXBseUBhbnRocm9waWMuY29tPgorLS0tCisgbW9kdWxlcy5kLzQ1bmV0LWxpYi9uZXQt bGliLnNoIHwgOSArKysrKysrLS0KKyAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvbW9kdWxlcy5kLzQ1bmV0LWxpYi9uZXQtbGli LnNoIGIvbW9kdWxlcy5kLzQ1bmV0LWxpYi9uZXQtbGliLnNoCitpbmRleCBhMGI4NzQwOC4uYTlj NWNkM2UgMTAwNzU1CistLS0gYS9tb2R1bGVzLmQvNDVuZXQtbGliL25ldC1saWIuc2gKKysrKyBi L21vZHVsZXMuZC80NW5ldC1saWIvbmV0LWxpYi5zaAorQEAgLTEzMSw4ICsxMzEsMTMgQEAgc2V0 dXBfbmV0KCkgeworICAgICBbIC1lICIvdG1wL25ldC5pZmFjZXMiIF0gJiYgcmVhZCAtciBJRkFD RVMgPCAvdG1wL25ldC5pZmFjZXMKKyAgICAgWyAteiAiJElGQUNFUyIgXSAmJiBJRkFDRVM9IiRu ZXRpZiIKKyAgICAgIyBydW4gdGhlIHNjcmlwdHMgd3JpdHRlbiBieSBpZnVwCistICAgICMgc2hl bGxjaGVjayBkaXNhYmxlPVNDMTA5MAorLSAgICBbIC1lIC90bXAvbmV0LiIkbmV0aWYiLmhvc3Ru YW1lIF0gJiYgLiAvdG1wL25ldC4iJG5ldGlmIi5ob3N0bmFtZQorKyAgICBpZiBbIC1lIC90bXAv bmV0LiIkbmV0aWYiLmhvc3RuYW1lIF07IHRoZW4KKysgICAgICAgIGlmIGdyZXAgLXFFICdbJGA7 JnwoXScgL3RtcC9uZXQuIiRuZXRpZiIuaG9zdG5hbWUgMj4gL2Rldi9udWxsOyB0aGVuCisrICAg ICAgICAgICAgd2FybiAic2V0dXBfbmV0ICRuZXRpZjogL3RtcC9uZXQuJG5ldGlmLmhvc3RuYW1l IGNvbnRhaW5zIHN1c3BpY2lvdXMgc2hlbGwgbWV0YWNoYXJhY3RlcnMiCisrICAgICAgICBmaQor KyAgICAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9U0MxMDkwCisrICAgICAgICAuIC90bXAvbmV0 LiIkbmV0aWYiLmhvc3RuYW1lCisrICAgIGZpCisgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVND MTA5MAorICAgICBbIC1lIC90bXAvbmV0LiIkbmV0aWYiLm92ZXJyaWRlIF0gJiYgLiAvdG1wL25l dC4iJG5ldGlmIi5vdmVycmlkZQorICAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKKy0t IAorMi41NS4wCisKCmRpZmYgLS1naXQgYS8wMDEyLWZpeC1iYXNlLWVzY2FwZS1hcmd1bWVudHMt aW4taW5pdHF1ZXVlLWhvb2stc2NyaXB0LWcucGF0Y2ggYi8wMDEyLWZpeC1iYXNlLWVzY2FwZS1h cmd1bWVudHMtaW4taW5pdHF1ZXVlLWhvb2stc2NyaXB0LWcucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IGIzNWYyNGMuLjAwMDAwMDAKLS0tIGEvMDAxMi1maXgtYmFzZS1lc2Nh cGUtYXJndW1lbnRzLWluLWluaXRxdWV1ZS1ob29rLXNjcmlwdC1nLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsNzEgKzAsMCBAQAotRnJvbSBkNjhkZjc2ZWY5NDM2MjI3MGJiNWZmYzc3ZWI1ZjRl ZDQ1MzYzNDk2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogUGF2ZWwgVmFsZW5hIDxw dmFsZW5hQHJlZGhhdC5jb20+Ci1EYXRlOiBUaHUsIDE0IE1heSAyMDI2IDE0OjIwOjE3ICswMjAw Ci1TdWJqZWN0OiBbUEFUQ0ggMTIvMTRdIGZpeChiYXNlKTogZXNjYXBlIGFyZ3VtZW50cyBpbiBp bml0cXVldWUgaG9vayBzY3JpcHQKLSBnZW5lcmF0aW9uCi1NSU1FLVZlcnNpb246IDEuMAotQ29u dGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04Ci1Db250ZW50LVRyYW5zZmVyLUVu Y29kaW5nOiA4Yml0Ci0KLWluaXRxdWV1ZS5zaCB3cml0ZXMgYXJndW1lbnRzIGRpcmVjdGx5IGlu dG8gZ2VuZXJhdGVkIGhvb2sgc2NyaXB0cwotdmlhIGBlY2hvICIkZXhlIiAiJEAiYC4gVGhlc2Ug c2NyaXB0cyBhcmUgbGF0ZXIgc291cmNlZCBieQotZHJhY3V0LWluaXRxdWV1ZS5zaCwgc28gc2hl bGwgbWV0YWNoYXJhY3RlcnMgaW4gYXJndW1lbnRzIChlLmcuCi1ESENQLWRlcml2ZWQgJG5ldHJv b3QgcGFzc2VkIGZyb20gcGFyc2UtaXNjc2lyb290LnNoKSBleGVjdXRlIGFzCi1yb290IGluIGlu aXRyYW1mcy4KLQotUmVwbGFjZSBgZWNob2Agd2l0aCBgcHJpbnRmICclcSdgIHRvIHNoZWxsLWVz Y2FwZSBhbGwgYXJndW1lbnRzCi1iZWZvcmUgd3JpdGluZyB0aGVtIGludG8gdGhlIGhvb2sgc2Ny aXB0LCBwcmV2ZW50aW5nIGNvbW1hbmQKLWluamVjdGlvbiB2aWEgREhDUC1jb250cm9sbGVkIG5l dHJvb3QgdmFsdWVzLgotCi1SZW1vdmUgdGhlIGZyYWdpbGUgZW1iZWRkZWQgc2luZ2xlLXF1b3Rl IHdyYXBwaW5nICgiJyR2YXInIikgZnJvbQotcGFyc2UtaXNjc2lyb290LnNoIGNhbGwgc2l0ZXMg KGxpbmVzIDkwLCAxMDIpIOKAlCB0aG9zZSByZWxpZWQgb24KLWVjaG8gd3JpdGluZyBxdW90ZXMg dmVyYmF0aW0gZm9yIHRoZSBzaGVsbCB0byBzdHJpcCB3aGVuIHNvdXJjaW5nLgotV2l0aCBwcmlu dGYgJyVxJywgaW5pdHF1ZXVlIG5vdyBoYW5kbGVzIGVzY2FwaW5nIGNlbnRyYWxseSwgc28gdGhl Ci1tYW51YWwgd3JhcHBpbmcgaXMgbm8gbG9uZ2VyIG5lZWRlZCBhbmQgd291bGQgY2F1c2UgbGl0 ZXJhbCBxdW90ZQotY2hhcmFjdGVycyB0byBsZWFrIGludG8gaXNjc2lyb290IGFyZ3VtZW50cy4K LQotQ28tQXV0aG9yZWQtQnk6IENsYXVkZSBPcHVzIDQuNiA8bm9yZXBseUBhbnRocm9waWMuY29t PgotLS0tCi0gbW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNjc2lyb290LnNoIHwgNCArKy0tCi0g bW9kdWxlcy5kLzc3aW5pdHF1ZXVlL2luaXRxdWV1ZS5zaCAgIHwgMyArKy0KLSAyIGZpbGVzIGNo YW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21v ZHVsZXMuZC83NGlzY3NpL3BhcnNlLWlzY3Npcm9vdC5zaCBiL21vZHVsZXMuZC83NGlzY3NpL3Bh cnNlLWlzY3Npcm9vdC5zaAotaW5kZXggOTU4NjA4MDQuLmI4N2YxOWExIDEwMDc1NQotLS0tIGEv bW9kdWxlcy5kLzc0aXNjc2kvcGFyc2UtaXNjc2lyb290LnNoCi0rKysgYi9tb2R1bGVzLmQvNzRp c2NzaS9wYXJzZS1pc2NzaXJvb3Quc2gKLUBAIC04OSw3ICs4OSw3IEBAIGlmIFsgLW4gIiRpc2Nz aV9maXJtd2FyZSIgXTsgdGhlbgotICAgICBlY2hvICIke0RSQUNVVF9TWVNURU1EK3N5c3RlbWN0 bCBpcy1hY3RpdmUgaW5pdHJkLXJvb3QtZGV2aWNlLnRhcmdldCB8fCB9WyAtZiAnL3RtcC9pc2Nz aXN0YXJ0ZWQtZmlybXdhcmUnIF0iID4gIiRob29rZGlyIi9pbml0cXVldWUvZmluaXNoZWQvaXNj c2lfc3RhcnRlZC5zaAotICAgICAvc2Jpbi9pbml0cXVldWUgLS11bmlxdWUgLS1vbmxpbmUgL3Ni aW4vaXNjc2lyb290IG9ubGluZSAiaXNjc2k6IiAiJE5FV1JPT1QiCi0gICAgIC9zYmluL2luaXRx dWV1ZSAtLXVuaXF1ZSAtLW9uZXRpbWUgLS10aW1lb3V0IC9zYmluL2lzY3Npcm9vdCB0aW1lb3V0 ICJpc2NzaToiICIkTkVXUk9PVCIKLS0gICAgL3NiaW4vaW5pdHF1ZXVlIC0tdW5pcXVlIC0tb25l dGltZSAtLXNldHRsZWQgL3NiaW4vaXNjc2lyb290IG9ubGluZSAiaXNjc2k6IiAiJyRORVdST09U JyIKLSsgICAgL3NiaW4vaW5pdHF1ZXVlIC0tdW5pcXVlIC0tb25ldGltZSAtLXNldHRsZWQgL3Ni aW4vaXNjc2lyb290IG9ubGluZSAiaXNjc2k6IiAiJE5FV1JPT1QiCi0gZmkKLSAKLSAjIElTQ1NJ IGFjdHVhbGx5IHN1cHBvcnRlZD8KLUBAIC0xMDUsNyArMTA1LDcgQEAgbW9kcHJvYmUgLWIgLXEg YmUyaXNjc2kKLSAKLSBpZiBbIC1uICIkbmV0cm9vdCIgXSAmJiBbICIkcm9vdCIgIT0gIi9kZXYv cm9vdCIgXSAmJiBbICIkcm9vdCIgIT0gImRoY3AiIF07IHRoZW4KLSAgICAgaWYgISBnZXRhcmdi b29sIDEgcmQubmVlZG5ldCA+IC9kZXYvbnVsbCB8fCAhIGdldGFyZyAiaXA9IjsgdGhlbgotLSAg ICAgICAgL3NiaW4vaW5pdHF1ZXVlIC0tdW5pcXVlIC0tb25ldGltZSAtLXNldHRsZWQgL3NiaW4v aXNjc2lyb290IGR1bW15ICInJG5ldHJvb3QnIiAiJyRORVdST09UJyIKLSsgICAgICAgIC9zYmlu L2luaXRxdWV1ZSAtLXVuaXF1ZSAtLW9uZXRpbWUgLS1zZXR0bGVkIC9zYmluL2lzY3Npcm9vdCBk dW1teSAiJG5ldHJvb3QiICIkTkVXUk9PVCIKLSAgICAgZmkKLSBmaQotIAotZGlmZiAtLWdpdCBh L21vZHVsZXMuZC83N2luaXRxdWV1ZS9pbml0cXVldWUuc2ggYi9tb2R1bGVzLmQvNzdpbml0cXVl dWUvaW5pdHF1ZXVlLnNoCi1pbmRleCA0NmEwMGQyYS4uMWNhYTUyNzMgMTAwNzU1Ci0tLS0gYS9t b2R1bGVzLmQvNzdpbml0cXVldWUvaW5pdHF1ZXVlLnNoCi0rKysgYi9tb2R1bGVzLmQvNzdpbml0 cXVldWUvaW5pdHF1ZXVlLnNoCi1AQCAtNjQsNyArNjQsOCBAQCBmaQotICAgICAjIHNoZWxsY2hl Y2sgZGlzYWJsZT1TQzIwMTYKLSAgICAgWyAtbiAiJG9uZXRpbWUiIF0gJiYgZWNobyAnWyAtZSAi JGpvYiIgXSAmJiBybSAtZiAtLSAiJGpvYiInCi0gICAgIFsgLW4gIiRlbnYiIF0gJiYgZWNobyAi JGVudiIKLS0gICAgZWNobyAiJGV4ZSIgIiRAIgotKyAgICBwcmludGYgJyVxICcgIiRleGUiICIk QCIKLSsgICAgcHJpbnRmICdcbicKLSB9ID4gIi90bXAvJCQtJHtqb2J9LnNoIgotIAotIG12IC1m ICIvdG1wLyQkLSR7am9ifS5zaCIgIiRob29rZGlyL2luaXRxdWV1ZSR7cW5hbWV9LyR7am9ifS5z aCIKLS0tIAotMi41NC4wCi0KCmRpZmYgLS1naXQgYS8wMDEyLWZpeC1zeXN0ZW1kLW5ldHdvcmtk LWVzY2FwZS1ESENQLWxlYXNlLXZhbHVlcy1pbi1kaGMucGF0Y2ggYi8wMDEyLWZpeC1zeXN0ZW1k LW5ldHdvcmtkLWVzY2FwZS1ESENQLWxlYXNlLXZhbHVlcy1pbi1kaGMucGF0Y2gKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMmE5OTZjYQotLS0gL2Rldi9udWxsCisrKyBiLzAw MTItZml4LXN5c3RlbWQtbmV0d29ya2QtZXNjYXBlLURIQ1AtbGVhc2UtdmFsdWVzLWluLWRoYy5w YXRjaApAQCAtMCwwICsxLDQ2IEBACitGcm9tIGYxMTIwYzlkY2E2ODQ1NDRkM2U0Yjk2MzRiNzMw YWU1NDI5ZGE1YzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBQYXZlbCBWYWxlbmEg PHB2YWxlbmFAcmVkaGF0LmNvbT4KK0RhdGU6IFRodSwgMTQgTWF5IDIwMjYgMTY6MDg6MDAgKzAy MDAKK1N1YmplY3Q6IFtQQVRDSCAxMi8xMl0gZml4KHN5c3RlbWQtbmV0d29ya2QpOiBlc2NhcGUg REhDUCBsZWFzZSB2YWx1ZXMgaW4KKyBkaGNwb3B0cyBnZW5lcmF0aW9uCisKK25ldHdvcmtkLXJ1 bi5zaCBjb252ZXJ0cyBESENQIGxlYXNlIHZhbHVlcyAoUk9PVF9QQVRILCBORVhUX1NFUlZFUikK K2ludG8gc2hlbGwgdmFyaWFibGUgYXNzaWdubWVudHMgd3JpdHRlbiB0byAvdG1wL2RoY2xpZW50 LjxpZm5hbWU+LmRoY3BvcHRzLAord2hpY2ggaXMgbGF0ZXIgc291cmNlZCBieSBuZXRyb290LnNo LCBuZXQtbGliLnNoLCBhbmQgbmZzLWxpYi5zaC4gVGhlCitwcmV2aW91cyBzZWQtYmFzZWQgcGlw ZWxpbmUgd3JhcHBlZCB2YWx1ZXMgaW4gc2luZ2xlIHF1b3RlcyB3aXRob3V0Citlc2NhcGluZyBl bWJlZGRlZCBzaW5nbGUgcXVvdGVzLCBhbGxvd2luZyBhIHJvZ3VlIERIQ1Agc2VydmVyIHRvIGlu amVjdAorYXJiaXRyYXJ5IHNoZWxsIGNvbW1hbmRzIHZpYSBhIGNyYWZ0ZWQgUk9PVF9QQVRIIG9y IE5FWFRfU0VSVkVSIHZhbHVlLgorCitSZXBsYWNlIHRoZSBncmVwfHNlZCBwaXBlbGluZSB3aXRo IGEgd2hpbGUtcmVhZCBsb29wIHRoYXQgdXNlcworcHJpbnRmICclcScgdG8gc2hlbGwtZXNjYXBl IHZhbHVlcyBiZWZvcmUgd3JpdGluZywgY29uc2lzdGVudCB3aXRoIGhvdwordGhlIE5ldHdvcmtN YW5hZ2VyIGVxdWl2YWxlbnQgKG5tLXJ1bi5zaCkgYWxyZWFkeSBoYW5kbGVzIHRoaXMuCisKK0Nv LUF1dGhvcmVkLUJ5OiBDbGF1ZGUgT3B1cyA0LjYgPG5vcmVwbHlAYW50aHJvcGljLmNvbT4KKy0t LQorIG1vZHVsZXMuZC8xMXN5c3RlbWQtbmV0d29ya2QvbmV0d29ya2QtcnVuLnNoIHwgMTAgKysr KysrLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0p CisKK2RpZmYgLS1naXQgYS9tb2R1bGVzLmQvMTFzeXN0ZW1kLW5ldHdvcmtkL25ldHdvcmtkLXJ1 bi5zaCBiL21vZHVsZXMuZC8xMXN5c3RlbWQtbmV0d29ya2QvbmV0d29ya2QtcnVuLnNoCitpbmRl eCBiMTRhNDNmNC4uZDRhOTRlMTkgMTAwNzU1CistLS0gYS9tb2R1bGVzLmQvMTFzeXN0ZW1kLW5l dHdvcmtkL25ldHdvcmtkLXJ1bi5zaAorKysrIGIvbW9kdWxlcy5kLzExc3lzdGVtZC1uZXR3b3Jr ZC9uZXR3b3JrZC1ydW4uc2gKK0BAIC0xMiwxMCArMTIsMTIgQEAgZm9yIGlmcGF0aCBpbiAvc3lz L2NsYXNzL25ldC8qOyBkbworICAgICAgICAgbGVhc2VzX2ZpbGU9Ii9ydW4vc3lzdGVtZC9uZXRp Zi9sZWFzZXMvJChjYXQgIiRpZnBhdGgiL2lmaW5kZXgpIgorICAgICAgICAgZGhjcG9wdHNfZmls ZT0iL3RtcC9kaGNsaWVudC4ke2lmbmFtZX0uZGhjcG9wdHMiCisgICAgICAgICBpZiBbIC1yICIk bGVhc2VzX2ZpbGUiIF07IHRoZW4KKy0gICAgICAgICAgICBncmVwIC1FICJeKE5FWFRfU0VSVkVS fFJPT1RfUEFUSCk9IiAiJGxlYXNlc19maWxlIiBcCistICAgICAgICAgICAgICAgIHwgc2VkIC1l ICJzL05FWFRfU0VSVkVSPS9uZXdfbmV4dF9zZXJ2ZXI9Jy8iIFwKKy0gICAgICAgICAgICAgICAg ICAgIC1lICJzL1JPT1RfUEFUSD0vbmV3X3Jvb3RfcGF0aD0nLyIgXAorLSAgICAgICAgICAgICAg ICAgICAgLWUgInMvJC8nLyIgPiAiJGRoY3BvcHRzX2ZpbGUiIHx8IHRydWUKKysgICAgICAgICAg ICB3aGlsZSBJRlM9Jz0nIHJlYWQgLXIga2V5IHZhbDsgZG8KKysgICAgICAgICAgICAgICAgY2Fz ZSAiJGtleSIgaW4KKysgICAgICAgICAgICAgICAgICAgIE5FWFRfU0VSVkVSKSBwcmludGYgJ25l d19uZXh0X3NlcnZlcj0lcVxuJyAiJHZhbCIgOzsKKysgICAgICAgICAgICAgICAgICAgIFJPT1Rf UEFUSCkgcHJpbnRmICduZXdfcm9vdF9wYXRoPSVxXG4nICIkdmFsIiA7OworKyAgICAgICAgICAg ICAgICBlc2FjCisrICAgICAgICAgICAgZG9uZSA8ICIkbGVhc2VzX2ZpbGUiID4gIiRkaGNwb3B0 c19maWxlIgorICAgICAgICAgZmkKKyAKKyAgICAgICAgIHNvdXJjZV9ob29rIGluaXRxdWV1ZS9v bmxpbmUgIiRpZm5hbWUiCistLSAKKzIuNTUuMAorCgpkaWZmIC0tZ2l0IGEvMDAxMy1maXgtbmV0 LWxpYi13YXJuLW9uLXN1c3BpY2lvdXMtc2hlbGwtbWV0YWNoYXJhY3RlcnMtLnBhdGNoIGIvMDAx My1maXgtbmV0LWxpYi13YXJuLW9uLXN1c3BpY2lvdXMtc2hlbGwtbWV0YWNoYXJhY3RlcnMtLnBh dGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxMmI2OGQ0Li4wMDAwMDAwCi0tLSBh LzAwMTMtZml4LW5ldC1saWItd2Fybi1vbi1zdXNwaWNpb3VzLXNoZWxsLW1ldGFjaGFyYWN0ZXJz LS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLUZyb20gMTExMTM4YzQyNDEz NDNiODczZTQyZGMxMDg3MThlMWVmNjJkMzk4YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZy b206IFBhdmVsIFZhbGVuYSA8cHZhbGVuYUByZWRoYXQuY29tPgotRGF0ZTogVGh1LCAxNCBNYXkg MjAyNiAxNDoyNTowNyArMDIwMAotU3ViamVjdDogW1BBVENIIDEzLzE0XSBmaXgobmV0LWxpYik6 IHdhcm4gb24gc3VzcGljaW91cyBzaGVsbCBtZXRhY2hhcmFjdGVycwotIGluIGhvc3RuYW1lIGZp bGUKLU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9 VVRGLTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotc2V0dXBfbmV0KCkgc291 cmNlcyAvdG1wL25ldC4kbmV0aWYuaG9zdG5hbWUgYXMgc2hlbGwsIHdoaWNoIGlzIHdyaXR0ZW4K LWJ5IGRoY2xpZW50LXNjcmlwdC5zaCBvciBpZnVwLnNoLiBBZGQgYSBkZWZlbnNpdmUgY2hlY2sg dGhhdCB3YXJucyBpZgotdGhlIGZpbGUgY29udGFpbnMgc2hlbGwgbWV0YWNoYXJhY3RlcnMgKCQs IGAsIDssICYsIHwsICgpIHRoYXQgc2hvdWxkCi1uZXZlciBhcHBlYXIgaW4gYSBsZWdpdGltYXRl IGhvc3RuYW1lLCBpbmRpY2F0aW5nIHBvc3NpYmxlIERIQ1AtYmFzZWQKLWNvbW1hbmQgaW5qZWN0 aW9uIGF0dGVtcHRzLgotCi1UaGUgZmlsZSBpcyBzdGlsbCBzb3VyY2VkIGZvciBjb21wYXRpYmls aXR5IOKAlCB0aGUgd3JpdGVyLXNpZGUgZml4Ci0ocHJpbnRmICclcScpIGFscmVhZHkgcHJldmVu dHMgZXhlY3V0aW9uIG9mIGluamVjdGVkIGNvbnRlbnQuCi0KLUNvLUF1dGhvcmVkLUJ5OiBDbGF1 ZGUgT3B1cyA0LjYgPG5vcmVwbHlAYW50aHJvcGljLmNvbT4KLS0tLQotIG1vZHVsZXMuZC80NW5l dC1saWIvbmV0LWxpYi5zaCB8IDkgKysrKysrKy0tCi0gMSBmaWxlIGNoYW5nZWQsIDcgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21vZHVsZXMuZC80NW5ldC1s aWIvbmV0LWxpYi5zaCBiL21vZHVsZXMuZC80NW5ldC1saWIvbmV0LWxpYi5zaAotaW5kZXggYTBi ODc0MDguLmE5YzVjZDNlIDEwMDc1NQotLS0tIGEvbW9kdWxlcy5kLzQ1bmV0LWxpYi9uZXQtbGli LnNoCi0rKysgYi9tb2R1bGVzLmQvNDVuZXQtbGliL25ldC1saWIuc2gKLUBAIC0xMzEsOCArMTMx LDEzIEBAIHNldHVwX25ldCgpIHsKLSAgICAgWyAtZSAiL3RtcC9uZXQuaWZhY2VzIiBdICYmIHJl YWQgLXIgSUZBQ0VTIDwgL3RtcC9uZXQuaWZhY2VzCi0gICAgIFsgLXogIiRJRkFDRVMiIF0gJiYg SUZBQ0VTPSIkbmV0aWYiCi0gICAgICMgcnVuIHRoZSBzY3JpcHRzIHdyaXR0ZW4gYnkgaWZ1cAot LSAgICAjIHNoZWxsY2hlY2sgZGlzYWJsZT1TQzEwOTAKLS0gICAgWyAtZSAvdG1wL25ldC4iJG5l dGlmIi5ob3N0bmFtZSBdICYmIC4gL3RtcC9uZXQuIiRuZXRpZiIuaG9zdG5hbWUKLSsgICAgaWYg WyAtZSAvdG1wL25ldC4iJG5ldGlmIi5ob3N0bmFtZSBdOyB0aGVuCi0rICAgICAgICBpZiBncmVw IC1xRSAnWyRgOyZ8KF0nIC90bXAvbmV0LiIkbmV0aWYiLmhvc3RuYW1lIDI+IC9kZXYvbnVsbDsg dGhlbgotKyAgICAgICAgICAgIHdhcm4gInNldHVwX25ldCAkbmV0aWY6IC90bXAvbmV0LiRuZXRp Zi5ob3N0bmFtZSBjb250YWlucyBzdXNwaWNpb3VzIHNoZWxsIG1ldGFjaGFyYWN0ZXJzIgotKyAg ICAgICAgZmkKLSsgICAgICAgICMgc2hlbGxjaGVjayBkaXNhYmxlPVNDMTA5MAotKyAgICAgICAg LiAvdG1wL25ldC4iJG5ldGlmIi5ob3N0bmFtZQotKyAgICBmaQotICAgICAjIHNoZWxsY2hlY2sg ZGlzYWJsZT1TQzEwOTAKLSAgICAgWyAtZSAvdG1wL25ldC4iJG5ldGlmIi5vdmVycmlkZSBdICYm IC4gL3RtcC9uZXQuIiRuZXRpZiIub3ZlcnJpZGUKLSAgICAgIyBzaGVsbGNoZWNrIGRpc2FibGU9 U0MxMDkwCi0tLSAKLTIuNTQuMAotCgpkaWZmIC0tZ2l0IGEvMDAxNC1maXgtc3lzdGVtZC1uZXR3 b3JrZC1lc2NhcGUtREhDUC1sZWFzZS12YWx1ZXMtaW4tZGhjLnBhdGNoIGIvMDAxNC1maXgtc3lz dGVtZC1uZXR3b3JrZC1lc2NhcGUtREhDUC1sZWFzZS12YWx1ZXMtaW4tZGhjLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA1NjJkYjYxLi4wMDAwMDAwCi0tLSBhLzAwMTQtZml4 LXN5c3RlbWQtbmV0d29ya2QtZXNjYXBlLURIQ1AtbGVhc2UtdmFsdWVzLWluLWRoYy5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDQ2ICswLDAgQEAKLUZyb20gMjRkN2UyMDVmNzU0MjM2YWNhZTI1 NDk4NzgyYjhhZjk0M2M5YjI3MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IFBhdmVs IFZhbGVuYSA8cHZhbGVuYUByZWRoYXQuY29tPgotRGF0ZTogVGh1LCAxNCBNYXkgMjAyNiAxNjow ODowMCArMDIwMAotU3ViamVjdDogW1BBVENIIDE0LzE0XSBmaXgoc3lzdGVtZC1uZXR3b3JrZCk6 IGVzY2FwZSBESENQIGxlYXNlIHZhbHVlcyBpbgotIGRoY3BvcHRzIGdlbmVyYXRpb24KLQotbmV0 d29ya2QtcnVuLnNoIGNvbnZlcnRzIERIQ1AgbGVhc2UgdmFsdWVzIChST09UX1BBVEgsIE5FWFRf U0VSVkVSKQotaW50byBzaGVsbCB2YXJpYWJsZSBhc3NpZ25tZW50cyB3cml0dGVuIHRvIC90bXAv ZGhjbGllbnQuPGlmbmFtZT4uZGhjcG9wdHMsCi13aGljaCBpcyBsYXRlciBzb3VyY2VkIGJ5IG5l dHJvb3Quc2gsIG5ldC1saWIuc2gsIGFuZCBuZnMtbGliLnNoLiBUaGUKLXByZXZpb3VzIHNlZC1i YXNlZCBwaXBlbGluZSB3cmFwcGVkIHZhbHVlcyBpbiBzaW5nbGUgcXVvdGVzIHdpdGhvdXQKLWVz Y2FwaW5nIGVtYmVkZGVkIHNpbmdsZSBxdW90ZXMsIGFsbG93aW5nIGEgcm9ndWUgREhDUCBzZXJ2 ZXIgdG8gaW5qZWN0Ci1hcmJpdHJhcnkgc2hlbGwgY29tbWFuZHMgdmlhIGEgY3JhZnRlZCBST09U X1BBVEggb3IgTkVYVF9TRVJWRVIgdmFsdWUuCi0KLVJlcGxhY2UgdGhlIGdyZXB8c2VkIHBpcGVs aW5lIHdpdGggYSB3aGlsZS1yZWFkIGxvb3AgdGhhdCB1c2VzCi1wcmludGYgJyVxJyB0byBzaGVs bC1lc2NhcGUgdmFsdWVzIGJlZm9yZSB3cml0aW5nLCBjb25zaXN0ZW50IHdpdGggaG93Ci10aGUg TmV0d29ya01hbmFnZXIgZXF1aXZhbGVudCAobm0tcnVuLnNoKSBhbHJlYWR5IGhhbmRsZXMgdGhp cy4KLQotQ28tQXV0aG9yZWQtQnk6IENsYXVkZSBPcHVzIDQuNiA8bm9yZXBseUBhbnRocm9waWMu Y29tPgotLS0tCi0gbW9kdWxlcy5kLzExc3lzdGVtZC1uZXR3b3JrZC9uZXR3b3JrZC1ydW4uc2gg fCAxMCArKysrKystLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL21vZHVsZXMuZC8xMXN5c3RlbWQtbmV0d29ya2QvbmV0 d29ya2QtcnVuLnNoIGIvbW9kdWxlcy5kLzExc3lzdGVtZC1uZXR3b3JrZC9uZXR3b3JrZC1ydW4u c2gKLWluZGV4IGIxNGE0M2Y0Li5kNGE5NGUxOSAxMDA3NTUKLS0tLSBhL21vZHVsZXMuZC8xMXN5 c3RlbWQtbmV0d29ya2QvbmV0d29ya2QtcnVuLnNoCi0rKysgYi9tb2R1bGVzLmQvMTFzeXN0ZW1k LW5ldHdvcmtkL25ldHdvcmtkLXJ1bi5zaAotQEAgLTEyLDEwICsxMiwxMiBAQCBmb3IgaWZwYXRo IGluIC9zeXMvY2xhc3MvbmV0Lyo7IGRvCi0gICAgICAgICBsZWFzZXNfZmlsZT0iL3J1bi9zeXN0 ZW1kL25ldGlmL2xlYXNlcy8kKGNhdCAiJGlmcGF0aCIvaWZpbmRleCkiCi0gICAgICAgICBkaGNw b3B0c19maWxlPSIvdG1wL2RoY2xpZW50LiR7aWZuYW1lfS5kaGNwb3B0cyIKLSAgICAgICAgIGlm IFsgLXIgIiRsZWFzZXNfZmlsZSIgXTsgdGhlbgotLSAgICAgICAgICAgIGdyZXAgLUUgIl4oTkVY VF9TRVJWRVJ8Uk9PVF9QQVRIKT0iICIkbGVhc2VzX2ZpbGUiIFwKLS0gICAgICAgICAgICAgICAg fCBzZWQgLWUgInMvTkVYVF9TRVJWRVI9L25ld19uZXh0X3NlcnZlcj0nLyIgXAotLSAgICAgICAg ICAgICAgICAgICAgLWUgInMvUk9PVF9QQVRIPS9uZXdfcm9vdF9wYXRoPScvIiBcCi0tICAgICAg ICAgICAgICAgICAgICAtZSAicy8kLycvIiA+ICIkZGhjcG9wdHNfZmlsZSIgfHwgdHJ1ZQotKyAg ICAgICAgICAgIHdoaWxlIElGUz0nPScgcmVhZCAtciBrZXkgdmFsOyBkbwotKyAgICAgICAgICAg ICAgICBjYXNlICIka2V5IiBpbgotKyAgICAgICAgICAgICAgICAgICAgTkVYVF9TRVJWRVIpIHBy aW50ZiAnbmV3X25leHRfc2VydmVyPSVxXG4nICIkdmFsIiA7OwotKyAgICAgICAgICAgICAgICAg ICAgUk9PVF9QQVRIKSBwcmludGYgJ25ld19yb290X3BhdGg9JXFcbicgIiR2YWwiIDs7Ci0rICAg ICAgICAgICAgICAgIGVzYWMKLSsgICAgICAgICAgICBkb25lIDwgIiRsZWFzZXNfZmlsZSIgPiAi JGRoY3BvcHRzX2ZpbGUiCi0gICAgICAgICBmaQotIAotICAgICAgICAgc291cmNlX2hvb2sgaW5p dHF1ZXVlL29ubGluZSAiJGlmbmFtZSIKLS0tIAotMi41NC4wCi0KCmRpZmYgLS1naXQgYS9kcmFj dXQuc3BlYyBiL2RyYWN1dC5zcGVjCmluZGV4IDg0ZWZkOGEuLmEzMzY2NTggMTAwNjQ0Ci0tLSBh L2RyYWN1dC5zcGVjCisrKyBiL2RyYWN1dC5zcGVjCkBAIC03LDggKzcsOCBAQAogJWdsb2JhbCBf X3JlcXVpcmVzX2V4Y2x1ZGUgcGtnLWNvbmZpZwogCiBOYW1lOiBkcmFjdXQKLVZlcnNpb246IDEw OQotUmVsZWFzZTogNyV7P2Rpc3R9CitWZXJzaW9uOiAxMTEKK1JlbGVhc2U6IDElez9kaXN0fQog CiBTdW1tYXJ5OiBJbml0cmFtZnMgZ2VuZXJhdG9yIHVzaW5nIHVkZXYKIApAQCAtMTcsOSArMTcs OSBAQCBTdW1tYXJ5OiBJbml0cmFtZnMgZ2VuZXJhdG9yIHVzaW5nIHVkZXYKICMgZXhjZXB0IHV0 aWwvKiB3aGljaCBpcyBHUEx2MgogTGljZW5zZTogR1BMLTIuMC1vci1sYXRlciBBTkQgTEdQTC0y LjEtb3ItbGF0ZXIgQU5EIEdQTC0yLjAtb25seQogCi1VUkw6IGh0dHBzOi8vZ2l0aHViLmNvbS9k cmFjdXQtbmcvZHJhY3V0LW5nL3dpa2kvCitVUkw6IGh0dHBzOi8vZ2l0aHViLmNvbS9kcmFjdXQt bmcvZHJhY3V0L3dpa2kvCiAKLVNvdXJjZTA6IGh0dHBzOi8vZ2l0aHViLmNvbS9kcmFjdXQtbmcv ZHJhY3V0LW5nL2FyY2hpdmUvcmVmcy90YWdzLyV7dmVyc2lvbn0udGFyLmd6CitTb3VyY2UwOiBo dHRwczovL2dpdGh1Yi5jb20vZHJhY3V0LW5nL2RyYWN1dC9hcmNoaXZlL3JlZnMvdGFncy8le3Zl cnNpb259LnRhci5negogCiBTb3VyY2UxOiBodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xn cGwtMi4xLnR4dAogIyByZXZlcnQ6ICJmaXgoaW5zdGFsbC5kKTogY29ycmVjdGx5IGluc3RhbGwg cHJlLWdlbm5lZCBpbWFnZSBhbmQgZGllIGlmIG5vIGFyZ3MiCkBAIC00MywyNyArNDMsMjEgQEAg UGF0Y2g2OiAgMDAwNi1maXgtb3NzbC1pZ25vcmUtY29tcGlsZXItd2FybmluZ3MucGF0Y2gKICMg UmV2ZXJ0ICJmZWF0KGZpcHMpOiBpbmNsdWRlIG9wZW5zc2wncyBmaXBzLnNvIGFuZCBvcGVuc3Ns LmNuZiIKICMgQXV0aG9yOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KIFBhdGNo NzogIDAwMDctUmV2ZXJ0LWZlYXQtZmlwcy1pbmNsdWRlLW9wZW5zc2wtcy1maXBzLnNvLWFuZC1v cGVucy5wYXRjaAotIyBmaXgoc3lzdGVtZC1jcnlwdHNldHVwKTogbG9hZCBsaWJjcnlwdHNldHVw IHZpYSBkbG9wZW4KLSMgQXV0aG9yOiBBbnRvbmlvIEFsdmFyZXogRmVpam9vIDxhbnRvbmlvLmZl aWpvb0BzdXNlLmNvbT4KLVBhdGNoODogIDAwMDgtZml4LXN5c3RlbWQtY3J5cHRzZXR1cC1sb2Fk LWxpYmNyeXB0c2V0dXAtdmlhLWRsb3Blbi5wYXRjaAotIyBmZWF0KHN5c3RlbWQtc3lzZXh0KTog aW5jbHVkZSBzeXN0ZW1kLXtzeXMsY29uZn1leHQtc3lzcm9vdCBzZXJ2aWNlcwotIyBBdXRob3I6 IFZpdGFseSBLdXpuZXRzb3YgPHZrdXpuZXRzQHJlZGhhdC5jb20+Ci1QYXRjaDk6ICAwMDA5LWZl YXQtc3lzdGVtZC1zeXNleHQtaW5jbHVkZS1zeXN0ZW1kLXN5cy1jb25mLWV4dC1zeXMucGF0Y2gK ICMgZml4KG5ldHdvcmstbGVnYWN5KTogcmVtb3ZlIG5ldHdvcmstbGVnYWN5IGNvbXBsZXRlbHkg ZnJvbSB0aGUgY29kZWJhc2UKICMgQXV0aG9yOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0 LmNvbT4KLVBhdGNoMTA6IDAwMTAtZml4LW5ldHdvcmstbGVnYWN5LXJlbW92ZS1uZXR3b3JrLWxl Z2FjeS1jb21wbGV0ZWx5LS5wYXRjaAorUGF0Y2g4OiAgMDAwOC1maXgtbmV0d29yay1sZWdhY3kt cmVtb3ZlLW5ldHdvcmstbGVnYWN5LWNvbXBsZXRlbHktLnBhdGNoCiAjIGZpeChpc2NzaSk6IHJl cGxhY2UgYGVjaG9gIHdyaXRlcyB3aXRoIGBwcmludGZgIHRvIHByZXZlbnQgdmFyaWFibGUgaW5q ZWN0aW9uCiAjIEF1dGhvcjogUGF2ZWwgVmFsZW5hIDxwdmFsZW5hQHJlZGhhdC5jb20+Ci1QYXRj aDExOiAwMDExLWZpeC1pc2NzaS1yZXBsYWNlLWVjaG8td3JpdGVzLXdpdGgtcHJpbnRmLXRvLXBy ZXZlbnQucGF0Y2gKK1BhdGNoOTogIDAwMDktZml4LWlzY3NpLXJlcGxhY2UtZWNoby13cml0ZXMt d2l0aC1wcmludGYtdG8tcHJldmVudC5wYXRjaAogIyBmaXgoYmFzZSk6IGVzY2FwZSBhcmd1bWVu dHMgaW4gaW5pdHF1ZXVlIGhvb2sgc2NyaXB0IGdlbmVyYXRpb24KICMgQXV0aG9yOiBQYXZlbCBW YWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KLVBhdGNoMTI6IDAwMTItZml4LWJhc2UtZXNjYXBl LWFyZ3VtZW50cy1pbi1pbml0cXVldWUtaG9vay1zY3JpcHQtZy5wYXRjaAorUGF0Y2gxMDogMDAx MC1maXgtYmFzZS1lc2NhcGUtYXJndW1lbnRzLWluLWluaXRxdWV1ZS1ob29rLXNjcmlwdC1nLnBh dGNoCiAjIGZpeChuZXQtbGliKTogd2FybiBvbiBzdXNwaWNpb3VzIHNoZWxsIG1ldGFjaGFyYWN0 ZXJzIGluIGhvc3RuYW1lIGZpbGUKICMgQXV0aG9yOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVk aGF0LmNvbT4KLVBhdGNoMTM6IDAwMTMtZml4LW5ldC1saWItd2Fybi1vbi1zdXNwaWNpb3VzLXNo ZWxsLW1ldGFjaGFyYWN0ZXJzLS5wYXRjaAorUGF0Y2gxMTogMDAxMS1maXgtbmV0LWxpYi13YXJu LW9uLXN1c3BpY2lvdXMtc2hlbGwtbWV0YWNoYXJhY3RlcnMtLnBhdGNoCiAjIGZpeChzeXN0ZW1k LW5ldHdvcmtkKTogZXNjYXBlIERIQ1AgbGVhc2UgdmFsdWVzIGluIGRoY3BvcHRzIGdlbmVyYXRp b24KICMgQXV0aG9yOiBQYXZlbCBWYWxlbmEgPHB2YWxlbmFAcmVkaGF0LmNvbT4KLVBhdGNoMTQ6 IDAwMTQtZml4LXN5c3RlbWQtbmV0d29ya2QtZXNjYXBlLURIQ1AtbGVhc2UtdmFsdWVzLWluLWRo Yy5wYXRjaAorUGF0Y2gxMjogMDAxMi1maXgtc3lzdGVtZC1uZXR3b3JrZC1lc2NhcGUtREhDUC1s ZWFzZS12YWx1ZXMtaW4tZGhjLnBhdGNoCiAKICMgUGxlYXNlIHVzZSBzb3VyY2UtZ2l0IHRvIHdv cmsgd2l0aCB0aGlzIHNwZWMgZmlsZToKICMgSG93VG86IGh0dHBzOi8vcGFja2l0LmRldi9zb3Vy Y2UtZ2l0L3dvcmstd2l0aC1zb3VyY2UtZ2l0CkBAIC0yMDEsMjQgKzE5NSwzMCBAQCBUaGlzIHBh Y2thZ2UgcHJvdmlkZXMgYSBkcmFjdXQgbW9kdWxlIHRvIGJ1aWxkIGFuIGluaXRyYW1mcywgYnV0 IHN0b3JlIG1vc3QgZmlsZQogaW4gYSBzcXVhc2hmcyBpbWFnZSwgcmVzdWx0IGluIGEgc21hbGxl ciBpbml0cmFtZnMgc2l6ZSBhbmQgcmVkdWNlIHJ1bnRpbWUgbWVtb3J5CiB1c2FnZS4KIAorCiAl cHJlcAotJWF1dG9zZXR1cCAtbiAle25hbWV9LW5nLSV7dmVyc2lvbn0gLVMgZ2l0X2FtCislYXV0 b3NldHVwIC1uICV7bmFtZX0tJXt2ZXJzaW9ufSAtUyBnaXRfYW0KIGNwICV7U09VUkNFMX0gLgog CisKICVidWlsZAorIyBNYWtlZmlsZSB0cmllcyB0byByZW1vdmUgb2YgbmV0d29yay1sZWdhY3kg KG5vbmV4aXN0ZW50KSB1bmxlc3MgLS1lbmFibGUtbmV0d29yay1sZWdhY3kKICVjb25maWd1cmUg IC0tc3lzdGVtZHN5c3RlbXVuaXRkaXI9JXtfdW5pdGRpcn0gXAogICAgICAgICAgICAgLS1iYXNo Y29tcGxldGlvbmRpcj0kKHBrZy1jb25maWcgLS12YXJpYWJsZT1jb21wbGV0aW9uc2RpciBiYXNo LWNvbXBsZXRpb24pIFwKICAgICAgICAgICAgIC0tbGliZGlyPSV7X3ByZWZpeH0vbGliIFwKICAg ICAgICAgICAgIC0tZW5hYmxlLWRyYWN1dC1jcGlvIFwKKyAgICAgICAgICAgIC0tZW5hYmxlLW5l dHdvcmstbGVnYWN5IFwKICVpZiAle3dpdGhvdXQgZG9jfQogICAgICAgICAgICAgLS1kaXNhYmxl LWRvY3VtZW50YXRpb24gXAogJWVuZGlmCiAgICAgICAgICAgICAke05VTEx9CiAKLSVtYWtlX2J1 aWxkCisKKyVtYWtlX2J1aWxkIERSQUNVVF9GVUxMX1ZFUlNJT049IiV7dmVyc2lvbn0tJXtyZWxl YXNlfSIKKwogCiAlaW5zdGFsbAotJW1ha2VfaW5zdGFsbCAlez9fc21wX21mbGFnc30gXAorJW1h a2VfaW5zdGFsbCBEUkFDVVRfRlVMTF9WRVJTSU9OPSIle3ZlcnNpb259LSV7cmVsZWFzZX0iICV7 P19zbXBfbWZsYWdzfSBcCiAgICAgIGxpYmRpcj0le19wcmVmaXh9L2xpYgogCiBlY2hvICJEUkFD VVRfVkVSU0lPTj0le3ZlcnNpb259LSV7cmVsZWFzZX0iID4gJFJQTV9CVUlMRF9ST09ULyV7ZHJh Y3V0bGliZGlyfS9kcmFjdXQtdmVyc2lvbi5zaApAQCAtMjI5LDkgKzIyOSw2IEBAIHJtIC1mciAt LSAkUlBNX0JVSUxEX1JPT1QvJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8xMGRhc2gKICMgd2Ug ZG8gbm90IHN1cHBvcnQgbWtzaCBpbiB0aGUgaW5pdHJhbWZzCiBybSAtZnIgLS0gJFJQTV9CVUlM RF9ST09ULyV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMDBta3NoCiAKLSMgUmVtb3ZlIG9ic29s ZXRlIG1vZHVsZQotcm0gLWZyIC0tICRSUE1fQlVJTERfUk9PVC8le2RyYWN1dGxpYmRpcn0vbW9k dWxlcy5kLzM1bmV0d29yay1sZWdhY3kKLQogJWlmbmFyY2ggczM5MCBzMzkweAogIyByZW1vdmUg YXJjaGl0ZWN0dXJlIHNwZWNpZmljIG1vZHVsZXMKIHJtIC1mciAtLSAkUlBNX0JVSUxEX1JPT1Qv JXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC82OGNtcwpAQCAtMjc4LDcgKzI3NSw2IEBAIGVjaG8g J2RyYWN1dF9yZXNjdWVfaW1hZ2U9InllcyInID4gJFJQTV9CVUlMRF9ST09UJXtkcmFjdXRsaWJk aXJ9L2RyYWN1dC5jb25mLmQvCiAlZGlyICV7ZHJhY3V0bGliZGlyfQogJWRpciAle2RyYWN1dGxp YmRpcn0vbW9kdWxlcy5kCiAle2RyYWN1dGxpYmRpcn0vZHJhY3V0LWZ1bmN0aW9ucy5zaAotJXtk cmFjdXRsaWJkaXJ9L2RyYWN1dC1pbml0LnNoCiAle2RyYWN1dGxpYmRpcn0vZHJhY3V0LWZ1bmN0 aW9ucwogJXtkcmFjdXRsaWJkaXJ9L2RyYWN1dC12ZXJzaW9uLnNoCiAle2RyYWN1dGxpYmRpcn0v ZHJhY3V0LWxvZ2dlci5zaApAQCAtMzEzLDI5ICszMDksMjkgQEAgZWNobyAnZHJhY3V0X3Jlc2N1 ZV9pbWFnZT0ieWVzIicgPiAkUlBNX0JVSUxEX1JPT1Qle2RyYWN1dGxpYmRpcn0vZHJhY3V0LmNv bmYuZC8KICVpZm5hcmNoIHMzOTAgczM5MHgKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTB3 YXJwY2xvY2sKICVlbmRpZgorCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExZmlwcwogJXtk cmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8xMWZpcHMtY3J5cHRvLXBvbGljaWVzCiAle2RyYWN1dGxp YmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1hYy1wb3dlcgogJXtkcmFjdXRsaWJkaXJ9L21vZHVs ZXMuZC8xMXN5c3RlbWQtYXNrLXBhc3N3b3JkCi0le2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzEx c3lzdGVtZC1ic29kCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1iYXR0ZXJ5 LWNoZWNrCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1ic29kCiAle2RyYWN1 dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1jb3JlZHVtcAogJXtkcmFjdXRsaWJkaXJ9L21v ZHVsZXMuZC8xMXN5c3RlbWQtY3JlZHMKLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0 ZW1kLWNyeXB0c2V0dXAKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLWhvc3Ru YW1lZAogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8xMXN5c3RlbWQtaW5pdHJkCiAle2RyYWN1 dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1pbnRlZ3JpdHlzZXR1cAogJXtkcmFjdXRsaWJk aXJ9L21vZHVsZXMuZC8xMXN5c3RlbWQtam91cm5hbGQKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVz LmQvMTFzeXN0ZW1kLWxkY29uZmlnCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVt ZC1tb2R1bGVzLWxvYWQKLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLXBjcnBo YXNlCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1wY3JleHRlbmQKICV7ZHJh Y3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLXBvcnRhYmxlZAogJXtkcmFjdXRsaWJkaXJ9 L21vZHVsZXMuZC8xMXN5c3RlbWQtcHN0b3JlCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzEx c3lzdGVtZC1yZXBhcnQKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLXJlc29s dmVkCi0le2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC1zeXNleHQKICV7ZHJhY3V0 bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLXN5c2N0bAotJXtkcmFjdXRsaWJkaXJ9L21vZHVs ZXMuZC83OHN5c3RlbWQtc3lzdXNlcnMKKyV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMTFzeXN0 ZW1kLXN5c2V4dAorJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8xMXN5c3RlbWQtc3lzdXNlcnMt c2VydmljZQogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8xMXN5c3RlbWQtdGltZWRhdGVkCiAl e2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzExc3lzdGVtZC10aW1lc3luY2QKICV7ZHJhY3V0bGli ZGlyfS9tb2R1bGVzLmQvMTFzeXN0ZW1kLXRtcGZpbGVzCkBAIC0zNTIsMjkgKzM0OCwzNiBAQCBl Y2hvICdkcmFjdXRfcmVzY3VlX2ltYWdlPSJ5ZXMiJyA+ICRSUE1fQlVJTERfUk9PVCV7ZHJhY3V0 bGliZGlyfS9kcmFjdXQuY29uZi5kLwogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC8yMGkxOG4K ICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvMzBjb252ZXJ0ZnMKICV7ZHJhY3V0bGliZGlyfS9t b2R1bGVzLmQvNDVkcm0KLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNDVzaW1wbGVkcm0KICV7 ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNDVuZXQtbGliCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxl cy5kLzQ1cGx5bW91dGgKKyV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNDVzaW1wbGVkcm0KKyV7 ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNDVzeXN0ZW1kLWltcG9ydAogJXtkcmFjdXRsaWJkaXJ9 L21vZHVsZXMuZC80NXVybC1saWIKLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzBibHVldG9v dGgKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNjhsdm1tZXJnZQogJXtkcmFjdXRsaWJkaXJ9 L21vZHVsZXMuZC82OGx2bXRoaW5wb29sLW1vbml0b3IKKyV7ZHJhY3V0bGliZGlyfS9tb2R1bGVz LmQvNzBibHVldG9vdGgKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzBidHJmcwogJXtkcmFj dXRsaWJkaXJ9L21vZHVsZXMuZC83MGNyeXB0Cisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcw Y3J5cHQtbGliCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcwZGV2aWNldHJlZS1maXJtd2Fy ZQogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83MGRtCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxl cy5kLzcwZG1yYWlkCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcwZnMtbGliCiAle2RyYWN1 dGxpYmRpcn0vbW9kdWxlcy5kLzcwa2VybmVsLW1vZHVsZXMKICV7ZHJhY3V0bGliZGlyfS9tb2R1 bGVzLmQvNzBrZXJuZWwtbW9kdWxlcy1leHBvcnQKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQv NzBrZXJuZWwtbW9kdWxlcy1leHRyYQogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83MGx2bQog JXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83MG1kcmFpZAorJXtkcmFjdXRsaWJkaXJ9L21vZHVs ZXMuZC83MG1lbWRpc2sKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzBtdWx0aXBhdGgKLSV7 ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzBudmRpbW0KICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVz LmQvNzBudW1sb2NrCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcwbnZkaW1tCiAle2RyYWN1 dGxpYmRpcn0vbW9kdWxlcy5kLzcwb3ZlcmxheWZzCi0le2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5k LzcwcHBjbWFjCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcwcGNtY2lhCisle2RyYWN1dGxp YmRpcn0vbW9kdWxlcy5kLzcwcHBjbWFjCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzcwcWVt dQorJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83MW92ZXJsYXlmcy1jcnlwdAorJXtkcmFjdXRs aWJkaXJ9L21vZHVsZXMuZC83MXN5c3RlbWQtY3J5cHRzZXR1cAogJXtkcmFjdXRsaWJkaXJ9L21v ZHVsZXMuZC83M2NyeXB0LWdwZwogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83M2NyeXB0LWxv b3AKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzNmaWRvMgpAQCAtMzkyLDM0ICszOTUsMzYg QEAgZWNobyAnZHJhY3V0X3Jlc2N1ZV9pbWFnZT0ieWVzIicgPiAkUlBNX0JVSUxEX1JPT1Qle2Ry YWN1dGxpYmRpcn0vZHJhY3V0LmNvbmYuZC8KICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzR1 ZGV2LXJ1bGVzCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzc0dmlydGZzCiAle2RyYWN1dGxp YmRpcn0vbW9kdWxlcy5kLzc0dmlydGlvZnMKLSVpZmFyY2ggczM5MCBzMzkweAotJXtkcmFjdXRs aWJkaXJ9L21vZHVsZXMuZC82OGNtcwotJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC82OWNpb19p Z25vcmUKLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzN6aXBsCi0le2RyYWN1dGxpYmRpcn0v bW9kdWxlcy5kLzc0ZGFzZAotJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83NGRhc2RfbW9kCi0l e2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzc0ZGNzc2JsawotJXtkcmFjdXRsaWJkaXJ9L21vZHVs ZXMuZC83NHpmY3AKLSVlbmRpZgogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83NXNlY3VyaXR5 ZnMKLSV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzZtYXN0ZXJrZXkKLSV7ZHJhY3V0bGliZGly fS9tb2R1bGVzLmQvNzdpbnRlZ3JpdHkKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzZiaW9z ZGV2bmFtZQorJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83Nm1hc3RlcmtleQogJXtkcmFjdXRs aWJkaXJ9L21vZHVsZXMuZC83NnN5c3RlbWQtZW1lcmdlbmN5CiAle2RyYWN1dGxpYmRpcn0vbW9k dWxlcy5kLzc3ZHJhY3V0LXN5c3RlbWQKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzdlY3J5 cHRmcworJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83N2luaXRxdWV1ZQorJXtkcmFjdXRsaWJk aXJ9L21vZHVsZXMuZC83N2ludGVncml0eQogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83N3Bv bGxjZHJvbQogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83N3NlbGludXgKICV7ZHJhY3V0bGli ZGlyfS9tb2R1bGVzLmQvNzdzeXNsb2cKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzd1c3Jt b3VudAotJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83N2luaXRxdWV1ZQorJXtkcmFjdXRsaWJk aXJ9L21vZHVsZXMuZC83OHN5c3RlbWQtc3lzdXNlcnMKICV7ZHJhY3V0bGliZGlyfS9tb2R1bGVz LmQvODBiYXNlCiAle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzgxYnVzeWJveAogJXtkcmFjdXRs aWJkaXJ9L21vZHVsZXMuZC84NG1lbXN0cmFjawotJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83 MGZzLWxpYgotJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC85OW9wZW5zc2wKLSV7ZHJhY3V0bGli ZGlyfS9tb2R1bGVzLmQvODZzaHV0ZG93bgogJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC84NXNo ZWxsLWludGVycHJldGVyCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzg2c2h1dGRvd24KKyV7 ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvOTlvcGVuc3NsCisKKyVpZmFyY2ggczM5MCBzMzkweAor JXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC82OGNtcworJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMu ZC82OWNpb19pZ25vcmUKKyV7ZHJhY3V0bGliZGlyfS9tb2R1bGVzLmQvNzN6aXBsCisle2RyYWN1 dGxpYmRpcn0vbW9kdWxlcy5kLzc0ZGFzZAorJXtkcmFjdXRsaWJkaXJ9L21vZHVsZXMuZC83NGRh c2RfbW9kCisle2RyYWN1dGxpYmRpcn0vbW9kdWxlcy5kLzc0ZGNzc2JsaworJXtkcmFjdXRsaWJk aXJ9L21vZHVsZXMuZC83NHpmY3AKKyVlbmRpZgorCiAlYXR0cigwNjQ0LHJvb3Qscm9vdCkgJWdo b3N0ICVjb25maWcobWlzc2luZ29rLG5vcmVwbGFjZSkgJXtfbG9jYWxzdGF0ZWRpcn0vbG9nL2Ry YWN1dC5sb2cKICVkaXIgJXtfc2hhcmVkc3RhdGVkaXJ9L2luaXRyYW1mcwogJWlmICV7ZGVmaW5l ZCBfdW5pdGRpcn0KQEAgLTQ5Nyw2ICs1MDIsOSBAQCBlY2hvICdkcmFjdXRfcmVzY3VlX2ltYWdl PSJ5ZXMiJyA+ICRSUE1fQlVJTERfUk9PVCV7ZHJhY3V0bGliZGlyfS9kcmFjdXQuY29uZi5kLwog JXtfcHJlZml4fS9saWIva2VybmVsL2luc3RhbGwuZC81MS1kcmFjdXQtcmVzY3VlLmluc3RhbGwK IAogJWNoYW5nZWxvZworKiBGcmkgSnVsIDMxIDIwMjYgUGF2ZWwgVmFsZW5hIDxwdmFsZW5hQHJl ZGhhdC5jb20+IC0gMTExLTEKKy0gYnVpbGQ6IHVwZ3JhZGUgdG8gZHJhY3V0IDExMQorCiAqIFdl ZCBKdWwgMTUgMjAyNiBGZWRvcmEgUmVsZWFzZSBFbmdpbmVlcmluZyA8cmVsZW5nQGZlZG9yYXBy b2plY3Qub3JnPiAtIDEwOS03CiAtIFJlYnVpbHQgZm9yIGh0dHBzOi8vZmVkb3JhcHJvamVjdC5v cmcvd2lraS9GZWRvcmFfNDVfTWFzc19SZWJ1aWxkCiAKCmRpZmYgLS1naXQgYS9zb3VyY2VzIGIv c291cmNlcwppbmRleCBhODBkNjA3Li5kNGQ1ZTRkIDEwMDY0NAotLS0gYS9zb3VyY2VzCisrKyBi L3NvdXJjZXMKQEAgLTEgKzEgQEAKLVNIQTUxMiAoMTA5LnRhci5neikgPSBjMWZiMDE5MTkxMWIz YjNlYWM0ZjU2OGRiMWNiYzgxODRlMmI1MThhNzBhMDU2Nzc3N2I3MmVmOGE1YWY3MGE4YmRiMWIz ZjhhY2NlMmQ5MmViMmRjODA3ZTA1NmQ1Yjc1YWVkOTMyOTJjZDA1YmM4YzMzM2VmZTVkNGI5OGFk YworU0hBNTEyICgxMTEudGFyLmd6KSA9IDRjOGEzZTFlODJiZmMxZGJlMTU1MjQxNTY0YmM5M2Jl ZGMyYjMyMTU2NjAwMmNjYzY0MzY5N2I1MDE3M2I4ZTU2NGQwM2IxYmJmZjRmNDk2MDJlMGNiN2Fi YmVlMjFkZmIxNGFhZGM0NTNhYzk3MDNhODQ2YzE2MGQwNzBiNGJjCg==