add Stage#getEarliestTime
add PerformDate#getStartTime
implement stage to half