Added a whole lot comments