working on serialization -- in progress