update TODO list : defensive programming