working heuristic callbacks