How about cleaning up your code some.
if ( fine != suspect ) {
System.err.println( "foo" );
if ( fine == suspect ) {
System.err.println( "bar" );
}
}
should really be written clearly, which means make the test obvious.
if ( fine == suspect ) {
System.err.println( "is same" );
else {
System.err.println( "not same at all" );
}
Your code is not obvious, and non-obvious code can hide many bugs