improve deserialize_string function