rearranged todo