add inspect, serialize, unserialize