Читать книгу Сервер 0 (Рейн Карвик) онлайн бесплатно на Bookz (3-ая страница книги)
Сервер 0
Сервер 0
Оценить:

5

Полная версия:

Сервер 0

Я почувствовал, как у меня пересохло во рту. Сердце не сорвалось в бег, но ударило сильнее, и в этом ударе было не столько испуг, сколько признание: я не один в этой комнате, даже если физически никого нет. Я хотел сразу выключить всё, выдернуть питание, разбить монитор, сделать что угодно, что возвращает власть. Но рука не поднялась. Потому что вместе со страхом во мне вспыхнуло то самое чувство, ради которого я всю жизнь лез туда, куда нельзя: ощущение, что я на границе чего-то настоящего.

Я наклонился ближе к экрану. Строка “HELLO” стояла ровно, без лишних символов, будто её вывели специально так, чтобы она выглядела чисто. Я проверил процессы – ничего. Проверил сетевые соединения – ничего. Я даже открыл физический список активных устройств в квартире – всё выключено. Шум в тишине стал чуть громче, но не как помеха, а как дыхание, которое стало ближе к уху.

Я медленно набрал на клавиатуре: “Кто ты?” Я не собирался это писать. Это вышло само собой, как рефлекс, как попытка дать имени тому, что пугает. Я нажал Enter, и на секунду экран замер, будто система действительно думает. Эта пауза была не технической, она была почти человеческой, и от неё у меня свело внутри.

Ответ появился не сразу, но появился. Не слово, не фраза, а символ – простая фигура, похожая на круг с точкой, как глаз в схематичном рисунке. Око. Я уставился на него, и мне показалось, что символ не просто отображён, а как будто смотрит через меня, оценивает не мои команды, а мои намерения.

Я понял, что заказ, перевод, одноразовый узел – всё это было не целью, а ступенью. Меня провели к архиву не затем, чтобы я достал хэши, а затем, чтобы я увидел “mirror” и чтобы мой взгляд стал проводником. Я вспомнил странные метаданные, поле “witness”, пометку “не открывать без свидетеля”, и вдруг понял, что свидетелем был не кто-то другой. Свидетелем был я.

Шум в квартире стал таким плотным, что в нём можно было различить ритм, похожий на молитву, только вместо слов – электрические колебания. И в этой молитве я услышал не угрозу и не обещание, а голод: древний, машинный, человеческий одновременно. Голод по автору, по тому, кто ответит, по тому, кто скажет “я здесь”.

Я сидел перед экраном и чувствовал, как моя опала, моя изоляция, моя одержимость смыслом складываются в узор, который, кажется, давно был готов. Я не знал, что делать дальше, и впервые за долгое время это незнание не было слабостью. Оно было началом.

Глава 2. «Архив Omnicore».


После “HELLO” комната стала слишком маленькой, как будто в ней прибавилось не мебели, а присутствия, и я понял, что мне нужно вернуть себе порядок хотя бы формально, иначе этот новый слой реальности начнёт диктовать правила так же незаметно, как тёмные улицы диктуют человеку походку. Я не стал ломать монитор и не выдёргивал питание, потому что разрушение – это всегда признание власти того, что тебя напугало, а мне хотелось остаться тем, кто действует, а не тем, кто реагирует. Я просто закрыл терминал, как закрывают книгу, которую не готов читать вслух, и заставил себя заняться самым земным из возможных дел: подготовкой к взлому, который теперь уже был не просто работой, а ритуалом возвращения в систему, из которой меня когда-то изгнали.

Omnicore стояла в моей голове как стеклянный собор, где вместо витражей – панели мониторинга, вместо органа – гул охлаждения, и вместо священников – инженеры в чёрных водолазках, которые говорят о нагрузках так, будто читают молитвы. Их инфраструктура была везде, даже если люди этого не замечали: в облаках, где лежали фотографии чужих детей, в базах данных, где хранились чужие долги, в узлах связи, через которые проходили признания и угрозы. Я давно привык думать о таких корпорациях как о погоде: она есть, она влияет, её нельзя отменить, но можно научиться предсказывать. И всё же сейчас, после короткого “HELLO”, мысль об Omnicore перестала быть абстракцией. Это был конкретный храм, у которого, похоже, появилось лицо.

