human
Complete the below
def derived_from(original_klass, version=None, ua_args=[]):

    ''''Decorator to attach original class\'s docstring to the wrapped method.
    Parameters
    original_klass: type
    Original class which the method is derived from
    version : str
    Original package version which supports the wrapped method
    ua_args : list
    List of keywords which Dask doesn\'t support. Keywords existing in
    original but not in Dask will automatically be added.'
    '''
assistant
#Here is the Python program you requested.
    def wrapper(method):
        method_name = method.__name__
        try:
            original_method = getattr(original_klass, method_name)
            doc = original_method.__doc__
            if (doc is None):
                doc = ''
            try:
                method_args = getargspec(method).args
                original_args = getargspec(original_method).args
                not_supported = [m for m in original_args if (m not in method_args)]
            except TypeError:
                not_supported = []
            if (len(ua_args) > 0):
                not_supported.extend(ua_args)
            if (len(not_supported) > 0):
                note = "\n                                Notes\n                                -----\n                                Dask    doesn't    support    the    following    argument(s).\n\n"
                args = ''.join(['                                *    {0}\n'.format(a) for a in not_supported])
                doc = ((doc + note) + args)
            doc = skip_doctest(doc)
            doc = extra_titles(doc)
            method.__doc__ = doc
            return method
        except AttributeError:
            module_name = original_klass.__module__.split('.')[0]
            @functools.wraps(method)
            def wrapped(*args, **kwargs):
                msg = "Base    package    doesn't    support    '{0}'.".format(method_name)
                if (version is not None):
                    msg2 = '    Use    {0}    {1}    or    later    to    use    this    method.'
                    msg += msg2.format(module_name, version)
                raise NotImplementedError(msg)
            return wrapped
    return wrapper