def METHOD_NAME():
    channel = []
    def wrapper(f, args, kwargs):
        channel.append((args, kwargs))
        retval = f(*args, **kwargs)
        channel.append(retval)
        return retval
    def f(a, b, c=None):
        return (a, b, c)
    wrap(f, wrapper)
    assert f(1, 2, 3) == (1, 2, 3)
    assert channel == [((1, 2, 3), {}), (1, 2, 3)]
    assert f(1, b=2, c=3) == (1, 2, 3)
    assert channel == [((1, 2, 3), {}), (1, 2, 3), ((1, 2, 3), {}), (1, 2, 3)]
    channel[:] = []
    unwrap(f, wrapper)
    assert f(1, 2, 3) == (1, 2, 3)
    assert not channel