do not mix responsibilities