(command.CommandList
  children: [
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.AndOr
                  ops: [Id.Op_DPipe]
                  children: [
                    (C {(test)} {($ Id.VSub_Pound '$#')} {(Id.KW_Bang '!') (Id.Lit_Equals '=')} {(1)})
                    (C {(test)} 
                      {
                        (DQ 
                          (braced_var_sub
                            token: (Token id:Id.VSub_Number val:1 span_id:47)
                            suffix_op: 
                              (suffix_op.PatSub
                                pat: 
                                  {
                                    (word_part.EscapedLiteral
                                      token: (Token id:Id.Lit_EscapedChar val:'\\/' span_id:49)
                                    )
                                  }
                                replace: (word.Empty)
                                replace_mode: Id.Undefined_Tok
                              )
                          )
                        )
                      } {(Id.KW_Bang '!') (Id.Lit_Equals '=')} {(DQ ($ Id.VSub_Number '$1'))}
                    )
                  ]
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:60)
            )
          ]
          action: [
            (command.Simple
              words: [
                {(echo)}
                {
                  (DQ ('Usage: ') ($ Id.VSub_Number '$0') 
                    (': {python2.7-static|stackless2.7-static|stacklessco2.7-static}')
                  )
                }
              ]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:73)
                  fd: -1
                  arg_word: {(2)}
                )
              ]
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:77)
              arg_word: {(1)}
            )
          ]
          spids: [30 62]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(test)} 
                  {
                    (DQ 
                      (command_sub
                        left_token: (Token id:Id.Left_Backtick val:'`' span_id:88)
                        command_list: (command.CommandList children:[(C {(uname)})])
                      )
                    )
                  } {(Id.Lit_Equals '=')} {(Darwin)}
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:98)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:URL)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ 
                        (
'https://raw.githubusercontent.com/pts/staticpython/master/release.darwin/'
                        ) ($ Id.VSub_Number '$1')
                      )
                    }
                  spids: [103]
                )
              ]
            )
          ]
          spids: [83 100]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:URL)
              op: assign_op.Equal
              rhs: 
                {
                  (DQ ('https://raw.githubusercontent.com/pts/staticpython/master/release/') 
                    ($ Id.VSub_Number '$1')
                  )
                }
              spids: [112]
            )
          ]
        )
      ]
    )
    (C {(echo)} {(DQ ('info: downloading: ') ($ Id.VSub_DollarName '$URL'))})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.Simple
                  words: [{(type)} {(-p)} {(curl)}]
                  redirects: [
                    (redir.Redir
                      op: (Token id:Id.Redir_Great val:'>' span_id:135)
                      fd: -1
                      arg_word: {(/dev/null)}
                    )
                    (redir.Redir
                      op: (Token id:Id.Redir_GreatAnd val:'2>&' span_id:138)
                      fd: 2
                      arg_word: {(1)}
                    )
                  ]
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:140)
            )
          ]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(curl)} {(-o)} {(DQ ($ Id.VSub_Number '$1') (.download))} 
                  {(DQ ($ Id.VSub_DollarName '$URL'))}
                )
                (command.ControlFlow
                  token: (Token id:Id.ControlFlow_Exit val:exit span_id:160)
                  arg_word: {(2)}
                )
              ]
            )
          ]
          spids: [127 142]
        )
      ]
      else_action: [
        (command.AndOr
          ops: [Id.Op_DPipe]
          children: [
            (C {(wget)} {(-O)} {(DQ ($ Id.VSub_Number '$1') (.download))} 
              {(DQ ($ Id.VSub_DollarName '$URL'))}
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:182)
              arg_word: {(2)}
            )
          ]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {(chmod)} {(Id.Lit_Other '+') (x)} {(DQ ($ Id.VSub_Number '$1') (.download))})
        (command.ControlFlow
          token: (Token id:Id.ControlFlow_Exit val:exit span_id:200)
          arg_word: {(2)}
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {(mv)} {(DQ ($ Id.VSub_Number '$1') (.download))} {(DQ ($ Id.VSub_Number '$1'))})
        (command.ControlFlow
          token: (Token id:Id.ControlFlow_Exit val:exit span_id:217)
          arg_word: {(2)}
        )
      ]
    )
    (C {(echo)} {(DQ ('info: download OK, run with: ./') ($ Id.VSub_Number '$1'))})
  ]
)