finish deserialize bugs