(CommandList
  children: [
    (C {(set)} {(-e)})
    (C {(cd)} 
      {
        (DQ 
          (CommandSubPart
            command_list: (CommandList children:[(C {(dirname)} {(DQ ($ VSub_Number '$0'))})])
            left_token: <Left_CommandSub '$('>
            spids: [23 29]
          )
        ) (/..)
      }
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:shashort)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [(C {(git)} {(rev-parse)} {(--short) (Lit_Other '=') (10)} {(HEAD)})]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [38 48]
              )
            }
          spids: [37]
        )
      ]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:tag)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [(C {(git)} {(tag)} {(--points-at)} {($ VSub_Name '$shashort')})]
                  )
                left_token: <Left_CommandSub '$('>
                spids: [51 59]
              )
            }
          spids: [50]
        )
      ]
      spids: [50]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$tag'))} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (SimpleCommand
              words: [
                {(echo)}
                {(DQ ('error: this script must be run with a tagged commit checked out'))}
              ]
              redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[83])]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 74]
        )
      ]
      spids: [16777215 91]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:version)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(cat)} {(VERSION)})])
                left_token: <Left_CommandSub '$('>
                spids: [94 98]
              )
            }
          spids: [93]
        )
      ]
      spids: [93]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:majmin)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(cut)} {(-d.)} {(-f1-2)} {(VERSION)})])
                left_token: <Left_CommandSub '$('>
                spids: [101 109]
              )
            }
          spids: [100]
        )
      ]
      spids: [100]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:majminpatch)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(cut)} {(-d-)} {(-f1)} {(VERSION)})])
                left_token: <Left_CommandSub '$('>
                spids: [115 123]
              )
            }
          spids: [114]
        )
      ]
      spids: [114]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$tag'))} {(KW_Bang '!') (Lit_Other '=')} 
                  {(DQ (v) ($ VSub_Name '$version'))} {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (SimpleCommand
              words: [{(echo)} {(DQ ('error: tagged commit does not match content of VERSION file'))}]
              redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[153])]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 144]
        )
      ]
      spids: [16777215 161]
    )
    (C {(git)} {(clone)} {(https) (Lit_Other ':') (//github.com/JuliaLang/julia)} {(-b)} 
      {($ VSub_Name '$tag')} {(julia-) ($ VSub_Name '$version')}
    )
    (C {(cd)} {(julia-) ($ VSub_Name '$version')})
    (C {(make)} {(full-source-dist)})
    (C {(make)} {(light-source-dist)})
    (C {(mv)} {(julia-) (${ VSub_Name version) (_) ($ VSub_Name '$shashort') (-full.tar.gz)} 
      {(../julia-) ($ VSub_Name '$version') (-full.tar.gz)}
    )
    (C {(mv)} {(julia-) (${ VSub_Name version) (_) ($ VSub_Name '$shashort') (.tar.gz)} 
      {(../julia-) ($ VSub_Name '$version') (.tar.gz)}
    )
    (C {(cd)} {(..)})
    (C {(rm)} {(-rf)} {(julia-) ($ VSub_Name '$version')})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:julianightlies)
          op: Equal
          rhs: {(DQ ('https://julialangnightlies-s3.julialang.org/bin'))}
          spids: [241]
        )
      ]
      spids: [241]
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-linux-x86_64.tar.gz)} 
      {($ VSub_Name '$julianightlies') (/linux/x64/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-linux64.tar.gz)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-linux-x86_64.tar.gz)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-linux-x86_64.tar.gz)}
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-linux-i686.tar.gz)} 
      {($ VSub_Name '$julianightlies') (/linux/x86/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-linux32.tar.gz)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-linux-i686.tar.gz)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-linux-i686.tar.gz)}
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-linux-arm.tar.gz)} 
      {($ VSub_Name '$julianightlies') (/linux/arm/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-linuxarm.tar.gz)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-linux-arm.tar.gz)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-linux-arm.tar.gz)}
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-linux-ppc64le.tar.gz)} 
      {($ VSub_Name '$julianightlies') (/linux/ppc64le/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-linuxppc64.tar.gz)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-linux-ppc64le.tar.gz)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-linux-ppc64le.tar.gz)}
    )
    (C {(curl)} {(-L)} {(-o)} {(DQ (julia-) ($ VSub_Name '$version') ('-osx10.7 .dmg'))} 
      {($ VSub_Name '$julianightlies') (/osx/x64/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-osx.dmg)
      }
    )
    (C {(cp)} {(DQ (julia-) ($ VSub_Name '$version') ('-osx10.7 .dmg'))} 
      {(DQ (julia-) ($ VSub_Name '$majmin') ('-latest-osx10.7 .dmg'))}
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-win64.exe)} 
      {($ VSub_Name '$julianightlies') (/winnt/x64/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-win64.exe)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-win64.exe)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-win64.exe)}
    )
    (C {(curl)} {(-L)} {(-o)} {(julia-) ($ VSub_Name '$version') (-win32.exe)} 
      {($ VSub_Name '$julianightlies') (/winnt/x86/) ($ VSub_Name '$majmin') (/julia-) 
        ($ VSub_Name '$majminpatch') (-) ($ VSub_Name '$shashort') (-win32.exe)
      }
    )
    (C {(cp)} {(julia-) ($ VSub_Name '$version') (-win32.exe)} 
      {(julia-) ($ VSub_Name '$majmin') (-latest-win32.exe)}
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-e)} {(codesign.sh)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(./codesign.sh)})]
          spids: [16777215 481]
        )
      ]
      spids: [16777215 494]
    )
    (Pipeline
      children: [
        (C {(shasum)} {(-a)} {(256)} {(julia-) ($ VSub_Name '$version') (Lit_Other '*')})
        (SimpleCommand
          words: [{(grep)} {(-v)} {(-e)} {(sha256)} {(-e)} {(md5)} {(-e)} {(asc)}]
          redirects: [
            (Redir
              op_id: Redir_Great
              fd: 16777215
              arg_word: {(julia-) ($ VSub_Name '$version') (.sha256)}
              spids: [525]
            )
          ]
        )
      ]
      negated: F
    )
    (Pipeline
      children: [
        (C {(md5sum)} {(julia-) ($ VSub_Name '$version') (Lit_Other '*')})
        (SimpleCommand
          words: [{(grep)} {(-v)} {(-e)} {(sha256)} {(-e)} {(md5)} {(-e)} {(asc)}]
          redirects: [
            (Redir
              op_id: Redir_Great
              fd: 16777215
              arg_word: {(julia-) ($ VSub_Name '$version') (.md5)}
              spids: [555]
            )
          ]
        )
      ]
      negated: F
    )
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} 
      {(julia-) ($ VSub_Name '$version') (-full.tar.gz)}
    )
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} {(julia-) ($ VSub_Name '$version') (.tar.gz)})
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} 
      {(julia-) ($ VSub_Name '$version') (-linux-x86_64.tar.gz)}
    )
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} 
      {(julia-) ($ VSub_Name '$version') (-linux-i686.tar.gz)}
    )
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} 
      {(julia-) ($ VSub_Name '$version') (-linux-arm.tar.gz)}
    )
    (C {(gpg)} {(-u)} {(julia)} {(--armor)} {(--detach-sig)} 
      {(julia-) ($ VSub_Name '$version') (-linux-ppc64le.tar.gz)}
    )
    (C {(aws)} {(configure)})
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} {(julia-) ($ VSub_Name '$version') (.sha256)} 
      {(s3) (Lit_Other ':') (//julialang/bin/checksums/)}
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} {(julia-) ($ VSub_Name '$version') (.md5)} 
      {(s3) (Lit_Other ':') (//julialang/bin/checksums/)}
    )
    (ForEach
      iter_name: plat
      iter_words: [{(x86_64)} {(i686)} {(arm)} {(ppc64le)}]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:platshort)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (Pipeline
                                children: [
                                  (C {(echo)} {($ VSub_Name '$plat')})
                                  (C {(sed)} {(-e)} {(SQ <s/x86_64/x64/>)} {(-e)} {(SQ <s/i686/x86/>)})
                                ]
                                negated: F
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [706 726]
                      )
                    }
                  spids: [705]
                )
              ]
              spids: [705]
            )
            (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
              {(julia-) ($ VSub_Name '$version') (-linux-) ($ VSub_Name '$plat') (.tar.gz)} 
              {(s3) (Lit_Other ':') (//julialang/bin/linux/) ($ VSub_Name '$platshort') (/) 
                ($ VSub_Name '$majmin') (/)
              }
            )
            (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
              {(julia-) ($ VSub_Name '$version') (-linux-) ($ VSub_Name '$plat') (.tar.gz.asc)} 
              {(s3) (Lit_Other ':') (//julialang/bin/linux/) ($ VSub_Name '$platshort') (/) 
                ($ VSub_Name '$majmin') (/)
              }
            )
            (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
              {(julia-) ($ VSub_Name '$majmin') (-latest-linux-) ($ VSub_Name '$plat') (.tar.gz)} 
              {(s3) (Lit_Other ':') (//julialang/bin/linux/) ($ VSub_Name '$platshort') (/) 
                ($ VSub_Name '$majmin') (/)
              }
            )
            (C {(curl)} {(-X)} {(PURGE)} {(-L)} 
              {
                (DQ ('https://julialang-s3.julialang.org/bin/linux/') ($ VSub_Name '$platshort') (/) 
                  ($ VSub_Name '$majmin') (/julia-) ($ VSub_Name '$majmin') (-latest-linux-) ($ VSub_Name '$plat') (.tar.gz)
                )
              }
            )
          ]
          spids: [702 830]
        )
      spids: [692 700]
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
      {(DQ (julia-) ($ VSub_Name '$version') ('-osx10.7 .dmg'))} {(s3) (Lit_Other ':') (//julialang/bin/osx/x64/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
      {(DQ (julia-) ($ VSub_Name '$majmin') ('-latest-osx10.7 .dmg'))} {(s3) (Lit_Other ':') (//julialang/bin/osx/x64/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(curl)} {(-X)} {(PURGE)} {(-L)} 
      {
        (DQ ('https://julialang-s3.julialang.org/bin/osx/x64/') ($ VSub_Name '$majmin') (/julia-) 
          ($ VSub_Name '$majmin') ('-latest-osx10.7 .dmg')
        )
      }
    )
    (C {(curl)} {(-X)} {(PURGE)} {(-L)} 
      {
        (DQ ('https://julialang-s3.julialang.org/bin/osx/x64/') ($ VSub_Name '$majmin') (/julia-) 
          ($ VSub_Name '$majmin') ('-latest-osx10.7+.dmg')
        )
      }
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} {(DQ (julia-) ($ VSub_Name '$version') (-win64.exe))} 
      {(s3) (Lit_Other ':') (//julialang/bin/winnt/x64/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
      {(DQ (julia-) ($ VSub_Name '$majmin') (-latest-win64.exe))} {(s3) (Lit_Other ':') (//julialang/bin/winnt/x64/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(curl)} {(-X)} {(PURGE)} {(-L)} 
      {
        (DQ ('https://julialang-s3.julialang.org/bin/winnt/x64/') ($ VSub_Name '$majmin') (/julia-) 
          ($ VSub_Name '$majmin') (-latest-win64.exe)
        )
      }
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} {(DQ (julia-) ($ VSub_Name '$version') (-win32.exe))} 
      {(s3) (Lit_Other ':') (//julialang/bin/winnt/x86/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(aws)} {(s3)} {(cp)} {(--acl)} {(public-read)} 
      {(DQ (julia-) ($ VSub_Name '$majmin') (-latest-win32.exe))} {(s3) (Lit_Other ':') (//julialang/bin/winnt/x86/) ($ VSub_Name '$majmin') (/)}
    )
    (C {(curl)} {(-X)} {(PURGE)} {(-L)} 
      {
        (DQ ('https://julialang-s3.julialang.org/bin/winnt/x86/') ($ VSub_Name '$majmin') (/julia-) 
          ($ VSub_Name '$majmin') (-latest-win32.exe)
        )
      }
    )
    (C {(echo)} {(DQ ('All files prepared. Attach julia-') ($ VSub_Name '$version') (.tar.gz))})
    (C {(echo)} {(DQ ('and julia-') ($ VSub_Name '$version') ('-full.tar.gz to github releases.'))})
  ]
)