added general model module