My personal effort to complete assignment 1