code: def tuple_arg(fn):
      
      @wraps(fn)
      def wrapped(*args, **kwargs):
          args = map(tuplefy, args)
          return fn(*args, **kwargs)
  
      return wrapped
docs: fun(1,2) -> fun((1,), (2,))로
      f(1,2,3) =>  f((1,), (2,), (3,))
      :param fn:
      :return: