pub fn read<T, R>(s: R) -> Result<T>where T: DeserializeOwned, R: Read, R::Error: Debug + Send + Sync + 'static,