A problem solver.

First