From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Thu, 22 Jan 2026 03:37:58 -0800 Received: from mail-oa1-f64.google.com ([209.85.160.64]) by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1vit0f-0006hA-IR for bitcoindev@gnusha.org; Thu, 22 Jan 2026 03:37:58 -0800 Received: by mail-oa1-f64.google.com with SMTP id 586e51a60fabf-40422dd039dsf2070330fac.1 for ; Thu, 22 Jan 2026 03:37:57 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1769081871; cv=pass; d=google.com; s=arc-20240605; b=IFCbgyM7npGdFdmST8DhQj+KPYm0KZlxLe4GvvhnSaPNOFi0nfdqF8TBc/UNbZuoFD J1JBs5zHQQNmWbpUk9/pjifv91js9gxydFlB47CnSe6P+1ceffHfMsWES6rlhJ4gtwpR LD5ZCfhftMHVf4E5dp00UXg4owOjRR68i/zxY1BfhB+MrQSVrtEmR6IL67AXDBqpclCq CtpyC/UKPVVm58KeVYcY7U42dcllkVF3IvBjeo6lV5IWTugLBdi9mRCrIeCrpA1j52Iu Fy65j+V4hUTo2gGDngdMALaL3sA19s+U6p5JAM+NnpygBwoJDs/m6YtKkSHOQabxxb4k a5pQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:mime-version:feedback-id :references:in-reply-to:message-id:subject:cc:from:to:date :dkim-signature; bh=bWjnuJlkkvbpT3s3OP/cpWn7UitRfDtWyX3tt+dP9Hk=; fh=m/s3F93l2uTJcsfGY7zGBmDOBD3ygGfiIs3GzkAX5+Q=; b=fUQgfDprW4Soj18lQ1kjNVK2MqEnktCp2HSnqlX64oHE65xWM3D6OG2NbfbR/qWVA5 uGQT9yBsbde0ci8j0LDT3P5bsWWSmp80JHs81DE8sVUQGy1fuBussQfPOrBhDL13Z9sb q8n/xqWGxJrIlG+QCf5kG9YV7R2brjmq/h0+L1IJAJoqL/V6xZ+ivZ6yaQ55n/CLBFaD P7xL7JT1RVMYWpsZbBof1bTitmYAHeUyxZvkiLEiR1bvOJavkZThNsn3+h9IMOT/bqbO vMzOo2ltef6FLGgioSrh/JGFQRmazqDM8nOrCWmsLNrVeHvVsnE5I/FHBNxo9ZnOYrAu 0r4g==; darn=gnusha.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@protonmail.com header.s=protonmail3 header.b=riJ7OoJ0; spf=pass (google.com: domain of bymet4@protonmail.com designates 79.135.106.103 as permitted sender) smtp.mailfrom=bymet4@protonmail.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1769081871; x=1769686671; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :feedback-id:references:in-reply-to:message-id:subject:cc:from:to :date:from:to:cc:subject:date:message-id:reply-to; bh=bWjnuJlkkvbpT3s3OP/cpWn7UitRfDtWyX3tt+dP9Hk=; b=D4jimLFbVBYrI9+/8Wc65f2P5B3I2tcPx/WaNXQ6uz1umFDmEXBiircz6kX+djTjF5 ZPCrU6DA2f2Ietbf+43m9ggT5uL6xvLq0xttGQCkrnWUbn9Zpzcrz0txjwLwwXIA8EmY 4KIRwoTQF16reQetBOAwttC5zgFs9h3ALnJ+2n9CUEV/mkg+Hkb1DZQSaXlcfkGTPzlN qH68cNL3esttBslC7G1zl4xf0mEgerGEsDCoyPDw+FeBSMUTlBUJmNDPUbAfSe3uPfiB jP/bKhNFcuPtrBZY+gETw758OQjhz5/4tOni6WlJQY7/fMjWWJciNz/u81f9Bbgu2ZDm lV8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769081871; x=1769686671; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :feedback-id:references:in-reply-to:message-id:subject:cc:from:to :date:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=bWjnuJlkkvbpT3s3OP/cpWn7UitRfDtWyX3tt+dP9Hk=; b=f79WIhy6KoRrhQ6u40BoD3Z5BaT+1/o7Dcyni4wzkSz+HwNbHxyhSYETLXbFk1VTHZ BsHTS3Z2m6Ie43tupa+gGMFdk/iURsgBz+nups7WcXAUolvK3ta2bag708KM3eVlWXts S87UFdjo34pmU8Xgf+/RjJI0GPpGfXr/rnAL7h0J2WNbNb6h2yDaFeCDqbg7PXhNt4Ek p0PEiRsKGxYJ5z7kUtKcWE5hI6PrNntK1/H6ev9J6mDAhmeEoMSqJUqfX5OzqeRf+5r6 qzyrF5IeF8S+BE4E0RanFyj6D0He1ADEbKezK35dclsx7WKN/zJqTEBTdJPGyubR5pz6 oqnA== X-Forwarded-Encrypted: i=2; AJvYcCWCfYdk0LphrJGoO7B5JYxd3f5dINhB0Y1vLq0Zg9yP9/GAAW+ZeHWWYU/sXgkCY+BH98kYgYIXQRNf@gnusha.org X-Gm-Message-State: AOJu0YwZXT8MxdMVS54WSeOsd4JyO5Dt/3mlq7XDazmQ0+KoGpNe4vIL Ahdzuhmmh2dekQ2CwPQN8kqvjEg8U4OJkcZq3kdNYhFxvvXgBPSDI8RQ X-Received: by 2002:a05:6871:14f:b0:3f5:6f2:d67b with SMTP id 586e51a60fabf-40882de7334mr1583378fac.26.1769081870649; Thu, 22 Jan 2026 03:37:50 -0800 (PST) X-BeenThere: bitcoindev@googlegroups.com; h="AV1CL+Fs42LGU09Ijy2FxNJJye4/+royaLplm4EgNHjLe1pPfQ==" Received: by 2002:a05:6871:792:b0:3fd:e7af:6a2 with SMTP id 586e51a60fabf-4085b0ff9d6ls673269fac.1.-pod-prod-00-us-canary; Thu, 22 Jan 2026 03:37:46 -0800 (PST) X-Received: by 2002:a05:6808:18aa:b0:450:826e:5df1 with SMTP id 5614622812f47-45ea3d785c2mr1413403b6e.19.1769081866883; Thu, 22 Jan 2026 03:37:46 -0800 (PST) Received: by 2002:a05:6402:1291:b0:658:37e5:9cdb with SMTP id 4fb4d7f45d1cf-65837e5a19amsa12; Thu, 22 Jan 2026 02:57:02 -0800 (PST) X-Received: by 2002:a17:907:2d2a:b0:b73:7a44:b4d5 with SMTP id a640c23a62f3a-b8796b30878mr1607835566b.41.1769079420531; Thu, 22 Jan 2026 02:57:00 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1769079420; cv=none; d=google.com; s=arc-20240605; b=FTnW9+PIeaeA2WgfNRVIoSJ+TIVBMnAbUtVZissa/FZXgRw8oLFAi+mnGiZY+oFU8S F549rNkJ1mKZrlxaGVZT2W4Fv/bEU/mSt/VB8BBexufJP0i6aAdy4BolxX8LB6cdmX+G TIM0eQhPs+y9wM4zI2akJY3JTSSM/gnC7mvtuyBFkHHcottD7DJdrVo0xszqzChGOgEm q+aKY2Dx5wKAdxHeCLoIyUL605YuOMx7iuwkE0HFq/L2ey4aYOtT5xOIssJuDSo5Q7HH 1LcCLavJJoNKEVvXB5DNFe+1aheQUb0+DhT8vg9wzadTsHCECrZs6hHKJO3AKk35E6DE Sneg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=mime-version:feedback-id:references:in-reply-to:message-id:subject :cc:from:to:date:dkim-signature; bh=skH0AmtdAkbuUIXenpz0FZsIvUCIp22PXQBeyaP7q0A=; fh=EFlQbHGamGtHS0dhETioXI40HqKi8X+6ygOktExwe2U=; b=Ot92z5aecM9TKhZqLqEXWx+zRjXemm46FfhDXMNu2aIWWOitzduy22ysPmBP/OgJWd AH5OHXNP0zuuOJEDyyZRRT7q5MS1+7fF4onLOUnjoGqXRP8NPKEAkvpRSi80wPVhLhHv OAbOsnErt6kuDRhRX6cffjp0kksM69PJPOJk4fl4AWDfsDzk/ctntqoqhY2E1P+mU6WJ 1u/gqr3V9lTjsOlpOdrHmb7NUHfVPSuaefiSmqFCwnA9VwNB52+v5+n2YF4lyFY3kz7p iPRHxOOBwYMH7UIKO5y6bPzp0seqXMlywn+DBj5uw5Do26M8rNed9bd0vEPylcKS89xe lRqQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@protonmail.com header.s=protonmail3 header.b=riJ7OoJ0; spf=pass (google.com: domain of bymet4@protonmail.com designates 79.135.106.103 as permitted sender) smtp.mailfrom=bymet4@protonmail.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com Received: from mail-106103.protonmail.ch (mail-106103.protonmail.ch. [79.135.106.103]) by gmr-mx.google.com with ESMTPS id 4fb4d7f45d1cf-655aef44c8fsi286031a12.1.2026.01.22.02.57.00 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Jan 2026 02:57:00 -0800 (PST) Received-SPF: pass (google.com: domain of bymet4@protonmail.com designates 79.135.106.103 as permitted sender) client-ip=79.135.106.103; Date: Thu, 22 Jan 2026 10:56:57 +0000 To: Saint Wenhao From: "'Angelo' via Bitcoin Development Mailing List" Cc: "bitcoindev@googlegroups.com" Subject: [bitcoindev] Re: [bitcoin-dev] Unbreaking testnet4 Message-ID: <-XaFaE2DFoVGKF0rABuGC3vtjLoA2zptE5L-xP1FQg3JPwSdc3-AQJZep7AMO3dOYpxD-jK3l2DtoHpz9344ZTQ8vwONoNj8HliVHy4C5fU=@protonmail.com> In-Reply-To: References: <85djL2Ah0Mh9Appt934138jLRE23gGmaIr96y8q-clEmMa_APPZLerKrrUZN524_Diq4pOydQLaEOZ3XBy4-sQIPxYODOHreM5RWuNHILto=@protonmail.com> Feedback-ID: 45585361:user:proton X-Pm-Message-ID: 4ac3dc41f7c89f1ea92811e541f542b0d2e541dd MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1=_wnoZwjmIm1X860nNVBbTQP6KkTMcUm4x9LQARBn9tUM" X-Original-Sender: bymet4@protonmail.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@protonmail.com header.s=protonmail3 header.b=riJ7OoJ0; spf=pass (google.com: domain of bymet4@protonmail.com designates 79.135.106.103 as permitted sender) smtp.mailfrom=bymet4@protonmail.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=protonmail.com X-Original-From: Angelo Reply-To: Angelo Precedence: list Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com List-ID: X-Google-Group-Id: 786775582512 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Score: -0.7 (/) --b1=_wnoZwjmIm1X860nNVBbTQP6KkTMcUm4x9LQARBn9tUM Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable - Yes, but you need some test cases as well. I added unit tests that test the modified functions in isolation. Check my = changes again. Testnet4 fork behavior (4 tests): 1. testnet4_min_difficulty_pre_fork: At height 149,999, min-difficulty bloc= ks ARE allowed (returns powLimit when block is >20min late) 2. testnet4_min_difficulty_at_fork: At height 150,000, min-difficulty block= s are NOT allowed (returns previous difficulty instead) 3. testnet4_min_difficulty_post_fork: At height 150,001, min-difficulty blo= cks are NOT allowed. 4. testnet4_permitted_difficulty_transition: PermittedDifficultyTransition(= ) is permissive before fork, strict after. Other chains unaffected (3 tests): 5. regtest_min_difficulty_unaffected: Regtest still allows min-difficulty a= t any height (nMinDifficultyBlocksForkHeight=3D0 means no fork) 6. mainnet_min_difficulty_unaffected: Mainnet unaffected (fPowAllowMinDiffi= cultyBlocks=3Dfalse) 7. Existing ChainParams_TESTNET4_sanity already verifies basic testnet4 par= am sanity. Running the proof-of-work tests, I get no errors detected: > =E2=80=8B$ ./build/bin/test_bitcoin --run_test=3Dpow_tests > Running 21 test cases... > *** No errors detected > > $ ./build/bin/test_bitcoin --run_test=3Dpow_tests/testnet4* > Running 4 test cases... > > *** No errors detected If you have any other unit tests in mind, let me know, but I think those ar= e enough. - Also, rejecting all blocks with CPU difficulty would mean, that the updat= ed network will be stuck from time to time, when ASIC miners will come in, = raise the difficulty, and then go away, leaving the rest of the users with = halted chain. The network is already in a halted chain, because empty blocks are propagat= ed faster than non-empty, and transactions are confirmed most often when AS= IC miners include them in their blocks. When ASIC miners go away with the c= urrent model, the users will have to wait for a much longer time, due to em= pty blocks. On Monday, January 19th, 2026 at 12:28 PM, Saint Wenhao wrote: >> The changes in the code are minimal. > > Yes, but you need some test cases as well. > >> We could modify the code to not suffer from the temporary 1-hour block i= nterval if needed. > > It is not needed. Testnet4 overproduced around 30k blocks, if we count th= e time between today, and the Genesis Block. If it will take three months, = instead of two weeks, to re-adjust the difficulty, then it wouldn't matter = that much, because we already have around 1.5 million more coins, than we s= hould have today. > > Also, rejecting all blocks with CPU difficulty would mean, that the updat= ed network will be stuck from time to time, when ASIC miners will come in, = raise the difficulty, and then go away, leaving the rest of the users with = halted chain. > > pon., 19 sty 2026 o 00:35 'Angelo' via Bitcoin Development Mailing List <= bitcoindev@googlegroups.com> napisa=C5=82(a): > >> Hello mailing list. >> >> I have forked Bitcoin Core and modified the code to fix testnet4 by disa= bling the min difficulty rule after block 150,000: https://github.com/bitco= in/bitcoin/compare/master...batmanbytes:bitcoin:testnet4-fix >> >> The changes in the code are minimal. As I've written in [Bitcointalk](ht= tps://bitcointalk.org/index.php?topic=3D5569103.msg66301279#msg66301279): >> >>> I have introduced int nMinDifficultyBlocksForkHeight which is 0 by defa= ult in consensus/params.h, only ever used by the CTestNet4Params class. Get= NextWorkRequired and PermittedDifficultyTransition are also modified to che= ck whether min difficulty blocks are enabled, and if yes, whether nMinDiffi= cultyBlocksForkHeight is 0 (which would indicate it is not testnet4). >> >> With no other changes to the code, during the epoch that includes block = 150,000 (which already began at block 149,184), we should expect the block = interval to increase by roughly sixfold (to about one hour per block). This= is because the effective hashrate would correspond to approximately one-si= xth of the difficulty. The difficulty increases by about 6x since there are= roughly six times more difficulty-1 blocks than blocks at the normal diffi= culty. >> >> We could modify the code to not suffer from the temporary 1-hour block i= nterval if needed. I'm just interested to see what you think of those chang= es, so that we can move forward. >> >> -- >> You received this message because you are subscribed to the Google Group= s "Bitcoin Development Mailing List" group. >> To unsubscribe from this group and stop receiving emails from it, send a= n email to bitcoindev+unsubscribe@googlegroups.com. >> To view this discussion visit https://groups.google.com/d/msgid/bitcoind= ev/85djL2Ah0Mh9Appt934138jLRE23gGmaIr96y8q-clEmMa_APPZLerKrrUZN524_Diq4pOyd= QLaEOZ3XBy4-sQIPxYODOHreM5RWuNHILto%3D%40protonmail.com. > > -- > You received this message because you are subscribed to the Google Groups= "Bitcoin Development Mailing List" group. > To unsubscribe from this group and stop receiving emails from it, send an= email to bitcoindev+unsubscribe@googlegroups.com. > To view this discussion visit https://groups.google.com/d/msgid/bitcoinde= v/CACgYNOLCvOiHSSpU0m9mGZmjH1JYb1S%2B_XfGpOFUV%2BgyJsGNKQ%40mail.gmail.com. --=20 You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/= -XaFaE2DFoVGKF0rABuGC3vtjLoA2zptE5L-xP1FQg3JPwSdc3-AQJZep7AMO3dOYpxD-jK3l2D= toHpz9344ZTQ8vwONoNj8HliVHy4C5fU%3D%40protonmail.com. --b1=_wnoZwjmIm1X860nNVBbTQP6KkTMcUm4x9LQARBn9tUM Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
  • Yes, but you need some test cases as well.

