code: def with_formatter(formatter):
      
      def _decorator_after_args(unwrapped):
          def _wrapped(self, *args, **kwargs):
              logging.debug('unwrapped: %s', unwrapped)
              logging.debug('self: %s', self)
              logging.debug('args: %s', args)
              logging.debug('kwargs: %s', kwargs)
              return_value = unwrapped(self, *args, **kwargs)
              if 'raw' in kwargs and kwargs['raw']:
                  return return_value
              else:
                  return formatter(return_value)
          return _wrapped
      return _decorator_after_args
docs: Apply a formatter function the return value
      of the decorated function.