(CommandList
  children: [
    (C {(set)} {(-o)} {(errexit)})
    (C {(set)} {(-o)} {(pipefail)})
    (C {(set)} {(-o)} {(nounset)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:RKT_VERSION) op:Equal rhs:{(DQ (v1.18.0))} spids:[76])]
      spids: [76]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DOCKER2ACI_VERSION)
          op: Equal
          rhs: {(DQ (v0.13.0))}
          spids: [81]
        )
      ]
      spids: [81]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MOUNTER_VERSION)
          op: Equal
          rhs: {($ VSub_Number '$1')}
          spids: [86]
        )
      ]
      spids: [86]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DOCKER_IMAGE)
          op: Equal
          rhs: {(docker) (Lit_Other ':') (//) ($ VSub_Number '$2')}
          spids: [89]
        )
      ]
      spids: [89]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MOUNTER_ACI_IMAGE)
          op: Equal
          rhs: {(gci-mounter-) (${ VSub_Name MOUNTER_VERSION) (.aci)}
          spids: [95]
        )
      ]
      spids: [95]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:RKT_GCS_DIR)
          op: Equal
          rhs: {(gs) (Lit_Other ':') (//kubernetes-release/rkt/)}
          spids: [102]
        )
      ]
      spids: [102]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:MOUNTER_GCS_DIR)
          op: Equal
          rhs: {(gs) (Lit_Other ':') (//kubernetes-release/gci-mounter/)}
          spids: [107]
        )
      ]
      spids: [107]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TMPDIR) op:Equal rhs:{(/tmp)} spids:[113])]
      spids: [113]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DOWNLOAD_DIR)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (C {(mktemp)} {(--tmpdir) (Lit_Other '=') (${ VSub_Name TMPDIR)} {(-d)} 
                        {(gci-mounter-build.XXXXXXXXXX)}
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [120 132]
              )
            }
          spids: [119]
        )
      ]
      spids: [119]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:STAGING_DIR)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (C {(mktemp)} {(--tmpdir) (Lit_Other '=') (${ VSub_Name TMPDIR)} {(-d)} 
                        {(gci-mounter-staging.XXXXXXXXXX)}
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [139 151]
              )
            }
          spids: [138]
        )
      ]
      spids: [138]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:RKT_DIR)
          op: Equal
          rhs: {(${ VSub_Name STAGING_DIR) (/) (${ VSub_Name RKT_VERSION)}
          spids: [153]
        )
      ]
      spids: [153]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:ACI_DIR)
          op: Equal
          rhs: {(${ VSub_Name STAGING_DIR) (/gci-mounter)}
          spids: [162]
        )
      ]
      spids: [162]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:CWD) op:Equal rhs:{(${ VSub_Name PWD)} spids:[168])]
      spids: [168]
    )
    (FuncDef
      name: cleanup
      body: 
        (BraceGroup
          children: [
            (C {(rm)} {(-rf)} {(${ VSub_Name DOWNLOAD_DIR)})
            (C {(rm)} {(-rf)} {(${ VSub_Name STAGING_DIR)})
            (C {(cd)} {(${ VSub_Name CWD)})
          ]
          spids: [181]
        )
      spids: [177 180]
    )
    (C {(trap)} {(cleanup)} {(EXIT)})
    (C {(mkdir)} {(${ VSub_Name RKT_DIR)})
    (C {(mkdir)} {(${ VSub_Name ACI_DIR)})
    (C {(cd)} {(${ VSub_Name DOWNLOAD_DIR)})
    (C {(echo)} {(DQ ('Downloading rkt ') (${ VSub_Name RKT_VERSION))})
    (Sentence
      child: 
        (C {(wget)} 
          {
            (DQ ('https://github.com/coreos/rkt/releases/download/') (${ VSub_Name RKT_VERSION) (/rkt-) 
              (${ VSub_Name RKT_VERSION) (.tar.gz)
            )
          }
        )
      terminator: <Op_Amp '&'>
    )
    (SimpleCommand
      redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[267])]
    )
    (C {(echo)} {(DQ ('Extracting rkt ') (${ VSub_Name RKT_VERSION))})
    (C {(tar)} {(xzf)} {(rkt-) (${ VSub_Name RKT_VERSION) (.tar.gz)})
    (C {(cp)} {(rkt-) (${ VSub_Name RKT_VERSION) (/rkt)} {(${ VSub_Name RKT_DIR) (/rkt)})
    (C {(cp)} {(rkt-) (${ VSub_Name RKT_VERSION) (/stage1-fly.aci)} {(${ VSub_Name RKT_DIR) (/)})
    (C {(echo)} {(DQ ('Downloading docker2aci ') (${ VSub_Name DOCKER2ACI_VERSION))})
    (Sentence
      child: 
        (C {(wget)} 
          {
            (DQ ('https://github.com/appc/docker2aci/releases/download/') 
              (${ VSub_Name DOCKER2ACI_VERSION) (/docker2aci-) (${ VSub_Name DOCKER2ACI_VERSION) (.tar.gz)
            )
          }
        )
      terminator: <Op_Amp '&'>
    )
    (SimpleCommand
      redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(/dev/null)} spids:[348])]
    )
    (C {(echo)} {(DQ ('Extracting docker2aci ') (${ VSub_Name DOCKER2ACI_VERSION))})
    (C {(tar)} {(xzf)} {(docker2aci-) (${ VSub_Name DOCKER2ACI_VERSION) (.tar.gz)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:ACI_IMAGE)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (SimpleCommand
                            words: [
                              {(${ VSub_Name DOWNLOAD_DIR) (/docker2aci-) 
                                (${ VSub_Name DOCKER2ACI_VERSION) (/docker2aci)
                              }
                              {(${ VSub_Name DOCKER_IMAGE)}
                            ]
                            redirects: [
                              (Redir
                                op_id: Redir_Great
                                fd: 2
                                arg_word: {(/dev/null)}
                                spids: [386]
                              )
                            ]
                          )
                          (C {(tail)} {(-n)} {(1)})
                        ]
                        negated: False
                      )
                    ]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [372 396]
              )
            }
          spids: [371]
        )
      ]
      spids: [371]
    )
    (C {(cp)} {(${ VSub_Name ACI_IMAGE)} {(${ VSub_Name ACI_DIR) (/) (${ VSub_Name MOUNTER_ACI_IMAGE)})
    (C {(echo)} 
      {
        (DQ ('Uploading rkt artifacts in ') (${ VSub_Name RKT_DIR) (' to ') (${ VSub_Name RKT_GCS_DIR))
      }
    )
    (C {(gsutil)} {(cp)} {(-R)} {(${ VSub_Name RKT_DIR)} {(${ VSub_Name RKT_GCS_DIR)})
    (C {(echo)} 
      {
        (DQ ('Uploading gci mounter ACI in ') (${ VSub_Name ACI_DIR) (' to ') 
          (${ VSub_Name MOUNTER_GCS_DIR)
        )
      }
    )
    (C {(gsutil)} {(cp)} {(${ VSub_Name ACI_DIR) (/) (${ VSub_Name MOUNTER_ACI_IMAGE)} 
      {(${ VSub_Name MOUNTER_GCS_DIR)}
    )
    (C {(echo)} {(DQ ('Upload completed'))})
    (C {(echo)} 
      {
        (DQ 
          (
'Update rkt, stag1-fly.aci & gci-mounter ACI versions and SHA1 in cluster/gce/gci/configure.sh'
          )
        )
      }
    )
    (C {(echo)} 
      {
        (DQ (${ VSub_Name RKT_VERSION) ('/rkt sha1: ') 
          (CommandSubPart
            command_list: (CommandList children:[(C {(sha1sum)} {(${ VSub_Name RKT_DIR) (/rkt)})])
            left_token: <Left_CommandSub '$('>
            spids: [492 499]
          )
        )
      }
    )
    (C {(echo)} 
      {
        (DQ (${ VSub_Name RKT_VERSION) ('/stage1-fly.aci sha1: ') 
          (CommandSubPart
            command_list: 
              (CommandList
                children: [(C {(sha1sum)} {(${ VSub_Name RKT_DIR) (/stage1-fly.aci)})]
              )
            left_token: <Left_CommandSub '$('>
            spids: [509 516]
          )
        )
      }
    )
    (C {(echo)} 
      {
        (DQ (${ VSub_Name MOUNTER_ACI_IMAGE) (' hash: ') 
          (CommandSubPart
            command_list: 
              (CommandList
                children: [
                  (C {(sha1sum)} {(${ VSub_Name ACI_DIR) (/) (${ VSub_Name MOUNTER_ACI_IMAGE)})
                ]
              )
            left_token: <Left_CommandSub '$('>
            spids: [526 536]
          )
        )
      }
    )
  ]
)