@Override
	public boolean equals(Object o) {
		if (o == this) {
			return true;
		} else if (!(o instanceof HashDataMessage)) {
			return false;
		} else {
			HashDataMessage h = (HashDataMessage) o;
			if (hashes.length != h.hashes.length) {
				return false;
			}
			for (int i = 0; i < hashes.length; i++) {
				if (hashes[i] != h.hashes[i] && (hashes[i] == null || !hashes[i].equals(h.hashes[i]))) {
					return false;
				}
			}
			return true;
		}
	}