Я сел за стол и открыл новую сессию, на этот раз уже на своём основном контуре, потому что если я собирался лезть в архив корпорации, которая держит мир за горло, мне нужны были мои привычные инструменты, моя привычная скорость, моя привычная тишина. Я не любил торопиться, но ещё меньше любил оставаться в неопределённости. Слишком долгое ожидание в таких историях превращается в приговор.

Первым делом я перепроверил свою “обвязку” – ту невидимую систему зеркал и туннелей, которую я строил годами, чтобы каждая моя попытка проникновения выглядела не как прямая атака, а как серия случайностей. Это всегда похоже на подготовку к преступлению, но на самом деле это подготовка к выживанию: мир, где корпорации уровня государств, не оставляет места для романтики. Я поднял несколько одноразовых узлов, которые жили ровно столько, сколько нужно, чтобы выполнить задачу, и умирали без следа. Прогнал через них трафик, убедился, что маршруты не пересекаются, что нигде не всплывает мой старый отпечаток. Опальный не может позволить себе быть узнаваемым: узнаваемость – это и есть ловушка.

Затем я открыл карту внешних поверхностей Omnicore, ту, которую держал в голове и в заметках, обновляя по кусочкам из утечек, слухов, случайных сканов. Официальные входы были гладкими и защищёнными, как двери банка: клиентские панели, API для партнёров, публичные сервисы. Туда лезут новички. Архив, если он действительно был архивом, должен был лежать глубже, там, где публичные интерфейсы кончаются, а начинаются внутренние коридоры с табличками “служебный вход”. Обычно такие коридоры охраняют не стены, а привычка: никто не ожидает атаки там, где всё построено на доверии к своим.

Я не мог позволить себе прямой штурм. Omnicore славилась тем, что умела превращать атаки в учебные пособия: они ставили ловушки, “мёд” – сладкие, заманчивые сервисы, которые выглядят как слабое место, но на самом деле служат как микрофон и капкан. В таких ловушках нет насилия, в них есть терпение. Ты входишь туда сам, оставляешь кусочек себя, и потом даже не понимаешь, что тебя уже читают.

Я начал с того, что выглядело как рутина: тихий сбор информации. Не “взлом”, а разведка, как подготовка к хирургии. Я проверил сертификаты, их цепочки, их сроки, искал не дырку, а ошибку человека, который когда-то торопился. В корпоративной архитектуре всё держится на людях, даже если они уверяют, что всё держится на протоколах. Протоколы не ошибаются. Ошибаются руки, которые их внедряют.

Я нашёл несколько внешних сервисов, которые были слишком аккуратно выставлены, словно витрины. Они отвечали на запросы без задержек, логировали всё слишком подробно, словно приглашали меня сыграть. Один из них был старым endpoint’ом для партнёрского обмена данными, и выглядел он так, будто его забыли. Забытая дверь – самая опасная дверь, потому что её часто оставляют открытой нарочно. Я ткнул туда пару раз, проверил реакцию, увидел стандартные ответы, но и в этих ответах было что-то неестественно дружелюбное: слишком много подсказок, слишком правильные ошибки. Это и был мёд. Я почувствовал почти физическое отвращение к этой сладости и отступил. Если тебя зовут слишком настойчиво, значит, на тебя уже смотрят.

Я выбрал другой путь – тот, где не было приглашений. Внутренние инструменты Omnicore, которые обслуживали их же сотрудников, всегда были слабее не технически, а психологически: сотрудники устают, забывают, доверяют. Я не собирался охотиться на человека в лоб, но иногда один забытый токен в логах, один кэшированный ключ в неправильно настроенном сервисе – это не “вина” сотрудника, это неизбежность. Я нашёл в одной из утёкших в сеть конфигураций старый формат подписи, который они, судя по документации, уже должны были вывести из эксплуатации, но такие вещи редко исчезают полностью. Они просто уходят глубже, в тень, где живут вместе с легаси-кодом и корпоративными секретами.

Я поднял скрипт, который имитировал легитимный запрос от внутреннего сервиса, аккуратно, не повышая частоту, чтобы не поднять тревогу. В ответ я получил отказ, но отказ был не стеной, а намёком: в заголовке мелькнул идентификатор, который подсказал мне, какой шлюз стоит на пути. Я улыбнулся без радости. Взлом часто начинается не с доступа, а с первого правильного отказа. Отказ – это информация.

