now writing a heuristic solver to match VI API for easier templated testing