| f | import sys | f | import sys | 
             | bmp_data = sys.stdin.buffer.read() |  | bmp_data = sys.stdin.buffer.read() | 
             | if len(bmp_data) < 14: |  | if len(bmp_data) < 14: | 
             |     print('Incorrect size') |  |     print('Incorrect size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | signature = bmp_data[0:2] |  | signature = bmp_data[0:2] | 
             | if signature != b'BM': |  | if signature != b'BM': | 
             |     print('Not a Windows BMP') |  |     print('Not a Windows BMP') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | bmp_file_size = int.from_bytes(bmp_data[2:6], byteorder='little') |  | bmp_file_size = int.from_bytes(bmp_data[2:6], byteorder='little') | 
             | if bmp_file_size != len(bmp_data): |  | if bmp_file_size != len(bmp_data): | 
             |     print('Incorrect size') |  |     print('Incorrect size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | if len(bmp_data) < 18: |  | if len(bmp_data) < 18: | 
             |     print('Incorrect size') |  |     print('Incorrect size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | dib_header_size = int.from_bytes(bmp_data[14:18], byteorder='little') |  | dib_header_size = int.from_bytes(bmp_data[14:18], byteorder='little') | 
             | if dib_header_size not in [12, 16, 40, 52, 56, 64, 108, 124]: |  | if dib_header_size not in [12, 16, 40, 52, 56, 64, 108, 124]: | 
             |     print('Incorrect header size') |  |     print('Incorrect header size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | offset = 14 |  | offset = 14 | 
             | if len(bmp_data) < offset + dib_header_size: |  | if len(bmp_data) < offset + dib_header_size: | 
             |     print('Incorrect size') |  |     print('Incorrect size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | if dib_header_size == 12: |  | if dib_header_size == 12: | 
             |     if len(bmp_data) < offset + 12: |  |     if len(bmp_data) < offset + 12: | 
             |         print('Incorrect size') |  |         print('Incorrect size') | 
             |         sys.exit(0) |  |         sys.exit(0) | 
             |     width = int.from_bytes(bmp_data[offset + 4:offset + 6], byteorder='l |  |     width = int.from_bytes(bmp_data[offset + 4:offset + 6], byteorder='l | 
             | ittle', signed=False) |  | ittle', signed=False) | 
             |     height = int.from_bytes(bmp_data[offset + 6:offset + 8], byteorder=' |  |     height = int.from_bytes(bmp_data[offset + 6:offset + 8], byteorder=' | 
             | little', signed=False) |  | little', signed=False) | 
             |     bits_per_pixel = int.from_bytes(bmp_data[offset + 10:offset + 12], b |  |     bits_per_pixel = int.from_bytes(bmp_data[offset + 10:offset + 12], b | 
             | yteorder='little', signed=False) |  | yteorder='little', signed=False) | 
             |     compression_method = 0 |  |     compression_method = 0 | 
             |     image_size = 0 |  |     image_size = 0 | 
             | elif dib_header_size == 16: |  | elif dib_header_size == 16: | 
             |     if len(bmp_data) < offset + 16: |  |     if len(bmp_data) < offset + 16: | 
             |         print('Incorrect size') |  |         print('Incorrect size') | 
             |         sys.exit(0) |  |         sys.exit(0) | 
             |     width = int.from_bytes(bmp_data[offset + 4:offset + 6], byteorder='l |  |     width = int.from_bytes(bmp_data[offset + 4:offset + 6], byteorder='l | 
             | ittle', signed=True) |  | ittle', signed=True) | 
             |     height = int.from_bytes(bmp_data[offset + 6:offset + 8], byteorder=' |  |     height = int.from_bytes(bmp_data[offset + 6:offset + 8], byteorder=' | 
             | little', signed=True) |  | little', signed=True) | 
             |     bits_per_pixel = int.from_bytes(bmp_data[offset + 10:offset + 12], b |  |     bits_per_pixel = int.from_bytes(bmp_data[offset + 10:offset + 12], b | 
             | yteorder='little', signed=False) |  | yteorder='little', signed=False) | 
             |     compression_method = int.from_bytes(bmp_data[offset + 12:offset + 16 |  |     compression_method = int.from_bytes(bmp_data[offset + 12:offset + 16 | 
             | ], byteorder='little') |  | ], byteorder='little') | 
             |     image_size = 0 |  |     image_size = 0 | 
             | else: |  | else: | 
             |     if len(bmp_data) < offset + 24: |  |     if len(bmp_data) < offset + 24: | 
             |         print('Incorrect size') |  |         print('Incorrect size') | 
             |         sys.exit(0) |  |         sys.exit(0) | 
             |     width = int.from_bytes(bmp_data[offset + 4:offset + 8], byteorder='l |  |     width = int.from_bytes(bmp_data[offset + 4:offset + 8], byteorder='l | 
             | ittle', signed=True) |  | ittle', signed=True) | 
             |     height = int.from_bytes(bmp_data[offset + 8:offset + 12], byteorder= |  |     height = int.from_bytes(bmp_data[offset + 8:offset + 12], byteorder= | 
             | 'little', signed=True) |  | 'little', signed=True) | 
             |     bits_per_pixel = int.from_bytes(bmp_data[offset + 14:offset + 16], b |  |     bits_per_pixel = int.from_bytes(bmp_data[offset + 14:offset + 16], b | 
             | yteorder='little', signed=False) |  | yteorder='little', signed=False) | 
             |     compression_method = int.from_bytes(bmp_data[offset + 16:offset + 20 |  |     compression_method = int.from_bytes(bmp_data[offset + 16:offset + 20 | 
             | ], byteorder='little') |  | ], byteorder='little') | 
             |     image_size = int.from_bytes(bmp_data[offset + 20:offset + 24], byteo |  |     image_size = int.from_bytes(bmp_data[offset + 20:offset + 24], byteo | 
             | rder='little') |  | rder='little') | 
             | width_abs = abs(width) |  | width_abs = abs(width) | 
             | height_abs = abs(height) |  | height_abs = abs(height) | 
             | bits_per_row = width_abs * bits_per_pixel |  | bits_per_row = width_abs * bits_per_pixel | 
             | bytes_per_row = (bits_per_row + 7) // 8 |  | bytes_per_row = (bits_per_row + 7) // 8 | 
             | padding = (4 - bytes_per_row % 4) % 4 |  | padding = (4 - bytes_per_row % 4) % 4 | 
             | bytes_per_row_padded = bytes_per_row + padding |  | bytes_per_row_padded = bytes_per_row + padding | 
             | calculated_image_size = bytes_per_row_padded * height_abs |  | calculated_image_size = bytes_per_row_padded * height_abs | 
             | if image_size == calculated_image_size + 2: |  | if image_size == calculated_image_size + 2: | 
             |     placeholder_size = 2 |  |     placeholder_size = 2 | 
             | elif image_size == calculated_image_size or image_size == 0: |  | elif image_size == calculated_image_size or image_size == 0: | 
             |     placeholder_size = 0 |  |     placeholder_size = 0 | 
            | t |  | t | elif image_size == calculated_image_size + 2: | 
             |  |  |     placeholder_size = 2 | 
             | else: |  | else: | 
             |     print('Incorrect image size') |  |     print('Incorrect image size') | 
             |     sys.exit(0) |  |     sys.exit(0) | 
             | print(f'{width_abs} {height_abs} {bits_per_pixel} {compression_method} { |  | print(f'{width_abs} {height_abs} {bits_per_pixel} {compression_method} { | 
             | placeholder_size}') |  | placeholder_size}') |