I added unit tests that tes= t the modified functions in isolation. Check my changes again.
<= br>
Testnet4 fork behavior (4 tests):

1. testnet4_min_difficulty_pre_fork: At heigh= t 149,999, min-difficulty blocks ARE allowed (returns powLimit when block i= s >20min late)
2. testnet4_min_difficulty_at_fork= : At height 150,000, min-difficulty blocks are NOT allowed (returns previou= s difficulty instead)
3. testnet4_min_difficulty_pos= t_fork: At height 150,001, min-difficulty blocks are NOT allowed.4. testnet4_permitted_difficulty_transition: PermittedDifficultyTra= nsition() is permissive before fork, strict after.
<= br>
Other chains unaffected (3 tests):
<= div>5. regtest_min_difficulty_unaffected: Regtest still allows min-di= fficulty at any height (nMinDifficultyBlocksForkHeight=3D0 means no fork)
6. mainnet_min_difficulty_unaffected: Mainnet unaffec= ted (fPowAllowMinDifficultyBlocks=3Dfalse)
7. Existi= ng ChainParams_TESTNET4_sanity already verifies basic testnet4 param sanity= .
  
Running = the proof-of-work tests, I get no errors detected:

=E2=80=8B$ ./build/bin/test_bitcoin --run_test= =3Dpow_tests  
Running 21 test cases...
=

