Maintain two classes and two functions