pub type R<T> = Result<T, Fail>;
pub enum R<T> { Ok(T), Err(Fail), }
Contains the success value
Contains the error value