text: // Copyright (c) 2019 The Virtualcoin Core developers
  // Distributed under the MIT software license, see the accompanying
  // file COPYING or http://www.opensource.org/licenses/mit-license.php.
  
  #include <consensus/validation.h>
  #include <core_memusage.h>
  #include <policy/policy.h>
  #include <primitives/transaction.h>
  #include <streams.h>
  #include <test/fuzz/fuzz.h>
  #include <version.h>
  
  void test_one_input(const std::vector<uint8_t>& buffer)
  {
      CDataStream ds(buffer, SER_NETWORK, INIT_PROTO_VERSION);
      CTxOut tx_out;
      try {
          int version;
          ds >> version;
          ds.SetVersion(version);
          ds >> tx_out;
      } catch (const std::ios_base::failure&) {
          return;
      }
  
      const CFeeRate dust_relay_fee{DUST_RELAY_TX_FEE};
      (void)GetDustThreshold(tx_out, dust_relay_fee);
      (void)IsDust(tx_out, dust_relay_fee);
      (void)RecursiveDynamicUsage(tx_out);
  
      (void)tx_out.ToString();
      (void)tx_out.IsNull();
      tx_out.SetNull();
      assert(tx_out.IsNull());
  }
  