clened up model/view separation