public void ReadWrite(BitcoinStream stream) { if (stream.Serializing) { ulong val = CompressAmount((ulong)_TxOut.Value.Satoshi); stream.ReadWriteAsCompactVarInt(ref val); } else { ulong val = 0; stream.ReadWriteAsCompactVarInt(ref val); _TxOut.Value = new Money(DecompressAmount(val)); } ScriptCompressor cscript = new ScriptCompressor(_TxOut.ScriptPubKey); stream.ReadWrite(ref cscript); if (!stream.Serializing) { _TxOut.ScriptPubKey = new Script(cscript.ScriptBytes); } }