public static UUID stringToUUID(String value) {
		if ((value == null) || "".equals(value)) return null;
		if (value.length() != 32) throw new IllegalArgumentException("Value should have 32 characters (" + value + ")");
		long hi = 0L;
		long lo = 0L;
		int i = 0;
		int j = 16;
		while (i < 16) {
			hi = (hi << 4) | hexValue(value.charAt(i++));
			lo = (lo << 4) | hexValue(value.charAt(j++));
		}
		return new UUID(hi, lo);
	}