broke out a new function for manipulations that happen immediately, mainly so that asynchronous manipulations complete before new manipulations begin.