docs: def corrupt_bytes(s, p=0.01, n=None):
      """Corrupt a given percentage or number of bytes from a string"""
      s = array.array("B", bytes_encode(s))
      s_len = len(s)
      if n is None:
          n = max(1, int(s_len * p))
      for i in random.sample(range(s_len), n):
          s[i] = (s[i] + random.randint(1, 255)) % 256
      return s.tostring() if six.PY2 else s.tobytes()