Added assignment4 in full