refactored schedulers