From unknown Mon Aug 18 11:25:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#46965: 28.0.50; unexec does not build (or work) Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 06 Mar 2021 14:03:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 46965 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 46965@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.161503934715271 (code B ref -1); Sat, 06 Mar 2021 14:03:01 +0000 Received: (at submit) by debbugs.gnu.org; 6 Mar 2021 14:02:27 +0000 Received: from localhost ([127.0.0.1]:36285 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIXVi-0003yE-PB for submit@debbugs.gnu.org; Sat, 06 Mar 2021 09:02:27 -0500 Received: from lists.gnu.org ([209.51.188.17]:43790) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIXVg-0003y6-95 for submit@debbugs.gnu.org; Sat, 06 Mar 2021 09:02:24 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44914) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lIXVg-0005v0-1k for bug-gnu-emacs@gnu.org; Sat, 06 Mar 2021 09:02:24 -0500 Received: from mail-ot1-x32c.google.com ([2607:f8b0:4864:20::32c]:46598) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lIXVe-0008Oq-6y for bug-gnu-emacs@gnu.org; Sat, 06 Mar 2021 09:02:23 -0500 Received: by mail-ot1-x32c.google.com with SMTP id 97so4640822otf.13 for ; Sat, 06 Mar 2021 06:02:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=qc+Uj57kFeIc0MPc/FS43dR9QFlFElBBS8iRiValXPk=; b=fHv02cZ7eLsyMMy4/QH4Eb3bi9AgEZCuC1reo6lLnVTA0GBVKkdUBpPwxgNbvYUPB5 m+FyPj4uUNvyx7o2egVcn2pOqai0rrbIZRW52+8UULcyy+jjh2KnH0F5nhpIBKf5dMpM teWy8ccodNdyUFmGn70C5P72WFYGNohiMiKlsSfVhzhpirQut6BlerksqIPqY5KuLV/O nDMLm0aBh5YIlYFV5lhK1ks3H9PnI/aip2oc2Mg7fJ2n3Zsl36reI9k1sjkSIMi8mdEI 3gtTEXjBETkga4KYBAuxm7Surr1N9z11CSo5N3KMiupjbxVGq9z2UL1m6nhlyggl2oi4 egQg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=qc+Uj57kFeIc0MPc/FS43dR9QFlFElBBS8iRiValXPk=; b=A9IaooH5OSom0qVi9oScwJIfITLaKEDfboefYku2S2ZfSk/oox2lctLGSgYRhrUOc2 eFpHjQRkvKryWHo3LV3n9pevnm+ndEBj5HUuyWgM/L5w/JjR+eILEKPXMgTcE1wW3v5m z1HgLI2hSptjJHaJJfzTv+i+/qAkcDHYpKm54x+BtqhpWaTb1gP+2cRXIGOzjObAetfh jFpHaHnxkmaEOR75+mL8EgPyNlcDoDWPz+ry0oXufS/2cLhqHVll84BUoBnmGVb6povF Gi3wRawNxnvwthInKjCPAkVizEJy87hbA+Wd+TrNhZSoqneWVRcT9Jn0IrqSNc7D/oTc t8yg== X-Gm-Message-State: AOAM533oyBRv2nlan18vqRrQ/3NKvm/3K/bmiTz0kUHJOrO0YK8K1fdu ojlj4Mi9wRZ8b6VzMQ0Jkuiioow33/x+9+1wUnEVIwEMga9tUQ== X-Google-Smtp-Source: ABdhPJxICYMt9QFsG9HxXqsSxr/wnXdxokq5czcfITx6xrkrbJOj9nmqcZCg1PxYb68ePa/vnS6rS3lNjnQtgvob8cs= X-Received: by 2002:a05:6830:1e51:: with SMTP id e17mr12123704otj.292.1615039340529; Sat, 06 Mar 2021 06:02:20 -0800 (PST) MIME-Version: 1.0 From: Pip Cet Date: Sat, 6 Mar 2021 14:01:44 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" Received-SPF: pass client-ip=2607:f8b0:4864:20::32c; envelope-from=pipcet@gmail.com; helo=mail-ot1-x32c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.3 (--) On this Debian-based x86_64-pc-linux-gnu system, configuring with --with-dumping=unexec results in various errors: 1. a compilation error in pdumper.c. Easy to fix, my fault, but then there's ... 2. a segfault when running the dumped image. The problem is we can't use glibc's malloc when running a dumped image, so we need to force use of hybrid malloc. But then... 3. gnulib no longer builds with hybrid malloc. To do so requires some massaging of the gnulib files, but then... 4. gnulib redirects free() to always point to the glibc free(), even when Emacs wants to override it for hybrid malloc. To fix this, we need to rerun gnulib-tool. (1) tells me it's very unlikely anyone but me has tried to build unexec Emacs lately. The other bugs tell me that it's getting rapidly more difficult to support unexec build. But unexec does provide performance advantages over pdumper, and even over undumped builds. So, do we want to keep it as an option? RMS said so in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=36649;msg=77 So I'm opening this bug for discussion, and to post the patches I need to make unexec work again. From unknown Mon Aug 18 11:25:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#46965: 28.0.50; unexec does not build (or work) Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 06 Mar 2021 19:08:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46965 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 46965@debbugs.gnu.org Received: via spool by 46965-submit@debbugs.gnu.org id=B46965.161505767229507 (code B ref 46965); Sat, 06 Mar 2021 19:08:02 +0000 Received: (at 46965) by debbugs.gnu.org; 6 Mar 2021 19:07:52 +0000 Received: from localhost ([127.0.0.1]:38351 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIcHG-0007fo-B8 for submit@debbugs.gnu.org; Sat, 06 Mar 2021 14:07:52 -0500 Received: from mail-ot1-f46.google.com ([209.85.210.46]:42727) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIcHB-0007fW-4p for 46965@debbugs.gnu.org; Sat, 06 Mar 2021 14:07:48 -0500 Received: by mail-ot1-f46.google.com with SMTP id e45so5221650ote.9 for <46965@debbugs.gnu.org>; Sat, 06 Mar 2021 11:07:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=mpfsbPNLjKoznbDaLnS1YYuZZUoZrpT7bo40+pUB9YQ=; b=s2KK50KPDvYUJmVZbPUsKsV6DrVNkoDCpJ+1EmfdmdJV7aw5y1kZSI7sHxXvzcPpAb HM7LlHVOZn/oqRmjivjn5p0xnShAyLyBGA7Rq4AH4xQexIGPontd6ZjoxX+MlkQWPKKg RxmJyxqs6yiQuSIM84D3+8YZBtJyQltnxQajh4J04RJ7zwotAuL2DuROqe4/9uiRhGxz zS+VOZ4H5oGwfqbyWvVhwSPyx3ATtM1rO/EXiL/CTDcDaYvbuuSNAvGbIUlbQB4xLukU NYL/hU8gzqHtsHY8dZ/8VbSbOVvZu8Yx1/zhRtSzU7leJ8kTDDu2jhK2+OmoXL+e/Bks wkiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=mpfsbPNLjKoznbDaLnS1YYuZZUoZrpT7bo40+pUB9YQ=; b=Ff0LHtcEZc+oYazVffCy1RbZVxFfxraK1wIcP5uCc5vT4rMP1jPbhJAQKj1pcPGGFV v9TiC8o7XheYg3phxvJIRjLtxDhxzM0BmzjvVU82+Ypuk58+1OxblI/VXs9bCXjBX0A3 OfzD7ZrtyXjx4guyOPb4hNaIT93mFqCDFZsA1AolKh6SLMVyNOxEnfHBh+ImeOFiDatG BuF3/E21McsQc31PDQgvxu2HOlTNxiOBfOZPJBHrVj6JACa0TrKGG7++ma+AWjym/1Ed T6eA1U61vyXU08x7fzoucBbqkr+9t7jf2ObONjaajwCkEBwe69uMT1KKZeM/mhGrBmYy AmGQ== X-Gm-Message-State: AOAM5314NgTOG9KHNJOkPpScDIwaC3QMlwGhfZs+x1sGPxmiGgUG66Uy gXVGFGIDduQTWNmtaMjSt97jLm/tgFWPidaLKm2dU1M2xt4= X-Google-Smtp-Source: ABdhPJwCyRE2wSLRUYrFB3F4l95Xv87Ln6rLdcIVbembiWTkQVSl1GEdk5vjyWOwoPo3ltqaM59qVj///TPDADwxYrw= X-Received: by 2002:a05:6830:11d4:: with SMTP id v20mr13073790otq.287.1615057659516; Sat, 06 Mar 2021 11:07:39 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Pip Cet Date: Sat, 6 Mar 2021 19:07:02 +0000 Message-ID: Content-Type: multipart/mixed; boundary="000000000000168bbe05bce2eade" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --000000000000168bbe05bce2eade Content-Type: text/plain; charset="UTF-8" On Sat, Mar 6, 2021 at 2:03 PM Pip Cet wrote: > But unexec does provide performance advantages over pdumper, and even > over undumped builds. That, by the way, is because of pure space. Here's the patch to make unexec build. Note that this patch removes the free() wrapper from lib/, so if your libc's free() is broken and sets errno, that bug will be once again exposed. --000000000000168bbe05bce2eade Content-Type: text/x-patch; charset="UTF-8"; name="0001-fix-build-with-dumping-unexec.patch" Content-Disposition: attachment; filename="0001-fix-build-with-dumping-unexec.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kly3le7g0 RnJvbSBmYWM4YzI3M2EwYjEyNzkwZTYyMDJmNmRkYWY5MTE2NzY4NWVjNjk5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQaXAgQ2V0IDxwaXBjZXRAZ21haWwuY29tPgpEYXRlOiBGcmks IDUgTWFyIDIwMjEgMTk6MzA6NDAgKzAwMDAKU3ViamVjdDogW1BBVENIXSBmaXggYnVpbGQgd2l0 aCAtLWR1bXBpbmc9dW5leGVjCgotLS0KIGNvbmZpZ3VyZS5hYyAgICAgICAgICAgICAgICB8ICAg MiArLQogbGliL01ha2VmaWxlLmluICAgICAgICAgICAgIHwgICAyICstCiBsaWIvZ2xfb3BlbnNz bC5oICAgICAgICAgICAgfCAxMTYgKysrKysrKysrKysrKysrCiBsaWIvZ251bGliLm1rLmluICAg ICAgICAgICAgfCAgIDQgKy0KIGxpc3AvZW1hY3MtbGlzcC9ieXRlY29tcC5lbCB8ICAgMiArLQog bTQvZmNudGwtby5tNCAgICAgICAgICAgICAgIHwgMTQwICsrKysrKysrKysrKysrKysrKwogbTQv Z2wtb3BlbnNzbC5tNCAgICAgICAgICAgIHwgIDY2ICsrKysrKysrKwogbTQvZ251bGliLWNhY2hl Lm00ICAgICAgICAgIHwgMjgyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog bTQvZ251bGliLWNvbXAubTQgICAgICAgICAgIHwgIDIzICsrLQogbTQvZ251bGliLXRvb2wubTQg ICAgICAgICAgIHwgIDU3ICsrKysrKysrCiBtNC9tYW55d2FybmluZ3MtYysrLm00ICAgICAgfCAy NDMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogbTQvd2Fybi1vbi11c2UubTQgICAg ICAgICAgIHwgIDQ5ICsrKysrKysKIG00L3dpbnRfdC5tNCAgICAgICAgICAgICAgICB8ICA1NyAr KysrKysrKwogc3JjL3BkdW1wZXIuYyAgICAgICAgICAgICAgIHwgICA2ICstCiAxNCBmaWxlcyBj aGFuZ2VkLCAxMDM3IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IGxpYi9nbF9vcGVuc3NsLmgKIGNyZWF0ZSBtb2RlIDEwMDY0NCBtNC9mY250bC1vLm00 CiBjcmVhdGUgbW9kZSAxMDA2NDQgbTQvZ2wtb3BlbnNzbC5tNAogY3JlYXRlIG1vZGUgMTAwNjQ0 IG00L2dudWxpYi1jYWNoZS5tNAogY3JlYXRlIG1vZGUgMTAwNjQ0IG00L2dudWxpYi10b29sLm00 CiBjcmVhdGUgbW9kZSAxMDA2NDQgbTQvbWFueXdhcm5pbmdzLWMrKy5tNAogY3JlYXRlIG1vZGUg MTAwNjQ0IG00L3dhcm4tb24tdXNlLm00CiBjcmVhdGUgbW9kZSAxMDA2NDQgbTQvd2ludF90Lm00 CgpkaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIvY29uZmlndXJlLmFjCmluZGV4IDExYTA2YTM5 YmVlM2YuLjgzNTMwN2FjNDc3ZGMgMTAwNjQ0Ci0tLSBhL2NvbmZpZ3VyZS5hYworKysgYi9jb25m aWd1cmUuYWMKQEAgLTIyODgsNyArMjI4OCw3IEBAIEFDX0RFRlVOCiBjYXNlICIkb3BzeXMiIGlu CiAgICMjIGRhcndpbiBsZCBpbnNpc3RzIG9uIHRoZSB1c2Ugb2YgbWFsbG9jIHJvdXRpbmVzIGlu IHRoZSBTeXN0ZW0gZnJhbWV3b3JrLgogICBkYXJ3aW4gfCBtaW5ndzMyIHwgbmFjbCB8IHNvbGFy aXMpIDs7Ci0gIGN5Z3dpbiB8IHFueG50byB8IGZyZWVic2QpCisgIGN5Z3dpbiB8IHFueG50byB8 IGZyZWVic2QgfCBnbnUtbGludXggKQogCSAgaHlicmlkX21hbGxvYz15ZXMKICAgICAgICAgICBz eXN0ZW1fbWFsbG9jPSA7OwogICAqKSB0ZXN0ICIkYWNfY3ZfZnVuY19zYnJrIiA9IHllcyAmJiBz eXN0ZW1fbWFsbG9jPSRlbWFjc19jdl9zYW5pdGl6ZV9hZGRyZXNzOzsKZGlmZiAtLWdpdCBhL2xp Yi9NYWtlZmlsZS5pbiBiL2xpYi9NYWtlZmlsZS5pbgppbmRleCA5MWE2YjVmZjNmMTZlLi5hMzAy MTE1MGFlYzFiIDEwMDY0NAotLS0gYS9saWIvTWFrZWZpbGUuaW4KKysrIGIvbGliL01ha2VmaWxl LmluCkBAIC04Nyw3ICs4Nyw3IEBAIG5vdF9lbWFjc19PQkpFQ1RTID0KIGxpYmdudV9hX09CSkVD VFMgPSBmaW5nZXJwcmludC5vICQoZ2xfTElCT0JKUykgXAogICAkKHBhdHN1YnN0ICUuYywlLm8s JChmaWx0ZXIgJS5jLCQobGliZ251X2FfU09VUkNFUykpKQogZm9yX2VtYWNzX09CSkVDVFMgPSAk KGZpbHRlci1vdXQgJChub3RfZW1hY3NfT0JKRUNUUyksJChsaWJnbnVfYV9PQkpFQ1RTKSkKLWxp YmVnbnVfYV9PQkpFQ1RTID0gJChwYXRzdWJzdCAlLm8sZS0lLm8sJChmb3JfZW1hY3NfT0JKRUNU UykpCitsaWJlZ251X2FfT0JKRUNUUyA9ICQocGF0c3Vic3QgZS1tYWxsb2MvJSxtYWxsb2MvZS0l LCQocGF0c3Vic3QgJS5vLGUtJS5vLCQoZm9yX2VtYWNzX09CSkVDVFMpKSkKIAogJChsaWJlZ251 X2FfT0JKRUNUUykgJChsaWJnbnVfYV9PQkpFQ1RTKTogJChCVUlMVF9TT1VSQ0VTKQogCmRpZmYg LS1naXQgYS9saWIvZ2xfb3BlbnNzbC5oIGIvbGliL2dsX29wZW5zc2wuaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi42YzliNzBhNTg3Nzc3Ci0tLSAvZGV2L251bGwK KysrIGIvbGliL2dsX29wZW5zc2wuaApAQCAtMCwwICsxLDExNiBAQAorLyogV3JhcCBvcGVuc3Ns IGNyeXB0byBoYXNoIHJvdXRpbmVzIGluIGdudWxpYiBpbnRlcmZhY2UuICAtKi0gY29kaW5nOiB1 dGYtOCAtKi0KKworICAgQ29weXJpZ2h0IChDKSAyMDEzLTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3Vu ZGF0aW9uLCBJbmMuCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgICBpdCB1bmRlciB0aGUgdGVybXMgb2Yg dGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICAgdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisKKyAgIFRoaXMgcHJv Z3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAor ICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2Fy cmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg UFVSUE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdO VSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElm IG5vdCwgc2VlIDxodHRwczovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uICAqLworCisvKiBXcml0 dGVuIGJ5IFDDoWRyYWlnIEJyYWR5ICovCisKKyNpZm5kZWYgR0xfT1BFTlNTTF9OQU1FCisjIGVy cm9yICJQbGVhc2UgZGVmaW5lIEdMX09QRU5TU0xfTkFNRSB0byAxLDUsMjU2IGV0Yy4iCisjZW5k aWYKKworI2lmbmRlZiBfR0xfSU5MSU5FX0hFQURFUl9CRUdJTgorIyBlcnJvciAiUGxlYXNlIGlu Y2x1ZGUgY29uZmlnLmggZmlyc3QuIgorI2VuZGlmCitfR0xfSU5MSU5FX0hFQURFUl9CRUdJTgor I2lmbmRlZiBHTF9PUEVOU1NMX0lOTElORQorIyBkZWZpbmUgR0xfT1BFTlNTTF9JTkxJTkUgX0dM X0lOTElORQorI2VuZGlmCisKKy8qIENvbmNhdGVuYXRlIHR3byBwcmVwcm9jZXNzb3IgdG9rZW5z LiAgKi8KKyNkZWZpbmUgX0dMQ1JZUFRPX0NPTkNBVF8ocHJlZml4LCBzdWZmaXgpIHByZWZpeCMj c3VmZml4CisjZGVmaW5lIF9HTENSWVBUT19DT05DQVQocHJlZml4LCBzdWZmaXgpIF9HTENSWVBU T19DT05DQVRfIChwcmVmaXgsIHN1ZmZpeCkKKworI2lmIEdMX09QRU5TU0xfTkFNRSA9PSA1Cisj IGRlZmluZSBPUEVOU1NMX0FMRyBtZDUKKyNlbHNlCisjIGRlZmluZSBPUEVOU1NMX0FMRyBfR0xD UllQVE9fQ09OQ0FUIChzaGEsIEdMX09QRU5TU0xfTkFNRSkKKyNlbmRpZgorCisvKiBDb250ZXh0 IHR5cGUgbWFwcGluZ3MuICAqLworI2lmIEJBU0VfT1BFTlNTTF9UWVBFICE9IEdMX09QRU5TU0xf TkFNRQorIyB1bmRlZiBCQVNFX09QRU5TU0xfVFlQRQorIyBpZiBHTF9PUEVOU1NMX05BTUUgPT0g MjI0CisjICBkZWZpbmUgQkFTRV9PUEVOU1NMX1RZUEUgMjU2CisjIGVsaWYgR0xfT1BFTlNTTF9O QU1FID09IDM4NAorIyAgZGVmaW5lIEJBU0VfT1BFTlNTTF9UWVBFIDUxMgorIyBlbmRpZgorIyBk ZWZpbmUgbWQ1X0NUWCBNRDVfQ1RYCisjIGRlZmluZSBzaGExX0NUWCBTSEFfQ1RYCisjIGRlZmlu ZSBzaGEyMjRfQ1RYIFNIQTI1Nl9DVFgKKyMgZGVmaW5lIHNoYTIyNF9jdHggc2hhMjU2X2N0eAor IyBkZWZpbmUgc2hhMjU2X0NUWCBTSEEyNTZfQ1RYCisjIGRlZmluZSBzaGEzODRfQ1RYIFNIQTUx Ml9DVFgKKyMgZGVmaW5lIHNoYTM4NF9jdHggc2hhNTEyX2N0eAorIyBkZWZpbmUgc2hhNTEyX0NU WCBTSEE1MTJfQ1RYCisjIHVuZGVmIF9nbF9DVFgKKyMgdW5kZWYgX2dsX2N0eAorIyBkZWZpbmUg X2dsX0NUWCBfR0xDUllQVE9fQ09OQ0FUIChPUEVOU1NMX0FMRywgX0NUWCkgLyogb3BlbnNzbCB0 eXBlLiAgKi8KKyMgZGVmaW5lIF9nbF9jdHggX0dMQ1JZUFRPX0NPTkNBVCAoT1BFTlNTTF9BTEcs IF9jdHgpIC8qIGdudWxpYiB0eXBlLiAgKi8KKworc3RydWN0IF9nbF9jdHggeyBfZ2xfQ1RYIENU WDsgfTsKKyNlbmRpZgorCisvKiBGdW5jdGlvbiBuYW1lIG1hcHBpbmdzLiAgKi8KKyNkZWZpbmUg bWQ1X3ByZWZpeCBNRDUKKyNkZWZpbmUgc2hhMV9wcmVmaXggU0hBMQorI2RlZmluZSBzaGEyMjRf cHJlZml4IFNIQTIyNAorI2RlZmluZSBzaGEyNTZfcHJlZml4IFNIQTI1NgorI2RlZmluZSBzaGEz ODRfcHJlZml4IFNIQTM4NAorI2RlZmluZSBzaGE1MTJfcHJlZml4IFNIQTUxMgorI2RlZmluZSBf R0xDUllQVE9fUFJFRklYIF9HTENSWVBUT19DT05DQVQgKE9QRU5TU0xfQUxHLCBfcHJlZml4KQor I2RlZmluZSBPUEVOU1NMX0ZOKHN1ZmZpeCkgX0dMQ1JZUFRPX0NPTkNBVCAoX0dMQ1JZUFRPX1BS RUZJWCwgc3VmZml4KQorI2RlZmluZSBHTF9DUllQVE9fRk4oc3VmZml4KSBfR0xDUllQVE9fQ09O Q0FUIChPUEVOU1NMX0FMRywgc3VmZml4KQorCitHTF9PUEVOU1NMX0lOTElORSB2b2lkCitHTF9D UllQVE9fRk4gKF9pbml0X2N0eCkgKHN0cnVjdCBfZ2xfY3R4ICpjdHgpCit7ICh2b2lkKSBPUEVO U1NMX0ZOIChfSW5pdCkgKChfZ2xfQ1RYICopIGN0eCk7IH0KKworLyogVGhlc2Ugd2VyZSBuZXZl ciBleHBvc2VkIGJ5IGdudWxpYi4gICovCisjaWYgISAoR0xfT1BFTlNTTF9OQU1FID09IDIyNCB8 fCBHTF9PUEVOU1NMX05BTUUgPT0gMzg0KQorR0xfT1BFTlNTTF9JTkxJTkUgdm9pZAorR0xfQ1JZ UFRPX0ZOIChfcHJvY2Vzc19ieXRlcykgKGNvbnN0IHZvaWQgKmJ1Ziwgc2l6ZV90IGxlbiwgc3Ry dWN0IF9nbF9jdHggKmN0eCkKK3sgT1BFTlNTTF9GTiAoX1VwZGF0ZSkgKChfZ2xfQ1RYICopIGN0 eCwgYnVmLCBsZW4pOyB9CisKK0dMX09QRU5TU0xfSU5MSU5FIHZvaWQKK0dMX0NSWVBUT19GTiAo X3Byb2Nlc3NfYmxvY2spIChjb25zdCB2b2lkICpidWYsIHNpemVfdCBsZW4sIHN0cnVjdCBfZ2xf Y3R4ICpjdHgpCit7IEdMX0NSWVBUT19GTiAoX3Byb2Nlc3NfYnl0ZXMpIChidWYsIGxlbiwgY3R4 KTsgfQorI2VuZGlmCisKK0dMX09QRU5TU0xfSU5MSU5FIHZvaWQgKgorR0xfQ1JZUFRPX0ZOIChf ZmluaXNoX2N0eCkgKHN0cnVjdCBfZ2xfY3R4ICpjdHgsIHZvaWQgKnJlc3RyaWN0IHJlcykKK3sg T1BFTlNTTF9GTiAoX0ZpbmFsKSAoKHVuc2lnbmVkIGNoYXIgKikgcmVzLCAoX2dsX0NUWCAqKSBj dHgpOyByZXR1cm4gcmVzOyB9CisKK0dMX09QRU5TU0xfSU5MSU5FIHZvaWQgKgorR0xfQ1JZUFRP X0ZOIChfYnVmZmVyKSAoY29uc3QgY2hhciAqYnVmLCBzaXplX3QgbGVuLCB2b2lkICpyZXN0cmlj dCByZXMpCit7IHJldHVybiBPUEVOU1NMX0ZOICgpICgoY29uc3QgdW5zaWduZWQgY2hhciAqKSBi dWYsIGxlbiwgKHVuc2lnbmVkIGNoYXIgKikgcmVzKTsgfQorCitHTF9PUEVOU1NMX0lOTElORSB2 b2lkICoKK0dMX0NSWVBUT19GTiAoX3JlYWRfY3R4KSAoY29uc3Qgc3RydWN0IF9nbF9jdHggKmN0 eCwgdm9pZCAqcmVzdHJpY3QgcmVzKQoreworICAvKiBBc3N1bWUgYW55IHVucHJvY2Vzc2VkIGJ5 dGVzIGluIGN0eCBhcmUgbm90IHRvIGJlIGlnbm9yZWQuICAqLworICBfZ2xfQ1RYIHRtcF9jdHgg PSAqKF9nbF9DVFggKikgY3R4OworICBPUEVOU1NMX0ZOIChfRmluYWwpICgodW5zaWduZWQgY2hh ciAqKSByZXMsICZ0bXBfY3R4KTsKKyAgcmV0dXJuIHJlczsKK30KKworLyogVW5kZWYgc28gd2Ug Y2FuIGluY2x1ZGUgbXVsdGlwbGUgdGltZXMuICAqLworI3VuZGVmIEdMX0NSWVBUT19GTgorI3Vu ZGVmIE9QRU5TU0xfRk4KKyN1bmRlZiBfR0xDUllQVE9fUFJFRklYCisjdW5kZWYgT1BFTlNTTF9B TEcKKyN1bmRlZiBHTF9PUEVOU1NMX05BTUUKKworX0dMX0lOTElORV9IRUFERVJfRU5ECmRpZmYg LS1naXQgYS9saWIvZ251bGliLm1rLmluIGIvbGliL2dudWxpYi5tay5pbgppbmRleCAwNzczNmY5 YjhiYzU1Li4yYjY2ZGQ0N2RhYTJhIDEwMDY0NAotLS0gYS9saWIvZ251bGliLm1rLmluCisrKyBi L2xpYi9nbnVsaWIubWsuaW4KQEAgLTEwMyw3ICsxMDMsNiBAQAogIyAgZmlsZXZlcmNtcCBcCiAj ICBmbGV4bWVtYmVyIFwKICMgIGZwaWVlZSBcCi0jICBmcmVlLXBvc2l4IFwKICMgIGZzdGF0YXQg XAogIyAgZnN1c2FnZSBcCiAjICBmc3luYyBcCkBAIC0xMjIxLDYgKzEyMjAsNyBAQCBwZGZkaXIg PSBAcGRmZGlyQAogcHJlZml4ID0gQHByZWZpeEAKIHByb2dyYW1fdHJhbnNmb3JtX25hbWUgPSBA cHJvZ3JhbV90cmFuc2Zvcm1fbmFtZUAKIHBzZGlyID0gQHBzZGlyQAorcnVuc3RhdGVkaXIgPSBA cnVuc3RhdGVkaXJACiBzYmluZGlyID0gQHNiaW5kaXJACiBzaGFyZWRzdGF0ZWRpciA9IEBzaGFy ZWRzdGF0ZWRpckAKIHNyY2RpciA9IEBzcmNkaXJACkBAIC0xODQwLDcgKzE4NDAsOSBAQCBlbmRp ZgogIyMgYmVnaW4gZ251bGliIG1vZHVsZSBmcmVlLXBvc2l4CiBpZmVxICgsJChPTUlUX0dOVUxJ Ql9NT0RVTEVfZnJlZS1wb3NpeCkpCiAKK2lmbmVxICgsJChnbF9HTlVMSUJfRU5BQkxFRF9lZjA3 ZGM0YjMwNzdjMTFlYTljZWY1ODZkYjRlNTk1NSkpCiAKK2VuZGlmCiBFWFRSQV9ESVNUICs9IGZy ZWUuYwogCiBFWFRSQV9saWJnbnVfYV9TT1VSQ0VTICs9IGZyZWUuYwpkaWZmIC0tZ2l0IGEvbGlz cC9lbWFjcy1saXNwL2J5dGVjb21wLmVsIGIvbGlzcC9lbWFjcy1saXNwL2J5dGVjb21wLmVsCmlu ZGV4IDRlMDBmZTYxMjFlODIuLmE3M2JjZTYxZDI0OGUgMTAwNjQ0Ci0tLSBhL2xpc3AvZW1hY3Mt bGlzcC9ieXRlY29tcC5lbAorKysgYi9saXNwL2VtYWNzLWxpc3AvYnl0ZWNvbXAuZWwKQEAgLTUy MjUsNyArNTIyNSw3IEBAIGJ5dGUtY29tcGlsZS1yZWZyZXNoLXByZWxvYWRlZAogICAiUmVsb2Fk IGFueSBMaXNwIGZpbGUgdGhhdCB3YXMgY2hhbmdlZCBzaW5jZSBFbWFjcyB3YXMgZHVtcGVkLgog VXNlIHdpdGggY2F1dGlvbi4iCiAgIChsZXQqICgoYXJndjAgKGNhciBjb21tYW5kLWxpbmUtYXJn cykpCi0gICAgICAgICAoZW1hY3MtZmlsZSAob3IgKGNkciAobnRoIDIgKHBkdW1wZXItc3RhdHMp KSkKKyAgICAgICAgIChlbWFjcy1maWxlIChvciAoaWdub3JlLWVycm9ycyAoY2RyIChudGggMiAo cGR1bXBlci1zdGF0cykpKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAoZXhlY3V0YWJsZS1m aW5kIGFyZ3YwKSkpKQogICAgIChpZiAobm90IChhbmQgZW1hY3MtZmlsZSAoZmlsZS1leGlzdHMt cCBlbWFjcy1maWxlKSkpCiAgICAgICAgIChtZXNzYWdlICJDYW4ndCBmaW5kICVzIHRvIHJlZnJl c2ggcHJlbG9hZGVkIExpc3AgZmlsZXMiIGFyZ3YwKQpkaWZmIC0tZ2l0IGEvbTQvZmNudGwtby5t NCBiL200L2ZjbnRsLW8ubTQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MC4uN2M0NTlhZDEzYTcwOAotLS0gL2Rldi9udWxsCisrKyBiL200L2ZjbnRsLW8ubTQKQEAgLTAs MCArMSwxNDAgQEAKKyMgZmNudGwtby5tNCBzZXJpYWwgNworZG5sIENvcHlyaWdodCAoQykgMjAw NiwgMjAwOS0yMDIxIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmls ZSBpcyBmcmVlIHNvZnR3YXJlOyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2 ZXMgdW5saW1pdGVkIHBlcm1pc3Npb24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2Ru bCB3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBp cyBwcmVzZXJ2ZWQuCisKK2RubCBXcml0dGVuIGJ5IFBhdWwgRWdnZXJ0LgorCitBQ19QUkVSRVEo WzIuNjBdKQorCisjIFRlc3Qgd2hldGhlciB0aGUgZmxhZ3MgT19OT0FUSU1FIGFuZCBPX05PRk9M TE9XIGFjdHVhbGx5IHdvcmsuCisjIERlZmluZSBIQVZFX1dPUktJTkdfT19OT0FUSU1FIHRvIDEg aWYgT19OT0FUSU1FIHdvcmtzLCBvciB0byAwIG90aGVyd2lzZS4KKyMgRGVmaW5lIEhBVkVfV09S S0lOR19PX05PRk9MTE9XIHRvIDEgaWYgT19OT0ZPTExPVyB3b3Jrcywgb3IgdG8gMCBvdGhlcndp c2UuCitBQ19ERUZVTihbZ2xfRkNOVExfT19GTEFHU10sCitbCisgIGRubCBQZXJzdWFkZSBnbGli YyA8ZmNudGwuaD4gdG8gZGVmaW5lIE9fTk9BVElNRSBhbmQgT19OT0ZPTExPVy4KKyAgQUNfUkVR VUlSRShbQUNfVVNFX1NZU1RFTV9FWFRFTlNJT05TXSkKKworICBBQ19SRVFVSVJFKFtBQ19DQU5P TklDQUxfSE9TVF0pIGRubCBmb3IgY3Jvc3MtY29tcGlsZXMKKyAgQUNfQ0hFQ0tfSEVBREVSU19P TkNFKFt1bmlzdGQuaF0pCisgIEFDX0NIRUNLX0ZVTkNTX09OQ0UoW3N5bWxpbmtdKQorICBBQ19D QUNIRV9DSEVDSyhbZm9yIHdvcmtpbmcgZmNudGwuaF0sIFtnbF9jdl9oZWFkZXJfd29ya2luZ19m Y250bF9oXSwKKyAgICBbQUNfUlVOX0lGRUxTRSgKKyAgICAgICBbQUNfTEFOR19QUk9HUkFNKAor ICAgICAgICAgIFtbI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorICAgICAgICAgICAjaW5jbHVkZSA8 c3lzL3N0YXQuaD4KKyAgICAgICAgICAgI2lmIEhBVkVfVU5JU1REX0gKKyAgICAgICAgICAgIyBp bmNsdWRlIDx1bmlzdGQuaD4KKyAgICAgICAgICAgI2Vsc2UgLyogb24gV2luZG93cyB3aXRoIE1T VkMgKi8KKyAgICAgICAgICAgIyBpbmNsdWRlIDxpby5oPgorICAgICAgICAgICAjIGluY2x1ZGUg PHN0ZGxpYi5oPgorICAgICAgICAgICAjIGRlZmluZWQgc2xlZXAobikgX3NsZWVwICgobikgKiAx MDAwKQorICAgICAgICAgICAjZW5kaWYKKyAgICAgICAgICAgI2luY2x1ZGUgPGZjbnRsLmg+Cisg ICAgICAgICAgIF1HTF9NREFfREVGSU5FU1sKKyAgICAgICAgICAgI2lmbmRlZiBPX05PQVRJTUUK KyAgICAgICAgICAgICNkZWZpbmUgT19OT0FUSU1FIDAKKyAgICAgICAgICAgI2VuZGlmCisgICAg ICAgICAgICNpZm5kZWYgT19OT0ZPTExPVworICAgICAgICAgICAgI2RlZmluZSBPX05PRk9MTE9X IDAKKyAgICAgICAgICAgI2VuZGlmCisgICAgICAgICAgIHN0YXRpYyBpbnQgY29uc3QgY29uc3Rh bnRzW10gPQorICAgICAgICAgICAgeworICAgICAgICAgICAgICBPX0NSRUFULCBPX0VYQ0wsIE9f Tk9DVFRZLCBPX1RSVU5DLCBPX0FQUEVORCwKKyAgICAgICAgICAgICAgT19OT05CTE9DSywgT19T WU5DLCBPX0FDQ01PREUsIE9fUkRPTkxZLCBPX1JEV1IsIE9fV1JPTkxZCisgICAgICAgICAgICB9 OworICAgICAgICAgIF1dLAorICAgICAgICAgIFtbCisgICAgICAgICAgICBpbnQgcmVzdWx0ID0g IWNvbnN0YW50czsKKyAgICAgICAgICAgICNpZiBIQVZFX1NZTUxJTksKKyAgICAgICAgICAgIHsK KyAgICAgICAgICAgICAgc3RhdGljIGNoYXIgY29uc3Qgc3ltW10gPSAiY29uZnRlc3Quc3ltIjsK KyAgICAgICAgICAgICAgaWYgKHN5bWxpbmsgKCIvZGV2L251bGwiLCBzeW0pICE9IDApCisgICAg ICAgICAgICAgICAgcmVzdWx0IHw9IDI7CisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg ICAgICB7CisgICAgICAgICAgICAgICAgICBpbnQgZmQgPSBvcGVuIChzeW0sIE9fV1JPTkxZIHwg T19OT0ZPTExPVyB8IE9fQ1JFQVQsIDApOworICAgICAgICAgICAgICAgICAgaWYgKGZkID49IDAp CisgICAgICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgICBjbG9zZSAoZmQp OworICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCB8PSA0OworICAgICAgICAgICAgICAgICAg ICB9CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICBpZiAodW5saW5rIChzeW0pICE9 IDAgfHwgc3ltbGluayAoIi4iLCBzeW0pICE9IDApCisgICAgICAgICAgICAgICAgcmVzdWx0IHw9 IDI7CisgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAg ICAgICBpbnQgZmQgPSBvcGVuIChzeW0sIE9fUkRPTkxZIHwgT19OT0ZPTExPVyk7CisgICAgICAg ICAgICAgICAgICBpZiAoZmQgPj0gMCkKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAg ICAgICAgICAgICAgIGNsb3NlIChmZCk7CisgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0IHw9 IDQ7CisgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAg ICAgIHVubGluayAoc3ltKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgICNlbmRpZgorICAg ICAgICAgICAgeworICAgICAgICAgICAgICBzdGF0aWMgY2hhciBjb25zdCBmaWxlW10gPSAiY29u ZmRlZnMuaCI7CisgICAgICAgICAgICAgIGludCBmZCA9IG9wZW4gKGZpbGUsIE9fUkRPTkxZIHwg T19OT0FUSU1FKTsKKyAgICAgICAgICAgICAgaWYgKGZkIDwgMCkKKyAgICAgICAgICAgICAgICBy ZXN1bHQgfD0gODsKKyAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAgICAg ICAgICAgICAgICAgIHN0cnVjdCBzdGF0IHN0MDsKKyAgICAgICAgICAgICAgICAgIGlmIChmc3Rh dCAoZmQsICZzdDApICE9IDApCisgICAgICAgICAgICAgICAgICAgIHJlc3VsdCB8PSAxNjsKKyAg ICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgeworICAgICAgICAgICAg ICAgICAgICAgIGNoYXIgYzsKKyAgICAgICAgICAgICAgICAgICAgICBzbGVlcCAoMSk7CisgICAg ICAgICAgICAgICAgICAgICAgaWYgKHJlYWQgKGZkLCAmYywgMSkgIT0gMSkKKyAgICAgICAgICAg ICAgICAgICAgICAgIHJlc3VsdCB8PSAyNDsKKyAgICAgICAgICAgICAgICAgICAgICBlbHNlCisg ICAgICAgICAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChj bG9zZSAoZmQpICE9IDApCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0IHw9IDMy OworICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgeworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHN0YXQgc3QxOwor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0YXQgKGZpbGUsICZzdDEpICE9IDAp CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCB8PSA0MDsKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaWYgKHN0MC5zdF9hdGltZSAhPSBzdDEuc3RfYXRpbWUpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcmVzdWx0IHw9IDY0OworICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0KKyAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfQorICAg ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7 XV0pXSwKKyAgICAgICBbZ2xfY3ZfaGVhZGVyX3dvcmtpbmdfZmNudGxfaD15ZXNdLAorICAgICAg IFtjYXNlICQ/IGluICMoCisgICAgICAgIDQpIGdsX2N2X2hlYWRlcl93b3JraW5nX2ZjbnRsX2g9 J25vIChiYWQgT19OT0ZPTExPVyknOzsgIygKKyAgICAgICAgNjQpIGdsX2N2X2hlYWRlcl93b3Jr aW5nX2ZjbnRsX2g9J25vIChiYWQgT19OT0FUSU1FKSc7OyAjKAorICAgICAgICA2OCkgZ2xfY3Zf aGVhZGVyX3dvcmtpbmdfZmNudGxfaD0nbm8gKGJhZCBPX05PQVRJTUUsIE9fTk9GT0xMT1cpJzs7 ICMoCisgICAgICAgICAqKSBnbF9jdl9oZWFkZXJfd29ya2luZ19mY250bF9oPSdubyc7OworICAg ICAgICBlc2FjXSwKKyAgICAgICBbY2FzZSAiJGhvc3Rfb3MiIGluCisgICAgICAgICAgICAgICAg ICAjIEd1ZXNzICdubycgb24gbmF0aXZlIFdpbmRvd3MuCisgICAgICAgICAgbWluZ3cqKSBnbF9j dl9oZWFkZXJfd29ya2luZ19mY250bF9oPSdubycgOzsKKyAgICAgICAgICAqKSAgICAgIGdsX2N2 X2hlYWRlcl93b3JraW5nX2ZjbnRsX2g9Y3Jvc3MtY29tcGlsaW5nIDs7CisgICAgICAgIGVzYWMK KyAgICAgICBdKQorICAgIF0pCisKKyAgY2FzZSAkZ2xfY3ZfaGVhZGVyX3dvcmtpbmdfZmNudGxf aCBpbiAjKAorICAqT19OT0FUSU1FKiB8IG5vIHwgY3Jvc3MtY29tcGlsaW5nKSBhY192YWw9MDs7 ICMoCisgICopIGFjX3ZhbD0xOzsKKyAgZXNhYworICBBQ19ERUZJTkVfVU5RVU9URUQoW0hBVkVf V09SS0lOR19PX05PQVRJTUVdLCBbJGFjX3ZhbF0sCisgICAgW0RlZmluZSB0byAxIGlmIE9fTk9B VElNRSB3b3Jrcy5dKQorCisgIGNhc2UgJGdsX2N2X2hlYWRlcl93b3JraW5nX2ZjbnRsX2ggaW4g IygKKyAgKk9fTk9GT0xMT1cqIHwgbm8gfCBjcm9zcy1jb21waWxpbmcpIGFjX3ZhbD0wOzsgIygK KyAgKikgYWNfdmFsPTE7OworICBlc2FjCisgIEFDX0RFRklORV9VTlFVT1RFRChbSEFWRV9XT1JL SU5HX09fTk9GT0xMT1ddLCBbJGFjX3ZhbF0sCisgICAgW0RlZmluZSB0byAxIGlmIE9fTk9GT0xM T1cgd29ya3MuXSkKK10pCmRpZmYgLS1naXQgYS9tNC9nbC1vcGVuc3NsLm00IGIvbTQvZ2wtb3Bl bnNzbC5tNApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi45NmE3MjY4 YTI3OTY2Ci0tLSAvZGV2L251bGwKKysrIGIvbTQvZ2wtb3BlbnNzbC5tNApAQCAtMCwwICsxLDY2 IEBACisjIGdsLW9wZW5zc2wubTQgc2VyaWFsIDUKK2RubCBDb3B5cmlnaHQgKEMpIDIwMTMtMjAy MSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KK2RubCBUaGlzIGZpbGUgaXMgZnJlZSBz b2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbgorZG5sIGdpdmVzIHVubGltaXRl ZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29yIGRpc3RyaWJ1dGUgaXQsCitkbmwgd2l0aCBvciB3 aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxvbmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVk LgorCitBQ19ERUZVTihbZ2xfU0VUX0NSWVBUT19DSEVDS19ERUZBVUxUXSwKK1sKKyAgbTRfZGVm aW5lKFtnbF9DUllQVE9fQ0hFQ0tfREVGQVVMVF0sIFskMV0pCitdKQorZ2xfU0VUX0NSWVBUT19D SEVDS19ERUZBVUxUKFtub10pCisKK0FDX0RFRlVOKFtnbF9DUllQVE9fQ0hFQ0tdLAorWworICBk bmwgZ251bGliIHVzZXJzIHNldCB0aGlzIGJlZm9yZSBnbF9JTklUIHdpdGggZ2xfU0VUX0NSWVBU T19DSEVDS19ERUZBVUxUKCkKKyAgbTRfZGl2ZXJ0X29uY2UoW0RFRkFVTFRTXSwgW3dpdGhfb3Bl bnNzbF9kZWZhdWx0PSdnbF9DUllQVE9fQ0hFQ0tfREVGQVVMVCddKQorCisgIGRubCBPbmx5IGNs ZWFyIG9uY2UsIHNvIGNyeXB0byByb3V0aW5lcyBjYW4gYmUgY2hlY2tlZCBmb3IgaW5kaXZpZHVh bGx5CisgIG00X2RpdmVydF9vbmNlKFtERUZBVUxUU10sIFtMSUJfQ1JZUFRPPV0pCisKKyAgQUNf QVJHX1dJVEgoW29wZW5zc2xdLAorICAgIFtBU19IRUxQX1NUUklORyhbLS13aXRoLW9wZW5zc2xd LAorICAgICAgW3VzZSBsaWJjcnlwdG8gaGFzaCByb3V0aW5lcy4gVmFsaWQgQVJHcyBhcmU6Cisg ICAgICAgJ3llcycsICdubycsCisgICAgICAgJ2F1dG8nID0+IHVzZSBpZiBhbnkgdmVyc2lvbiBh dmFpbGFibGUsCisgICAgICAgJ2F1dG8tZ3BsLWNvbXBhdCcgPT4gdXNlIGlmIGdwbCBjb21wYXRp YmxlIHZlcnNpb24gYXZhaWxhYmxlLAorICAgICAgICdvcHRpb25hbCcgPT4gdXNlIGlmIGF2YWls YWJsZSBhbmQgd2FybiBpZiBub3QgYXZhaWxhYmxlOworICAgICAgIGRlZmF1bHQgaXMgJ11nbF9D UllQVE9fQ0hFQ0tfREVGQVVMVFsnLgorICAgICAgIE5vdGUgYWxzbyAtLXdpdGgtbGludXgtY3J5 cHRvLCB3aGljaCB3aWxsIGVuYWJsZQorICAgICAgIHVzZSBvZiBrZXJuZWwgY3J5cHRvIHJvdXRp bmVzLCB3aGljaCBoYXZlIHByZWNlZGVuY2VdKV0sCisgICAgW10sCisgICAgW3dpdGhfb3BlbnNz bD0kd2l0aF9vcGVuc3NsX2RlZmF1bHRdKQorCisgIEFDX1NVQlNUKFtMSUJfQ1JZUFRPXSkKKyAg aWYgdGVzdCAieCR3aXRoX29wZW5zc2wiICE9IHhubzsgdGhlbgorICAgIGlmIHRlc3QgIngkd2l0 aF9vcGVuc3NsIiA9IHhhdXRvLWdwbC1jb21wYXQ7IHRoZW4KKyAgICAgIEFDX0NBQ0hFX0NIRUNL KFt3aGV0aGVyIG9wZW5zc2wgaXMgR1BMIGNvbXBhdGlibGVdLAorICAgICAgICAgICAgICAgICAg ICAgW2dsX2N2X29wZW5zc2xfZ3BsX2NvbXBhdF0sCisgICAgICAgIFtBQ19DT01QSUxFX0lGRUxT RSgKKyAgICAgICAgICAgW0FDX0xBTkdfUFJPR1JBTShbWworICAgICAgICAgICAgICAgICNpbmNs dWRlIDxvcGVuc3NsL29wZW5zc2x2Lmg+CisgICAgICAgICAgICAgICAgI2lmIE9QRU5TU0xfVkVS U0lPTl9NQUpPUiA8IDMKKyAgICAgICAgICAgICAgICAgICNlcnJvciAib3BlbnNzbCA+PSB2ZXJz aW9uIDMgbm90IGZvdW5kIgorICAgICAgICAgICAgICAgICNlbmRpZgorICAgICAgICAgICAgICBd XSldLAorICAgICAgICAgICBbZ2xfY3Zfb3BlbnNzbF9ncGxfY29tcGF0PXllc10sCisgICAgICAg ICAgIFtnbF9jdl9vcGVuc3NsX2dwbF9jb21wYXQ9bm9dKV0pCisgICAgZmkKKyAgICBpZiB0ZXN0 ICJ4JHdpdGhfb3BlbnNzbCIgIT0geGF1dG8tZ3BsLWNvbXBhdCB8fAorICAgICAgIHRlc3QgIngk Z2xfY3Zfb3BlbnNzbF9ncGxfY29tcGF0IiA9IHh5ZXM7IHRoZW4KKyAgICAgIEFDX0NIRUNLX0xJ QihbY3J5cHRvXSwgWyQxXSwKKyAgICAgICAgW0FDX0NIRUNLX0hFQURFUlMoCisgICAgICAgICAg IG00X2lmKFskMV0sIFtNRDVdLCBbb3BlbnNzbC9tZDUuaF0sIFtvcGVuc3NsL3NoYS5oXSksCisg ICAgICAgICAgIFtMSUJfQ1JZUFRPPS1sY3J5cHRvCisgICAgICAgICAgICBBQ19ERUZJTkUoW0hB VkVfT1BFTlNTTF8kMV0sIFsxXSwKKyAgICAgICAgICAgICAgW0RlZmluZSB0byAxIGlmIGxpYmNy eXB0byBpcyB1c2VkIGZvciAkMS5dKV0pXSkKKyAgICBmaQorICAgIGlmIHRlc3QgIngkTElCX0NS WVBUTyIgPSB4OyB0aGVuCisgICAgICBpZiB0ZXN0ICJ4JHdpdGhfb3BlbnNzbCIgPSB4eWVzOyB0 aGVuCisgICAgICAgIEFDX01TR19FUlJPUihbb3BlbnNzbCBkZXZlbG9wbWVudCBsaWJyYXJ5IG5v dCBmb3VuZCBmb3IgJDFdKQorICAgICAgZWxpZiB0ZXN0ICJ4JHdpdGhfb3BlbnNzbCIgPSB4b3B0 aW9uYWw7IHRoZW4KKyAgICAgICAgQUNfTVNHX1dBUk4oW29wZW5zc2wgZGV2ZWxvcG1lbnQgbGli cmFyeSBub3QgZm91bmQgZm9yICQxXSkKKyAgICAgIGZpCisgICAgZmkKKyAgZmkKK10pCmRpZmYg LS1naXQgYS9tNC9nbnVsaWItY2FjaGUubTQgYi9tNC9nbnVsaWItY2FjaGUubTQKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uNzM3NWNhZTAwNmIyYQotLS0gL2Rldi9u dWxsCisrKyBiL200L2dudWxpYi1jYWNoZS5tNApAQCAtMCwwICsxLDI4MiBAQAorIyBDb3B5cmln aHQgKEMpIDIwMDItMjAyMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKyMKKyMgVGhp cyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBt b2RpZnkKKyMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0 aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKyMgKGF0IHlvdXIgb3B0aW9uKSBhbnkg bGF0ZXIgdmVyc2lvbi4KKyMKKyMgVGhpcyBmaWxlIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3Bl IHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisjIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0 aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisjIE1FUkNIQU5UQUJJTElUWSBvciBG SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyMgR05VIEdlbmVyYWwg UHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyMKKyMgWW91IHNob3VsZCBoYXZlIHJl Y2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyMgYWxvbmcg d2l0aCB0aGlzIGZpbGUuICBJZiBub3QsIHNlZSA8aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNl cy8+LgorIworIyBBcyBhIHNwZWNpYWwgZXhjZXB0aW9uIHRvIHRoZSBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSwKKyMgdGhpcyBmaWxlIG1heSBiZSBkaXN0cmlidXRlZCBhcyBwYXJ0IG9mIGEg cHJvZ3JhbSB0aGF0CisjIGNvbnRhaW5zIGEgY29uZmlndXJhdGlvbiBzY3JpcHQgZ2VuZXJhdGVk IGJ5IEF1dG9jb25mLCB1bmRlcgorIyB0aGUgc2FtZSBkaXN0cmlidXRpb24gdGVybXMgYXMgdGhl IHJlc3Qgb2YgdGhhdCBwcm9ncmFtLgorIworIyBHZW5lcmF0ZWQgYnkgZ251bGliLXRvb2wuCisj CisjIFRoaXMgZmlsZSByZXByZXNlbnRzIHRoZSBzcGVjaWZpY2F0aW9uIG9mIGhvdyBnbnVsaWIt dG9vbCBpcyB1c2VkLgorIyBJdCBhY3RzIGFzIGEgY2FjaGU6IEl0IGlzIHdyaXR0ZW4gYW5kIHJl YWQgYnkgZ251bGliLXRvb2wuCisjIEluIHByb2plY3RzIHRoYXQgdXNlIHZlcnNpb24gY29udHJv bCwgdGhpcyBmaWxlIGlzIG1lYW50IHRvIGJlIHB1dCB1bmRlcgorIyB2ZXJzaW9uIGNvbnRyb2ws IGxpa2UgdGhlIGNvbmZpZ3VyZS5hYyBhbmQgdmFyaW91cyBNYWtlZmlsZS5hbSBmaWxlcy4KKwor CisjIFNwZWNpZmljYXRpb24gaW4gdGhlIGZvcm0gb2YgYSBjb21tYW5kLWxpbmUgaW52b2NhdGlv bjoKKyMgZ251bGliLXRvb2wgLS1pbXBvcnQgXAorIyAgLS1saWI9bGliZ251IFwKKyMgIC0tc291 cmNlLWJhc2U9bGliIFwKKyMgIC0tbTQtYmFzZT1tNCBcCisjICAtLWRvYy1iYXNlPWRvYyBcCisj ICAtLXRlc3RzLWJhc2U9dGVzdHMgXAorIyAgLS1hdXgtZGlyPWJ1aWxkLWF1eCBcCisjICAtLWdu dS1tYWtlIFwKKyMgIC0tbWFrZWZpbGUtbmFtZT1nbnVsaWIubWsuaW4gXAorIyAgLS1jb25kaXRp b25hbC1kZXBlbmRlbmNpZXMgXAorIyAgLS1uby1saWJ0b29sIFwKKyMgIC0tbWFjcm8tcHJlZml4 PWdsIFwKKyMgIC0tbm8tdmMtZmlsZXMgXAorIyAgLS1hdm9pZD1idG93YyBcCisjICAtLWF2b2lk PWNsb3NlIFwKKyMgIC0tYXZvaWQ9ZHVwIFwKKyMgIC0tYXZvaWQ9ZmNoZGlyIFwKKyMgIC0tYXZv aWQ9ZnN0YXQgXAorIyAgLS1hdm9pZD1sYW5naW5mbyBcCisjICAtLWF2b2lkPWxvY2sgXAorIyAg LS1hdm9pZD1tYWxsb2MtcG9zaXggXAorIyAgLS1hdm9pZD1tYnJ0b3djIFwKKyMgIC0tYXZvaWQ9 bWJzaW5pdCBcCisjICAtLWF2b2lkPW1lbWNociBcCisjICAtLWF2b2lkPW1rZGlyIFwKKyMgIC0t YXZvaWQ9bXN2Yy1pbnZhbCBcCisjICAtLWF2b2lkPW1zdmMtbm90aHJvdyBcCisjICAtLWF2b2lk PW5sX2xhbmdpbmZvIFwKKyMgIC0tYXZvaWQ9b3BlbmF0LWRpZSBcCisjICAtLWF2b2lkPW9wZW5k aXIgXAorIyAgLS1hdm9pZD1wdGhyZWFkLWggXAorIyAgLS1hdm9pZD1yYWlzZSBcCisjICAtLWF2 b2lkPXNhdmUtY3dkIFwKKyMgIC0tYXZvaWQ9c2VsZWN0IFwKKyMgIC0tYXZvaWQ9c2V0ZW52IFwK KyMgIC0tYXZvaWQ9c2lncHJvY21hc2sgXAorIyAgLS1hdm9pZD1zdGF0IFwKKyMgIC0tYXZvaWQ9 c3RkYXJnIFwKKyMgIC0tYXZvaWQ9c3RkYm9vbCBcCisjICAtLWF2b2lkPXRocmVhZGxpYiBcCisj ICAtLWF2b2lkPXR6c2V0IFwKKyMgIC0tYXZvaWQ9dW5zZXRlbnYgXAorIyAgLS1hdm9pZD11dGlt ZSBcCisjICAtLWF2b2lkPXV0aW1lLWggXAorIyAgLS1hdm9pZD13Y2hhciBcCisjICAtLWF2b2lk PXdjcnRvbWIgXAorIyAgLS1hdm9pZD13Y3R5cGUtaCBcCisjICBhbGxvY2Etb3B0IFwKKyMgIGJp bmFyeS1pbyBcCisjICBieXRlc3dhcCBcCisjICBjLWN0eXBlIFwKKyMgIGMtc3RyY2FzZSBcCisj ICBjYW5vbmljYWxpemUtbGdwbCBcCisjICBjYXJlYWRsaW5rYXQgXAorIyAgY2xvc2Utc3RyZWFt IFwKKyMgIGNvcHktZmlsZS1yYW5nZSBcCisjICBjb3VudC1sZWFkaW5nLXplcm9zIFwKKyMgIGNv dW50LW9uZS1iaXRzIFwKKyMgIGNvdW50LXRyYWlsaW5nLXplcm9zIFwKKyMgIGNyeXB0by9tZDUt YnVmZmVyIFwKKyMgIGNyeXB0by9zaGExLWJ1ZmZlciBcCisjICBjcnlwdG8vc2hhMjU2LWJ1ZmZl ciBcCisjICBjcnlwdG8vc2hhNTEyLWJ1ZmZlciBcCisjICBkLXR5cGUgXAorIyAgZGlmZnNlcSBc CisjICBkb3VibGUtc2xhc2gtcm9vdCBcCisjICBkdG9hc3RyIFwKKyMgIGR0b3RpbWVzcGVjIFwK KyMgIGR1cDIgXAorIyAgZW52aXJvbiBcCisjICBleGVjaW5mbyBcCisjICBleHBsaWNpdF9iemVy byBcCisjICBmYWNjZXNzYXQgXAorIyAgZmNobW9kYXQgXAorIyAgZmNudGwgXAorIyAgZmNudGwt aCBcCisjICBmZG9wZW5kaXIgXAorIyAgZmlsZW1vZGUgXAorIyAgZmlsZW5hbWUgXAorIyAgZmls ZXZlcmNtcCBcCisjICBmbGV4bWVtYmVyIFwKKyMgIGZwaWVlZSBcCisjICBmc3RhdGF0IFwKKyMg IGZzdXNhZ2UgXAorIyAgZnN5bmMgXAorIyAgZnV0aW1lbnMgXAorIyAgZ2V0bG9hZGF2ZyBcCisj ICBnZXRvcHQtZ251IFwKKyMgIGdldHJhbmRvbSBcCisjICBnZXR0aW1lIFwKKyMgIGdldHRpbWVv ZmRheSBcCisjICBnaXRsb2ctdG8tY2hhbmdlbG9nIFwKKyMgIGllZWU3NTQtaCBcCisjICBpZ25v cmUtdmFsdWUgXAorIyAgaW50cHJvcHMgXAorIyAgbGFyZ2VmaWxlIFwKKyMgIGxpYmdtcCBcCisj ICBsc3RhdCBcCisjICBtYW55d2FybmluZ3MgXAorIyAgbWVtbWVtLXNpbXBsZSBcCisjICBtZW1w Y3B5IFwKKyMgIG1lbXJjaHIgXAorIyAgbWlubWF4IFwKKyMgIG1rb3N0ZW1wIFwKKyMgIG1rdGlt ZSBcCisjICBuc3RyZnRpbWUgXAorIyAgcGF0aG1heCBcCisjICBwaXBlMiBcCisjICBwc2VsZWN0 IFwKKyMgIHB0aHJlYWRfc2lnbWFzayBcCisjICBxY29weS1hY2wgXAorIyAgcmVhZGxpbmsgXAor IyAgcmVhZGxpbmthdCBcCisjICByZWdleCBcCisjICBzaWcyc3RyIFwKKyMgIHNpZ2Rlc2NyX25w IFwKKyMgIHNvY2tsZW4gXAorIyAgc3RhdC10aW1lIFwKKyMgIHN0ZC1nbnUxMSBcCisjICBzdGRh bGlnbiBcCisjICBzdGRkZWYgXAorIyAgc3RkaW8gXAorIyAgc3RwY3B5IFwKKyMgIHN0cm5sZW4g XAorIyAgc3RydG9pbWF4IFwKKyMgIHN5bWxpbmsgXAorIyAgc3lzX3N0YXQgXAorIyAgc3lzX3Rp bWUgXAorIyAgdGVtcG5hbWUgXAorIyAgdGltZSBcCisjICB0aW1lX3IgXAorIyAgdGltZV9yeiBc CisjICB0aW1lZ20gXAorIyAgdGltZXItdGltZSBcCisjICB0aW1lc3BlYy1hZGQgXAorIyAgdGlt ZXNwZWMtc3ViIFwKKyMgIHVubG9ja2VkLWlvIFwKKyMgIHVwZGF0ZS1jb3B5cmlnaHQgXAorIyAg dXRpbWVuc2F0IFwKKyMgIHZsYSBcCisjICB3YXJuaW5ncworCisjIFNwZWNpZmljYXRpb24gaW4g dGhlIGZvcm0gb2YgYSBmZXcgZ251bGliLXRvb2wubTQgbWFjcm8gaW52b2NhdGlvbnM6CitnbF9M T0NBTF9ESVIoW10pCitnbF9NT0RVTEVTKFsKKyAgYWxsb2NhLW9wdAorICBiaW5hcnktaW8KKyAg Ynl0ZXN3YXAKKyAgYy1jdHlwZQorICBjLXN0cmNhc2UKKyAgY2Fub25pY2FsaXplLWxncGwKKyAg Y2FyZWFkbGlua2F0CisgIGNsb3NlLXN0cmVhbQorICBjb3B5LWZpbGUtcmFuZ2UKKyAgY291bnQt bGVhZGluZy16ZXJvcworICBjb3VudC1vbmUtYml0cworICBjb3VudC10cmFpbGluZy16ZXJvcwor ICBjcnlwdG8vbWQ1LWJ1ZmZlcgorICBjcnlwdG8vc2hhMS1idWZmZXIKKyAgY3J5cHRvL3NoYTI1 Ni1idWZmZXIKKyAgY3J5cHRvL3NoYTUxMi1idWZmZXIKKyAgZC10eXBlCisgIGRpZmZzZXEKKyAg ZG91YmxlLXNsYXNoLXJvb3QKKyAgZHRvYXN0cgorICBkdG90aW1lc3BlYworICBkdXAyCisgIGVu dmlyb24KKyAgZXhlY2luZm8KKyAgZXhwbGljaXRfYnplcm8KKyAgZmFjY2Vzc2F0CisgIGZjaG1v ZGF0CisgIGZjbnRsCisgIGZjbnRsLWgKKyAgZmRvcGVuZGlyCisgIGZpbGVtb2RlCisgIGZpbGVu YW1lCisgIGZpbGV2ZXJjbXAKKyAgZmxleG1lbWJlcgorICBmcGllZWUKKyAgZnN0YXRhdAorICBm c3VzYWdlCisgIGZzeW5jCisgIGZ1dGltZW5zCisgIGdldGxvYWRhdmcKKyAgZ2V0b3B0LWdudQor ICBnZXRyYW5kb20KKyAgZ2V0dGltZQorICBnZXR0aW1lb2ZkYXkKKyAgZ2l0bG9nLXRvLWNoYW5n ZWxvZworICBpZWVlNzU0LWgKKyAgaWdub3JlLXZhbHVlCisgIGludHByb3BzCisgIGxhcmdlZmls ZQorICBsaWJnbXAKKyAgbHN0YXQKKyAgbWFueXdhcm5pbmdzCisgIG1lbW1lbS1zaW1wbGUKKyAg bWVtcGNweQorICBtZW1yY2hyCisgIG1pbm1heAorICBta29zdGVtcAorICBta3RpbWUKKyAgbnN0 cmZ0aW1lCisgIHBhdGhtYXgKKyAgcGlwZTIKKyAgcHNlbGVjdAorICBwdGhyZWFkX3NpZ21hc2sK KyAgcWNvcHktYWNsCisgIHJlYWRsaW5rCisgIHJlYWRsaW5rYXQKKyAgcmVnZXgKKyAgc2lnMnN0 cgorICBzaWdkZXNjcl9ucAorICBzb2NrbGVuCisgIHN0YXQtdGltZQorICBzdGQtZ251MTEKKyAg c3RkYWxpZ24KKyAgc3RkZGVmCisgIHN0ZGlvCisgIHN0cGNweQorICBzdHJubGVuCisgIHN0cnRv aW1heAorICBzeW1saW5rCisgIHN5c19zdGF0CisgIHN5c190aW1lCisgIHRlbXBuYW1lCisgIHRp bWUKKyAgdGltZV9yCisgIHRpbWVfcnoKKyAgdGltZWdtCisgIHRpbWVyLXRpbWUKKyAgdGltZXNw ZWMtYWRkCisgIHRpbWVzcGVjLXN1YgorICB1bmxvY2tlZC1pbworICB1cGRhdGUtY29weXJpZ2h0 CisgIHV0aW1lbnNhdAorICB2bGEKKyAgd2FybmluZ3MKK10pCitnbF9BVk9JRChbIGJ0b3djIGNs b3NlIGR1cCBmY2hkaXIgZnN0YXQgbGFuZ2luZm8gbG9jayBtYWxsb2MtcG9zaXggbWJydG93YyBt YnNpbml0IG1lbWNociBta2RpciBtc3ZjLWludmFsIG1zdmMtbm90aHJvdyBubF9sYW5naW5mbyBv cGVuYXQtZGllIG9wZW5kaXIgcHRocmVhZC1oIHJhaXNlIHNhdmUtY3dkIHNlbGVjdCBzZXRlbnYg c2lncHJvY21hc2sgc3RhdCBzdGRhcmcgc3RkYm9vbCB0aHJlYWRsaWIgdHpzZXQgdW5zZXRlbnYg dXRpbWUgdXRpbWUtaCB3Y2hhciB3Y3J0b21iIHdjdHlwZS1oXSkKK2dsX1NPVVJDRV9CQVNFKFts aWJdKQorZ2xfTTRfQkFTRShbbTRdKQorZ2xfUE9fQkFTRShbXSkKK2dsX0RPQ19CQVNFKFtkb2Nd KQorZ2xfVEVTVFNfQkFTRShbdGVzdHNdKQorZ2xfTElCKFtsaWJnbnVdKQorZ2xfTUFLRUZJTEVf TkFNRShbZ251bGliLm1rLmluXSkKK2dsX0NPTkRJVElPTkFMX0RFUEVOREVOQ0lFUworZ2xfTUFD Uk9fUFJFRklYKFtnbF0pCitnbF9QT19ET01BSU4oW10pCitnbF9XSVRORVNTX0NfTUFDUk8oW10p CitnbF9WQ19GSUxFUyhbZmFsc2VdKQpkaWZmIC0tZ2l0IGEvbTQvZ251bGliLWNvbXAubTQgYi9t NC9nbnVsaWItY29tcC5tNAppbmRleCBjZDZmN2I0YmJkZmFiLi43MGYxMzhjYzMzMDFjIDEwMDY0 NAotLS0gYS9tNC9nbnVsaWItY29tcC5tNAorKysgYi9tNC9nbnVsaWItY29tcC5tNApAQCAtMjkz LDEyICsyOTMsNiBAQCBBQ19ERUZVTgogICBpZiB0ZXN0ICRnbF9jdl9mdW5jX19fZnBlbmRpbmcg PSBubzsgdGhlbgogICAgIEFDX0xJQk9CSihbZnBlbmRpbmddKQogICBmaQotICBnbF9GVU5DX0ZS RUUKLSAgaWYgdGVzdCAkUkVQTEFDRV9GUkVFID0gMTsgdGhlbgotICAgIEFDX0xJQk9CSihbZnJl ZV0pCi0gICAgZ2xfUFJFUkVRX0ZSRUUKLSAgZmkKLSAgZ2xfU1RETElCX01PRFVMRV9JTkRJQ0FU T1IoW2ZyZWUtcG9zaXhdKQogICBnbF9GVU5DX0ZTVEFUQVQKICAgaWYgdGVzdCAkSEFWRV9GU1RB VEFUID0gMCB8fCB0ZXN0ICRSRVBMQUNFX0ZTVEFUQVQgPSAxOyB0aGVuCiAgICAgQUNfTElCT0JK KFtmc3RhdGF0XSkKQEAgLTUyMSw2ICs1MTUsNyBAQCBBQ19ERUZVTgogICBnbF9nbnVsaWJfZW5h YmxlZF9keW5hcnJheT1mYWxzZQogICBnbF9nbnVsaWJfZW5hYmxlZF85MjU2NzdmMDM0M2RlNjRi ODlhOWYwYzc5MGI0MTA0Yz1mYWxzZQogICBnbF9nbnVsaWJfZW5hYmxlZF9ldWlkYWNjZXNzPWZh bHNlCisgIGdsX2dudWxpYl9lbmFibGVkX2VmMDdkYzRiMzA3N2MxMWVhOWNlZjU4NmRiNGU1OTU1 PWZhbHNlCiAgIGdsX2dudWxpYl9lbmFibGVkX2dldGR0YWJsZXNpemU9ZmFsc2UKICAgZ2xfZ251 bGliX2VuYWJsZWRfZ2V0Z3JvdXBzPWZhbHNlCiAgIGdsX2dudWxpYl9lbmFibGVkX2JlNDUzY2Vj NWVlY2Y1NzMxYTI3NGYyZGU3ZjJkYjM2PWZhbHNlCkBAIC01OTQsNiArNTg5LDE4IEBAIEFDX0RF RlVOCiAgICAgICBmdW5jX2dsX2dudWxpYl9tNGNvZGVfNjA5OWU5NzM3Zjc1N2RiMzZjNDdmYTlk OWYwMmU4OGMKICAgICBmaQogICB9CisgIGZ1bmNfZ2xfZ251bGliX200Y29kZV9lZjA3ZGM0YjMw NzdjMTFlYTljZWY1ODZkYjRlNTk1NSAoKQorICB7CisgICAgaWYgISAkZ2xfZ251bGliX2VuYWJs ZWRfZWYwN2RjNGIzMDc3YzExZWE5Y2VmNTg2ZGI0ZTU5NTU7IHRoZW4KKyAgICAgIGdsX0ZVTkNf RlJFRQorICAgICAgaWYgdGVzdCAkUkVQTEFDRV9GUkVFID0gMTsgdGhlbgorICAgICAgICBBQ19M SUJPQkooW2ZyZWVdKQorICAgICAgICBnbF9QUkVSRVFfRlJFRQorICAgICAgZmkKKyAgICAgIGds X1NURExJQl9NT0RVTEVfSU5ESUNBVE9SKFtmcmVlLXBvc2l4XSkKKyAgICAgIGdsX2dudWxpYl9l bmFibGVkX2VmMDdkYzRiMzA3N2MxMWVhOWNlZjU4NmRiNGU1OTU1PXRydWUKKyAgICBmaQorICB9 CiAgIGZ1bmNfZ2xfZ251bGliX200Y29kZV9nZXRkdGFibGVzaXplICgpCiAgIHsKICAgICBpZiAh ICRnbF9nbnVsaWJfZW5hYmxlZF9nZXRkdGFibGVzaXplOyB0aGVuCkBAIC03NDUsNiArNzUyLDkg QEAgQUNfREVGVU4KICAgaWYgdGVzdCAkSEFWRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FID0gMCB8 fCB0ZXN0ICRSRVBMQUNFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgPSAxOyB0aGVuCiAgICAgZnVu Y19nbF9nbnVsaWJfbTRjb2RlXzkyNTY3N2YwMzQzZGU2NGI4OWE5ZjBjNzkwYjQxMDRjCiAgIGZp CisgIGlmIHRlc3QgJEhBVkVfQ0FOT05JQ0FMSVpFX0ZJTEVfTkFNRSA9IDAgfHwgdGVzdCAkUkVQ TEFDRV9DQU5PTklDQUxJWkVfRklMRV9OQU1FID0gMTsgdGhlbgorICAgIGZ1bmNfZ2xfZ251bGli X200Y29kZV9lZjA3ZGM0YjMwNzdjMTFlYTljZWY1ODZkYjRlNTk1NQorICBmaQogICBpZiB0ZXN0 ICRIQVZFX0NBTk9OSUNBTElaRV9GSUxFX05BTUUgPSAwIHx8IHRlc3QgJFJFUExBQ0VfQ0FOT05J Q0FMSVpFX0ZJTEVfTkFNRSA9IDE7IHRoZW4KICAgICBmdW5jX2dsX2dudWxpYl9tNGNvZGVfaWR4 CiAgIGZpCkBAIC04MzMsNiArODQzLDcgQEAgQUNfREVGVU4KICAgQU1fQ09ORElUSU9OQUwoW2ds X0dOVUxJQl9FTkFCTEVEX2R5bmFycmF5XSwgWyRnbF9nbnVsaWJfZW5hYmxlZF9keW5hcnJheV0p CiAgIEFNX0NPTkRJVElPTkFMKFtnbF9HTlVMSUJfRU5BQkxFRF85MjU2NzdmMDM0M2RlNjRiODlh OWYwYzc5MGI0MTA0Y10sIFskZ2xfZ251bGliX2VuYWJsZWRfOTI1Njc3ZjAzNDNkZTY0Yjg5YTlm MGM3OTBiNDEwNGNdKQogICBBTV9DT05ESVRJT05BTChbZ2xfR05VTElCX0VOQUJMRURfZXVpZGFj Y2Vzc10sIFskZ2xfZ251bGliX2VuYWJsZWRfZXVpZGFjY2Vzc10pCisgIEFNX0NPTkRJVElPTkFM KFtnbF9HTlVMSUJfRU5BQkxFRF9lZjA3ZGM0YjMwNzdjMTFlYTljZWY1ODZkYjRlNTk1NV0sIFsk Z2xfZ251bGliX2VuYWJsZWRfZWYwN2RjNGIzMDc3YzExZWE5Y2VmNTg2ZGI0ZTU5NTVdKQogICBB TV9DT05ESVRJT05BTChbZ2xfR05VTElCX0VOQUJMRURfZ2V0ZHRhYmxlc2l6ZV0sIFskZ2xfZ251 bGliX2VuYWJsZWRfZ2V0ZHRhYmxlc2l6ZV0pCiAgIEFNX0NPTkRJVElPTkFMKFtnbF9HTlVMSUJf RU5BQkxFRF9nZXRncm91cHNdLCBbJGdsX2dudWxpYl9lbmFibGVkX2dldGdyb3Vwc10pCiAgIEFN X0NPTkRJVElPTkFMKFtnbF9HTlVMSUJfRU5BQkxFRF9iZTQ1M2NlYzVlZWNmNTczMWEyNzRmMmRl N2YyZGIzNl0sIFskZ2xfZ251bGliX2VuYWJsZWRfYmU0NTNjZWM1ZWVjZjU3MzFhMjc0ZjJkZTdm MmRiMzZdKQpkaWZmIC0tZ2l0IGEvbTQvZ251bGliLXRvb2wubTQgYi9tNC9nbnVsaWItdG9vbC5t NApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4zZDU2ZDgzZjEyOGRi Ci0tLSAvZGV2L251bGwKKysrIGIvbTQvZ251bGliLXRvb2wubTQKQEAgLTAsMCArMSw1NyBAQAor IyBnbnVsaWItdG9vbC5tNCBzZXJpYWwgMgorZG5sIENvcHlyaWdodCAoQykgMjAwNC0yMDA1LCAy MDA5LTIwMjEgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCitkbmwgVGhpcyBmaWxlIGlz IGZyZWUgc29mdHdhcmU7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KK2RubCBnaXZlcyB1 bmxpbWl0ZWQgcGVybWlzc2lvbiB0byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorZG5sIHdp dGggb3Igd2l0aG91dCBtb2RpZmljYXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHBy ZXNlcnZlZC4KKworZG5sIFRoZSBmb2xsb3dpbmcgbWFjcm9zIG5lZWQgbm90IGJlIGludm9rZWQg ZXhwbGljaXRseS4KK2RubCBJbnZva2luZyB0aGVtIGRvZXMgbm90aGluZyBleGNlcHQgdG8gZGVj bGFyZSBkZWZhdWx0IGFyZ3VtZW50cworZG5sIGZvciAiZ251bGliLXRvb2wgLS1pbXBvcnQiLgor CitkbmwgVXNhZ2U6IGdsX0xPQ0FMX0RJUihbRElSXSkKK0FDX0RFRlVOKFtnbF9MT0NBTF9ESVJd LCBbXSkKKworZG5sIFVzYWdlOiBnbF9NT0RVTEVTKFttb2R1bGUxIG1vZHVsZTIgLi4uXSkKK0FD X0RFRlVOKFtnbF9NT0RVTEVTXSwgW10pCisKK2RubCBVc2FnZTogZ2xfQVZPSUQoW21vZHVsZTEg bW9kdWxlMiAuLi5dKQorQUNfREVGVU4oW2dsX0FWT0lEXSwgW10pCisKK2RubCBVc2FnZTogZ2xf U09VUkNFX0JBU0UoW0RJUl0pCitBQ19ERUZVTihbZ2xfU09VUkNFX0JBU0VdLCBbXSkKKworZG5s IFVzYWdlOiBnbF9NNF9CQVNFKFtESVJdKQorQUNfREVGVU4oW2dsX000X0JBU0VdLCBbXSkKKwor ZG5sIFVzYWdlOiBnbF9QT19CQVNFKFtESVJdKQorQUNfREVGVU4oW2dsX1BPX0JBU0VdLCBbXSkK KworZG5sIFVzYWdlOiBnbF9ET0NfQkFTRShbRElSXSkKK0FDX0RFRlVOKFtnbF9ET0NfQkFTRV0s IFtdKQorCitkbmwgVXNhZ2U6IGdsX1RFU1RTX0JBU0UoW0RJUl0pCitBQ19ERUZVTihbZ2xfVEVT VFNfQkFTRV0sIFtdKQorCitkbmwgVXNhZ2U6IGdsX1dJVEhfVEVTVFMKK0FDX0RFRlVOKFtnbF9X SVRIX1RFU1RTXSwgW10pCisKK2RubCBVc2FnZTogZ2xfTElCKFtMSUJOQU1FXSkKK0FDX0RFRlVO KFtnbF9MSUJdLCBbXSkKKworZG5sIFVzYWdlOiBnbF9MR1BMIG9yIGdsX0xHUEwoW1ZFUlNJT05d KQorQUNfREVGVU4oW2dsX0xHUExdLCBbXSkKKworZG5sIFVzYWdlOiBnbF9NQUtFRklMRV9OQU1F KFtGSUxFTkFNRV0pCitBQ19ERUZVTihbZ2xfTUFLRUZJTEVfTkFNRV0sIFtdKQorCitkbmwgVXNh Z2U6IGdsX0xJQlRPT0wKK0FDX0RFRlVOKFtnbF9MSUJUT09MXSwgW10pCisKK2RubCBVc2FnZTog Z2xfTUFDUk9fUFJFRklYKFtQUkVGSVhdKQorQUNfREVGVU4oW2dsX01BQ1JPX1BSRUZJWF0sIFtd KQorCitkbmwgVXNhZ2U6IGdsX1BPX0RPTUFJTihbRE9NQUlOXSkKK0FDX0RFRlVOKFtnbF9QT19E T01BSU5dLCBbXSkKKworZG5sIFVzYWdlOiBnbF9WQ19GSUxFUyhbQk9PTEVBTl0pCitBQ19ERUZV TihbZ2xfVkNfRklMRVNdLCBbXSkKZGlmZiAtLWdpdCBhL200L21hbnl3YXJuaW5ncy1jKysubTQg Yi9tNC9tYW55d2FybmluZ3MtYysrLm00Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAuLmZiYjhmNzdmOGJlYjcKLS0tIC9kZXYvbnVsbAorKysgYi9tNC9tYW55d2Fybmlu Z3MtYysrLm00CkBAIC0wLDAgKzEsMjQzIEBACisjIG1hbnl3YXJuaW5ncy1jKysubTQgc2VyaWFs IDMKK2RubCBDb3B5cmlnaHQgKEMpIDIwMDgtMjAyMSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24s IEluYy4KK2RubCBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbgorZG5sIGdpdmVzIHVubGltaXRlZCBwZXJtaXNzaW9uIHRvIGNvcHkgYW5kL29y IGRpc3RyaWJ1dGUgaXQsCitkbmwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbnMsIGFzIGxv bmcgYXMgdGhpcyBub3RpY2UgaXMgcHJlc2VydmVkLgorCisjIEltcGxlbWVudGF0aW9uIG9mIHRo ZSBzcGVjaWFsaXphdGlvbiBvZiBnbF9NQU5ZV0FSTl9BTExfR0NDCisjIGZvciBfQUNfTEFORyA9 IEMrKy4KK0FDX0RFRlVOKFtnbF9NQU5ZV0FSTl9BTExfR0NDX0NYWF9JTVBMXSwKK1sKKyAgQUNf TEFOR19QVVNIKFtDKytdKQorCisgIGRubCBGaXJzdCwgY2hlY2sgZm9yIHNvbWUgaXNzdWVzIHRo YXQgb25seSBvY2N1ciB3aGVuIGNvbWJpbmluZyBtdWx0aXBsZQorICBkbmwgZ2NjIHdhcm5pbmcg Y2F0ZWdvcmllcy4KKyAgQUNfUkVRVUlSRShbQUNfUFJPR19DWFhdKQorICBpZiB0ZXN0IC1uICIk R1hYIjsgdGhlbgorCisgICAgZG5sIENoZWNrIGlmIC1XIC1XZXJyb3IgLVduby1taXNzaW5nLWZp ZWxkLWluaXRpYWxpemVycyBpcyBzdXBwb3J0ZWQKKyAgICBkbmwgd2l0aCB0aGUgY3VycmVudCAk Q1hYICRDWFhGTEFHUyAkQ1BQRkxBR1MuCisgICAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgLVdu by1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyBpcyBzdXBwb3J0ZWRdLAorICAgICAgW2dsX2N2 X2N4eF9ub21maV9zdXBwb3J0ZWRdLAorICAgICAgW2dsX3NhdmVfQ1hYRkxBR1M9IiRDWFhGTEFH UyIKKyAgICAgICBDWFhGTEFHUz0iJENYWEZMQUdTIC1XIC1XZXJyb3IgLVduby1taXNzaW5nLWZp ZWxkLWluaXRpYWxpemVycyIKKyAgICAgICBBQ19DT01QSUxFX0lGRUxTRSgKKyAgICAgICAgIFtB Q19MQU5HX1BST0dSQU0oW1tdXSwgW1tdXSldLAorICAgICAgICAgW2dsX2N2X2N4eF9ub21maV9z dXBwb3J0ZWQ9eWVzXSwKKyAgICAgICAgIFtnbF9jdl9jeHhfbm9tZmlfc3VwcG9ydGVkPW5vXSkK KyAgICAgICBDWFhGTEFHUz0iJGdsX3NhdmVfQ1hYRkxBR1MiCisgICAgICBdKQorCisgICAgaWYg dGVzdCAiJGdsX2N2X2N4eF9ub21maV9zdXBwb3J0ZWQiID0geWVzOyB0aGVuCisgICAgICBkbmwg Tm93IGNoZWNrIHdoZXRoZXIgLVduby1taXNzaW5nLWZpZWxkLWluaXRpYWxpemVycyBpcyBuZWVk ZWQKKyAgICAgIGRubCBmb3IgdGhlIHsgMCwgfSBjb25zdHJ1Y3QuCisgICAgICBBQ19DQUNIRV9D SEVDSyhbd2hldGhlciAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIGlzIG5lZWRlZF0s CisgICAgICAgIFtnbF9jdl9jeHhfbm9tZmlfbmVlZGVkXSwKKyAgICAgICAgW2dsX3NhdmVfQ1hY RkxBR1M9IiRDWFhGTEFHUyIKKyAgICAgICAgIENYWEZMQUdTPSIkQ1hYRkxBR1MgLVcgLVdlcnJv ciIKKyAgICAgICAgIEFDX0NPTVBJTEVfSUZFTFNFKAorICAgICAgICAgICBbQUNfTEFOR19QUk9H UkFNKAorICAgICAgICAgICAgICBbW2ludCBmICh2b2lkKQorICAgICAgICAgICAgICAgIHsKKyAg ICAgICAgICAgICAgICAgIHR5cGVkZWYgc3RydWN0IHsgaW50IGE7IGludCBiOyB9IHNfdDsKKyAg ICAgICAgICAgICAgICAgIHNfdCBzMSA9IHsgMCwgfTsKKyAgICAgICAgICAgICAgICAgIHJldHVy biBzMS5iOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgXV0sCisgICAgICAgICAg ICAgIFtbXV0pXSwKKyAgICAgICAgICAgW2dsX2N2X2N4eF9ub21maV9uZWVkZWQ9bm9dLAorICAg ICAgICAgICBbZ2xfY3ZfY3h4X25vbWZpX25lZWRlZD15ZXNdKQorICAgICAgICAgQ1hYRkxBR1M9 IiRnbF9zYXZlX0NYWEZMQUdTIgorICAgICAgICBdKQorICAgIGZpCisKKyAgICBkbmwgTmV4dCwg Y2hlY2sgaWYgLVdlcnJvciAtV3VuaW5pdGlhbGl6ZWQgaXMgdXNlZnVsIHdpdGggdGhlCisgICAg ZG5sIHVzZXIncyBjaG9pY2Ugb2YgJENYWEZMQUdTOyBzb21lIHZlcnNpb25zIG9mIGdjYyB3YXJu IHRoYXQgaXQKKyAgICBkbmwgaGFzIG5vIGVmZmVjdCBpZiAtTyBpcyBub3QgYWxzbyB1c2VkCisg ICAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgLVd1bmluaXRpYWxpemVkIGlzIHN1cHBvcnRlZF0s CisgICAgICBbZ2xfY3ZfY3h4X3VuaW5pdGlhbGl6ZWRfc3VwcG9ydGVkXSwKKyAgICAgIFtnbF9z YXZlX0NYWEZMQUdTPSIkQ1hYRkxBR1MiCisgICAgICAgQ1hYRkxBR1M9IiRDWFhGTEFHUyAtV2Vy cm9yIC1XdW5pbml0aWFsaXplZCIKKyAgICAgICBBQ19DT01QSUxFX0lGRUxTRSgKKyAgICAgICAg IFtBQ19MQU5HX1BST0dSQU0oW1tdXSwgW1tdXSldLAorICAgICAgICAgW2dsX2N2X2N4eF91bmlu aXRpYWxpemVkX3N1cHBvcnRlZD15ZXNdLAorICAgICAgICAgW2dsX2N2X2N4eF91bmluaXRpYWxp emVkX3N1cHBvcnRlZD1ub10pCisgICAgICAgQ1hYRkxBR1M9IiRnbF9zYXZlX0NYWEZMQUdTIgor ICAgICAgXSkKKworICBmaQorCisgICMgTGlzdCBhbGwgZ2NjIHdhcm5pbmcgY2F0ZWdvcmllcy4K KyAgIyBUbyBjb21wYXJlIHRoaXMgbGlzdCB0byB5b3VyIGluc3RhbGxlZCBHQ0MncywgcnVuIHRo aXMgQmFzaCBjb21tYW5kOgorICAjCisgICMgY29tbSAtMyBcCisgICMgIDwoc2VkIC1uICdzL14g ICpcKC1bXiBdKlwpIC4qL1wxL3AnIG1hbnl3YXJuaW5ncy1jKysubTQgfCBzb3J0KSBcCisgICMg IDwoZ2NjIC0taGVscD13YXJuaW5ncyB8IHNlZCAtbiAncy9eICBcKC1bXiBdKlwpIC4qL1wxL3An IHwgc29ydCB8CisgICMgICAgICBncmVwIC12IC14IC1mIDwoCisgICMgICAgICAgICBhd2sgJy9e W14jXS8ge3ByaW50ICQxfScgLi4vYnVpbGQtYXV4L2crKy13YXJuaW5nLnNwZWMpKQorCisgIGds X21hbnl3YXJuX3NldD0KKyAgZm9yIGdsX21hbnl3YXJuX2l0ZW0gaW4gXAorICAgIC1XIFwKKyAg ICAtV2FiaS10YWcgXAorICAgIC1XYWRkcmVzcyBcCisgICAgLVdhZ2dyZXNzaXZlLWxvb3Atb3B0 aW1pemF0aW9ucyBcCisgICAgLVdhbGwgXAorICAgIC1XYXR0cmlidXRlcyBcCisgICAgLVdib29s LWNvbXBhcmUgXAorICAgIC1XYnVpbHRpbi1tYWNyby1yZWRlZmluZWQgXAorICAgIC1XY2FzdC1h bGlnbiBcCisgICAgLVdjaGFyLXN1YnNjcmlwdHMgXAorICAgIC1XY2xvYmJlcmVkIFwKKyAgICAt V2NvbW1lbnQgXAorICAgIC1XY29tbWVudHMgXAorICAgIC1XY29uZGl0aW9uYWxseS1zdXBwb3J0 ZWQgXAorICAgIC1XY29udmVyc2lvbi1udWxsIFwKKyAgICAtV2NvdmVyYWdlLW1pc21hdGNoIFwK KyAgICAtV2NwcCBcCisgICAgLVdjdG9yLWR0b3ItcHJpdmFjeSBcCisgICAgLVdkYXRlLXRpbWUg XAorICAgIC1XZGVsZXRlLWluY29tcGxldGUgXAorICAgIC1XZGVsZXRlLW5vbi12aXJ0dWFsLWR0 b3IgXAorICAgIC1XZGVwcmVjYXRlZCBcCisgICAgLVdkZXByZWNhdGVkLWRlY2xhcmF0aW9ucyBc CisgICAgLVdkaXNhYmxlZC1vcHRpbWl6YXRpb24gXAorICAgIC1XZGl2LWJ5LXplcm8gXAorICAg IC1XZG91YmxlLXByb21vdGlvbiBcCisgICAgLVdlZmZjKysgXAorICAgIC1XZW1wdHktYm9keSBc CisgICAgLVdlbmRpZi1sYWJlbHMgXAorICAgIC1XZW51bS1jb21wYXJlIFwKKyAgICAtV2V4dHJh IFwKKyAgICAtV2Zvcm1hdC1jb250YWlucy1udWwgXAorICAgIC1XZm9ybWF0LWV4dHJhLWFyZ3Mg XAorICAgIC1XZm9ybWF0LW5vbmxpdGVyYWwgXAorICAgIC1XZm9ybWF0LXNlY3VyaXR5IFwKKyAg ICAtV2Zvcm1hdC1zaWduZWRuZXNzIFwKKyAgICAtV2Zvcm1hdC15MmsgXAorICAgIC1XZm9ybWF0 LXplcm8tbGVuZ3RoIFwKKyAgICAtV2ZyZWUtbm9uaGVhcC1vYmplY3QgXAorICAgIC1XaWdub3Jl ZC1xdWFsaWZpZXJzIFwKKyAgICAtV2luaGVyaXRlZC12YXJpYWRpYy1jdG9yIFwKKyAgICAtV2lu aXQtc2VsZiBcCisgICAgLVdpbmxpbmUgXAorICAgIC1XaW50LXRvLXBvaW50ZXItY2FzdCBcCisg ICAgLVdpbnZhbGlkLW1lbW9yeS1tb2RlbCBcCisgICAgLVdpbnZhbGlkLW9mZnNldG9mIFwKKyAg ICAtV2ludmFsaWQtcGNoIFwKKyAgICAtV2xpdGVyYWwtc3VmZml4IFwKKyAgICAtV2xvZ2ljYWwt bm90LXBhcmVudGhlc2VzIFwKKyAgICAtV2xvZ2ljYWwtb3AgXAorICAgIC1XbWFpbiBcCisgICAg LVdtYXliZS11bmluaXRpYWxpemVkIFwKKyAgICAtV21lbXNldC10cmFuc3Bvc2VkLWFyZ3MgXAor ICAgIC1XbWlzc2luZy1icmFjZXMgXAorICAgIC1XbWlzc2luZy1kZWNsYXJhdGlvbnMgXAorICAg IC1XbWlzc2luZy1maWVsZC1pbml0aWFsaXplcnMgXAorICAgIC1XbWlzc2luZy1pbmNsdWRlLWRp cnMgXAorICAgIC1XbXVsdGljaGFyIFwKKyAgICAtV25hcnJvd2luZyBcCisgICAgLVdub2V4Y2Vw dCBcCisgICAgLVdub24tdGVtcGxhdGUtZnJpZW5kIFwKKyAgICAtV25vbi12aXJ0dWFsLWR0b3Ig XAorICAgIC1Xbm9ubnVsbCBcCisgICAgLVdvZHIgXAorICAgIC1Xb2xkLXN0eWxlLWNhc3QgXAor ICAgIC1Xb3Blbm1wLXNpbWQgXAorICAgIC1Xb3ZlcmZsb3cgXAorICAgIC1Xb3Zlcmxlbmd0aC1z dHJpbmdzIFwKKyAgICAtV292ZXJsb2FkZWQtdmlydHVhbCBcCisgICAgLVdwYWNrZWQgXAorICAg IC1XcGFja2VkLWJpdGZpZWxkLWNvbXBhdCBcCisgICAgLVdwYXJlbnRoZXNlcyBcCisgICAgLVdw bWYtY29udmVyc2lvbnMgXAorICAgIC1XcG9pbnRlci1hcml0aCBcCisgICAgLVdwcmFnbWFzIFwK KyAgICAtV3Jlb3JkZXIgXAorICAgIC1XcmV0dXJuLWxvY2FsLWFkZHIgXAorICAgIC1XcmV0dXJu LXR5cGUgXAorICAgIC1Xc2VxdWVuY2UtcG9pbnQgXAorICAgIC1Xc2hhZG93IFwKKyAgICAtV3No aWZ0LWNvdW50LW5lZ2F0aXZlIFwKKyAgICAtV3NoaWZ0LWNvdW50LW92ZXJmbG93IFwKKyAgICAt V3NpZ24tcHJvbW8gXAorICAgIC1Xc2l6ZWQtZGVhbGxvY2F0aW9uIFwKKyAgICAtV3NpemVvZi1h cnJheS1hcmd1bWVudCBcCisgICAgLVdzaXplb2YtcG9pbnRlci1tZW1hY2Nlc3MgXAorICAgIC1X c3RhY2stcHJvdGVjdG9yIFwKKyAgICAtV3N0cmljdC1hbGlhc2luZyBcCisgICAgLVdzdHJpY3Qt bnVsbC1zZW50aW5lbCBcCisgICAgLVdzdHJpY3Qtb3ZlcmZsb3cgXAorICAgIC1Xc3VnZ2VzdC1h dHRyaWJ1dGU9Y29uc3QgXAorICAgIC1Xc3VnZ2VzdC1hdHRyaWJ1dGU9Zm9ybWF0IFwKKyAgICAt V3N1Z2dlc3QtYXR0cmlidXRlPW5vcmV0dXJuIFwKKyAgICAtV3N1Z2dlc3QtYXR0cmlidXRlPXB1 cmUgXAorICAgIC1Xc3VnZ2VzdC1maW5hbC1tZXRob2RzIFwKKyAgICAtV3N1Z2dlc3QtZmluYWwt dHlwZXMgXAorICAgIC1Xc3VnZ2VzdC1vdmVycmlkZSBcCisgICAgLVdzd2l0Y2ggXAorICAgIC1X c3dpdGNoLWJvb2wgXAorICAgIC1Xc3luYy1uYW5kIFwKKyAgICAtV3N5c3RlbS1oZWFkZXJzIFwK KyAgICAtV3RyYW1wb2xpbmVzIFwKKyAgICAtV3RyaWdyYXBocyBcCisgICAgLVd0eXBlLWxpbWl0 cyBcCisgICAgLVd1bmluaXRpYWxpemVkIFwKKyAgICAtV3Vua25vd24tcHJhZ21hcyBcCisgICAg LVd1bnNhZmUtbG9vcC1vcHRpbWl6YXRpb25zIFwKKyAgICAtV3VudXNlZCBcCisgICAgLVd1bnVz ZWQtYnV0LXNldC1wYXJhbWV0ZXIgXAorICAgIC1XdW51c2VkLWJ1dC1zZXQtdmFyaWFibGUgXAor ICAgIC1XdW51c2VkLWZ1bmN0aW9uIFwKKyAgICAtV3VudXNlZC1sYWJlbCBcCisgICAgLVd1bnVz ZWQtbG9jYWwtdHlwZWRlZnMgXAorICAgIC1XdW51c2VkLW1hY3JvcyBcCisgICAgLVd1bnVzZWQt cGFyYW1ldGVyIFwKKyAgICAtV3VudXNlZC1yZXN1bHQgXAorICAgIC1XdW51c2VkLXZhbHVlIFwK KyAgICAtV3VudXNlZC12YXJpYWJsZSBcCisgICAgLVd1c2VsZXNzLWNhc3QgXAorICAgIC1XdmFy YXJncyBcCisgICAgLVd2YXJpYWRpYy1tYWNyb3MgXAorICAgIC1XdmVjdG9yLW9wZXJhdGlvbi1w ZXJmb3JtYW5jZSBcCisgICAgLVd2aXJ0dWFsLW1vdmUtYXNzaWduIFwKKyAgICAtV3ZsYSBcCisg ICAgLVd2b2xhdGlsZS1yZWdpc3Rlci12YXIgXAorICAgIC1Xd3JpdGUtc3RyaW5ncyBcCisgICAg LVd6ZXJvLWFzLW51bGwtcG9pbnRlci1jb25zdGFudCBcCisgICAgXAorICAgIDsgZG8KKyAgICBn bF9tYW55d2Fybl9zZXQ9IiRnbF9tYW55d2Fybl9zZXQgJGdsX21hbnl3YXJuX2l0ZW0iCisgIGRv bmUKKworICAjIGdjYyAtLWhlbHA9d2FybmluZ3Mgb3V0cHV0cyBhbiB1bnVzdWFsIGZvcm0gZm9y IHRoZXNlIG9wdGlvbnM7IGxpc3QKKyAgIyB0aGVtIGhlcmUgc28gdGhhdCB0aGUgYWJvdmUgJ2Nv bW0nIGNvbW1hbmQgZG9lc24ndCByZXBvcnQgYSBmYWxzZSBtYXRjaC4KKyAgZ2xfbWFueXdhcm5f c2V0PSIkZ2xfbWFueXdhcm5fc2V0IC1XYXJyYXktYm91bmRzPTIiCisgIGdsX21hbnl3YXJuX3Nl dD0iJGdsX21hbnl3YXJuX3NldCAtV25vcm1hbGl6ZWQ9bmZjIgorICBnbF9tYW55d2Fybl9zZXQ9 IiRnbF9tYW55d2Fybl9zZXQgLVdzaGlmdC1vdmVyZmxvdz0yIgorICBnbF9tYW55d2Fybl9zZXQ9 IiRnbF9tYW55d2Fybl9zZXQgLVd1bnVzZWQtY29uc3QtdmFyaWFibGU9MiIKKworICAjIFRoZXNl IGFyZSBuZWVkZWQgZm9yIG9sZGVyIEdDQyB2ZXJzaW9ucy4KKyAgaWYgdGVzdCAtbiAiJEdYWCI7 IHRoZW4KKyAgICBjYXNlIGAoJENYWCAtLXZlcnNpb24pIDI+L2Rldi9udWxsYCBpbgorICAgICAg J2crKyAoR0NDKSAnW1swLTNdXS4qIHwgXAorICAgICAgJ2crKyAoR0NDKSAnNC5bWzAtN11dLiop CisgICAgICAgIGdsX21hbnl3YXJuX3NldD0iJGdsX21hbnl3YXJuX3NldCAtZmRpYWdub3N0aWNz LXNob3ctb3B0aW9uIgorICAgICAgICBnbF9tYW55d2Fybl9zZXQ9IiRnbF9tYW55d2Fybl9zZXQg LWZ1bml0LWF0LWEtdGltZSIKKyAgICAgICAgICA7OworICAgIGVzYWMKKyAgZmkKKworICAjIERp c2FibGUgc3BlY2lmaWMgb3B0aW9ucyBhcyBuZWVkZWQuCisgIGlmIHRlc3QgIiRnbF9jdl9jeHhf bm9tZmlfbmVlZGVkIiA9IHllczsgdGhlbgorICAgIGdsX21hbnl3YXJuX3NldD0iJGdsX21hbnl3 YXJuX3NldCAtV25vLW1pc3NpbmctZmllbGQtaW5pdGlhbGl6ZXJzIgorICBmaQorCisgIGlmIHRl c3QgIiRnbF9jdl9jeHhfdW5pbml0aWFsaXplZF9zdXBwb3J0ZWQiID0gbm87IHRoZW4KKyAgICBn bF9tYW55d2Fybl9zZXQ9IiRnbF9tYW55d2Fybl9zZXQgLVduby11bmluaXRpYWxpemVkIgorICBm aQorCisgICQxPSRnbF9tYW55d2Fybl9zZXQKKworICBBQ19MQU5HX1BPUChbQysrXSkKK10pCmRp ZmYgLS1naXQgYS9tNC93YXJuLW9uLXVzZS5tNCBiL200L3dhcm4tb24tdXNlLm00Cm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjA0ZWRmZTg1ZDQ5OTcKLS0tIC9kZXYv bnVsbAorKysgYi9tNC93YXJuLW9uLXVzZS5tNApAQCAtMCwwICsxLDQ5IEBACisjIHdhcm4tb24t dXNlLm00IHNlcmlhbCA5CitkbmwgQ29weXJpZ2h0IChDKSAyMDEwLTIwMjEgRnJlZSBTb2Z0d2Fy ZSBGb3VuZGF0aW9uLCBJbmMuCitkbmwgVGhpcyBmaWxlIGlzIGZyZWUgc29mdHdhcmU7IHRoZSBG cmVlIFNvZnR3YXJlIEZvdW5kYXRpb24KK2RubCBnaXZlcyB1bmxpbWl0ZWQgcGVybWlzc2lvbiB0 byBjb3B5IGFuZC9vciBkaXN0cmlidXRlIGl0LAorZG5sIHdpdGggb3Igd2l0aG91dCBtb2RpZmlj YXRpb25zLCBhcyBsb25nIGFzIHRoaXMgbm90aWNlIGlzIHByZXNlcnZlZC4KKworIyBnbF9XQVJO X09OX1VTRV9QUkVQQVJFKElOQ0xVREVTLCBOQU1FUykKKyMgLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCisjIElmIHRoZSBtb2R1bGUgJ3Bvc2l4Y2hlY2snIGlzIGluIHVz ZToKKyMKKyMgRm9yIGVhY2ggd2hpdGVzcGFjZS1zZXBhcmF0ZWQgZWxlbWVudCBpbiB0aGUgbGlz dCBvZiBOQU1FUywgZGVmaW5lCisjIEhBVkVfUkFXX0RFQ0xfbmFtZSBpZiB0aGUgZnVuY3Rpb24g aGFzIGEgZGVjbGFyYXRpb24gYW1vbmcgSU5DTFVERVMKKyMgZXZlbiBhZnRlciBiZWluZyB1bmRl ZmluZWQgYXMgYSBtYWNyby4KKyMKKyMgU2VlIHdhcm4tb24tdXNlLmggZm9yIHNvbWUgaGludHMg b24gaG93IHRvIHBvaXNvbiBmdW5jdGlvbiBuYW1lcywgYXMKKyMgd2VsbCBhcyBpZGVhcyBvbiBw b2lzb25pbmcgZ2xvYmFsIHZhcmlhYmxlcyBhbmQgbWFjcm9zLiAgTkFNRVMgbWF5CisjIGluY2x1 ZGUgZ2xvYmFsIHZhcmlhYmxlcywgYnV0IHJlbWVtYmVyIHRoYXQgb25seSBmdW5jdGlvbnMgd29y ayB3aXRoCisjIF9HTF9XQVJOX09OX1VTRS4gIFR5cGljYWxseSwgSU5DTFVERVMgb25seSBuZWVk cyB0byBsaXN0IGEgc2luZ2xlCisjIGhlYWRlciwgYnV0IGlmIHRoZSByZXBsYWNlbWVudCBoZWFk ZXIgcHVsbHMgaW4gb3RoZXIgaGVhZGVycyBiZWNhdXNlCisjIHNvbWUgc3lzdGVtcyBkZWNsYXJl IGZ1bmN0aW9ucyBpbiB0aGUgd3JvbmcgaGVhZGVyLCB0aGVuIElOQ0xVREVTCisjIHNob3VsZCBk byBsaWtld2lzZS4KKyMKKyMgSXQgaXMgZ2VuZXJhbGx5IHNhZmUgdG8gYXNzdW1lIGRlY2xhcmF0 aW9ucyBmb3IgZnVuY3Rpb25zIGRlY2xhcmVkCisjIGluIHRoZSBpbnRlcnNlY3Rpb24gb2YgQzg5 IGFuZCBDMTEgKHN1Y2ggYXMgcHJpbnRmKSB3aXRob3V0CisjIG5lZWRpbmcgZ2xfV0FSTl9PTl9V U0VfUFJFUEFSRS4KK0FDX0RFRlVOKFtnbF9XQVJOX09OX1VTRV9QUkVQQVJFXSwKK1sKKyAgbTRf aWZkZWYoW2dsX1BPU0lYQ0hFQ0tdLAorICAgIFttNF9mb3JlYWNoX3coW2dsX2RlY2xdLCBbJDJd LAorICAgICAgIFtBSF9URU1QTEFURShbSEFWRV9SQVdfREVDTF9dQVNfVFJfQ1BQKG00X2RlZm4o W2dsX2RlY2xdKSksCisgICAgICAgICBbRGVmaW5lIHRvIDEgaWYgXW00X2RlZm4oW2dsX2RlY2xd KVsgaXMgZGVjbGFyZWQgZXZlbiBhZnRlcgorICAgICAgICAgIHVuZGVmaW5pbmcgbWFjcm9zLl0p XSlkbmwKKyAgICAgZm9yIGdsX2Z1bmMgaW4gbTRfZmxhdHRlbihbJDJdKTsgZG8KKyAgICAgICBB U19WQVJfUFVTSERFRihbZ2xfU3ltYm9sXSwgW2dsX2N2X2hhdmVfcmF3X2RlY2xfJGdsX2Z1bmNd KWRubAorICAgICAgIEFDX0NBQ0hFX0NIRUNLKFt3aGV0aGVyICRnbF9mdW5jIGlzIGRlY2xhcmVk IHdpdGhvdXQgYSBtYWNyb10sCisgICAgICAgICBbZ2xfU3ltYm9sXSwKKyAgICAgICAgIFtBQ19D T01QSUxFX0lGRUxTRShbQUNfTEFOR19QUk9HUkFNKFskMV0sCitbWyN1bmRlZiAkZ2xfZnVuYwor ICAodm9pZCkgJGdsX2Z1bmM7XV0pXSwKKyAgICAgICAgICAgW0FTX1ZBUl9TRVQoW2dsX1N5bWJv bF0sIFt5ZXNdKV0sIFtBU19WQVJfU0VUKFtnbF9TeW1ib2xdLCBbbm9dKV0pXSkKKyAgICAgICBB U19WQVJfSUYoW2dsX1N5bWJvbF0sIFt5ZXNdLAorICAgICAgICAgW0FDX0RFRklORV9VTlFVT1RF RChBU19UUl9DUFAoW0hBVkVfUkFXX0RFQ0xfJGdsX2Z1bmNdKSwgWzFdKQorICAgICAgICAgIGRu bCBzaG9ydGN1dCAtIGlmIHRoZSByYXcgZGVjbGFyYXRpb24gZXhpc3RzLCB0aGVuIHNldCBhIGNh Y2hlCisgICAgICAgICAgZG5sIHZhcmlhYmxlIHRvIGFsbG93IHNraXBwaW5nIGFueSBsYXRlciBB Q19DSEVDS19ERUNMIGVmZm9ydHMKKyAgICAgICAgICBldmFsIGFjX2N2X2hhdmVfZGVjbF8kZ2xf ZnVuYz15ZXNdKQorICAgICAgIEFTX1ZBUl9QT1BERUYoW2dsX1N5bWJvbF0pZG5sCisgICAgIGRv bmUKKyAgICBdKQorXSkKZGlmZiAtLWdpdCBhL200L3dpbnRfdC5tNCBiL200L3dpbnRfdC5tNApu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4yZmM3NDY3ZjQyMjhkCi0t LSAvZGV2L251bGwKKysrIGIvbTQvd2ludF90Lm00CkBAIC0wLDAgKzEsNTcgQEAKKyMgd2ludF90 Lm00IHNlcmlhbCAxMAorZG5sIENvcHlyaWdodCAoQykgMjAwMywgMjAwNy0yMDIxIEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLgorZG5sIFRoaXMgZmlsZSBpcyBmcmVlIHNvZnR3YXJlOyB0 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uCitkbmwgZ2l2ZXMgdW5saW1pdGVkIHBlcm1pc3Np b24gdG8gY29weSBhbmQvb3IgZGlzdHJpYnV0ZSBpdCwKK2RubCB3aXRoIG9yIHdpdGhvdXQgbW9k aWZpY2F0aW9ucywgYXMgbG9uZyBhcyB0aGlzIG5vdGljZSBpcyBwcmVzZXJ2ZWQuCisKK2RubCBG cm9tIEJydW5vIEhhaWJsZS4KK2RubCBUZXN0IHdoZXRoZXIgPHdjaGFyLmg+IGhhcyB0aGUgJ3dp bnRfdCcgdHlwZSBhbmQgd2hldGhlciBnbnVsaWIncworZG5sIDx3Y2hhci5oPiBvciA8d2N0eXBl Lmg+IHdvdWxkLCBpZiBwcmVzZW50LCBvdmVycmlkZSAnd2ludF90Jy4KK2RubCBQcmVyZXF1aXNp dGU6IEFDX1BST0dfQ0MKKworQUNfREVGVU4oW2d0X1RZUEVfV0lOVF9UXSwKK1sKKyAgQUNfQ0FD SEVfQ0hFQ0soW2ZvciB3aW50X3RdLCBbZ3RfY3ZfY193aW50X3RdLAorICAgIFtBQ19DT01QSUxF X0lGRUxTRSgKKyAgICAgICBbQUNfTEFOR19QUk9HUkFNKAorICAgICAgICAgIFtbI2luY2x1ZGUg PHdjaGFyLmg+CisgICAgICAgICAgICB3aW50X3QgZm9vID0gKHdjaGFyX3QpJ1wwJztdXSwKKyAg ICAgICAgICBbW11dKV0sCisgICAgICAgW2d0X2N2X2Nfd2ludF90PXllc10sCisgICAgICAgW2d0 X2N2X2Nfd2ludF90PW5vXSldKQorICBpZiB0ZXN0ICRndF9jdl9jX3dpbnRfdCA9IHllczsgdGhl bgorICAgIEFDX0RFRklORShbSEFWRV9XSU5UX1RdLCBbMV0sIFtEZWZpbmUgaWYgeW91IGhhdmUg dGhlICd3aW50X3QnIHR5cGUuXSkKKworICAgIGRubCBEZXRlcm1pbmUgd2hldGhlciBnbnVsaWIn cyA8d2NoYXIuaD4gb3IgPHdjdHlwZS5oPiB3b3VsZCwgaWYgcHJlc2VudCwKKyAgICBkbmwgb3Zl cnJpZGUgJ3dpbnRfdCcuCisgICAgQUNfQ0FDSEVfQ0hFQ0soW3doZXRoZXIgd2ludF90IGlzIGxh cmdlIGVub3VnaF0sCisgICAgICBbZ2xfY3ZfdHlwZV93aW50X3RfbGFyZ2VfZW5vdWdoXSwKKyAg ICAgIFtBQ19DT01QSUxFX0lGRUxTRSgKKyAgICAgICAgIFtBQ19MQU5HX1BST0dSQU0oCisgICAg ICAgICAgICBbWyNpbmNsdWRlIDx3Y2hhci5oPgorICAgICAgICAgICAgICBpbnQgdmVyaWZ5W3Np emVvZiAod2ludF90KSA8IHNpemVvZiAoaW50KSA/IC0xIDogMV07CisgICAgICAgICAgICBdXSld LAorICAgICAgICAgW2dsX2N2X3R5cGVfd2ludF90X2xhcmdlX2Vub3VnaD15ZXNdLAorICAgICAg ICAgW2dsX2N2X3R5cGVfd2ludF90X2xhcmdlX2Vub3VnaD1ub10pXSkKKyAgICBpZiB0ZXN0ICRn bF9jdl90eXBlX3dpbnRfdF9sYXJnZV9lbm91Z2ggPSBubzsgdGhlbgorICAgICAgR05VTElCX09W RVJSSURFU19XSU5UX1Q9MQorICAgIGVsc2UKKyAgICAgIEdOVUxJQl9PVkVSUklERVNfV0lOVF9U PTAKKyAgICBmaQorICBlbHNlCisgICAgR05VTElCX09WRVJSSURFU19XSU5UX1Q9MAorICBmaQor ICBBQ19TVUJTVChbR05VTElCX09WRVJSSURFU19XSU5UX1RdKQorXSkKKworZG5sIFByZXJlcXVp c2l0ZXMgb2YgdGhlICd3aW50X3QnIG92ZXJyaWRlLgorQUNfREVGVU4oW2dsX1RZUEVfV0lOVF9U X1BSRVJFUV0sCitbCisgIEFDX0NIRUNLX0hFQURFUlNfT05DRShbY3J0ZGVmcy5oXSkKKyAgaWYg dGVzdCAkYWNfY3ZfaGVhZGVyX2NydGRlZnNfaCA9IHllczsgdGhlbgorICAgIEhBVkVfQ1JUREVG U19IPTEKKyAgZWxzZQorICAgIEhBVkVfQ1JUREVGU19IPTAKKyAgZmkKKyAgQUNfU1VCU1QoW0hB VkVfQ1JUREVGU19IXSkKK10pCmRpZmYgLS1naXQgYS9zcmMvcGR1bXBlci5jIGIvc3JjL3BkdW1w ZXIuYwppbmRleCAzMzc3NDJmZGE0YWRlLi44OTM5MDU3MjE3ZWY4IDEwMDY0NAotLS0gYS9zcmMv cGR1bXBlci5jCisrKyBiL3NyYy9wZHVtcGVyLmMKQEAgLTU0NjcsOCArNTQ2Nyw2IEBAIERFRlVO ICgicGR1bXBlci1zdGF0cyIsIEZwZHVtcGVyX3N0YXRzLCBTcGR1bXBlcl9zdGF0cywgMCwgMCwg MCwKIAkJRmNvbnMgKFFkdW1wX2ZpbGVfbmFtZSwgZHVtcF9mbikpOwogfQogCi0jZW5kaWYgLyog SEFWRV9QRFVNUEVSICovCi0KIAwKIHN0YXRpYyB2b2lkCiB0aGF3X2hhc2hfdGFibGVzICh2b2lk KQpAQCAtNTQ3OCwxMCArNTQ3NiwxNCBAQCB0aGF3X2hhc2hfdGFibGVzICh2b2lkKQogICAgIGhh c2hfdGFibGVfdGhhdyAoQVJFRiAoaGFzaF90YWJsZXMsIGkpKTsKIH0KIAorI2VuZGlmIC8qIEhB VkVfUERVTVBFUiAqLworCiB2b2lkCiBpbml0X3BkdW1wZXJfb25jZSAodm9pZCkKIHsKKyNpZmRl ZiBIQVZFX1BEVU1QRVIKICAgcGR1bXBlcl9kb19ub3dfYW5kX2FmdGVyX2xvYWQgKHRoYXdfaGFz aF90YWJsZXMpOworI2VuZGlmIC8qIEhBVkVfUERVTVBFUiAqLwogfQogCiB2b2lkCi0tIAoyLjMw LjEKCg== --000000000000168bbe05bce2eade-- From unknown Mon Aug 18 11:25:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#46965: 28.0.50; unexec does not build (or work) Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 06 Mar 2021 20:05:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46965 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Pip Cet Cc: 46965@debbugs.gnu.org Received: via spool by 46965-submit@debbugs.gnu.org id=B46965.16150610892229 (code B ref 46965); Sat, 06 Mar 2021 20:05:01 +0000 Received: (at 46965) by debbugs.gnu.org; 6 Mar 2021 20:04:49 +0000 Received: from localhost ([127.0.0.1]:38395 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIdAO-0000Zs-Pk for submit@debbugs.gnu.org; Sat, 06 Mar 2021 15:04:49 -0500 Received: from eggs.gnu.org ([209.51.188.92]:55696) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIdAN-0000Zg-R5 for 46965@debbugs.gnu.org; Sat, 06 Mar 2021 15:04:48 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:45180) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lIdAI-0000qU-MS; Sat, 06 Mar 2021 15:04:42 -0500 Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1589 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lIdAH-0004XR-VH; Sat, 06 Mar 2021 15:04:42 -0500 Date: Sat, 06 Mar 2021 22:04:30 +0200 Message-Id: <83czwcujzl.fsf@gnu.org> From: Eli Zaretskii In-Reply-To: (message from Pip Cet on Sat, 6 Mar 2021 19:07:02 +0000) References: X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > From: Pip Cet > Date: Sat, 6 Mar 2021 19:07:02 +0000 > > Here's the patch to make unexec build. Note that this patch removes > the free() wrapper from lib/, so if your libc's free() is broken and > sets errno, that bug will be once again exposed. Hmm... why do we need to add so much stuff from Gnulib? From unknown Mon Aug 18 11:25:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#46965: 28.0.50; unexec does not build (or work) Resent-From: Pip Cet Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 06 Mar 2021 20:21:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46965 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii Cc: 46965@debbugs.gnu.org Received: via spool by 46965-submit@debbugs.gnu.org id=B46965.16150620043829 (code B ref 46965); Sat, 06 Mar 2021 20:21:01 +0000 Received: (at 46965) by debbugs.gnu.org; 6 Mar 2021 20:20:04 +0000 Received: from localhost ([127.0.0.1]:38425 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIdPA-0000zh-CY for submit@debbugs.gnu.org; Sat, 06 Mar 2021 15:20:04 -0500 Received: from mail-ot1-f49.google.com ([209.85.210.49]:44233) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lIdP9-0000z1-6C for 46965@debbugs.gnu.org; Sat, 06 Mar 2021 15:20:03 -0500 Received: by mail-ot1-f49.google.com with SMTP id f33so5321182otf.11 for <46965@debbugs.gnu.org>; Sat, 06 Mar 2021 12:20:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=vqfvks3mPzPqjF4fnj2ca43PHe1suziMaIP4H7bAHjw=; b=HXPS2g2zY63+LEqKmUQUe4669Wxye2RAk09CkhSkzCBOpzkAqxbJkVZVnxJRDAiJE6 VfCiMrIg9aB3O7wQ9CsVi4yTDddkDJLFDAx4zPS4oWhFjHkQV8+u66piM+eN3kc1bs/E kll+O+25ixdL11HugbdkoQ8Lxm0Qn7XqlQb1wxnX9TiDiu49U4zoRZxz/fNHwguF+pSb B4m1wNTsHQtlW23OnFWXLQscotDlTG0Xt8il/Xiq+ViiD5gltpACoUEF+vypsRH7CBWW kgi0xNfbQWPUpV+hb/iajPloDx8FJ6SlKhYVKaR/nm4+E/BTzzzGhwJaotghoD2/sma6 dcDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=vqfvks3mPzPqjF4fnj2ca43PHe1suziMaIP4H7bAHjw=; b=qU/ya+zz2sDtVgZVRXFRiqF5T/7MpV59fWItqSq8YCRLC+0V65Qxvg5FZ1jWVKg/bv 4o4A3mrrgLq8jNjDT3tKo2YKyqaIpcD5LyGA9kqD3tvIBBfBswQ3vqrzfO35/VvwLbQl 2vpfg3PE/DOke/Qqli6ReAnBvMPPbzO5qTYuWJu4ZlvkMDE/2yW8HXdsEMmRtF/8QR7b ACou9hz9gSzLlHFW7SwDz9Gt1DYHZvTrrabjBV2/6NUgzAC8OfYlACj33mERilnVgglU dGDjLgYOjuYUHUQ7MZxhwU1il0IThFVUGSazAasa3MbrAS+V6Z9iwheqYeQeDMFJjsFn r7NQ== X-Gm-Message-State: AOAM533XxaAiRQyufI+sFQaTSVWRWuPivl/bPHiOt+3zKN+0V1apsYiD Io2FdCXqrmyNDIu/v04Td4bpBCFj0jfTT1V+EI6eCHfM7bw= X-Google-Smtp-Source: ABdhPJxLuJtBRQThDmn2xtWWCNaLz1IHE97uywgOOdXRfaqPXOGut/PkvXXBgT/9TOYghGJg1odSLJVT+NiG4UordBM= X-Received: by 2002:a05:6830:1011:: with SMTP id a17mr11326879otp.154.1615061997596; Sat, 06 Mar 2021 12:19:57 -0800 (PST) MIME-Version: 1.0 References: <83czwcujzl.fsf@gnu.org> In-Reply-To: <83czwcujzl.fsf@gnu.org> From: Pip Cet Date: Sat, 6 Mar 2021 20:19:21 +0000 Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) On Sat, Mar 6, 2021 at 8:04 PM Eli Zaretskii wrote: > > From: Pip Cet > > Date: Sat, 6 Mar 2021 19:07:02 +0000 > > Here's the patch to make unexec build. Note that this patch removes > > the free() wrapper from lib/, so if your libc's free() is broken and > > sets errno, that bug will be once again exposed. > > Hmm... why do we need to add so much stuff from Gnulib? We don't, I hope, but I don't know how to properly regenerate the gnulib dependencies :-) From unknown Mon Aug 18 11:25:54 2025 X-Loop: help-debbugs@gnu.org Subject: bug#46965: 28.0.50; unexec does not build (or work) Resent-From: Lars Ingebrigtsen Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 20 Jun 2022 01:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46965 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Pip Cet Cc: 46965@debbugs.gnu.org Received: via spool by 46965-submit@debbugs.gnu.org id=B46965.165568843524390 (code B ref 46965); Mon, 20 Jun 2022 01:28:02 +0000 Received: (at 46965) by debbugs.gnu.org; 20 Jun 2022 01:27:15 +0000 Received: from localhost ([127.0.0.1]:53574 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o36CB-0006LI-E8 for submit@debbugs.gnu.org; Sun, 19 Jun 2022 21:27:15 -0400 Received: from quimby.gnus.org ([95.216.78.240]:56546) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o36C9-0006L4-KO for 46965@debbugs.gnu.org; Sun, 19 Jun 2022 21:27:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=ad5SxCG9YkfBxKC3X4rhP5V3+Ygp3VXrfCSqMUZUrqQ=; b=Abuea3HQcUq78PFYy1B1cgusEI sujf2iIsWfqD/P/91l3ve7rDGBsXgjZFY0YvnPnzkaQ2Tzs/QHnoHv4YkMaDkb8Jsku2CX7Hfz42F S6aZ1HHmwc6jlB6HNVaWoRvPVUlTB8X2ZmDTr4JAIjdvpbw5Xhq1Bl3Zdxm2GqXqN300=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o36C0-0004WU-Il; Mon, 20 Jun 2022 03:27:07 +0200 From: Lars Ingebrigtsen References: Date: Mon, 20 Jun 2022 03:27:02 +0200 In-Reply-To: (Pip Cet's message of "Sat, 6 Mar 2021 14:01:44 +0000") Message-ID: <87a6a8qg49.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: Pip Cet writes: > On this Debian-based x86_64-pc-linux-gnu system, configuring with > --with-dumping=unexec results in various errors: > > 1. a compilation error in pdumper.c. Easy to fix, my fault, but then there's [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) Pip Cet writes: > On this Debian-based x86_64-pc-linux-gnu system, configuring with > --with-dumping=unexec results in various errors: > > 1. a compilation error in pdumper.c. Easy to fix, my fault, but then there's ... > 2. a segfault when running the dumped image. The problem is we can't > use glibc's malloc when running a dumped image, so we need to force > use of hybrid malloc. But then... (I'm going through old bug reports that unfortunately weren't resolved at the time.) It looks like this was fixed in: commit 44ed8f6555288f00b982f21e68ac5a51372279de Author: Eli Zaretskii AuthorDate: Sun Apr 4 10:10:00 2021 +0300 And the unexec build seems to work OK for me still, so I'm closing this bug report. (If there's more to be done here, please respond to the debbugs address and we'll reopen.) -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 19 21:27:22 2022 Received: (at control) by debbugs.gnu.org; 20 Jun 2022 01:27:22 +0000 Received: from localhost ([127.0.0.1]:53577 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o36CI-0006Ld-Lz for submit@debbugs.gnu.org; Sun, 19 Jun 2022 21:27:22 -0400 Received: from quimby.gnus.org ([95.216.78.240]:56560) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o36CG-0006LJ-Lc for control@debbugs.gnu.org; Sun, 19 Jun 2022 21:27:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnus.org; s=20200322; h=Subject:From:To:Message-Id:Date:Sender:Reply-To:Cc: MIME-Version:Content-Type:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=9FpJlbYH0eRYjY4rl1WfRCihLzl1CGO23ltEIrvZfDI=; b=qhEO4+P7MRn81gq+qqTJ9hB9zs fMuwiIvMHBUo9DuxWl9qtYB5zm3vf/qV9IndIYd5CXA/dir+Q34O+75eu8y4PAj0YuFvEa2pTmQPK tyD0FVWfeqf/Vk6wgsMxzYLA/JDiKOKMukxTaZ8yLhiTGVLVXuefNHRgGG7sPCaaecxc=; Received: from [84.212.220.105] (helo=xo) by quimby.gnus.org with esmtpsa (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o36C8-0004Wc-QG for control@debbugs.gnu.org; Mon, 20 Jun 2022 03:27:14 +0200 Date: Mon, 20 Jun 2022 03:27:12 +0200 Message-Id: <878rpsqg3z.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #46965 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: close 46965 quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) close 46965 quit