Edited as required for the assignment