add sources report

as well as some code cleanup