Added some explanatory comments