*** No errors detected

$ ./build/bin/test_bitcoin --run_test=3Dpow_tests= /testnet4*
Running 4 test cases...

*** No errors detected=

If you have any other = unit tests in mind, let me know, but I think those are enough.
  • Also, = rejecting all blocks with CPU difficulty would mean, that the updated netwo= rk will be stuck from time to time, when ASIC miners will come in, raise th= e difficulty, and then go away, leaving the rest of the users with halted c= hain.

The network is already in = a halted chain, because empty blocks are propagated faster than non-empty, = and transactions are confirmed most often when ASIC miners include them in = their blocks. When ASIC miners go away with the current model, the users wi= ll have to wait for a much longer time, due to empty blocks.
On Monday, January 19th, 2026 at 12:28 PM, Saint Wenhao <saintwe= nhao@gmail.com> wrote:
> The changes in the code are minimal.
<= br>Yes, but you need some test cases as well.

> We could modify t= he code to not suffer from the temporary 1-hour block interval if needed.
It is not needed. Testnet4 overproduced around 30k blocks, if we coun= t the time between today, and the Genesis Block. If it will take three mont= hs, instead of two weeks, to re-adjust the difficulty, then it wouldn't mat= ter that much, because we already have around 1.5 million more coins, than = we should have today.

Also, rejecting all blocks with CPU difficulty= would mean, that the updated network will be stuck from time to time, when= ASIC miners will come in, raise the difficulty, and then go away, leaving = the rest of the users with halted chain.

