Разработка на Unreal Engine 5.sa_UnEn5

Разработка на Unreal Engine 5.sa_UnEn5

Просмотрите все вопросы и варианты бесплатно. Правильные ответы скрыты и открываются только после получения доступа.

66 вопросов Вариант 1 Доступ 7 дней
Содержание теста

Вопросы и варианты

Без отметок и подсказок к правильным ответам

Вопрос 1

Основной С++ класс в Unreal Engine, от которого наследуются все остальные, это …

  1. UObject
Вопрос 2

C++ класс в Unreal Engine, который представляет игрока на уровне, это …

  1. APlayerController
Вопрос 3

Макрос в Unreal Engine, обозначающий поле класса видимым для системы рефлексии, это …

  1. UPROPERTY
Вопрос 4

C++ класс в Unreal Engine, представляющий собой список формата ключ-значение, это …

  1. TMap
Вопрос 5

С++ класс в Unreal Engine, наследники которого могут быть расположены на игровой сцене, это …

  1. AActor
Вопрос 6

C++ класс в Unreal Engine, который является глобальным менеджером игры на уровне, это …

  1. AGameMode
Вопрос 7

Макрос в Unreal Engine, обозначающий функцию класса видимой для системы рефлексии, это …

  1. UFUNCTION
Вопрос 8

Макрос в Unreal Engine, обозначающий структуру видимой для системы рефлексии, это …

  1. USTRUCT
Вопрос 9

Какое ключевое слово макроса UPROPERTY позволяет вызывать функцию после изменения реплицируемой переменной?

  1. ReplicatedUsing
Вопрос 10

Какое ключевое слово макроса UFUNCTION позволяет вызывать функцию и на сервере, и на клиенте?

  1. NetMulticast
Вопрос 11

Какое ключевое слово макроса UFUNCTION не гарантирует, что RPC будет вызвана?

  1. UnReliable
Вопрос 12

Какой класс нужен для хранения состояния игры на всех клиентах?

  1. AGameState
Вопрос 13

Какое ключевое слово макроса UFUNCTION позволяет вызывать функцию только на сервере?

  1. Server
Вопрос 14

Какое ключевое слово макроса UFUNCTION позволяет добавить функцию проверки, которая блокирует отправку в RPC, если возвращает false?

  1. WithValidation
Вопрос 15

Без какого макроса не будет возможна репликация даже если пометить поле UPROPERTY(Replicated)?

  1. DOREPLIFETIME
Вопрос 16

Какой класс является базовым для всех UMG виджетов?

  1. UUserWidget
Вопрос 17

Базовый класс в Gameplay Ability System для создания любого эффекта это …

  1. UGameplayEffect
Вопрос 18

Базовый класс в Gameplay Ability System для выполнения небольших задач внутри способности это …

  1. UAbilityTask
Вопрос 19

Центральный класс AI-противников, объединяющий персонажа и его поведение, это …

  1. AIController
Вопрос 20

Компонент, отвечающий за глаза, уши и другие чуства AI-противников это …

  1. PerceptionComponent
Вопрос 21

Центральный класс в Gameplay Ability System без которого невозможно ни активировать способности, ни накладывать эффекты, это …

  1. UAbilitySystemComponent
Вопрос 22

Структура в Gameplay Ability System, использующаяся для блокирования способностей или как символ определенных состояний персонажей, это …

  1. FGameplayTag
Вопрос 23

Ассет, олицетворяющий мозг AI-противника, это …

  1. BehaviorTree
Вопрос 24

Базовый класс, необходимый для сохранения и загрузки данных объектов, это …

  1. USaveGame
Вопрос 25

Почему нельзя вызвать Broadcast() метод события в нескольких разных классах?

  1. При декларировании события указывается владеющий им класс. Только этот класс может вызывать Broadcast() метод.
  2. Только методы, которые не имеют параметров, могут вызывать Broadcast() метод.
  3. Вызов Broadcast() метода требует наличия статического метода.
Вопрос 26

Что означает следующий макрос:DECLARE_DYNAMIC_DELEGATE_OneParam(FMyDelegateSignature, AActor*, ParamActor)?

  1. Этот макрос декларирует стандартный тип данных для передачи параметров в функции.
  2. Этот макрос декларирует кастомный архетип делегата без возвращаемого значения и с одним параметром типа AActor* c возможностью использовать его также в блюпринтах. К делегату можно привязать только 1 метод/функцию.
  3. Этот макрос создаёт встроенную функцию, которая выполняется в режиме реального времени.
