- modified code to correctly use new de/serialization abstraction