(command.CommandList
  children: [
    (C {<Id.KW_Set set>} {<-e>})
    (C {<cd>} 
      {
        (DQ 
          (command_sub
            left_token: <Id.Left_DollarParen '$('>
            child: (C {<dirname>} {(DQ ($ Id.VSub_Number '$0'))})
          ) <'/..'>
        )
      }
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.AndOr
                  ops: [Id.Op_DAmp]
                  children: [
                    (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <Brewfile>)} {<Id.Lit_RBracket ']'>})
                    (C {<Id.Lit_LBracket '['>} 
                      {
                        (DQ 
                          (command_sub
                            left_token: <Id.Left_DollarParen '$('>
                            child: (C {<uname>} {<-s>})
                          )
                        )
                      } {<Id.Lit_Equals '='>} {(DQ <Darwin>)} {<Id.Lit_RBracket ']'>}
                    )
                  ]
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<brew>} {<bundle>} {<check>}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (BraceGroup
                  children: [
                    (C {<echo>} {(DQ <'==> Installing Homebrew dependencies…'>)})
                    (C {<brew>} {<bundle>})
                  ]
                )
              ]
            )
          ]
          spids: [30 63]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.AndOr
                  ops: [Id.Op_DAmp]
                  children: [
                    (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <.ruby-version>)} {<Id.Lit_RBracket ']'>})
                    (C {<Id.Lit_LBracket '['>} {<-z>} 
                      {
                        (DQ 
                          (command_sub
                            left_token: <Id.Left_DollarParen '$('>
                            child: 
                              (command.Simple
                                words: [{<rbenv>} {<version-name>}]
                                redirects: [
                                  (redir
                                    op: <Id.Redir_Great '2>'>
                                    loc: (redir_loc.Fd fd:2)
                                    arg: {<'/dev/null'>}
                                  )
                                ]
                                do_fork: T
                              )
                          )
                        )
                      } {<Id.Lit_RBracket ']'>}
                    )
                  ]
                )
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (C {<echo>} {(DQ <'==> Installing Ruby…'>)})
            (C {<rbenv>} {<install>} {<--skip-existing>})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<which>} {<bundle>}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (BraceGroup
                  children: [(C {<gem>} {<install>} {<bundler>}) (C {<rbenv>} {<rehash>})]
                )
              ]
            )
          ]
          spids: [100 132]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: (C {<Id.Lit_LBracket '['>} {<-f>} {(DQ <Gemfile>)} {<Id.Lit_RBracket ']'>})
              terminator: <Id.Op_Semi _>
            )
          ]
          action: [
            (C {<echo>} {(DQ <'==> Installing gem dependencies…'>)})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [{<bundle>} {<check>} {<--path>} {<'vendor/gems'>}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                    (redir
                      op: <Id.Redir_GreatAnd '2>&'>
                      loc: (redir_loc.Fd fd:2)
                      arg: {<1>}
                    )
                  ]
                  do_fork: T
                )
                (BraceGroup
                  children: [
                    (C {<bundle>} {<install>} {<--path>} {<'vendor/gems'>} {<--quiet>} {<--without>} 
                      {<production>}
                    )
                  ]
                )
              ]
            )
          ]
          spids: [181 194]
        )
      ]
    )
  ]
)