docs: def padding(s, bs=AES.block_size):
      """Fills a bytes-like object with arbitrary symbols to make its length divisible by `bs`.
      """
      
      s = to_bytes(s)
  
      if len(s) % bs == 0:
          res = s + b''.join(map(to_bytes, [random.SystemRandom().choice(string.ascii_lowercase + string.digits) for _ in range(bs - 1)])) + to_bytes(chr(96 - bs))
      elif len(s) % bs > 0 and len(s) > bs:
          res = s + b''.join(map(to_bytes, [random.SystemRandom().choice(string.ascii_lowercase + string.digits) for _ in range(bs - len(s) % bs - 1)])) + to_bytes(chr(96 + len(s) % bs - bs))
      else:
          res = s + b''.join(map(to_bytes, [random.SystemRandom().choice(string.ascii_lowercase + string.digits) for _ in range(bs - len(s) - 1)])) + to_bytes(chr(96 + len(s) - bs))
      return res