Extract progress bar into its own class