pub fn serialize<S, T>(val: &T, s: S) -> Result<S::Ok, S::Error>where S: Serializer, T: Serialize,
serde