Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot send transaction #2304

Closed
dmp1ce opened this issue Sep 18, 2019 · 27 comments
Closed

Cannot send transaction #2304

dmp1ce opened this issue Sep 18, 2019 · 27 comments

Comments

@dmp1ce
Copy link

dmp1ce commented Sep 18, 2019

General Description

I cannot send a transaction because Wasabi is trying to "Calculating dynamic transaction fee".

I select "All Private" and click the button to send my transaction. The send button says "Sending Transaction..." and the bottom status message says "Building transaction..." but doesn't progress beyond this point. A thread on my CPU also goes to 100% for the process wassabee.

I notice in the logs the last line says "Calculating dynamic transaction fee..."

Operating System

My operating system is Arch Linux using version 1.1.9 of Wasabi.

Logs

Logs

2019-09-18 14:44:54 INFO	Program (43)	Wasabi GUI started (9af6b9d4-e838-4b13-aeb9-5e25909ec304).
2019-09-18 14:44:57 INFO	Global (142)	Config is successfully initialized.
2019-09-18 14:44:57 INFO	HwiProcessManager (240)	Updating HWI...
2019-09-18 14:44:57 INFO	HwiProcessManager (270)	Extracted /opt/wasabi-wallet/Hwi/Software/hwi-linux64.zip to `/home/david/.walletwasabi/client/hwi`.
2019-09-18 14:44:57 INFO	HwiProcessManager (282)	Shell command executed: chmod -R 750 /home/david/.walletwasabi/client/hwi.
2019-09-18 14:44:57 INFO	TorProcessManager (253)	Starting Tor monitor...
2019-09-18 14:44:57 INFO	Global (203)	TorProcessManager is initialized.
2019-09-18 14:44:57 INFO	TorProcessManager (66)	Tor is already running.
2019-09-18 14:44:58 INFO	Global (331)	Loaded AddressManager from `/home/david/.walletwasabi/client/AddressManager/AddressManagerMain.dat`.
2019-09-18 14:44:58 INFO	MainWindow.xaml (70)	UiConfig is successfully initialized.
2019-09-18 14:45:00 INFO	Global (280)	Start connecting to nodes...
2019-09-18 14:45:00 INFO	Global (301)	Start synchronizing filters...
2019-09-18 14:45:00 INFO	Global (505)	Wallet loaded: Dave.
2019-09-18 14:45:00 INFO	Global (435)	Start Chaumian CoinJoin service...
2019-09-18 14:45:00 INFO	Global (437)	Starting WalletService...
2019-09-18 14:45:00 INFO	CcjClient (137)	CcjClient is successfully initialized.
2019-09-18 14:45:02 INFO	CcjClientState (467)	Round (9650) added.
2019-09-18 14:45:02 INFO	CcjClientState (467)	Round (9651) added.
2019-09-18 14:45:02 INFO	Global (439)	WalletService started.
2019-09-18 14:47:03 INFO	WasabiSynchronizer (247)	Downloaded filter for block 595495.
2019-09-18 14:47:04 INFO	MempoolService (114)	Start cleaning out mempool...
2019-09-18 14:47:06 INFO	MempoolService (131)	326 transactions were cleaned from mempool.
2019-09-18 14:48:23 INFO	WalletService (954)	Calculating dynamic transaction fee...

Wasabi Version

I installed Wasabi from the release .deb using the AUR script here: https://aur.archlinux.org/packages/wasabi-wallet-bin

wassabee --version
Wasabi Client Version: 1.1.9
Compatible Coordinator Version: 3
@Transisto
Copy link

Transisto commented Sep 19, 2019

Same thing under windows, (selected all privates)
image

image

and of course GPU has to be near maxed out the whole time 🤦
image

@nopara73
Copy link
Contributor

Do you have a huge amount of coins selected? We changed to NBitcoin's transaction builder instead of using our homegrown transaction building and I remember that in 2018 Stratis was complaining about very similar issues during the same scenario.

@Transisto
Copy link

Transisto commented Sep 19, 2019 via email

@nopara73
Copy link
Contributor

Will it cache and rebroadcast as soon as it can connect again?

No, if building the tx fails, then it never gets to broadcasting (nor serializing or similar.) Let me try to reproduce.

@nopara73
Copy link
Contributor

Transaction building with 79 inputs is working just fine, so it's not the size that matters.

image

@nopara73
Copy link
Contributor

@lontivero @NicolasDorier Do you have any theories?

@nopara73
Copy link
Contributor

