added classes to support the test