rearrange tool.c