Part three of assignment