(CommandList
  children: [
    (Assignment
      keyword: Assign_Readonly
      pairs: [
        (assign_pair
          lhs: (LhsName name:GCS_BUCKET)
          op: Equal
          rhs: {(DQ ('gs://kythe-builds'))}
          spids: [45]
        )
      ]
      spids: [43]
    )
    (FuncDef
      name: usage
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ ('usage: ') 
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [(C {(basename)} {(DQ ($ VSub_Number '$0'))})]
                        )
                      left_token: <Left_CommandSub '$('>
                      spids: [62 68]
                    )
                  )
                }
              ]
              redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})]
            )
          ]
          spids: [55]
        )
      spids: [51 54]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (DBracket
                  expr: (BoolBinary op_id:BoolBinary_GlobNEqual left:{($ VSub_Pound '$#')} right:{(0)})
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(usage)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})]
          spids: [16777215 90]
        )
      ]
      spids: [16777215 100]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:REPO)
          op: Equal
          rhs: 
            {
              (DQ 
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (C {(readlink)} {(-e)} 
                          {
                            (DQ 
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [(C {(dirname)} {(DQ ($ VSub_Number '$0'))})]
                                  )
                                left_token: <Left_CommandSub '$('>
                                spids: [111 117]
                              ) (/..)
                            )
                          }
                        )
                      ]
                    )
                  left_token: <Left_CommandSub '$('>
                  spids: [105 120]
                )
              )
            }
          spids: [103]
        )
      ]
      spids: [103]
    )
    (C {(echo)} {(DQ ('Repository Root: ') ($ VSub_Name '$REPO'))})
    (C {(.)} {(tools/modules/versions.sh)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:NAME)
          op: Equal
          rhs: {(DQ (llvm-) (${ VSub_Name FULL_SHA))}
          spids: [135]
        )
      ]
      spids: [135]
    )
    (C {(echo)} {(DQ ('LLVM Version: ') ($ VSub_Name '$FULL_SHA'))})
    (C {(cd)} {(DQ ($ VSub_Name '$REPO') (/third_party/llvm))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TMP)
          op: Equal
          rhs: 
            {
              (DQ 
                (CommandSubPart
                  command_list: (CommandList children:[(C {(mktemp)} {(-d)})])
                  left_token: <Left_CommandSub '$('>
                  spids: [161 165]
                )
              )
            }
          spids: [159]
        )
      ]
      spids: [159]
    )
    (C {(trap)} {(DQ ("rm -rf '") ($ VSub_Name '$TMP') ("'"))} {(EXIT)} {(ERR)} {(INT)})
    (C {(tar)} {(czf)} {(DQ ($ VSub_Name '$TMP') (/) ($ VSub_Name '$NAME') (.tar.gz))} {(llvm)})
    (C {(gsutil)} {(cp)} {(DQ ($ VSub_Name '$TMP') (/) ($ VSub_Name '$NAME') (.tar.gz))} 
      {(DQ (${ VSub_Name GCS_BUCKET) (/))}
    )
  ]
)