private int parseHash(String sql, int start) throws IOException {
		hash = 0;
		for (;;) {
			if (start >= sql.length()) {
				throw new IOException("Parsing hashentry with no terminator");
			}
			int tok = sql.charAt(start);
			if (tok < '0') {
				return start;
			}
			if (tok <= '9') {
				hash <<= 4;
				hash += (tok - '0');
			}
			else if (tok < 'A') {
				return start;
			}
			else if (tok <= 'F') {
				hash <<= 4;
				hash += ((tok - 'A') + 10);
			}
			else if (tok < 'a') {
				return start;
			}
			else if (tok <= 'f') {
				hash <<= 4;
				hash += ((tok - 'a') + 10);
			}
			else {
				return start;
			}
			start += 1;
		}
	}
Restore entry but recalculate the idf
@param parser		// xml state
@param w				// weight factory to calculate coefficient with
@param lookup		// lookup object to recalculate idf
Ghidra/Framework/Generic/src/main/java/generic/lsh/vector/HashEntry.java