public boolean compareSame(FullMultinameAVM2Item other) { if (multinameIndex != other.multinameIndex) { return false; } GraphTargetItem tiName = name; if (name != null) { name = name.getThroughDuplicate(); } while (tiName instanceof LocalRegAVM2Item) { if (((LocalRegAVM2Item) tiName).computedValue != null) { tiName = ((LocalRegAVM2Item) tiName) .computedValue .getThroughNotCompilable() .getThroughDuplicate(); } else { break; } } GraphTargetItem tiName2 = other.name; if (tiName2 != null) { tiName2 = tiName2.getThroughDuplicate(); } while (tiName2 instanceof LocalRegAVM2Item) { if (((LocalRegAVM2Item) tiName2).computedValue != null) { tiName2 = ((LocalRegAVM2Item) tiName2) .computedValue .getThroughNotCompilable() .getThroughDuplicate(); } else { break; } } if (tiName != tiName2) { return false; } GraphTargetItem tiNameSpace = namespace; if (tiNameSpace != null) { tiNameSpace = tiNameSpace.getThroughDuplicate(); } while (tiNameSpace instanceof LocalRegAVM2Item) { if (((LocalRegAVM2Item) tiNameSpace).computedValue != null) { tiNameSpace = ((LocalRegAVM2Item) tiNameSpace) .computedValue .getThroughNotCompilable() .getThroughDuplicate(); } } GraphTargetItem tiNameSpace2 = other.namespace; if (tiNameSpace2 != null) { tiNameSpace2 = tiNameSpace2.getThroughDuplicate(); } while (tiNameSpace2 instanceof LocalRegAVM2Item) { if (((LocalRegAVM2Item) tiNameSpace2).computedValue != null) { tiNameSpace2 = ((LocalRegAVM2Item) tiNameSpace2) .computedValue .getThroughNotCompilable() .getThroughDuplicate(); } } if (tiNameSpace != tiNameSpace2) { return false; } return true; }