@Override
  protected @NotNull Module createModule(@NotNull DataNode<GradleSourceSetData> sourceSetModuleNode,
                                         @NotNull IdeModifiableModelsProvider modelsProvider) {
    //noinspection unchecked
    DataNode<ModuleData> parentModuleNode = (DataNode<ModuleData>)sourceSetModuleNode.getParent();
    assert parentModuleNode != null;
    Module parentModule = parentModuleNode.getUserData(MODULE_KEY);
    assert parentModule != null;

    String projectPath = sourceSetModuleNode.getData().getLinkedExternalProjectPath();
    String actualModuleName = modelsProvider.getModifiableModuleModel().getActualName(parentModule);
    ExternalProjectSettings settings = getSettings(parentModule.getProject(), SYSTEM_ID).getLinkedProjectSettings(projectPath);
    if (settings != null && settings.isUseQualifiedModuleNames()) {
      String sourceSetModuleInternalName = sourceSetModuleNode.getData().getInternalName();
      if (!sourceSetModuleInternalName.startsWith(actualModuleName)) {
        String sourceSetName = sourceSetModuleNode.getData().getModuleName();
        String adjustedInternalName = findDeduplicatedModuleName(actualModuleName + "." + sourceSetName, modelsProvider);
        sourceSetModuleNode.getData().setInternalName(adjustedInternalName);
      }
    }
    return super.createModule(sourceSetModuleNode, modelsProvider);
  }
@Override
  protected @NotNull Module createModule(@NotNull DataNode<GradleSourceSetData> sourceSetModuleNode,
                                         @NotNull IdeModifiableModelsProvider modelsProvider)