(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:tid) op:Equal rhs:{(DQ ('hostkey agent'))} spids:[7])]
      spids: [7]
    )
    (C {(rm)} {(-f)} {($ VSub_Name '$OBJ') (/agent-key.) (Lit_Other '*')} 
      {($ VSub_Name '$OBJ') (/ssh_proxy.orig)} {($ VSub_Name '$OBJ') (/known_hosts.orig)}
    )
    (C {(trace)} {(DQ ('start agent'))})
    (SimpleCommand
      words: [
        {(eval)}
        {
          (CommandSubPart
            command_list: (CommandList children:[(C {(${ VSub_Name SSHAGENT)} {(-s)})])
            left_token: <Left_Backtick '`'>
            spids: [36 42]
          )
        }
      ]
      redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[44])]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:r) op:Equal rhs:{($ VSub_QMark '$?')} spids:[48])]
      spids: [48]
    )
    (AndOr
      children: [
        (C {(Lit_Other '[')} {($ VSub_Name '$r')} {(-ne)} {(0)} {(Lit_Other ']')})
        (C {(fatal)} {(DQ ('could not start ssh-agent: exit code ') ($ VSub_Name '$r'))})
      ]
      op_id: Op_DAmp
    )
    (SimpleCommand
      words: [{(grep)} {(-vi)} {(SQ <hostkey>)} {($ VSub_Name '$OBJ') (/sshd_proxy)}]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: -1
          arg_word: {($ VSub_Name '$OBJ') (/sshd_proxy.orig)}
          spids: [82]
        )
      ]
    )
    (SimpleCommand
      words: [{(echo)} {(DQ ('HostKeyAgent ') ($ VSub_Name '$SSH_AUTH_SOCK'))}]
      redirects: [
        (Redir
          op_id: Redir_DGreat
          fd: -1
          arg_word: {($ VSub_Name '$OBJ') (/sshd_proxy.orig)}
          spids: [94]
        )
      ]
    )
    (C {(trace)} {(DQ ('load hostkeys'))})
    (ForEach
      iter_name: k
      iter_words: [
        {
          (CommandSubPart
            command_list: (CommandList children:[(C {(${ VSub_Name SSH)} {(-Q)} {(key-plain)})])
            left_token: <Left_Backtick '`'>
            spids: [112 120]
          )
        }
      ]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (AndOr
              children: [
                (C {(${ VSub_Name SSHKEYGEN)} {(-qt)} {($ VSub_Name '$k')} {(-f)} 
                  {($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k')} {(-N)} {(SQ )}
                )
                (C {(fatal)} {(DQ ('ssh-keygen ') ($ VSub_Name '$k'))})
              ]
              op_id: Op_DPipe
            )
            (Subshell
              child: 
                (CommandList
                  children: [
                    (C {(printf)} {(SQ <'localhost-with-alias,127.0.0.1,::1 '>)})
                    (C {(cat)} {($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k') (.pub)})
                  ]
                )
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: -1
                  arg_word: {($ VSub_Name '$OBJ') (/known_hosts.orig)}
                  spids: [176]
                )
              ]
              spids: [156 174]
            )
            (AndOr
              children: [
                (SimpleCommand
                  words: [
                    {(${ VSub_Name SSHADD)}
                    {($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k')}
                  ]
                  redirects: [
                    (Redir
                      op_id: Redir_Great
                      fd: -1
                      arg_word: {(/dev/null)}
                      spids: [190]
                    )
                    (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[193])
                  ]
                )
                (C {(fatal)} 
                  {(DQ ("couldn't load key ") ($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k'))}
                )
              ]
              op_id: Op_DPipe
            )
            (SimpleCommand
              words: [{(echo)} {(DQ ('Hostkey ') ($ VSub_Name '$OBJ') (/agent-key.) (${ VSub_Name k))}]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: -1
                  arg_word: {($ VSub_Name '$OBJ') (/sshd_proxy.orig)}
                  spids: [221]
                )
              ]
            )
            (AndOr
              children: [
                (C {(rm)} {($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k')})
                (C {(fatal)} 
                  {(DQ ("couldn't rm ") ($ VSub_Name '$OBJ') (/agent-key.) ($ VSub_Name '$k'))}
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [124 248]
        )
      spids: [111 122]
    )
    (C {(cp)} {($ VSub_Name '$OBJ') (/known_hosts.orig)} {($ VSub_Name '$OBJ') (/known_hosts)})
    (C {(unset)} {(SSH_AUTH_SOCK)})
    (ForEach
      iter_name: ps
      iter_words: [{(no)} {(yes)}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (ForEach
              iter_name: k
              iter_words: [
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(${ VSub_Name SSH)} {(-Q)} {(key-plain)})]
                      )
                    left_token: <Left_Backtick '`'>
                    spids: [284 292]
                  )
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(verbose)} 
                      {(DQ ('key type ') ($ VSub_Name '$k') (' privsep=') ($ VSub_Name '$ps'))}
                    )
                    (C {(cp)} {($ VSub_Name '$OBJ') (/sshd_proxy.orig)} 
                      {($ VSub_Name '$OBJ') (/sshd_proxy)}
                    )
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('UsePrivilegeSeparation ') ($ VSub_Name '$ps'))}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: -1
                          arg_word: {($ VSub_Name '$OBJ') (/sshd_proxy)}
                          spids: [325]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(echo)} {(DQ ('HostKeyAlgorithms ') ($ VSub_Name '$k'))}]
                      redirects: [
                        (Redir
                          op_id: Redir_DGreat
                          fd: -1
                          arg_word: {($ VSub_Name '$OBJ') (/sshd_proxy)}
                          spids: [338]
                        )
                      ]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:opts)
                          op: Equal
                          rhs: 
                            {
                              (DQ ('-oHostKeyAlgorithms=') ($ VSub_Name '$k') (' -F ') 
                                ($ VSub_Name '$OBJ') (/ssh_proxy)
                              )
                            }
                          spids: [344]
                        )
                      ]
                      spids: [344]
                    )
                    (C {(cp)} {($ VSub_Name '$OBJ') (/known_hosts.orig)} 
                      {($ VSub_Name '$OBJ') (/known_hosts)}
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SSH_CONNECTION)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (C {(${ VSub_Name SSH)} {($ VSub_Name '$opts')} {(host)} 
                                        {(SQ <'echo $SSH_CONNECTION'>)}
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [364 376]
                              )
                            }
                          spids: [363]
                        )
                      ]
                      spids: [363]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(-ne)} {(0)} {(Lit_Other ']')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(fail)} 
                              {
                                (DQ ('protocol ') ($ VSub_Name '$p') (' privsep=') ($ VSub_Name '$ps') 
                                  (' failed')
                                )
                              }
                            )
                          ]
                          spids: [-1 392]
                        )
                      ]
                      spids: [-1 406]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$SSH_CONNECTION'))} 
                                  {(KW_Bang '!') (Lit_Other '=')} {(DQ ('UNKNOWN 65535 UNKNOWN 65535'))} {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(fail)} 
                              {
                                (DQ ('bad SSH_CONNECTION key type ') ($ VSub_Name '$k') (' privsep=') 
                                  ($ VSub_Name '$ps')
                                )
                              }
                            )
                          ]
                          spids: [-1 427]
                        )
                      ]
                      spids: [-1 440]
                    )
                  ]
                  spids: [296 443]
                )
              spids: [283 294]
            )
          ]
          spids: [275 445]
        )
      spids: [269 273]
    )
    (C {(trace)} {(DQ ('kill agent'))})
    (SimpleCommand
      words: [{(${ VSub_Name SSHAGENT)} {(-k)}]
      redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(/dev/null)} spids:[460])]
    )
  ]
)