(CommandList
  children: [
    (Sentence
      child: 
        (C {(.)} 
          {
            (DQ 
              (BracedVarSub
                token: <VSub_Name srcdir>
                suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)})
                spids: [47 51]
              ) (/tests/init.sh)
            )
          }
        )
      terminator: <Op_Semi ';'>
    )
    (C {(path_prepend_)} {(./src)})
    (C {(print_ver_)} {(pathchk)})
    (C {(skip_if_root_)})
    (AndOr ops:[Op_DPipe] children:[(C {(touch)} {(file)}) (C {(framework_failure_)})])
    (AndOr
      ops: [Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(pathchk)} {(file/x)}]
          redirects: [
            (Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[87])
            (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[91])
          ]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[96])]
          spids: [96]
        )
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(pathchk)} {(-p)} {(SQ )}]
          redirects: [
            (Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[110])
            (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[114])
          ]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[119])]
          spids: [119]
        )
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(pathchk)} {(-P)} {(SQ )}]
          redirects: [
            (Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[133])
            (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[137])
          ]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[142])]
          spids: [142]
        )
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(pathchk)} {(-P)} {(--)} {(-)}]
          redirects: [
            (Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[153])
            (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[157])
          ]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[162])]
          spids: [162]
        )
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (SimpleCommand
          words: [{(pathchk)} {(-p)} {(-P)} {(x/-)}]
          redirects: [
            (Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[173])
            (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[177])
          ]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[182])]
          spids: [182]
        )
      ]
    )
    (C {(Exit)} {($ VSub_Name '$fail')})
  ]
)