updated fitness functions