a tool class