         [ [ parse-rr ] replicate ] change-additional-section
     ] with-byte-reader ;
 
-: >n/label ( string -- ba )
+: >n/label ( string -- byte-array )
     [ length 1array ] [ utf8 encode ] bi B{ } append-as ;
 
-: >name ( dn -- ba ) "." split [ >n/label ] map concat ;
-
-: query>byte-array ( query -- ba )
+: >name ( domain -- byte-array ) "." split [ >n/label ] map concat ;
+
+: query>byte-array ( query -- byte-array )
     [
         {
             [ name>> >name ]

        4 read be> >>ttl
        2 read be> over type>> parse-rdata >>rdata ;

: parse-message ( ba -- message )
    [ message new ] dip
    binary [
        2 read be> >>id

        first2 swap [ hex> ] bi@ [ 4 shift ] [ ] bi* bitor
    ] B{ } map-as byte-array>ipv6 ;

: parse-length-bytes ( -- sequence ) read1 read utf8 decode ;

: (parse-name) ( -- )
    peek1 [
