fixed bug in recursive scheduling