<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def map(self, func: Callable[[Tuple[Any, Log]], Tuple[Any, Log]]) -> 'Writer': """Map a function func over the Writer value. Haskell: fmap f m = Writer $ let (a, w) = runWriter m in (f a, w) Keyword arguments: func -- Mapper function: """

        a, w = self.run()
        b, _w = func((a, w))
        return Writer(b, _w)