import java.util.List;

/** Composite: una lista que contiene canciones y otras listas. */
public record Playlist(String title, List<Playable> entries) implements Playable {
    public Playlist {
        entries = List.copyOf(entries);
    }

    /** La duración se calcula pidiéndosela a cada elemento: aquí está la recursión. */
    @Override
    public int seconds() {
        int total = 0;
        for (Playable entry : entries) {
            total += entry.seconds();
        }
        return total;
    }
}
