From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 111137 invoked by alias); 1 Aug 2017 08:57:06 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 110770 invoked by uid 89); 1 Aug 2017 08:57:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:109, H*c:HHH X-HELO: mga04.intel.com Received: from mga04.intel.com (HELO mga04.intel.com) (192.55.52.120) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 01 Aug 2017 08:57:03 +0000 Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 01 Aug 2017 01:57:01 -0700 X-ExtLoop1: 1 Received: from irsmsx103.ger.corp.intel.com ([163.33.3.157]) by FMSMGA003.fm.intel.com with ESMTP; 01 Aug 2017 01:57:00 -0700 Received: from irsmsx102.ger.corp.intel.com ([169.254.2.211]) by IRSMSX103.ger.corp.intel.com ([169.254.3.9]) with mapi id 14.03.0319.002; Tue, 1 Aug 2017 09:56:59 +0100 From: "Tsimbalist, Igor V" To: "'gcc-patches@gcc.gnu.org'" CC: "Tsimbalist, Igor V" Subject: 0006-Part-6.-Add-x86-tests-for-Intel-CET-implementation Date: Tue, 01 Aug 2017 08:57:00 -0000 Message-ID: dlp-product: dlpe-windows dlp-version: 10.0.102.7 dlp-reaction: no-action Content-Type: multipart/mixed; boundary="_002_D511F25789BA7F4EBA64C8A63891A0027AA040A4IRSMSX102gercor_" MIME-Version: 1.0 X-IsSubscribed: yes X-SW-Source: 2017-08/txt/msg00030.txt.bz2 --_002_D511F25789BA7F4EBA64C8A63891A0027AA040A4IRSMSX102gercor_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Content-length: 52 Part#6. Add x86 tests for Intel CET implementation. --_002_D511F25789BA7F4EBA64C8A63891A0027AA040A4IRSMSX102gercor_ Content-Type: application/octet-stream; name="0006-Part-6.-Add-x86-tests-for-Intel-CET-implementation.patch" Content-Description: 0006-Part-6.-Add-x86-tests-for-Intel-CET-implementation.patch Content-Disposition: attachment; filename="0006-Part-6.-Add-x86-tests-for-Intel-CET-implementation.patch"; size=34836; creation-date="Tue, 01 Aug 2017 08:24:08 GMT"; modification-date="Tue, 01 Aug 2017 08:24:08 GMT" Content-Transfer-Encoding: base64 Content-length: 47223 RnJvbSBlNGE4MjI3ZTgzZThlOWYzZGRiYWE5NzcwN2YzZDMzNTAwOWUwZTc3 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJZ29yIFRzaW1iYWxp c3QgPGlnb3Iudi50c2ltYmFsaXN0QGludGVsLmNvbT4KRGF0ZTogRnJpLCAy MSBKdWwgMjAxNyAxOTo0MDo0MCArMDMwMApTdWJqZWN0OiBbUEFUQ0ggNi85 XSBQYXJ0IzYuIEFkZCB4ODYgdGVzdHMgZm9yIEludGVsIENFVCBpbXBsZW1l bnRhdGlvbi4KCmdjYy90ZXN0c3VpdGUvCgoJKiBnKysuZGcvY2V0LW5vdHJh Y2stMS5DOiBOZXcgdGVzdC4KCSogZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRy aW4tMS5jOiBMaWtld2lzZS4KCSogZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRy aW4tMTAuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTIuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTMuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTQuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTUuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTYuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTcuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTguYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTkuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtbGFi ZWwuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFj ay0xYS5jOiBMaWtld2lzZS4KCSogZ2NjLnRhcmdldC9pMzg2L2NldC1ub3Ry YWNrLTFiLmM6IExpa2V3aXNlLgoJKiBnY2MudGFyZ2V0L2kzODYvY2V0LW5v dHJhY2stMmEuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9jZXQt bm90cmFjay0yYi5jOiBMaWtld2lzZS4KCSogZ2NjLnRhcmdldC9pMzg2L2Nl dC1ub3RyYWNrLTMuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQvaTM4Ni9j ZXQtbm90cmFjay00YS5jOiBMaWtld2lzZS4KCSogZ2NjLnRhcmdldC9pMzg2 L2NldC1ub3RyYWNrLTRiLmM6IExpa2V3aXNlLgoJKiBnY2MudGFyZ2V0L2kz ODYvY2V0LW5vdHJhY2stNWEuYzogTGlrZXdpc2UuCgkqIGdjYy50YXJnZXQv aTM4Ni9jZXQtbm90cmFjay01Yi5jOiBMaWtld2lzZS4KCSogZ2NjLnRhcmdl dC9pMzg2L2NldC1ub3RyYWNrLTZhLmM6IExpa2V3aXNlLgoJKiBnY2MudGFy Z2V0L2kzODYvY2V0LW5vdHJhY2stNmIuYzogTGlrZXdpc2UuCgkqIGdjYy50 YXJnZXQvaTM4Ni9jZXQtbm90cmFjay03LmM6IExpa2V3aXNlLgoJKiBnY2Mu dGFyZ2V0L2kzODYvY2V0LXByb3BlcnR5LTEuYzogTGlrZXdpc2UuCgkqIGdj Yy50YXJnZXQvaTM4Ni9jZXQtcHJvcGVydHktMi5jOiBMaWtld2lzZS4KCSog Z2NjLnRhcmdldC9pMzg2L2NldC1yZHNzcC0xLmM6IExpa2V3aXNlLgoJKiBn Y2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMS5jOiBMaWtld2lzZS4KCSogZ2Nj LnRhcmdldC9pMzg2L2NldC1zamxqLTIuYzogTGlrZXdpc2UuCgkqIGdjYy50 YXJnZXQvaTM4Ni9jZXQtc2psai0zLmM6IExpa2V3aXNlLgoJKiBnY2MudGFy Z2V0L2kzODYvY2V0LXN3aXRjaC0xLmM6IExpa2V3aXNlLgoJKiBnY2MudGFy Z2V0L2kzODYvY2V0LXN3aXRjaC0yLmM6IExpa2V3aXNlLgoJKiBsaWIvdGFy Z2V0LXN1cHBvcnRzLmV4cCAoY2hlY2tfZWZmZWN0aXZlX3RhcmdldF9jZXQp OiBOZXcKCXByb2MuCi0tLQogZ2NjL3Rlc3RzdWl0ZS9nKysuZGcvY2V0LW5v dHJhY2stMS5DICAgICAgICAgICB8IDI1ICsrKysrKysrKysrKysrCiBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTEuYyAgIHwg MzMgKysrKysrKysrKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtaW50cmluLTEwLmMgIHwgMTUgKysrKysrKysrCiBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTIuYyAgIHwg MzIgKysrKysrKysrKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtaW50cmluLTMuYyAgIHwgMzMgKysrKysrKysrKysrKysr KysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmlu LTQuYyAgIHwgMzEgKysrKysrKysrKysrKysrKysKIGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tNS5jICAgfCAxNSArKysrKysr KysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4t Ni5jICAgfCAxNSArKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9pMzg2L2NldC1pbnRyaW4tNy5jICAgfCAxOCArKysrKysrKysrCiBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTguYyAgIHwg MTggKysrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYv Y2V0LWludHJpbi05LmMgICB8IDE1ICsrKysrKysrKwogZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWxhYmVsLmMgICAgICB8IDE2ICsrKysr KysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJh Y2stMWEuYyB8IDIxICsrKysrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMWIuYyB8IDIyICsrKysrKysrKysr KwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2st MmEuYyB8IDEyICsrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1ub3RyYWNrLTJiLmMgfCAxMiArKysrKysrCiBnY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay0zLmMgIHwgMTQgKysr KysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3Ry YWNrLTRhLmMgfCAgNiArKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtbm90cmFjay00Yi5jIHwgIDYgKysrKwogZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNWEuYyB8IDE2ICsrKysr KysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJh Y2stNWIuYyB8IDIxICsrKysrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNmEuYyB8IDE1ICsrKysrKysrKwog Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNmIu YyB8IDE1ICsrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvY2V0LW5vdHJhY2stNy5jICB8IDE1ICsrKysrKysrKwogZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXByb3BlcnR5LTEuYyB8IDExICsr KysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXByb3Bl cnR5LTIuYyB8IDExICsrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvY2V0LXJkc3NwLTEuYyAgICB8IDM5ICsrKysrKysrKysrKysrKysr KysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1zamxq LTEuYyAgICAgfCA0MiArKysrKysrKysrKysrKysrKysrKysrKwogZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMi5jICAgICB8ICA0 ICsrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGot My5jICAgICB8IDQ2ICsrKysrKysrKysrKysrKysrKysrKysrKysrCiBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtc3dpdGNoLTEuYyAgIHwg MjYgKysrKysrKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtc3dpdGNoLTIuYyAgIHwgMjYgKysrKysrKysrKysrKysrCiBn Y2MvdGVzdHN1aXRlL2xpYi90YXJnZXQtc3VwcG9ydHMuZXhwICAgICAgICAg IHwgMTQgKysrKysrKysKIDMzIGZpbGVzIGNoYW5nZWQsIDY2MCBpbnNlcnRp b25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nKysu ZGcvY2V0LW5vdHJhY2stMS5DCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0xLmMKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9j ZXQtaW50cmluLTEwLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTIuYwogY3JlYXRlIG1v ZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1p bnRyaW4tMy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi00LmMKIGNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmlu LTUuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9pMzg2L2NldC1pbnRyaW4tNi5jCiBjcmVhdGUgbW9kZSAxMDA2NDQg Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi03LmMK IGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtaW50cmluLTguYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tOS5jCiBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYv Y2V0LWxhYmVsLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay0xYS5jCiBjcmVhdGUgbW9k ZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5v dHJhY2stMWIuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTJhLmMKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90 cmFjay0yYi5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMy5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJh Y2stNGEuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTRiLmMKIGNyZWF0ZSBtb2RlIDEw MDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFj ay01YS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNWIuYwogY3JlYXRlIG1vZGUgMTAw NjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNr LTZhLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9jZXQtbm90cmFjay02Yi5jCiBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2st Ny5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L2kzODYvY2V0LXByb3BlcnR5LTEuYwogY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1wcm9wZXJ0eS0y LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtcmRzc3AtMS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMS5jCiBjcmVh dGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYv Y2V0LXNqbGotMi5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMy5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3aXRj aC0xLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9jZXQtc3dpdGNoLTIuYwotLS0KIGdjYy90ZXN0c3VpdGUv ZysrLmRnL2NldC1ub3RyYWNrLTEuQyAgICAgICAgICAgfCAyNSArKysrKysr KysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWlu dHJpbi0xLmMgICB8IDMzICsrKysrKysrKysrKysrKysrKwogZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0xMC5jICB8IDE1ICsr KysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWlu dHJpbi0yLmMgICB8IDMyICsrKysrKysrKysrKysrKysrKwogZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0zLmMgICB8IDMzICsr KysrKysrKysrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvY2V0LWludHJpbi00LmMgICB8IDMxICsrKysrKysrKysrKysrKysrCiBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTUuYyAg IHwgMTUgKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4 Ni9jZXQtaW50cmluLTYuYyAgIHwgMTUgKysrKysrKysrCiBnY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTcuYyAgIHwgMTggKysr KysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWlu dHJpbi04LmMgICB8IDE4ICsrKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1pbnRyaW4tOS5jICAgfCAxNSArKysrKysrKysK IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1sYWJlbC5jICAg ICAgfCAxNiArKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1ub3RyYWNrLTFhLmMgfCAyMSArKysrKysrKysrKysKIGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTFiLmMgfCAy MiArKysrKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2 L2NldC1ub3RyYWNrLTJhLmMgfCAxMiArKysrKysrCiBnY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay0yYi5jIHwgMTIgKysrKysr KwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2st My5jICB8IDE0ICsrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtbm90cmFjay00YS5jIHwgIDYgKysrKwogZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNGIuYyB8ICA2ICsrKysK IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTVh LmMgfCAxNiArKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1ub3RyYWNrLTViLmMgfCAyMSArKysrKysrKysrKysKIGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTZhLmMgfCAx NSArKysrKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2Nl dC1ub3RyYWNrLTZiLmMgfCAxNSArKysrKysrKysKIGdjYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTcuYyAgfCAxNSArKysrKysr KysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1wcm9wZXJ0 eS0xLmMgfCAxMSArKysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1wcm9wZXJ0eS0yLmMgfCAxMSArKysrKysKIGdjYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9pMzg2L2NldC1yZHNzcC0xLmMgICAgfCAzOSArKysr KysrKysrKysrKysrKysrKysrCiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtc2psai0xLmMgICAgIHwgNDIgKysrKysrKysrKysrKysrKysr KysrKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1zamxq LTIuYyAgICAgfCAgNCArKysKIGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1zamxqLTMuYyAgICAgfCA0NiArKysrKysrKysrKysrKysrKysr KysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3 aXRjaC0xLmMgICB8IDI2ICsrKysrKysrKysrKysrKwogZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3aXRjaC0yLmMgICB8IDI2ICsrKysr KysrKysrKysrKwogZ2NjL3Rlc3RzdWl0ZS9saWIvdGFyZ2V0LXN1cHBvcnRz LmV4cCAgICAgICAgICB8IDE0ICsrKysrKysrCiAzMyBmaWxlcyBjaGFuZ2Vk LCA2NjAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZysrLmRnL2NldC1ub3RyYWNrLTEuQwogY3JlYXRlIG1vZGUg MTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRy aW4tMS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LWludHJpbi0xMC5jCiBjcmVhdGUgbW9kZSAxMDA2 NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0y LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtaW50cmluLTMuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tNC5jCiBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvY2V0LWludHJpbi01LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTYuYwogY3JlYXRl IG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2Nl dC1pbnRyaW4tNy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi04LmMKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTkuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1sYWJlbC5jCiBjcmVhdGUgbW9kZSAxMDA2NDQg Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMWEu YwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9pMzg2L2NldC1ub3RyYWNrLTFiLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay0yYS5j CiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvY2V0LW5vdHJhY2stMmIuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTMuYwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1ub3RyYWNrLTRhLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay00Yi5jCiBj cmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvY2V0LW5vdHJhY2stNWEuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTViLmMKIGNy ZWF0ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4 Ni9jZXQtbm90cmFjay02YS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNmIuYwogY3Jl YXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2 L2NldC1ub3RyYWNrLTcuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1wcm9wZXJ0eS0xLmMKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9j ZXQtcHJvcGVydHktMi5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXJkc3NwLTEuYwogY3JlYXRlIG1v ZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1z amxqLTEuYwogY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1zamxqLTIuYwogY3JlYXRlIG1vZGUgMTAwNjQ0 IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1zamxqLTMuYwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1zd2l0Y2gtMS5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgZ2NjL3Rl c3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3aXRjaC0yLmMKCmRpZmYg LS1naXQgYS9nY2MvdGVzdHN1aXRlL2crKy5kZy9jZXQtbm90cmFjay0xLkMg Yi9nY2MvdGVzdHN1aXRlL2crKy5kZy9jZXQtbm90cmFjay0xLkMKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2FmZjc0NwotLS0gL2Rl di9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZysrLmRnL2NldC1ub3RyYWNr LTEuQwpAQCAtMCwwICsxLDI1IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgeyB0 YXJnZXQgaT84Ni0qLSogeDg2XzY0LSotKiB9IH0gKi8KKy8qIHsgZGctb3B0 aW9ucyAiLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxvdyAtbWNldCIgfSAqLwor LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyICJlbmRicjMyfGVuZGJy NjQiIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRp bWVzICJcdGNhbGxcWyBcdF0rcHV0cyIgMiB9IH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAibm90cmFjayBjYWxsXFsgXHRd KyIgMSB9IH0gKi8KKyNpbmNsdWRlIDxzdGRpby5oPgorCitzdHJ1Y3QgQSB7 Cit2aXJ0dWFsIGludCBmb28oKSB7IHJldHVybiA0MjsgfQorfTsKKworc3Ry dWN0IEIgOiBBIHsKK2ludCBmb28oKSBfX2F0dHJpYnV0ZV9fKChub3RyYWNr KSkgeyByZXR1cm4gNzM7IH0KK307CisKK2ludCBtYWluKCkgeworQiBiOwor QSYgYSA9IGI7CitpbnQgKEE6OiphbWVtKSAoKSBfX2F0dHJpYnV0ZV9fKChu b3RyYWNrKSkgPSAmQTo6Zm9vOyAvLyB0YWtlIGFkZHJlc3MKK2lmICgoYS4q YW1lbSkoKSA9PSA3MykgLy8gdXNlIHRoZSBhZGRyZXNzCisgIHByaW50Zigi cGFzc1xuIik7CitlbHNlCisgIHByaW50ZigiZmFpbFxuIik7CityZXR1cm4g MDsKK30KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1pbnRyaW4tMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvY2V0LWludHJpbi0xLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uMjMzODhmZAotLS0gL2Rldi9udWxsCisrKyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tMS5jCkBAIC0w LDAgKzEsMzMgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRn LW9wdGlvbnMgIi1PIC1maW5zdHJ1bWVudC1jb250cm9sLWZsb3cgLW1jZXQi IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAi ZW5kYnIzMiIgMiB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVuZGJyNjQiIDQgeyB0YXJn ZXQgeyAhIGlhMzIgfSB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyICJyZHNzcGR8aW5jc3NwZFxbIFx0XSsoJXwpZWF4IiB7IHRh cmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3Nl bWJsZXIgInJkc3NwXFtkcV1cWyBcdF0rKCV8KVxbcmVdYXgiIHsgdGFyZ2V0 IHsgISBpYTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlciAiaW5jc3NwXFtkcV1cWyBcdF0rKCV8KVxbcmVdZGkiIHsgdGFy Z2V0IHsgISBpYTMyIH0gfSB9IH0gKi8KKworI2luY2x1ZGUgPGltbWludHJp bi5oPgorCit1bnNpZ25lZCBpbnQgZjEgKCkKK3sKKyAgdW5zaWduZWQgaW50 IHggPSAwOworICByZXR1cm4gX19idWlsdGluX2lhMzJfcmRzc3BkICh4KTsK K30KKwordm9pZCBmMyAodW5zaWduZWQgaW50IF9hKQoreworICBfX2J1aWx0 aW5faWEzMl9pbmNzc3BkIChfYSk7Cit9CisKKyNpZmRlZiBfX3g4Nl82NF9f Cit1bnNpZ25lZCBsb25nIGxvbmcgZjIgKCkKK3sKKyAgdW5zaWduZWQgbG9u ZyBsb25nIHggPSAwOworICByZXR1cm4gX19idWlsdGluX2lhMzJfcmRzc3Bx ICh4KTsKK30KKwordm9pZCBmNCAodW5zaWduZWQgaW50IF9hKQoreworICBf X2J1aWx0aW5faWEzMl9pbmNzc3BxIChfYSk7Cit9CisjZW5kaWYKZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRy aW4tMTAuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1p bnRyaW4tMTAuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li45ZDg1Njc1Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0xMC5jCkBAIC0wLDAgKzEsMTUg QEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMg Ii1PMiAtbWNldCIgfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzICJjbHJzc2JzeSIgMiB9IH0gKi8KKworI2luY2x1ZGUgPGlt bWludHJpbi5oPgorCit2b2lkIGYxICh2b2lkICpfX0IpCit7CisgIF9fYnVp bHRpbl9pYTMyX2NscnNzYnN5IChfX0IpOworfQorCit2b2lkIGYyICh2b2lk ICpfX0IpCit7CisgIF9jbHJzc2JzeSAoX19CKTsKK30KZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tMi5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0y LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMWVmYTY5 ZgotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9pMzg2L2NldC1pbnRyaW4tMi5jCkBAIC0wLDAgKzEsMzIgQEAKKy8qIHsg ZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PIC1maW5z dHJ1bWVudC1jb250cm9sLWZsb3cgLW1zaHN0ayIgfSAqLworLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyICJyZHNzcGR8aW5jc3NwZFxbIFx0XSso JXwpZWF4IiB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXIgInJkc3NwXFtkcV1cWyBcdF0rKCV8KVxbcmVd YXgiIHsgdGFyZ2V0IHsgISBpYTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlciAiaW5jc3NwXFtkcV1cWyBcdF0rKCV8KVxb cmVdZGkiIHsgdGFyZ2V0IHsgISBpYTMyIH0gfSB9IH0gKi8KKworI2luY2x1 ZGUgPGltbWludHJpbi5oPgorCit1bnNpZ25lZCBpbnQgZjEgKCkKK3sKKyAg dW5zaWduZWQgaW50IHggPSAwOworICByZXR1cm4gX19idWlsdGluX2lhMzJf cmRzc3BkICh4KTsKK30KKwordm9pZCBmMyAodW5zaWduZWQgaW50IF9hKQor eworICBfX2J1aWx0aW5faWEzMl9pbmNzc3BkIChfYSk7Cit9CisKKyNpZmRl ZiBfX3g4Nl82NF9fCit1bnNpZ25lZCBsb25nIGxvbmcgZjIgKCkKK3sKKyAg dW5zaWduZWQgbG9uZyBsb25nIHggPSAwOworICByZXR1cm4gX19idWlsdGlu X2lhMzJfcmRzc3BxICh4KTsKK30KKworCit2b2lkIGY0ICh1bnNpZ25lZCBp bnQgX2EpCit7CisgIF9fYnVpbHRpbl9pYTMyX2luY3NzcHEgKF9hKTsKK30K KyNlbmRpZgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvY2V0LWludHJpbi0zLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtaW50cmluLTMuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwLi5kMjg3MDc1Ci0tLSAvZGV2L251bGwKKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi0zLmMKQEAg LTAsMCArMSwzMyBAQAorLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsg ZGctb3B0aW9ucyAiLU8gLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxvdyAtbWNl dCIgfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz ICJlbmRicjMyIiAyIHsgdGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnI2NCIgNCB7IHRh cmdldCB7ICEgaWEzMiB9IH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXIgInJkc3NwZHxpbmNzc3BkXFsgXHRdKyglfCllYXgiIHsg dGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlciAicmRzc3BcW2RxXVxbIFx0XSsoJXwpXFtyZV1heCIgeyB0YXJn ZXQgeyAhIGlhMzIgfSB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyICJpbmNzc3BcW2RxXVxbIFx0XSsoJXwpXFtyZV1kaSIgeyB0 YXJnZXQgeyAhIGlhMzIgfSB9IH0gfSAqLworCisjaW5jbHVkZSA8aW1taW50 cmluLmg+CisKK3Vuc2lnbmVkIGludCBmMSAoKQoreworICB1bnNpZ25lZCBp bnQgeCA9IDA7CisgIHJldHVybiBfcmRzc3BkICh4KTsKK30KKwordm9pZCBm MyAodW5zaWduZWQgaW50IF9hKQoreworICBfaW5jc3NwZCAoX2EpOworfQor CisjaWZkZWYgX194ODZfNjRfXwordW5zaWduZWQgbG9uZyBsb25nIGYyICgp Cit7CisgIHVuc2lnbmVkIGxvbmcgbG9uZyB4ID0gMDsKKyAgcmV0dXJuIF9y ZHNzcHEgKHgpOworfQorCit2b2lkIGY0ICh1bnNpZ25lZCBpbnQgX2EpCit7 CisgIF9pbmNzc3BxIChfYSk7Cit9CisjZW5kaWYKZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tNC5jIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi00LmMK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjFmMjgwZAot LS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1pbnRyaW4tNC5jCkBAIC0wLDAgKzEsMzEgQEAKKy8qIHsgZGct ZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PIC1maW5zdHJ1 bWVudC1jb250cm9sLWZsb3cgLW1zaHN0ayIgfSAqLworLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyICJyZHNzcGR8aW5jc3NwZFxbIFx0XSsoJXwp ZWF4IiB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsg c2Nhbi1hc3NlbWJsZXIgInJkc3NwXFtkcV1cWyBcdF0rKCV8KVxbcmVdYXgi ICB7IHRhcmdldCB7ICEgaWEzMiB9IH0gfSB9ICovCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXIgImluY3NzcFxbZHFdXFsgXHRdKyglfClcW3Jl XWRpIiB7IHRhcmdldCB7ICEgaWEzMiB9IH0gfSB9ICovCisKKyNpbmNsdWRl IDxpbW1pbnRyaW4uaD4KKwordW5zaWduZWQgaW50IGYxICgpCit7CisgIHVu c2lnbmVkIGludCB4ID0gMDsKKyAgcmV0dXJuIF9yZHNzcGQgKHgpOworfQor Cit2b2lkIGYzICh1bnNpZ25lZCBpbnQgX2EpCit7CisgIF9pbmNzc3BkIChf YSk7Cit9CisKKyNpZmRlZiBfX3g4Nl82NF9fCit1bnNpZ25lZCBsb25nIGxv bmcgZjIgKCkKK3sKKyAgdW5zaWduZWQgbG9uZyBsb25nIHggPSAwOworICBy ZXR1cm4gX3Jkc3NwcSAoeCk7Cit9CisKK3ZvaWQgZjQgKHVuc2lnbmVkIGlu dCBfYSkKK3sKKyAgX2luY3NzcHEgKF9hKTsKK30KKyNlbmRpZgpkaWZmIC0t Z2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJp bi01LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50 cmluLTUuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4w YjkzNzM2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LWludHJpbi01LmMKQEAgLTAsMCArMSwxNSBAQAor LyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsgZGctb3B0aW9ucyAiLU8y IC1tY2V0IiB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIt dGltZXMgInNhdmVwcmV2c3NwIiAyIH0gfSAqLworCisjaW5jbHVkZSA8aW1t aW50cmluLmg+CisKK3ZvaWQgZjEgKHZvaWQpCit7CisgIF9fYnVpbHRpbl9p YTMyX3NhdmVwcmV2c3NwICgpOworfQorCit2b2lkIGYyICh2b2lkKQorewor ICBfc2F2ZXByZXZzc3AgKCk7Cit9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTYuYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tNi5jCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRmNzYzMzQKLS0tIC9kZXYv bnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQt aW50cmluLTYuYwpAQCAtMCwwICsxLDE1IEBACisvKiB7IGRnLWRvIGNvbXBp bGUgfSAqLworLyogeyBkZy1vcHRpb25zICItTzIgLW1jZXQiIH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAicnN0b3Jzc3Ai IDIgfSB9ICovCisKKyNpbmNsdWRlIDxpbW1pbnRyaW4uaD4KKwordm9pZCBm MSAodm9pZCAqX19CKQoreworICBfX2J1aWx0aW5faWEzMl9yc3RvcnNzcCAo X19CKTsKK30KKwordm9pZCBmMiAodm9pZCAqX19CKQoreworICBfcnN0b3Jz c3AgKF9fQik7Cit9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9jZXQtaW50cmluLTcuYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1pbnRyaW4tNy5jCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAuLjA2YmU3ZWUKLS0tIC9kZXYvbnVsbAorKysg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTcu YwpAQCAtMCwwICsxLDE4IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLwor LyogeyBkZy1vcHRpb25zICItTzIgLW1jZXQiIH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAid3Jzc2QiIDEgeyB0YXJnZXQg aWEzMiB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJ3cnNzXFtkfHFdIiAyIHsgdGFyZ2V0IGxwNjQgfSB9IH0gKi8K KworI2luY2x1ZGUgPGltbWludHJpbi5oPgorCit2b2lkIGYxICh1bnNpZ25l ZCBpbnQgX19BLCB2b2lkICpfX0IpCit7CisgIF9fYnVpbHRpbl9pYTMyX3dy c3NkIChfX0EsIF9fQik7Cit9CisKKyNpZmRlZiBfX3g4Nl82NF9fCit2b2lk IGYyICh1bnNpZ25lZCBsb25nIGxvbmcgX19BLCB2b2lkICpfX0IpCit7Cisg IF93cnNzcSAoX19BLCBfX0IpOworfQorI2VuZGlmCmRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtaW50cmluLTguYyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1pbnRyaW4tOC5j Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg4YjJjZTIK LS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9jZXQtaW50cmluLTguYwpAQCAtMCwwICsxLDE4IEBACisvKiB7IGRn LWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItTzIgLW1jZXQi IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAi d3J1c3NkIiAxIHsgdGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAid3J1c3NcW2R8cV0iIDIgeyB0 YXJnZXQgbHA2NCB9IH0gfSAqLworCisjaW5jbHVkZSA8aW1taW50cmluLmg+ CisKK3ZvaWQgZjEgKHVuc2lnbmVkIGludCBfX0EsIHZvaWQgKl9fQikKK3sK KyAgX19idWlsdGluX2lhMzJfd3J1c3NkIChfX0EsIF9fQik7Cit9CisKKyNp ZmRlZiBfX3g4Nl82NF9fCit2b2lkIGYyICh1bnNpZ25lZCBsb25nIGxvbmcg X19BLCB2b2lkICpfX0IpCit7CisgIF93cnVzc3EgKF9fQSwgX19CKTsKK30K KyNlbmRpZgpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvY2V0LWludHJpbi05LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtaW50cmluLTkuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwLi5jNGE5NTgyCi0tLSAvZGV2L251bGwKKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LWludHJpbi05LmMKQEAg LTAsMCArMSwxNSBAQAorLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsg ZGctb3B0aW9ucyAiLU8yIC1tY2V0IiB9ICovCisvKiB7IGRnLWZpbmFsIHsg c2Nhbi1hc3NlbWJsZXItdGltZXMgInNldHNzYnN5IiAyIH0gfSAqLworCisj aW5jbHVkZSA8aW1taW50cmluLmg+CisKK3ZvaWQgZjEgKHZvaWQpCit7Cisg IF9fYnVpbHRpbl9pYTMyX3NldHNzYnN5ICgpOworfQorCit2b2lkIGYyICh2 b2lkKQoreworICBfc2V0c3Nic3kgKCk7Cit9CmRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbGFiZWwuYyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1sYWJlbC5jCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYyYjVkY2UKLS0tIC9kZXYv bnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQt bGFiZWwuYwpAQCAtMCwwICsxLDE2IEBACisvKiBWZXJpZnkgdGhhdCBDRVQg d29ya3MuICAqLworLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsgZGct b3B0aW9ucyAiLU8gLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxvdyAtbWNldCIg fSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJl bmRicjMyIiAzIHsgdGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnI2NCIgMyB7IHRhcmdl dCB7ICEgaWEzMiB9IH0gfSB9ICovCisKK2ludCBmdW5jIChpbnQgYXJnKQor eworICBzdGF0aWMgdm9pZCAqYXJyYXlbXSA9IHsgJiZmb28sICYmYmFyIH07 CisKKyAgZ290byAqYXJyYXlbYXJnXTsKK2ZvbzoKKyAgcmV0dXJuIGFyZyox MTE7CitiYXI6CisgIHJldHVybiBhcmcqNzc3OworfQpkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMWEu YyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNr LTFhLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjg2 MDBmMgotLS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9pMzg2L2NldC1ub3RyYWNrLTFhLmMKQEAgLTAsMCArMSwyMSBAQAor LyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsgZGctb3B0aW9ucyAiLU8w IC1mbm8taW5zdHJ1bWVudC1jb250cm9sLWZsb3cgLW1uby1jZXQiIH0gKi8K Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3QgImVuZGJyIiB9 IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3QgIm5v dHJhY2sgY2FsbFxbIFx0XSsiIH0gfSAqLworCitpbnQgZnVuYyAoaW50IGEp IF9fYXR0cmlidXRlX18gKChub3RyYWNrKSk7CitpbnQgKCpmcHRyKSAoaW50 IGEpIF9fYXR0cmlidXRlX18gKChub3RyYWNrKSk7CisKK2ludCBmb28gKGlu dCBhcmcpCit7CisgIGludCBhLCBiOworICBhID0gZnVuYyAoYXJnKTsKKyAg YiA9ICgqZnB0cikgKGFyZyk7CisgIHJldHVybiBhK2I7Cit9CisKK2ludCBm dW5jIChpbnQgYXJnKQoreworICBpbnQgKCpmcHRybCkgKGludCBhKSBfX2F0 dHJpYnV0ZV9fICgobm90cmFjaykpOworICByZXR1cm4gYXJnKigqZnB0cmwp KGFyZyk7Cit9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtbm90cmFjay0xYi5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMWIuYwpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi4zODQ0MWM3Ci0tLSAvZGV2L251bGwKKysr IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2st MWIuYwpAQCAtMCwwICsxLDIyIEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAq LworLyogeyBkZy1vcHRpb25zICItTyAtZmluc3RydW1lbnQtY29udHJvbC1m bG93IC1tY2V0IiB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItdGltZXMgImVuZGJyMzIiIDEgeyB0YXJnZXQgaWEzMiB9IH0gfSAqLwor LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJlbmRicjY0 IiAxIHsgdGFyZ2V0IHsgISBpYTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAibm90cmFjayBjYWxsXFsgXHRd KyIgMiB9IH0gKi8KKworaW50IGZ1bmMgKGludCBhKSBfX2F0dHJpYnV0ZV9f ICgobm90cmFjaykpOworaW50ICgqZnB0cikgKGludCBhKSBfX2F0dHJpYnV0 ZV9fICgobm90cmFjaykpOworCitpbnQgZm9vIChpbnQgYXJnKQoreworaW50 IGEsIGI7CisgIGEgPSBmdW5jIChhcmcpOworICBiID0gKCpmcHRyKSAoYXJn KTsKKyAgcmV0dXJuIGErYjsKK30KKworaW50IGZ1bmMgKGludCBhcmcpCit7 CitpbnQgKCpmcHRybCkgKGludCBhKSBfX2F0dHJpYnV0ZV9fICgobm90cmFj aykpOworICByZXR1cm4gYXJnKigqZnB0cmwpKGFyZyk7Cit9CmRpZmYgLS1n aXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFj ay0yYS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5v dHJhY2stMmEuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li5kMmNhZjZhCi0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stMmEuYwpAQCAtMCwwICsxLDEy IEBACisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25z ICItTyAtZmluc3RydW1lbnQtY29udHJvbC1mbG93IC1tY2V0IiB9ICovCisv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVuZGJyMzIi IDEgeyB0YXJnZXQgaWEzMiB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzICJlbmRicjY0IiAxIHsgdGFyZ2V0IHsgISBp YTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci10aW1lcyAibm90cmFjayBjYWxsXFsgXHRdKyIgMSB9IH0gKi8KKwordm9p ZAorYmFyICh2b2lkICgqZm9vKSAodm9pZCkpCit7CisgIHZvaWQgKCpmdW5j KSAodm9pZCkgX19hdHRyaWJ1dGVfXygobm90cmFjaykpID0gZm9vOworICBm dW5jICgpOworfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L2kzODYvY2V0LW5vdHJhY2stMmIuYyBiL2djYy90ZXN0c3VpdGUvZ2Nj LnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTJiLmMKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uYjdlOGNmMgotLS0gL2Rldi9udWxsCisr KyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNr LTJiLmMKQEAgLTAsMCArMSwxMiBAQAorLyogeyBkZy1kbyBjb21waWxlIH0g Ki8KKy8qIHsgZGctYWRkaXRpb25hbC1vcHRpb25zICItTzIgLWZpbnN0cnVt ZW50LWNvbnRyb2wtZmxvdyAtbWNldCIgfSAqLworLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJlbmRicjMyIiAxIHsgdGFyZ2V0IGlh MzIgfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10 aW1lcyAiZW5kYnI2NCIgMSB7IHRhcmdldCB7ICEgaWEzMiB9IH0gfSB9ICov CisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgIm5vdHJh Y2sgam1wXFsgXHRdKyIgMSB9IH0gKi8KKwordm9pZAorYmFyICh2b2lkICgq Zm9vKSAodm9pZCkpCit7CisgIHZvaWQgKCpmdW5jKSAodm9pZCkgX19hdHRy aWJ1dGVfXygobm90cmFjaykpID0gZm9vOworICBmdW5jICgpOworfQpkaWZm IC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5v dHJhY2stMy5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0 LW5vdHJhY2stMy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLmNhYWZkN2MKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay0zLmMKQEAgLTAsMCArMSwx NCBAQAorLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy8qIHsgZGctb3B0aW9u cyAiLU8gLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxvdyAtbWNldCIgfSAqLwor LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJlbmRicjMy IiAxIHsgdGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBz Y2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnI2NCIgMSB7IHRhcmdldCB7ICEg aWEzMiB9IH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItdGltZXMgIm5vdHJhY2sgY2FsbFxbIFx0XSsiIDEgfSB9ICovCisKK3R5 cGVkZWYgdm9pZCAoKmZ1bmNfdCkgKHZvaWQpIF9fYXR0cmlidXRlX18oKG5v dHJhY2spKTsKK2V4dGVybiBmdW5jX3QgZnVuYzsKKwordm9pZAorYmFyICh2 b2lkKQoreworICBmdW5jICgpOworfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNGEuYyBiL2djYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTRhLmMKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjkzZTViZgotLS0g L2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2 L2NldC1ub3RyYWNrLTRhLmMKQEAgLTAsMCArMSw2IEBACisvKiB7IGRnLWRv IGNvbXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItZm5vLWluc3RydW1l bnQtY29udHJvbC1mbG93IC1tbm8tY2V0IiB9ICovCisKK2ludCB2YXIxIF9f YXR0cmlidXRlX18oKG5vdHJhY2spKTsgLyogeyBkZy13YXJuaW5nICInbm90 cmFjaycgYXR0cmlidXRlIG9ubHkgYXBwbGllcyB0byBmdW5jdGlvbiB0eXBl cyIgfSAqLworaW50ICp2YXIyIF9fYXR0cmlidXRlX18oKG5vdHJhY2spKTsg LyogeyBkZy13YXJuaW5nICInbm90cmFjaycgYXR0cmlidXRlIG9ubHkgYXBw bGllcyB0byBmdW5jdGlvbiB0eXBlcyIgfSAqLwordm9pZCAoKip2YXIzKSAo dm9pZCkgX19hdHRyaWJ1dGVfXygobm90cmFjaykpOyAvKiB7IGRnLXdhcm5p bmcgIidub3RyYWNrJyBhdHRyaWJ1dGUgb25seSBhcHBsaWVzIHRvIGZ1bmN0 aW9uIHR5cGVzIiB9ICovCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay00Yi5jIGIvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNGIuYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYjdmZDliCi0tLSAvZGV2L251 bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5v dHJhY2stNGIuYwpAQCAtMCwwICsxLDYgQEAKKy8qIHsgZGctZG8gY29tcGls ZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PIC1maW5zdHJ1bWVudC1jb250 cm9sLWZsb3cgLW1jZXQiIH0gKi8KKworaW50IHZhcjEgX19hdHRyaWJ1dGVf Xygobm90cmFjaykpOyAvKiB7IGRnLXdhcm5pbmcgIidub3RyYWNrJyBhdHRy aWJ1dGUgb25seSBhcHBsaWVzIHRvIGZ1bmN0aW9uIHR5cGVzIiB9ICovCitp bnQgKnZhcjIgX19hdHRyaWJ1dGVfXygobm90cmFjaykpOyAvKiB7IGRnLXdh cm5pbmcgIidub3RyYWNrJyBhdHRyaWJ1dGUgb25seSBhcHBsaWVzIHRvIGZ1 bmN0aW9uIHR5cGVzIiB9ICovCit2b2lkICgqKnZhcjMpICh2b2lkKSBfX2F0 dHJpYnV0ZV9fKChub3RyYWNrKSk7IC8qIHsgZGctd2FybmluZyAiJ25vdHJh Y2snIGF0dHJpYnV0ZSBvbmx5IGFwcGxpZXMgdG8gZnVuY3Rpb24gdHlwZXMi IH0gKi8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9p Mzg2L2NldC1ub3RyYWNrLTVhLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtbm90cmFjay01YS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAuLjg5NDAyNjAKLS0tIC9kZXYvbnVsbAorKysgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay01YS5j CkBAIC0wLDAgKzEsMTYgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisv KiB7IGRnLW9wdGlvbnMgIi1PIC1maW5zdHJ1bWVudC1jb250cm9sLWZsb3cg LW1jZXQiIH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10 aW1lcyAiZW5kYnIzMiIgMSB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVuZGJyNjQiIDEg eyB0YXJnZXQgeyAhIGlhMzIgfSB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7 IHNjYW4tYXNzZW1ibGVyLW5vdCAiXHRjYWxsXFsgXHRdKyIgfSB9ICovCisv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgIm5vdHJhY2sg Y2FsbFxbIFx0XSsiIDEgfSB9ICovCisKK2ludCAoKmZwdHIpIChpbnQpIF9f YXR0cmlidXRlX18gKChub3RyYWNrKSk7CisKK2ludAorZm9vIChpbnQgYXJn KQoreworICBpbnQgYTsKKyAgYSA9ICgqZnB0cikgKGFyZyk7IC8qIG5vdHJh Y2sgY2FsbC4gICovCisgIHJldHVybiBhcmcrYTsKK30KZGlmZiAtLWdpdCBh L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTVi LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFj ay01Yi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVh ZDg0NWEKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9jZXQtbm90cmFjay01Yi5jCkBAIC0wLDAgKzEsMjEgQEAK Ky8qIENoZWNrIHRoZSBhdHRyaWJ1dGUgZG8gbm90IHByb3BhcmF0ZSB0aHJv dWdoIGFzc2lnbm1lbnQuICAqLworLyogeyBkZy1kbyBjb21waWxlIH0gKi8K Ky8qIHsgZGctb3B0aW9ucyAiLU8gLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxv dyAtbWNldCIgfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJlbmRicjMyIiAxIHsgdGFyZ2V0IGlhMzIgfSB9IH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnI2NCIg MSB7IHRhcmdldCB7ICEgaWEzMiB9IH0gfSB9ICovCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgIlx0Y2FsbFxbIFx0XSsiIDEgfSB9 ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgIm5v dHJhY2sgY2FsbFxbIFx0XSsiIDEgfSB9ICovCisKK2ludCAoKmZwdHIpIChp bnQpIF9fYXR0cmlidXRlX18gKChub3RyYWNrKSk7CitpbnQgKCpmcHRyMSkg KGludCk7CisKK2ludAorZm9vIChpbnQgYXJnKQoreworICBpbnQgYTsKKyAg YSA9ICgqZnB0cikgKGFyZyk7IC8qIG5vdHJhY2sgY2FsbC4gICovCisgIGFy ZyArPSBhOworICBmcHRyMSA9IGZwdHI7CisgIGEgPSAoKmZwdHIxKSAoYXJn KTsgLyogdHJhY2sgY2FsbC4gICovCisgIHJldHVybiBhcmcrYTsKK30KZGlm ZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1u b3RyYWNrLTZhLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9j ZXQtbm90cmFjay02YS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLmEwODViNGMKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1 aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay02YS5jCkBAIC0wLDAg KzEsMTUgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9w dGlvbnMgIi1PMiAtZmluc3RydW1lbnQtY29udHJvbC1mbG93IC1tY2V0IiB9 ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVu ZGJyMzIiIDEgeyB0YXJnZXQgaWEzMiB9IH0gfSAqLworLyogeyBkZy1maW5h bCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJlbmRicjY0IiAxIHsgdGFyZ2V0 IHsgISBpYTMyIH0gfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci10aW1lcyAiXHQoPzpjYWxsfGptcClcWyBcdF0rZm9vIiAxIH0g fSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCAibm90 cmFjayBjYWxsXFsgXHRdKyIgfSB9ICovCisKK2ludCBmb28gKGludCBhcmcp OworCitpbnQgZnVuYyAoaW50IGFyZykKK3sKKyAgaW50ICgqZnB0cmwpIChp bnQgYSkgX19hdHRyaWJ1dGVfXyAoKG5vdHJhY2spKSA9IGZvbzsKKworICBy ZXR1cm4gKCpmcHRybCkoYXJnKTsKK30KZGlmZiAtLWdpdCBhL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1ub3RyYWNrLTZiLmMgYi9nY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90cmFjay02Yi5jCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZiYzI1YjUKLS0t IC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4 Ni9jZXQtbm90cmFjay02Yi5jCkBAIC0wLDAgKzEsMTUgQEAKKy8qIHsgZGct ZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PMCAtZmluc3Ry dW1lbnQtY29udHJvbC1mbG93IC1tY2V0IiB9ICovCisvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVuZGJyMzIiIDEgeyB0YXJnZXQg aWEzMiB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJlbmRicjY0IiAxIHsgdGFyZ2V0IHsgISBpYTMyIH0gfSB9IH0g Ki8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3QgIlx0Y2Fs bFxbIFx0XSsiIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1i bGVyLXRpbWVzICJub3RyYWNrIGNhbGxcWyBcdF0rIiAxIH0gfSAqLworCitp bnQgZm9vIChpbnQgYXJnKTsKKworaW50IGZ1bmMgKGludCBhcmcpCit7Cisg IGludCAoKmZwdHJsKSAoaW50IGEpIF9fYXR0cmlidXRlX18gKChub3RyYWNr KSkgPSBmb287CisKKyAgcmV0dXJuICgqZnB0cmwpKGFyZyk7ICAvKiBub3Ry YWNrIGNhbGwuICAqLworfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNy5jIGIvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LW5vdHJhY2stNy5jCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI5MGJmNWEKLS0tIC9kZXYvbnVs bAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtbm90 cmFjay03LmMKQEAgLTAsMCArMSwxNSBAQAorLyogQ2hlY2sgdGhlIG5vdHJh Y2sgcHJlZml4IGlzIG5vdCBnZW5lcmF0ZWQgZm9yIGRpcmVjdCBjYWxsLiAg Ki8KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMg Ii1PIC1maW5zdHJ1bWVudC1jb250cm9sLWZsb3cgLW1jZXQiIH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnIzMiIg MSB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMgImVuZGJyNjQiIDEgeyB0YXJnZXQgeyAhIGlh MzIgfSB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJub3RyYWNrIGNhbGxcWyBcdF0rZm9vIiAwIH0gfSAqLworLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzICJcdGNhbGxcWyBc dF0rZm9vIiAxIH0gfSAqLworCitleHRlcm4gdm9pZCBmb28gKHZvaWQpIF9f YXR0cmlidXRlX18oKG5vdHJhY2spKTsKKwordm9pZAorYmFyICh2b2lkKQor eworICBmb28gKCk7Cit9CmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvaTM4Ni9jZXQtcHJvcGVydHktMS5jIGIvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXByb3BlcnR5LTEuYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NzgyZTc2Ci0tLSAvZGV2L251 bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXBy b3BlcnR5LTEuYwpAQCAtMCwwICsxLDExIEBACisvKiB7IGRnLWRvIGNvbXBp bGUgeyB0YXJnZXQgKi0qLWxpbnV4KiB9IH0gKi8KKy8qIHsgZGctb3B0aW9u cyAiLWZpbnN0cnVtZW50LWNvbnRyb2wtZmxvdyAtbWNldCIgfSAqLworLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyICIubm90ZS5nbnUucHJvcGVy dHkiIH0gfSAqLworCitleHRlcm4gdm9pZCBmb28gKHZvaWQpOworCit2b2lk CitiYXIgKHZvaWQpCit7CisgIGZvbyAoKTsKK30KZGlmZiAtLWdpdCBhL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2NldC1wcm9wZXJ0eS0yLmMg Yi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtcHJvcGVydHkt Mi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVhODdk YWIKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9jZXQtcHJvcGVydHktMi5jCkBAIC0wLDAgKzEsMTEgQEAKKy8q IHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1tY2V0 IiB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90ICIu bm90ZS5nbnUucHJvcGVydHkiIH0gfSAqLworCitleHRlcm4gdm9pZCBmb28g KHZvaWQpOworCit2b2lkCitiYXIgKHZvaWQpCit7CisgIGZvbyAoKTsKK30K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2Nl dC1yZHNzcC0xLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9j ZXQtcmRzc3AtMS5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAuLmY5MjIzYTUKLS0tIC9kZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvaTM4Ni9jZXQtcmRzc3AtMS5jCkBAIC0wLDAgKzEsMzkg QEAKKy8qIHsgZGctZG8gcnVuIHsgdGFyZ2V0IGNldCB9IH0gKi8KKy8qIHsg ZGctb3B0aW9ucyAiLU8yIC1maW5zdHJ1bWVudC1jb250cm9sLWZsb3cgLW1j ZXQiIH0gKi8KKwordm9pZCBfZXhpdChpbnQgc3RhdHVzKSBfX2F0dHJpYnV0 ZV9fICgoX19ub3JldHVybl9fKSk7CisKKyNpZmRlZiBfX3g4Nl82NF9fCisj IGRlZmluZSBpbmNzc3AoeCkgX19idWlsdGluX2lhMzJfaW5jc3NwcSAoeCkK KyMgZGVmaW5lIHJkc3NwKHgpIF9fYnVpbHRpbl9pYTMyX3Jkc3NwcSAoeCkK KyNlbHNlCisjIGRlZmluZSBpbmNzc3AoeCkgX19idWlsdGluX2lhMzJfaW5j c3NwZCAoeCkKKyMgZGVmaW5lIHJkc3NwKHgpIF9fYnVpbHRpbl9pYTMyX3Jk c3NwZCAoeCkKKyNlbmRpZgorCitzdGF0aWMgdm9pZAorX19hdHRyaWJ1dGVf XyAoKG5vaW5saW5lLCBub2Nsb25lKSkKK3Rlc3QgKHVuc2lnbmVkIGxvbmcg ZnJhbWVzKQoreworICB1bnNpZ25lZCBsb25nIHNzcCA9IDA7CisgIHNzcCA9 IHJkc3NwIChzc3ApOworICBpZiAoc3NwICE9IDApCisgICAgeworICAgICAg dW5zaWduZWQgbG9uZyB0bXAgPSBmcmFtZXM7CisgICAgICB3aGlsZSAodG1w ID4gMjU1KQorCXsKKwkgIGluY3NzcCAodG1wKTsKKwkgIHRtcCAtPSAyNTU7 CisJfQorICAgICAgaW5jc3NwICh0bXApOworICAgIH0KKyAgLyogV2UgbXVz dCBjYWxsIF9leGl0IHNpbmNlIHNoYWRvdyBzdGFjayBpcyBpbmNvcnJlY3Qg bm93LiAgKi8KKyAgX2V4aXQgKDApOworfQorCitpbnQKK21haW4gKCkKK3sK KyAgdGVzdCAoMSk7CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMS5jIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMS5jCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjlmMjVkOWEKLS0tIC9k ZXYvbnVsbAorKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9j ZXQtc2psai0xLmMKQEAgLTAsMCArMSw0MiBAQAorLyogeyBkZy1kbyBjb21w aWxlIH0gKi8KKy8qIHsgZGctb3B0aW9ucyAiLU8gLWZpbnN0cnVtZW50LWNv bnRyb2wtZmxvdyAtbWNldCIgfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4t YXNzZW1ibGVyLXRpbWVzICJlbmRicjMyIiA0IHsgdGFyZ2V0IGlhMzIgfSB9 IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAi ZW5kYnI2NCIgNCB7IHRhcmdldCB7ICEgaWEzMiB9IH0gfSB9ICovCisvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgInJkc3NwXFtkcV0i IDIgfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGlt ZXMgImluY3NzcFxbZHFdIiAxIH0gfSAqLworCisvKiBCYXNlZCBvbiBnY2Mu ZGcvc2V0am1wLTMuYy4gICovCisKK3ZvaWQgKmJ1Zls1XTsKKworZXh0ZXJu IHZvaWQgYWJvcnQgKHZvaWQpOworCit2b2lkIHJhaXNlMCh2b2lkKQorewor ICBfX2J1aWx0aW5fbG9uZ2ptcCAoYnVmLCAxKTsKK30KKworaW50IGV4ZWN1 dGUoaW50IGNtZCkKK3sKKyAgaW50IGxhc3QgPSAwOworCisgIGlmIChfX2J1 aWx0aW5fc2V0am1wIChidWYpID09IDApCisgICAgd2hpbGUgKDEpCisgICAg ICB7CisJbGFzdCA9IDE7CisJcmFpc2UwICgpOworICAgICAgfQorCisgIGlm IChsYXN0ID09IDApCisgICAgcmV0dXJuIDA7CisgIGVsc2UKKyAgICByZXR1 cm4gY21kOworfQorCitpbnQgbWFpbih2b2lkKQoreworICBpZiAoZXhlY3V0 ZSAoMSkgPT0gMCkKKyAgICBhYm9ydCAoKTsKKworICByZXR1cm4gMDsKK30K ZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2Nl dC1zamxqLTIuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L2Nl dC1zamxqLTIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw Li5lMzJlY2Y2Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvY2V0LXNqbGotMi5jCkBAIC0wLDAgKzEsNCBAQAor LyogeyBkZy1kbyBydW4geyB0YXJnZXQgY2V0IH0gfSAqLworLyogeyBkZy1v cHRpb25zICItTyAtZmluc3RydW1lbnQtY29udHJvbC1mbG93IC1tY2V0IiB9 ICovCisKKyNpbmNsdWRlICJjZXQtc2psai0xLmMiCmRpZmYgLS1naXQgYS9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtc2psai0zLmMgYi9n Y2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtc2psai0zLmMKbmV3 IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWI5N2Y3NAotLS0g L2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2 L2NldC1zamxqLTMuYwpAQCAtMCwwICsxLDQ2IEBACisvKiB7IGRnLWRvIGNv bXBpbGUgfSAqLworLyogeyBkZy1vcHRpb25zICItTyAtZmluc3RydW1lbnQt Y29udHJvbC1mbG93IC1tY2V0IiB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMgImVuZGJyMzIiIDQgeyB0YXJnZXQgaWEzMiB9 IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz ICJlbmRicjY0IiA0IHsgdGFyZ2V0IHsgISBpYTMyIH0gfSB9IH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiY2FsbAlfc2V0 am1wIiAxIH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJjYWxsCWxvbmdqbXAiIDEgfSB9ICovCisKKyNpbmNsdWRlIDxz dGRpby5oPgorI2luY2x1ZGUgPHNldGptcC5oPgorCitqbXBfYnVmIGJ1ZjsK K2ludCBiYXIgKGludCk7CisKK2ludAorZm9vIChpbnQgaSkKK3sKKyAgaW50 IGogPSBpICogMTE7CisKKyAgaWYgKCFzZXRqbXAgKGJ1ZikpCisgICAgewor ICAgICAgaiArPSAzMzsKKyAgICAgIHByaW50ZiAoIkFmdGVyIHNldGptcDog aiA9ICVkXG4iLCBqKTsKKyAgICAgIGJhciAoaik7CisgICAgfQorCisgIHJl dHVybiBqICsgaTsKK30KKworaW50CitiYXIgKGludCBpKQoreworaW50IGog PSBpOworCisgIGogLT0gMTExOworICBwcmludGYgKCJJbiBsb25nam1wOiBq ID0gJWRcbiIsIGopOworICBsb25nam1wIChidWYsIDEpOworCisgIHJldHVy biBqOworfQorCitpbnQKK21haW4gKCkKK3sKKyAgZm9vICgxMCk7CisgIHJl dHVybiAwOworfQpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L2kzODYvY2V0LXN3aXRjaC0xLmMgYi9nY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9jZXQtc3dpdGNoLTEuYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwLi42MWFmNGVmCi0tLSAvZGV2L251bGwKKysrIGIv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3aXRjaC0xLmMK QEAgLTAsMCArMSwyNiBAQAorLyogVmVyaWZ5IHRoYXQgQ0VUIHdvcmtzLiAg Ki8KKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLW9wdGlvbnMg Ii1PIC1maW5zdHJ1bWVudC1jb250cm9sLWZsb3cgLW1jZXQiIH0gKi8KKy8q IHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyAiZW5kYnIzMiIg MSB7IHRhcmdldCBpYTMyIH0gfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nh bi1hc3NlbWJsZXItdGltZXMgImVuZGJyNjQiIDEgeyB0YXJnZXQgeyAhIGlh MzIgfSB9IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVy LXRpbWVzICJub3RyYWNrIGptcFxbIFx0XStcWypdIiAxIH0gfSAqLworCit2 b2lkIGZ1bmMyIChpbnQpOworCitpbnQgZnVuYzEgKGludCBhcmcpCit7Cisg IHN3aXRjaCAoYXJnKQorICB7CisgICAgY2FzZSAxOiBmdW5jMiAoYXJnKjEw MCk7CisgICAgY2FzZSAyOiBmdW5jMiAoYXJnKjMwMCk7CisgICAgY2FzZSA1 OiBmdW5jMiAoYXJnKjUwMCk7CisgICAgY2FzZSA4OiBmdW5jMiAoYXJnKjcw MCk7CisgICAgY2FzZSA3OiBmdW5jMiAoYXJnKjkwMCk7CisgICAgY2FzZSAt MTogZnVuYzIgKGFyZyotMTAwKTsKKyAgICBjYXNlIC0yOiBmdW5jMiAoYXJn Ki0zMDApOworICAgIGNhc2UgLTU6IGZ1bmMyIChhcmcqLTUwMCk7CisgICAg Y2FzZSAtNzogZnVuYzIgKGFyZyotNzAwKTsKKyAgICBjYXNlIC05OiBmdW5j MiAoYXJnKi05MDApOworICB9CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0 IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvY2V0LXN3aXRjaC0y LmMgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9jZXQtc3dpdGNo LTIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mOWZi NjlmCi0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFy Z2V0L2kzODYvY2V0LXN3aXRjaC0yLmMKQEAgLTAsMCArMSwyNiBAQAorLyog VmVyaWZ5IHRoYXQgQ0VUIHdvcmtzLiAgKi8KKy8qIHsgZGctZG8gY29tcGls ZSB9ICovCisvKiB7IGRnLW9wdGlvbnMgIi1PIC1maW5zdHJ1bWVudC1jb250 cm9sLWZsb3cgLW1jZXQgLW1jZXQtc3dpdGNoIiB9ICovCisvKiB7IGRnLWZp bmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMgImVuZGJyMzIiIDEyIHsgdGFy Z2V0IGlhMzIgfSB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2Vt Ymxlci10aW1lcyAiZW5kYnI2NCIgMTIgeyB0YXJnZXQgeyAhIGlhMzIgfSB9 IH0gfSAqLworLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVz ICJcWyBcdF0ram1wXFsgXHRdK1xbKl0iIDEgfSB9ICovCisKK3ZvaWQgZnVu YzIgKGludCk7CisKK2ludCBmdW5jMSAoaW50IGFyZykKK3sKKyAgc3dpdGNo IChhcmcpCisgIHsKKyAgICBjYXNlIDE6IGZ1bmMyIChhcmcqMTAwKTsKKyAg ICBjYXNlIDI6IGZ1bmMyIChhcmcqMzAwKTsKKyAgICBjYXNlIDU6IGZ1bmMy IChhcmcqNTAwKTsKKyAgICBjYXNlIDg6IGZ1bmMyIChhcmcqNzAwKTsKKyAg ICBjYXNlIDc6IGZ1bmMyIChhcmcqOTAwKTsKKyAgICBjYXNlIC0xOiBmdW5j MiAoYXJnKi0xMDApOworICAgIGNhc2UgLTI6IGZ1bmMyIChhcmcqLTMwMCk7 CisgICAgY2FzZSAtNTogZnVuYzIgKGFyZyotNTAwKTsKKyAgICBjYXNlIC03 OiBmdW5jMiAoYXJnKi03MDApOworICAgIGNhc2UgLTk6IGZ1bmMyIChhcmcq LTkwMCk7CisgIH0KKyAgcmV0dXJuIDA7Cit9CmRpZmYgLS1naXQgYS9nY2Mv dGVzdHN1aXRlL2xpYi90YXJnZXQtc3VwcG9ydHMuZXhwIGIvZ2NjL3Rlc3Rz dWl0ZS9saWIvdGFyZ2V0LXN1cHBvcnRzLmV4cAppbmRleCA1YTY1NjI3Li5m NmYyOTdiIDEwMDY0NAotLS0gYS9nY2MvdGVzdHN1aXRlL2xpYi90YXJnZXQt c3VwcG9ydHMuZXhwCisrKyBiL2djYy90ZXN0c3VpdGUvbGliL3RhcmdldC1z dXBwb3J0cy5leHAKQEAgLTg0ODIsMyArODQ4MiwxNyBAQCBwcm9jIGNoZWNr X2VmZmVjdGl2ZV90YXJnZXRfYXJtX2NvcHJvYzRfb2sgeyB9IHsKICAgICBy ZXR1cm4gW2NoZWNrX2NhY2hlZF9lZmZlY3RpdmVfdGFyZ2V0IGFybV9jb3By b2M0X29rIFwKIAkJY2hlY2tfZWZmZWN0aXZlX3RhcmdldF9hcm1fY29wcm9j NF9va19ub2NhY2hlXQogfQorCisjIFJldHVybiAxIGlmIENFVCBpbnN0cnVj dGlvbnMgY2FuIGJlIGNvbXBpbGVkLgorCitwcm9jIGNoZWNrX2VmZmVjdGl2 ZV90YXJnZXRfY2V0IHsgfSB7CisgICAgaWYgeyAhKFtpc3RhcmdldCBpPzg2 LSotKl0gfHwgW2lzdGFyZ2V0IHg4Nl82NC0qLSpdKSB9IHsKKwlyZXR1cm4g MAorICAgIH0KKyAgICByZXR1cm4gW2NoZWNrX25vX2NvbXBpbGVyX21lc3Nh Z2VzIGNldCBvYmplY3QgeworCXZvaWQgZm9vICh2b2lkKQorCXsKKwkgIGFz bSAoInNldHNzYnN5Iik7CisJfQorICAgIH0gIi1PMiIgXQorfQotLSAKMS44 LjMuMQoK --_002_D511F25789BA7F4EBA64C8A63891A0027AA040A4IRSMSX102gercor_--