From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Pip Cet Newsgroups: gmane.emacs.devel Subject: Re: Preview: portable dumper Date: Fri, 30 Mar 2018 08:46:48 +0000 Message-ID: References: <1775923222.898447.1518559575706@mail.libero.it> <277032065.898859.1518560883271@mail.libero.it> <1901861254.379742.1519646632018@mail.libero.it> <546679939.469612.1522307541367@mail.libero.it> <3b0dd2cd-fd15-c017-7249-7ae2fa567556@dancol.org> <87zi2rqkzi.fsf@gmail.com> <419cb2c8-0c26-104a-bab5-ba67ad148b88@dancol.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="089e082f4f84487f8a05689d4ae7" X-Trace: blaine.gmane.org 1522399692 3780 195.159.176.226 (30 Mar 2018 08:48:12 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Fri, 30 Mar 2018 08:48:12 +0000 (UTC) Cc: rpluim@gmail.com, Angelo Graziosi , emacs-devel@gnu.org To: Daniel Colascione Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Mar 30 10:48:07 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f1phe-0000sv-Qn for ged-emacs-devel@m.gmane.org; Fri, 30 Mar 2018 10:48:07 +0200 Original-Received: from localhost ([::1]:44577 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1pji-0002mA-6v for ged-emacs-devel@m.gmane.org; Fri, 30 Mar 2018 04:50:14 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44087) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1pi0-0002PI-3K for emacs-devel@gnu.org; Fri, 30 Mar 2018 04:49:02 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1ph6-0001TP-9Z for emacs-devel@gnu.org; Fri, 30 Mar 2018 04:48:28 -0400 Original-Received: from mail-wm0-x236.google.com ([2a00:1450:400c:c09::236]:38294) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f1ph4-0001RH-5X for emacs-devel@gnu.org; Fri, 30 Mar 2018 04:47:31 -0400 Original-Received: by mail-wm0-x236.google.com with SMTP id l16so15736575wmh.3 for ; Fri, 30 Mar 2018 01:47:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=EabJU4a1L1zIrgNJ0U4FWDaPUH2iVZKihvjJUS+VetM=; b=HbPdou5D+jsHYr3g50EyubTuq9qfQn4ukIzeyK4HsQOd8Yurhk4//u6fLwOxK3Zjrj 4otPpZTvJE483Tu17O0TwY7p2nxOsGXoq0KTbtNZLmBcosKM2Wtir3cPP6O5yLZS+EQo vAKvpNJCgNaF7GiVGmpAuW1neubM+sZQjJ6mH6/vzLOCT+4JDBmmAVyva3UHDfJaeFys IS1NFcYKkHVSEyfvngDky/r2bvvOy35Ke6fqgmekP9DxbnQk5Hip0k/5BroRF+44gedY owslrqfbB0bA5gt/KhOpowZAOQfVk6bHsrqnETllXvbPBiBQ1ACr17OVsJ6kAFrpMbuu z8kQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=EabJU4a1L1zIrgNJ0U4FWDaPUH2iVZKihvjJUS+VetM=; b=JKJxuxcUAlMBH/xGG6PslqtvmI8Vxg1IMH0aBDVSliuPOTLvbeqBwZUdAhBYTgW2JJ gegpE4NK2j0qdPWHWL/2+uPHLP8kZ626ujYnEbSBkq0VYFfDsxQuJw2UTjH2ZsuQj8OP r/BoV0jYpg8l0bJwqAx1oPaB4pnpaw2Xw0sz+o+EPsID5EixM0UdONpYsj7bln9fy3fb +rUF0Ef/I6V7Zt1jv17Ik/xOTkU6LJng0FDzFv3FFzdD/C6Zt58DglD7ylMAjeQdrjlE jHksoKjxsG0iVPL2cYSPNoaTfsToVfT04M/mXYxLAizHRGnuFA0oEvLnRLHKPkFaQ5QZ sJXQ== X-Gm-Message-State: AElRT7Es4lT8iNnRT5+HpCXRKygnT7ZwmjYEztE/VCnxgKGniCH465hX MZ2iTKliBHvuGABZICamehDNTlUntzW1y7KG9lg= X-Google-Smtp-Source: AIpwx49Os1n2X6A0e7F2+2UwzqjY9/a1M9KNJLF9VGMHyatx5ea13i00FWQUbLkzD0DLi+fb29buBh5scu5VueQFJAI= X-Received: by 10.80.231.13 with SMTP id a13mr2173819edn.212.1522399648965; Fri, 30 Mar 2018 01:47:28 -0700 (PDT) Original-Received: by 10.80.129.230 with HTTP; Fri, 30 Mar 2018 01:46:48 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::236 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:224174 Archived-At: --089e082f4f84487f8a05689d4ae7 Content-Type: text/plain; charset="UTF-8" On Thu, Mar 29, 2018 at 4:15 PM, Pip Cet wrote: > inline void staticpro(Lisp_Object *ptr, Lisp_Object initial_value) > { > assume(*ptr == Qnil); > real_staticpro(ptr); > if (initial_value != Qnil) > *ptr = initial_value; > } Okay, GCC doesn't appear to optimize that expression by default, but I've attached a patch which does keep stripped binary size constant. It reduces C code size a little, avoids the ambiguity of whether staticpro or the initialization goes first, removes the Qnil == 0 assumption from a few places and generally seems like a slight improvement to me. Totally independent from the pdumper patch, of course. (And I'd prefer the pdumper patch to go in first.) --089e082f4f84487f8a05689d4ae7 Content-Type: text/x-patch; charset="US-ASCII"; name="emacs-staticpro-001.diff" Content-Disposition: attachment; filename="emacs-staticpro-001.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_jfdpbumu0 ZGlmZiAtLWdpdCBhL3NyYy9hbGxvYy5jIGIvc3JjL2FsbG9jLmMKaW5kZXggMzY5NTkyZDcwZWUu LmZmMzJkMTYzOWVlIDEwMDY0NAotLS0gYS9zcmMvYWxsb2MuYworKysgYi9zcmMvYWxsb2MuYwpA QCAtNTY5Niw3ICs1Njk2LDcgQEAgcHVyZWNvcHkgKExpc3BfT2JqZWN0IG9iaikKICAgIFZBUkFE RFJFU1MuICAqLwogCiB2b2lkCi1zdGF0aWNwcm8gKExpc3BfT2JqZWN0ICp2YXJhZGRyZXNzKQor c3RhdGljcHJvXzEgKExpc3BfT2JqZWN0ICp2YXJhZGRyZXNzKQogewogICBpZiAoc3RhdGljaWR4 ID49IE5TVEFUSUNTKQogICAgIGZhdGFsICgiTlNUQVRJQ1MgdG9vIHNtYWxsOyB0cnkgaW5jcmVh c2luZyBhbmQgcmVjb21waWxpbmcgRW1hY3MuIik7CmRpZmYgLS1naXQgYS9zcmMvYmlkaS5jIGIv c3JjL2JpZGkuYwppbmRleCA5YmM4ZGJlODYwMy4uMjRlNDM1YmJjMWQgMTAwNjQ0Ci0tLSBhL3Ny Yy9iaWRpLmMKKysrIGIvc3JjL2JpZGkuYwpAQCAtMTA5MCwyNSArMTA5MCwyMCBAQCBiaWRpX3Vu c2hlbHZlX2NhY2hlICh2b2lkICpkYXRhYnVmLCBib29sIGp1c3RfZnJlZSkKIHN0YXRpYyB2b2lk CiBiaWRpX2luaXRpYWxpemUgKHZvaWQpCiB7Ci0gIGJpZGlfdHlwZV90YWJsZSA9IHVuaXByb3Bf dGFibGUgKGludGVybiAoImJpZGktY2xhc3MiKSk7CisgIHN0YXRpY3BybyAoJmJpZGlfdHlwZV90 YWJsZSwgdW5pcHJvcF90YWJsZSAoaW50ZXJuICgiYmlkaS1jbGFzcyIpKSk7CiAgIGlmIChOSUxQ IChiaWRpX3R5cGVfdGFibGUpKQogICAgIGVtYWNzX2Fib3J0ICgpOwotICBzdGF0aWNwcm8gKCZi aWRpX3R5cGVfdGFibGUpOwogCi0gIGJpZGlfbWlycm9yX3RhYmxlID0gdW5pcHJvcF90YWJsZSAo aW50ZXJuICgibWlycm9yaW5nIikpOworICBzdGF0aWNwcm8gKCZiaWRpX21pcnJvcl90YWJsZSwg dW5pcHJvcF90YWJsZSAoaW50ZXJuICgibWlycm9yaW5nIikpKTsKICAgaWYgKE5JTFAgKGJpZGlf bWlycm9yX3RhYmxlKSkKICAgICBlbWFjc19hYm9ydCAoKTsKLSAgc3RhdGljcHJvICgmYmlkaV9t aXJyb3JfdGFibGUpOwogCi0gIGJpZGlfYnJhY2tldHNfdGFibGUgPSB1bmlwcm9wX3RhYmxlIChp bnRlcm4gKCJicmFja2V0LXR5cGUiKSk7CisgIHN0YXRpY3BybyAoJmJpZGlfYnJhY2tldHNfdGFi bGUsIHVuaXByb3BfdGFibGUgKGludGVybiAoImJyYWNrZXQtdHlwZSIpKSk7CiAgIGlmIChOSUxQ IChiaWRpX2JyYWNrZXRzX3RhYmxlKSkKICAgICBlbWFjc19hYm9ydCAoKTsKLSAgc3RhdGljcHJv ICgmYmlkaV9icmFja2V0c190YWJsZSk7CiAKLSAgcGFyYWdyYXBoX3N0YXJ0X3JlID0gYnVpbGRf c3RyaW5nICgiXlxcKFxmXFx8WyBcdF0qXFwpJCIpOwotICBzdGF0aWNwcm8gKCZwYXJhZ3JhcGhf c3RhcnRfcmUpOwotICBwYXJhZ3JhcGhfc2VwYXJhdGVfcmUgPSBidWlsZF9zdHJpbmcgKCJeWyBc dFxmXSokIik7Ci0gIHN0YXRpY3BybyAoJnBhcmFncmFwaF9zZXBhcmF0ZV9yZSk7CisgIHN0YXRp Y3BybyAoJnBhcmFncmFwaF9zdGFydF9yZSwgYnVpbGRfc3RyaW5nICgiXlxcKFxmXFx8WyBcdF0q XFwpJCIpKTsKKyAgc3RhdGljcHJvICgmcGFyYWdyYXBoX3NlcGFyYXRlX3JlLCBidWlsZF9zdHJp bmcgKCJeWyBcdFxmXSokIikpOwogCiAgIGJpZGlfY2FjaGVfc3AgPSAwOwogICBiaWRpX2NhY2hl X3RvdGFsX2FsbG9jID0gMDsKZGlmZiAtLWdpdCBhL3NyYy9idWZmZXIuYyBiL3NyYy9idWZmZXIu YwppbmRleCAxNDgzNzM3MmQzNC4uZTkwYmY2ZWNlMjAgMTAwNjQ0Ci0tLSBhL3NyYy9idWZmZXIu YworKysgYi9zcmMvYnVmZmVyLmMKQEAgLTU0NDEsMTIgKzU0NDEsMTEgQEAgZGVmdmFyX3Blcl9i dWZmZXIgKHN0cnVjdCBMaXNwX0J1ZmZlcl9PYmpmd2QgKmJvX2Z3ZCwgY29uc3QgY2hhciAqbmFt ZXN0cmluZywKIHZvaWQKIHN5bXNfb2ZfYnVmZmVyICh2b2lkKQogewotICBzdGF0aWNwcm8gKCZs YXN0X292ZXJsYXlfbW9kaWZpY2F0aW9uX2hvb2tzKTsKLSAgbGFzdF9vdmVybGF5X21vZGlmaWNh dGlvbl9ob29rcwotICAgID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAoMTApLCBRbmlsKTsK KyAgc3RhdGljcHJvICgmbGFzdF9vdmVybGF5X21vZGlmaWNhdGlvbl9ob29rcywKKyAgICAgICAg ICAgICBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgxMCksIFFuaWwpKTsKIAotICBzdGF0aWNw cm8gKCZRU0Z1bmRhbWVudGFsKTsKLSAgc3RhdGljcHJvICgmVmJ1ZmZlcl9hbGlzdCk7CisgIHN0 YXRpY3BybyAoJlFTRnVuZGFtZW50YWwsIFFuaWwpOworICBzdGF0aWNwcm8gKCZWYnVmZmVyX2Fs aXN0LCBRbmlsKTsKIAogICBERUZTWU0gKFFjaG9pY2UsICJjaG9pY2UiKTsKICAgREVGU1lNIChR bGVmdCwgImxlZnQiKTsKZGlmZiAtLWdpdCBhL3NyYy9jYWxsaW50LmMgYi9zcmMvY2FsbGludC5j CmluZGV4IDA4YThiYmE0NjQ2Li44Y2FjMzA1ZTBiNCAxMDA2NDQKLS0tIGEvc3JjL2NhbGxpbnQu YworKysgYi9zcmMvY2FsbGludC5jCkBAIC04MjYsMTEgKzgyNiw5IEBAIEl0cyBudW1lcmljIG1l YW5pbmcgaXMgd2hhdCB5b3Ugd291bGQgZ2V0IGZyb20gYChpbnRlcmFjdGl2ZSAicCIpJy4gICov KQogdm9pZAogc3ltc19vZl9jYWxsaW50ICh2b2lkKQogewotICBwb2ludF9tYXJrZXIgPSBGbWFr ZV9tYXJrZXIgKCk7Ci0gIHN0YXRpY3BybyAoJnBvaW50X21hcmtlcik7CisgIHN0YXRpY3BybyAo JnBvaW50X21hcmtlciwgRm1ha2VfbWFya2VyICgpKTsKIAotICBjYWxsaW50X21lc3NhZ2UgPSBR bmlsOwotICBzdGF0aWNwcm8gKCZjYWxsaW50X21lc3NhZ2UpOworICBzdGF0aWNwcm8gKCZjYWxs aW50X21lc3NhZ2UsIFFuaWwpOwogCiAgIHByZXNlcnZlZF9mbnMgPSBsaXN0biAoQ09OU1RZUEVf UFVSRSwgNCwKIAkJCSBpbnRlcm5fY19zdHJpbmcgKCJyZWdpb24tYmVnaW5uaW5nIiksCmRpZmYg LS1naXQgYS9zcmMvY2FsbHByb2MuYyBiL3NyYy9jYWxscHJvYy5jCmluZGV4IDk3M2YzMjQxMzlj Li41YjM4NjcyODhlMSAxMDA2NDQKLS0tIGEvc3JjL2NhbGxwcm9jLmMKKysrIGIvc3JjL2NhbGxw cm9jLmMKQEAgLTE2NDAsMTUgKzE2NDAsMTMgQEAgdm9pZAogc3ltc19vZl9jYWxscHJvYyAodm9p ZCkKIHsKICNpZm5kZWYgRE9TX05UCi0gIFZ0ZW1wX2ZpbGVfbmFtZV9wYXR0ZXJuID0gYnVpbGRf c3RyaW5nICgiZW1hY3NYWFhYWFgiKTsKKyAgc3RhdGljcHJvICgmVnRlbXBfZmlsZV9uYW1lX3Bh dHRlcm4sIGJ1aWxkX3N0cmluZyAoImVtYWNzWFhYWFhYIikpOwogI2Vsc2UgIC8qIERPU19OVCAq LwotICBWdGVtcF9maWxlX25hbWVfcGF0dGVybiA9IGJ1aWxkX3N0cmluZyAoImVtWFhYWFhYIik7 CisgIHN0YXRpY3BybyAoJlZ0ZW1wX2ZpbGVfbmFtZV9wYXR0ZXJuLCBidWlsZF9zdHJpbmcgKCJl bVhYWFhYWCIpKTsKICNlbmRpZgotICBzdGF0aWNwcm8gKCZWdGVtcF9maWxlX25hbWVfcGF0dGVy bik7CiAKICNpZmRlZiBNU0RPUwotICBzeW5jaF9wcm9jZXNzX3RlbXBmaWxlID0gbWFrZV9udW1i ZXIgKDApOwotICBzdGF0aWNwcm8gKCZzeW5jaF9wcm9jZXNzX3RlbXBmaWxlKTsKKyAgc3RhdGlj cHJvICgmc3luY2hfcHJvY2Vzc190ZW1wZmlsZSwgbWFrZV9udW1iZXIgKDApKTsKICNlbmRpZgog CiAgIERFRlZBUl9MSVNQICgic2hlbGwtZmlsZS1uYW1lIiwgVnNoZWxsX2ZpbGVfbmFtZSwKZGlm ZiAtLWdpdCBhL3NyYy9jYXNldGFiLmMgYi9zcmMvY2FzZXRhYi5jCmluZGV4IDhmODA2YTA2NDdj Li5kMjM4OGQ1ZmM1OCAxMDA2NDQKLS0tIGEvc3JjL2Nhc2V0YWIuYworKysgYi9zcmMvY2FzZXRh Yi5jCkBAIC0yNDcsNiArMjQ3LDExIEBAIGluaXRfY2FzZXRhYl9vbmNlICh2b2lkKQogICBERUZT WU0gKFFjYXNlX3RhYmxlLCAiY2FzZS10YWJsZSIpOwogICBGcHV0IChRY2FzZV90YWJsZSwgUWNo YXJfdGFibGVfZXh0cmFfc2xvdHMsIG1ha2VfbnVtYmVyICgzKSk7CiAKKyAgc3RhdGljcHJvICgm VmFzY2lpX2Nhbm9uX3RhYmxlLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmVmFzY2lpX2Rvd25jYXNl X3RhYmxlLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmVmFzY2lpX2Vxdl90YWJsZSwgUW5pbCk7Cisg IHN0YXRpY3BybyAoJlZhc2NpaV91cGNhc2VfdGFibGUsIFFuaWwpOworCiAgIGRvd24gPSBGbWFr ZV9jaGFyX3RhYmxlIChRY2FzZV90YWJsZSwgUW5pbCk7CiAgIFZhc2NpaV9kb3duY2FzZV90YWJs ZSA9IGRvd247CiAgIHNldF9jaGFyX3RhYmxlX3B1cnBvc2UgKGRvd24sIFFjYXNlX3RhYmxlKTsK QEAgLTI4OSwxMSArMjk0LDYgQEAgc3ltc19vZl9jYXNldGFiICh2b2lkKQogewogICBERUZTWU0g KFFjYXNlX3RhYmxlX3AsICJjYXNlLXRhYmxlLXAiKTsKIAotICBzdGF0aWNwcm8gKCZWYXNjaWlf Y2Fub25fdGFibGUpOwotICBzdGF0aWNwcm8gKCZWYXNjaWlfZG93bmNhc2VfdGFibGUpOwotICBz dGF0aWNwcm8gKCZWYXNjaWlfZXF2X3RhYmxlKTsKLSAgc3RhdGljcHJvICgmVmFzY2lpX3VwY2Fz ZV90YWJsZSk7Ci0KICAgZGVmc3ViciAoJlNjYXNlX3RhYmxlX3ApOwogICBkZWZzdWJyICgmU2N1 cnJlbnRfY2FzZV90YWJsZSk7CiAgIGRlZnN1YnIgKCZTc3RhbmRhcmRfY2FzZV90YWJsZSk7CmRp ZmYgLS1naXQgYS9zcmMvY2NsLmMgYi9zcmMvY2NsLmMKaW5kZXggZWQ4NTg4ZDdmOGEuLmIyYTQ1 Yzg3NDE5IDEwMDY0NAotLS0gYS9zcmMvY2NsLmMKKysrIGIvc3JjL2NjbC5jCkBAIC0yMjc0LDgg KzIyNzQsNyBAQCBSZXR1cm4gaW5kZXggbnVtYmVyIG9mIHRoZSByZWdpc3RlcmVkIG1hcC4gICov KQogdm9pZAogc3ltc19vZl9jY2wgKHZvaWQpCiB7Ci0gIHN0YXRpY3BybyAoJlZjY2xfcHJvZ3Jh bV90YWJsZSk7Ci0gIFZjY2xfcHJvZ3JhbV90YWJsZSA9IEZtYWtlX3ZlY3RvciAobWFrZV9udW1i ZXIgKDMyKSwgUW5pbCk7CisgIHN0YXRpY3BybyAoJlZjY2xfcHJvZ3JhbV90YWJsZSwgRm1ha2Vf dmVjdG9yIChtYWtlX251bWJlciAoMzIpLCBRbmlsKSk7CiAKICAgREVGU1lNIChRY2NsLCAiY2Ns Iik7CiAgIERFRlNZTSAoUWNjbHAsICJjY2xwIik7CmRpZmYgLS1naXQgYS9zcmMvY2hhcmFjdGVy LmMgYi9zcmMvY2hhcmFjdGVyLmMKaW5kZXggNmE2ODk4MDgwNDMuLmNiZGUzZjQxNGU5IDEwMDY0 NAotLS0gYS9zcmMvY2hhcmFjdGVyLmMKKysrIGIvc3JjL2NoYXJhY3Rlci5jCkBAIC0xMDk5LDgg KzEwOTksNyBAQCBzeW1zX29mX2NoYXJhY3RlciAodm9pZCkKICAgREVGU1lNIChRY2hhcmFjdGVy cCwgImNoYXJhY3RlcnAiKTsKICAgREVGU1lNIChRYXV0b19maWxsX2NoYXJzLCAiYXV0by1maWxs LWNoYXJzIik7CiAKLSAgc3RhdGljcHJvICgmVmNoYXJfdW5pZnlfdGFibGUpOwotICBWY2hhcl91 bmlmeV90YWJsZSA9IFFuaWw7CisgIHN0YXRpY3BybyAoJlZjaGFyX3VuaWZ5X3RhYmxlLCBRbmls KTsKIAogICBkZWZzdWJyICgmU21heF9jaGFyKTsKICAgZGVmc3ViciAoJlNjaGFyYWN0ZXJwKTsK ZGlmZiAtLWdpdCBhL3NyYy9jaGFyc2V0LmMgYi9zcmMvY2hhcnNldC5jCmluZGV4IDA1MjkwZTg2 YjRlLi42MGI0NjEzN2QxOSAxMDA2NDQKLS0tIGEvc3JjL2NoYXJzZXQuYworKysgYi9zcmMvY2hh cnNldC5jCkBAIC0yMzQ4LDE3ICsyMzQ4LDEzIEBAIHN5bXNfb2ZfY2hhcnNldCAodm9pZCkKICAg REVGU1lNIChRZWlnaHRfYml0LCAiZWlnaHQtYml0Iik7CiAgIERFRlNZTSAoUWlzb184ODU5XzEs ICJpc28tODg1OS0xIik7CiAKLSAgc3RhdGljcHJvICgmVmNoYXJzZXRfb3JkZXJlZF9saXN0KTsK LSAgVmNoYXJzZXRfb3JkZXJlZF9saXN0ID0gUW5pbDsKKyAgc3RhdGljcHJvICgmVmNoYXJzZXRf b3JkZXJlZF9saXN0LCBRbmlsKTsKIAotICBzdGF0aWNwcm8gKCZWaXNvXzIwMjJfY2hhcnNldF9s aXN0KTsKLSAgVmlzb18yMDIyX2NoYXJzZXRfbGlzdCA9IFFuaWw7CisgIHN0YXRpY3BybyAoJlZp c29fMjAyMl9jaGFyc2V0X2xpc3QsIFFuaWwpOwogCi0gIHN0YXRpY3BybyAoJlZlbWFjc19tdWxl X2NoYXJzZXRfbGlzdCk7Ci0gIFZlbWFjc19tdWxlX2NoYXJzZXRfbGlzdCA9IFFuaWw7CisgIHN0 YXRpY3BybyAoJlZlbWFjc19tdWxlX2NoYXJzZXRfbGlzdCwgUW5pbCk7CiAKLSAgc3RhdGljcHJv ICgmVmNoYXJzZXRfaGFzaF90YWJsZSk7Ci0gIFZjaGFyc2V0X2hhc2hfdGFibGUgPSBDQUxMTiAo Rm1ha2VfaGFzaF90YWJsZSwgUUN0ZXN0LCBRZXEpOworICBzdGF0aWNwcm8gKCZWY2hhcnNldF9o YXNoX3RhYmxlLCBDQUxMTiAoRm1ha2VfaGFzaF90YWJsZSwgUUN0ZXN0LCBRZXEpKTsKIAogICBj aGFyc2V0X3RhYmxlID0gY2hhcnNldF90YWJsZV9pbml0OwogICBjaGFyc2V0X3RhYmxlX3NpemUg PSBBUlJBWUVMVFMgKGNoYXJzZXRfdGFibGVfaW5pdCk7CmRpZmYgLS1naXQgYS9zcmMvY29kaW5n LmMgYi9zcmMvY29kaW5nLmMKaW5kZXggYTE2MTQyYTliNDEuLjQ0YzY4ZThiODgwIDEwMDY0NAot LS0gYS9zcmMvY29kaW5nLmMKKysrIGIvc3JjL2NvZGluZy5jCkBAIC0xMDgxOCwyMCArMTA4MTgs MTUgQEAgaW5pdF9jb2Rpbmdfb25jZSAodm9pZCkKIHZvaWQKIHN5bXNfb2ZfY29kaW5nICh2b2lk KQogewotICBzdGF0aWNwcm8gKCZWY29kaW5nX3N5c3RlbV9oYXNoX3RhYmxlKTsKLSAgVmNvZGlu Z19zeXN0ZW1faGFzaF90YWJsZSA9IENBTExOIChGbWFrZV9oYXNoX3RhYmxlLCBRQ3Rlc3QsIFFl cSk7CisgIHN0YXRpY3BybyAoJlZjb2Rpbmdfc3lzdGVtX2hhc2hfdGFibGUsIENBTExOIChGbWFr ZV9oYXNoX3RhYmxlLCBRQ3Rlc3QsIFFlcSkpOwogCi0gIHN0YXRpY3BybyAoJlZzamlzX2NvZGlu Z19zeXN0ZW0pOwotICBWc2ppc19jb2Rpbmdfc3lzdGVtID0gUW5pbDsKKyAgc3RhdGljcHJvICgm VnNqaXNfY29kaW5nX3N5c3RlbSwgUW5pbCk7CiAKLSAgc3RhdGljcHJvICgmVmJpZzVfY29kaW5n X3N5c3RlbSk7Ci0gIFZiaWc1X2NvZGluZ19zeXN0ZW0gPSBRbmlsOworICBzdGF0aWNwcm8gKCZW YmlnNV9jb2Rpbmdfc3lzdGVtLCBRbmlsKTsKIAotICBzdGF0aWNwcm8gKCZWY29kZV9jb252ZXJz aW9uX3JldXNlZF93b3JrYnVmKTsKLSAgVmNvZGVfY29udmVyc2lvbl9yZXVzZWRfd29ya2J1ZiA9 IFFuaWw7CisgIHN0YXRpY3BybyAoJlZjb2RlX2NvbnZlcnNpb25fcmV1c2VkX3dvcmtidWYsIFFu aWwpOwogCi0gIHN0YXRpY3BybyAoJlZjb2RlX2NvbnZlcnNpb25fd29ya2J1Zl9uYW1lKTsKLSAg VmNvZGVfY29udmVyc2lvbl93b3JrYnVmX25hbWUgPSBidWlsZF9wdXJlX2Nfc3RyaW5nICgiICpj b2RlLWNvbnZlcnNpb24td29yayoiKTsKKyAgc3RhdGljcHJvICgmVmNvZGVfY29udmVyc2lvbl93 b3JrYnVmX25hbWUsIGJ1aWxkX3B1cmVfY19zdHJpbmcgKCIgKmNvZGUtY29udmVyc2lvbi13b3Jr KiIpKTsKIAogICByZXVzZWRfd29ya2J1Zl9pbl91c2UgPSAwOwogCkBAIC0xMDkxNCw5ICsxMDkw OSw3IEBAIHN5bXNfb2ZfY29kaW5nICh2b2lkKQogICBERUZTWU0gKFFDcHJlX3dyaXRlX2NvbnZl cnNpb24sICI6cHJlLXdyaXRlLWNvbnZlcnNpb24iKTsKICAgREVGU1lNIChRQ2FzY2lpX2NvbXBh dGlibGVfcCwgIjphc2NpaS1jb21wYXRpYmxlLXAiKTsKIAotICBWY29kaW5nX2NhdGVnb3J5X3Rh YmxlCi0gICAgPSBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyIChjb2RpbmdfY2F0ZWdvcnlfbWF4 KSwgUW5pbCk7Ci0gIHN0YXRpY3BybyAoJlZjb2RpbmdfY2F0ZWdvcnlfdGFibGUpOworICBzdGF0 aWNwcm8gKCZWY29kaW5nX2NhdGVnb3J5X3RhYmxlLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVy IChjb2RpbmdfY2F0ZWdvcnlfbWF4KSwgUW5pbCkpOwogICAvKiBGb2xsb3dpbmdzIGFyZSB0YXJn ZXQgb2YgY29kZSBkZXRlY3Rpb24uICAqLwogICBBU0VUIChWY29kaW5nX2NhdGVnb3J5X3RhYmxl LCBjb2RpbmdfY2F0ZWdvcnlfaXNvXzcsCiAJaW50ZXJuX2Nfc3RyaW5nICgiY29kaW5nLWNhdGVn b3J5LWlzby03IikpOwpAQCAtMTEzNTIsMTAgKzExMzQ1LDkgQEAgaW50ZXJuYWwgY2hhcmFjdGVy IHJlcHJlc2VudGF0aW9uLiAgKi8pOwogICAgIEZzZXQgKEFSRUYgKFZjb2RpbmdfY2F0ZWdvcnlf dGFibGUsIGkpLCBRbm9fY29udmVyc2lvbik7CiAKICNpZiBkZWZpbmVkIChET1NfTlQpCi0gIHN5 c3RlbV9lb2xfdHlwZSA9IFFkb3M7CisgIHN0YXRpY3BybyAoJnN5c3RlbV9lb2xfdHlwZSwgUWRv cyk7CiAjZWxzZQotICBzeXN0ZW1fZW9sX3R5cGUgPSBRdW5peDsKKyAgc3RhdGljcHJvICgmc3lz dGVtX2VvbF90eXBlLCBRdW5peCk7CiAjZW5kaWYKLSAgc3RhdGljcHJvICgmc3lzdGVtX2VvbF90 eXBlKTsKIH0KICNlbmRpZiAvKiBlbWFjcyAqLwpkaWZmIC0tZ2l0IGEvc3JjL2NvbXBvc2l0ZS5j IGIvc3JjL2NvbXBvc2l0ZS5jCmluZGV4IDc0NmMyOTU5Zjg0Li5mN2U5NWEwMjU1YiAxMDA2NDQK LS0tIGEvc3JjL2NvbXBvc2l0ZS5jCisrKyBiL3NyYy9jb21wb3NpdGUuYwpAQCAtMTkwNywxOSAr MTkwNywxNSBAQCBzeW1zX29mX2NvbXBvc2l0ZSAodm9pZCkKICAgICAgYW5kIHRodXMgaXQncyBu b3Qgd29ydGggdG8gc2F2ZSBtZW1vcnkgaW4gc3VjaCBhIHdheS4gIFNvLCB3ZQogICAgICBtYWtl IHRoZSB0YWJsZSBub3Qgd2Vhay4gICovCiAgIExpc3BfT2JqZWN0IGFyZ3NbXSA9IHtRQ3Rlc3Qs IFFlcXVhbCwgUUNzaXplLCBtYWtlX251bWJlciAoMzExKX07Ci0gIGNvbXBvc2l0aW9uX2hhc2hf dGFibGUgPSBDQUxMTUFOWSAoRm1ha2VfaGFzaF90YWJsZSwgYXJncyk7Ci0gIHN0YXRpY3BybyAo JmNvbXBvc2l0aW9uX2hhc2hfdGFibGUpOworICBzdGF0aWNwcm8gKCZjb21wb3NpdGlvbl9oYXNo X3RhYmxlLCBDQUxMTUFOWSAoRm1ha2VfaGFzaF90YWJsZSwgYXJncykpOwogCiAgIC8qIE1ha2Ug YSBoYXNoIHRhYmxlIGZvciBnbHlwaC1zdHJpbmcuICAqLwotICBnc3RyaW5nX2hhc2hfdGFibGUg PSBDQUxMTUFOWSAoRm1ha2VfaGFzaF90YWJsZSwgYXJncyk7Ci0gIHN0YXRpY3BybyAoJmdzdHJp bmdfaGFzaF90YWJsZSk7CisgIHN0YXRpY3BybyAoJmdzdHJpbmdfaGFzaF90YWJsZSwgQ0FMTE1B TlkgKEZtYWtlX2hhc2hfdGFibGUsIGFyZ3MpKTsKIAotICBzdGF0aWNwcm8gKCZnc3RyaW5nX3dv cmtfaGVhZGVycyk7Ci0gIGdzdHJpbmdfd29ya19oZWFkZXJzID0gbWFrZV91bmluaXRfdmVjdG9y ICg4KTsKKyAgc3RhdGljcHJvICgmZ3N0cmluZ193b3JrX2hlYWRlcnMsIG1ha2VfdW5pbml0X3Zl Y3RvciAoOCkpOwogICBmb3IgKGkgPSAwOyBpIDwgODsgaSsrKQogICAgIEFTRVQgKGdzdHJpbmdf d29ya19oZWFkZXJzLCBpLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyIChpICsgMiksIFFuaWwp KTsKLSAgc3RhdGljcHJvICgmZ3N0cmluZ193b3JrKTsKLSAgZ3N0cmluZ193b3JrID0gRm1ha2Vf dmVjdG9yIChtYWtlX251bWJlciAoMTApLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmZ3N0cmluZ193 b3JrLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgxMCksIFFuaWwpKTsKIAogICAvKiBUZXh0 IHByb3BlcnR5IGBjb21wb3NpdGlvbicgc2hvdWxkIGJlIG5vbnN0aWNreSBieSBkZWZhdWx0LiAg Ki8KICAgVnRleHRfcHJvcGVydHlfZGVmYXVsdF9ub25zdGlja3kKZGlmZiAtLWdpdCBhL3NyYy9k YnVzYmluZC5jIGIvc3JjL2RidXNiaW5kLmMKaW5kZXggZWMzNzA3ZDE4ZjMuLjNhZjIwNTUxOTkz IDEwMDY0NAotLS0gYS9zcmMvZGJ1c2JpbmQuYworKysgYi9zcmMvZGJ1c2JpbmQuYwpAQCAtMTgy NCw4ICsxODI0LDcgQEAgYmUgY2FsbGVkIHdoZW4gdGhlIEQtQnVzIHJlcGx5IG1lc3NhZ2UgYXJy aXZlcy4gICovKTsKICNlbmRpZgogCiAgIC8qIEluaXRpYWxpemUgaW50ZXJuYWwgb2JqZWN0cy4g ICovCi0gIHhkX3JlZ2lzdGVyZWRfYnVzZXMgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZ4ZF9yZWdp c3RlcmVkX2J1c2VzKTsKKyAgc3RhdGljcHJvICgmeGRfcmVnaXN0ZXJlZF9idXNlcywgUW5pbCk7 CiAKICAgRnByb3ZpZGUgKGludGVybl9jX3N0cmluZyAoImRidXNiaW5kIiksIFFuaWwpOwogCmRp ZmYgLS1naXQgYS9zcmMvZGlzcG5ldy5jIGIvc3JjL2Rpc3BuZXcuYwppbmRleCA1NmYxMjUyMThk Yy4uNjA4ZTExMjM0NTkgMTAwNjQ0Ci0tLSBhL3NyYy9kaXNwbmV3LmMKKysrIGIvc3JjL2Rpc3Bu ZXcuYwpAQCAtNjIyNyw4ICs2MjI3LDcgQEAgc3ltc19vZl9kaXNwbGF5ICh2b2lkKQogICBkZWZz dWJyICgmU2R1bXBfcmVkaXNwbGF5X2hpc3RvcnkpOwogI2VuZGlmCiAKLSAgZnJhbWVfYW5kX2J1 ZmZlcl9zdGF0ZSA9IEZtYWtlX3ZlY3RvciAobWFrZV9udW1iZXIgKDIwKSwgUWxhbWJkYSk7Ci0g IHN0YXRpY3BybyAoJmZyYW1lX2FuZF9idWZmZXJfc3RhdGUpOworICBzdGF0aWNwcm8gKCZmcmFt ZV9hbmRfYnVmZmVyX3N0YXRlLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgyMCksIFFsYW1i ZGEpKTsKIAogICAvKiBUaGlzIGlzIHRoZSAicHVycG9zZSIgc2xvdCBvZiBhIGRpc3BsYXkgdGFi bGUuICAqLwogICBERUZTWU0gKFFkaXNwbGF5X3RhYmxlLCAiZGlzcGxheS10YWJsZSIpOwpkaWZm IC0tZ2l0IGEvc3JjL2VtYWNzLmMgYi9zcmMvZW1hY3MuYwppbmRleCA4ZWE2MWI3MWZiNy4uMzIy OWM0ZDQ2NDggMTAwNjQ0Ci0tLSBhL3NyYy9lbWFjcy5jCisrKyBiL3NyYy9lbWFjcy5jCkBAIC0y NjgwLDcgKzI2ODAsNiBAQCBsaWJyYXJpZXM7IG9ubHkgdGhvc2UgYWxyZWFkeSBrbm93biBieSBF bWFjcyB3aWxsIGJlIGxvYWRlZC4gICovKTsKICAgRnB1dCAoaW50ZXJuX2Nfc3RyaW5nICgiZHlu YW1pYy1saWJyYXJ5LWFsaXN0IiksIFFyaXNreV9sb2NhbF92YXJpYWJsZSwgUXQpOwogCiAjaWZk ZWYgV0lORE9XU05UCi0gIFZsaWJyYXJ5X2NhY2hlID0gUW5pbDsKLSAgc3RhdGljcHJvICgmVmxp YnJhcnlfY2FjaGUpOworICBzdGF0aWNwcm8gKCZWbGlicmFyeV9jYWNoZSwgUW5pbCk7CiAjZW5k aWYKIH0KZGlmZiAtLWdpdCBhL3NyYy9ldmFsLmMgYi9zcmMvZXZhbC5jCmluZGV4IGE2ZTFkODZj NGFiLi5iYTMwNGVlODQ1NiAxMDA2NDQKLS0tIGEvc3JjL2V2YWwuYworKysgYi9zcmMvZXZhbC5j CkBAIC00MTA3LDEzICs0MTA3LDEwIEBAIGFsaXN0IG9mIGFjdGl2ZSBsZXhpY2FsIGJpbmRpbmdz LiAgKi8pOwogICAgICAoSnVzdCBpbWFnaW5lIGlmIHNvbWVvbmUgbWFrZXMgaXQgYnVmZmVyLWxv Y2FsKS4gICovCiAgIEZ1bmludGVybiAoUWludGVybmFsX2ludGVycHJldGVyX2Vudmlyb25tZW50 LCBRbmlsKTsKIAotICBWcnVuX2hvb2tzID0gaW50ZXJuX2Nfc3RyaW5nICgicnVuLWhvb2tzIik7 Ci0gIHN0YXRpY3BybyAoJlZydW5faG9va3MpOworICBzdGF0aWNwcm8gKCZWcnVuX2hvb2tzLCBp bnRlcm5fY19zdHJpbmcgKCJydW4taG9va3MiKSk7CiAKLSAgc3RhdGljcHJvICgmVmF1dG9sb2Fk X3F1ZXVlKTsKLSAgVmF1dG9sb2FkX3F1ZXVlID0gUW5pbDsKLSAgc3RhdGljcHJvICgmVnNpZ25h bGluZ19mdW5jdGlvbik7Ci0gIFZzaWduYWxpbmdfZnVuY3Rpb24gPSBRbmlsOworICBzdGF0aWNw cm8gKCZWYXV0b2xvYWRfcXVldWUsIFFuaWwpOworICBzdGF0aWNwcm8gKCZWc2lnbmFsaW5nX2Z1 bmN0aW9uLCBRbmlsKTsKIAogICBpbmhpYml0X2xpc3BfY29kZSA9IFFuaWw7CiAKZGlmZiAtLWdp dCBhL3NyYy9maWxlaW8uYyBiL3NyYy9maWxlaW8uYwppbmRleCA1MmNhOGI2Mjk3ZS4uMTcyMzBh ODJmYjAgMTAwNjQ0Ci0tLSBhL3NyYy9maWxlaW8uYworKysgYi9zcmMvZmlsZWlvLmMKQEAgLTYw OTEsOCArNjA5MSw3IEBAIGFubm90YXRpb24gZnVuY3Rpb25zIGluIGB3cml0ZS1yZWdpb24tYW5u b3RhdGUtZnVuY3Rpb25zJyBjaGFuZ2VkIHRoZQogY3VycmVudCBidWZmZXIsIHRoZSBmdW5jdGlv biBzdG9yZWQgaW4gdGhpcyB2YXJpYWJsZSBpcyBjYWxsZWQgZm9yCiBlYWNoIG9mIHRob3NlIGFk ZGl0aW9uYWwgYnVmZmVycyBhcyB3ZWxsLCBpbiBhZGRpdGlvbiB0byB0aGUgb3JpZ2luYWwKIGJ1 ZmZlci4gIFRoZSByZWxldmFudCBidWZmZXIgaXMgY3VycmVudCBkdXJpbmcgZWFjaCBmdW5jdGlv biBjYWxsLiAgKi8pOwotICBWd3JpdGVfcmVnaW9uX3Bvc3RfYW5ub3RhdGlvbl9mdW5jdGlvbiA9 IFFuaWw7Ci0gIHN0YXRpY3BybyAoJlZ3cml0ZV9yZWdpb25fYW5ub3RhdGlvbl9idWZmZXJzKTsK KyAgc3RhdGljcHJvICgmVndyaXRlX3JlZ2lvbl9hbm5vdGF0aW9uX2J1ZmZlcnMsIFFuaWwpOwog CiAgIERFRlZBUl9MSVNQICgid3JpdGUtcmVnaW9uLWFubm90YXRpb25zLXNvLWZhciIsCiAJICAg ICAgIFZ3cml0ZV9yZWdpb25fYW5ub3RhdGlvbnNfc29fZmFyLApkaWZmIC0tZ2l0IGEvc3JjL2Zu cy5jIGIvc3JjL2Zucy5jCmluZGV4IDk0YjlkOTg0ZjBkLi4xNmM4NDJiN2ExMiAxMDA2NDQKLS0t IGEvc3JjL2Zucy5jCisrKyBiL3NyYy9mbnMuYwpAQCAtNTE3OCwxMSArNTE3OCw5IEBAIGNvbXBp bGF0aW9uLiAgKi8pOwogICBWb3ZlcnJpZGluZ19wbGlzdF9lbnZpcm9ubWVudCA9IFFuaWw7CiAg IERFRlNZTSAoUW92ZXJyaWRpbmdfcGxpc3RfZW52aXJvbm1lbnQsICJvdmVycmlkaW5nLXBsaXN0 LWVudmlyb25tZW50Iik7CiAKLSAgc3RhdGljcHJvICgmc3RyaW5nX2NoYXJfYnl0ZV9jYWNoZV9z dHJpbmcpOwotICBzdHJpbmdfY2hhcl9ieXRlX2NhY2hlX3N0cmluZyA9IFFuaWw7CisgIHN0YXRp Y3BybyAoJnN0cmluZ19jaGFyX2J5dGVfY2FjaGVfc3RyaW5nLCBRbmlsKTsKIAotICByZXF1aXJl X25lc3RpbmdfbGlzdCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJnJlcXVpcmVfbmVzdGluZ19saXN0 KTsKKyAgc3RhdGljcHJvICgmcmVxdWlyZV9uZXN0aW5nX2xpc3QsIFFuaWwpOwogCiAgIEZzZXQg KFF5ZXNfb3Jfbm9fcF9oaXN0b3J5LCBRbmlsKTsKIApkaWZmIC0tZ2l0IGEvc3JjL2ZvbnQuYyBi L3NyYy9mb250LmMKaW5kZXggYTZkM2Y1ZDQ3OTguLjM0ZmYyM2I0MGQwIDEwMDY0NAotLS0gYS9z cmMvZm9udC5jCisrKyBiL3NyYy9mb250LmMKQEAgLTUzMDcsOCArNTMwNyw3IEBAIHN5bXNfb2Zf Zm9udCAodm9pZCkKICAgc29ydF9zaGlmdF9iaXRzW0ZPTlRfV0lEVEhfSU5ERVhdID0gMjM7CiAg IC8qIE5vdGUgdGhhdCB0aGUgb3RoZXIgZWxlbWVudHMgaW4gc29ydF9zaGlmdF9iaXRzIGFyZSBu b3QgdXNlZC4gICovCiAKLSAgc3RhdGljcHJvICgmZm9udF9jaGFyc2V0X2FsaXN0KTsKLSAgZm9u dF9jaGFyc2V0X2FsaXN0ID0gUW5pbDsKKyAgc3RhdGljcHJvICgmZm9udF9jaGFyc2V0X2FsaXN0 LCBRbmlsKTsKIAogICBERUZTWU0gKFFvcGVudHlwZSwgIm9wZW50eXBlIik7CiAKQEAgLTUzNDYs MTMgKzUzNDUsMTAgQEAgc3ltc19vZl9mb250ICh2b2lkKQogCiAgIERFRlNZTSAoUUN1c2VyX3Nw ZWMsICI6dXNlci1zcGVjIik7CiAKLSAgc3RhdGljcHJvICgmc2NyYXRjaF9mb250X3NwZWMpOwot ICBzY3JhdGNoX2ZvbnRfc3BlYyA9IEZmb250X3NwZWMgKDAsIE5VTEwpOwotICBzdGF0aWNwcm8g KCZzY3JhdGNoX2ZvbnRfcHJlZmVyKTsKLSAgc2NyYXRjaF9mb250X3ByZWZlciA9IEZmb250X3Nw ZWMgKDAsIE5VTEwpOworICBzdGF0aWNwcm8gKCZzY3JhdGNoX2ZvbnRfc3BlYywgRmZvbnRfc3Bl YyAoMCwgTlVMTCkpOworICBzdGF0aWNwcm8gKCZzY3JhdGNoX2ZvbnRfcHJlZmVyLCBGZm9udF9z cGVjICgwLCBOVUxMKSk7CiAKLSAgc3RhdGljcHJvICgmVmZvbnRfbG9nX2RlZmVycmVkKTsKLSAg VmZvbnRfbG9nX2RlZmVycmVkID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAoMyksIFFuaWwp OworICBzdGF0aWNwcm8gKCZWZm9udF9sb2dfZGVmZXJyZWQsIEZtYWtlX3ZlY3RvciAobWFrZV9u dW1iZXIgKDMpLCBRbmlsKSk7CiAKICNpZiAwCiAjaWZkZWYgSEFWRV9MSUJPVEYKQEAgLTU0NDcs OCArNTQ0Myw3IEBAIFRoaXMgdmFyaWFibGUgY2Fubm90IGJlIHNldDsgdHJ5aW5nIHRvIGRvIHNv IHdpbGwgc2lnbmFsIGFuIGVycm9yLiAgKi8pOwogICBWZm9udF93aWR0aF90YWJsZSA9IEJVSUxE X1NUWUxFX1RBQkxFICh3aWR0aF90YWJsZSk7CiAgIG1ha2Vfc3ltYm9sX2NvbnN0YW50IChpbnRl cm5fY19zdHJpbmcgKCJmb250LXdpZHRoLXRhYmxlIikpOwogCi0gIHN0YXRpY3BybyAoJmZvbnRf c3R5bGVfdGFibGUpOwotICBmb250X3N0eWxlX3RhYmxlID0gbWFrZV91bmluaXRfdmVjdG9yICgz KTsKKyAgc3RhdGljcHJvICgmZm9udF9zdHlsZV90YWJsZSwgbWFrZV91bmluaXRfdmVjdG9yICgz KSk7CiAgIEFTRVQgKGZvbnRfc3R5bGVfdGFibGUsIDAsIFZmb250X3dlaWdodF90YWJsZSk7CiAg IEFTRVQgKGZvbnRfc3R5bGVfdGFibGUsIDEsIFZmb250X3NsYW50X3RhYmxlKTsKICAgQVNFVCAo Zm9udF9zdHlsZV90YWJsZSwgMiwgVmZvbnRfd2lkdGhfdGFibGUpOwpkaWZmIC0tZ2l0IGEvc3Jj L2ZvbnRzZXQuYyBiL3NyYy9mb250c2V0LmMKaW5kZXggNmNhNjQwNjg3MTcuLjcxZGQ0NWMzMjM3 IDEwMDY0NAotLS0gYS9zcmMvZm9udHNldC5jCisrKyBiL3NyYy9mb250c2V0LmMKQEAgLTIxMTYs MTQgKzIxMTYsMTEgQEAgc3ltc19vZl9mb250c2V0ICh2b2lkKQogICBERUZTWU0gKFFhcHBlbmQs ICJhcHBlbmQiKTsKICAgREVGU1lNIChRbGF0aW4sICJsYXRpbiIpOwogCi0gIFZjYWNoZWRfZm9u dHNldF9kYXRhID0gUW5pbDsKLSAgc3RhdGljcHJvICgmVmNhY2hlZF9mb250c2V0X2RhdGEpOwor ICBzdGF0aWNwcm8gKCZWY2FjaGVkX2ZvbnRzZXRfZGF0YSwgUW5pbCk7CiAKLSAgVmZvbnRzZXRf dGFibGUgPSBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgzMiksIFFuaWwpOwotICBzdGF0aWNw cm8gKCZWZm9udHNldF90YWJsZSk7CisgIHN0YXRpY3BybyAoJlZmb250c2V0X3RhYmxlLCBGbWFr ZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgzMiksIFFuaWwpKTsKIAotICBWZGVmYXVsdF9mb250c2V0 ID0gRm1ha2VfY2hhcl90YWJsZSAoUWZvbnRzZXQsIFFuaWwpOwotICBzdGF0aWNwcm8gKCZWZGVm YXVsdF9mb250c2V0KTsKKyAgc3RhdGljcHJvICgmVmRlZmF1bHRfZm9udHNldCwgRm1ha2VfY2hh cl90YWJsZSAoUWZvbnRzZXQsIFFuaWwpKTsKICAgc2V0X2ZvbnRzZXRfaWQgKFZkZWZhdWx0X2Zv bnRzZXQsIG1ha2VfbnVtYmVyICgwKSk7CiAgIHNldF9mb250c2V0X25hbWUKICAgICAoVmRlZmF1 bHRfZm9udHNldCwKQEAgLTIxMzEsOCArMjEyOCw3IEBAIHN5bXNfb2ZfZm9udHNldCAodm9pZCkK ICAgQVNFVCAoVmZvbnRzZXRfdGFibGUsIDAsIFZkZWZhdWx0X2ZvbnRzZXQpOwogICBuZXh0X2Zv bnRzZXRfaWQgPSAxOwogCi0gIGF1dG9fZm9udHNldF9hbGlzdCA9IFFuaWw7Ci0gIHN0YXRpY3By byAoJmF1dG9fZm9udHNldF9hbGlzdCk7CisgIHN0YXRpY3BybyAoJmF1dG9fZm9udHNldF9hbGlz dCwgUW5pbCk7CiAKICAgREVGVkFSX0xJU1AgKCJmb250LWVuY29kaW5nLWNoYXJzZXQtYWxpc3Qi LCBWZm9udF9lbmNvZGluZ19jaGFyc2V0X2FsaXN0LAogCSAgICAgICBkb2M6IC8qCmRpZmYgLS1n aXQgYS9zcmMvZnJhbWUuYyBiL3NyYy9mcmFtZS5jCmluZGV4IDg2Y2FhMzI2MTVkLi40MGFiZWYz YTY2YiAxMDA2NDQKLS0tIGEvc3JjL2ZyYW1lLmMKKysrIGIvc3JjL2ZyYW1lLmMKQEAgLTYwOTIs NyArNjA5Miw3IEBAIG1ha2luZyB0aGUgY2hpbGQgZnJhbWUgdW5yZXNwb25zaXZlIHRvIHVzZXIg YWN0aW9ucywgdGhlIGRlZmF1bHQgaXMgdG8KIGljb25pZnkgdGhlIHRvcCBsZXZlbCBmcmFtZSBp bnN0ZWFkLiAgKi8pOwogICBpY29uaWZ5X2NoaWxkX2ZyYW1lID0gUWljb25pZnlfdG9wX2xldmVs OwogCi0gIHN0YXRpY3BybyAoJlZmcmFtZV9saXN0KTsKKyAgc3RhdGljcHJvICgmVmZyYW1lX2xp c3QsIFFuaWwpOwogCiAgIGRlZnN1YnIgKCZTZnJhbWVwKTsKICAgZGVmc3ViciAoJlNmcmFtZV9s aXZlX3ApOwpkaWZmIC0tZ2l0IGEvc3JjL2Z0Zm9udC5jIGIvc3JjL2Z0Zm9udC5jCmluZGV4IGMy ZTA5M2U2MzNkLi5lYWVmNDU3NGI0ZSAxMDA2NDQKLS0tIGEvc3JjL2Z0Zm9udC5jCisrKyBiL3Ny Yy9mdGZvbnQuYwpAQCAtMjczNSwxNiArMjczNSwxMyBAQCBzeW1zX29mX2Z0Zm9udCAodm9pZCkK ICAgREVGU1lNIChRc2FucywgInNhbnMiKTsKICAgREVGU1lNIChRc2Fuc19fc2VyaWYsICJzYW5z IHNlcmlmIik7CiAKLSAgc3RhdGljcHJvICgmZnJlZXR5cGVfZm9udF9jYWNoZSk7Ci0gIGZyZWV0 eXBlX2ZvbnRfY2FjaGUgPSBsaXN0MSAoUXQpOworICBzdGF0aWNwcm8gKCZmcmVldHlwZV9mb250 X2NhY2hlLCBsaXN0MSAoUXQpKTsKIAotICBzdGF0aWNwcm8gKCZmdGZvbnRfZ2VuZXJpY19mYW1p bHlfbGlzdCk7Ci0gIGZ0Zm9udF9nZW5lcmljX2ZhbWlseV9saXN0ID0gbGlzdDMgKEZjb25zIChR bW9ub3NwYWNlLCBRdCksCi0JCQkJICAgICAgRmNvbnMgKFFzYW5zX3NlcmlmLCBRdCksCi0JCQkJ ICAgICAgRmNvbnMgKFFzYW5zLCBRdCkpOworICBzdGF0aWNwcm8gKCZmdGZvbnRfZ2VuZXJpY19m YW1pbHlfbGlzdCwgbGlzdDMgKEZjb25zIChRbW9ub3NwYWNlLCBRdCksCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmNvbnMgKFFzYW5zX3NlcmlmLCBR dCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmNv bnMgKFFzYW5zLCBRdCkpKTsKIAotICBzdGF0aWNwcm8gKCZmdF9mYWNlX2NhY2hlKTsKLSAgZnRf ZmFjZV9jYWNoZSA9IFFuaWw7CisgIHN0YXRpY3BybyAoJmZ0X2ZhY2VfY2FjaGUsIFFuaWwpOwog CiAgIHJlZ2lzdGVyX2ZvbnRfZHJpdmVyICgmZnRmb250X2RyaXZlciwgTlVMTCk7CiB9CmRpZmYg LS1naXQgYS9zcmMvZ2ZpbGVub3RpZnkuYyBiL3NyYy9nZmlsZW5vdGlmeS5jCmluZGV4IDY1MGRm MGZjYmI1Li42M2JmZGI0OTQ2MCAxMDA2NDQKLS0tIGEvc3JjL2dmaWxlbm90aWZ5LmMKKysrIGIv c3JjL2dmaWxlbm90aWZ5LmMKQEAgLTMzMSw3ICszMzEsNyBAQCBzeW1zX29mX2dmaWxlbm90aWZ5 ICh2b2lkKQogICBERUZTWU0gKFF1bm1vdW50ZWQsICJ1bm1vdW50ZWQiKTsJLyogR19GSUxFX01P TklUT1JfRVZFTlRfVU5NT1VOVEVEICAqLwogICBERUZTWU0gKFFtb3ZlZCwgIm1vdmVkIik7CS8q IEdfRklMRV9NT05JVE9SX0VWRU5UX01PVkVEICAqLwogCi0gIHN0YXRpY3BybyAoJndhdGNoX2xp c3QpOworICBzdGF0aWNwcm8gKCZ3YXRjaF9saXN0LCBRbmlsKTsKIAogICBGcHJvdmlkZSAoaW50 ZXJuX2Nfc3RyaW5nICgiZ2ZpbGVub3RpZnkiKSwgUW5pbCk7CiAKZGlmZiAtLWdpdCBhL3NyYy9p bm90aWZ5LmMgYi9zcmMvaW5vdGlmeS5jCmluZGV4IGUwNmNjOTdjNmE3Li5iMTBkMjE4YjRkYiAx MDA2NDQKLS0tIGEvc3JjL2lub3RpZnkuYworKysgYi9zcmMvaW5vdGlmeS5jCkBAIC01NDYsNyAr NTQ2LDcgQEAgc3ltc19vZl9pbm90aWZ5ICh2b2lkKQogICBkZWZzdWJyICgmU2lub3RpZnlfd2F0 Y2hfbGlzdCk7CiAgIGRlZnN1YnIgKCZTaW5vdGlmeV9hbGxvY2F0ZWRfcCk7CiAjZW5kaWYKLSAg c3RhdGljcHJvICgmd2F0Y2hfbGlzdCk7CisgIHN0YXRpY3BybyAoJndhdGNoX2xpc3QsIFFuaWwp OwogCiAgIEZwcm92aWRlIChpbnRlcm5fY19zdHJpbmcgKCJpbm90aWZ5IiksIFFuaWwpOwogfQpk aWZmIC0tZ2l0IGEvc3JjL2luc2RlbC5jIGIvc3JjL2luc2RlbC5jCmluZGV4IDAyZTNmNDFiYzlm Li5lOTI3OWYwYTE2NiAxMDA2NDQKLS0tIGEvc3JjL2luc2RlbC5jCisrKyBiL3NyYy9pbnNkZWwu YwpAQCAtMjMyOCwxMCArMjMyOCw4IEBAIERFRlVOICgiY29tYmluZS1hZnRlci1jaGFuZ2UtZXhl Y3V0ZSIsIEZjb21iaW5lX2FmdGVyX2NoYW5nZV9leGVjdXRlLAogdm9pZAogc3ltc19vZl9pbnNk ZWwgKHZvaWQpCiB7Ci0gIHN0YXRpY3BybyAoJmNvbWJpbmVfYWZ0ZXJfY2hhbmdlX2xpc3QpOwot ICBzdGF0aWNwcm8gKCZjb21iaW5lX2FmdGVyX2NoYW5nZV9idWZmZXIpOwotICBjb21iaW5lX2Fm dGVyX2NoYW5nZV9saXN0ID0gUW5pbDsKLSAgY29tYmluZV9hZnRlcl9jaGFuZ2VfYnVmZmVyID0g UW5pbDsKKyAgc3RhdGljcHJvICgmY29tYmluZV9hZnRlcl9jaGFuZ2VfbGlzdCwgUW5pbCk7Cisg IHN0YXRpY3BybyAoJmNvbWJpbmVfYWZ0ZXJfY2hhbmdlX2J1ZmZlciwgUW5pbCk7CiAKICAgREVG U1lNIChRdW5kb19hdXRvX191bmRvYWJsZV9jaGFuZ2UsICJ1bmRvLWF1dG8tLXVuZG9hYmxlLWNo YW5nZSIpOwogCmRpZmYgLS1naXQgYS9zcmMva2V5Ym9hcmQuYyBiL3NyYy9rZXlib2FyZC5jCmlu ZGV4IGMwYzg2M2YwZDNlLi5hM2E2MWVkMGM2MyAxMDA2NDQKLS0tIGEvc3JjL2tleWJvYXJkLmMK KysrIGIvc3JjL2tleWJvYXJkLmMKQEAgLTExMDUxLDExICsxMTA1MSw5IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZXZlbnRfaGVhZCBoZWFkX3RhYmxlW10gPSB7CiB2b2lkCiBzeW1zX29mX2tleWJv YXJkICh2b2lkKQogewotICBwZW5kaW5nX2Z1bmNhbGxzID0gUW5pbDsKLSAgc3RhdGljcHJvICgm cGVuZGluZ19mdW5jYWxscyk7CisgIHN0YXRpY3BybyAoJnBlbmRpbmdfZnVuY2FsbHMsIFFuaWwp OwogCi0gIFZsaXNweV9tb3VzZV9zdGVtID0gYnVpbGRfcHVyZV9jX3N0cmluZyAoIm1vdXNlIik7 Ci0gIHN0YXRpY3BybyAoJlZsaXNweV9tb3VzZV9zdGVtKTsKKyAgc3RhdGljcHJvICgmVmxpc3B5 X21vdXNlX3N0ZW0sIGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJtb3VzZSIpKTsKIAogICByZWd1bGFy X3RvcF9sZXZlbF9tZXNzYWdlID0gYnVpbGRfcHVyZV9jX3N0cmluZyAoIkJhY2sgdG8gdG9wIGxl dmVsIik7CiAjaWZkZWYgSEFWRV9TVEFDS19PVkVSRkxPV19IQU5ETElORwpAQCAtMTEwNzEsMTMg KzExMDY5LDEwIEBAIHN5bXNfb2Zfa2V5Ym9hcmQgKHZvaWQpCiAgIERFRlNZTSAoUWhlbHBfZWNo bywgImhlbHAtZWNobyIpOwogICBERUZTWU0gKFFDcnRsLCAiOnJ0bCIpOwogCi0gIHN0YXRpY3By byAoJml0ZW1fcHJvcGVydGllcyk7Ci0gIGl0ZW1fcHJvcGVydGllcyA9IFFuaWw7CisgIHN0YXRp Y3BybyAoJml0ZW1fcHJvcGVydGllcywgUW5pbCk7CiAKLSAgc3RhdGljcHJvICgmdG9vbF9iYXJf aXRlbV9wcm9wZXJ0aWVzKTsKLSAgdG9vbF9iYXJfaXRlbV9wcm9wZXJ0aWVzID0gUW5pbDsKLSAg c3RhdGljcHJvICgmdG9vbF9iYXJfaXRlbXNfdmVjdG9yKTsKLSAgdG9vbF9iYXJfaXRlbXNfdmVj dG9yID0gUW5pbDsKKyAgc3RhdGljcHJvICgmdG9vbF9iYXJfaXRlbV9wcm9wZXJ0aWVzLCBRbmls KTsKKyAgc3RhdGljcHJvICgmdG9vbF9iYXJfaXRlbXNfdmVjdG9yLCBRbmlsKTsKIAogICBERUZT WU0gKFF0aW1lcl9ldmVudF9oYW5kbGVyLCAidGltZXItZXZlbnQtaGFuZGxlciIpOwogCkBAIC0x MTI0Miw2NSArMTEyMzcsNDggQEAgc3ltc19vZl9rZXlib2FyZCAodm9pZCkKICAgICAgIH0KICAg fQogCi0gIGJ1dHRvbl9kb3duX2xvY2F0aW9uID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAo NSksIFFuaWwpOwotICBzdGF0aWNwcm8gKCZidXR0b25fZG93bl9sb2NhdGlvbik7Ci0gIG1vdXNl X3N5bXMgPSBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg1KSwgUW5pbCk7Ci0gIHN0YXRpY3By byAoJm1vdXNlX3N5bXMpOwotICB3aGVlbF9zeW1zID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJl ciAoQVJSQVlFTFRTIChsaXNweV93aGVlbF9uYW1lcykpLAotCQkJICAgICBRbmlsKTsKLSAgc3Rh dGljcHJvICgmd2hlZWxfc3ltcyk7CisgIHN0YXRpY3BybyAoJmJ1dHRvbl9kb3duX2xvY2F0aW9u LCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg1KSwgUW5pbCkpOworICBzdGF0aWNwcm8gKCZt b3VzZV9zeW1zLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg1KSwgUW5pbCkpOworICBzdGF0 aWNwcm8gKCZ3aGVlbF9zeW1zLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyIChBUlJBWUVMVFMg KGxpc3B5X3doZWVsX25hbWVzKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUW5pbCkpOwogCiAgIHsKICAgICBpbnQgaTsKICAgICBpbnQgbGVuID0gQVJSQVlFTFRT IChtb2RpZmllcl9uYW1lcyk7CiAKLSAgICBtb2RpZmllcl9zeW1ib2xzID0gRm1ha2VfdmVjdG9y IChtYWtlX251bWJlciAobGVuKSwgUW5pbCk7CisgICAgc3RhdGljcHJvICgmbW9kaWZpZXJfc3lt Ym9scywgRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAobGVuKSwgUW5pbCkpOwogICAgIGZvciAo aSA9IDA7IGkgPCBsZW47IGkrKykKICAgICAgIGlmIChtb2RpZmllcl9uYW1lc1tpXSkKIAlBU0VU IChtb2RpZmllcl9zeW1ib2xzLCBpLCBpbnRlcm5fY19zdHJpbmcgKG1vZGlmaWVyX25hbWVzW2ld KSk7Ci0gICAgc3RhdGljcHJvICgmbW9kaWZpZXJfc3ltYm9scyk7CiAgIH0KIAotICByZWNlbnRf a2V5cyA9IEZtYWtlX3ZlY3RvciAobWFrZV9udW1iZXIgKE5VTV9SRUNFTlRfS0VZUyksIFFuaWwp OwotICBzdGF0aWNwcm8gKCZyZWNlbnRfa2V5cyk7CisgIHN0YXRpY3BybyAoJnJlY2VudF9rZXlz LCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyIChOVU1fUkVDRU5UX0tFWVMpLCBRbmlsKSk7CiAK LSAgdGhpc19jb21tYW5kX2tleXMgPSBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg0MCksIFFu aWwpOwotICBzdGF0aWNwcm8gKCZ0aGlzX2NvbW1hbmRfa2V5cyk7CisgIHN0YXRpY3BybyAoJnRo aXNfY29tbWFuZF9rZXlzLCBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg0MCksIFFuaWwpKTsK IAotICByYXdfa2V5YnVmID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAoMzApLCBRbmlsKTsK LSAgc3RhdGljcHJvICgmcmF3X2tleWJ1Zik7CisgIHN0YXRpY3BybyAoJnJhd19rZXlidWYsIEZt YWtlX3ZlY3RvciAobWFrZV9udW1iZXIgKDMwKSwgUW5pbCkpOwogCiAgIERFRlNZTSAoUWNvbW1h bmRfZXhlY3V0ZSwgImNvbW1hbmQtZXhlY3V0ZSIpOwogICBERUZTWU0gKFFpbnRlcm5hbF9lY2hv X2tleXN0cm9rZXNfcHJlZml4LCAiaW50ZXJuYWwtZWNoby1rZXlzdHJva2VzLXByZWZpeCIpOwog Ci0gIGFjY2VudF9rZXlfc3ltcyA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJmFjY2VudF9rZXlfc3lt cyk7CisgIHN0YXRpY3BybyAoJmFjY2VudF9rZXlfc3ltcywgUW5pbCk7CiAKLSAgZnVuY19rZXlf c3ltcyA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJmZ1bmNfa2V5X3N5bXMpOworICBzdGF0aWNwcm8g KCZmdW5jX2tleV9zeW1zLCBRbmlsKTsKIAotICBkcmFnX25fZHJvcF9zeW1zID0gUW5pbDsKLSAg c3RhdGljcHJvICgmZHJhZ19uX2Ryb3Bfc3ltcyk7CisgIHN0YXRpY3BybyAoJmRyYWdfbl9kcm9w X3N5bXMsIFFuaWwpOwogCi0gIHVucmVhZF9zd2l0Y2hfZnJhbWUgPSBRbmlsOwotICBzdGF0aWNw cm8gKCZ1bnJlYWRfc3dpdGNoX2ZyYW1lKTsKKyAgc3RhdGljcHJvICgmdW5yZWFkX3N3aXRjaF9m cmFtZSwgUW5pbCk7CiAKLSAgaW50ZXJuYWxfbGFzdF9ldmVudF9mcmFtZSA9IFFuaWw7Ci0gIHN0 YXRpY3BybyAoJmludGVybmFsX2xhc3RfZXZlbnRfZnJhbWUpOworICBzdGF0aWNwcm8gKCZpbnRl cm5hbF9sYXN0X2V2ZW50X2ZyYW1lLCBRbmlsKTsKIAotICByZWFkX2tleV9zZXF1ZW5jZV9jbWQg PSBRbmlsOwotICBzdGF0aWNwcm8gKCZyZWFkX2tleV9zZXF1ZW5jZV9jbWQpOwotICByZWFkX2tl eV9zZXF1ZW5jZV9yZW1hcHBlZCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJnJlYWRfa2V5X3NlcXVl bmNlX3JlbWFwcGVkKTsKKyAgc3RhdGljcHJvICgmcmVhZF9rZXlfc2VxdWVuY2VfY21kLCBRbmls KTsKKyAgc3RhdGljcHJvICgmcmVhZF9rZXlfc2VxdWVuY2VfcmVtYXBwZWQsIFFuaWwpOwogCi0g IG1lbnVfYmFyX29uZV9rZXltYXBfY2hhbmdlZF9pdGVtcyA9IFFuaWw7Ci0gIHN0YXRpY3BybyAo Jm1lbnVfYmFyX29uZV9rZXltYXBfY2hhbmdlZF9pdGVtcyk7CisgIHN0YXRpY3BybyAoJm1lbnVf YmFyX29uZV9rZXltYXBfY2hhbmdlZF9pdGVtcywgUW5pbCk7CiAKLSAgbWVudV9iYXJfaXRlbXNf dmVjdG9yID0gUW5pbDsKLSAgc3RhdGljcHJvICgmbWVudV9iYXJfaXRlbXNfdmVjdG9yKTsKKyAg c3RhdGljcHJvICgmbWVudV9iYXJfaXRlbXNfdmVjdG9yLCBRbmlsKTsKIAotICBoZWxwX2Zvcm1f c2F2ZWRfd2luZG93X2NvbmZpZ3MgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZoZWxwX2Zvcm1fc2F2 ZWRfd2luZG93X2NvbmZpZ3MpOworICBzdGF0aWNwcm8gKCZoZWxwX2Zvcm1fc2F2ZWRfd2luZG93 X2NvbmZpZ3MsIFFuaWwpOwogCiAgIGRlZnN1YnIgKCZTY3VycmVudF9pZGxlX3RpbWUpOwogICBk ZWZzdWJyICgmU2V2ZW50X3N5bWJvbF9wYXJzZV9tb2RpZmllcnMpOwpkaWZmIC0tZ2l0IGEvc3Jj L2tleW1hcC5jIGIvc3JjL2tleW1hcC5jCmluZGV4IGM4Y2M5MzNlNzgyLi43ZThiNTQ4MzE3ZSAx MDA2NDQKLS0tIGEvc3JjL2tleW1hcC5jCisrKyBiL3NyYy9rZXltYXAuYwpAQCAtMzU5OSwxMCAr MzU5OSw4IEBAIHZvaWQKIHN5bXNfb2Zfa2V5bWFwICh2b2lkKQogewogICBERUZTWU0gKFFrZXlt YXAsICJrZXltYXAiKTsKLSAgc3RhdGljcHJvICgmYXByb3Bvc19wcmVkaWNhdGUpOwotICBzdGF0 aWNwcm8gKCZhcHJvcG9zX2FjY3VtdWxhdGUpOwotICBhcHJvcG9zX3ByZWRpY2F0ZSA9IFFuaWw7 Ci0gIGFwcm9wb3NfYWNjdW11bGF0ZSA9IFFuaWw7CisgIHN0YXRpY3BybyAoJmFwcm9wb3NfcHJl ZGljYXRlLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmYXByb3Bvc19hY2N1bXVsYXRlLCBRbmlsKTsK IAogICBERUZTWU0gKFFrZXltYXBfY2Fub25pY2FsaXplLCAia2V5bWFwLWNhbm9uaWNhbGl6ZSIp OwogCkBAIC0zNjE0LDEzICszNjEyLDEwIEBAIHN5bXNfb2Zfa2V5bWFwICh2b2lkKQogICAgICBF YWNoIG9uZSBpcyB0aGUgdmFsdWUgb2YgYSBMaXNwIHZhcmlhYmxlLCBhbmQgaXMgYWxzbwogICAg ICBwb2ludGVkIHRvIGJ5IGEgQyB2YXJpYWJsZSAqLwogCi0gIGdsb2JhbF9tYXAgPSBGbWFrZV9r ZXltYXAgKFFuaWwpOworICBzdGF0aWNwcm8gKCZnbG9iYWxfbWFwLCBGbWFrZV9rZXltYXAgKFFu aWwpKTsKKyAgc3RhdGljcHJvICgmY3VycmVudF9nbG9iYWxfbWFwLCBnbG9iYWxfbWFwKTsKICAg RnNldCAoaW50ZXJuX2Nfc3RyaW5nICgiZ2xvYmFsLW1hcCIpLCBnbG9iYWxfbWFwKTsKIAotICBj dXJyZW50X2dsb2JhbF9tYXAgPSBnbG9iYWxfbWFwOwotICBzdGF0aWNwcm8gKCZnbG9iYWxfbWFw KTsKLSAgc3RhdGljcHJvICgmY3VycmVudF9nbG9iYWxfbWFwKTsKLQogICBtZXRhX21hcCA9IEZt YWtlX2tleW1hcCAoUW5pbCk7CiAgIEZzZXQgKGludGVybl9jX3N0cmluZyAoImVzYy1tYXAiKSwg bWV0YV9tYXApOwogICBGZnNldCAoaW50ZXJuX2Nfc3RyaW5nICgiRVNDLXByZWZpeCIpLCBtZXRh X21hcCk7CkBAIC0zNjI5LDEzICszNjI0LDEzIEBAIHN5bXNfb2Zfa2V5bWFwICh2b2lkKQogICBG c2V0IChpbnRlcm5fY19zdHJpbmcgKCJjdGwteC1tYXAiKSwgY29udHJvbF94X21hcCk7CiAgIEZm c2V0IChpbnRlcm5fY19zdHJpbmcgKCJDb250cm9sLVgtcHJlZml4IiksIGNvbnRyb2xfeF9tYXAp OwogCi0gIGV4Y2x1ZGVfa2V5cyA9IGxpc3RuIChDT05TVFlQRV9QVVJFLCA1LAotCQkJcHVyZV9j b25zIChidWlsZF9wdXJlX2Nfc3RyaW5nICgiREVMIiksIGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJc XGQiKSksCi0JCQlwdXJlX2NvbnMgKGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJUQUIiKSwgYnVpbGRf cHVyZV9jX3N0cmluZyAoIlxcdCIpKSwKLQkJCXB1cmVfY29ucyAoYnVpbGRfcHVyZV9jX3N0cmlu ZyAoIlJFVCIpLCBidWlsZF9wdXJlX2Nfc3RyaW5nICgiXFxyIikpLAotCQkJcHVyZV9jb25zIChi dWlsZF9wdXJlX2Nfc3RyaW5nICgiRVNDIiksIGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJcXGUiKSks Ci0JCQlwdXJlX2NvbnMgKGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJTUEMiKSwgYnVpbGRfcHVyZV9j X3N0cmluZyAoIiAiKSkpOwotICBzdGF0aWNwcm8gKCZleGNsdWRlX2tleXMpOworICBzdGF0aWNw cm8gKCZleGNsdWRlX2tleXMsCisgICAgICAgICAgICAgbGlzdG4gKENPTlNUWVBFX1BVUkUsIDUs CisgICAgICAgICAgICAgICAgICAgIHB1cmVfY29ucyAoYnVpbGRfcHVyZV9jX3N0cmluZyAoIkRF TCIpLCBidWlsZF9wdXJlX2Nfc3RyaW5nICgiXFxkIikpLAorICAgICAgICAgICAgICAgICAgICBw dXJlX2NvbnMgKGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJUQUIiKSwgYnVpbGRfcHVyZV9jX3N0cmlu ZyAoIlxcdCIpKSwKKyAgICAgICAgICAgICAgICAgICAgcHVyZV9jb25zIChidWlsZF9wdXJlX2Nf c3RyaW5nICgiUkVUIiksIGJ1aWxkX3B1cmVfY19zdHJpbmcgKCJcXHIiKSksCisgICAgICAgICAg ICAgICAgICAgIHB1cmVfY29ucyAoYnVpbGRfcHVyZV9jX3N0cmluZyAoIkVTQyIpLCBidWlsZF9w dXJlX2Nfc3RyaW5nICgiXFxlIikpLAorICAgICAgICAgICAgICAgICAgICBwdXJlX2NvbnMgKGJ1 aWxkX3B1cmVfY19zdHJpbmcgKCJTUEMiKSwgYnVpbGRfcHVyZV9jX3N0cmluZyAoIiAiKSkpKTsK IAogICBERUZWQVJfTElTUCAoImRlZmluZS1rZXktcmVib3VuZC1jb21tYW5kcyIsIFZkZWZpbmVf a2V5X3JlYm91bmRfY29tbWFuZHMsCiAJICAgICAgIGRvYzogLyogTGlzdCBvZiBjb21tYW5kcyBn aXZlbiBuZXcga2V5IGJpbmRpbmdzIHJlY2VudGx5LgpAQCAtMzY4OSwxNyArMzY4NCwxNiBAQCBi ZSBwcmVmZXJyZWQuICAqLyk7CiAgIERFRlNZTSAoUW1lbnVfYmFyLCAibWVudS1iYXIiKTsKICAg REVGU1lNIChRbW9kZV9saW5lLCAibW9kZS1saW5lIik7CiAKLSAgc3RhdGljcHJvICgmVm1vdXNl X2V2ZW50cyk7Ci0gIFZtb3VzZV9ldmVudHMgPSBsaXN0biAoQ09OU1RZUEVfUFVSRSwgOSwKLQkJ CSBRbWVudV9iYXIsCi0JCQkgUXRvb2xfYmFyLAotCQkJIFFoZWFkZXJfbGluZSwKLQkJCSBRbW9k ZV9saW5lLAotCQkJIGludGVybl9jX3N0cmluZyAoIm1vdXNlLTEiKSwKLQkJCSBpbnRlcm5fY19z dHJpbmcgKCJtb3VzZS0yIiksCi0JCQkgaW50ZXJuX2Nfc3RyaW5nICgibW91c2UtMyIpLAotCQkJ IGludGVybl9jX3N0cmluZyAoIm1vdXNlLTQiKSwKLQkJCSBpbnRlcm5fY19zdHJpbmcgKCJtb3Vz ZS01IikpOworICBzdGF0aWNwcm8gKCZWbW91c2VfZXZlbnRzLCBsaXN0biAoQ09OU1RZUEVfUFVS RSwgOSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFFtZW51X2JhciwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFF0b29sX2JhciwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFFoZWFkZXJfbGluZSwKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFFtb2RlX2xpbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBpbnRlcm5fY19zdHJpbmcgKCJtb3VzZS0xIiksCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBpbnRlcm5fY19zdHJpbmcgKCJtb3VzZS0yIiksCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5fY19zdHJpbmcgKCJtb3VzZS0zIiks CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5fY19zdHJpbmcgKCJt b3VzZS00IiksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnRlcm5fY19z dHJpbmcgKCJtb3VzZS01IikpKTsKIAogICAvKiBLZXltYXAgdXNlZCBmb3IgbWluaWJ1ZmZlcnMg d2hlbiBkb2luZyBjb21wbGV0aW9uLiAgKi8KICAgLyogS2V5bWFwIHVzZWQgZm9yIG1pbmlidWZm ZXJzIHdoZW4gZG9pbmcgY29tcGxldGlvbiBhbmQgcmVxdWlyZSBhIG1hdGNoLiAgKi8KQEAgLTM3 MDksMTMgKzM3MDMsMTEgQEAgYmUgcHJlZmVycmVkLiAgKi8pOwogICBERUZTWU0gKFFyZW1hcCwg InJlbWFwIik7CiAgIERFRlNZTSAoUUNhZHZlcnRpc2VkX2JpbmRpbmcsICI6YWR2ZXJ0aXNlZC1i aW5kaW5nIik7CiAKLSAgY29tbWFuZF9yZW1hcHBpbmdfdmVjdG9yID0gRm1ha2VfdmVjdG9yICht YWtlX251bWJlciAoMiksIFFyZW1hcCk7Ci0gIHN0YXRpY3BybyAoJmNvbW1hbmRfcmVtYXBwaW5n X3ZlY3Rvcik7CisgIHN0YXRpY3BybyAoJmNvbW1hbmRfcmVtYXBwaW5nX3ZlY3RvciwKKyAgICAg ICAgICAgICBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICgyKSwgUXJlbWFwKSk7CiAKLSAgd2hl cmVfaXNfY2FjaGVfa2V5bWFwcyA9IFF0OwotICB3aGVyZV9pc19jYWNoZSA9IFFuaWw7Ci0gIHN0 YXRpY3BybyAoJndoZXJlX2lzX2NhY2hlKTsKLSAgc3RhdGljcHJvICgmd2hlcmVfaXNfY2FjaGVf a2V5bWFwcyk7CisgIHN0YXRpY3BybyAoJndoZXJlX2lzX2NhY2hlLCBRbmlsKTsKKyAgc3RhdGlj cHJvICgmd2hlcmVfaXNfY2FjaGVfa2V5bWFwcywgUXQpOwogCiAgIGRlZnN1YnIgKCZTa2V5bWFw cCk7CiAgIGRlZnN1YnIgKCZTa2V5bWFwX3BhcmVudCk7CmRpZmYgLS1naXQgYS9zcmMva3F1ZXVl LmMgYi9zcmMva3F1ZXVlLmMKaW5kZXggN2E0ZjZhNDcxYzQuLjE4NWUwZTM1ODIwIDEwMDY0NAot LS0gYS9zcmMva3F1ZXVlLmMKKysrIGIvc3JjL2txdWV1ZS5jCkBAIC01MjcsNyArNTI3LDcgQEAg c3ltc19vZl9rcXVldWUgKHZvaWQpCiAgIERFRlNZTSAoUWxpbmssICJsaW5rIik7CS8qIE5PVEVf TElOSyAgKi8KICAgREVGU1lNIChRcmVuYW1lLCAicmVuYW1lIik7CS8qIE5PVEVfUkVOQU1FICAq LwogCi0gIHN0YXRpY3BybyAoJndhdGNoX2xpc3QpOworICBzdGF0aWNwcm8gKCZ3YXRjaF9saXN0 LCBRbmlsKTsKIAogICBGcHJvdmlkZSAoaW50ZXJuX2Nfc3RyaW5nICgia3F1ZXVlIiksIFFuaWwp OwogfQpkaWZmIC0tZ2l0IGEvc3JjL2xpc3AuaCBiL3NyYy9saXNwLmgKaW5kZXggYjkzMWQyM2Jm MzguLjE5YThhODAyN2UzIDEwMDY0NAotLS0gYS9zcmMvbGlzcC5oCisrKyBiL3NyYy9saXNwLmgK QEAgLTMyODEsNyArMzI4MSwyMyBAQCBleHRlcm4gTGlzcF9PYmplY3QgVmFzY2lpX2Nhbm9uX3Rh YmxlOwogDAogLyogQ2FsbCBzdGF0aWNwcm8gKCZ2YXIpIHRvIHByb3RlY3Qgc3RhdGljIHZhcmlh YmxlIGB2YXInLiAgKi8KIAotdm9pZCBzdGF0aWNwcm8gKExpc3BfT2JqZWN0ICopOwordm9pZCBz dGF0aWNwcm9fMSAoTGlzcF9PYmplY3QgKik7CisKK0lOTElORSB2b2lkCitzdGF0aWNwcm8gKExp c3BfT2JqZWN0ICpwdHIsIExpc3BfT2JqZWN0IGluaXRpYWxfdmFsdWUpCit7CisgIGVhc3N1bWUg KCpwdHIgPT0gUW5pbCk7CisjaWYgNCA8IF9fR05VQ19fCisgIGlmIChfX2J1aWx0aW5fY29uc3Rh bnRfcChpbml0aWFsX3ZhbHVlID09IFFuaWwpICYmCisgICAgICBpbml0aWFsX3ZhbHVlID09IFFu aWwpCisgICAgOworICBlbHNlCisjZW5kaWYKKyAgICAqcHRyID0gaW5pdGlhbF92YWx1ZTsKKwor ICBzdGF0aWNwcm9fMSAocHRyKTsKK30KKwogDAogLyogRm9yd2FyZCBkZWNsYXJhdGlvbnMgZm9y IHByb3RvdHlwZXMuICAqLwogc3RydWN0IHdpbmRvdzsKZGlmZiAtLWdpdCBhL3NyYy9scmVhZC5j IGIvc3JjL2xyZWFkLmMKaW5kZXggOGZiNjFmNTYzMzguLmU2M2Q3NDMxZTQ2IDEwMDY0NAotLS0g YS9zcmMvbHJlYWQuYworKysgYi9zcmMvbHJlYWQuYwpAQCAtNDM0NCw4ICs0MzQ0LDcgQEAgdm9p ZAogaW5pdF9vYmFycmF5ICh2b2lkKQogewogICBWb2JhcnJheSA9IEZtYWtlX3ZlY3RvciAobWFr ZV9udW1iZXIgKE9CQVJSQVlfU0laRSksIG1ha2VfbnVtYmVyICgwKSk7Ci0gIGluaXRpYWxfb2Jh cnJheSA9IFZvYmFycmF5OwotICBzdGF0aWNwcm8gKCZpbml0aWFsX29iYXJyYXkpOworICBzdGF0 aWNwcm8gKCZpbml0aWFsX29iYXJyYXksIFZvYmFycmF5KTsKIAogICBmb3IgKGludCBpID0gMDsg aSA8IEFSUkFZRUxUUyAobGlzcHN5bSk7IGkrKykKICAgICBkZWZpbmVfc3ltYm9sIChidWlsdGlu X2xpc3Bfc3ltYm9sIChpKSwgZGVmc3ltX25hbWVbaV0pOwpAQCAtNDQ0Myw3ICs0NDQyLDcgQEAg ZGVmdmFyX2xpc3AgKHN0cnVjdCBMaXNwX09iamZ3ZCAqb19md2QsCiAJICAgICBjb25zdCBjaGFy ICpuYW1lc3RyaW5nLCBMaXNwX09iamVjdCAqYWRkcmVzcykKIHsKICAgZGVmdmFyX2xpc3Bfbm9w cm8gKG9fZndkLCBuYW1lc3RyaW5nLCBhZGRyZXNzKTsKLSAgc3RhdGljcHJvIChhZGRyZXNzKTsK KyAgc3RhdGljcHJvIChhZGRyZXNzLCBRbmlsKTsKIH0KIAogLyogU2ltaWxhciBidXQgZGVmaW5l IGEgdmFyaWFibGUgd2hvc2UgdmFsdWUgaXMgdGhlIExpc3AgT2JqZWN0IHN0b3JlZApAQCAtNTA4 OSwxMyArNTA4OCwxMCBAQCB0aGlzIHZhcmlhYmxlIHdpbGwgYmVjb21lIG9ic29sZXRlLiAgKi8p OwogICBERUZTWU0gKFFkaXJfb2ssICJkaXItb2siKTsKICAgREVGU1lNIChRZG9fYWZ0ZXJfbG9h ZF9ldmFsdWF0aW9uLCAiZG8tYWZ0ZXItbG9hZC1ldmFsdWF0aW9uIik7CiAKLSAgc3RhdGljcHJv ICgmcmVhZF9vYmplY3RzX21hcCk7Ci0gIHJlYWRfb2JqZWN0c19tYXAgPSBRbmlsOwotICBzdGF0 aWNwcm8gKCZyZWFkX29iamVjdHNfY29tcGxldGVkKTsKLSAgcmVhZF9vYmplY3RzX2NvbXBsZXRl ZCA9IFFuaWw7CisgIHN0YXRpY3BybyAoJnJlYWRfb2JqZWN0c19tYXAsIFFuaWwpOworICBzdGF0 aWNwcm8gKCZyZWFkX29iamVjdHNfY29tcGxldGVkLCBRbmlsKTsKIAotICBWbG9hZHNfaW5fcHJv Z3Jlc3MgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZWbG9hZHNfaW5fcHJvZ3Jlc3MpOworICBzdGF0 aWNwcm8gKCZWbG9hZHNfaW5fcHJvZ3Jlc3MsIFFuaWwpOwogCiAgIERFRlNZTSAoUWhhc2hfdGFi bGUsICJoYXNoLXRhYmxlIik7CiAgIERFRlNZTSAoUWRhdGEsICJkYXRhIik7CmRpZmYgLS1naXQg YS9zcmMvbWFjZm9udC5tIGIvc3JjL21hY2ZvbnQubQppbmRleCA4MTcwNzFmYTQ0Zi4uNTk1M2Nl N2ZkMjMgMTAwNjQ0Ci0tLSBhL3NyYy9tYWNmb250Lm0KKysrIGIvc3JjL21hY2ZvbnQubQpAQCAt NDA1MCw2ICs0MDUwLDUgQEAgU28gd2UgdXNlIENURm9udERlc2NyaXB0b3JDcmVhdGVNYXRjaGlu Z0ZvbnREZXNjcmlwdG9yIChubwogICAvKiBUaGUgYm9vbGVhbi12YWx1ZWQgZm9udCBwcm9wZXJ0 eSBrZXkgc3BlY2lmeWluZyB0aGUgdXNlIG9mIGxlYWRpbmcuICAqLwogICBERUZTWU0gKFFDbWlu c3BhY2UsICI6bWluc3BhY2UiKTsKIAotICBtYWNmb250X2ZhbWlseV9jYWNoZSA9IFFuaWw7Ci0g IHN0YXRpY3BybyAoJm1hY2ZvbnRfZmFtaWx5X2NhY2hlKTsKKyAgc3RhdGljcHJvICgmbWFjZm9u dF9mYW1pbHlfY2FjaGUsIFFuaWwpOwogfQpkaWZmIC0tZ2l0IGEvc3JjL21lbnUuYyBiL3NyYy9t ZW51LmMKaW5kZXggOTNlNzkzYTVkOTEuLjNiZThlY2Q1ZmFiIDEwMDY0NAotLS0gYS9zcmMvbWVu dS5jCisrKyBiL3NyYy9tZW51LmMKQEAgLTE1ODAsOCArMTU4MCw3IEBAIGZvciBpbnN0YW5jZSB1 c2luZyB0aGUgd2luZG93IG1hbmFnZXIsIHRoZW4gdGhpcyBwcm9kdWNlcyBhIHF1aXQgYW5kCiB2 b2lkCiBzeW1zX29mX21lbnUgKHZvaWQpCiB7Ci0gIHN0YXRpY3BybyAoJm1lbnVfaXRlbXMpOwot ICBtZW51X2l0ZW1zID0gUW5pbDsKKyAgc3RhdGljcHJvICgmbWVudV9pdGVtcywgUW5pbCk7CiAg IG1lbnVfaXRlbXNfaW51c2UgPSBRbmlsOwogCiAgIGRlZnN1YnIgKCZTeF9wb3B1cF9tZW51KTsK ZGlmZiAtLWdpdCBhL3NyYy9taW5pYnVmLmMgYi9zcmMvbWluaWJ1Zi5jCmluZGV4IDQ1Y2YxNTIy NGE1Li4xMWM2Yjk0YWU1ZCAxMDA2NDQKLS0tIGEvc3JjL21pbmlidWYuYworKysgYi9zcmMvbWlu aWJ1Zi5jCkBAIC0xOTA4LDE5ICsxOTA4LDE2IEBAIElmIG5vIG1pbmlidWZmZXIgaXMgYWN0aXZl LCByZXR1cm4gbmlsLiAgKi8pCiB2b2lkCiBpbml0X21pbmlidWZfb25jZSAodm9pZCkKIHsKLSAg Vm1pbmlidWZmZXJfbGlzdCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJlZtaW5pYnVmZmVyX2xpc3Qp OworICBzdGF0aWNwcm8gKCZWbWluaWJ1ZmZlcl9saXN0LCBRbmlsKTsKIH0KIAogdm9pZAogc3lt c19vZl9taW5pYnVmICh2b2lkKQogewogICBtaW5pYnVmX2xldmVsID0gMDsKLSAgbWluaWJ1Zl9w cm9tcHQgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZtaW5pYnVmX3Byb21wdCk7CisgIHN0YXRpY3By byAoJm1pbmlidWZfcHJvbXB0LCBRbmlsKTsKIAotICBtaW5pYnVmX3NhdmVfbGlzdCA9IFFuaWw7 Ci0gIHN0YXRpY3BybyAoJm1pbmlidWZfc2F2ZV9saXN0KTsKKyAgc3RhdGljcHJvICgmbWluaWJ1 Zl9zYXZlX2xpc3QsIFFuaWwpOwogCiAgIERFRlNZTSAoUWNvbXBsZXRpb25faWdub3JlX2Nhc2Us ICJjb21wbGV0aW9uLWlnbm9yZS1jYXNlIik7CiAgIERFRlNZTSAoUW1pbmlidWZmZXJfZGVmYXVs dCwgIm1pbmlidWZmZXItZGVmYXVsdCIpOwpAQCAtMTkyOCw4ICsxOTI1LDcgQEAgc3ltc19vZl9t aW5pYnVmICh2b2lkKQogCiAgIERFRlNZTSAoUW1pbmlidWZmZXJfY29tcGxldGlvbl90YWJsZSwg Im1pbmlidWZmZXItY29tcGxldGlvbi10YWJsZSIpOwogCi0gIHN0YXRpY3BybyAoJmxhc3RfbWlu aWJ1Zl9zdHJpbmcpOwotICBsYXN0X21pbmlidWZfc3RyaW5nID0gUW5pbDsKKyAgc3RhdGljcHJv ICgmbGFzdF9taW5pYnVmX3N0cmluZywgUW5pbCk7CiAKICAgREVGU1lNIChRbWluaWJ1ZmZlcl9o aXN0b3J5LCAibWluaWJ1ZmZlci1oaXN0b3J5Iik7CiAgIERFRlNZTSAoUWJ1ZmZlcl9uYW1lX2hp c3RvcnksICJidWZmZXItbmFtZS1oaXN0b3J5Iik7CmRpZmYgLS1naXQgYS9zcmMvbXNkb3MuYyBi L3NyYy9tc2Rvcy5jCmluZGV4IGVlZGJmN2IxYTZjLi43Y2E2ZDAzOTE3YSAxMDA2NDQKLS0tIGEv c3JjL21zZG9zLmMKKysrIGIvc3JjL21zZG9zLmMKQEAgLTQxOTYsOCArNDE5Niw3IEBAIG1zZG9z X2ZhdGFsX3NpZ25hbCAoaW50IHNpZykKIHZvaWQKIHN5bXNfb2ZfbXNkb3MgKHZvaWQpCiB7Ci0g IHJlY2VudF9kb3NrZXlzID0gRm1ha2VfdmVjdG9yIChtYWtlX251bWJlciAoTlVNX1JFQ0VOVF9E T1NLRVlTKSwgUW5pbCk7Ci0gIHN0YXRpY3BybyAoJnJlY2VudF9kb3NrZXlzKTsKKyAgc3RhdGlj cHJvICgmcmVjZW50X2Rvc2tleXMsIEZtYWtlX3ZlY3RvciAobWFrZV9udW1iZXIgKE5VTV9SRUNF TlRfRE9TS0VZUyksIFFuaWwpKTsKIAogI2lmbmRlZiBIQVZFX1hfV0lORE9XUwogCmRpZmYgLS1n aXQgYS9zcmMvbnNzZWxlY3QubSBiL3NyYy9uc3NlbGVjdC5tCmluZGV4IGM3MmYxNzlhYjM4Li42 ZDBiNjM0MmRjMiAxMDA2NDQKLS0tIGEvc3JjL25zc2VsZWN0Lm0KKysrIGIvc3JjL25zc2VsZWN0 Lm0KQEAgLTQ5Miw4ICs0OTIsNyBAQCBVcGRhdGVkIGJ5IENocmlzdGlhbiBMaW1wYWNoIChjaHJp c0BuaWNlLmNoKQogICBkZWZzdWJyICgmU25zX3NlbGVjdGlvbl9leGlzdHNfcCk7CiAgIGRlZnN1 YnIgKCZTbnNfc2VsZWN0aW9uX293bmVyX3ApOwogCi0gIFZzZWxlY3Rpb25fYWxpc3QgPSBRbmls OwotICBzdGF0aWNwcm8gKCZWc2VsZWN0aW9uX2FsaXN0KTsKKyAgc3RhdGljcHJvICgmVnNlbGVj dGlvbl9hbGlzdCwgUW5pbCk7CiAKICAgREVGVkFSX0xJU1AgKCJucy1zZW50LXNlbGVjdGlvbi1o b29rcyIsIFZuc19zZW50X3NlbGVjdGlvbl9ob29rcywKICAgICAgICAgICAgICAgICJBIGxpc3Qg b2YgZnVuY3Rpb25zIHRvIGJlIGNhbGxlZCB3aGVuIEVtYWNzIGFuc3dlcnMgYSBzZWxlY3Rpb24g cmVxdWVzdC5cblwKZGlmZiAtLWdpdCBhL3NyYy9wcmludC5jIGIvc3JjL3ByaW50LmMKaW5kZXgg YThiYmI5ZDM3YTEuLjY4Njc5ODExMDJiIDEwMDY0NAotLS0gYS9zcmMvcHJpbnQuYworKysgYi9z cmMvcHJpbnQuYwpAQCAtMjQzNSw3ICsyNDM1LDcgQEAgcHJpb3JpdGllcy4gICovKTsKICAgVnBy aW50X2NoYXJzZXRfdGV4dF9wcm9wZXJ0eSA9IFFkZWZhdWx0OwogCiAgIC8qIHByaW4xX3RvX3N0 cmluZ19idWZmZXIgaW5pdGlhbGl6ZWQgaW4gaW5pdF9idWZmZXJfb25jZSBpbiBidWZmZXIuYyAq LwotICBzdGF0aWNwcm8gKCZWcHJpbjFfdG9fc3RyaW5nX2J1ZmZlcik7CisgIHN0YXRpY3BybyAo JlZwcmluMV90b19zdHJpbmdfYnVmZmVyLCBRbmlsKTsKIAogICBkZWZzdWJyICgmU3ByaW4xKTsK ICAgZGVmc3ViciAoJlNwcmluMV90b19zdHJpbmcpOwpAQCAtMjQ1Miw2ICsyNDUyLDUgQEAgcHJp b3JpdGllcy4gICovKTsKICAgREVGU1lNIChRcHJpbnRfZXNjYXBlX25vbmFzY2lpLCAicHJpbnQt ZXNjYXBlLW5vbmFzY2lpIik7CiAgIERFRlNZTSAoUXByaW50X2VzY2FwZV9jb250cm9sX2NoYXJh Y3RlcnMsICJwcmludC1lc2NhcGUtY29udHJvbC1jaGFyYWN0ZXJzIik7CiAKLSAgcHJpbnRfcHJ1 bmVfY2hhcnNldF9wbGlzdCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJnByaW50X3BydW5lX2NoYXJz ZXRfcGxpc3QpOworICBzdGF0aWNwcm8gKCZwcmludF9wcnVuZV9jaGFyc2V0X3BsaXN0LCBRbmls KTsKIH0KZGlmZiAtLWdpdCBhL3NyYy9wcm9jZXNzLmMgYi9zcmMvcHJvY2Vzcy5jCmluZGV4IGVk MmNhYjdiNTFmLi4yNTYzNGY3NTNlMyAxMDA2NDQKLS0tIGEvc3JjL3Byb2Nlc3MuYworKysgYi9z cmMvcHJvY2Vzcy5jCkBAIC04MTQ5LDggKzgxNDksOCBAQCBzeW1zX29mX3Byb2Nlc3MgKHZvaWQp CiAKICAgREVGU1lNIChRbGFzdF9ub25tZW51X2V2ZW50LCAibGFzdC1ub25tZW51LWV2ZW50Iik7 CiAKLSAgc3RhdGljcHJvICgmVnByb2Nlc3NfYWxpc3QpOwotICBzdGF0aWNwcm8gKCZkZWxldGVk X3BpZF9saXN0KTsKKyAgc3RhdGljcHJvICgmVnByb2Nlc3NfYWxpc3QsIFFuaWwpOworICBzdGF0 aWNwcm8gKCZkZWxldGVkX3BpZF9saXN0LCBRbmlsKTsKIAogI2VuZGlmCS8qIHN1YnByb2Nlc3Nl cyAqLwogCmRpZmYgLS1naXQgYS9zcmMvcHJvZmlsZXIuYyBiL3NyYy9wcm9maWxlci5jCmluZGV4 IDMxMjU3NGQ3NTI2Li5iMWU1NGI2YTc0OCAxMDA2NDQKLS0tIGEvc3JjL3Byb2ZpbGVyLmMKKysr IGIvc3JjL3Byb2ZpbGVyLmMKQEAgLTU5NSwxNiArNTk1LDE0IEBAIHRvIG1ha2Ugcm9vbSBmb3Ig bmV3IGVudHJpZXMuICAqLyk7CiAKICNpZmRlZiBQUk9GSUxFUl9DUFVfU1VQUE9SVAogICBwcm9m aWxlcl9jcHVfcnVubmluZyA9IE5PVF9SVU5OSU5HOwotICBjcHVfbG9nID0gUW5pbDsKLSAgc3Rh dGljcHJvICgmY3B1X2xvZyk7CisgIHN0YXRpY3BybyAoJmNwdV9sb2csIFFuaWwpOwogICBkZWZz dWJyICgmU3Byb2ZpbGVyX2NwdV9zdGFydCk7CiAgIGRlZnN1YnIgKCZTcHJvZmlsZXJfY3B1X3N0 b3ApOwogICBkZWZzdWJyICgmU3Byb2ZpbGVyX2NwdV9ydW5uaW5nX3ApOwogICBkZWZzdWJyICgm U3Byb2ZpbGVyX2NwdV9sb2cpOwogI2VuZGlmCiAgIHByb2ZpbGVyX21lbW9yeV9ydW5uaW5nID0g ZmFsc2U7Ci0gIG1lbW9yeV9sb2cgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZtZW1vcnlfbG9nKTsK KyAgc3RhdGljcHJvICgmbWVtb3J5X2xvZywgUW5pbCk7CiAgIGRlZnN1YnIgKCZTcHJvZmlsZXJf bWVtb3J5X3N0YXJ0KTsKICAgZGVmc3ViciAoJlNwcm9maWxlcl9tZW1vcnlfc3RvcCk7CiAgIGRl ZnN1YnIgKCZTcHJvZmlsZXJfbWVtb3J5X3J1bm5pbmdfcCk7CmRpZmYgLS1naXQgYS9zcmMvc2Vh cmNoLmMgYi9zcmMvc2VhcmNoLmMKaW5kZXggODQyZTkzMDlhMmUuLmFhNGUzOWJkYmJjIDEwMDY0 NAotLS0gYS9zcmMvc2VhcmNoLmMKKysrIGIvc3JjL3NlYXJjaC5jCkBAIC0zMzY3LDEyICszMzY3 LDkgQEAgc3ltc19vZl9zZWFyY2ggKHZvaWQpCiAgICAgICBzZWFyY2hidWZzW2ldLmJ1Zi5hbGxv Y2F0ZWQgPSAxMDA7CiAgICAgICBzZWFyY2hidWZzW2ldLmJ1Zi5idWZmZXIgPSB4bWFsbG9jICgx MDApOwogICAgICAgc2VhcmNoYnVmc1tpXS5idWYuZmFzdG1hcCA9IHNlYXJjaGJ1ZnNbaV0uZmFz dG1hcDsKLSAgICAgIHNlYXJjaGJ1ZnNbaV0ucmVnZXhwID0gUW5pbDsKLSAgICAgIHNlYXJjaGJ1 ZnNbaV0uZl93aGl0ZXNwYWNlX3JlZ2V4cCA9IFFuaWw7Ci0gICAgICBzZWFyY2hidWZzW2ldLnN5 bnRheF90YWJsZSA9IFFuaWw7Ci0gICAgICBzdGF0aWNwcm8gKCZzZWFyY2hidWZzW2ldLnJlZ2V4 cCk7Ci0gICAgICBzdGF0aWNwcm8gKCZzZWFyY2hidWZzW2ldLmZfd2hpdGVzcGFjZV9yZWdleHAp OwotICAgICAgc3RhdGljcHJvICgmc2VhcmNoYnVmc1tpXS5zeW50YXhfdGFibGUpOworICAgICAg c3RhdGljcHJvICgmc2VhcmNoYnVmc1tpXS5yZWdleHAsIFFuaWwpOworICAgICAgc3RhdGljcHJv ICgmc2VhcmNoYnVmc1tpXS5mX3doaXRlc3BhY2VfcmVnZXhwLCBRbmlsKTsKKyAgICAgIHN0YXRp Y3BybyAoJnNlYXJjaGJ1ZnNbaV0uc3ludGF4X3RhYmxlLCBRbmlsKTsKICAgICAgIHNlYXJjaGJ1 ZnNbaV0ubmV4dCA9IChpID09IFJFR0VYUF9DQUNIRV9TSVpFLTEgPyAwIDogJnNlYXJjaGJ1ZnNb aSsxXSk7CiAgICAgfQogICBzZWFyY2hidWZfaGVhZCA9ICZzZWFyY2hidWZzWzBdOwpAQCAtMzQw MywxMSArMzQwMCw5IEBAIHN5bXNfb2Zfc2VhcmNoICh2b2lkKQogICBGcHV0IChRaW52YWxpZF9y ZWdleHAsIFFlcnJvcl9tZXNzYWdlLAogCWJ1aWxkX3B1cmVfY19zdHJpbmcgKCJJbnZhbGlkIHJl Z2V4cCIpKTsKIAotICBsYXN0X3RoaW5nX3NlYXJjaGVkID0gUW5pbDsKLSAgc3RhdGljcHJvICgm bGFzdF90aGluZ19zZWFyY2hlZCk7CisgIHN0YXRpY3BybyAoJmxhc3RfdGhpbmdfc2VhcmNoZWQs IFFuaWwpOwogCi0gIHNhdmVkX2xhc3RfdGhpbmdfc2VhcmNoZWQgPSBRbmlsOwotICBzdGF0aWNw cm8gKCZzYXZlZF9sYXN0X3RoaW5nX3NlYXJjaGVkKTsKKyAgc3RhdGljcHJvICgmc2F2ZWRfbGFz dF90aGluZ19zZWFyY2hlZCwgUW5pbCk7CiAKICAgREVGVkFSX0xJU1AgKCJzZWFyY2gtc3BhY2Vz LXJlZ2V4cCIsIFZzZWFyY2hfc3BhY2VzX3JlZ2V4cCwKICAgICAgIGRvYzogLyogUmVnZXhwIHRv IHN1YnN0aXR1dGUgZm9yIGJ1bmNoZXMgb2Ygc3BhY2VzIGluIHJlZ2V4cCBzZWFyY2guCmRpZmYg LS1naXQgYS9zcmMvc3ludGF4LmMgYi9zcmMvc3ludGF4LmMKaW5kZXggYzVhNGIwMzk1NWIuLjNh YjgyYWQ1ZDY0IDEwMDY0NAotLS0gYS9zcmMvc3ludGF4LmMKKysrIGIvc3JjL3N5bnRheC5jCkBA IC0zNzIyLDE1ICszNzIyLDE1IEBAIHN5bXNfb2Zfc3ludGF4ICh2b2lkKQogCSAgICAgICBkb2M6 IC8qIE5vbi1uaWwgbWVhbnMgYGZvcndhcmQtY29tbWVudCcgY2FuIHVzZSBgc3ludGF4LXBwc3Mn IGludGVybmFsbHkuICAqLyk7CiAgIFZjb21tZW50X3VzZV9zeW50YXhfcHBzcyA9IFF0OwogCi0g IHN0YXRpY3BybyAoJlZzeW50YXhfY29kZV9vYmplY3QpOworICBzdGF0aWNwcm8gKCZWc3ludGF4 X2NvZGVfb2JqZWN0LCBRbmlsKTsKIAotICBzdGF0aWNwcm8gKCZnbF9zdGF0ZS5vYmplY3QpOwot ICBzdGF0aWNwcm8gKCZnbF9zdGF0ZS5nbG9iYWxfY29kZSk7Ci0gIHN0YXRpY3BybyAoJmdsX3N0 YXRlLmN1cnJlbnRfc3ludGF4X3RhYmxlKTsKLSAgc3RhdGljcHJvICgmZ2xfc3RhdGUub2xkX3By b3ApOworICBzdGF0aWNwcm8gKCZnbF9zdGF0ZS5vYmplY3QsIFFuaWwpOworICBzdGF0aWNwcm8g KCZnbF9zdGF0ZS5nbG9iYWxfY29kZSwgUW5pbCk7CisgIHN0YXRpY3BybyAoJmdsX3N0YXRlLmN1 cnJlbnRfc3ludGF4X3RhYmxlLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmZ2xfc3RhdGUub2xkX3By b3AsIFFuaWwpOwogCiAgIC8qIERlZmluZWQgaW4gcmVnZXguYy4gICovCi0gIHN0YXRpY3BybyAo JnJlX21hdGNoX29iamVjdCk7CisgIHN0YXRpY3BybyAoJnJlX21hdGNoX29iamVjdCwgUW5pbCk7 CiAKICAgREVGU1lNIChRc2Nhbl9lcnJvciwgInNjYW4tZXJyb3IiKTsKICAgRnB1dCAoUXNjYW5f ZXJyb3IsIFFlcnJvcl9jb25kaXRpb25zLApkaWZmIC0tZ2l0IGEvc3JjL3RleHRwcm9wLmMgYi9z cmMvdGV4dHByb3AuYwppbmRleCA5ODRmMmU2NjQwNi4uN2Y3ZDczNTlmZmMgMTAwNjQ0Ci0tLSBh L3NyYy90ZXh0cHJvcC5jCisrKyBiL3NyYy90ZXh0cHJvcC5jCkBAIC0yMzQwLDEwICsyMzQwLDgg QEAgaW5oZXJpdHMgaXQgaWYgTk9OU1RJQ0tJTkVTUyBpcyBuaWwuICBUaGUgYGZyb250LXN0aWNr eScgYW5kCiAgIFZ0ZXh0X3Byb3BlcnR5X2RlZmF1bHRfbm9uc3RpY2t5CiAgICAgPSBsaXN0MiAo RmNvbnMgKFFzeW50YXhfdGFibGUsIFF0KSwgRmNvbnMgKFFkaXNwbGF5LCBRdCkpOwogCi0gIHN0 YXRpY3BybyAoJmludGVydmFsX2luc2VydF9iZWhpbmRfaG9va3MpOwotICBzdGF0aWNwcm8gKCZp bnRlcnZhbF9pbnNlcnRfaW5fZnJvbnRfaG9va3MpOwotICBpbnRlcnZhbF9pbnNlcnRfYmVoaW5k X2hvb2tzID0gUW5pbDsKLSAgaW50ZXJ2YWxfaW5zZXJ0X2luX2Zyb250X2hvb2tzID0gUW5pbDsK KyAgc3RhdGljcHJvICgmaW50ZXJ2YWxfaW5zZXJ0X2JlaGluZF9ob29rcywgUW5pbCk7CisgIHN0 YXRpY3BybyAoJmludGVydmFsX2luc2VydF9pbl9mcm9udF9ob29rcywgUW5pbCk7CiAKIAogICAv KiBDb21tb24gYXR0cmlidXRlcyBvbmUgbWlnaHQgZ2l2ZSB0ZXh0LiAgKi8KZGlmZiAtLWdpdCBh L3NyYy90aHJlYWQuYyBiL3NyYy90aHJlYWQuYwppbmRleCBmMTFlM2U1YWRkYi4uZmUwYzg2ODg0 MTUgMTAwNjQ0Ci0tLSBhL3NyYy90aHJlYWQuYworKysgYi9zcmMvdGhyZWFkLmMKQEAgLTEwNzQs OCArMTA3NCw3IEBAIHN5bXNfb2ZfdGhyZWFkcyAodm9pZCkKICAgICAgIGRlZnN1YnIgKCZTY29u ZGl0aW9uX25hbWUpOwogICAgICAgZGVmc3ViciAoJlN0aHJlYWRfbGFzdF9lcnJvcik7CiAKLSAg ICAgIHN0YXRpY3BybyAoJmxhc3RfdGhyZWFkX2Vycm9yKTsKLSAgICAgIGxhc3RfdGhyZWFkX2Vy cm9yID0gUW5pbDsKKyAgICAgIHN0YXRpY3BybyAoJmxhc3RfdGhyZWFkX2Vycm9yLCBRbmlsKTsK ICAgICB9CiAKICAgREVGU1lNIChRdGhyZWFkcCwgInRocmVhZHAiKTsKZGlmZiAtLWdpdCBhL3Ny Yy91bmRvLmMgYi9zcmMvdW5kby5jCmluZGV4IGMzNGZhYTQyNzIwLi5hMzRkZDQ4NjA5NCAxMDA2 NDQKLS0tIGEvc3JjL3VuZG8uYworKysgYi9zcmMvdW5kby5jCkBAIC00MzAsOCArNDMwLDcgQEAg c3ltc19vZl91bmRvICh2b2lkKQogICAvKiBNYXJrZXIgZm9yIGZ1bmN0aW9uIGNhbGwgdW5kbyBs aXN0IGVsZW1lbnRzLiAgKi8KICAgREVGU1lNIChRYXBwbHksICJhcHBseSIpOwogCi0gIHBlbmRp bmdfYm91bmRhcnkgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZwZW5kaW5nX2JvdW5kYXJ5KTsKKyAg c3RhdGljcHJvICgmcGVuZGluZ19ib3VuZGFyeSwgUW5pbCk7CiAKICAgZGVmc3ViciAoJlN1bmRv X2JvdW5kYXJ5KTsKIApkaWZmIC0tZ2l0IGEvc3JjL3czMmZucy5jIGIvc3JjL3czMmZucy5jCmlu ZGV4IDJiOTIwZjI5YzY1Li41OTAzYjJhMTU1NyAxMDA2NDQKLS0tIGEvc3JjL3czMmZucy5jCisr KyBiL3NyYy93MzJmbnMuYwpAQCAtMTAxNjQsOCArMTAxNjQsNyBAQCBzeW1zX29mX3czMmZucyAo dm9pZCkKICAgRnB1dCAoUXVuZGVmaW5lZF9jb2xvciwgUWVycm9yX21lc3NhZ2UsCiAJYnVpbGRf cHVyZV9jX3N0cmluZyAoIlVuZGVmaW5lZCBjb2xvciIpKTsKIAotICBzdGF0aWNwcm8gKCZ3MzJf Z3JhYmJlZF9rZXlzKTsKLSAgdzMyX2dyYWJiZWRfa2V5cyA9IFFuaWw7CisgIHN0YXRpY3BybyAo JnczMl9ncmFiYmVkX2tleXMsIFFuaWwpOwogCiAgIERFRlZBUl9MSVNQICgidzMyLWNvbG9yLW1h cCIsIFZ3MzJfY29sb3JfbWFwLAogCSAgICAgICBkb2M6IC8qIEFuIGFycmF5IG9mIGNvbG9yIG5h bWUgbWFwcGluZ3MgZm9yIFdpbmRvd3MuICAqLyk7CkBAIC0xMDUxNSwxNiArMTA1MTQsMTEgQEAg dGlwIGZyYW1lLiAgKi8pOwogICBkZWZzdWJyICgmU3NldF9tZXNzYWdlX2JlZXApOwogICBkZWZz dWJyICgmU3hfc2hvd190aXApOwogICBkZWZzdWJyICgmU3hfaGlkZV90aXApOwotICB0aXBfdGlt ZXIgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZ0aXBfdGltZXIpOwotICB0aXBfZnJhbWUgPSBRbmls OwotICBzdGF0aWNwcm8gKCZ0aXBfZnJhbWUpOwotICB0aXBfbGFzdF9mcmFtZSA9IFFuaWw7Ci0g IHN0YXRpY3BybyAoJnRpcF9sYXN0X2ZyYW1lKTsKLSAgdGlwX2xhc3Rfc3RyaW5nID0gUW5pbDsK LSAgc3RhdGljcHJvICgmdGlwX2xhc3Rfc3RyaW5nKTsKLSAgdGlwX2xhc3RfcGFybXMgPSBRbmls OwotICBzdGF0aWNwcm8gKCZ0aXBfbGFzdF9wYXJtcyk7CisgIHN0YXRpY3BybyAoJnRpcF90aW1l ciwgUW5pbCk7CisgIHN0YXRpY3BybyAoJnRpcF9mcmFtZSwgUW5pbCk7CisgIHN0YXRpY3BybyAo JnRpcF9sYXN0X2ZyYW1lLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmdGlwX2xhc3Rfc3RyaW5nLCBR bmlsKTsKKyAgc3RhdGljcHJvICgmdGlwX2xhc3RfcGFybXMsIFFuaWwpOwogCiAgIGRlZnN1YnIg KCZTeF9maWxlX2RpYWxvZyk7CiAjaWZkZWYgV0lORE9XU05UCmRpZmYgLS1naXQgYS9zcmMvdzMy cHJvYy5jIGIvc3JjL3czMnByb2MuYwppbmRleCAyOGQ3YjY2MTFmNi4uODNiOGVmN2Y1NmQgMTAw NjQ0Ci0tLSBhL3NyYy93MzJwcm9jLmMKKysrIGIvc3JjL3czMnByb2MuYwpAQCAtMzgyNiw3ICsz ODI2LDcgQEAgaW4gdGhlIHN0cmluZ3MuICBTbyBkbyBOT1QgdXNlIHRoaXMgb3B0aW9uIHdoZW4g Y29tcGFyaW5nIGZpbGUgbmFtZXMKIGZvciBlcXVhbGl0eSwgb25seSB3aGVuIHlvdSBuZWVkIHRv IHNvcnQgdGhlbS4gICovKTsKICAgVnczMl9jb2xsYXRlX2lnbm9yZV9wdW5jdHVhdGlvbiA9IFFu aWw7CiAKLSAgc3RhdGljcHJvICgmVnczMl92YWxpZF9sb2NhbGVfaWRzKTsKLSAgc3RhdGljcHJv ICgmVnczMl92YWxpZF9jb2RlcGFnZXMpOworICBzdGF0aWNwcm8gKCZWdzMyX3ZhbGlkX2xvY2Fs ZV9pZHMsIFFuaWwpOworICBzdGF0aWNwcm8gKCZWdzMyX3ZhbGlkX2NvZGVwYWdlcywgUW5pbCk7 CiB9CiAvKiBlbmQgb2YgdzMycHJvYy5jICovCmRpZmYgLS1naXQgYS9zcmMvdzMyc2VsZWN0LmMg Yi9zcmMvdzMyc2VsZWN0LmMKaW5kZXggYTlkZjNmNzcwYjcuLmNkMWJmNmE2MGNiIDEwMDY0NAot LS0gYS9zcmMvdzMyc2VsZWN0LmMKKysrIGIvc3JjL3czMnNlbGVjdC5jCkBAIC0xMTgxLDEzICsx MTgxLDEzIEBAIHN5bXNfb2ZfdzMyc2VsZWN0ICh2b2lkKQogCiAgIERFRlNZTSAoUUNMSVBCT0FS RCwgIkNMSVBCT0FSRCIpOwogCi0gIGNmZ19jb2Rpbmdfc3lzdGVtID0gUW5pbDsgICAgIHN0YXRp Y3BybyAoJmNmZ19jb2Rpbmdfc3lzdGVtKTsKLSAgY3VycmVudF90ZXh0ID0gUW5pbDsJCXN0YXRp Y3BybyAoJmN1cnJlbnRfdGV4dCk7Ci0gIGN1cnJlbnRfY29kaW5nX3N5c3RlbSA9IFFuaWw7IHN0 YXRpY3BybyAoJmN1cnJlbnRfY29kaW5nX3N5c3RlbSk7CisgIHN0YXRpY3BybyAoJmNmZ19jb2Rp bmdfc3lzdGVtLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmY3VycmVudF90ZXh0LCBRbmlsKTsKKyAg c3RhdGljcHJvICgmY3VycmVudF9jb2Rpbmdfc3lzdGVtLCBRbmlsKTsKIAogICBERUZTWU0gKFF1 dGZfMTZsZV9kb3MsICJ1dGYtMTZsZS1kb3MiKTsKLSAgUUFOU0lDUCA9IFFuaWw7IHN0YXRpY3By byAoJlFBTlNJQ1ApOwotICBRT0VNQ1AgPSBRbmlsOyAgc3RhdGljcHJvICgmUU9FTUNQKTsKKyAg c3RhdGljcHJvICgmUUFOU0lDUCwgUW5pbCk7CisgIHN0YXRpY3BybyAoJlFPRU1DUCwgUW5pbCk7 CiB9CiAKIC8qIE9uZS10aW1lIGluaXQuICBDYWxsZWQgaW4gdGhlIGR1bXBlZCBFbWFjcywgYnV0 IG5vdCBpbiB0aGUKZGlmZiAtLWdpdCBhL3NyYy93aW5kb3cuYyBiL3NyYy93aW5kb3cuYwppbmRl eCBlNmQwMjgwZDliMC4uNTgxZDUyOWJmOGMgMTAwNjQ0Ci0tLSBhL3NyYy93aW5kb3cuYworKysg Yi9zcmMvd2luZG93LmMKQEAgLTc1NjYsMTAgKzc1NjYsOCBAQCBzeW1zX29mX3dpbmRvdyAodm9p ZCkKICAgREVGU1lNIChRbW9kZV9saW5lX2Zvcm1hdCwgIm1vZGUtbGluZS1mb3JtYXQiKTsKICAg REVGU1lNIChRaGVhZGVyX2xpbmVfZm9ybWF0LCAiaGVhZGVyLWxpbmUtZm9ybWF0Iik7CiAKLSAg c3RhdGljcHJvICgmVndpbmRvd19saXN0KTsKLQotICBtaW5pYnVmX3NlbGVjdGVkX3dpbmRvdyA9 IFFuaWw7Ci0gIHN0YXRpY3BybyAoJm1pbmlidWZfc2VsZWN0ZWRfd2luZG93KTsKKyAgc3RhdGlj cHJvICgmVndpbmRvd19saXN0LCBRbmlsKTsKKyAgc3RhdGljcHJvICgmbWluaWJ1Zl9zZWxlY3Rl ZF93aW5kb3csIFFuaWwpOwogCiAgIHdpbmRvd19zY3JvbGxfcGl4ZWxfYmFzZWRfcHJlc2VydmVf eCA9IC0xOwogICB3aW5kb3dfc2Nyb2xsX3BpeGVsX2Jhc2VkX3ByZXNlcnZlX3kgPSAtMTsKZGlm ZiAtLWdpdCBhL3NyYy94ZGlzcC5jIGIvc3JjL3hkaXNwLmMKaW5kZXggZGY1MzM1ZTRhY2MuLmUx OTRmNzY3ZGFlIDEwMDY0NAotLS0gYS9zcmMveGRpc3AuYworKysgYi9zcmMveGRpc3AuYwpAQCAt MzI0MTgsMTEgKzMyNDE4LDkgQEAgeF9pbnRlcnNlY3RfcmVjdGFuZ2xlcyAoWFJlY3RhbmdsZSAq cjEsIFhSZWN0YW5nbGUgKnIyLCBYUmVjdGFuZ2xlICpyZXN1bHQpCiB2b2lkCiBzeW1zX29mX3hk aXNwICh2b2lkKQogewotICBWd2l0aF9lY2hvX2FyZWFfc2F2ZV92ZWN0b3IgPSBRbmlsOwotICBz dGF0aWNwcm8gKCZWd2l0aF9lY2hvX2FyZWFfc2F2ZV92ZWN0b3IpOworICBzdGF0aWNwcm8gKCZW d2l0aF9lY2hvX2FyZWFfc2F2ZV92ZWN0b3IsIFFuaWwpOwogCi0gIFZtZXNzYWdlX3N0YWNrID0g UW5pbDsKLSAgc3RhdGljcHJvICgmVm1lc3NhZ2Vfc3RhY2spOworICBzdGF0aWNwcm8gKCZWbWVz c2FnZV9zdGFjaywgUW5pbCk7CiAKICAgLyogTm9uLW5pbCBtZWFucyBkb24ndCBhY3R1YWxseSBk byBhbnkgcmVkaXNwbGF5LiAgKi8KICAgREVGU1lNIChRaW5oaWJpdF9yZWRpc3BsYXksICJpbmhp Yml0LXJlZGlzcGxheSIpOwpAQCAtMzI0MzQsMTIgKzMyNDMyLDkgQEAgc3ltc19vZl94ZGlzcCAo dm9pZCkKIFRoZXkgYXJlIHN0aWxsIGxvZ2dlZCB0byB0aGUgKk1lc3NhZ2VzKiBidWZmZXIuICAq Lyk7CiAgIGluaGliaXRfbWVzc2FnZSA9IDA7CiAKLSAgbWVzc2FnZV9kb2xvZ19tYXJrZXIxID0g Rm1ha2VfbWFya2VyICgpOwotICBzdGF0aWNwcm8gKCZtZXNzYWdlX2RvbG9nX21hcmtlcjEpOwot ICBtZXNzYWdlX2RvbG9nX21hcmtlcjIgPSBGbWFrZV9tYXJrZXIgKCk7Ci0gIHN0YXRpY3BybyAo Jm1lc3NhZ2VfZG9sb2dfbWFya2VyMik7Ci0gIG1lc3NhZ2VfZG9sb2dfbWFya2VyMyA9IEZtYWtl X21hcmtlciAoKTsKLSAgc3RhdGljcHJvICgmbWVzc2FnZV9kb2xvZ19tYXJrZXIzKTsKKyAgc3Rh dGljcHJvICgmbWVzc2FnZV9kb2xvZ19tYXJrZXIxLCBGbWFrZV9tYXJrZXIgKCkpOworICBzdGF0 aWNwcm8gKCZtZXNzYWdlX2RvbG9nX21hcmtlcjIsIEZtYWtlX21hcmtlciAoKSk7CisgIHN0YXRp Y3BybyAoJm1lc3NhZ2VfZG9sb2dfbWFya2VyMywgRm1ha2VfbWFya2VyICgpKTsKIAogICBkZWZz dWJyICgmU3NldF9idWZmZXJfcmVkaXNwbGF5KTsKICNpZmRlZiBHTFlQSF9ERUJVRwpAQCAtMzI1 NTMsOCArMzI1NDgsNyBAQCBUaGV5IGFyZSBzdGlsbCBsb2dnZWQgdG8gdGhlICpNZXNzYWdlcyog YnVmZmVyLiAgKi8pOwogCiAgIERFRlNZTSAoUWluaGliaXRfZnJlZV9yZWFsaXplZF9mYWNlcywg ImluaGliaXQtZnJlZS1yZWFsaXplZC1mYWNlcyIpOwogCi0gIGxpc3Rfb2ZfZXJyb3IgPSBsaXN0 MSAobGlzdDIgKFFlcnJvciwgUXZvaWRfdmFyaWFibGUpKTsKLSAgc3RhdGljcHJvICgmbGlzdF9v Zl9lcnJvcik7CisgIHN0YXRpY3BybyAoJmxpc3Rfb2ZfZXJyb3IsIGxpc3QxIChsaXN0MiAoUWVy cm9yLCBRdm9pZF92YXJpYWJsZSkpKTsKIAogICAvKiBWYWx1ZXMgb2YgdGhvc2UgdmFyaWFibGVz IGF0IGxhc3QgcmVkaXNwbGF5IGFyZSBzdG9yZWQgYXMKICAgICAgcHJvcGVydGllcyBvbiAnb3Zl cmxheS1hcnJvdy1wb3NpdGlvbicgc3ltYm9sLiAgSG93ZXZlciwgaWYKQEAgLTMyNTY4LDM4ICsz MjU2MiwyNiBAQCBUaGV5IGFyZSBzdGlsbCBsb2dnZWQgdG8gdGhlICpNZXNzYWdlcyogYnVmZmVy LiAgKi8pOwogICBERUZTWU0gKFFvdmVybGF5X2Fycm93X3N0cmluZywgIm92ZXJsYXktYXJyb3ct c3RyaW5nIik7CiAgIERFRlNZTSAoUW92ZXJsYXlfYXJyb3dfYml0bWFwLCAib3ZlcmxheS1hcnJv dy1iaXRtYXAiKTsKIAotICBlY2hvX2J1ZmZlclswXSA9IGVjaG9fYnVmZmVyWzFdID0gUW5pbDsK LSAgc3RhdGljcHJvICgmZWNob19idWZmZXJbMF0pOwotICBzdGF0aWNwcm8gKCZlY2hvX2J1ZmZl clsxXSk7CisgIHN0YXRpY3BybyAoJmVjaG9fYnVmZmVyWzBdLCBRbmlsKTsKKyAgc3RhdGljcHJv ICgmZWNob19idWZmZXJbMV0sIFFuaWwpOwogCi0gIGVjaG9fYXJlYV9idWZmZXJbMF0gPSBlY2hv X2FyZWFfYnVmZmVyWzFdID0gUW5pbDsKLSAgc3RhdGljcHJvICgmZWNob19hcmVhX2J1ZmZlclsw XSk7Ci0gIHN0YXRpY3BybyAoJmVjaG9fYXJlYV9idWZmZXJbMV0pOworICBzdGF0aWNwcm8gKCZl Y2hvX2FyZWFfYnVmZmVyWzBdLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmZWNob19hcmVhX2J1ZmZl clsxXSwgUW5pbCk7CiAKLSAgVm1lc3NhZ2VzX2J1ZmZlcl9uYW1lID0gYnVpbGRfcHVyZV9jX3N0 cmluZyAoIipNZXNzYWdlcyoiKTsKLSAgc3RhdGljcHJvICgmVm1lc3NhZ2VzX2J1ZmZlcl9uYW1l KTsKKyAgc3RhdGljcHJvICgmVm1lc3NhZ2VzX2J1ZmZlcl9uYW1lLCBidWlsZF9wdXJlX2Nfc3Ry aW5nICgiKk1lc3NhZ2VzKiIpKTsKIAotICBtb2RlX2xpbmVfcHJvcHRyYW5zX2FsaXN0ID0gUW5p bDsKLSAgc3RhdGljcHJvICgmbW9kZV9saW5lX3Byb3B0cmFuc19hbGlzdCk7Ci0gIG1vZGVfbGlu ZV9zdHJpbmdfbGlzdCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJm1vZGVfbGluZV9zdHJpbmdfbGlz dCk7Ci0gIG1vZGVfbGluZV9zdHJpbmdfZmFjZSA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJm1vZGVf bGluZV9zdHJpbmdfZmFjZSk7Ci0gIG1vZGVfbGluZV9zdHJpbmdfZmFjZV9wcm9wID0gUW5pbDsK LSAgc3RhdGljcHJvICgmbW9kZV9saW5lX3N0cmluZ19mYWNlX3Byb3ApOwotICBWbW9kZV9saW5l X3Vud2luZF92ZWN0b3IgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZWbW9kZV9saW5lX3Vud2luZF92 ZWN0b3IpOworICBzdGF0aWNwcm8gKCZtb2RlX2xpbmVfcHJvcHRyYW5zX2FsaXN0LCBRbmlsKTsK KyAgc3RhdGljcHJvICgmbW9kZV9saW5lX3N0cmluZ19saXN0LCBRbmlsKTsKKyAgc3RhdGljcHJv ICgmbW9kZV9saW5lX3N0cmluZ19mYWNlLCBRbmlsKTsKKyAgc3RhdGljcHJvICgmbW9kZV9saW5l X3N0cmluZ19mYWNlX3Byb3AsIFFuaWwpOworICBzdGF0aWNwcm8gKCZWbW9kZV9saW5lX3Vud2lu ZF92ZWN0b3IsIFFuaWwpOwogCiAgIERFRlNZTSAoUW1vZGVfbGluZV9kZWZhdWx0X2hlbHBfZWNo bywgIm1vZGUtbGluZS1kZWZhdWx0LWhlbHAtZWNobyIpOwogCi0gIGhlbHBfZWNob19zdHJpbmcg PSBRbmlsOwotICBzdGF0aWNwcm8gKCZoZWxwX2VjaG9fc3RyaW5nKTsKLSAgaGVscF9lY2hvX29i amVjdCA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJmhlbHBfZWNob19vYmplY3QpOwotICBoZWxwX2Vj aG9fd2luZG93ID0gUW5pbDsKLSAgc3RhdGljcHJvICgmaGVscF9lY2hvX3dpbmRvdyk7Ci0gIHBy ZXZpb3VzX2hlbHBfZWNob19zdHJpbmcgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZwcmV2aW91c19o ZWxwX2VjaG9fc3RyaW5nKTsKKyAgc3RhdGljcHJvICgmaGVscF9lY2hvX3N0cmluZywgUW5pbCk7 CisgIHN0YXRpY3BybyAoJmhlbHBfZWNob19vYmplY3QsIFFuaWwpOworICBzdGF0aWNwcm8gKCZo ZWxwX2VjaG9fd2luZG93LCBRbmlsKTsKKyAgc3RhdGljcHJvICgmcHJldmlvdXNfaGVscF9lY2hv X3N0cmluZywgUW5pbCk7CiAgIGhlbHBfZWNob19wb3MgPSAtMTsKIAogICBERUZTWU0gKFFyaWdo dF90b19sZWZ0LCAicmlnaHQtdG8tbGVmdCIpOwpkaWZmIC0tZ2l0IGEvc3JjL3hmYWNlcy5jIGIv c3JjL3hmYWNlcy5jCmluZGV4IGE5YzJmMzdlOWYyLi44OWMxMDY1NzUwZSAxMDA2NDQKLS0tIGEv c3JjL3hmYWNlcy5jCisrKyBiL3NyYy94ZmFjZXMuYwpAQCAtNjQ1MSwxMiArNjQ1MSw5IEBAIHN5 bXNfb2ZfeGZhY2VzICh2b2lkKQogICAvKiBUaGUgbmFtZSBvZiB0aGUgZnVuY3Rpb24gdXNlZCB0 byBjb21wdXRlIGNvbG9ycyBvbiBUVFlzLiAgKi8KICAgREVGU1lNIChRdHR5X2NvbG9yX2FsaXN0 LCAidHR5LWNvbG9yLWFsaXN0Iik7CiAKLSAgVnBhcmFtX3ZhbHVlX2FsaXN0ID0gbGlzdDEgKEZj b25zIChRbmlsLCBRbmlsKSk7Ci0gIHN0YXRpY3BybyAoJlZwYXJhbV92YWx1ZV9hbGlzdCk7Ci0g IFZmYWNlX2FsdGVybmF0aXZlX2ZvbnRfZmFtaWx5X2FsaXN0ID0gUW5pbDsKLSAgc3RhdGljcHJv ICgmVmZhY2VfYWx0ZXJuYXRpdmVfZm9udF9mYW1pbHlfYWxpc3QpOwotICBWZmFjZV9hbHRlcm5h dGl2ZV9mb250X3JlZ2lzdHJ5X2FsaXN0ID0gUW5pbDsKLSAgc3RhdGljcHJvICgmVmZhY2VfYWx0 ZXJuYXRpdmVfZm9udF9yZWdpc3RyeV9hbGlzdCk7CisgIHN0YXRpY3BybyAoJlZwYXJhbV92YWx1 ZV9hbGlzdCwgbGlzdDEgKEZjb25zIChRbmlsLCBRbmlsKSkpOworICBzdGF0aWNwcm8gKCZWZmFj ZV9hbHRlcm5hdGl2ZV9mb250X2ZhbWlseV9hbGlzdCwgUW5pbCk7CisgIHN0YXRpY3BybyAoJlZm YWNlX2FsdGVybmF0aXZlX2ZvbnRfcmVnaXN0cnlfYWxpc3QsIFFuaWwpOwogCiAgIGRlZnN1YnIg KCZTaW50ZXJuYWxfbWFrZV9saXNwX2ZhY2UpOwogICBkZWZzdWJyICgmU2ludGVybmFsX2xpc3Bf ZmFjZV9wKTsKZGlmZiAtLWdpdCBhL3NyYy94Zm5zLmMgYi9zcmMveGZucy5jCmluZGV4IDc4MTUx YzgxMzgwLi4zOGQ5ZjkxZGM4OSAxMDA2NDQKLS0tIGEvc3JjL3hmbnMuYworKysgYi9zcmMveGZu cy5jCkBAIC03OTI2LDE2ICs3OTI2LDExIEBAIFdoZW4gdXNpbmcgR3RrKyB0b29sdGlwcywgdGhl IHRvb2x0aXAgZmFjZSBpcyBub3QgdXNlZC4gICovKTsKICAgZGVmc3ViciAoJlN4X3Nob3dfdGlw KTsKICAgZGVmc3ViciAoJlN4X2hpZGVfdGlwKTsKICAgZGVmc3ViciAoJlN4X2RvdWJsZV9idWZm ZXJlZF9wKTsKLSAgdGlwX3RpbWVyID0gUW5pbDsKLSAgc3RhdGljcHJvICgmdGlwX3RpbWVyKTsK LSAgdGlwX2ZyYW1lID0gUW5pbDsKLSAgc3RhdGljcHJvICgmdGlwX2ZyYW1lKTsKLSAgdGlwX2xh c3RfZnJhbWUgPSBRbmlsOwotICBzdGF0aWNwcm8gKCZ0aXBfbGFzdF9mcmFtZSk7Ci0gIHRpcF9s YXN0X3N0cmluZyA9IFFuaWw7Ci0gIHN0YXRpY3BybyAoJnRpcF9sYXN0X3N0cmluZyk7Ci0gIHRp cF9sYXN0X3Bhcm1zID0gUW5pbDsKLSAgc3RhdGljcHJvICgmdGlwX2xhc3RfcGFybXMpOworICBz dGF0aWNwcm8gKCZ0aXBfdGltZXIsIFFuaWwpOworICBzdGF0aWNwcm8gKCZ0aXBfZnJhbWUsIFFu aWwpOworICBzdGF0aWNwcm8gKCZ0aXBfbGFzdF9mcmFtZSwgUW5pbCk7CisgIHN0YXRpY3BybyAo JnRpcF9sYXN0X3N0cmluZywgUW5pbCk7CisgIHN0YXRpY3BybyAoJnRpcF9sYXN0X3Bhcm1zLCBR bmlsKTsKIAogICBkZWZzdWJyICgmU3hfdXNlc19vbGRfZ3RrX2RpYWxvZyk7CiAjaWYgZGVmaW5l ZCAoVVNFX01PVElGKSB8fCBkZWZpbmVkIChVU0VfR1RLKQpkaWZmIC0tZ2l0IGEvc3JjL3hmb250 LmMgYi9zcmMveGZvbnQuYwppbmRleCBjMmU0MTZiYzA1OC4uYTY3MjM3YWEyYWEgMTAwNjQ0Ci0t LSBhL3NyYy94Zm9udC5jCisrKyBiL3NyYy94Zm9udC5jCkBAIC0xMDk4LDkgKzEwOTgsNyBAQCBz dHJ1Y3QgZm9udF9kcml2ZXIgY29uc3QgeGZvbnRfZHJpdmVyID0KIHZvaWQKIHN5bXNfb2ZfeGZv bnQgKHZvaWQpCiB7Ci0gIHN0YXRpY3BybyAoJnhmb250X3NjcmlwdHNfY2FjaGUpOwotICB4Zm9u dF9zY3JpcHRzX2NhY2hlID0gQ0FMTE4gKEZtYWtlX2hhc2hfdGFibGUsIFFDdGVzdCwgUWVxdWFs KTsKLSAgc3RhdGljcHJvICgmeGZvbnRfc2NyYXRjaF9wcm9wcyk7Ci0gIHhmb250X3NjcmF0Y2hf cHJvcHMgPSBGbWFrZV92ZWN0b3IgKG1ha2VfbnVtYmVyICg4KSwgUW5pbCk7CisgIHN0YXRpY3By byAoJnhmb250X3NjcmlwdHNfY2FjaGUsIENBTExOIChGbWFrZV9oYXNoX3RhYmxlLCBRQ3Rlc3Qs IFFlcXVhbCkpOworICBzdGF0aWNwcm8gKCZ4Zm9udF9zY3JhdGNoX3Byb3BzLCBGbWFrZV92ZWN0 b3IgKG1ha2VfbnVtYmVyICg4KSwgUW5pbCkpOwogICByZWdpc3Rlcl9mb250X2RyaXZlciAoJnhm b250X2RyaXZlciwgTlVMTCk7CiB9CmRpZmYgLS1naXQgYS9zcmMveHNlbGVjdC5jIGIvc3JjL3hz ZWxlY3QuYwppbmRleCBlY2Y1OWRmMjk0My4uNTM4YjU1NWY2NDMgMTAwNjQ0Ci0tLSBhL3NyYy94 c2VsZWN0LmMKKysrIGIvc3JjL3hzZWxlY3QuYwpAQCAtMjYzMywxNSArMjYzMywxMyBAQCBzeW1z X29mX3hzZWxlY3QgKHZvaWQpCiAgIGRlZnN1YnIgKCZTeF9zZW5kX2NsaWVudF9tZXNzYWdlKTsK ICAgZGVmc3ViciAoJlN4X3JlZ2lzdGVyX2RuZF9hdG9tKTsKIAotICByZWFkaW5nX3NlbGVjdGlv bl9yZXBseSA9IEZjb25zIChRbmlsLCBRbmlsKTsKLSAgc3RhdGljcHJvICgmcmVhZGluZ19zZWxl Y3Rpb25fcmVwbHkpOworICBzdGF0aWNwcm8gKCZyZWFkaW5nX3NlbGVjdGlvbl9yZXBseSwgRmNv bnMgKFFuaWwsIFFuaWwpKTsKICAgcmVhZGluZ19zZWxlY3Rpb25fd2luZG93ID0gMDsKICAgcmVh ZGluZ193aGljaF9zZWxlY3Rpb24gPSAwOwogCiAgIHByb3BlcnR5X2NoYW5nZV93YWl0X2xpc3Qg PSAwOwogICBwcm9wX2xvY2F0aW9uX2lkZW50aWZpZXIgPSAwOwotICBwcm9wZXJ0eV9jaGFuZ2Vf cmVwbHkgPSBGY29ucyAoUW5pbCwgUW5pbCk7Ci0gIHN0YXRpY3BybyAoJnByb3BlcnR5X2NoYW5n ZV9yZXBseSk7CisgIHN0YXRpY3BybyAoJnByb3BlcnR5X2NoYW5nZV9yZXBseSwgRmNvbnMgKFFu aWwsIFFuaWwpKTsKIAogICBjb252ZXJ0ZWRfc2VsZWN0aW9ucyA9IE5VTEw7CiAgIGNvbnZlcnNp b25fZmFpbF90YWcgPSBOb25lOwpkaWZmIC0tZ2l0IGEvc3JjL3h0ZXJtLmMgYi9zcmMveHRlcm0u YwppbmRleCA2YWI0YTAzMDAyZC4uZDFjMzc5N2NmMDYgMTAwNjQ0Ci0tLSBhL3NyYy94dGVybS5j CisrKyBiL3NyYy94dGVybS5jCkBAIC0xMzI1Nyw4ICsxMzI1Nyw3IEBAIHN5bXNfb2ZfeHRlcm0g KHZvaWQpCiAgIERFRlNZTSAoUWxhdGluXzEsICJsYXRpbi0xIik7CiAKICNpZmRlZiBVU0VfR1RL Ci0gIHhnX2RlZmF1bHRfaWNvbl9maWxlID0gYnVpbGRfcHVyZV9jX3N0cmluZyAoImljb25zL2hp Y29sb3Ivc2NhbGFibGUvYXBwcy9lbWFjcy5zdmciKTsKLSAgc3RhdGljcHJvICgmeGdfZGVmYXVs dF9pY29uX2ZpbGUpOworICBzdGF0aWNwcm8gKCZ4Z19kZWZhdWx0X2ljb25fZmlsZSwgYnVpbGRf cHVyZV9jX3N0cmluZyAoImljb25zL2hpY29sb3Ivc2NhbGFibGUvYXBwcy9lbWFjcy5zdmciKSk7 CiAKICAgREVGU1lNIChReF9ndGtfbWFwX3N0b2NrLCAieC1ndGstbWFwLXN0b2NrIik7CiAjZW5k aWYK --089e082f4f84487f8a05689d4ae7--