while True:
symbol =
text.read(1)
if not symbol:
break
symbol = ord(symbol)
for byte_am in range(0, 8, degree):
img_byte = int.from_bytes(start_bmp.read(1), sys.byteorder) & img_mask
bits = symbol & text_mask
bits >>= (8 - degree)
img_byte |= bits
encode_bmp.write(img_byte.to_bytes(1, sys.byteorder))
symbol <<= degree
encode_bmp.write(start_bmp.read())