sub parsetree { my $ref = shift; my $txt = shift; foreach my $key ( keys %{$ref} ) { if( ref( $$ref{$key} ) =~ /HASH/ ) { parsetree( $$ref{$key}, $txt."::".$key ); } else { my $out = $txt . '::' . $key . '::' . $$ref{$key} . "\n"; $out =~ s/^:://; print $out; } } }