architecture
animateTransition