human
Here's a good function header given the following:
I wrote the below code

    def decorating_function(user_function):
        stats = [0, 0, 0]
        data = {}
        if maxsize:
            clock_keys = ([None] * maxsize)
            clock_refs = array('B', (0 for _ in xrange(maxsize)))
            lock = Lock()
            @wraps(user_function)
            def wrapper(*args):
                key = args
                try:
                    with lock:
                        (pos, result) = data[key]
                        clock_refs[pos] = 1
                        stats[0] += 1
                except KeyError:
                    result = user_function(*args)
                    with lock:
                        hand = stats[2]
                        end = hand
                        while True:
                            hand = ((hand + 1) % maxsize)
                            current_ref = clock_refs[hand]
                            if current_ref:
                                clock_refs[hand] = 0
                            elif ((not current_ref) or (hand == end)):
                                current_key = clock_keys[hand]
                                if (current_key in data):
                                    del data[current_key]
                                clock_keys[hand] = key
                                clock_refs[hand] = 1
                                break
                        data[key] = (hand, result)
                        stats[2] = hand
                        stats[1] += 1
                return result
        else:
            @wraps(user_function)
            def wrapper(*args):
                key = args
                try:
                    result = data[key]
                    stats[0] += 1
                except KeyError:
                    result = user_function(*args)
                    data[key] = result
                    stats[1] += 1
                return result
        def cache_info():
            'Report    cache    statistics'
            return (stats[0], stats[1], maxsize, len(data))
        def...

What's a good function header?
assistant
#Here's a good function header.

def lru_cache(maxsize=100):