(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)} {($ VSub_Number '$1')})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(DQ ($ VSub_Pound '$#'))} {(Lit_Equals '=')} {(DQ (2))} {(-a)} 
                  {(DQ ($ VSub_Number '$2'))} {(Lit_Equals '=')} {(DQ (NO_GIT))} {(Lit_RBracket ']')}
                )
              terminator: <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:<Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (' ,') 
                  (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (' ,') 
                  (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (' ,0 ,') 
                  (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (' ,true ,0 ,0.)')
                )
              }
            )
            (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:origin)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (command.Simple
                            words: [{(git)} {(config)} {(-l)}]
                            redirects: [(redir.Redir op:<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
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(-z)} {(DQ ($ VSub_DollarName '$origin'))} {(Lit_RBracket ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:origin) op:Equal rhs:{(DQ (origin/))})]
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:git_time)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (C {(git)} {(log)} {(-1)} 
                        {(--pretty) (Lit_Equals '=') (format) (Lit_Other ':') (Lit_Other '%') (ct)}
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:commit)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: (command.CommandList children:[(C {(git)} {(rev-parse)} {(HEAD)})])
              )
            }
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:commit_short)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [(C {(git)} {(rev-parse)} {(--short)} {(HEAD)})]
                  )
              )
            }
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(-n)} 
                  {
                    (DQ 
                      (command_sub
                        left_token: <Left_DollarParen '$('>
                        command_list: 
                          (command.CommandList
                            children: [(C {(git)} {(status)} {(--porcelain)})]
                          )
                      )
                    )
                  } {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:commit_short)
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$commit_short')) (Lit_Star '*')}
                )
              ]
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:branch)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [(C {(git)} {(branch)}) (C {(sed)} {(-n)} {(SQ <'/\\* /s///p'>)})]
                        negated: F
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:topdir)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [(C {(git)} {(rev-parse)} {(--show-toplevel)})]
                  )
              )
            }
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:verchanged)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {(git)} {(blame)} {(-L)} {(Lit_Comma ',') (1)} {(-sl)} {(--)} 
                            {(DQ ($ VSub_DollarName '$topdir') (/VERSION))}
                          )
                          (C {(cut)} {(-f)} {(1)} {(-d)} {(DQ (' '))})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {($ VSub_DollarName '$verchanged')} {(Lit_Equals '=')} 
                  {(0000000000000000000000000000000000000000)} {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:build_number) op:Equal rhs:{(0)})]
            )
          ]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:build_number)
              op: Equal
              rhs: 
                {
                  (command_sub
                    left_token: <Left_DollarParen '$('>
                    command_list: 
                      (command.CommandList
                        children: [
                          (C {(git)} {(rev-list)} {(--count)} {(HEAD)} 
                            {(DQ ('^') ($ VSub_DollarName '$verchanged'))}
                          )
                        ]
                      )
                  )
                }
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:date_string)
          op: Equal
          rhs: {($ VSub_DollarName '$git_time')}
        )
      ]
    )
    (command.Case
      to_match: 
        {
          (command_sub
            left_token: <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: Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {(/bin/date)} {(-jr)} {($ VSub_DollarName '$git_time')} {(-u)} 
                                  {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                )
              ]
            )
          ]
        )
        (case_arm
          pat_list: [{(MINGW) (Lit_Star '*')}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:git_time)
                  op: Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Left_DollarParen '$('>
                        command_list: 
                          (command.CommandList
                            children: [
                              (C {(git)} {(log)} {(-1)} 
                                {(--pretty) (Lit_Equals '=') (format) (Lit_Other ':') (Lit_Other '%') 
                                  (ci)
                                }
                              )
                            ]
                          )
                      )
                    }
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:date_string)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {(/bin/date)} 
                                  {(--date) (Lit_Equals '=') (DQ ($ VSub_DollarName '$git_time'))} {(-u)} {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                )
              ]
            )
          ]
        )
        (case_arm
          pat_list: [{(Lit_Star '*')}]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:date_string)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (command_sub
                          left_token: <Left_DollarParen '$('>
                          command_list: 
                            (command.CommandList
                              children: [
                                (C {(/bin/date)} 
                                  {(--date) (Lit_Equals '=') (DQ ('@') ($ VSub_DollarName '$git_time'))} {(-u)} {(SQ <'+%Y-%m-%d %H:%M %Z'>)}
                                )
                              ]
                            )
                        )
                      )
                    }
                )
              ]
            )
          ]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} 
                  {
                    (command_sub
                      left_token: <Left_DollarParen '$('>
                      command_list: 
                        (command.CommandList
                          children: [
                            (command.Simple
                              words: [{(git)} {(describe)} {(--tags)} {(--exact-match)}]
                              redirects: [
                                (redir.Redir
                                  op: <Redir_Great '2>'>
                                  fd: 2
                                  arg_word: {(/dev/null)}
                                )
                              ]
                            )
                          ]
                        )
                    )
                  } {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:tagged_commit) op:Equal rhs:{(DQ (true))})]
            )
          ]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:tagged_commit) op:Equal rhs:{(DQ (false))})]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:fork_master_distance)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (command.Pipeline
                        children: [
                          (C {(git)} {(rev-list)} {(HEAD)} 
                            {(Lit_Other '^') 
                              (DQ 
                                (command_sub
                                  left_token: <Left_DollarParen '$('>
                                  command_list: 
                                    (command.CommandList
                                      children: [(C {(echo)} {($ VSub_DollarName '$origin')})]
                                    )
                                ) (master)
                              )
                            }
                          )
                          (C {(wc)} {(-l)})
                          (C {(sed)} {(-e)} {(SQ <'s/[^[:digit:]]//g'>)})
                        ]
                        negated: F
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:fork_master_timestamp)
          op: Equal
          rhs: 
            {
              (command_sub
                left_token: <Left_DollarParen '$('>
                command_list: 
                  (command.CommandList
                    children: [
                      (C {(git)} {(show)} {(-s)} 
                        {
                          (command_sub
                            left_token: <Left_DollarParen '$('>
                            command_list: 
                              (command.CommandList
                                children: [
                                  (C {(git)} {(merge-base)} {(HEAD)} 
                                    {
                                      (command_sub
                                        left_token: <Left_DollarParen '$('>
                                        command_list: 
                                          (command.CommandList
                                            children: [(C {(echo)} {($ VSub_DollarName '$origin')})]
                                          )
                                      ) (master)
                                    }
                                  )
                                ]
                              )
                          )
                        } {(--format) (Lit_Equals '=') (format) (Lit_Other ':') (DQ ('%ct'))}
                      )
                    ]
                  )
              )
            }
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(-z)} {(DQ ($ VSub_DollarName '$build_number'))} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:build_number) op:Equal rhs:{(DQ (-1))})]
            )
          ]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(-z)} {(DQ ($ VSub_DollarName '$fork_master_distance'))} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:fork_master_distance)
                  op: Equal
                  rhs: {(DQ (-1))}
                )
              ]
            )
          ]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Lit_LBracket '[')} {(-z)} {(DQ ($ VSub_DollarName '$fork_master_timestamp'))} 
                  {(Lit_RBracket ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:fork_master_timestamp)
                  op: Equal
                  rhs: {(DQ (0))}
                )
              ]
            )
          ]
        )
      ]
    )
    (C {(echo)} {(DQ ('const GIT_VERSION_INFO = GitVersionInfo('))})
    (C {(echo)} 
      {
        (DQ ('    ') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) 
          ($ VSub_DollarName '$commit') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (',')
        )
      }
    )
    (C {(echo)} 
      {
        (DQ ('    ') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) 
          ($ VSub_DollarName '$commit_short') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (',')
        )
      }
    )
    (C {(echo)} 
      {
        (DQ ('    ') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) 
          ($ VSub_DollarName '$branch') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (',')
        )
      }
    )
    (C {(echo)} {(DQ ('    ') ($ VSub_DollarName '$build_number') (','))})
    (C {(echo)} 
      {
        (DQ ('    ') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) 
          ($ VSub_DollarName '$date_string') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\"'>) (',')
        )
      }
    )
    (C {(echo)} {(DQ ('    ') ($ VSub_DollarName '$tagged_commit') (','))})
    (C {(echo)} {(DQ ('    ') ($ VSub_DollarName '$fork_master_distance') (','))})
    (C {(echo)} {(DQ ('    ') ($ VSub_DollarName '$fork_master_timestamp') (.))})
    (C {(echo)} {(DQ (')'))})
  ]
)