refactored after/before start.