pub fn serialize<T, S>(
    value: &Option<T>,
    serializer: S
) -> Result<S::Ok, S::Error>where
    S: Serializer,
    T: Serialize,