keep sub_tasks ordering