public ReceiptsMessage Deserialize(RlpStream rlpStream)
        {
            ReceiptsMessage receiptsMessage = new ReceiptsMessage();

            Eth.V63.ReceiptsMessageSerializer ethSerializer = new Eth.V63.ReceiptsMessageSerializer(_specProvider);

            rlpStream.ReadSequenceLength();
            receiptsMessage.RequestId   = rlpStream.DecodeLong();
            receiptsMessage.BufferValue = rlpStream.DecodeInt();
            receiptsMessage.EthMessage  = ethSerializer.Deserialize(rlpStream);
            return(receiptsMessage);
        }
        public void Serialize(IByteBuffer byteBuffer, ReceiptsMessage message)
        {
            Eth.V63.ReceiptsMessageSerializer ethSerializer = new Eth.V63.ReceiptsMessageSerializer(_specProvider);
            Rlp ethMessage    = new Rlp(ethSerializer.Serialize(message.EthMessage));
            int contentLength = Rlp.LengthOf(message.RequestId) + Rlp.LengthOf(message.BufferValue) + ethMessage.Length;

            int totalLength = Rlp.GetSequenceRlpLength(contentLength);

            RlpStream rlpStream = new NettyRlpStream(byteBuffer);

            byteBuffer.EnsureWritable(totalLength);

            rlpStream.StartSequence(contentLength);
            rlpStream.Encode(message.RequestId);
            rlpStream.Encode(message.BufferValue);
            rlpStream.Encode(ethMessage);
        }