using System;
using System.Text;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using Newtonsoft.Json;
namespace MoralisUnity.Web3Api.Models
{
[DataContract]
public class Block
{
///
/// The block timestamp
/// example: 5/7/2021 11:08:35 AM
///
[DataMember(Name = "timestamp", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "timestamp")]
public string Timestamp { get; set; }
///
/// The block number
/// example: 12386788
///
[DataMember(Name = "number", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "number")]
public string Number { get; set; }
///
/// The block hash
/// example: 0x9b559aef7ea858608c2e554246fe4a24287e7aeeb976848df2b9a2531f4b9171
///
[DataMember(Name = "hash", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "hash")]
public string Hash { get; set; }
///
/// The block hash of the parent block
/// example: 0x011d1fc45839de975cc55d758943f9f1d204f80a90eb631f3bf064b80d53e045
///
[DataMember(Name = "parent_hash", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "parent_hash")]
public string ParentHash { get; set; }
///
/// The nonce
/// example: 0xedeb2d8fd2b2bdec
///
[DataMember(Name = "nonce", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "nonce")]
public string Nonce { get; set; }
///
/// example: 0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347
///
[DataMember(Name = "sha3_uncles", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "sha3_uncles")]
public string Sha3Uncles { get; set; }
///
/// example: 0xdde5fc46c5d8bcbd58207bc9f267bf43298e23791a326ff02661e99790da9996b3e0dd912c0b8202d389d282c56e4d11eb2dec4898a32b6b165f1f4cae6aa0079498eab50293f3b8defbf6af11bb75f0408a563ddfc26a3323d1ff5f9849e95d5f034d88a757ddea032c75c00708c9ff34d2207f997cc7d93fd1fa160a6bfaf62a54e31f9fe67ab95752106ba9d185bfdc9b6dc3e17427f844ee74e5c09b17b83ad6e8fc7360f5c7c3e4e1939e77a6374bee57d1fa6b2322b11ad56ad0398302de9b26d6fbfe414aa416bff141fad9d4af6aea19322e47595e342cd377403f417dfd396ab5f151095a5535f51cbc34a40ce9648927b7d1d72ab9daf253e31daf
///
[DataMember(Name = "logs_bloom", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "logs_bloom")]
public string LogsBloom { get; set; }
///
/// example: 0xe4c7bf3aff7ad07f9e80d57f7189f0252592fee6321c2a9bd9b09b6ce0690d27
///
[DataMember(Name = "transactions_root", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "transactions_root")]
public string TransactionsRoot { get; set; }
///
/// example: 0x49e3bfe7b618e27fde8fa08884803a8458b502c6534af69873a3cc926a7c724b
///
[DataMember(Name = "state_root", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "state_root")]
public string StateRoot { get; set; }
///
/// example: 0x7cf43d7e837284f036cf92c56973f5e27bdd253ca46168fa195a6b07fa719f23
///
[DataMember(Name = "receipts_root", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "receipts_root")]
public string ReceiptsRoot { get; set; }
///
/// The address of the miner
/// example: 0xea674fdde714fd979de3edf0f56aa9716b898ec8
///
[DataMember(Name = "miner", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "miner")]
public string Miner { get; set; }
///
/// The difficulty of the block
/// example: 7253857437305950
///
[DataMember(Name = "difficulty", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "difficulty")]
public string Difficulty { get; set; }
///
/// The total difficulty
/// example: 24325637817906576196890
///
[DataMember(Name = "total_difficulty", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "total_difficulty")]
public string TotalDifficulty { get; set; }
///
/// The block size
/// example: 61271
///
[DataMember(Name = "size", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "size")]
public string Size { get; set; }
///
/// example: 0x65746865726d696e652d6575726f70652d7765737433
///
[DataMember(Name = "extra_data", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "extra_data")]
public string ExtraData { get; set; }
///
/// The gas limit
/// example: 14977947
///
[DataMember(Name = "gas_limit", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "gas_limit")]
public string GasLimit { get; set; }
///
/// The gas used
/// example: 14964688
///
[DataMember(Name = "gas_used", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "gas_used")]
public string GasUsed { get; set; }
///
/// The number of transactions in the block
/// example: 252
///
[DataMember(Name = "transaction_count", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "transaction_count")]
public string TransactionCount { get; set; }
///
/// The transactions in the block
///
[DataMember(Name = "transactions", EmitDefaultValue = false)]
[JsonProperty(PropertyName = "transactions")]
public List Transactions { get; set; }
///
/// Get the string presentation of the object
///
/// String presentation of the object
public override string ToString()
{
var sb = new StringBuilder();
sb.Append("class Block{");
sb.Append(" Timestamp ").Append(Timestamp).Append("\n");
sb.Append(" Number ").Append(Number).Append("\n");
sb.Append(" Hash ").Append(Hash).Append("\n");
sb.Append(" ParentHash ").Append(ParentHash).Append("\n");
sb.Append(" Nonce ").Append(Nonce).Append("\n");
sb.Append(" Sha3Uncles ").Append(Sha3Uncles).Append("\n");
sb.Append(" LogsBloom ").Append(LogsBloom).Append("\n");
sb.Append(" TransactionsRoot ").Append(TransactionsRoot).Append("\n");
sb.Append(" StateRoot ").Append(StateRoot).Append("\n");
sb.Append(" ReceiptsRoot ").Append(ReceiptsRoot).Append("\n");
sb.Append(" Miner ").Append(Miner).Append("\n");
sb.Append(" Difficulty ").Append(Difficulty).Append("\n");
sb.Append(" TotalDifficulty ").Append(TotalDifficulty).Append("\n");
sb.Append(" Size ").Append(Size).Append("\n");
sb.Append(" ExtraData ").Append(ExtraData).Append("\n");
sb.Append(" GasLimit ").Append(GasLimit).Append("\n");
sb.Append(" GasUsed ").Append(GasUsed).Append("\n");
sb.Append(" TransactionCount ").Append(TransactionCount).Append("\n");
sb.Append(" Transactions ").Append(Transactions).Append("\n");
sb.Append("}");
return sb.ToString();
}
///
/// Get the JSON string presentation of the object
///
/// JSON string presentation of the object
public string ToJson()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
}
}