model referctoring.