add some comments AND change class member function