New scheduler logic