new download method added