From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 23425 invoked from network); 28 Jul 2023 15:27:11 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 28 Jul 2023 15:27:11 -0000 Content-Type: multipart/mixed; boundary="===============4088237396213838985==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_xf86-video-ati=3A_update_to_22=2E0=2E0=2E?= To: ml@inbox.vuxu.org From: Bnyro Reply-to: ml@inbox.vuxu.org Message-ID: Date: Fri, 28 Jul 2023 17:27:10 +0200 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============4088237396213838985== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IEJueXJvIGFnYWluc3QgbWFzdGVyIG9uIHRo ZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9Cbnlyby92b2lk LXBhY2thZ2VzIHhmODYtdmlkZW8tYXRpCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3Zv aWQtcGFja2FnZXMvcHVsbC80NTI5NwoKeGY4Ni12aWRlby1hdGk6IHVwZGF0ZSB0byAyMi4wLjAu CjwhLS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9ucyB3aGlj aCBhcmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJ IHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmJyaWVmbHkqKg0KDQojIyMjIExvY2Fs IGJ1aWxkIHRlc3RpbmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIG15IG5hdGl2ZSBh cmNoaXRlY3R1cmUsIHg4Nl82NC1nbGliYw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3Ig dGhlc2UgYXJjaGl0ZWN0dXJlczoNCiAgLSBhYXJjaDY0DQogIC0gYXJtdjdsLW11c2wgKGNyb3Nz KQ0KCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvNDUyOTcucGF0Y2ggaXMgYXR0YWNoZWQ= --===============4088237396213838985== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-xf86-video-ati-45297.patch" RnJvbSA2MGY1YzkwZGRiMDUzMTM0ZDk3OWUxOTUzZGM0ZTA2MjcxNjhkNWMzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBCbnlybyA8Ym55cm9AdHV0YW5vdGEuY29tPgpEYXRlOiBGcmks IDI4IEp1bCAyMDIzIDE3OjIwOjQzICswMjAwClN1YmplY3Q6IFtQQVRDSF0geGY4Ni12aWRlby1h dGk6IHVwZGF0ZSB0byAyMi4wLjAuCgotLS0KIC4uLjg0ZWQ0OTU2NDkwN2ExNDhhZTk5YjAzMjAw ZTBiZTM1MDA2MC5wYXRjaCB8ICA2MyAtLS0KIC4uLjAwNmU0MTI5ZTgwMTViODIyZjllMWQyZjFl NjEzZTI1MmNkYS5wYXRjaCB8ICAyNyAtLQogLi4uYWIwM2NhMjBlNjgzYmU0YzQwY2NjODc5ZTIw MWI1MzhmN2U1LnBhdGNoIHwgIDM0IC0tCiAuLi5lNDU2MWVmODJiYjc4YzlhMTdiOGNkOGJmMTM5 YjljZmQ2ODAucGF0Y2ggfCAzNjggLS0tLS0tLS0tLS0tLS0tLS0tCiAuLi4wMzVmNGZmY2ZmMmE5 Mjk2ZDFlOTA3YTUxOTNmOGU4ODQ1YTMucGF0Y2ggfCAgMzMgLS0KIC4uLi9wYXRjaGVzL251bGwt ZGVyZWYtZXhhLnBhdGNoICAgICAgICAgICAgICB8ICA3NyAtLS0tCiBzcmNwa2dzL3hmODYtdmlk ZW8tYXRpL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAgIDggKy0KIDcgZmlsZXMgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCA2MDYgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy94Zjg2LXZpZGVvLWF0aS9wYXRjaGVzLzNjN2M4NGVkNDk1NjQ5MDdhMTQ4YWU5OWIwMzIw MGUwYmUzNTAwNjAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hmODYtdmlkZW8t YXRpL3BhdGNoZXMvNWViYTAwNmU0MTI5ZTgwMTViODIyZjllMWQyZjFlNjEzZTI1MmNkYS5wYXRj aAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MveGY4Ni12aWRlby1hdGkvcGF0Y2hlcy83N2Q5 YWIwM2NhMjBlNjgzYmU0YzQwY2NjODc5ZTIwMWI1MzhmN2U1LnBhdGNoCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy94Zjg2LXZpZGVvLWF0aS9wYXRjaGVzLzhkYTNlNDU2MWVmODJiYjc4Yzlh MTdiOGNkOGJmMTM5YjljZmQ2ODAucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hm ODYtdmlkZW8tYXRpL3BhdGNoZXMvZjIyMzAzNWY0ZmZjZmYyYTkyOTZkMWU5MDdhNTE5M2Y4ZTg4 NDVhMy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MveGY4Ni12aWRlby1hdGkvcGF0 Y2hlcy9udWxsLWRlcmVmLWV4YS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGY4Ni12aWRl by1hdGkvcGF0Y2hlcy8zYzdjODRlZDQ5NTY0OTA3YTE0OGFlOTliMDMyMDBlMGJlMzUwMDYwLnBh dGNoIGIvc3JjcGtncy94Zjg2LXZpZGVvLWF0aS9wYXRjaGVzLzNjN2M4NGVkNDk1NjQ5MDdhMTQ4 YWU5OWIwMzIwMGUwYmUzNTAwNjAucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDdkZDFkZGVhNWIxMzEuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy94Zjg2LXZpZGVvLWF0 aS9wYXRjaGVzLzNjN2M4NGVkNDk1NjQ5MDdhMTQ4YWU5OWIwMzIwMGUwYmUzNTAwNjAucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSw2MyArMCwwIEBACi1Gcm9tIDNjN2M4NGVkNDk1NjQ5MDdhMTQ4 YWU5OWIwMzIwMGUwYmUzNTAwNjAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiA9P1VU Ri04P3E/TWljaGVsPTIwRD1DMz1BNG56ZXI/PSA8bWRhZW56ZXJAcmVkaGF0LmNvbT4KLURhdGU6 IEZyaSwgMjYgTWFyIDIwMjEgMTc6NDI6MTAgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gR3VhcmQg bG9jYWwgdmFyaWFibGUgcHJpdiBvbmx5IHVzZWQgd2l0aCBnbGFtb3IKLU1JTUUtVmVyc2lvbjog MS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKLUNvbnRlbnQtVHJh bnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotRml4ZXMgY29tcGlsZSBlcnJvcnMgd2l0aCBnbGFtb3Ig ZGlzYWJsZWQ6Ci0KLS4uLy4uL3NyYy9yYWRlb25fcHJlc2VudC5jOiBJbiBmdW5jdGlvbiDigJhy YWRlb25fcHJlc2VudF9jaGVja19mbGlw4oCZOgotLi4vLi4vc3JjL3JhZGVvbl9wcmVzZW50LmM6 MjgxOjIxOiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0IHJh ZGVvbl9waXhtYXDigJkKLSAgMjgxIHwgICAgIGlmIChwcml2ICYmIHByaXYtPmZiX2ZhaWxlZCkK LSAgICAgIHwgICAgICAgICAgICAgICAgICAgICBefgotLi4vLi4vc3JjL3JhZGVvbl9wcmVzZW50 LmM6Mjg4OjE5OiBlcnJvcjogaW52YWxpZCB1c2Ugb2YgdW5kZWZpbmVkIHR5cGUg4oCYc3RydWN0 IHJhZGVvbl9waXhtYXDigJkKLSAgMjg4IHwgIGlmIChwcml2ICYmICFwcml2LT5mYl9mYWlsZWQp IHsKLSAgICAgIHwgICAgICAgICAgICAgICAgICAgXn4KLS4uLy4uL3NyYy9yYWRlb25fcHJlc2Vu dC5jOjI5MjoxMDogZXJyb3I6IGludmFsaWQgdXNlIG9mIHVuZGVmaW5lZCB0eXBlIOKAmHN0cnVj dCByYWRlb25fcGl4bWFw4oCZCi0gIDI5MiB8ICAgICAgcHJpdi0+ZmJfZmFpbGVkID0gVFJVRTsK LSAgICAgIHwgICAgICAgICAgXn4KLS0tLQotIHNyYy9yYWRlb25fcHJlc2VudC5jIHwgNiArKysr KysKLSAxIGZpbGUgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1naXQgYS9zcmMv cmFkZW9uX3ByZXNlbnQuYyBiL3NyYy9yYWRlb25fcHJlc2VudC5jCi1pbmRleCA0OTQ2NTVjOS4u ZDAxMGFhMTkgMTAwNjQ0Ci0tLS0gYS9zcmMvcmFkZW9uX3ByZXNlbnQuYwotKysrIGIvc3JjL3Jh ZGVvbl9wcmVzZW50LmMKLUBAIC0yNTQsNyArMjU0LDkgQEAgcmFkZW9uX3ByZXNlbnRfY2hlY2tf ZmxpcChSUkNydGNQdHIgY3J0YywgV2luZG93UHRyIHdpbmRvdywgUGl4bWFwUHRyIHBpeG1hcCwK LSAgICAgeGY4NkNydGNQdHIgeGY4Nl9jcnRjID0gY3J0Yy0+ZGV2UHJpdmF0ZTsKLSAgICAgU2Ny ZWVuUHRyIHNjcmVlbiA9IHdpbmRvdy0+ZHJhd2FibGUucFNjcmVlbjsKLSAgICAgU2NybkluZm9Q dHIgc2NybiA9IHhmODZfY3J0Yy0+c2NybjsKLSsjaWZkZWYgVVNFX0dMQU1PUgotICAgICBzdHJ1 Y3QgcmFkZW9uX3BpeG1hcCAqcHJpdiA9IHJhZGVvbl9nZXRfcGl4bWFwX3ByaXZhdGUocGl4bWFw KTsKLSsjZW5kaWYKLSAgICAgeGY4NkNydGNDb25maWdQdHIgY29uZmlnID0gWEY4Nl9DUlRDX0NP TkZJR19QVFIoc2Nybik7Ci0gICAgIFJBREVPTkluZm9QdHIgaW5mbyA9IFJBREVPTlBUUihzY3Ju KTsKLSAgICAgUGl4bWFwUHRyIHNjcmVlbl9waXhtYXAgPSBzY3JlZW4tPkdldFNjcmVlblBpeG1h cChzY3JlZW4pOwotQEAgLTI3OCwxMCArMjgwLDEzIEBAIHJhZGVvbl9wcmVzZW50X2NoZWNrX2Zs aXAoUlJDcnRjUHRyIGNydGMsIFdpbmRvd1B0ciB3aW5kb3csIFBpeG1hcFB0ciBwaXhtYXAsCi0g CXJldHVybiBGQUxTRTsKLSAjZW5kaWYKLSAKLSsjaWZkZWYgVVNFX0dMQU1PUgotICAgICBpZiAo cHJpdiAmJiBwcml2LT5mYl9mYWlsZWQpCi0gCXJldHVybiBGQUxTRTsKLSsjZW5kaWYKLSAKLSAg ICAgaWYgKCFyYWRlb25fcGl4bWFwX2dldF9mYihwaXhtYXApKSB7Ci0rI2lmZGVmIFVTRV9HTEFN T1IKLSAJaWYgKCFwcml2KQotIAkgICAgcHJpdiA9IHJhZGVvbl9nZXRfcGl4bWFwX3ByaXZhdGUo cGl4bWFwKTsKLSAKLUBAIC0yOTEsNiArMjk2LDcgQEAgcmFkZW9uX3ByZXNlbnRfY2hlY2tfZmxp cChSUkNydGNQdHIgY3J0YywgV2luZG93UHRyIHdpbmRvdywgUGl4bWFwUHRyIHBpeG1hcCwKLSAJ CSAgICAgICAibm9ybWFsIGlmIHVzaW5nIFBSSU1FIHJlbmRlciBvZmZsb2FkaW5nKVxuIik7Ci0g CSAgICBwcml2LT5mYl9mYWlsZWQgPSBUUlVFOwotIAl9Ci0rI2VuZGlmCi0gCi0gCXJldHVybiBG QUxTRTsKLSAgICAgfQotLS0gCi1HaXRMYWIKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy94Zjg2LXZp ZGVvLWF0aS9wYXRjaGVzLzVlYmEwMDZlNDEyOWU4MDE1YjgyMmY5ZTFkMmYxZTYxM2UyNTJjZGEu cGF0Y2ggYi9zcmNwa2dzL3hmODYtdmlkZW8tYXRpL3BhdGNoZXMvNWViYTAwNmU0MTI5ZTgwMTVi ODIyZjllMWQyZjFlNjEzZTI1MmNkYS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggN2QwZjMyZTExZTdkMy4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3hmODYtdmlkZW8t YXRpL3BhdGNoZXMvNWViYTAwNmU0MTI5ZTgwMTViODIyZjllMWQyZjFlNjEzZTI1MmNkYS5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDI3ICswLDAgQEAKLUZyb20gNWViYTAwNmU0MTI5ZTgwMTVi ODIyZjllMWQyZjFlNjEzZTI1MmNkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/ VVRGLTg/cT9NaWNoZWw9MjBEPUMzPUE0bnplcj89IDxtZGFlbnplckByZWRoYXQuY29tPgotRGF0 ZTogVHVlLCAyIEZlYiAyMDIxIDEyOjQ1OjU0ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIE9ubHkg aW5jbHVkZSBkcmkuaCB3aXRoIG9sZGVyIHZlcnNpb25zIG9mIHhzZXJ2ZXIKLQotTm90IG5lZWRl ZCBhbnltb3JlIHdpdGggY3VycmVudCB2ZXJzaW9ucy4KLS0tLQotIHNyYy9kcm1tb2RlX2Rpc3Bs YXkuYyB8IDIgKysKLSAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1n aXQgYS9zcmMvZHJtbW9kZV9kaXNwbGF5LmMgYi9zcmMvZHJtbW9kZV9kaXNwbGF5LmMKLWluZGV4 IDMwOTlhNzI5Li5hNThmMjRkZCAxMDA2NDQKLS0tLSBhL3NyYy9kcm1tb2RlX2Rpc3BsYXkuYwot KysrIGIvc3JjL2RybW1vZGVfZGlzcGxheS5jCi1AQCAtNDUsNyArNDUsOSBAQAotICNpbmNsdWRl ICJyYWRlb25fZ2xhbW9yLmgiCi0gI2luY2x1ZGUgInJhZGVvbl9yZWcuaCIKLSAKLSsjaWYgWE9S R19WRVJTSU9OX0NVUlJFTlQgPCBYT1JHX1ZFUlNJT05fTlVNRVJJQygxLDE5LDk5LDEsMCkKLSAj aW5jbHVkZSA8ZHJpLmg+Ci0rI2VuZGlmCi0gCi0gI2luY2x1ZGUgImRybW1vZGVfZGlzcGxheS5o IgotIAotLS0gCi1HaXRMYWIKLQpkaWZmIC0tZ2l0IGEvc3JjcGtncy94Zjg2LXZpZGVvLWF0aS9w YXRjaGVzLzc3ZDlhYjAzY2EyMGU2ODNiZTRjNDBjY2M4NzllMjAxYjUzOGY3ZTUucGF0Y2ggYi9z cmNwa2dzL3hmODYtdmlkZW8tYXRpL3BhdGNoZXMvNzdkOWFiMDNjYTIwZTY4M2JlNGM0MGNjYzg3 OWUyMDFiNTM4ZjdlNS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZTVhMWUz NjE5MzlkYi4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3hmODYtdmlkZW8tYXRpL3BhdGNo ZXMvNzdkOWFiMDNjYTIwZTY4M2JlNGM0MGNjYzg3OWUyMDFiNTM4ZjdlNS5wYXRjaAorKysgL2Rl di9udWxsCkBAIC0xLDM0ICswLDAgQEAKLUZyb20gNzdkOWFiMDNjYTIwZTY4M2JlNGM0MGNjYzg3 OWUyMDFiNTM4ZjdlNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9N aWNoZWw9MjBEPUMzPUE0bnplcj89IDxtZGFlbnplckByZWRoYXQuY29tPgotRGF0ZTogRnJpLCAy NiBNYXIgMjAyMSAxNzozNzo1MyArMDEwMAotU3ViamVjdDogW1BBVENIXSBHdWFyZCBsb2NhbCB2 YXJpYWJsZSBpbmZvIG9ubHkgdXNlZCB3aXRoIGdsYW1vcgotCi1GaXhlcyBjb21waWxlciB3YXJu aW5nIHdpdGggZ2xhbW9yIGRpc2FibGVkOgotCi1yYWRlb25fZHJpMi5jOiBJbiBmdW5jdGlvbiAn cmFkZW9uX2RyaTJfZXhjaGFuZ2VfYnVmZmVycyc6Ci1yYWRlb25fZHJpMi5jOjczMjoxOTogZXJy b3I6IHVudXNlZCB2YXJpYWJsZSAnaW5mbycgWy1XZXJyb3I9dW51c2VkLXZhcmlhYmxlXQotICAg ICBSQURFT05JbmZvUHRyIGluZm8gPSBSQURFT05QVFIoeGY4NlNjcmVlblRvU2NybihzY3JlZW4p KTsKLSAgICAgICAgICAgICAgICAgICBefn5+Ci0tLS0KLSBzcmMvcmFkZW9uX2RyaTIuYyB8IDUg KysrLS0KLSAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQot Ci1kaWZmIC0tZ2l0IGEvc3JjL3JhZGVvbl9kcmkyLmMgYi9zcmMvcmFkZW9uX2RyaTIuYwotaW5k ZXggNjZhMjIzZDguLjE3OTgzNzc5IDEwMDY0NAotLS0tIGEvc3JjL3JhZGVvbl9kcmkyLmMKLSsr KyBiL3NyYy9yYWRlb25fZHJpMi5jCi1AQCAtNzI4LDggKzcyOCw5IEBAIHJhZGVvbl9kcmkyX2V4 Y2hhbmdlX2J1ZmZlcnMoRHJhd2FibGVQdHIgZHJhdywgRFJJMkJ1ZmZlclB0ciBmcm9udCwgRFJJ MkJ1ZmZlclB0Ci0gewotICAgICBzdHJ1Y3QgZHJpMl9idWZmZXJfcHJpdiAqZnJvbnRfcHJpdiA9 IGZyb250LT5kcml2ZXJQcml2YXRlOwotICAgICBzdHJ1Y3QgZHJpMl9idWZmZXJfcHJpdiAqYmFj a19wcml2ID0gYmFjay0+ZHJpdmVyUHJpdmF0ZTsKLS0gICAgU2NyZWVuUHRyIHNjcmVlbiA9IGRy YXctPnBTY3JlZW47Ci0tICAgIFJBREVPTkluZm9QdHIgaW5mbyA9IFJBREVPTlBUUih4Zjg2U2Ny ZWVuVG9TY3JuKHNjcmVlbikpOwotKyNpZmRlZiBVU0VfR0xBTU9SCi0rICAgIFJBREVPTkluZm9Q dHIgaW5mbyA9IFJBREVPTlBUUih4Zjg2U2NyZWVuVG9TY3JuKGRyYXctPnBTY3JlZW4pKTsKLSsj ZW5kaWYKLSAgICAgUmVnaW9uUmVjIHJlZ2lvbjsKLSAgICAgaW50IHRtcDsKLSAKLS0tIAotR2l0 TGFiCi0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGY4Ni12aWRlby1hdGkvcGF0Y2hlcy84ZGEzZTQ1 NjFlZjgyYmI3OGM5YTE3YjhjZDhiZjEzOWI5Y2ZkNjgwLnBhdGNoIGIvc3JjcGtncy94Zjg2LXZp ZGVvLWF0aS9wYXRjaGVzLzhkYTNlNDU2MWVmODJiYjc4YzlhMTdiOGNkOGJmMTM5YjljZmQ2ODAu cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY4YmYwNDIwYzM5MjcuLjAwMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy94Zjg2LXZpZGVvLWF0aS9wYXRjaGVzLzhkYTNlNDU2MWVm ODJiYjc4YzlhMTdiOGNkOGJmMTM5YjljZmQ2ODAucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwz NjggKzAsMCBAQAotRnJvbSA4ZGEzZTQ1NjFlZjgyYmI3OGM5YTE3YjhjZDhiZjEzOWI5Y2ZkNjgw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogRGF2ZSBBaXJsaWUgPGFpcmxpZWRAcmVk aGF0LmNvbT4KLURhdGU6IE1vbiwgMTMgSnVsIDIwMjAgMDk6MTE6MjggKzEwMDAKLVN1YmplY3Q6 IFtQQVRDSF0gYXRpOiBjbGVhbnVwIHRlcm1pbm9sb2d5IHRvIHVzZSBwcmltYXJ5L3NlY29uZGFy eQotCi1UaGUgWCBzZXJ2ZXIgY2hhbmdlZCBzb21lIEFQSS9BQklzIGhlcmUuCi0KLUJhc2VkIG9u IGFtZGdwdSBwYXRjaCBieSBNaWNoZWwKLS0tLQotIG1hbi9yYWRlb24ubWFuICAgICAgICB8ICAy ICstCi0gc3JjL2NvbXBhdC1hcGkuaCAgICAgIHwgIDYgKysrKwotIHNyYy9kcm1tb2RlX2Rpc3Bs YXkuYyB8ICA0ICstLQotIHNyYy9ldmVyZ3JlZW5fc3RhdGUuaCB8ICAyICstCi0gc3JjL3I2MDBf c3RhdGUuaCAgICAgIHwgIDIgKy0KLSBzcmMvcmFkZW9uLmggICAgICAgICAgfCAxMCArKystLS0K LSBzcmMvcmFkZW9uX2V4YS5jICAgICAgfCAgMiArLQotIHNyYy9yYWRlb25fZ2xhbW9yLmMgICB8 ICAyICstCi0gc3JjL3JhZGVvbl9rbXMuYyAgICAgIHwgNzQgKysrKysrKysrKysrKysrKysrKysr LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQotIDkgZmlsZXMgY2hhbmdlZCwgNTUgaW5zZXJ0aW9ucygr KSwgNDkgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9tYW4vcmFkZW9uLm1hbiBiL21hbi9y YWRlb24ubWFuCi1pbmRleCBkY2ViZjUzNy4uMjQ3ZGNkYjcgMTAwNjQ0Ci0tLS0gYS9tYW4vcmFk ZW9uLm1hbgotKysrIGIvbWFuL3JhZGVvbi5tYW4KLUBAIC0yOTAsNyArMjkwLDcgQEAgb24uIElm IHRoaXMgb3B0aW9uIGlzIHNldCwgdGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlIHByb3BlcnR5IGlz ICdvbicgb3IgJ29mZicKLSBhY2NvcmRpbmdseS4gSWYgdGhpcyBvcHRpb24gaXNuJ3Qgc2V0LCB0 aGUgZGVmYXVsdCB2YWx1ZSBvZiB0aGUgcHJvcGVydHkgaXMKLSAuQiBhdXRvLAotIHdoaWNoIG1l YW5zIHRoYXQgVGVhckZyZWUgaXMgb24gZm9yIHJvdGF0ZWQgb3V0cHV0cywgb3V0cHV0cyB3aXRo IFJhbmRSCi0tdHJhbnNmb3JtcyBhcHBsaWVkIGFuZCBmb3IgUmFuZFIgMS40IHNsYXZlIG91dHB1 dHMsIG90aGVyd2lzZSBvZmYuCi0rdHJhbnNmb3JtcyBhcHBsaWVkIGFuZCBmb3IgUmFuZFIgMS40 IHNlY29uZGFyeSBvdXRwdXRzLCBvdGhlcndpc2Ugb2ZmLgotIC5UUAotIC5CSSAiT3B0aW9uIFwq cUFjY2VsTWV0aG9kXCpxIFwqcSIgInN0cmluZyIgXCpxCi0gQ2hvb3NlcyBiZXR3ZWVuIGF2YWls YWJsZSBhY2NlbGVyYXRpb24gYXJjaGl0ZWN0dXJlcy4gIFZhbGlkIHZhbHVlcyBhcmUKLWRpZmYg LS1naXQgYS9zcmMvY29tcGF0LWFwaS5oIGIvc3JjL2NvbXBhdC1hcGkuaAotaW5kZXggZjRlNzUy NGYuLmRlZjZkM2U0IDEwMDY0NAotLS0tIGEvc3JjL2NvbXBhdC1hcGkuaAotKysrIGIvc3JjL2Nv bXBhdC1hcGkuaAotQEAgLTM0LDQgKzM0LDEwIEBACi0gI2RlZmluZSBCTE9DS0hBTkRMRVJfQVJH UyBwU2NyZWVuLCBwVGltZW91dCwgcFJlYWRtYXNrCi0gI2VuZGlmCi0gCi0rI2lmIEFCSV9WSURF T0RSVl9WRVJTSU9OIDwgU0VUX0FCSV9WRVJTSU9OKDI1LCAyKQotKyNkZWZpbmUgY3VycmVudF9w cmltYXJ5IGN1cnJlbnRfbWFzdGVyCi0rI2RlZmluZSBwcmltYXJ5X3BpeG1hcCBtYXN0ZXJfcGl4 bWFwCi0rI2RlZmluZSBzZWNvbmRhcnlfZHN0IHNsYXZlX2RzdAotKyNlbmRpZgotKwotICNlbmRp ZgotZGlmZiAtLWdpdCBhL3NyYy9kcm1tb2RlX2Rpc3BsYXkuYyBiL3NyYy9kcm1tb2RlX2Rpc3Bs YXkuYwotaW5kZXggNzJmOTZhMGMuLjMwOTlhNzI5IDEwMDY0NAotLS0tIGEvc3JjL2RybW1vZGVf ZGlzcGxheS5jCi0rKysgYi9zcmMvZHJtbW9kZV9kaXNwbGF5LmMKLUBAIC03MjAsNyArNzIwLDcg QEAgZHJtbW9kZV9jcnRjX3ByaW1lX3NjYW5vdXRfdXBkYXRlKHhmODZDcnRjUHRyIGNydGMsIERp c3BsYXlNb2RlUHRyIG1vZGUsCi0gCQl4b3JnX2xpc3RfZm9yX2VhY2hfZW50cnkoZGlydHksICZz Y3JlZW4tPnBpeG1hcF9kaXJ0eV9saXN0LAotIAkJCQkJIGVudCkgewotIAkJCWlmIChyYWRlb25f ZGlydHlfc3JjX2VxdWFscyhkaXJ0eSwgZHJtbW9kZV9jcnRjLT5wcmltZV9zY2Fub3V0X3BpeG1h cCkpIHsKLS0JCQkJZGlydHktPnNsYXZlX2RzdCA9Ci0rCQkJCWRpcnR5LT5zZWNvbmRhcnlfZHN0 ID0KLSAJCQkJCWRybW1vZGVfY3J0Yy0+c2Nhbm91dFtzY2Fub3V0X2lkXS5waXhtYXA7Ci0gCQkJ CWJyZWFrOwotIAkJCX0KLUBAIC0xMzU2LDcgKzEzNTYsNyBAQCBkcm1tb2RlX3NldF9zY2Fub3V0 X3BpeG1hcCh4Zjg2Q3J0Y1B0ciBjcnRjLCBQaXhtYXBQdHIgcHBpeCkKLSAKLSAJeG9yZ19saXN0 X2Zvcl9lYWNoX2VudHJ5KGRpcnR5LCAmc2NyZWVuLT5waXhtYXBfZGlydHlfbGlzdCwgZW50KSB7 Ci0gCQlpZiAocmFkZW9uX2RpcnR5X3NyY19lcXVhbHMoZGlydHksIGRybW1vZGVfY3J0Yy0+cHJp bWVfc2Nhbm91dF9waXhtYXApKSB7Ci0tCQkJUGl4bWFwU3RvcERpcnR5VHJhY2tpbmcoZGlydHkt PnNyYywgZGlydHktPnNsYXZlX2RzdCk7Ci0rCQkJUGl4bWFwU3RvcERpcnR5VHJhY2tpbmcoZGly dHktPnNyYywgZGlydHktPnNlY29uZGFyeV9kc3QpOwotIAkJCWJyZWFrOwotIAkJfQotIAl9Ci1k aWZmIC0tZ2l0IGEvc3JjL2V2ZXJncmVlbl9zdGF0ZS5oIGIvc3JjL2V2ZXJncmVlbl9zdGF0ZS5o Ci1pbmRleCA3ZTU0ZTFjNy4uMzRiYTg3YjYgMTAwNjQ0Ci0tLS0gYS9zcmMvZXZlcmdyZWVuX3N0 YXRlLmgKLSsrKyBiL3NyYy9ldmVyZ3JlZW5fc3RhdGUuaAotQEAgLTM1MCw3ICszNTAsNyBAQCBl eHRlcm4gdm9pZCAqUkFERU9ORVhBQ3JlYXRlUGl4bWFwMihTY3JlZW5QdHIgcFNjcmVlbiwgaW50 IHdpZHRoLCBpbnQgaGVpZ2h0LAotIAkJCQkgICAgaW50ICpuZXdfcGl0Y2gpOwotIGV4dGVybiB2 b2lkIFJBREVPTkVYQURlc3Ryb3lQaXhtYXAoU2NyZWVuUHRyIHBTY3JlZW4sIHZvaWQgKmRyaXZl clByaXYpOwotIGV4dGVybiBCb29sIFJBREVPTkVYQVBpeG1hcElzT2Zmc2NyZWVuKFBpeG1hcFB0 ciBwUGl4KTsKLS1leHRlcm4gQm9vbCBSQURFT05FWEFTaGFyZVBpeG1hcEJhY2tpbmcoUGl4bWFw UHRyIHBwaXgsIFNjcmVlblB0ciBzbGF2ZSwgdm9pZCAqKmhhbmRsZV9wKTsKLStleHRlcm4gQm9v bCBSQURFT05FWEFTaGFyZVBpeG1hcEJhY2tpbmcoUGl4bWFwUHRyIHBwaXgsIFNjcmVlblB0ciBz ZWNvbmRhcnksIHZvaWQgKipoYW5kbGVfcCk7Ci0gZXh0ZXJuIEJvb2wgUkFERU9ORVhBU2V0U2hh cmVkUGl4bWFwQmFja2luZyhQaXhtYXBQdHIgcHBpeCwgdm9pZCAqaGFuZGxlKTsKLSAKLSAjZW5k aWYKLWRpZmYgLS1naXQgYS9zcmMvcjYwMF9zdGF0ZS5oIGIvc3JjL3I2MDBfc3RhdGUuaAotaW5k ZXggMzQzNDU5OTYuLjU2N2MzY2EyIDEwMDY0NAotLS0tIGEvc3JjL3I2MDBfc3RhdGUuaAotKysr IGIvc3JjL3I2MDBfc3RhdGUuaAotQEAgLTMyMSw2ICszMjEsNiBAQCBleHRlcm4gdm9pZCAqUkFE RU9ORVhBQ3JlYXRlUGl4bWFwMihTY3JlZW5QdHIgcFNjcmVlbiwgaW50IHdpZHRoLCBpbnQgaGVp Z2h0LAotIAkJCQkgICAgaW50ICpuZXdfcGl0Y2gpOwotIGV4dGVybiB2b2lkIFJBREVPTkVYQURl c3Ryb3lQaXhtYXAoU2NyZWVuUHRyIHBTY3JlZW4sIHZvaWQgKmRyaXZlclByaXYpOwotIGV4dGVy biBCb29sIFJBREVPTkVYQVBpeG1hcElzT2Zmc2NyZWVuKFBpeG1hcFB0ciBwUGl4KTsKLS1leHRl cm4gQm9vbCBSQURFT05FWEFTaGFyZVBpeG1hcEJhY2tpbmcoUGl4bWFwUHRyIHBwaXgsIFNjcmVl blB0ciBzbGF2ZSwgdm9pZCAqKmhhbmRsZV9wKTsKLStleHRlcm4gQm9vbCBSQURFT05FWEFTaGFy ZVBpeG1hcEJhY2tpbmcoUGl4bWFwUHRyIHBwaXgsIFNjcmVlblB0ciBzZWNvbmRhcnksIHZvaWQg KipoYW5kbGVfcCk7Ci0gZXh0ZXJuIEJvb2wgUkFERU9ORVhBU2V0U2hhcmVkUGl4bWFwQmFja2lu ZyhQaXhtYXBQdHIgcHBpeCwgdm9pZCAqaGFuZGxlKTsKLSAjZW5kaWYKLWRpZmYgLS1naXQgYS9z cmMvcmFkZW9uLmggYi9zcmMvcmFkZW9uLmgKLWluZGV4IGU0YTJiYTY2Li42OGQ3NzU2YSAxMDA2 NDQKLS0tLSBhL3NyYy9yYWRlb24uaAotKysrIGIvc3JjL3JhZGVvbi5oCi1AQCAtMTgyLDE4ICsx ODIsMTggQEAgdHlwZWRlZiBlbnVtIHsKLSAKLSAKLSBzdGF0aWMgaW5saW5lIFNjcmVlblB0cgot LXJhZGVvbl9tYXN0ZXJfc2NyZWVuKFNjcmVlblB0ciBzY3JlZW4pCi0rcmFkZW9uX3ByaW1hcnlf c2NyZWVuKFNjcmVlblB0ciBzY3JlZW4pCi0gewotLSAgICBpZiAoc2NyZWVuLT5jdXJyZW50X21h c3RlcikKLS0JcmV0dXJuIHNjcmVlbi0+Y3VycmVudF9tYXN0ZXI7Ci0rICAgIGlmIChzY3JlZW4t PmN1cnJlbnRfcHJpbWFyeSkKLSsJcmV0dXJuIHNjcmVlbi0+Y3VycmVudF9wcmltYXJ5OwotIAot ICAgICByZXR1cm4gc2NyZWVuOwotIH0KLSAKLSBzdGF0aWMgaW5saW5lIFNjcmVlblB0cgotLXJh ZGVvbl9kaXJ0eV9tYXN0ZXIoUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHkpCi0rcmFkZW9uX2Rp cnR5X3ByaW1hcnkoUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHkpCi0gewotLSAgICByZXR1cm4g cmFkZW9uX21hc3Rlcl9zY3JlZW4oZGlydHktPnNsYXZlX2RzdC0+ZHJhd2FibGUucFNjcmVlbik7 Ci0rICAgIHJldHVybiByYWRlb25fcHJpbWFyeV9zY3JlZW4oZGlydHktPnNlY29uZGFyeV9kc3Qt PmRyYXdhYmxlLnBTY3JlZW4pOwotIH0KLSAKLSBzdGF0aWMgaW5saW5lIERyYXdhYmxlUHRyCi1k aWZmIC0tZ2l0IGEvc3JjL3JhZGVvbl9leGEuYyBiL3NyYy9yYWRlb25fZXhhLmMKLWluZGV4IDI2 ODE1NWVkLi4zMjBmZjk5MiAxMDA2NDQKLS0tLSBhL3NyYy9yYWRlb25fZXhhLmMKLSsrKyBiL3Ny Yy9yYWRlb25fZXhhLmMKLUBAIC0yODIsNyArMjgyLDcgQEAgdm9pZCBSQURFT05FWEFEZXN0cm95 UGl4bWFwKFNjcmVlblB0ciBwU2NyZWVuLCB2b2lkICpkcml2ZXJQcml2KQotICAgICBmcmVlKGRy aXZlclByaXYpOwotIH0KLSAKLS1Cb29sIFJBREVPTkVYQVNoYXJlUGl4bWFwQmFja2luZyhQaXht YXBQdHIgcHBpeCwgU2NyZWVuUHRyIHNsYXZlLCB2b2lkICoqZmRfaGFuZGxlKQotK0Jvb2wgUkFE RU9ORVhBU2hhcmVQaXhtYXBCYWNraW5nKFBpeG1hcFB0ciBwcGl4LCBTY3JlZW5QdHIgc2Vjb25u ZGFyeSwgdm9pZCAqKmZkX2hhbmRsZSkKLSB7Ci0gICAgIHN0cnVjdCByYWRlb25fZXhhX3BpeG1h cF9wcml2ICpkcml2ZXJfcHJpdiA9IGV4YUdldFBpeG1hcERyaXZlclByaXZhdGUocHBpeCk7Ci0g Ci1kaWZmIC0tZ2l0IGEvc3JjL3JhZGVvbl9nbGFtb3IuYyBiL3NyYy9yYWRlb25fZ2xhbW9yLmMK LWluZGV4IGYxMDk4MzgxLi5jY2Y5OTk0MSAxMDA2NDQKLS0tLSBhL3NyYy9yYWRlb25fZ2xhbW9y LmMKLSsrKyBiL3NyYy9yYWRlb25fZ2xhbW9yLmMKLUBAIC0zNjYsNyArMzY2LDcgQEAgcmFkZW9u X2dsYW1vcl9zZXRfcGl4bWFwX2JvKERyYXdhYmxlUHRyIGRyYXdhYmxlLCBQaXhtYXBQdHIgcGl4 bWFwKQotIAotIAotIHN0YXRpYyBCb29sCi0tcmFkZW9uX2dsYW1vcl9zaGFyZV9waXhtYXBfYmFj a2luZyhQaXhtYXBQdHIgcGl4bWFwLCBTY3JlZW5QdHIgc2xhdmUsCi0rcmFkZW9uX2dsYW1vcl9z aGFyZV9waXhtYXBfYmFja2luZyhQaXhtYXBQdHIgcGl4bWFwLCBTY3JlZW5QdHIgc2Vjb25kYXJ5 LAotIAkJCQkgICB2b2lkICoqaGFuZGxlX3ApCi0gewotIAlTY3JlZW5QdHIgc2NyZWVuID0gcGl4 bWFwLT5kcmF3YWJsZS5wU2NyZWVuOwotZGlmZiAtLWdpdCBhL3NyYy9yYWRlb25fa21zLmMgYi9z cmMvcmFkZW9uX2ttcy5jCi1pbmRleCBiM2RiN2M0MS4uNjI5NjJkNjEgMTAwNjQ0Ci0tLS0gYS9z cmMvcmFkZW9uX2ttcy5jCi0rKysgYi9zcmMvcmFkZW9uX2ttcy5jCi1AQCAtNTU5LDggKzU1OSw4 IEBAIGRpcnR5X3JlZ2lvbihQaXhtYXBEaXJ0eVVwZGF0ZVB0ciBkaXJ0eSkKLSAJaWYgKGRpcnR5 LT5yb3RhdGlvbiAhPSBSUl9Sb3RhdGVfMCkgewotIAkJZHN0cmVnaW9uID0gdHJhbnNmb3JtX3Jl Z2lvbihkYW1hZ2VyZWdpb24sCi0gCQkJCQkgICAgICZkaXJ0eS0+Zl9pbnZlcnNlLAotLQkJCQkJ ICAgICBkaXJ0eS0+c2xhdmVfZHN0LT5kcmF3YWJsZS53aWR0aCwKLS0JCQkJCSAgICAgZGlydHkt PnNsYXZlX2RzdC0+ZHJhd2FibGUuaGVpZ2h0KTsKLSsJCQkJCSAgICAgZGlydHktPnNlY29uZGFy eV9kc3QtPmRyYXdhYmxlLndpZHRoLAotKwkJCQkJICAgICBkaXJ0eS0+c2Vjb25kYXJ5X2RzdC0+ ZHJhd2FibGUuaGVpZ2h0KTsKLSAJfSBlbHNlCi0gI2VuZGlmCi0gCXsKLUBAIC01NjgsNyArNTY4 LDcgQEAgZGlydHlfcmVnaW9uKFBpeG1hcERpcnR5VXBkYXRlUHRyIGRpcnR5KQotIAotIAkgICAg ZHN0cmVnaW9uID0gUmVnaW9uRHVwbGljYXRlKGRhbWFnZXJlZ2lvbik7Ci0gCSAgICBSZWdpb25U cmFuc2xhdGUoZHN0cmVnaW9uLCAtZGlydHktPngsIC1kaXJ0eS0+eSk7Ci0tCSAgICBQaXhtYXBS ZWdpb25Jbml0KCZwaXhyZWdpb24sIGRpcnR5LT5zbGF2ZV9kc3QpOwotKwkgICAgUGl4bWFwUmVn aW9uSW5pdCgmcGl4cmVnaW9uLCBkaXJ0eS0+c2Vjb25kYXJ5X2RzdCk7Ci0gCSAgICBSZWdpb25J bnRlcnNlY3QoZHN0cmVnaW9uLCBkc3RyZWdpb24sICZwaXhyZWdpb24pOwotIAkgICAgUmVnaW9u VW5pbml0KCZwaXhyZWdpb24pOwotIAl9Ci1AQCAtNTg1LDggKzU4NSw4IEBAIHJlZGlzcGxheV9k aXJ0eShQaXhtYXBEaXJ0eVVwZGF0ZVB0ciBkaXJ0eSwgUmVnaW9uUHRyIHJlZ2lvbikKLSAJaWYg KFJlZ2lvbk5pbChyZWdpb24pKQotIAkJZ290byBvdXQ7Ci0gCi0tCWlmIChkaXJ0eS0+c2xhdmVf ZHN0LT5tYXN0ZXJfcGl4bWFwKQotLQkgICAgRGFtYWdlUmVnaW9uQXBwZW5kKCZkaXJ0eS0+c2xh dmVfZHN0LT5kcmF3YWJsZSwgcmVnaW9uKTsKLSsJaWYgKGRpcnR5LT5zZWNvbmRhcnlfZHN0LT5w cmltYXJ5X3BpeG1hcCkKLSsJICAgIERhbWFnZVJlZ2lvbkFwcGVuZCgmZGlydHktPnNlY29uZGFy eV9kc3QtPmRyYXdhYmxlLCByZWdpb24pOwotIAotICNpZmRlZiBIQVNfRElSVFlUUkFDS0lOR19S T1RBVElPTgotIAlQaXhtYXBTeW5jRGlydHlIZWxwZXIoZGlydHkpOwotQEAgLTU5NSw4ICs1OTUs OCBAQCByZWRpc3BsYXlfZGlydHkoUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHksIFJlZ2lvblB0 ciByZWdpb24pCi0gI2VuZGlmCi0gCi0gCXJhZGVvbl9jc19mbHVzaF9pbmRpcmVjdChzcmNfc2Ny bik7Ci0tCWlmIChkaXJ0eS0+c2xhdmVfZHN0LT5tYXN0ZXJfcGl4bWFwKQotLQkgICAgRGFtYWdl UmVnaW9uUHJvY2Vzc1BlbmRpbmcoJmRpcnR5LT5zbGF2ZV9kc3QtPmRyYXdhYmxlKTsKLSsJaWYg KGRpcnR5LT5zZWNvbmRhcnlfZHN0LT5wcmltYXJ5X3BpeG1hcCkKLSsJICAgIERhbWFnZVJlZ2lv blByb2Nlc3NQZW5kaW5nKCZkaXJ0eS0+c2Vjb25kYXJ5X2RzdC0+ZHJhd2FibGUpOwotIAotIG91 dDoKLSAJRGFtYWdlRW1wdHkoZGlydHktPmRhbWFnZSk7Ci1AQCAtNjEzLDEyICs2MTMsMTIgQEAg cmFkZW9uX3ByaW1lX3NjYW5vdXRfdXBkYXRlX2Fib3J0KHhmODZDcnRjUHRyIGNydGMsIHZvaWQg KmV2ZW50X2RhdGEpCi0gdm9pZAotIHJhZGVvbl9zeW5jX3NoYXJlZF9waXhtYXAoUGl4bWFwRGly dHlVcGRhdGVQdHIgZGlydHkpCi0gewotLSAgICBTY3JlZW5QdHIgbWFzdGVyX3NjcmVlbiA9IHJh ZGVvbl9kaXJ0eV9tYXN0ZXIoZGlydHkpOwotKyAgICBTY3JlZW5QdHIgcHJpbWFyeV9zY3JlZW4g PSByYWRlb25fZGlydHlfcHJpbWFyeShkaXJ0eSk7Ci0gICAgIFBpeG1hcERpcnR5VXBkYXRlUHRy IGVudDsKLSAgICAgUmVnaW9uUHRyIHJlZ2lvbjsKLSAKLS0gICAgeG9yZ19saXN0X2Zvcl9lYWNo X2VudHJ5KGVudCwgJm1hc3Rlcl9zY3JlZW4tPnBpeG1hcF9kaXJ0eV9saXN0LCBlbnQpIHsKLS0J aWYgKCFyYWRlb25fZGlydHlfc3JjX2VxdWFscyhkaXJ0eSwgZW50LT5zbGF2ZV9kc3QpKQotKyAg ICB4b3JnX2xpc3RfZm9yX2VhY2hfZW50cnkoZW50LCAmcHJpbWFyeV9zY3JlZW4tPnBpeG1hcF9k aXJ0eV9saXN0LCBlbnQpIHsKLSsJaWYgKCFyYWRlb25fZGlydHlfc3JjX2VxdWFscyhkaXJ0eSwg ZW50LT5zZWNvbmRhcnlfZHN0KSkKLSAJICAgIGNvbnRpbnVlOwotIAotIAlyZWdpb24gPSBkaXJ0 eV9yZWdpb24oZW50KTsKLUBAIC02MzEsNDUgKzYzMSw0NSBAQCByYWRlb25fc3luY19zaGFyZWRf cGl4bWFwKFBpeG1hcERpcnR5VXBkYXRlUHRyIGRpcnR5KQotICNpZiBIQVNfU1lOQ19TSEFSRURf UElYTUFQCi0gCi0gc3RhdGljIEJvb2wKLS1tYXN0ZXJfaGFzX3N5bmNfc2hhcmVkX3BpeG1hcChT Y3JuSW5mb1B0ciBzY3JuLCBQaXhtYXBEaXJ0eVVwZGF0ZVB0ciBkaXJ0eSkKLStwcmltYXJ5X2hh c19zeW5jX3NoYXJlZF9waXhtYXAoU2NybkluZm9QdHIgc2NybiwgUGl4bWFwRGlydHlVcGRhdGVQ dHIgZGlydHkpCi0gewotLSAgICBTY3JlZW5QdHIgbWFzdGVyX3NjcmVlbiA9IHJhZGVvbl9kaXJ0 eV9tYXN0ZXIoZGlydHkpOwotKyAgICBTY3JlZW5QdHIgcHJpbWFyeV9zY3JlZW4gPSByYWRlb25f ZGlydHlfcHJpbWFyeShkaXJ0eSk7Ci0gCi0tICAgIHJldHVybiAhIW1hc3Rlcl9zY3JlZW4tPlN5 bmNTaGFyZWRQaXhtYXA7Ci0rICAgIHJldHVybiAhIXByaW1hcnlfc2NyZWVuLT5TeW5jU2hhcmVk UGl4bWFwOwotIH0KLSAKLSBzdGF0aWMgQm9vbAotLXNsYXZlX2hhc19zeW5jX3NoYXJlZF9waXht YXAoU2NybkluZm9QdHIgc2NybiwgUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHkpCi0rc2Vjb25k YXJ5X2hhc19zeW5jX3NoYXJlZF9waXhtYXAoU2NybkluZm9QdHIgc2NybiwgUGl4bWFwRGlydHlV cGRhdGVQdHIgZGlydHkpCi0gewotLSAgICBTY3JlZW5QdHIgc2xhdmVfc2NyZWVuID0gZGlydHkt PnNsYXZlX2RzdC0+ZHJhd2FibGUucFNjcmVlbjsKLSsgICAgU2NyZWVuUHRyIHNlY29uZGFyeV9z Y3JlZW4gPSBkaXJ0eS0+c2Vjb25kYXJ5X2RzdC0+ZHJhd2FibGUucFNjcmVlbjsKLSAKLS0gICAg cmV0dXJuICEhc2xhdmVfc2NyZWVuLT5TeW5jU2hhcmVkUGl4bWFwOwotKyAgICByZXR1cm4gISFz ZWNvbmRhcnlfc2NyZWVuLT5TeW5jU2hhcmVkUGl4bWFwOwotIH0KLSAKLSBzdGF0aWMgdm9pZAot IGNhbGxfc3luY19zaGFyZWRfcGl4bWFwKFBpeG1hcERpcnR5VXBkYXRlUHRyIGRpcnR5KQotIHsK LS0gICAgU2NyZWVuUHRyIG1hc3Rlcl9zY3JlZW4gPSByYWRlb25fZGlydHlfbWFzdGVyKGRpcnR5 KTsKLSsgICAgU2NyZWVuUHRyIHByaW1hcnlfc2NyZWVuID0gcmFkZW9uX2RpcnR5X3ByaW1hcnko ZGlydHkpOwotIAotLSAgICBtYXN0ZXJfc2NyZWVuLT5TeW5jU2hhcmVkUGl4bWFwKGRpcnR5KTsK LSsgICAgcHJpbWFyeV9zY3JlZW4tPlN5bmNTaGFyZWRQaXhtYXAoZGlydHkpOwotIH0KLSAKLSAj ZWxzZSAvKiAhSEFTX1NZTkNfU0hBUkVEX1BJWE1BUCAqLwotIAotIHN0YXRpYyBCb29sCi0tbWFz dGVyX2hhc19zeW5jX3NoYXJlZF9waXhtYXAoU2NybkluZm9QdHIgc2NybiwgUGl4bWFwRGlydHlV cGRhdGVQdHIgZGlydHkpCi0rcHJpbWFyeV9oYXNfc3luY19zaGFyZWRfcGl4bWFwKFNjcm5JbmZv UHRyIHNjcm4sIFBpeG1hcERpcnR5VXBkYXRlUHRyIGRpcnR5KQotIHsKLS0gICAgU2NybkluZm9Q dHIgbWFzdGVyX3Njcm4gPSB4Zjg2U2NyZWVuVG9TY3JuKHJhZGVvbl9kaXJ0eV9tYXN0ZXIoZGly dHkpKTsKLSsgICAgU2NybkluZm9QdHIgcHJpbWFyeV9zY3JuID0geGY4NlNjcmVlblRvU2Nybihy YWRlb25fZGlydHlfcHJpbWFyeShkaXJ0eSkpOwotIAotLSAgICByZXR1cm4gbWFzdGVyX3Njcm4t PmRyaXZlck5hbWUgPT0gc2Nybi0+ZHJpdmVyTmFtZTsKLSsgICAgcmV0dXJuIHByaW1hcnlfc2Ny bi0+ZHJpdmVyTmFtZSA9PSBzY3JuLT5kcml2ZXJOYW1lOwotIH0KLSAKLSBzdGF0aWMgQm9vbAot LXNsYXZlX2hhc19zeW5jX3NoYXJlZF9waXhtYXAoU2NybkluZm9QdHIgc2NybiwgUGl4bWFwRGly dHlVcGRhdGVQdHIgZGlydHkpCi0rc2Vjb25kYXJ5X2hhc19zeW5jX3NoYXJlZF9waXhtYXAoU2Ny bkluZm9QdHIgc2NybiwgUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHkpCi0gewotLSAgICBTY3Ju SW5mb1B0ciBzbGF2ZV9zY3JuID0geGY4NlNjcmVlblRvU2NybihkaXJ0eS0+c2xhdmVfZHN0LT5k cmF3YWJsZS5wU2NyZWVuKTsKLSsgICAgU2NybkluZm9QdHIgc2Vjb25kYXJ5X3Njcm4gPSB4Zjg2 U2NyZWVuVG9TY3JuKGRpcnR5LT5zZWNvbmRhcnlfZHN0LT5kcmF3YWJsZS5wU2NyZWVuKTsKLSAK LS0gICAgcmV0dXJuIHNsYXZlX3Njcm4tPmRyaXZlck5hbWUgPT0gc2Nybi0+ZHJpdmVyTmFtZTsK LSsgICAgcmV0dXJuIHNlY29uZGFyeV9zY3JuLT5kcml2ZXJOYW1lID09IHNjcm4tPmRyaXZlck5h bWU7Ci0gfQotIAotIHN0YXRpYyB2b2lkCi1AQCAtNjg0LDEyICs2ODQsMTIgQEAgY2FsbF9zeW5j X3NoYXJlZF9waXhtYXAoUGl4bWFwRGlydHlVcGRhdGVQdHIgZGlydHkpCi0gc3RhdGljIHhmODZD cnRjUHRyCi0gcmFkZW9uX3ByaW1lX2RpcnR5X3RvX2NydGMoUGl4bWFwRGlydHlVcGRhdGVQdHIg ZGlydHkpCi0gewotLSAgICBTY3JlZW5QdHIgc2NyZWVuID0gZGlydHktPnNsYXZlX2RzdC0+ZHJh d2FibGUucFNjcmVlbjsKLSsgICAgU2NyZWVuUHRyIHNjcmVlbiA9IGRpcnR5LT5zZWNvbmRhcnlf ZHN0LT5kcmF3YWJsZS5wU2NyZWVuOwotICAgICBTY3JuSW5mb1B0ciBzY3JuID0geGY4NlNjcmVl blRvU2NybihzY3JlZW4pOwotICAgICB4Zjg2Q3J0Y0NvbmZpZ1B0ciB4Zjg2X2NvbmZpZyA9IFhG ODZfQ1JUQ19DT05GSUdfUFRSKHNjcm4pOwotICAgICBpbnQgYzsKLSAKLS0gICAgLyogRmluZCB0 aGUgQ1JUQyB3aGljaCBpcyBzY2FubmluZyBvdXQgZnJvbSB0aGlzIHNsYXZlIHBpeG1hcCAqLwot KyAgICAvKiBGaW5kIHRoZSBDUlRDIHdoaWNoIGlzIHNjYW5uaW5nIG91dCBmcm9tIHRoaXMgc2Vj b25kYXJ5IHBpeG1hcCAqLwotICAgICBmb3IgKGMgPSAwOyBjIDwgeGY4Nl9jb25maWctPm51bV9j cnRjOyBjKyspIHsKLSAJeGY4NkNydGNQdHIgeGY4Nl9jcnRjID0geGY4Nl9jb25maWctPmNydGNb Y107Ci0gCWRybW1vZGVfY3J0Y19wcml2YXRlX3B0ciBkcm1tb2RlX2NydGMgPSB4Zjg2X2NydGMt PmRyaXZlcl9wcml2YXRlOwotQEAgLTcxNCw3ICs3MTQsNyBAQCByYWRlb25fcHJpbWVfc2Nhbm91 dF9kb191cGRhdGUoeGY4NkNydGNQdHIgY3J0YywgdW5zaWduZWQgc2Nhbm91dF9pZCkKLSAJaWYg KHJhZGVvbl9kaXJ0eV9zcmNfZXF1YWxzKGRpcnR5LCBkcm1tb2RlX2NydGMtPnByaW1lX3NjYW5v dXRfcGl4bWFwKSkgewotIAkgICAgUmVnaW9uUHRyIHJlZ2lvbjsKLSAKLS0JICAgIGlmIChtYXN0 ZXJfaGFzX3N5bmNfc2hhcmVkX3BpeG1hcChzY3JuLCBkaXJ0eSkpCi0rCSAgICBpZiAocHJpbWFy eV9oYXNfc3luY19zaGFyZWRfcGl4bWFwKHNjcm4sIGRpcnR5KSkKLSAJCWNhbGxfc3luY19zaGFy ZWRfcGl4bWFwKGRpcnR5KTsKLSAKLSAJICAgIHJlZ2lvbiA9IGRpcnR5X3JlZ2lvbihkaXJ0eSk7 Ci1AQCAtNzI3LDcgKzcyNyw3IEBAIHJhZGVvbl9wcmltZV9zY2Fub3V0X2RvX3VwZGF0ZSh4Zjg2 Q3J0Y1B0ciBjcnRjLCB1bnNpZ25lZCBzY2Fub3V0X2lkKQotIAkJcmFkZW9uX2NzX2ZsdXNoX2lu ZGlyZWN0KHNjcm4pOwotIAkJUmVnaW9uQ29weSgmZHJtbW9kZV9jcnRjLT5zY2Fub3V0X2xhc3Rf cmVnaW9uLCByZWdpb24pOwotIAkJUmVnaW9uVHJhbnNsYXRlKHJlZ2lvbiwgLWNydGMtPngsIC1j cnRjLT55KTsKLS0JCWRpcnR5LT5zbGF2ZV9kc3QgPSBkcm1tb2RlX2NydGMtPnNjYW5vdXRbc2Nh bm91dF9pZF0ucGl4bWFwOwotKwkJZGlydHktPnNlY29uZGFyeV9kc3QgPSBkcm1tb2RlX2NydGMt PnNjYW5vdXRbc2Nhbm91dF9pZF0ucGl4bWFwOwotIAkgICAgfQotIAotIAkgICAgcmVkaXNwbGF5 X2RpcnR5KGRpcnR5LCByZWdpb24pOwotQEAgLTc1NCw3ICs3NTQsNyBAQCByYWRlb25fcHJpbWVf c2Nhbm91dF91cGRhdGVfaGFuZGxlcih4Zjg2Q3J0Y1B0ciBjcnRjLCB1aW50MzJfdCBmcmFtZSwg dWludDY0X3QgdQotIHN0YXRpYyB2b2lkCi0gcmFkZW9uX3ByaW1lX3NjYW5vdXRfdXBkYXRlKFBp eG1hcERpcnR5VXBkYXRlUHRyIGRpcnR5KQotIHsKLS0gICAgU2NyZWVuUHRyIHNjcmVlbiA9IGRp cnR5LT5zbGF2ZV9kc3QtPmRyYXdhYmxlLnBTY3JlZW47Ci0rICAgIFNjcmVlblB0ciBzY3JlZW4g PSBkaXJ0eS0+c2Vjb25kYXJ5X2RzdC0+ZHJhd2FibGUucFNjcmVlbjsKLSAgICAgU2NybkluZm9Q dHIgc2NybiA9IHhmODZTY3JlZW5Ub1Njcm4oc2NyZWVuKTsKLSAgICAgUkFERU9ORW50UHRyIHBS QURFT05FbnQgPSBSQURFT05FbnRQcml2KHNjcm4pOwotICAgICB4Zjg2Q3J0Y1B0ciB4Zjg2X2Ny dGMgPSByYWRlb25fcHJpbWVfZGlydHlfdG9fY3J0YyhkaXJ0eSk7Ci1AQCAtODE4LDcgKzgxOCw3 IEBAIHJhZGVvbl9wcmltZV9zY2Fub3V0X3VwZGF0ZShQaXhtYXBEaXJ0eVVwZGF0ZVB0ciBkaXJ0 eSkKLSBzdGF0aWMgdm9pZAotIHJhZGVvbl9wcmltZV9zY2Fub3V0X2ZsaXAoUGl4bWFwRGlydHlV cGRhdGVQdHIgZW50KQotIHsKLS0gICAgU2NyZWVuUHRyIHNjcmVlbiA9IGVudC0+c2xhdmVfZHN0 LT5kcmF3YWJsZS5wU2NyZWVuOwotKyAgICBTY3JlZW5QdHIgc2NyZWVuID0gZW50LT5zZWNvbmRh cnlfZHN0LT5kcmF3YWJsZS5wU2NyZWVuOwotICAgICBTY3JuSW5mb1B0ciBzY3JuID0geGY4NlNj cmVlblRvU2NybihzY3JlZW4pOwotICAgICBSQURFT05FbnRQdHIgcFJBREVPTkVudCA9IFJBREVP TkVudFByaXYoc2Nybik7Ci0gICAgIHhmODZDcnRjUHRyIGNydGMgPSByYWRlb25fcHJpbWVfZGly dHlfdG9fY3J0YyhlbnQpOwotQEAgLTg5MywxMSArODkzLDExIEBAIHJhZGVvbl9kaXJ0eV91cGRh dGUoU2NybkluZm9QdHIgc2NybikKLSAJCWlmIChzY3JlZW4tPmlzR1BVKSB7Ci0gCQkJUGl4bWFw RGlydHlVcGRhdGVQdHIgcmVnaW9uX2VudCA9IGVudDsKLSAKLS0JCQlpZiAobWFzdGVyX2hhc19z eW5jX3NoYXJlZF9waXhtYXAoc2NybiwgZW50KSkgewotLQkJCQlTY3JlZW5QdHIgbWFzdGVyX3Nj cmVlbiA9IHJhZGVvbl9kaXJ0eV9tYXN0ZXIoZW50KTsKLSsJCQlpZiAocHJpbWFyeV9oYXNfc3lu Y19zaGFyZWRfcGl4bWFwKHNjcm4sIGVudCkpIHsKLSsJCQkJU2NyZWVuUHRyIHByaW1hcnlfc2Ny ZWVuID0gcmFkZW9uX2RpcnR5X3ByaW1hcnkoZW50KTsKLSAKLS0JCQkJeG9yZ19saXN0X2Zvcl9l YWNoX2VudHJ5KHJlZ2lvbl9lbnQsICZtYXN0ZXJfc2NyZWVuLT5waXhtYXBfZGlydHlfbGlzdCwg ZW50KSB7Ci0tCQkJCQlpZiAocmFkZW9uX2RpcnR5X3NyY19lcXVhbHMoZW50LCByZWdpb25fZW50 LT5zbGF2ZV9kc3QpKQotKwkJCQl4b3JnX2xpc3RfZm9yX2VhY2hfZW50cnkocmVnaW9uX2VudCwg JnByaW1hcnlfc2NyZWVuLT5waXhtYXBfZGlydHlfbGlzdCwgZW50KSB7Ci0rCQkJCQlpZiAocmFk ZW9uX2RpcnR5X3NyY19lcXVhbHMoZW50LCByZWdpb25fZW50LT5zZWNvbmRhcnlfZHN0KSkKLSAJ CQkJCQlicmVhazsKLSAJCQkJfQotIAkJCX0KLUBAIC05MjEsNyArOTIxLDcgQEAgcmFkZW9uX2Rp cnR5X3VwZGF0ZShTY3JuSW5mb1B0ciBzY3JuKQotIAotIAkJCVJlZ2lvbkRlc3Ryb3kocmVnaW9u KTsKLSAJCX0gZWxzZSB7Ci0tCQkJaWYgKHNsYXZlX2hhc19zeW5jX3NoYXJlZF9waXhtYXAoc2Ny biwgZW50KSkKLSsJCQlpZiAoc2Vjb25kYXJ5X2hhc19zeW5jX3NoYXJlZF9waXhtYXAoc2Nybiwg ZW50KSkKLSAJCQkJY29udGludWU7Ci0gCi0gCQkJcmVnaW9uID0gZGlydHlfcmVnaW9uKGVudCk7 Ci1AQCAtMTIxNiw3ICsxMjE2LDcgQEAgc3RhdGljIHZvaWQgUkFERU9OQmxvY2tIYW5kbGVyX0tN UyhCTE9DS0hBTkRMRVJfQVJHU19ERUNMKQotICAgICAoKnBTY3JlZW4tPkJsb2NrSGFuZGxlcikg KEJMT0NLSEFORExFUl9BUkdTKTsKLSAgICAgcFNjcmVlbi0+QmxvY2tIYW5kbGVyID0gUkFERU9O QmxvY2tIYW5kbGVyX0tNUzsKLSAKLS0gICAgaWYgKCF4Zjg2U2NyZWVuVG9TY3JuKHJhZGVvbl9t YXN0ZXJfc2NyZWVuKHBTY3JlZW4pKS0+dnRTZW1hKQotKyAgICBpZiAoIXhmODZTY3JlZW5Ub1Nj cm4ocmFkZW9uX3ByaW1hcnlfc2NyZWVuKHBTY3JlZW4pKS0+dnRTZW1hKQotIAlyZXR1cm47Ci0g Ci0gICAgIGlmICghcFNjcmVlbi0+aXNHUFUpCi1AQCAtMjU4NCw3ICsyNTg0LDcgQEAgQ0FSRDMy IGNsZWFudXBfYmxhY2tfZmIoT3NUaW1lclB0ciB0aW1lciwgQ0FSRDMyIG5vdywgcG9pbnRlciBk YXRhKQotICAgICB4Zjg2Q3J0Y0NvbmZpZ1B0ciB4Zjg2X2NvbmZpZyA9IFhGODZfQ1JUQ19DT05G SUdfUFRSKHNjcm4pOwotICAgICBpbnQgYzsKLSAKLS0gICAgaWYgKHhmODZTY3JlZW5Ub1Njcm4o cmFkZW9uX21hc3Rlcl9zY3JlZW4oc2NyZWVuKSktPnZ0U2VtYSkKLSsgICAgaWYgKHhmODZTY3Jl ZW5Ub1Njcm4ocmFkZW9uX3ByaW1hcnlfc2NyZWVuKHNjcmVlbikpLT52dFNlbWEpCi0gCXJldHVy biAwOwotIAotICAgICAvKiBVbnJlZmVyZW5jZSB0aGUgYWxsLWJsYWNrIEZCIGNyZWF0ZWQgYnkg UkFERU9OTGVhdmVWVF9LTVMuIEFmdGVyCi0tLSAKLUdpdExhYgotCmRpZmYgLS1naXQgYS9zcmNw a2dzL3hmODYtdmlkZW8tYXRpL3BhdGNoZXMvZjIyMzAzNWY0ZmZjZmYyYTkyOTZkMWU5MDdhNTE5 M2Y4ZTg4NDVhMy5wYXRjaCBiL3NyY3BrZ3MveGY4Ni12aWRlby1hdGkvcGF0Y2hlcy9mMjIzMDM1 ZjRmZmNmZjJhOTI5NmQxZTkwN2E1MTkzZjhlODg0NWEzLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAxMjVmY2MyODM0NTcwLi4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv eGY4Ni12aWRlby1hdGkvcGF0Y2hlcy9mMjIzMDM1ZjRmZmNmZjJhOTI5NmQxZTkwN2E1MTkzZjhl ODg0NWEzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzMgKzAsMCBAQAotRnJvbSBmMjIzMDM1 ZjRmZmNmZjJhOTI5NmQxZTkwN2E1MTkzZjhlODg0NWEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQotRnJvbTogQWRhbSBKYWNrc29uIDxhamF4QHJlZGhhdC5jb20+Ci1EYXRlOiBUdWUsIDQgRmVi IDIwMjAgMTY6Mzg6MDYgLTA1MDAKLVN1YmplY3Q6IFtQQVRDSF0gRml4IGxpbmsgZmFpbHVyZSB3 aXRoIGdjYyAxMAotTUlNRS1WZXJzaW9uOiAxLjAKLUNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsg Y2hhcnNldD1VVEYtOAotQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAotCi1XaXRob3V0 IHRoZSAnZXh0ZXJuJyB0aGlzIGxvb2tzIGxpa2UgYSBkZWZpbml0aW9uIG5vdCBqdXN0IGEKLWRl Y2xhcmF0aW9uLCBpbiBldmVyeSBmaWxlIHRoYXQgaW5jbHVkZXMgdGhlIGhlYWRlci4gZ2NjIDEw IGlzIHN0cmljdGVyCi1hYm91dCB0aGlzIGtpbmQgb2YgbXVsdGlwbGUgZGVmaW5pdGlvbi4KLQot UmV2aWV3ZWQtYnk6IE1pY2hlbCBEw6RuemVyIDxtZGFlbnplckByZWRoYXQuY29tPgotLS0tCi0g c3JjL2RybW1vZGVfZGlzcGxheS5oIHwgMiArLQotIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL2RybW1vZGVfZGlzcGxheS5o IGIvc3JjL2RybW1vZGVfZGlzcGxheS5oCi1pbmRleCA5NmVhZWYwYS4uOGNkOGEwYTYgMTAwNjQ0 Ci0tLS0gYS9zcmMvZHJtbW9kZV9kaXNwbGF5LmgKLSsrKyBiL3NyYy9kcm1tb2RlX2Rpc3BsYXku aAotQEAgLTI2Miw3ICsyNjIsNyBAQCBCb29sIGRybW1vZGVfd2FpdF92YmxhbmsoeGY4NkNydGNQ dHIgY3J0YywgZHJtVkJsYW5rU2VxVHlwZSB0eXBlLAotIAkJCSB1aW50NjRfdCAqdXN0LCB1aW50 MzJfdCAqcmVzdWx0X3NlcSk7Ci0gCi0gCi0tbWlQb2ludGVyU3ByaXRlRnVuY1JlYyBkcm1tb2Rl X3Nwcml0ZV9mdW5jczsKLStleHRlcm4gbWlQb2ludGVyU3ByaXRlRnVuY1JlYyBkcm1tb2RlX3Nw cml0ZV9mdW5jczsKLSAKLSAKLSAjZW5kaWYKLS0tIAotR2l0TGFiCi0KZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MveGY4Ni12aWRlby1hdGkvcGF0Y2hlcy9udWxsLWRlcmVmLWV4YS5wYXRjaCBiL3NyY3Br Z3MveGY4Ni12aWRlby1hdGkvcGF0Y2hlcy9udWxsLWRlcmVmLWV4YS5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggZGQxM2U5YjYwODczNi4uMDAwMDAwMDAwMDAwMAotLS0gYS9z cmNwa2dzL3hmODYtdmlkZW8tYXRpL3BhdGNoZXMvbnVsbC1kZXJlZi1leGEucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSw3NyArMCwwIEBACi1Gcm9tIGE4MTY4MTUzMDM3ZjJjZmI5NzM5Mjg1Yjky ODk2YzBlMjQ4NzI1MTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiBBbGV4ZXkgU2hl cGx5YWtvdiA8YXNoZXBseWFrb3ZAYWx0bGludXgub3JnPgotRGF0ZTogV2VkLCAyNyBOb3YgMjAx OSAyMDo1MDo1OCArMDQwMAotU3ViamVjdDogW1BBVENIXSBEb24ndCBjcmFzaCBYIHNlcnZlciBp ZiBHUFUgYWNjZWxlcmF0aW9uIGlzIG5vdCBhdmFpbGFibGUKLQotQ29tbWl0IGQxZDhlM2M4ZDBh MGEwMzk0ZDM5NWViYTE3MTQ2MDUwMTc0NTIwOWIgY2F1c2VzIFggc2VydmVyCi10byBmYWlsIG9u IHN0YXJ0dXAgd2hlbiBHUFUgYWNjZWxlcmF0aW9uIGlzIG5vdCB3b3JraW5nIChvciBpcwotZGlz YWJsZWQpLiBUaGUgcmVhc29uIGlzIHRoYXQgYHJhZGVvbl9nZXRfcGl4bWFwX2JvYCBmdW5jdGlv bgotZ2V0cyBjYWxsZWQgdG9vIGVhcmx5IChiZWZvcmUgRVhBIGhhcyBiZWVuIGluaXRpYWxpemVk KSBhbmQKLWZhaWxzIHdpdGggYW4gYXNzZXJ0OgotCi0gIzAgIF9fR0lfcmFpc2UgKHNpZz08b3B0 aW1pemVkIG91dD4pIGF0IC4uL3N5c2RlcHMvdW5peC9zeXN2L2xpbnV4L3JhaXNlLmM6NTAKLSAj MSAgMHg3NmFiMWM2YyBpbiBfX0dJX2Fib3J0ICgpIGF0IGFib3J0LmM6NzkKLSAjMiAgMHg3NmFj MGI2NCBpbiBfX2Fzc2VydF9mYWlsX2Jhc2UgKGZtdD0weDc2YmZiY2U0ICIlcyVzJXM6JXU6ICVz JXNBc3NlcnRpb24gYCVzJyBmYWlsZWQuXG4lbiIsIGFzc2VydGlvbj0weDc2NThjODBjICJrZXkt PmluaXRpYWxpemVkIiwgZmlsZT08b3B0aW1pemVkIG91dD4sIGxpbmU9MTIxLAotICAgICBmdW5j dGlvbj0weDc2NThkMDQwIDxfX1BSRVRUWV9GVU5DVElPTl9fLjEwNjA3PiAiZGl4R2V0UHJpdmF0 ZUFkZHIiKSBhdCBhc3NlcnQuYzo5MgotICMzICAweDc2YWMwYzBjIGluIF9fR0lfX19hc3NlcnRf ZmFpbCAoYXNzZXJ0aW9uPTB4NzY1OGM4MGMgImtleS0+aW5pdGlhbGl6ZWQiLCBmaWxlPTB4NzY1 OGM5ZDAgIi4uL2luY2x1ZGUvcHJpdmF0ZXMuaCIsIGxpbmU9MTIxLAotICAgICBmdW5jdGlvbj0w eDc2NThkMDQwIDxfX1BSRVRUWV9GVU5DVElPTl9fLjEwNjA3PiAiZGl4R2V0UHJpdmF0ZUFkZHIi KSBhdCBhc3NlcnQuYzoxMDEKLSAjNCAgMHg3NjU3OWU2YyBpbiBkaXhHZXRQcml2YXRlQWRkciAo a2V5PTxvcHRpbWl6ZWQgb3V0Piwga2V5PTxvcHRpbWl6ZWQgb3V0PiwgcHJpdmF0ZXM9PG9wdGlt aXplZCBvdXQ+KSBhdCAuLi9pbmNsdWRlL3ByaXZhdGVzLmg6MTIxCi0gIzUgIDB4NzY1N2E5NTQg aW4gZGl4R2V0UHJpdmF0ZUFkZHIgKGtleT08b3B0aW1pemVkIG91dD4sIGtleT08b3B0aW1pemVk IG91dD4sIHByaXZhdGVzPTxvcHRpbWl6ZWQgb3V0PikgYXQgZXhhLmM6NzAKLSAjNiAgZGl4R2V0 UHJpdmF0ZSAoa2V5PTxvcHRpbWl6ZWQgb3V0PiwgcHJpdmF0ZXM9PG9wdGltaXplZCBvdXQ+KSBh dCAuLi9pbmNsdWRlL3ByaXZhdGVzLmg6MTM2Ci0gIzcgIGV4YUdldFBpeG1hcERyaXZlclByaXZh dGUgKHBQaXg9PG9wdGltaXplZCBvdXQ+KSBhdCBleGEuYzo2OAotICM4ICAweDc2MjNkNDYwIGlu IHJhZGVvbl9nZXRfcGl4bWFwX2JvIChwUGl4PTB4NzFjMWI4KSBhdCByYWRlb24uaDo4MDQKLSAj OSAgcmFkZW9uX2dldF9waXhtYXBfaGFuZGxlIChwaXhtYXA9MHg3MWMxYjgsIGhhbmRsZT0weDdm YTIyMzI4KSBhdCByYWRlb25fYm9faGVscGVyLmM6MzU3Ci0gIzEwIDB4NzYyNDQ0NTggaW4gcmFk ZW9uX3BpeG1hcF9nZXRfZmIgKHBpeD0weDcxYzFiOCkgYXQgcmFkZW9uLmg6ODg2Ci0gIzExIGRy bW1vZGVfc2V0X21vZGVfbWFqb3IgKGNydGM9MHg2OTE4NjAsIG1vZGU9MHg2OTE5MWMsIHJvdGF0 aW9uPTxvcHRpbWl6ZWQgb3V0PiwgeD08b3B0aW1pemVkIG91dD4sIHk9PG9wdGltaXplZCBvdXQ+ KSBhdCBkcm1tb2RlX2Rpc3BsYXkuYzo5MTgKLSAjMTIgMHg3NjI0NjdlOCBpbiBkcm1tb2RlX3Nl dF9kZXNpcmVkX21vZGVzIChwU2Nybj0weDY3YzY3OCwgZHJtbW9kZT08b3B0aW1pemVkIG91dD4s IHNldF9odz0xKSBhdCBkcm1tb2RlX2Rpc3BsYXkuYzozMTI4Ci0gIzEzIDB4MDA0N2JmYTQgaW4g TWFwV2luZG93IChjbGllbnQ9MHg2NjllYzgsIHBXaW49MHg3MjA2YzApIGF0IHdpbmRvdy5jOjI3 MjIKLSAjMTQgTWFwV2luZG93IChwV2luPTB4NzIwNmMwLCBjbGllbnQ9MHg2NjllYzgpIGF0IHdp bmRvdy5jOjI2NjUKLSAjMTUgMHgwMDQ0OTY1MCBpbiBkaXhfbWFpbiAoYXJnYz0zLCBhcmd2PTB4 N2ZhMjI2MDQsIGVudnA9PG9wdGltaXplZCBvdXQ+KSBhdCBtYWluLmM6MjQ3Ci0gIzE2IDB4NzZh YjIxOTggaW4gX19saWJjX3N0YXJ0X21haW4gKG1haW49MHg0MmRiMTAgPG1haW4+LCBhcmdjPTMs IGFyZ3Y9MHg3ZmEyMjYwNCwgaW5pdD08b3B0aW1pemVkIG91dD4sIGZpbmk9MHg2MDY0MzQgPF9f bGliY19jc3VfZmluaT4sIHJ0bGRfZmluaT0weDc3MjI5OTMwIDxfZGxfZmluaT4sCi0gICAgIHN0 YWNrX2VuZD0weDdmYTIyNWUwKSBhdCBsaWJjLXN0YXJ0LmM6MzA4Ci0gIzE3IDB4MDA0MmRiODAg aW4gX19zdGFydCAoKSBhdCAuLi9zeXNkZXBzL21pcHMvc3RhcnQuUzoxMTAKLQotRG9uJ3QgY2Fs bCBgZXhhR2V0UGl4bWFwRHJpdmVyUHJpdmF0ZWAgaWYgdGhlIGFjY2VsZXJhdGlvbiAoRVhBKSBp cyBub3QKLWVuYWJsZWQgW3lldF0gdG8gYXZvaWQgdGhlIHByb2JsZW0uCi0KLUNsb3NlczogaHR0 cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL3hvcmcvZHJpdmVyL3hmODYtdmlkZW8tYXRpL2lz c3Vlcy8xODgKLUNsb3NlczogaHR0cHM6Ly9idWd6aWxsYS5hbHRsaW51eC5vcmcvc2hvd19idWcu Y2dpP2lkPTM3NTM5Ci0tLS0KLSBzcmMvcmFkZW9uLmggfCA2ICsrKy0tLQotIDEgZmlsZSBjaGFu Z2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYS9zcmMv cmFkZW9uLmggYi9zcmMvcmFkZW9uLmgKLWluZGV4IDJjOTEzNDY2Li5lNGEyYmE2NiAxMDA2NDQK LS0tLSBhL3NyYy9yYWRlb24uaAotKysrIGIvc3JjL3JhZGVvbi5oCi1AQCAtNzkwLDggKzc5MCw4 IEBAIHN0YXRpYyBpbmxpbmUgQm9vbCByYWRlb25fc2V0X3BpeG1hcF9ibyhQaXhtYXBQdHIgcFBp eCwgc3RydWN0IHJhZGVvbl9idWZmZXIgKmJvCi0gCi0gc3RhdGljIGlubGluZSBzdHJ1Y3QgcmFk ZW9uX2J1ZmZlciAqcmFkZW9uX2dldF9waXhtYXBfYm8oUGl4bWFwUHRyIHBQaXgpCi0gewotLSNp ZmRlZiBVU0VfR0xBTU9SCi0gICAgIFJBREVPTkluZm9QdHIgaW5mbyA9IFJBREVPTlBUUih4Zjg2 U2NyZWVuVG9TY3JuKHBQaXgtPmRyYXdhYmxlLnBTY3JlZW4pKTsKLSsjaWZkZWYgVVNFX0dMQU1P UgotIAotICAgICBpZiAoaW5mby0+dXNlX2dsYW1vcikgewotIAlzdHJ1Y3QgcmFkZW9uX3BpeG1h cCAqcHJpdjsKLUBAIC03OTksNyArNzk5LDcgQEAgc3RhdGljIGlubGluZSBzdHJ1Y3QgcmFkZW9u X2J1ZmZlciAqcmFkZW9uX2dldF9waXhtYXBfYm8oUGl4bWFwUHRyIHBQaXgpCi0gCXJldHVybiBw cml2ID8gcHJpdi0+Ym8gOiBOVUxMOwotICAgICB9IGVsc2UKLSAjZW5kaWYKLS0gICAgewotKyAg ICBpZiAoaW5mby0+YWNjZWxPbikgewotIAlzdHJ1Y3QgcmFkZW9uX2V4YV9waXhtYXBfcHJpdiAq ZHJpdmVyX3ByaXY7Ci0gCWRyaXZlcl9wcml2ID0gZXhhR2V0UGl4bWFwRHJpdmVyUHJpdmF0ZShw UGl4KTsKLSAJcmV0dXJuIGRyaXZlcl9wcml2ID8gZHJpdmVyX3ByaXYtPmJvIDogTlVMTDsKLUBA IC04OTYsNyArODk2LDcgQEAgcmFkZW9uX3BpeG1hcF9nZXRfZmIoUGl4bWFwUHRyIHBpeCkKLSAJ CQkJICAgaGFuZGxlKTsKLSAgICAgfQotIAotLSAgICByZXR1cm4gKmZiX3B0cjsKLSsgICAgcmV0 dXJuIGZiX3B0ciA/ICpmYl9wdHIgOiBOVUxMOwotIH0KLSAKLSAKLS0tIAotMi4yNC4xCi0KZGlm ZiAtLWdpdCBhL3NyY3BrZ3MveGY4Ni12aWRlby1hdGkvdGVtcGxhdGUgYi9zcmNwa2dzL3hmODYt dmlkZW8tYXRpL3RlbXBsYXRlCmluZGV4IDdkM2U4NmEzZDBmNjkuLmZlZDNhNmIyZTAxZDAgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MveGY4Ni12aWRlby1hdGkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94 Zjg2LXZpZGVvLWF0aS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3hmODYtdmlkZW8tYXRpJwogcGtnbmFtZT14Zjg2LXZpZGVvLWF0aQotdmVyc2lvbj0xOS4x LjAKLXJldmlzaW9uPTQKK3ZlcnNpb249MjIuMC4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1n bnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0i eG9yZ3Byb3RvIGV1ZGV2LWxpYnVkZXYtZGV2ZWwgbGlicGNpYWNjZXNzLWRldmVsCkBAIC0xMSw4 ICsxMSw4IEBAIHNob3J0X2Rlc2M9IlhvcmcgQVRJIFJhZGVvbiB2aWRlbyBkcml2ZXIiCiBtYWlu dGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iTUlUIgog aG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5mcmVlZGVza3RvcC5vcmcveG9yZyIKLWRpc3RmaWxlcz0i JHtYT1JHX1NJVEV9L2RyaXZlci8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIKLWNoZWNr c3VtPTY1OWY1YTE2MjllZWE1ZjUzMzRkOWIzOWIxOGU2ODA3YTYzYWExZWZhMzNjMTIzNmQ5Y2M1 M2FjYmIyMjNjNDkKK2Rpc3RmaWxlcz0iJHtYT1JHX1NJVEV9L2RyaXZlci8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09NzVmMmQ0ZWQ0ZDEwNDFhZTllYjJhMTE4MTZiOTE5 ZTE4YWVlOWEyNWRiMTU1NmIzZDkzOGZmZjMxZDNjODZmMwogCiBsaWIzMmRpc2FibGVkPXllcwog Q0ZMQUdTPSItZmNvbW1vbiIK --===============4088237396213838985==--