added timouts and transitions