implemented my-map function