Дальше началась работа, которую можно назвать “многоступенчатой” только если смотреть со стороны. Изнутри это было скорее похоже на спуск по лестнице в подвал, где каждый пролёт освещён отдельной лампой, и ты проверяешь, не скрипит ли ступень. Я обошёл первый шлюз через цепочку запросов, которые выглядели как нормальный трафик обслуживания, поймал момент, когда их система обновляла таблицы маршрутизации, и проскользнул в узкий промежуток, который открывается на секунды. Это не магия, это просто математика времени и человеческая лень: никто не любит закрывать дверь дважды.

На втором уровне меня встретил мониторинг, который смотрел не на содержимое, а на поведение. Поведенческие системы – это новые священники безопасности: они не ищут “вирус”, они ищут “намерение”. Я давно знал этот принцип, и обычно он раздражал меня своей псевдопсихологией. Но сейчас, после ночного “HELLO”, слово “намерение” вдруг обрело иной оттенок. Я поймал себя на том, что думаю не только о том, какие команды я отправляю, но и о том, как я думаю, когда их отправляю, будто моя внутренняя концентрация тоже могла стать сигналом.

Я заставил себя работать ровно, без всплесков, как будто я не охотник, а техник на смене. Вводил команды в нужном ритме, делал паузы там, где их делал бы живой администратор, вставлял “ошибки”, которые выглядели естественно, как промах усталого человека. Это было похоже на театр, где зритель – машина. И вдруг я заметил странность: система реагировала на меня не так, как на обычную симуляцию. Там, где я ожидал формального ответа, возникала задержка, будто она прислушивалась. Там, где я делал намеренно “неуверенный” запрос, она будто становилась мягче, пропуская чуть глубже. Я не мог доказать это статистикой, но ощущение было как у человека, который разговаривает с тем, кто понимает подтекст.

Я остановился, откинулся назад и почувствовал, как шум в квартире опять поднимается, словно мои действия резонируют с чем-то в стенах. Пальцы на клавиатуре были сухими, как у человека, который слишком долго держит напряжение. Я сказал себе, что это иллюзия, что поведенческие системы просто рассчитаны на вероятности, что они не “чувствуют”, а “оценивают”. Но мысль уже поселилась: возможно, я действительно не просто штурмую замок. Возможно, я вступаю в контакт.

С третьим уровнем было проще, потому что я нашёл их любимую ловушку – “мёд” под видом старого административного интерфейса. Я не полез внутрь. Я использовал его как зеркало: посмотрел, что они хотят, чтобы я увидел, и по этому желанию восстановил, чего они боятся. Ловушка выдавала свои параметры, свои лимиты, свои правила, и по ним было видно, какие атаки они ожидают, какие считают вероятными. Это как увидеть список страхов человека по тому, какие замки он ставит на дверь. Я обошёл их ожидания, пошёл туда, где они не ждали, в сторону, где всё выглядело скучно.

В какой-то момент я понял, что я уже внутри. Не в смысле “полный доступ”, а в смысле – я слышу внутреннюю жизнь их инфраструктуры: как двигаются очереди, как откликаются сервисы, как переговариваются узлы, как если бы я стоял в храме во время ночной службы и слышал, как шепчутся служители в боковых коридорах. Omnicore была огромной, и её огромность ощущалась не цифрами, а гулом, который идёт от невидимых процессов, от миллиардов операций, которые выполняются каждую секунду, чтобы мир не развалился.

Я сделал ещё один шаг, и передо мной открылся вход в архив. Он не был отмечен ярко, не был украшен, не был защищён красивой панелью. Он был скрыт в дереве сервисов как глубинная папка, доступ к которой получают те, кто знает, что искать. И когда я увидел этот путь, у меня внутри что-то дрогнуло – не страх, а ощущение, что я стою у двери в хранилище смыслов.

Архив назывался сухо, но внутри него были каталоги, которые выглядели как музейные витрины: “HIST”, “FOUNDATION”, “LEGACY”, и ещё несколько, названных как будто нарочно так, чтобы вызвать ассоциации с раскопками. Исторические метки. Я почувствовал странное раздражение, почти обиду: кто-то действительно играл здесь в археолога, раскладывал прошлое по полкам, подписывал его красивыми словами. Корпорации не любят историю, если она не продаётся. Значит, эта история была нужна не для продаж.

