add missing factories file
update TODO