@Override
	public boolean equals(Object o) {
		if (o == this) {
			return true;
		}
		if (!(o instanceof VarnodeAST)) {
			return false;
		}
		VarnodeAST vn = (VarnodeAST) o;

		if (getOffset() != vn.getOffset() || getSize() != vn.getSize() ||
			getSpace() != vn.getSpace()) {
			return false;
		}
		if (isFree()) {
			if (vn.isFree()) {
				return (uniqId == vn.uniqId);
			}
			return false;
		}
		else if (vn.isFree()) {
			return false;
		}
		if (isInput() != vn.isInput()) {
			return false;
		}
		if (def != null) {
			PcodeOp vnDef = vn.getDef();
			if (vnDef == null) {
				return false;
			}
			return (def.getSeqnum().equals(vnDef.getSeqnum()));
		}
		return true;
	}
Replace all of parameter vn's references with this
@param vn  Varnode whose references will get replaced
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/pcode/VarnodeAST.java