Refactoring downloader