Added some comments, more to come soon