imporve model class