assignment 1 implementation