Вопрос 27

Зачем нужен тип TSubclassOf˂AMyActor˃?

  1. TSubclassOf˂AMyActor˃ используется для задания уникальных параметров объектов в Blueprint.
  2. TSubclassOf˂AMyActor˃ нужен для автоматической генерации акторов в процессе выполнения игры.
  3. TSubclassOf˂AMyActor˃ позволяет ограничить присвоение в С++ и Blueprints объектов типа UClass заданным классом и его наследниками.
Вопрос 28

В чем заключается отличие TSharedPtr от TShraredRef?

  1. TSharedPtr — это тип, объект которого может указывать на nullptr, TShraredRef всегда обязан указывать на существующий объект.
  2. TSharedPtr используется для управления памятью, в то время как TShraredRef отвечает за синхронизацию потоков.
  3. TSharedPtr хранит информацию о состоянии объекта, а TShraredRef управляет его жизненным циклом.
Вопрос 29

Может ли быть несколько объектов класса UGameInstance одновременно?

  1. Да, возможно создать несколько объектов UGameInstance для управления различными аспектами игры.
  2. Нет. UGameInstance автоматически уничтожается при каждом завершении уровня и создается заново при запуске нового.
  3. Нет. UGameInstance создается при запуске процесса игры и существует пока процесс не будет уничтожен.
Вопрос 30

Что означает следующий макрос: DECLARE_MULTICAST_DELEGATE_l(FMyDelegateSignature)?

  1. Этот макрос создаёт универсальный делегат с параметрами, который можно использовать для различных целей в Blueprints.
  2. Этот макрос декларирует кастомный архетип делегата без параметров и возвращаемого значения для использования исключительно в С++ коде. К делегату можно привязать несколько методов/функций.
  3. Этот макрос инициирует асинхронные операции, позволяя выполнять несколько задач одновременно в C++ коде.
Вопрос 31

В каком случае DECLARE_EVENT лучше заменить на DECLARE_DYNAMIC_MULTICAST_DELEGATE?

  1. Когда необходимо работать с объектом в Blueprints.
  2. Когда нужно увеличить производительность обработки данных в C++.
  3. Когда необходимо заменить статические функции на динамические методы.
Вопрос 32

Почему для одного объекта UINTERFACE создается 2 класса?

  1. Один класс создается для выполнения асинхронных операций, а второй для синхронных вызовов внутри системы.
  2. Первый класс, имеющий приставку “U”, необходим для системы рефлексии и создания UClass типа. Второй, имеющий приставку “I” нужен для непосредственной работы с интерфейсом.
  3. Первый класс используется для управления потоками данных, а второй для управления сетевыми подключениями.
Вопрос 33

Что такое Listen Server в рамках UE5?

  1. Listen Server – это сервер, который хостит игру, к которой подключаются другие игроки, и одновременно является клиентом для локального пользователя.
  2. Listen Server — это удаленный сервер, который хранит данные и управляет подключениями клиентов, но не используется для игры.
  3. Listen Server – это специальный удалённый серве в Unreal Engine 5, который является интерфейсом для мониторинга состояния сервера и подключенных к нему клиентов.
Вопрос 34

Что нужно для сборки Dedicated Server?

  1. Необходимо настроить параметры проекта в редакторе и создать новый профиль сборки.
  2. Необходимо собрать движок Unreal Engine 5 с исходных файлов и создать серверный Target файл
  3. Необходимо использовать специализированные стандартные шаблоны и автоматические инструменты конфигурации.
Вопрос 35

Что означает роль Authority?

  1. Роль Authority используется для определения прав доступа к файлам на клиентской машине.
  2. Роль Authority применяет автоматическое управление состоянием объекта на клиентской стороне.
  3. Роль Authority означает, что объект находится на сервере и не может быть изменен с клиента.
Вопрос 36

Как превратить Standalone процесс игры в Listen Server?

  1. Запустить карту, указав в параметрах после имени карты “?Listen”.
  2. Изменить конфигурацию сети через меню настроек и установить тип сервера.
  3. Использовать консольные команды для перевода игры в режим сервера и установить параметры сети.
