message: Don't count ALL SPENT compromised anons as potential mixins
diff: @@ -5748,9 +5748,13 @@ int CWallet::CountAnonOutputs(std::map<int64_t, int>& mOutputCounts, MaturityFil
  int minBlockHeight = anonOutput.fCoinStake || nFilter == MaturityFilter::FOR_STAKING ?
  Params().GetAnonStakeMinConfirmations() : MIN_ANON_SPEND_DEPTH;
  - if ((nFilter == MaturityFilter::NONE
  - ||(anonOutput.nBlockHeight > 0 && nBestHeight - anonOutput.nBlockHeight + 1 >= minBlockHeight)) // ao confirmed in last block has depth of 1
  - && (Params().IsProtocolV3(nBestHeight) ? anonOutput.nCompromised == 0 : true))
  + // Don't count anons which are compromised by ALL SPENT
  + int nCompromisedHeight = mapAnonOutputStats[anonOutput.nValue].nCompromisedHeight;
  +
  + if ((nFilter == MaturityFilter::NONE ||
  + (anonOutput.nBlockHeight > 0 && nBestHeight - anonOutput.nBlockHeight + 1 >= minBlockHeight)) // ao confirmed in last block has depth of 1
  + && (Params().IsProtocolV3(nBestHeight) ? anonOutput.nCompromised == 0 : true)
  + && (nCompromisedHeight == 0 || anonOutput.nBlockHeight > nCompromisedHeight))
  {
  std::map<int64_t, int>::iterator mi = mOutputCounts.find(anonOutput.nValue);
  if (mi != mOutputCounts.end())
  