finished modelGenerator