improved downloader