Little bit more complicated model. And some really hacky code!