So instead of: my @previous = qw(EF ABE ABCD) I'd have: my @previous = ( [qw(ABE ABCD)], #A slot [qw(ABE ABCD)], #B slot [qw(ABC)], #C slot [qw(ABCD)], #D slot [qw(EF ABE)], #E slot [qw(EF)] #F slot );