<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def download(self, paths, tool, language):
 """Download subtitles via a number of tools."""


        if tool not in self.available:
            fatal('{!r} is not installed'.format(tool))

        try:
            from . import plugins
            downloader = plugins.__getattribute__(tool)
        except AttributeError:
            fatal('{!r} is not a supported download tool'.format(tool))

        try:
            if downloader.__code__.co_argcount is 2:
                downloader(paths, language)
            elif downloader.__code__.co_argcount is 1:
                downloader(paths)
        except:  # pylint: disable=bare-except
            if not check_connectivity():
                error('Internet connectivity appears to be disabled')
            else:
                error('{!r} experienced an unknown error'.format(tool))