added progress bar, etc