sub compareProgram { my $manifest1HR = shift; my $manifest2HR = shift; my $main1AR = $manifest1HR->{MAIN}; my $main2AR = $manifest2HR->{MAIN}; foreach my $attr1HR(@$main1AR) { next unless($attr1HR->{Program}); foreach my $attr2HR(@$main2AR) { next unless($attr2HR->{Program}); if($attr1HR->{Program} eq $attr2HR->{Program} and $attr1HR->{File} eq $attr2HR->{File}) { if($attr1HR->{Size} ne $attr2HR->{Size}) { print "1: $attr1HR->{Program}\n"; print "1: $attr1HR->{File}\n"; print "1: $attr1HR->{Size}\n"; print "2: $attr2HR->{Size}\n"; } last; } } } }