private static <E extends Enum<E>> E valueOf(final Class<E> type, final int ordinal) {
		final E[] enums = type.getEnumConstants();
		return (ordinal >= 0 && ordinal < enums.length ? enums[ordinal] : null);
	}