(command.CommandList
  children: [
    (C {<_Dbg_help_add>} {<pwd>} {(SQ <'**pwd**\n'> <'\n'> <'Show working directory.'>)})
    (command.ShFunction
      name: _Dbg_do_pwd
      body: 
        (BraceGroup
          children: [
            (command.Sentence
              child: (C {<typeset>} {<_Dbg_cwd>})
              terminator: <Id.Op_Semi _>
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_Dbg_cwd)
                  op: assign_op.Equal
                  rhs: {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<pwd>}))}
                  spids: [85]
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (command.DParen child:<Id.Lit_ArithVarLike _Dbg_set_basename>)
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:_Dbg_cwd)
                      op: assign_op.Equal
                      rhs: 
                        {
                          (braced_var_sub
                            token: <Id.VSub_Name _Dbg_cwd>
                            suffix_op: 
                              (suffix_op.Unary
                                tok: <Id.VOp1_DPound '##'>
                                arg_word: {<Id.Lit_Other '*'> <Id.Lit_Slash '/'>}
                              )
                          )
                        }
                      spids: [100]
                    )
                  ]
                )
              ]
            )
            (C {<_Dbg_msg>} {(DQ <'Working directory '> (${ Id.VSub_Name _Dbg_cwd) <.>)})
          ]
        )
    )
  ]
)