added cap_solve