docs: def tagfunc(nargs=None, ndefs=None, nouts=None):
      """
          decorate of tagged function
      """
      def wrapper(f):
          return wraps(f)(FunctionWithTag(f, nargs=nargs, nouts=nouts, ndefs=ndefs))
  
      return wrapper