From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 64169 invoked by alias); 16 Jan 2016 12:19:44 -0000 Mailing-List: contact java-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: java-patches-owner@gcc.gnu.org Received: (qmail 62770 invoked by uid 89); 16 Jan 2016 12:19:43 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.1 required=5.0 tests=BAYES_50,FREEMAIL_FROM,FROM_EXCESS_BASE64,RCVD_IN_DNSWL_LOW,SPF_HELO_PASS,SPF_PASS autolearn=ham version=3.3.2 spammy=H*F:D*mail.ru, H*UA:1.0, H*R:D*mail.ru, H*Ad:U*java-patches X-HELO: f334.i.mail.ru Received: from f334.i.mail.ru (HELO f334.i.mail.ru) (217.69.140.230) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Sat, 16 Jan 2016 12:19:41 +0000 Received: from [213.24.133.5] (ident=mail) by f334.i.mail.ru with local (envelope-from ) id 1aKPpP-0001Tx-4x for java-patches@gcc.gnu.org; Sat, 16 Jan 2016 15:19:35 +0300 Received: from [213.24.133.5] by e.mail.ru with HTTP; Sat, 16 Jan 2016 15:19:35 +0300 From: =?UTF-8?B?SXZhbiBNYWlkYW5za2k=?= To: =?UTF-8?B?R0NKLXBhdGNoZXM=?= Subject: =?UTF-8?B?Qm9laG0gR0MgQVBJIHVwZGF0ZSBiYWNrcG9ydA==?= MIME-Version: 1.0 Date: Sat, 16 Jan 2016 12:19:00 -0000 Reply-To: =?UTF-8?B?SXZhbiBNYWlkYW5za2k=?= Message-ID: <1452946775.620786968@f334.i.mail.ru> Content-Type: multipart/mixed; boundary="----64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775" X-Spam: undefined X-SW-Source: 2016-q1/txt/msg00011.txt.bz2 ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 Content-length: 968 SGVsbG8sCgpQcm9wb3NlZCA0IGNvbW1pdHMgYXJlIGNvZGUgcmVmYWN0b3Jp bmcgb2YgYm9laG0tZ2MgKGFuZCBsaWJqYXZhL2JvZWhtLmNjLCBhY2NvcmRp bmdseSkgdG8gbWF0Y2ggQVBJIG9mIHJlY2VudCBCRFdHQyBtYXN0ZXIgKCBo dHRwczovL2dpdGh1Yi5jb20vaXZtYWkvYmR3Z2MgKS4gVGhpcyBzaG91bGQg c2ltcGxpZnkgb3B0aW9uYWwgcmVwbGFjZW1lbnQgb2YgaW50ZXJuYWwgYm9l aG0tZ2NjIHdpdGggdGhlIGV4dGVybmFsIG9uZS4KQWxsIGdjaiB0ZXN0cyBw YXNzLgoKU29tZSBvZiB0aGUgYmVuZWZpdHMgb2YgdXNpbmcgbWFpbmxpbmUg Ym9laG0gZ2M6CiogIGhhcyBubyBjb21waWxlciB3YXJuaW5nCiogIG1vcmUg dGFyZ2V0cyBzdXBwb3J0ZWQgKGUuZy4gYXJtNjQpCiogIG5vIHRyb3VibGUg d2l0aCBiYWNrLXBvcnRpbmcgZ2MgcGF0Y2hlcyBTaW1pbGFyIHRoaW5nIHdh cyBwcm9wb3NlZCBmb3IgdGhlIE1vbm8gY29tbXVuaXR5IC0gIGh0dHBzOi8v Z2l0aHViLmNvbS9tb25vL21vbm8vcHVsbC8yMjQ3ICAodGhlIHBhdGNoZXMg d2VyZSBhY2NlcHRlZCByZWNlbnRseSkKClJlZmVyZW5jZXM6ClsxXSBUaGUg cHJvcG9zZWQgcGF0Y2hlcyBpbiBHQ0MgdW5vZmZpY2lhbCBnaXQgbWlycm9y IGZvcmsgLSAgaHR0cHM6Ly9naXRodWIuY29tL2l2bWFpL2djYy90cmVlL21h dGNoLWJkd2djLWFwaQoKLS0KQmVzdCByZWdhcmRzLApJdmFuCg== ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775 Content-Type: application/x-patch; name="=?UTF-8?B?MDAwMS1DaGFuZ2UtR0Nfc2V0X2ZyZWVfc3BhY2VfZGl2aXNvci1wcm90b3R5?= =?UTF-8?B?cGUtaW4tYm9laG0tLnBhdGNo?=" Content-Disposition: attachment Content-Transfer-Encoding: base64 Content-length: 5051 RnJvbSBiYTgxZDA3ODY0ZWJhYmE4YTE2YWZkZjBlNGZkOWE2ZTIyZDY0YmVl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJdmFuIE1haWRhbnNr aSA8aXZtYWlAbWFpbC5ydT4KRGF0ZTogVGh1LCAzIERlYyAyMDE1IDAxOjQ4 OjMwICswMzAwClN1YmplY3Q6IFtQQVRDSCAxLzRdIENoYW5nZSBHQ19zZXRf ZnJlZV9zcGFjZV9kaXZpc29yIHByb3RvdHlwZSBpbiBib2VobS1nYwogKGNv ZGUgcmVmYWN0b3JpbmcgdG8gbWF0Y2ggQkRXR0MgdjcgQVBJKQoKYm9laG0t Z2MvCiAgICAqIGluY2x1ZGUvZ2MuaCAoR0Nfc2V0X2ZyZWVfc3BhY2VfZGl2 aXNvcik6IENoYW5nZSByZXR1cm4gdHlwZSBmcm9tCiAgICB3b3JkIHRvIHZv aWQuCiAgICAoR0NfZ2V0X2ZyZWVfc3BhY2VfZGl2aXNvcik6IE5ldyBmdW5j dGlvbi4KICAgICogbWlzYy5jIChHQ19zZXRfZnJlZV9zcGFjZV9kaXZpc29y KTogRGVjb3VwbGUgdG8gc2V0dGVyIGFuZCBnZXR0ZXIuCgpsaWJqYXZhLwog ICAgKiBib2VobS5jYyAoX0p2X1NldEdDRnJlZVNwYWNlRGl2aXNvcik6IFVz ZSBHQ19nZXRfZnJlZV9zcGFjZV9kaXZpc29yCiAgICB0byBnZXQgb2xkX2Rp diAoYmVmb3JlIEdDX3NldF9mcmVlX3NwYWNlX2Rpdmlzb3IgY2FsbCkuCi0t LQogYm9laG0tZ2MvQ2hhbmdlTG9nICAgIHwgIDcgKysrKysrKwogYm9laG0t Z2MvaW5jbHVkZS9nYy5oIHwgIDYgKysrLS0tCiBib2VobS1nYy9taXNjLmMg ICAgICAgfCAxMSArKysrKysrLS0tLQogbGliamF2YS9DaGFuZ2VMb2cgICAg IHwgIDUgKysrKysKIGxpYmphdmEvYm9laG0uY2MgICAgICB8ICA0ICsrKy0K IDUgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwgOCBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9ib2VobS1nYy9DaGFuZ2VMb2cgYi9ib2Vo bS1nYy9DaGFuZ2VMb2cKaW5kZXggMzY1MDM4ZS4uMWQ4NjA2MSAxMDA2NDQK LS0tIGEvYm9laG0tZ2MvQ2hhbmdlTG9nCisrKyBiL2JvZWhtLWdjL0NoYW5n ZUxvZwpAQCAtMSwzICsxLDEwIEBACisyMDE1LTEyLTAzICBJdmFuIE1haWRh bnNraSAgPGl2bWFpQG1haWwucnU+CisKKwkqIGluY2x1ZGUvZ2MuaCAoR0Nf c2V0X2ZyZWVfc3BhY2VfZGl2aXNvcik6IENoYW5nZSByZXR1cm4gdHlwZSBm cm9tCisJd29yZCB0byB2b2lkLgorCShHQ19nZXRfZnJlZV9zcGFjZV9kaXZp c29yKTogTmV3IGZ1bmN0aW9uLgorCSogbWlzYy5jIChHQ19zZXRfZnJlZV9z cGFjZV9kaXZpc29yKTogRGVjb3VwbGUgdG8gc2V0dGVyIGFuZCBnZXR0ZXIu CisKIDIwMTUtMTAtMDkgIERhdmlkIE1hbGNvbG0gIDxkbWFsY29sbUByZWRo YXQuY29tPgogCiAJKiB0ZXN0c3VpdGUvbGliL2JvZWhtLWdjLmV4cDogTG9h ZCBtdWx0aWxpbmUuZXhwIGJlZm9yZQpkaWZmIC0tZ2l0IGEvYm9laG0tZ2Mv aW5jbHVkZS9nYy5oIGIvYm9laG0tZ2MvaW5jbHVkZS9nYy5oCmluZGV4IDZi MzhmMmQuLmQwMmRhYjIgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL2luY2x1ZGUv Z2MuaAorKysgYi9ib2VobS1nYy9pbmNsdWRlL2djLmgKQEAgLTgwMyw5ICs4 MDMsOSBAQCB0eXBlZGVmIHZvaWQgKCpHQ193YXJuX3Byb2MpIEdDX1BST1RP KChjaGFyICptc2csIEdDX3dvcmQgYXJnKSk7CiBHQ19BUEkgR0Nfd2Fybl9w cm9jIEdDX3NldF93YXJuX3Byb2MgR0NfUFJPVE8oKEdDX3dhcm5fcHJvYyBw KSk7CiAgICAgLyogUmV0dXJucyBvbGQgd2FybmluZyBwcm9jZWR1cmUuCSov CiAKLUdDX0FQSSBHQ193b3JkIEdDX3NldF9mcmVlX3NwYWNlX2Rpdmlzb3Ig R0NfUFJPVE8oKEdDX3dvcmQgdmFsdWUpKTsKLSAgICAvKiBTZXQgZnJlZV9z cGFjZV9kaXZpc29yLiAgU2VlIGFib3ZlIGZvciBkZWZpbml0aW9uLgkqLwot ICAgIC8qIFJldHVybnMgb2xkIHZhbHVlLgkJCQkJKi8KK0dDX0FQSSB2b2lk IEdDX3NldF9mcmVlX3NwYWNlX2Rpdmlzb3IgR0NfUFJPVE8oKEdDX3dvcmQg dmFsdWUpKTsKK0dDX0FQSSBHQ193b3JkIEdDX2dldF9mcmVlX3NwYWNlX2Rp dmlzb3IgR0NfUFJPVE8oKHZvaWQpKTsKKyAgICAvKiBTZXQgYW5kIGdldCBm cmVlX3NwYWNlX2Rpdmlzb3IuICBTZWUgYWJvdmUgZm9yIHRoZSBkZWZpbml0 aW9uLgkqLwogCQogLyogVGhlIGZvbGxvd2luZyBpcyBpbnRlbmRlZCB0byBi ZSB1c2VkIGJ5IGEgaGlnaGVyIGxldmVsCSovCiAvKiAoZS5nLiBKYXZhLWxp a2UpIGZpbmFsaXphdGlvbiBmYWNpbGl0eS4gIEl0IGlzIGV4cGVjdGVkCSov CmRpZmYgLS1naXQgYS9ib2VobS1nYy9taXNjLmMgYi9ib2VobS1nYy9taXNj LmMKaW5kZXggMDY5YzdkNS4uYzFmYWVkMCAxMDA2NDQKLS0tIGEvYm9laG0t Z2MvbWlzYy5jCisrKyBiL2JvZWhtLWdjL21pc2MuYwpAQCAtMTA0OCwxNSAr MTA0OCwxOCBAQCBHQ193YXJuX3Byb2MgR0NfY3VycmVudF93YXJuX3Byb2Mg PSBHQ19kZWZhdWx0X3dhcm5fcHJvYzsKIH0KIAogIyBpZiBkZWZpbmVkKF9f U1REQ19fKSB8fCBkZWZpbmVkKF9fY3BsdXNwbHVzKQotICAgIEdDX3dvcmQg R0Nfc2V0X2ZyZWVfc3BhY2VfZGl2aXNvciAoR0Nfd29yZCB2YWx1ZSkKKyAg ICB2b2lkIEdDX3NldF9mcmVlX3NwYWNlX2Rpdmlzb3IgKEdDX3dvcmQgdmFs dWUpCiAjIGVsc2UKLSAgICBHQ193b3JkIEdDX3NldF9mcmVlX3NwYWNlX2Rp dmlzb3IgKHZhbHVlKQorICAgIHZvaWQgR0Nfc2V0X2ZyZWVfc3BhY2VfZGl2 aXNvciAodmFsdWUpCiAgICAgR0Nfd29yZCB2YWx1ZTsKICMgZW5kaWYKIHsK LSAgICBHQ193b3JkIG9sZCA9IEdDX2ZyZWVfc3BhY2VfZGl2aXNvcjsKICAg ICBHQ19mcmVlX3NwYWNlX2Rpdmlzb3IgPSB2YWx1ZTsKLSAgICByZXR1cm4g b2xkOworfQorCitHQ193b3JkIEdDX2dldF9mcmVlX3NwYWNlX2Rpdmlzb3Ig R0NfUFJPVE8oKHZvaWQpKQoreworICAgIHJldHVybiBHQ19mcmVlX3NwYWNl X2Rpdmlzb3I7CiB9CiAKICNpZm5kZWYgUENSCmRpZmYgLS1naXQgYS9saWJq YXZhL0NoYW5nZUxvZyBiL2xpYmphdmEvQ2hhbmdlTG9nCmluZGV4IDBkNzUx OTUuLjk1NGIxYTEgMTAwNjQ0Ci0tLSBhL2xpYmphdmEvQ2hhbmdlTG9nCisr KyBiL2xpYmphdmEvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsOCBAQAorMjAxNS0x Mi0wMyAgSXZhbiBNYWlkYW5za2kgIDxpdm1haUBtYWlsLnJ1PgorCisJKiBi b2VobS5jYyAoX0p2X1NldEdDRnJlZVNwYWNlRGl2aXNvcik6IFVzZSBHQ19n ZXRfZnJlZV9zcGFjZV9kaXZpc29yCisJdG8gZ2V0IG9sZF9kaXYgKGJlZm9y ZSBHQ19zZXRfZnJlZV9zcGFjZV9kaXZpc29yIGNhbGwpLgorCiAyMDE1LTA3 LTI0ICBNaWNoYWVsIERhcmxpbmcgIDxkYXJsaW5nbUBnbWFpbC5jb20+CiAK IAlQUiBvdGhlci82NjI1OQpkaWZmIC0tZ2l0IGEvbGliamF2YS9ib2VobS5j YyBiL2xpYmphdmEvYm9laG0uY2MKaW5kZXggMDQzZmQwMC4uMzRhNmVhZCAx MDA2NDQKLS0tIGEvbGliamF2YS9ib2VobS5jYworKysgYi9saWJqYXZhL2Jv ZWhtLmNjCkBAIC00NjgsNyArNDY4LDkgQEAgX0p2X0dDU2V0TWF4aW11bUhl YXBTaXplIChzaXplX3Qgc2l6ZSkKIGludAogX0p2X1NldEdDRnJlZVNwYWNl RGl2aXNvciAoaW50IGRpdikKIHsKLSAgcmV0dXJuIChpbnQpR0Nfc2V0X2Zy ZWVfc3BhY2VfZGl2aXNvciAoKEdDX3dvcmQpZGl2KTsKKyAgaW50IG9sZF9k aXYgPSAoaW50KUdDX2dldF9mcmVlX3NwYWNlX2Rpdmlzb3IgKCk7CisgIEdD X3NldF9mcmVlX3NwYWNlX2Rpdmlzb3IgKChHQ193b3JkKWRpdik7CisgIHJl dHVybiBvbGRfZGl2OwogfQogCiB2b2lkCi0tIAoyLjEuNAoK ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775 Content-Type: application/x-patch; name="=?UTF-8?B?MDAwMi1Nb3ZlLWV4dGVybi1DLWZyb20tYm9laG0uY2MtdG8tYm9laG0tZ2Mt?= =?UTF-8?B?aGVhZGVyLWZpbGVzLnBhdGNo?=" Content-Disposition: attachment Content-Transfer-Encoding: base64 Content-length: 11574 RnJvbSA5NjU5MzdkYzQ4MmRiMTQxN2VlM2UwMGRiNmZlOTExMjE2YWI0YjRk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJdmFuIE1haWRhbnNr aSA8aXZtYWlAbWFpbC5ydT4KRGF0ZTogU2F0LCA1IERlYyAyMDE1IDE5OjI4 OjIwICswMzAwClN1YmplY3Q6IFtQQVRDSCAyLzRdIE1vdmUgJ2V4dGVybiBD JyBmcm9tIGJvZWhtLmNjIHRvIGJvZWhtLWdjIGhlYWRlciBmaWxlczsKIGF2 b2lkIGV4cGxpY2l0IGluY2x1ZGUgZ2NfbG9jYWxfYWxsb2MuaCBmcm9tIGJv ZWhtLmNjOyByZW1vdmUKIEdDX2VuYWJsZS9kaXNhYmxlIGR1cGxpY2F0ZSBw cm90b3R5cGluZyAoY29kZSByZWZhY3RvcmluZyB0byBtYXRjaCBCRFdHQyB2 NwogQVBJKQoKYm9laG0tZ2MvCiAgICAqIGluY2x1ZGUvZ2MuaCAoR0Nfc3Vz cGVuZF90aHJlYWQsIEdDX3Jlc3VtZV90aHJlYWQsCiAgICBHQ19pc190aHJl YWRfc3VzcGVuZGVkKTogTW92ZSBpbnNpZGUgJ2V4dGVybiAiQyInIGJsb2Nr LgogICAgW0dDX1JFRElSRUNUX1RPX0xPQ0FMXTogSW5jbHVkZSBnY19sb2Nh bF9hbGxvYy5oIG91dHNpZGUgJ2V4dGVybiAiQyInCiAgICBibG9jazsgZG8g bm90IGluY2x1ZGUgZ2NfbG9jYWxfYWxsb2MuaCBpZiBnYy5oIGlzIGluY2x1 ZGVkIGZyb20KICAgIGdjX2djai5oIChzbyB0aGF0IEdDX1tMT0NBTF9dR0NK X01BTExPQyB0byBiZSBkZWZpbmVkIGFmdGVyIG90aGVyIEdDSgogICAgc3lt Ym9scykuCiAgICAqIGluY2x1ZGUvZ2NfZ2NqLmggW19fY3BsdXNwbHVzXTog V3JhcCBhbGwgZGVjbGFyYXRpb25zIGludG8KICAgICdleHRlcm4gIkMiJyBi bG9jay4KICAgICogaW5jbHVkZS9nY19sb2NhbF9hbGxvYy5oIFtfX2NwbHVz cGx1c106IExpa2V3aXNlLgogICAgKiBpbmNsdWRlL2phdmF4ZmMuaCBbX19j cGx1c3BsdXNdOiBMaWtld2lzZS4KICAgICogaW5jbHVkZS9nY19nY2ouaCBb R0NfUkVESVJFQ1RfVE9fTE9DQUxdOiBJbmNsdWRlIGdjX2xvY2FsX2FsbG9j LmguCgpsaWJqYXZhLwogICAgKiBib2VobS5jYyAoR0NfZW5hYmxlLCBHQ19k aXNhYmxlKTogUmVtb3ZlIHByb3RvdHlwZSAoYXMgZGVjbGFyZWQgaW4KICAg IGJvZWhtLWdjL2luY2x1ZGUvZ2MuaCkuCiAgICBbVEhSRUFEX0xPQ0FMX0FM TE9DXSAoR0NfUkVESVJFQ1RfVE9fTE9DQUwpOiBEZWZpbmUgYmVmb3JlIGlu Y2x1ZGUKICAgIGdjX2djai5oIGZpbGUuCiAgICAqIGJvZWhtLmNjOiBSZW1v dmUgJ2V4dGVybiAiQyInIGZvciBpbmNsdWRlZCBib2VobS1nYy9pbmNsdWRl IGhlYWRlcgogICAgZmlsZXMgKHRoZXkgYXJlIHByb3Blcmx5IGRlY29yYXRl ZCBpbnNpZGUgbm93KTsgcmVtb3ZlIGluY2x1ZGUKICAgICJnY19sb2NhbF9h bGxvYy5oIiAoYXMgaXQgaXMgaW1wbGljaXRseSBpbmNsdWRlZCBub3cgYnkK ICAgIGJvZWhtLWdjL2luY2x1ZGUvZ2NfZ2NqLmgpOyBpbmNsdWRlICJnY19n Y2ouaCIgYmVmb3JlIGFueSBvdGhlcgogICAgYm9laG0tZ2MgaGVhZGVyIGZp bGUgKHRvIGxldCBHQ19HQ0pfTUFMTE9DIGJlIHByb3Blcmx5IHJlZGVmaW5l ZCB0bwogICAgYSB0aHJlYWQtbG9jYWwgYWxsb2NhdG9yIGluIGJvZWhtLWdj L2luY2x1ZGUvZ2NfbG9jYWxfYWxsb2MuaCkuCi0tLQogYm9laG0tZ2MvQ2hh bmdlTG9nICAgICAgICAgICAgICAgIHwgMTQgKysrKysrKysrKysrKysKIGJv ZWhtLWdjL2luY2x1ZGUvZ2MuaCAgICAgICAgICAgICB8IDIyICsrKysrKysr KysrKysrLS0tLS0tLS0KIGJvZWhtLWdjL2luY2x1ZGUvZ2NfZ2NqLmggICAg ICAgICB8IDEyICsrKysrKysrKysrKwogYm9laG0tZ2MvaW5jbHVkZS9nY19s b2NhbF9hbGxvYy5oIHwgIDggKysrKysrKysKIGJvZWhtLWdjL2luY2x1ZGUv Z2NfbWFyay5oICAgICAgICB8ICA5ICsrKysrKysrLQogYm9laG0tZ2MvaW5j bHVkZS9qYXZheGZjLmggICAgICAgIHwgIDggKysrKysrKy0KIGxpYmphdmEv Q2hhbmdlTG9nICAgICAgICAgICAgICAgICB8IDEzICsrKysrKysrKysrKysK IGxpYmphdmEvYm9laG0uY2MgICAgICAgICAgICAgICAgICB8IDE0ICsrKy0t LS0tLS0tLS0tCiA4IGZpbGVzIGNoYW5nZWQsIDc5IGluc2VydGlvbnMoKyks IDIxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2JvZWhtLWdjL0NoYW5n ZUxvZyBiL2JvZWhtLWdjL0NoYW5nZUxvZwppbmRleCAxZDg2MDYxLi45OTg4 NjA1IDEwMDY0NAotLS0gYS9ib2VobS1nYy9DaGFuZ2VMb2cKKysrIGIvYm9l aG0tZ2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUtMTItMDUg IEl2YW4gTWFpZGFuc2tpICA8aXZtYWlAbWFpbC5ydT4KKworCSogaW5jbHVk ZS9nYy5oIChHQ19zdXNwZW5kX3RocmVhZCwgR0NfcmVzdW1lX3RocmVhZCwK KwlHQ19pc190aHJlYWRfc3VzcGVuZGVkKTogTW92ZSBpbnNpZGUgJ2V4dGVy biAiQyInIGJsb2NrLgorCVtHQ19SRURJUkVDVF9UT19MT0NBTF06IEluY2x1 ZGUgZ2NfbG9jYWxfYWxsb2MuaCBvdXRzaWRlICdleHRlcm4gIkMiJworCWJs b2NrOyBkbyBub3QgaW5jbHVkZSBnY19sb2NhbF9hbGxvYy5oIGlmIGdjLmgg aXMgaW5jbHVkZWQgZnJvbQorCWdjX2djai5oIChzbyB0aGF0IEdDX1tMT0NB TF9dR0NKX01BTExPQyB0byBiZSBkZWZpbmVkIGFmdGVyIG90aGVyIEdDSgor CXN5bWJvbHMpLgorCSogaW5jbHVkZS9nY19nY2ouaCBbX19jcGx1c3BsdXNd OiBXcmFwIGFsbCBkZWNsYXJhdGlvbnMgaW50bworCSdleHRlcm4gIkMiJyBi bG9jay4KKwkqIGluY2x1ZGUvZ2NfbG9jYWxfYWxsb2MuaCBbX19jcGx1c3Bs dXNdOiBMaWtld2lzZS4KKwkqIGluY2x1ZGUvamF2YXhmYy5oIFtfX2NwbHVz cGx1c106IExpa2V3aXNlLgorCSogaW5jbHVkZS9nY19nY2ouaCBbR0NfUkVE SVJFQ1RfVE9fTE9DQUxdOiBJbmNsdWRlIGdjX2xvY2FsX2FsbG9jLmguCisK IDIwMTUtMTItMDMgIEl2YW4gTWFpZGFuc2tpICA8aXZtYWlAbWFpbC5ydT4K IAogCSogaW5jbHVkZS9nYy5oIChHQ19zZXRfZnJlZV9zcGFjZV9kaXZpc29y KTogQ2hhbmdlIHJldHVybiB0eXBlIGZyb20KZGlmZiAtLWdpdCBhL2JvZWht LWdjL2luY2x1ZGUvZ2MuaCBiL2JvZWhtLWdjL2luY2x1ZGUvZ2MuaAppbmRl eCBkMDJkYWIyLi5mMTkzMDY1IDEwMDY0NAotLS0gYS9ib2VobS1nYy9pbmNs dWRlL2djLmgKKysrIGIvYm9laG0tZ2MvaW5jbHVkZS9nYy5oCkBAIC0xMDYx LDE0ICsxMDYxLDYgQEAgR0NfQVBJIHZvaWQgR0NfcmVnaXN0ZXJfaGFzX3N0 YXRpY19yb290c19jYWxsYmFjawogIyBpbmNsdWRlICJnY19hbWlnYV9yZWRp cmVjdHMuaCIKICNlbmRpZgogCi0jaWYgZGVmaW5lZChHQ19SRURJUkVDVF9U T19MT0NBTCkgJiYgIWRlZmluZWQoR0NfTE9DQUxfQUxMT0NfSCkKLSMgIGlu Y2x1ZGUgICJnY19sb2NhbF9hbGxvYy5oIgotI2VuZGlmCi0KLSNpZmRlZiBf X2NwbHVzcGx1cwotICAgIH0gIC8qIGVuZCBvZiBleHRlcm4gIkMiICovCi0j ZW5kaWYKLQogLyogRXh0ZXJuYWwgdGhyZWFkIHN1c3BlbnNpb24gc3VwcG9y dC4gVGhlc2UgZnVuY3Rpb25zIGRvIG5vdCBpbXBsZW1lbnQKICAqIHN1c3Bl bnNpb24gY291bnRzIG9yIGFueSBvdGhlciBoaWdoZXItbGV2ZWwgYWJzdHJh Y3Rpb24uIFRocmVhZHMgd2hpY2gKICAqIGhhdmUgYmVlbiBzdXNwZW5kZWQg bnVtZXJvdXMgdGltZXMgd2lsbCByZXN1bWUgd2l0aCB0aGUgdmVyeSBmaXJz dCBjYWxsCkBAIC0xMDgwLDQgKzEwNzIsMTggQEAgR0NfQVBJIHZvaWQgR0Nf c3VzcGVuZF90aHJlYWQgR0NfUFJPVE8oKHB0aHJlYWRfdCkpOwogR0NfQVBJ IHZvaWQgR0NfcmVzdW1lX3RocmVhZCBHQ19QUk9UTygocHRocmVhZF90KSk7 CiBHQ19BUEkgaW50IEdDX2lzX3RocmVhZF9zdXNwZW5kZWQgR0NfUFJPVE8o KHB0aHJlYWRfdCkpOwogI2VuZGlmCisKKyNpZmRlZiBfX2NwbHVzcGx1cwor ICAgIH0gLyogZW5kIG9mIGV4dGVybiAiQyIgKi8KKyNlbmRpZgorCisjaWYg ZGVmaW5lZChHQ19SRURJUkVDVF9UT19MT0NBTCkgJiYgIWRlZmluZWQoR0Nf TE9DQUxfQUxMT0NfSCkgXAorICAgICYmICFkZWZpbmVkKEdDX0dDSl9IKQor ICAvKiBJbiBjYXNlIG9mIGdjLmggaXMgaW5jbHVkZWQgZnJvbSBnY19nY2ou aCBmaWxlLCBnY19sb2NhbF9hbGxvYy5oCSovCisgIC8qIHNob3VsZCBiZSBp bmNsdWRlZCBhdCB0aGUgZW5kIG9mIGdjX2djai5oIGluc3RlYWQgb2YgZ2Mu aCB0byBoYXZlCSovCisgIC8qIGFsbCBHQ0ogc3ltYm9scyBkZWZpbmVkIGJl Zm9yZSBzb21lIG9mIHRoZW0gYXJlIHJlZGVmaW5lZCB0bwkqLworICAvKiB0 aGVpciB0aHJlYWQtbG9jYWwgY291bnRlcnBhcnRzLgkJCQkJKi8KKyMgaW5j bHVkZSAiZ2NfbG9jYWxfYWxsb2MuaCIKKyNlbmRpZgorCiAjZW5kaWYgLyog X0dDX0ggKi8KZGlmZiAtLWdpdCBhL2JvZWhtLWdjL2luY2x1ZGUvZ2NfZ2Nq LmggYi9ib2VobS1nYy9pbmNsdWRlL2djX2djai5oCmluZGV4IDVlNzllMjcu LmI3NzE3MzQgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL2luY2x1ZGUvZ2NfZ2Nq LmgKKysrIGIvYm9laG0tZ2MvaW5jbHVkZS9nY19nY2ouaApAQCAtNDQsNiAr NDQsMTAgQEAKICMgICBpbmNsdWRlICJnYy5oIgogI2VuZGlmCiAKKyNpZmRl ZiBfX2NwbHVzcGx1cworICBleHRlcm4gIkMiIHsKKyNlbmRpZgorCiAvKiBU aGUgZm9sbG93aW5nIGFsbG9jYXRvcnMgc2lnbmFsIGFuIG91dCBvZiBtZW1v cnkgY29uZGl0aW9uIHdpdGgJKi8KIC8qIHJldHVybiBHQ19vb21fZm4oYnl0 ZXMpOwkJCQkJCSovCiAKQEAgLTExMCw0ICsxMTQsMTIgQEAgZXh0ZXJuIGlu dCBHQ19nY2pfZGVidWdfa2luZDsKIAlHQ19nY2pfbWFsbG9jX2lnbm9yZV9v ZmZfcGFnZShzLGQpCiAjIGVuZGlmCiAKKyNpZmRlZiBfX2NwbHVzcGx1cwor ICB9IC8qIGVuZCBvZiBleHRlcm4gIkMiICovCisjZW5kaWYKKworI2lmIGRl ZmluZWQoR0NfUkVESVJFQ1RfVE9fTE9DQUwpCisjIGluY2x1ZGUgImdjX2xv Y2FsX2FsbG9jLmgiCisjZW5kaWYKKwogI2VuZGlmIC8qIEdDX0dDSl9IICov CmRpZmYgLS1naXQgYS9ib2VobS1nYy9pbmNsdWRlL2djX2xvY2FsX2FsbG9j LmggYi9ib2VobS1nYy9pbmNsdWRlL2djX2xvY2FsX2FsbG9jLmgKaW5kZXgg MTg3NGM3Yi4uZTRmZTIwNSAxMDA2NDQKLS0tIGEvYm9laG0tZ2MvaW5jbHVk ZS9nY19sb2NhbF9hbGxvYy5oCisrKyBiL2JvZWhtLWdjL2luY2x1ZGUvZ2Nf bG9jYWxfYWxsb2MuaApAQCAtNDksNiArNDksMTAgQEAKICMgICBpbmNsdWRl ICJnY19nY2ouaCIKICNlbmRpZgogCisjaWZkZWYgX19jcGx1c3BsdXMKKyAg ZXh0ZXJuICJDIiB7CisjZW5kaWYKKwogLyogV2UgYXNzdW1lIEFOU0kgQyBm b3IgdGhpcyBpbnRlcmZhY2UuCSovCiAKIEdDX1BUUiBHQ19sb2NhbF9tYWxs b2Moc2l6ZV90IGJ5dGVzKTsKQEAgLTg2LDQgKzkwLDggQEAgR0NfUFRSIEdD X2xvY2FsX21hbGxvY19hdG9taWMoc2l6ZV90IGJ5dGVzKTsKICMgICBlbmRp ZgogIyBlbmRpZgogCisjaWZkZWYgX19jcGx1c3BsdXMKKyAgfSAvKiBlbmQg b2YgZXh0ZXJuICJDIiAqLworI2VuZGlmCisKICNlbmRpZiAvKiBHQ19MT0NB TF9BTExPQ19IICovCmRpZmYgLS1naXQgYS9ib2VobS1nYy9pbmNsdWRlL2dj X21hcmsuaCBiL2JvZWhtLWdjL2luY2x1ZGUvZ2NfbWFyay5oCmluZGV4IDk1 M2JiNzQuLjdjOTI5NDYgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL2luY2x1ZGUv Z2NfbWFyay5oCisrKyBiL2JvZWhtLWdjL2luY2x1ZGUvZ2NfbWFyay5oCkBA IC0yOSw2ICsyOSwxMCBAQAogIyAgIGluY2x1ZGUgImdjLmgiCiAjIGVuZGlm CiAKKyMgaWZkZWYgX19jcGx1c3BsdXMKKyAgICBleHRlcm4gIkMiIHsKKyMg ZW5kaWYKKwogLyogQSBjbGllbnQgc3VwcGxpZWQgbWFyayBwcm9jZWR1cmUu ICBSZXR1cm5zIG5ldyBtYXJrIHN0YWNrIHBvaW50ZXIuCSovCiAvKiBQcmlt YXJ5IGVmZmVjdCBzaG91bGQgYmUgdG8gcHVzaCBuZXcgZW50cmllcyBvbiB0 aGUgbWFyayBzdGFjay4JKi8KIC8qIE1hcmsgc3RhY2sgcG9pbnRlciB2YWx1 ZXMgYXJlIHBhc3NlZCBhbmQgcmV0dXJuZWQgZXhwbGljaXRseS4JKi8KQEAg LTE5OSw1ICsyMDMsOCBAQCB2b2lkIEdDX3JlZ2lzdGVyX2Rlc2NyaWJlX3R5 cGVfZm4gR0NfUFJPVE8oKGludCBraW5kLCBHQ19kZXNjcmliZV90eXBlX2Zu IGtuZCkpOwogCQkJCS8qIHRvIGJlIHVzZWQgd2hlbiBwcmludGluZyBvYmpl Y3RzCSovCiAJCQkJLyogb2YgYSBwYXJ0aWN1bGFyIGtpbmQuCQkqLwogCi0j ZW5kaWYgIC8qIEdDX01BUktfSCAqLworIyBpZmRlZiBfX2NwbHVzcGx1cwor ICAgIH0gLyogZW5kIG9mIGV4dGVybiAiQyIgKi8KKyMgZW5kaWYKIAorI2Vu ZGlmICAvKiBHQ19NQVJLX0ggKi8KZGlmZiAtLWdpdCBhL2JvZWhtLWdjL2lu Y2x1ZGUvamF2YXhmYy5oIGIvYm9laG0tZ2MvaW5jbHVkZS9qYXZheGZjLmgK aW5kZXggMjNlMDEwMC4uNjY5YmE2NCAxMDA2NDQKLS0tIGEvYm9laG0tZ2Mv aW5jbHVkZS9qYXZheGZjLmgKKysrIGIvYm9laG0tZ2MvaW5jbHVkZS9qYXZh eGZjLmgKQEAgLTIsNiArMiwxMCBAQAogIyAgIGluY2x1ZGUgImdjLmgiCiAj IGVuZGlmCiAKKyNpZmRlZiBfX2NwbHVzcGx1cworICBleHRlcm4gIkMiIHsK KyNlbmRpZgorCiAvKgogICogSW52b2tlIGFsbCByZW1haW5pbmcgZmluYWxp emVycyB0aGF0IGhhdmVuJ3QgeWV0IGJlZW4gcnVuLgogICogVGhpcyBpcyBu ZWVkZWQgZm9yIHN0cmljdCBjb21wbGlhbmNlIHdpdGggdGhlIEphdmEgc3Rh bmRhcmQsIApAQCAtMTgsNCArMjIsNiBAQAogICovCiB2b2lkIEdDX2ZpbmFs aXplX2FsbCgpOwogCi0KKyNpZmRlZiBfX2NwbHVzcGx1cworICB9IC8qIGVu ZCBvZiBleHRlcm4gIkMiICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmph dmEvQ2hhbmdlTG9nIGIvbGliamF2YS9DaGFuZ2VMb2cKaW5kZXggOTU0YjFh MS4uZDU4MWM4ZiAxMDA2NDQKLS0tIGEvbGliamF2YS9DaGFuZ2VMb2cKKysr IGIvbGliamF2YS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNS0x Mi0wNSAgSXZhbiBNYWlkYW5za2kgIDxpdm1haUBtYWlsLnJ1PgorCisJKiBi b2VobS5jYyAoR0NfZW5hYmxlLCBHQ19kaXNhYmxlKTogUmVtb3ZlIHByb3Rv dHlwZSAoYXMgZGVjbGFyZWQgaW4KKwlib2VobS1nYy9pbmNsdWRlL2djLmgp LgorCVtUSFJFQURfTE9DQUxfQUxMT0NdIChHQ19SRURJUkVDVF9UT19MT0NB TCk6IERlZmluZSBiZWZvcmUgaW5jbHVkZQorCWdjX2djai5oIGZpbGUuCisJ KiBib2VobS5jYzogUmVtb3ZlICdleHRlcm4gIkMiJyBmb3IgaW5jbHVkZWQg Ym9laG0tZ2MvaW5jbHVkZSBoZWFkZXIKKwlmaWxlcyAodGhleSBhcmUgcHJv cGVybHkgZGVjb3JhdGVkIGluc2lkZSBub3cpOyByZW1vdmUgaW5jbHVkZQor CSJnY19sb2NhbF9hbGxvYy5oIiAoYXMgaXQgaXMgaW1wbGljaXRseSBpbmNs dWRlZCBub3cgYnkKKwlib2VobS1nYy9pbmNsdWRlL2djX2djai5oKTsgaW5j bHVkZSAiZ2NfZ2NqLmgiIGJlZm9yZSBhbnkgb3RoZXIKKwlib2VobS1nYyBo ZWFkZXIgZmlsZSAodG8gbGV0IEdDX0dDSl9NQUxMT0MgYmUgcHJvcGVybHkg cmVkZWZpbmVkIHRvCisJYSB0aHJlYWQtbG9jYWwgYWxsb2NhdG9yIGluIGJv ZWhtLWdjL2luY2x1ZGUvZ2NfbG9jYWxfYWxsb2MuaCkuCisKIDIwMTUtMTIt MDMgIEl2YW4gTWFpZGFuc2tpICA8aXZtYWlAbWFpbC5ydT4KIAogCSogYm9l aG0uY2MgKF9Kdl9TZXRHQ0ZyZWVTcGFjZURpdmlzb3IpOiBVc2UgR0NfZ2V0 X2ZyZWVfc3BhY2VfZGl2aXNvcgpkaWZmIC0tZ2l0IGEvbGliamF2YS9ib2Vo bS5jYyBiL2xpYmphdmEvYm9laG0uY2MKaW5kZXggMzRhNmVhZC4uMzk1NjNm MCAxMDA2NDQKLS0tIGEvbGliamF2YS9ib2VobS5jYworKysgYi9saWJqYXZh L2JvZWhtLmNjCkBAIC0zOCw4ICszOCw2IEBAIGRldGFpbHMuICAqLwogI2lu Y2x1ZGUgPGRsZmNuLmg+CiAjZW5kaWYKIAotZXh0ZXJuICJDIgotewogI2lu Y2x1ZGUgPGdjX2NvbmZpZy5oPgogCiAvLyBTZXQgR0NfREVCVUcgYmVmb3Jl IGluY2x1ZGluZyBnYy5oIQpAQCAtNDcsMTkgKzQ1LDEzIEBAIGV4dGVybiAi QyIKICMgZGVmaW5lIEdDX0RFQlVHCiAjZW5kaWYKIAotI2luY2x1ZGUgPGdj X21hcmsuaD4KLSNpbmNsdWRlIDxnY19nY2ouaD4KLSNpbmNsdWRlIDxqYXZh eGZjLmg+ICAvLyBHQ19maW5hbGl6ZV9hbGwgZGVjbGFyYXRpb24uICAKLQog I2lmZGVmIFRIUkVBRF9MT0NBTF9BTExPQwogIyBkZWZpbmUgR0NfUkVESVJF Q1RfVE9fTE9DQUwKLSMgaW5jbHVkZSA8Z2NfbG9jYWxfYWxsb2MuaD4KICNl bmRpZgorI2luY2x1ZGUgPGdjX2djai5oPiAvLyBpbmNsdWRlcyBnYy5oIGFu ZCBnY19sb2NhbF9hbGxvYy5oCiAKLSAgLy8gRnJvbSBib2VobSdzIG1pc2Mu YyAKLSAgdm9pZCBHQ19lbmFibGUoKTsKLSAgdm9pZCBHQ19kaXNhYmxlKCk7 Ci19OworI2luY2x1ZGUgPGdjX21hcmsuaD4KKyNpbmNsdWRlIDxqYXZheGZj Lmg+ICAvLyBHQ19maW5hbGl6ZV9hbGwgZGVjbGFyYXRpb24uCiAKICNkZWZp bmUgTUFZQkVfTUFSSyhPYmosIFRvcCwgTGltaXQsIFNvdXJjZSkgIFwKIAlU b3A9R0NfTUFSS19BTkRfUFVTSCgoR0NfUFRSKSBPYmosIFRvcCwgTGltaXQs IChHQ19QVFIgKikgU291cmNlKQotLSAKMi4xLjQKCg== ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775 Content-Type: application/x-patch; name="=?UTF-8?B?MDAwNC1DaGFuZ2UtR0NfLXVuLXJlZ2lzdGVyX215X3RocmVhZC1wcm90b3R5?= =?UTF-8?B?cGVzLWluLWJvZWhtLnBhdGNo?=" Content-Disposition: attachment Content-Transfer-Encoding: base64 Content-length: 12798 RnJvbSAxZGQ2OWRmMTUwOTNhNTE0ODVkYTgwMDQzZDI0M2U0NzBkNWFiOWRh IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJdmFuIE1haWRhbnNr aSA8aXZtYWlAbWFpbC5ydT4KRGF0ZTogVGh1LCAxNyBEZWMgMjAxNSAwMDo1 MToyMSArMDMwMApTdWJqZWN0OiBbUEFUQ0ggNC80XSBDaGFuZ2UgR0NfW3Vu XXJlZ2lzdGVyX215X3RocmVhZCBwcm90b3R5cGVzIGluIGJvZWhtLWdjCiAo Y29kZSByZWZhY3RvcmluZyB0byBtYXRjaCBCRFdHQyB2NyBBUEkpCgpib2Vo bS1nYy8KICAgICogaW5jbHVkZS9nYy5oIChHQ19EVVBMSUNBVEUpOiBOZXcg cHVibGljIG1hY3JvLgogICAgKEdDX3JlZ2lzdGVyX215X3RocmVhZCk6IENo YW5nZSBwcm90b3R5cGUgKGFjY2VwdCBHQ19zdGFja19iYXNlKikuCiAgICAo R0NfcmVnaXN0ZXJfbXlfdGhyZWFkLCBHQ191bnJlZ2lzdGVyX215X3RocmVh ZCk6IENoYW5nZSBwcm90b3R5cGUKICAgIChyZXR1cm4gb3BlcmF0aW9uIGNv bXBsZXRpb24gc3RhdHVzKTsgdXBkYXRlIGNvbW1lbnQuCiAgICAqIHB0aHJl YWRfc3VwcG9ydC5jIChHQ19yZWdpc3Rlcl9teV90aHJlYWQpOiBDaGFuZ2Ug cHJvdG90eXBlOyBjaGFuZ2UKICAgICJzYiIgdHlwZSB0byBwb2ludGVyOyBk byBub3QgY2FsbCBHQ19nZXRfc3RhY2tfYmFzZSAoaXQgaXMgY2FsbGVkIGJ5 CiAgICBHQ19yZWdpc3Rlcl9teV90aHJlYWQgY2FsbGVyIG5vdyk7IHJldHVy biBHQ19EVVBMSUNBVEUgb3IgR0NfU1VDQ0VTUy4KICAgIChHQ191bnJlZ2lz dGVyX215X3RocmVhZCk6IENoYW5nZSBwcm90b3R5cGU7IHJldHVybiBHQ19T VUNDRVNTLgogICAgKiB3aW4zMl90aHJlYWRzLmMgKEdDX3JlZ2lzdGVyX215 X3RocmVhZCwgR0NfdW5yZWdpc3Rlcl9teV90aHJlYWQpOgogICAgTmV3IGZ1 bmN0aW9uIChzdHViIHJldHVybmluZyBHQ19EVVBMSUNBVEUgaWYgdGhyZWFk cyBhcmUgcmVnaXN0ZXJlZAogICAgaW1wbGljaXRseSBvdGhlcndpc2UgR0Nf VU5JTVBMRU1FTlRFRCkuCgpsaWJqYXZhLwogICAgKiBib2VobS5jYyAoX0p2 X0dDQXR0YWNoVGhyZWFkLCBfSnZfR0NEZXRhY2hUaHJlYWQpOiBEbyBub3Qg dGVzdAogICAgSEFWRV9QVEhSRUFEX0dFVEFUVFJfTlAgYW5kIEdDX1NPTEFS SVNfVEhSRUFEUyBtYWNyb3MsIHRlc3QKICAgIEdDX1BUSFJFQURTIG1hY3Jv IGluc3RlYWQgKGkuZS4sIGludm9rZSBHQyB0aHJlYWQgcmVnaXN0ZXIvdW5y ZWdpc3RlcgogICAgZm9yIGFsbCBtdWx0aS10aHJlYWRlZCB0YXJnZXRzKTsg cmVtb3ZlIHRoZSByZWxldmFudCBjb21tZW50LgogICAgKF9Kdl9HQ0F0dGFj aFRocmVhZCk6IERlY2xhcmUgInNiIiBsb2NhbCB2YXJpYWJsZTsgaW52b2tl CiAgICBHQ19nZXRfc3RhY2tfYmFzZSAocGFzcyBvYnRhaW5lZCBzdGFjayBi YXNlIHRvIEdDX3JlZ2lzdGVyX215X3RocmVhZCk7CiAgICBjYWxsIEp2RmFp bCB3aXRoIHRoZSBhcHByb3ByaWF0ZSBtZXNzYWdlIGluIGNhc2Ugb2YgR0Nf Z2V0X3N0YWNrX2Jhc2UKICAgIG9yIEdDX3JlZ2lzdGVyX215X3RocmVhZCBm YWlsdXJlIChidXQgaGFuZGxlIHByb3Blcmx5IHRoZSBjYXNlIHdoZW4KICAg IEdDX2dldF9zdGFja19iYXNlIHJldHVybnMgR0NfVU5JTVBMRU1FTlRFRCBi dXQgdGhlIHRocmVhZCBpcyBhbHJlYWR5CiAgICByZWdpc3RlcmVkIGltcGxp Y2l0bHkpLgotLS0KIGJvZWhtLWdjL0NoYW5nZUxvZyAgICAgICAgIHwgMTQg KysrKysrKysrKysrKysKIGJvZWhtLWdjL2luY2x1ZGUvZ2MuaCAgICAgIHwg MTUgKysrKysrKy0tLS0tLS0tCiBib2VobS1nYy9wdGhyZWFkX3N1cHBvcnQu YyB8IDE3ICsrKysrKystLS0tLS0tLS0tCiBib2VobS1nYy93aW4zMl90aHJl YWRzLmMgICB8IDE3ICsrKysrKysrKysrKysrKysrCiBsaWJqYXZhL0NoYW5n ZUxvZyAgICAgICAgICB8IDEzICsrKysrKysrKysrKysKIGxpYmphdmEvYm9l aG0uY2MgICAgICAgICAgIHwgMjIgKysrKysrKysrKysrKystLS0tLS0tLQog NiBmaWxlcyBjaGFuZ2VkLCA3MiBpbnNlcnRpb25zKCspLCAyNiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9ib2VobS1nYy9DaGFuZ2VMb2cgYi9ib2Vo bS1nYy9DaGFuZ2VMb2cKaW5kZXggMzViZDQ0Mi4uNDI1M2I5NCAxMDA2NDQK LS0tIGEvYm9laG0tZ2MvQ2hhbmdlTG9nCisrKyBiL2JvZWhtLWdjL0NoYW5n ZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE1LTEyLTE3ICBJdmFuIE1haWRh bnNraSAgPGl2bWFpQG1haWwucnU+CisKKwkqIGluY2x1ZGUvZ2MuaCAoR0Nf RFVQTElDQVRFKTogTmV3IHB1YmxpYyBtYWNyby4KKwkoR0NfcmVnaXN0ZXJf bXlfdGhyZWFkKTogQ2hhbmdlIHByb3RvdHlwZSAoYWNjZXB0IEdDX3N0YWNr X2Jhc2UqKS4KKwkoR0NfcmVnaXN0ZXJfbXlfdGhyZWFkLCBHQ191bnJlZ2lz dGVyX215X3RocmVhZCk6IENoYW5nZSBwcm90b3R5cGUKKwkocmV0dXJuIG9w ZXJhdGlvbiBjb21wbGV0aW9uIHN0YXR1cyk7IHVwZGF0ZSBjb21tZW50Lgor CSogcHRocmVhZF9zdXBwb3J0LmMgKEdDX3JlZ2lzdGVyX215X3RocmVhZCk6 IENoYW5nZSBwcm90b3R5cGU7IGNoYW5nZQorCSJzYiIgdHlwZSB0byBwb2lu dGVyOyBkbyBub3QgY2FsbCBHQ19nZXRfc3RhY2tfYmFzZSAoaXQgaXMgY2Fs bGVkIGJ5CisJR0NfcmVnaXN0ZXJfbXlfdGhyZWFkIGNhbGxlciBub3cpOyBy ZXR1cm4gR0NfRFVQTElDQVRFIG9yIEdDX1NVQ0NFU1MuCisJKEdDX3VucmVn aXN0ZXJfbXlfdGhyZWFkKTogQ2hhbmdlIHByb3RvdHlwZTsgcmV0dXJuIEdD X1NVQ0NFU1MuCisJKiB3aW4zMl90aHJlYWRzLmMgKEdDX3JlZ2lzdGVyX215 X3RocmVhZCwgR0NfdW5yZWdpc3Rlcl9teV90aHJlYWQpOgorCU5ldyBmdW5j dGlvbiAoc3R1YiByZXR1cm5pbmcgR0NfRFVQTElDQVRFIGlmIHRocmVhZHMg YXJlIHJlZ2lzdGVyZWQKKwlpbXBsaWNpdGx5IG90aGVyd2lzZSBHQ19VTklN UExFTUVOVEVEKS4KKwogMjAxNS0xMi0xMCAgSXZhbiBNYWlkYW5za2kgIDxp dm1haUBtYWlsLnJ1PgogCiAJKiBBbWlnYU9TLmMgKEdDX2dldF9zdGFja19i YXNlKTogUmVuYW1lIHRvIEdDX2dldF9tYWluX3N0YWNrX2Jhc2UuCmRpZmYg LS1naXQgYS9ib2VobS1nYy9pbmNsdWRlL2djLmggYi9ib2VobS1nYy9pbmNs dWRlL2djLmgKaW5kZXggNmJhMjBlNi4uOTlhZGVkZCAxMDA2NDQKLS0tIGEv Ym9laG0tZ2MvaW5jbHVkZS9nYy5oCisrKyBiL2JvZWhtLWdjL2luY2x1ZGUv Z2MuaApAQCAtOTM1LDYgKzkzNSw3IEBAIHN0cnVjdCBHQ19zdGFja19iYXNl IHsKIH07CiAKICNkZWZpbmUgR0NfU1VDQ0VTUyAwCisjZGVmaW5lIEdDX0RV UExJQ0FURSAxCQkvKiBXYXMgYWxyZWFkeSByZWdpc3RlcmVkLgkJKi8KICNk ZWZpbmUgR0NfVU5JTVBMRU1FTlRFRCAzCS8qIE5vdCB5ZXQgaW1wbGVtZW50 ZWQgb24gdGhlIHBsYXRmb3JtLgkqLwogCiAvKiBBdHRlbXB0IHRvIGZpbGwg aW4gdGhlIEdDX3N0YWNrX2Jhc2Ugc3RydWN0dXJlIHdpdGggdGhlIHN0YWNr IGJhc2UJKi8KQEAgLTk1NCwxNSArOTU1LDEzIEBAIEdDX0FQSSBpbnQgR0Nf Z2V0X3N0YWNrX2Jhc2UgR0NfUFJPVE8oKHN0cnVjdCBHQ19zdGFja19iYXNl ICopKTsKIC8qIGEgdGhyZWFkIGNhbiBhbGxvY2F0ZSBnYXJiYWdlIGNvbGxl Y3RlZCBtZW1vcnksIG9yIGFzc2lnbiBwb2ludGVycwkqLwogLyogdG8gdGhl IGdhcmJhZ2UgY29sbGVjdGVkIGhlYXAuICBPbmNlIHJlZ2lzdGVyZWQsIGEg dGhyZWFkIHdpbGwgYmUJKi8KIC8qIHN0b3BwZWQgZHVyaW5nIGdhcmJhZ2Ug Y29sbGVjdGlvbnMuCQkJCQkqLwotR0NfQVBJIHZvaWQgR0NfcmVnaXN0ZXJf bXlfdGhyZWFkIEdDX1BST1RPKCh2b2lkKSk7CisvKiBSZXR1cm5zIEdDX1NV Q0NFU1Mgb24gc3VjY2VzcywgR0NfRFVQTElDQVRFIGlmIGFscmVhZHkgZG9u ZS4gCSovCisvKiBPbiBzb21lIHBsYXRmb3JtcyBpdCByZXR1cm5zIEdDX1VO SU1QTEVNRU5URUQuCQkJKi8KK0dDX0FQSSBpbnQgR0NfcmVnaXN0ZXJfbXlf dGhyZWFkIEdDX1BST1RPKChzdHJ1Y3QgR0Nfc3RhY2tfYmFzZSAqKSk7CiAK LS8qIFJlZ2lzdGVyIHRoZSBjdXJyZW50IHRocmVhZCwgd2l0aCB0aGUgaW5k aWNhdGVkIHN0YWNrIGJhc2UsIGFzCSovCi0vKiBhIG5ldyB0aHJlYWQgd2hv c2Ugc3RhY2socykgc2hvdWxkIGJlIHRyYWNlZCBieSB0aGUgR0MuICBJZiBh IAkqLwotLyogcGxhdGZvcm0gZG9lcyBub3QgaW1wbGljaXRseSBkbyBzbywg dGhpcyBtdXN0IGJlIGNhbGxlZCBiZWZvcmUgYQkqLwotLyogdGhyZWFkIGNh biBhbGxvY2F0ZSBnYXJiYWdlIGNvbGxlY3RlZCBtZW1vcnksIG9yIGFzc2ln biBwb2ludGVycwkqLwotLyogdG8gdGhlIGdhcmJhZ2UgY29sbGVjdGVkIGhl YXAuICBPbmNlIHJlZ2lzdGVyZWQsIGEgdGhyZWFkIHdpbGwgYmUJKi8KLS8q IHN0b3BwZWQgZHVyaW5nIGdhcmJhZ2UgY29sbGVjdGlvbnMuCQkJCQkqLwot R0NfQVBJIHZvaWQgR0NfdW5yZWdpc3Rlcl9teV90aHJlYWQgR0NfUFJPVE8o KHZvaWQpKTsKKy8qIFVucmVnaXN0ZXIgdGhlIGN1cnJlbnQgdGhyZWFkLgkJ CQkJKi8KKy8qIFJldHVybnMgR0NfU1VDQ0VTUyBvciBHQ19VTklNUExFTUVO VEVELgkJCQkqLworR0NfQVBJIGludCBHQ191bnJlZ2lzdGVyX215X3RocmVh ZCBHQ19QUk9UTygodm9pZCkpOwogCiAvKiBUaGlzIHJldHVybnMgYSBsaXN0 IG9mIG9iamVjdHMsIGxpbmtlZCB0aHJvdWdoIHRoZWlyIGZpcnN0CQkqLwog Lyogd29yZC4gIEl0cyB1c2UgY2FuIGdyZWF0bHkgcmVkdWNlIGxvY2sgY29u dGVudGlvbiBwcm9ibGVtcywgc2luY2UJKi8KZGlmZiAtLWdpdCBhL2JvZWht LWdjL3B0aHJlYWRfc3VwcG9ydC5jIGIvYm9laG0tZ2MvcHRocmVhZF9zdXBw b3J0LmMKaW5kZXggZTA3N2FiYi4uYWNiMWE1NSAxMDA2NDQKLS0tIGEvYm9l aG0tZ2MvcHRocmVhZF9zdXBwb3J0LmMKKysrIGIvYm9laG0tZ2MvcHRocmVh ZF9zdXBwb3J0LmMKQEAgLTExNzAsMTUgKzExNzAsMTAgQEAgaW50IEdDX2dl dF9zdGFja19iYXNlKHN0cnVjdCBHQ19zdGFja19iYXNlICpzYikKICMgZW5k aWYKIH0KIAotdm9pZCBHQ19yZWdpc3Rlcl9teV90aHJlYWQoKQoraW50IEdD X3JlZ2lzdGVyX215X3RocmVhZChzdHJ1Y3QgR0Nfc3RhY2tfYmFzZSAqc2Ip CiB7CiAgIEdDX3RocmVhZCBtZTsKICAgcHRocmVhZF90IG15X3B0aHJlYWQ7 Ci0jIGlmICFkZWZpbmVkKEdDX0RBUldJTl9USFJFQURTKSB8fCBkZWZpbmVk KElBNjQpCi0gICAgc3RydWN0IEdDX3N0YWNrX2Jhc2Ugc2I7Ci0gICAgaWYg KEdDX2dldF9zdGFja19iYXNlKCZzYikgPT0gR0NfVU5JTVBMRU1FTlRFRCkK LSAgICAgIEFCT1JUKCJDYW4gbm90IGRldGVybWluZSBzdGFjayBiYXNlIGZv ciBhdHRhY2hlZCB0aHJlYWQiKTsKLSMgZW5kaWYKIAogICBteV9wdGhyZWFk ID0gcHRocmVhZF9zZWxmKCk7CiAjICAgaWZkZWYgREVCVUdfVEhSRUFEUwpA QCAtMTE5NSw3ICsxMTkwLDcgQEAgdm9pZCBHQ19yZWdpc3Rlcl9teV90aHJl YWQoKQogIyAgIGlmZGVmIERFQlVHX1RIUkVBRFMKICAgICAgIEdDX3ByaW50 ZjEoIkF0dGVtcHQgdG8gcmUtYXR0YWNoIGtub3duIHRocmVhZCAweCVseFxu IiwgbXlfcHRocmVhZCk7CiAjICAgZW5kaWYKLSAgICAgIHJldHVybjsKKyAg ICAgIHJldHVybiBHQ19EVVBMSUNBVEU7CiAgICAgfQogCiAgIExPQ0soKTsK QEAgLTEyMDgsNyArMTIwMyw3IEBAIHZvaWQgR0NfcmVnaXN0ZXJfbXlfdGhy ZWFkKCkKICNpZmRlZiBHQ19EQVJXSU5fVEhSRUFEUwogICAgIG1lIC0+IHN0 b3BfaW5mby5tYWNoX3RocmVhZCA9IG1hY2hfdGhyZWFkX3NlbGYoKTsKICNl bHNlCi0gICAgbWUgLT4gc3RhY2tfZW5kID0gc2IubWVtX2Jhc2U7CisgICAg bWUgLT4gc3RhY2tfZW5kID0gc2IgLT4gbWVtX2Jhc2U7CiAgICAgCiAjICAg aWZkZWYgU1RBQ0tfR1JPV1NfRE9XTgogICAgICAgbWUgLT4gc3RvcF9pbmZv LnN0YWNrX3B0ciA9IG1lIC0+IHN0YWNrX2VuZCAtIDB4MTA7CkBAIC0xMjE4 LDE2ICsxMjEzLDE3IEBAIHZvaWQgR0NfcmVnaXN0ZXJfbXlfdGhyZWFkKCkK ICNlbmRpZgogCiAjICAgaWZkZWYgSUE2NAotICAgICAgbWUgLT4gYmFja2lu Z19zdG9yZV9lbmQgPSBzYi5yZWdfYmFzZTsKKyAgICAgIG1lIC0+IGJhY2tp bmdfc3RvcmVfZW5kID0gc2IgLT4gcmVnX2Jhc2U7CiAjICAgZW5kaWYgLyog SUE2NCAqLwogCiAjICAgaWYgZGVmaW5lZChUSFJFQURfTE9DQUxfQUxMT0Mp ICYmICFkZWZpbmVkKERCR19IRFJTX0FMTCkKICAgICAgICAgR0NfaW5pdF90 aHJlYWRfbG9jYWwobWUpOwogIyAgIGVuZGlmCiAgIFVOTE9DSygpOworICBy ZXR1cm4gR0NfU1VDQ0VTUzsKIH0KIAotdm9pZCBHQ191bnJlZ2lzdGVyX215 X3RocmVhZCgpCitpbnQgR0NfdW5yZWdpc3Rlcl9teV90aHJlYWQgR0NfUFJP VE8oKHZvaWQpKQogewogICBwdGhyZWFkX3QgbXlfcHRocmVhZDsKIApAQCAt MTIzOCw2ICsxMjM0LDcgQEAgdm9pZCBHQ191bnJlZ2lzdGVyX215X3RocmVh ZCgpCiAjICAgZW5kaWYKIAogICBHQ190aHJlYWRfZXhpdF9wcm9jICgwKTsK KyAgcmV0dXJuIEdDX1NVQ0NFU1M7CiB9CiAKIHZvaWQgKiBHQ19zdGFydF9y b3V0aW5lKHZvaWQgKiBhcmcpCmRpZmYgLS1naXQgYS9ib2VobS1nYy93aW4z Ml90aHJlYWRzLmMgYi9ib2VobS1nYy93aW4zMl90aHJlYWRzLmMKaW5kZXgg MzU0ZTVhNy4uYTMyYmY4ZCAxMDA2NDQKLS0tIGEvYm9laG0tZ2Mvd2luMzJf dGhyZWFkcy5jCisrKyBiL2JvZWhtLWdjL3dpbjMyX3RocmVhZHMuYwpAQCAt NTI3LDYgKzUyNywyMyBAQCBzdGF0aWMgRFdPUkQgV0lOQVBJIHRocmVhZF9z dGFydChMUFZPSUQgYXJnKQogCiAjZW5kaWYgLyogIUNZR1dJTjMyICovCiAK K2ludCBHQ19yZWdpc3Rlcl9teV90aHJlYWQoc3RydWN0IEdDX3N0YWNrX2Jh c2UgKnNiKQoreworIyAgIGlmIGRlZmluZWQoR0NfRExMKSAmJiAhZGVmaW5l ZChDWUdXSU4zMikgJiYgIWRlZmluZWQoTVNXSU5DRSkKKwkvKiBSZWdpc3Rl cmVkIGJ5IERsbE1haW4uICovCisJcmV0dXJuIEdDX0RVUExJQ0FURTsKKyMg ICBlbHNlCisJLyogVE9ETzogSW1wbGVtZW50LiAqLworCXJldHVybiBHQ19V TklNUExFTUVOVEVEOworIyAgIGVuZGlmCit9CisKK2ludCBHQ191bnJlZ2lz dGVyX215X3RocmVhZCBHQ19QUk9UTygodm9pZCkpCit7CisgICAgLyogVE9E TzogSW1wbGVtZW50LiAqLworICAgIHJldHVybiBHQ19VTklNUExFTUVOVEVE OworfQorCiAjaWZkZWYgTVNXSU5DRQogCiB0eXBlZGVmIHN0cnVjdCB7CmRp ZmYgLS1naXQgYS9saWJqYXZhL0NoYW5nZUxvZyBiL2xpYmphdmEvQ2hhbmdl TG9nCmluZGV4IGQ1ODFjOGYuLjVkYThkZjEgMTAwNjQ0Ci0tLSBhL2xpYmph dmEvQ2hhbmdlTG9nCisrKyBiL2xpYmphdmEvQ2hhbmdlTG9nCkBAIC0xLDMg KzEsMTYgQEAKKzIwMTUtMTItMTcgIEl2YW4gTWFpZGFuc2tpICA8aXZtYWlA bWFpbC5ydT4KKworCSogYm9laG0uY2MgKF9Kdl9HQ0F0dGFjaFRocmVhZCwg X0p2X0dDRGV0YWNoVGhyZWFkKTogRG8gbm90IHRlc3QKKwlIQVZFX1BUSFJF QURfR0VUQVRUUl9OUCBhbmQgR0NfU09MQVJJU19USFJFQURTIG1hY3Jvcywg dGVzdAorCUdDX1BUSFJFQURTIG1hY3JvIGluc3RlYWQgKGkuZS4sIGludm9r ZSBHQyB0aHJlYWQgcmVnaXN0ZXIvdW5yZWdpc3RlcgorCWZvciBhbGwgbXVs dGktdGhyZWFkZWQgdGFyZ2V0cyk7IHJlbW92ZSB0aGUgcmVsZXZhbnQgY29t bWVudC4KKwkoX0p2X0dDQXR0YWNoVGhyZWFkKTogRGVjbGFyZSAic2IiIGxv Y2FsIHZhcmlhYmxlOyBpbnZva2UKKwlHQ19nZXRfc3RhY2tfYmFzZSAocGFz cyBvYnRhaW5lZCBzdGFjayBiYXNlIHRvIEdDX3JlZ2lzdGVyX215X3RocmVh ZCk7CisJY2FsbCBKdkZhaWwgd2l0aCB0aGUgYXBwcm9wcmlhdGUgbWVzc2Fn ZSBpbiBjYXNlIG9mIEdDX2dldF9zdGFja19iYXNlCisJb3IgR0NfcmVnaXN0 ZXJfbXlfdGhyZWFkIGZhaWx1cmUgKGJ1dCBoYW5kbGUgcHJvcGVybHkgdGhl IGNhc2Ugd2hlbgorCUdDX2dldF9zdGFja19iYXNlIHJldHVybnMgR0NfVU5J TVBMRU1FTlRFRCBidXQgdGhlIHRocmVhZCBpcyBhbHJlYWR5CisJcmVnaXN0 ZXJlZCBpbXBsaWNpdGx5KS4KKwogMjAxNS0xMi0wNSAgSXZhbiBNYWlkYW5z a2kgIDxpdm1haUBtYWlsLnJ1PgogCiAJKiBib2VobS5jYyAoR0NfZW5hYmxl LCBHQ19kaXNhYmxlKTogUmVtb3ZlIHByb3RvdHlwZSAoYXMgZGVjbGFyZWQg aW4KZGlmZiAtLWdpdCBhL2xpYmphdmEvYm9laG0uY2MgYi9saWJqYXZhL2Jv ZWhtLmNjCmluZGV4IDM5NTYzZjAuLjRlYzkxYWYgMTAwNjQ0Ci0tLSBhL2xp YmphdmEvYm9laG0uY2MKKysrIGIvbGliamF2YS9ib2VobS5jYwpAQCAtNzM4 LDIwICs3MzgsMjYgQEAgX0p2X0lzVGhyZWFkU3VzcGVuZGVkIChfSnZfVGhy ZWFkX3QgKnRocmVhZCkKIHZvaWQKIF9Kdl9HQ0F0dGFjaFRocmVhZCAoKQog ewotICAvLyBUaGUgcmVnaXN0cmF0aW9uIGludGVyZmFjZSBpcyBvbmx5IGRl ZmluZWQgb24gcG9zaXh5IHN5c3RlbXMgYW5kCi0gIC8vIG9ubHkgYWN0dWFs bHkgd29ya3MgaWYgcHRocmVhZF9nZXRhdHRyX25wIGlzIGRlZmluZWQuCi0g IC8vIEZJWE1FOiB1bnRpbCBnYzcgaXQgaXMgc2ltcGxlciB0byBkaXNhYmxl IHRoaXMgb24gc29sYXJpcy4KLSNpZiBkZWZpbmVkKEhBVkVfUFRIUkVBRF9H RVRBVFRSX05QKSAmJiAhZGVmaW5lZChHQ19TT0xBUklTX1RIUkVBRFMpIFwK LSAgICAmJiAhZGVmaW5lZChHQ19XSU4zMl9USFJFQURTKQotICBHQ19yZWdp c3Rlcl9teV90aHJlYWQgKCk7CisjaWYgZGVmaW5lZChHQ19QVEhSRUFEUykg fHwgZGVmaW5lZChHQ19XSU4zMl9USFJFQURTKQorICBzdHJ1Y3QgR0Nfc3Rh Y2tfYmFzZSBzYjsKKworICBpZiAoR0NfZ2V0X3N0YWNrX2Jhc2UgKCZzYikg PT0gR0NfVU5JTVBMRU1FTlRFRCkKKyAgICB7CisgICAgICAvLyBEbyBub3Qg ZmFpbCBpbiBjYXNlIG9mIGltcGxpY2l0bHkgcmVnaXN0ZXJlZCB0aHJlYWRz LgorICAgICAgc2IubWVtX2Jhc2UgPSAmc2I7CisgICAgICBpZiAoR0NfcmVn aXN0ZXJfbXlfdGhyZWFkICgmc2IpICE9IEdDX0RVUExJQ0FURSkKKyAgICAg ICAgSnZGYWlsICgiQ2Fubm90IGRldGVybWluZSBzdGFjayBiYXNlIGZvciBh dHRhY2hlZCB0aHJlYWQiKTsKKyAgICAgIHJldHVybjsKKyAgICB9CisgIGlm IChHQ19yZWdpc3Rlcl9teV90aHJlYWQgKCZzYikgPT0gR0NfVU5JTVBMRU1F TlRFRCkKKyAgICBKdkZhaWwgKCJDYW5ub3QgYXR0YWNoIHRocmVhZCIpOwog I2VuZGlmCiB9CiAKIHZvaWQKIF9Kdl9HQ0RldGFjaFRocmVhZCAoKQogewot I2lmIGRlZmluZWQoSEFWRV9QVEhSRUFEX0dFVEFUVFJfTlApICYmICFkZWZp bmVkKEdDX1NPTEFSSVNfVEhSRUFEUykgXAotICAgICYmICFkZWZpbmVkKEdD X1dJTjMyX1RIUkVBRFMpCisjaWYgZGVmaW5lZChHQ19QVEhSRUFEUykgfHwg ZGVmaW5lZChHQ19XSU4zMl9USFJFQURTKQogICBHQ191bnJlZ2lzdGVyX215 X3RocmVhZCAoKTsKICNlbmRpZgogfQotLSAKMi4xLjQKCg== ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775 Content-Type: application/x-patch; name="=?UTF-8?B?MDAwMy1DaGFuZ2UtR0NfZ2V0Xy10aHJlYWQtbWFpbl8tc3RhY2tfYmFzZS1w?= =?UTF-8?B?cm90b3R5cGVzLnBhdGNo?=" Content-Disposition: attachment Content-Transfer-Encoding: base64 Content-length: 22249 RnJvbSA4YmMyNjNhNjhhYzNkOTljMmNlODBhY2M0YmRmYjliMzdkMmVjZmQ1 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJdmFuIE1haWRhbnNr aSA8aXZtYWlAbWFpbC5ydT4KRGF0ZTogVGh1LCAxMCBEZWMgMjAxNSAyMTo0 Njo1NCArMDMwMApTdWJqZWN0OiBbUEFUQ0ggMy80XSBDaGFuZ2UgR0NfZ2V0 X1t0aHJlYWQvbWFpbl9dc3RhY2tfYmFzZSBwcm90b3R5cGVzIChjb2RlCiBy ZWZhY3RvcmluZyB0byBtYXRjaCBCRFdHQyB2NyBBUEkpCgpHQ19nZXRfc3Rh Y2tfYmFzZSByZW5hbWVkIHRvIEdDX2dldF9tYWluX3N0YWNrX2Jhc2U7CnB0 cl90IEdDX2dldF90aHJlYWRfc3RhY2tfYmFzZSgpIHB1YmxpYyBwcm90b3R5 cGUgY2hhbmdlZCB0bwppbnQgR0NfZ2V0X3N0YWNrX2Jhc2Uoc3RydWN0IEdD X3N0YWNrX2Jhc2UqKTsKR0NfZ2V0X3N0YWNrX2Jhc2Ugbm93IGRlZmluZWQg Zm9yIGFsbCB0YXJnZXRzIChidXQgcmV0dXJucwpHQ19VTklNUExFTUVOVEVE IGlmIG5vIGltcGxlbWVudGF0aW9uIGZvciB0aGUgdGFyZ2V0KS4KCmJvZWht LWdjLwogICAgKiBBbWlnYU9TLmMgKEdDX2dldF9zdGFja19iYXNlKTogUmVu YW1lIHRvIEdDX2dldF9tYWluX3N0YWNrX2Jhc2UuCiAgICAqIGluY2x1ZGUv cHJpdmF0ZS9nY19wcml2LmggKEdDX2dldF9zdGFja19iYXNlKTogTGlrZXdp c2UuCiAgICAqIGluY2x1ZGUvZ2MuaCAoc3RydWN0IEdDX3N0YWNrX2Jhc2Up OiBOZXcgcHVibGljIHR5cGUuCiAgICAoR0NfU1VDQ0VTUywgR0NfVU5JTVBM RU1FTlRFRCk6IE5ldyBwdWJsaWMgbWFjcm8uCiAgICAoR0NfZ2V0X3RocmVh ZF9zdGFja19iYXNlKTogUmVwbGFjZSB3aXRoCiAgICBpbnQgR0NfZ2V0X3N0 YWNrX2Jhc2Uoc3RydWN0IEdDX3N0YWNrX2Jhc2UqKTsgZGVjbGFyZSBldmVu IGluCiAgICBhIHNpbmdsZS10aHJlYWRlZCBjYXNlOyByZWZpbmUgY29tbWVu dC4KICAgICogbWlzYy5jIChHQ19pbml0X2lubmVyKTogUmVuYW1lIEdDX2dl dF9zdGFja19iYXNlIHRvCiAgICBHQ19nZXRfbWFpbl9zdGFja19iYXNlLgog ICAgKEdDX2luaXRfaW5uZXIpOiBSZXBsYWNlIEdDX2dldF90aHJlYWRfc3Rh Y2tfYmFzZSB0bwogICAgR0NfZ2V0X3N0YWNrX2Jhc2UuCiAgICAqIHdpbjMy X3RocmVhZHMuYyBbQ1lHV0lOMzJdIChHQ19nZXRfdGhyZWFkX3N0YWNrX2Jh c2UpOiBMaWtld2lzZS4KICAgICogb3NfZGVwLmMgW01TV0lOMzIgfHwgTVNX SU5DRSB8fCBCRU9TIHx8IE9TMl0gKEdDX2dldF9zdGFja19iYXNlKToKICAg IEFjY29tbW9kYXRlIHRvIEdDX2dldF9zdGFja19iYXNlIHByb3RvdHlwZSBj aGFuZ2UuCiAgICAqIHdpbjMyX3RocmVhZHMuYyAoR0NfbmV3X3RocmVhZCk6 IExpa2V3aXNlLgogICAgKiBvc19kZXAuYyAoSEFWRV9HRVRfU1RBQ0tfQkFT RSk6IERlZmluZSBpbiBldmVyeSBjYXNlIHdoZW4KICAgIHRhcmdldC1zcGVj aWZpYyBHQ19nZXRfc3RhY2tfYmFzZSBpcyBkZWZpbmVkIChpbmNsdWRpbmcg Zm9yIGNhc2VzCiAgICB3aGVuIEdDX2dldF9zdGFja19iYXNlIGlzIHB0aHJl YWRfc3VwcG9ydC5jIG9yIHdpbjMyX3RocmVhZHMuYykuCiAgICAoR0NfZ2V0 X3N0YWNrX2Jhc2UpOiBSZW5hbWUgdG8gR0NfZ2V0X21haW5fc3RhY2tfYmFz ZSAoZXhjZXB0IGZvcgogICAgV2luMzIsIFdpbkNFLCBCZU9TIGFuZCBPUy8y KS4KICAgIChHRVRfTUFJTl9TVEFDS0JBU0VfU1BFQ0lBTCk6IERlZmluZSBp biBldmVyeSBjYXNlIHdoZW4KICAgIHRhcmdldC1zcGVjaWZpYyBHQ19nZXRf bWFpbl9zdGFja19iYXNlIGlzIGRlZmluZWQuCiAgICBbIUhBVkVfR0VUX1NU QUNLX0JBU0VdIChHQ19nZXRfc3RhY2tfYmFzZSk6IERlZmluZSB3aXRoIHRo ZSBkZWZhdWx0CiAgICBpbXBsZW1lbnRhdGlvbi4KICAgIFshR0VUX01BSU5f U1RBQ0tCQVNFX1NQRUNJQUxdIChHQ19nZXRfbWFpbl9zdGFja19iYXNlKTog TGlrZXdpc2UuCiAgICAqIHB0aHJlYWRfc3VwcG9ydC5jIChHQ19nZXRfdGhy ZWFkX3N0YWNrX2Jhc2UpOiBSZXBsYWNlIHRvCiAgICBHQ19nZXRfc3RhY2tf YmFzZTsgc2V0IHJlZ19iYXNlIGZvciBJQTY0LgogICAgWyFHQ19EQVJXSU5f VEhSRUFEU10gKEdDX3JlZ2lzdGVyX215X3RocmVhZCk6IENhbGwgR0NfZ2V0 X3N0YWNrX2Jhc2UKICAgIGluc3RlYWQgb2YgR0NfZ2V0X3RocmVhZF9zdGFj a19iYXNlIGFuZCBHQ19zYXZlX3JlZ3NfaW5fc3RhY2suCi0tLQogYm9laG0t Z2MvQW1pZ2FPUy5jICAgICAgICAgICAgICAgICB8ICA0ICstLQogYm9laG0t Z2MvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICB8IDMyICsrKysrKysrKysr KysrKysrKysKIGJvZWhtLWdjL2luY2x1ZGUvZ2MuaCAgICAgICAgICAgICAg fCAyMCArKysrKysrKysrLS0KIGJvZWhtLWdjL2luY2x1ZGUvcHJpdmF0ZS9n Y19wcml2LmggfCAgMiArLQogYm9laG0tZ2MvbWlzYy5jICAgICAgICAgICAg ICAgICAgICB8ICA4ICsrKy0tCiBib2VobS1nYy9vc19kZXAuYyAgICAgICAg ICAgICAgICAgIHwgNjMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLS0KIGJvZWhtLWdjL3B0aHJlYWRfc3VwcG9ydC5jICAgICAgICAg fCAzMCArKysrKysrKysrLS0tLS0tLS0KIGJvZWhtLWdjL3dpbjMyX3RocmVh ZHMuYyAgICAgICAgICAgfCAxNCArKysrKy0tLS0KIDggZmlsZXMgY2hhbmdl ZCwgMTM5IGluc2VydGlvbnMoKyksIDM0IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2JvZWhtLWdjL0FtaWdhT1MuYyBiL2JvZWhtLWdjL0FtaWdhT1Mu YwppbmRleCBmNDAyNGE3Li5iNzZmNDQ2IDEwMDY0NAotLS0gYS9ib2VobS1n Yy9BbWlnYU9TLmMKKysrIGIvYm9laG0tZ2MvQW1pZ2FPUy5jCkBAIC00MCw3 ICs0MCw3IEBACiAgICBGaW5kIHRoZSBiYXNlIG9mIHRoZSBzdGFjay4KICoq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKi8KIAotcHRyX3QgR0NfZ2V0X3N0YWNrX2Jh c2UoKQorcHRyX3QgR0NfZ2V0X21haW5fc3RhY2tfYmFzZSgpCiB7CiAgICAg c3RydWN0IFByb2Nlc3MgKnByb2MgPSAoc3RydWN0IFByb2Nlc3MqKVN5c0Jh c2UtPlRoaXNUYXNrOwogIApAQCAtNTgsNyArNTgsNyBAQCBwdHJfdCBHQ19n ZXRfc3RhY2tfYmFzZSgpCiB9CiAKICNpZiAwIC8qIG9sZCB2ZXJzaW9uICov Ci1wdHJfdCBHQ19nZXRfc3RhY2tfYmFzZSgpCitwdHJfdCBHQ19nZXRfbWFp bl9zdGFja19iYXNlKCkKIHsKICAgICBleHRlcm4gc3RydWN0IFdCU3RhcnR1 cCAqX1dCZW5jaE1zZzsKICAgICBleHRlcm4gbG9uZyBfX2Jhc2U7CmRpZmYg LS1naXQgYS9ib2VobS1nYy9DaGFuZ2VMb2cgYi9ib2VobS1nYy9DaGFuZ2VM b2cKaW5kZXggOTk4ODYwNS4uMzViZDQ0MiAxMDA2NDQKLS0tIGEvYm9laG0t Z2MvQ2hhbmdlTG9nCisrKyBiL2JvZWhtLWdjL0NoYW5nZUxvZwpAQCAtMSwz ICsxLDM1IEBACisyMDE1LTEyLTEwICBJdmFuIE1haWRhbnNraSAgPGl2bWFp QG1haWwucnU+CisKKwkqIEFtaWdhT1MuYyAoR0NfZ2V0X3N0YWNrX2Jhc2Up OiBSZW5hbWUgdG8gR0NfZ2V0X21haW5fc3RhY2tfYmFzZS4KKwkqIGluY2x1 ZGUvcHJpdmF0ZS9nY19wcml2LmggKEdDX2dldF9zdGFja19iYXNlKTogTGlr ZXdpc2UuCisJKiBpbmNsdWRlL2djLmggKHN0cnVjdCBHQ19zdGFja19iYXNl KTogTmV3IHB1YmxpYyB0eXBlLgorCShHQ19TVUNDRVNTLCBHQ19VTklNUExF TUVOVEVEKTogTmV3IHB1YmxpYyBtYWNyby4KKwkoR0NfZ2V0X3RocmVhZF9z dGFja19iYXNlKTogUmVwbGFjZSB3aXRoCisJaW50IEdDX2dldF9zdGFja19i YXNlKHN0cnVjdCBHQ19zdGFja19iYXNlKik7IGRlY2xhcmUgZXZlbiBpbgor CWEgc2luZ2xlLXRocmVhZGVkIGNhc2U7IHJlZmluZSBjb21tZW50LgorCSog bWlzYy5jIChHQ19pbml0X2lubmVyKTogUmVuYW1lIEdDX2dldF9zdGFja19i YXNlIHRvCisJR0NfZ2V0X21haW5fc3RhY2tfYmFzZS4KKwkoR0NfaW5pdF9p bm5lcik6IFJlcGxhY2UgR0NfZ2V0X3RocmVhZF9zdGFja19iYXNlIHRvCisJ R0NfZ2V0X3N0YWNrX2Jhc2UuCisJKiB3aW4zMl90aHJlYWRzLmMgW0NZR1dJ TjMyXSAoR0NfZ2V0X3RocmVhZF9zdGFja19iYXNlKTogTGlrZXdpc2UuCisJ KiBvc19kZXAuYyBbTVNXSU4zMiB8fCBNU1dJTkNFIHx8IEJFT1MgfHwgT1My XSAoR0NfZ2V0X3N0YWNrX2Jhc2UpOgorCUFjY29tbW9kYXRlIHRvIEdDX2dl dF9zdGFja19iYXNlIHByb3RvdHlwZSBjaGFuZ2UuCisJKiB3aW4zMl90aHJl YWRzLmMgKEdDX25ld190aHJlYWQpOiBMaWtld2lzZS4KKwkqIG9zX2RlcC5j IChIQVZFX0dFVF9TVEFDS19CQVNFKTogRGVmaW5lIGluIGV2ZXJ5IGNhc2Ug d2hlbgorCXRhcmdldC1zcGVjaWZpYyBHQ19nZXRfc3RhY2tfYmFzZSBpcyBk ZWZpbmVkIChpbmNsdWRpbmcgZm9yIGNhc2VzCisJd2hlbiBHQ19nZXRfc3Rh Y2tfYmFzZSBpcyBwdGhyZWFkX3N1cHBvcnQuYyBvciB3aW4zMl90aHJlYWRz LmMpLgorCShHQ19nZXRfc3RhY2tfYmFzZSk6IFJlbmFtZSB0byBHQ19nZXRf bWFpbl9zdGFja19iYXNlIChleGNlcHQgZm9yCisJV2luMzIsIFdpbkNFLCBC ZU9TIGFuZCBPUy8yKS4KKwkoR0VUX01BSU5fU1RBQ0tCQVNFX1NQRUNJQUwp OiBEZWZpbmUgaW4gZXZlcnkgY2FzZSB3aGVuCisJdGFyZ2V0LXNwZWNpZmlj IEdDX2dldF9tYWluX3N0YWNrX2Jhc2UgaXMgZGVmaW5lZC4KKwlbIUhBVkVf R0VUX1NUQUNLX0JBU0VdIChHQ19nZXRfc3RhY2tfYmFzZSk6IERlZmluZSB3 aXRoIHRoZSBkZWZhdWx0CisJaW1wbGVtZW50YXRpb24uCisJWyFHRVRfTUFJ Tl9TVEFDS0JBU0VfU1BFQ0lBTF0gKEdDX2dldF9tYWluX3N0YWNrX2Jhc2Up OiBMaWtld2lzZS4KKwkqIHB0aHJlYWRfc3VwcG9ydC5jIChHQ19nZXRfdGhy ZWFkX3N0YWNrX2Jhc2UpOiBSZXBsYWNlIHRvCisJR0NfZ2V0X3N0YWNrX2Jh c2U7IHNldCByZWdfYmFzZSBmb3IgSUE2NC4KKwlbIUdDX0RBUldJTl9USFJF QURTXSAoR0NfcmVnaXN0ZXJfbXlfdGhyZWFkKTogQ2FsbCBHQ19nZXRfc3Rh Y2tfYmFzZQorCWluc3RlYWQgb2YgR0NfZ2V0X3RocmVhZF9zdGFja19iYXNl IGFuZCBHQ19zYXZlX3JlZ3NfaW5fc3RhY2suCisKIDIwMTUtMTItMDUgIEl2 YW4gTWFpZGFuc2tpICA8aXZtYWlAbWFpbC5ydT4KIAogCSogaW5jbHVkZS9n Yy5oIChHQ19zdXNwZW5kX3RocmVhZCwgR0NfcmVzdW1lX3RocmVhZCwKZGlm ZiAtLWdpdCBhL2JvZWhtLWdjL2luY2x1ZGUvZ2MuaCBiL2JvZWhtLWdjL2lu Y2x1ZGUvZ2MuaAppbmRleCBmMTkzMDY1Li42YmEyMGU2IDEwMDY0NAotLS0g YS9ib2VobS1nYy9pbmNsdWRlL2djLmgKKysrIGIvYm9laG0tZ2MvaW5jbHVk ZS9nYy5oCkBAIC05MjYsNiArOTI2LDI0IEBAIEdDX0FQSSB2b2lkICgqR0Nf aXNfdmlzaWJsZV9wcmludF9wcm9jKQogIyBpbmNsdWRlICJnY19wdGhyZWFk X3JlZGlyZWN0cy5oIgogI2VuZGlmCiAKKy8qIFN0cnVjdHVyZSByZXByZXNl bnRpbmcgdGhlIGJhc2Ugb2YgYSB0aHJlYWQgc3RhY2suCQkJKi8KK3N0cnVj dCBHQ19zdGFja19iYXNlIHsKKyAgICB2b2lkICogbWVtX2Jhc2U7IC8qIEJh c2Ugb2YgbWVtb3J5IHN0YWNrLiAqLworIyAgIGlmIGRlZmluZWQoX19pYTY0 KSB8fCBkZWZpbmVkKF9faWE2NF9fKSB8fCBkZWZpbmVkKF9NX0lBNjQpCisJ dm9pZCAqIHJlZ19iYXNlOyAvKiBCYXNlIG9mIHNlcGFyYXRlIHJlZ2lzdGVy IHN0YWNrLiAqLworIyAgIGVuZGlmCit9OworCisjZGVmaW5lIEdDX1NVQ0NF U1MgMAorI2RlZmluZSBHQ19VTklNUExFTUVOVEVEIDMJLyogTm90IHlldCBp bXBsZW1lbnRlZCBvbiB0aGUgcGxhdGZvcm0uCSovCisKKy8qIEF0dGVtcHQg dG8gZmlsbCBpbiB0aGUgR0Nfc3RhY2tfYmFzZSBzdHJ1Y3R1cmUgd2l0aCB0 aGUgc3RhY2sgYmFzZQkqLworLyogZm9yIHRoaXMgdGhyZWFkLiAgVGhpcyBh cHBlYXJzIHRvIGJlIHJlcXVpcmVkIHRvIGltcGxlbWVudCBhbnl0aGluZwkq LworLyogbGlrZSB0aGUgSk5JIEF0dGFjaEN1cnJlbnRUaHJlYWQgaW4gYW4g ZW52aXJvbm1lbnQgaW4gd2hpY2ggbmV3CSovCisvKiB0aHJlYWRzIGFyZSBu b3QgYXV0b21hdGljYWxseSByZWdpc3RlcmVkIHdpdGggdGhlIGNvbGxlY3Rv ci4gCSovCisvKiBSZXR1cm5zIEdDX1NVQ0NFU1Mgb3IgR0NfVU5JTVBMRU1F TlRFRC4JCQkJKi8KK0dDX0FQSSBpbnQgR0NfZ2V0X3N0YWNrX2Jhc2UgR0Nf UFJPVE8oKHN0cnVjdCBHQ19zdGFja19iYXNlICopKTsKKwogIyBpZiBkZWZp bmVkKFBDUikgfHwgZGVmaW5lZChHQ19TT0xBUklTX1RIUkVBRFMpIHx8IFwK ICAgICAgZGVmaW5lZChHQ19QVEhSRUFEUykgfHwgZGVmaW5lZChHQ19XSU4z Ml9USFJFQURTKQogICAgCS8qIEFueSBmbGF2b3Igb2YgdGhyZWFkcyBleGNl cHQgU1JDX00zLgkqLwpAQCAtOTQ2LDggKzk2NCw2IEBAIEdDX0FQSSB2b2lk IEdDX3JlZ2lzdGVyX215X3RocmVhZCBHQ19QUk9UTygodm9pZCkpOwogLyog c3RvcHBlZCBkdXJpbmcgZ2FyYmFnZSBjb2xsZWN0aW9ucy4JCQkJCSovCiBH Q19BUEkgdm9pZCBHQ191bnJlZ2lzdGVyX215X3RocmVhZCBHQ19QUk9UTygo dm9pZCkpOwogCi1HQ19BUEkgR0NfUFRSIEdDX2dldF90aHJlYWRfc3RhY2tf YmFzZSBHQ19QUk9UTygodm9pZCkpOwotCiAvKiBUaGlzIHJldHVybnMgYSBs aXN0IG9mIG9iamVjdHMsIGxpbmtlZCB0aHJvdWdoIHRoZWlyIGZpcnN0CQkq LwogLyogd29yZC4gIEl0cyB1c2UgY2FuIGdyZWF0bHkgcmVkdWNlIGxvY2sg Y29udGVudGlvbiBwcm9ibGVtcywgc2luY2UJKi8KIC8qIHRoZSBhbGxvY2F0 aW9uIGxvY2sgY2FuIGJlIGFjcXVpcmVkIGFuZCByZWxlYXNlZCBtYW55IGZl d2VyIHRpbWVzLgkqLwpkaWZmIC0tZ2l0IGEvYm9laG0tZ2MvaW5jbHVkZS9w cml2YXRlL2djX3ByaXYuaCBiL2JvZWhtLWdjL2luY2x1ZGUvcHJpdmF0ZS9n Y19wcml2LmgKaW5kZXggNGRiZmE3ZC4uYTZmZGE0NiAxMDA2NDQKLS0tIGEv Ym9laG0tZ2MvaW5jbHVkZS9wcml2YXRlL2djX3ByaXYuaAorKysgYi9ib2Vo bS1nYy9pbmNsdWRlL3ByaXZhdGUvZ2NfcHJpdi5oCkBAIC0xNDkzLDcgKzE0 OTMsNyBAQCBHQ19ib29sIEdDX3JlZ2lzdGVyX21haW5fc3RhdGljX2RhdGEg R0NfUFJPVE8oKHZvaWQpKTsKIAkJLyogZHluYW1pYyBsaWJyYXJ5IHJlZ2lz dHJhdGlvbi4JCQkqLwogICAKIC8qIE1hY2hpbmUgZGVwZW5kZW50IHN0YXJ0 dXAgcm91dGluZXMgKi8KLXB0cl90IEdDX2dldF9zdGFja19iYXNlIEdDX1BS T1RPKCh2b2lkKSk7CS8qIENvbGQgZW5kIG9mIHN0YWNrICovCitwdHJfdCBH Q19nZXRfbWFpbl9zdGFja19iYXNlIEdDX1BST1RPKCh2b2lkKSk7CS8qIENv bGQgZW5kIG9mIHN0YWNrICovCiAjaWZkZWYgSUE2NAogICBwdHJfdCBHQ19n ZXRfcmVnaXN0ZXJfc3RhY2tfYmFzZSBHQ19QUk9UTygodm9pZCkpOwogICAJ CQkJCS8qIENvbGQgZW5kIG9mIHJlZ2lzdGVyIHN0YWNrLgkqLwpkaWZmIC0t Z2l0IGEvYm9laG0tZ2MvbWlzYy5jIGIvYm9laG0tZ2MvbWlzYy5jCmluZGV4 IGMxZmFlZDAuLjBmNGVkZmYgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL21pc2Mu YworKysgYi9ib2VobS1nYy9taXNjLmMKQEAgLTY3NywxMCArNjc3LDE0IEBA IHZvaWQgR0NfaW5pdF9pbm5lcigpCiAgICAgICAgICMgaWYgZGVmaW5lZChH Q19QVEhSRUFEUykgJiYgISBkZWZpbmVkKEdDX1NPTEFSSVNfVEhSRUFEUykK IAkvKiBVc2UgdGhyZWFkX3N0YWNrX2Jhc2UgaWYgYXZhaWxhYmxlLCBhcyBH QyBjb3VsZCBiZSBpbml0aWFsaXplZCBmcm9tCiAJICAgYSB0aHJlYWQgdGhh dCBpcyBub3QgdGhlICJtYWluIiB0aHJlYWQuICAqLwotCUdDX3N0YWNrYm90 dG9tID0gR0NfZ2V0X3RocmVhZF9zdGFja19iYXNlKCk7CisJICBzdHJ1Y3Qg R0Nfc3RhY2tfYmFzZSBzYjsKKwkgIHNiLm1lbV9iYXNlID0gTlVMTDsKKwkg ICh2b2lkKUdDX2dldF9zdGFja19iYXNlKCZzYik7CisJCS8qIEluIGNhc2Ug b2YgZmFpbHVyZSwgbWVtX2Jhc2UgcmVtYWlucyBOVUxMLgkJKi8KKwkgIEdD X3N0YWNrYm90dG9tID0gc2IubWVtX2Jhc2U7CiAJIyBlbmRpZgogCWlmIChH Q19zdGFja2JvdHRvbSA9PSAwKQotCSAgR0Nfc3RhY2tib3R0b20gPSBHQ19n ZXRfc3RhY2tfYmFzZSgpOworCSAgR0Nfc3RhY2tib3R0b20gPSBHQ19nZXRf bWFpbl9zdGFja19iYXNlKCk7CiAjICAgICAgIGlmIChkZWZpbmVkKExJTlVY KSB8fCBkZWZpbmVkKEhQVVgpKSAmJiBkZWZpbmVkKElBNjQpCiAJICBHQ19y ZWdpc3Rlcl9zdGFja2JvdHRvbSA9IEdDX2dldF9yZWdpc3Rlcl9zdGFja19i YXNlKCk7CiAjICAgICAgIGVuZGlmCmRpZmYgLS1naXQgYS9ib2VobS1nYy9v c19kZXAuYyBiL2JvZWhtLWdjL29zX2RlcC5jCmluZGV4IDYwY2JjMmIuLmY4 ZGEwODIgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL29zX2RlcC5jCisrKyBiL2Jv ZWhtLWdjL29zX2RlcC5jCkBAIC02MzksNDIgKzYzOSw1MyBAQCB3b3JkIEdD X2dldF93cml0YWJsZV9sZW5ndGgocHRyX3QgcCwgcHRyX3QgKmJhc2UpCiAg ICAgcmV0dXJuKGJ1Zi5SZWdpb25TaXplKTsKIH0KIAotcHRyX3QgR0NfZ2V0 X3N0YWNrX2Jhc2UoKQoraW50IEdDX2dldF9zdGFja19iYXNlKHN0cnVjdCBH Q19zdGFja19iYXNlICpzYikKIHsKICAgICBpbnQgZHVtbXk7CiAgICAgcHRy X3Qgc3AgPSAocHRyX3QpKCZkdW1teSk7CiAgICAgcHRyX3QgdHJ1bmNfc3Ag PSAocHRyX3QpKCh3b3JkKXNwICYgfihHQ19wYWdlX3NpemUgLSAxKSk7CiAg ICAgd29yZCBzaXplID0gR0NfZ2V0X3dyaXRhYmxlX2xlbmd0aCh0cnVuY19z cCwgMCk7CiAgICAKLSAgICByZXR1cm4odHJ1bmNfc3AgKyBzaXplKTsKKyAg ICBzYiAtPiBtZW1fYmFzZSA9IHRydW5jX3NwICsgc2l6ZTsKKyAgICByZXR1 cm4gR0NfU1VDQ0VTUzsKIH0KKyMgICBkZWZpbmUgSEFWRV9HRVRfU1RBQ0tf QkFTRQogCisjIGVsaWYgZGVmaW5lZChDWUdXSU4zMikgJiYgZGVmaW5lZChH Q19XSU4zMl9USFJFQURTKQorCisgICAgLyogR0NfZ2V0X3N0YWNrX2Jhc2Uo KSBpcyBkZWZpbmVkIGluIHdpbjMyX3RocmVhZHMuYy4JKi8KKyMgICBkZWZp bmUgSEFWRV9HRVRfU1RBQ0tfQkFTRQogCiAjIGVuZGlmIC8qIE1TIFdpbmRv d3MgKi8KIAogIyBpZmRlZiBCRU9TCiAjIGluY2x1ZGUgPGtlcm5lbC9PUy5o PgotcHRyX3QgR0NfZ2V0X3N0YWNrX2Jhc2UoKXsKK2ludCBHQ19nZXRfc3Rh Y2tfYmFzZShzdHJ1Y3QgR0Nfc3RhY2tfYmFzZSAqc2IpCit7CiAJdGhyZWFk X2luZm8gdGg7CiAJZ2V0X3RocmVhZF9pbmZvKGZpbmRfdGhyZWFkKE5VTEwp LCZ0aCk7Ci0JcmV0dXJuIHRoLnN0YWNrX2VuZDsKKwlzYiAtPiBtZW1fYmFz ZSA9IHRoLnN0YWNrX2VuZDsKKwlyZXR1cm4gR0NfU1VDQ0VTUzsKIH0KKyMg ICBkZWZpbmUgSEFWRV9HRVRfU1RBQ0tfQkFTRQogIyBlbmRpZiAvKiBCRU9T ICovCiAKIAogIyBpZmRlZiBPUzIKIAotcHRyX3QgR0NfZ2V0X3N0YWNrX2Jh c2UoKQoraW50IEdDX2dldF9zdGFja19iYXNlKHN0cnVjdCBHQ19zdGFja19i YXNlICpzYikKIHsKICAgICBQVElCIHB0aWI7CiAgICAgUFBJQiBwcGliOwog ICAgIAogICAgIGlmIChEb3NHZXRJbmZvQmxvY2tzKCZwdGliLCAmcHBpYikg IT0gTk9fRVJST1IpIHsKICAgICAJR0NfZXJyX3ByaW50ZjAoIkRvc0dldElu Zm9CbG9ja3MgZmFpbGVkXG4iKTsKLSAgICAJQUJPUlQoIkRvc0dldEluZm9C bG9ja3MgZmFpbGVkXG4iKTsKKwlyZXR1cm4gR0NfVU5JTVBMRU1FTlRFRDsK ICAgICB9Ci0gICAgcmV0dXJuKChwdHJfdCkocHRpYiAtPiB0aWJfcHN0YWNr bGltaXQpKTsKKyAgICBzYiAtPiBtZW1fYmFzZSA9ICh2b2lkICopKHB0aWIg LT4gdGliX3BzdGFja2xpbWl0KTsKKyAgICByZXR1cm4gR0NfU1VDQ0VTUzsK IH0KKyMgICBkZWZpbmUgSEFWRV9HRVRfU1RBQ0tfQkFTRQogCiAjIGVuZGlm IC8qIE9TMiAqLwogCkBAIC02ODIsNiArNjkzLDcgQEAgcHRyX3QgR0NfZ2V0 X3N0YWNrX2Jhc2UoKQogIyAgIGRlZmluZSBHQ19BTUlHQV9TQgogIyAgIGlu Y2x1ZGUgIkFtaWdhT1MuYyIKICMgICB1bmRlZiBHQ19BTUlHQV9TQgorIyAg IGRlZmluZSBHRVRfTUFJTl9TVEFDS0JBU0VfU1BFQ0lBTAogIyBlbmRpZiAv KiBBTUlHQSAqLwogCiAjIGlmIGRlZmluZWQoTkVFRF9GSU5EX0xJTUlUKSB8 fCBkZWZpbmVkKFVOSVhfTElLRSkKQEAgLTgxOSwxMCArODMxLDExIEBAIHB0 cl90IEdDX2dldF9zdGFja19iYXNlKCkKICMgZW5kaWYKIAogI2lmIGRlZmlu ZWQoRUNPUykgfHwgZGVmaW5lZChOT1NZUykKLSAgcHRyX3QgR0NfZ2V0X3N0 YWNrX2Jhc2UoKQorICBwdHJfdCBHQ19nZXRfbWFpbl9zdGFja19iYXNlIEdD X1BST1RPKCh2b2lkKSkKICAgewogICAgIHJldHVybiBTVEFDS0JPVFRPTTsK ICAgfQorIyBkZWZpbmUgR0VUX01BSU5fU1RBQ0tCQVNFX1NQRUNJQUwKICNl bmRpZgogCiAjaWZkZWYgSFBVWF9TVEFDS0JPVFRPTQpAQCAtMTA1OSw3ICsx MDcyLDcgQEAgcHRyX3QgR0NfZ2V0X3N0YWNrX2Jhc2UoKQogI2lmICFkZWZp bmVkKEJFT1MpICYmICFkZWZpbmVkKEFNSUdBKSAmJiAhZGVmaW5lZChNU1dJ TjMyKSBcCiAgICAgJiYgIWRlZmluZWQoTVNXSU5DRSkgJiYgIWRlZmluZWQo T1MyKSAmJiAhZGVmaW5lZChOT1NZUykgJiYgIWRlZmluZWQoRUNPUykKIAot cHRyX3QgR0NfZ2V0X3N0YWNrX2Jhc2UoKQorcHRyX3QgR0NfZ2V0X21haW5f c3RhY2tfYmFzZSBHQ19QUk9UTygodm9pZCkpCiB7CiAjICAgaWYgZGVmaW5l ZChIRVVSSVNUSUMxKSB8fCBkZWZpbmVkKEhFVVJJU1RJQzIpIHx8IFwKICAg ICAgICBkZWZpbmVkKExJTlVYX1NUQUNLQk9UVE9NKSB8fCBkZWZpbmVkKEZS RUVCU0RfU1RBQ0tCT1RUT00pIHx8IFwKQEAgLTExMTgsOSArMTEzMSw0MSBA QCBwdHJfdCBHQ19nZXRfc3RhY2tfYmFzZSgpCiAgICAgCXJldHVybihyZXN1 bHQpOwogIyAgIGVuZGlmIC8qIFNUQUNLQk9UVE9NICovCiB9CisjICAgZGVm aW5lIEdFVF9NQUlOX1NUQUNLQkFTRV9TUEVDSUFMCiAKICMgZW5kaWYgLyog ISBBTUlHQSwgIU9TIDIsICEgTVMgV2luZG93cywgIUJFT1MsICFOT1NZUywg IUVDT1MgKi8KIAorI2lmIGRlZmluZWQoR0NfUFRIUkVBRFMpICYmICFkZWZp bmVkKEdDX1NPTEFSSVNfVEhSRUFEUykgXAorICAgICYmICFkZWZpbmVkKEdD X1dJTjMyX1RIUkVBRFMpCisgICAgLyogR0NfZ2V0X3N0YWNrX2Jhc2UoKSBp cyBkZWZpbmVkIGluIHB0aHJlYWRfc3VwcG9ydC5jLgkqLworIyAgIGRlZmlu ZSBIQVZFX0dFVF9TVEFDS19CQVNFCisjZW5kaWYKKworI2lmbmRlZiBIQVZF X0dFVF9TVEFDS19CQVNFCisgICAgaW50IEdDX2dldF9zdGFja19iYXNlKHN0 cnVjdCBHQ19zdGFja19iYXNlICpzYikKKyAgICB7CisjICAgICBpZiBkZWZp bmVkKEdFVF9NQUlOX1NUQUNLQkFTRV9TUEVDSUFMKSAmJiAhZGVmaW5lZChU SFJFQURTKSBcCisJICYmICFkZWZpbmVkKElBNjQpCisJc2ItPm1lbV9iYXNl ID0gR0NfZ2V0X21haW5fc3RhY2tfYmFzZSgpOworCXJldHVybiBHQ19TVUND RVNTOworIyAgICAgZWxzZQorCXJldHVybiBHQ19VTklNUExFTUVOVEVEOwor IyAgICAgZW5kaWYKKyAgICB9CisjZW5kaWYgLyogIUhBVkVfR0VUX1NUQUNL X0JBU0UgKi8KKworI2lmbmRlZiBHRVRfTUFJTl9TVEFDS0JBU0VfU1BFQ0lB TAorICAvKiBUaGlzIGlzIGFsd2F5cyBjYWxsZWQgZnJvbSB0aGUgbWFpbiB0 aHJlYWQuICBEZWZhdWx0IGltcGxlbWVudGF0aW9uLiAqLworICBwdHJfdCBH Q19nZXRfbWFpbl9zdGFja19iYXNlIEdDX1BST1RPKCh2b2lkKSkKKyAgewor ICAgIHN0cnVjdCBHQ19zdGFja19iYXNlIHNiOworCisgICAgaWYgKEdDX2dl dF9zdGFja19iYXNlKCZzYikgIT0gR0NfU1VDQ0VTUykKKyAgICAgIEFCT1JU KCJHQ19nZXRfc3RhY2tfYmFzZSBmYWlsZWQiKTsKKyAgICByZXR1cm4gKHB0 cl90KXNiLm1lbV9iYXNlOworICB9CisjZW5kaWYgLyogIUdFVF9NQUlOX1NU QUNLQkFTRV9TUEVDSUFMICovCisKIC8qCiAgKiBSZWdpc3RlciBzdGF0aWMg ZGF0YSBzZWdtZW50KHMpIGFzIHJvb3RzLgogICogSWYgbW9yZSBkYXRhIHNl Z21lbnRzIGFyZSBhZGRlZCBsYXRlciB0aGVuIHRoZXkgbmVlZCB0byBiZSBy ZWdpc3RlcmVkCmRpZmYgLS1naXQgYS9ib2VobS1nYy9wdGhyZWFkX3N1cHBv cnQuYyBiL2JvZWhtLWdjL3B0aHJlYWRfc3VwcG9ydC5jCmluZGV4IDZkOGYw MjAuLmUwNzdhYmIgMTAwNjQ0Ci0tLSBhL2JvZWhtLWdjL3B0aHJlYWRfc3Vw cG9ydC5jCisrKyBiL2JvZWhtLWdjL3B0aHJlYWRfc3VwcG9ydC5jCkBAIC0x MTI3LDcgKzExMjcsNyBAQCBXUkFQX0ZVTkMocHRocmVhZF9kZXRhY2gpKHB0 aHJlYWRfdCB0aHJlYWQpCiAKIEdDX2Jvb2wgR0NfaW5fdGhyZWFkX2NyZWF0 aW9uID0gRkFMU0U7CiAKLUdDX1BUUiBHQ19nZXRfdGhyZWFkX3N0YWNrX2Jh c2UoKQoraW50IEdDX2dldF9zdGFja19iYXNlKHN0cnVjdCBHQ19zdGFja19i YXNlICpzYikKIHsgIAogIyBpZmRlZiBIQVZFX1BUSFJFQURfR0VUQVRUUl9O UAogICBwdGhyZWFkX3QgbXlfcHRocmVhZDsKQEAgLTExNDEsNyArMTE0MSw3 IEBAIEdDX1BUUiBHQ19nZXRfdGhyZWFkX3N0YWNrX2Jhc2UoKQogIyAgIGlm ZGVmIERFQlVHX1RIUkVBRFMKICAgICAgIEdDX3ByaW50ZjAoIkNhbiBub3Qg ZGV0ZXJtaW5lIHN0YWNrIGJhc2UgZm9yIGF0dGFjaGVkIHRocmVhZCIpOwog IyAgIGVuZGlmCi0gICAgICByZXR1cm4gMDsKKyAgICAgIHJldHVybiBHQ19V TklNUExFTUVOVEVEOwogICAgIH0KICAgcHRocmVhZF9hdHRyX2dldHN0YWNr ICgmYXR0ciwgKHZvaWQgKiopICZzdGFja19hZGRyLCAmc3RhY2tfc2l6ZSk7 CiAgIHB0aHJlYWRfYXR0cl9kZXN0cm95ICgmYXR0cik7CkBAIC0xMTUxLDE2 ICsxMTUxLDIyIEBAIEdDX1BUUiBHQ19nZXRfdGhyZWFkX3N0YWNrX2Jhc2Uo KQogIyAgIGVuZGlmCiAKICMgICBpZmRlZiBTVEFDS19HUk9XU19ET1dOCi0g ICAgICByZXR1cm4gc3RhY2tfYWRkciArIHN0YWNrX3NpemU7CisgICAgICBz YiAtPiBtZW1fYmFzZSA9IHN0YWNrX2FkZHIgKyBzdGFja19zaXplOwogIyAg IGVsc2UKLSAgICAgIHJldHVybiBzdGFja19hZGRyOworICAgICAgc2IgLT4g bWVtX2Jhc2UgPSBzdGFja19hZGRyOwogIyAgIGVuZGlmCisjICAgaWZkZWYg SUE2NAorICAgICAgc2IgLT4gcmVnX2Jhc2UgPSAodm9pZCopKEdDX3NhdmVf cmVnc19pbl9zdGFjaygpICYgfihHQ19wYWdlX3NpemUgLSAxKSk7CisJLyog VGhpcyBpcyBub3QgMTAwJSBjb252aW5jaW5nLiAgV2Ugc2hvdWxkIGFsc28g cmVhZCB0aGlzCSovCisJLyogZnJvbSAvcHJvYywgYnV0IHRoZSBob29rIHRv IGRvIHNvIGlzbid0IHRoZXJlIHlldC4JCSovCisjICAgZW5kaWYKKyAgICBy ZXR1cm4gR0NfU1VDQ0VTUzsKIAogIyBlbHNlCiAjICAgaWZkZWYgREVCVUdf VEhSRUFEUwogCUdDX3ByaW50ZjAoIkNhbiBub3QgZGV0ZXJtaW5lIHN0YWNr IGJhc2UgZm9yIGF0dGFjaGVkIHRocmVhZCIpOwogIyAgIGVuZGlmCi0gIHJl dHVybiAwOworICAgIHJldHVybiBHQ19VTklNUExFTUVOVEVEOwogIyBlbmRp ZgogfQogCkBAIC0xMTY4LDYgKzExNzQsMTEgQEAgdm9pZCBHQ19yZWdpc3Rl cl9teV90aHJlYWQoKQogewogICBHQ190aHJlYWQgbWU7CiAgIHB0aHJlYWRf dCBteV9wdGhyZWFkOworIyBpZiAhZGVmaW5lZChHQ19EQVJXSU5fVEhSRUFE UykgfHwgZGVmaW5lZChJQTY0KQorICAgIHN0cnVjdCBHQ19zdGFja19iYXNl IHNiOworICAgIGlmIChHQ19nZXRfc3RhY2tfYmFzZSgmc2IpID09IEdDX1VO SU1QTEVNRU5URUQpCisgICAgICBBQk9SVCgiQ2FuIG5vdCBkZXRlcm1pbmUg c3RhY2sgYmFzZSBmb3IgYXR0YWNoZWQgdGhyZWFkIik7CisjIGVuZGlmCiAK ICAgbXlfcHRocmVhZCA9IHB0aHJlYWRfc2VsZigpOwogIyAgIGlmZGVmIERF QlVHX1RIUkVBRFMKQEAgLTExOTcsOSArMTIwOCw3IEBAIHZvaWQgR0NfcmVn aXN0ZXJfbXlfdGhyZWFkKCkKICNpZmRlZiBHQ19EQVJXSU5fVEhSRUFEUwog ICAgIG1lIC0+IHN0b3BfaW5mby5tYWNoX3RocmVhZCA9IG1hY2hfdGhyZWFk X3NlbGYoKTsKICNlbHNlCi0gICAgbWUgLT4gc3RhY2tfZW5kID0gR0NfZ2V0 X3RocmVhZF9zdGFja19iYXNlKCk7ICAgIAotICAgIGlmIChtZSAtPiBzdGFj a19lbmQgPT0gMCkKLSAgICAgIEdDX2Fib3J0KCJDYW4gbm90IGRldGVybWlu ZSBzdGFjayBiYXNlIGZvciBhdHRhY2hlZCB0aHJlYWQiKTsKKyAgICBtZSAt PiBzdGFja19lbmQgPSBzYi5tZW1fYmFzZTsKICAgICAKICMgICBpZmRlZiBT VEFDS19HUk9XU19ET1dOCiAgICAgICBtZSAtPiBzdG9wX2luZm8uc3RhY2tf cHRyID0gbWUgLT4gc3RhY2tfZW5kIC0gMHgxMDsKQEAgLTEyMDksMTAgKzEy MTgsNyBAQCB2b2lkIEdDX3JlZ2lzdGVyX215X3RocmVhZCgpCiAjZW5kaWYK IAogIyAgIGlmZGVmIElBNjQKLSAgICAgIG1lIC0+IGJhY2tpbmdfc3RvcmVf ZW5kID0gKHB0cl90KQotCQkJKEdDX3NhdmVfcmVnc19pbl9zdGFjaygpICYg fihHQ19wYWdlX3NpemUgLSAxKSk7Ci0gICAgICAvKiBUaGlzIGlzIGFsc28g PCAxMDAlIGNvbnZpbmNpbmcuICBXZSBzaG91bGQgYWxzbyByZWFkIHRoaXMg CSovCi0gICAgICAvKiBmcm9tIC9wcm9jLCBidXQgdGhlIGhvb2sgdG8gZG8g c28gaXNuJ3QgdGhlcmUgeWV0LgkJKi8KKyAgICAgIG1lIC0+IGJhY2tpbmdf c3RvcmVfZW5kID0gc2IucmVnX2Jhc2U7CiAjICAgZW5kaWYgLyogSUE2NCAq LwogCiAjICAgaWYgZGVmaW5lZChUSFJFQURfTE9DQUxfQUxMT0MpICYmICFk ZWZpbmVkKERCR19IRFJTX0FMTCkKZGlmZiAtLWdpdCBhL2JvZWhtLWdjL3dp bjMyX3RocmVhZHMuYyBiL2JvZWhtLWdjL3dpbjMyX3RocmVhZHMuYwppbmRl eCAyZGUxYzY5Li4zNTRlNWE3IDEwMDY0NAotLS0gYS9ib2VobS1nYy93aW4z Ml90aHJlYWRzLmMKKysrIGIvYm9laG0tZ2Mvd2luMzJfdGhyZWFkcy5jCkBA IC04MCw2ICs4MCw3IEBAIGV4dGVybiBMT05HIFdJTkFQSSBHQ193cml0ZV9m YXVsdF9oYW5kbGVyKHN0cnVjdCBfRVhDRVBUSU9OX1BPSU5URVJTICpleGNf aW5mbyk7CiAgKi8KIHN0YXRpYyBHQ190aHJlYWQgR0NfbmV3X3RocmVhZCh2 b2lkKSB7CiAgIGludCBpOworICBzdHJ1Y3QgR0Nfc3RhY2tfYmFzZSBzYjsK ICAgLyogSXQgYXBwZWFycyB0byBiZSB1bnNhZmUgdG8gYWNxdWlyZSBhIGxv Y2sgaGVyZSwgc2luY2UgdGhpcwkqLwogICAvKiBjb2RlIGlzIGFwcGFyZW50 bHkgbm90IHByZWVlbXB0aWJsZSBvbiBzb21lIHN5c3RlbXMuCSovCiAgIC8q IChUaGlzIGlzIGJhc2VkIG9uIGNvbXBsYWludHMsIG5vdCBvbiBNaWNyb3Nv ZnQncyBvZmZpY2lhbAkqLwpAQCAtMTMxLDExICsxMzIsMTEgQEAgc3RhdGlj IEdDX3RocmVhZCBHQ19uZXdfdGhyZWFkKHZvaWQpIHsKIAlHQ19wcmludGYx KCJMYXN0IGVycm9yIGNvZGU6ICVseFxuIiwgbGFzdF9lcnJvcik7CiAJQUJP UlQoIkR1cGxpY2F0ZUhhbmRsZSBmYWlsZWQiKTsKICAgfQotICB0aHJlYWRf dGFibGVbaV0uc3RhY2tfYmFzZSA9IEdDX2dldF9zdGFja19iYXNlKCk7Cisg IGlmIChHQ19nZXRfc3RhY2tfYmFzZSgmc2IpID09IEdDX1VOSU1QTEVNRU5U RUQpCisgICAgQUJPUlQoIkZhaWxlZCB0byBmaW5kIHN0YWNrIGJhc2UgaW4g R0NfbmV3X3RocmVhZCIpOworICB0aHJlYWRfdGFibGVbaV0uc3RhY2tfYmFz ZSA9IHNiLm1lbV9iYXNlOwogICAvKiBVcCB1bnRpbCB0aGlzIHBvaW50LCBH Q19wdXNoX2FsbF9zdGFja3MgY29uc2lkZXJzIHRoaXMgdGhyZWFkCSovCiAg IC8qIGludmFsaWQuCQkJCQkJCQkqLwotICBpZiAodGhyZWFkX3RhYmxlW2ld LnN0YWNrX2Jhc2UgPT0gTlVMTCkgCi0gICAgQUJPUlQoIkZhaWxlZCB0byBm aW5kIHN0YWNrIGJhc2UgaW4gR0NfbmV3X3RocmVhZCIpOwogICAvKiBVcCB1 bnRpbCB0aGlzIHBvaW50LCB0aGlzIGVudHJ5IGlzIHZpZXdlZCBhcyByZXNl cnZlZCBidXQgaW52YWxpZAkqLwogICAvKiBieSBHQ19kZWxldGVfdGhyZWFk LgkJCQkJCSovCiAgIHRocmVhZF90YWJsZVtpXS5pZCA9IEdldEN1cnJlbnRU aHJlYWRJZCgpOwpAQCAtNzU3LDE0ICs3NTgsMTUgQEAgaW50IEdDX3B0aHJl YWRfZGV0YWNoKHB0aHJlYWRfdCB0aHJlYWQpCiAgICAgcmV0dXJuIHJlc3Vs dDsKIH0KIAotR0NfUFRSIEdDX2dldF90aHJlYWRfc3RhY2tfYmFzZSgpCitp bnQgR0NfZ2V0X3N0YWNrX2Jhc2Uoc3RydWN0IEdDX3N0YWNrX2Jhc2UgKnNi KQogewogI2lmZGVmIF9feDg2XzY0X18KLSAgcmV0dXJuICgoTlRfVElCKilO dEN1cnJlbnRUZWIoKSktPlN0YWNrQmFzZTsKKyAgc2IgLT4gbWVtX2Jhc2Ug PSAoKE5UX1RJQiopTnRDdXJyZW50VGViKCkpLT5TdGFja0Jhc2U7CiAjZWxz ZQogICBleHRlcm4gR0NfUFRSIF90bHNiYXNlIF9fYXNtX18gKCIlZnM6NCIp OwotICByZXR1cm4gX3Rsc2Jhc2U7CisgIHNiIC0+IG1lbV9iYXNlID0gX3Rs c2Jhc2U7CiAjZW5kaWYKKyAgcmV0dXJuIEdDX1NVQ0NFU1M7CiB9CiAKICNl bHNlIC8qICFDWUdXSU4zMiAqLwotLSAKMi4xLjQKCg== ------64mVfgDQ23MeW7UqQuQzKO3JDzBMJpQO-TR1XxXfn8GA9Mk0N-1452946775--