competitive function