From unknown Sun Aug 17 04:18:47 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#61927] [PATCH 0/1] environment: Fix '--check' for shells that output ANSI escape codes based on 'TERM'. Resent-From: Winter Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 03 Mar 2023 02:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 61927 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 61927@debbugs.gnu.org Cc: Winter X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.16778103489124 (code B ref -1); Fri, 03 Mar 2023 02:26:02 +0000 Received: (at submit) by debbugs.gnu.org; 3 Mar 2023 02:25:48 +0000 Received: from localhost ([127.0.0.1]:59341 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv7D-0002N4-Sd for submit@debbugs.gnu.org; Thu, 02 Mar 2023 21:25:48 -0500 Received: from lists.gnu.org ([209.51.188.17]:60192) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv7C-0002Mx-MV for submit@debbugs.gnu.org; Thu, 02 Mar 2023 21:25:47 -0500 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 1pXv7C-0000nS-Gi for guix-patches@gnu.org; Thu, 02 Mar 2023 21:25:46 -0500 Received: from out-22.mta0.migadu.com ([2001:41d0:1004:224b::16]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pXv79-0007Lw-S2 for guix-patches@gnu.org; Thu, 02 Mar 2023 21:25:46 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=winter.cafe; s=key1; t=1677810339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=HZ3u6vZD+BaEcsK3HdSdnE/M0Jw7PQ5FdSYPBqKnSbs=; b=E/ahGj6eSwvFhOBPDIZOwlgzlmC1MsDCYpE/TKzPb2L2r/MXMvkoBSyYH1qSOocytn0mpV vpkNKKe6oqXEHL8/B74XbRtFRQqSLUXmQkL7gtHjAZrAny7CIKtszYU0ehd1xgeFmg0Bmx /1iVhDL6lbHzi01evbU+m5pk+ejpNL7gYcuBxvmls+aEZXCCUtgqloCNQaWZasLWEUGxM0 O0hKkWgRu+2vJfebH851j7DCmgwRdUPWQy5hOlJRHJvSrehzuQP1u21RCVn8RhTzfZzqyO Tqgs0gDrGP/6XiC6LW0bqly4m+5VsYegzwTHIDjs8OJh3WLknGAfkQT/TvMBvA== From: Winter Date: Thu, 2 Mar 2023 21:25:35 -0500 Message-Id: <20230303022535.8336-1-winter@winter.cafe> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT Received-SPF: pass client-ip=2001:41d0:1004:224b::16; envelope-from=winter@winter.cafe; helo=out-22.mta0.migadu.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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) 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.4 (--) Hi, I ran into an issue where 'guix shell --check' would fail on Debain 11's Bash, even though the environment variable it was complaining about not being set was in fact set. As far as I can tell, the issue is caused by Bash's support for bracketed paste [0], which is causing it to output "\x1b[?2004l\r" before the script output, leading the first vhash entry to be invalid (in the sense that 'validate-child-shell-environment' will never see it). Per ncurses' terminfo database [1], setting it to nothing (which is "unknown," per my understanding/testing with 'tput') is the same as setting it to "dumb," which will hopefully get us in the clear for the future, assuming shells play nice with regards to terminal specifications and detection. Given this, there are a few alternative solutions that I'd like to propose: 1. Set 'TERM' to 'dumb'. This has the benefit of being explictly specified in the terminfo database, though any sane implementation should(?) fall back to it if it's set to nothing instead. 2. Use the shell non-interactively, if possible, and fall back to the script in interactive mode. We'd have to assume that the shell takes some sort of argument for a command (e.g. '-c'/'--command'), though based on the fact that we currently don't do that, I assume it's for a good reason. 3. Strip ANSI escape codes when adding the lines to the list. This might be the best one, though I'm unsure how best to do it. A PEG parser? A regex? This was definitely an interesting issue to look into, and I look forward to thoughts on the matter. Thanks, Winter P.S. I've seen a few commit prefixes that touch 'guix/scripts', like "environment" (as I've used here, since it seems to be the most prominent) and "guix: shell". Is one more correct than the other? [0]: https://en.wikipedia.org/wiki/ANSI_escape_code#CSI_(Control_Sequence_Introducer)_sequences, under "Some popular private sequences" [1]: https://invisible-island.net/ncurses/terminfo.src.html#tic-unknown Winter (1): environment: Unset 'TERM' when checking environment. guix/scripts/environment.scm | 2 ++ 1 file changed, 2 insertions(+) base-commit: ea870a70e93e7ea93e35fa8e0afc3cfdb1b66ba2 -- 2.39.1 From unknown Sun Aug 17 04:18:47 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#61927] [PATCH 1/1] environment: Unset 'TERM' when checking environment. References: <20230303022535.8336-1-winter@winter.cafe> In-Reply-To: <20230303022535.8336-1-winter@winter.cafe> Resent-From: Winter Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 03 Mar 2023 02:28:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 61927 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 61927@debbugs.gnu.org Cc: Winter Received: via spool by 61927-submit@debbugs.gnu.org id=B61927.16778104389308 (code B ref 61927); Fri, 03 Mar 2023 02:28:02 +0000 Received: (at 61927) by debbugs.gnu.org; 3 Mar 2023 02:27:18 +0000 Received: from localhost ([127.0.0.1]:59348 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv8g-0002Q4-Dw for submit@debbugs.gnu.org; Thu, 02 Mar 2023 21:27:18 -0500 Received: from out-32.mta0.migadu.com ([91.218.175.32]:19417) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv8d-0002Pu-AP for 61927@debbugs.gnu.org; Thu, 02 Mar 2023 21:27:16 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=winter.cafe; s=key1; t=1677810434; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=bJzcjJiu9TWL09F8TT1BeoGbgROwyNMAscVx6zq+JDM=; b=F9nwRTmp7znEkR6wQQHbeiyuN7W/B3Ft3xscEbhiQHGvatrpcq/1h/pU0TDg+ciAjkI69Q 5LgTJ9oZ6FfwyHOKNeFO1Ex5N9JpOrKmBTyPZz8oShEDKP03YIm648vmQ1jLJceFbGxtV0 X+JNZ87QgnfgBn5a1ZTka2N7MXWtHPX/xF0tH/WPdBpduKLtB4TJNO2tOjqC6DauISUIEn 24PQ/nc8/mPifHFz11hDVE9KPdU4oQOrNSYg7Ne1syFysV6qJN3mTBB7H5qWRANJFlyUFI RHuj4l0XjBoeKZLrP+94EktW0houd26+Z23QNJXM65Pzam0QFAGujMduHnsdOQ== From: Winter Date: Thu, 2 Mar 2023 21:27:10 -0500 Message-Id: <20230303022710.8416-1-winter@winter.cafe> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT 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 (-) * guix/scripts/environment.scm (child-shell-environment): Unset 'TERM'. --- guix/scripts/environment.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/guix/scripts/environment.scm b/guix/scripts/environment.scm index 44cfcb4f76..a3cc9e6b83 100644 --- a/guix/scripts/environment.scm +++ b/guix/scripts/environment.scm @@ -514,6 +514,8 @@ (define lines (catch #t (lambda () (load-profile profile manifest #:pure? #t) + ; We don't want ANSI escape codes such as bracketed paste to mess up the output of the script. + (setenv "TERM" "") (setenv "GUIX_ENVIRONMENT" profile) (close-fdes controller) (login-tty inferior) -- 2.39.1 From unknown Sun Aug 17 04:18:47 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Winter Subject: bug#61927: closed (Re: bug#61927: [PATCH 0/1] environment: Fix '--check' for shells that output ANSI escape codes based on 'TERM'.) Message-ID: References: <87lek03hxz.fsf@gnu.org> <20230303022535.8336-1-winter@winter.cafe> X-Gnu-PR-Message: they-closed 61927 X-Gnu-PR-Package: guix-patches X-Gnu-PR-Keywords: patch Reply-To: 61927@debbugs.gnu.org Date: Mon, 13 Mar 2023 13:22:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1678713722-16706-1" This is a multi-part message in MIME format... ------------=_1678713722-16706-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #61927: [PATCH 0/1] environment: Fix '--check' for shells that output ANSI = escape codes based on 'TERM'. which was filed against the guix-patches package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 61927@debbugs.gnu.org. --=20 61927: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D61927 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1678713722-16706-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 61927-done) by debbugs.gnu.org; 13 Mar 2023 13:21:54 +0000 Received: from localhost ([127.0.0.1]:33895 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pbi7e-0004L6-EX for submit@debbugs.gnu.org; Mon, 13 Mar 2023 09:21:54 -0400 Received: from eggs.gnu.org ([209.51.188.92]:58416) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pbi7d-0004Ks-FT for 61927-done@debbugs.gnu.org; Mon, 13 Mar 2023 09:21:54 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pbi7X-0006BL-IZ; Mon, 13 Mar 2023 09:21:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:In-Reply-To:Date:References:Subject:To: From; bh=0nGtewhqAmKONzjXAn9xMH/k9DENfbtW13H0q2q8RiQ=; b=KcOAoww0D0ZIfzmtZt/+ e6ZfKsJe8vXc0lH6V0fdlrDLA9IgMqpJERtpJHlW5/0qqRisDhZSGXKbcXARKaoN3OXMI+ejjeLLb Qy4+4OHlQHA0qCwjBhqixPdjl+5ENbvAMgd47gEpt5T3v7J7RfhodrsSBaQWJE8pufU9TUmcuIwIz 7+9p8FptsMNw1oB4FUCTyJmkaFMRX9Zqkcfa21kMfZFD8h/UlIx82OWcgkloAskNTZubHFy3eCZGP +lY4+4F3iRtU/so9M2KffKsLfx1ZbfIutt1UZlj2XYho78sEiL6pajgmXUA2MGcNbkSQlacZ6//S7 hxZ0rhTtyM0rhA==; Received: from [193.50.110.253] (helo=ribbon) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pbi7W-0003Dh-Sf; Mon, 13 Mar 2023 09:21:47 -0400 From: =?utf-8?Q?Ludovic_Court=C3=A8s?= To: Winter Subject: Re: bug#61927: [PATCH 0/1] environment: Fix '--check' for shells that output ANSI escape codes based on 'TERM'. References: <20230303022535.8336-1-winter@winter.cafe> Date: Mon, 13 Mar 2023 14:21:44 +0100 In-Reply-To: <20230303022535.8336-1-winter@winter.cafe> (winter@winter.cafe's message of "Thu, 2 Mar 2023 21:25:35 -0500") Message-ID: <87lek03hxz.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 61927-done Cc: 61927-done@debbugs.gnu.org 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 (---) Hi Winter, Winter skribis: > I ran into an issue where 'guix shell --check' would fail on Debain 11's = Bash, even though the environment variable it was complaining about not bei= ng set was in fact set. OK. > As far as I can tell, the issue is caused by Bash's support for bracketed= paste [0], which is causing it to output "\x1b[?2004l\r" before the script= output, leading the first vhash entry to be invalid (in the sense that 'va= lidate-child-shell-environment' will never see it). I didn=E2=80=99t know about bracketed paste; my understanding is that it=E2= =80=99s the terminal that emits those sequences, and Bash is merely supposed to interpret them no? (E.g., Bash should make sure pasted text is not immediately executed.) Regardless, there=E2=80=99s the possibility of such escape sequences poppin= g up. > Per ncurses' terminfo database [1], setting it to nothing (which is "unkn= own," per my understanding/testing with 'tput') is the same as setting it t= o "dumb," which will hopefully get us in the clear for the future, assuming= shells play nice with regards to terminal specifications and detection. > > Given this, there are a few alternative solutions that I'd like to propos= e: > > 1. Set 'TERM' to 'dumb'. This has the benefit of being explictly specifie= d in the terminfo database, though any sane implementation should(?) fall b= ack to it if it's set to nothing instead. > 2. Use the shell non-interactively, if possible, and fall back to the scr= ipt in interactive mode. We'd have to assume that the shell takes some sort= of argument for a command (e.g. '-c'/'--command'), though based on the fac= t that we currently don't do that, I assume it's for a good reason. > 3. Strip ANSI escape codes when adding the lines to the list. This might = be the best one, though I'm unsure how best to do it. A PEG parser? A regex? I=E2=80=99m fine with setting =E2=80=98TERM=E2=80=99 to the empty string or= to =E2=80=9Cdumb=E2=80=9D. Option #2 wouldn=E2=80=99t let us test what we want (we really want to test= an interactive shell); option #3 sounds tricky and fragile to me. So I tweaked the comment and commit log and applied your patch. Thank you for the investigation and fix! Ludo=E2=80=99. ------------=_1678713722-16706-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 3 Mar 2023 02:25:48 +0000 Received: from localhost ([127.0.0.1]:59341 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv7D-0002N4-Sd for submit@debbugs.gnu.org; Thu, 02 Mar 2023 21:25:48 -0500 Received: from lists.gnu.org ([209.51.188.17]:60192) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pXv7C-0002Mx-MV for submit@debbugs.gnu.org; Thu, 02 Mar 2023 21:25:47 -0500 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 1pXv7C-0000nS-Gi for guix-patches@gnu.org; Thu, 02 Mar 2023 21:25:46 -0500 Received: from out-22.mta0.migadu.com ([2001:41d0:1004:224b::16]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pXv79-0007Lw-S2 for guix-patches@gnu.org; Thu, 02 Mar 2023 21:25:46 -0500 X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=winter.cafe; s=key1; t=1677810339; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=HZ3u6vZD+BaEcsK3HdSdnE/M0Jw7PQ5FdSYPBqKnSbs=; b=E/ahGj6eSwvFhOBPDIZOwlgzlmC1MsDCYpE/TKzPb2L2r/MXMvkoBSyYH1qSOocytn0mpV vpkNKKe6oqXEHL8/B74XbRtFRQqSLUXmQkL7gtHjAZrAny7CIKtszYU0ehd1xgeFmg0Bmx /1iVhDL6lbHzi01evbU+m5pk+ejpNL7gYcuBxvmls+aEZXCCUtgqloCNQaWZasLWEUGxM0 O0hKkWgRu+2vJfebH851j7DCmgwRdUPWQy5hOlJRHJvSrehzuQP1u21RCVn8RhTzfZzqyO Tqgs0gDrGP/6XiC6LW0bqly4m+5VsYegzwTHIDjs8OJh3WLknGAfkQT/TvMBvA== From: Winter To: guix-patches@gnu.org Subject: [PATCH 0/1] environment: Fix '--check' for shells that output ANSI escape codes based on 'TERM'. Date: Thu, 2 Mar 2023 21:25:35 -0500 Message-Id: <20230303022535.8336-1-winter@winter.cafe> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT Received-SPF: pass client-ip=2001:41d0:1004:224b::16; envelope-from=winter@winter.cafe; helo=out-22.mta0.migadu.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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit Cc: Winter 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.4 (--) Hi, I ran into an issue where 'guix shell --check' would fail on Debain 11's Bash, even though the environment variable it was complaining about not being set was in fact set. As far as I can tell, the issue is caused by Bash's support for bracketed paste [0], which is causing it to output "\x1b[?2004l\r" before the script output, leading the first vhash entry to be invalid (in the sense that 'validate-child-shell-environment' will never see it). Per ncurses' terminfo database [1], setting it to nothing (which is "unknown," per my understanding/testing with 'tput') is the same as setting it to "dumb," which will hopefully get us in the clear for the future, assuming shells play nice with regards to terminal specifications and detection. Given this, there are a few alternative solutions that I'd like to propose: 1. Set 'TERM' to 'dumb'. This has the benefit of being explictly specified in the terminfo database, though any sane implementation should(?) fall back to it if it's set to nothing instead. 2. Use the shell non-interactively, if possible, and fall back to the script in interactive mode. We'd have to assume that the shell takes some sort of argument for a command (e.g. '-c'/'--command'), though based on the fact that we currently don't do that, I assume it's for a good reason. 3. Strip ANSI escape codes when adding the lines to the list. This might be the best one, though I'm unsure how best to do it. A PEG parser? A regex? This was definitely an interesting issue to look into, and I look forward to thoughts on the matter. Thanks, Winter P.S. I've seen a few commit prefixes that touch 'guix/scripts', like "environment" (as I've used here, since it seems to be the most prominent) and "guix: shell". Is one more correct than the other? [0]: https://en.wikipedia.org/wiki/ANSI_escape_code#CSI_(Control_Sequence_Introducer)_sequences, under "Some popular private sequences" [1]: https://invisible-island.net/ncurses/terminfo.src.html#tic-unknown Winter (1): environment: Unset 'TERM' when checking environment. guix/scripts/environment.scm | 2 ++ 1 file changed, 2 insertions(+) base-commit: ea870a70e93e7ea93e35fa8e0afc3cfdb1b66ba2 -- 2.39.1 ------------=_1678713722-16706-1--