full download workflow implemented