updated for swirl assignment 1