new timeline logic