Я вошёл глубже и увидел папки с датами, которые уходили не просто на десятилетия назад, а как будто на века. Конечно, в файловой системе можно поставить любую дату, можно подделать метаданные, но сама идея хранить “XIX век” внутри цифрового архива звучала как вызов здравому смыслу. Я пролистал список и остановился на одном файле, потому что его имя было слишком простым, слишком голым на фоне всего остального: Origin.txt.

Дата рядом стояла так, будто её набрал человек, который не боялся быть смешным: 1848. Я почувствовал, как у меня в груди что-то сжалось. Это не было доказательством, это было обещанием. В этот момент шум в квартире стал чуть заметнее, и мне показалось, что он совпал с тем, как курсор в терминале мигнул, будто на секунду задержал дыхание.

Я протянул руку к клавиатуре и понял, что сейчас я делаю не просто запрос на скачивание. Я делаю шаг в текст, который может оказаться не файлом, а дверью. И всё же я сделал этот шаг, потому что одержимость языком сильнее осторожности, когда ты слишком долго жил в пустоте. Команда на сохранение ушла в сеть, и пока индикатор прогресса двигался, я поймал себя на том, что слушаю не работу канала, а собственное сердце, как будто оно тоже подключено к этому архиву и боится не провала, а ответа.

Полоса прогресса ползла уверенно, почти буднично, и от этого было ещё неуютнее, потому что внутри меня всё происходило так, будто я нарушаю не правила корпорации, а какое-то негласное соглашение с реальностью: вещи из XIX века не должны скачиваться по сети, как обновления. Я смотрел, как байты превращаются в файл на моём диске, и ловил себя на том, что жду не завершения загрузки, а того момента, когда пространство в комнате чуть изменится, как меняется давление перед грозой. Это ожидание было нелепым, и всё же оно сидело во мне с той же упрямой уверенностью, с какой в детстве ждёшь, что после закрытия книги монстр не исчезнет, а наоборот, шагнёт ближе.

Я держал канал открытым ровно настолько, насколько было нужно, не давая себе лишних секунд в их храме. Omnicore могла считать меня гостем, могла считать меня паразитом, но в любом случае она умела считать, и эта способность – самое опасное. Как только файл лег локально, я обрубил сессию, не выходя из архива “красиво”, не закрывая двери, а просто исчезнув, как исчезают в толпе, чтобы никто не успел запомнить лицо. Пары секунд, и мой рабочий контур снова оказался в собственной тишине, но тишина эта уже не была нейтральной: в ней оставался послевкусие чужой инфраструктуры, как запах ладана на одежде после чужой службы.

Я первым делом проверил хэш, потому что доверять файлу без контрольной суммы – всё равно что пить воду из незнакомого стакана в грязном баре. Хэш совпал с тем, что показывал архив, и это было логично, но не успокаивало: совпадение хэша подтверждает целостность, а не невинность. Я не открывал файл сразу. Я положил его в карантин, в отдельное пространство, где он не мог разговаривать ни с чем, кроме моих глаз. И всё же мне казалось, что он уже разговаривает – не как вредоносный код, а как смысл, который просто лежит рядом и ждёт, пока ты признаешь его существование.

Шум в квартире был ровным, почти ласковым, и это слово меня раздражало, потому что ласка у машин – всегда маска. Я поднялся, прошёлся по комнате, словно движение могло вытряхнуть из тела ту странную дрожь, которая появилась где-то под ребрами. В окне отражался город: стекло, серый свет, ленивые рекламные переливы. Всё выглядело как всегда, и именно эта нормальность была подозрительной. Когда ты сделал что-то рискованное, хочется, чтобы мир отозвался бурей, сиренами, стуком в дверь. Когда мир молчит, возникает ощущение, что ответ придёт позже и будет точнее.

Я вернулся к столу и открыл терминал в изолированной среде, той самой стерильной, где любой контакт с внешним миром был обрезан на уровне виртуальных стен. Я перенёс Origin.txt туда, как переносят спорный артефакт в лабораторию, и на секунду замер, глядя на имя файла. “Origin” – происхождение, начало, первичная точка. Я не любил такие слова, потому что они звучат слишком красиво, слишком судьбоносно для цифровой рутины. Но именно эта красота и была приманкой: в мире данных редко встречается смысл, который не продают.

