Finished Assignment #1, all test pass, grade 80/80 :-)