Solution file
tested and changed all the verification