Solutions for Functor and Monad
Solutions for State monad