From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Wang Diancheng Newsgroups: gmane.emacs.bugs Subject: bug#64186: Patch: Suppress deprecated '-gdb-set target-async' warning message in gdb-mi.el Date: Fri, 30 Jun 2023 15:08:18 +0800 Message-ID: References: <87pm5q4mwc.fsf@yahoo.com> <83352m73g3.fsf@gnu.org> <83wmzx3qoj.fsf@gnu.org> <83leg2u7e6.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000af012805ff536d69" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="22190"; mail-complaints-to="usenet@ciao.gmane.io" Cc: luangruo@yahoo.com, 64186@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Fri Jun 30 09:05:23 2023 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 1qF8C3-0005VP-0F for geb-bug-gnu-emacs@m.gmane-mx.org; Fri, 30 Jun 2023 09:05:23 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qF8Bn-0006ce-06; Fri, 30 Jun 2023 03:05:07 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qF8Bi-0006cL-MG for bug-gnu-emacs@gnu.org; Fri, 30 Jun 2023 03:05:03 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qF8Bi-0004fp-DO for bug-gnu-emacs@gnu.org; Fri, 30 Jun 2023 03:05:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qF8Bh-0000WH-Ul for bug-gnu-emacs@gnu.org; Fri, 30 Jun 2023 03:05:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Wang Diancheng Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Jun 2023 07:05:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64186 X-GNU-PR-Package: emacs Original-Received: via spool by 64186-submit@debbugs.gnu.org id=B64186.16881086821969 (code B ref 64186); Fri, 30 Jun 2023 07:05:01 +0000 Original-Received: (at 64186) by debbugs.gnu.org; 30 Jun 2023 07:04:42 +0000 Original-Received: from localhost ([127.0.0.1]:54415 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qF8BN-0000Vg-M3 for submit@debbugs.gnu.org; Fri, 30 Jun 2023 03:04:42 -0400 Original-Received: from mail-lj1-f170.google.com ([209.85.208.170]:47489) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qF8BJ-0000VM-Ci for 64186@debbugs.gnu.org; Fri, 30 Jun 2023 03:04:39 -0400 Original-Received: by mail-lj1-f170.google.com with SMTP id 38308e7fff4ca-2b6a0d91e80so24808851fa.3 for <64186@debbugs.gnu.org>; Fri, 30 Jun 2023 00:04:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1688108671; x=1690700671; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=NXeq00BdlHcoSx/h8zTGAfGn+zRd4oaxghlGUYRX7rM=; b=l8z9Ad3Faw8jsdlyrE6H1m+W3uIhrEShMTohi+A+hFowcy082ciSuvfooO+H1oh49k gX4I3YVLKU3w5YJZSbY6ihNcEEPgMa7WpT5abOBEbXmHMuY4Aco6BaZ1eYsK2pKEbjzl prqGdJE0sZuEhizlNKsrdc+AXiS8XaGX/S3CDaPIV4CIg6EJ+YnLNb3M1q2QigJg9yt5 XcklsAv3ofoYikj/NdVl7tR3H3RCOvBtX3ba9XUFsecUPloh///AU1fe36MaQQzmUXXo 3zblK5Ck8wE0N5hCQFM8eKWGMs0YmhkQcn6kJHEoygr2l8snBW3qMI8tT4lXABTalI7s PFqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1688108671; x=1690700671; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=NXeq00BdlHcoSx/h8zTGAfGn+zRd4oaxghlGUYRX7rM=; b=S5VmzAZGDdDxSAfIYepEBcaKHgPvOY7PMySv6vrPLGi5M/yO1Oo1OJRMK1Tl8/XYTd Vx6r6WhWiJUv18mZU8CxD0nVZJUQbfMFPyMZ3rq092/EOTNAQFmofJcwMLM/M1wT1loE rN0623JH9XCoT8dfXXbYjzYaWqYQdbsaaGMmj2le4E7DWJ9fS71rGCnhM/UzX84YwOat +gxTsRkDDHRbI+k7ViBNMXZemqv21f17AkDHerpjSR2FasqcsMFDr1qGyEyxPKTo2Flm 34XD3aBvfPbuhwNFQf7yFypdGoxKUDMcNeOGnS2446SRAvT5jYupoE61i9VhLUvr3K+7 TYug== X-Gm-Message-State: ABy/qLYemJ609niLhxPt6s2sB0UmQOz4wp5tDua5qzp7JYZnb3ncM0hv +eFAaS2tE2XXTzUwfp6gFo+emRfXCuEL/lHxhjU= X-Google-Smtp-Source: APBJJlFvFujcgrqVCn0tWamu/2L4SSrwfdYYOkiCfC7EfY5fmzw1+Ls3nyTgigNz6G/zyOctmIZjC/1pOkJKwmHgt34= X-Received: by 2002:a2e:8744:0:b0:2b6:be8a:27a6 with SMTP id q4-20020a2e8744000000b002b6be8a27a6mr1368227ljj.45.1688108671099; Fri, 30 Jun 2023 00:04:31 -0700 (PDT) In-Reply-To: <83leg2u7e6.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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:264307 Archived-At: --000000000000af012805ff536d69 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Eli Zaretskii =E4=BA=8E2023=E5=B9=B46=E6=9C=8829=E6=97=A5=E5= =91=A8=E5=9B=9B 14:08=E5=86=99=E9=81=93=EF=BC=9A > > > From: Wang Diancheng > > Date: Wed, 28 Jun 2023 11:51:39 +0800 > > Cc: luangruo@yahoo.com, 64186@debbugs.gnu.org > > > > I did some hacks to make gdb-non-stop work, patch is attached. The > > patch try to set `gdb-non-stop` when target is running or at first > > stop. Sorry for rough patch. I'm new for elisp. > > Thanks. This looks about right to me, except that "run&" is not the > only command whose side effect is that the debuggee is running in the > background mode. We also need to at least consider "attach&", I > think. Maybe it would be useful to have a list of such commands, so > that we could expand it as needed in the future, because currently I > don't really understand what triggers background execution that causes > "-list-target-features" to report "async". It sounds possible that > this happens only after the first command that ends with "&", in which > case we will need to add to the list all the commands mentioned in the > "Background Execution" node of the GDB manual. This affects the test > below: > Thanks for your comments.I think what exactly the value of `gdb-last-command=E2=80=99 is not essential for us. We just need to know whether `gdb-last-command' is a CLI command in the background or a MI command, since here we have already got its "running" status. We must check the target "async" feature after stopping the debuggee at the first time in function `gdb-stopped' if `gdb-last-command' is not a background CLI command or a MI command. > > + ;; Set `gdb-non-stop` when `gdb-last-command` is a CLI background > > + ;; `run` command e.g. r& or MI command `-exec-run` > > + (when (or (string-match "&\s*$" gdb-last-command) > > + (string-match "-exec-run" gdb-last-command)) > > + (gdb-try-check-target-async-support)) > > And I'm not sure I understand the idea behind this part: > > > @@ -2722,6 +2744,9 @@ gdb-stopped > > > > ;; Print "(gdb)" to GUD console > > (when gdb-first-done-or-error > > + ;; If run target with CLI foreground command `run`, `target > > + ;; async` can only be checked when target is stopped > > + (gdb-try-check-target-async-support) > > (setq gdb-filter-output (concat gdb-filter-output gdb-prompt-nam= e))) > > Can you elaborate? Thanks for your questions, according to my comments above, If the debuggee has been started by a non-background CLI command e.g. =E2=80=9Crun" or "attach" (no trailing "&= ") commands, we can only check the target "async" feature at the code stack. > > Finally, please don't quote symbols `like this` in comments. Our > conventions are to quote symbols 'like this' or `like this'. I updated the patch, see the attachment. --000000000000af012805ff536d69 Content-Type: text/x-patch; charset="US-ASCII"; name="gdb-mi-support-non-stop-v2.patch" Content-Disposition: attachment; filename="gdb-mi-support-non-stop-v2.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lji5xuc00 ZGlmZiAtLWdpdCBhL2xpc3AvcHJvZ21vZGVzL2dkYi1taS5lbCBiL2xpc3AvcHJvZ21vZGVzL2dk Yi1taS5lbAppbmRleCBjOWFmZTUwMmE1MC4uMTk5YmUzMzE4YTEgMTAwNjQ0Ci0tLSBhL2xpc3Av cHJvZ21vZGVzL2dkYi1taS5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9nZGItbWkuZWwKQEAgLTIz Nyw2ICsyMzcsNyBAQCBnZGItaGFuZGxlci1saXN0CiAoZGVmdmFyIGdkYi1zb3VyY2UtZmlsZS1s aXN0IG5pbAogICAiTGlzdCBvZiBzb3VyY2UgZmlsZXMgZm9yIHRoZSBjdXJyZW50IGV4ZWN1dGFi bGUuIikKIChkZWZ2YXIgZ2RiLWZpcnN0LWRvbmUtb3ItZXJyb3IgdCkKKyhkZWZ2YXIgZ2RiLXRh cmdldC1hc3luYy1jaGVja2VkIG5pbCkKIChkZWZ2YXIgZ2RiLXNvdXJjZS13aW5kb3ctbGlzdCBu aWwKICAgIkxpc3Qgb2Ygd2luZG93cyB1c2VkIGZvciBkaXNwbGF5aW5nIHNvdXJjZSBmaWxlcy4K IFNvcnRlZCBpbiBtb3N0LXJlY2VudGx5LXZpc2l0ZWQtZmlyc3Qgb3JkZXIuIikKQEAgLTQ1Myw5 ICs0NTQsNyBAQCBnZGItZGVidWctbG9nLW1heAogICAgICAgICAgIChjb25zdCAgIDp0YWcgIlVu bGltaXRlZCIgbmlsKSkKICAgOnZlcnNpb24gIjIyLjEiKQogCi07OyBUaGlzIGlzIGRpc2FibGVk IGJ5IGRlZmF1bHQgYmVjYXVzZSB3ZSBkb24ndCByZWFsbHkgc3VwcG9ydAotOzsgYXN5bmNocm9u b3VzIGV4ZWN1dGlvbiBvZiB0aGUgZGVidWdnZWU7IHNlZSBidWcjNjMwODQuICBGSVhNRS4KLShk ZWZjdXN0b20gZ2RiLW5vbi1zdG9wLXNldHRpbmcgbmlsCisoZGVmY3VzdG9tIGdkYi1ub24tc3Rv cC1zZXR0aW5nIChub3QgKGVxIHN5c3RlbS10eXBlICd3aW5kb3dzLW50KSkKICAgIklmIG5vbi1u aWwsIEdEQiBzZXNzaW9ucyBhcmUgZXhwZWN0ZWQgdG8gc3VwcG9ydCB0aGUgbm9uLXN0b3AgbW9k ZS4KIFdoZW4gaW4gdGhlIG5vbi1zdG9wIG1vZGUsIHN0b3BwZWQgdGhyZWFkcyBjYW4gYmUgZXhh bWluZWQgd2hpbGUKIG90aGVyIHRocmVhZHMgY29udGludWUgdG8gZXhlY3V0ZS4KQEAgLTQ3MCw3 ICs0NjksNyBAQCBnZGItbm9uLXN0b3Atc2V0dGluZwogR0RCIHNlc3Npb24gbmVlZHMgdG8gYmUg cmVzdGFydGVkIGZvciB0aGlzIHNldHRpbmcgdG8gdGFrZSBlZmZlY3QuIgogICA6dHlwZSAnYm9v bGVhbgogICA6Z3JvdXAgJ2dkYi1ub24tc3RvcAotICA6dmVyc2lvbiAiMjkuMSIpCisgIDp2ZXJz aW9uICIzMC4xIikKIAogKGRlZmN1c3RvbSBnZGItZGVidWdpbmZvZC1lbmFibGUtc2V0dGluZwog ICA7OyBkZWJ1Z2luZm9kIHNlcnZlcnMgYXJlIG9ubHkgZm9yIEVMRiBleGVjdXRhYmxlcywgYW5k IGVsZnV0aWxzLCBvZgpAQCAtMTA2OSw2ICsxMDY4LDcgQEAgZ2RiLWluaXQtMQogCWdkYi1oYW5k bGVyLWxpc3QgJygpCiAJZ2RiLXByb21wdC1uYW1lIG5pbAogCWdkYi1maXJzdC1kb25lLW9yLWVy cm9yIHQKKwlnZGItdGFyZ2V0LWFzeW5jLWNoZWNrZWQgbmlsCiAJZ2RiLWJ1ZmZlci1mcmluZ2Ut d2lkdGggKGNhciAod2luZG93LWZyaW5nZXMpKQogCWdkYi1kZWJ1Zy1sb2cgbmlsCiAJZ2RiLXNv dXJjZS13aW5kb3ctbGlzdCBuaWwKQEAgLTEwNzgsNyArMTA3OCw4IEBAIGdkYi1pbml0LTEKICAg ICAgICAgZ2RiLXRocmVhZHMtbGlzdCAnKCkKICAgICAgICAgZ2RiLWJyZWFrcG9pbnRzLWxpc3Qg JygpCiAgICAgICAgIGdkYi1yZWdpc3Rlci1uYW1lcyAnKCkKLSAgICAgICAgZ2RiLW5vbi1zdG9w IGdkYi1ub24tc3RvcC1zZXR0aW5nCisgICAgICAgIGdkYi1zdXBwb3J0cy1ub24tc3RvcCBuaWwK KyAgICAgICAgZ2RiLW5vbi1zdG9wIG5pbAogICAgICAgICBnZGItZGVidWdpbmZvZC1lbmFibGUg Z2RiLWRlYnVnaW5mb2QtZW5hYmxlLXNldHRpbmcpCiAgIDs7CiAgIChnZGJtaS1ibmYtaW5pdCkK QEAgLTExMTAsNyArMTExMSw3IEBAIGdkYi1pbml0LTEKICAgICAoZ2RiLWlucHV0ICItZ2RiLXNl dCBpbnRlcmFjdGl2ZS1tb2RlIG9uIiAnaWdub3JlKSkKICAgKGdkYi1pbnB1dCAiLWdkYi1zZXQg aGVpZ2h0IDAiICdpZ25vcmUpCiAKLSAgKHdoZW4gZ2RiLW5vbi1zdG9wCisgICh3aGVuIGdkYi1u b24tc3RvcC1zZXR0aW5nCiAgICAgKGdkYi1pbnB1dCAiLWdkYi1zZXQgbm9uLXN0b3AgMSIgJ2dk Yi1ub24tc3RvcC1oYW5kbGVyKSkKIAogICAoZ2RiLWlucHV0ICItZW5hYmxlLXByZXR0eS1wcmlu dGluZyIgJ2lnbm9yZSkKQEAgLTExNDUsMTYgKzExNDYsMzAgQEAgZ2RiLW5vbi1zdG9wLWhhbmRs ZXIKIAkoc2V0cSBnZGItbm9uLXN0b3AgbmlsKQogCShzZXRxIGdkYi1zdXBwb3J0cy1ub24tc3Rv cCBuaWwpKQogICAgIChzZXRxIGdkYi1zdXBwb3J0cy1ub24tc3RvcCB0KQotICAgIChnZGItaW5w dXQgIi1nZGItc2V0IHRhcmdldC1hc3luYyAxIiAnaWdub3JlKQorICAgIDs7IFRyeSB0byB1c2Ug Im1pLWFzeW5jIiBmaXJzdCwgbmVlZHMgR0RCIDcuNyBvbndhcmRzLiAgTm90ZSBpZgorICAgIDs7 ICJtaS1hc3luYyIgaXMgbm90IGF2YWlsYWJsZSwgR0RCIGlzIHN0aWxsIHJ1bm5pbmcgaW4gInN5 bmMiCisgICAgOzsgbW9kZSwgIk5vIHN5bWJvbCIgZm9yICJtaS1hc3luYyIgbXVzdCBhcHBlYXIg YmVmb3JlIG90aGVyCisgICAgOzsgY29tbWFuZHMuCisgICAgKGdkYi1pbnB1dCAiLWdkYi1zZXQg bWktYXN5bmMgMSIgJ2dkYi1zZXQtbWktYXN5bmMtaGFuZGxlcikpKQorCisoZGVmdW4gZ2RiLXNl dC1taS1hc3luYy1oYW5kbGVyKCkKKyAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgKGlmIChy ZS1zZWFyY2gtZm9yd2FyZCAiTm8gc3ltYm9sIiBuaWwgdCkKKyAgICAgIChnZGItaW5wdXQgIi1n ZGItc2V0IHRhcmdldC1hc3luYyAxIiAnaWdub3JlKSkpCisKKyhkZWZ1biBnZGItdHJ5LWNoZWNr LXRhcmdldC1hc3luYy1zdXBwb3J0KCkKKyAgKHdoZW4gKGFuZCBnZGItbm9uLXN0b3Atc2V0dGlu ZyBnZGItc3VwcG9ydHMtbm9uLXN0b3AKKyAgICAgICAgICAgICAobm90IGdkYi10YXJnZXQtYXN5 bmMtY2hlY2tlZCkpCiAgICAgKGdkYi1pbnB1dCAiLWxpc3QtdGFyZ2V0LWZlYXR1cmVzIiAnZ2Ri LWNoZWNrLXRhcmdldC1hc3luYykpKQogCiAoZGVmdW4gZ2RiLWNoZWNrLXRhcmdldC1hc3luYyAo KQogICAoZ290by1jaGFyIChwb2ludC1taW4pKQotICAodW5sZXNzIChyZS1zZWFyY2gtZm9yd2Fy ZCAiYXN5bmMiIG5pbCB0KQorICAoaWYgKHJlLXNlYXJjaC1mb3J3YXJkICJhc3luYyIgbmlsIHQp CisgICAgICAoc2V0cSBnZGItbm9uLXN0b3AgdCkKICAgICAobWVzc2FnZQogICAgICAiVGFyZ2V0 IGRvZXNuJ3Qgc3VwcG9ydCBub24tc3RvcCBtb2RlLiAgVHVybmluZyBpdCBvZmYuIikKLSAgICAo c2V0cSBnZGItbm9uLXN0b3AgbmlsKQotICAgIChnZGItaW5wdXQgIi1nZGItc2V0IG5vbi1zdG9w IDAiICdpZ25vcmUpKSkKKyAgICAoZ2RiLWlucHV0ICItZ2RiLXNldCBub24tc3RvcCAwIiAnaWdu b3JlKSkKKyAgKHNldHEgZ2RiLXRhcmdldC1hc3luYy1jaGVja2VkIHQpKQogCiAoZGVmdW4gZ2Ri LWRlbGNoYXItb3ItcXVpdCAoYXJnKQogICAiRGVsZXRlIEFSRyBjaGFyYWN0ZXJzIG9yIHNlbmQg YSBxdWl0IGNvbW1hbmQgdG8gR0RCLgpAQCAtMjY1Miw2ICsyNjY3LDE0IEBAIGdkYi1ydW5uaW5n CiAoZGVmdW4gZ2RiLXN0YXJ0aW5nIChfb3V0cHV0LWZpZWxkIF9yZXN1bHQpCiAgIDs7IENMSSBj b21tYW5kcyBkb24ndCBlbWl0IF5ydW5uaW5nIGF0IHRoZSBtb21lbnQgc28gdXNlIGdkYi1ydW5u aW5nIHRvby4KICAgKHNldHEgZ2RiLWluZmVyaW9yLXN0YXR1cyAicnVubmluZyIpCisKKyAgOzsg U2V0IGBnZGItbm9uLXN0b3AnIHdoZW4gYGdkYi1sYXN0LWNvbW1hbmQnIGlzIGEgQ0xJIGJhY2tn cm91bmQKKyAgOzsgcnVubmluZyBjb21tYW5kIGUuZy4gInJ1biAmIiwgYXR0YWNoICYiIG9yIGEg TUkgY29tbWFuZAorICA7OyBlLmcuICItZXhlYy1ydW4iIG9yICItZXhlYy1hdHRhY2giLgorICAo d2hlbiAob3IgKHN0cmluZy1tYXRjaCAiJlxzKiQiIGdkYi1sYXN0LWNvbW1hbmQpCisgICAgICAg ICAgICAoc3RyaW5nLW1hdGNoICJeLSIgZ2RiLWxhc3QtY29tbWFuZCkpCisgICAgKGdkYi10cnkt Y2hlY2stdGFyZ2V0LWFzeW5jLXN1cHBvcnQpKQorCiAgIChnZGItZm9yY2UtbW9kZS1saW5lLXVw ZGF0ZQogICAgKHByb3BlcnRpemUgZ2RiLWluZmVyaW9yLXN0YXR1cyAnZmFjZSBmb250LWxvY2st dHlwZS1mYWNlKSkKICAgKHNldHEgZ2RiLWFjdGl2ZS1wcm9jZXNzIHQpCkBAIC0yNzIyLDYgKzI3 NDUsMTAgQEAgZ2RiLXN0b3BwZWQKIAogICAgIDs7IFByaW50ICIoZ2RiKSIgdG8gR1VEIGNvbnNv bGUKICAgICAod2hlbiBnZGItZmlyc3QtZG9uZS1vci1lcnJvcgorICAgICAgOzsgSWYgcnVubmlu ZyB0YXJnZXQgd2l0aCBhIG5vbi1iYWNrZ3JvdW5kIENMSSBjb21tYW5kCisgICAgICA7OyBlLmcu ICJydW4iIChubyB0cmFpbGluZyAnJicpLCB0YXJnZXQgYXN5bmMgZmVhdHVyZSBjYW4gb25seQor ICAgICAgOzsgYmUgY2hlY2tlZCB3aGVuIHdoZW4gdGhlIHByb2dyYW0gc3RvcHMgZm9yIHRoZSBm aXJzdCB0aW1lCisgICAgICAoZ2RiLXRyeS1jaGVjay10YXJnZXQtYXN5bmMtc3VwcG9ydCkKICAg ICAgIChzZXRxIGdkYi1maWx0ZXItb3V0cHV0IChjb25jYXQgZ2RiLWZpbHRlci1vdXRwdXQgZ2Ri LXByb21wdC1uYW1lKSkpCiAKICAgICA7OyBJbiBub24tc3RvcCwgd2UgdXBkYXRlIGluZm9ybWF0 aW9uIGFzIHNvb24gYXMgYW5vdGhlciB0aHJlYWQgZ2V0cwo= --000000000000af012805ff536d69--