implemented chunk download