TODO: fix Transition.