add download feature