<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def with_doc(fn_with_doc_to_copy):
 """Returns a decorator to copy documentation from the given function. Docstring is copied, including *args and **kwargs documentation. Args: fn_with_doc_to_copy: Function whose docstring, including *args and **kwargs documentation, is to be copied. Returns: Decorated version of `wrapper_init` with documentation copied from `fn_with_doc_to_copy`. """


  def decorator(wrapper_init):
    # Wrap the target class's constructor (to assume its docstring),
    # but invoke the wrapper class's constructor.
    @wrapt.decorator
    def wrapping_fn(unused_wrapped, instance, args, kwargs):
      wrapper_init(instance, *args, **kwargs)
    return wrapping_fn(fn_with_doc_to_copy)  # pylint: disable=no-value-for-parameter

  return decorator