From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jim Porter Newsgroups: gmane.emacs.bugs Subject: bug#72117: Command doesn't execute correctly in eshell Date: Wed, 17 Jul 2024 22:05:38 -0700 Message-ID: <835b5821-f522-df6e-286d-5c34962684f7@gmail.com> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------G09K0A2NfUAro7SdMTfijkWf" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="21106"; mail-complaints-to="usenet@ciao.gmane.io" Cc: 72117@debbugs.gnu.org To: the_wurfkreuz Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jul 18 07:07:10 2024 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 1sUJMD-0005HS-7A for geb-bug-gnu-emacs@m.gmane-mx.org; Thu, 18 Jul 2024 07:07:09 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sUJM5-0000Ue-DX; Thu, 18 Jul 2024 01:07:01 -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 1sUJM3-0000TP-55 for bug-gnu-emacs@gnu.org; Thu, 18 Jul 2024 01:06:59 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sUJM2-0008E9-P2 for bug-gnu-emacs@gnu.org; Thu, 18 Jul 2024 01:06:58 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sUJM5-0008W0-N4 for bug-gnu-emacs@gnu.org; Thu, 18 Jul 2024 01:07:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jim Porter Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 18 Jul 2024 05:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 72117 X-GNU-PR-Package: emacs Original-Received: via spool by 72117-submit@debbugs.gnu.org id=B72117.172127921432692 (code B ref 72117); Thu, 18 Jul 2024 05:07:01 +0000 Original-Received: (at 72117) by debbugs.gnu.org; 18 Jul 2024 05:06:54 +0000 Original-Received: from localhost ([127.0.0.1]:36669 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sUJLx-0008VD-D1 for submit@debbugs.gnu.org; Thu, 18 Jul 2024 01:06:54 -0400 Original-Received: from mail-pf1-f172.google.com ([209.85.210.172]:47560) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sUJLs-0008Uw-PB for 72117@debbugs.gnu.org; Thu, 18 Jul 2024 01:06:52 -0400 Original-Received: by mail-pf1-f172.google.com with SMTP id d2e1a72fcca58-70b4267ccfcso270270b3a.3 for <72117@debbugs.gnu.org>; Wed, 17 Jul 2024 22:06:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1721279139; x=1721883939; darn=debbugs.gnu.org; h=in-reply-to:references:cc:to:from:content-language:subject :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=nSDloxLnjXHCi+d4wH0GDyRsmH1FgYS6/+XAbf4D96Y=; b=HRlvbkzFOkvXqP1Jreq+EHtW31XSBQ02rG1Sm4+xAIe7hALeFYm+hIiR7NoneSJrpr 8x2lpPf1SX35wyhFVb/ARXyAmf/iExnjE9P1xoNizjZumS6oLm2fIqVOytuTTPuALAKm pP3wxJehLVk04bjLZD/KJG/KLqeqtubTD+/hBOAe8x3UgvHB8fByByKa4OE+O1hUfX5a +6gxizHjxAs9A9hy/tKslUBRE9O3MQCgmImr4trFc3O/FeLKMCiiJQlmEuH1ZSh80YqS r4LwK0bqVOdFuje2hYi09Hq/027GjUJxVOM2J2F0ydsRu6c009dL8N5zPhlGixjS5dt8 0oVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721279139; x=1721883939; h=in-reply-to:references:cc:to:from:content-language:subject :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=nSDloxLnjXHCi+d4wH0GDyRsmH1FgYS6/+XAbf4D96Y=; b=tkHj3w4sjq6UnmQ1Rk7+EVUFhgyPgfDU/P0oVkFv3Tykhlk3c/8hTfcRdVga4/3nbU fY3A1Y30gQ5JAJ3+wUIQWljK8r5EDQgnn8kpECQ2rY7SYPUXkqIu3u5Nqapk17yaXeJD 5vx58F/d9LTJcLsLnPQ3dfQH/Elqa0LJtI1bdQD6Wy6CHhIYnfz8k4DwV+xYoEXeHy1Z 4bUQHMCu0o+/25nuIsJa9/qhz9NpFgniZVq44bqMEI9OijSccfAi1dBGujBx7K5A2cvs tcoYUiqXN9sC4/PsqnthcMzV+WnlCjZrqjA2G3RUNUyKJ2tya/qt0s0hkUUvfQUgZRki 2IEA== X-Gm-Message-State: AOJu0Yx25ZP2dYRhW2jvaXK3+19AZvyjFqXEIndET79Dd0DKbmyRGNxf 42f/gqy6FCIRsW9fSuBsLG5X7Trb+lp+Qosw637VcFeGFM2l+toC X-Google-Smtp-Source: AGHT+IEEpYXjZBPy8SPp5rN1fig9GsbhI9kvlzlPc0Fwo0mDzM1ninKMSil/X74Ja2a1iCGDiQ3h5Q== X-Received: by 2002:a05:6a00:3d0e:b0:70a:f811:4857 with SMTP id d2e1a72fcca58-70ce4d83c67mr4662496b3a.3.1721279139057; Wed, 17 Jul 2024 22:05:39 -0700 (PDT) Original-Received: from [192.168.1.2] (syn-023-240-098-037.res.spectrum.com. [23.240.98.37]) by smtp.googlemail.com with ESMTPSA id d2e1a72fcca58-70b7ec7d2b1sm9061982b3a.108.2024.07.17.22.05.37 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 17 Jul 2024 22:05:38 -0700 (PDT) Content-Language: en-US In-Reply-To: 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:288945 Archived-At: This is a multi-part message in MIME format. --------------G09K0A2NfUAro7SdMTfijkWf Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 7/16/2024 7:09 PM, Jim Porter wrote: > After testing some more locally, I notice that too. Digging further, > this problem is actually multifaceted, and fixing all the different > issues I've uncovered would be too risky for Emacs 30. Does the first > patch I posted work for you? That's a lot simpler, and should be safe > enough for Emacs 30; then I can make more extensive fixes for Emacs > 31. I think the attached patches would work for Emacs 31, but are almost certainly too risky for Emacs 30. The first one especially changes some very fundamental parts of Eshell, though happily in a way that simplifies it a bit overall. The original patch I posted is probably the safest for Emacs 30, since it's only a slight tweak to how we kill processes when their output pipe breaks. --------------G09K0A2NfUAro7SdMTfijkWf Content-Type: text/plain; charset=UTF-8; name="0001-Improve-handling-of-deferrable-Eshell-commands.patch" Content-Disposition: attachment; filename*0="0001-Improve-handling-of-deferrable-Eshell-commands.patch" Content-Transfer-Encoding: base64 RnJvbSAwZGQ0ZjNmYjEyM2E2MjY2NjJiMDk1MWY4ZGVhNDllYzJlNzhhM2QzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMTYgSnVsIDIwMjQgMjI6MDc6MzMgLTA3MDAKU3ViamVjdDogW1BB VENIIDEvMl0gSW1wcm92ZSBoYW5kbGluZyBvZiBkZWZlcnJhYmxlIEVzaGVsbCBjb21tYW5k cwoKTm93LCB3ZSB1c2UgdGhlICdlc2hlbGwtZGVmZXJyYWJsZScgd3JhcHBlciB0byB3cmFw IGEgZm9ybSB0aGF0IHJldHVybnMKYSBwcm9jZXNzIChvciBsaXN0IHRoZXJlb2YpLiAgVGhp cyBpbXByb3ZlcyB1cG9uIHRoZSBvbGQgbWV0aG9kLCB3aGljaApmYWlsZWQgdG8gaGFuZGxl ICdlc2hlbGwtcmVwbGFjZS1jb21tYW5kJyBjb3JyZWN0bHkuICBJbiB0aGF0IGNhc2UsCkVz aGVsbCB3b3VsZCBmYWlsIHRvIHVubWFyayBjb21tYW5kcyBhcyBkZWZlcnJhYmxlIHdoZW4g bmVjZXNzYXJ5CihlLmcuIGZvciBjb21tYW5kcyBpbiBwaXBlbGluZXMpLgoKKiBsaXNwL2Vz aGVsbC9lc2gtY21kLmVsIChlc2hlbGwtZGVmZXJyYWJsZS1jb21tYW5kcyk6IE1ha2UgaW50 byBhCmRlZnZhci4KKGVzaGVsbC1kZWZlcnJhYmxlKTogTmV3IGZ1bmN0aW9uLi4uCihlc2hl bGwtc3RydWN0dXJlLWJhc2ljLWNvbW1hbmQpOiAuLi4gdXNlIGl0LgooZXNoZWxsLXRyYXAt ZXJyb3JzKTogUmVuYW1lIHRvLi4uCihlc2hlbGwtZG8tY29tbWFuZCk6IC4uLiB0aGlzLCBh bmQgdXNlICdlc2hlbGwtZGVmZXJyYWJsZScuICBVcGRhdGUKY2FsbGVycy4KKGVzaGVsbC0t dW5tYXJrLWRlZmVycmFibGUpOiBSZW1vdmUuICBVcGRhdGUgY2FsbGVycy4KKGVzaGVsbC1l eGVjdXRlLXBpcGVsaW5lKTogUmVtb3ZlICdlc2hlbGwtcHJvY2Vzcy1pZGVudGl0eScuCihl c2hlbGwtcHJvY2Vzcy1pZGVudGl0eSwgZXNoZWxsLW5hbWVkLWNvbW1hbmQqLCBlc2hlbGwt bGlzcC1jb21tYW5kKik6Ck1ha2Ugb2Jzb2xldGUuCgoqIHRlc3QvbGlzcC9lc2hlbGwvZXNo LWNtZC10ZXN0cy5lbCAoZXNoZWxsLXRlc3QtcmVwbGFjZS1jb21tYW5kKTogTmV3CmZ1bmN0 aW9uLgooZXNoLWNtZC10ZXN0L3BpcGVsaW5lL3JlcGxhY2UtY29tbWFuZCk6IE5ldyB0ZXN0 LgotLS0KIGxpc3AvZXNoZWxsL2VzaC1jbWQuZWwgICAgICAgICAgICAgICB8IDY3ICsrKysr KysrKysrLS0tLS0tLS0tLS0tLS0tLS0KIHRlc3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10 ZXN0cy5lbCB8ICAyICstCiB0ZXN0L2xpc3AvZXNoZWxsL2VtLXRyYW1wLXRlc3RzLmVsICAg fCAgMyArLQogdGVzdC9saXNwL2VzaGVsbC9lc2gtY21kLXRlc3RzLmVsICAgIHwgMTggKysr KysrKysKIDQgZmlsZXMgY2hhbmdlZCwgNDcgaW5zZXJ0aW9ucygrKSwgNDMgZGVsZXRpb25z KC0pCgpkaWZmIC0tZ2l0IGEvbGlzcC9lc2hlbGwvZXNoLWNtZC5lbCBiL2xpc3AvZXNoZWxs L2VzaC1jbWQuZWwKaW5kZXggYzg1NzljODM0MDUuLjA5OWU5N2EwODNkIDEwMDY0NAotLS0g YS9saXNwL2VzaGVsbC9lc2gtY21kLmVsCisrKyBiL2xpc3AvZXNoZWxsL2VzaC1jbWQuZWwK QEAgLTI0MCwxNiArMjQwLDYgQEAgZXNoZWxsLWNtZC1sb2FkLWhvb2sKICAgOnZlcnNpb24g IjI0LjEiCQkgICAgICAgOyByZW1vdmVkIGVzaGVsbC1jbWQtaW5pdGlhbGl6ZQogICA6dHlw ZSAnaG9vaykKIAotKGRlZmN1c3RvbSBlc2hlbGwtZGVmZXJyYWJsZS1jb21tYW5kcwotICAn KGVzaGVsbC1uYW1lZC1jb21tYW5kCi0gICAgZXNoZWxsLWxpc3AtY29tbWFuZAotICAgIGVz aGVsbC1wcm9jZXNzLWlkZW50aXR5KQotICAiQSBsaXN0IG9mIGZ1bmN0aW9ucyB3aGljaCBt aWdodCByZXR1cm4gYW4gYXN5bmNocm9ub3VzIHByb2Nlc3MuCi1JZiB0aGV5IHJldHVybiBh IHByb2Nlc3Mgb2JqZWN0LCBleGVjdXRpb24gb2YgdGhlIGNhbGxpbmcgRXNoZWxsCi1jb21t YW5kIHdpbGwgd2FpdCBmb3IgY29tcGxldGlvbiAoaW4gdGhlIGJhY2tncm91bmQpIGJlZm9y ZSBmaW5pc2hpbmcKLXRoZSBjb21tYW5kLiIKLSAgOnR5cGUgJyhyZXBlYXQgZnVuY3Rpb24p KQotCiAoZGVmY3VzdG9tIGVzaGVsbC1zdWJjb21tYW5kLWJpbmRpbmdzCiAgICcoKGVzaGVs bC1pbi1zdWJjb21tYW5kLXAgdCkKICAgICAoZXNoZWxsLWluLXBpcGVsaW5lLXAgbmlsKQpA QCAtMjg5LDYgKzI3OSwxMiBAQCBlc2hlbGwtaW4tc3ViY29tbWFuZC1wCiAoZGVmdmFyIGVz aGVsbC1sYXN0LWFyZ3VtZW50cyBuaWwpCiAoZGVmdmFyIGVzaGVsbC1sYXN0LWNvbW1hbmQt bmFtZSBuaWwpCiAKKyhkZWZ2YXIgZXNoZWxsLWRlZmVycmFibGUtY29tbWFuZHMgJyhlc2hl bGwtZGVmZXJyYWJsZSkKKyAgIkEgbGlzdCBvZiBmdW5jdGlvbnMgd2hpY2ggbWlnaHQgcmV0 dXJuIGEgZGVmZXJyYWJsZSBwcm9jZXNzLgorSWYgdGhleSByZXR1cm4gYSBwcm9jZXNzIG9i amVjdCAob3IgbGlzdCB0aGVyZW9mKSwgZXhlY3V0aW9uIG9mIHRoZQorY2FsbGluZyBFc2hl bGwgY29tbWFuZCB3aWxsIHdhaXQgZm9yIGNvbXBsZXRpb24gKGluIHRoZSBiYWNrZ3JvdW5k KQorYmVmb3JlIGZpbmlzaGluZyB0aGUgY29tbWFuZC4iKQorCiAoZGVmdmFyIGVzaGVsbC1h bGxvdy1jb21tYW5kcyB0CiAgICJJZiBub24tbmlsLCBhbGxvdyBldmFsdWF0aW5nIGNvbW1h bmQgZm9ybXMgKGluY2x1ZGluZyBMaXNwIGZvcm1zKS4KIElmIHlvdSB3YW50IHRvIGZvcmJp ZCBjb21tYW5kIGZvcm1zLCB5b3UgY2FuIGxldC1iaW5kIHRoaXMgdG8gYQpAQCAtNDI2LDcg KzQyMiw3IEBAIGVzaGVsbC1wYXJzZS1jb21tYW5kCiAgICAgICAgICAgICAgICAgICAoZXJy b3IgIkVtcHR5IGNvbW1hbmQgYmVmb3JlIGAmJyIpKQogICAgICAgICAgICAgICAoc2V0cSBj bWQgKGVzaGVsbC1wYXJzZS1waXBlbGluZSBjbWQpKQogICAgICAgICAgICAgICAodW5sZXNz IGVzaGVsbC1pbi1waXBlbGluZS1wCi0gICAgICAgICAgICAgICAgKHNldHEgY21kIGAoZXNo ZWxsLXRyYXAtZXJyb3JzICxjbWQpKSkKKyAgICAgICAgICAgICAgICAoc2V0cSBjbWQgYChl c2hlbGwtZG8tY29tbWFuZCAsY21kKSkpCiAgICAgICAgICAgICAgIDs7IENvcHkgSS9PIGhh bmRsZXMgc28gZWFjaCBmdWxsIHN0YXRlbWVudCBjYW4gbWFuaXB1bGF0ZQogICAgICAgICAg ICAgICA7OyB0aGVtIGlmIHRoZXkgbGlrZS4gIFN0ZWFsIHRoZSBoYW5kbGVzIGZvciB0aGUg bGFzdAogICAgICAgICAgICAgICA7OyBjb21tYW5kIChmaXJzdCBpbiBvdXIgcmV2ZXJzZWQg bGlzdCk7IHdlIHdvbid0IHVzZSB0aGUKQEAgLTU2NSw3ICs1NjEsNyBAQCBlc2hlbGwtc3Ry dWN0dXJlLWJhc2ljLWNvbW1hbmQKICAgOzsgc3RhdGVtZW50LgogICAodW5sZXNzIChtZW1x IChjYXIgdGVzdCkgJyhlc2hlbGwtY29udmVydCBlc2hlbGwtZXNjYXBlLWFyZykpCiAgICAg KHNldHEgdGVzdAotCSAgYChwcm9nbiAsdGVzdAorCSAgYChwcm9nbiAoZXNoZWxsLWRlZmVy cmFibGUgLHRlc3QpCiAgICAgICAgICAgICAgICAgICAoZXNoZWxsLWV4aXQtc3VjY2Vzcy1w KSkpKQogCiAgIDs7IHNob3VsZCB3ZSByZXZlcnNlIHRoZSBzZW5zZSBvZiB0aGUgdGVzdD8g IFRoaXMgZGVwZW5kcwpAQCAtNzc2LDcgKzc3Miw3IEBAIGVzaGVsbC1jb21tYW5kcwogCiAo ZGVmdmFyIGVzaGVsbC10aGlzLWNvbW1hbmQtaG9vayBuaWwpCiAKLShkZWZtYWNybyBlc2hl bGwtdHJhcC1lcnJvcnMgKG9iamVjdCkKKyhkZWZtYWNybyBlc2hlbGwtZG8tY29tbWFuZCAo b2JqZWN0KQogICAiVHJhcCBhbnkgZXJyb3JzIHRoYXQgb2NjdXIsIHNvIHRoZXkgYXJlIG5v dCBlbnRpcmVseSBmYXRhbC4KIEFsc28sIHRoZSB2YXJpYWJsZSBgZXNoZWxsLXRoaXMtY29t bWFuZC1ob29rJyBpcyBhdmFpbGFibGUgZm9yIHRoZQogZHVyYXRpb24gb2YgT0JKRUNUJ3Mg ZXZhbHVhdGlvbi4gIE5vdGUgdGhhdCBmdW5jdGlvbnMgc2hvdWxkIGJlIGFkZGVkCkBAIC03 ODcsMTIgKzc4MywxOSBAQCBlc2hlbGwtdHJhcC1lcnJvcnMKICAgYChlc2hlbGwtY29uZGl0 aW9uLWNhc2UgZXJyCiAgICAgICAgKGxldCAoKGVzaGVsbC10aGlzLWNvbW1hbmQtaG9vayAn KGlnbm9yZSkpKQogICAgICAgICAgKHVud2luZC1wcm90ZWN0Ci0gICAgICAgICAgICAgLG9i amVjdAorICAgICAgICAgICAgIChlc2hlbGwtZGVmZXJyYWJsZSAsb2JqZWN0KQogICAgICAg ICAgICAobWFwYyAjJ2Z1bmNhbGwgZXNoZWxsLXRoaXMtY29tbWFuZC1ob29rKSkpCiAgICAg IChlcnJvcgogICAgICAgKGVzaGVsbC1lcnJvcm4gKGVycm9yLW1lc3NhZ2Utc3RyaW5nIGVy cikpCiAgICAgICAoZXNoZWxsLWNsb3NlLWhhbmRsZXMgMSkpKSkKIAorKGRlZmluZS1vYnNv bGV0ZS1mdW5jdGlvbi1hbGlhcyAnZXNoZWxsLXRyYXAtZXJyb3JzICMnZXNoZWxsLWRvLWNv bW1hbmQgIjMxLjEiKQorCisoZGVmYWxpYXMgJ2VzaGVsbC1kZWZlcnJhYmxlICdpZGVudGl0 eQorICAiQSB3cmFwcGVyIHRvIG1hcmsgYSBwYXJ0aWN1bGFyIGZvcm0gYXMgcG90ZW50aWFs bHkgZGVmZXJyYWJsZS4KK0lmIHRoZSB3cmFwcGVkIGZvcm0gcmV0dXJucyBhIHByb2Nlc3Mg KG9yIGxpc3QgdGhlcmVvZiksIEVzaGVsbCB3aWxsCit3YWl0IGZvciBjb21wbGV0aW9uIGlu IHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgcHJvY2VzcyhlcykgdG8gY29tcGxldGUuIikKKwog KGRlZm1hY3JvIGVzaGVsbC13aXRoLWNvcGllZC1oYW5kbGVzIChvYmplY3QgJm9wdGlvbmFs IHN0ZWFsLXApCiAgICJEdXBsaWNhdGUgY3VycmVudCBJL08gaGFuZGxlcywgc28gT0JKRUNU IHdvcmtzIHdpdGggaXRzIG93biBjb3B5LgogSWYgU1RFQUwtUCBpcyBub24tbmlsLCB0aGVz ZSBuZXcgaGFuZGxlcyB3aWxsIGJlIHN0b2xlbiBmcm9tIHRoZQpAQCAtODEwLDI3ICs4MTMs MTIgQEAgZXNoZWxsLXByb3RlY3QKICAgICAgKGVzaGVsbC1wcm90ZWN0LWhhbmRsZXMgZXNo ZWxsLWN1cnJlbnQtaGFuZGxlcykKICAgICAgLG9iamVjdCkpCiAKLShkZWZ1biBlc2hlbGwt LXVubWFyay1kZWZlcnJhYmxlIChjb21tYW5kKQotICAiSWYgQ09NTUFORCBpcyAob3IgZW5k cyB3aXRoKSBhIGRlZmVycmFibGUgY29tbWFuZCwgdW5tYXJrIGl0IGFzIHN1Y2guCi1UaGlz IGNoYW5nZXMgQ09NTUFORCBpbi1wbGFjZSBieSBjb252ZXJ0aW5nIGZ1bmN0aW9uIGNhbGxz IGxpc3RlZAotaW4gYGVzaGVsbC1kZWZlcnJhYmxlLWNvbW1hbmRzJyB0byB0aGVpciBub24t ZGVmZXJyYWJsZSBmb3JtcyBzbwotdGhhdCBFc2hlbGwgZG9lc24ndCBlcnJvbmVvdXNseSBh bGxvdyBkZWZlcnJpbmcgaXQuICBGb3IgZXhhbXBsZSwKLWBlc2hlbGwtbmFtZWQtY29tbWFu ZCcgYmVjb21lcyBgZXNoZWxsLW5hbWVkLWNvbW1hbmQqJy4iCi0gIChsZXQgKChjbWQgY29t bWFuZCkpCi0gICAgKHdoZW4gKG1lbXEgKGNhciBjbWQpICcobGV0IHByb2duKSkKLSAgICAg IChzZXRxIGNtZCAoY2FyIChsYXN0IGNtZCkpKSkKLSAgICAod2hlbiAobWVtcSAoY2FyIGNt ZCkgZXNoZWxsLWRlZmVycmFibGUtY29tbWFuZHMpCi0gICAgICAoc2V0Y2FyIGNtZCAoaW50 ZXJuLXNvZnQKLQkJICAgKGNvbmNhdCAoc3ltYm9sLW5hbWUgKGNhciBjbWQpKSAiKiIpKSkp Ci0gICAgY29tbWFuZCkpCi0KIChkZWZtYWNybyBlc2hlbGwtZG8tcGlwZWxpbmVzIChwaXBl bGluZSAmb3B0aW9uYWwgbm90Zmlyc3QpCiAgICJFeGVjdXRlIHRoZSBjb21tYW5kcyBpbiBQ SVBFTElORSwgY29ubmVjdGluZyBlYWNoIHRvIG9uZSBhbm90aGVyLgogUmV0dXJucyBhIGxp c3Qgb2YgdGhlIHByb2Nlc3NlcyBpbiB0aGUgcGlwZWxpbmUuCiAKIFRoaXMgbWFjcm8gY2Fs bHMgaXRzZWxmIHJlY3Vyc2l2ZWx5LCB3aXRoIE5PVEZJUlNUIG5vbi1uaWwuIgogICAod2hl biAoc2V0cSBwaXBlbGluZSAoY2FkciBwaXBlbGluZSkpCi0gICAgKGVzaGVsbC0tdW5tYXJr LWRlZmVycmFibGUgKGNhciBwaXBlbGluZSkpCiAgICAgYChlc2hlbGwtd2l0aC1jb3BpZWQt aGFuZGxlcwogICAgICAgKGxldCAoKG5leHQtcHJvY3MKICAgICAgICAgICAgICAsKHdoZW4g KGNkciBwaXBlbGluZSkKQEAgLTg2MCw4ICs4NDgsNiBAQCBlc2hlbGwtZG8tcGlwZWxpbmVz LXN5bmNocm9ub3VzbHkKIFRoaXMgaXMgdXNlZCBvbiBzeXN0ZW1zIHdoZXJlIGFzeW5jIHN1 YnByb2Nlc3NlcyBhcmUgbm90CiBzdXBwb3J0ZWQuIgogICAod2hlbiAoc2V0cSBwaXBlbGlu ZSAoY2FkciBwaXBlbGluZSkpCi0gICAgOzsgRklYTUU6IGlzIGRlZmVycmFibGUgc2lnbmlm aWNhbnQgaGVyZT8KLSAgICAoZXNoZWxsLS11bm1hcmstZGVmZXJyYWJsZSAoY2FyIHBpcGVs aW5lKSkKICAgICBgKHByb2cxCiAgICAgICAgICAoZXNoZWxsLXdpdGgtY29waWVkLWhhbmRs ZXMKICAgICAgICAgICAocHJvZ24KQEAgLTg3OSwxNCArODY1LDEzIEBAIGVzaGVsbC1kby1w aXBlbGluZXMtc3luY2hyb25vdXNseQogICAgICAgICwod2hlbiAoY2RyIHBpcGVsaW5lKQog ICAgICAgICAgIGAoZXNoZWxsLWRvLXBpcGVsaW5lcy1zeW5jaHJvbm91c2x5IChxdW90ZSAs KGNkciBwaXBlbGluZSkpKSkpKSkKIAotKGRlZmFsaWFzICdlc2hlbGwtcHJvY2Vzcy1pZGVu dGl0eSAnaWRlbnRpdHkpCisoZGVmaW5lLW9ic29sZXRlLWZ1bmN0aW9uLWFsaWFzICdlc2hl bGwtcHJvY2Vzcy1pZGVudGl0eSAjJ2lkZW50aXR5ICIzMS4xIikKIAogKGRlZm1hY3JvIGVz aGVsbC1leGVjdXRlLXBpcGVsaW5lIChwaXBlbGluZSkKICAgIkV4ZWN1dGUgdGhlIGNvbW1h bmRzIGluIFBJUEVMSU5FLCBjb25uZWN0aW5nIGVhY2ggdG8gb25lIGFub3RoZXIuIgotICBg KGVzaGVsbC1wcm9jZXNzLWlkZW50aXR5Ci0gICAgLChpZiBlc2hlbGwtc3VwcG9ydHMtYXN5 bmNocm9ub3VzLXByb2Nlc3NlcwotICAgICAgICAgYChyZW1vdmUgbmlsIChlc2hlbGwtZG8t cGlwZWxpbmVzICxwaXBlbGluZSkpCi0gICAgICAgYChlc2hlbGwtZG8tcGlwZWxpbmVzLXN5 bmNocm9ub3VzbHkgLHBpcGVsaW5lKSkpKQorICAoaWYgZXNoZWxsLXN1cHBvcnRzLWFzeW5j aHJvbm91cy1wcm9jZXNzZXMKKyAgICAgIGAocmVtb3ZlIG5pbCAoZXNoZWxsLWRvLXBpcGVs aW5lcyAscGlwZWxpbmUpKQorICAgIGAoZXNoZWxsLWRvLXBpcGVsaW5lcy1zeW5jaHJvbm91 c2x5ICxwaXBlbGluZSkpKQogCiAoZGVmbWFjcm8gZXNoZWxsLWFzLXN1YmNvbW1hbmQgKGNv bW1hbmQpCiAgICJFeGVjdXRlIENPTU1BTkQgYXMgYSBzdWJjb21tYW5kLgpAQCAtOTUxLDcg KzkzNiw3IEBAIGVzaGVsbC0taW52b2tlLWNvbW1hbmQtZGlyZWN0bHktcAogCiAqIFRoZSBj b21tYW5kIGlzIG9mIHRoZSBmb3JtCiAgIChlc2hlbGwtd2l0aC1jb3BpZWQtaGFuZGxlcwot ICAgKGVzaGVsbC10cmFwLWVycm9ycyAoZXNoZWxsLW5hbWVkLWNvbW1hbmQgTkFNRSBbQVJH U10pKSBfKS4KKyAgIChlc2hlbGwtZG8tY29tbWFuZCAoZXNoZWxsLW5hbWVkLWNvbW1hbmQg TkFNRSBbQVJHU10pKSBfKS4KIAogKiBOQU1FIGlzIGEgc3RyaW5nIHJlZmVycmluZyB0byBh biBhbGlhcyBmdW5jdGlvbiBhbmQgaXNuJ3QgYQogICBjb21wbGV4IGNvbW1hbmQgKHNlZSBg ZXNoZWxsLWNvbXBsZXgtY29tbWFuZHMnKS4KQEAgLTk1OSw3ICs5NDQsNyBAQCBlc2hlbGwt LWludm9rZS1jb21tYW5kLWRpcmVjdGx5LXAKICogQW55IHN1YmNvbW1hbmRzIGluIEFSR1Mg Y2FuIGFsc28gYmUgaW52b2tlZCBkaXJlY3RseS4iCiAgIChwY2FzZSBjb21tYW5kCiAgICAg KGAoZXNoZWxsLXdpdGgtY29waWVkLWhhbmRsZXMKLSAgICAgICAoZXNoZWxsLXRyYXAtZXJy b3JzIChlc2hlbGwtbmFtZWQtY29tbWFuZCAsbmFtZSAuICxhcmdzKSkKKyAgICAgICAoZXNo ZWxsLWRvLWNvbW1hbmQgKGVzaGVsbC1uYW1lZC1jb21tYW5kICxuYW1lIC4gLGFyZ3MpKQog ICAgICAgICxfKQogICAgICAoYW5kIG5hbWUgKHN0cmluZ3AgbmFtZSkKIAkgIChub3QgKG1l bWJlciBuYW1lIGVzaGVsbC1jb21wbGV4LWNvbW1hbmRzKSkKQEAgLTEzNjAsNyArMTM0NSw4 IEBAIGVzaGVsbC1uYW1lZC1jb21tYW5kCiAgICAgICAgIChlc2hlbGwtcGxhaW4tY29tbWFu ZCBlc2hlbGwtbGFzdC1jb21tYW5kLW5hbWUKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGVzaGVsbC1sYXN0LWFyZ3VtZW50cykpKSkKIAotKGRlZmFsaWFzICdlc2hlbGwtbmFt ZWQtY29tbWFuZCogJ2VzaGVsbC1uYW1lZC1jb21tYW5kKQorKGRlZmluZS1vYnNvbGV0ZS1m dW5jdGlvbi1hbGlhcyAnZXNoZWxsLW5hbWVkLWNvbW1hbmQqICMnZXNoZWxsLW5hbWVkLWNv bW1hbmQKKyAgIjMxLjEiKQogCiAoZGVmdW4gZXNoZWxsLWZpbmQtYWxpYXMtZnVuY3Rpb24g KG5hbWUpCiAgICJDaGVjayB3aGV0aGVyIGEgZnVuY3Rpb24gY2FsbGVkIGBlc2hlbGwvTkFN RScgZXhpc3RzLiIKQEAgLTE1NTgsNyArMTU0NCw4IEBAIGVzaGVsbC1saXNwLWNvbW1hbmQK ICAgICAgICAgIDIpCiAgICAgICAgKGxpc3QgJ3F1b3RlIHJlc3VsdCkpKSkpCiAKLShkZWZh bGlhcyAnZXNoZWxsLWxpc3AtY29tbWFuZCogIydlc2hlbGwtbGlzcC1jb21tYW5kKQorKGRl ZmluZS1vYnNvbGV0ZS1mdW5jdGlvbi1hbGlhcyAnZXNoZWxsLWxpc3AtY29tbWFuZCogIydl c2hlbGwtbGlzcC1jb21tYW5kCisgICIzMS4xIikKIAogKHByb3ZpZGUgJ2VzaC1jbWQpCiAK ZGlmZiAtLWdpdCBhL3Rlc3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10ZXN0cy5lbCBiL3Rl c3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10ZXN0cy5lbAppbmRleCBjNWYxMzAxY2QzYi4u NGMzYWRiYzJkOTAgMTAwNjQ0Ci0tLSBhL3Rlc3QvbGlzcC9lc2hlbGwvZW0tZXh0cGlwZS10 ZXN0cy5lbAorKysgYi90ZXN0L2xpc3AvZXNoZWxsL2VtLWV4dHBpcGUtdGVzdHMuZWwKQEAg LTQwLDcgKzQwLDcgQEAgZW0tZXh0cGlwZS10ZXN0cy0tZGVmdGVzdAogICAgICAgICAgKChz aG91bGQtcGFyc2UgKGV4cGVjdGVkKQogICAgICAgICAgICAgYChsZXQgKChzaGVsbC1maWxl LW5hbWUgInNoIikKICAgICAgICAgICAgICAgICAgICAoc2hlbGwtY29tbWFuZC1zd2l0Y2gg Ii1jIikpCi0gICAgICAgICAgICAgICA7OyBTdHJpcCBgZXNoZWxsLXRyYXAtZXJyb3JzJy4K KyAgICAgICAgICAgICAgIDs7IFN0cmlwIGBlc2hlbGwtZG8tY29tbWFuZCcuCiAgICAgICAg ICAgICAgICAoc2hvdWxkIChlcXVhbCAsZXhwZWN0ZWQKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChjYWRhZHIgKGVzaGVsbC1wYXJzZS1jb21tYW5kIGlucHV0KSkpKSkpCiAg ICAgICAgICAgKHdpdGgtc3Vic3RpdHV0ZS1mb3ItdGVtcCAoJnJlc3QgYm9keSkKZGlmZiAt LWdpdCBhL3Rlc3QvbGlzcC9lc2hlbGwvZW0tdHJhbXAtdGVzdHMuZWwgYi90ZXN0L2xpc3Av ZXNoZWxsL2VtLXRyYW1wLXRlc3RzLmVsCmluZGV4IDNiZTVkMzU0MmNhLi40OWRkNWE3OGMz ZCAxMDA2NDQKLS0tIGEvdGVzdC9saXNwL2VzaGVsbC9lbS10cmFtcC10ZXN0cy5lbAorKysg Yi90ZXN0L2xpc3AvZXNoZWxsL2VtLXRyYW1wLXRlc3RzLmVsCkBAIC0yOSw4ICsyOSw3IEBA IGVtLXRyYW1wLXRlc3Qvc2hvdWxkLXJlcGxhY2UtY29tbWFuZAogICBgKHNob3VsZCAoZXF1 YWwKICAgICAgICAgICAgIChjYXRjaCAnZXNoZWxsLXJlcGxhY2UtY29tbWFuZCAsZm9ybSkK ICAgICAgICAgICAgIChsaXN0ICdlc2hlbGwtd2l0aC1jb3BpZWQtaGFuZGxlcwotICAgICAg ICAgICAgICAgICAgKGxpc3QgJ2VzaGVsbC10cmFwLWVycm9ycwotICAgICAgICAgICAgICAg ICAgICAgICAgLHJlcGxhY2VtZW50KQorICAgICAgICAgICAgICAgICAgKGxpc3QgJ2VzaGVs bC1kby1jb21tYW5kICxyZXBsYWNlbWVudCkKICAgICAgICAgICAgICAgICAgIHQpKSkpCiAK IChlcnQtZGVmdGVzdCBlbS10cmFtcC10ZXN0L3N1LWRlZmF1bHQgKCkKZGlmZiAtLWdpdCBh L3Rlc3QvbGlzcC9lc2hlbGwvZXNoLWNtZC10ZXN0cy5lbCBiL3Rlc3QvbGlzcC9lc2hlbGwv ZXNoLWNtZC10ZXN0cy5lbAppbmRleCBkODEyNGExOWFmNi4uMThlYTFmOWE5ZDYgMTAwNjQ0 Ci0tLSBhL3Rlc3QvbGlzcC9lc2hlbGwvZXNoLWNtZC10ZXN0cy5lbAorKysgYi90ZXN0L2xp c3AvZXNoZWxsL2VzaC1jbWQtdGVzdHMuZWwKQEAgLTM0LDYgKzM0LDEwIEBACiAKIChkZWZ2 YXIgZXNoZWxsLXRlc3QtdmFsdWUgbmlsKQogCisoZGVmdW4gZXNoZWxsLXRlc3QtcmVwbGFj ZS1jb21tYW5kIChjb21tYW5kICZyZXN0IGFyZ3MpCisgICJSdW4gQ09NTUFORCB3aXRoIEFS R1MgYnkgdGhyb3dpbmcgYGVzaGVsbC1yZXBsYWNlLWNvbW1hbmQnLiIKKyAgKHRocm93ICdl c2hlbGwtcmVwbGFjZS1jb21tYW5kIGAoZXNoZWxsLW5hbWVkLWNvbW1hbmQgLGNvbW1hbmQg JyxhcmdzKSkpCisKIDs7OyBUZXN0czoKIAogDApAQCAtMjY1LDYgKzI2OSwyMCBAQCBlc2gt Y21kLXRlc3QvcmVzZXQtaW4tcGlwZWxpbmUvbGlzcAogICAgICAoZm9ybWF0IHRlbXBsYXRl ICJmb3JtYXQgXCIlc1wiIGVzaGVsbC1pbi1waXBlbGluZS1wIikKICAgICAgIm5pbCIpKSkK IAorKGVydC1kZWZ0ZXN0IGVzaC1jbWQtdGVzdC9waXBlbGluZS9yZXBsYWNlLWNvbW1hbmQg KCkKKyAgIkVuc3VyZSB0aGF0IGBlc2hlbGwtcmVwbGFjZS1jb21tYW5kJyBkb2Vzbid0IGFm ZmVjdCBFc2hlbGwgZGVmZXJyYWwuCitQaXBlbGluZXMgd2FudCB0byBkZWZlciAoeWllbGQp IGV4ZWN1dGlvbiBhZnRlciBzdGFydGluZyBhbGwgdGhlCitwcm9jZXNzZXMgaW4gdGhlIHBp cGVsaW5lLCBub3QgYmVmb3JlLiAgVGhpcyBsZXRzIHVzIHRyYWNrIGFsbCB0aGUKK3Byb2Nl c3NlcyBjb3JyZWN0bHkuIgorICAoc2tpcC11bmxlc3MgKGFuZCAoZXhlY3V0YWJsZS1maW5k ICJzbGVlcCIpCisgICAgICAgICAgICAgICAgICAgIChleGVjdXRhYmxlLWZpbmQgImNhdCIp KSkKKyAgKHdpdGgtdGVtcC1lc2hlbGwKKyAgICAoZXNoZWxsLWluc2VydC1jb21tYW5kICJl c2hlbGwtdGVzdC1yZXBsYWNlLWNvbW1hbmQgKnNsZWVwIDEgfCBjYXQiKQorICAgIDs7IE1h a2Ugc3VyZSBib3RoIHByb2Nlc3NlcyBhcmUgaW4gYGVzaGVsbC1mb3JlZ3JvdW5kLWNvbW1h bmQnOyB0aGlzCisgICAgOzsgbWFrZXMgc3VyZSB0aGF0IHRoZSBmaXJzdCBjb21tYW5kICh3 aGljaCB3YXMgcmVwbGFjZWQgdmlhCisgICAgOzsgYGVzaGVsbC1yZXBsYWNlLWNvbW1hbmQn IGlzbid0IGRlZmVycmVkIGJ5IGBlc2hlbGwtZG8tZXZhbCcuCisgICAgKHNob3VsZCAoPSAo bGVuZ3RoIChjYWRyIGVzaGVsbC1mb3JlZ3JvdW5kLWNvbW1hbmQpKSAyKSkpKQorCiAMCiA7 OyBDb250cm9sIGZsb3cgc3RhdGVtZW50cwogCi0tIAoyLjI1LjEKCg== --------------G09K0A2NfUAro7SdMTfijkWf Content-Type: text/plain; charset=UTF-8; name="0002-Handle-broken-pipes-in-a-better-way-in-Eshell.patch" Content-Disposition: attachment; filename="0002-Handle-broken-pipes-in-a-better-way-in-Eshell.patch" Content-Transfer-Encoding: base64 RnJvbSA5ZDk3OGRjODM3OGJiNjNmMTY3Y2E1Mjg5OTM0OGM2MGM1MjRhN2MxIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKaW0gUG9ydGVyIDxqcG9ydGVyYnVnc0BnbWFpbC5j b20+CkRhdGU6IFN1biwgMTQgSnVsIDIwMjQgMjI6NDM6NTQgLTA3MDAKU3ViamVjdDogW1BB VENIIDIvMl0gSGFuZGxlIGJyb2tlbiBwaXBlcyBpbiBhIGJldHRlciB3YXkgaW4gRXNoZWxs CgoqIGxpc3AvZXNoZWxsL2VzaC1wcm9jLmVsIChlc2hlbGwtaW5zZXJ0aW9uLWZpbHRlcik6 IFNlbmQgU0lHUElQRQpkZWxheWluZyBmb3IgVHJhbXAgYW5kIGZhbGxpbmcgYmFjayB0byBT SUdURVJNIGZvciBNUy1XaW5kb3dzCihidWcjNzIxMTcpLgotLS0KIGxpc3AvZXNoZWxsL2Vz aC1wcm9jLmVsIHwgMzcgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLQog MSBmaWxlIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDE2IGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL2xpc3AvZXNoZWxsL2VzaC1wcm9jLmVsIGIvbGlzcC9lc2hlbGwvZXNoLXBy b2MuZWwKaW5kZXggMGRjZGYzYmI3NmMuLmZiZWIxMzM2MmYzIDEwMDY0NAotLS0gYS9saXNw L2VzaGVsbC9lc2gtcHJvYy5lbAorKysgYi9saXNwL2VzaGVsbC9lc2gtcHJvYy5lbApAQCAt NTE1LDIzICs1MTUsMjggQEAgZXNoZWxsLWluc2VydGlvbi1maWx0ZXIKICAgICAgICAgICAg ICAgICAgICJmb3J3YXJkaW5nIG91dHB1dCBmcm9tIHByb2Nlc3MgYCVzJ1xuXG4lcyIgcHJv YyBkYXRhKQogICAgICAgICAgICAgICAgIChjb25kaXRpb24tY2FzZSBuaWwKICAgICAgICAg ICAgICAgICAgICAgKGVzaGVsbC1vdXRwdXQtb2JqZWN0IGRhdGEgaW5kZXggaGFuZGxlcykK LSAgICAgICAgICAgICAgICAgIDs7IEZJWE1FOiBXZSB3YW50IHRvIHNlbmQgU0lHUElQRSB0 byB0aGUgcHJvY2VzcwotICAgICAgICAgICAgICAgICAgOzsgaGVyZS4gIEhvd2V2ZXIsIHJl bW90ZSBwcm9jZXNzZXMgZG9uJ3QgY3VycmVudGx5Ci0gICAgICAgICAgICAgICAgICA7OyBz dXBwb3J0IHRoYXQsIGFuZCBub3QgYWxsIHN5c3RlbXMgaGF2ZSBTSUdQSVBFIGluCi0gICAg ICAgICAgICAgICAgICA7OyB0aGUgZmlyc3QgcGxhY2UgKGUuZy4gTVMgV2luZG93cykuICBJ biB0aGVzZQotICAgICAgICAgICAgICAgICAgOzsgY2FzZXMsIGp1c3QgZGVsZXRlIHRoZSBw cm9jZXNzOyB0aGlzIGlzCi0gICAgICAgICAgICAgICAgICA7OyByZWFzb25hYmx5IGNsb3Nl IHRvIHRoZSByaWdodCBiZWhhdmlvciwgc2luY2UgdGhlCi0gICAgICAgICAgICAgICAgICA7 OyBkZWZhdWx0IGFjdGlvbiBmb3IgU0lHUElQRSBpcyB0byB0ZXJtaW5hdGUgdGhlCi0gICAg ICAgICAgICAgICAgICA7OyBwcm9jZXNzLiAgRm9yIHVzZSBjYXNlcyB3aGVyZSBTSUdQSVBF IGlzIHRydWx5Ci0gICAgICAgICAgICAgICAgICA7OyBuZWVkZWQsIHVzaW5nIGFuIGV4dGVy bmFsIHBpcGUgb3BlcmF0b3IgKGAqfCcpCi0gICAgICAgICAgICAgICAgICA7OyBtYXkgd29y ayBpbnN0ZWFkIChlLmcuIHdoZW4gd29ya2luZyB3aXRoIHJlbW90ZQotICAgICAgICAgICAg ICAgICAgOzsgcHJvY2Vzc2VzKS4KICAgICAgICAgICAgICAgICAgIChlc2hlbGwtcGlwZS1i cm9rZW4KLSAgICAgICAgICAgICAgICAgICAoaWYgKG9yIChwcm9jZXNzLWdldCBwcm9jICdy ZW1vdGUtcGlkKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgKGVxIHN5c3RlbS10eXBl ICd3aW5kb3dzLW50KSkKLSAgICAgICAgICAgICAgICAgICAgICAgKGRlbGV0ZS1wcm9jZXNz IHByb2MpCi0gICAgICAgICAgICAgICAgICAgICAoc2lnbmFsLXByb2Nlc3MgcHJvYyAnU0lH UElQRSkpKSkpKQotICAgICAgICAgICAgICAgIChwcm9jZXNzLXB1dCBwcm9jIDplc2hlbGwt YnVzeSBuaWwpKSkpKSkKKyAgICAgICAgICAgICAgICAgICA7OyBUaGUgb3V0cHV0IHBpcGUg YnJva2UsIHNvIHNlbmQgU0lHUElQRSB0byB0aGUKKyAgICAgICAgICAgICAgICAgICA7OyBw cm9jZXNzLiAgTk9URTogRHVlIHRvIHRoZSBhZGRpdGlvbmFsIGluZGlyZWN0aW9uCisgICAg ICAgICAgICAgICAgICAgOzsgb2YgRW1hY3MgcHJvY2VzcyBmaWx0ZXJzLCB0aGUgcHJvY2Vz cyB3aWxsIGxpa2VseQorICAgICAgICAgICAgICAgICAgIDs7IHNlZSB0aGUgU0lHUElQRSBs YXRlciB0aGFuIGl0IHdvdWxkIGluIGEgcmVndWxhcgorICAgICAgICAgICAgICAgICAgIDs7 IHNoZWxsLCB3aGljaCBjb3VsZCBjYXVzZSBwcm9ibGVtcy4gIEZvciBjYXNlcworICAgICAg ICAgICAgICAgICAgIDs7IHdoZXJlIHRoaXMgbWF0dGVycywgdXNpbmcgYW4gZXh0ZXJuYWwg cGlwZQorICAgICAgICAgICAgICAgICAgIDs7IG9wZXJhdG9yIChgKnwnKSBtYXkgd29yayBp bnN0ZWFkLgorICAgICAgICAgICAgICAgICAgIChjb25kCisgICAgICAgICAgICAgICAgICAg IDs7IERlbGF5IHNpZ25hbGxpbmcgcmVtb3RlIHByb2Nlc3NlcyB0byBwcmV2ZW50CisgICAg ICAgICAgICAgICAgICAgIDs7ICJGb3JiaWRkZW4gcmVlbnRyYW50IGNhbGwgb2YgVHJhbXAi LgorICAgICAgICAgICAgICAgICAgICAoKHByb2Nlc3MtZ2V0IHByb2MgJ3JlbW90ZS1waWQp CisgICAgICAgICAgICAgICAgICAgICAocnVuLWF0LXRpbWUgMCBuaWwgIydzaWduYWwtcHJv Y2VzcyBwcm9jICdTSUdQSVBFKSkKKyAgICAgICAgICAgICAgICAgICAgOzsgTVMtV2luZG93 cyBkb2Vzbid0IHN1cHBvcnQgU0lHUElQRSwgc28gc2VuZAorICAgICAgICAgICAgICAgICAg ICA7OyBTSUdURVJNIHRoZXJlIGluc3RlYWQ7IHRoaXMgaXMgcmVhc29uYWJseSBjbG9zZQor ICAgICAgICAgICAgICAgICAgICA7OyB0byB0aGUgcmlnaHQgYmVoYXZpb3IsIHNpbmNlIHRo ZSBkZWZhdWx0IGFjdGlvbgorICAgICAgICAgICAgICAgICAgICA7OyBmb3IgU0lHUElQRSBp cyB0byB0ZXJtaW5hdGUgdGhlIHByb2Nlc3MuCisgICAgICAgICAgICAgICAgICAgICgoZXEg c3lzdGVtLXR5cGUgJ3dpbmRvd3MtbnQpCisgICAgICAgICAgICAgICAgICAgICAoc2lnbmFs LXByb2Nlc3MgcHJvYyAnU0lHVEVSTSkpCisgICAgICAgICAgICAgICAgICAgICh0CisgICAg ICAgICAgICAgICAgICAgICAoc2lnbmFsLXByb2Nlc3MgcHJvYyAnU0lHUElQRSkpKSkpKSkK KyAgICAgICAgICAocHJvY2Vzcy1wdXQgcHJvYyA6ZXNoZWxsLWJ1c3kgbmlsKSkpKSkpCiAK IChkZWZ1biBlc2hlbGwtc2VudGluZWwgKHByb2Mgc3RyaW5nKQogICAiR2VuZXJpYyBzZW50 aW5lbCBmb3IgY29tbWFuZCBwcm9jZXNzZXMuICBSZXBvcnRzIG9ubHkgc2lnbmFscy4KLS0g CjIuMjUuMQoK --------------G09K0A2NfUAro7SdMTfijkWf--