Add file download function