private boolean supressImport(JClass clazz, JClass c) {
        if (clazz instanceof JNarrowedClass) {
            clazz = clazz.erasure();
        }
        if (clazz instanceof JAnonymousClass) {   
            clazz = clazz._extends();
        }
         
        if(clazz._package().isUnnamed())
            return true;

        final String packageName = clazz._package().name();
        if(packageName.equals("java.lang"))
            return true;    // no need to explicitly import java.lang classes
    
        if (clazz._package() == c._package()) {
            // inner classes require an import stmt.
            // All other pkg local classes do not need an
            // import stmt for ref.

            // no need to explicitly import a class into itself
            return isNestedInSelf(clazz, c);
        }
        return false;
    }