@Override
	public int hashCode() {
		if (hashCode != 0) {
			return hashCode;
		}

		String executableMd5 = getMd5();
		String originalFunctionName = getOriginalFunctionName();
		long origAddr = getOriginalFunctionAddress();
		String architecture = getArchitecture();
		String similarFunctionName = getSimilarFunctionName();
		long similarAddress = getSimilarFunctionAddress();
		int prime = 31;
		int result = 1;
		result = prime * result + executableMd5.hashCode();
		result = prime * result + originalFunctionName.hashCode();
		result = prime * result + (int) origAddr;
		result = prime * result + architecture.hashCode();
		result = prime * result + similarFunctionName.hashCode();
		result = prime * result + (int) similarAddress;
		result = prime * result + (int) (origAddr >> 32);
		result = prime * result + (int) (similarAddress >> 32);
		hashCode = result;
		return hashCode;
	}
The significance of the similarity of this function to the input function.  This is a value
that starts at 0.0, with no upper bound.  Functions small in size will have a low 
significance score, as there is a chance that many small functions will have a 
similar makeup.

@return the significance of the similarity of this function to the input function.
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/gui/search/results/BSimMatchResult.java