my $last_k = 'NIL'; my $last_n = 'NIL'; foreach my $c (sort @chords) { (my $k, my $n) = split(/;/, $c); if ($last_k eq $k) { if ($last_n ne $n) { my $out = sprintf("Two names: '%-16s', '%-16s' for ", $last_n, $n); print $out . " " . ¬enames($k) . "\n"; $duplicates++; } } ($last_k, $last_n) = ($k, $n); } print "$duplicates multiple chord names\n"; #### ... lines deleted ... Two names: 'E6/11/C#', 'E6/11/Db' for C#/Db4, E4, G#/Ab4, A4, Two names: 'E13/C#', 'E13/Db' for C#/Db4, E4, G#/Ab4, D5, Two names: 'E6/9/C#', 'E6/9/Db' for C#/Db4, E4, G#/Ab4, F#/Gb5, Two names: 'C#maj7(b5)', 'Dbmaj7(b5)' for C#/Db4, F4, G4, C5, Two names: 'C#(b5)', 'Db(b5)' for C#/Db4, F4, G4, Two names: 'Fm6#5/C#', 'Fm6#5/Db' for C#/Db4, F4, G#/Ab4, D5, Two names: 'Faug6', 'Faug6/C#' for C#/Db4, F4, A4, D5, Two names: 'A#aug6/D', 'Bbaug6/D' for D4, F#/Gb4, G4, A#/Bb4, Two names: 'F#6/11/D#', 'F#6/11/Eb' for D#/Eb4, F#/Gb4, A#/Bb4, B4, Two names: 'F#6/11/Eb', 'Gb6/11/Eb' for D#/Eb4, F#/Gb4, A#/Bb4, B4, Two names: 'F#13/D#', 'F#13/Eb' for D#/Eb4, F#/Gb4, A#/Bb4, E5, Two names: 'F#maj13/Eb', 'Gbmaj13/Eb' for D#/Eb4, F#/Gb4, A#/Bb4, F5, 372 multiple chord names