while () { #@tmp = split; # Split elements into an array. #push @AoA, [ @tmp ]; # Add an anonymous array reference to @AoA. @tmp = split /\|/; $AoA[$tmp[0]-1] = []if !defined $AoA[$tmp[0]-1]; push @{$AoA[$tmp[0]-1]}, $tmp[1]; }