Adding an abstract class Assignment support reading model