sub split_mode_to_string { my @sections = reverse split '', $_[0]; my @str_mode; for my $mode (@sections) { unshift @str_mode, $mode & 1 ? 'x':'-'; unshift @str_mode, $mode & 2 ? 'w':'-'; unshift @str_mode, $mode & 4 ? 'r':'-'; } return join '', @str_mode; }