started on serialization code