(command.CommandList
  children: [
    (C {<atf_test_case>} {<engine>})
    (command.ShFunction
      name: engine_head
      body: (BraceGroup children:[(C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks ENGINE framework'>)})])
    )
    (command.ShFunction
      name: engine_body
      body: 
        (BraceGroup
          children: [
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} 
              {
                (DQ (command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                  <'/h_enginetest'>
                )
              }
            )
          ]
        )
    )
    (C {<atf_test_case>} {<rand>})
    (command.ShFunction
      name: rand_head
      body: 
        (BraceGroup
          children: [(C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks peudo-random number generator'>)})]
        )
    )
    (command.ShFunction
      name: rand_body
      body: 
        (BraceGroup
          children: [
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} 
              {
                (DQ (command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                  <'/h_randtest'>
                )
              }
            )
          ]
        )
    )
    (C {<atf_test_case>} {<bn>})
    (command.ShFunction
      name: bn_head
      body: 
        (BraceGroup
          children: [
            (C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks BIGNUM library'>)})
            (C {<atf_set>} {(DQ <timeout>)} {(DQ <360>)})
          ]
        )
    )
    (command.ShFunction
      name: bn_body
      body: 
        (BraceGroup
          children: [
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} 
              {
                (DQ (command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                  <'/h_bntest'>
                )
              }
            )
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} 
              {
                (DQ (command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                  <'/h_divtest'>
                )
              }
            )
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} 
              {
                (DQ (command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                  <'/h_exptest'>
                )
              }
            )
          ]
        )
    )
    (C {<atf_test_case>} {<conf>})
    (command.ShFunction
      name: conf_head
      body: 
        (BraceGroup
          children: [(C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks configuration modules'>)})]
        )
    )
    (command.ShFunction
      name: conf_body
      body: 
        (BraceGroup
          children: [
            (C {<cp>} 
              {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                <'/d_conf_ssleay.cnf'>
              } {<ssleay.cnf>}
            )
            (C {<atf_check>} {<-o>} 
              {<file> <Id.Lit_Colon ':'> 
                (command_sub
                  left_token: <Id.Left_DollarParen '$('>
                  child: (C {<atf_get_srcdir>})
                ) <'/d_conf.out'>
              } {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) <'/h_conftest'>}
            )
          ]
        )
    )
    (C {<atf_test_case>} {<lhash>})
    (command.ShFunction
      name: lhash_head
      body: 
        (BraceGroup
          children: [(C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks lhash - dynamic hash tables'>)})]
        )
    )
    (command.ShFunction
      name: lhash_body
      body: 
        (BraceGroup
          children: [
            (C {<atf_check>} {<-o>} {<ignore>} {<-e>} {<ignore>} {<-x>} 
              {
                (DQ <'echo hoge | '> 
                  (command_sub
                    left_token: <Id.Left_DollarParen '$('>
                    child: (C {<atf_get_srcdir>})
                  ) <'/h_lhashtest'>
                )
              }
            )
          ]
        )
    )
    (C {<atf_test_case>} {<threads>})
    (command.ShFunction
      name: threads_head
      body: (BraceGroup children:[(C {<atf_set>} {(DQ <descr>)} {(DQ <'Checks threading'>)})])
    )
    (command.ShFunction
      name: threads_body
      body: 
        (BraceGroup
          children: [
            (command.Pipeline
              children: [
                (command.Simple
                  words: [
                    {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                      <'/h_threadstest'>
                    }
                    {<-cert>}
                    {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                      <'/d_server.pem'>
                    }
                    {<-ccert>}
                    {(command_sub left_token:<Id.Left_DollarParen '$('> child:(C {<atf_get_srcdir>})) 
                      <'/d_client.pem'>
                    }
                  ]
                  redirects: [(redir op:<Id.Redir_GreatAnd '2>&'> loc:(redir_loc.Fd fd:2) arg:{<1>})]
                  do_fork: T
                )
                (C {<tee>} {<out>})
              ]
              negated: F
            )
            (C {<atf_check>} {<-s>} {<eq> <Id.Lit_Colon ':'> <1>} {<-o>} {<empty>} {<-e>} {<empty>} {<grep>} 
              {<Id.Lit_Colon ':'> <error> <Id.Lit_Colon ':'>} {<out>}
            )
          ]
        )
    )
    (command.ShFunction
      name: atf_init_test_cases
      body: 
        (BraceGroup
          children: [
            (C {<atf_add_test_case>} {<engine>})
            (C {<atf_add_test_case>} {<rand>})
            (C {<atf_add_test_case>} {<bn>})
            (C {<atf_add_test_case>} {<conf>})
            (C {<atf_add_test_case>} {<lhash>})
            (C {<atf_add_test_case>} {<threads>})
          ]
        )
    )
  ]
)