public bool Equals(EthTransactionInfo other)
 {
     if (ReferenceEquals(null, other))
     {
         return(false);
     }
     if (ReferenceEquals(this, other))
     {
         return(true);
     }
     return(string.Equals(Chain, other.Chain) && TokenTransfers.SequenceEqual(other.TokenTransfers) &&
            string.Equals(Status, other.Status) && Index == other.Index &&
            string.Equals(TransactionHash, other.TransactionHash) && Value.Equals(other.Value) &&
            string.Equals(FromAddress, other.FromAddress) && string.Equals(ToAddress, other.ToAddress) &&
            string.Equals(Date, other.Date) && string.Equals(BlockHash, other.BlockHash) &&
            BlockNumber == other.BlockNumber && Gas == other.Gas && GasPrice == other.GasPrice &&
            GasUsed == other.GasUsed && Nonce == other.Nonce && Confirmations == other.Confirmations &&
            string.Equals(Input, other.Input));
 }
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (Chain != null ? Chain.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (TokenTransfers != null ? TokenTransfers.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Status != null ? Status.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ Index;
         hashCode = (hashCode * 397) ^ (TransactionHash != null ? TransactionHash.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ Value.GetHashCode();
         hashCode = (hashCode * 397) ^ (FromAddress != null ? FromAddress.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (ToAddress != null ? ToAddress.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Date != null ? Date.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (BlockHash != null ? BlockHash.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ BlockNumber.GetHashCode();
         hashCode = (hashCode * 397) ^ Gas.GetHashCode();
         hashCode = (hashCode * 397) ^ GasPrice.GetHashCode();
         hashCode = (hashCode * 397) ^ GasUsed.GetHashCode();
         hashCode = (hashCode * 397) ^ Nonce.GetHashCode();
         hashCode = (hashCode * 397) ^ Confirmations.GetHashCode();
         hashCode = (hashCode * 397) ^ (Input != null ? Input.GetHashCode() : 0);
         return(hashCode);
     }
 }