refactoring conditions and self-adaptive mutation