revised string deserialize