(command.CommandList
  children: [
    (C {<set>} {<-e>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:JAVA_DIR)
          op: assign_op.Equal
          rhs: {(${ Id.VSub_Name TRAVIS_BUILD_DIR) <'/java'>}
          spids: [58]
        )
      ]
    )
    (C {<pushd>} {($ Id.VSub_DollarName '$JAVA_DIR')})
    (C {<export>} 
      {<Id.Lit_VarLike 'MAVEN_OPTS='> 
        (DQ ($ Id.VSub_DollarName '$MAVEN_OPTS') <' -Dorg.slf4j.simpleLogger.defaultLogLevel=warn'>)
      }
    )
    (C {<mvn>} {<-B>} {<install>})
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<Id.Lit_LBracket '['>} {(DQ (${ Id.VSub_Name ARROW_TRAVIS_SKIP_SITE))} {<Id.Lit_Equals '='>} 
          {(DQ <yes>)} {<Id.Lit_RBracket ']'>}
        )
        (C {<mvn>} {<-B>} {<site>})
      ]
    )
    (C {<popd>})
  ]
)