final code and report