code: def update_wrapper(wrapper,
                     wrapped,
                     assigned = functools.WRAPPER_ASSIGNMENTS,
                     updated = functools.WRAPPER_UPDATES):
      
      # workaround for http://bugs.python.org/issue3445
      assigned = tuple(attr for attr in assigned if hasattr(wrapped, attr))
      wrapper = functools.update_wrapper(wrapper, wrapped, assigned, updated)
      # workaround for https://bugs.python.org/issue17482
      wrapper.__wrapped__ = wrapped
      return wrapper
docs: Patch two bugs in functools.update_wrapper.