https://javascript.plainenglish.io/react-interview-challenge-1-dive-deep-into-react-core-concepts-75304fda2fbd