(CommandList
  children: [
    (C {(set)} {(-e)})
    (SimpleCommand
      words: [{(which)} {(lcov)}]
      redirects: [
        (Redir op_id:Redir_Great fd:1 arg_word:{(/dev/null)} spids:[13])
        (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[16])
      ]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other "[")} {($ VSub_QMark "$?")} {(KW_Bang "!") (Lit_Other "=")} {(0)} 
                  {(Lit_Other "]")}
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (C {(echo)} {(DQ ("lcov is required to generate the coverage report"))})
            (C {(exit)} {(1)})
          ]
          spids: [-1 33]
        )
      ]
      spids: [-1 47]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$MAKE")}))
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:MAKE) op:Equal rhs:{(make)} spids:[64])]
              spids: [64]
            )
          ]
          spids: [-1 61]
        )
      ]
      spids: [-1 67]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$GTEST_FILTER")}))
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:GTEST_FILTER)
                  op: Equal
                  rhs: {(SQ <"*">)}
                  spids: [84]
                )
              ]
              spids: [84]
            )
          ]
          spids: [-1 81]
        )
      ]
      spids: [-1 89]
    )
    (C {(pushd)} {(build)})
    (SimpleCommand
      words: [{(../configure)} {(--disable-optimize)}]
      more_env: [
        (env_pair name:CXXFLAGS val:{(DQ ("-pg --coverage"))} spids:[100])
        (env_pair name:CFLAGS val:{(DQ ("-pg --coverage"))} spids:[105])
        (env_pair name:LDFLAGS val:{(DQ (-lgcov))} spids:[110])
      ]
    )
    (Pipeline
      children: [
        (C {(find)} {(-name)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\*">) (.gcda)})
        (C {(xargs)} {(rm)})
      ]
      negated: False
    )
    (Pipeline
      children: [
        (C {(find)} {(-name)} {(EscapedLiteralPart token:<Lit_EscapedChar "\\*">) (.gcno)})
        (C {(xargs)} {(rm)})
      ]
      negated: False
    )
    (C {(${ VSub_Name MAKE)})
    (C {(lcov)} {(--directory)} {(.)} {(--zerocounters)})
    (C {(${ VSub_Name MAKE)} {(check)} {(Lit_VarLike "GTEST_FILTER=") (${ VSub_Name GTEST_FILTER)})
    (C {(lcov)} {(--directory)} {(.)} {(-c)} {(-o)} {(mesos_test.info)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: Equal
          rhs: {(DQ ("/usr/include/*"))}
          spids: [197]
        )
      ]
      spids: [197]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" /usr/lib/jvm/*"))}
          spids: [202]
        )
      ]
      spids: [202]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" mesos/build/*"))}
          spids: [207]
        )
      ]
      spids: [207]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" build/3rdparty/setuptools-*"))}
          spids: [212]
        )
      ]
      spids: [212]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" build/3rdparty/leveldb*"))}
          spids: [217]
        )
      ]
      spids: [217]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" build/3rdparty/zookeeper-*"))}
          spids: [222]
        )
      ]
      spids: [222]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */boost-*"))}
          spids: [227]
        )
      ]
      spids: [227]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */elfio-*"))}
          spids: [232]
        )
      ]
      spids: [232]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */glog-*"))}
          spids: [237]
        )
      ]
      spids: [237]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */gmock-*"))}
          spids: [242]
        )
      ]
      spids: [242]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */picojson-*"))}
          spids: [247]
        )
      ]
      spids: [247]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:LCOV_FILTERS)
          op: PlusEqual
          rhs: {(DQ (" */protobuf-*"))}
          spids: [252]
        )
      ]
      spids: [252]
    )
    (ForEach
      iter_name: f
      iter_words: [{($ VSub_Name "$LCOV_FILTERS")}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(lcov)} {(--remove)} {(mesos_test.info)} {($ VSub_Name "$f")} {(-o)} {(mesos_test.info)})
          ]
          spids: [267 282]
        )
      spids: [263 265]
    )
    (C {(genhtml)} {(-o)} {(./test_coverage)} {(-t)} {(DQ ("mesos test coverage"))} {(--num-spaces)} {(2)} 
      {(mesos_test.info)}
    )
    (C {(popd)})
  ]
)