rearrange module structure