static InstrumentationClassFinder.PseudoClass suggestReplacementClass(InstrumentationClassFinder.PseudoClass componentClass) throws ClassNotFoundException, IOException {
    final InstrumentationClassFinder.PseudoClass jComponentClass = componentClass.getFinder().loadClass(JComponent.class.getName());
    while (true) {
      componentClass = componentClass.getSuperClass();
      assert componentClass != null;
      if (componentClass.equals(jComponentClass)) {
        return componentClass.getFinder().loadClass(JPanel.class.getName());
      }
      if ((componentClass.getModifiers() & (Modifier.ABSTRACT | Modifier.PRIVATE)) != 0) {
        continue;
      }
      if (!componentClass.hasDefaultPublicConstructor()) {
        continue;
      }
      return componentClass;
    }
  }
static InstrumentationClassFinder.PseudoClass suggestReplacementClass(InstrumentationClassFinder.PseudoClass componentClass)