def METHOD_NAME(func):
    cache = {}
    @wraps(func)
    def wrapper(*args, **kwargs):
        key = (args, frozenset(kwargs.items()))
        try:
            created, result = cache[key]
            if time.time() < created + seconds:
                return result
        except KeyError:
            pass
        result = func(*args, **kwargs)
        cache[key] = time.time(), result
        return result
    wrapper.clear_cache = lambda: cache.clear()
    return wrapper