pub fn deserialize<'de, D: Deserializer<'de>, T: FromStr>(
    deserializer: D
) -> Result<Option<T>, D::Error>