Задание
📝 **Задача:** Реализовать `is_321_compliance(backups, Primary_site)`, возвращающую `(ok: bool, Reasons: list[str])`. Причины берутся из `{'need_3_copies', 'need_2_media', 'need_off_site'}`, отсортированных в алфавитном порядке.
📋 Реализуйте функцию выше. Тесты запускаются автоматически.
💡 **Подсказка:** Если вы застряли, перечитайте теорию.