use SetMultimap to avoid schedule duplicates
fix schedules interval dates ending at midnight