reordered the function to speed up percieved change