having download() method return the list of download reports for the use case where someone does not want to write their own event listener