##
my @uAoA = (
['a','b','c'],
['a','b','d'],
);
####
use strict;
use warnings;
use Data::Dumper;
my @AoA = (
['a','b','c'],
['a','b','c'],
['a','b','d'],
['a','b','d'],
);
my (%h, @uAoA);
for (@AoA) {
push @uAoA, $_ if !$h{join $;, @$_}++;
}
print Dumper \@uAoA;