Problems
Сравнение URL
Сравнение URL
Для идентификации ресурсов в сети Internet используются URL (Uniform Resource Locator). URL состоит из нескольких элементов: \textit{протокол}, \textit{хост}, \textit{порт}, \textit{путь}, \textit{файл} и \textit{секция}. Некоторые элементы URL могут быть опущены. Рассмотрим упрощенный формат URL:
\textbf{\[протокол://\]хост\[:порт\]\[путь/\[файл\[#секция\]\]\]}
Заключенные в квадратные скобки элементы могут быть опущены, т.е. например, можно не указать протокол или секцию. Но, например, если указан файл, то обязательно должен быть указан путь. Регистр букв в элементах URL не важен.
Рассмотрим кратко все элементы URL:
\textit{Протокол} -- это способ доступа к файлу, URL с разными протоколами и одинаковыми остальными элементами могут указывать на различные ресурсы.
\textit{Хост} и \textit{порт }-- это имя некоторого сервера в сети и способ доступа к нему (порт -- натуральное число, не превосходящее 65535).
\textit{Путь }представляет собой путь к файлу, содержащему запрашиваемый ресурс, от некоторого каталога на сервере, который называется \textit{корневым}. При этом для разделения имен каталогов используется символ "/". Путь, если он не пуст, всегда начинается с символа "/". Специальное обозначение '.' соответствует самому каталогу, '..' -- родительскому каталогу.
\textit{Файл} -- это файл, содержащий запрашиваемый ресурс.
Наконец, файл может быть разбит на \textit{секции} каким‑либо способом, и можно указать, к какой именно секции вы хотите обратиться.
Различные символы в URL могут быть заменены своими шестнадцатеричными ASCII‑кодами с помощью символа \%, например a = \%41, Z = \%5A. В коде всегда используется ровно две шестнадцатеричные цифры.
Некоторые символы могут встречаться в элементах URL только как шестнадцатеричные коды -- все символы, кроме букв латинского алфавита, цифр и символов "." и "-", а некоторые не могут встречаться вообще: "\", "#", "*", "@", "\%", "?", ":", ",", а также символы с ASCII-кодом меньше \%20. Символ "/" может встречаться в элементах URL только в пути для разделения входящих в него каталогов. Имя файла не может состоять только из точек.
Рассмотрим примеры URL:
http://neerc.ifmo.ru/school
ftp://somewhere.net:1234/pub/files/coolgame.zip
nobody.nowhere.net/some\%20dir/some\%20file#some\%20info
Ваша цель в этой задаче -- помочь разработчикам web-сервера. Для web-сервера отсутствующие части URL имеют следующие значения по умолчанию:
Различные как строки URL могут указывать на один и тот же ресурс, например следующие три URL:
neerc.ifmo.ru
http://neerc.ifmo.ru:80/index.html#
Http://NEERC.IFMO.Ru/Dir/../././
Для разграничения доступа к ресурсам необходимо уметь определять, указывают ли два различных URL на один и тот же ресурс. Помогите разработчикам написать соответствующую проверку.
\InputFile
Входной файл состоит из двух строк, каждая из них содержит URL. Оба URL удовлетворяют формату, приведенному в условии этой задачи. Длина каждого URL не превосходит 200 символов. Гарантируется, что ни один из промежуточных каталогов на пути к ресурсу не лежит выше корневого каталога (т.е. не может встретиться, например, URL http://somewhere.com/../dir/index.html) а также, что имена всех каталогов состоят по крайней мере из одного символа (два символа "/" не могут идти подряд в любом месте, кроме как непосредственно после двоеточия после имени протокола).
\OutputFile
Выведите \textbf{YES} в выходной файл, если оба URL, приведенные во входном файле, указывают на один и тот же ресурс и \textbf{NO} в противном случае.
Input example #1
neerc.ifmo.ru neerc.ifmo.ru:80
Output example #1
YES