(CommandList
  children: [
    (C {(set)} {(-eu)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:release_name) op:Equal rhs:{(SQ )} spids:[59])]
      spids: [59]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:git_hash) op:Equal rhs:{(SQ )} spids:[61])]
      spids: [61]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:url) op:Equal rhs:{(SQ )} spids:[63])]
      spids: [63]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:built_by) op:Equal rhs:{(SQ )} spids:[65])]
      spids: [65]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:build_log) op:Equal rhs:{(SQ )} spids:[67])]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:commit_msg) op:Equal rhs:{(SQ )} spids:[69])]
      spids: [69]
    )
    (ForEach
      iter_name: i
      iter_words: [{(DQ (${ VSub_At "@"))}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (While
              cond: [(Sentence child:(C {(read)} {(line)}) terminator:<Op_Semi ";">)]
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:key)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (Pipeline
                                        children: [
                                          (C {(echo)} {(DQ ($ VSub_Name "$line"))})
                                          (C {(cut)} {(-d)} {(DQ (" "))} {(-f)} {(1)})
                                        ]
                                        negated: False
                                      )
                                    ]
                                  )
                                left_token: <Left_CommandSub "$(">
                                spids: [99 119]
                              )
                            }
                          spids: [98]
                        )
                      ]
                      spids: [98]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:value)
                          op: Equal
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (Pipeline
                                          children: [
                                            (C {(echo)} {(DQ ($ VSub_Name "$line"))})
                                            (C {(cut)} {(-d)} {(DQ (" "))} {(-f)} {(2-)})
                                            (C {(tr)} {(SQ <"\\f">)} {(SQ <"\\n">)})
                                          ]
                                          negated: False
                                        )
                                      ]
                                    )
                                  left_token: <Left_CommandSub "$(">
                                  spids: [124 156]
                                )
                              )
                            }
                          spids: [122]
                        )
                      ]
                      spids: [122]
                    )
                    (Case
                      to_match: {($ VSub_Name "$key")}
                      arms: [
                        (case_arm
                          pat_list: [{(RELEASE_NAME)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:release_name)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [171]
                                )
                              ]
                              spids: [171]
                            )
                          ]
                          spids: [167 168 177 -1]
                        )
                        (case_arm
                          pat_list: [{(RELEASE_GIT_HASH)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:git_hash)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [184]
                                )
                              ]
                              spids: [184]
                            )
                          ]
                          spids: [180 181 190 -1]
                        )
                        (case_arm
                          pat_list: [{(RELEASE_BUILT_BY)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:built_by)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [197]
                                )
                              ]
                              spids: [197]
                            )
                          ]
                          spids: [193 194 203 -1]
                        )
                        (case_arm
                          pat_list: [{(RELEASE_BUILD_LOG)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:build_log)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [210]
                                )
                              ]
                              spids: [210]
                            )
                          ]
                          spids: [206 207 216 -1]
                        )
                        (case_arm
                          pat_list: [{(RELEASE_COMMIT_MSG)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:commit_msg)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [223]
                                )
                              ]
                              spids: [223]
                            )
                          ]
                          spids: [219 220 229 -1]
                        )
                        (case_arm
                          pat_list: [{(RELEASE_COMMIT_URL)}]
                          action: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:commit_url)
                                  op: Equal
                                  rhs: {(DQ ($ VSub_Name "$value"))}
                                  spids: [236]
                                )
                              ]
                              spids: [236]
                            )
                          ]
                          spids: [232 233 242 -1]
                        )
                      ]
                      spids: [160 164 245]
                    )
                  ]
                  spids: [95 248]
                )
              redirects: [
                (Redir
                  op_id: Redir_TLess
                  fd: -1
                  arg_word: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: (CommandList children:[(C {(cat)} {($ VSub_Name "$i")})])
                          left_token: <Left_CommandSub "$(">
                          spids: [252 256]
                        )
                      )
                    }
                  spids: [250]
                )
              ]
            )
          ]
          spids: [85 259]
        )
      spids: [77 83]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: 
            {
              (DQ 
                (BracedVarSub
                  token: <VSub_Name url>
                  suffix_op: 
                    (StringUnary
                      op_id: VTest_ColonHyphen
                      arg_word: 
                        {("https:") (Lit_Slash /) (Lit_Slash /) (github.com) (Lit_Slash /) (bazelbuild) 
                          (Lit_Slash /) (bazel) (Lit_Slash /) (commit) (Lit_Slash /) (${ VSub_Name git_hash)
                        }
                    )
                  spids: [264 281]
                )
              )
            }
          spids: [262]
        )
      ]
      spids: [262]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other "[")} {(-z)} {(DQ (${ VSub_Name release_name))} {(Lit_Other "]")})
              terminator: <Op_Semi ";">
            )
          ]
          action: [(C {(echo)} {(DQ ("# Binary package at HEAD (@") ($ VSub_Name "$git_hash") (")"))})]
          spids: [-1 300]
        )
      ]
      else_action: [
        (C {(echo)} {(DQ ("# ") ($ VSub_Name "$commit_msg"))})
        (C {(echo)})
        (C {(echo)} {(DQ ("## Build informations"))})
      ]
      spids: [315 342]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other "[")} {(-n)} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name built_by>
                        suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )})
                        spids: [351 354]
                      )
                    )
                  } {(Lit_Other "]")}
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other "[")} {(-n)} {(DQ (${ VSub_Name build_log))} {(Lit_Other "]")})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(echo)} 
                      {
                        (DQ ("   - [Built by ") (${ VSub_Name built_by) ("](") (${ VSub_Name build_log) 
                          (")")
                        )
                      }
                    )
                  ]
                  spids: [-1 378]
                )
              ]
              else_action: [(C {(echo)} {(DQ ("   - Built by ") (${ VSub_Name built_by))})]
              spids: [396 409]
            )
          ]
          spids: [-1 360]
        )
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other "[")} {(-n)} 
                  {
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name build_log>
                        suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{(SQ )})
                        spids: [418 421]
                      )
                    )
                  } {(Lit_Other "]")}
                )
              terminator: <Op_Semi ";">
            )
          ]
          action: [(C {(echo)} {(DQ ("   - [Build log](") (${ VSub_Name build_log) (")"))})]
          spids: [411 427]
        )
      ]
      spids: [-1 440]
    )
    (C {(echo)} {(DQ ("   - [Commit](") (${ VSub_Name url) (")"))})
  ]
)