Вывести забронированные места в самолете (Python)
Возникли сложности с решением задачи, определяющей наличие посадочных мест в самолете и выводящей схему салона с забронированными и занятыми местами. Формат ввода и вывода, подробные условия ниже:

На данный момент имеется код, выводящий первоначальный план самолета, а также преобразовывающий текстовый ввод в те индексы каждой строки (ряда) первоначального плана салона самолета, которые надо заменить на Х, а затем на #. Дальше не очень понятно, каким образом написать цикл, который правильно бы бронировал места.
n = int(input())
seats = [[i for i in input()] for _ in range(n)]
m = int(input())
passengers = [input().split() for _ in range(m)]
passengers2 = [[] for _ in range(m)]
# place2 = 'ABCDEF'
for i in range(m):
if passengers[i][1] == 'left':
if passengers[i][2] == 'aisle':
# passengers2[i].append(place2[-3-int(passengers[i][0]):3])
passengers2[i] = list(range(3 - int(passengers[i][0]), 3))
else:
# passengers2[i].append(place2[:4-int(passengers[i][0])])
passengers2[i] = list(range(0, int(passengers[i][0])))
if passengers[i][1] == 'right':
if passengers[i][2] == 'aisle':
# passengers2[i].append(place2[4:4+int(passengers[i][0])])
passengers2[i] = list(range(4, 4 + int(passengers[i][0])))
else:
# passengers2[i].append(place2[6-int(passengers[i][0]):6])
passengers2[i] = list(range(7 - int(passengers[i][0]), 7))
# passengers2[i] = ''.join(passengers2[i])
print(passengers2)
# print(list(range(2, -2 + int(passengers[0][0]), -1)))
for i in range(n):
print(''.join(seats[i]))
print()
print(seats)