(command.CommandList
  children: [
    (C {<set>} {<-e>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:ldns)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (C {<dirname>} 
                    {
                      (command_sub
                        left_token: <Id.Left_DollarParen '$('>
                        child: (C {<realpath>} {($ Id.VSub_Number '$0')})
                      )
                    }
                  )
              )
            }
          spids: [18]
        )
      ]
    )
    (C {<cd>} {($ Id.VSub_DollarName '$ldns')})
    (C {<libtoolize>} {<--copy>})
    (C {<autoheader>})
    (C {<autoconf>})
    (C {<'./configure'>} {<--prefix> <Id.Lit_Equals '='>} {<--exec-prefix> <Id.Lit_Equals '='> <'/usr'>})
    (C {<cd>} {($ Id.VSub_DollarName '$ldns') <'/drill'>})
    (C {<autoheader>})
    (C {<autoconf>})
    (C {<'./configure'>} {<--prefix> <Id.Lit_Equals '='>} {<--exec-prefix> <Id.Lit_Equals '='> <'/usr'>})
  ]
)