new scheduler and callbacks