(command.CommandList
  children: [
    (command.FuncDef
      name: on_travis
      body: 
        (command.BraceGroup
          children: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$TRAVIS'))} 
                          {(Lit_Other '=') (Lit_Other '=')} {(DQ (true))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(DQ ($ VSub_At '$@'))})]
                  spids: [16777215 49]
                )
              ]
              spids: [16777215 57]
            )
          ]
          spids: [28]
        )
      spids: [24 27]
    )
    (command.FuncDef
      name: internal_build_cpp
      body: 
        (command.BraceGroup
          children: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: (C {(Lit_Other '[')} {(-f)} {(src/protoc)} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(command.ControlFlow token:<ControlFlow_Return return>)]
                  spids: [16777215 86]
                )
              ]
              spids: [16777215 96]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.DBracket
                          expr: 
                            (bool_expr.LogicalAnd
                              left: 
                                (bool_expr.BoolBinary
                                  op_id: BoolBinary_GlobDEqual
                                  left: 
                                    {
                                      (word_part.CommandSubPart
                                        command_list: 
                                          (command.CommandList
                                            children: [(C {(uname)} {(-s)})]
                                          )
                                        left_token: <Left_CommandSub '$('>
                                        spids: [104 108]
                                      )
                                    }
                                  right: {(DQ (Linux))}
                                )
                              right: 
                                (bool_expr.BoolBinary
                                  op_id: BoolBinary_GlobDEqual
                                  left: {(DQ ($ VSub_Name '$TRAVIS'))}
                                  right: {(DQ (true))}
                                )
                            )
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(sudo)} {(add-apt-repository)} {(ppa) (Lit_Other ':') (ubuntu-toolchain-r/test)} 
                      {(-y)}
                    )
                    (C {(sudo)} {(apt-get)} {(update)} {(-qq)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-qq)} 
                      {(g) (Lit_Other '+') (Lit_Other '+') (-4.8)}
                    )
                    (C {(export)} {(Lit_VarLike 'CXX=') (DQ ('g++-4.8'))} 
                      {(Lit_VarLike 'CC=') (DQ (gcc-4.8))}
                    )
                  ]
                  spids: [16777215 131]
                )
              ]
              spids: [16777215 189]
            )
            (C {(./autogen.sh)})
            (C {(./configure)} {(Lit_VarLike 'CXXFLAGS=') (DQ (-fPIC))})
            (C {(make)} {(-j2)})
          ]
          spids: [72]
        )
      spids: [68 71]
    )
    (command.FuncDef
      name: build_cpp
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (C {(make)} {(check)} {(-j2)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(conformance)}) (C {(make)} {(test_cpp)}) (C {(cd)} {(..)})]
            )
            (C {(git)} {(submodule)} {(init)})
            (C {(git)} {(submodule)} {(update)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(third_party/benchmark)})
                (C {(cmake)} {(-DCMAKE_BUILD_TYPE) (Lit_Other '=') (Release)})
                (C {(make)})
                (C {(cd)} {(../..)})
              ]
            )
            (command.AndOr
              ops: [Op_DAmp Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(benchmarks)})
                (C {(make)})
                (C {(./generate-datasets)})
                (C {(cd)} {(..)})
              ]
            )
          ]
          spids: [222]
        )
      spids: [218 221]
    )
    (command.FuncDef
      name: build_cpp_distcheck
      body: 
        (command.BraceGroup
          children: [
            (C {(./autogen.sh)})
            (C {(./configure)})
            (C {(make)} {(dist)})
            (command.Pipeline
              children: [
                (C {(git)} {(ls-files)})
                (C {(grep)} 
                  {
                    (DQ ('^') (Lit_Other '\\') ('(java') (Lit_Other '\\') ('|python') (Lit_Other '\\') 
                      ('|objectivec') (Lit_Other '\\') ('|csharp') (Lit_Other '\\') ('|js') (Lit_Other '\\') ('|ruby') (Lit_Other '\\') ('|cmake') 
                      (Lit_Other '\\') ('|examples') (Lit_Other '\\') (')')
                    )
                  }
                )
                (C {(grep)} {(-v)} {(DQ (.gitignore))})
                (command.SimpleCommand
                  words: [{(grep)} {(-v)} {(DQ (java/compatibility_tests))}]
                  redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(dist.lst)})]
                )
              ]
              negated: F
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:DIST spids:[398])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: 
                          (command.CommandList
                            children: [(C {(ls)} {(Lit_Other '*') (.tar.gz)})]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [399 404]
                      )
                    }
                  spids: [398]
                )
              ]
              spids: [398]
            )
            (C {(tar)} {(-xf)} {($ VSub_Name '$DIST')})
            (C {(cd)} 
              {
                (word_part.BracedVarSub
                  token: <VSub_Name DIST>
                  suffix_op: (suffix_op.PatSub pat:{(.tar.gz)} replace_mode:Lit_Slash spids:[418])
                  spids: [416 421]
                )
              }
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:FILES_MISSING spids:[428])
                  op: Equal
                  rhs: {(DQ )}
                  spids: [428]
                )
              ]
              spids: [428]
            )
            (command.ForEach
              iter_name: FILE
              iter_words: [
                {
                  (word_part.CommandSubPart
                    command_list: 
                      (command.CommandList
                        children: [
                          (command.SimpleCommand
                            redirects: [
                              (redir.Redir
                                op: <Redir_Less '<'>
                                fd: 16777215
                                arg_word: {(../dist.lst)}
                              )
                            ]
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [439 442]
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (command.If
                      arms: [
                        (if_arm
                          cond: [
                            (command.Sentence
                              child: 
                                (command.Pipeline
                                  children: [
                                    (command.SimpleCommand
                                      words: [{(file)} {($ VSub_Name '$FILE')}]
                                      redirects: [
                                        (redir.Redir
                                          op: <Redir_AndGreat '&>'>
                                          fd: 16777215
                                          arg_word: {(/dev/null)}
                                        )
                                      ]
                                    )
                                  ]
                                  negated: T
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(echo)} {(DQ ($ VSub_Name '$FILE') (' is not found!'))})
                            (command.Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:FILES_MISSING spids:[471])
                                  op: Equal
                                  rhs: 
                                    {(DQ ($ VSub_Name '$FILE') (' ') ($ VSub_Name '$FILES_MISSING'))}
                                  spids: [471]
                                )
                              ]
                              spids: [471]
                            )
                          ]
                          spids: [16777215 460]
                        )
                      ]
                      spids: [16777215 479]
                    )
                  ]
                  spids: [445 482]
                )
              spids: [438 443]
            )
            (C {(cd)} {(..)})
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$FILES_MISSING'))} 
                          {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('Missing files in EXTRA_DIST: ') ($ VSub_Name '$FILES_MISSING'))})
                    (command.ControlFlow
                      token: <ControlFlow_Exit exit>
                      arg_word: {(1)}
                    )
                  ]
                  spids: [16777215 505]
                )
              ]
              spids: [16777215 521]
            )
            (C {(make)} {(distcheck)} {(-j2)})
          ]
          spids: [319]
        )
      spids: [315 318]
    )
    (command.FuncDef
      name: build_csharp
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:NUGET spids:[560])
                  op: Equal
                  rhs: {(/usr/local/bin/nuget.exe)}
                  spids: [560]
                )
              ]
              spids: [560]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$TRAVIS'))} 
                          {(Lit_Other '=') (Lit_Other '=')} {(DQ (true))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(sudo)} {(apt-key)} {(adv)} {(--keyserver)} {(keyserver.ubuntu.com)} 
                      {(--recv-keys)} {(3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF)}
                    )
                    (C {(sudo)} {(apt-key)} {(adv)} {(--keyserver)} {(keyserver.ubuntu.com)} 
                      {(--recv-keys)} {(1397BC53640DB551)}
                    )
                    (command.Pipeline
                      children: [
                        (C {(echo)} 
                          {(DQ ('deb http://download.mono-project.com/repo/debian wheezy main'))}
                        )
                        (C {(sudo)} {(tee)} {(/etc/apt/sources.list.d/mono-xamarin.list)})
                      ]
                      negated: F
                    )
                    (C {(sudo)} {(apt-get)} {(update)} {(-qq)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-qq)} {(mono-devel)} {(referenceassemblies-pcl)} 
                      {(nunit)}
                    )
                    (C {(sudo)} {(sh)} {(-c)} 
                      {
                        (SQ 
                          <
'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list'
                          >
                        )
                      }
                    )
                    (C {(sudo)} {(apt-key)} {(adv)} {(--keyserver)} {(apt-mo.trafficmanager.net)} 
                      {(--recv-keys)} {(417A0893)}
                    )
                    (C {(sudo)} {(apt-get)} {(update)} {(-qq)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-qq)} {(dotnet-dev-1.0.0-preview2-003121)})
                  ]
                  spids: [16777215 583]
                )
              ]
              spids: [16777215 711]
            )
            (C {(mkdir)} {(dotnettmp)})
            (command.Subshell
              child: 
                (command.CommandList
                  children: [
                    (command.Sentence
                      child: (C {(cd)} {(dotnettmp)})
                      terminator: <Op_Semi ';'>
                    )
                    (command.SimpleCommand
                      words: [{(dotnet)} {(new)}]
                      redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})]
                    )
                  ]
                )
              spids: [736 749]
            )
            (C {(rm)} {(-rf)} {(dotnettmp)})
            (command.Subshell
              child: 
                (command.CommandList
                  children: [
                    (command.Sentence
                      child: (C {(cd)} {(csharp/src)})
                      terminator: <Op_Semi ';'>
                    )
                    (C {(dotnet)} {(restore)})
                  ]
                )
              spids: [760 769]
            )
            (C {(csharp/buildall.sh)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(conformance)}) (C {(make)} {(test_csharp)}) (C {(cd)} {(..)})]
            )
          ]
          spids: [542]
        )
      spids: [538 541]
    )
    (command.FuncDef
      name: build_golang
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (C {(export)} 
              {(Lit_VarLike 'PATH=') 
                (DQ 
                  (word_part.CommandSubPart
                    command_list: (command.CommandList children:[(C {(pwd)})])
                    left_token: <Left_Backtick '`'>
                    spids: [816 818]
                  ) ('/src:') ($ VSub_Name '$PATH')
                )
              }
            )
            (C {(on_travis)} {(sudo)} {(apt-get)} {(update)} {(-qq)})
            (C {(on_travis)} {(sudo)} {(apt-get)} {(install)} {(-qq)} {(golang)})
            (C {(export)} {(Lit_VarLike 'GOPATH=') (DQ ($ VSub_Name '$HOME') (/gocode))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$GOPATH') (/src/github.com/google))})
            (C {(rm)} {(-f)} {(DQ ($ VSub_Name '$GOPATH') (/src/github.com/google/protobuf))})
            (C {(ln)} {(-s)} 
              {
                (DQ 
                  (word_part.CommandSubPart
                    command_list: (command.CommandList children:[(C {(pwd)})])
                    left_token: <Left_Backtick '`'>
                    spids: [888 890]
                  )
                )
              } {(DQ ($ VSub_Name '$GOPATH') (/src/github.com/google/protobuf))}
            )
            (C {(export)} 
              {(Lit_VarLike 'PATH=') (DQ ($ VSub_Name '$GOPATH') ('/bin:') ($ VSub_Name '$PATH'))}
            )
            (C {(go)} {(get)} {(github.com/golang/protobuf/protoc-gen-go)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(examples)}) (C {(make)} {(gotest)}) (C {(cd)} {(..)})]
            )
          ]
          spids: [798]
        )
      spids: [794 797]
    )
    (command.FuncDef
      name: use_java
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:version spids:[943])
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [943]
                )
              ]
              spids: [943]
            )
            (command.Case
              to_match: {(DQ ($ VSub_Name '$version'))}
              arms: [
                (case_arm
                  pat_list: [{(jdk7)}]
                  action: [
                    (C {(on_travis)} {(sudo)} {(apt-get)} {(install)} {(openjdk-7-jdk)})
                    (C {(export)} 
                      {(Lit_VarLike 'PATH=') (/usr/lib/jvm/java-7-openjdk-amd64/bin) (Lit_Other ':') 
                        ($ VSub_Name '$PATH')
                      }
                    )
                    (C {(export)} {(Lit_VarLike 'JAVA_HOME=') (/usr/lib/jvm/java-7-openjdk-amd64)})
                  ]
                  spids: [956 957 985 16777215]
                )
                (case_arm
                  pat_list: [{(oracle7)}]
                  action: [
                    (command.Sentence
                      child: 
                        (command.If
                          arms: [
                            (if_arm
                              cond: [
                                (command.Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$TRAVIS'))} 
                                      {(Lit_Other '=') (Lit_Other '=')} {(DQ (true))} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (C {(sudo)} {(apt-get)} {(install)} {(python-software-properties)})
                                (command.Pipeline
                                  children: [
                                    (C {(echo)} 
                                      {
                                        (DQ 
                                          (
'oracle-java7-installer shared/accepted-oracle-license-v1-1 select true'
                                          )
                                        )
                                      }
                                    )
                                    (C {(sudo)} {(debconf-set-selections)})
                                  ]
                                  negated: F
                                )
                                (command.Pipeline
                                  children: [
                                    (C {(yes)})
                                    (C {(sudo)} {(apt-add-repository)} 
                                      {(ppa) (Lit_Other ':') (webupd8team/java)}
                                    )
                                  ]
                                  negated: F
                                )
                                (command.Pipeline
                                  children: [
                                    (C {(yes)})
                                    (C {(sudo)} {(apt-get)} {(install)} {(oracle-java7-installer)})
                                  ]
                                  negated: F
                                )
                              ]
                              spids: [16777215 1010]
                            )
                          ]
                          spids: [16777215 1066]
                        )
                      terminator: <Op_Semi ';'>
                    )
                    (C {(export)} 
                      {(Lit_VarLike 'PATH=') (/usr/lib/jvm/java-7-oracle/bin) (Lit_Other ':') 
                        ($ VSub_Name '$PATH')
                      }
                    )
                    (C {(export)} {(Lit_VarLike 'JAVA_HOME=') (/usr/lib/jvm/java-7-openjdk-amd64)})
                  ]
                  spids: [988 989 1084 16777215]
                )
              ]
              spids: [947 953 1087]
            )
            (command.Sentence
              child: 
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$TRAVIS'))} 
                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (true))} {(Lit_Other ']')}
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:MAVEN_LOCAL_REPOSITORY spids:[1112])
                              op: Equal
                              rhs: {(/var/maven_local_repository)}
                              spids: [1112]
                            )
                          ]
                          spids: [1112]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:MVN spids:[1116])
                              op: Equal
                              rhs: 
                                {
                                  (DQ ($ VSub_Name '$MVN') (' -e -X --offline -Dmaven.repo.local=') 
                                    ($ VSub_Name '$MAVEN_LOCAL_REPOSITORY')
                                  )
                                }
                              spids: [1116]
                            )
                          ]
                          spids: [1116]
                        )
                      ]
                      spids: [16777215 1109]
                    )
                  ]
                  spids: [16777215 1124]
                )
              terminator: <Op_Semi ';'>
            )
            (C {(which)} {(java)})
            (C {(java)} {(-version)})
            (C {($ VSub_Name '$MVN')} {(-version)})
          ]
          spids: [940]
        )
      spids: [936 939]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:MVN spids:[1149])
          op: Equal
          rhs: {(DQ ('mvn --batch-mode'))}
          spids: [1149]
        )
      ]
      spids: [1149]
    )
    (command.FuncDef
      name: build_java
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:version spids:[1162])
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [1162]
                )
              ]
              spids: [1162]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:dir spids:[1166])
                  op: Equal
                  rhs: {(java_) ($ VSub_Name '$version')}
                  spids: [1166]
                )
              ]
              spids: [1166]
            )
            (C {(internal_build_cpp)})
            (C {(cp)} {(-r)} {(java)} {($ VSub_Name '$dir')})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {($ VSub_Name '$dir')})
                (C {($ VSub_Name '$MVN')} {(clean)})
                (C {($ VSub_Name '$MVN')} {(test)})
              ]
            )
            (C {(cd)} {(../..)})
          ]
          spids: [1159]
        )
      spids: [1155 1158]
    )
    (command.FuncDef
      name: build_java_with_conformance_tests
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(java)})
                (C {($ VSub_Name '$MVN')} {(test)})
                (C {($ VSub_Name '$MVN')} {(install)})
              ]
            )
            (command.AndOr
              ops: [Op_DAmp]
              children: [
                (C {(cd)} {(util)})
                (C {($ VSub_Name '$MVN')} {(package)} {(assembly) (Lit_Other ':') (single)})
              ]
            )
            (C {(cd)} {(../..)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(conformance)}) (C {(make)} {(test_java)}) (C {(cd)} {(..)})]
            )
          ]
          spids: [1221]
        )
      spids: [1217 1220]
    )
    (command.FuncDef
      name: build_javanano
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(javanano)}) (C {($ VSub_Name '$MVN')} {(test)}) (C {(cd)} {(..)})]
            )
          ]
          spids: [1291]
        )
      spids: [1287 1290]
    )
    (command.FuncDef
      name: build_java_jdk7
      body: 
        (command.BraceGroup
          children: [(C {(use_java)} {(jdk7)}) (C {(build_java_with_conformance_tests)})]
          spids: [1324]
        )
      spids: [1320 1323]
    )
    (command.FuncDef
      name: build_java_oracle7
      body: 
        (command.BraceGroup
          children: [(C {(use_java)} {(oracle7)}) (C {(build_java)} {(oracle7)})]
          spids: [1340]
        )
      spids: [1336 1339]
    )
    (command.FuncDef
      name: build_java_compatibility
      body: 
        (command.BraceGroup
          children: [
            (C {(use_java)} {(jdk7)})
            (C {(internal_build_cpp)})
            (C {(cd)} {(java/compatibility_tests/v2.5.0)})
            (C {(./test.sh)} {(3.0.0-beta-4)})
          ]
          spids: [1358]
        )
      spids: [1354 1357]
    )
    (command.FuncDef
      name: build_javanano_jdk7
      body: 
        (command.BraceGroup
          children: [(C {(use_java)} {(jdk7)}) (C {(build_javanano)})]
          spids: [1393]
        )
      spids: [1389 1392]
    )
    (command.FuncDef
      name: build_javanano_oracle7
      body: 
        (command.BraceGroup
          children: [(C {(use_java)} {(oracle7)}) (C {(build_javanano)})]
          spids: [1409]
        )
      spids: [1405 1408]
    )
    (command.FuncDef
      name: internal_install_python_deps
      body: 
        (command.BraceGroup
          children: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$TRAVIS'))} 
                          {(KW_Bang '!') (Lit_Other '=')} {(DQ (true))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (command.Sentence
                      child: (command.ControlFlow token:<ControlFlow_Return return>)
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  spids: [16777215 1447]
                )
              ]
              spids: [16777215 1454]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (word_part.CommandSubPart
                              command_list: (command.CommandList children:[(C {(uname)} {(-s)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [1465 1469]
                            )
                          } {(Lit_Other '=') (Lit_Other '=')} {(DQ (Darwin))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(sudo)} {(easy_install)} {(tox)})]
                  spids: [16777215 1481]
                )
              ]
              else_action: [(C {(sudo)} {(pip)} {(install)} {(tox)})]
              spids: [1491 1503]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (word_part.CommandSubPart
                              command_list: (command.CommandList children:[(C {(uname)} {(-s)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [1514 1518]
                            )
                          } {(Lit_Other '=') (Lit_Other '=')} {(DQ (Linux))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(python-software-properties)})
                    (C {(sudo)} {(apt-add-repository)} {(-y)} {(ppa) (Lit_Other ':') (fkrull/deadsnakes)})
                    (C {(sudo)} {(apt-get)} {(update)} {(-qq)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(python2.6)} {(python2.6-dev)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(python3.3)} {(python3.3-dev)})
                    (C {(sudo)} {(apt-get)} {(install)} {(-y)} {(python3.4)} {(python3.4-dev)})
                  ]
                  spids: [16777215 1530]
                )
              ]
              spids: [16777215 1606]
            )
          ]
          spids: [1426]
        )
      spids: [1422 1425]
    )
    (command.FuncDef
      name: build_objectivec_ios
      body: 
        (command.BraceGroup
          children: [
            (C {(objectivec/DevTools/full_mac_build.sh)} {(--core-only)} {(--skip-xcode-osx)} 
              {(--skip-objc-conformance)} {(DQ ($ VSub_At '$@'))}
            )
          ]
          spids: [1615]
        )
      spids: [1611 1614]
    )
    (command.FuncDef
      name: build_objectivec_ios_debug
      body: 
        (command.BraceGroup
          children: [(C {(build_objectivec_ios)} {(--skip-xcode-release)})]
          spids: [1663]
        )
      spids: [1659 1662]
    )
    (command.FuncDef
      name: build_objectivec_ios_release
      body: 
        (command.BraceGroup
          children: [(C {(build_objectivec_ios)} {(--skip-xcode-debug)})]
          spids: [1677]
        )
      spids: [1673 1676]
    )
    (command.FuncDef
      name: build_objectivec_osx
      body: 
        (command.BraceGroup
          children: [(C {(objectivec/DevTools/full_mac_build.sh)} {(--core-only)} {(--skip-xcode-ios)})]
          spids: [1691]
        )
      spids: [1687 1690]
    )
    (command.FuncDef
      name: build_objectivec_cocoapods_integration
      body: 
        (command.BraceGroup
          children: [
            (C {(source)} {(word_part.TildeSubPart token:<Lit_TildeLike '~'>) (/.rvm/scripts/rvm)})
            (C {(rvm)} {(get)} {(head)})
            (C {(rvm)} {(use)} {(2.2.3)} {(--install)} {(--binary)} {(--fuzzy)})
            (C {(gem)} {(install)} {(cocoapods)} {(--no-ri)} {(--no-rdoc)})
            (C {(objectivec/Tests/CocoaPods/run_tests.sh)})
          ]
          spids: [1717]
        )
      spids: [1713 1716]
    )
    (command.FuncDef
      name: build_python
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (C {(internal_install_python_deps)})
            (C {(cd)} {(python)})
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (word_part.CommandSubPart
                              command_list: (command.CommandList children:[(C {(uname)} {(-s)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [1816 1820]
                            )
                          } {(Lit_Other '=') (Lit_Other '=')} {(DQ (Linux))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:envlist spids:[1835])
                          op: Equal
                          rhs: 
                            {(py) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\{'>) (26) 
                              (Lit_Comma ',') (27) (Lit_Comma ',') (33) (Lit_Comma ',') (34) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\}'>) 
                              (-python)
                            }
                          spids: [1835]
                        )
                      ]
                      spids: [1835]
                    )
                  ]
                  spids: [16777215 1832]
                )
              ]
              else_action: [
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:envlist spids:[1852])
                      op: Equal
                      rhs: {(py27-python)}
                      spids: [1852]
                    )
                  ]
                  spids: [1852]
                )
              ]
              spids: [1849 1856]
            )
            (C {(tox)} {(-e)} {($ VSub_Name '$envlist')})
            (C {(cd)} {(..)})
          ]
          spids: [1794]
        )
      spids: [1790 1793]
    )
    (command.FuncDef
      name: build_python_cpp
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (C {(internal_install_python_deps)})
            (C {(export)} {(Lit_VarLike 'LD_LIBRARY_PATH=') (../src/.libs)})
            (C {(export)} {(Lit_VarLike 'DYLD_LIBRARY_PATH=') (../src/.libs)})
            (C {(cd)} {(python)})
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (word_part.CommandSubPart
                              command_list: (command.CommandList children:[(C {(uname)} {(-s)})])
                              left_token: <Left_CommandSub '$('>
                              spids: [1917 1921]
                            )
                          } {(Lit_Other '=') (Lit_Other '=')} {(DQ (Linux))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:envlist spids:[1940])
                          op: Equal
                          rhs: 
                            {(py) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\{'>) (27) 
                              (Lit_Comma ',') (33) (Lit_Comma ',') (34) (word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\}'>) (-cpp)
                            }
                          spids: [1940]
                        )
                      ]
                      spids: [1940]
                    )
                  ]
                  spids: [16777215 1933]
                )
              ]
              else_action: [
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:envlist spids:[1955])
                      op: Equal
                      rhs: {(py27-cpp)}
                      spids: [1955]
                    )
                  ]
                  spids: [1955]
                )
              ]
              spids: [1952 1959]
            )
            (C {(tox)} {(-e)} {($ VSub_Name '$envlist')})
            (C {(cd)} {(..)})
          ]
          spids: [1877]
        )
      spids: [1873 1876]
    )
    (command.FuncDef
      name: build_ruby21
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(ruby)})
                (C {(bash)} {(travis-test.sh)} {(ruby-2.1)})
                (C {(cd)} {(..)})
              ]
            )
          ]
          spids: [1980]
        )
      spids: [1976 1979]
    )
    (command.FuncDef
      name: build_ruby22
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(ruby)})
                (C {(bash)} {(travis-test.sh)} {(ruby-2.2)})
                (C {(cd)} {(..)})
              ]
            )
          ]
          spids: [2013]
        )
      spids: [2009 2012]
    )
    (command.FuncDef
      name: build_jruby
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [
                (C {(cd)} {(ruby)})
                (C {(bash)} {(travis-test.sh)} {(jruby-1.7)})
                (C {(cd)} {(..)})
              ]
            )
          ]
          spids: [2046]
        )
      spids: [2042 2045]
    )
    (command.FuncDef
      name: build_ruby_all
      body: 
        (command.BraceGroup
          children: [(C {(build_ruby21)}) (C {(build_ruby22)}) (C {(build_jruby)})]
          spids: [2087]
        )
      spids: [2083 2086]
    )
    (command.FuncDef
      name: build_javascript
      body: 
        (command.BraceGroup
          children: [
            (C {(internal_build_cpp)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(js)}) (C {(npm)} {(install)}) (C {(npm)} {(test)}) (C {(cd)} {(..)})]
            )
          ]
          spids: [2105]
        )
      spids: [2101 2104]
    )
    (command.FuncDef
      name: use_php
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:VERSION spids:[2143])
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [2143]
                )
              ]
              spids: [2143]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP spids:[2147])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2148 2152]
                      )
                    }
                  spids: [2147]
                )
              ]
              spids: [2147]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP_CONFIG spids:[2155])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php-config)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2156 2160]
                      )
                    }
                  spids: [2155]
                )
              ]
              spids: [2155]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHPIZE spids:[2163])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(phpize)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2164 2168]
                      )
                    }
                  spids: [2163]
                )
              ]
              spids: [2163]
            )
            (C {(rm)} {($ VSub_Name '$PHP')})
            (C {(rm)} {($ VSub_Name '$PHP_CONFIG')})
            (C {(rm)} {($ VSub_Name '$PHPIZE')})
            (C {(cp)} {(DQ (/usr/bin/php) ($ VSub_Name '$VERSION'))} {($ VSub_Name '$PHP')})
            (C {(cp)} {(DQ (/usr/bin/php-config) ($ VSub_Name '$VERSION'))} 
              {($ VSub_Name '$PHP_CONFIG')}
            )
            (C {(cp)} {(DQ (/usr/bin/phpize) ($ VSub_Name '$VERSION'))} {($ VSub_Name '$PHPIZE')})
          ]
          spids: [2140]
        )
      spids: [2136 2139]
    )
    (command.FuncDef
      name: use_php_zts
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:VERSION spids:[2225])
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [2225]
                )
              ]
              spids: [2225]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP spids:[2229])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2230 2234]
                      )
                    }
                  spids: [2229]
                )
              ]
              spids: [2229]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP_CONFIG spids:[2237])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php-config)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2238 2242]
                      )
                    }
                  spids: [2237]
                )
              ]
              spids: [2237]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHPIZE spids:[2245])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(phpize)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2246 2250]
                      )
                    }
                  spids: [2245]
                )
              ]
              spids: [2245]
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-zts/bin/php))} 
              {($ VSub_Name '$PHP')}
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-zts/bin/php-config))} 
              {($ VSub_Name '$PHP_CONFIG')}
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-zts/bin/phpize))} 
              {($ VSub_Name '$PHPIZE')}
            )
          ]
          spids: [2222]
        )
      spids: [2218 2221]
    )
    (command.FuncDef
      name: use_php_bc
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:VERSION spids:[2307])
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [2307]
                )
              ]
              spids: [2307]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP spids:[2311])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2312 2316]
                      )
                    }
                  spids: [2311]
                )
              ]
              spids: [2311]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHP_CONFIG spids:[2319])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(php-config)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2320 2324]
                      )
                    }
                  spids: [2319]
                )
              ]
              spids: [2319]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PHPIZE spids:[2327])
                  op: Equal
                  rhs: 
                    {
                      (word_part.CommandSubPart
                        command_list: (command.CommandList children:[(C {(which)} {(phpize)})])
                        left_token: <Left_Backtick '`'>
                        spids: [2328 2332]
                      )
                    }
                  spids: [2327]
                )
              ]
              spids: [2327]
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-bc/bin/php))} 
              {($ VSub_Name '$PHP')}
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-bc/bin/php-config))} 
              {($ VSub_Name '$PHP_CONFIG')}
            )
            (C {(ln)} {(-sfn)} {(DQ (/usr/local/php-) (${ VSub_Name VERSION) (-bc/bin/phpize))} 
              {($ VSub_Name '$PHPIZE')}
            )
          ]
          spids: [2304]
        )
      spids: [2300 2303]
    )
    (command.FuncDef
      name: build_php5.5
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(5.5)})
            (C {(rm)} {(-rf)} {(vendor)})
            (C {(cp)} {(-r)} {(/usr/local/vendor-5.5)} {(vendor)})
            (C {(./vendor/bin/phpunit)})
          ]
          spids: [2386]
        )
      spids: [2382 2385]
    )
    (command.FuncDef
      name: build_php5.5_c
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(5.5)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(php/tests)}) (C {(/bin/bash)} {(./test.sh)}) (C {(cd)} {(../..)})]
            )
          ]
          spids: [2419]
        )
      spids: [2415 2418]
    )
    (command.FuncDef
      name: build_php5.5_zts_c
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php_zts)} {(5.5)})
            (C {(wget)} {(https) (Lit_Other ':') (//phar.phpunit.de/phpunit-old.phar)} {(-O)} 
              {(/usr/bin/phpunit)}
            )
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(php/tests)}) (C {(/bin/bash)} {(./test.sh)}) (C {(cd)} {(../..)})]
            )
          ]
          spids: [2450]
        )
      spids: [2446 2449]
    )
    (command.FuncDef
      name: build_php5.5_32
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php_bc)} {(5.5)})
            (C {(rm)} {(-rf)} {(vendor)})
            (C {(cp)} {(-r)} {(/usr/local/vendor-5.5)} {(vendor)})
            (C {(./vendor/bin/phpunit)})
          ]
          spids: [2492]
        )
      spids: [2488 2491]
    )
    (command.FuncDef
      name: build_php5.6
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(5.6)})
            (C {(rm)} {(-rf)} {(vendor)})
            (C {(cp)} {(-r)} {(/usr/local/vendor-5.6)} {(vendor)})
            (C {(./vendor/bin/phpunit)})
          ]
          spids: [2525]
        )
      spids: [2521 2524]
    )
    (command.FuncDef
      name: build_php5.6_c
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(5.6)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(php/tests)}) (C {(/bin/bash)} {(./test.sh)}) (C {(cd)} {(../..)})]
            )
          ]
          spids: [2558]
        )
      spids: [2554 2557]
    )
    (command.FuncDef
      name: build_php5.6_mac
      body: 
        (command.BraceGroup
          children: [
            (command.Pipeline
              children: [
                (C {(curl)} {(-s)} {(https) (Lit_Other ':') (//php-osx.liip.ch/install.sh)})
                (C {(bash)} {(-s)} {(5.6)})
              ]
              negated: F
            )
            (C {(export)} 
              {(Lit_VarLike 'PATH=') 
                (DQ ('/usr/local/php5-5.6.25-20160831-101628/bin:') ($ VSub_Name '$PATH'))
              }
            )
            (C {(curl)} {(https) (Lit_Other ':') (//phar.phpunit.de/phpunit.phar)} {(-L)} {(-o)} 
              {(phpunit.phar)}
            )
            (C {(chmod)} {(Lit_Other '+') (x)} {(phpunit.phar)})
            (C {(sudo)} {(mv)} {(phpunit.phar)} {(/usr/local/bin/phpunit)})
            (command.SimpleCommand
              words: [{(echo)} {(DQ ('#! /bin/bash'))}]
              redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(valgrind)})]
            )
            (C {(chmod)} {(ug) (Lit_Other '+') (x)} {(valgrind)})
            (C {(sudo)} {(mv)} {(valgrind)} {(/usr/local/bin/valgrind)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(php/tests)}) (C {(/bin/bash)} {(./test.sh)}) (C {(cd)} {(../..)})]
            )
          ]
          spids: [2589]
        )
      spids: [2585 2588]
    )
    (command.FuncDef
      name: build_php7.0
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(7.0)})
            (C {(rm)} {(-rf)} {(vendor)})
            (C {(cp)} {(-r)} {(/usr/local/vendor-7.0)} {(vendor)})
            (C {(./vendor/bin/phpunit)})
          ]
          spids: [2719]
        )
      spids: [2715 2718]
    )
    (command.FuncDef
      name: build_php7.0_c
      body: 
        (command.BraceGroup
          children: [
            (C {(use_php)} {(7.0)})
            (command.AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(php/tests)}) (C {(/bin/bash)} {(./test.sh)}) (C {(cd)} {(../..)})]
            )
          ]
          spids: [2752]
        )
      spids: [2748 2751]
    )
    (command.FuncDef
      name: build_php_all
      body: 
        (command.BraceGroup
          children: [
            (C {(build_php5.5)})
            (C {(build_php5.6)})
            (C {(build_php7.0)})
            (C {(build_php5.5_c)})
            (C {(build_php5.6_c)})
            (C {(build_php5.5_zts_c)})
          ]
          spids: [2783]
        )
      spids: [2779 2782]
    )
    (command.FuncDef
      name: build_php_all_32
      body: (command.BraceGroup children:[(C {(build_php5.5_32)})] spids:[2814])
      spids: [2810 2813]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: (C {(Lit_Other '[')} {(DQ ($ VSub_Pound '$#'))} {(-ne)} {(1)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(echo)} 
              {
                (DQ ('\n') ('Usage: ') ($ VSub_Number '$0') (' { cpp |\n') 
                  ('            cpp_distcheck |\n') ('            csharp |\n') ('            java_jdk7 |\n') ('            java_oracle7 |\n') 
                  ('            java_compatibility |\n') ('            javanano_jdk7 |\n') ('            javanano_oracle7 |\n') 
                  ('            objectivec_ios |\n') ('            objectivec_ios_debug |\n') ('            objectivec_ios_release |\n') 
                  ('            objectivec_osx |\n') ('            objectivec_cocoapods_integration |\n') ('            python |\n') 
                  ('            python_cpp |\n') ('            ruby21 |\n') ('            ruby22 |\n') ('            jruby |\n') 
                  ('            ruby_all |\n') ('            php5.5   |\n') ('            php5.5_c |\n') ('            php5.6   |\n') 
                  ('            php5.6_c |\n') ('            php7.0   |\n') ('            php7.0_c |\n') ('            php_all)\n')
                )
              }
            )
            (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 2861]
        )
      ]
      spids: [16777215 2903]
    )
    (C {(set)} {(-e)})
    (C {(set)} {(-x)})
    (C {(eval)} {(DQ (build_) ($ VSub_Number '$1'))})
  ]
)