The code seems correct and seems to fulfill the objectives?