added Free monad example