perl -e 'sub dp ($) {my $base = shift; my @nodes = map $base.$_, grep /::$/, keys %{$base}; @nodes = grep !/^(?:::)?main::main/, @nodes if $base =~ /^(?:::)?main/; print join(" ", @nodes),"\n"; dp($_) for @nodes}' -e 'dp "::"'