protected override void Unpack(Unpacker unpacker)
 {
     base.Unpack(unpacker);
     Transaction = Operation.Restore <Transaction>(unpacker);
     Hops        = unpacker.UnpackInt();
     if (unpacker.UnpackBool())
     {
         Payload = new NodeTransactionMessagePayload(unpacker);
     }
 }
 public NodeTransactionMessage(Transaction transaction, NodeTransactionMessagePayload payload, int hops = 0) : this()
 {
     Transaction = transaction;
     Hops        = hops;
     Payload     = payload;
 }