add dounload methods