rearrange + do stuff