move all to model