refactor todiList