pub fn serialize<S, T, Seed, Seed2>(
    symbol: &T,
    serializer: S,
    seed: &Seed
) -> Result<S::Ok, S::Error>
where S: Serializer, T: SerializeState<Seed2>, Seed: Borrow<Seed2>,