docs: def write_padding_bits(buff, version, length):
      """\
      Writes padding bits if the data stream does not meet the codeword boundary.
  
      :param buff: The byte buffer.
      :param int length: Data stream length.
      """
      # ISO/IEC 18004:2015(E) - 7.4.10 Bit stream to codeword conversion -- page 32
      # [...]
      # All codewords are 8 bits in length, except for the final data symbol
      # character in Micro QR Code versions M1 and M3 symbols, which is 4 bits
      # in length. If the bit stream length is such that it does not end at a
      # codeword boundary, padding bits with binary value 0 shall be added after
      # the final bit (least significant bit) of the data stream to extend it
      # to the codeword boundary. [...]
      if version not in (consts.VERSION_M1, consts.VERSION_M3):
          buff.extend([0] * (8 - (length % 8)))