separated out responsibilities quick