(command.CommandList
  children: [
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:TEXTDOMAIN spids:[27])
          op: Equal
          rhs: {(git)}
          spids: [27]
        )
      ]
      spids: [27]
    )
    (C {(export)} {(TEXTDOMAIN)})
    (command.If
      arms: [
        (if_arm
          cond: [(C {(test)} {(-z)} {(DQ ($ VSub_Name '$GIT_TEXTDOMAINDIR'))})]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:TEXTDOMAINDIR spids:[47])
                  op: Equal
                  rhs: {(DQ ('@@LOCALEDIR@@'))}
                  spids: [47]
                )
              ]
              spids: [47]
            )
          ]
          spids: [16777215 44]
        )
      ]
      else_action: [
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:TEXTDOMAINDIR spids:[55])
              op: Equal
              rhs: {(DQ ($ VSub_Name '$GIT_TEXTDOMAINDIR'))}
              spids: [55]
            )
          ]
          spids: [55]
        )
      ]
      spids: [52 60]
    )
    (C {(export)} {(TEXTDOMAINDIR)})
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:GIT_INTERNAL_GETTEXT_SH_SCHEME spids:[70])
          op: Equal
          rhs: {(fallthrough)}
          spids: [70]
        )
      ]
      spids: [70]
    )
    (command.If
      arms: [
        (if_arm
          cond: [(C {(test)} {(-n)} {(DQ ('@@USE_GETTEXT_SCHEME@@'))})]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:GIT_INTERNAL_GETTEXT_SH_SCHEME spids:[86])
                  op: Equal
                  rhs: {(DQ ('@@USE_GETTEXT_SCHEME@@'))}
                  spids: [86]
                )
              ]
              spids: [86]
            )
          ]
          spids: [16777215 83]
        )
        (if_arm
          cond: [(C {(test)} {(-n)} {(DQ ($ VSub_Name '$GIT_INTERNAL_GETTEXT_TEST_FALLBACKS'))})]
          action: [(C {(Lit_Other ':')} {(no)} {(probing)} {(necessary)})]
          spids: [91 101]
        )
        (if_arm
          cond: [(C {(test)} {(-n)} {(DQ ($ VSub_Name '$GIT_GETTEXT_POISON'))})]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:GIT_INTERNAL_GETTEXT_SH_SCHEME spids:[125])
                  op: Equal
                  rhs: {(poison)}
                  spids: [125]
                )
              ]
              spids: [125]
            )
          ]
          spids: [112 122]
        )
        (if_arm
          cond: [
            (command.SimpleCommand
              words: [{(type)} {(gettext.sh)}]
              redirects: [
                (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})
                (redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})
              ]
            )
          ]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:GIT_INTERNAL_GETTEXT_SH_SCHEME spids:[147])
                  op: Equal
                  rhs: {(gnu)}
                  spids: [147]
                )
              ]
              spids: [147]
            )
          ]
          spids: [128 140]
        )
        (if_arm
          cond: [
            (C {(test)} 
              {
                (DQ 
                  (word_part.CommandSubPart
                    command_list: 
                      (command.CommandList
                        children: [
                          (command.SimpleCommand
                            words: [{(gettext)} {(-h)}]
                            redirects: [(redir.Redir op:<Redir_GreatAnd '2>&'> fd:2 arg_word:{(1)})]
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [155 162]
                  )
                )
              } {(Lit_Other '=')} {(DQ (-h))}
            )
          ]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:GIT_INTERNAL_GETTEXT_SH_SCHEME spids:[186])
                  op: Equal
                  rhs: {(gettext_without_eval_gettext)}
                  spids: [186]
                )
              ]
              spids: [186]
            )
          ]
          spids: [150 171]
        )
      ]
      spids: [16777215 189]
    )
    (C {(export)} {(GIT_INTERNAL_GETTEXT_SH_SCHEME)})
    (command.Case
      to_match: {(DQ ($ VSub_Name '$GIT_INTERNAL_GETTEXT_SH_SCHEME'))}
      arms: [
        (case_arm
          pat_list: [{(gnu)}]
          action: [(C {(.)} {(gettext.sh)})]
          spids: [207 208 220 16777215]
        )
        (case_arm
          pat_list: [{(gettext_without_eval_gettext)}]
          action: [
            (command.FuncDef
              name: eval_gettext
              body: 
                (command.BraceGroup
                  children: [
                    (command.Pipeline
                      children: [
                        (C {(gettext)} {(DQ ($ VSub_Number '$1'))})
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.Sentence
                                  child: 
                                    (C {(export)} {(PATH)} 
                                      {
                                        (word_part.CommandSubPart
                                          command_list: 
                                            (command.CommandList
                                              children: [
                                                (C {(git)} {(sh-i18n--envsubst)} {(--variables)} 
                                                  {(DQ ($ VSub_Number '$1'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [253 263]
                                        )
                                      }
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                                (C {(git)} {(sh-i18n--envsubst)} {(DQ ($ VSub_Number '$1'))})
                              ]
                            )
                          spids: [246 276]
                        )
                      ]
                      negated: F
                    )
                  ]
                  spids: [235]
                )
              spids: [230 234]
            )
            (command.FuncDef
              name: eval_ngettext
              body: 
                (command.BraceGroup
                  children: [
                    (command.Pipeline
                      children: [
                        (C {(ngettext)} {(DQ ($ VSub_Number '$1'))} {(DQ ($ VSub_Number '$2'))} 
                          {(DQ ($ VSub_Number '$3'))}
                        )
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.Sentence
                                  child: 
                                    (C {(export)} {(PATH)} 
                                      {
                                        (word_part.CommandSubPart
                                          command_list: 
                                            (command.CommandList
                                              children: [
                                                (C {(git)} {(sh-i18n--envsubst)} {(--variables)} 
                                                  {(DQ ($ VSub_Number '$2'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [314 324]
                                        )
                                      }
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                                (C {(git)} {(sh-i18n--envsubst)} {(DQ ($ VSub_Number '$2'))})
                              ]
                            )
                          spids: [307 337]
                        )
                      ]
                      negated: F
                    )
                  ]
                  spids: [288]
                )
              spids: [283 287]
            )
          ]
          spids: [222 223 343 16777215]
        )
        (case_arm
          pat_list: [{(poison)}]
          action: [
            (command.FuncDef
              name: gettext
              body: 
                (command.BraceGroup
                  children: [(C {(printf)} {(DQ ('%s'))} {(DQ ('# GETTEXT POISON #'))})]
                  spids: [362]
                )
              spids: [357 361]
            )
            (command.FuncDef
              name: eval_gettext
              body: 
                (command.BraceGroup
                  children: [(C {(printf)} {(DQ ('%s'))} {(DQ ('# GETTEXT POISON #'))})]
                  spids: [385]
                )
              spids: [380 384]
            )
            (command.FuncDef
              name: eval_ngettext
              body: 
                (command.BraceGroup
                  children: [(C {(printf)} {(DQ ('%s'))} {(DQ ('# GETTEXT POISON #'))})]
                  spids: [408]
                )
              spids: [403 407]
            )
          ]
          spids: [345 346 425 16777215]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (command.FuncDef
              name: gettext
              body: 
                (command.BraceGroup
                  children: [(C {(printf)} {(DQ ('%s'))} {(DQ ($ VSub_Number '$1'))})]
                  spids: [436]
                )
              spids: [431 435]
            )
            (command.FuncDef
              name: eval_gettext
              body: 
                (command.BraceGroup
                  children: [
                    (command.Pipeline
                      children: [
                        (C {(printf)} {(DQ ('%s'))} {(DQ ($ VSub_Number '$1'))})
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.Sentence
                                  child: 
                                    (C {(export)} {(PATH)} 
                                      {
                                        (word_part.CommandSubPart
                                          command_list: 
                                            (command.CommandList
                                              children: [
                                                (C {(git)} {(sh-i18n--envsubst)} {(--variables)} 
                                                  {(DQ ($ VSub_Number '$1'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [481 491]
                                        )
                                      }
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                                (C {(git)} {(sh-i18n--envsubst)} {(DQ ($ VSub_Number '$1'))})
                              ]
                            )
                          spids: [474 504]
                        )
                      ]
                      negated: F
                    )
                  ]
                  spids: [459]
                )
              spids: [454 458]
            )
            (command.FuncDef
              name: eval_ngettext
              body: 
                (command.BraceGroup
                  children: [
                    (command.Pipeline
                      children: [
                        (command.Subshell
                          child: 
                            (command.AndOr
                              ops: [Op_DAmp Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Number '$3'))} {(Lit_Other '=')} {(1)})
                                (C {(printf)} {(DQ ('%s'))} {(DQ ($ VSub_Number '$1'))})
                                (C {(printf)} {(DQ ('%s'))} {(DQ ($ VSub_Number '$2'))})
                              ]
                            )
                          spids: [519 553]
                        )
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.Sentence
                                  child: 
                                    (C {(export)} {(PATH)} 
                                      {
                                        (word_part.CommandSubPart
                                          command_list: 
                                            (command.CommandList
                                              children: [
                                                (C {(git)} {(sh-i18n--envsubst)} {(--variables)} 
                                                  {(DQ ($ VSub_Number '$2'))}
                                                )
                                              ]
                                            )
                                          left_token: <Left_CommandSub '$('>
                                          spids: [564 574]
                                        )
                                      }
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                                (C {(git)} {(sh-i18n--envsubst)} {(DQ ($ VSub_Number '$2'))})
                              ]
                            )
                          spids: [557 587]
                        )
                      ]
                      negated: F
                    )
                  ]
                  spids: [516]
                )
              spids: [511 515]
            )
          ]
          spids: [427 428 593 16777215]
        )
      ]
      spids: [199 205 595]
    )
    (command.FuncDef
      name: gettextln
      body: 
        (command.BraceGroup
          children: [(C {(gettext)} {(DQ ($ VSub_Number '$1'))}) (C {(echo)})]
          spids: [606]
        )
      spids: [601 605]
    )
    (command.FuncDef
      name: eval_gettextln
      body: 
        (command.BraceGroup
          children: [(C {(eval_gettext)} {(DQ ($ VSub_Number '$1'))}) (C {(echo)})]
          spids: [626]
        )
      spids: [621 625]
    )
  ]
)