more heuristic stuff