(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tid)
          op: assign_op.Equal
          rhs: {(DQ <'config include'>)}
          spids: [7]
        )
      ]
    )
    (C {<umask>} {<022>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 72
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bb\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\tHostname cc\n'>
                <'\n'>
                <'Match host m\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname dd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname ee\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Host f\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\tHostname ff\n'>
                <'\n'>
                <'Host n\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.0'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 87
              stdin_parts: [<'Match host xxxxxx\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.1'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 118
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aaa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bbb\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tHostname ccc\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname ddd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname eee\n'>
                <'\n'>
                <'Host f\n'>
                <'\tHostname fff\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.2'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 152
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aaaa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bbbb\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tHostname cccc\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname dddd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname eeee\n'>
                <'\n'>
                <'Host f\n'>
                <'\tHostname ffff\n'>
                <'\n'>
                <'Match all\n'>
                <'\tHostname xxxx\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.ShFunction
      name: trial
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_host)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_Number '$1'))}
                  spids: [161]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_exp)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_Number '$2'))}
                  spids: [167]
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [
                    {(${ Id.VSub_Name REAL_SSH)}
                    {<-F>}
                    {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
                    {<-G>}
                    {(DQ ($ Id.VSub_DollarName '$_host'))}
                  ]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
                    )
                  ]
                  do_fork: T
                )
                (C {<fatal>} {(DQ <'ssh config parse failed'>)})
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_got)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (C {<grep>} {<-i>} {(SQ <'^hostname '>)} 
                                {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
                              )
                              (C {<awk>} {(SQ <'{print $2}'>)})
                            ]
                            negated: F
                          )
                      )
                    }
                  spids: [203]
                )
              ]
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {(DQ <x> ($ Id.VSub_DollarName '$_exp'))} 
                              {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <x> ($ Id.VSub_DollarName '$_got'))}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (C {<fail>} 
                      {
                        (DQ <'host '> ($ Id.VSub_DollarName '$_host') <' include fail: expected '> 
                          ($ Id.VSub_DollarName '$_exp') <' got '> ($ Id.VSub_DollarName '$_got')
                        )
                      }
                    )
                  ]
                  spids: [228 247]
                )
              ]
            )
          ]
        )
    )
    (C {<trial>} {<a>} {<aa>})
    (C {<trial>} {<b>} {<bb>})
    (C {<trial>} {<c>} {<ccc>})
    (C {<trial>} {<d>} {<dd>})
    (C {<trial>} {<e>} {<ee>})
    (C {<trial>} {<f>} {<fff>})
    (C {<trial>} {<m>} {<xxxx>})
    (C {<trial>} {<n>} {<xxxx>})
    (C {<trial>} {<x>} {<x>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.3'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 340
              stdin_parts: [<'Hostname xxxx\n'> <'\tJunk\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name REAL_SSH)}
            {<-F>}
            {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
            {<-G>}
            {<a>}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<fail>} {(DQ <'ssh include allowed invalid config'>)})
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name REAL_SSH)}
            {<-F>}
            {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
            {<-G>}
            {<x>}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<fail>} {(DQ <'ssh include allowed invalid config'>)})
      ]
    )
    (C {<rm>} {<-f>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.'> <Id.Lit_Star '*'>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 424
              stdin_parts: [
                <'Include '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'Hostname aa\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.x'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 449
              stdin_parts: [<'Match host x\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.x'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 471
              stdin_parts: [<'Host x\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (C {<rm>} {<-f>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>} 
      {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.'> <Id.Lit_Star '*'>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tid)
          op: assign_op.Equal
          rhs: {(DQ <'config include'>)}
          spids: [504]
        )
      ]
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 561
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bb\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\tHostname cc\n'>
                <'\n'>
                <'Match host m\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname dd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname ee\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\n'>
                <'Host f\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'\tHostname ff\n'>
                <'\n'>
                <'Host n\n'>
                <'\tInclude '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.0'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 576
              stdin_parts: [<'Match host xxxxxx\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.1'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 607
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aaa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bbb\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tHostname ccc\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname ddd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname eee\n'>
                <'\n'>
                <'Host f\n'>
                <'\tHostname fff\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.2'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 641
              stdin_parts: [
                <'Match host a\n'>
                <'\tHostname aaaa\n'>
                <'\n'>
                <'Match host b\n'>
                <'\tHostname bbbb\n'>
                <'\n'>
                <'Match host c\n'>
                <'\tHostname cccc\n'>
                <'\n'>
                <'Host d\n'>
                <'\tHostname dddd\n'>
                <'\n'>
                <'Host e\n'>
                <'\tHostname eeee\n'>
                <'\n'>
                <'Host f\n'>
                <'\tHostname ffff\n'>
                <'\n'>
                <'Match all\n'>
                <'\tHostname xxxx\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.ShFunction
      name: trial
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_host)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_Number '$1'))}
                  spids: [650]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_exp)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_Number '$2'))}
                  spids: [656]
                )
              ]
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Simple
                  words: [
                    {(${ Id.VSub_Name REAL_SSH)}
                    {<-F>}
                    {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
                    {<-G>}
                    {(DQ ($ Id.VSub_DollarName '$_host'))}
                  ]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
                    )
                  ]
                  do_fork: T
                )
                (C {<fatal>} {(DQ <'ssh config parse failed'>)})
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:_got)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: <Id.Left_Backtick '`'>
                        child: 
                          (command.Pipeline
                            children: [
                              (C {<grep>} {<-i>} {(SQ <'^hostname '>)} 
                                {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
                              )
                              (C {<awk>} {(SQ <'{print $2}'>)})
                            ]
                            negated: F
                          )
                      )
                    }
                  spids: [692]
                )
              ]
            )
            (command.If
              arms: [
                (if_arm
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (C {<test>} {(DQ <x> ($ Id.VSub_DollarName '$_exp'))} 
                              {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {(DQ <x> ($ Id.VSub_DollarName '$_got'))}
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  action: [
                    (C {<fail>} 
                      {
                        (DQ <'host '> ($ Id.VSub_DollarName '$_host') <' include fail: expected '> 
                          ($ Id.VSub_DollarName '$_exp') <' got '> ($ Id.VSub_DollarName '$_got')
                        )
                      }
                    )
                  ]
                  spids: [717 736]
                )
              ]
            )
          ]
        )
    )
    (C {<trial>} {<a>} {<aa>})
    (C {<trial>} {<b>} {<bb>})
    (C {<trial>} {<c>} {<ccc>})
    (C {<trial>} {<d>} {<dd>})
    (C {<trial>} {<e>} {<ee>})
    (C {<trial>} {<f>} {<fff>})
    (C {<trial>} {<m>} {<xxxx>})
    (C {<trial>} {<n>} {<xxxx>})
    (C {<trial>} {<x>} {<x>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.3'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 829
              stdin_parts: [<'Hostname xxxx\n'> <'\tJunk\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name REAL_SSH)}
            {<-F>}
            {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
            {<-G>}
            {<a>}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<fail>} {(DQ <'ssh include allowed invalid config'>)})
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name REAL_SSH)}
            {<-F>}
            {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
            {<-G>}
            {<x>}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<fail>} {(DQ <'ssh include allowed invalid config'>)})
      ]
    )
    (C {<rm>} {<-f>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.'> <Id.Lit_Star '*'>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 913
              stdin_parts: [
                <'Include '>
                ($ Id.VSub_DollarName '$OBJ')
                <'/ssh_config.i.*\n'>
                <'Hostname aa\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.x'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 938
              stdin_parts: [<'Match host x\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.x'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 960
              stdin_parts: [<'Host x\n'>]
            )
        )
      ]
      do_fork: T
    )
    (C {<trial>} {<a>} {<aa>})
    (command.Simple
      words: [{<cat>}]
      redirects: [
        (redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
        )
        (redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {<_EOF>}
              here_end_span_id: 987
              stdin_parts: [<'Include '> ($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.Simple
          words: [
            {(${ Id.VSub_Name REAL_SSH)}
            {<-F>}
            {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>}
            {<-G>}
            {<a>}
          ]
          redirects: [(redir op:<Id.Redir_Great '2>'> loc:(redir_loc.Fd fd:2) arg:{<'/dev/null'>})]
          do_fork: T
        )
        (C {<fail>} {(DQ <'ssh include allowed infinite recursion?'>)})
      ]
    )
    (C {<rm>} {<-f>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i'>} 
      {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.i.'> <Id.Lit_Star '*'>} {($ Id.VSub_DollarName '$OBJ') <'/ssh_config.out'>}
    )
  ]
)