project3 final version