Model re-engineered (not many changes though)