pub fn option_explicit_none<'de, T, D>(
    deserializer: D
) -> Result<Option<T>, D::Error>
where D: Deserializer<'de>, T: Deserialize<'de> + Default,