added interface to enable testing scenarios