rearranging everything