Enhancing model so that it provides serialize/deserialize interfaces that can overridden to customize how data is processed by the model