Epic Interview Question

The full thing will take about 3-4 hours