add member functions for testing