Added proper comments