/// <summary> /// Gets <see cref="Bencodex.Types.Dictionary"/> representation of /// <see cref="BlockHeader"/>. /// </summary> /// <returns><see cref="Bencodex.Types.Dictionary"/> representation of /// <see cref="BlockHeader"/>.</returns> public Bencodex.Types.Dictionary ToBencodex() { var dict = Bencodex.Types.Dictionary.Empty .Add(IndexKey, Index) .Add(TimestampKey, Timestamp) .Add(DifficultyKey, Difficulty) .Add(TotalDifficultyKey, (IValue)(Bencodex.Types.Integer)TotalDifficulty) .Add(NonceKey, Nonce.ToArray()) .Add(HashKey, Hash.ToArray()); if (Miner.Any()) { dict = dict.Add(MinerKey, Miner.ToArray()); } if (PreviousHash.Any()) { dict = dict.Add(PreviousHashKey, PreviousHash.ToArray()); } if (TxHash.Any()) { dict = dict.Add(TxHashKey, TxHash.ToArray()); } return(dict); }