more progress on serialize