(CommandList
  children: [
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (AndOr
                  ops: [Op_DAmp]
                  children: [
                    (C {(test)} {(-n)} {(DQ ($ VSub_Name '$BASH'))})
                    (C {(test)} {(-z)} {(DQ ($ VSub_Name '$POSIXLY_CORRECT'))})
                  ]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(true)})]
          spids: [16777215 31]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (SimpleCommand
                  words: [{(type)} {(bash)}]
                  redirects: [
                    (Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})
                    (Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})
                  ]
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(unset)} {(POSIXLY_CORRECT)})
            (C {(exec)} {(bash)} {(DQ ($ VSub_Number '$0'))} {(DQ ($ VSub_At '$@'))})
          ]
          spids: [40 53]
        )
      ]
      else_action: [
        (C {(echo)} {(SQ <'1..0 #SKIP skipping bash completion tests; bash not available'>)})
        (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
      ]
      spids: [77 91]
    )
    (C {(.)} {(./test-lib.sh)})
  ]
)