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: Jerry James To: git-commits@fedoraproject.org Subject: [rpms/gfan] f44: Version 0.8beta Date: Sat, 20 Jun 2026 13:53:57 GMT Message-ID: <178196363756.1.420775271679348911.rpms-gfan-8316b24c39f9@fedoraproject.org> List-ID: X-Git-Repo: rpms/gfan X-Git-Branch: f44 X-Git-Rev: 8316b24c39f962ea9a438f0db79f595d37fff796 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvZ2ZhbgogICAgICAgICAgICBCcmFuY2ggOiBmNDQKICAgICAgICAgICAgQ29t bWl0IDogODMxNmIyNGMzOWY5NjJlYTlhNDM4ZjBkYjc5ZjU5NWQzN2ZmZjc5NgogICAgICAgICAg ICBBdXRob3IgOiBKZXJyeSBKYW1lcyA8bG9nYW5qZXJyeUBnbWFpbC5jb20+CiAgICAgICAgICAg IERhdGUgICA6IDIwMjYtMDYtMTVUMDk6MjI6MTQtMDY6MDAKICAgICAgICAgICAgU3RhdHMgIDog KzE2NS8tMTg0IGluIDcgZmlsZShzKQogICAgICAgICAgICBVUkwgICAgOiBodHRwczovL3NyYy5m ZWRvcmFwcm9qZWN0Lm9yZy9ycG1zL2dmYW4vYy84MzE2YjI0YzM5Zjk2MmVhOWE0MzhmMGRiNzlm NTk1ZDM3ZmZmNzk2P2JyYW5jaD1mNDQKCiAgICAgICAgICAgIExvZzoKICAgICAgICAgICAgVmVy c2lvbiAwLjhiZXRhCgotIEFkZCBwYXRjaCB0byBhdm9pZCBjYWxsaW5nIGJhY2soKSBvbiBhbiBl bXB0eSB2ZWN0b3IKLSBEcm9wIHVudXNlZCBCUnM6IGNkZGxpYi1kZXZlbCwgZ21wLWRldmVsLCB0 ZXgobGF0ZXgpLCBUT1BDT00KLSBSdW4gbGF0ZXggaW4gbm9uc3RvcCBtb2RlCgotLS0KZGlmZiAt LWdpdCBhL2dmYW4tYysrMjAucGF0Y2ggYi9nZmFuLWMrKzIwLnBhdGNoCmluZGV4IGExOTIyZjEu LjQ2MTk2ZmMgMTAwNjQ0Ci0tLSBhL2dmYW4tYysrMjAucGF0Y2gKKysrIGIvZ2Zhbi1jKysyMC5w YXRjaApAQCAtMSwyMyArMSwxMSBAQAotLS0tIGdmYW4wLjcvTWFrZWZpbGUub3JpZwkyMDI0LTA4 LTE1IDE1OjI2OjMwLjg0MTY4OTg2MCAtMDYwMAotKysrIGdmYW4wLjcvTWFrZWZpbGUJMjAyNC0w OC0xNSAxNjowNjoyOC4xNzMyMDIxNzMgLTA2MDAKLUBAIC0xMzksNyArMTM5LDcgQEAgT1BURkxB R1MgICAgPSAgLURHTVBSQVRJT05BTCAtV3VuaW5pdGlhbAorLS0tIGdmYW4wLjhiZXRhL01ha2Vm aWxlLm9yaWcJMjAyNi0wNi0xMSAxNToyNjo0NC4zMjQxNjQzODkgLTA2MDAKKysrKyBnZmFuMC44 YmV0YS9NYWtlZmlsZQkyMDI2LTA2LTExIDE1OjI2OjU2Ljk3OTkzNTUyMiAtMDYwMAorQEAgLTE4 NCw3ICsxODQsNyBAQCBlbmRpZgogICNPUFRGTEFHUyAgICA9ICAtREdNUFJBVElPTkFMIC1XdW5p bml0aWFsaXplZCAtZm5vLW9taXQtZnJhbWUtcG9pbnRlciAtTzMgLW1zc2UyIC1mdHJlZS12ZWN0 b3JpemVyLXZlcmJvc2U9MiAtZmZhc3QtbWF0aCAjLUROREVCVUcKICAjT1BURkxBR1MgICAgPSAg LURHTVBSQVRJT05BTCAtV3VuaW5pdGlhbGl6ZWQgLWZuby1vbWl0LWZyYW1lLXBvaW50ZXIgLU8z IC1tYXZ4IC1tc3NlMiAtZnRyZWUtdmVjdG9yaXplci12ZXJib3NlPTIgLWZmYXN0LW1hdGggIy1E TkRFQlVHCiAgCi0tQ0ZMQUdTCSAgPSAkKE9QVEZMQUdTKSAkKEdQUk9GRkxBRykgJChTVEFDVERV TVBfT1BUSU9OUykgJChBRERJVElPTkFMSU5DTFVERU9QVElPTlMpIC1nICQoQ0REREVGSU5FX1BS RUZJWCkgLXN0ZD1jKysyYSAjLXBlZGFudGljCi0rQ0ZMQUdTCSAgPSAkKE9QVEZMQUdTKSAkKEdQ Uk9GRkxBRykgJChTVEFDVERVTVBfT1BUSU9OUykgJChBRERJVElPTkFMSU5DTFVERU9QVElPTlMp IC1nICQoQ0REREVGSU5FX1BSRUZJWCkgIy1wZWRhbnRpYworLUNGTEFHUwkgID0gJChPUFRGTEFH UykgJChHUFJPRkZMQUcpICQoU1RBQ1REVU1QX09QVElPTlMpICQoQURESVRJT05BTElOQ0xVREVP UFRJT05TKSAtZyAkKENERERFRklORV9QUkVGSVgpIC1zdGQ9YysrMjAgJChUQkJfSU5DTFVERU9Q VElPTlMpICMtcGVkYW50aWMKKytDRkxBR1MJICA9ICQoT1BURkxBR1MpICQoR1BST0ZGTEFHKSAk KFNUQUNURFVNUF9PUFRJT05TKSAkKEFERElUSU9OQUxJTkNMVURFT1BUSU9OUykgLWcgJChDRERE RUZJTkVfUFJFRklYKSAkKFRCQl9JTkNMVURFT1BUSU9OUykgIy1wZWRhbnRpYwogICNDRkxBR1MJ ICA9ICQoT1BURkxBR1MpICQoR1BST0ZGTEFHKSAkKFNUQUNURFVNUF9PUFRJT05TKSAkKEFERElU SU9OQUxJTkNMVURFT1BUSU9OUykgLXN0ZD1jKysweCAtZyAkKENERERFRklORV9QUkVGSVgpICMt cGVkYW50aWMKICAjQ0ZMQUdTCSAgPSAkKE9QVEZMQUdTKSAkKEdQUk9GRkxBRykgJChTVEFDVERV TVBfT1BUSU9OUykgJChBRERJVElPTkFMSU5DTFVERU9QVElPTlMpIC1EX0dMSUJDWFhfREVCVUcg LWcgJChDRERERUZJTkVfUFJFRklYKSAjLXBlZGFudGljCiAgQ0NGTEFHUwkgID0gJChDRkxBR1Mp Ci0tLS0gZ2ZhbjAuNy9zcmMvZ2ZhbmxpYl9jaXJjdWl0dGFibGVpbnQuaC5vcmlnCTIwMjQtMDgt MTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMvZ2ZhbmxpYl9jaXJj dWl0dGFibGVpbnQuaAkyMDI0LTA4LTE1IDE2OjE0OjI5Ljk4MzI5ODMwMCAtMDYwMAotQEAgLTU5 MSw3ICs1OTEsOCBAQCBwdWJsaWM6Ci0gCSAgICByZXQ9bWluOwotIAotIAkgICAgewotLQkgICAg CWF1dG8gcmV0Mj1DaXJjdWl0VGFibGVJbnRQT0QoKHMudipkZW5vbWluYXRvckRpdmlzb3IubXVs dGlwbGljYXRpdmVJbnZlcnNlKSpib3VuZEEudik7Ci0rCQlDaXJjdWl0VGFibGVJbnRQT0QgcmV0 Mnt9OwotKwkgICAgCXJldDI9KHMudipkZW5vbWluYXRvckRpdmlzb3IubXVsdGlwbGljYXRpdmVJ bnZlcnNlKSpib3VuZEEudjsKLSAJICAgIAlyZXQyPU1JTihyZXQyLnYsLXJldDIudik7Ci0gCSAg ICAJcmV0dXJuIHJldDI7Ci0gCSAgICAJaWYocmV0LnYhPXJldDIudikKCmRpZmYgLS1naXQgYS9n ZmFuLWVtcHR5LWNvbmVTdGFjay5wYXRjaCBiL2dmYW4tZW1wdHktY29uZVN0YWNrLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkYTRhMzYKLS0tIC9kZXYvbnVsbAor KysgYi9nZmFuLWVtcHR5LWNvbmVTdGFjay5wYXRjaApAQCAtMCwwICsxLDE2IEBACitGaXggdGVz dCBjcmFzaCBkdWUgdG8gY2FsbGluZyBiYWNrKCkgb24gYW4gZW1wdHkgdmVjdG9yLgorCitSZXBy b2R1Y2VkIGJ5IHJ1bm5pbmcgdGhpcyB0ZXN0OgorLi9nZmFuIF90cm9waWNhbHByZXZhcmlldHkg LS11c2V2YWx1YXRpb24gPCB0ZXN0c3VpdGUvMjAwMFRyb3BpY2FsUHJldmFyaWV0eS9pbnB1dAor CistLS0gZ2ZhbjAuOGJldGEvc3JjL2dmYW5saWJfaHlwZXJzdXJmYWNlaW50ZXJzZWN0aW9uLmNw cC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJl dGEvc3JjL2dmYW5saWJfaHlwZXJzdXJmYWNlaW50ZXJzZWN0aW9uLmNwcAkyMDI2LTA2LTExIDE1 OjI4OjMwLjM0NTc3NTAzMSAtMDYwMAorQEAgLTEwMjMsNyArMTAyMyw3IEBAIGlmKDEpCQkJCXsK KyAJCQkJCXN0YWNrUmVzb3VyY2UyKDIwMTYwMDAwKSwKKyAJCQkJCXN0YXRpc3RpY3Moc3RhdGlz dGljc18pCisgCQkJCQl7CistCQkJCQkJZmlsdGVyT0s9ZmlsdGVyKGNvbmVTdGFjay5iYWNrKCkp OworKwkJCQkJCWZpbHRlck9LPWNvbmVTdGFjay5lbXB0eSgpIHx8IGZpbHRlcihjb25lU3RhY2su YmFjaygpKTsKKyAJCQkJCQlzZXR1cE9wdGlvblN0YWNrKCk7CisgCQkJCQl9CisgCgpkaWZmIC0t Z2l0IGEvZ2Zhbi1zaGFyZWQucGF0Y2ggYi9nZmFuLXNoYXJlZC5wYXRjaAppbmRleCA2MjEwMTg4 Li4xMjVhNzE2IDEwMDY0NAotLS0gYS9nZmFuLXNoYXJlZC5wYXRjaAorKysgYi9nZmFuLXNoYXJl ZC5wYXRjaApAQCAtMSw2ICsxLDE1IEBACi0tLS0gZ2ZhbjAuNy9NYWtlZmlsZS5vcmlnCTIwMjQt MDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9NYWtlZmlsZQkyMDI0 LTA4LTE1IDE1OjI2OjMwLjg0MTY4OTg2MCAtMDYwMAotQEAgLTIyNiwxNSArMjI2LDYgQEAgQ0FU U09CSkVDVFMgPQlscF9jZGQubyBcCistLS0gZ2ZhbjAuOGJldGEvTWFrZWZpbGUub3JpZwkyMDI2 LTA1LTA3IDE0OjA2OjA3LjAwMDAwMDAwMCAtMDYwMAorKysrIGdmYW4wLjhiZXRhL01ha2VmaWxl CTIwMjYtMDYtMTEgMTU6MDc6MTguNzk5MjM2MTY0IC0wNjAwCitAQCAtMTYyLDcgKzE2Miw3IEBA IFNZTU1FVFJJQ1RSQVZFUlNBTF9GTEFHUyA9IC1mbm8tZ3Vlc3MtYnIKKyAjIC1yZHluYW1pYyBp cyBMaW51eC1vbmx5OyB1c2UgVEJCIGZvciBwYXJhbGxlbCBleGVjdXRpb24gc3VwcG9ydAorIFBM QVRGT1JNX0xJTktPUFRJT05TID0gLUwkKEhPTUVCUkVXX1BSRUZJWCkvb3B0L3RiYi9saWIgLWx0 YmIKKyBlbHNlCistU1lNTUVUUklDVFJBVkVSU0FMX0ZMQUdTID0gLWZuby1ndWVzcy1icmFuY2gt cHJvYmFiaWxpdHkKKytTWU1NRVRSSUNUUkFWRVJTQUxfRkxBR1MgPQorIFBMQVRGT1JNX0xJTktP UFRJT05TID0gLXJkeW5hbWljIC1sdGJiCisgZW5kaWYKKyAKK0BAIC0yNzEsMTUgKzI3MSw2IEBA IENBVFNPQkpFQ1RTID0JbHBfY2RkLm8gXAogIAl0cm9waWNhbGRldGVybWluYW50Lm8gXAogIAlk ZXRlcm1pbmFudHBvbHkubyBcCiAgCXRyYXZlcnNlcl9zcGhlcmUubyBcCkBAIC0xNiw3ICsyNSw3 IEBACiAgCXBhZGljLm8gXAogIAlpbnRlZ2VyZ2IubyBcCiAgCXRyYXZlcnNlcl9yZXN1bHRhbnRm YW4ubyBcCi1AQCAtMjQyLDEyICsyMzMsOSBAQCBDQVRTT0JKRUNUUyA9CWxwX2NkZC5vIFwKK0BA IC0yODcsMTUgKzI3OCwxMSBAQCBDQVRTT0JKRUNUUyA9CWxwX2NkZC5vIFwKICAJdHJhdmVyc2Vy X3Jlc3VsdGFudGZhbnNwZWNpYWxpemF0aW9uLm8gXAogIAlteWFzc2VydC5vIFwKICAJdHJhdmVy c2VyX2JzcHRyZWUubyBcCkBAIC0yOCw4ICszNywxMSBAQAogLQlnZmFubGliX2h5cGVyc3VyZmFj ZWludGVyc2VjdGlvbi5vIFwKICAJZGl2aXNpb25vYmplY3QubyBcCiAgCWdmYW5saWJnbHVlLm8g XAorLQlpbnRlcnJ1cHQubyBcCiAgIwlnZmFubGliX2NpcmN1aXR0YWJsZWludGVnZXIubyBcCi1A QCAtNDEzLDE0ICs0MDEsMjYgQEAgR0ZBTkxJQkZJTEVTPSAJZ2ZhbmxpYi5oIFwKKyAjCQlzeW1t ZXRyaWN0cmF2ZXJzYWwubyBcCisgCSMJcmVzdHJpY3RlZGdmYW4ubyBcCitAQCAtNDcyLDYgKzQ1 OSwxOSBAQCBHRkFOTElCRklMRVM9IAlnZmFubGliLmggXAogIAkJCQlnZmFubGliX21lbW9yeXJl c291cmNlLmNwcCBcCiAgCSMJCQlnZmFubGliX3RhYmxlYXUuaCBcICAgd2UgZG8gbm90IHlldCBz dXBwb3J0IHRoaXMgb25lCiAgCkBAIC00NCwyMSArNTYsMTIgQEAKICsJCQkJZ2ZhbmxpYl9wYXJh bGxlbHRyYXZlcnNlci5vIFwKICsJCQkJZ2ZhbmxpYl90cmF2ZXJzYWwubyBcCiArCQkJCWdmYW5s aWJfbWVtb3J5cmVzb3VyY2UubyBcCi0rCQkJCWdmYW5saWJfaHlwZXJzdXJmYWNlaW50ZXJzZWN0 aW9uLm8KKysJCQkJZ2ZhbmxpYl9oeXBlcnN1cmZhY2VpbnRlcnNlY3Rpb24ubyBcCisrCQkJCWlu dGVycnVwdC5vCiAgCiAgRVhFQ1MJICA9ICQoTUFJTikKICAKLSAjIFdoZW4gY29tcGlsaW5nIHN5 bW1ldHJpY3RyYXZlcnNhbC5jcHAgYXMgYW55IG90aGVyIGZpbGUsIGl0IGNhdXNlcyB0aGUgcHJv Z3JhbSB0byBjcmFzaCBpbiBjZXJ0YWluIHNpdHVhdGlvbnMuCi0gIyAoY29tcGlsaW5nIHdpdGgg Z2NjIHZlcnNpb24gNC43LjIgYW5kIHJ1bm5pbmcgZ2ZhbiBfdHJvcGljYWx0cmF2ZXJzZSBvbiBh IHN0YXJ0aW5nIGNvbmUgZm9yIEdyYXNzbWFubjNfNykKLSAjIEVpdGhlciB0aGlzIGlzIGEgYnVn IGluIHRoZSBjb2RlIG9yIGluIHRoZSBjb21waWxlci4gVGhlIGJ1ZyBkaXNhcHBlYXJzIGJ5IGNv bXBpbGluZyB3aXRoIC1mbm8tZ3Vlc3MtYnJhbmNoLXByb2JhYmlsaXR5Ci0tc3JjL3N5bW1ldHJp Y3RyYXZlcnNhbC5vOiBzcmMvc3ltbWV0cmljdHJhdmVyc2FsLmNwcAotLQkkKENYWCkgJChDRkxB R1MpIC1mbm8tZ3Vlc3MtYnJhbmNoLXByb2JhYmlsaXR5ICAtYyBzcmMvc3ltbWV0cmljdHJhdmVy c2FsLmNwcCAtbyBzcmMvc3ltbWV0cmljdHJhdmVyc2FsLm8KLSsjc3JjL3N5bW1ldHJpY3RyYXZl cnNhbC5vOiBzcmMvc3ltbWV0cmljdHJhdmVyc2FsLmNwcAotKyMJJChDWFgpICQoQ0ZMQUdTKSAt Zm5vLWd1ZXNzLWJyYW5jaC1wcm9iYWJpbGl0eSAgLWMgc3JjL3N5bW1ldHJpY3RyYXZlcnNhbC5j cHAgLW8gc3JjL3N5bW1ldHJpY3RyYXZlcnNhbC5vCi0gIyBJZiBjb21waWxpbmcgd2l0aCBjbGFu ZywgdXNlIHRoZSBsaW5lIGJlbG93IGluc3RlYWQ6Ci0gIwkkKENYWCkgJChDRkxBR1MpIC1jIHNy Yy9zeW1tZXRyaWN0cmF2ZXJzYWwuY3BwIC1vIHNyYy9zeW1tZXRyaWN0cmF2ZXJzYWwubwotIAot QEAgLTQzMiw2ICs0MzIsNyBAQCBPQkpFQ1RTMSA9IAkkKGFkZHByZWZpeCBzcmMvLCQoU09QTEVY X09CCitAQCAtNDkwLDYgKzQ5MCw3IEBAIE9CSkVDVFMxID0gCSQoYWRkcHJlZml4IHNyYy8sJChT T1BMRVhfT0IKICAJCSQoU0FHRV9PQkpFQ1RTKSBcCiAgCQkkKGFkZHByZWZpeCBzcmMvLCQoQ0FU U09CSkVDVFMpKSBcCiAgCQkkKGFkZHByZWZpeCBzcmMvLCQoQVBQT0JKRUNUUykpIFwKQEAgLTY2 LDE1ICs2OSwxNSBAQAogIAkJc3JjL3N5bW1ldHJpY3RyYXZlcnNhbC5vCiAgCiAgT0JKRUNUUzIg PSBzcmMvYXBwX3Rlc3QubyBcCi1AQCAtNTA4LDcgKzUwOSw0OCBAQCBkZWZhdWx0OiAkKE9CSkVD VFMpICQoQURESVRJT05BTE9CSkVDVFMpCitAQCAtNTY1LDcgKzU2Niw1MSBAQCAkKFBSRUZJWCk6 CisgZGVmYXVsdDogJChPQkpFQ1RTKSAkKEFERElUSU9OQUxPQkpFQ1RTKSAkKEVYRUNTKQogIAog ICQoTUFJTik6ICQoT0JKRUNUUykKLSAjCSQoQ0NMSU5LRVIpICQoT0JKRUNUUykgJChBRERJVElP TkFMTElOS09QVElPTlMpICQoR1BST0ZGTEFHKSAtbHB0aHJlYWQgIC1vICQoTUFJTikKLS0JJChD Q0xJTktFUikgJChPQkpFQ1RTKSAkKEFERElUSU9OQUxMSU5LT1BUSU9OUykgJChHUFJPRkZMQUcp IC1scHRocmVhZCAtcmR5bmFtaWMgLW8gJChNQUlOKQotKwkkKENDTElOS0VSKSAkKE9CSkVDVFMp ICQoQURESVRJT05BTExJTktPUFRJT05TKSAkKEdQUk9GRkxBRykgLUwgc3JjIC1sZ2ZhbiAtbHB0 aHJlYWQgLW8gJChNQUlOKQorLQkkKENDTElOS0VSKSAkKE9CSkVDVFMpICQoQURESVRJT05BTExJ TktPUFRJT05TKSAkKEdQUk9GRkxBRykgLWxwdGhyZWFkICQoUExBVEZPUk1fTElOS09QVElPTlMp IC1vICQoTUFJTikKKysJJChDQ0xJTktFUikgJChPQkpFQ1RTKSAkKFBMQVRGT1JNX0xJTktPUFRJ T05TKSAkKEFERElUSU9OQUxMSU5LT1BUSU9OUykgJChHUFJPRkZMQUcpIC1MIHNyYyAtbGdmYW4g LWxwdGhyZWFkIC1vICQoTUFJTikKICsKICtzcmMvbGliZ2Zhbi5zbzogJChhZGRwcmVmaXggc3Jj LywkKEdGQU5MSUJPQkpFQ1RTKSkKLSsJJChDQ0xJTktFUikgJChDQ0ZMQUdTKSAkKEFERElUSU9O QUxMSU5LT1BUSU9OUykgLXNoYXJlZCAtV2wsLWgsbGliZ2Zhbi5zby4wIC1vIHNyYy9saWJnZmFu LnNvLjAuMC4wICReIC1sZ21wIC1scHRocmVhZAorKwkkKENDTElOS0VSKSAkKENDRkxBR1MpICQo UExBVEZPUk1fTElOS09QVElPTlMpIC1zaGFyZWQgLVdsLC1oLGxpYmdmYW4uc28uMCAtbyBzcmMv bGliZ2Zhbi5zby4wLjAuMCAkXiAkKEFERElUSU9OQUxMSU5LT1BUSU9OUykgLWxnbXAgLWxwdGhy ZWFkCiArCWxuIC1zIGxpYmdmYW4uc28uMC4wLjAgc3JjL2xpYmdmYW4uc28uMAogKwlsbiAtcyBs aWJnZmFuLnNvLjAgc3JjL2xpYmdmYW4uc28KICsKQEAgLTExMywxMSArMTE2LDE0IEBACiArCiAr c3JjL2dmYW5saWJfaHlwZXJzdXJmYWNlaW50ZXJzZWN0aW9uLm86IHNyYy9nZmFubGliX2h5cGVy c3VyZmFjZWludGVyc2VjdGlvbi5jcHAKICsJJChDWFgpICQoQ0NGTEFHUykgLWZQSUMgLWMgJDwg LW8gJEAKKysKKytzcmMvaW50ZXJydXB0Lm86IHNyYy9pbnRlcnJ1cHQuY3BwCisrCSQoQ1hYKSAk KENDRkxBR1MpIC1mUElDIC1jICQ8IC1vICRACiAgCiAgcmVsZWFzZToKICAJcm0gLWYgLXIgJChS RUxFQVNFRElSKS8qCi0tLS0gZ2ZhbjAuNy9zcmMvZ2ZhbmxpYi5oLm9yaWcJMjAyNC0wOC0xMiAx MDowMDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3NyYy9nZmFubGliLmgJMjAyNC0w OC0xNSAyMDozNzowNS4wNjc0NTA5MTAgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9zcmMvZ2Zhbmxp Yi5oLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4wMDAwMDAwMDAgLTA2MDAKKysrKyBnZmFuMC44 YmV0YS9zcmMvZ2ZhbmxpYi5oCTIwMjYtMDYtMTEgMTE6NTE6MjIuMjA0MjAyNzk1IC0wNjAwCiBA QCAtOCw2ICs4LDcgQEAKICAjaWZuZGVmIEdGQU5MSUJfSF8KICAjZGVmaW5lIEdGQU5MSUJfSF8K CmRpZmYgLS1naXQgYS9nZmFuLXNvcGxleC5wYXRjaCBiL2dmYW4tc29wbGV4LnBhdGNoCmluZGV4 IDE2ZjgzNzguLjk3ZDQzYzcgMTAwNjQ0Ci0tLSBhL2dmYW4tc29wbGV4LnBhdGNoCisrKyBiL2dm YW4tc29wbGV4LnBhdGNoCkBAIC0xLDUgKzEsMjIgQEAKLS0tLSBnZmFuMC43L3NyYy9scF9zb3Bs ZXhjZGQuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMzozNDowNy4wNDM2MTk4ODYgLTA2MDAKLSsrKyBn ZmFuMC43L3NyYy9scF9zb3BsZXhjZGQuY3BwCTIwMjUtMTEtMjUgMjA6NTM6NDEuNzMxNjY2MDE5 IC0wNzAwCistLS0gZ2ZhbjAuOGJldGEvTWFrZWZpbGUub3JpZwkyMDI2LTA2LTExIDE1OjA3OjE4 Ljc5OTIzNjE2NCAtMDYwMAorKysrIGdmYW4wLjhiZXRhL01ha2VmaWxlCTIwMjYtMDYtMTEgMTU6 MjY6NDQuMzI0MTY0Mzg5IC0wNjAwCitAQCAtODYsMTEgKzg2LDExIEBAIFNPUExFWF9MSU5LT1BU SU9OUyA9CisgU09QTEVYX0lOQ0xVREVPUFRJT05TID0KKyBTT1BMRVhfT0JKRUNUUyA9CisgZWxz ZQorLVNPUExFWF9QQVRIID0gJChIT01FKS9tYXRoL3NvZnR3YXJlL3NvcGxleC0xLjMuMgorLVNP UExFWF9MSU5LT1BUSU9OUyA9ICQoU09QTEVYX1BBVEgpL2xpYi9saWJzb3BsZXgubGludXgueDg2 XzY0LmdudS5vcHQuYSAtbHoKKytTT1BMRVhfUEFUSCA9IC91c3IKKytTT1BMRVhfTElOS09QVElP TlMgPSAtbHNvcGxleCAtbGNsdXNvbCAtbG1wZnIgLWx0YmIgLWx6LW5nCisgI1NPUExFWF9MSU5L T1BUSU9OUyA9IC1seiAkKFNPUExFWF9QQVRIKS9saWIvbGlic29wbGV4LmxpbnV4Lng4Ni5nbnUu b3B0LmEKKyAjU09QTEVYX0xJTktPUFRJT05TID0gLWx6ICQoU09QTEVYX1BBVEgpL2xpYi9saWJz b3BsZXguZGFyd2luLng4Ni5nbnUub3B0LmEKKy1TT1BMRVhfSU5DTFVERU9QVElPTlMgPSAtSSAk KFNPUExFWF9QQVRIKS9zcmMKKytTT1BMRVhfSU5DTFVERU9QVElPTlMgPQorIFNPUExFWF9PQkpF Q1RTID0gbHBfc29wbGV4Y2RkLm8KKyBlbmRpZgorIAorLS0tIGdmYW4wLjhiZXRhL3NyYy9scF9z b3BsZXhjZGQuY3BwLm9yaWcJMjAyNi0wNi0xMSAxMTo0MzoxMC4yNzk0NTc3NTggLTA2MDAKKysr KyBnZmFuMC44YmV0YS9zcmMvbHBfc29wbGV4Y2RkLmNwcAkyMDI2LTA2LTExIDExOjU5OjA3Ljg5 NDY1MDg0MCAtMDYwMAogQEAgLTEsMzcgKzEsMTEgQEAKICAjaW5jbHVkZSAibHBfc29wbGV4Y2Rk LmgiCiAgCgpkaWZmIC0tZ2l0IGEvZ2Zhbi13YXJuaW5nLnBhdGNoIGIvZ2Zhbi13YXJuaW5nLnBh dGNoCmluZGV4IGU1NDdjNDEuLmMyMDg0N2UgMTAwNjQ0Ci0tLSBhL2dmYW4td2FybmluZy5wYXRj aAorKysgYi9nZmFuLXdhcm5pbmcucGF0Y2gKQEAgLTEsMTggKzEsNSBAQAotLS0tIGdmYW4wLjcv c3JjL2FwcF9saWJyYXJ5dGVzdC5jcHAub3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAw MCAtMDYwMAotKysrIGdmYW4wLjcvc3JjL2FwcF9saWJyYXJ5dGVzdC5jcHAJMjAyNC0wOC0xMiAx MTowNTo0NS43MjAzMjAyMzEgLTA2MDAKLUBAIC0xMiw4ICsxMiw4IEBACi0gI2luY2x1ZGUgInNl dG9wZXIuaCIKLSAjaW5jbHVkZSAiY2RkLmgiCi0gI2Vsc2UKLS0jaW5jbHVkZSAiY2RkL3NldG9w ZXIuaCIKLS0jaW5jbHVkZSAiY2RkL2NkZC5oIgotKyNpbmNsdWRlICJjZGRsaWIvc2V0b3Blci5o IgotKyNpbmNsdWRlICJjZGRsaWIvY2RkLmgiCi0gI2VuZGlmCi0gI2luY2x1ZGUgPGlvc3RyZWFt PgotICNpbmNsdWRlIDxmc3RyZWFtPgotLS0tIGdmYW4wLjcvc3JjL2FwcGxpY2F0aW9uLmNwcC5v cmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMv YXBwbGljYXRpb24uY3BwCTIwMjQtMDgtMTIgMTE6MDU6NDUuNzIwMzIwMjMxIC0wNjAwCistLS0g Z2ZhbjAuOGJldGEvc3JjL2FwcGxpY2F0aW9uLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcu MDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL2FwcGxpY2F0aW9uLmNwcAkyMDI2 LTA2LTExIDExOjQzOjEwLjI3NDIxMTg3NyAtMDYwMAogQEAgLTMsNiArMyw4IEBACiAgI2luY2x1 ZGUgPGFzc2VydC5oPgogICNpbmNsdWRlIDxzdGRsaWIuaD4KQEAgLTM5LDggKzI2LDggQEAKICAJ ICB9CiAgICAgICAgcD1wLT5uZXh0OwogICAgICB9Ci0tLS0gZ2ZhbjAuNy9zcmMvYXBwX3Rlc3Qu Y3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43 L3NyYy9hcHBfdGVzdC5jcHAJMjAyNC0wOC0xMyAxMDo0NjoxNC42ODA2MTc0MDYgLTA2MDAKKy0t LSBnZmFuMC44YmV0YS9zcmMvYXBwX3Rlc3QuY3BwLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4w MDAwMDAwMDAgLTA2MDAKKysrKyBnZmFuMC44YmV0YS9zcmMvYXBwX3Rlc3QuY3BwCTIwMjYtMDYt MTEgMTE6NDM6MTAuMjc0NTk2OTc0IC0wNjAwCiBAQCAtMSw1ICsxLDggQEAKICAjaW5jbHVkZSA8 aW9zdHJlYW0+CiAgI2luY2x1ZGUgPHN0ZGxpYi5oPgpAQCAtNTAsNyArMzcsNyBAQAogICNpbmNs dWRlICJwYXJzZXIuaCIKICAjaW5jbHVkZSAicHJpbnRlci5oIgogICNpbmNsdWRlICJwb2x5bm9t aWFsLmgiCi1AQCAtODEzLDcgKzgxNiw3IEBAIGludCB0ZXN0R2ZhbkxpYigpCitAQCAtODE5LDcg KzgyMiw3IEBAIGludCB0ZXN0R2ZhbkxpYigpCiAgCQlpbnQgbGFyZ2VzdD0xMCsyOwogIAkJdmVj dG9yPGludD4gaGFsZk9wZW5Db25lc1N0YXRpc3RpY3MobGFyZ2VzdCsxKTsKICAJCXZlY3Rvcjxp bnQ+IG5vbkVtcHR5SW50ZXJzZWN0aW9uc1N0YXRpc3RpY3MobGFyZ2VzdCsxKTsKQEAgLTU5LDcg KzQ2LDcgQEAKICAJCXsKICAJCQl2ZWN0b3I8SGFsZk9wZW5Db25lPENpcmN1aXRUYWJsZUludDMy PiA+IGY7CiAgCQkJdmVjdG9yPGdmYW46Ok1hdHJpeDxDaXJjdWl0VGFibGVJbnQzMj4gPiBjb25m aWd1cmF0aW9ucz1jb252ZXJ0TWF0cml4VmVjdG9yVChNaXhlZFZvbHVtZUV4YW1wbGVzOjpjeWNs aWMoaykpOwotQEAgLTEzMzMsMTEgKzEzMzYsNyBAQCBpZigwKQkJCXsKK0BAIC0xMzM5LDExICsx MzQyLDcgQEAgaWYoMCkJCQl7CiAgCQkgIHsKICAJCQkgIG91dHB1dE5hbWU9b3V0cHV0TmFtZSsi TmV3IjsKICAJCSAgfQpAQCAtNzIsNyArNTksNyBAQAogIAkJICBzdHJpbmcgY29tbWFuZDM9ImNh dCA8IitpbnB1dCsifCIrc3RyaW5nKGNvbW1hbmQyKSsiPiIrb3V0cHV0TmFtZTsKICAJCSAgY2Vy cjw8IlJ1bm5pbmcgY29tbWFuZDpcIiI8PGNvbW1hbmQzPDwiXCIiPDxlbmRsOwogIAkJICBlcnJ8 PXN5c3RlbShjb21tYW5kMy5jX3N0cigpKTsKLUBAIC0xMzUxLDI0ICsxMzUwLDE3IEBAIGlmKDAp CQkJeworQEAgLTEzNTcsMjQgKzEzNTYsMTcgQEAgaWYoMCkJCQl7CiAgCiAgICBsaXN0PHN0cmlu Zz4gc3ViRm9sZGVyTmFtZXMoKQogICAgewpAQCAtMTA1LDE3ICs5Miw4IEBACiAgCSAgcmV0dXJu IHJldDsKICAgIH0KICAKLUBAIC0xMzc5LDcgKzEzNzEsNyBAQCBpZigwKQkJCXsKLSAvLwkJICBn ZmFuOjpNYXRyaXg8Q2lyY3VpdFRhYmxlSW50ZWdlcj46OnJlYWRNYXRyaXgoY2luLDQpOwotIAkg IH0KLSAKLS0JICBpZihkZXZlbG9wZXJUZXN0T3B0aW9uLmdldFZhbHVlKCkhPSJ0ZXN0c3VpdGUi KQotKwkgIGlmKHN0cmNtcChkZXZlbG9wZXJUZXN0T3B0aW9uLmdldFZhbHVlKCksInRlc3RzdWl0 ZSIpICE9IDApCi0gCSAgewotIC8vICAgIGxwUmF0aW9uYWxGdW5jdGlvblRlc3QoKTsKLSAvLyAg ICB0ZXN0UmF0aW9uYWxGdW5jdGlvbkZpZWxkKCk7Ci0tLS0gZ2ZhbjAuNy9zcmMvYmVyZ21hbi5j cHAub3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcv c3JjL2JlcmdtYW4uY3BwCTIwMjQtMDgtMTIgMTE6MDU6NDUuNzIxMzIwMjE4IC0wNjAwCistLS0g Z2ZhbjAuOGJldGEvc3JjL2JlcmdtYW4uY3BwLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4wMDAw MDAwMDAgLTA2MDAKKysrKyBnZmFuMC44YmV0YS9zcmMvYmVyZ21hbi5jcHAJMjAyNi0wNi0xMSAx MTo0MzoxMC4yNzUxNTk0NzIgLTA2MDAKIEBAIC0zMjcsNyArMzI3LDcgQEAgbG9nMCBBc2NpaVBy aW50ZXIoU3RkZXJyKS5wcmludFBvbHlub21pYQogICAgICAgIGlmKGRvZXNQZXJtdXRhdGlvbkZp eENvbmUoKmopKW51bUZpeGVkKys7CiAgICAgIApAQCAtMTI1LDggKzEwMyw4IEBACiAgICB9CiAg CiAgICB2b2lkIG1hcmtGYWNldChJbnRlZ2VyVmVjdG9yIGNvbnN0ICZyZWxJbnRSaWRnZVZlY3Rv cikKLS0tLSBnZmFuMC43L3NyYy9icmVhZHRoZmlyc3RzZWFyY2guY3BwLm9yaWcJMjAyNC0wOC0x MiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3NyYy9icmVhZHRoZmlyc3Rz ZWFyY2guY3BwCTIwMjQtMDgtMTIgMTE6MDU6NDUuNzIyMzIwMjA0IC0wNjAwCistLS0gZ2ZhbjAu OGJldGEvc3JjL2JyZWFkdGhmaXJzdHNlYXJjaC5jcHAub3JpZwkyMDI2LTA1LTA3IDE0OjA2OjA3 LjAwMDAwMDAwMCAtMDYwMAorKysrIGdmYW4wLjhiZXRhL3NyYy9icmVhZHRoZmlyc3RzZWFyY2gu Y3BwCTIwMjYtMDYtMTEgMTE6NDM6MTAuMjc1NTEwMTU1IC0wNjAwCiBAQCAtMjYwLDcgKzI2MCw3 IEBAIHB1YmxpYzoKICAgICAgICB9CiAgCkBAIC0xMzYsOCArMTE0LDggQEAKICAgIH0KICB9Owog IAotLS0tIGdmYW4wLjcvc3JjL2JzcHRyZWUuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4w MDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3NyYy9ic3B0cmVlLmNwcAkyMDI0LTA4LTEyIDEx OjA1OjQ1LjcyMjMyMDIwNCAtMDYwMAorLS0tIGdmYW4wLjhiZXRhL3NyYy9ic3B0cmVlLmNwcC5v cmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEv c3JjL2JzcHRyZWUuY3BwCTIwMjYtMDYtMTEgMTE6NDM6MTAuMjc1ODMwNTkyIC0wNjAwCiBAQCAt MTMxLDcgKzEzMSw4IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgIHA9JihpLT5maXJzdCk7CiAg ICAgICAgICAgICAgfQpAQCAtMTQ4LDggKzEyNiw4IEBACiAgICAgIH0KICAgICAgcmV0dXJuIG5v cm1hbDsKICAgICAgfQotLS0tIGdmYW4wLjcvc3JjL2VudW1lcmF0aW9uLmgub3JpZwkyMDI0LTA4 LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcvc3JjL2VudW1lcmF0aW9u LmgJMjAyNC0wOC0xMiAxMTowNTo0NS43MjIzMjAyMDQgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9z cmMvZW51bWVyYXRpb24uaC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAw CisrKysgZ2ZhbjAuOGJldGEvc3JjL2VudW1lcmF0aW9uLmgJMjAyNi0wNi0xMSAxMTo0MzoxMC4y NzYxMTUwMDIgLTA2MDAKIEBAIC0zNiw3ICszNiw3IEBAIGNsYXNzIEVudW1lcmF0aW9uRmlsZVBy aW50ZXI6IHB1YmxpYyBFbnUKICAgIEZJTEUgKmZpbGU7CiAgIHB1YmxpYzoKQEAgLTE2Nyw4ICsx NDUsOCBAQAogICAgdm9pZCBzZXRFbnVtZXJhdGlvblRhcmdldChFbnVtZXJhdGlvblRhcmdldCAq dGFyZ2V0KXt0aGlzLT50YXJnZXQ9dGFyZ2V0O30KICAgIHZpcnR1YWwgdm9pZCBlbnVtZXJhdGUo Y29uc3QgUG9seW5vbWlhbFNldCAmZ3JvZWJuZXJCYXNpcyl7fQogIH07Ci0tLS0gZ2ZhbjAuNy9z cmMvZmllbGQuaC5vcmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysg Z2ZhbjAuNy9zcmMvZmllbGQuaAkyMDI0LTA4LTEzIDEwOjQ4OjQxLjQzODgzMDg3OCAtMDYwMAor LS0tIGdmYW4wLjhiZXRhL3NyYy9maWVsZC5oLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4wMDAw MDAwMDAgLTA2MDAKKysrKyBnZmFuMC44YmV0YS9zcmMvZmllbGQuaAkyMDI2LTA2LTExIDExOjQz OjEwLjI3NjM0NjMyMyAtMDYwMAogQEAgLTIwNyw3ICsyMDcsNyBAQCBjbGFzcyBGaWVsZEVsZW1l bnRJbXBsZW1lbnRhdGlvbgogICAgdmlydHVhbCBpbnQgZ2V0SW50ZWdlclJlcHJlc2VudGF0aW9u KCljb25zdAogICAgewpAQCAtMTk2LDggKzE3NCw4IEBACiAgICB9CiAgICAgIHZpcnR1YWwgaW50 IGdldENoYXJhY3RlcmlzdGljKCljb25zdD0wOwogICAgICB2aXJ0dWFsIGNvbnN0IGNoYXIgKm5h bWUoKT0wOwotLS0tIGdmYW4wLjcvc3JjL2ZpZWxkX3JhdGlvbmFsZnVuY3Rpb25zMi5jcHAub3Jp ZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcvc3JjL2Zp ZWxkX3JhdGlvbmFsZnVuY3Rpb25zMi5jcHAJMjAyNC0wOC0xMyAxMDo0OToxNS45MDk0MTEyNTkg LTA2MDAKKy0tLSBnZmFuMC44YmV0YS9zcmMvZmllbGRfcmF0aW9uYWxmdW5jdGlvbnMyLmNwcC5v cmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEv c3JjL2ZpZWxkX3JhdGlvbmFsZnVuY3Rpb25zMi5jcHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4yNzY2 MTQzNzIgLTA2MDAKIEBAIC01MDksNyArNTA5LDcgQEAgY2xhc3MgRmllbGRFbGVtZW50UmF0aW9u YWxGdW5jdGlvbjIgOiBwdQogIAogICAgc3RhdGljIHN0cmluZyBMYVRlWFRyYW5zbGF0b3IoY29u c3Qgc3RyaW5nICZzKQpAQCAtMjA3LDkgKzE4NSw5IEBACiAgLyogICAgaW50IHN0YXJ0SW5kZXg9 MDsKICAgICAgc3RyaW5nIHNpZ247CiAgICAgIGlmKHNbMF09PSctJykKLS0tLSBnZmFuMC43L3Ny Yy9maWVsZF9yYXRpb25hbHMuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAg LTA2MDAKLSsrKyBnZmFuMC43L3NyYy9maWVsZF9yYXRpb25hbHMuY3BwCTIwMjQtMDgtMTIgMTM6 NTY6MTUuMTYzNTYxMjU2IC0wNjAwCi1AQCAtMzk3LDcgKzM5Nyw3IEBAIGNvbnN0IGNoYXIgKkZp ZWxkUmF0aW9uYWxzSW1wbGVtZW50YXRpb24KKy0tLSBnZmFuMC44YmV0YS9zcmMvZmllbGRfcmF0 aW9uYWxzLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysg Z2ZhbjAuOGJldGEvc3JjL2ZpZWxkX3JhdGlvbmFscy5jcHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4y NzY5MjQ2ODAgLTA2MDAKK0BAIC00MDQsNyArNDA0LDcgQEAgY29uc3QgY2hhciAqRmllbGRSYXRp b25hbHNJbXBsZW1lbnRhdGlvbgogIAogIC8qRmllbGRSYXRpb25hbHM6OkZpZWxkUmF0aW9uYWxz KCk6CiAgICBGaWVsZChuZXcgRmllbGRSYXRpb25hbHNJbXBsZW1lbnRhdGlvbigpKQpAQCAtMjE4 LDggKzE5Niw4IEBACiAgICAvKiAgZnByaW50ZihTdGRlcnIsIkFkZGluZyBmaWVsZCByYXRpb25h bHNcbiIpOwogICAgbmV4dD1saXN0OwogICAgbGlzdD10aGlzOwotLS0tIGdmYW4wLjcvc3JjL2dm YW5saWJfbWF0cml4Lmgub3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAot KysrIGdmYW4wLjcvc3JjL2dmYW5saWJfbWF0cml4LmgJMjAyNC0wOC0xMiAxMzozMTozNS41NjY2 OTIwNzQgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9zcmMvZ2ZhbmxpYl9tYXRyaXguaC5vcmlnCTIw MjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL2dm YW5saWJfbWF0cml4LmgJMjAyNi0wNi0xMSAxMTo0MzoxMC4yNzcyMzQ3NTggLTA2MDAKIEBAIC00 NSw3ICs0NSw3IEBAIHRlbXBsYXRlIDxjbGFzcyBUPgogIGNsYXNzIEhhc01lbWJlclR5cGVfIyNU eXBlCiAgewpAQCAtMjI5LDIwICsyMDcsOSBAQAogIAl1c2luZyBObz1jaGFyWzFdOwogIAlzdHJ1 Y3QgRmFsbGJhY2sge3N0cnVjdCBUeXBle307fTsKICAJc3RydWN0IERlcml2ZWQ6VCxGYWxsYmFj a3t9OwotLS0tIGdmYW4wLjcvc3JjL2dmYW5saWJfbWVtb3J5cmVzb3VyY2UuaC5vcmlnCTIwMjQt MDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMvZ2ZhbmxpYl9t ZW1vcnlyZXNvdXJjZS5oCTIwMjQtMDgtMTIgMTM6MzE6MDguMjMxMDY2MDIxIC0wNjAwCi1AQCAt MzQsNyArMzQsNyBAQCB2b2lkIHRlc3QoKSB7Ci0gCS8vCQkJCSB0LmE9MDsKLSAJCQkJIGZvcihp bnQgaT0wO2k8MTAwMDAwO2krKykKLSAJCQkJCSB7Ci0tCQkJCQkJIHN0ZDo6ZXhwZXJpbWVudGFs OjpwbXI6OnZlY3RvcjxNeUludD4gQSgxMDAwMDAsdC8qCSwmc3RhY2tSZXNvdXJjZS8pOwotKwkJ CQkJCSBzdGQ6OmV4cGVyaW1lbnRhbDo6cG1yOjp2ZWN0b3I8TXlJbnQ+IEEoMTAwMDAwLHQsJnN0 YWNrUmVzb3VyY2UpOwotIAkJCQkJCSAvL0EucmVzaXplKDEwMDAwMCxNeUludHt9KTsKLSAJCQkJ CSB9Ci0gCQkJIH0KLS0tLSBnZmFuMC43L3NyYy9nZmFubGliX3N5bW1ldHJ5LmNwcC5vcmlnCTIw MjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMvZ2Zhbmxp Yl9zeW1tZXRyeS5jcHAJMjAyNC0wOC0xMiAxMTowNTo0NS43MjIzMjAyMDQgLTA2MDAKLUBAIC00 MjMsNyArNDIzLDcgQEAgaW50IFN5bW1ldHJ5R3JvdXA6Om9yYml0U2l6ZShaVmVjdG9yIGNvbgor LS0tIGdmYW4wLjhiZXRhL3NyYy9nZmFubGliX3N5bW1ldHJ5LmNwcC5vcmlnCTIwMjYtMDUtMDcg MTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL2dmYW5saWJfc3lt bWV0cnkuY3BwCTIwMjYtMDYtMTEgMTE6NDM6MTAuMjc3ODAwMzQxIC0wNjAwCitAQCAtNDg0LDcg KzQ4NCw3IEBAIGludCBTeW1tZXRyeUdyb3VwOjpvcmJpdFNpemUoWlZlY3RvciBjb24KICAgICAg ICAgICAgaWYoZG9lc0ZpeCludW1GaXhlZCsrOwogICAgICAgICAgfQogICAgICB9CkBAIC0yNTEs OSArMjE4LDkgQEAKICB9CiAgCiAgCi0tLS0gZ2ZhbjAuNy9zcmMvZ2ZhbmxpYl90YWJsZWF1Lmgu b3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcvc3Jj L2dmYW5saWJfdGFibGVhdS5oCTIwMjQtMDgtMTMgMTA6NTk6MjEuMDE2MDQ1MTQzIC0wNjAwCi1A QCAtODQ1LDcgKzg0NSw3IEBAIHRlbXBsYXRlIDxjbGFzcyBtdnR5cD4gY2xhc3MgVGFibGVhdXsK Ky0tLSBnZmFuMC44YmV0YS9zcmMvZ2ZhbmxpYl90YWJsZWF1Lmgub3JpZwkyMDI2LTA1LTA3IDE0 OjA2OjA3LjAwMDAwMDAwMCAtMDYwMAorKysrIGdmYW4wLjhiZXRhL3NyYy9nZmFubGliX3RhYmxl YXUuaAkyMDI2LTA2LTExIDExOjQzOjEwLjI3ODI2Njk2MCAtMDYwMAorQEAgLTg0Niw3ICs4NDYs NyBAQCB0ZW1wbGF0ZSA8Y2xhc3MgbXZ0eXA+IGNsYXNzIFRhYmxlYXV7CiAgCQkJCQlyZXR1cm4g dHJ1ZTsvL2JyZWFrOyAvL0lmIHRoaXMgaXMgcmVhY2hlZCB3ZSBhcmUgb2sKICAJCQkJfQogIAkJ CX0KQEAgLTI2Miw3ICsyMjksNyBAQAogIAkJfQogIAkJdm9pZCBjaGVja0luTGV4VHJpYW5ndWxh dGlvbigpCiAgCQl7Ci1AQCAtMzA1OSw3ICszMDU5LDcgQEAgc3RhdGljIGJvb2wgaXNTdWJzZXRP Zih2ZWN0b3I8aW50PiBjb25zdAorQEAgLTMxNzgsNyArMzE3OCw3IEBAIHN0YXRpYyBib29sIGlz U3Vic2V0T2YodmVjdG9yPGludD4gY29uc3QKICAvLwkJICAgIHBvbHltYWtlRmlsZS53cml0ZUNh cmRpbmFsUHJvcGVydHkoIkRJTSIsZ2V0TWF4RGltKCkpOwogIAkJICAgIHBvbHltYWtlRmlsZS53 cml0ZUNhcmRpbmFsUHJvcGVydHkoIkxJTkVBTElUWV9ESU0iLGxpbmVhbGl0eVNwYWNlLmdldEhl aWdodCgpKTsKICAvLwkJICAgIGlmKGZsYWdzJiZGUEZfYm91bmRlZEluZm8pcG9seW1ha2VGaWxl LndyaXRlTWF0cml4UHJvcGVydHkoIlJBWVMiLHRvWk1hdHJpeCh2ZXJ0aWNlcyksdHJ1ZSk7Ly8/ Pz8/Pz8KQEAgLTI3MSwxOSArMjM4LDggQEAKICAJCSAgICBwb2x5bWFrZUZpbGUud3JpdGVDYXJk aW5hbFByb3BlcnR5KCJOX1JBWVMiLHZlcnRpY2VzLmdldEhlaWdodCgpKTsKICAKICAJCSAgICBw b2x5bWFrZUZpbGUud3JpdGVNYXRyaXhQcm9wZXJ0eSgiTElORUFMSVRZX1NQQUNFIix0b1pNYXRy aXgobGluZWFsaXR5U3BhY2UpLGFtYmllbnREaW1lbnNpb24pOwotLS0tIGdmYW4wLjcvc3JjL2dm YW5saWJfemNvbmUuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAK LSsrKyBnZmFuMC43L3NyYy9nZmFubGliX3pjb25lLmNwcAkyMDI0LTA4LTEyIDExOjA1OjQ1Ljcy MzMyMDE5MCAtMDYwMAotQEAgLTE2LDggKzE2LDggQEAKLSAjaW5jbHVkZSAic2V0b3Blci5oIgot ICNpbmNsdWRlICJjZGQuaCIKLSAjZWxzZQotLSNpbmNsdWRlICJjZGQvc2V0b3Blci5oIgotLSNp bmNsdWRlICJjZGQvY2RkLmgiCi0rI2luY2x1ZGUgImNkZGxpYi9zZXRvcGVyLmgiCi0rI2luY2x1 ZGUgImNkZGxpYi9jZGQuaCIKLSAjZW5kaWYKLSAvL30KLSAKKy0tLSBnZmFuMC44YmV0YS9zcmMv Z2ZhbmxpYl96Y29uZS5jcHAub3JpZwkyMDI2LTA1LTA3IDE0OjA2OjA3LjAwMDAwMDAwMCAtMDYw MAorKysrIGdmYW4wLjhiZXRhL3NyYy9nZmFubGliX3pjb25lLmNwcAkyMDI2LTA2LTExIDExOjQz OjEwLjI3ODcyODkxMSAtMDYwMAogQEAgLTUyLDggKzUyLDggQEAgbmFtZXNwYWNlIGdmYW57CiAg CQkJCSAgImRkX2ZyZWVfZ2xvYmFsX2NvbnN0YW50cygpXG4iCiAgCQkJCSAgImluIHlvdXIgZGVp bml0aWFsaXNhdGlvbiBjb2RlIChvbmx5IGF2YWlsYWJsZSBmb3IgY2RkbGliIHZlcnNpb24+PTA5 NGQpLlxuIgpAQCAtMjk1LDkgKzI1MSw5IEBACiAgCQkJCSAgIlxuIgogIAkJCQkgICJBbHRlcm5h dGl2ZWx5LCB5b3UgbWF5IGNhbGwgZ2Zhbjppbml0aWFsaXplQ2RkbGliSWZSZXF1aXJlZCgpIGFu ZCBkZWluaXRpYWxpemVDZGRsaWJJZlJlcXVpcmVkKClcbiIKICAJCQkJICAiaWYgZ2ZhbmxpYiBp cyB0aGUgb25seSBjb2RlIHVzaW5nIGNkZGxpYi4gSWYgYXQgc29tZSBwb2ludCBjZGRsaWIgaXMg bm8gbG9uZ2VyIHJlcXVpcmVkIGJ5IGdmYW5saWJcbiIKLS0tLSBnZmFuMC43L3NyYy9nZmFubGli X3ouaC5vcmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAu Ny9zcmMvZ2ZhbmxpYl96LmgJMjAyNC0wOC0xMiAxMzo1Mzo0MS40Mjk2MzEyNDggLTA2MDAKLUBA IC0yMTgsMTcgKzIxOCwxNyBAQCBuYW1lc3BhY2UgZ2ZhbnsKKy0tLSBnZmFuMC44YmV0YS9zcmMv Z2ZhbmxpYl96Lmgub3JpZwkyMDI2LTA1LTA3IDE0OjA2OjA3LjAwMDAwMDAwMCAtMDYwMAorKysr IGdmYW4wLjhiZXRhL3NyYy9nZmFubGliX3ouaAkyMDI2LTA2LTExIDExOjQzOjEwLjI3OTAwNjQ5 OCAtMDYwMAorQEAgLTI0OSwxNyArMjQ5LDE3IEBAIHN0YXRpYyBzdGQ6OnN0cmluZyBtcHpUb1N0 cmluZyhjb25zdCBfX20KICAgIHsKICAJICByZXR1cm4gISgoKGxvbmcgaW50KSh2YWx1ZS0+X21w X2QpKSYxKTsKICAgIH0KQEAgLTMxOSwyMyArMjc1LDggQEAKICAgIHsKICAJICBhc3NlcnQoIWhh c0xpbWJzKCkpOwogIAkgIHJldHVybiBpbnQzMl90KHZhbHVlWzBdLl9tcF9hbGxvYyk7Ci0tLS0g Z2ZhbjAuNy9zcmMvbHBfY2RkLmNwcC5vcmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAw IC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMvbHBfY2RkLmNwcAkyMDI0LTA4LTEyIDExOjA1OjQ1Ljcy NDMyMDE3NyAtMDYwMAotQEAgLTUsOSArNSw5IEBACi0gI2luY2x1ZGUgImNkZC5oIgotICNpbmNs dWRlICJjZGRfZi5oIgotICNlbHNlCi0tI2luY2x1ZGUgImNkZC9zZXRvcGVyLmgiCi0tI2luY2x1 ZGUgImNkZC9jZGQuaCIKLS0jaW5jbHVkZSAiY2RkL2NkZF9mLmgiCi0rI2luY2x1ZGUgImNkZGxp Yi9zZXRvcGVyLmgiCi0rI2luY2x1ZGUgImNkZGxpYi9jZGQuaCIKLSsjaW5jbHVkZSAiY2RkbGli L2NkZF9mLmgiCi0gI2VuZGlmCi0gLy99Ci0gI2luY2x1ZGUgInRlcm1vcmRlci5oIgotLS0tIGdm YW4wLjcvc3JjL2xwLmNwcC5vcmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAw Ci0rKysgZ2ZhbjAuNy9zcmMvbHAuY3BwCTIwMjQtMDgtMTMgMTA6NDk6NTAuMzU3OTkxOTA5IC0w NjAwCistLS0gZ2ZhbjAuOGJldGEvc3JjL2xwLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcu MDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL2xwLmNwcAkyMDI2LTA2LTExIDEx OjQzOjEwLjI3OTI0ODgxOSAtMDYwMAogQEAgLTU4LDcgKzU4LDcgQEAgYm9vbCBMcFNvbHZlcjo6 aW50ZXJpb3JQb2ludChjb25zdCBJbnRlZwogIGJvb2wgTHBTb2x2ZXI6Omhhc0ludGVyaW9yUG9p bnQoY29uc3QgSW50ZWdlclZlY3Rvckxpc3QgJmcsIGJvb2wgc3RyaWN0bHlQb3NpdGl2ZSwgSW50 ZWdlclZlY3RvciBjb25zdCAqZXF1YWxpdHlTZXQpCiAgewpAQCAtMzU0LDggKzI5NSw4IEBACiAg fQogIAogIHN0YXRpYyBMcFNvbHZlciAqc29wbGV4LCpzb3BsZXhDZGRHbXAsKmh1YmVyLCpjZGQs KmNkZGdtcCwqZGVmYXVsdF87Ci0tLS0gZ2ZhbjAuNy9zcmMvbHBfc29wbGV4Y2RkLmNwcC5vcmln CTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9zcmMvbHBf c29wbGV4Y2RkLmNwcAkyMDI0LTA4LTEyIDEzOjM0OjA3LjA0MzYxOTg4NiAtMDYwMAorLS0tIGdm YW4wLjhiZXRhL3NyYy9scF9zb3BsZXhjZGQuY3BwLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4w MDAwMDAwMDAgLTA2MDAKKysrKyBnZmFuMC44YmV0YS9zcmMvbHBfc29wbGV4Y2RkLmNwcAkyMDI2 LTA2LTExIDExOjQzOjEwLjI3OTQ1Nzc1OCAtMDYwMAogQEAgLTMwNiw3ICszMDYsNyBAQCBzdGF0 aWMgYm9vbCBpc0luZmVhc2liaWxpdHlDZXJ0aWZpY2F0ZShJCiAgICByZXR1cm4gdHJ1ZTsKICB9 CkBAIC0zNjUsOCArMzA2LDggQEAKICAJCSAvKgkJIGRvdWJsZSBwcm9kPTA7CiAgCQkgZm9yKGlu dCBpPTA7aTx3b3JrLm5Sb3dzKCk7aSsrKQogIAkJICAge3Byb2QrPSgqailbaV0qY2VydGlmaWNh dGVbaV07Ci0tLS0gZ2ZhbjAuNy9zcmMvbW9ub21pYWwuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDow MDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3NyYy9tb25vbWlhbC5jcHAJMjAyNC0w OC0xMiAxMzo0MTozMS41NTg1MzkxMzMgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9zcmMvbW9ub21p YWwuY3BwLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4wMDAwMDAwMDAgLTA2MDAKKysrKyBnZmFu MC44YmV0YS9zcmMvbW9ub21pYWwuY3BwCTIwMjYtMDYtMTEgMTE6NDk6MDAuNDY4NDU1Mjk0IC0w NjAwCiBAQCAtNSw3ICs1LDcgQEAKICAKICBNb25vbWlhbDo6TW9ub21pYWwoUG9seW5vbWlhbFJp bmcgY29uc3QgJnIsY29uc3QgSW50ZWdlclZlY3RvciAmdik6ZXhwb25lbnQodiksdGhlUmluZyhy KQpAQCAtMzgwLDEzICszMjEsMTMgQEAKICAgIGNvbnN0IGludCBzaWduPTE7CiAgCiAgICBib29s IHZhcmlhYmxlUHJpbnRlZD1mYWxzZTsKLS0gIGZvcihpbnQgaT0wO2k8ZXhwb25lbnQuc2l6ZSgp O2krKylpZihleHBvbmVudFtpXSpzaWduPjApCi0rICBmb3IoaW50IGk9MDsoc2l6ZV90KWk8ZXhw b25lbnQuc2l6ZSgpO2krKylpZihleHBvbmVudFtpXSpzaWduPjApCistICBmb3IoaW50IGk9MDtp PGV4cG9uZW50LnNpemUoKTtpKyspaWYoZXhwb25lbnRbaV0qc2lnbiE9MCkKKysgIGZvcihpbnQg aT0wOyhzaXplX3QpaTxleHBvbmVudC5zaXplKCk7aSsrKWlmKGV4cG9uZW50W2ldKnNpZ24hPTAp CiAgICAgIHsKICAgICAgICBzIDw8IGdldFJpbmcoKS5nZXRWYXJpYWJsZU5hbWUoaSk7CiAgICAg ICAgaWYoaW50KGV4cG9uZW50W2ldKnNpZ24pIT0xKQotLS0tIGdmYW4wLjcvc3JjL25ib2R5LmNw cC5vcmlnCTIwMjQtMDgtMTIgMTA6MDA6MTUuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ2ZhbjAuNy9z cmMvbmJvZHkuY3BwCTIwMjQtMDgtMTMgMTA6NTA6MDguNTU3NzcwMzYxIC0wNjAwCistLS0gZ2Zh bjAuOGJldGEvc3JjL25ib2R5LmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAw IC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL25ib2R5LmNwcAkyMDI2LTA2LTExIDExOjQzOjEw LjI3OTk5MDIyMCAtMDYwMAogQEAgLTE2LDcgKzE2LDcgQEAgc3RhdGljIGludCBySW5kZXgoaW50 IGksIGludCBqLCBpbnQgTiwgYgogIAlpZigoST09aSkmJihKPT1qKSlyZXR1cm4gcjsKICAJcisr OwpAQCAtMzk2LDggKzMzNyw4IEBACiAgfQogIAogIHN0YXRpYyBpbnQgc0luZGV4KGludCBpLCBp bnQgaiwgaW50IE4sIGJvb2wgd2l0aE1hc3NlcykKLS0tLSBnZmFuMC43L3NyYy9wYWNrZWRtb25v bWlhbC5jcHAub3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdm YW4wLjcvc3JjL3BhY2tlZG1vbm9taWFsLmNwcAkyMDI0LTA4LTEzIDEwOjUwOjI1LjM4MDU2NTU3 MyAtMDYwMAorLS0tIGdmYW4wLjhiZXRhL3NyYy9wYWNrZWRtb25vbWlhbC5jcHAub3JpZwkyMDI2 LTA1LTA3IDE0OjA2OjA3LjAwMDAwMDAwMCAtMDYwMAorKysrIGdmYW4wLjhiZXRhL3NyYy9wYWNr ZWRtb25vbWlhbC5jcHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4yODAyMjcwMTEgLTA2MDAKIEBAIC0x OCw3ICsxOCw3IEBAIHZlY3RvcjxNb25vbWlhbFR5cGU+IG1pbmltaXplZCh2ZWN0b3I8TW8KICB7 CiAgCXZlY3RvcjxNb25vbWlhbFR5cGU+IHRlbXAoZ2VuZXJhdG9ycyk7CkBAIC00MDcsOSArMzQ4 LDkgQEAKICAvLwlzb3J0KHRlbXAuYmVnaW4oKSx0ZW1wLmVuZCgpKTsKICAvKglnLT5zb3J0KHBv bHlub21pYWxPcmRlcihMZXhpY29ncmFwaGljVGVybU9yZGVyKCkpKTsKICAKLS0tLSBnZmFuMC43 L3NyYy9wYXJzZXIuY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAK LSsrKyBnZmFuMC43L3NyYy9wYXJzZXIuY3BwCTIwMjQtMDgtMTMgMTA6NTA6NDEuNzE2MzY2NzE1 IC0wNjAwCi1AQCAtNjM3LDcgKzYzNyw3IEBAIEZpZWxkIENoYXJhY3RlckJhc2VkUGFyc2VyOjpw YXJzZUZpZWxkKCkKKy0tLSBnZmFuMC44YmV0YS9zcmMvcGFyc2VyLmNwcC5vcmlnCTIwMjYtMDUt MDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL3BhcnNlci5j cHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4yODA0NDk2ODYgLTA2MDAKK0BAIC02MzksNyArNjM5LDcg QEAgRmllbGQgQ2hhcmFjdGVyQmFzZWRQYXJzZXI6OnBhcnNlRmllbGQoKQogICAgICB9CiAgCiAg ICBwYXJzZXJFcnJvcigiZmllbGQiLGMpOwpAQCAtNDE4LDggKzM1OSw4IEBACiAgfQogIAogIAot LS0tIGdmYW4wLjcvc3JjL3BvbHloZWRyYWxmYW4uY3BwLm9yaWcJMjAyNC0wOC0xMiAxMDowMDox NS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3NyYy9wb2x5aGVkcmFsZmFuLmNwcAkyMDI0 LTA4LTEzIDEwOjUxOjA4LjA2MTA0NjAwOSAtMDYwMAorLS0tIGdmYW4wLjhiZXRhL3NyYy9wb2x5 aGVkcmFsZmFuLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisr KysgZ2ZhbjAuOGJldGEvc3JjL3BvbHloZWRyYWxmYW4uY3BwCTIwMjYtMDYtMTEgMTE6NDM6MTAu MjgwNzA5NzkxIC0wNjAwCiBAQCAtMTY3MSw3ICsxNjcxLDcgQEAgUG9seWhlZHJhbENvbmUgUG9s eWhlZHJhbEZhbjo6Y29uZUNvbnRhaQogICAgZm9yKFBvbHloZWRyYWxDb25lTGlzdDo6Y29uc3Rf aXRlcmF0b3IgaT1jb25lcy5iZWdpbigpO2khPWNvbmVzLmVuZCgpO2krKykKICAgICAgaWYoaS0+ Y29udGFpbnModikpcmV0dXJuIGktPmZhY2VDb250YWluaW5nKHYpOwpAQCAtNDI5LDggKzM3MCw4 IEBACiAgfQogIAogIAotLS0tIGdmYW4wLjcvc3JjL3BvbHltYWtlZmlsZS5jcHAub3JpZwkyMDI0 LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcvc3JjL3BvbHltYWtl ZmlsZS5jcHAJMjAyNC0wOC0xMyAxMDo1MTo0Ny4yOTk1NjgzNTEgLTA2MDAKKy0tLSBnZmFuMC44 YmV0YS9zcmMvcG9seW1ha2VmaWxlLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAw MDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL3BvbHltYWtlZmlsZS5jcHAJMjAyNi0wNi0x MSAxMTo0MzoxMC4yODEwMDU1NzEgLTA2MDAKIEBAIC0zMjgsNyArMzI4LDcgQEAgdm9pZCBQb2x5 bWFrZUZpbGU6OndyaXRlTWF0cml4UHJvcGVydHkoYwogIAogIEludGVnZXJNYXRyaXggUG9seW1h a2VGaWxlOjpyZWFkQXJyYXlBcnJheUludFByb3BlcnR5KGNvbnN0IGNoYXIgKnAsIGludCB3aWR0 aCkKQEAgLTQ0OSw4ICszOTAsOCBAQAogICAgICB7CiAgICAgICAgLy8gICAgICBmcHJpbnRmKFN0 ZGVyciwiP1xuIik7CiAgICAgICAgaW50IHI7Ci0tLS0gZ2ZhbjAuNy9zcmMvc3ltbWV0cnkuY3Bw Lm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFuMC43L3Ny Yy9zeW1tZXRyeS5jcHAJMjAyNC0wOC0xMiAxMTowNTo0NS43MjQzMjAxNzcgLTA2MDAKKy0tLSBn ZmFuMC44YmV0YS9zcmMvc3ltbWV0cnkuY3BwLm9yaWcJMjAyNi0wNS0wNyAxNDowNjowNy4wMDAw MDAwMDAgLTA2MDAKKysrKyBnZmFuMC44YmV0YS9zcmMvc3ltbWV0cnkuY3BwCTIwMjYtMDYtMTEg MTE6NDM6MTAuMjgxMjQyOTM0IC0wNjAwCiBAQCAtNTgwLDcgKzU4MCw3IEBAIGludCBTeW1tZXRy eUdyb3VwOjpvcmJpdFNpemUoSW50ZWdlclZlY3QKICAgICAgICAgICAgaWYoZG9lc0ZpeCludW1G aXhlZCsrOwogICAgICAgICAgfQpAQCAtNDYwLDggKzQwMSw4IEBACiAgfQogIAogIAotLS0tIGdm YW4wLjcvc3JjL3Zla3Rvci5jcHAub3JpZwkyMDI0LTA4LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAt MDYwMAotKysrIGdmYW4wLjcvc3JjL3Zla3Rvci5jcHAJMjAyNC0wOC0xMiAxMzozNzozNC4wMTc3 ODg1NjAgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9zcmMvdmVrdG9yLmNwcC5vcmlnCTIwMjYtMDUt MDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL3Zla3Rvci5j cHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4yODE0OTQxOTIgLTA2MDAKIEBAIC05NiwxNyArOTYsMTcg QEAgaW50IGdjZEdGQU4oaW50IHIsIGludCBzKQogIGludCBnY2RPZlZlY3RvcihJbnRlZ2VyVmVj dG9yIGNvbnN0ICZ2KQogIHsKQEAgLTQ4Myw4ICs0MjQsOCBAQAogIAkgIHsKICAJICByZXQ9Z2Nk R0ZBTihyZXQsdltpXSk7CiAgCSAgaWYocmV0PT0xKWJyZWFrOwotLS0tIGdmYW4wLjcvc3JjL3Zl a3Rvci5oLm9yaWcJMjAyNC0wOC0xMiAxMDowMDoxNS4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnZmFu MC43L3NyYy92ZWt0b3IuaAkyMDI0LTA4LTEyIDE0OjU2OjMxLjMyODE3NjUwMiAtMDYwMAorLS0t IGdmYW4wLjhiZXRhL3NyYy92ZWt0b3IuaC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAw MDAwIC0wNjAwCisrKysgZ2ZhbjAuOGJldGEvc3JjL3Zla3Rvci5oCTIwMjYtMDYtMTEgMTE6NDM6 MTAuMjgxNzI4ODY5IC0wNjAwCiBAQCAtMSw2ICsxLDcgQEAKICAjaWZuZGVmIFZFS1RPUl9IX0lO Q0xVREVECiAgI2RlZmluZSBWRUtUT1JfSF9JTkNMVURFRApAQCAtODAwLDggKzc0MSw4IEBACiAg ICAgIH0KICB9OwogIAotLS0tIGdmYW4wLjcvc3JjL3dhbGxpZGVhbC5jcHAub3JpZwkyMDI0LTA4 LTEyIDEwOjAwOjE1LjAwMDAwMDAwMCAtMDYwMAotKysrIGdmYW4wLjcvc3JjL3dhbGxpZGVhbC5j cHAJMjAyNC0wOC0xMiAxMzozMDoxMC4wODc4NjE0MTcgLTA2MDAKKy0tLSBnZmFuMC44YmV0YS9z cmMvd2FsbGlkZWFsLmNwcC5vcmlnCTIwMjYtMDUtMDcgMTQ6MDY6MDcuMDAwMDAwMDAwIC0wNjAw CisrKysgZ2ZhbjAuOGJldGEvc3JjL3dhbGxpZGVhbC5jcHAJMjAyNi0wNi0xMSAxMTo0MzoxMC4y ODIwMDc2MDggLTA2MDAKIEBAIC05NTEsNyArOTUxLDcgQEAgYm9vbCBmYXN0SXNGYWNldChJbnRl Z2VyVmVjdG9yTGlzdCBjb25zdAogIAl9CiAgCgpkaWZmIC0tZ2l0IGEvZ2Zhbi5zcGVjIGIvZ2Zh bi5zcGVjCmluZGV4IDIxMDI5YjAuLmVlNjAzZDUgMTAwNjQ0Ci0tLSBhL2dmYW4uc3BlYworKysg Yi9nZmFuLnNwZWMKQEAgLTEsMTAgKzEsMTMgQEAKKyVnbG9iYWwgYmFzZXZlciAwLjgKKyVnbG9i YWwgcHJlcmVsICBiZXRhCisKIE5hbWU6ICAgICAgICAgICBnZmFuCi1WZXJzaW9uOiAgICAgICAg MC43CitWZXJzaW9uOiAgICAgICAgJXtiYXNldmVyfX4le3ByZXJlbH0KIFJlbGVhc2U6ICAgICAg ICAlYXV0b3JlbGVhc2UKIFN1bW1hcnk6ICAgICAgICBTb2Z0d2FyZSBmb3IgQ29tcHV0aW5nIEdy w7ZibmVyIEZhbnMgYW5kIFRyb3BpY2FsIFZhcmlldGllcwogTGljZW5zZTogICAgICAgIEdQTC0y LjAtb3ItbGF0ZXIKIFVSTDogICAgICAgICAgICBodHRwczovL21hdGguYXUuZGsvfmplbnNlbi9z b2Z0d2FyZS9nZmFuL2dmYW4uaHRtbAotU291cmNlOiAgICAgICAgIGh0dHBzOi8vbWF0aC5hdS5k ay9+amVuc2VuL3NvZnR3YXJlLyV7bmFtZX0vJXtuYW1lfSV7dmVyc2lvbn0udGFyLmd6CitTb3Vy Y2U6ICAgICAgICAgaHR0cHM6Ly9tYXRoLmF1LmRrL35qZW5zZW4vc29mdHdhcmUvJXtuYW1lfS8l e25hbWV9JXtiYXNldmVyfSV7cHJlcmVsfS50YXIuZ3oKICMgU2VudCB1cHN0cmVhbSAyMDExIEFw ciAyNy4gIEZpeCB3YXJuaW5ncyB0aGF0IGNvdWxkIGluZGljYXRlIHJ1bnRpbWUKICMgcHJvYmxl bXMuCiBQYXRjaDogICAgICAgICAgJXtuYW1lfS13YXJuaW5nLnBhdGNoCkBAIC0xMywyNiArMTYs NDAgQEAgUGF0Y2g6ICAgICAgICAgICV7bmFtZX0tc2hhcmVkLnBhdGNoCiAjIEFkYXB0IHRvIHRo ZSB2ZXJzaW9uIG9mIFNvUGxleCBwYWNrYWdlZCBmb3IgRmVkb3JhCiBQYXRjaDogICAgICAgICAg JXtuYW1lfS1zb3BsZXgucGF0Y2gKICMgVGhlIEMrKzIwIHN0YW5kYXJkIGlzIHRvbyBuZXcgZm9y IFNpbmd1bGFyLCBsZWFkaW5nIHRvIG1hbnkgYnVpbGQgZmFpbHVyZXMuCi0jIFdvcmsgYXJvdW5k IHRoZSBvbmx5IHBsYWNlIGluIHRoZSBjb2RlIHRoYXQgbmVlZHMgQysrMjAuCiBQYXRjaDogICAg ICAgICAgJXtuYW1lfS1jKysyMC5wYXRjaAogIyBGaXggU2luZ3VsYXIgRlRCRlMgZHVlIHRvIG1p c3NpbmcgZ2NkIGZ1bmN0aW9uIGZvciBSYXRpb25hbAogUGF0Y2g6ICAgICAgICAgICV7bmFtZX0t Z2NkLnBhdGNoCiAjIEZpeCBTaW5ndWxhciBhYm9ydCBkdWUgdG8gYWNjZXNzaW5nIGFuIGVtcHR5 IHZlY3RvcgogUGF0Y2g6ICAgICAgICAgICV7bmFtZX0tbXVsdGlwbGljaXRpZXMucGF0Y2gKKyMg Rml4IHRlc3QgZmFpbHVyZSBkdWUgdG8gY2FsbGluZyBiYWNrKCkgb24gYW4gZW1wdHkgdmVjdG9y CitQYXRjaDogICAgICAgICAgJXtuYW1lfS1lbXB0eS1jb25lU3RhY2sucGF0Y2gKIAogIyBTZWUg aHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0NoYW5nZXMvRW5jb3VyYWdlSTY4NkxlYWZS ZW1vdmFsCiBFeGNsdWRlQXJjaDogICAgJXtpeDg2fQogCi1CdWlsZFJlcXVpcmVzOiAgY2RkbGli LWRldmVsCiBCdWlsZFJlcXVpcmVzOiAgZ2NjLWMrKwogQnVpbGRSZXF1aXJlczogIGdob3N0c2Ny aXB0LXRvb2xzLWR2aXBkZgogQnVpbGRSZXF1aXJlczogIGdsaWJjLWxhbmdwYWNrLWVuCi1CdWls ZFJlcXVpcmVzOiAgZ21wLWRldmVsCiBCdWlsZFJlcXVpcmVzOiAgbGlic29wbGV4LWRldmVsCiBC dWlsZFJlcXVpcmVzOiAgbWFrZQotQnVpbGRSZXF1aXJlczogIHRleChsYXRleCkKK0J1aWxkUmVx dWlyZXM6ICBwa2djb25maWcoY2RkbGliKQorQnVpbGRSZXF1aXJlczogIHBrZ2NvbmZpZyhnbXAp CitCdWlsZFJlcXVpcmVzOiAgcGtnY29uZmlnKHRiYikKK0J1aWxkUmVxdWlyZXM6ICB0ZXgoYTQu c3R5KQorQnVpbGRSZXF1aXJlczogIHRleChhbGx0dC5zdHkpCitCdWlsZFJlcXVpcmVzOiAgdGV4 KGFtc2ZvbnRzLnN0eSkKK0J1aWxkUmVxdWlyZXM6ICB0ZXgoYmFiZWwuc3R5KQorQnVpbGRSZXF1 aXJlczogIHRleChjb2xvci5zdHkpCitCdWlsZFJlcXVpcmVzOiAgdGV4KGVuZ2xpc2gubGRmKQor QnVpbGRSZXF1aXJlczogIHRleChlcHNmaWcuc3R5KQorQnVpbGRSZXF1aXJlczogIHRleChoeXBl cnJlZi5zdHkpCitCdWlsZFJlcXVpcmVzOiAgdGV4KGxhdGV4c3ltLnN0eSkKK0J1aWxkUmVxdWly ZXM6ICB0ZXgodGhlb3JlbS5zdHkpCiBCdWlsZFJlcXVpcmVzOiAgdGV4KHVsZW0uc3R5KQotQnVp bGRSZXF1aXJlczogIFRPUENPTQorQnVpbGRSZXF1aXJlczogIHRleCh1cmwuc3R5KQorQnVpbGRS ZXF1aXJlczogIHRleGxpdmUtYmlidGV4CitCdWlsZFJlcXVpcmVzOiAgdGV4bGl2ZS1lYworQnVp bGRSZXF1aXJlczogIHRleGxpdmUtbGF0ZXgKIAogUmVxdWlyZXM6ICAgICAgIGxpYmdmYW4le19p c2F9ID0gJXt2ZXJzaW9ufS0le3JlbGVhc2V9CiAKQEAgLTg0LDcgKzEwMSw3IEBAIFRoZSBsaWJn ZmFuLWRldmVsIHBhY2thZ2UgY29udGFpbnMgbGlicmFyaWVzIGFuZCBoZWFkZXIgZmlsZXMgZm9y IGRldmVsb3BpbmcKIGFwcGxpY2F0aW9ucyB0aGF0IHVzZSBsaWJnZmFuLgogCiAlcHJlcAotJWF1 dG9zZXR1cCAtbiAle25hbWV9JXt2ZXJzaW9ufSAtcDEKKyVhdXRvc2V0dXAgLW4gJXtuYW1lfSV7 YmFzZXZlcn0le3ByZXJlbH0gLXAxCiAKICVjb25mCiAjIFBvaW50IHRvIHdoZXJlIHRoZSBUT1BD T00gYmluYXJpZXMgd2lsbCBiZSBpbnN0YWxsZWQKQEAgLTk4LDIzICsxMTUsMTkgQEAgcm0gLWYg c3JjL21pbmtvd3NraXN1bS5jcHAub3JpZwogcm0gLWYgaG9tZXBhZ2UvTWFrZWZpbGUKIAogJWJ1 aWxkCi0jIEVuYWJsZSB1c2Ugb2YgU29QbGV4Ci1zZWQgLWUgJ3N8XlwoU09QTEVYX1BBVEggPSBc KS4qfFwxJXtfcHJlZml4fXwnIFwKLSAgICAtZSAnc3xeXChTT1BMRVhfTElOS09QVElPTlMgPSBc KS4qfFwxJXtidWlsZF9sZGZsYWdzfSAtbHNvcGxleCAtbGNsdXNvbCAtbG1wZnIgLWx0YmIgLWx6 LW5nfCcgXAotICAgIC1lICdzfF5cKFNPUExFWF9JTkNMVURFT1BUSU9OUyA9IFwpLip8XDF8JyBc Ci0gICAgLWkgTWFrZWZpbGUKLQogJW1ha2VfYnVpbGQgQ0M9Z2NjIENYWD1nKysgXAotICBPUFRG TEFHUz0nJXtidWlsZF9jeHhmbGFnc30gLURHTVBSQVRJT05BTCAtRE5ERUJVRyAtSSV7X2luY2x1 ZGVkaXJ9L2NkZGxpYicgXAorICBPUFRGTEFHUz0nJXtidWlsZF9jeHhmbGFnc30gLURHTVBSQVRJ T05BTCAtRE5ERUJVRyAtRE5PQ0REUFJFRklYIC1JJXtfaW5jbHVkZWRpcn0vY2RkbGliJyBcCisg IFBMQVRGT1JNX0xJTktPUFRJT05TPScle2J1aWxkX2xkZmxhZ3N9IC1sdGJiJyBcCiAgIFBSRUZJ WD0le19wcmVmaXh9IFwKICAgc29wbGV4PXRydWUKIAogIyBCdWlsZCB0aGUgbWFudWFsCisjIFdl IGNhbid0IGludm9rZSBwZGZsYXRleCBkaXJlY3RseSBkdWUgdG8gbm9uLVBERiBzcGVjaWFscyBp biB0aGUgc291cmNlCiBjZCBkb2MKLWxhdGV4IG1hbnVhbC50ZXgKK2xhdGV4IC1pbnRlcmFjdGlv bj1ub25zdG9wbW9kZSBtYW51YWwudGV4CiBiaWJ0ZXggbWFudWFsCi1sYXRleCBtYW51YWwudGV4 Ci1sYXRleCBtYW51YWwudGV4CitsYXRleCAtaW50ZXJhY3Rpb249bm9uc3RvcG1vZGUgbWFudWFs LnRleAorbGF0ZXggLWludGVyYWN0aW9uPW5vbnN0b3Btb2RlIG1hbnVhbC50ZXgKIGR2aXBkZiBt YW51YWwuZHZpIG1hbnVhbC5wZGYKIGNkIC0KIAoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3Vy Y2VzCmluZGV4IDY4NzlmMDIuLjg0NzZhNDMgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291 cmNlcwpAQCAtMSArMSBAQAotU0hBNTEyIChnZmFuMC43LnRhci5neikgPSBiYTczOGRkMDIxMjg4 MmEwYmU2MzA1YzdkNjAwODExMzcxNDY5NDhhMWZjMzA4ODE4ZDIxYjk0NTIwYjE2N2I2Mzg2NGNk ZjRiYzUxYjE5YTFkOWI0MDdkOTUyM2YzMTUyZGVlM2U4M2I0NDhjMjEwNzBiY2I0MzRiYjVlNDRm YworU0hBNTEyIChnZmFuMC44YmV0YS50YXIuZ3opID0gOTQxMTVlMDYyMmIwYzVjMDI5NmExMzI2 NTc2OTE4MTM4MzVlZGI3ZDE1MDEzMzI1ZGM5NTlmNTA2MDcwNDk3NTZhMWQ5MTRmZGMyYTM3ZWZl NzdlYTYxN2Q1YjFjMzBkZmFlNjE1ZWZjZDA2ZTIwMmQ4NTA0MWM5ZWI4YjlhMjIK