sub simonm { sort keys %{ { map { $_ => undef } map @$_, @_ } } } sub simonm2 { my ( %unique ); @unique{ map @$_, @_ } = (); sort keys %unique }