buildModel as separate class