added more member functions