using System.Numerics;
namespace Nethereum.Model
{
public class Account
{
//TODO: https://github.com/ethereum/EIPs/issues/1186
///
/// YP: 4.1
/// A scalar value equal to the number of transactions sent from this address or, in the case
// of accounts with associated code, the number of
// contract-creations made by this account
///
public BigInteger Nonce { get; set; }
///
/// YP:4.1 A scalar value equal to the number of We owned by this address.
///
public BigInteger Balance { get; set; }
///
/// / YP:4.1 A 256-bit hash of the root node of a
/// Merkle Patricia tree that encodes the storage contents of the account(a mapping between 256-bit
/// integer values), encoded into the trie as a mapping from the Keccak 256-bit hash of the 256-bit
/// Integer keys to the RLP-encoded 256-bit integer
/// values.
///
public byte[] StateRoot { get; set; } = DefaultValues.EMPTY_TRIE_HASH;
///
/// The hash of the EVM code of this
/// account—this is the code that gets executed
/// should this address receive a message call; it is
/// immutable and thus, unlike all other fields, cannot be changed after construction.All such code
/// fragments are contained in the state database under their corresponding hashes for later retrieval
///
public byte[] CodeHash { get; set; } = DefaultValues.EMPTY_DATA_HASH;
}
}