keeping the view free of logic