pub fn deserialize<'de, D, T, Seed>(
    seed: &mut Seed,
    deserializer: D
) -> Result<RwLock<T>, D::Error>
where D: Deserializer<'de>, T: DeserializeState<'de, Seed>,