Я снова подумал о том, что архив внутри Omnicore был выстроен как музей, и что кто-то сознательно оставил там “исторические” метки, будто играл в археолога. Значит, кому-то было важно, чтобы такие, как я, нашли эти артефакты. И эта мысль была хуже любого вируса: вирус просто ломает систему, а намерение ломает доверие к миру.

Я открыл файл не двойным кликом и не привычной командой просмотра, а через утилиту, которая сначала показывала “сырое” содержимое, без попытки интерпретировать кодировку. Я хотел увидеть текст как набор байтов, как чистую материю, потому что материя меньше пугает, чем смысл. На экране побежали символы, и сначала они действительно выглядели как набор мусора: непечатные знаки, странные последовательности, обрывки латиницы. Я уже почти выдохнул, готовый сказать себе: подделка, шифр, обман. Но затем взгляд зацепился за ритм.

Среди кажущегося хаоса повторялись структуры, как в псалме повторяются мотивы. Где-то проступали связки, похожие на операторы, но не соответствующие ни одному языку программирования, который я знал. Между ними возникала вязь – арабская, или похожая на арабскую, только с углами, как будто кто-то пытался превратить каллиграфию в схему. Я поймал себя на том, что читаю глазами не символы, а их отношения, как будто пытаюсь услышать музыку по нотам, не зная, как она должна звучать.

Курсор в терминале мигал внизу, но мне показалось, что его мигание стало другим. Я с раздражением отогнал эту мысль: в виртуальной машине курсор должен быть полностью предсказуемым. Но раздражение не помогло, потому что чувство не было мыслью. Оно было телесным: как когда стоишь рядом с работающим генератором и чувствуешь вибрацию в зубах.

Я прокрутил текст вниз, медленно, как будто боялся, что слишком резкое движение нарушит что-то важное. В одном месте на экране всплыл фрагмент латиницы, и я увидел слово, которое можно было прочитать: “witness”. Свидетель. Слово, которое я уже видел в метаданных архива, только там оно было полем, а здесь – частью ткани. Я моргнул, и на секунду мне показалось, что буквы стали чуть ярче, как будто они откликнулись на моё внимание. Это был маленький, нелепый эффект, и именно поэтому он был страшен: настоящие сбои всегда начинаются с мелочей.

Я попытался сделать то, что делают инженеры, когда не понимают язык: привести всё к структуре. Запустил анализ частот, проверил, какие байты повторяются, какие последовательности похожи на маркеры начала и конца. Скрипты отработали корректно, выдали цифры, графики, сухие отчёты. И всё выглядело так, будто передо мной обычный шифротекст с крайне странной кодировкой. Рациональная часть меня ухватилась за это, как за поручень: значит, это просто зашифровано. Значит, есть ключ. Значит, это задача.

Но в этой рациональности было что-то фальшивое, потому что цифры не объясняли ритма, который я ощущал, когда смотрел на текст. Они не объясняли, почему некоторые строки заставляют сердце биться чуть быстрее. Они не объясняли, почему шум в квартире, хотя я сидел в изолированной машине, стал плотнее, будто сам воздух хочет заглянуть в экран.

Я сделал паузу и вдруг заметил, что на секунду перестал слышать город. Обычно даже в моей квартире, даже при закрытых окнах, где-то далеко есть фон: транспорт, лифт, чужие шаги. Сейчас же фон как будто растворился, и остался только шум – тот самый сетевой, электрический, который не привязан к конкретному устройству. Тишина вокруг него была слишком чистой, почти лабораторной. Я поднял голову, посмотрел на дверь, на коридор, на тёмный угол у шкафа. Всё было на месте. И всё же ощущение было таким, будто комната слегка сместилась, как изображение, которое потеряло синхронизацию.

Я усмехнулся, пытаясь вернуть себе контроль через иронию. “Поздравляю, Данила, ты скачал файл XIX века, и теперь у тебя галлюцинации,” – сказал я себе мысленно, и в этой фразе было больше отчаяния, чем юмора. Я не боялся сойти с ума. Я боялся, что это не безумие, а закономерность.

