docs: def prettyval(self, val):
          """
          returns the value in a readable format.
          """
          if len(val) == self.wordsize and val[-1:] in (b'\x00', b'\xff'):
              return "%x" % struct.unpack("<" + self.fmt, val)
          if len(val) == self.wordsize and re.search(b'[\x00-\x08\x0b\x0c\x0e-\x1f]', val, re.DOTALL):
              return "%x" % struct.unpack("<" + self.fmt, val)
          if len(val) < 2 or not re.match(b'^[\x09\x0a\x0d\x20-\xff]+.$', val, re.DOTALL):
              return hexdump(val)
          val = val.replace(b"\n", b"\\n")
          return "'%s'" % val.decode('utf-8', 'ignore')