start scheduler implementation