reduced amount of required boilerplate acrobatics