pub fn serialize<K, V, S>(
    data: &[(K, V)],
    serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
where S: Serializer, K: Serialize, V: Serialize,