Я попросил искусственный интеллект написать программу, и зря попросил ее усложнить, теперь не знаю что делать, он только обещает, что зайдет на облака и посмотрит мой код. Можете посмотреть, почему счетчик неправильно считает? Он должен считать до обновления, а он живет своей жизнью. Кнопка которая лайкает закрывает текст, если не поможете с кнопкой ну и ладно. Помогите хотя бы со счетчиком - пожалуйста.
# Создаем функцию для обновления таймера
def update_timer():
    # Добавляем одну секунду к объекту времени
    time.addSecs(1)
    # Выводим время в формате MM:SS на метку
    label.setText(time.toString("mm:ss"))
# Связываем кнопку с функцией лайка
like_button.clicked.connect(like_quote)
# Создаем новую базу данных SQLite для сохранения истории
conn2 = sqlite3.connect("history.db")
c2 = conn2.cursor()
# Создаем таблицу для хранения истории с полем даты и времени
c2.execute("CREATE TABLE IF NOT EXISTS history (text TEXT, date_time TEXT, liked INTEGER)")
conn2.commit()
# Создаем функцию для обновления анекдотов
def update_quote():
    # Создаем объект времени с начальным значением 00:00:00
    time = QTime(0, 0, 0)
    # Объявляем переменную quote как глобальную, чтобы использовать ее в других функциях
    global quote
    # Выбираем случайный анекдот из списка
    quote = random.choice(quotes)
    # Выводим анекдот на метку
    label.setText(f"{quote[0]}")
    # Получаем текущую дату и время в формате YYYY-MM-DD HH:MM:SS
    date_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    # Сохраняем анекдоты, дату и время в таблицу истории
    c2.execute("INSERT INTO history VALUES (?, ?, ?)", (quote[0], date_time, 0))
    conn2.commit()
def update_counter():
    # Уменьшаем значение интервала на единицу
    global interval; interval -= 1
    # Обновляем текст метки с добавлением счетчика в формате MM:SS
    label.setText(f"{quote[0]}\n\n{time.strftime('%M:%S', time.gmtime(interval))}")
# Создаем таймер PyQt для обновления анекдотов
timer = QTimer()
# Создаем таймер PyQt для обновления счетчика
counter_timer = QTimer()
# Устанавливаем интервал таймера счетчика в 100 миллисекунд
counter_timer.setInterval(100)
# Устанавливаем интервал таймера в 30 минут (1800000 миллисекунд)
timer.setInterval(1800000)
# Связываем таймер с функцией обновления счетчика
counter_timer.timeout.connect(update_counter)
# Запускаем таймер
counter_timer.start()
# Связываем таймер с функцией обновления анекдотов
timer.timeout.connect(update_quote)
# Запускаем таймер
timer.start()
# Обновляем анекдоты в первый раз
update_quote()
# Запускаем приложение PyQt
app.exec_()