(command.CommandList
  children: [
    (command.ShAssignment
      left: <Id.Lit_VarLike 'SOCKSRC='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'SOCKSRC='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SOCKSRC='> name:SOCKSRC)
          op: assign_op.Equal
          rhs: {<unix> <Id.Lit_Colon ':'> <'//commsock1'>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'SOCKDST='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'SOCKDST='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SOCKDST='> name:SOCKDST)
          op: assign_op.Equal
          rhs: {<unix> <Id.Lit_Colon ':'> <'//commsock2'>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'IP6SRC='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'IP6SRC='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IP6SRC='> name:IP6SRC)
          op: assign_op.Equal
          rhs: {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <1>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'IP6DST='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'IP6DST='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'IP6DST='> name:IP6DST)
          op: assign_op.Equal
          rhs: {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <2>}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'DEBUG='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'DEBUG='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'DEBUG='> name:DEBUG)
          op: assign_op.Equal
          rhs: 
            {
              (BracedVarSub
                left: <Id.Left_DollarBrace '${'>
                token: <Id.VSub_Name DEBUG>
                var_name: DEBUG
                suffix_op: (suffix_op.Unary op:<Id.VTest_ColonHyphen _> arg_word:{<true>})
                right: <Id.Right_DollarBrace '}'>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'TIMEOUT='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'TIMEOUT='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'TIMEOUT='> name:TIMEOUT)
          op: assign_op.Equal
          rhs: {<1>}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <atf_test_case>
      more_env: []
      words: [{<atf_test_case>} {<ndp_cache_expiration>} {<cleanup>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <atf_test_case>
      more_env: []
      words: [{<atf_test_case>} {<ndp_commands>} {<cleanup>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <atf_test_case>
      more_env: []
      words: [{<atf_test_case>} {<ndp_cache_overwriting>} {<cleanup>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <atf_test_case>
      more_env: []
      words: [{<atf_test_case>} {<ndp_neighborgcthresh>} {<cleanup>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <atf_test_case>
      more_env: []
      words: [{<atf_test_case>} {<ndp_link_activation>} {<cleanup>}]
      redirects: []
      do_fork: T
    )
    (command.ShFunction
      name_tok: <ndp_cache_expiration_head>
      name: ndp_cache_expiration_head
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Tests for NDP cache expiration'>)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <require.progs>)} {(DQ <rump_server>)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_commands_head>
      name: ndp_commands_head
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Tests for commands of ndp(8)'>)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <require.progs>)} {(DQ <rump_server>)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_cache_overwriting_head>
      name: ndp_cache_overwriting_head
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Tests for behavior of overwriting NDP caches'>)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <require.progs>)} {(DQ <rump_server>)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_neighborgcthresh_head>
      name: ndp_neighborgcthresh_head
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Tests for GC of neighbor caches'>)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <require.progs>)} {(DQ <rump_server>)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_link_activation_head>
      name: ndp_link_activation_head
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <descr>)} {(DQ <'Tests for activating a new MAC address'>)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_set>
              more_env: []
              words: [{<atf_set>} {(DQ <require.progs>)} {(DQ <rump_server>)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <setup_dst_server>
      name: setup_dst_server
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'assign_ip='> ($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_add_iface>
              more_env: []
              words: [{<rump_server_add_iface>} {($ Id.VSub_DollarName SOCKDST)} {<shmif0>} {<bus1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKDST)}]
              redirects: []
              do_fork: T
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {(DQ ($ Id.VSub_DollarName assign_ip))}
                                {<Id.KW_Bang '!'> <Id.Lit_Equals '='>}
                                {<no>}
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <atf_check>
                      more_env: []
                      words: [
                        {<atf_check>}
                        {<-s>}
                        {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                        {<rump.ifconfig>}
                        {<shmif0>}
                        {<inet6>}
                        {($ Id.VSub_DollarName IP6DST)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [328 344]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<up>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<-w>}
                {<10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ifconfig>
                  more_env: []
                  words: [{<rump.ifconfig>} {<shmif0>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <setup_src_server>
      name: setup_src_server
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <ulimit>
                  more_env: []
                  words: [{<ulimit>} {<-c>} {<unlimited>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_add_iface>
              more_env: []
              words: [{<rump_server_add_iface>} {($ Id.VSub_DollarName SOCKSRC)} {<shmif0>} {<bus1>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<inet6>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<up>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<-w>}
                {<10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ifconfig>
                  more_env: []
                  words: [{<rump.ifconfig>} {<shmif0>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <get_timeout>
      name: get_timeout
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [
                {<local>}
                {<Id.Lit_VarLike 'timeout='> 
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Pipeline
                        children: [
                          (command.Simple
                            blame_tok: <env>
                            more_env: []
                            words: [
                              {<env>}
                              {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}
                              {<rump.ndp>}
                              {<-n>}
                              {($ Id.VSub_DollarName IP6DST)}
                            ]
                            redirects: []
                            do_fork: T
                          )
                          (command.Simple
                            blame_tok: <grep>
                            more_env: []
                            words: [{<grep>} {($ Id.VSub_DollarName IP6DST)}]
                            redirects: []
                            do_fork: T
                          )
                          (command.Simple
                            blame_tok: <awk>
                            more_env: []
                            words: [{<awk>} {(SQ <'{print $4;}'>)}]
                            redirects: []
                            do_fork: T
                          )
                        ]
                        ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'timeout='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'timeout='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'timeout='> name:timeout)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (BracedVarSub
                        left: <Id.Left_DollarBrace '${'>
                        token: <Id.VSub_Name timeout>
                        var_name: timeout
                        suffix_op: (suffix_op.Unary op:<Id.VOp1_Percent '%'> arg_word:{<s>})
                        right: <Id.Right_DollarBrace '}'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [{<echo>} {($ Id.VSub_DollarName timeout)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_cache_expiration_body>
      name: ndp_cache_expiration_body
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKSRC)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKDST)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_dst_server>
              more_env: []
              words: [{<setup_dst_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_src_server>
              more_env: []
              words: [{<setup_src_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ping6>}
                {<-n>}
                {<-X>}
                {($ Id.VSub_DollarName TIMEOUT)}
                {<-c>}
                {<1>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<not-match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'timeout='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'timeout='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'timeout='> name:timeout)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <get_timeout>
                            more_env: []
                            words: [{<get_timeout>} {($ Id.VSub_DollarName IP6DST)}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<sleep>}
                {
                  (word_part.ArithSub
                    left: <Id.Left_DollarDParen '$(('>
                    anode: 
                      (arith_expr.Binary
                        op_id: Id.Arith_Plus
                        left: {($ Id.VSub_DollarName timeout)}
                        right: {<Id.Lit_Digits 1>}
                      )
                    right: <Id.Right_DollarDParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <'(1d0h0m|23h59m)'>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_destroy_ifaces>
              more_env: []
              words: [{<rump_server_destroy_ifaces>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ifdown_dst_server>
      name: ifdown_dst_server
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKDST)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<down>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_commands_body>
      name: ndp_commands_body
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKSRC)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKDST)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_dst_server>
              more_env: []
              words: [{<setup_dst_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_src_server>
              more_env: []
              words: [{<setup_src_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (DQ ($ Id.VSub_DollarName IP6SRC))}
                {<rump.ndp>}
                {<-d>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <10>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <deleted>)}
                {<rump.ndp>}
                {<-d>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ping6>}
                {<-n>}
                {<-X>}
                {($ Id.VSub_DollarName TIMEOUT)}
                {<-c>}
                {<1>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <11>}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <11>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <12>}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <12>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<not-match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <11>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <12>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <'fc00::11'>)}
                {<rump.ndp>}
                {<-n>}
                {<-a>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <'fc00::12'>)}
                {<rump.ndp>}
                {<-n>}
                {<-a>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <ifdown_dst_server>
              more_env: []
              words: [{<ifdown_dst_server>}]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-c>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6SRC)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <11>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <12>}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <10>
                }
                {<temp>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump.ndp>
              more_env: []
              words: [
                {<rump.ndp>}
                {<-s>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <10>
                }
                {<temp>}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<not-match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {<fc00> <Id.Lit_Colon ':'> <Id.Lit_Colon ':'> <10>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_destroy_ifaces>
              more_env: []
              words: [{<rump_server_destroy_ifaces>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_cache_overwriting_body>
      name: ndp_cache_overwriting_body
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKSRC)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKDST)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_dst_server>
              more_env: []
              words: [{<setup_dst_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_src_server>
              more_env: []
              words: [{<setup_src_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-e>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {($ Id.VSub_DollarName IP6SRC)}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <ff>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ping6>}
                {<-n>}
                {<-X>}
                {($ Id.VSub_DollarName TIMEOUT)}
                {<-c>}
                {<1>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ndp>}
                {<-s>}
                {($ Id.VSub_DollarName IP6DST)}
                {<b2> <Id.Lit_Colon ':'> <a0> <Id.Lit_Colon ':'> <20> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <00>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<match> <Id.Lit_Colon ':'> (SQ <permanent>)}
                {<rump.ndp>}
                {<-n>}
                {($ Id.VSub_DollarName IP6DST)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_destroy_ifaces>
              more_env: []
              words: [{<rump_server_destroy_ifaces>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <get_n_caches>
      name: get_n_caches
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [
                {<echo>}
                {
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Pipeline
                        children: [
                          (command.Simple
                            blame_tok: <rump.ndp>
                            more_env: []
                            words: [{<rump.ndp>} {<-a>} {<-n>}]
                            redirects: []
                            do_fork: T
                          )
                          (command.Simple
                            blame_tok: <grep>
                            more_env: []
                            words: [{<grep>} {<-v>} {<-e>} {<Neighbor>} {<-e>} {<permanent>}]
                            redirects: []
                            do_fork: T
                          )
                          (command.Simple
                            blame_tok: <wc>
                            more_env: []
                            words: [{<wc>} {<-l>}]
                            redirects: []
                            do_fork: T
                          )
                        ]
                        ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
              ]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_neighborgcthresh_body>
      name: ndp_neighborgcthresh_body
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKSRC)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKDST)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_dst_server>
              more_env: []
              words: [{<setup_dst_server>} {<no>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_src_server>
              more_env: []
              words: [{<setup_src_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKDST)}]
              redirects: []
              do_fork: T
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [i]
              iterable: 
                (for_iter.Words
                  words: [
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <seq>
                            more_env: []
                            words: [{<seq>} {<0>} {<9>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                  ]
                )
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.Simple
                      blame_tok: <atf_check>
                      more_env: []
                      words: [
                        {<atf_check>}
                        {<-s>}
                        {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                        {<rump.ifconfig>}
                        {<shmif0>}
                        {<inet6>}
                        {(${ Id.VSub_Name IP6DST) ($ Id.VSub_DollarName i)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [i]
              iterable: 
                (for_iter.Words
                  words: [
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <seq>
                            more_env: []
                            words: [{<seq>} {<0>} {<2>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                  ]
                )
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.Simple
                      blame_tok: <atf_check>
                      more_env: []
                      words: [
                        {<atf_check>}
                        {<-s>}
                        {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                        {<-o>}
                        {<ignore>}
                        {<rump.ping6>}
                        {<-n>}
                        {<-X>}
                        {($ Id.VSub_DollarName TIMEOUT)}
                        {<-c>}
                        {<1>}
                        {(${ Id.VSub_Name IP6DST) ($ Id.VSub_DollarName i)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check_equal>
              more_env: []
              words: [
                {<atf_check_equal>}
                {
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <get_n_caches>
                        more_env: []
                        words: [{<get_n_caches>}]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
                {<3>}
              ]
              redirects: []
              do_fork: T
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [i]
              iterable: 
                (for_iter.Words
                  words: [
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <seq>
                            more_env: []
                            words: [{<seq>} {<3>} {<5>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                  ]
                )
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.Simple
                      blame_tok: <atf_check>
                      more_env: []
                      words: [
                        {<atf_check>}
                        {<-s>}
                        {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                        {<-o>}
                        {<ignore>}
                        {<rump.ping6>}
                        {<-n>}
                        {<-X>}
                        {($ Id.VSub_DollarName TIMEOUT)}
                        {<-c>}
                        {<1>}
                        {(${ Id.VSub_Name IP6DST) ($ Id.VSub_DollarName i)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <rump.ndp>
                  more_env: []
                  words: [{<rump.ndp>} {<-n>} {<-a>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <atf_check_equal>
              more_env: []
              words: [
                {<atf_check_equal>}
                {
                  (CommandSub
                    left_token: <Id.Left_DollarParen '$('>
                    child: 
                      (command.Simple
                        blame_tok: <get_n_caches>
                        more_env: []
                        words: [{<get_n_caches>}]
                        redirects: []
                        do_fork: T
                      )
                    right: <Id.Eof_RParen _>
                  )
                }
                {<6>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.sysctl>}
                {<-w>}
                {<net.inet6.ip6.neighborgcthresh> <Id.Lit_Equals '='> <5>}
              ]
              redirects: []
              do_fork: T
            )
            (command.ForEach
              keyword: <Id.KW_For for>
              iter_names: [i]
              iterable: 
                (for_iter.Words
                  words: [
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <seq>
                            more_env: []
                            words: [{<seq>} {<6>} {<9>}]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                  ]
                )
              semi_tok: <Id.Op_Semi _>
              body: 
                (command.DoGroup
                  left: <Id.KW_Do do>
                  children: [
                    (command.Simple
                      blame_tok: <atf_check>
                      more_env: []
                      words: [
                        {<atf_check>}
                        {<-s>}
                        {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                        {<-o>}
                        {<ignore>}
                        {<rump.ping6>}
                        {<-n>}
                        {<-X>}
                        {($ Id.VSub_DollarName TIMEOUT)}
                        {<-c>}
                        {<1>}
                        {(${ Id.VSub_Name IP6DST) ($ Id.VSub_DollarName i)}
                      ]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  right: <Id.KW_Done done>
                )
              redirects: []
            )
            (command.If
              if_kw: <Id.KW_If if>
              arms: [
                (IfArm
                  keyword: <Id.KW_If if>
                  cond: 
                    (condition.Shell
                      commands: [
                        (command.Sentence
                          child: 
                            (command.Simple
                              blame_tok: <Id.Lit_LBracket '['>
                              more_env: []
                              words: [
                                {<Id.Lit_LBracket '['>}
                                {
                                  (DQ 
                                    (CommandSub
                                      left_token: <Id.Left_DollarParen '$('>
                                      child: 
                                        (command.Simple
                                          blame_tok: <get_n_caches>
                                          more_env: []
                                          words: [{<get_n_caches>}]
                                          redirects: []
                                          do_fork: T
                                        )
                                      right: <Id.Eof_RParen _>
                                    )
                                  )
                                }
                                {<-gt>}
                                {<5>}
                                {<Id.Lit_RBracket ']'>}
                              ]
                              redirects: []
                              do_fork: T
                            )
                          terminator: <Id.Op_Semi _>
                        )
                      ]
                    )
                  then_kw: <Id.KW_Then then>
                  action: [
                    (command.Simple
                      blame_tok: <atf_fail>
                      more_env: []
                      words: [{<atf_fail>} {(DQ <'Neighbor caches are not GC-ed'>)}]
                      redirects: []
                      do_fork: T
                    )
                  ]
                  spids: [2258 2275]
                )
              ]
              else_action: []
              fi_kw: <Id.KW_Fi fi>
              redirects: []
            )
            (command.Simple
              blame_tok: <rump_server_destroy_ifaces>
              more_env: []
              words: [{<rump_server_destroy_ifaces>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <make_pkt_str_na>
      name: make_pkt_str_na
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'ip='> ($ Id.VSub_Number 1)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'mac='> ($ Id.VSub_Number 2)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'pkt='>}]
              redirects: []
              do_fork: T
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'pkt='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'pkt='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkt='> name:pkt)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName mac) 
                        <' > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 86:'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'pkt='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'pkt='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkt='> name:pkt)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName pkt) <' '> ($ Id.VSub_DollarName ip) 
                        <' > ff02::1: ICMP6, neighbor advertisement'>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <echo>
              more_env: []
              words: [{<echo>} {($ Id.VSub_DollarName pkt)}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_link_activation_body>
      name: ndp_link_activation_body
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <local>
              more_env: []
              words: [{<local>} {<Id.Lit_VarLike 'linklocal='>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKSRC)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_start>
              more_env: []
              words: [{<rump_server_start>} {($ Id.VSub_DollarName SOCKDST)} {<netinet6>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_dst_server>
              more_env: []
              words: [{<setup_dst_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <setup_src_server>
              more_env: []
              words: [{<setup_src_server>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <extract_new_packets>
              more_env: []
              words: [{<extract_new_packets>} {<bus1>}]
              redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'./out'>})]
              do_fork: T
            )
            (command.Simple
              blame_tok: <export>
              more_env: []
              words: [{<export>} {<Id.Lit_VarLike 'RUMP_SERVER='> ($ Id.VSub_DollarName SOCKSRC)}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<link>}
                {<b2> <Id.Lit_Colon ':'> <a1> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <01>
                }
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<sleep>}
                {<1>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <extract_new_packets>
              more_env: []
              words: [{<extract_new_packets>} {<bus1>}]
              redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'./out'>})]
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <cat>
                  more_env: []
                  words: [{<cat>} {<'./out'>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'linklocal='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'linklocal='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'linklocal='> name:linklocal)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <rump.ifconfig>
                                more_env: []
                                words: [{<rump.ifconfig>} {<shmif0>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <awk>
                                more_env: []
                                words: [{<awk>} {(SQ <'/fe80/ {print $2;}'>)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <awk>
                                more_env: []
                                words: [{<awk>} {<-F>} {<Id.Lit_Other '%'>} {(SQ <'{print $1;}'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <echo>
                  more_env: []
                  words: [{<echo>} {($ Id.VSub_DollarName linklocal)}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'pkt='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'pkt='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkt='> name:pkt)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <make_pkt_str_na>
                            more_env: []
                            words: [
                              {<make_pkt_str_na>}
                              {($ Id.VSub_DollarName linklocal)}
                              {<b2> <Id.Lit_Colon ':'> <a1> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> 
                                <00> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <01>
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<not-exit> <Id.Lit_Colon ':'> <0>}
                {<-x>}
                {(DQ <'cat ./out |grep -q \''> ($ Id.VSub_DollarName pkt) <'\''>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-o>}
                {<ignore>}
                {<rump.ifconfig>}
                {<shmif0>}
                {<link>}
                {<b2> <Id.Lit_Colon ':'> <a1> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <00> 
                  <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <02>
                }
                {<active>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<sleep>}
                {<1>}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <extract_new_packets>
              more_env: []
              words: [{<extract_new_packets>} {<bus1>}]
              redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'./out'>})]
              do_fork: T
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <cat>
                  more_env: []
                  words: [{<cat>} {<'./out'>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'linklocal='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'linklocal='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'linklocal='> name:linklocal)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Pipeline
                            children: [
                              (command.Simple
                                blame_tok: <rump.ifconfig>
                                more_env: []
                                words: [{<rump.ifconfig>} {<shmif0>}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <awk>
                                more_env: []
                                words: [{<awk>} {(SQ <'/fe80/ {print $2;}'>)}]
                                redirects: []
                                do_fork: T
                              )
                              (command.Simple
                                blame_tok: <awk>
                                more_env: []
                                words: [{<awk>} {<-F>} {<Id.Lit_Other '%'>} {(SQ <'{print $1;}'>)}]
                                redirects: []
                                do_fork: T
                              )
                            ]
                            ops: [<Id.Op_Pipe _> <Id.Op_Pipe _>]
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <echo>
                  more_env: []
                  words: [{<echo>} {($ Id.VSub_DollarName linklocal)}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.ShAssignment
              left: <Id.Lit_VarLike 'pkt='>
              pairs: [
                (AssignPair
                  left: <Id.Lit_VarLike 'pkt='>
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'pkt='> name:pkt)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (CommandSub
                        left_token: <Id.Left_DollarParen '$('>
                        child: 
                          (command.Simple
                            blame_tok: <make_pkt_str_na>
                            more_env: []
                            words: [
                              {<make_pkt_str_na>}
                              {($ Id.VSub_DollarName linklocal)}
                              {<b2> <Id.Lit_Colon ':'> <a1> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> 
                                <00> <Id.Lit_Colon ':'> <00> <Id.Lit_Colon ':'> <02>
                              }
                            ]
                            redirects: []
                            do_fork: T
                          )
                        right: <Id.Eof_RParen _>
                      )
                    }
                )
              ]
              redirects: []
            )
            (command.Simple
              blame_tok: <atf_check>
              more_env: []
              words: [
                {<atf_check>}
                {<-s>}
                {<Id.ControlFlow_Exit exit> <Id.Lit_Colon ':'> <0>}
                {<-x>}
                {(DQ <'cat ./out |grep -q \''> ($ Id.VSub_DollarName pkt) <'\''>)}
              ]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <rump_server_destroy_ifaces>
              more_env: []
              words: [{<rump_server_destroy_ifaces>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_cache_expiration_cleanup>
      name: ndp_cache_expiration_cleanup
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <dump>
                  more_env: []
                  words: [{<dump>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <cleanup>
              more_env: []
              words: [{<cleanup>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_commands_cleanup>
      name: ndp_commands_cleanup
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <dump>
                  more_env: []
                  words: [{<dump>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <cleanup>
              more_env: []
              words: [{<cleanup>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_cache_overwriting_cleanup>
      name: ndp_cache_overwriting_cleanup
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <dump>
                  more_env: []
                  words: [{<dump>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <cleanup>
              more_env: []
              words: [{<cleanup>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_neighborgcthresh_cleanup>
      name: ndp_neighborgcthresh_cleanup
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <dump>
                  more_env: []
                  words: [{<dump>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <cleanup>
              more_env: []
              words: [{<cleanup>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <ndp_link_activation_cleanup>
      name: ndp_link_activation_cleanup
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.AndOr
              children: [
                (command.Simple
                  blame_tok: <Id.VSub_DollarName '$DEBUG'>
                  more_env: []
                  words: [{($ Id.VSub_DollarName DEBUG)}]
                  redirects: []
                  do_fork: T
                )
                (command.Simple
                  blame_tok: <dump>
                  more_env: []
                  words: [{<dump>}]
                  redirects: []
                  do_fork: T
                )
              ]
              ops: [<Id.Op_DAmp _>]
            )
            (command.Simple
              blame_tok: <cleanup>
              more_env: []
              words: [{<cleanup>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
    (command.ShFunction
      name_tok: <atf_init_test_cases>
      name: atf_init_test_cases
      body: 
        (BraceGroup
          left: <Id.Lit_LBrace '{'>
          children: [
            (command.Simple
              blame_tok: <atf_add_test_case>
              more_env: []
              words: [{<atf_add_test_case>} {<ndp_cache_expiration>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_add_test_case>
              more_env: []
              words: [{<atf_add_test_case>} {<ndp_commands>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_add_test_case>
              more_env: []
              words: [{<atf_add_test_case>} {<ndp_cache_overwriting>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_add_test_case>
              more_env: []
              words: [{<atf_add_test_case>} {<ndp_neighborgcthresh>}]
              redirects: []
              do_fork: T
            )
            (command.Simple
              blame_tok: <atf_add_test_case>
              more_env: []
              words: [{<atf_add_test_case>} {<ndp_link_activation>}]
              redirects: []
              do_fork: T
            )
          ]
          redirects: []
          right: <Id.Lit_RBrace '}'>
        )
    )
  ]
)