simplify boilerplate