Implement functor exercises