(command.CommandList
  children: [
    (C {(Id.KW_Set set)} {(-ex)})
    (C {(source)} {($ Id.VSub_DollarName '$TRAVIS_BUILD_DIR') (/ci/travis_env_common.sh)})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_Number '$1'))} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (--only-library))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:81)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:only_library_mode)
                  op: assign_op.Equal
                  rhs: {(yes)}
                  spids: [86]
                )
              ]
            )
          ]
          spids: [65 83]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:only_library_mode)
              op: assign_op.Equal
              rhs: {(no)}
              spids: [92]
            )
          ]
        )
        (C {(source)} {($ Id.VSub_DollarName '$TRAVIS_BUILD_DIR') (/ci/travis_install_conda.sh)})
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_DollarName '$ARROW_TRAVIS_USE_TOOLCHAIN'))} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (1))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:120)
            )
          ]
          action: [
            (C {(conda)} {(create)} {(-y)} {(-q)} {(-p)} {($ Id.VSub_DollarName '$CPP_TOOLCHAIN')} 
              {(Id.Lit_VarLike 'python=') (2.7)} {(Id.Lit_VarLike 'jemalloc=') (4.4.0)} {(nomkl)} {(boost-cpp)} {(rapidjson)} {(flatbuffers)} {(gflags)} 
              {(lz4-c)} {(snappy)} {(zstd)} {(brotli)} {(zlib)} {(cmake)} {(curl)} {(thrift-cpp)} {(ninja)}
            )
            (C {(conda)} {(update)} {(-y)} {(-p)} {($ Id.VSub_DollarName '$CPP_TOOLCHAIN')} 
              {(ca-certificates)} {(-c)} {(defaults)}
            )
          ]
          spids: [104 122]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$TRAVIS_OS_NAME')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (osx))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:248)
            )
          ]
          action: [
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {(brew)} {(update)})
                (C {(brew)} {(bundle)} {(--file) (Id.Lit_Equals '=') (cpp/Brewfile)})
              ]
            )
          ]
          spids: [234 250]
        )
      ]
    )
    (C {(mkdir)} {($ Id.VSub_DollarName '$ARROW_CPP_BUILD_DIR')})
    (C {(pushd)} {($ Id.VSub_DollarName '$ARROW_CPP_BUILD_DIR')})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:CMAKE_COMMON_FLAGS)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ('-DARROW_BUILD_BENCHMARKS=ON ') ('-DCMAKE_INSTALL_PREFIX=') 
                ($ Id.VSub_DollarName '$ARROW_CPP_INSTALL') (' ') ('-DARROW_NO_DEPRECATED_API=ON ') ('-DARROW_EXTRA_ERROR_CONTEXT=ON')
              )
            }
          spids: [279]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:CMAKE_LINUX_FLAGS)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [293]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:CMAKE_OSX_FLAGS)
          op: assign_op.Equal
          rhs: {(DQ )}
          spids: [297]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$only_library_mode')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (yes))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:316)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CMAKE_COMMON_FLAGS)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS') (' ') 
                        ('-DARROW_BUILD_TESTS=OFF ') ('-DARROW_BUILD_UTILITIES=OFF ') ('-DARROW_INSTALL_NAME_RPATH=OFF')
                      )
                    }
                  spids: [321]
                )
              ]
            )
          ]
          spids: [302 318]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$ARROW_TRAVIS_USE_TOOLCHAIN')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (1))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:354)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CMAKE_COMMON_FLAGS)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS') (' -GNinja'))}
                  spids: [359]
                )
              ]
            )
          ]
          spids: [340 356]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$ARROW_TRAVIS_PLASMA')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (1))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:382)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CMAKE_COMMON_FLAGS)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS') (' -DARROW_PLASMA=ON'))}
                  spids: [387]
                )
              ]
            )
          ]
          spids: [368 384]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$ARROW_TRAVIS_VALGRIND')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (1))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:410)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:CMAKE_COMMON_FLAGS)
                  op: assign_op.Equal
                  rhs: 
                    {(DQ ($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS') (' -DARROW_TEST_MEMCHECK=ON'))}
                  spids: [415]
                )
              ]
            )
          ]
          spids: [396 412]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_DollarName '$TRAVIS_OS_NAME')} 
                  {(Id.Lit_Equals '=') (Id.Lit_Equals '=')} {(DQ (linux))} {(Id.Lit_RBracket ']')}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:438)
            )
          ]
          action: [
            (C {(cmake)} {($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS')} 
              {($ Id.VSub_DollarName '$CMAKE_LINUX_FLAGS')} {(-DBUILD_WARNING_LEVEL) (Id.Lit_Equals '=') (CHECKIN)} {($ Id.VSub_DollarName '$ARROW_CPP_DIR')}
            )
          ]
          spids: [424 440]
        )
      ]
      else_action: [
        (C {(cmake)} {($ Id.VSub_DollarName '$CMAKE_COMMON_FLAGS')} 
          {($ Id.VSub_DollarName '$CMAKE_OSX_FLAGS')} {(-DBUILD_WARNING_LEVEL) (Id.Lit_Equals '=') (CHECKIN)} {($ Id.VSub_DollarName '$ARROW_CPP_DIR')}
        )
      ]
    )
    (C {($ Id.VSub_DollarName '$TRAVIS_MAKE')} {(-j4)})
    (C {($ Id.VSub_DollarName '$TRAVIS_MAKE')} {(install)})
    (C {(popd)})
  ]
)