Version 2 rearrange