purpose: Solve;