if (Methods.getMethods().contains(invokedMethod)) {
if (invokedMethod.getClassName().equals(getDottedClassConstantOperand())) {
         public void sawOpcode(int seen) {		stack.mergeJumps(this);		try {         if (seen != INVOKEVIRTUAL) return;         if (!getClassName().equals(getClassConstantOperand())) return;         XMethod invokedMethod = XFactory.createXMethod(getDottedClassConstantOperand(), getNameConstantOperand(), getSigConstantOperand(), false);         if (Methods.getMethods().contains(invokedMethod)) {        	 return;         }         String possibleTargetClass = getDottedClassName();         String superClassName = getDottedSuperclassName();         while(true) {        	 int i = possibleTargetClass.lastIndexOf('$');			if (i == -1) break;			possibleTargetClass = possibleTargetClass.substring(0,i);			if (possibleTargetClass.equals(superClassName)) break;        	 XMethod alternativeMethod = XFactory.createXMethod(possibleTargetClass, getNameConstantOperand(), getSigConstantOperand(), false);        	 Set<XMethod> definedMethods = Methods.getMethods();        	 if (definedMethods.contains(alternativeMethod)) 	        		 bugReporter.reportBug(new BugInstance(this, "IA_AMBIGUOUS_INVOCATION_OF_INHERITED_OR_OUTER_METHOD", NORMAL_PRIORITY)				        .addClassAndMethod(this)				          .addMethod(invokedMethod).describe("METHOD_INHERITED")				        .addMethod(alternativeMethod).describe("METHOD_ALTERNATIVE_TARGET")				        .addSourceLine(this, getPC()));         }                  		} finally {		stack.sawOpcode(this, seen);		}	}