pon., 19 sty = 2026 o 00:35 'Angelo' via Bitcoin Development Mailing List <bit= coindev@googlegroups.com> napisa=C5=82(a):
Hello = mailing list.

I have forked Bitcoin Core and modified the code t= o fix testnet4 by disabling the min difficulty rule after block 150,000: https://github.com/bitcoin/bitcoin/compare/master...batmanbytes:bitco= in:testnet4-fix

The changes in the code are minimal. A= s I've written in Bitcointalk:
= I have introduced int nMinDifficultyBlocksForkHeight which is 0 by default in consensus/params.h, only ever used by the CTestNet4Params class. GetNextWorkRequired and PermittedDifficultyTransition are also modified to check whether min difficulty blocks are enabled, and if yes, whether nMinDifficultyBlocksForkHeight is 0 (which would indicate it is not testnet4).

With no other= changes to the code, during the epoch that includes block 150,000 (which a= lready began at block 149,184), we should expect the block interval to incr= ease by roughly sixfold (to about one hour per block). This is because the = effective hashrate would correspond to approximately one-sixth of the diffi= culty. The difficulty increases by about 6x since there are roughly six tim= es more difficulty-1 blocks than blocks at the normal difficulty.

We could modify the code to not suffer from the temporary 1= -hour block interval if needed. I'm just interested to see what you think o= f those changes, so that we can move forward.

--
You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@goo= glegroups.com.
To view this discussion visit https://groups.google.com/d/ms= gid/bitcoindev/85djL2Ah0Mh9Appt934138jLRE23gGmaIr96y8q-clEmMa_APPZLerKrrUZN= 524_Diq4pOydQLaEOZ3XBy4-sQIPxYODOHreM5RWuNHILto%3D%40protonmail.com.

--
You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://gr= oups.google.com/d/msgid/bitcoindev/CACgYNOLCvOiHSSpU0m9mGZmjH1JYb1S%2B_XfGp= OFUV%2BgyJsGNKQ%40mail.gmail.com.

--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoind= ev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/= -XaFaE2DFoVGKF0rABuGC3vtjLoA2zptE5L-xP1FQg3JPwSdc3-AQJZep7AMO3dOYpxD-jK3l2D= toHpz9344ZTQ8vwONoNj8HliVHy4C5fU%3D%40protonmail.com.
--b1=_wnoZwjmIm1X860nNVBbTQP6KkTMcUm4x9LQARBn9tUM--