average case analysis