For the record this part of the code gets stuck (based on @dmp1ce's logs)

// Get and calculate fee
Logger.LogInfo("Calculating dynamic transaction fee...");

FeeRate feeRate;
if (feeStrategy.Type == FeeStrategyType.Target)
{
	feeRate = Synchronizer.GetFeeRate(feeStrategy.Target);
}
else if (feeStrategy.Type == FeeStrategyType.Rate)
{
	feeRate = feeStrategy.Rate;
}
else
{
	throw new NotSupportedException(feeStrategy.Type.ToString());
}

var smartCoinsByOutpoint = allowedSmartCoinInputs.ToDictionary(s => s.GetOutPoint());
TransactionBuilder builder = Network.CreateTransactionBuilder();
builder.SetCoinSelector(new SmartCoinSelector(smartCoinsByOutpoint));
builder.AddCoins(allowedSmartCoinInputs.Select(c => c.GetCoin()));

foreach (var request in payments.Requests.Where(x => x.Amount.Type == MoneyRequestType.Value))
{
	var amountRequest = request.Amount;

	builder.Send(request.Destination, amountRequest.Amount);
	if (amountRequest.SubtractFee)
	{
		builder.SubtractFees();
	}
}

HdPubKey changeHdPubKey = null;

if (payments.TryGetCustomRequest(out DestinationRequest custChange))
{
	var changeScript = custChange.Destination.ScriptPubKey;
	changeHdPubKey = KeyManager.GetKeyForScriptPubKey(changeScript);

	var changeStrategy = payments.ChangeStrategy;
	if (changeStrategy == ChangeStrategy.Custom)
	{
		builder.SetChange(changeScript);
	}
	else if (changeStrategy == ChangeStrategy.AllRemainingCustom)
	{
		builder.SendAllRemaining(changeScript);
	}
	else
	{
		throw new NotSupportedException(payments.ChangeStrategy.ToString());
	}
}
else
{
	KeyManager.AssertCleanKeysIndexed(isInternal: true);
	KeyManager.AssertLockedInternalKeysIndexed(14);
	changeHdPubKey = KeyManager.GetKeys(KeyState.Clean, true).RandomElement();

	builder.SetChange(changeHdPubKey.P2wpkhScript);
}

builder.SendEstimatedFees(feeRate);

var psbt = builder.BuildPSBT(false);

var spentCoins = psbt.Inputs.Select(txin => smartCoinsByOutpoint[txin.PrevOut]).ToArray();

var realToSend = payments.Requests
	.Select(t =>
		(label: t.Label,
		destination: t.Destination,
		amount: psbt.Outputs.FirstOrDefault(o => o.ScriptPubKey == t.Destination.ScriptPubKey)?.Value))
	.Where(i => i.amount != null);

if (!psbt.TryGetFee(out var fee))
{
	throw new InvalidOperationException("Impossible to get the fees of the PSBT, this should never happen.");
}
Logger.LogInfo($"Fee: {fee.Satoshi} Satoshi.");

@Transisto
Copy link

Transisto commented Sep 20, 2019

Try with two out (change)

Sending MAX worked

@nopara73
Copy link
Contributor

Thanks, I played around with the amounts, no difference. (Although I noticed when I did larger amounts building took like half a second longer than with smaller amounts, but that's probably irrelevant here.)

@nopara73
Copy link
Contributor

@lontivero Can you play around with it on Linux? Maybe it's OS specific issue (although I doubt that, because this is pure C# code.)

@dmp1ce
Copy link
Author

dmp1ce commented Sep 20, 2019

I should have taken a screenshot. I'll try to reproduce later. For now I can tell you it was about 10 to 20 available inputs, all private. The address I was sending to was a P2SH address, the address started with a "3". I had the fee slider set to fastest, closest to the lightning bolt. For the amount I was sending, I think it would have used at least two inputs, but it could have been more depending on the building algorithm.

@lontivero
Copy link
Collaborator

@nopara73 I started reviewing Wasabi code first, I cannot see how this could happen. Next I reviewed NBitcoin's TransactionBuilder code looking for loops and retries with no obvious termination conditions (I found one but I was not able to make it iterate forever). Finally I created a test that created hundreds of transactions with lots of coins paying random fee and spending random amounts in different ways. That test was running for almost an hour and never failed not got stuck. The only thing that rest to test is the PSBT part.

@lontivero
Copy link
Collaborator

I cannot make it fail.

@dmp1ce
Copy link
Author

dmp1ce commented Sep 20, 2019

I was sending to an address I had probably sent to in the past. I'm not sure if there was supposed to be a privacy warning about that.

I wondered if it was a GUI issue, but the GUI was responsive. I was able to close Wasabi normally. I tried three times, and each attempt took longer than five minutes to build transaction. I never waited longer than five minutes for the send. I tried a slightly higher fee on the slider on one attempt.

@MaxHillebrand
Copy link
Collaborator

I was sending to an address I had probably sent to in the past. I'm not sure if there was supposed to be a privacy warning about that.

@dmp1ce this is actually a nice idea, I opened feature request here #2324

@dmp1ce
Copy link
Author

dmp1ce commented Sep 20, 2019

@MaxHillebrand Credit should go to Samourai Wallet, which does this already.

@NicolasDorier
Copy link
Collaborator

I never had any case of the TransactionBuilder having problem creating the transaction.

My guess is that it might come from the SmartCoinSelector.

@lontivero
Copy link
Collaborator

I think I got it! The following line call the coin selection algorithm many many times. It seems there is a loop somewhere in NBitcoin.
https://github.com/zkSNACKs/WalletWasabi/blob/2ee83baeaf80fd8df1743e7d6b935afb8369c97d/WalletWasabi/Services/WalletService.cs#L1012

@lontivero
Copy link
Collaborator

Yes, I go it. Here we have a way to reproduce it:

  1. Download and open the following testnet wallet:
  2. Make a transaction exactly as shown in the picture (label and address can be different of course):
TestNetWallet.json
{
  "EncryptedSecret": "6PYKgcpfjhC2QGmtN49VYMpkcsM8jPrae5qrG3uxpL1iwzsQ4cTMtQpLRQ",
  "ChainCode": "6Mf1P6MWwCA+2IKlvYaI9rsJ27Ax9utx4Dr3QoJhnKY=",
  "MasterFingerprint": "323ec8d9",
  "ExtPubKey": "xpub6CFPPrkw26abdgeKRzH6tsr5wj6XXSCJP7vRpHHt6LogxGvRw5dNP7yjbvv66A3BDBzP9NC8ZvDo6xZcvpZsC9LxWyxUtm4UkRRu6mqiQmb",
  "PasswordVerified": true,
  "MinGapLimit": 21,
  "AccountKeyPath": "84'/0'/0'",
  "BlockchainState": {
    "Network": "TestNet",
    "BestHeight": "1579160",
    "BlockStates": [
      {
        "BlockHash": "00000000000000d6d2a66003f6ed932b833ef0cbce551e09709f4572502c9393",
        "BlockHeight": "1484344",
        "TransactionIndices": [
          52
        ]
      },
      {
        "BlockHash": "000000000000002f9091bcb198e8b8f33bb365b66edaf80c7f21fe2495ca3253",
        "BlockHeight": "1484348",
        "TransactionIndices": [
          82
        ]
      },
      {
        "BlockHash": "000000000000001b3fe0af33bbf100d83e6cf429e38d721c9063fd47a283467f",
        "BlockHeight": "1484349",
        "TransactionIndices": [
          65
        ]
      },
      {
        "BlockHash": "00000000003bd613ba9a81165f04020dba69bc574d2b3a67366fc4296aced769",
        "BlockHeight": "1484451",
        "TransactionIndices": [
          40
        ]
      },
      {
        "BlockHash": "000000004d28eaa33fe9433601aeb27e1c9a2c337191975b977d8ff0a29e9b0e",
        "BlockHeight": "1489071",
        "TransactionIndices": [
          119,
          120
        ]
      },
      {
        "BlockHash": "00000000338f9a3b5be6b68335870906d4284c519dd174790668bf9a7bb57454",
        "BlockHeight": "1489248",
        "TransactionIndices": [
          157
        ]
      },
      {
        "BlockHash": "000000004fd1f65822659d6077a5aaae1501610cde91c7eb8777a66345a5c0bf",
        "BlockHeight": "1489355",
        "TransactionIndices": [
          86,
          87
        ]
      },
      {
        "BlockHash": "00000000000006921edf837cd4c47bfab5db0c892b6b1d0ca30a2d3ab9b6542f",
        "BlockHeight": "1510662",
        "TransactionIndices": [
          22
        ]
      },
      {
        "BlockHash": "0000000000000f8647e5a5befbc1820701edb144b4b80e010fc28acc15ad7adc",
        "BlockHeight": "1510702",
        "TransactionIndices": [
          18
        ]
      },
      {
        "BlockHash": "00000000000001318849cf7c4b8d2102b8cfed39d1a28edc5d57cc0f248c514c",
        "BlockHeight": "1512974",
        "TransactionIndices": [
          12
        ]
      },
      {
        "BlockHash": "00000000000000aa5c6434ee6785a028b5927cd6e9d56e2c09bdae5bf5c0a494",
        "BlockHeight": "1517820",
        "TransactionIndices": [
          84
        ]
      },
      {
        "BlockHash": "00000000001254d4245f3a545c49cdb37a906bda74ce4f6a34cba37a7e279dbb",
        "BlockHeight": "1517830",
        "TransactionIndices": [
          112,
          113
        ]
      },
      {
        "BlockHash": "0000000000000050654eaf63e3eb3760ada55103b2091b827967be17c0329f0c",
        "BlockHeight": "1517831",
        "TransactionIndices": [
          32
        ]
      },
      {
        "BlockHash": "00000000000000b5d5ad1aeb1126661d270153029f90ef6a0727946823bca9a5",
        "BlockHeight": "1518072",
        "TransactionIndices": [
          84
        ]
      },
      {
        "BlockHash": "000000000000002a131aeba0511f0bf2a40498c1c778cf7e1caac32106fab49f",
        "BlockHeight": "1518260",
        "TransactionIndices": [
          74,
          75
        ]
      },
      {
        "BlockHash": "00000000000000575b239327fb64d73caea2dbddae6a245572a8e923535ccd9b",
        "BlockHeight": "1518261",
        "TransactionIndices": [
          113
        ]
      },
      {
        "BlockHash": "0000000000000052c6ba1a435164f11318a28f85d6fd41b32a81b747a9666720",
        "BlockHeight": "1518262",
        "TransactionIndices": [
          66,
          67,
          68
        ]
      },
      {
        "BlockHash": "00000000000003d34e8d19ec4c14770f07e9d86c66a5f016317e66e04b755353",
        "BlockHeight": "1542886",
        "TransactionIndices": [
          39
        ]
      },
      {
        "BlockHash": "000000000000036962002813aff98cbf749373a2b7ed06bf24a141d66141e7a0",
        "BlockHeight": "1542891",
        "TransactionIndices": [
          77
        ]
      },
      {
        "BlockHash": "000000000000038d4b5240747ea1227051dea79b080bebd3d11b0c80ccc6850c",
        "BlockHeight": "1542893",
        "TransactionIndices": [
          42
        ]
      },
      {
        "BlockHash": "0000000000000411263e04ec0ca56dace805a7f124280d00a5141ce81e6450a2",
        "BlockHeight": "1563570",
        "TransactionIndices": [
          8
        ]
      },
      {
        "BlockHash": "0000000000000444187c38c9de9ff40d44ac17e87631c1640d0f84a6ffdb5939",
        "BlockHeight": "1563579",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "0000000000000eb3bbd1c15a261cfa4b179dc92afb77441fa299358c006e1413",
        "BlockHeight": "1563580",
        "TransactionIndices": [
          3,
          4
        ]
      },
      {
        "BlockHash": "00000000000018e14958187c043667e4f1d08d1d1d1306a22aac87ff15e6c2f4",
        "BlockHeight": "1563581",
        "TransactionIndices": [
          5,
          6,
          7,
          8
        ]
      },
      {
        "BlockHash": "0000000000001d103e0941a5790ff9e02a1336f04e1ac7ffb0045041a0897ad1",
        "BlockHeight": "1563583",
        "TransactionIndices": [
          8,
          9,
          10
        ]
      },
      {
        "BlockHash": "000000000000155fd5d2ebdc710dc117897568c3839b4d0e1d83dcce73a202be",
        "BlockHeight": "1563584",
        "TransactionIndices": [
          4,
          5
        ]
      },
      {
        "BlockHash": "00000000000009702e0e0084ed845f5eca30b4b8f3bc2e90b43b2830ca581ca4",
        "BlockHeight": "1563585",
        "TransactionIndices": [
          3,
          4
        ]
      },
      {
        "BlockHash": "00000000000010124e5a5acbf57e723d9ae345f227e4f619f66b2a2b5b81ea0c",
        "BlockHeight": "1563586",
        "TransactionIndices": [
          4,
          5
        ]
      },
      {
        "BlockHash": "0000000000001bdf9452b4cb171705f59aab616f20611d62e37058cecb962305",
        "BlockHeight": "1563588",
        "TransactionIndices": [
          4
        ]
      },
      {
        "BlockHash": "0000000000001288ae619d1d9b7cc17c15269dd150dab1e03544694ac517ed98",
        "BlockHeight": "1563589",
        "TransactionIndices": [
          4
        ]
      },
      {
        "BlockHash": "0000000000001bcfa38548e6575f864a9863b0c0045ba2378077702cceb3243c",
        "BlockHeight": "1563590",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "00000000000013c5d3f7b75db7517d45c5b2b30ac188e8b292f4f3be1519af50",
        "BlockHeight": "1563591",
        "TransactionIndices": [
          5,
          6
        ]
      },
      {
        "BlockHash": "0000000000000367473ee9bcf90a4f538126e23ddd6b617a0be441f875c20669",
        "BlockHeight": "1563592",
        "TransactionIndices": [
          2
        ]
      },
      {
        "BlockHash": "0000000000000a499c662a31dd62447897d738e4e59e69edaa92a2150fa8100c",
        "BlockHeight": "1563593",
        "TransactionIndices": [
          6,
          7
        ]
      },
      {
        "BlockHash": "0000000000000b277855d95d58f573f0e71ccb4667c7bc4fee3504af89ca4975",
        "BlockHeight": "1563594",
        "TransactionIndices": [
          3
        ]
      },
      {
        "BlockHash": "0000000000001bb19d20139ed84ab7cb8d957d4f8b798b3ea6d8f93a899b5a8d",
        "BlockHeight": "1563595",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "0000000000001b23306dc8f0b76963f1629adc2523f50a015ce8b2e294c0b3df",
        "BlockHeight": "1563596",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "0000000000000c18c3c38476aed3df43966056208b7c73dbf2ce5c945dad21af",
        "BlockHeight": "1563598",
        "TransactionIndices": [
          15,
          16,
          18
        ]
      },
      {
        "BlockHash": "00000000000020072767f97b891fc0dc5a34113a23e341482a7467c95239c62c",
        "BlockHeight": "1563599",
        "TransactionIndices": [
          5,
          6,
          7,
          8
        ]
      },
      {
        "BlockHash": "0000000000000ad778ed91eb348c1fea5394fbd1353c4550ceb9654842fa79d2",
        "BlockHeight": "1563601",
        "TransactionIndices": [
          3
        ]
      },
      {
        "BlockHash": "000000000000003f195a909351fe7f14f8066fde7a7a1185bd6490fb7ba04579",
        "BlockHeight": "1563603",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "000000000000133545b40ef223a4847393a8137b3bcae52206ea43334cea5ad5",
        "BlockHeight": "1563605",
        "TransactionIndices": [
          7,
          8,
          9
        ]
      },
      {
        "BlockHash": "0000000000000a65c7214179a2c912e20b8822635f616fd61abb2a56c17f6d67",
        "BlockHeight": "1563606",
        "TransactionIndices": [
          4
        ]
      },
      {
        "BlockHash": "000000000000014ac06fa2d90c1a0c29e9eb7414eeafd81f26bc589021a164ee",
        "BlockHeight": "1563608",
        "TransactionIndices": [
          2,
          3
        ]
      },
      {
        "BlockHash": "00000000000010de45db9e88ead36c2c11bd9536599a8e67afec770464c7018b",
        "BlockHeight": "1563610",
        "TransactionIndices": [
          9,
          10,
          11
        ]
      },
      {
        "BlockHash": "0000000000000aadec35bb01add92871cd838d4f8c8ca59daba7ce0d279ed498",
        "BlockHeight": "1563611",
        "TransactionIndices": [
          6,
          7
        ]
      },
      {
        "BlockHash": "000000000000163d5eb635381ee3de77281e872c6fb0e8e57519e585564264d9",
        "BlockHeight": "1563612",
        "TransactionIndices": [
          2
        ]
      },
      {
        "BlockHash": "000000000000126db49b6766a59bb9c9887dc7b0f3dce10f2bceda6cf87c969b",
        "BlockHeight": "1563614",
        "TransactionIndices": [
          1
        ]
      },
      {
        "BlockHash": "00000000000002ba3013ced033e982ae6d5959d337a126c235f539453f455793",
        "BlockHeight": "1563615",
        "TransactionIndices": [
          8,
          9,
          10
        ]
      },
      {
        "BlockHash": "000000000000130c4ef5cd512a831ada7fc9e141a2ecad6c6e40f6f69d18654b",
        "BlockHeight": "1563616",
        "TransactionIndices": [
          2
        ]
      },
      {
        "BlockHash": "0000000000000cc23a5ade2134063f2b71011210b160b584107c711520a2c8a1",
        "BlockHeight": "1563618",
        "TransactionIndices": [
          2
        ]
      },
      {
        "BlockHash": "000000000000008621a693ba119032cd044990e287f1c6760e9ff39059d20abb",
        "BlockHeight": "1569397",
        "TransactionIndices": [
          88,
          89
        ]
      },
      {
        "BlockHash": "00000000000002a636af7536fe3672da255adcc18c4b17d3311320fb3f0cf4b4",
        "BlockHeight": "1569403",
        "TransactionIndices": [
          77,
          78,
          79
        ]
      },
      {
        "BlockHash": "000000000010934543170f0b95c7af69635510e1f6d763a22c0f155a2232493f",
        "BlockHeight": "1569405",
        "TransactionIndices": [
          76
        ]
      },
      {
        "BlockHash": "00000000970a6e402a80f1222fc132534dcda51be084f872c7a405ad50a6b2d7",
        "BlockHeight": "1569503",
        "TransactionIndices": [
          78
        ]
      },
      {
        "BlockHash": "00000000000001c205212b4fd9a182a015f108cc2ddee5462ef8bf14bce0dc77",
        "BlockHeight": "1572737",
        "TransactionIndices": [
          17
        ]
      },
      {
        "BlockHash": "00000000000001ef1553da526cd2daa0888e4fcb84192ef3ada77fa82f39bd09",
        "BlockHeight": "1572739",
        "TransactionIndices": [
          94
        ]
      },
      {
        "BlockHash": "000000000000016fc444af45d984b96e2afef9d6ca9797ce106ae5376e0d59c4",
        "BlockHeight": "1577848",
        "TransactionIndices": [
          286
        ]
      },
      {
        "BlockHash": "000000000000010c8ac5211ae1f9dc7bcaffe6cf3536e3cfc46b1269d6a92834",
        "BlockHeight": "1577854",
        "TransactionIndices": [
          21
        ]
      },
      {
        "BlockHash": "00000000000001f7e57adb4f28b5ea31654f3069cf579499555c741e615e03d0",
        "BlockHeight": "1577856",
        "TransactionIndices": [
          11,
          21
        ]
      },
      {
        "BlockHash": "00000000000002196bf9d79692d0e5b256aaa29f332567dbf268e2186ac7f86c",
        "BlockHeight": "1577857",
        "TransactionIndices": [
          28,
          29
        ]
      },
      {
        "BlockHash": "00000000001a27e909bbac882f503c262324d46a4d4d08cdee8fdefbf99443b8",
        "BlockHeight": "1578677",
        "TransactionIndices": [
          110
        ]
      },
      {
        "BlockHash": "00000000000fd71e03ecb6fa746ef8f759a91024b2cef1b5e3346e29aeed76e9",
        "BlockHeight": "1578889",
        "TransactionIndices": [
          202,
          211
        ]
      }
    ]
  },
  "HdPubKeys": [
    {
      "PubKey": "038de0bac35131e871e5044588f35380f34186ce87a656b28bb34080c9012e3806",
      "FullKeyPath": "84'/0'/0'/1/0",
      "Label": "a, change of (), e",
      "KeyState": 2
    },
    {
      "PubKey": "0210cc443014ad4650423ac4a7dde944eee629235b4a4d2304b3c1c21cd86e3b5d",
      "FullKeyPath": "84'/0'/0'/1/1",
      "Label": "c, change of (dust?), d",
      "KeyState": 2
    },
    {
      "PubKey": "021a68bd8198dff27e879c17d46e7fc67527b347fe3c04397871febde648693ad3",
      "FullKeyPath": "84'/0'/0'/1/2",
      "Label": "change of (dust)",
      "KeyState": 2
    },
    {
      "PubKey": "038f6f4bdc3b6f1ba3f9d5f79810e5c87fd414bc62574f3054b71345d7c0617694",
      "FullKeyPath": "84'/0'/0'/1/3",
      "Label": "change of ()",
      "KeyState": 0
    },
    {
      "PubKey": "020ef1abaf72c62c35ac24e39d04d0731663c319033634f0f0c4297aa59e270f74",
      "FullKeyPath": "84'/0'/0'/1/4",
      "Label": "change of (test transaction)",
      "KeyState": 2
    },
    {
      "PubKey": "02ea96db2e52a884b4fc619be2a3ad90ffdcd56443a4c2f1edbb6e0c7c84faaf67",
      "FullKeyPath": "84'/0'/0'/1/5",
      "Label": "change of ()",
      "KeyState": 0
    },
    {
      "PubKey": "030a8646c0ac8e658896703572ea986cc2a0341ca1258e1621d423fedc344c2a5c",
      "FullKeyPath": "84'/0'/0'/1/6",
      "Label": "BitMex, a",
      "KeyState": 2
    },
    {
      "PubKey": "036e8df1ae1e5324a7dcddc42499a24830c9cc74094f343349000aabaaf237f203",
      "FullKeyPath": "84'/0'/0'/1/7",
      "Label": "change of (dust)",
      "KeyState": 2
    },
    {
      "PubKey": "021107aa1b91191fabccc2f22bd64aff182f52ac041aeb8293964fa7d8aca2b061",
      "FullKeyPath": "84'/0'/0'/1/8",
      "Label": "a, change of (), e",
      "KeyState": 2
    },
    {
      "PubKey": "03219eefbe081a566bca4c0847865c6e5c592c478968d8cea844d9c79445e655f8",
      "FullKeyPath": "84'/0'/0'/1/9",
      "Label": "a, change of (), g",
      "KeyState": 2
    },
    {
      "PubKey": "0280b75a5560225a0c062feac564a824123bb0a2b678e7ee1a0d2d309e27cf74e5",
      "FullKeyPath": "84'/0'/0'/1/10",
      "Label": "change of (notify)",
      "KeyState": 0
    },
    {
      "PubKey": "03d031f9a73502d91c7a8a5698764f6b84acfbb2fd2ae27ddc75b54e9abb640419",
      "FullKeyPath": "84'/0'/0'/1/11",
      "Label": "BitMex, Duplicated Utxo",
      "KeyState": 2
    },
    {
      "PubKey": "021a90c817935387141ae42d07b505ca052f68108d885a9e27d3fca17164080652",
      "FullKeyPath": "84'/0'/0'/1/12",
      "Label": "arbol, change of (), otro",
      "KeyState": 2
    },
    {
      "PubKey": "039e627662b645fec9840df61e75303eca1a1a57edd7a7336ecf11a08f7aa46b55",
      "FullKeyPath": "84'/0'/0'/1/13",
      "Label": "a, b, change of ()",
      "KeyState": 2
    },
    {
      "PubKey": "02b5e01eb63e36909744e791dfdc772d96fc858a1eaca112f0ada3fed830a501c0",
      "FullKeyPath": "84'/0'/0'/1/14",
      "Label": "change of (test2)",
      "KeyState": 2
    },
    {
      "PubKey": "02ece2e8cd9c26f73ca53d718e4cdb11c70ddec0a3991b64bb6b32508748abc3a3",
      "FullKeyPath": "84'/0'/0'/1/15",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0246b038cab00d86437cdb05411891022116adcdcbc4b8b7565b1c69755e59a7ce",
      "FullKeyPath": "84'/0'/0'/1/16",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0214ea4b2f7c1acc665bc29bb76ab11ab4490a45d4e3dc0e1de8fcde533b909755",
      "FullKeyPath": "84'/0'/0'/1/17",
      "Label": "change of (notify)",
      "KeyState": 2
    },
    {
      "PubKey": "03a5f26d89539fbed78be1d34b873b2c4b908cbb27aef7a9393ce3dd7b10868e65",
      "FullKeyPath": "84'/0'/0'/1/18",
      "Label": "change of ()",
      "KeyState": 0
    },
    {
      "PubKey": "037b4204eb75a7333d9c4c9c784948482c25d2318a37578cec74fd91b781bab38c",
      "FullKeyPath": "84'/0'/0'/1/19",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0386c2e1f4076e64a7b0fa4995df05fbbb3eb16cffd5037fb8842716d9935ebaef",
      "FullKeyPath": "84'/0'/0'/1/20",
      "Label": "change of (test1)",
      "KeyState": 2
    },
    {
      "PubKey": "0368f31c38e2e091308f03ad1784a01aa7132276698f49093ee031385cf2357c86",
      "FullKeyPath": "84'/0'/0'/0/0",
      "Label": "1",
      "KeyState": 2
    },
    {
      "PubKey": "034d54358d9fc9bfd398b71c8dce79557ad6a250b8a0045e1007fbe0f7c567f44c",
      "FullKeyPath": "84'/0'/0'/0/1",
      "Label": "otro",
      "KeyState": 2
    },
    {
      "PubKey": "02ad41deea123b28ce17a8e7aeffb73d1e28b31d2917baf0d0db88fa0b256c238d",
      "FullKeyPath": "84'/0'/0'/0/2",
      "Label": "d",
      "KeyState": 2
    },
    {
      "PubKey": "02e4fc01849fcb9941806c0774e0bb79576ce202bc6e8ebc30efe9e29b7daaf8f5",
      "FullKeyPath": "84'/0'/0'/0/3",
      "Label": "dd",
      "KeyState": 2
    },
    {
      "PubKey": "026faa5039fd6c8d0c5d38263d6393c818643d85fa3bbc4d6a4a77b48b9ae63283",
      "FullKeyPath": "84'/0'/0'/0/4",
      "Label": "a",
      "KeyState": 2
    },
    {
      "PubKey": "035ed725ec86101a5cc59d90f8d8412c565ec6ba248f01aa9f9f3624673aba73a2",
      "FullKeyPath": "84'/0'/0'/0/5",
      "Label": "hola",
      "KeyState": 2
    },
    {
      "PubKey": "03594252cef249f81a7dd5d322ce11a78bb265e7260c729040617d34de07fed0d7",
      "FullKeyPath": "84'/0'/0'/0/6",
      "Label": "hola",
      "KeyState": 2
    },
    {
      "PubKey": "0395535b92e8035f521926b4a5083249123243f9142dccf1afbc79527a7992c728",
      "FullKeyPath": "84'/0'/0'/0/7",
      "Label": "hola",
      "KeyState": 2
    },
    {
      "PubKey": "02c7c97f1e5ce57772978ab8c9e5b306447a6686bf97df4fdb9d608c809f100eee",
      "FullKeyPath": "84'/0'/0'/0/8",
      "Label": "hola",
      "KeyState": 2
    },
    {
      "PubKey": "03a4c9bb32753e01e72f13b42050f7fe94c6902340789356bf6ff32c3cce39c014",
      "FullKeyPath": "84'/0'/0'/0/9",
      "Label": "hola",
      "KeyState": 2
    },
    {
      "PubKey": "034311fb8bdfc610a03f3b5a8d1659c93ff8a7726777d0e24fd170dc95efee220a",
      "FullKeyPath": "84'/0'/0'/0/10",
      "Label": "payment order #454423",
      "KeyState": 2
    },
    {
      "PubKey": "02f146f8baf2b6e8b8219009ef47359f415093d13a2e51cc0e7701ae4fc3761d90",
      "FullKeyPath": "84'/0'/0'/0/11",
      "Label": "s",
      "KeyState": 2
    },
    {
      "PubKey": "03de5a3b3785a7d3887bd1af45df130c7ec64c06579e9bf7c63f7b42b0bc0ef943",
      "FullKeyPath": "84'/0'/0'/0/12",
      "Label": "f",
      "KeyState": 2
    },
    {
      "PubKey": "035f0fc89b2a8e84d20e1d64e3404b3fd0e0795f5c0637e7120776ef76cf9208e4",
      "FullKeyPath": "84'/0'/0'/0/13",
      "Label": "ffff",
      "KeyState": 2
    },
    {
      "PubKey": "0347fc8a818f3ccce2236601b76f3ae5f544dea17f84f5d5f2409951148d378e96",
      "FullKeyPath": "84'/0'/0'/0/14",
      "Label": "sss",
      "KeyState": 2
    },
    {
      "PubKey": "0209cc43b6010b78f3b10ff76cb60e7ee55a3dad031ff4caefabb038fbdbc72f54",
      "FullKeyPath": "84'/0'/0'/0/15",
      "Label": "t",
      "KeyState": 2
    },
    {
      "PubKey": "02d2243c2842948a1912baf21934d7915c66f5f5de0348ee1a2c9a53a45abcd378",
      "FullKeyPath": "84'/0'/0'/0/16",
      "Label": "tt",
      "KeyState": 2
    },
    {
      "PubKey": "027545a0888143b8e4073d8ac9c12b3fc4084eb4a1da57abbbc75cfc198503a621",
      "FullKeyPath": "84'/0'/0'/0/17",
      "Label": "ttt",
      "KeyState": 2
    },
    {
      "PubKey": "034e04993ed7355bf64e00fcd191d3ee35b3feaa4590fa0b02f60a11ae2b159973",
      "FullKeyPath": "84'/0'/0'/0/18",
      "Label": "otro",
      "KeyState": 2
    },
    {
      "PubKey": "02747c0640d771c28c02b9addac1d193dae806128a9c98a8f1894b937b9c4c95b6",
      "FullKeyPath": "84'/0'/0'/0/19",
      "Label": "aaaaa",
      "KeyState": 2
    },
    {
      "PubKey": "03c1a6a32293f246e4b00a5ea50ab2432d2b06b5bc3ee4a4342e9ad2adcb05696b",
      "FullKeyPath": "84'/0'/0'/0/20",
      "Label": "1",
      "KeyState": 2
    },
    {
      "PubKey": "03aeaf6f914e82e6e032df31149786d6e8e995476062ad17593bf9045f79c6d608",
      "FullKeyPath": "84'/0'/0'/1/21",
      "Label": "ZeroLink Change",
      "KeyState": 2
    },
    {
      "PubKey": "02d3d8b1168b6a95e742d33884468291576bf7de839ea1cac4a57390f99ae30f71",
      "FullKeyPath": "84'/0'/0'/1/22",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02853ce7aafdf0dc8a77948efd69d175df550d740f1e0d2668801a01c895cedb32",
      "FullKeyPath": "84'/0'/0'/1/23",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "024338d309e58af3fed58a6f4952161bb2c6be8fe17d714ecc8ccba437c5189c63",
      "FullKeyPath": "84'/0'/0'/1/24",
      "Label": "ZeroLink Change",
      "KeyState": 2
    },
    {
      "PubKey": "0258c63a0da494cd2e9237093fc7440c10fcce1ec6c1ee5dc1015a6930d69c3fe8",
      "FullKeyPath": "84'/0'/0'/1/25",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "032c2208ce54b3b12f1b8230d4baa802fdaea16f6128a4648dd9a4e335d52e0ea9",
      "FullKeyPath": "84'/0'/0'/1/26",
      "Label": "ZeroLink Change",
      "KeyState": 2
    },
    {
      "PubKey": "0257c898e75bef8f187d57b6674f65476001141d160e4f8dc2ee64ef659342f0b2",
      "FullKeyPath": "84'/0'/0'/1/27",
      "Label": "ZeroLink Change",
      "KeyState": 1
    },
    {
      "PubKey": "03c11f579d9f62c773059ced9b826866d62d523e3bf7539a7d525b0697c980679c",
      "FullKeyPath": "84'/0'/0'/1/28",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02378bd71f83e57c50d04178458a1d1ac920347c531c674c08d9ff073b38c0cf90",
      "FullKeyPath": "84'/0'/0'/1/29",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02f0a494f4b70c8519950f25a591851ee6d5b8846d5dd73ef4e406765fdbd7d265",
      "FullKeyPath": "84'/0'/0'/1/30",
      "Label": "ZeroLink Dequeued Change",
      "KeyState": 2
    },
    {
      "PubKey": "024189bcc3afbb8fb609ff0c02abd902a0746cdec3bb599143e214698acb560814",
      "FullKeyPath": "84'/0'/0'/1/31",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "037954bdfe1ec8b41faede0789324d7a6e11b5aa5916396d45f01e50a2080e7a98",
      "FullKeyPath": "84'/0'/0'/1/32",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "031d0ca02845825fdfb2947b47eb1a77e5d3b187f83ed15669492011b4243dd838",
      "FullKeyPath": "84'/0'/0'/1/33",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02110ebbdbd8cf0e087532ffa2a2cffc18334005f18b02666f72752fd454c6bed9",
      "FullKeyPath": "84'/0'/0'/1/34",
      "Label": "ZeroLink Change",
      "KeyState": 1
    },
    {
      "PubKey": "0200a5cba862beaaadde2b3e3f48d827b4bfe92f9ae6bd55d34a3298cdb7fb8f20",
      "FullKeyPath": "84'/0'/0'/0/21",
      "Label": "2",
      "KeyState": 2
    },
    {
      "PubKey": "02f5da8fabf0212cc364f34e1b0807161499b04d04dd068119b5ec37c5030b330b",
      "FullKeyPath": "84'/0'/0'/0/22",
      "Label": "árbol",
      "KeyState": 2
    },
    {
      "PubKey": "03c3e70d279b366695e60a1154f26f8b065f2895a6f10162643622d0f5147004b3",
      "FullKeyPath": "84'/0'/0'/0/23",
      "Label": "Hola, lechuga",
      "KeyState": 2
    },
    {
      "PubKey": "0346ea0cc1b87bb94d700d3abc53c13336d897ff396ac045bf49d338e6f2fb1da5",
      "FullKeyPath": "84'/0'/0'/0/24",
      "Label": "arbol, otro",
      "KeyState": 2
    },
    {
      "PubKey": "0337a016bed61744951ac6223b9b5e6dc701bdb381773634eea5f0be7efebd2c8b",
      "FullKeyPath": "84'/0'/0'/0/25",
      "Label": "rotura",
      "KeyState": 2
    },
    {
      "PubKey": "02744dd26e67c033ef7f1f4b00b38fd3923181cde2a90a3000024af2292e20dc34",
      "FullKeyPath": "84'/0'/0'/0/26",
      "Label": "tarbel",
      "KeyState": 2
    },
    {
      "PubKey": "03bafa0ef343ff4be1f7e34f6eae2a3a34f64fcf75c58b42859d7be19ced948cc6",
      "FullKeyPath": "84'/0'/0'/0/27",
      "Label": "érbo",
      "KeyState": 2
    },
    {
      "PubKey": "03f093bd219896a5da9fef13b93983a8f94c39d12143d1bc271406cf2a9d893fea",
      "FullKeyPath": "84'/0'/0'/0/28",
      "Label": "herbor",
      "KeyState": 2
    },
    {
      "PubKey": "02163ccc317871e1a8f595caf0634af5e738dc293a12910f711deaabac97b6d1c8",
      "FullKeyPath": "84'/0'/0'/1/35",
      "Label": "BitMex, Duplicated Utxo",
      "KeyState": 2
    },
    {
      "PubKey": "0223134b9154fb1414cb6d913d36bed2aaa0c1817c747df5c2eb67aa0c5721628c",
      "FullKeyPath": "84'/0'/0'/0/29",
      "Label": "payment order #178654",
      "KeyState": 2
    },
    {
      "PubKey": "0263ea6712e56277bcb07b14b61c30bae2267ec10e0bbf7a024d2c6a0634d6e634",
      "FullKeyPath": "84'/0'/0'/0/30",
      "Label": "payment order #178659",
      "KeyState": 2
    },
    {
      "PubKey": "033e8670324ec33f15dcb17f346c1927ee3b717070596e397eb00020899c9c9133",
      "FullKeyPath": "84'/0'/0'/1/36",
      "Label": "change of (test3)",
      "KeyState": 2
    },
    {
      "PubKey": "02f4c9509ce69db9dac65a5aba422a080e408491ba038f2a1244697f1d095c5621",
      "FullKeyPath": "84'/0'/0'/1/37",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "039f7a23adf16ce509ec1f603c4923e3fa1aa85c0aaf9400ba58175a367a9d73a2",
      "FullKeyPath": "84'/0'/0'/1/38",
      "Label": "a, change of (), e",
      "KeyState": 2
    },
    {
      "PubKey": "0241e8e6f3d3f33baf6126ae01924c7cdc960b2e229b2e4f7e6ede30ee204369df",
      "FullKeyPath": "84'/0'/0'/0/31",
      "Label": "rbx",
      "KeyState": 2
    },
    {
      "PubKey": "024a1953d6343ccb49a39f779b9f83dc80de9cd8f1735e8dcace47be479a217922",
      "FullKeyPath": "84'/0'/0'/0/32",
      "Label": "payment order #178659",
      "KeyState": 2
    },
    {
      "PubKey": "0212cc9fa470a9d25b988abe788f086aa2c39ce4fa7442760a714f2bea3ecd13c0",
      "FullKeyPath": "84'/0'/0'/1/39",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02b629840235324cf72880753bd8eafd226f0acedf801ce53d5beaf35f607de130",
      "FullKeyPath": "84'/0'/0'/0/33",
      "Label": "payment order #178671",
      "KeyState": 2
    },
    {
      "PubKey": "036fff38ec7e5609a97f87e710c85033dfe9dd86104b6162b34f0c8200969fbd7f",
      "FullKeyPath": "84'/0'/0'/1/40",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03f75f0095a20b75f798b6313f2a41ab55579e75590c8fd19513095a1e2b8e3def",
      "FullKeyPath": "84'/0'/0'/1/41",
      "Label": "a, change of (sss), e",
      "KeyState": 2
    },
    {
      "PubKey": "03918ee10b8b77cd467513ebdfb6be17e67deaeecef5616078de4cf285cdf1b145",
      "FullKeyPath": "84'/0'/0'/0/34",
      "Label": "a, b",
      "KeyState": 2
    },
    {
      "PubKey": "03b13f339e1ef6378c72f7e230c390033310f46d5b26131fb5a5290957a16face5",
      "FullKeyPath": "84'/0'/0'/0/35",
      "Label": "BitMex, a",
      "KeyState": 2
    },
    {
      "PubKey": "03ce51722a6696db820bf0fe6f144fd91dbaf98169cc4011cfa7258f557e3e8206",
      "FullKeyPath": "84'/0'/0'/0/36",
      "Label": "BitMex, Duplicated Utxo",
      "KeyState": 2
    },
    {
      "PubKey": "032bcef327fd758de9c1341ef10d45557fb13438c933d554926e60f129cd3235d5",
      "FullKeyPath": "84'/0'/0'/0/37",
      "Label": "c, d",
      "KeyState": 2
    },
    {
      "PubKey": "023be49d1d778e7e6f3838540e5b4f4c69fe460ae9ee59f850167867cf683e122d",
      "FullKeyPath": "84'/0'/0'/0/38",
      "Label": "d",
      "KeyState": 0
    },
    {
      "PubKey": "020934af96e4c8ddc1dd85fffa8fa59106d2013ca72e8415bfacab6310c7c99f6d",
      "FullKeyPath": "84'/0'/0'/0/39",
      "Label": "a, f",
      "KeyState": 2
    },
    {
      "PubKey": "021fc2461a516231a1fae7939fef5124f284095559682ab7dbc9cbc2c6403af571",
      "FullKeyPath": "84'/0'/0'/0/40",
      "Label": "a, g",
      "KeyState": 2
    },
    {
      "PubKey": "03b668759d799905ddc7952a0bda8ca7155d9c3002db4e93a3ebb76947a1fae8fb",
      "FullKeyPath": "84'/0'/0'/0/41",
      "Label": "e",
      "KeyState": 0
    },
    {
      "PubKey": "02db94b24475d04dc6701ae76c51654d36bee8dd7bafb436baffb1ed1a446ec205",
      "FullKeyPath": "84'/0'/0'/0/42",
      "Label": "e",
      "KeyState": 0
    },
    {
      "PubKey": "03d75281e15be3a74b69fe6158b88334e6f075fc64d5dbfe58da42683f283b9254",
      "FullKeyPath": "84'/0'/0'/0/43",
      "Label": "e",
      "KeyState": 0
    },
    {
      "PubKey": "0392d476095b57b204e2bc01c18ca161dc9542c31422d3ddf5c811b21c5c0a81c0",
      "FullKeyPath": "84'/0'/0'/1/42",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "021dc1b5844e00527e8e3163a8220d8cf604ec231d2d9529f0ca79131cf11ce990",
      "FullKeyPath": "84'/0'/0'/1/43",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03e854716b66446a75050c591e881704e4fafbe9fcfe88a6325950ed98ae6fe6c8",
      "FullKeyPath": "84'/0'/0'/1/44",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "039b405db3b7332fb0459c5f184a0a606de5c1d2edb38576885567b57ccba6eee7",
      "FullKeyPath": "84'/0'/0'/1/45",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "036b08da06535efa2c84a8add001545dc2a991939c2c22587ce6702ad9be5442df",
      "FullKeyPath": "84'/0'/0'/1/46",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03e94cd79a3e18fe2f6fe9554e866513b2cc58fcd0fed7ec2b9c83b5884a6dc0f6",
      "FullKeyPath": "84'/0'/0'/1/47",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02a62d7f984c5ba7744d5c6979e8d2addd21c2b002aac0c8559cba30efc0ceed82",
      "FullKeyPath": "84'/0'/0'/1/48",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03acaf8d882c476cd8bf2715dc021d3b555c6f8bd80c785be0e9c7142314eb4f52",
      "FullKeyPath": "84'/0'/0'/1/49",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03f9518fe41e5ef0445a857b138be14ca77263496955e476f6439ae0ab80b07c72",
      "FullKeyPath": "84'/0'/0'/1/50",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "0280af853c2fdccc91758bda90c80438696c6b99471ec9ff2acd4ab1744ea83630",
      "FullKeyPath": "84'/0'/0'/1/51",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "024a1942aff49defecffb62a03b411f1df5687ae980539123563962fba5e058853",
      "FullKeyPath": "84'/0'/0'/1/52",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03e1213c90814439b32093120c042c4636e51a8f95cfd03f04e1d3aead4d497ce4",
      "FullKeyPath": "84'/0'/0'/1/53",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03883feb2ca89d30cda146eab33c28b04fe74c98e9cdae85d991d1682af1d3bdfc",
      "FullKeyPath": "84'/0'/0'/1/54",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03196cdd88d50b0ab97eea82107bdb0365ea6f07005c6dcc4e8fe3a57ac431cfab",
      "FullKeyPath": "84'/0'/0'/1/55",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 1
    },
    {
      "PubKey": "02ea6d45fe7bae9813dc646026e692722872ff1971960b8708fc99242555a9ed2a",
      "FullKeyPath": "84'/0'/0'/1/56",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "026fcb29efe36f128e057ddeca9fa62b2b643093d4e172e575c8036057c03af706",
      "FullKeyPath": "84'/0'/0'/1/57",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "020e6f1d0a30f99e9ceba81275f241c02774ce6f8346b4fbcf4ae7a769be815527",
      "FullKeyPath": "84'/0'/0'/1/58",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02d51fdbd9f623f1c0b39f6934827b79c84038df6ea9ff7383945e3a2b9b815509",
      "FullKeyPath": "84'/0'/0'/1/59",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02b174b543462b1dcd3b3ef610d661f5c82c1d172798fdaae3992ef7117d6cd4c0",
      "FullKeyPath": "84'/0'/0'/1/60",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03c94e300f37715e09166237437653023e7edd1fd1b7f5becbdf80079c084fd2ca",
      "FullKeyPath": "84'/0'/0'/1/61",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "026e88d73035ced24ff2e195b27a417ae08bfe8fd6d6a555f33a0f3f27aa60b729",
      "FullKeyPath": "84'/0'/0'/1/62",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "0349b4b689071d578a7501e8120aad94c820c8ecbbc3b96c7ea4231609db841004",
      "FullKeyPath": "84'/0'/0'/1/63",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03a69503ad418641c628b1fad4aaa7b1f6fc6114bb841dc60d57f4e84f760c8b2e",
      "FullKeyPath": "84'/0'/0'/1/64",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03e25c017f84a90bb26194f46c17b4d8e3cf80c42281030c3f8c61a210ef188475",
      "FullKeyPath": "84'/0'/0'/1/65",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03c6cfec07feac696dc9794a3477aa7528919bec1e6680b1ffcaf476130d2bb399",
      "FullKeyPath": "84'/0'/0'/1/66",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "037fec7dca8f54d9cc97771b276d7199c5d383546b6dcf62eb127b8efd5e8a84bd",
      "FullKeyPath": "84'/0'/0'/1/67",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "039b54044473f8afd868755261bd0e8c1cbf1c1dcd84630059ae14c7376842d80e",
      "FullKeyPath": "84'/0'/0'/1/68",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "025beebec97ca4bbafcca4d212a04b62181e2b93744295d9f94e572547b9603b06",
      "FullKeyPath": "84'/0'/0'/1/69",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "026ea2506be178b688d3aa5ba58a8d826520d7a45f680c4527c86efa3dac6f236f",
      "FullKeyPath": "84'/0'/0'/1/70",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02d36ac0acefccc969fb335f6a67b38b71654af7ce076bfc7f74f91f19cb492a54",
      "FullKeyPath": "84'/0'/0'/1/71",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03d34beff6c933db7ef793b1fa98a2c7598f88284740345f2ba3c99e237912645d",
      "FullKeyPath": "84'/0'/0'/1/72",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03dee352e1a1b9b300421d40b99c02e134c27745b5b0d6fecb82f07dd4f1f08b7e",
      "FullKeyPath": "84'/0'/0'/1/73",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03b6a6ba685e873ca98eb86274fc24ae3606a82a8619ddbdc1c214a086f2b5f46b",
      "FullKeyPath": "84'/0'/0'/1/74",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "0391448e826fd4beec27d48febf21a17fed7d60665ac0724d3d447a36b5a46b245",
      "FullKeyPath": "84'/0'/0'/1/75",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03f051003282c3b1563413f1ac3561a3ffba75b75ba0cf73a9bc5c30b06d14051d",
      "FullKeyPath": "84'/0'/0'/1/76",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03632ab19ccbd7e4089b5a7daa473852a8f06f31d6afe303cb8632d0b80eb4ddaf",
      "FullKeyPath": "84'/0'/0'/1/77",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03ca236eedadeb1be15a95a4727a784b333de0a9350bc209496e1c406d81b99848",
      "FullKeyPath": "84'/0'/0'/1/78",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "0229f7794a4628d045652839284e077754b515c7791b0f68f93eaee798a0788989",
      "FullKeyPath": "84'/0'/0'/1/79",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "032852c14f35075c7e28c9ef8e3a971d3ef6fac677252275d0e2839f96f62debd4",
      "FullKeyPath": "84'/0'/0'/1/80",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "020a8a4397427bb88e7251f0f6d910ceda3a25552c5e93152b43786fbfcb9fa33d",
      "FullKeyPath": "84'/0'/0'/1/81",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03ec99ad402e3fdd193ca5eb90c78c70e2efec726ddce48c35d30fa3c11865f557",
      "FullKeyPath": "84'/0'/0'/1/82",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03cd418737ac20e903a1ec62fa3da32fc7232db1c23543c5b601d1c29255a94c43",
      "FullKeyPath": "84'/0'/0'/1/83",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "034a878b92c2d23fce15c65ed30842cb4e27361c32c0fdd619c95ba877e54f306a",
      "FullKeyPath": "84'/0'/0'/1/84",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "02dc6e0ffde9c872ddaac9a33b440671b6c4292df85a5a728a792d8f74699702d2",
      "FullKeyPath": "84'/0'/0'/1/85",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03457a482cf808aad414e1f922e5932df8ee7228d05d60d4b0ef206db93780210b",
      "FullKeyPath": "84'/0'/0'/1/86",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 1
    },
    {
      "PubKey": "02cb39b59d9283a67c4ec15a51c0037aae341345d3655bffd418c47be59281aca4",
      "FullKeyPath": "84'/0'/0'/1/87",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03e984b26a6b19e920f05d1bd0655780eb1f06748497a7df1f8bceda8e18397e34",
      "FullKeyPath": "84'/0'/0'/1/88",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "03782b278c64049550eb16efea964020e751e62c9071cf6633c211f53471cb1881",
      "FullKeyPath": "84'/0'/0'/1/89",
      "Label": "ZeroLink Change",
      "KeyState": 1
    },
    {
      "PubKey": "02bd3879c631551783db0ac71773797796e94bbc52ff6d7279581c35f3f93b1942",
      "FullKeyPath": "84'/0'/0'/1/90",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 2
    },
    {
      "PubKey": "0344c0f8cbfb8a8c986bdf7a293f6b0c4f1131c6c688827152b57a39541c6bd6e7",
      "FullKeyPath": "84'/0'/0'/1/91",
      "Label": "ZeroLink Mixed Coin",
      "KeyState": 1
    },
    {
      "PubKey": "0290e7cbf3325e4349b92b41fbb99cbca6bc49d71159ab968072028d3a3828a760",
      "FullKeyPath": "84'/0'/0'/1/92",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "02c9516aa67e897cd6ef4f28048655bd21a9ff7c7688a6ac057bc466039a7153f3",
      "FullKeyPath": "84'/0'/0'/1/93",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "029c28cc33ebce60dbefe6b7167fc1c738cdeff238a3718654715ff2064acc2f47",
      "FullKeyPath": "84'/0'/0'/1/94",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "03671711e8d0b828c1203ea25d3fdd9e7a556df9bd9067e289d36852e59647086e",
      "FullKeyPath": "84'/0'/0'/1/95",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "027e7214ad70d156ef4edbe41f8e101ff2111e2ee5508dcf991902b61f3ea805ff",
      "FullKeyPath": "84'/0'/0'/1/96",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "02cf2f34b03d84383145c8daad05efa8ca5d7ecc795d5234cca7264c2190c15818",
      "FullKeyPath": "84'/0'/0'/1/97",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "0358d2ff81f1866b48bafe88b8862d51e461cbbd0271ec54ca9eab1c68fac94ba2",
      "FullKeyPath": "84'/0'/0'/1/98",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "028b3156e7cc55fe428d2c0f57329da8cd583bad7a0868a31f7e8071d3f9511e8a",
      "FullKeyPath": "84'/0'/0'/1/99",
      "Label": "",
      "KeyState": 1
    },
    {
      "PubKey": "028d50593138f4ef7cdc320dc581d634368517d09fa59467d3a96d9bb3453531ac",
      "FullKeyPath": "84'/0'/0'/0/44",
      "Label": "1, a, e",
      "KeyState": 2
    },
    {
      "PubKey": "0214e10790302e905bf4eba3734a2d92287c7176ef1d42dfd1e9639592f3c7a82c",
      "FullKeyPath": "84'/0'/0'/0/45",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "02b20ee693063158ef288f81021510adb5dcf30bbf2ec14ca18791c6378ff3869d",
      "FullKeyPath": "84'/0'/0'/0/46",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "029eae1586cd9aef38def42fdb943d5af997c696ba908b8139c227916aefa11532",
      "FullKeyPath": "84'/0'/0'/0/47",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "02f0906699dcb333e9d3d379e4312f3638add27e13a765c4eb6a25e70047a52b7e",
      "FullKeyPath": "84'/0'/0'/0/48",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "0357b3dadc2c9530c21d7f43cdb538ee1a0205eba035f802869f68606fb8195a3e",
      "FullKeyPath": "84'/0'/0'/0/49",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "039663de72ad21b959e5d1649e3018a716b0572bd448086e5352f403ebc532638a",
      "FullKeyPath": "84'/0'/0'/0/50",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "029757f802e44fa399dfa34c1dec34606e02b02cbbcd7116e021aa8e0195697ef9",
      "FullKeyPath": "84'/0'/0'/0/51",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03d08c1e7b36d0ea840d67710119898147a407af4049ee767d487423b1a5cdd747",
      "FullKeyPath": "84'/0'/0'/0/52",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02ac282a8838fd7c423d1b07ba61a5b7965b6034bbcef74f01212ff7e59922ea19",
      "FullKeyPath": "84'/0'/0'/1/100",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "027cffa55484e2064ef9e800611a5d4d92c3d7492ce8ce895517ee611e25f1aa3d",
      "FullKeyPath": "84'/0'/0'/0/53",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02cdf91e25b3a0ec031c4901b4226cdecd2e78a0e05f7cd3e5da8ece54a11b44c0",
      "FullKeyPath": "84'/0'/0'/0/54",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03aa3fcf17c8d950f691f28cf04e5edf51baba2cfb1a5fb11b5a7d6d20ca40dd4a",
      "FullKeyPath": "84'/0'/0'/0/55",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "029cf85d1e8052706a758d5100875a46573497938d003badf46e881fc2124c758e",
      "FullKeyPath": "84'/0'/0'/1/101",
      "Label": "1, a, e",
      "KeyState": 2
    },
    {
      "PubKey": "0203f56acad844d6cdd9f6542758404c33dfe03d54787447d4b15435f63e8f9509",
      "FullKeyPath": "84'/0'/0'/1/102",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "035a07c461d4189cd6ecf9cdec2c85c6d1412a360027b3b4ab232e67b51f4e09d5",
      "FullKeyPath": "84'/0'/0'/1/103",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "030cf3262d0186844ca0621d53a17857897c20ba7847e33020b527c30a9a904959",
      "FullKeyPath": "84'/0'/0'/0/56",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03d5ecb982061671b5c1425a84ba9610f3d8c2841bcccbc99effcae249a47b6b14",
      "FullKeyPath": "84'/0'/0'/1/104",
      "Label": "a, f",
      "KeyState": 2
    },
    {
      "PubKey": "02a91fa9d5d54ecd79625958b9d093aaa1506281efb6cc640144ba2bd607e29074",
      "FullKeyPath": "84'/0'/0'/0/57",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02110cb732c8ac3b1dc2f662f10bdae7abf51301c7622b322b64d767bf9bcfa052",
      "FullKeyPath": "84'/0'/0'/1/105",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "02d5bfb71de60c075000f132c3f5c22b13b7567fa7e03015ebcd66c5e8b993d34c",
      "FullKeyPath": "84'/0'/0'/0/58",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "024c68b2fc49d0ac2faafc02a30c2322e0f12eda7b88fc6a15d8609147fcb3e52e",
      "FullKeyPath": "84'/0'/0'/1/106",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0318a72ea9806941563f22f87d0be7124ec8edf32803fe8e86dec4af7ce4d0cb05",
      "FullKeyPath": "84'/0'/0'/0/59",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03b7585cf85090b336935433fd3a09c55dd29a68be9b3eec97dd1a04c5cdeca74f",
      "FullKeyPath": "84'/0'/0'/0/60",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03a952775bbe25255c64ad333f92370097eb4a5ac80d789e13a34698164cc3ea2c",
      "FullKeyPath": "84'/0'/0'/1/107",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02d046284b06825cf3c8e2ce847a7a2cbf4f963cea616ef8eb7639ca68e3ab93a2",
      "FullKeyPath": "84'/0'/0'/1/108",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02a19d7384555a948d0e7755670c7c87efe95d41ca8316b4663c31b2a025046644",
      "FullKeyPath": "84'/0'/0'/0/61",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02421d702789f80fbf441c7401a9e358e2185841566b6dd3d89e5660b1b282360f",
      "FullKeyPath": "84'/0'/0'/1/109",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03babbc8b92faaaa85b8e02b8393be7f209c5157ed7a5abf90933110da465b1f80",
      "FullKeyPath": "84'/0'/0'/0/62",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "032ee076597cd8355a395ecfb2acddd684b855bce5c13e4937b3672cf10d90284e",
      "FullKeyPath": "84'/0'/0'/0/63",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03b8bcf6e6c1348dd61b341a8bf8b634ea102fdec0543fc91f8294769afb2db5fe",
      "FullKeyPath": "84'/0'/0'/1/110",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "029f8c8a19f4da6f5619345fe9a88dc8c61b5892e5da1d153d40f3f83fd86bef99",
      "FullKeyPath": "84'/0'/0'/0/64",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03384fd6fd6514c23304297983872acd1bce7daff0d40c6cc1a3146b6bc6e10f27",
      "FullKeyPath": "84'/0'/0'/1/111",
      "Label": "a, e",
      "KeyState": 2
    },
    {
      "PubKey": "031f7d1c702cfe18db9269670325342d4c116aebd37bd5e86822efc40d78f88ae2",
      "FullKeyPath": "84'/0'/0'/1/112",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "03f1cf6da9aea7483a1c1bad341015769378f1d555fbdb0bb1305b8083e3a5b07c",
      "FullKeyPath": "84'/0'/0'/0/65",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0328eec6713020e8662983c3d1b2844fafbef6a8f6eca045a226d0825939999362",
      "FullKeyPath": "84'/0'/0'/0/66",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "02e4411b3a7674ccc130ee7789ef5894cbbc20ec08a7ab55e4260ca2a61494d0cd",
      "FullKeyPath": "84'/0'/0'/1/113",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0374d4cb6f4061e8840519f5b8b11bea7df81d0175d1ca03ef8fab59ec6d30f9de",
      "FullKeyPath": "84'/0'/0'/1/114",
      "Label": "",
      "KeyState": 0
    },
    {
      "PubKey": "0362138ea2f208571c030eb322c5ba36ed4a3902753a0e153e77cd62e9ddee13bd",
      "FullKeyPath": "84'/0'/0'/1/115",
      "Label": "",
      "KeyState": 0
    }
  ]
}

image

You will see the transaction takes forever to be built and that the coin selection Select method is invoked thounsand times.

image

I was focused on getting a reproducible scenario. I will continue debugging this issue but I am sure this is a NBitcoin bug @NicolasDorier

@nopara73
Copy link
Contributor

Fixing this should go onto Wasabi's backport branch.

@lontivero
Copy link
Collaborator

The problem is our SmartCoinSelector selects same-scriptpubkey coins in order to spend them together and that makes nbitcoin enter in loop because if I understand it correctly, it doesn't expect the coin selector selects more coins than what are necessary. In other words, I think our coins selection strategy is not compatible. One solution could be to avoid spending same-scriptpubkey coins together.

There is a UT in this NBitcoin repo PR MetacoSA/NBitcoin#745 where the problem is reproducible.
@nopara73 what do you think?

@nopara73
Copy link
Contributor

In a meeting we decided that @lontivero will try to fix it, but he is confused by NBitcoin code, so it's unlikely he'll succeed. We'll wait for @NicolasDorier to come around and try to fix it for a few days, if it won't happen, then we roll out a hotfix that dumbs down the coin selection algorithm so NBitcoin becomes satisfied with it.

@dmp1ce
Copy link
Author

dmp1ce commented Sep 24, 2019

Don't rush on my account. I can wait for the proper fix. Thanks!

@lontivero
Copy link
Collaborator

I have fixed it. Could you test my PR? #2334

@yahiheb
Copy link
Collaborator

yahiheb commented Sep 24, 2019

Tested #2334 with TestNetWallet.json and it works. great job @lontivero

@nopara73
Copy link
Contributor

Fixed. Tomorrow we'll do a non-notifying release with the fix.

@molnard
Copy link
Collaborator

molnard commented Sep 26, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

8 participants