final report + unit testing