functions fmap and take