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: Kevin Buettner To: git-commits@fedoraproject.org Subject: [rpms/gdb] fix-dup-patch: Merge #183 `Add MIT license` Date: Thu, 23 Jul 2026 18:36:15 GMT Message-ID: <178483177541.1.2305381107127307205.rpms-gdb-a67df6f9c5ef@fedoraproject.org> List-ID: X-Git-Repo: rpms/gdb X-Git-Branch: fix-dup-patch X-Git-Rev: a67df6f9c5ef652c4023224e7e1bbb906e2d961e QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2RiCkJyYW5jaCA6 IGZpeC1kdXAtcGF0Y2gKQ29tbWl0IDogYTY3ZGY2ZjljNWVmNjUyYzQwMjMyMjRlN2UxYmJiOTA2 ZTJkOTYxZQpBdXRob3IgOiBLZXZpbiBCdWV0dG5lciA8a2V2aW5iQHJlZGhhdC5jb20+CkRhdGUg ICA6IDIwMjUtMDQtMzBUMTk6NDE6MzUrMDA6MDAKU3RhdHMgIDogKzEwMi8tNTEyIGluIDEzIGZp bGUocykKVVJMICAgIDogaHR0cHM6Ly9zcmMuZmVkb3JhcHJvamVjdC5vcmcvcnBtcy9nZGIvYy9h NjdkZjZmOWM1ZWY2NTJjNDAyMzIyNGU3ZTFiYmI5MDZlMmQ5NjFlP2JyYW5jaD1maXgtZHVwLXBh dGNoCgpMb2c6Ck1lcmdlICMxODMgYEFkZCBNSVQgbGljZW5zZWAKCi0tLQpkaWZmIC0tZ2l0IGEv Z2RiLnNwZWMgYi9nZGIuc3BlYwppbmRleCBjMWIxMzhmLi5lMzQ4NGY0IDEwMDY0NAotLS0gYS9n ZGIuc3BlYworKysgYi9nZGIuc3BlYwpAQCAtNDcsNyArNDcsNyBAQCBWZXJzaW9uOiAxNi4zCiAj IGB1cHN0cmVhbScgaXMgbm90IGEgcGFydCBvZiBgbmFtZScgdG8gc3RheSBmdWxseSBycG0gZGVw ZW5kZW5jaWVzIGNvbXBhdGlibGUgZm9yIHRoZSB0ZXN0aW5nLgogUmVsZWFzZTogMSV7P2Rpc3R9 CiAKLUxpY2Vuc2U6IEdQTC0zLjAtb3ItbGF0ZXIgQU5EIEJTRC0zLUNsYXVzZSBBTkQgRlNGQVAg QU5EIExHUEwtMi4xLW9yLWxhdGVyIEFORCBHUEwtMi4wLW9yLWxhdGVyIEFORCBMR1BMLTIuMC1v ci1sYXRlciBBTkQgTGljZW5zZVJlZi1GZWRvcmEtUHVibGljLURvbWFpbiBBTkQgR0ZETC0xLjMt b3ItbGF0ZXIgQU5EIExHUEwtMi4wLW9yLWxhdGVyIFdJVEggR0NDLWV4Y2VwdGlvbi0yLjAgQU5E IEdQTC0zLjAtb3ItbGF0ZXIgV0lUSCBHQ0MtZXhjZXB0aW9uLTMuMSBBTkQgR1BMLTIuMC1vci1s YXRlciBXSVRIIEdOVS1jb21waWxlci1leGNlcHRpb24KK0xpY2Vuc2U6IEdQTC0zLjAtb3ItbGF0 ZXIgQU5EIEJTRC0zLUNsYXVzZSBBTkQgRlNGQVAgQU5EIExHUEwtMi4xLW9yLWxhdGVyIEFORCBH UEwtMi4wLW9yLWxhdGVyIEFORCBMR1BMLTIuMC1vci1sYXRlciBBTkQgTGljZW5zZVJlZi1GZWRv cmEtUHVibGljLURvbWFpbiBBTkQgR0ZETC0xLjMtb3ItbGF0ZXIgQU5EIExHUEwtMi4wLW9yLWxh dGVyIFdJVEggR0NDLWV4Y2VwdGlvbi0yLjAgQU5EIEdQTC0zLjAtb3ItbGF0ZXIgV0lUSCBHQ0Mt ZXhjZXB0aW9uLTMuMSBBTkQgR1BMLTIuMC1vci1sYXRlciBXSVRIIEdOVS1jb21waWxlci1leGNl cHRpb24gQU5EIE1JVAogIyBEbyBub3QgcHJvdmlkZSBVUkwgZm9yIHNuYXBzaG90cyBhcyB0aGUg ZmlsZSBsYXN0cyB0aGVyZSBvbmx5IGZvciAyIGRheXMuCiAjIGZ0cDovL3NvdXJjZXdhcmUub3Jn L3B1Yi9nZGIvcmVsZWFzZXMvRklYTUV7dGFybmFtZX0udGFyLnh6CiBTb3VyY2U6IGZ0cDovL3Nv dXJjZXdhcmUub3JnL3B1Yi9nZGIvcmVsZWFzZXMvJXt0YXJuYW1lfS50YXIueHoKCmRpZmYgLS1n aXQgYS8uZ2l0aWdub3JlIGIvLmdpdGlnbm9yZQppbmRleCAwNjY4OTQyLi44MDFiZGZjIDEwMDY0 NAotLS0gYS8uZ2l0aWdub3JlCisrKyBiLy5naXRpZ25vcmUKQEAgLTEsNiArMSw0IEBACiAvbmV3 LWZlZG9yYS1yZWxlYXNlCiAvZ2RiLWxpYnN0ZGMrKy12My1weXRob24tOC4xLjEtMjAxODA2MjYu dGFyLnh6CiAvdjIuMC41LnRhci5negotL2dkYi0xNi4xLnRhci54egotL2dkYi0xNi4wLnRhci5n egotL2dkYi0xNi4yLnRhci54egorL2dkYi0xNi4zLnRhci54egoKZGlmZiAtLWdpdCBhL19nZGIu c3BlYy5QYXRjaC5pbmNsdWRlIGIvX2dkYi5zcGVjLlBhdGNoLmluY2x1ZGUKaW5kZXggMGMzYTY2 ZS4uNTNmN2ZjMSAxMDA2NDQKLS0tIGEvX2dkYi5zcGVjLlBhdGNoLmluY2x1ZGUKKysrIGIvX2dk Yi5zcGVjLlBhdGNoLmluY2x1ZGUKQEAgLTEzLDE0ICsxMywxMCBAQCBQYXRjaDAwMzogZ2RiLTYu OC1iejQ2NjkwMS1iYWNrdHJhY2UtZnVsbC1wcmVsaW5rZWQucGF0Y2gKICM9ZmVkb3JhdGVzdAog UGF0Y2gwMDQ6IGdkYi1hcmNoZXItbmV4dC1vdmVyLXRocm93LWN4eC1leGVjLnBhdGNoCiAKLSMg VGVzdGNhc2UgZm9yIGBTZXR0aW5nIHNvbGliLWFic29sdXRlLXByZWZpeCBicmVha3MgdkRTTycg KEJaIDgxODM0MykuCi0jPWZlZG9yYXRlc3QKLVBhdGNoMDA1OiBnZGItcmhiei04MTgzNDMtc2V0 LXNvbGliLWFic29sdXRlLXByZWZpeC10ZXN0Y2FzZS5wYXRjaAotCiAjIEZpeCAnYGNhdGNoIHN5 c2NhbGwnIGRvZXNuJ3Qgd29yayBmb3IgcGFyZW50IGFmdGVyIGBmb3JrJyBpcyBjYWxsZWQnCiAj IChQaGlsaXBwZSBXYXJvcXVpZXJzLCBSSCBCWiAxMTQ5MjA1KS4KICM9ZmVkb3JhdGVzdAotUGF0 Y2gwMDY6IGdkYi1yaGJ6MTE0OTIwNS1jYXRjaC1zeXNjYWxsLWFmdGVyLWZvcmstdGVzdC5wYXRj aAorUGF0Y2gwMDU6IGdkYi1yaGJ6MTE0OTIwNS1jYXRjaC1zeXNjYWxsLWFmdGVyLWZvcmstdGVz dC5wYXRjaAogCiAjIFVwZGF0ZSBnZGItYWRkLWluZGV4LnNoIHN1Y2ggdGhhdCwgd2hlbiB0aGUg R0RCIGVudmlyb25tZW50CiAjIHZhcmlhYmxlIGlzIG5vdCBzZXQsIHRoZSBzY3JpcHQgaXMgc21h cnRlciB0aGFuIGp1c3QgbG9va2luZyBmb3IKQEAgLTM0LDI0ICszMCwxMiBAQCBQYXRjaDAwNjog Z2RiLXJoYnoxMTQ5MjA1LWNhdGNoLXN5c2NhbGwtYWZ0ZXItZm9yay10ZXN0LnBhdGNoCiAjICAg aHR0cHM6Ly9mZWRvcmFwcm9qZWN0Lm9yZy93aWtpL0NoYW5nZXMvTWluaW1hbF9HREJfaW5fYnVp bGRyb290CiAjCiAjPWZlZG9yYQotUGF0Y2gwMDc6IGdkYi1hZGQtaW5kZXgucGF0Y2gKK1BhdGNo MDA2OiBnZGItYWRkLWluZGV4LnBhdGNoCiAKICMgTm90IGEgYmFja3BvcnQuICBBZGQgYSBuZXcg c2NyaXB0IHdoaWNoIGhvb2tzIGludG8gR0RCIGFuZCBzdWdnZXN0cwogIyBSUE1zIHRvIGluc3Rh bGwgd2hlbiBHREIgZmluZHMgYW4gb2JqZmlsZSB3aXRoIG5vIGRlYnVnIGluZm8uCi1QYXRjaDAw ODogZ2RiLWFkZC1ycG0tc3VnZ2VzdGlvbi1zY3JpcHQucGF0Y2gKLQotIyBCYWNrcG9ydCB1cHN0 cmVhbSBjb21taXQgMmZjNTYxMDY0MjIgd2hpY2ggZml4ZXMgYSBwb3NzaWJsZQotIyBzZWdmYXVs dCB3aGVuIG9wZW5pbmcgYSBjb3JlIGZpbGUuICBUaGlzIHdpbGwgZHJvcCBvdXQgd2hlbiB3ZQot IyByZWJhc2UgdG8gMTYuMyBvciAxNy4xCi1QYXRjaDAwOTogY29yZS10YXJnZXQtb3Blbi1zZWdm YXVsdC5wYXRjaAotCi0jIEJhY2twb3J0IHVwc3RyZWFtIGNvbW1pdCAyYjY0NmJiODc2NywgdGhp cyBmaXhlcyBhbiBpc3N1ZSB3aGVyZQotIyBUVUkgb3V0cHV0IHdhcyBub3QgZmx1c2hlZCB0byB0 aGUgc2NyZWVuIGluIHNvbWUgY2FzZXMuICBUaGlzIHdpbGwKLSMgZHJvcCBvdXQgd2hlbiB3ZSBy ZWJhc2Ugb24gMTYuMyBvciAxNy4xLgotUGF0Y2gwMTA6IHR1aS13cmVmcmVzaC1pc3N1ZS5wYXRj aAotCi0jIEJhY2twb3J0ICJGaXggZ3N0YWNrIGlzc3VlcyIgZnJvbSB1cHN0cmVhbQotIyBjb21t aXQgNDNhYzNkZjYxNDkyYjk0YmYxM2MxMWJkOThjOWY5NTQxZTkyZDNiMC4KLSMgKEtlaXRoIFNl aXR6LCBSSCBCWiAyMzU0OTk3KQotUGF0Y2gwMTE6IGdkYi1yaGJ6MjM1NDk5Ny1nc3RhY2stZHJv cC1yZWFkbmV2ZXIucGF0Y2gKK1BhdGNoMDA3OiBnZGItYWRkLXJwbS1zdWdnZXN0aW9uLXNjcmlw dC5wYXRjaAorCisjIEJhY2twb3J0ICJGaXggYW5vdGhlciB0aW1lb3V0IGluIGdkYi5iYXNlL2Jn LWV4ZWN1dGlvbi1yZXBlYXQuZXhwIgorUGF0Y2gwMDg6IGdkYi1maXgtYmctZXhlY3V0aW9uLXJl cGVhdC5wYXRjaAogCgpkaWZmIC0tZ2l0IGEvX2dkYi5zcGVjLnBhdGNoLmluY2x1ZGUgYi9fZ2Ri LnNwZWMucGF0Y2guaW5jbHVkZQppbmRleCBhNDA5ZDlmLi41M2IwNWNjIDEwMDY0NAotLS0gYS9f Z2RiLnNwZWMucGF0Y2guaW5jbHVkZQorKysgYi9fZ2RiLnNwZWMucGF0Y2guaW5jbHVkZQpAQCAt Niw2ICs2LDMgQEAKICVwYXRjaCAtcDEgLVAwMDYKICVwYXRjaCAtcDEgLVAwMDcKICVwYXRjaCAt cDEgLVAwMDgKLSVwYXRjaCAtcDEgLVAwMDkKLSVwYXRjaCAtcDEgLVAwMTAKLSVwYXRjaCAtcDEg LVAwMTEKCmRpZmYgLS1naXQgYS9fZ2l0X3Vwc3RyZWFtX2NvbW1pdCBiL19naXRfdXBzdHJlYW1f Y29tbWl0CmluZGV4IGFkNGM0ZmYuLjFlNzk0MTggMTAwNjQ0Ci0tLSBhL19naXRfdXBzdHJlYW1f Y29tbWl0CisrKyBiL19naXRfdXBzdHJlYW1fY29tbWl0CkBAIC0xICsxIEBACi01MGIxZGNhYjg2 YzVmZWE3NTNlMGIxNWM0NzIyYmRhNDMxM2I0OGUzCisxNDBiYTAxMWMwMDNmZGEwZmIyZjc0NmNm MmJjMGYwMTBiZjRhYzAzCgpkaWZmIC0tZ2l0IGEvX3BhdGNoX29yZGVyIGIvX3BhdGNoX29yZGVy CmluZGV4IGRlNWNmNWMuLjc1MTE0ZWQgMTAwNjQ0Ci0tLSBhL19wYXRjaF9vcmRlcgorKysgYi9f cGF0Y2hfb3JkZXIKQEAgLTIsMTAgKzIsNyBAQCBnZGItNi4zLXJoLXRlc3R2ZXJzaW9uLTIwMDQx MjAyLnBhdGNoCiBnZGItNi4zLW1hcHBpbmctemVyby1pbm9kZS10ZXN0LnBhdGNoCiBnZGItNi44 LWJ6NDY2OTAxLWJhY2t0cmFjZS1mdWxsLXByZWxpbmtlZC5wYXRjaAogZ2RiLWFyY2hlci1uZXh0 LW92ZXItdGhyb3ctY3h4LWV4ZWMucGF0Y2gKLWdkYi1yaGJ6LTgxODM0My1zZXQtc29saWItYWJz b2x1dGUtcHJlZml4LXRlc3RjYXNlLnBhdGNoCiBnZGItcmhiejExNDkyMDUtY2F0Y2gtc3lzY2Fs bC1hZnRlci1mb3JrLXRlc3QucGF0Y2gKIGdkYi1hZGQtaW5kZXgucGF0Y2gKIGdkYi1hZGQtcnBt LXN1Z2dlc3Rpb24tc2NyaXB0LnBhdGNoCi1jb3JlLXRhcmdldC1vcGVuLXNlZ2ZhdWx0LnBhdGNo Ci10dWktd3JlZnJlc2gtaXNzdWUucGF0Y2gKLWdkYi1yaGJ6MjM1NDk5Ny1nc3RhY2stZHJvcC1y ZWFkbmV2ZXIucGF0Y2gKK2dkYi1maXgtYmctZXhlY3V0aW9uLXJlcGVhdC5wYXRjaAoKZGlmZiAt LWdpdCBhL2NvcmUtdGFyZ2V0LW9wZW4tc2VnZmF1bHQucGF0Y2ggYi9jb3JlLXRhcmdldC1vcGVu LXNlZ2ZhdWx0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MzIwMzI3Li4w MDAwMDAwCi0tLSBhL2NvcmUtdGFyZ2V0LW9wZW4tc2VnZmF1bHQucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw1NiArMCwwIEBACi1Gcm9tIEZFRE9SQV9QQVRDSEVTIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQotRnJvbTogVG9tIGRlIFZyaWVzIDx0ZGV2cmllc0BzdXNlLmRlPgotRGF0ZTogRnJp LCA3IEZlYiAyMDI1IDE3OjA2OjMwICswMTAwCi1TdWJqZWN0OiBjb3JlLXRhcmdldC1vcGVuLXNl Z2ZhdWx0LnBhdGNoCi0KLTs7IEJhY2twb3J0IHVwc3RyZWFtIGNvbW1pdCAyZmM1NjEwNjQyMiB3 aGljaCBmaXhlcyBhIHBvc3NpYmxlCi07OyBzZWdmYXVsdCB3aGVuIG9wZW5pbmcgYSBjb3JlIGZp bGUuICBUaGlzIHdpbGwgZHJvcCBvdXQgd2hlbiB3ZQotOzsgcmViYXNlIHRvIDE2LjMgb3IgMTcu MQotCi1bZ2RiL2NvcmVmaWxlc10gRml4IHNlZ2ZhdWx0IGluIGNvcmVfdGFyZ2V0X29wZW4KLQot T24geDg2XzY0LWZyZWVic2QsIHdpdGggdGVzdC1jYXNlIGdkYi5hcmNoL2kzODYtYmlhcmNoLWNv cmUuZXhwIEkgcnVuIGludG8gYQotc2VnZmF1bHQgaGVyZSBpbiBjb3JlbG93LmM6Y29yZV90YXJn ZXRfb3BlbjoKLS4uLgotICAgIHsKLSAgICAgIGdkYjo6dW5pcXVlX3htYWxsb2NfcHRyPGNoYXI+ IGZhaWxpbmdfY29tbWFuZCA9IG1ha2VfdW5pcXVlX3hzdHJkdXAKLSAgICAgICAgKGJmZF9jb3Jl X2ZpbGVfZmFpbGluZ19jb21tYW5kIChjdXJyZW50X3Byb2dyYW1fc3BhY2UtPmNvcmVfYmZkICgp KSk7Ci0gICAgICBpZiAoZmFpbGluZ19jb21tYW5kICE9IG51bGxwdHIpCi0gICAgICAgIGdkYl9w cmludGYgKF8oIkNvcmUgd2FzIGdlbmVyYXRlZCBieSBgJXMnLlxuIiksCi0gICAgICAgICAgICAg ICAgICAgIGZhaWxpbmdfY29tbWFuZC5nZXQgKCkpOwotICAgIH0KLS4uLgotd2hlcmUgYmZkX2Nv cmVfZmlsZV9mYWlsaW5nX2NvbW1hbmQgcmV0dXJucyBudWxscHRyLCBzbyB0aGUgc2VnZmF1bHQg aGFwcGVucwotc29tZXdoZXJlIGR1cmluZyAic3RyZHVwIChudWxscHRyKSIuCi0KLVRoZXJlIGRv ZXNuJ3Qgc2VlbSB0byBiZSBhIG5lZWQgdG8gbWFrZSBhIGNvcHkgb2YgdGhlIHN0cmluZywgc28g Zml4IHRoaXMgYnkKLWRyb3BwaW5nIHRoZSBtYWtlX3VuaXF1ZV94c3RyZHVwLgotCi1UZXN0ZWQg b24geDg2XzY0LWxpbnV4LgotVGVzdGVkIHRoZSB0ZXN0LWNhc2Ugb24geDg2XzY0LWZyZWVic2Qu Ci0KLUFwcHJvdmVkLUJ5OiBUb20gVHJvbWV5IDx0b21AdHJvbWV5LmNvbT4KLQotUFIgY29yZWZp bGVzLzMyNjM0Ci1CdWc6IGh0dHBzOi8vc291cmNld2FyZS5vcmcvYnVnemlsbGEvc2hvd19idWcu Y2dpP2lkPTMyNjM0Ci0KLShjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDlkZDNkNjZiNzlhMjkw NzcyNmY0MDcwMzkyMzRhZDg2NzdlOWRmMTYpCi0KLWRpZmYgLS1naXQgYS9nZGIvY29yZWxvdy5j IGIvZ2RiL2NvcmVsb3cuYwotLS0tIGEvZ2RiL2NvcmVsb3cuYwotKysrIGIvZ2RiL2NvcmVsb3cu YwotQEAgLTExODgsMTEgKzExODgsMTEgQEAgY29yZV90YXJnZXRfb3BlbiAoY29uc3QgY2hhciAq YXJnLCBpbnQgZnJvbV90dHkpCi0gICAgIH0KLSAgIGVsc2UKLSAgICAgewotLSAgICAgIGdkYjo6 dW5pcXVlX3htYWxsb2NfcHRyPGNoYXI+IGZhaWxpbmdfY29tbWFuZCA9IG1ha2VfdW5pcXVlX3hz dHJkdXAKLS0JKGJmZF9jb3JlX2ZpbGVfZmFpbGluZ19jb21tYW5kIChjdXJyZW50X3Byb2dyYW1f c3BhY2UtPmNvcmVfYmZkICgpKSk7Ci0rICAgICAgY29uc3QgY2hhciAqZmFpbGluZ19jb21tYW5k Ci0rCT0gYmZkX2NvcmVfZmlsZV9mYWlsaW5nX2NvbW1hbmQgKGN1cnJlbnRfcHJvZ3JhbV9zcGFj ZS0+Y29yZV9iZmQgKCkpOwotICAgICAgIGlmIChmYWlsaW5nX2NvbW1hbmQgIT0gbnVsbHB0cikK LSAJZ2RiX3ByaW50ZiAoXygiQ29yZSB3YXMgZ2VuZXJhdGVkIGJ5IGAlcycuXG4iKSwKLS0JCSAg ICBmYWlsaW5nX2NvbW1hbmQuZ2V0ICgpKTsKLSsJCSAgICBmYWlsaW5nX2NvbW1hbmQpOwotICAg ICB9Ci0gCi0gICAvKiBDbGVhcmluZyBhbnkgcHJldmlvdXMgc3RhdGUgb2YgY29udmVuaWVuY2Ug dmFyaWFibGVzLiAgKi8KCmRpZmYgLS1naXQgYS9nZGItZml4LWJnLWV4ZWN1dGlvbi1yZXBlYXQu cGF0Y2ggYi9nZGItZml4LWJnLWV4ZWN1dGlvbi1yZXBlYXQucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uZDI1NWMyNQotLS0gL2Rldi9udWxsCisrKyBiL2dkYi1maXgt YmctZXhlY3V0aW9uLXJlcGVhdC5wYXRjaApAQCAtMCwwICsxLDc2IEBACitGcm9tIEZFRE9SQV9Q QVRDSEVTIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogPT9VVEYtOD9xP0FsZXhhbmRy YT0yMEg9QzM9QTFqa292PUMzPUExPz0gPGFoYWprb3ZhQHJlZGhhdC5jb20+CitEYXRlOiBGcmks IDI1IEFwciAyMDI1IDEwOjMxOjE2ICswMjAwCitTdWJqZWN0OiBnZGItZml4LWJnLWV4ZWN1dGlv bi1yZXBlYXQucGF0Y2gKKworOzsgQmFja3BvcnQgIkZpeCBhbm90aGVyIHRpbWVvdXQgaW4gZ2Ri LmJhc2UvYmctZXhlY3V0aW9uLXJlcGVhdC5leHAiCisKK1tnZGIvdGVzdHN1aXRlXSBGaXggYW5v dGhlciB0aW1lb3V0IGluIGdkYi5iYXNlL2JnLWV4ZWN1dGlvbi1yZXBlYXQuZXhwCisKK1dpdGgg dGVzdC1jYXNlIGdkYi5iYXNlL2JnLWV4ZWN1dGlvbi1yZXBlYXQuZXhwLCBvY2Nhc2lvbmFsbHkg SSBydW4gaW50byBhCit0aW1lb3V0OgorLi4uCisoZ2RiKSBjIDEmCitXaWxsIHN0b3AgbmV4dCB0 aW1lIGJyZWFrcG9pbnQgMSBpcyByZWFjaGVkLiAgQ29udGludWluZy4KKyhnZGIpIFBBU1M6ICRl eHA6IGMgMSY6IGMgMSYKKworQnJlYWtwb2ludCAyLCBmb28gKCkgYXQgYmctZXhlY3V0aW9uLXJl cGVhdC5jOjIzCisyMyAgICAgICAgcmV0dXJuIDA7IC8qIHNldCBicmVhayBoZXJlICovCitQQVNT OiAkZXhwOiBjIDEmOiBicmVha3BvaW50IGhpdCAxCisKK1dpbGwgc3RvcCBuZXh0IHRpbWUgYnJl YWtwb2ludCAyIGlzIHJlYWNoZWQuICBDb250aW51aW5nLgorKGdkYikgUEFTUzogJGV4cDogYyAx JjogcmVwZWF0IGJnIGNvbW1hbmQKK3ByaW50IDEKKyQxID0gMQorKGdkYikgUEFTUzogJGV4cDog YyAxJjogaW5wdXQgc3RpbGwgYWNjZXB0ZWQKK2ludGVycnVwdAorKGdkYikgUEFTUzogJGV4cDog YyAxJjogaW50ZXJydXB0CisKK1Byb2dyYW0gcmVjZWl2ZWQgc2lnbmFsIFNJR0lOVCwgSW50ZXJy dXB0LgorZm9vICgpIGF0IGJnLWV4ZWN1dGlvbi1yZXBlYXQuYzoyNAorMjQgICAgICB9CitQQVNT OiAkZXhwOiBjIDEmOiBpbnRlcnJ1cHQgcmVjZWl2ZWQKK3NldCB2YXIgZG9fd2FpdD0wCisoZ2Ri KSBQQVNTOiAkZXhwOiBjIDEmOiBzZXQgdmFyIGRvX3dhaXQ9MAorY29udGludWUmCitDb250aW51 aW5nLgorKGdkYikgUEFTUzogJGV4cDogYyAxJjogY29udGludWUmCitGQUlMOiAkZXhwOiBjIDEm OiBicmVha3BvaW50IGhpdCAyICh0aW1lb3V0KQorLi4uCisKK0kgY2FuIHJlcHJvZHVjZSBpdCBy ZWxpYWJseSBieSBhZGRpbmcgYSAic2xlZXAgKDEpIiBiZWZvcmUgdGhlICJkb193YWl0ID0gMSIK K2luIHRoZSAuYyBmaWxlLgorCitUaGUgdGltZW91dCBoYXBwZW5zIGFzIGZvbGxvd3M6CistIHdp dGggdGhlIGluZmVyaW9yIHN0b3BwZWQgYXQgbWFpbiwgZ2RiIGNvbnRpbnVlcyAoY29tbWFuZCBj IDEmKQorLSB0aGUgaW5mZXJpb3IgaGl0cyB0aGUgYnJlYWtwb2ludCBhdCBmb28KKy0gZ2RiIGNv bnRpbnVlcyAodXNpbmcgdGhlIHJlcGVhdCBjb21tYW5kIGZ1bmN0aW9uYWxpdHkpCistIHRoZSBp bmZlcmlvciBpcyBpbnRlcnJ1cHRlZAorLSBpbmZlcmlvciB2YXJpYWJsZSBkb193YWl0IGdldHMg c2V0IHRvIDAuICBUaGUgYXNzdW1wdGlvbiBoZXJlIGlzIHRoYXQgdGhlCisgIGluZmVyaW9yIGhh cyBwcm9ncmVzc2VkIGVub3VnaCB0aGF0IGRvX3dhaXQgaXMgc2V0IHRvIDEgYXQgdGhhdCBwb2lu dCwgYnV0CisgIHRoYXQgaGFwcGVucyBub3QgdG8gYmUgdGhlIGNhc2UuICBDb25zZXF1ZW50bHks IHRoaXMgaGFzIG5vIGVmZmVjdC4KKy0gZ2RiIGNvbnRpbnVlcworLSB0aGUgaW5mZXJpb3Igc2V0 cyBkb193YWl0IHRvIDEKKy0gdGhlIGluZmVyaW9yIGVudGVycyB0aGUgd2FpdCBmdW5jdGlvbiwg YW5kIHdhaXQgZm9yIGRvX3dhaXQgdG8gYmVjb21lIDAsCisgIHdoaWNoIG5ldmVyIGhhcHBlbnMu CisKK0ZpeCB0aGlzIGJ5IG1vdmluZyB0aGUgImRvX3dhaXQgPSAxIiB0byBiZWZvcmUgdGhlIGZp cnN0IGNhbGwgdG8gZm9vLgorCitUZXN0ZWQgb24geDg2XzY0LWxpbnV4LgorCitSZXZpZXdlZC1C eTogQWxleGFuZHJhIFBldGxhbm92YSBIYWprb3ZhIDxhaGFqa292YUByZWRoYXQuY29tPgorCitk aWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9iZy1leGVjdXRpb24tcmVwZWF0LmMg Yi9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL2JnLWV4ZWN1dGlvbi1yZXBlYXQuYworLS0tIGEvZ2Ri L3Rlc3RzdWl0ZS9nZGIuYmFzZS9iZy1leGVjdXRpb24tcmVwZWF0LmMKKysrKyBiL2dkYi90ZXN0 c3VpdGUvZ2RiLmJhc2UvYmctZXhlY3V0aW9uLXJlcGVhdC5jCitAQCAtMzcsOSArMzcsOSBAQCBt YWluICh2b2lkKQorIHsKKyAgIGFsYXJtICg2MCk7CisgCisrICBkb193YWl0ID0gMTsKKyAgIGZv byAoKTsKKyAKKy0gIGRvX3dhaXQgPSAxOworICAgd2FpdCAoKTsKKyAgIC8qIGRvX3dhaXQgc2V0 IHRvIDAgZXh0ZXJuYWxseS4gICovCisgCgpkaWZmIC0tZ2l0IGEvZ2RiLWdjYy0xMy1iYWNrcG9y dC1zZWxmLW1vdmUtZGlhZ25vc3RpYy1maXggYi9nZGItZ2NjLTEzLWJhY2twb3J0LXNlbGYtbW92 ZS1kaWFnbm9zdGljLWZpeApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDAxNzJhYS4u MDAwMDAwMAotLS0gYS9nZGItZ2NjLTEzLWJhY2twb3J0LXNlbGYtbW92ZS1kaWFnbm9zdGljLWZp eAorKysgL2Rldi9udWxsCkBAIC0xLDQzICswLDAgQEAKLUZyb20gRkVET1JBX1BBVENIRVMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBLZXZpbiBCdWV0dG5lciA8a2V2aW5iQHJlZGhh dC5jb20+Ci1EYXRlOiBGcmksIDIwIEphbiAyMDIzIDE1OjE1OjU5IC0wNzAwCi1TdWJqZWN0OiBn ZGItZ2NjLTEzLWJhY2twb3J0LXNlbGYtbW92ZS1kaWFnbm9zdGljLWZpeAotCi07OyBnY2MgMTMg ZmFsbG91dDogQmFja3BvcnQgSmFuLUJlbmVkaWN0IEdsYXcncyBmaXggZm9yIHRoZSBzZWxmLW1v dmUKLTs7IHdhcm5pbmcgY2hlY2sKLQotRml4IHNlbGYtbW92ZSB3YXJuaW5nIGNoZWNrIGZvciBH Q0MgMTMrCi0KLUdDQyAxMyBnb3QgdGhlIHNlbGYtbW92ZSB3YXJuaW5nICgwYWJiNzhkZGEwODRh MTRiM2Q5NTU3NTdjNjQzMWZmZjcxYzI2M2YzKSwKLWJ1dCB0aGF0IHdhcm5pbmcgaXMgb25seSBj aGVja2VkIGZvciBjbGFuZywgcmVzdWx0aW5nIGluOgotCi0vdXNyL2xpYi9nY2Mtc25hcHNob3Qv YmluL2crKyAteCBjKysgICAgLUkuIC1JLiAtSS4vY29uZmlnIC1ETE9DQUxFRElSPSJcIi90bXAv Z2RiLW02OGstbGludXgvc2hhcmUvbG9jYWxlXCIiIC1ESEFWRV9DT05GSUdfSCAtSS4vLi4vaW5j bHVkZS9vcGNvZGUgLUkuLy4uL3JlYWRsaW5lL3JlYWRsaW5lLy4uIC1JLi8uLi96bGliICAtSS4u L2JmZCAtSS4vLi4vYmZkIC1JLi8uLi9pbmNsdWRlIC1JLi4vbGliZGVjbnVtYmVyIC1JLi8uLi9s aWJkZWNudW1iZXIgIC1JLi8uLi9nbnVsaWIvaW1wb3J0IC1JLi4vZ251bGliL2ltcG9ydCAtSS4v Li4gLUkuLiAtSS4vLi4vbGliYmFja3RyYWNlLyAtSS4uL2xpYmJhY2t0cmFjZS8gIC1EVFVJPTEg ICAgLUkuLy4uIC1wdGhyZWFkICAtV2FsbCAtV3BvaW50ZXItYXJpdGggLVduby11bnVzZWQgLVd1 bnVzZWQtdmFsdWUgLVd1bnVzZWQtdmFyaWFibGUgLVd1bnVzZWQtZnVuY3Rpb24gLVduby1zd2l0 Y2ggLVduby1jaGFyLXN1YnNjcmlwdHMgLVdlbXB0eS1ib2R5IC1XdW51c2VkLWJ1dC1zZXQtcGFy YW1ldGVyIC1XdW51c2VkLWJ1dC1zZXQtdmFyaWFibGUgLVduby1zaWduLWNvbXBhcmUgLVduby1l cnJvcj1tYXliZS11bmluaXRpYWxpemVkIC1Xbm8tbWlzbWF0Y2hlZC10YWdzIC1Xc3VnZ2VzdC1v dmVycmlkZSAtV2ltcGxpY2l0LWZhbGx0aHJvdWdoPTMgLVdkdXBsaWNhdGVkLWNvbmQgLVdzaGFk b3c9bG9jYWwgLVdkZXByZWNhdGVkLWNvcHkgLVdkZXByZWNhdGVkLWNvcHktZHRvciAtV3JlZHVu ZGFudC1tb3ZlIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgLVdzdHJpY3QtbnVsbC1zZW50aW5lbCAt V2Zvcm1hdCAtV2Zvcm1hdC1ub25saXRlcmFsIC1XZXJyb3IgLWcgLU8yICAgLWMgLW8gdW5pdHRl c3RzL2Vudmlyb24tc2VsZnRlc3RzLm8gLU1UIHVuaXR0ZXN0cy9lbnZpcm9uLXNlbGZ0ZXN0cy5v IC1NTUQgLU1QIC1NRiB1bml0dGVzdHMvLmRlcHMvZW52aXJvbi1zZWxmdGVzdHMuVHBvIHVuaXR0 ZXN0cy9lbnZpcm9uLXNlbGZ0ZXN0cy5jCi11bml0dGVzdHMvZW52aXJvbi1zZWxmdGVzdHMuYzog SW4gZnVuY3Rpb24gJ3ZvaWQgc2VsZnRlc3RzOjpnZGJfZW52aXJvbl90ZXN0czo6dGVzdF9zZWxm X21vdmUoKSc6Ci11bml0dGVzdHMvZW52aXJvbi1zZWxmdGVzdHMuYzoyMjg6NzogZXJyb3I6IG1v dmluZyAnZW52JyBvZiB0eXBlICdnZGJfZW52aXJvbicgdG8gaXRzZWxmIFstV2Vycm9yPXNlbGYt bW92ZV0KLSAgMjI4IHwgICBlbnYgPSBzdGQ6Om1vdmUgKGVudik7Ci0gICAgICB8ICAgfn5+fl5+ fn5+fn5+fn5+fn5+fn5+Ci11bml0dGVzdHMvZW52aXJvbi1zZWxmdGVzdHMuYzoyMjg6Nzogbm90 ZTogcmVtb3ZlICdzdGQ6Om1vdmUnIGNhbGwKLWNjMXBsdXM6IGFsbCB3YXJuaW5ncyBiZWluZyB0 cmVhdGVkIGFzIGVycm9ycwotbWFrZVsxXTogKioqIFtNYWtlZmlsZToxODk2OiB1bml0dGVzdHMv ZW52aXJvbi1zZWxmdGVzdHMub10gRXJyb3IgMQotbWFrZVsxXTogTGVhdmluZyBkaXJlY3Rvcnkg Jy92YXIvbGliL2xhbWluYXIvcnVuL2dkYi1tNjhrLWxpbnV4LzMvYmludXRpbHMtZ2RiL2dkYicK LW1ha2U6ICoqKiBbTWFrZWZpbGU6MTMxOTM6IGFsbC1nZGJdIEVycm9yIDIKLQotZGlmZiAtLWdp dCBhL2luY2x1ZGUvZGlhZ25vc3RpY3MuaCBiL2luY2x1ZGUvZGlhZ25vc3RpY3MuaAotLS0tIGEv aW5jbHVkZS9kaWFnbm9zdGljcy5oCi0rKysgYi9pbmNsdWRlL2RpYWdub3N0aWNzLmgKLUBAIC03 OSw2ICs3OSwxNSBAQAotICMgZGVmaW5lIERJQUdOT1NUSUNfSUdOT1JFX0ZPUk1BVF9OT05MSVRF UkFMIFwKLSAgIERJQUdOT1NUSUNfSUdOT1JFICgiLVdmb3JtYXQtbm9ubGl0ZXJhbCIpCi0gCi0r IyBpZiBfX0dOVUNfXyA+PSA1Ci0rIyAgZGVmaW5lIERJQUdOT1NUSUNfSUdOT1JFX1VOVVNFRF9C VVRfU0VUX1ZBUklBQkxFIFwKLSsgICBESUFHTk9TVElDX0lHTk9SRSAoIi1XdW51c2VkLWJ1dC1z ZXQtdmFyaWFibGUiKQotKyMgZW5kaWYKLSsKLSsjIGlmIF9fR05VQ19fID49IDEzCi0rIyAgZGVm aW5lIERJQUdOT1NUSUNfSUdOT1JFX1NFTEZfTU9WRSBESUFHTk9TVElDX0lHTk9SRSAoIi1Xc2Vs Zi1tb3ZlIikKLSsjIGVuZGlmCi0rCi0gLyogR0NDIDQuOCdzICJkaWFnbm9zdGljIHB1c2gvcG9w IiBzZWVtcyBicm9rZW4gd2hlbiB1c2luZyB0aGlzLCAtV3N3aXRjaAotICAgIHJlbWFpbnMgZW5h YmxlZCBhdCB0aGUgZXJyb3IgbGV2ZWwgZXZlbiBhZnRlciBhIHBvcC4gIFRoZXJlZm9yZSwgZG9u J3QKLSAgICB1c2UgaXQgZm9yIEdDQyA8IDUuICAqLwoKZGlmZiAtLWdpdCBhL2dkYi1yaGJ6LTgx ODM0My1zZXQtc29saWItYWJzb2x1dGUtcHJlZml4LXRlc3RjYXNlLnBhdGNoIGIvZ2RiLXJoYnot ODE4MzQzLXNldC1zb2xpYi1hYnNvbHV0ZS1wcmVmaXgtdGVzdGNhc2UucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIwZTVmNzUuLjAwMDAwMDAKLS0tIGEvZ2RiLXJoYnotODE4 MzQzLXNldC1zb2xpYi1hYnNvbHV0ZS1wcmVmaXgtdGVzdGNhc2UucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSw4MyArMCwwIEBACi1Gcm9tIEZFRE9SQV9QQVRDSEVTIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQotRnJvbTogRmVkb3JhIEdEQiBwYXRjaGVzIDxpbnZhbGlkQGVtYWlsLmNvbT4KLURh dGU6IEZyaSwgMjcgT2N0IDIwMTcgMjE6MDc6NTAgKzAyMDAKLVN1YmplY3Q6IGdkYi1yaGJ6LTgx ODM0My1zZXQtc29saWItYWJzb2x1dGUtcHJlZml4LXRlc3RjYXNlLnBhdGNoCi0KLTs7IFRlc3Rj YXNlIGZvciBgU2V0dGluZyBzb2xpYi1hYnNvbHV0ZS1wcmVmaXggYnJlYWtzIHZEU08nIChCWiA4 MTgzNDMpLgotOzs9ZmVkb3JhdGVzdAotCi1kaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIu YmFzZS9zZXQtc29saWItYWJzb2x1dGUtcHJlZml4LmMgYi9nZGIvdGVzdHN1aXRlL2dkYi5iYXNl L3NldC1zb2xpYi1hYnNvbHV0ZS1wcmVmaXguYwotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLS0tLSAv ZGV2L251bGwKLSsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uvc2V0LXNvbGliLWFic29sdXRl LXByZWZpeC5jCi1AQCAtMCwwICsxLDI2IEBACi0rLyogQ29weXJpZ2h0IChDKSAyMDEyIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgotKwotKyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdE Qi4KLSsKLSsgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3Ry aWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotKyAgIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05V IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Ci0rICAgdGhlIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKLSsg ICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotKwotKyAgIFRoaXMgcHJvZ3Jh bSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotKyAg IGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCi0rICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQotKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCi0rCi0rICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSsgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4g IElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCi0rCi0rI2lu Y2x1ZGUgPHN0ZGlvLmg+Ci0rI2luY2x1ZGUgPHN0ZGxpYi5oPgotKwotK2ludAotK21haW4gKGlu dCBhcmdjLCBjaGFyICphcmd2W10pCi0rewotKyAgcHJpbnRmICgiSGVsbG8sIFdvcmxkLlxuIik7 Ci0rICBhYm9ydCAoKTsKLSt9Ci1kaWZmIC0tZ2l0IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9z ZXQtc29saWItYWJzb2x1dGUtcHJlZml4LmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2Uvc2V0 LXNvbGliLWFic29sdXRlLXByZWZpeC5leHAKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci0tLS0gL2Rl di9udWxsCi0rKysgYi9nZGIvdGVzdHN1aXRlL2dkYi5iYXNlL3NldC1zb2xpYi1hYnNvbHV0ZS1w cmVmaXguZXhwCi1AQCAtMCwwICsxLDM5IEBACi0rIyBDb3B5cmlnaHQgMjAxMiBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIEluYy4KLSsKLSsjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Ci0rIyBpdCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQot KyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUg TGljZW5zZSwgb3IKLSsjIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCi0rIwot KyMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBi ZSB1c2VmdWwsCi0rIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUg aW1wbGllZCB3YXJyYW50eSBvZgotKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQotKyMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vu c2UgZm9yIG1vcmUgZGV0YWlscy4KLSsjCi0rIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQotKyMgYWxvbmcgd2l0aCB0aGlz IHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi0r Ci0rc2V0IHRlc3RmaWxlICJzZXQtc29saWItYWJzb2x1dGUtcHJlZml4IgotK3NldCBzcmNmaWxl ICR7dGVzdGZpbGV9LmMKLSsKLSsjIEl0IGlzIG5lY2Vzc2FyeSB0byB2ZXJpZnkgaWYgdGhlIGJp bmFyeSBpcyAzMi1iaXQsIHNvIHRoYXQgdGhlIHN5c3RlbQotKyMgY2FsbCBgX19rZXJuZWxfdnN5 c2NhbGwnIG9yaWdpbmF0ZXMgZnJvbSB2RFNPLgotKwotK2lmIHsgIVtpc19pbHAzMl90YXJnZXRd IH0gewotKyAgICByZXR1cm4gLTEKLSt9Ci0rCi0raWYgeyBbcHJlcGFyZV9mb3JfdGVzdGluZyAk dGVzdGZpbGUuZXhwICR0ZXN0ZmlsZSAkc3JjZmlsZV0gfSB7Ci0rICAgIHJldHVybiAtMQotK30K LSsKLStpZiB7ICFbcnVudG9fbWFpbl0gfSB7Ci0rICAgIHJldHVybiAtMQotK30KLSsKLStnZGJf dGVzdCAiY29udGludWUiICJQcm9ncmFtIHJlY2VpdmVkIHNpZ25hbCBTSUdBQlJULCBBYm9ydGVk LioiIFwKLSsgICAgImNvbnRpbnVlIHVudGlsIGFib3J0IgotK2dkYl90ZXN0ICJzZXQgc29saWIt YWJzb2x1dGUtcHJlZml4IC9CT0dVU19ESVJFQ1QiIFwKLSsgICAgIi4qd2FybmluZzogVW5hYmxl IHRvIGZpbmQgZHluYW1pYyBsaW5rZXIgYnJlYWtwb2ludCBmdW5jdGlvbi4qIiBcCi0rICAgICJz ZXQgc29saWItYWJzb2x1dGUtcHJlZml4IgotK2dkYl90ZXN0ICJidCIgIl9fa2VybmVsX3ZzeXNj YWxsLioiICJiYWNrdHJhY2Ugd2l0aCBfX2tlcm5lbF92c3lzY2FsbCIKCmRpZmYgLS1naXQgYS9n ZGItcmhiejIzNTQ5OTctZ3N0YWNrLWRyb3AtcmVhZG5ldmVyLnBhdGNoIGIvZ2RiLXJoYnoyMzU0 OTk3LWdzdGFjay1kcm9wLXJlYWRuZXZlci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggNzBiNWI5ZS4uMDAwMDAwMAotLS0gYS9nZGItcmhiejIzNTQ5OTctZ3N0YWNrLWRyb3At cmVhZG5ldmVyLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNzQgKzAsMCBAQAotRnJvbSBGRURP UkFfUEFUQ0hFUyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IEtlaXRoIFNlaXR6IDxr ZWl0aHNAcmVkaGF0LmNvbT4KLURhdGU6IFRodSwgMjcgTWFyIDIwMjUgMTE6MzY6MTkgLTA3MDAK LVN1YmplY3Q6IGdkYi1yaGJ6MjM1NDk5Ny1nc3RhY2stZHJvcC1yZWFkbmV2ZXIucGF0Y2gKLQot OzsgQmFja3BvcnQgIkZpeCBnc3RhY2sgaXNzdWVzIiBmcm9tIHVwc3RyZWFtCi07OyBjb21taXQg NDNhYzNkZjYxNDkyYjk0YmYxM2MxMWJkOThjOWY5NTQxZTkyZDNiMC4KLTs7IChLZWl0aCBTZWl0 eiwgUkggQlogMjM1NDk5NykKLQotV2l0aCBjb21taXQgZmIyZGVkMzNjMWU1MTk2NTk3NDMwNDdl ZDc4MTcxNjY1NDViNmQ5MSwgSSBhZGRlZAotRmVkb3JhJ3MgZ3N0YWNrIHNjcmlwdCB0byBnZGIu ICBTb21lIGlzc3VlcyBoYXZlIGFyaXNlbiBzaW5jZQotdGhlbiwgYW5kIHRoaXMgcGF0Y2ggYWRk cmVzc2VzIHRob3NlIGlzc3VlczoKLQotLiBBcyBTYW0gSmFtZXMgcmVjZW50bHkgbm90ZWRbMV0s IFBLR1ZFUlNJT04gYW5kIFZFUlNJT04KLSAgbmVlZCB0byBiZSBxdW90ZWQuCi0uIEEgRmVkb3Jh IHVzZXIgcmVwb3J0ZWQgdGhlIG1pc3VzZSBvZiAtLXJlYWRuZXZlciwgd2hpY2gKLSAgY2F1c2Vz IGdzdGFjayB0byBvbWl0IGZpbGVuYW1lIGFuZCBsaW5lIG51bWJlciBpbmZvcm1hdGlvbiBpbiB0 aGUKLSAgYmFja3RyYWNlW1JlZCBIYXQgQlogMjM1NDk5N10uCi0KLVsxXSBodHRwczovL2luYm94 LnNvdXJjZXdhcmUub3JnL2dkYi1wYXRjaGVzL2QxOWQ2YmMxN2UwYTE2MGNlMjdmYzU3MjA3OWYx MWE1ODdjMGUxNjguMTc0MjQyNDg2OS5naXQuc2FtQGdlbnRvby5vcmcvCi1CdWc6IGh0dHBzOi8v YnVnemlsbGEucmVkaGF0LmNvbS9zaG93X2J1Zy5jZ2k/aWQ9MjM1NDk5NwotCi1kaWZmIC0tZ2l0 IGEvZ2RiL2dzdGFjay0xLmluIGIvZ2RiL2dzdGFjay0xLmluCi0tLS0gYS9nZGIvZ3N0YWNrLTEu aW4KLSsrKyBiL2dkYi9nc3RhY2stMS5pbgotQEAgLTEsNiArMSw2IEBACi0gIyEvdXNyL2Jpbi9l bnYgYmFzaAotIAotLSMgQ29weXJpZ2h0IChDKSAyMDI0IEZyZWUgU29mdHdhcmUgRm91bmRhdGlv biwgSW5jLgotKyMgQ29weXJpZ2h0IChDKSAyMDI0LTIwMjUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0 aW9uLCBJbmMuCi0gCi0gIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiBy ZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotICMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKLUBAIC0yMiw4ICsy Miw4IEBACi0gR0RCPSR7R0RCOi0kKGNvbW1hbmQgLXYgZ2RiKX0KLSBHREJBUkdTPSR7R0RCQVJH UzotfQotIEFXSz0ke0FXSzotfQotLVBLR1ZFUlNJT049QFBLR1ZFUlNJT05ACi0tVkVSU0lPTj1A VkVSU0lPTkAKLStQS0dWRVJTSU9OPSJAUEtHVkVSU0lPTkAiCi0rVkVSU0lPTj0iQFZFUlNJT05A IgotIAotICMgRmluZCBhbiBhcHByb3ByaWF0ZSBhd2sgaW50ZXJwcmV0ZXIgaWYgb25lIHdhcyBu b3Qgc3BlY2lmaWVkCi0gIyB2aWEgdGhlIGVudmlyb25tZW50LgotQEAgLTEzMiw3ICsxMzIsNyBA QCBFT0YKLSAJICApCi0gCi0gIyBSdW4gR0RCIGFuZCByZW1vdmUgc29tZSB1bndhbnRlZCBub2lz ZS4KLS0iJEdEQiIgLS1xdWlldCAtbnggLS1yZWFkbmV2ZXIgJEdEQkFSR1MgPDxFT0YgfAotKyIk R0RCIiAtLXF1aWV0IC1ueCAkR0RCQVJHUyA8PEVPRiB8Ci0gc2V0IHdpZHRoIDAKLSBzZXQgaGVp Z2h0IDAKLSBzZXQgcGFnaW5hdGlvbiBubwotZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2Ri LmJhc2UvZ3N0YWNrLmV4cCBiL2dkYi90ZXN0c3VpdGUvZ2RiLmJhc2UvZ3N0YWNrLmV4cAotLS0t IGEvZ2RiL3Rlc3RzdWl0ZS9nZGIuYmFzZS9nc3RhY2suZXhwCi0rKysgYi9nZGIvdGVzdHN1aXRl L2dkYi5iYXNlL2dzdGFjay5leHAKLUBAIC0xLDQgKzEsNCBAQAotLSMgQ29weXJpZ2h0IChDKSAy MDI0IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgotKyMgQ29weXJpZ2h0IChDKSAyMDI0 LTIwMjUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCi0gCi0gIyBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQot ICMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBh cyBwdWJsaXNoZWQgYnkKLUBAIC02MCw4ICs2MCwxMCBAQCBpZiB7ICFbZ2RiX2Fzc2VydCB7ICFb ZXhwciB7JHJlcyA8IDAgfHwgJHJlcyA9PSAiIn1dIH0gJHRlc3RdIH0gewotIHNldCB0ZXN0ICJn b3QgYmFja3RyYWNlIgotIHNldCBzYXdfYmFja3RyYWNlIGZhbHNlCi0gc2V0IG5vX2F3ayBmYWxz ZQotK3NldCBsb2NhdGlvbl9yZSAke3NyY2ZpbGV9OiR7ZGVjaW1hbH0KLSsKLSBnZGJfdGVzdF9t dWx0aXBsZSAiIiAkdGVzdCB7Ci0tICAgIC1pICIkcmVzIiAtcmUgIiMwICsoMHhcWzAtOWEtZlxd KyBpbiApP21haW4gXChcKS4qXHJcbkdTVEFDSy1FTkRcclxuXCQiIHsKLSsgICAgLWkgIiRyZXMi IC1yZSAiIzAgKygweFxbMC05YS1mXF0rIGluICk/bWFpbiBcKFwpLiokbG9jYXRpb25fcmUuKlxy XG5HU1RBQ0stRU5EXHJcblwkIiB7Ci0gCXNldCBzYXdfYmFja3RyYWNlIHRydWUKLSAJcGFzcyAk dGVzdAotIAlleHBfY29udGludWUKCmRpZmYgLS1naXQgYS9nZGIuc3BlYyBiL2dkYi5zcGVjCmlu ZGV4IDcwNzczYjguLmUzNDg0ZjQgMTAwNjQ0Ci0tLSBhL2dkYi5zcGVjCisrKyBiL2dkYi5zcGVj CkBAIC00MSwxMSArNDEsMTEgQEAgTmFtZTogJXs/c2NsX3ByZWZpeH1nZGIKICMgU2VlIHRpbWVz dGFtcCBvZiBzb3VyY2UgZ251bGliIGluc3RhbGxlZCBpbnRvIGdudWxpYi8gLgogJWdsb2JhbCBz bmFwZ251bGliIDIwMjIwNTAxCiAlZ2xvYmFsIHRhcm5hbWUgZ2RiLSV7dmVyc2lvbn0KLVZlcnNp b246IDE2LjIgCitWZXJzaW9uOiAxNi4zCiAKICMgVGhlIHJlbGVhc2UgYWx3YXlzIGNvbnRhaW5z IGEgbGVhZGluZyByZXNlcnZlZCBudW1iZXIsIHN0YXJ0IGl0IGF0IDEuCiAjIGB1cHN0cmVhbScg aXMgbm90IGEgcGFydCBvZiBgbmFtZScgdG8gc3RheSBmdWxseSBycG0gZGVwZW5kZW5jaWVzIGNv bXBhdGlibGUgZm9yIHRoZSB0ZXN0aW5nLgotUmVsZWFzZTogMyV7P2Rpc3R9CitSZWxlYXNlOiAx JXs/ZGlzdH0KIAogTGljZW5zZTogR1BMLTMuMC1vci1sYXRlciBBTkQgQlNELTMtQ2xhdXNlIEFO RCBGU0ZBUCBBTkQgTEdQTC0yLjEtb3ItbGF0ZXIgQU5EIEdQTC0yLjAtb3ItbGF0ZXIgQU5EIExH UEwtMi4wLW9yLWxhdGVyIEFORCBMaWNlbnNlUmVmLUZlZG9yYS1QdWJsaWMtRG9tYWluIEFORCBH RkRMLTEuMy1vci1sYXRlciBBTkQgTEdQTC0yLjAtb3ItbGF0ZXIgV0lUSCBHQ0MtZXhjZXB0aW9u LTIuMCBBTkQgR1BMLTMuMC1vci1sYXRlciBXSVRIIEdDQy1leGNlcHRpb24tMy4xIEFORCBHUEwt Mi4wLW9yLWxhdGVyIFdJVEggR05VLWNvbXBpbGVyLWV4Y2VwdGlvbiBBTkQgTUlUCiAjIERvIG5v dCBwcm92aWRlIFVSTCBmb3Igc25hcHNob3RzIGFzIHRoZSBmaWxlIGxhc3RzIHRoZXJlIG9ubHkg Zm9yIDIgZGF5cy4KQEAgLTkyMyw2ICs5MjMsMTkgQEAgZmkKICMgZW5kaWYgc2NsCiAKICVjaGFu Z2Vsb2cKKyogRnJpIEFwciAyNSAyMDI1IEFsZXhhbmRyYSBIw6Fqa292w6EgPGFoYWprb3ZhQHJl ZGhhdC5jb20+CistIEJhY2twb3J0ICJGaXggYW5vdGhlciB0aW1lb3V0IGluIGdkYi5iYXNlL2Jn LWV4ZWN1dGlvbi1yZXBlYXQuZXhwIgorICAoVG9tIGRlIFZyaWVzKQorCisqIFdlZCBBcHIgMjMg MjAyNSBBbGV4YW5kcmEgSMOhamtvdsOhIDxhaGFqa292YUByZWRoYXQuY29tPiAtIDE2LjMtMQor LSBSZWJhc2UgdG8gRlNGIEdEQiAxNi4zLgorICBEZWxldGVkOiBjb3JlLXRhcmdldC1vcGVuLXNl Z2ZhdWx0LnBhdGNoCisgICAgICAgICAgIGdkYi1yaGJ6MjM1NDk5Ny1nc3RhY2stZHJvcC1yZWFk bmV2ZXIucGF0Y2gKKyAgICAgICAgICAgdHVpLXdyZWZyZXNoLWlzc3VlLnBhdGNoCisKKyogV2Vk IEFwciAwMiAyMDI1IEFsZXhhbmRyYSBIw6Fqa292w6EgPGFoYWprb3ZhQHJlZGhhdC5jb20+Cist IFJlbW92ZSB1cHN0cmVhbWVkIGdkYi1yaGJ6LTgxODM0My1zZXQtc29saWItYWJzb2x1dGUtcHJl Zml4LXRlc3RjYXNlLnBhdGNoLgorCiAqIEZyaSBNYXIgMjggMjAyNSBLZWl0aCBTZWl0eiA8a2Vp dGhzQHJlZGhhdC5jb20+IC0gMTYuMi0zCiAtIEJhY2twb3J0ICJGaXggZ3N0YWNrIGlzc3VlcyIg ZnJvbSB1cHN0cmVhbS4KICAgKEtlaXRoIFNlaXR6LCBSSCBCWiAyMzU0OTk3KQoKZGlmZiAtLWdp dCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IGY1ZGNmZWQuLmJlMTVlZTIgMTAwNjQ0Ci0tLSBh L3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSArMSwyIEBACiBTSEE1MTIgKGdkYi0xNi4yLnRh ci54eikgPSBmMDRhNjMzNWRiZGVlMzcxZWRiN2UzMjEzMjk0ZmNiYjg3OGFjMzlhZGVkYjczZjdl MTdlNjIxZjU0MzUwNDg4ZjVmNWJlYTliYzc0MjYzOTIzOWMxMjJkNTkwYmVkMTU4NzcxYTc0ZmMz YWFlYWE3ZmEwYWUzMDQyMzI1NzZhMworU0hBNTEyIChnZGItMTYuMy50YXIueHopID0gZmZmZDY2 ODljMzQwNTQ2NmExNzk2NzBiMDQ3MjBkYzgyNWU0ZjIxMGE3NjFmNjNkZDJiMzMwMjc0MzJmOGNk NWQxYzA1OWM0MzFhNWVjOWUxNjVlZWRkMTkwMTIyMGI1MzI5ZDczYzUyMmY5YTQ0NDc4ODg4OGM3 MzFiMjllOWMKCmRpZmYgLS1naXQgYS90dWktd3JlZnJlc2gtaXNzdWUucGF0Y2ggYi90dWktd3Jl ZnJlc2gtaXNzdWUucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDkzZjViNmYu LjAwMDAwMDAKLS0tIGEvdHVpLXdyZWZyZXNoLWlzc3VlLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMjIwICswLDAgQEAKLUZyb20gRkVET1JBX1BBVENIRVMgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCi1Gcm9tOiBBbmRyZXcgQnVyZ2VzcyA8YWJ1cmdlc3NAcmVkaGF0LmNvbT4KLURhdGU6IFdl ZCwgNSBGZWIgMjAyNSAyMDoxMjowMyArMDAwMAotU3ViamVjdDogdHVpLXdyZWZyZXNoLWlzc3Vl LnBhdGNoCi0KLTs7IEJhY2twb3J0IHVwc3RyZWFtIGNvbW1pdCAyYjY0NmJiODc2NywgdGhpcyBm aXhlcyBhbiBpc3N1ZSB3aGVyZQotOzsgVFVJIG91dHB1dCB3YXMgbm90IGZsdXNoZWQgdG8gdGhl IHNjcmVlbiBpbiBzb21lIGNhc2VzLiAgVGhpcyB3aWxsCi07OyBkcm9wIG91dCB3aGVuIHdlIHJl YmFzZSBvbiAxNi4zIG9yIDE3LjEuCi0KLWdkYi90dWk6IHVzZSB3cmVmcmVzaCBpZiBvdXRwdXQg aXMgbm90IHN1cnByZXNzZWQKLQotUmVjZW50IHdvcmsgaW4gdGhlIFRVSSBoYXMgaW1wcm92ZWQg R0RCJ3MgdXNlIG9mIHRoZSBjdXJzZXMKLXdub3V0cmVmcmVzaCBhbmQgZG91cGRhdGUgbWVjaGFu aXNtLCB3aGljaCBpbXByb3ZlcyBwZXJmb3JtYW5jZSBieQotYmF0Y2hpbmcgdG9nZXRoZXIgdXBk YXRlcyBhbmQgdGhlbiBkb2luZyBhIHNpbmdsZSBzZXQgb2Ygd3JpdGVzIHRvIHRoZQotc2NyZWVu IHdoZW4gZG91cGRhdGUgaXMgZmluYWxseSBjYWxsZWQuCi0KLVRoZSB0dWlfYmF0Y2hfcmVuZGVy aW5nIHR5cGUgaXMgYSBSQUlJIGNsYXNzIHdoaWNoLCBpbiBpdHMgZGVzdHJ1Y3RvciwKLWNhbGxz IGRvdXBkYXRlIHRvIHNlbmQgdGhlIGJhdGNoZWQgdXBkYXRlcyB0byB0aGUgc2NyZWVuLgotCi1I b3dldmVyLCBpZiB0aGVyZSBpcyBubyB0dWlfYmF0Y2hfcmVuZGVyaW5nIGFjdGl2ZSBvbiB0aGUg Y2FsbCBzdGFjawotdGhlbiBhbnkgd25vdXRyZWZyZXNoIGNhbGxzIHdpbGwgcmVtYWluIGJhdGNo ZWQgYnV0IHVuZGlzcGxheWVkIHVudGlsCi10aGUgbmV4dCB0aW1lIGRvdXBkYXRlIGhhcHBlbnMg dG8gYmUgY2FsbGVkLgotCi1UaGlzIHByb2JsZW0gY2FuIGJlIHNlZW4gaW4gUFIgZ2RiLzMyNjIz LiAgV2hlbiBhbiBpbmZlcmlvciBpcyBzdGFydGVkCi10aGUgJ1N0YXJ0aW5nIHByb2dyYW0nIG1l c3NhZ2UgaXMgbm90IGltbWVkaWF0ZWx5IGRpc3BsYXllZCB0byB0aGUKLXVzZXIuCi0KLVRoZSAn U3RhcnRpbmcgcHJvZ3JhbScgbWVzc2FnZSBvcmlnaW5hdGVzIGZyb20gcnVuX2NvbW1hbmRfMSBp bgotaW5mY21kLmMsIHRoZSBtZXNzYWdlIGlzIHNlbnQgdG8gdGhlIGN1cnJlbnRfdWlvdXQsIHdo aWNoIHdpbGwgYmUgdGhlCi1UVUkgdWlfb3V0LiAgQWZ0ZXIgdGhlIG1lc3NhZ2UgaXMgc2VudCwg dWlfb3V0OjpmbHVzaCgpIGlzIGNhbGxlZCwKLWhlcmUncyB0aGUgYmFja3RyYWNlIHdoZW4gdGhh dCBoYXBwZW5zOgotCi0gICMwICB0dWlfZmlsZTo6Zmx1c2ggKHRoaXM9MHgzNmU0YWIwKSBhdCAu Li8uLi9zcmMvZ2RiL3R1aS90dWktZmlsZS5jOjQyCi0gICMxICAweDAwMDAwMDAwMDEwMDRmNGIg aW4gcGFnZXJfZmlsZTo6Zmx1c2ggKHRoaXM9MHgzNmQzNWYwKSBhdCAuLi8uLi9zcmMvZ2RiL3V0 aWxzLmM6MTUzMQotICAjMiAgMHgwMDAwMDAwMDAxMDA0ZjcxIGluIGdkYl9mbHVzaCAoc3RyZWFt PTB4MzZkMzVmMCkgYXQgLi4vLi4vc3JjL2dkYi91dGlscy5jOjE1MzkKLSAgIzMgIDB4MDAwMDAw MDAwMDY5NzVhYiBpbiBjbGlfdWlfb3V0Ojpkb19mbHVzaCAodGhpcz0weDM1YTUwYjApIGF0IC4u Ly4uL3NyYy9nZGIvY2xpLW91dC5jOjI1MAotICAjNCAgMHgwMDAwMDAwMDAwOWZkMWY5IGluIHVp X291dDo6Zmx1c2ggKHRoaXM9MHgzNWE1MGIwKSBhdCAuLi8uLi9zcmMvZ2RiL3VpLW91dC5oOjI2 MwotICAjNSAgMHgwMDAwMDAwMDAwOWY1NmFkIGluIHJ1bl9jb21tYW5kXzEgKGFyZ3M9MHgwLCBm cm9tX3R0eT0xLCBydW5faG93PVJVTl9OT1JNQUwpIGF0IC4uLy4uL3NyYy9nZGIvaW5mY21kLmM6 NDQ5Ci0gICM2ICAweDAwMDAwMDAwMDA5ZjU5OWEgaW4gcnVuX2NvbW1hbmQgKGFyZ3M9MHgwLCBm cm9tX3R0eT0xKSBhdCAuLi8uLi9zcmMvZ2RiL2luZmNtZC5jOjUxMQotCi1BbmQgaWYgd2UgY2hl Y2sgb3V0IHR1aV9maWxlOjpmbHVzaCAodHVpLWZpbGUuYykgd2UgY2FuIHNlZSB0aGF0IHRoaXMK LWp1c3QgY2FsbHMgdHVpX3dpbl9pbmZvOjpyZWZyZXNoX3dpbmRvdygpLCB3aGljaCBpbiB0dXJu LCBqdXN0IHVzZXMKLXdub3V0cmVmcmVzaCB0byBiYXRjaCBhbnkgcGVuZGluZyBvdXRwdXQuCi0K LVRoZSBwcm9ibGVtIGlzIHRoYXQsIGluIHRoZSBhYm92ZSBiYWNrdHJhY2UsIHRoZXJlIGlzIG5v Ci10dWlfYmF0Y2hfcmVuZGVyaW5nIGFjdGl2ZSwgYW5kIHNvIHRoZXJlIHdpbGwgYmUgbm8gZG91 cGRhdGUgY2FsbCB0bwotZmx1c2ggdGhlIG91dHB1dCB0byB0aGUgc2NyZWVuLgotCi1XZSBjb3Vs ZCBhZGQgYSB0dWlfYmF0Y2hfcmVuZGVyaW5nIGludG8gdHVpX2ZpbGU6OmZsdXNoLiAgQW5kCi10 dWlfZmlsZTo6d3JpdGUuICBBbmQgdHVpX2ZpbGU6OnB1dHMgLi4uLi4KLQotLi4uIGJ1dCB0aGF0 IGFsbCBzZWVtcyBhIGJpdCB1bm5lY2Vzc2FyeS4gIEluc3RlYWQsIEkgcHJvcG9zZSB0aGF0Ci10 dWlfd2luX2luZm86OnJlZnJlc2hfd2luZG93KCkgc2hvdWxkIGJlIGNoYW5nZWQuICBJZiBzdXBw cmVzc19vdXRwdXQKLWlzIHRydWUgKGkuZS4gYSB0dWlfYmF0Y2hfcmVuZGVyaW5nIGlzIGFjdGl2 ZSkgdGhlbiB3ZSBzaG91bGQgY29udGludWUKLXRvIGNhbGwgd25vdXRyZWZyZXNoKCkuICBCdXQg aWYgc3VwcHJlc3Nfb3V0cHV0IGlzIGZhbHNlLCBtZWFuaW5nIHRoYXQKLW5vIHR1aV9iYXRjaF9y ZW5kZXJpbmcgaXMgaW4gcGxhY2UsIHRoZW4gd2Ugc2hvdWxkIGNhbGwgd3JlZnJlc2goKSwKLXdo aWNoIGltbWVkaWF0ZWx5IHdyaXRlcyB0aGUgb3V0cHV0IHRvIHRoZSBzY3JlZW4uCi0KLVRlc3Rp bmcgYnV0IFBSIGdkYi8zMjYyMyB3YXMgYSBsaXR0bGUgaW52b2x2ZWQuICBXZSBuZWVkIHRvICdy dW4nIHRoZQotaW5mZXJpb3IgYW5kIGNoZWNrIGZvciB0aGUgJ1N0YXJ0aW5nIHByb2dyYW0nIG1l c3NhZ2UuICBCdXQgRGVqYUdOVVUKLWNhbiBvbmx5IGNoZWNrIGZvciB0aGUgbWVzc2FnZSBvbmNl IGl0IGtub3dzIHRoZSBtZXNzYWdlIHNob3VsZCBoYXZlCi1hcHBlYXJlZC4gIEJ1dCwgYXMgdGhl IGJ1ZyBpcyB0aGF0IG91dHB1dCBpcyBub3QgZGlzcGxheWVkLCB3ZSBkb24ndAotaGF2ZSBhbnkg b3V0cHV0IGhpbnRzIHRoYXQgdGhlIGluZmVyaW9yIGlzIHN0YXJ0ZWQgeWV0Li4uCi0KLUluIHRo ZSBlbmQsIEkgaGF2ZSB0aGUgaW5mZXJpb3IgY3JlYXRlIGEgZmlsZSBpbiB0aGUgdGVzdCdzIG91 dHB1dAotZGlyZWN0b3J5LiAgTm93IERlamFHTlUgY2FuIHNlbmQgdGhlICdydW4nIGNvbW1hbmQs IGFuZCB3YWl0IGZvciB0aGUKLWZpbGUgdG8gYXBwZWFyLiAgT25jZSB0aGF0IGhhcHBlbnMsIHdl IGtub3cgdGhhdCB0aGUgJ1N0YXJ0aW5nCi1wcm9ncmFtJyBtZXNzYWdlIHNob3VsZCBoYXZlIGFw cGVhcmVkLgotCi1CdWc6IGh0dHBzOi8vc291cmNld2FyZS5vcmcvYnVnemlsbGEvc2hvd19idWcu Y2dpP2lkPTMyNjIzCi0KLUFwcHJvdmVkLUJ5OiBUb20gVHJvbWV5IDx0b21AdHJvbWV5LmNvbT4K LQotZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnR1aS9mbHVzaC1hZnRlci1ydW4uYyBi L2dkYi90ZXN0c3VpdGUvZ2RiLnR1aS9mbHVzaC1hZnRlci1ydW4uYwotbmV3IGZpbGUgbW9kZSAx MDA2NDQKLS0tLSAvZGV2L251bGwKLSsrKyBiL2dkYi90ZXN0c3VpdGUvZ2RiLnR1aS9mbHVzaC1h ZnRlci1ydW4uYwotQEAgLTAsMCArMSw1NCBAQAotKy8qIFRoaXMgdGVzdGNhc2UgaXMgcGFydCBv ZiBHREIsIHRoZSBHTlUgZGVidWdnZXIuCi0rCi0rICAgQ29weXJpZ2h0IDIwMjUgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuCi0rCi0rICAgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdh cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKLSsgICBpdCB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi eQotKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCi0rICAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K LSsKLSsgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3 aWxsIGJlIHVzZWZ1bCwKLSsgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZl biB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgotKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNT IEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKLSsgICBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgotKwotKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0rICAgYWxvbmcg d2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vu c2VzLz4uICAqLwotKwotKyNpbmNsdWRlIDx1bmlzdGQuaD4KLSsjaW5jbHVkZSA8c3RkbGliLmg+ Ci0rI2luY2x1ZGUgPHN5cy9zdGF0Lmg+Ci0rI2luY2x1ZGUgPGVycm5vLmg+Ci0rI2luY2x1ZGUg PHN0ZGlvLmg+Ci0rCi0raW50Ci0rbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKLSt7Ci0r ICAvKiBEb24ndCBsZXQgdGhpcyB0ZXN0IHN0YXkgYWxpdmUgZm9yZXZlci4gICovCi0rICBhbGFy bSAoMzAwKTsKLSsKLSsgIGlmIChhcmdjICE9IDIpCi0rICAgIGFib3J0ICgpOwotKwotKyAgLyog Q2hlY2sgdGhlIGZpbGUgZG9lc24ndCBhbHJlYWR5IGV4aXN0LiAgKi8KLSsgIGNvbnN0IGNoYXIg KmZpbGVuYW1lID0gYXJndlsxXTsKLSsgIHN0cnVjdCBzdGF0IGJ1ZjsKLSsgIGlmIChzdGF0IChm aWxlbmFtZSwgJmJ1ZikgPT0gMCB8fCBlcnJubyAhPSBFTk9FTlQpCi0rICAgIGFib3J0ICgpOwot KwotKyAgLyogQ3JlYXRlIHRoZSBmaWxlLCBhbmQgd3JpdGUgc29tZXRoaW5nIGludG8gaXQuICAq LwotKyAgRklMRSAqb3V0ID0gZm9wZW4gKGZpbGVuYW1lLCAidyIpOwotKyAgaWYgKG91dCA9PSBO VUxMKQotKyAgICBhYm9ydCAoKTsKLSsKLSsgIGZwcmludGYgKG91dCwgIkhlbGxvIFdvcmxkXG4i KTsKLSsKLSsgIGlmIChmY2xvc2UgKG91dCkgIT0gMCkKLSsgICAgYWJvcnQgKCk7Ci0rCi0rICAv KiBTcGluIHVudGlsIHRoZSBtYXJrZXIgZmlsZSBpcyBkZWxldGVkLiAgKi8KLSsgIHdoaWxlIChz dGF0IChmaWxlbmFtZSwgJmJ1ZikgPT0gMCkKLSsgICAgc2xlZXAgKDEpOwotKwotKyAgcmV0dXJu IDA7Ci0rfQotZGlmZiAtLWdpdCBhL2dkYi90ZXN0c3VpdGUvZ2RiLnR1aS9mbHVzaC1hZnRlci1y dW4uZXhwIGIvZ2RiL3Rlc3RzdWl0ZS9nZGIudHVpL2ZsdXNoLWFmdGVyLXJ1bi5leHAKLW5ldyBm aWxlIG1vZGUgMTAwNjQ0Ci0tLS0gL2Rldi9udWxsCi0rKysgYi9nZGIvdGVzdHN1aXRlL2dkYi50 dWkvZmx1c2gtYWZ0ZXItcnVuLmV4cAotQEAgLTAsMCArMSw2NiBAQAotKyMgQ29weXJpZ2h0IDIw MjUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCi0rCi0rIyBUaGlzIHByb2dyYW0gaXMg ZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQotKyMg aXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBw dWJsaXNoZWQgYnkKLSsjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJz aW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCi0rIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2 ZXJzaW9uLgotKyMKLSsjIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotKyMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRo b3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSsjIE1FUkNIQU5UQUJJTElUWSBvciBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKLSsjIEdOVSBHZW5lcmFs IFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCi0rIwotKyMgWW91IHNob3VsZCBoYXZl IHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSsjIGFs b25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9s aWNlbnNlcy8+LgotKwotKyMgQ2hlY2sgdGhhdCB0aGUgJ1N0YXJ0aW5nIHByb2dyYW0nIG1lc3Nh Z2UgaXMgY29ycmVjdGx5IGZsdXNoZWQgdG8KLSsjIHRoZSBUVUkgdGVybWluYWwgYXMgc29vbiBh cyBpdCBpcyBhdmFpbGFibGUuCi0rCi0rcmVxdWlyZSBhbGxvd190dWlfdGVzdHMKLStyZXF1aXJl IHRhcmdldF9jYW5fdXNlX3J1bl9jbWQKLSsKLSt0dWl0ZXJtX2VudgotKwotK3N0YW5kYXJkX3Rl c3RmaWxlCi0rCi0raWYge1tidWlsZF9leGVjdXRhYmxlICJmYWlsZWQgdG8gcHJlcGFyZSIgJHt0 ZXN0ZmlsZX0gJHtzcmNmaWxlfV0gPT0gLTF9IHsKLSsgICAgcmV0dXJuIC0xCi0rfQotKwotK1Rl cm06OmNsZWFuX3Jlc3RhcnQgMjQgODAgJHRlc3RmaWxlCi0rCi0raWYgeyFbVGVybTo6ZW50ZXJf dHVpXX0gewotKyAgICB1bnN1cHBvcnRlZCAiVFVJIG5vdCBzdXBwb3J0ZWQiCi0rICAgIHJldHVy bgotK30KLSsKLSsjIFBpY2sgYSBuYW1lIGZvciBhIG1hcmtlciBmaWxlLCBhbmQgZW5zdXJlIGl0 IGRvZXNuJ3QgZXhpc3QuCi0rc2V0IG1hcmtlcl9maWxlIFtzdGFuZGFyZF9vdXRwdXRfZmlsZSAi bWFya2VyIl0KLStmaWxlIGRlbGV0ZSAkbWFya2VyX2ZpbGUKLSsKLSsjIFJ1biB0aGUgaW5mZXJp b3IsIHdoaWNoIHdpbGwgY3JlYXRlIE1BUktFUl9GSUxFLgotK3NlbmRfZ2RiICJydW4gXCIkbWFy a2VyX2ZpbGVcIlxuIgotKwotKyMgU3BpbiB1bnRpbCBNQVJLRVJfRklMRSBhcHBlYXJzLgotK3do aWxlIHsgISBbZmlsZSBleGlzdHMgJG1hcmtlcl9maWxlXSB9IHsKLSsgICAgc2xlZXAgMQotK30K LSsKLSsjIFdlIG5vdyBrbm93IHRoYXQgdGhlIGluZmVyaW9yIGhhcyBzdGFydGVkLCBhbmQgdGhh dCB0aGUgJ1N0YXJ0aW5nCi0rIyBwcm9ncmFtOiAnIHN0cmluZyBzaG91bGQgaGF2ZSBiZWVuIHBy aW50ZWQgdG8gdGhlIHRlcm1pbmFsLiAgRG9uJ3QKLSsjIHVzZSBUZXJtOjp3YWl0X2ZvciBoZXJl IGFzIHRoZXJlIHdpbGwgYmUgbm8gcHJvbXB0IGFmdGVyIHRoZQotKyMgJ1N0YXJ0aW5nIHByb2dy YW0nIG1lc3NhZ2UuCi0rZ2RiX2Fzc2VydCB7W1Rlcm06OndhaXRfZm9yX3JlZ2lvbl9jb250ZW50 cyAwIDE2IDgwIDcgIlN0YXJ0aW5nIHByb2dyYW06ICJdfSBcCi0rICAgICJzdGFydGluZyBwcm9n cmFtIG1lc3NhZ2UgaGFzIGFwcGVhcmVkIgotKwotKyMgRGVsZXRlIE1BUktFUl9GSUxFLiAgVGhp cyB3aWxsIGNhdXNlIHRoZSBpbmZlcmlvciB0byBleGl0LgotK2ZpbGUgZGVsZXRlICRtYXJrZXJf ZmlsZQotKwotKyMgTm93IHdhaXQgZm9yIHRoZSBwcm9tcHQsIGFuZCBjaGVjayB0aGF0IHRoZSBp bmZlcmlvciBleGl0ZWQgbWVzc2FnZQotKyMgYXBwZWFyZWQuCi0rZ2RiX2Fzc2VydCB7W1Rlcm06 OndhaXRfZm9yICIiXX0gXAotKyAgICAid2FpdCBmb3IgcHJvbXB0IGFmdGVyIGluZmVyaW9yIGV4 aXRzIgotK1Rlcm06OmNoZWNrX3JlZ2lvbl9jb250ZW50cyBcCi0rICAgICJjaGVjayBmb3IgaW5m ZXJpb3IgZXhpdGVkIG1lc3NhZ2UiIFwKLSsgICAgMCAxNiA4MCA4IFwKLSsgICAgIlxcXFtJbmZl cmlvciAkZGVjaW1hbCBcW15cclxuXF0rIGV4aXRlZCBub3JtYWxseVxcXF0iCi1kaWZmIC0tZ2l0 IGEvZ2RiL3R1aS90dWktd2luZ2VuZXJhbC5jIGIvZ2RiL3R1aS90dWktd2luZ2VuZXJhbC5jCi0t LS0gYS9nZGIvdHVpL3R1aS13aW5nZW5lcmFsLmMKLSsrKyBiL2dkYi90dWkvdHVpLXdpbmdlbmVy YWwuYwotQEAgLTU2LDcgKzU2LDEyIEBAIHZvaWQKLSB0dWlfd2luX2luZm86OnJlZnJlc2hfd2lu ZG93ICgpCi0gewotICAgaWYgKGhhbmRsZSAhPSBOVUxMKQotLSAgICB3bm91dHJlZnJlc2ggKGhh bmRsZS5nZXQgKCkpOwotKyAgICB7Ci0rICAgICAgaWYgKHN1cHByZXNzX291dHB1dCkKLSsJd25v dXRyZWZyZXNoIChoYW5kbGUuZ2V0ICgpKTsKLSsgICAgICBlbHNlCi0rCXdyZWZyZXNoIChoYW5k bGUuZ2V0ICgpKTsKLSsgICAgfQotIH0KLSAKLSAvKiBEcmF3IGEgYm9yZGVyIGFyb3VuZCB0aGUg d2luZG93LiAgKi8K