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: Takao Fujiwara To: git-commits@fedoraproject.org Subject: [rpms/ibus] f44: Backport upstream patches Date: Wed, 03 Jun 2026 03:16:24 GMT Message-ID: <178045658422.1.7619523802956667475.rpms-ibus-2f7e8dde9a6c@fedoraproject.org> List-ID: X-Git-Repo: rpms/ibus X-Git-Branch: f44 X-Git-Rev: 2f7e8dde9a6cf91645d060ed161e11aa06ebcc82 ICAgICAgICAgICAgQSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KCiAgICAgICAgICAgIFJl cG8gICA6IHJwbXMvaWJ1cwogICAgICAgICAgICBCcmFuY2ggOiBmNDQKICAgICAgICAgICAgQ29t bWl0IDogMmY3ZThkZGU5YTZjZjkxNjQ1ZDA2MGVkMTYxZTExYWEwNmViY2M4MgogICAgICAgICAg ICBBdXRob3IgOiBUYWthbyBGdWppd2FyYSA8dGZ1aml3YXJAcmVkaGF0LmNvbT4KICAgICAgICAg ICAgRGF0ZSAgIDogMjAyNi0wNi0wM1QxMjoxMTozOCswOTowMAogICAgICAgICAgICBTdGF0cyAg OiArMTY2My8tMjcgaW4gMyBmaWxlKHMpCiAgICAgICAgICAgIFVSTCAgICA6IGh0dHBzOi8vc3Jj LmZlZG9yYXByb2plY3Qub3JnL3JwbXMvaWJ1cy9jLzJmN2U4ZGRlOWE2Y2Y5MTY0NWQwNjBlZDE2 MWUxMWFhMDZlYmNjODI/YnJhbmNoPWY0NAoKICAgICAgICAgICAgTG9nOgogICAgICAgICAgICBC YWNrcG9ydCB1cHN0cmVhbSBwYXRjaGVzCgotIE1ha2UgYW4gSUJ1c1RleHQgb3duIGFuIHVwZGF0 ZWQgSUJ1c0F0dHJMaXN0IHJlZmVyZW5jZQotIFJlc29sdmVzOiAjMjQ0NDc4NyBTRUdWIHdpdGgg d3JvbmcgYW5jaG9yIGluIHN1cnJvdW5kaW5nLXRleHQgaW4gV2F5bGFuZAotIFVwZGF0ZXM6ICMy NDgwNDA4IElCdXMgY2FsbGJhY2tzIGluIFdheWxhbmQgdG8gY2xhcmlmeSBTRUdWcwoKLS0tCmRp ZmYgLS1naXQgYS9pYnVzLTEzODUzNDktc2Vndi1idXMtcHJveHkucGF0Y2ggYi9pYnVzLTEzODUz NDktc2Vndi1idXMtcHJveHkucGF0Y2gKaW5kZXggOTA4NGVlMC4uZTdjN2IzMCAxMDA2NDQKLS0t IGEvaWJ1cy0xMzg1MzQ5LXNlZ3YtYnVzLXByb3h5LnBhdGNoCisrKyBiL2lidXMtMTM4NTM0OS1z ZWd2LWJ1cy1wcm94eS5wYXRjaApAQCAtMSw2ICsxLDYgQEAKIEZyb20gNjU2MzkwZGY0NmJhOTYz YWZlNTE0MjBlY2I5Mzk5YjZkZGU5YTJiZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKIEZyb206 IGZ1aml3YXJhdCA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KLURhdGU6IEZyaSwgMTIgSnVs IDIwMjQgMjM6MzA6MjUgKzA5MDAKK0RhdGU6IFRodSwgMzAgQXByIDIwMjYgMDk6MDA6MDAgKzA5 MDAKIFN1YmplY3Q6IFtQQVRDSF0gRml4IFNFR1YgaW4gYnVzX3BhbmVsX3Byb3h5X2ZvY3VzX2lu KCkKIAogcmhieiMxMzUwMjkxIFNFR1YgaW4gQlVTX0lTX0NPTk5FQ1RJT04oc2tpcF9jb25uZWN0 aW9uKSBpbgpAQCAtMzksMjcgKzM5LDM0IEBAIHJoYnojMjIzOTYzMyBTRUdWIHdpdGggZ19vYmpl Y3RfdW5yZWYoKSBpbgogaWJ1c19wb3J0YWxfY29udGV4dF9oYW5kbGVfZGVzdHJveSgpCiBDb25u ZWN0ICJoYW5kbGUtZGVzdHJveSIgc2lnbmFsIGFmdGVyIGdfbGlzdF9wcmVwZW5kKCkuCiAKLUJV Rz1yaGJ6IzEzNTAyOTEKLUJVRz1yaGJ6IzE2MDE1NzcKLUJVRz1yaGJ6IzE2NjM1MjgKLUJVRz1y aGJ6IzE3OTU0OTkKLUJVRz1yaGJ6IzE3NzEyMzgKLUJVRz1yaGJ6IzE3Njc5NzYKLUJVRz1yaGJ6 IzIxNTEzNDQKLUJVRz1yaGJ6IzIxOTU4OTUKLUJVRz1yaGJ6IzIyMzk2MzMKK3JoYnojMjQ4MDQw OCBTRUdWIHdpdGggendwX2lucHV0X21ldGhvZF9jb250ZXh0X3YxX3ByZWVkaXRfc3RyaW5nKCkg aW4KK19jb250ZXh0X2hpZGVfcHJlZWRpdF90ZXh0X2NiKCkKK0lmIHRoZSBgendwX2lucHV0X21l dGhvZF9jb250ZXh0X3YxYCBpcyBkZWFjdGl2YXRlLCB0aGUgYElCdXNJTUNvbnRleHRgCitpcyBz aG91bGQgYmUgY2xlYXJlZCBhbmQgdGhlICJoaWRlLXByZWVkaXQtdGV4dCIgc2lnbmFsIGlzIGFs c28KK2Rpc2Nvbm5lY3RlZC4KKworQ2xvc2VzOiByaGJ6IzEzNTAyOTEKK0Nsb3NlczogcmhieiMx NjAxNTc3CitDbG9zZXM6IHJoYnojMTY2MzUyOAorQ2xvc2VzOiByaGJ6IzE3OTU0OTkKK0Nsb3Nl czogcmhieiMxNzcxMjM4CitDbG9zZXM6IHJoYnojMTc2Nzk3NgorQ2xvc2VzOiByaGJ6IzIxNTEz NDQKK0Nsb3NlczogcmhieiMyMTk1ODk1CitDbG9zZXM6IHJoYnojMjIzOTYzMworQ2xvc2VzOiBy aGJ6IzI0ODA0MDgKIC0tLQotIGJ1cy9kYnVzaW1wbC5jICAgICAgICAgfCA0NyArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCi0gYnVzL2VuZ2luZXByb3h5LmMgICAgICB8 IDQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0KLSBidXMvcGFuZWxwcm94 eS5jICAgICAgIHwgIDkgKysrKysrKy0KLSBjbGllbnQveDExL21haW4uYyAgICAgIHwgNDkgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCi0gcG9ydGFsL3BvcnRhbC5j ICAgICAgICB8IDI1ICsrKysrKysrKysrKysrKystLS0tLQotIHNyYy9pYnVzYnVzLmMgICAgICAg ICAgfCAgNiArKysrKysKLSB1aS9ndGszL3N3aXRjaGVyLnZhbGEgIHwgNDggKysrKysrKysrKysr KysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0KLSA3IGZpbGVzIGNoYW5nZWQsIDE4OCBpbnNl cnRpb25zKCspLCA0NCBkZWxldGlvbnMoLSkKKyBidXMvZW5naW5lcHJveHkuYyAgICAgICAgICAg ICAgfCA0NCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0KKyBidXMvcGFuZWxwcm94eS5j ICAgICAgICAgICAgICAgfCAgOSArKysrKystCisgY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRp bS5jIHwgMjAgKysrKysrKysrKysrKy0KKyBjbGllbnQveDExL21haW4uYyAgICAgICAgICAgICAg fCA0OSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCisgcG9ydGFsL3BvcnRhbC5j ICAgICAgICAgICAgICAgIHwgMjUgKysrKysrKysrKysrKy0tLS0KKyBzcmMvaWJ1c2J1cy5jICAg ICAgICAgICAgICAgICAgfCAgNiArKysrKworIHVpL2d0azMvc3dpdGNoZXIudmFsYSAgICAgICAg ICB8IDQ4ICsrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLQorIDggZmlsZXMgY2hhbmdl ZCwgMjAzIGluc2VydGlvbnMoKyksIDQ1IGRlbGV0aW9ucygtKQogCiBkaWZmIC0tZ2l0IGEvYnVz L2RidXNpbXBsLmMgYi9idXMvZGJ1c2ltcGwuYwotaW5kZXggNzA3OTJiZTguLjljNTM1YmYyIDEw MDY0NAoraW5kZXggNzA3OTJiZS4uOWM1MzViZiAxMDA2NDQKIC0tLSBhL2J1cy9kYnVzaW1wbC5j CiArKysgYi9idXMvZGJ1c2ltcGwuYwogQEAgLTYzNCw2ICs2MzQsNyBAQCBzdGF0aWMgdm9pZApA QCAtMTQ3LDcgKzE1NCw3IEBAIGluZGV4IDcwNzkyYmU4Li45YzUzNWJmMiAxMDA2NDQKICAgICAg aWYgKGluY29taW5nKSB7CiAgICAgICAgICAvKiBpcyBpbmNvbWluZyBtZXNzYWdlICovCiBkaWZm IC0tZ2l0IGEvYnVzL2VuZ2luZXByb3h5LmMgYi9idXMvZW5naW5lcHJveHkuYwotaW5kZXggMzc3 MzZiNjkuLjdmMzQ2MDRjIDEwMDY0NAoraW5kZXggMzc3MzZiNi4uN2YzNDYwNCAxMDA2NDQKIC0t LSBhL2J1cy9lbmdpbmVwcm94eS5jCiArKysgYi9idXMvZW5naW5lcHJveHkuYwogQEAgLTc3NSwx MCArNzc1LDEyIEBAIGJ1c19lbmdpbmVfcHJveHlfZ19zaWduYWwgKEdEQnVzUHJveHkgICpwcm94 eSwKQEAgLTI0Nyw3ICsyNTQsNyBAQCBpbmRleCAzNzczNmI2OS4uN2YzNDYwNGMgMTAwNjQ0CiAg ICAgIC8qIEZJWE1FOiBzZXQgZGVzdHJveSBjYWxsYmFjayA/ICovCiAgICAgIGdfdGFza19yZXR1 cm5fcG9pbnRlciAoZGF0YS0+dGFzaywgZW5naW5lLCBOVUxMKTsKIGRpZmYgLS1naXQgYS9idXMv cGFuZWxwcm94eS5jIGIvYnVzL3BhbmVscHJveHkuYwotaW5kZXggNGMyYzg4ODUuLmE3YmVjMTkz IDEwMDY0NAoraW5kZXggNGMyYzg4OC4uYTdiZWMxOSAxMDA2NDQKIC0tLSBhL2J1cy9wYW5lbHBy b3h5LmMKICsrKyBiL2J1cy9wYW5lbHByb3h5LmMKIEBAIC0xMjQsNiArMTI0LDggQEAgYnVzX3Bh bmVsX3Byb3h5X25ldyAoQnVzQ29ubmVjdGlvbiAqY29ubmVjdGlvbiwKQEAgLTI4MCw4ICsyODcs ODEgQEAgaW5kZXggNGMyYzg4ODUuLmE3YmVjMTkzIDEwMDY0NAogICAgICBwYW5lbCA9IEJVU19Q QU5FTF9QUk9YWSAob2JqKTsKICAgICAgcGFuZWwtPnBhbmVsX3R5cGUgPSBwYW5lbF90eXBlOwog ICAgICByZXR1cm4gcGFuZWw7CitkaWZmIC0tZ2l0IGEvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxh bmRpbS5jIGIvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jCitpbmRleCA1NzYyZjEwLi5m MWUzYjllIDEwMDY0NAorLS0tIGEvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jCisrKysg Yi9jbGllbnQvd2F5bGFuZC9pYnVzd2F5bGFuZGltLmMKK0BAIC0zODcsNyArMzg3LDcgQEAgaWJ1 c193YXlsYW5kX2ltX2NvbW1pdF90ZXh0IChJQnVzV2F5bGFuZElNICp3bGltLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2hhciAgICAqc3RyKQorIHsKKyAgICAgSUJ1c1dh eWxhbmRJTVByaXZhdGUgKnByaXY7CistICAgIGdfcmV0dXJuX2lmX2ZhaWwgKElCVVNfSVNfV0FZ TEFORF9JTSAod2xpbSkpOworKyAgICBnX2Fzc2VydCAoSUJVU19JU19XQVlMQU5EX0lNICh3bGlt KSk7CisgICAgIHByaXYgPSBpYnVzX3dheWxhbmRfaW1fZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHds aW0pOworICAgICBzd2l0Y2ggKHByaXYtPnZlcnNpb24pIHsKKyAgICAgY2FzZSBJTlBVVF9NRVRI T0RfVjE6CitAQCAtODIyLDYgKzgyMiwxNCBAQCBfY29udGV4dF9jb21taXRfdGV4dF9jYiAoSUJ1 c0lucHV0Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgSUJ1c1Rl eHQgICAgICAgICAqdGV4dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgSUJ1c1dheWxhbmRJ TSAgICAqd2xpbSkKKyB7CisrICAgIElCdXNXYXlsYW5kSU1Qcml2YXRlICpwcml2OworKworKyAg ICBnX3JldHVybl9pZl9mYWlsIChJQlVTX0lTX1dBWUxBTkRfSU0gKHdsaW0pKTsKKysgICAgcHJp diA9IGlidXNfd2F5bGFuZF9pbV9nZXRfaW5zdGFuY2VfcHJpdmF0ZSAod2xpbSk7CisrICAgIC8q IEZJWE1FOiByaGJ6IzI0ODA0MDggSWYgcHJpdi0+aWJ1c2NvbnRleHQgZXhpc3RzLAorKyAgICAg KiBwcml2LT5jb250ZXh0IGFsc28gc2hvdWxkIGV4aXN0cy4KKysgICAgICovCisrICAgIGdfYXNz ZXJ0IChwcml2LT5pYnVzY29udGV4dCk7CisgICAgIGlidXNfd2F5bGFuZF9pbV9jb21taXRfdGV4 dCAod2xpbSwgdGV4dC0+dGV4dCk7CisgfQorIAorQEAgLTgzOCw2ICs4NDYsOCBAQCBfY29udGV4 dF9mb3J3YXJkX2tleV9ldmVudF9jYiAoSUJ1c0lucHV0Q29udGV4dCAqY29udGV4dCwKKyAKKyAg ICAgZ19yZXR1cm5faWZfZmFpbCAoSUJVU19JU19XQVlMQU5EX0lNICh3bGltKSk7CisgICAgIHBy aXYgPSBpYnVzX3dheWxhbmRfaW1fZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHdsaW0pOworKyAgICAv KiBGSVhNRTogcmhieiMyNDgwNDA4ICovCisrICAgIGdfYXNzZXJ0IChwcml2LT5pYnVzY29udGV4 dCk7CisgICAgIGlmIChtb2RpZmllcnMgJiBJQlVTX1JFTEVBU0VfTUFTSykKKyAgICAgICAgIHN0 YXRlID0gV0xfS0VZQk9BUkRfS0VZX1NUQVRFX1JFTEVBU0VEOworICAgICBlbHNlCitAQCAtMTA1 NSw2ICsxMDY1LDggQEAgX2NvbnRleHRfc2hvd19wcmVlZGl0X3RleHRfY2IgKElCdXNJbnB1dENv bnRleHQgKmNvbnRleHQsCisgICAgIGNvbnN0IGNoYXIgKmNvbW1pdCA9ICIiOworICAgICBnX3Jl dHVybl9pZl9mYWlsIChJQlVTX0lTX1dBWUxBTkRfSU0gKHdsaW0pKTsKKyAgICAgcHJpdiA9IGli dXNfd2F5bGFuZF9pbV9nZXRfaW5zdGFuY2VfcHJpdmF0ZSAod2xpbSk7CisrICAgIC8qIEZJWE1F OiByaGJ6IzI0ODA0MDggKi8KKysgICAgZ19hc3NlcnQgKHByaXYtPmlidXNjb250ZXh0KTsKKyAg ICAgLyogQ1VSU09SIGlzIGJ5dGUgb2Zmc2V0LiAgKi8KKyAgICAgY3Vyc29yID0KKyAgICAgICAg IGdfdXRmOF9vZmZzZXRfdG9fcG9pbnRlciAocHJpdi0+cHJlZWRpdF90ZXh0LT50ZXh0LAorQEAg LTEwOTgsNiArMTExMCw4IEBAIF9jb250ZXh0X2hpZGVfcHJlZWRpdF90ZXh0X2NiIChJQnVzSW5w dXRDb250ZXh0ICpjb250ZXh0LAorICAgICBJQnVzV2F5bGFuZElNUHJpdmF0ZSAqcHJpdjsKKyAg ICAgZ19yZXR1cm5faWZfZmFpbCAoSUJVU19JU19XQVlMQU5EX0lNICh3bGltKSk7CisgICAgIHBy aXYgPSBpYnVzX3dheWxhbmRfaW1fZ2V0X2luc3RhbmNlX3ByaXZhdGUgKHdsaW0pOworKyAgICAv KiBGSVhNRTogcmhieiMyNDgwNDA4ICovCisrICAgIGdfYXNzZXJ0IChwcml2LT5pYnVzY29udGV4 dCk7CisgICAgIHN3aXRjaCAocHJpdi0+dmVyc2lvbikgeworICAgICBjYXNlIElOUFVUX01FVEhP RF9WMToKKyAgICAgICAgIHp3cF9pbnB1dF9tZXRob2RfY29udGV4dF92MV9wcmVlZGl0X3N0cmlu ZyAocHJpdi0+Y29udGV4dCwKK0BAIC0xMTM3LDYgKzExNTEsOCBAQCBfY29udGV4dF91cGRhdGVf cHJlZWRpdF90ZXh0X2NiIChJQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0LAorICAgICBwcml2LT5w cmVlZGl0X2N1cnNvcl9wb3MgPSBjdXJzb3JfcG9zOworICAgICBwcml2LT5wcmVlZGl0X21vZGUg PSBtb2RlOworIAorKyAgICAvKiBGSVhNRTogcmhieiMyNDgwNDA4ICovCisrICAgIGdfYXNzZXJ0 IChwcml2LT5pYnVzY29udGV4dCk7CisgICAgIGlmICh2aXNpYmxlKQorICAgICAgICAgX2NvbnRl eHRfc2hvd19wcmVlZGl0X3RleHRfY2IgKGNvbnRleHQsIHdsaW0pOworICAgICBlbHNlCitAQCAt MTE2MSw2ICsxMTc3LDggQEAgX2NvbnRleHRfZGVsZXRlX3N1cnJvdW5kaW5nX3RleHRfY2IgKElC dXNJbnB1dENvbnRleHQgKmNvbnRleHQsCisgICAgIGdfcmV0dXJuX2lmX2ZhaWwgKElCVVNfSVNf V0FZTEFORF9JTSAod2xpbSkpOworICAgICBwcml2ID0gaWJ1c193YXlsYW5kX2ltX2dldF9pbnN0 YW5jZV9wcml2YXRlICh3bGltKTsKKyAKKysgICAgLyogRklYTUU6IHJoYnojMjQ4MDQwOCAqLwor KyAgICBnX2Fzc2VydCAocHJpdi0+aWJ1c2NvbnRleHQpOworICAgICBpZiAoIXByaXYtPnN1cnJv dW5kaW5nX3RleHQpCisgICAgICAgICByZXR1cm47CisgCiBkaWZmIC0tZ2l0IGEvY2xpZW50L3gx MS9tYWluLmMgYi9jbGllbnQveDExL21haW4uYwotaW5kZXggNWZhZGQ0M2QuLjI2ZDRhN2YxIDEw MDY0NAoraW5kZXggYWNjZWJkZS4uY2FjNGNkNiAxMDA2NDQKIC0tLSBhL2NsaWVudC94MTEvbWFp bi5jCiArKysgYi9jbGllbnQveDExL21haW4uYwogQEAgLTQ1LDYgKzQ1LDcgQEAKQEAgLTQyOCw3 ICs1MDgsNyBAQCBpbmRleCA1ZmFkZDQzZC4uMjZkNGE3ZjEgMTAwNjQ0CiAgICAgIGlidXNfaW5w dXRfY29udGV4dF9yZXNldCAoeDExaWMtPmNvbnRleHQpOwogIAogZGlmZiAtLWdpdCBhL3BvcnRh bC9wb3J0YWwuYyBiL3BvcnRhbC9wb3J0YWwuYwotaW5kZXggNWNkMzg3NzkuLjUxMTBiYWFkIDEw MDY0NAoraW5kZXggNWNkMzg3Ny4uNTExMGJhYSAxMDA2NDQKIC0tLSBhL3BvcnRhbC9wb3J0YWwu YwogKysrIGIvcG9ydGFsL3BvcnRhbC5jCiBAQCAtOTIsNiArOTIsMTEgQEAgc3RhdGljIHZvaWQg cG9ydGFsX2NvbnRleHRfZ19zaWduYWwgKEdEQnVzUHJveHkgICAgICAgICpwcm94eSwKQEAgLTQ4 Nyw3ICs1NjcsNyBAQCBpbmRleCA1Y2QzODc3OS4uNTExMGJhYWQgMTAwNjQ0CiAgICAgICAgICAg ICAgICAgIGdfb2JqZWN0X3VucmVmIChwb3J0YWxfY29udGV4dCk7CiAgICAgICAgICAgICAgfQog ZGlmZiAtLWdpdCBhL3NyYy9pYnVzYnVzLmMgYi9zcmMvaWJ1c2J1cy5jCi1pbmRleCA1NDBkMWRh My4uZGVmZGI3M2IgMTAwNjQ0CitpbmRleCA1NDBkMWRhLi5kZWZkYjczIDEwMDY0NAogLS0tIGEv c3JjL2lidXNidXMuYwogKysrIGIvc3JjL2lidXNidXMuYwogQEAgLTc1MCw2ICs3NTAsMTIgQEAg aWJ1c19idXNfZGVzdHJveSAoSUJ1c09iamVjdCAqb2JqZWN0KQpAQCAtNTA0LDcgKzU4NCw3IEBA IGluZGV4IDU0MGQxZGEzLi5kZWZkYjczYiAxMDA2NDQKICAgICAgICAgIGJ1cy0+cHJpdi0+bW9u aXRvciA9IE5VTEw7CiAgICAgIH0KIGRpZmYgLS1naXQgYS91aS9ndGszL3N3aXRjaGVyLnZhbGEg Yi91aS9ndGszL3N3aXRjaGVyLnZhbGEKLWluZGV4IGQ0YTVmYTExLi43ODhlZWEwNiAxMDA2NDQK K2luZGV4IGQ0YTVmYTEuLjc4OGVlYTAgMTAwNjQ0CiAtLS0gYS91aS9ndGszL3N3aXRjaGVyLnZh bGEKICsrKyBiL3VpL2d0azMvc3dpdGNoZXIudmFsYQogQEAgLTI1MSwyNyArMjUxLDM3IEBAIGNs YXNzIFN3aXRjaGVyIDogR3RrLldpbmRvdyB7CkBAIC01NjUsNSArNjQ1LDUgQEAgaW5kZXggZDRh NWZhMTEuLjc4OGVlYTA2IDEwMDY0NAogICAgICAgICAgc2VhdC51bmdyYWIoKTsKICAKIC0tIAot Mi41MS4wCisyLjUzLjAKIAoKZGlmZiAtLWdpdCBhL2lidXMtSEVBRC5wYXRjaCBiL2lidXMtSEVB RC5wYXRjaAppbmRleCBlNjlkZTI5Li4wNWQ5M2RlIDEwMDY0NAotLS0gYS9pYnVzLUhFQUQucGF0 Y2gKKysrIGIvaWJ1cy1IRUFELnBhdGNoCkBAIC0wLDAgKzEsMTU0OSBAQAorRnJvbSAyZTkwMWJi NzRkOGQ3Yjc3NWExNWVkZGRlOWY3OTRmZmIyYzI1M2NiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogZnVqaXdhcmF0IDx0YWthby5mdWppd2FyYTFAZ21haWwuY29tPgorRGF0ZTogVHVl LCAxOSBNYXkgMjAyNiAxOTozMTozOCArMDkwMAorU3ViamVjdDogW1BBVENIIDAxLzE1XSBVcGRh dGUgdGVzdCBidWlsZHMgd2hpY2ggaXMgcGFydCBvZiBNZXNvbiBidWlsZHMKKworYmluZGluZ3Mv cHlnb2JqZWN0L3Rlc3Qtb3ZlcnJpZGUtaWJ1czogQWRkIGdpLnJlcXVpcmVfdmVyc2lvbnMoKS4K K2J1cy90ZXN0LW1hdGNocnVsZTogU3VwcG9ydCB0aGUgVEFQIHRlc3QuCitidXMvdGVzdC1zdHJl c3M6IFN1cHBvcnQgdGhlIFRBUCB0ZXN0Lgorc3JjL2lidXNjb21wb3NldGFibGU6IFJlcGxhY2Ug Z19wcmludCgpIHdpdGggZ19kZWJ1ZygpIGZvciBUQVAgY29tbWVudHMuCitzcmMvdGVzdHMvaWJ1 cy1rZXlwcmVzczogUHJlcGVuZCAiIyAiIGZvciBUQVAgY29tbWVudHMuCitzcmMvdGVzdHMvaWJ1 cy1yZWdpc3RyeTogU3VwcG9ydCB0aGUgVEFQIHRlc3QuCitzcmMvdGVzdHMvaWJ1cy11dGlsOiBT dXBwb3J0IHRoZSBUQVAgdGVzdC4KK3NyYy90ZXN0cy9ydW50ZXN0OgorIC0gRXhwZWN0IHRoZSBy ZWxhdGl2ZSBwYXRocyBmb3IgQXV0b3Rvb2wgYW5kIGFic29sdXRlIHBhdGhzIGZvciBNZXNvbi4K KyAtIFN1cHBvcnQgUHl0aG9uIHRlc3RzLgorIC0gQ2Vhc2Ugd2FybmluZ3Mgd2l0aCBgZ2xpYi1j b21waWxlLXNjaGVtYXNgIGNvbW1hbmQuCisgLSBFbmFibGUgc3VidGVzdHMgd2l0aCBUQVAgZm9y IE1lc29uIGFuZCBzZXQgR19URVNUX1JPT1RfUFJPQ0VTUworICAgdG8gY29uc2lzdCB0ZXN0IGNh c2VzIGluIFBsYW4gYW5kIG9uZXMgaW4gdGVzdCByZXN1bHRzLgorc3JjL3Rlc3RzL3hrYi1sYXRp bi1sYXlvdXRzOiBTdXBwb3J0IHRoZSBUQVAgdGVzdC4KKy0tLQorIGJpbmRpbmdzL3B5Z29iamVj dC90ZXN0LW92ZXJyaWRlLWlidXMucHkgfCAgIDIgKworIGJ1cy90ZXN0LW1hdGNocnVsZS5jICAg ICAgICAgICAgICAgICAgICAgfCAgMjYgKysrKy0tCisgYnVzL3Rlc3Qtc3RyZXNzLmMgICAgICAg ICAgICAgICAgICAgICAgICB8ICAxNyArKy0tCisgc3JjL2lidXNjb21wb3NldGFibGUuYyAgICAg ICAgICAgICAgICAgICB8ICAzOCArKysrKy0tLQorIHNyYy90ZXN0cy9pYnVzLWtleXByZXNzLmMg ICAgICAgICAgICAgICAgfCAgIDYgKy0KKyBzcmMvdGVzdHMvaWJ1cy1yZWdpc3RyeS5jICAgICAg ICAgICAgICAgIHwgIDE1ICsrKy0KKyBzcmMvdGVzdHMvaWJ1cy11dGlsLmMgICAgICAgICAgICAg ICAgICAgIHwgIDE0ICsrLQorIHNyYy90ZXN0cy9ydW50ZXN0ICAgICAgICAgICAgICAgICAgICAg ICAgfCAxMDkgKysrKysrKysrKysrKysrKysrLS0tLS0KKyBzcmMvdGVzdHMveGtiLWxhdGluLWxh eW91dHMgICAgICAgICAgICAgIHwgIDIxICsrKy0tCisgOSBmaWxlcyBjaGFuZ2VkLCAyODQgaW5z ZXJ0aW9ucygrKSwgOTYgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9iaW5kaW5ncy9weWdv YmplY3QvdGVzdC1vdmVycmlkZS1pYnVzLnB5IGIvYmluZGluZ3MvcHlnb2JqZWN0L3Rlc3Qtb3Zl cnJpZGUtaWJ1cy5weQoraW5kZXggMDg3YTY1NTguLjg4NTNmZjY0IDEwMDY0NAorLS0tIGEvYmlu ZGluZ3MvcHlnb2JqZWN0L3Rlc3Qtb3ZlcnJpZGUtaWJ1cy5weQorKysrIGIvYmluZGluZ3MvcHln b2JqZWN0L3Rlc3Qtb3ZlcnJpZGUtaWJ1cy5weQorQEAgLTMxLDYgKzMxLDggQEAgdGVzdHNfYnVp bGRkaXIgPSBvcy5wYXRoLmFic3BhdGgob3MucGF0aC5kaXJuYW1lKF9fZmlsZV9fKSkKKyBzeXMu cGF0aCA9IFtwYXRoIGZvciBwYXRoIGluIHN5cy5wYXRoIGlmIHBhdGggIT0gdGVzdHNfYnVpbGRk aXJdCisgc3lzLnBhdGguYXBwZW5kKHRlc3RzX2J1aWxkZGlyKQorIAorK2ltcG9ydCBnaQorK2dp LnJlcXVpcmVfdmVyc2lvbnMoeydHTGliJzogJzIuMCcsICdJQnVzJzogJzEuMCd9KQorIGZyb20g Z2kucmVwb3NpdG9yeSBpbXBvcnQgR0xpYiwgSUJ1cworIAorIGNsYXNzIFRlc3RPdmVycmlkZSh1 bml0dGVzdC5UZXN0Q2FzZSk6CitkaWZmIC0tZ2l0IGEvYnVzL3Rlc3QtbWF0Y2hydWxlLmMgYi9i dXMvdGVzdC1tYXRjaHJ1bGUuYworaW5kZXggZDg1ZmM5MGMuLjE1YTRlZDQ1IDEwMDY0NAorLS0t IGEvYnVzL3Rlc3QtbWF0Y2hydWxlLmMKKysrKyBiL2J1cy90ZXN0LW1hdGNocnVsZS5jCitAQCAt MTYsMTUgKzE2LDEzIEBAIHN0cnVjdCBfQnVzTWF0Y2hSdWxlIHsKKyAgICAgR0xpc3QgKnJlY2lw aWVudHM7CisgfTsKKyAKKy1pbnQKKy1tYWluKGdpbnQgYXJnYywgZ2NoYXIgKiphcmd2KQorK3N0 YXRpYyB2b2lkCisrdGVzdCAodm9pZCkKKyB7CisgICAgIEJ1c01hdGNoUnVsZSAqcnVsZSwgKnJ1 bGUxOworLSNpZiAhR0xJQl9DSEVDS19WRVJTSU9OKDIsMzUsMCkKKy0gICAgZ190eXBlX2luaXQg KCk7CistI2VuZGlmCisgCistICAgIHJ1bGUgPSBidXNfbWF0Y2hfcnVsZV9uZXcgKCIgdHlwZT0n c2lnbmFsJyAsIGludGVyZmFjZSA9ICdvcmcuZnJlZWRlc2t0b3AuSUJ1cycgIik7CisrICAgIHJ1 bGUgPSBidXNfbWF0Y2hfcnVsZV9uZXcgKCIgdHlwZT0nc2lnbmFsJyAsIgorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiIGludGVyZmFjZSA9ICdvcmcuZnJlZWRlc2t0b3AuSUJ1cycg Iik7CisgICAgIGdfYXNzZXJ0IChydWxlLT5tZXNzYWdlX3R5cGUgPT0gR19EQlVTX01FU1NBR0Vf VFlQRV9TSUdOQUwpOworICAgICBnX2Fzc2VydCAoZ19zdHJjbXAwIChydWxlLT5pbnRlcmZhY2Us ICJvcmcuZnJlZWRlc2t0b3AuSUJ1cyIpID09IDAgKTsKKyAgICAgZ19vYmplY3RfdW5yZWYgKHJ1 bGUpOworQEAgLTU1LDEyICs1MywyMiBAQCBtYWluKGdpbnQgYXJnYywgZ2NoYXIgKiphcmd2KQor ICAgICBnX29iamVjdF91bnJlZiAocnVsZSk7CisgICAgIGdfb2JqZWN0X3VucmVmIChydWxlMSk7 CisgCistICAgIHJ1bGUgPSBidXNfbWF0Y2hfcnVsZV9uZXcgKCJ0eXBlPSdtZXRob2RfY2FsbCcs aW50ZXJmYWNlPSdvcmcuZnJlZWRlc2t0b3AuSUJ1cyAiKTsKKysgICAgcnVsZSA9IGJ1c19tYXRj aF9ydWxlX25ldyAoInR5cGU9J21ldGhvZF9jYWxsJywiCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJpbnRlcmZhY2U9J29yZy5mcmVlZGVza3RvcC5JQnVzICIpOworICAgICBnX2Fz c2VydCAocnVsZSA9PSBOVUxMKTsKKyAKKyAgICAgcnVsZSA9IGJ1c19tYXRjaF9ydWxlX25ldyAo ImVhdmVzZHJvcD10cnVlIik7CisgICAgIGdfYXNzZXJ0IChydWxlICE9IE5VTEwpOworICAgICBn X29iamVjdF91bnJlZiAocnVsZSk7CistICAgIAorLSAgICByZXR1cm4gMDsKKyt9CisrCisraW50 CisrbWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyt7CisrICAgIGdfdGVzdF9pbml0ICgm YXJnYywgJmFyZ3YsIE5VTEwpOworKyNpZiAhR0xJQl9DSEVDS19WRVJTSU9OKDIsMzUsMCkKKysg ICAgZ190eXBlX2luaXQgKCk7CisrI2VuZGlmCisrICAgIGdfdGVzdF9hZGRfZnVuYyAoIi90ZXN0 LW1hdGNocnVsZSIsIHRlc3QpOworKyAgICByZXR1cm4gZ190ZXN0X3J1biAoKTsKKyB9CitkaWZm IC0tZ2l0IGEvYnVzL3Rlc3Qtc3RyZXNzLmMgYi9idXMvdGVzdC1zdHJlc3MuYworaW5kZXggMWMy NzdlNzQuLjM5MDhlNjBlIDEwMDY0NAorLS0tIGEvYnVzL3Rlc3Qtc3RyZXNzLmMKKysrKyBiL2J1 cy90ZXN0LXN0cmVzcy5jCitAQCAtNDgsOCArNDgsOCBAQCBfc2xlZXAgKGd1aW50IG1pbGxpc2Vj b25kKQorICAgIEtleSBraW5kIGFyZSBhLXogYW5kIHNwYWNlLgorICAgIENoZWNrIGlidXMtZGFl bW9uIGFuZCBpYnVzIGVuZ2luZSBjcmFzaC4KKyAqLworLWdpbnQKKy1tYWluIChnaW50IGFyZ2Ms IGdjaGFyICoqYXJndikKKytzdGF0aWMgdm9pZAorK3Rlc3QgKHZvaWQpCisgeworICAgICBHVGlt ZXIgKnRpbWVyOworICAgICBHUmFuZCAqcm5kOworQEAgLTU5LDkgKzU5LDYgQEAgbWFpbiAoZ2lu dCBhcmdjLCBnY2hhciAqKmFyZ3YpCisgICAgIGludCBjb3VudCA9IDA7CisgICAgIGludCBzZW5k X2tleV9udW0gPSAwOworIAorLSAgICBzZXRsb2NhbGUgKExDX0FMTCwgIiIpOworLSAgICBpYnVz X2luaXQgKCk7CistCisgICAgIC8qIG5lZWQgdG8gc2V0IGFjdGl2ZSBlbmdpbmUgKi8KKyAgICAg Y2xpZW50ID0gYnVzX3Rlc3RfY2xpZW50X25ldyAoKTsKKyAgICAgaWYgKGNsaWVudCA9PSBOVUxM KSB7CitAQCAtMTEyLDYgKzEwOSwxNCBAQCBtYWluIChnaW50IGFyZ2MsIGdjaGFyICoqYXJndikK KyAgICAgZ19wcmludCAoIiVmIHNlY1xuIiwgZ190aW1lcl9lbGFwc2VkICh0aW1lciwgTlVMTCkp OworICAgICBnX3RpbWVyX2Rlc3Ryb3kgKHRpbWVyKTsKKyAgICAgZ19yYW5kX2ZyZWUgKHJuZCk7 CisrfQorIAorLSAgICByZXR1cm4gMDsKKytpbnQKKyttYWluIChpbnQgYXJnYywgY2hhciAqYXJn dltdKQorK3sKKysgICAgZ190ZXN0X2luaXQgKCZhcmdjLCAmYXJndiwgTlVMTCk7CisrICAgIHNl dGxvY2FsZSAoTENfQUxMLCAiIik7CisrICAgIGlidXNfaW5pdCAoKTsKKysgICAgZ190ZXN0X2Fk ZF9mdW5jICgiL3Rlc3Qtc3RyZXNzIiwgdGVzdCk7CisrICAgIHJldHVybiBnX3Rlc3RfcnVuICgp OworIH0KK2RpZmYgLS1naXQgYS9zcmMvaWJ1c2NvbXBvc2V0YWJsZS5jIGIvc3JjL2lidXNjb21w b3NldGFibGUuYworaW5kZXggMTE2ZDAxMzEuLjkzMjYyZjNhIDEwMDY0NAorLS0tIGEvc3JjL2li dXNjb21wb3NldGFibGUuYworKysrIGIvc3JjL2lidXNjb21wb3NldGFibGUuYworQEAgLTEsNyAr MSw3IEBACisgLyogLSotIG1vZGU6IEM7IGMtYmFzaWMtb2Zmc2V0OiA0OyBpbmRlbnQtdGFicy1t b2RlOiBuaWw7IC0qLSAqLworIC8qIGlidXMgLSBUaGUgSW5wdXQgQnVzCisgICogQ29weXJpZ2h0 IChDKSAyMDEzLTIwMTQgUGVuZyBIdWFuZyA8c2hhd24ucC5odWFuZ0BnbWFpbC5jb20+CistICog Q29weXJpZ2h0IChDKSAyMDEzLTIwMjUgVGFrYW8gRnVqaXdhcmEgPHRha2FvLmZ1aml3YXJhMUBn bWFpbC5jb20+CisrICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMjYgVGFrYW8gRnVqaXdhcmEgPHRh a2FvLmZ1aml3YXJhMUBnbWFpbC5jb20+CisgICoKKyAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBz b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgICogbW9kaWZ5IGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworQEAgLTcxMSw2 ICs3MTEsNyBAQCBpYnVzX2NvbXBvc2VfbGlzdF9jaGVja19kdXBsaWNhdGVkX3dpdGhfb3duIChH TGlzdCAgKmNvbXBvc2VfbGlzdCwKKyAgICAgSUJ1c0NvbXBvc2VEYXRhICpjb21wb3NlX2RhdGFf YSwgKmNvbXBvc2VfZGF0YV9iOworICAgICBpbnQgaTsKKyAgICAgR0xpc3QgKnJlbW92ZWRfbGlz dCA9IE5VTEw7CisrICAgIEdTdHJpbmcgKnN0cmluZzsKKyAKKyAgICAgaWYgKCFjb21wb3NlX2xp c3QpCisgICAgICAgICByZXR1cm4gTlVMTDsKK0BAIC03MjksMTggKzczMCwzMyBAQCBpYnVzX2Nv bXBvc2VfbGlzdF9jaGVja19kdXBsaWNhdGVkX3dpdGhfb3duIChHTGlzdCAgKmNvbXBvc2VfbGlz dCwKKyAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgICB9CisgICAg ICAgICAgICAgfQorKyAgICAgICAgICAgIHN0cmluZyA9IGdfc3RyaW5nX25ldyAoTlVMTCk7Cisr ICAgICAgICAgICAgaWYgKGlzX2RpZmZlcmVudF92YWx1ZSkgeworKyAgICAgICAgICAgICAgICBn X3N0cmluZ19hcHBlbmQgKAorKyAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZywKKysgICAg ICAgICAgICAgICAgICAgICAgICAiRGVsZXRpbmcgZGlmZmVyZW50IG91dHB1dHMgZm9yIHNhbWUg c2VxdWVuY2UuIik7CisrICAgICAgICAgICAgfSBlbHNlIHsKKysgICAgICAgICAgICAgICAgZ19z dHJpbmdfYXBwZW5kICgKKysgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcsCisrICAgICAg ICAgICAgICAgICAgICAgICAgIkRlbGV0aW5nIHNhbWUgY29tcG9zZSBvdXRwdXQgZm9yIHNhbWUg c2VxdWVuY2UuIik7CisrICAgICAgICAgICAgfQorKyAgICAgICAgICAgIGdfc3RyaW5nX2FwcGVu ZCAoc3RyaW5nLCAiXG57Iik7CisrICAgICAgICAgICAgZm9yIChpID0gMDsgY29tcG9zZV9kYXRh X2EtPnZhbHVlc1tpXTsgaSsrKSB7CisrICAgICAgICAgICAgICAgIGdfc3RyaW5nX2FwcGVuZF9w cmludGYgKHN0cmluZywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IlUrJVgsICIsIGNvbXBvc2VfZGF0YV9hLT52YWx1ZXNbaV0pOworKyAgICAgICAgICAgIH0KKysg ICAgICAgICAgICBnX3N0cmluZ19hcHBlbmQgKHN0cmluZywgIn0iKTsKKysgICAgICAgICAgICBn X3N0cmluZ19hcHBlbmQgKHN0cmluZywgIiB7Iik7CisrICAgICAgICAgICAgZm9yIChpID0gMDsg Y29tcG9zZV9kYXRhX2ItPnZhbHVlc1tpXTsgaSsrKSB7CisrICAgICAgICAgICAgICAgIGdfc3Ry aW5nX2FwcGVuZF9wcmludGYgKHN0cmluZywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIlUrJVgsICIsIGNvbXBvc2VfZGF0YV9iLT52YWx1ZXNbaV0pOworKyAgICAg ICAgICAgIH0KKysgICAgICAgICAgICBnX3N0cmluZ19hcHBlbmQgKHN0cmluZywgIn1cbiIpOwor ICAgICAgICAgICAgIGlmIChpc19kaWZmZXJlbnRfdmFsdWUpCistICAgICAgICAgICAgICAgIGdf d2FybmluZyAoIkRlbGV0aW5nIGRpZmZlcmVudCBvdXRwdXRzIGZvciBzYW1lIHNlcXVlbmNlLiIp OworKyAgICAgICAgICAgICAgICBnX3dhcm5pbmcgKCIlcyIsIHN0cmluZy0+c3RyKTsKKyAgICAg ICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgIGdfZGVidWcgKCJEZWxldGluZyBzYW1lIGNv bXBvc2Ugb3V0cHV0IGZvciBzYW1lIHNlcXVlbmNlLiIpOworLSAgICAgICAgICAgIGdfcHJpbnQg KCJ7Iik7CistICAgICAgICAgICAgZm9yIChpID0gMDsgY29tcG9zZV9kYXRhX2EtPnZhbHVlc1tp XTsgaSsrKQorLSAgICAgICAgICAgICAgICBnX3ByaW50ICgiVSslWCwgIiwgY29tcG9zZV9kYXRh X2EtPnZhbHVlc1tpXSk7CistICAgICAgICAgICAgZ19wcmludCAoIn0iKTsKKy0gICAgICAgICAg ICBnX3ByaW50ICgiIHsiKTsKKy0gICAgICAgICAgICBmb3IgKGkgPSAwOyBjb21wb3NlX2RhdGFf Yi0+dmFsdWVzW2ldOyBpKyspCistICAgICAgICAgICAgICAgIGdfcHJpbnQgKCJVKyVYLCAiLCBj b21wb3NlX2RhdGFfYi0+dmFsdWVzW2ldKTsKKy0gICAgICAgICAgICBnX3ByaW50ICgifVxuIik7 CisrICAgICAgICAgICAgICAgIGdfZGVidWcgKCIlcyIsIHN0cmluZy0+c3RyKTsKKysgICAgICAg ICAgICBnX3N0cmluZ19mcmVlIChzdHJpbmcsIFRSVUUpOworICAgICAgICAgICAgIHJlbW92ZWRf bGlzdCA9IGdfbGlzdF9hcHBlbmQgKHJlbW92ZWRfbGlzdCwgY29tcG9zZV9kYXRhX2EpOworICAg ICAgICAgfQorICAgICB9CitkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RzL2lidXMta2V5cHJlc3MuYyBi L3NyYy90ZXN0cy9pYnVzLWtleXByZXNzLmMKK2luZGV4IGI5MDY4ZDMyLi43ODI5NjM4MSAxMDA2 NDQKKy0tLSBhL3NyYy90ZXN0cy9pYnVzLWtleXByZXNzLmMKKysrKyBiL3NyYy90ZXN0cy9pYnVz LWtleXByZXNzLmMKK0BAIC0xLDcgKzEsNyBAQAorIC8qIC0qLSBtb2RlOiBDOyBjLWJhc2ljLW9m ZnNldDogNDsgaW5kZW50LXRhYnMtbW9kZTogbmlsOyAtKi0gKi8KKyAvKiB2aW06c2V0IGV0IHN0 cz00OiAqLworIC8qIGlidXMgLSBUaGUgSW5wdXQgQnVzCistICogQ29weXJpZ2h0IChDKSAyMDI1 IFRha2FvIEZ1aml3YXJhIDx0YWthby5mdWppd2FyYTFAZ21haWwuY29tPgorKyAqIENvcHlyaWdo dCAoQykgMjAyNS0yMDI2IFRha2FvIEZ1aml3YXJhIDx0YWthby5mdWppd2FyYTFAZ21haWwuY29t PgorICAqIENvcHlyaWdodCAoYykgMjAyNSBQZXRlciBIdXR0ZXJlciA8cGV0ZXIuaHV0dGVyZXJA d2hvLXQubmV0PgorICAqIENvcHlyaWdodCAoQykgMjAyNSBSZWQgSGF0LCBJbmMuCisgICoKK0BA IC02MjgsNyArNjI4LDcgQEAgd2luZG93X2luc2VydGVkX3RleHRfY2IgKEd0a0VudHJ5QnVmZmVy ICpidWZmZXIsCisgICAgIGlmICghKGNvZGUgPSBnX3V0ZjhfZ2V0X2NoYXIgKGNoYXJzKSkpCisg ICAgICAgICByZXR1cm47CisgICAgIGlmIChjb2RlICE9IHRlc3RfcmVzdWx0c1tpXVtqKytdKSB7 CistICAgICAgICB0ZXN0ID0gUkVEICJGQUlMIiBOQzsKKysgICAgICAgIHRlc3QgPSAiIyAiIFJF RCAiRkFJTCIgTkM7CisgICAgICAgICBnX3Rlc3RfZmFpbF9wcmludGYgKCIlMDVkOiUwNWQgJXMg ZXhwZWN0ZWQ6ICUwNFggdHlwZWQ6ICUwNFgiLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpLCBqIC0gMSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGVzdCwKK0BAIC02Mzcs NyArNjM3LDcgQEAgd2luZG93X2luc2VydGVkX3RleHRfY2IgKEd0a0VudHJ5QnVmZmVyICpidWZm ZXIsCisgICAgIH0gZWxzZSBpZiAodGVzdF9yZXN1bHRzW2ldW2pdKSB7CisgICAgICAgICByZXR1 cm47CisgICAgIH0gZWxzZSB7CistICAgICAgICBnX3ByaW50IChHUkVFTiAiUEFTUyIgTkMgIiAi KTsKKysgICAgICAgIGdfcHJpbnQgKCIjICIgR1JFRU4gIlBBU1MiIE5DICIgIik7CisgICAgICAg ICBmb3IgKGsgPSAwOyBrIDwgajsgaysrKQorICAgICAgICAgICAgIGdfcHJpbnQgKCIlbGMoJVgp ICIsIHRlc3RfcmVzdWx0c1tpXVtrXSwgdGVzdF9yZXN1bHRzW2ldW2tdKTsKKyAgICAgICAgIGdf cHJpbnQgKCJcbiIpOworZGlmZiAtLWdpdCBhL3NyYy90ZXN0cy9pYnVzLXJlZ2lzdHJ5LmMgYi9z cmMvdGVzdHMvaWJ1cy1yZWdpc3RyeS5jCitpbmRleCA0YzYxMjkyNi4uMWExMDllN2YgMTAwNjQ0 CistLS0gYS9zcmMvdGVzdHMvaWJ1cy1yZWdpc3RyeS5jCisrKysgYi9zcmMvdGVzdHMvaWJ1cy1y ZWdpc3RyeS5jCitAQCAtMSwxMCArMSwxNyBAQAorICNpbmNsdWRlIDxpYnVzLmg+CisgCistaW50 IG1haW4oKQorK3N0YXRpYyB2b2lkCisrdGVzdCAodm9pZCkKKyB7CistICAgIGlidXNfaW5pdCAo KTsKKy0KKyAgICAgSUJ1c1JlZ2lzdHJ5ICpyZWdpc3RyeSA9IGlidXNfcmVnaXN0cnlfbmV3ICgp OworICAgICBnX29iamVjdF91bnJlZiAocmVnaXN0cnkpOworLSAgICByZXR1cm4gMDsKKyt9Cisr CisraW50CisrbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQorK3sKKysgICAgZ190ZXN0X2lu aXQgKCZhcmdjLCAmYXJndiwgTlVMTCk7CisrICAgIGlidXNfaW5pdCAoKTsKKysgICAgZ190ZXN0 X2FkZF9mdW5jICgiL2lidXMtcmVnaXN0cnkiLCB0ZXN0KTsKKysgICAgcmV0dXJuIGdfdGVzdF9y dW4gKCk7CisgfQorZGlmZiAtLWdpdCBhL3NyYy90ZXN0cy9pYnVzLXV0aWwuYyBiL3NyYy90ZXN0 cy9pYnVzLXV0aWwuYworaW5kZXggNDExMGU1MjkuLjlmMmFiMmI2IDEwMDY0NAorLS0tIGEvc3Jj L3Rlc3RzL2lidXMtdXRpbC5jCisrKysgYi9zcmMvdGVzdHMvaWJ1cy11dGlsLmMKK0BAIC00LDEz ICs0LDE5IEBACisgCisgI2luY2x1ZGUgImlidXMuaCIKKyAKKy1pbnQgbWFpbiAoaW50IGFyZ2Ms IGNoYXIgKiphcmd2KQorK3N0YXRpYyB2b2lkCisrdGVzdCAodm9pZCkKKyB7CisgICAgIGdjaGFy ICpuYW1lOworLSAgICBzZXRsb2NhbGUoTENfQUxMLCAiQyIpOworLQorICAgICBnX2Fzc2VydF9j bXBzdHIgKG5hbWUgPSBpYnVzX2dldF9sYW5ndWFnZV9uYW1lICgiZW5nIiksID09LCAiRW5nbGlz aCIpOworICAgICBnX2ZyZWUgKG5hbWUpOworK30KKyAKKy0gICAgcmV0dXJuIDA7CisraW50Cisr bWFpbiAoaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKKyt7CisrICAgIGdfdGVzdF9pbml0ICgmYXJn YywgJmFyZ3YsIE5VTEwpOworKyAgICBzZXRsb2NhbGUoTENfQUxMLCAiQyIpOworKyAgICBnX3Rl c3RfYWRkX2Z1bmMgKCIvaWJ1cy11dGlsIiwgdGVzdCk7CisrICAgIHJldHVybiBnX3Rlc3RfcnVu ICgpOworIH0KK2RpZmYgLS1naXQgYS9zcmMvdGVzdHMvcnVudGVzdCBiL3NyYy90ZXN0cy9ydW50 ZXN0CitpbmRleCA3MTU1OWZjMS4uN2JkOTg1NzUgMTAwNzU1CistLS0gYS9zcmMvdGVzdHMvcnVu dGVzdAorKysrIGIvc3JjL3Rlc3RzL3J1bnRlc3QKK0BAIC0xNywxMCArMTcsMTAgQEAKKyAjCisg IyAgICQgdG9wX2J1aWxkZGlyPTwuLi4+IHRvcF9zcmNkaXI9PC4uLj4gYnVpbGRkaXI9PC4uLj4g Li9ydW50ZXN0IGlidXMtZm9vCisgCistOiAke3RvcF9idWlsZGRpcjo9Li4vLi59CistOiAke3Rv cF9zcmNkaXI6PS4uLy4ufQorLTogJHtidWlsZGRpcjo9Ln0KKy06ICR7c3JjZGlyOj0ufQorKzog JHt0b3BfYnVpbGRkaXI6PScuLi8uLid9CisrOiAke3RvcF9zcmNkaXI6PScuLi8uLid9CisrOiAk e2J1aWxkZGlyOj0nLid9CisrOiAke3NyY2Rpcjo9Jy4nfQorIDogJHtESVNBQkxFX0dVSV9URVNU Uzo9Jyd9CisgOiAke0RJU0FCTEVfREFFTU9OSVpFX0lOX1RFU1RTOj0nJ30KKyA6ICR7VEVTVF9H VEtfVkVSU0lPTjo9MH0KK0BAIC0zNyw3ICszNyw3IEBAIGlidXMtZW5naW5lLXN3aXRjaAorIGli dXMtY29tcG9zZQorIGlidXMta2V5cHJlc3MKKyB0ZXN0LXN0cmVzcworLXhrYi1sYXRpbi1sYXlv dXRzCisrdGVzdC1vdmVycmlkZS1pYnVzLnB5CisgIgorIElCVVNfU0NIRU1BX0ZJTEU9J29yZy5m cmVlZGVza3RvcC5pYnVzLmdzY2hlbWEueG1sJworIEdUS19RVUVSWV9NT0RVTEU9Z3RrLXF1ZXJ5 LWltbW9kdWxlcy0zLjAtMzIKK0BAIC01MCw2ICs1MCwyMiBAQCBpZiAhIGNvbW1hbmQgLXYgJEdU S19RVUVSWV9NT0RVTEUgPiAvZGV2L251bGwgMj4mMSA7IHRoZW4KKyAgICAgR1RLX1FVRVJZX01P RFVMRT1ndGstcXVlcnktaW1tb2R1bGVzLTMuMAorIGZpCisgCisraWYgZWNobyAiJHRvcF9idWls ZGRpciIgfCBncmVwIC1xICdeLycgOyB0aGVuCisrICAgICMgYWJzb2x1dGUgcGF0aCBmb3IgbWVz b24KKysgICAgdGVzdF90b3BfYnVpbGRkaXI9IiR0b3BfYnVpbGRkaXIiCisrZWxzZQorKyAgICAj IHJlbGF0aXZlIHBhdGggZm9yIGF1dG90b29sIGFuZCBkZWZhdWx0IHZhbHVlCisrICAgIHRlc3Rf dG9wX2J1aWxkZGlyPSIuLi8kdG9wX2J1aWxkZGlyIgorK2ZpCisrCisraWYgZWNobyAiJHRvcF9z cmNkaXIiIHwgZ3JlcCAtcSAnXi8nIDsgdGhlbgorKyAgICAjIGFic29sdXRlIHBhdGggZm9yIG1l c29uCisrICAgIHRlc3RfdG9wX3NyY2Rpcj0iJHRvcF9zcmNkaXIiCisrZWxzZQorKyAgICAjIHJl bGF0aXZlIHBhdGggZm9yIGF1dG90b29sIGFuZCBkZWZhdWx0IHZhbHVlCisrICAgIHRlc3RfdG9w X3NyY2Rpcj0iLi4vJHRvcF9zcmNkaXIiCisrZmkKKysKKyByZXR2YWw9MAorIAorICMgUG9ydGFi bGUgcmVwbGFjZW1lbnQgb2YgYmFzZW5hbWUuCitAQCAtMTIwLDIxICsxMzYsMjYgQEAgcnVuX3Rl c3RfY2FzZSgpCisgICAgIGJhY2t1cF9kaXI9JFBXRAorICAgICBjZCAkdHN0ZGlyCisgCisrICAg IGlmIGVjaG8gIiR0c3QiIHwgZ3JlcCAtcSAncHl0aG9uJyA7IHRoZW4KKysgICAgICAgIG5hbWU9 YGZ1bmNfYmFzZW5hbWUgIiQxImAKKysgICAgZWxzZQorKyAgICAgICAgbmFtZT1gZnVuY19iYXNl bmFtZSAiJHRzdCJgCisrICAgIGZpCisgICAgIG5lZWRfYnVzPW5vCisgICAgIGZvciB0IGluICRC VVNfUkVRVUlSRURfVEVTVFM7IGRvCistICAgICAgICBpZiB0ZXN0ICR0ID0gYGZ1bmNfYmFzZW5h bWUgJHRzdGA7IHRoZW4KKysgICAgICAgIGlmIHRlc3QgIiR0IiA9ICIkbmFtZSI7IHRoZW4KKyAg ICAgICAgICAgICBuZWVkX2J1cz15ZXMKKyAgICAgICAgIGZpCisgICAgIGRvbmUKKyAKKyAgICAg aWYgdGVzdCAkbmVlZF9idXMgPSB5ZXM7IHRoZW4KKy0gICAgICAgIGlmIHRlc3QgISAtZiAiLi4v JHRvcF9idWlsZGRpci9jb25mL21lbWNvbmYvaWJ1cy1tZW1jb25mIiA7IHRoZW4KKysgICAgICAg IGlmIHRlc3QgISAtZiAiJHRlc3RfdG9wX2J1aWxkZGlyL2NvbmYvbWVtY29uZi9pYnVzLW1lbWNv bmYiIDsgdGhlbgorICAgICAgICAgICAgIGVjaG8gIk5PVCBGT1VOTkQgaWJ1cy1tZW1jb25mLiBO ZWVkIGNvbmZpZ3VyZSAtLWVuYWJsZS1tZW1jb25mIgorICAgICAgICAgICAgIGV4aXQgMQorICAg ICAgICAgZmkKKyAgICAgICAgICMgZnVuY19jb3B5X2NvbXBvbmVudCByZXBsYWNlcyBzLyR0b3Bf c3JjZGlyLyV0b3BfYnVpbGRkaXIvCistICAgICAgICBmdW5jX2NvcHlfY29tcG9uZW50ICIuLi8k dG9wX3NyY2Rpci9lbmdpbmUvc2ltcGxlLnhtbCIKKy0gICAgICAgIGZ1bmNfY29weV9jb21wb25l bnQgIi4uLyR0b3Bfc3JjZGlyL2NvbmYvbWVtY29uZi9tZW1jb25mLnhtbCIKKysgICAgICAgIGZ1 bmNfY29weV9jb21wb25lbnQgIiR0ZXN0X3RvcF9zcmNkaXIvZW5naW5lL3NpbXBsZS54bWwiCisr ICAgICAgICBmdW5jX2NvcHlfY29tcG9uZW50ICIkdGVzdF90b3Bfc3JjZGlyL2NvbmYvbWVtY29u Zi9tZW1jb25mLnhtbCIKKyAKKyAgICAgICAgIElCVVNfQ09NUE9ORU5UX1BBVEg9JFBXRC9jb21w b25lbnRzCisgICAgICAgICBleHBvcnQgSUJVU19DT01QT05FTlRfUEFUSAorQEAgLTE0NCwxMCAr MTY1LDEwIEBAIHJ1bl90ZXN0X2Nhc2UoKQorIAorICAgICAgICAgdGVzdCAkVEVTVF9HVEsgLWVx IDEgJiYgY2FzZSAkVEVTVF9HVEtfVkVSU0lPTiBpbgorICAgICAgICAgNCkKKy0gICAgICAgICAg ICBpZiB0ZXN0IC1mICIuLi8kdG9wX2J1aWxkZGlyL2NsaWVudC9ndGs0Ly5saWJzL2xpYmltLWli dXMuc28iIDsgdGhlbgorLSAgICAgICAgICAgICAgICBJTV9JQlVTX1NPPSIuLi8kdG9wX2J1aWxk ZGlyL2NsaWVudC9ndGs0Ly5saWJzL2xpYmltLWlidXMuc28iCistICAgICAgICAgICAgZWxpZiB0 ZXN0IC1mICIuLi8kdG9wX2J1aWxkZGlyL2NsaWVudC9ndGs0L2xpYmltLWlidXMuc28iIDsgdGhl bgorLSAgICAgICAgICAgICAgICBJTV9JQlVTX1NPPSIuLi8kdG9wX2J1aWxkZGlyL2NsaWVudC9n dGs0L2xpYmltLWlidXMuc28iCisrICAgICAgICAgICAgaWYgdGVzdCAtZiAiJHRlc3RfdG9wX2J1 aWxkZGlyL2NsaWVudC9ndGs0Ly5saWJzL2xpYmltLWlidXMuc28iIDsgdGhlbgorKyAgICAgICAg ICAgICAgICBJTV9JQlVTX1NPPSIkdGVzdF90b3BfYnVpbGRkaXIvY2xpZW50L2d0azQvLmxpYnMv bGliaW0taWJ1cy5zbyIKKysgICAgICAgICAgICBlbGlmIHRlc3QgLWYgIiR0ZXN0X3RvcF9idWls ZGRpci9jbGllbnQvZ3RrNC9saWJpbS1pYnVzLnNvIiA7IHRoZW4KKysgICAgICAgICAgICAgICAg SU1fSUJVU19TTz0iJHRlc3RfdG9wX2J1aWxkZGlyL2NsaWVudC9ndGs0L2xpYmltLWlidXMuc28i CisgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICBlY2hvICJOT1QgRk9VTkQgJHRv cF9idWlsZGRpci9jbGllbnQvZ3RrNC9saWJpbS1pYnVzLnNvIgorICAgICAgICAgICAgICAgICBl eGl0IDEKK0BAIC0xNTcsMTAgKzE3OCwxMCBAQCBydW5fdGVzdF9jYXNlKCkKKyAgICAgICAgICAg ICBleHBvcnQgR1RLX0VYRV9QUkVGSVg9IiRQV0QiCisgICAgICAgICAgICAgOzsKKyAgICAgICAg IDMpCistICAgICAgICAgICAgaWYgdGVzdCAtZiAiLi4vJHRvcF9idWlsZGRpci9jbGllbnQvZ3Rr My8ubGlicy9pbS1pYnVzLnNvIiA7IHRoZW4KKy0gICAgICAgICAgICAgICAgSU1fSUJVU19TTz0i Li4vJHRvcF9idWlsZGRpci9jbGllbnQvZ3RrMy8ubGlicy9pbS1pYnVzLnNvIgorLSAgICAgICAg ICAgIGVsaWYgdGVzdCAtZiAiLi4vJHRvcF9idWlsZGRpci9jbGllbnQvZ3RrMy9pbS1pYnVzLnNv IiA7IHRoZW4KKy0gICAgICAgICAgICAgICAgSU1fSUJVU19TTz0iLi4vJHRvcF9idWlsZGRpci9j bGllbnQvZ3RrMy9pbS1pYnVzLnNvIgorKyAgICAgICAgICAgIGlmIHRlc3QgLWYgIiR0ZXN0X3Rv cF9idWlsZGRpci9jbGllbnQvZ3RrMy8ubGlicy9pbS1pYnVzLnNvIiA7IHRoZW4KKysgICAgICAg ICAgICAgICAgSU1fSUJVU19TTz0iJHRlc3RfdG9wX2J1aWxkZGlyL2NsaWVudC9ndGszLy5saWJz L2ltLWlidXMuc28iCisrICAgICAgICAgICAgZWxpZiB0ZXN0IC1mICIkdGVzdF90b3BfYnVpbGRk aXIvY2xpZW50L2d0azMvaW0taWJ1cy5zbyIgOyB0aGVuCisrICAgICAgICAgICAgICAgIElNX0lC VVNfU089IiR0ZXN0X3RvcF9idWlsZGRpci9jbGllbnQvZ3RrMy9pbS1pYnVzLnNvIgorICAgICAg ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgZWNobyAiTk9UIEZPVU5EICR0b3BfYnVpbGRk aXIvY2xpZW50L2d0azMvaW0taWJ1cy5zbyIKKyAgICAgICAgICAgICAgICAgZXhpdCAxCitAQCAt MTc1LDggKzE5Niw4IEBAIHJ1bl90ZXN0X2Nhc2UoKQorICAgICAgICAgICAgIDs7CisgICAgICAg ICBlc2FjIHx8IDoKKyAKKy0gICAgICAgIGNwICIuLi8kdG9wX3NyY2Rpci9kYXRhL2Rjb25mLyRJ QlVTX1NDSEVNQV9GSUxFIiAkUFdECistICAgICAgICBnbGliLWNvbXBpbGUtc2NoZW1hcyAkUFdE CisrICAgICAgICBjcCAiJHRlc3RfdG9wX3NyY2Rpci9kYXRhL2Rjb25mLyRJQlVTX1NDSEVNQV9G SUxFIiAkUFdECisrICAgICAgICBnbGliLWNvbXBpbGUtc2NoZW1hcyAkUFdEIDI+L2Rldi9udWxs CisgICAgICAgICBpZiB0ZXN0ICQ/IC1uZSAwIDsgdGhlbgorICAgICAgICAgICAgIGVjaG8gIkZB SUxFRCBnbGliLWNvbXBpbGUtc2NoZW1hcyIKKyAgICAgICAgICAgICByZXR2YWw9MQorQEAgLTE5 OCwxMCArMjE5LDEwIEBAIHJ1bl90ZXN0X2Nhc2UoKQorICAgICAgICAgICAgIC0tdmVyYm9zZQor ICAgICAgICAgJworICAgICAgICAgaWYgdGVzdCB4IiRESVNBQkxFX0RBRU1PTklaRV9JTl9URVNU UyIgPSB4IDsgdGhlbgorLSAgICAgICAgICAgIC4uLyR0b3BfYnVpbGRkaXIvYnVzL2lidXMtZGFl bW9uIFwKKysgICAgICAgICAgICAkdGVzdF90b3BfYnVpbGRkaXIvYnVzL2lidXMtZGFlbW9uIFwK KyAgICAgICAgICAgICAgICAgJERBRU1PTl9BUkdTIC0tZGFlbW9uaXplOworICAgICAgICAgZWxz ZQorLSAgICAgICAgICAgIC4uLyR0b3BfYnVpbGRkaXIvYnVzL2lidXMtZGFlbW9uIFwKKysgICAg ICAgICAgICAkdGVzdF90b3BfYnVpbGRkaXIvYnVzL2lidXMtZGFlbW9uIFwKKyAgICAgICAgICAg ICAgICAgJERBRU1PTl9BUkdTICYKKyAgICAgICAgIGZpCisgCitAQCAtMjE5LDcgKzI0MCwyNiBA QCBydW5fdGVzdF9jYXNlKCkKKyAKKyAgICAgZXhwb3J0IElCVVNfQ09NUE9TRV9DQUNIRV9ESVI9 JFBXRAorIAorLSAgICAiLi4vJHRzdCIgLi4vJHRvcF9zcmNkaXIvc3JjL3Rlc3RzICR7MSsiJEAi fQorKyAgICBpZiBlY2hvICIkdHN0IiB8IGdyZXAgLXEgJ14vJyA7IHRoZW4KKysgICAgICAgIGlm IGVjaG8gIiR0c3QiIHwgZ3JlcCAtcSAncHl0aG9uJyA7IHRoZW4KKysgICAgICAgICAgICBpbnRl cnByZXRlcj0kdHN0CisrICAgICAgICAgICAgdHN0PSQxCisrICAgICAgICAgICAgc2hpZnQKKysg ICAgICAgICAgICBpZiBlY2hvICIkdHN0IiB8IGdyZXAgLXEgJ14vJyA7IHRoZW4KKysgICAgICAg ICAgICAgICAgIyBhYnNvbHV0ZSBwYXRoIGZvciBNZXNvbgorKyAgICAgICAgICAgICAgICAiJGlu dGVycHJldGVyIiAiJHRzdCIgJHsxKyIkQCJ9CisrICAgICAgICAgICAgZWxzZQorKyAgICAgICAg ICAgICAgICAjIHJlbGF0aXZlIHBhdGggZm9yIGF1dG90b29scworKyAgICAgICAgICAgICAgICAi JGludGVycHJldGVyIiAiLi4vJHRzdCIgJHsxKyIkQCJ9CisrICAgICAgICAgICAgZmkKKysgICAg ICAgIGVsc2UKKysgICAgICAgICAgICAjIGFic29sdXRlIHBhdGggZm9yIE1lc29uCisrICAgICAg ICAgICAgIiR0c3QiICR0ZXN0X3RvcF9zcmNkaXIvc3JjL3Rlc3RzICR7MSsiJEAifQorKyAgICAg ICAgZmkKKysgICAgZWxzZQorKyAgICAgICAgIyByZWxhdGl2ZSBwYXRoIGZvciBlYWNoIGV4ZWN1 dGlvbgorKyAgICAgICAgIi4uLyR0c3QiICR0ZXN0X3RvcF9zcmNkaXIvc3JjL3Rlc3RzICR7MSsi JEAifQorKyAgICBmaQorIAorICAgICByZXR2YWw9YGV4cHIgJHJldHZhbCBcfCAkP2AKKyAKK0BA IC0yMzcsNiArMjc3LDE2IEBAIGlmIHRlc3QgeCIkRU5WUyIgPSB4IDsgdGhlbgorIGVsc2UKKyAg ICAgTEFOR19iYWNrdXA9JExBTkcKKyAgICAgaT0xCisrICAgICMgbWVzb25idWlsZC9tdGVzdC5w eTpUQVBQYXJzZXIucGFyc2VfbGluZSgpIHNheXM6CisrICAgICMgJ3ZlcnNpb24gbnVtYmVyIG11 c3QgYmUgb24gdGhlIGZpcnN0IGxpbmUnCisrICAgIGVjaG8gIlRBUCB2ZXJzaW9uIDE0IgorKyAg ICBOVU1fQ0FTRVM9YHdjIC1sICRlbnZmaWxlICB8IHNlZCAtZSAncy9eXChbMC05XSpcKSAuKi9c MS8nYAorKyAgICAjIE1lc29uIGNoZWNrcyAjUGxhbiB3aXRoIHRoZSBudW1iZXIgb2YgdGVzdCBj YXNlcworKyAgICAjIGxpa2UgIjEuLk51bWJlciIKKysgICAgIyBodHRwczovL3Rlc3Rhbnl0aGlu Zy5vcmcvdGFwLXZlcnNpb24tMTQtc3BlY2lmaWNhdGlvbi5odG1sCisrICAgIGVjaG8gIjEuLiRO VU1fQ0FTRVMiCisrICAgICMgU2V0IHN1YnRlc3QgZm9yIEdUZXN0TG9nIHRvIGhpZGUgdGhlICJU QVAgdmVyc2lvbiIgb3V0cHV0CisrICAgIGV4cG9ydCBHX1RFU1RfUk9PVF9QUk9DRVNTPTEKKyAg ICAgIyAiZm9yIGUgaW4gJEVOVlMiIHNlcGFyYXRlcyB0aGUgdmFyaWFibGUgYnkgc3BhY2UgYnV0 IG5vdCBsaW5lIGZlZWQuCisgICAgICMgImVjaG8gJEVOVlMgfCB3aGlsZSByZWFkIGUiIGRvZXMg bm90IGZvcndhcmQgYHJldHZhbGAKKyAgICAgIyB0byB0aGUgcGFyZW50IHByb2Nlc3MuCitAQCAt MjQ4LDE0ICsyOTgsMjUgQEAgZWxzZQorICAgICAgICAgdW5zZXQgTk9fTE9BRF9DT01QT1NFX0ZJ TEUKKyAgICAgICAgIHVuc2V0IENPTVBPU0VfRklMRQorICAgICAgICAgZXhwb3J0ICRlCistICAg ICAgICBlY2hvICJSdW4gYGZ1bmNfYmFzZW5hbWUgJHRzdGAgb24gJGUiCistICAgICAgICBlY2hv ICI9PT09PT09PT09PT09PT09PT09PT09PSIKKysgICAgICAgICMgVEFQIGluZm8gc2hvdWxkIHN0 YXJ0IHdpdGggIiMgIi4KKysgICAgICAgIGVjaG8gIiMgUnVuIGBmdW5jX2Jhc2VuYW1lICR0c3Rg IG9uICRlIgorKyAgICAgICAgZWNobyAiIyA9PT09PT09PT09PT09PT09PT09PT09PSIKKyAgICAg ICAgIHJ1bl90ZXN0X2Nhc2UgJEAKKysgICAgICAgIG5hbWU9Ii8iYGJhc2VuYW1lICIkMSJgIjok TEFORzokQ09NUE9TRV9GSUxFOiROT19MT0FEX0NPTVBPU0VfRklMRSIKKysgICAgICAgICMgTWVz b24gY29tcGFyZXMgdGhlIG51bWVyIG9mIHRlc3RzIGluICNQbGFuIGFuZCB0aGUgbnVtYmVyIG9m CisrICAgICAgICAjICNUZXN0UG9pbnQgbGlrZSAib2sgTnVtYmVyIERlc2NyaXB0aW9uIgorKyAg ICAgICAgIyBodHRwczovL3Rlc3Rhbnl0aGluZy5vcmcvdGFwLXZlcnNpb24tMTQtc3BlY2lmaWNh dGlvbi5odG1sCisrICAgICAgICBpZiB0ZXN0ICRyZXR2YWwgLWVxIDA7IHRoZW4KKysgICAgICAg ICAgICBlY2hvICJvayAkaSAkbmFtZSIKKysgICAgICAgIGVsc2UKKysgICAgICAgICAgICBlY2hv ICJub3Qgb2sgJGkgJG5hbWUiCisrICAgICAgICBmaQorICAgICAgICAgZWNobyAiIgorICAgICAg ICAgaT1gZXhwciAkaSArIDFgCisgICAgIGRvbmUgPDwgRU9GX0VOVlMKKyAgICAgYGVjaG8gIiRF TlZTImAKKyBFT0ZfRU5WUworKyAgICB1bnNldCBHX1RFU1RfUk9PVF9QUk9DRVNTCisgICAgIGV4 cG9ydCBMQU5HPSRMQU5HX2JhY2t1cAorIGZpCisgCitkaWZmIC0tZ2l0IGEvc3JjL3Rlc3RzL3hr Yi1sYXRpbi1sYXlvdXRzIGIvc3JjL3Rlc3RzL3hrYi1sYXRpbi1sYXlvdXRzCitpbmRleCA0NWM5 OTM1OC4uZGQ0OWZmOTcgMTAwNzU1CistLS0gYS9zcmMvdGVzdHMveGtiLWxhdGluLWxheW91dHMK KysrKyBiL3NyYy90ZXN0cy94a2ItbGF0aW4tbGF5b3V0cworQEAgLTEsNyArMSw3IEBACisgIyEv YmluL2Jhc2gKKyAKKyBQUk9HTkFNRT1gYmFzZW5hbWUgJDBgCistVkVSU0lPTj0wLjEKKytWRVJT SU9OPTAuMgorICMgUE9TSVggc2ggaGFzIG5vICdlY2hvIC1lJworIDogJHtFQ0hPOj0nL3Vzci9i aW4vZWNobyd9CisgVE1QRElSPQorQEAgLTI1LDE1ICsyNSwxNCBAQCB1c2FnZSgpCisgcGFyc2Vf YXJncygpCisgeworICAgICAjIFRoaXMgaXMgR05VIGdldG9wdC4gInN1ZG8gcG9ydCBnZXRvcHQi IGluIEJTRD8KKy0gICAgQVJHUz1gZ2V0b3B0IC1vIGhEOlR2IC0tbG9uZyBcCistICAgICAgICAg IGhlbHAsc2NoZW1hc2RpcjosdGFwLHZlcnNpb25cCisrICAgIEFSR1M9YGdldG9wdCAtbyBoRDp2 IC0tbG9uZyBcCisrICAgICAgICAgIGhlbHAsc2NoZW1hc2RpcjosdmVyc2lvblwKKyAgICAgICAg IC0tICIkQCJgOworICAgICBldmFsIHNldCAtLSAiJEFSR1MiCisgICAgIHdoaWxlIFsgMSBdIDsg ZG8KKyAgICAgICAgIGNhc2UgIiQxIiBpbgorICAgICAgICAgLWggfCAtLWhlbHAgKSAgICAgICAg dXNhZ2U7IGV4aXQgMDs7CisgICAgICAgICAtRCB8IC0tc2NoZW1hc2RpciApICBJTlNUQUxMRURf U0NIRU1BU19ESVI9IiQyIjsgc2hpZnQgMjs7CistICAgICAgICAtVCB8IC0tdGFwICkgICAgICAg ICBzaGlmdDs7ICMgaWdub3JlIHRoZSBvcHRpb24KKyAgICAgICAgIC12IHwgLS12ZXJzaW9uICkg ICAgICRFQ0hPIC1lICIkVkVSU0lPTiI7IGV4aXQgMDs7CisgICAgICAgICAtLSApICAgICAgICAg ICAgICAgICBzaGlmdDsgYnJlYWs7OworICAgICAgICAgKiApICAgICAgICAgICAgICAgICAgc2hp ZnQ7OworQEAgLTk4LDExICs5NywxMSBAQCB0ZXN0X3hrYl9rZXltYXBzKCkKKyAgICAgICAgIGlm IFsgIngkSEFTX1ZBUklBTlQiICE9ICJ4IiBdIDsgdGhlbgorICAgICAgICAgICAgIGxheW91dD0k KCRFQ0hPICIka2V5bWFwIiB8IHNlZCAtZSAncy9cKFteKF0qXCkoW14pXSopL1wxLycpCisgICAg ICAgICAgICAgdmFyaWFudD0kKCRFQ0hPICIka2V5bWFwIiB8IHNlZCAtZSAncy9bXihdKihcKFte KV0qXCkpL1wxLycpCistICAgICAgICAgICAgJEVDSE8gc2V0eGtibWFwIC1sYXlvdXQgJGxheW91 dCAtdmFyaWFudCAkdmFyaWFudAorKyAgICAgICAgICAgICRFQ0hPICIjIHNldHhrYm1hcCAtbGF5 b3V0ICRsYXlvdXQgLXZhcmlhbnQgJHZhcmlhbnQiCisgICAgICAgICAgICAgc2V0eGtibWFwIC1s YXlvdXQgJGxheW91dCAtdmFyaWFudCAkdmFyaWFudAorICAgICAgICAgZWxzZQorICAgICAgICAg ICAgIGxheW91dD0iJGtleW1hcCIKKy0gICAgICAgICAgICAkRUNITyBzZXR4a2JtYXAgLWxheW91 dCAkbGF5b3V0CisrICAgICAgICAgICAgJEVDSE8gIiMgc2V0eGtibWFwIC1sYXlvdXQgJGxheW91 dCIKKyAgICAgICAgICAgICBzZXR4a2JtYXAgLWxheW91dCAkbGF5b3V0CisgICAgICAgICBmaQor ICAgICAgICAgaWYgWyAkPyAtbmUgMCBdIDsgdGhlbgorQEAgLTEyMSwyMiArMTIwLDI4IEBAIEVP Rl9SRUFEX1hLQgorIG1haW4oKQorIHsKKyAgICAgaWYgWyB4IiRESVNQTEFZIiA9IHggXSA7IHRo ZW4KKy0gICAgICAgIGVjaG8gInNraXA6IE5vIGRpc3BsYXkuIE1heWJlIGhlYWRsZXNzIG1vZGUu IgorKyAgICAgICAgZWNobyAiIyBza2lwIE5vIGRpc3BsYXkuIE1heWJlIGhlYWRsZXNzIG1vZGUu IgorICAgICAgICAgZXhpdCA3NworICAgICBmaQorICAgICBpZiAhIHdoaWNoIHNldHhrYm1hcCA+ IC9kZXYvbnVsbCA7IHRoZW4KKy0gICAgICAgIGVjaG8gInNraXA6IE5vIHNldHhrYm1hcCIKKysg ICAgICAgIGVjaG8gIiMgc2tpcCBObyBzZXR4a2JtYXAiCisgICAgICAgICBleGl0IDc3CisgICAg IGZpCisgCisgICAgIHBhcnNlX2FyZ3MgIiRAIgorIAorKyAgICAjIE1lc29uIGNoZWNrcyBUQVAg I1ZlcnNpb24sICNQbGFuLCAjVGVzdFBvaW50CisrICAgIGVjaG8gIlRBUCB2ZXJzaW9uIDE0Igor KyAgICBlY2hvICIxLi4xIgorKworICAgICBpZiBbIHgiJElOU1RBTExFRF9TQ0hFTUFTX0RJUiIg IT0geCBdIDsgdGhlbgorICAgICAgICAgaW5pdAorICAgICBmaQorIAorICAgICB0ZXN0X3hrYl9r ZXltYXBzCisgCisrICAgIGVjaG8gIm9rIDEgLyRQUk9HTkFNRSIKKysKKyAgICAgaWYgWyB4IiRJ TlNUQUxMRURfU0NIRU1BU19ESVIiICE9IHggXSA7IHRoZW4KKyAgICAgICAgIGZpbml0CisgICAg IGZpCistLSAKKzIuNTQuMAorCitGcm9tIDZkM2E5OGI5NGY1ZjE5Nzc0NTk1YWY2OWM1NDI4MjU2 NWZkMzE4NzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBmdWppd2FyYXQgPHRha2Fv LmZ1aml3YXJhMUBnbWFpbC5jb20+CitEYXRlOiBUdWUsIDE5IE1heSAyMDI2IDIwOjAzOjM4ICsw OTAwCitTdWJqZWN0OiBbUEFUQ0ggMDIvMTVdIGJ1czogVW5zZXQgR19ESVNBQkxFX0FTU0VSVCBm b3IgdGVzdCBidWlsZHMKKworTm93IEdUZXN0IGlzIGltcGxlbWVudGVkIGluIHRlc3QtbWF0Y2hy dWxlIGFuZCB0ZXN0LXN0cmVzcyBmb3IgVEFQCithbmQgR19ESVNBQkxFX0FTU0VSVCBjYW5ub3Qg YmUgYXBwbGllZCB0byB0aGUgdGVzdCBidWlsZHMuCisKK0Fsc28gZGVsZXRlIHRoZSB1bm5lY2Vz c2FyeSBHVEsyX0NGTEFHUy4KKworQ2xvc2VzOiAjMjM1OAorLS0tCisgYnVzL01ha2VmaWxlLmFt IHwgMTAgKysrKystLS0tLQorIGNvbmZpZ3VyZS5hYyAgICB8ICAzICsrKworIDIgZmlsZXMgY2hh bmdlZCwgOCBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvYnVz L01ha2VmaWxlLmFtIGIvYnVzL01ha2VmaWxlLmFtCitpbmRleCBiZDM0ODFiOS4uN2ZiYzlhMjkg MTAwNjQ0CistLS0gYS9idXMvTWFrZWZpbGUuYW0KKysrKyBiL2J1cy9NYWtlZmlsZS5hbQorQEAg LTMsNyArMyw3IEBACisgIyBpYnVzIC0gVGhlIElucHV0IEJ1cworICMKKyAjIENvcHlyaWdodCAo YykgMjAwNy0yMDEzIFBlbmcgSHVhbmcgPHNoYXduLnAuaHVhbmdAZ21haWwuY29tPgorLSMgQ29w eXJpZ2h0IChjKSAyMDEzLTIwMjIgVGFrYW8gRnVqaXdhcmEgPHRha2FvLmZ1aml3YXJhMUBnbWFp bC5jb20+CisrIyBDb3B5cmlnaHQgKGMpIDIwMTMtMjAyNiBUYWthbyBGdWppd2FyYSA8dGFrYW8u ZnVqaXdhcmExQGdtYWlsLmNvbT4KKyAjIENvcHlyaWdodCAoYykgMjAwNy0yMDIyIFJlZCBIYXQs IEluYy4KKyAjCisgIyBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yCitAQCAtMjIsNiArMjIsNyBAQAorICMgVVNBCisgCisgTlVMTCA9 CisrQ0ZMQUdTID0gJChURVNUX0NGTEFHUykKKyBTVUJESVJTID0gLiBzZXJ2aWNlcworIAorIGxp YmlidXMgPSAkKHRvcF9idWlsZGRpcikvc3JjL2xpYmlidXMtQElCVVNfQVBJX1ZFUlNJT05ALmxh CitAQCAtODcsNiArODgsNyBAQCBpYnVzX2RhZW1vbl9TT1VSQ0VTID0gXAorIAkkKE5VTEwpCisg aWJ1c19kYWVtb25fQ0ZMQUdTID0gXAorIAkkKEFNX0NGTEFHUykgXAorKwkkKFBST0RVQ1RfQ0ZM QUdTKSBcCisgCSQoTlVMTCkKKyBpYnVzX2RhZW1vbl9MREFERCA9IFwKKyAJJChBTV9MREFERCkg XAorQEAgLTE1MywxMyArMTU1LDExIEBAIHRlc3Rfc3RyZXNzX1NPVVJDRVMgPSBcCisgCSQoTlVM TCkKKyB0ZXN0X3N0cmVzc19DRkxBR1MgPSBcCisgCSQoQU1fQ0ZMQUdTKSBcCistCUBHVEsyX0NG TEFHU0AgXAorLQlAWDExX0NGTEFHU0AgXAorKwkkKFgxMV9DRkxBR1MpIFwKKyAJJChOVUxMKQor IHRlc3Rfc3RyZXNzX0xEQUREID0gXAorIAkkKEFNX0xEQUREKSBcCistCUBHVEsyX0xJQlNAIFwK Ky0JQFgxMV9MSUJTQCBcCisrCSQoWDExX0xJQlMpIFwKKyAJJChOVUxMKQorIAorIEVYVFJBX0RJ U1QgPSAgICAgICAgICAgICAgICBcCitkaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmln dXJlLmFjCitpbmRleCA0OTAyMDAzOS4uMzAzNzk4ZmIgMTAwNjQ0CistLS0gYS9jb25maWd1cmUu YWMKKysrKyBiL2NvbmZpZ3VyZS5hYworQEAgLTE2MCwxOCArMTYwLDIxIEBAIGlmIHRlc3QgeCIk ZW5hYmxlX3Byb2R1Y3RfYnVpbGQiID0geGF1dG87IHRoZW4KKyAgICAgZmkKKyBmaQorIFRFU1Rf Q0ZMQUdTPSIkQ0ZMQUdTIgorK1BST0RVQ1RfQ0ZMQUdTPSIkQ0ZMQUdTIgorIFBST0RVQ1RfTElC X0NGTEFHUz0nJworIGlmIHRlc3QgeCIkZW5hYmxlX3Byb2R1Y3RfYnVpbGQiID0geHllczsgdGhl bgorICAgICBpZiB0ZXN0ICRhY19jb21waWxlcl9nbnUgPSB5ZXM7IHRoZW4KKyAgICAgICAgIF9D RkxBR1M9Ii1ER19ESVNBQkxFX0NBU1RfQ0hFQ0tTIC1XbCwteixyZWxybyAtV2wsLXosbm93ICRD RkxBR1MiCisgICAgICAgICBURVNUX0NGTEFHUz0iJF9DRkxBR1MiCisgICAgICAgICBDRkxBR1M9 Ii1ER19ESVNBQkxFX0FTU0VSVCAkX0NGTEFHUyIKKysgICAgICAgIFBST0RVQ1RfQ0ZMQUdTPSIk Q0ZMQUdTIgorICAgICAgICAgUFJPRFVDVF9MSUJfQ0ZMQUdTPSItV2wsLUJzeW1ib2xpYyAtZm5v LXBsdCIKKyAgICAgZmkKKyAgICAgQUNfREVGSU5FKEhBVkVfUFJPRFVDVF9CVUlMRCwgMSwgW0Vu YWJsZSBwcm9kdWN0IGJ1aWxkXSkKKyBmaQorIEFDX1NVQlNUKFBST0RVQ1RfTElCX0NGTEFHUykK KyBBQ19TVUJTVChURVNUX0NGTEFHUykKKytBQ19TVUJTVChQUk9EVUNUX0NGTEFHUykKKyBBQ19N U0dfUkVTVUxUKFskZW5hYmxlX3Byb2R1Y3RfYnVpbGRdKQorIAorICMgQ2hlY2sgaGVhZGVyIGZp bGVzcy4KKy0tIAorMi41NC4wCisKK0Zyb20gYWVjYTNlODg1YjFhZWMwMmQ5ZjE0YTVhYjZjODNm OTI4ZWNhNmM5YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGZ1aml3YXJhdCA8dGFr YW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KK0RhdGU6IFRodSwgNyBNYXkgMjAyNiAwOTozNTo0NyAr MDkwMAorU3ViamVjdDogW1BBVENIIDAzLzE1XSBjbGllbnQveDExOiBDYWxsIHNldGxvY2FsZSgp CisKK1RvIGVuaGFuY2UgIzI1NDcsIGlidXMteDExIHJlcGxhY2VzIGd0a19pbml0KCkgd2l0aCBn ZGtfaW5pdCgpLgorU2VlbXMgZ2RrX2luaXQoKSBkb2VzIG5vdCBjYWxsIHNldGxvY2FsZSgpIGlu dGVybmFsbHkgYW5kIGlidXMteDExCitjYXVzZXMgc29tZSBlbmNvZGluZyBlcnJvcnMgd2hlbiB0 aGUgbXVsdGktYnl0ZSBjaGFycyBhcmUgY29udmVydGVkCit0byB0aGUgdGV4dCBwcm9wZXJ0eSBv ZiBjb21wb3VuZCB0ZXh0LgorCitCVUc9aHR0cHM6Ly9naXRodWIuY29tL2lidXMvaWJ1cy9pc3N1 ZXMvMjg5NgorRml4ZXM6IGh0dHBzOi8vZ2l0aHViLmNvbS9pYnVzL2lidXMvY29tbWl0L2IxODVi MjEKKy0tLQorIGNsaWVudC94MTEvbWFpbi5jIHwgNyArKysrKystCisgMSBmaWxlIGNoYW5nZWQs IDYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQorCitkaWZmIC0tZ2l0IGEvY2xpZW50L3gx MS9tYWluLmMgYi9jbGllbnQveDExL21haW4uYworaW5kZXggNWZhZGQ0M2QuLmFjY2ViZGU1IDEw MDY0NAorLS0tIGEvY2xpZW50L3gxMS9tYWluLmMKKysrKyBiL2NsaWVudC94MTEvbWFpbi5jCitA QCAtMiw3ICsyLDcgQEAKKyAvKiB2aW06c2V0IGV0IHN0cz00OiAqLworIC8qIGlidXMKKyAgKiBD b3B5cmlnaHQgKEMpIDIwMDctMjAxNSBQZW5nIEh1YW5nIDxzaGF3bi5wLmh1YW5nQGdtYWlsLmNv bT4KKy0gKiBDb3B5cmlnaHQgKEMpIDIwMTUtMjAyNSBUYWthbyBGdWppd2FyYSA8dGFrYW8uZnVq aXdhcmExQGdtYWlsLmNvbT4KKysgKiBDb3B5cmlnaHQgKEMpIDIwMTUtMjAyNiBUYWthbyBGdWpp d2FyYSA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KKyAgKiBDb3B5cmlnaHQgKEMpIDIwMDct MjAxNSBSZWQgSGF0LCBJbmMuCisgICoKKyAgKiBtYWluLmM6CitAQCAtMTM2OCw2ICsxMzY4LDEx IEBAIG1haW4gKGludCBhcmdjLCBjaGFyICoqYXJndikKKyAgICAgZ2RrX3NldF9hbGxvd2VkX2Jh Y2tlbmRzICgieDExIik7CisgI2VuZGlmCisgCisrICAgIC8qIGdka19pbml0KCkgZG9lcyBub3Qg Y2FsbCBzZXRsb2NhbGUoKSAqLworKyAgICBpZiAoIXNldGxvY2FsZSAoTENfQUxMLCAiIikpIHsK KysgICAgICAgIGdfd2FybmluZyAoIkZhaWxlZCB0byBzZXQgbG9jYWxlIHdpdGggeW91ciBlbnZp cm9ubWVudCB2YXJpYWJsZXMuICIKKysgICAgICAgICAgICAgICAgICAgIlNvbWUgbXVsdGktYnl0 ZSBjaGFyYWN0ZXJzIHdvbid0IGJlIGNvbW1pdHRlZCBjb3JyZWN0bHkuIik7CisrICAgIH0KKyAg ICAgZ2RrX2luaXQgKCZhcmdjLCAmYXJndik7CisgICAgIFhTZXRFcnJvckhhbmRsZXIgKF94ZXJy b3JfaGFuZGxlcik7CisgICAgIFhTZXRJT0Vycm9ySGFuZGxlciAoX3hlcnJvcl9pb19oYW5kbGVy KTsKKy0tIAorMi41NC4wCisKK0Zyb20gMzc2ODM4N2I1YzFmNzJjMmMzODQwZWJjNGM2YTQ2YzNj NzExYzcxZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IGZ1aml3YXJhdCA8dGFrYW8u ZnVqaXdhcmExQGdtYWlsLmNvbT4KK0RhdGU6IEZyaSwgMTcgQXByIDIwMjYgMTk6NTQ6MjIgKzA5 MDAKK1N1YmplY3Q6IFtQQVRDSCAwNC8xNV0gRGlzYWJsZSBVbmljb2RlIGlucHV0IHdpdGggQ3Ry bC1TaGlmdC11IHR3aWNlCisKK09uY2UgdGhlIFVuaWNvZGUgbW9kdWxlIHJlY2VpdmVzIEN0cmwt U2hpZnQtdSBrZXkgdHdpY2UsIHRoZSBwcmUtZWRpdAorc2hvdWxkIGJlIGRpc2FibGVkIGFzIHRo ZSBjdXJyZW50IElCdXMgZW5naW5lcyBleHBlY3QgdGhlIG5lc3QgZm9ybWF0Cis8ZW1vamlfcHJl ZWRpdCA8ZW5naW5lX3ByZWRpdCAvPiAvPiBidXQgbm90IHRoZSByZXZlcnNlIGZvcm1hdC4KKwor Q2xvc2VzOiAjMjkwMworLS0tCisgYnVzL2lucHV0Y29udGV4dC5jICAgICAgICB8IDE3ICsrKysr KysrKysrKy0tLS0tCisgdWkvZ3RrMy9wYW5lbGJpbmRpbmcudmFsYSB8ICAzICsrKworIDIgZmls ZXMgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdp dCBhL2J1cy9pbnB1dGNvbnRleHQuYyBiL2J1cy9pbnB1dGNvbnRleHQuYworaW5kZXggNWFkY2Rm NmUuLjdkZTU5NGFkIDEwMDY0NAorLS0tIGEvYnVzL2lucHV0Y29udGV4dC5jCisrKysgYi9idXMv aW5wdXRjb250ZXh0LmMKK0BAIC0yLDcgKzIsNyBAQAorIC8qIHZpbTpzZXQgZXQgc3RzPTQ6ICov CisgLyogaWJ1cyAtIFRoZSBJbnB1dCBCdXMKKyAgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAxNCBQ ZW5nIEh1YW5nIDxzaGF3bi5wLmh1YW5nQGdtYWlsLmNvbT4KKy0gKiBDb3B5cmlnaHQgKEMpIDIw MTUtMjAyNSBUYWthbyBGdWppd2FyYSA8dGFrYW8uZnVqaXdhcmExQGdtYWlsLmNvbT4KKysgKiBD b3B5cmlnaHQgKEMpIDIwMTUtMjAyNiBUYWthbyBGdWppd2FyYSA8dGFrYW8uZnVqaXdhcmExQGdt YWlsLmNvbT4KKyAgKiBDb3B5cmlnaHQgKEMpIDIwMDgtMjAyNSBSZWQgSGF0LCBJbmMuCisgICoK KyAgKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUg aXQgYW5kL29yCitAQCAtMzQ3MywxMCArMzQ3MywxNyBAQCBidXNfaW5wdXRfY29udGV4dF91cGRh dGVfcHJlZWRpdF90ZXh0IChCdXNJbnB1dENvbnRleHQgKmNvbnRleHQsCisgICAgIH0KKyAKKyAg ICAgY29udGV4dC0+cHJlZWRpdF9jdXJzb3JfcG9zID0gY3Vyc29yX3BvczsKKy0gICAgaWYgKHVz ZV9leHRlbnNpb24pIHsKKy0gICAgICAgIGNvbnRleHQtPnByZWVkaXRfdmlzaWJsZSA9IHZpc2li bGU7CistICAgICAgICBjb250ZXh0LT5wcmVlZGl0X21vZGUgPSBtb2RlOworLSAgICB9CisrICAg IC8qIFRoZSBgdmlzaWJsZWAgZmxhZyBpcyBzZXQgd2hldGhlciB1c2VfZXh0ZW5zaW9uIGlzIGVu YWJsZWQgb3Igbm90LgorKyAgICAgKiBJLmUuIElmIGJvdGggYW4gZW1vamkgcHJlZWRpdCB0ZXh0 IGFuZCBhbiBlbmdpbmUgcHJlZWRpdCBleGlzdCwKKysgICAgICogdGhlIGVuZ2luZSBwcmVlZGl0 IGlzIGV4cGVjdGVkIHRvIGV4aXN0IGluIHRoZSBlbW9qaSBwcmVlZGl0IGxpa2UKKysgICAgICog PGVtb2ppX3ByZWVkaXQgIDxlbmdpbmVfcHJlZWRpdCAvPiAvPiwgc28gaWYgdGhlIGVtb2ppIHBy ZWVkaXQgaXMKKysgICAgICogaGlkZGVuLCB0aGUgZW5naW5lIHByZWVkaXQgaXMgYWxzbyBoaWRk ZW4gaW4gdGhlIG5lc3RlZCBzdGF0ZS4KKysgICAgICogSWYgc29tZSBlbmdpbmVzIHdvdWxkIG5l ZWQgdGhlIHJldmVyc2UgY2FzZSBsaWtlCisrICAgICAqIDxlbmdpbmVfcHJlZWRpdCAgPGVtb2pp X3ByZWVkaXQgLz4gLz4sIHByb2JhYmx5IGFub3RoZXIgQVBJIGlzIG5lZWRlZAorKyAgICAgKiBs aWtlIGlidXNfZW5naW5lX3Nob3dfZW1vamlfY2FuZGlkYXRlX2luX3ByZWVkaXQoKS4KKysgICAg ICovCisrICAgIGNvbnRleHQtPnByZWVkaXRfdmlzaWJsZSA9IHZpc2libGU7CisrICAgIGNvbnRl eHQtPnByZWVkaXRfbW9kZSA9IG1vZGU7CisgICAgIGNvbnRleHQtPmlnbm9yZV9mb2N1c19vdXQg PSBGQUxTRTsKKyAgICAgZXh0ZW5zaW9uX3Zpc2libGUgPSBjb250ZXh0LT5wcmVlZGl0X3Zpc2li bGUgfHwKKyAgICAgICAgICAgICAgICAgICAgICAgICAoY29udGV4dC0+ZW1vamlfZXh0ZW5zaW9u ICE9IE5VTEwpOworZGlmZiAtLWdpdCBhL3VpL2d0azMvcGFuZWxiaW5kaW5nLnZhbGEgYi91aS9n dGszL3BhbmVsYmluZGluZy52YWxhCitpbmRleCA1NmQ3ZjA5Yy4uMGYyMGQ5NzMgMTAwNjQ0Cist LS0gYS91aS9ndGszL3BhbmVsYmluZGluZy52YWxhCisrKysgYi91aS9ndGszL3BhbmVsYmluZGlu Zy52YWxhCitAQCAtODg1LDYgKzg4NSw5IEBAIGNsYXNzIFBhbmVsQmluZGluZyA6IElCdXMuUGFu ZWxTZXJ2aWNlIHsKKyAgICAgICAgIG1fZW5hYmxlX2V4dGVuc2lvbiA9IGV2ZW50LmlzX2VuYWJs ZWQ7CisgICAgICAgICBpZiAoIW1fZW5hYmxlX2V4dGVuc2lvbikgeworICAgICAgICAgICAgIGhp ZGVfZW1vamlfbG9va3VwX3RhYmxlKCk7CisrICAgICAgICAgICAgdXBkYXRlX3ByZWVkaXRfdGV4 dF9yZWNlaXZlZChuZXcgSUJ1cy5UZXh0LmZyb21fc3RyaW5nKCIiKSwKKysgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAsCisrICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmYWxzZSk7CisgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAg fQorICAgICAgICAgaWYgKCFtX2xvYWRlZF9lbW9qaSkKKy0tIAorMi41NC4wCisKK0Zyb20gYThm Zjc1NTk3MTUwOWYwOWUxZDBlYTUyYTEwYmUxYmZjMTNhZjM5YiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKK0Zyb206IERhbm55IE1pbG9zYXZsamV2aWMgPGRhbm55bUBmcmllbmRseS1tYWNoaW5l cy5jb20+CitEYXRlOiBXZWQsIDI3IE1heSAyMDI2IDEzOjM4OjQ3ICswOTAwCitTdWJqZWN0OiBb UEFUQ0ggMDUvMTVdIGNsaWVudC93YXlsYW5kOiBGaXggc2VyaWFsIGhhbmRsaW5nCisKK0Nsb3Nl czogIzI4NzAKKy0tLQorIGNsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYyB8IDMgKystCisg MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQorCitkaWZmIC0t Z2l0IGEvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jIGIvY2xpZW50L3dheWxhbmQvaWJ1 c3dheWxhbmRpbS5jCitpbmRleCBlMWJhZDI3ZC4uY2YwOTBlMmUgMTAwNjQ0CistLS0gYS9jbGll bnQvd2F5bGFuZC9pYnVzd2F5bGFuZGltLmMKKysrKyBiL2NsaWVudC93YXlsYW5kL2lidXN3YXls YW5kaW0uYworQEAgLTI0MzEsMTMgKzI0MzEsMTQgQEAgcmVnaXN0cnlfaGFuZGxlX2dsb2JhbCAo dm9pZCAgICAgICAgICAgICAgICpkYXRhLAorICAgICAgICAgICAgICAgICAgaW50ZXJmYWNlLCBu YW1lLCB2ZXJzaW9uKTsKKyAgICAgICAgIGZmbHVzaCAocHJpdi0+bG9nKTsKKyAgICAgfQorLSAg ICBwcml2LT5pbV9zZXJpYWwgPSAwOworICAgICBpZiAoIWdfc3RyY21wMCAoaW50ZXJmYWNlLCB6 d3BfaW5wdXRfbWV0aG9kX21hbmFnZXJfdjJfaW50ZXJmYWNlLm5hbWUpKSB7CisrICAgICAgICBw cml2LT5pbV9zZXJpYWwgPSAwOworICAgICAgICAgcHJpdi0+dmVyc2lvbiA9IElOUFVUX01FVEhP RF9WMjsKKyAgICAgICAgIHByaXYtPmlucHV0X21ldGhvZF9tYW5hZ2VyX3YyID0KKyAgICAgICAg ICAgICAgICAgd2xfcmVnaXN0cnlfYmluZCAocmVnaXN0cnksIG5hbWUsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZ6d3BfaW5wdXRfbWV0aG9kX21hbmFnZXJfdjJfaW50ZXJm YWNlLCAxKTsKKyAgICAgfSBlbHNlIGlmICghZ19zdHJjbXAwIChpbnRlcmZhY2UsIHp3cF9pbnB1 dF9tZXRob2RfdjFfaW50ZXJmYWNlLm5hbWUpKSB7CisrICAgICAgICBwcml2LT5pbV9zZXJpYWwg PSAwOworICAgICAgICAgaWYgKHZlcnNpb24gPj0gNCkKKyAgICAgICAgICAgICB2ZXJzaW9uID0g NDsKKyAgICAgICAgIHByaXYtPnZlcnNpb24gPSBJTlBVVF9NRVRIT0RfVjE7CistLSAKKzIuNTQu MAorCitGcm9tIDE4ZDhlMzdlMTEyYTE1NWYzZjgwZDM2ZTRkNmE4NDVjYzJlMjNiZDggTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBEYW5ueSBNaWxvc2F2bGpldmljIDxkYW5ueW1AZnJp ZW5kbHktbWFjaGluZXMuY29tPgorRGF0ZTogVGh1LCAyOCBNYXkgMjAyNiAwOTo1MToxMSArMDkw MAorU3ViamVjdDogW1BBVENIIDA2LzE1XSBjbGllbnQvd2F5bGFuZDogR3VhcmQgYWdhaW5zdCBO VUxMIHNlYXQgaW4gSU12MiBjb2RlIHBhdGhzCisKK3JlZ2lzdHJ5X2hhbmRsZV9nbG9iYWxfcmVt b3ZlKCkgc2V0cyBwcml2LT5zZWF0IHRvIE5VTEwgd2hlbiB0aGUgbGFzdAorc2VhdCBpcyByZW1v dmVkLiAgSUJ1cyBlbmdpbmUgY2FsbGJhY2tzIChjb21taXRfdGV4dCwgZm9yd2FyZF9rZXlfZXZl bnQsCitzaG93L2hpZGVfcHJlZWRpdF90ZXh0LCBkZWxldGVfc3Vycm91bmRpbmdfdGV4dCkgYW5k IHRoZSBtb2RpZmllcgoraGFuZGxlciBjYW4gZmlyZSBhc3luY2hyb25vdXNseSB2aWEgRC1CdXMg YWZ0ZXIgc2VhdCByZW1vdmFsLCBjYXVzaW5nCithIE5VTEwgcG9pbnRlciBkZXJlZmVyZW5jZS4K KworQWRkIE5VTEwgY2hlY2tzIGZvciBwcml2LT5zZWF0IGluIGFsbCBJTXYyIGJyYW5jaGVzIHRo YXQgZGVyZWZlcmVuY2UgaXQKK2Zyb20gdGhlc2UgY2FsbGJhY2sgcGF0aHMuCisKK0Nsb3Nlczog IzI4NzcKKy0tLQorIGNsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYyB8IDE0ICsrKysrKysr KysrKystCisgMSBmaWxlIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkK KworZGlmZiAtLWdpdCBhL2NsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYyBiL2NsaWVudC93 YXlsYW5kL2lidXN3YXlsYW5kaW0uYworaW5kZXggY2YwOTBlMmUuLjU3YjBhZDIxIDEwMDY0NAor LS0tIGEvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jCisrKysgYi9jbGllbnQvd2F5bGFu ZC9pYnVzd2F5bGFuZGltLmMKK0BAIC0zMzQsNiArMzM0LDggQEAgaWJ1c193YXlsYW5kX2ltX2Nv bW1pdF90ZXh0IChJQnVzV2F5bGFuZElNICp3bGltLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cik7CisgICAgICAgICBicmVhazsKKyAgICAg Y2FzZSBJTlBVVF9NRVRIT0RfVjI6CisrICAgICAgICBpZiAoIXByaXYtPnNlYXQpCisrICAgICAg ICAgICAgYnJlYWs7CisgICAgICAgICB6d3BfaW5wdXRfbWV0aG9kX3YyX2NvbW1pdF9zdHJpbmcg KHByaXYtPnNlYXQtPmlucHV0X21ldGhvZF92Miwgc3RyKTsKKyAgICAgICAgIHp3cF9pbnB1dF9t ZXRob2RfdjJfY29tbWl0IChwcml2LT5zZWF0LT5pbnB1dF9tZXRob2RfdjIsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpdi0+aW1fc2VyaWFsKTsKK0BAIC0zNjcsNiAr MzY5LDggQEAgaWJ1c193YXlsYW5kX2ltX2tleSAoSUJ1c1dheWxhbmRJTSAqd2xpbSwKKyAgICAg ICAgICAqIHJldHVybnMgIkNhbm5vdCBzZW5kIGEga2V5cHJlc3MgYmVmb3JlIGRlZmluaW5nIGEg a2V5bWFwIgorICAgICAgICAgICogaWYgYGhhc19rZXltYXBgIGlzICVGQUxTRS4KKyAgICAgICAg ICAqLworKyAgICAgICAgaWYgKCFwcml2LT5zZWF0KQorKyAgICAgICAgICAgIGJyZWFrOworICAg ICAgICAgaWYgKHByaXYtPnNlYXQtPmhhc19rZXltYXApIHsKKyAgICAgICAgICAgICB6d3Bfdmly dHVhbF9rZXlib2FyZF92MV9rZXkgKHByaXYtPnNlYXQtPnZpcnR1YWxfa2V5Ym9hcmQsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lLCBrZXksIHN0YXRlKTsK K0BAIC02NjMsNiArNjY3LDggQEAgX2NvbnRleHRfc2hvd19wcmVlZGl0X3RleHRfY2IgKElCdXNJ bnB1dENvbnRleHQgKmNvbnRleHQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbW1pdCk7CisgICAgICAgICBicmVhazsKKyAgICAgY2FzZSBJ TlBVVF9NRVRIT0RfVjI6CisrICAgICAgICBpZiAoIXByaXYtPnNlYXQpCisrICAgICAgICAgICAg YnJlYWs7CisgICAgICAgICB6d3BfaW5wdXRfbWV0aG9kX3YyX3NldF9wcmVlZGl0X3N0cmluZyAg KAorICAgICAgICAgICAgICAgICBwcml2LT5zZWF0LT5pbnB1dF9tZXRob2RfdjIsCisgICAgICAg ICAgICAgICAgIHByaXYtPnByZWVkaXRfdGV4dC0+dGV4dCwKK0BAIC02OTMsNiArNjk5LDggQEAg X2NvbnRleHRfaGlkZV9wcmVlZGl0X3RleHRfY2IgKElCdXNJbnB1dENvbnRleHQgKmNvbnRleHQs CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICIi KTsKKyAgICAgICAgIGJyZWFrOworICAgICBjYXNlIElOUFVUX01FVEhPRF9WMjoKKysgICAgICAg IGlmICghcHJpdi0+c2VhdCkKKysgICAgICAgICAgICBicmVhazsKKyAgICAgICAgIHp3cF9pbnB1 dF9tZXRob2RfdjJfc2V0X3ByZWVkaXRfc3RyaW5nICAocHJpdi0+c2VhdC0+aW5wdXRfbWV0aG9k X3YyLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi IiwgMCwgMCk7CisgICAgICAgICB6d3BfaW5wdXRfbWV0aG9kX3YyX2NvbW1pdCAocHJpdi0+c2Vh dC0+aW5wdXRfbWV0aG9kX3YyLAorQEAgLTc3MSw2ICs3NzksOCBAQCBfY29udGV4dF9kZWxldGVf c3Vycm91bmRpbmdfdGV4dF9jYiAoSUJ1c0lucHV0Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAg ICAgICAgICAgYmVmb3JlX2xlbmd0aCArIGFmdGVyX2xlbmd0aCk7CisgICAgICAgICBicmVhazsK KyAgICAgY2FzZSBJTlBVVF9NRVRIT0RfVjI6CisrICAgICAgICBpZiAoIXByaXYtPnNlYXQpCisr ICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICB6d3BfaW5wdXRfbWV0aG9kX3YyX2RlbGV0ZV9z dXJyb3VuZGluZ190ZXh0ICgKKyAgICAgICAgICAgICAgICAgcHJpdi0+c2VhdC0+aW5wdXRfbWV0 aG9kX3YyLAorICAgICAgICAgICAgICAgICBiZWZvcmVfbGVuZ3RoLAorQEAgLTEyMDEsNyArMTIx MSw3IEBAIGlidXNfd2F5bGFuZF9pbV9wb3N0X2tleSAoSUJ1c1dheWxhbmRJTSAqd2xpbSwKKyAg ICAgICAgICAgICByZXR1cm4gRkFMU0U7CisgICAgICAgICBicmVhazsKKyAgICAgY2FzZSBJTlBV VF9NRVRIT0RfVjI6CistICAgICAgICBpZiAoIXByaXYtPnNlYXQtPmFjdGl2ZSkKKysgICAgICAg IGlmICghcHJpdi0+c2VhdCB8fCAhcHJpdi0+c2VhdC0+YWN0aXZlKQorICAgICAgICAgICAgIHJl dHVybiBGQUxTRTsKKyAgICAgICAgIGJyZWFrOworICAgICBkZWZhdWx0OgorQEAgLTE3NjAsNiAr MTc3MCw4IEBAIGlucHV0X21ldGhvZF9rZXlib2FyZF9tb2RpZmllcnMgKHZvaWQgICAgICAgICAg ICAgICAgICAgICAgKmRhdGEsCisgICAgICAgICAgKiByZXR1cm5zICJDYW5ub3Qgc2VuZCBhIG1v ZGlmaWVyIHN0YXRlIGJlZm9yZSBkZWZpbmluZyBhIGtleW1hcCIKKyAgICAgICAgICAqIGlmIGBo YXNfa2V5bWFwYCBpcyAlRkFMU0UuCisgICAgICAgICAgKi8KKysgICAgICAgIGlmICghcHJpdi0+ c2VhdCkKKysgICAgICAgICAgICBicmVhazsKKyAgICAgICAgIGlmIChwcml2LT5zZWF0LT5oYXNf a2V5bWFwKSB7CisgICAgICAgICAgICAgendwX3ZpcnR1YWxfa2V5Ym9hcmRfdjFfbW9kaWZpZXJz IChwcml2LT5zZWF0LT52aXJ0dWFsX2tleWJvYXJkLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgbW9kc19kZXByZXNzZWQsIG1vZHNfbGF0Y2hlZCwKKy0t IAorMi41NC4wCisKK0Zyb20gMDZiMDczZGZlZjQ3YjgzZWU0Y2Y0OTY5ZjcyNjliNzVkZmYzODdm NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IERhbm55IE1pbG9zYXZsamV2aWMgPGRh bm55bUBmcmllbmRseS1tYWNoaW5lcy5jb20+CitEYXRlOiBUaHUsIDI4IE1heSAyMDI2IDEwOjI0 OjQyICswOTAwCitTdWJqZWN0OiBbUEFUQ0ggMDcvMTVdIGNsaWVudC93YXlsYW5kOiBGaXggcHJl ZWRpdCBjdXJzb3JfZW5kIGluIHNldF9wcmVlZGl0X3N0cmluZworCitjdXJzb3JfZW5kIHdhcyBz ZXQgdG8gc3RybGVuKHRleHQpLCBtYWtpbmcgdGhlIGN1cnNvciBzcGFuIGZyb20gdGhlCitjdXJz b3IgcG9zaXRpb24gdG8gdGhlIGVuZCBvZiB0aGUgcHJlZWRpdCBzdHJpbmcuICBQZXIgdGhlCit6 d3BfaW5wdXRfbWV0aG9kX3YyIHByb3RvY29sLCBjdXJzb3JfYmVnaW4gPT0gY3Vyc29yX2VuZCBt ZWFucyBhIHBvaW50CitjdXJzb3IuICBQYXNzIGN1cnNvciBmb3IgYm90aCBiZWdpbiBhbmQgZW5k LgorCitDbG9zZXM6ICMyODgwCistLS0KKyBjbGllbnQvd2F5bGFuZC9pYnVzd2F5bGFuZGltLmMg fCAyICstCisgMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCisK K2RpZmYgLS1naXQgYS9jbGllbnQvd2F5bGFuZC9pYnVzd2F5bGFuZGltLmMgYi9jbGllbnQvd2F5 bGFuZC9pYnVzd2F5bGFuZGltLmMKK2luZGV4IDU3YjBhZDIxLi42OWQxMGZlOCAxMDA2NDQKKy0t LSBhL2NsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYworKysrIGIvY2xpZW50L3dheWxhbmQv aWJ1c3dheWxhbmRpbS5jCitAQCAtNjczLDcgKzY3Myw3IEBAIF9jb250ZXh0X3Nob3dfcHJlZWRp dF90ZXh0X2NiIChJQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICBw cml2LT5zZWF0LT5pbnB1dF9tZXRob2RfdjIsCisgICAgICAgICAgICAgICAgIHByaXYtPnByZWVk aXRfdGV4dC0+dGV4dCwKKyAgICAgICAgICAgICAgICAgY3Vyc29yLAorLSAgICAgICAgICAgICAg ICBzdHJsZW4gKHByaXYtPnByZWVkaXRfdGV4dC0+dGV4dCkpOworKyAgICAgICAgICAgICAgICBj dXJzb3IpOworICAgICAgICAgendwX2lucHV0X21ldGhvZF92Ml9jb21taXQgKHByaXYtPnNlYXQt PmlucHV0X21ldGhvZF92MiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw cml2LT5pbV9zZXJpYWwpOworICAgICAgICAgcHJpdi0+aGlkaW5nX3ByZWVkaXRfdGV4dCA9IEZB TFNFOworLS0gCisyLjU0LjAKKworRnJvbSA3MmIwOWRlM2I0YzRjMzY5NWViODc3YTcwY2JlODhj NGY1YzM5OGNkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGFubnkgTWlsb3Nhdmxq ZXZpYyA8ZGFubnltQGZyaWVuZGx5LW1hY2hpbmVzLmNvbT4KK0RhdGU6IFRodSwgMjggTWF5IDIw MjYgMTA6MzM6MDkgKzA5MDAKK1N1YmplY3Q6IFtQQVRDSCAwOC8xNV0gY2xpZW50L3dheWxhbmQ6 IEZpeCB0eXBvICJ3YXlsYXlkIiAtPiAid2F5bGFuZCIgaW4gTWFrZWZpbGUuYW0KKworVGhlIG1p c3NwZWxsZWQgdmFyaWFibGUgbmFtZSBjYXVzZWQgdGhlIE1FVEFEQVRBRElSUyBhbmQgVkFQSURJ UlMKK3NldHRpbmdzIHRvIGJlIHNpbGVudGx5IGlnbm9yZWQgYnkgYXV0b21ha2UuCisKK0Nsb3Nl czogIzI4ODEKKy0tLQorIGNsaWVudC93YXlsYW5kL01ha2VmaWxlLmFtIHwgNCArKy0tCisgMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdp dCBhL2NsaWVudC93YXlsYW5kL01ha2VmaWxlLmFtIGIvY2xpZW50L3dheWxhbmQvTWFrZWZpbGUu YW0KK2luZGV4IDI1MjY5NTU3Li4zMjc1ZDFjNSAxMDA2NDQKKy0tLSBhL2NsaWVudC93YXlsYW5k L01ha2VmaWxlLmFtCisrKysgYi9jbGllbnQvd2F5bGFuZC9NYWtlZmlsZS5hbQorQEAgLTE4NCw4 ICsxODQsOCBAQCBNQUlOVEFJTkVSQ0xFQU5GSUxFUyArPSAkKFZBUElHRU5fVkFQSVMpCisgRElT VENMRUFORklMRVMgKz0gJChWQVBJR0VOX1ZBUElTKQorICQoVkFQSUdFTl9WQVBJUyk6ICQoSU5U Uk9TUEVDVElPTl9HSVJTKQorIGlidXNfd2F5bGFuZF9pbV8xXzBfdmFwaV9ERVBTID0gZ2xpYi0y LjAgZ29iamVjdC0yLjAgZ2lvLTIuMCBpYnVzLTEuMAorLWlidXNfd2F5bGF5ZF9pbV8xXzBfdmFw aV9NRVRBREFUQURJUlMgPSAkKHNyY2RpcikgJCh0b3Bfc3JjZGlyKS9iaW5kaW5ncy92YWxhCist I2lidXNfd2F5bGF5ZF9pbV8xXzBfdmFwaV9WQVBJRElSUyA9ICQodG9wX3NyY2RpcikvYmluZGlu Z3MvdmFsYQorK2lidXNfd2F5bGFuZF9pbV8xXzBfdmFwaV9NRVRBREFUQURJUlMgPSAkKHNyY2Rp cikgJCh0b3Bfc3JjZGlyKS9iaW5kaW5ncy92YWxhCisrI2lidXNfd2F5bGFuZF9pbV8xXzBfdmFw aV9WQVBJRElSUyA9ICQodG9wX3NyY2RpcikvYmluZGluZ3MvdmFsYQorIGlidXNfd2F5bGFuZF9p bV8xXzBfdmFwaV9GSUxFUyA9IFwKKyAgICAgJChJTlRST1NQRUNUSU9OX0dJUlMpIFwKKyAgICAg JChzcmNkaXIpL2lidXMtd2F5bGFuZC1pbS1jdXN0b20udmFsYSBcCistLSAKKzIuNTQuMAorCitG cm9tIDYxNGViMDk4MDE2YWZlMjgwZTg2MDczMmM2MGE1MGFlZmRiMWVkNjUgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCitGcm9tOiBEYW5ueSBNaWxvc2F2bGpldmljIDxkYW5ueW1AZnJpZW5kbHkt bWFjaGluZXMuY29tPgorRGF0ZTogVGh1LCAyOCBNYXkgMjAyNiAxMDo0NzozNCArMDkwMAorU3Vi amVjdDogW1BBVENIIDA5LzE1XSB1aS9ndGszOiBGaXggZGlzcGxheSB3YWl0IHRpbWVvdXQgZnJv bSB+NSB5ZWFycyB0byAzIG1pbnV0ZXMKKworTUFYX0RJU1BMQVlfSURMRV9USU1FIGluY2x1ZGVk IEdfVVNFQ19QRVJfU0VDIGluIHRoZSBtdWx0aXBsaWNhdGlvbiwKK21ha2luZyB0aGUgaXRlcmF0 aW9uIGNvdW50IDE4IGJpbGxpb24gaW5zdGVhZCBvZiB0aGUgaW50ZW5kZWQgMTgwMDAuCitFYWNo IGl0ZXJhdGlvbiBzbGVlcHMgMTBtcywgc28gdGhlIGVmZmVjdGl2ZSB0aW1lb3V0IHdhcyA1Ljcg eWVhcnMKK2luc3RlYWQgb2YgdGhlIGludGVuZGVkIDMgbWludXRlcy4KKworVGhlIHNsZWVwIGR1 cmF0aW9uIGFscmVhZHkgdXNlcyBHX1VTRUNfUEVSX1NFQyAvIFNMRUVQX0RJVl9QRVJfU0VDLAor c28gdGhlIGl0ZXJhdGlvbiBjb3VudCBzaG91bGQganVzdCBiZSBTTEVFUF9ESVZfUEVSX1NFQyAq IDYwICogMy4KKworQ2xvc2VzOiAjMjg4MgorLS0tCisgdWkvZ3RrMy9hcHBsaWNhdGlvbi52YWxh IHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQor CitkaWZmIC0tZ2l0IGEvdWkvZ3RrMy9hcHBsaWNhdGlvbi52YWxhIGIvdWkvZ3RrMy9hcHBsaWNh dGlvbi52YWxhCitpbmRleCBkY2FiYzg5Mi4uYWEzMzE1NDMgMTAwNjQ0CistLS0gYS91aS9ndGsz L2FwcGxpY2F0aW9uLnZhbGEKKysrKyBiL3VpL2d0azMvYXBwbGljYXRpb24udmFsYQorQEAgLTI1 LDcgKzI1LDcgQEAgY29uc3Qgc3RyaW5nIElCVVNfV0FZTEFORF9WRVJTSU9OPSIxLjEiOworIGNv bnN0IHVsb25nIEdfVVNFQ19QRVJfU0VDPTEwMDAwMDBMOworIGNvbnN0IHVsb25nIFNMRUVQX0RJ Vl9QRVJfU0VDID0gMTAwTDsKKyBjb25zdCB1bG9uZyBNQVhfRElTUExBWV9JRExFX1RJTUUgPQor LSAgICAgICAgR19VU0VDX1BFUl9TRUMgKiBTTEVFUF9ESVZfUEVSX1NFQyAqIDYwICogMzsKKysg ICAgICAgIFNMRUVQX0RJVl9QRVJfU0VDICogNjAgKiAzOworIAorIHN0YXRpYyBzdHJpbmcgcHJn bmFtZTsKKyBzdGF0aWMgSUJ1cy5CdXMgYnVzOworLS0gCisyLjU0LjAKKworRnJvbSA0MWYzNmMw OWI0N2RhZjM0YWNjZWNiNWMwYjg3MGFmNjNiM2JhNzMwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogRGFubnkgTWlsb3NhdmxqZXZpYyA8ZGFubnltQGZyaWVuZGx5LW1hY2hpbmVzLmNv bT4KK0RhdGU6IFRodSwgMjggTWF5IDIwMjYgMTA6NTk6MTQgKzA5MDAKK1N1YmplY3Q6IFtQQVRD SCAxMC8xNV0gdWkvZ3RrMzogRml4IGxvZyB0aW1lc3RhbXAgbG9zaW5nIG1pY3Jvc2Vjb25kIHBy ZWNpc2lvbgorCitnZXRfbWljcm9zZWNvbmQoKSB3YXMgZGl2aWRlZCBieSAxMDAwIChnaXZpbmcg bWlsbGlzZWNvbmRzKSB0aGVuCitmb3JtYXR0ZWQgd2l0aCAlMDZkLCBwcm9kdWNpbmcgbWlzbGVh ZGluZyBvdXRwdXQgbGlrZSAiMDAwODQ2Ii4KK1VzZSBnZXRfbWljcm9zZWNvbmQoKSBkaXJlY3Rs eSB3aXRoICUwNmQsIG1hdGNoaW5nIHRoZSBDIGNvdW50ZXJwYXJ0CitpbiBpYnVzd2F5bGFuZGlt LmMuICBBbHNvIHVzZSAnLicgc2VwYXJhdG9yIGluc3RlYWQgb2YgJzonIHRvCitkaXN0aW5ndWlz aCBzdWItc2Vjb25kIHBhcnQgZnJvbSB0aGUgdGltZSBmaWVsZHMuCisKK0Nsb3NlczogIzI4ODQK Ky0tLQorIHVpL2d0azMvYXBwbGljYXRpb24udmFsYSB8IDYgKysrLS0tCisgMSBmaWxlIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3VpL2d0 azMvYXBwbGljYXRpb24udmFsYSBiL3VpL2d0azMvYXBwbGljYXRpb24udmFsYQoraW5kZXggYWEz MzE1NDMuLmE5OTYyNjg1IDEwMDY0NAorLS0tIGEvdWkvZ3RrMy9hcHBsaWNhdGlvbi52YWxhCisr KysgYi91aS9ndGszL2FwcGxpY2F0aW9uLnZhbGEKK0BAIC0yMTYsOSArMjE2LDkgQEAgY2xhc3Mg QXBwbGljYXRpb24geworICAgICAgICAgaWYgKG1fdXNlciA9PSBudWxsKQorICAgICAgICAgICAg IG1fdXNlciA9ICJVTktOT1ciOworICAgICAgICAgR0xpYi5EYXRlVGltZSBub3cgPSBuZXcgR0xp Yi5EYXRlVGltZS5ub3dfbG9jYWwoKTsKKy0gICAgICAgIHZhciBtc2VjID0gbm93LmdldF9taWNy b3NlY29uZCgpIC8gMTAwMDsKKy0gICAgICAgIG1fbG9nLnByaW50ZigiU3RhcnQgJTAyZDolMDJk OiUwMmQ6JTA2ZFxuIiwKKy0gICAgICAgICAgICAgICAgICAgICBub3cuZ2V0X2hvdXIoKSwgbm93 LmdldF9taW51dGUoKSwgbm93LmdldF9zZWNvbmQoKSwgbXNlYyk7CisrICAgICAgICBtX2xvZy5w cmludGYoIlN0YXJ0ICUwMmQ6JTAyZDolMDJkLiUwNmRcbiIsCisrICAgICAgICAgICAgICAgICAg ICAgbm93LmdldF9ob3VyKCksIG5vdy5nZXRfbWludXRlKCksIG5vdy5nZXRfc2Vjb25kKCksCisr ICAgICAgICAgICAgICAgICAgICAgbm93LmdldF9taWNyb3NlY29uZCgpKTsKKyAgICAgICAgIG1f bG9nLmZsdXNoKCk7CisgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgfQorLS0gCisyLjU0LjAK KworRnJvbSBlOGQzNmJhYWRmYjEzODc0MjQwM2I0ODRkYmFhYTUzZDFiZGRhM2JjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRGFubnkgTWlsb3NhdmxqZXZpYyA8ZGFubnltQGZyaWVu ZGx5LW1hY2hpbmVzLmNvbT4KK0RhdGU6IFRodSwgMjggTWF5IDIwMjYgMTE6MDc6MTAgKzA5MDAK K1N1YmplY3Q6IFtQQVRDSCAxMS8xNV0gY2xpZW50L3dheWxhbmQ6IENvcHkga2V5c3ltIGludG8g YXN5bmMga2V5IGV2ZW50CisKK19wcm9jZXNzX2tleV9ldmVudF9hc3luYygpIGRpZCBub3QgY29w eSBldmVudC0+c3ltIGludG8gdGhlIGFzeW5jCitldmVudCBzdHJ1Y3QuICBUaGUgY2FsbGJhY2sg X3Byb2Nlc3Nfa2V5X2V2ZW50X2RvbmUoKSB0aGVuIGNhbGxlZAoraWJ1c193YXlsYW5kX2ltX3Bv c3Rfa2V5KCkgd2l0aCBzeW09MCwgc28gSVNPX0xldmVsKl9MYXRjaCBrZXlzeW1zCit3ZXJlIG5v dCBmaWx0ZXJlZCBpbiBhc3luYyBtb2RlLgorCitDbG9zZXM6ICMyODg2CistLS0KKyBjbGllbnQv d2F5bGFuZC9pYnVzd2F5bGFuZGltLmMgfCAxICsKKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKykKKworZGlmZiAtLWdpdCBhL2NsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYyBiL2Ns aWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYworaW5kZXggNjlkMTBmZTguLjM3ZmU0YmFkIDEw MDY0NAorLS0tIGEvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jCisrKysgYi9jbGllbnQv d2F5bGFuZC9pYnVzd2F5bGFuZGltLmMKK0BAIC0xNDE5LDYgKzE0MTksNyBAQCBfcHJvY2Vzc19r ZXlfZXZlbnRfYXN5bmMgKElCdXNXYXlsYW5kSU0gICAgICAgKndsaW0sCisgICAgIGFzeW5jX2V2 ZW50LT5rZXlfc2VyaWFsID0gZXZlbnQtPmtleV9zZXJpYWw7CisgICAgIGFzeW5jX2V2ZW50LT50 aW1lID0gZXZlbnQtPnRpbWU7CisgICAgIGFzeW5jX2V2ZW50LT5rZXkgPSBldmVudC0+a2V5Owor KyAgICBhc3luY19ldmVudC0+c3ltID0gZXZlbnQtPnN5bTsKKyAgICAgYXN5bmNfZXZlbnQtPm1v ZGlmaWVycyA9IGV2ZW50LT5tb2RpZmllcnMgJiB+SUJVU19SRUxFQVNFX01BU0s7CisgICAgIGFz eW5jX2V2ZW50LT5zdGF0ZSA9IGV2ZW50LT5zdGF0ZTsKKyAgICAgYXN5bmNfZXZlbnQtPndsaW0g PSB3bGltOworLS0gCisyLjU0LjAKKworRnJvbSA1MjZlNTA5Yjk2OGNiMTMzNDcyN2RiZGM5Zjkx ZjQ0ZThkYzAzOGI1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogbWF0aXdhcmkgPG1h dGl3YXJpQHJlZGhhdC5jb20+CitEYXRlOiBUaHUsIDI4IE1heSAyMDI2IDExOjIxOjI1ICswOTAw CitTdWJqZWN0OiBbUEFUQ0ggMTIvMTVdIHVpL2d0azM6IHJlbW92ZSB1bnVzZWQgbV9jYW5kaWRh dGVzIGFycmF5CisKK1RoZSAnbV9jYW5kaWRhdGVzJyBhcnJheSB3YXMgbmV2ZXIgcmVhZCBhbmQg cmV0YWluZWQgcmVmZXJlbmNlcyB0byBvYnNvbGV0ZQorR3RrLkxhYmVsIG9iamVjdHMgZHVyaW5n IHBhbmVsIHJlYnVpbGRzLCBjb250cmlidXRpbmcgdG8gYSBtZW1vcnkgbGVhay4KKworQ2xvc2Vz OiAjMjQ3MQorLS0tCisgdWkvZ3RrMy9lbW9qaWVyLnZhbGEgfCAyIC0tCisgMSBmaWxlIGNoYW5n ZWQsIDIgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS91aS9ndGszL2Vtb2ppZXIudmFsYSBi L3VpL2d0azMvZW1vamllci52YWxhCitpbmRleCAwOTdlZGJkYS4uZDg5OTc4MGYgMTAwNjQ0Cist LS0gYS91aS9ndGszL2Vtb2ppZXIudmFsYQorKysrIGIvdWkvZ3RrMy9lbW9qaWVyLnZhbGEKK0BA IC0zNTgsNyArMzU4LDYgQEAgcHVibGljIGNsYXNzIElCdXNFbW9qaWVyIDogR3RrLkFwcGxpY2F0 aW9uV2luZG93IHsKKyAgICAgICovCisgICAgIHByaXZhdGUgYm9vbCBtX2NhbmRpZGF0ZV9wYW5l bF9tb2RlOworICAgICBwcml2YXRlIElCdXMuTG9va3VwVGFibGUgbV9sb29rdXBfdGFibGU7Cist ICAgIHByaXZhdGUgR3RrLkxhYmVsW10gbV9jYW5kaWRhdGVzOworICAgICBwcml2YXRlIHVpbnQg bV9lbnRyeV9ub3RpZnlfc2hvd19pZDsKKyAgICAgcHJpdmF0ZSB1aW50IG1fZW50cnlfbm90aWZ5 X2Rpc2FibGVfaWQ7CisgICAgIHByaXZhdGUgR3RrLlByb2dyZXNzQmFyIG1fdW5pY29kZV9wcm9n cmVzc19iYXI7CitAQCAtMTY2OCw3ICsxNjY3LDYgQEAgcHVibGljIGNsYXNzIElCdXNFbW9qaWVy IDogR3RrLkFwcGxpY2F0aW9uV2luZG93IHsKKyAgICAgICAgICAgICAgICAgICAgICAgICAxLCAx KTsKKyAgICAgICAgICAgICBuKys7CisgCistICAgICAgICAgICAgbV9jYW5kaWRhdGVzICs9IGxh YmVsOworICAgICAgICAgfQorICAgICAgICAgbV9jYW5kaWRhdGVfcGFuZWxfaXNfdmlzaWJsZSA9 IHRydWU7CisgICAgICAgICBpZiAoIW1faXNfdXBfc2lkZV9kb3duKSB7CistLSAKKzIuNTQuMAor CitGcm9tIDViYmU4OGExOTM2MjQ2MTg1YTY1Zjc2ZTU4Y2M4NTg3MTQwMWU1OWEgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCitGcm9tOiBUaWFuaGFvIENoYWkgPGN0aDQ1MUBnbWFpbC5jb20+CitE YXRlOiBXZWQsIDI3IE1heSAyMDI2IDEzOjExOjI4ICswOTAwCitTdWJqZWN0OiBbUEFUQ0ggMTMv MTVdIHNyYzogbWFrZSBhbiBJQnVzVGV4dCBvd24gYW4gdXBkYXRlZCBJQnVzQXR0ckxpc3QgcmVm ZXJlbmNlCisKK0ZvciBhbGwgdXNhZ2VzIG9mIElCdXNBdHRyTGlzdCwgdGhlIGxpc3QgaXMgYW4g b3duZWQgcmVmZXJlbmNlIHdpdGhpbiBhCitJQnVzVGV4dCBzdHJ1Y3QuIGBpYnVzX3BhbmVsX2Nv bnZlcnRfdGV4dCgpYCBhbmQKK2BpYnVzX2lucHV0X2NvbnRleHRfY29udmVydF90ZXh0KClgIHZp b2xhdGUgdGhlIGludmFyaWVudCBieSBhc3NpZ25pbmcgYQorKipmbG9hdGluZyoqIElCdXNBdHRy TGlzdCByZWZlcmVuY2UgdG8gYW5JQnVzVGV4dCB3aXRob3V0IHNpbmtpbmcgaXQuCisKK1doZW4g R0pTIGF0dGVtcHRzIHRvIGNyZWF0ZSBhIEpTIHJlcHJlc2VudGF0aW9uIG9mIGFuIGV4aXN0aW5n IEdPYmplY3QsCitpdCB1bmNvbmRpdGlvbmFsbHkgc2lua3MgdGhlIGluY29taW5nIHJlZmVyZW5j ZS5bMV0gRm9yIGEgbm9uLWZsb2F0aW5nCityZWZlcmVuY2UgdGhpcyB1cC1yZWZzIHRoZSBvYmpl Y3QuCisKK0ZvciB0aGlzIGZsb2F0aW5nIElCdXNBdHRyTGl0LCBgZ19vYmplY3RfcmVmX3Npbmtg IGNvbnZlcnRzIGl0IHRvIGEKK3N0cm9uZyByZWZlcmVuY2UgaW4tcGxhY2UgbGVhdmluZyByZWYt Y291bnQgYXQgMS4gQXQgdGhpcyBwb2ludCB0aGUKK2BJQnVzQXR0ckxpc3RgIGlzIHJlZmVyZW5j ZWQgYnkgYm90aCB0aGUgZW5jbG9zaW5nIGBJQnVzVGV4dGAgYW5kIHRoZQorbmV3bHkgY3JlYXRl ZCBHSlMgd3JhcHBlci4gV2hlbiBvbmUgb2YgdGhlbSBpcyByZWYtZG93bmVkIHRoZSBvYmplY3QK K2lzIHJlY3ljbGVkLCBsZWF2aW5nIHRoZSBvdGhlciByZWZlcmVuY2UgZGFuZ2xpbmcuCisKK1Rv IGZpeCB0aGlzIHdlIGp1c3QgbmVlZCB0byBtYWludGFpbiB0aGUgbGlzdCBhcyBhIG5vbi1mbG9h dGluZyByZWYuCitXZSBhbHJlYWR5IGhhdmUgYSBgaWJ1c190ZXh0X3NldF9hdHRyaWJ1dGVzKClg IHRoYXQgZG9lcyB0aGUgaW50ZW5kZWQKK3JlZiBzaW5raW5nLCBzbyBqdXN0IHVzZSB0aGF0IGlu c3RlYWQgb2YgbWFudWFsbHkgYXNzaWduaW5nIHBvaW50ZXJzLgorCitbMV06IGh0dHBzOi8vZ2l0 bGFiLmdub21lLm9yZy9HTk9NRS9nanMvLS9ibG9iL2RiNDUwNDY1YWIwMTYxZTEzMWE5Mjk5MmMy NTA5NTA3YWE2MTUyYWEvZ2kvb2JqZWN0LmNwcCNMMzU5NworCitDbG9zZXM6ICMyODg5CistLS0K KyBzcmMvaWJ1c2lucHV0Y29udGV4dC5jIHwgMTIgKysrKy0tLS0tLS0tCisgc3JjL2lidXNwYW5l bHNlcnZpY2UuYyB8IDEyICsrKystLS0tLS0tLQorIDIgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRp b25zKCspLCAxNiBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy9pYnVzaW5wdXRjb250 ZXh0LmMgYi9zcmMvaWJ1c2lucHV0Y29udGV4dC5jCitpbmRleCA2OGQxMmZiNS4uYmRmZDE2NmQg MTAwNjQ0CistLS0gYS9zcmMvaWJ1c2lucHV0Y29udGV4dC5jCisrKysgYi9zcmMvaWJ1c2lucHV0 Y29udGV4dC5jCitAQCAtNTY5LDEwICs1NjksOCBAQCBpYnVzX2lucHV0X2NvbnRleHRfY29udmVy dF90ZXh0IChJQnVzSW5wdXRDb250ZXh0ICpjb250ZXh0LAorICAgICAgICAgICAgICAgICAgICAg ICAgdGV4dC0+dGV4dCwgZXJyb3ItPm1lc3NhZ2UpOworICAgICAgICAgICAgIGdfZXJyb3JfZnJl ZSAoZXJyb3IpOworICAgICAgICAgfQorLSAgICAgICAgaWYgKG5ld19hdHRycykgeworLSAgICAg ICAgICAgIGdfb2JqZWN0X3VucmVmICh0ZXh0LT5hdHRycyk7CistICAgICAgICAgICAgdGV4dC0+ YXR0cnMgPSBuZXdfYXR0cnM7CistICAgICAgICB9CisrICAgICAgICBpZiAobmV3X2F0dHJzKQor KyAgICAgICAgICAgIGlidXNfdGV4dF9zZXRfYXR0cmlidXRlcyAodGV4dCwgbmV3X2F0dHJzKTsK KyAgICAgICAgIGJyZWFrOworICAgICBjYXNlIElCVVNfUFJFRURJVF9GT1JNQVRfSElOVDoKKyAg ICAgICAgIG5ld19hdHRycyA9IGlidXNfYXR0cl9saXN0X2NvcHlfZm9ybWF0X3RvX2hpbnQgKHRl eHQtPmF0dHJzLCAmZXJyb3IpOworQEAgLTU4MSwxMCArNTc5LDggQEAgaWJ1c19pbnB1dF9jb250 ZXh0X2NvbnZlcnRfdGV4dCAoSUJ1c0lucHV0Q29udGV4dCAqY29udGV4dCwKKyAgICAgICAgICAg ICAgICAgICAgICAgIHRleHQtPnRleHQsIGVycm9yLT5tZXNzYWdlKTsKKyAgICAgICAgICAgICBn X2Vycm9yX2ZyZWUgKGVycm9yKTsKKyAgICAgICAgIH0KKy0gICAgICAgIGlmIChuZXdfYXR0cnMp IHsKKy0gICAgICAgICAgICBnX29iamVjdF91bnJlZiAodGV4dC0+YXR0cnMpOworLSAgICAgICAg ICAgIHRleHQtPmF0dHJzID0gbmV3X2F0dHJzOworLSAgICAgICAgfQorKyAgICAgICAgaWYgKG5l d19hdHRycykKKysgICAgICAgICAgICBpYnVzX3RleHRfc2V0X2F0dHJpYnV0ZXMgKHRleHQsIG5l d19hdHRycyk7CisgICAgICAgICBicmVhazsKKyAgICAgZGVmYXVsdDoKKyAgICAgICAgIGdfYXNz ZXJ0X25vdF9yZWFjaGVkICgpOworZGlmZiAtLWdpdCBhL3NyYy9pYnVzcGFuZWxzZXJ2aWNlLmMg Yi9zcmMvaWJ1c3BhbmVsc2VydmljZS5jCitpbmRleCAxNjIyOTgyMi4uZjUwY2VhMTkgMTAwNjQ0 CistLS0gYS9zcmMvaWJ1c3BhbmVsc2VydmljZS5jCisrKysgYi9zcmMvaWJ1c3BhbmVsc2Vydmlj ZS5jCitAQCAtMTIwMywxMCArMTIwMyw4IEBAIGlidXNfcGFuZWxfY29udmVydF90ZXh0IChJQnVz UGFuZWxTZXJ2aWNlICpwYW5lbCwKKyAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtPnRleHQs IGVycm9yLT5tZXNzYWdlKTsKKyAgICAgICAgICAgICBnX2Vycm9yX2ZyZWUgKGVycm9yKTsKKyAg ICAgICAgIH0KKy0gICAgICAgIGlmIChuZXdfYXR0cnMpIHsKKy0gICAgICAgICAgICBnX29iamVj dF91bnJlZiAodGV4dC0+YXR0cnMpOworLSAgICAgICAgICAgIHRleHQtPmF0dHJzID0gbmV3X2F0 dHJzOworLSAgICAgICAgfQorKyAgICAgICAgaWYgKG5ld19hdHRycykKKysgICAgICAgICAgICBp YnVzX3RleHRfc2V0X2F0dHJpYnV0ZXMgKHRleHQsIG5ld19hdHRycyk7CisgICAgICAgICBicmVh azsKKyAgICAgY2FzZSBJQlVTX1BSRUVESVRfRk9STUFUX0hJTlQ6CisgICAgICAgICBuZXdfYXR0 cnMgPSBpYnVzX2F0dHJfbGlzdF9jb3B5X2Zvcm1hdF90b19oaW50ICh0ZXh0LT5hdHRycywgJmVy cm9yKTsKK0BAIC0xMjE1LDEwICsxMjEzLDggQEAgaWJ1c19wYW5lbF9jb252ZXJ0X3RleHQgKElC dXNQYW5lbFNlcnZpY2UgKnBhbmVsLAorICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC0+dGV4 dCwgZXJyb3ItPm1lc3NhZ2UpOworICAgICAgICAgICAgIGdfZXJyb3JfZnJlZSAoZXJyb3IpOwor ICAgICAgICAgfQorLSAgICAgICAgaWYgKG5ld19hdHRycykgeworLSAgICAgICAgICAgIGdfb2Jq ZWN0X3VucmVmICh0ZXh0LT5hdHRycyk7CistICAgICAgICAgICAgdGV4dC0+YXR0cnMgPSBuZXdf YXR0cnM7CistICAgICAgICB9CisrICAgICAgICBpZiAobmV3X2F0dHJzKQorKyAgICAgICAgICAg IGlidXNfdGV4dF9zZXRfYXR0cmlidXRlcyAodGV4dCwgbmV3X2F0dHJzKTsKKyAgICAgICAgIGJy ZWFrOworICAgICBkZWZhdWx0OgorICAgICAgICAgZ19hc3NlcnRfbm90X3JlYWNoZWQgKCk7Cist LSAKKzIuNTQuMAorCitGcm9tIDA2N2RlMWMyYjdmYTFkNDY0Njg2Y2NlNDEzMzFiMzdjMGI5YzI4 ODYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBmdWppd2FyYXQgPHRha2FvLmZ1aml3 YXJhMUBnbWFpbC5jb20+CitEYXRlOiBXZWQsIDI3IE1heSAyMDI2IDEzOjI2OjQzICswOTAwCitT dWJqZWN0OiBbUEFUQ0ggMTQvMTVdIEFkZCB0ZXN0LWRlc2VyaWFsaXplLnB5CisKK0FkZCBhIHRl c3QgY2FzZSB0byBkZXNlcmlhbGl6ZSBJQnVzVGV4dAorCitDbG9zZXM6ICMyODg5CistLS0KKyBi aW5kaW5ncy9weWdvYmplY3QvTWFrZWZpbGUuYW0gICAgICAgICAgIHwgIDQxICsrKystLS0tCisg YmluZGluZ3MvcHlnb2JqZWN0L3Rlc3QtZGVzZXJpYWxpemUucHkgICB8IDExOCArKysrKysrKysr KysrKysrKysrKysrKworIGJpbmRpbmdzL3B5Z29iamVjdC90ZXN0LW92ZXJyaWRlLWlidXMucHkg fCAgMTEgKy0tCisgc3JjL2lidXNwYW5lbHNlcnZpY2UuYyAgICAgICAgICAgICAgICAgICB8ICAg OSArLQorIHNyYy90ZXN0cy9ydW50ZXN0ICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTIgKyst CisgNiBmaWxlcyBjaGFuZ2VkLCAxNjcgaW5zZXJ0aW9ucygrKSwgMjggZGVsZXRpb25zKC0pCisg Y3JlYXRlIG1vZGUgMTAwNzU1IGJpbmRpbmdzL3B5Z29iamVjdC90ZXN0LWRlc2VyaWFsaXplLnB5 CisgbW9kZSBjaGFuZ2UgMTAwNjQ0ID0+IDEwMDc1NSBiaW5kaW5ncy9weWdvYmplY3QvdGVzdC1v dmVycmlkZS1pYnVzLnB5CisKK2RpZmYgLS1naXQgYS9iaW5kaW5ncy9weWdvYmplY3QvTWFrZWZp bGUuYW0gYi9iaW5kaW5ncy9weWdvYmplY3QvTWFrZWZpbGUuYW0KK2luZGV4IDg0YmQzN2NiLi4y NTVmNTk4OSAxMDA2NDQKKy0tLSBhL2JpbmRpbmdzL3B5Z29iamVjdC9NYWtlZmlsZS5hbQorKysr IGIvYmluZGluZ3MvcHlnb2JqZWN0L01ha2VmaWxlLmFtCitAQCAtNCw3ICs0LDcgQEAKKyAjCisg IyBDb3B5cmlnaHQgKGMpIDIwMTIgRGFpa2kgVWVubyA8dWVub0B1bml4dXNlci5vcmc+CisgIyBD b3B5cmlnaHQgKGMpIDIwMTQtMjAxNiBQZW5nIEh1YW5nIDxzaGF3bi5wLmh1YW5nQGdtYWlsLmNv bT4KKy0jIENvcHlyaWdodCAoYykgMjAxOC0yMDE5IFRha2FvIEZ1aml3YXJhIDx0YWthby5mdWpp d2FyYTFAZ21haWwuY29tPgorKyMgQ29weXJpZ2h0IChjKSAyMDE4LTIwMjYgVGFrYW8gRnVqaXdh cmEgPHRha2FvLmZ1aml3YXJhMUBnbWFpbC5jb20+CisgIyBDb3B5cmlnaHQgKGMpIDIwMTItMjAx OCBSZWQgSGF0LCBJbmMuCisgIworICMgVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlv dSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorQEAgLTI3LDM3ICsyNyw0MCBAQCBOVUxMID0K KyBpZiBFTkFCTEVfUFlUSE9OMgorIHB5Ml9jb21waWxlID0gUFlUSE9OPSQoUFlUSE9OMikgJChT SEVMTCkgJChweV9jb21waWxlKQorIG92ZXJyaWRlczJkaXIgPSAkKHB5Mm92ZXJyaWRlc2RpcikK Ky1vdmVycmlkZXMyX0RBVEEgPQkJCQlcCistCWdpL292ZXJyaWRlcy9JQnVzLnB5CQkJXAorLQkk KE5VTEwpCisrb3ZlcnJpZGVzMl9EQVRBID0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAorKyAgICBnaS9vdmVycmlkZXMvSUJ1cy5weSAgICAgICAgICAgICAgICAgICAgICAgIFwKKysg ICAgJChOVUxMKQorIGVuZGlmCisgCisgb3ZlcnJpZGVzZGlyID0gJChweW92ZXJyaWRlc2RpcikK Ky1vdmVycmlkZXNfUFlUSE9OID0JCQkJXAorLQlnaS9vdmVycmlkZXMvSUJ1cy5weQkJCVwKKy0J JChOVUxMKQorK292ZXJyaWRlc19QWVRIT04gPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKKysgICAgZ2kvb3ZlcnJpZGVzL0lCdXMucHkgICAgICAgICAgICAgICAgICAgICAgICBcCisr ICAgICQoTlVMTCkKKyAKKyBURVNUUyA9CisgCisgaWYgRU5BQkxFX1RFU1RTCistVEVTVFMgKz0g dGVzdC1vdmVycmlkZS1pYnVzLnB5CisrVEVTVFMgKz0gdGVzdC1kZXNlcmlhbGl6ZS5weSB0ZXN0 LW92ZXJyaWRlLWlidXMucHkKKyBlbmRpZgorIAorICMgSUJ1cy5LZXltYXAoKSBhY2Nlc3NlcyBr ZXltYXAgZmlsZXMKKyBURVNUU19FTlZJUk9OTUVOVCA9IFwKKy0JUFlUSE9OUEFUSD0kKHRvcF9z cmNkaXIpL3Rlc3RzOiQke1BZVEhPTlBBVEg6KzokJFBZVEhPTlBBVEh9IFwKKy0JTERfTElCUkFS WV9QQVRIPSQodG9wX2J1aWxkZGlyKS9zcmMvLmxpYnM6JCRMRF9MSUJSQVJZX1BBVEggXAorLQlH SV9UWVBFTElCX1BBVEg9JCh0b3BfYnVpbGRkaXIpL3NyYzokJEdJX1RZUEVMSUJfUEFUSCBcCist CUlCVVNfS0VZTUFQX1BBVEg9JCh0b3Bfc3JjZGlyKS9kYXRhL2tleW1hcHMgXAorLQkkKE5VTEwp CisrICAgIHRvcF9zcmNkaXI9JCh0b3Bfc3JjZGlyKSBcCisrICAgIFBZVEhPTlBBVEg9JChhYnNf dG9wX3NyY2RpcikvdGVzdHM6JCR7UFlUSE9OUEFUSDorOiQkUFlUSE9OUEFUSH0gXAorKyAgICBQ WVRIT05NQUxMT0M9bWFsbG9jIFwKKysgICAgTERfTElCUkFSWV9QQVRIPSQoYWJzX3RvcF9idWls ZGRpcikvc3JjLy5saWJzOiQkTERfTElCUkFSWV9QQVRIIFwKKysgICAgR0lfVFlQRUxJQl9QQVRI PSQoYWJzX3RvcF9idWlsZGRpcikvc3JjOiQkR0lfVFlQRUxJQl9QQVRIIFwKKysgICAgSUJVU19L RVlNQVBfUEFUSD0kKGFic190b3Bfc3JjZGlyKS9kYXRhL2tleW1hcHMgXAorKyAgICAkKE5VTEwp CisgCistTE9HX0NPTVBJTEVSID0gJChQWVRIT04pIC1CCisrTE9HX0NPTVBJTEVSID0gJCh0b3Bf c3JjZGlyKS9zcmMvdGVzdHMvcnVudGVzdCAkKFBZVEhPTikKKyAKKy1FWFRSQV9ESVNUID0JCQkJ CVwKKy0JZ2kvX19pbml0X18ucHkJCQkJXAorLQlnaS9vdmVycmlkZXMvX19pbml0X18ucHkJCVwK Ky0JdGVzdC1vdmVycmlkZS1pYnVzLnB5ICAgICAgICAgICAgICAgICAgIFwKKy0JJChOVUxMKQor K0VYVFJBX0RJU1QgPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKysgICAg Z2kvX19pbml0X18ucHkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisrICAgIGdpL292 ZXJyaWRlcy9fX2luaXRfXy5weSAgICAgICAgICAgICAgICAgICAgXAorKyAgICB0ZXN0LWRlc2Vy aWFsaXplLnB5ICAgICAgICAgICAgICAgICAgICAgICAgIFwKKysgICAgdGVzdC1vdmVycmlkZS1p YnVzLnB5ICAgICAgICAgICAgICAgICAgICAgICBcCisrICAgICQoTlVMTCkKKyAKKyBpbnN0YWxs LWRhdGEtaG9vazoKKyAJQCQoTk9STUFMX0lOU1RBTEwpCitkaWZmIC0tZ2l0IGEvYmluZGluZ3Mv cHlnb2JqZWN0L3Rlc3QtZGVzZXJpYWxpemUucHkgYi9iaW5kaW5ncy9weWdvYmplY3QvdGVzdC1k ZXNlcmlhbGl6ZS5weQorbmV3IGZpbGUgbW9kZSAxMDA3NTUKK2luZGV4IDAwMDAwMDAwLi4yOTA5 MTRkNworLS0tIC9kZXYvbnVsbAorKysrIGIvYmluZGluZ3MvcHlnb2JqZWN0L3Rlc3QtZGVzZXJp YWxpemUucHkKK0BAIC0wLDAgKzEsMTE4IEBACisrIyEvdXNyL2Jpbi9weXRob24KKysjIGlidXMg LSBUaGUgSW5wdXQgQnVzCisrIworKyMgQ29weXJpZ2h0IMKpIDIwMjYgVGFrYW8gRnVqaXdhcmEg PHRha2FvLmZ1aml3YXJhMUBnbWFpbC5jb20+CisrIworKyMgVGhpcyBsaWJyYXJ5IGlzIGZyZWUg c29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorKyMgbW9kaWZ5IGl0IHVu ZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYworKyMgTGljZW5z ZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCisr IyB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KKysjCisrIyBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhv cGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKysjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsg d2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrIyBNRVJDSEFOVEFCSUxJVFkg b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQorKyMgTGVz c2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKysjCisrIyBZb3Ug c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVi bGljCisrIyBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRv IHRoZSBGcmVlIFNvZnR3YXJlCisrIyBGb3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJl ZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjExMC0xMzAxCisrIyBVU0EKKysKKytpbXBv cnQgc3lzCisraW1wb3J0IHVuaXR0ZXN0CisrZnJvbSBwYXRobGliIGltcG9ydCBQYXRoCisrCisr IyBtb3ZlIHRoZSBzY3JpcHQgcGF0aCBhdCB0aGUgZW5kLCBzbyB0aGUgbmVjZXNzYXJ5IG1vZHVs ZXMgaW4gc3lzdGVtCisrIyBweWdvYmplY3QgY2FuIGJlIGxvYWRlZCBmaXJzdAorK3Rlc3RzX2J1 aWxkZGlyID0gUGF0aChfX2ZpbGVfXykucmVzb2x2ZSgpLnBhcmVudAorK3N5cy5wYXRoID0gW3Bh dGggZm9yIHBhdGggaW4gc3lzLnBhdGggaWYgUGF0aChwYXRoKSAhPSB0ZXN0c19idWlsZGRpcl0K KytzeXMucGF0aC5hcHBlbmQoc3RyKHRlc3RzX2J1aWxkZGlyKSkKKysKKytmcm9tIGdpIGltcG9y dCByZXF1aXJlX3ZlcnNpb25zIGFzIGdpX3JlcXVpcmVfdmVyc2lvbnMKKysKKytnaV9yZXF1aXJl X3ZlcnNpb25zKHsnSUJ1cyc6ICcxLjAnLCAnR0xpYic6ICAnMi4wJywgJ0dpbyc6ICcyLjAnLCB9 KQorK2Zyb20gZ2kucmVwb3NpdG9yeSBpbXBvcnQgSUJ1cworK2Zyb20gZ2kucmVwb3NpdG9yeSBp bXBvcnQgR0xpYgorK2Zyb20gZ2kucmVwb3NpdG9yeSBpbXBvcnQgR2lvCisrCisrCisrY2xhc3Mg VGVzdE92ZXJyaWRlKHVuaXR0ZXN0LlRlc3RDYXNlKToKKysgICAgX19idXMgPSBOb25lCisrICAg IF9fdGV4dCA9IE5vbmUKKysgICAgX19hdHRycyA9IE5vbmUKKysgICAgX19pbnZvY2F0aW9uID0g Tm9uZQorKworKyAgICBkZWYgc2V0VXAoc2VsZik6CisrICAgICAgICBJQnVzLmluaXQoKQorKyAg ICAgICAgc2VsZi5fX2J1cyA9IElCdXMuQnVzKCkKKysKKysgICAgZGVmIHVwZGF0ZV9wcmVlZGl0 X3RleHRfY2Ioc2VsZiwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGV4dCwK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCwKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgY3Vyc29yLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 aXNpYmxlKToKKysgICAgICAgIHNlbGYudXBkYXRlX3ByZWVkaXRfdGV4dF93aXRoX21vZGVfY2Io CisrICAgICAgICAgICAgICAgIGNvbnRleHQsIHRleHQsIGN1cnNvciwgdmlzaWJsZSwgMCkKKysK KysgICAgZGVmIHVwZGF0ZV9wcmVlZGl0X3RleHRfd2l0aF9tb2RlX2NiKHNlbGYsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZXh0LAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dCwKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGN1cnNvciwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHZpc2libGUsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBtb2RlKToKKysgICAgICAgIHNlbGYuX190ZXh0ID0gdGV4dAorKyAgICAgICAg c2VsZi5fX2F0dHJzID0gc2VsZi5fX3RleHQuZ2V0X2F0dHJpYnV0ZXMoKQorKyAgICAgICAgcHJp bnQoJyMgR290IHVwZGF0ZS1wcmVlZGl0LXRleHQtd2l0aC1tb2RlJywKKysgICAgICAgICAgICAg IHNlbGYuX190ZXh0LmdldF90ZXh0KCksIGN1cnNvciwgdmlzaWJsZSwgbW9kZSkKKysKKysKKysg ICAgZGVmIHRlc3RfZGVzZXJpYWxpemVkX2lucHV0X2NvbnRleHQoc2VsZik6CisrICAgICAgICB0 ZXh0ID0gSUJ1cy5UZXh0Lm5ld19mcm9tX3N0cmluZygndGVzdCcpCisrICAgICAgICB0ZXh0LmFw cGVuZF9hdHRyaWJ1dGUoSUJ1cy5BdHRyVHlwZS5ISU5ULAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIElCdXMuQXR0clByZWVkaXQuV0hPTEUsCisrICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgMCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LmdldF9sZW5n dGgoKSkKKysgICAgICAgIHRleHRfdmFyaWFudCA9IHRleHQuc2VyaWFsaXplX29iamVjdCgpCisr ICAgICAgICB1cGRhdGVfcHJlZWRpdF92YXJpYW50ID0gR0xpYi5WYXJpYW50Lm5ld190dXBsZSgK KysgICAgICAgICAgICBHTGliLlZhcmlhbnQubmV3X3ZhcmlhbnQodGV4dF92YXJpYW50KSwKKysg ICAgICAgICAgICBHTGliLlZhcmlhbnQubmV3X3VpbnQzMigwKSwKKysgICAgICAgICAgICBHTGli LlZhcmlhbnQubmV3X2Jvb2xlYW4oVHJ1ZSksCisrICAgICAgICAgICAgR0xpYi5WYXJpYW50Lm5l d191aW50MzIoMCkpCisrICAgICAgICBjb250ZXh0ID0gc2VsZi5fX2J1cy5jcmVhdGVfaW5wdXRf Y29udGV4dCgndGVzdCcpCisrICAgICAgICBjb250ZXh0LmNvbm5lY3QoJ3VwZGF0ZS1wcmVlZGl0 LXRleHQtd2l0aC1tb2RlJywKKysgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLnVwZGF0ZV9w cmVlZGl0X3RleHRfd2l0aF9tb2RlX2NiKQorKyAgICAgICAgY29udGV4dC5kb19nX3NpZ25hbChj b250ZXh0LAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnb3JnLmZyZWVkZXNrdG9wLkRC dXMnLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAnVXBkYXRlUHJlZWRpdFRleHRXaXRo TW9kZScsCisrICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVwZGF0ZV9wcmVlZGl0X3Zhcmlh bnQpCisrICAgICAgICBwcmludCgnIyBMYXN0Jywgc2VsZi5fX2F0dHJzLCBzZWxmLl9fdGV4dC5n ZXRfdGV4dCgpKQorKworKyAgICBkZWYgdGVzdF9kZXNlcmlhbGl6ZWRfcGFuZWwoc2VsZik6Cisr ICAgICAgICB0ZXh0ID0gSUJ1cy5UZXh0Lm5ld19mcm9tX3N0cmluZygndGVzdCcpCisrICAgICAg ICB0ZXh0LmFwcGVuZF9hdHRyaWJ1dGUoSUJ1cy5BdHRyVHlwZS5ISU5ULAorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElCdXMuQXR0clByZWVkaXQuV0hPTEUsCisrICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0 LmdldF9sZW5ndGgoKSkKKysgICAgICAgIHRleHRfdmFyaWFudCA9IHRleHQuc2VyaWFsaXplX29i amVjdCgpCisrICAgICAgICB1cGRhdGVfcHJlZWRpdF92YXJpYW50ID0gR0xpYi5WYXJpYW50Lm5l d190dXBsZSgKKysgICAgICAgICAgICBHTGliLlZhcmlhbnQubmV3X3ZhcmlhbnQodGV4dF92YXJp YW50KSwKKysgICAgICAgICAgICBHTGliLlZhcmlhbnQubmV3X3VpbnQzMigwKSwKKysgICAgICAg ICAgICBHTGliLlZhcmlhbnQubmV3X2Jvb2xlYW4oVHJ1ZSkpCisrICAgICAgICBwYW5lbCA9IElC dXMuUGFuZWxTZXJ2aWNlLm5ldyhzZWxmLl9fYnVzLmdldF9jb25uZWN0aW9uKCkpCisrICAgICAg ICBwYW5lbC5jb25uZWN0KCd1cGRhdGUtcHJlZWRpdC10ZXh0JywKKysgICAgICAgICAgICAgICAg ICAgICAgc2VsZi51cGRhdGVfcHJlZWRpdF90ZXh0X2NiKQorKyAgICAgICAgc2VsZi5fX2ludm9j YXRpb24gPSBHaW8uREJ1c01ldGhvZEludm9jYXRpb24oKQorKyAgICAgICAgcGFuZWwuZG9fc2Vy dmljZV9tZXRob2RfY2FsbChwYW5lbCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2VsZi5fX2J1cy5nZXRfY29ubmVjdGlvbigpLAorKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnb3JnLmZyZWVkZXNrdG9wLklCdXMuTnVsbEludm9jYXRpb24nLAor KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJQnVzLlBBVEhfUEFORUwgKyAn L0RyeVRlc3QnLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJQnVzLklO VEVSRkFDRV9QQU5FTCwKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Vw ZGF0ZVByZWVkaXRUZXh0JywKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dXBkYXRlX3ByZWVkaXRfdmFyaWFudC5yZWYoKSwKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZi5fX2ludm9jYXRpb24pCisrICAgICAgICBwcmludCgnIyBMYXN0Jywg c2VsZi5fX2F0dHJzLCBzZWxmLl9fdGV4dC5nZXRfdGV4dCgpKQorKworKworK2lmIF9fbmFtZV9f ID09ICdfX21haW5fXyc6CisrICAgIEdMaWIubG9nX3NldF9mYXRhbF9tYXNrKCdHTGliJywgR0xp Yi5Mb2dMZXZlbEZsYWdzLkxFVkVMX1dBUk5JTkcpCisrICAgIHVuaXR0ZXN0Lm1haW4oKQorZGlm ZiAtLWdpdCBhL2JpbmRpbmdzL3B5Z29iamVjdC90ZXN0LW92ZXJyaWRlLWlidXMucHkgYi9iaW5k aW5ncy9weWdvYmplY3QvdGVzdC1vdmVycmlkZS1pYnVzLnB5CitvbGQgbW9kZSAxMDA2NDQKK25l dyBtb2RlIDEwMDc1NQoraW5kZXggODg1M2ZmNjQuLjg5MDczYTA4CistLS0gYS9iaW5kaW5ncy9w eWdvYmplY3QvdGVzdC1vdmVycmlkZS1pYnVzLnB5CisrKysgYi9iaW5kaW5ncy9weWdvYmplY3Qv dGVzdC1vdmVycmlkZS1pYnVzLnB5CitAQCAtMjAsMTYgKzIwLDE1IEBACisgIyBGb3VuZGF0aW9u LCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLCBCb3N0b24sIE1BICAwMjEx MC0xMzAxCisgIyBVU0EKKyAKKy1pbXBvcnQgdW5pdHRlc3QKKy0KKy1pbXBvcnQgb3MKKyBpbXBv cnQgc3lzCisraW1wb3J0IHVuaXR0ZXN0CisrZnJvbSBwYXRobGliIGltcG9ydCBQYXRoCisgCisg IyBtb3ZlIHRoZSBzY3JpcHQgcGF0aCBhdCB0aGUgZW5kLCBzbyB0aGUgbmVjZXNzYXJ5IG1vZHVs ZXMgaW4gc3lzdGVtCisgIyBweWdvYmplY3QgY2FuIGJlIGxvYWRlZCBmaXJzdAorLXRlc3RzX2J1 aWxkZGlyID0gb3MucGF0aC5hYnNwYXRoKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXykpCistc3lz LnBhdGggPSBbcGF0aCBmb3IgcGF0aCBpbiBzeXMucGF0aCBpZiBwYXRoICE9IHRlc3RzX2J1aWxk ZGlyXQorLXN5cy5wYXRoLmFwcGVuZCh0ZXN0c19idWlsZGRpcikKKyt0ZXN0c19idWlsZGRpciA9 IFBhdGgoX19maWxlX18pLnJlc29sdmUoKS5wYXJlbnQKKytzeXMucGF0aCA9IFtwYXRoIGZvciBw YXRoIGluIHN5cy5wYXRoIGlmIFBhdGgocGF0aCkgIT0gdGVzdHNfYnVpbGRkaXJdCisrc3lzLnBh dGguYXBwZW5kKHN0cih0ZXN0c19idWlsZGRpcikpCisgCisgaW1wb3J0IGdpCisgZ2kucmVxdWly ZV92ZXJzaW9ucyh7J0dMaWInOiAnMi4wJywgJ0lCdXMnOiAnMS4wJ30pCitkaWZmIC0tZ2l0IGEv c3JjL2lidXNwYW5lbHNlcnZpY2UuYyBiL3NyYy9pYnVzcGFuZWxzZXJ2aWNlLmMKK2luZGV4IGY1 MGNlYTE5Li4xNGNjYTNlYyAxMDA2NDQKKy0tLSBhL3NyYy9pYnVzcGFuZWxzZXJ2aWNlLmMKKysr KyBiL3NyYy9pYnVzcGFuZWxzZXJ2aWNlLmMKK0BAIC0xMjU1LDYgKzEyNTUsNyBAQCBpYnVzX3Bh bmVsX3NlcnZpY2Vfc2VydmljZV9tZXRob2RfY2FsbCAoSUJ1c1NlcnZpY2UgICAgICAgICAgICpz ZXJ2aWNlLAorICAgICAgICAgZ3VpbnQgY3Vyc29yID0gMDsKKyAgICAgICAgIGdib29sZWFuIHZp c2libGUgPSBGQUxTRTsKKyAgICAgICAgIElCdXNUZXh0ICp0ZXh0OworKyAgICAgICAgZ2Jvb2xl YW4gaXNfZHJ5X3Rlc3Q7CisgCisgICAgICAgICBnX3ZhcmlhbnRfZ2V0IChwYXJhbWV0ZXJzLCAi KHZ1YikiLCAmdmFyaWFudCwgJmN1cnNvciwgJnZpc2libGUpOworICAgICAgICAgdGV4dCA9IElC VVNfVEVYVCAoaWJ1c19zZXJpYWxpemFibGVfZGVzZXJpYWxpemUgKHZhcmlhbnQpKTsKK0BAIC0x MjYzLDcgKzEyNjQsMTMgQEAgaWJ1c19wYW5lbF9zZXJ2aWNlX3NlcnZpY2VfbWV0aG9kX2NhbGwg KElCdXNTZXJ2aWNlICAgICAgICAgICAqc2VydmljZSwKKyAKKyAgICAgICAgIGdfc2lnbmFsX2Vt aXQgKHBhbmVsLCBwYW5lbF9zaWduYWxzW1VQREFURV9QUkVFRElUX1RFWFRdLCAwLCB0ZXh0LCBj dXJzb3IsIHZpc2libGUpOworICAgICAgICAgX2dfb2JqZWN0X3VucmVmX2lmX2Zsb2F0aW5nICh0 ZXh0KTsKKy0gICAgICAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9yZXR1cm5fdmFsdWUgKGlu dm9jYXRpb24sIE5VTEwpOworKyAgICAgICAgaXNfZHJ5X3Rlc3QgPSAhZ19zdHJjbXAwIChvYmpl Y3RfcGF0aCwgSUJVU19QQVRIX1BBTkVMICIvRHJ5VGVzdCIpOworKyAgICAgICAgLyogR0RCdXNN ZXRob2RJbnZvY2F0aW9uIGRvZXMgbm90IHByb3ZpZGUgaW5zdGFuY2UgbWV0aG9kcyBmb3IgUHl0 aG9uCisrICAgICAgICAgKiBnb2JqZWN0LWludHJvc3BlY3Rpb24gYmluZGluZyBzbyB3ZSBjYW5u b3QgY2FsbAorKyAgICAgICAgICogZ19kYnVzX21ldGhvZF9pbnZvY2F0aW9uX3JldHVybl92YWx1 ZSgpIGFuZCBnX29iamVjdF91bnJlZigpLgorKyAgICAgICAgICovCisrICAgICAgICBpZiAoIWlz X2RyeV90ZXN0KQorKyAgICAgICAgICAgIGdfZGJ1c19tZXRob2RfaW52b2NhdGlvbl9yZXR1cm5f dmFsdWUgKGludm9jYXRpb24sIE5VTEwpOworICAgICAgICAgcmV0dXJuOworICAgICB9CisgCitk aWZmIC0tZ2l0IGEvc3JjL3Rlc3RzL3J1bnRlc3QgYi9zcmMvdGVzdHMvcnVudGVzdAoraW5kZXgg N2JkOTg1NzUuLjRlNTQ0MjBmIDEwMDc1NQorLS0tIGEvc3JjL3Rlc3RzL3J1bnRlc3QKKysrKyBi L3NyYy90ZXN0cy9ydW50ZXN0CitAQCAtMzcsMTEgKzM3LDEzIEBAIGlidXMtZW5naW5lLXN3aXRj aAorIGlidXMtY29tcG9zZQorIGlidXMta2V5cHJlc3MKKyB0ZXN0LXN0cmVzcworK3Rlc3QtZGVz ZXJpYWxpemUucHkKKyB0ZXN0LW92ZXJyaWRlLWlidXMucHkKKyAiCisgSUJVU19TQ0hFTUFfRklM RT0nb3JnLmZyZWVkZXNrdG9wLmlidXMuZ3NjaGVtYS54bWwnCisgR1RLX1FVRVJZX01PRFVMRT1n dGstcXVlcnktaW1tb2R1bGVzLTMuMC0zMgorIE1BQ0hJTkU9YHVuYW1lIC1tYAorK1BZVEhPTl9U RVNUX0FSR1M9Jy1CJworIAorIGlmIHRlc3QgeCIkTUFDSElORSIgPSB4eDg2XzY0IDsgdGhlbgor ICAgICBHVEtfUVVFUllfTU9EVUxFPWd0ay1xdWVyeS1pbW1vZHVsZXMtMy4wLTY0CitAQCAtMTM3 LDYgKzEzOSwxMiBAQCBydW5fdGVzdF9jYXNlKCkKKyAgICAgY2QgJHRzdGRpcgorIAorICAgICBp ZiBlY2hvICIkdHN0IiB8IGdyZXAgLXEgJ3B5dGhvbicgOyB0aGVuCisrICAgICAgICAjIENvbnZl cnQgdGhlIHJlbGF0aXZlIHBhdGggdG8gdGhlIGFic29sdXRlIHBhdGguCisrICAgICAgICBpZiBl Y2hvICIkdHN0IiB8IGdyZXAgLXEgIlwuLyIgOyB0aGVuCisrICAgICAgICAgICAgdHN0PWByZWFs cGF0aCAkdHN0YAorKyAgICAgICAgZWxpZiAhIGVjaG8gIiR0c3QiIHwgZ3JlcCAtcSAiLyIgOyB0 aGVuCisrICAgICAgICAgICAgdHN0PWBjb21tYW5kIC12ICR0c3RgCisrICAgICAgICBmaQorICAg ICAgICAgbmFtZT1gZnVuY19iYXNlbmFtZSAiJDEiYAorICAgICBlbHNlCisgICAgICAgICBuYW1l PWBmdW5jX2Jhc2VuYW1lICIkdHN0ImAKK0BAIC0yNDcsMTAgKzI1NSwxMCBAQCBydW5fdGVzdF9j YXNlKCkKKyAgICAgICAgICAgICBzaGlmdAorICAgICAgICAgICAgIGlmIGVjaG8gIiR0c3QiIHwg Z3JlcCAtcSAnXi8nIDsgdGhlbgorICAgICAgICAgICAgICAgICAjIGFic29sdXRlIHBhdGggZm9y IE1lc29uCistICAgICAgICAgICAgICAgICIkaW50ZXJwcmV0ZXIiICIkdHN0IiAkezErIiRAIn0K KysgICAgICAgICAgICAgICAgIiRpbnRlcnByZXRlciIgJFBZVEhPTl9URVNUX0FSR1MgIiR0c3Qi ICR7MSsiJEAifQorICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgIyByZWxhdGl2 ZSBwYXRoIGZvciBhdXRvdG9vbHMKKy0gICAgICAgICAgICAgICAgIiRpbnRlcnByZXRlciIgIi4u LyR0c3QiICR7MSsiJEAifQorKyAgICAgICAgICAgICAgICAiJGludGVycHJldGVyIiAkUFlUSE9O X1RFU1RfQVJHUyAiLi4vJHRzdCIgJHsxKyIkQCJ9CisgICAgICAgICAgICAgZmkKKyAgICAgICAg IGVsc2UKKyAgICAgICAgICAgICAjIGFic29sdXRlIHBhdGggZm9yIE1lc29uCistLSAKKzIuNTQu MAorCitGcm9tIDI2YWFmMTNiZDYyYjk3MmNmZWUxZjRiNThiYTE2OGQyMTRlOTllY2EgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBmdWppd2FyYXQgPHRha2FvLmZ1aml3YXJhMUBnbWFp bC5jb20+CitEYXRlOiBUdWUsIDI2IE1heSAyMDI2IDIxOjE5OjQzICswOTAwCitTdWJqZWN0OiBb UEFUQ0ggMTUvMTVdIGNsaWVudC93YXlsYW5kOiBJZ25vcmUgd3JvbmcgY3Vyc29yIGFuZCBhbmNo b3IgaW4gc3Vycm91bmRpbmctdGV4dAorCitLREUgUGxhc21hIGNvdWxkIHNlbmQgd3JvbmcgY3Vy c29yIGFuZCBhbmNob3Igd2l0aCBzdXJyb3VuZGluZ190ZXh0KCkKK3NpZ25hbCBpbiBgendwX2lu cHV0X21ldGhvZF9jb250ZXh0X3YxX2xpc3RlbmVyYC4KK0knbSBub3Qgc3VyZSBpZiBpdCdzIGNh dXNlZCBieSB0aGUgY29tcG9zaXRvciBvciBJQnVzIGVuZ2luZXMgYnV0CitpYnVzLXdheWxhbmQg c2hvdWxkIGlnbm9yZSB0aGVtLgorCitDbG9zZXM6IHJoYnojMjQ0NDc4NworLS0tCisgY2xpZW50 L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jIHwgMTAgKysrKysrKysrKworIDEgZmlsZSBjaGFuZ2Vk LCAxMCBpbnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9jbGllbnQvd2F5bGFuZC9pYnVzd2F5 bGFuZGltLmMgYi9jbGllbnQvd2F5bGFuZC9pYnVzd2F5bGFuZGltLmMKK2luZGV4IDM3ZmU0YmFk Li4zNjdiMDdjNSAxMDA2NDQKKy0tLSBhL2NsaWVudC93YXlsYW5kL2lidXN3YXlsYW5kaW0uYwor KysrIGIvY2xpZW50L3dheWxhbmQvaWJ1c3dheWxhbmRpbS5jCitAQCAtODA1LDExICs4MDUsMjEg QEAgaGFuZGxlX3N1cnJvdW5kaW5nX3RleHQgKHZvaWQgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKmRhdGEsCisgI2lmIEVOQUJMRV9TVVJST1VORElORworICAgICBJQnVzV2F5bGFu ZElNICp3bGltID0gZGF0YTsKKyAgICAgSUJ1c1dheWxhbmRJTVByaXZhdGUgKnByaXY7CisrICAg IHNpemVfdCBsZW47CisgICAgIElCdXNUZXh0ICppYnVzdGV4dDsKKyAKKyAgICAgZ19yZXR1cm5f aWZfZmFpbCAoSUJVU19JU19XQVlMQU5EX0lNICh3bGltKSk7CisrICAgIGdfcmV0dXJuX2lmX2Zh aWwgKHRleHQpOworICAgICBwcml2ID0gaWJ1c193YXlsYW5kX2ltX2dldF9pbnN0YW5jZV9wcml2 YXRlICh3bGltKTsKKyAKKysgICAgbGVuID0gc3RybGVuICh0ZXh0KTsKKysgICAgaWYgKEdfVU5M SUtFTFkgKGxlbiA+IEdfTUFYVUlOVDMyIHx8IGxlbiA8IGN1cnNvciB8fCBsZW4gPCBhbmNob3Ip KSB7CisrICAgICAgICAvKiBTaG91bGQgbm90IHNob3cgdGhlIHRleHQgYXMgYSBzZWN1cml0eSBy ZWFzb24uICovCisrICAgICAgICBnX3dhcm5pbmcgKCJSZWNlaXZlZCBhIHdyb25nIHN1cnJvdW5k aW5nIHRleHQgbGVuZ3RoICV6dSA8IGN1cnNvciAldSAiCisrICAgICAgICAgICAgICAgICAgICJh bmNob3IgJXUiLAorKyAgICAgICAgICAgICAgICAgICBsZW4sIGN1cnNvciwgYW5jaG9yKTsKKysg ICAgICAgIHJldHVybjsKKysgICAgfQorICAgICBpYnVzdGV4dCA9IGlidXNfdGV4dF9uZXdfZnJv bV9zdHJpbmcgKHRleHQpOworIAorICAgICBpZiAocHJpdi0+c3Vycm91bmRpbmdfdGV4dCkKKy0t IAorMi41NC4wCisKCmRpZmYgLS1naXQgYS9pYnVzLnNwZWMgYi9pYnVzLnNwZWMKaW5kZXggYzRk M2RmZi4uN2M0NGFkNiAxMDA2NDQKLS0tIGEvaWJ1cy5zcGVjCisrKyBiL2lidXMuc3BlYwpAQCAt NTgsNyArNTgsNyBAQAogTmFtZTogICAgICAgICAgIGlidXMKIFZlcnNpb246ICAgICAgICAxLjUu MzQKICMgaHR0cHM6Ly9naXRodWIuY29tL2ZlZG9yYS1pbmZyYS9ycG1hdXRvc3BlYy9pc3N1ZXMv MTAxCi1SZWxlYXNlOiAgICAgICAgMSV7P2Rpc3R9CitSZWxlYXNlOiAgICAgICAgMiV7P2Rpc3R9 CiBTdW1tYXJ5OiAgICAgICAgSW50ZWxsaWdlbnQgSW5wdXQgQnVzIGZvciBMaW51eCBPUwogTGlj ZW5zZTogICAgICAgIExHUEwtMi4xLW9yLWxhdGVyCiBVUkw6ICAgICAgICAgICAgaHR0cHM6Ly9n aXRodWIuY29tL2lidXMvJW5hbWUvd2lraQpAQCAtNjcsNiArNjcsNyBAQCBTb3VyY2UxOiAgICAg ICAgaHR0cHM6Ly9naXRodWIuY29tL2lidXMvJW5hbWUvcmVsZWFzZXMvZG93bmxvYWQvJXtzb3Vy Y2VfdmVyc2lvbgogU291cmNlMjogICAgICAgICV7bmFtZX0teGlucHV0CiBTb3VyY2UzOiAgICAg ICAgJXtuYW1lfS5jb25mLjUKICMgUGF0Y2gwOiAgICAgICAgICUle25hbWV9LUhFQUQucGF0Y2gK K1BhdGNoMDogICAgICAgICAle25hbWV9LUhFQUQucGF0Y2gKICMgVW5kZXIgdGVzdGluZyAjMTM0 OTE0OCAjMTM4NTM0OSAjMTM1MDI5MSAjMTQwNjY5OSAjMTQzMjI1MiAjMTYwMTU3NwogUGF0Y2gx OiAgICAgICAgICV7bmFtZX0tMTM4NTM0OS1zZWd2LWJ1cy1wcm94eS5wYXRjaAogCkBAIC01ODMs NiArNTg0LDEyIEBAIGRjb25mIHVwZGF0ZSB8fCA6CiAle19kYXRhZGlyfS9pbnN0YWxsZWQtdGVz dHMvaWJ1cwogCiAlY2hhbmdlbG9nCisqIFdlZCBKdW4gMDMgMjAyNiBUYWthbyBGdWppd2FyYSA8 dGZ1aml3YXJAcmVkaGF0LmNvbT4gLSAxLjUuMzQtMgorLSBCYWNrcG9ydCB1cHN0cmVhbSBwYXRj aGVzCistIE1ha2UgYW4gSUJ1c1RleHQgb3duIGFuIHVwZGF0ZWQgSUJ1c0F0dHJMaXN0IHJlZmVy ZW5jZQorLSBSZXNvbHZlczogIzI0NDQ3ODcgU0VHViB3aXRoIHdyb25nIGFuY2hvciBpbiBzdXJy b3VuZGluZy10ZXh0IGluIFdheWxhbmQKKy0gVXBkYXRlczogIzI0ODA0MDggSUJ1cyBjYWxsYmFj a3MgaW4gV2F5bGFuZCB0byBjbGFyaWZ5IFNFR1ZzCisKICogVGh1IEFwciAzMCAyMDI2IFRha2Fv IEZ1aml3YXJhIDx0ZnVqaXdhckByZWRoYXQuY29tPiAtIDEuNS4zNC0xCiAtIEJ1bXAgdG8gMS41 LjM0CiAK