rearranged delegation