programming assignment 2, by pabloedug