set up the abstract class

dafs