implement retro_serialize/unserialize