updated to separate every task