def wraps(wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES):
 return curry(update_wrapper, wrapped=wrapped, assigned=assigned, updated=updated)

def wraps ( wrapped , assigned = WRAPPER_ASSIGNMENTS , updated = WRAPPER_UPDATES ) : return curry ( update_wrapper , wrapped = wrapped , assigned = assigned , updated = updated )
decorator factory to apply update_wrapper() to a wrapper function returns a decorator that invokes update_wrapper() with the decorated function as the wrapper argument and the arguments to wraps() as the remaining arguments .