https://pakwebdevelopement.blogspot.com/2017/05/mcm101-assignment-no-1-solution.html