cleaned up timing