generalized evalDetection to handle differing keys