Вопрос 37

Что такое Standalone в рамках UE5?

  1. Конфигурация, в которой игра поддерживает сетевые соединения и многопользовательский режим.
  2. Конфигурация, при которой игра запускается через консольные команды и взаимодействует с внешними скриптами.
  3. Конфигурация, в которой игра не принимает подключений и является полностью одиночной.
Вопрос 38

Что такое Репликация?

  1. Это синхронизация данных копии объекта на сервере и копии на клиенте.
  2. Изменить конфигурацию сети через меню настроек и установить тип сервера.
  3. Использовать консольные команды для перевода игры в режим сервера и установить параметры сети.
Вопрос 39

Что означает роль AutonomousProxy?

  1. Роль AutonomousProxy служит для синхронизации данных между клиентом и сервером в реальном времени.
  2. Роль AutonomousProxy применяется для автоматической репликации объектов на всех подключённых клиентах.
  3. Роль AutonomousProxy означает, что объект подчиняется серверу, но принадлежит одному клиенту, который может вызывать логику через RPC запросы.
Вопрос 40

Что нужно, чтобы объект мог отправлять RPC?

  1. Объект должен быть зарегистрирован в системе событий и иметь доступ к глобальной сети.
  2. Объект должен иметь APlayerController в цепочке владения.
  3. Объект должен быть настроен для автоматической синхронизации данных между клиентом и сервером.
Вопрос 41

Как в GameplayEffect добавить уменьшение значения определенного атрибута при его наложении?

  1. Необходимо добавить в параметр “Modifiers” элемент с типом магнитуды “ScalableFloat” и указать нужный атрибут.
  2. Следует внести в GameplayEffect новый компонент, который будет содержать нужный атрибут и вызывать его уменьшение при активации эффекта.
  3. Нужно создать новый Blueprint с атрибутом, затем добавить его в GameplayEffect для изменения значения атрибута при наложении.
Вопрос 42

Зачем нужен декоратор в Behavior Tree?

  1. Декоратор используется для управления потоками анимации и взаимодействия между различными объектами игры.
  2. Декоратор выполняет булево условие и позволяет блокировать или даже отменять выполнение нижних узлов.
  3. Декоратор помогает структурировать код и улучшить производительность игры, разделяя задачи на логические компоненты.
Вопрос 43

Что нужно сделать, чтобы избавиться от некорректного перемещения Character объектов при активации таски MoveTo?

  1. Нужно настроить параметр “MoveTo Speed” на значение по умолчанию и перезапустить уровень.
  2. Следует создать новый Blueprint, в котором установлены все параметры передвижения для корректной работы MoveTo.
  3. Необходимо поставить в true параметр “Requested Move Use Acceleration” в компоненте передвижения, соответствующего объекту Character класса.
Вопрос 44

Что нужно сделать чтобы подключить ввод с клавиатуры к открытию различного меню?

  1. Нужно добавить InputAction и InputMappingContext в контроллер и подключить их по аналогии с персонажем игрока.
  2. Нужно создать новый метод для обработки клавиатурного ввода и связать его с событиями в меню.
  3. Следует использовать встроенные функции для захвата клавиатурного ввода и назначить их на различные действия в меню.
Вопрос 45

Чем отличается эффект с длительностью типа Infinite от эффекта типа Instant?

  1. Эффект типа Infinite применяется только к визуальным элементам, а тип Instant к игровым механикам.
  2. Эффект с типом Infinite вернет обратно наложенные изменения на атрибут при отмене эффекта, в то время Instant применяет изменения навсегда.
  3. Эффект типа Infinite имеет ограниченную продолжительность, в то время как Instant действует до перезагрузки уровня.
Вопрос 46

Зачем нужна служба в Behavior Tree?

  1. Служба используется для выполнения анимаций и визуальных эффектов в реальном времени.
  2. Служба управляет загрузкой ресурсов и их распределением между объектами в игре.
  3. Служба предназначена для сбора и обработки данных в фоновом режиме.
Вопрос 47

Как добавить возможность AI-противнику видеть игрока?

  1. Добавить в его PerceptionComponent в параметр “Senses Config” “AISight_Config”.
  2. Настроить его PerceptionComponent на использование “AIHearing_Config” вместо “AISight_Config”.
  3. Изменить параметры “Senses Config” в PerceptionComponent, добавив “AIVision_Config” для улучшения видимости.
