added situations into a separate module