helper function for fmap of dict to concern only on values.
    `pass_key(f)` would return a function which shadow input `key` and combine it
    with return of `f(value)` to `(key, f(value))`.

def pass_key(f):
    """
    helper function for fmap of dict to concern only on values.
    `pass_key(f)` would return a function which shadow input `key` and combine it
    with return of `f(value)` to `(key, f(value))`.
    """
    @func(nargs=1, nouts=1)
    def wrapper(k, v):
        return (k, f(v))
    return wrapper