// 2025-2026 Богданович Давид Когут Прихожденко (кдб.дійсність.укр)

взяти означення мавка/машина;

простір мавка {
  дія знайти_задіяне(
    М: адреса<Машина>,
    задіяні: Задіяні,
    позиція: природне,
    назва: адреса<ПредметТексту>,
    вихід_значення: адреса<Значення>
  ) -> логічне {
    змінна розмір_позиційних = задіяні.розмір - задіяні.розмір_імен;
    змінна знайдено = ні;

    якщо розмір_позиційних > позиція {
      вихід_значення::вміст = задіяні.дані[позиція];

      знайдено = так;
    }

    якщо задіяні.розмір_імен > 0 {
      змінна п: природне = 0;

      поки п < задіяні.розмір_імен {
        змінна елемент = задіяні.дані_імен[п];

        якщо елемент == назва або перевірити_чи_предмети_тексту_рівні(М, елемент, назва) {
          вихід_значення::вміст = задіяні.дані[розмір_позиційних + п];

          вернути так;
        }

        п += 1;
      }
    }

    вернути знайдено;
  }

  дія перебрати_позиційні_задіяні(
    М: адреса<Машина>,
    задіяні: Задіяні,
    дія_перебору: ДіяПереборуПозиційнихЗадіяних,
    аргумент: невідома_адреса
  ) {
    // ..
  }

  дія перебрати_іменовані_задіяні(
    М: адреса<Машина>,
    задіяні: Задіяні,
    дія_перебору: ДіяПереборуІменованихЗадіяних,
    аргумент: невідома_адреса
  ) {
    // ..
  }

  дія звільнити_задіяні(
    М: адреса<Машина>,
    задіяні: Задіяні
  ) {
    якщо задіяні.дані != пусто {
      звільнити_памʼять(М, задіяні.дані);
    }

    якщо задіяні.дані_імен != пусто {
      звільнити_памʼять(М, задіяні.дані_імен);
    }
  }
}