<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def start(self):
 """Download files using wget or other downloader. Optional curl, aria2c and httpie """

        dwn_count = 1
        self._directory_prefix()
        for dwn in self.url:
            # get file name from url and fix passing char '+'
            self.file_name = dwn.split("/")[-1].replace("%2B", "+")

            if dwn.startswith("file:///"):
                source_dir = dwn[7:-7].replace(slack_ver(), "")
                self._make_tarfile(self.file_name, source_dir)

            self._check_certificate()
            print("\n[{0}/{1}][ {2}Download{3} ] --> {4}\n".format(
                dwn_count, len(self.url), self.meta.color["GREEN"],
                self.meta.color["ENDC"],
                self.file_name))
            if self.downder in ["wget"]:
                subprocess.call("{0} {1} {2}{3} {4}".format(
                                self.downder, self.downder_options,
                                self.dir_prefix, self.path, dwn),
                                shell=True)
            if self.downder in ["aria2c"]:
                subprocess.call("{0} {1} {2}{3} {4}".format(
                                self.downder, self.downder_options,
                                self.dir_prefix, self.path[:-1], dwn),
                                shell=True)
            elif self.downder in ["curl", "http"]:
                subprocess.call("{0} {1} {2}{3} {4}".format(
                                self.downder, self.downder_options,
                                self.path, self.file_name, dwn), shell=True)
            self._check_if_downloaded()
            dwn_count += 1