Вопрос 48

Как выглядит макрос, автоматически генерирующий геттеры и сеттеры для атрибутов в UAttributeSet?

  1. #define ATTRIBUTE_ACCESSORS(ClassType, Attribute) CLASSNAME_PROPERTY_GETTER(ClassType, Attribute) CLASSNAME_VALUE_GETTER(Attribute) CLASSNAME_VALUE_SETTER(Attribute) CLASSNAME_VALUE_INITTER(Attribute)
  2. #define ATTRIBUTE_ACCESSORS(ClassName, PropName) GAMEPLAYATTRIBUTE_PROPERTY_GETTER(ClassName, PropName) GAMEPLAYATTRIBUTE_GETTER(PropName) GAMEPLAYATTRIBUTE_SETTER(PropName) GAMEPLAYATTRIBUTE_INITTER(PropName)
  3. #define ATTRIBUTE_ACCESSORS(ClassName, PropertyName) GAMEPLAYATTRIBUTE_PROPERTY_GETTER(ClassName, PropertyName) GAMEPLAYATTRIBUTE_VALUE_GETTER(PropertyName) GAMEPLAYATTRIBUTE_VALUE_SETTER(PropertyName) GAMEPLAYATTRIBUTE_VALUE_INITTER(PropertyName)
Вопрос 49

Сопоставьте объекты со способом управления их памятью:

  1. AActor* MyActor
  2. TSharedPtr˂FMyClass˃ MyClass
  3. FMyStruct* MyStruct
  4. Garbage Collector
  5. Reference count
  6. Manual
Вопрос 50

Сопоставьте макросы и подходящие им ключевые слова:

  1. UPROPERTY
  2. UFUNCTION
  3. UCLASS
  4. EditDefaultOnly
  5. BlueprintCallable
  6. Blueprintable
Вопрос 51

Сопоставьте класс с его методом:

  1. AMyHUD
  2. AMyWidget
  3. UTextBlock
  4. BeginPlay()
  5. NativeOnInitialized()
  6. SetText(FText Text)
Вопрос 52

Сопоставьте класс с его расположением в рамках клиент-серверной архитектуры:

  1. AGameMode
  2. AGameState
  3. APlayerController
  4. Server only
  5. Replicated to All
  6. Replicated to Owning Client
Вопрос 53

Соотнесите Blueprint класс его приставку в названии:

  1. FireBallAbility
  2. FearEffect
  3. FireBallProjectile
  4. GA
  5. GE
  6. BP
Вопрос 54

Соотнесите компонент и его владельца в квестовой системе:

  1. UQuestGiverComponent
  2. UQuestTrackerComponent
  3. UQuestTargetComponent
  4. BP_NPC
  5. BP_PlayerController
  6. BP_Enemy
Вопрос 55

Расположите в правильном порядке цепочку наследования UStaticMeshComponent:

  1. UActorComponent
  2. USceneComponent
  3. UPrimitiveComponent
  4. UMeshComponent
  5. UStaticMeshComponent
Вопрос 56

Расположите значения Verbosity при логировании от самого критичного до наименее критичного:

  1. Fatal
  2. Error
  3. Warning
  4. Display
Вопрос 57

Расположите в правильном порядке вызовы методов при стрельбе из оружия:

  1. AMyWeapon::Fire_Server
  2. AMyWeapon::DecreaseAmmo
  3. AMyWeapon::OnRep_CurrentAmmo
Вопрос 58

Расположите в правильном порядке вызовы методов при подборе оружия:

  1. AMyPickUp::OnPickUp (Server)
  2. AMyWeaponComponent::GiveWeapon (Server)
  3. AMyWeaponComponent::GiveWeapon_Client
  4. AMyHUD::UpdateWeaponWidget
Вопрос 59

Расположите правильно порядок вызова методов при начале диалога:

  1. AMyPlayerCharacter::Interact
  2. AMyPlayerController::OnDialogueStarted
  3. AMyHUD::StartDialog
  4. UMyDialogueWidget::SetupReplicas
Вопрос 60

Расположите в правильном порядке вызовы методов при отмене квеста:

  1. UQuestItem::OnAbandonButtonClicked
  2. UQuestTracketComponent::AbandonQuest
  3. AMyGameMode::OnQuestAbandoned
  4. UQuestTargetComponent::DeactivateQuest
  5. UQuestGiverComponent ::ResetQuest
