code: private Class<?> eliminateEnumSubclass(Class<?> cls) {
          Class<?> sup = cls.getSuperclass();
          if (sup != null && sup.getSuperclass() == Enum.class) {
              return sup;
          }
          return cls;
      }
docs: eliminates enum subclass as they are pesky