refactor download classes
refactor download classes