Вопрос 61

Как корректно описать этапы подключения Enhanced Input Subsystem в проект с нуля?

  1. Начинаем с создания UInputAction в редакторе и назначения возвращаемого значения как FVector. Далее создаем FInputActionValue для хранения действий и связываем их с клавишами WASD через FInputAxis. Устанавливаем модификаторы на инверсию осей и добавляем их в свойство Character класса. Привязываем действия к методам через FInputBinding и добавляем их в InputSubsystem.
  2. Сначала создаем FInputKeyBinding и связываем его с действиями перемещения и камеры. Затем воссоздаем UInputMappingContext и назначаем клавиши QWERTY с дополнительными модификаторами инверсии. Добавляем их в свойства Character через UPROPERTY, затем через методы компонента добавляем в Enhanced Input Subsystem.
  3. Первым делом создаем UInputAction в редакторе, для передвижения и камеры устанавливаем возвращаемое двумерное векторное значение. Затем создаем UInputMappingContext, назначаем экшенам кнопки клавиатуры. Для клавиш WASD добавляем модифаеры на инверсию и Swizzle Axis в порядке YXZ (UInputModifier). Затем создаем UPROPERTY в Character классе для экшенов и маппинг контекста. Наконец, привязываем экшены к методам класса, а маппинг контекст добавляем в Enhanced Input Subsystem.
Вопрос 62

Какие типы файлов есть в директории проекта и как лучше с ними взаимодействовать в рамках git?

  1. Файлы проекта делятся на те, которые должны отслеживаться в git, и те, которые нет. К файлам для отслеживания относятся: исходные файлы с++, файлы конфигурации .ini из папки Config, uasset файлы и блюпринты, а также файл проекта .uproject. Локальные файлы включают папки, такие как Backup, Logs, Binaries, и Intermediate, которые не должны быть в git и должны добавляться в .gitignore.
  2. Файлы в директории проекта можно сразу разделить на локальные файлы и проектные файлы. Проектные файлы это все С++ файлы папки Source, файлы типа .ini папки Config. Так же к ним относятся контентные uasset файлы - ассеты и блюпринты. Дополнительно отнесем файл проект .uproject. Все эти файлы должны быть добавлены в git и отслеживаться. Остальные файлы являются локальными, это папки Saved, Intermediate, DerivedDataCache, Bin, Build, а также файлы, генерируемые Visual Studio. Они должны быть добавлены в .gitignore.
  3. Локальные и проектные файлы можно различить по их функциям. Проектные файлы: исходники c++, конфигурационные файлы .ini из папки Config, контентные файлы uasset и блюпринты, и файл .uproject. Эти файлы отслеживаются в git. Локальные файлы, такие как папки Temp, Saved, Intermediate, и Build, а также файлы Visual Studio, должны быть добавлены в .gitignore и не отслеживаться в git.
Вопрос 63

Какое количество шаблонов для плагинов есть в Unreal Engine 5? Какой у них функционал?

  1. В Unreal Engine есть 6 шаблонов для создания плагинов. Первый - Game Module, который включает основной функционал игры. Второй - Asset Management, для управления ассетами и их загрузки. Третий - Network Module, для создания сетевой инфраструктуры. Четвертый - UI Module, который помогает в создании пользовательского интерфейса. Пятый - AI Module, используемый для создания и настройки искусственного интеллекта. Шестой - Physics Module, для управления физикой в игре.
  2. Unreal Engine предоставляет 6 шаблонов помимо пустого для создания собственного плагина. Первый – Blueprint Library – класс-библиотека с набором функций, доступ к которым есть в любом блюпринте. Второй – плагин типа Content Only – предполагает наличие только сторонних ассетов без какой-либо программной логики. Третий – Third Party Library – тип шаблона для интеграции сторонней библиотеки C++ в Unreal Engine. Четвертый – Editor Standalone Window – позволяет создать для редактора открывающееся окно. Пятый – Editor Toolbar Button – содержит реализацию добавления кнопки на toolbar панель. Шестой – Editor Mode – позволяет реализовать отдельный режим работы в редакторе c возможностями отменять совершенное действие и повторить отмененное.
  3. Unreal Engine предлагает 6 шаблонов плагинов. Первый - Audio Plugin, для добавления звуков и музыки. Второй - Rendering Plugin, чтобы настроить рендеринг и графику. Третий - Input Plugin, для обработки ввода пользователя. Четвертый - Animation Plugin, чтобы управлять анимациями. Пятый - Network Plugin, для настройки сетевых возможностей. Шестой - Editor Plugin, для расширения функционала редактора.
