simplified model structure
new persist type values
simplified code