final version 10/10 points