Problem-solver