code: @SuppressWarnings("unchecked")
      static <T> T getEnumValue(Class<T> cls, String name) {
          HashMap<String, Object> enumMap = enumMaps.get(cls);
          if (enumMap == null) {
              T[] consts = cls.getEnumConstants();
              enumMap = new HashMap<String, Object>(consts.length);
              for (T e : consts) {
                  enumMap.put(((Enum<?>) e).toString(), e);
              }
              enumMaps.put(cls, enumMap);
          }
          T v = (T) enumMap.get(name);
          if (v == null) {
              v = (T) enumMap.get("Other");
          }
          return v;
      }
docs: Gets an enum instance from the enum class and name.
  <p>
  Caches hashmaps of enum names. If enum has an Other entry it will be
  returned instead of null when no match is found.
  
  @param cls
  @param name
  
  @return The found instance.