more accurate overlap