if (Types.isSignatureAssignable(idealMatch, targetMatch, round) && ((bestMatch == null) || Types.isSignatureAssignable(targetMatch, bestMatch, Types.JAVA_BASE_ASSIGNABLE))) { bestMatch = targetMatch; bestMatchIndex = i;
if ( Types.isSignatureAssignable( idealMatch, targetMatch, round ) && ( bestMatch == null || Types.areSignaturesEqual(idealMatch, targetMatch) || ( Types.isSignatureAssignable(targetMatch, bestMatch, Types.JAVA_BASE_ASSIGNABLE) && !Types.areSignaturesEqual(idealMatch, bestMatch)))) {