private static boolean isQualifiedNewGetClass(Exprent first, Exprent second) {
    if (first.type == Exprent.EXPRENT_INVOCATION) {
      InvocationExprent invocation = (InvocationExprent)first;

      if (!invocation.isStatic() && invocation.getInstance().type == Exprent.EXPRENT_VAR && invocation.getName().equals("getClass") &&
          invocation.getStringDescriptor().equals("()Ljava/lang/Class;")) {

        List<Exprent> lstExprents = second.getAllExprents();
        lstExprents.add(second);

        for (Exprent expr : lstExprents) {
          if (expr.type == Exprent.EXPRENT_NEW) {
            NewExprent newExpr = (NewExprent)expr;
            if (newExpr.getConstructor() != null && !newExpr.getConstructor().getParameters().isEmpty() &&
                newExpr.getConstructor().getParameters().get(0).equals(invocation.getInstance())) {

              String classname = newExpr.getNewType().getValue();
              ClassNode node = DecompilerContext.getClassProcessor().getMapRootClasses().get(classname);
              if (node != null && node.type != ClassNode.CLASS_ROOT) {
                return true;
              }
            }
          }
        }
      }
    }

    return false;
  }
private static boolean isQualifiedNewGetClass(Exprent first, Exprent second)