public override void LooseMarshal(OpenWireFormat wireFormat, Object o, BinaryWriter dataOut)
{
WireFormatInfo info = (WireFormatInfo)o;
info.BeforeMarshall(wireFormat);
base.LooseMarshal(wireFormat, o, dataOut);
dataOut.Write(info.Magic, 0, 8);
dataOut.Write(info.Version);
dataOut.Write(info.MarshalledProperties!=null);
if(info.MarshalledProperties!=null) {
dataOut.Write(info.MarshalledProperties.Length);
dataOut.Write(info.MarshalledProperties);
}
info.AfterMarshall(wireFormat);
}