return null when no solution, add API tests