UNSTABLE: switching to new heuristic architecture but need to verify everything works first.