# get all input_A for nand, not, and, etc.. my @all_input_A = map { my $g = $_; @_=keys $GATE{$g}; map {$GATE{$g}{$_}->{'A'}} @_ } keys %GATE; die Dumper(\@all_input_A);