moving responsibilities out of helpers