Вопрос 64

Какие основные классы содержит Automation Framework? Зачем они нужны?

  1. Automation Framework состоит из трех ключевых классов: FAutomationTestFramework, FAutomationTestBase, FAutomationLatentCommand. FAutomationTestFramework предназначен для запуска тестов, отслеживания прогресса тестов и получения результатов. Также он поддерживает запуск отложенных команд. FAutomationTestBase — это базовый класс тестов, он запускает тесты через метод RunTest(), поддерживает логирование и обработку ошибок с выводом сообщений. FAutomationLatentCommand — это класс, описывающий отложенную команду, для реализации которой необходимо переопределить метод Update(). Отложенные команды могут быть расположены в методе RunTest() класса типа FAutomationTestBase.
  2. Automation Framework содержит три основных класса: FAutomationTestFramework, FAutomationTestBase и FAutomationLatentCommand. FAutomationTestFramework отвечает за инициацию тестов, их мониторинг и сбор результатов. Он также позволяет выполнять отложенные команды. FAutomationTestBase является базовым классом для тестов, который запускает тесты через метод ExecuteTest(), предоставляет возможности логирования и управления ошибками. FAutomationLatentCommand описывает отложенные команды, требующие переопределения метода PerformUpdate(), и может быть использован внутри метода ExecuteTest() класса FAutomationTestBase.
  3. Automation Framework включает три ключевых компонента: FAutomationTestFramework, FAutomationTestBase и FAutomationCommand. FAutomationTestFramework запускает тесты и отслеживает их выполнение, а также поддерживает отложенные команды. FAutomationTestBase предоставляет основы для создания тестов и их выполнения через метод RunTest(), включая логирование и обработку ошибок. FAutomationCommand представляет команды, требующие переопределения метода Update, и используется для выполнения различных действий во время тестов.
Вопрос 65

Какие действия необходимо выполнить для добавления Gameplay Ability System в проект?

  1. Для интеграции GAS нужно активировать плагины в разделе Plugins, а затем в Build файле добавить модули "GameModules", "UserTasks", "ActionTags" в PublicDependencyModuleNames или PrivateDependencyModuleNames.
  2. Начните с выбора плагинов GameplayAbilities в редакторе через раздел Plugins. После этого в Build файле добавьте модули "AbilitySystems", "TaskManager" и "TagModules" в PublicDependencyModuleNames или PrivateDependencyModuleNames.
  3. Чтобы добавить GAS в проект необходимо найти в разделе Plugins редактора плагины GameplayAbilities и выбрать их. Далее в Build файле добавить в массив PublicDependencyModuleNames или массив PrivateDependencyModuleNames модули "GameplayAbilities", "GameplayTags", "GameplayTasks".
Вопрос 66

Какие действия необходимо выполнить для создания диалоговой системы?

  1. Для создания диалоговой системы нужно создать класс, отвечающий за обработку диалогов. Этот класс привязывается к NPC, с которыми игрок взаимодействует. Диалоги организуются в файлы JSON, содержащие текст реплик и ID диалога. Главный виджет отображает все доступные диалоги и активируется через скрипты, привязанные к NPC.
  2. Диалоговая система требует создания уникальных компонентов для каждого NPC. Эти компоненты включают поля для текста диалогов и кнопок для ответов. Диалоги хранятся в базах данных и вызываются через триггеры, расположенные в игровом мире. Виджет отображает текст и варианты ответа для игрока.
  3. При создании диалоговой системы нужно создать компонент, отвечающий за участие в диалоге. Этот компонент нужно добавить персонажу, с которым игрок должен вступать в диалог. Сами диалоги необходимо организовать в виде структуры или класса и обозначить поля для названия диалога и массива строк для самих реплик. Для организации диалогов создается главный виджет, хранящий все возможные диалоги. Диалоги должны активироваться через отдельные виджеты, которые им соответствуют.