currently its sequential, which means fetch waits for the previous one to finish, the total download time grows linearly with the number of selected papers.
download files in parallel using Promise.all(), allowing the browser to fetch multiple files concurrently.