@Override
  public @NotNull Collection<? extends IdeaPlugin> getVariants(@NotNull ConvertContext context) {
    final Module currentModule = context.getModule();
    if (currentModule == null) return Collections.emptyList();
    final Project project = context.getProject();
    List<IdeaPlugin> variants = new SmartList<>();

    final Set<Module> dependencies = new LinkedHashSet<>();
    ModuleUtilCore.getDependencies(currentModule, dependencies);
    dependencies.remove(currentModule);

    for (Module module : ModuleManager.getInstance(project).getModules()) {
      boolean prioritize = module == currentModule || dependencies.contains(module);
      String moduleName = module.getName();

      processModuleSourceRoots(module, root -> {
        final Collection<IdeaPlugin> plugins = DescriptorUtil.getPlugins(project, GlobalSearchScopes.directoryScope(project, root, false));
        if (prioritize) {
          plugins.forEach(plugin -> plugin.putUserData(LOOKUP_PRIORITY, module == currentModule ? 200.0 : 100.0));
        }
        variants.addAll(ContainerUtil.filter(plugins, plugin -> DomUtil.getFile(plugin).getName().startsWith(moduleName)));
        return true;
      });
    }
    return variants;
  }
@Override
  public @NotNull Collection<? extends IdeaPlugin> getVariants(@NotNull ConvertContext context)