added abstract class defintion for further tests