(CommandList
  children: [
    (FuncDef
      name: git_rebase__am
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: {(DQ ($ VSub_Name '$action'))}
              arms: [
                (case_arm
                  pat_list: [{(ControlFlow_Continue continue)}]
                  action: [
                    (AndOr
                      children: [
                        (C {(git)} {(am)} {(--resolved)} 
                          {(--resolvemsg) (Lit_Other '=') (DQ ($ VSub_Name '$resolvemsg'))} 
                          {
                            (BracedVarSub
                              token: <VSub_Name gpg_sign_opt>
                              suffix_op: 
                                (StringUnary
                                  op_id: VTest_ColonPlus
                                  arg_word: {(DQ ($ VSub_Name '$gpg_sign_opt'))}
                                )
                              spids: [77 83]
                            )
                          }
                        )
                        (C {(move_to_original_branch)})
                      ]
                      op_id: Op_DAmp
                    )
                    (ControlFlow token:<ControlFlow_Return return>)
                  ]
                  spids: [59 60 94 -1]
                )
                (case_arm
                  pat_list: [{(skip)}]
                  action: [
                    (AndOr
                      children: [
                        (C {(git)} {(am)} {(--skip)} 
                          {(--resolvemsg) (Lit_Other '=') (DQ ($ VSub_Name '$resolvemsg'))}
                        )
                        (C {(move_to_original_branch)})
                      ]
                      op_id: Op_DAmp
                    )
                    (ControlFlow token:<ControlFlow_Return return>)
                  ]
                  spids: [96 97 121 -1]
                )
              ]
              spids: [51 57 123]
            )
            (If
              arms: [
                (if_arm
                  cond: [(C {(test)} {(-z)} {(DQ ($ VSub_Name '$rebase_root'))})]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:revisions)
                          op: Equal
                          rhs: {($ VSub_Name '$upstream') (...) ($ VSub_Name '$orig_head')}
                          spids: [143]
                        )
                      ]
                      spids: [143]
                    )
                  ]
                  spids: [-1 140]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:revisions)
                      op: Equal
                      rhs: {($ VSub_Name '$onto') (...) ($ VSub_Name '$orig_head')}
                      spids: [151]
                    )
                  ]
                  spids: [151]
                )
              ]
              spids: [148 156]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:ret) op:Equal rhs:{(0)} spids:[159])]
              spids: [159]
            )
            (If
              arms: [
                (if_arm
                  cond: [(C {(test)} {(-n)} {(DQ ($ VSub_Name '$keep_empty'))})]
                  action: [
                    (C {(git)} {(cherry-pick)} 
                      {
                        (BracedVarSub
                          token: <VSub_Name gpg_sign_opt>
                          suffix_op: 
                            (StringUnary
                              op_id: VTest_ColonPlus
                              arg_word: {(DQ ($ VSub_Name '$gpg_sign_opt'))}
                            )
                          spids: [195 201]
                        )
                      } {(--allow-empty)} {(--right-only)} {(DQ ($ VSub_Name '$revisions'))} 
                      {
                        (BracedVarSub
                          token: <VSub_Name restrict_revision>
                          suffix_op: 
                            (StringUnary
                              op_id: VTest_Plus
                              arg_word: {('^') ($ VSub_Name '$restrict_revision')}
                            )
                          spids: [215 220]
                        )
                      }
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:ret)
                          op: Equal
                          rhs: {($ VSub_QMark '$?')}
                          spids: [223]
                        )
                      ]
                      spids: [223]
                    )
                  ]
                  spids: [-1 172]
                )
              ]
              else_action: [
                (C {(rm)} {(-f)} {(DQ ($ VSub_Name '$GIT_DIR') (/rebased-patches))})
                (SimpleCommand
                  words: [
                    {(git)}
                    {(format-patch)}
                    {(-k)}
                    {(--stdout)}
                    {(--full-index)}
                    {(--cherry-pick)}
                    {(--right-only)}
                    {(--src-prefix) (Lit_Other '=') (a/)}
                    {(--dst-prefix) (Lit_Other '=') (b/)}
                    {(--no-renames)}
                    {(--no-cover-letter)}
                    {(DQ ($ VSub_Name '$revisions'))}
                    {
                      (BracedVarSub
                        token: <VSub_Name restrict_revision>
                        suffix_op: 
                          (StringUnary
                            op_id: VTest_Plus
                            arg_word: {('^') ($ VSub_Name '$restrict_revision')}
                          )
                        spids: [274 279]
                      )
                    }
                  ]
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: -1
                      arg_word: {(DQ ($ VSub_Name '$GIT_DIR') (/rebased-patches))}
                      spids: [283]
                    )
                  ]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:ret)
                      op: Equal
                      rhs: {($ VSub_QMark '$?')}
                      spids: [290]
                    )
                  ]
                  spids: [290]
                )
                (If
                  arms: [
                    (if_arm
                      cond: [(C {(test)} {(0)} {(KW_Bang '!') (Lit_Other '=')} {($ VSub_Name '$ret')})]
                      action: [
                        (C {(rm)} {(-f)} {(DQ ($ VSub_Name '$GIT_DIR') (/rebased-patches))})
                        (Case
                          to_match: {(DQ ($ VSub_Name '$head_name'))}
                          arms: [
                            (case_arm
                              pat_list: [{(refs/heads/) (Lit_Other '*')}]
                              action: [(C {(git)} {(checkout)} {(-q)} {(DQ ($ VSub_Name '$head_name'))})]
                              spids: [329 331 345 -1]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [(C {(git)} {(checkout)} {(-q)} {(DQ ($ VSub_Name '$orig_head'))})]
                              spids: [348 349 363 -1]
                            )
                          ]
                          spids: [320 326 366]
                        )
                        (SimpleCommand
                          words: [{(cat)}]
                          redirects: [
                            (Redir
                              op_id: Redir_GreatAnd
                              fd: -1
                              arg_word: {(2)}
                              spids: [372]
                            )
                            (HereDoc
                              op_id: Redir_DLessDash
                              fd: -1
                              body: 
                                {
                                  (DQ ('\n') 
                                    (
'git encountered an error while preparing the patches to replay\n'
                                    ) ('these revisions:\n') ('\n') ('    ') ($ VSub_Name '$revisions') ('\n') ('\n') 
                                    ('As a result, git cannot rebase them.\n')
                                  )
                                }
                              do_expansion: True
                              here_end: EOF
                              was_filled: True
                              spids: [375]
                            )
                          ]
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {($ VSub_Name '$ret')}
                        )
                      ]
                      spids: [-1 307]
                    )
                  ]
                  spids: [-1 393]
                )
                (SimpleCommand
                  words: [
                    {(git)}
                    {(am)}
                    {($ VSub_Name '$git_am_opt')}
                    {(--rebasing)}
                    {(--resolvemsg) (Lit_Other '=') (DQ ($ VSub_Name '$resolvemsg'))}
                    {
                      (BracedVarSub
                        token: <VSub_Name gpg_sign_opt>
                        suffix_op: 
                          (StringUnary
                            op_id: VTest_ColonPlus
                            arg_word: {(DQ ($ VSub_Name '$gpg_sign_opt'))}
                          )
                        spids: [413 419]
                      )
                    }
                  ]
                  redirects: [
                    (Redir
                      op_id: Redir_Less
                      fd: -1
                      arg_word: {(DQ ($ VSub_Name '$GIT_DIR') (/rebased-patches))}
                      spids: [421]
                    )
                  ]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:ret)
                      op: Equal
                      rhs: {($ VSub_QMark '$?')}
                      spids: [428]
                    )
                  ]
                  spids: [428]
                )
                (C {(rm)} {(-f)} {(DQ ($ VSub_Name '$GIT_DIR') (/rebased-patches))})
              ]
              spids: [226 442]
            )
            (If
              arms: [
                (if_arm
                  cond: [(C {(test)} {(0)} {(KW_Bang '!') (Lit_Other '=')} {($ VSub_Name '$ret')})]
                  action: [
                    (AndOr
                      children: [
                        (C {(test)} {(-d)} {(DQ ($ VSub_Name '$state_dir'))})
                        (C {(write_basic_state)})
                      ]
                      op_id: Op_DAmp
                    )
                    (ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {($ VSub_Name '$ret')}
                    )
                  ]
                  spids: [-1 456]
                )
              ]
              spids: [-1 476]
            )
            (C {(move_to_original_branch)})
          ]
          spids: [48]
        )
      spids: [43 47]
    )
    (C {(git_rebase__am)})
  ]
)