using System;
using System.IO;
using System.Linq;
using System.Xml.Linq;
class Program
{
static void Main()
{
string inputXmlPath = "input.xml"; // Имя существующего XML-файла
if (!File.Exists(inputXmlPath))
{
Console.WriteLine("Файл не найден!");
return;
}
// Загружаем XML-документ
XDocument xmlDoc = XDocument.Load(inputXmlPath);
// Получаем все уникальные имена атрибутов в порядке их первого появления
var attributeNames = xmlDoc.Descendants()
.SelectMany(element => element.Attributes())
.Select(attribute => attribute.Name.LocalName)
.Distinct();
// Выводим найденные атрибуты
foreach (var name in attributeNames)
{
Console.WriteLine(name);
}
}
}
dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uSU87CnVzaW5nIFN5c3RlbS5MaW5xOwp1c2luZyBTeXN0ZW0uWG1sLkxpbnE7CgpjbGFzcyBQcm9ncmFtCnsKICAgIHN0YXRpYyB2b2lkIE1haW4oKQogICAgewogICAgICAgIHN0cmluZyBpbnB1dFhtbFBhdGggPSAiaW5wdXQueG1sIjsgLy8g0JjQvNGPINGB0YPRidC10YHRgtCy0YPRjtGJ0LXQs9C+IFhNTC3RhNCw0LnQu9CwCgogICAgICAgIGlmICghRmlsZS5FeGlzdHMoaW5wdXRYbWxQYXRoKSkKICAgICAgICB7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKCLQpNCw0LnQuyDQvdC1INC90LDQudC00LXQvSEiKTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KCiAgICAgICAgLy8g0JfQsNCz0YDRg9C20LDQtdC8IFhNTC3QtNC+0LrRg9C80LXQvdGCCiAgICAgICAgWERvY3VtZW50IHhtbERvYyA9IFhEb2N1bWVudC5Mb2FkKGlucHV0WG1sUGF0aCk7CgogICAgICAgIC8vINCf0L7Qu9GD0YfQsNC10Lwg0LLRgdC1INGD0L3QuNC60LDQu9GM0L3Ri9C1INC40LzQtdC90LAg0LDRgtGA0LjQsdGD0YLQvtCyINCyINC/0L7RgNGP0LTQutC1INC40YUg0L/QtdGA0LLQvtCz0L4g0L/QvtGP0LLQu9C10L3QuNGPCiAgICAgICAgdmFyIGF0dHJpYnV0ZU5hbWVzID0geG1sRG9jLkRlc2NlbmRhbnRzKCkKICAgICAgICAgICAgLlNlbGVjdE1hbnkoZWxlbWVudCA9PiBlbGVtZW50LkF0dHJpYnV0ZXMoKSkKICAgICAgICAgICAgLlNlbGVjdChhdHRyaWJ1dGUgPT4gYXR0cmlidXRlLk5hbWUuTG9jYWxOYW1lKQogICAgICAgICAgICAuRGlzdGluY3QoKTsKCiAgICAgICAgLy8g0JLRi9Cy0L7QtNC40Lwg0L3QsNC50LTQtdC90L3Ri9C1INCw0YLRgNC40LHRg9GC0YsKICAgICAgICBmb3JlYWNoICh2YXIgbmFtZSBpbiBhdHRyaWJ1dGVOYW1lcykKICAgICAgICB7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lKG5hbWUpOwogICAgICAgIH0KICAgIH0KfQ==