(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:tid) op:Equal rhs:{(DQ ('simple connect'))} spids:[7])]
      spids: [7]
    )
    (C {(start_sshd)})
    (ForEach
      iter_name: p
      iter_words: [{(${ VSub_Name SSH_PROTOCOLS)}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(${ VSub_Name SSH)} {(-o)} {(DQ ('Protocol=') ($ VSub_Name '$p'))} {(-F)} 
              {($ VSub_Name '$OBJ') (/ssh_config)} {(somehost)} {(true)}
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(fail)} {(DQ ('ssh connect with protocol ') ($ VSub_Name '$p') (' failed'))})
                  ]
                  spids: [-1 64]
                )
              ]
              spids: [-1 76]
            )
          ]
          spids: [27 78]
        )
      spids: [21 25]
    )
  ]
)