Added a lot of good comments