changed tools to extend from a common ancestor