- my $no = $mailboxes->{$_} == $dummy ? '' : 'No';
- qq[* LIST (\\Has${no}Children) "." $_\r\n]
- } sort { length($a) <=> length($b) } keys %$mailboxes
+ my $u = $_; # capitalize "INBOX" for user-familiarity
+ $u =~ s/\Ainbox(\.|\z)/INBOX$1/i;
+ if ($mailboxes->{$_} == $dummy) {
+ [ $u, -1,
+ qq[* LIST (\\HasChildren) "." $u\r\n]]
+ } else {
+ $u =~ /\A(.+)\.([0-9]+)\z/ or
+ die "BUG: `$u' has no slice digit(s)";
+ [ $1, $2 + 0,
+ qq[* LIST (\\HasNoChildren) "." $u\r\n] ]
+ }
+ } keys %$mailboxes