A tool that can adapt to situations and can be updated.