define a offering model class