@Override
  public <P extends JpsElement> JpsArtifact addArtifact(@NotNull JpsProject project,
                                                        @NotNull String name,
                                                        @NotNull JpsCompositePackagingElement rootElement,
                                                        @NotNull JpsArtifactType<P> type,
                                                        @NotNull P properties) {
    JpsArtifact artifact = createArtifact(name, rootElement, type, properties);
    return project.getContainer().getOrSetChild(JpsArtifactRole.ARTIFACT_COLLECTION_ROLE).addChild(artifact);
  }
@Override
  public <P extends JpsElement> JpsArtifact addArtifact(@NotNull JpsProject project,
                                                        @NotNull String name,
                                                        @NotNull JpsCompositePackagingElement rootElement,
                                                        @NotNull JpsArtifactType<P> type,
                                                        @NotNull P properties)