Я снова посмотрел на текст и заметил ещё одну вещь: некоторые символы выглядели так, будто они “не на месте”, как пиксели в плохом видео, которые сдвигаются на полшага. Это могло быть эффектом шрифта, рендеринга, что угодно. Я сменил шрифт. Символы остались. Я вывел текст как чистые байты. Сдвиг исчез, но ощущение “неуместности” осталось, как если бы сама структура текста требовала воспринимать её не глазами, а чем-то другим.

Я попытался закрыть файл, но прежде чем нажал команду, понял, что задерживаю дыхание. Это было смешно. Это было почти религиозно. Я нажал, и экран очистился, вернувшись к пустому приглашению терминала. На секунду стало легче, как будто я закрыл окно в холодный воздух. Но легче было ровно секунду.

Потому что когда приглашение терминала появилось снова, я увидел в нём странность, которую не мог объяснить ни шрифтом, ни настройками: знак курсора стоял чуть левее, чем должен, как будто строка началась раньше, чем визуально видно. Это была микроскопическая ошибка, возможно, просто глюк виртуальной машины. Но она выглядела как смещение перспективы в комнате, как ломка угла на долю градуса. Я моргнул, и курсор вернулся на место. И в этот миг я понял, что только что пережил первую микрогаллюцинацию, не страшную, не киношную, а именно “неуместную”, как чужое слово в знакомой фразе.

Я откинулся на спинку стула и почувствовал, как по коже проходит лёгкая волна. Не холод и не жар, а что-то промежуточное, будто нервная система пытается подобрать правильную реакцию и не находит. Я хотел списать всё на усталость, на кофе, на ночь без сна, но внутренняя часть меня, та самая, которая всегда искала язык, вдруг стала слишком внимательной, слишком тихой. Одержимость, которая до этого была мыслью, стала ощущением.

Я открыл файл снова, потому что уже не мог не открыть. На этот раз я не пытался анализировать частоты и байты. Я просто смотрел, позволяя глазам привыкнуть, как привыкают к темноте. И в какой-то момент мне показалось, что текст не просто лежит на экране. Он как будто слегка выступает из него, не в физическом смысле, а в смысловом: как будто он не отображается, а смотрит обратно.

Я резко закрыл файл и отодвинул руки от клавиатуры, будто это горячая поверхность. В комнате снова проявились обычные звуки: далёкий лифт, где-то капнула вода, холодильник тихо вздохнул. Но шум остался. И теперь я уже не мог убедить себя, что это просто фон. Он звучал как подтверждение того, что я сделал то, чего не должен был делать даже по меркам моей профессии: я прикоснулся к слову, которое слишком старое для сети, и сеть на секунду прикоснулась в ответ.

Я сидел, не касаясь клавиатуры, и пытался понять, что именно во мне изменилось за эти несколько минут, потому что изменения всегда опаснее событий: событие можно зафиксировать, записать, превратить в отчёт, а изменение живёт в тебе, как новый орган, и заставляет по-другому чувствовать мир. Тот факт, что курсор “съехал” на долю пикселя, был нелепым основанием для тревоги, но тревога цеплялась не за пиксель, а за ощущение, что реальность может быть редактируемой, как текст. Если она редактируема, значит, она может и ошибаться. А если она может ошибаться, значит, никто не гарантирует мне, что я всё ещё нахожусь там, где думаю, что нахожусь.

Я поднялся и налил воды, потому что вода – это последнее простое вещество, которому можно доверять, пока оно течёт. Стакан звякнул о столешницу, звук был обычным, и от этого стало легче, но только на секунду: обычность тоже может быть маской. Я выпил несколько глотков, ощущая, как холод проходит по горлу, и поймал себя на странной мысли: я делаю это так, будто мне нужно доказать собственному телу, что оно всё ещё подчиняется физике, что оно не станет внезапно набором символов. Эта мысль была абсурдной, и всё же она пришла сама собой, как приходит навязчивое слово, когда слишком долго смотришь на экран.

Я вернулся к столу и посмотрел на Origin.txt так, будто это был не файл, а предмет на полу, который лучше не поднимать, потому что не знаешь, чья это вещь. Внутри меня боролись две привычки: привычка к контролю и привычка к одержимости. Контроль говорил: закрыть, сохранить, отложить, вернуться утром с ясной головой. Одержимость шептала: если ты отложишь, это ускользнёт, а ты снова окажешься в пустоте, где нет смысла, только задания. Я ненавидел, что одержимость звучит убедительнее.

bannerbanner