added a class for auxiliary functions