From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ioannis Kappas Newsgroups: gmane.emacs.bugs Subject: bug#48137: 27.2; `package-install-file' fails when loading a package file with DOS line endings Date: Sun, 6 Jun 2021 10:11:10 +0100 Message-ID: References: <83tunj651i.fsf@gnu.org> <83lf8u68bu.fsf@gnu.org> <83mtta4gtf.fsf@gnu.org> <83fsz24f2x.fsf@gnu.org> <83v97x2xum.fsf@gnu.org> <83bl9nevd3.fsf@gnu.org> <831rad5t18.fsf@gnu.org> <835yz26jdk.fsf@gnu.org> <83k0nh6395.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000d4d4c205c4154e31" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="15629"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 48137@debbugs.gnu.org, Stefan Monnier To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jun 06 11:12:10 2021 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lpopG-0003ll-1A for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 06 Jun 2021 11:12:10 +0200 Original-Received: from localhost ([::1]:43626 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lpopE-0007Bs-Lx for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 06 Jun 2021 05:12:08 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:35282) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lpop8-0007Bg-Gh for bug-gnu-emacs@gnu.org; Sun, 06 Jun 2021 05:12:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:39080) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lpop8-0007RI-AN for bug-gnu-emacs@gnu.org; Sun, 06 Jun 2021 05:12:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lpop8-0005M5-5X for bug-gnu-emacs@gnu.org; Sun, 06 Jun 2021 05:12:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Ioannis Kappas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 06 Jun 2021 09:12:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 48137 X-GNU-PR-Package: emacs Original-Received: via spool by 48137-submit@debbugs.gnu.org id=B48137.162297068620543 (code B ref 48137); Sun, 06 Jun 2021 09:12:02 +0000 Original-Received: (at 48137) by debbugs.gnu.org; 6 Jun 2021 09:11:26 +0000 Original-Received: from localhost ([127.0.0.1]:50626 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpooY-0005LH-IZ for submit@debbugs.gnu.org; Sun, 06 Jun 2021 05:11:26 -0400 Original-Received: from mail-ot1-f41.google.com ([209.85.210.41]:37815) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lpooX-0005L4-1s for 48137@debbugs.gnu.org; Sun, 06 Jun 2021 05:11:25 -0400 Original-Received: by mail-ot1-f41.google.com with SMTP id v19-20020a0568301413b0290304f00e3d88so13655170otp.4 for <48137@debbugs.gnu.org>; Sun, 06 Jun 2021 02:11:25 -0700 (PDT) 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=yn8Od6UIjetq5lY92U+E8I1Y/ownPqyXtqjPANSgKJw=; b=O2A/glqNETiX8/g42HqwAvfKOJA9Sz9/pHWzYIL6ZW467TbtYobpRCR0jdSi1ANTIe pEMBvqgySoCJHMcPbN7WoOFtKkq2U2H6fD0/DJ7Gow0TRWmw7F4r2VHNsZsoBn2KVDrw iKbp5e44PEd1XOqgc/UgIrPyXyRvXNyexa4dEgi5DO2Bt9hIV67VeaD/YWPq1LpHsdKe KD4cQ+X37300Ux97QOtW8+Mp9Hj2elYIReFWoaW02jG8mWTc+2X8erSyXBdr59KNMlQI AsGxsAvgUHy/7bGhi8jOjGpikZY99LxsR7OrItiBpkZH2MSUYnzYCuPJU1ndBsDO2GHI ZLBQ== 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=yn8Od6UIjetq5lY92U+E8I1Y/ownPqyXtqjPANSgKJw=; b=C/5M3LOIhufQC2v5vqc50/MQmpi4YSj5zlkRn8O+vq7FqSdqgUA4NuXs4dm30VKobf aIgYTiidbyfXPgUh7Pg0EUxxWl8a4KQOinSYTJUveqjjo3Lp05a2ZC/k+oWpPeekYxZV HUReOEg3qe4hBGpG7QKuIGWIblFJMJnldrpfoCn1Fc3RUAY8PqqconcGPXyngabiJu/d faNCJT5YiZ1jte0JH5HnNnE+spbbdk1GKBN9YBvmmFu3u7fzrUBl55+KT36UU5vbduyJ Lq6bnc7gOaVJsygaxm1+6oQvJ9LQeFYmQm0nttmSGQxpbbw3xJzcrAcLeda/3mS+KDkV bqsQ== X-Gm-Message-State: AOAM530dwldsJk9B2vcOgQ4iNAfXYE9FVnMXMYGj5kzSYeADALUj3dI9 Q0Icr1yCTESR9dpEJmejtw9b1R7CIdMBMJlfKeU= X-Google-Smtp-Source: ABdhPJxmFvIPPhWIE3+7cfXLB9gWavTyavD3HaC+v3guE0ebOKKxlrRuc9maONSi5DYPBwMgsK11C03Rx66ea7hAx+U= X-Received: by 2002:a05:6830:1f52:: with SMTP id u18mr9535869oth.298.1622970679473; Sun, 06 Jun 2021 02:11:19 -0700 (PDT) In-Reply-To: <83k0nh6395.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:208098 Archived-At: --000000000000d4d4c205c4154e31 Content-Type: text/plain; charset="UTF-8" On Sat, May 29, 2021 at 3:09 PM Eli Zaretskii wrote: > > > From: Stefan Monnier > > Cc: Ioannis Kappas , 48137@debbugs.gnu.org > > Date: Sat, 29 May 2021 09:59:01 -0400 > > > > >> Please find below a patch to read package headers from a temporarily > > >> decoded buffer, while keeping the literal buffer (which will be used > > >> to install the package) intact. > > > > > > Stefan, any comments? > > > > No particular comment from me, except: this is tricky enough that > > it would benefit from some regression tests. > > Thanks. Yes, that's a good idea. Ioannis, could you perhaps add some > tests, both using existing packages and perhaps also some you concoct > just for testing purposes? Please find attached a patch with the earlier fix and two new ert package tests. `package-test-install-file' tests the installation of single .el file and a .tar archive packages as referenced from the test harness. `package-test-install-file-EOLs' rewrites the single .el package multiple time with different EOL conventions ('unix, 'dos and 'mac), installs them and confirms that they are written verbatim without modifications to the package directory by comparing that the md5 hashes of the installing package vs the installed package are the same. All package tests pass locally both on GNU/Linux and MS-Windows. Please feel free to scrutinize the patch and/or make modifications. Thanks --000000000000d4d4c205c4154e31 Content-Type: application/octet-stream; name="emacs-bug48137.patch" Content-Disposition: attachment; filename="emacs-bug48137.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kpkyqv3p0 ZGlmZiAtLWdpdCBhL2xpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLmVsIGIvbGlzcC9lbWFjcy1saXNw L3BhY2thZ2UuZWwKaW5kZXggNWRmOWI1MzY1Ny4uMWI4ZjMzMDRiYSAxMDA2NDQKLS0tIGEvbGlz cC9lbWFjcy1saXNwL3BhY2thZ2UuZWwKKysrIGIvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UuZWwK QEAgLTIxOTUsOCArMjE5NSwyMiBAQCBwYWNrYWdlLWluc3RhbGwtZnJvbS1idWZmZXIKICAgICAg ICAgICAgICgoZGVyaXZlZC1tb2RlLXAgJ3Rhci1tb2RlKQogICAgICAgICAgICAgIChwYWNrYWdl LXRhci1maWxlLWluZm8pKQogICAgICAgICAgICAgKHQKLSAgICAgICAgICAgICAoc2F2ZS1leGN1 cnNpb24KLSAgICAgICAgICAgICAgKHBhY2thZ2UtYnVmZmVyLWluZm8pKSkpKQorICAgICAgICAg ICAgIDs7IFBhY2thZ2UgaGVhZGVycyBzaG91bGQgYmUgcGFyc2VkIGZyb20gZGVjb2RlZCB0ZXh0 CisgICAgICAgICAgICAgOzsgKHNlZSBCdWcjNDgxMzcpIHdoZXJlIHBvc3NpYmxlLgorICAgICAg ICAgICAgIChpZiAoYW5kIChlcSBidWZmZXItZmlsZS1jb2Rpbmctc3lzdGVtICduby1jb252ZXJz aW9uKQorICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlci1maWxlLW5hbWUpCisgICAgICAgICAg ICAgICAgIChsZXQqICgocGFja2FnZS1idWZmZXIgKGN1cnJlbnQtYnVmZmVyKSkKKyAgICAgICAg ICAgICAgICAgICAgICAgIChkZWNvZGluZy1zeXN0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAg ICAoY2FyIChmaW5kLW9wZXJhdGlvbi1jb2Rpbmctc3lzdGVtICdpbnNlcnQtZmlsZS1jb250ZW50 cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGNvbnMgYnVmZmVyLWZpbGUtbmFtZQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFja2FnZS1idWZmZXIpKSkp KQorICAgICAgICAgICAgICAgICAgICh3aXRoLXRlbXAtYnVmZmVyCisgICAgICAgICAgICAgICAg ICAgICAoaW5zZXJ0LWJ1ZmZlci1zdWJzdHJpbmcgcGFja2FnZS1idWZmZXIpCisgICAgICAgICAg ICAgICAgICAgICAoZGVjb2RlLWNvZGluZy1yZWdpb24gKHBvaW50LW1pbikgKHBvaW50LW1heCkg ZGVjb2Rpbmctc3lzdGVtKQorICAgICAgICAgICAgICAgICAgICAgKHBhY2thZ2UtYnVmZmVyLWlu Zm8pKSkKKworICAgICAgICAgICAgICAgKHNhdmUtZXhjdXJzaW9uCisgICAgICAgICAgICAgICAg IChwYWNrYWdlLWJ1ZmZlci1pbmZvKSkpKSkpCiAgICAgICAgICAobmFtZSAocGFja2FnZS1kZXNj LW5hbWUgcGtnLWRlc2MpKSkKICAgICA7OyBEb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgZGVwZW5k ZW5jaWVzLgogICAgIChsZXQqICgocmVxdWlyZXMgKHBhY2thZ2UtZGVzYy1yZXFzIHBrZy1kZXNj KSkKQEAgLTIyMjIsNiArMjIzNiw3IEBAIHBhY2thZ2UtaW5zdGFsbC1maWxlCiAgICAgICAgICAg KHNldHEgZGVmYXVsdC1kaXJlY3RvcnkgZmlsZSkKICAgICAgICAgICAoZGlyZWQtbW9kZSkpCiAg ICAgICAoaW5zZXJ0LWZpbGUtY29udGVudHMtbGl0ZXJhbGx5IGZpbGUpCisgICAgICAoc2V0LXZp c2l0ZWQtZmlsZS1uYW1lIGZpbGUpCiAgICAgICAod2hlbiAoc3RyaW5nLW1hdGNoICJcXC50YXJc XCciIGZpbGUpICh0YXItbW9kZSkpKQogICAgIChwYWNrYWdlLWluc3RhbGwtZnJvbS1idWZmZXIp KSkKIApkaWZmIC0tZ2l0IGEvdGVzdC9saXNwL2VtYWNzLWxpc3AvcGFja2FnZS10ZXN0cy5lbCBi L3Rlc3QvbGlzcC9lbWFjcy1saXNwL3BhY2thZ2UtdGVzdHMuZWwKaW5kZXggNjdkNjQ3ZDNiOS4u Mjk0MzU3OTk1NSAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2VtYWNzLWxpc3AvcGFja2FnZS10ZXN0 cy5lbAorKysgYi90ZXN0L2xpc3AvZW1hY3MtbGlzcC9wYWNrYWdlLXRlc3RzLmVsCkBAIC0yNjMs NiArMjYzLDc0IEBAIHBhY2thZ2UtdGVzdC1pbnN0YWxsLXNpbmdsZQogICAgICAgKHNob3VsZCAo ZmlsZS1leGlzdHMtcCBhdXRvbG9hZHMtZmlsZSkpCiAgICAgICAoc2hvdWxkLW5vdCAoZ2V0LWZp bGUtYnVmZmVyIGF1dG9sb2Fkcy1maWxlKSkpKSkKIAorKGVydC1kZWZ0ZXN0IHBhY2thZ2UtdGVz dC1pbnN0YWxsLWZpbGUgKCkKKyAgIkluc3RhbGwgZmlsZXMgd2l0aCBgcGFja2FnZS1pbnN0YWxs LWZpbGUnLiIKKyAgKHdpdGgtcGFja2FnZS10ZXN0ICg6YmFzZWRpciAoZXJ0LXJlc291cmNlLWRp cmVjdG9yeSkpCisgICAgKHBhY2thZ2UtaW5pdGlhbGl6ZSkKKyAgICAobGV0KiAoKHBrZy1lbCAi c2ltcGxlLXNpbmdsZS0xLjMuZWwiKQorICAgICAgICAgICAoc291cmNlLWZpbGUgKGV4cGFuZC1m aWxlLW5hbWUgcGtnLWVsIChlcnQtcmVzb3VyY2UtZGlyZWN0b3J5KSkpKQorICAgICAgKHNob3Vs ZC1ub3QgKHBhY2thZ2UtaW5zdGFsbGVkLXAgJ3NpbXBsZS1zaW5nbGUpKQorICAgICAgKHBhY2th Z2UtaW5zdGFsbC1maWxlIHNvdXJjZS1maWxlKQorICAgICAgKHNob3VsZCAocGFja2FnZS1pbnN0 YWxsZWQtcCAnc2ltcGxlLXNpbmdsZSkpCisgICAgICAocGFja2FnZS1kZWxldGUgKGNhZHIgKGFz c3EgJ3NpbXBsZS1zaW5nbGUgcGFja2FnZS1hbGlzdCkpKQorICAgICAgKHNob3VsZC1ub3QgKHBh Y2thZ2UtaW5zdGFsbGVkLXAgJ3NpbXBsZS1zaW5nbGUpKSkKKworICAgIChsZXQqICgocGtnLWVs ICJtdWx0aS1maWxlLTAuMi4zLnRhciIpCisgICAgICAgICAgIChzb3VyY2UtZmlsZSAoZXhwYW5k LWZpbGUtbmFtZSBwa2ctZWwgKGVydC1yZXNvdXJjZS1kaXJlY3RvcnkpKSkpCisgICAgICAocGFj a2FnZS1pbml0aWFsaXplKQorICAgICAgKHNob3VsZC1ub3QgKHBhY2thZ2UtaW5zdGFsbGVkLXAg J211bHRpZS1maWxlKSkKKyAgICAgIChwYWNrYWdlLWluc3RhbGwtZmlsZSBzb3VyY2UtZmlsZSkK KyAgICAgIChzaG91bGQgKHBhY2thZ2UtaW5zdGFsbGVkLXAgJ211bHRpLWZpbGUpKQorICAgICAg KHBhY2thZ2UtZGVsZXRlIChjYWRyIChhc3NxICdtdWx0aS1maWxlIHBhY2thZ2UtYWxpc3QpKSkp CisgICAgKSkKKworKGVydC1kZWZ0ZXN0IHBhY2thZ2UtdGVzdC1pbnN0YWxsLWZpbGUtRU9McyAo KQorICAiSW5zdGFsbCBzYW1lIGZpbGUgbXVsdGlwbGUgdGltZSB3aXRoIGBwYWNrYWdlLWluc3Rh bGwtZmlsZScKK2J1dCB3aXRoIGEgZGlmZmVyZW50IGVuZCBvZiBsaW5lIGNvbnZlbnRpb24gKGJ1 ZyM0ODEzNykuIgorICAod2l0aC1wYWNrYWdlLXRlc3QgKDpiYXNlZGlyIChlcnQtcmVzb3VyY2Ut ZGlyZWN0b3J5KSkKKyAgICAocGFja2FnZS1pbml0aWFsaXplKQorICAgIChsZXQqICgocGtnLWVs ICJzaW1wbGUtc2luZ2xlLTEuMy5lbCIpCisgICAgICAgICAgIChzb3VyY2UtZmlsZSAoZXhwYW5k LWZpbGUtbmFtZSBwa2ctZWwgKGVydC1yZXNvdXJjZS1kaXJlY3RvcnkpKSkpCisKKyAgICAgICh3 aXRoLXRlbXAtYnVmZmVyCisgICAgICAgIChpbnNlcnQtZmlsZS1jb250ZW50cyBzb3VyY2UtZmls ZSkKKworICAgICAgICAobGV0IChoYXNoZXMpCisgICAgICAgICAgKGRvbGlzdCAoY29kaW5nICco dW5peCBkb3MgbWFjKSBoYXNoZXMpCisgICAgICAgICAgICAobGV0KiAoKGVvbC1maWxlIChleHBh bmQtZmlsZS1uYW1lIHBrZy1lbCBwYWNrYWdlLXRlc3QtdXNlci1kaXIpKSkKKyAgICAgICAgICAg ICAgOzsgc2F2ZSBwYWNrYWdlIHdpdGggdGhpcyBFT0wgY29udmVudGlvbi4KKyAgICAgICAgICAg ICAgKHNldC1idWZmZXItZmlsZS1jb2Rpbmctc3lzdGVtIGNvZGluZykKKyAgICAgICAgICAgICAg KHdyaXRlLXJlZ2lvbiAocG9pbnQtbWluKSAocG9pbnQtbWF4KSBlb2wtZmlsZSkKKworICAgICAg ICAgICAgICAoc2hvdWxkLW5vdCAocGFja2FnZS1pbnN0YWxsZWQtcCAnc2ltcGxlLXNpbmdsZSkp CisgICAgICAgICAgICAgIChwYWNrYWdlLWluc3RhbGwtZmlsZSBlb2wtZmlsZSkKKyAgICAgICAg ICAgICAgKHNob3VsZCAocGFja2FnZS1pbnN0YWxsZWQtcCAnc2ltcGxlLXNpbmdsZSkpCisKKyAg ICAgICAgICAgICAgOzsgY2hlY2sgdGhlIHBhY2thZ2UgZmlsZSBoYXMgYmVlbiBpbnN0YWxsZWQg dW5tb2RpZmllZC4KKyAgICAgICAgICAgICAgKGxldCAoKGVvbC1oYXNoICh3aXRoLXRlbXAtYnVm ZmVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChpbnNlcnQtZmlsZS1jb250ZW50 cy1saXRlcmFsbHkgZW9sLWZpbGUpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChi dWZmZXItaGFzaCkpKSkKKyAgICAgICAgICAgICAgICA7OyBhbHNvIHBlcmZvcm0gYW4gYWRkaXRp b25hbCBjaGVjayB0aGF0IHRoZSBwYWNrYWdlCisgICAgICAgICAgICAgICAgOzsgZmlsZSBjcmVh dGVkIHdpdGggdGhpcyBFT0wgY29udmVudGlvbiBpcyBkaWZmZXJlbnQKKyAgICAgICAgICAgICAg ICA7OyB0aGFuIGFsbCB0aGUgb3RoZXJzIGNyZWF0ZWQgc28gZmFyLgorICAgICAgICAgICAgICAg IChzaG91bGQtbm90IChtZW1iZXIgZW9sLWhhc2ggaGFzaGVzKSkKKyAgICAgICAgICAgICAgICAo c2V0cSBoYXNoZXMgKGNvbnMgZW9sLWhhc2ggaGFzaGVzKSkKKworICAgICAgICAgICAgICAgIChs ZXQqICgoZGVzY3IgKGNhZHIgKGFzc3EgJ3NpbXBsZS1zaW5nbGUgcGFja2FnZS1hbGlzdCkpKQor ICAgICAgICAgICAgICAgICAgICAgICAocGtnLWRpciAocGFja2FnZS1kZXNjLWRpciBkZXNjcikp CisgICAgICAgICAgICAgICAgICAgICAgIChkZXN0LWZpbGUgKGV4cGFuZC1maWxlLW5hbWUgInNp bXBsZS1zaW5nbGUuZWwiIHBrZy1kaXIgKSkKKyAgICAgICAgICAgICAgICAgICAgICAgKGRlc3Qt aGFzaCAod2l0aC10ZW1wLWJ1ZmZlcgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKGluc2VydC1maWxlLWNvbnRlbnRzLWxpdGVyYWxseSBkZXN0LWZpbGUpCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoYnVmZmVyLWhhc2gpKSkpCisKKyAgICAgICAgICAg ICAgICAgIChzaG91bGQgKHN0cmluZz0gZGVzdC1oYXNoIGVvbC1oYXNoKSkpKQorCisgICAgICAg ICAgICAgIChwYWNrYWdlLWRlbGV0ZSAoY2FkciAoYXNzcSAnc2ltcGxlLXNpbmdsZSBwYWNrYWdl LWFsaXN0KSkpCisgICAgICAgICAgICAgIChzaG91bGQtbm90IChwYWNrYWdlLWluc3RhbGxlZC1w ICdzaW1wbGUtc2luZ2xlKSkKKyAgICAgICAgICAgICAgKGRlbGV0ZS1maWxlIGVvbC1maWxlKQor ICAgICAgICAgICAgICAoc2hvdWxkLW5vdCAoZmlsZS1leGlzdHMtcCBlb2wtZmlsZSkpCisgICAg ICAgICAgICAgICkpKSkpKSkKKwogKGVydC1kZWZ0ZXN0IHBhY2thZ2UtdGVzdC1pbnN0YWxsLWRl cGVuZGVuY3kgKCkKICAgIkluc3RhbGwgYSBwYWNrYWdlIHdoaWNoIGluY2x1ZGVzIGEgZGVwZW5k ZW5jeS4iCiAgICh3aXRoLXBhY2thZ2UtdGVzdCAoKQo= --000000000000d4d4c205c4154e31--