refact models (incomplet)