better completeTransition