better seperation of concerns