(command.CommandList
  children: [
    (C {<echo>} {(DQ <'# This file was autogenerated in base/version_git.sh'>)})
    (C {<echo>} {(DQ <'struct GitVersionInfo'>)})
    (C {<echo>} {(DQ <'    commit::AbstractString'>)})
    (C {<echo>} {(DQ <'    commit_short::AbstractString'>)})
    (C {<echo>} {(DQ <'    branch::AbstractString'>)})
    (C {<echo>} {(DQ <'    build_number::Int'>)})
    (C {<echo>} {(DQ <'    date_string::AbstractString'>)})
    (C {<echo>} {(DQ <'    tagged_commit::Bool'>)})
    (C {<echo>} {(DQ <'    fork_master_distance::Int'>)})
    (C {<echo>} {(DQ <'    fork_master_timestamp::Float64'>)})
    (C {<echo>} {(DQ <end>)})
    (C {<echo>} {(DQ )})
    (C {<cd>} {($ Id.VSub_Number '$1')})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_Pound '$#'))} {<Id.Lit_Equals '='>} {(DQ <2>)} 
                  {<-a>} {(DQ ($ Id.VSub_Number '$2'))} {<Id.Lit_Equals '='>} {(DQ <NO_GIT>)} {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (C {<echo>} {(DQ <'# Default output if git is not available.'>)})
            (C {<echo>} 
              {
                (DQ <'const GIT_VERSION_INFO = GitVersionInfo('> 
                  (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ,'> 
                  (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ,'> 
                  (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ,0 ,'> 
                  (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <' ,true ,0 ,0.)'>
                )
              }
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
          ]
          spids: [91 120]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:origin)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (command.Simple
                            words: [{<git>} {<config>} {<-l>}]
                            redirects: [
                              (redir.Redir
                                op: <Id.Redir_Great '2>'>
                                fd: 2
                                arg_word: {</dev/null>}
                              )
                            ]
                          )
                          (C {<grep>} {(SQ <'remote\\.\\w*\\.url.*JuliaLang/julia'>)})
                          (C {<sed>} {<-n>} {(SQ <'s/remote\\.\\([a-zA-Z]*\\)\\..*/\\1\\//p'>)})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
          spids: [162]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$origin'))} 
                  {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:origin)
                  op: assign_op.Equal
                  rhs: {(DQ <origin/>)}
                  spids: [208]
                )
              ]
            )
          ]
          spids: [192 205]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:git_time)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (C {<git>} {<log>} {<-1>} 
                        {<--pretty> <Id.Lit_Equals '='> <format> <Id.Lit_Other ':'> <Id.Lit_Other '%'> 
                          <ct>
                        }
                      )
                    ]
                  )
              )
            }
          spids: [215]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:commit)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: (command.CommandList children:[(C {<git>} {<rev-parse>} {<HEAD>})])
              )
            }
          spids: [235]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:commit_short)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [(C {<git>} {<rev-parse>} {<--short>} {<HEAD>})]
                  )
              )
            }
          spids: [244]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {<-n>} 
                  {
                    (DQ 
                      (command_sub
                        left_token: <Id.Left_DollarParen '$('>
                        command_list: 
                          (command.CommandList
                            children: [(C {<git>} {<status>} {<--porcelain>})]
                          )
                      )
                    )
                  } {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:commit_short)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$commit_short')) <Id.Lit_Star '*'>}
                  spids: [281]
                )
              ]
            )
          ]
          spids: [255 274]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:branch)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [(C {<git>} {<branch>}) (C {<sed>} {<-n>} {(SQ <'/\\* /s///p'>)})]
                        negated: F
                      )
                    ]
                  )
              )
            }
          spids: [289]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:topdir)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [(C {<git>} {<rev-parse>} {<--show-toplevel>})]
                  )
              )
            }
          spids: [307]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:verchanged)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {<git>} {<blame>} {<-L>} {<Id.Lit_Comma ','> <1>} {<-sl>} {<-->} 
                            {(DQ ($ Id.VSub_DollarName '$topdir') </VERSION>)}
                          )
                          (C {<cut>} {<-f>} {<1>} {<-d>} {(DQ <' '>)})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
          spids: [316]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {($ Id.VSub_DollarName '$verchanged')} {<Id.Lit_Equals '='>} 
                  {<0000000000000000000000000000000000000000>} {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:build_number)
                  op: assign_op.Equal
                  rhs: {<0>}
                  spids: [371]
                )
              ]
            )
          ]
          spids: [351 364]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:build_number)
              op: assign_op.Equal
              rhs: 
                {
                  (command_sub
                    left_token: <Id.Left_DollarParen '$('>
                    command_list: 
                      (command.CommandList
                        children: [
                          (C {<git>} {<rev-list>} {<--count>} {<HEAD>} 
                            {(DQ <'^'> ($ Id.VSub_DollarName '$verchanged'))}
                          )
                        ]
                      )
                  )
                }
              spids: [377]
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:date_string)
          op: assign_op.Equal
          rhs: {($ Id.VSub_DollarName '$git_time')}
          spids: [396]
        )
      ]
    )
    (command.Case
      to_match: 
        {
          (command_sub
            left_token: <Id.Left_DollarParen '$('>
            command_list: (command.CommandList children:[(C {<uname>})])
          )
        }
      arms: [
        (case_arm
          pat_list: [{<Darwin>} {<FreeBSD>}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:date_string)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Id.Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {</bin/date>} {<-jr>} {($ Id.VSub_DollarName '$git_time')} {<-u>} 
                                  {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                  spids: [416]
                )
              ]
            )
          ]
          spids: [408 413 434 -1]
        )
        (case_arm
          pat_list: [{<MINGW> <Id.Lit_Star '*'>}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:git_time)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_DollarParen '$('>
                        command_list: 
                          (command.CommandList
                            children: [
                              (C {<git>} {<log>} {<-1>} 
                                {<--pretty> <Id.Lit_Equals '='> <format> <Id.Lit_Other ':'> 
                                  <Id.Lit_Other '%'> <ci>
                                }
                              )
                            ]
                          )
                      )
                    }
                  spids: [442]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:date_string)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Id.Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {</bin/date>} 
                                  {<--date> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$git_time'))} {<-u>} {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                  spids: [459]
                )
              ]
            )
          ]
          spids: [437 439 479 -1]
        )
        (case_arm
          pat_list: [{<Id.Lit_Star '*'>}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:date_string)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Id.Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {</bin/date>} 
                                  {<--date> <Id.Lit_Equals '='> 
                                    (DQ <'@'> ($ Id.VSub_DollarName '$git_time'))
                                  } {<-u>} {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                  spids: [486]
                )
              ]
            )
          ]
          spids: [482 483 507 -1]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} 
                  {
                    (command_sub
                      left_token: <Id.Left_DollarParen '$('>
                      command_list: 
                        (command.CommandList
                          children: [
                            (command.Simple
                              words: [{<git>} {<describe>} {<--tags>} {<--exact-match>}]
                              redirects: [
                                (redir.Redir
                                  op: <Id.Redir_Great '2>'>
                                  fd: 2
                                  arg_word: {</dev/null>}
                                )
                              ]
                            )
                          ]
                        )
                    )
                  } {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:tagged_commit)
                  op: assign_op.Equal
                  rhs: {(DQ <true>)}
                  spids: [535]
                )
              ]
            )
          ]
          spids: [511 532]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:tagged_commit)
              op: assign_op.Equal
              rhs: {(DQ <false>)}
              spids: [543]
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:fork_master_distance)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {<git>} {<rev-list>} {<HEAD>} 
                            {<Id.Lit_Other '^'> 
                              (DQ 
                                (command_sub
                                  left_token: <Id.Left_DollarParen '$('>
                                  command_list: 
                                    (command.CommandList
                                      children: [(C {<echo>} {($ Id.VSub_DollarName '$origin')})]
                                    )
                                ) <master>
                              )
                            }
                          )
                          (C {<wc>} {<-l>})
                          (C {<sed>} {<-e>} {(SQ <'s/[^[:digit:]]//g'>)})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
          spids: [550]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:fork_master_timestamp)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (C {<git>} {<show>} {<-s>} 
                        {
                          (command_sub
                            left_token: <Id.Left_DollarParen '$('>
                            command_list: 
                              (command.CommandList
                                children: [
                                  (C {<git>} {<merge-base>} {<HEAD>} 
                                    {
                                      (command_sub
                                        left_token: <Id.Left_DollarParen '$('>
                                        command_list: 
                                          (command.CommandList
                                            children: [(C {<echo>} {($ Id.VSub_DollarName '$origin')})]
                                          )
                                      ) <master>
                                    }
                                  )
                                ]
                              )
                          )
                        } {<--format> <Id.Lit_Equals '='> <format> <Id.Lit_Other ':'> (DQ <'%ct'>)}
                      )
                    ]
                  )
              )
            }
          spids: [585]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$build_number'))} 
                  {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:build_number)
                  op: assign_op.Equal
                  rhs: {(DQ <-1>)}
                  spids: [637]
                )
              ]
            )
          ]
          spids: [621 634]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$fork_master_distance'))} 
                  {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:fork_master_distance)
                  op: assign_op.Equal
                  rhs: {(DQ <-1>)}
                  spids: [660]
                )
              ]
            )
          ]
          spids: [644 657]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$fork_master_timestamp'))} 
                  {<Id.Lit_RBracket ']'>}
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:fork_master_timestamp)
                  op: assign_op.Equal
                  rhs: {(DQ <0>)}
                  spids: [683]
                )
              ]
            )
          ]
          spids: [667 680]
        )
      ]
    )
    (C {<echo>} {(DQ <'const GIT_VERSION_INFO = GitVersionInfo('>)})
    (C {<echo>} 
      {
        (DQ <'    '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
          ($ Id.VSub_DollarName '$commit') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <','>
        )
      }
    )
    (C {<echo>} 
      {
        (DQ <'    '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
          ($ Id.VSub_DollarName '$commit_short') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <','>
        )
      }
    )
    (C {<echo>} 
      {
        (DQ <'    '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
          ($ Id.VSub_DollarName '$branch') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <','>
        )
      }
    )
    (C {<echo>} {(DQ <'    '> ($ Id.VSub_DollarName '$build_number') <','>)})
    (C {<echo>} 
      {
        (DQ <'    '> (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) 
          ($ Id.VSub_DollarName '$date_string') (word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\"'>) <','>
        )
      }
    )
    (C {<echo>} {(DQ <'    '> ($ Id.VSub_DollarName '$tagged_commit') <','>)})
    (C {<echo>} {(DQ <'    '> ($ Id.VSub_DollarName '$fork_master_distance') <','>)})
    (C {<echo>} {(DQ <'    '> ($ Id.VSub_DollarName '$fork_master_timestamp') <.>)})
    (C {<echo>} {(DQ <')'>)})
  ]
)