https://medium.com/@muhammedhasanaliq/a-step-by-step-guide-to-the-cs50-readability-solution-cf92b8dc86f2