diff --git a/app/Libraries/EarcUtils.php b/app/Libraries/EarcUtils.php
index 2ff841bc9700dad6ec7a22c7a1b221c75f30629c..e564620ef408d3343cf22a7c9f37baf7e16d1c60 100755
--- a/app/Libraries/EarcUtils.php
+++ b/app/Libraries/EarcUtils.php
@@ -255,15 +255,11 @@ class EarcUtils
     public static function canBeRedundant($attributeName, $released_attributes)
     {
         if (($attributeName == 'schacHomeOrganization' && (array_key_exists('eduPersonPrincipalName', $released_attributes) || array_key_exists('eduPersonScopedAffiliation', $released_attributes))) ||
-            ($attributeName == 'cn' && (array_key_exists('sn', $released_attributes) && array_key_exists('givenName', $released_attributes))) ||
+            ($attributeName == 'cn' && ((array_key_exists('sn', $released_attributes) && array_key_exists('givenName', $released_attributes)) || array_key_exists('displayName', $released_attributes))) ||
             ($attributeName == 'eduPersonAffiliation' && (array_key_exists('eduPersonScopedAffiliation', $released_attributes))) ||
-            ($attributeName == 'cn' && array_key_exists('displayName', $released_attributes)) ||
-            ($attributeName == 'sn' && array_key_exists('displayName', $released_attributes)) ||
-            ($attributeName == 'sn' && array_key_exists('cn', $released_attributes)) ||
-            ($attributeName == 'givenName' && array_key_exists('displayName', $released_attributes)) ||
-            ($attributeName == 'givenName' && array_key_exists('cn', $released_attributes)) ||
-            ($attributeName == 'displayName' && (array_key_exists('sn', $released_attributes) && array_key_exists('givenName', $released_attributes))) ||
-            ($attributeName == 'displayName' && array_key_exists('cn', $released_attributes))
+            ($attributeName == 'sn' && (array_key_exists('displayName', $released_attributes) || array_key_exists('cn', $released_attributes))) ||
+            ($attributeName == 'givenName' && (array_key_exists('displayName', $released_attributes) || array_key_exists('cn', $released_attributes))) ||
+            ($attributeName == 'displayName' && ((array_key_exists('sn', $released_attributes) && array_key_exists('givenName', $released_attributes)) || array_key_exists('cn', $released_attributes)))
         ) {
             return true;
         } else {
@@ -309,6 +305,7 @@ class EarcUtils
                 foreach ($sp['attributeNames'] as $attributeName) {
                     if (!array_key_exists($attributeName, $released_attributes) && self::canBeRedundant($attributeName, $released_attributes)) {
                         $ret = '-';
+                        break;
                     }
                 }
                 break;