(command.CommandList
  children: [
    (C {<set>} {<-eu>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:executable)
          op: assign_op.Equal
          rhs: {(DQ (${ Id.VSub_Name BUILT_PRODUCTS_DIR) <'/'> (${ Id.VSub_Name EXECUTABLE_PATH))}
          spids: [77]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.Pipeline
                      children: [
                        (C {<xcrun>} {<otool>} {<-arch>} {<i386>} {<-o>} {(DQ (${ Id.VSub_Name executable))})
                        (C {<grep>} {<-q>} {(SQ <'^Contents.*section$'>)})
                      ]
                      negated: F
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.Simple
              words: [
                {<echo>}
                {
                  (DQ (${ Id.VSub_Number 0) <': '> (${ Id.VSub_Name executable) 
                    <' has an __OBJC,__image_info section'>
                  )
                }
              ]
              redirects: [(redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>})]
              do_fork: T
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
          ]
          spids: [89 119]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (command.DBracket
                      expr: 
                        (bool_expr.Binary
                          op_id: Id.BoolBinary_ne
                          left: 
                            {
                              (braced_var_sub
                                token: <Id.VSub_Name PIPESTATUS>
                                bracket_op: (bracket_op.ArrayIndex expr:{<Id.Lit_Digits 0>})
                              )
                            }
                          right: {<0>}
                        )
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.Simple
              words: [{<echo>} {(DQ (${ Id.VSub_Number 0) <': otool failed'>)}]
              redirects: [(redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>})]
              do_fork: T
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
          ]
          spids: [146 164]
        )
      ]
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)