public static MemberView Deserialize(Stream bytes) { var mask = Int32Proxy.Deserialize(bytes); var view = new MemberView(); if ((mask & 1) != 0) { view.MemberItems = ListProxy <int> .Deserialize(bytes, new ListProxy <int> .Deserializer <int>(Int32Proxy.Deserialize)); } if ((mask & 2) != 0) { view.MemberWallet = MemberWalletViewProxy.Deserialize(bytes); } if ((mask & 4) != 0) { view.PublicProfile = PublicProfileViewProxy.Deserialize(bytes); } return(view); }